From 339b2e94491c3bee8370c41834164b7db10c968f Mon Sep 17 00:00:00 2001 From: theapache64 Date: Tue, 13 Aug 2024 03:15:01 +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 4322067..4507d9c 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.$_$.ma,r=n.$_$.i9,i=n.$_$.sd;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.$_$.t9,wt=n.$_$.r4,xt=n.$_$.qa,kt=n.$_$.i9,jt=n.$_$.t,Ct=n.$_$.oc,zt=n.$_$.ea,St=n.$_$.w1,qt=n.$_$.pd,Ot=n.$_$.qd,Pt=n.$_$.m4,Mt=n.$_$.k2,At=n.$_$.fd,Et=n.$_$.rd,It=n.$_$.i8,Dt=e.$_$.n,Tt=e.$_$.i,Bt=n.$_$.q8,Lt=n.$_$.p8,Nt=n.$_$.r8,Ft=n.$_$.u8,Rt=n.$_$.ca,Ht=n.$_$.k9,Ut=n.$_$.e1,Vt=n.$_$.j,Wt=n.$_$.w,Jt=n.$_$.r9,Kt=n.$_$.gc,Gt=n.$_$.k6,Yt=n.$_$.b8,Xt=n.$_$.s7,Zt=n.$_$.dc,Qt=n.$_$.s,tn=n.$_$.td,nn=n.$_$.e8,en=n.$_$.ma,on=n.$_$.t1,rn=n.$_$.ld,sn=n.$_$.p6,an=n.$_$.j9,un=n.$_$.za,cn=n.$_$.p9,ln=n.$_$.u9,hn=n.$_$.o5,pn=n.$_$.gd,fn=n.$_$.z,_n=n.$_$.k7,dn=e.$_$.k,vn=e.$_$.e,yn=e.$_$.f,mn=n.$_$.sd,gn=n.$_$.t8,$n=n.$_$.s8,bn=n.$_$.q9,wn=n.$_$.y4,xn=n.$_$.q5,kn=n.$_$.v8,jn=e.$_$.l,Cn=n.$_$.g8,zn=e.$_$.c,Sn=n.$_$.v,qn=n.$_$.y7,On=n.$_$.s6,Pn=e.$_$.h,Mn=n.$_$.i1,An=n.$_$.f8,En=n.$_$.bd,In=e.$_$.o,Dn=e.$_$.b,Tn=n.$_$.i,Bn=n.$_$.kc,Ln=e.$_$.g,Nn=e.$_$.m,Fn=n.$_$.c1,Rn=n.$_$.n7,Hn=(n.$_$.w8,n.$_$.x8,n.$_$.r5),Un=n.$_$.n6,Vn=n.$_$.m9,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.$_$.sa,ue=n.$_$.b9,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.$_$.va,ge=n.$_$.ua,$e=n.$_$.dd,be=n.$_$.p1,we=n.$_$.y1,xe=n.$_$.n1,ke=n.$_$.y,je=n.$_$.cc,Ce=n.$_$.y9,ze=n.$_$.x5,Se=n.$_$.e,qe=n.$_$.r7,Oe=n.$_$.bb,Pe=n.$_$.s9,Me=n.$_$.l4,Ae=n.$_$.x7,Ee=n.$_$.db,Ie=n.$_$.a9,De=n.$_$.w5,Te=n.$_$.c2,Be=n.$_$.g,Le=n.$_$.ac,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)){var u="Missing "+Yt(e,Gt(a))+" in '"+s.g35_1+"' block";throw Vt(Lt(u))}}}for(var c=Nt(),l=n.c();l.d();)for(var h=l.e(),p=h.h35_1.v().c();p.d();){var f=p.e(),_=f.l2(),d=f.n2();if(c.v2(_)&&c.b3(_)!==d.f()){var v="Item count mismatch. For '"+_+"', "+c.b3(_)+" rows expected, but found "+d.f()+" in '"+h.g35_1+"' block";throw Vt(Lt(v))}var y=d.f();c.n(_,y)}}(0,r);var M=function(t,n){return Pt(n," vs ",null,null,0,null,Eo,30,null)}(0,r);return o.a(new To(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(jo(Do(),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 yo(c.g35_1,m))}o.a(new To(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 xo(Lo(),i,r)}function jo(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 Co(t,n){return t.l36_1.ea(n)}function zo(t,n){var e=t.j36_1.da(n," "),o=Xt("\\s{2,}").da(e," ");return Lt(Bt(Tt(o)?o:St()))}function So(t,n){var e=t.k36_1.da(n," "),o=Xt("\\s{2,}").da(e," ");return Lt(Bt(Tt(o)?o:St()))}function qo(t,n){return!function(t,n){return t.i36_1.ea(n)}(t,n)}function Oo(t,n,e){var o;if(!Zt(e,n,!1,2,null))throw Vt(Lt("Invalid "+n+".Expected to start with '"+n+"' but found '"+e+"'"));var r=Qt(e,n,"",!1,4,null);o=Xt("\\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=Qt(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=tn(y);f.n(v,m)}return f}function Po(t,n){var e;t:{for(var o=n.h36_1.c();o.d();){var r=o.e();if(Zt(t,r,!1,2,null)){e=r;break t}}e=null}return e}function Mo(t,n){switch(t){case"startup type is: cold":case"startup type is: warm":return!0;default:return"startup type is: hot"===t}}function Ao(t){return Lt(Bt(Tt(t)?t:St()))}function Eo(t){return t.g35_1}function Io(){y=this,this.g36_1="All";for(var t,n=mo(),e=Dt(n.length),o=n,r=0,i=o.length;r "+_);for(var y=Nt(),m=fn(["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("+Uo()+", "+Uo()+", "+Uo()+", 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 Ro(o,y);return rn("groupMap: "+z),z}function Uo(){var t=_n(0,255);return vn(t,dn())}function Vo(){return $||($=!0,t=Xt("\\d+(.\\d+)?"),m=t),m;var t}function Wo(){g=this;var t;t=Xt("\\(input count : .+\\)$"),this.x35_1=t}function Jo(){return null==g&&new Wo,g}function Ko(t,n){Jo(),this.z35_1=t,this.a36_1=n,this.b36_1=0}function Go(t,n){this.x36_1=t,this.y36_1=n,this.z36_1=8}function Yo(t,n,e,o,r,i){return function(t,n,e,o,r,i,s){return 0!=(8&r)&&(o="col-lg-6"),Xo.call(s,t,n,e,o),s}(t,n,e,o,r,0,Object.create(Xo.prototype))}function Xo(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 Zo(t,n,e){this.n36_1=t,this.o36_1=n,this.p36_1=e,this.q36_1=0}function Qo(){b=this}function tr(t,n,e){var o=n;return wn()&&bn(2098833845,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-1. (AutoFormUi.kt:30)"),xn("⌨️ Input",o,6),wn()&&kn(),kt()}function nr(t,n,e){var o=n;return wn()&&bn(-1047390949,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-2. (AutoFormUi.kt:58)"),xn("Benchmark :",o,6),wn()&&kn(),kt()}function er(t,n,e){var o=n;return wn()&&bn(-1553178399,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-3. (AutoFormUi.kt:89)"),xn("💾 SAVE",o,6),wn()&&kn(),kt()}function or(){var t;w=this,this.r37_1=(t=jn(2098833845,!1,tr),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)}}(jn(-1047390949,!1,nr)),this.t37_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(jn(-1553178399,!1,er))}function rr(){return null==w&&new or,w}function ir(t,n,e,o,r,i,s,a,u,c){var l=u;l=l.o1d(1546286992),Cn(l,"C(FormUi$composable)P(!1,7,6,2,4,5,3)");var h,p=c;wn()&&bn(1546286992,p,-1,"components.FormUi$composable (AutoFormUi.kt:14)");var f=l;f.f12(-1124426577),Cn(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===zn().j12_1){var $=(d=new sr(o,t,null),(v=function(t,n){return d.q1j(t,n)}).$arity=1,v);y.i12($),_=$}else _=g;var b=_,w=null==b||Sn(b)?b:St();f.k12(),h=w,qn(kt(),h,l,64),On(null,rr().r37_1,l,48,1);var x=Pn(l,950905109,!0,function(t,n,e,o,r,i,s,a,u){return function(c,l,h){var p=l;wn()&&bn(950905109,h,-1,"components.FormUi$composable. (AutoFormUi.kt:34)");var f=Pn(p,-1972588882,!0,function(t,n,e,o,r,i,s,a,u){return function(c,l,h){var p=l;wn()&&bn(-1972588882,h,-1,"components.FormUi$composable.. (AutoFormUi.kt:35)"),p.i1a(-1629932720,"inputForm"),vi(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),Cn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===zn().j12_1){var y=ar;d.i12(y),_=y}else _=v;var m=_,g=null==m||Sn(m)?m:St();f.k12();var $=g,b=Pn(p,-1534844198,!0,function(t,n,e){return function(n,o,r){var i=o;wn()&&bn(-1534844198,r,-1,"components.FormUi$composable.... (AutoFormUi.kt:51)");var s=i;s.f12(547886695),Cn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===zn().j12_1){var l=ur;u.i12(l),a=l}else a=c;var h,p=a,f=null==p||Sn(p)?p:St();s.k12(),Bn("benchmark",f,rr().s37_1,i,390,0);var _=i;_.f12(-1124426577),Cn(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(e)|_.g12(t)),m=v.h12();if(y||m===zn().j12_1){var g=function(t,n){return function(e){return e.y20("benchmark"),e.x20(["form-control"]),Dn(e,"Benchmark data"),Tn(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==$||Sn($)?$:St();return _.k12(),h=b,Ln(t.n36_1,h,i,0,0),wn()&&(kn(),kt()),kt()}}(s,0,u)),w=p;w.f12(-838505973),Cn(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k,j=w,C=w.g12(b),z=j.h12();if(C||z===zn().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||Sn(q)?q:St();w.k12(),Mn($,O,p,48,0);var P=p;P.f12(-1124426577),Cn(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===zn().j12_1){var D=function(t,n){return function(e){return e.x20(["btn","btn-dark","float-end"]),e.v20(cr),on(t.n36_1)&&(e.f20("disabled","true"),kt()),e.b21(function(t,n){return function(e){return t(n),kt()}}(n,t)),Hn(e,Rn()),kt()}}(s,a);A.i12(D),M=D}else M=I;var T=M,B=null==T||Sn(T)?T:St();return P.k12(),Un(B,rr().t37_1,p,48,0),p.l1a(),wn()&&(kn(),kt()),kt()}}(t,n,e,o,r,i,s,a,u)),_=p;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===zn().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||Sn(b)?b:St();return _.k12(),Vn(null,null,w,p,384,3),wn()&&(kn(),kt()),kt()}}(n,e,i,s,a,p,t,r,o)),k=l;k.f12(-838505973),Cn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===zn().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||Sn(P)?P:St();k.k12(),Mn(null,M,l,48,1),wn()&&kn();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){ir(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 sr(t,n,e){this.e38_1=t,this.f38_1=n,An.call(this,e)}function ar(t){return t.x20(["form-group"]),kt()}function ur(t){return t.x20(["form-label"]),kt()}function cr(t){return Fn(t,Nn(10)),kt()}function lr(t,n,e){var o=n;return wn()&&bn(1529185564,e,-1,"components.ComposableSingletons$AutoGroupToggleKt.lambda-1. (AutoGroupToggle.kt:29)"),xn("Auto Group:",o,6),wn()&&kn(),kt()}function hr(){var t;x=this,this.h38_1=(t=jn(1529185564,!1,lr),function(n,e,o){return t.o1y(n,e,o)})}function pr(t,n,e,o){var r=e;r=r.o1d(442093563),Cn(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{wn()&&bn(442093563,u,-1,"components.AutoGroup$composable (AutoGroupToggle.kt:10)");var c=r;c.f12(547886695),Cn(c,"C(remember$composable):Composables.kt#9igjgp");var l,h=c,p=h.h12();if(p===zn().j12_1){var f=fr;h.i12(f),l=f}else l=p;var _=l,d=null==_||Sn(_)?_:St();c.k12();var v=d,y=Pn(r,1468648411,!0,(s=t,a=n,function(t,n,e){var o=n;wn()&&bn(1468648411,e,-1,"components.AutoGroup$composable. (AutoGroupToggle.kt:21)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,u=r,c=u.h12();if(c===zn().j12_1){var l=dr;u.i12(l),i=l}else i=c;var h=i,p=null==h||Sn(h)?h:St();r.k12(),Bn("colorMap",p,(null==x&&new hr,x).h38_1,o,390,0),Jn(null,o,0,1);var f=o;f.f12(-1124426577),Cn(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===zn().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)),Hn(e,Rn()),kt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,$=null==g||Sn(g)?g:St();f.k12();var b=$,w=Pn(o,-431302815,!0,function(t){return function(n,e,o){var r=e;return wn()&&bn(-431302815,o,-1,"components.AutoGroup$composable.. (AutoGroupToggle.kt:42)"),xn(t?"ON":"OFF",r,0),wn()&&(kn(),kt()),kt()}}(s)),k=o;k.f12(-838505973),Cn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(w),q=z.h12();if(S||q===zn().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||Sn(P)?P:St();return k.k12(),Un(b,M,o,48,0),wn()&&(kn(),kt()),kt()})),m=r;m.f12(-838505973),Cn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===zn().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||Sn(j)?j:St();m.k12(),Mn(v,C,r,48,0),wn()&&kn()}var z=r.p1d();null===z||z.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){pr(t,n,o,1|e)}(t,n,e,o),kt()}}(t,n,o))}function fr(t){return t.x20(["form-group"]),t.v20(_r),kt()}function _r(t){return Wn(t,Nn(10)),kt()}function dr(t){return t.x20(["form-label"]),kt()}function vr(t,n,e,o,r,i){var s=r;s=s.o1d(-1606680691),Cn(s,"C(ChartUi$composable)P(2,1)");var a=i;wn()&&bn(-1606680691,a,-1,"components.ChartUi$composable (ChartUi.kt:19)");var u,c=Pn(s,708700421,!0,(u=e,function(t,n,e){var o=n;return wn()&&bn(708700421,e,-1,"components.ChartUi$composable. (ChartUi.kt:25)"),xn(u.c37_1+" "+u.d37_1,o,0),wn()&&(kn(),kt()),kt()})),l=s;l.f12(-838505973),Cn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=l,_=l.g12(c),d=f.h12();if(_||d===zn().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||Sn(y)?y:St();l.k12(),On(null,m,s,48,1);var g=s;g.f12(547886695),Cn(g,"C(remember$composable):Composables.kt#9igjgp");var $,w=g,x=w.h12();if(x===zn().j12_1){var k=yr;w.i12(k),$=k}else $=x;var j=$,C=null==j||Sn(j)?j:St();g.k12();var z=C,S=Pn(s,586919320,!0,function(t,n,e,o,r){return function(i,s,a){var u=s;return wn()&&bn(586919320,a,-1,"components.ChartUi$composable. (ChartUi.kt:38)"),oe(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=ne(d),f.data=c,n){var v=e.t36_1,y=f.label;_=(In(v,ee)?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 Qo,m="line",$.type=m;for(var w=t.e37_1.d3(),x=Mt(),k=w.c();k.d();){var j;j=k.e().c3(),pn(x,j)}var C,z,S,q=Gt(x),O=ne(q),P={};P.labels=O,z=ne(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 gr(new K(g,$))}}(t,n,o,i,r),u,8|112&e<<3),wn()&&(kn(),kt()),kt()}}(e,t,a,n,o)),q=s;q.f12(-838505973),Cn(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(S),A=P.h12();if(M||A===zn().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||Sn(I)?I:St();q.k12(),Kn(z,D,s,48,0),wn()&&kn();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){vr(t,n,e,o,i,1|r)}(t,n,e,o,r,i),kt()}}(t,n,e,o,i))}function yr(t){return t.v20(mr),kt()}function mr(t){return Yn(t,Gn(100)),Xn(t,Gn(100)),Zn(t,Nn(700)),Qn(t,Nn(700)),kt()}function gr(t){this.j38_1=t}function $r(t,n,e){var o=n;return wn()&&bn(-646215327,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-1. (EditableTitle.kt:29)"),xn("Title :",o,6),wn()&&kn(),kt()}function br(t,n,e){var o=n;wn()&&bn(1730974274,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-2. (EditableTitle.kt:23)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===zn().j12_1){var u=wr;s.i12(u),i=u}else i=a;var c=i,l=null==c||Sn(c)?c:St();r.k12(),Bn("customTitle",l,Sr().k38_1,o,390,0);var h=re(),p=o;p.f12(547886695),Cn(p,"C(remember$composable):Composables.kt#9igjgp");var f,_=p,d=_.h12();if(d===zn().j12_1){var v=xr;_.i12(v),f=v}else f=d;var y=f,m=null==y||Sn(y)?y:St();return p.k12(),ie(h,m,o,8),wn()&&kn(),kt()}function wr(t){return t.x20(["form-label"]),kt()}function xr(t){return t.y20("customTitle"),t.x20(["form-control"]),se(t,"Custom title goes here"),t.v20(kr),kt()}function kr(t){return ae(t,Nn(24)),kt()}function jr(t,n,e){var o=n;wn()&&bn(1174811809,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-3. (EditableTitle.kt:18)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===zn().j12_1){var u=Cr;s.i12(u),i=u}else i=a;var c=i,l=null==c||Sn(c)?c:St();return r.k12(),Mn(l,Sr().l38_1,o,48,0),wn()&&kn(),kt()}function Cr(t){return t.x20(["form-group"]),kt()}function zr(){var t;k=this,this.k38_1=(t=jn(-646215327,!1,$r),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)}}(jn(1730974274,!1,br)),this.m38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(jn(1174811809,!1,jr))}function Sr(){return null==k&&new zr,k}function qr(t,n){var e=t;if(e=e.o1d(1068528252),Cn(e,"C(EditableTitle$composable)"),0===n&&e.w1b())e.a18();else{wn()&&bn(1068528252,n,-1,"components.EditableTitle$composable (EditableTitle.kt:13)");var o=e;o.f12(547886695),Cn(o,"C(remember$composable):Composables.kt#9igjgp");var r,i=o,s=i.h12();if(s===zn().j12_1){var a=Or;i.i12(a),r=a}else r=s;var u=r,c=null==u||Sn(u)?u:St();o.k12(),Mn(c,Sr().m38_1,e,48,0),wn()&&kn()}var l,h=e.p1d();null===h||h.k1e((l=n,function(t,n){return function(t,n,e){qr(n,1|t)}(l,t),kt()}))}function Or(t){return t.x20(["row"]),kt()}function Pr(t,n,e){var o=n;o=o.o1d(-1873638994),Cn(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{wn()&&bn(-1873638994,e,-1,"components.ErrorUi$composable (Error.kt:8)");var a=o;a.f12(547886695),Cn(a,"C(remember$composable):Composables.kt#9igjgp");var u,c=a,l=c.h12();if(l===zn().j12_1){var h=Mr;c.i12(h),u=h}else u=l;var p=u,f=null==p||Sn(p)?p:St();a.k12();var _=f,d=Pn(o,1938269174,!0,(i=t,function(t,n,e){var o=n;wn()&&bn(1938269174,e,-1,"components.ErrorUi$composable. (Error.kt:11)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var s,a=r,u=a.h12();if(u===zn().j12_1){var c=Ar;a.i12(c),s=c}else s=u;var l=s,h=null==l||Sn(l)?l:St();r.k12();var p=h,f=Pn(o,-1978518889,!0,function(t){return function(n,e,o){var r=e;wn()&&bn(-1978518889,o,-1,"components.ErrorUi$composable.. (Error.kt:14)");var i=r;i.f12(547886695),Cn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===zn().j12_1){var c=Er;a.i12(c),s=c}else s=u;var l=s,h=null==l||Sn(l)?l:St();i.k12();var p=h,f=Pn(r,153044343,!0,function(t){return function(n,e,o){var r=e;return wn()&&bn(153044343,o,-1,"components.ErrorUi$composable... (Error.kt:17)"),xn("❌ "+t,r,0),wn()&&(kn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===zn().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||Sn(b)?b:St();return _.k12(),ue(p,w,r,48,0),wn()&&(kn(),kt()),kt()}}(i)),_=o;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===zn().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||Sn(b)?b:St();return _.k12(),Mn(p,w,o,48,0),wn()&&(kn(),kt()),kt()})),v=o;v.f12(-838505973),Cn(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.g12(d),$=m.h12();if(g||$===zn().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||Sn(w)?w:St();v.k12(),Mn(_,x,o,48,0),wn()&&kn()}var k=o.p1d();null===k||k.k1e(function(t,n){return function(e,o){return function(t,n,e,o){Pr(t,e,1|n)}(t,n,e),kt()}}(t,e))}function Mr(t){return t.x20(["row"]),kt()}function Ar(t){return t.x20(["col-lg-12"]),kt()}function Er(t){return t.x20(["text-center"]),kt()}function Ir(t,n,e){var o=n;return wn()&&bn(242285827,e,-1,"components.ComposableSingletons$FocusGroupsKt.lambda-1. (FocusGroups.kt:24)"),xn("Focus Group :",o,6),wn()&&kn(),kt()}function Dr(){var t;j=this,this.n38_1=(t=jn(242285827,!1,Ir),function(n,e,o){return t.o1y(n,e,o)})}function Tr(t,n,e,o,r){var i=o;i=i.o1d(1269797045),Cn(i,"C(FocusGroups$composable)P(1)");var s,a,u,c,l=r;if(wn()&&bn(1269797045,l,-1,"components.FocusGroups$composable (FocusGroups.kt:8)"),!t.h()){var h=i;h.f12(547886695),Cn(h,"C(remember$composable):Composables.kt#9igjgp");var p,f=h,_=f.h12();if(_===zn().j12_1){var d=Br;f.i12(d),p=d}else p=_;var v=p,y=null==v||Sn(v)?v:St();h.k12();var m=y,g=Pn(i,1549671746,!0,(a=e,u=t,c=n,function(t,n,e){var o=n;wn()&&bn(1549671746,e,-1,"components.FocusGroups$composable. (FocusGroups.kt:18)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,l=s.h12();if(l===zn().j12_1){var h=Lr;s.i12(h),i=h}else i=l;var p=i,f=null==p||Sn(p)?p:St();r.k12(),Bn("focusGroups",f,(null==j&&new Dr,j).n38_1,o,390,0);var _=o;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(a),m=v.h12();if(y||m===zn().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==$||Sn($)?$:St();_.k12();var w=b,x=Pn(o,1251988051,!0,function(t,n,e){return function(n,o,r){var i=o;wn()&&bn(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),Cn(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===zn().j12_1){var f=Nr(a,e);l.i12(f),c=f}else c=p;var _=c,d=null==_||Sn(_)?_:St();u.k12();var v=d,y=Pn(i,736843431,!0,Fr(a)),m=i;m.f12(-838505973),Cn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===zn().j12_1){var x=Rr(y);$.i12(x),g=x}else g=w;var k=g,j=null==k||Sn(k)?k:St();m.k12(),le(a,v,j,i,384,0)}return wn()&&(kn(),kt()),kt()}}(u,0,c)),k=o;k.f12(-838505973),Cn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z,S=k,q=k.g12(x),O=S.h12();if(q||O===zn().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||Sn(M)?M:St();return k.k12(),he(w,!1,A,o,384,2),wn()&&(kn(),kt()),kt()})),$=i;$.f12(-838505973),Cn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w=$,x=$.g12(g),k=w.h12();if(x||k===zn().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||Sn(z)?z:St();$.k12(),Mn(m,S,i,48,0)}wn()&&kn();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){Tr(t,n,e,r,1|o)}(t,n,e,o,r),kt()}}(t,n,e,r))}function Br(t){return t.x20(["form-group"]),kt()}function Lr(t){return t.x20(["form-label"]),kt()}function Nr(t,n){return function(e){return t===n&&(ce(e),kt()),kt()}}function Fr(t){return function(n,e,o){var r=e;return wn()&&bn(736843431,o,-1,"components.FocusGroups$composable... (FocusGroups.kt:46)"),xn(t,r,0),wn()&&(kn(),kt()),kt()}}function Rr(t){return function(n,e,o){return t.o1y(n,e,o)}}function Hr(t,n,e){var o=n;return wn()&&bn(-1817257175,e,-1,"components.ComposableSingletons$HeadingKt.lambda-1. (Heading.kt:21)"),xn("📊 benchart",o,6),wn()&&kn(),kt()}function Ur(t,n,e){var o=n;wn()&&bn(-1445218266,e,-1,"components.ComposableSingletons$HeadingKt.lambda-2. (Heading.kt:18)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===zn().j12_1){var u=Vr;s.i12(u),i=u}else i=a;var c=i,l=null==c||Sn(c)?c:St();return r.k12(),pe(l,Yr().o38_1,o,48,0),wn()&&kn(),kt()}function Vr(t){return t.x20(["text-center"]),kt()}function Wr(t,n,e){var o=n;wn()&&bn(-1522093819,e,-1,"components.ComposableSingletons$HeadingKt.lambda-3. (Heading.kt:11)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===zn().j12_1){var u=Jr;s.i12(u),i=u}else i=a;var c=i,l=null==c||Sn(c)?c:St();return r.k12(),Mn(l,Yr().p38_1,o,48,0),wn()&&kn(),kt()}function Jr(t){return t.x20(["col-lg-12"]),t.v20(Kr),kt()}function Kr(t){return fe(t,Nn(30)),Fn(t,Nn(30)),kt()}function Gr(){var t;C=this,this.o38_1=(t=jn(-1817257175,!1,Hr),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)}}(jn(-1445218266,!1,Ur)),this.q38_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(jn(-1522093819,!1,Wr))}function Yr(){return null==C&&new Gr,C}function Xr(t,n){var e=t;if(e=e.o1d(1340484778),Cn(e,"C(Heading$composable)"),0===n&&e.w1b())e.a18();else{wn()&&bn(1340484778,n,-1,"components.Heading$composable (Heading.kt:8)");var o=e;o.f12(547886695),Cn(o,"C(remember$composable):Composables.kt#9igjgp");var r,i=o,s=i.h12();if(s===zn().j12_1){var a=Zr;i.i12(a),r=a}else r=s;var u=r,c=null==u||Sn(u)?u:St();o.k12(),Mn(c,Yr().q38_1,e,48,0),wn()&&kn()}var l,h=e.p1d();null===h||h.k1e((l=n,function(t,n){return function(t,n,e){Xr(n,1|t)}(l,t),kt()}))}function Zr(t){return t.x20(["row"]),kt()}function Qr(){z=this}function ti(){S=this;var t=new _e("components.SavedBenchmarkNode",this,2);t.m2m("key",!1),t.m2m("value",!1),this.r38_1=t,this.s38_1=8}function ni(){return null==S&&new ti,S}function ei(t,n,e,o){return function(t,n,e,o,r){return 3!=(3&t)&&ge(t,3,ni().r38_1),r.u38_1=n,r.v38_1=e,r}(t,n,e,0,Object.create(oi.prototype))}function oi(t,n){null==z&&new Qr,this.u38_1=t,this.v38_1=n,this.w38_1=0}function ri(){q=this}function ii(){O=this;var t=new _e("components.SavedBenchmarks",this,1);t.m2m("items",!1),this.x38_1=t,this.y38_1=8}function si(){return null==O&&new ii,O}function ai(t,n,e){return function(t,n,e,o){return 1!=(1&t)&&ge(t,1,si().x38_1),o.a39_1=n,o}(t,n,0,Object.create(ui.prototype))}function ui(t){null==q&&new ri,this.a39_1=t,this.b39_1=8}function ci(){return zi(),P}function li(t,n,e){var o=n;return wn()&&bn(37561396,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-1. (SavedBenchmarksDropDown.kt:35)"),xn("Load Benchmark :",o,6),wn()&&kn(),kt()}function hi(t,n,e){var o=n;return wn()&&bn(-32633967,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-2. (SavedBenchmarksDropDown.kt:88)"),xn("Unsaved benchmark",o,6),wn()&&kn(),kt()}function pi(t,n,e){var o=n;return wn()&&bn(-652929765,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-3. (SavedBenchmarksDropDown.kt:114)"),xn("LOAD",o,6),wn()&&kn(),kt()}function fi(t,n,e){var o=n;return wn()&&bn(-1219865148,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-4. (SavedBenchmarksDropDown.kt:130)"),xn("DELETE",o,6),wn()&&kn(),kt()}function _i(){var t;M=this,this.c39_1=(t=jn(37561396,!1,li),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)}}(jn(-32633967,!1,hi)),this.e39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(jn(-652929765,!1,pi)),this.f39_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(jn(-1219865148,!1,fi))}function di(){return null==M&&new _i,M}function vi(t,n,e,o,r,i,s){zi();var a=i;a=a.o1d(-441302567),Cn(a,"C(SavedBenchmarksDropDown$composable)P(4,3,2,1)");var u,c,l,h,p,f,_=s;if(wn()&&bn(-441302567,_,-1,"components.SavedBenchmarksDropDown$composable (SavedBenchmarksDropDown.kt:15)"),n.h()){wn()&&kn();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){vi(t,n,e,o,r,s,1|i)}(u,c,l,h,p,f,t),kt()})),kt()}var v=a;v.f12(-838505973),Cn(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.g12(n),$=m.h12();if(g||$===zn().j12_1){var b=Wt(n),w=be(b,null,2,null);m.i12(w),y=w}else y=$;var x=y,k=null==x||Sn(x)?x:St();v.k12();var j=k,C=a;C.f12(547886695),Cn(C,"C(remember$composable):Composables.kt#9igjgp");var z,S=C,q=S.h12();if(q===zn().j12_1){var O=mi;S.i12(O),z=O}else z=q;var P=z,M=null==P||Sn(P)?P:St();C.k12(),Bn("savedBenchmarks",M,di().c39_1,a,390,0);var A=a;A.f12(547886695),Cn(A,"C(remember$composable):Composables.kt#9igjgp");var E,I=A,D=I.h12();if(D===zn().j12_1){var T=gi;I.i12(T),E=T}else E=D;var B=E,L=null==B||Sn(B)?B:St();A.k12();var N=L,F=Pn(a,549151222,!0,function(t,n,e,o,r,i,s){return function(o,a,u){var c=a;wn()&&bn(549151222,u,-1,"components.SavedBenchmarksDropDown$composable. (SavedBenchmarksDropDown.kt:43)");var l=c;l.f12(547886695),Cn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===zn().j12_1){var _=$i;p.i12(_),h=_}else h=f;var d=h,v=null==d||Sn(d)?d:St();l.k12();var y=v,m=Pn(c,1940859863,!0,function(t,n,e,o,r,i,s){return function(o,a,u){var c=a;wn()&&bn(1940859863,u,-1,"components.SavedBenchmarksDropDown$composable.. (SavedBenchmarksDropDown.kt:48)");var l=c;l.f12(547886695),Cn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===zn().j12_1){var _=bi;p.i12(_),h=_}else h=f;var d=h,v=null==d||Sn(d)?d:St();l.k12();var y=v,m=Pn(c,461626232,!0,function(t,n,e,o,r){return function(o,i,s){var a=i;wn()&&bn(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){zi(),ke("selectedBenchmark",we,!0,(function(){return xe()})),t.ky(n)})(e,je(i)),kt()}return kt()}}(t,n,e)),kt()}}(t,n,e),c=Pn(a,1692700999,!0,function(t,n,e,o){return function(n,r,i){var s=r;wn()&&bn(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),Cn(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===zn().j12_1){var _=wi(u,o,e);h.i12(_),l=_}else l=f;var d=l,v=null==d||Sn(d)?d:St();c.k12();var y,m=v,g=Pn(s,1052804723,!0,xi(u)),$=s;$.f12(-838505973),Cn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w=$,x=$.g12(g),k=w.h12();if(x||k===zn().j12_1){var j=ki(g);w.i12(j),b=j}else b=k;var C=b,z=null==C||Sn(C)?C:St();$.k12(),y=z,le(u.u38_1,m,y,s,384,0)}var S=ci(),q=s;q.f12(-838505973),Cn(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.g12(o),A=P.h12();if(M||A===zn().j12_1){var E=function(t){return function(n){return t&&(ce(n),kt()),kt()}}(o);P.i12(E),O=E}else O=A;var I=O,D=null==I||Sn(I)?I:St();return q.k12(),le(S,D,di().d39_1,s,390,0),wn()&&(kn(),kt()),kt()}}(n,0,e,r)),l=a;l.f12(-838505973),Cn(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=l,_=l.g12(c),d=f.h12();if(_||d===zn().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||Sn(y)?y:St();return l.k12(),he(u,!1,m,a,384,2),wn()&&(kn(),kt()),kt()}}(t,n,e,0,r)),g=c;g.f12(-838505973),Cn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b,w=g,x=g.g12(m),k=w.h12();if(x||k===zn().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||Sn(C)?C:St();g.k12(),Mn(y,z,c,48,0);var S=c;S.f12(547886695),Cn(S,"C(remember$composable):Composables.kt#9igjgp");var q,O=S,P=O.h12();if(P===zn().j12_1){var M=ji;O.i12(M),q=M}else q=P;var A=q,E=null==A||Sn(A)?A:St();S.k12();var I=E,D=Pn(c,-282119967,!0,function(t,n,e,o,r){return function(t,i,s){var a=i;wn()&&bn(-282119967,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:98)");var u=a;u.f12(-1058148781),Cn(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===zn().j12_1){var f=function(t,n,e){return function(o){return o.x20(["btn","btn-primary"]),o.v20(Ci),o.b21(function(t,n){return function(e){return t(yi(n)),kt()}}(n,e)),Hn(o,Rn()),t&&(ze(o),kt()),kt()}}(o,n,e);l.i12(f),c=f}else c=p;var _=c,d=null==_||Sn(_)?_:St();u.k12(),Un(d,di().e39_1,a,48,0);var v=a;v.f12(-1058148781),Cn(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||$===zn().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(yi(n)),kt()}}(n,e)),Hn(o,Rn()),t&&(ze(o),kt()),kt()}}(o,r,e);m.i12(b),y=b}else y=$;var w=y,x=null==w||Sn(w)?w:St();return v.k12(),Un(x,di().f39_1,a,48,0),wn()&&(kn(),kt()),kt()}}(0,i,e,r,s)),T=c;T.f12(-838505973),Cn(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,N=T.g12(D),F=L.h12();if(N||F===zn().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||Sn(H)?H:St();return T.k12(),Mn(I,U,c,48,0),wn()&&(kn(),kt()),kt()}}(t,n,e,0,r,i,s)),g=c;g.f12(-838505973),Cn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b,w=g,x=g.g12(m),k=w.h12();if(x||k===zn().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||Sn(C)?C:St();return g.k12(),Mn(y,z,c,48,0),wn()&&(kn(),kt()),kt()}}(e,n,j,0,t,o,r)),R=a;R.f12(-838505973),Cn(R,"C(remember$composable)P(1):Composables.kt#9igjgp");var H,U,V=R,W=R.g12(F),J=V.h12();if(W||J===zn().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||Sn(G)?G:St();R.k12(),Mn(N,Y,a,48,0),wn()&&kn();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){vi(t,n,e,o,r,s,1|i)}(t,n,e,o,r,i,s),kt()}}(t,n,e,o,r,s))}function yi(t){return zi(),ke("selectedBenchmark",we,!0,(function(){return xe()})),t.n2()}function mi(t){return zi(),t.x20(["form-label"]),kt()}function gi(t){return zi(),t.x20(["form-group"]),kt()}function $i(t){return zi(),t.x20(["row"]),kt()}function bi(t){return zi(),t.x20(["col"]),kt()}function wi(t,n,e){return function(o){return t.u38_1!==yi(e).u38_1||n||(ce(o),kt()),kt()}}function xi(t){return function(n,e,o){var r=e;return wn()&&bn(1052804723,o,-1,"components.SavedBenchmarksDropDown$composable..... (SavedBenchmarksDropDown.kt:76)"),xn(t.u38_1,r,0),wn()&&(kn(),kt()),kt()}}function ki(t){return function(n,e,o){return t.o1y(n,e,o)}}function ji(t){return zi(),t.x20(["col"]),kt()}function Ci(t){return zi(),Ce(t,Nn(10)),kt()}function zi(){A||(A=!0,P="unsavedBenchmark_"+(new Date).getMilliseconds())}function Si(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 qi(t,n){this.a3a_1=t,this.b3a_1=n,this.c3a_1=8}function Oi(t){return Be("el",1,Te,(function(t){return Oi(t)}),null),t.e3a_1.n2()}function Pi(t){var n;this.d3a_1=t,this.e3a_1=Se((n=this,function(){return document.createElement(n.d3a_1)}))}function Mi(t,n,e){var o=n;return wn()&&bn(323270151,e,-1,"components.ComposableSingletons$SummaryKt.lambda-1. (Summary.kt:180)"),xn("vs",o,6),wn()&&kn(),kt()}function Ai(t,n,e){var o=n;return wn()&&bn(-1108287470,e,-1,"components.ComposableSingletons$SummaryKt.lambda-2. (Summary.kt:179)"),Li(null,Di().f3a_1,o,48,1),wn()&&kn(),kt()}function Ei(t,n,e){var o=n;return wn()&&bn(2132966384,e,-1,"components.ComposableSingletons$SummaryKt.lambda-3. (Summary.kt:178)"),Oe(null,Di().g3a_1,o,48,1),wn()&&kn(),kt()}function Ii(){var t;I=this,this.f3a_1=(t=jn(323270151,!1,Mi),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)}}(jn(-1108287470,!1,Ai)),this.h3a_1=function(t){return function(n,e,o){return t.o1y(n,e,o)}}(jn(2132966384,!1,Ei))}function Di(){return null==I&&new Ii,I}function Ti(t,n,e,o,r){as();var i=o;i=i.o1d(1689914162),Cn(i,"C(SummaryContainer$composable)P(1,2)");var s=r;wn()&&bn(1689914162,s,-1,"components.SummaryContainer$composable (Summary.kt:52)"),t(i,14&s),Jn(null,i,0,1);for(var a=n.c();a.d();){var u=a.e();i.i1a(-380219352,u.a3a_1),Ni(u.a3a_1,e,u.b3a_1,i,512|112&s>>3),Jn(null,i,0,1),i.l1a()}wn()&&kn();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){Ti(t,n,e,r,1|o)}(c,l,h,p,t),kt()}))}function Bi(t,n,e,o,r,i,s,a,u,c,l){as();var h=c;h=h.o1d(1501225216),Cn(h,"C(SummarySelector$composable)P(!1,8,2,5!1,6,7)");var p=l;wn()&&bn(1501225216,p,-1,"components.SummarySelector$composable (Summary.kt:70)");var f=h;f.f12(547886695),Cn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===zn().j12_1){var y=Ri;d.i12(y),_=y}else _=v;var m=_,g=null==m||Sn(m)?m:St();f.k12();var $,b,w,x,k,j=g,C=Pn(h,2020978206,!0,($=p,b=e,w=t,x=o,k=n,function(t,n,e){var o=n;wn()&&bn(2020978206,e,-1,"components.SummarySelector$composable. (Summary.kt:86)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===zn().j12_1){var u=Hi;s.i12(u),i=u}else i=a;var c=i,l=null==c||Sn(c)?c:St();r.k12();var h=l,p=Pn(o,-871838913,!0,function(t,n,e){return function(o,r,i){var s=r;wn()&&bn(-871838913,i,-1,"components.SummarySelector$composable.. (Summary.kt:92)");var a=s;a.f12(-838505973),Cn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(n),h=c.h12();if(l||h===zn().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)),Hn(n,Rn()),kt()}}(n);c.i12(p),u=p}else u=h;var f=u,_=null==f||Sn(f)?f:St();a.k12();var d=_,v=Pn(s,-1132288775,!0,function(t,n){return function(e,o,r){var i=o;return wn()&&bn(-1132288775,r,-1,"components.SummarySelector$composable... (Summary.kt:102)"),xn(t,i,14&n),wn()&&(kn(),kt()),kt()}}(e,t)),y=s;y.f12(-838505973),Cn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g,$=y,b=y.g12(v),w=$.h12();if(b||w===zn().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||Sn(k)?k:St();return y.k12(),Un(d,j,s,48,0),wn()&&(kn(),kt()),kt()}}($,b,w)),f=o;f.f12(-838505973),Cn(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d,v=f,y=f.g12(p),m=v.h12();if(y||m===zn().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||Sn(j)?j:St();f.k12(),Mn(h,C,o,48,0);var z=o;z.f12(547886695),Cn(z,"C(remember$composable):Composables.kt#9igjgp");var S,q=z,O=q.h12();if(O===zn().j12_1){var P=Ui;q.i12(P),S=P}else S=O;var M=S,A=null==M||Sn(M)?M:St();z.k12();var E=A,I=Pn(o,782244392,!0,function(t,n,e){return function(o,r,i){var s=r;wn()&&bn(782244392,i,-1,"components.SummarySelector$composable.. (Summary.kt:111)");var a=s;a.f12(-838505973),Cn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(n),h=c.h12();if(l||h===zn().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)),Hn(n,Rn()),kt()}}(n);c.i12(p),u=p}else u=h;var f=u,_=null==f||Sn(f)?f:St();a.k12();var d=_,v=Pn(s,-401969822,!0,function(t,n){return function(e,o,r){var i=o;return wn()&&bn(-401969822,r,-1,"components.SummarySelector$composable... (Summary.kt:121)"),xn(t,i,14&n>>3),wn()&&(kn(),kt()),kt()}}(e,t)),y=s;y.f12(-838505973),Cn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,$=y.g12(v),b=g.h12();if($||b===zn().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||Sn(x)?x:St();return y.k12(),Un(d,k,s,48,0),wn()&&(kn(),kt()),kt()}}($,x,k)),D=o;D.f12(-838505973),Cn(D,"C(remember$composable)P(1):Composables.kt#9igjgp");var T,B=D,L=D.g12(I),N=B.h12();if(L||N===zn().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||Sn(R)?R:St();return D.k12(),Mn(E,H,o,48,0),wn()&&(kn(),kt()),kt()})),z=h;z.f12(-838505973),Cn(z,"C(remember$composable)P(1):Composables.kt#9igjgp");var S,q,O=z,P=z.g12(C),M=O.h12();if(P||M===zn().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||Sn(E)?E:St();z.k12(),Mn(j,I,h,48,0);var D=h;D.f12(547886695),Cn(D,"C(remember$composable):Composables.kt#9igjgp");var T,B=D,L=B.h12();if(L===zn().j12_1){var N=Vi;B.i12(N),T=N}else T=L;var F=T,R=null==F||Sn(F)?F:St();D.k12();var H,U,V,W,J,K=R,G=Pn(h,-569509561,!0,(H=a,U=u,V=r,W=i,J=s,function(t,n,e){var o=n;wn()&&bn(-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),Cn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===zn().j12_1){var l=Wi;u.i12(l),a=l}else a=c;var h=a,p=null==h||Sn(h)?h:St();s.k12();var f=p,_=Pn(o,-850201877,!0,Xi(0,i,H,U,V,W,J)),d=o;d.f12(-838505973),Cn(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y=d,m=d.g12(_),g=y.h12();if(m||g===zn().j12_1){var $=Zi(_);y.i12($),v=$}else v=g;var b=v,w=null==b||Sn(b)?b:St();if(d.k12(),Mn(f,w,o,48,0),0===i){var x=o;x.f12(547886695),Cn(x,"C(remember$composable):Composables.kt#9igjgp");var k,j=x,C=j.h12();if(C===zn().j12_1){var z=Qi;j.i12(z),k=z}else k=C;var S=k,q=null==S||Sn(S)?S:St();x.k12(),Mn(q,Di().h3a_1,o,48,0)}o.l1a()}while(r<2);return wn()&&(kn(),kt()),kt()})),Y=h;Y.f12(-838505973),Cn(Y,"C(remember$composable)P(1):Composables.kt#9igjgp");var X,Z=Y,Q=Y.g12(G),tt=Z.h12();if(Q||tt===zn().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||Sn(et)?et:St();Y.k12(),Mn(K,ot,h,48,0),wn()&&kn();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){Bi(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 Li(t,n,e,o,r){as();var i={_v:t},s={_v:n},a=e;a=a.o1d(-1706683414),Cn(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),wn()&&bn(-1706683414,u,-1,"components.Strong$composable (Summary.kt:206)"),Pe((as(),E),i._v,s._v,a,8|112&u<<3|896&u<<3),wn()&&kn());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){Li(t._v,n._v,r,1|e,o)}(c,l,h,p,t),kt()}))}function Ni(t,n,e,o,r){as();var i=o;i=i.o1d(-397929440),Cn(i,"C(SummaryUi$composable)P(2)");var s=r;wn()&&bn(-397929440,s,-1,"components.SummaryUi$composable (Summary.kt:212)");var a=i;a.f12(547886695),Cn(a,"C(remember$composable):Composables.kt#9igjgp");var u,c=a,l=c.h12();if(l===zn().j12_1){var h=ts;c.i12(h),u=h}else u=l;var p=u,f=null==p||Sn(p)?p:St();a.k12();var _,d,v,y,m=f,g=Pn(i,122385029,!0,(_=t,d=s,v=n,y=e,function(t,n,e){var o=n;wn()&&bn(122385029,e,-1,"components.SummaryUi$composable. (Summary.kt:217)");var r=Pn(o,1987340836,!0,function(t,n,e){return function(o,r,i){var s,a=r;if(wn()&&bn(1987340836,i,-1,"components.SummaryUi$composable.. (Summary.kt:218)"),xn(t,a,14&n),e>1){var u=a;u.f12(547886695),Cn(u,"C(remember$composable):Composables.kt#9igjgp");var c,l=u,h=l.h12();if(h===zn().j12_1){var p=ns;l.i12(p),c=p}else c=h;var f=c,_=null==f||Sn(f)?f:St();u.k12();var d=_,v=Pn(a,923568660,!0,function(t){return function(n,e,o){var r=e;return wn()&&bn(923568660,o,-1,"components.SummaryUi$composable... (Summary.kt:228)"),xn(" (average of "+t+")",r,0),wn()&&(kn(),kt()),kt()}}(e)),y=a;y.f12(-838505973),Cn(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,$=y.g12(v),b=g.h12();if($||b===zn().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||Sn(x)?x:St();y.k12(),Ae(d,k,a,48,0)}return wn()&&(kn(),kt()),kt()}}(_,d,v)),i=o;i.f12(-838505973),Cn(i,"C(remember$composable)P(1):Composables.kt#9igjgp");var s,a,u=i,c=i.g12(r),l=u.h12();if(c||l===zn().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||Sn(p)?p:St();i.k12(),On(null,f,o,48,1);var m=Pn(o,1063714288,!0,function(t){return function(n,e,o){var r=e;wn()&&bn(1063714288,o,-1,"components.SummaryUi$composable.. (Summary.kt:233)");for(var i=t.c();i.d();){var s=i.e(),a=Pn(r,186798062,!0,rs(s)),u=r;u.f12(-838505973),Cn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===zn().j12_1){var f=is(a);l.i12(f),c=f}else c=p;var _=c,d=null==_||Sn(_)?_:St();u.k12(),Ee(null,d,r,48,1)}return wn()&&(kn(),kt()),kt()}}(y)),g=o;g.f12(-838505973),Cn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===zn().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||Sn(j)?j:St();return g.k12(),Ie(null,C,o,48,1),wn()&&(kn(),kt()),kt()})),$=i;$.f12(-838505973),Cn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w,x=$,k=$.g12(g),j=x.h12();if(k||j===zn().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||Sn(z)?z:St();$.k12(),Mn(m,S,i,48,0),wn()&&kn();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){Ni(t,n,e,r,1|o)}(t,n,e,o,r),kt()}}(t,n,e,r))}function Fi(t,n,e,o,r){as();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),wn()&&bn(-1073265847,h,-1,"components.BoldText$composable (Summary.kt:274)");var p=i._v,f=s;f.f12(-838505973),Cn(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d=f,v=f.g12(p),y=d.h12();if(v||y===zn().j12_1){var m=(l=i,function(t){var n=l._v;return null==n||n(t),t.v20(ss),kt()});d.i12(m),_=m}else _=y;var g=_,$=null==g||Sn(g)?g:St();f.k12();var b=$,w=Pn(s,-374759312,!0,(u=t,c=h,function(t,n,e){var o=n;return wn()&&bn(-374759312,e,-1,"components.BoldText$composable. (Summary.kt:285)"),xn(u,o,14&c),wn()&&(kn(),kt()),kt()})),x=s;x.f12(-838505973),Cn(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j=x,C=x.g12(w),z=j.h12();if(C||z===zn().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||Sn(q)?q:St();x.k12(),Me(b,O,s,48,0),wn()&&kn()}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){Fi(t,n._v,r,1|e,o)}(t,n,e,o,r),kt()}}(t,i,o,r))}function Ri(t){return as(),t.x20(["row","mb-3"]),kt()}function Hi(t){return as(),t.x20(["col-auto"]),kt()}function Ui(t){return as(),t.x20(["col-auto"]),kt()}function Vi(t){return as(),t.x20(["row"]),kt()}function Wi(t){return as(),t.x20(["col"]),kt()}function Ji(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 Ki(t,n,e,o){return function(r){return o===(0===t?n:e)&&(ce(r),kt()),kt()}}function Gi(t){return function(n,e,o){var r=e;return wn()&&bn(1538427302,o,-1,"components.SummarySelector$composable...... (Summary.kt:166)"),xn(t,r,0),wn()&&(kn(),kt()),kt()}}function Yi(t){return function(n,e,o){return t.o1y(n,e,o)}}function Xi(t,n,e,o,r,i,s){return function(t,a,u){var c=a;wn()&&bn(-850201877,u,-1,"components.SummarySelector$composable.... (Summary.kt:139)");var l=c;l.f12(-1058148781),Cn(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||_===zn().j12_1){var d=Ji(n,e,o);p.i12(d),h=d}else h=_;var v=h,y=null==v||Sn(v)?v:St();l.k12();var m=y,g=Pn(c,1162597754,!0,function(t,n,e,o){return function(r,i,s){var a=i;wn()&&bn(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),Cn(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===zn().j12_1){var $=Ki(n,e,o,c);y.i12($),v=$}else v=g;var b=v,w=null==b||Sn(b)?b:St();l.k12();var x=w,k=Pn(a,1538427302,!0,Gi(c)),j=a;j.f12(-838505973),Cn(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z=j,S=j.g12(k),q=z.h12();if(S||q===zn().j12_1){var O=Yi(k);z.i12(O),C=O}else C=q;var P=C,M=null==P||Sn(P)?P:St();j.k12(),le(c,x,M,a,384,0)}return wn()&&(kn(),kt()),kt()}}(r,n,i,s)),$=c;$.f12(-838505973),Cn($,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,w,x=$,k=$.g12(g),j=x.h12();if(k||j===zn().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||Sn(z)?z:St();return $.k12(),he(m,!1,S,c,384,2),wn()&&(kn(),kt()),kt()}}function Zi(t){return function(n,e,o){return t.o1y(n,e,o)}}function Qi(t){return as(),t.x20(["col-auto"]),kt()}function ts(t){return as(),t.x20(["row"]),kt()}function ns(t){return as(),t.x20(["text-muted"]),t.v20(es),kt()}function es(t){return as(),ae(t,Nn(18)),kt()}function os(t){return as(),t.x20(["text-capitalize"]),kt()}function rs(t){return function(n,e,o){var r,i=e;wn()&&bn(186798062,o,-1,"components.SummaryUi$composable.... (Summary.kt:235)"),xn(t.i39_1+" ",i,0);var s=i;s.f12(547886695),Cn(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,c=u.h12();if(c===zn().j12_1){var l=os;u.i12(l),a=l}else a=c;var h=a,p=null==h||Sn(h)?h:St();s.k12(),r=p,Fi(t.j39_1,r,i,0,0),xn(" : ",i,6),Fi(t.k39_1,null,i,0,2),xn(t.h39_1?" looks ":" performed ",i,0),Fi(t.l39_1+"% ",null,i,0,2);var f=t.h39_1?"":"ms",_=i;_.f12(-1124426577),Cn(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.g12(t)|_.g12(f)),m=v.h12();if(y||m===zn().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==$||Sn($)?$:St();_.k12();var w=b,x=Pn(i,-387292852,!0,function(t){return function(n,e,o){var r=e;return wn()&&bn(-387292852,o,-1,"components.SummaryUi$composable..... (Summary.kt:263)"),xn(t.m39_1,r,0),wn()&&(kn(),kt()),kt()}}(t)),k=i;k.f12(-838505973),Cn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===zn().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||Sn(P)?P:St();return k.k12(),Me(w,M,i,48,0),xn(" ("+t.o39_1+t.n39_1+f+")",i,0),wn()&&(kn(),kt()),kt()}}function is(t){return function(n,e,o){return t.o1y(n,e,o)}}function ss(t){return as(),De(t,"bold"),kt()}function as(){D||(D=!0,E=new Pi("strong"))}function us(t,n,e){var o=n;return wn()&&bn(1817043984,e,-1,"components.ComposableSingletons$TestNameDetectionToggleKt.lambda-1. (TestNameDetectionToggle.kt:29)"),xn("Test Name Detection:",o,6),wn()&&kn(),kt()}function cs(){var t;T=this,this.i3a_1=(t=jn(1817043984,!1,us),function(n,e,o){return t.o1y(n,e,o)})}function ls(t,n,e,o){var r=e;r=r.o1d(-1801806257),Cn(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{wn()&&bn(-1801806257,u,-1,"components.TestNameDetectionToggle$composable (TestNameDetectionToggle.kt:10)");var c=r;c.f12(547886695),Cn(c,"C(remember$composable):Composables.kt#9igjgp");var l,h=c,p=h.h12();if(p===zn().j12_1){var f=hs;h.i12(f),l=f}else l=p;var _=l,d=null==_||Sn(_)?_:St();c.k12();var v=d,y=Pn(r,815464847,!0,(s=t,a=n,function(t,n,e){var o=n;wn()&&bn(815464847,e,-1,"components.TestNameDetectionToggle$composable. (TestNameDetectionToggle.kt:21)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,u=r,c=u.h12();if(c===zn().j12_1){var l=fs;u.i12(l),i=l}else i=c;var h=i,p=null==h||Sn(h)?h:St();r.k12(),Bn("testNameDetection",p,(null==T&&new cs,T).i3a_1,o,390,0),Jn(null,o,0,1);var f=o;f.f12(-1124426577),Cn(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===zn().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)),Hn(e,Rn()),kt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,$=null==g||Sn(g)?g:St();f.k12();var b=$,w=Pn(o,-1071119211,!0,function(t){return function(n,e,o){var r=e;return wn()&&bn(-1071119211,o,-1,"components.TestNameDetectionToggle$composable.. (TestNameDetectionToggle.kt:42)"),xn(t?"ON":"OFF",r,0),wn()&&(kn(),kt()),kt()}}(s)),x=o;x.f12(-838505973),Cn(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j,C=x,z=x.g12(w),S=C.h12();if(z||S===zn().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||Sn(O)?O:St();return x.k12(),Un(b,P,o,48,0),wn()&&(kn(),kt()),kt()})),m=r;m.f12(-838505973),Cn(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,$=m,b=m.g12(y),w=$.h12();if(b||w===zn().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||Sn(k)?k:St();m.k12(),Mn(v,j,r,48,0),wn()&&kn()}var C=r.p1d();null===C||C.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){ls(t,n,o,1|e)}(t,n,e,o),kt()}}(t,n,o))}function hs(t){return t.x20(["form-group"]),t.v20(ps),kt()}function ps(t){return Wn(t,Nn(10)),kt()}function fs(t){return t.x20(["form-label"]),kt()}function _s(t,n,e){var o=n;return wn()&&bn(-130845949,e,-1,"components.ComposableSingletons$TestNamesKt.lambda-1. (TestNames.kt:24)"),xn("Test Name :",o,6),wn()&&kn(),kt()}function ds(){var t;B=this,this.j3a_1=(t=jn(-130845949,!1,_s),function(n,e,o){return t.o1y(n,e,o)})}function vs(t,n,e,o,r,i){var s={_v:n},a=o;a=a.o1d(246637604),Cn(a,"C(TestNames$composable)P(2)");var u,c,l,h,p=r;if(0!=(2&i)&&(s._v=null),wn()&&bn(246637604,p,-1,"components.TestNames$composable (TestNames.kt:8)"),!t.h()){var f=a;f.f12(547886695),Cn(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===zn().j12_1){var y=ys;d.i12(y),_=y}else _=v;var m=_,g=null==m||Sn(m)?m:St();f.k12();var $=g,b=Pn(a,-1509913918,!0,(c=e,l=t,h=s,function(t,n,e){var o=n;wn()&&bn(-1509913918,e,-1,"components.TestNames$composable. (TestNames.kt:18)");var r=o;r.f12(547886695),Cn(r,"C(remember$composable):Composables.kt#9igjgp");var i,s=r,a=s.h12();if(a===zn().j12_1){var u=ms;s.i12(u),i=u}else i=a;var p=i,f=null==p||Sn(p)?p:St();r.k12(),Bn("testNames",f,(null==B&&new ds,B).j3a_1,o,390,0);var _=o;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(c),m=v.h12();if(y||m===zn().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==$||Sn($)?$:St();_.k12();var w=b,x=Pn(o,-1857982381,!0,function(t,n,e){return function(e,o,r){var i=o;wn()&&bn(-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),Cn(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===zn().j12_1){var _=gs(a,n);h.i12(_),l=_}else l=f;var d=l,v=null==d||Sn(d)?d:St();c.k12();var y=v,m=Pn(i,1208237735,!0,$s(a)),g=i;g.f12(-838505973),Cn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===zn().j12_1){var k=bs(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||Sn(j)?j:St();g.k12(),le(a,y,C,i,384,0)}return wn()&&(kn(),kt()),kt()}}(l,h)),k=o;k.f12(-838505973),Cn(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,z=k,S=k.g12(x),q=z.h12();if(S||q===zn().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||Sn(P)?P:St();return k.k12(),he(w,!1,M,o,384,2),wn()&&(kn(),kt()),kt()})),w=a;w.f12(-838505973),Cn(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k=w,j=w.g12(b),C=k.h12();if(j||C===zn().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||Sn(S)?S:St();w.k12(),Mn($,q,a,48,0)}wn()&&kn();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){vs(t,n._v,e,i,1|o,r)}(t,n,e,o,r,i),kt()}}(t,s,e,r,i))}function ys(t){return t.x20(["form-group"]),kt()}function ms(t){return t.x20(["form-label"]),kt()}function gs(t,n){return function(e){return t===n._v&&(ce(e),kt()),kt()}}function $s(t){return function(n,e,o){var r=e;return wn()&&bn(1208237735,o,-1,"components.TestNames$composable... (TestNames.kt:46)"),xn(t,r,0),wn()&&(kn(),kt()),kt()}}function bs(t){return function(n,e,o){return t.o1y(n,e,o)}}function ws(t,n,e){var o=n;return wn()&&bn(1108811911,e,-1,"ComposableSingletons$MainKt.lambda-1. (main.kt:8)"),Cs(null,o,0,1),wn()&&kn(),kt()}function xs(){var t;L=this,this.k3a_1=(t=jn(1108811911,!1,ws),function(n,e,o){return t.o1y(n,e,o)})}function ks(t,n,e){var o=n;return wn()&&bn(-374992274,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-1. (HomePage.kt:112)"),xn("🖥 Output",o,6),wn()&&kn(),kt()}function js(){var t;N=this,this.l3a_1=(t=jn(-374992274,!1,ks),function(n,e,o){return t.o1y(n,e,o)})}function Cs(t,n,e,o){var r={_v:t},i=n;i=i.o1d(-109696367),Cn(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),Cn(l,"C(remember$composable):Composables.kt#9igjgp");var h,p=l,f=p.h12();if(f===zn().j12_1){var _=new fa(new ma,new wa);p.i12(_),h=_}else h=f;var d=h,v=null==d||Sn(d)?d:St();l.k12(),c=v,r._v=c,u&=-15}}else i.a18(),0!=(1&o)&&(u&=-15);i.y1c(),wn()&&bn(-109696367,u,-1,"page.home.HomePageUi$composable (HomePage.kt:29)");var y=i;y.f12(547886695),Cn(y,"C(remember$composable):Composables.kt#9igjgp");var m,g=y,$=g.h12();if($===zn().j12_1){var b=zs;g.i12(b),m=b}else m=$;var w=m,x=null==w||Sn(w)?w:St();y.k12();var k=x,j=Pn(i,1790973562,!0,(a=r,function(t,n,e){var o=n;wn()&&bn(1790973562,e,-1,"page.home.HomePageUi$composable. (HomePage.kt:36)"),Xr(o,0);var r=a._v.u3c();!on(r)&&Pr(a._v.u3c(),o,0);var i=o;i.f12(547886695),Cn(i,"C(remember$composable):Composables.kt#9igjgp");var s,u=i,c=u.h12();if(c===zn().j12_1){var l=Ss;u.i12(l),s=l}else s=c;var h=s,p=null==h||Sn(h)?h:St();i.k12();var f=p,_=Pn(o,-1337148517,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(-1337148517,o,-1,"page.home.HomePageUi$composable.. (HomePage.kt:55)");var i=r;i.f12(547886695),Cn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===zn().j12_1){var c=Os;a.i12(c),s=c}else s=u;var l=s,h=null==l||Sn(l)?l:St();i.k12();var p=h,f=Pn(r,1509226108,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(1509226108,o,-1,"page.home.HomePageUi$composable... (HomePage.kt:58)");var i,s=t._v.f3c(),a=t._v.g3c(),u=(i=t._v,function(t){return function(t,n){t.n3b(n,!1,2,null)}(i,t),kt()}),c=function(t){var n=function(n){return t.o3b(n),kt()};return n.callableName="onSaveClicked",n}(t._v);ir(s,a,t._v.h3c(),u,c,function(t){var n=function(n){return t.p3b(n),kt()};return n.callableName="onSavedBenchmarkChanged",n}(t._v),function(t){var n=function(n){return t.q3b(n),kt()};return n.callableName="onLoadBenchmarkClicked",n}(t._v),function(t){var n=function(n){return t.r3b(n),kt()};return n.callableName="onDeleteBenchmarkClicked",n}(t._v),r,520),Jn(null,r,0,1),Jn(null,r,0,1);var l=Pn(r,-1521832332,!0,function(t,n){return function(n,e){var o=n;if(2==(11&e)&&o.w1b())o.a18(),kt();else{if(wn()&&bn(-1521832332,e,-1,"page.home.HomePageUi$composable.... (HomePage.kt:74)"),rn("block size "+t._v.z3a_1.f()),t._v.z3a_1.f()>2){var r=t._v.w3b(),i="BEST (-"+(null==r?null:r.z3b_1)+t._v.r28()+")",s=t._v.c3c(),a="WORST (+"+(null==s?null:s.a3c_1)+t._v.r28()+")",u=t._v,c=o;c.f12(-838505973),Cn(c,"C(remember$composable)P(1):Composables.kt#9igjgp");var l,h=c,p=c.g12(u),f=h.h12();if(p||f===zn().j12_1){var _=function(t){var n=function(){return t.s3b(),kt()};return n.callableName="onBestClicked",n}(u);h.i12(_),l=_}else l=f;var d=l,v=null==d||Sn(d)?d:St();c.k12();var y=v,m=t._v,g=o;g.f12(-838505973),Cn(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,b=g,w=g.g12(m),x=b.h12();if(w||x===zn().j12_1){var k=function(t){var n=function(){return t.t3b(),kt()};return n.callableName="onWorstClicked",n}(m);b.i12(k),$=k}else $=x;var j=$,C=null==j||Sn(j)?j:St();g.k12(),Bi(i,a,y,C,t._v.z3a_1,t._v.d3c(),t._v.e3c(),function(t){var n=function(n){return t.u3b(n),kt()};return n.callableName="onBlockNameOneChanged",n}(t._v),function(t){var n=function(n){return t.v3b(n),kt()};return n.callableName="onBlockNameTwoChanged",n}(t._v),o,0)}wn()&&(kn(),kt())}return kt()}}(t)),h=r;h.f12(-838505973),Cn(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.g12(l),d=f.h12();if(_||d===zn().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||Sn(y)?y:St();return h.k12(),Ti(m,t._v.c3b_1,t._v.i3c(),r,6),wn()&&(kn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.g12(f),g=y.h12();if(m||g===zn().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||Sn(b)?b:St();_.k12(),Mn(p,w,r,48,0);var x=t._v.t3c(),k=null==x?null:x.y36_1,j=null==k||k.h()?null:k;if(null==j);else{var C=t._v.t3c();if(null==C)throw Vt("TSH");var z=C,S=r;S.f12(547886695),Cn(S,"C(remember$composable):Composables.kt#9igjgp");var q,O=S,P=O.h12();if(P===zn().j12_1){var M=Ps;O.i12(M),q=M}else q=P;var A=q,E=null==A||Sn(A)?A:St();S.k12();var I=E,D=Pn(r,2092888171,!0,function(t,n,e,o){return function(n,r,i){var s=r;if(wn()&&bn(2092888171,i,-1,"page.home.HomePageUi$composable.... (HomePage.kt:101)"),t._v.s3c())s.f12(-1006755353),qr(s,0),s.k12();else{s.f12(-1006755284);var a=t._v,u=s;u.f12(-838505973),Cn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===zn().j12_1){var f=function(t){return function(n){return n.c21(function(t){return function(n){return t._v.j3c(),kt()}}(t)),kt()}}(t);l.i12(f),c=f}else c=p;var _=c,d=null==_||Sn(_)?_:St();u.k12(),On(d,(null==N&&new js,N).l3a_1,s,48,0),s.k12()}var v=s;v.f12(547886695),Cn(v,"C(remember$composable):Composables.kt#9igjgp");var y,m=v,g=m.h12();if(g===zn().j12_1){var $=Ms;m.i12($),y=$}else y=g;var b=y,w=null==b||Sn(b)?b:St();v.k12();var x=w,k=Pn(s,-350149078,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(-350149078,o,-1,"page.home.HomePageUi$composable..... (HomePage.kt:122)");var i=Pn(r,1688816067,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(1688816067,o,-1,"page.home.HomePageUi$composable...... (HomePage.kt:123)");var i=r;i.f12(547886695),Cn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===zn().j12_1){var c=As;a.i12(c),s=c}else s=u;var l=s,h=null==l||Sn(l)?l:St();i.k12();var p=h,f=Pn(r,-1218869404,!0,function(t,n){return function(n,e,o){var r=e;if(wn()&&bn(-1218869404,o,-1,"page.home.HomePageUi$composable....... (HomePage.kt:128)"),t._v.p3c()){var i=r;i.f12(547886695),Cn(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===zn().j12_1){var c=Es;a.i12(c),s=c}else s=u;var l=s,h=null==l||Sn(l)?l:St();i.k12();var p=h,f=Pn(r,-1089967542,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(-1089967542,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:135)");var i=t._v.f3c().p36_1,s=t._v,a=r;a.f12(-838505973),Cn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===zn().j12_1){var p=function(t){var n=function(){return t.k3c(),kt()};return n.callableName="onToggleAutoGroupClicked",n}(s);c.i12(p),u=p}else u=h;var f=u,_=null==f||Sn(f)?f:St();return a.k12(),pr(i,_,r,0),wn()&&(kn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(f),m=v.h12();if(y||m===zn().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==$||Sn($)?$:St();_.k12(),Mn(p,b,r,48,0)}if(t._v.s3a_1.f()>1){var w=r;w.f12(547886695),Cn(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===zn().j12_1){var C=Is;k.i12(C),x=C}else x=j;var z=x,S=null==z||Sn(z)?z:St();w.k12();var q=S,O=Pn(r,1874650163,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(1874650163,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:148)");var i=t._v.s3a_1,s=t._v.m3c(),a=t._v,u=r;u.f12(-838505973),Cn(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,l=u,h=u.g12(a),p=l.h12();if(h||p===zn().j12_1){var f=function(t){return function(n){return t._v.l3c(n),kt()}}(t);l.i12(f),c=f}else c=p;var _=c,d=null==_||Sn(_)?_:St();return u.k12(),Tr(i,s,d,r,0),wn()&&(kn(),kt()),kt()}}(t)),P=r;P.f12(-838505973),Cn(P,"C(remember$composable)P(1):Composables.kt#9igjgp");var M,A=P,E=P.g12(O),I=A.h12();if(E||I===zn().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||Sn(T)?T:St();P.k12(),Mn(q,B,r,48,0)}if(qt(t._v.q3c(),No())){var L=r;L.f12(547886695),Cn(L,"C(remember$composable):Composables.kt#9igjgp");var N,F=L,R=F.h12();if(R===zn().j12_1){var H=Ds;F.i12(H),N=H}else N=R;var U=N,V=null==U||Sn(U)?U:St();L.k12();var W=V,J=Pn(r,628742226,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(628742226,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:164)");var i=t._v.f3c().o36_1,s=t._v,a=r;a.f12(-838505973),Cn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===zn().j12_1){var p=function(t){var n=function(){return t.n3c(),kt()};return n.callableName="onToggleTestNameDetectionClicked",n}(s);c.i12(p),u=p}else u=h;var f=u,_=null==f||Sn(f)?f:St();return a.k12(),ls(i,_,r,0),wn()&&(kn(),kt()),kt()}}(t)),K=r;K.f12(-838505973),Cn(K,"C(remember$composable)P(1):Composables.kt#9igjgp");var G,Y=K,X=K.g12(J),Z=Y.h12();if(X||Z===zn().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||Sn(tt)?tt:St();K.k12(),Mn(W,nt,r,48,0)}if(!t._v.q3a_1.h()){var et=r;et.f12(547886695),Cn(et,"C(remember$composable):Composables.kt#9igjgp");var ot,rt=et,it=rt.h12();if(it===zn().j12_1){var st=Ts;rt.i12(st),ot=st}else ot=it;var at=ot,ut=null==at||Sn(at)?at:St();et.k12();var ct=ut,lt=Pn(r,-617165711,!0,function(t,n){return function(n,e,o){var r=e;wn()&&bn(-617165711,o,-1,"page.home.HomePageUi$composable........ (HomePage.kt:177)");var i=t._v.q3a_1,s=t._v,a=r;a.f12(-838505973),Cn(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,c=a,l=a.g12(s),h=c.h12();if(l||h===zn().j12_1){var p=function(t){return function(n){return t._v.o3c(n),kt()}}(t);c.i12(p),u=p}else u=h;var f=u,_=null==f||Sn(f)?f:St();return a.k12(),vs(i,null,_,r,0,2),wn()&&(kn(),kt()),kt()}}(t)),ht=r;ht.f12(-838505973),Cn(ht,"C(remember$composable)P(1):Composables.kt#9igjgp");var pt,ft=ht,_t=ht.g12(lt),dt=ft.h12();if(_t||dt===zn().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||Sn(yt)?yt:St();ht.k12(),Mn(ct,mt,r,48,0)}return wn()&&(kn(),kt()),kt()}}(t)),_=r;_.f12(-838505973),Cn(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.g12(f),m=v.h12();if(y||m===zn().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==$||Sn($)?$:St();return _.k12(),Mn(p,b,r,48,0),wn()&&(kn(),kt()),kt()}}(t)),s=r;s.f12(-838505973),Cn(s,"C(remember$composable)P(1):Composables.kt#9igjgp");var a,u=s,c=s.g12(i),l=u.h12();if(c||l===zn().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||Sn(p)?p:St();return s.k12(),Vn(null,null,f,r,384,3),wn()&&(kn(),kt()),kt()}}(t)),j=s;j.f12(-838505973),Cn(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,z=j,S=j.g12(k),q=z.h12();if(S||q===zn().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||Sn(P)?P:St();j.k12(),Mn(x,M,s,48,0),Jn(null,s,0,1);var A=s;A.f12(-838505973),Cn(A,"C(remember$composable)P(1):Composables.kt#9igjgp");var E,I=A,D=A.g12(e),T=I.h12();if(D||T===zn().j12_1){var B=He(e,2);I.i12(B),E=B}else E=T;var L=E,F=null==L||Sn(L)?L:St();A.k12();for(var R=F.c();R.d();){var H=R.e(),U=s;U.f12(547886695),Cn(U,"C(remember$composable):Composables.kt#9igjgp");var V,W=U,J=W.h12();if(J===zn().j12_1){var K=Bs;W.i12(K),V=K}else V=J;var G=V,Y=null==G||Sn(G)?G:St();U.k12();var X=Y,Z=Pn(s,-2034949684,!0,Rs(H,t,o)),Q=s;Q.f12(-838505973),Cn(Q,"C(remember$composable)P(1):Composables.kt#9igjgp");var tt,nt=Q,et=Q.g12(Z),ot=nt.h12();if(et||ot===zn().j12_1){var rt=Hs(Z);nt.i12(rt),tt=rt}else tt=ot;var it=tt,st=null==it||Sn(it)?it:St();Q.k12(),Mn(X,st,s,48,0)}return wn()&&(kn(),kt()),kt()}}(t,0,j,z)),T=r;T.f12(-838505973),Cn(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,F=T.g12(D),R=L.h12();if(F||R===zn().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||Sn(U)?U:St();T.k12(),Mn(I,V,r,48,0),kt(),kt()}return wn()&&(kn(),kt()),kt()}}(a)),d=o;d.f12(-838505973),Cn(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y,m=d,g=d.g12(_),$=m.h12();if(g||$===zn().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||Sn(w)?w:St();return d.k12(),Mn(f,x,o,48,0),wn()&&(kn(),kt()),kt()})),C=i;C.f12(-838505973),Cn(C,"C(remember$composable)P(1):Composables.kt#9igjgp");var z,S=C,q=C.g12(j),O=S.h12();if(q||O===zn().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||Sn(M)?M:St();C.k12(),Mn(k,A,i,48,0),wn()&&kn()}var E=i.p1d();null===E||E.k1e(function(t,n,e){return function(o,r){return function(t,n,e,o,r){Cs(t._v,o,1|n,e)}(t,n,e,o),kt()}}(r,e,o))}function zs(t){return t.x20(["container-fluid"]),kt()}function Ss(t){return t.x20(["row"]),t.v20(qs),kt()}function qs(t){return Ne(t,Nn(40)),Fe(t,Nn(40)),Re(t,Nn(40)),kt()}function Os(t){return t.x20(["col-lg-4"]),kt()}function Ps(t){return t.x20(["col-lg-8"]),kt()}function Ms(t){return t.x20(["row"]),kt()}function As(t){return t.x20(["row"]),kt()}function Es(t){return t.x20(["col-md-2"]),kt()}function Is(t){return t.x20(["col-md-4"]),kt()}function Ds(t){return t.x20(["col-md-2"]),kt()}function Ts(t){return t.x20(["col-md-4"]),kt()}function Bs(t){return t.x20(["row"]),kt()}function Ls(t){return function(n){return n.x20([t.f37_1]),kt()}}function Ns(t,n,e){return function(o,r,i){var s,a,u=r;return wn()&&bn(1979032493,i,-1,"page.home.HomePageUi$composable...... (HomePage.kt:207)"),vr(t._v.f3c().p36_1,n.x36_1,e,(s=t._v,(a=function(t){return s.r3c(t),kt()}).callableName="onDotClicked",a),u,576),wn()&&(kn(),kt()),kt()}}function Fs(t){return function(n,e,o){return t.o1y(n,e,o)}}function Rs(t,n,e){return function(o,r,i){var s=r;wn()&&bn(-2034949684,i,-1,"page.home.HomePageUi$composable..... (HomePage.kt:202)");for(var a=t.c();a.d();){var u=a.e(),c=Ls(u),l=Pn(s,1979032493,!0,Ns(n,e,u)),h=s;h.f12(-838505973),Cn(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.g12(l),d=f.h12();if(_||d===zn().j12_1){var v=Fs(l);f.i12(v),p=v}else p=d;var y=p,m=null==y||Sn(y)?y:St();h.k12(),Mn(c,m,s,48,0)}return wn()&&(kn(),kt()),kt()}}function Hs(t){return function(n,e,o){return t.o1y(n,e,o)}}function Us(){F=this,this.v3c_1="Something went wrong!"}function Vs(){return null==F&&new Us,F}function Ws(t,n){return Be("savedBenchmarks",1,to,(function(t){return t.h3c()}),(function(t,n){return Ws(t,n)})),t.o3a_1.ky(n)}function Js(t,n){return Be("currentFocusedGroup",1,to,(function(t){return t.m3c()}),(function(t,n){return Js(t,n)})),t.r3a_1.ky(n)}function Ks(t,n){return Be("chartsBundle",1,to,(function(t){return t.t3c()}),(function(t,n){return Ks(t,n)})),t.t3a_1.ky(n)}function Gs(t,n){return Be("errorMsg",1,to,(function(t){return t.u3c()}),(function(t,n){return Gs(t,n)})),t.u3a_1.ky(n)}function Ys(t,n){return Be("isEditableTitleEnabled",1,to,(function(t){return t.s3c()}),(function(t,n){return Ys(t,n)})),t.v3a_1.ky(n)}function Xs(t,n){return Be("shouldSelectUnsaved",1,to,(function(t){return t.g3c()}),(function(t,n){return Xs(t,n)})),t.w3a_1.ky(n)}function Zs(t,n){return Be("selectedBlockNameOne",1,to,(function(t){return t.d3c()}),(function(t,n){return Zs(t,n)})),t.x3a_1.ky(n)}function Qs(t,n){return Be("selectedBlockNameTwo",1,to,(function(t){return t.e3c()}),(function(t,n){return Qs(t,n)})),t.y3a_1.ky(n)}function ta(t,n){return Be("avgOfCount",1,to,(function(t){return t.i3c()}),(function(t,n){return ta(t,n)})),t.a3b_1.ky(n)}function na(t,n){return Be("isAutoGroupButtonVisible",1,to,(function(t){return t.p3c()}),(function(t,n){return na(t,n)})),t.b3b_1.ky(n)}function ea(t,n){return Be("inputType",1,to,(function(t){return t.q3c()}),(function(t,n){return ea(t,n)})),t.d3b_1.ky(n)}function oa(t,n){return Be("unit",1,to,(function(t){return t.r28()}),(function(t,n){return oa(t,n)})),t.e3b_1.ky(n)}function ra(t,n){return Be("bestAggSummary",1,to,(function(t){return t.w3b()}),(function(t,n){return ra(t,n)})),t.f3b_1.ky(n)}function ia(t,n){return Be("worstAggSummary",1,to,(function(t){return t.c3c()}),(function(t,n){return ia(t,n)})),t.g3b_1.ky(n)}function sa(t,n){return Be("form",1,to,(function(t){return t.f3c()}),(function(t,n){return sa(t,n)})),t.h3b_1.ky(n)}function aa(t){Ws(t,t.m3a_1.w3c())}function ua(t,n){for(var e=Et(n,["\n"],!1,0,6,null),o=Mt(),r=e.c();r.d();){var i=r.e();Ue(i,"PROCESS ENDED",!1)||Ue(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.k3b_1.da(t,""),r=Lt(Ye(Tt(o)?o:St())),i=r,a=s.l3b_1.da(i,"");if(n=Lt(Ye(Tt(a)?a:St())),Zt(r=n,"System.out ",!1,2,null)){var u=Qt(r,"System.out ","",!1,4,null);r=Lt(Ye(Tt(u)?u:St())),kt()}var c=r,l=s.m3b_1.da(c,"");e=Lt(Ye(Tt(l)?l:St()));var h=Xe(r=e,"startup type is: cold",!1,2,null)?"startup type is: cold":Xe(r,"startup type is: warm",!1,2,null)?"startup type is: warm":Xe(r,"startup type is: hot",!1,2,null)?"startup type is: hot":r;return Lt(Ye(Tt(h)?h:St()))}),30,null);return rn("QuickTag: HomeViewModel:filterOutAndroidJunkLog: '"+a+"'"),a}function ca(t){Zs(t,null),Qs(t,null),t.z3a_1.s7(),Ks(t,null),t.c3b_1.s7(),ra(t,null),ia(t,null),ta(t,-1),ha(t)}function la(t,n){t.z3a_1.s7();var e=Jt(n.x36_1.u36_1.c3());t.z3a_1.x1x(e),e.f()>=2?(Zs(t,e.g(0)),Qs(t,e.g(1))):(Zs(t,null),Qs(t,null)),ha(t)}function ha(t){t.c3b_1.s7();var n,e=qt(t.q3c(),Lo()),o=t.t3c(),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=Sa().y3c(e,a,t.d3c(),t.e3c());null==u||(i.a(u),kt())}n=i}var c=n;t.c3b_1.x1x(null==c?Je():c),function(t){for(var n,e=qt(t.q3c(),Lo()),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.t3c(),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(),_=Sa().y3c(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+Ve(g.n39_1)|0:g.n39_1<0&&(d=d-Ve(g.n39_1)|0)}o.a(new _a(i,a,d,v))}}}var $,b=o.c();if(b.d()){var w=b.e();if(b.d()){var x=w.z3b_1;do{var k=b.e(),j=k.z3b_1;We(x,j)<0&&(w=k,x=j)}while(b.d());n=w}else n=w}else n=null;ra(t,n);var C=o.c();if(C.d()){var z=C.e();if(C.d()){var S=z.a3c_1;do{var q=C.e(),O=q.a3c_1;We(S,O)<0&&(z=q,S=O)}while(C.d());$=z}else $=z}else $=null;ia(t,$)}(t)}function pa(t,n){return function(){Xs(t,n);try{t.i3b_1.s7(),t.q3a_1.s7(),t.s3a_1.s7(),t.z3a_1.s7();var e=Do().m36(t.f3c(),t.m3c());if(null==e)return rn("failed to parse form"),ca(t),Gs(t,""),kt();var o,r=e,i=r.l4(),s=r.m4(),a=r.w35();ea(t,i),t.i3b_1.k1(s),t.s3a_1.x1x(a),a.i(t.m3c())||(Do(),Js(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)}pn(u,h)}var m=ln(u),g=null==(o=m.h()?null:m)?null:Ke(o);ta(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 Xo("📊",e.c36_1,n,"col-lg-12");return new Go(Ho(t,!0),Ht(s))}(t.i3b_1);Ks(t,b),la(t,b),oa(t,"")}else if(1===$){for(var w,x=t.q3a_1,k=t.i3b_1,j=Mt(),C=k.c();C.d();){var z=C.e().d36_1;null==z||(j.a(z),kt())}w=j,x.x1x(Gt(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?mn(t.q3a_1):A;if(null!=E){for(var I=t.i3b_1,D=Mt(),T=I.c();T.d();){var B=T.e();B.d36_1==E&&D.a(B)}M=D}else M=t.i3b_1;var L=Fo(M);Ks(t,L),la(t,L),oa(t,"ms")}var N=t.t3c(),F=null==N?null:N.x36_1,R=null==F?null:F.t36_1,H=null==R?null:R.f(),U=null==H?0:H,V=t.t3c(),W=null==V?null:V.x36_1,J=null==W?null:W.u36_1,K=null==J?null:J.f();na(t,!(U===(null==K?0:K))),Gs(t,""),kt()}catch(n){if(!(n instanceof Error))throw n;Ge(n);var G,Y=n.message;null==Y?(Vs(),G="Something went wrong!"):G=Y,Gs(t,G),ca(t),kt()}return kt()}}function fa(t,n){Vs(),this.m3a_1=t,this.n3a_1=n;var e=Je();this.o3a_1=be(e,null,2,null),this.p3a_1=null,this.q3a_1=Ze();Do(),this.r3a_1=be("All",null,2,null),this.s3a_1=Ze(),this.t3a_1=be(null,null,2,null),this.u3a_1=be("",null,2,null),this.v3a_1=be(!1,null,2,null),this.w3a_1=be(!1,null,2,null),this.x3a_1=be(null,null,2,null),this.y3a_1=be(null,null,2,null),this.z3a_1=Ze(),this.a3b_1=be(-1,null,2,null),this.b3b_1=be(!1,null,2,null),this.c3b_1=Ze(),this.d3b_1=be(null,null,2,null),this.e3b_1=be("",null,2,null),this.f3b_1=be(null,null,2,null),this.g3b_1=be(null,null,2,null);var o,r=this.n3a_1.z3c(),i=null==r?new Zo((null==U&&new xa,U).a3d_1,!1,!1):r;this.h3b_1=be(i,null,2,null),aa(this),window.addEventListener("keydown",(o=this,function(t){return"Escape"===t.key&&(Do(),o.l3c("All"),kt()),kt()}));var s;s=Mt(),this.i3b_1=s,this.j3b_1=null;var a;a=Xt("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.k3b_1=a;var u;u=Xt("\\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.l3b_1=u;var c;c=Xt("^(I|D|E|W|V) "),this.m3b_1=c}function _a(t,n,e,o){this.x3b_1=t,this.y3b_1=n,this.z3b_1=e,this.a3c_1=o,this.b3c_1=0}function da(){}function va(){R=this,this.n3d_1="savedBenchmarks"}function ya(){return null==R&&new va,R}function ma(){ya(),this.o3d_1=0}function ga(){}function $a(){H=this,this.r3d_1="auto_form_input",this.s3d_1="is_test_name_detection_enabled",this.t3d_1="is_auto_group_enabled"}function ba(){return null==H&&new $a,H}function wa(){ba(),this.u3d_1=0}function xa(){U=this,this.a3d_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.b3d_1=0}function ka(t){return t.b2w_1=!0,kt()}function ja(){V=this,this.p3d_1=lo(null,ka,1,null),this.q3d_1=8}function Ca(){return null==V&&new ja,V}function za(){W=this,this.x3c_1=0}function Sa(){return null==W&&new za,W}return _o.prototype=Object.create(Error.prototype),_o.prototype.constructor=_o,vo.prototype=Object.create(_o.prototype),vo.prototype.constructor=vo,$o.prototype=Object.create(Ot.prototype),$o.prototype.constructor=$o,wo.prototype=Object.create(Ot.prototype),wo.prototype.constructor=wo,sr.prototype=Object.create(An.prototype),sr.prototype.constructor=sr,_o.$metadata$=bt("InvalidDataException",void 0,void 0,void 0,void 0,Error.prototype),vo.$metadata$=bt("InvalidBenchmarkDataException",void 0,void 0,void 0,void 0,_o.prototype),yo.prototype.k35=function(){return this.g35_1},yo.prototype.l35=function(){return this.h35_1},yo.prototype.m35=function(){return this.i35_1},yo.prototype.toString=function(){return"BlockRow(title="+this.g35_1+", fullData="+this.h35_1+")"},yo.prototype.hashCode=function(){var t=Ct(this.g35_1);return J(t,31)+zt(this.h35_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.g35_1===n.g35_1&&!!qt(this.h35_1,n.h35_1)},yo.$metadata$=bt("BlockRow"),$o.prototype.l2=function(){return this.p35_1},$o.$metadata$=bt("SupportedMetrics",void 0,void 0,void 0,void 0,Ot.prototype),wo.$metadata$=bt("InputType",void 0,void 0,void 0,void 0,Ot.prototype),xo.prototype.l4=function(){return this.s35_1},xo.prototype.m4=function(){return this.t35_1},xo.prototype.w35=function(){return this.u35_1},xo.prototype.toString=function(){return"ResultContainer(inputType="+this.s35_1+", benchmarkResults="+this.t35_1+", focusGroups="+this.u35_1+")"},xo.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},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.s35_1.equals(n.s35_1)&&!!qt(this.t35_1,n.t35_1)&&!!qt(this.u35_1,n.u35_1)},xo.$metadata$=bt("ResultContainer"),Io.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,Ao,30,null),r=nn(),i=en("^\\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();!on(f)&&h.a(f)}var _=h;if(rn("parsing input..."),_.h())return null;if(function(t){var n=t.n36_1,e=mo(),o=cn(e,"|","(",")",0,null,Bo,24,null);return!Xt(o).fa(n)}(t))return ko(this,_,n);rn("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();rn("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&&qo(this,O)&&(C=O),t.o36_1&&Co(this,O)&&(null!=z&&!S.h()&&(null==C&&(C="benchmark "+m+" "+z),d.a(new To(C,z,S)),S.s7()),z=O);var P=Po(O,this);if(rn("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 vo("Two "+P+" found in block "+(m+1|0)+". Expected only one");for(var D=Oo(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=sn(R,Ht(N)),T.a(L)}A=T,S.a(new yo(P,Ut(A)))}}null==C&&(C="benchmark "+m),C=zo(this,C),!S.h()&&d.a(new To(C,z,S))}return new xo(No(),d,an("All"))},Io.$metadata$=un("Companion"),To.prototype.k35=function(){return this.c36_1},To.prototype.r36=function(){return this.d36_1},To.prototype.s36=function(){return this.e36_1},To.prototype.toString=function(){return"BenchmarkResult(title="+this.c36_1+", testName="+this.d36_1+", blockRows="+this.e36_1+")"},To.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},To.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof To))return!1;var n=t instanceof To?t:St();return this.c36_1===n.c36_1&&this.d36_1==n.d36_1&&!!qt(this.e36_1,n.e36_1)},To.$metadata$=bt("BenchmarkResult"),Ro.prototype.w36=function(){return this.t36_1},Ro.prototype.toString=function(){return"GroupMap(autoGroupMap="+this.t36_1+", wordColorMap="+this.u36_1+")"},Ro.prototype.hashCode=function(){var t=zt(this.t36_1);return J(t,31)+zt(this.u36_1)|0},Ro.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Ro))return!1;var n=t instanceof Ro?t:St();return!!qt(this.t36_1,n.t36_1)&&!!qt(this.u36_1,n.u36_1)},Ro.$metadata$=bt("GroupMap"),Wo.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=Qt(n,r,"",!1,4,null)}else e=n;var i=e,s=Vo(),a=yn(s.gl(i,0,2,null)),u=null==a?null:a.ta(),c=null==u?null:mn(u);if(null==c)return null;var l=c,h=gn(i,l,0,!1,6,null);return new Ko(i.substring(0,h),tn(l))},Wo.$metadata$=un("Companion"),Ko.prototype.toString=function(){return"TextNumberLine(text="+this.z35_1+", number="+this.a36_1+")"},Ko.prototype.hashCode=function(){var t=Ct(this.z35_1);return J(t,31)+$n(this.a36_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.z35_1===n.z35_1&&!!qt(this.a36_1,n.a36_1)},Ko.$metadata$=bt("TextNumberLine"),Go.prototype.a37=function(){return this.x36_1},Go.prototype.b37=function(){return this.y36_1},Go.prototype.toString=function(){return"ChartsBundle(groupMap="+this.x36_1+", charts="+this.y36_1+")"},Go.prototype.hashCode=function(){var t=this.x36_1.hashCode();return J(t,31)+zt(this.y36_1)|0},Go.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Go))return!1;var n=t instanceof Go?t:St();return!!this.x36_1.equals(n.x36_1)&&!!qt(this.y36_1,n.y36_1)},Go.$metadata$=bt("ChartsBundle"),Xo.prototype.h37=function(){return this.c37_1},Xo.prototype.i37=function(){return this.d37_1},Xo.prototype.j37=function(){return this.e37_1},Xo.prototype.k37=function(){return this.f37_1},Xo.prototype.toString=function(){return"Chart(emoji="+this.c37_1+", label="+this.d37_1+", dataSets="+this.e37_1+", bsClass="+this.f37_1+")"},Xo.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},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.c37_1===n.c37_1&&this.d37_1===n.d37_1&&!!qt(this.e37_1,n.e37_1)&&this.f37_1===n.f37_1},Xo.$metadata$=bt("Chart"),Zo.prototype.l37=function(){return this.n36_1},Zo.prototype.m37=function(){return this.o36_1},Zo.prototype.n37=function(){return this.p36_1},Zo.prototype.o37=function(t,n,e){return new Zo(t,n,e)},Zo.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)},Zo.prototype.toString=function(){return"FormData(data="+this.n36_1+", isTestNameDetectionEnabled="+this.o36_1+", isAutoGroupEnabled="+this.p36_1+")"},Zo.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},Zo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Zo))return!1;var n=t instanceof Zo?t:St();return this.n36_1===n.n36_1&&this.o36_1===n.o36_1&&this.p36_1===n.p36_1},Zo.$metadata$=bt("FormData"),Qo.prototype.q37=function(){return"line"},Qo.$metadata$=un("Companion"),or.prototype.u37=function(){return this.s37_1},or.prototype.v37=function(){return this.t37_1},or.$metadata$=un("ComposableSingletons$AutoFormUiKt"),sr.prototype.q1j=function(t,n){var e=this.r1j(t,n);return e.l7_1=kt(),e.m7_1=null,e.q7()},sr.prototype.r7=function(t,n){return this.q1j(null!=t&&In(t,En)?t:St(),n)},sr.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}},sr.prototype.r1j=function(t,n){var e=new sr(this.e38_1,this.f38_1,n);return e.g38_1=t,e},sr.$metadata$=bt("FormUi$composable$slambda",void 0,void 0,void 0,[1],An.prototype),hr.prototype.i38=function(){return this.h38_1},hr.$metadata$=un("ComposableSingletons$AutoGroupToggleKt"),gr.prototype.ks=function(){this.j38_1.destroy()},gr.$metadata$=bt(void 0,[te]),zr.$metadata$=un("ComposableSingletons$EditableTitleKt"),Dr.prototype.i38=function(){return this.n38_1},Dr.$metadata$=un("ComposableSingletons$FocusGroupsKt"),Gr.$metadata$=un("ComposableSingletons$HeadingKt"),Qr.$metadata$=un("Companion"),ti.prototype.u2c=function(){return this.r38_1},ti.prototype.o2m=function(){return[de(),de()]},ti.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 ve(o)}return a.u2f(n),ei(r,i,s)},ti.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)},ti.prototype.v2c=function(t,n){return this.t38(t,n instanceof oi?n:St())},ti.$metadata$=un("$serializer",[me]),oi.prototype.l2=function(){return this.u38_1},oi.prototype.toString=function(){return"SavedBenchmarkNode(key="+this.u38_1+", value="+this.v38_1+")"},oi.prototype.hashCode=function(){var t=Ct(this.u38_1);return J(t,31)+Ct(this.v38_1)|0},oi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof oi))return!1;var n=t instanceof oi?t:St();return this.u38_1===n.u38_1&&this.v38_1===n.v38_1},oi.$metadata$=bt("SavedBenchmarkNode",void 0,void 0,{0:ni}),ri.$metadata$=un("Companion"),ii.prototype.u2c=function(){return this.x38_1},ii.prototype.o2m=function(){return[new $e(ni())]},ii.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 $e(ni()),i),r|=1;else for(;e;)switch(o=s.i2g(n)){case-1:e=!1;break;case 0:i=s.f2g(n,0,new $e(ni()),i),r|=1;break;default:throw ve(o)}return s.u2f(n),ai(r,i)},ii.prototype.z38=function(t,n){var e=this.x38_1,o=t.t2f(e);o.h2h(e,0,new $e(ni()),n.a39_1),o.u2f(e)},ii.prototype.v2c=function(t,n){return this.z38(t,n instanceof ui?n:St())},ii.$metadata$=un("$serializer",[me]),ui.prototype.toString=function(){return"SavedBenchmarks(items="+this.a39_1+")"},ui.prototype.hashCode=function(){return zt(this.a39_1)},ui.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ui))return!1;var n=t instanceof ui?t:St();return!!qt(this.a39_1,n.a39_1)},ui.$metadata$=bt("SavedBenchmarks",void 0,void 0,{0:si}),_i.prototype.u37=function(){return this.d39_1},_i.prototype.v37=function(){return this.e39_1},_i.prototype.g39=function(){return this.f39_1},_i.$metadata$=un("ComposableSingletons$SavedBenchmarksDropDownKt"),Si.prototype.s39=function(){return this.h39_1},Si.prototype.h37=function(){return this.i39_1},Si.prototype.t39=function(){return this.j39_1},Si.prototype.i37=function(){return this.k39_1},Si.prototype.u39=function(){return this.l39_1},Si.prototype.v39=function(){return this.m39_1},Si.prototype.w39=function(){return this.n39_1},Si.prototype.x39=function(){return this.o39_1},Si.prototype.y39=function(){return this.p39_1},Si.prototype.z39=function(){return this.q39_1},Si.$metadata$=bt("SummaryNode"),qi.prototype.m1n=function(){return this.b3a_1},qi.prototype.toString=function(){return"Summary(title="+this.a3a_1+", nodes="+this.b3a_1+")"},qi.prototype.hashCode=function(){var t=Ct(this.a3a_1);return J(t,31)+zt(this.b3a_1)|0},qi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof qi))return!1;var n=t instanceof qi?t:St();return this.a3a_1===n.a3a_1&&!!qt(this.b3a_1,n.b3a_1)},qi.$metadata$=bt("Summary"),Pi.prototype.v1n=function(){var t=Oi(this).cloneNode();return t instanceof Element?t:St()},Pi.$metadata$=bt("ElementBuilderImplementation",[qe]),Ii.prototype.v37=function(){return this.h3a_1},Ii.$metadata$=un("ComposableSingletons$SummaryKt"),cs.prototype.i38=function(){return this.i3a_1},cs.$metadata$=un("ComposableSingletons$TestNameDetectionToggleKt"),ds.prototype.i38=function(){return this.j3a_1},ds.$metadata$=un("ComposableSingletons$TestNamesKt"),xs.$metadata$=un("ComposableSingletons$MainKt"),js.prototype.i38=function(){return this.l3a_1},js.$metadata$=un("ComposableSingletons$HomePageKt"),Us.$metadata$=un("Companion"),fa.prototype.h3c=function(){return Be("savedBenchmarks",1,to,(function(t){return t.h3c()}),(function(t,n){return Ws(t,n)})),this.o3a_1.n2()},fa.prototype.c3d=function(){return this.q3a_1},fa.prototype.m3c=function(){return Be("currentFocusedGroup",1,to,(function(t){return t.m3c()}),(function(t,n){return Js(t,n)})),this.r3a_1.n2()},fa.prototype.d3d=function(){return this.s3a_1},fa.prototype.t3c=function(){return Be("chartsBundle",1,to,(function(t){return t.t3c()}),(function(t,n){return Ks(t,n)})),this.t3a_1.n2()},fa.prototype.u3c=function(){return Be("errorMsg",1,to,(function(t){return t.u3c()}),(function(t,n){return Gs(t,n)})),this.u3a_1.n2()},fa.prototype.s3c=function(){return Be("isEditableTitleEnabled",1,to,(function(t){return t.s3c()}),(function(t,n){return Ys(t,n)})),this.v3a_1.n2()},fa.prototype.g3c=function(){return Be("shouldSelectUnsaved",1,to,(function(t){return t.g3c()}),(function(t,n){return Xs(t,n)})),this.w3a_1.n2()},fa.prototype.d3c=function(){return Be("selectedBlockNameOne",1,to,(function(t){return t.d3c()}),(function(t,n){return Zs(t,n)})),this.x3a_1.n2()},fa.prototype.e3c=function(){return Be("selectedBlockNameTwo",1,to,(function(t){return t.e3c()}),(function(t,n){return Qs(t,n)})),this.y3a_1.n2()},fa.prototype.e3d=function(){return this.z3a_1},fa.prototype.i3c=function(){return Be("avgOfCount",1,to,(function(t){return t.i3c()}),(function(t,n){return ta(t,n)})),this.a3b_1.n2()},fa.prototype.p3c=function(){return Be("isAutoGroupButtonVisible",1,to,(function(t){return t.p3c()}),(function(t,n){return na(t,n)})),this.b3b_1.n2()},fa.prototype.f3d=function(){return this.c3b_1},fa.prototype.q3c=function(){return Be("inputType",1,to,(function(t){return t.q3c()}),(function(t,n){return ea(t,n)})),this.d3b_1.n2()},fa.prototype.r28=function(){return Be("unit",1,to,(function(t){return t.r28()}),(function(t,n){return oa(t,n)})),this.e3b_1.n2()},fa.prototype.w3b=function(){return Be("bestAggSummary",1,to,(function(t){return t.w3b()}),(function(t,n){return ra(t,n)})),this.f3b_1.n2()},fa.prototype.c3c=function(){return Be("worstAggSummary",1,to,(function(t){return t.c3c()}),(function(t,n){return ia(t,n)})),this.g3b_1.n2()},fa.prototype.f3c=function(){return Be("form",1,to,(function(t){return t.f3c()}),(function(t,n){return sa(t,n)})),this.h3b_1.n2()},fa.prototype.g3d=function(t,n){var e,o=this.j3b_1;null==o||(clearTimeout(o),kt()),this.j3b_1=setTimeout((e=t,function(){return e(),kt()}),n)},fa.prototype.h3d=function(t,n){var e=ua(this,t.n36_1);sa(this,t.p37(e,!1,!1,6,null)),this.n3a_1.i3d(this.f3c()),this.g3d(pa(this,n),300)},fa.prototype.n3b=function(t,n,e,o){return 0!=(2&e)&&(n=!0),this.h3d(t,n)},fa.prototype.o3c=function(t){try{var n;if(this.p3a_1=t,null!=this.p3a_1){for(var e=this.i3b_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.i3b_1;Ks(this,Fo(n)),ha(this),Gs(this,"")}catch(t){if(!(t instanceof Error))throw t;this.c3b_1.s7(),Ge(t);var s,a=t.message;null==a?(Vs(),s="Something went wrong!"):s=a,Gs(this,s)}},fa.prototype.l3c=function(t){Js(this,t);var n=this.f3c();this.n3b(n,!1,2,null)},fa.prototype.j3c=function(){Ys(this,!0)},fa.prototype.k3c=function(){var t=this.f3c().p37(null,!1,!this.f3c().p36_1,3,null);this.n3b(t,!1,2,null)},fa.prototype.n3c=function(){var t=this.f3c(),n=!this.f3c().o36_1,e=t.p37(null,n,!1,5,null);this.n3b(e,!1,2,null)},fa.prototype.o3b=function(t){var n,e=window.prompt("Name: ");if(null==e||on(e))return kt();t:{for(var o=this.h3c().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=Qe(this.h3c());i.zf(0,new oi(e,t.n36_1));var s=i;this.m3a_1.j3d(s),Xs(this,!1),aa(this)},fa.prototype.q3b=function(t){var n=this.f3c().p37(t.v38_1,!1,!1,6,null);this.h3d(n,!1)},fa.prototype.r3b=function(t){window.confirm("Do you want to delete `"+t.u38_1+"` ?")&&(this.m3a_1.k3d(t),Xs(this,!0),aa(this))},fa.prototype.p3b=function(t){if(Xs(this,t===ci()),this.g3c()){var n=this.n3a_1.z3c(),e=null==n?this.f3c():n;this.h3d(e,!1)}},fa.prototype.u3b=function(t){Zs(this,t),ha(this)},fa.prototype.v3b=function(t){Qs(this,t),ha(this)},fa.prototype.s3b=function(){var t=this.w3b();Zs(this,null==t?null:t.x3b_1);var n=this.w3b();Qs(this,null==n?null:n.y3b_1),ha(this)},fa.prototype.t3b=function(){var t=this.c3c();Zs(this,null==t?null:t.x3b_1);var n=this.c3c();Qs(this,null==n?null:n.y3b_1),ha(this)},fa.prototype.r3c=function(t){this.s3a_1.m3(t)&&this.l3c(t)},fa.$metadata$=bt("HomeViewModel"),_a.prototype.l3d=function(){return this.z3b_1},_a.prototype.m3d=function(){return this.a3c_1},_a.prototype.toString=function(){return"AggSummary(blockOneName="+this.x3b_1+", blockTwoName="+this.y3b_1+", sumOfGreen="+this.z3b_1+", sumOfRed="+this.a3c_1+")"},_a.prototype.hashCode=function(){var t=Ct(this.x3b_1);return t=J(t,31)+Ct(this.y3b_1)|0,t=J(t,31)+this.z3b_1|0,J(t,31)+this.a3c_1|0},_a.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof _a))return!1;var n=t instanceof _a?t:St();return this.x3b_1===n.x3b_1&&this.y3b_1===n.y3b_1&&this.z3b_1===n.z3b_1&&this.a3c_1===n.a3c_1},_a.$metadata$=bt("AggSummary"),da.$metadata$=no("BenchmarkRepo"),va.$metadata$=un("Companion"),ma.prototype.w3c=function(){var t=window.localStorage;ya();var n,e=t.getItem("savedBenchmarks");if(null==e)n=new ui(Je());else{var o;rn("JSON is '"+e+"'");try{var r,i=Ca().p3d_1,s=i.o2d(),a=io(s,ro(eo(ui),oo([]),!1));r=In(a,so)?a:St(),o=i.n2d(r,e)}catch(t){var u;if(!(t instanceof ao))throw t;Ge(t),u=Je(),this.j3d(u),o=new ui(Je())}n=o}return Jt(n.a39_1)},ma.prototype.j3d=function(t){var n,e=Ca().p3d_1,o=new ui(t),r=e.o2d(),i=io(r,ro(eo(ui),oo([]),!1));n=In(i,so)?i:St();var s=e.m2d(n,o),a=window.localStorage;ya(),a.setItem("savedBenchmarks",s)},ma.prototype.k3d=function(t){var n,e=Qe(this.w3c());uo(e,(n=t,function(t){return t.u38_1===n.u38_1}));var o=e;this.j3d(o)},ma.$metadata$=bt("BenchmarkRepoImpl",[da]),ga.$metadata$=no("FormRepo"),$a.$metadata$=un("Companion"),wa.prototype.i3d=function(t){var n=window.localStorage;ba(),n.setItem("auto_form_input",t.n36_1),ba(),n.setItem("is_test_name_detection_enabled",t.o36_1.toString()),ba(),n.setItem("is_auto_group_enabled",t.p36_1.toString())},wa.prototype.z3c=function(){var t=window.localStorage;ba();var n=t.getItem("auto_form_input");if(null==n)return null;var e=n;ba();var o=co(t.getItem("is_test_name_detection_enabled"));return ba(),new Zo(e,o,co(t.getItem("is_auto_group_enabled")))},wa.$metadata$=bt("FormRepoImpl",[ga]),xa.$metadata$=un("DefaultValues"),ja.$metadata$=un("JsonUtils"),za.prototype.y3c=function(t,n,e,o){if(null==e||null==o)return rn("blank block name detected. skipping summary"),null;var r=Nt(),i=ho([e,o]);rn("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();Zt(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=po(y.d3()),_.a(v)}var m=_,g=Mt(),$=fo(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)}rn("combinedMap : "+M);var D=Mt(),T=Jt(fo(n.e37_1.d3()).c3());rn("segments: "+T);var B,L=T.f(),N=0;if(N after: '"+V+"'");var G,Y=""+(V-K).toFixed(2),X=tn(Y),Z=""+((K-V)/K*100).toFixed(2),Q=tn(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=tn(it),at=""+K.toFixed(2);G=tn(at),D.a(new Si(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===to()?this:t.f8(this,Xe)}function Lt(t){return Fl(this.l2(),t)?Bh(this,Ye)?this:Kl():null}function Nt(t,n){return n(t,this)}function Ft(t){return Fl(this.l2(),t)?to():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,Fl(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,Fl(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;Bo(n,p,a)}return i>=0&&u>i&&n.b(s),n.b(r),n}(t,ic(),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(Bh(t,pl)){var n;switch(t.f()){case 0:n=Gn();break;case 1:n=Ks(Bh(t,ol)?t.g(0):t.c().e());break;default:n=Qt(t)}return n}return Xn(sn(t))}function Qt(t){return va(t)}function tn(t){if(t.h())throw Hp("List is empty.");return t.g(0)}function nn(t,n){return Bh(t,pl)?t.i(n):function(t,n){if(Bh(t,ol))return t.j(n);for(var e=0,o=t.c();o.d();){var r=o.e();if(Xs(e),Fl(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 an(t,ic(),n,e,o,r,i,s).toString()}(t,n,e,o,r,i,s)}function on(t){return un(t,Ea(ie(t,12)))}function rn(t){if(Bh(t,pl)){var n;switch(t.f()){case 0:n=Ie();break;case 1:n=Js(Bh(t,ol)?t.g(0):t.c().e());break;default:n=un(t,Qa(t.f()))}return n}return function(t){switch(t.f()){case 0:return Ie();case 1:return Js(t.c().e());default:return t}}(un(t,Xa()))}function sn(t){return Bh(t,pl)?Qt(t):un(t,_a())}function an(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;Bo(n,l,a)}return i>=0&&u>i&&n.b(s),n.b(r),n}function un(t,n){for(var e=t.c();e.d();){var o=e.e();n.a(o)}return n}function cn(t){if(Bh(t,ol))return function(t){var n;switch(t.f()){case 0:throw Hp("List is empty.");case 1:n=t.g(0);break;default:throw Ap("List has more than one element.")}return n}(t);var n=t.c();if(!n.d())throw Hp("Collection is empty.");var e=n.e();if(n.d())throw Ap("Collection has more than one element.");return e}function ln(t){this.s_1=t}function hn(t){this.u_1=t}function pn(t){var n=Zc(t).toUpperCase();if(n.length>1){var e;if(Fl(new nl(t),new nl(329)))e=n;else{var o=Pl(n,0),r=n.substring(1).toLowerCase();e=Zc(o)+r}return e}return Zc(function(t){return function(t){var n=Xc(t);return 452<=n&&n<=460||497<=n&&n<=499?Sh(It(3,(n+1|0)/3|0)):4304<=n&&n<=4346||4349<=n&&n<=4351?t:ac(t)}(t)}(t))}function fn(t,n){return n<=Ls().x_1?xo().w_1:Oh(t,n-1|0)}function _n(t,n,e){if(n.d1(e)>0)throw Ap("Cannot coerce value to an empty range: maximum "+Nl(e)+" is less than minimum "+Nl(n)+".");return t.d1(n)<0?n:t.d1(e)>0?e:t}function dn(t,n){return Oo().e1(t,n,-1)}function vn(t,n){return t>n?n:t}function yn(t,n){return t=0))throw Ap(Nl("Requested element count "+n+" is less than zero."));return 0===n?Ae():Bh(t,qe)?t.i1(n):new Pe(t,n)}function $n(t){return Xn(function(t){return function(t,n){for(var e=t.c();e.d();){var o=e.e();n.a(o)}return n}(t,_a())}(t))}function bn(t){this.j1_1=t}function wn(t,n){if(!(n>=0))throw Ap(Nl("Requested character count "+n+" is less than zero."));return function(t,n){if(!(n>=0))throw Ap(Nl("Requested character count "+n+" is less than zero."));var e=vn(n,t.length);return t.substring(0,e)}(t,yn(t.length-n|0,0))}function xn(t,n){if(!(n>=0))throw Ap(Nl("Requested character count "+n+" is less than zero."));var e=vn(n,t.length);return t.substring(e)}function kn(){Ul(this,kn)}function jn(){}function Cn(){this.p1_1=On(),this.q1_1=null}function zn(){if(i)return Is();i=!0,n=new Sn("Ready",0),e=new Sn("NotReady",1),o=new Sn("Done",2),r=new Sn("Failed",3)}function Sn(t,n){dl.call(this,t,n)}function qn(){return zn(),n}function On(){return zn(),e}function Pn(){return zn(),r}function Mn(t){this.z1_1=t,this.y1_1=0}function An(t,n){this.c2_1=t,Mn.call(this,t),In().d2(n,this.c2_1.f()),this.y1_1=n}function En(){s=this}function In(){return null==s&&new En,s}function Dn(){In(),jn.call(this)}function Tn(t){this.k2_1=t}function Bn(t){this.m2_1=t}function Ln(t,n){return n===t?"(this Map)":vl(n)}function Nn(t,n){var e;t:{for(var o=t.v().c();o.d();){var r=o.e();if(Fl(r.l2(),n)){e=r;break t}}e=null}return e}function Fn(){a=this}function Rn(){return null==a&&new Fn,a}function Hn(t){this.r2_1=t,Kn.call(this)}function Un(t){this.x2_1=t,jn.call(this)}function Vn(){Rn(),this.t2_1=null,this.u2_1=null}function Wn(){u=this}function Jn(){return null==u&&new Wn,u}function Kn(){Jn(),jn.call(this)}function Gn(){return te()}function Yn(t){return 0===t.length?_a():va(new ne(t,!0))}function Xn(t){switch(t.f()){case 0:return Gn();case 1:return Ks(t.g(0));default:return t}}function Zn(t){return t.f()-1|0}function Qn(){c=this,this.g3_1=new Ql(-1478467534,-1720727600)}function te(){return null==c&&new Qn,c}function ne(t,n){this.k3_1=t,this.l3_1=n}function ee(){l=this}function oe(){return null==l&&new ee,l}function re(t,n){this.o3_1=t,this.p3_1=n}function ie(t,n){return Bh(t,pl)?t.f():n}function se(t){this.r3_1=t}function ae(t){this.s3_1=t}function ue(t){this.t3_1=t,this.u3_1=0}function ce(){}function le(){var t=(null==h&&new he,h);return Bh(t,ll)?t:Kl()}function he(){h=this,this.g4_1=new Ql(-888910638,1920087921)}function pe(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 fe(t,n){for(var e=n,o=0,r=e.length;o=0))throw Ap(Nl("count must be non-negative, but was "+this.p5_1+"."))}function Me(){p=this}function Ae(){return null==p&&new Me,p}function Ee(t){this.q5_1=t}function Ie(){return Te()}function De(){f=this,this.r5_1=new Ql(1993859828,793161749)}function Te(){return null==f&&new De,f}function Be(t){return function(t,n){var e;return e=ml(Array(t),null),Ne.call(n,e,0),n}(t,Object.create(Ne.prototype))}function Le(t){this.w5_1=t,Cn.call(this),this.u5_1=t.a6_1,this.v5_1=t.z5_1}function Ne(t,n){if(Dn.call(this),this.x5_1=t,!(n>=0))throw Ap(Nl("ring buffer filled size should not be negative but it is "+n));if(!(n<=this.x5_1.length))throw Ap(Nl("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 Fe(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,$p.call(this,i)}function Re(){var t=(null==_&&new He,_);return Bh(t,Ws)?t:Kl()}function He(){_=this}function Ue(t){this.w7_1=t}function Ve(){}function We(){d=this}function Je(){return null==d&&new We,d}function Ke(){}function Ge(){}function Ye(){}function Xe(t,n){var e,o=t.e8(n.l2());if(o===to())e=n;else{var r,i=o.z7(Je());if(null==i)r=new ro(o,n);else{var s=o.e8(Je());r=s===to()?new ro(n,i):new ro(new ro(s,n),i)}e=r}return e}function Ze(){}function Qe(){v=this,this.h8_1=new Ql(0,0)}function to(){return null==v&&new Qe,v}function no(t){for(var n=t,e=2;;){var o=n.i8_1,r=o instanceof ro?o:null;if(null==r)return e;n=r,e=e+1|0}}function eo(t,n){return Fl(t.z7(n.l2()),n)}function oo(t,n){return 0===Al(t)?Nl(n):t+", "+n}function ro(t,n){this.i8_1=t,this.j8_1=n}function io(t,n){this.a8_1=n;var e;e=t instanceof io?t.b8_1:t,this.b8_1=e}function so(t){this.k8_1=t}function ao(){return uo(),y}function uo(){if($)return Is();$=!0,y=new co("COROUTINE_SUSPENDED",0),m=new co("UNDECIDED",1),g=new co("RESUMED",2)}function co(t,n){dl.call(this,t,n)}function lo(){return uo(),m}function ho(){return uo(),g}function po(t,n,e){var o;if(e>0)o=t>=n?n:n-fo(n,t,e)|0;else{if(!(e<0))throw Ap("Step is zero.");o=t<=n?n:n+fo(t,n,0|-e)|0}return o}function fo(t,n,e){return _o(_o(t,e)-_o(n,e)|0,e)}function _o(t,n){var e=t%n|0;return e>=0?e:e+n|0}function vo(){var t;b=this,mo.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 bo.call(e,t,n,0,0,~t,t<<10^(n>>>4|0)),e}(t,t>>31,Object.create(bo.prototype)))}function yo(){return null==b&&new vo,b}function mo(){yo()}function go(t,n){if(!(n>t))throw Ap(Nl(function(t,n){return"Random range is empty: ["+Nl(t)+", "+Nl(n)+")."}(t,n)))}function $o(){w=this,this.r8_1=new Ql(0,0)}function bo(t,n,e,o,r,i){if(null==w&&new $o,mo.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 Ap(Nl("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 wo(){x=this,this.w_1=new ko(1,0)}function xo(){return null==x&&new wo,x}function ko(t,n){xo(),Po.call(this,t,n,1)}function jo(){k=this,this.b9_1=new Co(1,0)}function Co(t,n){null==k&&new jo,Ao.call(this,t,n,1)}function zo(t,n,e){ve.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 So(t,n,e){ye.call(this),this.n9_1=e;var o;o=Xc(n),this.o9_1=o,this.p9_1=this.n9_1>0?Gc(t,n)<=0:Gc(t,n)>=0;var r;r=this.p9_1?Xc(t):this.o9_1,this.q9_1=r}function qo(){j=this}function Oo(){return null==j&&new qo,j}function Po(t,n,e){if(Oo(),0===e)throw Ap("Step must be non-zero.");if(e===Ls().x_1)throw Ap("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.f1_1=t,this.g1_1=po(t,n,e),this.h1_1=e}function Mo(){C=this}function Ao(t,n,e){if(null==C&&new Mo,0===e)throw Ap("Step must be non-zero.");if(e===Ls().x_1)throw Ap("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.g9_1=t;var o,r=Xc(t);o=Xc(n),this.h9_1=Sh(po(r,o,e)),this.i9_1=e}function Eo(){}function Io(){}function Do(){}function To(){}function Bo(t,n,e){null!=e?t.b(e(n)):null==n||Gh(n)?t.b(n):n instanceof nl?t.r9(n.l1_1):t.b(vl(n))}function Lo(t,n,e){if(Fl(new nl(t),new nl(n)))return!0;if(!e)return!1;var o=ac(t),r=ac(n);return!!Fl(new nl(o),new nl(r))||Fl(new nl(Pl(Zc(o).toLowerCase(),0)),new nl(Pl(Zc(r).toLowerCase(),0)))}function No(t){var n;t:{var e=0,o=Al(t)-1|0;if(e<=o)do{var r=e;if(e=e+1|0,!uc(Pl(t,r))){n=r;break t}}while(e<=o);n=-1}var i=n;return-1===i?t.length:i}function Fo(t){return t}function Ro(t){return function(t,n){cc(n);var e,o,r,i=t.length;if(0===i)return null;var s=Pl(t,0);if(Gc(s,48)<0){if(1===i)return null;if(e=1,Fl(new nl(s),new nl(45)))o=!0,Zl(),r=new Ql(0,-2147483648);else{if(!Fl(new nl(s),new nl(43)))return null;o=!1,Zl(),r=new Ql(-1,2147483647).s9()}}else e=0,o=!1,Zl(),r=new Ql(-1,2147483647).s9();Zl();var a=new Ql(-1,2147483647).s9().t9(new Ql(36,0)),u=a,c=new Ql(0,0),l=e;if(l0,u=da(a?vn(o,10):10);t:do{var c;if(c=Nl(El(t,r,i)),u.a(c),r=i+n.length|0,a&&u.f()===(o-1|0))break t;i=Go(t,n,r,e)}while(-1!==i);return s=Nl(El(t,r,Al(t))),u.a(s),u}(t,r,e,o)}for(var i=function(t){return new bn(t)}(sr(t,n,0,e,o,2)),s=da(ie(i,10)),a=i.c();a.d();){var u;u=rr(t,a.e()),s.a(u)}return s}function Jo(t,n,e,o,r,i){return 0!=(2&r)&&(e=Zo(t)),0!=(4&r)&&(o=!1),function(t,n,e,o){return o||"string"!=typeof t?ar(t,n,e,0,o,!0):t.lastIndexOf(n,e)}(t,n,e,o)}function Ko(t,n,e){return"string"==typeof n?Yo(t,n,0,e,2)>=0:ur(t,n,0,Al(t),e,!1,16)>=0}function Go(t,n,e,o){return o||"string"!=typeof t?ur(t,n,e,Al(t),o,!1,16):t.indexOf(n,e)}function Yo(t,n,e,o,r,i){return 0!=(2&r)&&(e=0),0!=(4&r)&&(o=!1),Go(t,n,e,o)}function Xo(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 mn(sr(t,n,0,e,o,2),(r=t,function(t){return rr(r,t)}));var r}(t,n,e,o)}(t,["\r\n","\n","\r"],!1,0,6)}function Zo(t){return Al(t)-1|0}function Qo(t,n,e){return Nl(function(t,n,e){if(n<0)throw Ap("Desired length "+n+" is less than zero.");if(n<=Al(t))return El(t,0,Al(t));var o=oc(n),r=1,i=n-Al(t)|0;if(r<=i)do{var s=r;r=r+1|0,o.r9(e)}while(s!==i);return o.b(t),o}(Gh(t)?t:Kl(),n,e))}function tr(t,n,e,o,r){return 0!=(2&o)&&(e=!1),function(t,n,e){return Al(t)>0&&Lo(Pl(t,0),n,e)}(t,n,e)}function nr(t,n,e,o,r){return 0!=(2&o)&&(e=!1),function(t,n,e){return or(t,n,0,e,2)>=0}(t,n,e)}function er(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=Zc(function(t){var n;switch(t.length){case 0:throw Hp("Array is empty.");case 1:n=t[0];break;default:throw Ap("Array has more than one element.")}return n}(n));return r.indexOf(i,e)}var s=yn(e,0),a=Zo(t);if(s<=a)do{var u=s;s=s+1|0;var c,l=Pl(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(Ac(_,0,t,p,_.length,o)){h=_;break t}}h=null}if(null!=h)return yi(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(fr(b,0,t,g,b.length,o)){m=b;break t}}m=null}if(null!=m)return yi(g,m)}while(g!==v)}return null}(t,i,n,s,!1);return null==e?null:yi(e.j4_1,e.k4_1.length)}));var i,s}function sr(t,n,e,o,r,i,s){return 0!=(2&i)&&(e=0),0!=(4&i)&&(o=!1),0!=(8&i)&&(r=0),ir(t,n,e,o,r)}function ar(t,n,e,o,r,i){var s=i?dn(vn(e,Zo(t)),yn(o,0)):Oh(yn(e,0),vn(o,Al(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,Ac(n,0,t,l,Al(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,fr(n,0,t,_,Al(n),r))return _}while(_!==p)}return-1}function ur(t,n,e,o,r,i,s,a){return 0!=(16&s)&&(i=!1),ar(t,n,e,o,r,i)}function cr(t){if(!(t>=0))throw Ap(Nl("Limit must be non-negative, but was "+t))}function lr(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>Al(t.ma_1.na_1))t.ka_1=Oh(t.ia_1,Zo(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=Oh(t.ia_1,Zo(t.ma_1.na_1)),t.ja_1=-1;else{var r=o,i=r.l4(),s=r.m4();t.ka_1=fn(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 hr(t){this.ma_1=t,this.ha_1=-1,this.ia_1=function(t,n,e){if(n>e)throw Ap("Cannot coerce value to an empty range: maximum "+e+" is less than minimum "+n+".");return te?e:t}(t.oa_1,0,Al(t.na_1)),this.ja_1=this.ia_1,this.ka_1=null,this.la_1=0}function pr(t,n,e,o){this.na_1=t,this.oa_1=n,this.pa_1=e,this.qa_1=o}function fr(t,n,e,o,r,i){if(o<0||n<0||n>(Al(t)-r|0)||o>(Al(e)-r|0))return!1;var s=0;if(s=0)return t;throw Ap("Summing infinite durations of different signs yields an undefined result.")}if(zr(n))return n;var e,o,r;if((1&t.wa())==(1&n.wa())){var i=mr(t).v9(mr(n));e=gr(t)?(o=i,r=new Ql(387905,-1073741824),o.d1(new Ql(-387905,1073741823))<=0&&r.d1(o)<=0?Vr(o):Lr(Hr(o))):Rr(i)}else e=$r(t)?jr(0,mr(t),mr(n)):jr(0,mr(n),mr(t));return e}function jr(t,n,e){var o,r=Hr(e),i=n.v9(r),s=new Ql(1108857478,-1074);if(i.d1(new Ql(-1108857478,1073))<=0&&s.d1(i)<=0){var a=e.w9(Ur(r));o=Vr(Ur(i).v9(a))}else o=Lr(_n(i,new Ql(1,-1073741824),new Ql(-1,1073741823)));return o}function Cr(t){return t.d1(new Ql(0,0))<0}function zr(t){return!!t.equals(wr().ya_1)||t.equals(wr().za_1)}function Sr(t){return Cr(t)?xr(t):t}function qr(t,n){var e=t.bb(n);if(e.d1(new Ql(0,0))<0||0==(1&e.wa()))return t.d1(n);var o=(1&t.wa())-(1&n.wa())|0;return Cr(t)?0|-o:o}function Or(t){return zr(t)?0:function(t){return Ar(t,Vc())}(t).db(new Ql(60,0)).wa()}function Pr(t){return zr(t)?0:function(t){return Ar(t,Uc())}(t).db(new Ql(60,0)).wa()}function Mr(t){return zr(t)?0:$r(t)?Ur(mr(t).db(new Ql(1e3,0))).wa():mr(t).db(new Ql(1e9,0)).wa()}function Ar(t,n){var e,o=t;return o.equals(wr().ya_1)?(Zl(),e=new Ql(-1,2147483647)):o.equals(wr().za_1)?(Zl(),e=new Ql(0,-2147483648)):e=Nc(mr(t),function(t){return gr(t)?Rc():Hc()}(t),n),e}function Er(t){return Ar(t,Wc())}function Ir(t){var n,e=t;if(e.equals(new Ql(0,0)))n="0s";else if(e.equals(wr().ya_1))n="Infinity";else if(e.equals(wr().za_1))n="-Infinity";else{var o=Cr(t),r=ic();o&&r.r9(45);var i=Sr(t),s=function(t){return Ar(t,Jc())}(i),a=function(t){return zr(t)?0:Er(t).db(new Ql(24,0)).wa()}(i),u=Or(i),c=Pr(i),l=Mr(i),h=!s.equals(new Ql(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?Dr(r,0,c,l,9,"s",!1):l>=1e6?Dr(r,0,l/1e6|0,l%1e6|0,6,"ms",!1):l>=1e3?Dr(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),Is()),n=r.toString()}return n}function Dr(t,n,e,o,r,i,s){if(t.eb(e),0!==o){t.r9(46);var a,u=Qo(o.toString(),r,48);t:{var c=Al(u)-1|0;if(0<=c)do{var l=c;if(c=c+-1|0,!Fl(new nl(Pl(u,l)),new nl(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 Tr(t){wr(),this.cb_1=t}function Br(t,n){var e=Lc(t,n,Rc());if(pu(e))throw Ap(Nl("Duration value cannot be NaN."));var o=hu(e),r=new Ql(387905,-1073741824);return o.d1(new Ql(-387905,1073741823))<=0&&r.d1(o)<=0?Vr(o):Rr(hu(Lc(t,n,Hc())))}function Lr(t){return yr(t.kb(1).v9(new Ql(1,0)))}function Nr(t,n){var e=Fc(new Ql(-387905,1073741823),Rc(),n);return e.s9().d1(t)<=0&&t.d1(e)<=0?Vr(Fc(t,n,Rc())):Lr(_n(Nc(t,n,Hc()),new Ql(1,-1073741824),new Ql(-1,1073741823)))}function Fr(t,n){var e=t.length;if(0===e)throw Ap("The string is empty");var o=0,r=wr().xa_1,i="Infinity",s=Pl(t,o);(Fl(new nl(s),new nl(43))||Fl(new nl(s),new nl(45)))&&(o=o+1|0);var a=o>0,u=!!a&&tr(t,45,!1,2);if(e<=o)throw Ap("No components");if(Fl(new nl(Pl(t,o)),new nl(80))){if((o=o+1|0)===e)throw Pp();for(var c=!1,l=null;o=0&&y<=Zo(t)))throw Ap("Missing unit for value "+v);o=o+1|0;var m=Jr(Pl(t,y),c);if(null!=l&&l.x1(m)<=0)throw Ap("Unexpected order of duration components");l=m;var g=or(v,46,0,!1,6);m.equals(Uc())&&g>0?(r=kr(r,Nr(Wr(v.substring(0,g)),m)),r=kr(r,Br(hc(v.substring(g)),m))):r=kr(r,Nr(Wr(v),m))}}else{if(n)throw Pp();var $=e-o|0,b=i.length;if(Ac(t,o,i,0,Math.max($,b),!0))r=wr().ya_1;else{var w=null,x=!1,k=!a;if(a&&Fl(new nl(Pl(t,o)),new nl(40))&&Fl(new nl(function(t){if(0===Al(t))throw Hp("Char sequence is empty.");return Pl(t,Zo(t))}(t)),new nl(41))&&(k=!0,(o=o+1|0)==(e=e-1|0)))throw Ap("No components");for(;o0){if(r=kr(r,Nr(pc(P.substring(0,L)),B)),r=kr(r,Br(hc(P.substring(L)),B)),o0&&nr("+-",Pl(t,0),!1,2)&&(r=r+1|0),(o-r|0)>16){var i;t:{var s=Oh(r,Zo(t));if(Bh(s,pl)&&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=Pl(t,c);if(!(48<=l&&l<=57)){i=!1;break t}}while(c!==u);i=!0}}n=i}else n=!1;return n?(Fl(new nl(Pl(t,0)),new nl(45))?(Zl(),e=new Ql(0,-2147483648)):(Zl(),e=new Ql(-1,2147483647)),e):Pc(t,"+",!1,2)?pc(xn(t,1)):pc(t)}function Jr(t,n){var e;if(n){var o,r=t;if(Fl(new nl(r),new nl(72)))o=Wc();else if(Fl(new nl(r),new nl(77)))o=Vc();else{if(!Fl(new nl(r),new nl(83)))throw Ap("Invalid duration ISO time unit: "+new nl(t));o=Uc()}e=o}else{if(!Fl(new nl(t),new nl(68)))throw Ap("Invalid or unsupported duration ISO non-time unit: "+new nl(t));e=Jc()}return e}function Kr(t){var n;switch(t){case"ns":n=Rc();break;case"us":Tc(),n=it;break;case"ms":n=Hc();break;case"s":n=Uc();break;case"m":n=Vc();break;case"h":n=Wc();break;case"d":n=Jc();break;default:throw Ap("Unknown duration unit short name: "+t)}return n}function Gr(){return Qr(),S}function Yr(){}function Xr(t){this.mb_1=t}function Zr(t,n){Yr.call(this),this.nb_1=function(t,n){if("function"==typeof t)return t.$arity===n;if("object"==typeof t&&vf("$metadata$",t.constructor)){var e,o=t.constructor.$metadata$,r=null==o?null:o.suspendArity;if(null!=r){var i=!1,s=gl(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:Kl(),this.ob_1=n,this.pb_1=Bh(this,Ve)?this:Kl(),this.qb_1=Gr()}function Qr(){var t;q||(q=!0,li(),t=ao(),S=t)}function ti(){}function ni(t,n){dl.call(this,t,n)}function ei(t){this.ub_1=t,this.vb_1=ri()}function oi(){M=this}function ri(){return null==M&&new oi,M}function ii(t){return t}function si(t){return t}function ai(t){return t instanceof hi}function ui(t){return t instanceof hi?t.xb_1:null}function ci(){A=this}function li(){return null==A&&new ci,A}function hi(t){this.xb_1=t}function pi(t){li(),this.ac_1=t}function fi(t){return new hi(t)}function _i(t){if(t instanceof hi)throw t.xb_1}function di(t){qp(t,this),Ul(this,di)}function vi(t,n){this.j4_1=t,this.k4_1=n}function yi(t,n){return new vi(t,n)}function mi(t,n,e){this.dc_1=t,this.ec_1=n,this.fc_1=e}function gi(t){return t}function $i(t){return t}function bi(){E=this,this.gc_1=0,this.hc_1=-1,this.ic_1=1,this.jc_1=8}function wi(){return null==E&&new bi,E}function xi(t,n){return Dl(255&t,255&n)}function ki(t){return(255&t).toString()}function ji(t){wi(),this.kc_1=t}function Ci(t){return t}function zi(t){return t}function Si(t){return t.length}function qi(t){this.mc_1=t,this.nc_1=0}function Oi(t,n){return(Wh(new ji(n))?new ji(n):Kl())instanceof ji&&Xt(t,n)}function Pi(t,n){var e;t:{var o=Bh(n,pl)?n:Kl();if(Bh(o,pl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof ji&&Xt(t,i.kc_1))){e=!1;break t}}e=!0}}return e}function Mi(t){this.pc_1=t}function Ai(t){return t}function Ei(t){return t}function Ii(){I=this,this.sc_1=0,this.tc_1=-1,this.uc_1=4,this.vc_1=32}function Di(){return null==I&&new Ii,I}function Ti(t,n){return xs(t,n)}function Bi(t){return qh(t).xc(new Ql(-1,0)).toString()}function Li(t){Di(),this.wc_1=t}function Ni(t){return t}function Fi(t){return t}function Ri(t){return t.length}function Hi(t){this.zc_1=t,this.ad_1=0}function Ui(t,n){return(Wh(new Li(n))?new Li(n):Kl())instanceof Li&&Gt(t,n)}function Vi(t,n){var e;t:{var o=Bh(n,pl)?n:Kl();if(Bh(o,pl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof Li&&Gt(t,i.wc_1))){e=!1;break t}}e=!0}}return e}function Wi(t){this.cd_1=t}function Ji(t){return t}function Ki(t){return t}function Gi(){D=this,this.fd_1=new Ql(0,0),this.gd_1=new Ql(-1,-1),this.hd_1=8,this.id_1=64}function Yi(){return null==D&&new Gi,D}function Xi(t,n){return ks(t,n)}function Zi(t){return function(t,n){if(t.d1(new Ql(0,0))>=0)return $f(t,n);var e,o=t.de(1).t9(qh(n)).kb(1);e=o.u9(qh(n));var r=t.w9(e);return r.d1(qh(n))>=0&&(r=r.w9(qh(n)),o=o.v9(new Ql(1,0))),$f(o,n)+$f(r,n)}(t,10)}function Qi(t){Yi(),this.jd_1=t}function ts(t){return t}function ns(t){return t}function es(t){return t.length}function os(t){this.ld_1=t,this.md_1=0}function rs(t,n){return(Wh(new Qi(n))?new Qi(n):Kl())instanceof Qi&&Kt(t,n)}function is(t,n){var e;t:{var o=Bh(n,pl)?n:Kl();if(Bh(o,pl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof Qi&&Kt(t,i.jd_1))){e=!1;break t}}e=!0}}return e}function ss(t){this.od_1=t}function as(t){return t}function us(t){return t}function cs(){T=this,this.rd_1=0,this.sd_1=-1,this.td_1=2,this.ud_1=16}function ls(){return null==T&&new cs,T}function hs(t,n){return Dl(65535&t,65535&n)}function ps(t){return(65535&t).toString()}function fs(t){ls(),this.vd_1=t}function _s(t){return t}function ds(t){return t}function vs(t){return t.length}function ys(t){this.xd_1=t,this.yd_1=0}function ms(t,n){return(Wh(new fs(n))?new fs(n):Kl())instanceof fs&&Yt(t,n)}function gs(t,n){var e;t:{var o=Bh(n,pl)?n:Kl();if(Bh(o,pl)&&o.h())e=!0;else{for(var r=o.c();r.d();){var i=r.e();if(!(i instanceof fs&&Yt(t,i.vd_1))){e=!1;break t}}e=!0}}return e}function $s(t){this.ae_1=t}function bs(t){return function(t,n){cc(n);var e=t.length;if(0===e)return null;Yi();var o,r=new Ql(-1,-1),i=Pl(t,0);if(Gc(i,48)<0){if(1===e||!Fl(new nl(i),new nl(43)))return null;o=1}else o=0;var s=new Ql(477218588,119304647),a=s,u=qh(n),c=new Ql(0,0),l=o;if(l0){if(!Fl(a,s))return null;if(ks(c,a=js(r,u))>0)return null}var f=c=c.u9(u),_=c,d=qh(p).xc(new Ql(-1,0));if(ks(c=_.v9(d),f)<0)return null}while(l0){if(c!==u)return null;if(xs(h,(i=l,s=void 0,a=void 0,a=qh(-1).xc(new Ql(-1,0)),s=qh(i).xc(new Ql(-1,0)),c=a.t9(s).wa()))>0)return null}var d=h=It(h,l);if(xs(h=h+_|0,d)<0)return null}while(p=0)return e.t9(o);var r=e.de(1).t9(o).kb(1),i=ks(e.w9(r.u9(o)),o)>=0?1:0;return r.v9(qh(i))}function Cs(){}function zs(){}function Ss(){}function qs(){}function Os(){}function Ps(){}function Ms(){}function As(){}function Es(){B=this}function Is(){return null==B&&new Es,B}function Ds(){L=this,this.he_1=-128,this.ie_1=127,this.je_1=1,this.ke_1=8}function Ts(){N=this,this.pe_1=-32768,this.qe_1=32767,this.re_1=2,this.se_1=16}function Bs(){F=this,this.x_1=-2147483648,this.y_1=2147483647,this.z_1=4,this.a1_1=32}function Ls(){return null==F&&new Bs,F}function Ns(){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 Fs(){return null==R&&new Ns,R}function Rs(){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 Hs(){return null==H&&new Rs,H}function Us(){U=this}function Vs(){V=this}function Ws(){}function Js(t){return Jt(n=[t],Ea(n.length));var n}function Ks(t){return 0===(n=[t]).length?_a():va(new ne(n,!0));var n}function Gs(t){return t}function Ys(t){return t<0&&function(){throw of("Count overflow has happened.")}(),t}function Xs(t){return t<0&&function(){throw of("Index overflow has happened.")}(),t}function Zs(t){return void 0!==t.toArray?t.toArray():ta(t)}function Qs(t,n){if(t.f()<=1)return Is();var e=Zs(t);!function(t,n){if($a()){var e=(o=n,function(t,n){return o.compare(t,n)});t.sort(e)}else ba(t,0,Wt(t),n);var o}(e,n);var o=0,r=e.length;if(o=u)return!1}while(r=0))throw Ap(Nl("Negative initial capacity: "+t));if(!(n>=0))throw Ap(Nl("Non-positive load factor: "+n));return e}function Pa(t){return function(t,n){return Oa(t,0,n),n}(t,Object.create(Ma.prototype))}function Ma(){this.fh_1=null}function Aa(t,n,e){return fa.call(e),Da.call(e),e.ih_1=function(t,n){return Oa(t,n,Object.create(Ma.prototype))}(t,n),e}function Ea(t){return function(t,n){return Aa(t,0,n),n}(t,Object.create(Da.prototype))}function Ia(t,n){return fa.call(n),Da.call(n),n.ih_1=t,n}function Da(){}function Ta(t,n){var e=La(t,t.rh_1.wg(n));if(null==e)return null;var o=e;if(null!=o&&Vh(o))return Ba(o,t,n);var r=o;return t.rh_1.vg(r.l2(),n)?r:null}function Ba(t,n,e){var o;t:{for(var r=t,i=0,s=r.length;inew Ql(-1,2147483647).pi()?(Zl(),n=new Ql(-1,2147483647)):(Zl(),t1?t:Pl(n,0)}function uc(t){return function(t){var n;return 9<=(n=Xc(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 cc(t){if(!(2<=t&&t<=36))throw Ap("radix "+t+" was not in valid range 2..36");return t}function lc(t,n){var e,o,r,i=Gc(t,48)>=0&&Gc(t,57)<=0?Yc(t,48):Gc(t,65)>=0&&Gc(t,90)<=0?Yc(t,65)+10|0:Gc(t,97)>=0&&Gc(t,122)<=0?Yc(t,97)+10|0:Gc(t,128)<0?-1:Gc(t,65313)>=0&&Gc(t,65338)<=0?Yc(t,65313)+10|0:Gc(t,65345)>=0&&Gc(t,65370)<=0?Yc(t,65345)+10|0:(e=Xc(t),o=pp(_p().in_1,e),(r=e-_p().in_1[o]|0)<10?r:-1);return i>=n?-1:i}function hc(t){var n=+t;return(pu(n)&&!_c(t)||0===n&&Mc(t))&&Uo(t),n}function pc(t){var n,e=Ro(t);return null==e?Uo(t):n=e,n}function fc(t){var n,e=Ho(t);return null==e?Uo(t):n=e,n}function _c(t){switch(t.toLowerCase()){case"nan":case"+nan":case"-nan":return!0;default:return!1}}function dc(){nt=this,this.yk_1=new RegExp("[\\\\^$*+?.()|[\\]{}]","g"),this.zk_1=new RegExp("[\\\\$]","g"),this.al_1=new RegExp("\\$","g")}function vc(){return null==nt&&new dc,nt}function yc(t){return t.e()}function mc(t){return function(n){return function(t,n){for(var e=0,o=ic();e=f.f())throw Qp("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 gc(t,n){vc(),this.x9_1=t,this.y9_1=rn(n),this.z9_1=new RegExp(t,en(n,"","gu",null,0,null,Cc,28)),this.aa_1=null,this.ba_1=null}function $c(t,n,e){dl.call(this,t,n),this.kl_1=e}function bc(t,n,e,o){t.lastIndex=e;var r=t.exec(n);return null==r?null:new qc(Oh(r.index,t.lastIndex-1|0),r,o,n)}function wc(t){this.ll_1=t}function xc(t,n){for(var e=n;e0&&Fl(new nl(Pl(n,Zo(n)-(i-1|0)|0)),new nl(32));)i=i-1|0;return wn(n,i)+"... and "+(o-1|0)+" more common stack frames skipped"}(n,s,u),Al(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?Gn():e}(t);if(!$.h())for(var b=e+" ",w=$.c();w.d();)Ec(w.e(),n,b,"Suppressed: ");return!0}function Dc(){var t;this.xl_1=ic(),t=[],this.yl_1=t,this.zl_1="",this.am_1=0}function Tc(){if(ht)return Is();ht=!0,rt=new Bc("NANOSECONDS",0,1),it=new Bc("MICROSECONDS",1,1e3),st=new Bc("MILLISECONDS",2,1e6),at=new Bc("SECONDS",3,1e9),ut=new Bc("MINUTES",4,6e10),ct=new Bc("HOURS",5,36e11),lt=new Bc("DAYS",6,864e11)}function Bc(t,n,e){dl.call(this,t,n),this.em_1=e}function Lc(t,n,e){var o=Dl(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 Nc(t,n,e){var o,r=Dl(n.em_1,e.em_1);if(r>0){var i,s=zh(n.em_1/e.em_1),a=t.u9(s);a.t9(s).equals(t)?i=a:t.d1(new Ql(0,0))>0?(Zl(),i=new Ql(-1,2147483647)):(Zl(),i=new Ql(0,-2147483648)),o=i}else o=r<0?t.t9(zh(e.em_1/n.em_1)):t;return o}function Fc(t,n,e){var o=Dl(n.em_1,e.em_1);return o>0?t.u9(zh(n.em_1/e.em_1)):o<0?t.t9(zh(e.em_1/n.em_1)):t}function Rc(){return Tc(),rt}function Hc(){return Tc(),st}function Uc(){return Tc(),at}function Vc(){return Tc(),ut}function Wc(){return Tc(),ct}function Jc(){return Tc(),lt}function Kc(t){return t}function Gc(t,n){return t-n|0}function Yc(t,n){return t-n|0}function Xc(t){return t}function Zc(t){return String.fromCharCode(t)}function Qc(){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 tl(){return null==pt&&new Qc,pt}function nl(t){tl(),this.l1_1=t}function el(){}function ol(){}function rl(){}function il(){}function sl(){}function al(){}function ul(){}function cl(){}function ll(){}function hl(){}function pl(){}function fl(){}function _l(){ft=this}function dl(t,n){null==ft&&new _l,this.s1_1=t,this.t1_1=n}function vl(t){var n=null==t?null:Nl(t);return null==n?"null":n}function yl(t,n){var e=null==t?null:Nl(t),o=null==e?"null":e,r=null==n?null:Nl(n);return o+(null==r?"null":r)}function ml(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 gl(t){return new xl(t)}function $l(t){var n=ml(Array(t),!1);return n.$type$="BooleanArray",n}function bl(t){var n=new Uint16Array(t);return n.$type$="CharArray",n}function wl(t){var n=ml(Array(t),new Ql(0,0));return n.$type$="LongArray",n}function xl(t){this.rm_1=t,this.qm_1=0}function kl(t){this.tm_1=t,ve.call(this),this.sm_1=0}function jl(){return Ol(),_t}function Cl(){return Ol(),dt}function zl(){return Ol(),vt}function Sl(){return Ol(),yt}function ql(t){return Ol(),yf(t,0)===t?jh(t):(Cl()[0]=t,It(zl()[(Ol(),mt)],31)+zl()[Sl()]|0)}function Ol(){if(gt);else{gt=!0,_t=new ArrayBuffer(8);var t=new Float64Array(jl());dt=t,new Float32Array(jl());var n,e=new Int32Array(jl());vt=e,Cl()[0]=-1,n=0!==zl()[0]?1:0,yt=n,mt=1-Sl()|0}}function Pl(t,n){var e;if(Ml(t)){var o,r=t.charCodeAt(n);if(tl(),r<0?o=!0:(tl(),o=r>65535),o)throw Ap("Invalid Char code: "+r);e=Sh(r)}else e=t.fe(n);return e}function Ml(t){return"string"==typeof t}function Al(t){return Ml(t)?t.length:t.ee()}function El(t,n,e){return Ml(t)?t.substring(n,e):t.ge(n,e)}function Il(t){return Nl(t)}function Dl(t,n){var e;switch(typeof t){case"number":e="number"==typeof n?Tl(t,n):n instanceof Ql?Tl(t,n.pi()):Bl(t,n);break;case"string":case"boolean":e=Bl(t,n);break;default:e=function(t,n){return t.jb(n)}(t,n)}return e}function Tl(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 Bl(t,n){return tn?1:0}function Ll(t){if(!vf("kotlinHashCodeValue$",t)){var n=yf(4294967296*Math.random(),0),e=new Object;e.value=n,e.enumerable=!1,Object.defineProperty(t,"kotlinHashCodeValue$",e)}return t.kotlinHashCodeValue$}function Nl(t){return null==t?"null":Dh(t)?"[...]":t.toString()}function Fl(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 Rl(t){if(null==t)return 0;var n;switch(typeof t){case"object":n="function"==typeof t.hashCode?t.hashCode():Ll(t);break;case"function":n=Ll(t);break;case"number":n=ql(t);break;case"boolean":n=t?1:0;break;default:n=Hl(String(t))}return n}function Hl(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 Ul(t,n){null!=Error.captureStackTrace?Error.captureStackTrace(t,n):t.stack=(new Error).stack}function Vl(t,n,e){Error.call(t),function(t,n,e){if(!Wl(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}Wl(t,"cause")||(t.cause=e),t.name=Object.getPrototypeOf(t).constructor.name}(t,n,e)}function Wl(t,n){return Object.getPrototypeOf(t).hasOwnProperty(n)}function Jl(t){var n;return null==t?function(){throw uf()}():n=t,n}function Kl(){throw pf()}function Gl(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 Ql((h&=65535)<<16|(p&=65535),(c&=65535)<<16|(l&=65535))}function ah(t,n){return xh(),sh(t,n.s9())}function uh(t,n){if(xh(),vh(t))return th();if(vh(n))return th();if(ph(t,oh()))return yh(n)?oh():th();if(ph(n,oh()))return yh(t)?oh():th();if(dh(t))return dh(n)?uh(mh(t),mh(n)):mh(uh(mh(t),n));if(dh(n))return mh(uh(t,mh(n)));if(gh(t,rh())&&gh(n,rh()))return $h(hh(t)*hh(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 Ql(p<<16|f,(l&=65535)<<16|h)}function ch(t,n){xh();var e=63&n;return 0===e?t:e<32?new Ql(t.b1_1<>>(32-e|0)|0):new Ql(0,t.b1_1<<(e-32|0))}function lh(t,n){xh();var e=63&n;return 0===e?t:e<32?new Ql(t.b1_1>>>e|0|t.c1_1<<(32-e|0),t.c1_1>>e):new Ql(t.c1_1>>(e-32|0),t.c1_1>=0?0:-1)}function hh(t){return xh(),4294967296*t.c1_1+function(t){return xh(),t.b1_1>=0?t.b1_1:4294967296+t.b1_1}(t)}function ph(t,n){return xh(),t.c1_1===n.c1_1&&t.b1_1===n.b1_1}function fh(t,n){if(xh(),n<2||36=0x8000000000000000)return xh(),kt;if(t<0)return mh($h(-t));var n=4294967296;return new Ql(yf(t%n,0),yf(t/n,0))}function bh(t,n){return xh(),ih(t,n)>0}function wh(t,n){return xh(),ih(t,n)>=0}function xh(){zt||(zt=!0,bt=_h(0),wt=_h(1),xt=_h(-1),kt=new Ql(-1,2147483647),jt=new Ql(0,-2147483648),Ct=_h(16777216))}function kh(t){return t<<24>>24}function jh(t){return t instanceof Ql?t.wa():function(t){return t>2147483647?2147483647:t<-2147483648?-2147483648:yf(t,0)}(t)}function Ch(t){return t<<16>>16}function zh(t){return t instanceof Ql?t:$h(t)}function Sh(t){return 65535&Ch(jh(t))}function qh(t){return _h(t)}function Oh(t,n){return new ko(t,n)}function Ph(){Ah();var t=void 0;return Eh(t,t,t,t,t,t)}function Mh(t,n,e,o,r){return Ah(),o.get=o,o.set=r,o.callableName=t,i=o,s=function(t,n,e){Ah();var o=(Ah(),St)[t][null==n?0:1];return 0===o.interfaces.length&&(o.interfaces.push(e),null==o.interfacesCache?o.interfacesCache={isComplete:!1,implementInterfaceMemo:{}}:Jl(o.interfacesCache).isComplete=!1,Rh(Jl(o.interfacesCache),e)),o}(n,r,e),Ah(),i.$metadata$=s,i.constructor=i,i;var i,s}function Ah(){if(qt);else{qt=!0;var t,n=[Ph(),Ph()],e=[Ph(),Ph()];t=[Ph(),Ph()],St=[n,e,t]}}function Eh(t,n,e,o,r,i){return Ih("class",t,n,e,o,r,i)}function Ih(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 Dh(t){return!!Th(t)||Tt(t)}function Th(t){return Array.isArray(t)}function Bh(t,n){var e=t.constructor;return null!=e&&Lh(e,n)}function Lh(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||Nh(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=Fh(t),c=null==u?null:u.constructor;if(null==c)return!1;o=Lh(c,n)}return o}function Nh(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 Ap(Nl("Invalid new array size: "+n+"."));return Yl(t,n,null)}function cp(t,n,e){return In().f2(n,e,t.length),t.slice(n,e)}function lp(t){return new ga(t)}function hp(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},An.prototype.q=function(){return this.y1_1},An.prototype.r=function(){if(!this.p())throw Rp();var t=this;return t.y1_1=t.y1_1-1|0,this.c2_1.g(t.y1_1)},An.$metadata$=Eh("ListIteratorImpl",[Ps],void 0,void 0,void 0,Mn.prototype),En.prototype.e2=function(t,n){if(t<0||t>=n)throw Qp("index: "+t+", size: "+n)},En.prototype.d2=function(t,n){if(t<0||t>n)throw Qp("index: "+t+", size: "+n)},En.prototype.f2=function(t,n,e){if(t<0||n>e)throw Qp("fromIndex: "+t+", toIndex: "+n+", size: "+e);if(t>n)throw Ap("fromIndex: "+t+" > toIndex: "+n)},En.prototype.g2=function(t,n,e){if(t<0||n>e)throw Qp("startIndex: "+t+", endIndex: "+n+", size: "+e);if(t>n)throw Ap("startIndex: "+t+" > endIndex: "+n)},En.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:Rl(o);n=r+(null==i?0:i)|0}return n},En.prototype.i2=function(t,n){if(t.f()!==n.f())return!1;for(var e=n.c(),o=t.c();o.d();)if(!Fl(o.e(),e.e()))return!1;return!0},En.$metadata$=ip("Companion"),Dn.prototype.c=function(){return new Mn(this)},Dn.prototype.j=function(t){var n;t:{for(var e=0,o=this.c();o.d();){if(Fl(o.e(),t)){n=e;break t}e=e+1|0}n=-1}return n},Dn.prototype.j2=function(t){var n;t:{for(var e=this.o(this.f());e.p();)if(Fl(e.r(),t)){n=e.q();break t}n=-1}return n},Dn.prototype.o=function(t){return new An(this,t)},Dn.prototype.equals=function(t){return t===this||!(null==t||!Bh(t,ol))&&In().i2(this,t)},Dn.prototype.hashCode=function(){return In().h2(this)},Dn.$metadata$=Eh("AbstractList",[ol],void 0,void 0,void 0,jn.prototype),Tn.prototype.d=function(){return this.k2_1.d()},Tn.prototype.e=function(){return this.k2_1.e().l2()},Tn.$metadata$=Eh(void 0,[qs]),Bn.prototype.d=function(){return this.m2_1.d()},Bn.prototype.e=function(){return this.m2_1.e().n2()},Bn.$metadata$=Eh(void 0,[qs]),Fn.prototype.o2=function(t){var n=t.l2(),e=null==n?null:Rl(n),o=null==e?0:e,r=t.n2(),i=null==r?null:Rl(r);return o^(null==i?0:i)},Fn.prototype.p2=function(t){return vl(t.l2())+"="+vl(t.n2())},Fn.prototype.q2=function(t,n){return!(null==n||!Bh(n,cl))&&!!Fl(t.l2(),n.l2())&&Fl(t.n2(),n.n2())},Fn.$metadata$=ip("Companion"),Hn.prototype.s2=function(t){return this.r2_1.v2(t)},Hn.prototype.i=function(t){return!(null!=t&&!Wh(t))&&this.s2(null==t||Wh(t)?t:Kl())},Hn.prototype.c=function(){return new Tn(this.r2_1.v().c())},Hn.prototype.f=function(){return this.r2_1.f()},Hn.$metadata$=Eh(void 0,void 0,void 0,void 0,void 0,Kn.prototype),Un.prototype.y2=function(t){return this.x2_1.z2(t)},Un.prototype.i=function(t){return!(null!=t&&!Wh(t))&&this.y2(null==t||Wh(t)?t:Kl())},Un.prototype.c=function(){return new Bn(this.x2_1.v().c())},Un.prototype.f=function(){return this.x2_1.f()},Un.$metadata$=Eh(void 0,void 0,void 0,void 0,void 0,jn.prototype),Vn.prototype.v2=function(t){return!(null==Nn(this,t))},Vn.prototype.z2=function(t){var n;t:{var e=this.v();if(Bh(e,pl)&&e.h())n=!1;else{for(var o=e.c();o.d();)if(Fl(o.e().n2(),t)){n=!0;break t}n=!1}}return n},Vn.prototype.a3=function(t){if(null==t||!Bh(t,cl))return!1;var n=t.l2(),e=t.n2(),o=(Bh(this,ll)?this:Kl()).b3(n);return!(!Fl(e,o)||null==o&&!(Bh(this,ll)?this:Kl()).v2(n))},Vn.prototype.equals=function(t){if(t===this)return!0;if(null==t||!Bh(t,ll))return!1;if(this.f()!==t.f())return!1;var n;t:{var e=t.v();if(Bh(e,pl)&&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},Vn.prototype.b3=function(t){var n=Nn(this,t);return null==n?null:n.n2()},Vn.prototype.hashCode=function(){return Rl(this.v())},Vn.prototype.h=function(){return 0===this.f()},Vn.prototype.f=function(){return this.v().f()},Vn.prototype.c3=function(){return null==this.t2_1&&(this.t2_1=new Hn(this)),Jl(this.t2_1)},Vn.prototype.toString=function(){return en(this.v(),", ","{","}",0,null,(t=this,function(n){return t.w2(n)}),24);var t},Vn.prototype.w2=function(t){return Ln(this,t.l2())+"="+Ln(this,t.n2())},Vn.prototype.d3=function(){return null==this.u2_1&&(this.u2_1=new Un(this)),Jl(this.u2_1)},Vn.$metadata$=Eh("AbstractMap",[ll]),Wn.prototype.e3=function(t){for(var n=0,e=t.c();e.d();){var o=e.e(),r=n,i=null==o?null:Rl(o);n=r+(null==i?0:i)|0}return n},Wn.prototype.f3=function(t,n){return t.f()===n.f()&&t.o1(n)},Wn.$metadata$=ip("Companion"),Kn.prototype.equals=function(t){return t===this||!(null==t||!Bh(t,sl))&&Jn().f3(this,t)},Kn.prototype.hashCode=function(){return Jn().e3(this)},Kn.$metadata$=Eh("AbstractSet",[sl],void 0,void 0,void 0,jn.prototype),Qn.prototype.equals=function(t){return!(null==t||!Bh(t,ol))&&t.h()},Qn.prototype.hashCode=function(){return 1},Qn.prototype.toString=function(){return"[]"},Qn.prototype.f=function(){return 0},Qn.prototype.h=function(){return!0},Qn.prototype.h3=function(t){return!1},Qn.prototype.i=function(t){return!1},Qn.prototype.i3=function(t){return t.h()},Qn.prototype.o1=function(t){return this.i3(t)},Qn.prototype.g=function(t){throw Qp("Empty list doesn't contain element at index "+t+".")},Qn.prototype.j3=function(t){return-1},Qn.prototype.j=function(t){return-1},Qn.prototype.c=function(){return oe()},Qn.prototype.o=function(t){if(0!==t)throw Qp("Index: "+t);return oe()},Qn.$metadata$=ip("EmptyList",[ol,lu,nu]),ne.prototype.f=function(){return this.k3_1.length},ne.prototype.h=function(){return 0===this.k3_1.length},ne.prototype.m3=function(t){return function(t,n){return Rt(t,n)>=0}(this.k3_1,t)},ne.prototype.i=function(t){return!(null!=t&&!Wh(t))&&this.m3(null==t||Wh(t)?t:Kl())},ne.prototype.n3=function(t){var n;t:if(Bh(t,pl)&&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},ne.prototype.o1=function(t){return this.n3(t)},ne.prototype.c=function(){return gl(this.k3_1)},ne.$metadata$=Eh("ArrayAsCollection",[pl]),ee.prototype.d=function(){return!1},ee.prototype.p=function(){return!1},ee.prototype.q=function(){return 0},ee.prototype.e=function(){throw Rp()},ee.prototype.r=function(){throw Rp()},ee.$metadata$=ip("EmptyIterator",[Ps]),re.prototype.q3=function(){return this.o3_1},re.prototype.n2=function(){return this.p3_1},re.prototype.toString=function(){return"IndexedValue(index="+this.o3_1+", value="+this.p3_1+")"},re.prototype.hashCode=function(){var t=this.o3_1;return It(t,31)+(null==this.p3_1?0:Rl(this.p3_1))|0},re.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof re))return!1;var n=t instanceof re?t:Kl();return this.o3_1===n.o3_1&&!!Fl(this.p3_1,n.p3_1)},re.$metadata$=Eh("IndexedValue"),se.prototype.c=function(){return new ue(this.r3_1())},se.$metadata$=Eh("IndexingIterable",[el]),ae.prototype.c=function(){return this.s3_1()},ae.$metadata$=Eh(void 0,[el]),ue.prototype.d=function(){return this.t3_1.d()},ue.prototype.e=function(){var t=this.u3_1;return this.u3_1=t+1|0,new re(Xs(t),this.t3_1.e())},ue.$metadata$=Eh("IndexingIterator",[qs]),ce.$metadata$=rp("MapWithDefault",[ll]),he.prototype.equals=function(t){return!(null==t||!Bh(t,ll))&&t.h()},he.prototype.hashCode=function(){return 0},he.prototype.toString=function(){return"{}"},he.prototype.f=function(){return 0},he.prototype.h=function(){return!0},he.prototype.h4=function(t){return!1},he.prototype.v2=function(t){return!(null!=t&&!Wh(t))&&this.h4(null==t||Wh(t)?t:Kl())},he.prototype.i4=function(t){return null},he.prototype.b3=function(t){return null==t||Wh(t)?this.i4(null==t||Wh(t)?t:Kl()):null},he.prototype.v=function(){return Te()},he.prototype.c3=function(){return Te()},he.prototype.d3=function(){return te()},he.$metadata$=ip("EmptyMap",[ll,lu]),ve.prototype.e=function(){return this.q4()},ve.$metadata$=Eh("IntIterator",[qs]),ye.prototype.r4=function(){return this.s4()},ye.prototype.e=function(){return new nl(this.r4())},ye.$metadata$=Eh("CharIterator",[qs]),me.$metadata$=rp("Sequence"),ge.$metadata$=Eh("SequenceScope"),we.prototype.y4=function(t){this.x4_1=t},we.prototype.d=function(){for(;;){switch(this.u4_1){case 0:break;case 1:if(Jl(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 be(this)}this.u4_1=5;var t,n=Jl(this.x4_1);this.x4_1=null,li(),t=Is(),n.z4(t),Is()}},we.prototype.e=function(){switch(this.u4_1){case 0:case 1:return function(t){if(t.d())return t.e();throw Rp()}(this);case 2:return this.u4_1=1,Jl(this.w4_1).e();case 3:this.u4_1=0;var t=this.v4_1,n=null==t||Wh(t)?t:Kl();return this.v4_1=null,n;default:throw be(this)}},we.prototype.t4=function(t,n){this.v4_1=t,this.u4_1=3;var e=n;return this.x4_1=e,ao()},we.prototype.a5=function(t){_i(t);null==t||Wh(t)||Kl(),this.u4_1=4},we.prototype.z4=function(t){return this.a5(t)},we.prototype.b5=function(){return to()},we.$metadata$=Eh("SequenceBuilderIterator",[qs,Ve],void 0,void 0,void 0,ge.prototype),xe.prototype.c=function(){return $e(this.c5_1)},xe.$metadata$=Eh(void 0,[me]),je.prototype.e=function(){if(this.e5_1<0&&ke(this),0===this.e5_1)throw Rp();var t=this.d5_1,n=Wh(t)?t:Kl();return this.e5_1=-1,n},je.prototype.d=function(){return this.e5_1<0&&ke(this),1===this.e5_1},je.$metadata$=Eh(void 0,[qs]),Ce.prototype.c=function(){return new je(this)},Ce.$metadata$=Eh("GeneratorSequence",[me]),ze.prototype.e=function(){return this.j5_1.l5_1(this.i5_1.e())},ze.prototype.d=function(){return this.i5_1.d()},ze.$metadata$=Eh(void 0,[qs]),Se.prototype.c=function(){return new ze(this)},Se.$metadata$=Eh("TransformingSequence",[me]),qe.$metadata$=rp("DropTakeSequence",[me]),Oe.prototype.e=function(){if(0===this.m5_1)throw Rp();var t=this.m5_1;return this.m5_1=t-1|0,this.n5_1.e()},Oe.prototype.d=function(){return this.m5_1>0&&this.n5_1.d()},Oe.$metadata$=Eh(void 0,[qs]),Pe.prototype.i1=function(t){return t>=this.p5_1?this:new Pe(this.o5_1,t)},Pe.prototype.c=function(){return new Oe(this)},Pe.$metadata$=Eh("TakeSequence",[me,qe]),Me.prototype.c=function(){return oe()},Me.prototype.i1=function(t){return Ae()},Me.$metadata$=ip("EmptySequence",[me,qe]),Ee.prototype.c=function(){return this.q5_1()},Ee.$metadata$=Eh(void 0,[me]),De.prototype.equals=function(t){return!(null==t||!Bh(t,sl))&&t.h()},De.prototype.hashCode=function(){return 0},De.prototype.toString=function(){return"[]"},De.prototype.f=function(){return 0},De.prototype.h=function(){return!0},De.prototype.h3=function(t){return!1},De.prototype.i=function(t){return!1},De.prototype.i3=function(t){return t.h()},De.prototype.o1=function(t){return this.i3(t)},De.prototype.c=function(){return oe()},De.$metadata$=ip("EmptySet",[sl,lu]),Le.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||Wh(t)?t:Kl());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}},Le.$metadata$=Eh(void 0,void 0,void 0,void 0,void 0,Cn.prototype),Ne.prototype.f=function(){return this.a6_1},Ne.prototype.g=function(t){var n;In().e2(t,this.a6_1),n=(this.z5_1+t|0)%this.y5_1|0;var e=this.x5_1[n];return null==e||Wh(e)?e:Kl()},Ne.prototype.b6=function(){return this.a6_1===this.y5_1},Ne.prototype.c=function(){return new Le(this)},Ne.prototype.c6=function(t){for(var n=t.lengththis.a6_1&&(n[this.a6_1]=null),Vh(n)?n:Kl()},Ne.prototype.d6=function(){var t,n=this.a6_1;return t=ml(Array(n),null),this.c6(t)},Ne.prototype.toArray=function(){return this.d6()},Ne.prototype.e6=function(t){var n,e,o=vn(1+(this.y5_1+(this.y5_1>>1)|0)|0,t);return 0===this.z5_1?n=up(this.x5_1,o):(e=ml(Array(o),null),n=this.c6(e)),new Ne(n,this.a6_1)},Ne.prototype.f6=function(t){if(this.b6())throw Lp("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},Ne.prototype.g6=function(t){if(!(t>=0))throw Ap(Nl("n shouldn't be negative but it is "+t));if(!(t<=this.a6_1))throw Ap(Nl("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?(ap(this.x5_1,null,n,this.y5_1),ap(this.x5_1,null,0,e)):ap(this.x5_1,null,n,e),this.z5_1=e;this.a6_1=this.a6_1-t|0}},Ne.$metadata$=Eh("RingBuffer",[nu],void 0,void 0,void 0,Dn.prototype),Fe.prototype.g7=function(t,n){var e=this.h7(t,n);return e.l7_1=Is(),e.m7_1=null,e.q7()},Fe.prototype.r7=function(t,n){return this.g7(t instanceof ge?t:Kl(),n)},Fe.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=vn(this.p6_1,1024),this.w6_1=this.q6_1-this.p6_1|0,this.w6_1>=0){this.x6_1=da(this.v6_1),this.y6_1=0,this.z6_1=this.r6_1,this.j7_1=12;continue t}this.a7_1=Be(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:va(this.a7_1),this))===ao())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))===ao())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))===ao())return t;continue t}this.j7_1=15;continue t;case 14:this.s6_1?this.x6_1.s7():this.x6_1=da(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))===ao())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 Is();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}},Fe.prototype.h7=function(t,n){var e=new Fe(this.p6_1,this.q6_1,this.r6_1,this.s6_1,this.t6_1,n);return e.u6_1=t,e},Fe.$metadata$=Eh("windowedIterator$slambda",void 0,void 0,void 0,[1],$p.prototype),He.prototype.v7=function(t,n){return Dl(t,n)},He.prototype.compare=function(t,n){var e=null!=t&&Kh(t)?t:Kl();return this.v7(e,null!=n&&Kh(n)?n:Kl())},He.$metadata$=ip("NaturalOrderComparator",[Ws]),Ue.prototype.t=function(t,n){return this.w7_1(t,n)},Ue.prototype.compare=function(t,n){return this.t(t,n)},Ue.$metadata$=Eh("sam$kotlin_Comparator$0",[Ws]),Ve.$metadata$=rp("Continuation"),We.$metadata$=ip("Key",[Ge]),Ke.$metadata$=rp("ContinuationInterceptor",[Ye]),Ge.$metadata$=rp("Key"),Ye.$metadata$=rp("Element",[Ze]),Ze.$metadata$=rp("CoroutineContext"),Qe.prototype.z7=function(t){return null},Qe.prototype.f8=function(t,n){return t},Qe.prototype.g8=function(t){return t},Qe.prototype.e8=function(t){return this},Qe.prototype.hashCode=function(){return 0},Qe.prototype.toString=function(){return"EmptyCoroutineContext"},Qe.$metadata$=ip("EmptyCoroutineContext",[Ze,lu]),ro.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 ro))return o.z7(t);n=o}},ro.prototype.f8=function(t,n){return n(this.i8_1.f8(t,n),this.j8_1)},ro.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===to()?this.j8_1:new ro(n,this.j8_1)},ro.prototype.equals=function(t){return this===t||!!(t instanceof ro&&no(t)===no(this))&&function(t,n){for(var e=n;;){if(!eo(t,e.j8_1))return!1;var o=e.i8_1;if(!(o instanceof ro))return eo(t,Bh(o,Ye)?o:Kl());e=o}}(t,this)},ro.prototype.hashCode=function(){return Rl(this.i8_1)+Rl(this.j8_1)|0},ro.prototype.toString=function(){return"["+this.f8("",oo)+"]"},ro.$metadata$=Eh("CombinedContext",[Ze,lu]),io.prototype.c8=function(t){return this.a8_1(t)},io.prototype.d8=function(t){return t===this||this.b8_1===t},io.$metadata$=Eh("AbstractCoroutineContextKey",[Ge]),so.prototype.l2=function(){return this.k8_1},so.$metadata$=Eh("AbstractCoroutineContextElement",[Ye]),co.$metadata$=Eh("CoroutineSingletons",void 0,void 0,void 0,void 0,dl.prototype),vo.prototype.m8=function(t){return this.l8_1.m8(t)},vo.prototype.q4=function(){return this.l8_1.q4()},vo.prototype.n8=function(t,n){return this.l8_1.n8(t,n)},vo.$metadata$=ip("Default",[lu],void 0,void 0,void 0,mo.prototype),mo.prototype.q4=function(){return this.m8(32)},mo.prototype.n8=function(t,n){go(t,n);var e=n-t|0;if(e>0||e===Ls().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},bo.prototype.m8=function(t){return function(t,n){return(t>>>(32-n|0)|0)&(0|-n)>>31}(this.q4(),t)},bo.$metadata$=Eh("XorWowRandom",[lu],void 0,void 0,void 0,mo.prototype),wo.$metadata$=ip("Companion"),ko.prototype.y8=function(){return this.f1_1},ko.prototype.z8=function(){return this.g1_1},ko.prototype.a9=function(t){return this.f1_1<=t&&t<=this.g1_1},ko.prototype.h=function(){return this.f1_1>this.g1_1},ko.prototype.equals=function(t){return t instanceof ko&&(!(!this.h()||!t.h())||this.f1_1===t.f1_1&&this.g1_1===t.g1_1)},ko.prototype.hashCode=function(){return this.h()?-1:It(31,this.f1_1)+this.g1_1|0},ko.prototype.toString=function(){return this.f1_1+".."+this.g1_1},ko.$metadata$=Eh("IntRange",[Eo,Io],void 0,void 0,void 0,Po.prototype),jo.$metadata$=ip("Companion"),Co.prototype.f9=function(t){return Gc(this.g9_1,t)<=0&&Gc(t,this.h9_1)<=0},Co.prototype.h=function(){return Gc(this.g9_1,this.h9_1)>0},Co.prototype.equals=function(t){return t instanceof Co&&(!(!this.h()||!t.h())||!!Fl(new nl(this.g9_1),new nl(t.g9_1))&&Fl(new nl(this.h9_1),new nl(t.h9_1)))},Co.prototype.hashCode=function(){var t,n;return this.h()?t=-1:(n=this.g9_1,t=It(31,n)+this.h9_1|0),t},Co.prototype.toString=function(){return new nl(this.g9_1)+".."+new nl(this.h9_1)},Co.$metadata$=Eh("CharRange",[Eo,Io],void 0,void 0,void 0,Ao.prototype),zo.prototype.d=function(){return this.l9_1},zo.prototype.q4=function(){var t=this.m9_1;if(t===this.k9_1){if(!this.l9_1)throw Rp();this.l9_1=!1}else{this.m9_1=this.m9_1+this.j9_1|0}return t},zo.$metadata$=Eh("IntProgressionIterator",void 0,void 0,void 0,void 0,ve.prototype),So.prototype.d=function(){return this.p9_1},So.prototype.s4=function(){var t=this.q9_1;if(t===this.o9_1){if(!this.p9_1)throw Rp();this.p9_1=!1}else{this.q9_1=this.q9_1+this.n9_1|0}return Sh(t)},So.$metadata$=Eh("CharProgressionIterator",void 0,void 0,void 0,void 0,ye.prototype),qo.prototype.e1=function(t,n,e){return new Po(t,n,e)},qo.$metadata$=ip("Companion"),Po.prototype.c=function(){return new zo(this.f1_1,this.g1_1,this.h1_1)},Po.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)},Po.$metadata$=Eh("IntProgression",[el]),Mo.$metadata$=ip("Companion"),Ao.prototype.c=function(){return new So(this.g9_1,this.h9_1,this.i9_1)},Ao.prototype.h=function(){return this.i9_1>0?Gc(this.g9_1,this.h9_1)>0:Gc(this.g9_1,this.h9_1)<0},Ao.prototype.equals=function(t){return t instanceof Ao&&(!(!this.h()||!t.h())||!(!Fl(new nl(this.g9_1),new nl(t.g9_1))||!Fl(new nl(this.h9_1),new nl(t.h9_1)))&&this.i9_1===t.i9_1)},Ao.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},Ao.prototype.toString=function(){return this.i9_1>0?new nl(this.g9_1)+".."+new nl(this.h9_1)+" step "+this.i9_1:new nl(this.g9_1)+" downTo "+new nl(this.h9_1)+" step "+(0|-this.i9_1)},Ao.$metadata$=Eh("CharProgression",[el]),Eo.$metadata$=rp("ClosedRange"),Io.$metadata$=rp("OpenEndRange"),Do.$metadata$=rp("KClassifier"),To.$metadata$=rp("KTypeParameter",[Do]),hr.prototype.e=function(){if(-1===this.ha_1&&lr(this),0===this.ha_1)throw Rp();var t=this.ka_1,n=t instanceof ko?t:Kl();return this.ka_1=null,this.ha_1=-1,n},hr.prototype.d=function(){return-1===this.ha_1&&lr(this),1===this.ha_1},hr.$metadata$=Eh(void 0,[qs]),pr.prototype.c=function(){return new hr(this)},pr.$metadata$=Eh("DelimitedRangesSequence",[me]),_r.$metadata$=rp("MatchResult"),dr.$metadata$=rp("MatchGroupCollection",[pl]),vr.$metadata$=rp("MatchNamedGroupCollection",[dr]),br.prototype.ab=function(t){var n;try{n=Fr(t,!0)}catch(n){throw n instanceof Dp?Ip("Invalid ISO duration string format: '"+t+"'.",n):n}return n},br.$metadata$=ip("Companion"),Tr.prototype.ib=function(t){return qr(this.cb_1,t)},Tr.prototype.jb=function(t){return function(t,n){return qr(t.cb_1,n instanceof Tr?n.cb_1:Kl())}(this,t)},Tr.prototype.toString=function(){return Ir(this.cb_1)},Tr.prototype.hashCode=function(){return this.cb_1.hashCode()},Tr.prototype.equals=function(t){return function(t,n){if(!(n instanceof Tr))return!1;var e=n instanceof Tr?n.cb_1:Kl();return!!t.equals(e)}(this.cb_1,t)},Tr.$metadata$=Eh("Duration",[Ss]),Yr.$metadata$=Eh("DeepRecursiveScope"),Xr.$metadata$=Eh("DeepRecursiveFunction"),Zr.prototype.b5=function(){return to()},Zr.prototype.sb=function(t){this.pb_1=null,this.qb_1=t},Zr.prototype.z4=function(t){return this.sb(t)},Zr.prototype.lb=function(t,n){var e=n;return this.pb_1=Bh(e,Ve)?e:Kl(),this.ob_1=t,ao()},Zr.prototype.rb=function(){t:for(;;){var t=this.qb_1,n=this.pb_1;if(null==n){var e=new pi(t)instanceof pi?t:Kl();_i(e);var o=e;return null==o||Wh(o)?o:Kl()}var r=n;if(Fl(Gr(),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;li(),c=fi(t),r.z4(c),Is();continue t}throw t}var l=i;if(l!==ao()){var h,p=null==l||Wh(l)?l:Kl();li(),h=p,r.z4(h),Is()}}else this.qb_1=Gr(),r.z4(t)}},Zr.$metadata$=Eh("DeepRecursiveScopeImpl",[Ve],void 0,void 0,void 0,Yr.prototype),ti.$metadata$=rp("Lazy"),ni.$metadata$=Eh("LazyThreadSafetyMode",void 0,void 0,void 0,void 0,dl.prototype),ei.prototype.n2=function(){this.vb_1===ri()&&(this.vb_1=Jl(this.ub_1)(),this.ub_1=null);var t=this.vb_1;return null==t||Wh(t)?t:Kl()},ei.prototype.wb=function(){return!(this.vb_1===ri())},ei.prototype.toString=function(){return this.wb()?vl(this.n2()):"Lazy value not initialized yet."},ei.$metadata$=Eh("UnsafeLazyImpl",[ti,lu]),oi.$metadata$=ip("UNINITIALIZED_VALUE"),ci.prototype.yb=function(t){return t},ci.prototype.zb=function(t){return fi(t)},ci.$metadata$=ip("Companion"),hi.prototype.equals=function(t){return t instanceof hi&&Fl(this.xb_1,t.xb_1)},hi.prototype.hashCode=function(){return Rl(this.xb_1)},hi.prototype.toString=function(){return"Failure("+this.xb_1+")"},hi.$metadata$=Eh("Failure",[lu]),pi.prototype.toString=function(){return(t=this.ac_1)instanceof hi?Nl(t):"Success("+vl(t)+")";var t},pi.prototype.hashCode=function(){return null==(t=this.ac_1)?0:Rl(t);var t},pi.prototype.equals=function(t){return function(t,n){return n instanceof pi&&!!Fl(t,n instanceof pi?n.ac_1:Kl())}(this.ac_1,t)},pi.$metadata$=Eh("Result",[lu]),di.$metadata$=Eh("NotImplementedError",void 0,void 0,void 0,void 0,Op.prototype),vi.prototype.bc=function(){return this.j4_1},vi.prototype.cc=function(){return this.k4_1},vi.prototype.toString=function(){return"("+this.j4_1+", "+this.k4_1+")"},vi.prototype.l4=function(){return this.j4_1},vi.prototype.m4=function(){return this.k4_1},vi.prototype.hashCode=function(){var t=null==this.j4_1?0:Rl(this.j4_1);return It(t,31)+(null==this.k4_1?0:Rl(this.k4_1))|0},vi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof vi))return!1;var n=t instanceof vi?t:Kl();return!!Fl(this.j4_1,n.j4_1)&&!!Fl(this.k4_1,n.k4_1)},vi.$metadata$=Eh("Pair",[lu]),mi.prototype.toString=function(){return"("+this.dc_1+", "+this.ec_1+", "+this.fc_1+")"},mi.prototype.hashCode=function(){var t=null==this.dc_1?0:Rl(this.dc_1);return t=It(t,31)+(null==this.ec_1?0:Rl(this.ec_1))|0,It(t,31)+(null==this.fc_1?0:Rl(this.fc_1))|0},mi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof mi))return!1;var n=t instanceof mi?t:Kl();return!!Fl(this.dc_1,n.dc_1)&&!!Fl(this.ec_1,n.ec_1)&&!!Fl(this.fc_1,n.fc_1)},mi.$metadata$=Eh("Triple",[lu]),bi.$metadata$=ip("Companion"),ji.prototype.lc=function(t){return xi(this.kc_1,t)},ji.prototype.jb=function(t){return function(t,n){return xi(t.kc_1,n instanceof ji?n.kc_1:Kl())}(this,t)},ji.prototype.toString=function(){return ki(this.kc_1)},ji.prototype.hashCode=function(){return this.kc_1},ji.prototype.equals=function(t){return function(t,n){return n instanceof ji&&t===(n instanceof ji?n.kc_1:Kl())}(this.kc_1,t)},ji.$metadata$=Eh("UByte",[Ss]),qi.prototype.d=function(){return this.nc_10},oa.prototype.q=function(){return this.nf_1},oa.prototype.r=function(){if(!this.p())throw Rp();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)},oa.$metadata$=Eh("ListIteratorImpl",[Ms],void 0,void 0,void 0,ea.prototype),ra.prototype.zf=function(t,n){In().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},ra.prototype.g=function(t){return In().e2(t,this.yf_1),this.wf_1.g(this.xf_1+t|0)},ra.prototype.n4=function(t){In().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},ra.prototype.p4=function(t,n){return In().e2(t,this.yf_1),this.wf_1.p4(this.xf_1+t|0,n)},ra.prototype.f=function(){return this.yf_1},ra.prototype.lf=function(){return this.wf_1.lf()},ra.$metadata$=Eh("SubList",[nu],void 0,void 0,void 0,ia.prototype),ia.prototype.a=function(t){return this.lf(),this.zf(this.f(),t),!0},ia.prototype.s7=function(){this.lf(),this.ag(0,this.f())},ia.prototype.c=function(){return new ea(this)},ia.prototype.i=function(t){return this.j(t)>=0},ia.prototype.j=function(t){var n=0,e=Zn(this);if(n<=e)do{var o=n;if(n=n+1|0,Fl(this.g(o),t))return o}while(o!==e);return-1},ia.prototype.j2=function(t){var n=Zn(this);if(0<=n)do{var e=n;if(n=n+-1|0,Fl(this.g(e),t))return e}while(0<=n);return-1},ia.prototype.o=function(t){return new oa(this,t)},ia.prototype.bg=function(t,n){return new ra(this,t,n)},ia.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},ru.prototype.li=function(){console.log(this.ki_1),this.ki_1=""},ru.$metadata$=Eh("BufferedOutputToConsoleLog",void 0,void 0,void 0,void 0,iu.prototype),iu.prototype.gi=function(t){var n,e=this,o=this.ki_1;n=String(t),e.ki_1=o+n},iu.$metadata$=Eh("BufferedOutput",void 0,void 0,void 0,void 0,eu.prototype),au.prototype.b5=function(){return this.mi_1.b5()},au.prototype.z4=function(t){var n=this.ni_1;if(n===lo())this.ni_1=t;else{if(n!==ao())throw Lp("Already resumed");this.ni_1=ho(),this.mi_1.z4(t)}},au.prototype.oi=function(){if(this.ni_1===lo())return this.ni_1=ao(),ao();var t,n=this.ni_1;if(n===ho())t=ao();else{if(n instanceof hi)throw n.xb_1;t=n}return t},au.$metadata$=Eh("SafeContinuation",[Ve]),cu.$metadata$=Eh("CancellationException",void 0,void 0,void 0,void 0,Fp.prototype),lu.$metadata$=rp("Serializable"),du.$metadata$=rp("KCallable"),vu.$metadata$=rp("KClass",[Do]),yu.prototype.ri=function(){return this.qi_1},yu.prototype.equals=function(t){return t instanceof yu&&Fl(this.ri(),t.ri())},yu.prototype.hashCode=function(){var t=this.si(),n=null==t?null:Hl(t);return null==n?0:n},yu.prototype.toString=function(){return"class "+this.si()},yu.$metadata$=Eh("KClassImpl",[vu]),mu.prototype.equals=function(t){return t instanceof mu&&!!yu.prototype.equals.call(this,t)&&this.vi_1===t.vi_1},mu.prototype.si=function(){return this.vi_1},mu.prototype.ti=function(t){return this.wi_1(t)},mu.$metadata$=Eh("PrimitiveKClassImpl",void 0,void 0,void 0,void 0,yu.prototype),gu.prototype.si=function(){return this.yi_1},gu.prototype.ti=function(t){return!1},gu.prototype.ri=function(){throw Yp("There's no native JS class for Nothing type")},gu.prototype.equals=function(t){return t===this},gu.prototype.hashCode=function(){return 0},gu.$metadata$=ip("NothingKClassImpl",void 0,void 0,void 0,void 0,yu.prototype),bu.prototype.si=function(){throw Lp("Unknown simpleName for ErrorKClass")},bu.prototype.ti=function(t){throw Lp("Can's check isInstance on ErrorKClass")},bu.prototype.equals=function(t){return t===this},bu.prototype.hashCode=function(){return 0},bu.$metadata$=Eh("ErrorKClass",[vu]),wu.prototype.si=function(){return this.aj_1},wu.prototype.ti=function(t){return sp(t,this.ri())},wu.$metadata$=Eh("SimpleKClassImpl",void 0,void 0,void 0,void 0,yu.prototype),xu.$metadata$=rp("KProperty1",[ju]),ku.$metadata$=rp("KMutableProperty1",[xu,zu]),ju.$metadata$=rp("KProperty",[du]),Cu.$metadata$=rp("KMutableProperty0",[Su,zu]),zu.$metadata$=rp("KMutableProperty",[ju]),Su.$metadata$=rp("KProperty0",[ju]),qu.$metadata$=rp("KType"),Ou.prototype.bj=function(){return this.ej_1},Ou.prototype.cj=function(){return this.fj_1},Ou.prototype.dj=function(){return this.gj_1},Ou.prototype.equals=function(t){return!!(t instanceof Ou&&Fl(this.ej_1,t.ej_1)&&Fl(this.fj_1,t.fj_1))&&this.gj_1===t.gj_1},Ou.prototype.hashCode=function(){return It(It(Rl(this.ej_1),31)+Rl(this.fj_1)|0,31)+(0|this.gj_1)|0},Ou.prototype.toString=function(){var t=this.ej_1,n=Bh(t,vu)?t:null,e=null==n?Nl(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 yl(e,o)+r},Ou.$metadata$=Eh("KTypeImpl",[qu]),Xu.prototype.bk=function(){return this.hj_1},Xu.prototype.ck=function(){return this.ij_1},Xu.prototype.dk=function(){return this.jj_1},Xu.prototype.ek=function(){return this.kj_1},Xu.prototype.fk=function(){return this.lj_1},Xu.prototype.gk=function(){return this.mj_1},Xu.prototype.hk=function(){return this.nj_1},Xu.prototype.ik=function(){return this.oj_1},Xu.prototype.jk=function(){return this.pj_1},Xu.prototype.kk=function(){return this.qj_1},Xu.prototype.lk=function(){return this.rj_1},Xu.prototype.mk=function(){return this.sj_1},Xu.prototype.nk=function(){return this.tj_1},Xu.prototype.ok=function(){return this.uj_1},Xu.prototype.pk=function(){return this.vj_1},Xu.prototype.qk=function(){return this.wj_1},Xu.prototype.rk=function(){return this.xj_1},Xu.prototype.sk=function(){return this.yj_1},Xu.prototype.tk=function(){return this.zj_1},Xu.prototype.uk=function(){return this.ak_1},Xu.prototype.functionClass=function(t){var n,e,o=Pu()[t];if(null==o){var r=new mu(Function,"Function"+t,(e=t,function(t){return"function"==typeof t&&t.length===e}));Pu()[t]=r,n=r}else n=o;return n},Xu.$metadata$=ip("PrimitiveClasses"),Object.defineProperty(Xu.prototype,"anyClass",{configurable:!0,get:Xu.prototype.bk}),Object.defineProperty(Xu.prototype,"numberClass",{configurable:!0,get:Xu.prototype.ck}),Object.defineProperty(Xu.prototype,"nothingClass",{configurable:!0,get:Xu.prototype.dk}),Object.defineProperty(Xu.prototype,"booleanClass",{configurable:!0,get:Xu.prototype.ek}),Object.defineProperty(Xu.prototype,"byteClass",{configurable:!0,get:Xu.prototype.fk}),Object.defineProperty(Xu.prototype,"shortClass",{configurable:!0,get:Xu.prototype.gk}),Object.defineProperty(Xu.prototype,"intClass",{configurable:!0,get:Xu.prototype.hk}),Object.defineProperty(Xu.prototype,"floatClass",{configurable:!0,get:Xu.prototype.ik}),Object.defineProperty(Xu.prototype,"doubleClass",{configurable:!0,get:Xu.prototype.jk}),Object.defineProperty(Xu.prototype,"arrayClass",{configurable:!0,get:Xu.prototype.kk}),Object.defineProperty(Xu.prototype,"stringClass",{configurable:!0,get:Xu.prototype.lk}),Object.defineProperty(Xu.prototype,"throwableClass",{configurable:!0,get:Xu.prototype.mk}),Object.defineProperty(Xu.prototype,"booleanArrayClass",{configurable:!0,get:Xu.prototype.nk}),Object.defineProperty(Xu.prototype,"charArrayClass",{configurable:!0,get:Xu.prototype.ok}),Object.defineProperty(Xu.prototype,"byteArrayClass",{configurable:!0,get:Xu.prototype.pk}),Object.defineProperty(Xu.prototype,"shortArrayClass",{configurable:!0,get:Xu.prototype.qk}),Object.defineProperty(Xu.prototype,"intArrayClass",{configurable:!0,get:Xu.prototype.rk}),Object.defineProperty(Xu.prototype,"longArrayClass",{configurable:!0,get:Xu.prototype.sk}),Object.defineProperty(Xu.prototype,"floatArrayClass",{configurable:!0,get:Xu.prototype.tk}),Object.defineProperty(Xu.prototype,"doubleArrayClass",{configurable:!0,get:Xu.prototype.uk}),ec.$metadata$=rp("Appendable"),sc.prototype.ee=function(){return this.ga_1.length},sc.prototype.fe=function(t){var n=this.ga_1;if(!(t>=0&&t<=Zo(n)))throw Qp("index: "+t+", length: "+this.ee()+"}");return Pl(n,t)},sc.prototype.ge=function(t,n){return this.ga_1.substring(t,n)},sc.prototype.r9=function(t){return this.ga_1=this.ga_1+new nl(t),this},sc.prototype.b=function(t){return this.ga_1=this.ga_1+vl(t),this},sc.prototype.vk=function(t,n,e){var o=t;return this.hb(null==o?"null":o,n,e)},sc.prototype.eb=function(t){return this.ga_1=this.ga_1+vl(t),this},sc.prototype.fb=function(t){var n=this,e=this.ga_1,o=t;return n.ga_1=e+(null==o?"null":o),this},sc.prototype.gb=function(t,n){In().d2(t,this.ee());var e,o=this.ga_1.substring(0,t)+new nl(n);return e=this.ga_1.substring(t),this.ga_1=o+e,this},sc.prototype.wk=function(t){if(t<0)throw Ap("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(eAl(t))throw Qp("Start index out of bounds: "+n+", input length: "+Al(t));return bc(this.z9_1,Nl(t),n,this.z9_1)},gc.prototype.el=function(t,n,e,o){return 0!=(2&e)&&(n=0),this.dl(t,n)},gc.prototype.fl=function(t,n){if(n<0||n>Al(t))throw Qp("Start index out of bounds: "+n+", input length: "+Al(t));return e=this,o=t,r=n,new Ce((function(){return e.dl(o,r)}),yc);var e,o,r},gc.prototype.gl=function(t,n,e,o){return 0!=(2&e)&&(n=0),this.fl(t,n)},gc.prototype.da=function(t,n){if(!nr(n,92,!1,2)&&!nr(n,36,!1,2)){var e=Nl(t),o=this.z9_1;return e.replace(o,n)}return this.hl(t,mc(n))},gc.prototype.hl=function(t,n){var e=this.el(t,0,2,null);if(null==e)return Nl(t);var o=0,r=Al(t),i=oc();do{var s=Jl(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 Ql(32===e?t.c1_1:t.c1_1>>>(e-32|0)|0,0)}(this,t)},Ql.prototype.xc=function(t){return new Ql(this.b1_1&t.b1_1,this.c1_1&t.c1_1)},Ql.prototype.fn=function(t){return new Ql(this.b1_1|t.b1_1,this.c1_1|t.c1_1)},Ql.prototype.bb=function(t){return new Ql(this.b1_1^t.b1_1,this.c1_1^t.c1_1)},Ql.prototype.en=function(){return new Ql(~this.b1_1,~this.c1_1)},Ql.prototype.gn=function(){return kh(this.b1_1)},Ql.prototype.hn=function(){return Ch(this.b1_1)},Ql.prototype.wa=function(){return this.b1_1},Ql.prototype.pi=function(){return hh(this)},Ql.prototype.valueOf=function(){return this.pi()},Ql.prototype.equals=function(t){return t instanceof Ql&&ph(this,t)},Ql.prototype.hashCode=function(){return t=this,xh(),t.b1_1^t.c1_1;var t},Ql.prototype.toString=function(){return fh(this,10)},Ql.$metadata$=Eh("Long",[Ss],void 0,void 0,void 0,As.prototype),fp.$metadata$=ip("Digit"),dp.$metadata$=ip("Letter"),yp.$metadata$=ip("OtherLowercase"),$p.prototype.b5=function(){return Jl(this.o7_1)},$p.prototype.t7=function(){var t,n=this.p7_1;if(null==n){var e=this.b5().z7(Je()),o=null==e?null:e.x7(this),r=null==o?this:o;this.p7_1=r,t=r}else t=n;return t},$p.prototype.u7=function(t){var n,e=this;if(ai(t))n=null;else{var o=t;n=null==o||Wh(o)?o:Kl()}for(var r=n,i=ui(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===ao())return Is();r=a,i=null}catch(t){r=null,i=t}gp(s);var u=Jl(s.i7_1);if(!(u instanceof $p)){if(null!=i){var c,l=Jl(i);li(),c=fi(l),u.z4(c),Is()}else{var h,p=r;li(),h=p,u.z4(h),Is()}return Is()}e=u,Is()}},$p.prototype.z4=function(t){return this.u7(t)},$p.$metadata$=Eh("CoroutineImpl",[Ve]),bp.prototype.b5=function(){throw Lp("This continuation is already complete")},bp.prototype.u7=function(t){throw Lp("This continuation is already complete")},bp.prototype.z4=function(t){return this.u7(t)},bp.prototype.toString=function(){return"This continuation is already complete"},bp.$metadata$=ip("CompletedContinuation",[Ve]),kp.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)},kp.$metadata$=Eh(void 0,void 0,void 0,void 0,void 0,$p.prototype),jp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;return this.ho_1()},jp.$metadata$=Eh(void 0,void 0,void 0,void 0,void 0,$p.prototype),Sp.$metadata$=Eh("Exception",void 0,void 0,void 0,void 0,Error.prototype),Op.$metadata$=Eh("Error",void 0,void 0,void 0,void 0,Error.prototype),Dp.$metadata$=Eh("IllegalArgumentException",void 0,void 0,void 0,void 0,Kp.prototype),Fp.$metadata$=Eh("IllegalStateException",void 0,void 0,void 0,void 0,Kp.prototype),Up.$metadata$=Eh("NoSuchElementException",void 0,void 0,void 0,void 0,Kp.prototype),Kp.$metadata$=Eh("RuntimeException",void 0,void 0,void 0,void 0,Sp.prototype),Xp.$metadata$=Eh("UnsupportedOperationException",void 0,void 0,void 0,void 0,Kp.prototype),Zp.$metadata$=Eh("ConcurrentModificationException",void 0,void 0,void 0,void 0,Kp.prototype),tf.$metadata$=Eh("IndexOutOfBoundsException",void 0,void 0,void 0,void 0,Kp.prototype),ef.$metadata$=Eh("AssertionError",void 0,void 0,void 0,void 0,Op.prototype),rf.$metadata$=Eh("ArithmeticException",void 0,void 0,void 0,void 0,Kp.prototype),af.$metadata$=Eh("NumberFormatException",void 0,void 0,void 0,void 0,Dp.prototype),cf.$metadata$=Eh("NullPointerException",void 0,void 0,void 0,void 0,Kp.prototype),hf.$metadata$=Eh("NoWhenBranchMatchedException",void 0,void 0,void 0,void 0,Kp.prototype),ff.$metadata$=Eh("ClassCastException",void 0,void 0,void 0,void 0,Kp.prototype),df.$metadata$=Eh("UninitializedPropertyAccessException",void 0,void 0,void 0,void 0,Kp.prototype),rp("Function1"),rp("Function0"),bf.$metadata$=rp("SuspendFunction1"),wf.$metadata$=rp("SuspendFunction2"),ro.prototype.g8=Bt,so.prototype.z7=Lt,so.prototype.f8=Nt,so.prototype.e8=Ft,so.prototype.g8=Bt,Fa.prototype.uh=function(){var t=Object.create(null);return t.foo=1,mf(t,"foo"),t},W=null,Ot=0,t.$_$=t.$_$||{},t.$_$.a=function(t,n,e){return new Ou(t,lp(n),e)},t.$_$.b=function(t,n){if(t instanceof yu&&n instanceof yu){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=Zu().rj_1;break;case"number":n=yf(t,0)===t?Zu().nj_1:Zu().pj_1;break;case"boolean":n=Zu().kj_1;break;case"function":var e;e=t,n=Zu().functionClass(e.length);break;default:var o;if(Yh(t))o=Zu().tj_1;else if(Qh(t))o=Zu().uj_1;else if(Xh(t))o=Zu().vj_1;else if(Zh(t))o=Zu().wj_1;else if(tp(t))o=Zu().xj_1;else if(ep(t))o=Zu().yj_1;else if(np(t))o=Zu().zj_1;else if(op(t))o=Zu().ak_1;else if(Bh(t,vu))o=Qu(vu);else if(Vh(t))o=Zu().qj_1;else{var r=Object.getPrototypeOf(t).constructor;o=r===Object?Zu().hj_1:r===Error?Zu().sj_1:tc(r)}n=o}return n},t.$_$.d=Qu,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 Is();ot=!0,new $c("IGNORE_CASE",0,"i"),et=new $c("MULTILINE",1,"m")}(),et},t.$_$.g=Hc,t.$_$.h=function(){return function(){if(P)return Is();P=!0,new ni("SYNCHRONIZED",0),O=new ni("PUBLICATION",1),new ni("NONE",2)}(),O},t.$_$.i=function(t,n){return null==t||Wh(t)?t:Kl()},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){In().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),Ko(t,n,e)},t.$_$.n=or,t.$_$.o=Jo,t.$_$.p=function(t,n,e,o,r,i){return 0!=(4&r)&&(o=!1),function(t,n,e,o){var r=new RegExp(vc().bl(n),o?"gui":"gu"),i=vc().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),Wo(t,n,e,o)},t.$_$.r=Pc,t.$_$.s=da,t.$_$.t=_a,t.$_$.u=va,t.$_$.v=Pa,t.$_$.w=qa,t.$_$.x=function(t){return function(t,n){return Sa(n),n.sg(t),n}(t,Object.create(Ma.prototype))},t.$_$.y=Ea,t.$_$.z=function(){return t=Object.create(Da.prototype),fa.call(t),Da.call(t),t.ih_1=qa(),t;var t},t.$_$.a1=function(t){return function(t,n){return fa.call(n),Da.call(n),n.ih_1=Pa(t.f()),n.k1(t),n}(t,Object.create(Da.prototype))},t.$_$.b1=Ga,t.$_$.c1=Ja,t.$_$.d1=function(t){return function(t,n){return Sa(n),Ya.call(n),n.e4_1=qa(),n.sg(t),n}(t,Object.create(Ya.prototype))},t.$_$.e1=Xa,t.$_$.f1=function(t){return function(t,n){return Ia(Ja(),n),tu.call(n),n.k1(t),n}(t,Object.create(tu.prototype))},t.$_$.g1=function t(n){var e=function(t,n){return Bp(t,n),cu.call(n),n}(n,Object.create(cu.prototype));return Ul(e,t),e},t.$_$.h1=uu,t.$_$.i1=function t(n,e){var o=uu(n,e,Object.create(cu.prototype));return Ul(o,t),o},t.$_$.j1=function(t){return function(t,n){return au.call(n,t,lo()),n}(t,Object.create(au.prototype))},t.$_$.k1=function(t){return function(t,n){return gc.call(n,t,Ie()),n}(t,Object.create(gc.prototype))},t.$_$.l1=function(t,n){return function(t,n,e){return gc.call(e,t,Js(n)),e}(t,n,Object.create(gc.prototype))},t.$_$.m1=oc,t.$_$.n1=ic,t.$_$.o1=function t(){var n,e=(Vp(n=Object.create(Zp.prototype)),Zp.call(n),n);return Ul(e,t),e},t.$_$.p1=function t(n){var e=function(t,n){return Wp(t,n),Zp.call(n),n}(n,Object.create(Zp.prototype));return Ul(e,t),e},t.$_$.q1=function(t,n,e){return Vl(e,t,n),Op.call(e),e},t.$_$.r1=Pp,t.$_$.s1=Mp,t.$_$.t1=Ap,t.$_$.u1=Ep,t.$_$.v1=Tp,t.$_$.w1=Lp,t.$_$.x1=function t(n,e){var o=Np(n,e,Object.create(Fp.prototype));return Ul(o,t),o},t.$_$.y1=Qp,t.$_$.z1=Rp,t.$_$.a2=Jp,t.$_$.b2=function t(n,e){var o=Jp(n,e,Object.create(Kp.prototype));return Ul(o,t),o},t.$_$.c2=Gp,t.$_$.d2=Yp,t.$_$.e2=function(t){var n=ic();Cr(t)&&n.r9(45),n.fb("PT");var e=Sr(t),o=Er(e),r=Or(e),i=Pr(e),s=Mr(e),a=o;zr(t)&&(a=new Ql(1316134911,2328));var u=!a.equals(new Ql(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)&&(Dr(n,0,i,s,9,"S",!0),Is()),n.toString()},t.$_$.f2=function(t){return function(t){var n,e=mr(t);if(gr(t))n=e;else{var o,r;if(Zl(),o=new Ql(-1,2147483647).t9(qh(1e6)),e.d1(o)>0)Zl(),n=new Ql(-1,2147483647);else Zl(),r=new Ql(0,-2147483648).t9(qh(1e6)),e.d1(r)<0?(Zl(),n=new Ql(0,-2147483648)):n=Ur(e)}return n}(t)},t.$_$.g2=Kc,t.$_$.h2=Yc,t.$_$.i2=Xc,t.$_$.j2=Zc,t.$_$.k2=ii,t.$_$.l2=ui,t.$_$.m2=ai,t.$_$.n2=si,t.$_$.o2=gi,t.$_$.p2=$i,t.$_$.q2=ki,t.$_$.r2=Ci,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=Si,t.$_$.w2=zi,t.$_$.x2=Ai,t.$_$.y2=Ei,t.$_$.z2=Bi,t.$_$.a3=function(t){return new Int32Array(t)},t.$_$.b3=Ni,t.$_$.c3=function(t,n){return t[n]},t.$_$.d3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.e3=Ri,t.$_$.f3=Fi,t.$_$.g3=Ji,t.$_$.h3=Ki,t.$_$.i3=Zi,t.$_$.j3=function(t){return wl(t)},t.$_$.k3=ts,t.$_$.l3=function(t,n){return t[n]},t.$_$.m3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.n3=es,t.$_$.o3=ns,t.$_$.p3=as,t.$_$.q3=us,t.$_$.r3=ps,t.$_$.s3=function(t){return new Int16Array(t)},t.$_$.t3=_s,t.$_$.u3=function(t,n){return t[n]},t.$_$.v3=function(t,n,e){var o;o=e,t[n]=o},t.$_$.w3=vs,t.$_$.x3=ds,t.$_$.y3=Je,t.$_$.z3=to,t.$_$.a4=function(){return null==V&&new Vs,V},t.$_$.b4=function(){return null==L&&new Ds,L},t.$_$.c4=Hs,t.$_$.d4=Fs,t.$_$.e4=Ls,t.$_$.f4=function(){return null==N&&new Ts,N},t.$_$.g4=function(){return null==U&&new Us,U},t.$_$.h4=yo,t.$_$.i4=Zu,t.$_$.j4=wr,t.$_$.k4=tl,t.$_$.l4=Zl,t.$_$.m4=li,t.$_$.n4=wi,t.$_$.o4=Di,t.$_$.p4=Yi,t.$_$.q4=ls,t.$_$.r4=Is,t.$_$.s4=jn,t.$_$.t4=Dn,t.$_$.u4=Vn,t.$_$.v4=ia,t.$_$.w4=Kn,t.$_$.x4=ga,t.$_$.y4=pl,t.$_$.z4=Ma,t.$_$.a5=Da,t.$_$.b5=el,t.$_$.c5=qs,t.$_$.d5=Ya,t.$_$.e5=tu,t.$_$.f5=Ps,t.$_$.g5=ol,t.$_$.h5=cl,t.$_$.i5=ll,t.$_$.j5=hl,t.$_$.k5=Ms,t.$_$.l5=il,t.$_$.m5=ul,t.$_$.n5=rl,t.$_$.o5=sl,t.$_$.p5=function(t,n){return t.k1(lp(n))},t.$_$.q5=_e,t.$_$.r5=function(t,n,e,o,r){In().f2(o,r,t.length);var i=r-o|0;if(In().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 Ap(Nl(t!==n?"Both size "+t+" and step "+n+" must be greater than zero.":"size "+t+" must be greater than zero."))}(n,e),Bh(t,nu)&&Bh(t,ol)){var r=t.f(),i=da((r/e|0)+(0==(r%e|0)?0:1)|0),s=0;t:for(;0<=s&&s=0))throw Ap(Nl("Invalid new array size: "+n+"."));return Gl(t,new Int16Array(n))},t.$_$.b6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));var e=Yl(t,n,new Ql(0,0));return e.$type$="LongArray",e},t.$_$.c6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));var e=Yl(t,n,!1);return e.$type$="BooleanArray",e},t.$_$.d6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));var e=Gl(t,bl(n));return e.$type$="CharArray",e},t.$_$.e6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));return Gl(t,new Int8Array(n))},t.$_$.f6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));return Gl(t,new Float64Array(n))},t.$_$.g6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));return Gl(t,new Float32Array(n))},t.$_$.h6=up,t.$_$.i6=function(t,n){if(!(n>=0))throw Ap(Nl("Invalid new array size: "+n+"."));return Gl(t,new Int32Array(n))},t.$_$.j6=Zs,t.$_$.k6=Gn,t.$_$.l6=le,t.$_$.m6=Ie,t.$_$.n6=ap,t.$_$.o6=function(t){return t.h()?null:t.g(0)},t.$_$.p6=function(t){if(Bh(t,ol))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(Bh(t,ol))return tn(t);var n=t.c();if(!n.d())throw Hp("Collection is empty.");return n.e()},t.$_$.s6=function(t){for(var n=_a(),e=t.c();e.d();)_e(n,e.e());return n},t.$_$.t6=function(t,n){return function(t,n){if(Bh(t,ce))return t.v3(n);var e=t.b3(n);if(null==e&&!t.v2(n))throw Hp("Key "+n+" is missing in the map.");return null==e||Wh(e)?e:Kl()}(t,n)},t.$_$.u6=Rt,t.$_$.v6=function(t){return new ko(0,function(t){return t.length-1|0}(t))},t.$_$.w6=function(t){return new ko(0,Wt(t))},t.$_$.x6=function(t){return t.length-1|0},t.$_$.y6=Zn,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 Hp("List is empty.");return t.g(Zn(t))},t.$_$.c7=Ks,t.$_$.d7=function(t){return t.length>0?lp(t):Gn()},t.$_$.e7=Gs,t.$_$.f7=function(t){return t.length>0?(n=t,fe(e=Ga(t.length),n),e):le();var n,e},t.$_$.g7=function(t,n){var e=function(t,n){var e=t;return Bh(e,sl)?t:Bh(e,pl)?(Bh(n,pl)&&n.f(),t):Zt(t)}(n,t);if(e.h())return Zt(t);for(var o=_a(),r=t.c();r.d();){var i=r.e();e.i(i)||o.a(i)}return o},t.$_$.h7=function(t){var n=t.c();if(!n.d())throw Rp();for(var e=n.e();n.d();){var o=n.e();Dl(e,o)>0&&(e=o)}return e},t.$_$.i7=Yn,t.$_$.j7=function(t){return Jt(t,Qa(t.length))},t.$_$.k7=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.$_$.l7=function(t,n){var e=function(t){return Bh(t,pl)?t.f():null}(n),o=null==e?null:t.f()+e|0,r=Qa(null==o?It(t.f(),2):o);return r.k1(t),_e(r,n),r},t.$_$.m7=function(t,n){return function(t,n,e){if(!Bh(t,nu))return de(Bh(t,fl)?t:Kl(),n,e);var o=0,r=0,i=Zn(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 Ie();case 1:return Js(t[0]);default:return Jt(t,Qa(t.length))}}(t):Ie()},t.$_$.r7=function(t){return 1===t.f()?t.g(0):null},t.$_$.s7=function(t,n){Qs(t,n)},t.$_$.t7=function(t){if(Bh(t,pl)){if(t.f()<=1)return Zt(t);var n=Zs(t),e=Vh(n)?n:Kl();return function(t){t.length>1&&function(t){if($a()){var n=xa;t.sort(n)}else ba(t,0,Wt(t),Re())}(t)}(e),lp(e)}var o=sn(t);return function(t){Qs(t,Re())}(o),o},t.$_$.u7=function(t){for(var n=$l(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){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.$_$.w7=on,t.$_$.x7=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.$_$.y7=Zt,t.$_$.z7=function(t){switch(t.length){case 0:return Gn();case 1:return Ks(t[0]);default:return function(t){return va(function(t){return new ne(t,!1)}(t))}(t)}},t.$_$.a8=function(t){if(Bh(t,pl)){var n;switch(t.f()){case 0:n=le();break;case 1:e=Bh(t,ol)?t.g(0):t.c().e(),fe(r=Pa((o=[e]).length),o),n=r;break;default:n=pe(t,Ga(t.f()))}return n}var e,o,r;return function(t){var n;n=0===t.f()?le():t;return n}(pe(t,Ja()))},t.$_$.b8=Qt,t.$_$.c8=rn,t.$_$.d8=function(t){return new se((n=t,function(){return gl(n)}));var n},t.$_$.e8=function(t,n){return t===n?0:null==t?-1:null==n?1:Dl(null!=t&&Kh(t)?t:Kl(),n)},t.$_$.f8=cu,t.$_$.g8=ao,t.$_$.h8=xp,t.$_$.i8=wp,t.$_$.j8=so,t.$_$.k8=io,t.$_$.l8=function(t){if(t instanceof io){var n;if(t.d8(this.l2())){var e=t.c8(this);n=null!=e&&Bh(e,Ye)?e:null}else n=null;return n}return Je()===t?Bh(this,Ye)?this:Kl():null},t.$_$.m8=function(t){return t instanceof io?t.d8(this.l2())&&null!=t.c8(this)?to():this:Je()===t?to():this},t.$_$.n8=Ke,t.$_$.o8=Ve,t.$_$.p8=Nt,t.$_$.q8=Lt,t.$_$.r8=Ft,t.$_$.s8=Ye,t.$_$.t8=Ge,t.$_$.u8=Bt,t.$_$.v8=$p,t.$_$.w8=bf,t.$_$.x8=wf,t.$_$.y8=function(t,n,e){var o,r=wp(xp(t,n,e));li(),o=Is(),r.z4(o),Is()},t.$_$.z8=function(t){su(),(su(),K).hi(t)},t.$_$.a9=function(t){return Object.prototype.toString.call(t)},t.$_$.b9=gl,t.$_$.c9=$l,t.$_$.d9=Ul,t.$_$.e9=bl,t.$_$.f9=Pl,t.$_$.g9=Al,t.$_$.h9=El,t.$_$.i9=Eh,t.$_$.j9=Dl,t.$_$.k9=Fl,t.$_$.l9=Vl,t.$_$.m9=ml,t.$_$.n9=function(t,n,e,o){return Ah(),Mh(t,0,n,o,e?o:null)},t.$_$.o9=ql,t.$_$.p9=Mh,t.$_$.q9=Hl,t.$_$.r9=Rl,t.$_$.s9=function(t){return new kl(t)},t.$_$.t9=rp,t.$_$.u9=Vh,t.$_$.v9=Yh,t.$_$.w9=Xh,t.$_$.x9=Qh,t.$_$.y9=Gh,t.$_$.z9=op,t.$_$.aa=np,t.$_$.ba=tp,t.$_$.ca=Bh,t.$_$.da=ep,t.$_$.ea=Wh,t.$_$.fa=Zh,t.$_$.ga=_u,t.$_$.ha=wl,t.$_$.ia=Oh,t.$_$.ja=Sh,t.$_$.ka=function(t){return+t},t.$_$.la=jh,t.$_$.ma=ip,t.$_$.na=kh,t.$_$.oa=qh,t.$_$.pa=Ch,t.$_$.qa=Nl,t.$_$.ra=yn,t.$_$.sa=vn,t.$_$.ta=function(t,n){try{return function(t,n){if(n.h())throw Ap("Cannot get random in empty range: "+n);return n.g1_1Ls().x_1?t.n8(n.f1_1-1|0,n.g1_1)+1|0:t.q4()}(n,t)}catch(t){throw t instanceof Dp?Hp(t.message):t}},t.$_$.ua=function(t,n){return function(t,n){if(!t)throw Ap("Step must be positive, was: "+Nl(n)+".")}(n>0,n),Oo().e1(t.f1_1,t.g1_1,t.h1_1>0?n:0|-n)},t.$_$.va=fn,t.$_$.wa=vu,t.$_$.xa=Cu,t.$_$.ya=ku,t.$_$.za=xu,t.$_$.ab=To,t.$_$.bb=ge,t.$_$.cb=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();)e=n.e();return e},t.$_$.db=function(t){return new xe(t)},t.$_$.eb=Ko,t.$_$.fb=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=pp(mp().mn_1,t);return n>=0&&t<(mp().mn_1[n]+mp().nn_1[n]|0)}(Xc(t))}(t)},t.$_$.ib=function(t){var n;switch(Al(t)){case 0:throw Hp("Char sequence is empty.");case 1:n=Pl(t,0);break;default:throw Ap("Char sequence has more than one element.")}return n},t.$_$.jb=function(t){return pn(t)},t.$_$.kb=function(t){return null!=t&&"true"===t.toLowerCase()},t.$_$.lb=function(t){var n=+t;return pu(n)&&!_c(t)||0===n&&Mc(t)?null:n},t.$_$.mb=hc,t.$_$.nb=Ho,t.$_$.ob=fc,t.$_$.pb=Ro,t.$_$.qb=pc,t.$_$.rb=function(t){var n,e=function(t){return function(t,n){var e=ws(t,n);if(null==(null==e?null:new Li(e)))return null;var o=e;wi();var r=255;return xs(o,r)>0?null:kh(o)}(t,10)}(t);return null==(null==e?null:new ji(e))?Uo(t):n=e,n},t.$_$.sb=function(t){var n,e=function(t){return ws(t,10)}(t);return null==(null==e?null:new Li(e))?Uo(t):n=e,n},t.$_$.tb=bs,t.$_$.ub=function(t){var n,e=bs(t);return null==(null==e?null:new Qi(e))?Uo(t):n=e,n},t.$_$.vb=function(t){var n,e=function(t){return function(t,n){var e=ws(t,n);if(null==(null==e?null:new Li(e)))return null;var o=e;ls();var r=65535;return xs(o,r)>0?null:Ch(o)}(t,10)}(t);return null==(null==e?null:new fs(e))?Uo(t):n=e,n},t.$_$.wb=function(t){return function(t,n){for(var e=function(t){return $n(Xo(t))}(t),o=_a(),r=e.c();r.d();){var i=r.e();Vo(i)&&o.a(i)}for(var s=o,a=da(ie(s,10)),u=s.c();u.d();){var c=u.e();a.a(No(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();Dl(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===Al(t)?Fo:(n=t,function(t){return n+t});var n}(n),_=Zn(e),d=_a(),v=0,y=e.c();y.d();){var m=y.e(),g=v;v=g+1|0;var $,b,w,x=Xs(g);0!==x&&x!==_||!Mc(m)?$=null==(w=null==(b=xn(m,h))?null:f(b))?m:w:$=null;var k=$;null==k||(d.a(k),Is())}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),an(t,n,e,o,r,i,s,a)}(d,oc(p),"\n",null,null,0,null,null,124).toString()}(t,"")},t.$_$.xb=function(t){var n;t:{var e=0,o=Al(t)-1|0;if(e<=o)do{var r=e;if(e=e+1|0,!uc(Pl(t,r))){n=El(t,r,Al(t));break t}}while(e<=o);n=""}return n},t.$_$.yb=function(t){var n=0,e=Al(t)-1|0,o=!1;t:for(;n<=e;){var r=uc(Pl(t,o?e:n));if(o){if(!r)break t;e=e-1|0}else r?n=n+1|0:o=!0}return El(t,n,e+1|0)},t.$_$.zb=Tr,t.$_$.ac=Br,t.$_$.bc=Cs,t.$_$.cc=nl,t.$_$.dc=Ws,t.$_$.ec=Xr,t.$_$.fc=Yr,t.$_$.gc=dl,t.$_$.hc=Op,t.$_$.ic=Sp,t.$_$.jc=Dp,t.$_$.kc=Ql,t.$_$.lc=vi,t.$_$.mc=pi,t.$_$.nc=Kp,t.$_$.oc=Kl,t.$_$.pc=function(){throw Tp()},t.$_$.qc=mi,t.$_$.rc=Mi,t.$_$.sc=ji,t.$_$.tc=Wi,t.$_$.uc=Li,t.$_$.vc=ss,t.$_$.wc=Qi,t.$_$.xc=$s,t.$_$.yc=fs,t.$_$.zc=Es,t.$_$.ad=Xp,t.$_$.bd=function(t,n){if(t!==n){var e=t._suppressed;null==e?t._suppressed=Yn([n]):e.a(n)}},t.$_$.cd=function(t){return t},t.$_$.dd=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.$_$.ed=function(t){var n,e=t.b1_1;return 0===e?(Ls(),n=32+fu(t.c1_1)|0):n=fu(e),n},t.$_$.fd=fi,t.$_$.gd=Jl,t.$_$.hd=function(t,n){return Qr(),new Zr(t.mb_1,n).rb()},t.$_$.id=function(t){return!function(t){var n;return Hs(),t===1/0?n=!0:(Hs(),n=t===-1/0),n}(t)&&!pu(t)},t.$_$.jd=function(t){return!function(t){var n;return Fs(),t===1/0?n=!0:(Fs(),n=t===-1/0),n}(t)&&!function(t){return!(t==t)}(t)},t.$_$.kd=function(t,n){return new ei(n)},t.$_$.ld=function(t){return new ei(t)},t.$_$.md=function(){throw lf()},t.$_$.nd=yl,t.$_$.od=function(t){console.error(function(t){return(new Dc).bm(t)}(t))},t.$_$.pd=function(t,n){var e=t<>>(32-n|0)|0},t.$_$.qd=function(t,n){return Ls(),t<<(32-n|0)|t>>>n|0},t.$_$.rd=function(t){throw _f("lateinit property "+t+" has not been initialized")},t.$_$.sd=vl,t.$_$.td=yi,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.$_$.t9,pt=n.$_$.g4,ft=n.$_$.r4,_t=n.$_$.k6,dt=n.$_$.h,vt=n.$_$.kd,yt=n.$_$.i9,mt=n.$_$.c,gt=n.$_$.za,$t=n.$_$.p9,bt=n.$_$.s1,wt=n.$_$.d9,xt=n.$_$.u1,kt=n.$_$.jc,jt=n.$_$.w5,Ct=n.$_$.s,zt=n.$_$.oc,St=n.$_$.wa,qt=n.$_$.ca,Ot=n.$_$.qc,Pt=n.$_$.d,Mt=n.$_$.lc,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.$_$.qa,Kt=n.$_$.t1,Gt=n.$_$.l2,Yt=n.$_$.n2,Xt=n.$_$.ea,Zt=n.$_$.m2,Qt=n.$_$.mc,tn=n.$_$.gd,nn=n.$_$.k9,en=n.$_$.q9,on=n.$_$.c5,rn=n.$_$.b5,sn=n.$_$.gb,an=n.$_$.z7,un=n.$_$.t,cn=n.$_$.z,ln=n.$_$.w7,hn=n.$_$.u7,pn=n.$_$.d8,fn=n.$_$.td,_n=n.$_$.a8,dn=n.$_$.ld,vn=n.$_$.y5,yn=n.$_$.va,mn=n.$_$.k,gn=n.$_$.ma,$n=n.$_$.kc,bn=n.$_$.cc,wn=n.$_$.e2,xn=n.$_$.zb,kn=n.$_$.j4,jn=n.$_$.nb,Cn=n.$_$.r9,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.$_$.u9,Tn=n.$_$.b9,Bn=n.$_$.s5,Ln=n.$_$.ua,Nn=n.$_$.t6,Fn=n.$_$.ha,Rn=n.$_$.l4,Hn=n.$_$.x6,Un=n.$_$.ed,Vn=n.$_$.y,Wn=n.$_$.ab,Jn=n.$_$.m9,Kn=n.$_$.c9,Gn=n.$_$.l6,Yn=n.$_$.z5,Xn=n.$_$.k4,Zn=n.$_$.x9,Qn=n.$_$.e9,te=n.$_$.c4,ne=n.$_$.z9,ee=n.$_$.d4,oe=n.$_$.aa,re=n.$_$.da,ie=n.$_$.p4,se=n.$_$.n3,ae=n.$_$.vc,ue=n.$_$.j3,ce=n.$_$.g3,le=n.$_$.l3,he=n.$_$.h3,pe=n.$_$.e4,fe=n.$_$.ba,_e=n.$_$.o4,de=n.$_$.e3,ve=n.$_$.tc,ye=n.$_$.a3,me=n.$_$.x2,ge=n.$_$.c3,$e=n.$_$.y2,be=n.$_$.f4,we=n.$_$.fa,xe=n.$_$.q4,ke=n.$_$.w3,je=n.$_$.xc,Ce=n.$_$.s3,ze=n.$_$.p3,Se=n.$_$.u3,qe=n.$_$.q3,Oe=n.$_$.b4,Pe=n.$_$.w9,Me=n.$_$.n4,Ae=n.$_$.v2,Ee=n.$_$.rc,Ie=n.$_$.s2,De=n.$_$.o2,Te=n.$_$.t2,Be=n.$_$.p2,Le=n.$_$.a4,Ne=n.$_$.v9,Fe=n.$_$.ra,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.$_$.zc,co=n.$_$.wb,lo=n.$_$.fb,ho=n.$_$.g9,po=n.$_$.f9,fo=n.$_$.j2,_o=n.$_$.jb,vo=n.$_$.hb,yo=n.$_$.i4,mo=n.$_$.wc,go=n.$_$.uc,$o=n.$_$.yc,bo=n.$_$.sc,wo=n.$_$.f7,xo=n.$_$.a7,ko=n.$_$.y6,jo=n.$_$.bc,Co=n.$_$.ga,zo=n.$_$.b,So=n.$_$.w6,qo=n.$_$.y1,Oo=n.$_$.v6,Po=n.$_$.m4,Mo=n.$_$.k2,Ao=n.$_$.fd;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.$_$.ma,ot=n.$_$.f2,rt=e.$_$.i9,it=e.$_$.r4,st=e.$_$.qa,at=e.$_$.t1,ut=e.$_$.f9,ct=e.$_$.cc,lt=e.$_$.g2,ht=e.$_$.k9,pt=e.$_$.bc,ft=n.$_$.j1,_t=n.$_$.g1,dt=e.$_$.t9,vt=e.$_$.oc,yt=e.$_$.r9,mt=e.$_$.k,gt=e.$_$.g5,$t=e.$_$.n1,bt=e.$_$.i5,wt=e.$_$.c,xt=e.$_$.q9,kt=e.$_$.h,jt=e.$_$.kd,Ct=n.$_$.u1,zt=e.$_$.ob,St=e.$_$.qb,qt=e.$_$.mb,Ot=e.$_$.pb,Pt=e.$_$.lb,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.$_$.tb,Ut=e.$_$.p4,Vt=n.$_$.s,Wt=e.$_$.h3,Jt=e.$_$.wc,Kt=e.$_$.ca,Gt=e.$_$.w1,Yt=e.$_$.ld,Xt=n.$_$.y,Zt=n.$_$.x,Qt=n.$_$.w,tn=e.$_$.za,nn=e.$_$.p9,en=n.$_$.m1,on=n.$_$.h1,rn=e.$_$.oa,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.$_$.d9,vn=n.$_$.e2,yn=n.$_$.c,mn=e.$_$.g9,gn=e.$_$.h9,$n=e.$_$.ra,bn=e.$_$.sa,wn=n.$_$.k,xn=e.$_$.t,kn=e.$_$.r7,jn=e.$_$.b9,Cn=e.$_$.gd,zn=e.$_$.l6,Sn=e.$_$.t6,qn=e.$_$.h6,On=e.$_$.i6,Pn=e.$_$.m9,Mn=n.$_$.i,An=e.$_$.c1,En=e.$_$.ec,In=e.$_$.hd,Dn=e.$_$.v8,Tn=e.$_$.fc,Bn=e.$_$.zc,Ln=e.$_$.g8,Nn=(e.$_$.x8,n.$_$.n1),Fn=e.$_$.d,Rn=n.$_$.a2,Hn=e.$_$.ea,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.$_$.nd,ee=n.$_$.c2,oe=n.$_$.b,re=e.$_$.jc,ie=e.$_$.jd,se=e.$_$.id,ae=n.$_$.f1,ue=n.$_$.e1,ce=e.$_$.sb,le=e.$_$.y2,he=e.$_$.ub,pe=e.$_$.rb,fe=e.$_$.p2,_e=e.$_$.vb,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.$_$.q7,Se=e.$_$.ja,qe=e.$_$.i2,Oe=e.$_$.fb,Pe=e.$_$.na,Me=n.$_$.s1,Ae=e.$_$.r1,Ee=e.$_$.b4,Ie=e.$_$.f4,De=e.$_$.pa,Te=e.$_$.ib,Be=e.$_$.m6,Le=e.$_$.l7,Ne=e.$_$.y7,Fe=e.$_$.gc,Re=n.$_$.b1,He=e.$_$.b7,Ue=e.$_$.o7,Ve=e.$_$.o,We=e.$_$.kc,Je=e.$_$.h2,Ke=e.$_$.l4,Ge=e.$_$.e9,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.$_$.ma,ot=(n.$_$.s5,n.$_$.t9),rt=n.$_$.c1,it=n.$_$.t,st=n.$_$.p5,at=n.$_$.td,ut=n.$_$.oc,ct=n.$_$.lc,lt=n.$_$.i9,ht=n.$_$.gc,pt=n.$_$.qa,ft=n.$_$.w1,_t=e.$_$.d,dt=n.$_$.g9,vt=n.$_$.e1,yt=n.$_$.gd,mt=n.$_$.sd,gt=o.$_$.s,$t=o.$_$.o,bt=o.$_$.i,wt=o.$_$.r,xt=n.$_$.kb,kt=n.$_$.k9,jt=o.$_$.j,Ct=n.$_$.ka,zt=n.$_$.o9,St=n.$_$.r9,qt=n.$_$.ca,Ot=n.$_$.q9,Pt=n.$_$.y4,Mt=o.$_$.q,At=o.$_$.z,Et=n.$_$.ea,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.$_$.rd,Ut=n.$_$.ld,Vt=o.$_$.n,Wt=e.$_$.b,Jt=o.$_$.t,Kt=o.$_$.b,Gt=n.$_$.za,Yt=n.$_$.p9;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 r,o,i;o=[n,e(744)],void 0===(i="function"==typeof(r=function(t,n){"use strict";var e,r=n.$_$.ma,o=n.$_$.i9,i=n.$_$.ud;function s(){e=this,u.call(this)}function a(){return null==e&&new s,e}function u(){}function l(t){this.lo_1=t}function c(t){this.po_1=t}function h(t){this.mo_1=t}return s.prototype=Object.create(u.prototype),s.prototype.constructor=s,s.$metadata$=r("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,r){},u.$metadata$=o("TraceBase"),l.prototype.no=function(t){this.lo_1=t},l.prototype.oo=function(){return this.lo_1},l.prototype.atomicfu$compareAndSet=function(t,n){return this.lo_1===t&&(this.lo_1=n,!0)},l.prototype.atomicfu$getAndSet=function(t){var n=this.lo_1;return this.lo_1=t,n},l.prototype.toString=function(){return i(this.lo_1)},l.$metadata$=o("AtomicRef"),Object.defineProperty(l.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:l.prototype.oo,set:l.prototype.no}),c.prototype.qo=function(t){this.po_1=t},c.prototype.oo=function(){return this.po_1},c.prototype.atomicfu$compareAndSet=function(t,n){return this.po_1===t&&(this.po_1=n,!0)},c.prototype.atomicfu$getAndSet=function(t){var n=this.po_1;return this.po_1=t,n},c.prototype.toString=function(){return this.po_1.toString()},c.$metadata$=o("AtomicBoolean"),Object.defineProperty(c.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:c.prototype.oo,set:c.prototype.qo}),h.prototype.ro=function(t){this.mo_1=t},h.prototype.oo=function(){return this.mo_1},h.prototype.atomicfu$compareAndSet=function(t,n){return this.mo_1===t&&(this.mo_1=n,!0)},h.prototype.atomicfu$getAndSet=function(t){var n=this.mo_1;return this.mo_1=t,n},h.prototype.atomicfu$getAndIncrement=function(){var t=this.mo_1;return this.mo_1=t+1|0,t},h.prototype.atomicfu$getAndDecrement=function(){var t=this.mo_1;return this.mo_1=t-1|0,t},h.prototype.atomicfu$getAndAdd=function(t){var n=this.mo_1;return this.mo_1=this.mo_1+t|0,n},h.prototype.atomicfu$addAndGet=function(t){return this.mo_1=this.mo_1+t|0,this.mo_1},h.prototype.atomicfu$incrementAndGet=function(){var t=this;return t.mo_1=t.mo_1+1|0,t.mo_1},h.prototype.atomicfu$decrementAndGet=function(){var t=this;return t.mo_1=t.mo_1-1|0,t.mo_1},h.prototype.toString=function(){return this.mo_1.toString()},h.$metadata$=o("AtomicInt"),Object.defineProperty(h.prototype,"kotlinx$atomicfu$value",{configurable:!0,get:h.prototype.oo,set:h.prototype.ro}),o("ReentrantLock"),t.$_$=t.$_$||{},t.$_$.a=function(t){return function(t,n){return new c(t)}(t,a())},t.$_$.b=function(t){return function(t,n){return new l(t)}(t,a())},t.$_$.c=function(t){return function(t,n){return new h(t)}(t,a())},t})?r.apply(n,o):r)||(t.exports=i)},769:function(t,n,e){var r,o;r=[n,e(744),e(646)],void 0===(o=function(t,n,e){"use strict";var r,o,i,s,a,u,l,c,h,p,f,_,d,v,y,m,g,b,$,w,x,k,j,C,S,z,q,O,P,M,A,E,I,D,T,B,L,R,N,F,H,U,V,W,K,J,G,Y,X,Z,Q,tt,nt,et,rt,ot,it,st,at,ut,lt,ct,ht,pt,ft,_t,dt,vt,yt,mt,gt,bt=Math.imul,$t=n.$_$.t9,wt=n.$_$.r4,xt=n.$_$.qa,kt=n.$_$.i9,jt=n.$_$.t,Ct=n.$_$.qc,St=n.$_$.ea,zt=n.$_$.w1,qt=n.$_$.rd,Ot=n.$_$.sd,Pt=n.$_$.m4,Mt=n.$_$.k2,At=n.$_$.hd,Et=n.$_$.td,It=n.$_$.i8,Dt=e.$_$.n,Tt=e.$_$.i,Bt=n.$_$.q8,Lt=n.$_$.p8,Rt=n.$_$.r8,Nt=n.$_$.u8,Ft=n.$_$.ca,Ht=n.$_$.k9,Ut=n.$_$.e1,Vt=n.$_$.j,Wt=n.$_$.w,Kt=n.$_$.r9,Jt=n.$_$.ic,Gt=n.$_$.k6,Yt=n.$_$.b8,Xt=n.$_$.s7,Zt=n.$_$.fc,Qt=n.$_$.s,tn=n.$_$.vd,nn=n.$_$.e8,en=n.$_$.ma,rn=n.$_$.t1,on=n.$_$.nd,sn=n.$_$.p6,an=n.$_$.j9,un=n.$_$.ab,ln=n.$_$.p9,cn=n.$_$.u9,hn=n.$_$.o5,pn=n.$_$.id,fn=n.$_$.z,_n=n.$_$.k7,dn=e.$_$.k,vn=e.$_$.e,yn=e.$_$.f,mn=n.$_$.ud,gn=n.$_$.t8,bn=n.$_$.s8,$n=n.$_$.q9,wn=n.$_$.y4,xn=n.$_$.q5,kn=n.$_$.v8,jn=e.$_$.l,Cn=n.$_$.g8,Sn=e.$_$.c,zn=n.$_$.v,qn=n.$_$.y7,On=n.$_$.s6,Pn=e.$_$.h,Mn=n.$_$.i1,An=n.$_$.f8,En=n.$_$.dd,In=e.$_$.o,Dn=e.$_$.b,Tn=n.$_$.i,Bn=n.$_$.mc,Ln=e.$_$.g,Rn=e.$_$.m,Nn=n.$_$.c1,Fn=n.$_$.n7,Hn=(n.$_$.w8,n.$_$.x8,n.$_$.r5),Un=n.$_$.n6,Vn=n.$_$.m9,Wn=n.$_$.e4,Kn=n.$_$.c5,Jn=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,re=n.$_$.i5,oe=n.$_$.z1,ie=n.$_$.f5,se=n.$_$.t4,ae=n.$_$.ta,ue=n.$_$.b9,le=n.$_$.v4,ce=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.$_$.wa,ge=n.$_$.va,be=n.$_$.fd,$e=n.$_$.p1,we=n.$_$.y1,xe=n.$_$.n1,ke=n.$_$.y,je=n.$_$.ec,Ce=n.$_$.y9,Se=n.$_$.x5,ze=n.$_$.e,qe=n.$_$.r7,Oe=n.$_$.cb,Pe=n.$_$.s9,Me=n.$_$.l4,Ae=n.$_$.x7,Ee=n.$_$.eb,Ie=n.$_$.a9,De=n.$_$.w5,Te=n.$_$.c2,Be=n.$_$.g,Le=n.$_$.cc,Re=n.$_$.f2,Ne=n.$_$.j1;function Fe(){}function He(){}function Ue(){return Pi()}function Ve(){}function We(t,n){this.k11_1=t,this.l11_1=n,this.m11_1=0}function Ke(t){this.n11_1=t;var n;n=jt(),this.o11_1=n,this.p11_1=this.n11_1,this.q11_1=8}function Je(t,n){this.t11_1=t,this.u11_1=n}function Ge(t){this.x11_1=t,this.y11_1=Va(),this.z11_1=null;var n;n=jt(),this.a12_1=n;var e;e=jt(),this.b12_1=e,this.c12_1=8}function Ye(){return Jo(),r}function Xe(){return Jo(),s}function Ze(){return Jo(),l}function Qe(){return Jo(),c}function tr(){}function nr(t,n){Jo();for(var e=t.j13();e.d();){var r=e.e(),o=r;if(null!=o&&Ft(o,xs))n.n12(r);else if(o instanceof Ti){var i=r.l13_1;null!=i&&(i.e14_1=!0,r.qt())}}t.m14()}function er(t){var n;t.t15_1=t.p14_1.v16(),or(t,100),t.o14_1.x16(),t.h15_1=t.o14_1.y16(),t.k15_1.b17((n=t.j15_1,Jo(),n?1:0)),t.j15_1=t.l12(t.h15_1),t.x15_1=null,t.c15_1||(t.c15_1=t.o14_1.c17());var e=function(t,n,e){return function(t,n){return Jo(),t.v2(n instanceof vi?n:Ct())}(e,n)?function(t,n){Jo();var e=t.b3(n instanceof vi?n:Ct()),r=null==e?null:e.n2();return null==r||St(r)?r:Ct()}(e,n):n.y17_1.n2()}(0,(Ah(),_t),t.h15_1);null==e||(e.a(t.p14_1),t.o14_1.d17(e),wt()),or(t,t.o14_1.e17())}function rr(t){sr(t),t.o14_1.f17(),sr(t),function(t){t.f16_1&&(Mr(t,!1,Xe(),2),t.f16_1=!1)}(t),function(t){Ar(t),t.u14_1.h()||Po(xt("Start/end imbalance")),t.h16_1.h()||Po(xt("Missed recording an endGroup()")),Hr(t)}(t),t.t15_1.r17(),t.d15_1=!1}function or(t,n){return cr(t,n,null,!1,null)}function ir(t,n,e){return cr(t,n,e,!1,null)}function sr(t){return pr(t,!1)}function ar(t,n){if(null==n){var e=t.x15_1;if(null!=e)return e}if(t.a16_1&&t.w15_1)for(var r=t.v15_1.g13_1;r>0;){if(202===t.v15_1.w17(r)&&Ht(t.v15_1.v17(r),Qe())){var o=t.v15_1.u17(r),i=null!=o&&Ft(o,_u)?o:Ct();return t.x15_1=i,i}r=t.v15_1.x17(r)}if(t.t15_1.f()>0)for(var s=n,a=null==s?t.t15_1.n17_1:s;a>0;){if(202===t.t15_1.w17(a)&&Ht(t.t15_1.v17(a),Qe())){var u,l=t.i15_1.b3(a);if(null==l){var c=t.t15_1.u17(a);u=null!=c&&Ft(c,_u)?c:Ct()}else u=l;var h=u;return t.x15_1=h,h}a=t.t15_1.x17(a)}return t.x15_1=t.h15_1,t.h15_1}function ur(t){go(t.v15_1.h13_1),t.u15_1=new ra;var n,e=t,r=t.u15_1.a18();r.r17(),n=r,e.v15_1=n}function lr(t,n,e){var r;n?t.t15_1.e18():(null!=e&&t.t15_1.c18()!==e&&Mr(t,!1,(r=e,function(t,n,e){return n.t1b(r),wt()}),2),t.t15_1.d18())}function cr(t,n,e,r,o){if(Sr(t),Kr(t,n,e,o),t.a16_1){t.t15_1.f18();var i=t.v15_1.f13_1;if(r)t.v15_1.i18(fo().j12_1);else if(null!=o){var s=e;t.v15_1.h18(n,null==s?fo().j12_1:s,o)}else{var a=e;t.v15_1.g18(n,null==a?fo().j12_1:a)}var u=t.v14_1;if(null==u);else{var l=new Ma(n,-1,_r(0,i),-1,0);u.p18(l,t.w14_1-u.k18_1|0),u.q18(l)}return hr(t,r,null),wt()}null==t.v14_1&&(t.t15_1.r18()===n&&Ht(e,t.t15_1.t18())?lr(t,r,o):t.v14_1=new jo(t.t15_1.s18(),t.w14_1));var c,h=t.v14_1,p=null;if(null!=h){var f=h.u18(n,e);if(null!=f){h.q18(f);var _=f.z18_1;t.w14_1=h.c19(f)+h.k18_1|0;var d=h.d19(f),v=d-h.l18_1|0;h.e19(d,h.l18_1),Nr(t,_),t.t15_1.f19(_),v>0&&Or(t,(c=v,function(t,n,e){return n.u1b(c),wt()})),lr(t,r,o)}else{t.t15_1.f18(),t.a16_1=!0,t.x15_1=null,function(t){t.v15_1.h13_1&&(t.v15_1=t.u15_1.a18(),t.v15_1.b18(),t.w15_1=!1,t.x15_1=null)}(t),t.v15_1.v18();var y=t.v15_1.f13_1;if(r)t.v15_1.i18(fo().j12_1);else if(null!=o){var m=e;t.v15_1.h18(n,null==m?fo().j12_1:m,o)}else{var g=e;t.v15_1.g18(n,null==g?fo().j12_1:g)}t.y15_1=t.v15_1.w18(y);var b=new Ma(n,-1,_r(0,y),-1,0);h.p18(b,t.w14_1-h.k18_1|0),h.q18(b),p=new jo(jt(),r?0:t.w14_1)}}hr(t,r,p)}function hr(t,n,e){t.u14_1.g19(t.v14_1),t.v14_1=e,t.x14_1.b17(t.w14_1),n&&(t.w14_1=0),t.z14_1.b17(t.y14_1),t.y14_1=0}function pr(t,n){if(t.a16_1){var e=t.v15_1.g13_1;Gr(t,t.v15_1.w17(e),t.v15_1.v17(e),t.v15_1.u17(e))}else{var r=t.t15_1.n17_1;Gr(t,t.t15_1.w17(r),t.t15_1.v17(r),t.t15_1.u17(r))}var o=t.y14_1,i=t.v14_1;if(null!=i&&i.j18_1.f()>0){for(var s=i.j18_1,a=i.i19(),u=function(t){var n=ke(t.f()),e=0,r=t.f()-1|0;if(e<=r)do{var o=e;e=e+1|0;var i=t.g(o);n.a(i)}while(e<=r);return n}(a),l=Ut(),c=0,h=a.f(),p=0,f=s.f(),_=0;p0&&(Nr(t,t.t15_1.n19()),t.t15_1.b18())}for(var g=t.w14_1;!t.t15_1.o19();){var b=t.t15_1.l17_1;Rr(t);var $=t.t15_1.t17();Ur(t,g,$),So(t.f15_1,b,t.t15_1.l17_1)}var w=t.a16_1;if(w){n&&(function(t){t.z15_1.a(t.i16_1.h19())}(t),o=1),t.t15_1.q19();var x=t.v15_1.g13_1;if(t.v15_1.r19(),!t.t15_1.t19()){var k=_r(0,x);t.v15_1.s19(),t.v15_1.r17(),function(t,n){if(t.z15_1.h())Or(t,(r=t.u15_1,o=n,function(t,n,e){return n.v18(),n.o1c(r,o.n1c(r)),n.s19(),wt()}));else{var e=Yt(t.z15_1);t.z15_1.s7(),Ar(t),Ir(t),Or(t,function(t,n,e){return function(r,o,i){var s=t.a18();try{var a=0,u=n.f()-1|0;if(a<=u){do{var l=a;a=a+1|0,n.g(l)(r,s,i)}while(a<=u);wt()}}finally{s.r17()}return o.v18(),o.o1c(t,e.n1c(t)),o.s19(),wt()}}(t.u15_1,e,n))}var r,o}(t,t.y15_1),t.a16_1=!1,t.p14_1.fu()||(mr(t,k,0),dr(t,k,o))}}else{n&&Tr(t),function(t){var n=t.t15_1.n17_1;t.h16_1.s1a(-1)<=n||Po(xt("Missed recording an endGroup")),t.h16_1.s1a(-1)===n&&(t.h16_1.h19(),Mr(t,!1,Xe(),2))}(t);var j=t.t15_1.n17_1;o!==yr(t,j)&&dr(t,j,o),n&&(o=1),t.t15_1.p19(),Wr(t)}!function(t,n,e){var r=t.u14_1.h19();if(null!=r&&!e){var o=r,i=o.l18_1;o.l18_1=i+1|0}t.v14_1=r,t.w14_1=t.x14_1.h19()+n|0,t.y14_1=t.z14_1.h19()+n|0}(t,o,w)}function fr(t){var n=t.r15_1;t.r15_1=!0;for(var e=!1,r=t.t15_1.n17_1,o=r+t.t15_1.k19(r)|0,i=t.w14_1,s=t.b16_1,a=t.y14_1,u=r,l=zo(t.f15_1,t.t15_1.l17_1,o);null!=l;){var c=l.v19_1;if(qo(t.f15_1,c),l.a1a()){e=!0,t.t15_1.f19(c);var h=t.t15_1.l17_1;gr(t,u,h,r),u=h,t.w14_1=vr(t,c,h,r,i),t.b16_1=$r(t,t.t15_1.x17(h),r,s),t.x15_1=null,l.u19_1.y19(t),t.x15_1=null,t.t15_1.z19(r)}else t.q15_1.g19(l.u19_1),l.u19_1.x19(),t.q15_1.h19();l=zo(t.f15_1,t.t15_1.l17_1,o)}if(e){gr(t,u,r,r),t.t15_1.b18();var p=yr(t,r);t.w14_1=i+p|0,t.y14_1=a+p|0}else wr(t);t.b16_1=s,t.r15_1=n}function _r(t,n){return-2-n|0}function dr(t,n,e){var r=yr(t,n);if(r!==e){var o=e-r|0,i=n,s=t.u14_1.f()-1|0;t:for(;-1!==i;){var a=yr(t,i)+o|0;mr(t,i,a);var u=s;if(0<=u)n:do{var l=u;u=u+-1|0;var c=t.u14_1.b1a(l);if(null!=c&&c.j19(i,a)){s=l-1|0;break n}}while(0<=u);if(i<0)i=t.t15_1.n17_1;else{if(t.t15_1.c1a(i))break t;i=t.t15_1.x17(i)}}}}function vr(t,n,e,r,o){for(var i=t.t15_1.x17(e);i!==r&&!t.t15_1.c1a(i);)i=t.t15_1.x17(i);var s=t.t15_1.c1a(i)?0:o;if(i===e)return s;var a=i,u=s+(yr(t,i)-t.t15_1.d1a(e)|0)|0;t:for(;s=0)return i}return t.t15_1.d1a(n)}function mr(t,n,e){if(yr(t,n)!==e)if(n<0){var r,o=t.b15_1;if(null==o){var i=Wt();t.b15_1=i,r=i}else r=o;r.n(n,e)}else{var s,a=t.a15_1;if(null==a){var u=new Int32Array(t.t15_1.f());Vt(u,-1,0,0,6,null),t.a15_1=u,s=u}else s=a;s[n]=e}}function gr(t,n,e,r){for(var o=t.t15_1,i=function(t,n,e,r){if(Jo(),n===e)return n;if(n===r||e===r)return r;if(t.x17(n)===e)return e;if(t.x17(e)===n)return n;if(t.x17(n)===t.x17(e))return t.x17(n);var o=n,i=e,s=To(t,n,r),a=To(t,e,r),u=s-a|0,l=0;if(l0&&s!==i;)o.c1a(s)&&Tr(t),s=o.x17(s);br(t,e,i)}function br(t,n,e){var r,o;n>0&&n!==e&&(br(t,t.t15_1.x17(n),e),t.t15_1.c1a(n)&&Dr(t,(r=t.t15_1,o=n,r.p1a(o))))}function $r(t,n,e,r){var o;if(n===e)o=r;else{var i,s=function(t,n,e){var r;if(t.e1a(e)){var o,i=t.v17(e);if(null==i)o=null;else{var s=i;o=s instanceof Jt?i.t1_1:s instanceof xo?Ai():Kt(i)}r=null==o?0:o}else{var a,u=t.w17(e);if(207===u){var l,c=t.u17(e);a=null==(l=null==c?null:Ht(c,fo().j12_1)?u:Kt(c))?u:l}else a=u;r=a}return r}(t.t15_1,0,n);if(s===Ai())i=s;else{var a=$r(t,t.t15_1.x17(n),e,r);i=qt(a,3)^s}o=i}return o}function wr(t){t.y14_1=t.t15_1.f1a(),t.t15_1.b18()}function xr(t,n,e,r,o){t.j1a(Ai(),n),t.l12(r);var i=t.b16_1;t.b16_1=Ai(),t.a16_1&&t.v15_1.k1a(0,1,null);var s,a,u,l=!t.a16_1&&!Ht(t.t15_1.c18(),e);if(l){var c=t.i15_1,h=t.t15_1.l17_1;c.n(h,e)}if(cr(t,202,Qe(),!1,e),t.a16_1&&!o){t.w15_1=!0,t.x15_1=null;var p=t.v15_1.w18(t.v15_1.x17(t.v15_1.g13_1)),f=t.u15_1,_=Gt(),d=new mo(n,r,t.t14_1,f,p,_,function(t,n,e,r){return 0!=(2&e)&&(n=null),ar(t,n)}(t,null,2));t.o14_1.l1a(d)}else{var v=t.j15_1;t.j15_1=l,Hh(t,(s=lc(1378964644,!0,(a=n,u=r,function(t,n){var e=t;return $o(e,"C2821@107760L18:Composer.kt#9igjgp"),2==(11&n)&&e.x1b()?(e.b18(),wt()):a.w1b_1(u,e,0),wt()})),function(t,n){return s.v1b(t,n)})),t.j15_1=v}sr(t),t.b16_1=i,t.m1a()}function kr(t,n,e,r,o,i){var s=t.g16_1,a=t.r15_1,u=t.w14_1;try{t.g16_1=!1,t.r15_1=!0,t.w14_1=0;var l,c=0,h=o.f()-1|0;if(c<=h)do{var p=c;c=c+1|0;var f=o.g(p),_=f.l4(),d=f.m4();if(null!=d)for(var v=d.c();v.d();){var y=v.e();t.n1a(_,y)}else t.n1a(_,null)}while(c<=h);if(null==n)l=null;else{var m=r;l=n.o1a(e,null==m?-1:m,i)}var g=l;return null==g?i():g}finally{t.g16_1=s,t.r15_1=a,t.w14_1=u}}function jr(t,n,e,r,o,i,s,a){return 0!=(2&s)&&(n=null),0!=(4&s)&&(e=null),0!=(8&s)&&(r=null),0!=(16&s)&&(o=Gt()),kr(t,n,e,r,o,i)}function Cr(t){t.e15_1||Po(xt("A call to createNode(), emitNode() or useNode() expected was not expected")),t.e15_1=!1}function Sr(t){!t.e15_1||Po(xt("A call to createNode(), emitNode() or useNode() expected"))}function zr(t,n){t.r14_1.a(n)}function qr(t,n){Ar(t),Ir(t),zr(t,n)}function Or(t,n){(function(t,n,e,r){0!=(2&e)&&(n=!1),Br(t,n)})(t,!1,2),Fr(t),zr(t,n)}function Pr(t,n,e){Br(t,n),zr(t,e)}function Mr(t,n,e,r,o){return 0!=(2&r)&&(n=!1),Pr(t,n,e)}function Ar(t){var n,e=t.c16_1;e>0&&(t.c16_1=0,zr(t,(n=e,function(t,e,r){var o=0;if(o=0||Po(xt("Tried to seek backward")),o>0&&(zr(t,(e=o,function(t,n,r){return n.m1c(e),wt()})),t.e16_1=r)}function Lr(t,n){t.z15_1.a(n)}function Rr(t){(function(t,n){to(t,n,!1,0),Wr(t)})(t,t.t15_1.l17_1),Or(t,(Jo(),o));var n=t;n.e16_1=n.e16_1+t.t15_1.r1a()|0}function Nr(t,n){var e=t.t15_1.l17_1-t.e16_1|0;t.e16_1=n-e|0}function Fr(t){if(t.t15_1.f()>0){var n=t.t15_1,e=n.n17_1;if(t.h16_1.s1a(-1)!==e){!t.f16_1&&t.g16_1&&(Mr(t,!1,(Jo(),a),2),t.f16_1=!0);var r=n.w18(e);t.h16_1.b17(e),Mr(t,!1,(o=r,function(t,n,e){return n.p1c(o),wt()}),2)}}var o}function Hr(t){t.v14_1=null,t.w14_1=0,t.y14_1=0,t.e16_1=0,t.b16_1=0,t.e15_1=!1,t.f16_1=!1,t.h16_1.s7(),t.q15_1.s7(),function(t){t.a15_1=null,t.b15_1=null}(t)}function Ur(t,n,e){if(e>0)if(n>=0||Po(xt("Invalid remove index "+n)),t.j16_1===n){var r=t;r.m16_1=r.m16_1+e|0}else Wr(t),t.j16_1=n,t.m16_1=e}function Vr(t,n,e,r){if(r>0)if(t.m16_1>0&&t.k16_1===(n-t.m16_1|0)&&t.l16_1===(e-t.m16_1|0)){var o=t;o.m16_1=o.m16_1+r|0}else Wr(t),t.k16_1=n,t.l16_1=e,t.m16_1=r}function Wr(t){var n,e,r=t.m16_1;if(t.m16_1=0,r>0)if(t.j16_1>=0){var o=t.j16_1;t.j16_1=-1,qr(t,(n=o,e=r,function(t,r,o){return t.i11(n,e),wt()}))}else{var i=t.k16_1;t.k16_1=-1;var s=t.l16_1;t.l16_1=-1,qr(t,function(t,n,e){return function(r,o,i){return r.j11(t,n,e),wt()}}(i,s,r))}}function Kr(t,n,e,r){null==e?null==r||207!==n||Ht(r,fo().j12_1)?Jr(t,n):Jr(t,Kt(r)):Jr(t,e instanceof Jt?e.t1_1:Kt(e))}function Jr(t,n){var e,r=t,o=t.b16_1;e=qt(o,3),r.b16_1=e^n}function Gr(t,n,e,r){null==e?null==r||207!==n||Ht(r,fo().j12_1)?Yr(t,n):Yr(t,Kt(r)):Yr(t,e instanceof Jt?e.t1_1:Kt(e))}function Yr(t,n){var e,r=t,o=t.b16_1^n;e=Ot(o,3),r.b16_1=e}function Xr(t,n,e){!t.r15_1||Po(xt("Reentrant composition is not supported"));t:{var r=Fh().t1a("Compose:recompose");try{t.o15_1=Hc(),t.p15_1=t.o15_1.z1a(),t.i15_1.s7();var o=0,i=n.c1b_1;if(o1&&(_=new Zr(lo),Xt(d,_)),t.w14_1=0;var v=!1;t.r15_1=!0;try{er(t);var y=t.e1b();y!==e&&null!=e&&t.g1a(null==e||St(e)?e:Ct()),function(t,n,e){$i();var r=gi().mu();try{var o=gi(),i=gi().mu();o.s1h((null==i?gu():i).a(tn(t,n))),e()}finally{gi().s1h(r)}}((m=t,function(t){var n=m,e=n.n15_1;return n.n15_1=e+1|0,wt()}),function(t){return function(n){var e=t,r=e.n15_1;return e.n15_1=r-1|0,wt()}}(t),function(t,n,e){return function(){return null!=t?(ir(n,200,Ze()),Hh(n,t),sr(n),wt()):n.d15_1&&null!=e&&!Ht(e,fo().j12_1)?(ir(n,200,Ze()),Hh(n,null!=e&&"function"==typeof e?e:Ct()),sr(n),wt()):(n.q1c(),wt()),wt()}}(e,t,y)),rr(t),v=!0,wt()}finally{t.r15_1=!1,t.f15_1.s7(),v||function(t){Hr(t),t.u14_1.s7(),t.x14_1.s7(),t.z14_1.s7(),t.g15_1.s7(),t.k15_1.s7(),t.i15_1.s7(),t.t15_1.r17(),t.b16_1=0,t.n15_1=0,t.e15_1=!1,t.r15_1=!1,t.d15_1=!1}(t)}break t}finally{Fh().f1b(r)}}var m}function Zr(t){this.g1b_1=t}function Qr(t,n,e){for(;!t.h1b(e);)t.b18(),t.c1a(t.g13_1)&&n.f11(),t.r19()}function to(t,n,e,r){var o;if(t.t15_1.p1b(n)){var i=t.t15_1.v17(n),s=i instanceof xo?i:Ct(),a=t.t15_1.n1b(n,0),u=t.t15_1.w18(n),l=n+t.t15_1.k19(n)|0,c=function(t,n,e){Jo();var r=jt(),o=Io(t,n);t:for(;o0&&Ur(t,r,b),y=0}else y=t.t15_1.d1a(n);o=y}else if(t.t15_1.m1b(n)){for(var $=n+t.t15_1.k19(n)|0,w=n+1|0,x=0;w<$;){var k=t.t15_1.c1a(w);k&&(Wr(t),Dr(t,t.t15_1.p1a(w))),x=x+to(t,w,!!k||e,k?0:r+x|0)|0,k&&(Wr(t),Tr(t)),w=w+t.t15_1.k19(w)|0}o=x}else o=t.t15_1.d1a(n);return o}function no(t,n){return function(e,r,o){return Ft(e,Ve)||Ct(),t._v=function(t,n,e){var r=t.j1b(n);go(t.f13_1=0&&!t.c1a(e);)e=t.x17(e);var r=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,r,o)}while(s<=a);wt()}return wt()}}function oo(t,n){return function(e,r,o){var i=t._v,s=0,a=n.f()-1|0;if(s<=a){do{var u=s;s=s+1|0;var l=n.g(u);Ft(e,Ve)||Ct(),e.h11(i+u|0,l),e.g11(i+u|0,l)}while(s<=a);wt()}return wt()}}function io(t,n,e){return function(r,o,i){var s,a=t.o14_1.g1c(n);null==a?Po("Could not resolve state for movable content"):s=a;var u=s,l=o.j1c(1,u.h1c_1,1);if(!l.h()){var c=e.a1c_1,h=c instanceof ai?c:Ct(),p=0,f=l.f()-1|0;if(p<=f){do{var _=p;p=p+1|0;var d=l.g(_),v=o.k1c(d,0),y=v instanceof Ti?v:null;null==y||y.l1c(h)}while(p<=f);wt()}}return wt()}}function so(t,n){return function(){return xr(t,n.y1b_1,n.e1c_1,n.z1b_1,!0),wt()}}function ao(t,n){return function(e,r,o){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,r,o)}while(s<=a);wt()}return wt()}}function uo(t,n,e){return Ft(t,Ve)||Ct(),Qr(n,t,0),n.r19(),wt()}function lo(t,n){var e,r=t.v19_1;return e=n.v19_1,nn(r,e)}function co(t,n,e,r,o,i,s){this.n14_1=t,this.o14_1=n,this.p14_1=e,this.q14_1=r,this.r14_1=o,this.s14_1=i,this.t14_1=s,this.u14_1=new Ha,this.v14_1=null,this.w14_1=0,this.x14_1=new Fa,this.y14_1=0,this.z14_1=new Fa,this.a15_1=null,this.b15_1=null,this.c15_1=!1,this.d15_1=!1,this.e15_1=!1;var a;a=jt(),this.f15_1=a,this.g15_1=new Fa,this.h15_1=mu(),this.i15_1=Wt(),this.j15_1=!1,this.k15_1=new Fa,this.l15_1=!1,this.m15_1=-1,this.n15_1=0,this.o15_1=Hc(),this.p15_1=0,this.q15_1=new Ha,this.r15_1=!1,this.s15_1=!1;var u,l=this.p14_1.v16();l.r17(),u=l,this.t15_1=u,this.u15_1=new ra;var c,h=this.u15_1.a18();h.r17(),c=h,this.v15_1=c,this.w15_1=!1,this.x15_1=null;var p,f,_=this.u15_1.v16();try{f=_.w18(0)}finally{_.r17()}p=f,this.y15_1=p;var d;d=jt(),this.z15_1=d,this.a16_1=!1,this.b16_1=0,this.c16_1=0,this.d16_1=new Ha,this.e16_1=0,this.f16_1=!1,this.g16_1=!0,this.h16_1=new Fa,this.i16_1=new Ha,this.j16_1=-1,this.k16_1=-1,this.l16_1=-1,this.m16_1=0}function ho(){}function po(){h=this,this.j12_1=new ho}function fo(){return null==h&&new po,h}function _o(){}function vo(){if(v)return wt();v=!0,p=new yo("IGNORED",0),f=new yo("SCHEDULED",1),_=new yo("DEFERRED",2),d=new yo("IMMINENT",3)}function yo(t,n){Jt.call(this,t,n)}function mo(t,n,e,r,o,i,s){this.y1b_1=t,this.z1b_1=n,this.a1c_1=e,this.b1c_1=r,this.c1c_1=o,this.d1c_1=i,this.e1c_1=s,this.f1c_1=8}function go(t){return Jo(),void(t||Po(xt("Check failed")))}function bo(t){this.h1c_1=t,this.i1c_1=8}function $o(t,n){Jo(),t.v1d(n)}function wo(){}function xo(){}function ko(t){return function(){var n,e=(Jo(),Wt()),r=0,o=t.j18_1.f();if(r=0))throw rn(xt("Invalid start index"));var e;e=jt(),this.m18_1=e;var r,o=0,i=Wt(),s=0,a=this.j18_1.f();if(s=0?t.n4(e):null}function Oo(t,n){Jo();var e=jt(),r=t.v16();try{Ro(r,e,t.j1b(n)),wt()}finally{r.r17()}return e}function Po(t){throw Jo(),zt(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 Mo(t,n,e){this.p1e_1=t,this.q1e_1=n,this.r1e_1=e}function Ao(t,n,e){Jo();var r,o=t.b3(n);if(null==o){var i=Ut();t.n(n,i),r=i}else r=o;return r.a(e)}function Eo(t,n){Jo();var e,r=t.b3(n),o=null==r?null:sn(r);return null==o?e=null:(function(t,n,e){Jo();var r,o=t.b3(n);null==o?r=null:(o.lf(e),o.h()&&(t.qg(n),wt()),r=wt())}(t,n,o),e=o),e}function Io(t,n){Jo();var e=Do(t,n);return e<0?0|-(e+1|0):e}function Do(t,n){Jo();for(var e=0,r=t.f()-1|0;e<=r;){var o=(e+r|0)>>>1|0,i=t.g(o),s=an(i.v19_1,n);if(s<0)e=o+1|0;else{if(!(s>0))return o;r=o-1|0}}return 0|-(e+1|0)}function To(t,n,e){Jo();for(var r=0,o=n;o>0&&o!==e;)o=t.x17(o),r=r+1|0;return r}function Bo(t){this.g1f_1=t}function Lo(t){this.h1f_1=t}function Ro(t,n,e){if(t.c1a(e))n.a(t.p1a(e));else for(var r=e+1|0,o=e+t.k19(e)|0;r=0)for(var u=ou(s,a).c();u.d();)si(t,e,r,u.e())}}if(e&&!t.y13_1.h()){var l=t.x13_1,c=0,h=0,p=l.r1f_1;if(h0){if(c!==f){var S=l.o1f_1[c];l.o1f_1[c]=_,l.o1f_1[f]=S}c=c+1|0}}while(h0){if(A!==D){var J=M.o1f_1[A];M.o1f_1[A]=T,M.o1f_1[D]=J}A=A+1|0}}while(E0){if(e!==i){var y=n.o1f_1[e];n.o1f_1[e]=s,n.o1f_1[i]=y}e=e+1|0}}while(r=0)for(var o=ou(e,r).c();o.d();){var i=o.e();i.n1f(n).equals(Ko())&&t.c14_1.u1f(n,i)}}function ei(t,n){var e=new ii(t.v13_1);try{if(n.h())return wt();t:{var r=Fh().t1a("Compose:applyChanges");try{t.s13_1.c11();var o=t.w13_1.a18();try{var i=t.s13_1,s=0,a=n.f()-1|0;if(s<=a)do{var u=s;s=s+1|0,n.g(u)(i,o,e)}while(s<=a);n.s7(),wt()}finally{o.r17()}t.s13_1.d11(),wt();break t}finally{Fh().f1b(r)}}if(e.z1f(),e.a1g(),t.e14_1)t:{var l=Fh().t1a("Compose:unobserve");try{t.e14_1=!1;var c=t.x13_1,h=0,p=0,f=c.r1f_1;if(p0){if(h!==_){var C=c.o1f_1[h];c.o1f_1[h]=d,c.o1f_1[_]=C}h=h+1|0}}while(p=0)for(var s=ou(o,i).c();s.d();){var a=s.e();if(!t.c14_1.k1g(r,a)&&!a.n1f(r).equals(Wo()))if(a.t1f()&&!n)t.y13_1.a(a);else{var u,l=e._v;if(null==l){var c=fn();e._v=c,u=c}else u=l;u.a(a)}}}function ai(t,n,e){this.r13_1=t,this.s13_1=n,this.t13_1=new Eh(null),this.u13_1=Va(),this.v13_1=fn(),this.w13_1=new ra,this.x13_1=new au,this.y13_1=fn(),this.z13_1=new au;var r;r=jt(),this.a14_1=r;var o;o=jt(),this.b14_1=o,this.c14_1=new au,this.d14_1=Ya(0,1,null),this.e14_1=!1,this.f14_1=null,this.g14_1=0;var i,s=new co(this.s13_1,this.r13_1,this.w13_1,this.v13_1,this.a14_1,this.b14_1,this);this.r13_1.l1g(s),i=s,this.h14_1=i,this.i14_1=e;var a=this.r13_1;this.j14_1=a instanceof gs,this.k14_1=!1,this.l14_1=(null==g&&new hi,g).m1g_1}function ui(){}function li(t,n){var e=t;return $o(e,"C:Composition.kt#9igjgp"),2==(11&n)&&e.x1b()&&e.b18(),wt()}function ci(t,n){var e=t;return $o(e,"C:Composition.kt#9igjgp"),2==(11&n)&&e.x1b()&&e.b18(),wt()}function hi(){var t;g=this,this.m1g_1=(t=lc(954879418,!1,li),function(n,e){return t.v1b(n,e)}),this.n1g_1=function(t){return function(n,e){return t.v1b(n,e)}}(lc(1918065384,!1,ci))}function pi(){}function fi(){b||(b=!0,m=new Object)}function _i(){return w||(w=!0,$=mu()),$}function di(){this.w16_1=0}function vi(t){this.y17_1=new Ka(t)}function yi(t){vi.call(this,t)}function mi(t){yi.call(this,t)}function gi(){return $i(),x}function bi(){}function $i(){k||(k=!0,x=new Ih,new Ih)}function wi(t){this.t1h_1=t}function xi(){this.u1h_1=0}function ki(){}function ji(t,n){this.w1h_1=n,this.x1h_1=dn(t),this.y1h_1=null}function Ci(t){this.z1h_1=t,this.a1i_1=null}function Si(){C||(C=!0,j=new xi)}function zi(t,n){var e;if(n instanceof Jt)e=n.t1_1;else{var r=null==n?null:Kt(n);e=null==r?0:r}return e}function qi(t,n){this.b1i_1=t,this.c1i_1=n}function Oi(){S=this}function Pi(){return null==S&&new Oi,S}function Mi(){}function Ai(){return z}function Ei(t){this.d1i_1=t}function Ii(t,n){t.k13_1=n?32|t.k13_1:-33&t.k13_1}function Di(t,n){t.k13_1=n?16|t.k13_1:-17&t.k13_1}function Ti(t){this.k13_1=0,this.l13_1=t,this.m13_1=null,this.n13_1=null,this.o13_1=0,this.p13_1=null,this.q13_1=null}function Bi(){}function Li(){if(I)return wt();I=!0,q=new Ki("ShutDown",0),O=new Ki("ShuttingDown",1),P=new Ki("Inactive",2),M=new Ki("InactivePendingWork",3),A=new Ki("Idle",4),E=new Ki("PendingWork",5)}function Ri(t,n){t:for(;;){var e=t.j1i_1.n2(),r=e.a(n);if(e===r||t.j1i_1.my(e,r))break t}}function Ni(t,n){t:for(;;){var e=t.j1i_1.n2(),r=e.lf(n);if(e===r||t.j1i_1.my(e,r))break t}}function Fi(t,n){t.s7(),n.p1i_1;var e=n.w1i_1,r=0,o=e.f()-1|0;if(r<=o)do{var i=r;r=r+1|0;var s=e.g(i);t.a(s)}while(r<=o);n.w1i_1.s7(),wt()}function Hi(t,n,e,r,o,i){return function(s){var a;if(t.m1i_1.d12())t:{var u=Fh().t1a("Recomposer:animation");try{t.m1i_1.e12(s),Mc().f1j(),wt();break t}finally{Fh().f1b(u)}}t:{var l=Fh().t1a("Recomposer:recompose");try{t.p1i_1,Xi(t);var c=t.u1i_1,h=0,p=c.f()-1|0;if(h<=p)do{var f=h;h=h+1|0;var _=c.g(f);n.a(_)}while(h<=p);t.u1i_1.s7(),wt();var d=new ru,v=new ru;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 b=n.g(g);v.y1e(b);var $=ns(t,b,d);null==$||(r.a($),wt())}while(y<=m)}finally{n.s7()}if(d.q1a()){t.p1i_1;var w=t.s1i_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.r1g(d)&&n.a(C)}while(x<=k);wt()}}if(n.h())for(Fi(e,t);!e.h();){var S=es(t,e,d);xn(o,S),Fi(e,t)}}if(!r.h()){var z=t,q=z.l1i_1;z.l1i_1=q.en();try{xn(i,r);var O=0,P=r.f()-1|0;if(O<=P)do{var M=O;O=O+1|0,r.g(M).a1h()}while(O<=P)}finally{r.s7()}}if(!o.h())try{xn(i,o);for(var A=o.c();A.d();)A.e().b1h()}finally{o.s7()}if(!i.h())try{for(var E=i.c();E.d();)E.e().d1d()}finally{i.s7()}(function(t){var n;if(t.p1i_1,t.x1i_1.h())n=Gt();else{var e=On(t.x1i_1.d3());t.x1i_1.s7();var r=Qt(e.f()),o=0,i=e.f()-1|0;if(o<=i)do{var s=o;o=o+1|0;var a=e.g(s),u=tn(a,t.y1i_1.b3(a));r.a(u)}while(o<=i);var l=r;t.y1i_1.s7(),n=l}var c=n,h=0,p=c.f()-1|0;if(h<=p)do{var f=h;h=h+1|0;var _=c.g(f),d=_.l4(),v=_.m4();null!=v&&d.a1c_1.z1g(v)}while(h<=p)})(t),t.p1i_1,a=Ji(t);break t}finally{Fh().f1b(l)}}return a}}function Ui(t){return function(n,e){var r;t.p1i_1,t.c1j_1.n2().x1(vs())>=0?(t.t1i_1.a(n),r=Ji(t)):r=null;var o,i=r;return null==i||(Pt(),o=Mt(wt()),i.z4(o),wt()),wt()}}function Vi(t,n,e){this.o1j_1=t,this.p1j_1=n,kn.call(this,e)}function Wi(t,n,e){var r=new Vi(t,n,e),o=function(t,n){return r.r1j(t,n)};return o.$arity=1,o}function Ki(t,n){Jt.call(this,t,n)}function Ji(t){if(t.c1j_1.n2().x1(_s())<=0){t.s1i_1.s7(),t.t1i_1.s7(),t.u1i_1.s7(),t.v1i_1.s7(),t.w1i_1.s7();var n=t.z1i_1;return null==n||n.lr(null,1,null),t.z1i_1=null,null}var e;null==t.q1i_1?(t.t1i_1.s7(),t.u1i_1.s7(),e=t.m1i_1.d12()?(Li(),M):ds()):e=!!(!!(!t.u1i_1.h()||!t.t1i_1.h())||!t.v1i_1.h())||!t.w1i_1.h()||t.a1j_1>0||t.m1i_1.d12()?ys():vs();var r,o=e;if(t.c1j_1.ly(o),o.equals(ys())){var i=t.z1i_1;t.z1i_1=null,r=i}else r=null;return r}function Gi(t){var n;if(t.p1i_1,t.b1j_1){var e;t:{for(var r=t.n1i_1.kt().c();r.d();)if(r.e().zo()){e=!0;break t}e=!1}n=e}else n=!0;return n}function Yi(t){this.t1j_1=t}function Xi(t){if(!t.t1i_1.h()){var n=t.t1i_1,e=0,r=n.f()-1|0;if(e<=r)do{var o=e;e=e+1|0;var i=n.g(o),s=t.s1i_1,a=0,u=s.f()-1|0;if(a<=u)do{var l=a;a=a+1|0,s.g(l).p1g(i)}while(a<=u)}while(e<=r);if(t.t1i_1.s7(),null!=Ji(t))throw zt("called outside of runRecomposeAndApplyChanges")}}function Zi(t,n){t.p1i_1;var e=t.r1i_1;if(null!=e)throw e;if(t.c1j_1.n2().x1(_s())<=0)throw zt("Recomposer shut down");if(null!=t.q1i_1)throw zt("Recomposer already running");t.q1i_1=n,Ji(t)}function Qi(t){return t.p1i_1,!(t.t1i_1.h()&&t.u1i_1.h())||t.m1i_1.d12()}function ts(t,n,e){var r,o,i=function(t){var n=t.z7(Pi());if(null==n)throw zt(xt("A MonotonicFrameClock is not available in this CoroutineContext. Callers should supply an appropriate MonotonicFrameClock using withContext."));return n}(e.b5());return Sn(t.m1i_1,(r=new ps(t,n,i,null),o=function(t,n){return r.r1j(t,n)},o.$arity=1,o),e)}function ns(t,n,e){if(n.e1g()||n.o1g())return null;var r,o,i;t:{var s=Mc().g1k(rs(0,n),os(0,n,e));try{var a;n:{var u=s.h1k();try{!0===(null==e?null:e.q1a())&&n.x1d((o=e,i=n,function(){for(var t=o.c();t.d();){var n=t.e();i.w1g(n)}return wt()})),a=n.x1g();break n}finally{s.i1k(u)}}r=a;break t}finally{is(0,s)}}return r?n:null}function es(t,n,e){var r=zn(n.f()),o=0,i=n.f()-1|0;if(o<=i)do{var s=o;o=o+1|0;var a,u=n.g(s),l=u.a1c_1,c=r.b3(l);if(null==c){var h=jt();r.n(l,h),a=h}else a=c;a.a(u)}while(o<=i);for(var p=r,f=p.v().c();f.d();){var _=f.e(),d=_.l2(),v=_.n2();go(!d.e1g());t:{var y=Mc().g1k(rs(0,d),os(0,d,e));try{n:{var m=y.h1k();try{t.p1i_1;var g=Qt(v.f()),b=0,$=v.f()-1|0;if(b<=$)do{var w=b;b=b+1|0;var x=v.g(w),k=tn(x,$s(t.x1i_1,x.y1b_1));g.a(k)}while(b<=$);var j=g;d.y1g(j),wt();break n}finally{y.i1k(m)}}break t}finally{is(0,y)}}}return qn(p.c3())}function rs(t,n){return e=n,function(t){return e.s1g(t),wt()};var e}function os(t,n,e){return r=n,o=e,function(t){return r.w1g(t),null==o||o.y1e(t),wt()};var r,o}function is(t,n){try{if(n.w1k()instanceof Bc)throw zt(xt("Unsupported concurrent change during composition. A state object was modified by composition as well as being modified outside composition."))}finally{n.ls()}}function ss(t){return!t.u1i_1.h()||t.m1i_1.d12()}function as(){D=this,this.j1i_1=Pn(Zl().a1p())}function us(){return null==D&&new as,D}function ls(t,n,e){t.s7(),n.p1i_1;for(var r=n.w1i_1.c();r.d();){var o=r.e();Ht(o.a1c_1,e)&&(t.a(o),r.o4())}wt()}function cs(t){return function(n){var e=Mn("Recomposer effect job completed",n),r=null,o=(t.p1i_1,t.q1i_1);null!=o?(t.c1j_1.ly(_s()),t.b1j_1?null!=t.z1i_1&&(r=t.z1i_1):o.eq(e),t.z1i_1=null,o.zp(function(t,n){return function(e){t.p1i_1;var r,o,i=t,s=n;return null==s?r=null:(null==(o=null==e||e instanceof An?null:e)||(En(s,o),wt()),r=s),i.r1i_1=r,t.c1j_1.ly(fs()),wt(),wt()}}(t,n))):(t.r1i_1=e,t.c1j_1.ly(fs()),wt());var i,s=r;return null==s||(Pt(),i=Mt(wt()),s.z4(i),wt()),wt()}}function hs(t,n){this.f1l_1=t,kn.call(this,n)}function ps(t,n,e,r){this.y1l_1=t,this.z1l_1=n,this.a1m_1=e,kn.call(this,r)}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.c1k_1=t}function gs(t){var n;us(),di.call(this),this.l1i_1=new Bn(0,0),this.m1i_1=new Ge((n=this,function(){n.p1i_1;var t=Ji(n);if(n.c1j_1.n2().x1(_s())<=0)throw Mn("Recomposer shutdown; frame clock awaiter will never resume",n.r1i_1);var e,r=t;return null==r||(Pt(),e=Mt(wt()),r.z4(e),wt()),wt()}));var e,r=Rn(t.z7(Ln()));r.zp(cs(this)),e=r,this.n1i_1=e,this.o1i_1=t.g8(this.m1i_1).g8(this.n1i_1),this.p1i_1=Va(),this.q1i_1=null,this.r1i_1=null;var o;o=jt(),this.s1i_1=o;var i;i=jt(),this.t1i_1=i;var s;s=jt(),this.u1i_1=s;var a;a=jt(),this.v1i_1=a;var u;u=jt(),this.w1i_1=u;var l;l=Nn(),this.x1i_1=l;var c;c=Nn(),this.y1i_1=c,this.z1i_1=null,this.a1j_1=0,this.b1j_1=!1,this.c1j_1=Pn(ds()),this.d1j_1=new Yi(this),this.e1j_1=8}function bs(){}function $s(t,n){ws();var e,r=t.b3(n);if(null==r)e=null;else{var o=Fn(r);r.h()&&t.qg(n),e=o}return e}function ws(){T||(T=!0,new Object,new Object)}function xs(){}function ks(t,n,e,r,o,i){var s=n.k19(e),a=e+s|0,u=Vs(n,e),l=Vs(n,a),c=l-u|0,h=function(t,n){return n>=0&&wa(t.p12_1,Fs(t,n))}(n,e);Ds(r,s),Ts(r,c,r.f13_1),n.s12_1=0;U&&(n.d18(),n.m1c(H-n.f13_1|0),n.d18()),n.m1c(e-n.f13_1|0);var V=n.m14();U&&(n.b18(),n.r19(),n.b18(),n.r19()),N=V}else{var W=Bs(n,e,s);Ls(n,u,c,e-1|0),N=W}!N||Po(xt("Unexpectedly removed anchors"));var K=r;return K.b13_1=K.b13_1+(ia(p,f)?1:sa(p,f))|0,i&&(r.f13_1=f+s|0,r.v12_1=g+c|0),h&&qs(r,$),F}function js(t,n,e,r,o){var i=t.a13_1>0;t.e13_1.b17(t.b13_1);var s,a=t;if(i){Ds(t,1);var u=t.f13_1,l=Fs(t,u),c=!(e===fo().j12_1),h=!(r||o===fo().j12_1);(function(t,n,e,r,o,i,s,a){var u=r?1073741824:0,l=o?536870912:0,c=i?268435456:0,h=bt(n,5);t[h+0|0]=e,t[h+1|0]=u|l|c,t[h+2|0]=s,t[h+3|0]=0,t[h+4|0]=a})(t.p12_1,l,n,r,c,h,t.g13_1,t.v12_1),t.w12_1=t.v12_1;var p=((r?1:0)+(c?1:0)|0)+(h?1:0)|0;if(p>0){Ts(t,p,u);var f=t.q12_1,_=t.v12_1;if(r){var d=_;_=d+1|0,f[d]=o}if(c){var v=_;_=v+1|0,f[v]=e}if(h){var y=_;_=y+1|0,f[y]=o}t.v12_1=_}t.b13_1=0;var m=u+1|0;t.g13_1=u,t.f13_1=m,s=m}else{var g=t.g13_1;t.c13_1.b17(g),Ps(t);var b=t.f13_1,$=Fs(t,b);Ht(o,fo().j12_1)||(r?t.l1m(o):t.t1b(o)),t.v12_1=Ks(t.p12_1,t,$),t.w12_1=Ws(t.p12_1,t,Fs(t,t.f13_1+1|0)),t.b13_1=sa(t.p12_1,$),t.g13_1=b,t.f13_1=b+1|0,s=b+ca(t.p12_1,$)|0}a.u12_1=s}function Cs(){B=this}function Ss(){return null==B&&new Cs,B}function zs(t){var n=t.i13_1;if(null==n);else{for(;n.q1a();)Os(t,n.n1m(),n);wt()}}function qs(t,n){if(n>=0){var e,r=t.i13_1;if(null==r){var o=function(t,n,e,r){var o;return 0!=(1&n)&&(o=jt(),wt(),t=o),_a.call(r,t),r}(null,1,0,Object.create(_a.prototype));t.i13_1=o,e=o}else e=r;e.o1m(n)}}function Os(t,n,e){var r,o,i,s=Fs(t,n),a=function(t,n){for(var e=n+1|0,r=n+t.k19(n)|0;e=0&&e.o1m(u)}}function Ps(t){t.d13_1.b17((Ns(t)-t.t12_1|0)-t.u12_1|0)}function Ms(t){var n=(Ns(t)-t.t12_1|0)-t.d13_1.h19()|0;return t.u12_1=n,n}function As(t,n,e,r){for(var o=Qs(t,n,t.s12_1),i=r;i=0))break t;l.d1b_1=0|-(o-c|0),u=u+1|0}}}(t,r,n),e>0){var o=t.p12_1,i=bt(n,5),s=bt(e,5),a=bt(r,5);n=0||Po(xt("Unexpected anchor value, expected a positive anchor")),ya(t.p12_1,h,0|-(1+(c-_|0)|0)),(h=h+1|0)===f&&(h=h+t.t12_1|0)}else for(var d=Fs(t,i),v=Fs(t,l);d0){var e=t.f13_1;Es(t,e);var r=t.s12_1,o=t.t12_1,i=t.p12_1.length/5|0,s=i-o|0;if(o=r&&(t.u12_1=b+n|0),t.s12_1=r+n|0,t.t12_1=o-n|0;var $=Xs(0,s>0?Vs(t,e+n|0):0,t.z12_1=r&&(t.z12_1=j+n|0)}}function Ts(t,n,e){if(n>0){Is(t,t.v12_1,e);var r=t.x12_1,o=t.y12_1;if(o=r&&(t.w12_1=g+n|0),t.x12_1=r+n|0,t.y12_1=o-n|0}}function Bs(t,n,e){var r;if(e>0){var o=!1,i=t.r12_1;Es(t,n),!i.h()&&(o=function(t,n,e){var r=t.t12_1,o=n+e|0,i=Ns(t)-r|0,s=ma(t.r12_1,n+e|0,i),a=s>=t.r12_1.f()?s-1|0:s,u=0,l=a+1|0;t:for(;a>=0;){var c=t.r12_1.g(a),h=t.j1b(c);if(!(h>=n))break t;hn){var u,l=t,c=a-e|0;u=Math.max(n,c),l.z12_1=u}if(t.u12_1>=t.s12_1){var h=t;h.u12_1=h.u12_1-e|0}(function(t,n){return n>=0&&$a(t.p12_1,Fs(t,n))})(t,t.g13_1)&&qs(t,t.g13_1),r=o}else r=!1;return r}function Ls(t,n,e,r){if(e>0){var o=t.y12_1;Is(t,n+e|0,r),t.x12_1=n,t.y12_1=o+e|0,Un(t.q12_1,null,n,n+e|0);var i=t.w12_1;i>=n&&(t.w12_1=i-e|0)}}function Rs(t,n,e){var r=Fs(t,n);r=Ns(n)?n.q12_1.length-n.y12_1|0:Zs(0,ga(t,e),n.y12_1,n.q12_1.length)}function Ks(t,n,e){return e>=Ns(n)?n.q12_1.length-n.y12_1|0:Zs(0,xa(t,e),n.y12_1,n.q12_1.length)}function Js(t,n,e,r){ya(t,e,Xs(0,r,n.x12_1,n.y12_1,n.q12_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[bt(n,5)+1|0]}(t,e)>>29)|0}function Xs(t,n,e,r,o){return n>e?0|-(1+((o-r|0)-n|0)|0):n}function Zs(t,n,e,r){return n<0?1+((r-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.q1m_1=n,this.r1m_1=e,this.p1m_1=t}function ea(t){Ss(),this.o12_1=t,this.p12_1=this.o12_1.n16_1,this.q12_1=this.o12_1.p16_1,this.r12_1=this.o12_1.u16_1,this.s12_1=this.o12_1.o16_1,this.t12_1=(this.p12_1.length/5|0)-this.o12_1.o16_1|0,this.u12_1=this.o12_1.o16_1,this.v12_1=0,this.w12_1=0,this.x12_1=this.o12_1.q16_1,this.y12_1=this.q12_1.length-this.o12_1.q16_1|0,this.z12_1=this.o12_1.o16_1,this.a13_1=0,this.b13_1=0,this.c13_1=new Fa,this.d13_1=new Fa,this.e13_1=new Fa,this.f13_1=0,this.g13_1=-1,this.h13_1=!1,this.i13_1=null}function ra(){this.n16_1=new Int32Array(0),this.o16_1=0;for(var t=0,n=Vn(Array(0),null);t<0;){null,n[t]=null,t=t+1|0}this.p16_1=n,this.q16_1=0,this.r16_1=0,this.s16_1=!1,this.t16_1=0;var e;e=jt(),this.u16_1=e}function oa(t){this.d1b_1=t}function ia(t,n){return!(0==(1073741824&t[bt(n,5)+1|0]))}function sa(t,n){return 67108863&t[bt(n,5)+1|0]}function aa(t,n){return t[bt(n,5)]}function ua(t,n){return!(0==(536870912&t[bt(n,5)+1|0]))}function la(t,n){var e=bt(n,5);return t[e+4|0]+ka(t[e+1|0]>>30)|0}function ca(t,n){return t[bt(n,5)+3|0]}function ha(t,n){return!(0==(268435456&t[bt(n,5)+1|0]))}function pa(t,n,e){if(!(e>=0))throw rn(xt("Failed requirement."));t[bt(n,5)+3|0]=e}function fa(t,n,e){if(!(e>=0&&e<67108863))throw rn(xt("Failed requirement."));t[bt(n,5)+1|0]=-67108864&t[bt(n,5)+1|0]|e}function _a(t){this.m1m_1=t}function da(t,n,e){t[bt(n,5)+2|0]=e}function va(t,n){return t[bt(n,5)+2|0]}function ya(t,n,e){t[bt(n,5)+4|0]=e}function ma(t,n,e){var r=Aa(t,n,e);return r>=0?r:0|-(r+1|0)}function ga(t,n){return t[bt(n,5)+4|0]}function ba(t,n){return!(0==(134217728&t[bt(n,5)+1|0]))}function $a(t,n){return!(0==(67108864&t[bt(n,5)+1|0]))}function wa(t,n){return!(0==(201326592&t[bt(n,5)+1|0]))}function xa(t,n){var e=bt(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.j17_1[function(t,n){return t[bt(n,5)+4|0]}(t,e)]:fo().j12_1}function Ca(t,n,e){return ha(t,e)?n.j17_1[function(t,n){var e=bt(n,5);return e>=t.length?t.length:t[e+4|0]+ka(t[e+1|0]>>29)|0}(t,e)]:fo().j12_1}function Sa(t,n,e){return ua(t,e)?n.j17_1[la(t,e)]:null}function za(t){this.g17_1=t,this.h17_1=this.g17_1.n16_1,this.i17_1=this.g17_1.o16_1,this.j17_1=this.g17_1.p16_1,this.k17_1=this.g17_1.q16_1,this.l17_1=0,this.m17_1=this.i17_1,this.n17_1=-1,this.o17_1=0,this.p17_1=0,this.q17_1=0}function qa(t){if(t.h1n_1.t16_1!==t.k1n_1)throw Xn()}function Oa(t,n){this.l1n_1=t,this.m1n_1=n}function Pa(t,n,e){if(this.h1n_1=t,this.i1n_1=e,this.j1n_1=n,this.k1n_1=this.h1n_1.t16_1,this.h1n_1.s16_1)throw Xn()}function Ma(t,n,e,r,o){this.x18_1=t,this.y18_1=n,this.z18_1=e,this.a19_1=r,this.b19_1=o}function Aa(t,n,e){return function(t,n,e){for(var r=0,o=t.f()-1|0;r<=o;){var i=(r+o|0)>>>1|0,s=t.g(i).d1b_1,a=an(s<0?e+s|0:s,n);if(a<0)r=i+1|0;else{if(!(a>0))return i;o=i-1|0}}return 0|-(r+1|0)}(t,n,e)}function Ea(){}function Ia(){var t=(null==L&&new Da,L);return Ft(t,Ea)?t:Ct()}function Da(){L=this}function Ta(){}function Ba(){}function La(t,n){return function(t,n){return Rh(),new Na(t,n)}(t,n)}function Ra(t){Nc.call(this),this.u1n_1=t}function Na(t,n){this.c1o_1=n,this.d1o_1=new Ra(t)}function Fa(){this.z16_1=new Int32Array(10),this.a17_1=0}function Ha(){this.s17_1=jt()}function Ua(){}function Va(){return new Ua}function Wa(t){return ln("current",1,un,(function(t){return Wa(t)}),null),t.z17_1.n2()}function Ka(t){this.z17_1=on(t)}function Ja(t,n,e,r){var o=n-1|0;if(0<=o)t:do{var i=o;o=o+-1|0;var s=t.f1i_1[i];if(s===e)return i;if(Dh(s)!==r)break t}while(0<=o);var a=n+1|0,u=t.e1i_1;if(a>>1|0,s=t.a1b_1[i],a=Dh(s);if(ae))return n===s?i:Za(t,i,n,e);o=i-1|0}}return 0|-(r+1|0)}function Za(t,n,e,r){var o=n-1|0;if(0<=o)t:do{var i=o;o=o+-1|0;var s=t.a1b_1[i];if(s===e)return i;if(Dh(s)!==r)break t}while(0<=o);var a=n+1|0,u=t.c1b_1;if(a>>1|0,s=t.g(i),a=Dh(s);if(ao))return s===n?i:nu(t,i,n,o);r=i-1|0}}return 0|-(e+1|0)}function nu(t,n,e,r){var o=n-1|0;if(0<=o)t:do{var i=o;o=o+-1|0;var s=t.x1e_1[i];if(s===e)return i;if(Dh(s)!==r)break t}while(0<=o);var a=n+1|0,u=t.w1e_1;if(a>>1|0,s=pn(t.p1f_1[t.o1f_1[i]]),a=Dh(s);if(ae))return n===s?i:su(t,i,n,e);o=i-1|0}}return 0|-(r+1|0)}function su(t,n,e,r){var o=n-1|0;if(0<=o)t:do{var i,s=o;if(o=o+-1|0,(i=pn(t.p1f_1[t.o1f_1[s]]))===e)return s;if(Dh(i)!==r)break t}while(0<=o);var a=n+1|0,u=t.r1f_1;if(a>hl()>1<al()))throw o="Trie-based persistent vector should have at least "+(al()+1|0)+" elements, got "+this.l1p_1,rn(xt(o));this.l1p_1,cl(this.l1p_1),ae(this.k1p_1.length,al())}function Au(t){return t.w1p_1<=al()?0:cl(t.w1p_1)}function Eu(t){return n=t.w1p_1,n<=al()?n:n-cl(n)|0;var n}function Iu(t,n){if(null==n)return Tu(t);if(function(t,n){return n.length===_l()&&n[_l()-1|0]===t.t1p_1}(t,n))return n;var e=Tu(t),r=ae(n.length,al());return Hn(n,e,0,0,r),e}function Du(t,n){var e=_l(),r=Vn(Array(e),null);return r[0]=n,r[_l()-1|0]=t.t1p_1,r}function Tu(t){var n=_l(),e=Vn(Array(n),null);return e[_l()-1|0]=t.t1p_1,e}function Bu(t,n,e,r){var o;if(t.w1p_1>>hl()>1<=0))throw zt(xt("Check failed."));if(0===r)return o.e();var i=Iu(t,n),s=pl(e,r),a=s,u=i[s];for(i[a]=Nu(t,null==u||cn(u)?u:Ct(),e,r-hl()|0,o);(s=s+1|0)0){var r=(t.e1q_1-1|0)-(e/hl()|0)|0;el(t,t.b1p_1,r+1|0)}}function ol(t){var n=t.b1p_1&ll(),e=t.f1q_1[t.e1q_1-1|0];return(null!=e&&cn(e)?e:Ct())[n]}function il(t,n,e,r){bu.call(this,n,e),this.e1q_1=r;var o,i=this.e1q_1;o=Vn(Array(i),null),this.f1q_1=o,this.g1q_1=n===e,this.f1q_1[0]=t,el(this,n-(this.g1q_1?1:0)|0,1)}function sl(){return tl().o1q_1}function al(){return N}function ul(t){var n=Vn(Array(32),null);return n[0]=t,n}function ll(){return F}function cl(t){return-32&(t-1|0)}function hl(){return H}function pl(t,n){return t>>n&31}function fl(t){this.n1p_1=t}function _l(){return U}function dl(){V=this,this.x1o_1=new yl(Vl().q1q_1,0)}function vl(){return null==V&&new dl,V}function yl(t,n){vl(),_e.call(this),this.t1q_1=t,this.u1q_1=n}function ml(t){for(var n=0,e=Vn(Array(8),null);n<8;){var r,o=n;r=new wl,e[o]=r,n=n+1|0}Cl.call(this,t,e)}function gl(t){for(var n=0,e=Vn(Array(8),null);n<8;){var r,o=n;r=new xl,e[o]=r,n=n+1|0}Cl.call(this,t,e)}function bl(t){for(var n=0,e=Vn(Array(8),null);n<8;){var r,o=n;r=new zl,e[o]=r,n=n+1|0}Cl.call(this,t,e)}function $l(){this.i1r_1=Vl().q1q_1.y1q_1,this.j1r_1=0,this.k1r_1=0}function wl(){$l.call(this)}function xl(){$l.call(this)}function kl(t,n){if(t.f1r_1[n].n1r())return n;if(t.f1r_1[n].o1r()){var e=t.f1r_1[n].p1r();return 6===n?t.f1r_1[n+1|0].m1r(e.y1q_1,e.y1q_1.length):t.f1r_1[n+1|0].m1r(e.y1q_1,bt(Kl(),e.x1r())),kl(t,n+1|0)}return-1}function jl(t){if(t.f1r_1[t.g1r_1].n1r())return wt();var n=t.g1r_1;if(0<=n)do{var e=n;n=n+-1|0;var r=kl(t,e);if(-1===r&&t.f1r_1[e].o1r()&&(t.f1r_1[e].q1r(),r=kl(t,e)),-1!==r)return t.g1r_1=r,wt();e>0&&t.f1r_1[e-1|0].q1r(),t.f1r_1[e].m1r(Vl().q1q_1.y1q_1,0)}while(0<=n);t.h1r_1=!1}function Cl(t,n){this.f1r_1=n,this.g1r_1=0,this.h1r_1=!0,this.f1r_1[0].m1r(t.y1q_1,bt(Kl(),t.x1r())),this.g1r_1=0,jl(this)}function Sl(t,n){this.y1r_1=t,this.z1r_1=n}function zl(){$l.call(this)}function ql(t){ve.call(this),this.d1s_1=t}function Ol(t){ye.call(this),this.e1s_1=t}function Pl(t){ve.call(this),this.f1s_1=t}function Ml(t,n,e){return function(t,n,e,r){return Wl.call(r,t,n,e,null),r}(t,n,e,Object.create(Wl.prototype))}function Al(t,n){this.c1r_1=t,this.d1r_1=n}function El(t){return new Al(t,1)}function Il(t){return new Al(t,0)}function Dl(t,n){return!(0==(t.w1q_1&n))}function Tl(t,n){var e=t.y1q_1[n];return null==e||St(e)?e:Ct()}function Bl(t,n){var e=t.y1q_1[n+1|0];return null==e||St(e)?e:Ct()}function Ll(t,n,e,r){var o=r.y1q_1;if(2===o.length&&0===r.w1q_1){if(1===t.y1q_1.length)return r.v1q_1=t.w1q_1,r;var i=t.k1s(e),s=function(t,n,e,r,o){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]=r,i[e+1|0]=o,i}(t.y1q_1,n,i,o[0],o[1]);return Ml(t.v1q_1^e,t.w1q_1^e,s)}var a=Qn(t.y1q_1,t.y1q_1.length);return a[n]=r,Ml(t.v1q_1,t.w1q_1,a)}function Rl(t,n,e){if(1===t.y1q_1.length)return null;var r=function(t,n){var e=t.length-1|0,r=Vn(Array(e),null);Hn(t,r,0,0,n);var o=n+1|0,i=t.length;return Hn(t,r,n,o,i),r}(t.y1q_1,n);return Ml(t.v1q_1,t.w1q_1^e,r)}function Nl(t,n,e,r,o,i,s,a){var u=Tl(t,n),l=null==u?null:Kt(u),c=Fl(t,null==l?0:l,u,Bl(t,n),r,o,i,s+5|0,a),h=t.l1s(e)+1|0;return function(t,n,e,r){var o=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[o]=r;var a=o+1|0,u=t.length;return Hn(t,s,a,e,u),s}(t.y1q_1,n,h,c)}function Fl(t,n,e,r,o,i,s,a,u){if(a>30)return new Wl(0,0,[e,r,i,s],u);var l=Gl(n,a),c=Gl(o,a);return l!==c?new Wl(1<>n&31}function Yl(t,n){var e=t.length-2|0,r=Vn(Array(e),null);Hn(t,r,0,0,n);var o=n+2|0,i=t.length;return Hn(t,r,n,o,i),r}function Xl(){J=this,this.z1o_1=new Ql(ic(),ic(),vl().y1o())}function Zl(){return null==J&&new Xl,J}function Ql(t,n,e){Zl(),ve.call(this),this.o1s_1=t,this.p1s_1=n,this.q1s_1=e}function tc(){return t=Object.create(ec.prototype),ec.call(t,ic(),ic()),t;var t}function nc(t){return function(t,n){return ec.call(n,t,ic()),n}(t,Object.create(ec.prototype))}function ec(t,n){this.r1s_1=t,this.s1s_1=n}function rc(t,n){this.x1s_1=t,this.y1s_1=n,this.z1s_1=0}function oc(){G=this}function ic(){return null==G&&new oc,G}function sc(){Y=this}function ac(){return null==Y&&new sc,Y}function uc(){}function lc(t,n,e){var r=new Wh(t,n);return r.f1t(e),r}function cc(t,n){return null==t||!!(t instanceof Ti&&n instanceof Ti)&&(!(t.b1g()&&!Ht(t,n))||Ht(t.m13_1,n.m13_1))}function hc(t){return fc(2,t)}function pc(t){return fc(1,t)}function fc(t,n){return t<<(bt(n%10|0,3)+1|0)}function _c(t,n,e,r,o,i,s){return function(t,n,e,r,o,i,s,a){n.b(r);var u=0,l=0,c=t.f()-1|0;if(l<=c)t:do{var h=l;l=l+1|0;var p=t.g(h);if((u=u+1|0)>1&&n.b(e),!(i<0||u<=i))break t;dc(n,p,a)}while(l<=c);return i>=0&&u>i&&n.b(s),n.b(o),n}(t,xe(),n,e,r,o,i,s).toString()}function dc(t,n,e){null!=e?t.b(e(n)):null==n||Ce(n)?t.b(n):n instanceof je?t.s9(n.l1_1):t.b(mn(n))}function vc(){return hh(),X}function yc(){return hh(),Z}function mc(){return hh(),Q}function gc(t){hh(),tt=t}function bc(){return hh(),tt}function $c(t){hh(),nt=t}function wc(){return hh(),nt}function xc(){return hh(),et}function kc(){return hh(),rt}function jc(){return hh(),ot}function Cc(){return hh(),it}function Sc(){return hh(),st}function zc(){}function qc(t){this.g1t_1=t}function Oc(t){this.h1t_1=t}function Pc(){at=this}function Mc(){return null==at&&new Pc,at}function Ac(t,n){Mc(),this.u1a_1=n,this.v1a_1=t,this.w1a_1=!1,this.x1a_1=0!==t?function(t,n){hh();var e=n.t1v(t);return mc(),xc().z1v(e)}(t,this.l1t()):-1,this.y1a_1=8}function Ec(){}function Ic(t,n,e,r){Ac.call(this,t,n),this.o1k_1=e,this.p1k_1=r,this.q1k_1=null,this.r1k_1=vh().i1u_1,this.s1k_1=new Int32Array(0),this.t1k_1=1,this.u1k_1=!1,this.v1k_1=8}function Dc(){ut=this,Lc.call(this),this.z1u_1=0}function Tc(){return null==ut&&new Dc,ut}function Bc(t){Lc.call(this),this.b1v_1=t,this.c1v_1=8}function Lc(){this.d1v_1=0}function Rc(t,n){mc();var e,r,o,i=jc().h()?null:Yt(jc());if(null==i)r=null;else{var s=qe(i);r=null==s?(o=i,function(t){var n=0,e=o.f()-1|0;if(n<=e){do{var r=n;n=n+1|0,o.g(r)(t)}while(n<=e);wt()}return wt()}):s}e=r,Ic.call(this,t,n,null,e)}function Nc(){this.x1n_1=Hc().z1a(),this.y1n_1=null,this.z1n_1=8}function Fc(t){hh(),xc().a1w(t)}function Hc(){hh();var t=yc().mu();return null==t?Cc().mu():t}function Uc(t){hh();var n=Cc().mu(),e=(mc(),Qc(n,t)),r=n.k1t();if(null!=r){mc();var o=Yt(kc()),i=0,s=o.f()-1|0;if(i<=s)do{var a=i;i=i+1|0,o.g(a)(r,n)}while(i<=s)}return e}function Vc(){return hh(),Uc(ch)}function Wc(t){t.p1w_1||(t.p1w_1=!0,t.o1w_1.n1u(t))}function Kc(t,n,e,r,o){Ic.call(this,t,n,e,r),this.o1w_1=o,this.p1w_1=!1,this.o1w_1.o1u(this)}function Jc(t,n,e){hh();var r=t,o=n;if(o0;){var i=((o+1|0)>>1)-1|0;if(!(e[i]>r))break t;fh(t,i,o),o=i}}function fh(t,n,e){var r=t.v1v_1,o=t.w1v_1,i=t.x1v_1,s=r[n];r[n]=r[e],r[e]=s,s=o[n],o[n]=o[e],o[e]=s,i[o[n]]=n,i[o[e]]=e}function _h(){this.u1v_1=0,this.v1v_1=new Int32Array(16),this.w1v_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.x1v_1=n,this.y1v_1=0}function dh(){ct=this,this.i1u_1=new mh(new Bn(0,0),new Bn(0,0),0,null)}function vh(){return null==ct&&new dh,ct}function yh(t,n){this.a1x_1=t,kn.call(this,n)}function mh(t,n,e,r){vh(),this.z1t_1=t,this.a1u_1=n,this.b1u_1=e,this.c1u_1=r}function gh(t,n){for(var e=0,r=t.length-1|0;e<=r;){var o=(e+r|0)>>>1|0,i=t[o];if(n>i)e=o+1|0;else{if(!(n0||Po(xt("OffsetApplier up called with no corresponding down"));var t=this.m11_1;this.m11_1=t-1|0,this.k11_1.f11()},We.prototype.g11=function(t,n){this.k11_1.g11(t+(0===this.m11_1?this.l11_1:0)|0,n)},We.prototype.h11=function(t,n){this.k11_1.h11(t+(0===this.m11_1?this.l11_1:0)|0,n)},We.prototype.i11=function(t,n){this.k11_1.i11(t+(0===this.m11_1?this.l11_1:0)|0,n)},We.prototype.j11=function(t,n,e){var r=0===this.m11_1?this.l11_1:0;this.k11_1.j11(t+r|0,n+r|0,e)},We.$metadata$=kt("OffsetApplier",[Ve]),Ke.prototype.r11=function(t){this.p11_1=t},Ke.prototype.b11=function(){return this.p11_1},Ke.prototype.s11=function(t){this.o11_1.a(this.b11()),this.r11(t)},Ke.prototype.e11=function(t){return this.s11(null==t||St(t)?t:Ct())},Ke.prototype.f11=function(){if(this.o11_1.h())throw zt(xt("Check failed."));this.r11(this.o11_1.n4(this.o11_1.f()-1|0))},Ke.$metadata$=kt("AbstractApplier",[Ve]),Je.prototype.v11=function(){return this.t11_1},Je.prototype.zy=function(){return this.u11_1},Je.prototype.w11=function(t){var n,e;try{var r;Pt(),r=this.t11_1(t),e=Mt(r)}catch(t){if(!(t instanceof Error))throw t;Pt(),e=Mt(At(t))}n=e,this.u11_1.z4(n)},Je.$metadata$=kt("FrameAwaiter"),Ge.prototype.d12=function(){return this.y11_1,!this.a12_1.h()},Ge.prototype.e12=function(t){this.y11_1;var n=this.a12_1;this.a12_1=this.b12_1,this.b12_1=n;var e=0,r=n.f();if(e0},co.prototype.v1c=function(){return this.u15_1},co.prototype.w1c=function(){return this.o14_1.x1c()},co.prototype.g12=function(t){return cr(this,t,null,!1,null)},co.prototype.k12=function(){return sr(this)},co.prototype.y1c=function(){return cr(this,-127,null,!1,null)},co.prototype.z1c=function(){sr(this);var t=this.a1d();null!=t&&t.i19()&&t.b1d(!0)},co.prototype.c1d=function(){var t;if(this.j15_1)t=!0;else{var n=this.a1d();t=!0===(null==n?null:n.c1d())}return t},co.prototype.j1a=function(t,n){return cr(this,t,n,!1,null)},co.prototype.m1a=function(){return sr(this)},co.prototype.d1d=function(){this.i15_1.s7()},co.prototype.e1d=function(){return this.a16_1},co.prototype.x1b=function(){var t;if(this.a16_1||this.l15_1||this.j15_1)t=!1;else{var n=this.a1d();t=!1===(null==n?null:n.f1d())}return!!t&&!this.d15_1},co.prototype.e18=function(){cr(this,this.a16_1?125:this.l15_1?125===this.t15_1.r18()?126:125:126===this.t15_1.r18()?126:125,null,!0,null),this.e15_1=!0},co.prototype.g1d=function(t){Cr(this),this.a16_1||Po(xt("createNode() can only be called when inserting"));var n,e,r,o,i,s=this.x14_1.h1d(),a=this.v15_1.w18(this.v15_1.g13_1),u=this.y14_1;this.y14_1=u+1|0,Lr(this,(r=t,o=a,i=s,function(t,n,e){var s=r();return n.q1b(o,s),(Ft(t,Ve)?t:Ct()).g11(i,s),t.e11(s),wt()})),n=this,e=function(t,n){return function(e,r,o){var i=r.r1b(t);return e.f11(),(Ft(e,Ve)?e:Ct()).h11(n,i),wt()}}(a,s),n.i16_1.g19(e)},co.prototype.i1d=function(){var t;Cr(this),!this.a16_1||Po(xt("useNode() called while inserting")),Dr(this,(t=this.t15_1).p1a(t.n17_1))},co.prototype.j1d=function(){return pr(this,!0)},co.prototype.k1d=function(t,n){var e,r,o=(e=n,r=t,function(t,n,o){var i=t.b11();return e(null==i||St(i)?i:Ct(),r),wt()});this.a16_1?Lr(this,o):qr(this,o)},co.prototype.e1b=function(){var t;if(this.a16_1)Sr(this),t=fo().j12_1;else{var n=this.t15_1.e();t=this.l15_1?fo().j12_1:n}return t},co.prototype.l12=function(t){var n;return Ht(this.e1b(),t)?n=!1:(this.g1a(t),n=!0),n},co.prototype.l1d=function(t){var n=this.e1b();return(null==n||"boolean"!=typeof n||t!==n)&&(this.g1a(t),!0)},co.prototype.g1a=function(t){if(this.a16_1)this.v15_1.n1d(t),null!=t&&Ft(t,xs)&&(zr(this,(e=t,function(t,n,r){return r.m12(e),wt()})),this.q14_1.a(t));else{var n=this.t15_1.m1d()-1|0;null!=t&&Ft(t,xs)&&this.q14_1.a(t),Pr(this,!0,function(t,n){return function(e,r,o){null!=t&&Ft(t,xs)&&(o.m12(t),wt());var i=r.s1b(n,t);if(null!=i&&Ft(i,xs))o.n12(i),wt();else if(i instanceof Ti){var s=i.l13_1;null!=s&&(i.qt(),s.e14_1=!0,wt())}return wt()}}(t,n))}var e},co.prototype.a1d=function(){var t=this.q15_1;return 0===this.n15_1&&t.q1a()?t.h1d():null},co.prototype.n1a=function(t,n){var e=t.m13_1;if(null==e)return!1;var r=e.n1c(this.p14_1);return!!(this.r15_1&&r>=this.t15_1.l17_1)&&(function(t,n,e,r){Jo();var o=Do(t,n);if(o<0){var i,s=0|-(o+1|0),a=r;if(null==a)i=null;else{var u=new ru;u.y1e(a),i=u}t.ag(s,new Co(e,n,i))}else if(null==r)t.g(o).w19_1=null;else{var l=t.g(o).w19_1;null==l||l.y1e(r)}}(this.f15_1,r,t,n),!0)},co.prototype.q1c=function(){if(this.f15_1.h())(i=o=this).y14_1=i.y14_1+o.t15_1.t17()|0;else{var t=this.t15_1,n=t.r18(),e=t.t18(),r=t.c18();Kr(this,n,e,r),lr(this,t.k1b(),null),fr(this),t.p19(),Gr(this,n,e,r)}var o,i},co.prototype.b18=function(){0===this.y14_1||Po(xt("No nodes can be emitted before calling skipAndEndGroup"));var t=this.a1d();null==t||t.o1d(),this.f15_1.h()?wr(this):fr(this)},co.prototype.p1d=function(t){return cr(this,t,null,!1,null),function(t){if(t.a16_1){var n=t.t14_1,e=new Ti(n instanceof ai?n:Ct());t.q15_1.g19(e),t.g1a(e),e.i1a(t.p15_1)}else{var r,o=qo(t.f15_1,t.t15_1.n17_1),i=t.t15_1.e();if(Ht(i,fo().j12_1)){var s=t.t14_1,a=new Ti(s instanceof ai?s:Ct());t.g1a(a),r=a}else r=i instanceof Ti?i:Ct();var u=r;u.h1a(!(null==o)),t.q15_1.g19(u),u.i1a(t.p15_1)}}(this),this},co.prototype.q1d=function(){var t=this.q15_1.q1a()?this.q15_1.h19():null;null==t||t.h1a(!1);var n,e,r,o=null==t?null:t.r1d(this.p15_1);if(null==o||(zr(this,(e=o,r=this,function(t,n,o){return e(r.t14_1),wt()})),wt()),null==t||t.t1d()||!t.i19()&&!this.c15_1)n=null;else{if(null==t.m13_1){var i,s=t;i=this.a16_1?this.v15_1.w18(this.v15_1.g13_1):this.t15_1.w18(this.t15_1.n17_1),s.m13_1=i}t.s1d(!1),n=t}var a=n;return pr(this,!1),a},co.prototype.u1d=function(t){t:{var n=this.s14_1,e=this.r14_1;try{this.r14_1=n,zr(this,(Jo(),u));var r=0,o=t.f()-1|0;if(r<=o)do{var s=r;r=r+1|0;var a=t.g(s),l=a.l4(),c=a.m4(),h=l.c1c_1,p=l.b1c_1.j1b(h),f={_v:0};if(Ar(this),zr(this,no(f,h)),null==c){var _=l.b1c_1;Ht(_,this.u15_1)&&ur(this);var d=l.b1c_1.v16();try{d.f19(p),this.e16_1=p;var v=jt();jr(this,null,null,null,null,eo(this,v,d,l),30),!v.h()&&(zr(this,ro(f,v)),wt())}finally{d.r17()}}else{var y=Oo(c.b1c_1,c.c1c_1);if(!y.h()){zr(this,oo(f,y));var m=this.p14_1.j1b(h);mr(this,m,yr(this,m)+y.f()|0)}zr(this,io(this,c,l));var g=c.b1c_1,b=g.v16();try{n:{var $=this.t15_1,w=this.a15_1;this.a15_1=null;try{this.t15_1=b;var x=g.j1b(c.c1c_1);b.f19(x),this.e16_1=x;var k,j=jt();e:{var C=this.r14_1;try{this.r14_1=j;var S=b.l17_1;kr(this,c.a1c_1,l.a1c_1,S,c.d1c_1,so(this,l));break e}finally{this.r14_1=C}}!j.h()&&(zr(this,ao(f,j)),k=wt()),k;break n}finally{this.t15_1=$,this.a15_1=w}}}finally{b.r17()}}zr(this,(Jo(),i))}while(r<=o);zr(this,uo),this.e16_1=0,wt();break t}finally{this.r14_1=e}}Hr(this)},co.prototype.v1d=function(t){this.a16_1&&this.v15_1.w1d(t)},co.prototype.x1d=function(t){!this.r15_1||Po(xt("Preparing a composition while composing is not supported")),this.r15_1=!0;try{t()}finally{this.r15_1=!1}},co.prototype.y1d=function(t){return this.r14_1.h()||Po(xt("Expected applyChanges() to have been called")),!(!t.q1a()&&this.f15_1.h()&&!this.d15_1||(Xr(this,t,null),this.r14_1.h()))},co.prototype.z1d=function(){return this.a1d()},co.prototype.h12=function(){return this.e1b()},co.prototype.i12=function(t){return this.g1a(t)},co.prototype.a1e=function(t){var n=t instanceof Ti?t:null;null==n||n.b1e(!0)},co.prototype.c1e=function(t,n){this.r14_1.h()||Po(xt("Expected applyChanges() to have been called")),Xr(this,t,n)},co.$metadata$=kt("ComposerImpl",[_o]),ho.prototype.toString=function(){return"Empty"},ho.$metadata$=kt(),po.prototype.d1e=function(){return this.j12_1},po.$metadata$=en("Companion"),_o.$metadata$=$t("Composer"),yo.$metadata$=kt("InvalidationResult",void 0,void 0,void 0,void 0,Jt.prototype),mo.prototype.e1e=function(){return this.y1b_1},mo.prototype.f1e=function(){return this.z1b_1},mo.prototype.g1e=function(){return this.a1c_1},mo.prototype.h1e=function(){return this.b1c_1},mo.prototype.i1e=function(){return this.c1c_1},mo.prototype.j1e=function(){return this.d1c_1},mo.prototype.k1e=function(){return this.e1c_1},mo.$metadata$=kt("MovableContentStateReference"),bo.prototype.h1e=function(){return this.h1c_1},bo.$metadata$=kt("MovableContentState"),wo.$metadata$=$t("ScopeUpdateScope"),xo.$metadata$=kt("MovableContent"),jo.prototype.m1e=function(){return this.j18_1},jo.prototype.n1e=function(){return this.k18_1},jo.prototype.o1e=function(){return ln("keyMap",1,un,(function(t){return t.o1e()}),null),this.o18_1.n2()},jo.prototype.u18=function(t,n){var e=null!=n?new qi(t,n):t;return Eo(this.o1e(),e)},jo.prototype.q18=function(t){return this.m18_1.a(t)},jo.prototype.i19=function(){return this.m18_1},jo.prototype.e19=function(t,n){if(t>n)for(var e=this.n18_1.d3().c();e.d();){var r=e.e(),o=r.p1e_1;o===t?r.p1e_1=n:n<=o&&ot)for(var i=this.n18_1.d3().c();i.d();){var s=i.e(),a=s.p1e_1;a===t?s.p1e_1=n:(t+1|0)<=a&&an)for(var r=this.n18_1.d3().c();r.d();){var o=r.e(),i=o.q1e_1;t<=i&&i<(t+e|0)?o.q1e_1=n+(i-t|0)|0:n<=i&&it)for(var s=this.n18_1.d3().c();s.d();){var a=s.e(),u=a.q1e_1;t<=u&&u<(t+e|0)?a.q1e_1=n+(u-t|0)|0:(t+1|0)<=u&&u=r&&!Ht(s,e)){var a=s.q1e_1+o|0;a>=0&&(s.q1e_1=a)}}return!0}return!1},jo.prototype.d19=function(t){var n=this.n18_1.b3(t.z18_1),e=null==n?null:n.p1e_1;return null==e?-1:e},jo.prototype.c19=function(t){var n=this.n18_1.b3(t.z18_1),e=null==n?null:n.q1e_1;return null==e?-1:e},jo.prototype.l19=function(t){var n=this.n18_1.b3(t.z18_1),e=null==n?null:n.r1e_1;return null==e?t.a19_1:e},jo.$metadata$=kt("Pending"),Co.prototype.s1e=function(){return this.u19_1},Co.prototype.t1e=function(){return this.v19_1},Co.prototype.u1e=function(){return this.w19_1},Co.prototype.a1a=function(){return this.u19_1.v1e(this.w19_1)},Co.$metadata$=kt("Invalidation"),Mo.prototype.z1e=function(t){this.p1e_1=t},Mo.prototype.a1f=function(){return this.p1e_1},Mo.prototype.b1f=function(t){this.q1e_1=t},Mo.prototype.c1f=function(){return this.q1e_1},Mo.$metadata$=kt("GroupInfo"),Bo.prototype.toString=function(){return"Updater(composer="+this.g1f_1+")"},Bo.prototype.hashCode=function(){return t=this.g1f_1,Kt(t);var t},Bo.prototype.equals=function(t){return function(t,n){if(!(n instanceof Bo))return!1;var e=n instanceof Bo?n.g1f_1:Ct();return!!Ht(t,e)}(this.g1f_1,t)},Bo.$metadata$=kt("Updater"),Lo.prototype.toString=function(){return"SkippableUpdater(composer="+this.h1f_1+")"},Lo.prototype.hashCode=function(){return t=this.h1f_1,Kt(t);var t},Lo.prototype.equals=function(t){return function(t,n){if(!(n instanceof Lo))return!1;var e=n instanceof Lo?n.h1f_1:Ct();return!!Ht(t,e)}(this.h1f_1,t)},Lo.$metadata$=kt("SkippableUpdater"),ii.prototype.m12=function(t){var n=this.x1f_1.j2(t);n>=0?(this.x1f_1.n4(n),this.v1f_1.lf(t)):this.w1f_1.a(t)},ii.prototype.n12=function(t){var n=this.w1f_1.j2(t);n>=0?(this.w1f_1.n4(n),this.v1f_1.lf(t)):this.x1f_1.a(t)},ii.prototype.z1f=function(){if(!this.x1f_1.h())t:{var t=Fh().t1a("Compose:onForgotten");try{var n=this.x1f_1.f()-1|0;if(0<=n){do{var e=n;n=n+-1|0;var r=this.x1f_1.g(e);this.v1f_1.i(r)||r.h1g()}while(0<=n);wt()}break t}finally{Fh().f1b(t)}}if(!this.w1f_1.h())t:{var o=Fh().t1a("Compose:onRemembered");try{var i=this.w1f_1,s=0,a=i.f()-1|0;if(s<=a){do{var u=s;s=s+1|0;var l=i.g(u);this.v1f_1.lf(l),l.i1g()}while(s<=a);wt()}break t}finally{Fh().f1b(o)}}},ii.prototype.a1g=function(){if(!this.y1f_1.h())t:{var t=Fh().t1a("Compose:sideeffects");try{var n=this.y1f_1,e=0,r=n.f()-1|0;if(e<=r)do{var o=e;e=e+1|0,n.g(o)()}while(e<=r);this.y1f_1.s7(),wt();break t}finally{Fh().f1b(t)}}},ii.prototype.c1g=function(){if(!this.v1f_1.h())t:{var t=Fh().t1a("Compose:abandons");try{for(var n=this.v1f_1.c();n.d();){var e=n.e();n.o4(),e.j1g()}wt();break t}finally{Fh().f1b(t)}}},ii.$metadata$=kt("RememberEventDispatcher",[tr]),ai.prototype.h1e=function(){return this.w13_1},ai.prototype.e1g=function(){return this.h14_1.r15_1},ai.prototype.o1g=function(){return this.k14_1},ai.prototype.p1g=function(t){t:for(;;){var n,e=this.t13_1.mu(),r=e;if(null==r||Ht(r,Go()))n=t;else if(null!=r&&Ft(r,hn))n=[e,t];else{if(null==r||!cn(r)){var o="corrupt pendingModifications: "+this.t13_1;throw zt(xt(o))}n=_n(null!=e&&cn(e)?e:Ct(),t)}var i=n;if(this.t13_1.q1g(e,i)){null==e&&(this.u13_1,Zo(this),wt());break t}}},ai.prototype.r1g=function(t){for(var n=t.c();n.d();){var e=n.e();if(this.x13_1.s1f(e)||this.z13_1.s1f(e))return!0}return!1},ai.prototype.x1d=function(t){return this.h14_1.x1d(t)},ai.prototype.s1g=function(t){if(!this.h14_1.u1c()){var n=this.h14_1.a1d();if(null==n);else{if(n.b1e(!0),this.x13_1.u1f(t,n),Ft(t,bi)){this.z13_1.t1g(t);for(var e=t.u1g().c();e.d();){var r=e.e();this.z13_1.u1f(r,t)}}n.v1g(t),wt()}}},ai.prototype.w1g=function(t){this.u13_1,ni(this,t);var n,e=this.z13_1,r=iu(e,t);if(r>=0){for(var o=ou(e,r).c();o.d();)ni(this,o.e());n=wt()}return n},ai.prototype.x1g=function(){this.u13_1,Xo(this);var t,n=!1;try{var e=this.h14_1.y1d(oi(this));e||Zo(this),n=!0,t=e}finally{!n&&!this.v13_1.h()&&new ii(this.v13_1).c1g()}return t},ai.prototype.y1g=function(t){var n;t:{var e=0,r=t.f()-1|0;if(e<=r)do{var o=e;e=e+1|0;var i=t.g(o);if(!Ht(i.j4_1.a1c_1,this)){n=!1;break t}}while(e<=r);n=!0}go(n);var s=!1;try{this.h14_1.u1d(t);wt();s=!0}finally{!s&&!this.v13_1.h()&&new ii(this.v13_1).c1g()}},ai.prototype.z1g=function(t){var n=new ii(this.v13_1),e=t.h1c_1.a18();try{nr(e,n),wt()}finally{e.r17()}n.z1f()},ai.prototype.a1h=function(){this.u13_1,ei(this,this.a14_1),Zo(this),wt()},ai.prototype.b1h=function(){this.u13_1,!this.b14_1.h()&&(ei(this,this.b14_1),wt())},ai.prototype.d1d=function(){this.u13_1,this.h14_1.d1d(),!this.v13_1.h()&&(new ii(this.v13_1).c1g(),wt())},ai.prototype.c1h=function(){this.u13_1;for(var t=this.w13_1.p16_1,n=0,e=t.length;n=0){var o;this.f14_1=t instanceof ai?t:Ct(),this.g14_1=n;try{o=e()}finally{this.f14_1=null,this.g14_1=0}r=o}else r=e();return r},ai.prototype.e1h=function(t,n){t.f1h()&&t.s1d(!0);var e=t.m13_1;return null!=e&&this.w13_1.g1h(e)&&e.b1g()&&e.b1g()&&t.h1h()?ri(this,t,e,n):Wo()},ai.prototype.i1h=function(t,n){this.x13_1.k1g(t,n)},ai.prototype.j1h=function(t){this.x13_1.s1f(t)||this.z13_1.t1g(t)},ai.prototype.k1h=function(t){this.l14_1=t},ai.prototype.l1h=function(t){if(this.k14_1)throw zt(xt("The composition is disposed"));this.k1h(t),this.r13_1.m1h(this,this.l14_1)},ai.prototype.n1h=function(t){var n=!1;try{this.u13_1,Xo(this),this.h14_1.c1e(oi(this),t),wt(),n=!0}finally{!n&&!this.v13_1.h()&&new ii(this.v13_1).c1g()}},ai.$metadata$=kt("CompositionImpl",[ui]),ui.$metadata$=$t("ControlledComposition",[pi]),hi.$metadata$=en("ComposableSingletons$CompositionKt"),pi.$metadata$=$t("Composition"),di.prototype.d17=function(t){},di.prototype.l1g=function(t){},di.prototype.y16=function(){return _i()},di.prototype.x16=function(){},di.prototype.f17=function(){},di.prototype.g1c=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),bi.$metadata$=$t("DerivedState",[Ta]),wi.prototype.ls=function(){this.t1h_1()},wi.$metadata$=kt(void 0,[ki]),xi.prototype.v1h=function(t){return new wi(t)},xi.$metadata$=kt("DisposableEffectScope"),ki.$metadata$=$t("DisposableEffectResult"),ji.prototype.i1g=function(){var t=this.y1h_1;null==t||vn(t,"Old job was still running!",null,2,null),this.y1h_1=yn(this.x1h_1,null,null,this.w1h_1,3,null)},ji.prototype.h1g=function(){var t=this.y1h_1;null==t||t.fq(null,1,null),this.y1h_1=null},ji.prototype.j1g=function(){var t=this.y1h_1;null==t||t.fq(null,1,null),this.y1h_1=null},ji.$metadata$=kt("LaunchedEffectImpl",[xs]),Ci.prototype.i1g=function(){this.a1i_1=this.z1h_1((Si(),j))},Ci.prototype.h1g=function(){var t=this.a1i_1;null==t||t.ls(),this.a1i_1=null},Ci.prototype.j1g=function(){},Ci.$metadata$=kt("DisposableEffectImpl",[xs]),qi.prototype.hashCode=function(){return bt(zi(0,this.b1i_1),31)+zi(0,this.c1i_1)|0},qi.prototype.toString=function(){return"JoinedKey(left="+mn(this.b1i_1)+", right="+mn(this.c1i_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.b1i_1,n.b1i_1)&&!!Ht(this.c1i_1,n.c1i_1)},qi.$metadata$=kt("JoinedKey"),Oi.$metadata$=en("Key",[gn]),Mi.$metadata$=$t("MonotonicFrameClock",[bn]),Ei.prototype.toString=function(){return"OpaqueKey(key="+this.d1i_1+")"},Ei.prototype.hashCode=function(){return $n(this.d1i_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.d1i_1===n.d1i_1},Ei.$metadata$=kt("OpaqueKey"),Ti.prototype.i1e=function(){return this.m13_1},Ti.prototype.b1g=function(){var t;if(null!=this.l13_1){var n=this.m13_1,e=null==n?null:n.b1g();t=null!=e&&e}else t=!1;return t},Ti.prototype.h1h=function(){return!(null==this.n13_1)},Ti.prototype.b1e=function(t){this.k13_1=t?1|this.k13_1:-2&this.k13_1},Ti.prototype.i19=function(){return!(0==(1&this.k13_1))},Ti.prototype.b1d=function(t){this.k13_1=t?2|this.k13_1:-3&this.k13_1},Ti.prototype.f1h=function(){return!(0==(2&this.k13_1))},Ti.prototype.s1d=function(t){this.k13_1=t?4|this.k13_1:-5&this.k13_1},Ti.prototype.c1d=function(){return!(0==(4&this.k13_1))},Ti.prototype.h1a=function(t){this.k13_1=t?8|this.k13_1:-9&this.k13_1},Ti.prototype.f1d=function(){return!(0==(8&this.k13_1))},Ti.prototype.y19=function(t){var n=this.n13_1;if(null==(null==n?null:n(t,1)))throw zt("Invalid restart scope")},Ti.prototype.n1f=function(t){var n=this.l13_1,e=null==n?null:n.e1h(this,t);return null==e?Wo():e},Ti.prototype.qt=function(){this.l13_1=null,this.p13_1=null,this.q13_1=null},Ti.prototype.l1c=function(t){this.l13_1=t},Ti.prototype.d1h=function(){var t=this.l13_1;null==t||t.e1h(this,null)},Ti.prototype.l1e=function(t){this.n13_1=t},Ti.prototype.t1d=function(){return!(0==(16&this.k13_1))},Ti.prototype.i1a=function(t){this.o13_1=t,Di(this,!1)},Ti.prototype.o1d=function(){Di(this,!0)},Ti.prototype.v1g=function(t){if(0!=(32&this.k13_1))return wt();var n,e=this.p13_1;if(null==e){var r=new Ga;this.p13_1=r,n=r}else n=e;if(n.i1i(t,this.o13_1),Ft(t,bi)){var o,i=this.q13_1;if(null==i){var s=Ya(0,1);this.q13_1=s,o=s}else o=i;o.f1g(t,t.q1h())}},Ti.prototype.t1f=function(){return!(null==this.q13_1)},Ti.prototype.v1e=function(t){if(null==t)return!0;var n=this.q13_1;if(null==n)return!0;var e,r=n;if(t.q1a()){var o;t:if(null!=t&&Ft(t,wn)&&t.h())o=!0;else{for(var i=t.c();i.d();){var s=i.e();if(!Ft(s,bi)||!Ht(r.o1h(s),s.q1h())){o=!1;break t}}o=!0}e=o}else e=!1;return!e},Ti.prototype.x19=function(){var t=this.l13_1;if(null==t);else{var n=this.p13_1;if(null==n);else{Ii(this,!0);try{var e=0,r=n.e1i_1;if(e0&&(this.s1i_1.i(t)||(this.s1i_1.a(t),wt())),function(t,n){var e;t.p1i_1;t:{var r=t.w1i_1,o=0,i=r.f()-1|0;if(o<=i)do{var s=o;o=o+1|0;var a=r.g(s);if(Ht(a.a1c_1,n)){e=!0;break t}}while(o<=i);e=!1}if(!e)return wt();var u=jt();for(ls(u,t,n);!u.h();)es(t,u,null),ls(u,t,n)}(this,t),t.a1h(),t.b1h(),e||Mc().k1m()},gs.$metadata$=kt("Recomposer",void 0,void 0,void 0,void 0,di.prototype),bs.$metadata$=$t("RecomposerInfo"),xs.$metadata$=$t("RememberObserver"),Cs.$metadata$=en("Companion"),na.prototype.d=function(){return this.p1m_1this.g13_1&&tthis.c13_1.s1a(0))e=n+this.k19(n)|0;else{var r=this.c13_1.t1m(n);e=r<0?n+this.k19(n)|0:(Ns(this)-this.t12_1|0)-this.d13_1.b1a(r)|0}return t>n&&t=0||Po(xt("Cannot insert auxiliary data when not inserting"));var n=this.g13_1,e=Fs(this,n);!ha(this.p12_1,e)||Po(xt("Group already has auxiliary data")),Ts(this,1,n);var r,o,i=Ys(this.p12_1,this,e),s=Hs(this,i);if(this.v12_1>i){var a=this.v12_1-i|0;if(!(a<3))throw zt(xt("Moving more than two slot not supported"));a>1&&(this.q12_1[s+2|0]=this.q12_1[s+1|0]),this.q12_1[s+1|0]=this.q12_1[s]}r=this.p12_1,o=bt(e,5)+1|0,r[o]=268435456|r[o],this.q12_1[s]=t;var u=this.v12_1;this.v12_1=u+1|0},ea.prototype.l1m=function(t){return Rs(this,this.f13_1,t)},ea.prototype.q1b=function(t,n){return Rs(this,t.u1m(this),n)},ea.prototype.y1m=function(t){this.v12_1<=this.w12_1||Po(xt("Writing to an invalid slot")),this.q12_1[Hs(this,this.v12_1-1|0)]=t},ea.prototype.s1b=function(t,n){var e,r=Fs(this,this.f13_1),o=Ks(this.p12_1,this,r),i=Ws(this.p12_1,this,Fs(this,this.f13_1+1|0)),s=o+t|0;s>=o&&s0&&Ts(this,1,this.g13_1);var t=this.q12_1,n=this.v12_1;return this.v12_1=n+1|0,t[Hs(this,n)]},ea.prototype.k1c=function(t,n){return this.z1m(this.j1b(t),n)},ea.prototype.z1m=function(t,n){var e=Fs(this,t),r=Ks(this.p12_1,this,e),o=Ws(this.p12_1,this,Fs(this,t+1|0)),i=r+n|0;if(!(r<=i&&i=0))throw rn(xt("Cannot seek backwards"));if(!(this.a13_1<=0))throw zt(xt("Cannot call seek() while inserting"));if(0===t)return wt();var n,e=this.f13_1+t|0;e>=this.g13_1&&e<=this.u12_1||(n="Cannot seek outside the current group ("+this.g13_1+"-"+this.u12_1+")",Po(xt(n))),this.f13_1=e;var r=Ws(this.p12_1,this,Fs(this,e));this.v12_1=r,this.w12_1=r},ea.prototype.b18=function(){var t=this.u12_1;this.f13_1=t,this.v12_1=Ws(this.p12_1,this,Fs(this,t))},ea.prototype.v18=function(){var t=this.a13_1;this.a13_1=t+1|0,0===t&&Ps(this)},ea.prototype.s19=function(){if(!(this.a13_1>0))throw zt(xt("Unbalanced begin/end insert"));var t=this;t.a13_1=t.a13_1-1|0,0===t.a13_1&&(this.e13_1.f()!==this.c13_1.f()&&Po(xt("startGroup/endGroup mismatch while inserting")),Ms(this))},ea.prototype.d18=function(){if(0!==this.a13_1)throw rn(xt("Key must be supplied when inserting"));js(this,0,fo().j12_1,!1,fo().j12_1)},ea.prototype.g18=function(t,n){return js(this,t,n,!1,fo().j12_1)},ea.prototype.i18=function(t){return js(this,125,t,!0,fo().j12_1)},ea.prototype.h18=function(t,n,e){return js(this,t,n,!1,e)},ea.prototype.r19=function(){var t=this.a13_1>0,n=this.f13_1,e=this.u12_1,r=this.g13_1,o=Fs(this,r),i=this.b13_1,s=n-r|0,a=ia(this.p12_1,o);if(t)pa(this.p12_1,o,s),fa(this.p12_1,o,i),this.b13_1=this.e13_1.h19()+(a?1:i)|0,this.g13_1=Us(this.p12_1,this,r);else{if(n!==e)throw rn(xt("Expected to be at the end of a group"));var u=ca(this.p12_1,o),l=sa(this.p12_1,o);pa(this.p12_1,o,s),fa(this.p12_1,o,i);var c=this.c13_1.h19();Ms(this),this.g13_1=c;var h=Us(this.p12_1,this,r);if(this.b13_1=this.e13_1.h19(),h===c){this.b13_1=this.b13_1+(a?0:i-l|0)|0}else{var p=s-u|0,f=a?0:i-l|0;if(0!==p||0!==f)for(var _=h;0!==_&&_!==c&&(0!==f||0!==p);){var d=Fs(this,_);if(0!==p){var v=ca(this.p12_1,d)+p|0;pa(this.p12_1,d,v)}0!==f&&fa(this.p12_1,d,sa(this.p12_1,d)+f|0),ia(this.p12_1,d)&&(f=0),_=Us(this.p12_1,this,_)}this.b13_1=this.b13_1+f|0}}return i},ea.prototype.i1f=function(t){if(!(this.a13_1<=0))throw rn(xt("Cannot call ensureStarted() while inserting"));var n=this.g13_1;if(n!==t){if(!(t>=n&&t=t;)r.n1m();wt()}var o=Bs(this,t,this.f13_1-t|0);Ls(this,n,this.v12_1-n|0,t-1|0),this.f13_1=t,this.v12_1=n;return this.b13_1=this.b13_1-e|0,o},ea.prototype.j13=function(){return new na(Ws(this.p12_1,this,Fs(this,this.f13_1)),Ws(this.p12_1,this,Fs(this,this.f13_1+this.k19(this.f13_1)|0)),this)},ea.prototype.u1b=function(t){if(0!==this.a13_1)throw rn(xt("Cannot move a group while inserting"));if(!(t>=0))throw rn(xt("Parameter offset is out of bounds"));if(0===t)return wt();for(var n=this.f13_1,e=this.g13_1,r=this.u12_1,o=t,i=n;o>0;){if(!((i=i+ca(this.p12_1,Fs(this,i))|0)<=r))throw rn(xt("Parameter offset is out of bounds"));o=o-1|0}var s=ca(this.p12_1,Fs(this,i)),a=this.v12_1,u=Ws(this.p12_1,this,Fs(this,i)),l=Ws(this.p12_1,this,Fs(this,i+s|0)),c=l-u|0,h=this.f13_1-1|0;Ts(this,c,Math.max(h,0)),Ds(this,s);var p=this.p12_1,f=Fs(this,i+s|0),_=bt(f,5),d=Fs(this,n),v=bt(d,5),y=_+bt(s,5)|0;if(Hn(p,p,v,_,y),c>0){var m=this.q12_1,g=Hs(this,u+c|0),b=Hs(this,l+c|0);Hn(m,m,a,g,b)}var $=(u+c|0)-a|0,w=this.x12_1,x=this.y12_1,k=this.q12_1.length,j=this.z12_1,C=n,S=n+s|0;if(C=0)t:for(;s=n&&l=t.s12_1?_.d1b_1=0|-(i-d|0):_.d1b_1=d;var v=ma(t.r12_1,d,i);t.r12_1.ag(v,_)}while(h<=p)})(this,i+s|0,n,s),!Bs(this,i+s|0,s)||Po(xt("Unexpectedly removed anchors")),As(this,e,this.u12_1,n),c>0&&Ls(this,u+c|0,c,(i+s|0)-1|0)},ea.prototype.r1c=function(t,n,e){if(!(e.a13_1>0))throw rn(xt("Failed requirement."));if(0!==this.a13_1)throw rn(xt("Failed requirement."));if(!t.b1g())throw rn(xt("Failed requirement."));var r=this.j1b(t)+n|0,o=this.f13_1;if(!(o<=r&&r0;l>=o;){var h=Fs(this,l);pa(this.p12_1,h,ca(this.p12_1,h)-s|0),c&&(ia(this.p12_1,h)?c=!1:fa(this.p12_1,h,sa(this.p12_1,h)-a|0)),l=this.x17(l)}if(c){go(this.b13_1>=a);this.b13_1=this.b13_1-a|0}return u},ea.prototype.o1c=function(t,n){if(!(this.a13_1>0))throw rn(xt("Failed requirement."));if(0===n&&0===this.f13_1&&0===this.o12_1.o16_1){var e=this.p12_1,r=this.q12_1,o=this.r12_1,i=t.n16_1,s=t.o16_1,a=t.p16_1,u=t.q16_1;return this.p12_1=i,this.q12_1=a,this.r12_1=t.u16_1,this.s12_1=s,this.t12_1=(i.length/5|0)-s|0,this.x12_1=u,this.y12_1=a.length-u|0,this.z12_1=s,t.a1n(e,0,r,0,o),this.r12_1}var l,c=t.a18();try{l=ks(Ss(),c,n,this,!0,!0)}finally{c.r17()}return l},ea.prototype.j1c=function(t,n,e){go(this.a13_1<=0&&1===this.k19(this.f13_1+t|0));var r=this.f13_1,o=this.v12_1,i=this.w12_1;this.m1c(t),this.d18(),this.v18();var s,a=n.a18();try{s=ks(Ss(),a,e,this,!1,!0)}finally{a.r17()}var u=s;return this.s19(),this.r19(),this.f13_1=r,this.v12_1=o,this.w12_1=i,u},ea.prototype.w18=function(t){var n,e=this.r12_1,r=Aa(e,t,this.f());if(r<0){var o=new oa(t<=this.s12_1?t:0|-(this.f()-t|0));e.ag(0|-(r+1|0),o),n=o}else n=e.g(r);return n},ea.prototype.b1n=function(t){var n,e,r,o=Fs(this,t);ba(this.p12_1,o)||(n=this.p12_1,e=!0,r=bt(o,5)+1|0,n[r]=e?134217728|n[r]:-134217729&n[r],$a(this.p12_1,o)||qs(this,this.x17(t)))},ea.prototype.k1a=function(t,n,e){return 0!=(1&n)&&(t=this.g13_1),this.b1n(t)},ea.prototype.j1b=function(t){var n=t.d1b_1;return n<0?this.f()+n|0:n},ea.prototype.toString=function(){return"SlotWriter(current = "+this.f13_1+" end="+this.u12_1+" size = "+this.f()+" gap="+this.s12_1+"-"+(this.s12_1+this.t12_1|0)+")"},ea.prototype.f=function(){return Ns(this)-this.t12_1|0},ea.$metadata$=kt("SlotWriter"),ra.prototype.c1n=function(){return this.u16_1},ra.prototype.fu=function(){return 0===this.o16_1},ra.prototype.d1n=function(t){var n,e=this.v16();try{n=t(e)}finally{e.r17()}return n},ra.prototype.e1n=function(t){var n,e=this.a18();try{n=t(e)}finally{e.r17()}return n},ra.prototype.v16=function(){if(this.s16_1)throw zt("Cannot read while a writer is pending");var t=this.r16_1;return this.r16_1=t+1|0,new za(this)},ra.prototype.a18=function(){!this.s16_1||Po(xt("Cannot start a writer when another writer is pending")),this.r16_1<=0||Po(xt("Cannot start a writer when a reader is pending")),this.s16_1=!0;var t=this.t16_1;return this.t16_1=t+1|0,new ea(this)},ra.prototype.j1b=function(t){if(!this.s16_1||Po(xt("Use active SlotWriter to determine anchor location instead")),!t.b1g())throw rn(xt("Anchor refers to a group that was removed"));return t.d1b_1},ra.prototype.g1h=function(t){var n;if(t.b1g()){var e=Aa(this.u16_1,t.d1b_1,this.o16_1);n=e>=0&&Ht(this.u16_1.g(e),t)}else n=!1;return n},ra.prototype.d1g=function(t,n){var e;if(!this.s16_1||Po(xt("Writer is active")),0<=t&&t0))throw rn(xt("Unexpected reader close()"));var n=this.r16_1;this.r16_1=n-1|0},ra.prototype.w1m=function(t,n,e,r,o,i){if(t.o12_1!==this||!this.s16_1)throw rn(xt("Unexpected writer close()"));this.s16_1=!1,this.a1n(n,e,r,o,i)},ra.prototype.a1n=function(t,n,e,r,o){this.n16_1=t,this.o16_1=n,this.p16_1=e,this.q16_1=r,this.u16_1=o},ra.prototype.c=function(){return new Pa(this,0,this.o16_1)},ra.$metadata$=kt("SlotTable",[Oh,Jn]),oa.prototype.g1n=function(t){this.d1b_1=t},oa.prototype.t1e=function(){return this.d1b_1},oa.prototype.b1g=function(){return!(this.d1b_1===Wn().x_1)},oa.prototype.n1c=function(t){return t.j1b(this)},oa.prototype.u1m=function(t){return t.j1b(this)},oa.$metadata$=kt("Anchor"),_a.prototype.o1m=function(t){if(!this.m1m_1.h()&&(this.m1m_1.g(0)===t||this.m1m_1.g(this.m1m_1.f()-1|0)===t))return wt();var n=this.m1m_1.f();this.m1m_1.a(t);t:for(;n>0;){var e=((n+1|0)>>>1|0)-1|0,r=this.m1m_1.g(e);if(!(t>r))break t;this.m1m_1.p4(n,r),n=e}this.m1m_1.p4(n,t)},_a.prototype.q1a=function(){return!this.m1m_1.h()},_a.prototype.h1d=function(){return Gn(this.m1m_1)},_a.prototype.n1m=function(){this.m1m_1.f()>0||Po(xt("Set is empty"));for(var t=this.m1m_1.g(0);!this.m1m_1.h()&&this.m1m_1.g(0)===t;){this.m1m_1.p4(0,Yn(this.m1m_1)),this.m1m_1.n4(this.m1m_1.f()-1|0);var n=0,e=this.m1m_1.f(),r=this.m1m_1.f()>>>1|0;t:for(;ns){if(u>o){this.m1m_1.p4(n,u),this.m1m_1.p4(a,o),n=a;continue t}break t}}if(!(s>o))break t;this.m1m_1.p4(n,s),this.m1m_1.p4(i,o),n=i}}return t},_a.$metadata$=kt("PrioritySet"),za.prototype.s1m=function(){return this.l17_1},za.prototype.f=function(){return this.i17_1},za.prototype.x17=function(t){return va(this.h17_1,t)},za.prototype.k1b=function(){return ia(this.h17_1,this.l17_1)},za.prototype.c1a=function(t){return ia(this.h17_1,t)},za.prototype.d1a=function(t){return sa(this.h17_1,t)},za.prototype.p1a=function(t){return ia(this.h17_1,t)?ja(this.h17_1,this,t):null},za.prototype.o19=function(){return!!this.t19()||this.l17_1===this.m17_1},za.prototype.t19=function(){return this.o17_1>0},za.prototype.r1a=function(){return ca(this.h17_1,this.l17_1)},za.prototype.k19=function(t){return ca(this.h17_1,t)},za.prototype.n19=function(){return this.m17_1},za.prototype.r18=function(){return this.l17_1=0?sa(this.h17_1,this.n17_1):0},za.prototype.n1b=function(t,n){var e=t+1|0,r=xa(this.h17_1,t)+n|0;return r<(e0||this.p17_1>=this.q17_1)return fo().j12_1;var t=this.p17_1;return this.p17_1=t+1|0,this.j17_1[t]},za.prototype.f18=function(){var t=this.o17_1;this.o17_1=t+1|0},za.prototype.q19=function(){if(!(this.o17_1>0))throw rn(xt("Unbalanced begin/end empty"));var t=this.o17_1;this.o17_1=t-1|0},za.prototype.r17=function(){return this.g17_1.f1n(this)},za.prototype.d18=function(){if(this.o17_1<=0){if(va(this.h17_1,this.l17_1)!==this.n17_1)throw rn(xt("Invalid slot table detected"));this.n17_1=this.l17_1,this.m17_1=this.l17_1+ca(this.h17_1,this.l17_1)|0;var t=this.l17_1;this.l17_1=t+1|0;var n=t;this.p17_1=xa(this.h17_1,n),this.q17_1=n>=(this.i17_1-1|0)?this.k17_1:ga(this.h17_1,n+1|0)}},za.prototype.e18=function(){if(this.o17_1<=0){if(!ia(this.h17_1,this.l17_1))throw rn(xt("Expected a node group"));this.d18()}},za.prototype.t17=function(){if(0!==this.o17_1)throw rn(xt("Cannot skip while in an empty region"));var t=ia(this.h17_1,this.l17_1)?1:sa(this.h17_1,this.l17_1);return this.l17_1=this.l17_1+ca(this.h17_1,this.l17_1)|0,t},za.prototype.b18=function(){if(0!==this.o17_1)throw rn(xt("Cannot skip the enclosing group while in an empty region"));this.l17_1=this.m17_1},za.prototype.f19=function(t){if(0!==this.o17_1)throw rn(xt("Cannot reposition while in an empty region"));this.l17_1=t;var n=t=t&&e<=n))throw rn(xt("Index "+t+" is not a parent of "+e));this.n17_1=t,this.m17_1=n,this.p17_1=0,this.q17_1=0},za.prototype.p19=function(){if(0===this.o17_1){if(this.l17_1!==this.m17_1)throw rn(xt("endGroup() not called at the end of a group"));var t=va(this.h17_1,this.n17_1);this.n17_1=t,this.m17_1=t<0?this.i17_1:t+ca(this.h17_1,t)|0}},za.prototype.s18=function(){var t=jt();if(this.o17_1>0)return t;for(var n=0,e=this.l17_1;e=this.z16_1.length&&(this.z16_1=Zn(this.z16_1,bt(this.z16_1.length,2)));var n=this.z16_1,e=this.a17_1;this.a17_1=e+1|0,n[e]=t},Fa.prototype.h19=function(){var t=this.z16_1,n=this;return n.a17_1=n.a17_1-1|0,t[n.a17_1]},Fa.prototype.s1a=function(t){return this.a17_1>0?this.h1d():t},Fa.prototype.h1d=function(){return this.z16_1[this.a17_1-1|0]},Fa.prototype.b1a=function(t){return this.z16_1[t]},Fa.prototype.h=function(){return 0===this.a17_1},Fa.prototype.s7=function(){this.a17_1=0},Fa.prototype.t1m=function(t){var n=0,e=this.a17_1;if(n0){if((e=function(t,n){for(var e=0,r=t.e1i_1-1|0,o=Dh(n);e<=r;){var i=(e+r|0)>>>1|0,s=t.f1i_1[i],a=Dh(s);if(ao))return s===n?i:Ja(t,i,n,o);r=i-1|0}}return 0|-(e+1|0)}(this,t))>=0)return this.g1i_1[e]=n,wt()}else e=-1;var r=0|-(e+1|0);if(this.e1i_1===this.f1i_1.length){var o=bt(this.f1i_1.length,2),i=Vn(Array(o),null),s=new Int32Array(bt(this.f1i_1.length,2)),a=this.f1i_1,u=r+1|0,l=this.e1i_1;Hn(a,i,u,r,l);var c=this.g1i_1,h=r+1|0,p=this.e1i_1;Hn(c,s,h,r,p);var f,_=this.f1i_1;Hn(_,i,0,0,r),f=this.g1i_1,Hn(f,s,0,0,r),this.f1i_1=i,this.g1i_1=s}else{var d=this.f1i_1,v=this.f1i_1,y=r+1|0,m=this.e1i_1;Hn(d,v,y,r,m);var g=this.g1i_1,b=this.g1i_1,$=r+1|0,w=this.e1i_1;Hn(g,b,$,r,w)}this.f1i_1[r]=t,this.g1i_1[r]=n;var x=this.e1i_1;this.e1i_1=x+1|0},Ga.prototype.j1o=function(t){var n=0,e=0,r=this.e1i_1;if(e0},Qa.prototype.p1h=function(t){return Xa(this,t)>=0},Qa.prototype.o1h=function(t){var n,e=Xa(this,t);if(e>=0){var r=this.b1b_1[e];n=null==r||St(r)?r:Ct()}else n=null;return n},Qa.prototype.f1g=function(t,n){var e=Xa(this,t);if(e>=0)this.b1b_1[e]=n;else{var r,o=0|-(e+1|0),i=this.c1b_1===this.a1b_1.length;if(i){var s=bt(this.c1b_1,2);r=Vn(Array(s),null)}else r=this.a1b_1;var a,u=r,l=this.a1b_1,c=o+1|0,h=this.c1b_1;if(Hn(l,u,c,o,h),i){var p=this.a1b_1;Hn(p,u,0,0,o)}if(u[o]=t,this.a1b_1=u,i){var f=bt(this.c1b_1,2);a=Vn(Array(f),null)}else a=this.b1b_1;var _=a,d=this.b1b_1,v=o+1|0,y=this.c1b_1;if(Hn(d,_,v,o,y),i){var m=this.b1b_1;Hn(m,_,0,0,o)}_[o]=n,this.b1b_1=_;var g=this.c1b_1;this.c1b_1=g+1|0}},Qa.prototype.h1i=function(t){var n=Xa(this,t);if(n>=0){var e=this.c1b_1,r=this.a1b_1,o=this.b1b_1;Hn(r,r,n,n+1|0,e),Hn(o,o,n,n+1|0,e);var i=e-1|0;return r[i]=null,o[i]=null,this.c1b_1=i,!0}return!1},Qa.prototype.m1o=function(t){var n=0,e=this.c1b_1;if(n=0},ru.prototype.i=function(t){return!!St(t)&&this.m3(St(t)?t:Ct())},ru.prototype.g=function(t){var n=this.x1e_1[t];return St(n)?n:Ct()},ru.prototype.y1e=function(t){var n;if(this.w1e_1>0){if((n=tu(this,t))>=0)return!1}else n=-1;var e=0|-(n+1|0);if(this.w1e_1===this.x1e_1.length){var r=bt(this.x1e_1.length,2),o=Vn(Array(r),null),i=this.x1e_1,s=e+1|0,a=this.w1e_1;Hn(i,o,s,e,a);var u=this.x1e_1;Hn(u,o,0,0,e),this.x1e_1=o}else{var l=this.x1e_1,c=this.x1e_1,h=e+1|0,p=this.w1e_1;Hn(l,c,h,e,p)}this.x1e_1[e]=t;var f=this.w1e_1;return this.w1e_1=f+1|0,!0},ru.prototype.h=function(){return 0===this.w1e_1},ru.prototype.q1a=function(){return this.w1e_1>0},ru.prototype.p1o=function(t){var n=tu(this,t);if(n>=0){if(n<(this.w1e_1-1|0)){var e=this.x1e_1,r=this.x1e_1,o=n+1|0,i=this.w1e_1;Hn(e,r,n,o,i)}var s=this.w1e_1;return this.w1e_1=s-1|0,this.x1e_1[this.w1e_1]=null,!0}return!1},ru.prototype.q1o=function(t){var n=0,e=0,r=this.w1e_1;if(e0){if((e=iu(t,n))>=0)return ou(t,e)}else e=-1;var r=0|-(e+1|0);if(t.r1f_10&&(m=t.o1f_1,Hn(m,g,0,0,r)),t.o1f_1=g;var j=t,C=j.r1f_1;return j.r1f_1=C+1|0,y}(this,t).y1e(n)},au.prototype.s1f=function(t){return iu(this,t)>=0},au.prototype.t1o=function(t,n){var e=iu(this,t);if(e>=0)for(var r=ou(this,e).c();r.d();)n(r.e())},au.prototype.k1g=function(t,n){var e=iu(this,t);if(e>=0){var r=this.o1f_1[e],o=this.q1f_1[r];if(null==o)return!1;var i=o,s=i.p1o(n);if(0===i.w1e_1){var a=e+1|0,u=this.r1f_1;if(a0){if(n!==o){var v=this.o1f_1[n];this.o1f_1[n]=i,this.o1f_1[o]=v}n=n+1|0}}while(e0){if(n!==o){var a=this.o1f_1[n];this.o1f_1[n]=i,this.o1f_1[o]=a}n=n+1|0}}while(e0},bu.prototype.q=function(){return this.b1p_1},bu.prototype.d1p=function(){if(!this.d())throw oe()},bu.prototype.e1p=function(){if(!this.p())throw oe()},bu.$metadata$=kt("AbstractListIterator",[ie]),$u.prototype.k1=function(t){var n=this.w1o();return n.k1(t),n.u1o()},$u.prototype.lf=function(t){var n=this.j(t);return-1!==n?this.n4(n):this},$u.prototype.i=function(t){return!(-1===this.j(t))},$u.prototype.o1=function(t){var n;t:if(Ft(t,wn)&&t.h())n=!0;else{for(var e=t.c();e.d();){var r=e.e();if(!this.i(r)){n=!1;break t}}n=!0}return n},$u.prototype.c=function(){return this.f1p()},$u.prototype.f1p=function(){return this.o(0)},$u.$metadata$=kt("AbstractPersistentList",[pu],void 0,void 0,void 0,se.prototype),wu.prototype.e=function(){if(!this.d())throw oe();var t=this.b1p_1;return this.b1p_1=t+1|0,this.i1p_1[t]},wu.prototype.r=function(){if(!this.p())throw oe();var t=this;return t.b1p_1=t.b1p_1-1|0,this.i1p_1[t.b1p_1]},wu.$metadata$=kt("BufferIterator",void 0,void 0,void 0,void 0,bu.prototype),Mu.prototype.f=function(){return this.l1p_1},Mu.prototype.a=function(t){var n=this.l1p_1-xu(this)|0;if(n=e)return Cu(this,this.j1p_1,t-e|0,n);var r=new fl(null);return Cu(this,Su(this,this.j1p_1,this.m1p_1,t,n,r),0,r.n1p_1)},Mu.prototype.n4=function(t){ac().e2(t,this.l1p_1);var n=xu(this);return t>=n?zu(this,this.j1p_1,n,this.m1p_1,t-n|0):zu(this,Ou(this,this.j1p_1,this.m1p_1,t,new fl(this.k1p_1[0])),n,this.m1p_1,0)},Mu.prototype.w1o=function(){return new Ju(this,this.j1p_1,this.k1p_1,this.m1p_1)},Mu.prototype.o=function(t){ac().d2(t,this.l1p_1);var n=this.k1p_1;return new Gu(this.j1p_1,cn(n)?n:Ct(),t,this.l1p_1,1+(this.m1p_1/hl()|0)|0)},Mu.prototype.g=function(t){ac().e2(t,this.l1p_1);var n=function(t,n){if(xu(t)<=n)return t.k1p_1;for(var e=t.j1p_1,r=t.m1p_1;r>0;){var o=e[pl(n,r)];e=null!=o&&cn(o)?o:Ct(),r=r-hl()|0}return e}(this,t)[t&ll()];return null==n||St(n)?n:Ct()},Mu.prototype.p4=function(t,n){if(ac().e2(t,this.l1p_1),xu(this)<=t){var e=Qn(this.k1p_1,al());return e[t&ll()]=n,new Mu(this.j1p_1,e,this.l1p_1,this.m1p_1)}return new Mu(Pu(this,this.j1p_1,this.m1p_1,t,n),this.k1p_1,this.l1p_1,this.m1p_1)},Mu.$metadata$=kt("PersistentVector",[pu],void 0,void 0,void 0,$u.prototype),Ju.prototype.f=function(){return this.w1p_1},Ju.prototype.x1p=function(){return this.rf_1},Ju.prototype.u1o=function(){var t;return this.u1p_1===this.q1p_1&&this.v1p_1===this.r1p_1?t=this.p1p_1:(this.t1p_1=new uc,this.q1p_1=this.u1p_1,this.r1p_1=this.v1p_1,t=null==this.u1p_1?0===this.v1p_1.length?sl():new nl(Qn(this.v1p_1,this.w1p_1)):new Mu(pn(this.u1p_1),this.v1p_1,this.w1p_1,this.s1p_1)),this.p1p_1=t,this.p1p_1},Ju.prototype.a=function(t){this.rf_1=this.rf_1+1|0;var n=Eu(this);if(n=t.f()){this.v1p_1=Ru(0,Iu(this,this.v1p_1),e,r);this.w1p_1=this.w1p_1+t.f()|0}else{var o=((t.f()+e|0)-1|0)/al()|0,i=Vn(Array(o),null);i[0]=Ru(0,Iu(this,this.v1p_1),e,r);var s=1;if(s>hl()<1<=e)return Fu(this,this.u1p_1,t-e|0,n),wt();var r=new fl(null),o=Hu(this,pn(this.u1p_1),this.s1p_1,t,n,r),i=r.n1p_1;Fu(this,o,0,null==i||St(i)?i:Ct())},Ju.prototype.g=function(t){ac().e2(t,this.w1p_1);var n=function(t,n){if(Au(t)<=n)return t.v1p_1;for(var e=pn(t.u1p_1),r=t.s1p_1;r>0;){var o=e[pl(n,r)];e=null!=o&&cn(o)?o:Ct(),r=r-hl()|0}return e}(this,t)[t&ll()];return null==n||St(n)?n:Ct()},Ju.prototype.n4=function(t){ac().e2(t,this.w1p_1);this.rf_1=this.rf_1+1|0;var n=Au(this);if(t>=n){var e=Uu(this,this.u1p_1,n,this.s1p_1,t-n|0);return null==e||St(e)?e:Ct()}var r=new fl(this.v1p_1[0]);Uu(this,Vu(this,pn(this.u1p_1),this.s1p_1,t,r),n,this.s1p_1,0);var o=r.n1p_1;return null==o||St(o)?o:Ct()},Ju.prototype.p4=function(t,n){if(ac().e2(t,this.w1p_1),Au(this)<=t){var e=Iu(this,this.v1p_1);if(e!==this.v1p_1){var r=this.rf_1;this.rf_1=r+1|0}var o=t&ll(),i=e[o];return e[o]=n,this.v1p_1=e,null==i||St(i)?i:Ct()}var s=new fl(null);this.u1p_1=Ku(this,pn(this.u1p_1),this.s1p_1,t,n,s);var a=s.n1p_1;return null==a||St(a)?a:Ct()},Ju.prototype.c=function(){return this.f1p()},Ju.prototype.f1p=function(){return this.o(0)},Ju.prototype.o=function(t){return ac().d2(t,this.w1p_1),new Zu(this,t)},Ju.$metadata$=kt("PersistentVectorBuilder",[hu],void 0,void 0,void 0,le.prototype),Gu.prototype.e=function(){if(this.d1p(),this.b1q_1.d()){var t=this.b1p_1;return this.b1p_1=t+1|0,this.b1q_1.e()}var n=this.b1p_1;return this.b1p_1=n+1|0,this.a1q_1[n-this.b1q_1.c1p_1|0]},Gu.prototype.r=function(){if(this.e1p(),this.b1p_1>this.b1q_1.c1p_1){var t=this;return t.b1p_1=t.b1p_1-1|0,this.a1q_1[t.b1p_1-this.b1q_1.c1p_1|0]}var n=this.b1p_1;return this.b1p_1=n-1|0,this.b1q_1.r()},Gu.$metadata$=kt("PersistentVectorIterator",void 0,void 0,void 0,void 0,bu.prototype),Zu.prototype.r=function(){Xu(this),this.e1p(),this.m1q_1=this.b1p_1-1|0;var t=this.l1q_1;if(null==t){var n=this.j1q_1.v1p_1,e=this;e.b1p_1=e.b1p_1-1|0;var r=n[e.b1p_1];return null==r||St(r)?r:Ct()}var o=t;if(this.b1p_1>o.c1p_1){var i=this.j1q_1.v1p_1,s=this;s.b1p_1=s.b1p_1-1|0;var a=i[s.b1p_1-o.c1p_1|0];return null==a||St(a)?a:Ct()}var u=this.b1p_1;return this.b1p_1=u-1|0,o.r()},Zu.prototype.e=function(){Xu(this),this.d1p(),this.m1q_1=this.b1p_1;var t=this.l1q_1;if(null==t){var n=this.j1q_1.v1p_1,e=this.b1p_1;this.b1p_1=e+1|0;var r=n[e];return null==r||St(r)?r:Ct()}var o=t;if(o.d()){var i=this.b1p_1;return this.b1p_1=i+1|0,o.e()}var s=this.j1q_1.v1p_1,a=this.b1p_1;this.b1p_1=a+1|0;var u=s[a-o.c1p_1|0];return null==u||St(u)?u:Ct()},Zu.prototype.o4=function(){var t;Xu(this),function(t){if(-1===t.m1q_1)throw ce()}(this),this.j1q_1.n4(this.m1q_1),this.m1q_10&&r<=o||i<0&&o<=r)do{var s=r;if(r=r+i|0,Ht(n,t.y1q_1[s]))return!0}while(s!==o);return!1}(o,n):o.z1q(t,n,e+5|0)}return!1},Wl.prototype.a1r=function(t,n,e){var r=1<0&&r<=o||i<0&&o<=r)do{var s=r;if(r=r+i|0,Ht(n,Tl(t,s)))return Bl(t,s)}while(s!==o);return null}(i,n):i.a1r(t,n,e+5|0)}return null},Wl.prototype.b1r=function(t,n,e,r){var o=1<0&&o<=i||s<0&&i<=o)do{var a=o;if(o=o+s|0,Ht(n,Tl(t,a))){if(e===Bl(t,a))return null;var u=t.y1q_1.slice();return u[a+1|0]=e,Il(Ml(0,0,u))}}while(a!==i);return El(Ml(0,0,Jl(t.y1q_1,0,n,e)))}(u,n,e);if(null==l)return null;s=l}else{var c=u.b1r(t,n,e,r+5|0);if(null==c)return null;s=c}var h,p=s,f=p;return h=Ll(this,a,o,p.c1r_1),f.c1r_1=h,p}return El(function(t,n,e,r){var o=t.k1s(n),i=Jl(t.y1q_1,o,e,r);return Ml(t.v1q_1|n,t.w1q_1,i)}(this,o,n,e))},Wl.prototype.e1r=function(t,n,e){var r=1<0&&r<=o||i<0&&o<=r)do{var s=r;if(r=r+i|0,Ht(n,Tl(t,s)))return Hl(t,s)}while(s!==o);return t}(a,n):a.e1r(t,n,e+5|0),function(t,n,e,r,o){return null==e?Rl(t,r,o):n!==e?Ll(t,r,o,e):t}(this,a,i,s,r)}return this},Wl.$metadata$=kt("TrieNode"),Xl.prototype.a1p=function(){return this.z1o_1},Xl.$metadata$=en("Companion"),Ql.prototype.f=function(){return this.q1s_1.u1q_1},Ql.prototype.i=function(t){return this.q1s_1.v2(t)},Ql.prototype.a=function(t){if(this.q1s_1.v2(t))return this;if(this.h())return new Ql(t,t,this.q1s_1.n(t,tc()));var n=this.p1s_1,e=null==n||St(n)?n:Ct(),r=pn(this.q1s_1.b3(e)),o=this.q1s_1.n(e,r.t1s(t)).n(t,nc(e));return new Ql(this.o1s_1,t,o)},Ql.prototype.lf=function(t){var n=this.q1s_1.b3(t);if(null==n)return this;var e=n,r=this.q1s_1.qg(t);if(e.u1s()){var o,i=r,s=e.r1s_1;o=(Ft(i,re)?i:Ct()).b3(s);var a=pn(o),u=r,l=e.r1s_1;r=u.n(null==l||St(l)?l:Ct(),a.t1s(e.s1s_1))}if(e.w1s()){var c,h=r,p=e.s1s_1;c=(Ft(h,re)?h:Ct()).b3(p);var f=pn(c),_=r,d=e.s1s_1;r=_.n(null==d||St(d)?d:Ct(),f.v1s(e.r1s_1))}return new Ql(e.u1s()?this.o1s_1:e.s1s_1,e.w1s()?this.p1s_1:e.r1s_1,r)},Ql.prototype.c=function(){return new rc(this.o1s_1,this.q1s_1)},Ql.$metadata$=kt("PersistentOrderedSet",[vu],void 0,void 0,void 0,ve.prototype),ec.prototype.t1s=function(t){return new ec(this.r1s_1,t)},ec.prototype.v1s=function(t){return new ec(t,this.s1s_1)},ec.prototype.w1s=function(){return!(this.s1s_1===ic())},ec.prototype.u1s=function(){return!(this.r1s_1===ic())},ec.$metadata$=kt("Links"),rc.prototype.d=function(){return this.z1s_1=n)throw we("index: "+t+", size: "+n)},sc.prototype.d2=function(t,n){if(t<0||t>n)throw we("index: "+t+", size: "+n)},sc.$metadata$=en("ListImplementation"),uc.$metadata$=kt("MutabilityOwnership"),zc.$metadata$=$t("StateObject"),qc.prototype.ls=function(){return this.g1t_1()},qc.$metadata$=kt("sam$androidx_compose_runtime_snapshots_ObserverHandle$0",[Ec]),Oc.prototype.ls=function(){return this.h1t_1()},Oc.$metadata$=kt("sam$androidx_compose_runtime_snapshots_ObserverHandle$0",[Ec]),Pc.prototype.b11=function(){return Hc()},Pc.prototype.g1k=function(t,n){var e=Hc(),r=e instanceof Ic?e:null,o=null==r?null:r.i1t(t,n);if(null==o)throw zt("Cannot create a mutable snapshot of an read-only snapshot");return o},Pc.prototype.h1m=function(t){return Uc(vc()),mc(),kc().a(t),new qc((n=t,function(){return mc(),kc().lf(n),wt(),wt()}));var n},Pc.prototype.j1t=function(t){return mc(),jc().a(t),Vc(),new Oc((n=t,function(){return mc(),jc().lf(n),Vc(),wt()}));var n},Pc.prototype.k1m=function(){return Hc().k1m()},Pc.prototype.f1j=function(){mc();var t=Cc().mu().k1t();!0===(null==t?null:!t.h())&&Vc()},Pc.$metadata$=en("Companion"),Ac.prototype.m1t=function(t){this.u1a_1=t},Ac.prototype.l1t=function(){return this.u1a_1},Ac.prototype.n1t=function(t){this.v1a_1=t},Ac.prototype.z1a=function(){return this.v1a_1},Ac.prototype.ls=function(){this.w1a_1=!0,mc(),this.p1t(),wt()},Ac.prototype.q1t=function(t){var n=this.h1k();try{return t()}finally{this.i1k(n)}},Ac.prototype.h1k=function(){var t=yc().mu();return yc().s1h(this),t},Ac.prototype.i1k=function(t){yc().s1h(t)},Ac.prototype.r1t=function(){return this.w1a_1},Ac.prototype.s1t=function(){return this.x1a_1>=0},Ac.prototype.w1t=function(){mc(),this.x1t(),this.y1t(),wt()},Ac.prototype.x1t=function(){gc(bc().d1u(this.z1a()))},Ac.prototype.y1t=function(){this.p1t()},Ac.prototype.e1u=function(){if(this.w1a_1)throw rn(xt("Cannot use a disposed snapshot"))},Ac.prototype.p1t=function(){this.x1a_1>=0&&(Fc(this.x1a_1),this.x1a_1=-1)},Ac.prototype.f1u=function(){var t=this.x1a_1;return this.x1a_1=-1,t},Ac.$metadata$=kt("Snapshot"),Ec.$metadata$=$t("ObserverHandle"),Ic.prototype.t1t=function(){return this.o1k_1},Ic.prototype.u1t=function(){return this.p1k_1},Ic.prototype.i1t=function(t,n){this.e1u(),this.j1u(),this.k1u(this.z1a()),mc();var e=wc();$c(e+1|0);var r=e;gc(bc().l1u(r));var o=this.l1t();this.m1t(o.l1u(r));var i=new Kc(r,Jc(o,this.z1a()+1|0,r),function(t,n,e,r,o){return 0!=(4&r)&&(e=!0),Gc(t,n,e)}(t,this.t1t(),!1,4),Yc(n,this.u1t()),this);if(!this.u1k_1&&!this.w1a_1){var s=this.z1a(),a=(mc(),wc());$c(a+1|0),this.n1t(a),gc(bc().l1u(this.z1a())),wt(),this.m1t(Jc(this.l1t(),s+1|0,this.z1a()))}return i},Ic.prototype.w1k=function(){var t,n=this.k1t(),e=null!=n?Xc(Cc().mu(),this,bc().d1u(Cc().mu().z1a())):null;if(mc(),Zc(this),null==n||0===n.f()){this.x1t();var r=Cc().mu();Qc(r,vc());var o=r.k1t();t=null!=o&&!o.h()?tn(Yt(kc()),o):tn(Gt(),null)}else{var i=Cc().mu(),s=this.m1u(wc(),e,bc().d1u(i.z1a()));if(!Ht(s,Tc()))return s;this.x1t(),Qc(i,vc());var a=i.k1t();this.h1u(null),i.h1u(null),t=tn(Yt(kc()),a)}var u=t,l=u.l4(),c=u.m4();if(this.u1k_1=!0,null!=c&&!c.h()){var h=0,p=l.f()-1|0;if(h<=p)do{var f=h;h=h+1|0,l.g(f)(c,this)}while(h<=p)}if(null!=n&&!n.h()){var _=0,d=l.f()-1|0;if(_<=d)do{var v=_;_=_+1|0,l.g(v)(n,this)}while(_<=d)}return mc(),this.y1t(),wt(),Tc()},Ic.prototype.o1t=function(){return!1},Ic.prototype.ls=function(){this.w1a_1||(Ac.prototype.ls.call(this),this.n1u(this))},Ic.prototype.o1u=function(t){var n=this.t1k_1;this.t1k_1=n+1|0},Ic.prototype.n1u=function(t){if(!(this.t1k_1>0))throw rn(xt("Failed requirement."));var n=this;n.t1k_1=n.t1k_1-1|0,0===n.t1k_1&&(this.u1k_1||function(t){var n=t.k1t();if(null!=n){t.g1u(),t.h1u(null);for(var e=t.z1a(),r=n.c();r.d();)for(var o=r.e().f1o();null!=o;)(o.x1n_1===e||Se(t.r1k_1,o.x1n_1))&&(o.x1n_1=0),o=o.y1n_1}t.w1t()}(this))},Ic.prototype.k1m=function(){if(this.u1k_1||this.w1a_1)return wt();this.p1u()},Ic.prototype.x1t=function(){gc(bc().d1u(this.z1a()).q1u(this.r1k_1))},Ic.prototype.y1t=function(){this.r1u(),Ac.prototype.y1t.call(this)},Ic.prototype.g1u=function(){if(this.u1k_1)throw zt(xt("Unsupported operation on a snapshot that has been applied"))},Ic.prototype.j1u=function(){if(this.u1k_1&&!(this.x1a_1>=0))throw zt(xt("Unsupported operation on a disposed or applied snapshot"))},Ic.prototype.m1u=function(t,n,e){for(var r=null,o=this.l1t().l1u(this.z1a()).s1u(this.r1k_1),i=pn(this.k1t()),s=null,a=i.c();a.d();){var u=a.e(),l=u.f1o(),c=th(l,t,e);if(null!=c){var h=c,p=th(l,this.z1a(),o);if(null!=p){var f=p;if(!Ht(h,f)){var _,d=th(l,this.z1a(),this.l1t());null==d?nh():_=d;var v=_,y=null==n?null:n.b3(h),m=null==y?u.h1o(f,h,v):y,g=m;if(null==g)return new Bc(this);if(Ht(g,v));else if(Ht(g,h)){var b,$,w=r;null==w?(r=$=jt(),b=$):b=w,b.a(tn(u,h.w1n()));var x,k,j=s;null==j?(s=k=jt(),x=k):x=j,x.a(u)}else{var C,S,z=r;null==z?(r=S=jt(),C=S):C=z,C.a(Ht(m,f)?tn(u,f.w1n()):tn(u,m))}}}}}var q=r;if(null==q);else{this.p1u();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.x1n_1=this.z1a(),mc(),I.y1n_1=E.f1o(),E.g1o(I),wt()}while(O<=P);wt()}}var D=s;return null==D||i.nf(D),Tc()},Ic.prototype.t1u=function(t){this.k1u(this.z1a());var n=t();if(!this.u1k_1&&!this.w1a_1){var e=this.z1a(),r=(mc(),wc());$c(r+1|0),this.n1t(r),gc(bc().l1u(this.z1a())),wt(),this.m1t(Jc(this.l1t(),e+1|0,this.z1a()))}return n},Ic.prototype.p1u=function(){this.k1u(this.z1a());var t=wt();if(!this.u1k_1&&!this.w1a_1){var n=this.z1a(),e=(mc(),wc());$c(e+1|0),this.n1t(e),gc(bc().l1u(this.z1a())),wt(),this.m1t(Jc(this.l1t(),n+1|0,this.z1a()))}return t},Ic.prototype.k1u=function(t){mc(),this.r1k_1=this.r1k_1.l1u(t),wt()},Ic.prototype.u1u=function(t){if(t>=0){var n,e,r=this.s1k_1;e=new Int32Array([t]),n=ze([r,e]),this.s1k_1=n}},Ic.prototype.v1u=function(t){if(0===t.length)return wt();var n=this.s1k_1;if(0===n.length)this.s1k_1=t;else{var e;e=ze([n,t]),this.s1k_1=e}},Ic.prototype.r1u=function(){var t=0,n=this.s1k_1.length-1|0;if(t<=n)do{var e=t;t=t+1|0,Fc(this.s1k_1[e])}while(t<=n)},Ic.prototype.w1u=function(t){mc(),this.r1k_1=this.r1k_1.s1u(t),wt()},Ic.prototype.v1t=function(t){var n,e=this.k1t();if(null==e){var r=fn();this.h1u(r),n=r}else n=e;n.a(t)},Ic.prototype.h1u=function(t){this.q1k_1=t},Ic.prototype.k1t=function(){return this.q1k_1},Ic.prototype.x1u=function(){return this.u1k_1},Ic.$metadata$=kt("MutableSnapshot",void 0,void 0,void 0,void 0,Ac.prototype),Dc.$metadata$=en("Success",void 0,void 0,void 0,void 0,Lc.prototype),Bc.$metadata$=kt("Failure",void 0,void 0,void 0,void 0,Lc.prototype),Lc.$metadata$=kt("SnapshotApplyResult"),Rc.prototype.i1t=function(t,n){return eh((e=t,r=n,function(t){mc();var n=wc();return $c(n+1|0),new Ic(n,t,e,r)}));var e,r},Rc.prototype.k1m=function(){Vc()},Rc.prototype.r1v=function(t){qh()},Rc.prototype.n1u=function(t){return this.r1v(t)},Rc.prototype.s1v=function(t){qh()},Rc.prototype.o1u=function(t){return this.s1v(t)},Rc.prototype.w1k=function(){throw zt("Cannot apply the global snapshot directly. Call Snapshot.advanceGlobalSnapshot")},Rc.prototype.ls=function(){mc(),this.p1t(),wt()},Rc.$metadata$=kt("GlobalSnapshot",void 0,void 0,void 0,void 0,Ic.prototype),Nc.prototype.a1o=function(t){this.x1n_1=t},Nc.prototype.b1o=function(t){this.y1n_1=t},Nc.$metadata$=kt("StateRecord"),Kc.prototype.v1m=function(){return this.o1w_1},Kc.prototype.ls=function(){this.w1a_1||(Ic.prototype.ls.call(this),Wc(this))},Kc.prototype.w1k=function(){if(this.o1w_1.u1k_1||this.o1w_1.w1a_1)return new Bc(this);var t=this.k1t(),n=this.z1a(),e=null!=t?Xc(this.o1w_1,this,this.o1w_1.l1t()):null;if(mc(),Zc(this),null==t||0===t.f())this.w1t();else{var r=this.m1u(this.o1w_1.z1a(),e,this.o1w_1.l1t());if(!Ht(r,Tc()))return r;var o,i=this.o1w_1.k1t();if(null==i){var s=fn();this.o1w_1.h1u(s),o=s}else o=i;o.k1(t)}return this.o1w_1.z1a()0?this.v1v_1[0]:t},_h.prototype.z1v=function(t){!function(t,n){var e=t.v1v_1.length;if(n<=e)return wt();var r=bt(e,2),o=new Int32Array(r),i=new Int32Array(r),s=t.v1v_1,a=s.length;Hn(s,o,0,0,a);var u=t.w1v_1,l=u.length;Hn(u,i,0,0,l),t.v1v_1=o,t.w1v_1=i}(this,this.u1v_1+1|0);var n=this.u1v_1;this.u1v_1=n+1|0;var e=n,r=function(t){var n=t.x1v_1.length;if(t.y1v_1>=n){for(var e=0,r=bt(n,2),o=new Int32Array(r);e>1,o=n;o=0?(Me(),n=r<64):n=!1,n)return!new Bn(1,0).lb(r).yc(this.a1u_1).equals(new Bn(0,0));if(Me(),r>=64?(Me(),e=r0)return!1;var i,s=this.c1u_1;return null!=(i=null==s?null:gh(s,t)>=0)&&i},mh.prototype.l1u=function(t){var n,e=t-this.b1u_1|0;if(e>=0?(Me(),n=e<64):n=!1,n){var r=new Bn(1,0).lb(e);if(this.a1u_1.yc(r).equals(new Bn(0,0)))return new mh(this.z1t_1,this.a1u_1.gn(r),this.b1u_1,this.c1u_1)}else{var o;if(Me(),e>=64?(Me(),o=e=bt(64,2)){if(!this.g(t)){var a=this.z1t_1,u=this.a1u_1,l=this.b1u_1,c=null,h=t+1|0;Me();var p=h/64|0;Me();var f=bt(p,64);t:for(;l=0?(Me(),n=e<64):n=!1,n){var r=new Bn(1,0).lb(e);if(!this.a1u_1.yc(r).equals(new Bn(0,0)))return new mh(this.z1t_1,this.a1u_1.yc(r.fn()),this.b1u_1,this.c1u_1)}else{var o;if(Me(),e>=64?(Me(),o=e=0){var l=a.length-1|0;if(0===l)return new mh(this.z1t_1,this.a1u_1,this.b1u_1,null);var c=new Int32Array(l);return u>0&&Hn(a,c,0,0,u),u=0},jh.prototype.q=function(){return this.b1y_1+1|0},jh.prototype.r=function(){kh(this),Ch(this.b1y_1,this.a1y_1.f());var t=this.a1y_1.g(this.b1y_1),n=this.b1y_1;return this.b1y_1=n-1|0,t},jh.prototype.d=function(){return this.b1y_1<(this.a1y_1.f()-1|0)},jh.prototype.e=function(){kh(this);var t=this.b1y_1+1|0;Ch(t,this.a1y_1.f());var n=this.a1y_1.g(t);return this.b1y_1=t,n},jh.prototype.o4=function(){kh(this),this.a1y_1.n4(this.b1y_1);var t=this.b1y_1;this.b1y_1=t-1|0,this.c1y_1=this.a1y_1.s1x()},jh.$metadata$=kt("StateListIterator",[he]),Oh.$metadata$=$t("CompositionData"),Ph.$metadata$=$t("CompositionGroup",[Oh]),Eh.prototype.mu=function(){return this.k1f_1},Eh.prototype.q1w=function(t){this.k1f_1=t},Eh.prototype.m1f=function(t){var n=this.k1f_1;return this.k1f_1=t,n},Eh.prototype.q1g=function(t,n){var e;return Ht(t,this.k1f_1)?(this.k1f_1=n,e=!0):e=!1,e},Eh.$metadata$=kt("AtomicReference"),Ih.prototype.mu=function(){return this.r1h_1},Ih.prototype.s1h=function(t){this.r1h_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.n1y_1=this,this.o1y_1=Ne(It(this.n1y_1)),window.requestAnimationFrame(Th(this.m1y_1,this.o1y_1)),(t=Tn(this.o1y_1.pi(),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.f12=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]),Nh.prototype.t1a=function(t){return null},Nh.prototype.f1b=function(t){},Nh.$metadata$=en("Trace"),Uh.$metadata$=$t("ComposableLambda"),Wh.prototype.f1t=function(t){if(!Ht(this.c1t_1,t)){var n=null==this.c1t_1;this.c1t_1=t,n||function(t){if(t.b1t_1){var n=t.d1t_1;null!=n&&(n.d1h(),t.d1t_1=null);var e=t.e1t_1;if(null!=e){var r=0,o=e.f();if(r1&&i.a(P)}!function(t,n){if(n.f()>=2)for(var e=Zt(Xt(Yt(n).j35_1.c3())),r=n.c(),o=0;r.d();){var i=o;o=o+1|0;var s=r.e();if(0!==i){var a=Zt(Xt(s.j35_1.c3()));if(!At(e,a)){var u="Missing "+tn(e,Qt(a))+" in '"+s.h35_1+"' block";throw Gt(Ht(u))}}}for(var l=Ut(),c=n.c();c.d();)for(var h=c.e(),p=h.i35_1.v().c();p.d();){var f=p.e(),_=f.l2(),d=f.n2();if(l.v2(_)&&l.b3(_)!==d.f()){var v="Item count mismatch. For '"+_+"', "+l.b3(_)+" rows expected, but found "+d.f()+" in '"+h.h35_1+"' block";throw Gt(Ht(v))}var y=d.f();l.n(_,y)}}(0,o);var M=function(t,n){return It(n," vs ",null,null,0,null,Ur,30,null)}(0,o);return r.a(new Kr(M,"",o)),"All"!==e&&i.i(e)?new Vt(i,function(t,n,e){for(var r=Dt(),o=n.c();o.d();){for(var i=o.e(),s=Dt(),a=i.f36_1.c();a.d();){var u,l=a.e(),c=l.i35_1.b3(e);if(null==c)u=null;else{for(var h=Rt(Lt(c,10)),p=0,f=c.c();f.d();){var _,d=f.e(),v=p;p=v+1|0;var y=Wt(v);_=new Vt(Ir(Wr(),y+1|0),Kt(d)),h.a(_)}u=h}var m,g=null==u?null:Jt(u);if(null==g){var b="Invalid focus group '"+e+"' for "+l.h35_1;throw Gt(Ht(b))}m=g,s.a(new Sr(l.h35_1,m))}r.a(new Kr(e+" - "+i.d36_1,i.e36_1,s))}return r}(0,r,e)):new Vt(i,r)}(t,n,e),o=r.l4(),i=r.m4();return new Ar(Gr(),i,o)}function Ir(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 Dr(t,n){return t.m36_1.fa(n)}function Tr(t,n){var e=t.k36_1.ea(n," "),r=nn("\\s{2,}").ea(e," ");return Ht(Ft(Nt(r)?r:Mt()))}function Br(t,n){var e=t.l36_1.ea(n," "),r=nn("\\s{2,}").ea(e," ");return Ht(Ft(Nt(r)?r:Mt()))}function Lr(t,n){return!function(t,n){return t.j36_1.fa(n)}(t,n)}function Rr(t,n,e){var r;if(!en(e,n,!1,2,null))throw Gt(Ht("Invalid "+n+".Expected to start with '"+n+"' but found '"+e+"'"));var o=rn(e,n,"",!1,4,null);r=nn("\\s+").ea(o," ");for(var i=Bt(r,[", "],!1,0,6,null),s=Rt(Lt(i,10)),a=i.c();a.d();){var u,l,c=a.e(),h=rn(c,",","",!1,4,null);l=Ht(Ft(Nt(h)?h:Mt())),u=Bt(l,[" "],!1,0,6,null),s.a(u)}for(var p=s,f=Ut(),_=p.c();_.d();){var d=_.e(),v=d.g(0),y=d.g(1),m=on(y);f.n(v,m)}return f}function Nr(t,n){var e;t:{for(var r=n.i36_1.c();r.d();){var o=r.e();if(en(t,o,!1,2,null)){e=o;break t}}e=null}return e}function Fr(t,n){switch(t){case"startup type is: cold":case"startup type is: warm":return!0;default:return"startup type is: hot"===t}}function Hr(t){return Ht(Ft(Nt(t)?t:Mt()))}function Ur(t){return t.h35_1}function Vr(){y=this,this.h36_1="All";for(var t,n=zr(),e=Rt(n.length),r=n,o=0,i=r.length;o "+_);for(var y=Ut(),m=yn(["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=Bt($,[" "],!1,0,6,null).g(0),x=y.b3(w);if(null==x){m.h()&&m.a("rgba("+to()+", "+to()+", "+to()+", 1)");var k=Yt(m);m.lf(k);var j=k;y.n(w,j),b=j}else b=x;var C=b;r.n($,C)}var S=new Zr(r,y);return ln("groupMap: "+S),S}function to(){var t=mn(0,255);return bn(t,gn())}function no(){return b||(b=!0,t=nn("\\d+(.\\d+)?"),m=t),m;var t}function eo(){g=this;var t;t=nn("\\(input count : .+\\)$"),this.y35_1=t}function ro(){return null==g&&new eo,g}function oo(t,n){ro(),this.a36_1=t,this.b36_1=n,this.c36_1=0}function io(t,n){this.y36_1=t,this.z36_1=n,this.a37_1=8}function so(t,n,e,r,o,i){return function(t,n,e,r,o,i,s){return 0!=(8&o)&&(r="col-lg-6"),ao.call(s,t,n,e,r),s}(t,n,e,r,o,0,Object.create(ao.prototype))}function ao(t,n,e,r){this.d37_1=t,this.e37_1=n,this.f37_1=e,this.g37_1=r,this.h37_1=8}function uo(t,n,e){this.o36_1=t,this.p36_1=n,this.q36_1=e,this.r36_1=0}function lo(){$=this}function co(t,n,e){var r=n;return Cn()&&jn(1735144584,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-1. (AutoFormUi.kt:30)"),Sn("⌨️ Input",r,6),Cn()&&zn(),zt()}function ho(t,n,e){var r=n;return Cn()&&jn(1606031470,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-2. (AutoFormUi.kt:58)"),Sn("Benchmark :",r,6),Cn()&&zn(),zt()}function po(t,n,e){var r=n;return Cn()&&jn(1649730740,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-3. (AutoFormUi.kt:89)"),Sn("💾 SAVE",r,6),Cn()&&zn(),zt()}function fo(t,n,e){var r=n;return Cn()&&jn(2093096555,e,-1,"components.ComposableSingletons$AutoFormUiKt.lambda-4. (AutoFormUi.kt:108)"),Sn("🔗 SHARE",r,6),Cn()&&zn(),zt()}function _o(){var t;w=this,this.s37_1=(t=qn(1735144584,!1,co),function(n,e,r){return t.p1y(n,e,r)}),this.t37_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(1606031470,!1,ho)),this.u37_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(1649730740,!1,po)),this.v37_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(2093096555,!1,fo))}function vo(){return null==w&&new _o,w}function yo(t,n,e,r,o,i,s,a,u,l,c){var h=l;h=h.p1d(2009729622),On(h,"C(FormUi$composable)P(!1,8,7,2,4,6,5,3)");var p,f,_=c;Cn()&&jn(2009729622,_,-1,"components.FormUi$composable (AutoFormUi.kt:13)"),Pn(zt(),(p=new mo(r,t,null),(f=function(t,n){return p.r1j(t,n)}).$arity=1,f),h,64),Mn(null,vo().s37_1,h,48,1);var d=An(h,-1424983064,!0,function(t,n,e,r,o,i,s,a,u,l){return function(c,h,p){var f=h;Cn()&&jn(-1424983064,p,-1,"components.FormUi$composable. (AutoFormUi.kt:34)");var _=An(f,-1908664767,!0,function(t,n,e,r,o,i,s,a,u,l){return function(c,h,p){var f=h;Cn()&&jn(-1908664767,p,-1,"components.FormUi$composable.. (AutoFormUi.kt:35)"),f.j1a(-1629932627,"inputForm"),qi(t,n,e,r,o,f,64|14&i>>3|896&i>>12|7168&i>>12|57344&i>>12);var _=f;_.g12(547886695),On(_,"C(remember$composable):Composables.kt#9igjgp");var d,v=_,y=v.h12();if(y===En().j12_1){var m=go;v.i12(m),d=m}else d=y;var g=d,b=null==g||In(g)?g:Mt();_.k12();var $=b,w=An(f,1877033837,!0,function(t,n){return function(e,r,o){var i=r;Cn()&&jn(1877033837,o,-1,"components.FormUi$composable.... (AutoFormUi.kt:51)");var s=i;s.g12(547886695),On(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,l=u.h12();if(l===En().j12_1){var c=bo;u.i12(c),a=c}else a=l;var h=a,p=null==h||In(h)?h:Mt();return s.k12(),Fn("benchmark",p,vo().t37_1,i,390,0),Hn(t.o36_1,function(t,n){return function(e){return e.z20("benchmark"),e.y20(["form-control"]),Rn(e,"Benchmark data"),Nn(e,20),e.m28(function(t,n){return function(e){return t(n.q37(e.h2b_1,!1,!1,6,null)),zt()}}(t,n)),zt()}}(n,t),i,0,0),Cn()&&(zn(),zt()),zt()}}(s,a)),x=f;x.g12(-838505973),On(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j,C=x,S=x.l12(w),z=C.h12();if(S||z===En().j12_1){var q=(j=w,function(t,n,e){return j.p1y(t,n,e)});C.i12(q),k=q}else k=z;var O=k,P=null==O||In(O)?O:Mt();return x.k12(),Dn($,P,f,48,0),Gn(function(t,n){return function(e){return e.y20(["btn","btn-dark","float-end"]),e.w20($o),un(t.o36_1)&&(e.g20("disabled","true"),zt()),e.c21(function(t,n){return function(e){return t(n),zt()}}(n,t)),Kn(e,Wn()),zt()}}(s,u),vo().u37_1,f,48,0),Gn(function(t,n){return function(e){return e.y20(["btn","btn-dark","float-end"]),e.w20(wo),un(t.o36_1)&&(e.g20("disabled","true"),zt()),e.c21(function(t,n){return function(e){return t(n),zt()}}(n,t)),Kn(e,Wn()),zt()}}(s,l),vo().v37_1,f,48,0),f.m1a(),Cn()&&(zn(),zt()),zt()}}(t,n,e,r,o,i,s,a,u,l)),d=f;d.g12(-838505973),On(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y,m=d,g=d.l12(_),b=m.h12();if(g||b===En().j12_1){var $=(y=_,function(t,n,e){return y.p1y(t,n,e)});m.i12($),v=$}else v=b;var w=v,x=null==w||In(w)?w:Mt();return d.k12(),Yn(null,null,x,f,384,3),Cn()&&(zn(),zt()),zt()}}(n,e,s,a,u,_,t,r,o,i)),v=h;v.g12(-838505973),On(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m,g=v,b=v.l12(d),$=g.h12();if(b||$===En().j12_1){var w=(m=d,function(t,n,e){return m.p1y(t,n,e)});g.i12(w),y=w}else y=$;var x=y,k=null==x||In(x)?x:Mt();v.k12(),Dn(null,k,h,48,1),Cn()&&zn();var j=h.q1d();null===j||j.l1e(function(t,n,e,r,o,i,s,a,u,l){return function(c,h){return function(t,n,e,r,o,i,s,a,u,l,c,h){yo(t,n,e,r,o,i,s,a,u,c,1|l)}(t,n,e,r,o,i,s,a,u,l,c),zt()}}(t,n,e,r,o,i,s,a,u,c))}function mo(t,n,e){this.h38_1=t,this.i38_1=n,Tn.call(this,e)}function go(t){return t.y20(["form-group"]),zt()}function bo(t){return t.y20(["form-label"]),zt()}function $o(t){return Vn(t,Un(10)),zt()}function wo(t){return Vn(t,Un(10)),Jn(t,Un(10)),zt()}function xo(t,n,e){var r=n;return Cn()&&jn(1529185564,e,-1,"components.ComposableSingletons$AutoGroupToggleKt.lambda-1. (AutoGroupToggle.kt:29)"),Sn("Auto Group:",r,6),Cn()&&zn(),zt()}function ko(){var t;x=this,this.k38_1=(t=qn(1529185564,!1,xo),function(n,e,r){return t.p1y(n,e,r)})}function jo(t,n,e,r){var o=e;o=o.p1d(442093563),On(o,"C(AutoGroup$composable)");var i,s,a,u=r;if(0==(14&r)&&(u|=o.l1d(t)?4:2),0==(112&r)&&(u|=o.l12(n)?32:16),18==(91&u)&&o.x1b())o.b18();else{Cn()&&jn(442093563,u,-1,"components.AutoGroup$composable (AutoGroupToggle.kt:10)");var l=o;l.g12(547886695),On(l,"C(remember$composable):Composables.kt#9igjgp");var c,h=l,p=h.h12();if(p===En().j12_1){var f=Co;h.i12(f),c=f}else c=p;var _=c,d=null==_||In(_)?_:Mt();l.k12();var v=d,y=An(o,1468648411,!0,(s=t,a=n,function(t,n,e){var r=n;Cn()&&jn(1468648411,e,-1,"components.AutoGroup$composable. (AutoGroupToggle.kt:21)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,u=o,l=u.h12();if(l===En().j12_1){var c=zo;u.i12(c),i=c}else i=l;var h=i,p=null==h||In(h)?h:Mt();o.k12(),Fn("colorMap",p,(null==x&&new ko,x).k38_1,r,390,0),Zn(null,r,0,1);var f=r;f.g12(-1124426577),On(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d=f,v=!!(f.l12(s)|f.l12(a)),y=d.h12();if(v||y===En().j12_1){var m=function(t,n){return function(e){return e.z20("colorMap"),e.y20(["btn",t?"btn-success":"btn-secondary"]),e.c21(function(t){return function(n){return t(),zt()}}(n)),Kn(e,Wn()),zt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,b=null==g||In(g)?g:Mt();f.k12();var $=b,w=An(r,-431302815,!0,function(t){return function(n,e,r){var o=e;return Cn()&&jn(-431302815,r,-1,"components.AutoGroup$composable.. (AutoGroupToggle.kt:42)"),Sn(t?"ON":"OFF",o,0),Cn()&&(zn(),zt()),zt()}}(s)),k=r;k.g12(-838505973),On(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,S=k,z=k.l12(w),q=S.h12();if(z||q===En().j12_1){var O=(C=w,function(t,n,e){return C.p1y(t,n,e)});S.i12(O),j=O}else j=q;var P=j,M=null==P||In(P)?P:Mt();return k.k12(),Gn($,M,r,48,0),Cn()&&(zn(),zt()),zt()})),m=o;m.g12(-838505973),On(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,b=m,$=m.l12(y),w=b.h12();if($||w===En().j12_1){var k=(i=y,function(t,n,e){return i.p1y(t,n,e)});b.i12(k),g=k}else g=w;var j=g,C=null==j||In(j)?j:Mt();m.k12(),Dn(v,C,o,48,0),Cn()&&zn()}var S=o.q1d();null===S||S.l1e(function(t,n,e){return function(r,o){return function(t,n,e,r,o){jo(t,n,r,1|e)}(t,n,e,r),zt()}}(t,n,r))}function Co(t){return t.y20(["form-group"]),t.w20(So),zt()}function So(t){return Xn(t,Un(10)),zt()}function zo(t){return t.y20(["form-label"]),zt()}function qo(t,n,e,r,o,i){var s=o;s=s.p1d(-1606680691),On(s,"C(ChartUi$composable)P(2,1)");var a=i;Cn()&&jn(-1606680691,a,-1,"components.ChartUi$composable (ChartUi.kt:19)");var u,l=An(s,708700421,!0,(u=e,function(t,n,e){var r=n;return Cn()&&jn(708700421,e,-1,"components.ChartUi$composable. (ChartUi.kt:25)"),Sn(u.d37_1+" "+u.e37_1,r,0),Cn()&&(zn(),zt()),zt()})),c=s;c.g12(-838505973),On(c,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=c,_=c.l12(l),d=f.h12();if(_||d===En().j12_1){var v=(p=l,function(t,n,e){return p.p1y(t,n,e)});f.i12(v),h=v}else h=d;var y=h,m=null==y||In(y)?y:Mt();c.k12(),Mn(null,m,s,48,1);var g=s;g.g12(547886695),On(g,"C(remember$composable):Composables.kt#9igjgp");var b,w=g,x=w.h12();if(x===En().j12_1){var k=Oo;w.i12(k),b=k}else b=x;var j=b,C=null==j||In(j)?j:Mt();g.k12();var S=C,z=An(s,586919320,!0,function(t,n,e,r,o){return function(i,s,a){var u=s;return Cn()&&jn(586919320,a,-1,"components.ChartUi$composable. (ChartUi.kt:38)"),ue(t,n,function(t,n,e,r,o){return function(i){for(var s=Dt(),a=t.f37_1.v().c();a.d();){var u,l,c=a.e(),h=c.l2(),p=c.n2(),f={};f.label=h;var _,d=p.d3();if(l=se(d),f.data=l,n){var v=e.u36_1,y=f.label;_=(Ln(v,ae)?v:Mt()).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=r.w27(i),b={};null==$&&new lo,m="line",b.type=m;for(var w=t.f37_1.d3(),x=Dt(),k=w.c();k.d();){var j;j=k.e().c3(),vn(x,j)}var C,S,z,q=Qt(x),O=se(q),P={};P.labels=O,S=se(s),P.datasets=S,C=P,b.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,r){if(0!==r.length){var o=r[0],i=(o.datasetIndex,o.index),s=t[null!=i&&"number"==typeof i?i:Mt()];n(s)}return zt()}}(O,o),z=I,b.options=z,new Mo(new Z(g,b))}}(t,n,r,i,o),u,8|112&e<<3),Cn()&&(zn(),zt()),zt()}}(e,t,a,n,r)),q=s;q.g12(-838505973),On(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.l12(z),A=P.h12();if(M||A===En().j12_1){var E=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(z);P.i12(E),O=E}else O=A;var I=O,D=null==I||In(I)?I:Mt();q.k12(),Qn(S,D,s,48,0),Cn()&&zn();var T=s.q1d();null===T||T.l1e(function(t,n,e,r,o){return function(i,s){return function(t,n,e,r,o,i,s){qo(t,n,e,r,i,1|o)}(t,n,e,r,o,i),zt()}}(t,n,e,r,i))}function Oo(t){return t.w20(Po),zt()}function Po(t){return ne(t,te(100)),ee(t,te(100)),re(t,Un(700)),oe(t,Un(700)),zt()}function Mo(t){this.m38_1=t}function Ao(t,n,e){var r=n;return Cn()&&jn(-646215327,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-1. (EditableTitle.kt:29)"),Sn("Title :",r,6),Cn()&&zn(),zt()}function Eo(t,n,e){var r=n;Cn()&&jn(1730974274,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-2. (EditableTitle.kt:23)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=Io;s.i12(u),i=u}else i=a;var l=i,c=null==l||In(l)?l:Mt();o.k12(),Fn("customTitle",c,No().n38_1,r,390,0);var h=le(),p=r;p.g12(547886695),On(p,"C(remember$composable):Composables.kt#9igjgp");var f,_=p,d=_.h12();if(d===En().j12_1){var v=Do;_.i12(v),f=v}else f=d;var y=f,m=null==y||In(y)?y:Mt();return p.k12(),ce(h,m,r,8),Cn()&&zn(),zt()}function Io(t){return t.y20(["form-label"]),zt()}function Do(t){return t.z20("customTitle"),t.y20(["form-control"]),he(t,"Custom title goes here"),t.w20(To),zt()}function To(t){return pe(t,Un(24)),zt()}function Bo(t,n,e){var r=n;Cn()&&jn(1174811809,e,-1,"components.ComposableSingletons$EditableTitleKt.lambda-3. (EditableTitle.kt:18)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=Lo;s.i12(u),i=u}else i=a;var l=i,c=null==l||In(l)?l:Mt();return o.k12(),Dn(c,No().o38_1,r,48,0),Cn()&&zn(),zt()}function Lo(t){return t.y20(["form-group"]),zt()}function Ro(){var t;k=this,this.n38_1=(t=qn(-646215327,!1,Ao),function(n,e,r){return t.p1y(n,e,r)}),this.o38_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(1730974274,!1,Eo)),this.p38_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(1174811809,!1,Bo))}function No(){return null==k&&new Ro,k}function Fo(t,n){var e=t;if(e=e.p1d(1068528252),On(e,"C(EditableTitle$composable)"),0===n&&e.x1b())e.b18();else{Cn()&&jn(1068528252,n,-1,"components.EditableTitle$composable (EditableTitle.kt:13)");var r=e;r.g12(547886695),On(r,"C(remember$composable):Composables.kt#9igjgp");var o,i=r,s=i.h12();if(s===En().j12_1){var a=Ho;i.i12(a),o=a}else o=s;var u=o,l=null==u||In(u)?u:Mt();r.k12(),Dn(l,No().p38_1,e,48,0),Cn()&&zn()}var c,h=e.q1d();null===h||h.l1e((c=n,function(t,n){return function(t,n,e){Fo(n,1|t)}(c,t),zt()}))}function Ho(t){return t.y20(["row"]),zt()}function Uo(t,n,e){var r=n;r=r.p1d(-1873638994),On(r,"C(ErrorUi$composable)");var o,i,s=e;if(0==(14&e)&&(s|=r.l12(t)?4:2),2==(11&s)&&r.x1b())r.b18();else{Cn()&&jn(-1873638994,e,-1,"components.ErrorUi$composable (Error.kt:8)");var a=r;a.g12(547886695),On(a,"C(remember$composable):Composables.kt#9igjgp");var u,l=a,c=l.h12();if(c===En().j12_1){var h=Vo;l.i12(h),u=h}else u=c;var p=u,f=null==p||In(p)?p:Mt();a.k12();var _=f,d=An(r,1938269174,!0,(i=t,function(t,n,e){var r=n;Cn()&&jn(1938269174,e,-1,"components.ErrorUi$composable. (Error.kt:11)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var s,a=o,u=a.h12();if(u===En().j12_1){var l=Wo;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();o.k12();var p=h,f=An(r,-1978518889,!0,function(t){return function(n,e,r){var o=e;Cn()&&jn(-1978518889,r,-1,"components.ErrorUi$composable.. (Error.kt:14)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=Ko;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12();var p=h,f=An(o,153044343,!0,function(t){return function(n,e,r){var o=e;return Cn()&&jn(153044343,r,-1,"components.ErrorUi$composable... (Error.kt:17)"),Sn("❌ "+t,o,0),Cn()&&(zn(),zt()),zt()}}(t)),_=o;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.l12(f),g=y.h12();if(m||g===En().j12_1){var b=(v=f,function(t,n,e){return v.p1y(t,n,e)});y.i12(b),d=b}else d=g;var $=d,w=null==$||In($)?$:Mt();return _.k12(),fe(p,w,o,48,0),Cn()&&(zn(),zt()),zt()}}(i)),_=r;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.l12(f),g=y.h12();if(m||g===En().j12_1){var b=(v=f,function(t,n,e){return v.p1y(t,n,e)});y.i12(b),d=b}else d=g;var $=d,w=null==$||In($)?$:Mt();return _.k12(),Dn(p,w,r,48,0),Cn()&&(zn(),zt()),zt()})),v=r;v.g12(-838505973),On(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.l12(d),b=m.h12();if(g||b===En().j12_1){var $=(o=d,function(t,n,e){return o.p1y(t,n,e)});m.i12($),y=$}else y=b;var w=y,x=null==w||In(w)?w:Mt();v.k12(),Dn(_,x,r,48,0),Cn()&&zn()}var k=r.q1d();null===k||k.l1e(function(t,n){return function(e,r){return function(t,n,e,r){Uo(t,e,1|n)}(t,n,e),zt()}}(t,e))}function Vo(t){return t.y20(["row"]),zt()}function Wo(t){return t.y20(["col-lg-12"]),zt()}function Ko(t){return t.y20(["text-center"]),zt()}function Jo(t,n,e){var r=n;return Cn()&&jn(242285827,e,-1,"components.ComposableSingletons$FocusGroupsKt.lambda-1. (FocusGroups.kt:24)"),Sn("Focus Group :",r,6),Cn()&&zn(),zt()}function Go(){var t;j=this,this.q38_1=(t=qn(242285827,!1,Jo),function(n,e,r){return t.p1y(n,e,r)})}function Yo(t,n,e,r,o){var i=r;i=i.p1d(1269797045),On(i,"C(FocusGroups$composable)P(1)");var s,a,u,l,c=o;if(Cn()&&jn(1269797045,c,-1,"components.FocusGroups$composable (FocusGroups.kt:8)"),!t.h()){var h=i;h.g12(547886695),On(h,"C(remember$composable):Composables.kt#9igjgp");var p,f=h,_=f.h12();if(_===En().j12_1){var d=Xo;f.i12(d),p=d}else p=_;var v=p,y=null==v||In(v)?v:Mt();h.k12();var m=y,g=An(i,1549671746,!0,(a=e,u=t,l=n,function(t,n,e){var r=n;Cn()&&jn(1549671746,e,-1,"components.FocusGroups$composable. (FocusGroups.kt:18)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,c=s.h12();if(c===En().j12_1){var h=Zo;s.i12(h),i=h}else i=c;var p=i,f=null==p||In(p)?p:Mt();o.k12(),Fn("focusGroups",f,(null==j&&new Go,j).q38_1,r,390,0);var _=r;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.l12(a),m=v.h12();if(y||m===En().j12_1){var g=function(t){return function(n){return n.y20(["form-select"]),n.z20("focusGroups"),n.z27(function(t){return function(n){var e=n.h2b_1;return null==e||t(e),zt()}}(t)),zt()}}(a);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();_.k12();var w=$,x=An(r,1251988051,!0,function(t,n,e){return function(n,r,o){var i=r;Cn()&&jn(1251988051,o,-1,"components.FocusGroups$composable.. (FocusGroups.kt:37)");for(var s=t.c();s.d();){var a=s.e(),u=i;u.g12(-1124426577),On(u,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var l,c=u,h=!!(u.l12(a)|u.l12(e)),p=c.h12();if(h||p===En().j12_1){var f=Qo(a,e);c.i12(f),l=f}else l=p;var _=l,d=null==_||In(_)?_:Mt();u.k12();var v=d,y=An(i,736843431,!0,ti(a)),m=i;m.g12(-838505973),On(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,b=m,$=m.l12(y),w=b.h12();if($||w===En().j12_1){var x=ni(y);b.i12(x),g=x}else g=w;var k=g,j=null==k||In(k)?k:Mt();m.k12(),de(a,v,j,i,384,0)}return Cn()&&(zn(),zt()),zt()}}(u,0,l)),k=r;k.g12(-838505973),On(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,S,z=k,q=k.l12(x),O=z.h12();if(q||O===En().j12_1){var P=(S=x,function(t,n,e){return S.p1y(t,n,e)});z.i12(P),C=P}else C=O;var M=C,A=null==M||In(M)?M:Mt();return k.k12(),ve(w,!1,A,r,384,2),Cn()&&(zn(),zt()),zt()})),b=i;b.g12(-838505973),On(b,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,w=b,x=b.l12(g),k=w.h12();if(x||k===En().j12_1){var C=(s=g,function(t,n,e){return s.p1y(t,n,e)});w.i12(C),$=C}else $=k;var S=$,z=null==S||In(S)?S:Mt();b.k12(),Dn(m,z,i,48,0)}Cn()&&zn();var q=i.q1d();null===q||q.l1e(function(t,n,e,r){return function(o,i){return function(t,n,e,r,o,i){Yo(t,n,e,o,1|r)}(t,n,e,r,o),zt()}}(t,n,e,o))}function Xo(t){return t.y20(["form-group"]),zt()}function Zo(t){return t.y20(["form-label"]),zt()}function Qo(t,n){return function(e){return t===n&&(_e(e),zt()),zt()}}function ti(t){return function(n,e,r){var o=e;return Cn()&&jn(736843431,r,-1,"components.FocusGroups$composable... (FocusGroups.kt:46)"),Sn(t,o,0),Cn()&&(zn(),zt()),zt()}}function ni(t){return function(n,e,r){return t.p1y(n,e,r)}}function ei(t,n,e){var r=n;return Cn()&&jn(-1817257175,e,-1,"components.ComposableSingletons$HeadingKt.lambda-1. (Heading.kt:21)"),Sn("📊 benchart",r,6),Cn()&&zn(),zt()}function ri(t,n,e){var r=n;Cn()&&jn(-1445218266,e,-1,"components.ComposableSingletons$HeadingKt.lambda-2. (Heading.kt:18)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=oi;s.i12(u),i=u}else i=a;var l=i,c=null==l||In(l)?l:Mt();return o.k12(),ye(c,li().r38_1,r,48,0),Cn()&&zn(),zt()}function oi(t){return t.y20(["text-center"]),zt()}function ii(t,n,e){var r=n;Cn()&&jn(-1522093819,e,-1,"components.ComposableSingletons$HeadingKt.lambda-3. (Heading.kt:11)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=si;s.i12(u),i=u}else i=a;var l=i,c=null==l||In(l)?l:Mt();return o.k12(),Dn(c,li().s38_1,r,48,0),Cn()&&zn(),zt()}function si(t){return t.y20(["col-lg-12"]),t.w20(ai),zt()}function ai(t){return me(t,Un(30)),Vn(t,Un(30)),zt()}function ui(){var t;C=this,this.r38_1=(t=qn(-1817257175,!1,ei),function(n,e,r){return t.p1y(n,e,r)}),this.s38_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-1445218266,!1,ri)),this.t38_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-1522093819,!1,ii))}function li(){return null==C&&new ui,C}function ci(t,n){var e=t;if(e=e.p1d(1340484778),On(e,"C(Heading$composable)"),0===n&&e.x1b())e.b18();else{Cn()&&jn(1340484778,n,-1,"components.Heading$composable (Heading.kt:8)");var r=e;r.g12(547886695),On(r,"C(remember$composable):Composables.kt#9igjgp");var o,i=r,s=i.h12();if(s===En().j12_1){var a=hi;i.i12(a),o=a}else o=s;var u=o,l=null==u||In(u)?u:Mt();r.k12(),Dn(l,li().t38_1,e,48,0),Cn()&&zn()}var c,h=e.q1d();null===h||h.l1e((c=n,function(t,n){return function(t,n,e){ci(n,1|t)}(c,t),zt()}))}function hi(t){return t.y20(["row"]),zt()}function pi(){S=this}function fi(){z=this;var t=new ge("components.SavedBenchmarkNode",this,2);t.n2m("key",!1),t.n2m("value",!1),this.u38_1=t,this.v38_1=8}function _i(){return null==z&&new fi,z}function di(t,n,e,r){return function(t,n,e,r,o){return 3!=(3&t)&&ke(t,3,_i().u38_1),o.x38_1=n,o.y38_1=e,o}(t,n,e,0,Object.create(vi.prototype))}function vi(t,n){null==S&&new pi,this.x38_1=t,this.y38_1=n,this.z38_1=0}function yi(){q=this}function mi(){O=this;var t=new ge("components.SavedBenchmarks",this,1);t.n2m("items",!1),this.a39_1=t,this.b39_1=8}function gi(){return null==O&&new mi,O}function bi(t,n,e){return function(t,n,e,r){return 1!=(1&t)&&ke(t,1,gi().a39_1),r.d39_1=n,r}(t,n,0,Object.create($i.prototype))}function $i(t){null==q&&new yi,this.d39_1=t,this.e39_1=8}function wi(){return Ri(),P}function xi(t,n,e){var r=n;return Cn()&&jn(37561396,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-1. (SavedBenchmarksDropDown.kt:35)"),Sn("Load Benchmark :",r,6),Cn()&&zn(),zt()}function ki(t,n,e){var r=n;return Cn()&&jn(-32633967,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-2. (SavedBenchmarksDropDown.kt:88)"),Sn("Unsaved benchmark",r,6),Cn()&&zn(),zt()}function ji(t,n,e){var r=n;return Cn()&&jn(-652929765,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-3. (SavedBenchmarksDropDown.kt:114)"),Sn("LOAD",r,6),Cn()&&zn(),zt()}function Ci(t,n,e){var r=n;return Cn()&&jn(-1219865148,e,-1,"components.ComposableSingletons$SavedBenchmarksDropDownKt.lambda-4. (SavedBenchmarksDropDown.kt:130)"),Sn("DELETE",r,6),Cn()&&zn(),zt()}function Si(){var t;M=this,this.f39_1=(t=qn(37561396,!1,xi),function(n,e,r){return t.p1y(n,e,r)}),this.g39_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-32633967,!1,ki)),this.h39_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-652929765,!1,ji)),this.i39_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-1219865148,!1,Ci))}function zi(){return null==M&&new Si,M}function qi(t,n,e,r,o,i,s){Ri();var a=i;a=a.p1d(-441302567),On(a,"C(SavedBenchmarksDropDown$composable)P(4,3,2,1)");var u,l,c,h,p,f,_=s;if(Cn()&&jn(-441302567,_,-1,"components.SavedBenchmarksDropDown$composable (SavedBenchmarksDropDown.kt:15)"),n.h()){Cn()&&zn();var d=a.q1d();return null===d||d.l1e((u=t,l=n,c=e,h=r,p=o,f=s,function(t,n){return function(t,n,e,r,o,i,s,a){qi(t,n,e,r,o,s,1|i)}(u,l,c,h,p,f,t),zt()})),zt()}var v=a;v.g12(-838505973),On(v,"C(remember$composable)P(1):Composables.kt#9igjgp");var y,m=v,g=v.l12(n),b=m.h12();if(g||b===En().j12_1){var $=Yt(n),w=Ce($,null,2,null);m.i12(w),y=w}else y=b;var x=y,k=null==x||In(x)?x:Mt();v.k12();var j=k,C=a;C.g12(547886695),On(C,"C(remember$composable):Composables.kt#9igjgp");var S,z=C,q=z.h12();if(q===En().j12_1){var O=Pi;z.i12(O),S=O}else S=q;var P=S,M=null==P||In(P)?P:Mt();C.k12(),Fn("savedBenchmarks",M,zi().f39_1,a,390,0);var A=a;A.g12(547886695),On(A,"C(remember$composable):Composables.kt#9igjgp");var E,I=A,D=I.h12();if(D===En().j12_1){var T=Mi;I.i12(T),E=T}else E=D;var B=E,L=null==B||In(B)?B:Mt();A.k12();var R=L,N=An(a,549151222,!0,function(t,n,e,r,o,i,s){return function(r,a,u){var l=a;Cn()&&jn(549151222,u,-1,"components.SavedBenchmarksDropDown$composable. (SavedBenchmarksDropDown.kt:43)");var c=l;c.g12(547886695),On(c,"C(remember$composable):Composables.kt#9igjgp");var h,p=c,f=p.h12();if(f===En().j12_1){var _=Ai;p.i12(_),h=_}else h=f;var d=h,v=null==d||In(d)?d:Mt();c.k12();var y=v,m=An(l,1940859863,!0,function(t,n,e,r,o,i,s){return function(r,a,u){var l=a;Cn()&&jn(1940859863,u,-1,"components.SavedBenchmarksDropDown$composable.. (SavedBenchmarksDropDown.kt:48)");var c=l;c.g12(547886695),On(c,"C(remember$composable):Composables.kt#9igjgp");var h,p=c,f=p.h12();if(f===En().j12_1){var _=Ei;p.i12(_),h=_}else h=f;var d=h,v=null==d||In(d)?d:Mt();c.k12();var y=v,m=An(l,461626232,!0,function(t,n,e,r,o){return function(r,i,s){var a=i;Cn()&&jn(461626232,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:54)");var u=function(t,n,e){return function(r){return r.y20(["form-select"]),r.z20("savedBenchmarks"),r.a28(function(t,n,e){return function(r){var o=r.h2a_1;if(null==o);else{var i;t(o);t:{for(var s=n.c();s.d();){var a=s.e();if(a.x38_1===o){i=a;break t}}i=null}(function(t,n){Ri(),qe("selectedBenchmark",Se,!0,(function(){return ze()})),t.ly(n)})(e,Oe(i)),zt()}return zt()}}(t,n,e)),zt()}}(t,n,e),l=An(a,1692700999,!0,function(t,n,e,r){return function(n,o,i){var s=o;Cn()&&jn(1692700999,i,-1,"components.SavedBenchmarksDropDown$composable.... (SavedBenchmarksDropDown.kt:67)");for(var a=t.c();a.d();){var u=a.e(),l=s;l.g12(-1058148781),On(l,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var c,h=l,p=!!(!!(l.l12(u)|l.l12(e))|l.l12(r)),f=h.h12();if(p||f===En().j12_1){var _=Ii(u,r,e);h.i12(_),c=_}else c=f;var d=c,v=null==d||In(d)?d:Mt();l.k12();var y,m=v,g=An(s,1052804723,!0,Di(u)),b=s;b.g12(-838505973),On(b,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,w=b,x=b.l12(g),k=w.h12();if(x||k===En().j12_1){var j=Ti(g);w.i12(j),$=j}else $=k;var C=$,S=null==C||In(C)?C:Mt();b.k12(),y=S,de(u.x38_1,m,y,s,384,0)}var z=wi(),q=s;q.g12(-838505973),On(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.l12(r),A=P.h12();if(M||A===En().j12_1){var E=function(t){return function(n){return t&&(_e(n),zt()),zt()}}(r);P.i12(E),O=E}else O=A;var I=O,D=null==I||In(I)?I:Mt();return q.k12(),de(z,D,zi().g39_1,s,390,0),Cn()&&(zn(),zt()),zt()}}(n,0,e,o)),c=a;c.g12(-838505973),On(c,"C(remember$composable)P(1):Composables.kt#9igjgp");var h,p,f=c,_=c.l12(l),d=f.h12();if(_||d===En().j12_1){var v=(p=l,function(t,n,e){return p.p1y(t,n,e)});f.i12(v),h=v}else h=d;var y=h,m=null==y||In(y)?y:Mt();return c.k12(),ve(u,!1,m,a,384,2),Cn()&&(zn(),zt()),zt()}}(t,n,e,0,o)),g=l;g.g12(-838505973),On(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,$,w=g,x=g.l12(m),k=w.h12();if(x||k===En().j12_1){var j=($=m,function(t,n,e){return $.p1y(t,n,e)});w.i12(j),b=j}else b=k;var C=b,S=null==C||In(C)?C:Mt();g.k12(),Dn(y,S,l,48,0);var z=l;z.g12(547886695),On(z,"C(remember$composable):Composables.kt#9igjgp");var q,O=z,P=O.h12();if(P===En().j12_1){var M=Bi;O.i12(M),q=M}else q=P;var A=q,E=null==A||In(A)?A:Mt();z.k12();var I=E,D=An(l,-282119967,!0,function(t,n,e,r,o){return function(t,i,s){var a=i;Cn()&&jn(-282119967,s,-1,"components.SavedBenchmarksDropDown$composable... (SavedBenchmarksDropDown.kt:98)");var u=a;u.g12(-1058148781),On(u,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var l,c=u,h=!!(!!(u.l12(n)|u.l12(e))|u.l12(r)),p=c.h12();if(h||p===En().j12_1){var f=function(t,n,e){return function(r){return r.y20(["btn","btn-primary"]),r.w20(Li),r.c21(function(t,n){return function(e){return t(Oi(n)),zt()}}(n,e)),Kn(r,Wn()),t&&(Pe(r),zt()),zt()}}(r,n,e);c.i12(f),l=f}else l=p;var _=l,d=null==_||In(_)?_:Mt();u.k12(),Gn(d,zi().h39_1,a,48,0);var v=a;v.g12(-1058148781),On(v,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var y,m=v,g=!!(!!(v.l12(o)|v.l12(e))|v.l12(r)),b=m.h12();if(g||b===En().j12_1){var $=function(t,n,e){return function(r){return r.y20(["btn","btn-danger"]),r.c21(function(t,n){return function(e){return t(Oi(n)),zt()}}(n,e)),Kn(r,Wn()),t&&(Pe(r),zt()),zt()}}(r,o,e);m.i12($),y=$}else y=b;var w=y,x=null==w||In(w)?w:Mt();return v.k12(),Gn(x,zi().i39_1,a,48,0),Cn()&&(zn(),zt()),zt()}}(0,i,e,o,s)),T=l;T.g12(-838505973),On(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,R=T.l12(D),N=L.h12();if(R||N===En().j12_1){var F=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(D);L.i12(F),B=F}else B=N;var H=B,U=null==H||In(H)?H:Mt();return T.k12(),Dn(I,U,l,48,0),Cn()&&(zn(),zt()),zt()}}(t,n,e,0,o,i,s)),g=l;g.g12(-838505973),On(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,$,w=g,x=g.l12(m),k=w.h12();if(x||k===En().j12_1){var j=($=m,function(t,n,e){return $.p1y(t,n,e)});w.i12(j),b=j}else b=k;var C=b,S=null==C||In(C)?C:Mt();return g.k12(),Dn(y,S,l,48,0),Cn()&&(zn(),zt()),zt()}}(e,n,j,0,t,r,o)),F=a;F.g12(-838505973),On(F,"C(remember$composable)P(1):Composables.kt#9igjgp");var H,U,V=F,W=F.l12(N),K=V.h12();if(W||K===En().j12_1){var J=(U=N,function(t,n,e){return U.p1y(t,n,e)});V.i12(J),H=J}else H=K;var G=H,Y=null==G||In(G)?G:Mt();F.k12(),Dn(R,Y,a,48,0),Cn()&&zn();var X=a.q1d();null===X||X.l1e(function(t,n,e,r,o,i){return function(s,a){return function(t,n,e,r,o,i,s,a){qi(t,n,e,r,o,s,1|i)}(t,n,e,r,o,i,s),zt()}}(t,n,e,r,o,s))}function Oi(t){return Ri(),qe("selectedBenchmark",Se,!0,(function(){return ze()})),t.n2()}function Pi(t){return Ri(),t.y20(["form-label"]),zt()}function Mi(t){return Ri(),t.y20(["form-group"]),zt()}function Ai(t){return Ri(),t.y20(["row"]),zt()}function Ei(t){return Ri(),t.y20(["col"]),zt()}function Ii(t,n,e){return function(r){return t.x38_1!==Oi(e).x38_1||n||(_e(r),zt()),zt()}}function Di(t){return function(n,e,r){var o=e;return Cn()&&jn(1052804723,r,-1,"components.SavedBenchmarksDropDown$composable..... (SavedBenchmarksDropDown.kt:76)"),Sn(t.x38_1,o,0),Cn()&&(zn(),zt()),zt()}}function Ti(t){return function(n,e,r){return t.p1y(n,e,r)}}function Bi(t){return Ri(),t.y20(["col"]),zt()}function Li(t){return Ri(),Jn(t,Un(10)),zt()}function Ri(){A||(A=!0,P="unsavedBenchmark_"+(new Date).getMilliseconds())}function Ni(t,n,e,r,o,i,s,a,u,l){this.j39_1=t,this.k39_1=n,this.l39_1=e,this.m39_1=r,this.n39_1=o,this.o39_1=i,this.p39_1=s,this.q39_1=a,this.r39_1=u,this.s39_1=l,this.t39_1=0}function Fi(t,n){this.c3a_1=t,this.d3a_1=n,this.e3a_1=8}function Hi(t){return Fe("el",1,Ne,(function(t){return Hi(t)}),null),t.g3a_1.n2()}function Ui(t){var n;this.f3a_1=t,this.g3a_1=Me((n=this,function(){return document.createElement(n.f3a_1)}))}function Vi(t,n,e){var r=n;return Cn()&&jn(323270151,e,-1,"components.ComposableSingletons$SummaryKt.lambda-1. (Summary.kt:180)"),Sn("vs",r,6),Cn()&&zn(),zt()}function Wi(t,n,e){var r=n;return Cn()&&jn(-1108287470,e,-1,"components.ComposableSingletons$SummaryKt.lambda-2. (Summary.kt:179)"),Zi(null,Gi().h3a_1,r,48,1),Cn()&&zn(),zt()}function Ki(t,n,e){var r=n;return Cn()&&jn(2132966384,e,-1,"components.ComposableSingletons$SummaryKt.lambda-3. (Summary.kt:178)"),Ee(null,Gi().i3a_1,r,48,1),Cn()&&zn(),zt()}function Ji(){var t;I=this,this.h3a_1=(t=qn(323270151,!1,Vi),function(n,e,r){return t.p1y(n,e,r)}),this.i3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-1108287470,!1,Wi)),this.j3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(2132966384,!1,Ki))}function Gi(){return null==I&&new Ji,I}function Yi(t,n,e,r,o){bs();var i=r;i=i.p1d(1689914162),On(i,"C(SummaryContainer$composable)P(1,2)");var s=o;Cn()&&jn(1689914162,s,-1,"components.SummaryContainer$composable (Summary.kt:52)"),t(i,14&s),Zn(null,i,0,1);for(var a=n.c();a.d();){var u=a.e();i.j1a(-380219352,u.c3a_1),Qi(u.c3a_1,e,u.d3a_1,i,512|112&s>>3),Zn(null,i,0,1),i.m1a()}Cn()&&zn();var l,c,h,p,f=i.q1d();null===f||f.l1e((l=t,c=n,h=e,p=o,function(t,n){return function(t,n,e,r,o,i){Yi(t,n,e,o,1|r)}(l,c,h,p,t),zt()}))}function Xi(t,n,e,r,o,i,s,a,u,l,c){bs();var h=l;h=h.p1d(1501225216),On(h,"C(SummarySelector$composable)P(!1,8,2,5!1,6,7)");var p=c;Cn()&&jn(1501225216,p,-1,"components.SummarySelector$composable (Summary.kt:70)");var f=h;f.g12(547886695),On(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===En().j12_1){var y=ns;d.i12(y),_=y}else _=v;var m=_,g=null==m||In(m)?m:Mt();f.k12();var b,$,w,x,k,j=g,C=An(h,2020978206,!0,(b=p,$=e,w=t,x=r,k=n,function(t,n,e){var r=n;Cn()&&jn(2020978206,e,-1,"components.SummarySelector$composable. (Summary.kt:86)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=es;s.i12(u),i=u}else i=a;var l=i,c=null==l||In(l)?l:Mt();o.k12();var h=c,p=An(r,-871838913,!0,function(t,n,e){return function(r,o,i){var s=o;Cn()&&jn(-871838913,i,-1,"components.SummarySelector$composable.. (Summary.kt:92)");var a=s;a.g12(-838505973),On(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,l=a,c=a.l12(n),h=l.h12();if(c||h===En().j12_1){var p=function(t){return function(n){return n.y20(["btn","btn-outline-dark","btn-sm"]),n.c21(function(t){return function(n){return t(),zt()}}(t)),Kn(n,Wn()),zt()}}(n);l.i12(p),u=p}else u=h;var f=u,_=null==f||In(f)?f:Mt();a.k12();var d=_,v=An(s,-1132288775,!0,function(t,n){return function(e,r,o){var i=r;return Cn()&&jn(-1132288775,o,-1,"components.SummarySelector$composable... (Summary.kt:102)"),Sn(t,i,14&n),Cn()&&(zn(),zt()),zt()}}(e,t)),y=s;y.g12(-838505973),On(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g,b=y,$=y.l12(v),w=b.h12();if($||w===En().j12_1){var x=(g=v,function(t,n,e){return g.p1y(t,n,e)});b.i12(x),m=x}else m=w;var k=m,j=null==k||In(k)?k:Mt();return y.k12(),Gn(d,j,s,48,0),Cn()&&(zn(),zt()),zt()}}(b,$,w)),f=r;f.g12(-838505973),On(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d,v=f,y=f.l12(p),m=v.h12();if(y||m===En().j12_1){var g=(d=p,function(t,n,e){return d.p1y(t,n,e)});v.i12(g),_=g}else _=m;var j=_,C=null==j||In(j)?j:Mt();f.k12(),Dn(h,C,r,48,0);var S=r;S.g12(547886695),On(S,"C(remember$composable):Composables.kt#9igjgp");var z,q=S,O=q.h12();if(O===En().j12_1){var P=rs;q.i12(P),z=P}else z=O;var M=z,A=null==M||In(M)?M:Mt();S.k12();var E=A,I=An(r,782244392,!0,function(t,n,e){return function(r,o,i){var s=o;Cn()&&jn(782244392,i,-1,"components.SummarySelector$composable.. (Summary.kt:111)");var a=s;a.g12(-838505973),On(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,l=a,c=a.l12(n),h=l.h12();if(c||h===En().j12_1){var p=function(t){return function(n){return n.y20(["btn","btn-outline-dark","btn-sm"]),n.c21(function(t){return function(n){return t(),zt()}}(t)),Kn(n,Wn()),zt()}}(n);l.i12(p),u=p}else u=h;var f=u,_=null==f||In(f)?f:Mt();a.k12();var d=_,v=An(s,-401969822,!0,function(t,n){return function(e,r,o){var i=r;return Cn()&&jn(-401969822,o,-1,"components.SummarySelector$composable... (Summary.kt:121)"),Sn(t,i,14&n>>3),Cn()&&(zn(),zt()),zt()}}(e,t)),y=s;y.g12(-838505973),On(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,b=y.l12(v),$=g.h12();if(b||$===En().j12_1){var w=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(v);g.i12(w),m=w}else m=$;var x=m,k=null==x||In(x)?x:Mt();return y.k12(),Gn(d,k,s,48,0),Cn()&&(zn(),zt()),zt()}}(b,x,k)),D=r;D.g12(-838505973),On(D,"C(remember$composable)P(1):Composables.kt#9igjgp");var T,B=D,L=D.l12(I),R=B.h12();if(L||R===En().j12_1){var N=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(I);B.i12(N),T=N}else T=R;var F=T,H=null==F||In(F)?F:Mt();return D.k12(),Dn(E,H,r,48,0),Cn()&&(zn(),zt()),zt()})),S=h;S.g12(-838505973),On(S,"C(remember$composable)P(1):Composables.kt#9igjgp");var z,q,O=S,P=S.l12(C),M=O.h12();if(P||M===En().j12_1){var A=(q=C,function(t,n,e){return q.p1y(t,n,e)});O.i12(A),z=A}else z=M;var E=z,I=null==E||In(E)?E:Mt();S.k12(),Dn(j,I,h,48,0);var D=h;D.g12(547886695),On(D,"C(remember$composable):Composables.kt#9igjgp");var T,B=D,L=B.h12();if(L===En().j12_1){var R=os;B.i12(R),T=R}else T=L;var N=T,F=null==N||In(N)?N:Mt();D.k12();var H,U,V,W,K,J=F,G=An(h,-569509561,!0,(H=a,U=u,V=o,W=i,K=s,function(t,n,e){var r=n;Cn()&&jn(-569509561,e,-1,"components.SummarySelector$composable. (Summary.kt:132)");var o=0;if(o<2)do{var i=o;o=o+1|0,r.j1a(1520191834,"block-selector-"+i);var s=r;s.g12(547886695),On(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,l=u.h12();if(l===En().j12_1){var c=is;u.i12(c),a=c}else a=l;var h=a,p=null==h||In(h)?h:Mt();s.k12();var f=p,_=An(r,-850201877,!0,cs(0,i,H,U,V,W,K)),d=r;d.g12(-838505973),On(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y=d,m=d.l12(_),g=y.h12();if(m||g===En().j12_1){var b=hs(_);y.i12(b),v=b}else v=g;var $=v,w=null==$||In($)?$:Mt();if(d.k12(),Dn(f,w,r,48,0),0===i){var x=r;x.g12(547886695),On(x,"C(remember$composable):Composables.kt#9igjgp");var k,j=x,C=j.h12();if(C===En().j12_1){var S=ps;j.i12(S),k=S}else k=C;var z=k,q=null==z||In(z)?z:Mt();x.k12(),Dn(q,Gi().j3a_1,r,48,0)}r.m1a()}while(o<2);return Cn()&&(zn(),zt()),zt()})),Y=h;Y.g12(-838505973),On(Y,"C(remember$composable)P(1):Composables.kt#9igjgp");var X,Z=Y,Q=Y.l12(G),tt=Z.h12();if(Q||tt===En().j12_1){var nt=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(G);Z.i12(nt),X=nt}else X=tt;var et=X,rt=null==et||In(et)?et:Mt();Y.k12(),Dn(J,rt,h,48,0),Cn()&&zn();var ot=h.q1d();null===ot||ot.l1e(function(t,n,e,r,o,i,s,a,u,l){return function(c,h){return function(t,n,e,r,o,i,s,a,u,l,c,h){Xi(t,n,e,r,o,i,s,a,u,c,1|l)}(t,n,e,r,o,i,s,a,u,l,c),zt()}}(t,n,e,r,o,i,s,a,u,c))}function Zi(t,n,e,r,o){bs();var i={_v:t},s={_v:n},a=e;a=a.p1d(-1706683414),On(a,"C(Strong$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),Cn()&&jn(-1706683414,u,-1,"components.Strong$composable (Summary.kt:206)"),Ie((bs(),E),i._v,s._v,a,8|112&u<<3|896&u<<3),Cn()&&zn());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){Zi(t._v,n._v,o,1|e,r)}(l,c,h,p,t),zt()}))}function Qi(t,n,e,r,o){bs();var i=r;i=i.p1d(-397929440),On(i,"C(SummaryUi$composable)P(2)");var s=o;Cn()&&jn(-397929440,s,-1,"components.SummaryUi$composable (Summary.kt:212)");var a=i;a.g12(547886695),On(a,"C(remember$composable):Composables.kt#9igjgp");var u,l=a,c=l.h12();if(c===En().j12_1){var h=fs;l.i12(h),u=h}else u=c;var p=u,f=null==p||In(p)?p:Mt();a.k12();var _,d,v,y,m=f,g=An(i,122385029,!0,(_=t,d=s,v=n,y=e,function(t,n,e){var r=n;Cn()&&jn(122385029,e,-1,"components.SummaryUi$composable. (Summary.kt:217)");var o=An(r,1987340836,!0,function(t,n,e){return function(r,o,i){var s,a=o;if(Cn()&&jn(1987340836,i,-1,"components.SummaryUi$composable.. (Summary.kt:218)"),Sn(t,a,14&n),e>1){var u=a;u.g12(547886695),On(u,"C(remember$composable):Composables.kt#9igjgp");var l,c=u,h=c.h12();if(h===En().j12_1){var p=_s;c.i12(p),l=p}else l=h;var f=l,_=null==f||In(f)?f:Mt();u.k12();var d=_,v=An(a,923568660,!0,function(t){return function(n,e,r){var o=e;return Cn()&&jn(923568660,r,-1,"components.SummaryUi$composable... (Summary.kt:228)"),Sn(" (average of "+t+")",o,0),Cn()&&(zn(),zt()),zt()}}(e)),y=a;y.g12(-838505973),On(y,"C(remember$composable)P(1):Composables.kt#9igjgp");var m,g=y,b=y.l12(v),$=g.h12();if(b||$===En().j12_1){var w=(s=v,function(t,n,e){return s.p1y(t,n,e)});g.i12(w),m=w}else m=$;var x=m,k=null==x||In(x)?x:Mt();y.k12(),Te(d,k,a,48,0)}return Cn()&&(zn(),zt()),zt()}}(_,d,v)),i=r;i.g12(-838505973),On(i,"C(remember$composable)P(1):Composables.kt#9igjgp");var s,a,u=i,l=i.l12(o),c=u.h12();if(l||c===En().j12_1){var h=(a=o,function(t,n,e){return a.p1y(t,n,e)});u.i12(h),s=h}else s=c;var p=s,f=null==p||In(p)?p:Mt();i.k12(),Mn(null,f,r,48,1);var m=An(r,1063714288,!0,function(t){return function(n,e,r){var o=e;Cn()&&jn(1063714288,r,-1,"components.SummaryUi$composable.. (Summary.kt:233)");for(var i=t.c();i.d();){var s=i.e(),a=An(o,186798062,!0,ys(s)),u=o;u.g12(-838505973),On(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var l,c=u,h=u.l12(a),p=c.h12();if(h||p===En().j12_1){var f=ms(a);c.i12(f),l=f}else l=p;var _=l,d=null==_||In(_)?_:Mt();u.k12(),Be(null,d,o,48,1)}return Cn()&&(zn(),zt()),zt()}}(y)),g=r;g.g12(-838505973),On(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,$=g,w=g.l12(m),x=$.h12();if(w||x===En().j12_1){var k=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(m);$.i12(k),b=k}else b=x;var j=b,C=null==j||In(j)?j:Mt();return g.k12(),Le(null,C,r,48,1),Cn()&&(zn(),zt()),zt()})),b=i;b.g12(-838505973),On(b,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,w,x=b,k=b.l12(g),j=x.h12();if(k||j===En().j12_1){var C=(w=g,function(t,n,e){return w.p1y(t,n,e)});x.i12(C),$=C}else $=j;var S=$,z=null==S||In(S)?S:Mt();b.k12(),Dn(m,z,i,48,0),Cn()&&zn();var q=i.q1d();null===q||q.l1e(function(t,n,e,r){return function(o,i){return function(t,n,e,r,o,i){Qi(t,n,e,o,1|r)}(t,n,e,r,o),zt()}}(t,n,e,o))}function ts(t,n,e,r,o){bs();var i={_v:n},s=e;s=s.p1d(-1073265847);var a,u,l,c,h=r;if(0!=(1&o)?h|=6:0==(14&r)&&(h|=s.l12(t)?4:2),0!=(2&o)?h|=48:0==(112&r)&&(h|=s.l12(i._v)?32:16),18==(91&h)&&s.x1b())s.b18();else{0!=(2&o)&&(i._v=null),Cn()&&jn(-1073265847,h,-1,"components.BoldText$composable (Summary.kt:274)");var p=i._v,f=s;f.g12(-838505973),On(f,"C(remember$composable)P(1):Composables.kt#9igjgp");var _,d=f,v=f.l12(p),y=d.h12();if(v||y===En().j12_1){var m=(c=i,function(t){var n=c._v;return null==n||n(t),t.w20(gs),zt()});d.i12(m),_=m}else _=y;var g=_,b=null==g||In(g)?g:Mt();f.k12();var $=b,w=An(s,-374759312,!0,(u=t,l=h,function(t,n,e){var r=n;return Cn()&&jn(-374759312,e,-1,"components.BoldText$composable. (Summary.kt:285)"),Sn(u,r,14&l),Cn()&&(zn(),zt()),zt()})),x=s;x.g12(-838505973),On(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j=x,C=x.l12(w),S=j.h12();if(C||S===En().j12_1){var z=(a=w,function(t,n,e){return a.p1y(t,n,e)});j.i12(z),k=z}else k=S;var q=k,O=null==q||In(q)?q:Mt();x.k12(),De($,O,s,48,0),Cn()&&zn()}var P=s.q1d();null===P||P.l1e(function(t,n,e,r){return function(o,i){return function(t,n,e,r,o,i){ts(t,n._v,o,1|e,r)}(t,n,e,r,o),zt()}}(t,i,r,o))}function ns(t){return bs(),t.y20(["row","mb-3"]),zt()}function es(t){return bs(),t.y20(["col-auto"]),zt()}function rs(t){return bs(),t.y20(["col-auto"]),zt()}function os(t){return bs(),t.y20(["row"]),zt()}function is(t){return bs(),t.y20(["col"]),zt()}function ss(t,n,e){return function(r){return r.y20(["form-select"]),r.z27(function(t,n,e){return function(r){var o=r.h2b_1;return null==o||(0===t?n(o):e(o)),zt()}}(t,n,e)),zt()}}function as(t,n,e,r){return function(o){return r===(0===t?n:e)&&(_e(o),zt()),zt()}}function us(t){return function(n,e,r){var o=e;return Cn()&&jn(1538427302,r,-1,"components.SummarySelector$composable...... (Summary.kt:166)"),Sn(t,o,0),Cn()&&(zn(),zt()),zt()}}function ls(t){return function(n,e,r){return t.p1y(n,e,r)}}function cs(t,n,e,r,o,i,s){return function(t,a,u){var l=a;Cn()&&jn(-850201877,u,-1,"components.SummarySelector$composable.... (Summary.kt:139)");var c=l;c.g12(-1058148781),On(c,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var h,p=c,f=!!(!!(c.l12(n)|c.l12(e))|c.l12(r)),_=p.h12();if(f||_===En().j12_1){var d=ss(n,e,r);p.i12(d),h=d}else h=_;var v=h,y=null==v||In(v)?v:Mt();c.k12();var m=y,g=An(l,1162597754,!0,function(t,n,e,r){return function(o,i,s){var a=i;Cn()&&jn(1162597754,s,-1,"components.SummarySelector$composable..... (Summary.kt:155)");for(var u=t.c();u.d();){var l=u.e(),c=a;c.g12(-1603429786),On(c,"C(remember$composable)P(1):Composables.kt#9igjgp");for(var h=!1,p=[n,e,r,l],f=0,_=p.length;f<_;){var d=p[f];f=f+1|0,h=!!(h|c.l12(d))}var v,y=c,m=h,g=y.h12();if(m||g===En().j12_1){var b=as(n,e,r,l);y.i12(b),v=b}else v=g;var $=v,w=null==$||In($)?$:Mt();c.k12();var x=w,k=An(a,1538427302,!0,us(l)),j=a;j.g12(-838505973),On(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,S=j,z=j.l12(k),q=S.h12();if(z||q===En().j12_1){var O=ls(k);S.i12(O),C=O}else C=q;var P=C,M=null==P||In(P)?P:Mt();j.k12(),de(l,x,M,a,384,0)}return Cn()&&(zn(),zt()),zt()}}(o,n,i,s)),b=l;b.g12(-838505973),On(b,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,w,x=b,k=b.l12(g),j=x.h12();if(k||j===En().j12_1){var C=(w=g,function(t,n,e){return w.p1y(t,n,e)});x.i12(C),$=C}else $=j;var S=$,z=null==S||In(S)?S:Mt();return b.k12(),ve(m,!1,z,l,384,2),Cn()&&(zn(),zt()),zt()}}function hs(t){return function(n,e,r){return t.p1y(n,e,r)}}function ps(t){return bs(),t.y20(["col-auto"]),zt()}function fs(t){return bs(),t.y20(["row"]),zt()}function _s(t){return bs(),t.y20(["text-muted"]),t.w20(ds),zt()}function ds(t){return bs(),pe(t,Un(18)),zt()}function vs(t){return bs(),t.y20(["text-capitalize"]),zt()}function ys(t){return function(n,e,r){var o,i=e;Cn()&&jn(186798062,r,-1,"components.SummaryUi$composable.... (Summary.kt:235)"),Sn(t.k39_1+" ",i,0);var s=i;s.g12(547886695),On(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,l=u.h12();if(l===En().j12_1){var c=vs;u.i12(c),a=c}else a=l;var h=a,p=null==h||In(h)?h:Mt();s.k12(),o=p,ts(t.l39_1,o,i,0,0),Sn(" : ",i,6),ts(t.m39_1,null,i,0,2),Sn(t.j39_1?" looks ":" performed ",i,0),ts(t.n39_1+"% ",null,i,0,2);var f=t.j39_1?"":"ms",_=i;_.g12(-1124426577),On(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.l12(t)|_.l12(f)),m=v.h12();if(y||m===En().j12_1){var g=function(t,n){return function(e){var r=0===t.p39_1?"secondary":t.p39_1>0?"danger":"success";return e.y20(["badge","bg-"+r]),e.g20("data-bs-toggle","tooltip"),e.g20("data-bs-placement","top"),e.g20("title",""+t.s39_1+n+" to "+t.r39_1+n),zt()}}(t,f);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();_.k12();var w=$,x=An(i,-387292852,!0,function(t){return function(n,e,r){var o=e;return Cn()&&jn(-387292852,r,-1,"components.SummaryUi$composable..... (Summary.kt:263)"),Sn(t.o39_1,o,0),Cn()&&(zn(),zt()),zt()}}(t)),k=i;k.g12(-838505973),On(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,S=k,z=k.l12(x),q=S.h12();if(z||q===En().j12_1){var O=(C=x,function(t,n,e){return C.p1y(t,n,e)});S.i12(O),j=O}else j=q;var P=j,M=null==P||In(P)?P:Mt();return k.k12(),De(w,M,i,48,0),Sn(" ("+t.q39_1+t.p39_1+f+")",i,0),Cn()&&(zn(),zt()),zt()}}function ms(t){return function(n,e,r){return t.p1y(n,e,r)}}function gs(t){return bs(),Re(t,"bold"),zt()}function bs(){D||(D=!0,E=new Ui("strong"))}function $s(t,n,e){var r=n;return Cn()&&jn(1817043984,e,-1,"components.ComposableSingletons$TestNameDetectionToggleKt.lambda-1. (TestNameDetectionToggle.kt:29)"),Sn("Test Name Detection:",r,6),Cn()&&zn(),zt()}function ws(){var t;T=this,this.k3a_1=(t=qn(1817043984,!1,$s),function(n,e,r){return t.p1y(n,e,r)})}function xs(t,n,e,r){var o=e;o=o.p1d(-1801806257),On(o,"C(TestNameDetectionToggle$composable)");var i,s,a,u=r;if(0==(14&r)&&(u|=o.l1d(t)?4:2),0==(112&r)&&(u|=o.l12(n)?32:16),18==(91&u)&&o.x1b())o.b18();else{Cn()&&jn(-1801806257,u,-1,"components.TestNameDetectionToggle$composable (TestNameDetectionToggle.kt:10)");var l=o;l.g12(547886695),On(l,"C(remember$composable):Composables.kt#9igjgp");var c,h=l,p=h.h12();if(p===En().j12_1){var f=ks;h.i12(f),c=f}else c=p;var _=c,d=null==_||In(_)?_:Mt();l.k12();var v=d,y=An(o,815464847,!0,(s=t,a=n,function(t,n,e){var r=n;Cn()&&jn(815464847,e,-1,"components.TestNameDetectionToggle$composable. (TestNameDetectionToggle.kt:21)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,u=o,l=u.h12();if(l===En().j12_1){var c=Cs;u.i12(c),i=c}else i=l;var h=i,p=null==h||In(h)?h:Mt();o.k12(),Fn("testNameDetection",p,(null==T&&new ws,T).k3a_1,r,390,0),Zn(null,r,0,1);var f=r;f.g12(-1124426577),On(f,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var _,d=f,v=!!(f.l12(s)|f.l12(a)),y=d.h12();if(v||y===En().j12_1){var m=function(t,n){return function(e){return e.z20("testNameDetection"),e.y20(["btn",t?"btn-success":"btn-secondary"]),e.c21(function(t){return function(n){return t(),zt()}}(n)),Kn(e,Wn()),zt()}}(s,a);d.i12(m),_=m}else _=y;var g=_,b=null==g||In(g)?g:Mt();f.k12();var $=b,w=An(r,-1071119211,!0,function(t){return function(n,e,r){var o=e;return Cn()&&jn(-1071119211,r,-1,"components.TestNameDetectionToggle$composable.. (TestNameDetectionToggle.kt:42)"),Sn(t?"ON":"OFF",o,0),Cn()&&(zn(),zt()),zt()}}(s)),x=r;x.g12(-838505973),On(x,"C(remember$composable)P(1):Composables.kt#9igjgp");var k,j,C=x,S=x.l12(w),z=C.h12();if(S||z===En().j12_1){var q=(j=w,function(t,n,e){return j.p1y(t,n,e)});C.i12(q),k=q}else k=z;var O=k,P=null==O||In(O)?O:Mt();return x.k12(),Gn($,P,r,48,0),Cn()&&(zn(),zt()),zt()})),m=o;m.g12(-838505973),On(m,"C(remember$composable)P(1):Composables.kt#9igjgp");var g,b=m,$=m.l12(y),w=b.h12();if($||w===En().j12_1){var x=(i=y,function(t,n,e){return i.p1y(t,n,e)});b.i12(x),g=x}else g=w;var k=g,j=null==k||In(k)?k:Mt();m.k12(),Dn(v,j,o,48,0),Cn()&&zn()}var C=o.q1d();null===C||C.l1e(function(t,n,e){return function(r,o){return function(t,n,e,r,o){xs(t,n,r,1|e)}(t,n,e,r),zt()}}(t,n,r))}function ks(t){return t.y20(["form-group"]),t.w20(js),zt()}function js(t){return Xn(t,Un(10)),zt()}function Cs(t){return t.y20(["form-label"]),zt()}function Ss(t,n,e){var r=n;return Cn()&&jn(-130845949,e,-1,"components.ComposableSingletons$TestNamesKt.lambda-1. (TestNames.kt:24)"),Sn("Test Name :",r,6),Cn()&&zn(),zt()}function zs(){var t;B=this,this.l3a_1=(t=qn(-130845949,!1,Ss),function(n,e,r){return t.p1y(n,e,r)})}function qs(t,n,e,r,o,i){var s={_v:n},a=r;a=a.p1d(246637604),On(a,"C(TestNames$composable)P(2)");var u,l,c,h,p=o;if(0!=(2&i)&&(s._v=null),Cn()&&jn(246637604,p,-1,"components.TestNames$composable (TestNames.kt:8)"),!t.h()){var f=a;f.g12(547886695),On(f,"C(remember$composable):Composables.kt#9igjgp");var _,d=f,v=d.h12();if(v===En().j12_1){var y=Os;d.i12(y),_=y}else _=v;var m=_,g=null==m||In(m)?m:Mt();f.k12();var b=g,$=An(a,-1509913918,!0,(l=e,c=t,h=s,function(t,n,e){var r=n;Cn()&&jn(-1509913918,e,-1,"components.TestNames$composable. (TestNames.kt:18)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=Ps;s.i12(u),i=u}else i=a;var p=i,f=null==p||In(p)?p:Mt();o.k12(),Fn("testNames",f,(null==B&&new zs,B).l3a_1,r,390,0);var _=r;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.l12(l),m=v.h12();if(y||m===En().j12_1){var g=function(t){return function(n){return n.y20(["form-select"]),n.z20("testNames"),n.z27(function(t){return function(n){var e=n.h2b_1;return null==e||t(e),zt()}}(t)),zt()}}(l);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();_.k12();var w=$,x=An(r,-1857982381,!0,function(t,n,e){return function(e,r,o){var i=r;Cn()&&jn(-1857982381,o,-1,"components.TestNames$composable.. (TestNames.kt:37)");for(var s=t.c();s.d();){var a=s.e(),u=n._v,l=i;l.g12(-1124426577),On(l,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var c,h=l,p=!!(l.l12(a)|l.l12(u)),f=h.h12();if(p||f===En().j12_1){var _=Ms(a,n);h.i12(_),c=_}else c=f;var d=c,v=null==d||In(d)?d:Mt();l.k12();var y=v,m=An(i,1208237735,!0,As(a)),g=i;g.g12(-838505973),On(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,$=g,w=g.l12(m),x=$.h12();if(w||x===En().j12_1){var k=Es(m);$.i12(k),b=k}else b=x;var j=b,C=null==j||In(j)?j:Mt();g.k12(),de(a,y,C,i,384,0)}return Cn()&&(zn(),zt()),zt()}}(c,h)),k=r;k.g12(-838505973),On(k,"C(remember$composable)P(1):Composables.kt#9igjgp");var j,C,S=k,z=k.l12(x),q=S.h12();if(z||q===En().j12_1){var O=(C=x,function(t,n,e){return C.p1y(t,n,e)});S.i12(O),j=O}else j=q;var P=j,M=null==P||In(P)?P:Mt();return k.k12(),ve(w,!1,M,r,384,2),Cn()&&(zn(),zt()),zt()})),w=a;w.g12(-838505973),On(w,"C(remember$composable)P(1):Composables.kt#9igjgp");var x,k=w,j=w.l12($),C=k.h12();if(j||C===En().j12_1){var S=(u=$,function(t,n,e){return u.p1y(t,n,e)});k.i12(S),x=S}else x=C;var z=x,q=null==z||In(z)?z:Mt();w.k12(),Dn(b,q,a,48,0)}Cn()&&zn();var O=a.q1d();null===O||O.l1e(function(t,n,e,r,o){return function(i,s){return function(t,n,e,r,o,i,s){qs(t,n._v,e,i,1|r,o)}(t,n,e,r,o,i),zt()}}(t,s,e,o,i))}function Os(t){return t.y20(["form-group"]),zt()}function Ps(t){return t.y20(["form-label"]),zt()}function Ms(t,n){return function(e){return t===n._v&&(_e(e),zt()),zt()}}function As(t){return function(n,e,r){var o=e;return Cn()&&jn(1208237735,r,-1,"components.TestNames$composable... (TestNames.kt:46)"),Sn(t,o,0),Cn()&&(zn(),zt()),zt()}}function Es(t){return function(n,e,r){return t.p1y(n,e,r)}}function Is(t,n,e){var r=n;return Cn()&&jn(1108811911,e,-1,"ComposableSingletons$MainKt.lambda-1. (main.kt:8)"),Js(null,r,0,1),Cn()&&zn(),zt()}function Ds(){var t;L=this,this.m3a_1=(t=qn(1108811911,!1,Is),function(n,e,r){return t.p1y(n,e,r)})}function Ts(t,n,e){var r=n;return Cn()&&jn(-374992274,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-1. (HomePage.kt:131)"),Sn("🖥 Output",r,6),Cn()&&zn(),zt()}function Bs(t,n,e){var r=n;return Cn()&&jn(-938481562,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-2. (HomePage.kt:269)"),Sn("Share",r,6),Cn()&&zn(),zt()}function Ls(t,n,e){var r=n;Cn()&&jn(1589136774,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-3. (HomePage.kt:264)");var o=r;o.g12(547886695),On(o,"C(remember$composable):Composables.kt#9igjgp");var i,s=o,a=s.h12();if(a===En().j12_1){var u=Rs;s.i12(u),i=u}else i=a;var l=i,c=null==l||In(l)?l:Mt();return o.k12(),fe(c,Ks().o3a_1,r,48,0),Cn()&&zn(),zt()}function Rs(t){return t.y20(["modal-title"]),zt()}function Ns(t,n,e){var r=n;return Cn()&&jn(178222801,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-4. (HomePage.kt:279)"),Sn("It looks like you're using the 'Share' feature for the first time.\nPlease be aware that the data you share will be public and visible to everyone.\nMake sure your input doesn't contain any sensitive data.\n\nIf you need private share, please vote for the feature below",r,0),Cn()&&zn(),zt()}function Fs(t,n,e){var r=n;return Cn()&&jn(1430660527,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-5. (HomePage.kt:278)"),Ee(null,Ks().q3a_1,r,48,1),Cn()&&zn(),zt()}function Hs(t,n,e){var r=n;return Cn()&&jn(-1393416056,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-6. (HomePage.kt:308)"),Sn("Vote for Private Share",r,6),Cn()&&zn(),zt()}function Us(t,n,e){var r=n;return Cn()&&jn(699096049,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-7. (HomePage.kt:321)"),Sn("Cancel Share",r,6),Cn()&&zn(),zt()}function Vs(t,n,e){var r=n;return Cn()&&jn(-1500035696,e,-1,"page.home.ComposableSingletons$HomePageKt.lambda-8. (HomePage.kt:338)"),Sn("Understood, Share!",r,6),Cn()&&zn(),zt()}function Ws(){var t;R=this,this.n3a_1=(t=qn(-374992274,!1,Ts),function(n,e,r){return t.p1y(n,e,r)}),this.o3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-938481562,!1,Bs)),this.p3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(1589136774,!1,Ls)),this.q3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(178222801,!1,Ns)),this.r3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(1430660527,!1,Fs)),this.s3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-1393416056,!1,Hs)),this.t3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(699096049,!1,Us)),this.u3a_1=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(qn(-1500035696,!1,Vs))}function Ks(){return null==R&&new Ws,R}function Js(t,n,e,r){var o={_v:t},i=n;i=i.p1d(-109696367),On(i,"C(HomePageUi$composable)");var s,a,u=e;if(0==(14&e)&&(u|=0==(1&r)&&i.l12(o._v)?4:2),2==(11&u)&&i.x1b())i.b18();else{if(i.y1c(),0==(1&e)||i.c1d()){if(0!=(1&r)){var l,c=i;c.g12(547886695),On(c,"C(remember$composable):Composables.kt#9igjgp");var h,p=c,f=p.h12();if(f===En().j12_1){var _=new Ya(new nu,new iu,new lu,new fu,new yu);p.i12(_),h=_}else h=f;var d=h,v=null==d||In(d)?d:Mt();c.k12(),l=v,o._v=l,u&=-15}}else i.b18(),0!=(1&r)&&(u&=-15);i.z1c(),Cn()&&jn(-109696367,u,-1,"page.home.HomePageUi$composable (HomePage.kt:39)");var y=i;y.g12(547886695),On(y,"C(remember$composable):Composables.kt#9igjgp");var m,g=y,b=g.h12();if(b===En().j12_1){var $=Gs;g.i12($),m=$}else m=b;var w=m,x=null==w||In(w)?w:Mt();y.k12();var k=x,j=An(i,1790973562,!0,(a=o,function(t,n,e){var r=n;Cn()&&jn(1790973562,e,-1,"page.home.HomePageUi$composable. (HomePage.kt:54)"),ci(r,0);var o=a._v.l3d();!un(o)&&Uo(a._v.l3d(),r,0);var i=r;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,u=i,l=u.h12();if(l===En().j12_1){var c=Ys;u.i12(c),s=c}else s=l;var h=s,p=null==h||In(h)?h:Mt();i.k12();var f=p,_=An(r,-1337148517,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(-1337148517,r,-1,"page.home.HomePageUi$composable.. (HomePage.kt:73)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=Zs;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12();var p=h,f=An(o,1509226108,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(1509226108,r,-1,"page.home.HomePageUi$composable... (HomePage.kt:76)");var i,s=t._v.w3c(),a=t._v.x3c(),u=(i=t._v,function(t){return function(t,n){t.d3c(n,!1,2,null)}(i,t),zt()}),l=function(t){var n=function(n){return t.e3c(n),zt()};return n.callableName="onSaveClicked",n}(t._v),c=t._v.y3c(),h=function(t){var n=function(n){return t.f3c(n),zt()};return n.callableName="onSavedBenchmarkChanged",n}(t._v),p=function(t){var n=function(n){return t.g3c(n),zt()};return n.callableName="onLoadBenchmarkClicked",n}(t._v),f=function(t){var n=function(n){return t.h3c(n),zt()};return n.callableName="onDeleteBenchmarkClicked",n}(t._v);yo(s,a,c,u,l,function(t){var n=function(n){return t.i3c(n),zt()};return n.callableName="onShareClicked",n}(t._v),h,p,f,o,520),Zn(null,o,0,1),Zn(null,o,0,1);var _=An(o,-1521832332,!0,function(t,n){return function(n,e){var r=n;if(2==(11&e)&&r.x1b())r.b18(),zt();else{if(Cn()&&jn(-1521832332,e,-1,"page.home.HomePageUi$composable.... (HomePage.kt:93)"),ln("block size "+t._v.p3b_1.f()),t._v.p3b_1.f()>2){var o=t._v.n3c(),i="BEST (-"+(null==o?null:o.q3c_1)+t._v.s28()+")",s=t._v.t3c(),a="WORST (+"+(null==s?null:s.r3c_1)+t._v.s28()+")",u=t._v,l=r;l.g12(-838505973),On(l,"C(remember$composable)P(1):Composables.kt#9igjgp");var c,h=l,p=l.l12(u),f=h.h12();if(p||f===En().j12_1){var _=function(t){var n=function(){return t.j3c(),zt()};return n.callableName="onBestClicked",n}(u);h.i12(_),c=_}else c=f;var d=c,v=null==d||In(d)?d:Mt();l.k12();var y=v,m=t._v,g=r;g.g12(-838505973),On(g,"C(remember$composable)P(1):Composables.kt#9igjgp");var b,$=g,w=g.l12(m),x=$.h12();if(w||x===En().j12_1){var k=function(t){var n=function(){return t.k3c(),zt()};return n.callableName="onWorstClicked",n}(m);$.i12(k),b=k}else b=x;var j=b,C=null==j||In(j)?j:Mt();g.k12(),Xi(i,a,y,C,t._v.p3b_1,t._v.u3c(),t._v.v3c(),function(t){var n=function(n){return t.l3c(n),zt()};return n.callableName="onBlockNameOneChanged",n}(t._v),function(t){var n=function(n){return t.m3c(n),zt()};return n.callableName="onBlockNameTwoChanged",n}(t._v),r,0)}Cn()&&(zn(),zt())}return zt()}}(t)),d=o;d.g12(-838505973),On(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y=d,m=d.l12(_),g=y.h12();if(m||g===En().j12_1){var b=function(t){return function(n,e){return t.v1b(n,e)}}(_);y.i12(b),v=b}else v=g;var $=v,w=null==$||In($)?$:Mt();return d.k12(),Yi(w,t._v.s3b_1,t._v.z3c(),o,6),Cn()&&(zn(),zt()),zt()}}(t)),_=o;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v,y=_,m=_.l12(f),g=y.h12();if(m||g===En().j12_1){var b=(v=f,function(t,n,e){return v.p1y(t,n,e)});y.i12(b),d=b}else d=g;var $=d,w=null==$||In($)?$:Mt();_.k12(),Dn(p,w,o,48,0);var x=t._v.k3d(),k=null==x?null:x.z36_1,j=null==k||k.h()?null:k;if(null==j);else{var C=t._v.k3d();if(null==C)throw Gt("TSH");var S=C,z=o;z.g12(547886695),On(z,"C(remember$composable):Composables.kt#9igjgp");var q,O=z,P=O.h12();if(P===En().j12_1){var M=Qs;O.i12(M),q=M}else q=P;var A=q,E=null==A||In(A)?A:Mt();z.k12();var I=E,D=An(o,2092888171,!0,function(t,n,e,r){return function(n,o,i){var s=o;if(Cn()&&jn(2092888171,i,-1,"page.home.HomePageUi$composable.... (HomePage.kt:120)"),t._v.j3d())s.g12(-1006754755),Fo(s,0),s.k12();else{s.g12(-1006754686);var a=t._v,u=s;u.g12(-838505973),On(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var l,c=u,h=u.l12(a),p=c.h12();if(h||p===En().j12_1){var f=function(t){return function(n){return n.d21(function(t){return function(n){return t._v.a3d(),zt()}}(t)),zt()}}(t);c.i12(f),l=f}else l=p;var _=l,d=null==_||In(_)?_:Mt();u.k12(),Mn(d,Ks().n3a_1,s,48,0),s.k12()}var v=s;v.g12(547886695),On(v,"C(remember$composable):Composables.kt#9igjgp");var y,m=v,g=m.h12();if(g===En().j12_1){var b=ta;m.i12(b),y=b}else y=g;var $=y,w=null==$||In($)?$:Mt();v.k12();var x=w,k=An(s,-350149078,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(-350149078,r,-1,"page.home.HomePageUi$composable..... (HomePage.kt:141)");var i=An(o,1688816067,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(1688816067,r,-1,"page.home.HomePageUi$composable...... (HomePage.kt:142)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=na;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12();var p=h,f=An(o,-1218869404,!0,function(t,n){return function(n,e,r){var o=e;if(Cn()&&jn(-1218869404,r,-1,"page.home.HomePageUi$composable....... (HomePage.kt:147)"),t._v.g3d()){var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=ea;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12();var p=h,f=An(o,-1089967542,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(-1089967542,r,-1,"page.home.HomePageUi$composable........ (HomePage.kt:154)");var i=t._v.w3c().q36_1,s=t._v,a=o;a.g12(-838505973),On(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,l=a,c=a.l12(s),h=l.h12();if(c||h===En().j12_1){var p=function(t){var n=function(){return t.b3d(),zt()};return n.callableName="onToggleAutoGroupClicked",n}(s);l.i12(p),u=p}else u=h;var f=u,_=null==f||In(f)?f:Mt();return a.k12(),jo(i,_,o,0),Cn()&&(zn(),zt()),zt()}}(t)),_=o;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.l12(f),m=v.h12();if(y||m===En().j12_1){var g=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(f);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();_.k12(),Dn(p,$,o,48,0)}if(t._v.i3b_1.f()>1){var w=o;w.g12(547886695),On(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===En().j12_1){var C=ra;k.i12(C),x=C}else x=j;var S=x,z=null==S||In(S)?S:Mt();w.k12();var q=z,O=An(o,1874650163,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(1874650163,r,-1,"page.home.HomePageUi$composable........ (HomePage.kt:167)");var i=t._v.i3b_1,s=t._v.d3d(),a=t._v,u=o;u.g12(-838505973),On(u,"C(remember$composable)P(1):Composables.kt#9igjgp");var l,c=u,h=u.l12(a),p=c.h12();if(h||p===En().j12_1){var f=function(t){return function(n){return t._v.c3d(n),zt()}}(t);c.i12(f),l=f}else l=p;var _=l,d=null==_||In(_)?_:Mt();return u.k12(),Yo(i,s,d,o,0),Cn()&&(zn(),zt()),zt()}}(t)),P=o;P.g12(-838505973),On(P,"C(remember$composable)P(1):Composables.kt#9igjgp");var M,A=P,E=P.l12(O),I=A.h12();if(E||I===En().j12_1){var D=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(O);A.i12(D),M=D}else M=I;var T=M,B=null==T||In(T)?T:Mt();P.k12(),Dn(q,B,o,48,0)}if(At(t._v.h3d(),Yr())){var L=o;L.g12(547886695),On(L,"C(remember$composable):Composables.kt#9igjgp");var R,N=L,F=N.h12();if(F===En().j12_1){var H=oa;N.i12(H),R=H}else R=F;var U=R,V=null==U||In(U)?U:Mt();L.k12();var W=V,K=An(o,628742226,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(628742226,r,-1,"page.home.HomePageUi$composable........ (HomePage.kt:183)");var i=t._v.w3c().p36_1,s=t._v,a=o;a.g12(-838505973),On(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,l=a,c=a.l12(s),h=l.h12();if(c||h===En().j12_1){var p=function(t){var n=function(){return t.e3d(),zt()};return n.callableName="onToggleTestNameDetectionClicked",n}(s);l.i12(p),u=p}else u=h;var f=u,_=null==f||In(f)?f:Mt();return a.k12(),xs(i,_,o,0),Cn()&&(zn(),zt()),zt()}}(t)),J=o;J.g12(-838505973),On(J,"C(remember$composable)P(1):Composables.kt#9igjgp");var G,Y=J,X=J.l12(K),Z=Y.h12();if(X||Z===En().j12_1){var Q=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(K);Y.i12(Q),G=Q}else G=Z;var tt=G,nt=null==tt||In(tt)?tt:Mt();J.k12(),Dn(W,nt,o,48,0)}if(!t._v.g3b_1.h()){var et=o;et.g12(547886695),On(et,"C(remember$composable):Composables.kt#9igjgp");var rt,ot=et,it=ot.h12();if(it===En().j12_1){var st=ia;ot.i12(st),rt=st}else rt=it;var at=rt,ut=null==at||In(at)?at:Mt();et.k12();var lt=ut,ct=An(o,-617165711,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(-617165711,r,-1,"page.home.HomePageUi$composable........ (HomePage.kt:196)");var i=t._v.g3b_1,s=t._v,a=o;a.g12(-838505973),On(a,"C(remember$composable)P(1):Composables.kt#9igjgp");var u,l=a,c=a.l12(s),h=l.h12();if(c||h===En().j12_1){var p=function(t){return function(n){return t._v.f3d(n),zt()}}(t);l.i12(p),u=p}else u=h;var f=u,_=null==f||In(f)?f:Mt();return a.k12(),qs(i,null,_,o,0,2),Cn()&&(zn(),zt()),zt()}}(t)),ht=o;ht.g12(-838505973),On(ht,"C(remember$composable)P(1):Composables.kt#9igjgp");var pt,ft=ht,_t=ht.l12(ct),dt=ft.h12();if(_t||dt===En().j12_1){var vt=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(ct);ft.i12(vt),pt=vt}else pt=dt;var yt=pt,mt=null==yt||In(yt)?yt:Mt();ht.k12(),Dn(lt,mt,o,48,0)}return Cn()&&(zn(),zt()),zt()}}(t)),_=o;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.l12(f),m=v.h12();if(y||m===En().j12_1){var g=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(f);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();return _.k12(),Dn(p,$,o,48,0),Cn()&&(zn(),zt()),zt()}}(t)),s=o;s.g12(-838505973),On(s,"C(remember$composable)P(1):Composables.kt#9igjgp");var a,u=s,l=s.l12(i),c=u.h12();if(l||c===En().j12_1){var h=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(i);u.i12(h),a=h}else a=c;var p=a,f=null==p||In(p)?p:Mt();return s.k12(),Yn(null,null,f,o,384,3),Cn()&&(zn(),zt()),zt()}}(t)),j=s;j.g12(-838505973),On(j,"C(remember$composable)P(1):Composables.kt#9igjgp");var C,S=j,z=j.l12(k),q=S.h12();if(z||q===En().j12_1){var O=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(k);S.i12(O),C=O}else C=q;var P=C,M=null==P||In(P)?P:Mt();j.k12(),Dn(x,M,s,48,0),Zn(null,s,0,1);var A=s;A.g12(-838505973),On(A,"C(remember$composable)P(1):Composables.kt#9igjgp");var E,I=A,D=A.l12(e),T=I.h12();if(D||T===En().j12_1){var B=Ke(e,2);I.i12(B),E=B}else E=T;var L=E,R=null==L||In(L)?L:Mt();A.k12();for(var N=R.c();N.d();){var F=N.e(),H=s;H.g12(547886695),On(H,"C(remember$composable):Composables.kt#9igjgp");var U,V=H,W=V.h12();if(W===En().j12_1){var K=sa;V.i12(K),U=K}else U=W;var J=U,G=null==J||In(J)?J:Mt();H.k12();var Y=G,X=An(s,-2034949684,!0,ca(F,t,r)),Z=s;Z.g12(-838505973),On(Z,"C(remember$composable)P(1):Composables.kt#9igjgp");var Q,tt=Z,nt=Z.l12(X),et=tt.h12();if(nt||et===En().j12_1){var rt=ha(X);tt.i12(rt),Q=rt}else Q=et;var ot=Q,it=null==ot||In(ot)?ot:Mt();Z.k12(),Dn(Y,it,s,48,0)}return Cn()&&(zn(),zt()),zt()}}(t,0,j,S)),T=o;T.g12(-838505973),On(T,"C(remember$composable)P(1):Composables.kt#9igjgp");var B,L=T,R=T.l12(D),N=L.h12();if(R||N===En().j12_1){var F=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(D);L.i12(F),B=F}else B=N;var H=B,U=null==H||In(H)?H:Mt();T.k12(),Dn(I,U,o,48,0),zt(),zt()}return Cn()&&(zn(),zt()),zt()}}(a)),d=r;d.g12(-838505973),On(d,"C(remember$composable)P(1):Composables.kt#9igjgp");var v,y,m=d,g=d.l12(_),b=m.h12();if(g||b===En().j12_1){var $=(y=_,function(t,n,e){return y.p1y(t,n,e)});m.i12($),v=$}else v=b;var w=v,x=null==w||In(w)?w:Mt();return d.k12(),Dn(f,x,r,48,0),Cn()&&(zn(),zt()),zt()})),C=i;C.g12(-838505973),On(C,"C(remember$composable)P(1):Composables.kt#9igjgp");var S,z=C,q=C.l12(j),O=z.h12();if(q||O===En().j12_1){var P=(s=j,function(t,n,e){return s.p1y(t,n,e)});z.i12(P),S=P}else S=O;var M=S,A=null==M||In(M)?M:Mt();C.k12(),Dn(k,A,i,48,0);var E=i;E.g12(547886695),On(E,"C(remember$composable):Composables.kt#9igjgp");var I,D=E,T=D.h12();if(T===En().j12_1){var B=pa;D.i12(B),I=B}else I=T;var L=I,R=null==L||In(L)?L:Mt();E.k12();var N=R,F=An(i,1455827363,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(1455827363,r,-1,"page.home.HomePageUi$composable. (HomePage.kt:249)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=fa;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12();var p=h,f=An(o,1807616644,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(1807616644,r,-1,"page.home.HomePageUi$composable.. (HomePage.kt:254)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=_a;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12();var p=h,f=An(o,1279463717,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(1279463717,r,-1,"page.home.HomePageUi$composable... (HomePage.kt:259)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=da;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12(),Dn(h,Ks().p3a_1,o,48,0);var p=o;p.g12(547886695),On(p,"C(remember$composable):Composables.kt#9igjgp");var f,_=p,d=_.h12();if(d===En().j12_1){var v=va;_.i12(v),f=v}else f=d;var y=f,m=null==y||In(y)?y:Mt();p.k12(),Dn(m,Ks().r3a_1,o,48,0);var g=o;g.g12(547886695),On(g,"C(remember$composable):Composables.kt#9igjgp");var b,$=g,w=$.h12();if(w===En().j12_1){var x=ya;$.i12(x),b=x}else b=w;var k=b,j=null==k||In(k)?k:Mt();g.k12();var C=j,S=An(o,2024149198,!0,function(t,n){return function(n,e,r){var o=e;Cn()&&jn(2024149198,r,-1,"page.home.HomePageUi$composable.... (HomePage.kt:294)");var i=o;i.g12(547886695),On(i,"C(remember$composable):Composables.kt#9igjgp");var s,a=i,u=a.h12();if(u===En().j12_1){var l=ma;a.i12(l),s=l}else s=u;var c=s,h=null==c||In(c)?c:Mt();i.k12(),Gn(h,Ks().s3a_1,o,48,0);var p=o;p.g12(547886695),On(p,"C(remember$composable):Composables.kt#9igjgp");var f,_=p,d=_.h12();if(d===En().j12_1){var v=$a;_.i12(v),f=v}else f=d;var y=f,m=null==y||In(y)?y:Mt();p.k12(),Gn(m,Ks().t3a_1,o,48,0);var g=t._v,b=o;b.g12(-838505973),On(b,"C(remember$composable)P(1):Composables.kt#9igjgp");var $,w=b,x=b.l12(g),k=w.h12();if(x||k===En().j12_1){var j=function(t){return function(n){return n.y20(["btn","btn-success"]),n.g20("data-bs-dismiss","modal"),n.w20(xa),n.c21(function(t){return function(n){return t._v.m3d(),zt()}}(t)),Kn(n,Wn()),zt()}}(t);w.i12(j),$=j}else $=k;var C=$,S=null==C||In(C)?C:Mt();return b.k12(),Gn(S,Ks().u3a_1,o,48,0),Cn()&&(zn(),zt()),zt()}}(t)),z=o;z.g12(-838505973),On(z,"C(remember$composable)P(1):Composables.kt#9igjgp");var q,O=z,P=z.l12(S),M=O.h12();if(P||M===En().j12_1){var A=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(S);O.i12(A),q=A}else q=M;var E=q,I=null==E||In(E)?E:Mt();return z.k12(),Dn(C,I,o,48,0),Cn()&&(zn(),zt()),zt()}}(t)),_=o;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.l12(f),m=v.h12();if(y||m===En().j12_1){var g=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(f);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();return _.k12(),Dn(p,$,o,48,0),Cn()&&(zn(),zt()),zt()}}(t)),_=o;_.g12(-838505973),On(_,"C(remember$composable)P(1):Composables.kt#9igjgp");var d,v=_,y=_.l12(f),m=v.h12();if(y||m===En().j12_1){var g=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(f);v.i12(g),d=g}else d=m;var b=d,$=null==b||In(b)?b:Mt();return _.k12(),Dn(p,$,o,48,0),Cn()&&(zn(),zt()),zt()}}(o)),H=i;H.g12(-838505973),On(H,"C(remember$composable)P(1):Composables.kt#9igjgp");var U,V=H,W=H.l12(F),K=V.h12();if(W||K===En().j12_1){var J=function(t){return function(n,e,r){return t.p1y(n,e,r)}}(F);V.i12(J),U=J}else U=K;var G=U,Y=null==G||In(G)?G:Mt();H.k12(),Dn(N,Y,i,48,0),Cn()&&zn()}var X=i.q1d();null===X||X.l1e(function(t,n,e){return function(r,o){return function(t,n,e,r,o){Js(t._v,r,1|n,e)}(t,n,e,r),zt()}}(o,e,r))}function Gs(t){return t.y20(["container-fluid"]),zt()}function Ys(t){return t.y20(["row"]),t.w20(Xs),zt()}function Xs(t){return Ue(t,Un(40)),Ve(t,Un(40)),We(t,Un(40)),zt()}function Zs(t){return t.y20(["col-lg-4"]),zt()}function Qs(t){return t.y20(["col-lg-8"]),zt()}function ta(t){return t.y20(["row"]),zt()}function na(t){return t.y20(["row"]),zt()}function ea(t){return t.y20(["col-md-2"]),zt()}function ra(t){return t.y20(["col-md-4"]),zt()}function oa(t){return t.y20(["col-md-2"]),zt()}function ia(t){return t.y20(["col-md-4"]),zt()}function sa(t){return t.y20(["row"]),zt()}function aa(t){return function(n){return n.y20([t.g37_1]),zt()}}function ua(t,n,e){return function(r,o,i){var s,a,u=o;return Cn()&&jn(1979032493,i,-1,"page.home.HomePageUi$composable...... (HomePage.kt:226)"),qo(t._v.w3c().q36_1,n.y36_1,e,(s=t._v,(a=function(t){return s.i3d(t),zt()}).callableName="onDotClicked",a),u,576),Cn()&&(zn(),zt()),zt()}}function la(t){return function(n,e,r){return t.p1y(n,e,r)}}function ca(t,n,e){return function(r,o,i){var s=o;Cn()&&jn(-2034949684,i,-1,"page.home.HomePageUi$composable..... (HomePage.kt:221)");for(var a=t.c();a.d();){var u=a.e(),l=aa(u),c=An(s,1979032493,!0,ua(n,e,u)),h=s;h.g12(-838505973),On(h,"C(remember$composable)P(1):Composables.kt#9igjgp");var p,f=h,_=h.l12(c),d=f.h12();if(_||d===En().j12_1){var v=la(c);f.i12(v),p=v}else p=d;var y=p,m=null==y||In(y)?y:Mt();h.k12(),Dn(l,m,s,48,0)}return Cn()&&(zn(),zt()),zt()}}function ha(t){return function(n,e,r){return t.p1y(n,e,r)}}function pa(t){return t.z20("shareAwareModal"),t.y20(["modal","fade"]),zt()}function fa(t){return t.y20(["modal-dialog","modal-lg"]),zt()}function _a(t){return t.y20(["modal-content"]),zt()}function da(t){return t.y20(["modal-header"]),zt()}function va(t){return t.y20(["modal-body"]),zt()}function ya(t){return t.y20(["modal-footer"]),zt()}function ma(t){return t.y20(["btn","btn-dark"]),t.w20(ga),t.c21(ba),Kn(t,Wn()),zt()}function ga(t){return Vn(t,Un(10)),zt()}function ba(t){return window.open("https://forms.gle/KtPAA5LMeE8sak5h9","_blank"),zt()}function $a(t){return t.y20(["btn","btn-danger"]),t.g20("data-bs-dismiss","modal"),t.w20(wa),Kn(t,Wn()),zt()}function wa(t){return Vn(t,Un(10)),zt()}function xa(t){return Vn(t,Un(10)),zt()}function ka(){N=this,this.n3d_1="Something went wrong!"}function ja(){return null==N&&new ka,N}function Ca(t,n){return Fe("savedBenchmarks",1,ir,(function(t){return t.y3c()}),(function(t,n){return Ca(t,n)})),t.e3b_1.ly(n)}function Sa(t,n){return Fe("currentFocusedGroup",1,ir,(function(t){return t.d3d()}),(function(t,n){return Sa(t,n)})),t.h3b_1.ly(n)}function za(t,n){return Fe("chartsBundle",1,ir,(function(t){return t.k3d()}),(function(t,n){return za(t,n)})),t.j3b_1.ly(n)}function qa(t,n){return Fe("errorMsg",1,ir,(function(t){return t.l3d()}),(function(t,n){return qa(t,n)})),t.k3b_1.ly(n)}function Oa(t,n){return Fe("isEditableTitleEnabled",1,ir,(function(t){return t.j3d()}),(function(t,n){return Oa(t,n)})),t.l3b_1.ly(n)}function Pa(t,n){return Fe("shouldSelectUnsaved",1,ir,(function(t){return t.x3c()}),(function(t,n){return Pa(t,n)})),t.m3b_1.ly(n)}function Ma(t,n){return Fe("selectedBlockNameOne",1,ir,(function(t){return t.u3c()}),(function(t,n){return Ma(t,n)})),t.n3b_1.ly(n)}function Aa(t,n){return Fe("selectedBlockNameTwo",1,ir,(function(t){return t.v3c()}),(function(t,n){return Aa(t,n)})),t.o3b_1.ly(n)}function Ea(t,n){return Fe("avgOfCount",1,ir,(function(t){return t.z3c()}),(function(t,n){return Ea(t,n)})),t.q3b_1.ly(n)}function Ia(t,n){return Fe("isAutoGroupButtonVisible",1,ir,(function(t){return t.g3d()}),(function(t,n){return Ia(t,n)})),t.r3b_1.ly(n)}function Da(t,n){return Fe("inputType",1,ir,(function(t){return t.h3d()}),(function(t,n){return Da(t,n)})),t.t3b_1.ly(n)}function Ta(t,n){return Fe("unit",1,ir,(function(t){return t.s28()}),(function(t,n){return Ta(t,n)})),t.u3b_1.ly(n)}function Ba(t,n){return Fe("bestAggSummary",1,ir,(function(t){return t.n3c()}),(function(t,n){return Ba(t,n)})),t.v3b_1.ly(n)}function La(t,n){return Fe("worstAggSummary",1,ir,(function(t){return t.t3c()}),(function(t,n){return La(t,n)})),t.w3b_1.ly(n)}function Ra(t,n){return Fe("form",1,ir,(function(t){return t.w3c()}),(function(t,n){return Ra(t,n)})),t.x3b_1.ly(n)}function Na(t){Ca(t,t.z3a_1.o3d())}function Fa(t,n){for(var e=Bt(n,["\n"],!1,0,6,null),r=Dt(),o=e.c();o.d();){var i=o.e();Je(i,"PROCESS ENDED",!1)||Je(i,"PROCESS STARTED",!1)||r.a(i)}var s,a=It(r,"\n",null,null,0,null,(s=t,function(t){var n,e,r=s.a3c_1.ea(t,""),o=Ht(tr(Nt(r)?r:Mt())),i=o,a=s.b3c_1.ea(i,"");if(n=Ht(tr(Nt(a)?a:Mt())),en(o=n,"System.out ",!1,2,null)){var u=rn(o,"System.out ","",!1,4,null);o=Ht(tr(Nt(u)?u:Mt())),zt()}var l=o,c=s.c3c_1.ea(l,"");e=Ht(tr(Nt(c)?c:Mt()));var h=nr(o=e,"startup type is: cold",!1,2,null)?"startup type is: cold":nr(o,"startup type is: warm",!1,2,null)?"startup type is: warm":nr(o,"startup type is: hot",!1,2,null)?"startup type is: hot":o;return Ht(tr(Nt(h)?h:Mt()))}),30,null);return ln("QuickTag: HomeViewModel:filterOutAndroidJunkLog: '"+a+"'"),a}function Ha(t){Ma(t,null),Aa(t,null),t.p3b_1.s7(),za(t,null),t.s3b_1.s7(),Ba(t,null),La(t,null),Ea(t,-1),Va(t)}function Ua(t,n){t.p3b_1.s7();var e=Xt(n.y36_1.v36_1.c3());t.p3b_1.y1x(e),e.f()>=2?(Ma(t,e.g(0)),Aa(t,e.g(1))):(Ma(t,null),Aa(t,null)),Va(t)}function Va(t){t.s3b_1.s7();var n,e=At(t.h3d(),Gr()),r=t.k3d(),o=null==r?null:r.z36_1;if(null==o)n=null;else{for(var i=Dt(),s=o.c();s.d();){var a=s.e(),u=ku().q3d(e,a,t.u3c(),t.v3c());null==u||(i.a(u),zt())}n=i}var l=n;t.s3b_1.y1x(null==l?Xe():l),function(t){for(var n,e=At(t.h3d(),Gr()),r=Dt(),o=t.p3b_1.c();o.d();)for(var i=o.e(),s=t.p3b_1.c();s.d();){var a=s.e();if(i!==a){var u,l=t.k3d(),c=null==l?null:l.z36_1;if(null==c)u=null;else{for(var h=Dt(),p=c.c();p.d();){var f=p.e(),_=ku().q3d(e,f,i,a);null==_||(h.a(_),zt())}u=h}if(null==u);else{for(var d=0,v=0,y=u.c();y.d();)for(var m=y.e().d3a_1.c();m.d();){var g=m.e();g.p39_1>0?v=v+Ge(g.p39_1)|0:g.p39_1<0&&(d=d-Ge(g.p39_1)|0)}r.a(new Xa(i,a,d,v))}}}var b,$=r.c();if($.d()){var w=$.e();if($.d()){var x=w.q3c_1;do{var k=$.e(),j=k.q3c_1;Ye(x,j)<0&&(w=k,x=j)}while($.d());n=w}else n=w}else n=null;Ba(t,n);var C=r.c();if(C.d()){var S=C.e();if(C.d()){var z=S.r3c_1;do{var q=C.e(),O=q.r3c_1;Ye(z,O)<0&&(S=q,z=O)}while(C.d());b=S}else b=S}else b=null;La(t,b)}(t)}function Wa(t){return window.alert(t),zt()}function Ka(t,n){return function(){Pa(t,n);try{t.y3b_1.s7(),t.g3b_1.s7(),t.i3b_1.s7(),t.p3b_1.s7();var e=Wr().n36(t.w3c(),t.d3d());if(null==e)return ln("failed to parse form"),Ha(t),qa(t,""),zt();var r,o=e,i=o.l4(),s=o.m4(),a=o.x35();Da(t,i),t.y3b_1.k1(s),t.i3b_1.y1x(a),a.i(t.d3d())||(Wr(),Sa(t,"All"));for(var u=Dt(),l=s.c();l.d();){for(var c=l.e().f36_1,h=Rt(Lt(c,10)),p=c.c();p.d();){for(var f,_=p.e().i35_1,d=Rt(_.f()),v=_.v().c();v.d();){var y;y=v.e().n2().f(),d.a(y)}f=d,h.a(f)}vn(u,h)}var m=_n(u),g=null==(r=m.h()?null:m)?null:Ze(r);Ea(t,null==g?-1:g);var b=i.t1_1;if(0===b){var $=function(t){for(var n,e=Yt(t),r=Ut(),o=e.f36_1.c();o.d();){var i=o.e();r.n(i.h35_1,i.j35_1)}n=r;var s=new ao("📊",e.d36_1,n,"col-lg-12");return new io(Qr(t,!0),Kt(s))}(t.y3b_1);za(t,$),Ua(t,$),Ta(t,"")}else if(1===b){for(var w,x=t.g3b_1,k=t.y3b_1,j=Dt(),C=k.c();C.d();){var S=C.e().e36_1;null==S||(j.a(S),zt())}w=j,x.y1x(Qt(w));var z,q=t.g3b_1;t:{for(var O=q.c();O.d();){var P=O.e();if(P===t.f3b_1){z=P;break t}}z=null}var M,A=z,E=null==A?wn(t.g3b_1):A;if(null!=E){for(var I=t.y3b_1,D=Dt(),T=I.c();T.d();){var B=T.e();B.e36_1==E&&D.a(B)}M=D}else M=t.y3b_1;var L=Xr(M);za(t,L),Ua(t,L),Ta(t,"ms")}var R=t.k3d(),N=null==R?null:R.y36_1,F=null==N?null:N.u36_1,H=null==F?null:F.f(),U=null==H?0:H,V=t.k3d(),W=null==V?null:V.y36_1,K=null==W?null:W.v36_1,J=null==K?null:K.f();Ia(t,!(U===(null==J?0:J))),qa(t,""),zt()}catch(n){if(!(n instanceof Error))throw n;Qe(n);var G,Y=n.message;null==Y?(ja(),G="Something went wrong!"):G=Y,qa(t,G),Ha(t),zt()}return zt()}}function Ja(t){return window.alert("Share failed : "+t),zt()}function Ga(t,n){return function(){for(var e=er(t.o36_1,3e4),r=(null==G&&new wu,G).t3d(10),o=e.c(),i=0;o.d();){var s=i;i=i+1|0;var a=o.e();try{n.b3b_1.u3d(r,s,a)}catch(t){if(!(t instanceof Error))throw t;Qe(t)}}ln("QuickTag: HomeViewModel:onShareClicked: Huhhaaa!!! shareKey: "+r+". Checking data integrity...");var u,l,c=(u=e,l=r,function(t){return t===u.f()?(ln("QuickTag: HomeViewModel:onShareClicked: SHARE SUCCESS!"),window.prompt("Ready to share, copy below URL",window.location.origin+"/#"+l),zt()):(window.alert("Share failed. Expected "+u.f()+" chunk(s) but found "+t),zt()),zt()});return n.c3b_1.v3d(r,c,Ja),zt()}}function Ya(t,n,e,r,o){ja(),this.z3a_1=t,this.a3b_1=n,this.b3b_1=e,this.c3b_1=r,this.d3b_1=o;var i=Xe();this.e3b_1=Ce(i,null,2,null),this.f3b_1=null,this.g3b_1=rr();Wr(),this.h3b_1=Ce("All",null,2,null),this.i3b_1=rr(),this.j3b_1=Ce(null,null,2,null),this.k3b_1=Ce("",null,2,null),this.l3b_1=Ce(!1,null,2,null),this.m3b_1=Ce(!1,null,2,null),this.n3b_1=Ce(null,null,2,null),this.o3b_1=Ce(null,null,2,null),this.p3b_1=rr(),this.q3b_1=Ce(-1,null,2,null),this.r3b_1=Ce(!1,null,2,null),this.s3b_1=rr(),this.t3b_1=Ce(null,null,2,null),this.u3b_1=Ce("",null,2,null),this.v3b_1=Ce(null,null,2,null),this.w3b_1=Ce(null,null,2,null);var s,a=this.a3b_1.w3d(),u=null==a?new uo((null==K&&new mu,K).x3d_1,!1,!1):a;this.x3b_1=Ce(u,null,2,null),Na(this),window.addEventListener("keydown",(s=this,function(t){return"Escape"===t.key&&(Wr(),s.c3d("All"),zt()),zt()}));var l,c=window.location.href;if(nr(c,"#",!1,2,null)){var h=xn(c,"#",0,!1,6,null)+1|0,p=c.substring(h);l=Ht(Ft(Nt(p)?p:Mt()))}else l=null;var f=l;if(ln("QuickTag: HomeViewModel:: shareKey: '"+f+"'"),null!=f&&!un(f)){var _=function(t){return function(n){var e=t.w3c();Ra(t,e.q37(n,!1,!1,6,null));var r=t.w3c();return t.d3c(r,!1,2,null),zt()}}(this);this.c3b_1.z3d(f,_,Wa)}var d;d=Dt(),this.y3b_1=d,this.z3b_1=null;var v;v=nn("\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.a3c_1=v;var y;y=nn("\\d{2}:\\d{2}:\\d{2}\\.\\d{3}"),this.b3c_1=y;var m;m=nn("^(I|D|E|W|V) "),this.c3c_1=m}function Xa(t,n,e,r){this.o3c_1=t,this.p3c_1=n,this.q3c_1=e,this.r3c_1=r,this.s3c_1=0}function Za(){}function Qa(){F=this,this.n3e_1="savedBenchmarks"}function tu(){return null==F&&new Qa,F}function nu(){tu(),this.o3e_1=0}function eu(){}function ru(){H=this,this.r3e_1="auto_form_input",this.s3e_1="is_test_name_detection_enabled",this.t3e_1="is_auto_group_enabled"}function ou(){return null==H&&new ru,H}function iu(){ou(),this.u3e_1=0}function su(){}function au(){U=this,this.v3e_1="https://docs.google.com/forms/d/e/1FAIpQLSfYy0ZnzlSot_3SpJ7GVK9umEpf3Dqzz1pQ7jyLUVd7jO2qCQ/formResponse"}function uu(){return null==U&&new au,U}function lu(){uu(),this.w3e_1=0}function cu(){}function hu(){V=this,this.x3e_1="https://docs.google.com/spreadsheets/d/1U1bKMHN0hlpZ1CVke3TB3-Xc20ZJwZxlMWYXpMcII-k/gviz/tq?tqx=out:csv&sheet=Sheet1"}function pu(){return null==V&&new hu,V}function fu(){pu(),this.y3e_1=0}function _u(){}function du(){W=this,this.z3e_1="is_aware_share_is_public"}function vu(){return null==W&&new du,W}function yu(){vu(),this.a3f_1=0}function mu(){K=this,this.x3d_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.y3d_1=0}function gu(t){return t.c2w_1=!0,zt()}function bu(){J=this,this.p3e_1=mr(null,gu,1,null),this.q3e_1=8}function $u(){return null==J&&new bu,J}function wu(){G=this,this.r3d_1="0123456789AaBbCcDdEeFfGgHhIiJjKkLkMmNnOoPpQqRrSsTtUuVvWwXxYyZz",this.s3d_1=0}function xu(){Y=this,this.p3d_1=0}function ku(){return null==Y&&new xu,Y}return jr.prototype=Object.create(Error.prototype),jr.prototype.constructor=jr,Cr.prototype=Object.create(jr.prototype),Cr.prototype.constructor=Cr,Or.prototype=Object.create(Et.prototype),Or.prototype.constructor=Or,Mr.prototype=Object.create(Et.prototype),Mr.prototype.constructor=Mr,mo.prototype=Object.create(Tn.prototype),mo.prototype.constructor=mo,jr.$metadata$=jt("InvalidDataException",void 0,void 0,void 0,void 0,Error.prototype),Cr.$metadata$=jt("InvalidBenchmarkDataException",void 0,void 0,void 0,void 0,jr.prototype),Sr.prototype.l35=function(){return this.h35_1},Sr.prototype.m35=function(){return this.i35_1},Sr.prototype.n35=function(){return this.j35_1},Sr.prototype.toString=function(){return"BlockRow(title="+this.h35_1+", fullData="+this.i35_1+")"},Sr.prototype.hashCode=function(){var t=Ot(this.h35_1);return X(t,31)+Pt(this.i35_1)|0},Sr.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Sr))return!1;var n=t instanceof Sr?t:Mt();return this.h35_1===n.h35_1&&!!At(this.i35_1,n.i35_1)},Sr.$metadata$=jt("BlockRow"),Or.prototype.l2=function(){return this.q35_1},Or.$metadata$=jt("SupportedMetrics",void 0,void 0,void 0,void 0,Et.prototype),Mr.$metadata$=jt("InputType",void 0,void 0,void 0,void 0,Et.prototype),Ar.prototype.l4=function(){return this.t35_1},Ar.prototype.m4=function(){return this.u35_1},Ar.prototype.x35=function(){return this.v35_1},Ar.prototype.toString=function(){return"ResultContainer(inputType="+this.t35_1+", benchmarkResults="+this.u35_1+", focusGroups="+this.v35_1+")"},Ar.prototype.hashCode=function(){var t=this.t35_1.hashCode();return t=X(t,31)+Pt(this.u35_1)|0,X(t,31)+Pt(this.v35_1)|0},Ar.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Ar))return!1;var n=t instanceof Ar?t:Mt();return!!this.t35_1.equals(n.t35_1)&&!!At(this.u35_1,n.u35_1)&&!!At(this.v35_1,n.v35_1)},Ar.$metadata$=jt("ResultContainer"),Vr.prototype.n36=function(t,n){for(var e=Bt(t.o36_1,["\n"],!1,0,6,null),r=It(e,"\n",null,null,0,null,Hr,30,null),o=sn(),i=an("^\\s+",o).da(r,0),s=Rt(Lt(i,10)),a=i.c();a.d();){var u,l=a.e();u=Ht(Ft(Nt(l)?l:Mt())),s.a(u)}for(var c=s,h=Dt(),p=c.c();p.d();){var f=p.e();!un(f)&&h.a(f)}var _=h;if(ln("parsing input..."),_.h())return null;if(function(t){var n=t.o36_1,e=zr(),r=fn(e,"|","(",")",0,null,Jr,24,null);return!nn(r).ga(n)}(t))return Er(this,_,n);ln("parsing machine generated benchmark input...");for(var d=Dt(),v=_.c(),y=0;v.d();){var m=y;y=y+1|0;var g=v.e();ln("block: '"+g+"'");for(var b=Bt(g,["\n"],!1,0,6,null),$=Rt(Lt(b,10)),w=b.c();w.d();){var x,k=w.e();x=Ht(Ft(Nt(k)?k:Mt())),$.a(x)}for(var j=$,C=null,S=null,z=Dt(),q=j.c();q.d();){var O=q.e();null==C&&Lr(this,O)&&(C=O),t.p36_1&&Dr(this,O)&&(null!=S&&!z.h()&&(null==C&&(C="benchmark "+m+" "+S),d.a(new Kr(C,S,z)),z.s7()),S=O);var P=Nr(O,this);if(ln("QuickTag: BenchmarkResult:parse: metric name is "+P),null!=P){var M,A;t:{for(var E=z.c();E.d();){var I=E.e();if(I.h35_1===P){M=I;break t}}M=null}if(null!=M)throw new Cr("Two "+P+" found in block "+(m+1|0)+". Expected only one");for(var D=Rr(0,P,O),T=Rt(D.f()),B=D.v().c();B.d();){var L,R,N=B.e(),F=N.l2();R=N.n2(),L=cn(F,Kt(R)),T.a(L)}A=T,z.a(new Sr(P,Jt(A)))}}null==C&&(C="benchmark "+m),C=Tr(this,C),!z.h()&&d.a(new Kr(C,S,z))}return new Ar(Yr(),d,hn("All"))},Vr.$metadata$=pn("Companion"),Kr.prototype.l35=function(){return this.d36_1},Kr.prototype.s36=function(){return this.e36_1},Kr.prototype.t36=function(){return this.f36_1},Kr.prototype.toString=function(){return"BenchmarkResult(title="+this.d36_1+", testName="+this.e36_1+", blockRows="+this.f36_1+")"},Kr.prototype.hashCode=function(){var t=Ot(this.d36_1);return t=X(t,31)+(null==this.e36_1?0:Ot(this.e36_1))|0,X(t,31)+Pt(this.f36_1)|0},Kr.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Kr))return!1;var n=t instanceof Kr?t:Mt();return this.d36_1===n.d36_1&&this.e36_1==n.e36_1&&!!At(this.f36_1,n.f36_1)},Kr.$metadata$=jt("BenchmarkResult"),Zr.prototype.x36=function(){return this.u36_1},Zr.prototype.toString=function(){return"GroupMap(autoGroupMap="+this.u36_1+", wordColorMap="+this.v36_1+")"},Zr.prototype.hashCode=function(){var t=Pt(this.u36_1);return X(t,31)+Pt(this.v36_1)|0},Zr.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Zr))return!1;var n=t instanceof Zr?t:Mt();return!!At(this.u36_1,n.u36_1)&&!!At(this.v36_1,n.v36_1)},Zr.$metadata$=jt("GroupMap"),eo.prototype.z35=function(t,n){var e,r=this.y35_1.fl(n,0,2,null);if(null!=r){var o=Yt(r.ua());e=rn(n,o,"",!1,4,null)}else e=n;var i=e,s=no(),a=$n(s.hl(i,0,2,null)),u=null==a?null:a.ua(),l=null==u?null:wn(u);if(null==l)return null;var c=l,h=xn(i,c,0,!1,6,null);return new oo(i.substring(0,h),on(c))},eo.$metadata$=pn("Companion"),oo.prototype.toString=function(){return"TextNumberLine(text="+this.a36_1+", number="+this.b36_1+")"},oo.prototype.hashCode=function(){var t=Ot(this.a36_1);return X(t,31)+kn(this.b36_1)|0},oo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof oo))return!1;var n=t instanceof oo?t:Mt();return this.a36_1===n.a36_1&&!!At(this.b36_1,n.b36_1)},oo.$metadata$=jt("TextNumberLine"),io.prototype.b37=function(){return this.y36_1},io.prototype.c37=function(){return this.z36_1},io.prototype.toString=function(){return"ChartsBundle(groupMap="+this.y36_1+", charts="+this.z36_1+")"},io.prototype.hashCode=function(){var t=this.y36_1.hashCode();return X(t,31)+Pt(this.z36_1)|0},io.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof io))return!1;var n=t instanceof io?t:Mt();return!!this.y36_1.equals(n.y36_1)&&!!At(this.z36_1,n.z36_1)},io.$metadata$=jt("ChartsBundle"),ao.prototype.i37=function(){return this.d37_1},ao.prototype.j37=function(){return this.e37_1},ao.prototype.k37=function(){return this.f37_1},ao.prototype.l37=function(){return this.g37_1},ao.prototype.toString=function(){return"Chart(emoji="+this.d37_1+", label="+this.e37_1+", dataSets="+this.f37_1+", bsClass="+this.g37_1+")"},ao.prototype.hashCode=function(){var t=Ot(this.d37_1);return t=X(t,31)+Ot(this.e37_1)|0,t=X(t,31)+Pt(this.f37_1)|0,X(t,31)+Ot(this.g37_1)|0},ao.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ao))return!1;var n=t instanceof ao?t:Mt();return this.d37_1===n.d37_1&&this.e37_1===n.e37_1&&!!At(this.f37_1,n.f37_1)&&this.g37_1===n.g37_1},ao.$metadata$=jt("Chart"),uo.prototype.m37=function(){return this.o36_1},uo.prototype.n37=function(){return this.p36_1},uo.prototype.o37=function(){return this.q36_1},uo.prototype.p37=function(t,n,e){return new uo(t,n,e)},uo.prototype.q37=function(t,n,e,r,o){return 0!=(1&r)&&(t=this.o36_1),0!=(2&r)&&(n=this.p36_1),0!=(4&r)&&(e=this.q36_1),this.p37(t,n,e)},uo.prototype.toString=function(){return"FormData(data="+this.o36_1+", isTestNameDetectionEnabled="+this.p36_1+", isAutoGroupEnabled="+this.q36_1+")"},uo.prototype.hashCode=function(){var t=Ot(this.o36_1);return t=X(t,31)+(0|this.p36_1)|0,X(t,31)+(0|this.q36_1)|0},uo.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof uo))return!1;var n=t instanceof uo?t:Mt();return this.o36_1===n.o36_1&&this.p36_1===n.p36_1&&this.q36_1===n.q36_1},uo.$metadata$=jt("FormData"),lo.prototype.r37=function(){return"line"},lo.$metadata$=pn("Companion"),_o.prototype.w37=function(){return this.t37_1},_o.prototype.x37=function(){return this.u37_1},_o.prototype.y37=function(){return this.v37_1},_o.$metadata$=pn("ComposableSingletons$AutoFormUiKt"),mo.prototype.r1j=function(t,n){var e=this.s1j(t,n);return e.l7_1=zt(),e.m7_1=null,e.q7()},mo.prototype.r7=function(t,n){return this.r1j(null!=t&&Ln(t,Bn)?t:Mt(),n)},mo.prototype.q7=function(){for(this.l7_1;;)try{var t=this.j7_1;if(0===t)return this.k7_1=1,this.h38_1(this.i38_1),zt();if(1===t)throw this.m7_1}catch(t){throw t}},mo.prototype.s1j=function(t,n){var e=new mo(this.h38_1,this.i38_1,n);return e.j38_1=t,e},mo.$metadata$=jt("FormUi$composable$slambda",void 0,void 0,void 0,[1],Tn.prototype),ko.prototype.l38=function(){return this.k38_1},ko.$metadata$=pn("ComposableSingletons$AutoGroupToggleKt"),Mo.prototype.ls=function(){this.m38_1.destroy()},Mo.$metadata$=jt(void 0,[ie]),Ro.$metadata$=pn("ComposableSingletons$EditableTitleKt"),Go.prototype.l38=function(){return this.q38_1},Go.$metadata$=pn("ComposableSingletons$FocusGroupsKt"),ui.$metadata$=pn("ComposableSingletons$HeadingKt"),pi.$metadata$=pn("Companion"),fi.prototype.v2c=function(){return this.u38_1},fi.prototype.p2m=function(){return[be(),be()]},fi.prototype.x2c=function(t){var n=this.u38_1,e=!0,r=0,o=0,i=null,s=null,a=t.u2f(n);if(a.i2g())i=a.e2g(n,0),o|=1,s=a.e2g(n,1),o|=2;else for(;e;)switch(r=a.j2g(n)){case-1:e=!1;break;case 0:i=a.e2g(n,0),o|=1;break;case 1:s=a.e2g(n,1),o|=2;break;default:throw $e(r)}return a.v2f(n),di(o,i,s)},fi.prototype.w38=function(t,n){var e=this.u38_1,r=t.u2f(e);r.g2h(e,0,n.x38_1),r.g2h(e,1,n.y38_1),r.v2f(e)},fi.prototype.w2c=function(t,n){return this.w38(t,n instanceof vi?n:Mt())},fi.$metadata$=pn("$serializer",[xe]),vi.prototype.l2=function(){return this.x38_1},vi.prototype.toString=function(){return"SavedBenchmarkNode(key="+this.x38_1+", value="+this.y38_1+")"},vi.prototype.hashCode=function(){var t=Ot(this.x38_1);return X(t,31)+Ot(this.y38_1)|0},vi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof vi))return!1;var n=t instanceof vi?t:Mt();return this.x38_1===n.x38_1&&this.y38_1===n.y38_1},vi.$metadata$=jt("SavedBenchmarkNode",void 0,void 0,{0:_i}),yi.$metadata$=pn("Companion"),mi.prototype.v2c=function(){return this.a39_1},mi.prototype.p2m=function(){return[new je(_i())]},mi.prototype.x2c=function(t){var n=this.a39_1,e=!0,r=0,o=0,i=null,s=t.u2f(n);if(s.i2g())i=s.g2g(n,0,new je(_i()),i),o|=1;else for(;e;)switch(r=s.j2g(n)){case-1:e=!1;break;case 0:i=s.g2g(n,0,new je(_i()),i),o|=1;break;default:throw $e(r)}return s.v2f(n),bi(o,i)},mi.prototype.c39=function(t,n){var e=this.a39_1,r=t.u2f(e);r.i2h(e,0,new je(_i()),n.d39_1),r.v2f(e)},mi.prototype.w2c=function(t,n){return this.c39(t,n instanceof $i?n:Mt())},mi.$metadata$=pn("$serializer",[xe]),$i.prototype.toString=function(){return"SavedBenchmarks(items="+this.d39_1+")"},$i.prototype.hashCode=function(){return Pt(this.d39_1)},$i.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof $i))return!1;var n=t instanceof $i?t:Mt();return!!At(this.d39_1,n.d39_1)},$i.$metadata$=jt("SavedBenchmarks",void 0,void 0,{0:gi}),Si.prototype.w37=function(){return this.g39_1},Si.prototype.x37=function(){return this.h39_1},Si.prototype.y37=function(){return this.i39_1},Si.$metadata$=pn("ComposableSingletons$SavedBenchmarksDropDownKt"),Ni.prototype.u39=function(){return this.j39_1},Ni.prototype.i37=function(){return this.k39_1},Ni.prototype.v39=function(){return this.l39_1},Ni.prototype.j37=function(){return this.m39_1},Ni.prototype.w39=function(){return this.n39_1},Ni.prototype.x39=function(){return this.o39_1},Ni.prototype.y39=function(){return this.p39_1},Ni.prototype.z39=function(){return this.q39_1},Ni.prototype.a3a=function(){return this.r39_1},Ni.prototype.b3a=function(){return this.s39_1},Ni.$metadata$=jt("SummaryNode"),Fi.prototype.n1n=function(){return this.d3a_1},Fi.prototype.toString=function(){return"Summary(title="+this.c3a_1+", nodes="+this.d3a_1+")"},Fi.prototype.hashCode=function(){var t=Ot(this.c3a_1);return X(t,31)+Pt(this.d3a_1)|0},Fi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Fi))return!1;var n=t instanceof Fi?t:Mt();return this.c3a_1===n.c3a_1&&!!At(this.d3a_1,n.d3a_1)},Fi.$metadata$=jt("Summary"),Ui.prototype.w1n=function(){var t=Hi(this).cloneNode();return t instanceof Element?t:Mt()},Ui.$metadata$=jt("ElementBuilderImplementation",[Ae]),Ji.prototype.x37=function(){return this.j3a_1},Ji.$metadata$=pn("ComposableSingletons$SummaryKt"),ws.prototype.l38=function(){return this.k3a_1},ws.$metadata$=pn("ComposableSingletons$TestNameDetectionToggleKt"),zs.prototype.l38=function(){return this.l3a_1},zs.$metadata$=pn("ComposableSingletons$TestNamesKt"),Ds.$metadata$=pn("ComposableSingletons$MainKt"),Ws.prototype.l38=function(){return this.n3a_1},Ws.prototype.x37=function(){return this.p3a_1},Ws.prototype.v3a=function(){return this.r3a_1},Ws.prototype.w3a=function(){return this.s3a_1},Ws.prototype.x3a=function(){return this.t3a_1},Ws.prototype.y3a=function(){return this.u3a_1},Ws.$metadata$=pn("ComposableSingletons$HomePageKt"),ka.$metadata$=pn("Companion"),Ya.prototype.y3c=function(){return Fe("savedBenchmarks",1,ir,(function(t){return t.y3c()}),(function(t,n){return Ca(t,n)})),this.e3b_1.n2()},Ya.prototype.a3e=function(){return this.g3b_1},Ya.prototype.d3d=function(){return Fe("currentFocusedGroup",1,ir,(function(t){return t.d3d()}),(function(t,n){return Sa(t,n)})),this.h3b_1.n2()},Ya.prototype.b3e=function(){return this.i3b_1},Ya.prototype.k3d=function(){return Fe("chartsBundle",1,ir,(function(t){return t.k3d()}),(function(t,n){return za(t,n)})),this.j3b_1.n2()},Ya.prototype.l3d=function(){return Fe("errorMsg",1,ir,(function(t){return t.l3d()}),(function(t,n){return qa(t,n)})),this.k3b_1.n2()},Ya.prototype.j3d=function(){return Fe("isEditableTitleEnabled",1,ir,(function(t){return t.j3d()}),(function(t,n){return Oa(t,n)})),this.l3b_1.n2()},Ya.prototype.x3c=function(){return Fe("shouldSelectUnsaved",1,ir,(function(t){return t.x3c()}),(function(t,n){return Pa(t,n)})),this.m3b_1.n2()},Ya.prototype.u3c=function(){return Fe("selectedBlockNameOne",1,ir,(function(t){return t.u3c()}),(function(t,n){return Ma(t,n)})),this.n3b_1.n2()},Ya.prototype.v3c=function(){return Fe("selectedBlockNameTwo",1,ir,(function(t){return t.v3c()}),(function(t,n){return Aa(t,n)})),this.o3b_1.n2()},Ya.prototype.c3e=function(){return this.p3b_1},Ya.prototype.z3c=function(){return Fe("avgOfCount",1,ir,(function(t){return t.z3c()}),(function(t,n){return Ea(t,n)})),this.q3b_1.n2()},Ya.prototype.g3d=function(){return Fe("isAutoGroupButtonVisible",1,ir,(function(t){return t.g3d()}),(function(t,n){return Ia(t,n)})),this.r3b_1.n2()},Ya.prototype.d3e=function(){return this.s3b_1},Ya.prototype.h3d=function(){return Fe("inputType",1,ir,(function(t){return t.h3d()}),(function(t,n){return Da(t,n)})),this.t3b_1.n2()},Ya.prototype.s28=function(){return Fe("unit",1,ir,(function(t){return t.s28()}),(function(t,n){return Ta(t,n)})),this.u3b_1.n2()},Ya.prototype.n3c=function(){return Fe("bestAggSummary",1,ir,(function(t){return t.n3c()}),(function(t,n){return Ba(t,n)})),this.v3b_1.n2()},Ya.prototype.t3c=function(){return Fe("worstAggSummary",1,ir,(function(t){return t.t3c()}),(function(t,n){return La(t,n)})),this.w3b_1.n2()},Ya.prototype.w3c=function(){return Fe("form",1,ir,(function(t){return t.w3c()}),(function(t,n){return Ra(t,n)})),this.x3b_1.n2()},Ya.prototype.e3e=function(t,n){var e,r=this.z3b_1;null==r||(clearTimeout(r),zt()),this.z3b_1=setTimeout((e=t,function(){return e(),zt()}),n)},Ya.prototype.f3e=function(t,n){var e=Fa(this,t.o36_1);Ra(this,t.q37(e,!1,!1,6,null)),this.a3b_1.g3e(this.w3c()),this.e3e(Ka(this,n),300)},Ya.prototype.d3c=function(t,n,e,r){return 0!=(2&e)&&(n=!0),this.f3e(t,n)},Ya.prototype.f3d=function(t){try{var n;if(this.f3b_1=t,null!=this.f3b_1){for(var e=this.y3b_1,r=Dt(),o=e.c();o.d();){var i=o.e();i.e36_1==this.f3b_1&&r.a(i)}n=r}else n=this.y3b_1;za(this,Xr(n)),Va(this),qa(this,"")}catch(t){if(!(t instanceof Error))throw t;this.s3b_1.s7(),Qe(t);var s,a=t.message;null==a?(ja(),s="Something went wrong!"):s=a,qa(this,s)}},Ya.prototype.c3d=function(t){Sa(this,t);var n=this.w3c();this.d3c(n,!1,2,null)},Ya.prototype.a3d=function(){Oa(this,!0)},Ya.prototype.b3d=function(){var t=this.w3c().q37(null,!1,!this.w3c().q36_1,3,null);this.d3c(t,!1,2,null)},Ya.prototype.e3d=function(){var t=this.w3c(),n=!this.w3c().p36_1,e=t.q37(null,n,!1,5,null);this.d3c(e,!1,2,null)},Ya.prototype.e3c=function(t){var n,e=window.prompt("Name: ");if(null==e||un(e))return zt();t:{for(var r=this.y3c().c();r.d();){var o=r.e();if(o.x38_1===e){n=o;break t}}n=null}if(null!=n)return window.alert("Bruhh.. "+e+" exists! Try something else"),zt();var i=or(this.y3c());i.ag(0,new vi(e,t.o36_1));var s=i;this.z3a_1.h3e(s),Pa(this,!1),Na(this)},Ya.prototype.i3c=function(t){var n=this.d3b_1.i3e();ln("QuickTag: HomeViewModel:onShareClicked: isAwareDataPublic "+n),n?this.e3e(Ga(t,this),500):new bootstrap.Modal(document.getElementById("shareAwareModal"),{}).show()},Ya.prototype.g3c=function(t){var n=this.w3c().q37(t.y38_1,!1,!1,6,null);this.f3e(n,!1)},Ya.prototype.h3c=function(t){window.confirm("Do you want to delete `"+t.x38_1+"` ?")&&(this.z3a_1.j3e(t),Pa(this,!0),Na(this))},Ya.prototype.f3c=function(t){if(Pa(this,t===wi()),this.x3c()){var n=this.a3b_1.w3d(),e=null==n?this.w3c():n;this.f3e(e,!1)}},Ya.prototype.l3c=function(t){Ma(this,t),Va(this)},Ya.prototype.m3c=function(t){Aa(this,t),Va(this)},Ya.prototype.j3c=function(){var t=this.n3c();Ma(this,null==t?null:t.o3c_1);var n=this.n3c();Aa(this,null==n?null:n.p3c_1),Va(this)},Ya.prototype.k3c=function(){var t=this.t3c();Ma(this,null==t?null:t.o3c_1);var n=this.t3c();Aa(this,null==n?null:n.p3c_1),Va(this)},Ya.prototype.i3d=function(t){this.i3b_1.m3(t)&&this.c3d(t)},Ya.prototype.m3d=function(){this.d3b_1.k3e(!0),this.i3c(this.w3c())},Ya.$metadata$=jt("HomeViewModel"),Xa.prototype.l3e=function(){return this.q3c_1},Xa.prototype.m3e=function(){return this.r3c_1},Xa.prototype.toString=function(){return"AggSummary(blockOneName="+this.o3c_1+", blockTwoName="+this.p3c_1+", sumOfGreen="+this.q3c_1+", sumOfRed="+this.r3c_1+")"},Xa.prototype.hashCode=function(){var t=Ot(this.o3c_1);return t=X(t,31)+Ot(this.p3c_1)|0,t=X(t,31)+this.q3c_1|0,X(t,31)+this.r3c_1|0},Xa.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof Xa))return!1;var n=t instanceof Xa?t:Mt();return this.o3c_1===n.o3c_1&&this.p3c_1===n.p3c_1&&this.q3c_1===n.q3c_1&&this.r3c_1===n.r3c_1},Xa.$metadata$=jt("AggSummary"),Za.$metadata$=sr("BenchmarkRepo"),Qa.$metadata$=pn("Companion"),nu.prototype.o3d=function(){var t=window.localStorage;tu();var n,e=t.getItem("savedBenchmarks");if(null==e)n=new $i(Xe());else{var r;ln("JSON is '"+e+"'");try{var o,i=$u().p3e_1,s=i.p2d(),a=cr(s,lr(ar($i),ur([]),!1));o=Ln(a,hr)?a:Mt(),r=i.o2d(o,e)}catch(t){var u;if(!(t instanceof pr))throw t;Qe(t),u=Xe(),this.h3e(u),r=new $i(Xe())}n=r}return Xt(n.d39_1)},nu.prototype.h3e=function(t){var n,e=$u().p3e_1,r=new $i(t),o=e.p2d(),i=cr(o,lr(ar($i),ur([]),!1));n=Ln(i,hr)?i:Mt();var s=e.n2d(n,r),a=window.localStorage;tu(),a.setItem("savedBenchmarks",s)},nu.prototype.j3e=function(t){var n,e=or(this.o3d());fr(e,(n=t,function(t){return t.x38_1===n.x38_1}));var r=e;this.h3e(r)},nu.$metadata$=jt("BenchmarkRepoImpl",[Za]),eu.$metadata$=sr("FormRepo"),ru.$metadata$=pn("Companion"),iu.prototype.g3e=function(t){var n=window.localStorage;ou(),n.setItem("auto_form_input",t.o36_1),ou(),n.setItem("is_test_name_detection_enabled",t.p36_1.toString()),ou(),n.setItem("is_auto_group_enabled",t.q36_1.toString())},iu.prototype.w3d=function(){var t=window.localStorage;ou();var n=t.getItem("auto_form_input");if(null==n)return null;var e=n;ou();var r=_r(t.getItem("is_test_name_detection_enabled"));return ou(),new uo(e,r,_r(t.getItem("is_auto_group_enabled")))},iu.$metadata$=jt("FormRepoImpl",[eu]),su.$metadata$=sr("GoogleFormRepo"),au.$metadata$=pn("Companion"),lu.prototype.u3d=function(t,n,e){var r="entry.1218983684="+t+"&entry.1886726465="+n+"&entry.1340578003="+e,o=new XMLHttpRequest;uu(),o.open("POST","https://docs.google.com/forms/d/e/1FAIpQLSfYy0ZnzlSot_3SpJ7GVK9umEpf3Dqzz1pQ7jyLUVd7jO2qCQ/formResponse",!1),o.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),o.send(r)},lu.$metadata$=jt("GoogleFormRepoImpl",[su]),cu.$metadata$=sr("GoogleSheetRepo"),hu.$metadata$=pn("Companion"),fu.prototype.v3d=function(t,n,e){try{pu();var r="https://docs.google.com/spreadsheets/d/1U1bKMHN0hlpZ1CVke3TB3-Xc20ZJwZxlMWYXpMcII-k/gviz/tq?tqx=out:csv&sheet=Sheet1&tq=SELECT COUNT(C) WHERE B = '"+t+"'",o=new XMLHttpRequest;o.open("GET",r),o.onreadystatechange=(s=o,a=n,u=e,l=t,function(t){if(ln("QuickTag: GoogleSheetRepoImpl:getChunkCount: readyState: "+s.readyState+", status = "+s.status),4===s.readyState)if(200===s.status){var n=s.responseText,e=Bt(n,["\n"],!1,0,6,null);if(2===e.f()){var r=e.g(1),o=dr(rn(r,'"',"",!1,4,null));a(o)}else u("No chunk exist for shareKey '"+l+"'")}else u("Share request failed");return zt()}),o.send()}catch(t){if(!(t instanceof Error))throw t;var i=t.message;e(null==i?"Something wrong":i)}var s,a,u,l},fu.prototype.z3d=function(t,n,e){try{pu();var r="https://docs.google.com/spreadsheets/d/1U1bKMHN0hlpZ1CVke3TB3-Xc20ZJwZxlMWYXpMcII-k/gviz/tq?tqx=out:csv&sheet=Sheet1&tq=SELECT C,D WHERE B = '"+t+"' ORDER BY C",o=new XMLHttpRequest;o.open("GET",r),o.onreadystatechange=(s=o,a=n,u=e,l=t,function(t){if(ln("QuickTag: GoogleSheetRepoImpl:getChunkCount: readyState: "+s.readyState+", status = "+s.status),4===s.readyState)if(200===s.status){var n=s.responseText,e=vr(10),r=yr(n,e,0,!1,6,null);if(-1!==r){var o,i=r+1|0,c=n.length-1|0,h=n.substring(i,c);o=nn('"\\n"(?:\\d+)","').ea(h,"").substring(5),a(o)}else u("Invalid shareKey '"+l+"'")}else u("Share request failed");return zt()}),o.send()}catch(t){if(!(t instanceof Error))throw t;var i=t.message;e(null==i?"Something wrong":i)}var s,a,u,l},fu.$metadata$=jt("GoogleSheetRepoImpl",[cu]),_u.$metadata$=sr("UserRepo"),du.$metadata$=pn("Companion"),yu.prototype.i3e=function(){var t=window.localStorage;vu();var n=t.getItem("is_aware_share_is_public"),e=null==n?null:_r(n);return null!=e&&e},yu.prototype.k3e=function(t){var n=window.localStorage;vu(),n.setItem("is_aware_share_is_public",t.toString())},yu.$metadata$=jt("UserRepoImpl",[_u]),mu.$metadata$=pn("DefaultValues"),bu.$metadata$=pn("JsonUtils"),wu.prototype.t3d=function(t){var n=gr((new Date).getMilliseconds()),e=br(),r=0;if(r after: '"+V+"'");var G,Y=""+(V-J).toFixed(2),X=on(Y),Z=""+((J-V)/J*100).toFixed(2),Q=on(Z),tt=Math.abs(Q),nt=X>0?"worse":"better",et=X>0?"+":"",rt=X>0?"❌":"✅",ot=i.g(1),it=""+V.toFixed(2),st=on(it),at=""+J.toFixed(2);G=on(at),D.a(new Ni(t,rt,F,ot,tt,nt,X,et,st,G))}while(R>>0,r=arguments[1],o=r>>0,i=o<0?Math.max(e+o,0):Math.min(o,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-(o(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===(r="function"==typeof(e=function(t){"use strict";var n,e,r,o,i,s,a,u,l,c,h,p,f,_,d,v,y,m,g,b,$,w,x,k,j,C,S,z,q,O,P,M,A,E,I,D,T,B,L,R,N,F,H,U,V,W,K,J,G,Y,X,Z,Q,tt,nt,et,rt,ot,it,st,at,ut,lt,ct,ht,pt,ft,_t,dt,vt,yt,mt,gt,bt,$t,wt,xt,kt,jt,Ct,St,zt,qt,Ot,Pt,Mt,At,Et,It=Math.imul,Dt=Math.clz32,Tt=ArrayBuffer.isView;function Bt(t){return t===er()?this:t.f8(this,Qe)}function Lt(t){return Uc(this.l2(),t)?Nh(this,Ze)?this:Xc():null}function Rt(t,n){return n(t,this)}function Nt(t){return Uc(this.l2(),t)?er():this}function Ft(t,n){if(null==n){var e=0,r=t.length-1|0;if(e<=r)do{var o=e;if(e=e+1|0,null==t[o])return o}while(e<=r)}else{var i=0,s=t.length-1|0;if(i<=s)do{var a=i;if(i=i+1|0,Uc(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 r=e;if(e=e+-1|0,null==t[r])return r}while(0<=e)}else{var o=t.length-1|0;if(0<=o)do{var i=o;if(o=o+-1|0,Uc(n,t[i]))return i}while(0<=o)}return-1}function Ut(t,n,e,r,o,i,s){return function(t,n,e,r,o,i,s,a){n.b(r);var u=0,l=t,c=0,h=l.length;t:for(;c1&&n.b(e),!(i<0||u<=i))break t;Rr(n,p,a)}return i>=0&&u>i&&n.b(s),n.b(o),n}(t,ul(),n,e,r,o,i,s).toString()}function Vt(t,n,e,r,o,i,s,a,u){return 0!=(1&a)&&(n=", "),0!=(2&a)&&(e=""),0!=(4&a)&&(r=""),0!=(8&a)&&(o=-1),0!=(16&a)&&(i="..."),0!=(32&a)&&(s=null),Ut(t,n,e,r,o,i,s)}function Wt(t){return t.length-1|0}function Kt(t,n){for(var e=t,r=0,o=e.length;r=0}function Gt(t,n){return function(t,n){var e=0,r=t.length-1|0;if(e<=r)do{var o=e;if(e=e+1|0,n===t[o])return o}while(e<=r);return-1}(t,n)>=0}function Yt(t,n){return function(t,n){var e=0,r=t.length-1|0;if(e<=r)do{var o=e;if(e=e+1|0,n===t[o])return o}while(e<=r);return-1}(t,n)>=0}function Xt(t,n){return function(t,n){var e=0,r=t.length-1|0;if(e<=r)do{var o=e;if(e=e+1|0,n===t[o])return o}while(e<=r);return-1}(t,n)>=0}function Zt(t){if(Nh(t,dc)){var n;switch(t.f()){case 0:n=Yn();break;case 1:n=Xs(Nh(t,sc)?t.g(0):t.c().e());break;default:n=Qt(t)}return n}return Zn(sn(t))}function Qt(t){return ga(t)}function tn(t){if(t.h())throw Wp("List is empty.");return t.g(0)}function nn(t,n){return Nh(t,dc)?t.i(n):function(t,n){if(Nh(t,sc))return t.j(n);for(var e=0,r=t.c();r.d();){var o=r.e();if(ta(e),Uc(n,o))return e;e=e+1|0}return-1}(t,n)>=0}function en(t,n,e,r,o,i,s,a,u){return 0!=(1&a)&&(n=", "),0!=(2&a)&&(e=""),0!=(4&a)&&(r=""),0!=(8&a)&&(o=-1),0!=(16&a)&&(i="..."),0!=(32&a)&&(s=null),function(t,n,e,r,o,i,s){return an(t,ul(),n,e,r,o,i,s).toString()}(t,n,e,r,o,i,s)}function rn(t){return un(t,Ta(se(t,12)))}function on(t){if(Nh(t,dc)){var n;switch(t.f()){case 0:n=De();break;case 1:n=Ys(Nh(t,sc)?t.g(0):t.c().e());break;default:n=un(t,eu(t.f()))}return n}return function(t){switch(t.f()){case 0:return De();case 1:return Ys(t.c().e());default:return t}}(un(t,tu()))}function sn(t){return Nh(t,dc)?Qt(t):un(t,ya())}function an(t,n,e,r,o,i,s,a){n.b(r);var u=0,l=t.c();t:for(;l.d();){var c=l.e();if((u=u+1|0)>1&&n.b(e),!(i<0||u<=i))break t;Rr(n,c,a)}return i>=0&&u>i&&n.b(s),n.b(o),n}function un(t,n){for(var e=t.c();e.d();){var r=e.e();n.a(r)}return n}function ln(t){if(Nh(t,sc))return function(t){var n;switch(t.f()){case 0:throw Wp("List is empty.");case 1:n=t.g(0);break;default:throw Dp("List has more than one element.")}return n}(t);var n=t.c();if(!n.d())throw Wp("Collection is empty.");var e=n.e();if(n.d())throw Dp("Collection has more than one element.");return e}function cn(t){this.s_1=t}function hn(t){this.u_1=t}function pn(t){var n=nc(t).toUpperCase();if(n.length>1){var e;if(Uc(new oc(t),new oc(329)))e=n;else{var r=Ec(n,0),o=n.substring(1).toLowerCase();e=nc(r)+o}return e}return nc(function(t){return function(t){var n=tc(t);return 452<=n&&n<=460||497<=n&&n<=499?Ph(It(3,(n+1|0)/3|0)):4304<=n&&n<=4346||4349<=n&&n<=4351?t:cl(t)}(t)}(t))}function fn(t,n){return n<=Fs().x_1?jr().w_1:Ah(t,n-1|0)}function _n(t,n,e){if(n.d1(e)>0)throw Dp("Cannot coerce value to an empty range: maximum "+Hc(e)+" is less than minimum "+Hc(n)+".");return t.d1(n)<0?n:t.d1(e)>0?e:t}function dn(t,n){return Mr().e1(t,n,-1)}function vn(t,n){return t>n?n:t}function yn(t,n){return t=0))throw Dp(Hc("Requested element count "+n+" is less than zero."));return 0===n?Ee():Nh(t,Oe)?t.i1(n):new Me(t,n)}function bn(t){return Zn(function(t){return function(t,n){for(var e=t.c();e.d();){var r=e.e();n.a(r)}return n}(t,ya())}(t))}function $n(t){this.j1_1=t}function wn(t,n){if(!(n>=0))throw Dp(Hc("Requested character count "+n+" is less than zero."));return function(t,n){if(!(n>=0))throw Dp(Hc("Requested character count "+n+" is less than zero."));var e=vn(n,t.length);return t.substring(0,e)}(t,yn(t.length-n|0,0))}function xn(t,n){if(!(n>=0))throw Dp(Hc("Requested character count "+n+" is less than zero."));var e=vn(n,t.length);return t.substring(e)}function kn(t){return Hc(t)}function jn(){Kc(this,jn)}function Cn(){}function Sn(){this.p1_1=Pn(),this.q1_1=null}function zn(){if(i)return Bs();i=!0,n=new qn("Ready",0),e=new qn("NotReady",1),r=new qn("Done",2),o=new qn("Failed",3)}function qn(t,n){mc.call(this,t,n)}function On(){return zn(),n}function Pn(){return zn(),e}function Mn(){return zn(),o}function An(t){this.z1_1=t,this.y1_1=0}function En(t,n){this.c2_1=t,An.call(this,t),Dn().d2(n,this.c2_1.f()),this.y1_1=n}function In(){s=this}function Dn(){return null==s&&new In,s}function Tn(){Dn(),Cn.call(this)}function Bn(t){this.k2_1=t}function Ln(t){this.m2_1=t}function Rn(t,n){return n===t?"(this Map)":gc(n)}function Nn(t,n){var e;t:{for(var r=t.v().c();r.d();){var o=r.e();if(Uc(o.l2(),n)){e=o;break t}}e=null}return e}function Fn(){a=this}function Hn(){return null==a&&new Fn,a}function Un(t){this.r2_1=t,Gn.call(this)}function Vn(t){this.x2_1=t,Cn.call(this)}function Wn(){Hn(),this.t2_1=null,this.u2_1=null}function Kn(){u=this}function Jn(){return null==u&&new Kn,u}function Gn(){Jn(),Cn.call(this)}function Yn(){return ne()}function Xn(t){return 0===t.length?ya():ga(new ee(t,!0))}function Zn(t){switch(t.f()){case 0:return Yn();case 1:return Xs(t.g(0));default:return t}}function Qn(t){return t.f()-1|0}function te(){l=this,this.g3_1=new eh(-1478467534,-1720727600)}function ne(){return null==l&&new te,l}function ee(t,n){this.k3_1=t,this.l3_1=n}function re(){c=this}function oe(){return null==c&&new re,c}function ie(t,n){this.o3_1=t,this.p3_1=n}function se(t,n){return Nh(t,dc)?t.f():n}function ae(t){this.r3_1=t}function ue(t){this.s3_1=t}function le(t){this.t3_1=t,this.u3_1=0}function ce(){}function he(){var t=(null==h&&new pe,h);return Nh(t,fc)?t:Xc()}function pe(){h=this,this.g4_1=new eh(-888910638,1920087921)}function fe(t,n){return function(t,n){for(var e=n.c();e.d();){var r=e.e(),o=r.l4(),i=r.m4();t.n(o,i)}}(n,t),n}function _e(t,n){for(var e=n,r=0,o=e.length;r=0))throw Dp(Hc("count must be non-negative, but was "+this.p5_1+"."))}function Ae(){p=this}function Ee(){return null==p&&new Ae,p}function Ie(t){this.q5_1=t}function De(){return Be()}function Te(){f=this,this.r5_1=new eh(1993859828,793161749)}function Be(){return null==f&&new Te,f}function Le(t,n){if(!(t>0&&n>0))throw Dp(Hc(t!==n?"Both size "+t+" and step "+n+" must be greater than zero.":"size "+t+" must be greater than zero."))}function Re(t){return function(t,n){var e;return e=$c(Array(t),null),Fe.call(n,e,0),n}(t,Object.create(Fe.prototype))}function Ne(t){this.w5_1=t,Sn.call(this),this.u5_1=t.a6_1,this.v5_1=t.z5_1}function Fe(t,n){if(Tn.call(this),this.x5_1=t,!(n>=0))throw Dp(Hc("ring buffer filled size should not be negative but it is "+n));if(!(n<=this.x5_1.length))throw Dp(Hc("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 He(t,n,e,r,o,i){this.p6_1=t,this.q6_1=n,this.r6_1=e,this.s6_1=r,this.t6_1=o,xp.call(this,i)}function Ue(){var t=(null==_&&new Ve,_);return Nh(t,Gs)?t:Xc()}function Ve(){_=this}function We(t){this.w7_1=t}function Ke(){}function Je(){d=this}function Ge(){return null==d&&new Je,d}function Ye(){}function Xe(){}function Ze(){}function Qe(t,n){var e,r=t.e8(n.l2());if(r===er())e=n;else{var o,i=r.z7(Ge());if(null==i)o=new sr(r,n);else{var s=r.e8(Ge());o=s===er()?new sr(n,i):new sr(new sr(s,n),i)}e=o}return e}function tr(){}function nr(){v=this,this.h8_1=new eh(0,0)}function er(){return null==v&&new nr,v}function rr(t){for(var n=t,e=2;;){var r=n.i8_1,o=r instanceof sr?r:null;if(null==o)return e;n=o,e=e+1|0}}function or(t,n){return Uc(t.z7(n.l2()),n)}function ir(t,n){return 0===Dc(t)?Hc(n):t+", "+n}function sr(t,n){this.i8_1=t,this.j8_1=n}function ar(t,n){this.a8_1=n;var e;e=t instanceof ar?t.b8_1:t,this.b8_1=e}function ur(t){this.k8_1=t}function lr(){return cr(),y}function cr(){if(b)return Bs();b=!0,y=new hr("COROUTINE_SUSPENDED",0),m=new hr("UNDECIDED",1),g=new hr("RESUMED",2)}function hr(t,n){mc.call(this,t,n)}function pr(){return cr(),m}function fr(){return cr(),g}function _r(t,n,e){var r;if(e>0)r=t>=n?n:n-dr(n,t,e)|0;else{if(!(e<0))throw Dp("Step is zero.");r=t<=n?n:n+dr(t,n,0|-e)|0}return r}function dr(t,n,e){return vr(vr(t,e)-vr(n,e)|0,e)}function vr(t,n){var e=t%n|0;return e>=0?e:e+n|0}function yr(){$=this,gr.call(this),this.l8_1=(Y||(Y=!0,Math.pow(2,-26),Math.pow(2,-53)),br(Math.random()*Math.pow(2,32)|0))}function mr(){return null==$&&new yr,$}function gr(){mr()}function br(t){return function(t,n,e){return xr.call(e,t,n,0,0,~t,t<<10^(n>>>4|0)),e}(t,t>>31,Object.create(xr.prototype))}function $r(t,n){if(!(n>t))throw Dp(Hc(function(t,n){return"Random range is empty: ["+Hc(t)+", "+Hc(n)+")."}(t,n)))}function wr(){w=this,this.s8_1=new eh(0,0)}function xr(t,n,e,r,o,i){if(null==w&&new wr,gr.call(this),this.t8_1=t,this.u8_1=n,this.v8_1=e,this.w8_1=r,this.x8_1=o,this.y8_1=i,0==(this.t8_1|this.u8_1|this.v8_1|this.w8_1|this.x8_1))throw Dp(Hc("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 kr(){x=this,this.w_1=new Cr(1,0)}function jr(){return null==x&&new kr,x}function Cr(t,n){jr(),Ar.call(this,t,n,1)}function Sr(){k=this,this.c9_1=new zr(1,0)}function zr(t,n){null==k&&new Sr,Ir.call(this,t,n,1)}function qr(t,n,e){ye.call(this),this.k9_1=e,this.l9_1=n,this.m9_1=this.k9_1>0?t<=n:t>=n,this.n9_1=this.m9_1?t:this.l9_1}function Or(t,n,e){me.call(this),this.o9_1=e;var r;r=tc(n),this.p9_1=r,this.q9_1=this.o9_1>0?Zl(t,n)<=0:Zl(t,n)>=0;var o;o=this.q9_1?tc(t):this.p9_1,this.r9_1=o}function Pr(){j=this}function Mr(){return null==j&&new Pr,j}function Ar(t,n,e){if(Mr(),0===e)throw Dp("Step must be non-zero.");if(e===Fs().x_1)throw Dp("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.f1_1=t,this.g1_1=_r(t,n,e),this.h1_1=e}function Er(){C=this}function Ir(t,n,e){if(null==C&&new Er,0===e)throw Dp("Step must be non-zero.");if(e===Fs().x_1)throw Dp("Step must be greater than Int.MIN_VALUE to avoid overflow on negation.");this.h9_1=t;var r,o=tc(t);r=tc(n),this.i9_1=Ph(_r(o,r,e)),this.j9_1=e}function Dr(){}function Tr(){}function Br(){}function Lr(){}function Rr(t,n,e){null!=e?t.b(e(n)):null==n||Zh(n)?t.b(n):n instanceof oc?t.s9(n.l1_1):t.b(gc(n))}function Nr(t,n,e){if(Uc(new oc(t),new oc(n)))return!0;if(!e)return!1;var r=cl(t),o=cl(n);return!!Uc(new oc(r),new oc(o))||Uc(new oc(Ec(nc(r).toLowerCase(),0)),new oc(Ec(nc(o).toLowerCase(),0)))}function Fr(t){var n;t:{var e=0,r=Dc(t)-1|0;if(e<=r)do{var o=e;if(e=e+1|0,!hl(Ec(t,o))){n=o;break t}}while(e<=r);n=-1}var i=n;return-1===i?t.length:i}function Hr(t){return t}function Ur(t){return function(t,n){pl(n);var e,r,o,i=t.length;if(0===i)return null;var s=Ec(t,0);if(Zl(s,48)<0){if(1===i)return null;if(e=1,Uc(new oc(s),new oc(45)))r=!0,nh(),o=new eh(0,-2147483648);else{if(!Uc(new oc(s),new oc(43)))return null;r=!1,nh(),o=new eh(-1,2147483647).t9()}}else e=0,r=!1,nh(),o=new eh(-1,2147483647).t9();nh();var a=new eh(-1,2147483647).t9().u9(new eh(36,0)),u=a,l=new eh(0,0),c=e;if(c0,u=ma(a?vn(r,10):10);t:do{var l;if(l=Hc(Tc(t,o,i)),u.a(l),o=i+n.length|0,a&&u.f()===(r-1|0))break t;i=Qr(t,n,o,e)}while(-1!==i);return s=Hc(Tc(t,o,Dc(t))),u.a(s),u}(t,o,e,r)}for(var i=function(t){return new $n(t)}(uo(t,n,0,e,r,2)),s=ma(se(i,10)),a=i.c();a.d();){var u;u=so(t,a.e()),s.a(u)}return s}function Gr(t,n,e,r,o,i){return 0!=(2&o)&&(e=eo(t)),0!=(4&o)&&(r=!1),function(t,n,e,r){return r||"string"!=typeof t?lo(t,n,e,0,r,!0):t.lastIndexOf(n,e)}(t,n,e,r)}function Yr(t,n,e){return"string"==typeof n?to(t,n,0,e,2)>=0:co(t,n,0,Dc(t),e,!1,16)>=0}function Xr(t,n,e,r){var o,i;if(r||"string"!=typeof t)o=function(t,n,e,r){if(!r&&1===n.length&&"string"==typeof t){var o=t,i=nc(function(t){var n;switch(t.length){case 0:throw Wp("Array is empty.");case 1:n=t[0];break;default:throw Dp("Array has more than one element.")}return n}(n));return o.indexOf(i,e)}var s=yn(e,0),a=eo(t);if(s<=a)do{var u=s;s=s+1|0;var l,c=Ec(t,u);t:{for(var h=n,p=0,f=h.length;p0&&Nr(Ec(t,0),n,e)}(t,n,e)}function io(t,n,e,r,o){return 0!=(2&r)&&(e=!1),function(t,n,e){return Zr(t,n,0,e,2)>=0}(t,n,e)}function so(t,n){return Hc(Tc(t,n.z8(),n.a9()+1|0))}function ao(t,n,e,r,o){return ho(o),new _o(t,e,o,(i=fp(n),s=r,function(t,n){var e=function(t,n,e,r,o){if(!r&&1===n.f()){var i,s=ln(n);return(i=o?Gr(t,s,e,!1,4):to(t,s,e,!1,4))<0?null:bi(i,s)}var a=o?dn(vn(e,eo(t)),0):Ah(yn(e,0),Dc(t));if("string"==typeof t){var u=a.f1_1,l=a.g1_1,c=a.h1_1;if(c>0&&u<=l||c<0&&l<=u)do{var h,p=u;u=u+c|0;t:{for(var f=n.c();f.d();){var _=f.e();if(Dl(_,0,t,p,_.length,r)){h=_;break t}}h=null}if(null!=h)return bi(p,h)}while(p!==l)}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 b=n.c();b.d();){var $=b.e();if(vo($,0,t,g,$.length,r)){m=$;break t}}m=null}if(null!=m)return bi(g,m)}while(g!==v)}return null}(t,i,n,s,!1);return null==e?null:bi(e.j4_1,e.k4_1.length)}));var i,s}function uo(t,n,e,r,o,i,s){return 0!=(2&i)&&(e=0),0!=(4&i)&&(r=!1),0!=(8&i)&&(o=0),ao(t,n,e,r,o)}function lo(t,n,e,r,o,i){var s=i?dn(vn(e,eo(t)),yn(r,0)):Ah(yn(e,0),vn(r,Dc(t)));if("string"==typeof t&&"string"==typeof n){var a=s.f1_1,u=s.g1_1,l=s.h1_1;if(l>0&&a<=u||l<0&&u<=a)do{var c=a;if(a=a+l|0,Dl(n,0,t,c,Dc(n),o))return c}while(c!==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,vo(n,0,t,_,Dc(n),o))return _}while(_!==p)}return-1}function co(t,n,e,r,o,i,s,a){return 0!=(16&s)&&(i=!1),lo(t,n,e,r,o,i)}function ho(t){if(!(t>=0))throw Dp(Hc("Limit must be non-negative, but was "+t))}function po(t){if(t.ka_1<0)t.ia_1=0,t.la_1=null;else{var n;if(t.na_1.qa_1>0){var e=t;e.ma_1=e.ma_1+1|0,n=e.ma_1>=t.na_1.qa_1}else n=!1;if(n||t.ka_1>Dc(t.na_1.oa_1))t.la_1=Ah(t.ja_1,eo(t.na_1.oa_1)),t.ka_1=-1;else{var r=t.na_1.ra_1(t.na_1.oa_1,t.ka_1);if(null==r)t.la_1=Ah(t.ja_1,eo(t.na_1.oa_1)),t.ka_1=-1;else{var o=r,i=o.l4(),s=o.m4();t.la_1=fn(t.ja_1,i),t.ja_1=i+s|0,t.ka_1=t.ja_1+(0===s?1:0)|0}}t.ia_1=1}}function fo(t){this.na_1=t,this.ia_1=-1,this.ja_1=function(t,n,e){if(n>e)throw Dp("Cannot coerce value to an empty range: maximum "+e+" is less than minimum "+n+".");return te?e:t}(t.pa_1,0,Dc(t.oa_1)),this.ka_1=this.ja_1,this.la_1=null,this.ma_1=0}function _o(t,n,e,r){this.oa_1=t,this.pa_1=n,this.qa_1=e,this.ra_1=r}function vo(t,n,e,r,o,i){if(r<0||n<0||n>(Dc(t)-o|0)||r>(Dc(e)-o|0))return!1;var s=0;if(s=0)return t;throw Dp("Summing infinite durations of different signs yields an undefined result.")}if(Oo(n))return n;var e,r,o;if((1&t.xa())==(1&n.xa())){var i=$o(t).w9($o(n));e=wo(t)?(r=i,o=new eh(387905,-1073741824),r.d1(new eh(-387905,1073741823))<=0&&o.d1(r)<=0?Jo(r):Fo(Wo(r))):Vo(i)}else e=xo(t)?zo(0,$o(t),$o(n)):zo(0,$o(n),$o(t));return e}function zo(t,n,e){var r,o=Wo(e),i=n.w9(o),s=new eh(1108857478,-1074);if(i.d1(new eh(-1108857478,1073))<=0&&s.d1(i)<=0){var a=e.x9(Ko(o));r=Jo(Ko(i).w9(a))}else r=Fo(_n(i,new eh(1,-1073741824),new eh(-1,1073741823)));return r}function qo(t){return t.d1(new eh(0,0))<0}function Oo(t){return!!t.equals(jo().za_1)||t.equals(jo().ab_1)}function Po(t){return qo(t)?Co(t):t}function Mo(t,n){var e=t.cb(n);if(e.d1(new eh(0,0))<0||0==(1&e.xa()))return t.d1(n);var r=(1&t.xa())-(1&n.xa())|0;return qo(t)?0|-r:r}function Ao(t){return Oo(t)?0:function(t){return Do(t,Jl())}(t).eb(new eh(60,0)).xa()}function Eo(t){return Oo(t)?0:function(t){return Do(t,Kl())}(t).eb(new eh(60,0)).xa()}function Io(t){return Oo(t)?0:xo(t)?Ko($o(t).eb(new eh(1e3,0))).xa():$o(t).eb(new eh(1e9,0)).xa()}function Do(t,n){var e,r=t;return r.equals(jo().za_1)?(nh(),e=new eh(-1,2147483647)):r.equals(jo().ab_1)?(nh(),e=new eh(0,-2147483648)):e=Hl($o(t),function(t){return wo(t)?Vl():Wl()}(t),n),e}function To(t){return Do(t,Gl())}function Bo(t){var n,e=t;if(e.equals(new eh(0,0)))n="0s";else if(e.equals(jo().za_1))n="Infinity";else if(e.equals(jo().ab_1))n="-Infinity";else{var r=qo(t),o=ul();r&&o.s9(45);var i=Po(t),s=function(t){return Do(t,Yl())}(i),a=function(t){return Oo(t)?0:To(t).eb(new eh(24,0)).xa()}(i),u=Ao(i),l=Eo(i),c=Io(i),h=!s.equals(new eh(0,0)),p=!(0===a),f=!(0===u),_=0!==l||!(0===c),d=0;if(h&&(o.fb(s).s9(100),d=d+1|0),p||h&&(f||_)){var v=d;d=v+1|0,v>0&&o.s9(32),o.fb(a).s9(104)}if(f||_&&(p||h)){var y=d;d=y+1|0,y>0&&o.s9(32),o.fb(u).s9(109)}if(_){var m=d;d=m+1|0,m>0&&o.s9(32),0!==l||h||p||f?Lo(o,0,l,c,9,"s",!1):c>=1e6?Lo(o,0,c/1e6|0,c%1e6|0,6,"ms",!1):c>=1e3?Lo(o,0,c/1e3|0,c%1e3|0,3,"us",!1):o.fb(c).gb("ns")}r&&d>1&&(o.hb(1,40).s9(41),Bs()),n=o.toString()}return n}function Lo(t,n,e,r,o,i,s){if(t.fb(e),0!==r){t.s9(46);var a,u=ro(r.toString(),o,48);t:{var l=Dc(u)-1|0;if(0<=l)do{var c=l;if(l=l+-1|0,!Uc(new oc(Ec(u,c)),new oc(48))){a=c;break t}}while(0<=l);a=-1}var h=a+1|0;!s&&h<3?t.ib(u,0,h):t.ib(u,0,It((h+2|0)/3|0,3))}t.gb(i)}function Ro(t){jo(),this.db_1=t}function No(t,n){var e=Fl(t,n,Vl());if(du(e))throw Dp(Hc("Duration value cannot be NaN."));var r=_u(e),o=new eh(387905,-1073741824);return r.d1(new eh(-387905,1073741823))<=0&&o.d1(r)<=0?Jo(r):Vo(_u(Fl(t,n,Wl())))}function Fo(t){return bo(t.lb(1).w9(new eh(1,0)))}function Ho(t,n){var e=Ul(new eh(-387905,1073741823),Vl(),n);return e.t9().d1(t)<=0&&t.d1(e)<=0?Jo(Ul(t,n,Vl())):Fo(_n(Hl(t,n,Wl()),new eh(1,-1073741824),new eh(-1,1073741823)))}function Uo(t,n){var e=t.length;if(0===e)throw Dp("The string is empty");var r=0,o=jo().ya_1,i="Infinity",s=Ec(t,r);(Uc(new oc(s),new oc(43))||Uc(new oc(s),new oc(45)))&&(r=r+1|0);var a=r>0,u=!!a&&oo(t,45,!1,2);if(e<=r)throw Dp("No components");if(Uc(new oc(Ec(t,r)),new oc(80))){if((r=r+1|0)===e)throw Ep();for(var l=!1,c=null;r=0&&y<=eo(t)))throw Dp("Missing unit for value "+v);r=r+1|0;var m=Yo(Ec(t,y),l);if(null!=c&&c.x1(m)<=0)throw Dp("Unexpected order of duration components");c=m;var g=Zr(v,46,0,!1,6);m.equals(Kl())&&g>0?(o=So(o,Ho(Go(v.substring(0,g)),m)),o=So(o,No(dl(v.substring(g)),m))):o=So(o,Ho(Go(v),m))}}else{if(n)throw Ep();var b=e-r|0,$=i.length;if(Dl(t,r,i,0,Math.max(b,$),!0))o=jo().za_1;else{var w=null,x=!1,k=!a;if(a&&Uc(new oc(Ec(t,r)),new oc(40))&&Uc(new oc(function(t){if(0===Dc(t))throw Wp("Char sequence is empty.");return Ec(t,eo(t))}(t)),new oc(41))&&(k=!0,(r=r+1|0)==(e=e-1|0)))throw Dp("No components");for(;r0){if(o=So(o,Ho(vl(P.substring(0,L)),B)),o=So(o,No(dl(P.substring(L)),B)),r0&&io("+-",Ec(t,0),!1,2)&&(o=o+1|0),(r-o|0)>16){var i;t:{var s=Ah(o,eo(t));if(Nh(s,dc)&&s.h())i=!0;else{var a=s.f1_1,u=s.g1_1;if(a<=u)do{var l=a;a=a+1|0;var c=Ec(t,l);if(!(48<=c&&c<=57)){i=!1;break t}}while(l!==u);i=!0}}n=i}else n=!1;return n?(Uc(new oc(Ec(t,0)),new oc(45))?(nh(),e=new eh(0,-2147483648)):(nh(),e=new eh(-1,2147483647)),e):El(t,"+",!1,2)?vl(xn(t,1)):vl(t)}function Yo(t,n){var e;if(n){var r,o=t;if(Uc(new oc(o),new oc(72)))r=Gl();else if(Uc(new oc(o),new oc(77)))r=Jl();else{if(!Uc(new oc(o),new oc(83)))throw Dp("Invalid duration ISO time unit: "+new oc(t));r=Kl()}e=r}else{if(!Uc(new oc(t),new oc(68)))throw Dp("Invalid or unsupported duration ISO non-time unit: "+new oc(t));e=Yl()}return e}function Xo(t){var n;switch(t){case"ns":n=Vl();break;case"us":Rl(),n=it;break;case"ms":n=Wl();break;case"s":n=Kl();break;case"m":n=Jl();break;case"h":n=Gl();break;case"d":n=Yl();break;default:throw Dp("Unknown duration unit short name: "+t)}return n}function Zo(){return ei(),z}function Qo(){}function ti(t){this.nb_1=t}function ni(t,n){Qo.call(this),this.ob_1=function(t,n){if("function"==typeof t)return t.$arity===n;if("object"==typeof t&&gf("$metadata$",t.constructor)){var e,r=t.constructor.$metadata$,o=null==r?null:r.suspendArity;if(null!=o){var i=!1,s=wc(o);t:for(;s.d();)if(n===s.e()){i=!0;break t}return i}return null!=(e=null)&&e}return!1}(t,2)?t:Xc(),this.pb_1=n,this.qb_1=Nh(this,Ke)?this:Xc(),this.rb_1=Zo()}function ei(){var t;q||(q=!0,fi(),t=lr(),z=t)}function ri(){}function oi(t,n){mc.call(this,t,n)}function ii(t){this.vb_1=t,this.wb_1=ai()}function si(){M=this}function ai(){return null==M&&new si,M}function ui(t){return t}function li(t){return t}function ci(t){return t instanceof _i}function hi(t){return t instanceof _i?t.yb_1:null}function pi(){A=this}function fi(){return null==A&&new pi,A}function _i(t){this.yb_1=t}function di(t){fi(),this.bc_1=t}function vi(t){return new _i(t)}function yi(t){if(t instanceof _i)throw t.yb_1}function mi(t){Mp(t,this),Kc(this,mi)}function gi(t,n){this.j4_1=t,this.k4_1=n}function bi(t,n){return new gi(t,n)}function $i(t,n,e){this.ec_1=t,this.fc_1=n,this.gc_1=e}function wi(t){return t}function xi(t){return t}function ki(){E=this,this.hc_1=0,this.ic_1=-1,this.jc_1=1,this.kc_1=8}function ji(){return null==E&&new ki,E}function Ci(t,n){return Lc(255&t,255&n)}function Si(t){return(255&t).toString()}function zi(t){ji(),this.lc_1=t}function qi(t){return t}function Oi(t){return t}function Pi(t){return t.length}function Mi(t){this.nc_1=t,this.oc_1=0}function Ai(t,n){return(Gh(new zi(n))?new zi(n):Xc())instanceof zi&&Xt(t,n)}function Ei(t,n){var e;t:{var r=Nh(n,dc)?n:Xc();if(Nh(r,dc)&&r.h())e=!0;else{for(var o=r.c();o.d();){var i=o.e();if(!(i instanceof zi&&Xt(t,i.lc_1))){e=!1;break t}}e=!0}}return e}function Ii(t){this.qc_1=t}function Di(t){return t}function Ti(t){return t}function Bi(){I=this,this.tc_1=0,this.uc_1=-1,this.vc_1=4,this.wc_1=32}function Li(){return null==I&&new Bi,I}function Ri(t,n){return Cs(t,n)}function Ni(t){return Mh(t).yc(new eh(-1,0)).toString()}function Fi(t){Li(),this.xc_1=t}function Hi(t){return t}function Ui(t){return t}function Vi(t){return t.length}function Wi(t){this.ad_1=t,this.bd_1=0}function Ki(t,n){return(Gh(new Fi(n))?new Fi(n):Xc())instanceof Fi&&Gt(t,n)}function Ji(t,n){var e;t:{var r=Nh(n,dc)?n:Xc();if(Nh(r,dc)&&r.h())e=!0;else{for(var o=r.c();o.d();){var i=o.e();if(!(i instanceof Fi&&Gt(t,i.xc_1))){e=!1;break t}}e=!0}}return e}function Gi(t){this.dd_1=t}function Yi(t){return t}function Xi(t){return t}function Zi(){D=this,this.gd_1=new eh(0,0),this.hd_1=new eh(-1,-1),this.id_1=8,this.jd_1=64}function Qi(){return null==D&&new Zi,D}function ts(t,n){return Ss(t,n)}function ns(t){return function(t,n){if(t.d1(new eh(0,0))>=0)return xf(t,n);var e,r=t.ee(1).u9(Mh(n)).lb(1);e=r.v9(Mh(n));var o=t.x9(e);return o.d1(Mh(n))>=0&&(o=o.x9(Mh(n)),r=r.w9(new eh(1,0))),xf(r,n)+xf(o,n)}(t,10)}function es(t){Qi(),this.kd_1=t}function rs(t){return t}function os(t){return t}function is(t){return t.length}function ss(t){this.md_1=t,this.nd_1=0}function as(t,n){return(Gh(new es(n))?new es(n):Xc())instanceof es&&Jt(t,n)}function us(t,n){var e;t:{var r=Nh(n,dc)?n:Xc();if(Nh(r,dc)&&r.h())e=!0;else{for(var o=r.c();o.d();){var i=o.e();if(!(i instanceof es&&Jt(t,i.kd_1))){e=!1;break t}}e=!0}}return e}function ls(t){this.pd_1=t}function cs(t){return t}function hs(t){return t}function ps(){T=this,this.sd_1=0,this.td_1=-1,this.ud_1=2,this.vd_1=16}function fs(){return null==T&&new ps,T}function _s(t,n){return Lc(65535&t,65535&n)}function ds(t){return(65535&t).toString()}function vs(t){fs(),this.wd_1=t}function ys(t){return t}function ms(t){return t}function gs(t){return t.length}function bs(t){this.yd_1=t,this.zd_1=0}function $s(t,n){return(Gh(new vs(n))?new vs(n):Xc())instanceof vs&&Yt(t,n)}function ws(t,n){var e;t:{var r=Nh(n,dc)?n:Xc();if(Nh(r,dc)&&r.h())e=!0;else{for(var o=r.c();o.d();){var i=o.e();if(!(i instanceof vs&&Yt(t,i.wd_1))){e=!1;break t}}e=!0}}return e}function xs(t){this.be_1=t}function ks(t){return function(t,n){pl(n);var e=t.length;if(0===e)return null;Qi();var r,o=new eh(-1,-1),i=Ec(t,0);if(Zl(i,48)<0){if(1===e||!Uc(new oc(i),new oc(43)))return null;r=1}else r=0;var s=new eh(477218588,119304647),a=s,u=Mh(n),l=new eh(0,0),c=r;if(c0){if(!Uc(a,s))return null;if(Ss(l,a=zs(o,u))>0)return null}var f=l=l.v9(u),_=l,d=Mh(p).yc(new eh(-1,0));if(Ss(l=_.w9(d),f)<0)return null}while(c0){if(l!==u)return null;if(Cs(h,(i=c,s=void 0,a=void 0,a=Mh(-1).yc(new eh(-1,0)),s=Mh(i).yc(new eh(-1,0)),l=a.u9(s).xa()))>0)return null}var d=h=It(h,c);if(Cs(h=h+_|0,d)<0)return null}while(p=0)return e.u9(r);var o=e.ee(1).u9(r).lb(1),i=Ss(e.x9(o.v9(r)),r)>=0?1:0;return o.w9(Mh(i))}function qs(){}function Os(){}function Ps(){}function Ms(){}function As(){}function Es(){}function Is(){}function Ds(){}function Ts(){B=this}function Bs(){return null==B&&new Ts,B}function Ls(){L=this,this.ie_1=-128,this.je_1=127,this.ke_1=1,this.le_1=8}function Rs(){R=this,this.qe_1=-32768,this.re_1=32767,this.se_1=2,this.te_1=16}function Ns(){N=this,this.x_1=-2147483648,this.y_1=2147483647,this.z_1=4,this.a1_1=32}function Fs(){return null==N&&new Ns,N}function Hs(){F=this,this.ue_1=14e-46,this.ve_1=34028235e31,this.we_1=1/0,this.xe_1=-1/0,this.ye_1=NaN,this.ze_1=4,this.af_1=32}function Us(){return null==F&&new Hs,F}function Vs(){H=this,this.ef_1=5e-324,this.ff_1=17976931348623157e292,this.gf_1=1/0,this.hf_1=-1/0,this.if_1=NaN,this.jf_1=8,this.kf_1=64}function Ws(){return null==H&&new Vs,H}function Ks(){U=this}function Js(){V=this}function Gs(){}function Ys(t){return Kt(n=[t],Ta(n.length));var n}function Xs(t){return 0===(n=[t]).length?ya():ga(new ee(n,!0));var n}function Zs(t){return t}function Qs(t){return t<0&&function(){throw af("Count overflow has happened.")}(),t}function ta(t){return t<0&&function(){throw af("Index overflow has happened.")}(),t}function na(t){return void 0!==t.toArray?t.toArray():ra(t)}function ea(t,n){if(t.f()<=1)return Bs();var e=na(t);!function(t,n){if(xa()){var e=(r=n,function(t,n){return r.compare(t,n)});t.sort(e)}else ka(t,0,Wt(t),n);var r}(e,n);var r=0,o=e.length;if(r=u)return!1}while(o=0))throw Dp(Hc("Negative initial capacity: "+t));if(!(n>=0))throw Dp(Hc("Non-positive load factor: "+n));return e}function Ea(t){return function(t,n){return Aa(t,0,n),n}(t,Object.create(Ia.prototype))}function Ia(){this.gh_1=null}function Da(t,n,e){return va.call(e),La.call(e),e.jh_1=function(t,n){return Aa(t,n,Object.create(Ia.prototype))}(t,n),e}function Ta(t){return function(t,n){return Da(t,0,n),n}(t,Object.create(La.prototype))}function Ba(t,n){return va.call(n),La.call(n),n.jh_1=t,n}function La(){}function Ra(t,n){var e=Fa(t,t.sh_1.xg(n));if(null==e)return null;var r=e;if(null!=r&&Jh(r))return Na(r,t,n);var o=r;return t.sh_1.wg(o.l2(),n)?o:null}function Na(t,n,e){var r;t:{for(var o=t,i=0,s=o.length;inew eh(-1,2147483647).qi()?(nh(),n=new eh(-1,2147483647)):(nh(),t1?t:Ec(n,0)}function hl(t){return function(t){var n;return 9<=(n=tc(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 pl(t){if(!(2<=t&&t<=36))throw Dp("radix "+t+" was not in valid range 2..36");return t}function fl(t){var n,e=Vr(t);return null==e?Wr(t):n=e,n}function _l(t,n){var e,r,o,i=Zl(t,48)>=0&&Zl(t,57)<=0?Ql(t,48):Zl(t,65)>=0&&Zl(t,90)<=0?Ql(t,65)+10|0:Zl(t,97)>=0&&Zl(t,122)<=0?Ql(t,97)+10|0:Zl(t,128)<0?-1:Zl(t,65313)>=0&&Zl(t,65338)<=0?Ql(t,65313)+10|0:Zl(t,65345)>=0&&Zl(t,65370)<=0?Ql(t,65345)+10|0:(e=tc(t),r=dp(yp().jn_1,e),(o=e-yp().jn_1[r]|0)<10?o:-1);return i>=n?-1:i}function dl(t){var n=+t;return(du(n)&&!yl(t)||0===n&&Il(t))&&Wr(t),n}function vl(t){var n,e=Ur(t);return null==e?Wr(t):n=e,n}function yl(t){switch(t.toLowerCase()){case"nan":case"+nan":case"-nan":return!0;default:return!1}}function ml(){nt=this,this.zk_1=new RegExp("[\\\\^$*+?.()|[\\]{}]","g"),this.al_1=new RegExp("[\\\\$]","g"),this.bl_1=new RegExp("\\$","g")}function gl(){return null==nt&&new ml,nt}function bl(t){return t.e()}function $l(t){return function(n){return function(t,n){for(var e=0,r=ul();e=f.f())throw ef("Group with index "+v+" does not exist");var y=f.g(v),m=null==y?null:y.ml_1;r.gb(null==m?"":m),e=_}}else r.s9(i)}return r.toString()}(n,t)}}function wl(t,n){gl(),this.y9_1=t,this.z9_1=on(n),this.aa_1=new RegExp(t,en(n,"","gu",null,0,null,ql,28)),this.ba_1=null,this.ca_1=null}function xl(t,n,e){mc.call(this,t,n),this.ll_1=e}function kl(t,n,e,r){t.lastIndex=e;var o=t.exec(n);return null==o?null:new Ml(Ah(o.index,t.lastIndex-1|0),o,r,n)}function jl(t){this.ml_1=t}function Cl(t,n){for(var e=n;e0&&Uc(new oc(Ec(n,eo(n)-(i-1|0)|0)),new oc(32));)i=i-1|0;return wn(n,i)+"... and "+(r-1|0)+" more common stack frames skipped"}(n,s,u),Dc(e)>0){var l;if(0===u)l=0;else{for(var c=0,h=o,p=0,f=h.length;p=d&&n.yl_1.gb(e),n.yl_1.gb(m).gb("\n")}}else n.yl_1.gb(s).gb("\n")}else n.yl_1.gb(o).gb("\n");var b=function(t){var n=t._suppressed,e=null==n?null:n;return null==e?Yn():e}(t);if(!b.h())for(var $=e+" ",w=b.c();w.d();)Tl(w.e(),n,$,"Suppressed: ");return!0}function Ll(){var t;this.yl_1=ul(),t=[],this.zl_1=t,this.am_1="",this.bm_1=0}function Rl(){if(ht)return Bs();ht=!0,ot=new Nl("NANOSECONDS",0,1),it=new Nl("MICROSECONDS",1,1e3),st=new Nl("MILLISECONDS",2,1e6),at=new Nl("SECONDS",3,1e9),ut=new Nl("MINUTES",4,6e10),lt=new Nl("HOURS",5,36e11),ct=new Nl("DAYS",6,864e11)}function Nl(t,n,e){mc.call(this,t,n),this.fm_1=e}function Fl(t,n,e){var r=Lc(n.fm_1,e.fm_1);return r>0?t*(n.fm_1/e.fm_1):r<0?t/(e.fm_1/n.fm_1):t}function Hl(t,n,e){var r,o=Lc(n.fm_1,e.fm_1);if(o>0){var i,s=Oh(n.fm_1/e.fm_1),a=t.v9(s);a.u9(s).equals(t)?i=a:t.d1(new eh(0,0))>0?(nh(),i=new eh(-1,2147483647)):(nh(),i=new eh(0,-2147483648)),r=i}else r=o<0?t.u9(Oh(e.fm_1/n.fm_1)):t;return r}function Ul(t,n,e){var r=Lc(n.fm_1,e.fm_1);return r>0?t.v9(Oh(n.fm_1/e.fm_1)):r<0?t.u9(Oh(e.fm_1/n.fm_1)):t}function Vl(){return Rl(),ot}function Wl(){return Rl(),st}function Kl(){return Rl(),at}function Jl(){return Rl(),ut}function Gl(){return Rl(),lt}function Yl(){return Rl(),ct}function Xl(t){return t}function Zl(t,n){return t-n|0}function Ql(t,n){return t-n|0}function tc(t){return t}function nc(t){return String.fromCharCode(t)}function ec(){pt=this,this.gm_1=0,this.hm_1=65535,this.im_1=55296,this.jm_1=56319,this.km_1=56320,this.lm_1=57343,this.mm_1=55296,this.nm_1=57343,this.om_1=2,this.pm_1=16}function rc(){return null==pt&&new ec,pt}function oc(t){rc(),this.l1_1=t}function ic(){}function sc(){}function ac(){}function uc(){}function lc(){}function cc(){}function hc(){}function pc(){}function fc(){}function _c(){}function dc(){}function vc(){}function yc(){ft=this}function mc(t,n){null==ft&&new yc,this.s1_1=t,this.t1_1=n}function gc(t){var n=null==t?null:Hc(t);return null==n?"null":n}function bc(t,n){var e=null==t?null:Hc(t),r=null==e?"null":e,o=null==n?null:Hc(n);return r+(null==o?"null":o)}function $c(t,n){var e=0,r=t.length-1|0;if(e<=r)do{var o=e;e=e+1|0,t[o]=n}while(o!==r);return t}function wc(t){return new Cc(t)}function xc(t){var n=$c(Array(t),!1);return n.$type$="BooleanArray",n}function kc(t){var n=new Uint16Array(t);return n.$type$="CharArray",n}function jc(t){var n=$c(Array(t),new eh(0,0));return n.$type$="LongArray",n}function Cc(t){this.sm_1=t,this.rm_1=0}function Sc(t){this.um_1=t,ye.call(this),this.tm_1=0}function zc(){return Ac(),_t}function qc(){return Ac(),dt}function Oc(){return Ac(),vt}function Pc(){return Ac(),yt}function Mc(t){return Ac(),bf(t,0)===t?zh(t):(qc()[0]=t,It(Oc()[(Ac(),mt)],31)+Oc()[Pc()]|0)}function Ac(){if(gt);else{gt=!0,_t=new ArrayBuffer(8);var t=new Float64Array(zc());dt=t,new Float32Array(zc());var n,e=new Int32Array(zc());vt=e,qc()[0]=-1,n=0!==Oc()[0]?1:0,yt=n,mt=1-Pc()|0}}function Ec(t,n){var e;if(Ic(t)){var r,o=t.charCodeAt(n);if(rc(),o<0?r=!0:(rc(),r=o>65535),r)throw Dp("Invalid Char code: "+o);e=Ph(o)}else e=t.ge(n);return e}function Ic(t){return"string"==typeof t}function Dc(t){return Ic(t)?t.length:t.fe()}function Tc(t,n,e){return Ic(t)?t.substring(n,e):t.he(n,e)}function Bc(t){return Hc(t)}function Lc(t,n){var e;switch(typeof t){case"number":e="number"==typeof n?Rc(t,n):n instanceof eh?Rc(t,n.qi()):Nc(t,n);break;case"string":case"boolean":e=Nc(t,n);break;default:e=function(t,n){return t.kb(n)}(t,n)}return e}function Rc(t,n){var e;if(tn)e=1;else if(t===n){var r;if(0!==t)r=0;else{var o=1/t;r=o===1/n?0:o<0?-1:1}e=r}else e=t!=t?n!=n?0:1:-1;return e}function Nc(t,n){return tn?1:0}function Fc(t){if(!gf("kotlinHashCodeValue$",t)){var n=bf(4294967296*Math.random(),0),e=new Object;e.value=n,e.enumerable=!1,Object.defineProperty(t,"kotlinHashCodeValue$",e)}return t.kotlinHashCodeValue$}function Hc(t){return null==t?"null":Lh(t)?"[...]":t.toString()}function Uc(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 Vc(t){if(null==t)return 0;var n;switch(typeof t){case"object":n="function"==typeof t.hashCode?t.hashCode():Fc(t);break;case"function":n=Fc(t);break;case"number":n=Mc(t);break;case"boolean":n=t?1:0;break;default:n=Wc(String(t))}return n}function Wc(t){var n=0,e=0,r=t.length-1|0;if(e<=r)do{var o=e;e=e+1|0;var i=t.charCodeAt(o);n=It(n,31)+i|0}while(o!==r);return n}function Kc(t,n){null!=Error.captureStackTrace?Error.captureStackTrace(t,n):t.stack=(new Error).stack}function Jc(t,n,e){Error.call(t),function(t,n,e){if(!Gc(t,"message")){var r;if(null==n){var o;if(null!==n){var i=null==e?null:e.toString();o=null==i?void 0:i}else o=void 0;r=o}else r=n;t.message=r}Gc(t,"cause")||(t.cause=e),t.name=Object.getPrototypeOf(t).constructor.name}(t,n,e)}function Gc(t,n){return Object.getPrototypeOf(t).hasOwnProperty(n)}function Yc(t){var n;return null==t?function(){throw hf()}():n=t,n}function Xc(){throw df()}function Zc(t,n){for(var e=t.length,r=n.length,o=0,i=n;oo)for(r.length=n;o>>16|0,r=65535&t.c1_1,o=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,l=0,c=0,h=0,p=0;return l=(l=l+((c=(c=c+((h=(h=h+((p=p+(i+(65535&n.b1_1)|0)|0)>>>16|0)|0)+(o+u|0)|0)>>>16|0)|0)+(r+a|0)|0)>>>16|0)|0)+(e+s|0)|0,new eh((h&=65535)<<16|(p&=65535),(l&=65535)<<16|(c&=65535))}function ch(t,n){return Ch(),lh(t,n.t9())}function hh(t,n){if(Ch(),gh(t))return rh();if(gh(n))return rh();if(dh(t,sh()))return bh(n)?sh():rh();if(dh(n,sh()))return bh(t)?sh():rh();if(mh(t))return mh(n)?hh($h(t),$h(n)):$h(hh($h(t),n));if(mh(n))return $h(hh(t,$h(n)));if(wh(t,ah())&&wh(n,ah()))return xh(_h(t)*_h(n));var e=t.c1_1>>>16|0,r=65535&t.c1_1,o=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,l=65535&n.b1_1,c=0,h=0,p=0,f=0;return p=p+((f=f+It(i,l)|0)>>>16|0)|0,f&=65535,h=(h=h+((p=p+It(o,l)|0)>>>16|0)|0)+((p=(p&=65535)+It(i,u)|0)>>>16|0)|0,p&=65535,c=(c=(c=c+((h=h+It(r,l)|0)>>>16|0)|0)+((h=(h&=65535)+It(o,u)|0)>>>16|0)|0)+((h=(h&=65535)+It(i,a)|0)>>>16|0)|0,h&=65535,c=c+(((It(e,l)+It(r,u)|0)+It(o,a)|0)+It(i,s)|0)|0,new eh(p<<16|f,(c&=65535)<<16|h)}function ph(t,n){Ch();var e=63&n;return 0===e?t:e<32?new eh(t.b1_1<>>(32-e|0)|0):new eh(0,t.b1_1<<(e-32|0))}function fh(t,n){Ch();var e=63&n;return 0===e?t:e<32?new eh(t.b1_1>>>e|0|t.c1_1<<(32-e|0),t.c1_1>>e):new eh(t.c1_1>>(e-32|0),t.c1_1>=0?0:-1)}function _h(t){return Ch(),4294967296*t.c1_1+function(t){return Ch(),t.b1_1>=0?t.b1_1:4294967296+t.b1_1}(t)}function dh(t,n){return Ch(),t.c1_1===n.c1_1&&t.b1_1===n.b1_1}function vh(t,n){if(Ch(),n<2||36=0x8000000000000000)return Ch(),kt;if(t<0)return $h(xh(-t));var n=4294967296;return new eh(bf(t%n,0),bf(t/n,0))}function kh(t,n){return Ch(),uh(t,n)>0}function jh(t,n){return Ch(),uh(t,n)>=0}function Ch(){St||(St=!0,$t=yh(0),wt=yh(1),xt=yh(-1),kt=new eh(-1,2147483647),jt=new eh(0,-2147483648),Ct=yh(16777216))}function Sh(t){return t<<24>>24}function zh(t){return t instanceof eh?t.xa():function(t){return t>2147483647?2147483647:t<-2147483648?-2147483648:bf(t,0)}(t)}function qh(t){return t<<16>>16}function Oh(t){return t instanceof eh?t:xh(t)}function Ph(t){return 65535&qh(zh(t))}function Mh(t){return yh(t)}function Ah(t,n){return new Cr(t,n)}function Eh(){Dh();var t=void 0;return Th(t,t,t,t,t,t)}function Ih(t,n,e,r,o){return Dh(),r.get=r,r.set=o,r.callableName=t,i=r,s=function(t,n,e){Dh();var r=(Dh(),zt)[t][null==n?0:1];return 0===r.interfaces.length&&(r.interfaces.push(e),null==r.interfacesCache?r.interfacesCache={isComplete:!1,implementInterfaceMemo:{}}:Yc(r.interfacesCache).isComplete=!1,Vh(Yc(r.interfacesCache),e)),r}(n,o,e),Dh(),i.$metadata$=s,i.constructor=i,i;var i,s}function Dh(){if(qt);else{qt=!0;var t,n=[Eh(),Eh()],e=[Eh(),Eh()];t=[Eh(),Eh()],zt=[n,e,t]}}function Th(t,n,e,r,o,i){return Bh("class",t,n,e,r,o,i)}function Bh(t,n,e,r,o,i,s){return{kind:t,simpleName:n,interfaceId:"interface"===t?-1:void 0,interfaces:e||[],associatedObjectKey:r,associatedObjects:o,suspendArity:i,fastPrototype:s,$kClass$:void 0,interfacesCache:{isComplete:void 0===s&&(void 0===e||0===e.length),implementInterfaceMemo:{}}}}function Lh(t){return!!Rh(t)||Tt(t)}function Rh(t){return Array.isArray(t)}function Nh(t,n){var e=t.constructor;return null!=e&&Fh(e,n)}function Fh(t,n){if(t===n)return!0;var e=t.$metadata$;null!=e&&null==e.interfacesCache&&(e.interfacesCache={isComplete:!1,implementInterfaceMemo:{}});var r,o=null==e?null:e.interfacesCache;if(null!=o){o.isComplete||Hh(t);var i=n.$metadata$,s=null==i?null:i.interfaceId;if(null==s)return!1;var a=s;r=!!o.implementInterfaceMemo[a]}else{var u=Uh(t),l=null==u?null:u.constructor;if(null==l)return!1;r=Fh(l,n)}return r}function Hh(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 r=n.interfaces,o=0,i=r.length;o=0))throw Dp(Hc("Invalid new array size: "+n+"."));return Qc(t,n,null)}function pp(t,n,e){return Dn().f2(n,e,t.length),t.slice(n,e)}function fp(t){return new wa(t)}function _p(t,n,e){for(var r=new Int32Array(e),o=0,i=0,s=0,a=t,u=0,l=a.length;u(i=t[o=(e+r|0)/2|0]))e=o+1|0;else{if(n===i)return o;r=o-1|0}return o-(n0},En.prototype.q=function(){return this.y1_1},En.prototype.r=function(){if(!this.p())throw Vp();var t=this;return t.y1_1=t.y1_1-1|0,this.c2_1.g(t.y1_1)},En.$metadata$=Th("ListIteratorImpl",[Es],void 0,void 0,void 0,An.prototype),In.prototype.e2=function(t,n){if(t<0||t>=n)throw ef("index: "+t+", size: "+n)},In.prototype.d2=function(t,n){if(t<0||t>n)throw ef("index: "+t+", size: "+n)},In.prototype.f2=function(t,n,e){if(t<0||n>e)throw ef("fromIndex: "+t+", toIndex: "+n+", size: "+e);if(t>n)throw Dp("fromIndex: "+t+" > toIndex: "+n)},In.prototype.g2=function(t,n,e){if(t<0||n>e)throw ef("startIndex: "+t+", endIndex: "+n+", size: "+e);if(t>n)throw Dp("startIndex: "+t+" > endIndex: "+n)},In.prototype.h2=function(t){for(var n=1,e=t.c();e.d();){var r=e.e(),o=It(31,n),i=null==r?null:Vc(r);n=o+(null==i?0:i)|0}return n},In.prototype.i2=function(t,n){if(t.f()!==n.f())return!1;for(var e=n.c(),r=t.c();r.d();)if(!Uc(r.e(),e.e()))return!1;return!0},In.$metadata$=up("Companion"),Tn.prototype.c=function(){return new An(this)},Tn.prototype.j=function(t){var n;t:{for(var e=0,r=this.c();r.d();){if(Uc(r.e(),t)){n=e;break t}e=e+1|0}n=-1}return n},Tn.prototype.j2=function(t){var n;t:{for(var e=this.o(this.f());e.p();)if(Uc(e.r(),t)){n=e.q();break t}n=-1}return n},Tn.prototype.o=function(t){return new En(this,t)},Tn.prototype.equals=function(t){return t===this||!(null==t||!Nh(t,sc))&&Dn().i2(this,t)},Tn.prototype.hashCode=function(){return Dn().h2(this)},Tn.$metadata$=Th("AbstractList",[sc],void 0,void 0,void 0,Cn.prototype),Bn.prototype.d=function(){return this.k2_1.d()},Bn.prototype.e=function(){return this.k2_1.e().l2()},Bn.$metadata$=Th(void 0,[Ms]),Ln.prototype.d=function(){return this.m2_1.d()},Ln.prototype.e=function(){return this.m2_1.e().n2()},Ln.$metadata$=Th(void 0,[Ms]),Fn.prototype.o2=function(t){var n=t.l2(),e=null==n?null:Vc(n),r=null==e?0:e,o=t.n2(),i=null==o?null:Vc(o);return r^(null==i?0:i)},Fn.prototype.p2=function(t){return gc(t.l2())+"="+gc(t.n2())},Fn.prototype.q2=function(t,n){return!(null==n||!Nh(n,pc))&&!!Uc(t.l2(),n.l2())&&Uc(t.n2(),n.n2())},Fn.$metadata$=up("Companion"),Un.prototype.s2=function(t){return this.r2_1.v2(t)},Un.prototype.i=function(t){return!(null!=t&&!Gh(t))&&this.s2(null==t||Gh(t)?t:Xc())},Un.prototype.c=function(){return new Bn(this.r2_1.v().c())},Un.prototype.f=function(){return this.r2_1.f()},Un.$metadata$=Th(void 0,void 0,void 0,void 0,void 0,Gn.prototype),Vn.prototype.y2=function(t){return this.x2_1.z2(t)},Vn.prototype.i=function(t){return!(null!=t&&!Gh(t))&&this.y2(null==t||Gh(t)?t:Xc())},Vn.prototype.c=function(){return new Ln(this.x2_1.v().c())},Vn.prototype.f=function(){return this.x2_1.f()},Vn.$metadata$=Th(void 0,void 0,void 0,void 0,void 0,Cn.prototype),Wn.prototype.v2=function(t){return!(null==Nn(this,t))},Wn.prototype.z2=function(t){var n;t:{var e=this.v();if(Nh(e,dc)&&e.h())n=!1;else{for(var r=e.c();r.d();)if(Uc(r.e().n2(),t)){n=!0;break t}n=!1}}return n},Wn.prototype.a3=function(t){if(null==t||!Nh(t,pc))return!1;var n=t.l2(),e=t.n2(),r=(Nh(this,fc)?this:Xc()).b3(n);return!(!Uc(e,r)||null==r&&!(Nh(this,fc)?this:Xc()).v2(n))},Wn.prototype.equals=function(t){if(t===this)return!0;if(null==t||!Nh(t,fc))return!1;if(this.f()!==t.f())return!1;var n;t:{var e=t.v();if(Nh(e,dc)&&e.h())n=!0;else{for(var r=e.c();r.d();){var o=r.e();if(!this.a3(o)){n=!1;break t}}n=!0}}return n},Wn.prototype.b3=function(t){var n=Nn(this,t);return null==n?null:n.n2()},Wn.prototype.hashCode=function(){return Vc(this.v())},Wn.prototype.h=function(){return 0===this.f()},Wn.prototype.f=function(){return this.v().f()},Wn.prototype.c3=function(){return null==this.t2_1&&(this.t2_1=new Un(this)),Yc(this.t2_1)},Wn.prototype.toString=function(){return en(this.v(),", ","{","}",0,null,(t=this,function(n){return t.w2(n)}),24);var t},Wn.prototype.w2=function(t){return Rn(this,t.l2())+"="+Rn(this,t.n2())},Wn.prototype.d3=function(){return null==this.u2_1&&(this.u2_1=new Vn(this)),Yc(this.u2_1)},Wn.$metadata$=Th("AbstractMap",[fc]),Kn.prototype.e3=function(t){for(var n=0,e=t.c();e.d();){var r=e.e(),o=n,i=null==r?null:Vc(r);n=o+(null==i?0:i)|0}return n},Kn.prototype.f3=function(t,n){return t.f()===n.f()&&t.o1(n)},Kn.$metadata$=up("Companion"),Gn.prototype.equals=function(t){return t===this||!(null==t||!Nh(t,lc))&&Jn().f3(this,t)},Gn.prototype.hashCode=function(){return Jn().e3(this)},Gn.$metadata$=Th("AbstractSet",[lc],void 0,void 0,void 0,Cn.prototype),te.prototype.equals=function(t){return!(null==t||!Nh(t,sc))&&t.h()},te.prototype.hashCode=function(){return 1},te.prototype.toString=function(){return"[]"},te.prototype.f=function(){return 0},te.prototype.h=function(){return!0},te.prototype.h3=function(t){return!1},te.prototype.i=function(t){return!1},te.prototype.i3=function(t){return t.h()},te.prototype.o1=function(t){return this.i3(t)},te.prototype.g=function(t){throw ef("Empty list doesn't contain element at index "+t+".")},te.prototype.j3=function(t){return-1},te.prototype.j=function(t){return-1},te.prototype.c=function(){return oe()},te.prototype.o=function(t){if(0!==t)throw ef("Index: "+t);return oe()},te.$metadata$=up("EmptyList",[sc,fu,ou]),ee.prototype.f=function(){return this.k3_1.length},ee.prototype.h=function(){return 0===this.k3_1.length},ee.prototype.m3=function(t){return function(t,n){return Ft(t,n)>=0}(this.k3_1,t)},ee.prototype.i=function(t){return!(null!=t&&!Gh(t))&&this.m3(null==t||Gh(t)?t:Xc())},ee.prototype.n3=function(t){var n;t:if(Nh(t,dc)&&t.h())n=!0;else{for(var e=t.c();e.d();){var r=e.e();if(!this.m3(r)){n=!1;break t}}n=!0}return n},ee.prototype.o1=function(t){return this.n3(t)},ee.prototype.c=function(){return wc(this.k3_1)},ee.$metadata$=Th("ArrayAsCollection",[dc]),re.prototype.d=function(){return!1},re.prototype.p=function(){return!1},re.prototype.q=function(){return 0},re.prototype.e=function(){throw Vp()},re.prototype.r=function(){throw Vp()},re.$metadata$=up("EmptyIterator",[Es]),ie.prototype.q3=function(){return this.o3_1},ie.prototype.n2=function(){return this.p3_1},ie.prototype.toString=function(){return"IndexedValue(index="+this.o3_1+", value="+this.p3_1+")"},ie.prototype.hashCode=function(){var t=this.o3_1;return It(t,31)+(null==this.p3_1?0:Vc(this.p3_1))|0},ie.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof ie))return!1;var n=t instanceof ie?t:Xc();return this.o3_1===n.o3_1&&!!Uc(this.p3_1,n.p3_1)},ie.$metadata$=Th("IndexedValue"),ae.prototype.c=function(){return new le(this.r3_1())},ae.$metadata$=Th("IndexingIterable",[ic]),ue.prototype.c=function(){return this.s3_1()},ue.$metadata$=Th(void 0,[ic]),le.prototype.d=function(){return this.t3_1.d()},le.prototype.e=function(){var t=this.u3_1;return this.u3_1=t+1|0,new ie(ta(t),this.t3_1.e())},le.$metadata$=Th("IndexingIterator",[Ms]),ce.$metadata$=ap("MapWithDefault",[fc]),pe.prototype.equals=function(t){return!(null==t||!Nh(t,fc))&&t.h()},pe.prototype.hashCode=function(){return 0},pe.prototype.toString=function(){return"{}"},pe.prototype.f=function(){return 0},pe.prototype.h=function(){return!0},pe.prototype.h4=function(t){return!1},pe.prototype.v2=function(t){return!(null!=t&&!Gh(t))&&this.h4(null==t||Gh(t)?t:Xc())},pe.prototype.i4=function(t){return null},pe.prototype.b3=function(t){return null==t||Gh(t)?this.i4(null==t||Gh(t)?t:Xc()):null},pe.prototype.v=function(){return Be()},pe.prototype.c3=function(){return Be()},pe.prototype.d3=function(){return ne()},pe.$metadata$=up("EmptyMap",[fc,fu]),ye.prototype.e=function(){return this.q4()},ye.$metadata$=Th("IntIterator",[Ms]),me.prototype.r4=function(){return this.s4()},me.prototype.e=function(){return new oc(this.r4())},me.$metadata$=Th("CharIterator",[Ms]),ge.$metadata$=ap("Sequence"),be.$metadata$=Th("SequenceScope"),xe.prototype.y4=function(t){this.x4_1=t},xe.prototype.d=function(){for(;;){switch(this.u4_1){case 0:break;case 1:if(Yc(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 we(this)}this.u4_1=5;var t,n=Yc(this.x4_1);this.x4_1=null,fi(),t=Bs(),n.z4(t),Bs()}},xe.prototype.e=function(){switch(this.u4_1){case 0:case 1:return function(t){if(t.d())return t.e();throw Vp()}(this);case 2:return this.u4_1=1,Yc(this.w4_1).e();case 3:this.u4_1=0;var t=this.v4_1,n=null==t||Gh(t)?t:Xc();return this.v4_1=null,n;default:throw we(this)}},xe.prototype.t4=function(t,n){this.v4_1=t,this.u4_1=3;var e=n;return this.x4_1=e,lr()},xe.prototype.a5=function(t){yi(t);null==t||Gh(t)||Xc(),this.u4_1=4},xe.prototype.z4=function(t){return this.a5(t)},xe.prototype.b5=function(){return er()},xe.$metadata$=Th("SequenceBuilderIterator",[Ms,Ke],void 0,void 0,void 0,be.prototype),ke.prototype.c=function(){return $e(this.c5_1)},ke.$metadata$=Th(void 0,[ge]),Ce.prototype.e=function(){if(this.e5_1<0&&je(this),0===this.e5_1)throw Vp();var t=this.d5_1,n=Gh(t)?t:Xc();return this.e5_1=-1,n},Ce.prototype.d=function(){return this.e5_1<0&&je(this),1===this.e5_1},Ce.$metadata$=Th(void 0,[Ms]),Se.prototype.c=function(){return new Ce(this)},Se.$metadata$=Th("GeneratorSequence",[ge]),ze.prototype.e=function(){return this.j5_1.l5_1(this.i5_1.e())},ze.prototype.d=function(){return this.i5_1.d()},ze.$metadata$=Th(void 0,[Ms]),qe.prototype.c=function(){return new ze(this)},qe.$metadata$=Th("TransformingSequence",[ge]),Oe.$metadata$=ap("DropTakeSequence",[ge]),Pe.prototype.e=function(){if(0===this.m5_1)throw Vp();var t=this.m5_1;return this.m5_1=t-1|0,this.n5_1.e()},Pe.prototype.d=function(){return this.m5_1>0&&this.n5_1.d()},Pe.$metadata$=Th(void 0,[Ms]),Me.prototype.i1=function(t){return t>=this.p5_1?this:new Me(this.o5_1,t)},Me.prototype.c=function(){return new Pe(this)},Me.$metadata$=Th("TakeSequence",[ge,Oe]),Ae.prototype.c=function(){return oe()},Ae.prototype.i1=function(t){return Ee()},Ae.$metadata$=up("EmptySequence",[ge,Oe]),Ie.prototype.c=function(){return this.q5_1()},Ie.$metadata$=Th(void 0,[ge]),Te.prototype.equals=function(t){return!(null==t||!Nh(t,lc))&&t.h()},Te.prototype.hashCode=function(){return 0},Te.prototype.toString=function(){return"[]"},Te.prototype.f=function(){return 0},Te.prototype.h=function(){return!0},Te.prototype.h3=function(t){return!1},Te.prototype.i=function(t){return!1},Te.prototype.i3=function(t){return t.h()},Te.prototype.o1=function(t){return this.i3(t)},Te.prototype.c=function(){return oe()},Te.$metadata$=up("EmptySet",[lc,fu]),Ne.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||Gh(t)?t:Xc());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}},Ne.$metadata$=Th(void 0,void 0,void 0,void 0,void 0,Sn.prototype),Fe.prototype.f=function(){return this.a6_1},Fe.prototype.g=function(t){var n;Dn().e2(t,this.a6_1),n=(this.z5_1+t|0)%this.y5_1|0;var e=this.x5_1[n];return null==e||Gh(e)?e:Xc()},Fe.prototype.b6=function(){return this.a6_1===this.y5_1},Fe.prototype.c=function(){return new Ne(this)},Fe.prototype.c6=function(t){for(var n=t.lengththis.a6_1&&(n[this.a6_1]=null),Jh(n)?n:Xc()},Fe.prototype.d6=function(){var t,n=this.a6_1;return t=$c(Array(n),null),this.c6(t)},Fe.prototype.toArray=function(){return this.d6()},Fe.prototype.e6=function(t){var n,e,r=vn(1+(this.y5_1+(this.y5_1>>1)|0)|0,t);return 0===this.z5_1?n=hp(this.x5_1,r):(e=$c(Array(r),null),n=this.c6(e)),new Fe(n,this.a6_1)},Fe.prototype.f6=function(t){if(this.b6())throw Fp("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},Fe.prototype.g6=function(t){if(!(t>=0))throw Dp(Hc("n shouldn't be negative but it is "+t));if(!(t<=this.a6_1))throw Dp(Hc("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?(cp(this.x5_1,null,n,this.y5_1),cp(this.x5_1,null,0,e)):cp(this.x5_1,null,n,e),this.z5_1=e;this.a6_1=this.a6_1-t|0}},Fe.$metadata$=Th("RingBuffer",[ou],void 0,void 0,void 0,Tn.prototype),He.prototype.g7=function(t,n){var e=this.h7(t,n);return e.l7_1=Bs(),e.m7_1=null,e.q7()},He.prototype.r7=function(t,n){return this.g7(t instanceof be?t:Xc(),n)},He.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=vn(this.p6_1,1024),this.w6_1=this.q6_1-this.p6_1|0,this.w6_1>=0){this.x6_1=ma(this.v6_1),this.y6_1=0,this.z6_1=this.r6_1,this.j7_1=12;continue t}this.a7_1=Re(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:ga(this.a7_1),this))===lr())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))===lr())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))===lr())return t;continue t}this.j7_1=15;continue t;case 14:this.s6_1?this.x6_1.s7():this.x6_1=ma(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))===lr())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 Bs();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}},He.prototype.h7=function(t,n){var e=new He(this.p6_1,this.q6_1,this.r6_1,this.s6_1,this.t6_1,n);return e.u6_1=t,e},He.$metadata$=Th("windowedIterator$slambda",void 0,void 0,void 0,[1],xp.prototype),Ve.prototype.v7=function(t,n){return Lc(t,n)},Ve.prototype.compare=function(t,n){var e=null!=t&&Xh(t)?t:Xc();return this.v7(e,null!=n&&Xh(n)?n:Xc())},Ve.$metadata$=up("NaturalOrderComparator",[Gs]),We.prototype.t=function(t,n){return this.w7_1(t,n)},We.prototype.compare=function(t,n){return this.t(t,n)},We.$metadata$=Th("sam$kotlin_Comparator$0",[Gs]),Ke.$metadata$=ap("Continuation"),Je.$metadata$=up("Key",[Xe]),Ye.$metadata$=ap("ContinuationInterceptor",[Ze]),Xe.$metadata$=ap("Key"),Ze.$metadata$=ap("Element",[tr]),tr.$metadata$=ap("CoroutineContext"),nr.prototype.z7=function(t){return null},nr.prototype.f8=function(t,n){return t},nr.prototype.g8=function(t){return t},nr.prototype.e8=function(t){return this},nr.prototype.hashCode=function(){return 0},nr.prototype.toString=function(){return"EmptyCoroutineContext"},nr.$metadata$=up("EmptyCoroutineContext",[tr,fu]),sr.prototype.z7=function(t){for(var n=this;;){var e=n.j8_1.z7(t);if(null!=e)return e;var r=n.i8_1;if(!(r instanceof sr))return r.z7(t);n=r}},sr.prototype.f8=function(t,n){return n(this.i8_1.f8(t,n),this.j8_1)},sr.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===er()?this.j8_1:new sr(n,this.j8_1)},sr.prototype.equals=function(t){return this===t||!!(t instanceof sr&&rr(t)===rr(this))&&function(t,n){for(var e=n;;){if(!or(t,e.j8_1))return!1;var r=e.i8_1;if(!(r instanceof sr))return or(t,Nh(r,Ze)?r:Xc());e=r}}(t,this)},sr.prototype.hashCode=function(){return Vc(this.i8_1)+Vc(this.j8_1)|0},sr.prototype.toString=function(){return"["+this.f8("",ir)+"]"},sr.$metadata$=Th("CombinedContext",[tr,fu]),ar.prototype.c8=function(t){return this.a8_1(t)},ar.prototype.d8=function(t){return t===this||this.b8_1===t},ar.$metadata$=Th("AbstractCoroutineContextKey",[Xe]),ur.prototype.l2=function(){return this.k8_1},ur.$metadata$=Th("AbstractCoroutineContextElement",[Ze]),hr.$metadata$=Th("CoroutineSingletons",void 0,void 0,void 0,void 0,mc.prototype),yr.prototype.m8=function(t){return this.l8_1.m8(t)},yr.prototype.q4=function(){return this.l8_1.q4()},yr.prototype.n8=function(t){return this.l8_1.n8(t)},yr.prototype.o8=function(t,n){return this.l8_1.o8(t,n)},yr.$metadata$=up("Default",[fu],void 0,void 0,void 0,gr.prototype),gr.prototype.q4=function(){return this.m8(32)},gr.prototype.n8=function(t){return this.o8(0,t)},gr.prototype.o8=function(t,n){$r(t,n);var e=n-t|0;if(e>0||e===Fs().x_1){var r;if((e&(0|-e))===e){var o=31-Dt(e)|0;r=this.m8(o)}else{var i;do{var s=this.q4()>>>1|0;i=s%e|0}while(((s-i|0)+(e-1|0)|0)<0);r=i}return t+r|0}for(;;){var a=this.q4();if(t<=a&&a>>2|0,this.t8_1=this.u8_1,this.u8_1=this.v8_1,this.v8_1=this.w8_1;var n=this.x8_1;this.w8_1=n,t=t^t<<1^n^n<<4,this.x8_1=t;return this.y8_1=this.y8_1+362437|0,t+this.y8_1|0},xr.prototype.m8=function(t){return function(t,n){return(t>>>(32-n|0)|0)&(0|-n)>>31}(this.q4(),t)},xr.$metadata$=Th("XorWowRandom",[fu],void 0,void 0,void 0,gr.prototype),kr.$metadata$=up("Companion"),Cr.prototype.z8=function(){return this.f1_1},Cr.prototype.a9=function(){return this.g1_1},Cr.prototype.b9=function(t){return this.f1_1<=t&&t<=this.g1_1},Cr.prototype.h=function(){return this.f1_1>this.g1_1},Cr.prototype.equals=function(t){return t instanceof Cr&&(!(!this.h()||!t.h())||this.f1_1===t.f1_1&&this.g1_1===t.g1_1)},Cr.prototype.hashCode=function(){return this.h()?-1:It(31,this.f1_1)+this.g1_1|0},Cr.prototype.toString=function(){return this.f1_1+".."+this.g1_1},Cr.$metadata$=Th("IntRange",[Dr,Tr],void 0,void 0,void 0,Ar.prototype),Sr.$metadata$=up("Companion"),zr.prototype.g9=function(t){return Zl(this.h9_1,t)<=0&&Zl(t,this.i9_1)<=0},zr.prototype.h=function(){return Zl(this.h9_1,this.i9_1)>0},zr.prototype.equals=function(t){return t instanceof zr&&(!(!this.h()||!t.h())||!!Uc(new oc(this.h9_1),new oc(t.h9_1))&&Uc(new oc(this.i9_1),new oc(t.i9_1)))},zr.prototype.hashCode=function(){var t,n;return this.h()?t=-1:(n=this.h9_1,t=It(31,n)+this.i9_1|0),t},zr.prototype.toString=function(){return new oc(this.h9_1)+".."+new oc(this.i9_1)},zr.$metadata$=Th("CharRange",[Dr,Tr],void 0,void 0,void 0,Ir.prototype),qr.prototype.d=function(){return this.m9_1},qr.prototype.q4=function(){var t=this.n9_1;if(t===this.l9_1){if(!this.m9_1)throw Vp();this.m9_1=!1}else{this.n9_1=this.n9_1+this.k9_1|0}return t},qr.$metadata$=Th("IntProgressionIterator",void 0,void 0,void 0,void 0,ye.prototype),Or.prototype.d=function(){return this.q9_1},Or.prototype.s4=function(){var t=this.r9_1;if(t===this.p9_1){if(!this.q9_1)throw Vp();this.q9_1=!1}else{this.r9_1=this.r9_1+this.o9_1|0}return Ph(t)},Or.$metadata$=Th("CharProgressionIterator",void 0,void 0,void 0,void 0,me.prototype),Pr.prototype.e1=function(t,n,e){return new Ar(t,n,e)},Pr.$metadata$=up("Companion"),Ar.prototype.c=function(){return new qr(this.f1_1,this.g1_1,this.h1_1)},Ar.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)},Ar.$metadata$=Th("IntProgression",[ic]),Er.$metadata$=up("Companion"),Ir.prototype.c=function(){return new Or(this.h9_1,this.i9_1,this.j9_1)},Ir.prototype.h=function(){return this.j9_1>0?Zl(this.h9_1,this.i9_1)>0:Zl(this.h9_1,this.i9_1)<0},Ir.prototype.equals=function(t){return t instanceof Ir&&(!(!this.h()||!t.h())||!(!Uc(new oc(this.h9_1),new oc(t.h9_1))||!Uc(new oc(this.i9_1),new oc(t.i9_1)))&&this.j9_1===t.j9_1)},Ir.prototype.hashCode=function(){var t;if(this.h())t=-1;else{var n;n=this.h9_1;var e,r=It(31,n);e=this.i9_1,t=It(31,r+e|0)+this.j9_1|0}return t},Ir.prototype.toString=function(){return this.j9_1>0?new oc(this.h9_1)+".."+new oc(this.i9_1)+" step "+this.j9_1:new oc(this.h9_1)+" downTo "+new oc(this.i9_1)+" step "+(0|-this.j9_1)},Ir.$metadata$=Th("CharProgression",[ic]),Dr.$metadata$=ap("ClosedRange"),Tr.$metadata$=ap("OpenEndRange"),Br.$metadata$=ap("KClassifier"),Lr.$metadata$=ap("KTypeParameter",[Br]),fo.prototype.e=function(){if(-1===this.ia_1&&po(this),0===this.ia_1)throw Vp();var t=this.la_1,n=t instanceof Cr?t:Xc();return this.la_1=null,this.ia_1=-1,n},fo.prototype.d=function(){return-1===this.ia_1&&po(this),1===this.ia_1},fo.$metadata$=Th(void 0,[Ms]),_o.prototype.c=function(){return new fo(this)},_o.$metadata$=Th("DelimitedRangesSequence",[ge]),yo.$metadata$=ap("MatchResult"),mo.$metadata$=ap("MatchGroupCollection",[dc]),go.$metadata$=ap("MatchNamedGroupCollection",[mo]),ko.prototype.bb=function(t){var n;try{n=Uo(t,!0)}catch(n){throw n instanceof Lp?Bp("Invalid ISO duration string format: '"+t+"'.",n):n}return n},ko.$metadata$=up("Companion"),Ro.prototype.jb=function(t){return Mo(this.db_1,t)},Ro.prototype.kb=function(t){return function(t,n){return Mo(t.db_1,n instanceof Ro?n.db_1:Xc())}(this,t)},Ro.prototype.toString=function(){return Bo(this.db_1)},Ro.prototype.hashCode=function(){return this.db_1.hashCode()},Ro.prototype.equals=function(t){return function(t,n){if(!(n instanceof Ro))return!1;var e=n instanceof Ro?n.db_1:Xc();return!!t.equals(e)}(this.db_1,t)},Ro.$metadata$=Th("Duration",[Ps]),Qo.$metadata$=Th("DeepRecursiveScope"),ti.$metadata$=Th("DeepRecursiveFunction"),ni.prototype.b5=function(){return er()},ni.prototype.tb=function(t){this.qb_1=null,this.rb_1=t},ni.prototype.z4=function(t){return this.tb(t)},ni.prototype.mb=function(t,n){var e=n;return this.qb_1=Nh(e,Ke)?e:Xc(),this.pb_1=t,lr()},ni.prototype.sb=function(){t:for(;;){var t=this.rb_1,n=this.qb_1;if(null==n){var e=new di(t)instanceof di?t:Xc();yi(e);var r=e;return null==r||Gh(r)?r:Xc()}var o=n;if(Uc(Zo(),t)){var i;try{var s,a=this.ob_1,u=this.pb_1;i="function"==typeof(s=a)?s(this,u,o):a.ub(this,u,o)}catch(t){if(t instanceof Error){var l;fi(),l=vi(t),o.z4(l),Bs();continue t}throw t}var c=i;if(c!==lr()){var h,p=null==c||Gh(c)?c:Xc();fi(),h=p,o.z4(h),Bs()}}else this.rb_1=Zo(),o.z4(t)}},ni.$metadata$=Th("DeepRecursiveScopeImpl",[Ke],void 0,void 0,void 0,Qo.prototype),ri.$metadata$=ap("Lazy"),oi.$metadata$=Th("LazyThreadSafetyMode",void 0,void 0,void 0,void 0,mc.prototype),ii.prototype.n2=function(){this.wb_1===ai()&&(this.wb_1=Yc(this.vb_1)(),this.vb_1=null);var t=this.wb_1;return null==t||Gh(t)?t:Xc()},ii.prototype.xb=function(){return!(this.wb_1===ai())},ii.prototype.toString=function(){return this.xb()?gc(this.n2()):"Lazy value not initialized yet."},ii.$metadata$=Th("UnsafeLazyImpl",[ri,fu]),si.$metadata$=up("UNINITIALIZED_VALUE"),pi.prototype.zb=function(t){return t},pi.prototype.ac=function(t){return vi(t)},pi.$metadata$=up("Companion"),_i.prototype.equals=function(t){return t instanceof _i&&Uc(this.yb_1,t.yb_1)},_i.prototype.hashCode=function(){return Vc(this.yb_1)},_i.prototype.toString=function(){return"Failure("+this.yb_1+")"},_i.$metadata$=Th("Failure",[fu]),di.prototype.toString=function(){return(t=this.bc_1)instanceof _i?Hc(t):"Success("+gc(t)+")";var t},di.prototype.hashCode=function(){return null==(t=this.bc_1)?0:Vc(t);var t},di.prototype.equals=function(t){return function(t,n){return n instanceof di&&!!Uc(t,n instanceof di?n.bc_1:Xc())}(this.bc_1,t)},di.$metadata$=Th("Result",[fu]),mi.$metadata$=Th("NotImplementedError",void 0,void 0,void 0,void 0,Ap.prototype),gi.prototype.cc=function(){return this.j4_1},gi.prototype.dc=function(){return this.k4_1},gi.prototype.toString=function(){return"("+this.j4_1+", "+this.k4_1+")"},gi.prototype.l4=function(){return this.j4_1},gi.prototype.m4=function(){return this.k4_1},gi.prototype.hashCode=function(){var t=null==this.j4_1?0:Vc(this.j4_1);return It(t,31)+(null==this.k4_1?0:Vc(this.k4_1))|0},gi.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof gi))return!1;var n=t instanceof gi?t:Xc();return!!Uc(this.j4_1,n.j4_1)&&!!Uc(this.k4_1,n.k4_1)},gi.$metadata$=Th("Pair",[fu]),$i.prototype.toString=function(){return"("+this.ec_1+", "+this.fc_1+", "+this.gc_1+")"},$i.prototype.hashCode=function(){var t=null==this.ec_1?0:Vc(this.ec_1);return t=It(t,31)+(null==this.fc_1?0:Vc(this.fc_1))|0,It(t,31)+(null==this.gc_1?0:Vc(this.gc_1))|0},$i.prototype.equals=function(t){if(this===t)return!0;if(!(t instanceof $i))return!1;var n=t instanceof $i?t:Xc();return!!Uc(this.ec_1,n.ec_1)&&!!Uc(this.fc_1,n.fc_1)&&!!Uc(this.gc_1,n.gc_1)},$i.$metadata$=Th("Triple",[fu]),ki.$metadata$=up("Companion"),zi.prototype.mc=function(t){return Ci(this.lc_1,t)},zi.prototype.kb=function(t){return function(t,n){return Ci(t.lc_1,n instanceof zi?n.lc_1:Xc())}(this,t)},zi.prototype.toString=function(){return Si(this.lc_1)},zi.prototype.hashCode=function(){return this.lc_1},zi.prototype.equals=function(t){return function(t,n){return n instanceof zi&&t===(n instanceof zi?n.lc_1:Xc())}(this.lc_1,t)},zi.$metadata$=Th("UByte",[Ps]),Mi.prototype.d=function(){return this.oc_10},sa.prototype.q=function(){return this.of_1},sa.prototype.r=function(){if(!this.p())throw Vp();var t=this;return t.of_1=t.of_1-1|0,this.pf_1=t.of_1,this.vf_1.g(this.pf_1)},sa.$metadata$=Th("ListIteratorImpl",[Is],void 0,void 0,void 0,ia.prototype),aa.prototype.ag=function(t,n){Dn().d2(t,this.zf_1),this.xf_1.ag(this.yf_1+t|0,n);var e=this.zf_1;this.zf_1=e+1|0},aa.prototype.g=function(t){return Dn().e2(t,this.zf_1),this.xf_1.g(this.yf_1+t|0)},aa.prototype.n4=function(t){Dn().e2(t,this.zf_1);var n=this.xf_1.n4(this.yf_1+t|0),e=this.zf_1;return this.zf_1=e-1|0,n},aa.prototype.p4=function(t,n){return Dn().e2(t,this.zf_1),this.xf_1.p4(this.yf_1+t|0,n)},aa.prototype.f=function(){return this.zf_1},aa.prototype.mf=function(){return this.xf_1.mf()},aa.$metadata$=Th("SubList",[ou],void 0,void 0,void 0,ua.prototype),ua.prototype.a=function(t){return this.mf(),this.ag(this.f(),t),!0},ua.prototype.s7=function(){this.mf(),this.bg(0,this.f())},ua.prototype.c=function(){return new ia(this)},ua.prototype.i=function(t){return this.j(t)>=0},ua.prototype.j=function(t){var n=0,e=Qn(this);if(n<=e)do{var r=n;if(n=n+1|0,Uc(this.g(r),t))return r}while(r!==e);return-1},ua.prototype.j2=function(t){var n=Qn(this);if(0<=n)do{var e=n;if(n=n+-1|0,Uc(this.g(e),t))return e}while(0<=n);return-1},ua.prototype.o=function(t){return new sa(this,t)},ua.prototype.cg=function(t,n){return new aa(this,t,n)},ua.prototype.bg=function(t,n){var e=this.o(t),r=n-t|0,o=0;if(o=0){var r,o=this,i=this.li_1;r=n.substring(0,e),o.li_1=i+r,this.mi();var s=e+1|0;n=n.substring(s)}this.li_1=this.li_1+n},au.prototype.mi=function(){console.log(this.li_1),this.li_1=""},au.$metadata$=Th("BufferedOutputToConsoleLog",void 0,void 0,void 0,void 0,uu.prototype),uu.prototype.hi=function(t){var n,e=this,r=this.li_1;n=String(t),e.li_1=r+n},uu.$metadata$=Th("BufferedOutput",void 0,void 0,void 0,void 0,iu.prototype),cu.prototype.b5=function(){return this.ni_1.b5()},cu.prototype.z4=function(t){var n=this.oi_1;if(n===pr())this.oi_1=t;else{if(n!==lr())throw Fp("Already resumed");this.oi_1=fr(),this.ni_1.z4(t)}},cu.prototype.pi=function(){if(this.oi_1===pr())return this.oi_1=lr(),lr();var t,n=this.oi_1;if(n===fr())t=lr();else{if(n instanceof _i)throw n.yb_1;t=n}return t},cu.$metadata$=Th("SafeContinuation",[Ke]),pu.$metadata$=Th("CancellationException",void 0,void 0,void 0,void 0,Up.prototype),fu.$metadata$=ap("Serializable"),mu.$metadata$=ap("KCallable"),gu.$metadata$=ap("KClass",[Br]),bu.prototype.si=function(){return this.ri_1},bu.prototype.equals=function(t){return t instanceof bu&&Uc(this.si(),t.si())},bu.prototype.hashCode=function(){var t=this.ti(),n=null==t?null:Wc(t);return null==n?0:n},bu.prototype.toString=function(){return"class "+this.ti()},bu.$metadata$=Th("KClassImpl",[gu]),$u.prototype.equals=function(t){return t instanceof $u&&!!bu.prototype.equals.call(this,t)&&this.wi_1===t.wi_1},$u.prototype.ti=function(){return this.wi_1},$u.prototype.ui=function(t){return this.xi_1(t)},$u.$metadata$=Th("PrimitiveKClassImpl",void 0,void 0,void 0,void 0,bu.prototype),wu.prototype.ti=function(){return this.zi_1},wu.prototype.ui=function(t){return!1},wu.prototype.si=function(){throw Qp("There's no native JS class for Nothing type")},wu.prototype.equals=function(t){return t===this},wu.prototype.hashCode=function(){return 0},wu.$metadata$=up("NothingKClassImpl",void 0,void 0,void 0,void 0,bu.prototype),ku.prototype.ti=function(){throw Fp("Unknown simpleName for ErrorKClass")},ku.prototype.ui=function(t){throw Fp("Can's check isInstance on ErrorKClass")},ku.prototype.equals=function(t){return t===this},ku.prototype.hashCode=function(){return 0},ku.$metadata$=Th("ErrorKClass",[gu]),ju.prototype.ti=function(){return this.bj_1},ju.prototype.ui=function(t){return lp(t,this.si())},ju.$metadata$=Th("SimpleKClassImpl",void 0,void 0,void 0,void 0,bu.prototype),Cu.$metadata$=ap("KProperty1",[zu]),Su.$metadata$=ap("KMutableProperty1",[Cu,Ou]),zu.$metadata$=ap("KProperty",[mu]),qu.$metadata$=ap("KMutableProperty0",[Pu,Ou]),Ou.$metadata$=ap("KMutableProperty",[zu]),Pu.$metadata$=ap("KProperty0",[zu]),Mu.$metadata$=ap("KType"),Au.prototype.cj=function(){return this.fj_1},Au.prototype.dj=function(){return this.gj_1},Au.prototype.ej=function(){return this.hj_1},Au.prototype.equals=function(t){return!!(t instanceof Au&&Uc(this.fj_1,t.fj_1)&&Uc(this.gj_1,t.gj_1))&&this.hj_1===t.hj_1},Au.prototype.hashCode=function(){return It(It(Vc(this.fj_1),31)+Vc(this.gj_1)|0,31)+(0|this.hj_1)|0},Au.prototype.toString=function(){var t=this.fj_1,n=Nh(t,gu)?t:null,e=null==n?Hc(this.fj_1):null!=n.ti()?n.ti():"(non-denotable type)",r=this.gj_1.h()?"":en(this.gj_1,", ","<",">",0,null,null,56),o=this.hj_1?"?":"";return bc(e,r)+o},Au.$metadata$=Th("KTypeImpl",[Mu]),tl.prototype.ck=function(){return this.ij_1},tl.prototype.dk=function(){return this.jj_1},tl.prototype.ek=function(){return this.kj_1},tl.prototype.fk=function(){return this.lj_1},tl.prototype.gk=function(){return this.mj_1},tl.prototype.hk=function(){return this.nj_1},tl.prototype.ik=function(){return this.oj_1},tl.prototype.jk=function(){return this.pj_1},tl.prototype.kk=function(){return this.qj_1},tl.prototype.lk=function(){return this.rj_1},tl.prototype.mk=function(){return this.sj_1},tl.prototype.nk=function(){return this.tj_1},tl.prototype.ok=function(){return this.uj_1},tl.prototype.pk=function(){return this.vj_1},tl.prototype.qk=function(){return this.wj_1},tl.prototype.rk=function(){return this.xj_1},tl.prototype.sk=function(){return this.yj_1},tl.prototype.tk=function(){return this.zj_1},tl.prototype.uk=function(){return this.ak_1},tl.prototype.vk=function(){return this.bk_1},tl.prototype.functionClass=function(t){var n,e,r=Eu()[t];if(null==r){var o=new $u(Function,"Function"+t,(e=t,function(t){return"function"==typeof t&&t.length===e}));Eu()[t]=o,n=o}else n=r;return n},tl.$metadata$=up("PrimitiveClasses"),Object.defineProperty(tl.prototype,"anyClass",{configurable:!0,get:tl.prototype.ck}),Object.defineProperty(tl.prototype,"numberClass",{configurable:!0,get:tl.prototype.dk}),Object.defineProperty(tl.prototype,"nothingClass",{configurable:!0,get:tl.prototype.ek}),Object.defineProperty(tl.prototype,"booleanClass",{configurable:!0,get:tl.prototype.fk}),Object.defineProperty(tl.prototype,"byteClass",{configurable:!0,get:tl.prototype.gk}),Object.defineProperty(tl.prototype,"shortClass",{configurable:!0,get:tl.prototype.hk}),Object.defineProperty(tl.prototype,"intClass",{configurable:!0,get:tl.prototype.ik}),Object.defineProperty(tl.prototype,"floatClass",{configurable:!0,get:tl.prototype.jk}),Object.defineProperty(tl.prototype,"doubleClass",{configurable:!0,get:tl.prototype.kk}),Object.defineProperty(tl.prototype,"arrayClass",{configurable:!0,get:tl.prototype.lk}),Object.defineProperty(tl.prototype,"stringClass",{configurable:!0,get:tl.prototype.mk}),Object.defineProperty(tl.prototype,"throwableClass",{configurable:!0,get:tl.prototype.nk}),Object.defineProperty(tl.prototype,"booleanArrayClass",{configurable:!0,get:tl.prototype.ok}),Object.defineProperty(tl.prototype,"charArrayClass",{configurable:!0,get:tl.prototype.pk}),Object.defineProperty(tl.prototype,"byteArrayClass",{configurable:!0,get:tl.prototype.qk}),Object.defineProperty(tl.prototype,"shortArrayClass",{configurable:!0,get:tl.prototype.rk}),Object.defineProperty(tl.prototype,"intArrayClass",{configurable:!0,get:tl.prototype.sk}),Object.defineProperty(tl.prototype,"longArrayClass",{configurable:!0,get:tl.prototype.tk}),Object.defineProperty(tl.prototype,"floatArrayClass",{configurable:!0,get:tl.prototype.uk}),Object.defineProperty(tl.prototype,"doubleArrayClass",{configurable:!0,get:tl.prototype.vk}),il.$metadata$=ap("Appendable"),ll.prototype.fe=function(){return this.ha_1.length},ll.prototype.ge=function(t){var n=this.ha_1;if(!(t>=0&&t<=eo(n)))throw ef("index: "+t+", length: "+this.fe()+"}");return Ec(n,t)},ll.prototype.he=function(t,n){return this.ha_1.substring(t,n)},ll.prototype.s9=function(t){return this.ha_1=this.ha_1+new oc(t),this},ll.prototype.b=function(t){return this.ha_1=this.ha_1+gc(t),this},ll.prototype.wk=function(t,n,e){var r=t;return this.ib(null==r?"null":r,n,e)},ll.prototype.fb=function(t){return this.ha_1=this.ha_1+gc(t),this},ll.prototype.gb=function(t){var n=this,e=this.ha_1,r=t;return n.ha_1=e+(null==r?"null":r),this},ll.prototype.hb=function(t,n){Dn().d2(t,this.fe());var e,r=this.ha_1.substring(0,t)+new oc(n);return e=this.ha_1.substring(t),this.ha_1=r+e,this},ll.prototype.xk=function(t){if(t<0)throw Dp("Negative new length: "+t+".");if(t<=this.fe()){var n;n=this.ha_1.substring(0,t),this.ha_1=n}else{var e=this.fe();if(eDc(t))throw ef("Start index out of bounds: "+n+", input length: "+Dc(t));return kl(this.aa_1,Hc(t),n,this.aa_1)},wl.prototype.fl=function(t,n,e,r){return 0!=(2&e)&&(n=0),this.el(t,n)},wl.prototype.gl=function(t,n){if(n<0||n>Dc(t))throw ef("Start index out of bounds: "+n+", input length: "+Dc(t));return e=this,r=t,o=n,new Se((function(){return e.el(r,o)}),bl);var e,r,o},wl.prototype.hl=function(t,n,e,r){return 0!=(2&e)&&(n=0),this.gl(t,n)},wl.prototype.ea=function(t,n){if(!io(n,92,!1,2)&&!io(n,36,!1,2)){var e=Hc(t),r=this.aa_1;return e.replace(r,n)}return this.il(t,$l(n))},wl.prototype.il=function(t,n){var e=this.fl(t,0,2,null);if(null==e)return Hc(t);var r=0,o=Dc(t),i=sl();do{var s=Yc(e);i.wk(t,r,s.sa().z8()),i.b(n(s)),r=s.sa().a9()+1|0,e=s.e()}while(r>>e|0|t.c1_1<<(32-e|0),t.c1_1>>>e|0):new eh(32===e?t.c1_1:t.c1_1>>>(e-32|0)|0,0)}(this,t)},eh.prototype.yc=function(t){return new eh(this.b1_1&t.b1_1,this.c1_1&t.c1_1)},eh.prototype.gn=function(t){return new eh(this.b1_1|t.b1_1,this.c1_1|t.c1_1)},eh.prototype.cb=function(t){return new eh(this.b1_1^t.b1_1,this.c1_1^t.c1_1)},eh.prototype.fn=function(){return new eh(~this.b1_1,~this.c1_1)},eh.prototype.hn=function(){return Sh(this.b1_1)},eh.prototype.in=function(){return qh(this.b1_1)},eh.prototype.xa=function(){return this.b1_1},eh.prototype.qi=function(){return _h(this)},eh.prototype.valueOf=function(){return this.qi()},eh.prototype.equals=function(t){return t instanceof eh&&dh(this,t)},eh.prototype.hashCode=function(){return t=this,Ch(),t.b1_1^t.c1_1;var t},eh.prototype.toString=function(){return vh(this,10)},eh.$metadata$=Th("Long",[Ps],void 0,void 0,void 0,Ds.prototype),vp.$metadata$=up("Digit"),mp.$metadata$=up("Letter"),bp.$metadata$=up("OtherLowercase"),xp.prototype.b5=function(){return Yc(this.o7_1)},xp.prototype.t7=function(){var t,n=this.p7_1;if(null==n){var e=this.b5().z7(Ge()),r=null==e?null:e.x7(this),o=null==r?this:r;this.p7_1=o,t=o}else t=n;return t},xp.prototype.u7=function(t){var n,e=this;if(ci(t))n=null;else{var r=t;n=null==r||Gh(r)?r:Xc()}for(var o=n,i=hi(t);;){var s=e;null==i?s.l7_1=o:(s.j7_1=s.k7_1,s.m7_1=i);try{var a=s.q7();if(a===lr())return Bs();o=a,i=null}catch(t){o=null,i=t}wp(s);var u=Yc(s.i7_1);if(!(u instanceof xp)){if(null!=i){var l,c=Yc(i);fi(),l=vi(c),u.z4(l),Bs()}else{var h,p=o;fi(),h=p,u.z4(h),Bs()}return Bs()}e=u,Bs()}},xp.prototype.z4=function(t){return this.u7(t)},xp.$metadata$=Th("CoroutineImpl",[Ke]),kp.prototype.b5=function(){throw Fp("This continuation is already complete")},kp.prototype.u7=function(t){throw Fp("This continuation is already complete")},kp.prototype.z4=function(t){return this.u7(t)},kp.prototype.toString=function(){return"This continuation is already complete"},kp.$metadata$=up("CompletedContinuation",[Ke]),Sp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;var t;return"function"==typeof(t=this.yn_1)?t(this.zn_1,this.xn_1):this.yn_1.r7(this.zn_1,this.xn_1)},Sp.$metadata$=Th(void 0,void 0,void 0,void 0,void 0,xp.prototype),zp.prototype.q7=function(){if(null!=this.m7_1)throw this.m7_1;return this.io_1()},zp.$metadata$=Th(void 0,void 0,void 0,void 0,void 0,xp.prototype),Pp.$metadata$=Th("Exception",void 0,void 0,void 0,void 0,Error.prototype),Ap.$metadata$=Th("Error",void 0,void 0,void 0,void 0,Error.prototype),Lp.$metadata$=Th("IllegalArgumentException",void 0,void 0,void 0,void 0,Xp.prototype),Up.$metadata$=Th("IllegalStateException",void 0,void 0,void 0,void 0,Xp.prototype),Kp.$metadata$=Th("NoSuchElementException",void 0,void 0,void 0,void 0,Xp.prototype),Xp.$metadata$=Th("RuntimeException",void 0,void 0,void 0,void 0,Pp.prototype),tf.$metadata$=Th("UnsupportedOperationException",void 0,void 0,void 0,void 0,Xp.prototype),nf.$metadata$=Th("ConcurrentModificationException",void 0,void 0,void 0,void 0,Xp.prototype),rf.$metadata$=Th("IndexOutOfBoundsException",void 0,void 0,void 0,void 0,Xp.prototype),sf.$metadata$=Th("AssertionError",void 0,void 0,void 0,void 0,Ap.prototype),uf.$metadata$=Th("ArithmeticException",void 0,void 0,void 0,void 0,Xp.prototype),cf.$metadata$=Th("NumberFormatException",void 0,void 0,void 0,void 0,Lp.prototype),pf.$metadata$=Th("NullPointerException",void 0,void 0,void 0,void 0,Xp.prototype),_f.$metadata$=Th("NoWhenBranchMatchedException",void 0,void 0,void 0,void 0,Xp.prototype),vf.$metadata$=Th("ClassCastException",void 0,void 0,void 0,void 0,Xp.prototype),mf.$metadata$=Th("UninitializedPropertyAccessException",void 0,void 0,void 0,void 0,Xp.prototype),ap("Function1"),ap("Function0"),kf.$metadata$=ap("SuspendFunction1"),jf.$metadata$=ap("SuspendFunction2"),sr.prototype.g8=Bt,ur.prototype.z7=Lt,ur.prototype.f8=Rt,ur.prototype.e8=Nt,ur.prototype.g8=Bt,Ua.prototype.vh=function(){var t=Object.create(null);return t.foo=1,$f(t,"foo"),t},W=null,Ot=0,t.$_$=t.$_$||{},t.$_$.a=function(t,n,e){return new Au(t,fp(n),e)},t.$_$.b=function(t,n){if(t instanceof bu&&n instanceof bu){var e,r=n.si().$metadata$,o=null==r?null:r.associatedObjectKey;if(null==(e=null==o?null:o))return null;var i=e,s=t.si().$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=nl().sj_1;break;case"number":n=bf(t,0)===t?nl().oj_1:nl().qj_1;break;case"boolean":n=nl().lj_1;break;case"function":var e;e=t,n=nl().functionClass(e.length);break;default:var r;if(Qh(t))r=nl().uj_1;else if(ep(t))r=nl().vj_1;else if(tp(t))r=nl().wj_1;else if(np(t))r=nl().xj_1;else if(rp(t))r=nl().yj_1;else if(ip(t))r=nl().zj_1;else if(op(t))r=nl().ak_1;else if(sp(t))r=nl().bk_1;else if(Nh(t,gu))r=el(gu);else if(Jh(t))r=nl().rj_1;else{var o=Object.getPrototypeOf(t).constructor;r=o===Object?nl().ij_1:o===Error?nl().tj_1:rl(o)}n=r}return n},t.$_$.d=el,t.$_$.e=function(t){var n=0,e=0,r=t.length-1|0;if(e<=r)do{var o=e;e=e+1|0,n=n+t[o].length|0}while(o!==r);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,l=t.length-1|0;if(u<=l)do{var c=u;u=u+1|0;var h=t[c],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(c!==l);return s},t.$_$.f=function(){return function(){if(rt)return Bs();rt=!0,new xl("IGNORE_CASE",0,"i"),et=new xl("MULTILINE",1,"m")}(),et},t.$_$.g=Wl,t.$_$.h=function(){return function(){if(P)return Bs();P=!0,new oi("SYNCHRONIZED",0),O=new oi("PUBLICATION",1),new oi("NONE",2)}(),O},t.$_$.i=function(t,n){return null==t||Gh(t)?t:Xc()},t.$_$.j=function(t,n,e,r,o,i){return 0!=(2&o)&&(e=0),0!=(4&o)&&(r=t.length),function(t,n,e,r){Dn().f2(e,r,t.length),t.fill(n,e,r)}(t,n,e,r)},t.$_$.k=en,t.$_$.l=Vt,t.$_$.m=function(t,n,e,r,o){return 0!=(2&r)&&(e=!1),Yr(t,n,e)},t.$_$.n=Zr,t.$_$.o=Gr,t.$_$.p=function(t,n,e,r,o,i){return 0!=(4&o)&&(r=!1),function(t,n,e,r){var o=new RegExp(gl().cl(n),r?"gui":"gu"),i=gl().dl(e);return t.replace(o,i)}(t,n,e,r)},t.$_$.q=function(t,n,e,r,o,i){return 0!=(2&o)&&(e=!1),0!=(4&o)&&(r=0),Jr(t,n,e,r)},t.$_$.r=El,t.$_$.s=ma,t.$_$.t=ya,t.$_$.u=ga,t.$_$.v=Ea,t.$_$.w=Ma,t.$_$.x=function(t){return function(t,n){return Pa(n),n.tg(t),n}(t,Object.create(Ia.prototype))},t.$_$.y=Ta,t.$_$.z=function(){return t=Object.create(La.prototype),va.call(t),La.call(t),t.jh_1=Ma(),t;var t},t.$_$.a1=function(t){return function(t,n){return va.call(n),La.call(n),n.jh_1=Ea(t.f()),n.k1(t),n}(t,Object.create(La.prototype))},t.$_$.b1=Za,t.$_$.c1=Ya,t.$_$.d1=function(t){return function(t,n){return Pa(n),Qa.call(n),n.e4_1=Ma(),n.tg(t),n}(t,Object.create(Qa.prototype))},t.$_$.e1=tu,t.$_$.f1=function(t){return function(t,n){return Ba(Ya(),n),ru.call(n),n.k1(t),n}(t,Object.create(ru.prototype))},t.$_$.g1=function t(n){var e=function(t,n){return Np(t,n),pu.call(n),n}(n,Object.create(pu.prototype));return Kc(e,t),e},t.$_$.h1=hu,t.$_$.i1=function t(n,e){var r=hu(n,e,Object.create(pu.prototype));return Kc(r,t),r},t.$_$.j1=function(t){return function(t,n){return cu.call(n,t,pr()),n}(t,Object.create(cu.prototype))},t.$_$.k1=function(t){return function(t,n){return wl.call(n,t,De()),n}(t,Object.create(wl.prototype))},t.$_$.l1=function(t,n){return function(t,n,e){return wl.call(e,t,Ys(n)),e}(t,n,Object.create(wl.prototype))},t.$_$.m1=sl,t.$_$.n1=ul,t.$_$.o1=function t(){var n,e=(Jp(n=Object.create(nf.prototype)),nf.call(n),n);return Kc(e,t),e},t.$_$.p1=function t(n){var e=function(t,n){return Gp(t,n),nf.call(n),n}(n,Object.create(nf.prototype));return Kc(e,t),e},t.$_$.q1=function(t,n,e){return Jc(e,t,n),Ap.call(e),e},t.$_$.r1=Ep,t.$_$.s1=Ip,t.$_$.t1=Dp,t.$_$.u1=Tp,t.$_$.v1=Rp,t.$_$.w1=Fp,t.$_$.x1=function t(n,e){var r=Hp(n,e,Object.create(Up.prototype));return Kc(r,t),r},t.$_$.y1=ef,t.$_$.z1=Vp,t.$_$.a2=Yp,t.$_$.b2=function t(n,e){var r=Yp(n,e,Object.create(Xp.prototype));return Kc(r,t),r},t.$_$.c2=Zp,t.$_$.d2=Qp,t.$_$.e2=function(t){var n=ul();qo(t)&&n.s9(45),n.gb("PT");var e=Po(t),r=To(e),o=Ao(e),i=Eo(e),s=Io(e),a=r;Oo(t)&&(a=new eh(1316134911,2328));var u=!a.equals(new eh(0,0)),l=0!==i||!(0===s),c=0!==o||!!l&&u;return u&&n.fb(a).s9(72),c&&n.fb(o).s9(77),(l||!u&&!c)&&(Lo(n,0,i,s,9,"S",!0),Bs()),n.toString()},t.$_$.f2=function(t){return function(t){var n,e=$o(t);if(wo(t))n=e;else{var r,o;if(nh(),r=new eh(-1,2147483647).u9(Mh(1e6)),e.d1(r)>0)nh(),n=new eh(-1,2147483647);else nh(),o=new eh(0,-2147483648).u9(Mh(1e6)),e.d1(o)<0?(nh(),n=new eh(0,-2147483648)):n=Ko(e)}return n}(t)},t.$_$.g2=Xl,t.$_$.h2=Ql,t.$_$.i2=tc,t.$_$.j2=nc,t.$_$.k2=ui,t.$_$.l2=hi,t.$_$.m2=ci,t.$_$.n2=li,t.$_$.o2=wi,t.$_$.p2=xi,t.$_$.q2=Si,t.$_$.r2=qi,t.$_$.s2=function(t){return new Int8Array(t)},t.$_$.t2=function(t,n){return t[n]},t.$_$.u2=function(t,n,e){var r;r=e,t[n]=r},t.$_$.v2=Pi,t.$_$.w2=Oi,t.$_$.x2=Di,t.$_$.y2=Ti,t.$_$.z2=Ni,t.$_$.a3=function(t){return new Int32Array(t)},t.$_$.b3=Hi,t.$_$.c3=function(t,n){return t[n]},t.$_$.d3=function(t,n,e){var r;r=e,t[n]=r},t.$_$.e3=Vi,t.$_$.f3=Ui,t.$_$.g3=Yi,t.$_$.h3=Xi,t.$_$.i3=ns,t.$_$.j3=function(t){return jc(t)},t.$_$.k3=rs,t.$_$.l3=function(t,n){return t[n]},t.$_$.m3=function(t,n,e){var r;r=e,t[n]=r},t.$_$.n3=is,t.$_$.o3=os,t.$_$.p3=cs,t.$_$.q3=hs,t.$_$.r3=ds,t.$_$.s3=function(t){return new Int16Array(t)},t.$_$.t3=ys,t.$_$.u3=function(t,n){return t[n]},t.$_$.v3=function(t,n,e){var r;r=e,t[n]=r},t.$_$.w3=gs,t.$_$.x3=ms,t.$_$.y3=Ge,t.$_$.z3=er,t.$_$.a4=function(){return null==V&&new Js,V},t.$_$.b4=function(){return null==L&&new Ls,L},t.$_$.c4=Ws,t.$_$.d4=Us,t.$_$.e4=Fs,t.$_$.f4=function(){return null==R&&new Rs,R},t.$_$.g4=function(){return null==U&&new Ks,U},t.$_$.h4=mr,t.$_$.i4=nl,t.$_$.j4=jo,t.$_$.k4=rc,t.$_$.l4=nh,t.$_$.m4=fi,t.$_$.n4=ji,t.$_$.o4=Li,t.$_$.p4=Qi,t.$_$.q4=fs,t.$_$.r4=Bs,t.$_$.s4=Cn,t.$_$.t4=Tn,t.$_$.u4=Wn,t.$_$.v4=ua,t.$_$.w4=Gn,t.$_$.x4=wa,t.$_$.y4=dc,t.$_$.z4=Ia,t.$_$.a5=La,t.$_$.b5=ic,t.$_$.c5=Ms,t.$_$.d5=Qa,t.$_$.e5=ru,t.$_$.f5=Es,t.$_$.g5=sc,t.$_$.h5=pc,t.$_$.i5=fc,t.$_$.j5=_c,t.$_$.k5=Is,t.$_$.l5=uc,t.$_$.m5=hc,t.$_$.n5=ac,t.$_$.o5=lc,t.$_$.p5=function(t,n){return t.k1(fp(n))},t.$_$.q5=de,t.$_$.r5=function(t,n,e,r,o){Dn().f2(r,o,t.length);var i=o-r|0;if(Dn().f2(e,e+i|0,n.length),Tt(n)&&Tt(t)){var s=t.subarray(r,o);n.set(s,e)}else if(t!==n||e<=r){var a=0;if(a=0))throw Dp(Hc("Invalid new array size: "+n+"."));return Zc(t,new Int16Array(n))},t.$_$.b6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));var e=Qc(t,n,new eh(0,0));return e.$type$="LongArray",e},t.$_$.c6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));var e=Qc(t,n,!1);return e.$type$="BooleanArray",e},t.$_$.d6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));var e=Zc(t,kc(n));return e.$type$="CharArray",e},t.$_$.e6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));return Zc(t,new Int8Array(n))},t.$_$.f6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));return Zc(t,new Float64Array(n))},t.$_$.g6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));return Zc(t,new Float32Array(n))},t.$_$.h6=hp,t.$_$.i6=function(t,n){if(!(n>=0))throw Dp(Hc("Invalid new array size: "+n+"."));return Zc(t,new Int32Array(n))},t.$_$.j6=na,t.$_$.k6=Yn,t.$_$.l6=he,t.$_$.m6=De,t.$_$.n6=cp,t.$_$.o6=function(t){return t.h()?null:t.g(0)},t.$_$.p6=function(t){if(Nh(t,sc))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(Nh(t,sc))return tn(t);var n=t.c();if(!n.d())throw Wp("Collection is empty.");return n.e()},t.$_$.s6=function(t){for(var n=ya(),e=t.c();e.d();)de(n,e.e());return n},t.$_$.t6=function(t,n){return function(t,n){if(Nh(t,ce))return t.v3(n);var e=t.b3(n);if(null==e&&!t.v2(n))throw Wp("Key "+n+" is missing in the map.");return null==e||Gh(e)?e:Xc()}(t,n)},t.$_$.u6=Ft,t.$_$.v6=function(t){return new Cr(0,function(t){return t.length-1|0}(t))},t.$_$.w6=function(t){return new Cr(0,Wt(t))},t.$_$.x6=function(t){return t.length-1|0},t.$_$.y6=Qn,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 Wp("List is empty.");return t.g(Qn(t))},t.$_$.c7=Xs,t.$_$.d7=function(t){return t.length>0?fp(t):Yn()},t.$_$.e7=Zs,t.$_$.f7=function(t){return t.length>0?(n=t,_e(e=Za(t.length),n),e):he();var n,e},t.$_$.g7=function(t,n){var e=function(t,n){var e=t;return Nh(e,lc)?t:Nh(e,dc)?(Nh(n,dc)&&n.f(),t):Zt(t)}(n,t);if(e.h())return Zt(t);for(var r=ya(),o=t.c();o.d();){var i=o.e();e.i(i)||r.a(i)}return r},t.$_$.h7=function(t){var n=t.c();if(!n.d())throw Vp();for(var e=n.e();n.d();){var r=n.e();Lc(e,r)>0&&(e=r)}return e},t.$_$.i7=Xn,t.$_$.j7=function(t){return Kt(t,eu(t.length))},t.$_$.k7=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 r=t.length,o=n.c();o.d();){var i=o.e(),s=r;r=s+1|0,e[s]=i}return e}(t,n)},t.$_$.l7=function(t,n){var e=function(t){return Nh(t,dc)?t.f():null}(n),r=null==e?null:t.f()+e|0,o=eu(null==r?It(t.f(),2):r);return o.k1(t),de(o,n),o},t.$_$.m7=function(t,n){return function(t,n,e){if(!Nh(t,ou))return ve(Nh(t,vc)?t:Xc(),n,e);var r=0,o=0,i=Qn(t);if(o<=i)do{var s=o;o=o+1|0;var a=t.g(s);n(a)!==e&&(r!==s&&t.p4(r,a),r=r+1|0)}while(s!==i);if(r0?function(t){switch(t.length){case 0:return De();case 1:return Ys(t[0]);default:return Kt(t,eu(t.length))}}(t):De()},t.$_$.r7=function(t){return 1===t.f()?t.g(0):null},t.$_$.s7=function(t,n){ea(t,n)},t.$_$.t7=function(t){if(Nh(t,dc)){if(t.f()<=1)return Zt(t);var n=na(t),e=Jh(n)?n:Xc();return function(t){t.length>1&&function(t){if(xa()){var n=Ca;t.sort(n)}else ka(t,0,Wt(t),Ue())}(t)}(e),fp(e)}var r=sn(t);return function(t){ea(t,Ue())}(r),r},t.$_$.u7=function(t){for(var n=xc(t.f()),e=0,r=t.c();r.d();){var o=r.e(),i=e;e=i+1|0,n[i]=o}return n},t.$_$.v7=function(t){for(var n=new Float32Array(t.f()),e=0,r=t.c();r.d();){var o=r.e(),i=e;e=i+1|0,n[i]=o}return n},t.$_$.w7=rn,t.$_$.x7=function(t){for(var n=new Int32Array(t.f()),e=0,r=t.c();r.d();){var o=r.e(),i=e;e=i+1|0,n[i]=o}return n},t.$_$.y7=Zt,t.$_$.z7=function(t){switch(t.length){case 0:return Yn();case 1:return Xs(t[0]);default:return function(t){return ga(function(t){return new ee(t,!1)}(t))}(t)}},t.$_$.a8=function(t){if(Nh(t,dc)){var n;switch(t.f()){case 0:n=he();break;case 1:e=Nh(t,sc)?t.g(0):t.c().e(),_e(o=Ea((r=[e]).length),r),n=o;break;default:n=fe(t,Za(t.f()))}return n}var e,r,o;return function(t){var n;n=0===t.f()?he():t;return n}(fe(t,Ya()))},t.$_$.b8=Qt,t.$_$.c8=on,t.$_$.d8=function(t){return new ae((n=t,function(){return wc(n)}));var n},t.$_$.e8=function(t,n){return t===n?0:null==t?-1:null==n?1:Lc(null!=t&&Xh(t)?t:Xc(),n)},t.$_$.f8=pu,t.$_$.g8=lr,t.$_$.h8=Cp,t.$_$.i8=jp,t.$_$.j8=ur,t.$_$.k8=ar,t.$_$.l8=function(t){if(t instanceof ar){var n;if(t.d8(this.l2())){var e=t.c8(this);n=null!=e&&Nh(e,Ze)?e:null}else n=null;return n}return Ge()===t?Nh(this,Ze)?this:Xc():null},t.$_$.m8=function(t){return t instanceof ar?t.d8(this.l2())&&null!=t.c8(this)?er():this:Ge()===t?er():this},t.$_$.n8=Ye,t.$_$.o8=Ke,t.$_$.p8=Rt,t.$_$.q8=Lt,t.$_$.r8=Nt,t.$_$.s8=Ze,t.$_$.t8=Xe,t.$_$.u8=Bt,t.$_$.v8=xp,t.$_$.w8=kf,t.$_$.x8=jf,t.$_$.y8=function(t,n,e){var r,o=jp(Cp(t,n,e));fi(),r=Bs(),o.z4(r),Bs()},t.$_$.z8=function(t){lu(),(lu(),J).ii(t)},t.$_$.a9=function(t){return Object.prototype.toString.call(t)},t.$_$.b9=wc,t.$_$.c9=xc,t.$_$.d9=Kc,t.$_$.e9=kc,t.$_$.f9=Ec,t.$_$.g9=Dc,t.$_$.h9=Tc,t.$_$.i9=Th,t.$_$.j9=Lc,t.$_$.k9=Uc,t.$_$.l9=Jc,t.$_$.m9=$c,t.$_$.n9=function(t,n,e,r){return Dh(),Ih(t,0,n,r,e?r:null)},t.$_$.o9=Mc,t.$_$.p9=Ih,t.$_$.q9=Wc,t.$_$.r9=Vc,t.$_$.s9=function(t){return new Sc(t)},t.$_$.t9=ap,t.$_$.u9=Jh,t.$_$.v9=Qh,t.$_$.w9=tp,t.$_$.x9=ep,t.$_$.y9=Zh,t.$_$.z9=sp,t.$_$.aa=op,t.$_$.ba=rp,t.$_$.ca=Nh,t.$_$.da=ip,t.$_$.ea=Gh,t.$_$.fa=np,t.$_$.ga=yu,t.$_$.ha=jc,t.$_$.ia=Ah,t.$_$.ja=Ph,t.$_$.ka=function(t){return+t},t.$_$.la=zh,t.$_$.ma=up,t.$_$.na=Sh,t.$_$.oa=Mh,t.$_$.pa=qh,t.$_$.qa=Hc,t.$_$.ra=br,t.$_$.sa=yn,t.$_$.ta=vn,t.$_$.ua=function(t,n){try{return function(t,n){if(n.h())throw Dp("Cannot get random in empty range: "+n);return n.g1_1Fs().x_1?t.o8(n.f1_1-1|0,n.g1_1)+1|0:t.q4()}(n,t)}catch(t){throw t instanceof Lp?Wp(t.message):t}},t.$_$.va=function(t,n){return function(t,n){if(!t)throw Dp("Step must be positive, was: "+Hc(n)+".")}(n>0,n),Mr().e1(t.f1_1,t.g1_1,t.h1_1>0?n:0|-n)},t.$_$.wa=fn,t.$_$.xa=gu,t.$_$.ya=qu,t.$_$.za=Su,t.$_$.ab=Cu,t.$_$.bb=Lr,t.$_$.cb=be,t.$_$.db=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();)e=n.e();return e},t.$_$.eb=function(t){return new ke(t)},t.$_$.fb=function(t,n){return function(t,n,e,r){return function(t,n,e,r,o){Le(n,e);var i=Dc(t),s=ma((i/e|0)+(0==(i%e|0)?0:1)|0),a=0;t:for(;0<=a&&ai){if(!r)break t;u=i}else u=l;var c=u;s.a(o(Tc(t,a,c))),a=a+e|0}return s}(t,n,e,r,kn)}(t,n,n,!0)},t.$_$.gb=Yr,t.$_$.hb=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 r=0,o=t.length;if(ro)return 0;var s=3&i;if(0===s){var a=2,u=r,l=0;if(l<=1)do{if(l=l+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(l<=1);return 3}if(i<=7)return s;var c=n-r|0;return i>>It(2,i<=31?c%2|0:c)&3}(t)||function(t){var n=dp($p().nn_1,t);return n>=0&&t<($p().nn_1[n]+$p().on_1[n]|0)}(tc(t))}(t)},t.$_$.kb=function(t){var n;switch(Dc(t)){case 0:throw Wp("Char sequence is empty.");case 1:n=Ec(t,0);break;default:throw Dp("Char sequence has more than one element.")}return n},t.$_$.lb=function(t){return pn(t)},t.$_$.mb=function(t){return null!=t&&"true"===t.toLowerCase()},t.$_$.nb=function(t){var n=+t;return du(n)&&!yl(t)||0===n&&Il(t)?null:n},t.$_$.ob=dl,t.$_$.pb=Vr,t.$_$.qb=fl,t.$_$.rb=Ur,t.$_$.sb=vl,t.$_$.tb=function(t){var n,e=function(t){return function(t,n){var e=js(t,n);if(null==(null==e?null:new Fi(e)))return null;var r=e;ji();var o=255;return Cs(r,o)>0?null:Sh(r)}(t,10)}(t);return null==(null==e?null:new zi(e))?Wr(t):n=e,n},t.$_$.ub=function(t){var n,e=function(t){return js(t,10)}(t);return null==(null==e?null:new Fi(e))?Wr(t):n=e,n},t.$_$.vb=ks,t.$_$.wb=function(t){var n,e=ks(t);return null==(null==e?null:new es(e))?Wr(t):n=e,n},t.$_$.xb=function(t){var n,e=function(t){return function(t,n){var e=js(t,n);if(null==(null==e?null:new Fi(e)))return null;var r=e;fs();var o=65535;return Cs(r,o)>0?null:qh(r)}(t,10)}(t);return null==(null==e?null:new vs(e))?Wr(t):n=e,n},t.$_$.yb=function(t){return function(t,n){for(var e=function(t){return bn(no(t))}(t),r=ya(),o=e.c();o.d();){var i=o.e();Kr(i)&&r.a(i)}for(var s=r,a=ma(se(s,10)),u=s.c();u.d();){var l=u.e();a.a(Fr(l))}for(var c=function(t){var n=t.c();if(!n.d())return null;for(var e=n.e();n.d();){var r=n.e();Lc(e,r)>0&&(e=r)}return e}(a),h=null==c?0:c,p=t.length+It(n.length,e.f())|0,f=function(t){return 0===Dc(t)?Hr:(n=t,function(t){return n+t});var n}(n),_=Qn(e),d=ya(),v=0,y=e.c();y.d();){var m=y.e(),g=v;v=g+1|0;var b,$,w,x=ta(g);0!==x&&x!==_||!Il(m)?b=null==(w=null==($=xn(m,h))?null:f($))?m:w:b=null;var k=b;null==k||(d.a(k),Bs())}return function(t,n,e,r,o,i,s,a,u,l){return 0!=(2&u)&&(e=", "),0!=(4&u)&&(r=""),0!=(8&u)&&(o=""),0!=(16&u)&&(i=-1),0!=(32&u)&&(s="..."),0!=(64&u)&&(a=null),an(t,n,e,r,o,i,s,a)}(d,sl(p),"\n",null,null,0,null,null,124).toString()}(t,"")},t.$_$.zb=function(t){var n;t:{var e=0,r=Dc(t)-1|0;if(e<=r)do{var o=e;if(e=e+1|0,!hl(Ec(t,o))){n=Tc(t,o,Dc(t));break t}}while(e<=r);n=""}return n},t.$_$.ac=function(t){var n=0,e=Dc(t)-1|0,r=!1;t:for(;n<=e;){var o=hl(Ec(t,r?e:n));if(r){if(!o)break t;e=e-1|0}else o?n=n+1|0:r=!0}return Tc(t,n,e+1|0)},t.$_$.bc=Ro,t.$_$.cc=No,t.$_$.dc=qs,t.$_$.ec=oc,t.$_$.fc=Gs,t.$_$.gc=ti,t.$_$.hc=Qo,t.$_$.ic=mc,t.$_$.jc=Ap,t.$_$.kc=Pp,t.$_$.lc=Lp,t.$_$.mc=eh,t.$_$.nc=gi,t.$_$.oc=di,t.$_$.pc=Xp,t.$_$.qc=Xc,t.$_$.rc=function(){throw Rp()},t.$_$.sc=$i,t.$_$.tc=Ii,t.$_$.uc=zi,t.$_$.vc=Gi,t.$_$.wc=Fi,t.$_$.xc=ls,t.$_$.yc=es,t.$_$.zc=xs,t.$_$.ad=vs,t.$_$.bd=Ts,t.$_$.cd=tf,t.$_$.dd=function(t,n){if(t!==n){var e=t._suppressed;null==e?t._suppressed=Xn([n]):e.a(n)}},t.$_$.ed=function(t){return t},t.$_$.fd=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.$_$.gd=function(t){var n,e=t.b1_1;return 0===e?(Fs(),n=32+vu(t.c1_1)|0):n=vu(e),n},t.$_$.hd=vi,t.$_$.id=Yc,t.$_$.jd=function(t,n){return ei(),new ni(t.nb_1,n).sb()},t.$_$.kd=function(t){return!function(t){var n;return Ws(),t===1/0?n=!0:(Ws(),n=t===-1/0),n}(t)&&!du(t)},t.$_$.ld=function(t){return!function(t){var n;return Us(),t===1/0?n=!0:(Us(),n=t===-1/0),n}(t)&&!function(t){return!(t==t)}(t)},t.$_$.md=function(t,n){return new ii(n)},t.$_$.nd=function(t){return new ii(t)},t.$_$.od=function(){throw ff()},t.$_$.pd=bc,t.$_$.qd=function(t){console.error(function(t){return(new Ll).cm(t)}(t))},t.$_$.rd=function(t,n){var e=t<>>(32-n|0)|0},t.$_$.sd=function(t,n){return Fs(),t<<(32-n|0)|t>>>n|0},t.$_$.td=function(t){throw yf("lateinit property "+t+" has not been initialized")},t.$_$.ud=gc,t.$_$.vd=bi,t})?e.apply(n,[n]):e)||(t.exports=r)},645:function(t,n,e){var r,o;r=[n,e(744)],void 0===(o=function(t,n){"use strict";var e,r,o,i,s,a,u,l,c,h,p,f,_,d,v,y,m,g,b,$,w,x,k,j,C,S,z,q,O,P,M,A,E,I,D,T,B,L,R,N,F,H,U,V,W,K,J,G,Y,X,Z,Q,tt,nt,et,rt,ot,it,st,at,ut,lt,ct=Math.imul,ht=n.$_$.t9,pt=n.$_$.g4,ft=n.$_$.r4,_t=n.$_$.k6,dt=n.$_$.h,vt=n.$_$.md,yt=n.$_$.i9,mt=n.$_$.c,gt=n.$_$.ab,bt=n.$_$.p9,$t=n.$_$.s1,wt=n.$_$.d9,xt=n.$_$.u1,kt=n.$_$.lc,jt=n.$_$.w5,Ct=n.$_$.s,St=n.$_$.qc,zt=n.$_$.xa,qt=n.$_$.ca,Ot=n.$_$.sc,Pt=n.$_$.d,Mt=n.$_$.nc,At=n.$_$.h5,Et=n.$_$.d5,It=n.$_$.m5,Dt=n.$_$.i5,Tt=n.$_$.z4,Bt=n.$_$.e5,Lt=n.$_$.n5,Rt=n.$_$.o5,Nt=n.$_$.a5,Ft=n.$_$.x4,Ht=n.$_$.l5,Ut=n.$_$.g5,Vt=n.$_$.y4,Wt=n.$_$.j6,Kt=n.$_$.qa,Jt=n.$_$.t1,Gt=n.$_$.l2,Yt=n.$_$.n2,Xt=n.$_$.ea,Zt=n.$_$.m2,Qt=n.$_$.oc,tn=n.$_$.id,nn=n.$_$.k9,en=n.$_$.q9,rn=n.$_$.c5,on=n.$_$.b5,sn=n.$_$.ib,an=n.$_$.z7,un=n.$_$.t,ln=n.$_$.z,cn=n.$_$.w7,hn=n.$_$.u7,pn=n.$_$.d8,fn=n.$_$.vd,_n=n.$_$.a8,dn=n.$_$.nd,vn=n.$_$.y5,yn=n.$_$.wa,mn=n.$_$.k,gn=n.$_$.ma,bn=n.$_$.mc,$n=n.$_$.ec,wn=n.$_$.e2,xn=n.$_$.bc,kn=n.$_$.j4,jn=n.$_$.pb,Cn=n.$_$.r9,Sn=n.$_$.w1,zn=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.$_$.u9,Tn=n.$_$.b9,Bn=n.$_$.s5,Ln=n.$_$.va,Rn=n.$_$.t6,Nn=n.$_$.ha,Fn=n.$_$.l4,Hn=n.$_$.x6,Un=n.$_$.gd,Vn=n.$_$.y,Wn=n.$_$.bb,Kn=n.$_$.m9,Jn=n.$_$.c9,Gn=n.$_$.l6,Yn=n.$_$.z5,Xn=n.$_$.k4,Zn=n.$_$.x9,Qn=n.$_$.e9,te=n.$_$.c4,ne=n.$_$.z9,ee=n.$_$.d4,re=n.$_$.aa,oe=n.$_$.da,ie=n.$_$.p4,se=n.$_$.n3,ae=n.$_$.xc,ue=n.$_$.j3,le=n.$_$.g3,ce=n.$_$.l3,he=n.$_$.h3,pe=n.$_$.e4,fe=n.$_$.ba,_e=n.$_$.o4,de=n.$_$.e3,ve=n.$_$.vc,ye=n.$_$.a3,me=n.$_$.x2,ge=n.$_$.c3,be=n.$_$.y2,$e=n.$_$.f4,we=n.$_$.fa,xe=n.$_$.q4,ke=n.$_$.w3,je=n.$_$.zc,Ce=n.$_$.s3,Se=n.$_$.p3,ze=n.$_$.u3,qe=n.$_$.q3,Oe=n.$_$.b4,Pe=n.$_$.w9,Me=n.$_$.n4,Ae=n.$_$.v2,Ee=n.$_$.tc,Ie=n.$_$.s2,De=n.$_$.o2,Te=n.$_$.t2,Be=n.$_$.p2,Le=n.$_$.a4,Re=n.$_$.v9,Ne=n.$_$.sa,Fe=n.$_$.d6,He=n.$_$.f6,Ue=n.$_$.g6,Ve=n.$_$.b6,We=n.$_$.o3,Ke=n.$_$.k3,Je=n.$_$.m3,Ge=n.$_$.i6,Ye=n.$_$.f3,Xe=n.$_$.b3,Ze=n.$_$.d3,Qe=n.$_$.a6,tr=n.$_$.x3,nr=n.$_$.t3,er=n.$_$.v3,rr=n.$_$.e6,or=n.$_$.w2,ir=n.$_$.r2,sr=n.$_$.u2,ar=n.$_$.c6,ur=n.$_$.bd,lr=n.$_$.yb,cr=n.$_$.hb,hr=n.$_$.g9,pr=n.$_$.f9,fr=n.$_$.j2,_r=n.$_$.lb,dr=n.$_$.jb,vr=n.$_$.i4,yr=n.$_$.yc,mr=n.$_$.wc,gr=n.$_$.ad,br=n.$_$.uc,$r=n.$_$.f7,wr=n.$_$.a7,xr=n.$_$.y6,kr=n.$_$.dc,jr=n.$_$.ga,Cr=n.$_$.b,Sr=n.$_$.w6,zr=n.$_$.y1,qr=n.$_$.v6,Or=n.$_$.m4,Pr=n.$_$.k2,Mr=n.$_$.hd;function Ar(){return!1}function Er(){return!1}function Ir(){return _t()}function Dr(t){return t.x2c(this)}function Tr(){return!1}function Br(t){return-1}function Lr(t,n,e,r,o,i){return 0!=(8&o)&&(r=null),null==i?this.g2g(t,n,e,r):i(t,n,e,r)}function Rr(){}function Nr(t,n){return this.u2f(t)}function Fr(t,n){t.w2c(this,n)}function Hr(){return Os()}function Ur(){}function Vr(){}function Wr(){}function Kr(t){return function(){return n=Xo("kotlinx.serialization.Polymorphic",(null==c&&new li,c),[],function(t){return function(n){var e=go(pt()).v2c();n.g2d("type",e,null,!1,12,null);var r=Xo("kotlinx.serialization.Polymorphic<"+t.h2d_1.ti()+">",si(),[],null,12);return n.g2d("value",r,null,!1,12,null),n.a2d_1=t.i2d_1,ft()}}(t),4),e=t.h2d_1,new Wo(n,e);var n,e}}function Jr(t){Bi.call(this),this.h2d_1=t,this.i2d_1=_t();var n=dt();this.j2d_1=vt(n,Kr(this))}function Gr(t,n,e){var r,o=t.m2d(n,e);return null==o?function(t,n){var e=t.ti();Li(null==e?""+t:e,n)}(mt(e),t.k2d()):r=o,r}function Yr(t,n,e){var r,o=t.l2d(n,e);return null==o?Li(e,t.k2d()):r=o,r}function Xr(){}function Zr(){}function Qr(){}function to(t,n){return $t(t,n),eo.call(n),n}function no(t){var n=to(t,Object.create(eo.prototype));return wt(n,no),n}function eo(){wt(this,eo)}function ro(t){to(t,this),wt(this,ro)}function oo(t,n){var e=function(t,n,e){return io.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(io.prototype));return wt(e,oo),e}function io(t,n,e){(function(t,n,e){xt(t,n,e),eo.call(e)})(n,e,this),this.q2d_1=t,wt(this,io)}function so(t){var n=function(t){var n,e=Fa(t,[]);if(null==e){var r=jr(t).Companion,o=null==r?null:r.serializer();n=null!=o&&qt(o,Ur)?o:null}else n=e;return n}(t);return null==n?function(t){ma();var n=ra().b3(t);return null==n||qt(n,Ur)?n:St()}(t):n}function ao(t,n,e){var r;if(e){for(var o=Ct(jt(n,10)),i=n.c();i.d();){var s;s=lo(t,i.e()),o.a(s)}r=o}else{for(var a=Ct(jt(n,10)),u=n.c();u.d();){var l,c=co(t,u.e());if(null==c)return null;l=c,a.a(l)}r=a}return r}function uo(t,n,e){var r=function(t,n,e){var r,o=t;if(o.equals(Pt(Vt))||o.equals(Pt(Ut))||o.equals(Pt(Ht))||o.equals(Pt(Ft)))r=new Xi(e.g(0));else if(o.equals(Pt(Nt)))r=new Zi(e.g(0));else if(o.equals(Pt(Rt))||o.equals(Pt(Lt))||o.equals(Pt(Bt)))r=new Qi(e.g(0));else if(o.equals(Pt(Tt)))r=new ts(e.g(0),e.g(1));else if(o.equals(Pt(Dt))||o.equals(Pt(It))||o.equals(Pt(Et)))r=new ns(e.g(0),e.g(1));else if(o.equals(Pt(At)))p=e.g(0),f=e.g(1),r=new xa(p,f);else if(o.equals(Pt(Mt)))r=function(t,n){return new ka(t,n)}(e.g(0),e.g(1));else if(o.equals(Pt(Ot)))l=e.g(0),c=e.g(1),h=e.g(2),r=new ja(l,c,h);else{var i;if(t.equals(vr().lk())){var s=n.g(0).cj();a=null!=s&&qt(s,zt)?s:St(),u=e.g(0),i=new es(a,u)}else i=null;r=i}var a,u;var l,c,h;var p,f;return r}(t,n,e);return null==r?function(t,n){return Fa(t,Wt(n).slice())}(t,e):r}function lo(t,n){var e,r=ho(t,n,!0);return null==r?function(t){throw no("Serializer for class '"+t.ti()+"' 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=r,e}function co(t,n){return ho(t,n,!1)}function ho(t,n,s){for(var a=xs(n),u=n.ej(),l=n.dj(),c=Ct(jt(l,10)),h=l.c();h.d();){var p,f=h.e().s2d_1;if(null==f)throw Jt(Kt("Star projections in type arguments are not allowed, but had "+n));p=f,c.a(p)}var _,d,v=c;if(v.h())_=function(t,n){var o;if(yo(),n)o=(yo(),r).v2d(t);else{var i=(yo(),e).v2d(t);o=null==i?null:null!=i&&qt(i,Ur)?i:St()}return o}(a,u);else{var y,m=function(t,n,e){var r;if(yo(),e)r=(yo(),i).w2d(t,n);else{var s=(yo(),o).w2d(t,n);r=new Qt(s)instanceof Qt?s:St()}return r}(a,v,u);if(s){var g;if(Zt(m))g=null;else{var b=Yt(m);g=null==b||Xt(b)?b:St()}y=g}else{if(null!=Gt(m))return null;var $=Yt(m);y=null==$||Xt($)?$:St()}_=y}if(null!=_)return _;if(v.h())d=t.u2d(a,null,2,null);else{var w=ao(t,v,s);if(null==w)return null;var x=w,k=uo(a,v,x);d=null==k?t.t2d(a,x):k}var j,C=d;return null==(j=null==C?null:null!=C&&qt(C,Ur)?C:St())?null:function(t,n){return n?mo(t):qt(t,Ur)?t:St()}(j,u)}function po(t){return yo(),so(t)}function fo(t){yo();var n=so(t),e=null==n?null:mo(n);return null==e?null:null!=e&&qt(e,Ur)?e:St()}function _o(t,n){return yo(),uo(t,n,tn(ao(Ta(),n,!0)))}function vo(t,n){yo();var e=uo(t,n,tn(ao(Ta(),n,!0))),r=null==e?null:mo(e);return null==r?null:null!=r&&qt(r,Ur)?r:St()}function yo(){s||(s=!0,e=Ra(po),r=Ra(fo),o=Na(_o),i=Na(vo))}function mo(t){return t.v2c().x2d()?qt(t,Ur)?t:St():new vs(t)}function go(t){return ia()}function bo(t){return null==W&&new sa,W}function $o(){return null==M&&new As,M}function wo(t){return null==K&&new aa,K}function xo(){return null==A&&new Es,A}function ko(t){return null==J&&new ua,J}function jo(){return null==E&&new Is,E}function Co(t){return null==G&&new la,G}function So(){return null==I&&new Ds,I}function zo(t){return null==ot&&new Sa,ot}function qo(){return null==D&&new Ts,D}function Oo(t){return null==Y&&new ca,Y}function Po(){return null==T&&new Bs,T}function Mo(t){return null==it&&new za,it}function Ao(){return null==B&&new Ls,B}function Eo(t){return null==X&&new ha,X}function Io(){return null==L&&new Rs,L}function Do(t){return null==st&&new qa,st}function To(){return null==R&&new Ns,R}function Bo(t){return null==Z&&new pa,Z}function Lo(){return null==N&&new Fs,N}function Ro(t){return null==at&&new Oa,at}function No(){return null==F&&new Hs,F}function Fo(t){return null==Q&&new fa,Q}function Ho(){return null==H&&new Us,H}function Uo(t){return null==tt&&new _a,tt}function Vo(t){return null==j&&new Ri,j}function Wo(t,n){this.y2d_1=t,this.z2d_1=n,this.a2e_1=this.y2d_1.b2e()+"<"+this.z2d_1.ti()+">"}function Ko(t){var n=t;return n instanceof Wo?t.z2d_1:n instanceof ys?Ko(t.l2e_1):null}function Jo(){}function Go(t){this.p2e_1=t,this.o2e_1=t.d2e()}function Yo(t){this.q2e_1=t}function Xo(t,n,e,r,o,i){return 0!=(8&o)&&(r=ei),function(t,n,e,r){if(sn(t))throw Jt(Kt("Blank serial names are prohibited"));if(nn(n,xi()))throw Jt(Kt("For StructureKind.CLASS please use 'buildClassSerialDescriptor' instead"));var o=new Zo(t);return r(o),new ni(t,n,o.b2d_1.f(),an(e),o)}(t,n,e,r)}function Zo(t){this.y2c_1=t,this.z2c_1=!1,this.a2d_1=_t(),this.b2d_1=un(),this.c2d_1=ln(),this.d2d_1=un(),this.e2d_1=un(),this.f2d_1=un()}function Qo(t,n,e,r,o){return 0!=(4&r)&&(e=ri),function(t,n,e){if(sn(t))throw Jt(Kt("Blank serial names are prohibited"));var r=new Zo(t);return e(r),new ni(t,xi(),r.b2d_1.f(),an(n),r)}(t,n,e)}function ti(t){return bt("_hashCode",1,gt,(function(t){return ti(t)}),null),t.d2f_1.n2()}function ni(t,n,e,r,o){this.s2e_1=t,this.t2e_1=n,this.u2e_1=e,this.v2e_1=o.a2d_1,this.w2e_1=cn(o.b2d_1);var i,s=o.b2d_1;i=Wt(s),this.x2e_1=i,this.y2e_1=ks(o.d2d_1);var a,u,l=o.e2d_1;a=Wt(l),this.z2e_1=a,this.a2f_1=hn(o.f2d_1);for(var c,h=pn(this.x2e_1),p=Ct(jt(h,10)),f=h.c();f.d();){var _,d=f.e();_=fn(d.p3_1,d.o3_1),p.a(_)}c=p,this.b2f_1=_n(c),this.c2f_1=ks(r),this.d2f_1=dn((u=this,function(){return qs(u,u.c2f_1)}))}function ei(t){return ft()}function ri(t){return ft()}function oi(){a=this,ai.call(this)}function ii(){u=this,ai.call(this)}function si(){return null==u&&new ii,u}function ai(){}function ui(){l=this,ci.call(this)}function li(){c=this,ci.call(this)}function ci(){ai.call(this)}function hi(){h=this,$i.call(this)}function pi(){p=this,$i.call(this)}function fi(){f=this,$i.call(this)}function _i(){_=this,$i.call(this)}function di(){d=this,$i.call(this)}function vi(){v=this,$i.call(this)}function yi(){y=this,$i.call(this)}function mi(){m=this,$i.call(this)}function gi(){g=this,$i.call(this)}function bi(){return null==g&&new gi,g}function $i(){ai.call(this)}function wi(){b=this,qi.call(this)}function xi(){return null==b&&new wi,b}function ki(){$=this,qi.call(this)}function ji(){return null==$&&new ki,$}function Ci(){w=this,qi.call(this)}function Si(){return null==w&&new Ci,w}function zi(){x=this,qi.call(this)}function qi(){ai.call(this)}function Oi(){}function Pi(){}function Mi(){}function Ai(){k=this,this.m2h_1=-1,this.n2h_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.ti()+"'";throw no(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 Ri(){j=this,this.r2h_1=new va("kotlin.time.Duration",bi())}function Ni(){}function Fi(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 Ki(t){Gi.call(this,t)}function Ji(t){Gi.call(this,t),this.k2i_1=t.b2e()+"Array"}function Gi(t){this.w2h_1=t,this.x2h_1=1}function Yi(t,n,e){this.c2i_1=t,this.d2i_1=n,this.e2i_1=e,this.f2i_1=2}function Xi(t){rs.call(this,t),this.m2i_1=new Fi(t.v2c())}function Zi(t){rs.call(this,t),this.h2j_1=new Hi(t.v2c())}function Qi(t){rs.call(this,t),this.o2j_1=new Ui(t.v2c())}function ts(t,n){os.call(this,t,n),this.v2j_1=new Vi(t.v2c(),n.v2c())}function ns(t,n){os.call(this,t,n),this.k2k_1=new Wi(t.v2c(),n.v2c())}function es(t,n){is.call(this,n),this.p2k_1=t,this.q2k_1=new Ki(n.v2c())}function rs(t){is.call(this,t)}function os(t,n){ss.call(this),this.e2k_1=t,this.f2k_1=n}function is(t){ss.call(this),this.a2j_1=t}function ss(){}function as(t){is.call(this,t),this.z2k_1=new Ji(t.v2c())}function us(){}function ls(){C=this,this.g2l_1=Nn(0)}function cs(){return null==C&&new ls,C}function hs(t,n){cs(),this.h2l_1=t,this.i2l_1=n;var e=this.h2l_1.d2e();if(Fn(),e<=64){var r;Fn(),r=64===e?new bn(0,0):new bn(-1,-1).lb(e),this.j2l_1=r,this.k2l_1=cs().g2l_1}else this.j2l_1=new bn(0,0),this.k2l_1=function(t,n){var e=(n-1|0)>>>6|0;Fn();var r=63&n,o=Nn(e);return 0!==r&&(o[Hn(o)]=new bn(-1,-1).lb(n)),o}(0,e)}function ps(t,n){return new fs(t,new _s(n))}function fs(t,n){zs.call(this,t,n,1),this.z2l_1=!0}function _s(t){this.o2m_1=t}function ds(){S=this,Pi.call(this),this.r2m_1=Ta()}function vs(t){this.s2m_1=t,this.t2m_1=new ys(this.s2m_1.v2c())}function ys(t){this.l2e_1=t,this.m2e_1=this.l2e_1.b2e()+"?",this.n2e_1=ws(this.l2e_1)}function ms(t,n){return function(){var e=(null==x&&new zi,x);return Xo(t,e,[],function(t){return function(n){return n.a2d_1=t.w2m_1,ft()}}(n),4)}}function gs(t,n){this.v2m_1=n,this.w2m_1=_t();var e=dt();this.x2m_1=vt(e,ms(t,this))}function bs(){}function $s(){}function ws(t){if(js(),qt(t,Ni))return t.e2f();var n=Vn(t.d2e()),e=0,r=t.d2e();if(e0){var e,r=pr(t,0);e=dr(r)?_r(r):fr(r),n=Kt(e)+t.substring(1)}else n=t;return n}function ma(){nt||(nt=!0,U=$r([fn(vr().mk(),go(pt())),fn(Pt($n),bo(Xn())),fn(vr().pk(),$o()),fn(vr().kk(),wo(te())),fn(vr().vk(),xo()),fn(vr().jk(),ko(ee())),fn(vr().uk(),jo()),fn(Pt(bn),Co(Fn())),fn(vr().tk(),So()),fn(Pt(yr),zo(ie())),fn(Pt(ae),qo()),fn(vr().ik(),Oo(pe())),fn(vr().sk(),Po()),fn(Pt(mr),Mo(_e())),fn(Pt(ve),Ao()),fn(vr().hk(),Eo($e())),fn(vr().rk(),Io()),fn(Pt(gr),Do(xe())),fn(Pt(je),To()),fn(vr().gk(),Bo(Oe())),fn(vr().qk(),Lo()),fn(Pt(br),Ro(Me())),fn(Pt(Ee),No()),fn(vr().fk(),Fo(Le())),fn(vr().ok(),Ho()),fn(Pt(ur),Uo(ft())),fn(Pt(xn),Vo(kn()))]))}function ga(){ba.call(this)}function ba(){var t;t=un(),this.o2s_1=t,this.p2s_1=!1}function $a(){return rt||(rt=!0,et=new Object),et}function wa(t,n){this.g2t_1=t,this.h2t_1=n}function xa(t,n){Ca.call(this,t,n);var e,r,o=Si();this.k2t_1=Xo("kotlin.collections.Map.Entry",o,[],(e=t,r=n,function(t){var n=e.v2c();t.g2d("key",n,null,!1,12,null);var o=r.v2c();return t.g2d("value",o,null,!1,12,null),ft()}),4)}function ka(t,n){var e,r;Ca.call(this,t,n),this.v2t_1=Qo("kotlin.Pair",[],(e=t,r=n,function(t){var n=e.v2c();t.g2d("first",n,null,!1,12,null);var o=r.v2c();return t.g2d("second",o,null,!1,12,null),ft()}),2)}function ja(t,n,e){var r;this.y2t_1=t,this.z2t_1=n,this.a2u_1=e,this.b2u_1=Qo("kotlin.Triple",[],(r=this,function(t){var n=r.y2t_1.v2c();t.g2d("first",n,null,!1,12,null);var e=r.z2t_1.v2c();t.g2d("second",e,null,!1,12,null);var o=r.a2u_1.v2c();return t.g2d("third",o,null,!1,12,null),ft()}),2)}function Ca(t,n){this.q2t_1=t,this.r2t_1=n}function Sa(){ot=this,this.d2u_1=ps("kotlin.ULong",Co(Fn()))}function za(){it=this,this.g2u_1=ps("kotlin.UInt",Oo(pe()))}function qa(){st=this,this.j2u_1=ps("kotlin.UShort",Eo($e()))}function Oa(){at=this,this.m2u_1=ps("kotlin.UByte",Bo(Oe()))}function Pa(){return lt||(lt=!0,ut=new Aa(Gn(),Gn(),Gn(),Gn(),Gn())),ut}function Ma(){}function Aa(t,n,e,r,o){Ma.call(this),this.q2u_1=t,this.r2u_1=n,this.s2u_1=e,this.t2u_1=r,this.u2u_1=o}function Ea(){}function Ia(){}function Da(){}function Ta(){return Pa()}function Ba(){}function La(t){this.f2v_1=t}function Ra(t){return new Va(t)}function Na(t){return new Wa(t)}function Fa(t,n){var e;try{var r,o=Cr(t,Pt(La));if(null!=o&&qt(o,Ur))r=null!=o&&qt(o,Ur)?o:St();else if(null!=o&&qt(o,Ps)){var i=o.y2m(n.slice());r=qt(i,Ur)?i:St()}else r=function(t){var n=jr(t).$metadata$;return"interface"==(null==n?null:n.kind)}(t)?new Jr(t):null;e=r}catch(t){e=null}return e}function Ha(t,n){if(!(0<=n&&n<=(t.length-1|0)))throw zr("Index "+n+" out of bounds "+Sr(t));return t[n]}function Ua(t,n){if(!(0<=n&&n<=(t.length-1|0)))throw zr("Index "+n+" out of bounds "+qr(t));return t[n]}function Va(t){this.g2v_1=t}function Wa(t){this.h2v_1=t}return Jr.prototype=Object.create(Bi.prototype),Jr.prototype.constructor=Jr,Xr.prototype=Object.create(Bi.prototype),Xr.prototype.constructor=Xr,eo.prototype=Object.create(kt.prototype),eo.prototype.constructor=eo,ro.prototype=Object.create(eo.prototype),ro.prototype.constructor=ro,io.prototype=Object.create(eo.prototype),io.prototype.constructor=io,oi.prototype=Object.create(ai.prototype),oi.prototype.constructor=oi,ii.prototype=Object.create(ai.prototype),ii.prototype.constructor=ii,ci.prototype=Object.create(ai.prototype),ci.prototype.constructor=ci,ui.prototype=Object.create(ci.prototype),ui.prototype.constructor=ui,li.prototype=Object.create(ci.prototype),li.prototype.constructor=li,$i.prototype=Object.create(ai.prototype),$i.prototype.constructor=$i,hi.prototype=Object.create($i.prototype),hi.prototype.constructor=hi,pi.prototype=Object.create($i.prototype),pi.prototype.constructor=pi,fi.prototype=Object.create($i.prototype),fi.prototype.constructor=fi,_i.prototype=Object.create($i.prototype),_i.prototype.constructor=_i,di.prototype=Object.create($i.prototype),di.prototype.constructor=di,vi.prototype=Object.create($i.prototype),vi.prototype.constructor=vi,yi.prototype=Object.create($i.prototype),yi.prototype.constructor=yi,mi.prototype=Object.create($i.prototype),mi.prototype.constructor=mi,gi.prototype=Object.create($i.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,zi.prototype=Object.create(qi.prototype),zi.prototype.constructor=zi,Fi.prototype=Object.create(Gi.prototype),Fi.prototype.constructor=Fi,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,Ki.prototype=Object.create(Gi.prototype),Ki.prototype.constructor=Ki,Ji.prototype=Object.create(Gi.prototype),Ji.prototype.constructor=Ji,is.prototype=Object.create(ss.prototype),is.prototype.constructor=is,rs.prototype=Object.create(is.prototype),rs.prototype.constructor=rs,Xi.prototype=Object.create(rs.prototype),Xi.prototype.constructor=Xi,Zi.prototype=Object.create(rs.prototype),Zi.prototype.constructor=Zi,Qi.prototype=Object.create(rs.prototype),Qi.prototype.constructor=Qi,os.prototype=Object.create(ss.prototype),os.prototype.constructor=os,ts.prototype=Object.create(os.prototype),ts.prototype.constructor=ts,ns.prototype=Object.create(os.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(zs.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,Rs.prototype=Object.create(as.prototype),Rs.prototype.constructor=Rs,Ns.prototype=Object.create(as.prototype),Ns.prototype.constructor=Ns,Fs.prototype=Object.create(as.prototype),Fs.prototype.constructor=Fs,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,Ks.prototype=Object.create(us.prototype),Ks.prototype.constructor=Ks,Js.prototype=Object.create(us.prototype),Js.prototype.constructor=Js,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(ba.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,Ur.$metadata$=ht("KSerializer",[Vr,Wr]),Vr.$metadata$=ht("SerializationStrategy"),Wr.$metadata$=ht("DeserializationStrategy"),Jr.prototype.k2d=function(){return this.h2d_1},Jr.prototype.v2c=function(){return bt("descriptor",1,gt,(function(t){return t.v2c()}),null),this.j2d_1.n2()},Jr.prototype.toString=function(){return"kotlinx.serialization.PolymorphicSerializer(baseClass: "+this.h2d_1+")"},Jr.$metadata$=yt("PolymorphicSerializer",void 0,void 0,void 0,void 0,Bi.prototype),Xr.$metadata$=yt("SealedClassSerializer",void 0,void 0,void 0,void 0,Bi.prototype),Zr.$metadata$=ht("StringFormat",[Qr]),Qr.$metadata$=ht("SerialFormat"),eo.$metadata$=yt("SerializationException",void 0,void 0,void 0,void 0,kt.prototype),ro.$metadata$=yt("UnknownFieldException",void 0,void 0,void 0,void 0,eo.prototype),io.$metadata$=yt("MissingFieldException",void 0,void 0,void 0,void 0,eo.prototype),Wo.prototype.c2e=function(){return this.y2d_1.c2e()},Wo.prototype.d2e=function(){return this.y2d_1.d2e()},Wo.prototype.e2e=function(){return this.y2d_1.e2e()},Wo.prototype.x2d=function(){return this.y2d_1.x2d()},Wo.prototype.f2e=function(){return this.y2d_1.f2e()},Wo.prototype.g2e=function(t){return this.y2d_1.g2e(t)},Wo.prototype.h2e=function(t){return this.y2d_1.h2e(t)},Wo.prototype.i2e=function(t){return this.y2d_1.i2e(t)},Wo.prototype.j2e=function(t){return this.y2d_1.j2e(t)},Wo.prototype.k2e=function(t){return this.y2d_1.k2e(t)},Wo.prototype.b2e=function(){return this.a2e_1},Wo.prototype.equals=function(t){var n=t instanceof Wo?t:null;if(null==n)return!1;var e=n;return!!nn(this.y2d_1,e.y2d_1)&&e.z2d_1.equals(this.z2d_1)},Wo.prototype.hashCode=function(){var t=this.z2d_1.hashCode();return ct(31,t)+en(this.a2e_1)|0},Wo.prototype.toString=function(){return"ContextDescriptor(kClass: "+this.z2d_1+", original: "+this.y2d_1+")"},Wo.$metadata$=yt("ContextDescriptor",[Jo]),Jo.$metadata$=ht("SerialDescriptor"),Go.prototype.d=function(){return this.o2e_1>0},Go.prototype.e=function(){var t=this.p2e_1.d2e(),n=this.o2e_1;return this.o2e_1=n-1|0,this.p2e_1.h2e(t-n|0)},Go.$metadata$=yt(void 0,[rn]),Yo.prototype.c=function(){return new Go(this.q2e_1)},Yo.$metadata$=yt(void 0,[on]),Zo.prototype.r2e=function(t,n,e,r){if(!this.c2d_1.a(t))throw Jt(Kt("Element with name '"+t+"' is already registered"));this.b2d_1.a(t),this.d2d_1.a(n),this.e2d_1.a(e),this.f2d_1.a(r)},Zo.prototype.g2d=function(t,n,e,r,o,i){return 0!=(4&o)&&(e=_t()),0!=(8&o)&&(r=!1),this.r2e(t,n,e,r)},Zo.$metadata$=yt("ClassSerialDescriptorBuilder"),ni.prototype.b2e=function(){return this.s2e_1},ni.prototype.f2e=function(){return this.t2e_1},ni.prototype.d2e=function(){return this.u2e_1},ni.prototype.c2e=function(){return this.v2e_1},ni.prototype.e2f=function(){return this.w2e_1},ni.prototype.j2e=function(t){return Ha(this.x2e_1,t)},ni.prototype.i2e=function(t){var n,e=this.b2f_1.b3(t);return null==e?(Ei(),n=-3):n=e,n},ni.prototype.g2e=function(t){return Ha(this.z2e_1,t)},ni.prototype.h2e=function(t){return Ha(this.y2e_1,t)},ni.prototype.k2e=function(t){return Ua(this.a2f_1,t)},ni.prototype.equals=function(t){var n;t:if(this!==t)if(t instanceof ni)if(this.b2e()===t.b2e()){var e=t;if(vn(this.c2f_1,e.c2f_1))if(this.d2e()===t.d2e()){var r=0,o=this.d2e();if(r=0))throw n="Illegal index "+t+", "+this.b2e()+" expects only non-negative indices",Jt(Kt(n));return!1},Gi.prototype.g2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.b2e()+" expects only non-negative indices",Jt(Kt(n));return _t()},Gi.prototype.h2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.b2e()+" expects only non-negative indices",Jt(Kt(n));return this.w2h_1},Gi.prototype.equals=function(t){return this===t||t instanceof Gi&&!(!nn(this.w2h_1,t.w2h_1)||this.b2e()!==t.b2e())},Gi.prototype.hashCode=function(){return ct(Cn(this.w2h_1),31)+en(this.b2e())|0},Gi.prototype.toString=function(){return this.b2e()+"("+this.w2h_1+")"},Gi.$metadata$=yt("ListLikeDescriptor",[Jo]),Yi.prototype.b2e=function(){return this.c2i_1},Yi.prototype.f2e=function(){return Si()},Yi.prototype.d2e=function(){return this.f2i_1},Yi.prototype.j2e=function(t){return t.toString()},Yi.prototype.i2e=function(t){var n=jn(t);if(null==n)throw Jt(t+" is not a valid map index");return n},Yi.prototype.k2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.b2e()+" expects only non-negative indices",Jt(Kt(n));return!1},Yi.prototype.g2e=function(t){var n;if(!(t>=0))throw n="Illegal index "+t+", "+this.b2e()+" expects only non-negative indices",Jt(Kt(n));return _t()},Yi.prototype.h2e=function(t){var n,e;if(!(t>=0))throw n="Illegal index "+t+", "+this.b2e()+" expects only non-negative indices",Jt(Kt(n));switch(t%2|0){case 0:e=this.d2i_1;break;case 1:e=this.e2i_1;break;default:throw Sn("Unreached")}return e},Yi.prototype.equals=function(t){return this===t||t instanceof Yi&&this.b2e()===t.b2e()&&!!nn(this.d2i_1,t.d2i_1)&&!!nn(this.e2i_1,t.e2i_1)},Yi.prototype.hashCode=function(){var t=en(this.b2e());return t=ct(31,t)+Cn(this.d2i_1)|0,ct(31,t)+Cn(this.e2i_1)|0},Yi.prototype.toString=function(){return this.b2e()+"("+this.d2i_1+", "+this.e2i_1+")"},Yi.$metadata$=yt("MapLikeDescriptor",[Jo]),Xi.prototype.v2c=function(){return this.m2i_1},Xi.prototype.w1o=function(){return un()},Xi.prototype.n2i=function(t){return t.f()},Xi.prototype.o2i=function(t){return this.n2i(t instanceof Ft?t:St())},Xi.prototype.p2i=function(t){return t},Xi.prototype.q2i=function(t){return this.p2i(t instanceof Ft?t:St())},Xi.prototype.r2i=function(t){var n=t instanceof Ft?t:null;return null==n?zn(t):n},Xi.prototype.s2i=function(t){return this.r2i(null!=t&&qt(t,Ut)?t:St())},Xi.prototype.t2i=function(t,n){return t.ug(n)},Xi.prototype.u2i=function(t,n){return this.t2i(t instanceof Ft?t:St(),n)},Xi.prototype.v2i=function(t,n,e){t.ag(n,e)},Xi.prototype.w2i=function(t,n,e){var r=t instanceof Ft?t:St();return this.v2i(r,n,null==e||Xt(e)?e:St())},Xi.$metadata$=yt("ArrayListSerializer",void 0,void 0,void 0,void 0,rs.prototype),Zi.prototype.v2c=function(){return this.h2j_1},Zi.prototype.w1o=function(){return ln()},Zi.prototype.i2j=function(t){return t.f()},Zi.prototype.o2i=function(t){return this.i2j(t instanceof Nt?t:St())},Zi.prototype.j2j=function(t){return t},Zi.prototype.q2i=function(t){return this.j2j(t instanceof Nt?t:St())},Zi.prototype.k2j=function(t){var n=t instanceof Nt?t:null;return null==n?qn(t):n},Zi.prototype.s2i=function(t){return this.k2j(null!=t&&qt(t,Rt)?t:St())},Zi.prototype.l2j=function(t,n){},Zi.prototype.u2i=function(t,n){return this.l2j(t instanceof Nt?t:St(),n)},Zi.prototype.m2j=function(t,n,e){t.a(e)},Zi.prototype.w2i=function(t,n,e){var r=t instanceof Nt?t:St();return this.m2j(r,n,null==e||Xt(e)?e:St())},Zi.$metadata$=yt("HashSetSerializer",void 0,void 0,void 0,void 0,rs.prototype),Qi.prototype.v2c=function(){return this.o2j_1},Qi.prototype.w1o=function(){return On()},Qi.prototype.p2j=function(t){return t.f()},Qi.prototype.o2i=function(t){return this.p2j(t instanceof Bt?t:St())},Qi.prototype.q2j=function(t){return t},Qi.prototype.q2i=function(t){return this.q2j(t instanceof Bt?t:St())},Qi.prototype.k2j=function(t){var n=t instanceof Bt?t:null;return null==n?Pn(t):n},Qi.prototype.s2i=function(t){return this.k2j(null!=t&&qt(t,Rt)?t:St())},Qi.prototype.r2j=function(t,n){},Qi.prototype.u2i=function(t,n){return this.r2j(t instanceof Bt?t:St(),n)},Qi.prototype.s2j=function(t,n,e){t.a(e)},Qi.prototype.w2i=function(t,n,e){var r=t instanceof Bt?t:St();return this.s2j(r,n,null==e||Xt(e)?e:St())},Qi.$metadata$=yt("LinkedHashSetSerializer",void 0,void 0,void 0,void 0,rs.prototype),ts.prototype.v2c=function(){return this.v2j_1},ts.prototype.w2j=function(t){return t.f()},ts.prototype.x2j=function(t){return this.w2j(null!=t&&qt(t,Dt)?t:St())},ts.prototype.y2j=function(t){return t.v().c()},ts.prototype.z2j=function(t){return this.y2j(null!=t&&qt(t,Dt)?t:St())},ts.prototype.w1o=function(){return Mn()},ts.prototype.a2k=function(t){return ct(t.f(),2)},ts.prototype.o2i=function(t){return this.a2k(t instanceof Tt?t:St())},ts.prototype.b2k=function(t){return t},ts.prototype.q2i=function(t){return this.b2k(t instanceof Tt?t:St())},ts.prototype.c2k=function(t){var n=t instanceof Tt?t:null;return null==n?An(t):n},ts.prototype.s2i=function(t){return this.c2k(null!=t&&qt(t,Dt)?t:St())},ts.prototype.d2k=function(t,n){},ts.prototype.u2i=function(t,n){return this.d2k(t instanceof Tt?t:St(),n)},ts.$metadata$=yt("HashMapSerializer",void 0,void 0,void 0,void 0,os.prototype),ns.prototype.v2c=function(){return this.k2k_1},ns.prototype.w2j=function(t){return t.f()},ns.prototype.x2j=function(t){return this.w2j(null!=t&&qt(t,Dt)?t:St())},ns.prototype.y2j=function(t){return t.v().c()},ns.prototype.z2j=function(t){return this.y2j(null!=t&&qt(t,Dt)?t:St())},ns.prototype.w1o=function(){return En()},ns.prototype.l2k=function(t){return ct(t.f(),2)},ns.prototype.o2i=function(t){return this.l2k(t instanceof Et?t:St())},ns.prototype.m2k=function(t){return t},ns.prototype.q2i=function(t){return this.m2k(t instanceof Et?t:St())},ns.prototype.c2k=function(t){var n=t instanceof Et?t:null;return null==n?In(t):n},ns.prototype.s2i=function(t){return this.c2k(null!=t&&qt(t,Dt)?t:St())},ns.prototype.n2k=function(t,n){},ns.prototype.u2i=function(t,n){return this.n2k(t instanceof Et?t:St(),n)},ns.$metadata$=yt("LinkedHashMapSerializer",void 0,void 0,void 0,void 0,os.prototype),es.prototype.v2c=function(){return this.q2k_1},es.prototype.r2k=function(t){return t.length},es.prototype.x2j=function(t){return this.r2k(null!=t&&Dn(t)?t:St())},es.prototype.s2k=function(t){return Tn(t)},es.prototype.z2j=function(t){return this.s2k(null!=t&&Dn(t)?t:St())},es.prototype.w1o=function(){return un()},es.prototype.t2k=function(t){return t.f()},es.prototype.o2i=function(t){return this.t2k(t instanceof Ft?t:St())},es.prototype.u2k=function(t){return function(t,n){return Wt(t)}(t,this.p2k_1)},es.prototype.q2i=function(t){return this.u2k(t instanceof Ft?t:St())},es.prototype.v2k=function(t){return zn(Bn(t))},es.prototype.s2i=function(t){return this.v2k(null!=t&&Dn(t)?t:St())},es.prototype.w2k=function(t,n){return t.ug(n)},es.prototype.u2i=function(t,n){return this.w2k(t instanceof Ft?t:St(),n)},es.prototype.x2k=function(t,n,e){t.ag(n,e)},es.prototype.w2i=function(t,n,e){var r=t instanceof Ft?t:St();return this.x2k(r,n,null==e||Xt(e)?e:St())},es.$metadata$=yt("ReferenceArraySerializer",void 0,void 0,void 0,void 0,is.prototype),rs.prototype.y2i=function(t){return t.f()},rs.prototype.x2j=function(t){return this.y2i(null!=t&&qt(t,Vt)?t:St())},rs.prototype.z2i=function(t){return t.c()},rs.prototype.z2j=function(t){return this.z2i(null!=t&&qt(t,Vt)?t:St())},rs.$metadata$=yt("CollectionSerializer",void 0,void 0,void 0,void 0,is.prototype),os.prototype.g2k=function(){return this.e2k_1},os.prototype.h2k=function(){return this.f2k_1},os.prototype.c2j=function(t,n,e,r){if(!(r>=0))throw Jt(Kt("Size must be known in advance when using READ_ALL"));var o=Ln(yn(0,ct(r,2)),2),i=o.f1_1,s=o.g1_1,a=o.h1_1;if(a>0&&i<=s||a<0&&s<=i)do{var u=i;i=i+a|0,this.d2j(t,e+u|0,n,!1)}while(u!==s)},os.prototype.d2j=function(t,n,e,r){var o,i=this.v2c(),s=t.h2g(i,n,this.e2k_1,null,8,null);if(r){var a=t.j2g(this.v2c());if(a!==(n+1|0))throw Jt(Kt("Value must follow key in a map, index for key: "+n+", returned index for value: "+a));o=a}else o=n+1|0;var u,l=o;if(!e.v2(s)||this.f2k_1.v2c().f2e()instanceof $i){var c=this.v2c();u=t.h2g(c,l,this.f2k_1,null,8,null)}else u=t.g2g(this.v2c(),l,this.f2k_1,Rn(e,s));var h=u;e.n(s,h)},os.prototype.b2j=function(t,n){for(var e=this.x2j(n),r=this.v2c(),o=t.l2h(r,e),i=0,s=this.z2j(n);s.d();){var a=s.e(),u=a.l2(),l=a.n2(),c=this.v2c(),h=i;i=h+1|0,o.i2h(c,h,this.e2k_1,u);var p=this.v2c(),f=i;i=f+1|0,o.i2h(p,f,this.f2k_1,l)}o.v2f(r)},os.prototype.w2c=function(t,n){return this.b2j(t,null==n||Xt(n)?n:St())},os.$metadata$=yt("MapLikeSerializer",void 0,void 0,void 0,void 0,ss.prototype),is.prototype.b2j=function(t,n){var e=this.x2j(n),r=this.v2c(),o=t.l2h(r,e),i=this.z2j(n),s=0;if(s=0))throw Jt(Kt("Size must be known in advance when using READ_ALL"));var o=0;if(o>>6|0)-1|0;Fn();var r=63&n;t.k2l_1[e]=t.k2l_1[e].gn(new bn(1,0).lb(r))}(this,t)},hs.prototype.m2l=function(){for(var t=this.h2l_1.d2e();!this.j2l_1.equals(new bn(-1,-1));){var n=Un(this.j2l_1.fn());if(this.j2l_1=this.j2l_1.gn(new bn(1,0).lb(n)),this.i2l_1(this.h2l_1,n))return n}return Fn(),t>64?function(t){var n=0,e=t.k2l_1.length-1|0;if(n<=e)do{var r=n;n=n+1|0;var o=r+1|0;Fn();for(var i=ct(o,64),s=t.k2l_1[r];!s.equals(new bn(-1,-1));){var a=Un(s.fn());s=s.gn(new bn(1,0).lb(a));var u=i+a|0;if(t.i2l_1(t.h2l_1,u))return t.k2l_1[r]=s,u}t.k2l_1[r]=s}while(n<=e);return Ei(),-1}(this):(Ei(),-1)},hs.$metadata$=yt("ElementMarker"),fs.prototype.e2e=function(){return this.z2l_1},fs.prototype.hashCode=function(){return ct(zs.prototype.hashCode.call(this),31)},fs.prototype.equals=function(t){var n;t:if(this!==t)if(t instanceof fs)if(this.b2e()===t.b2e()){var e=t;if(e.z2l_1&&vn(this.m2m(),e.m2m()))if(this.d2e()===t.d2e()){var r=0,o=this.d2e();if(r>>1|0}while(i<32);throw oo(r,e.b2e())},t.$_$.x1=Ta,t.$_$.y1=function(t,n){return this.x2u(t,(e=n,function(t){return e}));var e},t.$_$.z1=Ba,t.$_$.a2=Wr,t.$_$.b2=Ur,t.$_$.c2=io,t.$_$.d2=Xr,t.$_$.e2=eo,t.$_$.f2=Zr,t.$_$.g2=Gr,t.$_$.h2=lo,t}.apply(n,r))||(t.exports=o)},730:function(t,n,e){var r,o,i;o=[n,e(645),e(744)],void 0===(i="function"==typeof(r=function(t,n,e){"use strict";var r,o,i,s,a,u,l,c,h,p,f,_,d,v,y,m,g,b,$,w,x,k,j,C,S,z,q,O,P,M,A,E,I,D,T,B,L,R,N,F,H,U,V,W,K,J,G,Y,X,Z,Q,tt=Math.imul,nt=n.$_$.x1,et=e.$_$.ma,rt=n.$_$.f2,ot=e.$_$.i9,it=e.$_$.r4,st=e.$_$.qa,at=e.$_$.t1,ut=e.$_$.f9,lt=e.$_$.ec,ct=e.$_$.g2,ht=e.$_$.k9,pt=e.$_$.dc,ft=n.$_$.j1,_t=n.$_$.g1,dt=e.$_$.t9,vt=e.$_$.qc,yt=e.$_$.r9,mt=e.$_$.k,gt=e.$_$.g5,bt=e.$_$.n1,$t=e.$_$.i5,wt=e.$_$.c,xt=e.$_$.q9,kt=e.$_$.h,jt=e.$_$.md,Ct=n.$_$.u1,St=e.$_$.qb,zt=e.$_$.sb,qt=e.$_$.ob,Ot=e.$_$.rb,Pt=e.$_$.nb,Mt=n.$_$.e,At=n.$_$.a,Et=n.$_$.b2,It=n.$_$.m,Dt=n.$_$.z,Tt=e.$_$.g4,Bt=n.$_$.o,Lt=n.$_$.n,Rt=n.$_$.f,Nt=n.$_$.h,Ft=n.$_$.v,Ht=e.$_$.vb,Ut=e.$_$.p4,Vt=n.$_$.s,Wt=e.$_$.h3,Kt=e.$_$.yc,Jt=e.$_$.ca,Gt=e.$_$.w1,Yt=e.$_$.nd,Xt=n.$_$.y,Zt=n.$_$.x,Qt=n.$_$.w,tn=e.$_$.ab,nn=e.$_$.p9,en=n.$_$.m1,rn=n.$_$.h1,on=e.$_$.oa,sn=e.$_$.x2,an=e.$_$.z2,un=e.$_$.g3,ln=e.$_$.i3,cn=e.$_$.o2,hn=e.$_$.q2,pn=e.$_$.p3,fn=e.$_$.r3,_n=n.$_$.p1,dn=e.$_$.d9,vn=n.$_$.e2,yn=n.$_$.c,mn=e.$_$.g9,gn=e.$_$.h9,bn=e.$_$.sa,$n=e.$_$.ta,wn=n.$_$.k,xn=e.$_$.t,kn=e.$_$.r7,jn=e.$_$.b9,Cn=e.$_$.id,Sn=e.$_$.l6,zn=e.$_$.t6,qn=e.$_$.h6,On=e.$_$.i6,Pn=e.$_$.m9,Mn=n.$_$.i,An=e.$_$.c1,En=e.$_$.gc,In=e.$_$.jd,Dn=e.$_$.v8,Tn=e.$_$.hc,Bn=e.$_$.bd,Ln=e.$_$.g8,Rn=(e.$_$.x8,n.$_$.n1),Nn=e.$_$.d,Fn=n.$_$.a2,Hn=e.$_$.ea,Un=n.$_$.g2,Vn=n.$_$.d2,Wn=n.$_$.v1,Kn=n.$_$.a1,Jn=n.$_$.u,Gn=n.$_$.t,Yn=n.$_$.g,Xn=n.$_$.j,Zn=n.$_$.y1,Qn=n.$_$.z1,te=n.$_$.c1,ne=e.$_$.pd,ee=n.$_$.c2,re=n.$_$.b,oe=e.$_$.lc,ie=e.$_$.ld,se=e.$_$.kd,ae=n.$_$.f1,ue=n.$_$.e1,le=e.$_$.ub,ce=e.$_$.y2,he=e.$_$.wb,pe=e.$_$.tb,fe=e.$_$.p2,_e=e.$_$.xb,de=e.$_$.q3,ve=n.$_$.i1,ye=n.$_$.d1,me=e.$_$.j2,ge=n.$_$.l1,be=n.$_$.k1,$e=e.$_$.o4,we=n.$_$.q,xe=e.$_$.n4,ke=n.$_$.r,je=e.$_$.q4,Ce=n.$_$.p,Se=e.$_$.q7,ze=e.$_$.ja,qe=e.$_$.i2,Oe=e.$_$.hb,Pe=e.$_$.na,Me=n.$_$.s1,Ae=e.$_$.r1,Ee=e.$_$.b4,Ie=e.$_$.f4,De=e.$_$.pa,Te=e.$_$.kb,Be=e.$_$.m6,Le=e.$_$.l7,Re=e.$_$.y7,Ne=e.$_$.ic,Fe=n.$_$.b1,He=e.$_$.b7,Ue=e.$_$.o7,Ve=e.$_$.o,We=e.$_$.mc,Ke=e.$_$.h2,Je=e.$_$.l4,Ge=e.$_$.e9,Ye=e.$_$.n,Xe=e.$_$.m1,Ze=e.$_$.v;function Qe(){r=this,nr.call(this,function(t,n,e,r,o,i,s,a,u,l,c,h,p,f){return function(t,n,e,r,o,i,s,a,u,l,c,h,p,f,_){return 0!=(1&p)&&(t=!1),0!=(2&p)&&(n=!1),0!=(4&p)&&(e=!1),0!=(8&p)&&(r=!1),0!=(16&p)&&(o=!1),0!=(32&p)&&(i=!0),0!=(64&p)&&(s=" "),0!=(128&p)&&(a=!1),0!=(256&p)&&(u=!1),0!=(512&p)&&(l="type"),0!=(1024&p)&&(c=!1),0!=(2048&p)&&(h=!0),sr.call(_,t,n,e,r,o,i,s,a,u,l,c,h),_}(t,n,e,r,o,i,s,a,u,l,c,h,p,0,Object.create(sr.prototype))}(!1,!1,!1,!1,!1,!1,null,!1,!1,null,!1,!1,4095),nt())}function tr(){return null==r&&new Qe,r}function nr(t,n){tr(),this.i2v_1=t,this.j2v_1=n,this.k2v_1=new Do}function er(t){this.a2w_1=t.i2v_1.n2w_1,this.b2w_1=t.i2v_1.s2w_1,this.c2w_1=t.i2v_1.o2w_1,this.d2w_1=t.i2v_1.p2w_1,this.e2w_1=t.i2v_1.q2w_1,this.f2w_1=t.i2v_1.r2w_1,this.g2w_1=t.i2v_1.t2w_1,this.h2w_1=t.i2v_1.u2w_1,this.i2w_1=t.i2v_1.v2w_1,this.j2w_1=t.i2v_1.w2w_1,this.k2w_1=t.i2v_1.x2w_1,this.l2w_1=t.i2v_1.y2w_1,this.m2w_1=t.p2d()}function rr(t,n){nr.call(this,t,n),function(t){if(ht(t.p2d(),nt()))return it();var n=new Eo(t.i2v_1.v2w_1,t.i2v_1.w2w_1);t.p2d().p2u(n)}(this)}function or(){}function ir(){}function sr(t,n,e,r,o,i,s,a,u,l,c,h){this.n2w_1=t,this.o2w_1=n,this.p2w_1=e,this.q2w_1=r,this.r2w_1=o,this.s2w_1=i,this.t2w_1=s,this.u2w_1=a,this.v2w_1=u,this.w2w_1=l,this.x2w_1=c,this.y2w_1=h}function ar(){}function ur(){o=this}function lr(){null==o&&new ur}function cr(){i=this}function hr(t){null==i&&new cr,lr.call(this),this.d2x_1=t}function pr(){s=this}function fr(t){var n=t.l2(),e=t.n2(),r=bt();return Jo(r,n),r.s9(ct(58)),r.fb(e),r.toString()}function _r(t){null==s&&new pr,lr.call(this),this.h2x_1=t}function dr(){a=this}function vr(){null==a&&new dr,lr.call(this)}function yr(t,n){vr.call(this),this.j2x_1=n,this.k2x_1=st(t)}function mr(){return Nr()}function gr(){u=this,vr.call(this),this.l2x_1="null";var t=kt();this.m2x_1=jt(t,mr)}function br(){return null==u&&new gr,u}function $r(t){return function(t){return Go(),!!Oe(t,"true",!0)||!Oe(t,"false",!0)&&null}(t.e1e())}function wr(t){return St(t.e1e())}function xr(t){var n,e=t instanceof vr?t:null;return null==e?function(t,n){throw at("Element "+wt(t)+" is not a "+n)}(t,"JsonPrimitive"):n=e,n}function kr(t){var n=Fr(jr);t.g2d("JsonPrimitive",n,null,!1,12,null);var e=Fr(Cr);t.g2d("JsonNull",e,null,!1,12,null);var r=Fr(Sr);t.g2d("JsonLiteral",r,null,!1,12,null);var o=Fr(zr);t.g2d("JsonObject",o,null,!1,12,null);var i=Fr(qr);return t.g2d("JsonArray",i,null,!1,12,null),it()}function jr(){return Lr().o2x_1}function Cr(){return Nr().p2x_1}function Sr(){return Ur().q2x_1}function zr(){return Tr().r2x_1}function qr(){return Er().s2x_1}function Or(){l=this;var t=Mt();this.t2x_1=At("kotlinx.serialization.json.JsonElement",t,[],kr,4,null)}function Pr(){return null==l&&new Or,l}function Mr(){c=this,this.v2x_1=It(Pr()).v2c(),this.w2x_1="kotlinx.serialization.json.JsonArray"}function Ar(){h=this,this.s2x_1=(null==c&&new Mr,c)}function Er(){return null==h&&new Ar,h}function Ir(){p=this,this.y2x_1=Lt(Bt(Tt()),Pr()).v2c(),this.z2x_1="kotlinx.serialization.json.JsonObject"}function Dr(){f=this,this.r2x_1=(null==p&&new Ir,p)}function Tr(){return null==f&&new Dr,f}function Br(){_=this;var t=Rt();this.o2x_1=At("kotlinx.serialization.json.JsonPrimitive",t,[],null,12,null)}function Lr(){return null==_&&new Br,_}function Rr(){d=this;var t=Nt();this.p2x_1=At("kotlinx.serialization.json.JsonNull",t,[],null,12,null)}function Nr(){return null==d&&new Rr,d}function Fr(t){return new Gr(t)}function Hr(){v=this,this.q2x_1=Ft("kotlinx.serialization.json.JsonLiteral",Rt())}function Ur(){return null==v&&new Hr,v}function Vr(t){!function(t){var n=Jt(t,Yr)?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 Wr(t){var n=Jt(t,ar)?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 Kr(t){Wr(t)}function Jr(t){return nn("original",1,tn,(function(t){return Jr(t)}),null),t.e2y_1.n2()}function Gr(t){this.e2y_1=Yt(t)}function Yr(){}function Xr(t){this.f2y_1=t,this.g2y_1=!0}function Zr(t,n){Xr.call(this,t),this.b2z_1=n}function Qr(t,n){Xr.call(this,t),this.e2z_1=n,this.f2z_1=0}function to(t){var n,e;this.g2z_1=new _n(t,(n=this,e=function(t,e){return o=t,i=e,(r=n).h2z_1=!o.k2e(i)&&o.h2e(i).x2d(),r.h2z_1;var r,o,i},e.callableName="readIfAbsent",e)),this.h2z_1=!1}function no(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.i2z(e,0,Ki(),2,null)}function eo(t){co.call(this,t),dn(this,eo)}function ro(t){return new eo("Value of type '"+t.b2e()+"' 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.f2e()+"'.\n"+Q)}function oo(t){co.call(this,t),dn(this,oo)}function io(t,n,e){return ao(t,n+"\nJSON input: "+ho(e,t))}function so(t,n,e){return ao(-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. "+Ki()+"\nCurrent output: "+po(e,0,1)}(t,n,e))}function ao(t,n){return new oo(t>=0?"Unexpected JSON token at offset "+t+": "+n:n)}function uo(t,n){return ao(-1,"Encountered unknown key '"+t+"'.\n"+Y+"\nCurrent input: "+po(n,0,1))}function lo(t,n){return new eo("Unexpected special floating-point value "+st(t)+". By default, non-finite floating point values are prohibited because they do not conform JSON specification. "+Ki()+"\nCurrent output: "+po(n,0,1))}function co(t){yn(t,this),dn(this,co)}function ho(t,n){if(mn(t)<200)return t;if(-1===n){var e=mn(t)-60|0;if(e<=0)return t;var r=mn(t);return"....."+st(gn(t,e,r))}var o=n-30|0,i=n+30|0,s=o<=0?"":".....",a=i>=mn(t)?"":".....",u=bn(o,0),l=$n(i,mn(t));return s+st(gn(t,u,l))+a}function po(t,n,e,r){return 0!=(1&e)&&(n=-1),ho(t,n)}function fo(){return mo(),y}function _o(t,n,e){mo();var r=t.i2e(e);if(wn(),-3!==r)return r;if(!n.i2v_1.y2w_1)return r;var o,i,s,a=Gi(n),u=fo(),l=a.k2z(t,u,(i=t,s=function(){return vo(i)},s.callableName="buildAlternativeNamesMap",s)).b3(e);return null==l?(wn(),o=-3):o=l,o}function vo(t){mo();var n=null,e=0,r=t.d2e();if(e>12),o=Ko(e>>8),i=Ko(e>>4),s=Ko(e);t[e]="\\u"+new lt(r)+new lt(o)+new lt(i)+new lt(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 l=u;u=u+1|0,a[l]=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 Yo(t){var n=t.q2s(),e=null==n?null:t.t32(n);return null==e?t.n2():e}function Xo(t,n){throw io(-1,"Failed to parse '"+n+"'",st(Yo(t)))}function Zo(t,n,e){var r=t instanceof yr?t:null;if(null==r)throw ao(-1,"Unexpected 'null' when "+e+" was expected");return r}function Qo(t,n){Me.call(this),this.q32_1=t,this.r32_1=n,this.s32_1=this.b2x().i2v_1}function ti(t,n,e,r,o,i,s){return 0!=(4&o)&&(e=null),0!=(8&o)&&(r=null),ri.call(s,t,n,e,r),s}function ni(t,n,e,r){var o,i;t:{var s=t.b2x(),a=n.h2e(e);if(!a.x2d()&&t.t32(r)instanceof gr)o=!0;else{if(ht(a.f2e(),Nt())){var u=t.t32(r),l=u instanceof vr?u:null,c=null==l?null:(i=l)instanceof gr?null:i.e1e();if(null==c){o=!1;break t}var h=_o(a,s,c);if(wn(),-3===h){it(),o=!0;break t}}o=!1}}return o}function ei(t,n,e){return t.p33_1=!t.b2x().i2v_1.s2w_1&&!n.k2e(e)&&n.h2e(e).x2d(),t.p33_1}function ri(t,n,e,r){Qo.call(this,t,n),this.l33_1=n,this.m33_1=e,this.n33_1=r,this.o33_1=0,this.p33_1=!1}function oi(t,n){Qo.call(this,t,n),this.v33_1=n,this.w33_1=this.v33_1.f(),this.x33_1=-1}function ii(t,n){ti(t,n,null,null,12,0,this),this.i34_1=n,this.j34_1=Re(this.i34_1.c3()),this.k34_1=tt(this.j34_1.f(),2),this.l34_1=-1}function si(){if(z)return it();z=!0,k=new ai("OBJ",0,qi(),Oi()),j=new ai("LIST",1,Pi(),Mi()),C=new ai("MAP",2,qi(),Oi()),S=new ai("POLY_OBJ",3,Pi(),Mi())}function ai(t,n,e,r){Ne.call(this,t,n),this.h32_1=e,this.i32_1=r}function ui(t,n){var e,r=n.f2e();if(r instanceof Gn)e=fi();else if(ht(r,Mn()))e=hi();else if(ht(r,Xn())){var o,i=li(n.h2e(0),t.p2d()),s=i.f2e();if(s instanceof Jn||ht(s,Nt()))o=pi();else{if(!t.i2v_1.q2w_1)throw ro(i);o=hi()}e=o}else e=ci();return e}function li(t,n){var e;if(ht(t.f2e(),Yn())){var r=Fe(n,t),o=null==r?null:li(r,n);e=null==o?t:o}else e=t.e2e()?li(t.h2e(0),n):t;return e}function ci(){return si(),k}function hi(){return si(),j}function pi(){return si(),C}function fi(){return si(),S}function _i(t,n,e){return t.m34(n,e),function(t,n){var e=n;-1===(e=t.o34(e))&&t.i2z("Expected escape sequence to continue, got EOF",0,null,6,null);var r=t.n34(),o=e;e=o+1|0;var i=ut(r,o);if(ht(new lt(i),new lt(ct(117))))return yi(t,t.n34(),e);var s=function(t){return t<117?Wi().x34_1[t]:ct(0)}(qe(i));if(ht(new lt(s),new lt(ct(0)))){var a="Invalid escaped char '"+new lt(i)+"'";t.i2z(a,0,null,6,null)}return t.y2v_1.s9(s),e}(t,e+1|0)}function di(t,n,e){t.m34(n,e);var r=t.y2v_1.toString();return t.y2v_1.xk(0),r}function vi(t){var n=Cn(t.x2v_1);return t.x2v_1=null,n}function yi(t,n,e){return(e+4|0)>=mn(n)?(t.v2v_1=e,t.p34(),(t.v2v_1+4|0)>=mn(n)&&t.i2z("Unexpected EOF during unicode escape",0,null,6,null),yi(t,n,t.v2v_1)):(t.y2v_1.s9(ze((((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 r,o=ut(n,e);if(ct(48)<=o&&o<=ct(57))r=qe(o)-48|0;else if(ct(97)<=o&&o<=ct(102))r=10+(qe(o)-97|0)|0;else if(ct(65)<=o&&o<=ct(70))r=10+(qe(o)-65|0)|0;else{var i="Invalid toHexChar char '"+new lt(o)+"' in unicode escape";t.i2z(i,0,null,6,null)}return r}function gi(t,n){var e=t.o34(n);(e>=mn(t.n34())||-1===e)&&t.i2z("EOF",0,null,6,null);var r=t.n34(),o=e;e=o+1|0;var i,s=ut(r,o),a=32|qe(s);if(116===a)bi(t,"rue",e),i=!0;else if(102===a)bi(t,"alse",e),i=!1;else{var u="Expected valid boolean literal prefix, but had '"+t.k30()+"'";t.i2z(u,0,null,6,null)}return i}function bi(t,n,e){(mn(t.n34())-e|0)=0&&(t.gb("."),t.gb(o.j2e(i)))}else o!==bo()&&(t.gb("["),t.gb("'"),t.fb(o),t.gb("'"),t.gb("]"))}while(e=0&&ht(new lt(t),new lt(ct(34)))&&"null"===this.k30()&&this.t34("Expected string literal but 'null' literal was found",this.v2v_1-4|0,"Use 'coerceInputValues = true' in 'Json {}` builder to coerce nulls to default values."),this.r34(wi(t))},$i.prototype.r34=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.v2v_1===mn(this.n34())||this.v2v_1<=0?"EOF":me(ut(this.n34(),this.v2v_1-1|0)))+"' instead",e=this.v2v_1-1|0;this.i2z(n,e,null,4,null)},$i.prototype.h30=function(){for(var t=this.n34(),n=this.v2v_1;-1!==(n=this.o34(n));){var e=ut(t,n);if(!(ht(new lt(e),new lt(ct(32)))||ht(new lt(e),new lt(ct(10)))||ht(new lt(e),new lt(ct(13)))||ht(new lt(e),new lt(ct(9)))))return this.v2v_1=n,wi(e);n=n+1|0}return this.v2v_1=n,10},$i.prototype.x31=function(){var t=this.u34();t=this.o34(t);var n=mn(this.n34())-t|0;if(n<4||-1===t)return!0;var e=0;if(e<=3)do{var r=e;if(e=e+1|0,!ht(new lt(ut("null",r)),new lt(ut(this.n34(),t+r|0))))return!0}while(e<=3);return n>4&&0===wi(ut(this.n34(),t+4|0))||(this.v2v_1=t+4|0,!1)},$i.prototype.u34=function(){var t=this.v2v_1;t:for(;-1!==(t=this.o34(t));){var n=ut(this.n34(),t);if(!(ht(new lt(n),new lt(ct(32)))||ht(new lt(n),new lt(ct(10)))||ht(new lt(n),new lt(ct(13)))||ht(new lt(n),new lt(ct(9)))))break t;t=t+1|0}return this.v2v_1=t,t},$i.prototype.y31=function(t){var n,e=this.h30();if(t){if(1!==e&&0!==e)return null;n=this.k30()}else{if(1!==e)return null;n=this.j30()}var r=n;return this.x2v_1=r,r},$i.prototype.v34=function(t,n){var e=this.n34();return st(gn(e,t,n))},$i.prototype.j30=function(){return null!=this.x2v_1?vi(this):this.b32()},$i.prototype.consumeString2=function(t,n,e){for(var r=e,o=n,i=ut(t,r),s=!1;!ht(new lt(i),new lt(ct(34)));){if(ht(new lt(i),new lt(ct(92)))){if(s=!0,-1===(r=this.o34(_i(this,o,r)))){var a=r;this.i2z("EOF",a,null,4,null)}o=r}else if((r=r+1|0)>=mn(t)){if(s=!0,this.m34(o,r),-1===(r=this.o34(r))){var u=r;this.i2z("EOF",u,null,4,null)}o=r}i=ut(t,r)}var l=s?di(this,o,r):this.v34(o,r);return this.v2v_1=r+1|0,l},$i.prototype.c32=function(){var t,n=this.k30();return"null"===n&&!ht(new lt(ut((t=this).n34(),t.v2v_1-1|0)),new lt(ct(34)))&&this.i2z("Unexpected 'null' value instead of string literal",0,null,6,null),n},$i.prototype.k30=function(){if(null!=this.x2v_1)return vi(this);var t=this.u34();if(t>=mn(this.n34())||-1===t){var n=t;this.i2z("EOF",n,null,4,null)}var e=wi(ut(this.n34(),t));if(1===e)return this.j30();if(0!==e){var r="Expected beginning of the string, but got "+new lt(ut(this.n34(),t));this.i2z(r,0,null,6,null)}for(var o=!1;0===wi(ut(this.n34(),t));)if((t=t+1|0)>=mn(this.n34())){o=!0,this.m34(this.v2v_1,t);var i=this.o34(t);if(-1===i)return this.v2v_1=t,di(this,0,0);t=i}var s=o?di(this,this.v2v_1,t):this.v34(this.v2v_1,t);return this.v2v_1=t,s},$i.prototype.m34=function(t,n){this.y2v_1.wk(this.n34(),t,n)},$i.prototype.w34=function(t,n,e){if(!t){var r=e();this.i2z(r,n,null,4,null)}},$i.prototype.a32=function(t){var n=xn(),e=this.h30();if(8!==e&&6!==e)return this.k30(),it();for(;;)if(1!==(e=this.h30())){var r=e;if(8===r||6===r)n.a(e);else if(9===r){if(8!==He(n))throw io(this.v2v_1,"found ] instead of } at path: "+this.w2v_1,this.n34());Ue(n)}else if(7===r){if(6!==He(n))throw io(this.v2v_1,"found } instead of ] at path: "+this.w2v_1,this.n34());Ue(n)}else 10===r&&this.i2z("Unexpected end of input due to malformed JSON during ignoring unknown keys",0,null,6,null);if(this.m30(),0===n.f())return it()}else t?this.k30():this.b32()},$i.prototype.toString=function(){return"JsonReader(source='"+this.n34()+"', currentPosition="+this.v2v_1+")"},$i.prototype.z31=function(t){var n=this.v34(0,this.v2v_1),e=Ve(n,t,0,!1,6,null);this.t34("Encountered an unknown key '"+t+"'",e,"Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.")},$i.prototype.t34=function(t,n,e){var r=0===mn(e)?"":"\n"+e;throw io(n,t+" at path: "+this.w2v_1.u2z()+r,this.n34())},$i.prototype.i2z=function(t,n,e,r,o){return 0!=(2&r)&&(n=this.v2v_1),0!=(4&r)&&(e=""),this.t34(t,n,e)},$i.prototype.l32=function(){var t,n=this.u34();((n=this.o34(n))>=mn(this.n34())||-1===n)&&this.i2z("EOF",0,null,6,null),ht(new lt(ut(this.n34(),n)),new lt(ct(34)))?((n=n+1|0)===mn(this.n34())&&this.i2z("EOF",0,null,6,null),t=!0):t=!1;var e,r=t,o=new We(0,0),i=!1,s=n,a=!0;t:for(;a;){var u=ut(this.n34(),n);if(ht(new lt(u),new lt(ct(45))))n!==s&&this.i2z("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.n34()));var l=Ke(u,ct(48));if(!(0<=l&&l<=9)){var c="Unexpected symbol '"+new lt(u)+"' in numeric literal";this.i2z(c,0,null,6,null)}(o=o.v9(new We(10,0)).x9(on(l))).d1(new We(0,0))>0&&this.i2z("Numeric value overflow",0,null,6,null)}}if((s===n||i&&s===(n-1|0))&&this.i2z("Expected numeric literal",0,null,6,null),r&&(a||this.i2z("EOF",0,null,6,null),ht(new lt(ut(this.n34(),n)),new lt(ct(34)))||this.i2z("Expected closing quotation mark",0,null,6,null),n=n+1|0),this.v2v_1=n,i)e=o;else{var h=o;Je(),h.equals(new We(0,-2147483648))?this.i2z("Numeric value overflow",0,null,6,null):e=o.t9()}return e},$i.prototype.j32=function(){return gi(this,this.u34())},$i.prototype.k32=function(){var t,n=this.u34();n===mn(this.n34())&&this.i2z("EOF",0,null,6,null),ht(new lt(ut(this.n34(),n)),new lt(ct(34)))?(n=n+1|0,t=!0):t=!1;var e=t,r=gi(this,n);if(e){this.v2v_1===mn(this.n34())&&this.i2z("EOF",0,null,6,null),ht(new lt(ut(this.n34(),this.v2v_1)),new lt(ct(34)))||this.i2z("Expected closing quotation mark",0,null,6,null);this.v2v_1=this.v2v_1+1|0}return r},$i.$metadata$=ot("AbstractJsonLexer"),Vi.$metadata$=et("CharMappings"),Ji.prototype.n34=function(){return this.d35_1},Ji.prototype.o34=function(t){return t=0},Wn.prototype.eu=function(){var t=this.vt_1,n=null==t?null:t.fu();return null==n||n},Wn.prototype.gu=function(t){this.tt_1=this.tt_1.w9(Vn(0,t)),t||(this.ut_1=!0)},Wn.prototype.hu=function(t){if(this.tt_1=this.tt_1.x9(Vn(0,t)),this.tt_1.d1(new jt(0,0))>0)return R();this.ut_1&&this.iu()},Wn.prototype.iu=function(){},Wn.$metadata$=W("EventLoop",void 0,void 0,void 0,void 0,Tn.prototype),Kn.prototype.ku=function(){var t,n=this.ju_1.mu();if(null==n){var e=new Wr;Jn().ju_1.nu(e),t=e}else t=n;return t},Kn.$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",[bt]),te.$metadata$=nt("Job",[Pt]),ne.$metadata$=nt("ChildJob",[te]),ee.$metadata$=nt("ParentJob",[te]),re.$metadata$=nt("ChildHandle",[Xn]),oe.prototype.ls=function(){},oe.prototype.iq=function(t){return!1},oe.prototype.toString=function(){return"NonDisposableHandle"},oe.$metadata$=st("NonDisposableHandle",[Xn,re]),fe.prototype.zo=function(){return this.ou_1},fe.prototype.pu=function(){return null},fe.prototype.toString=function(){return"Empty{"+(this.ou_1?"Active":"New")+"}"},fe.$metadata$=W("Empty",[_e]),_e.$metadata$=nt("Incomplete"),de.prototype.zo=function(){return!0},de.prototype.pu=function(){return this},de.prototype.tu=function(t){var n=At();n.gb("List{"),n.gb(t),n.gb("}[");for(var e=!0,r=this.uu_1;!G(r,this);){if(r instanceof ve){var o=r;e?e=!1:n.gb(", "),n.fb(o)}r=r.uu_1}return n.gb("]"),n.toString()},de.prototype.toString=function(){return Rr()?this.tu("Active"):oo.prototype.toString.call(this)},de.$metadata$=W("NodeList",[_e],void 0,void 0,void 0,oo.prototype),ve.prototype.iv=function(){var t=this.hv_1;if(null!=t)return t;Et("job")},ve.prototype.zo=function(){return!0},ve.prototype.pu=function(){return null},ve.prototype.ls=function(){return this.iv().cq(this)},ve.prototype.toString=function(){return Nr(this)+"@"+Fr(this)+"[job@"+Fr(this.iv())+"]"},ve.$metadata$=W("JobNode",[Xn,_e],void 0,void 0,void 0,Ar.prototype),Ie.prototype.pu=function(){return this.lv_1},Ie.prototype.wv=function(t){this.mv_1.po_1=t},Ie.prototype.sv=function(){return this.mv_1.po_1},Ie.prototype.cw=function(t){this.nv_1.lo_1=t},Ie.prototype.vv=function(){return this.nv_1.lo_1},Ie.prototype.tv=function(){return me(this)===he()},Ie.prototype.pv=function(){return!(null==this.vv())},Ie.prototype.zo=function(){return null==this.vv()},Ie.prototype.qv=function(t){var n,e=me(this);if(null==e)n=ge();else if(e instanceof Error){var r=ge();r.a(e),n=r}else{if(!(e instanceof Tt)){var o="State is "+rt(e);throw X(ot(o))}n=e instanceof Tt?e:B()}var i=n,s=this.vv(),a=s;return null==a||(i.ag(0,a),R()),null==t||G(t,s)||i.a(t),ye(this,he()),i},Ie.prototype.uv=function(t){var n=this.vv();if(null==n)return this.cw(t),R();if(t===n)return R();var e=me(this);if(null==e)ye(this,t);else if(e instanceof Error){if(t===e)return R();var r=ge();r.a(e),r.a(t),ye(this,r)}else{if(!(e instanceof Tt)){var o="State is "+rt(e);throw X(ot(o))}(e instanceof Tt?e:B()).a(t)}},Ie.prototype.toString=function(){return"Finishing[cancelling="+this.pv()+", completing="+this.sv()+", rootCause="+this.vv()+", exceptions="+rt(me(this))+", list="+this.lv_1+"]"},Ie.$metadata$=W("Finishing",[_e]),De.prototype.jt=function(t){!function(t,n,e,r){var o=Ae(e);if(null!=o&&Me(t,n,o,r))return R();var i=be(t,n,r);t.jp(i)}(this.hw_1,this.iw_1,this.jw_1,this.kw_1)},De.prototype.invoke=function(t){return this.jt(t)},De.$metadata$=W("ChildCompletion",void 0,void 0,void 0,void 0,ve.prototype),Te.prototype.ax=function(t,n){var e=this.bx(t,n);return e.l7_1=R(),e.m7_1=null,e.q7()},Te.prototype.r7=function(t,n){return this.ax(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.vw_1=this.tw_1.sp(),this.vw_1 instanceof Fe){if(this.j7_1=6,(t=this.uw_1.t4(this.vw_1.bw_1,this))===tt())return t;continue t}var n=this.vw_1;if(null!=n&&et(n,_e)){if(this.ww_1=this.vw_1.pu(),null==this.ww_1){this.xw_1=null,this.j7_1=5;continue t}this.yw_1=this.ww_1.uu_1,this.j7_1=1;continue t}this.j7_1=7;continue t;case 1:if(G(this.yw_1,this.ww_1)){this.j7_1=4;continue t}if(this.yw_1 instanceof Fe){if(this.zw_1=this.yw_1,this.j7_1=2,(t=this.uw_1.t4(this.zw_1.bw_1,this))===tt())return t;continue t}this.j7_1=3;continue t;case 2:this.j7_1=3;continue t;case 3:this.yw_1=this.yw_1.uu_1,this.j7_1=1;continue t;case 4:this.xw_1=R(),this.j7_1=5;continue t;case 5:case 6:this.j7_1=7;continue t;case 7:return R();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.bx=function(t,n){var e=new Te(this.tw_1,n);return e.uw_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.qp=function(t){this.to_1.lo_1=t},Be.prototype.rp=function(){return this.to_1.lo_1},Be.prototype.uo=function(t){if(null==t)return this.qp(ie()),R();t.up();var n=t.mq(this);this.qp(n),this.tp()&&(n.ls(),this.qp(ie()))},Be.prototype.sp=function(){for(var t=this.so_1;;){var n=t.lo_1;if(!(n instanceof _r))return n;n.cx(this)}},Be.prototype.zo=function(){var t=this.sp();return!(null==t||!et(t,_e))&&t.zo()},Be.prototype.tp=function(){var t=this.sp();return!(null!=t&&et(t,_e))},Be.prototype.up=function(){for(;;){var t=ke(this,this.sp());if(0===t)return!1;if(1===t)return!0}},Be.prototype.vp=function(){},Be.prototype.wp=function(){var t,n=this.sp();if(n instanceof Ie){var e=n.vv(),r=null==e?null:this.xp(e,Nr(this)+" is cancelling");if(null==r)throw X(ot("Job is still new or active: "+this));t=r}else{if(null!=n&&et(n,_e))throw X(ot("Job is still new or active: "+this));t=n instanceof qn?this.yp(n.ep_1,null,1,null):new Kr(Nr(this)+" has completed normally",null,this)}return t},Be.prototype.xp=function(t,n){var e,r=t instanceof Dt?t:null;if(null==r){var o=n;e=new Kr(null==o?this.cp():o,t,this)}else e=r;return e},Be.prototype.yp=function(t,n,e,r){return 0!=(1&e)&&(n=null),this.xp(t,n)},Be.prototype.zp=function(t){return this.aq(!1,!0,t)},Be.prototype.aq=function(t,n,e){for(var r=function(t,n,e){var r;if(e){var o=n instanceof Re?n:null;r=null==o?new He(n):o}else{var i=n instanceof ve?n:null,s=null==i?null:i;r=null==s?new Ue(n):s}var a=r;return a.hv_1=t,a}(this,e,t);;)t:{var o=this.sp(),i=o;if(i instanceof fe)if(o.ou_1){if(this.so_1.atomicfu$compareAndSet(o,r))return r}else Ce(this,o);else{if(null==i||!et(i,_e)){if(n){var s=o instanceof qn?o:null;Er(e,null==s?null:s.ep_1)}return ie()}var a=o.pu();if(null==a)Se(this,o instanceof ve?o:B());else{var u=null,l=ie();if(t&&o instanceof Ie&&(null==(u=o.vv())||e instanceof Fe&&!o.sv())){if(!je(this,o,a,r)){R();break t}if(null==u)return r;l=r,R()}if(null!=u)return n&&Er(e,u),l;if(je(this,o,a,r))return r}}}},Be.prototype.cq=function(t){for(;;){var n=this.sp();if(!(n instanceof ve))return null!=n&&et(n,_e)?(null!=n.pu()&&t.jv(),R()):R();if(n!==t)return R();if(this.so_1.atomicfu$compareAndSet(n,pe()))return R()}},Be.prototype.dq=function(){return!1},Be.prototype.eq=function(t){var n,e=t;if(null==e){n=new Kr(this.cp(),null,this)}else n=e;this.gq(n)},Be.prototype.cp=function(){return"Job was cancelled"},Be.prototype.gq=function(t){this.jq(t)},Be.prototype.hq=function(t){this.jq(t)},Be.prototype.iq=function(t){return t instanceof Dt||!!this.jq(t)&&this.pq()},Be.prototype.jq=function(t){var n,e=ae();return!(!this.dq()||(e=function(t,n){for(;;){var e=t.sp();if(null==e||!et(e,_e)||e instanceof Ie&&e.sv())return ae();var r=Pe(t,e,zn(ze(t,n),!1,2));if(r!==le())return r}}(this,t))!==ue())||(e===ae()&&(e=function(t,n){for(var e=null;;)t:{var r=t.sp(),o=r;if(o instanceof Ie){if(r.tv())return ce();var i=r.pv();if(null!=n||!i){var s,a=e;if(null==a){var u=ze(t,n);e=u,s=u}else s=a;var l=s;r.uv(l)}var c=r.vv(),h=i?null:c;return null==h||(we(t,r.lv_1,h),R()),ae()}if(null==o||!et(o,_e))return ce();var p,f=e;if(null==f){var _=ze(t,n);e=_,p=_}else p=f;var d=p;if(!r.zo()){var v=Pe(t,r,zn(d,!1,2));if(v===ae()){var y="Cannot happen in "+rt(r);throw X(ot(y))}if(v===le()){R();break t}return v}if(Oe(t,r,d))return ae()}}(this,t)),e===ae()||e===ue()?n=!0:e===ce()?n=!1:(this.jp(e),n=!0),n)},Be.prototype.kq=function(t,n){var e=t;return new Kr(null==e?this.cp():e,n,this)},Be.prototype.lq=function(){var t,n=this.sp(),e=n;if(e instanceof Ie)t=n.vv();else if(e instanceof qn)t=n.ep_1;else{if(null!=e&&et(e,_e)){var r="Cannot be cancelling child in this state: "+rt(n);throw X(ot(r))}t=null}var o=t,i=o instanceof Dt?o:null;return null==i?new Kr("Parent job is "+Ee(0,n),o,this):i},Be.prototype.hp=function(t){for(;;){var n=Pe(this,this.sp(),t);if(n===ae())throw Rt("Job "+this+" is already complete or completing, but is being completed with "+rt(t),(r=void 0,null==(r=(e=t)instanceof qn?e:null)?null:r.ep_1));if(n!==le())return n;R()}var e,r},Be.prototype.kt=function(){return Nt((t=new Te(this,null),(n=function(n,e){return t.ax(n,e)}).$arity=1,n));var t,n},Be.prototype.mq=function(t){var n;n=new Fe(t);var e=this.bq(!0,!1,n,2,null);return et(e,re)?e:B()},Be.prototype.kp=function(t){throw t},Be.prototype.nq=function(t){},Be.prototype.oq=function(){return!1},Be.prototype.pq=function(){return!0},Be.prototype.qq=function(t){return!1},Be.prototype.dp=function(t){},Be.prototype.jp=function(t){},Be.prototype.toString=function(){return this.rq()+"@"+Fr(this)},Be.prototype.rq=function(){return this.lp()+"{"+Ee(0,this.sp())+"}"},Be.prototype.lp=function(){return Nr(this)},Be.$metadata$=W("JobSupport",[te,ne,ee,Mr]),Re.$metadata$=W("JobCancellingNode",void 0,void 0,void 0,void 0,ve.prototype),Ne.prototype.pu=function(){return this.rv_1},Ne.prototype.zo=function(){return!1},Ne.prototype.toString=function(){return Rr()?this.rv_1.tu("New"):Ft(this)},Ne.$metadata$=W("InactiveNodeList",[_e]),Fe.prototype.jt=function(t){return this.bw_1.hq(this.iv())},Fe.prototype.invoke=function(t){return this.jt(t)},Fe.prototype.iq=function(t){return this.iv().iq(t)},Fe.$metadata$=W("ChildHandleNode",[re],void 0,void 0,void 0,Re.prototype),He.prototype.jt=function(t){this.ix_1.atomicfu$compareAndSet(0,1)&&this.hx_1(t)},He.prototype.invoke=function(t){return this.jt(t)},He.$metadata$=W("InvokeOnCancelling",void 0,void 0,void 0,void 0,Re.prototype),Ue.prototype.jt=function(t){return this.nx_1(t)},Ue.prototype.invoke=function(t){return this.jt(t)},Ue.$metadata$=W("InvokeOnCompletion",void 0,void 0,void 0,void 0,ve.prototype),We.$metadata$=W("IncompleteStateBox"),Ke.prototype.jt=function(t){this.tx_1.xs(this.tx_1.ys(this.iv()))},Ke.prototype.invoke=function(t){return this.jt(t)},Ke.$metadata$=W("ChildContinuation",void 0,void 0,void 0,void 0,Re.prototype),Je.prototype.dq=function(){return!0},Je.prototype.pq=function(){return this.wx_1},Je.$metadata$=W("JobImpl",[Sn],void 0,void 0,void 0,Be.prototype),Ye.prototype.toString=function(){var t=this.zx();return null==t?Nr(this)+"@"+Fr(this):t},Ye.prototype.zx=function(){var t,n=Ur().ey();if(this===n)return"Dispatchers.Main";try{t=n.yx()}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.iq=function(t){return!1},Xe.$metadata$=W("SupervisorJobImpl",void 0,void 0,void 0,void 0,Je.prototype),Ze.$metadata$=W("TimeoutCancellationException",[Hn],void 0,void 0,void 0,Dt.prototype),Qe.prototype.ot=function(t){return!1},Qe.prototype.pt=function(t,n){var e=t.z7((null==w&&new tr,w));if(null!=e)return e.ky_1=!0,R();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),tr.$metadata$=st("Key",[bt]),nr.$metadata$=nt("Flow"),er.$metadata$=nt("FlowCollector"),rr.$metadata$=nt("MutableSharedFlow",[or,er]),or.$metadata$=nt("SharedFlow",[nr]),ir.$metadata$=nt("MutableStateFlow",[sr,rr]),sr.$metadata$=nt("StateFlow",[or]),ur.prototype.ly=function(t){var n=t;ar(this,null,null==n?hr():n)},ur.prototype.n2=function(){var t=hr(),n=this.vy_1.lo_1;return n===t?null:L(n)?n:B()},ur.prototype.my=function(t,n){var e=t,r=n;return ar(this,null==e?hr():e,null==r?hr():r)},ur.$metadata$=W("StateFlowImpl",[ir,pr,cr],void 0,void 0,void 0,lr.prototype),lr.$metadata$=W("AbstractSharedFlow"),cr.$metadata$=nt("FusibleFlow",[nr]),pr.$metadata$=nt("CancellableFlow",[nr]),fr.prototype.fu=function(){return this.yt_1===this.zt_1},fr.prototype.cu=function(t){this.xt_1[this.zt_1]=t,this.zt_1=(this.zt_1+1|0)&(this.xt_1.length-1|0),this.zt_1===this.yt_1&&function(t){var n=t.xt_1.length,e=Wt(Array(n<<1),null),r=t.xt_1,o=t.yt_1,i=r.length;Kt(r,e,0,o,i);var s=t.xt_1,a=t.xt_1.length-t.yt_1|0,u=t.yt_1;Kt(s,e,a,0,u),t.xt_1=e,t.yt_1=0,t.zt_1=n}(this)},fr.prototype.au=function(){if(this.yt_1===this.zt_1)return null;var t=this.xt_1[this.yt_1];return this.xt_1[this.yt_1]=null,this.yt_1=(this.yt_1+1|0)&(this.xt_1.length-1|0),L(t)?t:B()},fr.$metadata$=W("ArrayQueue"),_r.$metadata$=W("OpDescriptor"),gr.prototype.zy=function(){return this.vr_1},gr.prototype.b5=function(){return this.vr_1.b5()},gr.prototype.az=function(){return this.xr_1},gr.prototype.zr=function(){return!(null==this.yr_1.lo_1)},gr.prototype.bz=function(){for(var t=this.yr_1;;)if(t.lo_1!==vr())return R()},gr.prototype.qt=function(){this.bz();var t,n=(t=this.yr_1.lo_1)instanceof gn?t:null;null==n||n.ds()},gr.prototype.cs=function(t){for(var n=this.yr_1;;){var e=n.lo_1;if(e!==vr()){if(e instanceof Error){if(!this.yr_1.atomicfu$compareAndSet(e,null))throw Jt(ot("Failed requirement."));return e}var r="Inconsistent state "+rt(e);throw X(ot(r))}if(this.yr_1.atomicfu$compareAndSet(vr(),t))return null}},gr.prototype.bs=function(t){for(var n=this.yr_1;;){var e=n.lo_1,r=e;if(G(r,vr())){if(this.yr_1.atomicfu$compareAndSet(vr(),t))return!0}else{if(r instanceof Error)return!0;if(this.yr_1.atomicfu$compareAndSet(e,null))return!1}}},gr.prototype.ms=function(){var t=this.wr_1;return this.wr_1=dr(),t},gr.prototype.js=function(){return this},gr.prototype.z4=function(t){var n=this.vr_1.b5(),e=Mn(t,null,1);if(this.ur_1.ot(n))this.wr_1=e,this.as_1=kr(),this.ur_1.pt(n,this);else{var r=kr(),o=Jn().ku();if(o.du())this.wr_1=e,this.as_1=r,o.bu(this);else{o.gu(!0);try{for(this.b5(),this.xr_1,this.vr_1.z4(t),R();o.wt(););}catch(t){if(!(t instanceof Error))throw t;this.et(t,null)}finally{o.hu(!0)}}}},gr.prototype.ns=function(t,n){t instanceof An&&t.mt_1(n)},gr.prototype.cz=function(t){var n=this.b5().z7(Qn());if(null!=n&&!n.zo()){var e,r=n.wp();return this.ns(t,r),pt(),e=ft(_t(r)),this.z4(e),R(),!0}return!1},gr.prototype.dz=function(t){this.vr_1,this.xr_1,this.vr_1.z4(t),R()},gr.prototype.toString=function(){return"DispatchedContinuation["+this.ur_1+", "+Dr(this.vr_1)+"]"},gr.$metadata$=W("DispatchedContinuation",[so,V],void 0,void 0,void 0,wr.prototype),wr.prototype.ct=function(){return this.as_1},wr.prototype.ns=function(t,n){},wr.prototype.zs=function(t){return null==t||L(t)?t:B()},wr.prototype.bt=function(t){var n=t instanceof qn?t:null;return null==n?null:n.ep_1},wr.prototype.dt=function(){R(),R();var t=null;try{var n=this.js(),e=n instanceof gr?n:B(),r=e.vr_1,o=(e.xr_1,r.b5()),i=this.ms(),s=this.bt(i),a=null==s&&xr(this.as_1)?o.z7(Qn()):null;if(null==a||a.zo()){if(null!=s){var u;pt(),u=ft(_t(s)),r.z4(u),R()}else{var l,c=this.zs(i);pt(),l=ft(c),r.z4(l),R()}}else{var h,p=a.wp();this.ns(i,p),pt();var f=ao(p);h=ft(_t(f)),r.z4(h),R()}}catch(n){if(!(n instanceof Error))throw n;t=n}finally{var _;try{pt(),R(),_=ft(R())}catch(t){if(!(t instanceof Error))throw t;pt(),_=ft(_t(t))}var d=_;this.et(t,ct(d))}},wr.prototype.et=function(t,n){if(null===t&&null===n)return R();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.js().b5(),e)},wr.$metadata$=W("DispatchedTask",void 0,void 0,void 0,void 0,ro.prototype),Cr.prototype.yo=function(){return this.ez_1},Cr.prototype.toString=function(){return"CoroutineScope(coroutineContext="+this.ez_1+")"},Cr.$metadata$=W("ContextScope",[Rn]),Sr.prototype.oq=function(){return!0},Sr.prototype.jp=function(t){mr(Q(this.jr_1),En(t,this.jr_1),null,2)},Sr.prototype.ip=function(t){this.jr_1.z4(En(t,this.jr_1))},Sr.$metadata$=W("ScopeCoroutine",[so],void 0,void 0,void 0,en.prototype),zr.prototype.toString=function(){return"<"+this.fz_1+">"},zr.prototype.gz=function(t){return t===this?null:null==t||L(t)?t:B()},zr.$metadata$=W("Symbol"),Mr.$metadata$=nt("SelectClause0"),Ar.$metadata$=W("CompletionHandlerBase",void 0,void 0,void 0,void 0,io.prototype),Ir.$metadata$=W("CancelHandlerBase"),Br.prototype.ip=function(t){return this.jr_1.z4(En(t,this.jr_1))},Br.$metadata$=W("UndispatchedCoroutine",void 0,void 0,void 0,void 0,Sr.prototype),Hr.prototype.ey=function(){var t=this.dy_1;return null==t?this.cy_1:t},Hr.$metadata$=st("Dispatchers"),Vr.prototype.yx=function(){return this.oz_1},Vr.prototype.ot=function(t){return!this.nz_1},Vr.prototype.pt=function(t,n){return this.mz_1.pt(t,n)},Vr.prototype.toString=function(){var t=this.zx();return null==t?this.mz_1.toString():t},Vr.$metadata$=W("JsMainDispatcher",void 0,void 0,void 0,void 0,Ye.prototype),Wr.prototype.pt=function(t,n){!function(){throw Ut("runBlocking event loop is not supported")}()},Wr.$metadata$=W("UnconfinedEventLoop",void 0,void 0,void 0,void 0,Wn.prototype),Kr.prototype.toString=function(){return Dt.prototype.toString.call(this)+"; job="+this.tz_1},Kr.prototype.equals=function(t){return t===this||!!(t instanceof Kr&&t.message==this.message&&G(t.tz_1,this.tz_1))&&G(t.cause,this.cause)},Kr.prototype.hashCode=function(){var t=T(T(Zt(Gt(this.message)),31)+at(this.tz_1)|0,31),n=this.cause,e=null==n?null:at(n);return t+(null==e?0:e)|0},Kr.$metadata$=W("JobCancellationException",void 0,void 0,void 0,void 0,Dt.prototype),Jr.prototype.wz=function(){process.nextTick(this.f10_1.c10_1)},Jr.$metadata$=st("NodeDispatcher",void 0,void 0,void 0,void 0,Zr.prototype),Yr.prototype.wz=function(){setTimeout(this.f10_1.c10_1,0)},Yr.$metadata$=st("SetTimeoutDispatcher",void 0,void 0,void 0,void 0,Zr.prototype),Xr.prototype.o10=function(){this.d10_1.wz()},Xr.prototype.p10=function(){setTimeout(this.c10_1,0)},Xr.$metadata$=W("ScheduledMessageQueue",void 0,void 0,void 0,void 0,Qr.prototype),Zr.prototype.pt=function(t,n){this.f10_1.q10(n)},Zr.$metadata$=W("SetTimeoutBasedDispatcher",[Un],void 0,void 0,void 0,Tn.prototype),Qr.prototype.q10=function(t){this.cu(t),this.m10_1||(this.m10_1=!0,this.o10())},Qr.prototype.n10=function(){try{var t=this.l10_1,n=0;if(nn?t+o|0:t,l=t>n?n+o|0:(n+e|0)-2|0,c=this.i1s();i=this.i1s().childNodes[u];var h,p=c.removeChild(a(i)),f=this.i1s();h=this.i1s().childNodes[l],f.insertBefore(p,a(h))}while(r (renderComposable.kt:59)"),v(y,e,0),E()&&(I(),s())),s()})),function(t,n){return d.v1b(t,n)})),p;var d;var v,y}(t,n,e)}(a(document.getElementById(t)),null,n,2)},t}.apply(n,r))||(t.exports=o)},261:function(t,n,e){var r,o,i;o=[n,e(744),e(506),e(769)],void 0===(i="function"==typeof(r=function(t,n,e,r){"use strict";var o,i,s,a,u,l,c,h,p,f,_,d,v,y,m,g,b,$,w,x,k,j,C,S,z,q,O,P,M,A,E,I,D,T,B,L,R,N,F,H,U,V,W,K,J,G,Y,X,Z,Q,tt=Math.imul,nt=n.$_$.r4,et=n.$_$.ma,rt=(n.$_$.s5,n.$_$.t9),ot=n.$_$.c1,it=n.$_$.t,st=n.$_$.p5,at=n.$_$.vd,ut=n.$_$.qc,lt=n.$_$.nc,ct=n.$_$.i9,ht=n.$_$.ic,pt=n.$_$.qa,ft=n.$_$.w1,_t=e.$_$.d,dt=n.$_$.g9,vt=n.$_$.e1,yt=n.$_$.id,mt=n.$_$.ud,gt=r.$_$.s,bt=r.$_$.o,$t=r.$_$.i,wt=r.$_$.r,xt=n.$_$.mb,kt=n.$_$.k9,jt=r.$_$.j,Ct=n.$_$.ka,St=n.$_$.o9,zt=n.$_$.r9,qt=n.$_$.ca,Ot=n.$_$.q9,Pt=n.$_$.y4,Mt=r.$_$.q,At=r.$_$.z,Et=n.$_$.ea,It=r.$_$.u,Dt=r.$_$.v,Tt=r.$_$.w,Bt=r.$_$.x,Lt=(r.$_$.m,e.$_$.c),Rt=n.$_$.k6,Nt=n.$_$.j6,Ft=e.$_$.a,Ht=n.$_$.td,Ut=n.$_$.nd,Vt=r.$_$.n,Wt=e.$_$.b,Kt=r.$_$.t,Jt=r.$_$.b,Gt=n.$_$.ab,Yt=n.$_$.p9;function Xt(t,n){return Zt(),n!==t.value&&(t.value=n),function(t,n){Jn(),Un().set(t,n),t instanceof HTMLInputElement&&function(t){var n;if(Jn(),"radio"===t.type){var e=t.name;n=dt(e)>0}else n=!1;if(n){if(!Vn().v2(t.name)){var r=Vn(),o=t.name,i=vt();r.n(o,i)}yt(Vn().b3(t.name)).a(t)}}(t)}(t,n),nt()}function Zt(){i||(i=!0,o=Xt)}function Qt(){s=this,this.m20_1="class",this.n20_1="id",this.o20_1="hidden",this.p20_1="title",this.q20_1="dir",this.r20_1="draggable",this.s20_1="contenteditable",this.t20_1="lang",this.u20_1="tabindex",this.v20_1="spellcheck"}function tn(){}function nn(t,n,e){return function(t,n,e,r){return 0!=(1&n)&&(t=new an),en.call(r,t),r}(t,n,0,Object.create(en.prototype))}function en(t){this.e21_1=t;var n;n=ot(),this.f21_1=n,this.g21_1=new re;var e;e=it(),this.h21_1=e,this.i21_1=null;var r;r=it(),this.j21_1=r,this.k21_1=8}function rn(){a=this,this.t21_1="copy",this.u21_1="cut",this.v21_1="paste",this.w21_1="contextmenu",this.x21_1="click",this.y21_1="dblclick",this.z21_1="focus",this.a22_1="blur",this.b22_1="focusin",this.c22_1="focusout",this.d22_1="keydown",this.e22_1="keyup",this.f22_1="mousedown",this.g22_1="mouseup",this.h22_1="mouseenter",this.i22_1="mouseleave",this.j22_1="mousemove",this.k22_1="mouseout",this.l22_1="mouseover",this.m22_1="wheel",this.n22_1="scroll",this.o22_1="select",this.p22_1="touchcancel",this.q22_1="touchend",this.r22_1="touchmove",this.s22_1="touchstart",this.t22_1="animationcancel",this.u22_1="animationend",this.v22_1="animationiteration",this.w22_1="animationstart",this.x22_1="beforeinput",this.y22_1="input",this.z22_1="change",this.a23_1="invalid",this.b23_1="drag",this.c23_1="drop",this.d23_1="dragstart",this.e23_1="dragend",this.f23_1="dragover",this.g23_1="dragenter",this.h23_1="dragleave",this.i23_1="submit",this.j23_1="reset"}function on(){return null==a&&new rn,a}function sn(){}function an(){var t;t=it(),this.m21_1=t,this.n21_1=8}function un(t,n,e){ht.call(this,t,n),this.j20_1=e}function ln(){c=this,En.call(this,"button"),this.o23_1=0}function cn(){h=this,In.call(this,"checkbox"),this.w23_1=0}function hn(){return null==h&&new cn,h}function pn(){p=this,An.call(this,"color"),this.e24_1=0}function fn(){f=this,An.call(this,"date"),this.l24_1=0}function _n(){_=this,An.call(this,"datetime-local"),this.p24_1=0}function dn(){d=this,An.call(this,"email"),this.t24_1=0}function vn(){v=this,An.call(this,"file"),this.x24_1=0}function yn(){y=this,An.call(this,"hidden"),this.b25_1=0}function mn(){m=this,An.call(this,"month"),this.f25_1=0}function gn(){g=this,Dn.call(this,"number"),this.j25_1=0}function bn(){b=this,An.call(this,"password"),this.q25_1=0}function $n(){$=this,In.call(this,"radio"),this.u25_1=0}function wn(){return null==$&&new $n,$}function xn(){w=this,Dn.call(this,"range"),this.y25_1=0}function kn(){x=this,An.call(this,"search"),this.c26_1=0}function jn(){k=this,En.call(this,"submit"),this.g26_1=0}function Cn(){j=this,An.call(this,"tel"),this.k26_1=0}function Sn(){C=this,An.call(this,"text"),this.o26_1=0}function zn(){return null==C&&new Sn,C}function qn(){S=this,An.call(this,"time"),this.s26_1=0}function On(){z=this,An.call(this,"url"),this.w26_1=0}function Pn(){q=this,An.call(this,"week"),this.a27_1=0}function Mn(){return null==q&&new Pn,q}function An(t){Ln.call(this,t),this.h24_1=0}function En(t){Ln.call(this,t),this.r23_1=0}function In(t){Ln.call(this,t),this.z23_1=0}function Dn(t){Ln.call(this,t),this.m25_1=0}function Tn(){O=this}function Bn(){return null==O&&new Tn,O}function Ln(t){Bn(),this.k20_1=t,this.l20_1=0}function Rn(t,n){this.d27_1=t,this.e27_1=n,this.f27_1=this.d27_1,this.g27_1=0}function Nn(t,n,e){Rn.call(this,t,e),this.m27_1=n}function Fn(t,n){Rn.call(this,t,n)}function Hn(t,n){this.r27_1=t,this.s27_1=n,this.t27_1=8}function Un(){return Jn(),P}function Vn(){return Jn(),M}function Wn(t,n,e){Jn();var r,o=n;o.g12(-1867048565),bt()&>(-1867048565,e,-1,"org.jetbrains.compose.web.attributes.builders.DisposeRadioGroupEffect$composable (InternalControlledInputUtils.kt:67)"),$t(null,(r=t,function(t){return new Kn(r.w27(t))}),o,6),bt()&&wt(),o.k12()}function Kn(t){this.v27_1=t}function Jn(){if(A);else{A=!0;var t,n=new WeakMap;P=n,t=ot(),M=t}}function Gn(t){this.x27_1=t,this.y27_1=8}function Yn(t,n){Rn.call(this,t,n)}function Xn(t){on(),Rn.call(this,"change",t)}function Zn(t){this.j28_1=t,this.k28_1=8}function Qn(){E=this}function te(){return null==E&&new Qn,E}function ne(t,n){this.p28_1=t,this.q28_1=n,this.r28_1=0}function ee(){}function re(){var t;t=it(),this.v28_1=t;var n;n=it(),this.w28_1=n,this.x28_1=8}function oe(){}function ie(t,n){this.a29_1=t,this.b29_1=n,this.c29_1=8}function se(t,n){if(t.f()!==n.f())return!1;var e,r=0;t:if(qt(t,Pt)&&t.h())e=!0;else{for(var o=t.c();o.d();){var i=o.e(),s=r;r=s+1|0;var a=n.g(s);if(i.a29_1!==a.a29_1||pt(i.b29_1)!==pt(a.b29_1)){e=!1;break t}}e=!0}return e}function ae(t,n,e,r,o){var i=r;i=i.p1d(-1594897193),Mt(i,"C(TagElement$composable)P(2)");var s,a,u,l=o;if(0==(14&o)&&(l|=i.l12(t)?4:2),0==(112&o)&&(l|=i.l12(n)?32:16),0==(896&o)&&(l|=i.l12(e)?256:128),146==(731&l)&&i.x1b())i.b18();else{bt()&>(-1594897193,l,-1,"org.jetbrains.compose.web.dom.TagElement$composable (Base.kt:106)");var c=i;c.g12(547886695),Mt(c,"C(remember$composable):Composables.kt#9igjgp");var h,p=c,f=p.h12();if(f===At().j12_1){var _=new ce;p.i12(_),h=_}else h=f;var d=h,v=null==d||Et(d)?d:ut();c.k12();var y,m=v,g=i;g.e18(),g.e1d()?g.g1d((a=t,u=m,function(){var t=a.w1n();return u.p29(t),new ue(t)})):g.i1d();var b=It(g),$=nn(null,1);null==n||n($),y=$.i21_1,Dt(b).g12(509942095);var w=Tt(Dt(b));Bt(w,$.j21_1,((s=function(t,n){return t.l29(n),nt()}).callableName="updateClasses",s)),Bt(w,$.g21_1,function(){var t=function(t,n){return t.j29(n),nt()};return t.callableName="updateStyleDeclarations",t}());var x=$.s21();Bt(w,x,function(){var t=function(t,n){return t.k29(n),nt()};return t.callableName="updateAttrs",t}());var k=$.e21_1.k23();Bt(w,k,function(){var t=function(t,n){return t.h29(n),nt()};return t.callableName="updateEventListeners",t}()),Bt(w,$.h21_1,function(){var t=function(t,n){return t.i29(n),nt()};return t.callableName="updateProperties",t}()),Dt(b).k12(),g.g12(2058660585);var j=g,C=8;if(18==(91&C)&&j.x1b())j.b18();else{var S=e;i.g12(-1128047990),null==S||S(m,j,14&C|112&l>>3),i.k12()}g.k12(),g.j1d(),null==y||($t(null,function(t,n){return function(e){return t(e,n.q29())}}(y,m),i,6),nt(),nt()),bt()&&wt()}var z=i.q1d();null===z||z.l1e(function(t,n,e,r){return function(o,i){return function(t,n,e,r,o,i){ae(t,n,e,o,1|r)}(t,n,e,r,o),nt()}}(t,n,e,o))}function ue(t){Lt.call(this,t),this.f29_1=t,this.g29_1=Rt()}function le(){}function ce(){he.call(this)}function he(){this.r29_1=0,this.s29_1=8}function pe(){}function fe(t){return Yt("el",1,Gt,(function(t){return fe(t)}),null),t.u29_1.n2()}function _e(t){var n;this.t29_1=t,this.u29_1=Ut((n=this,function(){return document.createElement(n.t29_1)}))}function de(t,n,e){Fe();var r=n;r=r.p1d(-363526853),Mt(r,"C(Text$composable)");var o,i=e;if(0==(14&e)&&(i|=r.l12(t)?4:2),2==(11&i)&&r.x1b())r.b18();else{bt()&>(-363526853,e,-1,"org.jetbrains.compose.web.dom.Text$composable (Elements.kt:479)");var s=r;s.g12(547886695),Mt(s,"C(remember$composable):Composables.kt#9igjgp");var a,u=s,l=u.h12();if(l===At().j12_1){var c=Ee;u.i12(c),a=c}else a=l;var h=a,p=null==h||Et(h)?h:ut();s.k12();var f=p,_=r;_.g12(-1846754774),Mt(_,"C(ComposeNode$composable):Composables.kt#9igjgp"),_.t1c()instanceof Wt||Vt(),_.e18(),_.e1d()?_.g1d((o=f,function(){return o()})):_.i1d();var d=Tt(_);Bt(d,t,Ie),_.j1d(),_.k12(),bt()&&wt()}var v,y,m=r.q1d();null===m||m.l1e((v=t,y=e,function(t,n){return function(t,n,e,r){de(t,e,1|n)}(v,y,t),nt()}))}function ve(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-915831286),Mt(a,"C(H3$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-915831286,u,-1,"org.jetbrains.compose.web.dom.H3$composable (Elements.kt:539)"),ae((Fe(),R),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){ve(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function ye(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(1021009996),Mt(a,"C(Div$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(1021009996,u,-1,"org.jetbrains.compose.web.dom.Div$composable (Elements.kt:489)"),ae((Fe(),D),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){ye(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function me(t,n,e,r,o,i){Fe();var s={_v:t},a={_v:n},u={_v:e},l=r;l=l.p1d(-319539737),Mt(l,"C(Form$composable)");var c=o;if(0!=(1&i)?c|=6:0==(14&o)&&(c|=l.l12(s._v)?4:2),0!=(2&i)?c|=48:0==(112&o)&&(c|=l.l12(a._v)?32:16),0!=(4&i)?c|=384:0==(896&o)&&(c|=l.l12(u._v)?256:128),146==(731&c)&&l.x1b())l.b18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=null),0!=(4&i)&&(u._v=null),bt()&>(-319539737,c,-1,"org.jetbrains.compose.web.dom.Form$composable (Elements.kt:637)");var h=(Fe(),J),p=s._v,f=a._v,_=l;_.g12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.l12(p)|_.l12(f)),m=v.h12();if(y||m===At().j12_1){var g=De(s,a);v.i12(g),d=g}else d=m;var b=d,$=null==b||Et(b)?b:ut();_.k12(),ae(h,$,u._v,l,896&c),bt()&&wt()}var w,x,k,j,C,S=l.q1d();null===S||S.l1e((w=s,x=a,k=u,j=o,C=i,function(t,n){return function(t,n,e,r,o,i,s){me(t._v,n._v,e._v,i,1|r,o)}(w,x,k,j,C,t),nt()}))}function ge(t,n,e,r,o,i){Fe();var s={_v:t},a={_v:n},u={_v:e},l=r;l=l.p1d(-493483649),Mt(l,"C(Label$composable)P(2)");var c=o;if(0!=(1&i)?c|=6:0==(14&o)&&(c|=l.l12(s._v)?4:2),0!=(2&i)?c|=48:0==(112&o)&&(c|=l.l12(a._v)?32:16),0!=(4&i)?c|=384:0==(896&o)&&(c|=l.l12(u._v)?256:128),146==(731&c)&&l.x1b())l.b18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=null),0!=(4&i)&&(u._v=null),bt()&>(-493483649,c,-1,"org.jetbrains.compose.web.dom.Label$composable (Elements.kt:833)");var h=(Fe(),Z),p=s._v,f=a._v,_=l;_.g12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.l12(p)|_.l12(f)),m=v.h12();if(y||m===At().j12_1){var g=Te(s,a);v.i12(g),d=g}else d=m;var b=d,$=null==b||Et(b)?b:ut();_.k12(),ae(h,$,u._v,l,896&c),bt()&&wt()}var w,x,k,j,C,S=l.q1d();null===S||S.l1e((w=s,x=a,k=u,j=o,C=i,function(t,n){return function(t,n,e,r,o,i,s){ge(t._v,n._v,e._v,i,1|r,o)}(w,x,k,j,C,t),nt()}))}function be(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-577256683),Mt(a,"C(TextArea$composable)P(1)");var u,l,c,h,p,f=r;if(0!=(1&o)?f|=6:0==(14&r)&&(f|=a.l12(i._v)?4:2),0!=(2&o)?f|=48:0==(112&r)&&(f|=a.l12(s._v)?32:16),18==(91&f)&&a.x1b())a.b18();else{0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-577256683,r,-1,"org.jetbrains.compose.web.dom.TextArea$composable (Elements.kt:729)");var _=a;_.g12(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,b=null==g||Et(g)?g:ut();_.k12();var $=b,w=a;w.g12(547886695),Mt(w,"C(remember$composable):Composables.kt#9igjgp");var x,k=w,j=k.h12();if(j===At().j12_1){var C=Kt(0,null,2,null);k.i12(C),x=C}else x=j;var S=x,z=null==S||Et(S)?S:ut();w.k12();var q=z,O=(Fe(),X),P=[q,s._v,$,i._v],M=a;M.g12(-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();$t(a,(o=n,function(t){return n=o.w27(t),Jn(),Un().has(n)&&(n.value=mt(Un().get(n))),new Be;var n}),i,0),bt()&&(wt(),nt())}return nt()}}(q)),K=a;K.g12(-838505973),Mt(K,"C(remember$composable)P(1):Composables.kt#9igjgp");var J,G=K,Y=K.l12(W),Z=G.h12();if(Y||Z===At().j12_1){var Q=(u=W,function(t,n,e){return u.p1y(t,n,e)});G.i12(Q),J=Q}else J=Z;var tt=J,et=null==tt||Et(tt)?tt:ut();K.k12(),ae(O,V,et,a,384),bt()&&wt()}var rt=a.q1d();null===rt||rt.l1e(function(t,n,e,r){return function(o,i){return function(t,n,e,r,o,i){be(t._v,n._v,o,1|e,r)}(t,n,e,r,o),nt()}}(i,s,r,o))}function $e(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-767970749),Mt(a,"C(Button$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-767970749,u,-1,"org.jetbrains.compose.web.dom.Button$composable (Elements.kt:521)"),ae((Fe(),B),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){$e(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function we(t,n,e,r){Fe();var o={_v:t},i=n;i=i.p1d(1126514281),Mt(i,"C(Br$composable)");var s=e;0!=(1&r)?s|=6:0==(14&e)&&(s|=i.l12(o._v)?4:2),2==(11&s)&&i.x1b()?i.b18():(0!=(1&r)&&(o._v=null),bt()&>(1126514281,s,-1,"org.jetbrains.compose.web.dom.Br$composable (Elements.kt:599)"),ae((Fe(),V),o._v,null,i,384|112&s<<3),bt()&&wt());var a,u,l,c=i.q1d();null===c||c.l1e((a=o,u=e,l=r,function(t,n){return function(t,n,e,r,o){we(t._v,r,1|n,e)}(a,u,l,t),nt()}))}function xe(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-2140946851),Mt(a,"C(Canvas$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-2140946851,u,-1,"org.jetbrains.compose.web.dom.Canvas$composable (Elements.kt:430)"),ae((Fe(),I),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){xe(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function ke(t,n,e,r){Fe();var o=e;o=o.p1d(-1013116589),Mt(o,"C(Input$composable)P(1)");var i,s,a,u,l=r;if(0==(14&r)&&(l|=o.l12(t)?4:2),0==(112&r)&&(l|=o.l12(n)?32:16),18==(91&l)&&o.x1b())o.b18();else{bt()&>(-1013116589,l,-1,"org.jetbrains.compose.web.dom.Input$composable (Elements.kt:1054)");var c=o;c.g12(547886695),Mt(c,"C(remember$composable):Composables.kt#9igjgp");var h,p=c,f=p.h12();if(f===At().j12_1){var _=Kt(0,null,2,null);p.i12(_),h=_}else h=f;var d=h,v=null==d||Et(d)?d:ut();c.k12();var y=v,m=(Fe(),T),g=o;g.g12(-1058148781),Mt(g,"C(remember$composable)P(1,2,3):Composables.kt#9igjgp");var b,$=g,w=!!(!!(g.l12(t)|g.l12(y))|g.l12(n)),x=$.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.g20("type",n.k20_1)}(n,s),n.u27(function(t){return function(n){return t.ly(t.n2()+1|0),nt()}}(u)),a(n),nt()});$.i12(k),b=k}else b=x;var j=b,C=null==j||Et(j)?j:ut();g.k12();var S=C,z=Jt(o,558133459,!0,function(t,n){return function(e,r,o){var i,s=r,a=o;if(0==(14&o)&&(a|=s.l12(e)?4:2,nt()),18==(91&a)&&s.x1b())s.b18(),nt();else{bt()&>(558133459,a,-1,"org.jetbrains.compose.web.dom.Input$composable. (Elements.kt:1073)"),s.g12(-1270925487),kt(t,wn())&&Wn(e,s,14&a),s.k12();var u=n.n2();$t(u,(i=e,function(t){return function(t){Jn();var n=Bn().c27(t.type);if(Un().has(t)){if(kt(n,wn())){var e=Vn().b3(t.name);if(null==e);else for(var r=e.c();r.d();){var o=r.e();o.checked=xt(mt(Un().get(o)))}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.w27(t)),new Le}),s,0),bt()&&(wt(),nt())}return nt()}}(t,y)),q=o;q.g12(-838505973),Mt(q,"C(remember$composable)P(1):Composables.kt#9igjgp");var O,P=q,M=q.l12(z),A=P.h12();if(M||A===At().j12_1){var E=(i=z,function(t,n,e){return i.p1y(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,S,D,o,384),bt()&&wt()}var B=o.q1d();null===B||B.l1e(function(t,n,e){return function(r,o){return function(t,n,e,r,o){ke(t,n,r,1|e)}(t,n,e,r),nt()}}(t,n,r))}function je(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(1065330793),Mt(a,"C(H4$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(1065330793,u,-1,"org.jetbrains.compose.web.dom.H4$composable (Elements.kt:545)"),ae((Fe(),N),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){je(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function Ce(t,n,e,r,o,i){Fe();var s={_v:t},a={_v:n},u={_v:e},l=r;l=l.p1d(-140298183),Mt(l,"C(Select$composable)P(!1,2)");var c=o;if(0!=(1&i)?c|=6:0==(14&o)&&(c|=l.l12(s._v)?4:2),0!=(2&i)?c|=48:0==(112&o)&&(c|=l.l1d(a._v)?32:16),0!=(4&i)?c|=384:0==(896&o)&&(c|=l.l12(u._v)?256:128),146==(731&c)&&l.x1b())l.b18();else{0!=(1&i)&&(s._v=null),0!=(2&i)&&(a._v=!1),0!=(4&i)&&(u._v=null),bt()&>(-140298183,c,-1,"org.jetbrains.compose.web.dom.Select$composable (Elements.kt:653)");var h=(Fe(),G),p=a._v,f=s._v,_=l;_.g12(-1124426577),Mt(_,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var d,v=_,y=!!(_.l12(p)|_.l12(f)),m=v.h12();if(y||m===At().j12_1){var g=Re(a,s);v.i12(g),d=g}else d=m;var b=d,$=null==b||Et(b)?b:ut();_.k12(),ae(h,$,u._v,l,896&c),bt()&&wt()}var w,x,k,j,C,S=l.q1d();null===S||S.l1e((w=s,x=a,k=u,j=o,C=i,function(t,n){return function(t,n,e,r,o,i,s){Ce(t._v,n._v,e._v,i,1|r,o)}(w,x,k,j,C,t),nt()}))}function Se(t,n,e,r,o,i){Fe();var s={_v:n},a={_v:e},u=r;u=u.p1d(1780967894),Mt(u,"C(Option$composable)P(2)");var l=o;if(0!=(1&i)?l|=6:0==(14&o)&&(l|=u.l12(t)?4:2),0!=(2&i)?l|=48:0==(112&o)&&(l|=u.l12(s._v)?32:16),0!=(4&i)?l|=384:0==(896&o)&&(l|=u.l12(a._v)?256:128),146==(731&l)&&u.x1b())u.b18();else{0!=(2&i)&&(s._v=null),0!=(4&i)&&(a._v=null),bt()&>(1780967894,l,-1,"org.jetbrains.compose.web.dom.Option$composable (Elements.kt:669)");var c=(Fe(),Y),h=s._v,p=u;p.g12(-1124426577),Mt(p,"C(remember$composable)P(1,2):Composables.kt#9igjgp");var f,_=p,d=!!(p.l12(t)|p.l12(h)),v=_.h12();if(d||v===At().j12_1){var y=Ne(t,s);_.i12(y),f=y}else f=v;var m=f,g=null==m||Et(m)?m:ut();p.k12(),ae(c,g,a._v,u,896&l),bt()&&wt()}var b,$,w,x,k,j=u.q1d();null===j||j.l1e((b=t,$=s,w=a,x=o,k=i,function(t,n){return function(t,n,e,r,o,i,s){Se(t,n._v,e._v,i,1|r,o)}(b,$,w,x,k,t),nt()}))}function ze(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-583188148),Mt(a,"C(H1$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-583188148,u,-1,"org.jetbrains.compose.web.dom.H1$composable (Elements.kt:527)"),ae((Fe(),L),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){ze(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function qe(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-100692211),Mt(a,"C(P$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-100692211,u,-1,"org.jetbrains.compose.web.dom.P$composable (Elements.kt:563)"),ae((Fe(),F),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){qe(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function Oe(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-300232938),Mt(a,"C(Small$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-300232938,u,-1,"org.jetbrains.compose.web.dom.Small$composable (Elements.kt:587)"),ae((Fe(),H),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){Oe(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function Pe(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-114341698),Mt(a,"C(Ul$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-114341698,u,-1,"org.jetbrains.compose.web.dom.Ul$composable (Elements.kt:603)"),ae((Fe(),W),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){Pe(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function Me(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-456299496),Mt(a,"C(Li$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-456299496,u,-1,"org.jetbrains.compose.web.dom.Li$composable (Elements.kt:615)"),ae((Fe(),K),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){Me(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function Ae(t,n,e,r,o){Fe();var i={_v:t},s={_v:n},a=e;a=a.p1d(-155327957),Mt(a,"C(Span$composable)");var u=r;0!=(1&o)?u|=6:0==(14&r)&&(u|=a.l12(i._v)?4:2),0!=(2&o)?u|=48:0==(112&r)&&(u|=a.l12(s._v)?32:16),18==(91&u)&&a.x1b()?a.b18():(0!=(1&o)&&(i._v=null),0!=(2&o)&&(s._v=null),bt()&>(-155327957,u,-1,"org.jetbrains.compose.web.dom.Span$composable (Elements.kt:593)"),ae((Fe(),U),i._v,s._v,a,112&u<<3|896&u<<3),bt()&&wt());var l,c,h,p,f=a.q1d();null===f||f.l1e((l=i,c=s,h=r,p=o,function(t,n){return function(t,n,e,r,o,i){Ae(t._v,n._v,o,1|e,r)}(l,c,h,p,t),nt()}))}function Ee(){return Fe(),new Lt(document.createTextNode(""))}function Ie(t,n){Fe();var e=t.i1s();return(e instanceof Text?e:ut()).data=n,nt()}function De(t,n){return function(e){var r=t._v;return null==r||0===dt(r)||(function(t,n){Zt(),t.g20("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.g20("for",n)}(e,t._v),nt()),null!=n._v&&n._v(e),nt()}}function Be(){}function Le(){}function Re(t,n){return function(e){return t._v&&(r=e,Zt(),r.g20("multiple",""),nt()),null!=n._v&&n._v(new Gn(e)),nt();var r}}function Ne(t,n){return function(e){return function(t,n){Zt(),t.g20("value",n)}(e,t),null!=n._v&&n._v(e),nt()}}function Fe(){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"),R=new _e("h3"),N=new _e("h4"),new _e("h5"),new _e("h6"),F=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"),K=new _e("li"),new _e("img"),J=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.h2a_1=t,this.i2a_1=0}function Ue(t){this.j2a_1=t;var n;n=this.j2a_1.target,this.k2a_1=n,this.l2a_1=this.j2a_1.bubbles,this.m2a_1=this.j2a_1.cancelable,this.n2a_1=this.j2a_1.composed,this.o2a_1=this.j2a_1.currentTarget,this.p2a_1=this.j2a_1.eventPhase,this.q2a_1=this.j2a_1.defaultPrevented,this.r2a_1=this.j2a_1.timeStamp,this.s2a_1=this.j2a_1.type,this.t2a_1=this.j2a_1.isTrusted,this.u2a_1=8}function Ve(t,n){Ue.call(this,n),this.h2b_1=t;var e,r=n.data;e=null==r?null:r,this.i2b_1=e;var o,i=n.dataTransfer;o=null==i?null:i,this.j2b_1=o;var s,a=n.inputType;s=null==a?null:a,this.k2b_1=s;var u=n.isComposing,l=null==u?null:u;this.l2b_1=null!=l&&l,this.m2b_1=8}function We(t){Ue.call(this,t),this.z2b_1=t,this.a2c_1=t.altKey,this.b2c_1=t.button,this.c2c_1=t.buttons,this.d2c_1=t.clientX,this.e2c_1=t.clientY,this.f2c_1=t.ctrlKey,this.g2c_1=t.metaKey;var n=t.movementX,e=null!=n&&"number"==typeof n?n:null;this.h2c_1=null==e?0:e;var r=t.movementY,o=null!=r&&"number"==typeof r?r:null;this.i2c_1=null==o?0:o,this.j2c_1=t.offsetX,this.k2c_1=t.offsetY,this.l2c_1=t.pageX,this.m2c_1=t.pageY,this.n2c_1=t.region,this.o2c_1=t.relatedTarget,this.p2c_1=t.screenX,this.q2c_1=t.screenY,this.r2c_1=t.shiftKey,this.s2c_1=t.x,this.t2c_1=t.y,this.u2c_1=8}return un.prototype=Object.create(ht.prototype),un.prototype.constructor=un,En.prototype=Object.create(Ln.prototype),En.prototype.constructor=En,ln.prototype=Object.create(En.prototype),ln.prototype.constructor=ln,In.prototype=Object.create(Ln.prototype),In.prototype.constructor=In,cn.prototype=Object.create(In.prototype),cn.prototype.constructor=cn,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,bn.prototype=Object.create(An.prototype),bn.prototype.constructor=bn,$n.prototype=Object.create(In.prototype),$n.prototype.constructor=$n,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,Sn.prototype=Object.create(An.prototype),Sn.prototype.constructor=Sn,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,Nn.prototype=Object.create(Rn.prototype),Nn.prototype.constructor=Nn,Fn.prototype=Object.create(Rn.prototype),Fn.prototype.constructor=Fn,Yn.prototype=Object.create(Rn.prototype),Yn.prototype.constructor=Yn,Xn.prototype=Object.create(Rn.prototype),Xn.prototype.constructor=Xn,ue.prototype=Object.create(Lt.prototype),ue.prototype.constructor=ue,ce.prototype=Object.create(he.prototype),ce.prototype.constructor=ce,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$=rt("AttrsScope",[sn]),en.prototype.l21=function(){return this.e21_1},en.prototype.c21=function(t){this.e21_1.c21(t)},en.prototype.d21=function(t){this.e21_1.d21(t)},en.prototype.b21=function(t){this.e21_1.b21(t)},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.r21=function(){return this.j21_1},en.prototype.x20=function(t){this.j21_1.k1(t)},en.prototype.y20=function(t){st(this.j21_1,t)},en.prototype.w20=function(t){t(this.g21_1)},en.prototype.g20=function(t,n){return this.f21_1.n(t,n),this},en.prototype.a21=function(t,n){var e=at(t,n);this.h21_1.a(e instanceof lt?e:ut())},en.prototype.s21=function(){return this.f21_1},en.$metadata$=ct("AttrsScopeBuilder",[tn,sn]),rn.$metadata$=et("Companion"),sn.$metadata$=rt("EventsListenerScope"),an.prototype.b21=function(t){this.m21_1.a(t)},an.prototype.k23=function(){return this.m21_1},an.$metadata$=ct("EventsListenerScopeBuilder",[sn]),un.$metadata$=ct("ButtonType",void 0,void 0,void 0,void 0,ht.prototype),ln.$metadata$=et("Button",void 0,void 0,void 0,void 0,En.prototype),cn.$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),bn.$metadata$=et("Password",void 0,void 0,void 0,void 0,An.prototype),$n.$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),Sn.$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.a24=function(t){return Mn().b27(t)},An.$metadata$=ct("InputTypeWithStringValue",void 0,void 0,void 0,void 0,Ln.prototype),En.prototype.s23=function(t){return nt()},En.prototype.a24=function(t){return this.s23(t),nt()},En.$metadata$=ct("InputTypeWithUnitValue",void 0,void 0,void 0,void 0,Ln.prototype),In.prototype.a24=function(t){var n,e,r=t.target,o=null==(n=null==r?null:r)?null:n.checked;return null!=(e=null==o?null:o)&&e},In.$metadata$=ct("InputTypeCheckedValue",void 0,void 0,void 0,void 0,Ln.prototype),Dn.prototype.a24=function(t){var n,e=t.target,r=null==(n=null==e?null:e)?null:n.valueAsNumber;return null==r?null:r},Dn.$metadata$=ct("InputTypeNumberValue",void 0,void 0,void 0,void 0,Ln.prototype),Tn.prototype.c27=function(t){var n;switch(t){case"button":null==c&&new ln,n=c;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==b&&new bn,n=b;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=zn();break;case"time":null==S&&new qn,n=S;break;case"url":null==z&&new On,n=z;break;case"week":n=Mn();break;default:throw ft(pt("fromString got unknown type - "+t))}return n},Tn.$metadata$=et("Companion"),Ln.prototype.b27=function(t){var n,e,r=t.target,o=null==(n=null==r?null:r)?null:n.value;return null==(e=null==o?null:o)?"":e},Ln.$metadata$=ct("InputType"),Rn.prototype.a1z=function(){return this.f27_1},Rn.prototype.h27=function(t){var n;n=new Ue(t),this.e27_1(n)},Rn.prototype.handleEvent=function(t){return this.h27(t)},Rn.$metadata$=ct("SyntheticEventListener",[_t]),Nn.prototype.h27=function(t){var n=this.m27_1.a24(t);this.e27_1(new Ve(n,t))},Nn.prototype.handleEvent=function(t){return this.h27(t)},Nn.$metadata$=ct("InputEventListener",void 0,void 0,void 0,void 0,Rn.prototype),Fn.prototype.h27=function(t){var n;n=t,this.e27_1(new We(n))},Fn.prototype.handleEvent=function(t){return this.h27(t)},Fn.$metadata$=ct("MouseEventListener",void 0,void 0,void 0,void 0,Rn.prototype),Hn.prototype.g20=function(t,n){return this.s27_1.g20(t,n)},Hn.prototype.y20=function(t){this.s27_1.y20(t)},Hn.prototype.x20=function(t){this.s27_1.x20(t)},Hn.prototype.z20=function(t){return this.s27_1.z20(t)},Hn.prototype.c21=function(t){this.s27_1.c21(t)},Hn.prototype.d21=function(t){this.s27_1.d21(t)},Hn.prototype.a21=function(t,n){this.s27_1.a21(t,n)},Hn.prototype.b21=function(t){this.s27_1.b21(t)},Hn.prototype.w20=function(t){this.s27_1.w20(t)},Hn.prototype.u27=function(t){on(),this.b21(new Nn("input",this.r27_1,t))},Hn.$metadata$=ct("InputAttrsScope",[tn]),Kn.prototype.ls=function(){var t=Vn().b3(this.v27_1.name);null==t||t.lf(this.v27_1);var n=Vn().b3(this.v27_1.name);!0===(null==n?null:n.h())&&Vn().qg(this.v27_1.name)},Kn.$metadata$=ct(void 0,[jt]),Gn.prototype.g20=function(t,n){return this.x27_1.g20(t,n)},Gn.prototype.y20=function(t){this.x27_1.y20(t)},Gn.prototype.x20=function(t){this.x27_1.x20(t)},Gn.prototype.z20=function(t){return this.x27_1.z20(t)},Gn.prototype.c21=function(t){this.x27_1.c21(t)},Gn.prototype.d21=function(t){this.x27_1.d21(t)},Gn.prototype.a21=function(t,n){this.x27_1.a21(t,n)},Gn.prototype.b21=function(t){this.x27_1.b21(t)},Gn.prototype.w20=function(t){this.x27_1.w20(t)},Gn.prototype.z27=function(t){on(),this.b21(new Yn("input",t))},Gn.prototype.a28=function(t){this.b21(new Xn(t))},Gn.$metadata$=ct("SelectAttrsScope",[tn]),Yn.prototype.h27=function(t){var n=t.target,e=(null==n?null:n).value,r=null==e?null:pt(e);this.e27_1(new Ve(r,t))},Yn.prototype.handleEvent=function(t){return this.h27(t)},Yn.$metadata$=ct("SelectInputEventListener",void 0,void 0,void 0,void 0,Rn.prototype),Xn.prototype.h27=function(t){var n=t.target,e=(null==n?null:n).value,r=null==e?null:pt(e);this.e27_1(new He(r,t))},Xn.prototype.handleEvent=function(t){return this.h27(t)},Xn.$metadata$=ct("SelectChangeEventListener",void 0,void 0,void 0,void 0,Rn.prototype),Zn.prototype.g20=function(t,n){return this.j28_1.g20(t,n)},Zn.prototype.y20=function(t){this.j28_1.y20(t)},Zn.prototype.x20=function(t){this.j28_1.x20(t)},Zn.prototype.z20=function(t){return this.j28_1.z20(t)},Zn.prototype.c21=function(t){this.j28_1.c21(t)},Zn.prototype.d21=function(t){this.j28_1.d21(t)},Zn.prototype.a21=function(t,n){this.j28_1.a21(t,n)},Zn.prototype.b21=function(t){this.j28_1.b21(t)},Zn.prototype.w20=function(t){this.j28_1.w20(t)},Zn.prototype.l28=function(t){return this.a21((Zt(),o),t),this},Zn.prototype.m28=function(t){on(),this.b21(new Nn("input",zn(),t))},Zn.$metadata$=ct("TextAreaAttrsScope",[tn]),Qn.prototype.n28=function(){return"%"},Qn.prototype.o28=function(){return"px"},Qn.$metadata$=et("Companion"),ne.prototype.n2=function(){return this.p28_1},ne.prototype.s28=function(){return this.q28_1},ne.prototype.toString=function(){return""+this.p28_1+this.q28_1},ne.prototype.hashCode=function(){var t=St(this.p28_1);return tt(t,31)+zt(this.q28_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.p28_1,n.p28_1)&&!!kt(this.q28_1,n.q28_1)},ne.$metadata$=ct("CSSUnitValueTyped"),Object.defineProperty(ne.prototype,"value",{configurable:!0,get:function(){return this.n2()}}),Object.defineProperty(ne.prototype,"unit",{configurable:!0,get:function(){return this.s28()}}),ee.$metadata$=rt("StyleScope"),re.prototype.y28=function(){return this.v28_1},re.prototype.z28=function(){return this.w28_1},re.prototype.t28=function(t,n){this.y28().a(new ie(t,n))},re.prototype.equals=function(t){return!(null==t||!qt(t,oe))&&!!se(this.y28(),t.y28())&&se(this.z28(),t.z28())},re.$metadata$=ct("StyleScopeBuilder",[ee,oe]),oe.$metadata$=rt("StyleHolder"),ie.prototype.a1z=function(){return this.a29_1},ie.prototype.n2=function(){return this.b29_1},ie.prototype.l4=function(){return this.a29_1},ie.prototype.m4=function(){return this.b29_1},ie.prototype.toString=function(){return"StylePropertyDeclaration(name="+this.a29_1+", value="+this.b29_1+")"},ie.prototype.hashCode=function(){var t=Ot(this.a29_1);return tt(t,31)+zt(this.b29_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.a29_1===n.a29_1&&!!kt(this.b29_1,n.b29_1)},ie.$metadata$=ct("StylePropertyDeclaration"),ue.prototype.i1s=function(){return this.f29_1},ue.prototype.h29=function(t){for(var n=this.g29_1.c();n.d();){var e=n.e();this.f29_1.removeEventListener(e.a1z(),e)}this.g29_1=t;for(var r=this.g29_1.c();r.d();){var o=r.e();this.f29_1.addEventListener(o.a1z(),o)}},ue.prototype.i29=function(t){for(var n=t.c();n.d();){var e=n.e(),r=e.l4(),o=e.m4();r(this.f29_1,o)}},ue.prototype.j29=function(t){var n=this.f29_1;if(n instanceof HTMLElement||n instanceof SVGElement){this.f29_1.removeAttribute("style");for(var e=this.f29_1.style,r=t.y28().c();r.d();){var o=r.e(),i=o.l4(),s=o.m4();e.setProperty(i,pt(s))}for(var a=t.z28().c();a.d();){var u=a.e(),l=u.l4(),c=u.m4();e.setProperty(l,pt(c))}}},ue.prototype.k29=function(t){for(var n=this.f29_1.getAttributeNames(),e=0,r=n.length;e{"use strict";function r(){}e.r(n),e.d(n,{Animation:()=>ye,Animations:()=>ge,ArcElement:()=>wo,BarController:()=>Re,BarElement:()=>Bo,BasePlatform:()=>qr,BasicPlatform:()=>Or,BubbleController:()=>Ne,CategoryScale:()=>Ci,Chart:()=>vo,DatasetController:()=>Pe,Decimation:()=>Fo,DomPlatform:()=>Ur,DoughnutController:()=>Fe,Element:()=>Ke,Filler:()=>oi,Interaction:()=>vr,Legend:()=>ai,LineController:()=>He,LineElement:()=>Oo,LinearScale:()=>qi,LogarithmicScale:()=>Pi,PieController:()=>Ve,PointElement:()=>Mo,PolarAreaController:()=>Ue,RadarController:()=>We,RadialLinearScale:()=>Bi,Scale:()=>rr,ScatterController:()=>sr,SubTitle:()=>hi,Ticks:()=>Ge,TimeScale:()=>Wi,TimeSeriesScale:()=>Ji,Title:()=>li,Tooltip:()=>ki,_adapters:()=>cr,_detectPlatform:()=>Vr,animator:()=>_e,controllers:()=>ar,defaults:()=>Xt,elements:()=>Lo,layouts:()=>zr,plugins:()=>ji,registerables:()=>Yi,registry:()=>ir,scales:()=>Gi});const o=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 l(t,n){return u(t)?t:n}function c(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,r){let o,i,u;if(s(t))if(i=t.length,r)for(o=i-1;o>=0;o--)n.call(e,t[o],o);else for(o=0;ot,x:t=>t.x,y:t=>t.y};function w(t,n){const e=$[n]||($[n]=function(t){const n=function(t){const n=t.split("."),e=[];let r="";for(const t of n)r+=t,r.endsWith("\\")?r=r.slice(0,-1)+".":(e.push(r),r="");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},S=Math.PI,z=2*S,q=z+S,O=Number.POSITIVE_INFINITY,P=S/180,M=S/2,A=S/4,E=2*S/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))),r=t/e;return(r<=1?1:r<=2?2:r<=5?5:10)*e}function B(t){return!isNaN(parseFloat(t))&&isFinite(t)}function L(t,n,e){return Math.abs(t-n)u&&l=Math.min(n,e)-r&&t<=Math.max(n,e)+r}function X(t,n,e){e=e||(e=>t[e]1;)r=i+o>>1,e(r)?i=r:o=r;return{lo:i,hi:o}}const Z=(t,n,e,r)=>X(t,e,r?r=>t[r][n]<=e:r=>t[r][n]X(t,e,(r=>t[r][n]>=e)),tt=["push","pop","shift","splice","unshift"];function nt(t,n){const e=t._chartjs;if(!e)return;const r=e.listeners,o=r.indexOf(n);-1!==o&&r.splice(o,1),r.length>0||(tt.forEach((n=>{delete t[n]})),delete t._chartjs)}function et(t){const n=new Set;let e,r;for(e=0,r=t.length;eArray.prototype.slice.call(t));let o=!1,i=[];return function(...e){i=r(e),o||(o=!0,rt.call(window,(()=>{o=!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 r=n.length;let o=0,i=r;if(t._sorted){const{iScale:s,_parsed:a}=t,u=s.axis,{min:l,max:c,minDefined:h,maxDefined:p}=s.getUserBounds();h&&(o=G(Math.min(Z(a,s.axis,l).lo,e?r:Z(n,u,s.getPixelForValue(l)).lo),0,r-1)),i=p?G(Math.max(Z(a,s.axis,c,!0).hi+1,e?0:Z(n,u,s.getPixelForValue(c),!0).hi+1),o,r)-o:r-o}return{start:o,count:i}}function ut(t){const{xScale:n,yScale:e,_scaleRanges:r}=t,o={xmin:n.min,xmax:n.max,ymin:e.min,ymax:e.max};if(!r)return t._scaleRanges=o,!0;const i=r.xmin!==n.min||r.xmax!==n.max||r.ymin!==e.min||r.ymax!==e.max;return Object.assign(r,o),i}const lt=t=>0===t||1===t,ct=(t,n,e)=>-Math.pow(2,10*(t-=1))*Math.sin((t-n)*z/e),ht=(t,n,e)=>Math.pow(2,-10*t)*Math.sin((t-n)*z/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(S*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=>lt(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=>lt(t)?t:ct(t,.075,.3),easeOutElastic:t=>lt(t)?t:ht(t,.075,.3),easeInOutElastic(t){const n=.1125;return lt(t)?t:t<.5?.5*ct(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},bt=[..."0123456789ABCDEF"],$t=t=>bt[15&t],wt=t=>bt[(240&t)>>4]+bt[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 r=n*Math.min(e,1-e),o=(n,o=(n+t/30)%12)=>e-r*Math.max(Math.min(o-3,9-o,1),-1);return[o(0),o(8),o(4)]}function Ct(t,n,e){const r=(r,o=(r+t/60)%6)=>e-e*n*Math.max(Math.min(o,4-o,1),0);return[r(5),r(3),r(1)]}function St(t,n,e){const r=jt(t,1,.5);let o;for(n+e>1&&(o=1/(n+e),n*=o,e*=o),o=0;o<3;o++)r[o]*=1-n-e,r[o]+=n;return r}function zt(t){const n=t.r/255,e=t.g/255,r=t.b/255,o=Math.max(n,e,r),i=Math.min(n,e,r),s=(o+i)/2;let a,u,l;return o!==i&&(l=o-i,u=s>.5?l/(2-o-i):l/(o+i),a=function(t,n,e,r,o){return t===o?(n-e)/r+(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 r=zt(t);r[n]=Math.max(0,Math.min(r[n]+r[n]*e,0===n?360:1)),r=Ot(r),t.r=r[0],t.g=r[1],t.b=r[2]}}function Lt(t,n){return t?Object.assign(n||{},t):t}function Rt(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 Nt(t){return"r"===t.charAt(0)?function(t){const n=It.exec(t);let e,r,o,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],r=+n[3],o=+n[5],e=255&(n[2]?dt(e):_t(e,0,255)),r=255&(n[4]?dt(r):_t(r,0,255)),o=255&(n[6]?dt(o):_t(o,0,255)),{r:e,g:r,b:o,a:i}}}(t):function(t){const n=kt.exec(t);let e,r=255;if(!n)return;n[5]!==e&&(r=n[6]?dt(+n[5]):vt(+n[5]));const o=Pt(+n[2]),i=+n[3]/100,s=+n[4]/100;return e="hwb"===n[1]?function(t,n,e){return qt(St,t,n,e)}(o,i,s):"hsv"===n[1]?function(t,n,e){return qt(Ct,t,n,e)}(o,i,s):Ot(o,i,s),{r:e[0],g:e[1],b:e[2],a:r}}(t)}class Ft{constructor(t){if(t instanceof Ft)return t;const n=typeof t;let e;var r,o,i;"object"===n?e=Rt(t):"string"===n&&(i=(r=t).length,"#"===r[0]&&(4===i||5===i?o={r:255&17*gt[r[1]],g:255&17*gt[r[2]],b:255&17*gt[r[3]],a:5===i?17*gt[r[4]]:255}:7!==i&&9!==i||(o={r:gt[r[1]]<<4|gt[r[2]],g:gt[r[3]]<<4|gt[r[4]],b:gt[r[5]]<<4|gt[r[6]],a:9===i?gt[r[7]]<<4|gt[r[8]]:255})),e=o||function(t){Et||(Et=function(){const t={},n=Object.keys(At),e=Object.keys(Mt);let r,o,i,s,a;for(r=0;r>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)||Nt(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=Rt(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)?$t: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=zt(t),e=n[0],r=mt(n[1]),o=mt(n[2]);return t.a<255?`hsla(${e}, ${r}%, ${o}%, ${yt(t.a)})`:`hsl(${e}, ${r}%, ${o}%)`}(this._rgb):void 0}mix(t,n){if(t){const e=this.rgb,r=t.rgb;let o;const i=n===o?.5:n,s=2*i-1,a=e.a-r.a,u=((s*a==-1?s:(s+a)/(1+s*a))+1)/2;o=1-u,e.r=255&u*e.r+o*r.r+.5,e.g=255&u*e.g+o*r.g+.5,e.b=255&u*e.b+o*r.b+.5,e.a=i*e.a+(1-i)*r.a,this.rgb=e}return this}interpolate(t,n){return t&&(this._rgb=function(t,n,e){const r=Tt(yt(t.r)),o=Tt(yt(t.g)),i=Tt(yt(t.b));return{r:vt(Dt(r+e*(Tt(yt(n.r))-r))),g:vt(Dt(o+e*(Tt(yt(n.g))-o))),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 Ft(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=zt(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 Ft(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 Kt=Object.create(null),Jt=Object.create(null);function Gt(t,n){if(!n)return t;const e=n.split(".");for(let n=0,r=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(Jt,t,n)}override(t,n){return Yt(Kt,t,n)}route(t,n,e,r){const o=Gt(this,t),i=Gt(this,e),s="_"+n;Object.defineProperties(o,{[s]:{value:o[n],writable:!0},[n]:{enumerable:!0,get(){const t=this[s],n=i[r];return a(t)?Object.assign({},n,t):c(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,r,o){let i=n[o];return i||(i=n[o]=t.measureText(o).width,e.push(o)),i>r&&(r=i),r}function Qt(t,n,e,r){let o=(r=r||{}).data=r.data||{},i=r.garbageCollect=r.garbageCollect||[];r.font!==n&&(o=r.data={},i=r.garbageCollect=[],r.font=n),t.save(),t.font=n;let a=0;const u=e.length;let l,c,h,p,f;for(l=0;le.length){for(l=0;l<_;l++)delete o[i[l]];i.splice(0,_)}return a}function tn(t,n,e){const r=t.currentDevicePixelRatio,o=0!==e?Math.max(e/2,.5):0;return Math.round((n-o)*r)/r+o}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,r){rn(t,n,e,r,null)}function rn(t,n,e,r,o){let i,s,a,u,l,c;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,r),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:o?t.ellipse(e,r,o/2,f,0,0,z):t.arc(e,r,f,0,z),t.closePath();break;case"triangle":t.moveTo(e+Math.sin(_)*f,r-Math.cos(_)*f),_+=E,t.lineTo(e+Math.sin(_)*f,r-Math.cos(_)*f),_+=E,t.lineTo(e+Math.sin(_)*f,r-Math.cos(_)*f),t.closePath();break;case"rectRounded":l=.516*f,u=f-l,s=Math.cos(_+A)*u,a=Math.sin(_+A)*u,t.arc(e-s,r-a,l,_-S,_-M),t.arc(e+a,r-s,l,_-M,_),t.arc(e+s,r+a,l,_,_+M),t.arc(e-a,r+s,l,_+M,_+S),t.closePath();break;case"rect":if(!p){u=Math.SQRT1_2*f,c=o?o/2:u,t.rect(e-c,r-u,2*c,2*u);break}_+=A;case"rectRot":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,r-a),t.lineTo(e+a,r-s),t.lineTo(e+s,r+a),t.lineTo(e-a,r+s),t.closePath();break;case"crossRot":_+=A;case"cross":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,r-a),t.lineTo(e+s,r+a),t.moveTo(e+a,r-s),t.lineTo(e-a,r+s);break;case"star":s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,r-a),t.lineTo(e+s,r+a),t.moveTo(e+a,r-s),t.lineTo(e-a,r+s),_+=A,s=Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,r-a),t.lineTo(e+s,r+a),t.moveTo(e+a,r-s),t.lineTo(e-a,r+s);break;case"line":s=o?o/2:Math.cos(_)*f,a=Math.sin(_)*f,t.moveTo(e-s,r-a),t.lineTo(e+s,r+a);break;case"dash":t.moveTo(e,r),t.lineTo(e+Math.cos(_)*f,r+Math.sin(_)*f)}t.fill(),n.borderWidth>0&&t.stroke()}}function on(t,n,e){return e=e||.5,!n||t&&t.x>n.left-e&&t.xn.top-e&&t.y0&&""!==a.strokeColor;let c,h;for(t.save(),t.font=o.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),c=0;cc(t[e],t[n[e]]):n=>t[n]:()=>t;for(const t of o)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 bn(t,n){t=t||{},n=n||Xt.font;let e=c(t.size,n.size);"string"==typeof e&&(e=parseInt(e,10));let r=c(t.style,n.style);r&&!(""+r).match(_n)&&(console.warn('Invalid font style specified: "'+r+'"'),r="");const o={family:c(t.family,n.family),lineHeight:dn(c(t.lineHeight,n.lineHeight),e),size:e,style:r,weight:c(t.weight,n.weight),string:""};return o.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}(o),o}function $n(t,n,e,r){let o,i,a,u=!0;for(o=0,i=t.length;ot[0])){k(r)||(r=En("_fallback",t));const i={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:t,_rootScopes:e,_fallback:r,_getTarget:o,override:o=>xn([o,...t],n,e,r)};return new Proxy(i,{deleteProperty:(n,e)=>(delete n[e],delete n._keys,delete t[0][e],!0),get:(e,r)=>zn(e,r,(()=>function(t,n,e,r){let o;for(const i of n)if(o=En(Cn(i,t),e),k(o))return Sn(t,o)?Mn(e,r,t,o):o}(r,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 r=t._storage||(t._storage=o());return t[n]=r[n]=e,delete t._keys,!0}})}function kn(t,n,e,r){const o={_cacheable:!1,_proxy:t,_context:n,_subProxy:e,_stack:new Set,_descriptors:jn(t,r),setContext:n=>kn(t,n,e,r),override:o=>kn(t.override(o),n,e,r)};return new Proxy(o,{deleteProperty:(n,e)=>(delete n[e],delete t[e],!0),get:(t,n,e)=>zn(t,n,(()=>function(t,n,e){const{_proxy:r,_context:o,_subProxy:i,_descriptors:u}=t;let l=r[n];return j(l)&&u.isScriptable(n)&&(l=function(t,n,e,r){const{_proxy:o,_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||r),a.delete(t),Sn(t,n)&&(n=Mn(o._scopes,o,t,n)),n}(n,l,t,e)),s(l)&&l.length&&(l=function(t,n,e,r){const{_proxy:o,_context:i,_subProxy:s,_descriptors:u}=e;if(k(i.index)&&r(t))n=n[i.index%n.length];else if(a(n[0])){const e=n,r=o._scopes.filter((t=>t!==e));n=[];for(const a of e){const e=Mn(r,o,t,a);n.push(kn(e,i,s&&s[t],u))}}return n}(n,l,t,u.isIndexable)),Sn(n,l)&&(l=kn(l,o,i&&i[n],u)),l}(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,r)=>(t[e]=r,delete n[e],!0)})}function jn(t,n={scriptable:!0,indexable:!0}){const{_scriptable:e=n.scriptable,_indexable:r=n.indexable,_allKeys:o=n.allKeys}=t;return{allKeys:o,scriptable:e,indexable:r,isScriptable:j(e)?e:()=>e,isIndexable:j(r)?r:()=>r}}const Cn=(t,n)=>t?t+x(n):n,Sn=(t,n)=>a(n)&&"adapters"!==t&&(null===Object.getPrototypeOf(n)||n.constructor===Object);function zn(t,n,e){if(Object.prototype.hasOwnProperty.call(t,n))return t[n];const r=e();return t[n]=r,r}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,r,o){for(const i of n){const n=On(e,i);if(n){t.add(n);const i=qn(n._fallback,e,o);if(k(i)&&i!==e&&i!==r)return i}else if(!1===n&&k(r)&&e!==r)return null}return!1}function Mn(t,n,e,r){const o=n._rootScopes,i=qn(n._fallback,e,r),u=[...t,...o],l=new Set;l.add(r);let c=An(l,u,e,i||e,r);return null!==c&&(!k(i)||i===e||(c=An(l,u,i,c,r),null!==c))&&xn(Array.from(l),[""],o,i,(()=>function(t,n,e){const r=t._getTarget();n in r||(r[n]={});const o=r[n];return s(o)&&a(e)?e:o}(n,e,r)))}function An(t,n,e,r,o){for(;e;)e=Pn(t,n,e,r,o);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,r){const{iScale:o}=t,{key:i="r"}=this._parsing,s=new Array(r);let a,u,l,c;for(a=0,u=r;an"x"===t?"y":"x";function Rn(t,n,e,r){const o=t.skip?n:t,i=n,s=e.skip?n:e,a=V(i,o),u=V(s,i);let l=a/(a+u),c=u/(a+u);l=isNaN(l)?0:l,c=isNaN(c)?0:c;const h=r*l,p=r*c;return{previous:{x:i.x-h*(s.x-o.x),y:i.y-h*(s.y-o.y)},next:{x:i.x+p*(s.x-o.x),y:i.y+p*(s.y-o.y)}}}function Nn(t,n,e){return Math.max(Math.min(t,e),n)}function Fn(t,n,e,r,o){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),r=t.length,o=Array(r).fill(0),i=Array(r);let s,a,u,l=Bn(t,0);for(s=0;swindow.getComputedStyle(t,null),Kn=["top","right","bottom","left"];function Jn(t,n,e){const r={};e=e?"-"+e:"";for(let o=0;o<4;o++){const i=Kn[o];r[i]=parseFloat(t[n+"-"+i+e])||0}return r.width=r.left+r.right,r.height=r.top+r.bottom,r}function Gn(t,n){if("native"in t)return t;const{canvas:e,currentDevicePixelRatio:r}=n,o=Wn(e),i="border-box"===o.boxSizing,s=Jn(o,"padding"),a=Jn(o,"border","width"),{x:u,y:l,box:c}=function(t,n){const e=t.touches,r=e&&e.length?e[0]:t,{offsetX:o,offsetY:i}=r;let s,a,u=!1;if(((t,n,e)=>(t>0||n>0)&&(!e||!e.shadowRoot))(o,i,t.target))s=o,a=i;else{const t=n.getBoundingClientRect();s=r.clientX-t.left,a=r.clientY-t.top,u=!0}return{x:s,y:a,box:u}}(t,e),h=s.left+(c&&a.left),p=s.top+(c&&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/r),y:Math.round((l-p)/_*e.height/r)}}const Yn=t=>Math.round(10*t)/10;function Xn(t,n,e){const r=n||1,o=Math.floor(t.height*r),i=Math.floor(t.width*r);t.height=o/r,t.width=i/r;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!==r||s.height!==o||s.width!==i)&&(t.currentDevicePixelRatio=r,s.height=o,s.width=i,t.ctx.setTransform(r,0,0,r,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),r=e&&e.match(/^(\d+)(\.\d+)?px$/);return r?+r[1]:void 0}function te(t,n,e,r){return{x:t.x+e*(n.x-t.x),y:t.y+e*(n.y-t.y)}}function ne(t,n,e,r){return{x:t.x+e*(n.x-t.x),y:"middle"===r?e<.5?t.y:n.y:"after"===r?e<1?t.y:n.y:e>0?n.y:t.y}}function ee(t,n,e,r){const o={x:t.cp2x,y:t.cp2y},i={x:n.cp1x,y:n.cp1y},s=te(t,o,e),a=te(o,i,e),u=te(i,n,e),l=te(s,a,e),c=te(a,u,e);return te(l,c,e)}const re=new Map;function oe(t,n,e){return function(t,n){n=n||{};const e=t+JSON.stringify(n);let r=re.get(e);return r||(r=new Intl.NumberFormat(t,n),re.set(e,r)),r}(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,r;"ltr"!==n&&"rtl"!==n||(e=t.canvas.style,r=[e.getPropertyValue("direction"),e.getPropertyPriority("direction")],e.setProperty("direction",n,"important"),t.prevTextDirection=r)}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:J,compare:W,normalize:K}:{between:Y,compare:(t,n)=>t-n,normalize:t=>t}}function le({start:t,end:n,count:e,loop:r,style:o}){return{start:t%e,end:n%e,loop:r&&(n-t+1)%e==0,style:o}}function ce(t,n,e){if(!e)return[t];const{property:r,start:o,end:i}=e,s=n.length,{compare:a,between:u,normalize:l}=ue(r),{start:c,end:h,loop:p,style:f}=function(t,n,e){const{property:r,start:o,end:i}=e,{between:s,normalize:a}=ue(r),u=n.length;let l,c,{start:h,end:p,loop:f}=t;if(f){for(h+=u,p+=u,l=0,c=u;lr({chart:t,initial:n.initial,numSteps:i,currentStep:Math.min(e-n.start,i)})))}_refresh(){this._request||(this._running=!0,this._request=rt.call(window,(()=>{this._update(),this._request=null,this._running&&this._refresh()})))}_update(t=Date.now()){let n=0;this._charts.forEach(((e,r)=>{if(!e.running||!e.items.length)return;const o=e.items;let i,s=o.length-1,a=!1;for(;s>=0;--s)i=o[s],i._active?(i._total>e.duration&&(e.duration=i._total),i.tick(t),a=!0):(o[s]=o[o.length-1],o.pop());a&&(r.draw(),this._notify(r,e,t,"progress")),o.length||(e.running=!1,this._notify(r,e,t,"complete"),e.initial=!1),n+=o.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 r=e.length-1;for(;r>=0;--r)e[r].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 r=Vt(t||de),o=r.valid&&Vt(n||de);return o&&o.valid?o.mix(r,e).hexString():n},number:(t,n,e)=>t+(n-t)*e};class ye{constructor(t,n,e,r){const o=n[e];r=$n([t.to,r,o,t.from]);const i=$n([t.from,o,r]);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=r,this._promises=void 0}active(){return this._active}update(t,n,e){if(this._active){this._notify(!1);const r=this._target[this._prop],o=e-this._start,i=this._duration-o;this._start=e,this._duration=Math.floor(Math.max(i,t.duration)),this._total+=o,this._loop=!!t.loop,this._to=$n([t.to,n,r,t.from]),this._from=$n([t.from,r,n])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const n=t-this._start,e=this._duration,r=this._prop,o=this._from,i=this._loop,s=this._to;let a;if(this._active=o!==s&&(i||n1?2-a:a,a=this._easing(Math.min(1,Math.max(0,a))),this._target[r]=this._fn(o,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 r=t[e];if(!a(r))return;const o={};for(const t of me)o[t]=r[t];(s(r.properties)&&r.properties||[e]).forEach((t=>{t!==e&&n.has(t)||n.set(t,o)}))}))}_animateOptions(t,n){const e=n.options,r=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(!r)return[];const o=this._createAnimations(r,e);return e.$shared&&function(t,n){const e=[],r=Object.keys(n);for(let n=0;n{t.options=e}),(()=>{})),o}_createAnimations(t,n){const e=this._properties,r=[],o=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){r.push(...this._animateOptions(t,n));continue}const l=n[u];let c=o[u];const h=e.get(u);if(c){if(h&&c.active()){c.update(h,l,s);continue}c.cancel()}h&&h.duration?(o[u]=c=new ye(h,t,u,l),r.push(c)):t[u]=l}return r}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 be(t,n){const e=t&&t.options||{},r=e.reverse,o=void 0===e.min?n:0,i=void 0===e.max?n:0;return{start:r?i:o,end:r?o:i}}function $e(t,n){const e=[],r=t._getSortedDatasetMetas(n);let o,i;for(o=0,i=r.length;o0||!e&&n<0)return o.index}return null}function Ce(t,n){const{chart:e,_cachedMeta:r}=t,o=e._stacks||(e._stacks={}),{iScale:i,vScale:s,index:a}=r,u=i.axis,l=s.axis,c=function(t,n,e){return`${t.id}.${n.id}.${e.stack||e.type}`}(i,s,r),h=n.length;let p;for(let t=0;te[t].axis===n)).shift()}function ze(t,n){const e=t.controller.index,r=t.vScale&&t.vScale.axis;if(r){n=n||t._parsed;for(const t of n){const n=t._stacks;if(!n||void 0===n[r]||void 0===n[r][e])return;delete n[r][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&&ze(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,n=this._cachedMeta,e=this.getDataset(),r=(t,n,e,r)=>"x"===t?n:"r"===t?r:e,o=n.xAxisID=c(e.xAxisID,Se(t,"x")),i=n.yAxisID=c(e.yAxisID,Se(t,"y")),s=n.rAxisID=c(e.rAxisID,Se(t,"r")),a=n.indexAxis,u=n.iAxisID=r(a,o,i,s),l=n.vAxisID=r(a,i,o,s);n.xScale=this.getScaleForId(o),n.yScale=this.getScaleForId(i),n.rScale=this.getScaleForId(s),n.iScale=this.getScaleForId(u),n.vScale=this.getScaleForId(l)}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&&ze(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 r,o,i;for(r=0,o=n.length;r{const n="_onData"+x(t),e=r[t];Object.defineProperty(r,t,{configurable:!0,enumerable:!1,value(...t){const o=e.apply(this,t);return r._chartjs.listeners.forEach((e=>{"function"==typeof e[n]&&e[n](...t)})),o}})})))),this._syncList=[],this._data=n}var r}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const n=this._cachedMeta,e=this.getDataset();let r=!1;this._dataCheck();const o=n._stacked;n._stacked=xe(n.vScale,n),n.stack!==e.stack&&(r=!0,ze(n),n.stack=e.stack),this._resyncElements(t),(r||o!==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:r}=this,{iScale:o,_stacked:i}=e,u=o.axis;let l,c,h,p=0===t&&n===r.length||e._sorted,f=t>0&&e._parsed[t-1];if(!1===this._parsing)e._parsed=r,e._sorted=!0,h=r;else{h=s(r[t])?this.parseArrayData(e,r,t,n):a(r[t])?this.parseObjectData(e,r,t,n):this.parsePrimitiveData(e,r,t,n);const o=()=>null===c[u]||f&&c[u]t&&!n.hidden&&n._stacked&&{keys:$e(e,!0),values:null})(n,e,this.chart),l={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY},{min:c,max:h}=function(t){const{min:n,max:e,minDefined:r,maxDefined:o}=t.getUserBounds();return{min:r?n:Number.NEGATIVE_INFINITY,max:o?e:Number.POSITIVE_INFINITY}}(s);let p,f;function _(){f=r[p];const n=f[s.axis];return!u(f[t.axis])||c>n||h=0;--p)if(!_()){this.updateRangeFromParsed(l,t,f,a);break}return l}getAllParsedValues(t){const n=this._cachedMeta._parsed,e=[];let r,o,i;for(r=0,o=n.length;r=0&&tthis.getContext(e,r)),c);return f.$shared&&(f.$shared=a,o[i]=Object.freeze(Oe(f,a))),f}_resolveAnimations(t,n,e){const r=this.chart,o=this._cachedDataOpts,i=`animation-${n}`,s=o[i];if(s)return s;let a;if(!1!==r.options.animation){const r=this.chart.config,o=r.datasetAnimationScopeKeys(this._type,n),i=r.getOptionScopes(this.getDataset(),o);a=r.createResolver(i,this.getContext(t,e,n))}const u=new ge(r,a&&a.animations);return a&&a._cacheable&&(o[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),r=this._sharedOptions,o=this.getSharedOptions(e),i=this.includeOptions(n,o)||o!==r;return this.updateSharedOptions(o,n,e),{sharedOptions:o,includeOptions:i}}updateElement(t,n,e,r){qe(r)?Object.assign(t,e):this._resolveAnimations(n,r).update(t,e)}updateSharedOptions(t,n,e){t&&!qe(n)&&this._resolveAnimations(void 0,n).update(t,e)}_setStyle(t,n,e,r){t.active=r;const o=this.getStyle(n,r);this._resolveAnimations(n,e,r).update(t,{options:!r&&this.getSharedOptions(o)||o})}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 r=e.length,o=n.length,i=Math.min(o,r);i&&this.parse(0,i),o>r?this._insertElements(r,o-r,t):o{for(t.length+=n,s=t.length-1;s>=i;s--)t[s]=t[s-n]};for(a(o),s=t;st-n)))}return t._cache.$bar}(n,t.type);let r,o,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(r=0,o=e.length;rMath.abs(a)&&(u=a,l=s),n[e.axis]=l,n._custom={barStart:u,barEnd:l,start:o,end:i,min:s,max:a}}(t,n,e,r):n[e.axis]=e.parse(t,r),n}function Ee(t,n,e,r){const o=t.iScale,i=t.vScale,s=o.getLabels(),a=o===i,u=[];let l,c,h,p;for(l=e,c=e+r;lt.x,e="left",r="right"):(n=t.baset.controller.options.grouped)),o=e.options.stacked,s=[],a=t=>{const e=t.controller.getParsed(n),r=e&&e[t.vScale.axis];if(i(r)||isNaN(r))return!0};for(const e of r)if((void 0===n||!a(e))&&((!1===o||-1===s.indexOf(e.stack)||void 0===o&&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 r=this._getStacks(t,e),o=void 0!==n?r.indexOf(n):-1;return-1===o?r.length-1:o}_getRuler(){const t=this.options,n=this._cachedMeta,e=n.iScale,r=[];let o,i;for(o=0,i=n.data.length;o=e?1:-1)}(h,n,s)*o,p===s&&(v-=h/2);const t=n.getPixelForDecimal(0),e=n.getPixelForDecimal(1),r=Math.min(t,e),i=Math.max(t,e);v=Math.max(Math.min(v,i),r),c=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:c,center:c+h/2}}_calculateBarIndexPixels(t,n){const e=n.scale,r=this.options,o=r.skipNull,s=c(r.maxBarThickness,1/0);let a,u;if(n.grouped){const e=o?this._getStackCount(t):n.stackCount,l="flex"===r.barThickness?function(t,n,e,r){const o=n.pixels,i=o[t];let s=t>0?o[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:r}=n,o=this.getParsed(t),i=e.getLabelForValue(o.x),s=r.getLabelForValue(o.y),a=o._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,r){const o="reset"===r,{iScale:i,vScale:s}=this._cachedMeta,{sharedOptions:a,includeOptions:u}=this._getSharedOptions(n,r),l=i.axis,c=s.axis;for(let h=n;h""}}}};class Fe 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,r=this._cachedMeta;if(!1===this._parsing)r._parsed=e;else{let o,i,s=t=>+e[t];if(a(e[t])){const{key:t="value"}=this._parsing;s=n=>+w(e[n],t)}for(o=t,i=t+n;oJ(t,a,u,!0)?1:Math.max(n,n*e,r,r*e),_=(t,n,r)=>J(t,a,u,!0)?-1:Math.min(n,n*e,r,r*e),d=f(0,l,h),v=f(M,c,p),y=_(S,l,h),m=_(S+M,c,p);r=(d-y)/2,o=(v-m)/2,i=-(d+y)/2,s=-(v+m)/2}return{ratioX:r,ratioY:o,offsetX:i,offsetY:s}}(f,p,a),m=(e.width-i)/_,g=(e.height-i)/d,b=Math.max(Math.min(m,g)/2,0),$=h(this.options.radius,b),w=($-Math.max($*a,0))/this._getVisibleDatasetWeightTotal();this.offsetX=v*$,this.offsetY=y*$,r.total=this.calculateTotal(),this.outerRadius=$-w*this._getRingWeightOffset(this.index),this.innerRadius=Math.max(this.outerRadius-w*c,0),this.updateElements(o,0,o.length,t)}_circumference(t,n){const e=this.options,r=this._cachedMeta,o=this._getCircumference();return n&&e.animation.animateRotate||!this.chart.getDataVisibility(t)||null===r._parsed[t]||r.data[t].hidden?0:this.calculateCircumference(r._parsed[t]*o/z)}updateElements(t,n,e,r){const o="reset"===r,i=this.chart,s=i.chartArea,a=i.options.animation,u=(s.left+s.right)/2,l=(s.top+s.bottom)/2,c=o&&a.animateScale,h=c?0:this.innerRadius,p=c?0:this.outerRadius,{sharedOptions:f,includeOptions:_}=this._getSharedOptions(n,r);let d,v=this._getRotation();for(d=0;d0&&!isNaN(t)?z*(Math.abs(t)/n):0}getLabelAndValue(t){const n=this._cachedMeta,e=this.chart,r=e.data.labels||[],o=oe(n._parsed[t],e.options.locale);return{label:r[t]||"",value:o}}getMaxBorderWidth(t){let n=0;const e=this.chart;let r,o,i,s,a;if(!t)for(r=0,o=e.data.datasets.length;r"spacing"!==t,_indexable:t=>"spacing"!==t},Fe.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,r)=>{const o=t.getDatasetMeta(0).controller.getStyle(r);return{text:n,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,lineWidth:o.borderWidth,pointStyle:e,hidden:!t.getDataVisibility(r),index:r}}))}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:r=[],_dataset:o}=n,i=this.chart._animationsDisabled;let{start:s,count:a}=at(n,r,i);this._drawStart=s,this._drawCount=a,ut(n)&&(s=0,a=r.length),e._chart=this.chart,e._datasetIndex=this.index,e._decimated=!!o._decimated,e.points=r;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(r,s,a,t)}updateElements(t,n,e,r){const o="reset"===r,{iScale:s,vScale:a,_stacked:u,_dataset:l}=this._cachedMeta,{sharedOptions:c,includeOptions:h}=this._getSharedOptions(n,r),p=s.axis,f=a.axis,{spanGaps:_,segment:d}=this.options,v=B(_)?_:Number.POSITIVE_INFINITY,y=this.chart._animationsDisabled||o||"none"===r;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=l.data[_]),h&&(g.options=c||this.resolveDataElementOptions(_,n.active?"active":r)),y||this.updateElement(n,_,g,r),m=e}}getMaxOverflow(){const t=this._cachedMeta,n=t.dataset,e=n.options&&n.options.borderWidth||0,r=t.data||[];if(!r.length)return e;const o=r[0].size(this.resolveDataElementOptions(0)),i=r[r.length-1].size(this.resolveDataElementOptions(r.length-1));return Math.max(e,o,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,r=e.data.labels||[],o=oe(n._parsed[t].r,e.options.locale);return{label:r[t]||"",value:o}}parseObjectData(t,n,e,r){return Dn.bind(this)(t,n,e,r)}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 r=this.getParsed(e).r;!isNaN(r)&&this.chart.getDataVisibility(e)&&(rn.max&&(n.max=r))})),n}_updateRadius(){const t=this.chart,n=t.chartArea,e=t.options,r=Math.min(n.right-n.left,n.bottom-n.top),o=Math.max(r/2,0),i=(o-Math.max(e.cutoutPercentage?o/100*e.cutoutPercentage:1,0))/t.getVisibleDatasetCount();this.outerRadius=o-i*this.index,this.innerRadius=this.outerRadius-i}updateElements(t,n,e,r){const o="reset"===r,i=this.chart,s=i.options.animation,a=this._cachedMeta.rScale,u=a.xCenter,l=a.yCenter,c=a.getIndexAngle(0)-.5*S;let h,p=c;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)?N(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,r)=>{const o=t.getDatasetMeta(0).controller.getStyle(r);return{text:n,fillStyle:o.backgroundColor,strokeStyle:o.borderColor,lineWidth:o.borderWidth,pointStyle:e,hidden:!t.getDataVisibility(r),index:r}}))}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 Fe{}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,r){return Dn.bind(this)(t,n,e,r)}update(t){const n=this._cachedMeta,e=n.dataset,r=n.data||[],o=n.iScale.getLabels();if(e.points=r,"resize"!==t){const n=this.resolveDatasetElementOptions(t);this.options.showLine||(n.borderWidth=0);const i={_loop:!0,_fullLoop:o.length===r.length,options:n};this.updateElement(e,void 0,i,t)}this.updateElements(r,0,r.length,t)}updateElements(t,n,e,r){const o=this._cachedMeta.rScale,i="reset"===r;for(let s=n;s{r[t]=e[t]&&e[t].active()?e[t]._to:this[t]})),r}}Ke.defaults={},Ke.defaultRoutes=void 0;const Je={values:t=>s(t)?t:""+t,numeric(t,n,e){if(0===t)return"0";const r=this.chart.options.locale;let o,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)&&(o="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:o,minimumFractionDigits:a,maximumFractionDigits:a};return Object.assign(u,this.options.ticks.format),oe(t,r,u)},logarithmic(t,n,e){if(0===t)return"0";const r=t/Math.pow(10,Math.floor(I(t)));return 1===r||2===r||5===r?Je.numeric.call(this,t,n,e):""}};var Ge={formatters:Je};function Ye(t,n,e,r,o){const i=c(r,0),s=Math.min(c(o,t.length),t.length);let a,u,l,h=0;for(e=Math.ceil(e),o&&(a=o-r,e=a/Math.floor(a/e)),l=i;l<0;)h++,l=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=[],r=t.length/n,o=t.length;let i=0;for(;is+a)))return l}function tr(t){return t.drawTicks?t.tickLength:0}function nr(t,n){if(!t.display)return 0;const e=bn(t.font,n),r=gn(t.padding);return(s(t.text)?t.text.length:1)*e.lineHeight+r.height}function er(t,n,e){let r=it(t);return(e&&"right"!==n||!e&&"right"===n)&&(r=(t=>"left"===t?"right":"right"===t?"left":t)(r)),r}class rr extends Ke{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:r}=this;return t=l(t,Number.POSITIVE_INFINITY),n=l(n,Number.NEGATIVE_INFINITY),e=l(e,Number.POSITIVE_INFINITY),r=l(r,Number.NEGATIVE_INFINITY),{min:l(t,e),max:l(n,r),minDefined:u(t),maxDefined:u(n)}}getMinMax(t){let n,{min:e,max:r,minDefined:o,maxDefined:i}=this.getUserBounds();if(o&&i)return{min:e,max:r};const s=this.getMatchingVisibleMetas();for(let a=0,u=s.length;ar?r:e,r=o&&e>r?e:r,{min:l(e,l(r,e)),max:l(r,l(e,r))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){p(this.options.beforeUpdate,[this])}update(t,n,e){const{beginAtZero:r,grace:o,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:r,max:o}=t,i=h(n,(o-r)/2),s=(t,n)=>e&&0===t?0:t+n;return{min:s(r,-Math.abs(i)),max:s(o,i)}}(this,o,r),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const u=ar)return function(t,n,e,r){let o,i=0,s=e[0];for(r=Math.ceil(r),o=0;ot-n)).pop(),n}(r);for(let t=0,n=i.length-1;to)return n}return Math.max(o,1)}(o,n,r);if(s>0){let t,e;const r=s>1?Math.round((u-a)/(s-1)):null;for(Ye(n,l,c,i(r)?0:a-r,a),t=0,e=s-1;t=o||e<=1||!this.isHorizontal())return void(this.labelRotation=r);const l=this._getLabelSizes(),c=l.widest.width,h=l.highest.height,p=G(this.chart.width-c,0,this.maxWidth);i=t.offset?this.maxWidth/e:p/(e-1),c+6>i&&(i=p/(e-(t.offset?.5:1)),s=this.maxHeight-tr(t.grid)-n.padding-nr(t.title,this.chart.options.font),a=Math.sqrt(c*c+h*h),u=F(Math.min(Math.asin(G((l.highest.height+6)/i,-1,1)),Math.asin(G(s/a,-1,1))-Math.asin(G(h/a,-1,1)))),u=Math.max(r,Math.min(o,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:r,grid:o}}=this,i=this._isVisible(),s=this.isHorizontal();if(i){const i=nr(r,n.options.font);if(s?(t.width=this.maxWidth,t.height=tr(o)+i):(t.height=this.maxHeight,t.width=tr(o)+i),e.display&&this.ticks.length){const{first:n,last:r,widest:o,highest:i}=this._getLabelSizes(),a=2*e.padding,u=N(this.labelRotation),l=Math.cos(u),c=Math.sin(u);if(s){const n=e.mirror?0:c*o.width+l*i.height;t.height=Math.min(this.maxHeight,t.height+n+a)}else{const n=e.mirror?0:l*o.width+c*i.height;t.width=Math.min(this.maxWidth,t.width+n+a)}this._calculatePadding(n,r,c,l)}}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,r){const{ticks:{align:o,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,l=this.right-this.getPixelForTick(this.ticks.length-1);let c=0,h=0;a?u?(c=r*t.width,h=e*n.height):(c=e*t.height,h=r*n.width):"start"===o?h=n.width:"end"===o?c=t.width:"inner"!==o&&(c=t.width/2,h=n.width/2),this.paddingLeft=Math.max((c-s+i)*this.width/(this.width-s),0),this.paddingRight=Math.max((h-l+i)*this.width/(this.width-l),0)}else{let e=n.height/2,r=t.height/2;"start"===o?(e=0,r=t.height):"end"===o&&(e=n.height,r=0),this.paddingTop=e+i,this.paddingBottom=r+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,r=e.length/2;let o;if(r>n){for(o=0;o({width:o[t]||0,height:a[t]||0});return{first:k(0),last:k(n-1),widest:k(w),highest:k(x),widths:o,heights:a}}getLabelForValue(t){return t}getPixelForValue(t,n){return NaN}getValueForPixel(t){}getPixelForTick(t){const n=this.ticks;return t<0||t>n.length-1?null:this.getPixelForValue(n[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const n=this._startPixel+t*this._length;return 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*r?s/e:a/r:a*r0}_computeGridLineItems(t){const n=this.axis,e=this.chart,r=this.options,{grid:o,position:i}=r,s=o.offset,u=this.isHorizontal(),l=this.ticks.length+(s?1:0),h=tr(o),p=[],f=o.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,S,z;if("top"===i)y=v(this.bottom),w=this.bottom-h,k=y-d,C=v(t.top)+d,z=t.bottom;else if("bottom"===i)y=v(this.top),C=t.top,z=v(t.bottom)-d,w=y+d,k=this.top+h;else if("left"===i)y=v(this.right),$=this.right-h,x=y-d,j=v(t.left)+d,S=t.right;else if("right"===i)y=v(this.left),j=t.left,S=v(t.right)-d,$=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,z=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))}$=y-d,x=$-h,j=t.left,S=t.right}const q=c(r.ticks.maxTicksLimit,l),O=Math.max(1,Math.ceil(l/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,r=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let o,i;const s=(t,n,r)=>{r.width&&r.color&&(e.save(),e.lineWidth=r.width,e.strokeStyle=r.color,e.setLineDash(r.borderDash||[]),e.lineDashOffset=r.borderDashOffset,e.beginPath(),e.moveTo(t.x,t.y),e.lineTo(n.x,n.y),e.stroke(),e.restore())};if(n.display)for(o=0,i=r.length;o{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",r=[];let o,i;for(o=0,i=n.length;o{const r=e.split("."),o=r.pop(),i=[t].concat(r).join("."),s=n[e].split("."),a=s.pop(),u=s.join(".");Xt.route(i,o,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,r=this.scope;e in n&&delete n[e],r&&e in Xt[r]&&(delete Xt[r][e],this.override&&delete Kt[e])}}var ir=new class{constructor(){this.controllers=new or(Pe,"datasets",!0),this.elements=new or(Ke,"elements"),this.plugins=new or(Object,"plugins"),this.scales=new or(rr,"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 r=e||this._getRegistryForType(n);e||r.isForType(n)||r===this.plugins&&n.id?this._exec(t,r,n):f(n,(n=>{const r=e||this._getRegistryForType(n);this._exec(t,r,n)}))}))}_exec(t,n,e){const r=x(t);p(e["before"+r],[],e),n[t](e),p(e["after"+r],[],e)}_getRegistryForType(t){for(let n=0;n0&&this.getParsed(n-1);for(let c=n;c0&&Math.abs(e[f]-g[f])>y,v&&(d.parsed=e,d.raw=l.data[c]),p&&(d.options=h||this.resolveDataElementOptions(c,n.active?"active":r)),m||this.updateElement(n,c,d,r),g=e}this.updateSharedOptions(h,r,c)}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,r=e.options&&e.options.borderWidth||0;if(!n.length)return r;const o=n[0].size(this.resolveDataElementOptions(0)),i=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(r,o,i)/2}}sr.id="scatter",sr.defaults={datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1},sr.overrides={interaction:{mode:"point"},plugins:{tooltip:{callbacks:{title:()=>"",label:t=>"("+t.label+", "+t.formattedValue+")"}}},scales:{x:{type:"linear"},y:{type:"linear"}}};var ar=Object.freeze({__proto__:null,BarController:Re,BubbleController:Ne,DoughnutController:Fe,LineController:He,PolarAreaController:Ue,PieController:Ve,RadarController:We,ScatterController:sr});function ur(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class lr{constructor(t){this.options=t||{}}init(t){}formats(){return ur()}parse(t,n){return ur()}format(t,n){return ur()}add(t,n,e){return ur()}diff(t,n,e){return ur()}startOf(t,n,e){return ur()}endOf(t,n){return ur()}}lr.override=function(t){Object.assign(lr.prototype,t)};var cr={_date:lr};function hr(t,n,e,r){const{controller:o,data:i,_sorted:s}=t,a=o._cachedMeta.iScale;if(a&&n===a.axis&&"r"!==n&&s&&i.length){const t=a._reversePixels?Q:Z;if(!r)return t(i,n,e);if(o._sharedOptions){const r=i[0],o="function"==typeof r.getRange&&r.getRange(n);if(o){const r=t(i,n,e-o),s=t(i,n,e+o);return{lo:r.lo,hi:s.hi}}}}return{lo:0,hi:i.length-1}}function pr(t,n,e,r,o){const i=t.getSortedVisibleDatasetMetas(),s=e[n];for(let t=0,e=i.length;t{t[s](n[e],o)&&(i.push({element:t,datasetIndex:r,index:u}),a=a||t.inRange(n.x,n.y,o))})),r&&!a?[]:i}var vr={evaluateInteractionItems:pr,modes:{index(t,n,e,r){const o=Gn(n,t),i=e.axis||"x",s=e.includeInvisible||!1,a=e.intersect?fr(t,o,i,r,s):_r(t,o,i,!1,r,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,r){const o=Gn(n,t),i=e.axis||"xy",s=e.includeInvisible||!1;let a=e.intersect?fr(t,o,i,r,s):_r(t,o,i,!1,r,s);if(a.length>0){const n=a[0].datasetIndex,e=t.getDatasetMeta(n).data;a=[];for(let t=0;tfr(t,Gn(n,t),e.axis||"xy",r,e.includeInvisible||!1),nearest(t,n,e,r){const o=Gn(n,t),i=e.axis||"xy",s=e.includeInvisible||!1;return _r(t,o,i,e.intersect,r,s)},x:(t,n,e,r)=>dr(t,Gn(n,t),"x",e.intersect,r),y:(t,n,e,r)=>dr(t,Gn(n,t),"y",e.intersect,r)}};const yr=["left","top","right","bottom"];function mr(t,n){return t.filter((t=>t.pos===n))}function gr(t,n){return t.filter((t=>-1===yr.indexOf(t.pos)&&t.box.axis===n))}function br(t,n){return t.sort(((t,e)=>{const r=n?e:t,o=n?t:e;return r.weight===o.weight?r.index-o.index:r.weight-o.weight}))}function $r(t,n,e,r){return Math.max(t[e],n[e])+Math.max(t[r],n[r])}function wr(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 xr(t,n,e,r){const{pos:o,box:i}=e,s=t.maxPadding;if(!a(o)){e.size&&(t[o]-=e.size);const n=r[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[o]+=e.size}i.getPadding&&wr(s,i.getPadding());const u=Math.max(0,n.outerWidth-$r(s,t,"left","right")),l=Math.max(0,n.outerHeight-$r(s,t,"top","bottom")),c=u!==t.w,h=l!==t.h;return t.w=u,t.h=l,e.horizontal?{same:c,other:h}:{same:h,other:c}}function kr(t,n){const e=n.maxPadding;return function(t){const r={left:0,top:0,right:0,bottom:0};return t.forEach((t=>{r[t]=Math.max(n[t],e[t])})),r}(t?["left","right"]:["top","bottom"])}function jr(t,n,e,r){const o=[];let i,s,a,u,l,c;for(i=0,s=t.length,l=0;it.box.fullSize)),!0),r=br(mr(n,"left"),!0),o=br(mr(n,"right")),i=br(mr(n,"top"),!0),s=br(mr(n,"bottom")),a=gr(n,"x"),u=gr(n,"y");return{fullSize:e,leftAndTop:r.concat(i),rightAndBottom:o.concat(u).concat(s).concat(a),chartArea:mr(n,"chartArea"),vertical:r.concat(o).concat(u),horizontal:i.concat(s).concat(a)}}(t.boxes),u=a.vertical,l=a.horizontal;f(t.boxes,(t=>{"function"==typeof t.beforeLayout&&t.beforeLayout()}));const c=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:o,availableWidth:i,availableHeight:s,vBoxMaxWidth:i/2/c,hBoxMaxHeight:s/2}),p=Object.assign({},o);wr(p,gn(r));const _=Object.assign({maxPadding:p,w:i,h:s,x:o.left,y:o.top},o),d=function(t,n){const e=function(t){const n={};for(const e of t){const{stack:t,pos:r,stackWeight:o}=e;if(!t||!yr.includes(r))continue;const i=n[t]||(n[t]={count:0,placed:0,weight:0,size:0});i.count++,i.weight+=o}return n}(t),{vBoxMaxWidth:r,hBoxMaxHeight:o}=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 qr{acquireContext(t,n){}releaseContext(t){return!1}addEventListener(t,n,e){}removeEventListener(t,n,e){}getDevicePixelRatio(){return 1}getMaximumSize(t,n,e,r){return n=Math.max(0,n||t.width),e=e||t.height,{width:n,height:Math.max(0,r?Math.floor(n/r):e)}}isAttached(t){return!0}updateConfig(t){}}class Or extends qr{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const Pr={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Mr=t=>null===t||""===t,Ar=!!Zn&&{passive:!0};function Er(t,n,e){t.canvas.removeEventListener(n,e,Ar)}function Ir(t,n){for(const e of t)if(e===n||e.contains(n))return!0}function Dr(t,n,e){const r=t.canvas,o=new MutationObserver((t=>{let n=!1;for(const e of t)n=n||Ir(e.addedNodes,r),n=n&&!Ir(e.removedNodes,r);n&&e()}));return o.observe(document,{childList:!0,subtree:!0}),o}function Tr(t,n,e){const r=t.canvas,o=new MutationObserver((t=>{let n=!1;for(const e of t)n=n||Ir(e.removedNodes,r),n=n&&!Ir(e.addedNodes,r);n&&e()}));return o.observe(document,{childList:!0,subtree:!0}),o}const Br=new Map;let Lr=0;function Rr(){const t=window.devicePixelRatio;t!==Lr&&(Lr=t,Br.forEach(((n,e)=>{e.currentDevicePixelRatio!==t&&n()})))}function Nr(t,n,e){const r=t.canvas,o=r&&Un(r);if(!o)return;const i=ot(((t,n)=>{const r=o.clientWidth;e(t,n),r{const n=t[0],e=n.contentRect.width,r=n.contentRect.height;0===e&&0===r||i(e,r)}));return s.observe(o),function(t,n){Br.size||window.addEventListener("resize",Rr),Br.set(t,n)}(t,i),s}function Fr(t,n,e){e&&e.disconnect(),"resize"===n&&function(t){Br.delete(t),Br.size||window.removeEventListener("resize",Rr)}(t)}function Hr(t,n,e){const r=t.canvas,o=ot((n=>{null!==t.ctx&&e(function(t,n){const e=Pr[t.type]||t.type,{x:r,y:o}=Gn(t,n);return{type:e,chart:n,native:t,x:void 0!==r?r:null,y:void 0!==o?o:null}}(n,t))}),t,(t=>{const n=t[0];return[n,n.offsetX,n.offsetY]}));return function(t,n,e){t.addEventListener(n,e,Ar)}(r,n,o),o}class Ur extends qr{acquireContext(t,n){const e=t&&t.getContext&&t.getContext("2d");return e&&e.canvas===t?(function(t,n){const e=t.style,r=t.getAttribute("height"),o=t.getAttribute("width");if(t.$chartjs={initial:{height:r,width:o,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",Mr(o)){const n=Qn(t,"width");void 0!==n&&(t.width=n)}if(Mr(r))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 r=e[t];i(r)?n.removeAttribute(t):n.setAttribute(t,r)}));const r=e.style||{};return Object.keys(r).forEach((t=>{n.style[t]=r[t]})),n.width=n.width,delete n.$chartjs,!0}addEventListener(t,n,e){this.removeEventListener(t,n);const r=t.$proxies||(t.$proxies={}),o={attach:Dr,detach:Tr,resize:Nr}[n]||Hr;r[n]=o(t,n,e)}removeEventListener(t,n){const e=t.$proxies||(t.$proxies={}),r=e[n];r&&(({attach:Fr,detach:Fr,resize:Fr}[n]||Er)(t,n,r),e[n]=void 0)}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,n,e,r){return function(t,n,e,r){const o=Wn(t),i=Jn(o,"margin"),s=Vn(o.maxWidth,t,"clientWidth")||O,a=Vn(o.maxHeight,t,"clientHeight")||O,u=function(t,n,e){let r,o;if(void 0===n||void 0===e){const i=Un(t);if(i){const t=i.getBoundingClientRect(),s=Wn(i),a=Jn(s,"border","width"),u=Jn(s,"padding");n=t.width-u.width-a.width,e=t.height-u.height-a.height,r=Vn(s.maxWidth,i,"clientWidth"),o=Vn(s.maxHeight,i,"clientHeight")}else n=t.clientWidth,e=t.clientHeight}return{width:n,height:e,maxWidth:r||O,maxHeight:o||O}}(t,n,e);let{width:l,height:c}=u;if("content-box"===o.boxSizing){const t=Jn(o,"border","width"),n=Jn(o,"padding");l-=n.width+t.width,c-=n.height+t.height}return l=Math.max(0,l-i.width),c=Math.max(0,r?Math.floor(l/r):c-i.height),l=Yn(Math.min(l,s,u.maxWidth)),c=Yn(Math.min(c,a,u.maxHeight)),l&&!c&&(c=Yn(l/2)),{width:l,height:c}}(t,n,e,r)}isAttached(t){const n=Un(t);return!(!n||!n.isConnected)}}function Vr(t){return!Hn()||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas?Or:Ur}class Wr{constructor(){this._init=[]}notify(t,n,e,r){"beforeInit"===n&&(this._init=this._createDescriptors(t,!0),this._notify(this._init,t,"install"));const o=r?this._descriptors(t).filter(r):this._descriptors(t),i=this._notify(o,t,n,e);return"afterDestroy"===n&&(this._notify(o,t,"stop"),this._notify(this._init,t,"uninstall")),i}_notify(t,n,e,r){r=r||{};for(const o of t){const t=o.plugin;if(!1===p(t[e],[n,r,o.options],t)&&r.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,r=c(e.options&&e.options.plugins,{}),o=function(t){const n={},e=[],r=Object.keys(ir.plugins.items);for(let t=0;tt.filter((t=>!n.some((n=>t.plugin.id===n.plugin.id))));this._notify(r(n,e),t,"stop"),this._notify(r(e,n),t,"start")}}function Kr(t,n){return n||!1!==t?!0===t?{}:t:null}function Jr(t,{plugin:n,local:e},r,o){const i=t.pluginScopeKeys(n),s=t.getOptionScopes(r,i);return e&&n.defaults&&s.push(n.defaults),t.createResolver(s,o,[""],{scriptable:!1,indexable:!1,allKeys:!0})}function Gr(t,n){const e=Xt.datasets[t]||{};return((n.datasets||{})[t]||{}).indexAxis||n.indexAxis||e.indexAxis||"x"}function Yr(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 Xr(t){const n=t.options||(t.options={});n.plugins=c(n.plugins,{}),n.scales=function(t,n){const e=Kt[t.type]||{scales:{}},r=n.scales||{},o=Gr(t.type,n),i=Object.create(null),s=Object.create(null);return Object.keys(r).forEach((t=>{const n=r[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=Yr(t,n),l=function(t,n){return t===n?"_index_":"_value_"}(u,o),c=e.scales||{};i[u]=i[u]||t,s[t]=g(Object.create(null),[{axis:u},n,c[u],c[l]])})),t.data.datasets.forEach((e=>{const o=e.type||t.type,a=e.indexAxis||Gr(o,n),u=(Kt[o]||{}).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),o=e[n+"AxisID"]||i[n]||n;s[o]=s[o]||Object.create(null),g(s[o],[{axis:n},r[o],u[t]])}))})),Object.keys(s).forEach((t=>{const n=s[t];g(n,[Xt.scales[n.type],Xt.scale])})),s}(t,n)}function Zr(t){return(t=t||{}).datasets=t.datasets||[],t.labels=t.labels||[],t}const Qr=new Map,to=new Set;function no(t,n){let e=Qr.get(t);return e||(e=n(),Qr.set(t,e),to.add(e)),e}const eo=(t,n,e)=>{const r=w(n,e);void 0!==r&&t.add(r)};class ro{constructor(t){this._config=function(t){return(t=t||{}).data=Zr(t.data),Xr(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=Zr(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(),Xr(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return no(t,(()=>[[`datasets.${t}`,""]]))}datasetAnimationScopeKeys(t,n){return no(`${t}.transition.${n}`,(()=>[[`datasets.${t}.transitions.${n}`,`transitions.${n}`],[`datasets.${t}`,""]]))}datasetElementScopeKeys(t,n){return no(`${t}-${n}`,(()=>[[`datasets.${t}.elements.${n}`,`datasets.${t}`,`elements.${n}`,""]]))}pluginScopeKeys(t){const n=t.id;return no(`${this.type}-plugin-${n}`,(()=>[[`plugins.${n}`,...t.additionalOptionScopes||[]]]))}_cachedScopes(t,n){const e=this._scopeCache;let r=e.get(t);return r&&!n||(r=new Map,e.set(t,r)),r}getOptionScopes(t,n,e){const{options:r,type:o}=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=>eo(a,t,n)))),n.forEach((t=>eo(a,r,t))),n.forEach((t=>eo(a,Kt[o]||{},t))),n.forEach((t=>eo(a,Xt,t))),n.forEach((t=>eo(a,Jt,t)))}));const u=Array.from(a);return 0===u.length&&u.push(Object.create(null)),to.has(n)&&i.set(n,u),u}chartOptionScopes(){const{options:t,type:n}=this;return[t,Kt[n]||{},Xt.datasets[n]||{},{type:n},Xt,Jt]}resolveNamedOptions(t,n,e,r=[""]){const o={$shared:!0},{resolver:i,subPrefixes:a}=oo(this._resolverCache,t,r);let u=i;(function(t,n){const{isScriptable:e,isIndexable:r}=jn(t);for(const o of n){const n=e(o),i=r(o),a=(i||n)&&t[o];if(n&&(j(a)||io(a))||i&&s(a))return!0}return!1})(i,n)&&(o.$shared=!1,u=kn(i,e=j(e)?e():e,this.createResolver(t,e,a)));for(const t of n)o[t]=u[t];return o}createResolver(t,n,e=[""],r){const{resolver:o}=oo(this._resolverCache,t,e);return a(n)?kn(o,n,void 0,r):o}}function oo(t,n,e){let r=t.get(n);r||(r=new Map,t.set(n,r));const o=e.join();let i=r.get(o);return i||(i={resolver:xn(n,e),subPrefixes:e.filter((t=>!t.toLowerCase().includes("hover")))},r.set(o,i)),i}const io=t=>a(t)&&Object.getOwnPropertyNames(t).reduce(((n,e)=>n||j(t[e])),!1),so=["top","bottom","left","right","chartArea"];function ao(t,n){return"top"===t||"bottom"===t||-1===so.indexOf(t)&&"x"===n}function uo(t,n){return function(e,r){return e[t]===r[t]?e[n]-r[n]:e[t]-r[t]}}function lo(t){const n=t.chart,e=n.options.animation;n.notifyPlugins("afterRender"),p(e&&e.onComplete,[t],n)}function co(t){const n=t.chart,e=n.options.animation;p(e&&e.onProgress,[t],n)}function ho(t){return Hn()&&"string"==typeof t?t=document.getElementById(t):t&&t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas),t}const po={},fo=t=>{const n=ho(t);return Object.values(po).filter((t=>t.canvas===n)).pop()};function _o(t,n,e){const r=Object.keys(t);for(const o of r){const r=+o;if(r>=n){const i=t[o];delete t[o],(e>0||r>n)&&(t[r+e]=i)}}}class vo{constructor(t,n){const e=this.config=new ro(n),r=ho(t),i=fo(r);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||Vr(r)),this.platform.updateConfig(e);const a=this.platform.acquireContext(r,s.aspectRatio),u=a&&a.canvas,l=u&&u.height,c=u&&u.width;this.id=o(),this.ctx=a,this.canvas=u,this.width=c,this.height=l,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 Wr,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=function(t,n){let e;return function(...r){return n?(clearTimeout(e),e=setTimeout(t,n,r)):t.apply(this,r),n}}((t=>this.update(t)),s.resizeDelay||0),this._dataChanges=[],po[this.id]=this,a&&u?(_e.listen(this,"complete",lo),_e.listen(this,"progress",co),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:r,_aspectRatio:o}=this;return i(t)?n&&o?o:r?e/r: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,r=this.canvas,o=e.maintainAspectRatio&&this.aspectRatio,i=this.platform.getMaximumSize(r,t,n,o),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,r=Object.keys(e).reduce(((t,n)=>(t[n]=!1,t)),{});let o=[];n&&(o=o.concat(Object.keys(n).map((t=>{const e=n[t],r=Yr(t,e),o="r"===r,i="x"===r;return{options:e,dposition:o?"chartArea":i?"bottom":"left",dtype:o?"radialLinear":i?"category":"linear"}})))),f(o,(n=>{const o=n.options,i=o.id,s=Yr(i,o),a=c(o.type,n.dtype);void 0!==o.position&&ao(o.position,s)===ao(n.dposition)||(o.position=n.dposition),r[i]=!0;let u=null;i in e&&e[i].type===a?u=e[i]:(u=new(ir.getScale(a))({id:i,type:a,ctx:this.ctx,chart:this}),e[u.id]=u),u.init(o,t)})),f(r,((t,n)=>{t||delete e[n]})),f(e,(t=>{zr.configure(this,t,t.options),zr.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,r;for(this._removeUnreferencedMetasets(),e=0,r=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()),r=this._animationsDisabled=!e.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),!1===this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0}))return;const o=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(uo("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=>{zr.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:r,count:o}of n)_o(t,r,"_removeElements"===e?-o:o)}_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(",")))),r=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;zr.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,r=!e.disabled,o=this.chartArea,i={meta:t,index:t.index,cancelable:!0};!1!==this.notifyPlugins("beforeDatasetDraw",i)&&(r&&sn(n,{left:!1===e.left?0:o.left-e.left,right:!1===e.right?this.width:o.right+e.right,top:!1===e.top?0:o.top-e.top,bottom:!1===e.bottom?this.height:o.bottom+e.bottom}),t.controller.draw(),r&&an(n),i.cancelable=!1,this.notifyPlugins("afterDatasetDraw",i))}isPointInArea(t){return on(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,n,e,r){const o=vr.modes[n];return"function"==typeof o?o(this,t,e,r):[]}getDatasetMeta(t){const n=this.data.datasets[t],e=this._metasets;let r=e.filter((t=>t&&t._dataset===n)).pop();return r||(r={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:n&&n.order||0,index:t,_dataset:n,_parsed:[],_sorted:!1},e.push(r)),r}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 r=e?"show":"hide",o=this.getDatasetMeta(t),i=o.controller._resolveAnimations(void 0,r);k(n)?(o.data[n].hidden=!e,this.update()):(this.setDatasetVisibility(t,e),i.update(o,{visible:e}),this.update((n=>n.datasetIndex===t?r: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,r),t[e]=r},r=(t,n,e)=>{t.offsetX=n,t.offsetY=e,this._eventHandler(t)};f(this.options.events,(t=>e(t,r)))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,n=this.platform,e=(e,r)=>{n.addEventListener(this,e,r),t[e]=r},r=(e,r)=>{t[e]&&(n.removeEventListener(this,e,r),delete t[e])},o=(t,n)=>{this.canvas&&this.resize(t,n)};let i;const s=()=>{r("attach",s),this.attached=!0,this.resize(),e("resize",o),e("detach",i)};i=()=>{this.attached=!1,r("resize",o),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 r=e?"set":"remove";let o,i,s,a;for("dataset"===n&&(o=this.getDatasetMeta(t[0].datasetIndex),o.controller["_"+r+"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 r=this.options.hover,o=(t,n)=>t.filter((t=>!n.some((n=>t.datasetIndex===n.datasetIndex&&t.index===n.index)))),i=o(n,t),s=e?t:o(t,n);i.length&&this.updateHoverStyle(i,r.mode,!1),s.length&&r.mode&&this.updateHoverStyle(s,r.mode,!0)}_eventHandler(t,n){const e={event:t,replay:n,cancelable:!0,inChartArea:this.isPointInArea(t)},r=n=>(n.options.events||this.options.events).includes(t.native.type);if(!1===this.notifyPlugins("beforeEvent",e,r))return;const o=this._handleEvent(t,n,e.inChartArea);return e.cancelable=!1,this.notifyPlugins("afterEvent",e,r),(o||e.changed)&&this.render(),this}_handleEvent(t,n,e){const{_active:r=[],options:o}=this,i=n,s=this._getActiveElements(t,r,e,i),a=function(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}(t),u=function(t,n,e,r){return e&&"mouseout"!==t.type?r?n:t:null}(t,this._lastEvent,e,a);e&&(this._lastEvent=null,p(o.onHover,[t,s,this],this),a&&p(o.onClick,[t,s,this],this));const l=!_(s,r);return(l||n)&&(this._active=s,this._updateHoverStyles(s,r,n)),this._lastEvent=u,l}_getActiveElements(t,n,e,r){if("mouseout"===t.type)return[];if(!e)return n;const o=this.options.hover;return this.getElementsAtEventForMode(t,o.mode,o,r)}}const yo=()=>f(vo.instances,(t=>t._plugins.invalidate())),mo=!0;function go(t,n,e){const{startAngle:r,pixelMargin:o,x:i,y:s,outerRadius:a,innerRadius:u}=n;let l=o/a;t.beginPath(),t.arc(i,s,a,r-l,e+l),u>o?(l=o/u,t.arc(i,s,u,e+l,r-l,!0)):t.arc(i,s,o,e+M,r-M),t.closePath(),t.clip()}function bo(t,n,e,r){return{x:e+t*Math.cos(n),y:r+t*Math.sin(n)}}function $o(t,n,e,r,o,i){const{x:s,y:a,startAngle:u,pixelMargin:l,innerRadius:c}=n,h=Math.max(n.outerRadius+r+e-l,0),p=c>0?c+r+e+l:0;let f=0;const _=o-u;if(r){const t=((c>0?c-r:0)+(h>0?h-r:0))/2;f=(_-(0!==t?_*t/(t+r):_))/2}const d=(_-Math.max(.001,_*h-e/S)/h)/2,v=u+d+f,y=o-d-f,{outerStart:m,outerEnd:g,innerStart:b,innerEnd:$}=function(t,n,e,r){const o=vn(t.options.borderRadius,["outerStart","outerEnd","innerStart","innerEnd"]),i=(e-n)/2,s=Math.min(i,r*n/2),a=t=>{const n=(e-Math.min(i,t))*r/2;return G(t,0,Math.min(i,n))};return{outerStart:a(o.outerStart),outerEnd:a(o.outerEnd),innerStart:G(o.innerStart,0,s),innerEnd:G(o.innerEnd,0,s)}}(n,p,h,y-v),w=h-m,x=h-g,k=v+m/w,j=y-g/x,C=p+b,z=p+$,q=v+b/C,O=y-$/z;if(t.beginPath(),i){if(t.arc(s,a,h,k,j),g>0){const n=bo(x,j,s,a);t.arc(n.x,n.y,g,j,y+M)}const n=bo(z,y,s,a);if(t.lineTo(n.x,n.y),$>0){const n=bo(z,O,s,a);t.arc(n.x,n.y,$,y+M,O+Math.PI)}if(t.arc(s,a,p,y-$/p,v+b/p,!0),b>0){const n=bo(C,q,s,a);t.arc(n.x,n.y,b,q+Math.PI,v-M)}const e=bo(w,v,s,a);if(t.lineTo(e.x,e.y),m>0){const n=bo(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 r=Math.cos(j)*h+s,o=Math.sin(j)*h+a;t.lineTo(r,o)}t.closePath()}Object.defineProperties(vo,{defaults:{enumerable:mo,value:Xt},instances:{enumerable:mo,value:po},overrides:{enumerable:mo,value:Kt},registry:{enumerable:mo,value:ir},version:{enumerable:mo,value:"3.9.1"},getChart:{enumerable:mo,value:fo},register:{enumerable:mo,value:(...t)=>{ir.add(...t),yo()}},unregister:{enumerable:mo,value:(...t)=>{ir.remove(...t),yo()}}});class wo extends Ke{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 r=this.getProps(["x","y"],e),{angle:o,distance:i}=U(r,{x:t,y:n}),{startAngle:s,endAngle:a,innerRadius:u,outerRadius:l,circumference:h}=this.getProps(["startAngle","endAngle","innerRadius","outerRadius","circumference"],e),p=this.options.spacing/2,f=c(h,a-s)>=z||J(o,s,a),_=Y(i,u+p,l+p);return f&&_}getCenterPoint(t){const{x:n,y:e,startAngle:r,endAngle:o,innerRadius:i,outerRadius:s}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius","circumference"],t),{offset:a,spacing:u}=this.options,l=(r+o)/2,c=(i+s+u+a)/2;return{x:n+Math.cos(l)*c,y:e+Math.sin(l)*c}}tooltipPosition(t){return this.getCenterPoint(t)}draw(t){const{options:n,circumference:e}=this,r=(n.offset||0)/2,o=(n.spacing||0)/2,i=n.circular;if(this.pixelMargin="inner"===n.borderAlign?.33:0,this.fullCircles=e>z?Math.floor(e/z):0,0===e||this.innerRadius<0||this.outerRadius<0)return;t.save();let s=0;if(r){s=r/2;const n=(this.startAngle+this.endAngle)/2;t.translate(Math.cos(n)*s,Math.sin(n)*s),this.circumference>=S&&(s=r)}t.fillStyle=n.backgroundColor,t.strokeStyle=n.borderColor;const a=function(t,n,e,r,o){const{fullCircles:i,startAngle:s,circumference:a}=n;let u=n.endAngle;if(i){$o(t,n,e,r,s+z,o);for(let n=0;na&&i>a;return{count:r,start:u,loop:n.loop,ilen:l(s+(l?a-t:t))%i,g=()=>{f!==_&&(t.lineTo(v,_),t.lineTo(v,f),t.lineTo(v,d))};for(u&&(h=o[m(0)],t.moveTo(h.x,h.y)),c=0;c<=a;++c){if(h=o[m(c)],h.skip)continue;const n=h.x,e=h.y,r=0|n;r===p?(e_&&(_=e),v=(y*v+n)/++y):(g(),t.lineTo(n,e),p=r,y=0,f=_=e),d=e}g()}function zo(t){const n=t.options,e=n.borderDash&&n.borderDash.length;return t._decimated||t._loop||n.tension||"monotone"===n.cubicInterpolationMode||n.stepped||e?Co:So}wo.id="arc",wo.defaults={borderAlign:"center",borderColor:"#fff",borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0},wo.defaultRoutes={backgroundColor:"backgroundColor"};const qo="function"==typeof Path2D;class Oo extends Ke{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 r=e.spanGaps?this._loop:this._fullLoop;Fn(this._points,e,t,r,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,r=t.options.spanGaps,o=e.length;if(!o)return[];const i=!!t._loop,{start:s,end:a}=function(t,n,e,r){let o=0,i=n-1;if(e&&!r)for(;oo&&t[i%n].skip;)i--;return i%=n,{start:o,end:i}}(e,o,i,r);return function(t,n,e,r){return r&&r.setContext&&e?function(t,n,e,r){const o=t._chart.getContext(),i=pe(t.options),{_datasetIndex:s,options:{spanGaps:a}}=t,u=e.length,l=[];let c=i,h=n[0].start,p=h;function f(t,n,r,o){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&&(l.push({start:t%u,end:n%u,loop:r,style:o}),c=o,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(r.setContext(wn(o,{type:"segment",p0:i,p1:a,p0DataIndex:(p-1)%u,p1DataIndex:p%u,datasetIndex:s}))),fe(n,c)&&f(h,p-1,t.loop,c),i=a,c=n}h"borderDash"!==t&&"fill"!==t};class Mo extends Ke{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 r=this.options,{x:o,y:i}=this.getProps(["x","y"],e);return Math.pow(t-o,2)+Math.pow(n-i,2){Ro(t)}))}var Fo={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(t,n,e)=>{if(!e.enabled)return void No(t);const r=t.width;t.data.datasets.forEach(((n,o)=>{const{_data:s,indexAxis:a}=n,u=t.getDatasetMeta(o),l=s||n.data;if("y"===$n([a,t.options.indexAxis]))return;if(!u.controller.supportsDecimation)return;const c=t.scales[u.xAxisID];if("linear"!==c.type&&"time"!==c.type)return;if(t.options.parsing)return;let h,{start:p,count:f}=function(t,n){const e=n.length;let r,o=0;const{iScale:i}=t,{min:s,max:a,minDefined:u,maxDefined:l}=i.getUserBounds();return u&&(o=G(Z(n,i.axis,s).lo,0,e-1)),r=l?G(Z(n,i.axis,a).hi+1,o,e)-o:e-o,{start:o,count:r}}(u,l);if(f<=(e.threshold||4*r))Ro(n);else{switch(i(s)&&(n._data=l,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,r,o){const i=o.samples||r;if(i>=e)return t.slice(n,n+e);const s=[],a=(e-2)/(i-2);let u=0;const l=n+e-1;let c,h,p,f,_,d=n;for(s[u++]=t[d],c=0;cp&&(p=f,h=t[r],_=r);s[u++]=h,d=_}return s[u++]=t[l],s}(l,p,f,r,e);break;case"min-max":h=function(t,n,e,r){let o,s,a,u,l,c,h,p,f,_,d=0,v=0;const y=[],m=n+e-1,g=t[n].x,b=t[m].x-g;for(o=n;o_&&(_=u,h=o),d=(v*d+s.x)/++v;else{const e=o-1;if(!i(c)&&!i(h)){const n=Math.min(c,h),r=Math.max(c,h);n!==p&&n!==e&&y.push({...t[n],x:d}),r!==p&&r!==e&&y.push({...t[r],x:d})}o>0&&e!==p&&y.push(t[e]),y.push(s),l=n,v=0,f=_=u,c=h=p=o}}return y}(l,p,f,r);break;default:throw new Error(`Unsupported decimation algorithm '${e.algorithm}'`)}n._decimated=h}}))},destroy(t){No(t)}};function Ho(t,n,e,r){if(r)return;let o=n[t],i=e[t];return"angle"===t&&(o=K(o),i=K(i)),{property:t,start:o,end:i}}function Uo(t,n,e){for(;n>t;n--){const t=e[n];if(!isNaN(t.x)&&!isNaN(t.y))break}return n}function Vo(t,n,e,r){return t&&n?r(t[e],n[e]):t?t[e]:n?n[e]:0}function Wo(t,n){let e=[],r=!1;return s(t)?(r=!0,e=t):e=function(t,n){const{x:e=null,y:r=null}=t||{},o=n.points,i=[];return n.segments.forEach((({start:t,end:n})=>{n=Uo(t,n,o);const s=o[t],a=o[n];null!==r?(i.push({x:s.x,y:r}),i.push({x:a.x,y:r})):null!==e&&(i.push({x:e,y:s.y}),i.push({x:e,y:a.y}))})),i}(t,n),e.length?new Oo({points:e,options:{tension:0},_loop:r,_fullLoop:r}):null}function Ko(t){return t&&!1!==t.fill}function Jo(t,n,e){let r=t[n].fill;const o=[n];let i;if(!e)return r;for(;!1!==r&&-1===o.indexOf(r);){if(!u(r))return r;if(i=t[r],!i)return!1;if(i.visible)return r;o.push(r),r=i.fill}return!1}function Go(t,n,e){const r=function(t){const n=t.options,e=n.fill;let r=c(e&&e.target,e);return void 0===r&&(r=!!n.backgroundColor),!1!==r&&null!==r&&(!0===r?"origin":r)}(t);if(a(r))return!isNaN(r.value)&&r;let o=parseFloat(r);return u(o)&&Math.floor(o)===o?function(t,n,e,r){return"-"!==t&&"+"!==t||(e=n+e),!(e===n||e<0||e>=r)&&e}(r[0],n,o,e):["origin","start","end","stack","shape"].indexOf(r)>=0&&r}function Yo(t,n,e){const r=[];for(let o=0;o=0;--n){const e=o[n].$filler;e&&(e.line.updateControlPoints(i,e.axis),r&&e.fill&&Qo(t.ctx,e,i))}},beforeDatasetsDraw(t,n,e){if("beforeDatasetsDraw"!==e.drawTime)return;const r=t.getSortedVisibleDatasetMetas();for(let n=r.length-1;n>=0;--n){const e=r[n].$filler;Ko(e)&&Qo(t.ctx,e,t.chartArea)}},beforeDatasetDraw(t,n,e){const r=n.meta.$filler;Ko(r)&&"beforeDatasetDraw"===e.drawTime&&Qo(t.ctx,r,t.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const ii=(t,n)=>{let{boxHeight:e=n,boxWidth:r=n}=t;return t.usePointStyle&&(e=Math.min(e,n),r=t.pointStyleWidth||Math.min(r,n)),{boxWidth:r,boxHeight:e,itemHeight:Math.max(n,e)}};class si extends Ke{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,r=bn(e.font),o=r.size,i=this._computeTitleHeight(),{boxWidth:s,itemHeight:a}=ii(e,o);let u,l;n.font=r.string,this.isHorizontal()?(u=this.maxWidth,l=this._fitRows(i,o,s,a)+10):(l=this.maxHeight,u=this._fitCols(i,o,s,a)+10),this.width=Math.min(u,t.maxWidth||this.maxWidth),this.height=Math.min(l,t.maxHeight||this.maxHeight)}_fitRows(t,n,e,r){const{ctx:o,maxWidth:i,options:{labels:{padding:s}}}=this,a=this.legendHitBoxes=[],u=this.lineWidths=[0],l=r+s;let c=t;o.textAlign="left",o.textBaseline="middle";let h=-1,p=-l;return this.legendItems.forEach(((t,f)=>{const _=e+n/2+o.measureText(t.text).width;(0===f||u[u.length-1]+_+2*s>i)&&(c+=l,u[u.length-(f>0?0:1)]=0,p+=l,h++),a[f]={left:0,top:p,row:h,width:_,height:r},u[u.length-1]+=_+s})),c}_fitCols(t,n,e,r){const{ctx:o,maxHeight:i,options:{labels:{padding:s}}}=this,a=this.legendHitBoxes=[],u=this.columnSizes=[],l=i-t;let c=s,h=0,p=0,f=0,_=0;return this.legendItems.forEach(((t,i)=>{const d=e+n/2+o.measureText(t.text).width;i>0&&p+r+2*s>l&&(c+=h+s,u.push({width:h,height:p}),f+=h+s,_++,h=p=0),a[i]={left:f,top:p,col:_,width:d,height:r},h=Math.max(h,d),p+=r+s})),c+=h,u.push({width:h,height:p}),c}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:n,options:{align:e,labels:{padding:r},rtl:o}}=this,i=ie(o,this.left,this.width);if(this.isHorizontal()){let o=0,s=st(e,this.left+r,this.right-this.lineWidths[o]);for(const a of n)o!==a.row&&(o=a.row,s=st(e,this.left+r,this.right-this.lineWidths[o])),a.top+=this.top+t+r,a.left=i.leftForLtr(i.x(s),a.width),s+=a.width+r}else{let o=0,s=st(e,this.top+t+r,this.bottom-this.columnSizes[o].height);for(const a of n)a.col!==o&&(o=a.col,s=st(e,this.top+t+r,this.bottom-this.columnSizes[o].height)),a.top=s,a.left+=this.left+r,a.left=i.leftForLtr(i.x(a.left),a.width),s+=a.height+r}}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:r}=this,{align:o,labels:i}=t,s=Xt.color,a=ie(t.rtl,this.left,this.width),u=bn(i.font),{color:l,padding:h}=i,p=u.size,f=p/2;let _;this.drawTitle(),r.textAlign=a.textAlign("left"),r.textBaseline="middle",r.lineWidth=.5,r.font=u.string;const{boxWidth:d,boxHeight:v,itemHeight:y}=ii(i,p),m=this.isHorizontal(),g=this._computeTitleHeight();_=m?{x:st(o,this.left+h,this.right-e[0]),y:this.top+h+g,line:0}:{x:this.left+h,y:st(o,this.top+g+h,this.bottom-n[0].height),line:0},se(this.ctx,t.textDirection);const b=y+h;this.legendItems.forEach((($,w)=>{r.strokeStyle=$.fontColor||l,r.fillStyle=$.fontColor||l;const x=r.measureText($.text).width,k=a.textAlign($.textAlign||($.textAlign=i.textAlign)),j=d+f+x;let C=_.x,S=_.y;a.setWidth(this.width),m?w>0&&C+j+h>this.right&&(S=_.y+=b,_.line++,C=_.x=st(o,this.left+h,this.right-e[_.line])):w>0&&S+b>this.bottom&&(C=_.x=C+n[_.line].width+h,_.line++,S=_.y=st(o,this.top+g+h,this.bottom-n[_.line].height)),function(t,n,e){if(isNaN(d)||d<=0||isNaN(v)||v<0)return;r.save();const o=c(e.lineWidth,1);if(r.fillStyle=c(e.fillStyle,s),r.lineCap=c(e.lineCap,"butt"),r.lineDashOffset=c(e.lineDashOffset,0),r.lineJoin=c(e.lineJoin,"miter"),r.lineWidth=o,r.strokeStyle=c(e.strokeStyle,s),r.setLineDash(c(e.lineDash,[])),i.usePointStyle){const s={radius:v*Math.SQRT2/2,pointStyle:e.pointStyle,rotation:e.rotation,borderWidth:o},u=a.xPlus(t,d/2);rn(r,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);r.beginPath(),Object.values(u).some((t=>0!==t))?pn(r,{x:s,y:i,w:d,h:v,radius:u}):r.rect(s,i,d,v),r.fill(),0!==o&&r.stroke()}r.restore()}(a.x(C),S,$),C=((t,n,e,r)=>t===(r?"left":"right")?e:"center"===t?(n+e)/2:n)(k,C+d+f,m?C+j:this.right,t.rtl),function(t,n,e){cn(r,e.text,t,n+y/2,u,{strikethrough:e.hidden,textAlign:a.textAlign(e.textAlign)})}(a.x(C),S,$),m?_.x+=j+h:_.y+=b})),ae(this.ctx,t.textDirection)}drawTitle(){const t=this.options,n=t.title,e=bn(n.font),r=gn(n.padding);if(!n.display)return;const o=ie(t.rtl,this.left,this.width),i=this.ctx,s=n.position,a=e.size/2,u=r.top+a;let l,c=this.left,h=this.width;if(this.isHorizontal())h=Math.max(...this.lineWidths),l=this.top+u,c=st(t.align,c,this.right-h);else{const n=this.columnSizes.reduce(((t,n)=>Math.max(t,n.height)),0);l=u+st(t.align,this.top,this.bottom-n-t.labels.padding-this._computeTitleHeight())}const p=st(s,c,c+h);i.textAlign=o.textAlign(it(s)),i.textBaseline="middle",i.strokeStyle=n.color,i.fillStyle=n.color,i.font=e.string,cn(i,n.text,p,l,e)}_computeTitleHeight(){const t=this.options.title,n=bn(t.font),e=gn(t.padding);return t.display?n.lineHeight+e.height:0}_getLegendItemAt(t,n){let e,r,o;if(Y(t,this.left,this.right)&&Y(n,this.top,this.bottom))for(o=this.legendHitBoxes,e=0;et.chart.options.color,boxWidth:40,padding:10,generateLabels(t){const n=t.data.datasets,{labels:{usePointStyle:e,pointStyle:r,textAlign:o,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:r||s.pointStyle,rotation:s.rotation,textAlign:o||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 Ke{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 r=s(e.text)?e.text.length:1;this._padding=gn(e.padding);const o=r*bn(e.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return"top"===t||"bottom"===t}_drawArgs(t){const{top:n,left:e,bottom:r,right:o,options:i}=this,s=i.align;let a,u,l,c=0;return this.isHorizontal()?(u=st(s,e,o),l=n+t,a=o-e):("left"===i.position?(u=e+t,l=st(s,r,n),c=-.5*S):(u=o-t,l=st(s,n,r),c=.5*S),a=r-n),{titleX:u,titleY:l,maxWidth:a,rotation:c}}draw(){const t=this.ctx,n=this.options;if(!n.display)return;const e=bn(n.font),r=e.lineHeight/2+this._padding.top,{titleX:o,titleY:i,maxWidth:s,rotation:a}=this._drawArgs(r);cn(t,n.text,0,0,e,{color:n.color,maxWidth:s,rotation:a,textAlign:it(n.align),textBaseline:"middle",translation:[o,i]})}}var li={id:"title",_element:ui,start(t,n,e){!function(t,n){const e=new ui({ctx:t.ctx,options:n,chart:t});zr.configure(t,e,n),zr.addBox(t,e),t.titleBlock=e}(t,e)},stop(t){const n=t.titleBlock;zr.removeBox(t,n),delete t.titleBlock},beforeUpdate(t,n,e){const r=t.titleBlock;zr.configure(t,r,e),r.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 ci=new WeakMap;var hi={id:"subtitle",start(t,n,e){const r=new ui({ctx:t.ctx,options:e,chart:t});zr.configure(t,r,e),zr.addBox(t,r),ci.set(t,r)},stop(t){zr.removeBox(t,ci.get(t)),ci.delete(t)},beforeUpdate(t,n,e){const r=ci.get(t);zr.configure(t,r,e),r.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,r=0,o=0,i=0;for(n=0,e=t.length;n-1?t.split("\n"):t}function di(t,n){const{element:e,datasetIndex:r,index:o}=n,i=t.getDatasetMeta(r).controller,{label:s,value:a}=i.getLabelAndValue(o);return{chart:t,label:s,parsed:i.getParsed(o),raw:t.data.datasets[r].data[o],formattedValue:a,dataset:i.getDataset(),dataIndex:o,datasetIndex:r,element:e}}function vi(t,n){const e=t.chart.ctx,{body:r,footer:o,title:i}=t,{boxWidth:s,boxHeight:a}=n,u=bn(n.bodyFont),l=bn(n.titleFont),c=bn(n.footerFont),h=i.length,p=o.length,_=r.length,d=gn(n.padding);let v=d.height,y=0,m=r.reduce(((t,n)=>t+n.before.length+n.lines.length+n.after.length),0);m+=t.beforeBody.length+t.afterBody.length,h&&(v+=h*l.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*c.lineHeight+(p-1)*n.footerSpacing);let g=0;const b=function(t){y=Math.max(y,e.measureText(t).width+g)};return e.save(),e.font=l.string,f(t.title,b),e.font=u.string,f(t.beforeBody.concat(t.afterBody),b),g=n.displayColors?s+2+n.boxPadding:0,f(r,(t=>{f(t.before,b),f(t.lines,b),f(t.after,b)})),g=0,e.font=c.string,f(t.footer,b),e.restore(),y+=d.width,{width:y,height:v}}function yi(t,n,e,r){const{x:o,width:i}=e,{width:s,chartArea:{left:a,right:u}}=t;let l="center";return"center"===r?l=o<=(a+u)/2?"left":"right":o<=i/2?l="left":o>=s-i/2&&(l="right"),function(t,n,e,r){const{x:o,width:i}=r,s=e.caretSize+e.caretPadding;return"left"===t&&o+i+s>n.width||"right"===t&&o-i-s<0||void 0}(l,t,n,e)&&(l="center"),l}function mi(t,n,e){const r=e.yAlign||n.yAlign||function(t,n){const{y:e,height:r}=n;return et.height-r/2?"bottom":"center"}(t,e);return{xAlign:e.xAlign||n.xAlign||yi(t,n,e,r),yAlign:r}}function gi(t,n,e,r){const{caretSize:o,caretPadding:i,cornerRadius:s}=t,{xAlign:a,yAlign:u}=e,l=o+i,{topLeft:c,topRight:h,bottomLeft:p,bottomRight:f}=mn(s);let _=function(t,n){let{x:e,width:r}=t;return"right"===n?e-=r:"center"===n&&(e-=r/2),e}(n,a);const d=function(t,n,e){let{y:r,height:o}=t;return"top"===n?r+=e:r-="bottom"===n?o+e:o/2,r}(n,u,l);return"center"===u?"left"===a?_+=l:"right"===a&&(_-=l):"left"===a?_-=Math.max(c,p)+o:"right"===a&&(_+=Math.max(h,f)+o),{x:G(_,0,r.width-n.width),y:G(d,0,r.height-n.height)}}function bi(t,n,e){const r=gn(e.padding);return"center"===n?t.x+t.width/2:"right"===n?t.x+t.width-r.right:t.x+r.left}function $i(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 Ke{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()),r=e.enabled&&n.options.animation&&e.animations,o=new ge(this.chart,r);return r._cacheable&&(this._cachedAnimations=Object.freeze(o)),o}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,r=e.beforeTitle.apply(this,[t]),o=e.title.apply(this,[t]),i=e.afterTitle.apply(this,[t]);let s=[];return s=fi(s,_i(r)),s=fi(s,_i(o)),s=fi(s,_i(i)),s}getBeforeBody(t,n){return $i(n.callbacks.beforeBody.apply(this,[t]))}getBody(t,n){const{callbacks:e}=n,r=[];return f(t,(t=>{const n={before:[],lines:[],after:[]},o=wi(e,t);fi(n.before,_i(o.beforeLabel.call(this,t))),fi(n.lines,o.label.call(this,t)),fi(n.after,_i(o.afterLabel.call(this,t))),r.push(n)})),r}getAfterBody(t,n){return $i(n.callbacks.afterBody.apply(this,[t]))}getFooter(t,n){const{callbacks:e}=n,r=e.beforeFooter.apply(this,[t]),o=e.footer.apply(this,[t]),i=e.afterFooter.apply(this,[t]);let s=[];return s=fi(s,_i(r)),s=fi(s,_i(o)),s=fi(s,_i(i)),s}_createItems(t){const n=this._active,e=this.chart.data,r=[],o=[],i=[];let s,a,u=[];for(s=0,a=n.length;st.filter(n,r,o,e)))),t.itemSort&&(u=u.sort(((n,r)=>t.itemSort(n,r,e)))),f(u,(n=>{const e=wi(t.callbacks,n);r.push(e.labelColor.call(this,n)),o.push(e.labelPointStyle.call(this,n)),i.push(e.labelTextColor.call(this,n))})),this.labelColors=r,this.labelPointStyles=o,this.labelTextColors=i,this.dataPoints=u,u}update(t,n){const e=this.options.setContext(this.getContext()),r=this._active;let o,i=[];if(r.length){const t=pi[e.position].call(this,r,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,o={opacity:1,x:u.x,y:u.y,width:n.width,height:n.height,caretX:t.x,caretY:t.y}}else 0!==this.opacity&&(o={opacity:0});this._tooltipItems=i,this.$context=void 0,o&&this._resolveAnimations().update(this,o),t&&e.external&&e.external.call(this,{chart:this.chart,tooltip:this,replay:n})}drawCaret(t,n,e,r){const o=this.getCaretPosition(t,e,r);n.lineTo(o.x1,o.y1),n.lineTo(o.x2,o.y2),n.lineTo(o.x3,o.y3)}getCaretPosition(t,n,e){const{xAlign:r,yAlign:o}=this,{caretSize:i,cornerRadius:s}=e,{topLeft:a,topRight:u,bottomLeft:l,bottomRight:c}=mn(s),{x:h,y:p}=t,{width:f,height:_}=n;let d,v,y,m,g,b;return"center"===o?(g=p+_/2,"left"===r?(d=h,v=d-i,m=g+i,b=g-i):(d=h+f,v=d+i,m=g-i,b=g+i),y=d):(v="left"===r?h+Math.max(a,l)+i:"right"===r?h+f-Math.max(u,c)-i:this.caretX,"top"===o?(m=p,g=m-i,d=v-i,y=v+i):(m=p+_,g=m+i,d=v+i,y=v-i),b=m),{x1:d,x2:v,x3:y,y1:m,y2:g,y3:b}}drawTitle(t,n,e){const r=this.title,o=r.length;let i,s,a;if(o){const u=ie(e.rtl,this.x,this.width);for(t.x=bi(this,e.titleAlign,e),n.textAlign=u.textAlign(e.titleAlign),n.textBaseline="middle",i=bn(e.titleFont),s=e.titleSpacing,n.fillStyle=e.titleColor,n.font=i.string,a=0;a0!==t))?(t.beginPath(),t.fillStyle=o.multiKeyBackground,pn(t,{x:n,y:d,w:l,h:u,radius:s}),t.fill(),t.stroke(),t.fillStyle=i.backgroundColor,t.beginPath(),pn(t,{x:e,y:d+1,w:l-2,h:u-2,radius:s}),t.fill()):(t.fillStyle=o.multiKeyBackground,t.fillRect(n,d,l,u),t.strokeRect(n,d,l,u),t.fillStyle=i.backgroundColor,t.fillRect(e,d+1,l-2,u-2))}t.fillStyle=this.labelTextColors[e]}drawBody(t,n,e){const{body:r}=this,{bodySpacing:o,bodyAlign:i,displayColors:s,boxHeight:a,boxWidth:u,boxPadding:l}=e,c=bn(e.bodyFont);let h=c.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+o},v=_.textAlign(i);let y,m,g,b,$,w,x;for(n.textAlign=i,n.textBaseline="middle",n.font=c.string,t.x=bi(this,v,e),n.fillStyle=e.bodyColor,f(this.beforeBody,d),p=s&&"right"!==v?"center"===i?u/2+l:u+2+l:0,b=0,w=r.length;b0&&n.stroke()}_updateAnimationTarget(t){const n=this.chart,e=this.$animations,r=e&&e.x,o=e&&e.y;if(r||o){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);r._to===u.x&&o._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 r={width:this.width,height:this.height},o={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(o,t,r,n),se(t,n.textDirection),o.y+=i.top,this.drawTitle(o,t,n),this.drawBody(o,t,n),this.drawFooter(o,t,n),ae(t,n.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,n){const e=this._active,r=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}})),o=!_(e,r),i=this._positionChanged(r,n);(o||i)&&(this._active=r,this._eventPosition=n,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,n,e=!0){if(n&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const r=this.options,o=this._active||[],i=this._getActiveElements(t,o,n,e),s=this._positionChanged(i,t),a=n||!_(i,o)||s;return a&&(this._active=i,(r.enabled||r.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,n))),a}_getActiveElements(t,n,e,r){const o=this.options;if("mouseout"===t.type)return[];if(!r)return n;const i=this.chart.getElementsAtEventForMode(t,o.mode,o,e);return o.reverse&&i.reverse(),i}_positionChanged(t,n){const{caretX:e,caretY:r,options:o}=this,i=pi[o.position].call(this,t,n);return!1!==i&&(e!==i.x||r!==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:r,title(t){if(t.length>0){const n=t[0],e=n.chart.data.labels,r=e?e.length:0;if(this&&this.options&&"dataset"===this.options.mode)return n.dataset.label||"";if(n.label)return n.label;if(r>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:Fo,Filler:oi,Legend:ai,SubTitle:hi,Title:li,Tooltip:ki});class Ci extends rr{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:r}of n)t[e]===r&&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,r){const o=t.indexOf(n);return-1===o?((t,n,e,r)=>("string"==typeof n?(e=t.push(n)-1,r.unshift({index:e,label:n})):isNaN(n)&&(e=null),e))(t,n,e,r):o!==t.lastIndexOf(n)?e:o}(e,t,c(n,t),this._addedLabels),e.length-1)}determineDataLimits(){const{minDefined:t,maxDefined:n}=this.getUserBounds();let{min:e,max:r}=this.getMinMax(!0);"ticks"===this.options.bounds&&(t||(e=0),n||(r=this.getLabels().length-1)),this.min=e,this.max=r}buildTicks(){const t=this.min,n=this.max,e=this.options.offset,r=[];let o=this.getLabels();o=0===t&&n===o.length-1?o:o.slice(t,n+1),this._valueRange=Math.max(o.length-(e?0:1),1),this._startValue=this.min-(e?.5:0);for(let e=t;e<=n;e++)r.push({value:e});return r}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 Si(t,n,{horizontal:e,minRotation:r}){const o=N(r),i=(e?Math.sin(o):Math.cos(o))||.001,s=.75*n*(""+t).length;return Math.min(n/i,s)}Ci.id="category",Ci.defaults={ticks:{callback:Ci.prototype.getLabelForValue}};class zi extends rr{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:r,max:o}=this;const i=t=>r=n?r:t,s=t=>o=e?o:t;if(t){const t=D(r),n=D(o);t<0&&n<0?s(0):t>0&&n>0&&i(0)}if(r===o){let n=1;(o>=Number.MAX_SAFE_INTEGER||r<=Number.MIN_SAFE_INTEGER)&&(n=Math.abs(.05*o)),s(o+n),t||i(r-n)}this.min=r,this.max=o}getTickLimit(){const t=this.options.ticks;let n,{maxTicksLimit:e,stepSize:r}=t;return r?(n=Math.ceil(this.max/r)-Math.floor(this.min/r)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${r} 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 r=function(t,n){const e=[],{bounds:r,step:o,min:s,max:a,precision:u,count:l,maxTicks:c,maxDigits:h,includeBounds:p}=t,f=o||1,_=c-1,{min:d,max:v}=n,y=!i(s),m=!i(a),g=!i(l),b=(v-d)/(h+1);let $,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)||($=Math.pow(10,u),j=Math.ceil(j*$)/$),"ticks"===r?(w=Math.floor(d/j)*j,x=Math.ceil(v/j)*j):(w=d,x=v),y&&m&&o&&function(t,n){const e=Math.round(t);return e-n<=t&&e+n>=t}((a-s)/o,j/1e3)?(k=Math.round(Math.min((a-s)/j,c)),j=(a-s)/k,w=s,x=a):g?(w=y?s:w,x=m?a:x,k=l-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));$=Math.pow(10,i(u)?C:u),w=Math.round(w*$)/$,x=Math.round(x*$)/$;let S=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,r=this.max;const o=n=>e=t?e:n,i=t=>r=n?r:t,s=(t,n)=>Math.pow(10,Math.floor(I(t))+n);e===r&&(e<=0?(o(1),i(10)):(o(s(e,-1)),i(s(r,1)))),e<=0&&o(s(r,-1)),r<=0&&i(s(e,1)),this._zero&&this.min!==this._suggestedMin&&e===s(this.min,0)&&o(s(e,-1)),this.min=e,this.max=r}buildTicks(){const t=this.options,n=function(t,n){const e=Math.floor(I(n.max)),r=Math.ceil(n.max/Math.pow(10,e)),o=[];let i=l(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{o.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(so?{start:n-e,end:n}:{start:n,end:n+e}}function Ei(t,n,e,r,o){const i=Math.abs(Math.sin(e)),s=Math.abs(Math.cos(e));let a=0,u=0;r.startn.r&&(a=(r.end-n.r)/i,t.r=Math.max(t.r,n.r+a)),o.startn.b&&(u=(o.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,r){const{ctx:o}=t;if(e)o.arc(t.xCenter,t.yCenter,n,0,z);else{let e=t.getPointPosition(0,n);o.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),r=[],o=[],i=t._pointLabels.length,a=t.options.pointLabels,u=a.centerPointLabels?S/i:0;for(let p=0;p=0&&t=0;o--){const n=r.setContext(t.getPointLabelContext(o)),s=bn(n.font),{x:a,y:u,textAlign:l,left:c,top:h,right:p,bottom:f}=t._pointLabelItems[o],{backdropColor:_}=n;if(!i(_)){const t=mn(n.borderRadius),r=gn(n.backdropPadding);e.fillStyle=_;const o=c-r.left,i=h-r.top,s=p-c+r.width,a=f-h+r.height;Object.values(t).some((t=>0!==t))?(e.beginPath(),pn(e,{x:o,y:i,w:s,h:a,radius:t}),e.fill()):e.fillRect(o,i,s,a)}cn(e,t._pointLabels[o],a,u+s.lineHeight/2,s,{color:n.color,textAlign:l,textBaseline:"middle"})}}(this,o),r.display&&this.ticks.forEach(((t,n)=>{0!==n&&(a=this.getDistanceFromCenterForValue(t.value),function(t,n,e,r){const o=t.ctx,i=n.circular,{color:s,lineWidth:a}=n;!i&&!r||!s||!a||e<0||(o.save(),o.strokeStyle=s,o.lineWidth=a,o.setLineDash(n.borderDash),o.lineDashOffset=n.borderDashOffset,o.beginPath(),Ti(t,e,i,r),o.closePath(),o.stroke(),o.restore())}(this,r.setContext(this.getContext(n-1)),a,o))})),e.display){for(t.save(),s=o-1;s>=0;s--){const r=e.setContext(this.getPointLabelContext(s)),{color:o,lineWidth:i}=r;i&&o&&(t.lineWidth=i,t.strokeStyle=o,t.setLineDash(r.borderDash),t.lineDashOffset=r.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 r=this.getIndexAngle(0);let o,i;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(r),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach(((r,s)=>{if(0===s&&!n.reverse)return;const a=e.setContext(this.getContext(s)),u=bn(a.font);if(o=this.getDistanceFromCenterForValue(this.ticks[s].value),a.showLabelBackdrop){t.font=u.string,i=t.measureText(r.label).width,t.fillStyle=a.backdropColor;const n=gn(a.backdropPadding);t.fillRect(-i/2-n.left,-o-u.size/2-n.top,i+n.width,u.size+n.height)}cn(t,r.label,0,-o,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}},Ri=Object.keys(Li);function Ni(t,n){return t-n}function Fi(t,n){if(i(n))return null;const e=t._adapter,{parser:r,round:o,isoWeekday:s}=t._parseOpts;let a=n;return"function"==typeof r&&(a=r(a)),u(a)||(a="string"==typeof r?e.parse(a,r):e.parse(a)),null===a?null:(o&&(a="week"!==o||!B(s)&&!0!==s?e.startOf(a,o):e.startOf(a,"isoWeek",s)),+a)}function Hi(t,n,e,r){const o=Ri.length;for(let i=Ri.indexOf(t);i=n?e[r]:e[o]]=!0}}else t[n]=!0}function Vi(t,n,e){const r=[],o={},i=n.length;let s,a;for(s=0;s=0&&(n[u].major=!0);return n}(t,r,o,e):r}class Wi extends rr{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={}),r=this._adapter=new cr._date(t.adapters.date);r.init(n),g(e.displayFormats,r.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:Fi(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:r,max:o,minDefined:i,maxDefined:s}=this.getUserBounds();function a(t){i||isNaN(t.min)||(r=Math.min(r,t.min)),s||isNaN(t.max)||(o=Math.max(o,t.max))}i&&s||(a(this._getLabelBounds()),"ticks"===t.bounds&&"labels"===t.ticks.source||a(this.getMinMax(!1))),r=u(r)&&!isNaN(r)?r:+n.startOf(Date.now(),e),o=u(o)&&!isNaN(o)?o:+n.endOf(Date.now(),e)+1,this.min=Math.min(r,o-1),this.max=Math.max(r+1,o)}_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,r="labels"===e.source?this.getLabelTimestamps():this._generate();"ticks"===t.bounds&&r.length&&(this.min=this._userMin||r[0],this.max=this._userMax||r[r.length-1]);const o=this.min,i=function(t,n,e){let r=0,o=t.length;for(;rr&&t[o-1]>e;)o--;return r>0||o=Ri.indexOf(e);i--){const e=Ri[i];if(Li[e].common&&t._adapter.diff(o,r,e)>=n-1)return e}return Ri[e?Ri.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=Ri.indexOf(t)+1,e=Ri.length;n+t.value)))}initOffsets(t){let n,e,r=0,o=0;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),r=1===t.length?1-n:(this.getDecimalForValue(t[1])-n)/2,e=this.getDecimalForValue(t[t.length-1]),o=1===t.length?e:(e-this.getDecimalForValue(t[t.length-2]))/2);const i=t.length<3?.5:.25;r=G(r,0,i),o=G(o,0,i),this._offsets={start:r,end:o,factor:1/(r+1+o)}}_generate(){const t=this._adapter,n=this.min,e=this.max,r=this.options,o=r.time,i=o.unit||Hi(o.minUnit,n,e,this._getLabelCapacity(n)),s=c(o.stepSize,1),a="week"===i&&o.isoWeekday,u=B(a)||!0===a,l={};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"===r.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,r){const o=this.options,i=o.time.displayFormats,s=this._unit,a=this._majorUnit,u=s&&i[s],l=a&&i[a],c=e[n],h=a&&l&&c&&c.major,f=this._adapter.format(t,r||(h?l:u)),_=o.ticks.callback;return _?p(_,[f,n,e],this):f}generateTickLabels(t){let n,e,r;for(n=0,e=t.length;n0?s:1}getDataTimestamps(){let t,n,e=this._cache.data||[];if(e.length)return e;const r=this.getMatchingVisibleMetas();if(this._normalized&&r.length)return this._cache.data=r[0].controller.getAllParsedValues(this);for(t=0,n=r.length;t=t[a].pos&&n<=t[u].pos&&({lo:a,hi:u}=Z(t,"pos",n)),({pos:r,time:i}=t[a]),({pos:o,time:s}=t[u])):(n>=t[a].time&&n<=t[u].time&&({lo:a,hi:u}=Z(t,"time",n)),({time:r,pos:i}=t[a]),({time:o,pos:s}=t[u]));const l=o-r;return l?i+(s-i)*(n-r)/l: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 Ji 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=Ki(n,this.min),this._tableRange=Ki(n,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:n,max:e}=this,r=[],o=[];let i,s,a,u,l;for(i=0,s=t.length;i=n&&u<=e&&r.push(u);if(r.length<2)return[{time:n,pos:0},{time:e,pos:1}];for(i=0,s=r.length;i{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},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 407886e..e46aa8b 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/src/kotlin/collections/BrittleContainsOptimization.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(\"Missing ${originalValueOrder.minus(currentValueOrder.toSet())} in '${blockRow.title}' block\")\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 if(viewModel.isAutoGroupButtonVisible){\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\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 isAutoGroupButtonVisible by mutableStateOf(false)\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\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\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 val autoGroupMapSize = chartsBundle?.groupMap?.autoGroupMap?.size ?: 0\n val wordColorMapSize = chartsBundle?.groupMap?.wordColorMap?.size ?: 0\n isAutoGroupButtonVisible = autoGroupMapSize != wordColorMapSize\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,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","autoGroupMapSize","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 +{"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/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/text/string.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/BenchmarkRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/FormRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/GoogleFormRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/GoogleSheetRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/repo/UserRepo.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/DefaultValues.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/JsonUtils.kt","webpack://benchart/../../../../src/jsMain/kotlin/utils/RandomString.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/../../../../../jsMainSources/libraries/stdlib/js/src/kotlin/random/PlatformRandom.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/src/kotlin/collections/BrittleContainsOptimization.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(\"Missing ${originalValueOrder.minus(currentValueOrder.toSet())} in '${blockRow.title}' block\")\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.marginRight\nimport org.jetbrains.compose.web.css.marginTop\nimport org.jetbrains.compose.web.css.px\nimport org.jetbrains.compose.web.dom.*\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 onShareClicked: (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 Button(\n attrs = {\n classes(\"btn\", \"btn-dark\", \"float-end\")\n style {\n marginTop(10.px)\n marginRight(10.px)\n }\n if (form.data.isBlank()) {\n attr(\"disabled\", \"true\")\n }\n onClick {\n onShareClicked(form)\n }\n type(ButtonType.Button)\n }\n ) {\n Text(\"🔗 SHARE\")\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 kotlinx.browser.window\nimport org.jetbrains.compose.web.attributes.ButtonType\nimport org.jetbrains.compose.web.attributes.type\nimport org.jetbrains.compose.web.css.marginTop\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.Button\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.H4\nimport org.jetbrains.compose.web.dom.P\nimport org.jetbrains.compose.web.dom.Text\nimport repo.BenchmarkRepoImpl\nimport repo.FormRepoImpl\nimport repo.GoogleFormRepoImpl\nimport repo.GoogleSheetRepoImpl\nimport repo.UserRepoImpl\n\n@Composable\nfun HomePageUi(\n viewModel: HomeViewModel = remember {\n HomeViewModel(\n BenchmarkRepoImpl(),\n FormRepoImpl(),\n GoogleFormRepoImpl(),\n GoogleSheetRepoImpl(),\n UserRepoImpl()\n )\n }\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 onShareClicked = viewModel::onShareClicked\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 if (viewModel.isAutoGroupButtonVisible) {\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\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 Div(\n attrs = {\n id(\"shareAwareModal\")\n classes(\"modal\", \"fade\")\n }\n ) {\n Div(\n attrs = {\n classes(\"modal-dialog\", \"modal-lg\")\n }\n ) {\n Div(\n attrs = {\n classes(\"modal-content\")\n }\n ) {\n Div(\n attrs = {\n classes(\"modal-header\")\n }\n ) {\n H4(\n attrs = {\n classes(\"modal-title\")\n }\n ) {\n Text(\"Share\")\n }\n }\n\n Div(\n attrs = {\n classes(\"modal-body\")\n }\n ) {\n P {\n Text(\"\"\"\n It looks like you're using the 'Share' feature for the first time.\n Please be aware that the data you share will be public and visible to everyone.\n Make sure your input doesn't contain any sensitive data.\n \n If you need private share, please vote for the feature below\n \"\"\".trimIndent())\n }\n }\n\n Div(\n attrs = {\n classes(\"modal-footer\")\n }\n ) {\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-dark\")\n style {\n marginTop(10.px)\n }\n\n onClick {\n window.open(\"https://forms.gle/KtPAA5LMeE8sak5h9\", target = \"_blank\")\n }\n type(ButtonType.Button)\n }\n ) {\n Text(\"Vote for Private Share\")\n }\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-danger\")\n attr(\"data-bs-dismiss\", \"modal\")\n style {\n marginTop(10.px)\n }\n type(ButtonType.Button)\n }\n ) {\n Text(\"Cancel Share\")\n }\n\n Button(\n attrs = {\n classes(\"btn\", \"btn-success\")\n attr(\"data-bs-dismiss\", \"modal\")\n style {\n marginTop(10.px)\n }\n\n onClick {\n viewModel.onAwarePublicShare()\n }\n type(ButtonType.Button)\n }\n ) {\n Text(\"Understood, Share!\")\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 repo.GoogleFormRepo\nimport repo.GoogleSheetRepo\nimport repo.UserRepo\nimport utils.DefaultValues\nimport utils.RandomString\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 private val googleFormRepo: GoogleFormRepo,\n private val googleSheetRepo: GoogleSheetRepo,\n private val userRepo: UserRepo\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 isAutoGroupButtonVisible by mutableStateOf(false)\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\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 // Reading shareKey\n val currentUrl = window.location.href\n val shareKey = if(currentUrl.contains(\"#\")){\n currentUrl.substring(currentUrl.lastIndexOf(\"#\") + 1).trim()\n }else{\n null\n }\n println(\"QuickTag: HomeViewModel:: shareKey: '$shareKey'\")\n if (!shareKey.isNullOrBlank()) {\n // Load input for the shareKey\n googleSheetRepo.getSharedInput(\n shareKey = shareKey,\n onSharedInput = { sharedInput ->\n form = form.copy(data = sharedInput)\n onFormChanged(form)\n },\n onFailed = { message ->\n window.alert(message)\n }\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\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 val autoGroupMapSize = chartsBundle?.groupMap?.autoGroupMap?.size ?: 0\n val wordColorMapSize = chartsBundle?.groupMap?.wordColorMap?.size ?: 0\n isAutoGroupButtonVisible = autoGroupMapSize != wordColorMapSize\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 onShareClicked(formData: FormData) {\n val isAwareDataPublic = userRepo.isAwareShareIsPublic()\n println(\"QuickTag: HomeViewModel:onShareClicked: isAwareDataPublic $isAwareDataPublic\")\n if(isAwareDataPublic){\n debounce(\n func = {\n // We need to split the input into chunk of 30,000 character\n val chunks = formData.data.chunked(30000)\n // since we're using the millis as Random see 10 should be enough 🤔\n val shareKey = RandomString.getRandomString(10)\n\n // Submit the Google form to insert the data to google sheet\n for ((index, chunk) in chunks.withIndex()) {\n try {\n googleFormRepo.insert(\n shareKey,\n index,\n chunk\n )\n } catch (e: Throwable) {\n e.printStackTrace()\n // ignoring\n }\n }\n\n // show a success message to user that the URL has been copied to the clipboard\n println(\"QuickTag: HomeViewModel:onShareClicked: Huhhaaa!!! shareKey: $shareKey. Checking data integrity...\")\n\n // using shareKey and chunkSize to verify the upload\n googleSheetRepo.getChunkSize(\n shareKey = shareKey,\n onChunkSize = { remoteChunkSize ->\n if (remoteChunkSize == chunks.size) {\n // Data integrity ✅\n println(\"QuickTag: HomeViewModel:onShareClicked: SHARE SUCCESS!\")\n window.prompt(\n message = \"Ready to share, copy below URL\",\n default = \"${window.location.origin}/#$shareKey\"\n )\n } else {\n window.alert(\"Share failed. Expected ${chunks.size} chunk(s) but found $remoteChunkSize\")\n }\n },\n onFailed = { reason ->\n window.alert(\"Share failed : $reason\")\n }\n )\n },\n delay = 500\n )\n }else{\n js(\"var myModal = new bootstrap.Modal(document.getElementById('shareAwareModal'), {});myModal.show();\")\n }\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\n fun onAwarePublicShare() {\n userRepo.setAwareShareIsPublic(isAware = true)\n onShareClicked(form)\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",null,"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 repo\n\nimport org.w3c.xhr.XMLHttpRequest\n\ninterface GoogleFormRepo {\n fun insert(\n shareKey : String,\n chunkIndex : Int,\n inputChunk : String\n )\n}\n\nclass GoogleFormRepoImpl : GoogleFormRepo {\n\n companion object {\n private const val FORM_SUBMISSION_URL =\n \"https://docs.google.com/forms/d/e/1FAIpQLSfYy0ZnzlSot_3SpJ7GVK9umEpf3Dqzz1pQ7jyLUVd7jO2qCQ/formResponse\"\n }\n\n override fun insert(shareKey: String, chunkIndex: Int, inputChunk: String) {\n val data = \"entry.1218983684=$shareKey&entry.1886726465=$chunkIndex&entry.1340578003=$inputChunk\";\n val xhr = XMLHttpRequest()\n xhr.open(\"POST\", FORM_SUBMISSION_URL, async = false)\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\n xhr.send(data)\n }\n\n}","package repo\n\nimport org.w3c.xhr.XMLHttpRequest\n\ninterface GoogleSheetRepo {\n fun getChunkSize(\n shareKey: String,\n onChunkSize: (chunkSize: Int) -> Unit,\n onFailed: (reason: String) -> Unit\n )\n\n fun getSharedInput(\n shareKey: String,\n onSharedInput: (input: String) -> Unit,\n onFailed: (reason: String) -> Unit\n )\n}\n\nclass GoogleSheetRepoImpl : GoogleSheetRepo {\n companion object {\n private const val BASE_URL =\n \"https://docs.google.com/spreadsheets/d/1U1bKMHN0hlpZ1CVke3TB3-Xc20ZJwZxlMWYXpMcII-k/gviz/tq?tqx=out:csv&sheet=Sheet1\"\n }\n\n override fun getChunkSize(\n shareKey: String,\n onChunkSize: (chunkSize: Int) -> Unit,\n onFailed: (reason: String) -> Unit\n ) {\n try {\n val chunkCountUrl = \"$BASE_URL&tq=SELECT COUNT(C) WHERE B = '$shareKey'\"\n val xhr = XMLHttpRequest()\n xhr.open(\"GET\", chunkCountUrl)\n xhr.onreadystatechange = { _ ->\n println(\"QuickTag: GoogleSheetRepoImpl:getChunkCount: readyState: ${xhr.readyState}, status = ${xhr.status}\")\n if (xhr.readyState == 4.toShort()) {\n if (xhr.status == 200.toShort()) {\n val responseLines = xhr.responseText.split(\"\\n\")\n if (responseLines.size == 2) {\n // chunk exist\n val chunkSize = responseLines[1].replace(\"\\\"\", \"\").toInt()\n onChunkSize(chunkSize)\n } else {\n // share doesn't exist\n onFailed(\"No chunk exist for shareKey '$shareKey'\")\n }\n } else {\n onFailed(\"Share request failed\")\n }\n }\n }\n xhr.send()\n } catch (e: Throwable) {\n onFailed(e.message ?: \"Something wrong\")\n }\n }\n\n override fun getSharedInput(\n shareKey: String,\n onSharedInput: (input: String) -> Unit,\n onFailed: (reason: String) -> Unit\n ) {\n try {\n val chunkCountUrl = \"$BASE_URL&tq=SELECT C,D WHERE B = '$shareKey' ORDER BY C\"\n val xhr = XMLHttpRequest()\n xhr.open(\"GET\", chunkCountUrl)\n xhr.onreadystatechange = { _ ->\n println(\"QuickTag: GoogleSheetRepoImpl:getChunkCount: readyState: ${xhr.readyState}, status = ${xhr.status}\")\n if (xhr.readyState == 4.toShort()) {\n if (xhr.status == 200.toShort()) {\n val responseLines = xhr.responseText\n val firstLineBreakIndex = responseLines.indexOf('\\n')\n if (firstLineBreakIndex != -1) {\n val sharedInput = responseLines\n .substring(firstLineBreakIndex+1, responseLines.length - 1)\n .replace(\"\\\"\\\\n\\\"(?:\\\\d+)\\\",\\\"\".toRegex(),\"\")\n .substring(5)\n onSharedInput(sharedInput)\n } else {\n onFailed(\"Invalid shareKey '$shareKey'\")\n }\n } else {\n onFailed(\"Share request failed\")\n }\n }\n }\n xhr.send()\n } catch (e: Throwable) {\n onFailed(e.message ?: \"Something wrong\")\n }\n }\n}","package repo\n\nimport kotlinx.browser.window\n\ninterface UserRepo {\n fun isAwareShareIsPublic() : Boolean\n fun setAwareShareIsPublic(isAware : Boolean)\n}\n\nclass UserRepoImpl : UserRepo {\n companion object{\n private const val KEY_IS_AWARE_SHARE_IS_PUBLIC = \"is_aware_share_is_public\"\n }\n override fun isAwareShareIsPublic(): Boolean {\n return window.localStorage.getItem(KEY_IS_AWARE_SHARE_IS_PUBLIC)?.toBoolean() ?: false\n }\n\n override fun setAwareShareIsPublic(isAware: Boolean) {\n window.localStorage.setItem(KEY_IS_AWARE_SHARE_IS_PUBLIC, isAware.toString())\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}","package utils\n\n\nimport kotlin.js.Date\nimport kotlin.random.Random\n\n/**\n * Created by theapache64 on 9/4/16.\n * and reused in 2024 :P\n */\nobject RandomString {\n private const val RANDOM_ENGINE = \"0123456789AaBbCcDdEeFfGgHhIiJjKkLkMmNnOoPpQqRrSsTtUuVvWwXxYyZz\"\n\n fun getRandomString(length: Int): String {\n val random = Random(Date().getMilliseconds())\n val apiKeyBuilder = StringBuilder()\n for (i in 0 until length) {\n apiKeyBuilder.append(RANDOM_ENGINE[random.nextInt(RANDOM_ENGINE.length)])\n }\n return apiKeyBuilder.toString()\n }\n}",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,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","marginRight","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","Date","getMilliseconds","lazy","document","createElement","selector","summaries","summary","avgOfCount","blockName","badgeClass","postfix","fontWeight","ElementBuilderImplementation","testName","HomeViewModel","BenchmarkRepoImpl","FormRepoImpl","GoogleFormRepoImpl","GoogleSheetRepoImpl","UserRepoImpl","newTestName","chunked","paddingLeft","paddingRight","paddingBottom","chart","window","open","contains","updateSummary","chartsBundle","blockNames","emptyList","blockNameOuter","blockNameInner","greenSum","redSum","node","newAggSums","AggSummary","calcAggSummary","alert","inputType","min","toGenericChart","newCharts","onChartsBundleUpdated","firstOrNull","currentTestName","toCharts","autoGroupMapSize","printStackTrace","reset","reason","chunks","chunk","shareKey","remoteChunkSize","prompt","location","origin","mutableStateListOf","FormData","refreshBenchmarks","addEventListener","href","currentUrl","sharedInput","isGenericInput","form","parseGenericInput","isTestName","findMetricKeyOrNull","metricName","InvalidBenchmarkDataException","parseTitle","setOf","iLine","match","lastOrNull","number","TextNumberLine","destroy","cloneNode","setTimeout","delay","filterOutAndroidJunkLog","unfilteredForm","bName","SavedBenchmarkNode","formData","newList","isAwareDataPublic","savedBenchmarkNode","newForm","confirm","deletedBenchmarkNode","newBlockName","localStorage","getItem","savedBenchmarksString","SavedBenchmarks","setItem","removeAll","toString","toBoolean","isTestNameDetectionEnabled","chunkIndex","inputChunk","XMLHttpRequest","xhr","setRequestHeader","send","chunkCountUrl","onreadystatechange","readyState","status","responseText","responseLines","toInt","chunkSize","onFailed","firstLineBreakIndex","isAware","Random","length","apiKeyBuilder","random","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","_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","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