diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index d2e2ea9af..000000000 --- a/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -\*_/**fixtures**/_.js -serviceWorker.js diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index 94718c685..000000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,80 +0,0 @@ -module.exports = { - parser: '@babel/eslint-parser', - settings: { - 'import/resolver': { - node: { - paths: ['src'], - extensions: ['.js', '.jsx', '.ts', '.d.ts', '.tsx'], - }, - }, - react: { - version: 'detect', - }, - }, - env: { - browser: true, - es2021: true, - }, - extends: [ - 'eslint:recommended', - 'plugin:import/errors', - 'plugin:react/recommended', - 'plugin:react-hooks/recommended', - 'plugin:react-redux/recommended', - 'plugin:react/jsx-runtime', - 'plugin:jsdoc/recommended', - 'plugin:jsx-a11y/recommended', - 'react-app', - 'react-app/jest', - 'prettier', - ], - globals: { - "JSX": "readonly" - }, - overrides: [ - { - files: ['**/?(*.)+(spec|test).[jt]s?(x)'], - extends: ['plugin:testing-library/react'], - }, - ], - parserOptions: { - babelOptions: { - presets: ['@babel/preset-react'], - }, - sourceType: 'module', - }, - // Some plugins are automatically included. - // Run `yarn eslint --print-config foo.js > bar.json` to see included plugins. - // plugins: [], - rules: { - 'id-length': ['error', { min: 2 }], - 'jsdoc/require-hyphen-before-param-description': ['warn', 'always'], - 'jsdoc/tag-lines': ['error', 'any', { startLines: 1 }], - 'no-console': ['warn'], - 'no-use-before-define': ['error'], - 'no-unused-vars': [ - 'error', - { - vars: 'all', - args: 'after-used', - ignoreRestSiblings: false, - }, - ], - 'no-var': ['error'], - 'prefer-const': ['error'], - radix: ['error'], - 'react/jsx-no-leaked-render': [ - 'error', - { validStrategies: ['coerce', 'ternary'] }, - ], - 'react/no-multi-comp': ['error', { ignoreStateless: true }], - 'react/no-unstable-nested-components': ['error'], - 'react/self-closing-comp': ['error'], - 'react/boolean-prop-naming': ['error', { validateNested: true }], - 'react/default-props-match-prop-types': [ - 'error', - { allowRequiredDefaults: true }, - ], - 'react/jsx-curly-brace-presence': ['error'], - }, -}; diff --git a/cypress/.eslintrc.js b/cypress/.eslintrc.js deleted file mode 100644 index 9f9ac937f..000000000 --- a/cypress/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['plugin:cypress/recommended'], -}; diff --git a/dist/ccdb5.js b/dist/ccdb5.js index b5f6b9790..dbcd9cb20 100644 --- a/dist/ccdb5.js +++ b/dist/ccdb5.js @@ -1,4 +1,4 @@ -var fq=Object.defineProperty,dq=Object.defineProperties;var pq=Object.getOwnPropertyDescriptors;var Yk=Object.getOwnPropertySymbols;var VR=Object.prototype.hasOwnProperty,GR=Object.prototype.propertyIsEnumerable;var qR=Math.pow,X5=(Qo,xa,Fn)=>xa in Qo?fq(Qo,xa,{enumerable:!0,configurable:!0,writable:!0,value:Fn}):Qo[xa]=Fn,xr=(Qo,xa)=>{for(var Fn in xa||(xa={}))VR.call(xa,Fn)&&X5(Qo,Fn,xa[Fn]);if(Yk)for(var Fn of Yk(xa))GR.call(xa,Fn)&&X5(Qo,Fn,xa[Fn]);return Qo},Mi=(Qo,xa)=>dq(Qo,pq(xa));var $R=Qo=>typeof Qo=="symbol"?Qo:Qo+"",ro=(Qo,xa)=>{var Fn={};for(var Qu in Qo)VR.call(Qo,Qu)&&xa.indexOf(Qu)<0&&(Fn[Qu]=Qo[Qu]);if(Qo!=null&&Yk)for(var Qu of Yk(Qo))xa.indexOf(Qu)<0&&GR.call(Qo,Qu)&&(Fn[Qu]=Qo[Qu]);return Fn};var so=(Qo,xa,Fn)=>X5(Qo,typeof xa!="symbol"?xa+"":xa,Fn);var Zi=(Qo,xa,Fn)=>new Promise((Qu,yr)=>{var Oe=Pt=>{try{j(Fn.next(Pt))}catch(d){yr(d)}},xt=Pt=>{try{j(Fn.throw(Pt))}catch(d){yr(d)}},j=Pt=>Pt.done?Qu(Pt.value):Promise.resolve(Pt.value).then(Oe,xt);j((Fn=Fn.apply(Qo,xa)).next())});(()=>{var Qo={3861:(yr,Oe,xt)=>{(function(j,Pt){yr.exports=Pt(xt(3224))})(window,function(j){return function(Pt){var d={};function g(L){if(d[L])return d[L].exports;var R=d[L]={i:L,l:!1,exports:{}};return Pt[L].call(R.exports,R,R.exports,g),R.l=!0,R.exports}return g.m=Pt,g.c=d,g.d=function(L,R,st){g.o(L,R)||Object.defineProperty(L,R,{enumerable:!0,get:st})},g.r=function(L){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(L,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(L,"__esModule",{value:!0})},g.t=function(L,R){if(1&R&&(L=g(L)),8&R||4&R&&typeof L=="object"&&L&&L.__esModule)return L;var st=Object.create(null);if(g.r(st),Object.defineProperty(st,"default",{enumerable:!0,value:L}),2&R&&typeof L!="string")for(var $ in L)g.d(st,$,function(J){return L[J]}.bind(null,$));return st},g.n=function(L){var R=L&&L.__esModule?function(){return L.default}:function(){return L};return g.d(R,"a",R),R},g.o=function(L,R){return Object.prototype.hasOwnProperty.call(L,R)},g.p="",g(g.s=87)}([function(Pt,d,g){"use strict";g.r(d);var L=function(nt,x){return ntx?1:nt>=x?0:NaN},R=function(nt){var x;return nt.length===1&&(x=nt,nt=function(y,F){return L(x(y),F)}),{left:function(y,F,lt,rt){for(lt==null&&(lt=0),rt==null&&(rt=y.length);lt>>1;nt(y[gt],F)<0?lt=gt+1:rt=gt}return lt},right:function(y,F,lt,rt){for(lt==null&&(lt=0),rt==null&&(rt=y.length);lt>>1;nt(y[gt],F)>0?rt=gt:lt=gt+1}return lt}}},st=R(L),$=st.right,J=st.left,X=$,q=function(nt,x){x==null&&(x=Z);for(var y=0,F=nt.length-1,lt=nt[0],rt=new Array(F<0?0:F);ynt?1:x>=nt?0:NaN},N=function(nt){return nt===null?NaN:+nt},U=function(nt,x){var y,F,lt=nt.length,rt=0,gt=-1,vt=0,Ot=0;if(x==null)for(;++gt1)return Ot/(rt-1)},T=function(nt,x){var y=U(nt,x);return y&&Math.sqrt(y)},A=function(nt,x){var y,F,lt,rt=nt.length,gt=-1;if(x==null){for(;++gt=y)for(F=lt=y;++gty&&(F=y),lt=y)for(F=lt=y;++gty&&(F=y),lt0)return[nt];if((F=x0)for(nt=Math.ceil(nt/gt),x=Math.floor(x/gt),rt=new Array(lt=Math.ceil(x-nt+1));++vt=0?(rt>=it?10:rt>=Q?5:rt>=W?2:1)*Math.pow(10,lt):-Math.pow(10,-lt)/(rt>=it?10:rt>=Q?5:rt>=W?2:1)}function C(nt,x,y){var F=Math.abs(x-nt)/Math.max(0,y),lt=Math.pow(10,Math.floor(Math.log(F)/Math.LN10)),rt=F/lt;return rt>=it?lt*=10:rt>=Q?lt*=5:rt>=W&&(lt*=2),xXt;)Ct.pop(),--wt;var Dt,jt=new Array(wt+1);for(rt=0;rt<=wt;++rt)(Dt=jt[rt]=[]).x0=rt>0?Ct[rt-1]:$t,Dt.x1=rt=1)return+y(nt[F-1],F-1,nt);var F,lt=(F-1)*x,rt=Math.floor(lt),gt=+y(nt[rt],rt,nt);return gt+(+y(nt[rt+1],rt+1,nt)-gt)*(lt-rt)}},v=function(nt,x,y){return nt=H.call(nt,N).sort(L),Math.ceil((y-x)/(2*(u(nt,.75)-u(nt,.25))*Math.pow(nt.length,-1/3)))},I=function(nt,x,y){return Math.ceil((y-x)/(3.5*T(nt)*Math.pow(nt.length,-1/3)))},S=function(nt,x){var y,F,lt=nt.length,rt=-1;if(x==null){for(;++rt=y)for(F=y;++rtF&&(F=y)}else for(;++rt=y)for(F=y;++rtF&&(F=y);return F},b=function(nt,x){var y,F=nt.length,lt=F,rt=-1,gt=0;if(x==null)for(;++rt=0;)for(x=(F=nt[lt]).length;--x>=0;)y[--gt]=F[x];return y},et=function(nt,x){var y,F,lt=nt.length,rt=-1;if(x==null){for(;++rt=y)for(F=y;++rty&&(F=y)}else for(;++rt=y)for(F=y;++rty&&(F=y);return F},dt=function(nt,x){for(var y=x.length,F=new Array(y);y--;)F[y]=nt[x[y]];return F},pt=function(nt,x){if(y=nt.length){var y,F,lt=0,rt=0,gt=nt[rt];for(x==null&&(x=L);++lt0))return T;do T.push(U=new Date(+Y)),J(Y,N),$(Y);while(U=V)for(;$(V),!Y(V);)V.setTime(V-1)},function(V,N){if(V>=V)if(N<0)for(;++N<=0;)for(;J(V,-1),!Y(V););else for(;--N>=0;)for(;J(V,1),!Y(V););})},X&&(Z.count=function(Y,V){return L.setTime(+Y),R.setTime(+V),$(L),$(R),Math.floor(X(L,R))},Z.every=function(Y){return Y=Math.floor(Y),isFinite(Y)&&Y>0?Y>1?Z.filter(q?function(V){return q(V)%Y==0}:function(V){return Z.count(0,V)%Y==0}):Z:null}),Z}},function(Pt,d,g){"use strict";g.r(d);var L=g(29),R=g(64),st=function(Q){return Object(R.a)(Object(L.a)(Q).call(document.documentElement))},$=0;function J(){return new X}function X(){this._="@"+(++$).toString(36)}X.prototype=J.prototype={constructor:X,get:function(Q){for(var W=this._;!(W in Q);)if(!(Q=Q.parentNode))return;return Q[W]},set:function(Q,W){return Q[this._]=W},remove:function(Q){return this._ in Q&&delete Q[this._]},toString:function(){return this._}};var q=g(66),Z=g(84),Y=g(44),V=g(32),N=g(30),U=g(23),T=function(Q){return typeof Q=="string"?new U.a([document.querySelectorAll(Q)],[document.documentElement]):new U.a([Q==null?[]:Q],U.c)},A=g(43),M=g(65),O=g(67),H=g(85),z=g(46),c=function(Q,W){W==null&&(W=Object(z.a)().touches);for(var k=0,_=W?W.length:0,C=new Array(_);k<_;++k)C[k]=Object(N.a)(Q,W[k]);return C},D=g(45),it=g(37);g.d(d,"create",function(){return st}),g.d(d,"creator",function(){return L.a}),g.d(d,"local",function(){return J}),g.d(d,"matcher",function(){return q.a}),g.d(d,"mouse",function(){return Z.a}),g.d(d,"namespace",function(){return Y.a}),g.d(d,"namespaces",function(){return V.a}),g.d(d,"clientPoint",function(){return N.a}),g.d(d,"select",function(){return R.a}),g.d(d,"selectAll",function(){return T}),g.d(d,"selection",function(){return U.b}),g.d(d,"selector",function(){return A.a}),g.d(d,"selectorAll",function(){return M.a}),g.d(d,"style",function(){return O.b}),g.d(d,"touch",function(){return H.a}),g.d(d,"touches",function(){return c}),g.d(d,"window",function(){return D.a}),g.d(d,"event",function(){return it.c}),g.d(d,"customEvent",function(){return it.a})},function(Pt,d,g){"use strict";g.d(d,"d",function(){return L}),g.d(d,"c",function(){return R}),g.d(d,"b",function(){return st}),g.d(d,"a",function(){return $}),g.d(d,"e",function(){return J});var L=1e3,R=6e4,st=36e5,$=864e5,J=6048e5},function(Pt,d,g){"use strict";g.d(d,"c",function(){return st}),g.d(d,"b",function(){return $}),g.d(d,"a",function(){return J});var L=g(48);function R(X,q){return function(Z){return X+Z*q}}function st(X,q){var Z=q-X;return Z?R(X,Z>180||Z<-180?Z-360*Math.round(Z/360):Z):Object(L.a)(isNaN(X)?q:X)}function $(X){return(X=+X)==1?J:function(q,Z){return Z-q?function(Y,V,N){return Y=Math.pow(Y,N),V=Math.pow(V,N)-Y,N=1/N,function(U){return Math.pow(Y+U*V,N)}}(q,Z,X):Object(L.a)(isNaN(q)?Z:q)}}function J(X,q){var Z=q-X;return Z?R(X,Z):Object(L.a)(isNaN(X)?q:X)}},function(Pt,d,g){"use strict";g.d(d,"g",function(){return $}),g.d(d,"c",function(){return J}),g.d(d,"k",function(){return X}),g.d(d,"m",function(){return q}),g.d(d,"i",function(){return Z}),g.d(d,"a",function(){return Y}),g.d(d,"e",function(){return V}),g.d(d,"h",function(){return N}),g.d(d,"d",function(){return U}),g.d(d,"l",function(){return T}),g.d(d,"n",function(){return A}),g.d(d,"j",function(){return M}),g.d(d,"b",function(){return O}),g.d(d,"f",function(){return H});var L=g(1),R=g(3);function st(z){return Object(L.a)(function(c){c.setDate(c.getDate()-(c.getDay()+7-z)%7),c.setHours(0,0,0,0)},function(c,D){c.setDate(c.getDate()+7*D)},function(c,D){return(D-c-(D.getTimezoneOffset()-c.getTimezoneOffset())*R.c)/R.e})}var $=st(0),J=st(1),X=st(2),q=st(3),Z=st(4),Y=st(5),V=st(6),N=$.range,U=J.range,T=X.range,A=q.range,M=Z.range,O=Y.range,H=V.range},function(Pt,d,g){"use strict";g.d(d,"g",function(){return $}),g.d(d,"c",function(){return J}),g.d(d,"k",function(){return X}),g.d(d,"m",function(){return q}),g.d(d,"i",function(){return Z}),g.d(d,"a",function(){return Y}),g.d(d,"e",function(){return V}),g.d(d,"h",function(){return N}),g.d(d,"d",function(){return U}),g.d(d,"l",function(){return T}),g.d(d,"n",function(){return A}),g.d(d,"j",function(){return M}),g.d(d,"b",function(){return O}),g.d(d,"f",function(){return H});var L=g(1),R=g(3);function st(z){return Object(L.a)(function(c){c.setUTCDate(c.getUTCDate()-(c.getUTCDay()+7-z)%7),c.setUTCHours(0,0,0,0)},function(c,D){c.setUTCDate(c.getUTCDate()+7*D)},function(c,D){return(D-c)/R.e})}var $=st(0),J=st(1),X=st(2),q=st(3),Z=st(4),Y=st(5),V=st(6),N=$.range,U=J.range,T=X.range,A=q.range,M=Z.range,O=Y.range,H=V.range},function(Pt,d,g){"use strict";g.d(d,"a",function(){return R}),g.d(d,"d",function(){return st}),g.d(d,"c",function(){return $}),g.d(d,"e",function(){return z}),g.d(d,"h",function(){return it}),g.d(d,"g",function(){return Q}),g.d(d,"b",function(){return W}),g.d(d,"f",function(){return u});var L=g(15);function R(){}var st=.7,$=1/st,J="\\s*([+-]?\\d+)\\s*",X="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",q="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Z=/^#([0-9a-f]{3,8})$/,Y=new RegExp("^rgb\\("+[J,J,J]+"\\)$"),V=new RegExp("^rgb\\("+[q,q,q]+"\\)$"),N=new RegExp("^rgba\\("+[J,J,J,X]+"\\)$"),U=new RegExp("^rgba\\("+[q,q,q,X]+"\\)$"),T=new RegExp("^hsl\\("+[X,q,q]+"\\)$"),A=new RegExp("^hsla\\("+[X,q,q,X]+"\\)$"),M={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function O(){return this.rgb().formatHex()}function H(){return this.rgb().formatRgb()}function z(S){var b,K;return S=(S+"").trim().toLowerCase(),(b=Z.exec(S))?(K=b[1].length,b=parseInt(b[1],16),K===6?c(b):K===3?new W(b>>8&15|b>>4&240,b>>4&15|240&b,(15&b)<<4|15&b,1):K===8?new W(b>>24&255,b>>16&255,b>>8&255,(255&b)/255):K===4?new W(b>>12&15|b>>8&240,b>>8&15|b>>4&240,b>>4&15|240&b,((15&b)<<4|15&b)/255):null):(b=Y.exec(S))?new W(b[1],b[2],b[3],1):(b=V.exec(S))?new W(255*b[1]/100,255*b[2]/100,255*b[3]/100,1):(b=N.exec(S))?D(b[1],b[2],b[3],b[4]):(b=U.exec(S))?D(255*b[1]/100,255*b[2]/100,255*b[3]/100,b[4]):(b=T.exec(S))?h(b[1],b[2]/100,b[3]/100,1):(b=A.exec(S))?h(b[1],b[2]/100,b[3]/100,b[4]):M.hasOwnProperty(S)?c(M[S]):S==="transparent"?new W(NaN,NaN,NaN,0):null}function c(S){return new W(S>>16&255,S>>8&255,255&S,1)}function D(S,b,K,ct){return ct<=0&&(S=b=K=NaN),new W(S,b,K,ct)}function it(S){return S instanceof R||(S=z(S)),S?new W((S=S.rgb()).r,S.g,S.b,S.opacity):new W}function Q(S,b,K,ct){return arguments.length===1?it(S):new W(S,b,K,ct==null?1:ct)}function W(S,b,K,ct){this.r=+S,this.g=+b,this.b=+K,this.opacity=+ct}function k(){return"#"+C(this.r)+C(this.g)+C(this.b)}function _(){var S=this.opacity;return((S=isNaN(S)?1:Math.max(0,Math.min(1,S)))===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(S===1?")":", "+S+")")}function C(S){return((S=Math.max(0,Math.min(255,Math.round(S)||0)))<16?"0":"")+S.toString(16)}function h(S,b,K,ct){return ct<=0?S=b=K=NaN:K<=0||K>=1?S=b=NaN:b<=0&&(S=NaN),new v(S,b,K,ct)}function l(S){if(S instanceof v)return new v(S.h,S.s,S.l,S.opacity);if(S instanceof R||(S=z(S)),!S)return new v;if(S instanceof v)return S;var b=(S=S.rgb()).r/255,K=S.g/255,ct=S.b/255,et=Math.min(b,K,ct),dt=Math.max(b,K,ct),pt=NaN,bt=dt-et,Mt=(dt+et)/2;return bt?(pt=b===dt?(K-ct)/bt+6*(K0&&Mt<1?0:pt,new v(pt,bt,Mt,S.opacity)}function u(S,b,K,ct){return arguments.length===1?l(S):new v(S,b,K,ct==null?1:ct)}function v(S,b,K,ct){this.h=+S,this.s=+b,this.l=+K,this.opacity=+ct}function I(S,b,K){return 255*(S<60?b+(K-b)*S/60:S<180?K:S<240?b+(K-b)*(240-S)/60:b)}Object(L.a)(R,z,{copy:function(S){return Object.assign(new this.constructor,this,S)},displayable:function(){return this.rgb().displayable()},hex:O,formatHex:O,formatHsl:function(){return l(this).formatHsl()},formatRgb:H,toString:H}),Object(L.a)(W,Q,Object(L.b)(R,{brighter:function(S){return S=S==null?$:Math.pow($,S),new W(this.r*S,this.g*S,this.b*S,this.opacity)},darker:function(S){return S=S==null?st:Math.pow(st,S),new W(this.r*S,this.g*S,this.b*S,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:k,formatHex:k,formatRgb:_,toString:_})),Object(L.a)(v,u,Object(L.b)(R,{brighter:function(S){return S=S==null?$:Math.pow($,S),new v(this.h,this.s,this.l*S,this.opacity)},darker:function(S){return S=S==null?st:Math.pow(st,S),new v(this.h,this.s,this.l*S,this.opacity)},rgb:function(){var S=this.h%360+360*(this.h<0),b=isNaN(S)||isNaN(this.s)?0:this.s,K=this.l,ct=K+(K<.5?K:1-K)*b,et=2*K-ct;return new W(I(S>=240?S-240:S+120,et,ct),I(S,et,ct),I(S<120?S+240:S-120,et,ct),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var S=this.opacity;return((S=isNaN(S)?1:Math.max(0,Math.min(1,S)))===1?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(S===1?")":", "+S+")")}}))},function(Pt,d,g){"use strict";g.r(d);var L,R,st=g(23),$=g(79),J=0,X=0,q=0,Z=0,Y=0,V=0,N=typeof performance=="object"&&performance.now?performance:Date,U=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(Et){setTimeout(Et,17)};function T(){return Y||(U(A),Y=N.now()+V)}function A(){Y=0}function M(){this._call=this._time=this._next=null}function O(Et,Rt,zt){var Ft=new M;return Ft.restart(Et,Rt,zt),Ft}function H(){Y=(Z=N.now())+V,J=X=0;try{(function(){T(),++J;for(var Et,Rt=L;Rt;)(Et=Y-Rt._time)>=0&&Rt._call.call(null,Et),Rt=Rt._next;--J})()}finally{J=0,function(){for(var Et,Rt,zt=L,Ft=1/0;zt;)zt._call?(Ft>zt._time&&(Ft=zt._time),Et=zt,zt=zt._next):(Rt=zt._next,zt._next=null,zt=Et?Et._next=Rt:L=Rt);R=Et,c(Ft)}(),Y=0}}function z(){var Et=N.now(),Rt=Et-Z;Rt>1e3&&(V-=Rt,Z=Et)}function c(Et){J||(X&&(X=clearTimeout(X)),Et-Y>24?(Et<1/0&&(X=setTimeout(H,Et-N.now()-V)),q&&(q=clearInterval(q))):(q||(Z=N.now(),q=setInterval(z,1e3)),J=1,U(H)))}M.prototype=O.prototype={constructor:M,restart:function(Et,Rt,zt){if(typeof Et!="function")throw new TypeError("callback is not a function");zt=(zt==null?T():+zt)+(Rt==null?0:+Rt),this._next||R===this||(R?R._next=this:L=this,R=this),this._call=Et,this._time=zt,c()},stop:function(){this._call&&(this._call=null,this._time=1/0,c())}};var D=function(Et,Rt,zt){var Ft=new M;return Rt=Rt==null?0:+Rt,Ft.restart(function(ce){Ft.stop(),Et(ce+Rt)},Rt,zt),Ft},it=Object($.a)("start","end","cancel","interrupt"),Q=[],W=function(Et,Rt,zt,Ft,ce,Se){var xe=Et.__transition;if(xe){if(zt in xe)return}else Et.__transition={};(function(Ze,pn,bn){var Ln,vn=Ze.__transition;function Tn(ye){var Fe,qe,be,je;if(bn.state!==1)return dr();for(Fe in vn)if((je=vn[Fe]).name===bn.name){if(je.state===3)return D(Tn);je.state===4?(je.state=6,je.timer.stop(),je.on.call("interrupt",Ze,Ze.__data__,je.index,je.group),delete vn[Fe]):+Fe0)throw new Error("too late; already scheduled");return zt}function _(Et,Rt){var zt=C(Et,Rt);if(zt.state>3)throw new Error("too late; already running");return zt}function C(Et,Rt){var zt=Et.__transition;if(!zt||!(zt=zt[Rt]))throw new Error("transition not found");return zt}var h=function(Et,Rt){var zt,Ft,ce,Se=Et.__transition,xe=!0;if(Se){for(ce in Rt=Rt==null?null:Rt+"",Se)(zt=Se[ce]).name===Rt?(Ft=zt.state>2&&zt.state<5,zt.state=6,zt.timer.stop(),zt.on.call(Ft?"interrupt":"cancel",Et,Et.__data__,zt.index,zt.group),delete Se[ce]):xe=!1;xe&&delete Et.__transition}},l=g(77),u=g(44);function v(Et,Rt){var zt,Ft;return function(){var ce=_(this,Et),Se=ce.tween;if(Se!==zt){for(var xe=0,Ze=(Ft=zt=Se).length;xe=0&&(Ze=Ze.slice(0,pn)),!Ze||Ze==="start"})}(Rt)?k:_;return function(){var xe=Se(this,Et),Ze=xe.on;Ze!==Ft&&(ce=(Ft=Ze).copy()).on(Rt,zt),xe.on=ce}}var Xt=g(43),Ct=g(65),wt=st.b.prototype.constructor,Dt=g(67);function jt(Et){return function(){this.style.removeProperty(Et)}}function re(Et,Rt,zt){return function(Ft){this.style.setProperty(Et,Rt.call(this,Ft),zt)}}function le(Et,Rt,zt){var Ft,ce;function Se(){var xe=Rt.apply(this,arguments);return xe!==ce&&(Ft=(ce=xe)&&re(Et,xe,zt)),Ft}return Se._value=Rt,Se}function Gt(Et){return function(Rt){this.textContent=Et.call(this,Rt)}}function he(Et){var Rt,zt;function Ft(){var ce=Et.apply(this,arguments);return ce!==zt&&(Rt=(zt=ce)&&Gt(ce)),Rt}return Ft._value=Et,Ft}var ve=0;function Ce(Et,Rt,zt,Ft){this._groups=Et,this._parents=Rt,this._name=zt,this._id=Ft}function Te(Et){return Object(st.b)().transition(Et)}function Ke(){return++ve}var rn=st.b.prototype;Ce.prototype=Te.prototype={constructor:Ce,select:function(Et){var Rt=this._name,zt=this._id;typeof Et!="function"&&(Et=Object(Xt.a)(Et));for(var Ft=this._groups,ce=Ft.length,Se=new Array(ce),xe=0;xe1&&zt.name===Rt)return new Ce([[Et]],Kt,Rt,+Ft)}return null};g.d(d,"transition",function(){return Te}),g.d(d,"active",function(){return Jt}),g.d(d,"interrupt",function(){return h})},function(Pt,d,g){"use strict";g.r(d);var L=g(56);g.d(d,"formatDefaultLocale",function(){return L.a}),g.d(d,"format",function(){return L.b}),g.d(d,"formatPrefix",function(){return L.c});var R=g(68);g.d(d,"formatLocale",function(){return R.a});var st=g(40);g.d(d,"formatSpecifier",function(){return st.b}),g.d(d,"FormatSpecifier",function(){return st.a});var $=g(80);g.d(d,"precisionFixed",function(){return $.a});var J=g(81);g.d(d,"precisionPrefix",function(){return J.a});var X=g(82);g.d(d,"precisionRound",function(){return X.a})},function(Pt,d,g){"use strict";var L;(L=function(){return{colorSchemas:{britecharts:["#6aedc7","#39c2c9","#ffce00","#ffa71a","#f866b9","#998ce3"],grey:["#F8F8FA","#EFF2F5","#D2D6DF","#C3C6CF","#ADB0B6","#666A73","#45494E","#363A43","#282C35"],orange:["#fcc870","#ffa71a","#fb8825","#f6682f","#db5a2c","#bf4c28","#a43b1c","#892a10","#f9e9c5"],blueGreen:["#ccf7f6","#70e4e0","#00d8d2","#00acaf","#007f8c","#005e66","#003c3f","#002d2f","#0d2223"],teal:["#ccfffe","#94f7f4","#00fff8","#1de1e1","#39c2c9","#2e9a9d","#227270","#1a5957","#133f3e"],green:["#edfff7","#d7ffef","#c0ffe7","#95f5d7","#6aedc7","#59c3a3","#479980","#34816a","#206953"],yellow:["#f9f2b3","#fbe986","#fce05a","#fed72d","#ffce00","#fcc11c","#f9b438","#eda629","#e09819"],pink:["#fdd1ea","#fb9cd2","#f866b9","#fc40b6","#ff1ab3","#e3239d","#c62c86","#a62073","#85135f"],purple:["#ddd6fc","#bbb1f0","#998ce3","#8e6bc1","#824a9e","#77337f","#6b1c60","#591650","#470f3f"],red:["#ffd8d4","#ffb5b0","#ff938c","#ff766c","#ff584c","#f04b42","#e03d38","#be2e29","#9c1e19"]},colorSchemasHuman:{britecharts:"Britecharts Default",grey:"Britecharts Grey",orange:"Orange",blueGreen:"Blue",teal:"Light Blue",green:"Green",yellow:"Yellow",pink:"Pink",purple:"Purple",red:"Red"},colorGradients:{greenBlue:["#39C7EA","#4CDCBA"],orangePink:["#FBC670","#F766B8"],bluePurple:["#3DC3C9","#824a9e"]},colorGradientsHuman:{greenBlue:"Green to Blue",orangePink:"Orange to Pink",bluePurple:"Blue to Purple"},singleColors:{aloeGreen:["#7bdcc0"],greenColor:["#6aedc7"],blueColor:["#39c2c9"],yellowColor:["#ffce00"],orangeColor:["#ffa71a"],pinkColor:["#f866b9"],purpleColor:["#998ce3"]},singleColorsHuman:{aloeGreen:"Aloe Green",greenColor:"Green",blueColor:"Blue",yellowColor:"Yellow",orangeColor:"Orange",pinkColor:"Pink",purpleColor:"Purple"}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";function L(I){return+I}function R(I){return I*I}function st(I){return I*(2-I)}function $(I){return((I*=2)<=1?I*I:--I*(2-I)+1)/2}g.r(d);var J=g(49),X=function I(S){function b(K){return Math.pow(K,S)}return S=+S,b.exponent=I,b}(3),q=function I(S){function b(K){return 1-Math.pow(1-K,S)}return S=+S,b.exponent=I,b}(3),Z=function I(S){function b(K){return((K*=2)<=1?Math.pow(K,S):2-Math.pow(2-K,S))/2}return S=+S,b.exponent=I,b}(3),Y=Math.PI,V=Y/2;function N(I){return 1-Math.cos(I*V)}function U(I){return Math.sin(I*V)}function T(I){return(1-Math.cos(Y*I))/2}function A(I){return Math.pow(2,10*I-10)}function M(I){return 1-Math.pow(2,-10*I)}function O(I){return((I*=2)<=1?Math.pow(2,10*I-10):2-Math.pow(2,10-10*I))/2}function H(I){return 1-Math.sqrt(1-I*I)}function z(I){return Math.sqrt(1- --I*I)}function c(I){return((I*=2)<=1?1-Math.sqrt(1-I*I):Math.sqrt(1-(I-=2)*I)+1)/2}var D=7.5625;function it(I){return 1-Q(1-I)}function Q(I){return(I=+I)<.36363636363636365?D*I*I:I<.7272727272727273?D*(I-=.5454545454545454)*I+.75:I<.9090909090909091?D*(I-=.8181818181818182)*I+.9375:D*(I-=.9545454545454546)*I+.984375}function W(I){return((I*=2)<=1?1-Q(1-I):Q(I-1)+1)/2}var k=function I(S){function b(K){return K*K*((S+1)*K-S)}return S=+S,b.overshoot=I,b}(1.70158),_=function I(S){function b(K){return--K*K*((S+1)*K+S)+1}return S=+S,b.overshoot=I,b}(1.70158),C=function I(S){function b(K){return((K*=2)<1?K*K*((S+1)*K-S):(K-=2)*K*((S+1)*K+S)+2)/2}return S=+S,b.overshoot=I,b}(1.70158),h=2*Math.PI,l=function I(S,b){var K=Math.asin(1/(S=Math.max(1,S)))*(b/=h);function ct(et){return S*Math.pow(2,10*--et)*Math.sin((K-et)/b)}return ct.amplitude=function(et){return I(et,b*h)},ct.period=function(et){return I(S,et)},ct}(1,.3),u=function I(S,b){var K=Math.asin(1/(S=Math.max(1,S)))*(b/=h);function ct(et){return 1-S*Math.pow(2,-10*(et=+et))*Math.sin((et+K)/b)}return ct.amplitude=function(et){return I(et,b*h)},ct.period=function(et){return I(S,et)},ct}(1,.3),v=function I(S,b){var K=Math.asin(1/(S=Math.max(1,S)))*(b/=h);function ct(et){return((et=2*et-1)<0?S*Math.pow(2,10*et)*Math.sin((K-et)/b):2-S*Math.pow(2,-10*et)*Math.sin((K+et)/b))/2}return ct.amplitude=function(et){return I(et,b*h)},ct.period=function(et){return I(S,et)},ct}(1,.3);g.d(d,"easeLinear",function(){return L}),g.d(d,"easeQuad",function(){return $}),g.d(d,"easeQuadIn",function(){return R}),g.d(d,"easeQuadOut",function(){return st}),g.d(d,"easeQuadInOut",function(){return $}),g.d(d,"easeCubic",function(){return J.b}),g.d(d,"easeCubicIn",function(){return J.a}),g.d(d,"easeCubicOut",function(){return J.c}),g.d(d,"easeCubicInOut",function(){return J.b}),g.d(d,"easePoly",function(){return Z}),g.d(d,"easePolyIn",function(){return X}),g.d(d,"easePolyOut",function(){return q}),g.d(d,"easePolyInOut",function(){return Z}),g.d(d,"easeSin",function(){return T}),g.d(d,"easeSinIn",function(){return N}),g.d(d,"easeSinOut",function(){return U}),g.d(d,"easeSinInOut",function(){return T}),g.d(d,"easeExp",function(){return O}),g.d(d,"easeExpIn",function(){return A}),g.d(d,"easeExpOut",function(){return M}),g.d(d,"easeExpInOut",function(){return O}),g.d(d,"easeCircle",function(){return c}),g.d(d,"easeCircleIn",function(){return H}),g.d(d,"easeCircleOut",function(){return z}),g.d(d,"easeCircleInOut",function(){return c}),g.d(d,"easeBounce",function(){return Q}),g.d(d,"easeBounceIn",function(){return it}),g.d(d,"easeBounceOut",function(){return Q}),g.d(d,"easeBounceInOut",function(){return W}),g.d(d,"easeBack",function(){return C}),g.d(d,"easeBackIn",function(){return k}),g.d(d,"easeBackOut",function(){return _}),g.d(d,"easeBackInOut",function(){return C}),g.d(d,"easeElastic",function(){return u}),g.d(d,"easeElasticIn",function(){return l}),g.d(d,"easeElasticOut",function(){return u}),g.d(d,"easeElasticInOut",function(){return v})},function(Pt,d,g){"use strict";g.r(d);var L=g(0);function R(be,je){switch(arguments.length){case 0:break;case 1:this.range(be);break;default:this.range(je).domain(be)}return this}function st(be,je){switch(arguments.length){case 0:break;case 1:this.interpolator(be);break;default:this.interpolator(je).domain(be)}return this}var $=g(25),J=Array.prototype,X=J.map,q=J.slice,Z={name:"implicit"};function Y(){var be=Object($.map)(),je=[],Ue=[],Re=Z;function Ie(tn){var Mn=tn+"",ke=be.get(Mn);if(!ke){if(Re!==Z)return Re;be.set(Mn,ke=je.push(tn))}return Ue[(ke-1)%Ue.length]}return Ie.domain=function(tn){if(!arguments.length)return je.slice();je=[],be=Object($.map)();for(var Mn,ke,on=-1,_n=tn.length;++on<_n;)be.has(ke=(Mn=tn[on])+"")||be.set(ke,je.push(Mn));return Ie},Ie.range=function(tn){return arguments.length?(Ue=q.call(tn),Ie):Ue.slice()},Ie.unknown=function(tn){return arguments.length?(Re=tn,Ie):Re},Ie.copy=function(){return Y(je,Ue).unknown(Re)},R.apply(Ie,arguments),Ie}function V(){var be,je,Ue=Y().unknown(void 0),Re=Ue.domain,Ie=Ue.range,tn=[0,1],Mn=!1,ke=0,on=0,_n=.5;function Pe(){var wn=Re().length,an=tn[1]Re&&(je=Ue,Ue=Re,Re=je),function(Ie){return Math.max(Ue,Math.min(Re,Ie))}}function it(be,je,Ue){var Re=be[0],Ie=be[1],tn=je[0],Mn=je[1];return Ie2?Q:it,Ie=tn=null,wn}function wn(an){return isNaN(an=+an)?Ue:(Ie||(Ie=Re(Mn.map(be),ke,on)))(be(_n(an)))}return wn.invert=function(an){return _n(je((tn||(tn=Re(ke,Mn.map(be),A.a)))(an)))},wn.domain=function(an){return arguments.length?(Mn=X.call(an,O),_n===z||(_n=D(Mn)),Pe()):Mn.slice()},wn.range=function(an){return arguments.length?(ke=q.call(an),Pe()):ke.slice()},wn.rangeRound=function(an){return ke=q.call(an),on=M.a,Pe()},wn.clamp=function(an){return arguments.length?(_n=an?D(Mn):z,wn):_n!==z},wn.interpolate=function(an){return arguments.length?(on=an,Pe()):on},wn.unknown=function(an){return arguments.length?(Ue=an,wn):Ue},function(an,gn){return be=an,je=gn,Pe()}}function _(be,je){return k()(be,je)}var C=g(40),h=g(81),l=g(56),u=g(82),v=g(80),I=function(be,je,Ue,Re){var Ie,tn=Object(L.tickStep)(be,je,Ue);switch((Re=Object(C.b)(Re==null?",f":Re)).type){case"s":var Mn=Math.max(Math.abs(be),Math.abs(je));return Re.precision!=null||isNaN(Ie=Object(h.a)(tn,Mn))||(Re.precision=Ie),Object(l.c)(Re,Mn);case"":case"e":case"g":case"p":case"r":Re.precision!=null||isNaN(Ie=Object(u.a)(tn,Math.max(Math.abs(be),Math.abs(je))))||(Re.precision=Ie-(Re.type==="e"));break;case"f":case"%":Re.precision!=null||isNaN(Ie=Object(v.a)(tn))||(Re.precision=Ie-2*(Re.type==="%"))}return Object(l.b)(Re)};function S(be){var je=be.domain;return be.ticks=function(Ue){var Re=je();return Object(L.ticks)(Re[0],Re[Re.length-1],Ue==null?10:Ue)},be.tickFormat=function(Ue,Re){var Ie=je();return I(Ie[0],Ie[Ie.length-1],Ue==null?10:Ue,Re)},be.nice=function(Ue){Ue==null&&(Ue=10);var Re,Ie=je(),tn=0,Mn=Ie.length-1,ke=Ie[tn],on=Ie[Mn];return on0?(ke=Math.floor(ke/Re)*Re,on=Math.ceil(on/Re)*Re,Re=Object(L.tickIncrement)(ke,on,Ue)):Re<0&&(ke=Math.ceil(ke*Re)/Re,on=Math.floor(on*Re)/Re,Re=Object(L.tickIncrement)(ke,on,Ue)),Re>0?(Ie[tn]=Math.floor(ke/Re)*Re,Ie[Mn]=Math.ceil(on/Re)*Re,je(Ie)):Re<0&&(Ie[tn]=Math.ceil(ke*Re)/Re,Ie[Mn]=Math.floor(on*Re)/Re,je(Ie)),be},be}function b(){var be=_(z,z);return be.copy=function(){return W(be,b())},R.apply(be,arguments),S(be)}function K(be){var je;function Ue(Re){return isNaN(Re=+Re)?je:Re}return Ue.invert=Ue,Ue.domain=Ue.range=function(Re){return arguments.length?(be=X.call(Re,O),Ue):be.slice()},Ue.unknown=function(Re){return arguments.length?(je=Re,Ue):je},Ue.copy=function(){return K(be).unknown(je)},be=arguments.length?X.call(be,O):[0,1],S(Ue)}var ct=function(be,je){var Ue,Re=0,Ie=(be=be.slice()).length-1,tn=be[Re],Mn=be[Ie];return Mn0){for(;xnwn)break;pr.push(Sn)}}else for(;xn=1;--gn)if(!((Sn=an*gn)wn)break;pr.push(Sn)}}else pr=Object(L.ticks)(xn,hr,Math.min(hr-xn,nr)).map(Ue);return on?pr.reverse():pr},Re.tickFormat=function(ke,on){if(on==null&&(on=tn===10?".0e":","),typeof on!="function"&&(on=Object(l.b)(on)),ke===1/0)return on;ke==null&&(ke=10);var _n=Math.max(1,tn*ke/Re.ticks().length);return function(Pe){var wn=Pe/Ue(Math.round(je(Pe)));return wn*tn0?Re[ke-1]:je[0],ke=Re?[Ie[Re-1],Ue]:[Ie[_n-1],Ie[_n]]},Mn.unknown=function(on){return arguments.length&&(be=on),Mn},Mn.thresholds=function(){return Ie.slice()},Mn.copy=function(){return Xt().domain([je,Ue]).range(tn).unknown(be)},R.apply(S(Mn),arguments)}function Ct(){var be,je=[.5],Ue=[0,1],Re=1;function Ie(tn){return tn<=tn?Ue[Object(L.bisect)(je,tn,0,Re)]:be}return Ie.domain=function(tn){return arguments.length?(je=q.call(tn),Re=Math.min(je.length,Ue.length-1),Ie):je.slice()},Ie.range=function(tn){return arguments.length?(Ue=q.call(tn),Re=Math.min(je.length,Ue.length-1),Ie):Ue.slice()},Ie.invertExtent=function(tn){var Mn=Ue.indexOf(tn);return[je[Mn-1],je[Mn]]},Ie.unknown=function(tn){return arguments.length?(be=tn,Ie):be},Ie.copy=function(){return Ct().domain(je).range(Ue).unknown(be)},R.apply(Ie,arguments)}var wt=g(33),Dt=g(69),jt=g(5),re=g(53),le=g(70),Gt=g(71),he=g(51),ve=g(52),Ce=g(21);function Te(be){return new Date(be)}function Ke(be){return be instanceof Date?+be:+new Date(+be)}function rn(be,je,Ue,Re,Ie,tn,Mn,ke,on){var _n=_(z,z),Pe=_n.invert,wn=_n.domain,an=on(".%L"),gn=on(":%S"),Sn=on("%I:%M"),xn=on("%I %p"),hr=on("%a %d"),nr=on("%b %d"),pr=on("%B"),vr=on("%Y"),rr=[[Mn,1,1e3],[Mn,5,5e3],[Mn,15,15e3],[Mn,30,3e4],[tn,1,6e4],[tn,5,3e5],[tn,15,9e5],[tn,30,18e5],[Ie,1,36e5],[Ie,3,108e5],[Ie,6,216e5],[Ie,12,432e5],[Re,1,864e5],[Re,2,1728e5],[Ue,1,6048e5],[je,1,2592e6],[je,3,7776e6],[be,1,31536e6]];function Rr(lr){return(Mn(lr)svg{background:"+this.chartBackground+";padding: 20px;}"}};function q(U,T){if(U){U.attr("version",1.1).attr("xmlns","http://www.w3.org/2000/svg");var A=$.initializeSerializer()(U.node());return A=function(M){return navigator.userAgent.search("FireFox")>-1?M.replace(/url.*"\)/,'url("linearGradient[id*="-gradient-"]");'):M}(A),A=function(M){return M.replace(">",">"+X.styleBackgroundString)}(A=N.call(this,A,T,parseInt(U.attr("width"),10)))}}function Z(U){var T=new Image;return T.src=""+X.imageSourceBase+J(encodeURIComponent(U).replace(/%([0-9A-F]{2})/g,function(A,M){return String.fromCharCode("0x"+M)})),T}function Y(U,T){return T.getContext("2d").drawImage(U,0,0),T}function V(U,T,A){A.preventDefault(),function(M){var O=arguments.length>1&&arguments[1]!==void 0?arguments[1]:X.defaultFilename,H=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"image/png",z=M.toDataURL(H),c=document.createElement("a");c.href=z,c.download=O,document.body.appendChild(c),c.click(),document.body.removeChild(c)}(Y(this,U),T)}function N(U,T,A){if(!T||!A)return U;var M=st.grey;return U=U.replace(/ '+T+" ba in Jo?uq(Jo,ba,{enumerable:!0,configurable:!0,writable:!0,value:jn}):Jo[ba]=jn,xr=(Jo,ba)=>{for(var jn in ba||(ba={}))WR.call(ba,jn)&&X5(Jo,jn,ba[jn]);if(Vk)for(var jn of Vk(ba))YR.call(ba,jn)&&X5(Jo,jn,ba[jn]);return Jo},Mi=(Jo,ba)=>cq(Jo,hq(ba));var GR=Jo=>typeof Jo=="symbol"?Jo:Jo+"",no=(Jo,ba)=>{var jn={};for(var Qu in Jo)WR.call(Jo,Qu)&&ba.indexOf(Qu)<0&&(jn[Qu]=Jo[Qu]);if(Jo!=null&&Vk)for(var Qu of Vk(Jo))ba.indexOf(Qu)<0&&YR.call(Jo,Qu)&&(jn[Qu]=Jo[Qu]);return jn};var ao=(Jo,ba,jn)=>X5(Jo,typeof ba!="symbol"?ba+"":ba,jn);var Xi=(Jo,ba,jn)=>new Promise((Qu,yr)=>{var Oe=Pt=>{try{F(jn.next(Pt))}catch(d){yr(d)}},xt=Pt=>{try{F(jn.throw(Pt))}catch(d){yr(d)}},F=Pt=>Pt.done?Qu(Pt.value):Promise.resolve(Pt.value).then(Oe,xt);F((jn=jn.apply(Jo,ba)).next())});(()=>{var Jo={3861:(yr,Oe,xt)=>{(function(F,Pt){yr.exports=Pt(xt(3224))})(window,function(F){return function(Pt){var d={};function g(L){if(d[L])return d[L].exports;var R=d[L]={i:L,l:!1,exports:{}};return Pt[L].call(R.exports,R,R.exports,g),R.l=!0,R.exports}return g.m=Pt,g.c=d,g.d=function(L,R,st){g.o(L,R)||Object.defineProperty(L,R,{enumerable:!0,get:st})},g.r=function(L){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(L,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(L,"__esModule",{value:!0})},g.t=function(L,R){if(1&R&&(L=g(L)),8&R||4&R&&typeof L=="object"&&L&&L.__esModule)return L;var st=Object.create(null);if(g.r(st),Object.defineProperty(st,"default",{enumerable:!0,value:L}),2&R&&typeof L!="string")for(var $ in L)g.d(st,$,function(J){return L[J]}.bind(null,$));return st},g.n=function(L){var R=L&&L.__esModule?function(){return L.default}:function(){return L};return g.d(R,"a",R),R},g.o=function(L,R){return Object.prototype.hasOwnProperty.call(L,R)},g.p="",g(g.s=87)}([function(Pt,d,g){"use strict";g.r(d);var L=function(nt,x){return ntx?1:nt>=x?0:NaN},R=function(nt){var x;return nt.length===1&&(x=nt,nt=function(y,j){return L(x(y),j)}),{left:function(y,j,lt,rt){for(lt==null&&(lt=0),rt==null&&(rt=y.length);lt>>1;nt(y[gt],j)<0?lt=gt+1:rt=gt}return lt},right:function(y,j,lt,rt){for(lt==null&&(lt=0),rt==null&&(rt=y.length);lt>>1;nt(y[gt],j)>0?rt=gt:lt=gt+1}return lt}}},st=R(L),$=st.right,J=st.left,X=$,q=function(nt,x){x==null&&(x=Z);for(var y=0,j=nt.length-1,lt=nt[0],rt=new Array(j<0?0:j);ynt?1:x>=nt?0:NaN},N=function(nt){return nt===null?NaN:+nt},U=function(nt,x){var y,j,lt=nt.length,rt=0,gt=-1,vt=0,Ot=0;if(x==null)for(;++gt1)return Ot/(rt-1)},T=function(nt,x){var y=U(nt,x);return y&&Math.sqrt(y)},A=function(nt,x){var y,j,lt,rt=nt.length,gt=-1;if(x==null){for(;++gt=y)for(j=lt=y;++gty&&(j=y),lt=y)for(j=lt=y;++gty&&(j=y),lt0)return[nt];if((j=x0)for(nt=Math.ceil(nt/gt),x=Math.floor(x/gt),rt=new Array(lt=Math.ceil(x-nt+1));++vt=0?(rt>=it?10:rt>=Q?5:rt>=W?2:1)*Math.pow(10,lt):-Math.pow(10,-lt)/(rt>=it?10:rt>=Q?5:rt>=W?2:1)}function C(nt,x,y){var j=Math.abs(x-nt)/Math.max(0,y),lt=Math.pow(10,Math.floor(Math.log(j)/Math.LN10)),rt=j/lt;return rt>=it?lt*=10:rt>=Q?lt*=5:rt>=W&&(lt*=2),xXt;)Ct.pop(),--wt;var Dt,jt=new Array(wt+1);for(rt=0;rt<=wt;++rt)(Dt=jt[rt]=[]).x0=rt>0?Ct[rt-1]:$t,Dt.x1=rt=1)return+y(nt[j-1],j-1,nt);var j,lt=(j-1)*x,rt=Math.floor(lt),gt=+y(nt[rt],rt,nt);return gt+(+y(nt[rt+1],rt+1,nt)-gt)*(lt-rt)}},v=function(nt,x,y){return nt=H.call(nt,N).sort(L),Math.ceil((y-x)/(2*(u(nt,.75)-u(nt,.25))*Math.pow(nt.length,-1/3)))},I=function(nt,x,y){return Math.ceil((y-x)/(3.5*T(nt)*Math.pow(nt.length,-1/3)))},S=function(nt,x){var y,j,lt=nt.length,rt=-1;if(x==null){for(;++rt=y)for(j=y;++rtj&&(j=y)}else for(;++rt=y)for(j=y;++rtj&&(j=y);return j},b=function(nt,x){var y,j=nt.length,lt=j,rt=-1,gt=0;if(x==null)for(;++rt=0;)for(x=(j=nt[lt]).length;--x>=0;)y[--gt]=j[x];return y},et=function(nt,x){var y,j,lt=nt.length,rt=-1;if(x==null){for(;++rt=y)for(j=y;++rty&&(j=y)}else for(;++rt=y)for(j=y;++rty&&(j=y);return j},dt=function(nt,x){for(var y=x.length,j=new Array(y);y--;)j[y]=nt[x[y]];return j},pt=function(nt,x){if(y=nt.length){var y,j,lt=0,rt=0,gt=nt[rt];for(x==null&&(x=L);++lt0))return T;do T.push(U=new Date(+Y)),J(Y,N),$(Y);while(U=V)for(;$(V),!Y(V);)V.setTime(V-1)},function(V,N){if(V>=V)if(N<0)for(;++N<=0;)for(;J(V,-1),!Y(V););else for(;--N>=0;)for(;J(V,1),!Y(V););})},X&&(Z.count=function(Y,V){return L.setTime(+Y),R.setTime(+V),$(L),$(R),Math.floor(X(L,R))},Z.every=function(Y){return Y=Math.floor(Y),isFinite(Y)&&Y>0?Y>1?Z.filter(q?function(V){return q(V)%Y==0}:function(V){return Z.count(0,V)%Y==0}):Z:null}),Z}},function(Pt,d,g){"use strict";g.r(d);var L=g(29),R=g(64),st=function(Q){return Object(R.a)(Object(L.a)(Q).call(document.documentElement))},$=0;function J(){return new X}function X(){this._="@"+(++$).toString(36)}X.prototype=J.prototype={constructor:X,get:function(Q){for(var W=this._;!(W in Q);)if(!(Q=Q.parentNode))return;return Q[W]},set:function(Q,W){return Q[this._]=W},remove:function(Q){return this._ in Q&&delete Q[this._]},toString:function(){return this._}};var q=g(66),Z=g(84),Y=g(44),V=g(32),N=g(30),U=g(23),T=function(Q){return typeof Q=="string"?new U.a([document.querySelectorAll(Q)],[document.documentElement]):new U.a([Q==null?[]:Q],U.c)},A=g(43),M=g(65),O=g(67),H=g(85),z=g(46),c=function(Q,W){W==null&&(W=Object(z.a)().touches);for(var k=0,_=W?W.length:0,C=new Array(_);k<_;++k)C[k]=Object(N.a)(Q,W[k]);return C},D=g(45),it=g(37);g.d(d,"create",function(){return st}),g.d(d,"creator",function(){return L.a}),g.d(d,"local",function(){return J}),g.d(d,"matcher",function(){return q.a}),g.d(d,"mouse",function(){return Z.a}),g.d(d,"namespace",function(){return Y.a}),g.d(d,"namespaces",function(){return V.a}),g.d(d,"clientPoint",function(){return N.a}),g.d(d,"select",function(){return R.a}),g.d(d,"selectAll",function(){return T}),g.d(d,"selection",function(){return U.b}),g.d(d,"selector",function(){return A.a}),g.d(d,"selectorAll",function(){return M.a}),g.d(d,"style",function(){return O.b}),g.d(d,"touch",function(){return H.a}),g.d(d,"touches",function(){return c}),g.d(d,"window",function(){return D.a}),g.d(d,"event",function(){return it.c}),g.d(d,"customEvent",function(){return it.a})},function(Pt,d,g){"use strict";g.d(d,"d",function(){return L}),g.d(d,"c",function(){return R}),g.d(d,"b",function(){return st}),g.d(d,"a",function(){return $}),g.d(d,"e",function(){return J});var L=1e3,R=6e4,st=36e5,$=864e5,J=6048e5},function(Pt,d,g){"use strict";g.d(d,"c",function(){return st}),g.d(d,"b",function(){return $}),g.d(d,"a",function(){return J});var L=g(48);function R(X,q){return function(Z){return X+Z*q}}function st(X,q){var Z=q-X;return Z?R(X,Z>180||Z<-180?Z-360*Math.round(Z/360):Z):Object(L.a)(isNaN(X)?q:X)}function $(X){return(X=+X)==1?J:function(q,Z){return Z-q?function(Y,V,N){return Y=Math.pow(Y,N),V=Math.pow(V,N)-Y,N=1/N,function(U){return Math.pow(Y+U*V,N)}}(q,Z,X):Object(L.a)(isNaN(q)?Z:q)}}function J(X,q){var Z=q-X;return Z?R(X,Z):Object(L.a)(isNaN(X)?q:X)}},function(Pt,d,g){"use strict";g.d(d,"g",function(){return $}),g.d(d,"c",function(){return J}),g.d(d,"k",function(){return X}),g.d(d,"m",function(){return q}),g.d(d,"i",function(){return Z}),g.d(d,"a",function(){return Y}),g.d(d,"e",function(){return V}),g.d(d,"h",function(){return N}),g.d(d,"d",function(){return U}),g.d(d,"l",function(){return T}),g.d(d,"n",function(){return A}),g.d(d,"j",function(){return M}),g.d(d,"b",function(){return O}),g.d(d,"f",function(){return H});var L=g(1),R=g(3);function st(z){return Object(L.a)(function(c){c.setDate(c.getDate()-(c.getDay()+7-z)%7),c.setHours(0,0,0,0)},function(c,D){c.setDate(c.getDate()+7*D)},function(c,D){return(D-c-(D.getTimezoneOffset()-c.getTimezoneOffset())*R.c)/R.e})}var $=st(0),J=st(1),X=st(2),q=st(3),Z=st(4),Y=st(5),V=st(6),N=$.range,U=J.range,T=X.range,A=q.range,M=Z.range,O=Y.range,H=V.range},function(Pt,d,g){"use strict";g.d(d,"g",function(){return $}),g.d(d,"c",function(){return J}),g.d(d,"k",function(){return X}),g.d(d,"m",function(){return q}),g.d(d,"i",function(){return Z}),g.d(d,"a",function(){return Y}),g.d(d,"e",function(){return V}),g.d(d,"h",function(){return N}),g.d(d,"d",function(){return U}),g.d(d,"l",function(){return T}),g.d(d,"n",function(){return A}),g.d(d,"j",function(){return M}),g.d(d,"b",function(){return O}),g.d(d,"f",function(){return H});var L=g(1),R=g(3);function st(z){return Object(L.a)(function(c){c.setUTCDate(c.getUTCDate()-(c.getUTCDay()+7-z)%7),c.setUTCHours(0,0,0,0)},function(c,D){c.setUTCDate(c.getUTCDate()+7*D)},function(c,D){return(D-c)/R.e})}var $=st(0),J=st(1),X=st(2),q=st(3),Z=st(4),Y=st(5),V=st(6),N=$.range,U=J.range,T=X.range,A=q.range,M=Z.range,O=Y.range,H=V.range},function(Pt,d,g){"use strict";g.d(d,"a",function(){return R}),g.d(d,"d",function(){return st}),g.d(d,"c",function(){return $}),g.d(d,"e",function(){return z}),g.d(d,"h",function(){return it}),g.d(d,"g",function(){return Q}),g.d(d,"b",function(){return W}),g.d(d,"f",function(){return u});var L=g(15);function R(){}var st=.7,$=1/st,J="\\s*([+-]?\\d+)\\s*",X="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",q="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Z=/^#([0-9a-f]{3,8})$/,Y=new RegExp("^rgb\\("+[J,J,J]+"\\)$"),V=new RegExp("^rgb\\("+[q,q,q]+"\\)$"),N=new RegExp("^rgba\\("+[J,J,J,X]+"\\)$"),U=new RegExp("^rgba\\("+[q,q,q,X]+"\\)$"),T=new RegExp("^hsl\\("+[X,q,q]+"\\)$"),A=new RegExp("^hsla\\("+[X,q,q,X]+"\\)$"),M={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function O(){return this.rgb().formatHex()}function H(){return this.rgb().formatRgb()}function z(S){var b,K;return S=(S+"").trim().toLowerCase(),(b=Z.exec(S))?(K=b[1].length,b=parseInt(b[1],16),K===6?c(b):K===3?new W(b>>8&15|b>>4&240,b>>4&15|240&b,(15&b)<<4|15&b,1):K===8?new W(b>>24&255,b>>16&255,b>>8&255,(255&b)/255):K===4?new W(b>>12&15|b>>8&240,b>>8&15|b>>4&240,b>>4&15|240&b,((15&b)<<4|15&b)/255):null):(b=Y.exec(S))?new W(b[1],b[2],b[3],1):(b=V.exec(S))?new W(255*b[1]/100,255*b[2]/100,255*b[3]/100,1):(b=N.exec(S))?D(b[1],b[2],b[3],b[4]):(b=U.exec(S))?D(255*b[1]/100,255*b[2]/100,255*b[3]/100,b[4]):(b=T.exec(S))?h(b[1],b[2]/100,b[3]/100,1):(b=A.exec(S))?h(b[1],b[2]/100,b[3]/100,b[4]):M.hasOwnProperty(S)?c(M[S]):S==="transparent"?new W(NaN,NaN,NaN,0):null}function c(S){return new W(S>>16&255,S>>8&255,255&S,1)}function D(S,b,K,ct){return ct<=0&&(S=b=K=NaN),new W(S,b,K,ct)}function it(S){return S instanceof R||(S=z(S)),S?new W((S=S.rgb()).r,S.g,S.b,S.opacity):new W}function Q(S,b,K,ct){return arguments.length===1?it(S):new W(S,b,K,ct==null?1:ct)}function W(S,b,K,ct){this.r=+S,this.g=+b,this.b=+K,this.opacity=+ct}function k(){return"#"+C(this.r)+C(this.g)+C(this.b)}function _(){var S=this.opacity;return((S=isNaN(S)?1:Math.max(0,Math.min(1,S)))===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(S===1?")":", "+S+")")}function C(S){return((S=Math.max(0,Math.min(255,Math.round(S)||0)))<16?"0":"")+S.toString(16)}function h(S,b,K,ct){return ct<=0?S=b=K=NaN:K<=0||K>=1?S=b=NaN:b<=0&&(S=NaN),new v(S,b,K,ct)}function l(S){if(S instanceof v)return new v(S.h,S.s,S.l,S.opacity);if(S instanceof R||(S=z(S)),!S)return new v;if(S instanceof v)return S;var b=(S=S.rgb()).r/255,K=S.g/255,ct=S.b/255,et=Math.min(b,K,ct),dt=Math.max(b,K,ct),pt=NaN,bt=dt-et,Mt=(dt+et)/2;return bt?(pt=b===dt?(K-ct)/bt+6*(K0&&Mt<1?0:pt,new v(pt,bt,Mt,S.opacity)}function u(S,b,K,ct){return arguments.length===1?l(S):new v(S,b,K,ct==null?1:ct)}function v(S,b,K,ct){this.h=+S,this.s=+b,this.l=+K,this.opacity=+ct}function I(S,b,K){return 255*(S<60?b+(K-b)*S/60:S<180?K:S<240?b+(K-b)*(240-S)/60:b)}Object(L.a)(R,z,{copy:function(S){return Object.assign(new this.constructor,this,S)},displayable:function(){return this.rgb().displayable()},hex:O,formatHex:O,formatHsl:function(){return l(this).formatHsl()},formatRgb:H,toString:H}),Object(L.a)(W,Q,Object(L.b)(R,{brighter:function(S){return S=S==null?$:Math.pow($,S),new W(this.r*S,this.g*S,this.b*S,this.opacity)},darker:function(S){return S=S==null?st:Math.pow(st,S),new W(this.r*S,this.g*S,this.b*S,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:k,formatHex:k,formatRgb:_,toString:_})),Object(L.a)(v,u,Object(L.b)(R,{brighter:function(S){return S=S==null?$:Math.pow($,S),new v(this.h,this.s,this.l*S,this.opacity)},darker:function(S){return S=S==null?st:Math.pow(st,S),new v(this.h,this.s,this.l*S,this.opacity)},rgb:function(){var S=this.h%360+360*(this.h<0),b=isNaN(S)||isNaN(this.s)?0:this.s,K=this.l,ct=K+(K<.5?K:1-K)*b,et=2*K-ct;return new W(I(S>=240?S-240:S+120,et,ct),I(S,et,ct),I(S<120?S+240:S-120,et,ct),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var S=this.opacity;return((S=isNaN(S)?1:Math.max(0,Math.min(1,S)))===1?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(S===1?")":", "+S+")")}}))},function(Pt,d,g){"use strict";g.r(d);var L,R,st=g(23),$=g(79),J=0,X=0,q=0,Z=0,Y=0,V=0,N=typeof performance=="object"&&performance.now?performance:Date,U=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(Et){setTimeout(Et,17)};function T(){return Y||(U(A),Y=N.now()+V)}function A(){Y=0}function M(){this._call=this._time=this._next=null}function O(Et,Rt,zt){var Ft=new M;return Ft.restart(Et,Rt,zt),Ft}function H(){Y=(Z=N.now())+V,J=X=0;try{(function(){T(),++J;for(var Et,Rt=L;Rt;)(Et=Y-Rt._time)>=0&&Rt._call.call(null,Et),Rt=Rt._next;--J})()}finally{J=0,function(){for(var Et,Rt,zt=L,Ft=1/0;zt;)zt._call?(Ft>zt._time&&(Ft=zt._time),Et=zt,zt=zt._next):(Rt=zt._next,zt._next=null,zt=Et?Et._next=Rt:L=Rt);R=Et,c(Ft)}(),Y=0}}function z(){var Et=N.now(),Rt=Et-Z;Rt>1e3&&(V-=Rt,Z=Et)}function c(Et){J||(X&&(X=clearTimeout(X)),Et-Y>24?(Et<1/0&&(X=setTimeout(H,Et-N.now()-V)),q&&(q=clearInterval(q))):(q||(Z=N.now(),q=setInterval(z,1e3)),J=1,U(H)))}M.prototype=O.prototype={constructor:M,restart:function(Et,Rt,zt){if(typeof Et!="function")throw new TypeError("callback is not a function");zt=(zt==null?T():+zt)+(Rt==null?0:+Rt),this._next||R===this||(R?R._next=this:L=this,R=this),this._call=Et,this._time=zt,c()},stop:function(){this._call&&(this._call=null,this._time=1/0,c())}};var D=function(Et,Rt,zt){var Ft=new M;return Rt=Rt==null?0:+Rt,Ft.restart(function(ce){Ft.stop(),Et(ce+Rt)},Rt,zt),Ft},it=Object($.a)("start","end","cancel","interrupt"),Q=[],W=function(Et,Rt,zt,Ft,ce,Se){var xe=Et.__transition;if(xe){if(zt in xe)return}else Et.__transition={};(function(Ze,pn,bn){var Ln,vn=Ze.__transition;function Tn(ye){var Fe,qe,be,je;if(bn.state!==1)return dr();for(Fe in vn)if((je=vn[Fe]).name===bn.name){if(je.state===3)return D(Tn);je.state===4?(je.state=6,je.timer.stop(),je.on.call("interrupt",Ze,Ze.__data__,je.index,je.group),delete vn[Fe]):+Fe0)throw new Error("too late; already scheduled");return zt}function _(Et,Rt){var zt=C(Et,Rt);if(zt.state>3)throw new Error("too late; already running");return zt}function C(Et,Rt){var zt=Et.__transition;if(!zt||!(zt=zt[Rt]))throw new Error("transition not found");return zt}var h=function(Et,Rt){var zt,Ft,ce,Se=Et.__transition,xe=!0;if(Se){for(ce in Rt=Rt==null?null:Rt+"",Se)(zt=Se[ce]).name===Rt?(Ft=zt.state>2&&zt.state<5,zt.state=6,zt.timer.stop(),zt.on.call(Ft?"interrupt":"cancel",Et,Et.__data__,zt.index,zt.group),delete Se[ce]):xe=!1;xe&&delete Et.__transition}},l=g(77),u=g(44);function v(Et,Rt){var zt,Ft;return function(){var ce=_(this,Et),Se=ce.tween;if(Se!==zt){for(var xe=0,Ze=(Ft=zt=Se).length;xe=0&&(Ze=Ze.slice(0,pn)),!Ze||Ze==="start"})}(Rt)?k:_;return function(){var xe=Se(this,Et),Ze=xe.on;Ze!==Ft&&(ce=(Ft=Ze).copy()).on(Rt,zt),xe.on=ce}}var Xt=g(43),Ct=g(65),wt=st.b.prototype.constructor,Dt=g(67);function jt(Et){return function(){this.style.removeProperty(Et)}}function re(Et,Rt,zt){return function(Ft){this.style.setProperty(Et,Rt.call(this,Ft),zt)}}function le(Et,Rt,zt){var Ft,ce;function Se(){var xe=Rt.apply(this,arguments);return xe!==ce&&(Ft=(ce=xe)&&re(Et,xe,zt)),Ft}return Se._value=Rt,Se}function Gt(Et){return function(Rt){this.textContent=Et.call(this,Rt)}}function he(Et){var Rt,zt;function Ft(){var ce=Et.apply(this,arguments);return ce!==zt&&(Rt=(zt=ce)&&Gt(ce)),Rt}return Ft._value=Et,Ft}var ve=0;function Ce(Et,Rt,zt,Ft){this._groups=Et,this._parents=Rt,this._name=zt,this._id=Ft}function Te(Et){return Object(st.b)().transition(Et)}function Ke(){return++ve}var rn=st.b.prototype;Ce.prototype=Te.prototype={constructor:Ce,select:function(Et){var Rt=this._name,zt=this._id;typeof Et!="function"&&(Et=Object(Xt.a)(Et));for(var Ft=this._groups,ce=Ft.length,Se=new Array(ce),xe=0;xe1&&zt.name===Rt)return new Ce([[Et]],Kt,Rt,+Ft)}return null};g.d(d,"transition",function(){return Te}),g.d(d,"active",function(){return Jt}),g.d(d,"interrupt",function(){return h})},function(Pt,d,g){"use strict";g.r(d);var L=g(56);g.d(d,"formatDefaultLocale",function(){return L.a}),g.d(d,"format",function(){return L.b}),g.d(d,"formatPrefix",function(){return L.c});var R=g(68);g.d(d,"formatLocale",function(){return R.a});var st=g(40);g.d(d,"formatSpecifier",function(){return st.b}),g.d(d,"FormatSpecifier",function(){return st.a});var $=g(80);g.d(d,"precisionFixed",function(){return $.a});var J=g(81);g.d(d,"precisionPrefix",function(){return J.a});var X=g(82);g.d(d,"precisionRound",function(){return X.a})},function(Pt,d,g){"use strict";var L;(L=function(){return{colorSchemas:{britecharts:["#6aedc7","#39c2c9","#ffce00","#ffa71a","#f866b9","#998ce3"],grey:["#F8F8FA","#EFF2F5","#D2D6DF","#C3C6CF","#ADB0B6","#666A73","#45494E","#363A43","#282C35"],orange:["#fcc870","#ffa71a","#fb8825","#f6682f","#db5a2c","#bf4c28","#a43b1c","#892a10","#f9e9c5"],blueGreen:["#ccf7f6","#70e4e0","#00d8d2","#00acaf","#007f8c","#005e66","#003c3f","#002d2f","#0d2223"],teal:["#ccfffe","#94f7f4","#00fff8","#1de1e1","#39c2c9","#2e9a9d","#227270","#1a5957","#133f3e"],green:["#edfff7","#d7ffef","#c0ffe7","#95f5d7","#6aedc7","#59c3a3","#479980","#34816a","#206953"],yellow:["#f9f2b3","#fbe986","#fce05a","#fed72d","#ffce00","#fcc11c","#f9b438","#eda629","#e09819"],pink:["#fdd1ea","#fb9cd2","#f866b9","#fc40b6","#ff1ab3","#e3239d","#c62c86","#a62073","#85135f"],purple:["#ddd6fc","#bbb1f0","#998ce3","#8e6bc1","#824a9e","#77337f","#6b1c60","#591650","#470f3f"],red:["#ffd8d4","#ffb5b0","#ff938c","#ff766c","#ff584c","#f04b42","#e03d38","#be2e29","#9c1e19"]},colorSchemasHuman:{britecharts:"Britecharts Default",grey:"Britecharts Grey",orange:"Orange",blueGreen:"Blue",teal:"Light Blue",green:"Green",yellow:"Yellow",pink:"Pink",purple:"Purple",red:"Red"},colorGradients:{greenBlue:["#39C7EA","#4CDCBA"],orangePink:["#FBC670","#F766B8"],bluePurple:["#3DC3C9","#824a9e"]},colorGradientsHuman:{greenBlue:"Green to Blue",orangePink:"Orange to Pink",bluePurple:"Blue to Purple"},singleColors:{aloeGreen:["#7bdcc0"],greenColor:["#6aedc7"],blueColor:["#39c2c9"],yellowColor:["#ffce00"],orangeColor:["#ffa71a"],pinkColor:["#f866b9"],purpleColor:["#998ce3"]},singleColorsHuman:{aloeGreen:"Aloe Green",greenColor:"Green",blueColor:"Blue",yellowColor:"Yellow",orangeColor:"Orange",pinkColor:"Pink",purpleColor:"Purple"}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";function L(I){return+I}function R(I){return I*I}function st(I){return I*(2-I)}function $(I){return((I*=2)<=1?I*I:--I*(2-I)+1)/2}g.r(d);var J=g(49),X=function I(S){function b(K){return Math.pow(K,S)}return S=+S,b.exponent=I,b}(3),q=function I(S){function b(K){return 1-Math.pow(1-K,S)}return S=+S,b.exponent=I,b}(3),Z=function I(S){function b(K){return((K*=2)<=1?Math.pow(K,S):2-Math.pow(2-K,S))/2}return S=+S,b.exponent=I,b}(3),Y=Math.PI,V=Y/2;function N(I){return 1-Math.cos(I*V)}function U(I){return Math.sin(I*V)}function T(I){return(1-Math.cos(Y*I))/2}function A(I){return Math.pow(2,10*I-10)}function M(I){return 1-Math.pow(2,-10*I)}function O(I){return((I*=2)<=1?Math.pow(2,10*I-10):2-Math.pow(2,10-10*I))/2}function H(I){return 1-Math.sqrt(1-I*I)}function z(I){return Math.sqrt(1- --I*I)}function c(I){return((I*=2)<=1?1-Math.sqrt(1-I*I):Math.sqrt(1-(I-=2)*I)+1)/2}var D=7.5625;function it(I){return 1-Q(1-I)}function Q(I){return(I=+I)<.36363636363636365?D*I*I:I<.7272727272727273?D*(I-=.5454545454545454)*I+.75:I<.9090909090909091?D*(I-=.8181818181818182)*I+.9375:D*(I-=.9545454545454546)*I+.984375}function W(I){return((I*=2)<=1?1-Q(1-I):Q(I-1)+1)/2}var k=function I(S){function b(K){return K*K*((S+1)*K-S)}return S=+S,b.overshoot=I,b}(1.70158),_=function I(S){function b(K){return--K*K*((S+1)*K+S)+1}return S=+S,b.overshoot=I,b}(1.70158),C=function I(S){function b(K){return((K*=2)<1?K*K*((S+1)*K-S):(K-=2)*K*((S+1)*K+S)+2)/2}return S=+S,b.overshoot=I,b}(1.70158),h=2*Math.PI,l=function I(S,b){var K=Math.asin(1/(S=Math.max(1,S)))*(b/=h);function ct(et){return S*Math.pow(2,10*--et)*Math.sin((K-et)/b)}return ct.amplitude=function(et){return I(et,b*h)},ct.period=function(et){return I(S,et)},ct}(1,.3),u=function I(S,b){var K=Math.asin(1/(S=Math.max(1,S)))*(b/=h);function ct(et){return 1-S*Math.pow(2,-10*(et=+et))*Math.sin((et+K)/b)}return ct.amplitude=function(et){return I(et,b*h)},ct.period=function(et){return I(S,et)},ct}(1,.3),v=function I(S,b){var K=Math.asin(1/(S=Math.max(1,S)))*(b/=h);function ct(et){return((et=2*et-1)<0?S*Math.pow(2,10*et)*Math.sin((K-et)/b):2-S*Math.pow(2,-10*et)*Math.sin((K+et)/b))/2}return ct.amplitude=function(et){return I(et,b*h)},ct.period=function(et){return I(S,et)},ct}(1,.3);g.d(d,"easeLinear",function(){return L}),g.d(d,"easeQuad",function(){return $}),g.d(d,"easeQuadIn",function(){return R}),g.d(d,"easeQuadOut",function(){return st}),g.d(d,"easeQuadInOut",function(){return $}),g.d(d,"easeCubic",function(){return J.b}),g.d(d,"easeCubicIn",function(){return J.a}),g.d(d,"easeCubicOut",function(){return J.c}),g.d(d,"easeCubicInOut",function(){return J.b}),g.d(d,"easePoly",function(){return Z}),g.d(d,"easePolyIn",function(){return X}),g.d(d,"easePolyOut",function(){return q}),g.d(d,"easePolyInOut",function(){return Z}),g.d(d,"easeSin",function(){return T}),g.d(d,"easeSinIn",function(){return N}),g.d(d,"easeSinOut",function(){return U}),g.d(d,"easeSinInOut",function(){return T}),g.d(d,"easeExp",function(){return O}),g.d(d,"easeExpIn",function(){return A}),g.d(d,"easeExpOut",function(){return M}),g.d(d,"easeExpInOut",function(){return O}),g.d(d,"easeCircle",function(){return c}),g.d(d,"easeCircleIn",function(){return H}),g.d(d,"easeCircleOut",function(){return z}),g.d(d,"easeCircleInOut",function(){return c}),g.d(d,"easeBounce",function(){return Q}),g.d(d,"easeBounceIn",function(){return it}),g.d(d,"easeBounceOut",function(){return Q}),g.d(d,"easeBounceInOut",function(){return W}),g.d(d,"easeBack",function(){return C}),g.d(d,"easeBackIn",function(){return k}),g.d(d,"easeBackOut",function(){return _}),g.d(d,"easeBackInOut",function(){return C}),g.d(d,"easeElastic",function(){return u}),g.d(d,"easeElasticIn",function(){return l}),g.d(d,"easeElasticOut",function(){return u}),g.d(d,"easeElasticInOut",function(){return v})},function(Pt,d,g){"use strict";g.r(d);var L=g(0);function R(be,je){switch(arguments.length){case 0:break;case 1:this.range(be);break;default:this.range(je).domain(be)}return this}function st(be,je){switch(arguments.length){case 0:break;case 1:this.interpolator(be);break;default:this.interpolator(je).domain(be)}return this}var $=g(25),J=Array.prototype,X=J.map,q=J.slice,Z={name:"implicit"};function Y(){var be=Object($.map)(),je=[],Ue=[],Re=Z;function Ie(tn){var Mn=tn+"",ke=be.get(Mn);if(!ke){if(Re!==Z)return Re;be.set(Mn,ke=je.push(tn))}return Ue[(ke-1)%Ue.length]}return Ie.domain=function(tn){if(!arguments.length)return je.slice();je=[],be=Object($.map)();for(var Mn,ke,on=-1,_n=tn.length;++on<_n;)be.has(ke=(Mn=tn[on])+"")||be.set(ke,je.push(Mn));return Ie},Ie.range=function(tn){return arguments.length?(Ue=q.call(tn),Ie):Ue.slice()},Ie.unknown=function(tn){return arguments.length?(Re=tn,Ie):Re},Ie.copy=function(){return Y(je,Ue).unknown(Re)},R.apply(Ie,arguments),Ie}function V(){var be,je,Ue=Y().unknown(void 0),Re=Ue.domain,Ie=Ue.range,tn=[0,1],Mn=!1,ke=0,on=0,_n=.5;function Pe(){var wn=Re().length,an=tn[1]Re&&(je=Ue,Ue=Re,Re=je),function(Ie){return Math.max(Ue,Math.min(Re,Ie))}}function it(be,je,Ue){var Re=be[0],Ie=be[1],tn=je[0],Mn=je[1];return Ie2?Q:it,Ie=tn=null,wn}function wn(an){return isNaN(an=+an)?Ue:(Ie||(Ie=Re(Mn.map(be),ke,on)))(be(_n(an)))}return wn.invert=function(an){return _n(je((tn||(tn=Re(ke,Mn.map(be),A.a)))(an)))},wn.domain=function(an){return arguments.length?(Mn=X.call(an,O),_n===z||(_n=D(Mn)),Pe()):Mn.slice()},wn.range=function(an){return arguments.length?(ke=q.call(an),Pe()):ke.slice()},wn.rangeRound=function(an){return ke=q.call(an),on=M.a,Pe()},wn.clamp=function(an){return arguments.length?(_n=an?D(Mn):z,wn):_n!==z},wn.interpolate=function(an){return arguments.length?(on=an,Pe()):on},wn.unknown=function(an){return arguments.length?(Ue=an,wn):Ue},function(an,gn){return be=an,je=gn,Pe()}}function _(be,je){return k()(be,je)}var C=g(40),h=g(81),l=g(56),u=g(82),v=g(80),I=function(be,je,Ue,Re){var Ie,tn=Object(L.tickStep)(be,je,Ue);switch((Re=Object(C.b)(Re==null?",f":Re)).type){case"s":var Mn=Math.max(Math.abs(be),Math.abs(je));return Re.precision!=null||isNaN(Ie=Object(h.a)(tn,Mn))||(Re.precision=Ie),Object(l.c)(Re,Mn);case"":case"e":case"g":case"p":case"r":Re.precision!=null||isNaN(Ie=Object(u.a)(tn,Math.max(Math.abs(be),Math.abs(je))))||(Re.precision=Ie-(Re.type==="e"));break;case"f":case"%":Re.precision!=null||isNaN(Ie=Object(v.a)(tn))||(Re.precision=Ie-2*(Re.type==="%"))}return Object(l.b)(Re)};function S(be){var je=be.domain;return be.ticks=function(Ue){var Re=je();return Object(L.ticks)(Re[0],Re[Re.length-1],Ue==null?10:Ue)},be.tickFormat=function(Ue,Re){var Ie=je();return I(Ie[0],Ie[Ie.length-1],Ue==null?10:Ue,Re)},be.nice=function(Ue){Ue==null&&(Ue=10);var Re,Ie=je(),tn=0,Mn=Ie.length-1,ke=Ie[tn],on=Ie[Mn];return on0?(ke=Math.floor(ke/Re)*Re,on=Math.ceil(on/Re)*Re,Re=Object(L.tickIncrement)(ke,on,Ue)):Re<0&&(ke=Math.ceil(ke*Re)/Re,on=Math.floor(on*Re)/Re,Re=Object(L.tickIncrement)(ke,on,Ue)),Re>0?(Ie[tn]=Math.floor(ke/Re)*Re,Ie[Mn]=Math.ceil(on/Re)*Re,je(Ie)):Re<0&&(Ie[tn]=Math.ceil(ke*Re)/Re,Ie[Mn]=Math.floor(on*Re)/Re,je(Ie)),be},be}function b(){var be=_(z,z);return be.copy=function(){return W(be,b())},R.apply(be,arguments),S(be)}function K(be){var je;function Ue(Re){return isNaN(Re=+Re)?je:Re}return Ue.invert=Ue,Ue.domain=Ue.range=function(Re){return arguments.length?(be=X.call(Re,O),Ue):be.slice()},Ue.unknown=function(Re){return arguments.length?(je=Re,Ue):je},Ue.copy=function(){return K(be).unknown(je)},be=arguments.length?X.call(be,O):[0,1],S(Ue)}var ct=function(be,je){var Ue,Re=0,Ie=(be=be.slice()).length-1,tn=be[Re],Mn=be[Ie];return Mn0){for(;xnwn)break;pr.push(Sn)}}else for(;xn=1;--gn)if(!((Sn=an*gn)wn)break;pr.push(Sn)}}else pr=Object(L.ticks)(xn,hr,Math.min(hr-xn,nr)).map(Ue);return on?pr.reverse():pr},Re.tickFormat=function(ke,on){if(on==null&&(on=tn===10?".0e":","),typeof on!="function"&&(on=Object(l.b)(on)),ke===1/0)return on;ke==null&&(ke=10);var _n=Math.max(1,tn*ke/Re.ticks().length);return function(Pe){var wn=Pe/Ue(Math.round(je(Pe)));return wn*tn0?Re[ke-1]:je[0],ke=Re?[Ie[Re-1],Ue]:[Ie[_n-1],Ie[_n]]},Mn.unknown=function(on){return arguments.length&&(be=on),Mn},Mn.thresholds=function(){return Ie.slice()},Mn.copy=function(){return Xt().domain([je,Ue]).range(tn).unknown(be)},R.apply(S(Mn),arguments)}function Ct(){var be,je=[.5],Ue=[0,1],Re=1;function Ie(tn){return tn<=tn?Ue[Object(L.bisect)(je,tn,0,Re)]:be}return Ie.domain=function(tn){return arguments.length?(je=q.call(tn),Re=Math.min(je.length,Ue.length-1),Ie):je.slice()},Ie.range=function(tn){return arguments.length?(Ue=q.call(tn),Re=Math.min(je.length,Ue.length-1),Ie):Ue.slice()},Ie.invertExtent=function(tn){var Mn=Ue.indexOf(tn);return[je[Mn-1],je[Mn]]},Ie.unknown=function(tn){return arguments.length?(be=tn,Ie):be},Ie.copy=function(){return Ct().domain(je).range(Ue).unknown(be)},R.apply(Ie,arguments)}var wt=g(33),Dt=g(69),jt=g(5),re=g(53),le=g(70),Gt=g(71),he=g(51),ve=g(52),Ce=g(21);function Te(be){return new Date(be)}function Ke(be){return be instanceof Date?+be:+new Date(+be)}function rn(be,je,Ue,Re,Ie,tn,Mn,ke,on){var _n=_(z,z),Pe=_n.invert,wn=_n.domain,an=on(".%L"),gn=on(":%S"),Sn=on("%I:%M"),xn=on("%I %p"),hr=on("%a %d"),nr=on("%b %d"),pr=on("%B"),vr=on("%Y"),rr=[[Mn,1,1e3],[Mn,5,5e3],[Mn,15,15e3],[Mn,30,3e4],[tn,1,6e4],[tn,5,3e5],[tn,15,9e5],[tn,30,18e5],[Ie,1,36e5],[Ie,3,108e5],[Ie,6,216e5],[Ie,12,432e5],[Re,1,864e5],[Re,2,1728e5],[Ue,1,6048e5],[je,1,2592e6],[je,3,7776e6],[be,1,31536e6]];function Rr(lr){return(Mn(lr)svg{background:"+this.chartBackground+";padding: 20px;}"}};function q(U,T){if(U){U.attr("version",1.1).attr("xmlns","http://www.w3.org/2000/svg");var A=$.initializeSerializer()(U.node());return A=function(M){return navigator.userAgent.search("FireFox")>-1?M.replace(/url.*"\)/,'url("linearGradient[id*="-gradient-"]");'):M}(A),A=function(M){return M.replace(">",">"+X.styleBackgroundString)}(A=N.call(this,A,T,parseInt(U.attr("width"),10)))}}function Z(U){var T=new Image;return T.src=""+X.imageSourceBase+J(encodeURIComponent(U).replace(/%([0-9A-F]{2})/g,function(A,M){return String.fromCharCode("0x"+M)})),T}function Y(U,T){return T.getContext("2d").drawImage(U,0,0),T}function V(U,T,A){A.preventDefault(),function(M){var O=arguments.length>1&&arguments[1]!==void 0?arguments[1]:X.defaultFilename,H=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"image/png",z=M.toDataURL(H),c=document.createElement("a");c.href=z,c.download=O,document.body.appendChild(c),c.click(),document.body.removeChild(c)}(Y(this,U),T)}function N(U,T,A){if(!T||!A)return U;var M=st.grey;return U=U.replace(/ '+T+" @@ -159,7 +159,7 @@ var fq=Object.defineProperty,dq=Object.defineProperties;var pq=Object.getOwnProp - `}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";g.r(d);var L=Array.prototype.slice,R=function(T){return T};function st(T){return"translate("+(T+.5)+",0)"}function $(T){return"translate(0,"+(T+.5)+")"}function J(T){return function(A){return+T(A)}}function X(T){var A=Math.max(0,T.bandwidth()-1)/2;return T.round()&&(A=Math.round(A)),function(M){return+T(M)+A}}function q(){return!this.__axis}function Z(T,A){var M=[],O=null,H=null,z=6,c=6,D=3,it=T===1||T===4?-1:1,Q=T===4||T===2?"x":"y",W=T===1||T===3?st:$;function k(_){var C=O==null?A.ticks?A.ticks.apply(A,M):A.domain():O,h=H==null?A.tickFormat?A.tickFormat.apply(A,M):R:H,l=Math.max(z,0)+D,u=A.range(),v=+u[0]+.5,I=+u[u.length-1]+.5,S=(A.bandwidth?X:J)(A.copy()),b=_.selection?_.selection():_,K=b.selectAll(".domain").data([null]),ct=b.selectAll(".tick").data(C,A).order(),et=ct.exit(),dt=ct.enter().append("g").attr("class","tick"),pt=ct.select("line"),bt=ct.select("text");K=K.merge(K.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),ct=ct.merge(dt),pt=pt.merge(dt.append("line").attr("stroke","currentColor").attr(Q+"2",it*z)),bt=bt.merge(dt.append("text").attr("fill","currentColor").attr(Q,it*l).attr("dy",T===1?"0em":T===3?"0.71em":"0.32em")),_!==b&&(K=K.transition(_),ct=ct.transition(_),pt=pt.transition(_),bt=bt.transition(_),et=et.transition(_).attr("opacity",1e-6).attr("transform",function(Mt){return isFinite(Mt=S(Mt))?W(Mt):this.getAttribute("transform")}),dt.attr("opacity",1e-6).attr("transform",function(Mt){var w=this.parentNode.__axis;return W(w&&isFinite(w=w(Mt))?w:S(Mt))})),et.remove(),K.attr("d",T===4||T==2?c?"M"+it*c+","+v+"H0.5V"+I+"H"+it*c:"M0.5,"+v+"V"+I:c?"M"+v+","+it*c+"V0.5H"+I+"V"+it*c:"M"+v+",0.5H"+I),ct.attr("opacity",1).attr("transform",function(Mt){return W(S(Mt))}),pt.attr(Q+"2",it*z),bt.attr(Q,it*l).text(h),b.filter(q).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",T===2?"start":T===4?"end":"middle"),b.each(function(){this.__axis=S})}return k.scale=function(_){return arguments.length?(A=_,k):A},k.ticks=function(){return M=L.call(arguments),k},k.tickArguments=function(_){return arguments.length?(M=_==null?[]:L.call(_),k):M.slice()},k.tickValues=function(_){return arguments.length?(O=_==null?null:L.call(_),k):O&&O.slice()},k.tickFormat=function(_){return arguments.length?(H=_,k):H},k.tickSize=function(_){return arguments.length?(z=c=+_,k):z},k.tickSizeInner=function(_){return arguments.length?(z=+_,k):z},k.tickSizeOuter=function(_){return arguments.length?(c=+_,k):c},k.tickPadding=function(_){return arguments.length?(D=+_,k):D},k}function Y(T){return Z(1,T)}function V(T){return Z(2,T)}function N(T){return Z(3,T)}function U(T){return Z(4,T)}g.d(d,"axisTop",function(){return Y}),g.d(d,"axisRight",function(){return V}),g.d(d,"axisBottom",function(){return N}),g.d(d,"axisLeft",function(){return U})},function(Pt,d,g){"use strict";g.r(d);var L=g(41),R=g(61),st=g(42),$=g(58),J=g(60),X=function(K){var ct=K.length;return function(et){return K[Math.max(0,Math.min(ct-1,Math.floor(et*ct)))]}},q=g(4),Z=function(K,ct){var et=Object(q.c)(+K,+ct);return function(dt){var pt=et(dt);return pt-360*Math.floor(pt/360)}},Y=g(14),V=g(31),N=g(62),U=g(83),T=g(59),A=g(77),M=Math.SQRT2;function O(K){return((K=Math.exp(K))+1/K)/2}var H=function(K,ct){var et,dt,pt=K[0],bt=K[1],Mt=K[2],w=ct[0],B=ct[1],tt=ct[2],nt=w-pt,x=B-bt,y=nt*nt+x*x;if(y<1e-12)dt=Math.log(tt/Mt)/M,et=function(Ot){return[pt+Ot*nt,bt+Ot*x,Mt*Math.exp(M*Ot*dt)]};else{var F=Math.sqrt(y),lt=(tt*tt-Mt*Mt+4*y)/(2*Mt*2*F),rt=(tt*tt-Mt*Mt-4*y)/(2*tt*2*F),gt=Math.log(Math.sqrt(lt*lt+1)-lt),vt=Math.log(Math.sqrt(rt*rt+1)-rt);dt=(vt-gt)/M,et=function(Ot){var At,$t=Ot*dt,Xt=O(gt),Ct=Mt/(2*F)*(Xt*(At=M*$t+gt,((At=Math.exp(2*At))-1)/(At+1))-function(wt){return((wt=Math.exp(wt))-1/wt)/2}(gt));return[pt+Ct*nt,bt+Ct*x,Mt*Xt/O(M*$t+gt)]}}return et.duration=1e3*dt,et},z=g(36),c=g(7);function D(K){return function(ct,et){var dt=K((ct=Object(c.f)(ct)).h,(et=Object(c.f)(et)).h),pt=Object(q.a)(ct.s,et.s),bt=Object(q.a)(ct.l,et.l),Mt=Object(q.a)(ct.opacity,et.opacity);return function(w){return ct.h=dt(w),ct.s=pt(w),ct.l=bt(w),ct.opacity=Mt(w),ct+""}}}var it=D(q.c),Q=D(q.a),W=g(50);function k(K,ct){var et=Object(q.a)((K=Object(W.a)(K)).l,(ct=Object(W.a)(ct)).l),dt=Object(q.a)(K.a,ct.a),pt=Object(q.a)(K.b,ct.b),bt=Object(q.a)(K.opacity,ct.opacity);return function(Mt){return K.l=et(Mt),K.a=dt(Mt),K.b=pt(Mt),K.opacity=bt(Mt),K+""}}function _(K){return function(ct,et){var dt=K((ct=Object(W.c)(ct)).h,(et=Object(W.c)(et)).h),pt=Object(q.a)(ct.c,et.c),bt=Object(q.a)(ct.l,et.l),Mt=Object(q.a)(ct.opacity,et.opacity);return function(w){return ct.h=dt(w),ct.c=pt(w),ct.l=bt(w),ct.opacity=Mt(w),ct+""}}}var C=_(q.c),h=_(q.a),l=g(78);function u(K){return function ct(et){function dt(pt,bt){var Mt=K((pt=Object(l.a)(pt)).h,(bt=Object(l.a)(bt)).h),w=Object(q.a)(pt.s,bt.s),B=Object(q.a)(pt.l,bt.l),tt=Object(q.a)(pt.opacity,bt.opacity);return function(nt){return pt.h=Mt(nt),pt.s=w(nt),pt.l=B(Math.pow(nt,et)),pt.opacity=tt(nt),pt+""}}return et=+et,dt.gamma=ct,dt}(1)}var v=u(q.c),I=u(q.a);function S(K,ct){for(var et=0,dt=ct.length-1,pt=ct[0],bt=new Array(dt<0?0:dt);etgt?1:rt>=gt?0:NaN}var Y=g(44);function V(rt){return function(){this.removeAttribute(rt)}}function N(rt){return function(){this.removeAttributeNS(rt.space,rt.local)}}function U(rt,gt){return function(){this.setAttribute(rt,gt)}}function T(rt,gt){return function(){this.setAttributeNS(rt.space,rt.local,gt)}}function A(rt,gt){return function(){var vt=gt.apply(this,arguments);vt==null?this.removeAttribute(rt):this.setAttribute(rt,vt)}}function M(rt,gt){return function(){var vt=gt.apply(this,arguments);vt==null?this.removeAttributeNS(rt.space,rt.local):this.setAttributeNS(rt.space,rt.local,vt)}}var O=g(67);function H(rt){return function(){delete this[rt]}}function z(rt,gt){return function(){this[rt]=gt}}function c(rt,gt){return function(){var vt=gt.apply(this,arguments);vt==null?delete this[rt]:this[rt]=vt}}function D(rt){return rt.trim().split(/^|\s+/)}function it(rt){return rt.classList||new Q(rt)}function Q(rt){this._node=rt,this._names=D(rt.getAttribute("class")||"")}function W(rt,gt){for(var vt=it(rt),Ot=-1,At=gt.length;++Ot=0&&(this._names.splice(gt,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(rt){return this._names.indexOf(rt)>=0}};function l(){this.textContent=""}function u(rt){return function(){this.textContent=rt}}function v(rt){return function(){var gt=rt.apply(this,arguments);this.textContent=gt==null?"":gt}}function I(){this.innerHTML=""}function S(rt){return function(){this.innerHTML=rt}}function b(rt){return function(){var gt=rt.apply(this,arguments);this.innerHTML=gt==null?"":gt}}function K(){this.nextSibling&&this.parentNode.appendChild(this)}function ct(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var et=g(29);function dt(){return null}function pt(){var rt=this.parentNode;rt&&rt.removeChild(this)}function bt(){var rt=this.cloneNode(!1),gt=this.parentNode;return gt?gt.insertBefore(rt,this.nextSibling):rt}function Mt(){var rt=this.cloneNode(!0),gt=this.parentNode;return gt?gt.insertBefore(rt,this.nextSibling):rt}var w=g(37),B=g(45);function tt(rt,gt,vt){var Ot=Object(B.a)(rt),At=Ot.CustomEvent;typeof At=="function"?At=new At(gt,vt):(At=Ot.document.createEvent("Event"),vt?(At.initEvent(gt,vt.bubbles,vt.cancelable),At.detail=vt.detail):At.initEvent(gt,!1,!1)),rt.dispatchEvent(At)}function nt(rt,gt){return function(){return tt(this,rt,gt)}}function x(rt,gt){return function(){return tt(this,rt,gt.apply(this,arguments))}}g.d(d,"c",function(){return y}),g.d(d,"a",function(){return F});var y=[null];function F(rt,gt){this._groups=rt,this._parents=gt}function lt(){return new F([[document.documentElement]],y)}F.prototype=lt.prototype={constructor:F,select:function(rt){typeof rt!="function"&&(rt=Object(L.a)(rt));for(var gt=this._groups,vt=gt.length,Ot=new Array(vt),At=0;At=Qt&&(Qt=un+1);!(rn=Te[Qt])&&++Qt=0;)(Ot=At[$t])&&(Xt&&4^Ot.compareDocumentPosition(Xt)&&Xt.parentNode.insertBefore(Ot,Xt),Xt=Ot);return this},sort:function(rt){function gt(re,le){return re&&le?rt(re.__data__,le.__data__):!re-!le}rt||(rt=Z);for(var vt=this._groups,Ot=vt.length,At=new Array(Ot),$t=0;$t1?this.each((gt==null?H:typeof gt=="function"?c:z)(rt,gt)):this.node()[rt]},classed:function(rt,gt){var vt=D(rt+"");if(arguments.length<2){for(var Ot=it(this.node()),At=-1,$t=vt.length;++At<$t;)if(!Ot.contains(vt[At]))return!1;return!0}return this.each((typeof gt=="function"?h:gt?_:C)(vt,gt))},text:function(rt){return arguments.length?this.each(rt==null?l:(typeof rt=="function"?v:u)(rt)):this.node().textContent},html:function(rt){return arguments.length?this.each(rt==null?I:(typeof rt=="function"?b:S)(rt)):this.node().innerHTML},raise:function(){return this.each(K)},lower:function(){return this.each(ct)},append:function(rt){var gt=typeof rt=="function"?rt:Object(et.a)(rt);return this.select(function(){return this.appendChild(gt.apply(this,arguments))})},insert:function(rt,gt){var vt=typeof rt=="function"?rt:Object(et.a)(rt),Ot=gt==null?dt:typeof gt=="function"?gt:Object(L.a)(gt);return this.select(function(){return this.insertBefore(vt.apply(this,arguments),Ot.apply(this,arguments)||null)})},remove:function(){return this.each(pt)},clone:function(rt){return this.select(rt?Mt:bt)},datum:function(rt){return arguments.length?this.property("__data__",rt):this.node().__data__},on:w.b,dispatch:function(rt,gt){return this.each((typeof gt=="function"?x:nt)(rt,gt))}},d.b=lt},function(Pt,d,g){"use strict";var L;(L=function(R){var st=g(9),$=0,J={small:{limit:10,format:st.format("")},medium:{limit:1e3,format:st.format("")},large:{limit:null,format:st.format(",d")}},X={small:{limit:10,format:st.format(".3f")},medium:{limit:100,format:st.format(".1f")},large:{limit:null,format:st.format(".2s")}},q=function(Z,Y){var V="large";return Z=c.length)return O!=null&&Q.sort(O),H!=null?H(Q):Q;for(var C,h,l,u=-1,v=Q.length,I=c[W++],S=st(),b=k();++uc.length)return k;var C,h=D[_-1];return H!=null&&_>=c.length?C=k.entries():(C=[],k.each(function(l,u){C.push({key:u,values:W(l,_)})})),h!=null?C.sort(function(l,u){return h(l.key,u.key)}):C}(it(Q,0,q,Z),0)},key:function(Q){return c.push(Q),z},sortKeys:function(Q){return D[c.length-1]=Q,z},sortValues:function(Q){return O=Q,z},rollup:function(Q){return H=Q,z}}};function J(){return{}}function X(O,H,z){O[H]=z}function q(){return st()}function Z(O,H,z){O.set(H,z)}function Y(){}var V=st.prototype;function N(O,H){var z=new Y;if(O instanceof Y)O.each(function(it){z.add(it)});else if(O){var c=-1,D=O.length;if(H==null)for(;++c1&&arguments[1]!==void 0?arguments[1]:12,U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Arial",T=document.createElement("canvas"),A=T.getContext("2d");return A.font=N+"px "+U,A.measureText(V).width},wrapText:function(V,N,U,T){var A=st.select(T),M=A.text().split(/\s+/).reverse(),O=void 0,H=[],z=0,c=$*X,D=A.attr("y"),it=parseFloat(A.attr("dy")),Q=N*q,W=A.text(null).append("tspan").attr("x",V).attr("y",D-5).attr("dy",it+"em").classed(Z,!0).style("font-size",N+"px");for(W.text(M.pop()),W=A.append("tspan").classed(Y,!0).attr("x",V).attr("y",D+J).attr("dy",++z*c+it+"em").style("font-size",Q+"px");O=M.pop();)H.push(O),W.text(H.join(" ")),W.node()&&W.node().getComputedTextLength()>U-50&&(H.pop(),W.text(H.join(" ")),H=[O],W=A.append("tspan").classed(Y,!0).attr("x",V).attr("y",D+J).attr("dy",++z*c+it+"em").text(O).style("font-size",Q+"px"))},wrapTextWithEllipses:function(V,N){var U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,A=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1.2;V.each(function(){var M,O,H,z,c,D,it;for(M=(V=st.select(this)).text().split(/\s+/).reverse(),H=[],z=0,c=V.attr("y"),D=parseFloat(V.attr("dy")),it=V.text(null).append("tspan").attr("x",U).attr("y",c).attr("dy",D+"em");O=M.pop();)if(H.push(O),it.text(H.join(" ")),it.node()&&it.node().getComputedTextLength()>N){if(H.pop(),it.text(H.join(" ")),!(z1e-6)if(Math.abs(Bn*He-sn*kn)>1e-6&&ge){var fr=se-Ae,or=pe-Qe,Zn=He*He+sn*sn,ur=fr*fr+or*or,Tr=Math.sqrt(Zn),Sr=Math.sqrt(Yn),Br=ge*Math.tan((L-Math.acos((Zn+Yn-ur)/(2*Tr*Sr)))/2),Kr=Br/Sr,ui=Br/Tr;Math.abs(Kr-1)>1e-6&&(this._+="L"+(_t+Kr*kn)+","+(Wt+Kr*Bn)),this._+="A"+ge+","+ge+",0,0,"+ +(Bn*fr>kn*or)+","+(this._x1=_t+ui*He)+","+(this._y1=Wt+ui*sn)}else this._+="L"+(this._x1=_t)+","+(this._y1=Wt)},arc:function(_t,Wt,se,pe,ge,Ae){_t=+_t,Wt=+Wt,Ae=!!Ae;var Qe=(se=+se)*Math.cos(pe),He=se*Math.sin(pe),sn=_t+Qe,kn=Wt+He,Bn=1^Ae,Yn=Ae?pe-ge:ge-pe;if(se<0)throw new Error("negative radius: "+se);this._x1===null?this._+="M"+sn+","+kn:(Math.abs(this._x1-sn)>1e-6||Math.abs(this._y1-kn)>1e-6)&&(this._+="L"+sn+","+kn),se&&(Yn<0&&(Yn=Yn%R+R),Yn>st?this._+="A"+se+","+se+",0,1,"+Bn+","+(_t-Qe)+","+(Wt-He)+"A"+se+","+se+",0,1,"+Bn+","+(this._x1=sn)+","+(this._y1=kn):Yn>1e-6&&(this._+="A"+se+","+se+",0,"+ +(Yn>=L)+","+Bn+","+(this._x1=_t+se*Math.cos(ge))+","+(this._y1=Wt+se*Math.sin(ge))))},rect:function(_t,Wt,se,pe){this._+="M"+(this._x0=this._x1=+_t)+","+(this._y0=this._y1=+Wt)+"h"+ +se+"v"+ +pe+"h"+-se+"Z"},toString:function(){return this._}};var X=J,q=function(_t){return function(){return _t}},Z=Math.abs,Y=Math.atan2,V=Math.cos,N=Math.max,U=Math.min,T=Math.sin,A=Math.sqrt,M=Math.PI,O=M/2,H=2*M;function z(_t){return _t>1?0:_t<-1?M:Math.acos(_t)}function c(_t){return _t>=1?O:_t<=-1?-O:Math.asin(_t)}function D(_t){return _t.innerRadius}function it(_t){return _t.outerRadius}function Q(_t){return _t.startAngle}function W(_t){return _t.endAngle}function k(_t){return _t&&_t.padAngle}function _(_t,Wt,se,pe,ge,Ae,Qe,He){var sn=se-_t,kn=pe-Wt,Bn=Qe-ge,Yn=He-Ae,fr=Yn*sn-Bn*kn;if(!(fr*fr<1e-12))return[_t+(fr=(Bn*(Wt-Ae)-Yn*(_t-ge))/fr)*sn,Wt+fr*kn]}function C(_t,Wt,se,pe,ge,Ae,Qe){var He=_t-se,sn=Wt-pe,kn=(Qe?Ae:-Ae)/A(He*He+sn*sn),Bn=kn*sn,Yn=-kn*He,fr=_t+Bn,or=Wt+Yn,Zn=se+Bn,ur=pe+Yn,Tr=(fr+Zn)/2,Sr=(or+ur)/2,Br=Zn-fr,Kr=ur-or,ui=Br*Br+Kr*Kr,Li=ge-Ae,Ai=fr*ur-Zn*or,yi=(Kr<0?-1:1)*A(N(0,Li*Li*ui-Ai*Ai)),Oi=(Ai*Kr-Br*yi)/ui,Ii=(-Ai*Br-Kr*yi)/ui,Pi=(Ai*Kr+Br*yi)/ui,Gi=(-Ai*Br+Kr*yi)/ui,io=Oi-Tr,eo=Ii-Sr,Eo=Pi-Tr,Ro=Gi-Sr;return io*io+eo*eo>Eo*Eo+Ro*Ro&&(Oi=Pi,Ii=Gi),{cx:Oi,cy:Ii,x01:-Bn,y01:-Yn,x11:Oi*(ge/Li-1),y11:Ii*(ge/Li-1)}}var h=function(){var _t=D,Wt=it,se=q(0),pe=null,ge=Q,Ae=W,Qe=k,He=null;function sn(){var kn,Bn,Yn=+_t.apply(this,arguments),fr=+Wt.apply(this,arguments),or=ge.apply(this,arguments)-O,Zn=Ae.apply(this,arguments)-O,ur=Z(Zn-or),Tr=Zn>or;if(He||(He=kn=X()),fr1e-12)if(ur>H-1e-12)He.moveTo(fr*V(or),fr*T(or)),He.arc(0,0,fr,or,Zn,!Tr),Yn>1e-12&&(He.moveTo(Yn*V(Zn),Yn*T(Zn)),He.arc(0,0,Yn,Zn,or,Tr));else{var Sr,Br,Kr=or,ui=Zn,Li=or,Ai=Zn,yi=ur,Oi=ur,Ii=Qe.apply(this,arguments)/2,Pi=Ii>1e-12&&(pe?+pe.apply(this,arguments):A(Yn*Yn+fr*fr)),Gi=U(Z(fr-Yn)/2,+se.apply(this,arguments)),io=Gi,eo=Gi;if(Pi>1e-12){var Eo=c(Pi/Yn*T(Ii)),Ro=c(Pi/fr*T(Ii));(yi-=2*Eo)>1e-12?(Li+=Eo*=Tr?1:-1,Ai-=Eo):(yi=0,Li=Ai=(or+Zn)/2),(Oi-=2*Ro)>1e-12?(Kr+=Ro*=Tr?1:-1,ui-=Ro):(Oi=0,Kr=ui=(or+Zn)/2)}var mo=fr*V(Kr),ao=fr*T(Kr),_o=Yn*V(Ai),qo=Yn*T(Ai);if(Gi>1e-12){var lo,ki=fr*V(ui),oa=fr*T(ui),aa=Yn*V(Li),ko=Yn*T(Li);if(ur1e-12?eo>1e-12?(Sr=C(aa,ko,mo,ao,fr,eo,Tr),Br=C(ki,oa,_o,qo,fr,eo,Tr),He.moveTo(Sr.cx+Sr.x01,Sr.cy+Sr.y01),eo1e-12&&yi>1e-12?io>1e-12?(Sr=C(_o,qo,ki,oa,Yn,-io,Tr),Br=C(mo,ao,aa,ko,Yn,-io,Tr),He.lineTo(Sr.cx+Sr.x01,Sr.cy+Sr.y01),io=fr;--or)He.point(Br[or],Kr[or]);He.lineEnd(),He.areaEnd()}Sr&&(Br[Yn]=+_t(Zn,Yn,Bn),Kr[Yn]=+se(Zn,Yn,Bn),He.point(Wt?+Wt(Zn,Yn,Bn):Br[Yn],pe?+pe(Zn,Yn,Bn):Kr[Yn]))}if(ur)return He=null,ur+""||null}function kn(){return S().defined(ge).curve(Qe).context(Ae)}return sn.x=function(Bn){return arguments.length?(_t=typeof Bn=="function"?Bn:q(+Bn),Wt=null,sn):_t},sn.x0=function(Bn){return arguments.length?(_t=typeof Bn=="function"?Bn:q(+Bn),sn):_t},sn.x1=function(Bn){return arguments.length?(Wt=Bn==null?null:typeof Bn=="function"?Bn:q(+Bn),sn):Wt},sn.y=function(Bn){return arguments.length?(se=typeof Bn=="function"?Bn:q(+Bn),pe=null,sn):se},sn.y0=function(Bn){return arguments.length?(se=typeof Bn=="function"?Bn:q(+Bn),sn):se},sn.y1=function(Bn){return arguments.length?(pe=Bn==null?null:typeof Bn=="function"?Bn:q(+Bn),sn):pe},sn.lineX0=sn.lineY0=function(){return kn().x(_t).y(se)},sn.lineY1=function(){return kn().x(_t).y(pe)},sn.lineX1=function(){return kn().x(Wt).y(se)},sn.defined=function(Bn){return arguments.length?(ge=typeof Bn=="function"?Bn:q(!!Bn),sn):ge},sn.curve=function(Bn){return arguments.length?(Qe=Bn,Ae!=null&&(He=Qe(Ae)),sn):Qe},sn.context=function(Bn){return arguments.length?(Bn==null?Ae=He=null:He=Qe(Ae=Bn),sn):Ae},sn},K=function(_t,Wt){return Wt<_t?-1:Wt>_t?1:Wt>=_t?0:NaN},ct=function(_t){return _t},et=function(){var _t=ct,Wt=K,se=null,pe=q(0),ge=q(H),Ae=q(0);function Qe(He){var sn,kn,Bn,Yn,fr,or=He.length,Zn=0,ur=new Array(or),Tr=new Array(or),Sr=+pe.apply(this,arguments),Br=Math.min(H,Math.max(-H,ge.apply(this,arguments)-Sr)),Kr=Math.min(Math.abs(Br)/or,Ae.apply(this,arguments)),ui=Kr*(Br<0?-1:1);for(sn=0;sn0&&(Zn+=fr);for(Wt!=null?ur.sort(function(Li,Ai){return Wt(Tr[Li],Tr[Ai])}):se!=null&&ur.sort(function(Li,Ai){return se(He[Li],He[Ai])}),sn=0,Bn=Zn?(Br-or*ui)/Zn:0;sn0?fr*Bn:0)+ui,Tr[kn]={data:He[kn],index:sn,value:fr,startAngle:Sr,endAngle:Yn,padAngle:Kr};return Tr}return Qe.value=function(He){return arguments.length?(_t=typeof He=="function"?He:q(+He),Qe):_t},Qe.sortValues=function(He){return arguments.length?(Wt=He,se=null,Qe):Wt},Qe.sort=function(He){return arguments.length?(se=He,Wt=null,Qe):se},Qe.startAngle=function(He){return arguments.length?(pe=typeof He=="function"?He:q(+He),Qe):pe},Qe.endAngle=function(He){return arguments.length?(ge=typeof He=="function"?He:q(+He),Qe):ge},Qe.padAngle=function(He){return arguments.length?(Ae=typeof He=="function"?He:q(+He),Qe):Ae},Qe},dt=bt(u);function pt(_t){this._curve=_t}function bt(_t){function Wt(se){return new pt(_t(se))}return Wt._curve=_t,Wt}function Mt(_t){var Wt=_t.curve;return _t.angle=_t.x,delete _t.x,_t.radius=_t.y,delete _t.y,_t.curve=function(se){return arguments.length?Wt(bt(se)):Wt()._curve},_t}pt.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(_t,Wt){this._curve.point(Wt*Math.sin(_t),Wt*-Math.cos(_t))}};var w=function(){return Mt(S().curve(dt))},B=function(){var _t=b().curve(dt),Wt=_t.curve,se=_t.lineX0,pe=_t.lineX1,ge=_t.lineY0,Ae=_t.lineY1;return _t.angle=_t.x,delete _t.x,_t.startAngle=_t.x0,delete _t.x0,_t.endAngle=_t.x1,delete _t.x1,_t.radius=_t.y,delete _t.y,_t.innerRadius=_t.y0,delete _t.y0,_t.outerRadius=_t.y1,delete _t.y1,_t.lineStartAngle=function(){return Mt(se())},delete _t.lineX0,_t.lineEndAngle=function(){return Mt(pe())},delete _t.lineX1,_t.lineInnerRadius=function(){return Mt(ge())},delete _t.lineY0,_t.lineOuterRadius=function(){return Mt(Ae())},delete _t.lineY1,_t.curve=function(Qe){return arguments.length?Wt(bt(Qe)):Wt()._curve},_t},tt=function(_t,Wt){return[(Wt=+Wt)*Math.cos(_t-=Math.PI/2),Wt*Math.sin(_t)]},nt=Array.prototype.slice;function x(_t){return _t.source}function y(_t){return _t.target}function F(_t){var Wt=x,se=y,pe=v,ge=I,Ae=null;function Qe(){var He,sn=nt.call(arguments),kn=Wt.apply(this,sn),Bn=se.apply(this,sn);if(Ae||(Ae=He=X()),_t(Ae,+pe.apply(this,(sn[0]=kn,sn)),+ge.apply(this,sn),+pe.apply(this,(sn[0]=Bn,sn)),+ge.apply(this,sn)),He)return Ae=null,He+""||null}return Qe.source=function(He){return arguments.length?(Wt=He,Qe):Wt},Qe.target=function(He){return arguments.length?(se=He,Qe):se},Qe.x=function(He){return arguments.length?(pe=typeof He=="function"?He:q(+He),Qe):pe},Qe.y=function(He){return arguments.length?(ge=typeof He=="function"?He:q(+He),Qe):ge},Qe.context=function(He){return arguments.length?(Ae=He==null?null:He,Qe):Ae},Qe}function lt(_t,Wt,se,pe,ge){_t.moveTo(Wt,se),_t.bezierCurveTo(Wt=(Wt+pe)/2,se,Wt,ge,pe,ge)}function rt(_t,Wt,se,pe,ge){_t.moveTo(Wt,se),_t.bezierCurveTo(Wt,se=(se+ge)/2,pe,se,pe,ge)}function gt(_t,Wt,se,pe,ge){var Ae=tt(Wt,se),Qe=tt(Wt,se=(se+ge)/2),He=tt(pe,se),sn=tt(pe,ge);_t.moveTo(Ae[0],Ae[1]),_t.bezierCurveTo(Qe[0],Qe[1],He[0],He[1],sn[0],sn[1])}function vt(){return F(lt)}function Ot(){return F(rt)}function At(){var _t=F(gt);return _t.angle=_t.x,delete _t.x,_t.radius=_t.y,delete _t.y,_t}var $t={draw:function(_t,Wt){var se=Math.sqrt(Wt/M);_t.moveTo(se,0),_t.arc(0,0,se,0,H)}},Xt={draw:function(_t,Wt){var se=Math.sqrt(Wt/5)/2;_t.moveTo(-3*se,-se),_t.lineTo(-se,-se),_t.lineTo(-se,-3*se),_t.lineTo(se,-3*se),_t.lineTo(se,-se),_t.lineTo(3*se,-se),_t.lineTo(3*se,se),_t.lineTo(se,se),_t.lineTo(se,3*se),_t.lineTo(-se,3*se),_t.lineTo(-se,se),_t.lineTo(-3*se,se),_t.closePath()}},Ct=Math.sqrt(1/3),wt=2*Ct,Dt={draw:function(_t,Wt){var se=Math.sqrt(Wt/wt),pe=se*Ct;_t.moveTo(0,-se),_t.lineTo(pe,0),_t.lineTo(0,se),_t.lineTo(-pe,0),_t.closePath()}},jt=Math.sin(M/10)/Math.sin(7*M/10),re=Math.sin(H/10)*jt,le=-Math.cos(H/10)*jt,Gt={draw:function(_t,Wt){var se=Math.sqrt(.8908130915292852*Wt),pe=re*se,ge=le*se;_t.moveTo(0,-se),_t.lineTo(pe,ge);for(var Ae=1;Ae<5;++Ae){var Qe=H*Ae/5,He=Math.cos(Qe),sn=Math.sin(Qe);_t.lineTo(sn*se,-He*se),_t.lineTo(He*pe-sn*ge,sn*pe+He*ge)}_t.closePath()}},he={draw:function(_t,Wt){var se=Math.sqrt(Wt),pe=-se/2;_t.rect(pe,pe,se,se)}},ve=Math.sqrt(3),Ce={draw:function(_t,Wt){var se=-Math.sqrt(Wt/(3*ve));_t.moveTo(0,2*se),_t.lineTo(-ve*se,-se),_t.lineTo(ve*se,-se),_t.closePath()}},Te=Math.sqrt(3)/2,Ke=1/Math.sqrt(12),rn=3*(Ke/2+1),un={draw:function(_t,Wt){var se=Math.sqrt(Wt/rn),pe=se/2,ge=se*Ke,Ae=pe,Qe=se*Ke+se,He=-Ae,sn=Qe;_t.moveTo(pe,ge),_t.lineTo(Ae,Qe),_t.lineTo(He,sn),_t.lineTo(-.5*pe-Te*ge,Te*pe+-.5*ge),_t.lineTo(-.5*Ae-Te*Qe,Te*Ae+-.5*Qe),_t.lineTo(-.5*He-Te*sn,Te*He+-.5*sn),_t.lineTo(-.5*pe+Te*ge,-.5*ge-Te*pe),_t.lineTo(-.5*Ae+Te*Qe,-.5*Qe-Te*Ae),_t.lineTo(-.5*He+Te*sn,-.5*sn-Te*He),_t.closePath()}},Qt=[$t,Xt,Dt,he,Gt,Ce,un],Kt=function(){var _t=q($t),Wt=q(64),se=null;function pe(){var ge;if(se||(se=ge=X()),_t.apply(this,arguments).draw(se,+Wt.apply(this,arguments)),ge)return se=null,ge+""||null}return pe.type=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:q(ge),pe):_t},pe.size=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:q(+ge),pe):Wt},pe.context=function(ge){return arguments.length?(se=ge==null?null:ge,pe):se},pe},Jt=function(){};function Et(_t,Wt,se){_t._context.bezierCurveTo((2*_t._x0+_t._x1)/3,(2*_t._y0+_t._y1)/3,(_t._x0+2*_t._x1)/3,(_t._y0+2*_t._y1)/3,(_t._x0+4*_t._x1+Wt)/6,(_t._y0+4*_t._y1+se)/6)}function Rt(_t){this._context=_t}Rt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Et(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Et(this,_t,Wt)}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=Wt}};var zt=function(_t){return new Rt(_t)};function Ft(_t){this._context=_t}Ft.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._x2=_t,this._y2=Wt;break;case 1:this._point=2,this._x3=_t,this._y3=Wt;break;case 2:this._point=3,this._x4=_t,this._y4=Wt,this._context.moveTo((this._x0+4*this._x1+_t)/6,(this._y0+4*this._y1+Wt)/6);break;default:Et(this,_t,Wt)}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=Wt}};var ce=function(_t){return new Ft(_t)};function Se(_t){this._context=_t}Se.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var se=(this._x0+4*this._x1+_t)/6,pe=(this._y0+4*this._y1+Wt)/6;this._line?this._context.lineTo(se,pe):this._context.moveTo(se,pe);break;case 3:this._point=4;default:Et(this,_t,Wt)}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=Wt}};var xe=function(_t){return new Se(_t)};function Ze(_t,Wt){this._basis=new Rt(_t),this._beta=Wt}Ze.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var _t=this._x,Wt=this._y,se=_t.length-1;if(se>0)for(var pe,ge=_t[0],Ae=Wt[0],Qe=_t[se]-ge,He=Wt[se]-Ae,sn=-1;++sn<=se;)pe=sn/se,this._basis.point(this._beta*_t[sn]+(1-this._beta)*(ge+pe*Qe),this._beta*Wt[sn]+(1-this._beta)*(Ae+pe*He));this._x=this._y=null,this._basis.lineEnd()},point:function(_t,Wt){this._x.push(+_t),this._y.push(+Wt)}};var pn=function _t(Wt){function se(pe){return Wt===1?new Rt(pe):new Ze(pe,Wt)}return se.beta=function(pe){return _t(+pe)},se}(.85);function bn(_t,Wt,se){_t._context.bezierCurveTo(_t._x1+_t._k*(_t._x2-_t._x0),_t._y1+_t._k*(_t._y2-_t._y0),_t._x2+_t._k*(_t._x1-Wt),_t._y2+_t._k*(_t._y1-se),_t._x2,_t._y2)}function Ln(_t,Wt){this._context=_t,this._k=(1-Wt)/6}Ln.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:bn(this,this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2,this._x1=_t,this._y1=Wt;break;case 2:this._point=3;default:bn(this,_t,Wt)}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var vn=function _t(Wt){function se(pe){return new Ln(pe,Wt)}return se.tension=function(pe){return _t(+pe)},se}(0);function Tn(_t,Wt){this._context=_t,this._k=(1-Wt)/6}Tn.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._x3=_t,this._y3=Wt;break;case 1:this._point=2,this._context.moveTo(this._x4=_t,this._y4=Wt);break;case 2:this._point=3,this._x5=_t,this._y5=Wt;break;default:bn(this,_t,Wt)}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var Qn=function _t(Wt){function se(pe){return new Tn(pe,Wt)}return se.tension=function(pe){return _t(+pe)},se}(0);function dr(_t,Wt){this._context=_t,this._k=(1-Wt)/6}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bn(this,_t,Wt)}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var ye=function _t(Wt){function se(pe){return new dr(pe,Wt)}return se.tension=function(pe){return _t(+pe)},se}(0);function Fe(_t,Wt,se){var pe=_t._x1,ge=_t._y1,Ae=_t._x2,Qe=_t._y2;if(_t._l01_a>1e-12){var He=2*_t._l01_2a+3*_t._l01_a*_t._l12_a+_t._l12_2a,sn=3*_t._l01_a*(_t._l01_a+_t._l12_a);pe=(pe*He-_t._x0*_t._l12_2a+_t._x2*_t._l01_2a)/sn,ge=(ge*He-_t._y0*_t._l12_2a+_t._y2*_t._l01_2a)/sn}if(_t._l23_a>1e-12){var kn=2*_t._l23_2a+3*_t._l23_a*_t._l12_a+_t._l12_2a,Bn=3*_t._l23_a*(_t._l23_a+_t._l12_a);Ae=(Ae*kn+_t._x1*_t._l23_2a-Wt*_t._l12_2a)/Bn,Qe=(Qe*kn+_t._y1*_t._l23_2a-se*_t._l12_2a)/Bn}_t._context.bezierCurveTo(pe,ge,Ae,Qe,_t._x2,_t._y2)}function qe(_t,Wt){this._context=_t,this._alpha=Wt}qe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){if(_t=+_t,Wt=+Wt,this._point){var se=this._x2-_t,pe=this._y2-Wt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(se*se+pe*pe,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2;break;case 2:this._point=3;default:Fe(this,_t,Wt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var be=function _t(Wt){function se(pe){return Wt?new qe(pe,Wt):new Ln(pe,0)}return se.alpha=function(pe){return _t(+pe)},se}(.5);function je(_t,Wt){this._context=_t,this._alpha=Wt}je.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(_t,Wt){if(_t=+_t,Wt=+Wt,this._point){var se=this._x2-_t,pe=this._y2-Wt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(se*se+pe*pe,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=_t,this._y3=Wt;break;case 1:this._point=2,this._context.moveTo(this._x4=_t,this._y4=Wt);break;case 2:this._point=3,this._x5=_t,this._y5=Wt;break;default:Fe(this,_t,Wt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var Ue=function _t(Wt){function se(pe){return Wt?new je(pe,Wt):new Tn(pe,0)}return se.alpha=function(pe){return _t(+pe)},se}(.5);function Re(_t,Wt){this._context=_t,this._alpha=Wt}Re.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){if(_t=+_t,Wt=+Wt,this._point){var se=this._x2-_t,pe=this._y2-Wt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(se*se+pe*pe,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Fe(this,_t,Wt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var Ie=function _t(Wt){function se(pe){return Wt?new Re(pe,Wt):new dr(pe,0)}return se.alpha=function(pe){return _t(+pe)},se}(.5);function tn(_t){this._context=_t}tn.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(_t,Wt){_t=+_t,Wt=+Wt,this._point?this._context.lineTo(_t,Wt):(this._point=1,this._context.moveTo(_t,Wt))}};var Mn=function(_t){return new tn(_t)};function ke(_t){return _t<0?-1:1}function on(_t,Wt,se){var pe=_t._x1-_t._x0,ge=Wt-_t._x1,Ae=(_t._y1-_t._y0)/(pe||ge<0&&-0),Qe=(se-_t._y1)/(ge||pe<0&&-0),He=(Ae*ge+Qe*pe)/(pe+ge);return(ke(Ae)+ke(Qe))*Math.min(Math.abs(Ae),Math.abs(Qe),.5*Math.abs(He))||0}function _n(_t,Wt){var se=_t._x1-_t._x0;return se?(3*(_t._y1-_t._y0)/se-Wt)/2:Wt}function Pe(_t,Wt,se){var pe=_t._x0,ge=_t._y0,Ae=_t._x1,Qe=_t._y1,He=(Ae-pe)/3;_t._context.bezierCurveTo(pe+He,ge+He*Wt,Ae-He,Qe-He*se,Ae,Qe)}function wn(_t){this._context=_t}function an(_t){this._context=new gn(_t)}function gn(_t){this._context=_t}function Sn(_t){return new wn(_t)}function xn(_t){return new an(_t)}function hr(_t){this._context=_t}function nr(_t){var Wt,se,pe=_t.length-1,ge=new Array(pe),Ae=new Array(pe),Qe=new Array(pe);for(ge[0]=0,Ae[0]=2,Qe[0]=_t[0]+2*_t[1],Wt=1;Wt=0;--Wt)ge[Wt]=(Qe[Wt]-ge[Wt+1])/Ae[Wt];for(Ae[pe-1]=(_t[pe]+ge[pe-1])/2,Wt=0;Wt=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,Wt),this._context.lineTo(_t,Wt);else{var se=this._x*(1-this._t)+_t*this._t;this._context.lineTo(se,this._y),this._context.lineTo(se,Wt)}}this._x=_t,this._y=Wt}};var rr=function(_t){return new vr(_t,.5)};function Rr(_t){return new vr(_t,0)}function jr(_t){return new vr(_t,1)}var lr=function(_t,Wt){if((ge=_t.length)>1)for(var se,pe,ge,Ae=1,Qe=_t[Wt[0]],He=Qe.length;Ae=0;)se[Wt]=Wt;return se};function Dr(_t,Wt){return _t[Wt]}var fi=function(){var _t=q([]),Wt=jn,se=lr,pe=Dr;function ge(Ae){var Qe,He,sn=_t.apply(this,arguments),kn=Ae.length,Bn=sn.length,Yn=new Array(Bn);for(Qe=0;Qe0){for(var se,pe,ge,Ae=0,Qe=_t[0].length;Ae0)for(var se,pe,ge,Ae,Qe,He,sn=0,kn=_t[Wt[0]].length;sn0?(pe[0]=Ae,pe[1]=Ae+=ge):ge<0?(pe[1]=Qe,pe[0]=Qe+=ge):(pe[0]=0,pe[1]=ge)},Mr=function(_t,Wt){if((se=_t.length)>0){for(var se,pe=0,ge=_t[Wt[0]],Ae=ge.length;pe0&&(pe=(se=_t[Wt[0]]).length)>0){for(var se,pe,ge,Ae=0,Qe=1;QeAe&&(Ae=Wt,pe=se);return pe}var $e=function(_t){var Wt=_t.map(en);return jn(_t).sort(function(se,pe){return Wt[se]-Wt[pe]})};function en(_t){for(var Wt,se=0,pe=-1,ge=_t.length;++pe0?Object(L.a)(function(J){J.setFullYear(Math.floor(J.getFullYear()/$)*$),J.setMonth(0,1),J.setHours(0,0,0,0)},function(J,X){J.setFullYear(J.getFullYear()+X*$)}):null},d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return st});var L=g(1),R=Object(L.a)(function($){$.setUTCMonth(0,1),$.setUTCHours(0,0,0,0)},function($,J){$.setUTCFullYear($.getUTCFullYear()+J)},function($,J){return J.getUTCFullYear()-$.getUTCFullYear()},function($){return $.getUTCFullYear()});R.every=function($){return isFinite($=Math.floor($))&&$>0?Object(L.a)(function(J){J.setUTCFullYear(Math.floor(J.getUTCFullYear()/$)*$),J.setUTCMonth(0,1),J.setUTCHours(0,0,0,0)},function(J,X){J.setUTCFullYear(J.getUTCFullYear()+X*$)}):null},d.a=R;var st=R.range},function(Pt,d,g){"use strict";var L;(L=function(){var R=g(27),st=g(39);return{axisTimeCombinations:{MINUTE_HOUR:"minute-hour",HOUR_DAY:"hour-daymonth",DAY_MONTH:"day-month",MONTH_YEAR:"month-year",CUSTOM:"custom"},curveMap:{linear:R.curveLinear,basis:R.curveBasis,cardinal:R.curveCardinal,catmullRom:R.curveCatmullRom,monotoneX:R.curveMonotoneX,monotoneY:R.curveMonotoneY,natural:R.curveNatural,step:R.curveStep,stepAfter:R.curveStepAfter,stepBefore:R.curveStepBefore},emptyDonutData:[{quantity:1,percentage:100}],timeBenchmarks:{ONE_AND_A_HALF_YEARS:47304e6,ONE_YEAR:31536000365,ONE_DAY:86400001},lineGradientId:"lineGradientId",timeIntervals:{timeMillisecond:st.timeMillisecond,utcMillisecond:st.utcMillisecond,timeSecond:st.timeSecond,utcSecond:st.utcSecond,timeMinute:st.timeMinute,utcMinute:st.utcMinute,timeHour:st.timeHour,utcHour:st.utcHour,timeDay:st.timeDay,utcDay:st.utcDay,timeWeek:st.timeWeek,utcWeek:st.utcWeek,timeSunday:st.timeSunday,utcSunday:st.utcSunday,timeMonday:st.timeMonday,utcMonday:st.utcMonday,timeTuesday:st.timeTuesday,utcTuesday:st.utcTuesday,timeWednesday:st.timeWednesday,utcWednesday:st.utcWednesday,timeThursday:st.timeThursday,utcThursday:st.utcThursday,timeFriday:st.timeFriday,utcFriday:st.utcFriday,timeSaturday:st.timeSaturday,utcSaturday:st.utcSaturday,timeMonth:st.timeMonth,utcMonth:st.utcMonth,timeYear:st.timeYear,utcYear:st.utcYear},FORMAT_LOCALE_URL:"https://cdn.jsdelivr.net/npm/d3-format/locale"}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";g.d(d,"b",function(){return X}),g.d(d,"c",function(){return q});var L=g(7),R=g(42),st=g(58),$=g(4);function J(Z){return function(Y){var V,N,U=Y.length,T=new Array(U),A=new Array(U),M=new Array(U);for(V=0;V=0&&(N=V.slice(U+1),V=V.slice(0,U)),{type:V,name:N}})}function X(Y){return function(){var V=this.__on;if(V){for(var N,U=0,T=-1,A=V.length;U1?$[0]+$.slice(2):$,+L.slice(st+1)]}},function(Pt,d,g){"use strict";g.r(d);var L=g(1);g.d(d,"timeInterval",function(){return L.a});var R=g(52);g.d(d,"timeMillisecond",function(){return R.a}),g.d(d,"timeMilliseconds",function(){return R.b}),g.d(d,"utcMillisecond",function(){return R.a}),g.d(d,"utcMilliseconds",function(){return R.b});var st=g(51);g.d(d,"timeSecond",function(){return st.a}),g.d(d,"timeSeconds",function(){return st.b}),g.d(d,"utcSecond",function(){return st.a}),g.d(d,"utcSeconds",function(){return st.b});var $=g(71);g.d(d,"timeMinute",function(){return $.a}),g.d(d,"timeMinutes",function(){return $.b});var J=g(70);g.d(d,"timeHour",function(){return J.a}),g.d(d,"timeHours",function(){return J.b});var X=g(53);g.d(d,"timeDay",function(){return X.b}),g.d(d,"timeDays",function(){return X.a});var q=g(5);g.d(d,"timeWeek",function(){return q.g}),g.d(d,"timeWeeks",function(){return q.h}),g.d(d,"timeSunday",function(){return q.g}),g.d(d,"timeSundays",function(){return q.h}),g.d(d,"timeMonday",function(){return q.c}),g.d(d,"timeMondays",function(){return q.d}),g.d(d,"timeTuesday",function(){return q.k}),g.d(d,"timeTuesdays",function(){return q.l}),g.d(d,"timeWednesday",function(){return q.m}),g.d(d,"timeWednesdays",function(){return q.n}),g.d(d,"timeThursday",function(){return q.i}),g.d(d,"timeThursdays",function(){return q.j}),g.d(d,"timeFriday",function(){return q.a}),g.d(d,"timeFridays",function(){return q.b}),g.d(d,"timeSaturday",function(){return q.e}),g.d(d,"timeSaturdays",function(){return q.f});var Z=g(69);g.d(d,"timeMonth",function(){return Z.a}),g.d(d,"timeMonths",function(){return Z.b});var Y=g(33);g.d(d,"timeYear",function(){return Y.a}),g.d(d,"timeYears",function(){return Y.b});var V=g(74);g.d(d,"utcMinute",function(){return V.a}),g.d(d,"utcMinutes",function(){return V.b});var N=g(73);g.d(d,"utcHour",function(){return N.a}),g.d(d,"utcHours",function(){return N.b});var U=g(54);g.d(d,"utcDay",function(){return U.a}),g.d(d,"utcDays",function(){return U.b});var T=g(6);g.d(d,"utcWeek",function(){return T.g}),g.d(d,"utcWeeks",function(){return T.h}),g.d(d,"utcSunday",function(){return T.g}),g.d(d,"utcSundays",function(){return T.h}),g.d(d,"utcMonday",function(){return T.c}),g.d(d,"utcMondays",function(){return T.d}),g.d(d,"utcTuesday",function(){return T.k}),g.d(d,"utcTuesdays",function(){return T.l}),g.d(d,"utcWednesday",function(){return T.m}),g.d(d,"utcWednesdays",function(){return T.n}),g.d(d,"utcThursday",function(){return T.i}),g.d(d,"utcThursdays",function(){return T.j}),g.d(d,"utcFriday",function(){return T.a}),g.d(d,"utcFridays",function(){return T.b}),g.d(d,"utcSaturday",function(){return T.e}),g.d(d,"utcSaturdays",function(){return T.f});var A=g(72);g.d(d,"utcMonth",function(){return A.a}),g.d(d,"utcMonths",function(){return A.b});var M=g(34);g.d(d,"utcYear",function(){return M.a}),g.d(d,"utcYears",function(){return M.b})},function(Pt,d,g){"use strict";g.d(d,"b",function(){return R}),g.d(d,"a",function(){return st});var L=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function R($){if(!(J=L.exec($)))throw new Error("invalid format: "+$);var J;return new st({fill:J[1],align:J[2],sign:J[3],symbol:J[4],zero:J[5],width:J[6],comma:J[7],precision:J[8]&&J[8].slice(1),trim:J[9],type:J[10]})}function st($){this.fill=$.fill===void 0?" ":$.fill+"",this.align=$.align===void 0?">":$.align+"",this.sign=$.sign===void 0?"-":$.sign+"",this.symbol=$.symbol===void 0?"":$.symbol+"",this.zero=!!$.zero,this.width=$.width===void 0?void 0:+$.width,this.comma=!!$.comma,this.precision=$.precision===void 0?void 0:+$.precision,this.trim=!!$.trim,this.type=$.type===void 0?"":$.type+""}R.prototype=st.prototype,st.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(Pt,d,g){"use strict";var L=g(7),R=g(36),st=g(61),$=g(60),J=g(14),X=g(62),q=g(59),Z=g(48),Y=g(31);d.a=function(V,N){var U,T=typeof N;return N==null||T==="boolean"?Object(Z.a)(N):(T==="number"?J.a:T==="string"?(U=Object(L.e)(N))?(N=U,R.a):q.a:N instanceof L.e?R.a:N instanceof Date?$.a:Object(Y.b)(N)?Y.a:Array.isArray(N)?st.b:typeof N.valueOf!="function"&&typeof N.toString!="function"||isNaN(N)?X.a:J.a)(V,N)}},function(Pt,d,g){"use strict";function L(R,st,$,J,X){var q=R*R,Z=q*R;return((1-3*R+3*q-Z)*st+(4-6*q+3*Z)*$+(1+3*R+3*q-3*Z)*J+Z*X)/6}g.d(d,"a",function(){return L}),d.b=function(R){var st=R.length-1;return function($){var J=$<=0?$=0:$>=1?($=1,st-1):Math.floor($*st),X=R[J],q=R[J+1],Z=J>0?R[J-1]:2*X-q,Y=J=0&&(st=R.slice(0,$))!=="xmlns"&&(R=R.slice($+1)),L.a.hasOwnProperty(st)?{space:L.a[st],local:R}:R}},function(Pt,d,g){"use strict";d.a=function(L){return L.ownerDocument&&L.ownerDocument.defaultView||L.document&&L||L.defaultView}},function(Pt,d,g){"use strict";var L=g(37);d.a=function(){for(var R,st=L.c;R=st.sourceEvent;)st=R;return st}},function(Pt,d,g){"use strict";g.d(d,"a",function(){return L}),g.d(d,"b",function(){return R});var L=Math.PI/180,R=180/Math.PI},function(Pt,d,g){"use strict";d.a=function(L){return function(){return L}}},function(Pt,d,g){"use strict";function L($){return $*$*$}function R($){return--$*$*$+1}function st($){return(($*=2)<=1?$*$*$:($-=2)*$*$+2)/2}g.d(d,"a",function(){return L}),g.d(d,"c",function(){return R}),g.d(d,"b",function(){return st})},function(Pt,d,g){"use strict";g.d(d,"b",function(){return q}),g.d(d,"a",function(){return Z}),g.d(d,"d",function(){return M}),g.d(d,"c",function(){return O});var L=g(15),R=g(7),st=g(47),$=6/29,J=3*$*$;function X(c){if(c instanceof Y)return new Y(c.l,c.a,c.b,c.opacity);if(c instanceof H)return z(c);c instanceof R.b||(c=Object(R.h)(c));var D,it,Q=T(c.r),W=T(c.g),k=T(c.b),_=V((.2225045*Q+.7168786*W+.0606169*k)/1);return Q===W&&W===k?D=it=_:(D=V((.4360747*Q+.3850649*W+.1430804*k)/.96422),it=V((.0139322*Q+.0971045*W+.7141733*k)/.82521)),new Y(116*_-16,500*(D-_),200*(_-it),c.opacity)}function q(c,D){return new Y(c,0,0,D==null?1:D)}function Z(c,D,it,Q){return arguments.length===1?X(c):new Y(c,D,it,Q==null?1:Q)}function Y(c,D,it,Q){this.l=+c,this.a=+D,this.b=+it,this.opacity=+Q}function V(c){return c>.008856451679035631?Math.pow(c,.3333333333333333):c/J+.13793103448275862}function N(c){return c>$?c*c*c:J*(c-.13793103448275862)}function U(c){return 255*(c<=.0031308?12.92*c:1.055*Math.pow(c,.4166666666666667)-.055)}function T(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function A(c){if(c instanceof H)return new H(c.h,c.c,c.l,c.opacity);if(c instanceof Y||(c=X(c)),c.a===0&&c.b===0)return new H(NaN,00?$>1?Object(L.a)(function(J){J.setTime(Math.floor(J/$)*$)},function(J,X){J.setTime(+J+X*$)},function(J,X){return(X-J)/$}):R:null},d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"a",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setHours(0,0,0,0)},function(J,X){J.setDate(J.getDate()+X)},function(J,X){return(X-J-(X.getTimezoneOffset()-J.getTimezoneOffset())*R.c)/R.a},function(J){return J.getDate()-1});d.b=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setUTCHours(0,0,0,0)},function(J,X){J.setUTCDate(J.getUTCDate()+X)},function(J,X){return(X-J)/R.a},function(J){return J.getUTCDate()-1});d.a=st;var $=st.range},,function(Pt,d,g){"use strict";g.d(d,"b",function(){return R}),g.d(d,"c",function(){return st}),g.d(d,"a",function(){return J});var L,R,st,$=g(68);function J(X){return L=Object($.a)(X),R=L.format,st=L.formatPrefix,L}J({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(Pt,d){var g=/^(?:0|[1-9]\d*)$/;function L(it,Q,W){switch(W.length){case 0:return it.call(Q);case 1:return it.call(Q,W[0]);case 2:return it.call(Q,W[0],W[1]);case 3:return it.call(Q,W[0],W[1],W[2])}return it.apply(Q,W)}var R,st,$=Object.prototype,J=$.hasOwnProperty,X=$.toString,q=$.propertyIsEnumerable,Z=(R=Object.keys,st=Object,function(it){return R(st(it))}),Y=Math.max,V=!q.call({valueOf:1},"valueOf");function N(it,Q){var W=O(it)||function(h){return function(l){return function(u){return!!u&&typeof u=="object"}(l)&&H(l)}(h)&&J.call(h,"callee")&&(!q.call(h,"callee")||X.call(h)=="[object Arguments]")}(it)?function(h,l){for(var u=-1,v=Array(h);++u-1&&it%1==0&&it-1&&Q%1==0&&Q<=9007199254740991}(it.length)&&!function(Q){var W=z(Q)?X.call(Q):"";return W=="[object Function]"||W=="[object GeneratorFunction]"}(it)}function z(it){var Q=typeof it;return!!it&&(Q=="object"||Q=="function")}var c,D=(c=function(it,Q){if(V||A(Q)||H(Q))(function(k,_,C,h){C||(C={});for(var l=-1,u=_.length;++l1?Q[k-1]:void 0,C=k>2?Q[2]:void 0;for(_=c.length>3&&typeof _=="function"?(k--,_):void 0,C&&function(l,u,v){if(!z(v))return!1;var I=typeof u;return!!(I=="number"?H(v)&&T(u,v.length):I=="string"&&u in v)&&M(v[u],l)}(Q[0],Q[1],C)&&(_=k<3?void 0:_,k=1),it=Object(it);++WY&&(Z=J.slice(Y,Z),N[V]?N[V]+=Z:N[++V]=Z),(X=X[0])===(q=q[0])?N[V]?N[V]+=q:N[++V]=q:(N[++V]=null,U.push({i:V,x:Object(L.a)(X,q)})),Y=st.lastIndex;return Y=12)]},q:function(Pe){return 1+~~(Pe.getMonth()/3)},Q:Rt,s:zt,S:F,u:lt,U:rt,V:gt,w:vt,W:Ot,x:null,X:null,y:At,Y:$t,Z:Xt,"%":Et},tn={a:function(Pe){return bn[Pe.getUTCDay()]},A:function(Pe){return pn[Pe.getUTCDay()]},b:function(Pe){return vn[Pe.getUTCMonth()]},B:function(Pe){return Ln[Pe.getUTCMonth()]},c:null,d:Ct,e:Ct,f:le,H:wt,I:Dt,j:jt,L:re,m:Gt,M:he,p:function(Pe){return Ze[+(Pe.getUTCHours()>=12)]},q:function(Pe){return 1+~~(Pe.getUTCMonth()/3)},Q:Rt,s:zt,S:ve,u:Ce,U:Te,V:Ke,w:rn,W:un,x:null,X:null,y:Qt,Y:Kt,Z:Jt,"%":Et},Mn={a:function(Pe,wn,an){var gn=Fe.exec(wn.slice(an));return gn?(Pe.w=qe[gn[0].toLowerCase()],an+gn[0].length):-1},A:function(Pe,wn,an){var gn=dr.exec(wn.slice(an));return gn?(Pe.w=ye[gn[0].toLowerCase()],an+gn[0].length):-1},b:function(Pe,wn,an){var gn=Ue.exec(wn.slice(an));return gn?(Pe.m=Re[gn[0].toLowerCase()],an+gn[0].length):-1},B:function(Pe,wn,an){var gn=be.exec(wn.slice(an));return gn?(Pe.m=je[gn[0].toLowerCase()],an+gn[0].length):-1},c:function(Pe,wn,an){return _n(Pe,ce,wn,an)},d:u,e:u,f:ct,H:I,I,j:v,L:K,m:l,M:S,p:function(Pe,wn,an){var gn=Tn.exec(wn.slice(an));return gn?(Pe.p=Qn[gn[0].toLowerCase()],an+gn[0].length):-1},q:h,Q:dt,s:pt,S:b,u:D,U:it,V:Q,w:c,W,x:function(Pe,wn,an){return _n(Pe,Se,wn,an)},X:function(Pe,wn,an){return _n(Pe,xe,wn,an)},y:_,Y:k,Z:C,"%":et};function ke(Pe,wn){return function(an){var gn,Sn,xn,hr=[],nr=-1,pr=0,vr=Pe.length;for(an instanceof Date||(an=new Date(+an));++nr53)return null;"w"in xn||(xn.w=1),"Z"in xn?(Sn=(gn=Z(Y(xn.y,0,1))).getUTCDay(),gn=Sn>4||Sn===0?L.c.ceil(gn):Object(L.c)(gn),gn=R.a.offset(gn,7*(xn.V-1)),xn.y=gn.getUTCFullYear(),xn.m=gn.getUTCMonth(),xn.d=gn.getUTCDate()+(xn.w+6)%7):(Sn=(gn=q(Y(xn.y,0,1))).getDay(),gn=Sn>4||Sn===0?st.c.ceil(gn):Object(st.c)(gn),gn=$.b.offset(gn,7*(xn.V-1)),xn.y=gn.getFullYear(),xn.m=gn.getMonth(),xn.d=gn.getDate()+(xn.w+6)%7)}else("W"in xn||"U"in xn)&&("w"in xn||(xn.w="u"in xn?xn.u%7:"W"in xn?1:0),Sn="Z"in xn?Z(Y(xn.y,0,1)).getUTCDay():q(Y(xn.y,0,1)).getDay(),xn.m=0,xn.d="W"in xn?(xn.w+6)%7+7*xn.W-(Sn+5)%7:xn.w+7*xn.U-(Sn+6)%7);return"Z"in xn?(xn.H+=xn.Z/100|0,xn.M+=xn.Z%100,Z(xn)):q(xn)}}function _n(Pe,wn,an,gn){for(var Sn,xn,hr=0,nr=wn.length,pr=an.length;hr=pr)return-1;if((Sn=wn.charCodeAt(hr++))===37){if(Sn=wn.charAt(hr++),!(xn=Mn[Sn in N?wn.charAt(hr++):Sn])||(gn=xn(Pe,an,gn))<0)return-1}else if(Sn!=an.charCodeAt(gn++))return-1}return gn}return Ie.x=ke(Se,Ie),Ie.X=ke(xe,Ie),Ie.c=ke(ce,Ie),tn.x=ke(Se,tn),tn.X=ke(xe,tn),tn.c=ke(ce,tn),{format:function(Pe){var wn=ke(Pe+="",Ie);return wn.toString=function(){return Pe},wn},parse:function(Pe){var wn=on(Pe+="",!1);return wn.toString=function(){return Pe},wn},utcFormat:function(Pe){var wn=ke(Pe+="",tn);return wn.toString=function(){return Pe},wn},utcParse:function(Pe){var wn=on(Pe+="",!0);return wn.toString=function(){return Pe},wn}}}var N={"-":"",_:" ",0:"0"},U=/^\s*\d+/,T=/^%/,A=/[\\^$*+?|[\]().{}]/g;function M(Ft,ce,Se){var xe=Ft<0?"-":"",Ze=(xe?-Ft:Ft)+"",pn=Ze.length;return xe+(pn68?1900:2e3),Se+xe[0].length):-1}function C(Ft,ce,Se){var xe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ce.slice(Se,Se+6));return xe?(Ft.Z=xe[1]?0:-(xe[2]+(xe[3]||"00")),Se+xe[0].length):-1}function h(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+1));return xe?(Ft.q=3*xe[0]-3,Se+xe[0].length):-1}function l(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.m=xe[0]-1,Se+xe[0].length):-1}function u(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.d=+xe[0],Se+xe[0].length):-1}function v(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+3));return xe?(Ft.m=0,Ft.d=+xe[0],Se+xe[0].length):-1}function I(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.H=+xe[0],Se+xe[0].length):-1}function S(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.M=+xe[0],Se+xe[0].length):-1}function b(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.S=+xe[0],Se+xe[0].length):-1}function K(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+3));return xe?(Ft.L=+xe[0],Se+xe[0].length):-1}function ct(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+6));return xe?(Ft.L=Math.floor(xe[0]/1e3),Se+xe[0].length):-1}function et(Ft,ce,Se){var xe=T.exec(ce.slice(Se,Se+1));return xe?Se+xe[0].length:-1}function dt(Ft,ce,Se){var xe=U.exec(ce.slice(Se));return xe?(Ft.Q=+xe[0],Se+xe[0].length):-1}function pt(Ft,ce,Se){var xe=U.exec(ce.slice(Se));return xe?(Ft.s=+xe[0],Se+xe[0].length):-1}function bt(Ft,ce){return M(Ft.getDate(),ce,2)}function Mt(Ft,ce){return M(Ft.getHours(),ce,2)}function w(Ft,ce){return M(Ft.getHours()%12||12,ce,2)}function B(Ft,ce){return M(1+$.b.count(Object(J.a)(Ft),Ft),ce,3)}function tt(Ft,ce){return M(Ft.getMilliseconds(),ce,3)}function nt(Ft,ce){return tt(Ft,ce)+"000"}function x(Ft,ce){return M(Ft.getMonth()+1,ce,2)}function y(Ft,ce){return M(Ft.getMinutes(),ce,2)}function F(Ft,ce){return M(Ft.getSeconds(),ce,2)}function lt(Ft){var ce=Ft.getDay();return ce===0?7:ce}function rt(Ft,ce){return M(st.g.count(Object(J.a)(Ft)-1,Ft),ce,2)}function gt(Ft,ce){var Se=Ft.getDay();return Ft=Se>=4||Se===0?Object(st.i)(Ft):st.i.ceil(Ft),M(st.i.count(Object(J.a)(Ft),Ft)+(Object(J.a)(Ft).getDay()===4),ce,2)}function vt(Ft){return Ft.getDay()}function Ot(Ft,ce){return M(st.c.count(Object(J.a)(Ft)-1,Ft),ce,2)}function At(Ft,ce){return M(Ft.getFullYear()%100,ce,2)}function $t(Ft,ce){return M(Ft.getFullYear()%1e4,ce,4)}function Xt(Ft){var ce=Ft.getTimezoneOffset();return(ce>0?"-":(ce*=-1,"+"))+M(ce/60|0,"0",2)+M(ce%60,"0",2)}function Ct(Ft,ce){return M(Ft.getUTCDate(),ce,2)}function wt(Ft,ce){return M(Ft.getUTCHours(),ce,2)}function Dt(Ft,ce){return M(Ft.getUTCHours()%12||12,ce,2)}function jt(Ft,ce){return M(1+R.a.count(Object(X.a)(Ft),Ft),ce,3)}function re(Ft,ce){return M(Ft.getUTCMilliseconds(),ce,3)}function le(Ft,ce){return re(Ft,ce)+"000"}function Gt(Ft,ce){return M(Ft.getUTCMonth()+1,ce,2)}function he(Ft,ce){return M(Ft.getUTCMinutes(),ce,2)}function ve(Ft,ce){return M(Ft.getUTCSeconds(),ce,2)}function Ce(Ft){var ce=Ft.getUTCDay();return ce===0?7:ce}function Te(Ft,ce){return M(L.g.count(Object(X.a)(Ft)-1,Ft),ce,2)}function Ke(Ft,ce){var Se=Ft.getUTCDay();return Ft=Se>=4||Se===0?Object(L.i)(Ft):L.i.ceil(Ft),M(L.i.count(Object(X.a)(Ft),Ft)+(Object(X.a)(Ft).getUTCDay()===4),ce,2)}function rn(Ft){return Ft.getUTCDay()}function un(Ft,ce){return M(L.c.count(Object(X.a)(Ft)-1,Ft),ce,2)}function Qt(Ft,ce){return M(Ft.getUTCFullYear()%100,ce,2)}function Kt(Ft,ce){return M(Ft.getUTCFullYear()%1e4,ce,4)}function Jt(){return"+0000"}function Et(){return"%"}function Rt(Ft){return+Ft}function zt(Ft){return Math.floor(+Ft/1e3)}},function(Pt,d,g){"use strict";var L=g(23);d.a=function(R){return typeof R=="string"?new L.a([[document.querySelector(R)]],[document.documentElement]):new L.a([[R]],L.c)}},function(Pt,d,g){"use strict";function L(){return[]}d.a=function(R){return R==null?L:function(){return this.querySelectorAll(R)}}},function(Pt,d,g){"use strict";d.a=function(L){return function(){return this.matches(L)}}},function(Pt,d,g){"use strict";g.d(d,"b",function(){return J});var L=g(45);function R(X){return function(){this.style.removeProperty(X)}}function st(X,q,Z){return function(){this.style.setProperty(X,q,Z)}}function $(X,q,Z){return function(){var Y=q.apply(this,arguments);Y==null?this.style.removeProperty(X):this.style.setProperty(X,Y,Z)}}function J(X,q){return X.style.getPropertyValue(q)||Object(L.a)(X).getComputedStyle(X,null).getPropertyValue(q)}d.a=function(X,q,Z){return arguments.length>1?this.each((q==null?R:typeof q=="function"?$:st)(X,q,Z==null?"":Z)):J(this.node(),X)}},function(Pt,d,g){"use strict";var L,R=g(22),st=g(40),$=g(38),J=function(V,N){var U=Object($.a)(V,N);if(!U)return V+"";var T=U[0],A=U[1];return A<0?"0."+new Array(-A).join("0")+T:T.length>A+1?T.slice(0,A+1)+"."+T.slice(A+1):T+new Array(A-T.length+2).join("0")},X={"%":function(V,N){return(100*V).toFixed(N)},b:function(V){return Math.round(V).toString(2)},c:function(V){return V+""},d:function(V){return Math.round(V).toString(10)},e:function(V,N){return V.toExponential(N)},f:function(V,N){return V.toFixed(N)},g:function(V,N){return V.toPrecision(N)},o:function(V){return Math.round(V).toString(8)},p:function(V,N){return J(100*V,N)},r:J,s:function(V,N){var U=Object($.a)(V,N);if(!U)return V+"";var T=U[0],A=U[1],M=A-(L=3*Math.max(-8,Math.min(8,Math.floor(A/3))))+1,O=T.length;return M===O?T:M>O?T+new Array(M-O+1).join("0"):M>0?T.slice(0,M)+"."+T.slice(M):"0."+new Array(1-M).join("0")+Object($.a)(V,Math.max(0,N+M-1))[0]},X:function(V){return Math.round(V).toString(16).toUpperCase()},x:function(V){return Math.round(V).toString(16)}},q=function(V){return V},Z=Array.prototype.map,Y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];d.a=function(V){var N,U,T=V.grouping===void 0||V.thousands===void 0?q:(N=Z.call(V.grouping,Number),U=V.thousands+"",function(Q,W){for(var k=Q.length,_=[],C=0,h=N[0],l=0;k>0&&h>0&&(l+h+1>W&&(h=Math.max(1,W-l)),_.push(Q.substring(k-=h,k+h)),!((l+=h+1)>W));)h=N[C=(C+1)%N.length];return _.reverse().join(U)}),A=V.currency===void 0?"":V.currency[0]+"",M=V.currency===void 0?"":V.currency[1]+"",O=V.decimal===void 0?".":V.decimal+"",H=V.numerals===void 0?q:function(Q){return function(W){return W.replace(/[0-9]/g,function(k){return Q[+k]})}}(Z.call(V.numerals,String)),z=V.percent===void 0?"%":V.percent+"",c=V.minus===void 0?"-":V.minus+"",D=V.nan===void 0?"NaN":V.nan+"";function it(Q){var W=(Q=Object(st.b)(Q)).fill,k=Q.align,_=Q.sign,C=Q.symbol,h=Q.zero,l=Q.width,u=Q.comma,v=Q.precision,I=Q.trim,S=Q.type;S==="n"?(u=!0,S="g"):X[S]||(v===void 0&&(v=12),I=!0,S="g"),(h||W==="0"&&k==="=")&&(h=!0,W="0",k="=");var b=C==="$"?A:C==="#"&&/[boxX]/.test(S)?"0"+S.toLowerCase():"",K=C==="$"?M:/[%p]/.test(S)?z:"",ct=X[S],et=/[defgprs%]/.test(S);function dt(pt){var bt,Mt,w,B=b,tt=K;if(S==="c")tt=ct(pt)+tt,pt="";else{var nt=(pt=+pt)<0;if(pt=isNaN(pt)?D:ct(Math.abs(pt),v),I&&(pt=function(F){t:for(var lt,rt=F.length,gt=1,vt=-1;gt0&&(vt=0)}return vt>0?F.slice(0,vt)+F.slice(lt+1):F}(pt)),nt&&+pt==0&&(nt=!1),B=(nt?_==="("?_:c:_==="-"||_==="("?"":_)+B,tt=(S==="s"?Y[8+L/3]:"")+tt+(nt&&_==="("?")":""),et){for(bt=-1,Mt=pt.length;++bt(w=pt.charCodeAt(bt))||w>57){tt=(w===46?O+pt.slice(bt+1):pt.slice(bt))+tt,pt=pt.slice(0,bt);break}}}u&&!h&&(pt=T(pt,1/0));var x=B.length+pt.length+tt.length,y=x>1)+B+pt+tt+y.slice(x);break;default:pt=y+B+pt+tt}return H(pt)}return v=v===void 0?6:/[gprs]/.test(S)?Math.max(1,Math.min(21,v)):Math.max(0,Math.min(20,v)),dt.toString=function(){return Q+""},dt}return{format:it,formatPrefix:function(Q,W){var k=it(((Q=Object(st.b)(Q)).type="f",Q)),_=3*Math.max(-8,Math.min(8,Math.floor(Object(R.a)(W)/3))),C=Math.pow(10,-_),h=Y[8+_/3];return function(l){return k(C*l)+h}}}}},function(Pt,d,g){"use strict";g.d(d,"b",function(){return st});var L=g(1),R=Object(L.a)(function($){$.setDate(1),$.setHours(0,0,0,0)},function($,J){$.setMonth($.getMonth()+J)},function($,J){return J.getMonth()-$.getMonth()+12*(J.getFullYear()-$.getFullYear())},function($){return $.getMonth()});d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setTime(J-J.getMilliseconds()-J.getSeconds()*R.d-J.getMinutes()*R.c)},function(J,X){J.setTime(+J+X*R.b)},function(J,X){return(X-J)/R.b},function(J){return J.getHours()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setTime(J-J.getMilliseconds()-J.getSeconds()*R.d)},function(J,X){J.setTime(+J+X*R.c)},function(J,X){return(X-J)/R.c},function(J){return J.getMinutes()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return st});var L=g(1),R=Object(L.a)(function($){$.setUTCDate(1),$.setUTCHours(0,0,0,0)},function($,J){$.setUTCMonth($.getUTCMonth()+J)},function($,J){return J.getUTCMonth()-$.getUTCMonth()+12*(J.getUTCFullYear()-$.getUTCFullYear())},function($){return $.getUTCMonth()});d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setUTCMinutes(0,0,0)},function(J,X){J.setTime(+J+X*R.b)},function(J,X){return(X-J)/R.b},function(J){return J.getUTCHours()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setUTCSeconds(0,0)},function(J,X){J.setTime(+J+X*R.c)},function(J,X){return(X-J)/R.c},function(J){return J.getUTCMinutes()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";var L,R=function(J,X){if(Array.isArray(J))return J;if(Symbol.iterator in Object(J))return function(q,Z){var Y=[],V=!0,N=!1,U=void 0;try{for(var T,A=q[Symbol.iterator]();!(V=(T=A.next()).done)&&(Y.push(T.value),!Z||Y.length!==Z);V=!0);}catch(M){N=!0,U=M}finally{try{!V&&A.return&&A.return()}finally{if(N)throw U}}return Y}(J,X);throw new TypeError("Invalid attempt to destructure non-iterable instance")},st=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(J){return typeof J}:function(J){return J&&typeof Symbol=="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J};function $(J,X,q){return X in J?Object.defineProperty(J,X,{value:q,enumerable:!0,configurable:!0,writable:!0}):J[X]=q,J}(L=function(J){var X,q=g(39),Z=g(28),Y=g(35),V=Y.axisTimeCombinations,N=Y.timeBenchmarks,U=g(86),T=U.convertMillisecondsToDays,A=U.getLocaleDateFormatter,M={minute:Z.timeFormat("%M m"),hour:Z.timeFormat("%H %p"),day:Z.timeFormat("%e"),daymonth:Z.timeFormat("%d %b"),month:Z.timeFormat("%b"),year:Z.timeFormat("%Y")},O=($(X={},V.MINUTE_HOUR,q.timeHour.every(1)),$(X,V.HOUR_DAY,q.timeDay.every(1)),$(X,V.DAY_MONTH,q.timeMonth.every(1)),$(X,V.MONTH_YEAR,q.timeYear.every(1)),X),H=function(c){var D=N.ONE_YEAR;return c2&&arguments[2]!==void 0?arguments[2]:null,Q=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,W=new Date(c[0].date),k=new Date(c[c.length-1].date),_=k-W;Q&&(typeof Intl=="undefined"||(typeof Intl=="undefined"?"undefined":st(Intl))==="object"&&!Intl.DateTimeFormat)&&(Q=null),it||(it=H(_));var C=it.split("-"),h=R(C,2),l=h[0],u=h[1],v=O[it],I=z(D,T(_));return{minor:{format:Q?A(Q,l):M[l],tick:I},major:{format:Q?A(Q,u):M[u],tick:v}}}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L;(L=function(R){g(2);var st="highlight-filter";return{bounceCircleHighlight:function($,J,X){var q=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2*X,Z=100,Y=50;$.transition().ease(J).duration(Z).attr("r",q).transition().ease(J).delay(Y).duration(Z).attr("r",X)},createFilterContainer:function($){return $.append("defs").append("filter").attr("id",st)},createGausianBlur:function($){return $.append("feGaussianBlur").attr("stdDeviation",1).attr("result","coloredBlur"),st},createWhiteGlow:function($){$.attr("x","-5000%").attr("y","-5000%").attr("width","10000%").attr("height","10000%"),$.append("feFlood").attr("result","flood").attr("flood-color","#ffffff").attr("flood-opacity","1"),$.append("feComposite").attr("result","mask").attr("in2","SourceGraphic").attr("operator","in").attr("in","flood"),$.append("feMorphology").attr("result","dilated").attr("operator","dilate").attr("radius","2").attr("in","mask"),$.append("feGaussianBlur").attr("result","blurred").attr("stdDeviation","5").attr("in","dilated");var J=$.append("feMerge");return J.append("feMergeNode").attr("in","blurred"),J.append("feMergeNode").attr("in","SourceGraphic"),st},createGlow:function($){$.attr("x","-30%").attr("y","-30%").attr("width","160%").attr("height","160%"),$.append("feGaussianBlur").attr("stdDeviation","0.9 0.9").attr("result","glow");var J=$.append("feMerge");return J.append("feMergeNode").attr("in","glow"),J.append("feMergeNode").attr("in","glow"),J.append("feMergeNode").attr("in","glow"),st},createGlowWithMatrix:function($){$.attr("x","-500%").attr("y","-500%").attr("width","1800%").attr("height","1800%"),$.append("feColorMatrix").attr("type","matrix").attr("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"),$.append("feGaussianBlur").attr("stdDeviation","1").attr("result","coloredBlur").attr("in","SourceGraphic");var J=$.append("feMerge");return J.append("feMergeNode").attr("in","coloredBlur"),J.append("feMergeNode").attr("in","SourceGraphic"),st}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R,st,$,J=g(14),X=180/Math.PI,q={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},Z=function(U,T,A,M,O,H){var z,c,D;return(z=Math.sqrt(U*U+T*T))&&(U/=z,T/=z),(D=U*A+T*M)&&(A-=U*D,M-=T*D),(c=Math.sqrt(A*A+M*M))&&(A/=c,M/=c,D/=c),U*M180?Q+=360:Q-it>180&&(it+=360),k.push({i:W.push(O(W)+"rotate(",null,M)-2,x:Object(J.a)(it,Q)})):Q&&W.push(O(W)+"rotate("+Q+M)}(H.rotate,z.rotate,c,D),function(it,Q,W,k){it!==Q?k.push({i:W.push(O(W)+"skewX(",null,M)-2,x:Object(J.a)(it,Q)}):Q&&W.push(O(W)+"skewX("+Q+M)}(H.skewX,z.skewX,c,D),function(it,Q,W,k,_,C){if(it!==W||Q!==k){var h=_.push(O(_)+"scale(",null,",",null,")");C.push({i:h-4,x:Object(J.a)(it,W)},{i:h-2,x:Object(J.a)(Q,k)})}else W===1&&k===1||_.push(O(_)+"scale("+W+","+k+")")}(H.scaleX,H.scaleY,z.scaleX,z.scaleY,c,D),H=z=null,function(it){for(var Q,W=-1,k=D.length;++W=0&&(V=Y.slice(N+1),Y=Y.slice(0,N)),Y&&!Z.hasOwnProperty(Y))throw new Error("unknown type: "+Y);return{type:Y,name:V}})}function J(q,Z){for(var Y,V=0,N=q.length;V0)for(var Y,V,N=new Array(Y),U=0;U1&&arguments[1]!==void 0?arguments[1]:"day",J=localeTimeMap[$],X=new Intl.DateTimeFormat(st,J);return function(q){return X.format(q)}}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";Object.defineProperty(d,"__esModule",{value:!0}),d.colors=d.bullet=d.brush=d.step=d.heatmap=d.stackedBar=d.groupedRow=d.groupedBar=d.scatterPlot=d.stackedArea=d.sparkline=d.row=d.miniTooltip=d.tooltip=d.loadingStates=d.line=d.legend=d.donut=d.bar=void 0;var L=D(g(89)),R=D(g(95)),st=D(g(96)),$=D(g(97)),J=D(g(18)),X=D(g(98)),q=D(g(100)),Z=D(g(101)),Y=D(g(102)),V=D(g(103)),N=D(g(104)),U=D(g(105)),T=D(g(106)),A=D(g(107)),M=D(g(108)),O=D(g(109)),H=D(g(110)),z=D(g(111)),c=D(g(10));function D(it){return it&&it.__esModule?it:{default:it}}d.bar=L.default,d.donut=R.default,d.legend=st.default,d.line=$.default,d.loadingStates=J.default,d.tooltip=q.default,d.miniTooltip=Z.default,d.row=X.default,d.sparkline=Y.default,d.stackedArea=V.default,d.scatterPlot=N.default,d.groupedBar=U.default,d.groupedRow=T.default,d.stackedBar=A.default,d.heatmap=M.default,d.step=O.default,d.brush=H.default,d.bullet=z.default,d.colors=c.default},,function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$>18&63)+Y.charAt(O>>12&63)+Y.charAt(O>>6&63)+Y.charAt(63&O);return H==2?(T=U.charCodeAt(c)<<8,A=U.charCodeAt(++c),z+=Y.charAt((O=T+A)>>10)+Y.charAt(O>>4&63)+Y.charAt(O<<2&63)+"="):H==1&&(O=U.charCodeAt(c),z+=Y.charAt(O>>2)+Y.charAt(O<<4&63)+"=="),z},decode:function(U){var T=(U=String(U).replace(V,"")).length;T%4==0&&(T=(U=U.replace(/==?$/,"")).length),(T%4==1||/[^+a-zA-Z0-9/]/.test(U))&&Z("Invalid character: the string to be decoded is not correctly encoded.");for(var A,M,O=0,H="",z=-1;++z>(-2*O&6)));return H},version:"0.1.0"};(st=function(){return N}.call(d,g,d,L))===void 0||(L.exports=st)})()}).call(this,g(92)(Pt),g(93))},function(Pt,d){Pt.exports=function(g){return g.webpackPolyfill||(g.deprecate=function(){},g.paths=[],g.children||(g.children=[]),Object.defineProperty(g,"loaded",{enumerable:!0,get:function(){return g.l}}),Object.defineProperty(g,"id",{enumerable:!0,get:function(){return g.i}}),g.webpackPolyfill=1),g}},function(Pt,d){var g;g=function(){return this}();try{g=g||new Function("return this")()}catch(L){typeof window=="object"&&(g=window)}Pt.exports=g},function(Pt,d,g){"use strict";var L,R=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st};(L=function(st){var $=g(9).formatDefaultLocale,J=["decimal","thousands","grouping","currency"];return{setDefaultLocale:function(X){if(function(q){return(q===void 0?"undefined":R(q))=="object"&&J.every(function(Z){return q.hasOwnProperty(Z)})}(X))return $(X);throw new Error("Please pass in a valid locale object definition")}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$2&&arguments[2]!==void 0?arguments[2]:0;Y.select(Gt).transition().delay(ve).attrTween("d",function(Ce){var Te=X.interpolate(Ce.outerRadius,he);return function(Ke){return Ce.outerRadius=Te(Ke),u(Ce)}})}function re(Gt){var he=void 0;return Gt.innerRadius=0,he=X.interpolate({startAngle:0,endAngle:0},Gt),function(ve){return u(he(ve))}}function le(Gt,he){var ve=_/5;N.wrapText.call(null,0,ve,he,Gt.node())}return Ot.centeredTextFunction=function(Gt){return arguments.length?(x=Gt,this):x},Ot.colorSchema=function(Gt){return arguments.length?(nt=Gt,this):nt},Ot.emptyDataConfig=function(Gt){return arguments.length?(Mt=Gt,this):Mt},Ot.exportChart=function(Gt,he){V.call(Ot,I,Gt,he)},Ot.externalRadius=function(Gt){return arguments.length?(_=Gt,this):_},Ot.hasHoverAnimation=function(Gt){return arguments.length?(dt=Gt,this):dt},Ot.hasFixedHighlightedSlice=function(Gt){return arguments.length?(et=Gt,this):et},Ot.hasLastHoverSliceHighlighted=function(Gt){return arguments.length?(pt=Gt,this):pt},Ot.height=function(Gt){return arguments.length?(z=Gt,this):z},Ot.highlightSliceById=function(Gt){return arguments.length?(K=Gt,this):K},Ot.internalRadius=function(Gt){return arguments.length?(C=Gt,this):C},Ot.isAnimated=function(Gt){return arguments.length?(S=Gt,this):S},Ot.loadingState=function(Gt){return arguments.length?(c=Gt,this):c},Ot.margin=function(Gt){return arguments.length?(O=R({},O,Gt),this):O},Ot.numberFormat=function(Gt){return arguments.length?(B=Gt,this):B},Ot.on=function(){var Gt=vt.on.apply(vt,arguments);return Gt===vt?Ot:Gt},Ot.orderingFunction=function(Gt){return arguments.length?(lt=Gt,this):lt},Ot.percentageFormat=function(Gt){return arguments.length?(w=Gt,this):w},Ot.radiusHoverOffset=function(Gt){return arguments.length?(it=Gt,this):it},Ot.width=function(Gt){return arguments.length?(H=Gt,this):H},Ot}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$0&&v.select("g.legend-container-group").attr("transform","translate("+nt+",0)")):function(){v.select(".legend-group").selectAll("g").remove(),(C=v.select(".legend-group").selectAll("g.legend-line").data(u)).enter().append("g").classed("legend-line",!0).append("g").classed("legend-entry",!0).attr("data-item",it).attr("transform",function(F,lt){return"translate("+(U+K())+","+(lt+1)*(l/(u.length+1))+")"}).merge(C).append("circle").classed("legend-circle",!0).attr("cx",U/2).attr("cy",-5).attr("r",U/2).style("fill",k).style("stroke-width",1),v.select(".legend-group").selectAll("g.legend-line").selectAll("g.legend-entry").append("text").classed("legend-entry-name",!0).text(Q).attr("x",K()).style("font-size","12px").style("letter-spacing","0.5px"),z?v.select(".legend-group").selectAll("g.legend-line").selectAll("g.legend-entry").append("text").classed("legend-entry-value",!0).text(W).attr("x",h-40).style("font-size","12px").style("letter-spacing","0.8px").style("text-anchor","end").style("startOffset","100%"):function(){var F=v.select("g.legend-container-group").node().getBoundingClientRect().width,lt=V-F,rt=lt/2-F/2;lt>0&&v.select("g.legend-container-group").attr("transform","translate("+rt+",0)")}(),v.select(".legend-group").selectAll("g.legend-line").exit().transition().style("opacity",0).remove()}(),H&&(S(),b(H))})}function S(){v.select(".legend-group").selectAll("g.legend-entry").classed("is-faded",!1)}function b(ct){var et=v.select('[data-item="'+ct+'"]');et.nodes().length&&(v.select(".legend-group").selectAll("g.legend-entry").classed("is-faded",!0),et.classed("is-faded",!1))}function K(){return T*U}return I.clearHighlight=function(){S()},I.colorSchema=function(ct){return arguments.length?(D=ct,this):D},I.height=function(ct){return arguments.length?(N=ct,this):N},I.highlight=function(ct){S(),b(ct)},I.highlightEntryById=function(ct){return arguments.length?(H=ct,this):H},I.isHorizontal=function(ct){return arguments.length?(O=ct,this):O},I.margin=function(ct){return arguments.length?(Y=R({},Y,ct),this):Y},I.marginRatio=function(ct){return arguments.length?(T=ct,this):T},I.markerSize=function(ct){return arguments.length?(U=ct,this):U},I.numberFormat=function(ct){return arguments.length?(A=ct,this):A},I.unit=function(ct){return arguments.length?(M=ct,this):M},I.width=function(ct){return arguments.length?(V=ct,this):V},I}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=function(J,X){if(Array.isArray(J))return J;if(Symbol.iterator in Object(J))return function(q,Z){var Y=[],V=!0,N=!1,U=void 0;try{for(var T,A=q[Symbol.iterator]();!(V=(T=A.next()).done)&&(Y.push(T.value),!Z||Y.length!==Z);V=!0);}catch(M){N=!0,U=M}finally{try{!V&&A.return&&A.return()}finally{if(N)throw U}}return Y}(J,X);throw new TypeError("Invalid attempt to destructure non-iterable instance")},st=Object.assign||function(J){for(var X=1;X=0||Object.prototype.hasOwnProperty.call(si,Bi)&&(Mr[Bi]=si[Bi]);return Mr}(lr,["dates"]),fi=jn.map(function(si){return{date:new Date(si[Ke]),value:+si[rn]}});return jr.push(st({dates:fi},Dr)),jr},[]),dataByDate:vr,dataRange:rr}}(wn);ve=an.dataByTopic,Ce=an.dataByDate,Te=an.dataRange;var gn,Sn,xn,hr=jt?300:0;Mt=b-S.left-S.right-hr,w=K-S.top-S.bottom,function(){var nr=X.min(ve,function(lr){var jn=lr.dates;return X.min(jn,ye)}),pr=X.max(ve,function(lr){var jn=lr.dates;return X.max(jn,ye)}),vr=X.max(ve,function(lr){var jn=lr.dates;return X.max(jn,Fe)}),rr=X.min(ve,function(lr){var jn=lr.dates;return X.min(jn,Fe)}),Rr=rr<0?rr:0;B=U.scaleTime().domain([nr,pr]).rangeRound([0,Mt]),tt=U.scaleLinear().domain([Rr,Math.abs(vr)]).rangeRound([w,0]).nice();var jr=(nt=U.scaleOrdinal().range(rt).domain(ve.map(qe))).range();gt=nt.domain().reduce(function(lr,jn,Dr){return lr[jn]=jr[Dr],lr},{})}(),function(nr){pt||(pt=A.select(nr).append("svg").classed("britechart line-chart",!0),function(){var pr=pt.append("g").classed("container-group",!0).attr("transform","translate("+S.left+","+S.top+")");pr.append("g").classed("x-axis-group",!0).append("g").classed("axis x",!0),pr.selectAll(".x-axis-group").append("g").classed("month-axis",!0),pr.append("g").classed("y-axis-group",!0).append("g").classed("axis y",!0),pr.append("g").classed("grid-lines-group",!0),pr.append("g").classed("chart-group",!0),jt&&pr.append("g").classed("legend-group",!0),pr.append("g").classed("metadata-group",!0)}()),pt.attr("width",b).attr("height",K)}(this),function(){var nr=void 0,pr=void 0;if(At==="custom"&&typeof Xt=="string")nr={tick:$t,format:M.timeFormat(Xt)},pr=null;else{var vr=D(Ce,b,At,Ct);nr=vr.minor,pr=vr.major,y=q.axisBottom(B).ticks(pr.tick).tickSize(0,0).tickFormat(pr.format)}x=q.axisBottom(B).ticks(nr.tick).tickSize(10,0).tickPadding(5).tickFormat(nr.format),F=q.axisLeft(tt).ticks(zt).tickSize([0]).tickPadding(5).tickFormat(Re),function(rr,Rr){pt.select(".grid-lines-group").selectAll("line").remove(),(Ze==="horizontal"||Ze==="full")&&pt.select(".grid-lines-group").selectAll("line.horizontal-grid-line").data(tt.ticks(Rr)).enter().append("line").attr("class","horizontal-grid-line").attr("x1",-lt-30).attr("x2",Mt).attr("y1",function(jr){return tt(jr)}).attr("y2",function(jr){return tt(jr)}),Ze!=="vertical"&&Ze!=="full"||pt.select(".grid-lines-group").selectAll("line.vertical-grid-line").data(B.ticks(rr)).enter().append("line").attr("class","vertical-grid-line").attr("y1",0).attr("y2",w).attr("x1",function(jr){return B(jr)}).attr("x2",function(jr){return B(jr)}),pt.select(".grid-lines-group").selectAll("line.extended-x-line").data([0]).enter().append("line").attr("class","extended-x-line").attr("x1",-lt-30).attr("x2",Mt).attr("y1",K-S.bottom-S.top).attr("y2",K-S.bottom-S.top)}(nr.tick,zt)}(),function(){if(pt.select(".x-axis-group .axis.x").attr("transform","translate(0, "+w+")").call(x),At!=="custom"&&pt.select(".x-axis-group .month-axis").attr("transform","translate(0, "+(w+28)+")").call(y),Qt){Kt&&pt.selectAll(".x-axis-label").remove();var nr=Mt/2,pr=w+28+36;Kt=pt.select(".x-axis-group").append("text").attr("x",nr).attr("y",pr).attr("text-anchor","middle").attr("class","x-axis-label").text(Qt)}if(pt.select(".y-axis-group .axis.y").attr("transform","translate("+-lt+", 0)").call(F).call(Ue),Jt){Et&&pt.selectAll(".y-axis-label").remove();var vr=-Rt-lt,rr=-w/2;Et=pt.select(".y-axis-group").append("text").attr("x",rr).attr("y",vr).attr("text-anchor","middle").attr("transform","rotate(270)").attr("class","y-axis-label").text(Jt)}}(),function(){if(Te){var nr=T.area().curve(W[he]).x(function(pr){var vr=pr.date;return B(vr)}).y0(function(pr){var vr=pr.min;return tt(vr)}).y1(function(pr){var vr=pr.max;return tt(vr)});pt.select(".chart-group").append("g").attr("class","area").append("path").data([Te]).attr("class","area").attr("d",nr)}}(),gn=void 0,Sn=void 0,Sn=T.line().curve(W[he]).x(function(nr){var pr=nr.date;return B(pr)}).y(function(nr){var pr=nr.value;return tt(pr)}),gn=pt.select(".chart-group").selectAll(".line").data(ve,qe),bt=gn.enter().append("g").attr("class","topic").append("path").attr("class","line").merge(gn).attr("id",function(nr){return nr.topic}).attr("d",function(nr){var pr=nr.dates;return Sn(pr)}).style("stroke",function(nr){return pr=nr.topic,nt(pr);var pr}).style("opacity",function(nr){return nr.hasOwnProperty("show")?nr.show?1:0:1}).style("stroke-dasharray",function(nr){return!!nr.hasOwnProperty("show")&&!!nr.dashed&&[.5,4]}),gn.exit().remove(),function(){if(jt){var nr=Number.parseInt(Mt)+Number.parseInt(S.right);Ln=pt.selectAll(".legend-group").append("g").attr("transform","translate("+nr+", 0)").classed("tooltip-text",!0),Tn=Ln.append("text").classed("tooltip-title",!0).attr("x",-43).attr("dy",".35em").attr("y",16).style("fill","#282C35").style("font-size","12px"),Ln.append("line").classed("tooltip-divider",!0).attr("x1",-43).attr("x2",225).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),vn=Ln.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35");var pr=void 0;pr=ve[0].hasOwnProperty("show")?ve.filter(function(lr){return lr.show}):ve;for(var vr=0;vrdt&&(Ft||(Ft=pt.select(".metadata-group").append("rect").attr("class","overlay").attr("y1",0).attr("y2",K).attr("height",w).attr("width",Mt).attr("fill","rgba(0, 0, 0, 0)").style("display","none")),ce||(ce=pt.select(".metadata-group").append("g").attr("class","hover-marker vertical-marker-container").attr("transform","translate(9999, 0)"),Se=ce.selectAll("path").data([{x1:0,y1:0,x2:0,y2:0}]).enter().append("line").classed("vertical-marker",!0).attr("x1",0).attr("y1",w).attr("x2",0).attr("y2",0)),pt.on("mouseover",function(nr){(function(pr,vr){Ft.style("display","block"),Se.classed("bc-is-active",!0),be.call("customMouseOver",pr,vr,A.mouse(pr))})(this,nr)}).on("mouseout",function(nr){(function(pr,vr){Ft.style("display","none"),Se.classed("bc-is-active",!1),be.call("customMouseOut",pr,vr,A.mouse(pr))})(this,nr)}).on("mousemove",function(nr){var pr,vr,rr,Rr,jr,lr,jn,Dr;pr=this,vr=A.mouse(pr),rr=R(vr,2),Rr=rr[0],jr=rr[1],lr=-S.left,jn=Mn(Rr+lr),Dr=void 0,jn&&(_n(Dr=B(new Date(jn.date))),on(jn),be.call("customMouseMove",pr,jn,gt,Dr,jr))})),wt&&function(){pt.select(".chart-group").selectAll(".data-points-container").remove();var nr=bt.nodes().reduce(function(pr,vr){return pr[vr.id]=vr,pr},{});Ce.reduce(function(pr,vr){var rr=vr.topics.map(function(Rr){return{topic:Rr,node:nr[Rr.name]}});return pr=[].concat($(pr),$(rr))},[])}(),pt.on("touchmove",function(nr){(function(pr,vr){be.call("customTouchMove",pr,vr,A.touch(pr))})(this,nr)}),re&&(xn=Mn(Mt))&&(_n(B(new Date(xn.date))),on(xn))})}function Ue(Pe){Pe.selectAll(".tick text").attr("transform","translate(0, -7)")}function Re(Pe){var wn=void 0;return wn=I(Pe)?u:v,xe&&(wn=N.format(xe)),wn(Pe)}function Ie(Pe){return new Date(Pe).toLocaleDateString()}function tn(Pe){var wn,an,gn=void 0,Sn=void 0;wn=Pe.topicName,an=Pe.sum.toLocaleString(),Sn=vn.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",-15).attr("y",Qn).style("fill","#000000").style("font-size","12px").text(wn).call(ke,200,12,-25),gn=vn.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",-15).attr("y",Qn).style("fill","#000000").style("font-size","12px").text(an),dr=Sn.node().getBBox().height,dr+5,bn=gn.node().getBBox().width?gn.node().getBBox().width:bn,gn.attr("x",300-bn-75),vn.append("circle").classed("tooltip-circle",!0).attr("cx",-35).attr("cy",Qn+8).attr("r",5).style("fill",gt[Pe.topic]).style("stroke-width",1),Qn+=dr+7}function Mn(Pe){var wn,an,gn,Sn=B.invert(Pe),xn=(0,X.bisector(ye).left)(Ce,Sn,1),hr=Ce[xn],nr=Ce[xn-1],pr=void 0;return nr&&hr?(wn=Sn,an=hr,gn=nr,pr=new Date(wn).getTime()-new Date(an.date).getTime()>new Date(gn.date).getTime()-new Date(wn).getTime()?an:gn):pr=hr,pr}function ke(Pe,wn,an){var gn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;Pe.each(function(){var Sn,xn,hr,nr,pr,vr,rr;for(Sn=(Pe=A.select(this)).text().split(/\s+/).reverse(),hr=[],nr=0,pr=Pe.attr("y"),vr=parseFloat(Pe.attr("dy")),rr=Pe.text(null).append("tspan").attr("x",gn).attr("y",pr).attr("dy",vr+"em");xn=Sn.pop();)hr.push(xn),rr.text(hr.join(" ")),O.getTextWidth(hr.join(" "),an,"Karla, sans-serif")>wn&&(hr.pop(),rr.text(hr.join(" ")),nr<4&&(hr=[xn],rr=Pe.append("tspan").attr("x",gn).attr("y",pr).attr("dy",1.2*++nr+vr+"em").text(xn)))})}function on(Pe){ce.selectAll(".circle-container").remove();var wn=bt.nodes().reduce(function(Sn,xn){return Sn[xn.id]=xn,Sn},{}),an=ve.filter(function(Sn){return!Sn.show}).map(function(Sn){return Sn.topicName}),gn=Pe.topics.map(function(Sn){return{topic:Sn,node:wn[Sn.name]}}).filter(function(Sn){return!!Sn.topic}).sort(function(Sn,xn){return gt[Sn.topic.name]fi.x+jr;){var ti=(jn+Dr)/2;if(fi=rr.getPointAtLength(ti),vr0?"+":"")+N.format(bt)(Fe)+"%"},Qt=function(ye){var Fe=ye.parentCount,qe=ye.value;return Fe?h(Fe)+pt:h(qe)+pt},Kt=function(ye){var Fe=ye.name;return l(Fe)+w*(3/8)};function Jt(ye){ye.each(function(Fe){var qe=z.left+z.right;_=D>600?D-qe-1.2*rt-100:D-qe,C=it-z.top-z.bottom;var be=function(je){var Ue=je.reduce(function(Ie,tn){return tn.name=String(tn[he]),tn.pctOfSet=+tn.pctOfSet,tn.pctChange=+tn[ve],tn.value=+tn[le],tn.width=+tn.width,[].concat(st(Ie),[tn])},[]),Re=Ue.slice();return{data:Ue,dataZeroed:Re}}(Fe);W=be.data,k=be.dataZeroed,function(){zt=function(Re,Ie){var tn=Re.length,Mn=J.sum(Re,Ie),ke=ce(Re),on=(C-(tn-1)*nt*C/tn-2*y*C/tn)/Mn;if(ke.length===0)return on;var _n=U.scalePow().exponent(1/ke.length).domain([0,100]).range([0,10*ke.length])(tn);return on-(Ce?2*_n:_n)}(W,Et),Ft=function(Re,Ie,tn){var Mn=Rt(Re,Ie,tn),ke=Re.length,on=function(_n,Pe){var wn=[];return _n.forEach(function(an){var gn=Pe.map(function(Sn,xn){return Sn.name===an||Sn.parent===an?xn:null}).filter(function(Sn){return Sn});wn.push(gn)}),wn}(ce(Re),Re);return function(_n,Pe){var wn=nt*C/ke,an=y*C/ke+J.sum(Re.slice(0,Pe),Ie)*tn+Pe*wn+Mn(Pe)/2;return on.forEach(function(gn){gn[0]>1&&Pe>=gn[0]&&(an+=Ce?20:x),Pe>gn[gn.length-1]&&(an+=Ce?20:x)}),an+z.top}}(W,Et,zt),Rt(W,Et,zt);var je=Math.min(K*X.max(W,rn));h=U.scaleLinear().domain([0,je]).rangeRound([0,_]);var Ue=W.map(Ft);l=U.scaleOrdinal().domain(W.map(Ke)).range(Ue),v=W.map(function(Re){return Re}).map(function(Re,Ie){return{name:Re.name,color:u[Ie%u.length]}}),I=function(Re){return v.filter(function(Ie){return Ie.name===Re})[0].color}}(),F=Z.axisBottom(h).ticks(b,ct).tickSizeInner([-C]),lt=Z.axisLeft(l),function(je){c=je,vt||((vt=T.select(je).append("svg").classed("britechart row-chart",!0)).append("rect").classed("export-wrapper",!0).attr("width",D).attr("height",it).attr("fill","white"),function(){var Ue=vt.append("g").classed("container-group",!0).attr("transform","translate("+(z.left+rt)+", "+z.top+")");Ue.append("g").classed("chart-group",!0),Ue.append("g").classed("title-group",!0),Ue.append("g").classed("x-axis-group axis",!0),Ue.append("g").attr("transform","translate("+-1*rt+", 0)").classed("y-axis-group axis",!0),Ue.append("g").classed("metadata-group",!0)}()),vt.attr("width",D).attr("height",it)}(this),function(){if(!(!W||!W[0])){var je=W[0].parentCount?h(W[0].parentCount):1;je=je>0?je:1;var Ue=W[0].parentCount;if(vt.select(".title-group").selectAll("g").remove(),vt.select(".title-group").selectAll("text").remove(),wt&&Ue){for(var Re=wt+" "+Ue.toLocaleString(),Ie=A.getTextWidth(Re,B,"sans-serif"),tn=Ce?100:40,Mn=z.left+je-tn,ke=!1;Ie>Mn;)wt=wt.slice(0,-1),ke=!0,Re=wt+"... "+Ue.toLocaleString(),Ie=A.getTextWidth(Re,B,"sans-serif");var on=vt.select(".title-group").append("text").text(null).attr("y",10);wt=ke?wt+"...":wt;var _n=on.append("tspan").text(wt).attr("font-size",B);on.append("tspan").text(Ue.toLocaleString()).classed("count",!0).attr("dx",5).attr("font-size",B).attr("font-weight",600);var Pe=_n.node().getBoundingClientRect().width+10,wn=je-Pe-5;on.attr("x",wn)}if(jt){var an=jt.toLocaleString(),gn=Dt+" "+an,Sn=A.getTextWidth(gn,B,"Karla, sans-serif"),xn=vt.select(".title-group").append("text").text(null).attr("x",_-Sn-15).attr("y",10);xn.append("tspan").text(Dt).attr("font-size",B),xn.append("tspan").text(an).classed("count",!0).attr("dx",5).attr("font-size",B).attr("font-weight",600);var hr=_-xn.node().getBoundingClientRect().width-10;xn.attr("x",hr)}re&&D>600&&vt.select(".title-group").append("text").text("Change in past "+re).attr("font-size",B).attr("x",_+5).attr("y",10)}}(),function(){var je=void 0;Ot?(Ln(je=vt.select(".chart-group").selectAll(".row").data(k)),W&&W[0]&&W[0].parentCount&&vt.select(".chart-group").append("line").classed("focus-separator",!0).attr("y1",-10).attr("x1",h(W[0].parentCount)).attr("y2",C+z.top+z.bottom).attr("x2",h(W[0].parentCount)).style("stroke","#e7e8e9").style("stroke-width",1),vt.select(".chart-group").append("line").classed("pct-separator",!0).attr("y1",-10).attr("x1",_).attr("y2",C).attr("x2",_).style("stroke","#000").style("stroke-width",1),function(Ue){Ue.attr("x",0).attr("y",function(Re,Ie){return l(Re.name)-zt*Re.width/2}).attr("height",function(Re){return zt*Re.width}).attr("fill",function(Re){return I(Re.name)}).attr("width",0).transition().duration(800).ease(At).attr("width",function(Re){var Ie=Re.value;return h(Ie)})}(je=vt.select(".chart-group").selectAll(".row rect.pct").data(W))):Ln(je=vt.select(".chart-group").selectAll("rect").data(W)),je.exit().transition().style("opacity",0).remove()}(),function(){var je=z.left;vt.select(".x-axis-group.axis").attr("transform","translate(0, "+C+")").call(F),vt.select(".y-axis-group.axis").call(lt),Ce||(vt.selectAll(".y-axis-group.axis .tick").call(pn),je=z.left-rt-30),vt.selectAll(".y-axis-group.axis .tick text").classed("child",function(Ue){return W.find(function(Re){return Re.name===Ue}).parent}).classed("print-mode",Ce).on("mouseover",vn).on("mouseout",Tn).call(Ze,je).selectAll("tspan").attr("font-size",xe),vt.selectAll(".y-axis-group.axis .tick text").classed("hidden",function(Ue){return W.find(function(Re){return Re.name===Ue}).splitterText}),Ce||vt.selectAll(".y-axis-group.axis .tick").classed("expandable",function(Ue){return function(Re,Ie){return Re.find(function(tn){return tn.name===Ie}).hasChildren}(W,Ue)}).call(bn)}(),function(){var je=vt.selectAll(".row-wrapper"),Ue=Number(je.size())-1,Re=vt.select(".row_"+Ue).select(".bg-hover");if(Re._groups[0]&&Re._groups[0][0]){var Ie=Number(Re.attr("y"))+Number(Re.attr("height"))+40;vt.select("line.pct-separator").attr("y2",Ie),vt.select(".export-wrapper").attr("height",Ie),vt.attr("height",Ie)}}()})}function Et(ye){return+ye.width}function Rt(ye,Fe,qe){return function(be){return Fe(ye[be])*qe}}var zt=void 0,Ft=void 0;function ce(ye){return[].concat(st(new Set(ye.filter(function(Fe){return Fe.parent&&Fe.isParent===!1}).map(function(Fe){return Fe.parent}))))}function Se(ye){return W.find(function(Fe){return(Fe.name===ye.name||Fe.name===ye)&&Fe.isParent})}function xe(ye){return Se(ye)?w+"px":B+"px"}function Ze(ye,Fe){if(Gt){var qe=gt>1?.8:1.2;A.wrapTextWithEllipses(ye,Fe,0,gt,qe)}}function pn(ye){ye.each(function(){var Fe=(ye=T.select(this)).node().getBBox().height/2,qe=ye.append("svg").attr("class",function(be){var je;return(je=be,W.find(function(Ue){return Ue.name===je})).splitterText?"hidden":"visibility visibility-"+Qn(be)}).attr("x",30-z.left).attr("y",-Fe).attr("width","300").attr("height","300").attr("viewBox","0 0 600 600").attr("fill","none").attr("opacity",0);qe.append("rect").attr("x",-10).attr("y",-10).attr("height","50").attr("width","50").attr("fill","#d6e8fa").on("mouseover",vn).on("mouseout",Tn),qe.append("path").attr("d","M 10,10 L 30,30 M 30,10 L 10,30").attr("stroke","#0072ce").attr("stroke-width","2")})}function bn(ye){ye.each(function(){T.select(this).selectAll("polygon").remove(),(ye=T.select(this)).append("polygon").attr("transform",function(Fe){return W.find(function(qe){return qe.parent===Fe})?"translate("+(rt-5)+", 2.5) rotate(180)":"translate("+(rt-15)+", -2.5)"}).attr("points",function(Fe){return"0,0 10,0 5,5"}).style("fill",function(Fe){return"#0072ce"}).style("fill-opacity",function(Fe){return W.find(function(qe){return qe.name===Fe&&qe.hasChildren})?1:0})})}function Ln(ye){var Fe=ye.enter().append("g").attr("class",function(Ie,tn){return"row_"+tn+" row-wrapper"}),qe=Fe.filter(function(Ie){return Ie.splitterText});Fe.append("rect").attr("class","bg").on("click",function(Ie){dr(this,Ie,_,C)}).attr("x",0).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("height",function(Ie){return zt*Ie.width}).attr("width",_).attr("fill",function(Ie){return Ie.splitterText?"#fff":$t}),Fe.append("rect").attr("class","bg-hover").attr("x",-z.left).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("width",D).attr("height",function(Ie){return zt*Ie.width}).on("mouseover",vn).on("mouseout",Tn).attr("fill-opacity",0).attr("fill",function(Ie){return Ie.splitterText?"#fff":"#d6e8fa"}),Fe.append("rect").attr("class","focus-bar").attr("x",0).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("height",function(Ie){return zt*Ie.width}).attr("width",function(Ie){var tn=Ie.parentCount;return tn?h(tn):0}).attr("fill","#e7e8e9").attr("fill-opacity",function(Ie){return Ie.parent?.5:1}),Fe.append("rect").attr("class","pct").on("mouseover",function(Ie,tn,Mn){(function(ke,on,_n,Pe,wn){if(!on.splitterText){Te.call("customMouseOver",ke,on,T.mouse(ke),[Pe,wn]),vn(on),an=T.select(ke),an.attr("fill",function(gn){var Sn=gn.name;return Sn?Y.color(I(Sn)).darker():""});var an}})(this,Ie,0,_,C)}).on("mousemove",function(Ie){(function(tn,Mn,ke,on){Mn.splitterText||Te.call("customMouseMove",tn,Mn,T.mouse(tn),[ke,on])})(this,Ie,_,C)}).on("mouseout",function(Ie,tn,Mn){(function(ke,on,_n,Pe,wn){on.splitterText||(Te.call("customMouseOut",ke,on,T.mouse(ke),[Pe,wn]),Tn(on),_n.forEach(function(an){T.select(an).attr("fill",function(gn){var Sn=gn.name;return Sn?I(Sn):""})}))})(this,Ie,Mn,_,C)}).on("click",function(Ie){dr(this,Ie,_,C)}).attr("x",0).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("height",function(Ie){return zt*Ie.width}).attr("width",function(Ie){var tn=Ie.value;return h(tn)}).attr("fill",function(Ie){return I(Ie.name)}).attr("fill-opacity",function(Ie){return Ie.parent?.5:1});var be=T.select(".chart-group .bg");if(et&&be.node()){var je=be.node().getBBox().x||be.node().getBoundingClientRect().width;Fe.append("text").attr("class","percentage-label").classed("child",function(Ie){return!Se(Ie)}).attr("x",Qt).attr("y",Kt).text(function(Ie){return function(tn,Mn){var ke=tn.isNotFilter,on=tn.pctOfSet,_n=tn.parent,Pe=tn.value,wn=tn.isParent;if(!tn.splitterText){var an="";if(ke)return"";on&&!_n&&D>600&&(an=" | "+on+"%"),Number(Pe)===1&&(Mt=Mt.replace(/s$/,""));var gn=N.format(bt)(Pe)+" "+Mt+an,Sn=wn?w:B,xn=A.getTextWidth(gn,Sn,"sans-serif")+10,hr=h(Pe);return xn>hr&&xn>Mn-hr?N.format(bt)(Pe):gn}}(Ie,je)}).attr("font-size",xe).attr("fill",function(Ie,tn){var Mn=h(Ie.value),ke=Fe.selectAll("text")._groups[tn][0].getComputedTextLength()+10;return je>0&&je-Mn0&&je-Mn600){var Re=Fe.append("g").attr("transform","translate("+(_+10)+", 0)").attr("class","change-label-group");Re.append("text").attr("y",Kt).attr("font-size",xe).attr("font-weight","600").style("fill",function(Ie){return Ie.pctChange===0||isNaN(Ie.pctChange)?"#919395":Ie.pctChange>0?Ct:Xt}).text(un),Re.append("polygon").attr("transform",function(Ie){var tn=Kt(Ie);return Se(Ie)?Ie.pctChange<0?"translate(65, "+(tn+5)+") rotate(180) scale(1.5)":"translate(50, "+(tn-15)+") scale(1.5)":Ie.pctChange<0?"translate(50, "+(tn+5)+") rotate(180)":"translate(40, "+(tn-10)+")"}).attr("points",function(Ie){return"2,8 2,13 8,13 8,8 10,8 5,0 0,8"}).style("fill",function(Ie){return Ie.pctChange>0?Ct:Xt}).attr("class",function(Ie){return Ie.pctChange<0?"down":"up"}).attr("fill-opacity",function(Ie){var tn=Ie.pctChange;return isNaN(tn)||tn===0?0:1})}}function vn(ye,Fe){if(!ye.splitterText){var qe=Fe;typeof ye.name!="string"&&typeof ye!="string"||(qe=ye.name?Qn(ye.name):Qn(ye)),T.select(c).select(".tick svg.visibility-"+qe).attr("opacity",1),T.select(c).select("g.row_"+qe+" .bg-hover").attr("fill-opacity",1)}}function Tn(ye,Fe){if(!ye.splitterText){var qe=Fe;typeof ye.name!="string"&&typeof ye!="string"||(qe=ye.name?Qn(ye.name):Qn(ye)),T.select(c).select(".tick svg.visibility-"+qe).attr("opacity",0),T.select(c).select("g.row_"+qe+" .bg-hover").attr("fill-opacity",0)}}function Qn(ye){return W.findIndex(function(Fe){return Fe.name===ye})}function dr(ye,Fe,qe,be){Te.call("customClick",ye,Fe,T.mouse(ye),[qe,be])}return Jt.backgroundColor=function(ye){return arguments.length?($t=ye,this):$t},Jt.upArrowColor=function(ye){return arguments.length?(Ct=ye,this):Ct},Jt.downArrowColor=function(ye){return arguments.length?(Xt=ye,this):Xt},Jt.colorSchema=function(ye){return arguments.length?(u=ye,this):u},Jt.enableLabels=function(ye){return arguments.length?(et=ye,this):et},Jt.enableYAxisRight=function(ye){return arguments.length?(dt=ye,this):dt},Jt.exportChart=function(ye,Fe){M.call(Jt,vt,ye,Fe)},Jt.height=function(ye){return arguments.length?(it=ye,this):it},Jt.isAnimated=function(ye){return arguments.length?(Ot=ye,this):Ot},Jt.labelsMargin=function(ye){return arguments.length?(pt=ye,this):pt},Jt.labelsNumberFormat=function(ye){return arguments.length?(bt=ye,this):bt},Jt.labelsSuffix=function(ye){return arguments.length?(Mt=ye,this):Mt},Jt.labelsSize=function(ye){return arguments.length?(w=ye,this):w},Jt.labelsSizeChild=function(ye){return arguments.length?(B=ye,this):B},Jt.pctChangeLabelSize=function(ye){return arguments.length?(tt=ye,this):tt},Jt.loadingState=function(ye){return arguments.length?(Q=ye,this):Q},Jt.margin=function(ye){return arguments.length?(z=R({},z,ye),this):z},Jt.nameLabel=function(ye){return arguments.length?(he=ye,this):he},Jt.numberFormat=function(ye){return arguments.length?(ct=ye,this):ct},Jt.on=function(){var ye=Te.on.apply(Te,arguments);return ye===Te?Jt:ye},Jt.percentageAxisToMaxRatio=function(ye){return arguments.length?(K=ye,this):K},Jt.isPrintMode=function(ye){return arguments.length?(Ce=ye,this):Ce},Jt.outerPadding=function(ye){return arguments.length?(y=ye,this):y},Jt.padding=function(ye){return arguments.length?(nt=ye,this):nt},Jt.paddingBetweenGroups=function(ye){return arguments.length?(x=ye,this):x},Jt.pctChangeLabel=function(ye){return arguments.length?(ve=ye,this):ve},Jt.yAxisLineWrapLimit=function(ye){return arguments.length?(gt=ye,this):gt},Jt.labelsFocusTitle=function(ye){return arguments.length?(wt=ye,this):wt},Jt.labelsTotalCount=function(ye){return arguments.length?(jt=ye,this):jt},Jt.labelsTotalText=function(ye){return arguments.length?(Dt=ye,this):Dt},Jt.labelsInterval=function(ye){return arguments.length?(re=ye,this):re},Jt.valueLabel=function(ye){return arguments.length?(le=ye,this):le},Jt.width=function(ye){return arguments.length?(D=ye,this):D},Jt.xTicks=function(ye){return arguments.length?(b=ye,this):b},Jt.yAxisPaddingBetweenChart=function(ye){return arguments.length?(rt=ye,this):rt},Jt.yTicks=function(ye){return arguments.length?(S=ye,this):S},Jt.wrapLabels=function(ye){return arguments.length?(Gt=ye,this):Gt},Jt}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d){Pt.exports=j},function(Pt,d,g){"use strict";var L,R=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($){return typeof $}:function($){return $&&typeof Symbol=="function"&&$.constructor===Symbol&&$!==Symbol.prototype?"symbol":typeof $},st=function($,J){if(Array.isArray($))return $;if(Symbol.iterator in Object($))return function(X,q){var Z=[],Y=!0,V=!1,N=void 0;try{for(var U,T=X[Symbol.iterator]();!(Y=(U=T.next()).done)&&(Z.push(U.value),!q||Z.length!==q);Y=!0);}catch(A){V=!0,N=A}finally{try{!Y&&T.return&&T.return()}finally{if(V)throw N}}return Z}($,J);throw new TypeError("Invalid attempt to destructure non-iterable instance")};(L=function($){var J=g(11),X=g(9),q=g(2),Z=(g(8),g(28)),Y=g(35).axisTimeCombinations,V=g(24),N=V.formatIntegerValue,U=V.formatDecimalValue,T=V.isInteger,A=g(26).getTextWidth;return function(){var M=2,O=2,H=2,z=2,c="Tooltip title",D=!0,it=void 0,Q={y:-55,x:0},W=void 0,k=void 0,_=void 0,C=void 0,h=48,l=0,u=37,v=void 0,I=void 0,S=J.easeQuadInOut,b=void 0,K="date",ct="value",et="name",dt="topics",pt=Y.DAY_MONTH,bt=null,Mt=null,w=[],B=null,tt=null,nt=Z.timeFormat("%b %d, %Y"),x=Z.timeFormat("%b %d, %I %p"),y=void 0,F=void 0;function lt(Ct){Ct.each(function(wt){250-z-O,45-M-H,function(Dt){F||((F=q.select(Dt).append("g").classed("britechart britechart-tooltip",!0).style("visibility","hidden")).append("g").classed("tooltip-container-group select-disable",!0).attr("transform","translate( "+z+", "+M+")").append("g").classed("tooltip-group",!0),W=F.selectAll(".tooltip-group").append("g").classed("tooltip-text",!0),it=W.append("rect").classed("tooltip-text-container",!0).attr("x",-54.5).attr("y",0).attr("width",250).attr("height",h).attr("rx",3).attr("ry",3).style("fill","#FFFFFF").style("stroke","#D2D6DF").style("stroke-width",1),C=W.append("text").classed("tooltip-title",!0).attr("x",-46.5).attr("dy",".35em").attr("y",16).style("fill","#6D717A"),k=W.append("line").classed("tooltip-divider",!0).attr("x1",-46.5).attr("x2",265).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),_=W.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35")),F.transition().attr("width",250).attr("height",45),lt.hide()}(this)})}function rt(Ct){var wt=Ct[ct];return Ct.missingValue?"-":function(Dt){if(tt!==null)return tt(Dt);var jt=U;return Dt?(B!==null?jt=X.format(B):T(Dt)&&(jt=N),jt(Dt)):0}(wt).toString()}function gt(Ct){var wt,Dt,jt=Ct[et],re=void 0,le=void 0;wt=Ct.topicName||jt,Dt=rt(Ct),le=_.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",l).attr("y",u).style("fill","#000000").text(wt).call(At,170,-25),re=_.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",l).attr("y",u).style("fill","#000000").text(Dt),v=le.node().getBBox().height,h+=v+5,I=re.node().getBBox().width?re.node().getBBox().width:I,re.attr("x",250-I-10-62.5),_.append("circle").classed("tooltip-circle",!0).attr("cx",-39.5).attr("cy",u+8).attr("r",5).style("fill",b[jt]).style("stroke-width",1),u+=v+7}function vt(Ct,wt,Dt){var jt,re,le=(jt=st([wt,Dt],2),re=jt[0],jt[1],[re-250<0?65:-205,Q.y]),Gt=st(le,2),he=Gt[0],ve=Gt[1];it.attr("width",250).attr("height",h+10),W.transition().duration(100).ease(S).attr("transform","translate("+he+", "+ve+")"),k.attr("x2",190)}function Ot(Ct){var wt=c,Dt=function(jt){var re=bt||pt,le=null,Gt={month:"short",day:"numeric"};return re===Y.DAY_MONTH||re===Y.MONTH_YEAR?(le=nt,Gt.year="numeric"):re===Y.HOUR_DAY||re===Y.MINUTE_HOUR?(le=x,Gt.hour="numeric"):re===Y.CUSTOM&&typeof Mt=="string"&&(le=Z.timeFormat(Mt)),y&&typeof Intl!="undefined"&&(typeof Intl=="undefined"?"undefined":R(Intl))==="object"&&Intl.DateTimeFormat?Intl.DateTimeFormat(y,Gt).format(jt):le(jt)}(new Date(Ct[K]));wt.length?D&&(wt=wt+" - "+Dt):wt=Dt,C.text(wt)}function At(Ct,wt){var Dt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;Ct.each(function(){var jt,re,le,Gt,he,ve,Ce;for(jt=(Ct=q.select(this)).text().split(/\s+/).reverse(),le=[],Gt=0,he=Ct.attr("y"),ve=parseFloat(Ct.attr("dy")),Ce=Ct.text(null).append("tspan").attr("x",Dt).attr("y",he).attr("dy",ve+"em");re=jt.pop();)le.push(re),Ce.text(le.join(" ")),A(le.join(" "),16,"Karla, sans-serif")>wt&&(le.pop(),Ce.text(le.join(" ")),Gt<2&&(le=[re],Ce=Ct.append("tspan").attr("x",Dt).attr("y",he).attr("dy",1.2*++Gt+ve+"em").text(re)))})}function $t(Ct){var wt=Ct[dt];w.length?wt=function(Dt){var jt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:w;return jt.map(function(re){return Dt.filter(function(le){return le.name===re})[0]})}(wt):wt.length&&wt[0].name&&(wt=function(Dt){return Dt.map(function(jt){return jt}).sort(function(jt,re){return jt.name>re.name?1:jt.name===re.name?0:-1})}(wt)),_.selectAll("text").remove(),_.selectAll("circle").remove(),Ot(Ct),h=48,u=37,l=0,wt.forEach(gt)}function Xt(Ct,wt,Dt){$t(Ct),vt(0,wt,Dt)}return lt.axisTimeCombinations=Y,lt.dateFormat=function(Ct){return arguments.length?(bt=Ct,this):bt||pt},lt.dateCustomFormat=function(Ct){return arguments.length?(Mt=Ct,this):Mt},lt.dateLabel=function(Ct){return arguments.length?(K=Ct,this):K},lt.hide=function(){return F.style("visibility","hidden"),this},lt.locale=function(Ct){return arguments.length?(y=Ct,this):y},lt.nameLabel=function(Ct){return arguments.length?(et=Ct,this):et},lt.numberFormat=function(Ct){return arguments.length?(B=Ct,this):B},lt.valueFormatter=function(Ct){return arguments.length?(tt=Ct,this):tt},lt.shouldShowDateInTitle=function(Ct){return arguments.length?(D=Ct,this):D},lt.show=function(){return F.style("visibility","visible"),this},lt.title=function(Ct){return arguments.length?(c=Ct,this):c},lt.tooltipOffset=function(Ct){return arguments.length?(Q=Ct,this):Q},lt.topicsOrder=function(Ct){return arguments.length?(w=Ct,this):w},lt.topicLabel=function(Ct){return arguments.length?(dt=Ct,this):dt},lt.update=function(Ct,wt,Dt){var jt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return b=wt,Xt(Ct,Dt,jt),this},lt.valueLabel=function(Ct){return arguments.length?(ct=Ct,this):ct},lt}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=function(st,$){if(Array.isArray(st))return st;if(Symbol.iterator in Object(st))return function(J,X){var q=[],Z=!0,Y=!1,V=void 0;try{for(var N,U=J[Symbol.iterator]();!(Z=(N=U.next()).done)&&(q.push(N.value),!X||q.length!==X);Z=!0);}catch(T){Y=!0,V=T}finally{try{!Z&&U.return&&U.return()}finally{if(Y)throw V}}return q}(st,$);throw new TypeError("Invalid attempt to destructure non-iterable instance")};(L=function(st){var $=g(0),J=g(11),X=g(9),q=g(2);return g(8),function(){var Z=12,Y=12,V=12,N=12,U="",T="value",A="name",M=J.easeQuadInOut,O=void 0,H=void 0,z=0,c=20,D=".2f",it=function(v){return X.format(D)(v)},Q=void 0,W=void 0,k=void 0;function _(v){v.each(function(){Q=100-N-Y,W=100-Z-V,function(I){k||(k=q.select(I).append("g").classed("britechart britechart-mini-tooltip",!0)).append("g").classed("tooltip-container-group",!0).attr("transform","translate( "+N+", "+Z+")").append("g").classed("tooltip-group",!0),k.transition().attr("width",100).attr("height",100),_.hide()}(this),H=k.selectAll(".tooltip-group").append("g").classed("tooltip-text select-disable",!0),O=H.append("rect").classed("tooltip-background",!0).attr("width",100).attr("height",100).attr("rx",1).attr("ry",1).attr("y",-Z).attr("x",-N).style("fill","#43484e").style("stroke","#43484e").style("stroke-width",1).style("pointer-events","none").style("opacity",.9)})}function C(){for(var v=arguments.length,I=Array(v),S=0;S0}(et,b)?b+c:b-Q-c-Y,function(pt,bt){return pt-Z-V-W-bt>0}(dt,K)?K+z:K-W-z-V]}function l(){var v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},I=v[T]||"",S=v[A]||"",b=21,K=22*1.18,ct="1em",et=0,dt=void 0,pt=void 0,bt=void 0;H.selectAll("text").remove(),U&&(bt=H.append("text").classed("mini-tooltip-title",!0).attr("dy",ct).attr("y",0).style("fill","#43484e").style("font-size",14).text(U),et=b+et),S&&(pt=H.append("text").classed("mini-tooltip-name",!0).attr("dy",ct).attr("y",et||0).style("fill","#ffffff").style("font-size",14).text(S),et=b+et),I&&(dt=H.append("text").classed("mini-tooltip-value",!0).attr("dy",ct).attr("y",et||0).style("fill","#ffffff").style("font-size",22).style("font-weight",200).text(it(I)),et=K+et),Q=C(pt,bt,dt),W=et}function u(v,I,S){var b,K,ct,et;l(v),b=h(I,S),K=R(b,2),ct=K[0],et=K[1],k.transition().duration(100).ease(M).attr("height",W+Z+V).attr("width",Q+N+Y).attr("transform","translate("+ct+","+et+")"),O.attr("height",W+Z+V).attr("width",Q+N+Y)}return _.hide=function(){return k.style("visibility","hidden"),this},_.nameLabel=function(v){return arguments.length?(A=v,this):A},_.numberFormat=function(v){return arguments.length?(D=v,this):D},_.valueFormatter=function(v){return arguments.length?(it=v,this):it},_.show=function(){var v;return l(v),k.style("visibility","visible"),this},_.title=function(v){return arguments.length?(U=v,this):U},_.update=function(v,I,S){return u(v,I,S),this},_.valueLabel=function(v){return arguments.length?(T=v,this):T},_}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$Vt[ge]?-1:Vt[pe]===Vt[ge]?0:1}),Wt=_t.indexOf("Other");if(Wt>=0){var se=_t.splice(Wt,1);_t=_t.concat(se)}return _t}(ht);var Nt=T.stack().keys(Dt).order(T.stackOrderNone).offset(T.stackOffsetNone);Ke=Nt(Qn),Ce=Nt(Tn)}(),Mr=Re?Ue.maxY:(Bi=et(Ln.map(function(en){return en.name})),q.max(Tn,function(en){var ht=Bi.map(function(Nt){return en[Nt]});return q.sum(ht)})),w=U.scaleTime().domain(q.extent(vn,function(en){return en.date})).rangeRound([0,pn]),nt=U.scaleLinear().domain([0,Mr]).rangeRound([bn,0]).nice(),Ct=Dt.reduce(function(en,ht,Nt){return O({},en,J({},ht,vt[Nt]))},{}),te=et(Ln.map(function(en){return en.name})),Me={},te.forEach(function(en){var ht=Ln.find(function(Nt){return Nt.name===en});ht.hasOwnProperty("show")?Me[en]=ht.show:Me[en]=!0}),wt=Me,function(en){Ze||((Ze=A.select(en).append("svg").classed("britechart stacked-area",!0)).append("rect").classed("export-wrapper",!0).attr("width",pt).attr("height",bt).attr("fill","white"),function(){var ht=Ze.append("g").classed("container-group",!0).attr("transform","translate("+dt.left+","+dt.top+")");ht.append("g").classed("x-axis-group",!0).append("g").classed("x axis",!0),ht.selectAll(".x-axis-group").append("g").classed("month-axis",!0),ht.append("g").classed("y-axis-group axis",!0),ht.append("g").classed("grid-lines-group",!0),ht.append("g").classed("y-axis-label",!0),ht.append("g").classed("chart-group",!0),ce&&ht.append("g").classed("legend-group",!0),ht.append("g").classed("metadata-group",!0)}()),Ze.attr("width",pt).attr("height",bt)}(this),function(){var en=void 0,ht=void 0;if(re==="custom"&&typeof Gt=="string")en={tick:le,format:M.timeFormat(Gt)},ht=null;else{var Nt=D(vn,pt,re,he);en=Nt.minor,ht=Nt.major,tt=Z.axisBottom(w).ticks(ht.tick).tickSize(0,0).tickFormat(ht.format)}B=Z.axisBottom(w).ticks(en.tick).tickSize(10,0).tickPadding(5).tickFormat(en.format),x=Z.axisRight(nt).ticks(F).tickSize([0]).tickPadding(5).tickFormat(xn),function(Vt,_t){Ze.select(".grid-lines-group").selectAll("line").remove(),(dr==="horizontal"||dr==="full")&&Ze.select(".grid-lines-group").selectAll("line.horizontal-grid-line").data(nt.ticks(_t)).enter().append("line").attr("class","horizontal-grid-line").attr("x1",-Fe-30).attr("x2",pn).attr("y1",function(Wt){return nt(Wt)}).attr("y2",function(Wt){return nt(Wt)}),dr!=="vertical"&&dr!=="full"||Ze.select(".grid-lines-group").selectAll("line.vertical-grid-line").data(w.ticks(Vt)).enter().append("line").attr("class","vertical-grid-line").attr("y1",0).attr("y2",bn).attr("x1",function(Wt){return w(Wt)}).attr("x2",function(Wt){return w(Wt)}),Ze.select(".grid-lines-group").selectAll("line.extended-x-line").data([0]).enter().append("line").attr("class","extended-x-line").attr("x1",-Fe-30).attr("x2",pn).attr("y1",bt-dt.bottom-dt.top).attr("y2",bt-dt.bottom-dt.top)}(en.tick,F)}(),function(){Ze.select(".x-axis-group .axis.x").attr("transform","translate( 0, "+bn+" )").call(B),re!=="custom"&&Ze.select(".x-axis-group .month-axis").attr("transform","translate(0, "+(bn+30)+")").call(tt),Ze.select(".y-axis-group.axis").attr("transform","translate( "+-Fe+", 0)").call(x).call(hr),lt&&(rt&&Ze.selectAll(".y-axis-label-text").remove(),rt=Ze.select(".y-axis-label").append("text").classed("y-axis-label-text",!0).attr("x",-bn/2).attr("y",gt).attr("text-anchor","middle").attr("transform","rotate(270 0 0)").text(lt))}(),function(){if(Te&&(Ze.selectAll(".layer-container").remove(),Ze.selectAll(".layer").remove(),Ze.selectAll(".area-outline").remove()),Re)return en=T.line().x(function(Nt){return w(Nt.date)}).y(function(){return nt(0)-1}),(ht=Ze.select(".chart-group")).append("path").attr("class","empty-data-line").attr("d",en(Tn)).style("stroke","url(#empty-data-line-gradient)"),void ht.append("linearGradient").attr("id","empty-data-line-gradient").attr("gradientUnits","userSpaceOnUse").attr("x1",0).attr("x2",w(Ln[Ln.length-1].date)).attr("y1",0).attr("y2",0).selectAll("stop").data([{offset:"0%",color:Ot[0]},{offset:"100%",color:Ot[1]}]).enter().append("stop").attr("offset",function(Nt){return Nt.offset}).attr("stop-color",function(Nt){return Nt.color});var en,ht;rn=T.area().curve(W[ve]).x(function(Nt){var Vt=Nt.data;return w(Vt.date)}).y0(function(Nt){return nt(Nt[0])}).y1(function(Nt){return nt(Nt[1])}),un=T.line().curve(rn.curve()).x(function(Nt){var Vt=Nt.data;return w(Vt.date)}).y(function(Nt){return nt(Nt[1])}),Ft?((Te=Ze.select(".chart-group").selectAll(".layer").data(Ke,Pe).enter().append("g").classed("layer-container",!0)).append("path").attr("class","layer").attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Te.append("path").attr("class","area-outline").attr("d",un).style("stroke",function(Nt){var Vt=Nt.key;return Ct[Vt]}).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}),Ze.select(".chart-group").selectAll(".layer").data(Ce).transition().delay(function(Nt,Vt){return Qt[Vt]}).duration(1e3).ease(Se).attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Ze.select(".chart-group").selectAll(".area-outline").data(Ce).transition().delay(function(Nt,Vt){return Qt[Vt]}).duration(1e3).ease(Se).attr("d",un).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0})):((Te=Ze.select(".chart-group").selectAll(".layer").data(Ce).enter().append("g").classed("layer-container",!0)).append("path").attr("class","layer").attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Te.append("path").attr("class","area-outline").attr("d",un).style("stroke",function(Nt){var Vt=Nt.key;return Ct[Vt]}).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}),Ze.select(".chart-group").selectAll(".layer").attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Ze.select(".chart-group").selectAll(".area-outline").attr("class","area-outline").attr("d",un).style("stroke",function(Nt){var Vt=Nt.key;return Ct[Vt]}).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0})),xe||Ze.select(".chart-group").selectAll(".area-outline").style("display","none"),Te.exit().transition().style("opacity",0).remove()}(),function(){if(ce){var en=Number.parseInt(pn)+Number.parseInt(dt.right);tn=Ze.selectAll(".legend-group").append("g").attr("transform","translate("+en+", 0)").classed("tooltip-text",!0),ke=tn.append("text").classed("tooltip-title",!0).attr("x",-43).attr("dy",".35em").attr("y",16).style("fill","#282C35").style("font-size","12px"),tn.append("line").classed("tooltip-divider",!0).attr("x1",-43).attr("x2",225).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),Mn=tn.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35");for(var ht=[].concat($(new Set(Ln.map(function(Ae){return Ae.name})))),Nt=[],Vt=function(Ae){var Qe={},He=ht[Ae];Qe.name=He,Qe.sum=Ln.filter(function(sn){return sn.name===ht[Ae]}).reduce(function(sn,kn){return sn+kn.value},0),Nt.push(Qe)},_t=0;_tye&&!Re&&(function(){Kt&&Ze.selectAll(".overlay").remove(),Kt=Ze.select(".metadata-group").append("rect").attr("class","overlay").attr("y1",0).attr("y2",bn).attr("height",bn).attr("width",pn).attr("fill","rgba(0, 0, 0, 0)").style("display","none")}(),function(){Jt&&Ze.selectAll(".vertical-marker-container").remove(),Jt=Ze.select(".metadata-group").append("g").attr("class","vertical-marker-container").attr("transform","translate(9999, 0)"),Et=Jt.selectAll("path").data([{x1:0,y1:0,x2:0,y2:0}]).enter().append("line").classed("vertical-marker",!0).attr("x1",0).attr("y1",bn).attr("x2",0).attr("y2",0)}(),Ze.on("mouseover",function(en){(function(ht,Nt){Kt.style("display","block"),Et.classed("bc-is-active",!0),an.call("customMouseOver",ht,Nt,A.mouse(ht))})(this,en)}).on("mouseout",function(en){(function(ht,Nt){Kt.style("display","none"),Et.classed("bc-is-active",!1),an.call("customMouseOut",ht,Nt,A.mouse(ht))})(this,en)}).on("mousemove",function(en){(function(ht){Rt||Rr();var Nt=A.mouse(ht),Vt=st(Nt,2),_t=Vt[0],Wt=Vt[1],se=rr(_t-dt.left),pe=void 0;se&&(lr(pe=w(new Date(se.key))),jr(se),an.call("customMouseMove",ht,se,Ct,pe,Wt))})(this)})),zt&&function(){Rt||Rr();var en=rr(pn);en&&(lr(w(new Date(en.key))),jr(en))}()})}function Sn(){Ze.on("touchmove",function(jn){(function(Dr,fi){an.call("customTouchMove",Dr,fi,A.touch(Dr))})(this,jn)})}function xn(jn){return(h(jn)?_:C)(jn)}function hr(jn){jn.selectAll(".tick text").attr("transform","translate(-20, -8)")}function nr(jn){return new Date(jn).toLocaleDateString()}function pr(jn){var Dr,fi,si=void 0,ti=void 0;Dr=jn.name,fi=jn.sum.toLocaleString(),ti=Mn.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",-15).attr("y",on).style("fill","#000000").style("font-size","12px").text(Dr).call(vr,200,12,-25),si=Mn.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",-15).attr("y",on).style("fill","#000000").style("font-size","12px").text(fi),_n=ti.node().getBBox().height,_n+5,Ie=si.node().getBBox().width?si.node().getBBox().width:Ie,si.attr("x",300-Ie-75),Mn.append("circle").classed("tooltip-circle",!0).attr("cx",-35).attr("cy",on+8).attr("r",5).style("fill",Ct[jn.name]).style("stroke-width",1),on+=_n+7}function vr(jn,Dr,fi){var si=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;jn.each(function(){var ti,Mr,Bi,te,Me,$e,en;for(ti=(jn=A.select(this)).text().split(/\s+/).reverse(),Bi=[],te=0,Me=jn.attr("y"),$e=parseFloat(jn.attr("dy")),en=jn.text(null).append("tspan").attr("x",si).attr("y",Me).attr("dy",$e+"em");Mr=ti.pop();)Bi.push(Mr),en.text(Bi.join(" ")),H.getTextWidth(Bi.join(" "),fi,"Karla, sans-serif")>Dr&&(Bi.pop(),en.text(Bi.join(" ")),te<4&&(Bi=[Mr],en=jn.append("tspan").attr("x",si).attr("y",Me).attr("dy",1.2*++te+$e+"em").text(Mr)))})}function rr(jn){var Dr=vn.filter(function(fi){var si=fi.date;return Math.abs(w(si)-jn)<=Rt});if(Dr.length)return Dr[0]}function Rr(){var jn=vn.map(function(Dr){return Dr.date});Rt=(w(jn[1])-w(jn[0]))/2}function jr(jn){var Dr=jn.values,fi=0;Jt.selectAll(".circle-container").remove(),Dr=Dr.filter(function(ti){return!!ti});var si=Dt.reduce(function(ti,Mr){return[].concat($(ti),[Dr.find(function(Bi){return Bi.name===Mr})])},[]);si.forEach(function(ti,Mr){var Bi=Jt.append("g").classed("circle-container",!0).append("circle").classed("data-point-highlighter",!0).attr("cx",12).attr("cy",0).attr("r",5).style("stroke-width",1.2).style("stroke",Ct[ti.name]).style("opacity",function(te){var Me=te.key;return wt[Me]?Xt:0}).style("cursor","pointer").on("click",function(){(function(te){At||(At=u(Ze.select(".metadata-group")),$t=v(At));var Me=A.select(te);Me.style("stroke-width",5).style("stroke-opacity",.6).attr("filter","url(#"+$t+")"),I(Me,Se,7)})(this),function(te,Me){an.call("customDataEntryClick",te,Me,A.mouse(te))}(this,ti)}).on("mouseout",function(){var te;te=this,A.select(te).attr("filter","none")});fi+=si[Mr][be],Bi.attr("transform","translate( -12, "+nt(fi)+" )")})}function lr(jn){Jt.attr("transform","translate("+jn+",0)")}return gn.areaCurve=function(jn){return arguments.length?(ve=jn,this):ve},gn.areaOpacity=function(jn){return arguments.length?(Xt=jn,this):Xt},gn.aspectRatio=function(jn){return arguments.length?(y=jn,this):y},gn.axisTimeCombinations=Q,gn.colorSchema=function(jn){return arguments.length?(vt=jn,this):vt},gn.dateLabel=function(jn){return arguments.length?(qe=jn,this):qe},gn.emptyDataConfig=function(jn){return arguments.length?(Ue=jn,this):Ue},gn.grid=function(jn){return arguments.length?(dr=jn,this):dr},gn.hasOutline=function(jn){return arguments.length?(xe=jn,this):xe},gn.height=function(jn){return arguments.length?(y&&(pt=Math.ceil(jn/y)),bt=jn,this):bt},gn.initializeVerticalMarker=function(jn){return arguments.length?(zt=jn,this):zt},gn.isAnimated=function(jn){return arguments.length?(Ft=jn,this):Ft},gn.isPrintMode=function(jn){return arguments.length?(ce=jn,this):ce},gn.keyLabel=function(jn){return arguments.length?(je=jn,this):je},gn.margin=function(jn){return arguments.length?(dt=R({},dt,jn),this):dt},gn.tooltipThreshold=function(jn){return arguments.length?(ye=jn,this):ye},gn.topicsOrder=function(jn){return arguments.length?(jt=jn,this):jt},gn.loadingState=function(jn){return arguments.length?(Mt=jn,this):Mt},gn.locale=function(jn){return arguments.length?(he=jn,this):he},gn.exportChart=function(jn,Dr){z.call(gn,Ze,jn,Dr)},gn.on=function(){var jn=an.on.apply(an,arguments);return jn===an?gn:jn},gn.valueLabel=function(jn){return arguments.length?(be=jn,this):be},gn.width=function(jn){return arguments.length?(y&&(bt=Math.ceil(jn*y)),pt=jn,this):pt},gn.xAxisCustomFormat=function(jn){return arguments.length?(Gt=jn,this):Gt},gn.xAxisFormat=function(jn){return arguments.length?(re=jn,this):re},gn.xTicks=function(jn){return arguments.length?(le=jn,this):le},gn.yAxisLabel=function(jn){return arguments.length?(lt=jn,this):lt},gn.yAxisLabelOffset=function(jn){return arguments.length?(gt=jn,this):gt},gn.yTicks=function(jn){return arguments.length?(F=jn,this):F},gn}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$0&&arguments[0]!==void 0&&arguments[0],Et=Jt?1:0;lt.attr("opacity",Et),rt.attr("opacity",Et)}return rn.aspectRatio=function(Jt){return arguments.length?(W=Jt,this):W},rn.circleOpacity=function(Jt){return arguments.length?(Ot=Jt,this):Ot},rn.colorSchema=function(Jt){return arguments.length?(Ct=Jt,this):Ct},rn.exportChart=function(Jt,Et){T.call(rn,Gt,Jt,Et)},rn.grid=function(Jt){return arguments.length?(l=Jt,this):l},rn.hasCrossHairs=function(Jt){return arguments.length?(Dt=Jt,this):Dt},rn.hasHollowCircles=function(Jt){return arguments.length?(le=Jt,this):le},rn.hasTrendline=function(Jt){return arguments.length?(jt=Jt,this):jt},rn.height=function(Jt){return arguments.length?(W&&(it=Math.ceil(Jt/W)),Q=Jt,this):Q},rn.highlightTextLegendOffset=function(Jt){return arguments.length?(gt=Jt,this):gt},rn.isAnimated=function(Jt){return arguments.length?(wt=Jt,this):wt},rn.margin=function(Jt){return arguments.length?(D=R({},D,Jt),this):D},rn.maxCircleArea=function(Jt){return arguments.length?(Xt=Jt,this):Xt},rn.on=function(){var Jt=Ce.on.apply(Ce,arguments);return Jt===Ce?rn:Jt},rn.width=function(Jt){return arguments.length?(W&&(Q=Math.ceil(Jt*W)),it=Jt,this):it},rn.xAxisLabel=function(Jt){return arguments.length?(w=Jt,this):w},rn.xAxisLabelOffset=function(Jt){return arguments.length?(tt=Jt,this):tt},rn.xAxisFormat=function(Jt){return arguments.length?(I=Jt,this):I},rn.xTicks=function(Jt){return arguments.length?(C=Jt,this):C},rn.yAxisFormat=function(Jt){return arguments.length?(K=Jt,this):K},rn.yAxisLabel=function(Jt){return arguments.length?(pt=Jt,this):pt},rn.yAxisLabelOffset=function(Jt){return arguments.length?(Mt=Jt,this):Mt},rn.yTicks=function(Jt){return arguments.length?(h=Jt,this):h},rn}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function($){for(var J=1;Jx&&pt.on("mouseover",function(Kt){(function(Jt,Et){le.call("customMouseOver",Jt,Et,T.mouse(Jt))})(this,Kt)}).on("mouseout",function(Kt){(function(Jt,Et){pt.select(".metadata-group").attr("transform","translate(9999, 0)"),le.call("customMouseOut",Jt,Et,T.mouse(Jt))})(this,Kt)}).on("mousemove",function(Kt){var Jt,Et,Rt,zt,Ft,ce,Se,xe,Ze,pn;Et=ve(Jt=this),Rt=st(Et,2),zt=Rt[0],Ft=Rt[1],ce=dt?Te(Ft):Ce(zt),Se=void 0,xe=void 0,ce&&(dt?(Se=zt-z.left,xe=_(ce.key)+_.bandwidth()/2):(Se=Q(ce.key)+W(ce[Xt]),xe=Ft-z.bottom),Ze=Se,pn=xe,pt.select(".metadata-group").attr("transform","translate("+Ze+","+pn+")"),le.call("customMouseMove",Jt,ce,K,Se,xe))}).on("click",function(Kt){var Jt,Et,Rt,zt,Ft,ce;Et=ve(Jt=this),Rt=st(Et,2),zt=Rt[0],Ft=Rt[1],ce=dt?Te(Ft):Ce(zt),le.call("customClick",Jt,ce,T.mouse(Jt))}),pt.selectAll(".bar").on("mouseover",function(Kt){(function(Jt,Et){T.select(Jt).attr("fill",function(){return q.color(K[Et.group]).darker()})})(this,Kt)}).on("mouseout",function(Kt){(function(Jt,Et){T.select(Jt).attr("fill",function(){return K[Et.group]})})(this,Kt)})}()})}function he(un){un.selectAll(".tick text").attr("transform","translate("+u.x+", "+u.y+")")}function ve(un){return T.mouse(un)}function Ce(un){var Qt=un-z.left,Kt=W.bandwidth(),Jt=[];return ct.forEach(function(Et){var Rt=Et.values.find(function(zt){return Math.abs(Qt>=Q(zt[At])+W(zt[Xt]))&&Math.abs(Qt-W(zt[Xt])-Q(zt[At])<=Kt)});Rt&&(Rt.values=Et.values,Rt.key=Rt.name,Jt.push(Rt))}),Jt.length?Jt[0]:void 0}function Te(un){var Qt=un-z.bottom,Kt=_.bandwidth(),Jt=[];return ct.map(function(Et){var Rt=Et.values.find(function(zt){return Math.abs(Qt>=_(zt[At]))&&Math.abs(Qt-_(zt[At])<=2*Kt)});Rt&&(Rt.values=Et.values,Rt.key=Rt.name,Jt.push(Rt))}),Jt.length?Jt[0]:void 0}function Ke(un){var Qt=T.select(this),Kt=N.interpolateRound(0,Q(Dt(un))),Jt=N.interpolateNumber(0,1);return function(Et){Qt.attr("width",Kt(Et)).style("opacity",Jt(Et))}}function rn(un){var Qt=T.select(this),Kt=N.interpolateRound(0,Mt-_(Dt(un))),Jt=N.interpolateRound(Mt,_(Dt(un))),Et=N.interpolateNumber(0,1);return function(Rt){Qt.attr("y",Jt(Rt)).attr("height",Kt(Rt)).style("opacity",Et(Rt))}}return Gt.aspectRatio=function(un){return arguments.length?(l=un,this):l},Gt.colorSchema=function(un){return arguments.length?(S=un,this):S},Gt.exportChart=function(un,Qt){M.call(Gt,pt,un,Qt)},Gt.groupLabel=function(un){return arguments.length?(Xt=un,this):Xt},Gt.grid=function(un){return arguments.length?(Ot=un,this):Ot},Gt.height=function(un){return arguments.length?(l&&(c=Math.ceil(un/l)),D=un,this):D},Gt.isHorizontal=function(un){return arguments.length?(dt=un,this):dt},Gt.isAnimated=function(un){return arguments.length?(re=un,this):re},Gt.loadingState=function(un){return arguments.length?(it=un,this):it},Gt.margin=function(un){return arguments.length?(z=R({},z,un),this):z},Gt.nameLabel=function(un){return arguments.length?(At=un,this):At},Gt.yTicks=function(un){return arguments.length?(v=un,this):v},Gt.on=function(){var un=le.on.apply(le,arguments);return un===le?Gt:un},Gt.tooltipThreshold=function(un){return arguments.length?(x=un,this):x},Gt.valueLabel=function(un){return arguments.length?($t=un,this):$t},Gt.valueLabelFormat=function(un){return arguments.length?(Ct=un,this):Ct},Gt.width=function(un){return arguments.length?(l&&(D=Math.ceil(un*l)),c=un,this):c},Gt.xTicks=function(un){return arguments.length?(I=un,this):I},Gt.yAxisLabel=function(un){return arguments.length?(lt=un,this):lt},Gt.yAxisLabelOffset=function(un){return arguments.length?(gt=un,this):gt},Gt.yTickTextOffset=function(un){return arguments.length?(u=un,this):u},Gt}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(J){for(var X=1;Xnt?xn-hr-10:xn}).attr("y",function(Sn){return v(Ke(Sn))+16}).text(function(Sn){return xe(Ce(Sn))+an(Te(Sn))+"%"}),_n.enter().append("rect").classed("striped",!0).attr("x",1).attr("y",function(Sn){return v(Ke(Sn))}).attr("height",v.bandwidth()).attr("fill","url(#diagonalHatch)"));Mn.enter().append("rect").classed("bg-hover",!0).on("click",function(Sn){Ln(this,Sn)}).attr("x",-Q.left).attr("y",function(Sn){return v(Ke(Sn))}).attr("height",v.bandwidth()*F.length+4*F.length).attr("width",nt+Q.left).attr("fill","#d6e8fa").attr("fill-opacity",0).on("mouseover",vn).on("mouseout",Tn),un?(wn.style("opacity",.24).transition().delay(function(Sn,xn){return wt[xn]}).duration(1e3).ease(Mt).tween("attr.width",Qn),B&&Pe.style("opacity",.24).transition().delay(function(Sn,xn){return wt[xn]}).duration(1e3).ease(Mt).tween("attr.width",dr),gn.style("opacity",.24).transition().delay(function(Sn,xn){return wt[xn]}).duration(1e3).ease(Mt).tween("attr.width",Qn)):(wn.attr("width",function(Sn){return h(B?rn(Sn):Te(Sn))}),B&&Pe.attr("width",function(Sn){return h(ve(Sn))}),gn.attr("width",function(Sn){return h(B?rn(Sn):Te(Sn))}))}(Ue),Ue.exit().transition().style("opacity",0).remove()}(),tt.select(".x-axis-group .axis.x").attr("transform","translate( 0, "+x+" )").call(l),tt.select(".y-axis-group.axis").attr("transform","translate( "+-Ot+", 0)").call(I),tt.selectAll(".y-axis-group.axis .tick").call(ye),tt.selectAll(".y-axis-group.axis .tick text").on("mouseover",vn).on("mouseout",Tn).call(ce,Q.left-50).selectAll("tspan"),$t&&(Xt&&tt.selectAll(".y-axis-label-text").remove(),Xt=tt.select(".y-axis-label").append("text").classed("y-axis-label-text",!0).attr("x",-x/2).attr("y",Ct).attr("text-anchor","middle").attr("transform","rotate(270 0 0)").text($t)),function(){if(Qt){var Ue=Number.parseInt(nt)+Number.parseInt(Q.right);Kt=tt.selectAll(".legend-group").append("g").attr("transform","translate("+Ue+", -30)").classed("tooltip-text",!0),Jt=Kt.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35"),[].concat($(new Set(y.map(function(Re){return Re.group})))).reverse().forEach(Se)}}(),function(){k>vt&&tt.on("mouseover",function(Ue){(function(Re,Ie){zt.call("customMouseOver",Re,Ie,M.mouse(Re)),vn(Ie)})(this,Ue)}).on("mouseout",function(Ue){(function(Re,Ie){tt.select(".metadata-group").attr("transform","translate(9999, 0)"),zt.call("customMouseOut",Re,Ie,M.mouse(Re))})(this,Ue)}).on("mousemove",function(Ue){var Re,Ie,tn,Mn,ke,on,_n,Pe,wn;Ie=pn(Re=this),tn=st(Ie,2),Mn=tn[0],ke=bn(tn[1]),on=void 0,_n=void 0,ke&&(on=Mn-Q.left,_n=u(ke.key)+u.bandwidth()/2,Pe=on,wn=_n,tt.select(".metadata-group").attr("transform","translate("+Pe+","+wn+")"),zt.call("customMouseMove",Re,ke,pt,on,_n))}).on("click",function(Ue){Ln(this,Ue)}),tt.selectAll(".row").on("mouseover",function(Ue){(function(Re,Ie){M.select(Re).attr("fill",function(){return Z.color(pt[Ie.group]).darker()})})(this,Ue)}).on("mouseout",function(Ue){(function(Re,Ie){M.select(Re).attr("fill",function(){return pt[Ie.group]})})(this,Ue)})}()})}function ce(qe,be){H.wrapTextWithEllipses(qe,be,-10,2,.8)}function Se(qe){var be,je=qe,Ue=void 0;be=qe,Ue=Jt.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("dx",0).attr("y",Et).style("fill","#000000").style("font-size","12px").text(be).call(Ze,200,12,-25),Rt=Ue.node().getBBox().height,Rt+5,Jt.append("circle").classed("tooltip-circle",!0).attr("cx",-39.5).attr("cy",Et+10).attr("r",5).style("fill",pt[je]).style("stroke-width",1),Et+=Rt+7}function xe(qe){return qe?qe+" | ":""}function Ze(qe,be,je){var Ue=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;qe.each(function(){var Re,Ie,tn,Mn,ke,on,_n;for(Re=(qe=M.select(this)).text().split(/\s+/).reverse(),tn=[],Mn=0,ke=qe.attr("y"),on=parseFloat(qe.attr("dy")),_n=qe.text(null).append("tspan").attr("x",Ue).attr("y",ke).attr("dy",on+"em");Ie=Re.pop();)tn.push(Ie),_n.text(tn.join(" ")),H.getTextWidth(tn.join(" "),je,"Karla, sans-serif")>be&&(tn.pop(),_n.text(tn.join(" ")),Mn<4&&(tn=[Ie],_n=qe.append("tspan").attr("x",Ue).attr("y",ke).attr("dy",1.2*++Mn+on+"em").text(Ie)))})}function pn(qe){return M.mouse(qe)}function bn(qe){var be=qe-Q.bottom,je=u.bandwidth(),Ue=[];return bt.map(function(Re){var Ie=Re.values.find(function(tn){return Math.abs(be>=u(tn[jt]))&&Math.abs(be-u(tn[jt])<=2*je)});Ie&&(Ie.values=Re.values,Ie.key=Ie.name,Ue.push(Ie))}),Ue.length?Ue[0]:void 0}function Ln(qe,be){var je=pn(qe),Ue=st(je,2),Re=(Ue[0],bn(Ue[1]));zt.call("customClick",qe,Re,M.mouse(qe))}function vn(qe,be){var je=null;this&&(je=M.select(this.parentNode).attr("class").replace("layer layer-","")),typeof qe=="string"&&(je=Fe(qe)),parseInt(je)>-1&&(M.select(W).select(".tick svg.visibility-"+je).attr("opacity",1),M.select(W).select("g .layer-"+je+" .bg-hover").attr("fill-opacity",.3))}function Tn(qe,be){var je=null;this&&(je=M.select(this.parentNode).attr("class").replace("layer layer-","")),typeof qe=="string"&&(je=Fe(qe)),parseInt(je)>-1&&(M.select(W).select(".tick svg.visibility-"+je).attr("opacity",0),M.select(W).select("g .layer-"+je+" .bg-hover").attr("fill-opacity",0))}function Qn(qe){var be=M.select(this),je=T.interpolateNumber(0,1),Ue=B?T.interpolateRound(0,h(rn(qe))):T.interpolateRound(0,h(Te(qe)));return function(Re){be.attr("width",Ue(Re)).style("opacity",je(Re))}}function dr(qe){var be=M.select(this),je=T.interpolateRound(0,h(ve(qe))),Ue=T.interpolateNumber(0,1);return function(Re){be.attr("width",je(Re)).style("opacity",Ue(Re))}}function ye(qe){qe.each(function(){var be=(qe=M.select(this)).node().getBBox().height/2,je=qe.append("svg").attr("class",function(Ue){return"visibility visibility-"+Fe(Ue)}).attr("x",-(Q.left-5)).attr("y",-be).attr("width","300").attr("height","300").attr("viewBox","0 0 600 600").attr("fill","none").attr("opacity",0);je.append("rect").attr("x",-10).attr("y",-10).attr("height","50").attr("width","50").attr("fill","#d6e8fa").on("mouseover",vn).on("mouseout",Tn).attr("opacity",0),je.append("path").attr("d","M 10,10 L 30,30 M 30,10 L 10,30").attr("stroke","#0072ce").attr("stroke-width","2").on("mouseover",vn).on("mouseout",Tn)})}function Fe(qe){return lt.indexOf(qe)}return Ft.aspectRatio=function(qe){return arguments.length?(S=qe,this):S},Ft.colorSchema=function(qe){return arguments.length?(dt=qe,this):dt},Ft.exportChart=function(qe,be){z.call(Ft,tt,qe,be)},Ft.groupLabel=function(qe){return arguments.length?(le=qe,this):le},Ft.grid=function(qe){return arguments.length?(Dt=qe,this):Dt},Ft.height=function(qe){return arguments.length?(S&&(k=Math.ceil(qe/S)),_=qe,this):_},Ft.isHorizontal=function(qe){return arguments.length?(w=qe,this):w},Ft.isPrintMode=function(qe){return arguments.length?(Qt=qe,this):Qt},Ft.isStacked=function(qe){return arguments.length?(B=qe,this):B},Ft.isAnimated=function(qe){return arguments.length?(un=qe,this):un},Ft.loadingState=function(qe){return arguments.length?(C=qe,this):C},Ft.margin=function(qe){return arguments.length?(Q=R({},Q,qe),this):Q},Ft.nameLabel=function(qe){return arguments.length?(jt=qe,this):jt},Ft.yTicks=function(qe){return arguments.length?(K=qe,this):K},Ft.on=function(){var qe=zt.on.apply(zt,arguments);return qe===zt?Ft:qe},Ft.percentageAxisToMaxRatio=function(qe){return arguments.length?(et=qe,this):et},Ft.tooltipThreshold=function(qe){return arguments.length?(vt=qe,this):vt},Ft.valueLabel=function(qe){return arguments.length?(re=qe,this):re},Ft.valueLabelFormat=function(qe){return arguments.length?(Gt=qe,this):Gt},Ft.width=function(qe){return arguments.length?(S&&(_=Math.ceil(qe*S)),k=qe,this):k},Ft.xTicks=function(qe){return arguments.length?(ct=qe,this):ct},Ft.yAxisLabel=function(qe){return arguments.length?($t=qe,this):$t},Ft.yAxisLabelOffset=function(qe){return arguments.length?(Ct=qe,this):Ct},Ft.yTickTextOffset=function(qe){return arguments.length?(b=qe,this):b},Ft}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function($){for(var J=1;JF&&bt.on("mouseover",function(Se){(function(xe,Ze){he.call("customMouseOver",xe,Ze,A.mouse(xe))})(this,Se)}).on("mouseout",function(Se){(function(xe,Ze){bt.select(".metadata-group").attr("transform","translate(9999, 0)"),he.call("customMouseOut",xe,Ze,A.mouse(xe))})(this,Se)}).on("mousemove",function(Se){var xe,Ze,pn,bn,Ln,vn,Tn,Qn,dr,ye;Ze=Ke(xe=this),pn=st(Ze,2),bn=pn[0],Ln=pn[1],vn=pt?un(Ln):rn(bn),Tn=void 0,Qn=void 0,vn&&(pt?(Tn=bn-c.left,Qn=_(vn.key)+_.bandwidth()/2):(Tn=W(vn.key)+c.left,Qn=Ln-c.bottom),dr=Tn,ye=Qn,bt.select(".metadata-group").attr("transform","translate("+dr+","+ye+")"),he.call("customMouseMove",xe,vn,ct,Tn,Qn))}).on("click",function(Se){var xe,Ze,pn,bn,Ln,vn;Ze=Ke(xe=this),pn=st(Ze,2),bn=pn[0],Ln=pn[1],vn=pt?un(Ln):rn(bn),he.call("customClick",xe,vn,A.mouse(xe))}),bt.selectAll(".bar").on("mouseover",Qt).on("mouseout",Kt)}()})}function Ce(Rt){Rt.selectAll(".tick text").attr("transform","translate(-20, -8)")}function Te(Rt){return Rt.map(function(zt){for(var Ft=0;Ft=Se&&zt=Se&&zt=vt[1]&&(vt[0]=z[tt].floor(At[0]),vt[1]=z[tt].offset(vt[0])),U.select(this).transition().call(U.event.target.move,vt.map(v))}nt.call("customBrushEnd",this,vt)}}function gt(vt,Ot){var At=null;vt!==null&&(At=[v(new Date(vt)),v(new Date(Ot))]),dt.move(pt,At)}return F.axisTimeCombinations=H,F.dateRange=function(vt){return arguments.length?(h=vt,Array.isArray(h)&>.apply(void 0,st(h)),this):h},F.gradient=function(vt){return arguments.length?(w=vt,this):w},F.height=function(vt){return arguments.length?(W=vt,this):W},F.loadingState=function(vt){return arguments.length?(k=vt,this):k},F.locale=function(vt){return arguments.length?(et=vt,this):et},F.margin=function(vt){return arguments.length?(it=R({},it,vt),this):it},F.on=function(){var vt=nt.on.apply(nt,arguments);return vt===nt?F:vt},F.width=function(vt){return arguments.length?(Q=vt,this):Q},F.xAxisCustomFormat=function(vt){return arguments.length?(ct=vt,this):ct},F.xAxisFormat=function(vt){return arguments.length?(b=vt,this):b},F.xTicks=function(vt){return arguments.length?(K=vt,this):K},F.roundingTimeInterval=function(vt){return arguments.length?(tt=vt,this):tt},F}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$0)){if(x/=Ot,Ot<0){if(x0){if(x>vt)return;x>gt&&(gt=x)}if(x=tt-lt,Ot||!(x<0)){if(x/=Ot,Ot<0){if(x>vt)return;x>gt&&(gt=x)}else if(Ot>0){if(x0)){if(x/=At,At<0){if(x0){if(x>vt)return;x>gt&&(gt=x)}if(x=nt-rt,At||!(x<0)){if(x/=At,At<0){if(x>vt)return;x>gt&&(gt=x)}else if(At>0){if(x0||vt<1)||(gt>0&&(Mt[0]=[lt+gt*Ot,rt+gt*At]),vt<1&&(Mt[1]=[lt+vt*Ot,rt+vt*At]),!0)}}}}}function A(Mt,w,B,tt,nt){var x=Mt[1];if(x)return!0;var y,F,lt=Mt[0],rt=Mt.left,gt=Mt.right,vt=rt[0],Ot=rt[1],At=gt[0],$t=gt[1],Xt=(vt+At)/2,Ct=(Ot+$t)/2;if($t===Ot){if(Xt=tt)return;if(vt>At){if(lt){if(lt[1]>=nt)return}else lt=[Xt,B];x=[Xt,nt]}else{if(lt){if(lt[1]1)if(vt>At){if(lt){if(lt[1]>=nt)return}else lt=[(B-F)/y,B];x=[(nt-F)/y,nt]}else{if(lt){if(lt[1]=tt)return}else lt=[w,y*w+F];x=[tt,y*tt+F]}else{if(lt){if(lt[0]=-et)){var At=lt*lt+rt*rt,$t=gt*gt+vt*vt,Xt=(vt*At-rt*$t)/Ot,Ct=(lt*$t-gt*At)/Ot,wt=c.pop()||new D;wt.arc=Mt,wt.site=nt,wt.x=Xt+y,wt.y=(wt.cy=Ct+F)+Math.sqrt(Xt*Xt+Ct*Ct),Mt.circle=wt;for(var Dt=null,jt=b._;jt;)if(wt.yct)F=F.L;else{if(!((nt=x-v(F,y))>ct)){tt>-ct?(w=F.P,B=F):nt>-ct?(w=F,B=F.N):w=B=F;break}if(!F.R){w=F;break}F=F.R}(function(le){S[le.index]={site:le,halfedges:[]}})(Mt);var lt=_(Mt);if(I.insert(w,lt),w||B){if(w===B)return Q(w),B=_(w.site),I.insert(lt,B),lt.edge=B.edge=V(w.site,lt.site),it(w),void it(B);if(B){Q(w),Q(B);var rt=w.site,gt=rt[0],vt=rt[1],Ot=Mt[0]-gt,At=Mt[1]-vt,$t=B.site,Xt=$t[0]-gt,Ct=$t[1]-vt,wt=2*(Ot*Ct-At*Xt),Dt=Ot*Ot+At*At,jt=Xt*Xt+Ct*Ct,re=[(Ct*Dt-At*jt)/wt+gt,(Ot*jt-Xt*Dt)/wt+vt];U(B.edge,rt,$t,re),lt.edge=V(rt,Mt,null,re),B.edge=V(Mt,$t,null,re),it(w),it(B)}else lt.edge=V(w.site,lt.site)}}function u(Mt,w){var B=Mt.site,tt=B[0],nt=B[1],x=nt-w;if(!x)return tt;var y=Mt.P;if(!y)return-1/0;var F=(B=y.site)[0],lt=B[1],rt=lt-w;if(!rt)return F;var gt=F-tt,vt=1/x-1/rt,Ot=gt/rt;return vt?(-Ot+Math.sqrt(Ot*Ot-2*vt*(gt*gt/(-2*rt)-lt+rt/2+nt-x/2)))/vt+tt:(tt+F)/2}function v(Mt,w){var B=Mt.N;if(B)return u(B,w);var tt=Mt.site;return tt[1]===w?tt[0]:1/0}var I,S,b,K,ct=1e-6,et=1e-12;function dt(Mt,w){return w[1]-Mt[1]||w[0]-Mt[0]}function pt(Mt,w){var B,tt,nt,x=Mt.sort(dt).pop();for(K=[],S=new Array(Mt.length),I=new Y,b=new Y;;)if(nt=z,x&&(!nt||x[1]ct||Math.abs($t[0][1]-$t[1][1])>ct)||delete K[Xt]})(y,F,lt,rt),function(gt,vt,Ot,At){var $t,Xt,Ct,wt,Dt,jt,re,le,Gt,he,ve,Ce,Te=S.length,Ke=!0;for($t=0;$tct||Math.abs(Ce-Gt)>ct)&&(Dt.splice(wt,0,K.push(N(Ct,he,Math.abs(ve-gt)ct?[gt,Math.abs(le-gt)ct?[Math.abs(Gt-At)ct?[Ot,Math.abs(le-Ot)ct?[Math.abs(Gt-vt)=F)return null;var lt=Mt-nt.site[0],rt=w-nt.site[1],gt=lt*lt+rt*rt;do nt=x.cells[tt=y],y=null,nt.halfedges.forEach(function(vt){var Ot=x.edges[vt],At=Ot.left;if(At!==nt.site&&At||(At=Ot.right)){var $t=Mt-At[0],Xt=w-At[1],Ct=$t*$t+Xt*Xt;CtMath.abs(Ie[1]-Tn[1])?Ke=!0:Te=!0),Tn=Ie,Ce=!0,A(),be()}function be(){var Ie;switch(Ze=Tn[0]-vn[0],pn=Tn[1]-vn[1],Qt){case O:case M:Kt&&(Ze=Math.max(Ft-wt,Math.min(Se-le,Ze)),Dt=wt+Ze,Gt=le+Ze),Jt&&(pn=Math.max(ce-jt,Math.min(xe-he,pn)),re=jt+pn,ve=he+pn);break;case H:Kt<0?(Ze=Math.max(Ft-wt,Math.min(Se-wt,Ze)),Dt=wt+Ze,Gt=le):Kt>0&&(Ze=Math.max(Ft-le,Math.min(Se-le,Ze)),Dt=wt,Gt=le+Ze),Jt<0?(pn=Math.max(ce-jt,Math.min(xe-jt,pn)),re=jt+pn,ve=he):Jt>0&&(pn=Math.max(ce-he,Math.min(xe-he,pn)),re=jt,ve=he+pn);break;case z:Kt&&(Dt=Math.max(Ft,Math.min(Se,wt-Ze*Kt)),Gt=Math.max(Ft,Math.min(Se,le+Ze*Kt))),Jt&&(re=Math.max(ce,Math.min(xe,jt-pn*Jt)),ve=Math.max(ce,Math.min(xe,he+pn*Jt)))}Gt0&&(wt=Dt-Ze),Jt<0?he=ve-pn:Jt>0&&(jt=re-pn),Qt=O,ye.attr("cursor",_.selection),be());break;default:return}A()}function Re(){switch(st.c.keyCode){case 16:bn&&(Te=Ke=bn=!1,be());break;case 18:Qt===z&&(Kt<0?le=Gt:Kt>0&&(wt=Dt),Jt<0?he=ve:Jt>0&&(jt=re),Qt=H,be());break;case 32:Qt===O&&(st.c.altKey?(Kt&&(le=Gt-Ze*Kt,wt=Dt+Ze*Kt),Jt&&(he=ve-pn*Jt,jt=re+pn*Jt),Qt=z):(Kt<0?le=Gt:Kt>0&&(wt=Dt),Jt<0?he=ve:Jt>0&&(jt=re),Qt=H),ye.attr("cursor",_[un]),be());break;default:return}A()}}function $t(){vt(this,arguments).moved()}function Xt(){vt(this,arguments).ended()}function Ct(){var wt=this.__brush||{selection:null};return wt.extent=D(tt.apply(this,arguments)),wt.dim=w,wt}return rt.move=function(wt,Dt){wt.selection?wt.on("start.brush",function(){vt(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){vt(this,arguments).end()}).tween("brush",function(){var jt=this,re=jt.__brush,le=vt(jt,arguments),Gt=re.selection,he=w.input(typeof Dt=="function"?Dt.apply(this,arguments):Dt,re.extent),ve=Object(q.a)(Gt,he);function Ce(Te){re.selection=Te===1&&he===null?null:ve(Te),gt.call(jt),le.brush()}return Gt!==null&&he!==null?Ce:Ce(1)}):wt.each(function(){var jt=this,re=arguments,le=jt.__brush,Gt=w.input(typeof Dt=="function"?Dt.apply(jt,re):Dt,le.extent),he=vt(jt,re).beforestart();Object(V.interrupt)(jt),le.selection=Gt===null?null:Gt,gt.call(jt),he.start().brush().end()})},rt.clear=function(wt){rt.move(wt,null)},Ot.prototype={beforestart:function(){return++this.active==1&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting?(this.starting=!1,this.emit("start")):this.emit("brush"),this},brush:function(){return this.emit("brush"),this},end:function(){return--this.active==0&&(delete this.state.emitter,this.emit("end")),this},emit:function(wt){Object(st.a)(new U(rt,wt,w.output(this.state.selection)),F.apply,F,[wt,this.that,this.args])}},rt.extent=function(wt){return arguments.length?(tt=typeof wt=="function"?wt:N(D(wt)),rt):tt},rt.filter=function(wt){return arguments.length?(nt=typeof wt=="function"?wt:N(!!wt),rt):nt},rt.touchable=function(wt){return arguments.length?(x=typeof wt=="function"?wt:N(!!wt),rt):x},rt.handleSize=function(wt){return arguments.length?(lt=+wt,rt):lt},rt.keyModifiers=function(wt){return arguments.length?(y=!!wt,rt):y},rt.on=function(){var wt=F.on.apply(F,arguments);return wt===F?rt:wt},rt}g.d(d,"brush",function(){return bt}),g.d(d,"brushX",function(){return dt}),g.d(d,"brushY",function(){return pt}),g.d(d,"brushSelection",function(){return et})}])})},5382:yr=>{(function(Oe,xt){yr.exports=xt()})(window,function(){return function(Oe){var xt={};function j(Pt){if(xt[Pt])return xt[Pt].exports;var d=xt[Pt]={i:Pt,l:!1,exports:{}};return Oe[Pt].call(d.exports,d,d.exports,j),d.l=!0,d.exports}return j.m=Oe,j.c=xt,j.d=function(Pt,d,g){j.o(Pt,d)||Object.defineProperty(Pt,d,{enumerable:!0,get:g})},j.r=function(Pt){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(Pt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(Pt,"__esModule",{value:!0})},j.t=function(Pt,d){if(1&d&&(Pt=j(Pt)),8&d||4&d&&typeof Pt=="object"&&Pt&&Pt.__esModule)return Pt;var g=Object.create(null);if(j.r(g),Object.defineProperty(g,"default",{enumerable:!0,value:Pt}),2&d&&typeof Pt!="string")for(var L in Pt)j.d(g,L,function(R){return Pt[R]}.bind(null,L));return g},j.n=function(Pt){var d=Pt&&Pt.__esModule?function(){return Pt.default}:function(){return Pt};return j.d(d,"a",d),d},j.o=function(Pt,d){return Object.prototype.hasOwnProperty.call(Pt,d)},j.p="",j(j.s=101)}([function(Oe,xt,j){"use strict";j.d(xt,"a",function(){return g});var Pt=new Date,d=new Date;function g(L,R,st,$){function J(X){return L(X=arguments.length===0?new Date:new Date(+X)),X}return J.floor=function(X){return L(X=new Date(+X)),X},J.ceil=function(X){return L(X=new Date(X-1)),R(X,1),L(X),X},J.round=function(X){var q=J(X),Z=J.ceil(X);return X-q0))return V;do V.push(Y=new Date(+X)),R(X,Z),L(X);while(Y=q)for(;L(q),!X(q);)q.setTime(q-1)},function(q,Z){if(q>=q)if(Z<0)for(;++Z<=0;)for(;R(q,-1),!X(q););else for(;--Z>=0;)for(;R(q,1),!X(q););})},st&&(J.count=function(X,q){return Pt.setTime(+X),d.setTime(+q),L(Pt),L(d),Math.floor(st(Pt,d))},J.every=function(X){return X=Math.floor(X),isFinite(X)&&X>0?X>1?J.filter($?function(q){return $(q)%X==0}:function(q){return J.count(0,q)%X==0}):J:null}),J}},function(Oe,xt,j){"use strict";j.d(xt,"d",function(){return Pt}),j.d(xt,"c",function(){return d}),j.d(xt,"b",function(){return g}),j.d(xt,"a",function(){return L}),j.d(xt,"e",function(){return R});var Pt=1e3,d=6e4,g=36e5,L=864e5,R=6048e5},function(Oe,xt,j){"use strict";j.r(xt);var Pt=function(w,B){return wB?1:w>=B?0:NaN},d=function(w){var B;return w.length===1&&(B=w,w=function(tt,nt){return Pt(B(tt),nt)}),{left:function(tt,nt,x,y){for(x==null&&(x=0),y==null&&(y=tt.length);x>>1;w(tt[F],nt)<0?x=F+1:y=F}return x},right:function(tt,nt,x,y){for(x==null&&(x=0),y==null&&(y=tt.length);x>>1;w(tt[F],nt)>0?y=F:x=F+1}return x}}},g=d(Pt),L=g.right,R=g.left,st=L,$=function(w,B){B==null&&(B=J);for(var tt=0,nt=w.length-1,x=w[0],y=new Array(nt<0?0:nt);ttw?1:B>=w?0:NaN},Z=function(w){return w===null?NaN:+w},Y=function(w,B){var tt,nt,x=w.length,y=0,F=-1,lt=0,rt=0;if(B==null)for(;++F1)return rt/(y-1)},V=function(w,B){var tt=Y(w,B);return tt&&Math.sqrt(tt)},N=function(w,B){var tt,nt,x,y=w.length,F=-1;if(B==null){for(;++F=tt)for(nt=x=tt;++Ftt&&(nt=tt),x=tt)for(nt=x=tt;++Ftt&&(nt=tt),x0)return[w];if((nt=B0)for(w=Math.ceil(w/F),B=Math.floor(B/F),y=new Array(x=Math.ceil(B-w+1));++lt=0?(y>=z?10:y>=c?5:y>=D?2:1)*Math.pow(10,x):-Math.pow(10,-x)/(y>=z?10:y>=c?5:y>=D?2:1)}function W(w,B,tt){var nt=Math.abs(B-w)/Math.max(0,tt),x=Math.pow(10,Math.floor(Math.log(nt)/Math.LN10)),y=nt/x;return y>=z?x*=10:y>=c?x*=5:y>=D&&(x*=2),BOt;)At.pop(),--$t;var Xt,Ct=new Array($t+1);for(y=0;y<=$t;++y)(Xt=Ct[y]=[]).x0=y>0?At[y-1]:vt,Xt.x1=y<$t?At[y]:Ot;for(y=0;y=1)return+tt(w[nt-1],nt-1,w);var nt,x=(nt-1)*B,y=Math.floor(x),F=+tt(w[y],y,w);return F+(+tt(w[y+1],y+1,w)-F)*(x-y)}},h=function(w,B,tt){return w=A.call(w,Z).sort(Pt),Math.ceil((tt-B)/(2*(C(w,.75)-C(w,.25))*Math.pow(w.length,-1/3)))},l=function(w,B,tt){return Math.ceil((tt-B)/(3.5*V(w)*Math.pow(w.length,-1/3)))},u=function(w,B){var tt,nt,x=w.length,y=-1;if(B==null){for(;++y=tt)for(nt=tt;++ynt&&(nt=tt)}else for(;++y=tt)for(nt=tt;++ynt&&(nt=tt);return nt},v=function(w,B){var tt,nt=w.length,x=nt,y=-1,F=0;if(B==null)for(;++y=0;)for(B=(nt=w[x]).length;--B>=0;)tt[--F]=nt[B];return tt},b=function(w,B){var tt,nt,x=w.length,y=-1;if(B==null){for(;++y=tt)for(nt=tt;++ytt&&(nt=tt)}else for(;++y=tt)for(nt=tt;++ytt&&(nt=tt);return nt},K=function(w,B){for(var tt=B.length,nt=new Array(tt);tt--;)nt[tt]=w[B[tt]];return nt},ct=function(w,B){if(tt=w.length){var tt,nt,x=0,y=0,F=w[y];for(B==null&&(B=Pt);++x>8&15|v>>4&240,v>>4&15|240&v,(15&v)<<4|15&v,1):I===8?new D(v>>24&255,v>>16&255,v>>8&255,(255&v)/255):I===4?new D(v>>12&15|v>>8&240,v>>8&15|v>>4&240,v>>4&15|240&v,((15&v)<<4|15&v)/255):null):(v=X.exec(u))?new D(v[1],v[2],v[3],1):(v=q.exec(u))?new D(255*v[1]/100,255*v[2]/100,255*v[3]/100,1):(v=Z.exec(u))?H(v[1],v[2],v[3],v[4]):(v=Y.exec(u))?H(255*v[1]/100,255*v[2]/100,255*v[3]/100,v[4]):(v=V.exec(u))?k(v[1],v[2]/100,v[3]/100,1):(v=N.exec(u))?k(v[1],v[2]/100,v[3]/100,v[4]):U.hasOwnProperty(u)?O(U[u]):u==="transparent"?new D(NaN,NaN,NaN,0):null}function O(u){return new D(u>>16&255,u>>8&255,255&u,1)}function H(u,v,I,S){return S<=0&&(u=v=I=NaN),new D(u,v,I,S)}function z(u){return u instanceof d||(u=M(u)),u?new D((u=u.rgb()).r,u.g,u.b,u.opacity):new D}function c(u,v,I,S){return arguments.length===1?z(u):new D(u,v,I,S==null?1:S)}function D(u,v,I,S){this.r=+u,this.g=+v,this.b=+I,this.opacity=+S}function it(){return"#"+W(this.r)+W(this.g)+W(this.b)}function Q(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(u===1?")":", "+u+")")}function W(u){return((u=Math.max(0,Math.min(255,Math.round(u)||0)))<16?"0":"")+u.toString(16)}function k(u,v,I,S){return S<=0?u=v=I=NaN:I<=0||I>=1?u=v=NaN:v<=0&&(u=NaN),new h(u,v,I,S)}function _(u){if(u instanceof h)return new h(u.h,u.s,u.l,u.opacity);if(u instanceof d||(u=M(u)),!u)return new h;if(u instanceof h)return u;var v=(u=u.rgb()).r/255,I=u.g/255,S=u.b/255,b=Math.min(v,I,S),K=Math.max(v,I,S),ct=NaN,et=K-b,dt=(K+b)/2;return et?(ct=v===K?(I-S)/et+6*(I0&&dt<1?0:ct,new h(ct,et,dt,u.opacity)}function C(u,v,I,S){return arguments.length===1?_(u):new h(u,v,I,S==null?1:S)}function h(u,v,I,S){this.h=+u,this.s=+v,this.l=+I,this.opacity=+S}function l(u,v,I){return 255*(u<60?v+(I-v)*u/60:u<180?I:u<240?v+(I-v)*(240-u)/60:v)}Object(Pt.a)(d,M,{copy:function(u){return Object.assign(new this.constructor,this,u)},displayable:function(){return this.rgb().displayable()},hex:T,formatHex:T,formatHsl:function(){return _(this).formatHsl()},formatRgb:A,toString:A}),Object(Pt.a)(D,c,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:it,formatHex:it,formatRgb:Q,toString:Q})),Object(Pt.a)(h,C,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new h(this.h,this.s,this.l*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new h(this.h,this.s,this.l*u,this.opacity)},rgb:function(){var u=this.h%360+360*(this.h<0),v=isNaN(u)||isNaN(this.s)?0:this.s,I=this.l,S=I+(I<.5?I:1-I)*v,b=2*I-S;return new D(l(u>=240?u-240:u+120,b,S),l(u,b,S),l(u<120?u+240:u-120,b,S),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(u===1?")":", "+u+")")}}))},function(Oe,xt,j){"use strict";xt.a=function(Pt,d){return Pt=+Pt,d=+d,function(g){return Pt*(1-g)+d*g}}},function(Oe,xt,j){"use strict";j.r(xt);var Pt=j(12),d=j(32),g=function(c){return Object(d.a)(Object(Pt.a)(c).call(document.documentElement))},L=0;function R(){return new st}function st(){this._="@"+(++L).toString(36)}st.prototype=R.prototype={constructor:st,get:function(c){for(var D=this._;!(D in c);)if(!(c=c.parentNode))return;return c[D]},set:function(c,D){return c[this._]=D},remove:function(c){return this._ in c&&delete c[this._]},toString:function(){return this._}};var $=j(34),J=j(60),X=j(20),q=j(14),Z=j(13),Y=j(10),V=function(c){return typeof c=="string"?new Y.a([document.querySelectorAll(c)],[document.documentElement]):new Y.a([c==null?[]:c],Y.c)},N=j(19),U=j(33),T=j(35),A=j(61),M=j(22),O=function(c,D){D==null&&(D=Object(M.a)().touches);for(var it=0,Q=D?D.length:0,W=new Array(Q);it180||J<-180?J-360*Math.round(J/360):J):Object(Pt.a)(isNaN(st)?$:st)}function L(st){return(st=+st)==1?R:function($,J){return J-$?function(X,q,Z){return X=Math.pow(X,Z),q=Math.pow(q,Z)-X,Z=1/Z,function(Y){return Math.pow(X+Y*q,Z)}}($,J,st):Object(Pt.a)(isNaN($)?J:$)}}function R(st,$){var J=$-st;return J?d(st,J):Object(Pt.a)(isNaN(st)?$:st)}},function(Oe,xt,j){"use strict";var Pt=j(18);xt.a=function(d){return(d=Object(Pt.a)(Math.abs(d)))?d[1]:NaN}},function(Oe,xt,j){"use strict";var Pt=j(19),d=j(33),g=j(34),L=function(y){return new Array(y.length)};function R(y,F){this.ownerDocument=y.ownerDocument,this.namespaceURI=y.namespaceURI,this._next=null,this._parent=y,this.__data__=F}R.prototype={constructor:R,appendChild:function(y){return this._parent.insertBefore(y,this._next)},insertBefore:function(y,F){return this._parent.insertBefore(y,F)},querySelector:function(y){return this._parent.querySelector(y)},querySelectorAll:function(y){return this._parent.querySelectorAll(y)}};function st(y,F,lt,rt,gt,vt){for(var Ot,At=0,$t=F.length,Xt=vt.length;AtF?1:y>=F?0:NaN}var X=j(20);function q(y){return function(){this.removeAttribute(y)}}function Z(y){return function(){this.removeAttributeNS(y.space,y.local)}}function Y(y,F){return function(){this.setAttribute(y,F)}}function V(y,F){return function(){this.setAttributeNS(y.space,y.local,F)}}function N(y,F){return function(){var lt=F.apply(this,arguments);lt==null?this.removeAttribute(y):this.setAttribute(y,lt)}}function U(y,F){return function(){var lt=F.apply(this,arguments);lt==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,lt)}}var T=j(35);function A(y){return function(){delete this[y]}}function M(y,F){return function(){this[y]=F}}function O(y,F){return function(){var lt=F.apply(this,arguments);lt==null?delete this[y]:this[y]=lt}}function H(y){return y.trim().split(/^|\s+/)}function z(y){return y.classList||new c(y)}function c(y){this._node=y,this._names=H(y.getAttribute("class")||"")}function D(y,F){for(var lt=z(y),rt=-1,gt=F.length;++rt=0&&(this._names.splice(F,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(y){return this._names.indexOf(y)>=0}};function _(){this.textContent=""}function C(y){return function(){this.textContent=y}}function h(y){return function(){var F=y.apply(this,arguments);this.textContent=F==null?"":F}}function l(){this.innerHTML=""}function u(y){return function(){this.innerHTML=y}}function v(y){return function(){var F=y.apply(this,arguments);this.innerHTML=F==null?"":F}}function I(){this.nextSibling&&this.parentNode.appendChild(this)}function S(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var b=j(12);function K(){return null}function ct(){var y=this.parentNode;y&&y.removeChild(this)}function et(){var y=this.cloneNode(!1),F=this.parentNode;return F?F.insertBefore(y,this.nextSibling):y}function dt(){var y=this.cloneNode(!0),F=this.parentNode;return F?F.insertBefore(y,this.nextSibling):y}var pt=j(17),bt=j(21);function Mt(y,F,lt){var rt=Object(bt.a)(y),gt=rt.CustomEvent;typeof gt=="function"?gt=new gt(F,lt):(gt=rt.document.createEvent("Event"),lt?(gt.initEvent(F,lt.bubbles,lt.cancelable),gt.detail=lt.detail):gt.initEvent(F,!1,!1)),y.dispatchEvent(gt)}function w(y,F){return function(){return Mt(this,y,F)}}function B(y,F){return function(){return Mt(this,y,F.apply(this,arguments))}}j.d(xt,"c",function(){return tt}),j.d(xt,"a",function(){return nt});var tt=[null];function nt(y,F){this._groups=y,this._parents=F}function x(){return new nt([[document.documentElement]],tt)}nt.prototype=x.prototype={constructor:nt,select:function(y){typeof y!="function"&&(y=Object(Pt.a)(y));for(var F=this._groups,lt=F.length,rt=new Array(lt),gt=0;gt=Ke&&(Ke=Te+1);!(Ce=he[Ke])&&++Ke=0;)(rt=gt[vt])&&(Ot&&4^rt.compareDocumentPosition(Ot)&&Ot.parentNode.insertBefore(rt,Ot),Ot=rt);return this},sort:function(y){function F(wt,Dt){return wt&&Dt?y(wt.__data__,Dt.__data__):!wt-!Dt}y||(y=J);for(var lt=this._groups,rt=lt.length,gt=new Array(rt),vt=0;vt1?this.each((F==null?A:typeof F=="function"?O:M)(y,F)):this.node()[y]},classed:function(y,F){var lt=H(y+"");if(arguments.length<2){for(var rt=z(this.node()),gt=-1,vt=lt.length;++gt0?Object(Pt.a)(function(R){R.setFullYear(Math.floor(R.getFullYear()/L)*L),R.setMonth(0,1),R.setHours(0,0,0,0)},function(R,st){R.setFullYear(R.getFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return g});var Pt=j(0),d=Object(Pt.a)(function(L){L.setUTCMonth(0,1),L.setUTCHours(0,0,0,0)},function(L,R){L.setUTCFullYear(L.getUTCFullYear()+R)},function(L,R){return R.getUTCFullYear()-L.getUTCFullYear()},function(L){return L.getUTCFullYear()});d.every=function(L){return isFinite(L=Math.floor(L))&&L>0?Object(Pt.a)(function(R){R.setUTCFullYear(Math.floor(R.getUTCFullYear()/L)*L),R.setUTCMonth(0,1),R.setUTCHours(0,0,0,0)},function(R,st){R.setUTCFullYear(R.getUTCFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";j.d(xt,"c",function(){return d}),j.d(xt,"a",function(){return J});var Pt={},d=null;typeof document!="undefined"&&("onmouseenter"in document.documentElement||(Pt={mouseenter:"mouseover",mouseleave:"mouseout"}));function g(X,q,Z){return X=L(X,q,Z),function(Y){var V=Y.relatedTarget;V&&(V===this||8&V.compareDocumentPosition(this))||X.call(this,Y)}}function L(X,q,Z){return function(Y){var V=d;d=Y;try{X.call(this,this.__data__,q,Z)}finally{d=V}}}function R(X){return X.trim().split(/^|\s+/).map(function(q){var Z="",Y=q.indexOf(".");return Y>=0&&(Z=q.slice(Y+1),q=q.slice(0,Y)),{type:q,name:Z}})}function st(X){return function(){var q=this.__on;if(q){for(var Z,Y=0,V=-1,N=q.length;Y1?L[0]+L.slice(2):L,+Pt.slice(g+1)]}},function(Oe,xt,j){"use strict";function Pt(){}xt.a=function(d){return d==null?Pt:function(){return this.querySelector(d)}}},function(Oe,xt,j){"use strict";var Pt=j(14);xt.a=function(d){var g=d+="",L=g.indexOf(":");return L>=0&&(g=d.slice(0,L))!=="xmlns"&&(d=d.slice(L+1)),Pt.a.hasOwnProperty(g)?{space:Pt.a[g],local:d}:d}},function(Oe,xt,j){"use strict";xt.a=function(Pt){return Pt.ownerDocument&&Pt.ownerDocument.defaultView||Pt.document&&Pt||Pt.defaultView}},function(Oe,xt,j){"use strict";var Pt=j(17);xt.a=function(){for(var d,g=Pt.c;d=g.sourceEvent;)g=d;return g}},function(Oe,xt,j){"use strict";function Pt(d){return ArrayBuffer.isView(d)&&!(d instanceof DataView)}j.d(xt,"b",function(){return Pt}),xt.a=function(d,g){g||(g=[]);var L,R=d?Math.min(g.length,d.length):0,st=g.slice();return function($){for(L=0;L=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function d(L){if(!(R=Pt.exec(L)))throw new Error("invalid format: "+L);var R;return new g({fill:R[1],align:R[2],sign:R[3],symbol:R[4],zero:R[5],width:R[6],comma:R[7],precision:R[8]&&R[8].slice(1),trim:R[9],type:R[10]})}function g(L){this.fill=L.fill===void 0?" ":L.fill+"",this.align=L.align===void 0?">":L.align+"",this.sign=L.sign===void 0?"-":L.sign+"",this.symbol=L.symbol===void 0?"":L.symbol+"",this.zero=!!L.zero,this.width=L.width===void 0?void 0:+L.width,this.comma=!!L.comma,this.precision=L.precision===void 0?void 0:+L.precision,this.trim=!!L.trim,this.type=L.type===void 0?"":L.type+""}d.prototype=g.prototype,g.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(Oe,xt,j){"use strict";function Pt(d,g,L,R,st){var $=d*d,J=$*d;return((1-3*d+3*$-J)*g+(4-6*$+3*J)*L+(1+3*d+3*$-3*J)*R+J*st)/6}j.d(xt,"a",function(){return Pt}),xt.b=function(d){var g=d.length-1;return function(L){var R=L<=0?L=0:L>=1?(L=1,g-1):Math.floor(L*g),st=d[R],$=d[R+1],J=R>0?d[R-1]:2*st-$,X=R0?L>1?Object(Pt.a)(function(R){R.setTime(Math.floor(R/L)*L)},function(R,st){R.setTime(+R+st*L)},function(R,st){return(st-R)/L}):d:null},xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";var Pt=j(10);xt.a=function(d){return typeof d=="string"?new Pt.a([[document.querySelector(d)]],[document.documentElement]):new Pt.a([[d]],Pt.c)}},function(Oe,xt,j){"use strict";function Pt(){return[]}xt.a=function(d){return d==null?Pt:function(){return this.querySelectorAll(d)}}},function(Oe,xt,j){"use strict";xt.a=function(Pt){return function(){return this.matches(Pt)}}},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return R});var Pt=j(21);function d(st){return function(){this.style.removeProperty(st)}}function g(st,$,J){return function(){this.style.setProperty(st,$,J)}}function L(st,$,J){return function(){var X=$.apply(this,arguments);X==null?this.style.removeProperty(st):this.style.setProperty(st,X,J)}}function R(st,$){return st.style.getPropertyValue($)||Object(Pt.a)(st).getComputedStyle(st,null).getPropertyValue($)}xt.a=function(st,$,J){return arguments.length>1?this.each(($==null?d:typeof $=="function"?L:g)(st,$,J==null?"":J)):R(this.node(),st)}},function(Oe,xt,j){"use strict";var Pt=j(5),d=j(37),g=j(58),L=j(57),R=j(6),st=j(59),$=j(55),J=j(24),X=j(23);xt.a=function(q,Z){var Y,V=typeof Z;return Z==null||V==="boolean"?Object(J.a)(Z):(V==="number"?R.a:V==="string"?(Y=Object(Pt.e)(Z))?(Z=Y,d.a):$.a:Z instanceof Pt.e?d.a:Z instanceof Date?L.a:Object(X.b)(Z)?X.a:Array.isArray(Z)?g.b:typeof Z.valueOf!="function"&&typeof Z.toString!="function"||isNaN(Z)?st.a:R.a)(q,Z)}},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return st}),j.d(xt,"c",function(){return $});var Pt=j(5),d=j(26),g=j(53),L=j(8);function R(J){return function(X){var q,Z,Y=X.length,V=new Array(Y),N=new Array(Y),U=new Array(Y);for(q=0;qN+1?V.slice(0,N+1)+"."+V.slice(N+1):V+new Array(N-V.length+2).join("0")},st={"%":function(q,Z){return(100*q).toFixed(Z)},b:function(q){return Math.round(q).toString(2)},c:function(q){return q+""},d:function(q){return Math.round(q).toString(10)},e:function(q,Z){return q.toExponential(Z)},f:function(q,Z){return q.toFixed(Z)},g:function(q,Z){return q.toPrecision(Z)},o:function(q){return Math.round(q).toString(8)},p:function(q,Z){return R(100*q,Z)},r:R,s:function(q,Z){var Y=Object(L.a)(q,Z);if(!Y)return q+"";var V=Y[0],N=Y[1],U=N-(Pt=3*Math.max(-8,Math.min(8,Math.floor(N/3))))+1,T=V.length;return U===T?V:U>T?V+new Array(U-T+1).join("0"):U>0?V.slice(0,U)+"."+V.slice(U):"0."+new Array(1-U).join("0")+Object(L.a)(q,Math.max(0,Z+U-1))[0]},X:function(q){return Math.round(q).toString(16).toUpperCase()},x:function(q){return Math.round(q).toString(16)}},$=function(q){return q},J=Array.prototype.map,X=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];xt.a=function(q){var Z,Y,V=q.grouping===void 0||q.thousands===void 0?$:(Z=J.call(q.grouping,Number),Y=q.thousands+"",function(c,D){for(var it=c.length,Q=[],W=0,k=Z[0],_=0;it>0&&k>0&&(_+k+1>D&&(k=Math.max(1,D-_)),Q.push(c.substring(it-=k,it+k)),!((_+=k+1)>D));)k=Z[W=(W+1)%Z.length];return Q.reverse().join(Y)}),N=q.currency===void 0?"":q.currency[0]+"",U=q.currency===void 0?"":q.currency[1]+"",T=q.decimal===void 0?".":q.decimal+"",A=q.numerals===void 0?$:function(c){return function(D){return D.replace(/[0-9]/g,function(it){return c[+it]})}}(J.call(q.numerals,String)),M=q.percent===void 0?"%":q.percent+"",O=q.minus===void 0?"-":q.minus+"",H=q.nan===void 0?"NaN":q.nan+"";function z(c){var D=(c=Object(g.b)(c)).fill,it=c.align,Q=c.sign,W=c.symbol,k=c.zero,_=c.width,C=c.comma,h=c.precision,l=c.trim,u=c.type;u==="n"?(C=!0,u="g"):st[u]||(h===void 0&&(h=12),l=!0,u="g"),(k||D==="0"&&it==="=")&&(k=!0,D="0",it="=");var v=W==="$"?N:W==="#"&&/[boxX]/.test(u)?"0"+u.toLowerCase():"",I=W==="$"?U:/[%p]/.test(u)?M:"",S=st[u],b=/[defgprs%]/.test(u);function K(ct){var et,dt,pt,bt=v,Mt=I;if(u==="c")Mt=S(ct)+Mt,ct="";else{var w=(ct=+ct)<0;if(ct=isNaN(ct)?H:S(Math.abs(ct),h),l&&(ct=function(nt){t:for(var x,y=nt.length,F=1,lt=-1;F0&&(lt=0)}return lt>0?nt.slice(0,lt)+nt.slice(x+1):nt}(ct)),w&&+ct==0&&(w=!1),bt=(w?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+bt,Mt=(u==="s"?X[8+Pt/3]:"")+Mt+(w&&Q==="("?")":""),b){for(et=-1,dt=ct.length;++et(pt=ct.charCodeAt(et))||pt>57){Mt=(pt===46?T+ct.slice(et+1):ct.slice(et))+Mt,ct=ct.slice(0,et);break}}}C&&!k&&(ct=V(ct,1/0));var B=bt.length+ct.length+Mt.length,tt=B<_?new Array(_-B+1).join(D):"";switch(C&&k&&(ct=V(tt+ct,tt.length?_-Mt.length:1/0),tt=""),it){case"<":ct=bt+ct+Mt+tt;break;case"=":ct=bt+tt+ct+Mt;break;case"^":ct=tt.slice(0,B=tt.length>>1)+bt+ct+Mt+tt.slice(B);break;default:ct=tt+bt+ct+Mt}return A(ct)}return h=h===void 0?6:/[gprs]/.test(u)?Math.max(1,Math.min(21,h)):Math.max(0,Math.min(20,h)),K.toString=function(){return c+""},K}return{format:z,formatPrefix:function(c,D){var it=z(((c=Object(g.b)(c)).type="f",c)),Q=3*Math.max(-8,Math.min(8,Math.floor(Object(d.a)(D)/3))),W=Math.pow(10,-Q),k=X[8+Q/3];return function(_){return it(W*_)+k}}}}},,,function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return d}),j.d(xt,"c",function(){return g}),j.d(xt,"a",function(){return R});var Pt,d,g,L=j(40);function R(st){return Pt=Object(L.a)(st),d=Pt.format,g=Pt.formatPrefix,Pt}R({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(Oe,xt,j){"use strict";j.r(xt);var Pt=j(43);j.d(xt,"formatDefaultLocale",function(){return Pt.a}),j.d(xt,"format",function(){return Pt.b}),j.d(xt,"formatPrefix",function(){return Pt.c});var d=j(40);j.d(xt,"formatLocale",function(){return d.a});var g=j(25);j.d(xt,"formatSpecifier",function(){return g.b}),j.d(xt,"FormatSpecifier",function(){return g.a});var L=j(63);j.d(xt,"precisionFixed",function(){return L.a});var R=j(64);j.d(xt,"precisionPrefix",function(){return R.a});var st=j(65);j.d(xt,"precisionRound",function(){return st.a})},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return d}),j.d(xt,"c",function(){return g}),j.d(xt,"d",function(){return L}),j.d(xt,"e",function(){return R}),j.d(xt,"a",function(){return $});var Pt,d,g,L,R,st=j(54);function $(J){return Pt=Object(st.a)(J),d=Pt.format,g=Pt.parse,L=Pt.utcFormat,R=Pt.utcParse,Pt}$({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})},function(Oe,xt,j){"use strict";j.r(xt);function Pt(){}function d(T,A){var M=new Pt;if(T instanceof Pt)T.each(function(D,it){M.set(it,D)});else if(Array.isArray(T)){var O,H=-1,z=T.length;if(A==null)for(;++H=O.length)return T!=null&&c.sort(T),A!=null?A(c):c;for(var W,k,_,C=-1,h=c.length,l=O[D++],u=g(),v=it();++CO.length)return it;var W,k=H[Q-1];return A!=null&&Q>=O.length?W=it.entries():(W=[],it.each(function(_,C){W.push({key:C,values:D(_,Q)})})),k!=null?W.sort(function(_,C){return k(_.key,C.key)}):W}(z(c,0,$,J),0)},key:function(c){return O.push(c),M},sortKeys:function(c){return H[O.length-1]=c,M},sortValues:function(c){return T=c,M},rollup:function(c){return A=c,M}}};function R(){return{}}function st(T,A,M){T[A]=M}function $(){return g()}function J(T,A,M){T.set(A,M)}function X(){}var q=g.prototype;function Z(T,A){var M=new X;if(T instanceof X)T.each(function(z){M.add(z)});else if(T){var O=-1,H=T.length;if(A==null)for(;++O=12)]},q:function(ke){return 1+~~(ke.getMonth()/3)},Q:Kt,s:Jt,S:nt,u:x,U:y,V:F,w:lt,W:rt,x:null,X:null,y:gt,Y:vt,Z:Ot,"%":Qt},Ue={a:function(ke){return xe[ke.getUTCDay()]},A:function(ke){return Se[ke.getUTCDay()]},b:function(ke){return pn[ke.getUTCMonth()]},B:function(ke){return Ze[ke.getUTCMonth()]},c:null,d:At,e:At,f:Dt,H:$t,I:Xt,j:Ct,L:wt,m:jt,M:re,p:function(ke){return ce[+(ke.getUTCHours()>=12)]},q:function(ke){return 1+~~(ke.getUTCMonth()/3)},Q:Kt,s:Jt,S:le,u:Gt,U:he,V:ve,w:Ce,W:Te,x:null,X:null,y:Ke,Y:rn,Z:un,"%":Qt},Re={a:function(ke,on,_n){var Pe=Qn.exec(on.slice(_n));return Pe?(ke.w=dr[Pe[0].toLowerCase()],_n+Pe[0].length):-1},A:function(ke,on,_n){var Pe=vn.exec(on.slice(_n));return Pe?(ke.w=Tn[Pe[0].toLowerCase()],_n+Pe[0].length):-1},b:function(ke,on,_n){var Pe=qe.exec(on.slice(_n));return Pe?(ke.m=be[Pe[0].toLowerCase()],_n+Pe[0].length):-1},B:function(ke,on,_n){var Pe=ye.exec(on.slice(_n));return Pe?(ke.m=Fe[Pe[0].toLowerCase()],_n+Pe[0].length):-1},c:function(ke,on,_n){return Mn(ke,Rt,on,_n)},d:C,e:C,f:S,H:l,I:l,j:h,L:I,m:_,M:u,p:function(ke,on,_n){var Pe=bn.exec(on.slice(_n));return Pe?(ke.p=Ln[Pe[0].toLowerCase()],_n+Pe[0].length):-1},q:k,Q:K,s:ct,S:v,u:H,U:z,V:c,w:O,W:D,x:function(ke,on,_n){return Mn(ke,zt,on,_n)},X:function(ke,on,_n){return Mn(ke,Ft,on,_n)},y:Q,Y:it,Z:W,"%":b};function Ie(ke,on){return function(_n){var Pe,wn,an,gn=[],Sn=-1,xn=0,hr=ke.length;for(_n instanceof Date||(_n=new Date(+_n));++Sn53)return null;"w"in an||(an.w=1),"Z"in an?(wn=(Pe=J(X(an.y,0,1))).getUTCDay(),Pe=wn>4||wn===0?Pt.c.ceil(Pe):Object(Pt.c)(Pe),Pe=d.a.offset(Pe,7*(an.V-1)),an.y=Pe.getUTCFullYear(),an.m=Pe.getUTCMonth(),an.d=Pe.getUTCDate()+(an.w+6)%7):(wn=(Pe=$(X(an.y,0,1))).getDay(),Pe=wn>4||wn===0?g.c.ceil(Pe):Object(g.c)(Pe),Pe=L.b.offset(Pe,7*(an.V-1)),an.y=Pe.getFullYear(),an.m=Pe.getMonth(),an.d=Pe.getDate()+(an.w+6)%7)}else("W"in an||"U"in an)&&("w"in an||(an.w="u"in an?an.u%7:"W"in an?1:0),wn="Z"in an?J(X(an.y,0,1)).getUTCDay():$(X(an.y,0,1)).getDay(),an.m=0,an.d="W"in an?(an.w+6)%7+7*an.W-(wn+5)%7:an.w+7*an.U-(wn+6)%7);return"Z"in an?(an.H+=an.Z/100|0,an.M+=an.Z%100,J(an)):$(an)}}function Mn(ke,on,_n,Pe){for(var wn,an,gn=0,Sn=on.length,xn=_n.length;gn=xn)return-1;if((wn=on.charCodeAt(gn++))===37){if(wn=on.charAt(gn++),!(an=Re[wn in Z?on.charAt(gn++):wn])||(Pe=an(ke,_n,Pe))<0)return-1}else if(wn!=_n.charCodeAt(Pe++))return-1}return Pe}return je.x=Ie(zt,je),je.X=Ie(Ft,je),je.c=Ie(Rt,je),Ue.x=Ie(zt,Ue),Ue.X=Ie(Ft,Ue),Ue.c=Ie(Rt,Ue),{format:function(ke){var on=Ie(ke+="",je);return on.toString=function(){return ke},on},parse:function(ke){var on=tn(ke+="",!1);return on.toString=function(){return ke},on},utcFormat:function(ke){var on=Ie(ke+="",Ue);return on.toString=function(){return ke},on},utcParse:function(ke){var on=tn(ke+="",!0);return on.toString=function(){return ke},on}}}var Z={"-":"",_:" ",0:"0"},Y=/^\s*\d+/,V=/^%/,N=/[\\^$*+?|[\]().{}]/g;function U(Et,Rt,zt){var Ft=Et<0?"-":"",ce=(Ft?-Et:Et)+"",Se=ce.length;return Ft+(Se68?1900:2e3),zt+Ft[0].length):-1}function W(Et,Rt,zt){var Ft=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Rt.slice(zt,zt+6));return Ft?(Et.Z=Ft[1]?0:-(Ft[2]+(Ft[3]||"00")),zt+Ft[0].length):-1}function k(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+1));return Ft?(Et.q=3*Ft[0]-3,zt+Ft[0].length):-1}function _(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.m=Ft[0]-1,zt+Ft[0].length):-1}function C(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.d=+Ft[0],zt+Ft[0].length):-1}function h(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.m=0,Et.d=+Ft[0],zt+Ft[0].length):-1}function l(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.H=+Ft[0],zt+Ft[0].length):-1}function u(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.M=+Ft[0],zt+Ft[0].length):-1}function v(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.S=+Ft[0],zt+Ft[0].length):-1}function I(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.L=+Ft[0],zt+Ft[0].length):-1}function S(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+6));return Ft?(Et.L=Math.floor(Ft[0]/1e3),zt+Ft[0].length):-1}function b(Et,Rt,zt){var Ft=V.exec(Rt.slice(zt,zt+1));return Ft?zt+Ft[0].length:-1}function K(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.Q=+Ft[0],zt+Ft[0].length):-1}function ct(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.s=+Ft[0],zt+Ft[0].length):-1}function et(Et,Rt){return U(Et.getDate(),Rt,2)}function dt(Et,Rt){return U(Et.getHours(),Rt,2)}function pt(Et,Rt){return U(Et.getHours()%12||12,Rt,2)}function bt(Et,Rt){return U(1+L.b.count(Object(R.a)(Et),Et),Rt,3)}function Mt(Et,Rt){return U(Et.getMilliseconds(),Rt,3)}function w(Et,Rt){return Mt(Et,Rt)+"000"}function B(Et,Rt){return U(Et.getMonth()+1,Rt,2)}function tt(Et,Rt){return U(Et.getMinutes(),Rt,2)}function nt(Et,Rt){return U(Et.getSeconds(),Rt,2)}function x(Et){var Rt=Et.getDay();return Rt===0?7:Rt}function y(Et,Rt){return U(g.g.count(Object(R.a)(Et)-1,Et),Rt,2)}function F(Et,Rt){var zt=Et.getDay();return Et=zt>=4||zt===0?Object(g.i)(Et):g.i.ceil(Et),U(g.i.count(Object(R.a)(Et),Et)+(Object(R.a)(Et).getDay()===4),Rt,2)}function lt(Et){return Et.getDay()}function rt(Et,Rt){return U(g.c.count(Object(R.a)(Et)-1,Et),Rt,2)}function gt(Et,Rt){return U(Et.getFullYear()%100,Rt,2)}function vt(Et,Rt){return U(Et.getFullYear()%1e4,Rt,4)}function Ot(Et){var Rt=Et.getTimezoneOffset();return(Rt>0?"-":(Rt*=-1,"+"))+U(Rt/60|0,"0",2)+U(Rt%60,"0",2)}function At(Et,Rt){return U(Et.getUTCDate(),Rt,2)}function $t(Et,Rt){return U(Et.getUTCHours(),Rt,2)}function Xt(Et,Rt){return U(Et.getUTCHours()%12||12,Rt,2)}function Ct(Et,Rt){return U(1+d.a.count(Object(st.a)(Et),Et),Rt,3)}function wt(Et,Rt){return U(Et.getUTCMilliseconds(),Rt,3)}function Dt(Et,Rt){return wt(Et,Rt)+"000"}function jt(Et,Rt){return U(Et.getUTCMonth()+1,Rt,2)}function re(Et,Rt){return U(Et.getUTCMinutes(),Rt,2)}function le(Et,Rt){return U(Et.getUTCSeconds(),Rt,2)}function Gt(Et){var Rt=Et.getUTCDay();return Rt===0?7:Rt}function he(Et,Rt){return U(Pt.g.count(Object(st.a)(Et)-1,Et),Rt,2)}function ve(Et,Rt){var zt=Et.getUTCDay();return Et=zt>=4||zt===0?Object(Pt.i)(Et):Pt.i.ceil(Et),U(Pt.i.count(Object(st.a)(Et),Et)+(Object(st.a)(Et).getUTCDay()===4),Rt,2)}function Ce(Et){return Et.getUTCDay()}function Te(Et,Rt){return U(Pt.c.count(Object(st.a)(Et)-1,Et),Rt,2)}function Ke(Et,Rt){return U(Et.getUTCFullYear()%100,Rt,2)}function rn(Et,Rt){return U(Et.getUTCFullYear()%1e4,Rt,4)}function un(){return"+0000"}function Qt(){return"%"}function Kt(Et){return+Et}function Jt(Et){return Math.floor(+Et/1e3)}},function(Oe,xt,j){"use strict";var Pt=j(6),d=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,g=new RegExp(d.source,"g");xt.a=function(L,R){var st,$,J,X=d.lastIndex=g.lastIndex=0,q=-1,Z=[],Y=[];for(L+="",R+="";(st=d.exec(L))&&($=g.exec(R));)(J=$.index)>X&&(J=R.slice(X,J),Z[q]?Z[q]+=J:Z[++q]=J),(st=st[0])===($=$[0])?Z[q]?Z[q]+=$:Z[++q]=$:(Z[++q]=null,Y.push({i:q,x:Object(Pt.a)(st,$)})),X=g.lastIndex;return X=0&&(q=X.slice(Z+1),X=X.slice(0,Z)),X&&!J.hasOwnProperty(X))throw new Error("unknown type: "+X);return{type:X,name:q}})}function R($,J){for(var X,q=0,Z=$.length;q0)for(var X,q,Z=new Array(X),Y=0;Y1e-6)if(Math.abs(He*ge-Ae*Qe)>1e-6&&Wt){var kn=Vt-se,Bn=_t-pe,Yn=ge*ge+Ae*Ae,fr=kn*kn+Bn*Bn,or=Math.sqrt(Yn),Zn=Math.sqrt(sn),ur=Wt*Math.tan((Pt-Math.acos((Yn+sn-fr)/(2*or*Zn)))/2),Tr=ur/Zn,Sr=ur/or;Math.abs(Tr-1)>1e-6&&(this._+="L"+(ht+Tr*Qe)+","+(Nt+Tr*He)),this._+="A"+Wt+","+Wt+",0,0,"+ +(He*kn>Qe*Bn)+","+(this._x1=ht+Sr*ge)+","+(this._y1=Nt+Sr*Ae)}else this._+="L"+(this._x1=ht)+","+(this._y1=Nt)},arc:function(ht,Nt,Vt,_t,Wt,se){ht=+ht,Nt=+Nt,se=!!se;var pe=(Vt=+Vt)*Math.cos(_t),ge=Vt*Math.sin(_t),Ae=ht+pe,Qe=Nt+ge,He=1^se,sn=se?_t-Wt:Wt-_t;if(Vt<0)throw new Error("negative radius: "+Vt);this._x1===null?this._+="M"+Ae+","+Qe:(Math.abs(this._x1-Ae)>1e-6||Math.abs(this._y1-Qe)>1e-6)&&(this._+="L"+Ae+","+Qe),Vt&&(sn<0&&(sn=sn%d+d),sn>g?this._+="A"+Vt+","+Vt+",0,1,"+He+","+(ht-pe)+","+(Nt-ge)+"A"+Vt+","+Vt+",0,1,"+He+","+(this._x1=Ae)+","+(this._y1=Qe):sn>1e-6&&(this._+="A"+Vt+","+Vt+",0,"+ +(sn>=Pt)+","+He+","+(this._x1=ht+Vt*Math.cos(Wt))+","+(this._y1=Nt+Vt*Math.sin(Wt))))},rect:function(ht,Nt,Vt,_t){this._+="M"+(this._x0=this._x1=+ht)+","+(this._y0=this._y1=+Nt)+"h"+ +Vt+"v"+ +_t+"h"+-Vt+"Z"},toString:function(){return this._}};var st=R,$=function(ht){return function(){return ht}},J=Math.abs,X=Math.atan2,q=Math.cos,Z=Math.max,Y=Math.min,V=Math.sin,N=Math.sqrt,U=Math.PI,T=U/2,A=2*U;function M(ht){return ht>1?0:ht<-1?U:Math.acos(ht)}function O(ht){return ht>=1?T:ht<=-1?-T:Math.asin(ht)}function H(ht){return ht.innerRadius}function z(ht){return ht.outerRadius}function c(ht){return ht.startAngle}function D(ht){return ht.endAngle}function it(ht){return ht&&ht.padAngle}function Q(ht,Nt,Vt,_t,Wt,se,pe,ge){var Ae=Vt-ht,Qe=_t-Nt,He=pe-Wt,sn=ge-se,kn=sn*Ae-He*Qe;if(!(kn*kn<1e-12))return[ht+(kn=(He*(Nt-se)-sn*(ht-Wt))/kn)*Ae,Nt+kn*Qe]}function W(ht,Nt,Vt,_t,Wt,se,pe){var ge=ht-Vt,Ae=Nt-_t,Qe=(pe?se:-se)/N(ge*ge+Ae*Ae),He=Qe*Ae,sn=-Qe*ge,kn=ht+He,Bn=Nt+sn,Yn=Vt+He,fr=_t+sn,or=(kn+Yn)/2,Zn=(Bn+fr)/2,ur=Yn-kn,Tr=fr-Bn,Sr=ur*ur+Tr*Tr,Br=Wt-se,Kr=kn*fr-Yn*Bn,ui=(Tr<0?-1:1)*N(Z(0,Br*Br*Sr-Kr*Kr)),Li=(Kr*Tr-ur*ui)/Sr,Ai=(-Kr*ur-Tr*ui)/Sr,yi=(Kr*Tr+ur*ui)/Sr,Oi=(-Kr*ur+Tr*ui)/Sr,Ii=Li-or,Pi=Ai-Zn,Gi=yi-or,io=Oi-Zn;return Ii*Ii+Pi*Pi>Gi*Gi+io*io&&(Li=yi,Ai=Oi),{cx:Li,cy:Ai,x01:-He,y01:-sn,x11:Li*(Wt/Br-1),y11:Ai*(Wt/Br-1)}}var k=function(){var ht=H,Nt=z,Vt=$(0),_t=null,Wt=c,se=D,pe=it,ge=null;function Ae(){var Qe,He,sn=+ht.apply(this,arguments),kn=+Nt.apply(this,arguments),Bn=Wt.apply(this,arguments)-T,Yn=se.apply(this,arguments)-T,fr=J(Yn-Bn),or=Yn>Bn;if(ge||(ge=Qe=st()),kn1e-12)if(fr>A-1e-12)ge.moveTo(kn*q(Bn),kn*V(Bn)),ge.arc(0,0,kn,Bn,Yn,!or),sn>1e-12&&(ge.moveTo(sn*q(Yn),sn*V(Yn)),ge.arc(0,0,sn,Yn,Bn,or));else{var Zn,ur,Tr=Bn,Sr=Yn,Br=Bn,Kr=Yn,ui=fr,Li=fr,Ai=pe.apply(this,arguments)/2,yi=Ai>1e-12&&(_t?+_t.apply(this,arguments):N(sn*sn+kn*kn)),Oi=Y(J(kn-sn)/2,+Vt.apply(this,arguments)),Ii=Oi,Pi=Oi;if(yi>1e-12){var Gi=O(yi/sn*V(Ai)),io=O(yi/kn*V(Ai));(ui-=2*Gi)>1e-12?(Br+=Gi*=or?1:-1,Kr-=Gi):(ui=0,Br=Kr=(Bn+Yn)/2),(Li-=2*io)>1e-12?(Tr+=io*=or?1:-1,Sr-=io):(Li=0,Tr=Sr=(Bn+Yn)/2)}var eo=kn*q(Tr),Eo=kn*V(Tr),Ro=sn*q(Kr),mo=sn*V(Kr);if(Oi>1e-12){var ao,_o=kn*q(Sr),qo=kn*V(Sr),lo=sn*q(Br),ki=sn*V(Br);if(fr1e-12?Pi>1e-12?(Zn=W(lo,ki,eo,Eo,kn,Pi,or),ur=W(_o,qo,Ro,mo,kn,Pi,or),ge.moveTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Pi1e-12&&ui>1e-12?Ii>1e-12?(Zn=W(Ro,mo,_o,qo,sn,-Ii,or),ur=W(eo,Eo,lo,ki,sn,-Ii,or),ge.lineTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Ii=kn;--Bn)ge.point(ur[Bn],Tr[Bn]);ge.lineEnd(),ge.areaEnd()}Zn&&(ur[sn]=+ht(Yn,sn,He),Tr[sn]=+Vt(Yn,sn,He),ge.point(Nt?+Nt(Yn,sn,He):ur[sn],_t?+_t(Yn,sn,He):Tr[sn]))}if(fr)return ge=null,fr+""||null}function Qe(){return u().defined(Wt).curve(pe).context(se)}return Ae.x=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Nt=null,Ae):ht},Ae.x0=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Ae):ht},Ae.x1=function(He){return arguments.length?(Nt=He==null?null:typeof He=="function"?He:$(+He),Ae):Nt},Ae.y=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),_t=null,Ae):Vt},Ae.y0=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),Ae):Vt},Ae.y1=function(He){return arguments.length?(_t=He==null?null:typeof He=="function"?He:$(+He),Ae):_t},Ae.lineX0=Ae.lineY0=function(){return Qe().x(ht).y(Vt)},Ae.lineY1=function(){return Qe().x(ht).y(_t)},Ae.lineX1=function(){return Qe().x(Nt).y(Vt)},Ae.defined=function(He){return arguments.length?(Wt=typeof He=="function"?He:$(!!He),Ae):Wt},Ae.curve=function(He){return arguments.length?(pe=He,se!=null&&(ge=pe(se)),Ae):pe},Ae.context=function(He){return arguments.length?(He==null?se=ge=null:ge=pe(se=He),Ae):se},Ae},I=function(ht,Nt){return Ntht?1:Nt>=ht?0:NaN},S=function(ht){return ht},b=function(){var ht=S,Nt=I,Vt=null,_t=$(0),Wt=$(A),se=$(0);function pe(ge){var Ae,Qe,He,sn,kn,Bn=ge.length,Yn=0,fr=new Array(Bn),or=new Array(Bn),Zn=+_t.apply(this,arguments),ur=Math.min(A,Math.max(-A,Wt.apply(this,arguments)-Zn)),Tr=Math.min(Math.abs(ur)/Bn,se.apply(this,arguments)),Sr=Tr*(ur<0?-1:1);for(Ae=0;Ae0&&(Yn+=kn);for(Nt!=null?fr.sort(function(Br,Kr){return Nt(or[Br],or[Kr])}):Vt!=null&&fr.sort(function(Br,Kr){return Vt(ge[Br],ge[Kr])}),Ae=0,He=Yn?(ur-Bn*Sr)/Yn:0;Ae0?kn*He:0)+Sr,or[Qe]={data:ge[Qe],index:Ae,value:kn,startAngle:Zn,endAngle:sn,padAngle:Tr};return or}return pe.value=function(ge){return arguments.length?(ht=typeof ge=="function"?ge:$(+ge),pe):ht},pe.sortValues=function(ge){return arguments.length?(Nt=ge,Vt=null,pe):Nt},pe.sort=function(ge){return arguments.length?(Vt=ge,Nt=null,pe):Vt},pe.startAngle=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.endAngle=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.padAngle=function(ge){return arguments.length?(se=typeof ge=="function"?ge:$(+ge),pe):se},pe},K=et(C);function ct(ht){this._curve=ht}function et(ht){function Nt(Vt){return new ct(ht(Vt))}return Nt._curve=ht,Nt}function dt(ht){var Nt=ht.curve;return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht.curve=function(Vt){return arguments.length?Nt(et(Vt)):Nt()._curve},ht}ct.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(ht,Nt){this._curve.point(Nt*Math.sin(ht),Nt*-Math.cos(ht))}};var pt=function(){return dt(u().curve(K))},bt=function(){var ht=v().curve(K),Nt=ht.curve,Vt=ht.lineX0,_t=ht.lineX1,Wt=ht.lineY0,se=ht.lineY1;return ht.angle=ht.x,delete ht.x,ht.startAngle=ht.x0,delete ht.x0,ht.endAngle=ht.x1,delete ht.x1,ht.radius=ht.y,delete ht.y,ht.innerRadius=ht.y0,delete ht.y0,ht.outerRadius=ht.y1,delete ht.y1,ht.lineStartAngle=function(){return dt(Vt())},delete ht.lineX0,ht.lineEndAngle=function(){return dt(_t())},delete ht.lineX1,ht.lineInnerRadius=function(){return dt(Wt())},delete ht.lineY0,ht.lineOuterRadius=function(){return dt(se())},delete ht.lineY1,ht.curve=function(pe){return arguments.length?Nt(et(pe)):Nt()._curve},ht},Mt=function(ht,Nt){return[(Nt=+Nt)*Math.cos(ht-=Math.PI/2),Nt*Math.sin(ht)]},w=Array.prototype.slice;function B(ht){return ht.source}function tt(ht){return ht.target}function nt(ht){var Nt=B,Vt=tt,_t=h,Wt=l,se=null;function pe(){var ge,Ae=w.call(arguments),Qe=Nt.apply(this,Ae),He=Vt.apply(this,Ae);if(se||(se=ge=st()),ht(se,+_t.apply(this,(Ae[0]=Qe,Ae)),+Wt.apply(this,Ae),+_t.apply(this,(Ae[0]=He,Ae)),+Wt.apply(this,Ae)),ge)return se=null,ge+""||null}return pe.source=function(ge){return arguments.length?(Nt=ge,pe):Nt},pe.target=function(ge){return arguments.length?(Vt=ge,pe):Vt},pe.x=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.y=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.context=function(ge){return arguments.length?(se=ge==null?null:ge,pe):se},pe}function x(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt=(Nt+_t)/2,Vt,Nt,Wt,_t,Wt)}function y(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt,Vt=(Vt+Wt)/2,_t,Vt,_t,Wt)}function F(ht,Nt,Vt,_t,Wt){var se=Mt(Nt,Vt),pe=Mt(Nt,Vt=(Vt+Wt)/2),ge=Mt(_t,Vt),Ae=Mt(_t,Wt);ht.moveTo(se[0],se[1]),ht.bezierCurveTo(pe[0],pe[1],ge[0],ge[1],Ae[0],Ae[1])}function lt(){return nt(x)}function rt(){return nt(y)}function gt(){var ht=nt(F);return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht}var vt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/U);ht.moveTo(Vt,0),ht.arc(0,0,Vt,0,A)}},Ot={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/5)/2;ht.moveTo(-3*Vt,-Vt),ht.lineTo(-Vt,-Vt),ht.lineTo(-Vt,-3*Vt),ht.lineTo(Vt,-3*Vt),ht.lineTo(Vt,-Vt),ht.lineTo(3*Vt,-Vt),ht.lineTo(3*Vt,Vt),ht.lineTo(Vt,Vt),ht.lineTo(Vt,3*Vt),ht.lineTo(-Vt,3*Vt),ht.lineTo(-Vt,Vt),ht.lineTo(-3*Vt,Vt),ht.closePath()}},At=Math.sqrt(1/3),$t=2*At,Xt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/$t),_t=Vt*At;ht.moveTo(0,-Vt),ht.lineTo(_t,0),ht.lineTo(0,Vt),ht.lineTo(-_t,0),ht.closePath()}},Ct=Math.sin(U/10)/Math.sin(7*U/10),wt=Math.sin(A/10)*Ct,Dt=-Math.cos(A/10)*Ct,jt={draw:function(ht,Nt){var Vt=Math.sqrt(.8908130915292852*Nt),_t=wt*Vt,Wt=Dt*Vt;ht.moveTo(0,-Vt),ht.lineTo(_t,Wt);for(var se=1;se<5;++se){var pe=A*se/5,ge=Math.cos(pe),Ae=Math.sin(pe);ht.lineTo(Ae*Vt,-ge*Vt),ht.lineTo(ge*_t-Ae*Wt,Ae*_t+ge*Wt)}ht.closePath()}},re={draw:function(ht,Nt){var Vt=Math.sqrt(Nt),_t=-Vt/2;ht.rect(_t,_t,Vt,Vt)}},le=Math.sqrt(3),Gt={draw:function(ht,Nt){var Vt=-Math.sqrt(Nt/(3*le));ht.moveTo(0,2*Vt),ht.lineTo(-le*Vt,-Vt),ht.lineTo(le*Vt,-Vt),ht.closePath()}},he=Math.sqrt(3)/2,ve=1/Math.sqrt(12),Ce=3*(ve/2+1),Te={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/Ce),_t=Vt/2,Wt=Vt*ve,se=_t,pe=Vt*ve+Vt,ge=-se,Ae=pe;ht.moveTo(_t,Wt),ht.lineTo(se,pe),ht.lineTo(ge,Ae),ht.lineTo(-.5*_t-he*Wt,he*_t+-.5*Wt),ht.lineTo(-.5*se-he*pe,he*se+-.5*pe),ht.lineTo(-.5*ge-he*Ae,he*ge+-.5*Ae),ht.lineTo(-.5*_t+he*Wt,-.5*Wt-he*_t),ht.lineTo(-.5*se+he*pe,-.5*pe-he*se),ht.lineTo(-.5*ge+he*Ae,-.5*Ae-he*ge),ht.closePath()}},Ke=[vt,Ot,Xt,re,jt,Gt,Te],rn=function(){var ht=$(vt),Nt=$(64),Vt=null;function _t(){var Wt;if(Vt||(Vt=Wt=st()),ht.apply(this,arguments).draw(Vt,+Nt.apply(this,arguments)),Wt)return Vt=null,Wt+""||null}return _t.type=function(Wt){return arguments.length?(ht=typeof Wt=="function"?Wt:$(Wt),_t):ht},_t.size=function(Wt){return arguments.length?(Nt=typeof Wt=="function"?Wt:$(+Wt),_t):Nt},_t.context=function(Wt){return arguments.length?(Vt=Wt==null?null:Wt,_t):Vt},_t},un=function(){};function Qt(ht,Nt,Vt){ht._context.bezierCurveTo((2*ht._x0+ht._x1)/3,(2*ht._y0+ht._y1)/3,(ht._x0+2*ht._x1)/3,(ht._y0+2*ht._y1)/3,(ht._x0+4*ht._x1+Nt)/6,(ht._y0+4*ht._y1+Vt)/6)}function Kt(ht){this._context=ht}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Qt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Jt=function(ht){return new Kt(ht)};function Et(ht){this._context=ht}Et.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x2=ht,this._y2=Nt;break;case 1:this._point=2,this._x3=ht,this._y3=Nt;break;case 2:this._point=3,this._x4=ht,this._y4=Nt,this._context.moveTo((this._x0+4*this._x1+ht)/6,(this._y0+4*this._y1+Nt)/6);break;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Rt=function(ht){return new Et(ht)};function zt(ht){this._context=ht}zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Vt=(this._x0+4*this._x1+ht)/6,_t=(this._y0+4*this._y1+Nt)/6;this._line?this._context.lineTo(Vt,_t):this._context.moveTo(Vt,_t);break;case 3:this._point=4;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Ft=function(ht){return new zt(ht)};function ce(ht,Nt){this._basis=new Kt(ht),this._beta=Nt}ce.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length-1;if(Vt>0)for(var _t,Wt=ht[0],se=Nt[0],pe=ht[Vt]-Wt,ge=Nt[Vt]-se,Ae=-1;++Ae<=Vt;)_t=Ae/Vt,this._basis.point(this._beta*ht[Ae]+(1-this._beta)*(Wt+_t*pe),this._beta*Nt[Ae]+(1-this._beta)*(se+_t*ge));this._x=this._y=null,this._basis.lineEnd()},point:function(ht,Nt){this._x.push(+ht),this._y.push(+Nt)}};var Se=function ht(Nt){function Vt(_t){return Nt===1?new Kt(_t):new ce(_t,Nt)}return Vt.beta=function(_t){return ht(+_t)},Vt}(.85);function xe(ht,Nt,Vt){ht._context.bezierCurveTo(ht._x1+ht._k*(ht._x2-ht._x0),ht._y1+ht._k*(ht._y2-ht._y0),ht._x2+ht._k*(ht._x1-Nt),ht._y2+ht._k*(ht._y1-Vt),ht._x2,ht._y2)}function Ze(ht,Nt){this._context=ht,this._k=(1-Nt)/6}Ze.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:xe(this,this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2,this._x1=ht,this._y1=Nt;break;case 2:this._point=3;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var pn=function ht(Nt){function Vt(_t){return new Ze(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function bn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}bn.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Ln=function ht(Nt){function Vt(_t){return new bn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function vn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}vn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Tn=function ht(Nt){function Vt(_t){return new vn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function Qn(ht,Nt,Vt){var _t=ht._x1,Wt=ht._y1,se=ht._x2,pe=ht._y2;if(ht._l01_a>1e-12){var ge=2*ht._l01_2a+3*ht._l01_a*ht._l12_a+ht._l12_2a,Ae=3*ht._l01_a*(ht._l01_a+ht._l12_a);_t=(_t*ge-ht._x0*ht._l12_2a+ht._x2*ht._l01_2a)/Ae,Wt=(Wt*ge-ht._y0*ht._l12_2a+ht._y2*ht._l01_2a)/Ae}if(ht._l23_a>1e-12){var Qe=2*ht._l23_2a+3*ht._l23_a*ht._l12_a+ht._l12_2a,He=3*ht._l23_a*(ht._l23_a+ht._l12_a);se=(se*Qe+ht._x1*ht._l23_2a-Nt*ht._l12_2a)/He,pe=(pe*Qe+ht._y1*ht._l23_2a-Vt*ht._l12_2a)/He}ht._context.bezierCurveTo(_t,Wt,se,pe,ht._x2,ht._y2)}function dr(ht,Nt){this._context=ht,this._alpha=Nt}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var ye=function ht(Nt){function Vt(_t){return Nt?new dr(_t,Nt):new Ze(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Fe(ht,Nt){this._context=ht,this._alpha=Nt}Fe.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var qe=function ht(Nt){function Vt(_t){return Nt?new Fe(_t,Nt):new bn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function be(ht,Nt){this._context=ht,this._alpha=Nt}be.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var je=function ht(Nt){function Vt(_t){return Nt?new be(_t,Nt):new vn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Ue(ht){this._context=ht}Ue.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(ht,Nt){ht=+ht,Nt=+Nt,this._point?this._context.lineTo(ht,Nt):(this._point=1,this._context.moveTo(ht,Nt))}};var Re=function(ht){return new Ue(ht)};function Ie(ht){return ht<0?-1:1}function tn(ht,Nt,Vt){var _t=ht._x1-ht._x0,Wt=Nt-ht._x1,se=(ht._y1-ht._y0)/(_t||Wt<0&&-0),pe=(Vt-ht._y1)/(Wt||_t<0&&-0),ge=(se*Wt+pe*_t)/(_t+Wt);return(Ie(se)+Ie(pe))*Math.min(Math.abs(se),Math.abs(pe),.5*Math.abs(ge))||0}function Mn(ht,Nt){var Vt=ht._x1-ht._x0;return Vt?(3*(ht._y1-ht._y0)/Vt-Nt)/2:Nt}function ke(ht,Nt,Vt){var _t=ht._x0,Wt=ht._y0,se=ht._x1,pe=ht._y1,ge=(se-_t)/3;ht._context.bezierCurveTo(_t+ge,Wt+ge*Nt,se-ge,pe-ge*Vt,se,pe)}function on(ht){this._context=ht}function _n(ht){this._context=new Pe(ht)}function Pe(ht){this._context=ht}function wn(ht){return new on(ht)}function an(ht){return new _n(ht)}function gn(ht){this._context=ht}function Sn(ht){var Nt,Vt,_t=ht.length-1,Wt=new Array(_t),se=new Array(_t),pe=new Array(_t);for(Wt[0]=0,se[0]=2,pe[0]=ht[0]+2*ht[1],Nt=1;Nt<_t-1;++Nt)Wt[Nt]=1,se[Nt]=4,pe[Nt]=4*ht[Nt]+2*ht[Nt+1];for(Wt[_t-1]=2,se[_t-1]=7,pe[_t-1]=8*ht[_t-1]+ht[_t],Nt=1;Nt<_t;++Nt)Vt=Wt[Nt]/se[Nt-1],se[Nt]-=Vt,pe[Nt]-=Vt*pe[Nt-1];for(Wt[_t-1]=pe[_t-1]/se[_t-1],Nt=_t-2;Nt>=0;--Nt)Wt[Nt]=(pe[Nt]-Wt[Nt+1])/se[Nt];for(se[_t-1]=(ht[_t]+Wt[_t-1])/2,Nt=0;Nt<_t-1;++Nt)se[Nt]=2*ht[Nt+1]-Wt[Nt+1];return[Wt,se]}on.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:ke(this,this._t0,Mn(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){var Vt=NaN;if(Nt=+Nt,(ht=+ht)!==this._x1||Nt!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,ke(this,Mn(this,Vt=tn(this,ht,Nt)),Vt);break;default:ke(this,this._t0,Vt=tn(this,ht,Nt))}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt,this._t0=Vt}}},(_n.prototype=Object.create(on.prototype)).point=function(ht,Nt){on.prototype.point.call(this,Nt,ht)},Pe.prototype={moveTo:function(ht,Nt){this._context.moveTo(Nt,ht)},closePath:function(){this._context.closePath()},lineTo:function(ht,Nt){this._context.lineTo(Nt,ht)},bezierCurveTo:function(ht,Nt,Vt,_t,Wt,se){this._context.bezierCurveTo(Nt,ht,_t,Vt,se,Wt)}},gn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length;if(Vt)if(this._line?this._context.lineTo(ht[0],Nt[0]):this._context.moveTo(ht[0],Nt[0]),Vt===2)this._context.lineTo(ht[1],Nt[1]);else for(var _t=Sn(ht),Wt=Sn(Nt),se=0,pe=1;pe=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,Nt),this._context.lineTo(ht,Nt);else{var Vt=this._x*(1-this._t)+ht*this._t;this._context.lineTo(Vt,this._y),this._context.lineTo(Vt,Nt)}}this._x=ht,this._y=Nt}};var nr=function(ht){return new hr(ht,.5)};function pr(ht){return new hr(ht,0)}function vr(ht){return new hr(ht,1)}var rr=function(ht,Nt){if((Wt=ht.length)>1)for(var Vt,_t,Wt,se=1,pe=ht[Nt[0]],ge=pe.length;se=0;)Vt[Nt]=Nt;return Vt};function jr(ht,Nt){return ht[Nt]}var lr=function(){var ht=$([]),Nt=Rr,Vt=rr,_t=jr;function Wt(se){var pe,ge,Ae=ht.apply(this,arguments),Qe=se.length,He=Ae.length,sn=new Array(He);for(pe=0;pe0){for(var Vt,_t,Wt,se=0,pe=ht[0].length;se0)for(var Vt,_t,Wt,se,pe,ge,Ae=0,Qe=ht[Nt[0]].length;Ae0?(_t[0]=se,_t[1]=se+=Wt):Wt<0?(_t[1]=pe,_t[0]=pe+=Wt):(_t[0]=0,_t[1]=Wt)},fi=function(ht,Nt){if((Vt=ht.length)>0){for(var Vt,_t=0,Wt=ht[Nt[0]],se=Wt.length;_t0&&(_t=(Vt=ht[Nt[0]]).length)>0){for(var Vt,_t,Wt,se=0,pe=1;pe<_t;++pe){for(var ge=0,Ae=0,Qe=0;gese&&(se=Nt,_t=Vt);return _t}var Bi=function(ht){var Nt=ht.map(te);return Rr(ht).sort(function(Vt,_t){return Nt[Vt]-Nt[_t]})};function te(ht){for(var Nt,Vt=0,_t=-1,Wt=ht.length;++_t=0&&Kt._call.call(null,Qt),Kt=Kt._next;--R})()}finally{R=0,function(){for(var Qt,Kt,Jt=Pt,Et=1/0;Jt;)Jt._call?(Et>Jt._time&&(Et=Jt._time),Qt=Jt,Jt=Jt._next):(Kt=Jt._next,Jt._next=null,Jt=Qt?Qt._next=Kt:Pt=Kt);d=Qt,O(Et)}(),X=0}}function M(){var Qt=Z.now(),Kt=Qt-J;Kt>1e3&&(q-=Kt,J=Qt)}function O(Qt){R||(st&&(st=clearTimeout(st)),Qt-X>24?(Qt<1/0&&(st=setTimeout(A,Qt-Z.now()-q)),$&&($=clearInterval($))):($||(J=Z.now(),$=setInterval(M,1e3)),R=1,Y(A)))}U.prototype=T.prototype={constructor:U,restart:function(Qt,Kt,Jt){if(typeof Qt!="function")throw new TypeError("callback is not a function");Jt=(Jt==null?V():+Jt)+(Kt==null?0:+Kt),this._next||d===this||(d?d._next=this:Pt=this,d=this),this._call=Qt,this._time=Jt,O()},stop:function(){this._call&&(this._call=null,this._time=1/0,O())}};var H=function(Qt,Kt,Jt){var Et=new U;return Kt=Kt==null?0:+Kt,Et.restart(function(Rt){Et.stop(),Qt(Rt+Kt)},Kt,Jt),Et},z=Object(L.a)("start","end","cancel","interrupt"),c=[],D=function(Qt,Kt,Jt,Et,Rt,zt){var Ft=Qt.__transition;if(Ft){if(Jt in Ft)return}else Qt.__transition={};(function(ce,Se,xe){var Ze,pn=ce.__transition;function bn(Tn){var Qn,dr,ye,Fe;if(xe.state!==1)return vn();for(Qn in pn)if((Fe=pn[Qn]).name===xe.name){if(Fe.state===3)return H(bn);Fe.state===4?(Fe.state=6,Fe.timer.stop(),Fe.on.call("interrupt",ce,ce.__data__,Fe.index,Fe.group),delete pn[Qn]):+Qn0)throw new Error("too late; already scheduled");return Jt}function Q(Qt,Kt){var Jt=W(Qt,Kt);if(Jt.state>3)throw new Error("too late; already running");return Jt}function W(Qt,Kt){var Jt=Qt.__transition;if(!Jt||!(Jt=Jt[Kt]))throw new Error("transition not found");return Jt}var k=function(Qt,Kt){var Jt,Et,Rt,zt=Qt.__transition,Ft=!0;if(zt){for(Rt in Kt=Kt==null?null:Kt+"",zt)(Jt=zt[Rt]).name===Kt?(Et=Jt.state>2&&Jt.state<5,Jt.state=6,Jt.timer.stop(),Jt.on.call(Et?"interrupt":"cancel",Qt,Qt.__data__,Jt.index,Jt.group),delete zt[Rt]):Ft=!1;Ft&&delete Qt.__transition}},_=j(75),C=j(20);function h(Qt,Kt){var Jt,Et;return function(){var Rt=Q(this,Qt),zt=Rt.tween;if(zt!==Jt){for(var Ft=0,ce=(Et=Jt=zt).length;Ft=0&&(ce=ce.slice(0,Se)),!ce||ce==="start"})}(Kt)?it:Q;return function(){var Ft=zt(this,Qt),ce=Ft.on;ce!==Et&&(Rt=(Et=ce).copy()).on(Kt,Jt),Ft.on=Rt}}var Ot=j(19),At=j(33),$t=g.b.prototype.constructor,Xt=j(35);function Ct(Qt){return function(){this.style.removeProperty(Qt)}}function wt(Qt,Kt,Jt){return function(Et){this.style.setProperty(Qt,Kt.call(this,Et),Jt)}}function Dt(Qt,Kt,Jt){var Et,Rt;function zt(){var Ft=Kt.apply(this,arguments);return Ft!==Rt&&(Et=(Rt=Ft)&&wt(Qt,Ft,Jt)),Et}return zt._value=Kt,zt}function jt(Qt){return function(Kt){this.textContent=Qt.call(this,Kt)}}function re(Qt){var Kt,Jt;function Et(){var Rt=Qt.apply(this,arguments);return Rt!==Jt&&(Kt=(Jt=Rt)&&jt(Rt)),Kt}return Et._value=Qt,Et}var le=0;function Gt(Qt,Kt,Jt,Et){this._groups=Qt,this._parents=Kt,this._name=Jt,this._id=Et}function he(Qt){return Object(g.b)().transition(Qt)}function ve(){return++le}var Ce=g.b.prototype;Gt.prototype=he.prototype={constructor:Gt,select:function(Qt){var Kt=this._name,Jt=this._id;typeof Qt!="function"&&(Qt=Object(Ot.a)(Qt));for(var Et=this._groups,Rt=Et.length,zt=new Array(Rt),Ft=0;Ft1&&Jt.name===Kt)return new Gt([[Qt]],rn,Kt,+Et)}return null};j.d(xt,"transition",function(){return he}),j.d(xt,"active",function(){return un}),j.d(xt,"interrupt",function(){return k})},function(Oe,xt,j){"use strict";var Pt;(Pt=function(){var d=j(71),g=j(39);return{axisTimeCombinations:{MINUTE_HOUR:"minute-hour",HOUR_DAY:"hour-daymonth",DAY_MONTH:"day-month",MONTH_YEAR:"month-year",CUSTOM:"custom"},curveMap:{linear:d.curveLinear,basis:d.curveBasis,cardinal:d.curveCardinal,catmullRom:d.curveCatmullRom,monotoneX:d.curveMonotoneX,monotoneY:d.curveMonotoneY,natural:d.curveNatural,step:d.curveStep,stepAfter:d.curveStepAfter,stepBefore:d.curveStepBefore},emptyDonutData:[{quantity:1,percentage:100}],timeBenchmarks:{ONE_AND_A_HALF_YEARS:47304e6,ONE_YEAR:31536000365,ONE_DAY:86400001},lineGradientId:"lineGradientId",timeIntervals:{timeMillisecond:g.timeMillisecond,utcMillisecond:g.utcMillisecond,timeSecond:g.timeSecond,utcSecond:g.utcSecond,timeMinute:g.timeMinute,utcMinute:g.utcMinute,timeHour:g.timeHour,utcHour:g.utcHour,timeDay:g.timeDay,utcDay:g.utcDay,timeWeek:g.timeWeek,utcWeek:g.utcWeek,timeSunday:g.timeSunday,utcSunday:g.utcSunday,timeMonday:g.timeMonday,utcMonday:g.utcMonday,timeTuesday:g.timeTuesday,utcTuesday:g.utcTuesday,timeWednesday:g.timeWednesday,utcWednesday:g.utcWednesday,timeThursday:g.timeThursday,utcThursday:g.utcThursday,timeFriday:g.timeFriday,utcFriday:g.utcFriday,timeSaturday:g.timeSaturday,utcSaturday:g.utcSaturday,timeMonth:g.timeMonth,utcMonth:g.utcMonth,timeYear:g.timeYear,utcYear:g.utcYear},FORMAT_LOCALE_URL:"https://cdn.jsdelivr.net/npm/d3-format/locale"}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)},,function(Oe,xt,j){"use strict";var Pt,d,g,L,R=j(6),st=180/Math.PI,$={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},J=function(Y,V,N,U,T,A){var M,O,H;return(M=Math.sqrt(Y*Y+V*V))&&(Y/=M,V/=M),(H=Y*N+V*U)&&(N-=Y*H,U-=V*H),(O=Math.sqrt(N*N+U*U))&&(N/=O,U/=O,H/=O),Y*U180?c+=360:c-z>180&&(z+=360),it.push({i:D.push(T(D)+"rotate(",null,U)-2,x:Object(R.a)(z,c)})):c&&D.push(T(D)+"rotate("+c+U)}(A.rotate,M.rotate,O,H),function(z,c,D,it){z!==c?it.push({i:D.push(T(D)+"skewX(",null,U)-2,x:Object(R.a)(z,c)}):c&&D.push(T(D)+"skewX("+c+U)}(A.skewX,M.skewX,O,H),function(z,c,D,it,Q,W){if(z!==D||c!==it){var k=Q.push(T(Q)+"scale(",null,",",null,")");W.push({i:k-4,x:Object(R.a)(z,D)},{i:k-2,x:Object(R.a)(c,it)})}else D===1&&it===1||Q.push(T(Q)+"scale("+D+","+it+")")}(A.scaleX,A.scaleY,M.scaleX,M.scaleY,O,H),A=M=null,function(z){for(var c,D=-1,it=H.length;++Dbe&&(Fe=qe,qe=be,be=Fe),function(je){return Math.max(qe,Math.min(be,je))}}function z(ye,Fe,qe){var be=ye[0],je=ye[1],Ue=Fe[0],Re=Fe[1];return je2?c:z,je=Ue=null,on}function on(_n){return isNaN(_n=+_n)?qe:(je||(je=be(Re.map(ye),Ie,tn)))(ye(Mn(_n)))}return on.invert=function(_n){return Mn(Fe((Ue||(Ue=be(Ie,Re.map(ye),N.a)))(_n)))},on.domain=function(_n){return arguments.length?(Re=st.call(_n,T),Mn===M||(Mn=H(Re)),ke()):Re.slice()},on.range=function(_n){return arguments.length?(Ie=$.call(_n),ke()):Ie.slice()},on.rangeRound=function(_n){return Ie=$.call(_n),tn=U.a,ke()},on.clamp=function(_n){return arguments.length?(Mn=_n?H(Re):M,on):Mn!==M},on.interpolate=function(_n){return arguments.length?(tn=_n,ke()):tn},on.unknown=function(_n){return arguments.length?(qe=_n,on):qe},function(_n,Pe){return ye=_n,Fe=Pe,ke()}}function Q(ye,Fe){return it()(ye,Fe)}var W=j(25),k=j(64),_=j(43),C=j(65),h=j(63),l=function(ye,Fe,qe,be){var je,Ue=Object(Pt.tickStep)(ye,Fe,qe);switch((be=Object(W.b)(be==null?",f":be)).type){case"s":var Re=Math.max(Math.abs(ye),Math.abs(Fe));return be.precision!=null||isNaN(je=Object(k.a)(Ue,Re))||(be.precision=je),Object(_.c)(be,Re);case"":case"e":case"g":case"p":case"r":be.precision!=null||isNaN(je=Object(C.a)(Ue,Math.max(Math.abs(ye),Math.abs(Fe))))||(be.precision=je-(be.type==="e"));break;case"f":case"%":be.precision!=null||isNaN(je=Object(h.a)(Ue))||(be.precision=je-2*(be.type==="%"))}return Object(_.b)(be)};function u(ye){var Fe=ye.domain;return ye.ticks=function(qe){var be=Fe();return Object(Pt.ticks)(be[0],be[be.length-1],qe==null?10:qe)},ye.tickFormat=function(qe,be){var je=Fe();return l(je[0],je[je.length-1],qe==null?10:qe,be)},ye.nice=function(qe){qe==null&&(qe=10);var be,je=Fe(),Ue=0,Re=je.length-1,Ie=je[Ue],tn=je[Re];return tn0?(Ie=Math.floor(Ie/be)*be,tn=Math.ceil(tn/be)*be,be=Object(Pt.tickIncrement)(Ie,tn,qe)):be<0&&(Ie=Math.ceil(Ie*be)/be,tn=Math.floor(tn*be)/be,be=Object(Pt.tickIncrement)(Ie,tn,qe)),be>0?(je[Ue]=Math.floor(Ie/be)*be,je[Re]=Math.ceil(tn/be)*be,Fe(je)):be<0&&(je[Ue]=Math.ceil(Ie*be)/be,je[Re]=Math.floor(tn*be)/be,Fe(je)),ye},ye}function v(){var ye=Q(M,M);return ye.copy=function(){return D(ye,v())},d.apply(ye,arguments),u(ye)}function I(ye){var Fe;function qe(be){return isNaN(be=+be)?Fe:be}return qe.invert=qe,qe.domain=qe.range=function(be){return arguments.length?(ye=st.call(be,T),qe):ye.slice()},qe.unknown=function(be){return arguments.length?(Fe=be,qe):Fe},qe.copy=function(){return I(ye).unknown(Fe)},ye=arguments.length?st.call(ye,T):[0,1],u(qe)}var S=function(ye,Fe){var qe,be=0,je=(ye=ye.slice()).length-1,Ue=ye[be],Re=ye[je];return Re0){for(;anon)break;xn.push(wn)}}else for(;an=1;--Pe)if(!((wn=_n*Pe)on)break;xn.push(wn)}}else xn=Object(Pt.ticks)(an,gn,Math.min(gn-an,Sn)).map(qe);return tn?xn.reverse():xn},be.tickFormat=function(Ie,tn){if(tn==null&&(tn=Ue===10?".0e":","),typeof tn!="function"&&(tn=Object(_.b)(tn)),Ie===1/0)return tn;Ie==null&&(Ie=10);var Mn=Math.max(1,Ue*Ie/be.ticks().length);return function(ke){var on=ke/qe(Math.round(Fe(ke)));return on*Ue0?be[Ie-1]:Fe[0],Ie=be?[je[be-1],qe]:[je[Mn-1],je[Mn]]},Re.unknown=function(tn){return arguments.length&&(ye=tn),Re},Re.thresholds=function(){return je.slice()},Re.copy=function(){return Ot().domain([Fe,qe]).range(Ue).unknown(ye)},d.apply(u(Re),arguments)}function At(){var ye,Fe=[.5],qe=[0,1],be=1;function je(Ue){return Ue<=Ue?qe[Object(Pt.bisect)(Fe,Ue,0,be)]:ye}return je.domain=function(Ue){return arguments.length?(Fe=$.call(Ue),be=Math.min(Fe.length,qe.length-1),je):Fe.slice()},je.range=function(Ue){return arguments.length?(qe=$.call(Ue),be=Math.min(Fe.length,qe.length-1),je):qe.slice()},je.invertExtent=function(Ue){var Re=qe.indexOf(Ue);return[Fe[Re-1],Fe[Re]]},je.unknown=function(Ue){return arguments.length?(ye=Ue,je):ye},je.copy=function(){return At().domain(Fe).range(qe).unknown(ye)},d.apply(je,arguments)}var $t=j(15),Xt=j(47),Ct=j(3),wt=j(27),Dt=j(48),jt=j(49),re=j(30),le=j(31),Gt=j(45);function he(ye){return new Date(ye)}function ve(ye){return ye instanceof Date?+ye:+new Date(+ye)}function Ce(ye,Fe,qe,be,je,Ue,Re,Ie,tn){var Mn=Q(M,M),ke=Mn.invert,on=Mn.domain,_n=tn(".%L"),Pe=tn(":%S"),wn=tn("%I:%M"),an=tn("%I %p"),gn=tn("%a %d"),Sn=tn("%b %d"),xn=tn("%B"),hr=tn("%Y"),nr=[[Re,1,1e3],[Re,5,5e3],[Re,15,15e3],[Re,30,3e4],[Ue,1,6e4],[Ue,5,3e5],[Ue,15,9e5],[Ue,30,18e5],[je,1,36e5],[je,3,108e5],[je,6,216e5],[je,12,432e5],[be,1,864e5],[be,2,1728e5],[qe,1,6048e5],[Fe,1,2592e6],[Fe,3,7776e6],[ye,1,31536e6]];function pr(rr){return(Re(rr)svg{background:"+this.chartBackground+";padding: 20px;}"}};function $(Y,V){if(Y){Y.attr("version",1.1).attr("xmlns","http://www.w3.org/2000/svg");var N=L.initializeSerializer()(Y.node());return N=function(U){return navigator.userAgent.search("FireFox")>-1?U.replace(/url.*"\)/,'url("linearGradient[id*="-gradient-"]");'):U}(N),N=function(U){return U.replace(">",">"+st.styleBackgroundString)}(N=Z.call(this,N,V,parseInt(Y.attr("width"),10)))}}function J(Y){var V=new Image;return V.src=""+st.imageSourceBase+R(encodeURIComponent(Y).replace(/%([0-9A-F]{2})/g,function(N,U){return String.fromCharCode("0x"+U)})),V}function X(Y,V){return V.getContext("2d").drawImage(Y,0,0),V}function q(Y,V,N){N.preventDefault(),function(U){var T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:st.defaultFilename,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"image/png",M=U.toDataURL(A),O=document.createElement("a");O.href=M,O.download=T,document.body.appendChild(O),O.click(),document.body.removeChild(O)}(X(this,Y),V)}function Z(Y,V,N){if(!V||!N)return Y;var U=g.grey;return Y=Y.replace(/ '+V+" >18&63)+X.charAt(T>>12&63)+X.charAt(T>>6&63)+X.charAt(63&T);return A==2?(V=Y.charCodeAt(O)<<8,N=Y.charCodeAt(++O),M+=X.charAt((T=V+N)>>10)+X.charAt(T>>4&63)+X.charAt(T<<2&63)+"="):A==1&&(T=Y.charCodeAt(O),M+=X.charAt(T>>2)+X.charAt(T<<4&63)+"=="),M},decode:function(Y){var V=(Y=String(Y).replace(q,"")).length;V%4==0&&(V=(Y=Y.replace(/==?$/,"")).length),(V%4==1||/[^+a-zA-Z0-9/]/.test(Y))&&J("Invalid character: the string to be decoded is not correctly encoded.");for(var N,U,T=0,A="",M=-1;++M>(-2*T&6)));return A},version:"0.1.0"};(g=function(){return Z}.call(xt,j,xt,Pt))===void 0||(Pt.exports=g)})()}).call(this,j(80)(Oe),j(81))},function(Oe,xt){Oe.exports=function(j){return j.webpackPolyfill||(j.deprecate=function(){},j.paths=[],j.children||(j.children=[]),Object.defineProperty(j,"loaded",{enumerable:!0,get:function(){return j.l}}),Object.defineProperty(j,"id",{enumerable:!0,get:function(){return j.i}}),j.webpackPolyfill=1),j}},function(Oe,xt){var j;j=function(){return this}();try{j=j||new Function("return this")()}catch(Pt){typeof window=="object"&&(j=window)}Oe.exports=j},function(Oe,xt,j){"use strict";xt.a=function(Pt,d){return Pt=+Pt,d=+d,function(g){return Math.round(Pt*(1-g)+d*g)}}},function(Oe,xt,j){"use strict";var Pt;(Pt=function(){return{bar:` + `}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";g.r(d);var L=Array.prototype.slice,R=function(T){return T};function st(T){return"translate("+(T+.5)+",0)"}function $(T){return"translate(0,"+(T+.5)+")"}function J(T){return function(A){return+T(A)}}function X(T){var A=Math.max(0,T.bandwidth()-1)/2;return T.round()&&(A=Math.round(A)),function(M){return+T(M)+A}}function q(){return!this.__axis}function Z(T,A){var M=[],O=null,H=null,z=6,c=6,D=3,it=T===1||T===4?-1:1,Q=T===4||T===2?"x":"y",W=T===1||T===3?st:$;function k(_){var C=O==null?A.ticks?A.ticks.apply(A,M):A.domain():O,h=H==null?A.tickFormat?A.tickFormat.apply(A,M):R:H,l=Math.max(z,0)+D,u=A.range(),v=+u[0]+.5,I=+u[u.length-1]+.5,S=(A.bandwidth?X:J)(A.copy()),b=_.selection?_.selection():_,K=b.selectAll(".domain").data([null]),ct=b.selectAll(".tick").data(C,A).order(),et=ct.exit(),dt=ct.enter().append("g").attr("class","tick"),pt=ct.select("line"),bt=ct.select("text");K=K.merge(K.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),ct=ct.merge(dt),pt=pt.merge(dt.append("line").attr("stroke","currentColor").attr(Q+"2",it*z)),bt=bt.merge(dt.append("text").attr("fill","currentColor").attr(Q,it*l).attr("dy",T===1?"0em":T===3?"0.71em":"0.32em")),_!==b&&(K=K.transition(_),ct=ct.transition(_),pt=pt.transition(_),bt=bt.transition(_),et=et.transition(_).attr("opacity",1e-6).attr("transform",function(Mt){return isFinite(Mt=S(Mt))?W(Mt):this.getAttribute("transform")}),dt.attr("opacity",1e-6).attr("transform",function(Mt){var w=this.parentNode.__axis;return W(w&&isFinite(w=w(Mt))?w:S(Mt))})),et.remove(),K.attr("d",T===4||T==2?c?"M"+it*c+","+v+"H0.5V"+I+"H"+it*c:"M0.5,"+v+"V"+I:c?"M"+v+","+it*c+"V0.5H"+I+"V"+it*c:"M"+v+",0.5H"+I),ct.attr("opacity",1).attr("transform",function(Mt){return W(S(Mt))}),pt.attr(Q+"2",it*z),bt.attr(Q,it*l).text(h),b.filter(q).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",T===2?"start":T===4?"end":"middle"),b.each(function(){this.__axis=S})}return k.scale=function(_){return arguments.length?(A=_,k):A},k.ticks=function(){return M=L.call(arguments),k},k.tickArguments=function(_){return arguments.length?(M=_==null?[]:L.call(_),k):M.slice()},k.tickValues=function(_){return arguments.length?(O=_==null?null:L.call(_),k):O&&O.slice()},k.tickFormat=function(_){return arguments.length?(H=_,k):H},k.tickSize=function(_){return arguments.length?(z=c=+_,k):z},k.tickSizeInner=function(_){return arguments.length?(z=+_,k):z},k.tickSizeOuter=function(_){return arguments.length?(c=+_,k):c},k.tickPadding=function(_){return arguments.length?(D=+_,k):D},k}function Y(T){return Z(1,T)}function V(T){return Z(2,T)}function N(T){return Z(3,T)}function U(T){return Z(4,T)}g.d(d,"axisTop",function(){return Y}),g.d(d,"axisRight",function(){return V}),g.d(d,"axisBottom",function(){return N}),g.d(d,"axisLeft",function(){return U})},function(Pt,d,g){"use strict";g.r(d);var L=g(41),R=g(61),st=g(42),$=g(58),J=g(60),X=function(K){var ct=K.length;return function(et){return K[Math.max(0,Math.min(ct-1,Math.floor(et*ct)))]}},q=g(4),Z=function(K,ct){var et=Object(q.c)(+K,+ct);return function(dt){var pt=et(dt);return pt-360*Math.floor(pt/360)}},Y=g(14),V=g(31),N=g(62),U=g(83),T=g(59),A=g(77),M=Math.SQRT2;function O(K){return((K=Math.exp(K))+1/K)/2}var H=function(K,ct){var et,dt,pt=K[0],bt=K[1],Mt=K[2],w=ct[0],B=ct[1],tt=ct[2],nt=w-pt,x=B-bt,y=nt*nt+x*x;if(y<1e-12)dt=Math.log(tt/Mt)/M,et=function(Ot){return[pt+Ot*nt,bt+Ot*x,Mt*Math.exp(M*Ot*dt)]};else{var j=Math.sqrt(y),lt=(tt*tt-Mt*Mt+4*y)/(2*Mt*2*j),rt=(tt*tt-Mt*Mt-4*y)/(2*tt*2*j),gt=Math.log(Math.sqrt(lt*lt+1)-lt),vt=Math.log(Math.sqrt(rt*rt+1)-rt);dt=(vt-gt)/M,et=function(Ot){var At,$t=Ot*dt,Xt=O(gt),Ct=Mt/(2*j)*(Xt*(At=M*$t+gt,((At=Math.exp(2*At))-1)/(At+1))-function(wt){return((wt=Math.exp(wt))-1/wt)/2}(gt));return[pt+Ct*nt,bt+Ct*x,Mt*Xt/O(M*$t+gt)]}}return et.duration=1e3*dt,et},z=g(36),c=g(7);function D(K){return function(ct,et){var dt=K((ct=Object(c.f)(ct)).h,(et=Object(c.f)(et)).h),pt=Object(q.a)(ct.s,et.s),bt=Object(q.a)(ct.l,et.l),Mt=Object(q.a)(ct.opacity,et.opacity);return function(w){return ct.h=dt(w),ct.s=pt(w),ct.l=bt(w),ct.opacity=Mt(w),ct+""}}}var it=D(q.c),Q=D(q.a),W=g(50);function k(K,ct){var et=Object(q.a)((K=Object(W.a)(K)).l,(ct=Object(W.a)(ct)).l),dt=Object(q.a)(K.a,ct.a),pt=Object(q.a)(K.b,ct.b),bt=Object(q.a)(K.opacity,ct.opacity);return function(Mt){return K.l=et(Mt),K.a=dt(Mt),K.b=pt(Mt),K.opacity=bt(Mt),K+""}}function _(K){return function(ct,et){var dt=K((ct=Object(W.c)(ct)).h,(et=Object(W.c)(et)).h),pt=Object(q.a)(ct.c,et.c),bt=Object(q.a)(ct.l,et.l),Mt=Object(q.a)(ct.opacity,et.opacity);return function(w){return ct.h=dt(w),ct.c=pt(w),ct.l=bt(w),ct.opacity=Mt(w),ct+""}}}var C=_(q.c),h=_(q.a),l=g(78);function u(K){return function ct(et){function dt(pt,bt){var Mt=K((pt=Object(l.a)(pt)).h,(bt=Object(l.a)(bt)).h),w=Object(q.a)(pt.s,bt.s),B=Object(q.a)(pt.l,bt.l),tt=Object(q.a)(pt.opacity,bt.opacity);return function(nt){return pt.h=Mt(nt),pt.s=w(nt),pt.l=B(Math.pow(nt,et)),pt.opacity=tt(nt),pt+""}}return et=+et,dt.gamma=ct,dt}(1)}var v=u(q.c),I=u(q.a);function S(K,ct){for(var et=0,dt=ct.length-1,pt=ct[0],bt=new Array(dt<0?0:dt);etgt?1:rt>=gt?0:NaN}var Y=g(44);function V(rt){return function(){this.removeAttribute(rt)}}function N(rt){return function(){this.removeAttributeNS(rt.space,rt.local)}}function U(rt,gt){return function(){this.setAttribute(rt,gt)}}function T(rt,gt){return function(){this.setAttributeNS(rt.space,rt.local,gt)}}function A(rt,gt){return function(){var vt=gt.apply(this,arguments);vt==null?this.removeAttribute(rt):this.setAttribute(rt,vt)}}function M(rt,gt){return function(){var vt=gt.apply(this,arguments);vt==null?this.removeAttributeNS(rt.space,rt.local):this.setAttributeNS(rt.space,rt.local,vt)}}var O=g(67);function H(rt){return function(){delete this[rt]}}function z(rt,gt){return function(){this[rt]=gt}}function c(rt,gt){return function(){var vt=gt.apply(this,arguments);vt==null?delete this[rt]:this[rt]=vt}}function D(rt){return rt.trim().split(/^|\s+/)}function it(rt){return rt.classList||new Q(rt)}function Q(rt){this._node=rt,this._names=D(rt.getAttribute("class")||"")}function W(rt,gt){for(var vt=it(rt),Ot=-1,At=gt.length;++Ot=0&&(this._names.splice(gt,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(rt){return this._names.indexOf(rt)>=0}};function l(){this.textContent=""}function u(rt){return function(){this.textContent=rt}}function v(rt){return function(){var gt=rt.apply(this,arguments);this.textContent=gt==null?"":gt}}function I(){this.innerHTML=""}function S(rt){return function(){this.innerHTML=rt}}function b(rt){return function(){var gt=rt.apply(this,arguments);this.innerHTML=gt==null?"":gt}}function K(){this.nextSibling&&this.parentNode.appendChild(this)}function ct(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var et=g(29);function dt(){return null}function pt(){var rt=this.parentNode;rt&&rt.removeChild(this)}function bt(){var rt=this.cloneNode(!1),gt=this.parentNode;return gt?gt.insertBefore(rt,this.nextSibling):rt}function Mt(){var rt=this.cloneNode(!0),gt=this.parentNode;return gt?gt.insertBefore(rt,this.nextSibling):rt}var w=g(37),B=g(45);function tt(rt,gt,vt){var Ot=Object(B.a)(rt),At=Ot.CustomEvent;typeof At=="function"?At=new At(gt,vt):(At=Ot.document.createEvent("Event"),vt?(At.initEvent(gt,vt.bubbles,vt.cancelable),At.detail=vt.detail):At.initEvent(gt,!1,!1)),rt.dispatchEvent(At)}function nt(rt,gt){return function(){return tt(this,rt,gt)}}function x(rt,gt){return function(){return tt(this,rt,gt.apply(this,arguments))}}g.d(d,"c",function(){return y}),g.d(d,"a",function(){return j});var y=[null];function j(rt,gt){this._groups=rt,this._parents=gt}function lt(){return new j([[document.documentElement]],y)}j.prototype=lt.prototype={constructor:j,select:function(rt){typeof rt!="function"&&(rt=Object(L.a)(rt));for(var gt=this._groups,vt=gt.length,Ot=new Array(vt),At=0;At=Qt&&(Qt=un+1);!(rn=Te[Qt])&&++Qt=0;)(Ot=At[$t])&&(Xt&&4^Ot.compareDocumentPosition(Xt)&&Xt.parentNode.insertBefore(Ot,Xt),Xt=Ot);return this},sort:function(rt){function gt(re,le){return re&&le?rt(re.__data__,le.__data__):!re-!le}rt||(rt=Z);for(var vt=this._groups,Ot=vt.length,At=new Array(Ot),$t=0;$t1?this.each((gt==null?H:typeof gt=="function"?c:z)(rt,gt)):this.node()[rt]},classed:function(rt,gt){var vt=D(rt+"");if(arguments.length<2){for(var Ot=it(this.node()),At=-1,$t=vt.length;++At<$t;)if(!Ot.contains(vt[At]))return!1;return!0}return this.each((typeof gt=="function"?h:gt?_:C)(vt,gt))},text:function(rt){return arguments.length?this.each(rt==null?l:(typeof rt=="function"?v:u)(rt)):this.node().textContent},html:function(rt){return arguments.length?this.each(rt==null?I:(typeof rt=="function"?b:S)(rt)):this.node().innerHTML},raise:function(){return this.each(K)},lower:function(){return this.each(ct)},append:function(rt){var gt=typeof rt=="function"?rt:Object(et.a)(rt);return this.select(function(){return this.appendChild(gt.apply(this,arguments))})},insert:function(rt,gt){var vt=typeof rt=="function"?rt:Object(et.a)(rt),Ot=gt==null?dt:typeof gt=="function"?gt:Object(L.a)(gt);return this.select(function(){return this.insertBefore(vt.apply(this,arguments),Ot.apply(this,arguments)||null)})},remove:function(){return this.each(pt)},clone:function(rt){return this.select(rt?Mt:bt)},datum:function(rt){return arguments.length?this.property("__data__",rt):this.node().__data__},on:w.b,dispatch:function(rt,gt){return this.each((typeof gt=="function"?x:nt)(rt,gt))}},d.b=lt},function(Pt,d,g){"use strict";var L;(L=function(R){var st=g(9),$=0,J={small:{limit:10,format:st.format("")},medium:{limit:1e3,format:st.format("")},large:{limit:null,format:st.format(",d")}},X={small:{limit:10,format:st.format(".3f")},medium:{limit:100,format:st.format(".1f")},large:{limit:null,format:st.format(".2s")}},q=function(Z,Y){var V="large";return Z=c.length)return O!=null&&Q.sort(O),H!=null?H(Q):Q;for(var C,h,l,u=-1,v=Q.length,I=c[W++],S=st(),b=k();++uc.length)return k;var C,h=D[_-1];return H!=null&&_>=c.length?C=k.entries():(C=[],k.each(function(l,u){C.push({key:u,values:W(l,_)})})),h!=null?C.sort(function(l,u){return h(l.key,u.key)}):C}(it(Q,0,q,Z),0)},key:function(Q){return c.push(Q),z},sortKeys:function(Q){return D[c.length-1]=Q,z},sortValues:function(Q){return O=Q,z},rollup:function(Q){return H=Q,z}}};function J(){return{}}function X(O,H,z){O[H]=z}function q(){return st()}function Z(O,H,z){O.set(H,z)}function Y(){}var V=st.prototype;function N(O,H){var z=new Y;if(O instanceof Y)O.each(function(it){z.add(it)});else if(O){var c=-1,D=O.length;if(H==null)for(;++c1&&arguments[1]!==void 0?arguments[1]:12,U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Arial",T=document.createElement("canvas"),A=T.getContext("2d");return A.font=N+"px "+U,A.measureText(V).width},wrapText:function(V,N,U,T){var A=st.select(T),M=A.text().split(/\s+/).reverse(),O=void 0,H=[],z=0,c=$*X,D=A.attr("y"),it=parseFloat(A.attr("dy")),Q=N*q,W=A.text(null).append("tspan").attr("x",V).attr("y",D-5).attr("dy",it+"em").classed(Z,!0).style("font-size",N+"px");for(W.text(M.pop()),W=A.append("tspan").classed(Y,!0).attr("x",V).attr("y",D+J).attr("dy",++z*c+it+"em").style("font-size",Q+"px");O=M.pop();)H.push(O),W.text(H.join(" ")),W.node()&&W.node().getComputedTextLength()>U-50&&(H.pop(),W.text(H.join(" ")),H=[O],W=A.append("tspan").classed(Y,!0).attr("x",V).attr("y",D+J).attr("dy",++z*c+it+"em").text(O).style("font-size",Q+"px"))},wrapTextWithEllipses:function(V,N){var U=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,A=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1.2;V.each(function(){var M,O,H,z,c,D,it;for(M=(V=st.select(this)).text().split(/\s+/).reverse(),H=[],z=0,c=V.attr("y"),D=parseFloat(V.attr("dy")),it=V.text(null).append("tspan").attr("x",U).attr("y",c).attr("dy",D+"em");O=M.pop();)if(H.push(O),it.text(H.join(" ")),it.node()&&it.node().getComputedTextLength()>N){if(H.pop(),it.text(H.join(" ")),!(z1e-6)if(Math.abs(Bn*He-sn*kn)>1e-6&&ge){var fr=se-Ae,or=pe-Qe,Zn=He*He+sn*sn,ur=fr*fr+or*or,Tr=Math.sqrt(Zn),Sr=Math.sqrt(Yn),Br=ge*Math.tan((L-Math.acos((Zn+Yn-ur)/(2*Tr*Sr)))/2),Kr=Br/Sr,ui=Br/Tr;Math.abs(Kr-1)>1e-6&&(this._+="L"+(_t+Kr*kn)+","+(Wt+Kr*Bn)),this._+="A"+ge+","+ge+",0,0,"+ +(Bn*fr>kn*or)+","+(this._x1=_t+ui*He)+","+(this._y1=Wt+ui*sn)}else this._+="L"+(this._x1=_t)+","+(this._y1=Wt)},arc:function(_t,Wt,se,pe,ge,Ae){_t=+_t,Wt=+Wt,Ae=!!Ae;var Qe=(se=+se)*Math.cos(pe),He=se*Math.sin(pe),sn=_t+Qe,kn=Wt+He,Bn=1^Ae,Yn=Ae?pe-ge:ge-pe;if(se<0)throw new Error("negative radius: "+se);this._x1===null?this._+="M"+sn+","+kn:(Math.abs(this._x1-sn)>1e-6||Math.abs(this._y1-kn)>1e-6)&&(this._+="L"+sn+","+kn),se&&(Yn<0&&(Yn=Yn%R+R),Yn>st?this._+="A"+se+","+se+",0,1,"+Bn+","+(_t-Qe)+","+(Wt-He)+"A"+se+","+se+",0,1,"+Bn+","+(this._x1=sn)+","+(this._y1=kn):Yn>1e-6&&(this._+="A"+se+","+se+",0,"+ +(Yn>=L)+","+Bn+","+(this._x1=_t+se*Math.cos(ge))+","+(this._y1=Wt+se*Math.sin(ge))))},rect:function(_t,Wt,se,pe){this._+="M"+(this._x0=this._x1=+_t)+","+(this._y0=this._y1=+Wt)+"h"+ +se+"v"+ +pe+"h"+-se+"Z"},toString:function(){return this._}};var X=J,q=function(_t){return function(){return _t}},Z=Math.abs,Y=Math.atan2,V=Math.cos,N=Math.max,U=Math.min,T=Math.sin,A=Math.sqrt,M=Math.PI,O=M/2,H=2*M;function z(_t){return _t>1?0:_t<-1?M:Math.acos(_t)}function c(_t){return _t>=1?O:_t<=-1?-O:Math.asin(_t)}function D(_t){return _t.innerRadius}function it(_t){return _t.outerRadius}function Q(_t){return _t.startAngle}function W(_t){return _t.endAngle}function k(_t){return _t&&_t.padAngle}function _(_t,Wt,se,pe,ge,Ae,Qe,He){var sn=se-_t,kn=pe-Wt,Bn=Qe-ge,Yn=He-Ae,fr=Yn*sn-Bn*kn;if(!(fr*fr<1e-12))return[_t+(fr=(Bn*(Wt-Ae)-Yn*(_t-ge))/fr)*sn,Wt+fr*kn]}function C(_t,Wt,se,pe,ge,Ae,Qe){var He=_t-se,sn=Wt-pe,kn=(Qe?Ae:-Ae)/A(He*He+sn*sn),Bn=kn*sn,Yn=-kn*He,fr=_t+Bn,or=Wt+Yn,Zn=se+Bn,ur=pe+Yn,Tr=(fr+Zn)/2,Sr=(or+ur)/2,Br=Zn-fr,Kr=ur-or,ui=Br*Br+Kr*Kr,Ri=ge-Ae,Ai=fr*ur-Zn*or,yi=(Kr<0?-1:1)*A(N(0,Ri*Ri*ui-Ai*Ai)),Oi=(Ai*Kr-Br*yi)/ui,Li=(-Ai*Br-Kr*yi)/ui,Pi=(Ai*Kr+Br*yi)/ui,Vi=(-Ai*Br+Kr*yi)/ui,ro=Oi-Tr,to=Li-Sr,ko=Pi-Tr,Ro=Vi-Sr;return ro*ro+to*to>ko*ko+Ro*Ro&&(Oi=Pi,Li=Vi),{cx:Oi,cy:Li,x01:-Bn,y01:-Yn,x11:Oi*(ge/Ri-1),y11:Li*(ge/Ri-1)}}var h=function(){var _t=D,Wt=it,se=q(0),pe=null,ge=Q,Ae=W,Qe=k,He=null;function sn(){var kn,Bn,Yn=+_t.apply(this,arguments),fr=+Wt.apply(this,arguments),or=ge.apply(this,arguments)-O,Zn=Ae.apply(this,arguments)-O,ur=Z(Zn-or),Tr=Zn>or;if(He||(He=kn=X()),fr1e-12)if(ur>H-1e-12)He.moveTo(fr*V(or),fr*T(or)),He.arc(0,0,fr,or,Zn,!Tr),Yn>1e-12&&(He.moveTo(Yn*V(Zn),Yn*T(Zn)),He.arc(0,0,Yn,Zn,or,Tr));else{var Sr,Br,Kr=or,ui=Zn,Ri=or,Ai=Zn,yi=ur,Oi=ur,Li=Qe.apply(this,arguments)/2,Pi=Li>1e-12&&(pe?+pe.apply(this,arguments):A(Yn*Yn+fr*fr)),Vi=U(Z(fr-Yn)/2,+se.apply(this,arguments)),ro=Vi,to=Vi;if(Pi>1e-12){var ko=c(Pi/Yn*T(Li)),Ro=c(Pi/fr*T(Li));(yi-=2*ko)>1e-12?(Ri+=ko*=Tr?1:-1,Ai-=ko):(yi=0,Ri=Ai=(or+Zn)/2),(Oi-=2*Ro)>1e-12?(Kr+=Ro*=Tr?1:-1,ui-=Ro):(Oi=0,Kr=ui=(or+Zn)/2)}var go=fr*V(Kr),io=fr*T(Kr),_o=Yn*V(Ai),$o=Yn*T(Ai);if(Vi>1e-12){var so,ki=fr*V(ui),aa=fr*T(ui),sa=Yn*V(Ri),To=Yn*T(Ri);if(ur1e-12?to>1e-12?(Sr=C(sa,To,go,io,fr,to,Tr),Br=C(ki,aa,_o,$o,fr,to,Tr),He.moveTo(Sr.cx+Sr.x01,Sr.cy+Sr.y01),to1e-12&&yi>1e-12?ro>1e-12?(Sr=C(_o,$o,ki,aa,Yn,-ro,Tr),Br=C(go,io,sa,To,Yn,-ro,Tr),He.lineTo(Sr.cx+Sr.x01,Sr.cy+Sr.y01),ro=fr;--or)He.point(Br[or],Kr[or]);He.lineEnd(),He.areaEnd()}Sr&&(Br[Yn]=+_t(Zn,Yn,Bn),Kr[Yn]=+se(Zn,Yn,Bn),He.point(Wt?+Wt(Zn,Yn,Bn):Br[Yn],pe?+pe(Zn,Yn,Bn):Kr[Yn]))}if(ur)return He=null,ur+""||null}function kn(){return S().defined(ge).curve(Qe).context(Ae)}return sn.x=function(Bn){return arguments.length?(_t=typeof Bn=="function"?Bn:q(+Bn),Wt=null,sn):_t},sn.x0=function(Bn){return arguments.length?(_t=typeof Bn=="function"?Bn:q(+Bn),sn):_t},sn.x1=function(Bn){return arguments.length?(Wt=Bn==null?null:typeof Bn=="function"?Bn:q(+Bn),sn):Wt},sn.y=function(Bn){return arguments.length?(se=typeof Bn=="function"?Bn:q(+Bn),pe=null,sn):se},sn.y0=function(Bn){return arguments.length?(se=typeof Bn=="function"?Bn:q(+Bn),sn):se},sn.y1=function(Bn){return arguments.length?(pe=Bn==null?null:typeof Bn=="function"?Bn:q(+Bn),sn):pe},sn.lineX0=sn.lineY0=function(){return kn().x(_t).y(se)},sn.lineY1=function(){return kn().x(_t).y(pe)},sn.lineX1=function(){return kn().x(Wt).y(se)},sn.defined=function(Bn){return arguments.length?(ge=typeof Bn=="function"?Bn:q(!!Bn),sn):ge},sn.curve=function(Bn){return arguments.length?(Qe=Bn,Ae!=null&&(He=Qe(Ae)),sn):Qe},sn.context=function(Bn){return arguments.length?(Bn==null?Ae=He=null:He=Qe(Ae=Bn),sn):Ae},sn},K=function(_t,Wt){return Wt<_t?-1:Wt>_t?1:Wt>=_t?0:NaN},ct=function(_t){return _t},et=function(){var _t=ct,Wt=K,se=null,pe=q(0),ge=q(H),Ae=q(0);function Qe(He){var sn,kn,Bn,Yn,fr,or=He.length,Zn=0,ur=new Array(or),Tr=new Array(or),Sr=+pe.apply(this,arguments),Br=Math.min(H,Math.max(-H,ge.apply(this,arguments)-Sr)),Kr=Math.min(Math.abs(Br)/or,Ae.apply(this,arguments)),ui=Kr*(Br<0?-1:1);for(sn=0;sn0&&(Zn+=fr);for(Wt!=null?ur.sort(function(Ri,Ai){return Wt(Tr[Ri],Tr[Ai])}):se!=null&&ur.sort(function(Ri,Ai){return se(He[Ri],He[Ai])}),sn=0,Bn=Zn?(Br-or*ui)/Zn:0;sn0?fr*Bn:0)+ui,Tr[kn]={data:He[kn],index:sn,value:fr,startAngle:Sr,endAngle:Yn,padAngle:Kr};return Tr}return Qe.value=function(He){return arguments.length?(_t=typeof He=="function"?He:q(+He),Qe):_t},Qe.sortValues=function(He){return arguments.length?(Wt=He,se=null,Qe):Wt},Qe.sort=function(He){return arguments.length?(se=He,Wt=null,Qe):se},Qe.startAngle=function(He){return arguments.length?(pe=typeof He=="function"?He:q(+He),Qe):pe},Qe.endAngle=function(He){return arguments.length?(ge=typeof He=="function"?He:q(+He),Qe):ge},Qe.padAngle=function(He){return arguments.length?(Ae=typeof He=="function"?He:q(+He),Qe):Ae},Qe},dt=bt(u);function pt(_t){this._curve=_t}function bt(_t){function Wt(se){return new pt(_t(se))}return Wt._curve=_t,Wt}function Mt(_t){var Wt=_t.curve;return _t.angle=_t.x,delete _t.x,_t.radius=_t.y,delete _t.y,_t.curve=function(se){return arguments.length?Wt(bt(se)):Wt()._curve},_t}pt.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(_t,Wt){this._curve.point(Wt*Math.sin(_t),Wt*-Math.cos(_t))}};var w=function(){return Mt(S().curve(dt))},B=function(){var _t=b().curve(dt),Wt=_t.curve,se=_t.lineX0,pe=_t.lineX1,ge=_t.lineY0,Ae=_t.lineY1;return _t.angle=_t.x,delete _t.x,_t.startAngle=_t.x0,delete _t.x0,_t.endAngle=_t.x1,delete _t.x1,_t.radius=_t.y,delete _t.y,_t.innerRadius=_t.y0,delete _t.y0,_t.outerRadius=_t.y1,delete _t.y1,_t.lineStartAngle=function(){return Mt(se())},delete _t.lineX0,_t.lineEndAngle=function(){return Mt(pe())},delete _t.lineX1,_t.lineInnerRadius=function(){return Mt(ge())},delete _t.lineY0,_t.lineOuterRadius=function(){return Mt(Ae())},delete _t.lineY1,_t.curve=function(Qe){return arguments.length?Wt(bt(Qe)):Wt()._curve},_t},tt=function(_t,Wt){return[(Wt=+Wt)*Math.cos(_t-=Math.PI/2),Wt*Math.sin(_t)]},nt=Array.prototype.slice;function x(_t){return _t.source}function y(_t){return _t.target}function j(_t){var Wt=x,se=y,pe=v,ge=I,Ae=null;function Qe(){var He,sn=nt.call(arguments),kn=Wt.apply(this,sn),Bn=se.apply(this,sn);if(Ae||(Ae=He=X()),_t(Ae,+pe.apply(this,(sn[0]=kn,sn)),+ge.apply(this,sn),+pe.apply(this,(sn[0]=Bn,sn)),+ge.apply(this,sn)),He)return Ae=null,He+""||null}return Qe.source=function(He){return arguments.length?(Wt=He,Qe):Wt},Qe.target=function(He){return arguments.length?(se=He,Qe):se},Qe.x=function(He){return arguments.length?(pe=typeof He=="function"?He:q(+He),Qe):pe},Qe.y=function(He){return arguments.length?(ge=typeof He=="function"?He:q(+He),Qe):ge},Qe.context=function(He){return arguments.length?(Ae=He==null?null:He,Qe):Ae},Qe}function lt(_t,Wt,se,pe,ge){_t.moveTo(Wt,se),_t.bezierCurveTo(Wt=(Wt+pe)/2,se,Wt,ge,pe,ge)}function rt(_t,Wt,se,pe,ge){_t.moveTo(Wt,se),_t.bezierCurveTo(Wt,se=(se+ge)/2,pe,se,pe,ge)}function gt(_t,Wt,se,pe,ge){var Ae=tt(Wt,se),Qe=tt(Wt,se=(se+ge)/2),He=tt(pe,se),sn=tt(pe,ge);_t.moveTo(Ae[0],Ae[1]),_t.bezierCurveTo(Qe[0],Qe[1],He[0],He[1],sn[0],sn[1])}function vt(){return j(lt)}function Ot(){return j(rt)}function At(){var _t=j(gt);return _t.angle=_t.x,delete _t.x,_t.radius=_t.y,delete _t.y,_t}var $t={draw:function(_t,Wt){var se=Math.sqrt(Wt/M);_t.moveTo(se,0),_t.arc(0,0,se,0,H)}},Xt={draw:function(_t,Wt){var se=Math.sqrt(Wt/5)/2;_t.moveTo(-3*se,-se),_t.lineTo(-se,-se),_t.lineTo(-se,-3*se),_t.lineTo(se,-3*se),_t.lineTo(se,-se),_t.lineTo(3*se,-se),_t.lineTo(3*se,se),_t.lineTo(se,se),_t.lineTo(se,3*se),_t.lineTo(-se,3*se),_t.lineTo(-se,se),_t.lineTo(-3*se,se),_t.closePath()}},Ct=Math.sqrt(1/3),wt=2*Ct,Dt={draw:function(_t,Wt){var se=Math.sqrt(Wt/wt),pe=se*Ct;_t.moveTo(0,-se),_t.lineTo(pe,0),_t.lineTo(0,se),_t.lineTo(-pe,0),_t.closePath()}},jt=Math.sin(M/10)/Math.sin(7*M/10),re=Math.sin(H/10)*jt,le=-Math.cos(H/10)*jt,Gt={draw:function(_t,Wt){var se=Math.sqrt(.8908130915292852*Wt),pe=re*se,ge=le*se;_t.moveTo(0,-se),_t.lineTo(pe,ge);for(var Ae=1;Ae<5;++Ae){var Qe=H*Ae/5,He=Math.cos(Qe),sn=Math.sin(Qe);_t.lineTo(sn*se,-He*se),_t.lineTo(He*pe-sn*ge,sn*pe+He*ge)}_t.closePath()}},he={draw:function(_t,Wt){var se=Math.sqrt(Wt),pe=-se/2;_t.rect(pe,pe,se,se)}},ve=Math.sqrt(3),Ce={draw:function(_t,Wt){var se=-Math.sqrt(Wt/(3*ve));_t.moveTo(0,2*se),_t.lineTo(-ve*se,-se),_t.lineTo(ve*se,-se),_t.closePath()}},Te=Math.sqrt(3)/2,Ke=1/Math.sqrt(12),rn=3*(Ke/2+1),un={draw:function(_t,Wt){var se=Math.sqrt(Wt/rn),pe=se/2,ge=se*Ke,Ae=pe,Qe=se*Ke+se,He=-Ae,sn=Qe;_t.moveTo(pe,ge),_t.lineTo(Ae,Qe),_t.lineTo(He,sn),_t.lineTo(-.5*pe-Te*ge,Te*pe+-.5*ge),_t.lineTo(-.5*Ae-Te*Qe,Te*Ae+-.5*Qe),_t.lineTo(-.5*He-Te*sn,Te*He+-.5*sn),_t.lineTo(-.5*pe+Te*ge,-.5*ge-Te*pe),_t.lineTo(-.5*Ae+Te*Qe,-.5*Qe-Te*Ae),_t.lineTo(-.5*He+Te*sn,-.5*sn-Te*He),_t.closePath()}},Qt=[$t,Xt,Dt,he,Gt,Ce,un],Kt=function(){var _t=q($t),Wt=q(64),se=null;function pe(){var ge;if(se||(se=ge=X()),_t.apply(this,arguments).draw(se,+Wt.apply(this,arguments)),ge)return se=null,ge+""||null}return pe.type=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:q(ge),pe):_t},pe.size=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:q(+ge),pe):Wt},pe.context=function(ge){return arguments.length?(se=ge==null?null:ge,pe):se},pe},Jt=function(){};function Et(_t,Wt,se){_t._context.bezierCurveTo((2*_t._x0+_t._x1)/3,(2*_t._y0+_t._y1)/3,(_t._x0+2*_t._x1)/3,(_t._y0+2*_t._y1)/3,(_t._x0+4*_t._x1+Wt)/6,(_t._y0+4*_t._y1+se)/6)}function Rt(_t){this._context=_t}Rt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Et(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Et(this,_t,Wt)}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=Wt}};var zt=function(_t){return new Rt(_t)};function Ft(_t){this._context=_t}Ft.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._x2=_t,this._y2=Wt;break;case 1:this._point=2,this._x3=_t,this._y3=Wt;break;case 2:this._point=3,this._x4=_t,this._y4=Wt,this._context.moveTo((this._x0+4*this._x1+_t)/6,(this._y0+4*this._y1+Wt)/6);break;default:Et(this,_t,Wt)}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=Wt}};var ce=function(_t){return new Ft(_t)};function Se(_t){this._context=_t}Se.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var se=(this._x0+4*this._x1+_t)/6,pe=(this._y0+4*this._y1+Wt)/6;this._line?this._context.lineTo(se,pe):this._context.moveTo(se,pe);break;case 3:this._point=4;default:Et(this,_t,Wt)}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=Wt}};var xe=function(_t){return new Se(_t)};function Ze(_t,Wt){this._basis=new Rt(_t),this._beta=Wt}Ze.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var _t=this._x,Wt=this._y,se=_t.length-1;if(se>0)for(var pe,ge=_t[0],Ae=Wt[0],Qe=_t[se]-ge,He=Wt[se]-Ae,sn=-1;++sn<=se;)pe=sn/se,this._basis.point(this._beta*_t[sn]+(1-this._beta)*(ge+pe*Qe),this._beta*Wt[sn]+(1-this._beta)*(Ae+pe*He));this._x=this._y=null,this._basis.lineEnd()},point:function(_t,Wt){this._x.push(+_t),this._y.push(+Wt)}};var pn=function _t(Wt){function se(pe){return Wt===1?new Rt(pe):new Ze(pe,Wt)}return se.beta=function(pe){return _t(+pe)},se}(.85);function bn(_t,Wt,se){_t._context.bezierCurveTo(_t._x1+_t._k*(_t._x2-_t._x0),_t._y1+_t._k*(_t._y2-_t._y0),_t._x2+_t._k*(_t._x1-Wt),_t._y2+_t._k*(_t._y1-se),_t._x2,_t._y2)}function Ln(_t,Wt){this._context=_t,this._k=(1-Wt)/6}Ln.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:bn(this,this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2,this._x1=_t,this._y1=Wt;break;case 2:this._point=3;default:bn(this,_t,Wt)}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var vn=function _t(Wt){function se(pe){return new Ln(pe,Wt)}return se.tension=function(pe){return _t(+pe)},se}(0);function Tn(_t,Wt){this._context=_t,this._k=(1-Wt)/6}Tn.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._x3=_t,this._y3=Wt;break;case 1:this._point=2,this._context.moveTo(this._x4=_t,this._y4=Wt);break;case 2:this._point=3,this._x5=_t,this._y5=Wt;break;default:bn(this,_t,Wt)}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var Qn=function _t(Wt){function se(pe){return new Tn(pe,Wt)}return se.tension=function(pe){return _t(+pe)},se}(0);function dr(_t,Wt){this._context=_t,this._k=(1-Wt)/6}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bn(this,_t,Wt)}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var ye=function _t(Wt){function se(pe){return new dr(pe,Wt)}return se.tension=function(pe){return _t(+pe)},se}(0);function Fe(_t,Wt,se){var pe=_t._x1,ge=_t._y1,Ae=_t._x2,Qe=_t._y2;if(_t._l01_a>1e-12){var He=2*_t._l01_2a+3*_t._l01_a*_t._l12_a+_t._l12_2a,sn=3*_t._l01_a*(_t._l01_a+_t._l12_a);pe=(pe*He-_t._x0*_t._l12_2a+_t._x2*_t._l01_2a)/sn,ge=(ge*He-_t._y0*_t._l12_2a+_t._y2*_t._l01_2a)/sn}if(_t._l23_a>1e-12){var kn=2*_t._l23_2a+3*_t._l23_a*_t._l12_a+_t._l12_2a,Bn=3*_t._l23_a*(_t._l23_a+_t._l12_a);Ae=(Ae*kn+_t._x1*_t._l23_2a-Wt*_t._l12_2a)/Bn,Qe=(Qe*kn+_t._y1*_t._l23_2a-se*_t._l12_2a)/Bn}_t._context.bezierCurveTo(pe,ge,Ae,Qe,_t._x2,_t._y2)}function qe(_t,Wt){this._context=_t,this._alpha=Wt}qe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){if(_t=+_t,Wt=+Wt,this._point){var se=this._x2-_t,pe=this._y2-Wt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(se*se+pe*pe,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2;break;case 2:this._point=3;default:Fe(this,_t,Wt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var be=function _t(Wt){function se(pe){return Wt?new qe(pe,Wt):new Ln(pe,0)}return se.alpha=function(pe){return _t(+pe)},se}(.5);function je(_t,Wt){this._context=_t,this._alpha=Wt}je.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(_t,Wt){if(_t=+_t,Wt=+Wt,this._point){var se=this._x2-_t,pe=this._y2-Wt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(se*se+pe*pe,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=_t,this._y3=Wt;break;case 1:this._point=2,this._context.moveTo(this._x4=_t,this._y4=Wt);break;case 2:this._point=3,this._x5=_t,this._y5=Wt;break;default:Fe(this,_t,Wt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var Ue=function _t(Wt){function se(pe){return Wt?new je(pe,Wt):new Tn(pe,0)}return se.alpha=function(pe){return _t(+pe)},se}(.5);function Re(_t,Wt){this._context=_t,this._alpha=Wt}Re.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,Wt){if(_t=+_t,Wt=+Wt,this._point){var se=this._x2-_t,pe=this._y2-Wt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(se*se+pe*pe,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Fe(this,_t,Wt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=Wt}};var Ie=function _t(Wt){function se(pe){return Wt?new Re(pe,Wt):new dr(pe,0)}return se.alpha=function(pe){return _t(+pe)},se}(.5);function tn(_t){this._context=_t}tn.prototype={areaStart:Jt,areaEnd:Jt,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(_t,Wt){_t=+_t,Wt=+Wt,this._point?this._context.lineTo(_t,Wt):(this._point=1,this._context.moveTo(_t,Wt))}};var Mn=function(_t){return new tn(_t)};function ke(_t){return _t<0?-1:1}function on(_t,Wt,se){var pe=_t._x1-_t._x0,ge=Wt-_t._x1,Ae=(_t._y1-_t._y0)/(pe||ge<0&&-0),Qe=(se-_t._y1)/(ge||pe<0&&-0),He=(Ae*ge+Qe*pe)/(pe+ge);return(ke(Ae)+ke(Qe))*Math.min(Math.abs(Ae),Math.abs(Qe),.5*Math.abs(He))||0}function _n(_t,Wt){var se=_t._x1-_t._x0;return se?(3*(_t._y1-_t._y0)/se-Wt)/2:Wt}function Pe(_t,Wt,se){var pe=_t._x0,ge=_t._y0,Ae=_t._x1,Qe=_t._y1,He=(Ae-pe)/3;_t._context.bezierCurveTo(pe+He,ge+He*Wt,Ae-He,Qe-He*se,Ae,Qe)}function wn(_t){this._context=_t}function an(_t){this._context=new gn(_t)}function gn(_t){this._context=_t}function Sn(_t){return new wn(_t)}function xn(_t){return new an(_t)}function hr(_t){this._context=_t}function nr(_t){var Wt,se,pe=_t.length-1,ge=new Array(pe),Ae=new Array(pe),Qe=new Array(pe);for(ge[0]=0,Ae[0]=2,Qe[0]=_t[0]+2*_t[1],Wt=1;Wt=0;--Wt)ge[Wt]=(Qe[Wt]-ge[Wt+1])/Ae[Wt];for(Ae[pe-1]=(_t[pe]+ge[pe-1])/2,Wt=0;Wt=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(_t,Wt){switch(_t=+_t,Wt=+Wt,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,Wt):this._context.moveTo(_t,Wt);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,Wt),this._context.lineTo(_t,Wt);else{var se=this._x*(1-this._t)+_t*this._t;this._context.lineTo(se,this._y),this._context.lineTo(se,Wt)}}this._x=_t,this._y=Wt}};var rr=function(_t){return new vr(_t,.5)};function Rr(_t){return new vr(_t,0)}function jr(_t){return new vr(_t,1)}var lr=function(_t,Wt){if((ge=_t.length)>1)for(var se,pe,ge,Ae=1,Qe=_t[Wt[0]],He=Qe.length;Ae=0;)se[Wt]=Wt;return se};function Dr(_t,Wt){return _t[Wt]}var fi=function(){var _t=q([]),Wt=Fn,se=lr,pe=Dr;function ge(Ae){var Qe,He,sn=_t.apply(this,arguments),kn=Ae.length,Bn=sn.length,Yn=new Array(Bn);for(Qe=0;Qe0){for(var se,pe,ge,Ae=0,Qe=_t[0].length;Ae0)for(var se,pe,ge,Ae,Qe,He,sn=0,kn=_t[Wt[0]].length;sn0?(pe[0]=Ae,pe[1]=Ae+=ge):ge<0?(pe[1]=Qe,pe[0]=Qe+=ge):(pe[0]=0,pe[1]=ge)},Mr=function(_t,Wt){if((se=_t.length)>0){for(var se,pe=0,ge=_t[Wt[0]],Ae=ge.length;pe0&&(pe=(se=_t[Wt[0]]).length)>0){for(var se,pe,ge,Ae=0,Qe=1;QeAe&&(Ae=Wt,pe=se);return pe}var $e=function(_t){var Wt=_t.map(en);return Fn(_t).sort(function(se,pe){return Wt[se]-Wt[pe]})};function en(_t){for(var Wt,se=0,pe=-1,ge=_t.length;++pe0?Object(L.a)(function(J){J.setFullYear(Math.floor(J.getFullYear()/$)*$),J.setMonth(0,1),J.setHours(0,0,0,0)},function(J,X){J.setFullYear(J.getFullYear()+X*$)}):null},d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return st});var L=g(1),R=Object(L.a)(function($){$.setUTCMonth(0,1),$.setUTCHours(0,0,0,0)},function($,J){$.setUTCFullYear($.getUTCFullYear()+J)},function($,J){return J.getUTCFullYear()-$.getUTCFullYear()},function($){return $.getUTCFullYear()});R.every=function($){return isFinite($=Math.floor($))&&$>0?Object(L.a)(function(J){J.setUTCFullYear(Math.floor(J.getUTCFullYear()/$)*$),J.setUTCMonth(0,1),J.setUTCHours(0,0,0,0)},function(J,X){J.setUTCFullYear(J.getUTCFullYear()+X*$)}):null},d.a=R;var st=R.range},function(Pt,d,g){"use strict";var L;(L=function(){var R=g(27),st=g(39);return{axisTimeCombinations:{MINUTE_HOUR:"minute-hour",HOUR_DAY:"hour-daymonth",DAY_MONTH:"day-month",MONTH_YEAR:"month-year",CUSTOM:"custom"},curveMap:{linear:R.curveLinear,basis:R.curveBasis,cardinal:R.curveCardinal,catmullRom:R.curveCatmullRom,monotoneX:R.curveMonotoneX,monotoneY:R.curveMonotoneY,natural:R.curveNatural,step:R.curveStep,stepAfter:R.curveStepAfter,stepBefore:R.curveStepBefore},emptyDonutData:[{quantity:1,percentage:100}],timeBenchmarks:{ONE_AND_A_HALF_YEARS:47304e6,ONE_YEAR:31536000365,ONE_DAY:86400001},lineGradientId:"lineGradientId",timeIntervals:{timeMillisecond:st.timeMillisecond,utcMillisecond:st.utcMillisecond,timeSecond:st.timeSecond,utcSecond:st.utcSecond,timeMinute:st.timeMinute,utcMinute:st.utcMinute,timeHour:st.timeHour,utcHour:st.utcHour,timeDay:st.timeDay,utcDay:st.utcDay,timeWeek:st.timeWeek,utcWeek:st.utcWeek,timeSunday:st.timeSunday,utcSunday:st.utcSunday,timeMonday:st.timeMonday,utcMonday:st.utcMonday,timeTuesday:st.timeTuesday,utcTuesday:st.utcTuesday,timeWednesday:st.timeWednesday,utcWednesday:st.utcWednesday,timeThursday:st.timeThursday,utcThursday:st.utcThursday,timeFriday:st.timeFriday,utcFriday:st.utcFriday,timeSaturday:st.timeSaturday,utcSaturday:st.utcSaturday,timeMonth:st.timeMonth,utcMonth:st.utcMonth,timeYear:st.timeYear,utcYear:st.utcYear},FORMAT_LOCALE_URL:"https://cdn.jsdelivr.net/npm/d3-format/locale"}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";g.d(d,"b",function(){return X}),g.d(d,"c",function(){return q});var L=g(7),R=g(42),st=g(58),$=g(4);function J(Z){return function(Y){var V,N,U=Y.length,T=new Array(U),A=new Array(U),M=new Array(U);for(V=0;V=0&&(N=V.slice(U+1),V=V.slice(0,U)),{type:V,name:N}})}function X(Y){return function(){var V=this.__on;if(V){for(var N,U=0,T=-1,A=V.length;U1?$[0]+$.slice(2):$,+L.slice(st+1)]}},function(Pt,d,g){"use strict";g.r(d);var L=g(1);g.d(d,"timeInterval",function(){return L.a});var R=g(52);g.d(d,"timeMillisecond",function(){return R.a}),g.d(d,"timeMilliseconds",function(){return R.b}),g.d(d,"utcMillisecond",function(){return R.a}),g.d(d,"utcMilliseconds",function(){return R.b});var st=g(51);g.d(d,"timeSecond",function(){return st.a}),g.d(d,"timeSeconds",function(){return st.b}),g.d(d,"utcSecond",function(){return st.a}),g.d(d,"utcSeconds",function(){return st.b});var $=g(71);g.d(d,"timeMinute",function(){return $.a}),g.d(d,"timeMinutes",function(){return $.b});var J=g(70);g.d(d,"timeHour",function(){return J.a}),g.d(d,"timeHours",function(){return J.b});var X=g(53);g.d(d,"timeDay",function(){return X.b}),g.d(d,"timeDays",function(){return X.a});var q=g(5);g.d(d,"timeWeek",function(){return q.g}),g.d(d,"timeWeeks",function(){return q.h}),g.d(d,"timeSunday",function(){return q.g}),g.d(d,"timeSundays",function(){return q.h}),g.d(d,"timeMonday",function(){return q.c}),g.d(d,"timeMondays",function(){return q.d}),g.d(d,"timeTuesday",function(){return q.k}),g.d(d,"timeTuesdays",function(){return q.l}),g.d(d,"timeWednesday",function(){return q.m}),g.d(d,"timeWednesdays",function(){return q.n}),g.d(d,"timeThursday",function(){return q.i}),g.d(d,"timeThursdays",function(){return q.j}),g.d(d,"timeFriday",function(){return q.a}),g.d(d,"timeFridays",function(){return q.b}),g.d(d,"timeSaturday",function(){return q.e}),g.d(d,"timeSaturdays",function(){return q.f});var Z=g(69);g.d(d,"timeMonth",function(){return Z.a}),g.d(d,"timeMonths",function(){return Z.b});var Y=g(33);g.d(d,"timeYear",function(){return Y.a}),g.d(d,"timeYears",function(){return Y.b});var V=g(74);g.d(d,"utcMinute",function(){return V.a}),g.d(d,"utcMinutes",function(){return V.b});var N=g(73);g.d(d,"utcHour",function(){return N.a}),g.d(d,"utcHours",function(){return N.b});var U=g(54);g.d(d,"utcDay",function(){return U.a}),g.d(d,"utcDays",function(){return U.b});var T=g(6);g.d(d,"utcWeek",function(){return T.g}),g.d(d,"utcWeeks",function(){return T.h}),g.d(d,"utcSunday",function(){return T.g}),g.d(d,"utcSundays",function(){return T.h}),g.d(d,"utcMonday",function(){return T.c}),g.d(d,"utcMondays",function(){return T.d}),g.d(d,"utcTuesday",function(){return T.k}),g.d(d,"utcTuesdays",function(){return T.l}),g.d(d,"utcWednesday",function(){return T.m}),g.d(d,"utcWednesdays",function(){return T.n}),g.d(d,"utcThursday",function(){return T.i}),g.d(d,"utcThursdays",function(){return T.j}),g.d(d,"utcFriday",function(){return T.a}),g.d(d,"utcFridays",function(){return T.b}),g.d(d,"utcSaturday",function(){return T.e}),g.d(d,"utcSaturdays",function(){return T.f});var A=g(72);g.d(d,"utcMonth",function(){return A.a}),g.d(d,"utcMonths",function(){return A.b});var M=g(34);g.d(d,"utcYear",function(){return M.a}),g.d(d,"utcYears",function(){return M.b})},function(Pt,d,g){"use strict";g.d(d,"b",function(){return R}),g.d(d,"a",function(){return st});var L=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function R($){if(!(J=L.exec($)))throw new Error("invalid format: "+$);var J;return new st({fill:J[1],align:J[2],sign:J[3],symbol:J[4],zero:J[5],width:J[6],comma:J[7],precision:J[8]&&J[8].slice(1),trim:J[9],type:J[10]})}function st($){this.fill=$.fill===void 0?" ":$.fill+"",this.align=$.align===void 0?">":$.align+"",this.sign=$.sign===void 0?"-":$.sign+"",this.symbol=$.symbol===void 0?"":$.symbol+"",this.zero=!!$.zero,this.width=$.width===void 0?void 0:+$.width,this.comma=!!$.comma,this.precision=$.precision===void 0?void 0:+$.precision,this.trim=!!$.trim,this.type=$.type===void 0?"":$.type+""}R.prototype=st.prototype,st.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(Pt,d,g){"use strict";var L=g(7),R=g(36),st=g(61),$=g(60),J=g(14),X=g(62),q=g(59),Z=g(48),Y=g(31);d.a=function(V,N){var U,T=typeof N;return N==null||T==="boolean"?Object(Z.a)(N):(T==="number"?J.a:T==="string"?(U=Object(L.e)(N))?(N=U,R.a):q.a:N instanceof L.e?R.a:N instanceof Date?$.a:Object(Y.b)(N)?Y.a:Array.isArray(N)?st.b:typeof N.valueOf!="function"&&typeof N.toString!="function"||isNaN(N)?X.a:J.a)(V,N)}},function(Pt,d,g){"use strict";function L(R,st,$,J,X){var q=R*R,Z=q*R;return((1-3*R+3*q-Z)*st+(4-6*q+3*Z)*$+(1+3*R+3*q-3*Z)*J+Z*X)/6}g.d(d,"a",function(){return L}),d.b=function(R){var st=R.length-1;return function($){var J=$<=0?$=0:$>=1?($=1,st-1):Math.floor($*st),X=R[J],q=R[J+1],Z=J>0?R[J-1]:2*X-q,Y=J=0&&(st=R.slice(0,$))!=="xmlns"&&(R=R.slice($+1)),L.a.hasOwnProperty(st)?{space:L.a[st],local:R}:R}},function(Pt,d,g){"use strict";d.a=function(L){return L.ownerDocument&&L.ownerDocument.defaultView||L.document&&L||L.defaultView}},function(Pt,d,g){"use strict";var L=g(37);d.a=function(){for(var R,st=L.c;R=st.sourceEvent;)st=R;return st}},function(Pt,d,g){"use strict";g.d(d,"a",function(){return L}),g.d(d,"b",function(){return R});var L=Math.PI/180,R=180/Math.PI},function(Pt,d,g){"use strict";d.a=function(L){return function(){return L}}},function(Pt,d,g){"use strict";function L($){return $*$*$}function R($){return--$*$*$+1}function st($){return(($*=2)<=1?$*$*$:($-=2)*$*$+2)/2}g.d(d,"a",function(){return L}),g.d(d,"c",function(){return R}),g.d(d,"b",function(){return st})},function(Pt,d,g){"use strict";g.d(d,"b",function(){return q}),g.d(d,"a",function(){return Z}),g.d(d,"d",function(){return M}),g.d(d,"c",function(){return O});var L=g(15),R=g(7),st=g(47),$=6/29,J=3*$*$;function X(c){if(c instanceof Y)return new Y(c.l,c.a,c.b,c.opacity);if(c instanceof H)return z(c);c instanceof R.b||(c=Object(R.h)(c));var D,it,Q=T(c.r),W=T(c.g),k=T(c.b),_=V((.2225045*Q+.7168786*W+.0606169*k)/1);return Q===W&&W===k?D=it=_:(D=V((.4360747*Q+.3850649*W+.1430804*k)/.96422),it=V((.0139322*Q+.0971045*W+.7141733*k)/.82521)),new Y(116*_-16,500*(D-_),200*(_-it),c.opacity)}function q(c,D){return new Y(c,0,0,D==null?1:D)}function Z(c,D,it,Q){return arguments.length===1?X(c):new Y(c,D,it,Q==null?1:Q)}function Y(c,D,it,Q){this.l=+c,this.a=+D,this.b=+it,this.opacity=+Q}function V(c){return c>.008856451679035631?Math.pow(c,.3333333333333333):c/J+.13793103448275862}function N(c){return c>$?c*c*c:J*(c-.13793103448275862)}function U(c){return 255*(c<=.0031308?12.92*c:1.055*Math.pow(c,.4166666666666667)-.055)}function T(c){return(c/=255)<=.04045?c/12.92:Math.pow((c+.055)/1.055,2.4)}function A(c){if(c instanceof H)return new H(c.h,c.c,c.l,c.opacity);if(c instanceof Y||(c=X(c)),c.a===0&&c.b===0)return new H(NaN,00?$>1?Object(L.a)(function(J){J.setTime(Math.floor(J/$)*$)},function(J,X){J.setTime(+J+X*$)},function(J,X){return(X-J)/$}):R:null},d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"a",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setHours(0,0,0,0)},function(J,X){J.setDate(J.getDate()+X)},function(J,X){return(X-J-(X.getTimezoneOffset()-J.getTimezoneOffset())*R.c)/R.a},function(J){return J.getDate()-1});d.b=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setUTCHours(0,0,0,0)},function(J,X){J.setUTCDate(J.getUTCDate()+X)},function(J,X){return(X-J)/R.a},function(J){return J.getUTCDate()-1});d.a=st;var $=st.range},,function(Pt,d,g){"use strict";g.d(d,"b",function(){return R}),g.d(d,"c",function(){return st}),g.d(d,"a",function(){return J});var L,R,st,$=g(68);function J(X){return L=Object($.a)(X),R=L.format,st=L.formatPrefix,L}J({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(Pt,d){var g=/^(?:0|[1-9]\d*)$/;function L(it,Q,W){switch(W.length){case 0:return it.call(Q);case 1:return it.call(Q,W[0]);case 2:return it.call(Q,W[0],W[1]);case 3:return it.call(Q,W[0],W[1],W[2])}return it.apply(Q,W)}var R,st,$=Object.prototype,J=$.hasOwnProperty,X=$.toString,q=$.propertyIsEnumerable,Z=(R=Object.keys,st=Object,function(it){return R(st(it))}),Y=Math.max,V=!q.call({valueOf:1},"valueOf");function N(it,Q){var W=O(it)||function(h){return function(l){return function(u){return!!u&&typeof u=="object"}(l)&&H(l)}(h)&&J.call(h,"callee")&&(!q.call(h,"callee")||X.call(h)=="[object Arguments]")}(it)?function(h,l){for(var u=-1,v=Array(h);++u-1&&it%1==0&&it-1&&Q%1==0&&Q<=9007199254740991}(it.length)&&!function(Q){var W=z(Q)?X.call(Q):"";return W=="[object Function]"||W=="[object GeneratorFunction]"}(it)}function z(it){var Q=typeof it;return!!it&&(Q=="object"||Q=="function")}var c,D=(c=function(it,Q){if(V||A(Q)||H(Q))(function(k,_,C,h){C||(C={});for(var l=-1,u=_.length;++l1?Q[k-1]:void 0,C=k>2?Q[2]:void 0;for(_=c.length>3&&typeof _=="function"?(k--,_):void 0,C&&function(l,u,v){if(!z(v))return!1;var I=typeof u;return!!(I=="number"?H(v)&&T(u,v.length):I=="string"&&u in v)&&M(v[u],l)}(Q[0],Q[1],C)&&(_=k<3?void 0:_,k=1),it=Object(it);++WY&&(Z=J.slice(Y,Z),N[V]?N[V]+=Z:N[++V]=Z),(X=X[0])===(q=q[0])?N[V]?N[V]+=q:N[++V]=q:(N[++V]=null,U.push({i:V,x:Object(L.a)(X,q)})),Y=st.lastIndex;return Y=12)]},q:function(Pe){return 1+~~(Pe.getMonth()/3)},Q:Rt,s:zt,S:j,u:lt,U:rt,V:gt,w:vt,W:Ot,x:null,X:null,y:At,Y:$t,Z:Xt,"%":Et},tn={a:function(Pe){return bn[Pe.getUTCDay()]},A:function(Pe){return pn[Pe.getUTCDay()]},b:function(Pe){return vn[Pe.getUTCMonth()]},B:function(Pe){return Ln[Pe.getUTCMonth()]},c:null,d:Ct,e:Ct,f:le,H:wt,I:Dt,j:jt,L:re,m:Gt,M:he,p:function(Pe){return Ze[+(Pe.getUTCHours()>=12)]},q:function(Pe){return 1+~~(Pe.getUTCMonth()/3)},Q:Rt,s:zt,S:ve,u:Ce,U:Te,V:Ke,w:rn,W:un,x:null,X:null,y:Qt,Y:Kt,Z:Jt,"%":Et},Mn={a:function(Pe,wn,an){var gn=Fe.exec(wn.slice(an));return gn?(Pe.w=qe[gn[0].toLowerCase()],an+gn[0].length):-1},A:function(Pe,wn,an){var gn=dr.exec(wn.slice(an));return gn?(Pe.w=ye[gn[0].toLowerCase()],an+gn[0].length):-1},b:function(Pe,wn,an){var gn=Ue.exec(wn.slice(an));return gn?(Pe.m=Re[gn[0].toLowerCase()],an+gn[0].length):-1},B:function(Pe,wn,an){var gn=be.exec(wn.slice(an));return gn?(Pe.m=je[gn[0].toLowerCase()],an+gn[0].length):-1},c:function(Pe,wn,an){return _n(Pe,ce,wn,an)},d:u,e:u,f:ct,H:I,I,j:v,L:K,m:l,M:S,p:function(Pe,wn,an){var gn=Tn.exec(wn.slice(an));return gn?(Pe.p=Qn[gn[0].toLowerCase()],an+gn[0].length):-1},q:h,Q:dt,s:pt,S:b,u:D,U:it,V:Q,w:c,W,x:function(Pe,wn,an){return _n(Pe,Se,wn,an)},X:function(Pe,wn,an){return _n(Pe,xe,wn,an)},y:_,Y:k,Z:C,"%":et};function ke(Pe,wn){return function(an){var gn,Sn,xn,hr=[],nr=-1,pr=0,vr=Pe.length;for(an instanceof Date||(an=new Date(+an));++nr53)return null;"w"in xn||(xn.w=1),"Z"in xn?(Sn=(gn=Z(Y(xn.y,0,1))).getUTCDay(),gn=Sn>4||Sn===0?L.c.ceil(gn):Object(L.c)(gn),gn=R.a.offset(gn,7*(xn.V-1)),xn.y=gn.getUTCFullYear(),xn.m=gn.getUTCMonth(),xn.d=gn.getUTCDate()+(xn.w+6)%7):(Sn=(gn=q(Y(xn.y,0,1))).getDay(),gn=Sn>4||Sn===0?st.c.ceil(gn):Object(st.c)(gn),gn=$.b.offset(gn,7*(xn.V-1)),xn.y=gn.getFullYear(),xn.m=gn.getMonth(),xn.d=gn.getDate()+(xn.w+6)%7)}else("W"in xn||"U"in xn)&&("w"in xn||(xn.w="u"in xn?xn.u%7:"W"in xn?1:0),Sn="Z"in xn?Z(Y(xn.y,0,1)).getUTCDay():q(Y(xn.y,0,1)).getDay(),xn.m=0,xn.d="W"in xn?(xn.w+6)%7+7*xn.W-(Sn+5)%7:xn.w+7*xn.U-(Sn+6)%7);return"Z"in xn?(xn.H+=xn.Z/100|0,xn.M+=xn.Z%100,Z(xn)):q(xn)}}function _n(Pe,wn,an,gn){for(var Sn,xn,hr=0,nr=wn.length,pr=an.length;hr=pr)return-1;if((Sn=wn.charCodeAt(hr++))===37){if(Sn=wn.charAt(hr++),!(xn=Mn[Sn in N?wn.charAt(hr++):Sn])||(gn=xn(Pe,an,gn))<0)return-1}else if(Sn!=an.charCodeAt(gn++))return-1}return gn}return Ie.x=ke(Se,Ie),Ie.X=ke(xe,Ie),Ie.c=ke(ce,Ie),tn.x=ke(Se,tn),tn.X=ke(xe,tn),tn.c=ke(ce,tn),{format:function(Pe){var wn=ke(Pe+="",Ie);return wn.toString=function(){return Pe},wn},parse:function(Pe){var wn=on(Pe+="",!1);return wn.toString=function(){return Pe},wn},utcFormat:function(Pe){var wn=ke(Pe+="",tn);return wn.toString=function(){return Pe},wn},utcParse:function(Pe){var wn=on(Pe+="",!0);return wn.toString=function(){return Pe},wn}}}var N={"-":"",_:" ",0:"0"},U=/^\s*\d+/,T=/^%/,A=/[\\^$*+?|[\]().{}]/g;function M(Ft,ce,Se){var xe=Ft<0?"-":"",Ze=(xe?-Ft:Ft)+"",pn=Ze.length;return xe+(pn68?1900:2e3),Se+xe[0].length):-1}function C(Ft,ce,Se){var xe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(ce.slice(Se,Se+6));return xe?(Ft.Z=xe[1]?0:-(xe[2]+(xe[3]||"00")),Se+xe[0].length):-1}function h(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+1));return xe?(Ft.q=3*xe[0]-3,Se+xe[0].length):-1}function l(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.m=xe[0]-1,Se+xe[0].length):-1}function u(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.d=+xe[0],Se+xe[0].length):-1}function v(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+3));return xe?(Ft.m=0,Ft.d=+xe[0],Se+xe[0].length):-1}function I(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.H=+xe[0],Se+xe[0].length):-1}function S(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.M=+xe[0],Se+xe[0].length):-1}function b(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+2));return xe?(Ft.S=+xe[0],Se+xe[0].length):-1}function K(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+3));return xe?(Ft.L=+xe[0],Se+xe[0].length):-1}function ct(Ft,ce,Se){var xe=U.exec(ce.slice(Se,Se+6));return xe?(Ft.L=Math.floor(xe[0]/1e3),Se+xe[0].length):-1}function et(Ft,ce,Se){var xe=T.exec(ce.slice(Se,Se+1));return xe?Se+xe[0].length:-1}function dt(Ft,ce,Se){var xe=U.exec(ce.slice(Se));return xe?(Ft.Q=+xe[0],Se+xe[0].length):-1}function pt(Ft,ce,Se){var xe=U.exec(ce.slice(Se));return xe?(Ft.s=+xe[0],Se+xe[0].length):-1}function bt(Ft,ce){return M(Ft.getDate(),ce,2)}function Mt(Ft,ce){return M(Ft.getHours(),ce,2)}function w(Ft,ce){return M(Ft.getHours()%12||12,ce,2)}function B(Ft,ce){return M(1+$.b.count(Object(J.a)(Ft),Ft),ce,3)}function tt(Ft,ce){return M(Ft.getMilliseconds(),ce,3)}function nt(Ft,ce){return tt(Ft,ce)+"000"}function x(Ft,ce){return M(Ft.getMonth()+1,ce,2)}function y(Ft,ce){return M(Ft.getMinutes(),ce,2)}function j(Ft,ce){return M(Ft.getSeconds(),ce,2)}function lt(Ft){var ce=Ft.getDay();return ce===0?7:ce}function rt(Ft,ce){return M(st.g.count(Object(J.a)(Ft)-1,Ft),ce,2)}function gt(Ft,ce){var Se=Ft.getDay();return Ft=Se>=4||Se===0?Object(st.i)(Ft):st.i.ceil(Ft),M(st.i.count(Object(J.a)(Ft),Ft)+(Object(J.a)(Ft).getDay()===4),ce,2)}function vt(Ft){return Ft.getDay()}function Ot(Ft,ce){return M(st.c.count(Object(J.a)(Ft)-1,Ft),ce,2)}function At(Ft,ce){return M(Ft.getFullYear()%100,ce,2)}function $t(Ft,ce){return M(Ft.getFullYear()%1e4,ce,4)}function Xt(Ft){var ce=Ft.getTimezoneOffset();return(ce>0?"-":(ce*=-1,"+"))+M(ce/60|0,"0",2)+M(ce%60,"0",2)}function Ct(Ft,ce){return M(Ft.getUTCDate(),ce,2)}function wt(Ft,ce){return M(Ft.getUTCHours(),ce,2)}function Dt(Ft,ce){return M(Ft.getUTCHours()%12||12,ce,2)}function jt(Ft,ce){return M(1+R.a.count(Object(X.a)(Ft),Ft),ce,3)}function re(Ft,ce){return M(Ft.getUTCMilliseconds(),ce,3)}function le(Ft,ce){return re(Ft,ce)+"000"}function Gt(Ft,ce){return M(Ft.getUTCMonth()+1,ce,2)}function he(Ft,ce){return M(Ft.getUTCMinutes(),ce,2)}function ve(Ft,ce){return M(Ft.getUTCSeconds(),ce,2)}function Ce(Ft){var ce=Ft.getUTCDay();return ce===0?7:ce}function Te(Ft,ce){return M(L.g.count(Object(X.a)(Ft)-1,Ft),ce,2)}function Ke(Ft,ce){var Se=Ft.getUTCDay();return Ft=Se>=4||Se===0?Object(L.i)(Ft):L.i.ceil(Ft),M(L.i.count(Object(X.a)(Ft),Ft)+(Object(X.a)(Ft).getUTCDay()===4),ce,2)}function rn(Ft){return Ft.getUTCDay()}function un(Ft,ce){return M(L.c.count(Object(X.a)(Ft)-1,Ft),ce,2)}function Qt(Ft,ce){return M(Ft.getUTCFullYear()%100,ce,2)}function Kt(Ft,ce){return M(Ft.getUTCFullYear()%1e4,ce,4)}function Jt(){return"+0000"}function Et(){return"%"}function Rt(Ft){return+Ft}function zt(Ft){return Math.floor(+Ft/1e3)}},function(Pt,d,g){"use strict";var L=g(23);d.a=function(R){return typeof R=="string"?new L.a([[document.querySelector(R)]],[document.documentElement]):new L.a([[R]],L.c)}},function(Pt,d,g){"use strict";function L(){return[]}d.a=function(R){return R==null?L:function(){return this.querySelectorAll(R)}}},function(Pt,d,g){"use strict";d.a=function(L){return function(){return this.matches(L)}}},function(Pt,d,g){"use strict";g.d(d,"b",function(){return J});var L=g(45);function R(X){return function(){this.style.removeProperty(X)}}function st(X,q,Z){return function(){this.style.setProperty(X,q,Z)}}function $(X,q,Z){return function(){var Y=q.apply(this,arguments);Y==null?this.style.removeProperty(X):this.style.setProperty(X,Y,Z)}}function J(X,q){return X.style.getPropertyValue(q)||Object(L.a)(X).getComputedStyle(X,null).getPropertyValue(q)}d.a=function(X,q,Z){return arguments.length>1?this.each((q==null?R:typeof q=="function"?$:st)(X,q,Z==null?"":Z)):J(this.node(),X)}},function(Pt,d,g){"use strict";var L,R=g(22),st=g(40),$=g(38),J=function(V,N){var U=Object($.a)(V,N);if(!U)return V+"";var T=U[0],A=U[1];return A<0?"0."+new Array(-A).join("0")+T:T.length>A+1?T.slice(0,A+1)+"."+T.slice(A+1):T+new Array(A-T.length+2).join("0")},X={"%":function(V,N){return(100*V).toFixed(N)},b:function(V){return Math.round(V).toString(2)},c:function(V){return V+""},d:function(V){return Math.round(V).toString(10)},e:function(V,N){return V.toExponential(N)},f:function(V,N){return V.toFixed(N)},g:function(V,N){return V.toPrecision(N)},o:function(V){return Math.round(V).toString(8)},p:function(V,N){return J(100*V,N)},r:J,s:function(V,N){var U=Object($.a)(V,N);if(!U)return V+"";var T=U[0],A=U[1],M=A-(L=3*Math.max(-8,Math.min(8,Math.floor(A/3))))+1,O=T.length;return M===O?T:M>O?T+new Array(M-O+1).join("0"):M>0?T.slice(0,M)+"."+T.slice(M):"0."+new Array(1-M).join("0")+Object($.a)(V,Math.max(0,N+M-1))[0]},X:function(V){return Math.round(V).toString(16).toUpperCase()},x:function(V){return Math.round(V).toString(16)}},q=function(V){return V},Z=Array.prototype.map,Y=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];d.a=function(V){var N,U,T=V.grouping===void 0||V.thousands===void 0?q:(N=Z.call(V.grouping,Number),U=V.thousands+"",function(Q,W){for(var k=Q.length,_=[],C=0,h=N[0],l=0;k>0&&h>0&&(l+h+1>W&&(h=Math.max(1,W-l)),_.push(Q.substring(k-=h,k+h)),!((l+=h+1)>W));)h=N[C=(C+1)%N.length];return _.reverse().join(U)}),A=V.currency===void 0?"":V.currency[0]+"",M=V.currency===void 0?"":V.currency[1]+"",O=V.decimal===void 0?".":V.decimal+"",H=V.numerals===void 0?q:function(Q){return function(W){return W.replace(/[0-9]/g,function(k){return Q[+k]})}}(Z.call(V.numerals,String)),z=V.percent===void 0?"%":V.percent+"",c=V.minus===void 0?"-":V.minus+"",D=V.nan===void 0?"NaN":V.nan+"";function it(Q){var W=(Q=Object(st.b)(Q)).fill,k=Q.align,_=Q.sign,C=Q.symbol,h=Q.zero,l=Q.width,u=Q.comma,v=Q.precision,I=Q.trim,S=Q.type;S==="n"?(u=!0,S="g"):X[S]||(v===void 0&&(v=12),I=!0,S="g"),(h||W==="0"&&k==="=")&&(h=!0,W="0",k="=");var b=C==="$"?A:C==="#"&&/[boxX]/.test(S)?"0"+S.toLowerCase():"",K=C==="$"?M:/[%p]/.test(S)?z:"",ct=X[S],et=/[defgprs%]/.test(S);function dt(pt){var bt,Mt,w,B=b,tt=K;if(S==="c")tt=ct(pt)+tt,pt="";else{var nt=(pt=+pt)<0;if(pt=isNaN(pt)?D:ct(Math.abs(pt),v),I&&(pt=function(j){t:for(var lt,rt=j.length,gt=1,vt=-1;gt0&&(vt=0)}return vt>0?j.slice(0,vt)+j.slice(lt+1):j}(pt)),nt&&+pt==0&&(nt=!1),B=(nt?_==="("?_:c:_==="-"||_==="("?"":_)+B,tt=(S==="s"?Y[8+L/3]:"")+tt+(nt&&_==="("?")":""),et){for(bt=-1,Mt=pt.length;++bt(w=pt.charCodeAt(bt))||w>57){tt=(w===46?O+pt.slice(bt+1):pt.slice(bt))+tt,pt=pt.slice(0,bt);break}}}u&&!h&&(pt=T(pt,1/0));var x=B.length+pt.length+tt.length,y=x>1)+B+pt+tt+y.slice(x);break;default:pt=y+B+pt+tt}return H(pt)}return v=v===void 0?6:/[gprs]/.test(S)?Math.max(1,Math.min(21,v)):Math.max(0,Math.min(20,v)),dt.toString=function(){return Q+""},dt}return{format:it,formatPrefix:function(Q,W){var k=it(((Q=Object(st.b)(Q)).type="f",Q)),_=3*Math.max(-8,Math.min(8,Math.floor(Object(R.a)(W)/3))),C=Math.pow(10,-_),h=Y[8+_/3];return function(l){return k(C*l)+h}}}}},function(Pt,d,g){"use strict";g.d(d,"b",function(){return st});var L=g(1),R=Object(L.a)(function($){$.setDate(1),$.setHours(0,0,0,0)},function($,J){$.setMonth($.getMonth()+J)},function($,J){return J.getMonth()-$.getMonth()+12*(J.getFullYear()-$.getFullYear())},function($){return $.getMonth()});d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setTime(J-J.getMilliseconds()-J.getSeconds()*R.d-J.getMinutes()*R.c)},function(J,X){J.setTime(+J+X*R.b)},function(J,X){return(X-J)/R.b},function(J){return J.getHours()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setTime(J-J.getMilliseconds()-J.getSeconds()*R.d)},function(J,X){J.setTime(+J+X*R.c)},function(J,X){return(X-J)/R.c},function(J){return J.getMinutes()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return st});var L=g(1),R=Object(L.a)(function($){$.setUTCDate(1),$.setUTCHours(0,0,0,0)},function($,J){$.setUTCMonth($.getUTCMonth()+J)},function($,J){return J.getUTCMonth()-$.getUTCMonth()+12*(J.getUTCFullYear()-$.getUTCFullYear())},function($){return $.getUTCMonth()});d.a=R;var st=R.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setUTCMinutes(0,0,0)},function(J,X){J.setTime(+J+X*R.b)},function(J,X){return(X-J)/R.b},function(J){return J.getUTCHours()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";g.d(d,"b",function(){return $});var L=g(1),R=g(3),st=Object(L.a)(function(J){J.setUTCSeconds(0,0)},function(J,X){J.setTime(+J+X*R.c)},function(J,X){return(X-J)/R.c},function(J){return J.getUTCMinutes()});d.a=st;var $=st.range},function(Pt,d,g){"use strict";var L,R=function(J,X){if(Array.isArray(J))return J;if(Symbol.iterator in Object(J))return function(q,Z){var Y=[],V=!0,N=!1,U=void 0;try{for(var T,A=q[Symbol.iterator]();!(V=(T=A.next()).done)&&(Y.push(T.value),!Z||Y.length!==Z);V=!0);}catch(M){N=!0,U=M}finally{try{!V&&A.return&&A.return()}finally{if(N)throw U}}return Y}(J,X);throw new TypeError("Invalid attempt to destructure non-iterable instance")},st=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(J){return typeof J}:function(J){return J&&typeof Symbol=="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J};function $(J,X,q){return X in J?Object.defineProperty(J,X,{value:q,enumerable:!0,configurable:!0,writable:!0}):J[X]=q,J}(L=function(J){var X,q=g(39),Z=g(28),Y=g(35),V=Y.axisTimeCombinations,N=Y.timeBenchmarks,U=g(86),T=U.convertMillisecondsToDays,A=U.getLocaleDateFormatter,M={minute:Z.timeFormat("%M m"),hour:Z.timeFormat("%H %p"),day:Z.timeFormat("%e"),daymonth:Z.timeFormat("%d %b"),month:Z.timeFormat("%b"),year:Z.timeFormat("%Y")},O=($(X={},V.MINUTE_HOUR,q.timeHour.every(1)),$(X,V.HOUR_DAY,q.timeDay.every(1)),$(X,V.DAY_MONTH,q.timeMonth.every(1)),$(X,V.MONTH_YEAR,q.timeYear.every(1)),X),H=function(c){var D=N.ONE_YEAR;return c2&&arguments[2]!==void 0?arguments[2]:null,Q=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,W=new Date(c[0].date),k=new Date(c[c.length-1].date),_=k-W;Q&&(typeof Intl=="undefined"||(typeof Intl=="undefined"?"undefined":st(Intl))==="object"&&!Intl.DateTimeFormat)&&(Q=null),it||(it=H(_));var C=it.split("-"),h=R(C,2),l=h[0],u=h[1],v=O[it],I=z(D,T(_));return{minor:{format:Q?A(Q,l):M[l],tick:I},major:{format:Q?A(Q,u):M[u],tick:v}}}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L;(L=function(R){g(2);var st="highlight-filter";return{bounceCircleHighlight:function($,J,X){var q=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2*X,Z=100,Y=50;$.transition().ease(J).duration(Z).attr("r",q).transition().ease(J).delay(Y).duration(Z).attr("r",X)},createFilterContainer:function($){return $.append("defs").append("filter").attr("id",st)},createGausianBlur:function($){return $.append("feGaussianBlur").attr("stdDeviation",1).attr("result","coloredBlur"),st},createWhiteGlow:function($){$.attr("x","-5000%").attr("y","-5000%").attr("width","10000%").attr("height","10000%"),$.append("feFlood").attr("result","flood").attr("flood-color","#ffffff").attr("flood-opacity","1"),$.append("feComposite").attr("result","mask").attr("in2","SourceGraphic").attr("operator","in").attr("in","flood"),$.append("feMorphology").attr("result","dilated").attr("operator","dilate").attr("radius","2").attr("in","mask"),$.append("feGaussianBlur").attr("result","blurred").attr("stdDeviation","5").attr("in","dilated");var J=$.append("feMerge");return J.append("feMergeNode").attr("in","blurred"),J.append("feMergeNode").attr("in","SourceGraphic"),st},createGlow:function($){$.attr("x","-30%").attr("y","-30%").attr("width","160%").attr("height","160%"),$.append("feGaussianBlur").attr("stdDeviation","0.9 0.9").attr("result","glow");var J=$.append("feMerge");return J.append("feMergeNode").attr("in","glow"),J.append("feMergeNode").attr("in","glow"),J.append("feMergeNode").attr("in","glow"),st},createGlowWithMatrix:function($){$.attr("x","-500%").attr("y","-500%").attr("width","1800%").attr("height","1800%"),$.append("feColorMatrix").attr("type","matrix").attr("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"),$.append("feGaussianBlur").attr("stdDeviation","1").attr("result","coloredBlur").attr("in","SourceGraphic");var J=$.append("feMerge");return J.append("feMergeNode").attr("in","coloredBlur"),J.append("feMergeNode").attr("in","SourceGraphic"),st}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R,st,$,J=g(14),X=180/Math.PI,q={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},Z=function(U,T,A,M,O,H){var z,c,D;return(z=Math.sqrt(U*U+T*T))&&(U/=z,T/=z),(D=U*A+T*M)&&(A-=U*D,M-=T*D),(c=Math.sqrt(A*A+M*M))&&(A/=c,M/=c,D/=c),U*M180?Q+=360:Q-it>180&&(it+=360),k.push({i:W.push(O(W)+"rotate(",null,M)-2,x:Object(J.a)(it,Q)})):Q&&W.push(O(W)+"rotate("+Q+M)}(H.rotate,z.rotate,c,D),function(it,Q,W,k){it!==Q?k.push({i:W.push(O(W)+"skewX(",null,M)-2,x:Object(J.a)(it,Q)}):Q&&W.push(O(W)+"skewX("+Q+M)}(H.skewX,z.skewX,c,D),function(it,Q,W,k,_,C){if(it!==W||Q!==k){var h=_.push(O(_)+"scale(",null,",",null,")");C.push({i:h-4,x:Object(J.a)(it,W)},{i:h-2,x:Object(J.a)(Q,k)})}else W===1&&k===1||_.push(O(_)+"scale("+W+","+k+")")}(H.scaleX,H.scaleY,z.scaleX,z.scaleY,c,D),H=z=null,function(it){for(var Q,W=-1,k=D.length;++W=0&&(V=Y.slice(N+1),Y=Y.slice(0,N)),Y&&!Z.hasOwnProperty(Y))throw new Error("unknown type: "+Y);return{type:Y,name:V}})}function J(q,Z){for(var Y,V=0,N=q.length;V0)for(var Y,V,N=new Array(Y),U=0;U1&&arguments[1]!==void 0?arguments[1]:"day",J=localeTimeMap[$],X=new Intl.DateTimeFormat(st,J);return function(q){return X.format(q)}}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";Object.defineProperty(d,"__esModule",{value:!0}),d.colors=d.bullet=d.brush=d.step=d.heatmap=d.stackedBar=d.groupedRow=d.groupedBar=d.scatterPlot=d.stackedArea=d.sparkline=d.row=d.miniTooltip=d.tooltip=d.loadingStates=d.line=d.legend=d.donut=d.bar=void 0;var L=D(g(89)),R=D(g(95)),st=D(g(96)),$=D(g(97)),J=D(g(18)),X=D(g(98)),q=D(g(100)),Z=D(g(101)),Y=D(g(102)),V=D(g(103)),N=D(g(104)),U=D(g(105)),T=D(g(106)),A=D(g(107)),M=D(g(108)),O=D(g(109)),H=D(g(110)),z=D(g(111)),c=D(g(10));function D(it){return it&&it.__esModule?it:{default:it}}d.bar=L.default,d.donut=R.default,d.legend=st.default,d.line=$.default,d.loadingStates=J.default,d.tooltip=q.default,d.miniTooltip=Z.default,d.row=X.default,d.sparkline=Y.default,d.stackedArea=V.default,d.scatterPlot=N.default,d.groupedBar=U.default,d.groupedRow=T.default,d.stackedBar=A.default,d.heatmap=M.default,d.step=O.default,d.brush=H.default,d.bullet=z.default,d.colors=c.default},,function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$>18&63)+Y.charAt(O>>12&63)+Y.charAt(O>>6&63)+Y.charAt(63&O);return H==2?(T=U.charCodeAt(c)<<8,A=U.charCodeAt(++c),z+=Y.charAt((O=T+A)>>10)+Y.charAt(O>>4&63)+Y.charAt(O<<2&63)+"="):H==1&&(O=U.charCodeAt(c),z+=Y.charAt(O>>2)+Y.charAt(O<<4&63)+"=="),z},decode:function(U){var T=(U=String(U).replace(V,"")).length;T%4==0&&(T=(U=U.replace(/==?$/,"")).length),(T%4==1||/[^+a-zA-Z0-9/]/.test(U))&&Z("Invalid character: the string to be decoded is not correctly encoded.");for(var A,M,O=0,H="",z=-1;++z>(-2*O&6)));return H},version:"0.1.0"};(st=function(){return N}.call(d,g,d,L))===void 0||(L.exports=st)})()}).call(this,g(92)(Pt),g(93))},function(Pt,d){Pt.exports=function(g){return g.webpackPolyfill||(g.deprecate=function(){},g.paths=[],g.children||(g.children=[]),Object.defineProperty(g,"loaded",{enumerable:!0,get:function(){return g.l}}),Object.defineProperty(g,"id",{enumerable:!0,get:function(){return g.i}}),g.webpackPolyfill=1),g}},function(Pt,d){var g;g=function(){return this}();try{g=g||new Function("return this")()}catch(L){typeof window=="object"&&(g=window)}Pt.exports=g},function(Pt,d,g){"use strict";var L,R=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(st){return typeof st}:function(st){return st&&typeof Symbol=="function"&&st.constructor===Symbol&&st!==Symbol.prototype?"symbol":typeof st};(L=function(st){var $=g(9).formatDefaultLocale,J=["decimal","thousands","grouping","currency"];return{setDefaultLocale:function(X){if(function(q){return(q===void 0?"undefined":R(q))=="object"&&J.every(function(Z){return q.hasOwnProperty(Z)})}(X))return $(X);throw new Error("Please pass in a valid locale object definition")}}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$2&&arguments[2]!==void 0?arguments[2]:0;Y.select(Gt).transition().delay(ve).attrTween("d",function(Ce){var Te=X.interpolate(Ce.outerRadius,he);return function(Ke){return Ce.outerRadius=Te(Ke),u(Ce)}})}function re(Gt){var he=void 0;return Gt.innerRadius=0,he=X.interpolate({startAngle:0,endAngle:0},Gt),function(ve){return u(he(ve))}}function le(Gt,he){var ve=_/5;N.wrapText.call(null,0,ve,he,Gt.node())}return Ot.centeredTextFunction=function(Gt){return arguments.length?(x=Gt,this):x},Ot.colorSchema=function(Gt){return arguments.length?(nt=Gt,this):nt},Ot.emptyDataConfig=function(Gt){return arguments.length?(Mt=Gt,this):Mt},Ot.exportChart=function(Gt,he){V.call(Ot,I,Gt,he)},Ot.externalRadius=function(Gt){return arguments.length?(_=Gt,this):_},Ot.hasHoverAnimation=function(Gt){return arguments.length?(dt=Gt,this):dt},Ot.hasFixedHighlightedSlice=function(Gt){return arguments.length?(et=Gt,this):et},Ot.hasLastHoverSliceHighlighted=function(Gt){return arguments.length?(pt=Gt,this):pt},Ot.height=function(Gt){return arguments.length?(z=Gt,this):z},Ot.highlightSliceById=function(Gt){return arguments.length?(K=Gt,this):K},Ot.internalRadius=function(Gt){return arguments.length?(C=Gt,this):C},Ot.isAnimated=function(Gt){return arguments.length?(S=Gt,this):S},Ot.loadingState=function(Gt){return arguments.length?(c=Gt,this):c},Ot.margin=function(Gt){return arguments.length?(O=R({},O,Gt),this):O},Ot.numberFormat=function(Gt){return arguments.length?(B=Gt,this):B},Ot.on=function(){var Gt=vt.on.apply(vt,arguments);return Gt===vt?Ot:Gt},Ot.orderingFunction=function(Gt){return arguments.length?(lt=Gt,this):lt},Ot.percentageFormat=function(Gt){return arguments.length?(w=Gt,this):w},Ot.radiusHoverOffset=function(Gt){return arguments.length?(it=Gt,this):it},Ot.width=function(Gt){return arguments.length?(H=Gt,this):H},Ot}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$0&&v.select("g.legend-container-group").attr("transform","translate("+nt+",0)")):function(){v.select(".legend-group").selectAll("g").remove(),(C=v.select(".legend-group").selectAll("g.legend-line").data(u)).enter().append("g").classed("legend-line",!0).append("g").classed("legend-entry",!0).attr("data-item",it).attr("transform",function(j,lt){return"translate("+(U+K())+","+(lt+1)*(l/(u.length+1))+")"}).merge(C).append("circle").classed("legend-circle",!0).attr("cx",U/2).attr("cy",-5).attr("r",U/2).style("fill",k).style("stroke-width",1),v.select(".legend-group").selectAll("g.legend-line").selectAll("g.legend-entry").append("text").classed("legend-entry-name",!0).text(Q).attr("x",K()).style("font-size","12px").style("letter-spacing","0.5px"),z?v.select(".legend-group").selectAll("g.legend-line").selectAll("g.legend-entry").append("text").classed("legend-entry-value",!0).text(W).attr("x",h-40).style("font-size","12px").style("letter-spacing","0.8px").style("text-anchor","end").style("startOffset","100%"):function(){var j=v.select("g.legend-container-group").node().getBoundingClientRect().width,lt=V-j,rt=lt/2-j/2;lt>0&&v.select("g.legend-container-group").attr("transform","translate("+rt+",0)")}(),v.select(".legend-group").selectAll("g.legend-line").exit().transition().style("opacity",0).remove()}(),H&&(S(),b(H))})}function S(){v.select(".legend-group").selectAll("g.legend-entry").classed("is-faded",!1)}function b(ct){var et=v.select('[data-item="'+ct+'"]');et.nodes().length&&(v.select(".legend-group").selectAll("g.legend-entry").classed("is-faded",!0),et.classed("is-faded",!1))}function K(){return T*U}return I.clearHighlight=function(){S()},I.colorSchema=function(ct){return arguments.length?(D=ct,this):D},I.height=function(ct){return arguments.length?(N=ct,this):N},I.highlight=function(ct){S(),b(ct)},I.highlightEntryById=function(ct){return arguments.length?(H=ct,this):H},I.isHorizontal=function(ct){return arguments.length?(O=ct,this):O},I.margin=function(ct){return arguments.length?(Y=R({},Y,ct),this):Y},I.marginRatio=function(ct){return arguments.length?(T=ct,this):T},I.markerSize=function(ct){return arguments.length?(U=ct,this):U},I.numberFormat=function(ct){return arguments.length?(A=ct,this):A},I.unit=function(ct){return arguments.length?(M=ct,this):M},I.width=function(ct){return arguments.length?(V=ct,this):V},I}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=function(J,X){if(Array.isArray(J))return J;if(Symbol.iterator in Object(J))return function(q,Z){var Y=[],V=!0,N=!1,U=void 0;try{for(var T,A=q[Symbol.iterator]();!(V=(T=A.next()).done)&&(Y.push(T.value),!Z||Y.length!==Z);V=!0);}catch(M){N=!0,U=M}finally{try{!V&&A.return&&A.return()}finally{if(N)throw U}}return Y}(J,X);throw new TypeError("Invalid attempt to destructure non-iterable instance")},st=Object.assign||function(J){for(var X=1;X=0||Object.prototype.hasOwnProperty.call(si,Bi)&&(Mr[Bi]=si[Bi]);return Mr}(lr,["dates"]),fi=Fn.map(function(si){return{date:new Date(si[Ke]),value:+si[rn]}});return jr.push(st({dates:fi},Dr)),jr},[]),dataByDate:vr,dataRange:rr}}(wn);ve=an.dataByTopic,Ce=an.dataByDate,Te=an.dataRange;var gn,Sn,xn,hr=jt?300:0;Mt=b-S.left-S.right-hr,w=K-S.top-S.bottom,function(){var nr=X.min(ve,function(lr){var Fn=lr.dates;return X.min(Fn,ye)}),pr=X.max(ve,function(lr){var Fn=lr.dates;return X.max(Fn,ye)}),vr=X.max(ve,function(lr){var Fn=lr.dates;return X.max(Fn,Fe)}),rr=X.min(ve,function(lr){var Fn=lr.dates;return X.min(Fn,Fe)}),Rr=rr<0?rr:0;B=U.scaleTime().domain([nr,pr]).rangeRound([0,Mt]),tt=U.scaleLinear().domain([Rr,Math.abs(vr)]).rangeRound([w,0]).nice();var jr=(nt=U.scaleOrdinal().range(rt).domain(ve.map(qe))).range();gt=nt.domain().reduce(function(lr,Fn,Dr){return lr[Fn]=jr[Dr],lr},{})}(),function(nr){pt||(pt=A.select(nr).append("svg").classed("britechart line-chart",!0),function(){var pr=pt.append("g").classed("container-group",!0).attr("transform","translate("+S.left+","+S.top+")");pr.append("g").classed("x-axis-group",!0).append("g").classed("axis x",!0),pr.selectAll(".x-axis-group").append("g").classed("month-axis",!0),pr.append("g").classed("y-axis-group",!0).append("g").classed("axis y",!0),pr.append("g").classed("grid-lines-group",!0),pr.append("g").classed("chart-group",!0),jt&&pr.append("g").classed("legend-group",!0),pr.append("g").classed("metadata-group",!0)}()),pt.attr("width",b).attr("height",K)}(this),function(){var nr=void 0,pr=void 0;if(At==="custom"&&typeof Xt=="string")nr={tick:$t,format:M.timeFormat(Xt)},pr=null;else{var vr=D(Ce,b,At,Ct);nr=vr.minor,pr=vr.major,y=q.axisBottom(B).ticks(pr.tick).tickSize(0,0).tickFormat(pr.format)}x=q.axisBottom(B).ticks(nr.tick).tickSize(10,0).tickPadding(5).tickFormat(nr.format),j=q.axisLeft(tt).ticks(zt).tickSize([0]).tickPadding(5).tickFormat(Re),function(rr,Rr){pt.select(".grid-lines-group").selectAll("line").remove(),(Ze==="horizontal"||Ze==="full")&&pt.select(".grid-lines-group").selectAll("line.horizontal-grid-line").data(tt.ticks(Rr)).enter().append("line").attr("class","horizontal-grid-line").attr("x1",-lt-30).attr("x2",Mt).attr("y1",function(jr){return tt(jr)}).attr("y2",function(jr){return tt(jr)}),Ze!=="vertical"&&Ze!=="full"||pt.select(".grid-lines-group").selectAll("line.vertical-grid-line").data(B.ticks(rr)).enter().append("line").attr("class","vertical-grid-line").attr("y1",0).attr("y2",w).attr("x1",function(jr){return B(jr)}).attr("x2",function(jr){return B(jr)}),pt.select(".grid-lines-group").selectAll("line.extended-x-line").data([0]).enter().append("line").attr("class","extended-x-line").attr("x1",-lt-30).attr("x2",Mt).attr("y1",K-S.bottom-S.top).attr("y2",K-S.bottom-S.top)}(nr.tick,zt)}(),function(){if(pt.select(".x-axis-group .axis.x").attr("transform","translate(0, "+w+")").call(x),At!=="custom"&&pt.select(".x-axis-group .month-axis").attr("transform","translate(0, "+(w+28)+")").call(y),Qt){Kt&&pt.selectAll(".x-axis-label").remove();var nr=Mt/2,pr=w+28+36;Kt=pt.select(".x-axis-group").append("text").attr("x",nr).attr("y",pr).attr("text-anchor","middle").attr("class","x-axis-label").text(Qt)}if(pt.select(".y-axis-group .axis.y").attr("transform","translate("+-lt+", 0)").call(j).call(Ue),Jt){Et&&pt.selectAll(".y-axis-label").remove();var vr=-Rt-lt,rr=-w/2;Et=pt.select(".y-axis-group").append("text").attr("x",rr).attr("y",vr).attr("text-anchor","middle").attr("transform","rotate(270)").attr("class","y-axis-label").text(Jt)}}(),function(){if(Te){var nr=T.area().curve(W[he]).x(function(pr){var vr=pr.date;return B(vr)}).y0(function(pr){var vr=pr.min;return tt(vr)}).y1(function(pr){var vr=pr.max;return tt(vr)});pt.select(".chart-group").append("g").attr("class","area").append("path").data([Te]).attr("class","area").attr("d",nr)}}(),gn=void 0,Sn=void 0,Sn=T.line().curve(W[he]).x(function(nr){var pr=nr.date;return B(pr)}).y(function(nr){var pr=nr.value;return tt(pr)}),gn=pt.select(".chart-group").selectAll(".line").data(ve,qe),bt=gn.enter().append("g").attr("class","topic").append("path").attr("class","line").merge(gn).attr("id",function(nr){return nr.topic}).attr("d",function(nr){var pr=nr.dates;return Sn(pr)}).style("stroke",function(nr){return pr=nr.topic,nt(pr);var pr}).style("opacity",function(nr){return nr.hasOwnProperty("show")?nr.show?1:0:1}).style("stroke-dasharray",function(nr){return!!nr.hasOwnProperty("show")&&!!nr.dashed&&[.5,4]}),gn.exit().remove(),function(){if(jt){var nr=Number.parseInt(Mt)+Number.parseInt(S.right);Ln=pt.selectAll(".legend-group").append("g").attr("transform","translate("+nr+", 0)").classed("tooltip-text",!0),Tn=Ln.append("text").classed("tooltip-title",!0).attr("x",-43).attr("dy",".35em").attr("y",16).style("fill","#282C35").style("font-size","12px"),Ln.append("line").classed("tooltip-divider",!0).attr("x1",-43).attr("x2",225).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),vn=Ln.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35");var pr=void 0;pr=ve[0].hasOwnProperty("show")?ve.filter(function(lr){return lr.show}):ve;for(var vr=0;vrdt&&(Ft||(Ft=pt.select(".metadata-group").append("rect").attr("class","overlay").attr("y1",0).attr("y2",K).attr("height",w).attr("width",Mt).attr("fill","rgba(0, 0, 0, 0)").style("display","none")),ce||(ce=pt.select(".metadata-group").append("g").attr("class","hover-marker vertical-marker-container").attr("transform","translate(9999, 0)"),Se=ce.selectAll("path").data([{x1:0,y1:0,x2:0,y2:0}]).enter().append("line").classed("vertical-marker",!0).attr("x1",0).attr("y1",w).attr("x2",0).attr("y2",0)),pt.on("mouseover",function(nr){(function(pr,vr){Ft.style("display","block"),Se.classed("bc-is-active",!0),be.call("customMouseOver",pr,vr,A.mouse(pr))})(this,nr)}).on("mouseout",function(nr){(function(pr,vr){Ft.style("display","none"),Se.classed("bc-is-active",!1),be.call("customMouseOut",pr,vr,A.mouse(pr))})(this,nr)}).on("mousemove",function(nr){var pr,vr,rr,Rr,jr,lr,Fn,Dr;pr=this,vr=A.mouse(pr),rr=R(vr,2),Rr=rr[0],jr=rr[1],lr=-S.left,Fn=Mn(Rr+lr),Dr=void 0,Fn&&(_n(Dr=B(new Date(Fn.date))),on(Fn),be.call("customMouseMove",pr,Fn,gt,Dr,jr))})),wt&&function(){pt.select(".chart-group").selectAll(".data-points-container").remove();var nr=bt.nodes().reduce(function(pr,vr){return pr[vr.id]=vr,pr},{});Ce.reduce(function(pr,vr){var rr=vr.topics.map(function(Rr){return{topic:Rr,node:nr[Rr.name]}});return pr=[].concat($(pr),$(rr))},[])}(),pt.on("touchmove",function(nr){(function(pr,vr){be.call("customTouchMove",pr,vr,A.touch(pr))})(this,nr)}),re&&(xn=Mn(Mt))&&(_n(B(new Date(xn.date))),on(xn))})}function Ue(Pe){Pe.selectAll(".tick text").attr("transform","translate(0, -7)")}function Re(Pe){var wn=void 0;return wn=I(Pe)?u:v,xe&&(wn=N.format(xe)),wn(Pe)}function Ie(Pe){return new Date(Pe).toLocaleDateString()}function tn(Pe){var wn,an,gn=void 0,Sn=void 0;wn=Pe.topicName,an=Pe.sum.toLocaleString(),Sn=vn.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",-15).attr("y",Qn).style("fill","#000000").style("font-size","12px").text(wn).call(ke,200,12,-25),gn=vn.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",-15).attr("y",Qn).style("fill","#000000").style("font-size","12px").text(an),dr=Sn.node().getBBox().height,dr+5,bn=gn.node().getBBox().width?gn.node().getBBox().width:bn,gn.attr("x",300-bn-75),vn.append("circle").classed("tooltip-circle",!0).attr("cx",-35).attr("cy",Qn+8).attr("r",5).style("fill",gt[Pe.topic]).style("stroke-width",1),Qn+=dr+7}function Mn(Pe){var wn,an,gn,Sn=B.invert(Pe),xn=(0,X.bisector(ye).left)(Ce,Sn,1),hr=Ce[xn],nr=Ce[xn-1],pr=void 0;return nr&&hr?(wn=Sn,an=hr,gn=nr,pr=new Date(wn).getTime()-new Date(an.date).getTime()>new Date(gn.date).getTime()-new Date(wn).getTime()?an:gn):pr=hr,pr}function ke(Pe,wn,an){var gn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;Pe.each(function(){var Sn,xn,hr,nr,pr,vr,rr;for(Sn=(Pe=A.select(this)).text().split(/\s+/).reverse(),hr=[],nr=0,pr=Pe.attr("y"),vr=parseFloat(Pe.attr("dy")),rr=Pe.text(null).append("tspan").attr("x",gn).attr("y",pr).attr("dy",vr+"em");xn=Sn.pop();)hr.push(xn),rr.text(hr.join(" ")),O.getTextWidth(hr.join(" "),an,"Karla, sans-serif")>wn&&(hr.pop(),rr.text(hr.join(" ")),nr<4&&(hr=[xn],rr=Pe.append("tspan").attr("x",gn).attr("y",pr).attr("dy",1.2*++nr+vr+"em").text(xn)))})}function on(Pe){ce.selectAll(".circle-container").remove();var wn=bt.nodes().reduce(function(Sn,xn){return Sn[xn.id]=xn,Sn},{}),an=ve.filter(function(Sn){return!Sn.show}).map(function(Sn){return Sn.topicName}),gn=Pe.topics.map(function(Sn){return{topic:Sn,node:wn[Sn.name]}}).filter(function(Sn){return!!Sn.topic}).sort(function(Sn,xn){return gt[Sn.topic.name]fi.x+jr;){var ti=(Fn+Dr)/2;if(fi=rr.getPointAtLength(ti),vr0?"+":"")+N.format(bt)(Fe)+"%"},Qt=function(ye){var Fe=ye.parentCount,qe=ye.value;return Fe?h(Fe)+pt:h(qe)+pt},Kt=function(ye){var Fe=ye.name;return l(Fe)+w*(3/8)};function Jt(ye){ye.each(function(Fe){var qe=z.left+z.right;_=D>600?D-qe-1.2*rt-100:D-qe,C=it-z.top-z.bottom;var be=function(je){var Ue=je.reduce(function(Ie,tn){return tn.name=String(tn[he]),tn.pctOfSet=+tn.pctOfSet,tn.pctChange=+tn[ve],tn.value=+tn[le],tn.width=+tn.width,[].concat(st(Ie),[tn])},[]),Re=Ue.slice();return{data:Ue,dataZeroed:Re}}(Fe);W=be.data,k=be.dataZeroed,function(){zt=function(Re,Ie){var tn=Re.length,Mn=J.sum(Re,Ie),ke=ce(Re),on=(C-(tn-1)*nt*C/tn-2*y*C/tn)/Mn;if(ke.length===0)return on;var _n=U.scalePow().exponent(1/ke.length).domain([0,100]).range([0,10*ke.length])(tn);return on-(Ce?2*_n:_n)}(W,Et),Ft=function(Re,Ie,tn){var Mn=Rt(Re,Ie,tn),ke=Re.length,on=function(_n,Pe){var wn=[];return _n.forEach(function(an){var gn=Pe.map(function(Sn,xn){return Sn.name===an||Sn.parent===an?xn:null}).filter(function(Sn){return Sn});wn.push(gn)}),wn}(ce(Re),Re);return function(_n,Pe){var wn=nt*C/ke,an=y*C/ke+J.sum(Re.slice(0,Pe),Ie)*tn+Pe*wn+Mn(Pe)/2;return on.forEach(function(gn){gn[0]>1&&Pe>=gn[0]&&(an+=Ce?20:x),Pe>gn[gn.length-1]&&(an+=Ce?20:x)}),an+z.top}}(W,Et,zt),Rt(W,Et,zt);var je=Math.min(K*X.max(W,rn));h=U.scaleLinear().domain([0,je]).rangeRound([0,_]);var Ue=W.map(Ft);l=U.scaleOrdinal().domain(W.map(Ke)).range(Ue),v=W.map(function(Re){return Re}).map(function(Re,Ie){return{name:Re.name,color:u[Ie%u.length]}}),I=function(Re){return v.filter(function(Ie){return Ie.name===Re})[0].color}}(),j=Z.axisBottom(h).ticks(b,ct).tickSizeInner([-C]),lt=Z.axisLeft(l),function(je){c=je,vt||((vt=T.select(je).append("svg").classed("britechart row-chart",!0)).append("rect").classed("export-wrapper",!0).attr("width",D).attr("height",it).attr("fill","white"),function(){var Ue=vt.append("g").classed("container-group",!0).attr("transform","translate("+(z.left+rt)+", "+z.top+")");Ue.append("g").classed("chart-group",!0),Ue.append("g").classed("title-group",!0),Ue.append("g").classed("x-axis-group axis",!0),Ue.append("g").attr("transform","translate("+-1*rt+", 0)").classed("y-axis-group axis",!0),Ue.append("g").classed("metadata-group",!0)}()),vt.attr("width",D).attr("height",it)}(this),function(){if(!(!W||!W[0])){var je=W[0].parentCount?h(W[0].parentCount):1;je=je>0?je:1;var Ue=W[0].parentCount;if(vt.select(".title-group").selectAll("g").remove(),vt.select(".title-group").selectAll("text").remove(),wt&&Ue){for(var Re=wt+" "+Ue.toLocaleString(),Ie=A.getTextWidth(Re,B,"sans-serif"),tn=Ce?100:40,Mn=z.left+je-tn,ke=!1;Ie>Mn;)wt=wt.slice(0,-1),ke=!0,Re=wt+"... "+Ue.toLocaleString(),Ie=A.getTextWidth(Re,B,"sans-serif");var on=vt.select(".title-group").append("text").text(null).attr("y",10);wt=ke?wt+"...":wt;var _n=on.append("tspan").text(wt).attr("font-size",B);on.append("tspan").text(Ue.toLocaleString()).classed("count",!0).attr("dx",5).attr("font-size",B).attr("font-weight",600);var Pe=_n.node().getBoundingClientRect().width+10,wn=je-Pe-5;on.attr("x",wn)}if(jt){var an=jt.toLocaleString(),gn=Dt+" "+an,Sn=A.getTextWidth(gn,B,"Karla, sans-serif"),xn=vt.select(".title-group").append("text").text(null).attr("x",_-Sn-15).attr("y",10);xn.append("tspan").text(Dt).attr("font-size",B),xn.append("tspan").text(an).classed("count",!0).attr("dx",5).attr("font-size",B).attr("font-weight",600);var hr=_-xn.node().getBoundingClientRect().width-10;xn.attr("x",hr)}re&&D>600&&vt.select(".title-group").append("text").text("Change in past "+re).attr("font-size",B).attr("x",_+5).attr("y",10)}}(),function(){var je=void 0;Ot?(Ln(je=vt.select(".chart-group").selectAll(".row").data(k)),W&&W[0]&&W[0].parentCount&&vt.select(".chart-group").append("line").classed("focus-separator",!0).attr("y1",-10).attr("x1",h(W[0].parentCount)).attr("y2",C+z.top+z.bottom).attr("x2",h(W[0].parentCount)).style("stroke","#e7e8e9").style("stroke-width",1),vt.select(".chart-group").append("line").classed("pct-separator",!0).attr("y1",-10).attr("x1",_).attr("y2",C).attr("x2",_).style("stroke","#000").style("stroke-width",1),function(Ue){Ue.attr("x",0).attr("y",function(Re,Ie){return l(Re.name)-zt*Re.width/2}).attr("height",function(Re){return zt*Re.width}).attr("fill",function(Re){return I(Re.name)}).attr("width",0).transition().duration(800).ease(At).attr("width",function(Re){var Ie=Re.value;return h(Ie)})}(je=vt.select(".chart-group").selectAll(".row rect.pct").data(W))):Ln(je=vt.select(".chart-group").selectAll("rect").data(W)),je.exit().transition().style("opacity",0).remove()}(),function(){var je=z.left;vt.select(".x-axis-group.axis").attr("transform","translate(0, "+C+")").call(j),vt.select(".y-axis-group.axis").call(lt),Ce||(vt.selectAll(".y-axis-group.axis .tick").call(pn),je=z.left-rt-30),vt.selectAll(".y-axis-group.axis .tick text").classed("child",function(Ue){return W.find(function(Re){return Re.name===Ue}).parent}).classed("print-mode",Ce).on("mouseover",vn).on("mouseout",Tn).call(Ze,je).selectAll("tspan").attr("font-size",xe),vt.selectAll(".y-axis-group.axis .tick text").classed("hidden",function(Ue){return W.find(function(Re){return Re.name===Ue}).splitterText}),Ce||vt.selectAll(".y-axis-group.axis .tick").classed("expandable",function(Ue){return function(Re,Ie){return Re.find(function(tn){return tn.name===Ie}).hasChildren}(W,Ue)}).call(bn)}(),function(){var je=vt.selectAll(".row-wrapper"),Ue=Number(je.size())-1,Re=vt.select(".row_"+Ue).select(".bg-hover");if(Re._groups[0]&&Re._groups[0][0]){var Ie=Number(Re.attr("y"))+Number(Re.attr("height"))+40;vt.select("line.pct-separator").attr("y2",Ie),vt.select(".export-wrapper").attr("height",Ie),vt.attr("height",Ie)}}()})}function Et(ye){return+ye.width}function Rt(ye,Fe,qe){return function(be){return Fe(ye[be])*qe}}var zt=void 0,Ft=void 0;function ce(ye){return[].concat(st(new Set(ye.filter(function(Fe){return Fe.parent&&Fe.isParent===!1}).map(function(Fe){return Fe.parent}))))}function Se(ye){return W.find(function(Fe){return(Fe.name===ye.name||Fe.name===ye)&&Fe.isParent})}function xe(ye){return Se(ye)?w+"px":B+"px"}function Ze(ye,Fe){if(Gt){var qe=gt>1?.8:1.2;A.wrapTextWithEllipses(ye,Fe,0,gt,qe)}}function pn(ye){ye.each(function(){var Fe=(ye=T.select(this)).node().getBBox().height/2,qe=ye.append("svg").attr("class",function(be){var je;return(je=be,W.find(function(Ue){return Ue.name===je})).splitterText?"hidden":"visibility visibility-"+Qn(be)}).attr("x",30-z.left).attr("y",-Fe).attr("width","300").attr("height","300").attr("viewBox","0 0 600 600").attr("fill","none").attr("opacity",0);qe.append("rect").attr("x",-10).attr("y",-10).attr("height","50").attr("width","50").attr("fill","#d6e8fa").on("mouseover",vn).on("mouseout",Tn),qe.append("path").attr("d","M 10,10 L 30,30 M 30,10 L 10,30").attr("stroke","#0072ce").attr("stroke-width","2")})}function bn(ye){ye.each(function(){T.select(this).selectAll("polygon").remove(),(ye=T.select(this)).append("polygon").attr("transform",function(Fe){return W.find(function(qe){return qe.parent===Fe})?"translate("+(rt-5)+", 2.5) rotate(180)":"translate("+(rt-15)+", -2.5)"}).attr("points",function(Fe){return"0,0 10,0 5,5"}).style("fill",function(Fe){return"#0072ce"}).style("fill-opacity",function(Fe){return W.find(function(qe){return qe.name===Fe&&qe.hasChildren})?1:0})})}function Ln(ye){var Fe=ye.enter().append("g").attr("class",function(Ie,tn){return"row_"+tn+" row-wrapper"}),qe=Fe.filter(function(Ie){return Ie.splitterText});Fe.append("rect").attr("class","bg").on("click",function(Ie){dr(this,Ie,_,C)}).attr("x",0).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("height",function(Ie){return zt*Ie.width}).attr("width",_).attr("fill",function(Ie){return Ie.splitterText?"#fff":$t}),Fe.append("rect").attr("class","bg-hover").attr("x",-z.left).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("width",D).attr("height",function(Ie){return zt*Ie.width}).on("mouseover",vn).on("mouseout",Tn).attr("fill-opacity",0).attr("fill",function(Ie){return Ie.splitterText?"#fff":"#d6e8fa"}),Fe.append("rect").attr("class","focus-bar").attr("x",0).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("height",function(Ie){return zt*Ie.width}).attr("width",function(Ie){var tn=Ie.parentCount;return tn?h(tn):0}).attr("fill","#e7e8e9").attr("fill-opacity",function(Ie){return Ie.parent?.5:1}),Fe.append("rect").attr("class","pct").on("mouseover",function(Ie,tn,Mn){(function(ke,on,_n,Pe,wn){if(!on.splitterText){Te.call("customMouseOver",ke,on,T.mouse(ke),[Pe,wn]),vn(on),an=T.select(ke),an.attr("fill",function(gn){var Sn=gn.name;return Sn?Y.color(I(Sn)).darker():""});var an}})(this,Ie,0,_,C)}).on("mousemove",function(Ie){(function(tn,Mn,ke,on){Mn.splitterText||Te.call("customMouseMove",tn,Mn,T.mouse(tn),[ke,on])})(this,Ie,_,C)}).on("mouseout",function(Ie,tn,Mn){(function(ke,on,_n,Pe,wn){on.splitterText||(Te.call("customMouseOut",ke,on,T.mouse(ke),[Pe,wn]),Tn(on),_n.forEach(function(an){T.select(an).attr("fill",function(gn){var Sn=gn.name;return Sn?I(Sn):""})}))})(this,Ie,Mn,_,C)}).on("click",function(Ie){dr(this,Ie,_,C)}).attr("x",0).attr("y",function(Ie,tn){return l(Ie.name)-zt*Ie.width/2}).attr("height",function(Ie){return zt*Ie.width}).attr("width",function(Ie){var tn=Ie.value;return h(tn)}).attr("fill",function(Ie){return I(Ie.name)}).attr("fill-opacity",function(Ie){return Ie.parent?.5:1});var be=T.select(".chart-group .bg");if(et&&be.node()){var je=be.node().getBBox().x||be.node().getBoundingClientRect().width;Fe.append("text").attr("class","percentage-label").classed("child",function(Ie){return!Se(Ie)}).attr("x",Qt).attr("y",Kt).text(function(Ie){return function(tn,Mn){var ke=tn.isNotFilter,on=tn.pctOfSet,_n=tn.parent,Pe=tn.value,wn=tn.isParent;if(!tn.splitterText){var an="";if(ke)return"";on&&!_n&&D>600&&(an=" | "+on+"%"),Number(Pe)===1&&(Mt=Mt.replace(/s$/,""));var gn=N.format(bt)(Pe)+" "+Mt+an,Sn=wn?w:B,xn=A.getTextWidth(gn,Sn,"sans-serif")+10,hr=h(Pe);return xn>hr&&xn>Mn-hr?N.format(bt)(Pe):gn}}(Ie,je)}).attr("font-size",xe).attr("fill",function(Ie,tn){var Mn=h(Ie.value),ke=Fe.selectAll("text")._groups[tn][0].getComputedTextLength()+10;return je>0&&je-Mn0&&je-Mn600){var Re=Fe.append("g").attr("transform","translate("+(_+10)+", 0)").attr("class","change-label-group");Re.append("text").attr("y",Kt).attr("font-size",xe).attr("font-weight","600").style("fill",function(Ie){return Ie.pctChange===0||isNaN(Ie.pctChange)?"#919395":Ie.pctChange>0?Ct:Xt}).text(un),Re.append("polygon").attr("transform",function(Ie){var tn=Kt(Ie);return Se(Ie)?Ie.pctChange<0?"translate(65, "+(tn+5)+") rotate(180) scale(1.5)":"translate(50, "+(tn-15)+") scale(1.5)":Ie.pctChange<0?"translate(50, "+(tn+5)+") rotate(180)":"translate(40, "+(tn-10)+")"}).attr("points",function(Ie){return"2,8 2,13 8,13 8,8 10,8 5,0 0,8"}).style("fill",function(Ie){return Ie.pctChange>0?Ct:Xt}).attr("class",function(Ie){return Ie.pctChange<0?"down":"up"}).attr("fill-opacity",function(Ie){var tn=Ie.pctChange;return isNaN(tn)||tn===0?0:1})}}function vn(ye,Fe){if(!ye.splitterText){var qe=Fe;typeof ye.name!="string"&&typeof ye!="string"||(qe=ye.name?Qn(ye.name):Qn(ye)),T.select(c).select(".tick svg.visibility-"+qe).attr("opacity",1),T.select(c).select("g.row_"+qe+" .bg-hover").attr("fill-opacity",1)}}function Tn(ye,Fe){if(!ye.splitterText){var qe=Fe;typeof ye.name!="string"&&typeof ye!="string"||(qe=ye.name?Qn(ye.name):Qn(ye)),T.select(c).select(".tick svg.visibility-"+qe).attr("opacity",0),T.select(c).select("g.row_"+qe+" .bg-hover").attr("fill-opacity",0)}}function Qn(ye){return W.findIndex(function(Fe){return Fe.name===ye})}function dr(ye,Fe,qe,be){Te.call("customClick",ye,Fe,T.mouse(ye),[qe,be])}return Jt.backgroundColor=function(ye){return arguments.length?($t=ye,this):$t},Jt.upArrowColor=function(ye){return arguments.length?(Ct=ye,this):Ct},Jt.downArrowColor=function(ye){return arguments.length?(Xt=ye,this):Xt},Jt.colorSchema=function(ye){return arguments.length?(u=ye,this):u},Jt.enableLabels=function(ye){return arguments.length?(et=ye,this):et},Jt.enableYAxisRight=function(ye){return arguments.length?(dt=ye,this):dt},Jt.exportChart=function(ye,Fe){M.call(Jt,vt,ye,Fe)},Jt.height=function(ye){return arguments.length?(it=ye,this):it},Jt.isAnimated=function(ye){return arguments.length?(Ot=ye,this):Ot},Jt.labelsMargin=function(ye){return arguments.length?(pt=ye,this):pt},Jt.labelsNumberFormat=function(ye){return arguments.length?(bt=ye,this):bt},Jt.labelsSuffix=function(ye){return arguments.length?(Mt=ye,this):Mt},Jt.labelsSize=function(ye){return arguments.length?(w=ye,this):w},Jt.labelsSizeChild=function(ye){return arguments.length?(B=ye,this):B},Jt.pctChangeLabelSize=function(ye){return arguments.length?(tt=ye,this):tt},Jt.loadingState=function(ye){return arguments.length?(Q=ye,this):Q},Jt.margin=function(ye){return arguments.length?(z=R({},z,ye),this):z},Jt.nameLabel=function(ye){return arguments.length?(he=ye,this):he},Jt.numberFormat=function(ye){return arguments.length?(ct=ye,this):ct},Jt.on=function(){var ye=Te.on.apply(Te,arguments);return ye===Te?Jt:ye},Jt.percentageAxisToMaxRatio=function(ye){return arguments.length?(K=ye,this):K},Jt.isPrintMode=function(ye){return arguments.length?(Ce=ye,this):Ce},Jt.outerPadding=function(ye){return arguments.length?(y=ye,this):y},Jt.padding=function(ye){return arguments.length?(nt=ye,this):nt},Jt.paddingBetweenGroups=function(ye){return arguments.length?(x=ye,this):x},Jt.pctChangeLabel=function(ye){return arguments.length?(ve=ye,this):ve},Jt.yAxisLineWrapLimit=function(ye){return arguments.length?(gt=ye,this):gt},Jt.labelsFocusTitle=function(ye){return arguments.length?(wt=ye,this):wt},Jt.labelsTotalCount=function(ye){return arguments.length?(jt=ye,this):jt},Jt.labelsTotalText=function(ye){return arguments.length?(Dt=ye,this):Dt},Jt.labelsInterval=function(ye){return arguments.length?(re=ye,this):re},Jt.valueLabel=function(ye){return arguments.length?(le=ye,this):le},Jt.width=function(ye){return arguments.length?(D=ye,this):D},Jt.xTicks=function(ye){return arguments.length?(b=ye,this):b},Jt.yAxisPaddingBetweenChart=function(ye){return arguments.length?(rt=ye,this):rt},Jt.yTicks=function(ye){return arguments.length?(S=ye,this):S},Jt.wrapLabels=function(ye){return arguments.length?(Gt=ye,this):Gt},Jt}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d){Pt.exports=F},function(Pt,d,g){"use strict";var L,R=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($){return typeof $}:function($){return $&&typeof Symbol=="function"&&$.constructor===Symbol&&$!==Symbol.prototype?"symbol":typeof $},st=function($,J){if(Array.isArray($))return $;if(Symbol.iterator in Object($))return function(X,q){var Z=[],Y=!0,V=!1,N=void 0;try{for(var U,T=X[Symbol.iterator]();!(Y=(U=T.next()).done)&&(Z.push(U.value),!q||Z.length!==q);Y=!0);}catch(A){V=!0,N=A}finally{try{!Y&&T.return&&T.return()}finally{if(V)throw N}}return Z}($,J);throw new TypeError("Invalid attempt to destructure non-iterable instance")};(L=function($){var J=g(11),X=g(9),q=g(2),Z=(g(8),g(28)),Y=g(35).axisTimeCombinations,V=g(24),N=V.formatIntegerValue,U=V.formatDecimalValue,T=V.isInteger,A=g(26).getTextWidth;return function(){var M=2,O=2,H=2,z=2,c="Tooltip title",D=!0,it=void 0,Q={y:-55,x:0},W=void 0,k=void 0,_=void 0,C=void 0,h=48,l=0,u=37,v=void 0,I=void 0,S=J.easeQuadInOut,b=void 0,K="date",ct="value",et="name",dt="topics",pt=Y.DAY_MONTH,bt=null,Mt=null,w=[],B=null,tt=null,nt=Z.timeFormat("%b %d, %Y"),x=Z.timeFormat("%b %d, %I %p"),y=void 0,j=void 0;function lt(Ct){Ct.each(function(wt){250-z-O,45-M-H,function(Dt){j||((j=q.select(Dt).append("g").classed("britechart britechart-tooltip",!0).style("visibility","hidden")).append("g").classed("tooltip-container-group select-disable",!0).attr("transform","translate( "+z+", "+M+")").append("g").classed("tooltip-group",!0),W=j.selectAll(".tooltip-group").append("g").classed("tooltip-text",!0),it=W.append("rect").classed("tooltip-text-container",!0).attr("x",-54.5).attr("y",0).attr("width",250).attr("height",h).attr("rx",3).attr("ry",3).style("fill","#FFFFFF").style("stroke","#D2D6DF").style("stroke-width",1),C=W.append("text").classed("tooltip-title",!0).attr("x",-46.5).attr("dy",".35em").attr("y",16).style("fill","#6D717A"),k=W.append("line").classed("tooltip-divider",!0).attr("x1",-46.5).attr("x2",265).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),_=W.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35")),j.transition().attr("width",250).attr("height",45),lt.hide()}(this)})}function rt(Ct){var wt=Ct[ct];return Ct.missingValue?"-":function(Dt){if(tt!==null)return tt(Dt);var jt=U;return Dt?(B!==null?jt=X.format(B):T(Dt)&&(jt=N),jt(Dt)):0}(wt).toString()}function gt(Ct){var wt,Dt,jt=Ct[et],re=void 0,le=void 0;wt=Ct.topicName||jt,Dt=rt(Ct),le=_.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",l).attr("y",u).style("fill","#000000").text(wt).call(At,170,-25),re=_.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",l).attr("y",u).style("fill","#000000").text(Dt),v=le.node().getBBox().height,h+=v+5,I=re.node().getBBox().width?re.node().getBBox().width:I,re.attr("x",250-I-10-62.5),_.append("circle").classed("tooltip-circle",!0).attr("cx",-39.5).attr("cy",u+8).attr("r",5).style("fill",b[jt]).style("stroke-width",1),u+=v+7}function vt(Ct,wt,Dt){var jt,re,le=(jt=st([wt,Dt],2),re=jt[0],jt[1],[re-250<0?65:-205,Q.y]),Gt=st(le,2),he=Gt[0],ve=Gt[1];it.attr("width",250).attr("height",h+10),W.transition().duration(100).ease(S).attr("transform","translate("+he+", "+ve+")"),k.attr("x2",190)}function Ot(Ct){var wt=c,Dt=function(jt){var re=bt||pt,le=null,Gt={month:"short",day:"numeric"};return re===Y.DAY_MONTH||re===Y.MONTH_YEAR?(le=nt,Gt.year="numeric"):re===Y.HOUR_DAY||re===Y.MINUTE_HOUR?(le=x,Gt.hour="numeric"):re===Y.CUSTOM&&typeof Mt=="string"&&(le=Z.timeFormat(Mt)),y&&typeof Intl!="undefined"&&(typeof Intl=="undefined"?"undefined":R(Intl))==="object"&&Intl.DateTimeFormat?Intl.DateTimeFormat(y,Gt).format(jt):le(jt)}(new Date(Ct[K]));wt.length?D&&(wt=wt+" - "+Dt):wt=Dt,C.text(wt)}function At(Ct,wt){var Dt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;Ct.each(function(){var jt,re,le,Gt,he,ve,Ce;for(jt=(Ct=q.select(this)).text().split(/\s+/).reverse(),le=[],Gt=0,he=Ct.attr("y"),ve=parseFloat(Ct.attr("dy")),Ce=Ct.text(null).append("tspan").attr("x",Dt).attr("y",he).attr("dy",ve+"em");re=jt.pop();)le.push(re),Ce.text(le.join(" ")),A(le.join(" "),16,"Karla, sans-serif")>wt&&(le.pop(),Ce.text(le.join(" ")),Gt<2&&(le=[re],Ce=Ct.append("tspan").attr("x",Dt).attr("y",he).attr("dy",1.2*++Gt+ve+"em").text(re)))})}function $t(Ct){var wt=Ct[dt];w.length?wt=function(Dt){var jt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:w;return jt.map(function(re){return Dt.filter(function(le){return le.name===re})[0]})}(wt):wt.length&&wt[0].name&&(wt=function(Dt){return Dt.map(function(jt){return jt}).sort(function(jt,re){return jt.name>re.name?1:jt.name===re.name?0:-1})}(wt)),_.selectAll("text").remove(),_.selectAll("circle").remove(),Ot(Ct),h=48,u=37,l=0,wt.forEach(gt)}function Xt(Ct,wt,Dt){$t(Ct),vt(0,wt,Dt)}return lt.axisTimeCombinations=Y,lt.dateFormat=function(Ct){return arguments.length?(bt=Ct,this):bt||pt},lt.dateCustomFormat=function(Ct){return arguments.length?(Mt=Ct,this):Mt},lt.dateLabel=function(Ct){return arguments.length?(K=Ct,this):K},lt.hide=function(){return j.style("visibility","hidden"),this},lt.locale=function(Ct){return arguments.length?(y=Ct,this):y},lt.nameLabel=function(Ct){return arguments.length?(et=Ct,this):et},lt.numberFormat=function(Ct){return arguments.length?(B=Ct,this):B},lt.valueFormatter=function(Ct){return arguments.length?(tt=Ct,this):tt},lt.shouldShowDateInTitle=function(Ct){return arguments.length?(D=Ct,this):D},lt.show=function(){return j.style("visibility","visible"),this},lt.title=function(Ct){return arguments.length?(c=Ct,this):c},lt.tooltipOffset=function(Ct){return arguments.length?(Q=Ct,this):Q},lt.topicsOrder=function(Ct){return arguments.length?(w=Ct,this):w},lt.topicLabel=function(Ct){return arguments.length?(dt=Ct,this):dt},lt.update=function(Ct,wt,Dt){var jt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return b=wt,Xt(Ct,Dt,jt),this},lt.valueLabel=function(Ct){return arguments.length?(ct=Ct,this):ct},lt}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=function(st,$){if(Array.isArray(st))return st;if(Symbol.iterator in Object(st))return function(J,X){var q=[],Z=!0,Y=!1,V=void 0;try{for(var N,U=J[Symbol.iterator]();!(Z=(N=U.next()).done)&&(q.push(N.value),!X||q.length!==X);Z=!0);}catch(T){Y=!0,V=T}finally{try{!Z&&U.return&&U.return()}finally{if(Y)throw V}}return q}(st,$);throw new TypeError("Invalid attempt to destructure non-iterable instance")};(L=function(st){var $=g(0),J=g(11),X=g(9),q=g(2);return g(8),function(){var Z=12,Y=12,V=12,N=12,U="",T="value",A="name",M=J.easeQuadInOut,O=void 0,H=void 0,z=0,c=20,D=".2f",it=function(v){return X.format(D)(v)},Q=void 0,W=void 0,k=void 0;function _(v){v.each(function(){Q=100-N-Y,W=100-Z-V,function(I){k||(k=q.select(I).append("g").classed("britechart britechart-mini-tooltip",!0)).append("g").classed("tooltip-container-group",!0).attr("transform","translate( "+N+", "+Z+")").append("g").classed("tooltip-group",!0),k.transition().attr("width",100).attr("height",100),_.hide()}(this),H=k.selectAll(".tooltip-group").append("g").classed("tooltip-text select-disable",!0),O=H.append("rect").classed("tooltip-background",!0).attr("width",100).attr("height",100).attr("rx",1).attr("ry",1).attr("y",-Z).attr("x",-N).style("fill","#43484e").style("stroke","#43484e").style("stroke-width",1).style("pointer-events","none").style("opacity",.9)})}function C(){for(var v=arguments.length,I=Array(v),S=0;S0}(et,b)?b+c:b-Q-c-Y,function(pt,bt){return pt-Z-V-W-bt>0}(dt,K)?K+z:K-W-z-V]}function l(){var v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},I=v[T]||"",S=v[A]||"",b=21,K=22*1.18,ct="1em",et=0,dt=void 0,pt=void 0,bt=void 0;H.selectAll("text").remove(),U&&(bt=H.append("text").classed("mini-tooltip-title",!0).attr("dy",ct).attr("y",0).style("fill","#43484e").style("font-size",14).text(U),et=b+et),S&&(pt=H.append("text").classed("mini-tooltip-name",!0).attr("dy",ct).attr("y",et||0).style("fill","#ffffff").style("font-size",14).text(S),et=b+et),I&&(dt=H.append("text").classed("mini-tooltip-value",!0).attr("dy",ct).attr("y",et||0).style("fill","#ffffff").style("font-size",22).style("font-weight",200).text(it(I)),et=K+et),Q=C(pt,bt,dt),W=et}function u(v,I,S){var b,K,ct,et;l(v),b=h(I,S),K=R(b,2),ct=K[0],et=K[1],k.transition().duration(100).ease(M).attr("height",W+Z+V).attr("width",Q+N+Y).attr("transform","translate("+ct+","+et+")"),O.attr("height",W+Z+V).attr("width",Q+N+Y)}return _.hide=function(){return k.style("visibility","hidden"),this},_.nameLabel=function(v){return arguments.length?(A=v,this):A},_.numberFormat=function(v){return arguments.length?(D=v,this):D},_.valueFormatter=function(v){return arguments.length?(it=v,this):it},_.show=function(){var v;return l(v),k.style("visibility","visible"),this},_.title=function(v){return arguments.length?(U=v,this):U},_.update=function(v,I,S){return u(v,I,S),this},_.valueLabel=function(v){return arguments.length?(T=v,this):T},_}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$Vt[ge]?-1:Vt[pe]===Vt[ge]?0:1}),Wt=_t.indexOf("Other");if(Wt>=0){var se=_t.splice(Wt,1);_t=_t.concat(se)}return _t}(ht);var Nt=T.stack().keys(Dt).order(T.stackOrderNone).offset(T.stackOffsetNone);Ke=Nt(Qn),Ce=Nt(Tn)}(),Mr=Re?Ue.maxY:(Bi=et(Ln.map(function(en){return en.name})),q.max(Tn,function(en){var ht=Bi.map(function(Nt){return en[Nt]});return q.sum(ht)})),w=U.scaleTime().domain(q.extent(vn,function(en){return en.date})).rangeRound([0,pn]),nt=U.scaleLinear().domain([0,Mr]).rangeRound([bn,0]).nice(),Ct=Dt.reduce(function(en,ht,Nt){return O({},en,J({},ht,vt[Nt]))},{}),te=et(Ln.map(function(en){return en.name})),Me={},te.forEach(function(en){var ht=Ln.find(function(Nt){return Nt.name===en});ht.hasOwnProperty("show")?Me[en]=ht.show:Me[en]=!0}),wt=Me,function(en){Ze||((Ze=A.select(en).append("svg").classed("britechart stacked-area",!0)).append("rect").classed("export-wrapper",!0).attr("width",pt).attr("height",bt).attr("fill","white"),function(){var ht=Ze.append("g").classed("container-group",!0).attr("transform","translate("+dt.left+","+dt.top+")");ht.append("g").classed("x-axis-group",!0).append("g").classed("x axis",!0),ht.selectAll(".x-axis-group").append("g").classed("month-axis",!0),ht.append("g").classed("y-axis-group axis",!0),ht.append("g").classed("grid-lines-group",!0),ht.append("g").classed("y-axis-label",!0),ht.append("g").classed("chart-group",!0),ce&&ht.append("g").classed("legend-group",!0),ht.append("g").classed("metadata-group",!0)}()),Ze.attr("width",pt).attr("height",bt)}(this),function(){var en=void 0,ht=void 0;if(re==="custom"&&typeof Gt=="string")en={tick:le,format:M.timeFormat(Gt)},ht=null;else{var Nt=D(vn,pt,re,he);en=Nt.minor,ht=Nt.major,tt=Z.axisBottom(w).ticks(ht.tick).tickSize(0,0).tickFormat(ht.format)}B=Z.axisBottom(w).ticks(en.tick).tickSize(10,0).tickPadding(5).tickFormat(en.format),x=Z.axisRight(nt).ticks(j).tickSize([0]).tickPadding(5).tickFormat(xn),function(Vt,_t){Ze.select(".grid-lines-group").selectAll("line").remove(),(dr==="horizontal"||dr==="full")&&Ze.select(".grid-lines-group").selectAll("line.horizontal-grid-line").data(nt.ticks(_t)).enter().append("line").attr("class","horizontal-grid-line").attr("x1",-Fe-30).attr("x2",pn).attr("y1",function(Wt){return nt(Wt)}).attr("y2",function(Wt){return nt(Wt)}),dr!=="vertical"&&dr!=="full"||Ze.select(".grid-lines-group").selectAll("line.vertical-grid-line").data(w.ticks(Vt)).enter().append("line").attr("class","vertical-grid-line").attr("y1",0).attr("y2",bn).attr("x1",function(Wt){return w(Wt)}).attr("x2",function(Wt){return w(Wt)}),Ze.select(".grid-lines-group").selectAll("line.extended-x-line").data([0]).enter().append("line").attr("class","extended-x-line").attr("x1",-Fe-30).attr("x2",pn).attr("y1",bt-dt.bottom-dt.top).attr("y2",bt-dt.bottom-dt.top)}(en.tick,j)}(),function(){Ze.select(".x-axis-group .axis.x").attr("transform","translate( 0, "+bn+" )").call(B),re!=="custom"&&Ze.select(".x-axis-group .month-axis").attr("transform","translate(0, "+(bn+30)+")").call(tt),Ze.select(".y-axis-group.axis").attr("transform","translate( "+-Fe+", 0)").call(x).call(hr),lt&&(rt&&Ze.selectAll(".y-axis-label-text").remove(),rt=Ze.select(".y-axis-label").append("text").classed("y-axis-label-text",!0).attr("x",-bn/2).attr("y",gt).attr("text-anchor","middle").attr("transform","rotate(270 0 0)").text(lt))}(),function(){if(Te&&(Ze.selectAll(".layer-container").remove(),Ze.selectAll(".layer").remove(),Ze.selectAll(".area-outline").remove()),Re)return en=T.line().x(function(Nt){return w(Nt.date)}).y(function(){return nt(0)-1}),(ht=Ze.select(".chart-group")).append("path").attr("class","empty-data-line").attr("d",en(Tn)).style("stroke","url(#empty-data-line-gradient)"),void ht.append("linearGradient").attr("id","empty-data-line-gradient").attr("gradientUnits","userSpaceOnUse").attr("x1",0).attr("x2",w(Ln[Ln.length-1].date)).attr("y1",0).attr("y2",0).selectAll("stop").data([{offset:"0%",color:Ot[0]},{offset:"100%",color:Ot[1]}]).enter().append("stop").attr("offset",function(Nt){return Nt.offset}).attr("stop-color",function(Nt){return Nt.color});var en,ht;rn=T.area().curve(W[ve]).x(function(Nt){var Vt=Nt.data;return w(Vt.date)}).y0(function(Nt){return nt(Nt[0])}).y1(function(Nt){return nt(Nt[1])}),un=T.line().curve(rn.curve()).x(function(Nt){var Vt=Nt.data;return w(Vt.date)}).y(function(Nt){return nt(Nt[1])}),Ft?((Te=Ze.select(".chart-group").selectAll(".layer").data(Ke,Pe).enter().append("g").classed("layer-container",!0)).append("path").attr("class","layer").attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Te.append("path").attr("class","area-outline").attr("d",un).style("stroke",function(Nt){var Vt=Nt.key;return Ct[Vt]}).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}),Ze.select(".chart-group").selectAll(".layer").data(Ce).transition().delay(function(Nt,Vt){return Qt[Vt]}).duration(1e3).ease(Se).attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Ze.select(".chart-group").selectAll(".area-outline").data(Ce).transition().delay(function(Nt,Vt){return Qt[Vt]}).duration(1e3).ease(Se).attr("d",un).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0})):((Te=Ze.select(".chart-group").selectAll(".layer").data(Ce).enter().append("g").classed("layer-container",!0)).append("path").attr("class","layer").attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Te.append("path").attr("class","area-outline").attr("d",un).style("stroke",function(Nt){var Vt=Nt.key;return Ct[Vt]}).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}),Ze.select(".chart-group").selectAll(".layer").attr("d",rn).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0}).style("fill",function(Nt){var Vt=Nt.key;return Ct[Vt]}),Ze.select(".chart-group").selectAll(".area-outline").attr("class","area-outline").attr("d",un).style("stroke",function(Nt){var Vt=Nt.key;return Ct[Vt]}).style("opacity",function(Nt){var Vt=Nt.key;return wt[Vt]?Xt:0})),xe||Ze.select(".chart-group").selectAll(".area-outline").style("display","none"),Te.exit().transition().style("opacity",0).remove()}(),function(){if(ce){var en=Number.parseInt(pn)+Number.parseInt(dt.right);tn=Ze.selectAll(".legend-group").append("g").attr("transform","translate("+en+", 0)").classed("tooltip-text",!0),ke=tn.append("text").classed("tooltip-title",!0).attr("x",-43).attr("dy",".35em").attr("y",16).style("fill","#282C35").style("font-size","12px"),tn.append("line").classed("tooltip-divider",!0).attr("x1",-43).attr("x2",225).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),Mn=tn.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35");for(var ht=[].concat($(new Set(Ln.map(function(Ae){return Ae.name})))),Nt=[],Vt=function(Ae){var Qe={},He=ht[Ae];Qe.name=He,Qe.sum=Ln.filter(function(sn){return sn.name===ht[Ae]}).reduce(function(sn,kn){return sn+kn.value},0),Nt.push(Qe)},_t=0;_tye&&!Re&&(function(){Kt&&Ze.selectAll(".overlay").remove(),Kt=Ze.select(".metadata-group").append("rect").attr("class","overlay").attr("y1",0).attr("y2",bn).attr("height",bn).attr("width",pn).attr("fill","rgba(0, 0, 0, 0)").style("display","none")}(),function(){Jt&&Ze.selectAll(".vertical-marker-container").remove(),Jt=Ze.select(".metadata-group").append("g").attr("class","vertical-marker-container").attr("transform","translate(9999, 0)"),Et=Jt.selectAll("path").data([{x1:0,y1:0,x2:0,y2:0}]).enter().append("line").classed("vertical-marker",!0).attr("x1",0).attr("y1",bn).attr("x2",0).attr("y2",0)}(),Ze.on("mouseover",function(en){(function(ht,Nt){Kt.style("display","block"),Et.classed("bc-is-active",!0),an.call("customMouseOver",ht,Nt,A.mouse(ht))})(this,en)}).on("mouseout",function(en){(function(ht,Nt){Kt.style("display","none"),Et.classed("bc-is-active",!1),an.call("customMouseOut",ht,Nt,A.mouse(ht))})(this,en)}).on("mousemove",function(en){(function(ht){Rt||Rr();var Nt=A.mouse(ht),Vt=st(Nt,2),_t=Vt[0],Wt=Vt[1],se=rr(_t-dt.left),pe=void 0;se&&(lr(pe=w(new Date(se.key))),jr(se),an.call("customMouseMove",ht,se,Ct,pe,Wt))})(this)})),zt&&function(){Rt||Rr();var en=rr(pn);en&&(lr(w(new Date(en.key))),jr(en))}()})}function Sn(){Ze.on("touchmove",function(Fn){(function(Dr,fi){an.call("customTouchMove",Dr,fi,A.touch(Dr))})(this,Fn)})}function xn(Fn){return(h(Fn)?_:C)(Fn)}function hr(Fn){Fn.selectAll(".tick text").attr("transform","translate(-20, -8)")}function nr(Fn){return new Date(Fn).toLocaleDateString()}function pr(Fn){var Dr,fi,si=void 0,ti=void 0;Dr=Fn.name,fi=Fn.sum.toLocaleString(),ti=Mn.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",-15).attr("y",on).style("fill","#000000").style("font-size","12px").text(Dr).call(vr,200,12,-25),si=Mn.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",-15).attr("y",on).style("fill","#000000").style("font-size","12px").text(fi),_n=ti.node().getBBox().height,_n+5,Ie=si.node().getBBox().width?si.node().getBBox().width:Ie,si.attr("x",300-Ie-75),Mn.append("circle").classed("tooltip-circle",!0).attr("cx",-35).attr("cy",on+8).attr("r",5).style("fill",Ct[Fn.name]).style("stroke-width",1),on+=_n+7}function vr(Fn,Dr,fi){var si=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;Fn.each(function(){var ti,Mr,Bi,te,Me,$e,en;for(ti=(Fn=A.select(this)).text().split(/\s+/).reverse(),Bi=[],te=0,Me=Fn.attr("y"),$e=parseFloat(Fn.attr("dy")),en=Fn.text(null).append("tspan").attr("x",si).attr("y",Me).attr("dy",$e+"em");Mr=ti.pop();)Bi.push(Mr),en.text(Bi.join(" ")),H.getTextWidth(Bi.join(" "),fi,"Karla, sans-serif")>Dr&&(Bi.pop(),en.text(Bi.join(" ")),te<4&&(Bi=[Mr],en=Fn.append("tspan").attr("x",si).attr("y",Me).attr("dy",1.2*++te+$e+"em").text(Mr)))})}function rr(Fn){var Dr=vn.filter(function(fi){var si=fi.date;return Math.abs(w(si)-Fn)<=Rt});if(Dr.length)return Dr[0]}function Rr(){var Fn=vn.map(function(Dr){return Dr.date});Rt=(w(Fn[1])-w(Fn[0]))/2}function jr(Fn){var Dr=Fn.values,fi=0;Jt.selectAll(".circle-container").remove(),Dr=Dr.filter(function(ti){return!!ti});var si=Dt.reduce(function(ti,Mr){return[].concat($(ti),[Dr.find(function(Bi){return Bi.name===Mr})])},[]);si.forEach(function(ti,Mr){var Bi=Jt.append("g").classed("circle-container",!0).append("circle").classed("data-point-highlighter",!0).attr("cx",12).attr("cy",0).attr("r",5).style("stroke-width",1.2).style("stroke",Ct[ti.name]).style("opacity",function(te){var Me=te.key;return wt[Me]?Xt:0}).style("cursor","pointer").on("click",function(){(function(te){At||(At=u(Ze.select(".metadata-group")),$t=v(At));var Me=A.select(te);Me.style("stroke-width",5).style("stroke-opacity",.6).attr("filter","url(#"+$t+")"),I(Me,Se,7)})(this),function(te,Me){an.call("customDataEntryClick",te,Me,A.mouse(te))}(this,ti)}).on("mouseout",function(){var te;te=this,A.select(te).attr("filter","none")});fi+=si[Mr][be],Bi.attr("transform","translate( -12, "+nt(fi)+" )")})}function lr(Fn){Jt.attr("transform","translate("+Fn+",0)")}return gn.areaCurve=function(Fn){return arguments.length?(ve=Fn,this):ve},gn.areaOpacity=function(Fn){return arguments.length?(Xt=Fn,this):Xt},gn.aspectRatio=function(Fn){return arguments.length?(y=Fn,this):y},gn.axisTimeCombinations=Q,gn.colorSchema=function(Fn){return arguments.length?(vt=Fn,this):vt},gn.dateLabel=function(Fn){return arguments.length?(qe=Fn,this):qe},gn.emptyDataConfig=function(Fn){return arguments.length?(Ue=Fn,this):Ue},gn.grid=function(Fn){return arguments.length?(dr=Fn,this):dr},gn.hasOutline=function(Fn){return arguments.length?(xe=Fn,this):xe},gn.height=function(Fn){return arguments.length?(y&&(pt=Math.ceil(Fn/y)),bt=Fn,this):bt},gn.initializeVerticalMarker=function(Fn){return arguments.length?(zt=Fn,this):zt},gn.isAnimated=function(Fn){return arguments.length?(Ft=Fn,this):Ft},gn.isPrintMode=function(Fn){return arguments.length?(ce=Fn,this):ce},gn.keyLabel=function(Fn){return arguments.length?(je=Fn,this):je},gn.margin=function(Fn){return arguments.length?(dt=R({},dt,Fn),this):dt},gn.tooltipThreshold=function(Fn){return arguments.length?(ye=Fn,this):ye},gn.topicsOrder=function(Fn){return arguments.length?(jt=Fn,this):jt},gn.loadingState=function(Fn){return arguments.length?(Mt=Fn,this):Mt},gn.locale=function(Fn){return arguments.length?(he=Fn,this):he},gn.exportChart=function(Fn,Dr){z.call(gn,Ze,Fn,Dr)},gn.on=function(){var Fn=an.on.apply(an,arguments);return Fn===an?gn:Fn},gn.valueLabel=function(Fn){return arguments.length?(be=Fn,this):be},gn.width=function(Fn){return arguments.length?(y&&(bt=Math.ceil(Fn*y)),pt=Fn,this):pt},gn.xAxisCustomFormat=function(Fn){return arguments.length?(Gt=Fn,this):Gt},gn.xAxisFormat=function(Fn){return arguments.length?(re=Fn,this):re},gn.xTicks=function(Fn){return arguments.length?(le=Fn,this):le},gn.yAxisLabel=function(Fn){return arguments.length?(lt=Fn,this):lt},gn.yAxisLabelOffset=function(Fn){return arguments.length?(gt=Fn,this):gt},gn.yTicks=function(Fn){return arguments.length?(j=Fn,this):j},gn}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$0&&arguments[0]!==void 0&&arguments[0],Et=Jt?1:0;lt.attr("opacity",Et),rt.attr("opacity",Et)}return rn.aspectRatio=function(Jt){return arguments.length?(W=Jt,this):W},rn.circleOpacity=function(Jt){return arguments.length?(Ot=Jt,this):Ot},rn.colorSchema=function(Jt){return arguments.length?(Ct=Jt,this):Ct},rn.exportChart=function(Jt,Et){T.call(rn,Gt,Jt,Et)},rn.grid=function(Jt){return arguments.length?(l=Jt,this):l},rn.hasCrossHairs=function(Jt){return arguments.length?(Dt=Jt,this):Dt},rn.hasHollowCircles=function(Jt){return arguments.length?(le=Jt,this):le},rn.hasTrendline=function(Jt){return arguments.length?(jt=Jt,this):jt},rn.height=function(Jt){return arguments.length?(W&&(it=Math.ceil(Jt/W)),Q=Jt,this):Q},rn.highlightTextLegendOffset=function(Jt){return arguments.length?(gt=Jt,this):gt},rn.isAnimated=function(Jt){return arguments.length?(wt=Jt,this):wt},rn.margin=function(Jt){return arguments.length?(D=R({},D,Jt),this):D},rn.maxCircleArea=function(Jt){return arguments.length?(Xt=Jt,this):Xt},rn.on=function(){var Jt=Ce.on.apply(Ce,arguments);return Jt===Ce?rn:Jt},rn.width=function(Jt){return arguments.length?(W&&(Q=Math.ceil(Jt*W)),it=Jt,this):it},rn.xAxisLabel=function(Jt){return arguments.length?(w=Jt,this):w},rn.xAxisLabelOffset=function(Jt){return arguments.length?(tt=Jt,this):tt},rn.xAxisFormat=function(Jt){return arguments.length?(I=Jt,this):I},rn.xTicks=function(Jt){return arguments.length?(C=Jt,this):C},rn.yAxisFormat=function(Jt){return arguments.length?(K=Jt,this):K},rn.yAxisLabel=function(Jt){return arguments.length?(pt=Jt,this):pt},rn.yAxisLabelOffset=function(Jt){return arguments.length?(Mt=Jt,this):Mt},rn.yTicks=function(Jt){return arguments.length?(h=Jt,this):h},rn}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function($){for(var J=1;Jx&&pt.on("mouseover",function(Kt){(function(Jt,Et){le.call("customMouseOver",Jt,Et,T.mouse(Jt))})(this,Kt)}).on("mouseout",function(Kt){(function(Jt,Et){pt.select(".metadata-group").attr("transform","translate(9999, 0)"),le.call("customMouseOut",Jt,Et,T.mouse(Jt))})(this,Kt)}).on("mousemove",function(Kt){var Jt,Et,Rt,zt,Ft,ce,Se,xe,Ze,pn;Et=ve(Jt=this),Rt=st(Et,2),zt=Rt[0],Ft=Rt[1],ce=dt?Te(Ft):Ce(zt),Se=void 0,xe=void 0,ce&&(dt?(Se=zt-z.left,xe=_(ce.key)+_.bandwidth()/2):(Se=Q(ce.key)+W(ce[Xt]),xe=Ft-z.bottom),Ze=Se,pn=xe,pt.select(".metadata-group").attr("transform","translate("+Ze+","+pn+")"),le.call("customMouseMove",Jt,ce,K,Se,xe))}).on("click",function(Kt){var Jt,Et,Rt,zt,Ft,ce;Et=ve(Jt=this),Rt=st(Et,2),zt=Rt[0],Ft=Rt[1],ce=dt?Te(Ft):Ce(zt),le.call("customClick",Jt,ce,T.mouse(Jt))}),pt.selectAll(".bar").on("mouseover",function(Kt){(function(Jt,Et){T.select(Jt).attr("fill",function(){return q.color(K[Et.group]).darker()})})(this,Kt)}).on("mouseout",function(Kt){(function(Jt,Et){T.select(Jt).attr("fill",function(){return K[Et.group]})})(this,Kt)})}()})}function he(un){un.selectAll(".tick text").attr("transform","translate("+u.x+", "+u.y+")")}function ve(un){return T.mouse(un)}function Ce(un){var Qt=un-z.left,Kt=W.bandwidth(),Jt=[];return ct.forEach(function(Et){var Rt=Et.values.find(function(zt){return Math.abs(Qt>=Q(zt[At])+W(zt[Xt]))&&Math.abs(Qt-W(zt[Xt])-Q(zt[At])<=Kt)});Rt&&(Rt.values=Et.values,Rt.key=Rt.name,Jt.push(Rt))}),Jt.length?Jt[0]:void 0}function Te(un){var Qt=un-z.bottom,Kt=_.bandwidth(),Jt=[];return ct.map(function(Et){var Rt=Et.values.find(function(zt){return Math.abs(Qt>=_(zt[At]))&&Math.abs(Qt-_(zt[At])<=2*Kt)});Rt&&(Rt.values=Et.values,Rt.key=Rt.name,Jt.push(Rt))}),Jt.length?Jt[0]:void 0}function Ke(un){var Qt=T.select(this),Kt=N.interpolateRound(0,Q(Dt(un))),Jt=N.interpolateNumber(0,1);return function(Et){Qt.attr("width",Kt(Et)).style("opacity",Jt(Et))}}function rn(un){var Qt=T.select(this),Kt=N.interpolateRound(0,Mt-_(Dt(un))),Jt=N.interpolateRound(Mt,_(Dt(un))),Et=N.interpolateNumber(0,1);return function(Rt){Qt.attr("y",Jt(Rt)).attr("height",Kt(Rt)).style("opacity",Et(Rt))}}return Gt.aspectRatio=function(un){return arguments.length?(l=un,this):l},Gt.colorSchema=function(un){return arguments.length?(S=un,this):S},Gt.exportChart=function(un,Qt){M.call(Gt,pt,un,Qt)},Gt.groupLabel=function(un){return arguments.length?(Xt=un,this):Xt},Gt.grid=function(un){return arguments.length?(Ot=un,this):Ot},Gt.height=function(un){return arguments.length?(l&&(c=Math.ceil(un/l)),D=un,this):D},Gt.isHorizontal=function(un){return arguments.length?(dt=un,this):dt},Gt.isAnimated=function(un){return arguments.length?(re=un,this):re},Gt.loadingState=function(un){return arguments.length?(it=un,this):it},Gt.margin=function(un){return arguments.length?(z=R({},z,un),this):z},Gt.nameLabel=function(un){return arguments.length?(At=un,this):At},Gt.yTicks=function(un){return arguments.length?(v=un,this):v},Gt.on=function(){var un=le.on.apply(le,arguments);return un===le?Gt:un},Gt.tooltipThreshold=function(un){return arguments.length?(x=un,this):x},Gt.valueLabel=function(un){return arguments.length?($t=un,this):$t},Gt.valueLabelFormat=function(un){return arguments.length?(Ct=un,this):Ct},Gt.width=function(un){return arguments.length?(l&&(D=Math.ceil(un*l)),c=un,this):c},Gt.xTicks=function(un){return arguments.length?(I=un,this):I},Gt.yAxisLabel=function(un){return arguments.length?(lt=un,this):lt},Gt.yAxisLabelOffset=function(un){return arguments.length?(gt=un,this):gt},Gt.yTickTextOffset=function(un){return arguments.length?(u=un,this):u},Gt}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(J){for(var X=1;Xnt?xn-hr-10:xn}).attr("y",function(Sn){return v(Ke(Sn))+16}).text(function(Sn){return xe(Ce(Sn))+an(Te(Sn))+"%"}),_n.enter().append("rect").classed("striped",!0).attr("x",1).attr("y",function(Sn){return v(Ke(Sn))}).attr("height",v.bandwidth()).attr("fill","url(#diagonalHatch)"));Mn.enter().append("rect").classed("bg-hover",!0).on("click",function(Sn){Ln(this,Sn)}).attr("x",-Q.left).attr("y",function(Sn){return v(Ke(Sn))}).attr("height",v.bandwidth()*j.length+4*j.length).attr("width",nt+Q.left).attr("fill","#d6e8fa").attr("fill-opacity",0).on("mouseover",vn).on("mouseout",Tn),un?(wn.style("opacity",.24).transition().delay(function(Sn,xn){return wt[xn]}).duration(1e3).ease(Mt).tween("attr.width",Qn),B&&Pe.style("opacity",.24).transition().delay(function(Sn,xn){return wt[xn]}).duration(1e3).ease(Mt).tween("attr.width",dr),gn.style("opacity",.24).transition().delay(function(Sn,xn){return wt[xn]}).duration(1e3).ease(Mt).tween("attr.width",Qn)):(wn.attr("width",function(Sn){return h(B?rn(Sn):Te(Sn))}),B&&Pe.attr("width",function(Sn){return h(ve(Sn))}),gn.attr("width",function(Sn){return h(B?rn(Sn):Te(Sn))}))}(Ue),Ue.exit().transition().style("opacity",0).remove()}(),tt.select(".x-axis-group .axis.x").attr("transform","translate( 0, "+x+" )").call(l),tt.select(".y-axis-group.axis").attr("transform","translate( "+-Ot+", 0)").call(I),tt.selectAll(".y-axis-group.axis .tick").call(ye),tt.selectAll(".y-axis-group.axis .tick text").on("mouseover",vn).on("mouseout",Tn).call(ce,Q.left-50).selectAll("tspan"),$t&&(Xt&&tt.selectAll(".y-axis-label-text").remove(),Xt=tt.select(".y-axis-label").append("text").classed("y-axis-label-text",!0).attr("x",-x/2).attr("y",Ct).attr("text-anchor","middle").attr("transform","rotate(270 0 0)").text($t)),function(){if(Qt){var Ue=Number.parseInt(nt)+Number.parseInt(Q.right);Kt=tt.selectAll(".legend-group").append("g").attr("transform","translate("+Ue+", -30)").classed("tooltip-text",!0),Jt=Kt.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35"),[].concat($(new Set(y.map(function(Re){return Re.group})))).reverse().forEach(Se)}}(),function(){k>vt&&tt.on("mouseover",function(Ue){(function(Re,Ie){zt.call("customMouseOver",Re,Ie,M.mouse(Re)),vn(Ie)})(this,Ue)}).on("mouseout",function(Ue){(function(Re,Ie){tt.select(".metadata-group").attr("transform","translate(9999, 0)"),zt.call("customMouseOut",Re,Ie,M.mouse(Re))})(this,Ue)}).on("mousemove",function(Ue){var Re,Ie,tn,Mn,ke,on,_n,Pe,wn;Ie=pn(Re=this),tn=st(Ie,2),Mn=tn[0],ke=bn(tn[1]),on=void 0,_n=void 0,ke&&(on=Mn-Q.left,_n=u(ke.key)+u.bandwidth()/2,Pe=on,wn=_n,tt.select(".metadata-group").attr("transform","translate("+Pe+","+wn+")"),zt.call("customMouseMove",Re,ke,pt,on,_n))}).on("click",function(Ue){Ln(this,Ue)}),tt.selectAll(".row").on("mouseover",function(Ue){(function(Re,Ie){M.select(Re).attr("fill",function(){return Z.color(pt[Ie.group]).darker()})})(this,Ue)}).on("mouseout",function(Ue){(function(Re,Ie){M.select(Re).attr("fill",function(){return pt[Ie.group]})})(this,Ue)})}()})}function ce(qe,be){H.wrapTextWithEllipses(qe,be,-10,2,.8)}function Se(qe){var be,je=qe,Ue=void 0;be=qe,Ue=Jt.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("dx",0).attr("y",Et).style("fill","#000000").style("font-size","12px").text(be).call(Ze,200,12,-25),Rt=Ue.node().getBBox().height,Rt+5,Jt.append("circle").classed("tooltip-circle",!0).attr("cx",-39.5).attr("cy",Et+10).attr("r",5).style("fill",pt[je]).style("stroke-width",1),Et+=Rt+7}function xe(qe){return qe?qe+" | ":""}function Ze(qe,be,je){var Ue=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;qe.each(function(){var Re,Ie,tn,Mn,ke,on,_n;for(Re=(qe=M.select(this)).text().split(/\s+/).reverse(),tn=[],Mn=0,ke=qe.attr("y"),on=parseFloat(qe.attr("dy")),_n=qe.text(null).append("tspan").attr("x",Ue).attr("y",ke).attr("dy",on+"em");Ie=Re.pop();)tn.push(Ie),_n.text(tn.join(" ")),H.getTextWidth(tn.join(" "),je,"Karla, sans-serif")>be&&(tn.pop(),_n.text(tn.join(" ")),Mn<4&&(tn=[Ie],_n=qe.append("tspan").attr("x",Ue).attr("y",ke).attr("dy",1.2*++Mn+on+"em").text(Ie)))})}function pn(qe){return M.mouse(qe)}function bn(qe){var be=qe-Q.bottom,je=u.bandwidth(),Ue=[];return bt.map(function(Re){var Ie=Re.values.find(function(tn){return Math.abs(be>=u(tn[jt]))&&Math.abs(be-u(tn[jt])<=2*je)});Ie&&(Ie.values=Re.values,Ie.key=Ie.name,Ue.push(Ie))}),Ue.length?Ue[0]:void 0}function Ln(qe,be){var je=pn(qe),Ue=st(je,2),Re=(Ue[0],bn(Ue[1]));zt.call("customClick",qe,Re,M.mouse(qe))}function vn(qe,be){var je=null;this&&(je=M.select(this.parentNode).attr("class").replace("layer layer-","")),typeof qe=="string"&&(je=Fe(qe)),parseInt(je)>-1&&(M.select(W).select(".tick svg.visibility-"+je).attr("opacity",1),M.select(W).select("g .layer-"+je+" .bg-hover").attr("fill-opacity",.3))}function Tn(qe,be){var je=null;this&&(je=M.select(this.parentNode).attr("class").replace("layer layer-","")),typeof qe=="string"&&(je=Fe(qe)),parseInt(je)>-1&&(M.select(W).select(".tick svg.visibility-"+je).attr("opacity",0),M.select(W).select("g .layer-"+je+" .bg-hover").attr("fill-opacity",0))}function Qn(qe){var be=M.select(this),je=T.interpolateNumber(0,1),Ue=B?T.interpolateRound(0,h(rn(qe))):T.interpolateRound(0,h(Te(qe)));return function(Re){be.attr("width",Ue(Re)).style("opacity",je(Re))}}function dr(qe){var be=M.select(this),je=T.interpolateRound(0,h(ve(qe))),Ue=T.interpolateNumber(0,1);return function(Re){be.attr("width",je(Re)).style("opacity",Ue(Re))}}function ye(qe){qe.each(function(){var be=(qe=M.select(this)).node().getBBox().height/2,je=qe.append("svg").attr("class",function(Ue){return"visibility visibility-"+Fe(Ue)}).attr("x",-(Q.left-5)).attr("y",-be).attr("width","300").attr("height","300").attr("viewBox","0 0 600 600").attr("fill","none").attr("opacity",0);je.append("rect").attr("x",-10).attr("y",-10).attr("height","50").attr("width","50").attr("fill","#d6e8fa").on("mouseover",vn).on("mouseout",Tn).attr("opacity",0),je.append("path").attr("d","M 10,10 L 30,30 M 30,10 L 10,30").attr("stroke","#0072ce").attr("stroke-width","2").on("mouseover",vn).on("mouseout",Tn)})}function Fe(qe){return lt.indexOf(qe)}return Ft.aspectRatio=function(qe){return arguments.length?(S=qe,this):S},Ft.colorSchema=function(qe){return arguments.length?(dt=qe,this):dt},Ft.exportChart=function(qe,be){z.call(Ft,tt,qe,be)},Ft.groupLabel=function(qe){return arguments.length?(le=qe,this):le},Ft.grid=function(qe){return arguments.length?(Dt=qe,this):Dt},Ft.height=function(qe){return arguments.length?(S&&(k=Math.ceil(qe/S)),_=qe,this):_},Ft.isHorizontal=function(qe){return arguments.length?(w=qe,this):w},Ft.isPrintMode=function(qe){return arguments.length?(Qt=qe,this):Qt},Ft.isStacked=function(qe){return arguments.length?(B=qe,this):B},Ft.isAnimated=function(qe){return arguments.length?(un=qe,this):un},Ft.loadingState=function(qe){return arguments.length?(C=qe,this):C},Ft.margin=function(qe){return arguments.length?(Q=R({},Q,qe),this):Q},Ft.nameLabel=function(qe){return arguments.length?(jt=qe,this):jt},Ft.yTicks=function(qe){return arguments.length?(K=qe,this):K},Ft.on=function(){var qe=zt.on.apply(zt,arguments);return qe===zt?Ft:qe},Ft.percentageAxisToMaxRatio=function(qe){return arguments.length?(et=qe,this):et},Ft.tooltipThreshold=function(qe){return arguments.length?(vt=qe,this):vt},Ft.valueLabel=function(qe){return arguments.length?(re=qe,this):re},Ft.valueLabelFormat=function(qe){return arguments.length?(Gt=qe,this):Gt},Ft.width=function(qe){return arguments.length?(S&&(_=Math.ceil(qe*S)),k=qe,this):k},Ft.xTicks=function(qe){return arguments.length?(ct=qe,this):ct},Ft.yAxisLabel=function(qe){return arguments.length?($t=qe,this):$t},Ft.yAxisLabelOffset=function(qe){return arguments.length?(Ct=qe,this):Ct},Ft.yTickTextOffset=function(qe){return arguments.length?(b=qe,this):b},Ft}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function($){for(var J=1;Jj&&bt.on("mouseover",function(Se){(function(xe,Ze){he.call("customMouseOver",xe,Ze,A.mouse(xe))})(this,Se)}).on("mouseout",function(Se){(function(xe,Ze){bt.select(".metadata-group").attr("transform","translate(9999, 0)"),he.call("customMouseOut",xe,Ze,A.mouse(xe))})(this,Se)}).on("mousemove",function(Se){var xe,Ze,pn,bn,Ln,vn,Tn,Qn,dr,ye;Ze=Ke(xe=this),pn=st(Ze,2),bn=pn[0],Ln=pn[1],vn=pt?un(Ln):rn(bn),Tn=void 0,Qn=void 0,vn&&(pt?(Tn=bn-c.left,Qn=_(vn.key)+_.bandwidth()/2):(Tn=W(vn.key)+c.left,Qn=Ln-c.bottom),dr=Tn,ye=Qn,bt.select(".metadata-group").attr("transform","translate("+dr+","+ye+")"),he.call("customMouseMove",xe,vn,ct,Tn,Qn))}).on("click",function(Se){var xe,Ze,pn,bn,Ln,vn;Ze=Ke(xe=this),pn=st(Ze,2),bn=pn[0],Ln=pn[1],vn=pt?un(Ln):rn(bn),he.call("customClick",xe,vn,A.mouse(xe))}),bt.selectAll(".bar").on("mouseover",Qt).on("mouseout",Kt)}()})}function Ce(Rt){Rt.selectAll(".tick text").attr("transform","translate(-20, -8)")}function Te(Rt){return Rt.map(function(zt){for(var Ft=0;Ft=Se&&zt=Se&&zt=vt[1]&&(vt[0]=z[tt].floor(At[0]),vt[1]=z[tt].offset(vt[0])),U.select(this).transition().call(U.event.target.move,vt.map(v))}nt.call("customBrushEnd",this,vt)}}function gt(vt,Ot){var At=null;vt!==null&&(At=[v(new Date(vt)),v(new Date(Ot))]),dt.move(pt,At)}return j.axisTimeCombinations=H,j.dateRange=function(vt){return arguments.length?(h=vt,Array.isArray(h)&>.apply(void 0,st(h)),this):h},j.gradient=function(vt){return arguments.length?(w=vt,this):w},j.height=function(vt){return arguments.length?(W=vt,this):W},j.loadingState=function(vt){return arguments.length?(k=vt,this):k},j.locale=function(vt){return arguments.length?(et=vt,this):et},j.margin=function(vt){return arguments.length?(it=R({},it,vt),this):it},j.on=function(){var vt=nt.on.apply(nt,arguments);return vt===nt?j:vt},j.width=function(vt){return arguments.length?(Q=vt,this):Q},j.xAxisCustomFormat=function(vt){return arguments.length?(ct=vt,this):ct},j.xAxisFormat=function(vt){return arguments.length?(b=vt,this):b},j.xTicks=function(vt){return arguments.length?(K=vt,this):K},j.roundingTimeInterval=function(vt){return arguments.length?(tt=vt,this):tt},j}}.call(d,g,d,Pt))===void 0||(Pt.exports=L)},function(Pt,d,g){"use strict";var L,R=Object.assign||function(st){for(var $=1;$0)){if(x/=Ot,Ot<0){if(x0){if(x>vt)return;x>gt&&(gt=x)}if(x=tt-lt,Ot||!(x<0)){if(x/=Ot,Ot<0){if(x>vt)return;x>gt&&(gt=x)}else if(Ot>0){if(x0)){if(x/=At,At<0){if(x0){if(x>vt)return;x>gt&&(gt=x)}if(x=nt-rt,At||!(x<0)){if(x/=At,At<0){if(x>vt)return;x>gt&&(gt=x)}else if(At>0){if(x0||vt<1)||(gt>0&&(Mt[0]=[lt+gt*Ot,rt+gt*At]),vt<1&&(Mt[1]=[lt+vt*Ot,rt+vt*At]),!0)}}}}}function A(Mt,w,B,tt,nt){var x=Mt[1];if(x)return!0;var y,j,lt=Mt[0],rt=Mt.left,gt=Mt.right,vt=rt[0],Ot=rt[1],At=gt[0],$t=gt[1],Xt=(vt+At)/2,Ct=(Ot+$t)/2;if($t===Ot){if(Xt=tt)return;if(vt>At){if(lt){if(lt[1]>=nt)return}else lt=[Xt,B];x=[Xt,nt]}else{if(lt){if(lt[1]1)if(vt>At){if(lt){if(lt[1]>=nt)return}else lt=[(B-j)/y,B];x=[(nt-j)/y,nt]}else{if(lt){if(lt[1]=tt)return}else lt=[w,y*w+j];x=[tt,y*tt+j]}else{if(lt){if(lt[0]=-et)){var At=lt*lt+rt*rt,$t=gt*gt+vt*vt,Xt=(vt*At-rt*$t)/Ot,Ct=(lt*$t-gt*At)/Ot,wt=c.pop()||new D;wt.arc=Mt,wt.site=nt,wt.x=Xt+y,wt.y=(wt.cy=Ct+j)+Math.sqrt(Xt*Xt+Ct*Ct),Mt.circle=wt;for(var Dt=null,jt=b._;jt;)if(wt.yct)j=j.L;else{if(!((nt=x-v(j,y))>ct)){tt>-ct?(w=j.P,B=j):nt>-ct?(w=j,B=j.N):w=B=j;break}if(!j.R){w=j;break}j=j.R}(function(le){S[le.index]={site:le,halfedges:[]}})(Mt);var lt=_(Mt);if(I.insert(w,lt),w||B){if(w===B)return Q(w),B=_(w.site),I.insert(lt,B),lt.edge=B.edge=V(w.site,lt.site),it(w),void it(B);if(B){Q(w),Q(B);var rt=w.site,gt=rt[0],vt=rt[1],Ot=Mt[0]-gt,At=Mt[1]-vt,$t=B.site,Xt=$t[0]-gt,Ct=$t[1]-vt,wt=2*(Ot*Ct-At*Xt),Dt=Ot*Ot+At*At,jt=Xt*Xt+Ct*Ct,re=[(Ct*Dt-At*jt)/wt+gt,(Ot*jt-Xt*Dt)/wt+vt];U(B.edge,rt,$t,re),lt.edge=V(rt,Mt,null,re),B.edge=V(Mt,$t,null,re),it(w),it(B)}else lt.edge=V(w.site,lt.site)}}function u(Mt,w){var B=Mt.site,tt=B[0],nt=B[1],x=nt-w;if(!x)return tt;var y=Mt.P;if(!y)return-1/0;var j=(B=y.site)[0],lt=B[1],rt=lt-w;if(!rt)return j;var gt=j-tt,vt=1/x-1/rt,Ot=gt/rt;return vt?(-Ot+Math.sqrt(Ot*Ot-2*vt*(gt*gt/(-2*rt)-lt+rt/2+nt-x/2)))/vt+tt:(tt+j)/2}function v(Mt,w){var B=Mt.N;if(B)return u(B,w);var tt=Mt.site;return tt[1]===w?tt[0]:1/0}var I,S,b,K,ct=1e-6,et=1e-12;function dt(Mt,w){return w[1]-Mt[1]||w[0]-Mt[0]}function pt(Mt,w){var B,tt,nt,x=Mt.sort(dt).pop();for(K=[],S=new Array(Mt.length),I=new Y,b=new Y;;)if(nt=z,x&&(!nt||x[1]ct||Math.abs($t[0][1]-$t[1][1])>ct)||delete K[Xt]})(y,j,lt,rt),function(gt,vt,Ot,At){var $t,Xt,Ct,wt,Dt,jt,re,le,Gt,he,ve,Ce,Te=S.length,Ke=!0;for($t=0;$tct||Math.abs(Ce-Gt)>ct)&&(Dt.splice(wt,0,K.push(N(Ct,he,Math.abs(ve-gt)ct?[gt,Math.abs(le-gt)ct?[Math.abs(Gt-At)ct?[Ot,Math.abs(le-Ot)ct?[Math.abs(Gt-vt)=j)return null;var lt=Mt-nt.site[0],rt=w-nt.site[1],gt=lt*lt+rt*rt;do nt=x.cells[tt=y],y=null,nt.halfedges.forEach(function(vt){var Ot=x.edges[vt],At=Ot.left;if(At!==nt.site&&At||(At=Ot.right)){var $t=Mt-At[0],Xt=w-At[1],Ct=$t*$t+Xt*Xt;CtMath.abs(Ie[1]-Tn[1])?Ke=!0:Te=!0),Tn=Ie,Ce=!0,A(),be()}function be(){var Ie;switch(Ze=Tn[0]-vn[0],pn=Tn[1]-vn[1],Qt){case O:case M:Kt&&(Ze=Math.max(Ft-wt,Math.min(Se-le,Ze)),Dt=wt+Ze,Gt=le+Ze),Jt&&(pn=Math.max(ce-jt,Math.min(xe-he,pn)),re=jt+pn,ve=he+pn);break;case H:Kt<0?(Ze=Math.max(Ft-wt,Math.min(Se-wt,Ze)),Dt=wt+Ze,Gt=le):Kt>0&&(Ze=Math.max(Ft-le,Math.min(Se-le,Ze)),Dt=wt,Gt=le+Ze),Jt<0?(pn=Math.max(ce-jt,Math.min(xe-jt,pn)),re=jt+pn,ve=he):Jt>0&&(pn=Math.max(ce-he,Math.min(xe-he,pn)),re=jt,ve=he+pn);break;case z:Kt&&(Dt=Math.max(Ft,Math.min(Se,wt-Ze*Kt)),Gt=Math.max(Ft,Math.min(Se,le+Ze*Kt))),Jt&&(re=Math.max(ce,Math.min(xe,jt-pn*Jt)),ve=Math.max(ce,Math.min(xe,he+pn*Jt)))}Gt0&&(wt=Dt-Ze),Jt<0?he=ve-pn:Jt>0&&(jt=re-pn),Qt=O,ye.attr("cursor",_.selection),be());break;default:return}A()}function Re(){switch(st.c.keyCode){case 16:bn&&(Te=Ke=bn=!1,be());break;case 18:Qt===z&&(Kt<0?le=Gt:Kt>0&&(wt=Dt),Jt<0?he=ve:Jt>0&&(jt=re),Qt=H,be());break;case 32:Qt===O&&(st.c.altKey?(Kt&&(le=Gt-Ze*Kt,wt=Dt+Ze*Kt),Jt&&(he=ve-pn*Jt,jt=re+pn*Jt),Qt=z):(Kt<0?le=Gt:Kt>0&&(wt=Dt),Jt<0?he=ve:Jt>0&&(jt=re),Qt=H),ye.attr("cursor",_[un]),be());break;default:return}A()}}function $t(){vt(this,arguments).moved()}function Xt(){vt(this,arguments).ended()}function Ct(){var wt=this.__brush||{selection:null};return wt.extent=D(tt.apply(this,arguments)),wt.dim=w,wt}return rt.move=function(wt,Dt){wt.selection?wt.on("start.brush",function(){vt(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){vt(this,arguments).end()}).tween("brush",function(){var jt=this,re=jt.__brush,le=vt(jt,arguments),Gt=re.selection,he=w.input(typeof Dt=="function"?Dt.apply(this,arguments):Dt,re.extent),ve=Object(q.a)(Gt,he);function Ce(Te){re.selection=Te===1&&he===null?null:ve(Te),gt.call(jt),le.brush()}return Gt!==null&&he!==null?Ce:Ce(1)}):wt.each(function(){var jt=this,re=arguments,le=jt.__brush,Gt=w.input(typeof Dt=="function"?Dt.apply(jt,re):Dt,le.extent),he=vt(jt,re).beforestart();Object(V.interrupt)(jt),le.selection=Gt===null?null:Gt,gt.call(jt),he.start().brush().end()})},rt.clear=function(wt){rt.move(wt,null)},Ot.prototype={beforestart:function(){return++this.active==1&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting?(this.starting=!1,this.emit("start")):this.emit("brush"),this},brush:function(){return this.emit("brush"),this},end:function(){return--this.active==0&&(delete this.state.emitter,this.emit("end")),this},emit:function(wt){Object(st.a)(new U(rt,wt,w.output(this.state.selection)),j.apply,j,[wt,this.that,this.args])}},rt.extent=function(wt){return arguments.length?(tt=typeof wt=="function"?wt:N(D(wt)),rt):tt},rt.filter=function(wt){return arguments.length?(nt=typeof wt=="function"?wt:N(!!wt),rt):nt},rt.touchable=function(wt){return arguments.length?(x=typeof wt=="function"?wt:N(!!wt),rt):x},rt.handleSize=function(wt){return arguments.length?(lt=+wt,rt):lt},rt.keyModifiers=function(wt){return arguments.length?(y=!!wt,rt):y},rt.on=function(){var wt=j.on.apply(j,arguments);return wt===j?rt:wt},rt}g.d(d,"brush",function(){return bt}),g.d(d,"brushX",function(){return dt}),g.d(d,"brushY",function(){return pt}),g.d(d,"brushSelection",function(){return et})}])})},5382:yr=>{(function(Oe,xt){yr.exports=xt()})(window,function(){return function(Oe){var xt={};function F(Pt){if(xt[Pt])return xt[Pt].exports;var d=xt[Pt]={i:Pt,l:!1,exports:{}};return Oe[Pt].call(d.exports,d,d.exports,F),d.l=!0,d.exports}return F.m=Oe,F.c=xt,F.d=function(Pt,d,g){F.o(Pt,d)||Object.defineProperty(Pt,d,{enumerable:!0,get:g})},F.r=function(Pt){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(Pt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(Pt,"__esModule",{value:!0})},F.t=function(Pt,d){if(1&d&&(Pt=F(Pt)),8&d||4&d&&typeof Pt=="object"&&Pt&&Pt.__esModule)return Pt;var g=Object.create(null);if(F.r(g),Object.defineProperty(g,"default",{enumerable:!0,value:Pt}),2&d&&typeof Pt!="string")for(var L in Pt)F.d(g,L,function(R){return Pt[R]}.bind(null,L));return g},F.n=function(Pt){var d=Pt&&Pt.__esModule?function(){return Pt.default}:function(){return Pt};return F.d(d,"a",d),d},F.o=function(Pt,d){return Object.prototype.hasOwnProperty.call(Pt,d)},F.p="",F(F.s=101)}([function(Oe,xt,F){"use strict";F.d(xt,"a",function(){return g});var Pt=new Date,d=new Date;function g(L,R,st,$){function J(X){return L(X=arguments.length===0?new Date:new Date(+X)),X}return J.floor=function(X){return L(X=new Date(+X)),X},J.ceil=function(X){return L(X=new Date(X-1)),R(X,1),L(X),X},J.round=function(X){var q=J(X),Z=J.ceil(X);return X-q0))return V;do V.push(Y=new Date(+X)),R(X,Z),L(X);while(Y=q)for(;L(q),!X(q);)q.setTime(q-1)},function(q,Z){if(q>=q)if(Z<0)for(;++Z<=0;)for(;R(q,-1),!X(q););else for(;--Z>=0;)for(;R(q,1),!X(q););})},st&&(J.count=function(X,q){return Pt.setTime(+X),d.setTime(+q),L(Pt),L(d),Math.floor(st(Pt,d))},J.every=function(X){return X=Math.floor(X),isFinite(X)&&X>0?X>1?J.filter($?function(q){return $(q)%X==0}:function(q){return J.count(0,q)%X==0}):J:null}),J}},function(Oe,xt,F){"use strict";F.d(xt,"d",function(){return Pt}),F.d(xt,"c",function(){return d}),F.d(xt,"b",function(){return g}),F.d(xt,"a",function(){return L}),F.d(xt,"e",function(){return R});var Pt=1e3,d=6e4,g=36e5,L=864e5,R=6048e5},function(Oe,xt,F){"use strict";F.r(xt);var Pt=function(w,B){return wB?1:w>=B?0:NaN},d=function(w){var B;return w.length===1&&(B=w,w=function(tt,nt){return Pt(B(tt),nt)}),{left:function(tt,nt,x,y){for(x==null&&(x=0),y==null&&(y=tt.length);x>>1;w(tt[j],nt)<0?x=j+1:y=j}return x},right:function(tt,nt,x,y){for(x==null&&(x=0),y==null&&(y=tt.length);x>>1;w(tt[j],nt)>0?y=j:x=j+1}return x}}},g=d(Pt),L=g.right,R=g.left,st=L,$=function(w,B){B==null&&(B=J);for(var tt=0,nt=w.length-1,x=w[0],y=new Array(nt<0?0:nt);ttw?1:B>=w?0:NaN},Z=function(w){return w===null?NaN:+w},Y=function(w,B){var tt,nt,x=w.length,y=0,j=-1,lt=0,rt=0;if(B==null)for(;++j1)return rt/(y-1)},V=function(w,B){var tt=Y(w,B);return tt&&Math.sqrt(tt)},N=function(w,B){var tt,nt,x,y=w.length,j=-1;if(B==null){for(;++j=tt)for(nt=x=tt;++jtt&&(nt=tt),x=tt)for(nt=x=tt;++jtt&&(nt=tt),x0)return[w];if((nt=B0)for(w=Math.ceil(w/j),B=Math.floor(B/j),y=new Array(x=Math.ceil(B-w+1));++lt=0?(y>=z?10:y>=c?5:y>=D?2:1)*Math.pow(10,x):-Math.pow(10,-x)/(y>=z?10:y>=c?5:y>=D?2:1)}function W(w,B,tt){var nt=Math.abs(B-w)/Math.max(0,tt),x=Math.pow(10,Math.floor(Math.log(nt)/Math.LN10)),y=nt/x;return y>=z?x*=10:y>=c?x*=5:y>=D&&(x*=2),BOt;)At.pop(),--$t;var Xt,Ct=new Array($t+1);for(y=0;y<=$t;++y)(Xt=Ct[y]=[]).x0=y>0?At[y-1]:vt,Xt.x1=y<$t?At[y]:Ot;for(y=0;y=1)return+tt(w[nt-1],nt-1,w);var nt,x=(nt-1)*B,y=Math.floor(x),j=+tt(w[y],y,w);return j+(+tt(w[y+1],y+1,w)-j)*(x-y)}},h=function(w,B,tt){return w=A.call(w,Z).sort(Pt),Math.ceil((tt-B)/(2*(C(w,.75)-C(w,.25))*Math.pow(w.length,-1/3)))},l=function(w,B,tt){return Math.ceil((tt-B)/(3.5*V(w)*Math.pow(w.length,-1/3)))},u=function(w,B){var tt,nt,x=w.length,y=-1;if(B==null){for(;++y=tt)for(nt=tt;++ynt&&(nt=tt)}else for(;++y=tt)for(nt=tt;++ynt&&(nt=tt);return nt},v=function(w,B){var tt,nt=w.length,x=nt,y=-1,j=0;if(B==null)for(;++y=0;)for(B=(nt=w[x]).length;--B>=0;)tt[--j]=nt[B];return tt},b=function(w,B){var tt,nt,x=w.length,y=-1;if(B==null){for(;++y=tt)for(nt=tt;++ytt&&(nt=tt)}else for(;++y=tt)for(nt=tt;++ytt&&(nt=tt);return nt},K=function(w,B){for(var tt=B.length,nt=new Array(tt);tt--;)nt[tt]=w[B[tt]];return nt},ct=function(w,B){if(tt=w.length){var tt,nt,x=0,y=0,j=w[y];for(B==null&&(B=Pt);++x>8&15|v>>4&240,v>>4&15|240&v,(15&v)<<4|15&v,1):I===8?new D(v>>24&255,v>>16&255,v>>8&255,(255&v)/255):I===4?new D(v>>12&15|v>>8&240,v>>8&15|v>>4&240,v>>4&15|240&v,((15&v)<<4|15&v)/255):null):(v=X.exec(u))?new D(v[1],v[2],v[3],1):(v=q.exec(u))?new D(255*v[1]/100,255*v[2]/100,255*v[3]/100,1):(v=Z.exec(u))?H(v[1],v[2],v[3],v[4]):(v=Y.exec(u))?H(255*v[1]/100,255*v[2]/100,255*v[3]/100,v[4]):(v=V.exec(u))?k(v[1],v[2]/100,v[3]/100,1):(v=N.exec(u))?k(v[1],v[2]/100,v[3]/100,v[4]):U.hasOwnProperty(u)?O(U[u]):u==="transparent"?new D(NaN,NaN,NaN,0):null}function O(u){return new D(u>>16&255,u>>8&255,255&u,1)}function H(u,v,I,S){return S<=0&&(u=v=I=NaN),new D(u,v,I,S)}function z(u){return u instanceof d||(u=M(u)),u?new D((u=u.rgb()).r,u.g,u.b,u.opacity):new D}function c(u,v,I,S){return arguments.length===1?z(u):new D(u,v,I,S==null?1:S)}function D(u,v,I,S){this.r=+u,this.g=+v,this.b=+I,this.opacity=+S}function it(){return"#"+W(this.r)+W(this.g)+W(this.b)}function Q(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(u===1?")":", "+u+")")}function W(u){return((u=Math.max(0,Math.min(255,Math.round(u)||0)))<16?"0":"")+u.toString(16)}function k(u,v,I,S){return S<=0?u=v=I=NaN:I<=0||I>=1?u=v=NaN:v<=0&&(u=NaN),new h(u,v,I,S)}function _(u){if(u instanceof h)return new h(u.h,u.s,u.l,u.opacity);if(u instanceof d||(u=M(u)),!u)return new h;if(u instanceof h)return u;var v=(u=u.rgb()).r/255,I=u.g/255,S=u.b/255,b=Math.min(v,I,S),K=Math.max(v,I,S),ct=NaN,et=K-b,dt=(K+b)/2;return et?(ct=v===K?(I-S)/et+6*(I0&&dt<1?0:ct,new h(ct,et,dt,u.opacity)}function C(u,v,I,S){return arguments.length===1?_(u):new h(u,v,I,S==null?1:S)}function h(u,v,I,S){this.h=+u,this.s=+v,this.l=+I,this.opacity=+S}function l(u,v,I){return 255*(u<60?v+(I-v)*u/60:u<180?I:u<240?v+(I-v)*(240-u)/60:v)}Object(Pt.a)(d,M,{copy:function(u){return Object.assign(new this.constructor,this,u)},displayable:function(){return this.rgb().displayable()},hex:T,formatHex:T,formatHsl:function(){return _(this).formatHsl()},formatRgb:A,toString:A}),Object(Pt.a)(D,c,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:it,formatHex:it,formatRgb:Q,toString:Q})),Object(Pt.a)(h,C,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new h(this.h,this.s,this.l*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new h(this.h,this.s,this.l*u,this.opacity)},rgb:function(){var u=this.h%360+360*(this.h<0),v=isNaN(u)||isNaN(this.s)?0:this.s,I=this.l,S=I+(I<.5?I:1-I)*v,b=2*I-S;return new D(l(u>=240?u-240:u+120,b,S),l(u,b,S),l(u<120?u+240:u-120,b,S),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(u===1?")":", "+u+")")}}))},function(Oe,xt,F){"use strict";xt.a=function(Pt,d){return Pt=+Pt,d=+d,function(g){return Pt*(1-g)+d*g}}},function(Oe,xt,F){"use strict";F.r(xt);var Pt=F(12),d=F(32),g=function(c){return Object(d.a)(Object(Pt.a)(c).call(document.documentElement))},L=0;function R(){return new st}function st(){this._="@"+(++L).toString(36)}st.prototype=R.prototype={constructor:st,get:function(c){for(var D=this._;!(D in c);)if(!(c=c.parentNode))return;return c[D]},set:function(c,D){return c[this._]=D},remove:function(c){return this._ in c&&delete c[this._]},toString:function(){return this._}};var $=F(34),J=F(60),X=F(20),q=F(14),Z=F(13),Y=F(10),V=function(c){return typeof c=="string"?new Y.a([document.querySelectorAll(c)],[document.documentElement]):new Y.a([c==null?[]:c],Y.c)},N=F(19),U=F(33),T=F(35),A=F(61),M=F(22),O=function(c,D){D==null&&(D=Object(M.a)().touches);for(var it=0,Q=D?D.length:0,W=new Array(Q);it180||J<-180?J-360*Math.round(J/360):J):Object(Pt.a)(isNaN(st)?$:st)}function L(st){return(st=+st)==1?R:function($,J){return J-$?function(X,q,Z){return X=Math.pow(X,Z),q=Math.pow(q,Z)-X,Z=1/Z,function(Y){return Math.pow(X+Y*q,Z)}}($,J,st):Object(Pt.a)(isNaN($)?J:$)}}function R(st,$){var J=$-st;return J?d(st,J):Object(Pt.a)(isNaN(st)?$:st)}},function(Oe,xt,F){"use strict";var Pt=F(18);xt.a=function(d){return(d=Object(Pt.a)(Math.abs(d)))?d[1]:NaN}},function(Oe,xt,F){"use strict";var Pt=F(19),d=F(33),g=F(34),L=function(y){return new Array(y.length)};function R(y,j){this.ownerDocument=y.ownerDocument,this.namespaceURI=y.namespaceURI,this._next=null,this._parent=y,this.__data__=j}R.prototype={constructor:R,appendChild:function(y){return this._parent.insertBefore(y,this._next)},insertBefore:function(y,j){return this._parent.insertBefore(y,j)},querySelector:function(y){return this._parent.querySelector(y)},querySelectorAll:function(y){return this._parent.querySelectorAll(y)}};function st(y,j,lt,rt,gt,vt){for(var Ot,At=0,$t=j.length,Xt=vt.length;Atj?1:y>=j?0:NaN}var X=F(20);function q(y){return function(){this.removeAttribute(y)}}function Z(y){return function(){this.removeAttributeNS(y.space,y.local)}}function Y(y,j){return function(){this.setAttribute(y,j)}}function V(y,j){return function(){this.setAttributeNS(y.space,y.local,j)}}function N(y,j){return function(){var lt=j.apply(this,arguments);lt==null?this.removeAttribute(y):this.setAttribute(y,lt)}}function U(y,j){return function(){var lt=j.apply(this,arguments);lt==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,lt)}}var T=F(35);function A(y){return function(){delete this[y]}}function M(y,j){return function(){this[y]=j}}function O(y,j){return function(){var lt=j.apply(this,arguments);lt==null?delete this[y]:this[y]=lt}}function H(y){return y.trim().split(/^|\s+/)}function z(y){return y.classList||new c(y)}function c(y){this._node=y,this._names=H(y.getAttribute("class")||"")}function D(y,j){for(var lt=z(y),rt=-1,gt=j.length;++rt=0&&(this._names.splice(j,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(y){return this._names.indexOf(y)>=0}};function _(){this.textContent=""}function C(y){return function(){this.textContent=y}}function h(y){return function(){var j=y.apply(this,arguments);this.textContent=j==null?"":j}}function l(){this.innerHTML=""}function u(y){return function(){this.innerHTML=y}}function v(y){return function(){var j=y.apply(this,arguments);this.innerHTML=j==null?"":j}}function I(){this.nextSibling&&this.parentNode.appendChild(this)}function S(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var b=F(12);function K(){return null}function ct(){var y=this.parentNode;y&&y.removeChild(this)}function et(){var y=this.cloneNode(!1),j=this.parentNode;return j?j.insertBefore(y,this.nextSibling):y}function dt(){var y=this.cloneNode(!0),j=this.parentNode;return j?j.insertBefore(y,this.nextSibling):y}var pt=F(17),bt=F(21);function Mt(y,j,lt){var rt=Object(bt.a)(y),gt=rt.CustomEvent;typeof gt=="function"?gt=new gt(j,lt):(gt=rt.document.createEvent("Event"),lt?(gt.initEvent(j,lt.bubbles,lt.cancelable),gt.detail=lt.detail):gt.initEvent(j,!1,!1)),y.dispatchEvent(gt)}function w(y,j){return function(){return Mt(this,y,j)}}function B(y,j){return function(){return Mt(this,y,j.apply(this,arguments))}}F.d(xt,"c",function(){return tt}),F.d(xt,"a",function(){return nt});var tt=[null];function nt(y,j){this._groups=y,this._parents=j}function x(){return new nt([[document.documentElement]],tt)}nt.prototype=x.prototype={constructor:nt,select:function(y){typeof y!="function"&&(y=Object(Pt.a)(y));for(var j=this._groups,lt=j.length,rt=new Array(lt),gt=0;gt=Ke&&(Ke=Te+1);!(Ce=he[Ke])&&++Ke=0;)(rt=gt[vt])&&(Ot&&4^rt.compareDocumentPosition(Ot)&&Ot.parentNode.insertBefore(rt,Ot),Ot=rt);return this},sort:function(y){function j(wt,Dt){return wt&&Dt?y(wt.__data__,Dt.__data__):!wt-!Dt}y||(y=J);for(var lt=this._groups,rt=lt.length,gt=new Array(rt),vt=0;vt1?this.each((j==null?A:typeof j=="function"?O:M)(y,j)):this.node()[y]},classed:function(y,j){var lt=H(y+"");if(arguments.length<2){for(var rt=z(this.node()),gt=-1,vt=lt.length;++gt0?Object(Pt.a)(function(R){R.setFullYear(Math.floor(R.getFullYear()/L)*L),R.setMonth(0,1),R.setHours(0,0,0,0)},function(R,st){R.setFullYear(R.getFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return g});var Pt=F(0),d=Object(Pt.a)(function(L){L.setUTCMonth(0,1),L.setUTCHours(0,0,0,0)},function(L,R){L.setUTCFullYear(L.getUTCFullYear()+R)},function(L,R){return R.getUTCFullYear()-L.getUTCFullYear()},function(L){return L.getUTCFullYear()});d.every=function(L){return isFinite(L=Math.floor(L))&&L>0?Object(Pt.a)(function(R){R.setUTCFullYear(Math.floor(R.getUTCFullYear()/L)*L),R.setUTCMonth(0,1),R.setUTCHours(0,0,0,0)},function(R,st){R.setUTCFullYear(R.getUTCFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";F.d(xt,"c",function(){return d}),F.d(xt,"a",function(){return J});var Pt={},d=null;typeof document!="undefined"&&("onmouseenter"in document.documentElement||(Pt={mouseenter:"mouseover",mouseleave:"mouseout"}));function g(X,q,Z){return X=L(X,q,Z),function(Y){var V=Y.relatedTarget;V&&(V===this||8&V.compareDocumentPosition(this))||X.call(this,Y)}}function L(X,q,Z){return function(Y){var V=d;d=Y;try{X.call(this,this.__data__,q,Z)}finally{d=V}}}function R(X){return X.trim().split(/^|\s+/).map(function(q){var Z="",Y=q.indexOf(".");return Y>=0&&(Z=q.slice(Y+1),q=q.slice(0,Y)),{type:q,name:Z}})}function st(X){return function(){var q=this.__on;if(q){for(var Z,Y=0,V=-1,N=q.length;Y1?L[0]+L.slice(2):L,+Pt.slice(g+1)]}},function(Oe,xt,F){"use strict";function Pt(){}xt.a=function(d){return d==null?Pt:function(){return this.querySelector(d)}}},function(Oe,xt,F){"use strict";var Pt=F(14);xt.a=function(d){var g=d+="",L=g.indexOf(":");return L>=0&&(g=d.slice(0,L))!=="xmlns"&&(d=d.slice(L+1)),Pt.a.hasOwnProperty(g)?{space:Pt.a[g],local:d}:d}},function(Oe,xt,F){"use strict";xt.a=function(Pt){return Pt.ownerDocument&&Pt.ownerDocument.defaultView||Pt.document&&Pt||Pt.defaultView}},function(Oe,xt,F){"use strict";var Pt=F(17);xt.a=function(){for(var d,g=Pt.c;d=g.sourceEvent;)g=d;return g}},function(Oe,xt,F){"use strict";function Pt(d){return ArrayBuffer.isView(d)&&!(d instanceof DataView)}F.d(xt,"b",function(){return Pt}),xt.a=function(d,g){g||(g=[]);var L,R=d?Math.min(g.length,d.length):0,st=g.slice();return function($){for(L=0;L=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function d(L){if(!(R=Pt.exec(L)))throw new Error("invalid format: "+L);var R;return new g({fill:R[1],align:R[2],sign:R[3],symbol:R[4],zero:R[5],width:R[6],comma:R[7],precision:R[8]&&R[8].slice(1),trim:R[9],type:R[10]})}function g(L){this.fill=L.fill===void 0?" ":L.fill+"",this.align=L.align===void 0?">":L.align+"",this.sign=L.sign===void 0?"-":L.sign+"",this.symbol=L.symbol===void 0?"":L.symbol+"",this.zero=!!L.zero,this.width=L.width===void 0?void 0:+L.width,this.comma=!!L.comma,this.precision=L.precision===void 0?void 0:+L.precision,this.trim=!!L.trim,this.type=L.type===void 0?"":L.type+""}d.prototype=g.prototype,g.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(Oe,xt,F){"use strict";function Pt(d,g,L,R,st){var $=d*d,J=$*d;return((1-3*d+3*$-J)*g+(4-6*$+3*J)*L+(1+3*d+3*$-3*J)*R+J*st)/6}F.d(xt,"a",function(){return Pt}),xt.b=function(d){var g=d.length-1;return function(L){var R=L<=0?L=0:L>=1?(L=1,g-1):Math.floor(L*g),st=d[R],$=d[R+1],J=R>0?d[R-1]:2*st-$,X=R0?L>1?Object(Pt.a)(function(R){R.setTime(Math.floor(R/L)*L)},function(R,st){R.setTime(+R+st*L)},function(R,st){return(st-R)/L}):d:null},xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";var Pt=F(10);xt.a=function(d){return typeof d=="string"?new Pt.a([[document.querySelector(d)]],[document.documentElement]):new Pt.a([[d]],Pt.c)}},function(Oe,xt,F){"use strict";function Pt(){return[]}xt.a=function(d){return d==null?Pt:function(){return this.querySelectorAll(d)}}},function(Oe,xt,F){"use strict";xt.a=function(Pt){return function(){return this.matches(Pt)}}},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return R});var Pt=F(21);function d(st){return function(){this.style.removeProperty(st)}}function g(st,$,J){return function(){this.style.setProperty(st,$,J)}}function L(st,$,J){return function(){var X=$.apply(this,arguments);X==null?this.style.removeProperty(st):this.style.setProperty(st,X,J)}}function R(st,$){return st.style.getPropertyValue($)||Object(Pt.a)(st).getComputedStyle(st,null).getPropertyValue($)}xt.a=function(st,$,J){return arguments.length>1?this.each(($==null?d:typeof $=="function"?L:g)(st,$,J==null?"":J)):R(this.node(),st)}},function(Oe,xt,F){"use strict";var Pt=F(5),d=F(37),g=F(58),L=F(57),R=F(6),st=F(59),$=F(55),J=F(24),X=F(23);xt.a=function(q,Z){var Y,V=typeof Z;return Z==null||V==="boolean"?Object(J.a)(Z):(V==="number"?R.a:V==="string"?(Y=Object(Pt.e)(Z))?(Z=Y,d.a):$.a:Z instanceof Pt.e?d.a:Z instanceof Date?L.a:Object(X.b)(Z)?X.a:Array.isArray(Z)?g.b:typeof Z.valueOf!="function"&&typeof Z.toString!="function"||isNaN(Z)?st.a:R.a)(q,Z)}},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return st}),F.d(xt,"c",function(){return $});var Pt=F(5),d=F(26),g=F(53),L=F(8);function R(J){return function(X){var q,Z,Y=X.length,V=new Array(Y),N=new Array(Y),U=new Array(Y);for(q=0;qN+1?V.slice(0,N+1)+"."+V.slice(N+1):V+new Array(N-V.length+2).join("0")},st={"%":function(q,Z){return(100*q).toFixed(Z)},b:function(q){return Math.round(q).toString(2)},c:function(q){return q+""},d:function(q){return Math.round(q).toString(10)},e:function(q,Z){return q.toExponential(Z)},f:function(q,Z){return q.toFixed(Z)},g:function(q,Z){return q.toPrecision(Z)},o:function(q){return Math.round(q).toString(8)},p:function(q,Z){return R(100*q,Z)},r:R,s:function(q,Z){var Y=Object(L.a)(q,Z);if(!Y)return q+"";var V=Y[0],N=Y[1],U=N-(Pt=3*Math.max(-8,Math.min(8,Math.floor(N/3))))+1,T=V.length;return U===T?V:U>T?V+new Array(U-T+1).join("0"):U>0?V.slice(0,U)+"."+V.slice(U):"0."+new Array(1-U).join("0")+Object(L.a)(q,Math.max(0,Z+U-1))[0]},X:function(q){return Math.round(q).toString(16).toUpperCase()},x:function(q){return Math.round(q).toString(16)}},$=function(q){return q},J=Array.prototype.map,X=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];xt.a=function(q){var Z,Y,V=q.grouping===void 0||q.thousands===void 0?$:(Z=J.call(q.grouping,Number),Y=q.thousands+"",function(c,D){for(var it=c.length,Q=[],W=0,k=Z[0],_=0;it>0&&k>0&&(_+k+1>D&&(k=Math.max(1,D-_)),Q.push(c.substring(it-=k,it+k)),!((_+=k+1)>D));)k=Z[W=(W+1)%Z.length];return Q.reverse().join(Y)}),N=q.currency===void 0?"":q.currency[0]+"",U=q.currency===void 0?"":q.currency[1]+"",T=q.decimal===void 0?".":q.decimal+"",A=q.numerals===void 0?$:function(c){return function(D){return D.replace(/[0-9]/g,function(it){return c[+it]})}}(J.call(q.numerals,String)),M=q.percent===void 0?"%":q.percent+"",O=q.minus===void 0?"-":q.minus+"",H=q.nan===void 0?"NaN":q.nan+"";function z(c){var D=(c=Object(g.b)(c)).fill,it=c.align,Q=c.sign,W=c.symbol,k=c.zero,_=c.width,C=c.comma,h=c.precision,l=c.trim,u=c.type;u==="n"?(C=!0,u="g"):st[u]||(h===void 0&&(h=12),l=!0,u="g"),(k||D==="0"&&it==="=")&&(k=!0,D="0",it="=");var v=W==="$"?N:W==="#"&&/[boxX]/.test(u)?"0"+u.toLowerCase():"",I=W==="$"?U:/[%p]/.test(u)?M:"",S=st[u],b=/[defgprs%]/.test(u);function K(ct){var et,dt,pt,bt=v,Mt=I;if(u==="c")Mt=S(ct)+Mt,ct="";else{var w=(ct=+ct)<0;if(ct=isNaN(ct)?H:S(Math.abs(ct),h),l&&(ct=function(nt){t:for(var x,y=nt.length,j=1,lt=-1;j0&&(lt=0)}return lt>0?nt.slice(0,lt)+nt.slice(x+1):nt}(ct)),w&&+ct==0&&(w=!1),bt=(w?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+bt,Mt=(u==="s"?X[8+Pt/3]:"")+Mt+(w&&Q==="("?")":""),b){for(et=-1,dt=ct.length;++et(pt=ct.charCodeAt(et))||pt>57){Mt=(pt===46?T+ct.slice(et+1):ct.slice(et))+Mt,ct=ct.slice(0,et);break}}}C&&!k&&(ct=V(ct,1/0));var B=bt.length+ct.length+Mt.length,tt=B<_?new Array(_-B+1).join(D):"";switch(C&&k&&(ct=V(tt+ct,tt.length?_-Mt.length:1/0),tt=""),it){case"<":ct=bt+ct+Mt+tt;break;case"=":ct=bt+tt+ct+Mt;break;case"^":ct=tt.slice(0,B=tt.length>>1)+bt+ct+Mt+tt.slice(B);break;default:ct=tt+bt+ct+Mt}return A(ct)}return h=h===void 0?6:/[gprs]/.test(u)?Math.max(1,Math.min(21,h)):Math.max(0,Math.min(20,h)),K.toString=function(){return c+""},K}return{format:z,formatPrefix:function(c,D){var it=z(((c=Object(g.b)(c)).type="f",c)),Q=3*Math.max(-8,Math.min(8,Math.floor(Object(d.a)(D)/3))),W=Math.pow(10,-Q),k=X[8+Q/3];return function(_){return it(W*_)+k}}}}},,,function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return d}),F.d(xt,"c",function(){return g}),F.d(xt,"a",function(){return R});var Pt,d,g,L=F(40);function R(st){return Pt=Object(L.a)(st),d=Pt.format,g=Pt.formatPrefix,Pt}R({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(Oe,xt,F){"use strict";F.r(xt);var Pt=F(43);F.d(xt,"formatDefaultLocale",function(){return Pt.a}),F.d(xt,"format",function(){return Pt.b}),F.d(xt,"formatPrefix",function(){return Pt.c});var d=F(40);F.d(xt,"formatLocale",function(){return d.a});var g=F(25);F.d(xt,"formatSpecifier",function(){return g.b}),F.d(xt,"FormatSpecifier",function(){return g.a});var L=F(63);F.d(xt,"precisionFixed",function(){return L.a});var R=F(64);F.d(xt,"precisionPrefix",function(){return R.a});var st=F(65);F.d(xt,"precisionRound",function(){return st.a})},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return d}),F.d(xt,"c",function(){return g}),F.d(xt,"d",function(){return L}),F.d(xt,"e",function(){return R}),F.d(xt,"a",function(){return $});var Pt,d,g,L,R,st=F(54);function $(J){return Pt=Object(st.a)(J),d=Pt.format,g=Pt.parse,L=Pt.utcFormat,R=Pt.utcParse,Pt}$({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})},function(Oe,xt,F){"use strict";F.r(xt);function Pt(){}function d(T,A){var M=new Pt;if(T instanceof Pt)T.each(function(D,it){M.set(it,D)});else if(Array.isArray(T)){var O,H=-1,z=T.length;if(A==null)for(;++H=O.length)return T!=null&&c.sort(T),A!=null?A(c):c;for(var W,k,_,C=-1,h=c.length,l=O[D++],u=g(),v=it();++CO.length)return it;var W,k=H[Q-1];return A!=null&&Q>=O.length?W=it.entries():(W=[],it.each(function(_,C){W.push({key:C,values:D(_,Q)})})),k!=null?W.sort(function(_,C){return k(_.key,C.key)}):W}(z(c,0,$,J),0)},key:function(c){return O.push(c),M},sortKeys:function(c){return H[O.length-1]=c,M},sortValues:function(c){return T=c,M},rollup:function(c){return A=c,M}}};function R(){return{}}function st(T,A,M){T[A]=M}function $(){return g()}function J(T,A,M){T.set(A,M)}function X(){}var q=g.prototype;function Z(T,A){var M=new X;if(T instanceof X)T.each(function(z){M.add(z)});else if(T){var O=-1,H=T.length;if(A==null)for(;++O=12)]},q:function(ke){return 1+~~(ke.getMonth()/3)},Q:Kt,s:Jt,S:nt,u:x,U:y,V:j,w:lt,W:rt,x:null,X:null,y:gt,Y:vt,Z:Ot,"%":Qt},Ue={a:function(ke){return xe[ke.getUTCDay()]},A:function(ke){return Se[ke.getUTCDay()]},b:function(ke){return pn[ke.getUTCMonth()]},B:function(ke){return Ze[ke.getUTCMonth()]},c:null,d:At,e:At,f:Dt,H:$t,I:Xt,j:Ct,L:wt,m:jt,M:re,p:function(ke){return ce[+(ke.getUTCHours()>=12)]},q:function(ke){return 1+~~(ke.getUTCMonth()/3)},Q:Kt,s:Jt,S:le,u:Gt,U:he,V:ve,w:Ce,W:Te,x:null,X:null,y:Ke,Y:rn,Z:un,"%":Qt},Re={a:function(ke,on,_n){var Pe=Qn.exec(on.slice(_n));return Pe?(ke.w=dr[Pe[0].toLowerCase()],_n+Pe[0].length):-1},A:function(ke,on,_n){var Pe=vn.exec(on.slice(_n));return Pe?(ke.w=Tn[Pe[0].toLowerCase()],_n+Pe[0].length):-1},b:function(ke,on,_n){var Pe=qe.exec(on.slice(_n));return Pe?(ke.m=be[Pe[0].toLowerCase()],_n+Pe[0].length):-1},B:function(ke,on,_n){var Pe=ye.exec(on.slice(_n));return Pe?(ke.m=Fe[Pe[0].toLowerCase()],_n+Pe[0].length):-1},c:function(ke,on,_n){return Mn(ke,Rt,on,_n)},d:C,e:C,f:S,H:l,I:l,j:h,L:I,m:_,M:u,p:function(ke,on,_n){var Pe=bn.exec(on.slice(_n));return Pe?(ke.p=Ln[Pe[0].toLowerCase()],_n+Pe[0].length):-1},q:k,Q:K,s:ct,S:v,u:H,U:z,V:c,w:O,W:D,x:function(ke,on,_n){return Mn(ke,zt,on,_n)},X:function(ke,on,_n){return Mn(ke,Ft,on,_n)},y:Q,Y:it,Z:W,"%":b};function Ie(ke,on){return function(_n){var Pe,wn,an,gn=[],Sn=-1,xn=0,hr=ke.length;for(_n instanceof Date||(_n=new Date(+_n));++Sn53)return null;"w"in an||(an.w=1),"Z"in an?(wn=(Pe=J(X(an.y,0,1))).getUTCDay(),Pe=wn>4||wn===0?Pt.c.ceil(Pe):Object(Pt.c)(Pe),Pe=d.a.offset(Pe,7*(an.V-1)),an.y=Pe.getUTCFullYear(),an.m=Pe.getUTCMonth(),an.d=Pe.getUTCDate()+(an.w+6)%7):(wn=(Pe=$(X(an.y,0,1))).getDay(),Pe=wn>4||wn===0?g.c.ceil(Pe):Object(g.c)(Pe),Pe=L.b.offset(Pe,7*(an.V-1)),an.y=Pe.getFullYear(),an.m=Pe.getMonth(),an.d=Pe.getDate()+(an.w+6)%7)}else("W"in an||"U"in an)&&("w"in an||(an.w="u"in an?an.u%7:"W"in an?1:0),wn="Z"in an?J(X(an.y,0,1)).getUTCDay():$(X(an.y,0,1)).getDay(),an.m=0,an.d="W"in an?(an.w+6)%7+7*an.W-(wn+5)%7:an.w+7*an.U-(wn+6)%7);return"Z"in an?(an.H+=an.Z/100|0,an.M+=an.Z%100,J(an)):$(an)}}function Mn(ke,on,_n,Pe){for(var wn,an,gn=0,Sn=on.length,xn=_n.length;gn=xn)return-1;if((wn=on.charCodeAt(gn++))===37){if(wn=on.charAt(gn++),!(an=Re[wn in Z?on.charAt(gn++):wn])||(Pe=an(ke,_n,Pe))<0)return-1}else if(wn!=_n.charCodeAt(Pe++))return-1}return Pe}return je.x=Ie(zt,je),je.X=Ie(Ft,je),je.c=Ie(Rt,je),Ue.x=Ie(zt,Ue),Ue.X=Ie(Ft,Ue),Ue.c=Ie(Rt,Ue),{format:function(ke){var on=Ie(ke+="",je);return on.toString=function(){return ke},on},parse:function(ke){var on=tn(ke+="",!1);return on.toString=function(){return ke},on},utcFormat:function(ke){var on=Ie(ke+="",Ue);return on.toString=function(){return ke},on},utcParse:function(ke){var on=tn(ke+="",!0);return on.toString=function(){return ke},on}}}var Z={"-":"",_:" ",0:"0"},Y=/^\s*\d+/,V=/^%/,N=/[\\^$*+?|[\]().{}]/g;function U(Et,Rt,zt){var Ft=Et<0?"-":"",ce=(Ft?-Et:Et)+"",Se=ce.length;return Ft+(Se68?1900:2e3),zt+Ft[0].length):-1}function W(Et,Rt,zt){var Ft=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Rt.slice(zt,zt+6));return Ft?(Et.Z=Ft[1]?0:-(Ft[2]+(Ft[3]||"00")),zt+Ft[0].length):-1}function k(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+1));return Ft?(Et.q=3*Ft[0]-3,zt+Ft[0].length):-1}function _(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.m=Ft[0]-1,zt+Ft[0].length):-1}function C(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.d=+Ft[0],zt+Ft[0].length):-1}function h(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.m=0,Et.d=+Ft[0],zt+Ft[0].length):-1}function l(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.H=+Ft[0],zt+Ft[0].length):-1}function u(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.M=+Ft[0],zt+Ft[0].length):-1}function v(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.S=+Ft[0],zt+Ft[0].length):-1}function I(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.L=+Ft[0],zt+Ft[0].length):-1}function S(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+6));return Ft?(Et.L=Math.floor(Ft[0]/1e3),zt+Ft[0].length):-1}function b(Et,Rt,zt){var Ft=V.exec(Rt.slice(zt,zt+1));return Ft?zt+Ft[0].length:-1}function K(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.Q=+Ft[0],zt+Ft[0].length):-1}function ct(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.s=+Ft[0],zt+Ft[0].length):-1}function et(Et,Rt){return U(Et.getDate(),Rt,2)}function dt(Et,Rt){return U(Et.getHours(),Rt,2)}function pt(Et,Rt){return U(Et.getHours()%12||12,Rt,2)}function bt(Et,Rt){return U(1+L.b.count(Object(R.a)(Et),Et),Rt,3)}function Mt(Et,Rt){return U(Et.getMilliseconds(),Rt,3)}function w(Et,Rt){return Mt(Et,Rt)+"000"}function B(Et,Rt){return U(Et.getMonth()+1,Rt,2)}function tt(Et,Rt){return U(Et.getMinutes(),Rt,2)}function nt(Et,Rt){return U(Et.getSeconds(),Rt,2)}function x(Et){var Rt=Et.getDay();return Rt===0?7:Rt}function y(Et,Rt){return U(g.g.count(Object(R.a)(Et)-1,Et),Rt,2)}function j(Et,Rt){var zt=Et.getDay();return Et=zt>=4||zt===0?Object(g.i)(Et):g.i.ceil(Et),U(g.i.count(Object(R.a)(Et),Et)+(Object(R.a)(Et).getDay()===4),Rt,2)}function lt(Et){return Et.getDay()}function rt(Et,Rt){return U(g.c.count(Object(R.a)(Et)-1,Et),Rt,2)}function gt(Et,Rt){return U(Et.getFullYear()%100,Rt,2)}function vt(Et,Rt){return U(Et.getFullYear()%1e4,Rt,4)}function Ot(Et){var Rt=Et.getTimezoneOffset();return(Rt>0?"-":(Rt*=-1,"+"))+U(Rt/60|0,"0",2)+U(Rt%60,"0",2)}function At(Et,Rt){return U(Et.getUTCDate(),Rt,2)}function $t(Et,Rt){return U(Et.getUTCHours(),Rt,2)}function Xt(Et,Rt){return U(Et.getUTCHours()%12||12,Rt,2)}function Ct(Et,Rt){return U(1+d.a.count(Object(st.a)(Et),Et),Rt,3)}function wt(Et,Rt){return U(Et.getUTCMilliseconds(),Rt,3)}function Dt(Et,Rt){return wt(Et,Rt)+"000"}function jt(Et,Rt){return U(Et.getUTCMonth()+1,Rt,2)}function re(Et,Rt){return U(Et.getUTCMinutes(),Rt,2)}function le(Et,Rt){return U(Et.getUTCSeconds(),Rt,2)}function Gt(Et){var Rt=Et.getUTCDay();return Rt===0?7:Rt}function he(Et,Rt){return U(Pt.g.count(Object(st.a)(Et)-1,Et),Rt,2)}function ve(Et,Rt){var zt=Et.getUTCDay();return Et=zt>=4||zt===0?Object(Pt.i)(Et):Pt.i.ceil(Et),U(Pt.i.count(Object(st.a)(Et),Et)+(Object(st.a)(Et).getUTCDay()===4),Rt,2)}function Ce(Et){return Et.getUTCDay()}function Te(Et,Rt){return U(Pt.c.count(Object(st.a)(Et)-1,Et),Rt,2)}function Ke(Et,Rt){return U(Et.getUTCFullYear()%100,Rt,2)}function rn(Et,Rt){return U(Et.getUTCFullYear()%1e4,Rt,4)}function un(){return"+0000"}function Qt(){return"%"}function Kt(Et){return+Et}function Jt(Et){return Math.floor(+Et/1e3)}},function(Oe,xt,F){"use strict";var Pt=F(6),d=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,g=new RegExp(d.source,"g");xt.a=function(L,R){var st,$,J,X=d.lastIndex=g.lastIndex=0,q=-1,Z=[],Y=[];for(L+="",R+="";(st=d.exec(L))&&($=g.exec(R));)(J=$.index)>X&&(J=R.slice(X,J),Z[q]?Z[q]+=J:Z[++q]=J),(st=st[0])===($=$[0])?Z[q]?Z[q]+=$:Z[++q]=$:(Z[++q]=null,Y.push({i:q,x:Object(Pt.a)(st,$)})),X=g.lastIndex;return X=0&&(q=X.slice(Z+1),X=X.slice(0,Z)),X&&!J.hasOwnProperty(X))throw new Error("unknown type: "+X);return{type:X,name:q}})}function R($,J){for(var X,q=0,Z=$.length;q0)for(var X,q,Z=new Array(X),Y=0;Y1e-6)if(Math.abs(He*ge-Ae*Qe)>1e-6&&Wt){var kn=Vt-se,Bn=_t-pe,Yn=ge*ge+Ae*Ae,fr=kn*kn+Bn*Bn,or=Math.sqrt(Yn),Zn=Math.sqrt(sn),ur=Wt*Math.tan((Pt-Math.acos((Yn+sn-fr)/(2*or*Zn)))/2),Tr=ur/Zn,Sr=ur/or;Math.abs(Tr-1)>1e-6&&(this._+="L"+(ht+Tr*Qe)+","+(Nt+Tr*He)),this._+="A"+Wt+","+Wt+",0,0,"+ +(He*kn>Qe*Bn)+","+(this._x1=ht+Sr*ge)+","+(this._y1=Nt+Sr*Ae)}else this._+="L"+(this._x1=ht)+","+(this._y1=Nt)},arc:function(ht,Nt,Vt,_t,Wt,se){ht=+ht,Nt=+Nt,se=!!se;var pe=(Vt=+Vt)*Math.cos(_t),ge=Vt*Math.sin(_t),Ae=ht+pe,Qe=Nt+ge,He=1^se,sn=se?_t-Wt:Wt-_t;if(Vt<0)throw new Error("negative radius: "+Vt);this._x1===null?this._+="M"+Ae+","+Qe:(Math.abs(this._x1-Ae)>1e-6||Math.abs(this._y1-Qe)>1e-6)&&(this._+="L"+Ae+","+Qe),Vt&&(sn<0&&(sn=sn%d+d),sn>g?this._+="A"+Vt+","+Vt+",0,1,"+He+","+(ht-pe)+","+(Nt-ge)+"A"+Vt+","+Vt+",0,1,"+He+","+(this._x1=Ae)+","+(this._y1=Qe):sn>1e-6&&(this._+="A"+Vt+","+Vt+",0,"+ +(sn>=Pt)+","+He+","+(this._x1=ht+Vt*Math.cos(Wt))+","+(this._y1=Nt+Vt*Math.sin(Wt))))},rect:function(ht,Nt,Vt,_t){this._+="M"+(this._x0=this._x1=+ht)+","+(this._y0=this._y1=+Nt)+"h"+ +Vt+"v"+ +_t+"h"+-Vt+"Z"},toString:function(){return this._}};var st=R,$=function(ht){return function(){return ht}},J=Math.abs,X=Math.atan2,q=Math.cos,Z=Math.max,Y=Math.min,V=Math.sin,N=Math.sqrt,U=Math.PI,T=U/2,A=2*U;function M(ht){return ht>1?0:ht<-1?U:Math.acos(ht)}function O(ht){return ht>=1?T:ht<=-1?-T:Math.asin(ht)}function H(ht){return ht.innerRadius}function z(ht){return ht.outerRadius}function c(ht){return ht.startAngle}function D(ht){return ht.endAngle}function it(ht){return ht&&ht.padAngle}function Q(ht,Nt,Vt,_t,Wt,se,pe,ge){var Ae=Vt-ht,Qe=_t-Nt,He=pe-Wt,sn=ge-se,kn=sn*Ae-He*Qe;if(!(kn*kn<1e-12))return[ht+(kn=(He*(Nt-se)-sn*(ht-Wt))/kn)*Ae,Nt+kn*Qe]}function W(ht,Nt,Vt,_t,Wt,se,pe){var ge=ht-Vt,Ae=Nt-_t,Qe=(pe?se:-se)/N(ge*ge+Ae*Ae),He=Qe*Ae,sn=-Qe*ge,kn=ht+He,Bn=Nt+sn,Yn=Vt+He,fr=_t+sn,or=(kn+Yn)/2,Zn=(Bn+fr)/2,ur=Yn-kn,Tr=fr-Bn,Sr=ur*ur+Tr*Tr,Br=Wt-se,Kr=kn*fr-Yn*Bn,ui=(Tr<0?-1:1)*N(Z(0,Br*Br*Sr-Kr*Kr)),Ri=(Kr*Tr-ur*ui)/Sr,Ai=(-Kr*ur-Tr*ui)/Sr,yi=(Kr*Tr+ur*ui)/Sr,Oi=(-Kr*ur+Tr*ui)/Sr,Li=Ri-or,Pi=Ai-Zn,Vi=yi-or,ro=Oi-Zn;return Li*Li+Pi*Pi>Vi*Vi+ro*ro&&(Ri=yi,Ai=Oi),{cx:Ri,cy:Ai,x01:-He,y01:-sn,x11:Ri*(Wt/Br-1),y11:Ai*(Wt/Br-1)}}var k=function(){var ht=H,Nt=z,Vt=$(0),_t=null,Wt=c,se=D,pe=it,ge=null;function Ae(){var Qe,He,sn=+ht.apply(this,arguments),kn=+Nt.apply(this,arguments),Bn=Wt.apply(this,arguments)-T,Yn=se.apply(this,arguments)-T,fr=J(Yn-Bn),or=Yn>Bn;if(ge||(ge=Qe=st()),kn1e-12)if(fr>A-1e-12)ge.moveTo(kn*q(Bn),kn*V(Bn)),ge.arc(0,0,kn,Bn,Yn,!or),sn>1e-12&&(ge.moveTo(sn*q(Yn),sn*V(Yn)),ge.arc(0,0,sn,Yn,Bn,or));else{var Zn,ur,Tr=Bn,Sr=Yn,Br=Bn,Kr=Yn,ui=fr,Ri=fr,Ai=pe.apply(this,arguments)/2,yi=Ai>1e-12&&(_t?+_t.apply(this,arguments):N(sn*sn+kn*kn)),Oi=Y(J(kn-sn)/2,+Vt.apply(this,arguments)),Li=Oi,Pi=Oi;if(yi>1e-12){var Vi=O(yi/sn*V(Ai)),ro=O(yi/kn*V(Ai));(ui-=2*Vi)>1e-12?(Br+=Vi*=or?1:-1,Kr-=Vi):(ui=0,Br=Kr=(Bn+Yn)/2),(Ri-=2*ro)>1e-12?(Tr+=ro*=or?1:-1,Sr-=ro):(Ri=0,Tr=Sr=(Bn+Yn)/2)}var to=kn*q(Tr),ko=kn*V(Tr),Ro=sn*q(Kr),go=sn*V(Kr);if(Oi>1e-12){var io,_o=kn*q(Sr),$o=kn*V(Sr),so=sn*q(Br),ki=sn*V(Br);if(fr1e-12?Pi>1e-12?(Zn=W(so,ki,to,ko,kn,Pi,or),ur=W(_o,$o,Ro,go,kn,Pi,or),ge.moveTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Pi1e-12&&ui>1e-12?Li>1e-12?(Zn=W(Ro,go,_o,$o,sn,-Li,or),ur=W(to,ko,so,ki,sn,-Li,or),ge.lineTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Li=kn;--Bn)ge.point(ur[Bn],Tr[Bn]);ge.lineEnd(),ge.areaEnd()}Zn&&(ur[sn]=+ht(Yn,sn,He),Tr[sn]=+Vt(Yn,sn,He),ge.point(Nt?+Nt(Yn,sn,He):ur[sn],_t?+_t(Yn,sn,He):Tr[sn]))}if(fr)return ge=null,fr+""||null}function Qe(){return u().defined(Wt).curve(pe).context(se)}return Ae.x=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Nt=null,Ae):ht},Ae.x0=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Ae):ht},Ae.x1=function(He){return arguments.length?(Nt=He==null?null:typeof He=="function"?He:$(+He),Ae):Nt},Ae.y=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),_t=null,Ae):Vt},Ae.y0=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),Ae):Vt},Ae.y1=function(He){return arguments.length?(_t=He==null?null:typeof He=="function"?He:$(+He),Ae):_t},Ae.lineX0=Ae.lineY0=function(){return Qe().x(ht).y(Vt)},Ae.lineY1=function(){return Qe().x(ht).y(_t)},Ae.lineX1=function(){return Qe().x(Nt).y(Vt)},Ae.defined=function(He){return arguments.length?(Wt=typeof He=="function"?He:$(!!He),Ae):Wt},Ae.curve=function(He){return arguments.length?(pe=He,se!=null&&(ge=pe(se)),Ae):pe},Ae.context=function(He){return arguments.length?(He==null?se=ge=null:ge=pe(se=He),Ae):se},Ae},I=function(ht,Nt){return Ntht?1:Nt>=ht?0:NaN},S=function(ht){return ht},b=function(){var ht=S,Nt=I,Vt=null,_t=$(0),Wt=$(A),se=$(0);function pe(ge){var Ae,Qe,He,sn,kn,Bn=ge.length,Yn=0,fr=new Array(Bn),or=new Array(Bn),Zn=+_t.apply(this,arguments),ur=Math.min(A,Math.max(-A,Wt.apply(this,arguments)-Zn)),Tr=Math.min(Math.abs(ur)/Bn,se.apply(this,arguments)),Sr=Tr*(ur<0?-1:1);for(Ae=0;Ae0&&(Yn+=kn);for(Nt!=null?fr.sort(function(Br,Kr){return Nt(or[Br],or[Kr])}):Vt!=null&&fr.sort(function(Br,Kr){return Vt(ge[Br],ge[Kr])}),Ae=0,He=Yn?(ur-Bn*Sr)/Yn:0;Ae0?kn*He:0)+Sr,or[Qe]={data:ge[Qe],index:Ae,value:kn,startAngle:Zn,endAngle:sn,padAngle:Tr};return or}return pe.value=function(ge){return arguments.length?(ht=typeof ge=="function"?ge:$(+ge),pe):ht},pe.sortValues=function(ge){return arguments.length?(Nt=ge,Vt=null,pe):Nt},pe.sort=function(ge){return arguments.length?(Vt=ge,Nt=null,pe):Vt},pe.startAngle=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.endAngle=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.padAngle=function(ge){return arguments.length?(se=typeof ge=="function"?ge:$(+ge),pe):se},pe},K=et(C);function ct(ht){this._curve=ht}function et(ht){function Nt(Vt){return new ct(ht(Vt))}return Nt._curve=ht,Nt}function dt(ht){var Nt=ht.curve;return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht.curve=function(Vt){return arguments.length?Nt(et(Vt)):Nt()._curve},ht}ct.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(ht,Nt){this._curve.point(Nt*Math.sin(ht),Nt*-Math.cos(ht))}};var pt=function(){return dt(u().curve(K))},bt=function(){var ht=v().curve(K),Nt=ht.curve,Vt=ht.lineX0,_t=ht.lineX1,Wt=ht.lineY0,se=ht.lineY1;return ht.angle=ht.x,delete ht.x,ht.startAngle=ht.x0,delete ht.x0,ht.endAngle=ht.x1,delete ht.x1,ht.radius=ht.y,delete ht.y,ht.innerRadius=ht.y0,delete ht.y0,ht.outerRadius=ht.y1,delete ht.y1,ht.lineStartAngle=function(){return dt(Vt())},delete ht.lineX0,ht.lineEndAngle=function(){return dt(_t())},delete ht.lineX1,ht.lineInnerRadius=function(){return dt(Wt())},delete ht.lineY0,ht.lineOuterRadius=function(){return dt(se())},delete ht.lineY1,ht.curve=function(pe){return arguments.length?Nt(et(pe)):Nt()._curve},ht},Mt=function(ht,Nt){return[(Nt=+Nt)*Math.cos(ht-=Math.PI/2),Nt*Math.sin(ht)]},w=Array.prototype.slice;function B(ht){return ht.source}function tt(ht){return ht.target}function nt(ht){var Nt=B,Vt=tt,_t=h,Wt=l,se=null;function pe(){var ge,Ae=w.call(arguments),Qe=Nt.apply(this,Ae),He=Vt.apply(this,Ae);if(se||(se=ge=st()),ht(se,+_t.apply(this,(Ae[0]=Qe,Ae)),+Wt.apply(this,Ae),+_t.apply(this,(Ae[0]=He,Ae)),+Wt.apply(this,Ae)),ge)return se=null,ge+""||null}return pe.source=function(ge){return arguments.length?(Nt=ge,pe):Nt},pe.target=function(ge){return arguments.length?(Vt=ge,pe):Vt},pe.x=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.y=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.context=function(ge){return arguments.length?(se=ge==null?null:ge,pe):se},pe}function x(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt=(Nt+_t)/2,Vt,Nt,Wt,_t,Wt)}function y(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt,Vt=(Vt+Wt)/2,_t,Vt,_t,Wt)}function j(ht,Nt,Vt,_t,Wt){var se=Mt(Nt,Vt),pe=Mt(Nt,Vt=(Vt+Wt)/2),ge=Mt(_t,Vt),Ae=Mt(_t,Wt);ht.moveTo(se[0],se[1]),ht.bezierCurveTo(pe[0],pe[1],ge[0],ge[1],Ae[0],Ae[1])}function lt(){return nt(x)}function rt(){return nt(y)}function gt(){var ht=nt(j);return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht}var vt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/U);ht.moveTo(Vt,0),ht.arc(0,0,Vt,0,A)}},Ot={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/5)/2;ht.moveTo(-3*Vt,-Vt),ht.lineTo(-Vt,-Vt),ht.lineTo(-Vt,-3*Vt),ht.lineTo(Vt,-3*Vt),ht.lineTo(Vt,-Vt),ht.lineTo(3*Vt,-Vt),ht.lineTo(3*Vt,Vt),ht.lineTo(Vt,Vt),ht.lineTo(Vt,3*Vt),ht.lineTo(-Vt,3*Vt),ht.lineTo(-Vt,Vt),ht.lineTo(-3*Vt,Vt),ht.closePath()}},At=Math.sqrt(1/3),$t=2*At,Xt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/$t),_t=Vt*At;ht.moveTo(0,-Vt),ht.lineTo(_t,0),ht.lineTo(0,Vt),ht.lineTo(-_t,0),ht.closePath()}},Ct=Math.sin(U/10)/Math.sin(7*U/10),wt=Math.sin(A/10)*Ct,Dt=-Math.cos(A/10)*Ct,jt={draw:function(ht,Nt){var Vt=Math.sqrt(.8908130915292852*Nt),_t=wt*Vt,Wt=Dt*Vt;ht.moveTo(0,-Vt),ht.lineTo(_t,Wt);for(var se=1;se<5;++se){var pe=A*se/5,ge=Math.cos(pe),Ae=Math.sin(pe);ht.lineTo(Ae*Vt,-ge*Vt),ht.lineTo(ge*_t-Ae*Wt,Ae*_t+ge*Wt)}ht.closePath()}},re={draw:function(ht,Nt){var Vt=Math.sqrt(Nt),_t=-Vt/2;ht.rect(_t,_t,Vt,Vt)}},le=Math.sqrt(3),Gt={draw:function(ht,Nt){var Vt=-Math.sqrt(Nt/(3*le));ht.moveTo(0,2*Vt),ht.lineTo(-le*Vt,-Vt),ht.lineTo(le*Vt,-Vt),ht.closePath()}},he=Math.sqrt(3)/2,ve=1/Math.sqrt(12),Ce=3*(ve/2+1),Te={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/Ce),_t=Vt/2,Wt=Vt*ve,se=_t,pe=Vt*ve+Vt,ge=-se,Ae=pe;ht.moveTo(_t,Wt),ht.lineTo(se,pe),ht.lineTo(ge,Ae),ht.lineTo(-.5*_t-he*Wt,he*_t+-.5*Wt),ht.lineTo(-.5*se-he*pe,he*se+-.5*pe),ht.lineTo(-.5*ge-he*Ae,he*ge+-.5*Ae),ht.lineTo(-.5*_t+he*Wt,-.5*Wt-he*_t),ht.lineTo(-.5*se+he*pe,-.5*pe-he*se),ht.lineTo(-.5*ge+he*Ae,-.5*Ae-he*ge),ht.closePath()}},Ke=[vt,Ot,Xt,re,jt,Gt,Te],rn=function(){var ht=$(vt),Nt=$(64),Vt=null;function _t(){var Wt;if(Vt||(Vt=Wt=st()),ht.apply(this,arguments).draw(Vt,+Nt.apply(this,arguments)),Wt)return Vt=null,Wt+""||null}return _t.type=function(Wt){return arguments.length?(ht=typeof Wt=="function"?Wt:$(Wt),_t):ht},_t.size=function(Wt){return arguments.length?(Nt=typeof Wt=="function"?Wt:$(+Wt),_t):Nt},_t.context=function(Wt){return arguments.length?(Vt=Wt==null?null:Wt,_t):Vt},_t},un=function(){};function Qt(ht,Nt,Vt){ht._context.bezierCurveTo((2*ht._x0+ht._x1)/3,(2*ht._y0+ht._y1)/3,(ht._x0+2*ht._x1)/3,(ht._y0+2*ht._y1)/3,(ht._x0+4*ht._x1+Nt)/6,(ht._y0+4*ht._y1+Vt)/6)}function Kt(ht){this._context=ht}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Qt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Jt=function(ht){return new Kt(ht)};function Et(ht){this._context=ht}Et.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x2=ht,this._y2=Nt;break;case 1:this._point=2,this._x3=ht,this._y3=Nt;break;case 2:this._point=3,this._x4=ht,this._y4=Nt,this._context.moveTo((this._x0+4*this._x1+ht)/6,(this._y0+4*this._y1+Nt)/6);break;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Rt=function(ht){return new Et(ht)};function zt(ht){this._context=ht}zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Vt=(this._x0+4*this._x1+ht)/6,_t=(this._y0+4*this._y1+Nt)/6;this._line?this._context.lineTo(Vt,_t):this._context.moveTo(Vt,_t);break;case 3:this._point=4;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Ft=function(ht){return new zt(ht)};function ce(ht,Nt){this._basis=new Kt(ht),this._beta=Nt}ce.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length-1;if(Vt>0)for(var _t,Wt=ht[0],se=Nt[0],pe=ht[Vt]-Wt,ge=Nt[Vt]-se,Ae=-1;++Ae<=Vt;)_t=Ae/Vt,this._basis.point(this._beta*ht[Ae]+(1-this._beta)*(Wt+_t*pe),this._beta*Nt[Ae]+(1-this._beta)*(se+_t*ge));this._x=this._y=null,this._basis.lineEnd()},point:function(ht,Nt){this._x.push(+ht),this._y.push(+Nt)}};var Se=function ht(Nt){function Vt(_t){return Nt===1?new Kt(_t):new ce(_t,Nt)}return Vt.beta=function(_t){return ht(+_t)},Vt}(.85);function xe(ht,Nt,Vt){ht._context.bezierCurveTo(ht._x1+ht._k*(ht._x2-ht._x0),ht._y1+ht._k*(ht._y2-ht._y0),ht._x2+ht._k*(ht._x1-Nt),ht._y2+ht._k*(ht._y1-Vt),ht._x2,ht._y2)}function Ze(ht,Nt){this._context=ht,this._k=(1-Nt)/6}Ze.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:xe(this,this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2,this._x1=ht,this._y1=Nt;break;case 2:this._point=3;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var pn=function ht(Nt){function Vt(_t){return new Ze(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function bn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}bn.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Ln=function ht(Nt){function Vt(_t){return new bn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function vn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}vn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Tn=function ht(Nt){function Vt(_t){return new vn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function Qn(ht,Nt,Vt){var _t=ht._x1,Wt=ht._y1,se=ht._x2,pe=ht._y2;if(ht._l01_a>1e-12){var ge=2*ht._l01_2a+3*ht._l01_a*ht._l12_a+ht._l12_2a,Ae=3*ht._l01_a*(ht._l01_a+ht._l12_a);_t=(_t*ge-ht._x0*ht._l12_2a+ht._x2*ht._l01_2a)/Ae,Wt=(Wt*ge-ht._y0*ht._l12_2a+ht._y2*ht._l01_2a)/Ae}if(ht._l23_a>1e-12){var Qe=2*ht._l23_2a+3*ht._l23_a*ht._l12_a+ht._l12_2a,He=3*ht._l23_a*(ht._l23_a+ht._l12_a);se=(se*Qe+ht._x1*ht._l23_2a-Nt*ht._l12_2a)/He,pe=(pe*Qe+ht._y1*ht._l23_2a-Vt*ht._l12_2a)/He}ht._context.bezierCurveTo(_t,Wt,se,pe,ht._x2,ht._y2)}function dr(ht,Nt){this._context=ht,this._alpha=Nt}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var ye=function ht(Nt){function Vt(_t){return Nt?new dr(_t,Nt):new Ze(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Fe(ht,Nt){this._context=ht,this._alpha=Nt}Fe.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var qe=function ht(Nt){function Vt(_t){return Nt?new Fe(_t,Nt):new bn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function be(ht,Nt){this._context=ht,this._alpha=Nt}be.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var je=function ht(Nt){function Vt(_t){return Nt?new be(_t,Nt):new vn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Ue(ht){this._context=ht}Ue.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(ht,Nt){ht=+ht,Nt=+Nt,this._point?this._context.lineTo(ht,Nt):(this._point=1,this._context.moveTo(ht,Nt))}};var Re=function(ht){return new Ue(ht)};function Ie(ht){return ht<0?-1:1}function tn(ht,Nt,Vt){var _t=ht._x1-ht._x0,Wt=Nt-ht._x1,se=(ht._y1-ht._y0)/(_t||Wt<0&&-0),pe=(Vt-ht._y1)/(Wt||_t<0&&-0),ge=(se*Wt+pe*_t)/(_t+Wt);return(Ie(se)+Ie(pe))*Math.min(Math.abs(se),Math.abs(pe),.5*Math.abs(ge))||0}function Mn(ht,Nt){var Vt=ht._x1-ht._x0;return Vt?(3*(ht._y1-ht._y0)/Vt-Nt)/2:Nt}function ke(ht,Nt,Vt){var _t=ht._x0,Wt=ht._y0,se=ht._x1,pe=ht._y1,ge=(se-_t)/3;ht._context.bezierCurveTo(_t+ge,Wt+ge*Nt,se-ge,pe-ge*Vt,se,pe)}function on(ht){this._context=ht}function _n(ht){this._context=new Pe(ht)}function Pe(ht){this._context=ht}function wn(ht){return new on(ht)}function an(ht){return new _n(ht)}function gn(ht){this._context=ht}function Sn(ht){var Nt,Vt,_t=ht.length-1,Wt=new Array(_t),se=new Array(_t),pe=new Array(_t);for(Wt[0]=0,se[0]=2,pe[0]=ht[0]+2*ht[1],Nt=1;Nt<_t-1;++Nt)Wt[Nt]=1,se[Nt]=4,pe[Nt]=4*ht[Nt]+2*ht[Nt+1];for(Wt[_t-1]=2,se[_t-1]=7,pe[_t-1]=8*ht[_t-1]+ht[_t],Nt=1;Nt<_t;++Nt)Vt=Wt[Nt]/se[Nt-1],se[Nt]-=Vt,pe[Nt]-=Vt*pe[Nt-1];for(Wt[_t-1]=pe[_t-1]/se[_t-1],Nt=_t-2;Nt>=0;--Nt)Wt[Nt]=(pe[Nt]-Wt[Nt+1])/se[Nt];for(se[_t-1]=(ht[_t]+Wt[_t-1])/2,Nt=0;Nt<_t-1;++Nt)se[Nt]=2*ht[Nt+1]-Wt[Nt+1];return[Wt,se]}on.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:ke(this,this._t0,Mn(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){var Vt=NaN;if(Nt=+Nt,(ht=+ht)!==this._x1||Nt!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,ke(this,Mn(this,Vt=tn(this,ht,Nt)),Vt);break;default:ke(this,this._t0,Vt=tn(this,ht,Nt))}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt,this._t0=Vt}}},(_n.prototype=Object.create(on.prototype)).point=function(ht,Nt){on.prototype.point.call(this,Nt,ht)},Pe.prototype={moveTo:function(ht,Nt){this._context.moveTo(Nt,ht)},closePath:function(){this._context.closePath()},lineTo:function(ht,Nt){this._context.lineTo(Nt,ht)},bezierCurveTo:function(ht,Nt,Vt,_t,Wt,se){this._context.bezierCurveTo(Nt,ht,_t,Vt,se,Wt)}},gn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length;if(Vt)if(this._line?this._context.lineTo(ht[0],Nt[0]):this._context.moveTo(ht[0],Nt[0]),Vt===2)this._context.lineTo(ht[1],Nt[1]);else for(var _t=Sn(ht),Wt=Sn(Nt),se=0,pe=1;pe=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,Nt),this._context.lineTo(ht,Nt);else{var Vt=this._x*(1-this._t)+ht*this._t;this._context.lineTo(Vt,this._y),this._context.lineTo(Vt,Nt)}}this._x=ht,this._y=Nt}};var nr=function(ht){return new hr(ht,.5)};function pr(ht){return new hr(ht,0)}function vr(ht){return new hr(ht,1)}var rr=function(ht,Nt){if((Wt=ht.length)>1)for(var Vt,_t,Wt,se=1,pe=ht[Nt[0]],ge=pe.length;se=0;)Vt[Nt]=Nt;return Vt};function jr(ht,Nt){return ht[Nt]}var lr=function(){var ht=$([]),Nt=Rr,Vt=rr,_t=jr;function Wt(se){var pe,ge,Ae=ht.apply(this,arguments),Qe=se.length,He=Ae.length,sn=new Array(He);for(pe=0;pe0){for(var Vt,_t,Wt,se=0,pe=ht[0].length;se0)for(var Vt,_t,Wt,se,pe,ge,Ae=0,Qe=ht[Nt[0]].length;Ae0?(_t[0]=se,_t[1]=se+=Wt):Wt<0?(_t[1]=pe,_t[0]=pe+=Wt):(_t[0]=0,_t[1]=Wt)},fi=function(ht,Nt){if((Vt=ht.length)>0){for(var Vt,_t=0,Wt=ht[Nt[0]],se=Wt.length;_t0&&(_t=(Vt=ht[Nt[0]]).length)>0){for(var Vt,_t,Wt,se=0,pe=1;pe<_t;++pe){for(var ge=0,Ae=0,Qe=0;gese&&(se=Nt,_t=Vt);return _t}var Bi=function(ht){var Nt=ht.map(te);return Rr(ht).sort(function(Vt,_t){return Nt[Vt]-Nt[_t]})};function te(ht){for(var Nt,Vt=0,_t=-1,Wt=ht.length;++_t=0&&Kt._call.call(null,Qt),Kt=Kt._next;--R})()}finally{R=0,function(){for(var Qt,Kt,Jt=Pt,Et=1/0;Jt;)Jt._call?(Et>Jt._time&&(Et=Jt._time),Qt=Jt,Jt=Jt._next):(Kt=Jt._next,Jt._next=null,Jt=Qt?Qt._next=Kt:Pt=Kt);d=Qt,O(Et)}(),X=0}}function M(){var Qt=Z.now(),Kt=Qt-J;Kt>1e3&&(q-=Kt,J=Qt)}function O(Qt){R||(st&&(st=clearTimeout(st)),Qt-X>24?(Qt<1/0&&(st=setTimeout(A,Qt-Z.now()-q)),$&&($=clearInterval($))):($||(J=Z.now(),$=setInterval(M,1e3)),R=1,Y(A)))}U.prototype=T.prototype={constructor:U,restart:function(Qt,Kt,Jt){if(typeof Qt!="function")throw new TypeError("callback is not a function");Jt=(Jt==null?V():+Jt)+(Kt==null?0:+Kt),this._next||d===this||(d?d._next=this:Pt=this,d=this),this._call=Qt,this._time=Jt,O()},stop:function(){this._call&&(this._call=null,this._time=1/0,O())}};var H=function(Qt,Kt,Jt){var Et=new U;return Kt=Kt==null?0:+Kt,Et.restart(function(Rt){Et.stop(),Qt(Rt+Kt)},Kt,Jt),Et},z=Object(L.a)("start","end","cancel","interrupt"),c=[],D=function(Qt,Kt,Jt,Et,Rt,zt){var Ft=Qt.__transition;if(Ft){if(Jt in Ft)return}else Qt.__transition={};(function(ce,Se,xe){var Ze,pn=ce.__transition;function bn(Tn){var Qn,dr,ye,Fe;if(xe.state!==1)return vn();for(Qn in pn)if((Fe=pn[Qn]).name===xe.name){if(Fe.state===3)return H(bn);Fe.state===4?(Fe.state=6,Fe.timer.stop(),Fe.on.call("interrupt",ce,ce.__data__,Fe.index,Fe.group),delete pn[Qn]):+Qn0)throw new Error("too late; already scheduled");return Jt}function Q(Qt,Kt){var Jt=W(Qt,Kt);if(Jt.state>3)throw new Error("too late; already running");return Jt}function W(Qt,Kt){var Jt=Qt.__transition;if(!Jt||!(Jt=Jt[Kt]))throw new Error("transition not found");return Jt}var k=function(Qt,Kt){var Jt,Et,Rt,zt=Qt.__transition,Ft=!0;if(zt){for(Rt in Kt=Kt==null?null:Kt+"",zt)(Jt=zt[Rt]).name===Kt?(Et=Jt.state>2&&Jt.state<5,Jt.state=6,Jt.timer.stop(),Jt.on.call(Et?"interrupt":"cancel",Qt,Qt.__data__,Jt.index,Jt.group),delete zt[Rt]):Ft=!1;Ft&&delete Qt.__transition}},_=F(75),C=F(20);function h(Qt,Kt){var Jt,Et;return function(){var Rt=Q(this,Qt),zt=Rt.tween;if(zt!==Jt){for(var Ft=0,ce=(Et=Jt=zt).length;Ft=0&&(ce=ce.slice(0,Se)),!ce||ce==="start"})}(Kt)?it:Q;return function(){var Ft=zt(this,Qt),ce=Ft.on;ce!==Et&&(Rt=(Et=ce).copy()).on(Kt,Jt),Ft.on=Rt}}var Ot=F(19),At=F(33),$t=g.b.prototype.constructor,Xt=F(35);function Ct(Qt){return function(){this.style.removeProperty(Qt)}}function wt(Qt,Kt,Jt){return function(Et){this.style.setProperty(Qt,Kt.call(this,Et),Jt)}}function Dt(Qt,Kt,Jt){var Et,Rt;function zt(){var Ft=Kt.apply(this,arguments);return Ft!==Rt&&(Et=(Rt=Ft)&&wt(Qt,Ft,Jt)),Et}return zt._value=Kt,zt}function jt(Qt){return function(Kt){this.textContent=Qt.call(this,Kt)}}function re(Qt){var Kt,Jt;function Et(){var Rt=Qt.apply(this,arguments);return Rt!==Jt&&(Kt=(Jt=Rt)&&jt(Rt)),Kt}return Et._value=Qt,Et}var le=0;function Gt(Qt,Kt,Jt,Et){this._groups=Qt,this._parents=Kt,this._name=Jt,this._id=Et}function he(Qt){return Object(g.b)().transition(Qt)}function ve(){return++le}var Ce=g.b.prototype;Gt.prototype=he.prototype={constructor:Gt,select:function(Qt){var Kt=this._name,Jt=this._id;typeof Qt!="function"&&(Qt=Object(Ot.a)(Qt));for(var Et=this._groups,Rt=Et.length,zt=new Array(Rt),Ft=0;Ft1&&Jt.name===Kt)return new Gt([[Qt]],rn,Kt,+Et)}return null};F.d(xt,"transition",function(){return he}),F.d(xt,"active",function(){return un}),F.d(xt,"interrupt",function(){return k})},function(Oe,xt,F){"use strict";var Pt;(Pt=function(){var d=F(71),g=F(39);return{axisTimeCombinations:{MINUTE_HOUR:"minute-hour",HOUR_DAY:"hour-daymonth",DAY_MONTH:"day-month",MONTH_YEAR:"month-year",CUSTOM:"custom"},curveMap:{linear:d.curveLinear,basis:d.curveBasis,cardinal:d.curveCardinal,catmullRom:d.curveCatmullRom,monotoneX:d.curveMonotoneX,monotoneY:d.curveMonotoneY,natural:d.curveNatural,step:d.curveStep,stepAfter:d.curveStepAfter,stepBefore:d.curveStepBefore},emptyDonutData:[{quantity:1,percentage:100}],timeBenchmarks:{ONE_AND_A_HALF_YEARS:47304e6,ONE_YEAR:31536000365,ONE_DAY:86400001},lineGradientId:"lineGradientId",timeIntervals:{timeMillisecond:g.timeMillisecond,utcMillisecond:g.utcMillisecond,timeSecond:g.timeSecond,utcSecond:g.utcSecond,timeMinute:g.timeMinute,utcMinute:g.utcMinute,timeHour:g.timeHour,utcHour:g.utcHour,timeDay:g.timeDay,utcDay:g.utcDay,timeWeek:g.timeWeek,utcWeek:g.utcWeek,timeSunday:g.timeSunday,utcSunday:g.utcSunday,timeMonday:g.timeMonday,utcMonday:g.utcMonday,timeTuesday:g.timeTuesday,utcTuesday:g.utcTuesday,timeWednesday:g.timeWednesday,utcWednesday:g.utcWednesday,timeThursday:g.timeThursday,utcThursday:g.utcThursday,timeFriday:g.timeFriday,utcFriday:g.utcFriday,timeSaturday:g.timeSaturday,utcSaturday:g.utcSaturday,timeMonth:g.timeMonth,utcMonth:g.utcMonth,timeYear:g.timeYear,utcYear:g.utcYear},FORMAT_LOCALE_URL:"https://cdn.jsdelivr.net/npm/d3-format/locale"}}.call(xt,F,xt,Oe))===void 0||(Oe.exports=Pt)},,function(Oe,xt,F){"use strict";var Pt,d,g,L,R=F(6),st=180/Math.PI,$={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},J=function(Y,V,N,U,T,A){var M,O,H;return(M=Math.sqrt(Y*Y+V*V))&&(Y/=M,V/=M),(H=Y*N+V*U)&&(N-=Y*H,U-=V*H),(O=Math.sqrt(N*N+U*U))&&(N/=O,U/=O,H/=O),Y*U180?c+=360:c-z>180&&(z+=360),it.push({i:D.push(T(D)+"rotate(",null,U)-2,x:Object(R.a)(z,c)})):c&&D.push(T(D)+"rotate("+c+U)}(A.rotate,M.rotate,O,H),function(z,c,D,it){z!==c?it.push({i:D.push(T(D)+"skewX(",null,U)-2,x:Object(R.a)(z,c)}):c&&D.push(T(D)+"skewX("+c+U)}(A.skewX,M.skewX,O,H),function(z,c,D,it,Q,W){if(z!==D||c!==it){var k=Q.push(T(Q)+"scale(",null,",",null,")");W.push({i:k-4,x:Object(R.a)(z,D)},{i:k-2,x:Object(R.a)(c,it)})}else D===1&&it===1||Q.push(T(Q)+"scale("+D+","+it+")")}(A.scaleX,A.scaleY,M.scaleX,M.scaleY,O,H),A=M=null,function(z){for(var c,D=-1,it=H.length;++Dbe&&(Fe=qe,qe=be,be=Fe),function(je){return Math.max(qe,Math.min(be,je))}}function z(ye,Fe,qe){var be=ye[0],je=ye[1],Ue=Fe[0],Re=Fe[1];return je2?c:z,je=Ue=null,on}function on(_n){return isNaN(_n=+_n)?qe:(je||(je=be(Re.map(ye),Ie,tn)))(ye(Mn(_n)))}return on.invert=function(_n){return Mn(Fe((Ue||(Ue=be(Ie,Re.map(ye),N.a)))(_n)))},on.domain=function(_n){return arguments.length?(Re=st.call(_n,T),Mn===M||(Mn=H(Re)),ke()):Re.slice()},on.range=function(_n){return arguments.length?(Ie=$.call(_n),ke()):Ie.slice()},on.rangeRound=function(_n){return Ie=$.call(_n),tn=U.a,ke()},on.clamp=function(_n){return arguments.length?(Mn=_n?H(Re):M,on):Mn!==M},on.interpolate=function(_n){return arguments.length?(tn=_n,ke()):tn},on.unknown=function(_n){return arguments.length?(qe=_n,on):qe},function(_n,Pe){return ye=_n,Fe=Pe,ke()}}function Q(ye,Fe){return it()(ye,Fe)}var W=F(25),k=F(64),_=F(43),C=F(65),h=F(63),l=function(ye,Fe,qe,be){var je,Ue=Object(Pt.tickStep)(ye,Fe,qe);switch((be=Object(W.b)(be==null?",f":be)).type){case"s":var Re=Math.max(Math.abs(ye),Math.abs(Fe));return be.precision!=null||isNaN(je=Object(k.a)(Ue,Re))||(be.precision=je),Object(_.c)(be,Re);case"":case"e":case"g":case"p":case"r":be.precision!=null||isNaN(je=Object(C.a)(Ue,Math.max(Math.abs(ye),Math.abs(Fe))))||(be.precision=je-(be.type==="e"));break;case"f":case"%":be.precision!=null||isNaN(je=Object(h.a)(Ue))||(be.precision=je-2*(be.type==="%"))}return Object(_.b)(be)};function u(ye){var Fe=ye.domain;return ye.ticks=function(qe){var be=Fe();return Object(Pt.ticks)(be[0],be[be.length-1],qe==null?10:qe)},ye.tickFormat=function(qe,be){var je=Fe();return l(je[0],je[je.length-1],qe==null?10:qe,be)},ye.nice=function(qe){qe==null&&(qe=10);var be,je=Fe(),Ue=0,Re=je.length-1,Ie=je[Ue],tn=je[Re];return tn0?(Ie=Math.floor(Ie/be)*be,tn=Math.ceil(tn/be)*be,be=Object(Pt.tickIncrement)(Ie,tn,qe)):be<0&&(Ie=Math.ceil(Ie*be)/be,tn=Math.floor(tn*be)/be,be=Object(Pt.tickIncrement)(Ie,tn,qe)),be>0?(je[Ue]=Math.floor(Ie/be)*be,je[Re]=Math.ceil(tn/be)*be,Fe(je)):be<0&&(je[Ue]=Math.ceil(Ie*be)/be,je[Re]=Math.floor(tn*be)/be,Fe(je)),ye},ye}function v(){var ye=Q(M,M);return ye.copy=function(){return D(ye,v())},d.apply(ye,arguments),u(ye)}function I(ye){var Fe;function qe(be){return isNaN(be=+be)?Fe:be}return qe.invert=qe,qe.domain=qe.range=function(be){return arguments.length?(ye=st.call(be,T),qe):ye.slice()},qe.unknown=function(be){return arguments.length?(Fe=be,qe):Fe},qe.copy=function(){return I(ye).unknown(Fe)},ye=arguments.length?st.call(ye,T):[0,1],u(qe)}var S=function(ye,Fe){var qe,be=0,je=(ye=ye.slice()).length-1,Ue=ye[be],Re=ye[je];return Re0){for(;anon)break;xn.push(wn)}}else for(;an=1;--Pe)if(!((wn=_n*Pe)on)break;xn.push(wn)}}else xn=Object(Pt.ticks)(an,gn,Math.min(gn-an,Sn)).map(qe);return tn?xn.reverse():xn},be.tickFormat=function(Ie,tn){if(tn==null&&(tn=Ue===10?".0e":","),typeof tn!="function"&&(tn=Object(_.b)(tn)),Ie===1/0)return tn;Ie==null&&(Ie=10);var Mn=Math.max(1,Ue*Ie/be.ticks().length);return function(ke){var on=ke/qe(Math.round(Fe(ke)));return on*Ue0?be[Ie-1]:Fe[0],Ie=be?[je[be-1],qe]:[je[Mn-1],je[Mn]]},Re.unknown=function(tn){return arguments.length&&(ye=tn),Re},Re.thresholds=function(){return je.slice()},Re.copy=function(){return Ot().domain([Fe,qe]).range(Ue).unknown(ye)},d.apply(u(Re),arguments)}function At(){var ye,Fe=[.5],qe=[0,1],be=1;function je(Ue){return Ue<=Ue?qe[Object(Pt.bisect)(Fe,Ue,0,be)]:ye}return je.domain=function(Ue){return arguments.length?(Fe=$.call(Ue),be=Math.min(Fe.length,qe.length-1),je):Fe.slice()},je.range=function(Ue){return arguments.length?(qe=$.call(Ue),be=Math.min(Fe.length,qe.length-1),je):qe.slice()},je.invertExtent=function(Ue){var Re=qe.indexOf(Ue);return[Fe[Re-1],Fe[Re]]},je.unknown=function(Ue){return arguments.length?(ye=Ue,je):ye},je.copy=function(){return At().domain(Fe).range(qe).unknown(ye)},d.apply(je,arguments)}var $t=F(15),Xt=F(47),Ct=F(3),wt=F(27),Dt=F(48),jt=F(49),re=F(30),le=F(31),Gt=F(45);function he(ye){return new Date(ye)}function ve(ye){return ye instanceof Date?+ye:+new Date(+ye)}function Ce(ye,Fe,qe,be,je,Ue,Re,Ie,tn){var Mn=Q(M,M),ke=Mn.invert,on=Mn.domain,_n=tn(".%L"),Pe=tn(":%S"),wn=tn("%I:%M"),an=tn("%I %p"),gn=tn("%a %d"),Sn=tn("%b %d"),xn=tn("%B"),hr=tn("%Y"),nr=[[Re,1,1e3],[Re,5,5e3],[Re,15,15e3],[Re,30,3e4],[Ue,1,6e4],[Ue,5,3e5],[Ue,15,9e5],[Ue,30,18e5],[je,1,36e5],[je,3,108e5],[je,6,216e5],[je,12,432e5],[be,1,864e5],[be,2,1728e5],[qe,1,6048e5],[Fe,1,2592e6],[Fe,3,7776e6],[ye,1,31536e6]];function pr(rr){return(Re(rr)svg{background:"+this.chartBackground+";padding: 20px;}"}};function $(Y,V){if(Y){Y.attr("version",1.1).attr("xmlns","http://www.w3.org/2000/svg");var N=L.initializeSerializer()(Y.node());return N=function(U){return navigator.userAgent.search("FireFox")>-1?U.replace(/url.*"\)/,'url("linearGradient[id*="-gradient-"]");'):U}(N),N=function(U){return U.replace(">",">"+st.styleBackgroundString)}(N=Z.call(this,N,V,parseInt(Y.attr("width"),10)))}}function J(Y){var V=new Image;return V.src=""+st.imageSourceBase+R(encodeURIComponent(Y).replace(/%([0-9A-F]{2})/g,function(N,U){return String.fromCharCode("0x"+U)})),V}function X(Y,V){return V.getContext("2d").drawImage(Y,0,0),V}function q(Y,V,N){N.preventDefault(),function(U){var T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:st.defaultFilename,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"image/png",M=U.toDataURL(A),O=document.createElement("a");O.href=M,O.download=T,document.body.appendChild(O),O.click(),document.body.removeChild(O)}(X(this,Y),V)}function Z(Y,V,N){if(!V||!N)return Y;var U=g.grey;return Y=Y.replace(/ '+V+" >18&63)+X.charAt(T>>12&63)+X.charAt(T>>6&63)+X.charAt(63&T);return A==2?(V=Y.charCodeAt(O)<<8,N=Y.charCodeAt(++O),M+=X.charAt((T=V+N)>>10)+X.charAt(T>>4&63)+X.charAt(T<<2&63)+"="):A==1&&(T=Y.charCodeAt(O),M+=X.charAt(T>>2)+X.charAt(T<<4&63)+"=="),M},decode:function(Y){var V=(Y=String(Y).replace(q,"")).length;V%4==0&&(V=(Y=Y.replace(/==?$/,"")).length),(V%4==1||/[^+a-zA-Z0-9/]/.test(Y))&&J("Invalid character: the string to be decoded is not correctly encoded.");for(var N,U,T=0,A="",M=-1;++M>(-2*T&6)));return A},version:"0.1.0"};(g=function(){return Z}.call(xt,F,xt,Pt))===void 0||(Pt.exports=g)})()}).call(this,F(80)(Oe),F(81))},function(Oe,xt){Oe.exports=function(F){return F.webpackPolyfill||(F.deprecate=function(){},F.paths=[],F.children||(F.children=[]),Object.defineProperty(F,"loaded",{enumerable:!0,get:function(){return F.l}}),Object.defineProperty(F,"id",{enumerable:!0,get:function(){return F.i}}),F.webpackPolyfill=1),F}},function(Oe,xt){var F;F=function(){return this}();try{F=F||new Function("return this")()}catch(Pt){typeof window=="object"&&(F=window)}Oe.exports=F},function(Oe,xt,F){"use strict";xt.a=function(Pt,d){return Pt=+Pt,d=+d,function(g){return Math.round(Pt*(1-g)+d*g)}}},function(Oe,xt,F){"use strict";var Pt;(Pt=function(){return{bar:` @@ -320,17 +320,17 @@ var fq=Object.defineProperty,dq=Object.defineProperties;var pq=Object.getOwnProp - `}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)},function(Oe,xt,j){"use strict";j.r(xt);var Pt=Array.prototype.slice,d=function(V){return V};function g(V){return"translate("+(V+.5)+",0)"}function L(V){return"translate(0,"+(V+.5)+")"}function R(V){return function(N){return+V(N)}}function st(V){var N=Math.max(0,V.bandwidth()-1)/2;return V.round()&&(N=Math.round(N)),function(U){return+V(U)+N}}function $(){return!this.__axis}function J(V,N){var U=[],T=null,A=null,M=6,O=6,H=3,z=V===1||V===4?-1:1,c=V===4||V===2?"x":"y",D=V===1||V===3?g:L;function it(Q){var W=T==null?N.ticks?N.ticks.apply(N,U):N.domain():T,k=A==null?N.tickFormat?N.tickFormat.apply(N,U):d:A,_=Math.max(M,0)+H,C=N.range(),h=+C[0]+.5,l=+C[C.length-1]+.5,u=(N.bandwidth?st:R)(N.copy()),v=Q.selection?Q.selection():Q,I=v.selectAll(".domain").data([null]),S=v.selectAll(".tick").data(W,N).order(),b=S.exit(),K=S.enter().append("g").attr("class","tick"),ct=S.select("line"),et=S.select("text");I=I.merge(I.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),S=S.merge(K),ct=ct.merge(K.append("line").attr("stroke","currentColor").attr(c+"2",z*M)),et=et.merge(K.append("text").attr("fill","currentColor").attr(c,z*_).attr("dy",V===1?"0em":V===3?"0.71em":"0.32em")),Q!==v&&(I=I.transition(Q),S=S.transition(Q),ct=ct.transition(Q),et=et.transition(Q),b=b.transition(Q).attr("opacity",1e-6).attr("transform",function(dt){return isFinite(dt=u(dt))?D(dt):this.getAttribute("transform")}),K.attr("opacity",1e-6).attr("transform",function(dt){var pt=this.parentNode.__axis;return D(pt&&isFinite(pt=pt(dt))?pt:u(dt))})),b.remove(),I.attr("d",V===4||V==2?O?"M"+z*O+","+h+"H0.5V"+l+"H"+z*O:"M0.5,"+h+"V"+l:O?"M"+h+","+z*O+"V0.5H"+l+"V"+z*O:"M"+h+",0.5H"+l),S.attr("opacity",1).attr("transform",function(dt){return D(u(dt))}),ct.attr(c+"2",z*M),et.attr(c,z*_).text(k),v.filter($).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",V===2?"start":V===4?"end":"middle"),v.each(function(){this.__axis=u})}return it.scale=function(Q){return arguments.length?(N=Q,it):N},it.ticks=function(){return U=Pt.call(arguments),it},it.tickArguments=function(Q){return arguments.length?(U=Q==null?[]:Pt.call(Q),it):U.slice()},it.tickValues=function(Q){return arguments.length?(T=Q==null?null:Pt.call(Q),it):T&&T.slice()},it.tickFormat=function(Q){return arguments.length?(A=Q,it):A},it.tickSize=function(Q){return arguments.length?(M=O=+Q,it):M},it.tickSizeInner=function(Q){return arguments.length?(M=+Q,it):M},it.tickSizeOuter=function(Q){return arguments.length?(O=+Q,it):O},it.tickPadding=function(Q){return arguments.length?(H=+Q,it):H},it}function X(V){return J(1,V)}function q(V){return J(2,V)}function Z(V){return J(3,V)}function Y(V){return J(4,V)}j.d(xt,"axisTop",function(){return X}),j.d(xt,"axisRight",function(){return q}),j.d(xt,"axisBottom",function(){return Z}),j.d(xt,"axisLeft",function(){return Y})},,function(Oe,xt,j){"use strict";var Pt;(Pt=function(d){var g=j(44),L=0,R={small:{limit:10,format:g.format("")},medium:{limit:1e3,format:g.format("")},large:{limit:null,format:g.format(",d")}},st={small:{limit:10,format:g.format(".3f")},medium:{limit:100,format:g.format(".1f")},large:{limit:null,format:g.format(".2s")}},$=function(J,X){var q="large";return J1&&arguments[1]!==void 0?arguments[1]:12,Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Arial",V=document.createElement("canvas"),N=V.getContext("2d");return N.font=Z+"px "+Y,N.measureText(q).width},wrapText:function(q,Z,Y,V){var N=g.select(V),U=N.text().split(/\s+/).reverse(),T=void 0,A=[],M=0,O=L*st,H=N.attr("y"),z=parseFloat(N.attr("dy")),c=Z*$,D=N.text(null).append("tspan").attr("x",q).attr("y",H-5).attr("dy",z+"em").classed(J,!0).style("font-size",Z+"px");for(D.text(U.pop()),D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").style("font-size",c+"px");T=U.pop();)A.push(T),D.text(A.join(" ")),D.node()&&D.node().getComputedTextLength()>Y-50&&(A.pop(),D.text(A.join(" ")),A=[T],D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").text(T).style("font-size",c+"px"))},wrapTextWithEllipses:function(q,Z){var Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,V=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,N=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1.2;q.each(function(){var U,T,A,M,O,H,z;for(U=(q=g.select(this)).text().split(/\s+/).reverse(),A=[],M=0,O=q.attr("y"),H=parseFloat(q.attr("dy")),z=q.text(null).append("tspan").attr("x",Y).attr("y",O).attr("dy",H+"em");T=U.pop();)if(A.push(T),z.text(A.join(" ")),z.node()&&z.node().getComputedTextLength()>Z){if(A.pop(),z.text(A.join(" ")),!(M1&&arguments[1]!==void 0?arguments[1]:"day",R=localeTimeMap[L],st=new Intl.DateTimeFormat(g,R);return function($){return st.format($)}}}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)},function(Oe,xt,j){"use strict";var Pt,d=function(R,st){if(Array.isArray(R))return R;if(Symbol.iterator in Object(R))return function($,J){var X=[],q=!0,Z=!1,Y=void 0;try{for(var V,N=$[Symbol.iterator]();!(q=(V=N.next()).done)&&(X.push(V.value),!J||X.length!==J);q=!0);}catch(U){Z=!0,Y=U}finally{try{!q&&N.return&&N.return()}finally{if(Z)throw Y}}return X}(R,st);throw new TypeError("Invalid attempt to destructure non-iterable instance")},g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R};function L(R,st,$){return st in R?Object.defineProperty(R,st,{value:$,enumerable:!0,configurable:!0,writable:!0}):R[st]=$,R}(Pt=function(R){var st,$=j(39),J=j(67),X=j(73),q=X.axisTimeCombinations,Z=X.timeBenchmarks,Y=j(89),V=Y.convertMillisecondsToDays,N=Y.getLocaleDateFormatter,U={minute:J.timeFormat("%M m"),hour:J.timeFormat("%H %p"),day:J.timeFormat("%e"),daymonth:J.timeFormat("%d %b"),month:J.timeFormat("%b"),year:J.timeFormat("%Y")},T=(L(st={},q.MINUTE_HOUR,$.timeHour.every(1)),L(st,q.HOUR_DAY,$.timeDay.every(1)),L(st,q.DAY_MONTH,$.timeMonth.every(1)),L(st,q.MONTH_YEAR,$.timeYear.every(1)),st),A=function(O){var H=Z.ONE_YEAR;return O2&&arguments[2]!==void 0?arguments[2]:null,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,D=new Date(O[0].date),it=new Date(O[O.length-1].date),Q=it-D;c&&(typeof Intl=="undefined"||(typeof Intl=="undefined"?"undefined":g(Intl))==="object"&&!Intl.DateTimeFormat)&&(c=null),z||(z=A(Q));var W=z.split("-"),k=d(W,2),_=k[0],C=k[1],h=T[z],l=M(H,V(Q));return{minor:{format:c?N(c,_):U[_],tick:l},major:{format:c?N(c,C):U[C],tick:h}}}}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)},function(Oe,xt,j){"use strict";var Pt;(Pt=function(d){j(7);var g="highlight-filter";return{bounceCircleHighlight:function(L,R,st){var $=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2*st,J=100,X=50;L.transition().ease(R).duration(J).attr("r",$).transition().ease(R).delay(X).duration(J).attr("r",st)},createFilterContainer:function(L){return L.append("defs").append("filter").attr("id",g)},createGausianBlur:function(L){return L.append("feGaussianBlur").attr("stdDeviation",1).attr("result","coloredBlur"),g},createWhiteGlow:function(L){L.attr("x","-5000%").attr("y","-5000%").attr("width","10000%").attr("height","10000%"),L.append("feFlood").attr("result","flood").attr("flood-color","#ffffff").attr("flood-opacity","1"),L.append("feComposite").attr("result","mask").attr("in2","SourceGraphic").attr("operator","in").attr("in","flood"),L.append("feMorphology").attr("result","dilated").attr("operator","dilate").attr("radius","2").attr("in","mask"),L.append("feGaussianBlur").attr("result","blurred").attr("stdDeviation","5").attr("in","dilated");var R=L.append("feMerge");return R.append("feMergeNode").attr("in","blurred"),R.append("feMergeNode").attr("in","SourceGraphic"),g},createGlow:function(L){L.attr("x","-30%").attr("y","-30%").attr("width","160%").attr("height","160%"),L.append("feGaussianBlur").attr("stdDeviation","0.9 0.9").attr("result","glow");var R=L.append("feMerge");return R.append("feMergeNode").attr("in","glow"),R.append("feMergeNode").attr("in","glow"),R.append("feMergeNode").attr("in","glow"),g},createGlowWithMatrix:function(L){L.attr("x","-500%").attr("y","-500%").attr("width","1800%").attr("height","1800%"),L.append("feColorMatrix").attr("type","matrix").attr("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"),L.append("feGaussianBlur").attr("stdDeviation","1").attr("result","coloredBlur").attr("in","SourceGraphic");var R=L.append("feMerge");return R.append("feMergeNode").attr("in","coloredBlur"),R.append("feMergeNode").attr("in","SourceGraphic"),g}}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)},,,,,,,,,,function(Oe,xt,j){"use strict";var Pt,d=function(R,st){if(Array.isArray(R))return R;if(Symbol.iterator in Object(R))return function($,J){var X=[],q=!0,Z=!1,Y=void 0;try{for(var V,N=$[Symbol.iterator]();!(q=(V=N.next()).done)&&(X.push(V.value),!J||X.length!==J);q=!0);}catch(U){Z=!0,Y=U}finally{try{!q&&N.return&&N.return()}finally{if(Z)throw Y}}return X}(R,st);throw new TypeError("Invalid attempt to destructure non-iterable instance")},g=Object.assign||function(R){for(var st=1;st=0||Object.prototype.hasOwnProperty.call(jn,si)&&(fi[si]=jn[si]);return fi}(rr,["dates"]),lr=Rr.map(function(jn){return{date:new Date(jn[ve]),value:+jn[Ce]}});return vr.push(g({dates:lr},jr)),vr},[]),dataByDate:hr,dataRange:nr}}(on);le=_n.dataByTopic,Gt=_n.dataByDate,he=_n.dataRange;var Pe,wn,an,gn=Ct?300:0;dt=v-u.left-u.right-gn,pt=I-u.top-u.bottom,function(){var Sn=st.min(le,function(rr){var Rr=rr.dates;return st.min(Rr,Tn)}),xn=st.max(le,function(rr){var Rr=rr.dates;return st.max(Rr,Tn)}),hr=st.max(le,function(rr){var Rr=rr.dates;return st.max(Rr,Qn)}),nr=st.min(le,function(rr){var Rr=rr.dates;return st.min(Rr,Qn)}),pr=nr<0?nr:0;bt=Y.scaleTime().domain([Sn,xn]).rangeRound([0,dt]),Mt=Y.scaleLinear().domain([pr,Math.abs(hr)]).rangeRound([pt,0]).nice();var vr=(w=Y.scaleOrdinal().range(y).domain(le.map(dr))).range();F=w.domain().reduce(function(rr,Rr,jr){return rr[Rr]=vr[jr],rr},{})}(),function(Sn){ct||(ct=N.select(Sn).append("svg").classed("britechart line-chart",!0),function(){var xn=ct.append("g").classed("container-group",!0).attr("transform","translate("+u.left+","+u.top+")");xn.append("g").classed("x-axis-group",!0).append("g").classed("axis x",!0),xn.selectAll(".x-axis-group").append("g").classed("month-axis",!0),xn.append("g").classed("y-axis-group",!0).append("g").classed("axis y",!0),xn.append("g").classed("grid-lines-group",!0),xn.append("g").classed("chart-group",!0),Ct&&xn.append("g").classed("legend-group",!0),xn.append("g").classed("metadata-group",!0)}()),ct.attr("width",v).attr("height",I)}(this),function(){var Sn=void 0,xn=void 0;if(gt==="custom"&&typeof Ot=="string")Sn={tick:vt,format:U.timeFormat(Ot)},xn=null;else{var hr=H(Gt,v,gt,At);Sn=hr.minor,xn=hr.major,tt=$.axisBottom(bt).ticks(xn.tick).tickSize(0,0).tickFormat(xn.format)}B=$.axisBottom(bt).ticks(Sn.tick).tickSize(10,0).tickPadding(5).tickFormat(Sn.format),nt=$.axisLeft(Mt).ticks(Jt).tickSize([0]).tickPadding(5).tickFormat(be),function(nr,pr){ct.select(".grid-lines-group").selectAll("line").remove(),(ce==="horizontal"||ce==="full")&&ct.select(".grid-lines-group").selectAll("line.horizontal-grid-line").data(Mt.ticks(pr)).enter().append("line").attr("class","horizontal-grid-line").attr("x1",-x-30).attr("x2",dt).attr("y1",function(vr){return Mt(vr)}).attr("y2",function(vr){return Mt(vr)}),ce!=="vertical"&&ce!=="full"||ct.select(".grid-lines-group").selectAll("line.vertical-grid-line").data(bt.ticks(nr)).enter().append("line").attr("class","vertical-grid-line").attr("y1",0).attr("y2",pt).attr("x1",function(vr){return bt(vr)}).attr("x2",function(vr){return bt(vr)}),ct.select(".grid-lines-group").selectAll("line.extended-x-line").data([0]).enter().append("line").attr("class","extended-x-line").attr("x1",-x-30).attr("x2",dt).attr("y1",I-u.bottom-u.top).attr("y2",I-u.bottom-u.top)}(Sn.tick,Jt)}(),function(){if(ct.select(".x-axis-group .axis.x").attr("transform","translate(0, "+pt+")").call(B),gt!=="custom"&&ct.select(".x-axis-group .month-axis").attr("transform","translate(0, "+(pt+28)+")").call(tt),Ke){rn&&ct.selectAll(".x-axis-label").remove();var Sn=dt/2,xn=pt+28+36;rn=ct.select(".x-axis-group").append("text").attr("x",Sn).attr("y",xn).attr("text-anchor","middle").attr("class","x-axis-label").text(Ke)}if(ct.select(".y-axis-group .axis.y").attr("transform","translate("+-x+", 0)").call(nt).call(qe),un){Qt&&ct.selectAll(".y-axis-label").remove();var hr=-Kt-x,nr=-pt/2;Qt=ct.select(".y-axis-group").append("text").attr("x",nr).attr("y",hr).attr("text-anchor","middle").attr("transform","rotate(270)").attr("class","y-axis-label").text(un)}}(),function(){if(he){var Sn=V.area().curve(D[re]).x(function(xn){var hr=xn.date;return bt(hr)}).y0(function(xn){var hr=xn.min;return Mt(hr)}).y1(function(xn){var hr=xn.max;return Mt(hr)});ct.select(".chart-group").append("g").attr("class","area").append("path").data([he]).attr("class","area").attr("d",Sn)}}(),Pe=void 0,wn=void 0,wn=V.line().curve(D[re]).x(function(Sn){var xn=Sn.date;return bt(xn)}).y(function(Sn){var xn=Sn.value;return Mt(xn)}),Pe=ct.select(".chart-group").selectAll(".line").data(le,dr),et=Pe.enter().append("g").attr("class","topic").append("path").attr("class","line").merge(Pe).attr("id",function(Sn){return Sn.topic}).attr("d",function(Sn){var xn=Sn.dates;return wn(xn)}).style("stroke",function(Sn){return xn=Sn.topic,w(xn);var xn}).style("opacity",function(Sn){return Sn.hasOwnProperty("show")?Sn.show?1:0:1}).style("stroke-dasharray",function(Sn){return!!Sn.hasOwnProperty("show")&&!!Sn.dashed&&[.5,4]}),Pe.exit().remove(),function(){if(Ct){var Sn=Number.parseInt(dt)+Number.parseInt(u.right);Ze=ct.selectAll(".legend-group").append("g").attr("transform","translate("+Sn+", 0)").classed("tooltip-text",!0),bn=Ze.append("text").classed("tooltip-title",!0).attr("x",-43).attr("dy",".35em").attr("y",16).style("fill","#282C35").style("font-size","12px"),Ze.append("line").classed("tooltip-divider",!0).attr("x1",-43).attr("x2",225).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),pn=Ze.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35");var xn=void 0;xn=le[0].hasOwnProperty("show")?le.filter(function(rr){return rr.show}):le;for(var hr=0;hrK&&(Et||(Et=ct.select(".metadata-group").append("rect").attr("class","overlay").attr("y1",0).attr("y2",I).attr("height",pt).attr("width",dt).attr("fill","rgba(0, 0, 0, 0)").style("display","none")),Rt||(Rt=ct.select(".metadata-group").append("g").attr("class","hover-marker vertical-marker-container").attr("transform","translate(9999, 0)"),zt=Rt.selectAll("path").data([{x1:0,y1:0,x2:0,y2:0}]).enter().append("line").classed("vertical-marker",!0).attr("x1",0).attr("y1",pt).attr("x2",0).attr("y2",0)),ct.on("mouseover",function(Sn){(function(xn,hr){Et.style("display","block"),zt.classed("bc-is-active",!0),ye.call("customMouseOver",xn,hr,N.mouse(xn))})(this,Sn)}).on("mouseout",function(Sn){(function(xn,hr){Et.style("display","none"),zt.classed("bc-is-active",!1),ye.call("customMouseOut",xn,hr,N.mouse(xn))})(this,Sn)}).on("mousemove",function(Sn){var xn,hr,nr,pr,vr,rr,Rr,jr;xn=this,hr=N.mouse(xn),nr=d(hr,2),pr=nr[0],vr=nr[1],rr=-u.left,Rr=Re(pr+rr),jr=void 0,Rr&&(Mn(jr=bt(new Date(Rr.date))),tn(Rr),ye.call("customMouseMove",xn,Rr,F,jr,vr))})),$t&&function(){ct.select(".chart-group").selectAll(".data-points-container").remove();var Sn=et.nodes().reduce(function(xn,hr){return xn[hr.id]=hr,xn},{});Gt.reduce(function(xn,hr){var nr=hr.topics.map(function(pr){return{topic:pr,node:Sn[pr.name]}});return xn=[].concat(L(xn),L(nr))},[])}(),ct.on("touchmove",function(Sn){(function(xn,hr){ye.call("customTouchMove",xn,hr,N.touch(xn))})(this,Sn)}),wt&&(an=Re(dt))&&(Mn(bt(new Date(an.date))),tn(an))})}function qe(ke){ke.selectAll(".tick text").attr("transform","translate(0, -7)")}function be(ke){var on=void 0;return on=l(ke)?C:h,Ft&&(on=Z.format(Ft)),on(ke)}function je(ke){return new Date(ke).toLocaleDateString()}function Ue(ke){var on,_n,Pe=void 0,wn=void 0;on=ke.topicName,_n=ke.sum.toLocaleString(),wn=pn.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",-15).attr("y",Ln).style("fill","#000000").style("font-size","12px").text(on).call(Ie,200,12,-25),Pe=pn.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",-15).attr("y",Ln).style("fill","#000000").style("font-size","12px").text(_n),vn=wn.node().getBBox().height,vn+5,xe=Pe.node().getBBox().width?Pe.node().getBBox().width:xe,Pe.attr("x",300-xe-75),pn.append("circle").classed("tooltip-circle",!0).attr("cx",-35).attr("cy",Ln+8).attr("r",5).style("fill",F[ke.topic]).style("stroke-width",1),Ln+=vn+7}function Re(ke){var on,_n,Pe,wn=bt.invert(ke),an=(0,st.bisector(Tn).left)(Gt,wn,1),gn=Gt[an],Sn=Gt[an-1],xn=void 0;return Sn&&gn?(on=wn,_n=gn,Pe=Sn,xn=new Date(on).getTime()-new Date(_n.date).getTime()>new Date(Pe.date).getTime()-new Date(on).getTime()?_n:Pe):xn=gn,xn}function Ie(ke,on,_n){var Pe=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;ke.each(function(){var wn,an,gn,Sn,xn,hr,nr;for(wn=(ke=N.select(this)).text().split(/\s+/).reverse(),gn=[],Sn=0,xn=ke.attr("y"),hr=parseFloat(ke.attr("dy")),nr=ke.text(null).append("tspan").attr("x",Pe).attr("y",xn).attr("dy",hr+"em");an=wn.pop();)gn.push(an),nr.text(gn.join(" ")),T.getTextWidth(gn.join(" "),_n,"Karla, sans-serif")>on&&(gn.pop(),nr.text(gn.join(" ")),Sn<4&&(gn=[an],nr=ke.append("tspan").attr("x",Pe).attr("y",xn).attr("dy",1.2*++Sn+hr+"em").text(an)))})}function tn(ke){Rt.selectAll(".circle-container").remove();var on=et.nodes().reduce(function(wn,an){return wn[an.id]=an,wn},{}),_n=le.filter(function(wn){return!wn.show}).map(function(wn){return wn.topicName}),Pe=ke.topics.map(function(wn){return{topic:wn,node:on[wn.name]}}).filter(function(wn){return!!wn.topic}).sort(function(wn,an){return F[wn.topic.name]lr.x+vr;){var Dr=(Rr+jr)/2;if(lr=nr.getPointAtLength(Dr),hr{(function(Oe,xt){yr.exports=xt()})(window,function(){return function(Oe){var xt={};function j(Pt){if(xt[Pt])return xt[Pt].exports;var d=xt[Pt]={i:Pt,l:!1,exports:{}};return Oe[Pt].call(d.exports,d,d.exports,j),d.l=!0,d.exports}return j.m=Oe,j.c=xt,j.d=function(Pt,d,g){j.o(Pt,d)||Object.defineProperty(Pt,d,{enumerable:!0,get:g})},j.r=function(Pt){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(Pt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(Pt,"__esModule",{value:!0})},j.t=function(Pt,d){if(1&d&&(Pt=j(Pt)),8&d||4&d&&typeof Pt=="object"&&Pt&&Pt.__esModule)return Pt;var g=Object.create(null);if(j.r(g),Object.defineProperty(g,"default",{enumerable:!0,value:Pt}),2&d&&typeof Pt!="string")for(var L in Pt)j.d(g,L,function(R){return Pt[R]}.bind(null,L));return g},j.n=function(Pt){var d=Pt&&Pt.__esModule?function(){return Pt.default}:function(){return Pt};return j.d(d,"a",d),d},j.o=function(Pt,d){return Object.prototype.hasOwnProperty.call(Pt,d)},j.p="",j(j.s=110)}([function(Oe,xt,j){"use strict";j.d(xt,"a",function(){return g});var Pt=new Date,d=new Date;function g(L,R,st,$){function J(X){return L(X=arguments.length===0?new Date:new Date(+X)),X}return J.floor=function(X){return L(X=new Date(+X)),X},J.ceil=function(X){return L(X=new Date(X-1)),R(X,1),L(X),X},J.round=function(X){var q=J(X),Z=J.ceil(X);return X-q0))return V;do V.push(Y=new Date(+X)),R(X,Z),L(X);while(Y=q)for(;L(q),!X(q);)q.setTime(q-1)},function(q,Z){if(q>=q)if(Z<0)for(;++Z<=0;)for(;R(q,-1),!X(q););else for(;--Z>=0;)for(;R(q,1),!X(q););})},st&&(J.count=function(X,q){return Pt.setTime(+X),d.setTime(+q),L(Pt),L(d),Math.floor(st(Pt,d))},J.every=function(X){return X=Math.floor(X),isFinite(X)&&X>0?X>1?J.filter($?function(q){return $(q)%X==0}:function(q){return J.count(0,q)%X==0}):J:null}),J}},function(Oe,xt,j){"use strict";j.d(xt,"d",function(){return Pt}),j.d(xt,"c",function(){return d}),j.d(xt,"b",function(){return g}),j.d(xt,"a",function(){return L}),j.d(xt,"e",function(){return R});var Pt=1e3,d=6e4,g=36e5,L=864e5,R=6048e5},,function(Oe,xt,j){"use strict";j.d(xt,"g",function(){return L}),j.d(xt,"c",function(){return R}),j.d(xt,"k",function(){return st}),j.d(xt,"m",function(){return $}),j.d(xt,"i",function(){return J}),j.d(xt,"a",function(){return X}),j.d(xt,"e",function(){return q}),j.d(xt,"h",function(){return Z}),j.d(xt,"d",function(){return Y}),j.d(xt,"l",function(){return V}),j.d(xt,"n",function(){return N}),j.d(xt,"j",function(){return U}),j.d(xt,"b",function(){return T}),j.d(xt,"f",function(){return A});var Pt=j(0),d=j(1);function g(M){return Object(Pt.a)(function(O){O.setDate(O.getDate()-(O.getDay()+7-M)%7),O.setHours(0,0,0,0)},function(O,H){O.setDate(O.getDate()+7*H)},function(O,H){return(H-O-(H.getTimezoneOffset()-O.getTimezoneOffset())*d.c)/d.e})}var L=g(0),R=g(1),st=g(2),$=g(3),J=g(4),X=g(5),q=g(6),Z=L.range,Y=R.range,V=st.range,N=$.range,U=J.range,T=X.range,A=q.range},function(Oe,xt,j){"use strict";j.d(xt,"g",function(){return L}),j.d(xt,"c",function(){return R}),j.d(xt,"k",function(){return st}),j.d(xt,"m",function(){return $}),j.d(xt,"i",function(){return J}),j.d(xt,"a",function(){return X}),j.d(xt,"e",function(){return q}),j.d(xt,"h",function(){return Z}),j.d(xt,"d",function(){return Y}),j.d(xt,"l",function(){return V}),j.d(xt,"n",function(){return N}),j.d(xt,"j",function(){return U}),j.d(xt,"b",function(){return T}),j.d(xt,"f",function(){return A});var Pt=j(0),d=j(1);function g(M){return Object(Pt.a)(function(O){O.setUTCDate(O.getUTCDate()-(O.getUTCDay()+7-M)%7),O.setUTCHours(0,0,0,0)},function(O,H){O.setUTCDate(O.getUTCDate()+7*H)},function(O,H){return(H-O)/d.e})}var L=g(0),R=g(1),st=g(2),$=g(3),J=g(4),X=g(5),q=g(6),Z=L.range,Y=R.range,V=st.range,N=$.range,U=J.range,T=X.range,A=q.range},function(Oe,xt,j){"use strict";j.d(xt,"a",function(){return d}),j.d(xt,"d",function(){return g}),j.d(xt,"c",function(){return L}),j.d(xt,"e",function(){return M}),j.d(xt,"h",function(){return z}),j.d(xt,"g",function(){return c}),j.d(xt,"b",function(){return D}),j.d(xt,"f",function(){return C});var Pt=j(11);function d(){}var g=.7,L=1/g,R="\\s*([+-]?\\d+)\\s*",st="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",$="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",J=/^#([0-9a-f]{3,8})$/,X=new RegExp("^rgb\\("+[R,R,R]+"\\)$"),q=new RegExp("^rgb\\("+[$,$,$]+"\\)$"),Z=new RegExp("^rgba\\("+[R,R,R,st]+"\\)$"),Y=new RegExp("^rgba\\("+[$,$,$,st]+"\\)$"),V=new RegExp("^hsl\\("+[st,$,$]+"\\)$"),N=new RegExp("^hsla\\("+[st,$,$,st]+"\\)$"),U={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function T(){return this.rgb().formatHex()}function A(){return this.rgb().formatRgb()}function M(u){var v,I;return u=(u+"").trim().toLowerCase(),(v=J.exec(u))?(I=v[1].length,v=parseInt(v[1],16),I===6?O(v):I===3?new D(v>>8&15|v>>4&240,v>>4&15|240&v,(15&v)<<4|15&v,1):I===8?new D(v>>24&255,v>>16&255,v>>8&255,(255&v)/255):I===4?new D(v>>12&15|v>>8&240,v>>8&15|v>>4&240,v>>4&15|240&v,((15&v)<<4|15&v)/255):null):(v=X.exec(u))?new D(v[1],v[2],v[3],1):(v=q.exec(u))?new D(255*v[1]/100,255*v[2]/100,255*v[3]/100,1):(v=Z.exec(u))?H(v[1],v[2],v[3],v[4]):(v=Y.exec(u))?H(255*v[1]/100,255*v[2]/100,255*v[3]/100,v[4]):(v=V.exec(u))?k(v[1],v[2]/100,v[3]/100,1):(v=N.exec(u))?k(v[1],v[2]/100,v[3]/100,v[4]):U.hasOwnProperty(u)?O(U[u]):u==="transparent"?new D(NaN,NaN,NaN,0):null}function O(u){return new D(u>>16&255,u>>8&255,255&u,1)}function H(u,v,I,S){return S<=0&&(u=v=I=NaN),new D(u,v,I,S)}function z(u){return u instanceof d||(u=M(u)),u?new D((u=u.rgb()).r,u.g,u.b,u.opacity):new D}function c(u,v,I,S){return arguments.length===1?z(u):new D(u,v,I,S==null?1:S)}function D(u,v,I,S){this.r=+u,this.g=+v,this.b=+I,this.opacity=+S}function it(){return"#"+W(this.r)+W(this.g)+W(this.b)}function Q(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(u===1?")":", "+u+")")}function W(u){return((u=Math.max(0,Math.min(255,Math.round(u)||0)))<16?"0":"")+u.toString(16)}function k(u,v,I,S){return S<=0?u=v=I=NaN:I<=0||I>=1?u=v=NaN:v<=0&&(u=NaN),new h(u,v,I,S)}function _(u){if(u instanceof h)return new h(u.h,u.s,u.l,u.opacity);if(u instanceof d||(u=M(u)),!u)return new h;if(u instanceof h)return u;var v=(u=u.rgb()).r/255,I=u.g/255,S=u.b/255,b=Math.min(v,I,S),K=Math.max(v,I,S),ct=NaN,et=K-b,dt=(K+b)/2;return et?(ct=v===K?(I-S)/et+6*(I0&&dt<1?0:ct,new h(ct,et,dt,u.opacity)}function C(u,v,I,S){return arguments.length===1?_(u):new h(u,v,I,S==null?1:S)}function h(u,v,I,S){this.h=+u,this.s=+v,this.l=+I,this.opacity=+S}function l(u,v,I){return 255*(u<60?v+(I-v)*u/60:u<180?I:u<240?v+(I-v)*(240-u)/60:v)}Object(Pt.a)(d,M,{copy:function(u){return Object.assign(new this.constructor,this,u)},displayable:function(){return this.rgb().displayable()},hex:T,formatHex:T,formatHsl:function(){return _(this).formatHsl()},formatRgb:A,toString:A}),Object(Pt.a)(D,c,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:it,formatHex:it,formatRgb:Q,toString:Q})),Object(Pt.a)(h,C,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new h(this.h,this.s,this.l*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new h(this.h,this.s,this.l*u,this.opacity)},rgb:function(){var u=this.h%360+360*(this.h<0),v=isNaN(u)||isNaN(this.s)?0:this.s,I=this.l,S=I+(I<.5?I:1-I)*v,b=2*I-S;return new D(l(u>=240?u-240:u+120,b,S),l(u,b,S),l(u<120?u+240:u-120,b,S),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(u===1?")":", "+u+")")}}))},function(Oe,xt,j){"use strict";xt.a=function(Pt,d){return Pt=+Pt,d=+d,function(g){return Pt*(1-g)+d*g}}},function(Oe,xt,j){"use strict";j.r(xt);var Pt=j(12),d=j(32),g=function(c){return Object(d.a)(Object(Pt.a)(c).call(document.documentElement))},L=0;function R(){return new st}function st(){this._="@"+(++L).toString(36)}st.prototype=R.prototype={constructor:st,get:function(c){for(var D=this._;!(D in c);)if(!(c=c.parentNode))return;return c[D]},set:function(c,D){return c[this._]=D},remove:function(c){return this._ in c&&delete c[this._]},toString:function(){return this._}};var $=j(34),J=j(60),X=j(20),q=j(14),Z=j(13),Y=j(10),V=function(c){return typeof c=="string"?new Y.a([document.querySelectorAll(c)],[document.documentElement]):new Y.a([c==null?[]:c],Y.c)},N=j(19),U=j(33),T=j(35),A=j(61),M=j(22),O=function(c,D){D==null&&(D=Object(M.a)().touches);for(var it=0,Q=D?D.length:0,W=new Array(Q);it180||J<-180?J-360*Math.round(J/360):J):Object(Pt.a)(isNaN(st)?$:st)}function L(st){return(st=+st)==1?R:function($,J){return J-$?function(X,q,Z){return X=Math.pow(X,Z),q=Math.pow(q,Z)-X,Z=1/Z,function(Y){return Math.pow(X+Y*q,Z)}}($,J,st):Object(Pt.a)(isNaN($)?J:$)}}function R(st,$){var J=$-st;return J?d(st,J):Object(Pt.a)(isNaN(st)?$:st)}},function(Oe,xt,j){"use strict";var Pt=j(18);xt.a=function(d){return(d=Object(Pt.a)(Math.abs(d)))?d[1]:NaN}},function(Oe,xt,j){"use strict";var Pt=j(19),d=j(33),g=j(34),L=function(y){return new Array(y.length)};function R(y,F){this.ownerDocument=y.ownerDocument,this.namespaceURI=y.namespaceURI,this._next=null,this._parent=y,this.__data__=F}R.prototype={constructor:R,appendChild:function(y){return this._parent.insertBefore(y,this._next)},insertBefore:function(y,F){return this._parent.insertBefore(y,F)},querySelector:function(y){return this._parent.querySelector(y)},querySelectorAll:function(y){return this._parent.querySelectorAll(y)}};function st(y,F,lt,rt,gt,vt){for(var Ot,At=0,$t=F.length,Xt=vt.length;AtF?1:y>=F?0:NaN}var X=j(20);function q(y){return function(){this.removeAttribute(y)}}function Z(y){return function(){this.removeAttributeNS(y.space,y.local)}}function Y(y,F){return function(){this.setAttribute(y,F)}}function V(y,F){return function(){this.setAttributeNS(y.space,y.local,F)}}function N(y,F){return function(){var lt=F.apply(this,arguments);lt==null?this.removeAttribute(y):this.setAttribute(y,lt)}}function U(y,F){return function(){var lt=F.apply(this,arguments);lt==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,lt)}}var T=j(35);function A(y){return function(){delete this[y]}}function M(y,F){return function(){this[y]=F}}function O(y,F){return function(){var lt=F.apply(this,arguments);lt==null?delete this[y]:this[y]=lt}}function H(y){return y.trim().split(/^|\s+/)}function z(y){return y.classList||new c(y)}function c(y){this._node=y,this._names=H(y.getAttribute("class")||"")}function D(y,F){for(var lt=z(y),rt=-1,gt=F.length;++rt=0&&(this._names.splice(F,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(y){return this._names.indexOf(y)>=0}};function _(){this.textContent=""}function C(y){return function(){this.textContent=y}}function h(y){return function(){var F=y.apply(this,arguments);this.textContent=F==null?"":F}}function l(){this.innerHTML=""}function u(y){return function(){this.innerHTML=y}}function v(y){return function(){var F=y.apply(this,arguments);this.innerHTML=F==null?"":F}}function I(){this.nextSibling&&this.parentNode.appendChild(this)}function S(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var b=j(12);function K(){return null}function ct(){var y=this.parentNode;y&&y.removeChild(this)}function et(){var y=this.cloneNode(!1),F=this.parentNode;return F?F.insertBefore(y,this.nextSibling):y}function dt(){var y=this.cloneNode(!0),F=this.parentNode;return F?F.insertBefore(y,this.nextSibling):y}var pt=j(17),bt=j(21);function Mt(y,F,lt){var rt=Object(bt.a)(y),gt=rt.CustomEvent;typeof gt=="function"?gt=new gt(F,lt):(gt=rt.document.createEvent("Event"),lt?(gt.initEvent(F,lt.bubbles,lt.cancelable),gt.detail=lt.detail):gt.initEvent(F,!1,!1)),y.dispatchEvent(gt)}function w(y,F){return function(){return Mt(this,y,F)}}function B(y,F){return function(){return Mt(this,y,F.apply(this,arguments))}}j.d(xt,"c",function(){return tt}),j.d(xt,"a",function(){return nt});var tt=[null];function nt(y,F){this._groups=y,this._parents=F}function x(){return new nt([[document.documentElement]],tt)}nt.prototype=x.prototype={constructor:nt,select:function(y){typeof y!="function"&&(y=Object(Pt.a)(y));for(var F=this._groups,lt=F.length,rt=new Array(lt),gt=0;gt=Ke&&(Ke=Te+1);!(Ce=he[Ke])&&++Ke=0;)(rt=gt[vt])&&(Ot&&4^rt.compareDocumentPosition(Ot)&&Ot.parentNode.insertBefore(rt,Ot),Ot=rt);return this},sort:function(y){function F(wt,Dt){return wt&&Dt?y(wt.__data__,Dt.__data__):!wt-!Dt}y||(y=J);for(var lt=this._groups,rt=lt.length,gt=new Array(rt),vt=0;vt1?this.each((F==null?A:typeof F=="function"?O:M)(y,F)):this.node()[y]},classed:function(y,F){var lt=H(y+"");if(arguments.length<2){for(var rt=z(this.node()),gt=-1,vt=lt.length;++gt0?Object(Pt.a)(function(R){R.setFullYear(Math.floor(R.getFullYear()/L)*L),R.setMonth(0,1),R.setHours(0,0,0,0)},function(R,st){R.setFullYear(R.getFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return g});var Pt=j(0),d=Object(Pt.a)(function(L){L.setUTCMonth(0,1),L.setUTCHours(0,0,0,0)},function(L,R){L.setUTCFullYear(L.getUTCFullYear()+R)},function(L,R){return R.getUTCFullYear()-L.getUTCFullYear()},function(L){return L.getUTCFullYear()});d.every=function(L){return isFinite(L=Math.floor(L))&&L>0?Object(Pt.a)(function(R){R.setUTCFullYear(Math.floor(R.getUTCFullYear()/L)*L),R.setUTCMonth(0,1),R.setUTCHours(0,0,0,0)},function(R,st){R.setUTCFullYear(R.getUTCFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";j.d(xt,"c",function(){return d}),j.d(xt,"a",function(){return J});var Pt={},d=null;typeof document!="undefined"&&("onmouseenter"in document.documentElement||(Pt={mouseenter:"mouseover",mouseleave:"mouseout"}));function g(X,q,Z){return X=L(X,q,Z),function(Y){var V=Y.relatedTarget;V&&(V===this||8&V.compareDocumentPosition(this))||X.call(this,Y)}}function L(X,q,Z){return function(Y){var V=d;d=Y;try{X.call(this,this.__data__,q,Z)}finally{d=V}}}function R(X){return X.trim().split(/^|\s+/).map(function(q){var Z="",Y=q.indexOf(".");return Y>=0&&(Z=q.slice(Y+1),q=q.slice(0,Y)),{type:q,name:Z}})}function st(X){return function(){var q=this.__on;if(q){for(var Z,Y=0,V=-1,N=q.length;Y1?L[0]+L.slice(2):L,+Pt.slice(g+1)]}},function(Oe,xt,j){"use strict";function Pt(){}xt.a=function(d){return d==null?Pt:function(){return this.querySelector(d)}}},function(Oe,xt,j){"use strict";var Pt=j(14);xt.a=function(d){var g=d+="",L=g.indexOf(":");return L>=0&&(g=d.slice(0,L))!=="xmlns"&&(d=d.slice(L+1)),Pt.a.hasOwnProperty(g)?{space:Pt.a[g],local:d}:d}},function(Oe,xt,j){"use strict";xt.a=function(Pt){return Pt.ownerDocument&&Pt.ownerDocument.defaultView||Pt.document&&Pt||Pt.defaultView}},function(Oe,xt,j){"use strict";var Pt=j(17);xt.a=function(){for(var d,g=Pt.c;d=g.sourceEvent;)g=d;return g}},,function(Oe,xt,j){"use strict";xt.a=function(Pt){return function(){return Pt}}},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return d}),j.d(xt,"a",function(){return g});var Pt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function d(L){if(!(R=Pt.exec(L)))throw new Error("invalid format: "+L);var R;return new g({fill:R[1],align:R[2],sign:R[3],symbol:R[4],zero:R[5],width:R[6],comma:R[7],precision:R[8]&&R[8].slice(1),trim:R[9],type:R[10]})}function g(L){this.fill=L.fill===void 0?" ":L.fill+"",this.align=L.align===void 0?">":L.align+"",this.sign=L.sign===void 0?"-":L.sign+"",this.symbol=L.symbol===void 0?"":L.symbol+"",this.zero=!!L.zero,this.width=L.width===void 0?void 0:+L.width,this.comma=!!L.comma,this.precision=L.precision===void 0?void 0:+L.precision,this.trim=!!L.trim,this.type=L.type===void 0?"":L.type+""}d.prototype=g.prototype,g.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(Oe,xt,j){"use strict";function Pt(d,g,L,R,st){var $=d*d,J=$*d;return((1-3*d+3*$-J)*g+(4-6*$+3*J)*L+(1+3*d+3*$-3*J)*R+J*st)/6}j.d(xt,"a",function(){return Pt}),xt.b=function(d){var g=d.length-1;return function(L){var R=L<=0?L=0:L>=1?(L=1,g-1):Math.floor(L*g),st=d[R],$=d[R+1],J=R>0?d[R-1]:2*st-$,X=R0?L>1?Object(Pt.a)(function(R){R.setTime(Math.floor(R/L)*L)},function(R,st){R.setTime(+R+st*L)},function(R,st){return(st-R)/L}):d:null},xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";var Pt=j(10);xt.a=function(d){return typeof d=="string"?new Pt.a([[document.querySelector(d)]],[document.documentElement]):new Pt.a([[d]],Pt.c)}},function(Oe,xt,j){"use strict";function Pt(){return[]}xt.a=function(d){return d==null?Pt:function(){return this.querySelectorAll(d)}}},function(Oe,xt,j){"use strict";xt.a=function(Pt){return function(){return this.matches(Pt)}}},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return R});var Pt=j(21);function d(st){return function(){this.style.removeProperty(st)}}function g(st,$,J){return function(){this.style.setProperty(st,$,J)}}function L(st,$,J){return function(){var X=$.apply(this,arguments);X==null?this.style.removeProperty(st):this.style.setProperty(st,X,J)}}function R(st,$){return st.style.getPropertyValue($)||Object(Pt.a)(st).getComputedStyle(st,null).getPropertyValue($)}xt.a=function(st,$,J){return arguments.length>1?this.each(($==null?d:typeof $=="function"?L:g)(st,$,J==null?"":J)):R(this.node(),st)}},,function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return st}),j.d(xt,"c",function(){return $});var Pt=j(5),d=j(26),g=j(53),L=j(8);function R(J){return function(X){var q,Z,Y=X.length,V=new Array(Y),N=new Array(Y),U=new Array(Y);for(q=0;qN+1?V.slice(0,N+1)+"."+V.slice(N+1):V+new Array(N-V.length+2).join("0")},st={"%":function(q,Z){return(100*q).toFixed(Z)},b:function(q){return Math.round(q).toString(2)},c:function(q){return q+""},d:function(q){return Math.round(q).toString(10)},e:function(q,Z){return q.toExponential(Z)},f:function(q,Z){return q.toFixed(Z)},g:function(q,Z){return q.toPrecision(Z)},o:function(q){return Math.round(q).toString(8)},p:function(q,Z){return R(100*q,Z)},r:R,s:function(q,Z){var Y=Object(L.a)(q,Z);if(!Y)return q+"";var V=Y[0],N=Y[1],U=N-(Pt=3*Math.max(-8,Math.min(8,Math.floor(N/3))))+1,T=V.length;return U===T?V:U>T?V+new Array(U-T+1).join("0"):U>0?V.slice(0,U)+"."+V.slice(U):"0."+new Array(1-U).join("0")+Object(L.a)(q,Math.max(0,Z+U-1))[0]},X:function(q){return Math.round(q).toString(16).toUpperCase()},x:function(q){return Math.round(q).toString(16)}},$=function(q){return q},J=Array.prototype.map,X=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];xt.a=function(q){var Z,Y,V=q.grouping===void 0||q.thousands===void 0?$:(Z=J.call(q.grouping,Number),Y=q.thousands+"",function(c,D){for(var it=c.length,Q=[],W=0,k=Z[0],_=0;it>0&&k>0&&(_+k+1>D&&(k=Math.max(1,D-_)),Q.push(c.substring(it-=k,it+k)),!((_+=k+1)>D));)k=Z[W=(W+1)%Z.length];return Q.reverse().join(Y)}),N=q.currency===void 0?"":q.currency[0]+"",U=q.currency===void 0?"":q.currency[1]+"",T=q.decimal===void 0?".":q.decimal+"",A=q.numerals===void 0?$:function(c){return function(D){return D.replace(/[0-9]/g,function(it){return c[+it]})}}(J.call(q.numerals,String)),M=q.percent===void 0?"%":q.percent+"",O=q.minus===void 0?"-":q.minus+"",H=q.nan===void 0?"NaN":q.nan+"";function z(c){var D=(c=Object(g.b)(c)).fill,it=c.align,Q=c.sign,W=c.symbol,k=c.zero,_=c.width,C=c.comma,h=c.precision,l=c.trim,u=c.type;u==="n"?(C=!0,u="g"):st[u]||(h===void 0&&(h=12),l=!0,u="g"),(k||D==="0"&&it==="=")&&(k=!0,D="0",it="=");var v=W==="$"?N:W==="#"&&/[boxX]/.test(u)?"0"+u.toLowerCase():"",I=W==="$"?U:/[%p]/.test(u)?M:"",S=st[u],b=/[defgprs%]/.test(u);function K(ct){var et,dt,pt,bt=v,Mt=I;if(u==="c")Mt=S(ct)+Mt,ct="";else{var w=(ct=+ct)<0;if(ct=isNaN(ct)?H:S(Math.abs(ct),h),l&&(ct=function(nt){t:for(var x,y=nt.length,F=1,lt=-1;F0&&(lt=0)}return lt>0?nt.slice(0,lt)+nt.slice(x+1):nt}(ct)),w&&+ct==0&&(w=!1),bt=(w?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+bt,Mt=(u==="s"?X[8+Pt/3]:"")+Mt+(w&&Q==="("?")":""),b){for(et=-1,dt=ct.length;++et(pt=ct.charCodeAt(et))||pt>57){Mt=(pt===46?T+ct.slice(et+1):ct.slice(et))+Mt,ct=ct.slice(0,et);break}}}C&&!k&&(ct=V(ct,1/0));var B=bt.length+ct.length+Mt.length,tt=B<_?new Array(_-B+1).join(D):"";switch(C&&k&&(ct=V(tt+ct,tt.length?_-Mt.length:1/0),tt=""),it){case"<":ct=bt+ct+Mt+tt;break;case"=":ct=bt+tt+ct+Mt;break;case"^":ct=tt.slice(0,B=tt.length>>1)+bt+ct+Mt+tt.slice(B);break;default:ct=tt+bt+ct+Mt}return A(ct)}return h=h===void 0?6:/[gprs]/.test(u)?Math.max(1,Math.min(21,h)):Math.max(0,Math.min(20,h)),K.toString=function(){return c+""},K}return{format:z,formatPrefix:function(c,D){var it=z(((c=Object(g.b)(c)).type="f",c)),Q=3*Math.max(-8,Math.min(8,Math.floor(Object(d.a)(D)/3))),W=Math.pow(10,-Q),k=X[8+Q/3];return function(_){return it(W*_)+k}}}}},,,function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return d}),j.d(xt,"c",function(){return g}),j.d(xt,"a",function(){return R});var Pt,d,g,L=j(40);function R(st){return Pt=Object(L.a)(st),d=Pt.format,g=Pt.formatPrefix,Pt}R({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(Oe,xt,j){"use strict";j.r(xt);var Pt=j(43);j.d(xt,"formatDefaultLocale",function(){return Pt.a}),j.d(xt,"format",function(){return Pt.b}),j.d(xt,"formatPrefix",function(){return Pt.c});var d=j(40);j.d(xt,"formatLocale",function(){return d.a});var g=j(25);j.d(xt,"formatSpecifier",function(){return g.b}),j.d(xt,"FormatSpecifier",function(){return g.a});var L=j(63);j.d(xt,"precisionFixed",function(){return L.a});var R=j(64);j.d(xt,"precisionPrefix",function(){return R.a});var st=j(65);j.d(xt,"precisionRound",function(){return st.a})},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return d}),j.d(xt,"c",function(){return g}),j.d(xt,"d",function(){return L}),j.d(xt,"e",function(){return R}),j.d(xt,"a",function(){return $});var Pt,d,g,L,R,st=j(54);function $(J){return Pt=Object(st.a)(J),d=Pt.format,g=Pt.parse,L=Pt.utcFormat,R=Pt.utcParse,Pt}$({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})},,function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return g});var Pt=j(0),d=Object(Pt.a)(function(L){L.setDate(1),L.setHours(0,0,0,0)},function(L,R){L.setMonth(L.getMonth()+R)},function(L,R){return R.getMonth()-L.getMonth()+12*(R.getFullYear()-L.getFullYear())},function(L){return L.getMonth()});xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return L});var Pt=j(0),d=j(1),g=Object(Pt.a)(function(R){R.setTime(R-R.getMilliseconds()-R.getSeconds()*d.d-R.getMinutes()*d.c)},function(R,st){R.setTime(+R+st*d.b)},function(R,st){return(st-R)/d.b},function(R){return R.getHours()});xt.a=g;var L=g.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return L});var Pt=j(0),d=j(1),g=Object(Pt.a)(function(R){R.setTime(R-R.getMilliseconds()-R.getSeconds()*d.d)},function(R,st){R.setTime(+R+st*d.c)},function(R,st){return(st-R)/d.c},function(R){return R.getMinutes()});xt.a=g;var L=g.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return g});var Pt=j(0),d=Object(Pt.a)(function(L){L.setUTCDate(1),L.setUTCHours(0,0,0,0)},function(L,R){L.setUTCMonth(L.getUTCMonth()+R)},function(L,R){return R.getUTCMonth()-L.getUTCMonth()+12*(R.getUTCFullYear()-L.getUTCFullYear())},function(L){return L.getUTCMonth()});xt.a=d;var g=d.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return L});var Pt=j(0),d=j(1),g=Object(Pt.a)(function(R){R.setUTCMinutes(0,0,0)},function(R,st){R.setTime(+R+st*d.b)},function(R,st){return(st-R)/d.b},function(R){return R.getUTCHours()});xt.a=g;var L=g.range},function(Oe,xt,j){"use strict";j.d(xt,"b",function(){return L});var Pt=j(0),d=j(1),g=Object(Pt.a)(function(R){R.setUTCSeconds(0,0)},function(R,st){R.setTime(+R+st*d.c)},function(R,st){return(st-R)/d.c},function(R){return R.getUTCMinutes()});xt.a=g;var L=g.range},function(Oe,xt,j){"use strict";var Pt=j(26);xt.a=function(d){var g=d.length;return function(L){var R=Math.floor(((L%=1)<0?++L:L)*g),st=d[(R+g-1)%g],$=d[R%g],J=d[(R+1)%g],X=d[(R+2)%g];return Object(Pt.a)((L-R/g)*g,st,$,J,X)}}},function(Oe,xt,j){"use strict";j.d(xt,"a",function(){return q});var Pt=j(4),d=j(28),g=j(3),L=j(27),R=j(15),st=j(16);function $(Et){if(0<=Et.y&&Et.y<100){var Rt=new Date(-1,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L);return Rt.setFullYear(Et.y),Rt}return new Date(Et.y,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L)}function J(Et){if(0<=Et.y&&Et.y<100){var Rt=new Date(Date.UTC(-1,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L));return Rt.setUTCFullYear(Et.y),Rt}return new Date(Date.UTC(Et.y,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L))}function X(Et,Rt,zt){return{y:Et,m:Rt,d:zt,H:0,M:0,S:0,L:0}}function q(Et){var Rt=Et.dateTime,zt=Et.date,Ft=Et.time,ce=Et.periods,Se=Et.days,xe=Et.shortDays,Ze=Et.months,pn=Et.shortMonths,bn=A(ce),Ln=M(ce),vn=A(Se),Tn=M(Se),Qn=A(xe),dr=M(xe),ye=A(Ze),Fe=M(Ze),qe=A(pn),be=M(pn),je={a:function(ke){return xe[ke.getDay()]},A:function(ke){return Se[ke.getDay()]},b:function(ke){return pn[ke.getMonth()]},B:function(ke){return Ze[ke.getMonth()]},c:null,d:et,e:et,f:w,H:dt,I:pt,j:bt,L:Mt,m:B,M:tt,p:function(ke){return ce[+(ke.getHours()>=12)]},q:function(ke){return 1+~~(ke.getMonth()/3)},Q:Kt,s:Jt,S:nt,u:x,U:y,V:F,w:lt,W:rt,x:null,X:null,y:gt,Y:vt,Z:Ot,"%":Qt},Ue={a:function(ke){return xe[ke.getUTCDay()]},A:function(ke){return Se[ke.getUTCDay()]},b:function(ke){return pn[ke.getUTCMonth()]},B:function(ke){return Ze[ke.getUTCMonth()]},c:null,d:At,e:At,f:Dt,H:$t,I:Xt,j:Ct,L:wt,m:jt,M:re,p:function(ke){return ce[+(ke.getUTCHours()>=12)]},q:function(ke){return 1+~~(ke.getUTCMonth()/3)},Q:Kt,s:Jt,S:le,u:Gt,U:he,V:ve,w:Ce,W:Te,x:null,X:null,y:Ke,Y:rn,Z:un,"%":Qt},Re={a:function(ke,on,_n){var Pe=Qn.exec(on.slice(_n));return Pe?(ke.w=dr[Pe[0].toLowerCase()],_n+Pe[0].length):-1},A:function(ke,on,_n){var Pe=vn.exec(on.slice(_n));return Pe?(ke.w=Tn[Pe[0].toLowerCase()],_n+Pe[0].length):-1},b:function(ke,on,_n){var Pe=qe.exec(on.slice(_n));return Pe?(ke.m=be[Pe[0].toLowerCase()],_n+Pe[0].length):-1},B:function(ke,on,_n){var Pe=ye.exec(on.slice(_n));return Pe?(ke.m=Fe[Pe[0].toLowerCase()],_n+Pe[0].length):-1},c:function(ke,on,_n){return Mn(ke,Rt,on,_n)},d:C,e:C,f:S,H:l,I:l,j:h,L:I,m:_,M:u,p:function(ke,on,_n){var Pe=bn.exec(on.slice(_n));return Pe?(ke.p=Ln[Pe[0].toLowerCase()],_n+Pe[0].length):-1},q:k,Q:K,s:ct,S:v,u:H,U:z,V:c,w:O,W:D,x:function(ke,on,_n){return Mn(ke,zt,on,_n)},X:function(ke,on,_n){return Mn(ke,Ft,on,_n)},y:Q,Y:it,Z:W,"%":b};function Ie(ke,on){return function(_n){var Pe,wn,an,gn=[],Sn=-1,xn=0,hr=ke.length;for(_n instanceof Date||(_n=new Date(+_n));++Sn53)return null;"w"in an||(an.w=1),"Z"in an?(wn=(Pe=J(X(an.y,0,1))).getUTCDay(),Pe=wn>4||wn===0?Pt.c.ceil(Pe):Object(Pt.c)(Pe),Pe=d.a.offset(Pe,7*(an.V-1)),an.y=Pe.getUTCFullYear(),an.m=Pe.getUTCMonth(),an.d=Pe.getUTCDate()+(an.w+6)%7):(wn=(Pe=$(X(an.y,0,1))).getDay(),Pe=wn>4||wn===0?g.c.ceil(Pe):Object(g.c)(Pe),Pe=L.b.offset(Pe,7*(an.V-1)),an.y=Pe.getFullYear(),an.m=Pe.getMonth(),an.d=Pe.getDate()+(an.w+6)%7)}else("W"in an||"U"in an)&&("w"in an||(an.w="u"in an?an.u%7:"W"in an?1:0),wn="Z"in an?J(X(an.y,0,1)).getUTCDay():$(X(an.y,0,1)).getDay(),an.m=0,an.d="W"in an?(an.w+6)%7+7*an.W-(wn+5)%7:an.w+7*an.U-(wn+6)%7);return"Z"in an?(an.H+=an.Z/100|0,an.M+=an.Z%100,J(an)):$(an)}}function Mn(ke,on,_n,Pe){for(var wn,an,gn=0,Sn=on.length,xn=_n.length;gn=xn)return-1;if((wn=on.charCodeAt(gn++))===37){if(wn=on.charAt(gn++),!(an=Re[wn in Z?on.charAt(gn++):wn])||(Pe=an(ke,_n,Pe))<0)return-1}else if(wn!=_n.charCodeAt(Pe++))return-1}return Pe}return je.x=Ie(zt,je),je.X=Ie(Ft,je),je.c=Ie(Rt,je),Ue.x=Ie(zt,Ue),Ue.X=Ie(Ft,Ue),Ue.c=Ie(Rt,Ue),{format:function(ke){var on=Ie(ke+="",je);return on.toString=function(){return ke},on},parse:function(ke){var on=tn(ke+="",!1);return on.toString=function(){return ke},on},utcFormat:function(ke){var on=Ie(ke+="",Ue);return on.toString=function(){return ke},on},utcParse:function(ke){var on=tn(ke+="",!0);return on.toString=function(){return ke},on}}}var Z={"-":"",_:" ",0:"0"},Y=/^\s*\d+/,V=/^%/,N=/[\\^$*+?|[\]().{}]/g;function U(Et,Rt,zt){var Ft=Et<0?"-":"",ce=(Ft?-Et:Et)+"",Se=ce.length;return Ft+(Se68?1900:2e3),zt+Ft[0].length):-1}function W(Et,Rt,zt){var Ft=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Rt.slice(zt,zt+6));return Ft?(Et.Z=Ft[1]?0:-(Ft[2]+(Ft[3]||"00")),zt+Ft[0].length):-1}function k(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+1));return Ft?(Et.q=3*Ft[0]-3,zt+Ft[0].length):-1}function _(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.m=Ft[0]-1,zt+Ft[0].length):-1}function C(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.d=+Ft[0],zt+Ft[0].length):-1}function h(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.m=0,Et.d=+Ft[0],zt+Ft[0].length):-1}function l(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.H=+Ft[0],zt+Ft[0].length):-1}function u(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.M=+Ft[0],zt+Ft[0].length):-1}function v(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.S=+Ft[0],zt+Ft[0].length):-1}function I(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.L=+Ft[0],zt+Ft[0].length):-1}function S(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+6));return Ft?(Et.L=Math.floor(Ft[0]/1e3),zt+Ft[0].length):-1}function b(Et,Rt,zt){var Ft=V.exec(Rt.slice(zt,zt+1));return Ft?zt+Ft[0].length:-1}function K(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.Q=+Ft[0],zt+Ft[0].length):-1}function ct(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.s=+Ft[0],zt+Ft[0].length):-1}function et(Et,Rt){return U(Et.getDate(),Rt,2)}function dt(Et,Rt){return U(Et.getHours(),Rt,2)}function pt(Et,Rt){return U(Et.getHours()%12||12,Rt,2)}function bt(Et,Rt){return U(1+L.b.count(Object(R.a)(Et),Et),Rt,3)}function Mt(Et,Rt){return U(Et.getMilliseconds(),Rt,3)}function w(Et,Rt){return Mt(Et,Rt)+"000"}function B(Et,Rt){return U(Et.getMonth()+1,Rt,2)}function tt(Et,Rt){return U(Et.getMinutes(),Rt,2)}function nt(Et,Rt){return U(Et.getSeconds(),Rt,2)}function x(Et){var Rt=Et.getDay();return Rt===0?7:Rt}function y(Et,Rt){return U(g.g.count(Object(R.a)(Et)-1,Et),Rt,2)}function F(Et,Rt){var zt=Et.getDay();return Et=zt>=4||zt===0?Object(g.i)(Et):g.i.ceil(Et),U(g.i.count(Object(R.a)(Et),Et)+(Object(R.a)(Et).getDay()===4),Rt,2)}function lt(Et){return Et.getDay()}function rt(Et,Rt){return U(g.c.count(Object(R.a)(Et)-1,Et),Rt,2)}function gt(Et,Rt){return U(Et.getFullYear()%100,Rt,2)}function vt(Et,Rt){return U(Et.getFullYear()%1e4,Rt,4)}function Ot(Et){var Rt=Et.getTimezoneOffset();return(Rt>0?"-":(Rt*=-1,"+"))+U(Rt/60|0,"0",2)+U(Rt%60,"0",2)}function At(Et,Rt){return U(Et.getUTCDate(),Rt,2)}function $t(Et,Rt){return U(Et.getUTCHours(),Rt,2)}function Xt(Et,Rt){return U(Et.getUTCHours()%12||12,Rt,2)}function Ct(Et,Rt){return U(1+d.a.count(Object(st.a)(Et),Et),Rt,3)}function wt(Et,Rt){return U(Et.getUTCMilliseconds(),Rt,3)}function Dt(Et,Rt){return wt(Et,Rt)+"000"}function jt(Et,Rt){return U(Et.getUTCMonth()+1,Rt,2)}function re(Et,Rt){return U(Et.getUTCMinutes(),Rt,2)}function le(Et,Rt){return U(Et.getUTCSeconds(),Rt,2)}function Gt(Et){var Rt=Et.getUTCDay();return Rt===0?7:Rt}function he(Et,Rt){return U(Pt.g.count(Object(st.a)(Et)-1,Et),Rt,2)}function ve(Et,Rt){var zt=Et.getUTCDay();return Et=zt>=4||zt===0?Object(Pt.i)(Et):Pt.i.ceil(Et),U(Pt.i.count(Object(st.a)(Et),Et)+(Object(st.a)(Et).getUTCDay()===4),Rt,2)}function Ce(Et){return Et.getUTCDay()}function Te(Et,Rt){return U(Pt.c.count(Object(st.a)(Et)-1,Et),Rt,2)}function Ke(Et,Rt){return U(Et.getUTCFullYear()%100,Rt,2)}function rn(Et,Rt){return U(Et.getUTCFullYear()%1e4,Rt,4)}function un(){return"+0000"}function Qt(){return"%"}function Kt(Et){return+Et}function Jt(Et){return Math.floor(+Et/1e3)}},function(Oe,xt,j){"use strict";var Pt=j(6),d=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,g=new RegExp(d.source,"g");xt.a=function(L,R){var st,$,J,X=d.lastIndex=g.lastIndex=0,q=-1,Z=[],Y=[];for(L+="",R+="";(st=d.exec(L))&&($=g.exec(R));)(J=$.index)>X&&(J=R.slice(X,J),Z[q]?Z[q]+=J:Z[++q]=J),(st=st[0])===($=$[0])?Z[q]?Z[q]+=$:Z[++q]=$:(Z[++q]=null,Y.push({i:q,x:Object(Pt.a)(st,$)})),X=g.lastIndex;return X=0&&(q=X.slice(Z+1),X=X.slice(0,Z)),X&&!J.hasOwnProperty(X))throw new Error("unknown type: "+X);return{type:X,name:q}})}function R($,J){for(var X,q=0,Z=$.length;q0)for(var X,q,Z=new Array(X),Y=0;Y1e-6)if(Math.abs(He*ge-Ae*Qe)>1e-6&&Wt){var kn=Vt-se,Bn=_t-pe,Yn=ge*ge+Ae*Ae,fr=kn*kn+Bn*Bn,or=Math.sqrt(Yn),Zn=Math.sqrt(sn),ur=Wt*Math.tan((Pt-Math.acos((Yn+sn-fr)/(2*or*Zn)))/2),Tr=ur/Zn,Sr=ur/or;Math.abs(Tr-1)>1e-6&&(this._+="L"+(ht+Tr*Qe)+","+(Nt+Tr*He)),this._+="A"+Wt+","+Wt+",0,0,"+ +(He*kn>Qe*Bn)+","+(this._x1=ht+Sr*ge)+","+(this._y1=Nt+Sr*Ae)}else this._+="L"+(this._x1=ht)+","+(this._y1=Nt)},arc:function(ht,Nt,Vt,_t,Wt,se){ht=+ht,Nt=+Nt,se=!!se;var pe=(Vt=+Vt)*Math.cos(_t),ge=Vt*Math.sin(_t),Ae=ht+pe,Qe=Nt+ge,He=1^se,sn=se?_t-Wt:Wt-_t;if(Vt<0)throw new Error("negative radius: "+Vt);this._x1===null?this._+="M"+Ae+","+Qe:(Math.abs(this._x1-Ae)>1e-6||Math.abs(this._y1-Qe)>1e-6)&&(this._+="L"+Ae+","+Qe),Vt&&(sn<0&&(sn=sn%d+d),sn>g?this._+="A"+Vt+","+Vt+",0,1,"+He+","+(ht-pe)+","+(Nt-ge)+"A"+Vt+","+Vt+",0,1,"+He+","+(this._x1=Ae)+","+(this._y1=Qe):sn>1e-6&&(this._+="A"+Vt+","+Vt+",0,"+ +(sn>=Pt)+","+He+","+(this._x1=ht+Vt*Math.cos(Wt))+","+(this._y1=Nt+Vt*Math.sin(Wt))))},rect:function(ht,Nt,Vt,_t){this._+="M"+(this._x0=this._x1=+ht)+","+(this._y0=this._y1=+Nt)+"h"+ +Vt+"v"+ +_t+"h"+-Vt+"Z"},toString:function(){return this._}};var st=R,$=function(ht){return function(){return ht}},J=Math.abs,X=Math.atan2,q=Math.cos,Z=Math.max,Y=Math.min,V=Math.sin,N=Math.sqrt,U=Math.PI,T=U/2,A=2*U;function M(ht){return ht>1?0:ht<-1?U:Math.acos(ht)}function O(ht){return ht>=1?T:ht<=-1?-T:Math.asin(ht)}function H(ht){return ht.innerRadius}function z(ht){return ht.outerRadius}function c(ht){return ht.startAngle}function D(ht){return ht.endAngle}function it(ht){return ht&&ht.padAngle}function Q(ht,Nt,Vt,_t,Wt,se,pe,ge){var Ae=Vt-ht,Qe=_t-Nt,He=pe-Wt,sn=ge-se,kn=sn*Ae-He*Qe;if(!(kn*kn<1e-12))return[ht+(kn=(He*(Nt-se)-sn*(ht-Wt))/kn)*Ae,Nt+kn*Qe]}function W(ht,Nt,Vt,_t,Wt,se,pe){var ge=ht-Vt,Ae=Nt-_t,Qe=(pe?se:-se)/N(ge*ge+Ae*Ae),He=Qe*Ae,sn=-Qe*ge,kn=ht+He,Bn=Nt+sn,Yn=Vt+He,fr=_t+sn,or=(kn+Yn)/2,Zn=(Bn+fr)/2,ur=Yn-kn,Tr=fr-Bn,Sr=ur*ur+Tr*Tr,Br=Wt-se,Kr=kn*fr-Yn*Bn,ui=(Tr<0?-1:1)*N(Z(0,Br*Br*Sr-Kr*Kr)),Li=(Kr*Tr-ur*ui)/Sr,Ai=(-Kr*ur-Tr*ui)/Sr,yi=(Kr*Tr+ur*ui)/Sr,Oi=(-Kr*ur+Tr*ui)/Sr,Ii=Li-or,Pi=Ai-Zn,Gi=yi-or,io=Oi-Zn;return Ii*Ii+Pi*Pi>Gi*Gi+io*io&&(Li=yi,Ai=Oi),{cx:Li,cy:Ai,x01:-He,y01:-sn,x11:Li*(Wt/Br-1),y11:Ai*(Wt/Br-1)}}var k=function(){var ht=H,Nt=z,Vt=$(0),_t=null,Wt=c,se=D,pe=it,ge=null;function Ae(){var Qe,He,sn=+ht.apply(this,arguments),kn=+Nt.apply(this,arguments),Bn=Wt.apply(this,arguments)-T,Yn=se.apply(this,arguments)-T,fr=J(Yn-Bn),or=Yn>Bn;if(ge||(ge=Qe=st()),kn1e-12)if(fr>A-1e-12)ge.moveTo(kn*q(Bn),kn*V(Bn)),ge.arc(0,0,kn,Bn,Yn,!or),sn>1e-12&&(ge.moveTo(sn*q(Yn),sn*V(Yn)),ge.arc(0,0,sn,Yn,Bn,or));else{var Zn,ur,Tr=Bn,Sr=Yn,Br=Bn,Kr=Yn,ui=fr,Li=fr,Ai=pe.apply(this,arguments)/2,yi=Ai>1e-12&&(_t?+_t.apply(this,arguments):N(sn*sn+kn*kn)),Oi=Y(J(kn-sn)/2,+Vt.apply(this,arguments)),Ii=Oi,Pi=Oi;if(yi>1e-12){var Gi=O(yi/sn*V(Ai)),io=O(yi/kn*V(Ai));(ui-=2*Gi)>1e-12?(Br+=Gi*=or?1:-1,Kr-=Gi):(ui=0,Br=Kr=(Bn+Yn)/2),(Li-=2*io)>1e-12?(Tr+=io*=or?1:-1,Sr-=io):(Li=0,Tr=Sr=(Bn+Yn)/2)}var eo=kn*q(Tr),Eo=kn*V(Tr),Ro=sn*q(Kr),mo=sn*V(Kr);if(Oi>1e-12){var ao,_o=kn*q(Sr),qo=kn*V(Sr),lo=sn*q(Br),ki=sn*V(Br);if(fr1e-12?Pi>1e-12?(Zn=W(lo,ki,eo,Eo,kn,Pi,or),ur=W(_o,qo,Ro,mo,kn,Pi,or),ge.moveTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Pi1e-12&&ui>1e-12?Ii>1e-12?(Zn=W(Ro,mo,_o,qo,sn,-Ii,or),ur=W(eo,Eo,lo,ki,sn,-Ii,or),ge.lineTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Ii=kn;--Bn)ge.point(ur[Bn],Tr[Bn]);ge.lineEnd(),ge.areaEnd()}Zn&&(ur[sn]=+ht(Yn,sn,He),Tr[sn]=+Vt(Yn,sn,He),ge.point(Nt?+Nt(Yn,sn,He):ur[sn],_t?+_t(Yn,sn,He):Tr[sn]))}if(fr)return ge=null,fr+""||null}function Qe(){return u().defined(Wt).curve(pe).context(se)}return Ae.x=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Nt=null,Ae):ht},Ae.x0=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Ae):ht},Ae.x1=function(He){return arguments.length?(Nt=He==null?null:typeof He=="function"?He:$(+He),Ae):Nt},Ae.y=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),_t=null,Ae):Vt},Ae.y0=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),Ae):Vt},Ae.y1=function(He){return arguments.length?(_t=He==null?null:typeof He=="function"?He:$(+He),Ae):_t},Ae.lineX0=Ae.lineY0=function(){return Qe().x(ht).y(Vt)},Ae.lineY1=function(){return Qe().x(ht).y(_t)},Ae.lineX1=function(){return Qe().x(Nt).y(Vt)},Ae.defined=function(He){return arguments.length?(Wt=typeof He=="function"?He:$(!!He),Ae):Wt},Ae.curve=function(He){return arguments.length?(pe=He,se!=null&&(ge=pe(se)),Ae):pe},Ae.context=function(He){return arguments.length?(He==null?se=ge=null:ge=pe(se=He),Ae):se},Ae},I=function(ht,Nt){return Ntht?1:Nt>=ht?0:NaN},S=function(ht){return ht},b=function(){var ht=S,Nt=I,Vt=null,_t=$(0),Wt=$(A),se=$(0);function pe(ge){var Ae,Qe,He,sn,kn,Bn=ge.length,Yn=0,fr=new Array(Bn),or=new Array(Bn),Zn=+_t.apply(this,arguments),ur=Math.min(A,Math.max(-A,Wt.apply(this,arguments)-Zn)),Tr=Math.min(Math.abs(ur)/Bn,se.apply(this,arguments)),Sr=Tr*(ur<0?-1:1);for(Ae=0;Ae0&&(Yn+=kn);for(Nt!=null?fr.sort(function(Br,Kr){return Nt(or[Br],or[Kr])}):Vt!=null&&fr.sort(function(Br,Kr){return Vt(ge[Br],ge[Kr])}),Ae=0,He=Yn?(ur-Bn*Sr)/Yn:0;Ae0?kn*He:0)+Sr,or[Qe]={data:ge[Qe],index:Ae,value:kn,startAngle:Zn,endAngle:sn,padAngle:Tr};return or}return pe.value=function(ge){return arguments.length?(ht=typeof ge=="function"?ge:$(+ge),pe):ht},pe.sortValues=function(ge){return arguments.length?(Nt=ge,Vt=null,pe):Nt},pe.sort=function(ge){return arguments.length?(Vt=ge,Nt=null,pe):Vt},pe.startAngle=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.endAngle=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.padAngle=function(ge){return arguments.length?(se=typeof ge=="function"?ge:$(+ge),pe):se},pe},K=et(C);function ct(ht){this._curve=ht}function et(ht){function Nt(Vt){return new ct(ht(Vt))}return Nt._curve=ht,Nt}function dt(ht){var Nt=ht.curve;return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht.curve=function(Vt){return arguments.length?Nt(et(Vt)):Nt()._curve},ht}ct.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(ht,Nt){this._curve.point(Nt*Math.sin(ht),Nt*-Math.cos(ht))}};var pt=function(){return dt(u().curve(K))},bt=function(){var ht=v().curve(K),Nt=ht.curve,Vt=ht.lineX0,_t=ht.lineX1,Wt=ht.lineY0,se=ht.lineY1;return ht.angle=ht.x,delete ht.x,ht.startAngle=ht.x0,delete ht.x0,ht.endAngle=ht.x1,delete ht.x1,ht.radius=ht.y,delete ht.y,ht.innerRadius=ht.y0,delete ht.y0,ht.outerRadius=ht.y1,delete ht.y1,ht.lineStartAngle=function(){return dt(Vt())},delete ht.lineX0,ht.lineEndAngle=function(){return dt(_t())},delete ht.lineX1,ht.lineInnerRadius=function(){return dt(Wt())},delete ht.lineY0,ht.lineOuterRadius=function(){return dt(se())},delete ht.lineY1,ht.curve=function(pe){return arguments.length?Nt(et(pe)):Nt()._curve},ht},Mt=function(ht,Nt){return[(Nt=+Nt)*Math.cos(ht-=Math.PI/2),Nt*Math.sin(ht)]},w=Array.prototype.slice;function B(ht){return ht.source}function tt(ht){return ht.target}function nt(ht){var Nt=B,Vt=tt,_t=h,Wt=l,se=null;function pe(){var ge,Ae=w.call(arguments),Qe=Nt.apply(this,Ae),He=Vt.apply(this,Ae);if(se||(se=ge=st()),ht(se,+_t.apply(this,(Ae[0]=Qe,Ae)),+Wt.apply(this,Ae),+_t.apply(this,(Ae[0]=He,Ae)),+Wt.apply(this,Ae)),ge)return se=null,ge+""||null}return pe.source=function(ge){return arguments.length?(Nt=ge,pe):Nt},pe.target=function(ge){return arguments.length?(Vt=ge,pe):Vt},pe.x=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.y=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.context=function(ge){return arguments.length?(se=ge==null?null:ge,pe):se},pe}function x(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt=(Nt+_t)/2,Vt,Nt,Wt,_t,Wt)}function y(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt,Vt=(Vt+Wt)/2,_t,Vt,_t,Wt)}function F(ht,Nt,Vt,_t,Wt){var se=Mt(Nt,Vt),pe=Mt(Nt,Vt=(Vt+Wt)/2),ge=Mt(_t,Vt),Ae=Mt(_t,Wt);ht.moveTo(se[0],se[1]),ht.bezierCurveTo(pe[0],pe[1],ge[0],ge[1],Ae[0],Ae[1])}function lt(){return nt(x)}function rt(){return nt(y)}function gt(){var ht=nt(F);return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht}var vt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/U);ht.moveTo(Vt,0),ht.arc(0,0,Vt,0,A)}},Ot={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/5)/2;ht.moveTo(-3*Vt,-Vt),ht.lineTo(-Vt,-Vt),ht.lineTo(-Vt,-3*Vt),ht.lineTo(Vt,-3*Vt),ht.lineTo(Vt,-Vt),ht.lineTo(3*Vt,-Vt),ht.lineTo(3*Vt,Vt),ht.lineTo(Vt,Vt),ht.lineTo(Vt,3*Vt),ht.lineTo(-Vt,3*Vt),ht.lineTo(-Vt,Vt),ht.lineTo(-3*Vt,Vt),ht.closePath()}},At=Math.sqrt(1/3),$t=2*At,Xt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/$t),_t=Vt*At;ht.moveTo(0,-Vt),ht.lineTo(_t,0),ht.lineTo(0,Vt),ht.lineTo(-_t,0),ht.closePath()}},Ct=Math.sin(U/10)/Math.sin(7*U/10),wt=Math.sin(A/10)*Ct,Dt=-Math.cos(A/10)*Ct,jt={draw:function(ht,Nt){var Vt=Math.sqrt(.8908130915292852*Nt),_t=wt*Vt,Wt=Dt*Vt;ht.moveTo(0,-Vt),ht.lineTo(_t,Wt);for(var se=1;se<5;++se){var pe=A*se/5,ge=Math.cos(pe),Ae=Math.sin(pe);ht.lineTo(Ae*Vt,-ge*Vt),ht.lineTo(ge*_t-Ae*Wt,Ae*_t+ge*Wt)}ht.closePath()}},re={draw:function(ht,Nt){var Vt=Math.sqrt(Nt),_t=-Vt/2;ht.rect(_t,_t,Vt,Vt)}},le=Math.sqrt(3),Gt={draw:function(ht,Nt){var Vt=-Math.sqrt(Nt/(3*le));ht.moveTo(0,2*Vt),ht.lineTo(-le*Vt,-Vt),ht.lineTo(le*Vt,-Vt),ht.closePath()}},he=Math.sqrt(3)/2,ve=1/Math.sqrt(12),Ce=3*(ve/2+1),Te={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/Ce),_t=Vt/2,Wt=Vt*ve,se=_t,pe=Vt*ve+Vt,ge=-se,Ae=pe;ht.moveTo(_t,Wt),ht.lineTo(se,pe),ht.lineTo(ge,Ae),ht.lineTo(-.5*_t-he*Wt,he*_t+-.5*Wt),ht.lineTo(-.5*se-he*pe,he*se+-.5*pe),ht.lineTo(-.5*ge-he*Ae,he*ge+-.5*Ae),ht.lineTo(-.5*_t+he*Wt,-.5*Wt-he*_t),ht.lineTo(-.5*se+he*pe,-.5*pe-he*se),ht.lineTo(-.5*ge+he*Ae,-.5*Ae-he*ge),ht.closePath()}},Ke=[vt,Ot,Xt,re,jt,Gt,Te],rn=function(){var ht=$(vt),Nt=$(64),Vt=null;function _t(){var Wt;if(Vt||(Vt=Wt=st()),ht.apply(this,arguments).draw(Vt,+Nt.apply(this,arguments)),Wt)return Vt=null,Wt+""||null}return _t.type=function(Wt){return arguments.length?(ht=typeof Wt=="function"?Wt:$(Wt),_t):ht},_t.size=function(Wt){return arguments.length?(Nt=typeof Wt=="function"?Wt:$(+Wt),_t):Nt},_t.context=function(Wt){return arguments.length?(Vt=Wt==null?null:Wt,_t):Vt},_t},un=function(){};function Qt(ht,Nt,Vt){ht._context.bezierCurveTo((2*ht._x0+ht._x1)/3,(2*ht._y0+ht._y1)/3,(ht._x0+2*ht._x1)/3,(ht._y0+2*ht._y1)/3,(ht._x0+4*ht._x1+Nt)/6,(ht._y0+4*ht._y1+Vt)/6)}function Kt(ht){this._context=ht}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Qt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Jt=function(ht){return new Kt(ht)};function Et(ht){this._context=ht}Et.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x2=ht,this._y2=Nt;break;case 1:this._point=2,this._x3=ht,this._y3=Nt;break;case 2:this._point=3,this._x4=ht,this._y4=Nt,this._context.moveTo((this._x0+4*this._x1+ht)/6,(this._y0+4*this._y1+Nt)/6);break;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Rt=function(ht){return new Et(ht)};function zt(ht){this._context=ht}zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Vt=(this._x0+4*this._x1+ht)/6,_t=(this._y0+4*this._y1+Nt)/6;this._line?this._context.lineTo(Vt,_t):this._context.moveTo(Vt,_t);break;case 3:this._point=4;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Ft=function(ht){return new zt(ht)};function ce(ht,Nt){this._basis=new Kt(ht),this._beta=Nt}ce.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length-1;if(Vt>0)for(var _t,Wt=ht[0],se=Nt[0],pe=ht[Vt]-Wt,ge=Nt[Vt]-se,Ae=-1;++Ae<=Vt;)_t=Ae/Vt,this._basis.point(this._beta*ht[Ae]+(1-this._beta)*(Wt+_t*pe),this._beta*Nt[Ae]+(1-this._beta)*(se+_t*ge));this._x=this._y=null,this._basis.lineEnd()},point:function(ht,Nt){this._x.push(+ht),this._y.push(+Nt)}};var Se=function ht(Nt){function Vt(_t){return Nt===1?new Kt(_t):new ce(_t,Nt)}return Vt.beta=function(_t){return ht(+_t)},Vt}(.85);function xe(ht,Nt,Vt){ht._context.bezierCurveTo(ht._x1+ht._k*(ht._x2-ht._x0),ht._y1+ht._k*(ht._y2-ht._y0),ht._x2+ht._k*(ht._x1-Nt),ht._y2+ht._k*(ht._y1-Vt),ht._x2,ht._y2)}function Ze(ht,Nt){this._context=ht,this._k=(1-Nt)/6}Ze.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:xe(this,this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2,this._x1=ht,this._y1=Nt;break;case 2:this._point=3;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var pn=function ht(Nt){function Vt(_t){return new Ze(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function bn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}bn.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Ln=function ht(Nt){function Vt(_t){return new bn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function vn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}vn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Tn=function ht(Nt){function Vt(_t){return new vn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function Qn(ht,Nt,Vt){var _t=ht._x1,Wt=ht._y1,se=ht._x2,pe=ht._y2;if(ht._l01_a>1e-12){var ge=2*ht._l01_2a+3*ht._l01_a*ht._l12_a+ht._l12_2a,Ae=3*ht._l01_a*(ht._l01_a+ht._l12_a);_t=(_t*ge-ht._x0*ht._l12_2a+ht._x2*ht._l01_2a)/Ae,Wt=(Wt*ge-ht._y0*ht._l12_2a+ht._y2*ht._l01_2a)/Ae}if(ht._l23_a>1e-12){var Qe=2*ht._l23_2a+3*ht._l23_a*ht._l12_a+ht._l12_2a,He=3*ht._l23_a*(ht._l23_a+ht._l12_a);se=(se*Qe+ht._x1*ht._l23_2a-Nt*ht._l12_2a)/He,pe=(pe*Qe+ht._y1*ht._l23_2a-Vt*ht._l12_2a)/He}ht._context.bezierCurveTo(_t,Wt,se,pe,ht._x2,ht._y2)}function dr(ht,Nt){this._context=ht,this._alpha=Nt}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var ye=function ht(Nt){function Vt(_t){return Nt?new dr(_t,Nt):new Ze(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Fe(ht,Nt){this._context=ht,this._alpha=Nt}Fe.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var qe=function ht(Nt){function Vt(_t){return Nt?new Fe(_t,Nt):new bn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function be(ht,Nt){this._context=ht,this._alpha=Nt}be.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var je=function ht(Nt){function Vt(_t){return Nt?new be(_t,Nt):new vn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Ue(ht){this._context=ht}Ue.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(ht,Nt){ht=+ht,Nt=+Nt,this._point?this._context.lineTo(ht,Nt):(this._point=1,this._context.moveTo(ht,Nt))}};var Re=function(ht){return new Ue(ht)};function Ie(ht){return ht<0?-1:1}function tn(ht,Nt,Vt){var _t=ht._x1-ht._x0,Wt=Nt-ht._x1,se=(ht._y1-ht._y0)/(_t||Wt<0&&-0),pe=(Vt-ht._y1)/(Wt||_t<0&&-0),ge=(se*Wt+pe*_t)/(_t+Wt);return(Ie(se)+Ie(pe))*Math.min(Math.abs(se),Math.abs(pe),.5*Math.abs(ge))||0}function Mn(ht,Nt){var Vt=ht._x1-ht._x0;return Vt?(3*(ht._y1-ht._y0)/Vt-Nt)/2:Nt}function ke(ht,Nt,Vt){var _t=ht._x0,Wt=ht._y0,se=ht._x1,pe=ht._y1,ge=(se-_t)/3;ht._context.bezierCurveTo(_t+ge,Wt+ge*Nt,se-ge,pe-ge*Vt,se,pe)}function on(ht){this._context=ht}function _n(ht){this._context=new Pe(ht)}function Pe(ht){this._context=ht}function wn(ht){return new on(ht)}function an(ht){return new _n(ht)}function gn(ht){this._context=ht}function Sn(ht){var Nt,Vt,_t=ht.length-1,Wt=new Array(_t),se=new Array(_t),pe=new Array(_t);for(Wt[0]=0,se[0]=2,pe[0]=ht[0]+2*ht[1],Nt=1;Nt<_t-1;++Nt)Wt[Nt]=1,se[Nt]=4,pe[Nt]=4*ht[Nt]+2*ht[Nt+1];for(Wt[_t-1]=2,se[_t-1]=7,pe[_t-1]=8*ht[_t-1]+ht[_t],Nt=1;Nt<_t;++Nt)Vt=Wt[Nt]/se[Nt-1],se[Nt]-=Vt,pe[Nt]-=Vt*pe[Nt-1];for(Wt[_t-1]=pe[_t-1]/se[_t-1],Nt=_t-2;Nt>=0;--Nt)Wt[Nt]=(pe[Nt]-Wt[Nt+1])/se[Nt];for(se[_t-1]=(ht[_t]+Wt[_t-1])/2,Nt=0;Nt<_t-1;++Nt)se[Nt]=2*ht[Nt+1]-Wt[Nt+1];return[Wt,se]}on.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:ke(this,this._t0,Mn(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){var Vt=NaN;if(Nt=+Nt,(ht=+ht)!==this._x1||Nt!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,ke(this,Mn(this,Vt=tn(this,ht,Nt)),Vt);break;default:ke(this,this._t0,Vt=tn(this,ht,Nt))}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt,this._t0=Vt}}},(_n.prototype=Object.create(on.prototype)).point=function(ht,Nt){on.prototype.point.call(this,Nt,ht)},Pe.prototype={moveTo:function(ht,Nt){this._context.moveTo(Nt,ht)},closePath:function(){this._context.closePath()},lineTo:function(ht,Nt){this._context.lineTo(Nt,ht)},bezierCurveTo:function(ht,Nt,Vt,_t,Wt,se){this._context.bezierCurveTo(Nt,ht,_t,Vt,se,Wt)}},gn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length;if(Vt)if(this._line?this._context.lineTo(ht[0],Nt[0]):this._context.moveTo(ht[0],Nt[0]),Vt===2)this._context.lineTo(ht[1],Nt[1]);else for(var _t=Sn(ht),Wt=Sn(Nt),se=0,pe=1;pe=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,Nt),this._context.lineTo(ht,Nt);else{var Vt=this._x*(1-this._t)+ht*this._t;this._context.lineTo(Vt,this._y),this._context.lineTo(Vt,Nt)}}this._x=ht,this._y=Nt}};var nr=function(ht){return new hr(ht,.5)};function pr(ht){return new hr(ht,0)}function vr(ht){return new hr(ht,1)}var rr=function(ht,Nt){if((Wt=ht.length)>1)for(var Vt,_t,Wt,se=1,pe=ht[Nt[0]],ge=pe.length;se=0;)Vt[Nt]=Nt;return Vt};function jr(ht,Nt){return ht[Nt]}var lr=function(){var ht=$([]),Nt=Rr,Vt=rr,_t=jr;function Wt(se){var pe,ge,Ae=ht.apply(this,arguments),Qe=se.length,He=Ae.length,sn=new Array(He);for(pe=0;pe0){for(var Vt,_t,Wt,se=0,pe=ht[0].length;se0)for(var Vt,_t,Wt,se,pe,ge,Ae=0,Qe=ht[Nt[0]].length;Ae0?(_t[0]=se,_t[1]=se+=Wt):Wt<0?(_t[1]=pe,_t[0]=pe+=Wt):(_t[0]=0,_t[1]=Wt)},fi=function(ht,Nt){if((Vt=ht.length)>0){for(var Vt,_t=0,Wt=ht[Nt[0]],se=Wt.length;_t0&&(_t=(Vt=ht[Nt[0]]).length)>0){for(var Vt,_t,Wt,se=0,pe=1;pe<_t;++pe){for(var ge=0,Ae=0,Qe=0;gese&&(se=Nt,_t=Vt);return _t}var Bi=function(ht){var Nt=ht.map(te);return Rr(ht).sort(function(Vt,_t){return Nt[Vt]-Nt[_t]})};function te(ht){for(var Nt,Vt=0,_t=-1,Wt=ht.length;++_t=0&&Kt._call.call(null,Qt),Kt=Kt._next;--R})()}finally{R=0,function(){for(var Qt,Kt,Jt=Pt,Et=1/0;Jt;)Jt._call?(Et>Jt._time&&(Et=Jt._time),Qt=Jt,Jt=Jt._next):(Kt=Jt._next,Jt._next=null,Jt=Qt?Qt._next=Kt:Pt=Kt);d=Qt,O(Et)}(),X=0}}function M(){var Qt=Z.now(),Kt=Qt-J;Kt>1e3&&(q-=Kt,J=Qt)}function O(Qt){R||(st&&(st=clearTimeout(st)),Qt-X>24?(Qt<1/0&&(st=setTimeout(A,Qt-Z.now()-q)),$&&($=clearInterval($))):($||(J=Z.now(),$=setInterval(M,1e3)),R=1,Y(A)))}U.prototype=T.prototype={constructor:U,restart:function(Qt,Kt,Jt){if(typeof Qt!="function")throw new TypeError("callback is not a function");Jt=(Jt==null?V():+Jt)+(Kt==null?0:+Kt),this._next||d===this||(d?d._next=this:Pt=this,d=this),this._call=Qt,this._time=Jt,O()},stop:function(){this._call&&(this._call=null,this._time=1/0,O())}};var H=function(Qt,Kt,Jt){var Et=new U;return Kt=Kt==null?0:+Kt,Et.restart(function(Rt){Et.stop(),Qt(Rt+Kt)},Kt,Jt),Et},z=Object(L.a)("start","end","cancel","interrupt"),c=[],D=function(Qt,Kt,Jt,Et,Rt,zt){var Ft=Qt.__transition;if(Ft){if(Jt in Ft)return}else Qt.__transition={};(function(ce,Se,xe){var Ze,pn=ce.__transition;function bn(Tn){var Qn,dr,ye,Fe;if(xe.state!==1)return vn();for(Qn in pn)if((Fe=pn[Qn]).name===xe.name){if(Fe.state===3)return H(bn);Fe.state===4?(Fe.state=6,Fe.timer.stop(),Fe.on.call("interrupt",ce,ce.__data__,Fe.index,Fe.group),delete pn[Qn]):+Qn0)throw new Error("too late; already scheduled");return Jt}function Q(Qt,Kt){var Jt=W(Qt,Kt);if(Jt.state>3)throw new Error("too late; already running");return Jt}function W(Qt,Kt){var Jt=Qt.__transition;if(!Jt||!(Jt=Jt[Kt]))throw new Error("transition not found");return Jt}var k=function(Qt,Kt){var Jt,Et,Rt,zt=Qt.__transition,Ft=!0;if(zt){for(Rt in Kt=Kt==null?null:Kt+"",zt)(Jt=zt[Rt]).name===Kt?(Et=Jt.state>2&&Jt.state<5,Jt.state=6,Jt.timer.stop(),Jt.on.call(Et?"interrupt":"cancel",Qt,Qt.__data__,Jt.index,Jt.group),delete zt[Rt]):Ft=!1;Ft&&delete Qt.__transition}},_=j(75),C=j(20);function h(Qt,Kt){var Jt,Et;return function(){var Rt=Q(this,Qt),zt=Rt.tween;if(zt!==Jt){for(var Ft=0,ce=(Et=Jt=zt).length;Ft=0&&(ce=ce.slice(0,Se)),!ce||ce==="start"})}(Kt)?it:Q;return function(){var Ft=zt(this,Qt),ce=Ft.on;ce!==Et&&(Rt=(Et=ce).copy()).on(Kt,Jt),Ft.on=Rt}}var Ot=j(19),At=j(33),$t=g.b.prototype.constructor,Xt=j(35);function Ct(Qt){return function(){this.style.removeProperty(Qt)}}function wt(Qt,Kt,Jt){return function(Et){this.style.setProperty(Qt,Kt.call(this,Et),Jt)}}function Dt(Qt,Kt,Jt){var Et,Rt;function zt(){var Ft=Kt.apply(this,arguments);return Ft!==Rt&&(Et=(Rt=Ft)&&wt(Qt,Ft,Jt)),Et}return zt._value=Kt,zt}function jt(Qt){return function(Kt){this.textContent=Qt.call(this,Kt)}}function re(Qt){var Kt,Jt;function Et(){var Rt=Qt.apply(this,arguments);return Rt!==Jt&&(Kt=(Jt=Rt)&&jt(Rt)),Kt}return Et._value=Qt,Et}var le=0;function Gt(Qt,Kt,Jt,Et){this._groups=Qt,this._parents=Kt,this._name=Jt,this._id=Et}function he(Qt){return Object(g.b)().transition(Qt)}function ve(){return++le}var Ce=g.b.prototype;Gt.prototype=he.prototype={constructor:Gt,select:function(Qt){var Kt=this._name,Jt=this._id;typeof Qt!="function"&&(Qt=Object(Ot.a)(Qt));for(var Et=this._groups,Rt=Et.length,zt=new Array(Rt),Ft=0;Ft1&&Jt.name===Kt)return new Gt([[Qt]],rn,Kt,+Et)}return null};j.d(xt,"transition",function(){return he}),j.d(xt,"active",function(){return un}),j.d(xt,"interrupt",function(){return k})},function(Oe,xt,j){"use strict";var Pt;(Pt=function(){var d=j(71),g=j(39);return{axisTimeCombinations:{MINUTE_HOUR:"minute-hour",HOUR_DAY:"hour-daymonth",DAY_MONTH:"day-month",MONTH_YEAR:"month-year",CUSTOM:"custom"},curveMap:{linear:d.curveLinear,basis:d.curveBasis,cardinal:d.curveCardinal,catmullRom:d.curveCatmullRom,monotoneX:d.curveMonotoneX,monotoneY:d.curveMonotoneY,natural:d.curveNatural,step:d.curveStep,stepAfter:d.curveStepAfter,stepBefore:d.curveStepBefore},emptyDonutData:[{quantity:1,percentage:100}],timeBenchmarks:{ONE_AND_A_HALF_YEARS:47304e6,ONE_YEAR:31536000365,ONE_DAY:86400001},lineGradientId:"lineGradientId",timeIntervals:{timeMillisecond:g.timeMillisecond,utcMillisecond:g.utcMillisecond,timeSecond:g.timeSecond,utcSecond:g.utcSecond,timeMinute:g.timeMinute,utcMinute:g.utcMinute,timeHour:g.timeHour,utcHour:g.utcHour,timeDay:g.timeDay,utcDay:g.utcDay,timeWeek:g.timeWeek,utcWeek:g.utcWeek,timeSunday:g.timeSunday,utcSunday:g.utcSunday,timeMonday:g.timeMonday,utcMonday:g.utcMonday,timeTuesday:g.timeTuesday,utcTuesday:g.utcTuesday,timeWednesday:g.timeWednesday,utcWednesday:g.utcWednesday,timeThursday:g.timeThursday,utcThursday:g.utcThursday,timeFriday:g.timeFriday,utcFriday:g.utcFriday,timeSaturday:g.timeSaturday,utcSaturday:g.utcSaturday,timeMonth:g.timeMonth,utcMonth:g.utcMonth,timeYear:g.timeYear,utcYear:g.utcYear},FORMAT_LOCALE_URL:"https://cdn.jsdelivr.net/npm/d3-format/locale"}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)},,function(Oe,xt,j){"use strict";var Pt,d,g,L,R=j(6),st=180/Math.PI,$={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},J=function(Y,V,N,U,T,A){var M,O,H;return(M=Math.sqrt(Y*Y+V*V))&&(Y/=M,V/=M),(H=Y*N+V*U)&&(N-=Y*H,U-=V*H),(O=Math.sqrt(N*N+U*U))&&(N/=O,U/=O,H/=O),Y*U180?c+=360:c-z>180&&(z+=360),it.push({i:D.push(T(D)+"rotate(",null,U)-2,x:Object(R.a)(z,c)})):c&&D.push(T(D)+"rotate("+c+U)}(A.rotate,M.rotate,O,H),function(z,c,D,it){z!==c?it.push({i:D.push(T(D)+"skewX(",null,U)-2,x:Object(R.a)(z,c)}):c&&D.push(T(D)+"skewX("+c+U)}(A.skewX,M.skewX,O,H),function(z,c,D,it,Q,W){if(z!==D||c!==it){var k=Q.push(T(Q)+"scale(",null,",",null,")");W.push({i:k-4,x:Object(R.a)(z,D)},{i:k-2,x:Object(R.a)(c,it)})}else D===1&&it===1||Q.push(T(Q)+"scale("+D+","+it+")")}(A.scaleX,A.scaleY,M.scaleX,M.scaleY,O,H),A=M=null,function(z){for(var c,D=-1,it=H.length;++D1&&arguments[1]!==void 0?arguments[1]:12,Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Arial",V=document.createElement("canvas"),N=V.getContext("2d");return N.font=Z+"px "+Y,N.measureText(q).width},wrapText:function(q,Z,Y,V){var N=g.select(V),U=N.text().split(/\s+/).reverse(),T=void 0,A=[],M=0,O=L*st,H=N.attr("y"),z=parseFloat(N.attr("dy")),c=Z*$,D=N.text(null).append("tspan").attr("x",q).attr("y",H-5).attr("dy",z+"em").classed(J,!0).style("font-size",Z+"px");for(D.text(U.pop()),D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").style("font-size",c+"px");T=U.pop();)A.push(T),D.text(A.join(" ")),D.node()&&D.node().getComputedTextLength()>Y-50&&(A.pop(),D.text(A.join(" ")),A=[T],D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").text(T).style("font-size",c+"px"))},wrapTextWithEllipses:function(q,Z){var Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,V=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,N=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1.2;q.each(function(){var U,T,A,M,O,H,z;for(U=(q=g.select(this)).text().split(/\s+/).reverse(),A=[],M=0,O=q.attr("y"),H=parseFloat(q.attr("dy")),z=q.text(null).append("tspan").attr("x",Y).attr("y",O).attr("dy",H+"em");T=U.pop();)if(A.push(T),z.text(A.join(" ")),z.node()&&z.node().getComputedTextLength()>Z){if(A.pop(),z.text(A.join(" ")),!(M2&&arguments[2]!==void 0?arguments[2]:0;At.each(function(){var Ct,wt,Dt,jt,re,le,Gt;for(Ct=(At=$.select(this)).text().split(/\s+/).reverse(),Dt=[],jt=0,re=At.attr("y"),le=parseFloat(At.attr("dy")),Gt=At.text(null).append("tspan").attr("x",Xt).attr("y",re).attr("dy",le+"em");wt=Ct.pop();)Dt.push(wt),Gt.text(Dt.join(" ")),N(Dt.join(" "),16,"Karla, sans-serif")>$t&&(Dt.pop(),Gt.text(Dt.join(" ")),jt<2&&(Dt=[wt],Gt=At.append("tspan").attr("x",Xt).attr("y",re).attr("dy",1.2*++jt+le+"em").text(wt)))})}function vt(At){var $t=At[K];pt.length?$t=function(Xt){var Ct=arguments.length>1&&arguments[1]!==void 0?arguments[1]:pt;return Ct.map(function(wt){return Xt.filter(function(Dt){return Dt.name===wt})[0]})}($t):$t.length&&$t[0].name&&($t=function(Xt){return Xt.map(function(Ct){return Ct}).sort(function(Ct,wt){return Ct.name>wt.name?1:Ct.name===wt.name?0:-1})}($t)),Q.selectAll("text").remove(),Q.selectAll("circle").remove(),rt(At),k=48,C=37,_=0,$t.forEach(F)}function Ot(At,$t,Xt){vt(At),lt(0,$t,Xt)}return x.axisTimeCombinations=X,x.dateFormat=function(At){return arguments.length?(et=At,this):et||ct},x.dateCustomFormat=function(At){return arguments.length?(dt=At,this):dt},x.dateLabel=function(At){return arguments.length?(I=At,this):I},x.hide=function(){return nt.style("visibility","hidden"),this},x.locale=function(At){return arguments.length?(tt=At,this):tt},x.nameLabel=function(At){return arguments.length?(b=At,this):b},x.numberFormat=function(At){return arguments.length?(bt=At,this):bt},x.valueFormatter=function(At){return arguments.length?(Mt=At,this):Mt},x.shouldShowDateInTitle=function(At){return arguments.length?(H=At,this):H},x.show=function(){return nt.style("visibility","visible"),this},x.title=function(At){return arguments.length?(O=At,this):O},x.tooltipOffset=function(At){return arguments.length?(c=At,this):c},x.topicsOrder=function(At){return arguments.length?(pt=At,this):pt},x.topicLabel=function(At){return arguments.length?(K=At,this):K},x.update=function(At,$t,Xt){var Ct=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return v=$t,Ot(At,Xt,Ct),this},x.valueLabel=function(At){return arguments.length?(S=At,this):S},x}}.call(xt,j,xt,Oe))===void 0||(Oe.exports=Pt)}])})},3224:(yr,Oe,xt)=>{"use strict";xt.r(Oe),xt.d(Oe,{FormatSpecifier:()=>M0,active:()=>qg,arc:()=>w3,area:()=>vM,areaRadial:()=>_M,ascending:()=>T.V_,autoType:()=>wb,axisBottom:()=>u,axisLeft:()=>v,axisRight:()=>l,axisTop:()=>h,bisect:()=>T.h1,bisectLeft:()=>T.ah,bisectRight:()=>T.Jj,bisector:()=>T.yl,blob:()=>kv,brush:()=>Kg,brushSelection:()=>Ls,brushX:()=>pv,brushY:()=>Yl,buffer:()=>Tv,chord:()=>fm,clientPoint:()=>zn,cluster:()=>kT,color:()=>mo,contourDensity:()=>l0,contours:()=>Od,create:()=>fg,creator:()=>pr,cross:()=>T.$A,csv:()=>co,csvFormat:()=>_v,csvFormatBody:()=>vb,csvFormatRow:()=>fs,csvFormatRows:()=>ks,csvFormatValue:()=>xb,csvParse:()=>mm,csvParseRows:()=>ts,cubehelix:()=>Fs,curveBasis:()=>LM,curveBasisClosed:()=>O3,curveBasisOpen:()=>P3,curveBundle:()=>jM,curveCardinal:()=>Ty,curveCardinalClosed:()=>N3,curveCardinalOpen:()=>FM,curveCatmullRom:()=>D3,curveCatmullRomClosed:()=>zM,curveCatmullRomOpen:()=>R3,curveLinear:()=>zf,curveLinearClosed:()=>WM,curveMonotoneX:()=>L3,curveMonotoneY:()=>SP,curveNatural:()=>$M,curveStep:()=>j3,curveStepAfter:()=>XM,curveStepBefore:()=>F3,customEvent:()=>Vt,descending:()=>T.rG,deviation:()=>T.KS,dispatch:()=>dt,drag:()=>zs,dragDisable:()=>Yn,dragEnable:()=>fr,dsv:()=>x0,dsvFormat:()=>Id,easeBack:()=>nl,easeBackIn:()=>Ev,easeBackInOut:()=>nl,easeBackOut:()=>qa,easeBounce:()=>mf,easeBounceIn:()=>_m,easeBounceInOut:()=>Mv,easeBounceOut:()=>mf,easeCircle:()=>nh,easeCircleIn:()=>bm,easeCircleInOut:()=>nh,easeCircleOut:()=>Bd,easeCubic:()=>Qa,easeCubicIn:()=>Su,easeCubicInOut:()=>Qa,easeCubicOut:()=>Ra,easeElastic:()=>v0,easeElasticIn:()=>kl,easeElasticInOut:()=>ql,easeElasticOut:()=>v0,easeExp:()=>ua,easeExpIn:()=>g0,easeExpInOut:()=>ua,easeExpOut:()=>ds,easeLinear:()=>f0,easePoly:()=>vm,easePolyIn:()=>yc,easePolyInOut:()=>vm,easePolyOut:()=>eh,easeQuad:()=>jd,easeQuadIn:()=>d0,easeQuadInOut:()=>jd,easeQuadOut:()=>Cv,easeSin:()=>xm,easeSinIn:()=>_b,easeSinInOut:()=>xm,easeSinOut:()=>m0,entries:()=>nf,event:()=>Mr,extent:()=>T.Xx,forceCenter:()=>vf,forceCollide:()=>w0,forceLink:()=>Am,forceManyBody:()=>Mb,forceRadial:()=>Eb,forceSimulation:()=>C0,forceX:()=>kb,forceY:()=>Nv,format:()=>lh,formatDefaultLocale:()=>A0,formatLocale:()=>qd,formatPrefix:()=>$d,formatSpecifier:()=>_f,geoAlbers:()=>Ys,geoAlbersUsa:()=>pT,geoArea:()=>Ab,geoAzimuthalEqualArea:()=>mT,geoAzimuthalEqualAreaRaw:()=>tw,geoAzimuthalEquidistant:()=>gT,geoAzimuthalEquidistantRaw:()=>ew,geoBounds:()=>$k,geoCentroid:()=>tT,geoCircle:()=>jm,geoClipAntimeridian:()=>Fb,geoClipCircle:()=>Z2,geoClipExtent:()=>lT,geoClipRectangle:()=>Xv,geoConicConformal:()=>vT,geoConicConformalRaw:()=>dS,geoConicEqualArea:()=>p1,geoConicEqualAreaRaw:()=>uS,geoConicEquidistant:()=>pS,geoConicEquidistantRaw:()=>nw,geoContains:()=>Q2,geoDistance:()=>gs,geoEqualEarth:()=>gS,geoEqualEarthRaw:()=>g1,geoEquirectangular:()=>xT,geoEquirectangularRaw:()=>K0,geoGnomonic:()=>bT,geoGnomonicRaw:()=>rw,geoGraticule:()=>Ub,geoGraticule10:()=>Qv,geoIdentity:()=>wT,geoInterpolate:()=>tP,geoLength:()=>Bm,geoMercator:()=>yT,geoMercatorRaw:()=>$m,geoNaturalEarth1:()=>_T,geoNaturalEarth1Raw:()=>iw,geoOrthographic:()=>yS,geoOrthographicRaw:()=>ow,geoPath:()=>sp,geoProjection:()=>Ec,geoProjectionMutator:()=>Zb,geoRotation:()=>V2,geoStereographic:()=>ST,geoStereographicRaw:()=>aw,geoStream:()=>Yr,geoTransform:()=>G0,geoTransverseMercator:()=>Xm,geoTransverseMercatorRaw:()=>y1,gray:()=>Co,hcl:()=>hc,hierarchy:()=>x1,histogram:()=>T.JW,hsl:()=>ma,html:()=>Aa,image:()=>Ko,interpolate:()=>dn,interpolateArray:()=>Ju,interpolateBasis:()=>vu,interpolateBasisClosed:()=>zl,interpolateBlues:()=>f3,interpolateBrBG:()=>i3,interpolateBuGn:()=>tM,interpolateBuPu:()=>s3,interpolateCividis:()=>g3,interpolateCool:()=>mM,interpolateCubehelix:()=>Sw,interpolateCubehelixDefault:()=>y3,interpolateCubehelixLong:()=>P1,interpolateDate:()=>tc,interpolateDiscrete:()=>vw,interpolateGnBu:()=>eM,interpolateGreens:()=>d3,interpolateGreys:()=>p3,interpolateHcl:()=>iA,interpolateHclLong:()=>hP,interpolateHsl:()=>DS,interpolateHslLong:()=>RS,interpolateHue:()=>nA,interpolateInferno:()=>h_,interpolateLab:()=>ww,interpolateMagma:()=>hg,interpolateNumber:()=>Ss,interpolateNumberArray:()=>Ih,interpolateObject:()=>Hc,interpolateOrRd:()=>ug,interpolateOranges:()=>pM,interpolatePRGn:()=>GC,interpolatePiYG:()=>lg,interpolatePlasma:()=>gM,interpolatePuBu:()=>u3,interpolatePuBuGn:()=>l3,interpolatePuOr:()=>o3,interpolatePuRd:()=>oM,interpolatePurples:()=>m3,interpolateRainbow:()=>x3,interpolateRdBu:()=>XC,interpolateRdGy:()=>ZC,interpolateRdPu:()=>ox,interpolateRdYlBu:()=>QC,interpolateRdYlGn:()=>JC,interpolateReds:()=>fM,interpolateRgb:()=>bu,interpolateRgbBasis:()=>ed,interpolateRgbBasisClosed:()=>Uc,interpolateRound:()=>OS,interpolateSinebow:()=>ru,interpolateSpectral:()=>ix,interpolateString:()=>Xe,interpolateTransformCss:()=>Qp,interpolateTransformSvg:()=>Bg,interpolateTurbo:()=>c_,interpolateViridis:()=>lx,interpolateWarm:()=>v3,interpolateYlGn:()=>c3,interpolateYlGnBu:()=>aM,interpolateYlOrBr:()=>lM,interpolateYlOrRd:()=>h3,interpolateZoom:()=>xw,interrupt:()=>wu,interval:()=>K3,isoFormat:()=>q3,isoParse:()=>Xu,json:()=>La,keys:()=>tf,lab:()=>go,lch:()=>Qc,line:()=>cx,lineRadial:()=>wM,linkHorizontal:()=>fx,linkRadial:()=>MM,linkVertical:()=>k3,local:()=>yM,map:()=>Ou,matcher:()=>nt,max:()=>T.T9,mean:()=>T.i2,median:()=>T.JZ,merge:()=>T.Am,min:()=>T.jk,mouse:()=>Or,namespace:()=>rn,namespaces:()=>Ke,nest:()=>gv,now:()=>Bh,pack:()=>hw,packEnclose:()=>_S,packSiblings:()=>MS,pairs:()=>T.AS,partition:()=>qT,path:()=>Au,permute:()=>T.Ny,pie:()=>C3,piecewise:()=>oA,pointRadial:()=>Ey,polygonArea:()=>IS,polygonCentroid:()=>Cw,polygonContains:()=>Mw,polygonHull:()=>jS,polygonLength:()=>uA,precisionFixed:()=>O0,precisionPrefix:()=>il,precisionRound:()=>Om,quadtree:()=>ja,quantile:()=>T.YV,quantize:()=>fP,radialArea:()=>_M,radialLine:()=>wM,randomBates:()=>cA,randomExponential:()=>pP,randomIrwinHall:()=>FS,randomLogNormal:()=>kw,randomNormal:()=>Ew,randomUniform:()=>dP,range:()=>T.y1,rgb:()=>lo,ribbon:()=>bd,scaleBand:()=>Tw,scaleDiverging:()=>jC,scaleDivergingLog:()=>FC,scaleDivergingPow:()=>xy,scaleDivergingSqrt:()=>BC,scaleDivergingSymlog:()=>rx,scaleIdentity:()=>fA,scaleImplicit:()=>D1,scaleLinear:()=>YS,scaleLog:()=>gi,scaleOrdinal:()=>ay,scalePoint:()=>mP,scalePow:()=>F1,scaleQuantile:()=>gh,scaleQuantize:()=>Lw,scaleSequential:()=>RC,scaleSequentialLog:()=>LC,scaleSequentialPow:()=>n_,scaleSequentialQuantile:()=>IC,scaleSequentialSqrt:()=>JA,scaleSequentialSymlog:()=>e_,scaleSqrt:()=>XS,scaleSymlog:()=>$S,scaleThreshold:()=>mA,scaleTime:()=>KA,scaleUtc:()=>QA,scan:()=>T.SQ,schemeAccent:()=>UC,schemeBlues:()=>uM,schemeBrBG:()=>YC,schemeBuGn:()=>o_,schemeBuPu:()=>Sp,schemeCategory10:()=>zC,schemeDark2:()=>HC,schemeGnBu:()=>a_,schemeGreens:()=>cM,schemeGreys:()=>ax,schemeOrRd:()=>s_,schemeOranges:()=>dM,schemePRGn:()=>VC,schemePaired:()=>t3,schemePastel1:()=>e3,schemePastel2:()=>WC,schemePiYG:()=>qC,schemePuBu:()=>rM,schemePuBuGn:()=>nM,schemePuOr:()=>$C,schemePuRd:()=>iM,schemePurples:()=>hM,schemeRdBu:()=>r_,schemeRdGy:()=>KC,schemeRdPu:()=>bh,schemeRdYlBu:()=>a3,schemeRdYlGn:()=>i_,schemeReds:()=>u_,schemeSet1:()=>Pc,schemeSet2:()=>n3,schemeSet3:()=>wP,schemeSpectral:()=>yo,schemeTableau10:()=>r3,schemeYlGn:()=>by,schemeYlGnBu:()=>l_,schemeYlOrBr:()=>sM,schemeYlOrRd:()=>wh,select:()=>sn,selectAll:()=>Dc,selection:()=>He,selector:()=>bt,selectorAll:()=>B,set:()=>Vl,shuffle:()=>T.k4,stack:()=>z3,stackOffsetDiverging:()=>H3,stackOffsetExpand:()=>U3,stackOffsetNone:()=>Tp,stackOffsetSilhouette:()=>W3,stackOffsetWiggle:()=>Y3,stackOrderAppearance:()=>KM,stackOrderAscending:()=>QM,stackOrderDescending:()=>T_,stackOrderInsideOut:()=>A_,stackOrderNone:()=>mg,stackOrderReverse:()=>O_,stratify:()=>XT,style:()=>pn,sum:()=>T.cz,svg:()=>Wd,symbol:()=>A3,symbolCircle:()=>au,symbolCross:()=>kp,symbolDiamond:()=>kM,symbolSquare:()=>x_,symbolStar:()=>PM,symbolTriangle:()=>NM,symbolWye:()=>RM,symbols:()=>px,text:()=>Cm,thresholdFreedmanDiaconis:()=>T.c3,thresholdScott:()=>T.Ft,thresholdSturges:()=>T.zr,tickFormat:()=>R1,tickIncrement:()=>T.lq,tickStep:()=>T.sG,ticks:()=>T.Zc,timeDay:()=>fy,timeDays:()=>wA,timeFormat:()=>Zw,timeFormatDefaultLocale:()=>TC,timeFormatLocale:()=>Ww,timeFriday:()=>yA,timeFridays:()=>rC,timeHour:()=>jw,timeHours:()=>U1,timeInterval:()=>Ka,timeMillisecond:()=>Y1,timeMilliseconds:()=>Fw,timeMinute:()=>H1,timeMinutes:()=>tg,timeMonday:()=>hy,timeMondays:()=>eC,timeMonth:()=>QS,timeMonths:()=>gA,timeParse:()=>kC,timeSaturday:()=>vh,timeSaturdays:()=>xA,timeSecond:()=>W1,timeSeconds:()=>eg,timeSunday:()=>cy,timeSundays:()=>Tc,timeThursday:()=>Qm,timeThursdays:()=>vA,timeTuesday:()=>kc,timeTuesdays:()=>vP,timeWednesday:()=>tC,timeWednesdays:()=>nC,timeWeek:()=>cy,timeWeeks:()=>Tc,timeYear:()=>yh,timeYears:()=>yP,timeout:()=>Hh,timer:()=>rd,timerFlush:()=>ec,touch:()=>mr,touches:()=>If,transition:()=>oc,transpose:()=>T.mg,tree:()=>QT,treemap:()=>tA,treemapBinary:()=>eA,treemapDice:()=>hp,treemapResquarify:()=>AS,treemapSlice:()=>oy,treemapSliceDice:()=>uP,treemapSquarify:()=>k1,tsv:()=>qi,tsvFormat:()=>df,tsvFormatBody:()=>Sv,tsvFormatRow:()=>ym,tsvFormatRows:()=>bb,tsvFormatValue:()=>c0,tsvParse:()=>gm,tsvParseRows:()=>u0,utcDay:()=>G1,utcDays:()=>CA,utcFormat:()=>Q1,utcFriday:()=>Bw,utcFridays:()=>cC,utcHour:()=>is,utcHours:()=>NC,utcMillisecond:()=>Y1,utcMilliseconds:()=>Fw,utcMinute:()=>t_,utcMinutes:()=>ex,utcMonday:()=>py,utcMondays:()=>uC,utcMonth:()=>OC,utcMonths:()=>ZA,utcParse:()=>sg,utcSaturday:()=>sC,utcSaturdays:()=>zw,utcSecond:()=>W1,utcSeconds:()=>eg,utcSunday:()=>gp,utcSundays:()=>lC,utcThursday:()=>yp,utcThursdays:()=>V1,utcTuesday:()=>oC,utcTuesdays:()=>_A,utcWednesday:()=>aC,utcWednesdays:()=>SA,utcWeek:()=>gp,utcWeeks:()=>lC,utcYear:()=>Rf,utcYears:()=>Uw,values:()=>ef,variance:()=>T.GV,version:()=>Pt,voronoi:()=>cO,window:()=>Ft,xml:()=>yf,zip:()=>T.yU,zoom:()=>lE,zoomIdentity:()=>Iy,zoomTransform:()=>j_});var j="d3",Pt="5.16.0",d="Data-Driven Documents",g=null,L="https://d3js.org",R="BSD-3-Clause",st={name:"Mike Bostock",url:"https://bost.ocks.org/mike"},$="dist/d3.node.js",J="dist/d3.min.js",X="dist/d3.min.js",q="index.js",Z={type:"git",url:"https://github.com/d3/d3.git"},Y=null,V={pretest:"rimraf dist && mkdir dist && json2module package.json > dist/package.js && rollup -c",test:"tape 'test/**/*-test.js'",prepublishOnly:"yarn test",postpublish:'git push && git push --tags && cd ../d3.github.com && git pull && cp ../d3/dist/d3.js d3.v5.js && cp ../d3/dist/d3.min.js d3.v5.min.js && git add d3.v5.js d3.v5.min.js && git commit -m "d3 ${npm_package_version}" && git push && cd - && cd ../d3-bower && git pull && cp ../d3/LICENSE ../d3/README.md ../d3/dist/d3.js ../d3/dist/d3.min.js . && git add -- LICENSE README.md d3.js d3.min.js && git commit -m "${npm_package_version}" && git tag -am "${npm_package_version}" v${npm_package_version} && git push && git push --tags && cd - && zip -j dist/d3.zip -- LICENSE README.md API.md CHANGES.md dist/d3.js dist/d3.min.js'},N={json2module:"0.0",rimraf:"2",rollup:"1","rollup-plugin-ascii":"0.0","rollup-plugin-node-resolve":"3","rollup-plugin-terser":"5",tape:"4"},U={"d3-array":"1","d3-axis":"1","d3-brush":"1","d3-chord":"1","d3-collection":"1","d3-color":"1","d3-contour":"1","d3-dispatch":"1","d3-drag":"1","d3-dsv":"1","d3-ease":"1","d3-fetch":"1","d3-force":"1","d3-format":"1","d3-geo":"1","d3-hierarchy":"1","d3-interpolate":"1","d3-path":"1","d3-polygon":"1","d3-quadtree":"1","d3-random":"1","d3-scale":"2","d3-scale-chromatic":"1","d3-selection":"1","d3-shape":"1","d3-time":"1","d3-time-format":"2","d3-timer":"1","d3-transition":"1","d3-voronoi":"1","d3-zoom":"1"},T=xt(9685),A=Array.prototype.slice;function M(r){return r}var O=1,H=2,z=3,c=4,D=1e-6;function it(r){return"translate("+(r+.5)+",0)"}function Q(r){return"translate(0,"+(r+.5)+")"}function W(r){return function(o){return+r(o)}}function k(r){var o=Math.max(0,r.bandwidth()-1)/2;return r.round()&&(o=Math.round(o)),function(p){return+r(p)+o}}function _(){return!this.__axis}function C(r,o){var p=[],P=null,at=null,mt=6,St=6,kt=3,Lt=r===O||r===c?-1:1,Ut=r===c||r===H?"x":"y",qt=r===O||r===z?it:Q;function ie(Zt){var _e=P==null?o.ticks?o.ticks.apply(o,p):o.domain():P,Le=at==null?o.tickFormat?o.tickFormat.apply(o,p):M:at,De=Math.max(mt,0)+kt,Be=o.range(),We=+Be[0]+.5,cn=+Be[Be.length-1]+.5,nn=(o.bandwidth?k:W)(o.copy()),ln=Zt.selection?Zt.selection():Zt,Pn=ln.selectAll(".domain").data([null]),qn=ln.selectAll(".tick").data(_e,o).order(),Un=qn.exit(),gr=qn.enter().append("g").attr("class","tick"),ir=qn.select("line"),cr=qn.select("text");Pn=Pn.merge(Pn.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),qn=qn.merge(gr),ir=ir.merge(gr.append("line").attr("stroke","currentColor").attr(Ut+"2",Lt*mt)),cr=cr.merge(gr.append("text").attr("fill","currentColor").attr(Ut,Lt*De).attr("dy",r===O?"0em":r===z?"0.71em":"0.32em")),Zt!==ln&&(Pn=Pn.transition(Zt),qn=qn.transition(Zt),ir=ir.transition(Zt),cr=cr.transition(Zt),Un=Un.transition(Zt).attr("opacity",D).attr("transform",function(er){return isFinite(er=nn(er))?qt(er):this.getAttribute("transform")}),gr.attr("opacity",D).attr("transform",function(er){var fn=this.parentNode.__axis;return qt(fn&&isFinite(fn=fn(er))?fn:nn(er))})),Un.remove(),Pn.attr("d",r===c||r==H?St?"M"+Lt*St+","+We+"H0.5V"+cn+"H"+Lt*St:"M0.5,"+We+"V"+cn:St?"M"+We+","+Lt*St+"V0.5H"+cn+"V"+Lt*St:"M"+We+",0.5H"+cn),qn.attr("opacity",1).attr("transform",function(er){return qt(nn(er))}),ir.attr(Ut+"2",Lt*mt),cr.attr(Ut,Lt*De).text(Le),ln.filter(_).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",r===H?"start":r===c?"end":"middle"),ln.each(function(){this.__axis=nn})}return ie.scale=function(Zt){return arguments.length?(o=Zt,ie):o},ie.ticks=function(){return p=A.call(arguments),ie},ie.tickArguments=function(Zt){return arguments.length?(p=Zt==null?[]:A.call(Zt),ie):p.slice()},ie.tickValues=function(Zt){return arguments.length?(P=Zt==null?null:A.call(Zt),ie):P&&P.slice()},ie.tickFormat=function(Zt){return arguments.length?(at=Zt,ie):at},ie.tickSize=function(Zt){return arguments.length?(mt=St=+Zt,ie):mt},ie.tickSizeInner=function(Zt){return arguments.length?(mt=+Zt,ie):mt},ie.tickSizeOuter=function(Zt){return arguments.length?(St=+Zt,ie):St},ie.tickPadding=function(Zt){return arguments.length?(kt=+Zt,ie):kt},ie}function h(r){return C(O,r)}function l(r){return C(H,r)}function u(r){return C(z,r)}function v(r){return C(c,r)}var I={value:function(){}};function S(){for(var r=0,o=arguments.length,p={},P;r=0&&(P=p.slice(at+1),p=p.slice(0,at)),p&&!o.hasOwnProperty(p))throw new Error("unknown type: "+p);return{type:p,name:P}})}b.prototype=S.prototype={constructor:b,on:function(r,o){var p=this._,P=K(r+"",p),at,mt=-1,St=P.length;if(arguments.length<2){for(;++mt0)for(var p=new Array(at),P=0,at,mt;P=nn&&(nn=cn+1);!(Pn=Be[nn])&&++nn=0;)(St=P[at])&&(mt&&St.compareDocumentPosition(mt)^4&&mt.parentNode.insertBefore(St,mt),mt=St);return this}function Dt(r){r||(r=jt);function o(ie,Zt){return ie&&Zt?r(ie.__data__,Zt.__data__):!ie-!Zt}for(var p=this._groups,P=p.length,at=new Array(P),mt=0;mto?1:r>=o?0:NaN}function re(){var r=arguments[0];return arguments[0]=this,r.apply(null,arguments),this}function le(){var r=new Array(this.size()),o=-1;return this.each(function(){r[++o]=this}),r}function Gt(){for(var r=this._groups,o=0,p=r.length;o=0&&(o=r.slice(0,p))!=="xmlns"&&(r=r.slice(p+1)),Ke.hasOwnProperty(o)?{space:Ke[o],local:r}:r}function un(r){return function(){this.removeAttribute(r)}}function Qt(r){return function(){this.removeAttributeNS(r.space,r.local)}}function Kt(r,o){return function(){this.setAttribute(r,o)}}function Jt(r,o){return function(){this.setAttributeNS(r.space,r.local,o)}}function Et(r,o){return function(){var p=o.apply(this,arguments);p==null?this.removeAttribute(r):this.setAttribute(r,p)}}function Rt(r,o){return function(){var p=o.apply(this,arguments);p==null?this.removeAttributeNS(r.space,r.local):this.setAttributeNS(r.space,r.local,p)}}function zt(r,o){var p=rn(r);if(arguments.length<2){var P=this.node();return p.local?P.getAttributeNS(p.space,p.local):P.getAttribute(p)}return this.each((o==null?p.local?Qt:un:typeof o=="function"?p.local?Rt:Et:p.local?Jt:Kt)(p,o))}function Ft(r){return r.ownerDocument&&r.ownerDocument.defaultView||r.document&&r||r.defaultView}function ce(r){return function(){this.style.removeProperty(r)}}function Se(r,o,p){return function(){this.style.setProperty(r,o,p)}}function xe(r,o,p){return function(){var P=o.apply(this,arguments);P==null?this.style.removeProperty(r):this.style.setProperty(r,P,p)}}function Ze(r,o,p){return arguments.length>1?this.each((o==null?ce:typeof o=="function"?xe:Se)(r,o,p==null?"":p)):pn(this.node(),r)}function pn(r,o){return r.style.getPropertyValue(o)||Ft(r).getComputedStyle(r,null).getPropertyValue(o)}function bn(r){return function(){delete this[r]}}function Ln(r,o){return function(){this[r]=o}}function vn(r,o){return function(){var p=o.apply(this,arguments);p==null?delete this[r]:this[r]=p}}function Tn(r,o){return arguments.length>1?this.each((o==null?bn:typeof o=="function"?vn:Ln)(r,o)):this.node()[r]}function Qn(r){return r.trim().split(/^|\s+/)}function dr(r){return r.classList||new ye(r)}function ye(r){this._node=r,this._names=Qn(r.getAttribute("class")||"")}ye.prototype={add:function(r){var o=this._names.indexOf(r);o<0&&(this._names.push(r),this._node.setAttribute("class",this._names.join(" ")))},remove:function(r){var o=this._names.indexOf(r);o>=0&&(this._names.splice(o,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(r){return this._names.indexOf(r)>=0}};function Fe(r,o){for(var p=dr(r),P=-1,at=o.length;++P=0&&(p=o.slice(P+1),o=o.slice(0,P)),{type:o,name:p}})}function en(r){return function(){var o=this.__on;if(o){for(var p=0,P=-1,at=o.length,mt;p>8&15|o>>4&240,o>>4&15|o&240,(o&15)<<4|o&15,1):p===8?_o(o>>24&255,o>>16&255,o>>8&255,(o&255)/255):p===4?_o(o>>12&15|o>>8&240,o>>8&15|o>>4&240,o>>4&15|o&240,((o&15)<<4|o&15)/255):null):(o=Ai.exec(r))?new ki(o[1],o[2],o[3],1):(o=yi.exec(r))?new ki(o[1]*255/100,o[2]*255/100,o[3]*255/100,1):(o=Oi.exec(r))?_o(o[1],o[2],o[3],o[4]):(o=Ii.exec(r))?_o(o[1]*255/100,o[2]*255/100,o[3]*255/100,o[4]):(o=Pi.exec(r))?xo(o[1],o[2]/100,o[3]/100,1):(o=Gi.exec(r))?xo(o[1],o[2]/100,o[3]/100,o[4]):io.hasOwnProperty(r)?ao(io[r]):r==="transparent"?new ki(NaN,NaN,NaN,0):null}function ao(r){return new ki(r>>16&255,r>>8&255,r&255,1)}function _o(r,o,p,P){return P<=0&&(r=o=p=NaN),new ki(r,o,p,P)}function qo(r){return r instanceof ur||(r=mo(r)),r?(r=r.rgb(),new ki(r.r,r.g,r.b,r.opacity)):new ki}function lo(r,o,p,P){return arguments.length===1?qo(r):new ki(r,o,p,P==null?1:P)}function ki(r,o,p,P){this.r=+r,this.g=+o,this.b=+p,this.opacity=+P}or(ki,lo,Zn(ur,{brighter:function(r){return r=r==null?Sr:Math.pow(Sr,r),new ki(this.r*r,this.g*r,this.b*r,this.opacity)},darker:function(r){return r=r==null?Tr:Math.pow(Tr,r),new ki(this.r*r,this.g*r,this.b*r,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:oa,formatHex:oa,formatRgb:aa,toString:aa}));function oa(){return"#"+ko(this.r)+ko(this.g)+ko(this.b)}function aa(){var r=this.opacity;return r=isNaN(r)?1:Math.max(0,Math.min(1,r)),(r===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(r===1?")":", "+r+")")}function ko(r){return r=Math.max(0,Math.min(255,Math.round(r)||0)),(r<16?"0":"")+r.toString(16)}function xo(r,o,p,P){return P<=0?r=o=p=NaN:p<=0||p>=1?r=o=NaN:o<=0&&(r=NaN),new Ma(r,o,p,P)}function Jo(r){if(r instanceof Ma)return new Ma(r.h,r.s,r.l,r.opacity);if(r instanceof ur||(r=mo(r)),!r)return new Ma;if(r instanceof Ma)return r;r=r.rgb();var o=r.r/255,p=r.g/255,P=r.b/255,at=Math.min(o,p,P),mt=Math.max(o,p,P),St=NaN,kt=mt-at,Lt=(mt+at)/2;return kt?(o===mt?St=(p-P)/kt+(p0&&Lt<1?0:St,new Ma(St,kt,Lt,r.opacity)}function ma(r,o,p,P){return arguments.length===1?Jo(r):new Ma(r,o,p,P==null?1:P)}function Ma(r,o,p,P){this.h=+r,this.s=+o,this.l=+p,this.opacity=+P}or(Ma,ma,Zn(ur,{brighter:function(r){return r=r==null?Sr:Math.pow(Sr,r),new Ma(this.h,this.s,this.l*r,this.opacity)},darker:function(r){return r=r==null?Tr:Math.pow(Tr,r),new Ma(this.h,this.s,this.l*r,this.opacity)},rgb:function(){var r=this.h%360+(this.h<0)*360,o=isNaN(r)||isNaN(this.s)?0:this.s,p=this.l,P=p+(p<.5?p:1-p)*o,at=2*p-P;return new ki(yu(r>=240?r-240:r+120,at,P),yu(r,at,P),yu(r<120?r+240:r-120,at,P),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var r=this.opacity;return r=isNaN(r)?1:Math.max(0,Math.min(1,r)),(r===1?"hsl(":"hsla(")+(this.h||0)+", "+(this.s||0)*100+"%, "+(this.l||0)*100+"%"+(r===1?")":", "+r+")")}}));function yu(r,o,p){return(r<60?o+(p-o)*r/60:r<180?p:r<240?o+(p-o)*(240-r)/60:o)*255}function yl(r,o,p,P,at){var mt=r*r,St=mt*r;return((1-3*r+3*mt-St)*o+(4-6*mt+3*St)*p+(1+3*r+3*mt-3*St)*P+St*at)/6}function vu(r){var o=r.length-1;return function(p){var P=p<=0?p=0:p>=1?(p=1,o-1):Math.floor(p*o),at=r[P],mt=r[P+1],St=P>0?r[P-1]:2*at-mt,kt=P180||p<-180?p-360*Math.round(p/360):p):xu(isNaN(r)?o:r)}function ls(r){return(r=+r)==1?sa:function(o,p){return p-o?Vp(o,p,r):xu(isNaN(o)?p:o)}}function sa(r,o){var p=o-r;return p?Lh(r,p):xu(isNaN(r)?o:r)}const bu=function r(o){var p=ls(o);function P(at,mt){var St=p((at=lo(at)).r,(mt=lo(mt)).r),kt=p(at.g,mt.g),Lt=p(at.b,mt.b),Ut=sa(at.opacity,mt.opacity);return function(qt){return at.r=St(qt),at.g=kt(qt),at.b=Lt(qt),at.opacity=Ut(qt),at+""}}return P.gamma=r,P}(1);function td(r){return function(o){var p=o.length,P=new Array(p),at=new Array(p),mt=new Array(p),St,kt;for(St=0;Stp&&(mt=o.slice(p,mt),kt[St]?kt[St]+=mt:kt[++St]=mt),(P=P[0])===(at=at[0])?kt[St]?kt[St]+=at:kt[++St]=at:(kt[++St]=null,Lt.push({i:St,x:Ss(P,at)})),p=nd.lastIndex;return p=0&&r._call.call(null,o),r=r._next;--ci}function Uh(){us=(Wa=Da.now())+Ul,ci=Ci=0;try{ec()}finally{ci=0,qp(),us=0}}function Gp(){var r=Da.now(),o=r-Wa;o>To&&(Ul-=o,Wa=r)}function qp(){for(var r,o=Ea,p,P=1/0;o;)o._call?(P>o._time&&(P=o._time),r=o,o=o._next):(p=o._next,o._next=null,o=r?r._next=p:Ea=p);So=r,Ng(P)}function Ng(r){if(!ci){Ci&&(Ci=clearTimeout(Ci));var o=r-us;o>24?(r<1/0&&(Ci=setTimeout(Uh,r-Da.now()-Ul)),wi&&(wi=clearInterval(wi))):(wi||(Wa=Da.now(),wi=setInterval(Gp,To)),ci=1,ev(Uh))}}function Hh(r,o,p){var P=new zh;return o=o==null?0:+o,P.restart(function(at){P.stop(),r(at+o)},o,p),P}var Dg=dt("start","end","cancel","interrupt"),Rg=[],nv=0,Lg=1,$p=2,Ig=3,rb=4,Xp=5,Kp=6;function id(r,o,p,P,at,mt){var St=r.__transition;if(!St)r.__transition={};else if(p in St)return;ib(r,p,{name:o,index:P,group:at,on:Dg,tween:Rg,time:mt.time,delay:mt.delay,duration:mt.duration,ease:mt.ease,timer:null,state:nv})}function Cs(r,o){var p=ka(r,o);if(p.state>nv)throw new Error("too late; already scheduled");return p}function Ks(r,o){var p=ka(r,o);if(p.state>Ig)throw new Error("too late; already running");return p}function ka(r,o){var p=r.__transition;if(!p||!(p=p[o]))throw new Error("transition not found");return p}function ib(r,o,p){var P=r.__transition,at;P[o]=p,p.timer=rd(mt,0,p.time);function mt(Ut){p.state=Lg,p.timer.restart(St,p.delay,p.time),p.delay<=Ut&&St(Ut-p.delay)}function St(Ut){var qt,ie,Zt,_e;if(p.state!==Lg)return Lt();for(qt in P)if(_e=P[qt],_e.name===p.name){if(_e.state===Ig)return Hh(St);_e.state===rb?(_e.state=Kp,_e.timer.stop(),_e.on.call("interrupt",r,r.__data__,_e.index,_e.group),delete P[qt]):+qt$p&&P.state180?qt+=360:qt-Ut>180&&(Ut+=360),Zt.push({i:ie.push(at(ie)+"rotate(",null,P)-2,x:Ss(Ut,qt)})):qt&&ie.push(at(ie)+"rotate("+qt+P)}function kt(Ut,qt,ie,Zt){Ut!==qt?Zt.push({i:ie.push(at(ie)+"skewX(",null,P)-2,x:Ss(Ut,qt)}):qt&&ie.push(at(ie)+"skewX("+qt+P)}function Lt(Ut,qt,ie,Zt,_e,Le){if(Ut!==ie||qt!==Zt){var De=_e.push(at(_e)+"scale(",null,",",null,")");Le.push({i:De-4,x:Ss(Ut,ie)},{i:De-2,x:Ss(qt,Zt)})}else(ie!==1||Zt!==1)&&_e.push(at(_e)+"scale("+ie+","+Zt+")")}return function(Ut,qt){var ie=[],Zt=[];return Ut=r(Ut),qt=r(qt),mt(Ut.translateX,Ut.translateY,qt.translateX,qt.translateY,ie,Zt),St(Ut.rotate,qt.rotate,ie,Zt),kt(Ut.skewX,qt.skewX,ie,Zt),Lt(Ut.scaleX,Ut.scaleY,qt.scaleX,qt.scaleY,ie,Zt),Ut=qt=null,function(_e){for(var Le=-1,De=Zt.length,Be;++Le=0&&(o=o.slice(0,p)),!o||o==="start"})}function cv(r,o,p){var P,at,mt=fb(o)?Cs:Ks;return function(){var St=mt(this,r),kt=St.on;kt!==P&&(at=(P=kt).copy()).on(o,p),St.on=at}}function Jp(r,o){var p=this._id;return arguments.length<2?ka(this.node(),p).on.on(r):this.each(cv(p,r,o))}function fd(r){return function(){var o=this.parentNode;for(var p in this.__transition)if(+p!==r)return;o&&o.removeChild(this)}}function tm(){return this.on("end.remove",fd(this._id))}function em(r){var o=this._name,p=this._id;typeof r!="function"&&(r=bt(r));for(var P=this._groups,at=P.length,mt=new Array(at),St=0;StLg&&P.name===o)return new cs([[r]],sm,o,+at)}return null}function lm(r){return function(){return r}}function md(r,o,p){this.target=r,this.type=o,this.selection=p}function um(){Mr.stopImmediatePropagation()}function wl(){Mr.preventDefault(),Mr.stopImmediatePropagation()}var gd={name:"drag"},yd={name:"space"},Wc={name:"handle"},Zh={name:"center"};function Zs(r){return[+r[0],+r[1]]}function Mu(r){return[Zs(r[0]),Zs(r[1])]}function Rs(r){return function(o){return mr(o,Mr.touches,r)}}var Yc={name:"x",handles:["w","e"].map(qc),input:function(r,o){return r==null?null:[[+r[0],o[0][1]],[+r[1],o[1][1]]]},output:function(r){return r&&[r[0][0],r[1][0]]}},Vc={name:"y",handles:["n","s"].map(qc),input:function(r,o){return r==null?null:[[o[0][0],+r[0]],[o[1][0],+r[1]]]},output:function(r){return r&&[r[0][1],r[1][1]]}},Qs={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(qc),input:function(r){return r==null?null:Mu(r)},output:function(r){return r}},ga={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},ac={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},_l={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Eu={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Gc={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function qc(r){return{type:r}}function $g(){return!Mr.ctrlKey&&!Mr.button}function Xg(){var r=this.ownerSVGElement||this;return r.hasAttribute("viewBox")?(r=r.viewBox.baseVal,[[r.x,r.y],[r.x+r.width,r.y+r.height]]):[[0,0],[r.width.baseVal.value,r.height.baseVal.value]]}function Es(){return navigator.maxTouchPoints||"ontouchstart"in this}function Ya(r){for(;!r.__brush;)if(!(r=r.parentNode))return;return r.__brush}function Lo(r){return r[0][0]===r[1][0]||r[0][1]===r[1][1]}function Ls(r){var o=r.__brush;return o?o.dim.output(o.selection):null}function pv(){return cm(Yc)}function Yl(){return cm(Vc)}function Kg(){return cm(Qs)}function cm(r){var o=Xg,p=$g,P=Es,at=!0,mt=dt("start","brush","end"),St=6,kt;function Lt(Be){var We=Be.property("__brush",De).selectAll(".overlay").data([qc("overlay")]);We.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",ga.overlay).merge(We).each(function(){var nn=Ya(this).extent;sn(this).attr("x",nn[0][0]).attr("y",nn[0][1]).attr("width",nn[1][0]-nn[0][0]).attr("height",nn[1][1]-nn[0][1])}),Be.selectAll(".selection").data([qc("selection")]).enter().append("rect").attr("class","selection").attr("cursor",ga.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var cn=Be.selectAll(".handle").data(r.handles,function(nn){return nn.type});cn.exit().remove(),cn.enter().append("rect").attr("class",function(nn){return"handle handle--"+nn.type}).attr("cursor",function(nn){return ga[nn.type]}),Be.each(Ut).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",Zt).filter(P).on("touchstart.brush",Zt).on("touchmove.brush",_e).on("touchend.brush touchcancel.brush",Le).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}Lt.move=function(Be,We){Be.selection?Be.on("start.brush",function(){qt(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){qt(this,arguments).end()}).tween("brush",function(){var cn=this,nn=cn.__brush,ln=qt(cn,arguments),Pn=nn.selection,qn=r.input(typeof We=="function"?We.apply(this,arguments):We,nn.extent),Un=dn(Pn,qn);function gr(ir){nn.selection=ir===1&&qn===null?null:Un(ir),Ut.call(cn),ln.brush()}return Pn!==null&&qn!==null?gr:gr(1)}):Be.each(function(){var cn=this,nn=arguments,ln=cn.__brush,Pn=r.input(typeof We=="function"?We.apply(cn,nn):We,ln.extent),qn=qt(cn,nn).beforestart();wu(cn),ln.selection=Pn===null?null:Pn,Ut.call(cn),qn.start().brush().end()})},Lt.clear=function(Be){Lt.move(Be,null)};function Ut(){var Be=sn(this),We=Ya(this).selection;We?(Be.selectAll(".selection").style("display",null).attr("x",We[0][0]).attr("y",We[0][1]).attr("width",We[1][0]-We[0][0]).attr("height",We[1][1]-We[0][1]),Be.selectAll(".handle").style("display",null).attr("x",function(cn){return cn.type[cn.type.length-1]==="e"?We[1][0]-St/2:We[0][0]-St/2}).attr("y",function(cn){return cn.type[0]==="s"?We[1][1]-St/2:We[0][1]-St/2}).attr("width",function(cn){return cn.type==="n"||cn.type==="s"?We[1][0]-We[0][0]+St:St}).attr("height",function(cn){return cn.type==="e"||cn.type==="w"?We[1][1]-We[0][1]+St:St})):Be.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function qt(Be,We,cn){var nn=Be.__brush.emitter;return nn&&(!cn||!nn.clean)?nn:new ie(Be,We,cn)}function ie(Be,We,cn){this.that=Be,this.args=We,this.state=Be.__brush,this.active=0,this.clean=cn}ie.prototype={beforestart:function(){return++this.active===1&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting?(this.starting=!1,this.emit("start")):this.emit("brush"),this},brush:function(){return this.emit("brush"),this},end:function(){return--this.active===0&&(delete this.state.emitter,this.emit("end")),this},emit:function(Be){Vt(new md(Lt,Be,r.output(this.state.selection)),mt.apply,mt,[Be,this.that,this.args])}};function Zt(){if(kt&&!Mr.touches||!p.apply(this,arguments))return;var Be=this,We=Mr.target.__data__.type,cn=(at&&Mr.metaKey?We="overlay":We)==="selection"?gd:at&&Mr.altKey?Zh:Wc,nn=r===Vc?null:Eu[We],ln=r===Yc?null:Gc[We],Pn=Ya(Be),qn=Pn.extent,Un=Pn.selection,gr=qn[0][0],ir,cr,er=qn[0][1],fn,$n,kr=qn[1][0],Wn,_r,Jr=qn[1][1],qr,ii,Ti=0,Ni=0,Oo,oo=nn&&ln&&at&&Mr.shiftKey,vo,_a,uu=Mr.touches?Rs(Mr.changedTouches[0].identifier):Or,Ku=uu(Be),cu=Ku,$r=qt(Be,arguments,!0).beforestart();We==="overlay"?(Un&&(Oo=!0),Pn.selection=Un=[[ir=r===Vc?gr:Ku[0],fn=r===Yc?er:Ku[1]],[Wn=r===Vc?kr:ir,qr=r===Yc?Jr:fn]]):(ir=Un[0][0],fn=Un[0][1],Wn=Un[1][0],qr=Un[1][1]),cr=ir,$n=fn,_r=Wn,ii=qr;var Di=sn(Be).attr("pointer-events","none"),Xi=Di.selectAll(".overlay").attr("cursor",ga[We]);if(Mr.touches)$r.moved=bs,$r.ended=as;else{var Ir=sn(Mr.view).on("mousemove.brush",bs,!0).on("mouseup.brush",as,!0);at&&Ir.on("keydown.brush",Gs,!0).on("keyup.brush",ia,!0),Yn(Mr.view)}um(),wu(Be),Ut.call(Be),$r.start();function bs(){var qs=uu(Be);oo&&!vo&&!_a&&(Math.abs(qs[0]-cu[0])>Math.abs(qs[1]-cu[1])?_a=!0:vo=!0),cu=qs,Oo=!0,wl(),Vi()}function Vi(){var qs;switch(Ti=cu[0]-Ku[0],Ni=cu[1]-Ku[1],cn){case yd:case gd:{nn&&(Ti=Math.max(gr-ir,Math.min(kr-Wn,Ti)),cr=ir+Ti,_r=Wn+Ti),ln&&(Ni=Math.max(er-fn,Math.min(Jr-qr,Ni)),$n=fn+Ni,ii=qr+Ni);break}case Wc:{nn<0?(Ti=Math.max(gr-ir,Math.min(kr-ir,Ti)),cr=ir+Ti,_r=Wn):nn>0&&(Ti=Math.max(gr-Wn,Math.min(kr-Wn,Ti)),cr=ir,_r=Wn+Ti),ln<0?(Ni=Math.max(er-fn,Math.min(Jr-fn,Ni)),$n=fn+Ni,ii=qr):ln>0&&(Ni=Math.max(er-qr,Math.min(Jr-qr,Ni)),$n=fn,ii=qr+Ni);break}case Zh:{nn&&(cr=Math.max(gr,Math.min(kr,ir-Ti*nn)),_r=Math.max(gr,Math.min(kr,Wn+Ti*nn))),ln&&($n=Math.max(er,Math.min(Jr,fn-Ni*ln)),ii=Math.max(er,Math.min(Jr,qr+Ni*ln)));break}}_r0&&(ir=cr-Ti),ln<0?qr=ii-Ni:ln>0&&(fn=$n-Ni),cn=yd,Xi.attr("cursor",ga.selection),Vi());break}default:return}wl()}function ia(){switch(Mr.keyCode){case 16:{oo&&(vo=_a=oo=!1,Vi());break}case 18:{cn===Zh&&(nn<0?Wn=_r:nn>0&&(ir=cr),ln<0?qr=ii:ln>0&&(fn=$n),cn=Wc,Vi());break}case 32:{cn===yd&&(Mr.altKey?(nn&&(Wn=_r-Ti*nn,ir=cr+Ti*nn),ln&&(qr=ii-Ni*ln,fn=$n+Ni*ln),cn=Zh):(nn<0?Wn=_r:nn>0&&(ir=cr),ln<0?qr=ii:ln>0&&(fn=$n),cn=Wc),Xi.attr("cursor",ga[We]),Vi());break}default:return}wl()}}function _e(){qt(this,arguments).moved()}function Le(){qt(this,arguments).ended()}function De(){var Be=this.__brush||{selection:null};return Be.extent=Mu(o.apply(this,arguments)),Be.dim=r,Be}return Lt.extent=function(Be){return arguments.length?(o=typeof Be=="function"?Be:lm(Mu(Be)),Lt):o},Lt.filter=function(Be){return arguments.length?(p=typeof Be=="function"?Be:lm(!!Be),Lt):p},Lt.touchable=function(Be){return arguments.length?(P=typeof Be=="function"?Be:lm(!!Be),Lt):P},Lt.handleSize=function(Be){return arguments.length?(St=+Be,Lt):St},Lt.keyModifiers=function(Be){return arguments.length?(at=!!Be,Lt):at},Lt.on=function(){var Be=mt.on.apply(mt,arguments);return Be===mt?Lt:Be},Lt}var Zg=Math.cos,vd=Math.sin,Qg=Math.PI,ku=Qg/2,Jg=Qg*2,pb=Math.max;function hm(r){return function(o,p){return r(o.source.value+o.target.value,p.source.value+p.target.value)}}function fm(){var r=0,o=null,p=null,P=null;function at(mt){var St=mt.length,kt=[],Lt=(0,T.y1)(St),Ut=[],qt=[],ie=qt.groups=new Array(St),Zt=new Array(St*St),_e,Le,De,Be,We,cn;for(_e=0,We=-1;++WeSl)if(!(Math.abs(qt*kt-Lt*Ut)>Sl)||!at)this._+="L"+(this._x1=r)+","+(this._y1=o);else{var Zt=p-mt,_e=P-St,Le=kt*kt+Lt*Lt,De=Zt*Zt+_e*_e,Be=Math.sqrt(Le),We=Math.sqrt(ie),cn=at*Math.tan((Tu-Math.acos((Le+ie-De)/(2*Be*We)))/2),nn=cn/We,ln=cn/Be;Math.abs(nn-1)>Sl&&(this._+="L"+(r+nn*Ut)+","+(o+nn*qt)),this._+="A"+at+","+at+",0,0,"+ +(qt*Zt>Ut*_e)+","+(this._x1=r+ln*kt)+","+(this._y1=o+ln*Lt)}},arc:function(r,o,p,P,at,mt){r=+r,o=+o,p=+p,mt=!!mt;var St=p*Math.cos(P),kt=p*Math.sin(P),Lt=r+St,Ut=o+kt,qt=1^mt,ie=mt?P-at:at-P;if(p<0)throw new Error("negative radius: "+p);this._x1===null?this._+="M"+Lt+","+Ut:(Math.abs(this._x1-Lt)>Sl||Math.abs(this._y1-Ut)>Sl)&&(this._+="L"+Lt+","+Ut),p&&(ie<0&&(ie=ie%xd+xd),ie>dm?this._+="A"+p+","+p+",0,1,"+qt+","+(r-St)+","+(o-kt)+"A"+p+","+p+",0,1,"+qt+","+(this._x1=Lt)+","+(this._y1=Ut):ie>Sl&&(this._+="A"+p+","+p+",0,"+ +(ie>=Tu)+","+qt+","+(this._x1=r+p*Math.cos(at))+","+(this._y1=o+p*Math.sin(at))))},rect:function(r,o,p,P){this._+="M"+(this._x0=this._x1=+r)+","+(this._y0=this._y1=+o)+"h"+ +p+"v"+ +P+"h"+-p+"Z"},toString:function(){return this._}};const Au=pm;function ar(r){return r.source}function t0(r){return r.target}function ta(r){return r.radius}function Js(r){return r.startAngle}function sc(r){return r.endAngle}function bd(){var r=ar,o=t0,p=ta,P=Js,at=sc,mt=null;function St(){var kt,Lt=mv.call(arguments),Ut=r.apply(this,Lt),qt=o.apply(this,Lt),ie=+p.apply(this,(Lt[0]=Ut,Lt)),Zt=P.apply(this,Lt)-ku,_e=at.apply(this,Lt)-ku,Le=ie*Zg(Zt),De=ie*vd(Zt),Be=+p.apply(this,(Lt[0]=qt,Lt)),We=P.apply(this,Lt)-ku,cn=at.apply(this,Lt)-ku;if(mt||(mt=kt=Au()),mt.moveTo(Le,De),mt.arc(0,0,ie,Zt,_e),(Zt!==We||_e!==cn)&&(mt.quadraticCurveTo(0,0,Be*Zg(We),Be*vd(We)),mt.arc(0,0,Be,We,cn)),mt.quadraticCurveTo(0,0,Le,De),mt.closePath(),kt)return mt=null,kt+""||null}return St.radius=function(kt){return arguments.length?(p=typeof kt=="function"?kt:Qh(+kt),St):p},St.startAngle=function(kt){return arguments.length?(P=typeof kt=="function"?kt:Qh(+kt),St):P},St.endAngle=function(kt){return arguments.length?(at=typeof kt=="function"?kt:Qh(+kt),St):at},St.source=function(kt){return arguments.length?(r=kt,St):r},St.target=function(kt){return arguments.length?(o=kt,St):o},St.context=function(kt){return arguments.length?(mt=kt==null?null:kt,St):mt},St}var Is="$";function Va(){}Va.prototype=Ta.prototype={constructor:Va,has:function(r){return Is+r in this},get:function(r){return this[Is+r]},set:function(r,o){return this[Is+r]=o,this},remove:function(r){var o=Is+r;return o in this&&delete this[o]},clear:function(){for(var r in this)r[0]===Is&&delete this[r]},keys:function(){var r=[];for(var o in this)o[0]===Is&&r.push(o.slice(1));return r},values:function(){var r=[];for(var o in this)o[0]===Is&&r.push(this[o]);return r},entries:function(){var r=[];for(var o in this)o[0]===Is&&r.push({key:o.slice(1),value:this[o]});return r},size:function(){var r=0;for(var o in this)o[0]===Is&&++r;return r},empty:function(){for(var r in this)if(r[0]===Is)return!1;return!0},each:function(r){for(var o in this)o[0]===Is&&r(this[o],o.slice(1),this)}};function Ta(r,o){var p=new Va;if(r instanceof Va)r.each(function(kt,Lt){p.set(Lt,kt)});else if(Array.isArray(r)){var P=-1,at=r.length,mt;if(o==null)for(;++P=r.length)return p!=null&&kt.sort(p),P!=null?P(kt):kt;for(var ie=-1,Zt=kt.length,_e=r[Lt++],Le,De,Be=Ou(),We,cn=Ut();++ier.length)return kt;var Ut,qt=o[Lt-1];return P!=null&&Lt>=r.length?Ut=kt.entries():(Ut=[],kt.each(function(ie,Zt){Ut.push({key:Zt,values:St(ie,Lt)})})),qt!=null?Ut.sort(function(ie,Zt){return qt(ie.key,Zt.key)}):Ut}return at={object:function(kt){return mt(kt,0,Pu,lc)},map:function(kt){return mt(kt,0,wd,_d)},entries:function(kt){return St(mt(kt,0,wd,_d),0)},key:function(kt){return r.push(kt),at},sortKeys:function(kt){return o[r.length-1]=kt,at},sortValues:function(kt){return p=kt,at},rollup:function(kt){return P=kt,at}}}function Pu(){return{}}function lc(r,o,p){r[o]=p}function wd(){return Ou()}function _d(r,o,p){r.set(o,p)}function Jh(){}var $c=Ou.prototype;Jh.prototype=Sd.prototype={constructor:Jh,has:$c.has,add:function(r){return r+="",this[Is+r]=r,this},remove:$c.remove,clear:$c.clear,values:$c.keys,size:$c.size,empty:$c.empty,each:$c.each};function Sd(r,o){var p=new Jh;if(r instanceof Jh)r.each(function(mt){p.add(mt)});else if(r){var P=-1,at=r.length;if(o==null)for(;++Pyv?Math.pow(r,.3333333333333333):r/Qi+of}function uc(r){return r>tl?r*r*r:Qi*(r-of)}function Zc(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,.4166666666666667)-.055)}function cc(r){return(r/=255)<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function ea(r){if(r instanceof js)return new js(r.h,r.c,r.l,r.opacity);if(r instanceof zi||(r=zo(r)),r.a===0&&r.b===0)return new js(NaN,0P!=_e>P&&p<(Zt-Ut)*(P-qt)/(_e-qt)+Ut&&(at=-at)}return at}function o0(r,o,p){var P;return Td(r,o,p)&&a0(r[P=+(r[0]===o[0])],p[P],o[P])}function Td(r,o,p){return(o[0]-r[0])*(p[1]-r[1])===(p[0]-r[0])*(o[1]-r[1])}function a0(r,o,p){return r<=o&&o<=p||p<=o&&o<=r}function Ad(){}var El=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Od(){var r=1,o=1,p=T.zr,P=Lt;function at(Ut){var qt=p(Ut);if(Array.isArray(qt))qt=qt.slice().sort(n0);else{var ie=(0,T.Xx)(Ut),Zt=ie[0],_e=ie[1];qt=(0,T.sG)(Zt,_e,qt),qt=(0,T.y1)(Math.floor(Zt/qt)*qt,Math.floor(_e/qt)*qt,qt)}return qt.map(function(Le){return mt(Ut,Le)})}function mt(Ut,qt){var ie=[],Zt=[];return St(Ut,qt,function(_e){P(_e,Ut,qt),uf(_e)>0?ie.push([_e]):Zt.push(_e)}),Zt.forEach(function(_e){for(var Le=0,De=ie.length,Be;Le=qt,El[We<<1].forEach(ln);++Le=qt,El[Be|We<<1].forEach(ln);for(El[We<<0].forEach(ln);++De=qt,cn=Ut[De*r]>=qt,El[We<<1|cn<<2].forEach(ln);++Le=qt,nn=cn,cn=Ut[De*r+Le+1]>=qt,El[Be|We<<1|cn<<2|nn<<3].forEach(ln);El[We|cn<<3].forEach(ln)}for(Le=-1,cn=Ut[De*r]>=qt,El[cn<<2].forEach(ln);++Le=qt,El[cn<<2|nn<<3].forEach(ln);El[cn<<3].forEach(ln);function ln(Pn){var qn=[Pn[0][0]+Le,Pn[0][1]+De],Un=[Pn[1][0]+Le,Pn[1][1]+De],gr=kt(qn),ir=kt(Un),cr,er;(cr=_e[gr])?(er=Zt[ir])?(delete _e[cr.end],delete Zt[er.start],cr===er?(cr.ring.push(Un),ie(cr.ring)):Zt[cr.start]=_e[er.end]={start:cr.start,end:er.end,ring:cr.ring.concat(er.ring)}):(delete _e[cr.end],cr.ring.push(Un),_e[cr.end=ir]=cr):(cr=Zt[ir])?(er=_e[gr])?(delete Zt[cr.start],delete _e[er.end],cr===er?(cr.ring.push(Un),ie(cr.ring)):Zt[er.start]=_e[cr.end]={start:er.start,end:cr.end,ring:er.ring.concat(cr.ring)}):(delete Zt[cr.start],cr.ring.unshift(qn),Zt[cr.start=gr]=cr):Zt[gr]=_e[ir]={start:gr,end:ir,ring:[qn,Un]}}}function kt(Ut){return Ut[0]*2+Ut[1]*(r+1)*4}function Lt(Ut,qt,ie){Ut.forEach(function(Zt){var _e=Zt[0],Le=Zt[1],De=_e|0,Be=Le|0,We,cn=qt[Be*r+De];_e>0&&_e0&&Le0)||!(ie>0))throw new Error("invalid size");return r=qt,o=ie,at},at.thresholds=function(Ut){return arguments.length?(p=typeof Ut=="function"?Ut:Array.isArray(Ut)?Bs(lf.call(Ut)):Bs(Ut),at):p},at.smooth=function(Ut){return arguments.length?(P=Ut?Lt:Ad,at):P===Lt},at}function mc(r,o,p){for(var P=r.width,at=r.height,mt=(p<<1)+1,St=0;St=p&&(kt>=mt&&(Lt-=r.data[kt-mt+St*P]),o.data[kt-p+St*P]=Lt/Math.min(kt+1,P-1+mt-kt,mt))}function cf(r,o,p){for(var P=r.width,at=r.height,mt=(p<<1)+1,St=0;St=p&&(kt>=mt&&(Lt-=r.data[St+(kt-mt)*P]),o.data[St+(kt-p)*P]=Lt/Math.min(kt+1,at-1+mt-kt,mt))}function mb(r){return r[0]}function s0(r){return r[1]}function Nu(){return 1}function l0(){var r=mb,o=s0,p=Nu,P=960,at=500,mt=20,St=2,kt=mt*3,Lt=P+kt*2>>St,Ut=at+kt*2>>St,qt=Bs(20);function ie(We){var cn=new Float32Array(Lt*Ut),nn=new Float32Array(Lt*Ut);We.forEach(function(qn,Un,gr){var ir=+r(qn,Un,gr)+kt>>St,cr=+o(qn,Un,gr)+kt>>St,er=+p(qn,Un,gr);ir>=0&&ir=0&&cr>St),cf({width:Lt,height:Ut,data:nn},{width:Lt,height:Ut,data:cn},mt>>St),mc({width:Lt,height:Ut,data:cn},{width:Lt,height:Ut,data:nn},mt>>St),cf({width:Lt,height:Ut,data:nn},{width:Lt,height:Ut,data:cn},mt>>St),mc({width:Lt,height:Ut,data:cn},{width:Lt,height:Ut,data:nn},mt>>St),cf({width:Lt,height:Ut,data:nn},{width:Lt,height:Ut,data:cn},mt>>St);var ln=qt(cn);if(!Array.isArray(ln)){var Pn=(0,T.T9)(cn);ln=(0,T.sG)(0,Pn,ln),ln=(0,T.y1)(0,Math.floor(Pn/ln)*ln,ln),ln.shift()}return Od().thresholds(ln).size([Lt,Ut])(cn).map(Zt)}function Zt(We){return We.value*=Math.pow(2,-2*St),We.coordinates.forEach(_e),We}function _e(We){We.forEach(Le)}function Le(We){We.forEach(De)}function De(We){We[0]=We[0]*Math.pow(2,St)-kt,We[1]=We[1]*Math.pow(2,St)-kt}function Be(){return kt=mt*3,Lt=P+kt*2>>St,Ut=at+kt*2>>St,ie}return ie.x=function(We){return arguments.length?(r=typeof We=="function"?We:Bs(+We),ie):r},ie.y=function(We){return arguments.length?(o=typeof We=="function"?We:Bs(+We),ie):o},ie.weight=function(We){return arguments.length?(p=typeof We=="function"?We:Bs(+We),ie):p},ie.size=function(We){if(!arguments.length)return[P,at];var cn=Math.ceil(We[0]),nn=Math.ceil(We[1]);if(!(cn>=0)&&!(cn>=0))throw new Error("invalid size");return P=cn,at=nn,Be()},ie.cellSize=function(We){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return St=Math.floor(Math.log(We)/Math.LN2),Be()},ie.thresholds=function(We){return arguments.length?(qt=typeof We=="function"?We:Array.isArray(We)?Bs(lf.call(We)):Bs(We),ie):qt},ie.bandwidth=function(We){if(!arguments.length)return Math.sqrt(mt*(mt+1));if(!((We=+We)>=0))throw new Error("invalid bandwidth");return mt=Math.round((Math.sqrt(4*We*We+1)-1)/2),Be()},ie}function Pd(r){return function(){return r}}function gc(r,o,p,P,at,mt,St,kt,Lt,Ut){this.target=r,this.type=o,this.subject=p,this.identifier=P,this.active=at,this.x=mt,this.y=St,this.dx=kt,this.dy=Lt,this._=Ut}gc.prototype.on=function(){var r=this._.on.apply(this._,arguments);return r===this._?this:r};function vv(){return!Mr.ctrlKey&&!Mr.button}function Nd(){return this.parentNode}function gb(r){return r==null?{x:Mr.x,y:Mr.y}:r}function z2(){return navigator.maxTouchPoints||"ontouchstart"in this}function zs(){var r=vv,o=Nd,p=gb,P=z2,at={},mt=dt("start","drag","end"),St=0,kt,Lt,Ut,qt,ie=0;function Zt(ln){ln.on("mousedown.drag",_e).filter(P).on("touchstart.drag",Be).on("touchmove.drag",We).on("touchend.drag touchcancel.drag",cn).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function _e(){if(!(qt||!r.apply(this,arguments))){var ln=nn("mouse",o.apply(this,arguments),Or,this,arguments);ln&&(sn(Mr.view).on("mousemove.drag",Le,!0).on("mouseup.drag",De,!0),Yn(Mr.view),kn(),Ut=!1,kt=Mr.clientX,Lt=Mr.clientY,ln("start"))}}function Le(){if(Bn(),!Ut){var ln=Mr.clientX-kt,Pn=Mr.clientY-Lt;Ut=ln*ln+Pn*Pn>ie}at.mouse("drag")}function De(){sn(Mr.view).on("mousemove.drag mouseup.drag",null),fr(Mr.view,Ut),Bn(),at.mouse("end")}function Be(){if(r.apply(this,arguments)){var ln=Mr.changedTouches,Pn=o.apply(this,arguments),qn=ln.length,Un,gr;for(Un=0;Un9999?"+"+hs(r,6):hs(r,4)}function yb(r){var o=r.getUTCHours(),p=r.getUTCMinutes(),P=r.getUTCSeconds(),at=r.getUTCMilliseconds();return isNaN(r)?"Invalid Date":wv(r.getUTCFullYear(),4)+"-"+hs(r.getUTCMonth()+1,2)+"-"+hs(r.getUTCDate(),2)+(at?"T"+hs(o,2)+":"+hs(p,2)+":"+hs(P,2)+"."+hs(at,3)+"Z":P?"T"+hs(o,2)+":"+hs(p,2)+":"+hs(P,2)+"Z":p||o?"T"+hs(o,2)+":"+hs(p,2)+"Z":"")}function Id(r){var o=new RegExp('["'+r+` -\r]`),p=r.charCodeAt(0);function P(ie,Zt){var _e,Le,De=at(ie,function(Be,We){if(_e)return _e(Be,We-1);Le=Be,_e=Zt?bv(Be,Zt):xv(Be)});return De.columns=Le||[],De}function at(ie,Zt){var _e=[],Le=ie.length,De=0,Be=0,We,cn=Le<=0,nn=!1;ie.charCodeAt(Le-1)===Rd&&--Le,ie.charCodeAt(Le-1)===Ld&&--Le;function ln(){if(cn)return hf;if(nn)return nn=!1,Ja;var qn,Un=De,gr;if(ie.charCodeAt(Un)===Dd){for(;De++=Le?cn=!0:(gr=ie.charCodeAt(De++))===Rd?nn=!0:gr===Ld&&(nn=!0,ie.charCodeAt(De)===Rd&&++De),ie.slice(Un+1,qn-1).replace(/""/g,'"')}for(;De1&&arguments[1]!==void 0?arguments[1]:12,Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Arial",V=document.createElement("canvas"),N=V.getContext("2d");return N.font=Z+"px "+Y,N.measureText(q).width},wrapText:function(q,Z,Y,V){var N=g.select(V),U=N.text().split(/\s+/).reverse(),T=void 0,A=[],M=0,O=L*st,H=N.attr("y"),z=parseFloat(N.attr("dy")),c=Z*$,D=N.text(null).append("tspan").attr("x",q).attr("y",H-5).attr("dy",z+"em").classed(J,!0).style("font-size",Z+"px");for(D.text(U.pop()),D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").style("font-size",c+"px");T=U.pop();)A.push(T),D.text(A.join(" ")),D.node()&&D.node().getComputedTextLength()>Y-50&&(A.pop(),D.text(A.join(" ")),A=[T],D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").text(T).style("font-size",c+"px"))},wrapTextWithEllipses:function(q,Z){var Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,V=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,N=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1.2;q.each(function(){var U,T,A,M,O,H,z;for(U=(q=g.select(this)).text().split(/\s+/).reverse(),A=[],M=0,O=q.attr("y"),H=parseFloat(q.attr("dy")),z=q.text(null).append("tspan").attr("x",Y).attr("y",O).attr("dy",H+"em");T=U.pop();)if(A.push(T),z.text(A.join(" ")),z.node()&&z.node().getComputedTextLength()>Z){if(A.pop(),z.text(A.join(" ")),!(M1&&arguments[1]!==void 0?arguments[1]:"day",R=localeTimeMap[L],st=new Intl.DateTimeFormat(g,R);return function($){return st.format($)}}}}.call(xt,F,xt,Oe))===void 0||(Oe.exports=Pt)},function(Oe,xt,F){"use strict";var Pt,d=function(R,st){if(Array.isArray(R))return R;if(Symbol.iterator in Object(R))return function($,J){var X=[],q=!0,Z=!1,Y=void 0;try{for(var V,N=$[Symbol.iterator]();!(q=(V=N.next()).done)&&(X.push(V.value),!J||X.length!==J);q=!0);}catch(U){Z=!0,Y=U}finally{try{!q&&N.return&&N.return()}finally{if(Z)throw Y}}return X}(R,st);throw new TypeError("Invalid attempt to destructure non-iterable instance")},g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(R){return typeof R}:function(R){return R&&typeof Symbol=="function"&&R.constructor===Symbol&&R!==Symbol.prototype?"symbol":typeof R};function L(R,st,$){return st in R?Object.defineProperty(R,st,{value:$,enumerable:!0,configurable:!0,writable:!0}):R[st]=$,R}(Pt=function(R){var st,$=F(39),J=F(67),X=F(73),q=X.axisTimeCombinations,Z=X.timeBenchmarks,Y=F(89),V=Y.convertMillisecondsToDays,N=Y.getLocaleDateFormatter,U={minute:J.timeFormat("%M m"),hour:J.timeFormat("%H %p"),day:J.timeFormat("%e"),daymonth:J.timeFormat("%d %b"),month:J.timeFormat("%b"),year:J.timeFormat("%Y")},T=(L(st={},q.MINUTE_HOUR,$.timeHour.every(1)),L(st,q.HOUR_DAY,$.timeDay.every(1)),L(st,q.DAY_MONTH,$.timeMonth.every(1)),L(st,q.MONTH_YEAR,$.timeYear.every(1)),st),A=function(O){var H=Z.ONE_YEAR;return O2&&arguments[2]!==void 0?arguments[2]:null,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,D=new Date(O[0].date),it=new Date(O[O.length-1].date),Q=it-D;c&&(typeof Intl=="undefined"||(typeof Intl=="undefined"?"undefined":g(Intl))==="object"&&!Intl.DateTimeFormat)&&(c=null),z||(z=A(Q));var W=z.split("-"),k=d(W,2),_=k[0],C=k[1],h=T[z],l=M(H,V(Q));return{minor:{format:c?N(c,_):U[_],tick:l},major:{format:c?N(c,C):U[C],tick:h}}}}}.call(xt,F,xt,Oe))===void 0||(Oe.exports=Pt)},function(Oe,xt,F){"use strict";var Pt;(Pt=function(d){F(7);var g="highlight-filter";return{bounceCircleHighlight:function(L,R,st){var $=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2*st,J=100,X=50;L.transition().ease(R).duration(J).attr("r",$).transition().ease(R).delay(X).duration(J).attr("r",st)},createFilterContainer:function(L){return L.append("defs").append("filter").attr("id",g)},createGausianBlur:function(L){return L.append("feGaussianBlur").attr("stdDeviation",1).attr("result","coloredBlur"),g},createWhiteGlow:function(L){L.attr("x","-5000%").attr("y","-5000%").attr("width","10000%").attr("height","10000%"),L.append("feFlood").attr("result","flood").attr("flood-color","#ffffff").attr("flood-opacity","1"),L.append("feComposite").attr("result","mask").attr("in2","SourceGraphic").attr("operator","in").attr("in","flood"),L.append("feMorphology").attr("result","dilated").attr("operator","dilate").attr("radius","2").attr("in","mask"),L.append("feGaussianBlur").attr("result","blurred").attr("stdDeviation","5").attr("in","dilated");var R=L.append("feMerge");return R.append("feMergeNode").attr("in","blurred"),R.append("feMergeNode").attr("in","SourceGraphic"),g},createGlow:function(L){L.attr("x","-30%").attr("y","-30%").attr("width","160%").attr("height","160%"),L.append("feGaussianBlur").attr("stdDeviation","0.9 0.9").attr("result","glow");var R=L.append("feMerge");return R.append("feMergeNode").attr("in","glow"),R.append("feMergeNode").attr("in","glow"),R.append("feMergeNode").attr("in","glow"),g},createGlowWithMatrix:function(L){L.attr("x","-500%").attr("y","-500%").attr("width","1800%").attr("height","1800%"),L.append("feColorMatrix").attr("type","matrix").attr("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0"),L.append("feGaussianBlur").attr("stdDeviation","1").attr("result","coloredBlur").attr("in","SourceGraphic");var R=L.append("feMerge");return R.append("feMergeNode").attr("in","coloredBlur"),R.append("feMergeNode").attr("in","SourceGraphic"),g}}}.call(xt,F,xt,Oe))===void 0||(Oe.exports=Pt)},,,,,,,,,,function(Oe,xt,F){"use strict";var Pt,d=function(R,st){if(Array.isArray(R))return R;if(Symbol.iterator in Object(R))return function($,J){var X=[],q=!0,Z=!1,Y=void 0;try{for(var V,N=$[Symbol.iterator]();!(q=(V=N.next()).done)&&(X.push(V.value),!J||X.length!==J);q=!0);}catch(U){Z=!0,Y=U}finally{try{!q&&N.return&&N.return()}finally{if(Z)throw Y}}return X}(R,st);throw new TypeError("Invalid attempt to destructure non-iterable instance")},g=Object.assign||function(R){for(var st=1;st=0||Object.prototype.hasOwnProperty.call(Fn,si)&&(fi[si]=Fn[si]);return fi}(rr,["dates"]),lr=Rr.map(function(Fn){return{date:new Date(Fn[ve]),value:+Fn[Ce]}});return vr.push(g({dates:lr},jr)),vr},[]),dataByDate:hr,dataRange:nr}}(on);le=_n.dataByTopic,Gt=_n.dataByDate,he=_n.dataRange;var Pe,wn,an,gn=Ct?300:0;dt=v-u.left-u.right-gn,pt=I-u.top-u.bottom,function(){var Sn=st.min(le,function(rr){var Rr=rr.dates;return st.min(Rr,Tn)}),xn=st.max(le,function(rr){var Rr=rr.dates;return st.max(Rr,Tn)}),hr=st.max(le,function(rr){var Rr=rr.dates;return st.max(Rr,Qn)}),nr=st.min(le,function(rr){var Rr=rr.dates;return st.min(Rr,Qn)}),pr=nr<0?nr:0;bt=Y.scaleTime().domain([Sn,xn]).rangeRound([0,dt]),Mt=Y.scaleLinear().domain([pr,Math.abs(hr)]).rangeRound([pt,0]).nice();var vr=(w=Y.scaleOrdinal().range(y).domain(le.map(dr))).range();j=w.domain().reduce(function(rr,Rr,jr){return rr[Rr]=vr[jr],rr},{})}(),function(Sn){ct||(ct=N.select(Sn).append("svg").classed("britechart line-chart",!0),function(){var xn=ct.append("g").classed("container-group",!0).attr("transform","translate("+u.left+","+u.top+")");xn.append("g").classed("x-axis-group",!0).append("g").classed("axis x",!0),xn.selectAll(".x-axis-group").append("g").classed("month-axis",!0),xn.append("g").classed("y-axis-group",!0).append("g").classed("axis y",!0),xn.append("g").classed("grid-lines-group",!0),xn.append("g").classed("chart-group",!0),Ct&&xn.append("g").classed("legend-group",!0),xn.append("g").classed("metadata-group",!0)}()),ct.attr("width",v).attr("height",I)}(this),function(){var Sn=void 0,xn=void 0;if(gt==="custom"&&typeof Ot=="string")Sn={tick:vt,format:U.timeFormat(Ot)},xn=null;else{var hr=H(Gt,v,gt,At);Sn=hr.minor,xn=hr.major,tt=$.axisBottom(bt).ticks(xn.tick).tickSize(0,0).tickFormat(xn.format)}B=$.axisBottom(bt).ticks(Sn.tick).tickSize(10,0).tickPadding(5).tickFormat(Sn.format),nt=$.axisLeft(Mt).ticks(Jt).tickSize([0]).tickPadding(5).tickFormat(be),function(nr,pr){ct.select(".grid-lines-group").selectAll("line").remove(),(ce==="horizontal"||ce==="full")&&ct.select(".grid-lines-group").selectAll("line.horizontal-grid-line").data(Mt.ticks(pr)).enter().append("line").attr("class","horizontal-grid-line").attr("x1",-x-30).attr("x2",dt).attr("y1",function(vr){return Mt(vr)}).attr("y2",function(vr){return Mt(vr)}),ce!=="vertical"&&ce!=="full"||ct.select(".grid-lines-group").selectAll("line.vertical-grid-line").data(bt.ticks(nr)).enter().append("line").attr("class","vertical-grid-line").attr("y1",0).attr("y2",pt).attr("x1",function(vr){return bt(vr)}).attr("x2",function(vr){return bt(vr)}),ct.select(".grid-lines-group").selectAll("line.extended-x-line").data([0]).enter().append("line").attr("class","extended-x-line").attr("x1",-x-30).attr("x2",dt).attr("y1",I-u.bottom-u.top).attr("y2",I-u.bottom-u.top)}(Sn.tick,Jt)}(),function(){if(ct.select(".x-axis-group .axis.x").attr("transform","translate(0, "+pt+")").call(B),gt!=="custom"&&ct.select(".x-axis-group .month-axis").attr("transform","translate(0, "+(pt+28)+")").call(tt),Ke){rn&&ct.selectAll(".x-axis-label").remove();var Sn=dt/2,xn=pt+28+36;rn=ct.select(".x-axis-group").append("text").attr("x",Sn).attr("y",xn).attr("text-anchor","middle").attr("class","x-axis-label").text(Ke)}if(ct.select(".y-axis-group .axis.y").attr("transform","translate("+-x+", 0)").call(nt).call(qe),un){Qt&&ct.selectAll(".y-axis-label").remove();var hr=-Kt-x,nr=-pt/2;Qt=ct.select(".y-axis-group").append("text").attr("x",nr).attr("y",hr).attr("text-anchor","middle").attr("transform","rotate(270)").attr("class","y-axis-label").text(un)}}(),function(){if(he){var Sn=V.area().curve(D[re]).x(function(xn){var hr=xn.date;return bt(hr)}).y0(function(xn){var hr=xn.min;return Mt(hr)}).y1(function(xn){var hr=xn.max;return Mt(hr)});ct.select(".chart-group").append("g").attr("class","area").append("path").data([he]).attr("class","area").attr("d",Sn)}}(),Pe=void 0,wn=void 0,wn=V.line().curve(D[re]).x(function(Sn){var xn=Sn.date;return bt(xn)}).y(function(Sn){var xn=Sn.value;return Mt(xn)}),Pe=ct.select(".chart-group").selectAll(".line").data(le,dr),et=Pe.enter().append("g").attr("class","topic").append("path").attr("class","line").merge(Pe).attr("id",function(Sn){return Sn.topic}).attr("d",function(Sn){var xn=Sn.dates;return wn(xn)}).style("stroke",function(Sn){return xn=Sn.topic,w(xn);var xn}).style("opacity",function(Sn){return Sn.hasOwnProperty("show")?Sn.show?1:0:1}).style("stroke-dasharray",function(Sn){return!!Sn.hasOwnProperty("show")&&!!Sn.dashed&&[.5,4]}),Pe.exit().remove(),function(){if(Ct){var Sn=Number.parseInt(dt)+Number.parseInt(u.right);Ze=ct.selectAll(".legend-group").append("g").attr("transform","translate("+Sn+", 0)").classed("tooltip-text",!0),bn=Ze.append("text").classed("tooltip-title",!0).attr("x",-43).attr("dy",".35em").attr("y",16).style("fill","#282C35").style("font-size","12px"),Ze.append("line").classed("tooltip-divider",!0).attr("x1",-43).attr("x2",225).attr("y1",31).attr("y2",31).style("stroke","#D2D6DF"),pn=Ze.append("g").classed("tooltip-body",!0).style("transform","translateY(8px)").style("fill","#282C35");var xn=void 0;xn=le[0].hasOwnProperty("show")?le.filter(function(rr){return rr.show}):le;for(var hr=0;hrK&&(Et||(Et=ct.select(".metadata-group").append("rect").attr("class","overlay").attr("y1",0).attr("y2",I).attr("height",pt).attr("width",dt).attr("fill","rgba(0, 0, 0, 0)").style("display","none")),Rt||(Rt=ct.select(".metadata-group").append("g").attr("class","hover-marker vertical-marker-container").attr("transform","translate(9999, 0)"),zt=Rt.selectAll("path").data([{x1:0,y1:0,x2:0,y2:0}]).enter().append("line").classed("vertical-marker",!0).attr("x1",0).attr("y1",pt).attr("x2",0).attr("y2",0)),ct.on("mouseover",function(Sn){(function(xn,hr){Et.style("display","block"),zt.classed("bc-is-active",!0),ye.call("customMouseOver",xn,hr,N.mouse(xn))})(this,Sn)}).on("mouseout",function(Sn){(function(xn,hr){Et.style("display","none"),zt.classed("bc-is-active",!1),ye.call("customMouseOut",xn,hr,N.mouse(xn))})(this,Sn)}).on("mousemove",function(Sn){var xn,hr,nr,pr,vr,rr,Rr,jr;xn=this,hr=N.mouse(xn),nr=d(hr,2),pr=nr[0],vr=nr[1],rr=-u.left,Rr=Re(pr+rr),jr=void 0,Rr&&(Mn(jr=bt(new Date(Rr.date))),tn(Rr),ye.call("customMouseMove",xn,Rr,j,jr,vr))})),$t&&function(){ct.select(".chart-group").selectAll(".data-points-container").remove();var Sn=et.nodes().reduce(function(xn,hr){return xn[hr.id]=hr,xn},{});Gt.reduce(function(xn,hr){var nr=hr.topics.map(function(pr){return{topic:pr,node:Sn[pr.name]}});return xn=[].concat(L(xn),L(nr))},[])}(),ct.on("touchmove",function(Sn){(function(xn,hr){ye.call("customTouchMove",xn,hr,N.touch(xn))})(this,Sn)}),wt&&(an=Re(dt))&&(Mn(bt(new Date(an.date))),tn(an))})}function qe(ke){ke.selectAll(".tick text").attr("transform","translate(0, -7)")}function be(ke){var on=void 0;return on=l(ke)?C:h,Ft&&(on=Z.format(Ft)),on(ke)}function je(ke){return new Date(ke).toLocaleDateString()}function Ue(ke){var on,_n,Pe=void 0,wn=void 0;on=ke.topicName,_n=ke.sum.toLocaleString(),wn=pn.append("text").classed("tooltip-left-text",!0).attr("dy","1em").attr("x",-15).attr("y",Ln).style("fill","#000000").style("font-size","12px").text(on).call(Ie,200,12,-25),Pe=pn.append("text").classed("tooltip-right-text",!0).attr("dy","1em").attr("x",-15).attr("y",Ln).style("fill","#000000").style("font-size","12px").text(_n),vn=wn.node().getBBox().height,vn+5,xe=Pe.node().getBBox().width?Pe.node().getBBox().width:xe,Pe.attr("x",300-xe-75),pn.append("circle").classed("tooltip-circle",!0).attr("cx",-35).attr("cy",Ln+8).attr("r",5).style("fill",j[ke.topic]).style("stroke-width",1),Ln+=vn+7}function Re(ke){var on,_n,Pe,wn=bt.invert(ke),an=(0,st.bisector(Tn).left)(Gt,wn,1),gn=Gt[an],Sn=Gt[an-1],xn=void 0;return Sn&&gn?(on=wn,_n=gn,Pe=Sn,xn=new Date(on).getTime()-new Date(_n.date).getTime()>new Date(Pe.date).getTime()-new Date(on).getTime()?_n:Pe):xn=gn,xn}function Ie(ke,on,_n){var Pe=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;ke.each(function(){var wn,an,gn,Sn,xn,hr,nr;for(wn=(ke=N.select(this)).text().split(/\s+/).reverse(),gn=[],Sn=0,xn=ke.attr("y"),hr=parseFloat(ke.attr("dy")),nr=ke.text(null).append("tspan").attr("x",Pe).attr("y",xn).attr("dy",hr+"em");an=wn.pop();)gn.push(an),nr.text(gn.join(" ")),T.getTextWidth(gn.join(" "),_n,"Karla, sans-serif")>on&&(gn.pop(),nr.text(gn.join(" ")),Sn<4&&(gn=[an],nr=ke.append("tspan").attr("x",Pe).attr("y",xn).attr("dy",1.2*++Sn+hr+"em").text(an)))})}function tn(ke){Rt.selectAll(".circle-container").remove();var on=et.nodes().reduce(function(wn,an){return wn[an.id]=an,wn},{}),_n=le.filter(function(wn){return!wn.show}).map(function(wn){return wn.topicName}),Pe=ke.topics.map(function(wn){return{topic:wn,node:on[wn.name]}}).filter(function(wn){return!!wn.topic}).sort(function(wn,an){return j[wn.topic.name]lr.x+vr;){var Dr=(Rr+jr)/2;if(lr=nr.getPointAtLength(Dr),hr{(function(Oe,xt){yr.exports=xt()})(window,function(){return function(Oe){var xt={};function F(Pt){if(xt[Pt])return xt[Pt].exports;var d=xt[Pt]={i:Pt,l:!1,exports:{}};return Oe[Pt].call(d.exports,d,d.exports,F),d.l=!0,d.exports}return F.m=Oe,F.c=xt,F.d=function(Pt,d,g){F.o(Pt,d)||Object.defineProperty(Pt,d,{enumerable:!0,get:g})},F.r=function(Pt){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(Pt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(Pt,"__esModule",{value:!0})},F.t=function(Pt,d){if(1&d&&(Pt=F(Pt)),8&d||4&d&&typeof Pt=="object"&&Pt&&Pt.__esModule)return Pt;var g=Object.create(null);if(F.r(g),Object.defineProperty(g,"default",{enumerable:!0,value:Pt}),2&d&&typeof Pt!="string")for(var L in Pt)F.d(g,L,function(R){return Pt[R]}.bind(null,L));return g},F.n=function(Pt){var d=Pt&&Pt.__esModule?function(){return Pt.default}:function(){return Pt};return F.d(d,"a",d),d},F.o=function(Pt,d){return Object.prototype.hasOwnProperty.call(Pt,d)},F.p="",F(F.s=110)}([function(Oe,xt,F){"use strict";F.d(xt,"a",function(){return g});var Pt=new Date,d=new Date;function g(L,R,st,$){function J(X){return L(X=arguments.length===0?new Date:new Date(+X)),X}return J.floor=function(X){return L(X=new Date(+X)),X},J.ceil=function(X){return L(X=new Date(X-1)),R(X,1),L(X),X},J.round=function(X){var q=J(X),Z=J.ceil(X);return X-q0))return V;do V.push(Y=new Date(+X)),R(X,Z),L(X);while(Y=q)for(;L(q),!X(q);)q.setTime(q-1)},function(q,Z){if(q>=q)if(Z<0)for(;++Z<=0;)for(;R(q,-1),!X(q););else for(;--Z>=0;)for(;R(q,1),!X(q););})},st&&(J.count=function(X,q){return Pt.setTime(+X),d.setTime(+q),L(Pt),L(d),Math.floor(st(Pt,d))},J.every=function(X){return X=Math.floor(X),isFinite(X)&&X>0?X>1?J.filter($?function(q){return $(q)%X==0}:function(q){return J.count(0,q)%X==0}):J:null}),J}},function(Oe,xt,F){"use strict";F.d(xt,"d",function(){return Pt}),F.d(xt,"c",function(){return d}),F.d(xt,"b",function(){return g}),F.d(xt,"a",function(){return L}),F.d(xt,"e",function(){return R});var Pt=1e3,d=6e4,g=36e5,L=864e5,R=6048e5},,function(Oe,xt,F){"use strict";F.d(xt,"g",function(){return L}),F.d(xt,"c",function(){return R}),F.d(xt,"k",function(){return st}),F.d(xt,"m",function(){return $}),F.d(xt,"i",function(){return J}),F.d(xt,"a",function(){return X}),F.d(xt,"e",function(){return q}),F.d(xt,"h",function(){return Z}),F.d(xt,"d",function(){return Y}),F.d(xt,"l",function(){return V}),F.d(xt,"n",function(){return N}),F.d(xt,"j",function(){return U}),F.d(xt,"b",function(){return T}),F.d(xt,"f",function(){return A});var Pt=F(0),d=F(1);function g(M){return Object(Pt.a)(function(O){O.setDate(O.getDate()-(O.getDay()+7-M)%7),O.setHours(0,0,0,0)},function(O,H){O.setDate(O.getDate()+7*H)},function(O,H){return(H-O-(H.getTimezoneOffset()-O.getTimezoneOffset())*d.c)/d.e})}var L=g(0),R=g(1),st=g(2),$=g(3),J=g(4),X=g(5),q=g(6),Z=L.range,Y=R.range,V=st.range,N=$.range,U=J.range,T=X.range,A=q.range},function(Oe,xt,F){"use strict";F.d(xt,"g",function(){return L}),F.d(xt,"c",function(){return R}),F.d(xt,"k",function(){return st}),F.d(xt,"m",function(){return $}),F.d(xt,"i",function(){return J}),F.d(xt,"a",function(){return X}),F.d(xt,"e",function(){return q}),F.d(xt,"h",function(){return Z}),F.d(xt,"d",function(){return Y}),F.d(xt,"l",function(){return V}),F.d(xt,"n",function(){return N}),F.d(xt,"j",function(){return U}),F.d(xt,"b",function(){return T}),F.d(xt,"f",function(){return A});var Pt=F(0),d=F(1);function g(M){return Object(Pt.a)(function(O){O.setUTCDate(O.getUTCDate()-(O.getUTCDay()+7-M)%7),O.setUTCHours(0,0,0,0)},function(O,H){O.setUTCDate(O.getUTCDate()+7*H)},function(O,H){return(H-O)/d.e})}var L=g(0),R=g(1),st=g(2),$=g(3),J=g(4),X=g(5),q=g(6),Z=L.range,Y=R.range,V=st.range,N=$.range,U=J.range,T=X.range,A=q.range},function(Oe,xt,F){"use strict";F.d(xt,"a",function(){return d}),F.d(xt,"d",function(){return g}),F.d(xt,"c",function(){return L}),F.d(xt,"e",function(){return M}),F.d(xt,"h",function(){return z}),F.d(xt,"g",function(){return c}),F.d(xt,"b",function(){return D}),F.d(xt,"f",function(){return C});var Pt=F(11);function d(){}var g=.7,L=1/g,R="\\s*([+-]?\\d+)\\s*",st="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",$="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",J=/^#([0-9a-f]{3,8})$/,X=new RegExp("^rgb\\("+[R,R,R]+"\\)$"),q=new RegExp("^rgb\\("+[$,$,$]+"\\)$"),Z=new RegExp("^rgba\\("+[R,R,R,st]+"\\)$"),Y=new RegExp("^rgba\\("+[$,$,$,st]+"\\)$"),V=new RegExp("^hsl\\("+[st,$,$]+"\\)$"),N=new RegExp("^hsla\\("+[st,$,$,st]+"\\)$"),U={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function T(){return this.rgb().formatHex()}function A(){return this.rgb().formatRgb()}function M(u){var v,I;return u=(u+"").trim().toLowerCase(),(v=J.exec(u))?(I=v[1].length,v=parseInt(v[1],16),I===6?O(v):I===3?new D(v>>8&15|v>>4&240,v>>4&15|240&v,(15&v)<<4|15&v,1):I===8?new D(v>>24&255,v>>16&255,v>>8&255,(255&v)/255):I===4?new D(v>>12&15|v>>8&240,v>>8&15|v>>4&240,v>>4&15|240&v,((15&v)<<4|15&v)/255):null):(v=X.exec(u))?new D(v[1],v[2],v[3],1):(v=q.exec(u))?new D(255*v[1]/100,255*v[2]/100,255*v[3]/100,1):(v=Z.exec(u))?H(v[1],v[2],v[3],v[4]):(v=Y.exec(u))?H(255*v[1]/100,255*v[2]/100,255*v[3]/100,v[4]):(v=V.exec(u))?k(v[1],v[2]/100,v[3]/100,1):(v=N.exec(u))?k(v[1],v[2]/100,v[3]/100,v[4]):U.hasOwnProperty(u)?O(U[u]):u==="transparent"?new D(NaN,NaN,NaN,0):null}function O(u){return new D(u>>16&255,u>>8&255,255&u,1)}function H(u,v,I,S){return S<=0&&(u=v=I=NaN),new D(u,v,I,S)}function z(u){return u instanceof d||(u=M(u)),u?new D((u=u.rgb()).r,u.g,u.b,u.opacity):new D}function c(u,v,I,S){return arguments.length===1?z(u):new D(u,v,I,S==null?1:S)}function D(u,v,I,S){this.r=+u,this.g=+v,this.b=+I,this.opacity=+S}function it(){return"#"+W(this.r)+W(this.g)+W(this.b)}function Q(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(u===1?")":", "+u+")")}function W(u){return((u=Math.max(0,Math.min(255,Math.round(u)||0)))<16?"0":"")+u.toString(16)}function k(u,v,I,S){return S<=0?u=v=I=NaN:I<=0||I>=1?u=v=NaN:v<=0&&(u=NaN),new h(u,v,I,S)}function _(u){if(u instanceof h)return new h(u.h,u.s,u.l,u.opacity);if(u instanceof d||(u=M(u)),!u)return new h;if(u instanceof h)return u;var v=(u=u.rgb()).r/255,I=u.g/255,S=u.b/255,b=Math.min(v,I,S),K=Math.max(v,I,S),ct=NaN,et=K-b,dt=(K+b)/2;return et?(ct=v===K?(I-S)/et+6*(I0&&dt<1?0:ct,new h(ct,et,dt,u.opacity)}function C(u,v,I,S){return arguments.length===1?_(u):new h(u,v,I,S==null?1:S)}function h(u,v,I,S){this.h=+u,this.s=+v,this.l=+I,this.opacity=+S}function l(u,v,I){return 255*(u<60?v+(I-v)*u/60:u<180?I:u<240?v+(I-v)*(240-u)/60:v)}Object(Pt.a)(d,M,{copy:function(u){return Object.assign(new this.constructor,this,u)},displayable:function(){return this.rgb().displayable()},hex:T,formatHex:T,formatHsl:function(){return _(this).formatHsl()},formatRgb:A,toString:A}),Object(Pt.a)(D,c,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new D(this.r*u,this.g*u,this.b*u,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:it,formatHex:it,formatRgb:Q,toString:Q})),Object(Pt.a)(h,C,Object(Pt.b)(d,{brighter:function(u){return u=u==null?L:Math.pow(L,u),new h(this.h,this.s,this.l*u,this.opacity)},darker:function(u){return u=u==null?g:Math.pow(g,u),new h(this.h,this.s,this.l*u,this.opacity)},rgb:function(){var u=this.h%360+360*(this.h<0),v=isNaN(u)||isNaN(this.s)?0:this.s,I=this.l,S=I+(I<.5?I:1-I)*v,b=2*I-S;return new D(l(u>=240?u-240:u+120,b,S),l(u,b,S),l(u<120?u+240:u-120,b,S),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var u=this.opacity;return((u=isNaN(u)?1:Math.max(0,Math.min(1,u)))===1?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(u===1?")":", "+u+")")}}))},function(Oe,xt,F){"use strict";xt.a=function(Pt,d){return Pt=+Pt,d=+d,function(g){return Pt*(1-g)+d*g}}},function(Oe,xt,F){"use strict";F.r(xt);var Pt=F(12),d=F(32),g=function(c){return Object(d.a)(Object(Pt.a)(c).call(document.documentElement))},L=0;function R(){return new st}function st(){this._="@"+(++L).toString(36)}st.prototype=R.prototype={constructor:st,get:function(c){for(var D=this._;!(D in c);)if(!(c=c.parentNode))return;return c[D]},set:function(c,D){return c[this._]=D},remove:function(c){return this._ in c&&delete c[this._]},toString:function(){return this._}};var $=F(34),J=F(60),X=F(20),q=F(14),Z=F(13),Y=F(10),V=function(c){return typeof c=="string"?new Y.a([document.querySelectorAll(c)],[document.documentElement]):new Y.a([c==null?[]:c],Y.c)},N=F(19),U=F(33),T=F(35),A=F(61),M=F(22),O=function(c,D){D==null&&(D=Object(M.a)().touches);for(var it=0,Q=D?D.length:0,W=new Array(Q);it180||J<-180?J-360*Math.round(J/360):J):Object(Pt.a)(isNaN(st)?$:st)}function L(st){return(st=+st)==1?R:function($,J){return J-$?function(X,q,Z){return X=Math.pow(X,Z),q=Math.pow(q,Z)-X,Z=1/Z,function(Y){return Math.pow(X+Y*q,Z)}}($,J,st):Object(Pt.a)(isNaN($)?J:$)}}function R(st,$){var J=$-st;return J?d(st,J):Object(Pt.a)(isNaN(st)?$:st)}},function(Oe,xt,F){"use strict";var Pt=F(18);xt.a=function(d){return(d=Object(Pt.a)(Math.abs(d)))?d[1]:NaN}},function(Oe,xt,F){"use strict";var Pt=F(19),d=F(33),g=F(34),L=function(y){return new Array(y.length)};function R(y,j){this.ownerDocument=y.ownerDocument,this.namespaceURI=y.namespaceURI,this._next=null,this._parent=y,this.__data__=j}R.prototype={constructor:R,appendChild:function(y){return this._parent.insertBefore(y,this._next)},insertBefore:function(y,j){return this._parent.insertBefore(y,j)},querySelector:function(y){return this._parent.querySelector(y)},querySelectorAll:function(y){return this._parent.querySelectorAll(y)}};function st(y,j,lt,rt,gt,vt){for(var Ot,At=0,$t=j.length,Xt=vt.length;Atj?1:y>=j?0:NaN}var X=F(20);function q(y){return function(){this.removeAttribute(y)}}function Z(y){return function(){this.removeAttributeNS(y.space,y.local)}}function Y(y,j){return function(){this.setAttribute(y,j)}}function V(y,j){return function(){this.setAttributeNS(y.space,y.local,j)}}function N(y,j){return function(){var lt=j.apply(this,arguments);lt==null?this.removeAttribute(y):this.setAttribute(y,lt)}}function U(y,j){return function(){var lt=j.apply(this,arguments);lt==null?this.removeAttributeNS(y.space,y.local):this.setAttributeNS(y.space,y.local,lt)}}var T=F(35);function A(y){return function(){delete this[y]}}function M(y,j){return function(){this[y]=j}}function O(y,j){return function(){var lt=j.apply(this,arguments);lt==null?delete this[y]:this[y]=lt}}function H(y){return y.trim().split(/^|\s+/)}function z(y){return y.classList||new c(y)}function c(y){this._node=y,this._names=H(y.getAttribute("class")||"")}function D(y,j){for(var lt=z(y),rt=-1,gt=j.length;++rt=0&&(this._names.splice(j,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(y){return this._names.indexOf(y)>=0}};function _(){this.textContent=""}function C(y){return function(){this.textContent=y}}function h(y){return function(){var j=y.apply(this,arguments);this.textContent=j==null?"":j}}function l(){this.innerHTML=""}function u(y){return function(){this.innerHTML=y}}function v(y){return function(){var j=y.apply(this,arguments);this.innerHTML=j==null?"":j}}function I(){this.nextSibling&&this.parentNode.appendChild(this)}function S(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}var b=F(12);function K(){return null}function ct(){var y=this.parentNode;y&&y.removeChild(this)}function et(){var y=this.cloneNode(!1),j=this.parentNode;return j?j.insertBefore(y,this.nextSibling):y}function dt(){var y=this.cloneNode(!0),j=this.parentNode;return j?j.insertBefore(y,this.nextSibling):y}var pt=F(17),bt=F(21);function Mt(y,j,lt){var rt=Object(bt.a)(y),gt=rt.CustomEvent;typeof gt=="function"?gt=new gt(j,lt):(gt=rt.document.createEvent("Event"),lt?(gt.initEvent(j,lt.bubbles,lt.cancelable),gt.detail=lt.detail):gt.initEvent(j,!1,!1)),y.dispatchEvent(gt)}function w(y,j){return function(){return Mt(this,y,j)}}function B(y,j){return function(){return Mt(this,y,j.apply(this,arguments))}}F.d(xt,"c",function(){return tt}),F.d(xt,"a",function(){return nt});var tt=[null];function nt(y,j){this._groups=y,this._parents=j}function x(){return new nt([[document.documentElement]],tt)}nt.prototype=x.prototype={constructor:nt,select:function(y){typeof y!="function"&&(y=Object(Pt.a)(y));for(var j=this._groups,lt=j.length,rt=new Array(lt),gt=0;gt=Ke&&(Ke=Te+1);!(Ce=he[Ke])&&++Ke=0;)(rt=gt[vt])&&(Ot&&4^rt.compareDocumentPosition(Ot)&&Ot.parentNode.insertBefore(rt,Ot),Ot=rt);return this},sort:function(y){function j(wt,Dt){return wt&&Dt?y(wt.__data__,Dt.__data__):!wt-!Dt}y||(y=J);for(var lt=this._groups,rt=lt.length,gt=new Array(rt),vt=0;vt1?this.each((j==null?A:typeof j=="function"?O:M)(y,j)):this.node()[y]},classed:function(y,j){var lt=H(y+"");if(arguments.length<2){for(var rt=z(this.node()),gt=-1,vt=lt.length;++gt0?Object(Pt.a)(function(R){R.setFullYear(Math.floor(R.getFullYear()/L)*L),R.setMonth(0,1),R.setHours(0,0,0,0)},function(R,st){R.setFullYear(R.getFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return g});var Pt=F(0),d=Object(Pt.a)(function(L){L.setUTCMonth(0,1),L.setUTCHours(0,0,0,0)},function(L,R){L.setUTCFullYear(L.getUTCFullYear()+R)},function(L,R){return R.getUTCFullYear()-L.getUTCFullYear()},function(L){return L.getUTCFullYear()});d.every=function(L){return isFinite(L=Math.floor(L))&&L>0?Object(Pt.a)(function(R){R.setUTCFullYear(Math.floor(R.getUTCFullYear()/L)*L),R.setUTCMonth(0,1),R.setUTCHours(0,0,0,0)},function(R,st){R.setUTCFullYear(R.getUTCFullYear()+st*L)}):null},xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";F.d(xt,"c",function(){return d}),F.d(xt,"a",function(){return J});var Pt={},d=null;typeof document!="undefined"&&("onmouseenter"in document.documentElement||(Pt={mouseenter:"mouseover",mouseleave:"mouseout"}));function g(X,q,Z){return X=L(X,q,Z),function(Y){var V=Y.relatedTarget;V&&(V===this||8&V.compareDocumentPosition(this))||X.call(this,Y)}}function L(X,q,Z){return function(Y){var V=d;d=Y;try{X.call(this,this.__data__,q,Z)}finally{d=V}}}function R(X){return X.trim().split(/^|\s+/).map(function(q){var Z="",Y=q.indexOf(".");return Y>=0&&(Z=q.slice(Y+1),q=q.slice(0,Y)),{type:q,name:Z}})}function st(X){return function(){var q=this.__on;if(q){for(var Z,Y=0,V=-1,N=q.length;Y1?L[0]+L.slice(2):L,+Pt.slice(g+1)]}},function(Oe,xt,F){"use strict";function Pt(){}xt.a=function(d){return d==null?Pt:function(){return this.querySelector(d)}}},function(Oe,xt,F){"use strict";var Pt=F(14);xt.a=function(d){var g=d+="",L=g.indexOf(":");return L>=0&&(g=d.slice(0,L))!=="xmlns"&&(d=d.slice(L+1)),Pt.a.hasOwnProperty(g)?{space:Pt.a[g],local:d}:d}},function(Oe,xt,F){"use strict";xt.a=function(Pt){return Pt.ownerDocument&&Pt.ownerDocument.defaultView||Pt.document&&Pt||Pt.defaultView}},function(Oe,xt,F){"use strict";var Pt=F(17);xt.a=function(){for(var d,g=Pt.c;d=g.sourceEvent;)g=d;return g}},,function(Oe,xt,F){"use strict";xt.a=function(Pt){return function(){return Pt}}},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return d}),F.d(xt,"a",function(){return g});var Pt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function d(L){if(!(R=Pt.exec(L)))throw new Error("invalid format: "+L);var R;return new g({fill:R[1],align:R[2],sign:R[3],symbol:R[4],zero:R[5],width:R[6],comma:R[7],precision:R[8]&&R[8].slice(1),trim:R[9],type:R[10]})}function g(L){this.fill=L.fill===void 0?" ":L.fill+"",this.align=L.align===void 0?">":L.align+"",this.sign=L.sign===void 0?"-":L.sign+"",this.symbol=L.symbol===void 0?"":L.symbol+"",this.zero=!!L.zero,this.width=L.width===void 0?void 0:+L.width,this.comma=!!L.comma,this.precision=L.precision===void 0?void 0:+L.precision,this.trim=!!L.trim,this.type=L.type===void 0?"":L.type+""}d.prototype=g.prototype,g.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type}},function(Oe,xt,F){"use strict";function Pt(d,g,L,R,st){var $=d*d,J=$*d;return((1-3*d+3*$-J)*g+(4-6*$+3*J)*L+(1+3*d+3*$-3*J)*R+J*st)/6}F.d(xt,"a",function(){return Pt}),xt.b=function(d){var g=d.length-1;return function(L){var R=L<=0?L=0:L>=1?(L=1,g-1):Math.floor(L*g),st=d[R],$=d[R+1],J=R>0?d[R-1]:2*st-$,X=R0?L>1?Object(Pt.a)(function(R){R.setTime(Math.floor(R/L)*L)},function(R,st){R.setTime(+R+st*L)},function(R,st){return(st-R)/L}):d:null},xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";var Pt=F(10);xt.a=function(d){return typeof d=="string"?new Pt.a([[document.querySelector(d)]],[document.documentElement]):new Pt.a([[d]],Pt.c)}},function(Oe,xt,F){"use strict";function Pt(){return[]}xt.a=function(d){return d==null?Pt:function(){return this.querySelectorAll(d)}}},function(Oe,xt,F){"use strict";xt.a=function(Pt){return function(){return this.matches(Pt)}}},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return R});var Pt=F(21);function d(st){return function(){this.style.removeProperty(st)}}function g(st,$,J){return function(){this.style.setProperty(st,$,J)}}function L(st,$,J){return function(){var X=$.apply(this,arguments);X==null?this.style.removeProperty(st):this.style.setProperty(st,X,J)}}function R(st,$){return st.style.getPropertyValue($)||Object(Pt.a)(st).getComputedStyle(st,null).getPropertyValue($)}xt.a=function(st,$,J){return arguments.length>1?this.each(($==null?d:typeof $=="function"?L:g)(st,$,J==null?"":J)):R(this.node(),st)}},,function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return st}),F.d(xt,"c",function(){return $});var Pt=F(5),d=F(26),g=F(53),L=F(8);function R(J){return function(X){var q,Z,Y=X.length,V=new Array(Y),N=new Array(Y),U=new Array(Y);for(q=0;qN+1?V.slice(0,N+1)+"."+V.slice(N+1):V+new Array(N-V.length+2).join("0")},st={"%":function(q,Z){return(100*q).toFixed(Z)},b:function(q){return Math.round(q).toString(2)},c:function(q){return q+""},d:function(q){return Math.round(q).toString(10)},e:function(q,Z){return q.toExponential(Z)},f:function(q,Z){return q.toFixed(Z)},g:function(q,Z){return q.toPrecision(Z)},o:function(q){return Math.round(q).toString(8)},p:function(q,Z){return R(100*q,Z)},r:R,s:function(q,Z){var Y=Object(L.a)(q,Z);if(!Y)return q+"";var V=Y[0],N=Y[1],U=N-(Pt=3*Math.max(-8,Math.min(8,Math.floor(N/3))))+1,T=V.length;return U===T?V:U>T?V+new Array(U-T+1).join("0"):U>0?V.slice(0,U)+"."+V.slice(U):"0."+new Array(1-U).join("0")+Object(L.a)(q,Math.max(0,Z+U-1))[0]},X:function(q){return Math.round(q).toString(16).toUpperCase()},x:function(q){return Math.round(q).toString(16)}},$=function(q){return q},J=Array.prototype.map,X=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];xt.a=function(q){var Z,Y,V=q.grouping===void 0||q.thousands===void 0?$:(Z=J.call(q.grouping,Number),Y=q.thousands+"",function(c,D){for(var it=c.length,Q=[],W=0,k=Z[0],_=0;it>0&&k>0&&(_+k+1>D&&(k=Math.max(1,D-_)),Q.push(c.substring(it-=k,it+k)),!((_+=k+1)>D));)k=Z[W=(W+1)%Z.length];return Q.reverse().join(Y)}),N=q.currency===void 0?"":q.currency[0]+"",U=q.currency===void 0?"":q.currency[1]+"",T=q.decimal===void 0?".":q.decimal+"",A=q.numerals===void 0?$:function(c){return function(D){return D.replace(/[0-9]/g,function(it){return c[+it]})}}(J.call(q.numerals,String)),M=q.percent===void 0?"%":q.percent+"",O=q.minus===void 0?"-":q.minus+"",H=q.nan===void 0?"NaN":q.nan+"";function z(c){var D=(c=Object(g.b)(c)).fill,it=c.align,Q=c.sign,W=c.symbol,k=c.zero,_=c.width,C=c.comma,h=c.precision,l=c.trim,u=c.type;u==="n"?(C=!0,u="g"):st[u]||(h===void 0&&(h=12),l=!0,u="g"),(k||D==="0"&&it==="=")&&(k=!0,D="0",it="=");var v=W==="$"?N:W==="#"&&/[boxX]/.test(u)?"0"+u.toLowerCase():"",I=W==="$"?U:/[%p]/.test(u)?M:"",S=st[u],b=/[defgprs%]/.test(u);function K(ct){var et,dt,pt,bt=v,Mt=I;if(u==="c")Mt=S(ct)+Mt,ct="";else{var w=(ct=+ct)<0;if(ct=isNaN(ct)?H:S(Math.abs(ct),h),l&&(ct=function(nt){t:for(var x,y=nt.length,j=1,lt=-1;j0&&(lt=0)}return lt>0?nt.slice(0,lt)+nt.slice(x+1):nt}(ct)),w&&+ct==0&&(w=!1),bt=(w?Q==="("?Q:O:Q==="-"||Q==="("?"":Q)+bt,Mt=(u==="s"?X[8+Pt/3]:"")+Mt+(w&&Q==="("?")":""),b){for(et=-1,dt=ct.length;++et(pt=ct.charCodeAt(et))||pt>57){Mt=(pt===46?T+ct.slice(et+1):ct.slice(et))+Mt,ct=ct.slice(0,et);break}}}C&&!k&&(ct=V(ct,1/0));var B=bt.length+ct.length+Mt.length,tt=B<_?new Array(_-B+1).join(D):"";switch(C&&k&&(ct=V(tt+ct,tt.length?_-Mt.length:1/0),tt=""),it){case"<":ct=bt+ct+Mt+tt;break;case"=":ct=bt+tt+ct+Mt;break;case"^":ct=tt.slice(0,B=tt.length>>1)+bt+ct+Mt+tt.slice(B);break;default:ct=tt+bt+ct+Mt}return A(ct)}return h=h===void 0?6:/[gprs]/.test(u)?Math.max(1,Math.min(21,h)):Math.max(0,Math.min(20,h)),K.toString=function(){return c+""},K}return{format:z,formatPrefix:function(c,D){var it=z(((c=Object(g.b)(c)).type="f",c)),Q=3*Math.max(-8,Math.min(8,Math.floor(Object(d.a)(D)/3))),W=Math.pow(10,-Q),k=X[8+Q/3];return function(_){return it(W*_)+k}}}}},,,function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return d}),F.d(xt,"c",function(){return g}),F.d(xt,"a",function(){return R});var Pt,d,g,L=F(40);function R(st){return Pt=Object(L.a)(st),d=Pt.format,g=Pt.formatPrefix,Pt}R({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"})},function(Oe,xt,F){"use strict";F.r(xt);var Pt=F(43);F.d(xt,"formatDefaultLocale",function(){return Pt.a}),F.d(xt,"format",function(){return Pt.b}),F.d(xt,"formatPrefix",function(){return Pt.c});var d=F(40);F.d(xt,"formatLocale",function(){return d.a});var g=F(25);F.d(xt,"formatSpecifier",function(){return g.b}),F.d(xt,"FormatSpecifier",function(){return g.a});var L=F(63);F.d(xt,"precisionFixed",function(){return L.a});var R=F(64);F.d(xt,"precisionPrefix",function(){return R.a});var st=F(65);F.d(xt,"precisionRound",function(){return st.a})},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return d}),F.d(xt,"c",function(){return g}),F.d(xt,"d",function(){return L}),F.d(xt,"e",function(){return R}),F.d(xt,"a",function(){return $});var Pt,d,g,L,R,st=F(54);function $(J){return Pt=Object(st.a)(J),d=Pt.format,g=Pt.parse,L=Pt.utcFormat,R=Pt.utcParse,Pt}$({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})},,function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return g});var Pt=F(0),d=Object(Pt.a)(function(L){L.setDate(1),L.setHours(0,0,0,0)},function(L,R){L.setMonth(L.getMonth()+R)},function(L,R){return R.getMonth()-L.getMonth()+12*(R.getFullYear()-L.getFullYear())},function(L){return L.getMonth()});xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return L});var Pt=F(0),d=F(1),g=Object(Pt.a)(function(R){R.setTime(R-R.getMilliseconds()-R.getSeconds()*d.d-R.getMinutes()*d.c)},function(R,st){R.setTime(+R+st*d.b)},function(R,st){return(st-R)/d.b},function(R){return R.getHours()});xt.a=g;var L=g.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return L});var Pt=F(0),d=F(1),g=Object(Pt.a)(function(R){R.setTime(R-R.getMilliseconds()-R.getSeconds()*d.d)},function(R,st){R.setTime(+R+st*d.c)},function(R,st){return(st-R)/d.c},function(R){return R.getMinutes()});xt.a=g;var L=g.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return g});var Pt=F(0),d=Object(Pt.a)(function(L){L.setUTCDate(1),L.setUTCHours(0,0,0,0)},function(L,R){L.setUTCMonth(L.getUTCMonth()+R)},function(L,R){return R.getUTCMonth()-L.getUTCMonth()+12*(R.getUTCFullYear()-L.getUTCFullYear())},function(L){return L.getUTCMonth()});xt.a=d;var g=d.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return L});var Pt=F(0),d=F(1),g=Object(Pt.a)(function(R){R.setUTCMinutes(0,0,0)},function(R,st){R.setTime(+R+st*d.b)},function(R,st){return(st-R)/d.b},function(R){return R.getUTCHours()});xt.a=g;var L=g.range},function(Oe,xt,F){"use strict";F.d(xt,"b",function(){return L});var Pt=F(0),d=F(1),g=Object(Pt.a)(function(R){R.setUTCSeconds(0,0)},function(R,st){R.setTime(+R+st*d.c)},function(R,st){return(st-R)/d.c},function(R){return R.getUTCMinutes()});xt.a=g;var L=g.range},function(Oe,xt,F){"use strict";var Pt=F(26);xt.a=function(d){var g=d.length;return function(L){var R=Math.floor(((L%=1)<0?++L:L)*g),st=d[(R+g-1)%g],$=d[R%g],J=d[(R+1)%g],X=d[(R+2)%g];return Object(Pt.a)((L-R/g)*g,st,$,J,X)}}},function(Oe,xt,F){"use strict";F.d(xt,"a",function(){return q});var Pt=F(4),d=F(28),g=F(3),L=F(27),R=F(15),st=F(16);function $(Et){if(0<=Et.y&&Et.y<100){var Rt=new Date(-1,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L);return Rt.setFullYear(Et.y),Rt}return new Date(Et.y,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L)}function J(Et){if(0<=Et.y&&Et.y<100){var Rt=new Date(Date.UTC(-1,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L));return Rt.setUTCFullYear(Et.y),Rt}return new Date(Date.UTC(Et.y,Et.m,Et.d,Et.H,Et.M,Et.S,Et.L))}function X(Et,Rt,zt){return{y:Et,m:Rt,d:zt,H:0,M:0,S:0,L:0}}function q(Et){var Rt=Et.dateTime,zt=Et.date,Ft=Et.time,ce=Et.periods,Se=Et.days,xe=Et.shortDays,Ze=Et.months,pn=Et.shortMonths,bn=A(ce),Ln=M(ce),vn=A(Se),Tn=M(Se),Qn=A(xe),dr=M(xe),ye=A(Ze),Fe=M(Ze),qe=A(pn),be=M(pn),je={a:function(ke){return xe[ke.getDay()]},A:function(ke){return Se[ke.getDay()]},b:function(ke){return pn[ke.getMonth()]},B:function(ke){return Ze[ke.getMonth()]},c:null,d:et,e:et,f:w,H:dt,I:pt,j:bt,L:Mt,m:B,M:tt,p:function(ke){return ce[+(ke.getHours()>=12)]},q:function(ke){return 1+~~(ke.getMonth()/3)},Q:Kt,s:Jt,S:nt,u:x,U:y,V:j,w:lt,W:rt,x:null,X:null,y:gt,Y:vt,Z:Ot,"%":Qt},Ue={a:function(ke){return xe[ke.getUTCDay()]},A:function(ke){return Se[ke.getUTCDay()]},b:function(ke){return pn[ke.getUTCMonth()]},B:function(ke){return Ze[ke.getUTCMonth()]},c:null,d:At,e:At,f:Dt,H:$t,I:Xt,j:Ct,L:wt,m:jt,M:re,p:function(ke){return ce[+(ke.getUTCHours()>=12)]},q:function(ke){return 1+~~(ke.getUTCMonth()/3)},Q:Kt,s:Jt,S:le,u:Gt,U:he,V:ve,w:Ce,W:Te,x:null,X:null,y:Ke,Y:rn,Z:un,"%":Qt},Re={a:function(ke,on,_n){var Pe=Qn.exec(on.slice(_n));return Pe?(ke.w=dr[Pe[0].toLowerCase()],_n+Pe[0].length):-1},A:function(ke,on,_n){var Pe=vn.exec(on.slice(_n));return Pe?(ke.w=Tn[Pe[0].toLowerCase()],_n+Pe[0].length):-1},b:function(ke,on,_n){var Pe=qe.exec(on.slice(_n));return Pe?(ke.m=be[Pe[0].toLowerCase()],_n+Pe[0].length):-1},B:function(ke,on,_n){var Pe=ye.exec(on.slice(_n));return Pe?(ke.m=Fe[Pe[0].toLowerCase()],_n+Pe[0].length):-1},c:function(ke,on,_n){return Mn(ke,Rt,on,_n)},d:C,e:C,f:S,H:l,I:l,j:h,L:I,m:_,M:u,p:function(ke,on,_n){var Pe=bn.exec(on.slice(_n));return Pe?(ke.p=Ln[Pe[0].toLowerCase()],_n+Pe[0].length):-1},q:k,Q:K,s:ct,S:v,u:H,U:z,V:c,w:O,W:D,x:function(ke,on,_n){return Mn(ke,zt,on,_n)},X:function(ke,on,_n){return Mn(ke,Ft,on,_n)},y:Q,Y:it,Z:W,"%":b};function Ie(ke,on){return function(_n){var Pe,wn,an,gn=[],Sn=-1,xn=0,hr=ke.length;for(_n instanceof Date||(_n=new Date(+_n));++Sn53)return null;"w"in an||(an.w=1),"Z"in an?(wn=(Pe=J(X(an.y,0,1))).getUTCDay(),Pe=wn>4||wn===0?Pt.c.ceil(Pe):Object(Pt.c)(Pe),Pe=d.a.offset(Pe,7*(an.V-1)),an.y=Pe.getUTCFullYear(),an.m=Pe.getUTCMonth(),an.d=Pe.getUTCDate()+(an.w+6)%7):(wn=(Pe=$(X(an.y,0,1))).getDay(),Pe=wn>4||wn===0?g.c.ceil(Pe):Object(g.c)(Pe),Pe=L.b.offset(Pe,7*(an.V-1)),an.y=Pe.getFullYear(),an.m=Pe.getMonth(),an.d=Pe.getDate()+(an.w+6)%7)}else("W"in an||"U"in an)&&("w"in an||(an.w="u"in an?an.u%7:"W"in an?1:0),wn="Z"in an?J(X(an.y,0,1)).getUTCDay():$(X(an.y,0,1)).getDay(),an.m=0,an.d="W"in an?(an.w+6)%7+7*an.W-(wn+5)%7:an.w+7*an.U-(wn+6)%7);return"Z"in an?(an.H+=an.Z/100|0,an.M+=an.Z%100,J(an)):$(an)}}function Mn(ke,on,_n,Pe){for(var wn,an,gn=0,Sn=on.length,xn=_n.length;gn=xn)return-1;if((wn=on.charCodeAt(gn++))===37){if(wn=on.charAt(gn++),!(an=Re[wn in Z?on.charAt(gn++):wn])||(Pe=an(ke,_n,Pe))<0)return-1}else if(wn!=_n.charCodeAt(Pe++))return-1}return Pe}return je.x=Ie(zt,je),je.X=Ie(Ft,je),je.c=Ie(Rt,je),Ue.x=Ie(zt,Ue),Ue.X=Ie(Ft,Ue),Ue.c=Ie(Rt,Ue),{format:function(ke){var on=Ie(ke+="",je);return on.toString=function(){return ke},on},parse:function(ke){var on=tn(ke+="",!1);return on.toString=function(){return ke},on},utcFormat:function(ke){var on=Ie(ke+="",Ue);return on.toString=function(){return ke},on},utcParse:function(ke){var on=tn(ke+="",!0);return on.toString=function(){return ke},on}}}var Z={"-":"",_:" ",0:"0"},Y=/^\s*\d+/,V=/^%/,N=/[\\^$*+?|[\]().{}]/g;function U(Et,Rt,zt){var Ft=Et<0?"-":"",ce=(Ft?-Et:Et)+"",Se=ce.length;return Ft+(Se68?1900:2e3),zt+Ft[0].length):-1}function W(Et,Rt,zt){var Ft=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Rt.slice(zt,zt+6));return Ft?(Et.Z=Ft[1]?0:-(Ft[2]+(Ft[3]||"00")),zt+Ft[0].length):-1}function k(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+1));return Ft?(Et.q=3*Ft[0]-3,zt+Ft[0].length):-1}function _(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.m=Ft[0]-1,zt+Ft[0].length):-1}function C(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.d=+Ft[0],zt+Ft[0].length):-1}function h(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.m=0,Et.d=+Ft[0],zt+Ft[0].length):-1}function l(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.H=+Ft[0],zt+Ft[0].length):-1}function u(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.M=+Ft[0],zt+Ft[0].length):-1}function v(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+2));return Ft?(Et.S=+Ft[0],zt+Ft[0].length):-1}function I(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+3));return Ft?(Et.L=+Ft[0],zt+Ft[0].length):-1}function S(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt,zt+6));return Ft?(Et.L=Math.floor(Ft[0]/1e3),zt+Ft[0].length):-1}function b(Et,Rt,zt){var Ft=V.exec(Rt.slice(zt,zt+1));return Ft?zt+Ft[0].length:-1}function K(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.Q=+Ft[0],zt+Ft[0].length):-1}function ct(Et,Rt,zt){var Ft=Y.exec(Rt.slice(zt));return Ft?(Et.s=+Ft[0],zt+Ft[0].length):-1}function et(Et,Rt){return U(Et.getDate(),Rt,2)}function dt(Et,Rt){return U(Et.getHours(),Rt,2)}function pt(Et,Rt){return U(Et.getHours()%12||12,Rt,2)}function bt(Et,Rt){return U(1+L.b.count(Object(R.a)(Et),Et),Rt,3)}function Mt(Et,Rt){return U(Et.getMilliseconds(),Rt,3)}function w(Et,Rt){return Mt(Et,Rt)+"000"}function B(Et,Rt){return U(Et.getMonth()+1,Rt,2)}function tt(Et,Rt){return U(Et.getMinutes(),Rt,2)}function nt(Et,Rt){return U(Et.getSeconds(),Rt,2)}function x(Et){var Rt=Et.getDay();return Rt===0?7:Rt}function y(Et,Rt){return U(g.g.count(Object(R.a)(Et)-1,Et),Rt,2)}function j(Et,Rt){var zt=Et.getDay();return Et=zt>=4||zt===0?Object(g.i)(Et):g.i.ceil(Et),U(g.i.count(Object(R.a)(Et),Et)+(Object(R.a)(Et).getDay()===4),Rt,2)}function lt(Et){return Et.getDay()}function rt(Et,Rt){return U(g.c.count(Object(R.a)(Et)-1,Et),Rt,2)}function gt(Et,Rt){return U(Et.getFullYear()%100,Rt,2)}function vt(Et,Rt){return U(Et.getFullYear()%1e4,Rt,4)}function Ot(Et){var Rt=Et.getTimezoneOffset();return(Rt>0?"-":(Rt*=-1,"+"))+U(Rt/60|0,"0",2)+U(Rt%60,"0",2)}function At(Et,Rt){return U(Et.getUTCDate(),Rt,2)}function $t(Et,Rt){return U(Et.getUTCHours(),Rt,2)}function Xt(Et,Rt){return U(Et.getUTCHours()%12||12,Rt,2)}function Ct(Et,Rt){return U(1+d.a.count(Object(st.a)(Et),Et),Rt,3)}function wt(Et,Rt){return U(Et.getUTCMilliseconds(),Rt,3)}function Dt(Et,Rt){return wt(Et,Rt)+"000"}function jt(Et,Rt){return U(Et.getUTCMonth()+1,Rt,2)}function re(Et,Rt){return U(Et.getUTCMinutes(),Rt,2)}function le(Et,Rt){return U(Et.getUTCSeconds(),Rt,2)}function Gt(Et){var Rt=Et.getUTCDay();return Rt===0?7:Rt}function he(Et,Rt){return U(Pt.g.count(Object(st.a)(Et)-1,Et),Rt,2)}function ve(Et,Rt){var zt=Et.getUTCDay();return Et=zt>=4||zt===0?Object(Pt.i)(Et):Pt.i.ceil(Et),U(Pt.i.count(Object(st.a)(Et),Et)+(Object(st.a)(Et).getUTCDay()===4),Rt,2)}function Ce(Et){return Et.getUTCDay()}function Te(Et,Rt){return U(Pt.c.count(Object(st.a)(Et)-1,Et),Rt,2)}function Ke(Et,Rt){return U(Et.getUTCFullYear()%100,Rt,2)}function rn(Et,Rt){return U(Et.getUTCFullYear()%1e4,Rt,4)}function un(){return"+0000"}function Qt(){return"%"}function Kt(Et){return+Et}function Jt(Et){return Math.floor(+Et/1e3)}},function(Oe,xt,F){"use strict";var Pt=F(6),d=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,g=new RegExp(d.source,"g");xt.a=function(L,R){var st,$,J,X=d.lastIndex=g.lastIndex=0,q=-1,Z=[],Y=[];for(L+="",R+="";(st=d.exec(L))&&($=g.exec(R));)(J=$.index)>X&&(J=R.slice(X,J),Z[q]?Z[q]+=J:Z[++q]=J),(st=st[0])===($=$[0])?Z[q]?Z[q]+=$:Z[++q]=$:(Z[++q]=null,Y.push({i:q,x:Object(Pt.a)(st,$)})),X=g.lastIndex;return X=0&&(q=X.slice(Z+1),X=X.slice(0,Z)),X&&!J.hasOwnProperty(X))throw new Error("unknown type: "+X);return{type:X,name:q}})}function R($,J){for(var X,q=0,Z=$.length;q0)for(var X,q,Z=new Array(X),Y=0;Y1e-6)if(Math.abs(He*ge-Ae*Qe)>1e-6&&Wt){var kn=Vt-se,Bn=_t-pe,Yn=ge*ge+Ae*Ae,fr=kn*kn+Bn*Bn,or=Math.sqrt(Yn),Zn=Math.sqrt(sn),ur=Wt*Math.tan((Pt-Math.acos((Yn+sn-fr)/(2*or*Zn)))/2),Tr=ur/Zn,Sr=ur/or;Math.abs(Tr-1)>1e-6&&(this._+="L"+(ht+Tr*Qe)+","+(Nt+Tr*He)),this._+="A"+Wt+","+Wt+",0,0,"+ +(He*kn>Qe*Bn)+","+(this._x1=ht+Sr*ge)+","+(this._y1=Nt+Sr*Ae)}else this._+="L"+(this._x1=ht)+","+(this._y1=Nt)},arc:function(ht,Nt,Vt,_t,Wt,se){ht=+ht,Nt=+Nt,se=!!se;var pe=(Vt=+Vt)*Math.cos(_t),ge=Vt*Math.sin(_t),Ae=ht+pe,Qe=Nt+ge,He=1^se,sn=se?_t-Wt:Wt-_t;if(Vt<0)throw new Error("negative radius: "+Vt);this._x1===null?this._+="M"+Ae+","+Qe:(Math.abs(this._x1-Ae)>1e-6||Math.abs(this._y1-Qe)>1e-6)&&(this._+="L"+Ae+","+Qe),Vt&&(sn<0&&(sn=sn%d+d),sn>g?this._+="A"+Vt+","+Vt+",0,1,"+He+","+(ht-pe)+","+(Nt-ge)+"A"+Vt+","+Vt+",0,1,"+He+","+(this._x1=Ae)+","+(this._y1=Qe):sn>1e-6&&(this._+="A"+Vt+","+Vt+",0,"+ +(sn>=Pt)+","+He+","+(this._x1=ht+Vt*Math.cos(Wt))+","+(this._y1=Nt+Vt*Math.sin(Wt))))},rect:function(ht,Nt,Vt,_t){this._+="M"+(this._x0=this._x1=+ht)+","+(this._y0=this._y1=+Nt)+"h"+ +Vt+"v"+ +_t+"h"+-Vt+"Z"},toString:function(){return this._}};var st=R,$=function(ht){return function(){return ht}},J=Math.abs,X=Math.atan2,q=Math.cos,Z=Math.max,Y=Math.min,V=Math.sin,N=Math.sqrt,U=Math.PI,T=U/2,A=2*U;function M(ht){return ht>1?0:ht<-1?U:Math.acos(ht)}function O(ht){return ht>=1?T:ht<=-1?-T:Math.asin(ht)}function H(ht){return ht.innerRadius}function z(ht){return ht.outerRadius}function c(ht){return ht.startAngle}function D(ht){return ht.endAngle}function it(ht){return ht&&ht.padAngle}function Q(ht,Nt,Vt,_t,Wt,se,pe,ge){var Ae=Vt-ht,Qe=_t-Nt,He=pe-Wt,sn=ge-se,kn=sn*Ae-He*Qe;if(!(kn*kn<1e-12))return[ht+(kn=(He*(Nt-se)-sn*(ht-Wt))/kn)*Ae,Nt+kn*Qe]}function W(ht,Nt,Vt,_t,Wt,se,pe){var ge=ht-Vt,Ae=Nt-_t,Qe=(pe?se:-se)/N(ge*ge+Ae*Ae),He=Qe*Ae,sn=-Qe*ge,kn=ht+He,Bn=Nt+sn,Yn=Vt+He,fr=_t+sn,or=(kn+Yn)/2,Zn=(Bn+fr)/2,ur=Yn-kn,Tr=fr-Bn,Sr=ur*ur+Tr*Tr,Br=Wt-se,Kr=kn*fr-Yn*Bn,ui=(Tr<0?-1:1)*N(Z(0,Br*Br*Sr-Kr*Kr)),Ri=(Kr*Tr-ur*ui)/Sr,Ai=(-Kr*ur-Tr*ui)/Sr,yi=(Kr*Tr+ur*ui)/Sr,Oi=(-Kr*ur+Tr*ui)/Sr,Li=Ri-or,Pi=Ai-Zn,Vi=yi-or,ro=Oi-Zn;return Li*Li+Pi*Pi>Vi*Vi+ro*ro&&(Ri=yi,Ai=Oi),{cx:Ri,cy:Ai,x01:-He,y01:-sn,x11:Ri*(Wt/Br-1),y11:Ai*(Wt/Br-1)}}var k=function(){var ht=H,Nt=z,Vt=$(0),_t=null,Wt=c,se=D,pe=it,ge=null;function Ae(){var Qe,He,sn=+ht.apply(this,arguments),kn=+Nt.apply(this,arguments),Bn=Wt.apply(this,arguments)-T,Yn=se.apply(this,arguments)-T,fr=J(Yn-Bn),or=Yn>Bn;if(ge||(ge=Qe=st()),kn1e-12)if(fr>A-1e-12)ge.moveTo(kn*q(Bn),kn*V(Bn)),ge.arc(0,0,kn,Bn,Yn,!or),sn>1e-12&&(ge.moveTo(sn*q(Yn),sn*V(Yn)),ge.arc(0,0,sn,Yn,Bn,or));else{var Zn,ur,Tr=Bn,Sr=Yn,Br=Bn,Kr=Yn,ui=fr,Ri=fr,Ai=pe.apply(this,arguments)/2,yi=Ai>1e-12&&(_t?+_t.apply(this,arguments):N(sn*sn+kn*kn)),Oi=Y(J(kn-sn)/2,+Vt.apply(this,arguments)),Li=Oi,Pi=Oi;if(yi>1e-12){var Vi=O(yi/sn*V(Ai)),ro=O(yi/kn*V(Ai));(ui-=2*Vi)>1e-12?(Br+=Vi*=or?1:-1,Kr-=Vi):(ui=0,Br=Kr=(Bn+Yn)/2),(Ri-=2*ro)>1e-12?(Tr+=ro*=or?1:-1,Sr-=ro):(Ri=0,Tr=Sr=(Bn+Yn)/2)}var to=kn*q(Tr),ko=kn*V(Tr),Ro=sn*q(Kr),go=sn*V(Kr);if(Oi>1e-12){var io,_o=kn*q(Sr),$o=kn*V(Sr),so=sn*q(Br),ki=sn*V(Br);if(fr1e-12?Pi>1e-12?(Zn=W(so,ki,to,ko,kn,Pi,or),ur=W(_o,$o,Ro,go,kn,Pi,or),ge.moveTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Pi1e-12&&ui>1e-12?Li>1e-12?(Zn=W(Ro,go,_o,$o,sn,-Li,or),ur=W(to,ko,so,ki,sn,-Li,or),ge.lineTo(Zn.cx+Zn.x01,Zn.cy+Zn.y01),Li=kn;--Bn)ge.point(ur[Bn],Tr[Bn]);ge.lineEnd(),ge.areaEnd()}Zn&&(ur[sn]=+ht(Yn,sn,He),Tr[sn]=+Vt(Yn,sn,He),ge.point(Nt?+Nt(Yn,sn,He):ur[sn],_t?+_t(Yn,sn,He):Tr[sn]))}if(fr)return ge=null,fr+""||null}function Qe(){return u().defined(Wt).curve(pe).context(se)}return Ae.x=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Nt=null,Ae):ht},Ae.x0=function(He){return arguments.length?(ht=typeof He=="function"?He:$(+He),Ae):ht},Ae.x1=function(He){return arguments.length?(Nt=He==null?null:typeof He=="function"?He:$(+He),Ae):Nt},Ae.y=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),_t=null,Ae):Vt},Ae.y0=function(He){return arguments.length?(Vt=typeof He=="function"?He:$(+He),Ae):Vt},Ae.y1=function(He){return arguments.length?(_t=He==null?null:typeof He=="function"?He:$(+He),Ae):_t},Ae.lineX0=Ae.lineY0=function(){return Qe().x(ht).y(Vt)},Ae.lineY1=function(){return Qe().x(ht).y(_t)},Ae.lineX1=function(){return Qe().x(Nt).y(Vt)},Ae.defined=function(He){return arguments.length?(Wt=typeof He=="function"?He:$(!!He),Ae):Wt},Ae.curve=function(He){return arguments.length?(pe=He,se!=null&&(ge=pe(se)),Ae):pe},Ae.context=function(He){return arguments.length?(He==null?se=ge=null:ge=pe(se=He),Ae):se},Ae},I=function(ht,Nt){return Ntht?1:Nt>=ht?0:NaN},S=function(ht){return ht},b=function(){var ht=S,Nt=I,Vt=null,_t=$(0),Wt=$(A),se=$(0);function pe(ge){var Ae,Qe,He,sn,kn,Bn=ge.length,Yn=0,fr=new Array(Bn),or=new Array(Bn),Zn=+_t.apply(this,arguments),ur=Math.min(A,Math.max(-A,Wt.apply(this,arguments)-Zn)),Tr=Math.min(Math.abs(ur)/Bn,se.apply(this,arguments)),Sr=Tr*(ur<0?-1:1);for(Ae=0;Ae0&&(Yn+=kn);for(Nt!=null?fr.sort(function(Br,Kr){return Nt(or[Br],or[Kr])}):Vt!=null&&fr.sort(function(Br,Kr){return Vt(ge[Br],ge[Kr])}),Ae=0,He=Yn?(ur-Bn*Sr)/Yn:0;Ae0?kn*He:0)+Sr,or[Qe]={data:ge[Qe],index:Ae,value:kn,startAngle:Zn,endAngle:sn,padAngle:Tr};return or}return pe.value=function(ge){return arguments.length?(ht=typeof ge=="function"?ge:$(+ge),pe):ht},pe.sortValues=function(ge){return arguments.length?(Nt=ge,Vt=null,pe):Nt},pe.sort=function(ge){return arguments.length?(Vt=ge,Nt=null,pe):Vt},pe.startAngle=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.endAngle=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.padAngle=function(ge){return arguments.length?(se=typeof ge=="function"?ge:$(+ge),pe):se},pe},K=et(C);function ct(ht){this._curve=ht}function et(ht){function Nt(Vt){return new ct(ht(Vt))}return Nt._curve=ht,Nt}function dt(ht){var Nt=ht.curve;return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht.curve=function(Vt){return arguments.length?Nt(et(Vt)):Nt()._curve},ht}ct.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(ht,Nt){this._curve.point(Nt*Math.sin(ht),Nt*-Math.cos(ht))}};var pt=function(){return dt(u().curve(K))},bt=function(){var ht=v().curve(K),Nt=ht.curve,Vt=ht.lineX0,_t=ht.lineX1,Wt=ht.lineY0,se=ht.lineY1;return ht.angle=ht.x,delete ht.x,ht.startAngle=ht.x0,delete ht.x0,ht.endAngle=ht.x1,delete ht.x1,ht.radius=ht.y,delete ht.y,ht.innerRadius=ht.y0,delete ht.y0,ht.outerRadius=ht.y1,delete ht.y1,ht.lineStartAngle=function(){return dt(Vt())},delete ht.lineX0,ht.lineEndAngle=function(){return dt(_t())},delete ht.lineX1,ht.lineInnerRadius=function(){return dt(Wt())},delete ht.lineY0,ht.lineOuterRadius=function(){return dt(se())},delete ht.lineY1,ht.curve=function(pe){return arguments.length?Nt(et(pe)):Nt()._curve},ht},Mt=function(ht,Nt){return[(Nt=+Nt)*Math.cos(ht-=Math.PI/2),Nt*Math.sin(ht)]},w=Array.prototype.slice;function B(ht){return ht.source}function tt(ht){return ht.target}function nt(ht){var Nt=B,Vt=tt,_t=h,Wt=l,se=null;function pe(){var ge,Ae=w.call(arguments),Qe=Nt.apply(this,Ae),He=Vt.apply(this,Ae);if(se||(se=ge=st()),ht(se,+_t.apply(this,(Ae[0]=Qe,Ae)),+Wt.apply(this,Ae),+_t.apply(this,(Ae[0]=He,Ae)),+Wt.apply(this,Ae)),ge)return se=null,ge+""||null}return pe.source=function(ge){return arguments.length?(Nt=ge,pe):Nt},pe.target=function(ge){return arguments.length?(Vt=ge,pe):Vt},pe.x=function(ge){return arguments.length?(_t=typeof ge=="function"?ge:$(+ge),pe):_t},pe.y=function(ge){return arguments.length?(Wt=typeof ge=="function"?ge:$(+ge),pe):Wt},pe.context=function(ge){return arguments.length?(se=ge==null?null:ge,pe):se},pe}function x(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt=(Nt+_t)/2,Vt,Nt,Wt,_t,Wt)}function y(ht,Nt,Vt,_t,Wt){ht.moveTo(Nt,Vt),ht.bezierCurveTo(Nt,Vt=(Vt+Wt)/2,_t,Vt,_t,Wt)}function j(ht,Nt,Vt,_t,Wt){var se=Mt(Nt,Vt),pe=Mt(Nt,Vt=(Vt+Wt)/2),ge=Mt(_t,Vt),Ae=Mt(_t,Wt);ht.moveTo(se[0],se[1]),ht.bezierCurveTo(pe[0],pe[1],ge[0],ge[1],Ae[0],Ae[1])}function lt(){return nt(x)}function rt(){return nt(y)}function gt(){var ht=nt(j);return ht.angle=ht.x,delete ht.x,ht.radius=ht.y,delete ht.y,ht}var vt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/U);ht.moveTo(Vt,0),ht.arc(0,0,Vt,0,A)}},Ot={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/5)/2;ht.moveTo(-3*Vt,-Vt),ht.lineTo(-Vt,-Vt),ht.lineTo(-Vt,-3*Vt),ht.lineTo(Vt,-3*Vt),ht.lineTo(Vt,-Vt),ht.lineTo(3*Vt,-Vt),ht.lineTo(3*Vt,Vt),ht.lineTo(Vt,Vt),ht.lineTo(Vt,3*Vt),ht.lineTo(-Vt,3*Vt),ht.lineTo(-Vt,Vt),ht.lineTo(-3*Vt,Vt),ht.closePath()}},At=Math.sqrt(1/3),$t=2*At,Xt={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/$t),_t=Vt*At;ht.moveTo(0,-Vt),ht.lineTo(_t,0),ht.lineTo(0,Vt),ht.lineTo(-_t,0),ht.closePath()}},Ct=Math.sin(U/10)/Math.sin(7*U/10),wt=Math.sin(A/10)*Ct,Dt=-Math.cos(A/10)*Ct,jt={draw:function(ht,Nt){var Vt=Math.sqrt(.8908130915292852*Nt),_t=wt*Vt,Wt=Dt*Vt;ht.moveTo(0,-Vt),ht.lineTo(_t,Wt);for(var se=1;se<5;++se){var pe=A*se/5,ge=Math.cos(pe),Ae=Math.sin(pe);ht.lineTo(Ae*Vt,-ge*Vt),ht.lineTo(ge*_t-Ae*Wt,Ae*_t+ge*Wt)}ht.closePath()}},re={draw:function(ht,Nt){var Vt=Math.sqrt(Nt),_t=-Vt/2;ht.rect(_t,_t,Vt,Vt)}},le=Math.sqrt(3),Gt={draw:function(ht,Nt){var Vt=-Math.sqrt(Nt/(3*le));ht.moveTo(0,2*Vt),ht.lineTo(-le*Vt,-Vt),ht.lineTo(le*Vt,-Vt),ht.closePath()}},he=Math.sqrt(3)/2,ve=1/Math.sqrt(12),Ce=3*(ve/2+1),Te={draw:function(ht,Nt){var Vt=Math.sqrt(Nt/Ce),_t=Vt/2,Wt=Vt*ve,se=_t,pe=Vt*ve+Vt,ge=-se,Ae=pe;ht.moveTo(_t,Wt),ht.lineTo(se,pe),ht.lineTo(ge,Ae),ht.lineTo(-.5*_t-he*Wt,he*_t+-.5*Wt),ht.lineTo(-.5*se-he*pe,he*se+-.5*pe),ht.lineTo(-.5*ge-he*Ae,he*ge+-.5*Ae),ht.lineTo(-.5*_t+he*Wt,-.5*Wt-he*_t),ht.lineTo(-.5*se+he*pe,-.5*pe-he*se),ht.lineTo(-.5*ge+he*Ae,-.5*Ae-he*ge),ht.closePath()}},Ke=[vt,Ot,Xt,re,jt,Gt,Te],rn=function(){var ht=$(vt),Nt=$(64),Vt=null;function _t(){var Wt;if(Vt||(Vt=Wt=st()),ht.apply(this,arguments).draw(Vt,+Nt.apply(this,arguments)),Wt)return Vt=null,Wt+""||null}return _t.type=function(Wt){return arguments.length?(ht=typeof Wt=="function"?Wt:$(Wt),_t):ht},_t.size=function(Wt){return arguments.length?(Nt=typeof Wt=="function"?Wt:$(+Wt),_t):Nt},_t.context=function(Wt){return arguments.length?(Vt=Wt==null?null:Wt,_t):Vt},_t},un=function(){};function Qt(ht,Nt,Vt){ht._context.bezierCurveTo((2*ht._x0+ht._x1)/3,(2*ht._y0+ht._y1)/3,(ht._x0+2*ht._x1)/3,(ht._y0+2*ht._y1)/3,(ht._x0+4*ht._x1+Nt)/6,(ht._y0+4*ht._y1+Vt)/6)}function Kt(ht){this._context=ht}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Qt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Jt=function(ht){return new Kt(ht)};function Et(ht){this._context=ht}Et.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x2=ht,this._y2=Nt;break;case 1:this._point=2,this._x3=ht,this._y3=Nt;break;case 2:this._point=3,this._x4=ht,this._y4=Nt,this._context.moveTo((this._x0+4*this._x1+ht)/6,(this._y0+4*this._y1+Nt)/6);break;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Rt=function(ht){return new Et(ht)};function zt(ht){this._context=ht}zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Vt=(this._x0+4*this._x1+ht)/6,_t=(this._y0+4*this._y1+Nt)/6;this._line?this._context.lineTo(Vt,_t):this._context.moveTo(Vt,_t);break;case 3:this._point=4;default:Qt(this,ht,Nt)}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt}};var Ft=function(ht){return new zt(ht)};function ce(ht,Nt){this._basis=new Kt(ht),this._beta=Nt}ce.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length-1;if(Vt>0)for(var _t,Wt=ht[0],se=Nt[0],pe=ht[Vt]-Wt,ge=Nt[Vt]-se,Ae=-1;++Ae<=Vt;)_t=Ae/Vt,this._basis.point(this._beta*ht[Ae]+(1-this._beta)*(Wt+_t*pe),this._beta*Nt[Ae]+(1-this._beta)*(se+_t*ge));this._x=this._y=null,this._basis.lineEnd()},point:function(ht,Nt){this._x.push(+ht),this._y.push(+Nt)}};var Se=function ht(Nt){function Vt(_t){return Nt===1?new Kt(_t):new ce(_t,Nt)}return Vt.beta=function(_t){return ht(+_t)},Vt}(.85);function xe(ht,Nt,Vt){ht._context.bezierCurveTo(ht._x1+ht._k*(ht._x2-ht._x0),ht._y1+ht._k*(ht._y2-ht._y0),ht._x2+ht._k*(ht._x1-Nt),ht._y2+ht._k*(ht._y1-Vt),ht._x2,ht._y2)}function Ze(ht,Nt){this._context=ht,this._k=(1-Nt)/6}Ze.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:xe(this,this._x1,this._y1)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2,this._x1=ht,this._y1=Nt;break;case 2:this._point=3;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var pn=function ht(Nt){function Vt(_t){return new Ze(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function bn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}bn.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Ln=function ht(Nt){function Vt(_t){return new bn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function vn(ht,Nt){this._context=ht,this._k=(1-Nt)/6}vn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:xe(this,ht,Nt)}this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var Tn=function ht(Nt){function Vt(_t){return new vn(_t,Nt)}return Vt.tension=function(_t){return ht(+_t)},Vt}(0);function Qn(ht,Nt,Vt){var _t=ht._x1,Wt=ht._y1,se=ht._x2,pe=ht._y2;if(ht._l01_a>1e-12){var ge=2*ht._l01_2a+3*ht._l01_a*ht._l12_a+ht._l12_2a,Ae=3*ht._l01_a*(ht._l01_a+ht._l12_a);_t=(_t*ge-ht._x0*ht._l12_2a+ht._x2*ht._l01_2a)/Ae,Wt=(Wt*ge-ht._y0*ht._l12_2a+ht._y2*ht._l01_2a)/Ae}if(ht._l23_a>1e-12){var Qe=2*ht._l23_2a+3*ht._l23_a*ht._l12_a+ht._l12_2a,He=3*ht._l23_a*(ht._l23_a+ht._l12_a);se=(se*Qe+ht._x1*ht._l23_2a-Nt*ht._l12_2a)/He,pe=(pe*Qe+ht._y1*ht._l23_2a-Vt*ht._l12_2a)/He}ht._context.bezierCurveTo(_t,Wt,se,pe,ht._x2,ht._y2)}function dr(ht,Nt){this._context=ht,this._alpha=Nt}dr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var ye=function ht(Nt){function Vt(_t){return Nt?new dr(_t,Nt):new Ze(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Fe(ht,Nt){this._context=ht,this._alpha=Nt}Fe.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=ht,this._y3=Nt;break;case 1:this._point=2,this._context.moveTo(this._x4=ht,this._y4=Nt);break;case 2:this._point=3,this._x5=ht,this._y5=Nt;break;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var qe=function ht(Nt){function Vt(_t){return Nt?new Fe(_t,Nt):new bn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function be(ht,Nt){this._context=ht,this._alpha=Nt}be.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){if(ht=+ht,Nt=+Nt,this._point){var Vt=this._x2-ht,_t=this._y2-Nt;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Vt*Vt+_t*_t,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Qn(this,ht,Nt)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=ht,this._y0=this._y1,this._y1=this._y2,this._y2=Nt}};var je=function ht(Nt){function Vt(_t){return Nt?new be(_t,Nt):new vn(_t,0)}return Vt.alpha=function(_t){return ht(+_t)},Vt}(.5);function Ue(ht){this._context=ht}Ue.prototype={areaStart:un,areaEnd:un,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(ht,Nt){ht=+ht,Nt=+Nt,this._point?this._context.lineTo(ht,Nt):(this._point=1,this._context.moveTo(ht,Nt))}};var Re=function(ht){return new Ue(ht)};function Ie(ht){return ht<0?-1:1}function tn(ht,Nt,Vt){var _t=ht._x1-ht._x0,Wt=Nt-ht._x1,se=(ht._y1-ht._y0)/(_t||Wt<0&&-0),pe=(Vt-ht._y1)/(Wt||_t<0&&-0),ge=(se*Wt+pe*_t)/(_t+Wt);return(Ie(se)+Ie(pe))*Math.min(Math.abs(se),Math.abs(pe),.5*Math.abs(ge))||0}function Mn(ht,Nt){var Vt=ht._x1-ht._x0;return Vt?(3*(ht._y1-ht._y0)/Vt-Nt)/2:Nt}function ke(ht,Nt,Vt){var _t=ht._x0,Wt=ht._y0,se=ht._x1,pe=ht._y1,ge=(se-_t)/3;ht._context.bezierCurveTo(_t+ge,Wt+ge*Nt,se-ge,pe-ge*Vt,se,pe)}function on(ht){this._context=ht}function _n(ht){this._context=new Pe(ht)}function Pe(ht){this._context=ht}function wn(ht){return new on(ht)}function an(ht){return new _n(ht)}function gn(ht){this._context=ht}function Sn(ht){var Nt,Vt,_t=ht.length-1,Wt=new Array(_t),se=new Array(_t),pe=new Array(_t);for(Wt[0]=0,se[0]=2,pe[0]=ht[0]+2*ht[1],Nt=1;Nt<_t-1;++Nt)Wt[Nt]=1,se[Nt]=4,pe[Nt]=4*ht[Nt]+2*ht[Nt+1];for(Wt[_t-1]=2,se[_t-1]=7,pe[_t-1]=8*ht[_t-1]+ht[_t],Nt=1;Nt<_t;++Nt)Vt=Wt[Nt]/se[Nt-1],se[Nt]-=Vt,pe[Nt]-=Vt*pe[Nt-1];for(Wt[_t-1]=pe[_t-1]/se[_t-1],Nt=_t-2;Nt>=0;--Nt)Wt[Nt]=(pe[Nt]-Wt[Nt+1])/se[Nt];for(se[_t-1]=(ht[_t]+Wt[_t-1])/2,Nt=0;Nt<_t-1;++Nt)se[Nt]=2*ht[Nt+1]-Wt[Nt+1];return[Wt,se]}on.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:ke(this,this._t0,Mn(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(ht,Nt){var Vt=NaN;if(Nt=+Nt,(ht=+ht)!==this._x1||Nt!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;break;case 2:this._point=3,ke(this,Mn(this,Vt=tn(this,ht,Nt)),Vt);break;default:ke(this,this._t0,Vt=tn(this,ht,Nt))}this._x0=this._x1,this._x1=ht,this._y0=this._y1,this._y1=Nt,this._t0=Vt}}},(_n.prototype=Object.create(on.prototype)).point=function(ht,Nt){on.prototype.point.call(this,Nt,ht)},Pe.prototype={moveTo:function(ht,Nt){this._context.moveTo(Nt,ht)},closePath:function(){this._context.closePath()},lineTo:function(ht,Nt){this._context.lineTo(Nt,ht)},bezierCurveTo:function(ht,Nt,Vt,_t,Wt,se){this._context.bezierCurveTo(Nt,ht,_t,Vt,se,Wt)}},gn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var ht=this._x,Nt=this._y,Vt=ht.length;if(Vt)if(this._line?this._context.lineTo(ht[0],Nt[0]):this._context.moveTo(ht[0],Nt[0]),Vt===2)this._context.lineTo(ht[1],Nt[1]);else for(var _t=Sn(ht),Wt=Sn(Nt),se=0,pe=1;pe=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(ht,Nt){switch(ht=+ht,Nt=+Nt,this._point){case 0:this._point=1,this._line?this._context.lineTo(ht,Nt):this._context.moveTo(ht,Nt);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,Nt),this._context.lineTo(ht,Nt);else{var Vt=this._x*(1-this._t)+ht*this._t;this._context.lineTo(Vt,this._y),this._context.lineTo(Vt,Nt)}}this._x=ht,this._y=Nt}};var nr=function(ht){return new hr(ht,.5)};function pr(ht){return new hr(ht,0)}function vr(ht){return new hr(ht,1)}var rr=function(ht,Nt){if((Wt=ht.length)>1)for(var Vt,_t,Wt,se=1,pe=ht[Nt[0]],ge=pe.length;se=0;)Vt[Nt]=Nt;return Vt};function jr(ht,Nt){return ht[Nt]}var lr=function(){var ht=$([]),Nt=Rr,Vt=rr,_t=jr;function Wt(se){var pe,ge,Ae=ht.apply(this,arguments),Qe=se.length,He=Ae.length,sn=new Array(He);for(pe=0;pe0){for(var Vt,_t,Wt,se=0,pe=ht[0].length;se0)for(var Vt,_t,Wt,se,pe,ge,Ae=0,Qe=ht[Nt[0]].length;Ae0?(_t[0]=se,_t[1]=se+=Wt):Wt<0?(_t[1]=pe,_t[0]=pe+=Wt):(_t[0]=0,_t[1]=Wt)},fi=function(ht,Nt){if((Vt=ht.length)>0){for(var Vt,_t=0,Wt=ht[Nt[0]],se=Wt.length;_t0&&(_t=(Vt=ht[Nt[0]]).length)>0){for(var Vt,_t,Wt,se=0,pe=1;pe<_t;++pe){for(var ge=0,Ae=0,Qe=0;gese&&(se=Nt,_t=Vt);return _t}var Bi=function(ht){var Nt=ht.map(te);return Rr(ht).sort(function(Vt,_t){return Nt[Vt]-Nt[_t]})};function te(ht){for(var Nt,Vt=0,_t=-1,Wt=ht.length;++_t=0&&Kt._call.call(null,Qt),Kt=Kt._next;--R})()}finally{R=0,function(){for(var Qt,Kt,Jt=Pt,Et=1/0;Jt;)Jt._call?(Et>Jt._time&&(Et=Jt._time),Qt=Jt,Jt=Jt._next):(Kt=Jt._next,Jt._next=null,Jt=Qt?Qt._next=Kt:Pt=Kt);d=Qt,O(Et)}(),X=0}}function M(){var Qt=Z.now(),Kt=Qt-J;Kt>1e3&&(q-=Kt,J=Qt)}function O(Qt){R||(st&&(st=clearTimeout(st)),Qt-X>24?(Qt<1/0&&(st=setTimeout(A,Qt-Z.now()-q)),$&&($=clearInterval($))):($||(J=Z.now(),$=setInterval(M,1e3)),R=1,Y(A)))}U.prototype=T.prototype={constructor:U,restart:function(Qt,Kt,Jt){if(typeof Qt!="function")throw new TypeError("callback is not a function");Jt=(Jt==null?V():+Jt)+(Kt==null?0:+Kt),this._next||d===this||(d?d._next=this:Pt=this,d=this),this._call=Qt,this._time=Jt,O()},stop:function(){this._call&&(this._call=null,this._time=1/0,O())}};var H=function(Qt,Kt,Jt){var Et=new U;return Kt=Kt==null?0:+Kt,Et.restart(function(Rt){Et.stop(),Qt(Rt+Kt)},Kt,Jt),Et},z=Object(L.a)("start","end","cancel","interrupt"),c=[],D=function(Qt,Kt,Jt,Et,Rt,zt){var Ft=Qt.__transition;if(Ft){if(Jt in Ft)return}else Qt.__transition={};(function(ce,Se,xe){var Ze,pn=ce.__transition;function bn(Tn){var Qn,dr,ye,Fe;if(xe.state!==1)return vn();for(Qn in pn)if((Fe=pn[Qn]).name===xe.name){if(Fe.state===3)return H(bn);Fe.state===4?(Fe.state=6,Fe.timer.stop(),Fe.on.call("interrupt",ce,ce.__data__,Fe.index,Fe.group),delete pn[Qn]):+Qn0)throw new Error("too late; already scheduled");return Jt}function Q(Qt,Kt){var Jt=W(Qt,Kt);if(Jt.state>3)throw new Error("too late; already running");return Jt}function W(Qt,Kt){var Jt=Qt.__transition;if(!Jt||!(Jt=Jt[Kt]))throw new Error("transition not found");return Jt}var k=function(Qt,Kt){var Jt,Et,Rt,zt=Qt.__transition,Ft=!0;if(zt){for(Rt in Kt=Kt==null?null:Kt+"",zt)(Jt=zt[Rt]).name===Kt?(Et=Jt.state>2&&Jt.state<5,Jt.state=6,Jt.timer.stop(),Jt.on.call(Et?"interrupt":"cancel",Qt,Qt.__data__,Jt.index,Jt.group),delete zt[Rt]):Ft=!1;Ft&&delete Qt.__transition}},_=F(75),C=F(20);function h(Qt,Kt){var Jt,Et;return function(){var Rt=Q(this,Qt),zt=Rt.tween;if(zt!==Jt){for(var Ft=0,ce=(Et=Jt=zt).length;Ft=0&&(ce=ce.slice(0,Se)),!ce||ce==="start"})}(Kt)?it:Q;return function(){var Ft=zt(this,Qt),ce=Ft.on;ce!==Et&&(Rt=(Et=ce).copy()).on(Kt,Jt),Ft.on=Rt}}var Ot=F(19),At=F(33),$t=g.b.prototype.constructor,Xt=F(35);function Ct(Qt){return function(){this.style.removeProperty(Qt)}}function wt(Qt,Kt,Jt){return function(Et){this.style.setProperty(Qt,Kt.call(this,Et),Jt)}}function Dt(Qt,Kt,Jt){var Et,Rt;function zt(){var Ft=Kt.apply(this,arguments);return Ft!==Rt&&(Et=(Rt=Ft)&&wt(Qt,Ft,Jt)),Et}return zt._value=Kt,zt}function jt(Qt){return function(Kt){this.textContent=Qt.call(this,Kt)}}function re(Qt){var Kt,Jt;function Et(){var Rt=Qt.apply(this,arguments);return Rt!==Jt&&(Kt=(Jt=Rt)&&jt(Rt)),Kt}return Et._value=Qt,Et}var le=0;function Gt(Qt,Kt,Jt,Et){this._groups=Qt,this._parents=Kt,this._name=Jt,this._id=Et}function he(Qt){return Object(g.b)().transition(Qt)}function ve(){return++le}var Ce=g.b.prototype;Gt.prototype=he.prototype={constructor:Gt,select:function(Qt){var Kt=this._name,Jt=this._id;typeof Qt!="function"&&(Qt=Object(Ot.a)(Qt));for(var Et=this._groups,Rt=Et.length,zt=new Array(Rt),Ft=0;Ft1&&Jt.name===Kt)return new Gt([[Qt]],rn,Kt,+Et)}return null};F.d(xt,"transition",function(){return he}),F.d(xt,"active",function(){return un}),F.d(xt,"interrupt",function(){return k})},function(Oe,xt,F){"use strict";var Pt;(Pt=function(){var d=F(71),g=F(39);return{axisTimeCombinations:{MINUTE_HOUR:"minute-hour",HOUR_DAY:"hour-daymonth",DAY_MONTH:"day-month",MONTH_YEAR:"month-year",CUSTOM:"custom"},curveMap:{linear:d.curveLinear,basis:d.curveBasis,cardinal:d.curveCardinal,catmullRom:d.curveCatmullRom,monotoneX:d.curveMonotoneX,monotoneY:d.curveMonotoneY,natural:d.curveNatural,step:d.curveStep,stepAfter:d.curveStepAfter,stepBefore:d.curveStepBefore},emptyDonutData:[{quantity:1,percentage:100}],timeBenchmarks:{ONE_AND_A_HALF_YEARS:47304e6,ONE_YEAR:31536000365,ONE_DAY:86400001},lineGradientId:"lineGradientId",timeIntervals:{timeMillisecond:g.timeMillisecond,utcMillisecond:g.utcMillisecond,timeSecond:g.timeSecond,utcSecond:g.utcSecond,timeMinute:g.timeMinute,utcMinute:g.utcMinute,timeHour:g.timeHour,utcHour:g.utcHour,timeDay:g.timeDay,utcDay:g.utcDay,timeWeek:g.timeWeek,utcWeek:g.utcWeek,timeSunday:g.timeSunday,utcSunday:g.utcSunday,timeMonday:g.timeMonday,utcMonday:g.utcMonday,timeTuesday:g.timeTuesday,utcTuesday:g.utcTuesday,timeWednesday:g.timeWednesday,utcWednesday:g.utcWednesday,timeThursday:g.timeThursday,utcThursday:g.utcThursday,timeFriday:g.timeFriday,utcFriday:g.utcFriday,timeSaturday:g.timeSaturday,utcSaturday:g.utcSaturday,timeMonth:g.timeMonth,utcMonth:g.utcMonth,timeYear:g.timeYear,utcYear:g.utcYear},FORMAT_LOCALE_URL:"https://cdn.jsdelivr.net/npm/d3-format/locale"}}.call(xt,F,xt,Oe))===void 0||(Oe.exports=Pt)},,function(Oe,xt,F){"use strict";var Pt,d,g,L,R=F(6),st=180/Math.PI,$={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},J=function(Y,V,N,U,T,A){var M,O,H;return(M=Math.sqrt(Y*Y+V*V))&&(Y/=M,V/=M),(H=Y*N+V*U)&&(N-=Y*H,U-=V*H),(O=Math.sqrt(N*N+U*U))&&(N/=O,U/=O,H/=O),Y*U180?c+=360:c-z>180&&(z+=360),it.push({i:D.push(T(D)+"rotate(",null,U)-2,x:Object(R.a)(z,c)})):c&&D.push(T(D)+"rotate("+c+U)}(A.rotate,M.rotate,O,H),function(z,c,D,it){z!==c?it.push({i:D.push(T(D)+"skewX(",null,U)-2,x:Object(R.a)(z,c)}):c&&D.push(T(D)+"skewX("+c+U)}(A.skewX,M.skewX,O,H),function(z,c,D,it,Q,W){if(z!==D||c!==it){var k=Q.push(T(Q)+"scale(",null,",",null,")");W.push({i:k-4,x:Object(R.a)(z,D)},{i:k-2,x:Object(R.a)(c,it)})}else D===1&&it===1||Q.push(T(Q)+"scale("+D+","+it+")")}(A.scaleX,A.scaleY,M.scaleX,M.scaleY,O,H),A=M=null,function(z){for(var c,D=-1,it=H.length;++D1&&arguments[1]!==void 0?arguments[1]:12,Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Arial",V=document.createElement("canvas"),N=V.getContext("2d");return N.font=Z+"px "+Y,N.measureText(q).width},wrapText:function(q,Z,Y,V){var N=g.select(V),U=N.text().split(/\s+/).reverse(),T=void 0,A=[],M=0,O=L*st,H=N.attr("y"),z=parseFloat(N.attr("dy")),c=Z*$,D=N.text(null).append("tspan").attr("x",q).attr("y",H-5).attr("dy",z+"em").classed(J,!0).style("font-size",Z+"px");for(D.text(U.pop()),D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").style("font-size",c+"px");T=U.pop();)A.push(T),D.text(A.join(" ")),D.node()&&D.node().getComputedTextLength()>Y-50&&(A.pop(),D.text(A.join(" ")),A=[T],D=N.append("tspan").classed(X,!0).attr("x",q).attr("y",H+R).attr("dy",++M*O+z+"em").text(T).style("font-size",c+"px"))},wrapTextWithEllipses:function(q,Z){var Y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,V=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,N=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1.2;q.each(function(){var U,T,A,M,O,H,z;for(U=(q=g.select(this)).text().split(/\s+/).reverse(),A=[],M=0,O=q.attr("y"),H=parseFloat(q.attr("dy")),z=q.text(null).append("tspan").attr("x",Y).attr("y",O).attr("dy",H+"em");T=U.pop();)if(A.push(T),z.text(A.join(" ")),z.node()&&z.node().getComputedTextLength()>Z){if(A.pop(),z.text(A.join(" ")),!(M2&&arguments[2]!==void 0?arguments[2]:0;At.each(function(){var Ct,wt,Dt,jt,re,le,Gt;for(Ct=(At=$.select(this)).text().split(/\s+/).reverse(),Dt=[],jt=0,re=At.attr("y"),le=parseFloat(At.attr("dy")),Gt=At.text(null).append("tspan").attr("x",Xt).attr("y",re).attr("dy",le+"em");wt=Ct.pop();)Dt.push(wt),Gt.text(Dt.join(" ")),N(Dt.join(" "),16,"Karla, sans-serif")>$t&&(Dt.pop(),Gt.text(Dt.join(" ")),jt<2&&(Dt=[wt],Gt=At.append("tspan").attr("x",Xt).attr("y",re).attr("dy",1.2*++jt+le+"em").text(wt)))})}function vt(At){var $t=At[K];pt.length?$t=function(Xt){var Ct=arguments.length>1&&arguments[1]!==void 0?arguments[1]:pt;return Ct.map(function(wt){return Xt.filter(function(Dt){return Dt.name===wt})[0]})}($t):$t.length&&$t[0].name&&($t=function(Xt){return Xt.map(function(Ct){return Ct}).sort(function(Ct,wt){return Ct.name>wt.name?1:Ct.name===wt.name?0:-1})}($t)),Q.selectAll("text").remove(),Q.selectAll("circle").remove(),rt(At),k=48,C=37,_=0,$t.forEach(j)}function Ot(At,$t,Xt){vt(At),lt(0,$t,Xt)}return x.axisTimeCombinations=X,x.dateFormat=function(At){return arguments.length?(et=At,this):et||ct},x.dateCustomFormat=function(At){return arguments.length?(dt=At,this):dt},x.dateLabel=function(At){return arguments.length?(I=At,this):I},x.hide=function(){return nt.style("visibility","hidden"),this},x.locale=function(At){return arguments.length?(tt=At,this):tt},x.nameLabel=function(At){return arguments.length?(b=At,this):b},x.numberFormat=function(At){return arguments.length?(bt=At,this):bt},x.valueFormatter=function(At){return arguments.length?(Mt=At,this):Mt},x.shouldShowDateInTitle=function(At){return arguments.length?(H=At,this):H},x.show=function(){return nt.style("visibility","visible"),this},x.title=function(At){return arguments.length?(O=At,this):O},x.tooltipOffset=function(At){return arguments.length?(c=At,this):c},x.topicsOrder=function(At){return arguments.length?(pt=At,this):pt},x.topicLabel=function(At){return arguments.length?(K=At,this):K},x.update=function(At,$t,Xt){var Ct=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;return v=$t,Ot(At,Xt,Ct),this},x.valueLabel=function(At){return arguments.length?(S=At,this):S},x}}.call(xt,F,xt,Oe))===void 0||(Oe.exports=Pt)}])})},3224:(yr,Oe,xt)=>{"use strict";xt.r(Oe),xt.d(Oe,{FormatSpecifier:()=>k0,active:()=>Xg,arc:()=>_3,area:()=>bM,areaRadial:()=>CM,ascending:()=>T.V_,autoType:()=>Cb,axisBottom:()=>u,axisLeft:()=>v,axisRight:()=>l,axisTop:()=>h,bisect:()=>T.h1,bisectLeft:()=>T.ah,bisectRight:()=>T.Jj,bisector:()=>T.yl,blob:()=>Tv,brush:()=>Qg,brushSelection:()=>Ls,brushX:()=>mv,brushY:()=>Yl,buffer:()=>Av,chord:()=>dm,clientPoint:()=>zn,cluster:()=>_S,color:()=>go,contourDensity:()=>c0,contours:()=>Od,create:()=>pg,creator:()=>pr,cross:()=>T.$A,csv:()=>uo,csvFormat:()=>Sv,csvFormatBody:()=>wb,csvFormatRow:()=>fs,csvFormatRows:()=>Es,csvFormatValue:()=>_b,csvParse:()=>gm,csvParseRows:()=>es,cubehelix:()=>Fs,curveBasis:()=>jM,curveBasisClosed:()=>P3,curveBasisOpen:()=>N3,curveBundle:()=>BM,curveCardinal:()=>Ay,curveCardinalClosed:()=>D3,curveCardinalOpen:()=>zM,curveCatmullRom:()=>R3,curveCatmullRomClosed:()=>HM,curveCatmullRomOpen:()=>L3,curveLinear:()=>zf,curveLinearClosed:()=>VM,curveMonotoneX:()=>I3,curveMonotoneY:()=>CP,curveNatural:()=>KM,curveStep:()=>F3,curveStepAfter:()=>ZM,curveStepBefore:()=>B3,customEvent:()=>Vt,descending:()=>T.rG,deviation:()=>T.KS,dispatch:()=>dt,drag:()=>zs,dragDisable:()=>Yn,dragEnable:()=>fr,dsv:()=>w0,dsvFormat:()=>Id,easeBack:()=>el,easeBackIn:()=>kv,easeBackInOut:()=>el,easeBackOut:()=>$a,easeBounce:()=>gf,easeBounceIn:()=>Sm,easeBounceInOut:()=>Ev,easeBounceOut:()=>gf,easeCircle:()=>nh,easeCircleIn:()=>wm,easeCircleInOut:()=>nh,easeCircleOut:()=>Bd,easeCubic:()=>Ja,easeCubicIn:()=>Su,easeCubicInOut:()=>Ja,easeCubicOut:()=>La,easeElastic:()=>b0,easeElasticIn:()=>kl,easeElasticInOut:()=>ql,easeElasticOut:()=>b0,easeExp:()=>ca,easeExpIn:()=>v0,easeExpInOut:()=>ca,easeExpOut:()=>ds,easeLinear:()=>p0,easePoly:()=>xm,easePolyIn:()=>yc,easePolyInOut:()=>xm,easePolyOut:()=>eh,easeQuad:()=>jd,easeQuadIn:()=>m0,easeQuadInOut:()=>jd,easeQuadOut:()=>Mv,easeSin:()=>bm,easeSinIn:()=>Mb,easeSinInOut:()=>bm,easeSinOut:()=>y0,entries:()=>rf,event:()=>Mr,extent:()=>T.Xx,forceCenter:()=>xf,forceCollide:()=>S0,forceLink:()=>Om,forceManyBody:()=>Tb,forceRadial:()=>Ab,forceSimulation:()=>E0,forceX:()=>Ob,forceY:()=>Dv,format:()=>lh,formatDefaultLocale:()=>P0,formatLocale:()=>qd,formatPrefix:()=>$d,formatSpecifier:()=>Sf,geoAlbers:()=>Ys,geoAlbersUsa:()=>mT,geoArea:()=>Nb,geoAzimuthalEqualArea:()=>gT,geoAzimuthalEqualAreaRaw:()=>rw,geoAzimuthalEquidistant:()=>yT,geoAzimuthalEquidistantRaw:()=>iw,geoBounds:()=>Xk,geoCentroid:()=>eT,geoCircle:()=>Fm,geoClipAntimeridian:()=>Ub,geoClipCircle:()=>tS,geoClipExtent:()=>uT,geoClipRectangle:()=>Kv,geoConicConformal:()=>xT,geoConicConformalRaw:()=>gS,geoConicEqualArea:()=>m1,geoConicEqualAreaRaw:()=>fS,geoConicEquidistant:()=>yS,geoConicEquidistantRaw:()=>ow,geoContains:()=>eS,geoDistance:()=>gs,geoEqualEarth:()=>xS,geoEqualEarthRaw:()=>y1,geoEquirectangular:()=>bT,geoEquirectangularRaw:()=>Q0,geoGnomonic:()=>wT,geoGnomonicRaw:()=>aw,geoGraticule:()=>Yb,geoGraticule10:()=>Jv,geoIdentity:()=>_T,geoInterpolate:()=>tP,geoLength:()=>zm,geoMercator:()=>vT,geoMercatorRaw:()=>Xm,geoNaturalEarth1:()=>ST,geoNaturalEarth1Raw:()=>sw,geoOrthographic:()=>bS,geoOrthographicRaw:()=>lw,geoPath:()=>sp,geoProjection:()=>Ec,geoProjectionMutator:()=>tw,geoRotation:()=>$2,geoStereographic:()=>CT,geoStereographicRaw:()=>uw,geoStream:()=>Yr,geoTransform:()=>$0,geoTransverseMercator:()=>Km,geoTransverseMercatorRaw:()=>v1,gray:()=>Co,hcl:()=>hc,hierarchy:()=>b1,histogram:()=>T.JW,hsl:()=>ga,html:()=>Aa,image:()=>Zo,interpolate:()=>dn,interpolateArray:()=>Ju,interpolateBasis:()=>vu,interpolateBasisClosed:()=>zl,interpolateBlues:()=>d3,interpolateBrBG:()=>o3,interpolateBuGn:()=>nM,interpolateBuPu:()=>l3,interpolateCividis:()=>y3,interpolateCool:()=>yM,interpolateCubehelix:()=>Ew,interpolateCubehelixDefault:()=>v3,interpolateCubehelixLong:()=>N1,interpolateDate:()=>tc,interpolateDiscrete:()=>ww,interpolateGnBu:()=>rM,interpolateGreens:()=>p3,interpolateGreys:()=>m3,interpolateHcl:()=>oA,interpolateHclLong:()=>hP,interpolateHsl:()=>IS,interpolateHslLong:()=>jS,interpolateHue:()=>rA,interpolateInferno:()=>f_,interpolateLab:()=>Cw,interpolateMagma:()=>dg,interpolateNumber:()=>_s,interpolateNumberArray:()=>jh,interpolateObject:()=>Hc,interpolateOrRd:()=>hg,interpolateOranges:()=>gM,interpolatePRGn:()=>$C,interpolatePiYG:()=>cg,interpolatePlasma:()=>vM,interpolatePuBu:()=>c3,interpolatePuBuGn:()=>u3,interpolatePuOr:()=>a3,interpolatePuRd:()=>sM,interpolatePurples:()=>g3,interpolateRainbow:()=>b3,interpolateRdBu:()=>ZC,interpolateRdGy:()=>JC,interpolateRdPu:()=>lx,interpolateRdYlBu:()=>tM,interpolateRdYlGn:()=>eM,interpolateReds:()=>pM,interpolateRgb:()=>bu,interpolateRgbBasis:()=>ed,interpolateRgbBasisClosed:()=>Uc,interpolateRound:()=>DS,interpolateSinebow:()=>ru,interpolateSpectral:()=>sx,interpolateString:()=>Xe,interpolateTransformCss:()=>Jp,interpolateTransformSvg:()=>Ug,interpolateTurbo:()=>h_,interpolateViridis:()=>hx,interpolateWarm:()=>x3,interpolateYlGn:()=>h3,interpolateYlGnBu:()=>lM,interpolateYlOrBr:()=>cM,interpolateYlOrRd:()=>f3,interpolateZoom:()=>_w,interrupt:()=>wu,interval:()=>Z3,isoFormat:()=>$3,isoParse:()=>Xu,json:()=>Ia,keys:()=>ef,lab:()=>yo,lch:()=>Qc,line:()=>dx,lineRadial:()=>SM,linkHorizontal:()=>mx,linkRadial:()=>kM,linkVertical:()=>T3,local:()=>xM,map:()=>Ou,matcher:()=>nt,max:()=>T.T9,mean:()=>T.i2,median:()=>T.JZ,merge:()=>T.Am,min:()=>T.jk,mouse:()=>Or,namespace:()=>rn,namespaces:()=>Ke,nest:()=>yv,now:()=>zh,pack:()=>pw,packEnclose:()=>MS,packSiblings:()=>TS,pairs:()=>T.AS,partition:()=>$T,path:()=>Au,permute:()=>T.Ny,pie:()=>M3,piecewise:()=>aA,pointRadial:()=>ky,polygonArea:()=>BS,polygonCentroid:()=>kw,polygonContains:()=>Tw,polygonHull:()=>zS,polygonLength:()=>cA,precisionFixed:()=>N0,precisionPrefix:()=>rl,precisionRound:()=>Pm,quadtree:()=>Fa,quantile:()=>T.YV,quantize:()=>fP,radialArea:()=>CM,radialLine:()=>SM,randomBates:()=>hA,randomExponential:()=>pP,randomIrwinHall:()=>US,randomLogNormal:()=>Ow,randomNormal:()=>Aw,randomUniform:()=>dP,range:()=>T.y1,rgb:()=>so,ribbon:()=>bd,scaleBand:()=>Pw,scaleDiverging:()=>BC,scaleDivergingLog:()=>zC,scaleDivergingPow:()=>by,scaleDivergingSqrt:()=>UC,scaleDivergingSymlog:()=>ax,scaleIdentity:()=>dA,scaleImplicit:()=>R1,scaleLinear:()=>qS,scaleLog:()=>gi,scaleOrdinal:()=>ly,scalePoint:()=>mP,scalePow:()=>B1,scaleQuantile:()=>gh,scaleQuantize:()=>Fw,scaleSequential:()=>IC,scaleSequentialLog:()=>jC,scaleSequentialPow:()=>r_,scaleSequentialQuantile:()=>FC,scaleSequentialSqrt:()=>t3,scaleSequentialSymlog:()=>n_,scaleSqrt:()=>QS,scaleSymlog:()=>ZS,scaleThreshold:()=>gA,scaleTime:()=>ZA,scaleUtc:()=>JA,scan:()=>T.SQ,schemeAccent:()=>WC,schemeBlues:()=>hM,schemeBrBG:()=>GC,schemeBuGn:()=>a_,schemeBuPu:()=>Cp,schemeCategory10:()=>HC,schemeDark2:()=>YC,schemeGnBu:()=>s_,schemeGreens:()=>fM,schemeGreys:()=>ux,schemeOrRd:()=>l_,schemeOranges:()=>mM,schemePRGn:()=>qC,schemePaired:()=>e3,schemePastel1:()=>n3,schemePastel2:()=>VC,schemePiYG:()=>XC,schemePuBu:()=>oM,schemePuBuGn:()=>iM,schemePuOr:()=>KC,schemePuRd:()=>aM,schemePurples:()=>dM,schemeRdBu:()=>i_,schemeRdGy:()=>QC,schemeRdPu:()=>bh,schemeRdYlBu:()=>s3,schemeRdYlGn:()=>o_,schemeReds:()=>c_,schemeSet1:()=>Pc,schemeSet2:()=>r3,schemeSet3:()=>_P,schemeSpectral:()=>vo,schemeTableau10:()=>i3,schemeYlGn:()=>wy,schemeYlGnBu:()=>u_,schemeYlOrBr:()=>uM,schemeYlOrRd:()=>wh,select:()=>sn,selectAll:()=>Dc,selection:()=>He,selector:()=>bt,selectorAll:()=>B,set:()=>Vl,shuffle:()=>T.k4,stack:()=>U3,stackOffsetDiverging:()=>W3,stackOffsetExpand:()=>H3,stackOffsetNone:()=>Ap,stackOffsetSilhouette:()=>Y3,stackOffsetWiggle:()=>V3,stackOrderAppearance:()=>QM,stackOrderAscending:()=>tE,stackOrderDescending:()=>A_,stackOrderInsideOut:()=>O_,stackOrderNone:()=>yg,stackOrderReverse:()=>P_,stratify:()=>KT,style:()=>pn,sum:()=>T.cz,svg:()=>Wd,symbol:()=>O3,symbolCircle:()=>au,symbolCross:()=>Tp,symbolDiamond:()=>AM,symbolSquare:()=>b_,symbolStar:()=>DM,symbolTriangle:()=>RM,symbolWye:()=>IM,symbols:()=>yx,text:()=>Mm,thresholdFreedmanDiaconis:()=>T.c3,thresholdScott:()=>T.Ft,thresholdSturges:()=>T.zr,tickFormat:()=>L1,tickIncrement:()=>T.lq,tickStep:()=>T.sG,ticks:()=>T.Zc,timeDay:()=>H1,timeDays:()=>xP,timeFormat:()=>Qw,timeFormatDefaultLocale:()=>OC,timeFormatLocale:()=>Yw,timeFriday:()=>vA,timeFridays:()=>aC,timeHour:()=>Uw,timeHours:()=>W1,timeInterval:()=>Za,timeMillisecond:()=>G1,timeMilliseconds:()=>Hw,timeMinute:()=>Y1,timeMinutes:()=>eg,timeMonday:()=>dy,timeMondays:()=>iC,timeMonth:()=>eC,timeMonths:()=>yA,timeParse:()=>AC,timeSaturday:()=>vh,timeSaturdays:()=>bA,timeSecond:()=>V1,timeSeconds:()=>ng,timeSunday:()=>fy,timeSundays:()=>Tc,timeThursday:()=>Jm,timeThursdays:()=>xA,timeTuesday:()=>kc,timeTuesdays:()=>vP,timeWednesday:()=>rC,timeWednesdays:()=>oC,timeWeek:()=>fy,timeWeeks:()=>Tc,timeYear:()=>yh,timeYears:()=>yP,timeout:()=>Wh,timer:()=>rd,timerFlush:()=>ec,touch:()=>mr,touches:()=>If,transition:()=>oc,transpose:()=>T.mg,tree:()=>JT,treemap:()=>eA,treemapBinary:()=>nA,treemapDice:()=>hp,treemapResquarify:()=>NS,treemapSlice:()=>sy,treemapSliceDice:()=>uP,treemapSquarify:()=>T1,tsv:()=>Gi,tsvFormat:()=>pf,tsvFormatBody:()=>Cv,tsvFormatRow:()=>vm,tsvFormatRows:()=>Sb,tsvFormatValue:()=>f0,tsvParse:()=>ym,tsvParseRows:()=>h0,utcDay:()=>ig,utcDays:()=>dC,utcFormat:()=>ex,utcFriday:()=>Ww,utcFridays:()=>CA,utcHour:()=>os,utcHours:()=>RC,utcMillisecond:()=>G1,utcMilliseconds:()=>Hw,utcMinute:()=>e_,utcMinutes:()=>ix,utcMonday:()=>my,utcMondays:()=>fC,utcMonth:()=>NC,utcMonths:()=>QA,utcParse:()=>ug,utcSaturday:()=>cC,utcSaturdays:()=>MA,utcSecond:()=>V1,utcSeconds:()=>ng,utcSunday:()=>gp,utcSundays:()=>hC,utcThursday:()=>yp,utcThursdays:()=>SA,utcTuesday:()=>lC,utcTuesdays:()=>wA,utcWednesday:()=>uC,utcWednesdays:()=>_A,utcWeek:()=>gp,utcWeeks:()=>hC,utcYear:()=>vp,utcYears:()=>$1,values:()=>nf,variance:()=>T.GV,version:()=>Pt,voronoi:()=>hO,window:()=>Ft,xml:()=>vf,zip:()=>T.yU,zoom:()=>cE,zoomIdentity:()=>jy,zoomTransform:()=>F_});var F="d3",Pt="5.16.0",d="Data-Driven Documents",g=null,L="https://d3js.org",R="BSD-3-Clause",st={name:"Mike Bostock",url:"https://bost.ocks.org/mike"},$="dist/d3.node.js",J="dist/d3.min.js",X="dist/d3.min.js",q="index.js",Z={type:"git",url:"https://github.com/d3/d3.git"},Y=null,V={pretest:"rimraf dist && mkdir dist && json2module package.json > dist/package.js && rollup -c",test:"tape 'test/**/*-test.js'",prepublishOnly:"yarn test",postpublish:'git push && git push --tags && cd ../d3.github.com && git pull && cp ../d3/dist/d3.js d3.v5.js && cp ../d3/dist/d3.min.js d3.v5.min.js && git add d3.v5.js d3.v5.min.js && git commit -m "d3 ${npm_package_version}" && git push && cd - && cd ../d3-bower && git pull && cp ../d3/LICENSE ../d3/README.md ../d3/dist/d3.js ../d3/dist/d3.min.js . && git add -- LICENSE README.md d3.js d3.min.js && git commit -m "${npm_package_version}" && git tag -am "${npm_package_version}" v${npm_package_version} && git push && git push --tags && cd - && zip -j dist/d3.zip -- LICENSE README.md API.md CHANGES.md dist/d3.js dist/d3.min.js'},N={json2module:"0.0",rimraf:"2",rollup:"1","rollup-plugin-ascii":"0.0","rollup-plugin-node-resolve":"3","rollup-plugin-terser":"5",tape:"4"},U={"d3-array":"1","d3-axis":"1","d3-brush":"1","d3-chord":"1","d3-collection":"1","d3-color":"1","d3-contour":"1","d3-dispatch":"1","d3-drag":"1","d3-dsv":"1","d3-ease":"1","d3-fetch":"1","d3-force":"1","d3-format":"1","d3-geo":"1","d3-hierarchy":"1","d3-interpolate":"1","d3-path":"1","d3-polygon":"1","d3-quadtree":"1","d3-random":"1","d3-scale":"2","d3-scale-chromatic":"1","d3-selection":"1","d3-shape":"1","d3-time":"1","d3-time-format":"2","d3-timer":"1","d3-transition":"1","d3-voronoi":"1","d3-zoom":"1"},T=xt(9685),A=Array.prototype.slice;function M(r){return r}var O=1,H=2,z=3,c=4,D=1e-6;function it(r){return"translate("+(r+.5)+",0)"}function Q(r){return"translate(0,"+(r+.5)+")"}function W(r){return function(o){return+r(o)}}function k(r){var o=Math.max(0,r.bandwidth()-1)/2;return r.round()&&(o=Math.round(o)),function(p){return+r(p)+o}}function _(){return!this.__axis}function C(r,o){var p=[],P=null,at=null,mt=6,St=6,kt=3,Lt=r===O||r===c?-1:1,Ut=r===c||r===H?"x":"y",qt=r===O||r===z?it:Q;function ie(Zt){var _e=P==null?o.ticks?o.ticks.apply(o,p):o.domain():P,Le=at==null?o.tickFormat?o.tickFormat.apply(o,p):M:at,De=Math.max(mt,0)+kt,Be=o.range(),We=+Be[0]+.5,cn=+Be[Be.length-1]+.5,nn=(o.bandwidth?k:W)(o.copy()),ln=Zt.selection?Zt.selection():Zt,Pn=ln.selectAll(".domain").data([null]),qn=ln.selectAll(".tick").data(_e,o).order(),Un=qn.exit(),gr=qn.enter().append("g").attr("class","tick"),ir=qn.select("line"),cr=qn.select("text");Pn=Pn.merge(Pn.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),qn=qn.merge(gr),ir=ir.merge(gr.append("line").attr("stroke","currentColor").attr(Ut+"2",Lt*mt)),cr=cr.merge(gr.append("text").attr("fill","currentColor").attr(Ut,Lt*De).attr("dy",r===O?"0em":r===z?"0.71em":"0.32em")),Zt!==ln&&(Pn=Pn.transition(Zt),qn=qn.transition(Zt),ir=ir.transition(Zt),cr=cr.transition(Zt),Un=Un.transition(Zt).attr("opacity",D).attr("transform",function(er){return isFinite(er=nn(er))?qt(er):this.getAttribute("transform")}),gr.attr("opacity",D).attr("transform",function(er){var fn=this.parentNode.__axis;return qt(fn&&isFinite(fn=fn(er))?fn:nn(er))})),Un.remove(),Pn.attr("d",r===c||r==H?St?"M"+Lt*St+","+We+"H0.5V"+cn+"H"+Lt*St:"M0.5,"+We+"V"+cn:St?"M"+We+","+Lt*St+"V0.5H"+cn+"V"+Lt*St:"M"+We+",0.5H"+cn),qn.attr("opacity",1).attr("transform",function(er){return qt(nn(er))}),ir.attr(Ut+"2",Lt*mt),cr.attr(Ut,Lt*De).text(Le),ln.filter(_).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",r===H?"start":r===c?"end":"middle"),ln.each(function(){this.__axis=nn})}return ie.scale=function(Zt){return arguments.length?(o=Zt,ie):o},ie.ticks=function(){return p=A.call(arguments),ie},ie.tickArguments=function(Zt){return arguments.length?(p=Zt==null?[]:A.call(Zt),ie):p.slice()},ie.tickValues=function(Zt){return arguments.length?(P=Zt==null?null:A.call(Zt),ie):P&&P.slice()},ie.tickFormat=function(Zt){return arguments.length?(at=Zt,ie):at},ie.tickSize=function(Zt){return arguments.length?(mt=St=+Zt,ie):mt},ie.tickSizeInner=function(Zt){return arguments.length?(mt=+Zt,ie):mt},ie.tickSizeOuter=function(Zt){return arguments.length?(St=+Zt,ie):St},ie.tickPadding=function(Zt){return arguments.length?(kt=+Zt,ie):kt},ie}function h(r){return C(O,r)}function l(r){return C(H,r)}function u(r){return C(z,r)}function v(r){return C(c,r)}var I={value:function(){}};function S(){for(var r=0,o=arguments.length,p={},P;r=0&&(P=p.slice(at+1),p=p.slice(0,at)),p&&!o.hasOwnProperty(p))throw new Error("unknown type: "+p);return{type:p,name:P}})}b.prototype=S.prototype={constructor:b,on:function(r,o){var p=this._,P=K(r+"",p),at,mt=-1,St=P.length;if(arguments.length<2){for(;++mt0)for(var p=new Array(at),P=0,at,mt;P=nn&&(nn=cn+1);!(Pn=Be[nn])&&++nn=0;)(St=P[at])&&(mt&&St.compareDocumentPosition(mt)^4&&mt.parentNode.insertBefore(St,mt),mt=St);return this}function Dt(r){r||(r=jt);function o(ie,Zt){return ie&&Zt?r(ie.__data__,Zt.__data__):!ie-!Zt}for(var p=this._groups,P=p.length,at=new Array(P),mt=0;mto?1:r>=o?0:NaN}function re(){var r=arguments[0];return arguments[0]=this,r.apply(null,arguments),this}function le(){var r=new Array(this.size()),o=-1;return this.each(function(){r[++o]=this}),r}function Gt(){for(var r=this._groups,o=0,p=r.length;o=0&&(o=r.slice(0,p))!=="xmlns"&&(r=r.slice(p+1)),Ke.hasOwnProperty(o)?{space:Ke[o],local:r}:r}function un(r){return function(){this.removeAttribute(r)}}function Qt(r){return function(){this.removeAttributeNS(r.space,r.local)}}function Kt(r,o){return function(){this.setAttribute(r,o)}}function Jt(r,o){return function(){this.setAttributeNS(r.space,r.local,o)}}function Et(r,o){return function(){var p=o.apply(this,arguments);p==null?this.removeAttribute(r):this.setAttribute(r,p)}}function Rt(r,o){return function(){var p=o.apply(this,arguments);p==null?this.removeAttributeNS(r.space,r.local):this.setAttributeNS(r.space,r.local,p)}}function zt(r,o){var p=rn(r);if(arguments.length<2){var P=this.node();return p.local?P.getAttributeNS(p.space,p.local):P.getAttribute(p)}return this.each((o==null?p.local?Qt:un:typeof o=="function"?p.local?Rt:Et:p.local?Jt:Kt)(p,o))}function Ft(r){return r.ownerDocument&&r.ownerDocument.defaultView||r.document&&r||r.defaultView}function ce(r){return function(){this.style.removeProperty(r)}}function Se(r,o,p){return function(){this.style.setProperty(r,o,p)}}function xe(r,o,p){return function(){var P=o.apply(this,arguments);P==null?this.style.removeProperty(r):this.style.setProperty(r,P,p)}}function Ze(r,o,p){return arguments.length>1?this.each((o==null?ce:typeof o=="function"?xe:Se)(r,o,p==null?"":p)):pn(this.node(),r)}function pn(r,o){return r.style.getPropertyValue(o)||Ft(r).getComputedStyle(r,null).getPropertyValue(o)}function bn(r){return function(){delete this[r]}}function Ln(r,o){return function(){this[r]=o}}function vn(r,o){return function(){var p=o.apply(this,arguments);p==null?delete this[r]:this[r]=p}}function Tn(r,o){return arguments.length>1?this.each((o==null?bn:typeof o=="function"?vn:Ln)(r,o)):this.node()[r]}function Qn(r){return r.trim().split(/^|\s+/)}function dr(r){return r.classList||new ye(r)}function ye(r){this._node=r,this._names=Qn(r.getAttribute("class")||"")}ye.prototype={add:function(r){var o=this._names.indexOf(r);o<0&&(this._names.push(r),this._node.setAttribute("class",this._names.join(" ")))},remove:function(r){var o=this._names.indexOf(r);o>=0&&(this._names.splice(o,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(r){return this._names.indexOf(r)>=0}};function Fe(r,o){for(var p=dr(r),P=-1,at=o.length;++P=0&&(p=o.slice(P+1),o=o.slice(0,P)),{type:o,name:p}})}function en(r){return function(){var o=this.__on;if(o){for(var p=0,P=-1,at=o.length,mt;p>8&15|o>>4&240,o>>4&15|o&240,(o&15)<<4|o&15,1):p===8?_o(o>>24&255,o>>16&255,o>>8&255,(o&255)/255):p===4?_o(o>>12&15|o>>8&240,o>>8&15|o>>4&240,o>>4&15|o&240,((o&15)<<4|o&15)/255):null):(o=Ai.exec(r))?new ki(o[1],o[2],o[3],1):(o=yi.exec(r))?new ki(o[1]*255/100,o[2]*255/100,o[3]*255/100,1):(o=Oi.exec(r))?_o(o[1],o[2],o[3],o[4]):(o=Li.exec(r))?_o(o[1]*255/100,o[2]*255/100,o[3]*255/100,o[4]):(o=Pi.exec(r))?xo(o[1],o[2]/100,o[3]/100,1):(o=Vi.exec(r))?xo(o[1],o[2]/100,o[3]/100,o[4]):ro.hasOwnProperty(r)?io(ro[r]):r==="transparent"?new ki(NaN,NaN,NaN,0):null}function io(r){return new ki(r>>16&255,r>>8&255,r&255,1)}function _o(r,o,p,P){return P<=0&&(r=o=p=NaN),new ki(r,o,p,P)}function $o(r){return r instanceof ur||(r=go(r)),r?(r=r.rgb(),new ki(r.r,r.g,r.b,r.opacity)):new ki}function so(r,o,p,P){return arguments.length===1?$o(r):new ki(r,o,p,P==null?1:P)}function ki(r,o,p,P){this.r=+r,this.g=+o,this.b=+p,this.opacity=+P}or(ki,so,Zn(ur,{brighter:function(r){return r=r==null?Sr:Math.pow(Sr,r),new ki(this.r*r,this.g*r,this.b*r,this.opacity)},darker:function(r){return r=r==null?Tr:Math.pow(Tr,r),new ki(this.r*r,this.g*r,this.b*r,this.opacity)},rgb:function(){return this},displayable:function(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:aa,formatHex:aa,formatRgb:sa,toString:sa}));function aa(){return"#"+To(this.r)+To(this.g)+To(this.b)}function sa(){var r=this.opacity;return r=isNaN(r)?1:Math.max(0,Math.min(1,r)),(r===1?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(r===1?")":", "+r+")")}function To(r){return r=Math.max(0,Math.min(255,Math.round(r)||0)),(r<16?"0":"")+r.toString(16)}function xo(r,o,p,P){return P<=0?r=o=p=NaN:p<=0||p>=1?r=o=NaN:o<=0&&(r=NaN),new Ma(r,o,p,P)}function ta(r){if(r instanceof Ma)return new Ma(r.h,r.s,r.l,r.opacity);if(r instanceof ur||(r=go(r)),!r)return new Ma;if(r instanceof Ma)return r;r=r.rgb();var o=r.r/255,p=r.g/255,P=r.b/255,at=Math.min(o,p,P),mt=Math.max(o,p,P),St=NaN,kt=mt-at,Lt=(mt+at)/2;return kt?(o===mt?St=(p-P)/kt+(p0&&Lt<1?0:St,new Ma(St,kt,Lt,r.opacity)}function ga(r,o,p,P){return arguments.length===1?ta(r):new Ma(r,o,p,P==null?1:P)}function Ma(r,o,p,P){this.h=+r,this.s=+o,this.l=+p,this.opacity=+P}or(Ma,ga,Zn(ur,{brighter:function(r){return r=r==null?Sr:Math.pow(Sr,r),new Ma(this.h,this.s,this.l*r,this.opacity)},darker:function(r){return r=r==null?Tr:Math.pow(Tr,r),new Ma(this.h,this.s,this.l*r,this.opacity)},rgb:function(){var r=this.h%360+(this.h<0)*360,o=isNaN(r)||isNaN(this.s)?0:this.s,p=this.l,P=p+(p<.5?p:1-p)*o,at=2*p-P;return new ki(yu(r>=240?r-240:r+120,at,P),yu(r,at,P),yu(r<120?r+240:r-120,at,P),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var r=this.opacity;return r=isNaN(r)?1:Math.max(0,Math.min(1,r)),(r===1?"hsl(":"hsla(")+(this.h||0)+", "+(this.s||0)*100+"%, "+(this.l||0)*100+"%"+(r===1?")":", "+r+")")}}));function yu(r,o,p){return(r<60?o+(p-o)*r/60:r<180?p:r<240?o+(p-o)*(240-r)/60:o)*255}function yl(r,o,p,P,at){var mt=r*r,St=mt*r;return((1-3*r+3*mt-St)*o+(4-6*mt+3*St)*p+(1+3*r+3*mt-3*St)*P+St*at)/6}function vu(r){var o=r.length-1;return function(p){var P=p<=0?p=0:p>=1?(p=1,o-1):Math.floor(p*o),at=r[P],mt=r[P+1],St=P>0?r[P-1]:2*at-mt,kt=P180||p<-180?p-360*Math.round(p/360):p):xu(isNaN(r)?o:r)}function ls(r){return(r=+r)==1?la:function(o,p){return p-o?Gp(o,p,r):xu(isNaN(o)?p:o)}}function la(r,o){var p=o-r;return p?Ih(r,p):xu(isNaN(r)?o:r)}const bu=function r(o){var p=ls(o);function P(at,mt){var St=p((at=so(at)).r,(mt=so(mt)).r),kt=p(at.g,mt.g),Lt=p(at.b,mt.b),Ut=la(at.opacity,mt.opacity);return function(qt){return at.r=St(qt),at.g=kt(qt),at.b=Lt(qt),at.opacity=Ut(qt),at+""}}return P.gamma=r,P}(1);function td(r){return function(o){var p=o.length,P=new Array(p),at=new Array(p),mt=new Array(p),St,kt;for(St=0;Stp&&(mt=o.slice(p,mt),kt[St]?kt[St]+=mt:kt[++St]=mt),(P=P[0])===(at=at[0])?kt[St]?kt[St]+=at:kt[++St]=at:(kt[++St]=null,Lt.push({i:St,x:_s(P,at)})),p=nd.lastIndex;return p=0&&r._call.call(null,o),r=r._next;--ci}function Hh(){us=(Ya=Ra.now())+Ul,ci=Ci=0;try{ec()}finally{ci=0,$p(),us=0}}function qp(){var r=Ra.now(),o=r-Ya;o>Ao&&(Ul-=o,Ya=r)}function $p(){for(var r,o=Ea,p,P=1/0;o;)o._call?(P>o._time&&(P=o._time),r=o,o=o._next):(p=o._next,o._next=null,o=r?r._next=p:Ea=p);So=r,Rg(P)}function Rg(r){if(!ci){Ci&&(Ci=clearTimeout(Ci));var o=r-us;o>24?(r<1/0&&(Ci=setTimeout(Hh,r-Ra.now()-Ul)),wi&&(wi=clearInterval(wi))):(wi||(Ya=Ra.now(),wi=setInterval(qp,Ao)),ci=1,nv(Hh))}}function Wh(r,o,p){var P=new Uh;return o=o==null?0:+o,P.restart(function(at){P.stop(),r(at+o)},o,p),P}var Lg=dt("start","end","cancel","interrupt"),Ig=[],rv=0,jg=1,Xp=2,Fg=3,ab=4,Kp=5,Zp=6;function id(r,o,p,P,at,mt){var St=r.__transition;if(!St)r.__transition={};else if(p in St)return;sb(r,p,{name:o,index:P,group:at,on:Lg,tween:Ig,time:mt.time,delay:mt.delay,duration:mt.duration,ease:mt.ease,timer:null,state:rv})}function Ss(r,o){var p=ka(r,o);if(p.state>rv)throw new Error("too late; already scheduled");return p}function Xs(r,o){var p=ka(r,o);if(p.state>Fg)throw new Error("too late; already running");return p}function ka(r,o){var p=r.__transition;if(!p||!(p=p[o]))throw new Error("transition not found");return p}function sb(r,o,p){var P=r.__transition,at;P[o]=p,p.timer=rd(mt,0,p.time);function mt(Ut){p.state=jg,p.timer.restart(St,p.delay,p.time),p.delay<=Ut&&St(Ut-p.delay)}function St(Ut){var qt,ie,Zt,_e;if(p.state!==jg)return Lt();for(qt in P)if(_e=P[qt],_e.name===p.name){if(_e.state===Fg)return Wh(St);_e.state===ab?(_e.state=Zp,_e.timer.stop(),_e.on.call("interrupt",r,r.__data__,_e.index,_e.group),delete P[qt]):+qtXp&&P.state180?qt+=360:qt-Ut>180&&(Ut+=360),Zt.push({i:ie.push(at(ie)+"rotate(",null,P)-2,x:_s(Ut,qt)})):qt&&ie.push(at(ie)+"rotate("+qt+P)}function kt(Ut,qt,ie,Zt){Ut!==qt?Zt.push({i:ie.push(at(ie)+"skewX(",null,P)-2,x:_s(Ut,qt)}):qt&&ie.push(at(ie)+"skewX("+qt+P)}function Lt(Ut,qt,ie,Zt,_e,Le){if(Ut!==ie||qt!==Zt){var De=_e.push(at(_e)+"scale(",null,",",null,")");Le.push({i:De-4,x:_s(Ut,ie)},{i:De-2,x:_s(qt,Zt)})}else(ie!==1||Zt!==1)&&_e.push(at(_e)+"scale("+ie+","+Zt+")")}return function(Ut,qt){var ie=[],Zt=[];return Ut=r(Ut),qt=r(qt),mt(Ut.translateX,Ut.translateY,qt.translateX,qt.translateY,ie,Zt),St(Ut.rotate,qt.rotate,ie,Zt),kt(Ut.skewX,qt.skewX,ie,Zt),Lt(Ut.scaleX,Ut.scaleY,qt.scaleX,qt.scaleY,ie,Zt),Ut=qt=null,function(_e){for(var Le=-1,De=Zt.length,Be;++Le=0&&(o=o.slice(0,p)),!o||o==="start"})}function hv(r,o,p){var P,at,mt=mb(o)?Ss:Xs;return function(){var St=mt(this,r),kt=St.on;kt!==P&&(at=(P=kt).copy()).on(o,p),St.on=at}}function tm(r,o){var p=this._id;return arguments.length<2?ka(this.node(),p).on.on(r):this.each(hv(p,r,o))}function fd(r){return function(){var o=this.parentNode;for(var p in this.__transition)if(+p!==r)return;o&&o.removeChild(this)}}function em(){return this.on("end.remove",fd(this._id))}function nm(r){var o=this._name,p=this._id;typeof r!="function"&&(r=bt(r));for(var P=this._groups,at=P.length,mt=new Array(at),St=0;Stjg&&P.name===o)return new cs([[r]],lm,o,+at)}return null}function um(r){return function(){return r}}function md(r,o,p){this.target=r,this.type=o,this.selection=p}function cm(){Mr.stopImmediatePropagation()}function wl(){Mr.preventDefault(),Mr.stopImmediatePropagation()}var gd={name:"drag"},yd={name:"space"},Wc={name:"handle"},Qh={name:"center"};function Ks(r){return[+r[0],+r[1]]}function Mu(r){return[Ks(r[0]),Ks(r[1])]}function Rs(r){return function(o){return mr(o,Mr.touches,r)}}var Yc={name:"x",handles:["w","e"].map(qc),input:function(r,o){return r==null?null:[[+r[0],o[0][1]],[+r[1],o[1][1]]]},output:function(r){return r&&[r[0][0],r[1][0]]}},Vc={name:"y",handles:["n","s"].map(qc),input:function(r,o){return r==null?null:[[o[0][0],+r[0]],[o[1][0],+r[1]]]},output:function(r){return r&&[r[0][1],r[1][1]]}},Zs={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(qc),input:function(r){return r==null?null:Mu(r)},output:function(r){return r}},ya={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},ac={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},_l={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Eu={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Gc={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function qc(r){return{type:r}}function Kg(){return!Mr.ctrlKey&&!Mr.button}function Zg(){var r=this.ownerSVGElement||this;return r.hasAttribute("viewBox")?(r=r.viewBox.baseVal,[[r.x,r.y],[r.x+r.width,r.y+r.height]]):[[0,0],[r.width.baseVal.value,r.height.baseVal.value]]}function Ms(){return navigator.maxTouchPoints||"ontouchstart"in this}function Va(r){for(;!r.__brush;)if(!(r=r.parentNode))return;return r.__brush}function Lo(r){return r[0][0]===r[1][0]||r[0][1]===r[1][1]}function Ls(r){var o=r.__brush;return o?o.dim.output(o.selection):null}function mv(){return hm(Yc)}function Yl(){return hm(Vc)}function Qg(){return hm(Zs)}function hm(r){var o=Zg,p=Kg,P=Ms,at=!0,mt=dt("start","brush","end"),St=6,kt;function Lt(Be){var We=Be.property("__brush",De).selectAll(".overlay").data([qc("overlay")]);We.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",ya.overlay).merge(We).each(function(){var nn=Va(this).extent;sn(this).attr("x",nn[0][0]).attr("y",nn[0][1]).attr("width",nn[1][0]-nn[0][0]).attr("height",nn[1][1]-nn[0][1])}),Be.selectAll(".selection").data([qc("selection")]).enter().append("rect").attr("class","selection").attr("cursor",ya.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var cn=Be.selectAll(".handle").data(r.handles,function(nn){return nn.type});cn.exit().remove(),cn.enter().append("rect").attr("class",function(nn){return"handle handle--"+nn.type}).attr("cursor",function(nn){return ya[nn.type]}),Be.each(Ut).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",Zt).filter(P).on("touchstart.brush",Zt).on("touchmove.brush",_e).on("touchend.brush touchcancel.brush",Le).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}Lt.move=function(Be,We){Be.selection?Be.on("start.brush",function(){qt(this,arguments).beforestart().start()}).on("interrupt.brush end.brush",function(){qt(this,arguments).end()}).tween("brush",function(){var cn=this,nn=cn.__brush,ln=qt(cn,arguments),Pn=nn.selection,qn=r.input(typeof We=="function"?We.apply(this,arguments):We,nn.extent),Un=dn(Pn,qn);function gr(ir){nn.selection=ir===1&&qn===null?null:Un(ir),Ut.call(cn),ln.brush()}return Pn!==null&&qn!==null?gr:gr(1)}):Be.each(function(){var cn=this,nn=arguments,ln=cn.__brush,Pn=r.input(typeof We=="function"?We.apply(cn,nn):We,ln.extent),qn=qt(cn,nn).beforestart();wu(cn),ln.selection=Pn===null?null:Pn,Ut.call(cn),qn.start().brush().end()})},Lt.clear=function(Be){Lt.move(Be,null)};function Ut(){var Be=sn(this),We=Va(this).selection;We?(Be.selectAll(".selection").style("display",null).attr("x",We[0][0]).attr("y",We[0][1]).attr("width",We[1][0]-We[0][0]).attr("height",We[1][1]-We[0][1]),Be.selectAll(".handle").style("display",null).attr("x",function(cn){return cn.type[cn.type.length-1]==="e"?We[1][0]-St/2:We[0][0]-St/2}).attr("y",function(cn){return cn.type[0]==="s"?We[1][1]-St/2:We[0][1]-St/2}).attr("width",function(cn){return cn.type==="n"||cn.type==="s"?We[1][0]-We[0][0]+St:St}).attr("height",function(cn){return cn.type==="e"||cn.type==="w"?We[1][1]-We[0][1]+St:St})):Be.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function qt(Be,We,cn){var nn=Be.__brush.emitter;return nn&&(!cn||!nn.clean)?nn:new ie(Be,We,cn)}function ie(Be,We,cn){this.that=Be,this.args=We,this.state=Be.__brush,this.active=0,this.clean=cn}ie.prototype={beforestart:function(){return++this.active===1&&(this.state.emitter=this,this.starting=!0),this},start:function(){return this.starting?(this.starting=!1,this.emit("start")):this.emit("brush"),this},brush:function(){return this.emit("brush"),this},end:function(){return--this.active===0&&(delete this.state.emitter,this.emit("end")),this},emit:function(Be){Vt(new md(Lt,Be,r.output(this.state.selection)),mt.apply,mt,[Be,this.that,this.args])}};function Zt(){if(kt&&!Mr.touches||!p.apply(this,arguments))return;var Be=this,We=Mr.target.__data__.type,cn=(at&&Mr.metaKey?We="overlay":We)==="selection"?gd:at&&Mr.altKey?Qh:Wc,nn=r===Vc?null:Eu[We],ln=r===Yc?null:Gc[We],Pn=Va(Be),qn=Pn.extent,Un=Pn.selection,gr=qn[0][0],ir,cr,er=qn[0][1],fn,$n,kr=qn[1][0],Wn,_r,Jr=qn[1][1],$r,ei,Ni=0,Ti=0,fo,Bo=nn&&ln&&at&&Mr.shiftKey,po,Na,uu=Mr.touches?Rs(Mr.changedTouches[0].identifier):Or,cu=uu(Be),Ku=cu,Gr=qt(Be,arguments,!0).beforestart();We==="overlay"?(Un&&(fo=!0),Pn.selection=Un=[[ir=r===Vc?gr:cu[0],fn=r===Yc?er:cu[1]],[Wn=r===Vc?kr:ir,$r=r===Yc?Jr:fn]]):(ir=Un[0][0],fn=Un[0][1],Wn=Un[1][0],$r=Un[1][1]),cr=ir,$n=fn,_r=Wn,ei=$r;var Ii=sn(Be).attr("pointer-events","none"),Qi=Ii.selectAll(".overlay").attr("cursor",ya[We]);if(Mr.touches)Gr.moved=oa,Gr.ended=Os;else{var Ir=sn(Mr.view).on("mousemove.brush",oa,!0).on("mouseup.brush",Os,!0);at&&Ir.on("keydown.brush",Mo,!0).on("keyup.brush",Sh,!0),Yn(Mr.view)}cm(),wu(Be),Ut.call(Be),Gr.start();function oa(){var Gs=uu(Be);Bo&&!po&&!Na&&(Math.abs(Gs[0]-Ku[0])>Math.abs(Gs[1]-Ku[1])?Na=!0:po=!0),Ku=Gs,fo=!0,wl(),oo()}function oo(){var Gs;switch(Ni=Ku[0]-cu[0],Ti=Ku[1]-cu[1],cn){case yd:case gd:{nn&&(Ni=Math.max(gr-ir,Math.min(kr-Wn,Ni)),cr=ir+Ni,_r=Wn+Ni),ln&&(Ti=Math.max(er-fn,Math.min(Jr-$r,Ti)),$n=fn+Ti,ei=$r+Ti);break}case Wc:{nn<0?(Ni=Math.max(gr-ir,Math.min(kr-ir,Ni)),cr=ir+Ni,_r=Wn):nn>0&&(Ni=Math.max(gr-Wn,Math.min(kr-Wn,Ni)),cr=ir,_r=Wn+Ni),ln<0?(Ti=Math.max(er-fn,Math.min(Jr-fn,Ti)),$n=fn+Ti,ei=$r):ln>0&&(Ti=Math.max(er-$r,Math.min(Jr-$r,Ti)),$n=fn,ei=$r+Ti);break}case Qh:{nn&&(cr=Math.max(gr,Math.min(kr,ir-Ni*nn)),_r=Math.max(gr,Math.min(kr,Wn+Ni*nn))),ln&&($n=Math.max(er,Math.min(Jr,fn-Ti*ln)),ei=Math.max(er,Math.min(Jr,$r+Ti*ln)));break}}_r0&&(ir=cr-Ni),ln<0?$r=ei-Ti:ln>0&&(fn=$n-Ti),cn=yd,Qi.attr("cursor",ya.selection),oo());break}default:return}wl()}function Sh(){switch(Mr.keyCode){case 16:{Bo&&(po=Na=Bo=!1,oo());break}case 18:{cn===Qh&&(nn<0?Wn=_r:nn>0&&(ir=cr),ln<0?$r=ei:ln>0&&(fn=$n),cn=Wc,oo());break}case 32:{cn===yd&&(Mr.altKey?(nn&&(Wn=_r-Ni*nn,ir=cr+Ni*nn),ln&&($r=ei-Ti*ln,fn=$n+Ti*ln),cn=Qh):(nn<0?Wn=_r:nn>0&&(ir=cr),ln<0?$r=ei:ln>0&&(fn=$n),cn=Wc),Qi.attr("cursor",ya[We]),oo());break}default:return}wl()}}function _e(){qt(this,arguments).moved()}function Le(){qt(this,arguments).ended()}function De(){var Be=this.__brush||{selection:null};return Be.extent=Mu(o.apply(this,arguments)),Be.dim=r,Be}return Lt.extent=function(Be){return arguments.length?(o=typeof Be=="function"?Be:um(Mu(Be)),Lt):o},Lt.filter=function(Be){return arguments.length?(p=typeof Be=="function"?Be:um(!!Be),Lt):p},Lt.touchable=function(Be){return arguments.length?(P=typeof Be=="function"?Be:um(!!Be),Lt):P},Lt.handleSize=function(Be){return arguments.length?(St=+Be,Lt):St},Lt.keyModifiers=function(Be){return arguments.length?(at=!!Be,Lt):at},Lt.on=function(){var Be=mt.on.apply(mt,arguments);return Be===mt?Lt:Be},Lt}var Jg=Math.cos,vd=Math.sin,t0=Math.PI,ku=t0/2,e0=t0*2,yb=Math.max;function fm(r){return function(o,p){return r(o.source.value+o.target.value,p.source.value+p.target.value)}}function dm(){var r=0,o=null,p=null,P=null;function at(mt){var St=mt.length,kt=[],Lt=(0,T.y1)(St),Ut=[],qt=[],ie=qt.groups=new Array(St),Zt=new Array(St*St),_e,Le,De,Be,We,cn;for(_e=0,We=-1;++WeSl)if(!(Math.abs(qt*kt-Lt*Ut)>Sl)||!at)this._+="L"+(this._x1=r)+","+(this._y1=o);else{var Zt=p-mt,_e=P-St,Le=kt*kt+Lt*Lt,De=Zt*Zt+_e*_e,Be=Math.sqrt(Le),We=Math.sqrt(ie),cn=at*Math.tan((Tu-Math.acos((Le+ie-De)/(2*Be*We)))/2),nn=cn/We,ln=cn/Be;Math.abs(nn-1)>Sl&&(this._+="L"+(r+nn*Ut)+","+(o+nn*qt)),this._+="A"+at+","+at+",0,0,"+ +(qt*Zt>Ut*_e)+","+(this._x1=r+ln*kt)+","+(this._y1=o+ln*Lt)}},arc:function(r,o,p,P,at,mt){r=+r,o=+o,p=+p,mt=!!mt;var St=p*Math.cos(P),kt=p*Math.sin(P),Lt=r+St,Ut=o+kt,qt=1^mt,ie=mt?P-at:at-P;if(p<0)throw new Error("negative radius: "+p);this._x1===null?this._+="M"+Lt+","+Ut:(Math.abs(this._x1-Lt)>Sl||Math.abs(this._y1-Ut)>Sl)&&(this._+="L"+Lt+","+Ut),p&&(ie<0&&(ie=ie%xd+xd),ie>pm?this._+="A"+p+","+p+",0,1,"+qt+","+(r-St)+","+(o-kt)+"A"+p+","+p+",0,1,"+qt+","+(this._x1=Lt)+","+(this._y1=Ut):ie>Sl&&(this._+="A"+p+","+p+",0,"+ +(ie>=Tu)+","+qt+","+(this._x1=r+p*Math.cos(at))+","+(this._y1=o+p*Math.sin(at))))},rect:function(r,o,p,P){this._+="M"+(this._x0=this._x1=+r)+","+(this._y0=this._y1=+o)+"h"+ +p+"v"+ +P+"h"+-p+"Z"},toString:function(){return this._}};const Au=mm;function ar(r){return r.source}function n0(r){return r.target}function ea(r){return r.radius}function Qs(r){return r.startAngle}function sc(r){return r.endAngle}function bd(){var r=ar,o=n0,p=ea,P=Qs,at=sc,mt=null;function St(){var kt,Lt=gv.call(arguments),Ut=r.apply(this,Lt),qt=o.apply(this,Lt),ie=+p.apply(this,(Lt[0]=Ut,Lt)),Zt=P.apply(this,Lt)-ku,_e=at.apply(this,Lt)-ku,Le=ie*Jg(Zt),De=ie*vd(Zt),Be=+p.apply(this,(Lt[0]=qt,Lt)),We=P.apply(this,Lt)-ku,cn=at.apply(this,Lt)-ku;if(mt||(mt=kt=Au()),mt.moveTo(Le,De),mt.arc(0,0,ie,Zt,_e),(Zt!==We||_e!==cn)&&(mt.quadraticCurveTo(0,0,Be*Jg(We),Be*vd(We)),mt.arc(0,0,Be,We,cn)),mt.quadraticCurveTo(0,0,Le,De),mt.closePath(),kt)return mt=null,kt+""||null}return St.radius=function(kt){return arguments.length?(p=typeof kt=="function"?kt:Jh(+kt),St):p},St.startAngle=function(kt){return arguments.length?(P=typeof kt=="function"?kt:Jh(+kt),St):P},St.endAngle=function(kt){return arguments.length?(at=typeof kt=="function"?kt:Jh(+kt),St):at},St.source=function(kt){return arguments.length?(r=kt,St):r},St.target=function(kt){return arguments.length?(o=kt,St):o},St.context=function(kt){return arguments.length?(mt=kt==null?null:kt,St):mt},St}var Is="$";function Ga(){}Ga.prototype=Ta.prototype={constructor:Ga,has:function(r){return Is+r in this},get:function(r){return this[Is+r]},set:function(r,o){return this[Is+r]=o,this},remove:function(r){var o=Is+r;return o in this&&delete this[o]},clear:function(){for(var r in this)r[0]===Is&&delete this[r]},keys:function(){var r=[];for(var o in this)o[0]===Is&&r.push(o.slice(1));return r},values:function(){var r=[];for(var o in this)o[0]===Is&&r.push(this[o]);return r},entries:function(){var r=[];for(var o in this)o[0]===Is&&r.push({key:o.slice(1),value:this[o]});return r},size:function(){var r=0;for(var o in this)o[0]===Is&&++r;return r},empty:function(){for(var r in this)if(r[0]===Is)return!1;return!0},each:function(r){for(var o in this)o[0]===Is&&r(this[o],o.slice(1),this)}};function Ta(r,o){var p=new Ga;if(r instanceof Ga)r.each(function(kt,Lt){p.set(Lt,kt)});else if(Array.isArray(r)){var P=-1,at=r.length,mt;if(o==null)for(;++P=r.length)return p!=null&&kt.sort(p),P!=null?P(kt):kt;for(var ie=-1,Zt=kt.length,_e=r[Lt++],Le,De,Be=Ou(),We,cn=Ut();++ier.length)return kt;var Ut,qt=o[Lt-1];return P!=null&&Lt>=r.length?Ut=kt.entries():(Ut=[],kt.each(function(ie,Zt){Ut.push({key:Zt,values:St(ie,Lt)})})),qt!=null?Ut.sort(function(ie,Zt){return qt(ie.key,Zt.key)}):Ut}return at={object:function(kt){return mt(kt,0,Pu,lc)},map:function(kt){return mt(kt,0,wd,_d)},entries:function(kt){return St(mt(kt,0,wd,_d),0)},key:function(kt){return r.push(kt),at},sortKeys:function(kt){return o[r.length-1]=kt,at},sortValues:function(kt){return p=kt,at},rollup:function(kt){return P=kt,at}}}function Pu(){return{}}function lc(r,o,p){r[o]=p}function wd(){return Ou()}function _d(r,o,p){r.set(o,p)}function tf(){}var $c=Ou.prototype;tf.prototype=Sd.prototype={constructor:tf,has:$c.has,add:function(r){return r+="",this[Is+r]=r,this},remove:$c.remove,clear:$c.clear,values:$c.keys,size:$c.size,empty:$c.empty,each:$c.each};function Sd(r,o){var p=new tf;if(r instanceof tf)r.each(function(mt){p.add(mt)});else if(r){var P=-1,at=r.length;if(o==null)for(;++Pvv?Math.pow(r,.3333333333333333):r/Ki+af}function uc(r){return r>Js?r*r*r:Ki*(r-af)}function Zc(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,.4166666666666667)-.055)}function cc(r){return(r/=255)<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function na(r){if(r instanceof js)return new js(r.h,r.c,r.l,r.opacity);if(r instanceof zi||(r=Uo(r)),r.a===0&&r.b===0)return new js(NaN,0P!=_e>P&&p<(Zt-Ut)*(P-qt)/(_e-qt)+Ut&&(at=-at)}return at}function s0(r,o,p){var P;return Td(r,o,p)&&l0(r[P=+(r[0]===o[0])],p[P],o[P])}function Td(r,o,p){return(o[0]-r[0])*(p[1]-r[1])===(p[0]-r[0])*(o[1]-r[1])}function l0(r,o,p){return r<=o&&o<=p||p<=o&&o<=r}function Ad(){}var El=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Od(){var r=1,o=1,p=T.zr,P=Lt;function at(Ut){var qt=p(Ut);if(Array.isArray(qt))qt=qt.slice().sort(i0);else{var ie=(0,T.Xx)(Ut),Zt=ie[0],_e=ie[1];qt=(0,T.sG)(Zt,_e,qt),qt=(0,T.y1)(Math.floor(Zt/qt)*qt,Math.floor(_e/qt)*qt,qt)}return qt.map(function(Le){return mt(Ut,Le)})}function mt(Ut,qt){var ie=[],Zt=[];return St(Ut,qt,function(_e){P(_e,Ut,qt),cf(_e)>0?ie.push([_e]):Zt.push(_e)}),Zt.forEach(function(_e){for(var Le=0,De=ie.length,Be;Le=qt,El[We<<1].forEach(ln);++Le=qt,El[Be|We<<1].forEach(ln);for(El[We<<0].forEach(ln);++De=qt,cn=Ut[De*r]>=qt,El[We<<1|cn<<2].forEach(ln);++Le=qt,nn=cn,cn=Ut[De*r+Le+1]>=qt,El[Be|We<<1|cn<<2|nn<<3].forEach(ln);El[We|cn<<3].forEach(ln)}for(Le=-1,cn=Ut[De*r]>=qt,El[cn<<2].forEach(ln);++Le=qt,El[cn<<2|nn<<3].forEach(ln);El[cn<<3].forEach(ln);function ln(Pn){var qn=[Pn[0][0]+Le,Pn[0][1]+De],Un=[Pn[1][0]+Le,Pn[1][1]+De],gr=kt(qn),ir=kt(Un),cr,er;(cr=_e[gr])?(er=Zt[ir])?(delete _e[cr.end],delete Zt[er.start],cr===er?(cr.ring.push(Un),ie(cr.ring)):Zt[cr.start]=_e[er.end]={start:cr.start,end:er.end,ring:cr.ring.concat(er.ring)}):(delete _e[cr.end],cr.ring.push(Un),_e[cr.end=ir]=cr):(cr=Zt[ir])?(er=_e[gr])?(delete Zt[cr.start],delete _e[er.end],cr===er?(cr.ring.push(Un),ie(cr.ring)):Zt[er.start]=_e[cr.end]={start:er.start,end:cr.end,ring:er.ring.concat(cr.ring)}):(delete Zt[cr.start],cr.ring.unshift(qn),Zt[cr.start=gr]=cr):Zt[gr]=_e[ir]={start:gr,end:ir,ring:[qn,Un]}}}function kt(Ut){return Ut[0]*2+Ut[1]*(r+1)*4}function Lt(Ut,qt,ie){Ut.forEach(function(Zt){var _e=Zt[0],Le=Zt[1],De=_e|0,Be=Le|0,We,cn=qt[Be*r+De];_e>0&&_e0&&Le0)||!(ie>0))throw new Error("invalid size");return r=qt,o=ie,at},at.thresholds=function(Ut){return arguments.length?(p=typeof Ut=="function"?Ut:Array.isArray(Ut)?Bs(uf.call(Ut)):Bs(Ut),at):p},at.smooth=function(Ut){return arguments.length?(P=Ut?Lt:Ad,at):P===Lt},at}function mc(r,o,p){for(var P=r.width,at=r.height,mt=(p<<1)+1,St=0;St=p&&(kt>=mt&&(Lt-=r.data[kt-mt+St*P]),o.data[kt-p+St*P]=Lt/Math.min(kt+1,P-1+mt-kt,mt))}function hf(r,o,p){for(var P=r.width,at=r.height,mt=(p<<1)+1,St=0;St=p&&(kt>=mt&&(Lt-=r.data[St+(kt-mt)*P]),o.data[St+(kt-p)*P]=Lt/Math.min(kt+1,at-1+mt-kt,mt))}function vb(r){return r[0]}function u0(r){return r[1]}function Nu(){return 1}function c0(){var r=vb,o=u0,p=Nu,P=960,at=500,mt=20,St=2,kt=mt*3,Lt=P+kt*2>>St,Ut=at+kt*2>>St,qt=Bs(20);function ie(We){var cn=new Float32Array(Lt*Ut),nn=new Float32Array(Lt*Ut);We.forEach(function(qn,Un,gr){var ir=+r(qn,Un,gr)+kt>>St,cr=+o(qn,Un,gr)+kt>>St,er=+p(qn,Un,gr);ir>=0&&ir=0&&cr>St),hf({width:Lt,height:Ut,data:nn},{width:Lt,height:Ut,data:cn},mt>>St),mc({width:Lt,height:Ut,data:cn},{width:Lt,height:Ut,data:nn},mt>>St),hf({width:Lt,height:Ut,data:nn},{width:Lt,height:Ut,data:cn},mt>>St),mc({width:Lt,height:Ut,data:cn},{width:Lt,height:Ut,data:nn},mt>>St),hf({width:Lt,height:Ut,data:nn},{width:Lt,height:Ut,data:cn},mt>>St);var ln=qt(cn);if(!Array.isArray(ln)){var Pn=(0,T.T9)(cn);ln=(0,T.sG)(0,Pn,ln),ln=(0,T.y1)(0,Math.floor(Pn/ln)*ln,ln),ln.shift()}return Od().thresholds(ln).size([Lt,Ut])(cn).map(Zt)}function Zt(We){return We.value*=Math.pow(2,-2*St),We.coordinates.forEach(_e),We}function _e(We){We.forEach(Le)}function Le(We){We.forEach(De)}function De(We){We[0]=We[0]*Math.pow(2,St)-kt,We[1]=We[1]*Math.pow(2,St)-kt}function Be(){return kt=mt*3,Lt=P+kt*2>>St,Ut=at+kt*2>>St,ie}return ie.x=function(We){return arguments.length?(r=typeof We=="function"?We:Bs(+We),ie):r},ie.y=function(We){return arguments.length?(o=typeof We=="function"?We:Bs(+We),ie):o},ie.weight=function(We){return arguments.length?(p=typeof We=="function"?We:Bs(+We),ie):p},ie.size=function(We){if(!arguments.length)return[P,at];var cn=Math.ceil(We[0]),nn=Math.ceil(We[1]);if(!(cn>=0)&&!(cn>=0))throw new Error("invalid size");return P=cn,at=nn,Be()},ie.cellSize=function(We){if(!arguments.length)return 1<=1))throw new Error("invalid cell size");return St=Math.floor(Math.log(We)/Math.LN2),Be()},ie.thresholds=function(We){return arguments.length?(qt=typeof We=="function"?We:Array.isArray(We)?Bs(uf.call(We)):Bs(We),ie):qt},ie.bandwidth=function(We){if(!arguments.length)return Math.sqrt(mt*(mt+1));if(!((We=+We)>=0))throw new Error("invalid bandwidth");return mt=Math.round((Math.sqrt(4*We*We+1)-1)/2),Be()},ie}function Pd(r){return function(){return r}}function gc(r,o,p,P,at,mt,St,kt,Lt,Ut){this.target=r,this.type=o,this.subject=p,this.identifier=P,this.active=at,this.x=mt,this.y=St,this.dx=kt,this.dy=Lt,this._=Ut}gc.prototype.on=function(){var r=this._.on.apply(this._,arguments);return r===this._?this:r};function xv(){return!Mr.ctrlKey&&!Mr.button}function Nd(){return this.parentNode}function xb(r){return r==null?{x:Mr.x,y:Mr.y}:r}function W2(){return navigator.maxTouchPoints||"ontouchstart"in this}function zs(){var r=xv,o=Nd,p=xb,P=W2,at={},mt=dt("start","drag","end"),St=0,kt,Lt,Ut,qt,ie=0;function Zt(ln){ln.on("mousedown.drag",_e).filter(P).on("touchstart.drag",Be).on("touchmove.drag",We).on("touchend.drag touchcancel.drag",cn).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function _e(){if(!(qt||!r.apply(this,arguments))){var ln=nn("mouse",o.apply(this,arguments),Or,this,arguments);ln&&(sn(Mr.view).on("mousemove.drag",Le,!0).on("mouseup.drag",De,!0),Yn(Mr.view),kn(),Ut=!1,kt=Mr.clientX,Lt=Mr.clientY,ln("start"))}}function Le(){if(Bn(),!Ut){var ln=Mr.clientX-kt,Pn=Mr.clientY-Lt;Ut=ln*ln+Pn*Pn>ie}at.mouse("drag")}function De(){sn(Mr.view).on("mousemove.drag mouseup.drag",null),fr(Mr.view,Ut),Bn(),at.mouse("end")}function Be(){if(r.apply(this,arguments)){var ln=Mr.changedTouches,Pn=o.apply(this,arguments),qn=ln.length,Un,gr;for(Un=0;Un9999?"+"+hs(r,6):hs(r,4)}function bb(r){var o=r.getUTCHours(),p=r.getUTCMinutes(),P=r.getUTCSeconds(),at=r.getUTCMilliseconds();return isNaN(r)?"Invalid Date":_v(r.getUTCFullYear(),4)+"-"+hs(r.getUTCMonth()+1,2)+"-"+hs(r.getUTCDate(),2)+(at?"T"+hs(o,2)+":"+hs(p,2)+":"+hs(P,2)+"."+hs(at,3)+"Z":P?"T"+hs(o,2)+":"+hs(p,2)+":"+hs(P,2)+"Z":p||o?"T"+hs(o,2)+":"+hs(p,2)+"Z":"")}function Id(r){var o=new RegExp('["'+r+` +\r]`),p=r.charCodeAt(0);function P(ie,Zt){var _e,Le,De=at(ie,function(Be,We){if(_e)return _e(Be,We-1);Le=Be,_e=Zt?wv(Be,Zt):bv(Be)});return De.columns=Le||[],De}function at(ie,Zt){var _e=[],Le=ie.length,De=0,Be=0,We,cn=Le<=0,nn=!1;ie.charCodeAt(Le-1)===Rd&&--Le,ie.charCodeAt(Le-1)===Ld&&--Le;function ln(){if(cn)return ff;if(nn)return nn=!1,ts;var qn,Un=De,gr;if(ie.charCodeAt(Un)===Dd){for(;De++=Le?cn=!0:(gr=ie.charCodeAt(De++))===Rd?nn=!0:gr===Ld&&(nn=!0,ie.charCodeAt(De)===Rd&&++De),ie.slice(Un+1,qn-1).replace(/""/g,'"')}for(;De=(ie=(kt+Ut)/2))?kt=ie:Ut=ie,(Be=p>=(Zt=(Lt+qt)/2))?Lt=Zt:qt=Zt,at=mt,!(mt=mt[We=Be<<1|De]))return at[We]=St,r;if(_e=+r._x.call(null,mt.data),Le=+r._y.call(null,mt.data),o===_e&&p===Le)return St.next=mt,at?at[We]=St:r._root=St,r;do at=at?at[We]=new Array(4):r._root=new Array(4),(De=o>=(ie=(kt+Ut)/2))?kt=ie:Ut=ie,(Be=p>=(Zt=(Lt+qt)/2))?Lt=Zt:qt=Zt;while((We=Be<<1|De)===(cn=(Le>=Zt)<<1|_e>=ie));return at[cn]=mt,at[We]=St,r}function b0(r){var o,p,P=r.length,at,mt,St=new Array(P),kt=new Array(P),Lt=1/0,Ut=1/0,qt=-1/0,ie=-1/0;for(p=0;pqt&&(qt=at),mtie&&(ie=mt));if(Lt>qt||Ut>ie)return this;for(this.cover(Lt,Ut).cover(qt,ie),p=0;pr||r>=at||P>o||o>=mt;)switch(Ut=(oqt||(kt=Le.y0)>ie||(Lt=Le.x1)=We)<<1|r>=Be)&&(Le=Zt[Zt.length-1],Zt[Zt.length-1]=Zt[Zt.length-1-De],Zt[Zt.length-1-De]=Le)}else{var cn=r-+this._x.call(null,_e.data),nn=o-+this._y.call(null,_e.data),ln=cn*cn+nn*nn;if(ln=(Zt=(St+Lt)/2))?St=Zt:Lt=Zt,(De=ie>=(_e=(kt+Ut)/2))?kt=_e:Ut=_e,o=p,!(p=p[Be=De<<1|Le]))return this;if(!p.length)break;(o[Be+1&3]||o[Be+2&3]||o[Be+3&3])&&(P=o,We=Be)}for(;p.data!==r;)if(at=p,!(p=p.next))return this;return(mt=p.next)&&delete p.next,at?(mt?at.next=mt:delete at.next,this):o?(mt?o[Be]=mt:delete o[Be],(p=o[0]||o[1]||o[2]||o[3])&&p===(o[3]||o[2]||o[1]||o[0])&&!p.length&&(P?P[We]=p:this._root=p),this):(this._root=mt,this)}function Lu(r){for(var o=0,p=r.length;oie.index){var cr=Zt-Un.x-Un.vx,er=_e-Un.y-Un.vy,fn=cr*cr+er*er;fnZt+ir||Pn_e+ir||qn<_e-ir}}function St(Lt){if(Lt.data)return Lt.r=p[Lt.data.index];for(var Ut=Lt.r=0;Ut<4;++Ut)Lt[Ut]&&Lt[Ut].r>Lt.r&&(Lt.r=Lt[Ut].r)}function kt(){if(o){var Lt,Ut=o.length,qt;for(p=new Array(Ut),Lt=0;Lt1?(De==null?kt.remove(Le):kt.set(Le,_e(De)),o):kt.get(Le)},find:function(Le,De,Be){var We=0,cn=r.length,nn,ln,Pn,qn,Un;for(Be==null?Be=1/0:Be*=Be,We=0;We1?(Ut.on(Le,De),o):Ut.on(Le)}}}function Mb(){var r,o,p,P=ca(-30),at,mt=1,St=1/0,kt=.81;function Lt(Zt){var _e,Le=r.length,De=ja(r,bc,Pv).visitAfter(qt);for(p=Zt,_e=0;_e=St)return;(Zt.data!==o||Zt.next)&&(Be===0&&(Be=Ru(),nn+=Be*Be),We===0&&(We=Ru(),nn+=We*We),nn=1e21?r.toLocaleString("en").replace(/,/g,""):r.toString(10)}function wf(r,o){if((p=(r=o?r.toExponential(o-1):r.toExponential()).indexOf("e"))<0)return null;var p,P=r.slice(0,p);return[P.length>1?P[0]+P.slice(2):P,+r.slice(p+1)]}function Ol(r){return r=wf(Math.abs(r)),r?r[1]:NaN}function Dv(r,o){return function(p,P){for(var at=p.length,mt=[],St=0,kt=r[0],Lt=0;at>0&&kt>0&&(Lt+kt+1>P&&(kt=Math.max(1,P-Lt)),mt.push(p.substring(at-=kt,at+kt)),!((Lt+=kt+1)>P));)kt=r[St=(St+1)%r.length];return mt.reverse().join(o)}}function ha(r){return function(o){return o.replace(/[0-9]/g,function(p){return r[+p]})}}var Tb=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function _f(r){if(!(o=Tb.exec(r)))throw new Error("invalid format: "+r);var o;return new M0({fill:o[1],align:o[2],sign:o[3],symbol:o[4],zero:o[5],width:o[6],comma:o[7],precision:o[8]&&o[8].slice(1),trim:o[9],type:o[10]})}_f.prototype=M0.prototype;function M0(r){this.fill=r.fill===void 0?" ":r.fill+"",this.align=r.align===void 0?">":r.align+"",this.sign=r.sign===void 0?"-":r.sign+"",this.symbol=r.symbol===void 0?"":r.symbol+"",this.zero=!!r.zero,this.width=r.width===void 0?void 0:+r.width,this.comma=!!r.comma,this.precision=r.precision===void 0?void 0:+r.precision,this.trim=!!r.trim,this.type=r.type===void 0?"":r.type+""}M0.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Xa(r){t:for(var o=r.length,p=1,P=-1,at;p0&&(P=0);break}return P>0?r.slice(0,P)+r.slice(at+1):r}var E0;function Rv(r,o){var p=wf(r,o);if(!p)return r+"";var P=p[0],at=p[1],mt=at-(E0=Math.max(-8,Math.min(8,Math.floor(at/3)))*3)+1,St=P.length;return mt===St?P:mt>St?P+new Array(mt-St+1).join("0"):mt>0?P.slice(0,mt)+"."+P.slice(mt):"0."+new Array(1-mt).join("0")+wf(r,Math.max(0,o+mt-1))[0]}function k0(r,o){var p=wf(r,o);if(!p)return r+"";var P=p[0],at=p[1];return at<0?"0."+new Array(-at).join("0")+P:P.length>at+1?P.slice(0,at+1)+"."+P.slice(at+1):P+new Array(at-P.length+2).join("0")}const rl={"%":function(r,o){return(r*100).toFixed(o)},b:function(r){return Math.round(r).toString(2)},c:function(r){return r+""},d:ah,e:function(r,o){return r.toExponential(o)},f:function(r,o){return r.toFixed(o)},g:function(r,o){return r.toPrecision(o)},o:function(r){return Math.round(r).toString(8)},p:function(r,o){return k0(r*100,o)},r:k0,s:Rv,X:function(r){return Math.round(r).toString(16).toUpperCase()},x:function(r){return Math.round(r).toString(16)}};function sh(r){return r}var T0=Array.prototype.map,Bu=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function qd(r){var o=r.grouping===void 0||r.thousands===void 0?sh:Dv(T0.call(r.grouping,Number),r.thousands+""),p=r.currency===void 0?"":r.currency[0]+"",P=r.currency===void 0?"":r.currency[1]+"",at=r.decimal===void 0?".":r.decimal+"",mt=r.numerals===void 0?sh:ha(T0.call(r.numerals,String)),St=r.percent===void 0?"%":r.percent+"",kt=r.minus===void 0?"-":r.minus+"",Lt=r.nan===void 0?"NaN":r.nan+"";function Ut(ie){ie=_f(ie);var Zt=ie.fill,_e=ie.align,Le=ie.sign,De=ie.symbol,Be=ie.zero,We=ie.width,cn=ie.comma,nn=ie.precision,ln=ie.trim,Pn=ie.type;Pn==="n"?(cn=!0,Pn="g"):rl[Pn]||(nn===void 0&&(nn=12),ln=!0,Pn="g"),(Be||Zt==="0"&&_e==="=")&&(Be=!0,Zt="0",_e="=");var qn=De==="$"?p:De==="#"&&/[boxX]/.test(Pn)?"0"+Pn.toLowerCase():"",Un=De==="$"?P:/[%p]/.test(Pn)?St:"",gr=rl[Pn],ir=/[defgprs%]/.test(Pn);nn=nn===void 0?6:/[gprs]/.test(Pn)?Math.max(1,Math.min(21,nn)):Math.max(0,Math.min(20,nn));function cr(er){var fn=qn,$n=Un,kr,Wn,_r;if(Pn==="c")$n=gr(er)+$n,er="";else{er=+er;var Jr=er<0||1/er<0;if(er=isNaN(er)?Lt:gr(Math.abs(er),nn),ln&&(er=Xa(er)),Jr&&+er==0&&Le!=="+"&&(Jr=!1),fn=(Jr?Le==="("?Le:kt:Le==="-"||Le==="("?"":Le)+fn,$n=(Pn==="s"?Bu[8+E0/3]:"")+$n+(Jr&&Le==="("?")":""),ir){for(kr=-1,Wn=er.length;++kr_r||_r>57){$n=(_r===46?at+er.slice(kr+1):er.slice(kr))+$n,er=er.slice(0,kr);break}}}cn&&!Be&&(er=o(er,1/0));var qr=fn.length+er.length+$n.length,ii=qr>1)+fn+er+$n+ii.slice(qr);break;default:er=ii+fn+er+$n;break}return mt(er)}return cr.toString=function(){return ie+""},cr}function qt(ie,Zt){var _e=Ut((ie=_f(ie),ie.type="f",ie)),Le=Math.max(-8,Math.min(8,Math.floor(Ol(Zt)/3)))*3,De=Math.pow(10,-Le),Be=Bu[8+Le/3];return function(We){return _e(De*We)+Be}}return{format:Ut,formatPrefix:qt}}var Pl,lh,$d;A0({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function A0(r){return Pl=qd(r),lh=Pl.format,$d=Pl.formatPrefix,Pl}function O0(r){return Math.max(0,-Ol(Math.abs(r)))}function il(r,o){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ol(o)/3)))*3-Ol(Math.abs(r)))}function Om(r,o){return r=Math.abs(r),o=Math.abs(o)-r,Math.max(0,Ol(o)-Ol(r))+1}function Nl(){return new Xd}function Xd(){this.reset()}Xd.prototype={constructor:Xd,reset:function(){this.s=this.t=0},add:function(r){Kd(zu,r,this.t),Kd(this,zu.s,this.s),this.s?this.t+=zu.t:this.s=zu.t},valueOf:function(){return this.s}};var zu=new Xd;function Kd(r,o,p){var P=r.s=o+p,at=P-o,mt=P-at;r.t=o-mt+(p-at)}var hi=1e-6,Sf=1e-12,Wi=Math.PI,Io=Wi/2,Uu=Wi/4,Oa=Wi*2,ho=180/Wi,di=Wi/180,Ji=Math.abs,Cf=Math.atan,Fa=Math.atan2,Qr=Math.cos,wc=Math.ceil,Lv=Math.exp,Pm=Math.floor,s=Math.log,m=Math.pow,ut=Math.sin,Tt=Math.sign||function(r){return r>0?1:r<0?-1:0},Yt=Math.sqrt,ue=Math.tan;function ze(r){return r>1?0:r<-1?Wi:Math.acos(r)}function yn(r){return r>1?Io:r<-1?-Io:Math.asin(r)}function An(r){return(r=ut(r/2))*r}function Vn(){}function Er(r,o){r&&Cr.hasOwnProperty(r.type)&&Cr[r.type](r,o)}var Pr={Feature:function(r,o){Er(r.geometry,o)},FeatureCollection:function(r,o){for(var p=r.features,P=-1,at=p.length;++P=0?1:-1,at=P*p,mt=Qr(o),St=ut(o),kt=pi*St,Lt=Xr*mt+kt*Qr(at),Ut=kt*P*ut(at);Zo.add(Fa(Ut,Lt)),Lr=r,Xr=mt,pi=St}function Ab(r){return Gn.reset(),Yr(r,ei),Gn*2}function Iv(r){return[Fa(r[1],r[0]),yn(r[2])]}function Zd(r){var o=r[0],p=r[1],P=Qr(p);return[P*Qr(o),P*ut(o),ut(p)]}function P0(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}function Nm(r,o){return[r[1]*o[2]-r[2]*o[1],r[2]*o[0]-r[0]*o[2],r[0]*o[1]-r[1]*o[0]]}function Ob(r,o){r[0]+=o[0],r[1]+=o[1],r[2]+=o[2]}function N0(r,o){return[r[0]*o,r[1]*o,r[2]*o]}function jv(r){var o=Yt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);r[0]/=o,r[1]/=o,r[2]/=o}var jo,ol,wa,al,Qd,Vk,Dm,uh,ch=Nl(),Wu,Yu,hh={point:Fv,lineStart:Bv,lineEnd:H2,polygonStart:function(){hh.point=zv,hh.lineStart=Gk,hh.lineEnd=Rm,ch.reset(),ei.polygonStart()},polygonEnd:function(){ei.polygonEnd(),hh.point=Fv,hh.lineStart=Bv,hh.lineEnd=H2,Zo<0?(jo=-(wa=180),ol=-(al=90)):ch>hi?al=90:ch<-hi&&(ol=-90),Yu[0]=jo,Yu[1]=wa},sphere:function(){jo=-(wa=180),ol=-(al=90)}};function Fv(r,o){Wu.push(Yu=[jo=r,wa=r]),oal&&(al=o)}function U2(r,o){var p=Zd([r*di,o*di]);if(uh){var P=Nm(uh,p),at=[P[1],-P[0],0],mt=Nm(at,P);jv(mt),mt=Iv(mt);var St=r-Qd,kt=St>0?1:-1,Lt=mt[0]*ho*kt,Ut,qt=Ji(St)>180;qt^(kt*Qdal&&(al=Ut)):(Lt=(Lt+360)%360-180,qt^(kt*Qdal&&(al=o))),qt?rHs(jo,wa)&&(wa=r):Hs(r,wa)>Hs(jo,wa)&&(jo=r):wa>=jo?(rwa&&(wa=r)):r>Qd?Hs(jo,r)>Hs(jo,wa)&&(wa=r):Hs(r,wa)>Hs(jo,wa)&&(jo=r)}else Wu.push(Yu=[jo=r,wa=r]);oal&&(al=o),uh=p,Qd=r}function Bv(){hh.point=U2}function H2(){Yu[0]=jo,Yu[1]=wa,hh.point=Fv,uh=null}function zv(r,o){if(uh){var p=r-Qd;ch.add(Ji(p)>180?p+(p>0?360:-360):p)}else Vk=r,Dm=o;ei.point(r,o),U2(r,o)}function Gk(){ei.lineStart()}function Rm(){zv(Vk,Dm),ei.lineEnd(),Ji(ch)>hi&&(jo=-(wa=180)),Yu[0]=jo,Yu[1]=wa,uh=null}function Hs(r,o){return(o-=r)<0?o+360:o}function qk(r,o){return r[0]-o[0]}function Pb(r,o){return r[0]<=r[1]?r[0]<=o&&o<=r[1]:oHs(P[0],P[1])&&(P[1]=at[1]),Hs(at[0],P[1])>Hs(P[0],P[1])&&(P[0]=at[0])):mt.push(P=at);for(St=-1/0,p=mt.length-1,o=0,P=mt[p];o<=p;P=at,++o)at=mt[o],(kt=Hs(P[1],at[0]))>St&&(St=kt,jo=at[0],wa=P[1])}return Wu=Yu=null,jo===1/0||ol===1/0?[[NaN,NaN],[NaN,NaN]]:[[jo,ol],[wa,al]]}var Lm,Jd,Mf,D0,Ef,Uv,Vu,R0,Hv,Wv,Nb,tp,Db,Ts,sl,ll,_c={sphere:Vn,point:Sc,lineStart:W2,lineEnd:Rb,polygonStart:function(){_c.lineStart=Zk,_c.lineEnd=Qk},polygonEnd:function(){_c.lineStart=W2,_c.lineEnd=Rb}};function Sc(r,o){r*=di,o*=di;var p=Qr(o);L0(p*Qr(r),p*ut(r),ut(o))}function L0(r,o,p){++Lm,Mf+=(r-Mf)/Lm,D0+=(o-D0)/Lm,Ef+=(p-Ef)/Lm}function W2(){_c.point=Xk}function Xk(r,o){r*=di,o*=di;var p=Qr(o);Ts=p*Qr(r),sl=p*ut(r),ll=ut(o),_c.point=Kk,L0(Ts,sl,ll)}function Kk(r,o){r*=di,o*=di;var p=Qr(o),P=p*Qr(r),at=p*ut(r),mt=ut(o),St=Fa(Yt((St=sl*mt-ll*at)*St+(St=ll*P-Ts*mt)*St+(St=Ts*at-sl*P)*St),Ts*P+sl*at+ll*mt);Jd+=St,Uv+=St*(Ts+(Ts=P)),Vu+=St*(sl+(sl=at)),R0+=St*(ll+(ll=mt)),L0(Ts,sl,ll)}function Rb(){_c.point=Sc}function Zk(){_c.point=Jk}function Qk(){Y2(tp,Db),_c.point=Sc}function Jk(r,o){tp=r,Db=o,r*=di,o*=di,_c.point=Y2;var p=Qr(o);Ts=p*Qr(r),sl=p*ut(r),ll=ut(o),L0(Ts,sl,ll)}function Y2(r,o){r*=di,o*=di;var p=Qr(o),P=p*Qr(r),at=p*ut(r),mt=ut(o),St=sl*mt-ll*at,kt=ll*P-Ts*mt,Lt=Ts*at-sl*P,Ut=Yt(St*St+kt*kt+Lt*Lt),qt=yn(Ut),ie=Ut&&-qt/Ut;Hv+=ie*St,Wv+=ie*kt,Nb+=ie*Lt,Jd+=qt,Uv+=qt*(Ts+(Ts=P)),Vu+=qt*(sl+(sl=at)),R0+=qt*(ll+(ll=mt)),L0(Ts,sl,ll)}function tT(r){Lm=Jd=Mf=D0=Ef=Uv=Vu=R0=Hv=Wv=Nb=0,Yr(r,_c);var o=Hv,p=Wv,P=Nb,at=o*o+p*p+P*P;return atWi?r+Math.round(-r/Oa)*Oa:r,o]}Yv.invert=Yv;function Vv(r,o,p){return(r%=Oa)?o||p?Lb(Gv(r),nT(o,p)):Gv(r):o||p?nT(o,p):Yv}function eT(r){return function(o,p){return o+=r,[o>Wi?o-Oa:o<-Wi?o+Oa:o,p]}}function Gv(r){var o=eT(r);return o.invert=eT(-r),o}function nT(r,o){var p=Qr(r),P=ut(r),at=Qr(o),mt=ut(o);function St(kt,Lt){var Ut=Qr(Lt),qt=Qr(kt)*Ut,ie=ut(kt)*Ut,Zt=ut(Lt),_e=Zt*p+qt*P;return[Fa(ie*at-_e*mt,qt*p-Zt*P),yn(_e*at+ie*mt)]}return St.invert=function(kt,Lt){var Ut=Qr(Lt),qt=Qr(kt)*Ut,ie=ut(kt)*Ut,Zt=ut(Lt),_e=Zt*at-ie*mt;return[Fa(ie*at+Zt*mt,qt*p+_e*P),yn(_e*p-qt*P)]},St}function V2(r){r=Vv(r[0]*di,r[1]*di,r.length>2?r[2]*di:0);function o(p){return p=r(p[0]*di,p[1]*di),p[0]*=ho,p[1]*=ho,p}return o.invert=function(p){return p=r.invert(p[0]*di,p[1]*di),p[0]*=ho,p[1]*=ho,p},o}function G2(r,o,p,P,at,mt){if(p){var St=Qr(o),kt=ut(o),Lt=P*p;at==null?(at=o+P*Oa,mt=o-Lt/2):(at=I0(St,at),mt=I0(St,mt),(P>0?atmt)&&(at+=P*Oa));for(var Ut,qt=at;P>0?qt>mt:qt1&&r.push(r.pop().concat(r.shift()))},result:function(){var p=r;return r=[],o=null,p}}}function Fm(r,o){return Ji(r[0]-o[0])=0;--kt)at.point((ie=qt[kt])[0],ie[1]);else P(Zt.x,Zt.p.x,-1,at);Zt=Zt.p}Zt=Zt.o,qt=Zt.z,_e=!_e}while(!Zt.v);at.lineEnd()}}}function $2(r){if(o=r.length){for(var o,p=0,P=r[0],at;++p=0?1:-1,ir=gr*Un,cr=ir>Wi,er=De*Pn;if(Ib.add(Fa(er*gr*ut(ir),Be*qn+er*Qr(ir))),St+=cr?Un+gr*Oa:Un,cr^_e>=p^nn>=p){var fn=Nm(Zd(Zt),Zd(cn));jv(fn);var $n=Nm(mt,fn);jv($n);var kr=(cr^Un>=0?-1:1)*yn($n[2]);(P>kr||P===kr&&(fn[0]||fn[1]))&&(kt+=cr^Un>=0?1:-1)}}return(St<-hi||St0){for(Lt||(at.polygonStart(),Lt=!0),at.lineStart(),qn=0;qn1&&ln&2&&Pn.push(Pn.pop().concat(Pn.shift())),qt.push(Pn.filter(rT))}}return Zt}}function rT(r){return r.length>1}function iT(r,o){return((r=r.x)[0]<0?r[1]-Io-hi:Io-r[1])-((o=o.x)[0]<0?o[1]-Io-hi:Io-o[1])}const Fb=K2(function(){return!0},oT,K5,[-Wi,-Io]);function oT(r){var o=NaN,p=NaN,P=NaN,at;return{lineStart:function(){r.lineStart(),at=1},point:function(mt,St){var kt=mt>0?Wi:-Wi,Lt=Ji(mt-o);Ji(Lt-Wi)0?Io:-Io),r.point(P,p),r.lineEnd(),r.lineStart(),r.point(kt,p),r.point(mt,p),at=0):P!==kt&&Lt>=Wi&&(Ji(o-P)hi?Cf((ut(o)*(mt=Qr(P))*ut(p)-ut(P)*(at=Qr(o))*ut(r))/(at*mt*St)):(o+P)/2}function K5(r,o,p,P){var at;if(r==null)at=p*Io,P.point(-Wi,at),P.point(0,at),P.point(Wi,at),P.point(Wi,0),P.point(Wi,-at),P.point(0,-at),P.point(-Wi,-at),P.point(-Wi,0),P.point(-Wi,at);else if(Ji(r[0]-o[0])>hi){var mt=r[0]0,at=Ji(o)>hi;function mt(qt,ie,Zt,_e){G2(_e,r,p,Zt,qt,ie)}function St(qt,ie){return Qr(qt)*Qr(ie)>o}function kt(qt){var ie,Zt,_e,Le,De;return{lineStart:function(){Le=_e=!1,De=1},point:function(Be,We){var cn=[Be,We],nn,ln=St(Be,We),Pn=P?ln?0:Ut(Be,We):ln?Ut(Be+(Be<0?Wi:-Wi),We):0;if(!ie&&(Le=_e=ln)&&qt.lineStart(),ln!==_e&&(nn=Lt(ie,cn),(!nn||Fm(ie,nn)||Fm(cn,nn))&&(cn[2]=1)),ln!==_e)De=0,ln?(qt.lineStart(),nn=Lt(cn,ie),qt.point(nn[0],nn[1])):(nn=Lt(ie,cn),qt.point(nn[0],nn[1],2),qt.lineEnd()),ie=nn;else if(at&&ie&&P^ln){var qn;!(Pn&Zt)&&(qn=Lt(cn,ie,!0))&&(De=0,P?(qt.lineStart(),qt.point(qn[0][0],qn[0][1]),qt.point(qn[1][0],qn[1][1]),qt.lineEnd()):(qt.point(qn[1][0],qn[1][1]),qt.lineEnd(),qt.lineStart(),qt.point(qn[0][0],qn[0][1],3)))}ln&&(!ie||!Fm(ie,cn))&&qt.point(cn[0],cn[1]),ie=cn,_e=ln,Zt=Pn},lineEnd:function(){_e&&qt.lineEnd(),ie=null},clean:function(){return De|(Le&&_e)<<1}}}function Lt(qt,ie,Zt){var _e=Zd(qt),Le=Zd(ie),De=[1,0,0],Be=Nm(_e,Le),We=P0(Be,Be),cn=Be[0],nn=We-cn*cn;if(!nn)return!Zt&&qt;var ln=o*We/nn,Pn=-o*cn/nn,qn=Nm(De,Be),Un=N0(De,ln),gr=N0(Be,Pn);Ob(Un,gr);var ir=qn,cr=P0(Un,ir),er=P0(ir,ir),fn=cr*cr-er*(P0(Un,Un)-1);if(!(fn<0)){var $n=Yt(fn),kr=N0(ir,(-cr-$n)/er);if(Ob(kr,Un),kr=Iv(kr),!Zt)return kr;var Wn=qt[0],_r=ie[0],Jr=qt[1],qr=ie[1],ii;_r0^kr[1]<(Ji(kr[0]-Wn)Wi^(Wn<=kr[0]&&kr[0]<=_r)){var oo=N0(ir,(-cr+$n)/er);return Ob(oo,Un),[kr,Iv(oo)]}}}function Ut(qt,ie){var Zt=P?r:Wi-r,_e=0;return qt<-Zt?_e|=1:qt>Zt&&(_e|=2),ie<-Zt?_e|=4:ie>Zt&&(_e|=8),_e}return K2(St,kt,mt,P?[0,-r]:[-Wi,r-Wi])}function sT(r,o,p,P,at,mt){var St=r[0],kt=r[1],Lt=o[0],Ut=o[1],qt=0,ie=1,Zt=Lt-St,_e=Ut-kt,Le;if(Le=p-St,!(!Zt&&Le>0)){if(Le/=Zt,Zt<0){if(Le0){if(Le>ie)return;Le>qt&&(qt=Le)}if(Le=at-St,!(!Zt&&Le<0)){if(Le/=Zt,Zt<0){if(Le>ie)return;Le>qt&&(qt=Le)}else if(Zt>0){if(Le0)){if(Le/=_e,_e<0){if(Le0){if(Le>ie)return;Le>qt&&(qt=Le)}if(Le=mt-kt,!(!_e&&Le<0)){if(Le/=_e,_e<0){if(Le>ie)return;Le>qt&&(qt=Le)}else if(_e>0){if(Le0&&(r[0]=St+qt*Zt,r[1]=kt+qt*_e),ie<1&&(o[0]=St+ie*Zt,o[1]=kt+ie*_e),!0}}}}}var Fr=1e9,$v=-Fr;function Xv(r,o,p,P){function at(Ut,qt){return r<=Ut&&Ut<=p&&o<=qt&&qt<=P}function mt(Ut,qt,ie,Zt){var _e=0,Le=0;if(Ut==null||(_e=St(Ut,ie))!==(Le=St(qt,ie))||Lt(Ut,qt)<0^ie>0)do Zt.point(_e===0||_e===3?r:p,_e>1?P:o);while((_e=(_e+ie+4)%4)!==Le);else Zt.point(qt[0],qt[1])}function St(Ut,qt){return Ji(Ut[0]-r)0?0:3:Ji(Ut[0]-p)0?2:1:Ji(Ut[1]-o)0?1:0:qt>0?3:2}function kt(Ut,qt){return Lt(Ut.x,qt.x)}function Lt(Ut,qt){var ie=St(Ut,1),Zt=St(qt,1);return ie!==Zt?ie-Zt:ie===0?qt[1]-Ut[1]:ie===1?Ut[0]-qt[0]:ie===2?Ut[1]-qt[1]:qt[0]-Ut[0]}return function(Ut){var qt=Ut,ie=q2(),Zt,_e,Le,De,Be,We,cn,nn,ln,Pn,qn,Un={point:gr,lineStart:fn,lineEnd:$n,polygonStart:cr,polygonEnd:er};function gr(Wn,_r){at(Wn,_r)&&qt.point(Wn,_r)}function ir(){for(var Wn=0,_r=0,Jr=_e.length;_rP&&(vo-Oo)*(P-oo)>(_a-oo)*(r-Oo)&&++Wn:_a<=P&&(vo-Oo)*(P-oo)<(_a-oo)*(r-Oo)&&--Wn;return Wn}function cr(){qt=ie,Zt=[],_e=[],qn=!0}function er(){var Wn=ir(),_r=qn&&Wn,Jr=(Zt=(0,T.Am)(Zt)).length;(_r||Jr)&&(Ut.polygonStart(),_r&&(Ut.lineStart(),mt(null,null,1,Ut),Ut.lineEnd()),Jr&&qv(Zt,kt,Wn,mt,Ut),Ut.polygonEnd()),qt=Ut,Zt=_e=Le=null}function fn(){Un.point=kr,_e&&_e.push(Le=[]),Pn=!0,ln=!1,cn=nn=NaN}function $n(){Zt&&(kr(De,Be),We&&ln&&ie.rejoin(),Zt.push(ie.result())),Un.point=gr,ln&&qt.lineEnd()}function kr(Wn,_r){var Jr=at(Wn,_r);if(_e&&Le.push([Wn,_r]),Pn)De=Wn,Be=_r,We=Jr,Pn=!1,Jr&&(qt.lineStart(),qt.point(Wn,_r));else if(Jr&&ln)qt.point(Wn,_r);else{var qr=[cn=Math.max($v,Math.min(Fr,cn)),nn=Math.max($v,Math.min(Fr,nn))],ii=[Wn=Math.max($v,Math.min(Fr,Wn)),_r=Math.max($v,Math.min(Fr,_r))];sT(qr,ii,r,o,p,P)?(ln||(qt.lineStart(),qt.point(qr[0],qr[1])),qt.point(ii[0],ii[1]),Jr||qt.lineEnd(),qn=!1):Jr&&(qt.lineStart(),qt.point(Wn,_r),qn=!1)}cn=Wn,nn=_r,ln=Jr}return Un}}function lT(){var r=0,o=0,p=960,P=500,at,mt,St;return St={stream:function(kt){return at&&mt===kt?at:at=Xv(r,o,p,P)(mt=kt)},extent:function(kt){return arguments.length?(r=+kt[0][0],o=+kt[0][1],p=+kt[1][0],P=+kt[1][1],at=mt=null,St):[[r,o],[p,P]]}}}var F0=Nl(),Pa,Xl,Kv,fh={sphere:Vn,point:Vn,lineStart:Z5,lineEnd:Vn,polygonStart:Vn,polygonEnd:Vn};function Z5(){fh.point=B0,fh.lineEnd=Q5}function Q5(){fh.point=fh.lineEnd=Vn}function B0(r,o){r*=di,o*=di,Pa=r,Xl=ut(o),Kv=Qr(o),fh.point=J5}function J5(r,o){r*=di,o*=di;var p=ut(o),P=Qr(o),at=Ji(r-Pa),mt=Qr(at),St=ut(at),kt=P*St,Lt=Kv*p-Xl*P*mt,Ut=Xl*p+Kv*P*mt;F0.add(Fa(Yt(kt*kt+Lt*Lt),Ut)),Pa=r,Xl=p,Kv=P}function Bm(r){return F0.reset(),Yr(r,fh),+F0}var kf=[null,null],Kl={type:"LineString",coordinates:kf};function gs(r,o){return kf[0]=r,kf[1]=o,Bm(Kl)}var Bb={Feature:function(r,o){return z0(r.geometry,o)},FeatureCollection:function(r,o){for(var p=r.features,P=-1,at=p.length;++P0&&(at=gs(r[mt],r[mt-1]),at>0&&p<=at&&P<=at&&(p+P-at)*(1-Math.pow((p-P)/at,2))hi}).map(Zt)).concat((0,T.y1)(wc(mt/Ut)*Ut,at,Ut).filter(function(nn){return Ji(nn%ie)>hi}).map(_e))}return We.lines=function(){return cn().map(function(nn){return{type:"LineString",coordinates:nn}})},We.outline=function(){return{type:"Polygon",coordinates:[Le(P).concat(De(St).slice(1),Le(p).reverse().slice(1),De(kt).reverse().slice(1))]}},We.extent=function(nn){return arguments.length?We.extentMajor(nn).extentMinor(nn):We.extentMinor()},We.extentMajor=function(nn){return arguments.length?(P=+nn[0][0],p=+nn[1][0],kt=+nn[0][1],St=+nn[1][1],P>p&&(nn=P,P=p,p=nn),kt>St&&(nn=kt,kt=St,St=nn),We.precision(Be)):[[P,kt],[p,St]]},We.extentMinor=function(nn){return arguments.length?(o=+nn[0][0],r=+nn[1][0],mt=+nn[0][1],at=+nn[1][1],o>r&&(nn=o,o=r,r=nn),mt>at&&(nn=mt,mt=at,at=nn),We.precision(Be)):[[o,mt],[r,at]]},We.step=function(nn){return arguments.length?We.stepMajor(nn).stepMinor(nn):We.stepMinor()},We.stepMajor=function(nn){return arguments.length?(qt=+nn[0],ie=+nn[1],We):[qt,ie]},We.stepMinor=function(nn){return arguments.length?(Lt=+nn[0],Ut=+nn[1],We):[Lt,Ut]},We.precision=function(nn){return arguments.length?(Be=+nn,Zt=zm(mt,at,90),_e=Zv(o,r,Be),Le=zm(kt,St,90),De=Zv(P,p,Be),We):Be},We.extentMajor([[-180,-90+hi],[180,90-hi]]).extentMinor([[-180,-80-hi],[180,80+hi]])}function Qv(){return Ub()()}function tP(r,o){var p=r[0]*di,P=r[1]*di,at=o[0]*di,mt=o[1]*di,St=Qr(P),kt=ut(P),Lt=Qr(mt),Ut=ut(mt),qt=St*Qr(p),ie=St*ut(p),Zt=Lt*Qr(at),_e=Lt*ut(at),Le=2*yn(Yt(An(mt-P)+St*Lt*An(at-p))),De=ut(Le),Be=Le?function(We){var cn=ut(We*=Le)/De,nn=ut(Le-We)/De,ln=nn*qt+cn*Zt,Pn=nn*ie+cn*_e,qn=nn*kt+cn*Ut;return[Fa(Pn,ln)*ho,Fa(qn,Yt(ln*ln+Pn*Pn))*ho]}:function(){return[p*ho,P*ho]};return Be.distance=Le,Be}function Tf(r){return r}var Um=Nl(),Jv=Nl(),rp,t1,Ws,J2,ip={point:Vn,lineStart:Vn,lineEnd:Vn,polygonStart:function(){ip.lineStart=eP,ip.lineEnd=rP},polygonEnd:function(){ip.lineStart=ip.lineEnd=ip.point=Vn,Um.add(Ji(Jv)),Jv.reset()},result:function(){var r=Um/2;return Um.reset(),r}};function eP(){ip.point=nP}function nP(r,o){ip.point=uT,rp=Ws=r,t1=J2=o}function uT(r,o){Jv.add(J2*r-Ws*o),Ws=r,J2=o}function rP(){uT(rp,t1)}const H0=ip;var op=1/0,e1=op,dh=-op,W0=dh,Af={point:Hm,lineStart:Vn,lineEnd:Vn,polygonStart:Vn,polygonEnd:Vn,result:function(){var r=[[op,e1],[dh,W0]];return dh=W0=-(e1=op=1/0),r}};function Hm(r,o){rdh&&(dh=r),oW0&&(W0=o)}const Y0=Af;var n1=0,r1=0,Wm=0,Ym=0,i1=0,Vm=0,Hb=0,V0=0,o1=0,Wb,tS,Mc,Zl,Gu={point:ap,lineStart:Yb,lineEnd:Vb,polygonStart:function(){Gu.lineStart=eS,Gu.lineEnd=cT},polygonEnd:function(){Gu.point=ap,Gu.lineStart=Yb,Gu.lineEnd=Vb},result:function(){var r=o1?[Hb/o1,V0/o1]:Vm?[Ym/Vm,i1/Vm]:Wm?[n1/Wm,r1/Wm]:[NaN,NaN];return n1=r1=Wm=Ym=i1=Vm=Hb=V0=o1=0,r}};function ap(r,o){n1+=r,r1+=o,++Wm}function Yb(){Gu.point=Ba}function Ba(r,o){Gu.point=ph,ap(Mc=r,Zl=o)}function ph(r,o){var p=r-Mc,P=o-Zl,at=Yt(p*p+P*P);Ym+=at*(Mc+r)/2,i1+=at*(Zl+o)/2,Vm+=at,ap(Mc=r,Zl=o)}function Vb(){Gu.point=ap}function eS(){Gu.point=nS}function cT(){a1(Wb,tS)}function nS(r,o){Gu.point=a1,ap(Wb=Mc=r,tS=Zl=o)}function a1(r,o){var p=r-Mc,P=o-Zl,at=Yt(p*p+P*P);Ym+=at*(Mc+r)/2,i1+=at*(Zl+o)/2,Vm+=at,at=Zl*r-Mc*o,Hb+=at*(Mc+r),V0+=at*(Zl+o),o1+=at*3,ap(Mc=r,Zl=o)}const s1=Gu;function Gb(r){this._context=r}Gb.prototype={_radius:4.5,pointRadius:function(r){return this._radius=r,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(r,o){switch(this._point){case 0:{this._context.moveTo(r,o),this._point=1;break}case 1:{this._context.lineTo(r,o);break}default:{this._context.moveTo(r+this._radius,o),this._context.arc(r,o,this._radius,0,Oa);break}}},result:Vn};var l1=Nl(),u1,qb,rS,Rl,Gm,c1={point:Vn,lineStart:function(){c1.point=$b},lineEnd:function(){u1&&iS(qb,rS),c1.point=Vn},polygonStart:function(){u1=!0},polygonEnd:function(){u1=null},result:function(){var r=+l1;return l1.reset(),r}};function $b(r,o){c1.point=iS,qb=Rl=r,rS=Gm=o}function iS(r,o){Rl-=r,Gm-=o,l1.add(Yt(Rl*Rl+Gm*Gm)),Rl=r,Gm=o}const rs=c1;function hT(){this._string=[]}hT.prototype={_radius:4.5,_circle:oS(4.5),pointRadius:function(r){return(r=+r)!==this._radius&&(this._radius=r,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(r,o){switch(this._point){case 0:{this._string.push("M",r,",",o),this._point=1;break}case 1:{this._string.push("L",r,",",o);break}default:{this._circle==null&&(this._circle=oS(this._radius)),this._string.push("M",r,",",o,this._circle);break}}},result:function(){if(this._string.length){var r=this._string.join("");return this._string=[],r}else return null}};function oS(r){return"m0,"+r+"a"+r+","+r+" 0 1,1 0,"+-2*r+"a"+r+","+r+" 0 1,1 0,"+2*r+"z"}function sp(r,o){var p=4.5,P,at;function mt(St){return St&&(typeof p=="function"&&at.pointRadius(+p.apply(this,arguments)),Yr(St,P(at))),at.result()}return mt.area=function(St){return Yr(St,P(H0)),H0.result()},mt.measure=function(St){return Yr(St,P(rs)),rs.result()},mt.bounds=function(St){return Yr(St,P(Y0)),Y0.result()},mt.centroid=function(St){return Yr(St,P(s1)),s1.result()},mt.projection=function(St){return arguments.length?(P=St==null?(r=null,Tf):(r=St).stream,mt):r},mt.context=function(St){return arguments.length?(at=St==null?(o=null,new hT):new Gb(o=St),typeof p!="function"&&at.pointRadius(p),mt):o},mt.pointRadius=function(St){return arguments.length?(p=typeof St=="function"?St:(at.pointRadius(+St),+St),mt):p},mt.projection(r).context(o)}function G0(r){return{stream:lp(r)}}function lp(r){return function(o){var p=new h1;for(var P in r)p[P]=r[P];return p.stream=o,p}}function h1(){}h1.prototype={constructor:h1,point:function(r,o){this.stream.point(r,o)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function f1(r,o,p){var P=r.clipExtent&&r.clipExtent();return r.scale(150).translate([0,0]),P!=null&&r.clipExtent(null),Yr(p,r.stream(Y0)),o(Y0.result()),P!=null&&r.clipExtent(P),r}function d1(r,o,p){return f1(r,function(P){var at=o[1][0]-o[0][0],mt=o[1][1]-o[0][1],St=Math.min(at/(P[1][0]-P[0][0]),mt/(P[1][1]-P[0][1])),kt=+o[0][0]+(at-St*(P[1][0]+P[0][0]))/2,Lt=+o[0][1]+(mt-St*(P[1][1]+P[0][1]))/2;r.scale(150*St).translate([kt,Lt])},p)}function up(r,o,p){return d1(r,[[0,0],o],p)}function q0(r,o,p){return f1(r,function(P){var at=+o,mt=at/(P[1][0]-P[0][0]),St=(at-mt*(P[1][0]+P[0][0]))/2,kt=-mt*P[0][1];r.scale(150*mt).translate([St,kt])},p)}function Xb(r,o,p){return f1(r,function(P){var at=+o,mt=at/(P[1][1]-P[0][1]),St=-mt*P[0][0],kt=(at-mt*(P[1][1]+P[0][1]))/2;r.scale(150*mt).translate([St,kt])},p)}var fT=16,iP=Qr(30*di);function Kb(r,o){return+o?sS(r,o):aS(r)}function aS(r){return lp({point:function(o,p){o=r(o,p),this.stream.point(o[0],o[1])}})}function sS(r,o){function p(P,at,mt,St,kt,Lt,Ut,qt,ie,Zt,_e,Le,De,Be){var We=Ut-P,cn=qt-at,nn=We*We+cn*cn;if(nn>4*o&&De--){var ln=St+Zt,Pn=kt+_e,qn=Lt+Le,Un=Yt(ln*ln+Pn*Pn+qn*qn),gr=yn(qn/=Un),ir=Ji(Ji(qn)-1)o||Ji((We*$n+cn*kr)/nn-.5)>.3||St*Zt+kt*_e+Lt*Le2?Wn[2]%360*di:0,$n()):[kt*ho,Lt*ho,Ut*ho]},er.angle=function(Wn){return arguments.length?(ie=Wn%360*di,$n()):ie*ho},er.reflectX=function(Wn){return arguments.length?(Zt=Wn?-1:1,$n()):Zt<0},er.reflectY=function(Wn){return arguments.length?(_e=Wn?-1:1,$n()):_e<0},er.precision=function(Wn){return arguments.length?(qn=Kb(Un,Pn=Wn*Wn),kr()):Yt(Pn)},er.fitExtent=function(Wn,_r){return d1(er,Wn,_r)},er.fitSize=function(Wn,_r){return up(er,Wn,_r)},er.fitWidth=function(Wn,_r){return q0(er,Wn,_r)},er.fitHeight=function(Wn,_r){return Xb(er,Wn,_r)};function $n(){var Wn=lS(p,0,0,Zt,_e,ie).apply(null,o(mt,St)),_r=(ie?lS:dT)(p,P-Wn[0],at-Wn[1],Zt,_e,ie);return qt=Vv(kt,Lt,Ut),Un=Lb(o,_r),gr=Lb(qt,Un),qn=Kb(Un,Pn),kr()}function kr(){return ir=cr=null,er}return function(){return o=r.apply(this,arguments),er.invert=o.invert&&fn,$n()}}function Qb(r){var o=0,p=Wi/3,P=Zb(r),at=P(o,p);return at.parallels=function(mt){return arguments.length?P(o=mt[0]*di,p=mt[1]*di):[o*ho,p*ho]},at}function Jb(r){var o=Qr(r);function p(P,at){return[P*o,ut(at)/o]}return p.invert=function(P,at){return[P/o,yn(at*o)]},p}function uS(r,o){var p=ut(r),P=(p+ut(o))/2;if(Ji(P)=.12&&Be<.234&&De>=-.425&&De<-.214?at:Be>=.166&&Be<.234&&De>=-.214&&De<-.115?St:p).invert(Zt)},qt.stream=function(Zt){return r&&o===Zt?r:r=cS([p.stream(o=Zt),at.stream(Zt),St.stream(Zt)])},qt.precision=function(Zt){return arguments.length?(p.precision(Zt),at.precision(Zt),St.precision(Zt),ie()):p.precision()},qt.scale=function(Zt){return arguments.length?(p.scale(Zt),at.scale(Zt*.35),St.scale(Zt),qt.translate(p.translate())):p.scale()},qt.translate=function(Zt){if(!arguments.length)return p.translate();var _e=p.scale(),Le=+Zt[0],De=+Zt[1];return P=p.translate(Zt).clipExtent([[Le-.455*_e,De-.238*_e],[Le+.455*_e,De+.238*_e]]).stream(Ut),mt=at.translate([Le-.307*_e,De+.201*_e]).clipExtent([[Le-.425*_e+hi,De+.12*_e+hi],[Le-.214*_e-hi,De+.234*_e-hi]]).stream(Ut),kt=St.translate([Le-.205*_e,De+.212*_e]).clipExtent([[Le-.214*_e+hi,De+.166*_e+hi],[Le-.115*_e-hi,De+.234*_e-hi]]).stream(Ut),ie()},qt.fitExtent=function(Zt,_e){return d1(qt,Zt,_e)},qt.fitSize=function(Zt,_e){return up(qt,Zt,_e)},qt.fitWidth=function(Zt,_e){return q0(qt,Zt,_e)},qt.fitHeight=function(Zt,_e){return Xb(qt,Zt,_e)};function ie(){return r=o=null,qt}return qt.scale(1070)}function hS(r){return function(o,p){var P=Qr(o),at=Qr(p),mt=r(P*at);return[mt*at*ut(o),mt*ut(p)]}}function $0(r){return function(o,p){var P=Yt(o*o+p*p),at=r(P),mt=ut(at),St=Qr(at);return[Fa(o*mt,P*St),yn(P&&p*mt/P)]}}var tw=hS(function(r){return Yt(2/(1+r))});tw.invert=$0(function(r){return 2*yn(r/2)});function mT(){return Ec(tw).scale(124.75).clipAngle(179.999)}var ew=hS(function(r){return(r=ze(r))&&r/ut(r)});ew.invert=$0(function(r){return r});function gT(){return Ec(ew).scale(79.4188).clipAngle(179.999)}function $m(r,o){return[r,s(ue((Io+o)/2))]}$m.invert=function(r,o){return[r,2*Cf(Lv(o))-Io]};function yT(){return fS($m).scale(961/Oa)}function fS(r){var o=Ec(r),p=o.center,P=o.scale,at=o.translate,mt=o.clipExtent,St=null,kt,Lt,Ut;o.scale=function(ie){return arguments.length?(P(ie),qt()):P()},o.translate=function(ie){return arguments.length?(at(ie),qt()):at()},o.center=function(ie){return arguments.length?(p(ie),qt()):p()},o.clipExtent=function(ie){return arguments.length?(ie==null?St=kt=Lt=Ut=null:(St=+ie[0][0],kt=+ie[0][1],Lt=+ie[1][0],Ut=+ie[1][1]),qt()):St==null?null:[[St,kt],[Lt,Ut]]};function qt(){var ie=Wi*P(),Zt=o(V2(o.rotate()).invert([0,0]));return mt(St==null?[[Zt[0]-ie,Zt[1]-ie],[Zt[0]+ie,Zt[1]+ie]]:r===$m?[[Math.max(Zt[0]-ie,St),kt],[Math.min(Zt[0]+ie,Lt),Ut]]:[[St,Math.max(Zt[1]-ie,kt)],[Lt,Math.min(Zt[1]+ie,Ut)]])}return qt()}function X0(r){return ue((Io+r)/2)}function dS(r,o){var p=Qr(r),P=r===o?ut(r):s(p/Qr(o))/s(X0(o)/X0(r)),at=p*m(X0(r),P)/P;if(!P)return $m;function mt(St,kt){at>0?kt<-Io+hi&&(kt=-Io+hi):kt>Io-hi&&(kt=Io-hi);var Lt=at/m(X0(kt),P);return[Lt*ut(P*St),at-Lt*Qr(P*St)]}return mt.invert=function(St,kt){var Lt=at-kt,Ut=Tt(P)*Yt(St*St+Lt*Lt),qt=Fa(St,Ji(Lt))*Tt(Lt);return Lt*P<0&&(qt-=Wi*Tt(St)*Tt(Lt)),[qt/P,2*Cf(m(at/Ut,1/P))-Io]},mt}function vT(){return Qb(dS).scale(109.5).parallels([30,30])}function K0(r,o){return[r,o]}K0.invert=K0;function xT(){return Ec(K0).scale(152.63)}function nw(r,o){var p=Qr(r),P=r===o?ut(r):(p-Qr(o))/(o-r),at=p/P+r;if(Ji(P)hi&&--P>0);return[r/(.8707+(mt=p*p)*(-.131979+mt*(-.013791+mt*mt*mt*(.003971-.001529*mt)))),p]};function _T(){return Ec(iw).scale(175.295)}function ow(r,o){return[Qr(o)*ut(r),ut(o)]}ow.invert=$0(yn);function yS(){return Ec(ow).scale(249.5).clipAngle(90+hi)}function aw(r,o){var p=Qr(o),P=1+Qr(r)*p;return[p*ut(r)/P,ut(o)/P]}aw.invert=$0(function(r){return 2*Cf(r)});function ST(){return Ec(aw).scale(250).clipAngle(142)}function y1(r,o){return[s(ue((Io+o)/2)),-r]}y1.invert=function(r,o){return[-o,2*Cf(Lv(r))-Io]};function Xm(){var r=fS(y1),o=r.center,p=r.rotate;return r.center=function(P){return arguments.length?o([-P[1],P[0]]):(P=o(),[P[1],-P[0]])},r.rotate=function(P){return arguments.length?p([P[0],P[1],P.length>2?P[2]+90:90]):(P=p(),[P[0],P[1],P[2]-90])},p([0,0,90]).scale(159.155)}function ty(r,o){return r.parent===o.parent?1:2}function oP(r){return r.reduce(vS,0)/r.length}function vS(r,o){return r+o.x}function CT(r){return 1+r.reduce(xS,0)}function xS(r,o){return Math.max(r,o.y)}function MT(r){for(var o;o=r.children;)r=o[0];return r}function ET(r){for(var o;o=r.children;)r=o[o.length-1];return r}function kT(){var r=ty,o=1,p=1,P=!1;function at(mt){var St,kt=0;mt.eachAfter(function(Zt){var _e=Zt.children;_e?(Zt.x=oP(_e),Zt.y=CT(_e)):(Zt.x=St?kt+=r(Zt,St):0,Zt.y=0,St=Zt)});var Lt=MT(mt),Ut=ET(mt),qt=Lt.x-r(Lt,Ut)/2,ie=Ut.x+r(Ut,Lt)/2;return mt.eachAfter(P?function(Zt){Zt.x=(Zt.x-mt.x)*o,Zt.y=(mt.y-Zt.y)*p}:function(Zt){Zt.x=(Zt.x-qt)/(ie-qt)*o,Zt.y=(1-(mt.y?Zt.y/mt.y:1))*p})}return at.separation=function(mt){return arguments.length?(r=mt,at):r},at.size=function(mt){return arguments.length?(P=!1,o=+mt[0],p=+mt[1],at):P?null:[o,p]},at.nodeSize=function(mt){return arguments.length?(P=!0,o=+mt[0],p=+mt[1],at):P?[o,p]:null},at}function bS(r){var o=0,p=r.children,P=p&&p.length;if(!P)o=1;else for(;--P>=0;)o+=p[P].value;r.value=o}function TT(){return this.eachAfter(bS)}function AT(r){var o=this,p,P=[o],at,mt,St;do for(p=P.reverse(),P=[];o=p.pop();)if(r(o),at=o.children,at)for(mt=0,St=at.length;mt=0;--at)p.push(P[at]);return this}function PT(r){for(var o=this,p=[o],P=[],at,mt,St;o=p.pop();)if(P.push(o),at=o.children,at)for(mt=0,St=at.length;mt=0;)p+=P[at].value;o.value=p})}function DT(r){return this.eachBefore(function(o){o.children&&o.children.sort(r)})}function RT(r){for(var o=this,p=LT(o,r),P=[o];o!==p;)o=o.parent,P.push(o);for(var at=P.length;r!==p;)P.splice(at,0,r),r=r.parent;return P}function LT(r,o){if(r===o)return r;var p=r.ancestors(),P=o.ancestors(),at=null;for(r=p.pop(),o=P.pop();r===o;)at=r,r=p.pop(),o=P.pop();return at}function v1(){for(var r=this,o=[r];r=r.parent;)o.push(r);return o}function IT(){var r=[];return this.each(function(o){r.push(o)}),r}function jT(){var r=[];return this.eachBefore(function(o){o.children||r.push(o)}),r}function FT(){var r=this,o=[];return r.each(function(p){p!==r&&o.push({source:p.parent,target:p})}),o}function x1(r,o){var p=new mh(r),P=+r.value&&(p.value=r.value),at,mt=[p],St,kt,Lt,Ut;for(o==null&&(o=zT);at=mt.pop();)if(P&&(at.value=+at.data.value),(kt=o(at.data))&&(Ut=kt.length))for(at.children=new Array(Ut),Lt=Ut-1;Lt>=0;--Lt)mt.push(St=at.children[Lt]=new mh(kt[Lt])),St.parent=at,St.depth=at.depth+1;return p.eachBefore(b1)}function BT(){return x1(this).eachBefore(wS)}function zT(r){return r.children}function wS(r){r.data=r.data.data}function b1(r){var o=0;do r.height=o;while((r=r.parent)&&r.height<++o)}function mh(r){this.data=r,this.depth=this.height=0,this.parent=null}mh.prototype=x1.prototype={constructor:mh,count:TT,each:AT,eachAfter:PT,eachBefore:OT,sum:NT,sort:DT,path:RT,ancestors:v1,descendants:IT,leaves:jT,links:FT,copy:BT};var UT=Array.prototype.slice;function HT(r){for(var o=r.length,p,P;o;)P=Math.random()*o--|0,p=r[o],r[o]=r[P],r[P]=p;return r}function _S(r){for(var o=0,p=(r=HT(UT.call(r))).length,P=[],at,mt;o0&&p*p>P*P+at*at}function ey(r,o){for(var p=0;pLt?(at=(Ut+Lt-mt)/(2*Ut),kt=Math.sqrt(Math.max(0,Lt/Ut-at*at)),p.x=r.x-at*P-kt*St,p.y=r.y-at*St+kt*P):(at=(Ut+mt-Lt)/(2*Ut),kt=Math.sqrt(Math.max(0,mt/Ut-at*at)),p.x=o.x+at*P-kt*St,p.y=o.y+at*St+kt*P)):(p.x=o.x+p.r,p.y=o.y)}function S1(r,o){var p=r.r+o.r-1e-6,P=o.x-r.x,at=o.y-r.y;return p>0&&p*p>P*P+at*at}function CS(r){var o=r._,p=r.next._,P=o.r+p.r,at=(o.x*p.r+p.x*o.r)/P,mt=(o.y*p.r+p.y*o.r)/P;return at*at+mt*mt}function C1(r){this._=r,this.next=null,this.previous=null}function VT(r){if(!(at=r.length))return 0;var o,p,P,at,mt,St,kt,Lt,Ut,qt,ie;if(o=r[0],o.x=0,o.y=0,!(at>1))return o.r;if(p=r[1],o.x=-p.r,p.x=o.r,p.y=0,!(at>2))return o.r+p.r;uw(p,o,P=r[2]),o=new C1(o),p=new C1(p),P=new C1(P),o.next=P.previous=p,p.next=o.previous=P,P.next=p.previous=o;t:for(kt=3;kt0)throw new Error("cycle");return kt}return p.id=function(P){return arguments.length?(r=M1(P),p):r},p.parentId=function(P){return arguments.length?(o=M1(P),p):o},p}function sP(r,o){return r.parent===o.parent?1:2}function E1(r){var o=r.children;return o?o[0]:r.t}function ry(r){var o=r.children;return o?o[o.length-1]:r.t}function KT(r,o,p){var P=p/(o.i-r.i);o.c-=P,o.s+=p,r.c+=P,o.z+=p,o.m+=p}function ZT(r){for(var o=0,p=0,P=r.children,at=P.length,mt;--at>=0;)mt=P[at],mt.z+=o,mt.m+=o,o+=mt.s+(p+=mt.c)}function lP(r,o,p){return r.a.parent===o.parent?r.a:p}function iy(r,o){this._=r,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=o}iy.prototype=Object.create(mh.prototype);function gw(r){for(var o=new iy(r,0),p,P=[o],at,mt,St,kt;p=P.pop();)if(mt=p._.children)for(p.children=new Array(kt=mt.length),St=kt-1;St>=0;--St)P.push(at=p.children[St]=new iy(mt[St],St)),at.parent=p;return(o.parent=new iy(null,0)).children=[o],o}function QT(){var r=sP,o=1,p=1,P=null;function at(Ut){var qt=gw(Ut);if(qt.eachAfter(mt),qt.parent.m=-qt.z,qt.eachBefore(St),P)Ut.eachBefore(Lt);else{var ie=Ut,Zt=Ut,_e=Ut;Ut.eachBefore(function(cn){cn.xZt.x&&(Zt=cn),cn.depth>_e.depth&&(_e=cn)});var Le=ie===Zt?1:r(ie,Zt)/2,De=Le-ie.x,Be=o/(Zt.x+Le+De),We=p/(_e.depth||1);Ut.eachBefore(function(cn){cn.x=(cn.x+De)*Be,cn.y=cn.depth*We})}return Ut}function mt(Ut){var qt=Ut.children,ie=Ut.parent.children,Zt=Ut.i?ie[Ut.i-1]:null;if(qt){ZT(Ut);var _e=(qt[0].z+qt[qt.length-1].z)/2;Zt?(Ut.z=Zt.z+r(Ut._,Zt._),Ut.m=Ut.z-_e):Ut.z=_e}else Zt&&(Ut.z=Zt.z+r(Ut._,Zt._));Ut.parent.A=kt(Ut,Zt,Ut.parent.A||ie[0])}function St(Ut){Ut._.x=Ut.z+Ut.parent.m,Ut.m+=Ut.parent.m}function kt(Ut,qt,ie){if(qt){for(var Zt=Ut,_e=Ut,Le=qt,De=Zt.parent.children[0],Be=Zt.m,We=_e.m,cn=Le.m,nn=De.m,ln;Le=ry(Le),Zt=E1(Zt),Le&&Zt;)De=E1(De),_e=ry(_e),_e.a=Ut,ln=Le.z+cn-Zt.z-Be+r(Le._,Zt._),ln>0&&(KT(lP(Le,Ut,ie),Ut,ln),Be+=ln,We+=ln),cn+=Le.m,Be+=Zt.m,nn+=De.m,We+=_e.m;Le&&!ry(_e)&&(_e.t=Le,_e.m+=cn-We),Zt&&!E1(De)&&(De.t=Zt,De.m+=Be-nn,ie=Ut)}return ie}function Lt(Ut){Ut.x*=o,Ut.y=Ut.depth*p}return at.separation=function(Ut){return arguments.length?(r=Ut,at):r},at.size=function(Ut){return arguments.length?(P=!1,o=+Ut[0],p=+Ut[1],at):P?null:[o,p]},at.nodeSize=function(Ut){return arguments.length?(P=!0,o=+Ut[0],p=+Ut[1],at):P?[o,p]:null},at}function oy(r,o,p,P,at){for(var mt=r.children,St,kt=-1,Lt=mt.length,Ut=r.value&&(at-p)/r.value;++ktcn&&(cn=Ut),qn=Be*Be*Pn,nn=Math.max(cn/qn,qn/We),nn>ln){Be-=Ut;break}ln=nn}St.push(Lt={value:Be,dice:_e1?P:1)},p}(JT);function tA(){var r=k1,o=!1,p=1,P=1,at=[0],mt=cp,St=cp,kt=cp,Lt=cp,Ut=cp;function qt(Zt){return Zt.x0=Zt.y0=0,Zt.x1=p,Zt.y1=P,Zt.eachBefore(ie),at=[0],o&&Zt.eachBefore(dw),Zt}function ie(Zt){var _e=at[Zt.depth],Le=Zt.x0+_e,De=Zt.y0+_e,Be=Zt.x1-_e,We=Zt.y1-_e;Be=Zt-1){var cn=mt[ie];cn.x0=Le,cn.y0=De,cn.x1=Be,cn.y1=We;return}for(var nn=Ut[ie],ln=_e/2+nn,Pn=ie+1,qn=Zt-1;Pn>>1;Ut[Un]We-De){var cr=(Le*ir+Be*gr)/_e;qt(ie,Pn,gr,Le,De,cr,We),qt(Pn,Zt,ir,cr,De,Be,We)}else{var er=(De*ir+We*gr)/_e;qt(ie,Pn,gr,Le,De,Be,er),qt(Pn,Zt,ir,Le,er,Be,We)}}}function uP(r,o,p,P,at){(r.depth&1?oy:hp)(r,o,p,P,at)}const AS=function r(o){function p(P,at,mt,St,kt){if((Lt=P._squarify)&&Lt.ratio===o)for(var Lt,Ut,qt,ie,Zt=-1,_e,Le=Lt.length,De=P.value;++Zt1?P:1)},p}(JT);function vw(r){var o=r.length;return function(p){return r[Math.max(0,Math.min(o-1,Math.floor(p*o)))]}}function nA(r,o){var p=zc(+r,+o);return function(P){var at=p(P);return at-360*Math.floor(at/360)}}function OS(r,o){return r=+r,o=+o,function(p){return Math.round(r*(1-p)+o*p)}}var T1=Math.SQRT2,A1=2,O1=4,rA=1e-12;function PS(r){return((r=Math.exp(r))+1/r)/2}function cP(r){return((r=Math.exp(r))-1/r)/2}function NS(r){return((r=Math.exp(2*r))-1)/(r+1)}function xw(r,o){var p=r[0],P=r[1],at=r[2],mt=o[0],St=o[1],kt=o[2],Lt=mt-p,Ut=St-P,qt=Lt*Lt+Ut*Ut,ie,Zt;if(qt1&&aA(r[p[P-2]],r[p[P-1]],r[at])<=0;)--P;p[P++]=at}return p.slice(0,P)}function jS(r){if((p=r.length)<3)return null;var o,p,P=new Array(p),at=new Array(p);for(o=0;o=0;--o)Ut.push(r[P[mt[o]][2]]);for(o=+kt;omt!=kt>mt&&at<(St-Lt)*(mt-Ut)/(kt-Ut)+Lt&&(qt=!qt),St=Lt,kt=Ut;return qt}function uA(r){for(var o=-1,p=r.length,P=r[p-1],at,mt,St=P[0],kt=P[1],Lt=0;++o1);return P+at*kt*Math.sqrt(-2*Math.log(St)/St)}}return p.source=r,p}(Km),kw=function r(o){function p(){var P=Ew.source(o).apply(this,arguments);return function(){return Math.exp(P())}}return p.source=r,p}(Km),FS=function r(o){function p(P){return function(){for(var at=0,mt=0;mtp&&(P=o,o=p,p=P),function(at){return Math.max(o,Math.min(p,at))}}function Ow(r,o,p){var P=r[0],at=r[1],mt=o[0],St=o[1];return at2?hA:Ow,Lt=Ut=null,ie}function ie(Zt){return isNaN(Zt=+Zt)?mt:(Lt||(Lt=kt(r.map(P),o,p)))(P(St(Zt)))}return ie.invert=function(Zt){return St(at((Ut||(Ut=kt(o,r.map(P),Ss)))(Zt)))},ie.domain=function(Zt){return arguments.length?(r=N1.call(Zt,sy),St===ys||(St=Aw(r)),qt()):r.slice()},ie.range=function(Zt){return arguments.length?(o=Zm.call(Zt),qt()):o.slice()},ie.rangeRound=function(Zt){return o=Zm.call(Zt),p=OS,qt()},ie.clamp=function(Zt){return arguments.length?(St=Zt?Aw(r):ys,ie):St!==ys},ie.interpolate=function(Zt){return arguments.length?(p=Zt,qt()):p},ie.unknown=function(Zt){return arguments.length?(mt=Zt,ie):mt},function(Zt,_e){return P=Zt,at=_e,qt()}}function Nw(r,o){return Pw()(r,o)}function R1(r,o,p,P){var at=(0,T.sG)(r,o,p),mt;switch(P=_f(P==null?",f":P),P.type){case"s":{var St=Math.max(Math.abs(r),Math.abs(o));return P.precision==null&&!isNaN(mt=il(at,St))&&(P.precision=mt),$d(P,St)}case"":case"e":case"g":case"p":case"r":{P.precision==null&&!isNaN(mt=Om(at,Math.max(Math.abs(r),Math.abs(o))))&&(P.precision=mt-(P.type==="e"));break}case"f":case"%":{P.precision==null&&!isNaN(mt=O0(at))&&(P.precision=mt-(P.type==="%")*2);break}}return lh(P)}function fp(r){var o=r.domain;return r.ticks=function(p){var P=o();return(0,T.Zc)(P[0],P[P.length-1],p==null?10:p)},r.tickFormat=function(p,P){var at=o();return R1(at[0],at[at.length-1],p==null?10:p,P)},r.nice=function(p){p==null&&(p=10);var P=o(),at=0,mt=P.length-1,St=P[at],kt=P[mt],Lt;return kt0?(St=Math.floor(St/Lt)*Lt,kt=Math.ceil(kt/Lt)*Lt,Lt=(0,T.lq)(St,kt,p)):Lt<0&&(St=Math.ceil(St*Lt)/Lt,kt=Math.floor(kt*Lt)/Lt,Lt=(0,T.lq)(St,kt,p)),Lt>0?(P[at]=Math.floor(St/Lt)*Lt,P[mt]=Math.ceil(kt/Lt)*Lt,o(P)):Lt<0&&(P[at]=Math.ceil(St*Lt)/Lt,P[mt]=Math.floor(kt*Lt)/Lt,o(P)),r},r}function YS(){var r=Nw(ys,ys);return r.copy=function(){return ly(r,YS())},Ql.apply(r,arguments),fp(r)}function fA(r){var o;function p(P){return isNaN(P=+P)?o:P}return p.invert=p,p.domain=p.range=function(P){return arguments.length?(r=N1.call(P,sy),p):r.slice()},p.unknown=function(P){return arguments.length?(o=P,p):o},p.copy=function(){return fA(r).unknown(o)},r=arguments.length?N1.call(r,sy):[0,1],fp(p)}function Dw(r,o){r=r.slice();var p=0,P=r.length-1,at=r[p],mt=r[P],St;return mt0){for(;Zt<_e;++Zt)for(De=1,Le=mt(Zt);Deqt)break;cn.push(Be)}}else for(;Zt<_e;++Zt)for(De=P-1,Le=mt(Zt);De>=1;--De)if(Be=Le*De,!(Beqt)break;cn.push(Be)}}else cn=(0,T.Zc)(Zt,_e,Math.min(_e-Zt,We)).map(mt);return ie?cn.reverse():cn},o.tickFormat=function(kt,Lt){if(Lt==null&&(Lt=P===10?".0e":","),typeof Lt!="function"&&(Lt=lh(Lt)),kt===1/0)return Lt;kt==null&&(kt=10);var Ut=Math.max(1,P*kt/o.ticks().length);return function(qt){var ie=qt/mt(Math.round(at(qt)));return ie*P0?p[kt-1]:r[0],kt=p?[P[p-1],o]:[P[Ut-1],P[Ut]]},St.unknown=function(Lt){return arguments.length&&(mt=Lt),St},St.thresholds=function(){return P.slice()},St.copy=function(){return Lw().domain([r,o]).range(at).unknown(mt)},Ql.apply(fp(St),arguments)}function mA(){var r=[.5],o=[0,1],p,P=1;function at(mt){return mt<=mt?o[(0,T.h1)(r,mt,0,P)]:p}return at.domain=function(mt){return arguments.length?(r=Zm.call(mt),P=Math.min(r.length,o.length-1),at):r.slice()},at.range=function(mt){return arguments.length?(o=Zm.call(mt),P=Math.min(r.length,o.length-1),at):o.slice()},at.invertExtent=function(mt){var St=o.indexOf(mt);return[r[St-1],r[St]]},at.unknown=function(mt){return arguments.length?(p=mt,at):p},at.copy=function(){return mA().domain(r).range(o).unknown(p)},Ql.apply(at,arguments)}var KS=new Date,B1=new Date;function Ka(r,o,p,P){function at(mt){return r(mt=arguments.length===0?new Date:new Date(+mt)),mt}return at.floor=function(mt){return r(mt=new Date(+mt)),mt},at.ceil=function(mt){return r(mt=new Date(mt-1)),o(mt,1),r(mt),mt},at.round=function(mt){var St=at(mt),kt=at.ceil(mt);return mt-St0))return Lt;do Lt.push(Ut=new Date(+mt)),o(mt,kt),r(mt);while(Ut=St)for(;r(St),!mt(St);)St.setTime(St-1)},function(St,kt){if(St>=St)if(kt<0)for(;++kt<=0;)for(;o(St,-1),!mt(St););else for(;--kt>=0;)for(;o(St,1),!mt(St););})},p&&(at.count=function(mt,St){return KS.setTime(+mt),B1.setTime(+St),r(KS),r(B1),Math.floor(p(KS,B1))},at.every=function(mt){return mt=Math.floor(mt),!isFinite(mt)||!(mt>0)?null:mt>1?at.filter(P?function(St){return P(St)%mt===0}:function(St){return at.count(0,St)%mt===0}):at}),at}var pp=Ka(function(r){r.setMonth(0,1),r.setHours(0,0,0,0)},function(r,o){r.setFullYear(r.getFullYear()+o)},function(r,o){return o.getFullYear()-r.getFullYear()},function(r){return r.getFullYear()});pp.every=function(r){return!isFinite(r=Math.floor(r))||!(r>0)?null:Ka(function(o){o.setFullYear(Math.floor(o.getFullYear()/r)*r),o.setMonth(0,1),o.setHours(0,0,0,0)},function(o,p){o.setFullYear(o.getFullYear()+p*r)})};const yh=pp;var yP=pp.range,ZS=Ka(function(r){r.setDate(1),r.setHours(0,0,0,0)},function(r,o){r.setMonth(r.getMonth()+o)},function(r,o){return o.getMonth()-r.getMonth()+(o.getFullYear()-r.getFullYear())*12},function(r){return r.getMonth()});const QS=ZS;var gA=ZS.range,Pf=1e3,mp=6e4,z1=36e5,Iw=864e5,JS=6048e5;function Nf(r){return Ka(function(o){o.setDate(o.getDate()-(o.getDay()+7-r)%7),o.setHours(0,0,0,0)},function(o,p){o.setDate(o.getDate()+p*7)},function(o,p){return(p-o-(p.getTimezoneOffset()-o.getTimezoneOffset())*mp)/JS})}var cy=Nf(0),hy=Nf(1),kc=Nf(2),tC=Nf(3),Qm=Nf(4),yA=Nf(5),vh=Nf(6),Tc=cy.range,eC=hy.range,vP=kc.range,nC=tC.range,vA=Qm.range,rC=yA.range,xA=vh.range,bA=Ka(function(r){r.setHours(0,0,0,0)},function(r,o){r.setDate(r.getDate()+o)},function(r,o){return(o-r-(o.getTimezoneOffset()-r.getTimezoneOffset())*mp)/Iw},function(r){return r.getDate()-1});const fy=bA;var wA=bA.range,iC=Ka(function(r){r.setTime(r-r.getMilliseconds()-r.getSeconds()*Pf-r.getMinutes()*mp)},function(r,o){r.setTime(+r+o*z1)},function(r,o){return(o-r)/z1},function(r){return r.getHours()});const jw=iC;var U1=iC.range,Jm=Ka(function(r){r.setTime(r-r.getMilliseconds()-r.getSeconds()*Pf)},function(r,o){r.setTime(+r+o*mp)},function(r,o){return(o-r)/mp},function(r){return r.getMinutes()});const H1=Jm;var tg=Jm.range,dy=Ka(function(r){r.setTime(r-r.getMilliseconds())},function(r,o){r.setTime(+r+o*Pf)},function(r,o){return(o-r)/Pf},function(r){return r.getUTCSeconds()});const W1=dy;var eg=dy.range,ng=Ka(function(){},function(r,o){r.setTime(+r+o)},function(r,o){return o-r});ng.every=function(r){return r=Math.floor(r),!isFinite(r)||!(r>0)?null:r>1?Ka(function(o){o.setTime(Math.floor(o/r)*r)},function(o,p){o.setTime(+o+p*r)},function(o,p){return(p-o)/r}):ng};const Y1=ng;var Fw=ng.range;function Df(r){return Ka(function(o){o.setUTCDate(o.getUTCDate()-(o.getUTCDay()+7-r)%7),o.setUTCHours(0,0,0,0)},function(o,p){o.setUTCDate(o.getUTCDate()+p*7)},function(o,p){return(p-o)/JS})}var gp=Df(0),py=Df(1),oC=Df(2),aC=Df(3),yp=Df(4),Bw=Df(5),sC=Df(6),lC=gp.range,uC=py.range,_A=oC.range,SA=aC.range,V1=yp.range,cC=Bw.range,zw=sC.range,hC=Ka(function(r){r.setUTCHours(0,0,0,0)},function(r,o){r.setUTCDate(r.getUTCDate()+o)},function(r,o){return(o-r)/Iw},function(r){return r.getUTCDate()-1});const G1=hC;var CA=hC.range,my=Ka(function(r){r.setUTCMonth(0,1),r.setUTCHours(0,0,0,0)},function(r,o){r.setUTCFullYear(r.getUTCFullYear()+o)},function(r,o){return o.getUTCFullYear()-r.getUTCFullYear()},function(r){return r.getUTCFullYear()});my.every=function(r){return!isFinite(r=Math.floor(r))||!(r>0)?null:Ka(function(o){o.setUTCFullYear(Math.floor(o.getUTCFullYear()/r)*r),o.setUTCMonth(0,1),o.setUTCHours(0,0,0,0)},function(o,p){o.setUTCFullYear(o.getUTCFullYear()+p*r)})};const Rf=my;var Uw=my.range;function gy(r){if(0<=r.y&&r.y<100){var o=new Date(-1,r.m,r.d,r.H,r.M,r.S,r.L);return o.setFullYear(r.y),o}return new Date(r.y,r.m,r.d,r.H,r.M,r.S,r.L)}function Hw(r){if(0<=r.y&&r.y<100){var o=new Date(Date.UTC(-1,r.m,r.d,r.H,r.M,r.S,r.L));return o.setUTCFullYear(r.y),o}return new Date(Date.UTC(r.y,r.m,r.d,r.H,r.M,r.S,r.L))}function rg(r,o,p){return{y:r,m:o,d:p,H:0,M:0,S:0,L:0}}function Ww(r){var o=r.dateTime,p=r.date,P=r.time,at=r.periods,mt=r.days,St=r.shortDays,kt=r.months,Lt=r.shortMonths,Ut=Ac(at),qt=ig(at),ie=Ac(mt),Zt=ig(mt),_e=Ac(St),Le=ig(St),De=Ac(kt),Be=ig(kt),We=Ac(Lt),cn=ig(Lt),nn={a:Jr,A:qr,b:ii,B:Ti,c:null,d:$1,e:$1,f:jA,g:xC,G:bC,H:yC,I:LA,j:IA,L:X1,m:FA,M:qw,p:Ni,q:Oo,Q:EC,s:ag,S:xh,u:tu,U:$w,V:bP,w:da,W:og,x:null,X:null,y:BA,Y:vi,Z:vs,"%":MC},ln={a:oo,A:vo,b:_a,B:uu,c:null,d:wC,e:wC,f:SC,g:VA,G:Oc,H:zA,I:UA,j:HA,L:_C,m:WA,M:YA,p:Ku,q:cu,Q:EC,s:ag,S:CC,u:Xw,U:K1,V:ul,w:$u,W:eu,x:null,X:null,y:Z1,Y:GA,Z:qA,"%":MC},Pn={a:cr,A:er,b:fn,B:$n,c:kr,d:Vw,e:Vw,f:xp,g:Yw,G:TA,H:gC,I:gC,j:Gw,L:NA,m:OA,M:vp,p:ir,q:AA,Q:DA,s:RA,S:PA,u:kA,U:Jl,V:pC,w:dC,W:xP,x:Wn,X:_r,y:Yw,Y:TA,Z:mC,"%":bp};nn.x=qn(p,nn),nn.X=qn(P,nn),nn.c=qn(o,nn),ln.x=qn(p,ln),ln.X=qn(P,ln),ln.c=qn(o,ln);function qn($r,Di){return function(Xi){var Ir=[],bs=-1,Vi=0,as=$r.length,Gs,ia,qs;for(Xi instanceof Date||(Xi=new Date(+Xi));++bs53)return null;"w"in Ir||(Ir.w=1),"Z"in Ir?(Vi=Hw(rg(Ir.y,0,1)),as=Vi.getUTCDay(),Vi=as>4||as===0?py.ceil(Vi):py(Vi),Vi=G1.offset(Vi,(Ir.V-1)*7),Ir.y=Vi.getUTCFullYear(),Ir.m=Vi.getUTCMonth(),Ir.d=Vi.getUTCDate()+(Ir.w+6)%7):(Vi=gy(rg(Ir.y,0,1)),as=Vi.getDay(),Vi=as>4||as===0?hy.ceil(Vi):hy(Vi),Vi=fy.offset(Vi,(Ir.V-1)*7),Ir.y=Vi.getFullYear(),Ir.m=Vi.getMonth(),Ir.d=Vi.getDate()+(Ir.w+6)%7)}else("W"in Ir||"U"in Ir)&&("w"in Ir||(Ir.w="u"in Ir?Ir.u%7:"W"in Ir?1:0),as="Z"in Ir?Hw(rg(Ir.y,0,1)).getUTCDay():gy(rg(Ir.y,0,1)).getDay(),Ir.m=0,Ir.d="W"in Ir?(Ir.w+6)%7+Ir.W*7-(as+5)%7:Ir.w+Ir.U*7-(as+6)%7);return"Z"in Ir?(Ir.H+=Ir.Z/100|0,Ir.M+=Ir.Z%100,Hw(Ir)):gy(Ir)}}function gr($r,Di,Xi,Ir){for(var bs=0,Vi=Di.length,as=Xi.length,Gs,ia;bs=as)return-1;if(Gs=Di.charCodeAt(bs++),Gs===37){if(Gs=Di.charAt(bs++),ia=Pn[Gs in q1?Di.charAt(bs++):Gs],!ia||(Ir=ia($r,Xi,Ir))<0)return-1}else if(Gs!=Xi.charCodeAt(Ir++))return-1}return Ir}function ir($r,Di,Xi){var Ir=Ut.exec(Di.slice(Xi));return Ir?($r.p=qt[Ir[0].toLowerCase()],Xi+Ir[0].length):-1}function cr($r,Di,Xi){var Ir=_e.exec(Di.slice(Xi));return Ir?($r.w=Le[Ir[0].toLowerCase()],Xi+Ir[0].length):-1}function er($r,Di,Xi){var Ir=ie.exec(Di.slice(Xi));return Ir?($r.w=Zt[Ir[0].toLowerCase()],Xi+Ir[0].length):-1}function fn($r,Di,Xi){var Ir=We.exec(Di.slice(Xi));return Ir?($r.m=cn[Ir[0].toLowerCase()],Xi+Ir[0].length):-1}function $n($r,Di,Xi){var Ir=De.exec(Di.slice(Xi));return Ir?($r.m=Be[Ir[0].toLowerCase()],Xi+Ir[0].length):-1}function kr($r,Di,Xi){return gr($r,o,Di,Xi)}function Wn($r,Di,Xi){return gr($r,p,Di,Xi)}function _r($r,Di,Xi){return gr($r,P,Di,Xi)}function Jr($r){return St[$r.getDay()]}function qr($r){return mt[$r.getDay()]}function ii($r){return Lt[$r.getMonth()]}function Ti($r){return kt[$r.getMonth()]}function Ni($r){return at[+($r.getHours()>=12)]}function Oo($r){return 1+~~($r.getMonth()/3)}function oo($r){return St[$r.getUTCDay()]}function vo($r){return mt[$r.getUTCDay()]}function _a($r){return Lt[$r.getUTCMonth()]}function uu($r){return kt[$r.getUTCMonth()]}function Ku($r){return at[+($r.getUTCHours()>=12)]}function cu($r){return 1+~~($r.getUTCMonth()/3)}return{format:function($r){var Di=qn($r+="",nn);return Di.toString=function(){return $r},Di},parse:function($r){var Di=Un($r+="",!1);return Di.toString=function(){return $r},Di},utcFormat:function($r){var Di=qn($r+="",ln);return Di.toString=function(){return $r},Di},utcParse:function($r){var Di=Un($r+="",!0);return Di.toString=function(){return $r},Di}}}var q1={"-":"",_:" ",0:"0"},Za=/^\s*\d+/,MA=/^%/,EA=/[\\^$*+?|[\]().{}]/g;function bo(r,o,p){var P=r<0?"-":"",at=(P?-r:r)+"",mt=at.length;return P+(mt68?1900:2e3),p+P[0].length):-1}function mC(r,o,p){var P=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(o.slice(p,p+6));return P?(r.Z=P[1]?0:-(P[2]+(P[3]||"00")),p+P[0].length):-1}function AA(r,o,p){var P=Za.exec(o.slice(p,p+1));return P?(r.q=P[0]*3-3,p+P[0].length):-1}function OA(r,o,p){var P=Za.exec(o.slice(p,p+2));return P?(r.m=P[0]-1,p+P[0].length):-1}function Vw(r,o,p){var P=Za.exec(o.slice(p,p+2));return P?(r.d=+P[0],p+P[0].length):-1}function Gw(r,o,p){var P=Za.exec(o.slice(p,p+3));return P?(r.m=0,r.d=+P[0],p+P[0].length):-1}function gC(r,o,p){var P=Za.exec(o.slice(p,p+2));return P?(r.H=+P[0],p+P[0].length):-1}function vp(r,o,p){var P=Za.exec(o.slice(p,p+2));return P?(r.M=+P[0],p+P[0].length):-1}function PA(r,o,p){var P=Za.exec(o.slice(p,p+2));return P?(r.S=+P[0],p+P[0].length):-1}function NA(r,o,p){var P=Za.exec(o.slice(p,p+3));return P?(r.L=+P[0],p+P[0].length):-1}function xp(r,o,p){var P=Za.exec(o.slice(p,p+6));return P?(r.L=Math.floor(P[0]/1e3),p+P[0].length):-1}function bp(r,o,p){var P=MA.exec(o.slice(p,p+1));return P?p+P[0].length:-1}function DA(r,o,p){var P=Za.exec(o.slice(p));return P?(r.Q=+P[0],p+P[0].length):-1}function RA(r,o,p){var P=Za.exec(o.slice(p));return P?(r.s=+P[0],p+P[0].length):-1}function $1(r,o){return bo(r.getDate(),o,2)}function yC(r,o){return bo(r.getHours(),o,2)}function LA(r,o){return bo(r.getHours()%12||12,o,2)}function IA(r,o){return bo(1+fy.count(yh(r),r),o,3)}function X1(r,o){return bo(r.getMilliseconds(),o,3)}function jA(r,o){return X1(r,o)+"000"}function FA(r,o){return bo(r.getMonth()+1,o,2)}function qw(r,o){return bo(r.getMinutes(),o,2)}function xh(r,o){return bo(r.getSeconds(),o,2)}function tu(r){var o=r.getDay();return o===0?7:o}function $w(r,o){return bo(cy.count(yh(r)-1,r),o,2)}function vC(r){var o=r.getDay();return o>=4||o===0?Qm(r):Qm.ceil(r)}function bP(r,o){return r=vC(r),bo(Qm.count(yh(r),r)+(yh(r).getDay()===4),o,2)}function da(r){return r.getDay()}function og(r,o){return bo(hy.count(yh(r)-1,r),o,2)}function BA(r,o){return bo(r.getFullYear()%100,o,2)}function xC(r,o){return r=vC(r),bo(r.getFullYear()%100,o,2)}function vi(r,o){return bo(r.getFullYear()%1e4,o,4)}function bC(r,o){var p=r.getDay();return r=p>=4||p===0?Qm(r):Qm.ceil(r),bo(r.getFullYear()%1e4,o,4)}function vs(r){var o=r.getTimezoneOffset();return(o>0?"-":(o*=-1,"+"))+bo(o/60|0,"0",2)+bo(o%60,"0",2)}function wC(r,o){return bo(r.getUTCDate(),o,2)}function zA(r,o){return bo(r.getUTCHours(),o,2)}function UA(r,o){return bo(r.getUTCHours()%12||12,o,2)}function HA(r,o){return bo(1+G1.count(Rf(r),r),o,3)}function _C(r,o){return bo(r.getUTCMilliseconds(),o,3)}function SC(r,o){return _C(r,o)+"000"}function WA(r,o){return bo(r.getUTCMonth()+1,o,2)}function YA(r,o){return bo(r.getUTCMinutes(),o,2)}function CC(r,o){return bo(r.getUTCSeconds(),o,2)}function Xw(r){var o=r.getUTCDay();return o===0?7:o}function K1(r,o){return bo(gp.count(Rf(r)-1,r),o,2)}function Kw(r){var o=r.getUTCDay();return o>=4||o===0?yp(r):yp.ceil(r)}function ul(r,o){return r=Kw(r),bo(yp.count(Rf(r),r)+(Rf(r).getUTCDay()===4),o,2)}function $u(r){return r.getUTCDay()}function eu(r,o){return bo(py.count(Rf(r)-1,r),o,2)}function Z1(r,o){return bo(r.getUTCFullYear()%100,o,2)}function VA(r,o){return r=Kw(r),bo(r.getUTCFullYear()%100,o,2)}function GA(r,o){return bo(r.getUTCFullYear()%1e4,o,4)}function Oc(r,o){var p=r.getUTCDay();return r=p>=4||p===0?yp(r):yp.ceil(r),bo(r.getUTCFullYear()%1e4,o,4)}function qA(){return"+0000"}function MC(){return"%"}function EC(r){return+r}function ag(r){return Math.floor(+r/1e3)}var nu,Zw,kC,Q1,sg;TC({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function TC(r){return nu=Ww(r),Zw=nu.format,kC=nu.parse,Q1=nu.utcFormat,sg=nu.utcParse,nu}var wp=1e3,_p=wp*60,xs=_p*60,J1=xs*24,Qw=J1*7,AC=J1*30,tx=J1*365;function $A(r){return new Date(r)}function XA(r){return r instanceof Date?+r:+new Date(+r)}function yy(r,o,p,P,at,mt,St,kt,Lt){var Ut=Nw(ys,ys),qt=Ut.invert,ie=Ut.domain,Zt=Lt(".%L"),_e=Lt(":%S"),Le=Lt("%I:%M"),De=Lt("%I %p"),Be=Lt("%a %d"),We=Lt("%b %d"),cn=Lt("%B"),nn=Lt("%Y"),ln=[[St,1,wp],[St,5,5*wp],[St,15,15*wp],[St,30,30*wp],[mt,1,_p],[mt,5,5*_p],[mt,15,15*_p],[mt,30,30*_p],[at,1,xs],[at,3,3*xs],[at,6,6*xs],[at,12,12*xs],[P,1,J1],[P,2,2*J1],[p,1,Qw],[o,1,AC],[o,3,3*AC],[r,1,tx]];function Pn(Un){return(St(Un)1)&&(r-=Math.floor(r));var o=Math.abs(r-.5);return sx.h=360*r-100,sx.s=1.5-1.5*o,sx.l=.8-.9*o,sx+""}var cg=lo(),Ll=Math.PI/3,Cp=Math.PI*2/3;function ru(r){var o;return r=(.5-r)*Math.PI,cg.r=255*(o=Math.sin(r))*o,cg.g=255*(o=Math.sin(r+Ll))*o,cg.b=255*(o=Math.sin(r+Cp))*o,cg+""}function c_(r){return r=Math.max(0,Math.min(1,r)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+r*(1172.33-r*(10793.56-r*(33300.12-r*(38394.49-r*14825.05)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+r*(557.33+r*(1225.33-r*(3574.96-r*(1073.77+r*707.56)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+r*(3211.1-r*(15327.97-r*(27814-r*(22569.18-r*6838.66)))))))+")"}function Nc(r){var o=r.length;return function(p){return r[Math.max(0,Math.min(o-1,Math.floor(p*o)))]}}const lx=Nc(Yi("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"));var hg=Nc(Yi("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),h_=Nc(Yi("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),gM=Nc(Yi("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function fg(r){return sn(pr(r).call(document.documentElement))}var f_=0;function yM(){return new d_}function d_(){this._="@"+(++f_).toString(36)}d_.prototype=yM.prototype={constructor:d_,get:function(r){for(var o=this._;!(o in r);)if(!(r=r.parentNode))return;return r[o]},set:function(r,o){return r[this._]=o},remove:function(r){return this._ in r&&delete r[this._]},toString:function(){return this._}};function Dc(r){return typeof r=="string"?new Ae([document.querySelectorAll(r)],[document.documentElement]):new Ae([r==null?[]:r],ge)}function If(r,o){o==null&&(o=tr().touches);for(var p=0,P=o?o.length:0,at=new Array(P);p1?0:r<-1?jf:Math.acos(r)}function Vs(r){return r>=1?_y:r<=-1?-_y:Math.asin(r)}function iu(r){return r.innerRadius}function ou(r){return r.outerRadius}function cl(r){return r.startAngle}function p_(r){return r.endAngle}function Cy(r){return r&&r.padAngle}function dg(r,o,p,P,at,mt,St,kt){var Lt=p-r,Ut=P-o,qt=St-at,ie=kt-mt,Zt=ie*Lt-qt*Ut;if(!(Zt*Ztkr*kr+Wn*Wn&&(gr=cr,ir=er),{cx:gr,cy:ir,x01:-qt,y01:-ie,x11:gr*(at/Pn-1),y11:ir*(at/Pn-1)}}function w3(){var r=iu,o=ou,p=$i(0),P=null,at=cl,mt=p_,St=Cy,kt=null;function Lt(){var Ut,qt,ie=+r.apply(this,arguments),Zt=+o.apply(this,arguments),_e=at.apply(this,arguments)-_y,Le=mt.apply(this,arguments)-_y,De=Rc(Le-_e),Be=Le>_e;if(kt||(kt=Ut=Au()),Ztza))kt.moveTo(0,0);else if(De>Ff-za)kt.moveTo(Zt*Mp(_e),Zt*Il(_e)),kt.arc(0,0,Zt,_e,Le,!Be),ie>za&&(kt.moveTo(ie*Mp(Le),ie*Il(Le)),kt.arc(0,0,ie,Le,_e,Be));else{var We=_e,cn=Le,nn=_e,ln=Le,Pn=De,qn=De,Un=St.apply(this,arguments)/2,gr=Un>za&&(P?+P.apply(this,arguments):Ep(ie*ie+Zt*Zt)),ir=wy(Rc(Zt-ie)/2,+p.apply(this,arguments)),cr=ir,er=ir,fn,$n;if(gr>za){var kr=Vs(gr/ie*Il(Un)),Wn=Vs(gr/Zt*Il(Un));(Pn-=kr*2)>za?(kr*=Be?1:-1,nn+=kr,ln-=kr):(Pn=0,nn=ln=(_e+Le)/2),(qn-=Wn*2)>za?(Wn*=Be?1:-1,We+=Wn,cn-=Wn):(qn=0,We=cn=(_e+Le)/2)}var _r=Zt*Mp(We),Jr=Zt*Il(We),qr=ie*Mp(ln),ii=ie*Il(ln);if(ir>za){var Ti=Zt*Mp(cn),Ni=Zt*Il(cn),Oo=ie*Mp(nn),oo=ie*Il(nn),vo;if(Deza?er>za?(fn=Bf(Oo,oo,_r,Jr,Zt,er,Be),$n=Bf(Ti,Ni,qr,ii,Zt,er,Be),kt.moveTo(fn.cx+fn.x01,fn.cy+fn.y01),erza)||!(Pn>za)?kt.lineTo(qr,ii):cr>za?(fn=Bf(qr,ii,Ti,Ni,ie,-cr,Be),$n=Bf(_r,Jr,Oo,oo,ie,-cr,Be),kt.lineTo(fn.cx+fn.x01,fn.cy+fn.y01),cr=Zt;--_e)kt.point(cn[_e],nn[_e]);kt.lineEnd(),kt.areaEnd()}Be&&(cn[ie]=+r(De,ie,qt),nn[ie]=+p(De,ie,qt),kt.point(o?+o(De,ie,qt):cn[ie],P?+P(De,ie,qt):nn[ie]))}if(We)return kt=null,We+""||null}function Ut(){return cx().defined(at).curve(St).context(mt)}return Lt.x=function(qt){return arguments.length?(r=typeof qt=="function"?qt:$i(+qt),o=null,Lt):r},Lt.x0=function(qt){return arguments.length?(r=typeof qt=="function"?qt:$i(+qt),Lt):r},Lt.x1=function(qt){return arguments.length?(o=qt==null?null:typeof qt=="function"?qt:$i(+qt),Lt):o},Lt.y=function(qt){return arguments.length?(p=typeof qt=="function"?qt:$i(+qt),P=null,Lt):p},Lt.y0=function(qt){return arguments.length?(p=typeof qt=="function"?qt:$i(+qt),Lt):p},Lt.y1=function(qt){return arguments.length?(P=qt==null?null:typeof qt=="function"?qt:$i(+qt),Lt):P},Lt.lineX0=Lt.lineY0=function(){return Ut().x(r).y(p)},Lt.lineY1=function(){return Ut().x(r).y(P)},Lt.lineX1=function(){return Ut().x(o).y(p)},Lt.defined=function(qt){return arguments.length?(at=typeof qt=="function"?qt:$i(!!qt),Lt):at},Lt.curve=function(qt){return arguments.length?(St=qt,mt!=null&&(kt=St(mt)),Lt):St},Lt.context=function(qt){return arguments.length?(qt==null?mt=kt=null:kt=St(mt=qt),Lt):mt},Lt}function _3(r,o){return or?1:o>=r?0:NaN}function S3(r){return r}function C3(){var r=S3,o=_3,p=null,P=$i(0),at=$i(Ff),mt=$i(0);function St(kt){var Lt,Ut=kt.length,qt,ie,Zt=0,_e=new Array(Ut),Le=new Array(Ut),De=+P.apply(this,arguments),Be=Math.min(Ff,Math.max(-Ff,at.apply(this,arguments)-De)),We,cn=Math.min(Math.abs(Be)/Ut,mt.apply(this,arguments)),nn=cn*(Be<0?-1:1),ln;for(Lt=0;Lt0&&(Zt+=ln);for(o!=null?_e.sort(function(Pn,qn){return o(Le[Pn],Le[qn])}):p!=null&&_e.sort(function(Pn,qn){return p(kt[Pn],kt[qn])}),Lt=0,ie=Zt?(Be-Ut*nn)/Zt:0;Lt0?ln*ie:0)+nn,Le[qt]={data:kt[qt],index:Lt,value:ln,startAngle:De,endAngle:We,padAngle:cn};return Le}return St.value=function(kt){return arguments.length?(r=typeof kt=="function"?kt:$i(+kt),St):r},St.sortValues=function(kt){return arguments.length?(o=kt,p=null,St):o},St.sort=function(kt){return arguments.length?(p=kt,o=null,St):p},St.startAngle=function(kt){return arguments.length?(P=typeof kt=="function"?kt:$i(+kt),St):P},St.endAngle=function(kt){return arguments.length?(at=typeof kt=="function"?kt:$i(+kt),St):at},St.padAngle=function(kt){return arguments.length?(mt=typeof kt=="function"?kt:$i(+kt),St):mt},St}var xM=y_(zf);function bM(r){this._curve=r}bM.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(r,o){this._curve.point(o*Math.sin(r),o*-Math.cos(r))}};function y_(r){function o(p){return new bM(r(p))}return o._curve=r,o}function My(r){var o=r.curve;return r.angle=r.x,delete r.x,r.radius=r.y,delete r.y,r.curve=function(p){return arguments.length?o(y_(p)):o()._curve},r}function wM(){return My(cx().curve(xM))}function _M(){var r=vM().curve(xM),o=r.curve,p=r.lineX0,P=r.lineX1,at=r.lineY0,mt=r.lineY1;return r.angle=r.x,delete r.x,r.startAngle=r.x0,delete r.x0,r.endAngle=r.x1,delete r.x1,r.radius=r.y,delete r.y,r.innerRadius=r.y0,delete r.y0,r.outerRadius=r.y1,delete r.y1,r.lineStartAngle=function(){return My(p())},delete r.lineX0,r.lineEndAngle=function(){return My(P())},delete r.lineX1,r.lineInnerRadius=function(){return My(at())},delete r.lineY0,r.lineOuterRadius=function(){return My(mt())},delete r.lineY1,r.curve=function(St){return arguments.length?o(y_(St)):o()._curve},r}function Ey(r,o){return[(o=+o)*Math.cos(r-=Math.PI/2),o*Math.sin(r)]}var v_=Array.prototype.slice;function M3(r){return r.source}function E3(r){return r.target}function hx(r){var o=M3,p=E3,P=g_,at=ux,mt=null;function St(){var kt,Lt=v_.call(arguments),Ut=o.apply(this,Lt),qt=p.apply(this,Lt);if(mt||(mt=kt=Au()),r(mt,+P.apply(this,(Lt[0]=Ut,Lt)),+at.apply(this,Lt),+P.apply(this,(Lt[0]=qt,Lt)),+at.apply(this,Lt)),kt)return mt=null,kt+""||null}return St.source=function(kt){return arguments.length?(o=kt,St):o},St.target=function(kt){return arguments.length?(p=kt,St):p},St.x=function(kt){return arguments.length?(P=typeof kt=="function"?kt:$i(+kt),St):P},St.y=function(kt){return arguments.length?(at=typeof kt=="function"?kt:$i(+kt),St):at},St.context=function(kt){return arguments.length?(mt=kt==null?null:kt,St):mt},St}function SM(r,o,p,P,at){r.moveTo(o,p),r.bezierCurveTo(o=(o+P)/2,p,o,at,P,at)}function CM(r,o,p,P,at){r.moveTo(o,p),r.bezierCurveTo(o,p=(p+at)/2,P,p,P,at)}function _P(r,o,p,P,at){var mt=Ey(o,p),St=Ey(o,p=(p+at)/2),kt=Ey(P,p),Lt=Ey(P,at);r.moveTo(mt[0],mt[1]),r.bezierCurveTo(St[0],St[1],kt[0],kt[1],Lt[0],Lt[1])}function fx(){return hx(SM)}function k3(){return hx(CM)}function MM(){var r=hx(_P);return r.angle=r.x,delete r.x,r.radius=r.y,delete r.y,r}const au={draw:function(r,o){var p=Math.sqrt(o/jf);r.moveTo(p,0),r.arc(0,0,p,0,Ff)}},kp={draw:function(r,o){var p=Math.sqrt(o/5)/2;r.moveTo(-3*p,-p),r.lineTo(-p,-p),r.lineTo(-p,-3*p),r.lineTo(p,-3*p),r.lineTo(p,-p),r.lineTo(3*p,-p),r.lineTo(3*p,p),r.lineTo(p,p),r.lineTo(p,3*p),r.lineTo(-p,3*p),r.lineTo(-p,p),r.lineTo(-3*p,p),r.closePath()}};var dx=Math.sqrt(1/3),EM=dx*2;const kM={draw:function(r,o){var p=Math.sqrt(o/EM),P=p*dx;r.moveTo(0,-p),r.lineTo(P,0),r.lineTo(0,p),r.lineTo(-P,0),r.closePath()}};var TM=.8908130915292852,AM=Math.sin(jf/10)/Math.sin(7*jf/10),T3=Math.sin(Ff/10)*AM,OM=-Math.cos(Ff/10)*AM;const PM={draw:function(r,o){var p=Math.sqrt(o*TM),P=T3*p,at=OM*p;r.moveTo(0,-p),r.lineTo(P,at);for(var mt=1;mt<5;++mt){var St=Ff*mt/5,kt=Math.cos(St),Lt=Math.sin(St);r.lineTo(Lt*p,-kt*p),r.lineTo(kt*P-Lt*at,Lt*P+kt*at)}r.closePath()}},x_={draw:function(r,o){var p=Math.sqrt(o),P=-p/2;r.rect(P,P,p,p)}};var b_=Math.sqrt(3);const NM={draw:function(r,o){var p=-Math.sqrt(o/(b_*3));r.moveTo(0,p*2),r.lineTo(-b_*p,-p),r.lineTo(b_*p,-p),r.closePath()}};var su=-.5,lu=Math.sqrt(3)/2,w_=1/Math.sqrt(12),DM=(w_/2+1)*3;const RM={draw:function(r,o){var p=Math.sqrt(o/DM),P=p/2,at=p*w_,mt=P,St=p*w_+p,kt=-mt,Lt=St;r.moveTo(P,at),r.lineTo(mt,St),r.lineTo(kt,Lt),r.lineTo(su*P-lu*at,lu*P+su*at),r.lineTo(su*mt-lu*St,lu*mt+su*St),r.lineTo(su*kt-lu*Lt,lu*kt+su*Lt),r.lineTo(su*P+lu*at,su*at-lu*P),r.lineTo(su*mt+lu*St,su*St-lu*mt),r.lineTo(su*kt+lu*Lt,su*Lt-lu*kt),r.closePath()}};var px=[au,kp,kM,x_,PM,NM,RM];function A3(){var r=$i(au),o=$i(64),p=null;function P(){var at;if(p||(p=at=Au()),r.apply(this,arguments).draw(p,+o.apply(this,arguments)),at)return p=null,at+""||null}return P.type=function(at){return arguments.length?(r=typeof at=="function"?at:$i(at),P):r},P.size=function(at){return arguments.length?(o=typeof at=="function"?at:$i(+at),P):o},P.context=function(at){return arguments.length?(p=at==null?null:at,P):p},P}function _h(){}function mx(r,o,p){r._context.bezierCurveTo((2*r._x0+r._x1)/3,(2*r._y0+r._y1)/3,(r._x0+2*r._x1)/3,(r._y0+2*r._y1)/3,(r._x0+4*r._x1+o)/6,(r._y0+4*r._y1+p)/6)}function gx(r){this._context=r}gx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:mx(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:mx(this,r,o);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o}};function LM(r){return new gx(r)}function yx(r){this._context=r}yx.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._x2=r,this._y2=o;break;case 1:this._point=2,this._x3=r,this._y3=o;break;case 2:this._point=3,this._x4=r,this._y4=o,this._context.moveTo((this._x0+4*this._x1+r)/6,(this._y0+4*this._y1+o)/6);break;default:mx(this,r,o);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o}};function O3(r){return new yx(r)}function __(r){this._context=r}__.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var p=(this._x0+4*this._x1+r)/6,P=(this._y0+4*this._y1+o)/6;this._line?this._context.lineTo(p,P):this._context.moveTo(p,P);break;case 3:this._point=4;default:mx(this,r,o);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o}};function P3(r){return new __(r)}function IM(r,o){this._basis=new gx(r),this._beta=o}IM.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var r=this._x,o=this._y,p=r.length-1;if(p>0)for(var P=r[0],at=o[0],mt=r[p]-P,St=o[p]-at,kt=-1,Lt;++kt<=p;)Lt=kt/p,this._basis.point(this._beta*r[kt]+(1-this._beta)*(P+Lt*mt),this._beta*o[kt]+(1-this._beta)*(at+Lt*St));this._x=this._y=null,this._basis.lineEnd()},point:function(r,o){this._x.push(+r),this._y.push(+o)}};const jM=function r(o){function p(P){return o===1?new gx(P):new IM(P,o)}return p.beta=function(P){return r(+P)},p}(.85);function ky(r,o,p){r._context.bezierCurveTo(r._x1+r._k*(r._x2-r._x0),r._y1+r._k*(r._y2-r._y0),r._x2+r._k*(r._x1-o),r._y2+r._k*(r._y1-p),r._x2,r._y2)}function vx(r,o){this._context=r,this._k=(1-o)/6}vx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:ky(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2,this._x1=r,this._y1=o;break;case 2:this._point=3;default:ky(this,r,o);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const Ty=function r(o){function p(P){return new vx(P,o)}return p.tension=function(P){return r(+P)},p}(0);function S_(r,o){this._context=r,this._k=(1-o)/6}S_.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._x3=r,this._y3=o;break;case 1:this._point=2,this._context.moveTo(this._x4=r,this._y4=o);break;case 2:this._point=3,this._x5=r,this._y5=o;break;default:ky(this,r,o);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const N3=function r(o){function p(P){return new S_(P,o)}return p.tension=function(P){return r(+P)},p}(0);function C_(r,o){this._context=r,this._k=(1-o)/6}C_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:ky(this,r,o);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const FM=function r(o){function p(P){return new C_(P,o)}return p.tension=function(P){return r(+P)},p}(0);function M_(r,o,p){var P=r._x1,at=r._y1,mt=r._x2,St=r._y2;if(r._l01_a>za){var kt=2*r._l01_2a+3*r._l01_a*r._l12_a+r._l12_2a,Lt=3*r._l01_a*(r._l01_a+r._l12_a);P=(P*kt-r._x0*r._l12_2a+r._x2*r._l01_2a)/Lt,at=(at*kt-r._y0*r._l12_2a+r._y2*r._l01_2a)/Lt}if(r._l23_a>za){var Ut=2*r._l23_2a+3*r._l23_a*r._l12_a+r._l12_2a,qt=3*r._l23_a*(r._l23_a+r._l12_a);mt=(mt*Ut+r._x1*r._l23_2a-o*r._l12_2a)/qt,St=(St*Ut+r._y1*r._l23_2a-p*r._l12_2a)/qt}r._context.bezierCurveTo(P,at,mt,St,r._x2,r._y2)}function pg(r,o){this._context=r,this._alpha=o}pg.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){if(r=+r,o=+o,this._point){var p=this._x2-r,P=this._y2-o;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(p*p+P*P,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;break;case 2:this._point=3;default:M_(this,r,o);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const D3=function r(o){function p(P){return o?new pg(P,o):new vx(P,0)}return p.alpha=function(P){return r(+P)},p}(.5);function BM(r,o){this._context=r,this._alpha=o}BM.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(r,o){if(r=+r,o=+o,this._point){var p=this._x2-r,P=this._y2-o;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(p*p+P*P,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=r,this._y3=o;break;case 1:this._point=2,this._context.moveTo(this._x4=r,this._y4=o);break;case 2:this._point=3,this._x5=r,this._y5=o;break;default:M_(this,r,o);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const zM=function r(o){function p(P){return o?new BM(P,o):new S_(P,0)}return p.alpha=function(P){return r(+P)},p}(.5);function UM(r,o){this._context=r,this._alpha=o}UM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){if(r=+r,o=+o,this._point){var p=this._x2-r,P=this._y2-o;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(p*p+P*P,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:M_(this,r,o);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const R3=function r(o){function p(P){return o?new UM(P,o):new C_(P,0)}return p.alpha=function(P){return r(+P)},p}(.5);function HM(r){this._context=r}HM.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(r,o){r=+r,o=+o,this._point?this._context.lineTo(r,o):(this._point=1,this._context.moveTo(r,o))}};function WM(r){return new HM(r)}function E_(r){return r<0?-1:1}function k_(r,o,p){var P=r._x1-r._x0,at=o-r._x1,mt=(r._y1-r._y0)/(P||at<0&&-0),St=(p-r._y1)/(at||P<0&&-0),kt=(mt*at+St*P)/(P+at);return(E_(mt)+E_(St))*Math.min(Math.abs(mt),Math.abs(St),.5*Math.abs(kt))||0}function YM(r,o){var p=r._x1-r._x0;return p?(3*(r._y1-r._y0)/p-o)/2:o}function xx(r,o,p){var P=r._x0,at=r._y0,mt=r._x1,St=r._y1,kt=(mt-P)/3;r._context.bezierCurveTo(P+kt,at+kt*o,mt-kt,St-kt*p,mt,St)}function bx(r){this._context=r}bx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:xx(this,this._t0,YM(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){var p=NaN;if(r=+r,o=+o,!(r===this._x1&&o===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;break;case 2:this._point=3,xx(this,YM(this,p=k_(this,r,o)),p);break;default:xx(this,this._t0,p=k_(this,r,o));break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o,this._t0=p}}};function VM(r){this._context=new GM(r)}(VM.prototype=Object.create(bx.prototype)).point=function(r,o){bx.prototype.point.call(this,o,r)};function GM(r){this._context=r}GM.prototype={moveTo:function(r,o){this._context.moveTo(o,r)},closePath:function(){this._context.closePath()},lineTo:function(r,o){this._context.lineTo(o,r)},bezierCurveTo:function(r,o,p,P,at,mt){this._context.bezierCurveTo(o,r,P,p,mt,at)}};function L3(r){return new bx(r)}function SP(r){return new VM(r)}function qM(r){this._context=r}qM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var r=this._x,o=this._y,p=r.length;if(p)if(this._line?this._context.lineTo(r[0],o[0]):this._context.moveTo(r[0],o[0]),p===2)this._context.lineTo(r[1],o[1]);else for(var P=I3(r),at=I3(o),mt=0,St=1;St=0;--o)at[o]=(St[o]-at[o+1])/mt[o];for(mt[p-1]=(r[p]+at[p-1])/2,o=0;o=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,o),this._context.lineTo(r,o);else{var p=this._x*(1-this._t)+r*this._t;this._context.lineTo(p,this._y),this._context.lineTo(p,o)}break}}this._x=r,this._y=o}};function j3(r){return new Ay(r,.5)}function F3(r){return new Ay(r,0)}function XM(r){return new Ay(r,1)}function Tp(r,o){if((St=r.length)>1)for(var p=1,P,at,mt=r[o[0]],St,kt=mt.length;p=0;)p[o]=o;return p}function B3(r,o){return r[o]}function z3(){var r=$i([]),o=mg,p=Tp,P=B3;function at(mt){var St=r.apply(this,arguments),kt,Lt=mt.length,Ut=St.length,qt=new Array(Ut),ie;for(kt=0;kt0){for(var p,P,at=0,mt=r[0].length,St;at0)for(var p,P=0,at,mt,St,kt,Lt,Ut=r[o[0]].length;P0?(at[0]=St,at[1]=St+=mt):mt<0?(at[1]=kt,at[0]=kt+=mt):(at[0]=0,at[1]=mt)}function W3(r,o){if((at=r.length)>0){for(var p=0,P=r[o[0]],at,mt=P.length;p0)||!((mt=(at=r[o[0]]).length)>0))){for(var p=0,P=1,at,mt,St;Pmt&&(mt=at,p=o);return p}function QM(r){var o=r.map(Oy);return mg(r).sort(function(p,P){return o[p]-o[P]})}function Oy(r){for(var o=0,p=-1,P=r.length,at;++p0)){if(De/=_e,_e<0){if(De0){if(De>Zt)return;De>ie&&(ie=De)}if(De=P-kt,!(!_e&&De<0)){if(De/=_e,_e<0){if(De>Zt)return;De>ie&&(ie=De)}else if(_e>0){if(De0)){if(De/=Le,Le<0){if(De0){if(De>Zt)return;De>ie&&(ie=De)}if(De=at-Lt,!(!Le&&De<0)){if(De/=Le,Le<0){if(De>Zt)return;De>ie&&(ie=De)}else if(Le>0){if(De0)&&!(Zt<1)||(ie>0&&(r[0]=[kt+ie*_e,Lt+ie*Le]),Zt<1&&(r[1]=[kt+Zt*_e,Lt+Zt*Le])),!0}}}}}function Q3(r,o,p,P,at){var mt=r[1];if(mt)return!0;var St=r[0],kt=r.left,Lt=r.right,Ut=kt[0],qt=kt[1],ie=Lt[0],Zt=Lt[1],_e=(Ut+ie)/2,Le=(qt+Zt)/2,De,Be;if(Zt===qt){if(_e=P)return;if(Ut>ie){if(!St)St=[_e,p];else if(St[1]>=at)return;mt=[_e,at]}else{if(!St)St=[_e,at];else if(St[1]1)if(Ut>ie){if(!St)St=[(p-Be)/De,p];else if(St[1]>=at)return;mt=[(at-Be)/De,at]}else{if(!St)St=[(at-Be)/De,at];else if(St[1]=P)return;mt=[P,De*P+Be]}else{if(!St)St=[P,De*P+Be];else if(St[0]Fo||Math.abs(mt[0][1]-mt[1][1])>Fo))&&delete Os[at]}function tO(r){return jl[r.index]={site:r,halfedges:[]}}function eO(r,o){var p=r.site,P=o.left,at=o.right;return p===at&&(at=P,P=p),at?Math.atan2(at[1]-P[1],at[0]-P[0]):(p===P?(P=o[1],at=o[0]):(P=o[0],at=o[1]),Math.atan2(P[0]-at[0],at[1]-P[1]))}function nE(r,o){return o[+(o.left!==r.site)]}function rE(r,o){return o[+(o.left===r.site)]}function iE(){for(var r=0,o=jl.length,p,P,at,mt;rFo||Math.abs(Be-_e)>Fo)&&(Ut.splice(Lt,0,Os.push(Dy(kt,Le,Math.abs(De-r)Fo?[r,Math.abs(Zt-r)Fo?[Math.abs(_e-P)Fo?[p,Math.abs(Zt-p)Fo?[Math.abs(_e-o)=-sO)){var _e=Lt*Lt+Ut*Ut,Le=qt*qt+ie*ie,De=(ie*_e-Ut*Le)/Zt,Be=(Lt*Le-qt*_e)/Zt,We=D_.pop()||new rO;We.arc=r,We.site=at,We.x=De+St,We.y=(We.cy=Be+kt)+Math.sqrt(De*De+Be*Be),r.circle=We;for(var cn=null,nn=bg._;nn;)if(We.yFo)kt=kt.L;else if(St=o-aO(kt,p),St>Fo){if(!kt.R){P=kt;break}kt=kt.R}else{mt>-Fo?(P=kt.P,at=kt):St>-Fo?(P=kt,at=kt.N):P=at=kt;break}tO(r);var Lt=sE(r);if(Ap.insert(P,Lt),!(!P&&!at)){if(P===at){xg(P),at=sE(P.site),Ap.insert(Lt,at),Lt.edge=at.edge=yg(P.site,Lt.site),vg(P),vg(at);return}if(!at){Lt.edge=yg(P.site,Lt.site);return}xg(P),xg(at);var Ut=P.site,qt=Ut[0],ie=Ut[1],Zt=r[0]-qt,_e=r[1]-ie,Le=at.site,De=Le[0]-qt,Be=Le[1]-ie,We=2*(Zt*Be-_e*De),cn=Zt*Zt+_e*_e,nn=De*De+Be*Be,ln=[(Be*cn-_e*nn)/We+qt,(Zt*nn-De*cn)/We+ie];Ry(at.edge,Ut,Le,ln),Lt.edge=yg(Ut,r,null,ln),at.edge=yg(r,Le,null,ln),vg(P),vg(at)}}function Ly(r,o){var p=r.site,P=p[0],at=p[1],mt=at-o;if(!mt)return P;var St=r.P;if(!St)return-1/0;p=St.site;var kt=p[0],Lt=p[1],Ut=Lt-o;if(!Ut)return kt;var qt=kt-P,ie=1/mt-1/Ut,Zt=qt/Ut;return ie?(-Zt+Math.sqrt(Zt*Zt-2*ie*(qt*qt/(-2*Ut)-Lt+Ut/2+at-mt/2)))/ie+P:(P+kt)/2}function aO(r,o){var p=r.N;if(p)return Ly(p,o);var P=r.site;return P[1]===o?P[0]:1/0}var Fo=1e-6,sO=1e-12,Ap,jl,bg,Os;function lO(r,o,p){return(r[0]-p[0])*(o[1]-r[1])-(r[0]-o[0])*(p[1]-r[1])}function uO(r,o){return o[1]-r[1]||o[0]-r[0]}function I_(r,o){var p=r.sort(uO).pop(),P,at,mt;for(Os=[],jl=new Array(r.length),Ap=new eE,bg=new eE;;)if(mt=oE,p&&(!mt||p[1]=St)return null;var Lt=r-kt.site[0],Ut=o-kt.site[1],qt=Lt*Lt+Ut*Ut;do kt=P.cells[at=mt],mt=null,kt.halfedges.forEach(function(ie){var Zt=P.edges[ie],_e=Zt.left;if(!((_e===kt.site||!_e)&&!(_e=Zt.right))){var Le=r-_e[0],De=o-_e[1],Be=Le*Le+De*De;BeP?(P+at)/2:Math.min(0,P)||Math.max(0,at),St>mt?(mt+St)/2:Math.min(0,mt)||Math.max(0,St))}function lE(){var r=Mx,o=fO,p=mO,P=dO,at=pO,mt=[0,1/0],St=[[-1/0,-1/0],[1/0,1/0]],kt=250,Lt=xw,Ut=dt("start","zoom","end"),qt,ie,Zt=500,_e=150,Le=0;function De(fn){fn.property("__zoom",F_).on("wheel.zoom",qn).on("mousedown.zoom",Un).on("dblclick.zoom",gr).filter(at).on("touchstart.zoom",ir).on("touchmove.zoom",cr).on("touchend.zoom touchcancel.zoom",er).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}De.transform=function(fn,$n,kr){var Wn=fn.selection?fn.selection():fn;Wn.property("__zoom",F_),fn!==Wn?nn(fn,$n,kr):Wn.interrupt().each(function(){ln(this,arguments).start().zoom(null,typeof $n=="function"?$n.apply(this,arguments):$n).end()})},De.scaleBy=function(fn,$n,kr){De.scaleTo(fn,function(){var Wn=this.__zoom.k,_r=typeof $n=="function"?$n.apply(this,arguments):$n;return Wn*_r},kr)},De.scaleTo=function(fn,$n,kr){De.transform(fn,function(){var Wn=o.apply(this,arguments),_r=this.__zoom,Jr=kr==null?cn(Wn):typeof kr=="function"?kr.apply(this,arguments):kr,qr=_r.invert(Jr),ii=typeof $n=="function"?$n.apply(this,arguments):$n;return p(We(Be(_r,ii),Jr,qr),Wn,St)},kr)},De.translateBy=function(fn,$n,kr){De.transform(fn,function(){return p(this.__zoom.translate(typeof $n=="function"?$n.apply(this,arguments):$n,typeof kr=="function"?kr.apply(this,arguments):kr),o.apply(this,arguments),St)})},De.translateTo=function(fn,$n,kr,Wn){De.transform(fn,function(){var _r=o.apply(this,arguments),Jr=this.__zoom,qr=Wn==null?cn(_r):typeof Wn=="function"?Wn.apply(this,arguments):Wn;return p(Iy.translate(qr[0],qr[1]).scale(Jr.k).translate(typeof $n=="function"?-$n.apply(this,arguments):-$n,typeof kr=="function"?-kr.apply(this,arguments):-kr),_r,St)},Wn)};function Be(fn,$n){return $n=Math.max(mt[0],Math.min(mt[1],$n)),$n===fn.k?fn:new Lc($n,fn.x,fn.y)}function We(fn,$n,kr){var Wn=$n[0]-kr[0]*fn.k,_r=$n[1]-kr[1]*fn.k;return Wn===fn.x&&_r===fn.y?fn:new Lc(fn.k,Wn,_r)}function cn(fn){return[(+fn[0][0]+ +fn[1][0])/2,(+fn[0][1]+ +fn[1][1])/2]}function nn(fn,$n,kr){fn.on("start.zoom",function(){ln(this,arguments).start()}).on("interrupt.zoom end.zoom",function(){ln(this,arguments).end()}).tween("zoom",function(){var Wn=this,_r=arguments,Jr=ln(Wn,_r),qr=o.apply(Wn,_r),ii=kr==null?cn(qr):typeof kr=="function"?kr.apply(Wn,_r):kr,Ti=Math.max(qr[1][0]-qr[0][0],qr[1][1]-qr[0][1]),Ni=Wn.__zoom,Oo=typeof $n=="function"?$n.apply(Wn,_r):$n,oo=Lt(Ni.invert(ii).concat(Ti/Ni.k),Oo.invert(ii).concat(Ti/Oo.k));return function(vo){if(vo===1)vo=Oo;else{var _a=oo(vo),uu=Ti/_a[2];vo=new Lc(uu,ii[0]-_a[0]*uu,ii[1]-_a[1]*uu)}Jr.zoom(null,vo)}})}function ln(fn,$n,kr){return!kr&&fn.__zooming||new Pn(fn,$n)}function Pn(fn,$n){this.that=fn,this.args=$n,this.active=0,this.extent=o.apply(fn,$n),this.taps=0}Pn.prototype={start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(fn,$n){return this.mouse&&fn!=="mouse"&&(this.mouse[1]=$n.invert(this.mouse[0])),this.touch0&&fn!=="touch"&&(this.touch0[1]=$n.invert(this.touch0[0])),this.touch1&&fn!=="touch"&&(this.touch1[1]=$n.invert(this.touch1[0])),this.that.__zoom=$n,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(fn){Vt(new hO(De,fn,this.that.__zoom),Ut.apply,Ut,[fn,this.that,this.args])}};function qn(){if(!r.apply(this,arguments))return;var fn=ln(this,arguments),$n=this.__zoom,kr=Math.max(mt[0],Math.min(mt[1],$n.k*Math.pow(2,P.apply(this,arguments)))),Wn=Or(this);if(fn.wheel)(fn.mouse[0][0]!==Wn[0]||fn.mouse[0][1]!==Wn[1])&&(fn.mouse[1]=$n.invert(fn.mouse[0]=Wn)),clearTimeout(fn.wheel);else{if($n.k===kr)return;fn.mouse=[Wn,$n.invert(Wn)],wu(this),fn.start()}Op(),fn.wheel=setTimeout(_r,_e),fn.zoom("mouse",p(We(Be($n,kr),fn.mouse[0],fn.mouse[1]),fn.extent,St));function _r(){fn.wheel=null,fn.end()}}function Un(){if(ie||!r.apply(this,arguments))return;var fn=ln(this,arguments,!0),$n=sn(Mr.view).on("mousemove.zoom",Jr,!0).on("mouseup.zoom",qr,!0),kr=Or(this),Wn=Mr.clientX,_r=Mr.clientY;Yn(Mr.view),Cx(),fn.mouse=[kr,this.__zoom.invert(kr)],wu(this),fn.start();function Jr(){if(Op(),!fn.moved){var ii=Mr.clientX-Wn,Ti=Mr.clientY-_r;fn.moved=ii*ii+Ti*Ti>Le}fn.zoom("mouse",p(We(fn.that.__zoom,fn.mouse[0]=Or(fn.that),fn.mouse[1]),fn.extent,St))}function qr(){$n.on("mousemove.zoom mouseup.zoom",null),fr(Mr.view,fn.moved),Op(),fn.end()}}function gr(){if(r.apply(this,arguments)){var fn=this.__zoom,$n=Or(this),kr=fn.invert($n),Wn=fn.k*(Mr.shiftKey?.5:2),_r=p(We(Be(fn,Wn),$n,kr),o.apply(this,arguments),St);Op(),kt>0?sn(this).transition().duration(kt).call(nn,_r,$n):sn(this).call(De.transform,_r)}}function ir(){if(r.apply(this,arguments)){var fn=Mr.touches,$n=fn.length,kr=ln(this,arguments,Mr.changedTouches.length===$n),Wn,_r,Jr,qr;for(Cx(),_r=0;_r<$n;++_r)Jr=fn[_r],qr=mr(this,fn,Jr.identifier),qr=[qr,this.__zoom.invert(qr),Jr.identifier],kr.touch0?!kr.touch1&&kr.touch0[2]!==qr[2]&&(kr.touch1=qr,kr.taps=0):(kr.touch0=qr,Wn=!0,kr.taps=1+!!qt);qt&&(qt=clearTimeout(qt)),Wn&&(kr.taps<2&&(qt=setTimeout(function(){qt=null},Zt)),wu(this),kr.start())}}function cr(){if(this.__zooming){var fn=ln(this,arguments),$n=Mr.changedTouches,kr=$n.length,Wn,_r,Jr,qr;for(Op(),qt&&(qt=clearTimeout(qt)),fn.taps=0,Wn=0;Wn{"use strict";xt.d(Oe,{V_:()=>j,h1:()=>st,ah:()=>R,Jj:()=>L,yl:()=>Pt,$A:()=>X,rG:()=>q,KS:()=>V,Xx:()=>N,JW:()=>_,T9:()=>u,i2:()=>v,JZ:()=>I,Am:()=>S,jk:()=>b,AS:()=>$,Ny:()=>K,YV:()=>C,y1:()=>H,SQ:()=>ct,k4:()=>et,cz:()=>dt,c3:()=>h,Ft:()=>l,zr:()=>k,lq:()=>Q,sG:()=>W,Zc:()=>it,mg:()=>pt,GV:()=>Y,yU:()=>Mt});function j(w,B){return wB?1:w>=B?0:NaN}function Pt(w){return w.length===1&&(w=d(w)),{left:function(B,tt,nt,x){for(nt==null&&(nt=0),x==null&&(x=B.length);nt>>1;w(B[y],tt)<0?nt=y+1:x=y}return nt},right:function(B,tt,nt,x){for(nt==null&&(nt=0),x==null&&(x=B.length);nt>>1;w(B[y],tt)>0?x=y:nt=y+1}return nt}}}function d(w){return function(B,tt){return j(w(B),tt)}}var g=Pt(j),L=g.right,R=g.left;const st=L;function $(w,B){B==null&&(B=J);for(var tt=0,nt=w.length-1,x=w[0],y=new Array(nt<0?0:nt);ttw?1:B>=w?0:NaN}function Z(w){return w===null?NaN:+w}function Y(w,B){var tt=w.length,nt=0,x=-1,y=0,F,lt,rt=0;if(B==null)for(;++x1)return rt/(nt-1)}function V(w,B){var tt=Y(w,B);return tt&&Math.sqrt(tt)}function N(w,B){var tt=w.length,nt=-1,x,y,F;if(B==null){for(;++nt=x)for(y=F=x;++ntx&&(y=x),F=x)for(y=F=x;++ntx&&(y=x),F0)return[w];if((nt=B0)for(w=Math.ceil(w/lt),B=Math.floor(B/lt),F=new Array(y=Math.ceil(B-w+1));++x=0?(y>=z?10:y>=c?5:y>=D?2:1)*Math.pow(10,x):-Math.pow(10,-x)/(y>=z?10:y>=c?5:y>=D?2:1)}function W(w,B,tt){var nt=Math.abs(B-w)/Math.max(0,tt),x=Math.pow(10,Math.floor(Math.log(nt)/Math.LN10)),y=nt/x;return y>=z?x*=10:y>=c?x*=5:y>=D&&(x*=2),BOt;)At.pop(),--$t;var Xt=new Array($t+1),Ct;for(y=0;y<=$t;++y)Ct=Xt[y]=[],Ct.x0=y>0?At[y-1]:vt,Ct.x1=y<$t?At[y]:Ot;for(y=0;y=1)return+tt(w[nt-1],nt-1,w);var nt,x=(nt-1)*B,y=Math.floor(x),F=+tt(w[y],y,w),lt=+tt(w[y+1],y+1,w);return F+(lt-F)*(x-y)}}function h(w,B,tt){return w=A.call(w,Z).sort(j),Math.ceil((tt-B)/(2*(C(w,.75)-C(w,.25))*Math.pow(w.length,-.3333333333333333)))}function l(w,B,tt){return Math.ceil((tt-B)/(3.5*V(w)*Math.pow(w.length,-.3333333333333333)))}function u(w,B){var tt=w.length,nt=-1,x,y;if(B==null){for(;++nt=x)for(y=x;++nty&&(y=x)}else for(;++nt=x)for(y=x;++nty&&(y=x);return y}function v(w,B){var tt=w.length,nt=tt,x=-1,y,F=0;if(B==null)for(;++x=0;)for(F=w[B],tt=F.length;--tt>=0;)y[--x]=F[tt];return y}function b(w,B){var tt=w.length,nt=-1,x,y;if(B==null){for(;++nt=x)for(y=x;++ntx&&(y=x)}else for(;++nt=x)for(y=x;++ntx&&(y=x);return y}function K(w,B){for(var tt=B.length,nt=new Array(tt);tt--;)nt[tt]=w[B[tt]];return nt}function ct(w,B){if(tt=w.length){var tt,nt=0,x=0,y,F=w[x];for(B==null&&(B=j);++nt=k?W:""+Array(k+1-C.length).join(_)+W},T={s:U,z:function(W){var k=-W.utcOffset(),_=Math.abs(k),C=Math.floor(_/60),h=_%60;return(k<=0?"+":"-")+U(C,2,"0")+":"+U(h,2,"0")},m:function W(k,_){if(k.date()<_.date())return-W(_,k);var C=12*(_.year()-k.year())+(_.month()-k.month()),h=k.clone().add(C,$),l=_-h<0,u=k.clone().add(C+(l?-1:1),$);return+(-(C+(_-h)/(l?h-u:u-h))||0)},a:function(W){return W<0?Math.ceil(W)||0:Math.floor(W)},p:function(W){return{M:$,y:X,w:st,d:R,D:q,h:L,m:g,s:d,ms:Pt,Q:J}[W]||String(W||"").toLowerCase().replace(/s$/,"")},u:function(W){return W===void 0}},A="en",M={};M[A]=N;var O="$isDayjsObject",H=function(W){return W instanceof it||!(!W||!W[O])},z=function W(k,_,C){var h;if(!k)return A;if(typeof k=="string"){var l=k.toLowerCase();M[l]&&(h=l),_&&(M[l]=_,h=l);var u=k.split("-");if(!h&&u.length>1)return W(u[0])}else{var v=k.name;M[v]=k,h=v}return!C&&h&&(A=h),h||!C&&A},c=function(W,k){if(H(W))return W.clone();var _=typeof k=="object"?k:{};return _.date=W,_.args=arguments,new it(_)},D=T;D.l=z,D.i=H,D.w=function(W,k){return c(W,{locale:k.$L,utc:k.$u,x:k.$x,$offset:k.$offset})};var it=function(){function W(_){this.$L=z(_.locale,null,!0),this.parse(_),this.$x=this.$x||_.x||{},this[O]=!0}var k=W.prototype;return k.parse=function(_){this.$d=function(C){var h=C.date,l=C.utc;if(h===null)return new Date(NaN);if(D.u(h))return new Date;if(h instanceof Date)return new Date(h);if(typeof h=="string"&&!/Z$/i.test(h)){var u=h.match(Y);if(u){var v=u[2]-1||0,I=(u[7]||"0").substring(0,3);return l?new Date(Date.UTC(u[1],v,u[3]||1,u[4]||0,u[5]||0,u[6]||0,I)):new Date(u[1],v,u[3]||1,u[4]||0,u[5]||0,u[6]||0,I)}}return new Date(h)}(_),this.init()},k.init=function(){var _=this.$d;this.$y=_.getFullYear(),this.$M=_.getMonth(),this.$D=_.getDate(),this.$W=_.getDay(),this.$H=_.getHours(),this.$m=_.getMinutes(),this.$s=_.getSeconds(),this.$ms=_.getMilliseconds()},k.$utils=function(){return D},k.isValid=function(){return this.$d.toString()!==Z},k.isSame=function(_,C){var h=c(_);return this.startOf(C)<=h&&h<=this.endOf(C)},k.isAfter=function(_,C){return c(_)68?1900:2e3)},st=function(Y){return function(V){this[Y]=+V}},$=[/[+-]\d\d:?(\d\d)?|Z/,function(Y){(this.zone||(this.zone={})).offset=function(V){if(!V||V==="Z")return 0;var N=V.match(/([+-]|\d\d)/g),U=60*N[1]+(+N[2]||0);return U===0?0:N[0]==="+"?-U:U}(Y)}],J=function(Y){var V=L[Y];return V&&(V.indexOf?V:V.s.concat(V.f))},X=function(Y,V){var N,U=L.meridiem;if(U){for(var T=1;T<=24;T+=1)if(Y.indexOf(U(T,0,V))>-1){N=T>12;break}}else N=Y===(V?"pm":"PM");return N},q={A:[g,function(Y){this.afternoon=X(Y,!1)}],a:[g,function(Y){this.afternoon=X(Y,!0)}],Q:[j,function(Y){this.month=3*(Y-1)+1}],S:[j,function(Y){this.milliseconds=100*+Y}],SS:[Pt,function(Y){this.milliseconds=10*+Y}],SSS:[/\d{3}/,function(Y){this.milliseconds=+Y}],s:[d,st("seconds")],ss:[d,st("seconds")],m:[d,st("minutes")],mm:[d,st("minutes")],H:[d,st("hours")],h:[d,st("hours")],HH:[d,st("hours")],hh:[d,st("hours")],D:[d,st("day")],DD:[Pt,st("day")],Do:[g,function(Y){var V=L.ordinal,N=Y.match(/\d+/);if(this.day=N[0],V)for(var U=1;U<=31;U+=1)V(U).replace(/\[|\]/g,"")===Y&&(this.day=U)}],w:[d,st("week")],ww:[Pt,st("week")],M:[d,st("month")],MM:[Pt,st("month")],MMM:[g,function(Y){var V=J("months"),N=(J("monthsShort")||V.map(function(U){return U.slice(0,3)})).indexOf(Y)+1;if(N<1)throw new Error;this.month=N%12||N}],MMMM:[g,function(Y){var V=J("months").indexOf(Y)+1;if(V<1)throw new Error;this.month=V%12||V}],Y:[/[+-]?\d+/,st("year")],YY:[Pt,function(Y){this.year=R(Y)}],YYYY:[/\d{4}/,st("year")],Z:$,ZZ:$};function Z(Y){var V,N;V=Y,N=L&&L.formats;for(var U=(Y=V.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(c,D,it){var Q=it&&it.toUpperCase();return D||N[it]||Oe[it]||N[Q].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(W,k,_){return k||_.slice(1)})})).match(xt),T=U.length,A=0;A-1)return new Date((h==="X"?1e3:1)*C);var v=Z(h)(C),I=v.year,S=v.month,b=v.day,K=v.hours,ct=v.minutes,et=v.seconds,dt=v.milliseconds,pt=v.zone,bt=v.week,Mt=new Date,w=b||(I||S?1:Mt.getDate()),B=I||Mt.getFullYear(),tt=0;I&&!S||(tt=S>0?S-1:Mt.getMonth());var nt,x=K||0,y=ct||0,F=et||0,lt=dt||0;return pt?new Date(Date.UTC(B,tt,w,x,y,F,lt+60*pt.offset*1e3)):l?new Date(Date.UTC(B,tt,w,x,y,F,lt)):(nt=new Date(B,tt,w,x,y,F,lt),bt&&(nt=u(nt).week(bt).toDate()),nt)}catch(rt){return new Date("")}}(M,z,O,N),this.init(),Q&&Q!==!0&&(this.$L=this.locale(Q).$L),it&&M!=this.format(z)&&(this.$d=new Date("")),L={}}else if(z instanceof Array)for(var W=z.length,k=1;k<=W;k+=1){H[1]=z[k-1];var _=N.apply(this,H);if(_.isValid()){this.$d=_.$d,this.$L=_.$L,this.init();break}k===W&&(this.$d=new Date(""))}else T.call(this,A)}}})},9050:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";return function(Oe,xt,j){xt.prototype.isBetween=function(Pt,d,g,L){var R=j(Pt),st=j(d),$=(L=L||"()")[0]==="(",J=L[1]===")";return($?this.isAfter(R,g):!this.isBefore(R,g))&&(J?this.isBefore(st,g):!this.isAfter(st,g))||($?this.isBefore(R,g):!this.isAfter(R,g))&&(J?this.isAfter(st,g):!this.isBefore(st,g))}}})},2976:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(xt,j,Pt){var d=j.prototype,g=d.format;Pt.en.formats=Oe,d.format=function(L){L===void 0&&(L="YYYY-MM-DDTHH:mm:ssZ");var R=this.$locale().formats,st=function($,J){return $.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(X,q,Z){var Y=Z&&Z.toUpperCase();return q||J[Z]||Oe[Z]||J[Y].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(V,N,U){return N||U.slice(1)})})}(L,R===void 0?{}:R);return g.call(this,st)}}})},1398:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe="month",xt="quarter";return function(j,Pt){var d=Pt.prototype;d.quarter=function(R){return this.$utils().u(R)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(R-1))};var g=d.add;d.add=function(R,st){return R=Number(R),this.$utils().p(st)===xt?this.add(3*R,Oe):g.bind(this)(R,st)};var L=d.startOf;d.startOf=function(R,st){var $=this.$utils(),J=!!$.u(st)||st;if($.p(R)===xt){var X=this.quarter()-1;return J?this.month(3*X).startOf(Oe).startOf("day"):this.month(3*X+2).endOf(Oe).endOf("day")}return L.bind(this)(R,st)}}})},4843:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe={year:0,month:1,day:2,hour:3,minute:4,second:5},xt={};return function(j,Pt,d){var g,L=function(J,X,q){q===void 0&&(q={});var Z=new Date(J),Y=function(V,N){N===void 0&&(N={});var U=N.timeZoneName||"short",T=V+"|"+U,A=xt[T];return A||(A=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:V,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:U}),xt[T]=A),A}(X,q);return Y.formatToParts(Z)},R=function(J,X){for(var q=L(J,X),Z=[],Y=0;Y=0&&(Z[T]=parseInt(U,10))}var A=Z[3],M=A===24?0:A,O=Z[0]+"-"+Z[1]+"-"+Z[2]+" "+M+":"+Z[4]+":"+Z[5]+":000",H=+J;return(d.utc(O).valueOf()-(H-=H%1e3))/6e4},st=Pt.prototype;st.tz=function(J,X){J===void 0&&(J=g);var q,Z=this.utcOffset(),Y=this.toDate(),V=Y.toLocaleString("en-US",{timeZone:J}),N=Math.round((Y-new Date(V))/1e3/60),U=15*-Math.round(Y.getTimezoneOffset()/15)-N;if(!Number(U))q=this.utcOffset(0,X);else if(q=d(V,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(U,!0),X){var T=q.utcOffset();q=q.add(Z-T,"minute")}return q.$x.$timezone=J,q},st.offsetName=function(J){var X=this.$x.$timezone||d.tz.guess(),q=L(this.valueOf(),X,{timeZoneName:J}).find(function(Z){return Z.type.toLowerCase()==="timezonename"});return q&&q.value};var $=st.startOf;st.startOf=function(J,X){if(!this.$x||!this.$x.$timezone)return $.call(this,J,X);var q=d(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return $.call(q,J,X).tz(this.$x.$timezone,!0)},d.tz=function(J,X,q){var Z=q&&X,Y=q||X||g,V=R(+d(),Y);if(typeof J!="string")return d(J).tz(Y);var N=function(M,O,H){var z=M-60*O*1e3,c=R(z,H);if(O===c)return[z,O];var D=R(z-=60*(c-O)*1e3,H);return c===D?[z,c]:[M-60*Math.min(c,D)*1e3,Math.max(c,D)]}(d.utc(J,Z).valueOf(),V,Y),U=N[0],T=N[1],A=d(U).utcOffset(T);return A.$x.$timezone=Y,A},d.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},d.tz.setDefault=function(J){g=J}}})},4112:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe="minute",xt=/[+-]\d\d(?::?\d\d)?/g,j=/([+-]|\d\d)/g;return function(Pt,d,g){var L=d.prototype;g.utc=function(Z){var Y={date:Z,utc:!0,args:arguments};return new d(Y)},L.utc=function(Z){var Y=g(this.toDate(),{locale:this.$L,utc:!0});return Z?Y.add(this.utcOffset(),Oe):Y},L.local=function(){return g(this.toDate(),{locale:this.$L,utc:!1})};var R=L.parse;L.parse=function(Z){Z.utc&&(this.$u=!0),this.$utils().u(Z.$offset)||(this.$offset=Z.$offset),R.call(this,Z)};var st=L.init;L.init=function(){if(this.$u){var Z=this.$d;this.$y=Z.getUTCFullYear(),this.$M=Z.getUTCMonth(),this.$D=Z.getUTCDate(),this.$W=Z.getUTCDay(),this.$H=Z.getUTCHours(),this.$m=Z.getUTCMinutes(),this.$s=Z.getUTCSeconds(),this.$ms=Z.getUTCMilliseconds()}else st.call(this)};var $=L.utcOffset;L.utcOffset=function(Z,Y){var V=this.$utils().u;if(V(Z))return this.$u?0:V(this.$offset)?$.call(this):this.$offset;if(typeof Z=="string"&&(Z=function(A){A===void 0&&(A="");var M=A.match(xt);if(!M)return null;var O=(""+M[0]).match(j)||["-",0,0],H=O[0],z=60*+O[1]+ +O[2];return z===0?0:H==="+"?z:-z}(Z),Z===null))return this;var N=Math.abs(Z)<=16?60*Z:Z,U=this;if(Y)return U.$offset=N,U.$u=Z===0,U;if(Z!==0){var T=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(U=this.local().add(N+T,Oe)).$offset=N,U.$x.$localOffset=T}else U=this.utc();return U};var J=L.format;L.format=function(Z){var Y=Z||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return J.call(this,Y)},L.valueOf=function(){var Z=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*Z},L.isUTC=function(){return!!this.$u},L.toISOString=function(){return this.toDate().toISOString()},L.toString=function(){return this.toDate().toUTCString()};var X=L.toDate;L.toDate=function(Z){return Z==="s"&&this.$offset?g(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():X.call(this)};var q=L.diff;L.diff=function(Z,Y,V){if(Z&&this.$u===Z.$u)return q.call(this,Z,Y,V);var N=this.local(),U=g(Z).local();return q.call(N,U,Y,V)}}})},2713:(yr,Oe,xt)=>{var j;/*! +`)}function Ut(ie){return ie.map(qt).join(r)}function qt(ie){return ie==null?"":ie instanceof Date?bb(ie):o.test(ie+="")?'"'+ie.replace(/"/g,'""')+'"':ie}return{parse:P,parseRows:at,format:St,formatBody:kt,formatRows:Lt,formatRow:Ut,formatValue:qt}}var Jc=Id(","),gm=Jc.parse,es=Jc.parseRows,Sv=Jc.format,wb=Jc.formatBody,Es=Jc.formatRows,fs=Jc.formatRow,_b=Jc.formatValue,th=Id(" "),ym=th.parse,h0=th.parseRows,pf=th.format,Cv=th.formatBody,Sb=th.formatRows,vm=th.formatRow,f0=th.formatValue;function Cb(r){for(var o in r){var p=r[o].trim(),P,at;if(!p)p=null;else if(p==="true")p=!0;else if(p==="false")p=!1;else if(p==="NaN")p=NaN;else if(!isNaN(P=+p))p=P;else if(at=p.match(/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)?$/))d0&&at[4]&&!at[7]&&(p=p.replace(/-/g,"/").replace(/T/," ")),p=new Date(p);else continue;r[o]=p}return r}var d0=new Date("2019-01-01T00:00").getHours()||new Date("2019-07-01T00:00").getHours();function p0(r){return+r}function m0(r){return r*r}function Mv(r){return r*(2-r)}function jd(r){return((r*=2)<=1?r*r:--r*(2-r)+1)/2}var g0=3,yc=function r(o){o=+o;function p(P){return Math.pow(P,o)}return p.exponent=r,p}(g0),eh=function r(o){o=+o;function p(P){return 1-Math.pow(1-P,o)}return p.exponent=r,p}(g0),xm=function r(o){o=+o;function p(P){return((P*=2)<=1?Math.pow(P,o):2-Math.pow(2-P,o))/2}return p.exponent=r,p}(g0),Fd=Math.PI,Gl=Fd/2;function Mb(r){return+r==1?1:1-Math.cos(r*Gl)}function y0(r){return Math.sin(r*Gl)}function bm(r){return(1-Math.cos(Fd*r))/2}function Du(r){return(Math.pow(2,-10*r)-.0009765625)*1.0009775171065494}function v0(r){return Du(1-+r)}function ds(r){return 1-Du(r)}function ca(r){return((r*=2)<=1?Du(1-r):2-Du(r-1))/2}function wm(r){return 1-Math.sqrt(1-r*r)}function Bd(r){return Math.sqrt(1- --r*r)}function nh(r){return((r*=2)<=1?1-Math.sqrt(1-r*r):Math.sqrt(1-(r-=2)*r)+1)/2}var ra=4/11,_m=6/11,Vr=8/11,vc=3/4,x0=9/11,rh=10/11,Eb=15/16,ih=21/22,zd=63/64,mf=1/ra/ra;function Sm(r){return 1-gf(1-r)}function gf(r){return(r=+r)=(ie=(kt+Ut)/2))?kt=ie:Ut=ie,(Be=p>=(Zt=(Lt+qt)/2))?Lt=Zt:qt=Zt,at=mt,!(mt=mt[We=Be<<1|De]))return at[We]=St,r;if(_e=+r._x.call(null,mt.data),Le=+r._y.call(null,mt.data),o===_e&&p===Le)return St.next=mt,at?at[We]=St:r._root=St,r;do at=at?at[We]=new Array(4):r._root=new Array(4),(De=o>=(ie=(kt+Ut)/2))?kt=ie:Ut=ie,(Be=p>=(Zt=(Lt+qt)/2))?Lt=Zt:qt=Zt;while((We=Be<<1|De)===(cn=(Le>=Zt)<<1|_e>=ie));return at[cn]=mt,at[We]=St,r}function _0(r){var o,p,P=r.length,at,mt,St=new Array(P),kt=new Array(P),Lt=1/0,Ut=1/0,qt=-1/0,ie=-1/0;for(p=0;pqt&&(qt=at),mtie&&(ie=mt));if(Lt>qt||Ut>ie)return this;for(this.cover(Lt,Ut).cover(qt,ie),p=0;pr||r>=at||P>o||o>=mt;)switch(Ut=(oqt||(kt=Le.y0)>ie||(Lt=Le.x1)=We)<<1|r>=Be)&&(Le=Zt[Zt.length-1],Zt[Zt.length-1]=Zt[Zt.length-1-De],Zt[Zt.length-1-De]=Le)}else{var cn=r-+this._x.call(null,_e.data),nn=o-+this._y.call(null,_e.data),ln=cn*cn+nn*nn;if(ln=(Zt=(St+Lt)/2))?St=Zt:Lt=Zt,(De=ie>=(_e=(kt+Ut)/2))?kt=_e:Ut=_e,o=p,!(p=p[Be=De<<1|Le]))return this;if(!p.length)break;(o[Be+1&3]||o[Be+2&3]||o[Be+3&3])&&(P=o,We=Be)}for(;p.data!==r;)if(at=p,!(p=p.next))return this;return(mt=p.next)&&delete p.next,at?(mt?at.next=mt:delete at.next,this):o?(mt?o[Be]=mt:delete o[Be],(p=o[0]||o[1]||o[2]||o[3])&&p===(o[3]||o[2]||o[1]||o[0])&&!p.length&&(P?P[We]=p:this._root=p),this):(this._root=mt,this)}function Lu(r){for(var o=0,p=r.length;oie.index){var cr=Zt-Un.x-Un.vx,er=_e-Un.y-Un.vy,fn=cr*cr+er*er;fnZt+ir||Pn_e+ir||qn<_e-ir}}function St(Lt){if(Lt.data)return Lt.r=p[Lt.data.index];for(var Ut=Lt.r=0;Ut<4;++Ut)Lt[Ut]&&Lt[Ut].r>Lt.r&&(Lt.r=Lt[Ut].r)}function kt(){if(o){var Lt,Ut=o.length,qt;for(p=new Array(Ut),Lt=0;Lt1?(De==null?kt.remove(Le):kt.set(Le,_e(De)),o):kt.get(Le)},find:function(Le,De,Be){var We=0,cn=r.length,nn,ln,Pn,qn,Un;for(Be==null?Be=1/0:Be*=Be,We=0;We1?(Ut.on(Le,De),o):Ut.on(Le)}}}function Tb(){var r,o,p,P=ha(-30),at,mt=1,St=1/0,kt=.81;function Lt(Zt){var _e,Le=r.length,De=Fa(r,bc,Nv).visitAfter(qt);for(p=Zt,_e=0;_e=St)return;(Zt.data!==o||Zt.next)&&(Be===0&&(Be=Ru(),nn+=Be*Be),We===0&&(We=Ru(),nn+=We*We),nn=1e21?r.toLocaleString("en").replace(/,/g,""):r.toString(10)}function _f(r,o){if((p=(r=o?r.toExponential(o-1):r.toExponential()).indexOf("e"))<0)return null;var p,P=r.slice(0,p);return[P.length>1?P[0]+P.slice(2):P,+r.slice(p+1)]}function Ol(r){return r=_f(Math.abs(r)),r?r[1]:NaN}function Rv(r,o){return function(p,P){for(var at=p.length,mt=[],St=0,kt=r[0],Lt=0;at>0&&kt>0&&(Lt+kt+1>P&&(kt=Math.max(1,P-Lt)),mt.push(p.substring(at-=kt,at+kt)),!((Lt+=kt+1)>P));)kt=r[St=(St+1)%r.length];return mt.reverse().join(o)}}function fa(r){return function(o){return o.replace(/[0-9]/g,function(p){return r[+p]})}}var Pb=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Sf(r){if(!(o=Pb.exec(r)))throw new Error("invalid format: "+r);var o;return new k0({fill:o[1],align:o[2],sign:o[3],symbol:o[4],zero:o[5],width:o[6],comma:o[7],precision:o[8]&&o[8].slice(1),trim:o[9],type:o[10]})}Sf.prototype=k0.prototype;function k0(r){this.fill=r.fill===void 0?" ":r.fill+"",this.align=r.align===void 0?">":r.align+"",this.sign=r.sign===void 0?"-":r.sign+"",this.symbol=r.symbol===void 0?"":r.symbol+"",this.zero=!!r.zero,this.width=r.width===void 0?void 0:+r.width,this.comma=!!r.comma,this.precision=r.precision===void 0?void 0:+r.precision,this.trim=!!r.trim,this.type=r.type===void 0?"":r.type+""}k0.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Ka(r){t:for(var o=r.length,p=1,P=-1,at;p0&&(P=0);break}return P>0?r.slice(0,P)+r.slice(at+1):r}var T0;function Lv(r,o){var p=_f(r,o);if(!p)return r+"";var P=p[0],at=p[1],mt=at-(T0=Math.max(-8,Math.min(8,Math.floor(at/3)))*3)+1,St=P.length;return mt===St?P:mt>St?P+new Array(mt-St+1).join("0"):mt>0?P.slice(0,mt)+"."+P.slice(mt):"0."+new Array(1-mt).join("0")+_f(r,Math.max(0,o+mt-1))[0]}function A0(r,o){var p=_f(r,o);if(!p)return r+"";var P=p[0],at=p[1];return at<0?"0."+new Array(-at).join("0")+P:P.length>at+1?P.slice(0,at+1)+"."+P.slice(at+1):P+new Array(at-P.length+2).join("0")}const nl={"%":function(r,o){return(r*100).toFixed(o)},b:function(r){return Math.round(r).toString(2)},c:function(r){return r+""},d:ah,e:function(r,o){return r.toExponential(o)},f:function(r,o){return r.toFixed(o)},g:function(r,o){return r.toPrecision(o)},o:function(r){return Math.round(r).toString(8)},p:function(r,o){return A0(r*100,o)},r:A0,s:Lv,X:function(r){return Math.round(r).toString(16).toUpperCase()},x:function(r){return Math.round(r).toString(16)}};function sh(r){return r}var O0=Array.prototype.map,Bu=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function qd(r){var o=r.grouping===void 0||r.thousands===void 0?sh:Rv(O0.call(r.grouping,Number),r.thousands+""),p=r.currency===void 0?"":r.currency[0]+"",P=r.currency===void 0?"":r.currency[1]+"",at=r.decimal===void 0?".":r.decimal+"",mt=r.numerals===void 0?sh:fa(O0.call(r.numerals,String)),St=r.percent===void 0?"%":r.percent+"",kt=r.minus===void 0?"-":r.minus+"",Lt=r.nan===void 0?"NaN":r.nan+"";function Ut(ie){ie=Sf(ie);var Zt=ie.fill,_e=ie.align,Le=ie.sign,De=ie.symbol,Be=ie.zero,We=ie.width,cn=ie.comma,nn=ie.precision,ln=ie.trim,Pn=ie.type;Pn==="n"?(cn=!0,Pn="g"):nl[Pn]||(nn===void 0&&(nn=12),ln=!0,Pn="g"),(Be||Zt==="0"&&_e==="=")&&(Be=!0,Zt="0",_e="=");var qn=De==="$"?p:De==="#"&&/[boxX]/.test(Pn)?"0"+Pn.toLowerCase():"",Un=De==="$"?P:/[%p]/.test(Pn)?St:"",gr=nl[Pn],ir=/[defgprs%]/.test(Pn);nn=nn===void 0?6:/[gprs]/.test(Pn)?Math.max(1,Math.min(21,nn)):Math.max(0,Math.min(20,nn));function cr(er){var fn=qn,$n=Un,kr,Wn,_r;if(Pn==="c")$n=gr(er)+$n,er="";else{er=+er;var Jr=er<0||1/er<0;if(er=isNaN(er)?Lt:gr(Math.abs(er),nn),ln&&(er=Ka(er)),Jr&&+er==0&&Le!=="+"&&(Jr=!1),fn=(Jr?Le==="("?Le:kt:Le==="-"||Le==="("?"":Le)+fn,$n=(Pn==="s"?Bu[8+T0/3]:"")+$n+(Jr&&Le==="("?")":""),ir){for(kr=-1,Wn=er.length;++kr_r||_r>57){$n=(_r===46?at+er.slice(kr+1):er.slice(kr))+$n,er=er.slice(0,kr);break}}}cn&&!Be&&(er=o(er,1/0));var $r=fn.length+er.length+$n.length,ei=$r>1)+fn+er+$n+ei.slice($r);break;default:er=ei+fn+er+$n;break}return mt(er)}return cr.toString=function(){return ie+""},cr}function qt(ie,Zt){var _e=Ut((ie=Sf(ie),ie.type="f",ie)),Le=Math.max(-8,Math.min(8,Math.floor(Ol(Zt)/3)))*3,De=Math.pow(10,-Le),Be=Bu[8+Le/3];return function(We){return _e(De*We)+Be}}return{format:Ut,formatPrefix:qt}}var Pl,lh,$d;P0({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function P0(r){return Pl=qd(r),lh=Pl.format,$d=Pl.formatPrefix,Pl}function N0(r){return Math.max(0,-Ol(Math.abs(r)))}function rl(r,o){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ol(o)/3)))*3-Ol(Math.abs(r)))}function Pm(r,o){return r=Math.abs(r),o=Math.abs(o)-r,Math.max(0,Ol(o)-Ol(r))+1}function Nl(){return new Xd}function Xd(){this.reset()}Xd.prototype={constructor:Xd,reset:function(){this.s=this.t=0},add:function(r){Kd(zu,r,this.t),Kd(this,zu.s,this.s),this.s?this.t+=zu.t:this.s=zu.t},valueOf:function(){return this.s}};var zu=new Xd;function Kd(r,o,p){var P=r.s=o+p,at=P-o,mt=P-at;r.t=o-mt+(p-at)}var hi=1e-6,Cf=1e-12,Wi=Math.PI,Io=Wi/2,Uu=Wi/4,Oa=Wi*2,co=180/Wi,di=Wi/180,Zi=Math.abs,Mf=Math.atan,Ba=Math.atan2,Qr=Math.cos,wc=Math.ceil,Iv=Math.exp,Nm=Math.floor,s=Math.log,m=Math.pow,ut=Math.sin,Tt=Math.sign||function(r){return r>0?1:r<0?-1:0},Yt=Math.sqrt,ue=Math.tan;function ze(r){return r>1?0:r<-1?Wi:Math.acos(r)}function yn(r){return r>1?Io:r<-1?-Io:Math.asin(r)}function An(r){return(r=ut(r/2))*r}function Vn(){}function Er(r,o){r&&Cr.hasOwnProperty(r.type)&&Cr[r.type](r,o)}var Pr={Feature:function(r,o){Er(r.geometry,o)},FeatureCollection:function(r,o){for(var p=r.features,P=-1,at=p.length;++P=0?1:-1,at=P*p,mt=Qr(o),St=ut(o),kt=pi*St,Lt=Xr*mt+kt*Qr(at),Ut=kt*P*ut(at);Qo.add(Ba(Ut,Lt)),Lr=r,Xr=mt,pi=St}function Nb(r){return Gn.reset(),Yr(r,ni),Gn*2}function jv(r){return[Ba(r[1],r[0]),yn(r[2])]}function Zd(r){var o=r[0],p=r[1],P=Qr(p);return[P*Qr(o),P*ut(o),ut(p)]}function D0(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}function Dm(r,o){return[r[1]*o[2]-r[2]*o[1],r[2]*o[0]-r[0]*o[2],r[0]*o[1]-r[1]*o[0]]}function Db(r,o){r[0]+=o[0],r[1]+=o[1],r[2]+=o[2]}function R0(r,o){return[r[0]*o,r[1]*o,r[2]*o]}function Fv(r){var o=Yt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);r[0]/=o,r[1]/=o,r[2]/=o}var jo,il,_a,ol,Qd,Gk,Rm,uh,ch=Nl(),Wu,Yu,hh={point:Bv,lineStart:zv,lineEnd:V2,polygonStart:function(){hh.point=Uv,hh.lineStart=qk,hh.lineEnd=Lm,ch.reset(),ni.polygonStart()},polygonEnd:function(){ni.polygonEnd(),hh.point=Bv,hh.lineStart=zv,hh.lineEnd=V2,Qo<0?(jo=-(_a=180),il=-(ol=90)):ch>hi?ol=90:ch<-hi&&(il=-90),Yu[0]=jo,Yu[1]=_a},sphere:function(){jo=-(_a=180),il=-(ol=90)}};function Bv(r,o){Wu.push(Yu=[jo=r,_a=r]),ool&&(ol=o)}function Y2(r,o){var p=Zd([r*di,o*di]);if(uh){var P=Dm(uh,p),at=[P[1],-P[0],0],mt=Dm(at,P);Fv(mt),mt=jv(mt);var St=r-Qd,kt=St>0?1:-1,Lt=mt[0]*co*kt,Ut,qt=Zi(St)>180;qt^(kt*Qdol&&(ol=Ut)):(Lt=(Lt+360)%360-180,qt^(kt*Qdol&&(ol=o))),qt?rHs(jo,_a)&&(_a=r):Hs(r,_a)>Hs(jo,_a)&&(jo=r):_a>=jo?(r_a&&(_a=r)):r>Qd?Hs(jo,r)>Hs(jo,_a)&&(_a=r):Hs(r,_a)>Hs(jo,_a)&&(jo=r)}else Wu.push(Yu=[jo=r,_a=r]);ool&&(ol=o),uh=p,Qd=r}function zv(){hh.point=Y2}function V2(){Yu[0]=jo,Yu[1]=_a,hh.point=Bv,uh=null}function Uv(r,o){if(uh){var p=r-Qd;ch.add(Zi(p)>180?p+(p>0?360:-360):p)}else Gk=r,Rm=o;ni.point(r,o),Y2(r,o)}function qk(){ni.lineStart()}function Lm(){Uv(Gk,Rm),ni.lineEnd(),Zi(ch)>hi&&(jo=-(_a=180)),Yu[0]=jo,Yu[1]=_a,uh=null}function Hs(r,o){return(o-=r)<0?o+360:o}function $k(r,o){return r[0]-o[0]}function Rb(r,o){return r[0]<=r[1]?r[0]<=o&&o<=r[1]:oHs(P[0],P[1])&&(P[1]=at[1]),Hs(at[0],P[1])>Hs(P[0],P[1])&&(P[0]=at[0])):mt.push(P=at);for(St=-1/0,p=mt.length-1,o=0,P=mt[p];o<=p;P=at,++o)at=mt[o],(kt=Hs(P[1],at[0]))>St&&(St=kt,jo=at[0],_a=P[1])}return Wu=Yu=null,jo===1/0||il===1/0?[[NaN,NaN],[NaN,NaN]]:[[jo,il],[_a,ol]]}var Im,Jd,Ef,L0,kf,Hv,Vu,I0,Wv,Yv,Lb,tp,Ib,ks,al,sl,_c={sphere:Vn,point:Sc,lineStart:G2,lineEnd:jb,polygonStart:function(){_c.lineStart=Qk,_c.lineEnd=Jk},polygonEnd:function(){_c.lineStart=G2,_c.lineEnd=jb}};function Sc(r,o){r*=di,o*=di;var p=Qr(o);j0(p*Qr(r),p*ut(r),ut(o))}function j0(r,o,p){++Im,Ef+=(r-Ef)/Im,L0+=(o-L0)/Im,kf+=(p-kf)/Im}function G2(){_c.point=Kk}function Kk(r,o){r*=di,o*=di;var p=Qr(o);ks=p*Qr(r),al=p*ut(r),sl=ut(o),_c.point=Zk,j0(ks,al,sl)}function Zk(r,o){r*=di,o*=di;var p=Qr(o),P=p*Qr(r),at=p*ut(r),mt=ut(o),St=Ba(Yt((St=al*mt-sl*at)*St+(St=sl*P-ks*mt)*St+(St=ks*at-al*P)*St),ks*P+al*at+sl*mt);Jd+=St,Hv+=St*(ks+(ks=P)),Vu+=St*(al+(al=at)),I0+=St*(sl+(sl=mt)),j0(ks,al,sl)}function jb(){_c.point=Sc}function Qk(){_c.point=tT}function Jk(){q2(tp,Ib),_c.point=Sc}function tT(r,o){tp=r,Ib=o,r*=di,o*=di,_c.point=q2;var p=Qr(o);ks=p*Qr(r),al=p*ut(r),sl=ut(o),j0(ks,al,sl)}function q2(r,o){r*=di,o*=di;var p=Qr(o),P=p*Qr(r),at=p*ut(r),mt=ut(o),St=al*mt-sl*at,kt=sl*P-ks*mt,Lt=ks*at-al*P,Ut=Yt(St*St+kt*kt+Lt*Lt),qt=yn(Ut),ie=Ut&&-qt/Ut;Wv+=ie*St,Yv+=ie*kt,Lb+=ie*Lt,Jd+=qt,Hv+=qt*(ks+(ks=P)),Vu+=qt*(al+(al=at)),I0+=qt*(sl+(sl=mt)),j0(ks,al,sl)}function eT(r){Im=Jd=Ef=L0=kf=Hv=Vu=I0=Wv=Yv=Lb=0,Yr(r,_c);var o=Wv,p=Yv,P=Lb,at=o*o+p*p+P*P;return atWi?r+Math.round(-r/Oa)*Oa:r,o]}Vv.invert=Vv;function Gv(r,o,p){return(r%=Oa)?o||p?Fb(qv(r),rT(o,p)):qv(r):o||p?rT(o,p):Vv}function nT(r){return function(o,p){return o+=r,[o>Wi?o-Oa:o<-Wi?o+Oa:o,p]}}function qv(r){var o=nT(r);return o.invert=nT(-r),o}function rT(r,o){var p=Qr(r),P=ut(r),at=Qr(o),mt=ut(o);function St(kt,Lt){var Ut=Qr(Lt),qt=Qr(kt)*Ut,ie=ut(kt)*Ut,Zt=ut(Lt),_e=Zt*p+qt*P;return[Ba(ie*at-_e*mt,qt*p-Zt*P),yn(_e*at+ie*mt)]}return St.invert=function(kt,Lt){var Ut=Qr(Lt),qt=Qr(kt)*Ut,ie=ut(kt)*Ut,Zt=ut(Lt),_e=Zt*at-ie*mt;return[Ba(ie*at+Zt*mt,qt*p+_e*P),yn(_e*p-qt*P)]},St}function $2(r){r=Gv(r[0]*di,r[1]*di,r.length>2?r[2]*di:0);function o(p){return p=r(p[0]*di,p[1]*di),p[0]*=co,p[1]*=co,p}return o.invert=function(p){return p=r.invert(p[0]*di,p[1]*di),p[0]*=co,p[1]*=co,p},o}function X2(r,o,p,P,at,mt){if(p){var St=Qr(o),kt=ut(o),Lt=P*p;at==null?(at=o+P*Oa,mt=o-Lt/2):(at=F0(St,at),mt=F0(St,mt),(P>0?atmt)&&(at+=P*Oa));for(var Ut,qt=at;P>0?qt>mt:qt1&&r.push(r.pop().concat(r.shift()))},result:function(){var p=r;return r=[],o=null,p}}}function Bm(r,o){return Zi(r[0]-o[0])=0;--kt)at.point((ie=qt[kt])[0],ie[1]);else P(Zt.x,Zt.p.x,-1,at);Zt=Zt.p}Zt=Zt.o,qt=Zt.z,_e=!_e}while(!Zt.v);at.lineEnd()}}}function Z2(r){if(o=r.length){for(var o,p=0,P=r[0],at;++p=0?1:-1,ir=gr*Un,cr=ir>Wi,er=De*Pn;if(Bb.add(Ba(er*gr*ut(ir),Be*qn+er*Qr(ir))),St+=cr?Un+gr*Oa:Un,cr^_e>=p^nn>=p){var fn=Dm(Zd(Zt),Zd(cn));Fv(fn);var $n=Dm(mt,fn);Fv($n);var kr=(cr^Un>=0?-1:1)*yn($n[2]);(P>kr||P===kr&&(fn[0]||fn[1]))&&(kt+=cr^Un>=0?1:-1)}}return(St<-hi||St0){for(Lt||(at.polygonStart(),Lt=!0),at.lineStart(),qn=0;qn1&&ln&2&&Pn.push(Pn.pop().concat(Pn.shift())),qt.push(Pn.filter(iT))}}return Zt}}function iT(r){return r.length>1}function oT(r,o){return((r=r.x)[0]<0?r[1]-Io-hi:Io-r[1])-((o=o.x)[0]<0?o[1]-Io-hi:Io-o[1])}const Ub=J2(function(){return!0},aT,K5,[-Wi,-Io]);function aT(r){var o=NaN,p=NaN,P=NaN,at;return{lineStart:function(){r.lineStart(),at=1},point:function(mt,St){var kt=mt>0?Wi:-Wi,Lt=Zi(mt-o);Zi(Lt-Wi)0?Io:-Io),r.point(P,p),r.lineEnd(),r.lineStart(),r.point(kt,p),r.point(mt,p),at=0):P!==kt&&Lt>=Wi&&(Zi(o-P)hi?Mf((ut(o)*(mt=Qr(P))*ut(p)-ut(P)*(at=Qr(o))*ut(r))/(at*mt*St)):(o+P)/2}function K5(r,o,p,P){var at;if(r==null)at=p*Io,P.point(-Wi,at),P.point(0,at),P.point(Wi,at),P.point(Wi,0),P.point(Wi,-at),P.point(0,-at),P.point(-Wi,-at),P.point(-Wi,0),P.point(-Wi,at);else if(Zi(r[0]-o[0])>hi){var mt=r[0]0,at=Zi(o)>hi;function mt(qt,ie,Zt,_e){X2(_e,r,p,Zt,qt,ie)}function St(qt,ie){return Qr(qt)*Qr(ie)>o}function kt(qt){var ie,Zt,_e,Le,De;return{lineStart:function(){Le=_e=!1,De=1},point:function(Be,We){var cn=[Be,We],nn,ln=St(Be,We),Pn=P?ln?0:Ut(Be,We):ln?Ut(Be+(Be<0?Wi:-Wi),We):0;if(!ie&&(Le=_e=ln)&&qt.lineStart(),ln!==_e&&(nn=Lt(ie,cn),(!nn||Bm(ie,nn)||Bm(cn,nn))&&(cn[2]=1)),ln!==_e)De=0,ln?(qt.lineStart(),nn=Lt(cn,ie),qt.point(nn[0],nn[1])):(nn=Lt(ie,cn),qt.point(nn[0],nn[1],2),qt.lineEnd()),ie=nn;else if(at&&ie&&P^ln){var qn;!(Pn&Zt)&&(qn=Lt(cn,ie,!0))&&(De=0,P?(qt.lineStart(),qt.point(qn[0][0],qn[0][1]),qt.point(qn[1][0],qn[1][1]),qt.lineEnd()):(qt.point(qn[1][0],qn[1][1]),qt.lineEnd(),qt.lineStart(),qt.point(qn[0][0],qn[0][1],3)))}ln&&(!ie||!Bm(ie,cn))&&qt.point(cn[0],cn[1]),ie=cn,_e=ln,Zt=Pn},lineEnd:function(){_e&&qt.lineEnd(),ie=null},clean:function(){return De|(Le&&_e)<<1}}}function Lt(qt,ie,Zt){var _e=Zd(qt),Le=Zd(ie),De=[1,0,0],Be=Dm(_e,Le),We=D0(Be,Be),cn=Be[0],nn=We-cn*cn;if(!nn)return!Zt&&qt;var ln=o*We/nn,Pn=-o*cn/nn,qn=Dm(De,Be),Un=R0(De,ln),gr=R0(Be,Pn);Db(Un,gr);var ir=qn,cr=D0(Un,ir),er=D0(ir,ir),fn=cr*cr-er*(D0(Un,Un)-1);if(!(fn<0)){var $n=Yt(fn),kr=R0(ir,(-cr-$n)/er);if(Db(kr,Un),kr=jv(kr),!Zt)return kr;var Wn=qt[0],_r=ie[0],Jr=qt[1],$r=ie[1],ei;_r0^kr[1]<(Zi(kr[0]-Wn)Wi^(Wn<=kr[0]&&kr[0]<=_r)){var Bo=R0(ir,(-cr+$n)/er);return Db(Bo,Un),[kr,jv(Bo)]}}}function Ut(qt,ie){var Zt=P?r:Wi-r,_e=0;return qt<-Zt?_e|=1:qt>Zt&&(_e|=2),ie<-Zt?_e|=4:ie>Zt&&(_e|=8),_e}return J2(St,kt,mt,P?[0,-r]:[-Wi,r-Wi])}function lT(r,o,p,P,at,mt){var St=r[0],kt=r[1],Lt=o[0],Ut=o[1],qt=0,ie=1,Zt=Lt-St,_e=Ut-kt,Le;if(Le=p-St,!(!Zt&&Le>0)){if(Le/=Zt,Zt<0){if(Le0){if(Le>ie)return;Le>qt&&(qt=Le)}if(Le=at-St,!(!Zt&&Le<0)){if(Le/=Zt,Zt<0){if(Le>ie)return;Le>qt&&(qt=Le)}else if(Zt>0){if(Le0)){if(Le/=_e,_e<0){if(Le0){if(Le>ie)return;Le>qt&&(qt=Le)}if(Le=mt-kt,!(!_e&&Le<0)){if(Le/=_e,_e<0){if(Le>ie)return;Le>qt&&(qt=Le)}else if(_e>0){if(Le0&&(r[0]=St+qt*Zt,r[1]=kt+qt*_e),ie<1&&(o[0]=St+ie*Zt,o[1]=kt+ie*_e),!0}}}}}var Fr=1e9,Xv=-Fr;function Kv(r,o,p,P){function at(Ut,qt){return r<=Ut&&Ut<=p&&o<=qt&&qt<=P}function mt(Ut,qt,ie,Zt){var _e=0,Le=0;if(Ut==null||(_e=St(Ut,ie))!==(Le=St(qt,ie))||Lt(Ut,qt)<0^ie>0)do Zt.point(_e===0||_e===3?r:p,_e>1?P:o);while((_e=(_e+ie+4)%4)!==Le);else Zt.point(qt[0],qt[1])}function St(Ut,qt){return Zi(Ut[0]-r)0?0:3:Zi(Ut[0]-p)0?2:1:Zi(Ut[1]-o)0?1:0:qt>0?3:2}function kt(Ut,qt){return Lt(Ut.x,qt.x)}function Lt(Ut,qt){var ie=St(Ut,1),Zt=St(qt,1);return ie!==Zt?ie-Zt:ie===0?qt[1]-Ut[1]:ie===1?Ut[0]-qt[0]:ie===2?Ut[1]-qt[1]:qt[0]-Ut[0]}return function(Ut){var qt=Ut,ie=K2(),Zt,_e,Le,De,Be,We,cn,nn,ln,Pn,qn,Un={point:gr,lineStart:fn,lineEnd:$n,polygonStart:cr,polygonEnd:er};function gr(Wn,_r){at(Wn,_r)&&qt.point(Wn,_r)}function ir(){for(var Wn=0,_r=0,Jr=_e.length;_rP&&(po-fo)*(P-Bo)>(Na-Bo)*(r-fo)&&++Wn:Na<=P&&(po-fo)*(P-Bo)<(Na-Bo)*(r-fo)&&--Wn;return Wn}function cr(){qt=ie,Zt=[],_e=[],qn=!0}function er(){var Wn=ir(),_r=qn&&Wn,Jr=(Zt=(0,T.Am)(Zt)).length;(_r||Jr)&&(Ut.polygonStart(),_r&&(Ut.lineStart(),mt(null,null,1,Ut),Ut.lineEnd()),Jr&&$v(Zt,kt,Wn,mt,Ut),Ut.polygonEnd()),qt=Ut,Zt=_e=Le=null}function fn(){Un.point=kr,_e&&_e.push(Le=[]),Pn=!0,ln=!1,cn=nn=NaN}function $n(){Zt&&(kr(De,Be),We&&ln&&ie.rejoin(),Zt.push(ie.result())),Un.point=gr,ln&&qt.lineEnd()}function kr(Wn,_r){var Jr=at(Wn,_r);if(_e&&Le.push([Wn,_r]),Pn)De=Wn,Be=_r,We=Jr,Pn=!1,Jr&&(qt.lineStart(),qt.point(Wn,_r));else if(Jr&&ln)qt.point(Wn,_r);else{var $r=[cn=Math.max(Xv,Math.min(Fr,cn)),nn=Math.max(Xv,Math.min(Fr,nn))],ei=[Wn=Math.max(Xv,Math.min(Fr,Wn)),_r=Math.max(Xv,Math.min(Fr,_r))];lT($r,ei,r,o,p,P)?(ln||(qt.lineStart(),qt.point($r[0],$r[1])),qt.point(ei[0],ei[1]),Jr||qt.lineEnd(),qn=!1):Jr&&(qt.lineStart(),qt.point(Wn,_r),qn=!1)}cn=Wn,nn=_r,ln=Jr}return Un}}function uT(){var r=0,o=0,p=960,P=500,at,mt,St;return St={stream:function(kt){return at&&mt===kt?at:at=Kv(r,o,p,P)(mt=kt)},extent:function(kt){return arguments.length?(r=+kt[0][0],o=+kt[0][1],p=+kt[1][0],P=+kt[1][1],at=mt=null,St):[[r,o],[p,P]]}}}var z0=Nl(),Pa,Xl,Zv,fh={sphere:Vn,point:Vn,lineStart:Z5,lineEnd:Vn,polygonStart:Vn,polygonEnd:Vn};function Z5(){fh.point=U0,fh.lineEnd=Q5}function Q5(){fh.point=fh.lineEnd=Vn}function U0(r,o){r*=di,o*=di,Pa=r,Xl=ut(o),Zv=Qr(o),fh.point=J5}function J5(r,o){r*=di,o*=di;var p=ut(o),P=Qr(o),at=Zi(r-Pa),mt=Qr(at),St=ut(at),kt=P*St,Lt=Zv*p-Xl*P*mt,Ut=Xl*p+Zv*P*mt;z0.add(Ba(Yt(kt*kt+Lt*Lt),Ut)),Pa=r,Xl=p,Zv=P}function zm(r){return z0.reset(),Yr(r,fh),+z0}var Tf=[null,null],Kl={type:"LineString",coordinates:Tf};function gs(r,o){return Tf[0]=r,Tf[1]=o,zm(Kl)}var Hb={Feature:function(r,o){return H0(r.geometry,o)},FeatureCollection:function(r,o){for(var p=r.features,P=-1,at=p.length;++P0&&(at=gs(r[mt],r[mt-1]),at>0&&p<=at&&P<=at&&(p+P-at)*(1-Math.pow((p-P)/at,2))hi}).map(Zt)).concat((0,T.y1)(wc(mt/Ut)*Ut,at,Ut).filter(function(nn){return Zi(nn%ie)>hi}).map(_e))}return We.lines=function(){return cn().map(function(nn){return{type:"LineString",coordinates:nn}})},We.outline=function(){return{type:"Polygon",coordinates:[Le(P).concat(De(St).slice(1),Le(p).reverse().slice(1),De(kt).reverse().slice(1))]}},We.extent=function(nn){return arguments.length?We.extentMajor(nn).extentMinor(nn):We.extentMinor()},We.extentMajor=function(nn){return arguments.length?(P=+nn[0][0],p=+nn[1][0],kt=+nn[0][1],St=+nn[1][1],P>p&&(nn=P,P=p,p=nn),kt>St&&(nn=kt,kt=St,St=nn),We.precision(Be)):[[P,kt],[p,St]]},We.extentMinor=function(nn){return arguments.length?(o=+nn[0][0],r=+nn[1][0],mt=+nn[0][1],at=+nn[1][1],o>r&&(nn=o,o=r,r=nn),mt>at&&(nn=mt,mt=at,at=nn),We.precision(Be)):[[o,mt],[r,at]]},We.step=function(nn){return arguments.length?We.stepMajor(nn).stepMinor(nn):We.stepMinor()},We.stepMajor=function(nn){return arguments.length?(qt=+nn[0],ie=+nn[1],We):[qt,ie]},We.stepMinor=function(nn){return arguments.length?(Lt=+nn[0],Ut=+nn[1],We):[Lt,Ut]},We.precision=function(nn){return arguments.length?(Be=+nn,Zt=Um(mt,at,90),_e=Qv(o,r,Be),Le=Um(kt,St,90),De=Qv(P,p,Be),We):Be},We.extentMajor([[-180,-90+hi],[180,90-hi]]).extentMinor([[-180,-80-hi],[180,80+hi]])}function Jv(){return Yb()()}function tP(r,o){var p=r[0]*di,P=r[1]*di,at=o[0]*di,mt=o[1]*di,St=Qr(P),kt=ut(P),Lt=Qr(mt),Ut=ut(mt),qt=St*Qr(p),ie=St*ut(p),Zt=Lt*Qr(at),_e=Lt*ut(at),Le=2*yn(Yt(An(mt-P)+St*Lt*An(at-p))),De=ut(Le),Be=Le?function(We){var cn=ut(We*=Le)/De,nn=ut(Le-We)/De,ln=nn*qt+cn*Zt,Pn=nn*ie+cn*_e,qn=nn*kt+cn*Ut;return[Ba(Pn,ln)*co,Ba(qn,Yt(ln*ln+Pn*Pn))*co]}:function(){return[p*co,P*co]};return Be.distance=Le,Be}function Af(r){return r}var Hm=Nl(),t1=Nl(),rp,e1,Ws,nS,ip={point:Vn,lineStart:Vn,lineEnd:Vn,polygonStart:function(){ip.lineStart=eP,ip.lineEnd=rP},polygonEnd:function(){ip.lineStart=ip.lineEnd=ip.point=Vn,Hm.add(Zi(t1)),t1.reset()},result:function(){var r=Hm/2;return Hm.reset(),r}};function eP(){ip.point=nP}function nP(r,o){ip.point=cT,rp=Ws=r,e1=nS=o}function cT(r,o){t1.add(nS*r-Ws*o),Ws=r,nS=o}function rP(){cT(rp,e1)}const Y0=ip;var op=1/0,n1=op,dh=-op,V0=dh,Of={point:Wm,lineStart:Vn,lineEnd:Vn,polygonStart:Vn,polygonEnd:Vn,result:function(){var r=[[op,n1],[dh,V0]];return dh=V0=-(n1=op=1/0),r}};function Wm(r,o){rdh&&(dh=r),oV0&&(V0=o)}const G0=Of;var r1=0,i1=0,Ym=0,Vm=0,o1=0,Gm=0,Vb=0,q0=0,a1=0,Gb,rS,Mc,Zl,Gu={point:ap,lineStart:qb,lineEnd:$b,polygonStart:function(){Gu.lineStart=iS,Gu.lineEnd=hT},polygonEnd:function(){Gu.point=ap,Gu.lineStart=qb,Gu.lineEnd=$b},result:function(){var r=a1?[Vb/a1,q0/a1]:Gm?[Vm/Gm,o1/Gm]:Ym?[r1/Ym,i1/Ym]:[NaN,NaN];return r1=i1=Ym=Vm=o1=Gm=Vb=q0=a1=0,r}};function ap(r,o){r1+=r,i1+=o,++Ym}function qb(){Gu.point=za}function za(r,o){Gu.point=ph,ap(Mc=r,Zl=o)}function ph(r,o){var p=r-Mc,P=o-Zl,at=Yt(p*p+P*P);Vm+=at*(Mc+r)/2,o1+=at*(Zl+o)/2,Gm+=at,ap(Mc=r,Zl=o)}function $b(){Gu.point=ap}function iS(){Gu.point=oS}function hT(){s1(Gb,rS)}function oS(r,o){Gu.point=s1,ap(Gb=Mc=r,rS=Zl=o)}function s1(r,o){var p=r-Mc,P=o-Zl,at=Yt(p*p+P*P);Vm+=at*(Mc+r)/2,o1+=at*(Zl+o)/2,Gm+=at,at=Zl*r-Mc*o,Vb+=at*(Mc+r),q0+=at*(Zl+o),a1+=at*3,ap(Mc=r,Zl=o)}const l1=Gu;function Xb(r){this._context=r}Xb.prototype={_radius:4.5,pointRadius:function(r){return this._radius=r,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(r,o){switch(this._point){case 0:{this._context.moveTo(r,o),this._point=1;break}case 1:{this._context.lineTo(r,o);break}default:{this._context.moveTo(r+this._radius,o),this._context.arc(r,o,this._radius,0,Oa);break}}},result:Vn};var u1=Nl(),c1,Kb,aS,Rl,qm,h1={point:Vn,lineStart:function(){h1.point=Zb},lineEnd:function(){c1&&sS(Kb,aS),h1.point=Vn},polygonStart:function(){c1=!0},polygonEnd:function(){c1=null},result:function(){var r=+u1;return u1.reset(),r}};function Zb(r,o){h1.point=sS,Kb=Rl=r,aS=qm=o}function sS(r,o){Rl-=r,qm-=o,u1.add(Yt(Rl*Rl+qm*qm)),Rl=r,qm=o}const is=h1;function fT(){this._string=[]}fT.prototype={_radius:4.5,_circle:lS(4.5),pointRadius:function(r){return(r=+r)!==this._radius&&(this._radius=r,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(r,o){switch(this._point){case 0:{this._string.push("M",r,",",o),this._point=1;break}case 1:{this._string.push("L",r,",",o);break}default:{this._circle==null&&(this._circle=lS(this._radius)),this._string.push("M",r,",",o,this._circle);break}}},result:function(){if(this._string.length){var r=this._string.join("");return this._string=[],r}else return null}};function lS(r){return"m0,"+r+"a"+r+","+r+" 0 1,1 0,"+-2*r+"a"+r+","+r+" 0 1,1 0,"+2*r+"z"}function sp(r,o){var p=4.5,P,at;function mt(St){return St&&(typeof p=="function"&&at.pointRadius(+p.apply(this,arguments)),Yr(St,P(at))),at.result()}return mt.area=function(St){return Yr(St,P(Y0)),Y0.result()},mt.measure=function(St){return Yr(St,P(is)),is.result()},mt.bounds=function(St){return Yr(St,P(G0)),G0.result()},mt.centroid=function(St){return Yr(St,P(l1)),l1.result()},mt.projection=function(St){return arguments.length?(P=St==null?(r=null,Af):(r=St).stream,mt):r},mt.context=function(St){return arguments.length?(at=St==null?(o=null,new fT):new Xb(o=St),typeof p!="function"&&at.pointRadius(p),mt):o},mt.pointRadius=function(St){return arguments.length?(p=typeof St=="function"?St:(at.pointRadius(+St),+St),mt):p},mt.projection(r).context(o)}function $0(r){return{stream:lp(r)}}function lp(r){return function(o){var p=new f1;for(var P in r)p[P]=r[P];return p.stream=o,p}}function f1(){}f1.prototype={constructor:f1,point:function(r,o){this.stream.point(r,o)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function d1(r,o,p){var P=r.clipExtent&&r.clipExtent();return r.scale(150).translate([0,0]),P!=null&&r.clipExtent(null),Yr(p,r.stream(G0)),o(G0.result()),P!=null&&r.clipExtent(P),r}function p1(r,o,p){return d1(r,function(P){var at=o[1][0]-o[0][0],mt=o[1][1]-o[0][1],St=Math.min(at/(P[1][0]-P[0][0]),mt/(P[1][1]-P[0][1])),kt=+o[0][0]+(at-St*(P[1][0]+P[0][0]))/2,Lt=+o[0][1]+(mt-St*(P[1][1]+P[0][1]))/2;r.scale(150*St).translate([kt,Lt])},p)}function up(r,o,p){return p1(r,[[0,0],o],p)}function X0(r,o,p){return d1(r,function(P){var at=+o,mt=at/(P[1][0]-P[0][0]),St=(at-mt*(P[1][0]+P[0][0]))/2,kt=-mt*P[0][1];r.scale(150*mt).translate([St,kt])},p)}function Qb(r,o,p){return d1(r,function(P){var at=+o,mt=at/(P[1][1]-P[0][1]),St=-mt*P[0][0],kt=(at-mt*(P[1][1]+P[0][1]))/2;r.scale(150*mt).translate([St,kt])},p)}var dT=16,iP=Qr(30*di);function Jb(r,o){return+o?cS(r,o):uS(r)}function uS(r){return lp({point:function(o,p){o=r(o,p),this.stream.point(o[0],o[1])}})}function cS(r,o){function p(P,at,mt,St,kt,Lt,Ut,qt,ie,Zt,_e,Le,De,Be){var We=Ut-P,cn=qt-at,nn=We*We+cn*cn;if(nn>4*o&&De--){var ln=St+Zt,Pn=kt+_e,qn=Lt+Le,Un=Yt(ln*ln+Pn*Pn+qn*qn),gr=yn(qn/=Un),ir=Zi(Zi(qn)-1)o||Zi((We*$n+cn*kr)/nn-.5)>.3||St*Zt+kt*_e+Lt*Le2?Wn[2]%360*di:0,$n()):[kt*co,Lt*co,Ut*co]},er.angle=function(Wn){return arguments.length?(ie=Wn%360*di,$n()):ie*co},er.reflectX=function(Wn){return arguments.length?(Zt=Wn?-1:1,$n()):Zt<0},er.reflectY=function(Wn){return arguments.length?(_e=Wn?-1:1,$n()):_e<0},er.precision=function(Wn){return arguments.length?(qn=Jb(Un,Pn=Wn*Wn),kr()):Yt(Pn)},er.fitExtent=function(Wn,_r){return p1(er,Wn,_r)},er.fitSize=function(Wn,_r){return up(er,Wn,_r)},er.fitWidth=function(Wn,_r){return X0(er,Wn,_r)},er.fitHeight=function(Wn,_r){return Qb(er,Wn,_r)};function $n(){var Wn=hS(p,0,0,Zt,_e,ie).apply(null,o(mt,St)),_r=(ie?hS:pT)(p,P-Wn[0],at-Wn[1],Zt,_e,ie);return qt=Gv(kt,Lt,Ut),Un=Fb(o,_r),gr=Fb(qt,Un),qn=Jb(Un,Pn),kr()}function kr(){return ir=cr=null,er}return function(){return o=r.apply(this,arguments),er.invert=o.invert&&fn,$n()}}function ew(r){var o=0,p=Wi/3,P=tw(r),at=P(o,p);return at.parallels=function(mt){return arguments.length?P(o=mt[0]*di,p=mt[1]*di):[o*co,p*co]},at}function nw(r){var o=Qr(r);function p(P,at){return[P*o,ut(at)/o]}return p.invert=function(P,at){return[P/o,yn(at*o)]},p}function fS(r,o){var p=ut(r),P=(p+ut(o))/2;if(Zi(P)=.12&&Be<.234&&De>=-.425&&De<-.214?at:Be>=.166&&Be<.234&&De>=-.214&&De<-.115?St:p).invert(Zt)},qt.stream=function(Zt){return r&&o===Zt?r:r=dS([p.stream(o=Zt),at.stream(Zt),St.stream(Zt)])},qt.precision=function(Zt){return arguments.length?(p.precision(Zt),at.precision(Zt),St.precision(Zt),ie()):p.precision()},qt.scale=function(Zt){return arguments.length?(p.scale(Zt),at.scale(Zt*.35),St.scale(Zt),qt.translate(p.translate())):p.scale()},qt.translate=function(Zt){if(!arguments.length)return p.translate();var _e=p.scale(),Le=+Zt[0],De=+Zt[1];return P=p.translate(Zt).clipExtent([[Le-.455*_e,De-.238*_e],[Le+.455*_e,De+.238*_e]]).stream(Ut),mt=at.translate([Le-.307*_e,De+.201*_e]).clipExtent([[Le-.425*_e+hi,De+.12*_e+hi],[Le-.214*_e-hi,De+.234*_e-hi]]).stream(Ut),kt=St.translate([Le-.205*_e,De+.212*_e]).clipExtent([[Le-.214*_e+hi,De+.166*_e+hi],[Le-.115*_e-hi,De+.234*_e-hi]]).stream(Ut),ie()},qt.fitExtent=function(Zt,_e){return p1(qt,Zt,_e)},qt.fitSize=function(Zt,_e){return up(qt,Zt,_e)},qt.fitWidth=function(Zt,_e){return X0(qt,Zt,_e)},qt.fitHeight=function(Zt,_e){return Qb(qt,Zt,_e)};function ie(){return r=o=null,qt}return qt.scale(1070)}function pS(r){return function(o,p){var P=Qr(o),at=Qr(p),mt=r(P*at);return[mt*at*ut(o),mt*ut(p)]}}function K0(r){return function(o,p){var P=Yt(o*o+p*p),at=r(P),mt=ut(at),St=Qr(at);return[Ba(o*mt,P*St),yn(P&&p*mt/P)]}}var rw=pS(function(r){return Yt(2/(1+r))});rw.invert=K0(function(r){return 2*yn(r/2)});function gT(){return Ec(rw).scale(124.75).clipAngle(179.999)}var iw=pS(function(r){return(r=ze(r))&&r/ut(r)});iw.invert=K0(function(r){return r});function yT(){return Ec(iw).scale(79.4188).clipAngle(179.999)}function Xm(r,o){return[r,s(ue((Io+o)/2))]}Xm.invert=function(r,o){return[r,2*Mf(Iv(o))-Io]};function vT(){return mS(Xm).scale(961/Oa)}function mS(r){var o=Ec(r),p=o.center,P=o.scale,at=o.translate,mt=o.clipExtent,St=null,kt,Lt,Ut;o.scale=function(ie){return arguments.length?(P(ie),qt()):P()},o.translate=function(ie){return arguments.length?(at(ie),qt()):at()},o.center=function(ie){return arguments.length?(p(ie),qt()):p()},o.clipExtent=function(ie){return arguments.length?(ie==null?St=kt=Lt=Ut=null:(St=+ie[0][0],kt=+ie[0][1],Lt=+ie[1][0],Ut=+ie[1][1]),qt()):St==null?null:[[St,kt],[Lt,Ut]]};function qt(){var ie=Wi*P(),Zt=o($2(o.rotate()).invert([0,0]));return mt(St==null?[[Zt[0]-ie,Zt[1]-ie],[Zt[0]+ie,Zt[1]+ie]]:r===Xm?[[Math.max(Zt[0]-ie,St),kt],[Math.min(Zt[0]+ie,Lt),Ut]]:[[St,Math.max(Zt[1]-ie,kt)],[Lt,Math.min(Zt[1]+ie,Ut)]])}return qt()}function Z0(r){return ue((Io+r)/2)}function gS(r,o){var p=Qr(r),P=r===o?ut(r):s(p/Qr(o))/s(Z0(o)/Z0(r)),at=p*m(Z0(r),P)/P;if(!P)return Xm;function mt(St,kt){at>0?kt<-Io+hi&&(kt=-Io+hi):kt>Io-hi&&(kt=Io-hi);var Lt=at/m(Z0(kt),P);return[Lt*ut(P*St),at-Lt*Qr(P*St)]}return mt.invert=function(St,kt){var Lt=at-kt,Ut=Tt(P)*Yt(St*St+Lt*Lt),qt=Ba(St,Zi(Lt))*Tt(Lt);return Lt*P<0&&(qt-=Wi*Tt(St)*Tt(Lt)),[qt/P,2*Mf(m(at/Ut,1/P))-Io]},mt}function xT(){return ew(gS).scale(109.5).parallels([30,30])}function Q0(r,o){return[r,o]}Q0.invert=Q0;function bT(){return Ec(Q0).scale(152.63)}function ow(r,o){var p=Qr(r),P=r===o?ut(r):(p-Qr(o))/(o-r),at=p/P+r;if(Zi(P)hi&&--P>0);return[r/(.8707+(mt=p*p)*(-.131979+mt*(-.013791+mt*mt*mt*(.003971-.001529*mt)))),p]};function ST(){return Ec(sw).scale(175.295)}function lw(r,o){return[Qr(o)*ut(r),ut(o)]}lw.invert=K0(yn);function bS(){return Ec(lw).scale(249.5).clipAngle(90+hi)}function uw(r,o){var p=Qr(o),P=1+Qr(r)*p;return[p*ut(r)/P,ut(o)/P]}uw.invert=K0(function(r){return 2*Mf(r)});function CT(){return Ec(uw).scale(250).clipAngle(142)}function v1(r,o){return[s(ue((Io+o)/2)),-r]}v1.invert=function(r,o){return[-o,2*Mf(Iv(r))-Io]};function Km(){var r=mS(v1),o=r.center,p=r.rotate;return r.center=function(P){return arguments.length?o([-P[1],P[0]]):(P=o(),[P[1],-P[0]])},r.rotate=function(P){return arguments.length?p([P[0],P[1],P.length>2?P[2]+90:90]):(P=p(),[P[0],P[1],P[2]-90])},p([0,0,90]).scale(159.155)}function ny(r,o){return r.parent===o.parent?1:2}function MT(r){return r.reduce(ET,0)/r.length}function ET(r,o){return r+o.x}function wS(r){return 1+r.reduce(kT,0)}function kT(r,o){return Math.max(r,o.y)}function TT(r){for(var o;o=r.children;)r=o[0];return r}function AT(r){for(var o;o=r.children;)r=o[o.length-1];return r}function _S(){var r=ny,o=1,p=1,P=!1;function at(mt){var St,kt=0;mt.eachAfter(function(Zt){var _e=Zt.children;_e?(Zt.x=MT(_e),Zt.y=wS(_e)):(Zt.x=St?kt+=r(Zt,St):0,Zt.y=0,St=Zt)});var Lt=TT(mt),Ut=AT(mt),qt=Lt.x-r(Lt,Ut)/2,ie=Ut.x+r(Ut,Lt)/2;return mt.eachAfter(P?function(Zt){Zt.x=(Zt.x-mt.x)*o,Zt.y=(mt.y-Zt.y)*p}:function(Zt){Zt.x=(Zt.x-qt)/(ie-qt)*o,Zt.y=(1-(mt.y?Zt.y/mt.y:1))*p})}return at.separation=function(mt){return arguments.length?(r=mt,at):r},at.size=function(mt){return arguments.length?(P=!1,o=+mt[0],p=+mt[1],at):P?null:[o,p]},at.nodeSize=function(mt){return arguments.length?(P=!0,o=+mt[0],p=+mt[1],at):P?[o,p]:null},at}function oP(r){var o=0,p=r.children,P=p&&p.length;if(!P)o=1;else for(;--P>=0;)o+=p[P].value;r.value=o}function SS(){return this.eachAfter(oP)}function OT(r){var o=this,p,P=[o],at,mt,St;do for(p=P.reverse(),P=[];o=p.pop();)if(r(o),at=o.children,at)for(mt=0,St=at.length;mt=0;--at)p.push(P[at]);return this}function NT(r){for(var o=this,p=[o],P=[],at,mt,St;o=p.pop();)if(P.push(o),at=o.children,at)for(mt=0,St=at.length;mt=0;)p+=P[at].value;o.value=p})}function RT(r){return this.eachBefore(function(o){o.children&&o.children.sort(r)})}function LT(r){for(var o=this,p=IT(o,r),P=[o];o!==p;)o=o.parent,P.push(o);for(var at=P.length;r!==p;)P.splice(at,0,r),r=r.parent;return P}function IT(r,o){if(r===o)return r;var p=r.ancestors(),P=o.ancestors(),at=null;for(r=p.pop(),o=P.pop();r===o;)at=r,r=p.pop(),o=P.pop();return at}function x1(){for(var r=this,o=[r];r=r.parent;)o.push(r);return o}function jT(){var r=[];return this.each(function(o){r.push(o)}),r}function FT(){var r=[];return this.eachBefore(function(o){o.children||r.push(o)}),r}function BT(){var r=this,o=[];return r.each(function(p){p!==r&&o.push({source:p.parent,target:p})}),o}function b1(r,o){var p=new mh(r),P=+r.value&&(p.value=r.value),at,mt=[p],St,kt,Lt,Ut;for(o==null&&(o=UT);at=mt.pop();)if(P&&(at.value=+at.data.value),(kt=o(at.data))&&(Ut=kt.length))for(at.children=new Array(Ut),Lt=Ut-1;Lt>=0;--Lt)mt.push(St=at.children[Lt]=new mh(kt[Lt])),St.parent=at,St.depth=at.depth+1;return p.eachBefore(w1)}function zT(){return b1(this).eachBefore(CS)}function UT(r){return r.children}function CS(r){r.data=r.data.data}function w1(r){var o=0;do r.height=o;while((r=r.parent)&&r.height<++o)}function mh(r){this.data=r,this.depth=this.height=0,this.parent=null}mh.prototype=b1.prototype={constructor:mh,count:SS,each:OT,eachAfter:NT,eachBefore:PT,sum:DT,sort:RT,path:LT,ancestors:x1,descendants:jT,leaves:FT,links:BT,copy:zT};var HT=Array.prototype.slice;function WT(r){for(var o=r.length,p,P;o;)P=Math.random()*o--|0,p=r[o],r[o]=r[P],r[P]=p;return r}function MS(r){for(var o=0,p=(r=WT(HT.call(r))).length,P=[],at,mt;o0&&p*p>P*P+at*at}function ry(r,o){for(var p=0;pLt?(at=(Ut+Lt-mt)/(2*Ut),kt=Math.sqrt(Math.max(0,Lt/Ut-at*at)),p.x=r.x-at*P-kt*St,p.y=r.y-at*St+kt*P):(at=(Ut+mt-Lt)/(2*Ut),kt=Math.sqrt(Math.max(0,mt/Ut-at*at)),p.x=o.x+at*P-kt*St,p.y=o.y+at*St+kt*P)):(p.x=o.x+p.r,p.y=o.y)}function C1(r,o){var p=r.r+o.r-1e-6,P=o.x-r.x,at=o.y-r.y;return p>0&&p*p>P*P+at*at}function kS(r){var o=r._,p=r.next._,P=o.r+p.r,at=(o.x*p.r+p.x*o.r)/P,mt=(o.y*p.r+p.y*o.r)/P;return at*at+mt*mt}function M1(r){this._=r,this.next=null,this.previous=null}function GT(r){if(!(at=r.length))return 0;var o,p,P,at,mt,St,kt,Lt,Ut,qt,ie;if(o=r[0],o.x=0,o.y=0,!(at>1))return o.r;if(p=r[1],o.x=-p.r,p.x=o.r,p.y=0,!(at>2))return o.r+p.r;fw(p,o,P=r[2]),o=new M1(o),p=new M1(p),P=new M1(P),o.next=P.previous=p,p.next=o.previous=P,P.next=p.previous=o;t:for(kt=3;kt0)throw new Error("cycle");return kt}return p.id=function(P){return arguments.length?(r=E1(P),p):r},p.parentId=function(P){return arguments.length?(o=E1(P),p):o},p}function sP(r,o){return r.parent===o.parent?1:2}function k1(r){var o=r.children;return o?o[0]:r.t}function oy(r){var o=r.children;return o?o[o.length-1]:r.t}function ZT(r,o,p){var P=p/(o.i-r.i);o.c-=P,o.s+=p,r.c+=P,o.z+=p,o.m+=p}function QT(r){for(var o=0,p=0,P=r.children,at=P.length,mt;--at>=0;)mt=P[at],mt.z+=o,mt.m+=o,o+=mt.s+(p+=mt.c)}function lP(r,o,p){return r.a.parent===o.parent?r.a:p}function ay(r,o){this._=r,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=o}ay.prototype=Object.create(mh.prototype);function xw(r){for(var o=new ay(r,0),p,P=[o],at,mt,St,kt;p=P.pop();)if(mt=p._.children)for(p.children=new Array(kt=mt.length),St=kt-1;St>=0;--St)P.push(at=p.children[St]=new ay(mt[St],St)),at.parent=p;return(o.parent=new ay(null,0)).children=[o],o}function JT(){var r=sP,o=1,p=1,P=null;function at(Ut){var qt=xw(Ut);if(qt.eachAfter(mt),qt.parent.m=-qt.z,qt.eachBefore(St),P)Ut.eachBefore(Lt);else{var ie=Ut,Zt=Ut,_e=Ut;Ut.eachBefore(function(cn){cn.xZt.x&&(Zt=cn),cn.depth>_e.depth&&(_e=cn)});var Le=ie===Zt?1:r(ie,Zt)/2,De=Le-ie.x,Be=o/(Zt.x+Le+De),We=p/(_e.depth||1);Ut.eachBefore(function(cn){cn.x=(cn.x+De)*Be,cn.y=cn.depth*We})}return Ut}function mt(Ut){var qt=Ut.children,ie=Ut.parent.children,Zt=Ut.i?ie[Ut.i-1]:null;if(qt){QT(Ut);var _e=(qt[0].z+qt[qt.length-1].z)/2;Zt?(Ut.z=Zt.z+r(Ut._,Zt._),Ut.m=Ut.z-_e):Ut.z=_e}else Zt&&(Ut.z=Zt.z+r(Ut._,Zt._));Ut.parent.A=kt(Ut,Zt,Ut.parent.A||ie[0])}function St(Ut){Ut._.x=Ut.z+Ut.parent.m,Ut.m+=Ut.parent.m}function kt(Ut,qt,ie){if(qt){for(var Zt=Ut,_e=Ut,Le=qt,De=Zt.parent.children[0],Be=Zt.m,We=_e.m,cn=Le.m,nn=De.m,ln;Le=oy(Le),Zt=k1(Zt),Le&&Zt;)De=k1(De),_e=oy(_e),_e.a=Ut,ln=Le.z+cn-Zt.z-Be+r(Le._,Zt._),ln>0&&(ZT(lP(Le,Ut,ie),Ut,ln),Be+=ln,We+=ln),cn+=Le.m,Be+=Zt.m,nn+=De.m,We+=_e.m;Le&&!oy(_e)&&(_e.t=Le,_e.m+=cn-We),Zt&&!k1(De)&&(De.t=Zt,De.m+=Be-nn,ie=Ut)}return ie}function Lt(Ut){Ut.x*=o,Ut.y=Ut.depth*p}return at.separation=function(Ut){return arguments.length?(r=Ut,at):r},at.size=function(Ut){return arguments.length?(P=!1,o=+Ut[0],p=+Ut[1],at):P?null:[o,p]},at.nodeSize=function(Ut){return arguments.length?(P=!0,o=+Ut[0],p=+Ut[1],at):P?[o,p]:null},at}function sy(r,o,p,P,at){for(var mt=r.children,St,kt=-1,Lt=mt.length,Ut=r.value&&(at-p)/r.value;++ktcn&&(cn=Ut),qn=Be*Be*Pn,nn=Math.max(cn/qn,qn/We),nn>ln){Be-=Ut;break}ln=nn}St.push(Lt={value:Be,dice:_e1?P:1)},p}(tA);function eA(){var r=T1,o=!1,p=1,P=1,at=[0],mt=cp,St=cp,kt=cp,Lt=cp,Ut=cp;function qt(Zt){return Zt.x0=Zt.y0=0,Zt.x1=p,Zt.y1=P,Zt.eachBefore(ie),at=[0],o&&Zt.eachBefore(gw),Zt}function ie(Zt){var _e=at[Zt.depth],Le=Zt.x0+_e,De=Zt.y0+_e,Be=Zt.x1-_e,We=Zt.y1-_e;Be=Zt-1){var cn=mt[ie];cn.x0=Le,cn.y0=De,cn.x1=Be,cn.y1=We;return}for(var nn=Ut[ie],ln=_e/2+nn,Pn=ie+1,qn=Zt-1;Pn>>1;Ut[Un]We-De){var cr=(Le*ir+Be*gr)/_e;qt(ie,Pn,gr,Le,De,cr,We),qt(Pn,Zt,ir,cr,De,Be,We)}else{var er=(De*ir+We*gr)/_e;qt(ie,Pn,gr,Le,De,Be,er),qt(Pn,Zt,ir,Le,er,Be,We)}}}function uP(r,o,p,P,at){(r.depth&1?sy:hp)(r,o,p,P,at)}const NS=function r(o){function p(P,at,mt,St,kt){if((Lt=P._squarify)&&Lt.ratio===o)for(var Lt,Ut,qt,ie,Zt=-1,_e,Le=Lt.length,De=P.value;++Zt1?P:1)},p}(tA);function ww(r){var o=r.length;return function(p){return r[Math.max(0,Math.min(o-1,Math.floor(p*o)))]}}function rA(r,o){var p=zc(+r,+o);return function(P){var at=p(P);return at-360*Math.floor(at/360)}}function DS(r,o){return r=+r,o=+o,function(p){return Math.round(r*(1-p)+o*p)}}var A1=Math.SQRT2,O1=2,P1=4,iA=1e-12;function RS(r){return((r=Math.exp(r))+1/r)/2}function cP(r){return((r=Math.exp(r))-1/r)/2}function LS(r){return((r=Math.exp(2*r))-1)/(r+1)}function _w(r,o){var p=r[0],P=r[1],at=r[2],mt=o[0],St=o[1],kt=o[2],Lt=mt-p,Ut=St-P,qt=Lt*Lt+Ut*Ut,ie,Zt;if(qt1&&sA(r[p[P-2]],r[p[P-1]],r[at])<=0;)--P;p[P++]=at}return p.slice(0,P)}function zS(r){if((p=r.length)<3)return null;var o,p,P=new Array(p),at=new Array(p);for(o=0;o=0;--o)Ut.push(r[P[mt[o]][2]]);for(o=+kt;omt!=kt>mt&&at<(St-Lt)*(mt-Ut)/(kt-Ut)+Lt&&(qt=!qt),St=Lt,kt=Ut;return qt}function cA(r){for(var o=-1,p=r.length,P=r[p-1],at,mt,St=P[0],kt=P[1],Lt=0;++o1);return P+at*kt*Math.sqrt(-2*Math.log(St)/St)}}return p.source=r,p}(Zm),Ow=function r(o){function p(){var P=Aw.source(o).apply(this,arguments);return function(){return Math.exp(P())}}return p.source=r,p}(Zm),US=function r(o){function p(P){return function(){for(var at=0,mt=0;mtp&&(P=o,o=p,p=P),function(at){return Math.max(o,Math.min(p,at))}}function Dw(r,o,p){var P=r[0],at=r[1],mt=o[0],St=o[1];return at2?fA:Dw,Lt=Ut=null,ie}function ie(Zt){return isNaN(Zt=+Zt)?mt:(Lt||(Lt=kt(r.map(P),o,p)))(P(St(Zt)))}return ie.invert=function(Zt){return St(at((Ut||(Ut=kt(o,r.map(P),_s)))(Zt)))},ie.domain=function(Zt){return arguments.length?(r=D1.call(Zt,uy),St===ys||(St=Nw(r)),qt()):r.slice()},ie.range=function(Zt){return arguments.length?(o=Qm.call(Zt),qt()):o.slice()},ie.rangeRound=function(Zt){return o=Qm.call(Zt),p=DS,qt()},ie.clamp=function(Zt){return arguments.length?(St=Zt?Nw(r):ys,ie):St!==ys},ie.interpolate=function(Zt){return arguments.length?(p=Zt,qt()):p},ie.unknown=function(Zt){return arguments.length?(mt=Zt,ie):mt},function(Zt,_e){return P=Zt,at=_e,qt()}}function Lw(r,o){return Rw()(r,o)}function L1(r,o,p,P){var at=(0,T.sG)(r,o,p),mt;switch(P=Sf(P==null?",f":P),P.type){case"s":{var St=Math.max(Math.abs(r),Math.abs(o));return P.precision==null&&!isNaN(mt=rl(at,St))&&(P.precision=mt),$d(P,St)}case"":case"e":case"g":case"p":case"r":{P.precision==null&&!isNaN(mt=Pm(at,Math.max(Math.abs(r),Math.abs(o))))&&(P.precision=mt-(P.type==="e"));break}case"f":case"%":{P.precision==null&&!isNaN(mt=N0(at))&&(P.precision=mt-(P.type==="%")*2);break}}return lh(P)}function fp(r){var o=r.domain;return r.ticks=function(p){var P=o();return(0,T.Zc)(P[0],P[P.length-1],p==null?10:p)},r.tickFormat=function(p,P){var at=o();return L1(at[0],at[at.length-1],p==null?10:p,P)},r.nice=function(p){p==null&&(p=10);var P=o(),at=0,mt=P.length-1,St=P[at],kt=P[mt],Lt;return kt0?(St=Math.floor(St/Lt)*Lt,kt=Math.ceil(kt/Lt)*Lt,Lt=(0,T.lq)(St,kt,p)):Lt<0&&(St=Math.ceil(St*Lt)/Lt,kt=Math.floor(kt*Lt)/Lt,Lt=(0,T.lq)(St,kt,p)),Lt>0?(P[at]=Math.floor(St/Lt)*Lt,P[mt]=Math.ceil(kt/Lt)*Lt,o(P)):Lt<0&&(P[at]=Math.ceil(St*Lt)/Lt,P[mt]=Math.floor(kt*Lt)/Lt,o(P)),r},r}function qS(){var r=Lw(ys,ys);return r.copy=function(){return cy(r,qS())},Ql.apply(r,arguments),fp(r)}function dA(r){var o;function p(P){return isNaN(P=+P)?o:P}return p.invert=p,p.domain=p.range=function(P){return arguments.length?(r=D1.call(P,uy),p):r.slice()},p.unknown=function(P){return arguments.length?(o=P,p):o},p.copy=function(){return dA(r).unknown(o)},r=arguments.length?D1.call(r,uy):[0,1],fp(p)}function Iw(r,o){r=r.slice();var p=0,P=r.length-1,at=r[p],mt=r[P],St;return mt0){for(;Zt<_e;++Zt)for(De=1,Le=mt(Zt);Deqt)break;cn.push(Be)}}else for(;Zt<_e;++Zt)for(De=P-1,Le=mt(Zt);De>=1;--De)if(Be=Le*De,!(Beqt)break;cn.push(Be)}}else cn=(0,T.Zc)(Zt,_e,Math.min(_e-Zt,We)).map(mt);return ie?cn.reverse():cn},o.tickFormat=function(kt,Lt){if(Lt==null&&(Lt=P===10?".0e":","),typeof Lt!="function"&&(Lt=lh(Lt)),kt===1/0)return Lt;kt==null&&(kt=10);var Ut=Math.max(1,P*kt/o.ticks().length);return function(qt){var ie=qt/mt(Math.round(at(qt)));return ie*P0?p[kt-1]:r[0],kt=p?[P[p-1],o]:[P[Ut-1],P[Ut]]},St.unknown=function(Lt){return arguments.length&&(mt=Lt),St},St.thresholds=function(){return P.slice()},St.copy=function(){return Fw().domain([r,o]).range(at).unknown(mt)},Ql.apply(fp(St),arguments)}function gA(){var r=[.5],o=[0,1],p,P=1;function at(mt){return mt<=mt?o[(0,T.h1)(r,mt,0,P)]:p}return at.domain=function(mt){return arguments.length?(r=Qm.call(mt),P=Math.min(r.length,o.length-1),at):r.slice()},at.range=function(mt){return arguments.length?(o=Qm.call(mt),P=Math.min(r.length,o.length-1),at):o.slice()},at.invertExtent=function(mt){var St=o.indexOf(mt);return[r[St-1],r[St]]},at.unknown=function(mt){return arguments.length?(p=mt,at):p},at.copy=function(){return gA().domain(r).range(o).unknown(p)},Ql.apply(at,arguments)}var JS=new Date,z1=new Date;function Za(r,o,p,P){function at(mt){return r(mt=arguments.length===0?new Date:new Date(+mt)),mt}return at.floor=function(mt){return r(mt=new Date(+mt)),mt},at.ceil=function(mt){return r(mt=new Date(mt-1)),o(mt,1),r(mt),mt},at.round=function(mt){var St=at(mt),kt=at.ceil(mt);return mt-St0))return Lt;do Lt.push(Ut=new Date(+mt)),o(mt,kt),r(mt);while(Ut=St)for(;r(St),!mt(St);)St.setTime(St-1)},function(St,kt){if(St>=St)if(kt<0)for(;++kt<=0;)for(;o(St,-1),!mt(St););else for(;--kt>=0;)for(;o(St,1),!mt(St););})},p&&(at.count=function(mt,St){return JS.setTime(+mt),z1.setTime(+St),r(JS),r(z1),Math.floor(p(JS,z1))},at.every=function(mt){return mt=Math.floor(mt),!isFinite(mt)||!(mt>0)?null:mt>1?at.filter(P?function(St){return P(St)%mt===0}:function(St){return at.count(0,St)%mt===0}):at}),at}var pp=Za(function(r){r.setMonth(0,1),r.setHours(0,0,0,0)},function(r,o){r.setFullYear(r.getFullYear()+o)},function(r,o){return o.getFullYear()-r.getFullYear()},function(r){return r.getFullYear()});pp.every=function(r){return!isFinite(r=Math.floor(r))||!(r>0)?null:Za(function(o){o.setFullYear(Math.floor(o.getFullYear()/r)*r),o.setMonth(0,1),o.setHours(0,0,0,0)},function(o,p){o.setFullYear(o.getFullYear()+p*r)})};const yh=pp;var yP=pp.range,tC=Za(function(r){r.setDate(1),r.setHours(0,0,0,0)},function(r,o){r.setMonth(r.getMonth()+o)},function(r,o){return o.getMonth()-r.getMonth()+(o.getFullYear()-r.getFullYear())*12},function(r){return r.getMonth()});const eC=tC;var yA=tC.range,Nf=1e3,mp=6e4,U1=36e5,Bw=864e5,nC=6048e5;function Df(r){return Za(function(o){o.setDate(o.getDate()-(o.getDay()+7-r)%7),o.setHours(0,0,0,0)},function(o,p){o.setDate(o.getDate()+p*7)},function(o,p){return(p-o-(p.getTimezoneOffset()-o.getTimezoneOffset())*mp)/nC})}var fy=Df(0),dy=Df(1),kc=Df(2),rC=Df(3),Jm=Df(4),vA=Df(5),vh=Df(6),Tc=fy.range,iC=dy.range,vP=kc.range,oC=rC.range,xA=Jm.range,aC=vA.range,bA=vh.range,sC=Za(function(r){r.setHours(0,0,0,0)},function(r,o){r.setDate(r.getDate()+o)},function(r,o){return(o-r-(o.getTimezoneOffset()-r.getTimezoneOffset())*mp)/Bw},function(r){return r.getDate()-1});const H1=sC;var xP=sC.range,zw=Za(function(r){r.setTime(r-r.getMilliseconds()-r.getSeconds()*Nf-r.getMinutes()*mp)},function(r,o){r.setTime(+r+o*U1)},function(r,o){return(o-r)/U1},function(r){return r.getHours()});const Uw=zw;var W1=zw.range,tg=Za(function(r){r.setTime(r-r.getMilliseconds()-r.getSeconds()*Nf)},function(r,o){r.setTime(+r+o*mp)},function(r,o){return(o-r)/mp},function(r){return r.getMinutes()});const Y1=tg;var eg=tg.range,py=Za(function(r){r.setTime(r-r.getMilliseconds())},function(r,o){r.setTime(+r+o*Nf)},function(r,o){return(o-r)/Nf},function(r){return r.getUTCSeconds()});const V1=py;var ng=py.range,rg=Za(function(){},function(r,o){r.setTime(+r+o)},function(r,o){return o-r});rg.every=function(r){return r=Math.floor(r),!isFinite(r)||!(r>0)?null:r>1?Za(function(o){o.setTime(Math.floor(o/r)*r)},function(o,p){o.setTime(+o+p*r)},function(o,p){return(p-o)/r}):rg};const G1=rg;var Hw=rg.range;function Rf(r){return Za(function(o){o.setUTCDate(o.getUTCDate()-(o.getUTCDay()+7-r)%7),o.setUTCHours(0,0,0,0)},function(o,p){o.setUTCDate(o.getUTCDate()+p*7)},function(o,p){return(p-o)/nC})}var gp=Rf(0),my=Rf(1),lC=Rf(2),uC=Rf(3),yp=Rf(4),Ww=Rf(5),cC=Rf(6),hC=gp.range,fC=my.range,wA=lC.range,_A=uC.range,SA=yp.range,CA=Ww.range,MA=cC.range,q1=Za(function(r){r.setUTCHours(0,0,0,0)},function(r,o){r.setUTCDate(r.getUTCDate()+o)},function(r,o){return(o-r)/Bw},function(r){return r.getUTCDate()-1});const ig=q1;var dC=q1.range,gy=Za(function(r){r.setUTCMonth(0,1),r.setUTCHours(0,0,0,0)},function(r,o){r.setUTCFullYear(r.getUTCFullYear()+o)},function(r,o){return o.getUTCFullYear()-r.getUTCFullYear()},function(r){return r.getUTCFullYear()});gy.every=function(r){return!isFinite(r=Math.floor(r))||!(r>0)?null:Za(function(o){o.setUTCFullYear(Math.floor(o.getUTCFullYear()/r)*r),o.setUTCMonth(0,1),o.setUTCHours(0,0,0,0)},function(o,p){o.setUTCFullYear(o.getUTCFullYear()+p*r)})};const vp=gy;var $1=gy.range;function X1(r){if(0<=r.y&&r.y<100){var o=new Date(-1,r.m,r.d,r.H,r.M,r.S,r.L);return o.setFullYear(r.y),o}return new Date(r.y,r.m,r.d,r.H,r.M,r.S,r.L)}function yy(r){if(0<=r.y&&r.y<100){var o=new Date(Date.UTC(-1,r.m,r.d,r.H,r.M,r.S,r.L));return o.setUTCFullYear(r.y),o}return new Date(Date.UTC(r.y,r.m,r.d,r.H,r.M,r.S,r.L))}function og(r,o,p){return{y:r,m:o,d:p,H:0,M:0,S:0,L:0}}function Yw(r){var o=r.dateTime,p=r.date,P=r.time,at=r.periods,mt=r.days,St=r.shortDays,kt=r.months,Lt=r.shortMonths,Ut=Ac(at),qt=ag(at),ie=Ac(mt),Zt=ag(mt),_e=Ac(St),Le=ag(St),De=Ac(kt),Be=ag(kt),We=Ac(Lt),cn=ag(Lt),nn={a:Jr,A:$r,b:ei,B:Ni,c:null,d:Z1,e:Z1,f:FA,g:wC,G:_C,H:xC,I:IA,j:jA,L:Q1,m:BA,M:$w,p:Ti,q:fo,Q:TC,s:lg,S:xh,u:tu,U:Xw,V:wP,w:pa,W:sg,x:null,X:null,y:zA,Y:vi,Z:vs,"%":kC},ln={a:Bo,A:po,b:Na,B:uu,c:null,d:SC,e:SC,f:MC,g:GA,G:Oc,H:UA,I:HA,j:WA,L:CC,m:YA,M:VA,p:cu,q:Ku,Q:TC,s:lg,S:EC,u:Kw,U:J1,V:ll,w:$u,W:eu,x:null,X:null,y:tx,Y:qA,Z:$A,"%":kC},Pn={a:cr,A:er,b:fn,B:$n,c:kr,d:Gw,e:Gw,f:bp,g:Vw,G:AA,H:vC,I:vC,j:qw,L:DA,m:PA,M:xp,p:ir,q:OA,Q:RA,s:LA,S:NA,u:TA,U:Jl,V:gC,w:mC,W:bP,x:Wn,X:_r,y:Vw,Y:AA,Z:yC,"%":wp};nn.x=qn(p,nn),nn.X=qn(P,nn),nn.c=qn(o,nn),ln.x=qn(p,ln),ln.X=qn(P,ln),ln.c=qn(o,ln);function qn(Gr,Ii){return function(Qi){var Ir=[],oa=-1,oo=0,Os=Gr.length,Mo,Sh,Gs;for(Qi instanceof Date||(Qi=new Date(+Qi));++oa53)return null;"w"in Ir||(Ir.w=1),"Z"in Ir?(oo=yy(og(Ir.y,0,1)),Os=oo.getUTCDay(),oo=Os>4||Os===0?my.ceil(oo):my(oo),oo=ig.offset(oo,(Ir.V-1)*7),Ir.y=oo.getUTCFullYear(),Ir.m=oo.getUTCMonth(),Ir.d=oo.getUTCDate()+(Ir.w+6)%7):(oo=X1(og(Ir.y,0,1)),Os=oo.getDay(),oo=Os>4||Os===0?dy.ceil(oo):dy(oo),oo=H1.offset(oo,(Ir.V-1)*7),Ir.y=oo.getFullYear(),Ir.m=oo.getMonth(),Ir.d=oo.getDate()+(Ir.w+6)%7)}else("W"in Ir||"U"in Ir)&&("w"in Ir||(Ir.w="u"in Ir?Ir.u%7:"W"in Ir?1:0),Os="Z"in Ir?yy(og(Ir.y,0,1)).getUTCDay():X1(og(Ir.y,0,1)).getDay(),Ir.m=0,Ir.d="W"in Ir?(Ir.w+6)%7+Ir.W*7-(Os+5)%7:Ir.w+Ir.U*7-(Os+6)%7);return"Z"in Ir?(Ir.H+=Ir.Z/100|0,Ir.M+=Ir.Z%100,yy(Ir)):X1(Ir)}}function gr(Gr,Ii,Qi,Ir){for(var oa=0,oo=Ii.length,Os=Qi.length,Mo,Sh;oa=Os)return-1;if(Mo=Ii.charCodeAt(oa++),Mo===37){if(Mo=Ii.charAt(oa++),Sh=Pn[Mo in K1?Ii.charAt(oa++):Mo],!Sh||(Ir=Sh(Gr,Qi,Ir))<0)return-1}else if(Mo!=Qi.charCodeAt(Ir++))return-1}return Ir}function ir(Gr,Ii,Qi){var Ir=Ut.exec(Ii.slice(Qi));return Ir?(Gr.p=qt[Ir[0].toLowerCase()],Qi+Ir[0].length):-1}function cr(Gr,Ii,Qi){var Ir=_e.exec(Ii.slice(Qi));return Ir?(Gr.w=Le[Ir[0].toLowerCase()],Qi+Ir[0].length):-1}function er(Gr,Ii,Qi){var Ir=ie.exec(Ii.slice(Qi));return Ir?(Gr.w=Zt[Ir[0].toLowerCase()],Qi+Ir[0].length):-1}function fn(Gr,Ii,Qi){var Ir=We.exec(Ii.slice(Qi));return Ir?(Gr.m=cn[Ir[0].toLowerCase()],Qi+Ir[0].length):-1}function $n(Gr,Ii,Qi){var Ir=De.exec(Ii.slice(Qi));return Ir?(Gr.m=Be[Ir[0].toLowerCase()],Qi+Ir[0].length):-1}function kr(Gr,Ii,Qi){return gr(Gr,o,Ii,Qi)}function Wn(Gr,Ii,Qi){return gr(Gr,p,Ii,Qi)}function _r(Gr,Ii,Qi){return gr(Gr,P,Ii,Qi)}function Jr(Gr){return St[Gr.getDay()]}function $r(Gr){return mt[Gr.getDay()]}function ei(Gr){return Lt[Gr.getMonth()]}function Ni(Gr){return kt[Gr.getMonth()]}function Ti(Gr){return at[+(Gr.getHours()>=12)]}function fo(Gr){return 1+~~(Gr.getMonth()/3)}function Bo(Gr){return St[Gr.getUTCDay()]}function po(Gr){return mt[Gr.getUTCDay()]}function Na(Gr){return Lt[Gr.getUTCMonth()]}function uu(Gr){return kt[Gr.getUTCMonth()]}function cu(Gr){return at[+(Gr.getUTCHours()>=12)]}function Ku(Gr){return 1+~~(Gr.getUTCMonth()/3)}return{format:function(Gr){var Ii=qn(Gr+="",nn);return Ii.toString=function(){return Gr},Ii},parse:function(Gr){var Ii=Un(Gr+="",!1);return Ii.toString=function(){return Gr},Ii},utcFormat:function(Gr){var Ii=qn(Gr+="",ln);return Ii.toString=function(){return Gr},Ii},utcParse:function(Gr){var Ii=Un(Gr+="",!0);return Ii.toString=function(){return Gr},Ii}}}var K1={"-":"",_:" ",0:"0"},Qa=/^\s*\d+/,EA=/^%/,kA=/[\\^$*+?|[\]().{}]/g;function bo(r,o,p){var P=r<0?"-":"",at=(P?-r:r)+"",mt=at.length;return P+(mt68?1900:2e3),p+P[0].length):-1}function yC(r,o,p){var P=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(o.slice(p,p+6));return P?(r.Z=P[1]?0:-(P[2]+(P[3]||"00")),p+P[0].length):-1}function OA(r,o,p){var P=Qa.exec(o.slice(p,p+1));return P?(r.q=P[0]*3-3,p+P[0].length):-1}function PA(r,o,p){var P=Qa.exec(o.slice(p,p+2));return P?(r.m=P[0]-1,p+P[0].length):-1}function Gw(r,o,p){var P=Qa.exec(o.slice(p,p+2));return P?(r.d=+P[0],p+P[0].length):-1}function qw(r,o,p){var P=Qa.exec(o.slice(p,p+3));return P?(r.m=0,r.d=+P[0],p+P[0].length):-1}function vC(r,o,p){var P=Qa.exec(o.slice(p,p+2));return P?(r.H=+P[0],p+P[0].length):-1}function xp(r,o,p){var P=Qa.exec(o.slice(p,p+2));return P?(r.M=+P[0],p+P[0].length):-1}function NA(r,o,p){var P=Qa.exec(o.slice(p,p+2));return P?(r.S=+P[0],p+P[0].length):-1}function DA(r,o,p){var P=Qa.exec(o.slice(p,p+3));return P?(r.L=+P[0],p+P[0].length):-1}function bp(r,o,p){var P=Qa.exec(o.slice(p,p+6));return P?(r.L=Math.floor(P[0]/1e3),p+P[0].length):-1}function wp(r,o,p){var P=EA.exec(o.slice(p,p+1));return P?p+P[0].length:-1}function RA(r,o,p){var P=Qa.exec(o.slice(p));return P?(r.Q=+P[0],p+P[0].length):-1}function LA(r,o,p){var P=Qa.exec(o.slice(p));return P?(r.s=+P[0],p+P[0].length):-1}function Z1(r,o){return bo(r.getDate(),o,2)}function xC(r,o){return bo(r.getHours(),o,2)}function IA(r,o){return bo(r.getHours()%12||12,o,2)}function jA(r,o){return bo(1+H1.count(yh(r),r),o,3)}function Q1(r,o){return bo(r.getMilliseconds(),o,3)}function FA(r,o){return Q1(r,o)+"000"}function BA(r,o){return bo(r.getMonth()+1,o,2)}function $w(r,o){return bo(r.getMinutes(),o,2)}function xh(r,o){return bo(r.getSeconds(),o,2)}function tu(r){var o=r.getDay();return o===0?7:o}function Xw(r,o){return bo(fy.count(yh(r)-1,r),o,2)}function bC(r){var o=r.getDay();return o>=4||o===0?Jm(r):Jm.ceil(r)}function wP(r,o){return r=bC(r),bo(Jm.count(yh(r),r)+(yh(r).getDay()===4),o,2)}function pa(r){return r.getDay()}function sg(r,o){return bo(dy.count(yh(r)-1,r),o,2)}function zA(r,o){return bo(r.getFullYear()%100,o,2)}function wC(r,o){return r=bC(r),bo(r.getFullYear()%100,o,2)}function vi(r,o){return bo(r.getFullYear()%1e4,o,4)}function _C(r,o){var p=r.getDay();return r=p>=4||p===0?Jm(r):Jm.ceil(r),bo(r.getFullYear()%1e4,o,4)}function vs(r){var o=r.getTimezoneOffset();return(o>0?"-":(o*=-1,"+"))+bo(o/60|0,"0",2)+bo(o%60,"0",2)}function SC(r,o){return bo(r.getUTCDate(),o,2)}function UA(r,o){return bo(r.getUTCHours(),o,2)}function HA(r,o){return bo(r.getUTCHours()%12||12,o,2)}function WA(r,o){return bo(1+ig.count(vp(r),r),o,3)}function CC(r,o){return bo(r.getUTCMilliseconds(),o,3)}function MC(r,o){return CC(r,o)+"000"}function YA(r,o){return bo(r.getUTCMonth()+1,o,2)}function VA(r,o){return bo(r.getUTCMinutes(),o,2)}function EC(r,o){return bo(r.getUTCSeconds(),o,2)}function Kw(r){var o=r.getUTCDay();return o===0?7:o}function J1(r,o){return bo(gp.count(vp(r)-1,r),o,2)}function Zw(r){var o=r.getUTCDay();return o>=4||o===0?yp(r):yp.ceil(r)}function ll(r,o){return r=Zw(r),bo(yp.count(vp(r),r)+(vp(r).getUTCDay()===4),o,2)}function $u(r){return r.getUTCDay()}function eu(r,o){return bo(my.count(vp(r)-1,r),o,2)}function tx(r,o){return bo(r.getUTCFullYear()%100,o,2)}function GA(r,o){return r=Zw(r),bo(r.getUTCFullYear()%100,o,2)}function qA(r,o){return bo(r.getUTCFullYear()%1e4,o,4)}function Oc(r,o){var p=r.getUTCDay();return r=p>=4||p===0?yp(r):yp.ceil(r),bo(r.getUTCFullYear()%1e4,o,4)}function $A(){return"+0000"}function kC(){return"%"}function TC(r){return+r}function lg(r){return Math.floor(+r/1e3)}var nu,Qw,AC,ex,ug;OC({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function OC(r){return nu=Yw(r),Qw=nu.format,AC=nu.parse,ex=nu.utcFormat,ug=nu.utcParse,nu}var _p=1e3,Sp=_p*60,xs=Sp*60,nx=xs*24,Jw=nx*7,PC=nx*30,rx=nx*365;function XA(r){return new Date(r)}function KA(r){return r instanceof Date?+r:+new Date(+r)}function vy(r,o,p,P,at,mt,St,kt,Lt){var Ut=Lw(ys,ys),qt=Ut.invert,ie=Ut.domain,Zt=Lt(".%L"),_e=Lt(":%S"),Le=Lt("%I:%M"),De=Lt("%I %p"),Be=Lt("%a %d"),We=Lt("%b %d"),cn=Lt("%B"),nn=Lt("%Y"),ln=[[St,1,_p],[St,5,5*_p],[St,15,15*_p],[St,30,30*_p],[mt,1,Sp],[mt,5,5*Sp],[mt,15,15*Sp],[mt,30,30*Sp],[at,1,xs],[at,3,3*xs],[at,6,6*xs],[at,12,12*xs],[P,1,nx],[P,2,2*nx],[p,1,Jw],[o,1,PC],[o,3,3*PC],[r,1,rx]];function Pn(Un){return(St(Un)1)&&(r-=Math.floor(r));var o=Math.abs(r-.5);return cx.h=360*r-100,cx.s=1.5-1.5*o,cx.l=.8-.9*o,cx+""}var fg=so(),Ll=Math.PI/3,Mp=Math.PI*2/3;function ru(r){var o;return r=(.5-r)*Math.PI,fg.r=255*(o=Math.sin(r))*o,fg.g=255*(o=Math.sin(r+Ll))*o,fg.b=255*(o=Math.sin(r+Mp))*o,fg+""}function h_(r){return r=Math.max(0,Math.min(1,r)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+r*(1172.33-r*(10793.56-r*(33300.12-r*(38394.49-r*14825.05)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+r*(557.33+r*(1225.33-r*(3574.96-r*(1073.77+r*707.56)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+r*(3211.1-r*(15327.97-r*(27814-r*(22569.18-r*6838.66)))))))+")"}function Nc(r){var o=r.length;return function(p){return r[Math.max(0,Math.min(o-1,Math.floor(p*o)))]}}const hx=Nc(Yi("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"));var dg=Nc(Yi("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),f_=Nc(Yi("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),vM=Nc(Yi("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function pg(r){return sn(pr(r).call(document.documentElement))}var d_=0;function xM(){return new p_}function p_(){this._="@"+(++d_).toString(36)}p_.prototype=xM.prototype={constructor:p_,get:function(r){for(var o=this._;!(o in r);)if(!(r=r.parentNode))return;return r[o]},set:function(r,o){return r[this._]=o},remove:function(r){return this._ in r&&delete r[this._]},toString:function(){return this._}};function Dc(r){return typeof r=="string"?new Ae([document.querySelectorAll(r)],[document.documentElement]):new Ae([r==null?[]:r],ge)}function If(r,o){o==null&&(o=tr().touches);for(var p=0,P=o?o.length:0,at=new Array(P);p1?0:r<-1?jf:Math.acos(r)}function Vs(r){return r>=1?Sy:r<=-1?-Sy:Math.asin(r)}function iu(r){return r.innerRadius}function ou(r){return r.outerRadius}function ul(r){return r.startAngle}function m_(r){return r.endAngle}function My(r){return r&&r.padAngle}function mg(r,o,p,P,at,mt,St,kt){var Lt=p-r,Ut=P-o,qt=St-at,ie=kt-mt,Zt=ie*Lt-qt*Ut;if(!(Zt*Ztkr*kr+Wn*Wn&&(gr=cr,ir=er),{cx:gr,cy:ir,x01:-qt,y01:-ie,x11:gr*(at/Pn-1),y11:ir*(at/Pn-1)}}function _3(){var r=iu,o=ou,p=qi(0),P=null,at=ul,mt=m_,St=My,kt=null;function Lt(){var Ut,qt,ie=+r.apply(this,arguments),Zt=+o.apply(this,arguments),_e=at.apply(this,arguments)-Sy,Le=mt.apply(this,arguments)-Sy,De=Rc(Le-_e),Be=Le>_e;if(kt||(kt=Ut=Au()),ZtUa))kt.moveTo(0,0);else if(De>Ff-Ua)kt.moveTo(Zt*Ep(_e),Zt*Il(_e)),kt.arc(0,0,Zt,_e,Le,!Be),ie>Ua&&(kt.moveTo(ie*Ep(Le),ie*Il(Le)),kt.arc(0,0,ie,Le,_e,Be));else{var We=_e,cn=Le,nn=_e,ln=Le,Pn=De,qn=De,Un=St.apply(this,arguments)/2,gr=Un>Ua&&(P?+P.apply(this,arguments):kp(ie*ie+Zt*Zt)),ir=_y(Rc(Zt-ie)/2,+p.apply(this,arguments)),cr=ir,er=ir,fn,$n;if(gr>Ua){var kr=Vs(gr/ie*Il(Un)),Wn=Vs(gr/Zt*Il(Un));(Pn-=kr*2)>Ua?(kr*=Be?1:-1,nn+=kr,ln-=kr):(Pn=0,nn=ln=(_e+Le)/2),(qn-=Wn*2)>Ua?(Wn*=Be?1:-1,We+=Wn,cn-=Wn):(qn=0,We=cn=(_e+Le)/2)}var _r=Zt*Ep(We),Jr=Zt*Il(We),$r=ie*Ep(ln),ei=ie*Il(ln);if(ir>Ua){var Ni=Zt*Ep(cn),Ti=Zt*Il(cn),fo=ie*Ep(nn),Bo=ie*Il(nn),po;if(DeUa?er>Ua?(fn=Bf(fo,Bo,_r,Jr,Zt,er,Be),$n=Bf(Ni,Ti,$r,ei,Zt,er,Be),kt.moveTo(fn.cx+fn.x01,fn.cy+fn.y01),erUa)||!(Pn>Ua)?kt.lineTo($r,ei):cr>Ua?(fn=Bf($r,ei,Ni,Ti,ie,-cr,Be),$n=Bf(_r,Jr,fo,Bo,ie,-cr,Be),kt.lineTo(fn.cx+fn.x01,fn.cy+fn.y01),cr=Zt;--_e)kt.point(cn[_e],nn[_e]);kt.lineEnd(),kt.areaEnd()}Be&&(cn[ie]=+r(De,ie,qt),nn[ie]=+p(De,ie,qt),kt.point(o?+o(De,ie,qt):cn[ie],P?+P(De,ie,qt):nn[ie]))}if(We)return kt=null,We+""||null}function Ut(){return dx().defined(at).curve(St).context(mt)}return Lt.x=function(qt){return arguments.length?(r=typeof qt=="function"?qt:qi(+qt),o=null,Lt):r},Lt.x0=function(qt){return arguments.length?(r=typeof qt=="function"?qt:qi(+qt),Lt):r},Lt.x1=function(qt){return arguments.length?(o=qt==null?null:typeof qt=="function"?qt:qi(+qt),Lt):o},Lt.y=function(qt){return arguments.length?(p=typeof qt=="function"?qt:qi(+qt),P=null,Lt):p},Lt.y0=function(qt){return arguments.length?(p=typeof qt=="function"?qt:qi(+qt),Lt):p},Lt.y1=function(qt){return arguments.length?(P=qt==null?null:typeof qt=="function"?qt:qi(+qt),Lt):P},Lt.lineX0=Lt.lineY0=function(){return Ut().x(r).y(p)},Lt.lineY1=function(){return Ut().x(r).y(P)},Lt.lineX1=function(){return Ut().x(o).y(p)},Lt.defined=function(qt){return arguments.length?(at=typeof qt=="function"?qt:qi(!!qt),Lt):at},Lt.curve=function(qt){return arguments.length?(St=qt,mt!=null&&(kt=St(mt)),Lt):St},Lt.context=function(qt){return arguments.length?(qt==null?mt=kt=null:kt=St(mt=qt),Lt):mt},Lt}function S3(r,o){return or?1:o>=r?0:NaN}function C3(r){return r}function M3(){var r=C3,o=S3,p=null,P=qi(0),at=qi(Ff),mt=qi(0);function St(kt){var Lt,Ut=kt.length,qt,ie,Zt=0,_e=new Array(Ut),Le=new Array(Ut),De=+P.apply(this,arguments),Be=Math.min(Ff,Math.max(-Ff,at.apply(this,arguments)-De)),We,cn=Math.min(Math.abs(Be)/Ut,mt.apply(this,arguments)),nn=cn*(Be<0?-1:1),ln;for(Lt=0;Lt0&&(Zt+=ln);for(o!=null?_e.sort(function(Pn,qn){return o(Le[Pn],Le[qn])}):p!=null&&_e.sort(function(Pn,qn){return p(kt[Pn],kt[qn])}),Lt=0,ie=Zt?(Be-Ut*nn)/Zt:0;Lt0?ln*ie:0)+nn,Le[qt]={data:kt[qt],index:Lt,value:ln,startAngle:De,endAngle:We,padAngle:cn};return Le}return St.value=function(kt){return arguments.length?(r=typeof kt=="function"?kt:qi(+kt),St):r},St.sortValues=function(kt){return arguments.length?(o=kt,p=null,St):o},St.sort=function(kt){return arguments.length?(p=kt,o=null,St):p},St.startAngle=function(kt){return arguments.length?(P=typeof kt=="function"?kt:qi(+kt),St):P},St.endAngle=function(kt){return arguments.length?(at=typeof kt=="function"?kt:qi(+kt),St):at},St.padAngle=function(kt){return arguments.length?(mt=typeof kt=="function"?kt:qi(+kt),St):mt},St}var wM=v_(zf);function _M(r){this._curve=r}_M.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(r,o){this._curve.point(o*Math.sin(r),o*-Math.cos(r))}};function v_(r){function o(p){return new _M(r(p))}return o._curve=r,o}function Ey(r){var o=r.curve;return r.angle=r.x,delete r.x,r.radius=r.y,delete r.y,r.curve=function(p){return arguments.length?o(v_(p)):o()._curve},r}function SM(){return Ey(dx().curve(wM))}function CM(){var r=bM().curve(wM),o=r.curve,p=r.lineX0,P=r.lineX1,at=r.lineY0,mt=r.lineY1;return r.angle=r.x,delete r.x,r.startAngle=r.x0,delete r.x0,r.endAngle=r.x1,delete r.x1,r.radius=r.y,delete r.y,r.innerRadius=r.y0,delete r.y0,r.outerRadius=r.y1,delete r.y1,r.lineStartAngle=function(){return Ey(p())},delete r.lineX0,r.lineEndAngle=function(){return Ey(P())},delete r.lineX1,r.lineInnerRadius=function(){return Ey(at())},delete r.lineY0,r.lineOuterRadius=function(){return Ey(mt())},delete r.lineY1,r.curve=function(St){return arguments.length?o(v_(St)):o()._curve},r}function ky(r,o){return[(o=+o)*Math.cos(r-=Math.PI/2),o*Math.sin(r)]}var x_=Array.prototype.slice;function E3(r){return r.source}function k3(r){return r.target}function px(r){var o=E3,p=k3,P=y_,at=fx,mt=null;function St(){var kt,Lt=x_.call(arguments),Ut=o.apply(this,Lt),qt=p.apply(this,Lt);if(mt||(mt=kt=Au()),r(mt,+P.apply(this,(Lt[0]=Ut,Lt)),+at.apply(this,Lt),+P.apply(this,(Lt[0]=qt,Lt)),+at.apply(this,Lt)),kt)return mt=null,kt+""||null}return St.source=function(kt){return arguments.length?(o=kt,St):o},St.target=function(kt){return arguments.length?(p=kt,St):p},St.x=function(kt){return arguments.length?(P=typeof kt=="function"?kt:qi(+kt),St):P},St.y=function(kt){return arguments.length?(at=typeof kt=="function"?kt:qi(+kt),St):at},St.context=function(kt){return arguments.length?(mt=kt==null?null:kt,St):mt},St}function MM(r,o,p,P,at){r.moveTo(o,p),r.bezierCurveTo(o=(o+P)/2,p,o,at,P,at)}function EM(r,o,p,P,at){r.moveTo(o,p),r.bezierCurveTo(o,p=(p+at)/2,P,p,P,at)}function SP(r,o,p,P,at){var mt=ky(o,p),St=ky(o,p=(p+at)/2),kt=ky(P,p),Lt=ky(P,at);r.moveTo(mt[0],mt[1]),r.bezierCurveTo(St[0],St[1],kt[0],kt[1],Lt[0],Lt[1])}function mx(){return px(MM)}function T3(){return px(EM)}function kM(){var r=px(SP);return r.angle=r.x,delete r.x,r.radius=r.y,delete r.y,r}const au={draw:function(r,o){var p=Math.sqrt(o/jf);r.moveTo(p,0),r.arc(0,0,p,0,Ff)}},Tp={draw:function(r,o){var p=Math.sqrt(o/5)/2;r.moveTo(-3*p,-p),r.lineTo(-p,-p),r.lineTo(-p,-3*p),r.lineTo(p,-3*p),r.lineTo(p,-p),r.lineTo(3*p,-p),r.lineTo(3*p,p),r.lineTo(p,p),r.lineTo(p,3*p),r.lineTo(-p,3*p),r.lineTo(-p,p),r.lineTo(-3*p,p),r.closePath()}};var gx=Math.sqrt(1/3),TM=gx*2;const AM={draw:function(r,o){var p=Math.sqrt(o/TM),P=p*gx;r.moveTo(0,-p),r.lineTo(P,0),r.lineTo(0,p),r.lineTo(-P,0),r.closePath()}};var OM=.8908130915292852,PM=Math.sin(jf/10)/Math.sin(7*jf/10),A3=Math.sin(Ff/10)*PM,NM=-Math.cos(Ff/10)*PM;const DM={draw:function(r,o){var p=Math.sqrt(o*OM),P=A3*p,at=NM*p;r.moveTo(0,-p),r.lineTo(P,at);for(var mt=1;mt<5;++mt){var St=Ff*mt/5,kt=Math.cos(St),Lt=Math.sin(St);r.lineTo(Lt*p,-kt*p),r.lineTo(kt*P-Lt*at,Lt*P+kt*at)}r.closePath()}},b_={draw:function(r,o){var p=Math.sqrt(o),P=-p/2;r.rect(P,P,p,p)}};var w_=Math.sqrt(3);const RM={draw:function(r,o){var p=-Math.sqrt(o/(w_*3));r.moveTo(0,p*2),r.lineTo(-w_*p,-p),r.lineTo(w_*p,-p),r.closePath()}};var su=-.5,lu=Math.sqrt(3)/2,__=1/Math.sqrt(12),LM=(__/2+1)*3;const IM={draw:function(r,o){var p=Math.sqrt(o/LM),P=p/2,at=p*__,mt=P,St=p*__+p,kt=-mt,Lt=St;r.moveTo(P,at),r.lineTo(mt,St),r.lineTo(kt,Lt),r.lineTo(su*P-lu*at,lu*P+su*at),r.lineTo(su*mt-lu*St,lu*mt+su*St),r.lineTo(su*kt-lu*Lt,lu*kt+su*Lt),r.lineTo(su*P+lu*at,su*at-lu*P),r.lineTo(su*mt+lu*St,su*St-lu*mt),r.lineTo(su*kt+lu*Lt,su*Lt-lu*kt),r.closePath()}};var yx=[au,Tp,AM,b_,DM,RM,IM];function O3(){var r=qi(au),o=qi(64),p=null;function P(){var at;if(p||(p=at=Au()),r.apply(this,arguments).draw(p,+o.apply(this,arguments)),at)return p=null,at+""||null}return P.type=function(at){return arguments.length?(r=typeof at=="function"?at:qi(at),P):r},P.size=function(at){return arguments.length?(o=typeof at=="function"?at:qi(+at),P):o},P.context=function(at){return arguments.length?(p=at==null?null:at,P):p},P}function _h(){}function vx(r,o,p){r._context.bezierCurveTo((2*r._x0+r._x1)/3,(2*r._y0+r._y1)/3,(r._x0+2*r._x1)/3,(r._y0+2*r._y1)/3,(r._x0+4*r._x1+o)/6,(r._y0+4*r._y1+p)/6)}function xx(r){this._context=r}xx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:vx(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:vx(this,r,o);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o}};function jM(r){return new xx(r)}function bx(r){this._context=r}bx.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._x2=r,this._y2=o;break;case 1:this._point=2,this._x3=r,this._y3=o;break;case 2:this._point=3,this._x4=r,this._y4=o,this._context.moveTo((this._x0+4*this._x1+r)/6,(this._y0+4*this._y1+o)/6);break;default:vx(this,r,o);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o}};function P3(r){return new bx(r)}function S_(r){this._context=r}S_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var p=(this._x0+4*this._x1+r)/6,P=(this._y0+4*this._y1+o)/6;this._line?this._context.lineTo(p,P):this._context.moveTo(p,P);break;case 3:this._point=4;default:vx(this,r,o);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o}};function N3(r){return new S_(r)}function FM(r,o){this._basis=new xx(r),this._beta=o}FM.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var r=this._x,o=this._y,p=r.length-1;if(p>0)for(var P=r[0],at=o[0],mt=r[p]-P,St=o[p]-at,kt=-1,Lt;++kt<=p;)Lt=kt/p,this._basis.point(this._beta*r[kt]+(1-this._beta)*(P+Lt*mt),this._beta*o[kt]+(1-this._beta)*(at+Lt*St));this._x=this._y=null,this._basis.lineEnd()},point:function(r,o){this._x.push(+r),this._y.push(+o)}};const BM=function r(o){function p(P){return o===1?new xx(P):new FM(P,o)}return p.beta=function(P){return r(+P)},p}(.85);function Ty(r,o,p){r._context.bezierCurveTo(r._x1+r._k*(r._x2-r._x0),r._y1+r._k*(r._y2-r._y0),r._x2+r._k*(r._x1-o),r._y2+r._k*(r._y1-p),r._x2,r._y2)}function wx(r,o){this._context=r,this._k=(1-o)/6}wx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ty(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2,this._x1=r,this._y1=o;break;case 2:this._point=3;default:Ty(this,r,o);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const Ay=function r(o){function p(P){return new wx(P,o)}return p.tension=function(P){return r(+P)},p}(0);function C_(r,o){this._context=r,this._k=(1-o)/6}C_.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._x3=r,this._y3=o;break;case 1:this._point=2,this._context.moveTo(this._x4=r,this._y4=o);break;case 2:this._point=3,this._x5=r,this._y5=o;break;default:Ty(this,r,o);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const D3=function r(o){function p(P){return new C_(P,o)}return p.tension=function(P){return r(+P)},p}(0);function M_(r,o){this._context=r,this._k=(1-o)/6}M_.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ty(this,r,o);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const zM=function r(o){function p(P){return new M_(P,o)}return p.tension=function(P){return r(+P)},p}(0);function E_(r,o,p){var P=r._x1,at=r._y1,mt=r._x2,St=r._y2;if(r._l01_a>Ua){var kt=2*r._l01_2a+3*r._l01_a*r._l12_a+r._l12_2a,Lt=3*r._l01_a*(r._l01_a+r._l12_a);P=(P*kt-r._x0*r._l12_2a+r._x2*r._l01_2a)/Lt,at=(at*kt-r._y0*r._l12_2a+r._y2*r._l01_2a)/Lt}if(r._l23_a>Ua){var Ut=2*r._l23_2a+3*r._l23_a*r._l12_a+r._l12_2a,qt=3*r._l23_a*(r._l23_a+r._l12_a);mt=(mt*Ut+r._x1*r._l23_2a-o*r._l12_2a)/qt,St=(St*Ut+r._y1*r._l23_2a-p*r._l12_2a)/qt}r._context.bezierCurveTo(P,at,mt,St,r._x2,r._y2)}function gg(r,o){this._context=r,this._alpha=o}gg.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){if(r=+r,o=+o,this._point){var p=this._x2-r,P=this._y2-o;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(p*p+P*P,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;break;case 2:this._point=3;default:E_(this,r,o);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const R3=function r(o){function p(P){return o?new gg(P,o):new wx(P,0)}return p.alpha=function(P){return r(+P)},p}(.5);function UM(r,o){this._context=r,this._alpha=o}UM.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(r,o){if(r=+r,o=+o,this._point){var p=this._x2-r,P=this._y2-o;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(p*p+P*P,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=r,this._y3=o;break;case 1:this._point=2,this._context.moveTo(this._x4=r,this._y4=o);break;case 2:this._point=3,this._x5=r,this._y5=o;break;default:E_(this,r,o);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const HM=function r(o){function p(P){return o?new UM(P,o):new C_(P,0)}return p.alpha=function(P){return r(+P)},p}(.5);function WM(r,o){this._context=r,this._alpha=o}WM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){if(r=+r,o=+o,this._point){var p=this._x2-r,P=this._y2-o;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(p*p+P*P,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:E_(this,r,o);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=o}};const L3=function r(o){function p(P){return o?new WM(P,o):new M_(P,0)}return p.alpha=function(P){return r(+P)},p}(.5);function YM(r){this._context=r}YM.prototype={areaStart:_h,areaEnd:_h,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(r,o){r=+r,o=+o,this._point?this._context.lineTo(r,o):(this._point=1,this._context.moveTo(r,o))}};function VM(r){return new YM(r)}function k_(r){return r<0?-1:1}function T_(r,o,p){var P=r._x1-r._x0,at=o-r._x1,mt=(r._y1-r._y0)/(P||at<0&&-0),St=(p-r._y1)/(at||P<0&&-0),kt=(mt*at+St*P)/(P+at);return(k_(mt)+k_(St))*Math.min(Math.abs(mt),Math.abs(St),.5*Math.abs(kt))||0}function GM(r,o){var p=r._x1-r._x0;return p?(3*(r._y1-r._y0)/p-o)/2:o}function _x(r,o,p){var P=r._x0,at=r._y0,mt=r._x1,St=r._y1,kt=(mt-P)/3;r._context.bezierCurveTo(P+kt,at+kt*o,mt-kt,St-kt*p,mt,St)}function Sx(r){this._context=r}Sx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:_x(this,this._t0,GM(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,o){var p=NaN;if(r=+r,o=+o,!(r===this._x1&&o===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;break;case 2:this._point=3,_x(this,GM(this,p=T_(this,r,o)),p);break;default:_x(this,this._t0,p=T_(this,r,o));break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=o,this._t0=p}}};function qM(r){this._context=new $M(r)}(qM.prototype=Object.create(Sx.prototype)).point=function(r,o){Sx.prototype.point.call(this,o,r)};function $M(r){this._context=r}$M.prototype={moveTo:function(r,o){this._context.moveTo(o,r)},closePath:function(){this._context.closePath()},lineTo:function(r,o){this._context.lineTo(o,r)},bezierCurveTo:function(r,o,p,P,at,mt){this._context.bezierCurveTo(o,r,P,p,mt,at)}};function I3(r){return new Sx(r)}function CP(r){return new qM(r)}function XM(r){this._context=r}XM.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var r=this._x,o=this._y,p=r.length;if(p)if(this._line?this._context.lineTo(r[0],o[0]):this._context.moveTo(r[0],o[0]),p===2)this._context.lineTo(r[1],o[1]);else for(var P=j3(r),at=j3(o),mt=0,St=1;St=0;--o)at[o]=(St[o]-at[o+1])/mt[o];for(mt[p-1]=(r[p]+at[p-1])/2,o=0;o=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(r,o){switch(r=+r,o=+o,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,o):this._context.moveTo(r,o);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,o),this._context.lineTo(r,o);else{var p=this._x*(1-this._t)+r*this._t;this._context.lineTo(p,this._y),this._context.lineTo(p,o)}break}}this._x=r,this._y=o}};function F3(r){return new Oy(r,.5)}function B3(r){return new Oy(r,0)}function ZM(r){return new Oy(r,1)}function Ap(r,o){if((St=r.length)>1)for(var p=1,P,at,mt=r[o[0]],St,kt=mt.length;p=0;)p[o]=o;return p}function z3(r,o){return r[o]}function U3(){var r=qi([]),o=yg,p=Ap,P=z3;function at(mt){var St=r.apply(this,arguments),kt,Lt=mt.length,Ut=St.length,qt=new Array(Ut),ie;for(kt=0;kt0){for(var p,P,at=0,mt=r[0].length,St;at0)for(var p,P=0,at,mt,St,kt,Lt,Ut=r[o[0]].length;P0?(at[0]=St,at[1]=St+=mt):mt<0?(at[1]=kt,at[0]=kt+=mt):(at[0]=0,at[1]=mt)}function Y3(r,o){if((at=r.length)>0){for(var p=0,P=r[o[0]],at,mt=P.length;p0)||!((mt=(at=r[o[0]]).length)>0))){for(var p=0,P=1,at,mt,St;Pmt&&(mt=at,p=o);return p}function tE(r){var o=r.map(Py);return yg(r).sort(function(p,P){return o[p]-o[P]})}function Py(r){for(var o=0,p=-1,P=r.length,at;++p0)){if(De/=_e,_e<0){if(De0){if(De>Zt)return;De>ie&&(ie=De)}if(De=P-kt,!(!_e&&De<0)){if(De/=_e,_e<0){if(De>Zt)return;De>ie&&(ie=De)}else if(_e>0){if(De0)){if(De/=Le,Le<0){if(De0){if(De>Zt)return;De>ie&&(ie=De)}if(De=at-Lt,!(!Le&&De<0)){if(De/=Le,Le<0){if(De>Zt)return;De>ie&&(ie=De)}else if(Le>0){if(De0)&&!(Zt<1)||(ie>0&&(r[0]=[kt+ie*_e,Lt+ie*Le]),Zt<1&&(r[1]=[kt+Zt*_e,Lt+Zt*Le])),!0}}}}}function J3(r,o,p,P,at){var mt=r[1];if(mt)return!0;var St=r[0],kt=r.left,Lt=r.right,Ut=kt[0],qt=kt[1],ie=Lt[0],Zt=Lt[1],_e=(Ut+ie)/2,Le=(qt+Zt)/2,De,Be;if(Zt===qt){if(_e=P)return;if(Ut>ie){if(!St)St=[_e,p];else if(St[1]>=at)return;mt=[_e,at]}else{if(!St)St=[_e,at];else if(St[1]1)if(Ut>ie){if(!St)St=[(p-Be)/De,p];else if(St[1]>=at)return;mt=[(at-Be)/De,at]}else{if(!St)St=[(at-Be)/De,at];else if(St[1]=P)return;mt=[P,De*P+Be]}else{if(!St)St=[P,De*P+Be];else if(St[0]Fo||Math.abs(mt[0][1]-mt[1][1])>Fo))&&delete As[at]}function eO(r){return jl[r.index]={site:r,halfedges:[]}}function nO(r,o){var p=r.site,P=o.left,at=o.right;return p===at&&(at=P,P=p),at?Math.atan2(at[1]-P[1],at[0]-P[0]):(p===P?(P=o[1],at=o[0]):(P=o[0],at=o[1]),Math.atan2(P[0]-at[0],at[1]-P[1]))}function iE(r,o){return o[+(o.left!==r.site)]}function oE(r,o){return o[+(o.left===r.site)]}function aE(){for(var r=0,o=jl.length,p,P,at,mt;rFo||Math.abs(Be-_e)>Fo)&&(Ut.splice(Lt,0,As.push(Ry(kt,Le,Math.abs(De-r)Fo?[r,Math.abs(Zt-r)Fo?[Math.abs(_e-P)Fo?[p,Math.abs(Zt-p)Fo?[Math.abs(_e-o)=-lO)){var _e=Lt*Lt+Ut*Ut,Le=qt*qt+ie*ie,De=(ie*_e-Ut*Le)/Zt,Be=(Lt*Le-qt*_e)/Zt,We=R_.pop()||new iO;We.arc=r,We.site=at,We.x=De+St,We.y=(We.cy=Be+kt)+Math.sqrt(De*De+Be*Be),r.circle=We;for(var cn=null,nn=_g._;nn;)if(We.yFo)kt=kt.L;else if(St=o-sO(kt,p),St>Fo){if(!kt.R){P=kt;break}kt=kt.R}else{mt>-Fo?(P=kt.P,at=kt):St>-Fo?(P=kt,at=kt.N):P=at=kt;break}eO(r);var Lt=uE(r);if(Op.insert(P,Lt),!(!P&&!at)){if(P===at){wg(P),at=uE(P.site),Op.insert(Lt,at),Lt.edge=at.edge=xg(P.site,Lt.site),bg(P),bg(at);return}if(!at){Lt.edge=xg(P.site,Lt.site);return}wg(P),wg(at);var Ut=P.site,qt=Ut[0],ie=Ut[1],Zt=r[0]-qt,_e=r[1]-ie,Le=at.site,De=Le[0]-qt,Be=Le[1]-ie,We=2*(Zt*Be-_e*De),cn=Zt*Zt+_e*_e,nn=De*De+Be*Be,ln=[(Be*cn-_e*nn)/We+qt,(Zt*nn-De*cn)/We+ie];Ly(at.edge,Ut,Le,ln),Lt.edge=xg(Ut,r,null,ln),at.edge=xg(r,Le,null,ln),bg(P),bg(at)}}function Iy(r,o){var p=r.site,P=p[0],at=p[1],mt=at-o;if(!mt)return P;var St=r.P;if(!St)return-1/0;p=St.site;var kt=p[0],Lt=p[1],Ut=Lt-o;if(!Ut)return kt;var qt=kt-P,ie=1/mt-1/Ut,Zt=qt/Ut;return ie?(-Zt+Math.sqrt(Zt*Zt-2*ie*(qt*qt/(-2*Ut)-Lt+Ut/2+at-mt/2)))/ie+P:(P+kt)/2}function sO(r,o){var p=r.N;if(p)return Iy(p,o);var P=r.site;return P[1]===o?P[0]:1/0}var Fo=1e-6,lO=1e-12,Op,jl,_g,As;function uO(r,o,p){return(r[0]-p[0])*(o[1]-r[1])-(r[0]-o[0])*(p[1]-r[1])}function cO(r,o){return o[1]-r[1]||o[0]-r[0]}function j_(r,o){var p=r.sort(cO).pop(),P,at,mt;for(As=[],jl=new Array(r.length),Op=new rE,_g=new rE;;)if(mt=sE,p&&(!mt||p[1]=St)return null;var Lt=r-kt.site[0],Ut=o-kt.site[1],qt=Lt*Lt+Ut*Ut;do kt=P.cells[at=mt],mt=null,kt.halfedges.forEach(function(ie){var Zt=P.edges[ie],_e=Zt.left;if(!((_e===kt.site||!_e)&&!(_e=Zt.right))){var Le=r-_e[0],De=o-_e[1],Be=Le*Le+De*De;BeP?(P+at)/2:Math.min(0,P)||Math.max(0,at),St>mt?(mt+St)/2:Math.min(0,mt)||Math.max(0,St))}function cE(){var r=Tx,o=dO,p=gO,P=pO,at=mO,mt=[0,1/0],St=[[-1/0,-1/0],[1/0,1/0]],kt=250,Lt=_w,Ut=dt("start","zoom","end"),qt,ie,Zt=500,_e=150,Le=0;function De(fn){fn.property("__zoom",B_).on("wheel.zoom",qn).on("mousedown.zoom",Un).on("dblclick.zoom",gr).filter(at).on("touchstart.zoom",ir).on("touchmove.zoom",cr).on("touchend.zoom touchcancel.zoom",er).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}De.transform=function(fn,$n,kr){var Wn=fn.selection?fn.selection():fn;Wn.property("__zoom",B_),fn!==Wn?nn(fn,$n,kr):Wn.interrupt().each(function(){ln(this,arguments).start().zoom(null,typeof $n=="function"?$n.apply(this,arguments):$n).end()})},De.scaleBy=function(fn,$n,kr){De.scaleTo(fn,function(){var Wn=this.__zoom.k,_r=typeof $n=="function"?$n.apply(this,arguments):$n;return Wn*_r},kr)},De.scaleTo=function(fn,$n,kr){De.transform(fn,function(){var Wn=o.apply(this,arguments),_r=this.__zoom,Jr=kr==null?cn(Wn):typeof kr=="function"?kr.apply(this,arguments):kr,$r=_r.invert(Jr),ei=typeof $n=="function"?$n.apply(this,arguments):$n;return p(We(Be(_r,ei),Jr,$r),Wn,St)},kr)},De.translateBy=function(fn,$n,kr){De.transform(fn,function(){return p(this.__zoom.translate(typeof $n=="function"?$n.apply(this,arguments):$n,typeof kr=="function"?kr.apply(this,arguments):kr),o.apply(this,arguments),St)})},De.translateTo=function(fn,$n,kr,Wn){De.transform(fn,function(){var _r=o.apply(this,arguments),Jr=this.__zoom,$r=Wn==null?cn(_r):typeof Wn=="function"?Wn.apply(this,arguments):Wn;return p(jy.translate($r[0],$r[1]).scale(Jr.k).translate(typeof $n=="function"?-$n.apply(this,arguments):-$n,typeof kr=="function"?-kr.apply(this,arguments):-kr),_r,St)},Wn)};function Be(fn,$n){return $n=Math.max(mt[0],Math.min(mt[1],$n)),$n===fn.k?fn:new Lc($n,fn.x,fn.y)}function We(fn,$n,kr){var Wn=$n[0]-kr[0]*fn.k,_r=$n[1]-kr[1]*fn.k;return Wn===fn.x&&_r===fn.y?fn:new Lc(fn.k,Wn,_r)}function cn(fn){return[(+fn[0][0]+ +fn[1][0])/2,(+fn[0][1]+ +fn[1][1])/2]}function nn(fn,$n,kr){fn.on("start.zoom",function(){ln(this,arguments).start()}).on("interrupt.zoom end.zoom",function(){ln(this,arguments).end()}).tween("zoom",function(){var Wn=this,_r=arguments,Jr=ln(Wn,_r),$r=o.apply(Wn,_r),ei=kr==null?cn($r):typeof kr=="function"?kr.apply(Wn,_r):kr,Ni=Math.max($r[1][0]-$r[0][0],$r[1][1]-$r[0][1]),Ti=Wn.__zoom,fo=typeof $n=="function"?$n.apply(Wn,_r):$n,Bo=Lt(Ti.invert(ei).concat(Ni/Ti.k),fo.invert(ei).concat(Ni/fo.k));return function(po){if(po===1)po=fo;else{var Na=Bo(po),uu=Ni/Na[2];po=new Lc(uu,ei[0]-Na[0]*uu,ei[1]-Na[1]*uu)}Jr.zoom(null,po)}})}function ln(fn,$n,kr){return!kr&&fn.__zooming||new Pn(fn,$n)}function Pn(fn,$n){this.that=fn,this.args=$n,this.active=0,this.extent=o.apply(fn,$n),this.taps=0}Pn.prototype={start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(fn,$n){return this.mouse&&fn!=="mouse"&&(this.mouse[1]=$n.invert(this.mouse[0])),this.touch0&&fn!=="touch"&&(this.touch0[1]=$n.invert(this.touch0[0])),this.touch1&&fn!=="touch"&&(this.touch1[1]=$n.invert(this.touch1[0])),this.that.__zoom=$n,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(fn){Vt(new fO(De,fn,this.that.__zoom),Ut.apply,Ut,[fn,this.that,this.args])}};function qn(){if(!r.apply(this,arguments))return;var fn=ln(this,arguments),$n=this.__zoom,kr=Math.max(mt[0],Math.min(mt[1],$n.k*Math.pow(2,P.apply(this,arguments)))),Wn=Or(this);if(fn.wheel)(fn.mouse[0][0]!==Wn[0]||fn.mouse[0][1]!==Wn[1])&&(fn.mouse[1]=$n.invert(fn.mouse[0]=Wn)),clearTimeout(fn.wheel);else{if($n.k===kr)return;fn.mouse=[Wn,$n.invert(Wn)],wu(this),fn.start()}Pp(),fn.wheel=setTimeout(_r,_e),fn.zoom("mouse",p(We(Be($n,kr),fn.mouse[0],fn.mouse[1]),fn.extent,St));function _r(){fn.wheel=null,fn.end()}}function Un(){if(ie||!r.apply(this,arguments))return;var fn=ln(this,arguments,!0),$n=sn(Mr.view).on("mousemove.zoom",Jr,!0).on("mouseup.zoom",$r,!0),kr=Or(this),Wn=Mr.clientX,_r=Mr.clientY;Yn(Mr.view),kx(),fn.mouse=[kr,this.__zoom.invert(kr)],wu(this),fn.start();function Jr(){if(Pp(),!fn.moved){var ei=Mr.clientX-Wn,Ni=Mr.clientY-_r;fn.moved=ei*ei+Ni*Ni>Le}fn.zoom("mouse",p(We(fn.that.__zoom,fn.mouse[0]=Or(fn.that),fn.mouse[1]),fn.extent,St))}function $r(){$n.on("mousemove.zoom mouseup.zoom",null),fr(Mr.view,fn.moved),Pp(),fn.end()}}function gr(){if(r.apply(this,arguments)){var fn=this.__zoom,$n=Or(this),kr=fn.invert($n),Wn=fn.k*(Mr.shiftKey?.5:2),_r=p(We(Be(fn,Wn),$n,kr),o.apply(this,arguments),St);Pp(),kt>0?sn(this).transition().duration(kt).call(nn,_r,$n):sn(this).call(De.transform,_r)}}function ir(){if(r.apply(this,arguments)){var fn=Mr.touches,$n=fn.length,kr=ln(this,arguments,Mr.changedTouches.length===$n),Wn,_r,Jr,$r;for(kx(),_r=0;_r<$n;++_r)Jr=fn[_r],$r=mr(this,fn,Jr.identifier),$r=[$r,this.__zoom.invert($r),Jr.identifier],kr.touch0?!kr.touch1&&kr.touch0[2]!==$r[2]&&(kr.touch1=$r,kr.taps=0):(kr.touch0=$r,Wn=!0,kr.taps=1+!!qt);qt&&(qt=clearTimeout(qt)),Wn&&(kr.taps<2&&(qt=setTimeout(function(){qt=null},Zt)),wu(this),kr.start())}}function cr(){if(this.__zooming){var fn=ln(this,arguments),$n=Mr.changedTouches,kr=$n.length,Wn,_r,Jr,$r;for(Pp(),qt&&(qt=clearTimeout(qt)),fn.taps=0,Wn=0;Wn{"use strict";xt.d(Oe,{V_:()=>F,h1:()=>st,ah:()=>R,Jj:()=>L,yl:()=>Pt,$A:()=>X,rG:()=>q,KS:()=>V,Xx:()=>N,JW:()=>_,T9:()=>u,i2:()=>v,JZ:()=>I,Am:()=>S,jk:()=>b,AS:()=>$,Ny:()=>K,YV:()=>C,y1:()=>H,SQ:()=>ct,k4:()=>et,cz:()=>dt,c3:()=>h,Ft:()=>l,zr:()=>k,lq:()=>Q,sG:()=>W,Zc:()=>it,mg:()=>pt,GV:()=>Y,yU:()=>Mt});function F(w,B){return wB?1:w>=B?0:NaN}function Pt(w){return w.length===1&&(w=d(w)),{left:function(B,tt,nt,x){for(nt==null&&(nt=0),x==null&&(x=B.length);nt>>1;w(B[y],tt)<0?nt=y+1:x=y}return nt},right:function(B,tt,nt,x){for(nt==null&&(nt=0),x==null&&(x=B.length);nt>>1;w(B[y],tt)>0?x=y:nt=y+1}return nt}}}function d(w){return function(B,tt){return F(w(B),tt)}}var g=Pt(F),L=g.right,R=g.left;const st=L;function $(w,B){B==null&&(B=J);for(var tt=0,nt=w.length-1,x=w[0],y=new Array(nt<0?0:nt);ttw?1:B>=w?0:NaN}function Z(w){return w===null?NaN:+w}function Y(w,B){var tt=w.length,nt=0,x=-1,y=0,j,lt,rt=0;if(B==null)for(;++x1)return rt/(nt-1)}function V(w,B){var tt=Y(w,B);return tt&&Math.sqrt(tt)}function N(w,B){var tt=w.length,nt=-1,x,y,j;if(B==null){for(;++nt=x)for(y=j=x;++ntx&&(y=x),j=x)for(y=j=x;++ntx&&(y=x),j0)return[w];if((nt=B0)for(w=Math.ceil(w/lt),B=Math.floor(B/lt),j=new Array(y=Math.ceil(B-w+1));++x=0?(y>=z?10:y>=c?5:y>=D?2:1)*Math.pow(10,x):-Math.pow(10,-x)/(y>=z?10:y>=c?5:y>=D?2:1)}function W(w,B,tt){var nt=Math.abs(B-w)/Math.max(0,tt),x=Math.pow(10,Math.floor(Math.log(nt)/Math.LN10)),y=nt/x;return y>=z?x*=10:y>=c?x*=5:y>=D&&(x*=2),BOt;)At.pop(),--$t;var Xt=new Array($t+1),Ct;for(y=0;y<=$t;++y)Ct=Xt[y]=[],Ct.x0=y>0?At[y-1]:vt,Ct.x1=y<$t?At[y]:Ot;for(y=0;y=1)return+tt(w[nt-1],nt-1,w);var nt,x=(nt-1)*B,y=Math.floor(x),j=+tt(w[y],y,w),lt=+tt(w[y+1],y+1,w);return j+(lt-j)*(x-y)}}function h(w,B,tt){return w=A.call(w,Z).sort(F),Math.ceil((tt-B)/(2*(C(w,.75)-C(w,.25))*Math.pow(w.length,-.3333333333333333)))}function l(w,B,tt){return Math.ceil((tt-B)/(3.5*V(w)*Math.pow(w.length,-.3333333333333333)))}function u(w,B){var tt=w.length,nt=-1,x,y;if(B==null){for(;++nt=x)for(y=x;++nty&&(y=x)}else for(;++nt=x)for(y=x;++nty&&(y=x);return y}function v(w,B){var tt=w.length,nt=tt,x=-1,y,j=0;if(B==null)for(;++x=0;)for(j=w[B],tt=j.length;--tt>=0;)y[--x]=j[tt];return y}function b(w,B){var tt=w.length,nt=-1,x,y;if(B==null){for(;++nt=x)for(y=x;++ntx&&(y=x)}else for(;++nt=x)for(y=x;++ntx&&(y=x);return y}function K(w,B){for(var tt=B.length,nt=new Array(tt);tt--;)nt[tt]=w[B[tt]];return nt}function ct(w,B){if(tt=w.length){var tt,nt=0,x=0,y,j=w[x];for(B==null&&(B=F);++nt=k?W:""+Array(k+1-C.length).join(_)+W},T={s:U,z:function(W){var k=-W.utcOffset(),_=Math.abs(k),C=Math.floor(_/60),h=_%60;return(k<=0?"+":"-")+U(C,2,"0")+":"+U(h,2,"0")},m:function W(k,_){if(k.date()<_.date())return-W(_,k);var C=12*(_.year()-k.year())+(_.month()-k.month()),h=k.clone().add(C,$),l=_-h<0,u=k.clone().add(C+(l?-1:1),$);return+(-(C+(_-h)/(l?h-u:u-h))||0)},a:function(W){return W<0?Math.ceil(W)||0:Math.floor(W)},p:function(W){return{M:$,y:X,w:st,d:R,D:q,h:L,m:g,s:d,ms:Pt,Q:J}[W]||String(W||"").toLowerCase().replace(/s$/,"")},u:function(W){return W===void 0}},A="en",M={};M[A]=N;var O="$isDayjsObject",H=function(W){return W instanceof it||!(!W||!W[O])},z=function W(k,_,C){var h;if(!k)return A;if(typeof k=="string"){var l=k.toLowerCase();M[l]&&(h=l),_&&(M[l]=_,h=l);var u=k.split("-");if(!h&&u.length>1)return W(u[0])}else{var v=k.name;M[v]=k,h=v}return!C&&h&&(A=h),h||!C&&A},c=function(W,k){if(H(W))return W.clone();var _=typeof k=="object"?k:{};return _.date=W,_.args=arguments,new it(_)},D=T;D.l=z,D.i=H,D.w=function(W,k){return c(W,{locale:k.$L,utc:k.$u,x:k.$x,$offset:k.$offset})};var it=function(){function W(_){this.$L=z(_.locale,null,!0),this.parse(_),this.$x=this.$x||_.x||{},this[O]=!0}var k=W.prototype;return k.parse=function(_){this.$d=function(C){var h=C.date,l=C.utc;if(h===null)return new Date(NaN);if(D.u(h))return new Date;if(h instanceof Date)return new Date(h);if(typeof h=="string"&&!/Z$/i.test(h)){var u=h.match(Y);if(u){var v=u[2]-1||0,I=(u[7]||"0").substring(0,3);return l?new Date(Date.UTC(u[1],v,u[3]||1,u[4]||0,u[5]||0,u[6]||0,I)):new Date(u[1],v,u[3]||1,u[4]||0,u[5]||0,u[6]||0,I)}}return new Date(h)}(_),this.init()},k.init=function(){var _=this.$d;this.$y=_.getFullYear(),this.$M=_.getMonth(),this.$D=_.getDate(),this.$W=_.getDay(),this.$H=_.getHours(),this.$m=_.getMinutes(),this.$s=_.getSeconds(),this.$ms=_.getMilliseconds()},k.$utils=function(){return D},k.isValid=function(){return this.$d.toString()!==Z},k.isSame=function(_,C){var h=c(_);return this.startOf(C)<=h&&h<=this.endOf(C)},k.isAfter=function(_,C){return c(_)68?1900:2e3)},st=function(Y){return function(V){this[Y]=+V}},$=[/[+-]\d\d:?(\d\d)?|Z/,function(Y){(this.zone||(this.zone={})).offset=function(V){if(!V||V==="Z")return 0;var N=V.match(/([+-]|\d\d)/g),U=60*N[1]+(+N[2]||0);return U===0?0:N[0]==="+"?-U:U}(Y)}],J=function(Y){var V=L[Y];return V&&(V.indexOf?V:V.s.concat(V.f))},X=function(Y,V){var N,U=L.meridiem;if(U){for(var T=1;T<=24;T+=1)if(Y.indexOf(U(T,0,V))>-1){N=T>12;break}}else N=Y===(V?"pm":"PM");return N},q={A:[g,function(Y){this.afternoon=X(Y,!1)}],a:[g,function(Y){this.afternoon=X(Y,!0)}],Q:[F,function(Y){this.month=3*(Y-1)+1}],S:[F,function(Y){this.milliseconds=100*+Y}],SS:[Pt,function(Y){this.milliseconds=10*+Y}],SSS:[/\d{3}/,function(Y){this.milliseconds=+Y}],s:[d,st("seconds")],ss:[d,st("seconds")],m:[d,st("minutes")],mm:[d,st("minutes")],H:[d,st("hours")],h:[d,st("hours")],HH:[d,st("hours")],hh:[d,st("hours")],D:[d,st("day")],DD:[Pt,st("day")],Do:[g,function(Y){var V=L.ordinal,N=Y.match(/\d+/);if(this.day=N[0],V)for(var U=1;U<=31;U+=1)V(U).replace(/\[|\]/g,"")===Y&&(this.day=U)}],w:[d,st("week")],ww:[Pt,st("week")],M:[d,st("month")],MM:[Pt,st("month")],MMM:[g,function(Y){var V=J("months"),N=(J("monthsShort")||V.map(function(U){return U.slice(0,3)})).indexOf(Y)+1;if(N<1)throw new Error;this.month=N%12||N}],MMMM:[g,function(Y){var V=J("months").indexOf(Y)+1;if(V<1)throw new Error;this.month=V%12||V}],Y:[/[+-]?\d+/,st("year")],YY:[Pt,function(Y){this.year=R(Y)}],YYYY:[/\d{4}/,st("year")],Z:$,ZZ:$};function Z(Y){var V,N;V=Y,N=L&&L.formats;for(var U=(Y=V.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(c,D,it){var Q=it&&it.toUpperCase();return D||N[it]||Oe[it]||N[Q].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(W,k,_){return k||_.slice(1)})})).match(xt),T=U.length,A=0;A-1)return new Date((h==="X"?1e3:1)*C);var v=Z(h)(C),I=v.year,S=v.month,b=v.day,K=v.hours,ct=v.minutes,et=v.seconds,dt=v.milliseconds,pt=v.zone,bt=v.week,Mt=new Date,w=b||(I||S?1:Mt.getDate()),B=I||Mt.getFullYear(),tt=0;I&&!S||(tt=S>0?S-1:Mt.getMonth());var nt,x=K||0,y=ct||0,j=et||0,lt=dt||0;return pt?new Date(Date.UTC(B,tt,w,x,y,j,lt+60*pt.offset*1e3)):l?new Date(Date.UTC(B,tt,w,x,y,j,lt)):(nt=new Date(B,tt,w,x,y,j,lt),bt&&(nt=u(nt).week(bt).toDate()),nt)}catch(rt){return new Date("")}}(M,z,O,N),this.init(),Q&&Q!==!0&&(this.$L=this.locale(Q).$L),it&&M!=this.format(z)&&(this.$d=new Date("")),L={}}else if(z instanceof Array)for(var W=z.length,k=1;k<=W;k+=1){H[1]=z[k-1];var _=N.apply(this,H);if(_.isValid()){this.$d=_.$d,this.$L=_.$L,this.init();break}k===W&&(this.$d=new Date(""))}else T.call(this,A)}}})},9050:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";return function(Oe,xt,F){xt.prototype.isBetween=function(Pt,d,g,L){var R=F(Pt),st=F(d),$=(L=L||"()")[0]==="(",J=L[1]===")";return($?this.isAfter(R,g):!this.isBefore(R,g))&&(J?this.isBefore(st,g):!this.isAfter(st,g))||($?this.isBefore(R,g):!this.isAfter(R,g))&&(J?this.isAfter(st,g):!this.isBefore(st,g))}}})},2976:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(xt,F,Pt){var d=F.prototype,g=d.format;Pt.en.formats=Oe,d.format=function(L){L===void 0&&(L="YYYY-MM-DDTHH:mm:ssZ");var R=this.$locale().formats,st=function($,J){return $.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(X,q,Z){var Y=Z&&Z.toUpperCase();return q||J[Z]||Oe[Z]||J[Y].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(V,N,U){return N||U.slice(1)})})}(L,R===void 0?{}:R);return g.call(this,st)}}})},1398:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe="month",xt="quarter";return function(F,Pt){var d=Pt.prototype;d.quarter=function(R){return this.$utils().u(R)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(R-1))};var g=d.add;d.add=function(R,st){return R=Number(R),this.$utils().p(st)===xt?this.add(3*R,Oe):g.bind(this)(R,st)};var L=d.startOf;d.startOf=function(R,st){var $=this.$utils(),J=!!$.u(st)||st;if($.p(R)===xt){var X=this.quarter()-1;return J?this.month(3*X).startOf(Oe).startOf("day"):this.month(3*X+2).endOf(Oe).endOf("day")}return L.bind(this)(R,st)}}})},4843:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe={year:0,month:1,day:2,hour:3,minute:4,second:5},xt={};return function(F,Pt,d){var g,L=function(J,X,q){q===void 0&&(q={});var Z=new Date(J),Y=function(V,N){N===void 0&&(N={});var U=N.timeZoneName||"short",T=V+"|"+U,A=xt[T];return A||(A=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:V,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:U}),xt[T]=A),A}(X,q);return Y.formatToParts(Z)},R=function(J,X){for(var q=L(J,X),Z=[],Y=0;Y=0&&(Z[T]=parseInt(U,10))}var A=Z[3],M=A===24?0:A,O=Z[0]+"-"+Z[1]+"-"+Z[2]+" "+M+":"+Z[4]+":"+Z[5]+":000",H=+J;return(d.utc(O).valueOf()-(H-=H%1e3))/6e4},st=Pt.prototype;st.tz=function(J,X){J===void 0&&(J=g);var q,Z=this.utcOffset(),Y=this.toDate(),V=Y.toLocaleString("en-US",{timeZone:J}),N=Math.round((Y-new Date(V))/1e3/60),U=15*-Math.round(Y.getTimezoneOffset()/15)-N;if(!Number(U))q=this.utcOffset(0,X);else if(q=d(V,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(U,!0),X){var T=q.utcOffset();q=q.add(Z-T,"minute")}return q.$x.$timezone=J,q},st.offsetName=function(J){var X=this.$x.$timezone||d.tz.guess(),q=L(this.valueOf(),X,{timeZoneName:J}).find(function(Z){return Z.type.toLowerCase()==="timezonename"});return q&&q.value};var $=st.startOf;st.startOf=function(J,X){if(!this.$x||!this.$x.$timezone)return $.call(this,J,X);var q=d(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return $.call(q,J,X).tz(this.$x.$timezone,!0)},d.tz=function(J,X,q){var Z=q&&X,Y=q||X||g,V=R(+d(),Y);if(typeof J!="string")return d(J).tz(Y);var N=function(M,O,H){var z=M-60*O*1e3,c=R(z,H);if(O===c)return[z,O];var D=R(z-=60*(c-O)*1e3,H);return c===D?[z,c]:[M-60*Math.min(c,D)*1e3,Math.max(c,D)]}(d.utc(J,Z).valueOf(),V,Y),U=N[0],T=N[1],A=d(U).utcOffset(T);return A.$x.$timezone=Y,A},d.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},d.tz.setDefault=function(J){g=J}}})},4112:function(yr){(function(Oe,xt){yr.exports=xt()})(this,function(){"use strict";var Oe="minute",xt=/[+-]\d\d(?::?\d\d)?/g,F=/([+-]|\d\d)/g;return function(Pt,d,g){var L=d.prototype;g.utc=function(Z){var Y={date:Z,utc:!0,args:arguments};return new d(Y)},L.utc=function(Z){var Y=g(this.toDate(),{locale:this.$L,utc:!0});return Z?Y.add(this.utcOffset(),Oe):Y},L.local=function(){return g(this.toDate(),{locale:this.$L,utc:!1})};var R=L.parse;L.parse=function(Z){Z.utc&&(this.$u=!0),this.$utils().u(Z.$offset)||(this.$offset=Z.$offset),R.call(this,Z)};var st=L.init;L.init=function(){if(this.$u){var Z=this.$d;this.$y=Z.getUTCFullYear(),this.$M=Z.getUTCMonth(),this.$D=Z.getUTCDate(),this.$W=Z.getUTCDay(),this.$H=Z.getUTCHours(),this.$m=Z.getUTCMinutes(),this.$s=Z.getUTCSeconds(),this.$ms=Z.getUTCMilliseconds()}else st.call(this)};var $=L.utcOffset;L.utcOffset=function(Z,Y){var V=this.$utils().u;if(V(Z))return this.$u?0:V(this.$offset)?$.call(this):this.$offset;if(typeof Z=="string"&&(Z=function(A){A===void 0&&(A="");var M=A.match(xt);if(!M)return null;var O=(""+M[0]).match(F)||["-",0,0],H=O[0],z=60*+O[1]+ +O[2];return z===0?0:H==="+"?z:-z}(Z),Z===null))return this;var N=Math.abs(Z)<=16?60*Z:Z,U=this;if(Y)return U.$offset=N,U.$u=Z===0,U;if(Z!==0){var T=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(U=this.local().add(N+T,Oe)).$offset=N,U.$x.$localOffset=T}else U=this.utc();return U};var J=L.format;L.format=function(Z){var Y=Z||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return J.call(this,Y)},L.valueOf=function(){var Z=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*Z},L.isUTC=function(){return!!this.$u},L.toISOString=function(){return this.toDate().toISOString()},L.toString=function(){return this.toDate().toUTCString()};var X=L.toDate;L.toDate=function(Z){return Z==="s"&&this.$offset?g(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():X.call(this)};var q=L.diff;L.diff=function(Z,Y,V){if(Z&&this.$u===Z.$u)return q.call(this,Z,Y,V);var N=this.local(),U=g(Z).local();return q.call(N,U,Y,V)}}})},2713:(yr,Oe,xt)=>{var F;/*! Copyright (c) 2015 Jed Watson. Based on code that is Copyright 2013-2015, Facebook, Inc. All rights reserved. -*/(function(){"use strict";var Pt=!!(typeof window!="undefined"&&window.document&&window.document.createElement),d={canUseDOM:Pt,canUseWorkers:typeof Worker!="undefined",canUseEventListeners:Pt&&!!(window.addEventListener||window.attachEvent),canUseViewport:Pt&&!!window.screen};j=function(){return d}.call(Oe,xt,Oe,yr),j!==void 0&&(yr.exports=j)})()},5215:yr=>{"use strict";yr.exports=function Oe(xt,j){if(xt===j)return!0;if(xt&&j&&typeof xt=="object"&&typeof j=="object"){if(xt.constructor!==j.constructor)return!1;var Pt,d,g;if(Array.isArray(xt)){if(Pt=xt.length,Pt!=j.length)return!1;for(d=Pt;d--!==0;)if(!Oe(xt[d],j[d]))return!1;return!0}if(xt.constructor===RegExp)return xt.source===j.source&&xt.flags===j.flags;if(xt.valueOf!==Object.prototype.valueOf)return xt.valueOf()===j.valueOf();if(xt.toString!==Object.prototype.toString)return xt.toString()===j.toString();if(g=Object.keys(xt),Pt=g.length,Pt!==Object.keys(j).length)return!1;for(d=Pt;d--!==0;)if(!Object.prototype.hasOwnProperty.call(j,g[d]))return!1;for(d=Pt;d--!==0;){var L=g[d];if(!Oe(xt[L],j[L]))return!1}return!0}return xt!==xt&&j!==j}},6193:function(yr,Oe,xt){var j;(function(Pt,d){yr.exports?(d.default=d,yr.exports=Pt&&Pt.document?d(Pt):d):(j=function(){return d(Pt)}.call(Oe,xt,Oe,yr),j!==void 0&&(yr.exports=j))})(typeof window!="undefined"?window:this,function(Pt){"use strict";var d={};function g(L,R,st,$){!L.hasOwnProperty(R)&&(L[R]=$.apply(null,st),Pt&&typeof CustomEvent=="function"&&Pt.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:R,module:L[R]}})))}return g(d,"Core/Globals.js",[],function(){var L,R;return(R=L||(L={})).SVG_NS="http://www.w3.org/2000/svg",R.product="Highcharts",R.version="11.4.8",R.win=Pt!==void 0?Pt:{},R.doc=R.win.document,R.svg=R.doc&&R.doc.createElementNS&&!!R.doc.createElementNS(R.SVG_NS,"svg").createSVGRect,R.userAgent=R.win.navigator&&R.win.navigator.userAgent||"",R.isChrome=R.win.chrome,R.isFirefox=R.userAgent.indexOf("Firefox")!==-1,R.isMS=/(edge|msie|trident)/i.test(R.userAgent)&&!R.win.opera,R.isSafari=!R.isChrome&&R.userAgent.indexOf("Safari")!==-1,R.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(R.userAgent),R.isWebKit=R.userAgent.indexOf("AppleWebKit")!==-1,R.deg2rad=2*Math.PI/360,R.hasBidiBug=R.isFirefox&&4>parseInt(R.userAgent.split("Firefox/")[1],10),R.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],R.noop=function(){},R.supportsPassiveEvents=function(){let st=!1;if(!R.isMS){let $=Object.defineProperty({},"passive",{get:function(){st=!0}});R.win.addEventListener&&R.win.removeEventListener&&(R.win.addEventListener("testPassive",R.noop,$),R.win.removeEventListener("testPassive",R.noop,$))}return st}(),R.charts=[],R.composed=[],R.dateFormats={},R.seriesTypes={},R.symbolSizes={},R.chartCount=0,L}),g(d,"Core/Utilities.js",[d["Core/Globals.js"]],function(L){let R,{charts:st,doc:$,win:J}=L;function X(h,l,u,v){let I=l?"Highcharts error":"Highcharts warning";h===32&&(h=`${I}: Deprecated member`);let S=T(h),b=S?`${I} #${h}: www.highcharts.com/errors/${h}/`:h.toString();if(v!==void 0){let K="";S&&(b+="?"),W(v,function(ct,et){K+=` - - ${et}: ${ct}`,S&&(b+=encodeURI(et)+"="+encodeURI(ct))}),b+=K}_(L,"displayError",{chart:u,code:h,message:b,params:v},function(){if(l)throw Error(b);J.console&&X.messages.indexOf(b)===-1&&console.warn(b)}),X.messages.push(b)}function q(h,l){return parseInt(h,l||10)}function Z(h){return typeof h=="string"}function Y(h){let l=Object.prototype.toString.call(h);return l==="[object Array]"||l==="[object Array Iterator]"}function V(h,l){return!!h&&typeof h=="object"&&(!l||!Y(h))}function N(h){return V(h)&&typeof h.nodeType=="number"}function U(h){let l=h&&h.constructor;return!!(V(h,!0)&&!N(h)&&l&&l.name&&l.name!=="Object")}function T(h){return typeof h=="number"&&!isNaN(h)&&h<1/0&&h>-1/0}function A(h){return h!=null}function M(h,l,u){let v,I=Z(l)&&!A(u),S=(b,K)=>{A(b)?h.setAttribute(K,b):I?(v=h.getAttribute(K))||K!=="class"||(v=h.getAttribute(K+"Name")):h.removeAttribute(K)};return Z(l)?S(u,l):W(l,S),v}function O(h){return Y(h)?h:[h]}function H(h,l){let u;for(u in h||(h={}),l)h[u]=l[u];return h}function z(){let h=arguments,l=h.length;for(let u=0;u1e14?h:parseFloat(h.toPrecision(l||14))}(X||(X={})).messages=[],Math.easeInOutSine=function(h){return-.5*(Math.cos(Math.PI*h)-1)};let Q=Array.prototype.find?function(h,l){return h.find(l)}:function(h,l){let u,v=h.length;for(u=0;uK.order-ct.order),I.forEach(K=>{K.fn.call(h,u)===!1&&u.preventDefault()})}v&&!u.defaultPrevented&&v.call(h,u)}W({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(h,l){L[l]=function(u){return X(32,!1,void 0,{[`Highcharts.${l}`]:`use Array.${h}`}),Array.prototype[h].apply(u,[].slice.call(arguments,1))}});let C=function(){let h=Math.random().toString(36).substring(2,9)+"-",l=0;return function(){return"highcharts-"+(R?"":h)+l++}}();return J.jQuery&&(J.jQuery.fn.highcharts=function(){let h=[].slice.call(arguments);if(this[0])return h[0]?(new L[Z(h[0])?h.shift():"Chart"](this[0],h[0],h[1]),this):st[M(this[0],"data-highcharts-chart")]}),{addEvent:function(h,l,u,v={}){let I=typeof h=="function"&&h.prototype||h;Object.hasOwnProperty.call(I,"hcEvents")||(I.hcEvents={});let S=I.hcEvents;L.Point&&h instanceof L.Point&&h.series&&h.series.chart&&(h.series.chart.runTrackerClick=!0);let b=h.addEventListener;b&&b.call(h,l,u,!!L.supportsPassiveEvents&&{passive:v.passive===void 0?l.indexOf("touch")!==-1:v.passive,capture:!1}),S[l]||(S[l]=[]);let K={fn:u,order:typeof v.order=="number"?v.order:1/0};return S[l].push(K),S[l].sort((ct,et)=>ct.order-et.order),function(){k(h,l,u)}},arrayMax:function(h){let l=h.length,u=h[0];for(;l--;)h[l]>u&&(u=h[l]);return u},arrayMin:function(h){let l=h.length,u=h[0];for(;l--;)h[l]l?h{let v=l%2/2,I=u?-1:1;return(Math.round(h*I-v)+v)*I},css:c,defined:A,destroyObjectProperties:function(h,l,u){W(h,function(v,I){v!==l&&(v!=null&&v.destroy)&&v.destroy(),(v!=null&&v.destroy||!u)&&delete h[I]})},diffObjects:function(h,l,u,v){let I={};return function S(b,K,ct,et){let dt=u?K:b;W(b,function(pt,bt){if(!et&&v&&v.indexOf(bt)>-1&&K[bt]){pt=O(pt),ct[bt]=[];for(let Mt=0;Mt{if(K.length>1)for(S=v=K.length-1;S>0;S--)(I=K[S]-K[S-1])<0&&!b?(l==null||l(),l=void 0):I&&(u===void 0||I=b-1&&(b=Math.floor(K)),Math.max(0,b-(h(l,"padding-left",!0)||0)-(h(l,"padding-right",!0)||0))}if(u==="height")return Math.max(0,Math.min(l.offsetHeight,l.scrollHeight)-(h(l,"padding-top",!0)||0)-(h(l,"padding-bottom",!0)||0));let S=J.getComputedStyle(l,void 0);return S&&(I=S.getPropertyValue(u),z(v,u!=="opacity")&&(I=q(I))),I},inArray:function(h,l,u){return X(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),l.indexOf(h,u)},insertItem:function(h,l){let u,v=h.options.index,I=l.length;for(u=h.options.isInternal?I:0;u=h))&&(I||!(K<=(l[S]+(l[S+1]||l[S]))/2)));S++);return it(b*u,-Math.round(Math.log(.001)/Math.LN10))},objectEach:W,offset:function(h){let l=$.documentElement,u=h.parentElement||h.parentNode?h.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:u.top+(J.pageYOffset||l.scrollTop)-(l.clientTop||0),left:u.left+(J.pageXOffset||l.scrollLeft)-(l.clientLeft||0),width:u.width,height:u.height}},pad:function(h,l,u){return Array((l||2)+1-String(h).replace("-","").length).join(u||"0")+h},pick:z,pInt:q,pushUnique:function(h,l){return 0>h.indexOf(l)&&!!h.push(l)},relativeLength:function(h,l,u){return/%$/.test(h)?l*parseFloat(h)/100+(u||0):parseFloat(h)},removeEvent:k,replaceNested:function(h,...l){let u,v;do for(v of(u=h,l))h=h.replace(v[0],v[1]);while(h!==u);return h},splat:O,stableSort:function(h,l){let u,v,I=h.length;for(v=0;v0?setTimeout(h,l,u):(h.call(0,u),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:C,useSerialIds:function(h){return R=z(h,R)},wrap:function(h,l,u){let v=h[l];h[l]=function(){let I=arguments,S=this;return u.apply(this,[function(){return v.apply(S,arguments.length?arguments:I)}].concat([].slice.call(arguments)))}}}}),g(d,"Core/Chart/ChartDefaults.js",[],function(){return{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{},position:{}},reflow:!0,type:"line",zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#334eff",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"}}),g(d,"Core/Color/Palettes.js",[],function(){return{colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]}}),g(d,"Core/Time.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{win:st}=L,{defined:$,error:J,extend:X,isNumber:q,isObject:Z,merge:Y,objectEach:V,pad:N,pick:U,splat:T,timeUnits:A}=R,M=L.isSafari&&st.Intl&&st.Intl.DateTimeFormat.prototype.formatRange,O=L.isSafari&&st.Intl&&!st.Intl.DateTimeFormat.prototype.formatRange;class H{constructor(c){this.options={},this.useUTC=!1,this.variableTimezone=!1,this.Date=st.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(c)}get(c,D){if(this.variableTimezone||this.timezoneOffset){let it=D.getTime(),Q=it-this.getTimezoneOffset(D);D.setTime(Q);let W=D["getUTC"+c]();return D.setTime(it),W}return this.useUTC?D["getUTC"+c]():D["get"+c]()}set(c,D,it){if(this.variableTimezone||this.timezoneOffset){if(c==="Milliseconds"||c==="Seconds"||c==="Minutes"&&this.getTimezoneOffset(D)%36e5==0)return D["setUTC"+c](it);let Q=this.getTimezoneOffset(D),W=D.getTime()-Q;D.setTime(W),D["setUTC"+c](it);let k=this.getTimezoneOffset(D);return W=D.getTime()+k,D.setTime(W)}return this.useUTC||M&&c==="FullYear"?D["setUTC"+c](it):D["set"+c](it)}update(c={}){let D=U(c.useUTC,!0);this.options=c=Y(!0,this.options,c),this.Date=c.Date||st.Date||Date,this.useUTC=D,this.timezoneOffset=D&&c.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=D&&!!(c.getTimezoneOffset||c.timezone)}makeTime(c,D,it,Q,W,k){let _,C,h;return this.useUTC?(_=this.Date.UTC.apply(0,arguments),C=this.getTimezoneOffset(_),_+=C,C!==(h=this.getTimezoneOffset(_))?_+=h-C:C-36e5!==this.getTimezoneOffset(_-36e5)||O||(_-=36e5)):_=new this.Date(c,D,U(it,1),U(Q,0),U(W,0),U(k,0)).getTime(),_}timezoneOffsetFunction(){let c=this,D=this.options,it=D.getTimezoneOffset;return this.useUTC?D.timezone?Q=>{try{let W=`shortOffset,${D.timezone||""}`,[k,_,C,h,l=0]=(H.formatCache[W]=H.formatCache[W]||Intl.DateTimeFormat("en",{timeZone:D.timezone,timeZoneName:"shortOffset"})).format(Q).split(/(GMT|:)/).map(Number),u=-(36e5*(C+l/60));if(q(u))return u}catch(W){J(34)}return 0}:this.useUTC&&it?Q=>6e4*it(Q.valueOf()):()=>6e4*(c.timezoneOffset||0):Q=>6e4*new Date(Q.toString()).getTimezoneOffset()}dateFormat(c,D,it){if(!$(D)||isNaN(D))return L.defaultOptions.lang&&L.defaultOptions.lang.invalidDate||"";c=U(c,"%Y-%m-%d %H:%M:%S");let Q=this,W=new this.Date(D),k=this.get("Hours",W),_=this.get("Day",W),C=this.get("Date",W),h=this.get("Month",W),l=this.get("FullYear",W),u=L.defaultOptions.lang,v=u&&u.weekdays,I=u&&u.shortWeekdays;return V(X({a:I?I[_]:v[_].substr(0,3),A:v[_],d:N(C),e:N(C,2," "),w:_,b:u.shortMonths[h],B:u.months[h],m:N(h+1),o:h+1,y:l.toString().substr(2,2),Y:l,H:N(k),k,I:N(k%12||12),l:k%12||12,M:N(this.get("Minutes",W)),p:k<12?"AM":"PM",P:k<12?"am":"pm",S:N(this.get("Seconds",W)),L:N(Math.floor(D%1e3),3)},L.dateFormats),function(S,b){for(;c.indexOf("%"+b)!==-1;)c=c.replace("%"+b,typeof S=="function"?S.call(Q,D):S)}),it?c.substr(0,1).toUpperCase()+c.substr(1):c}resolveDTLFormat(c){return Z(c,!0)?c:{main:(c=T(c))[0],from:c[1],to:c[2]}}getTimeTicks(c,D,it,Q){let W,k,_,C,h=this,l=h.Date,u=[],v={},I=new l(D),S=c.unitRange,b=c.count||1;if(Q=U(Q,1),$(D)){h.set("Milliseconds",I,S>=A.second?0:b*Math.floor(h.get("Milliseconds",I)/b)),S>=A.second&&h.set("Seconds",I,S>=A.minute?0:b*Math.floor(h.get("Seconds",I)/b)),S>=A.minute&&h.set("Minutes",I,S>=A.hour?0:b*Math.floor(h.get("Minutes",I)/b)),S>=A.hour&&h.set("Hours",I,S>=A.day?0:b*Math.floor(h.get("Hours",I)/b)),S>=A.day&&h.set("Date",I,S>=A.month?1:Math.max(1,b*Math.floor(h.get("Date",I)/b))),S>=A.month&&(h.set("Month",I,S>=A.year?0:b*Math.floor(h.get("Month",I)/b)),k=h.get("FullYear",I)),S>=A.year&&(k-=k%b,h.set("FullYear",I,k)),S===A.week&&(C=h.get("Day",I),h.set("Date",I,h.get("Date",I)-C+Q+(C4*A.month||h.getTimezoneOffset(D)!==h.getTimezoneOffset(it));let dt=I.getTime();for(W=1;dt1?dt=h.makeTime(k,K,ct,et+W*b):dt+=S*b,W++;u.push(dt),S<=A.hour&&u.length<1e4&&u.forEach(function(pt){pt%18e5==0&&h.dateFormat("%H%M%S%L",pt)==="000000000"&&(v[pt]="day")})}return u.info=X(c,{higherRanks:v,totalRange:S*b}),u}getDateFormat(c,D,it,Q){let W=this.dateFormat("%m-%d %H:%M:%S.%L",D),k="01-01 00:00:00.000",_={millisecond:15,second:12,minute:9,hour:6,day:3},C="millisecond",h=C;for(C in A){if(c===A.week&&+this.dateFormat("%w",D)===it&&W.substr(6)===k.substr(6)){C="week";break}if(A[C]>c){C=h;break}if(_[C]&&W.substr(_[C])!==k.substr(_[C]))break;C!=="week"&&(h=C)}return this.resolveDTLFormat(Q[C]).main}}return H.formatCache={},H}),g(d,"Core/Defaults.js",[d["Core/Chart/ChartDefaults.js"],d["Core/Globals.js"],d["Core/Color/Palettes.js"],d["Core/Time.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{isTouchDevice:X}=R,{fireEvent:q,merge:Z}=J,Y={colors:st.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalPoint:".",numericSymbols:["k","M","G","T","P","E"],resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{buttonTheme:{fill:"#f7f7f7",padding:8,r:2,stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},states:{hover:{fill:"#e6e6e6"},select:{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},disabled:{style:{color:"#cccccc"}}}}},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:L,title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:"",align:"center",widthAdjust:-44},caption:{margin:15,style:{color:"#666666",fontSize:"0.8em"},text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",events:{},layout:"horizontal",itemMarginBottom:2,itemMarginTop:2,labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{style:{fontSize:"0.8em"},activeColor:"#0022ff",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"0.8em",textDecoration:"none",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#666666",textDecoration:"line-through"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontSize:"0.8em",fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:{duration:300,easing:N=>Math.sqrt(1-Math.pow(N-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %e %b, %H:%M:%S.%L",second:"%A, %e %b, %H:%M:%S",minute:"%A, %e %b, %H:%M",hour:"%A, %e %b, %H:%M",day:"%A, %e %b %Y",week:"Week from %A, %e %b %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:X?25:10,headerFormat:'{point.key}
',pointFormat:'\u25CF {series.name}: {point.y}
',backgroundColor:"#ffffff",borderWidth:void 0,shadow:!0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"0.8em"},useHTML:!1},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"0.6em"},text:"Highcharts.com"}};Y.chart.styledMode=!1;let V=new $(Y.time);return{defaultOptions:Y,defaultTime:V,getOptions:function(){return Y},setOptions:function(N){return q(R,"setOptions",{options:N}),Z(!0,Y,N),(N.time||N.global)&&(R.time?R.time.update(Z(Y.global,Y.time,N.global,N.time)):R.time=V),Y}}}),g(d,"Core/Color/Color.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{isNumber:st,merge:$,pInt:J}=R;class X{static parse(Z){return Z?new X(Z):X.None}constructor(Z){let Y,V,N,U;this.rgba=[NaN,NaN,NaN,NaN],this.input=Z;let T=L.Color;if(T&&T!==X)return new T(Z);if(typeof Z=="object"&&Z.stops!==void 0)this.stops=Z.stops.map(A=>new X(A[1]));else if(typeof Z=="string"){if(this.input=Z=X.names[Z.toLowerCase()]||Z,Z.charAt(0)==="#"){let A=Z.length,M=parseInt(Z.substr(1),16);A===7?V=[(16711680&M)>>16,(65280&M)>>8,255&M,1]:A===4&&(V=[(3840&M)>>4|(3840&M)>>8,(240&M)>>4|240&M,(15&M)<<4|15&M,1])}if(!V)for(N=X.parsers.length;N--&&!V;)(Y=(U=X.parsers[N]).regex.exec(Z))&&(V=U.parse(Y))}V&&(this.rgba=V)}get(Z){let Y=this.input,V=this.rgba;if(typeof Y=="object"&&this.stops!==void 0){let N=$(Y);return N.stops=[].slice.call(N.stops),this.stops.forEach((U,T)=>{N.stops[T]=[N.stops[T][0],U.get(Z)]}),N}return V&&st(V[0])?Z!=="rgb"&&(Z||V[3]!==1)?Z==="a"?`${V[3]}`:"rgba("+V.join(",")+")":"rgb("+V[0]+","+V[1]+","+V[2]+")":Y}brighten(Z){let Y=this.rgba;if(this.stops)this.stops.forEach(function(V){V.brighten(Z)});else if(st(Z)&&Z!==0)for(let V=0;V<3;V++)Y[V]+=J(255*Z),Y[V]<0&&(Y[V]=0),Y[V]>255&&(Y[V]=255);return this}setOpacity(Z){return this.rgba[3]=Z,this}tweenTo(Z,Y){let V=this.rgba,N=Z.rgba;if(!st(V[0])||!st(N[0]))return Z.input||"none";let U=N[3]!==1||V[3]!==1;return(U?"rgba(":"rgb(")+Math.round(N[0]+(V[0]-N[0])*(1-Y))+","+Math.round(N[1]+(V[1]-N[1])*(1-Y))+","+Math.round(N[2]+(V[2]-N[2])*(1-Y))+(U?","+(N[3]+(V[3]-N[3])*(1-Y)):"")+")"}}return X.names={white:"#ffffff",black:"#000000"},X.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),parseFloat(q[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),1]}}],X.None=new X(""),X}),g(d,"Core/Animation/Fx.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{parse:$}=L,{win:J}=R,{isNumber:X,objectEach:q}=st;class Z{constructor(V,N,U){this.pos=NaN,this.options=N,this.elem=V,this.prop=U}dSetter(){let V=this.paths,N=V&&V[0],U=V&&V[1],T=this.now||0,A=[];if(T!==1&&N&&U)if(N.length===U.length&&T<1)for(let M=0;M=H+this.startTime?(this.now=this.end,this.pos=1,this.update(),z[this.prop]=!0,U=!0,q(z,function(c){c!==!0&&(U=!1)}),U&&O&&O.call(M),N=!1):(this.pos=A.easing((T-this.startTime)/H),this.now=this.start+(this.end-this.start)*this.pos,this.update(),N=!0),N}initPath(V,N,U){let T=V.startX,A=V.endX,M=U.slice(),O=V.isArea,H=O?2:1,z=N&&U.length>N.length&&U.hasStackedCliffs,c,D,it,Q,W=N&&N.slice();if(!W||z)return[M,M];function k(C,h){for(;C.length{let it=N(D.options.animation);z=q(A)&&st(A.defer)?O.defer:Math.max(z,it.duration+it.defer),c=Math.min(O.duration,it.duration)}),T.renderer.forExport&&(z=0),{defer:Math.max(0,z-c),duration:Math.min(z,c)}},setAnimation:function(T,A){A.renderer.globalAnimation=V(T,A.options.chart.animation,!0)},stop:U}}),g(d,"Core/Renderer/HTML/AST.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{SVG_NS:st,win:$}=L,{attr:J,createElement:X,css:q,error:Z,isFunction:Y,isString:V,objectEach:N,splat:U}=R,{trustedTypes:T}=$,A=T&&Y(T.createPolicy)&&T.createPolicy("highcharts",{createHTML:z=>z}),M=A?A.createHTML(""):"",O=function(){try{return!!new DOMParser().parseFromString(M,"text/html")}catch(z){return!1}}();class H{static filterUserAttributes(c){return N(c,(D,it)=>{let Q=!0;H.allowedAttributes.indexOf(it)===-1&&(Q=!1),["background","dynsrc","href","lowsrc","src"].indexOf(it)!==-1&&(Q=V(D)&&H.allowedReferences.some(W=>D.indexOf(W)===0)),Q||(Z(33,!1,void 0,{"Invalid attribute in config":`${it}`}),delete c[it]),V(D)&&c[it]&&(c[it]=D.replace(/{let Q=it.split(":").map(k=>k.trim()),W=Q.shift();return W&&Q.length&&(D[W.replace(/-([a-z])/g,k=>k[1].toUpperCase())]=Q.join(":")),D},{})}static setElementHTML(c,D){c.innerHTML=H.emptyHTML,D&&new H(D).addToDOM(c)}constructor(c){this.nodes=typeof c=="string"?this.parseMarkup(c):c}addToDOM(c){return function D(it,Q){let W;return U(it).forEach(function(k){let _,C=k.tagName,h=k.textContent?L.doc.createTextNode(k.textContent):void 0,l=H.bypassHTMLFiltering;if(C)if(C==="#text")_=h;else if(H.allowedTags.indexOf(C)!==-1||l){let u=C==="svg"?st:Q.namespaceURI||st,v=L.doc.createElementNS(u,C),I=k.attributes||{};N(k,function(S,b){b!=="tagName"&&b!=="attributes"&&b!=="children"&&b!=="style"&&b!=="textContent"&&(I[b]=S)}),J(v,l?I:H.filterUserAttributes(I)),k.style&&q(v,k.style),h&&v.appendChild(h),D(k.children||[],v),_=v}else Z(33,!1,void 0,{"Invalid tagName in config":C});_&&Q.appendChild(_),W=_}),W}(this.nodes,c)}parseMarkup(c){let D,it=[];if(c=c.trim().replace(/ style=(["'])/g," data-style=$1"),O)D=new DOMParser().parseFromString(A?A.createHTML(c):c,"text/html");else{let W=X("div");W.innerHTML=c,D={body:W}}let Q=(W,k)=>{let _=W.nodeName.toLowerCase(),C={tagName:_};_==="#text"&&(C.textContent=W.textContent||"");let h=W.attributes;if(h){let l={};[].forEach.call(h,u=>{u.name==="data-style"?C.style=H.parseStyle(u.value):l[u.name]=u.value}),C.attributes=l}if(W.childNodes.length){let l=[];[].forEach.call(W.childNodes,u=>{Q(u,l)}),l.length&&(C.children=l)}k.push(C)};return[].forEach.call(D.body.childNodes,W=>Q(W,it)),it}}return H.allowedAttributes=["alt","aria-controls","aria-describedby","aria-expanded","aria-haspopup","aria-hidden","aria-label","aria-labelledby","aria-live","aria-pressed","aria-readonly","aria-roledescription","aria-selected","class","clip-path","color","colspan","cx","cy","d","dx","dy","disabled","fill","filterUnits","flood-color","flood-opacity","height","href","id","in","in2","markerHeight","markerWidth","offset","opacity","operator","orient","padding","paddingLeft","paddingRight","patternUnits","r","radius","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],H.allowedReferences=["https://","http://","mailto:","/","../","./","#"],H.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feComposite","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMorphology","feOffset","feMerge","feMergeNode","filter","h1","h2","h3","h4","h5","h6","hr","i","img","li","linearGradient","marker","ol","p","path","pattern","pre","rect","small","span","stop","strong","style","sub","sup","svg","table","text","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],H.emptyHTML=M,H.bypassHTMLFiltering=!1,H}),g(d,"Core/Templating.js",[d["Core/Defaults.js"],d["Core/Utilities.js"]],function(L,R){let{defaultOptions:st,defaultTime:$}=L,{extend:J,getNestedProperty:X,isArray:q,isNumber:Z,isObject:Y,pick:V,pInt:N}=R,U={add:(M,O)=>M+O,divide:(M,O)=>O!==0?M/O:"",eq:(M,O)=>M==O,each:function(M){let O=arguments[arguments.length-1];return!!q(M)&&M.map((H,z)=>T(O.body,J(Y(H)?H:{"@this":H},{"@index":z,"@first":z===0,"@last":z===M.length-1}))).join("")},ge:(M,O)=>M>=O,gt:(M,O)=>M>O,if:M=>!!M,le:(M,O)=>M<=O,lt:(M,O)=>MM*O,ne:(M,O)=>M!=O,subtract:(M,O)=>M-O,unless:M=>!M};function T(M="",O,H){let z=/\{([\w\:\.\,;\-\/<>%@"'’= #\(\)]+)\}/g,c=/\(([\w\:\.\,;\-\/<>%@"'= ]+)\)/g,D=[],it=/f$/,Q=/\.(\d)/,W=st.lang,k=H&&H.time||$,_=H&&H.numberFormatter||A,C=(I="")=>{let S;return I==="true"||I!=="false"&&((S=Number(I)).toString()===I?S:X(I,O))},h,l,u=0,v;for(;(h=z.exec(M))!==null;){let I=c.exec(h[1]);I&&(h=I,v=!0),l&&l.isBlock||(l={ctx:O,expression:h[1],find:h[0],isBlock:h[1].charAt(0)==="#",start:h.index,startInner:h.index+h[0].length,length:h[0].length});let S=h[1].split(" ")[0].replace("#","");U[S]&&(l.isBlock&&S===l.fn&&u++,l.fn||(l.fn=S));let b=h[1]==="else";if(l.isBlock&&l.fn&&(h[1]===`/${l.fn}`||b))if(u)!b&&u--;else{let K=l.startInner,ct=M.substr(K,h.index-K);l.body===void 0?(l.body=ct,l.startInner=h.index+h[0].length):l.elseBody=ct,l.find+=ct+h[0],b||(D.push(l),l=void 0)}else l.isBlock||D.push(l);if(I&&!(l!=null&&l.isBlock))break}return D.forEach(I=>{let S,b,{body:K,elseBody:ct,expression:et,fn:dt}=I;if(dt){let pt=[I],bt=et.split(" ");for(b=U[dt].length;b--;)pt.unshift(C(bt[b+1]));S=U[dt].apply(O,pt),I.isBlock&&typeof S=="boolean"&&(S=T(S?K:ct,O,H))}else{let pt=et.split(":");if(S=C(pt.shift()||""),pt.length&&typeof S=="number"){let bt=pt.join(":");if(it.test(bt)){let Mt=parseInt((bt.match(Q)||["","-1"])[1],10);S!==null&&(S=_(S,Mt,W.decimalPoint,bt.indexOf(",")>-1?W.thousandsSep:""))}else S=k.dateFormat(bt,S)}}M=M.replace(I.find,V(S,""))}),v?T(M,O,H):M}function A(M,O,H,z){let c,D;M=+M||0,O=+O;let it=st.lang,Q=(M.toString().split(".")[1]||"").split("e")[0].length,W=M.toString().split("e"),k=O;O===-1?O=Math.min(Q,20):Z(O)?O&&W[1]&&W[1]<0&&((D=O+ +W[1])>=0?(W[0]=(+W[0]).toExponential(D).split("e")[0],O=D):(W[0]=W[0].split(".")[0]||0,M=O<20?(W[0]*Math.pow(10,W[1])).toFixed(O):0,W[1]=0)):O=2;let _=(Math.abs(W[1]?W[0]:M)+Math.pow(10,-Math.max(O,Q)-1)).toFixed(O),C=String(N(_)),h=C.length>3?C.length%3:0;return H=V(H,it.decimalPoint),z=V(z,it.thousandsSep),c=(M<0?"-":"")+(h?C.substr(0,h)+z:""),0>+W[1]&&!k?c="0":c+=C.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+z),O?c+=H+_.slice(-O):+c==0&&(c="0"),W[1]&&+c!=0&&(c+="e"+W[1]),c}return{dateFormat:function(M,O,H){return $.dateFormat(M,O,H)},format:T,helpers:U,numberFormat:A}}),g(d,"Core/Renderer/RendererRegistry.js",[d["Core/Globals.js"]],function(L){var R,st;let $;return(st=R||(R={})).rendererTypes={},st.getRendererType=function(J=$){return st.rendererTypes[J]||st.rendererTypes[$]},st.registerRendererType=function(J,X,q){st.rendererTypes[J]=X,(!$||q)&&($=J,L.Renderer=X)},R}),g(d,"Core/Renderer/RendererUtilities.js",[d["Core/Utilities.js"]],function(L){var R;let{clamp:st,pick:$,pushUnique:J,stableSort:X}=L;return(R||(R={})).distribute=function q(Z,Y,V){let N=Z,U=N.reducedLen||Y,T=(C,h)=>C.target-h.target,A=[],M=Z.length,O=[],H=A.push,z,c,D,it=!0,Q,W,k=0,_;for(z=M;z--;)k+=Z[z].size;if(k>U){for(X(Z,(C,h)=>(h.rank||0)-(C.rank||0)),D=(_=Z[0].rank===Z[Z.length-1].rank)?M/2:-1,c=_?D:M-1;D&&k>U;)Q=Z[z=Math.floor(c)],J(O,z)&&(k-=Q.size),c+=D,_&&c>=Z.length&&(D/=2,c=D);O.sort((C,h)=>h-C).forEach(C=>H.apply(A,Z.splice(C,1)))}for(X(Z,T),Z=Z.map(C=>({size:C.size,targets:[C.target],align:$(C.align,.5)}));it;){for(z=Z.length;z--;)Q=Z[z],W=(Math.min.apply(0,Q.targets)+Math.max.apply(0,Q.targets))/2,Q.pos=st(W-Q.size*Q.align,0,Y-Q.size);for(z=Z.length,it=!1;z--;)z>0&&Z[z-1].pos+Z[z-1].size>Z[z].pos&&(Z[z-1].size+=Z[z].size,Z[z-1].targets=Z[z-1].targets.concat(Z[z].targets),Z[z-1].align=.5,Z[z-1].pos+Z[z-1].size>Y&&(Z[z-1].pos=Y-Z[z-1].size),Z.splice(z,1),it=!0)}return H.apply(N,A),z=0,Z.some(C=>{let h=0;return(C.targets||[]).some(()=>(N[z].pos=C.pos+h,V!==void 0&&Math.abs(N[z].pos-N[z].target)>V?(N.slice(0,z+1).forEach(l=>delete l.pos),N.reducedLen=(N.reducedLen||Y)-.1*Y,N.reducedLen>.1*Y&&q(N,Y,V),!0):(h+=N[z].size,z++,!1)))}),X(N,T),N},R}),g(d,"Core/Renderer/SVG/SVGElement.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{animate:J,animObject:X,stop:q}=L,{deg2rad:Z,doc:Y,svg:V,SVG_NS:N,win:U}=st,{addEvent:T,attr:A,createElement:M,crisp:O,css:H,defined:z,erase:c,extend:D,fireEvent:it,isArray:Q,isFunction:W,isObject:k,isString:_,merge:C,objectEach:h,pick:l,pInt:u,pushUnique:v,replaceNested:I,syncTimeout:S,uniqueKey:b}=$;class K{_defaultGetter(et){let dt=l(this[et+"Value"],this[et],this.element?this.element.getAttribute(et):null,0);return/^-?[\d\.]+$/.test(dt)&&(dt=parseFloat(dt)),dt}_defaultSetter(et,dt,pt){pt.setAttribute(dt,et)}add(et){let dt,pt=this.renderer,bt=this.element;return et&&(this.parentGroup=et),this.textStr!==void 0&&this.element.nodeName==="text"&&pt.buildText(this),this.added=!0,(!et||et.handleZ||this.zIndex)&&(dt=this.zIndexSetter()),dt||(et?et.element:pt.box).appendChild(bt),this.onAdd&&this.onAdd(),this}addClass(et,dt){let pt=dt?"":this.attr("class")||"";return(et=(et||"").split(/ /g).reduce(function(bt,Mt){return pt.indexOf(Mt)===-1&&bt.push(Mt),bt},pt?[pt]:[]).join(" "))!==pt&&this.attr("class",et),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(et,dt,pt,bt=!0){let Mt,w,B,tt,nt={},x=this.renderer,y=x.alignedObjects,F=!!et;et?(this.alignOptions=et,this.alignByTranslate=dt,this.alignTo=pt):(et=this.alignOptions||{},dt=this.alignByTranslate,pt=this.alignTo);let lt=!pt||_(pt)?pt||"renderer":void 0;lt&&(F&&v(y,this),pt=void 0);let rt=l(pt,x[lt],x),gt=et.align,vt=et.verticalAlign;return Mt=(rt.x||0)+(et.x||0),w=(rt.y||0)+(et.y||0),gt==="right"?B=1:gt==="center"&&(B=2),B&&(Mt+=((rt.width||0)-(et.width||0))/B),nt[dt?"translateX":"x"]=Math.round(Mt),vt==="bottom"?tt=1:vt==="middle"&&(tt=2),tt&&(w+=((rt.height||0)-(et.height||0))/tt),nt[dt?"translateY":"y"]=Math.round(w),bt&&(this[this.placed?"animate":"attr"](nt),this.placed=!0),this.alignAttr=nt,this}alignSetter(et){let dt={left:"start",center:"middle",right:"end"};dt[et]&&(this.alignValue=et,this.element.setAttribute("text-anchor",dt[et]))}animate(et,dt,pt){let bt=X(l(dt,this.renderer.globalAnimation,!0)),Mt=bt.defer;return Y.hidden&&(bt.duration=0),bt.duration!==0?(pt&&(bt.complete=pt),S(()=>{this.element&&J(this,et,bt)},Mt)):(this.attr(et,void 0,pt||bt.complete),h(et,function(w,B){bt.step&&bt.step.call(this,w,{prop:B,pos:1,elem:this})},this)),this}applyTextOutline(et){let dt=this.element;et.indexOf("contrast")!==-1&&(et=et.replace(/contrast/g,this.renderer.getContrast(dt.style.fill)));let pt=et.split(" "),bt=pt[pt.length-1],Mt=pt[0];if(Mt&&Mt!=="none"&&st.svg){this.fakeTS=!0,Mt=Mt.replace(/(^[\d\.]+)(.*?)$/g,function(x,y,F){return 2*Number(y)+F}),this.removeTextOutline();let w=Y.createElementNS(N,"tspan");A(w,{class:"highcharts-text-outline",fill:bt,stroke:bt,"stroke-width":Mt,"stroke-linejoin":"round"});let B=dt.querySelector("textPath")||dt;[].forEach.call(B.childNodes,x=>{let y=x.cloneNode(!0);y.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(F=>y.removeAttribute(F)),w.appendChild(y)});let tt=0;[].forEach.call(B.querySelectorAll("text tspan"),x=>{tt+=Number(x.getAttribute("dy"))});let nt=Y.createElementNS(N,"tspan");nt.textContent="\u200B",A(nt,{x:Number(dt.getAttribute("x")),dy:-tt}),w.appendChild(nt),B.insertBefore(w,B.firstChild)}}attr(et,dt,pt,bt){let{element:Mt}=this,w=K.symbolCustomAttribs,B,tt,nt=this,x;return typeof et=="string"&&dt!==void 0&&(B=et,(et={})[B]=dt),typeof et=="string"?nt=(this[et+"Getter"]||this._defaultGetter).call(this,et,Mt):(h(et,function(y,F){x=!1,bt||q(this,F),this.symbolName&&w.indexOf(F)!==-1&&(tt||(this.symbolAttr(et),tt=!0),x=!0),this.rotation&&(F==="x"||F==="y")&&(this.doTransform=!0),x||(this[F+"Setter"]||this._defaultSetter).call(this,y,F,Mt)},this),this.afterSetters()),pt&&pt.call(this),nt}clip(et){if(et&&!et.clipPath){let dt=b()+"-",pt=this.renderer.createElement("clipPath").attr({id:dt}).add(this.renderer.defs);D(et,{clipPath:pt,id:dt,count:0}),et.add(pt)}return this.attr("clip-path",et?`url(${this.renderer.url}#${et.id})`:"none")}crisp(et,dt){dt=Math.round(dt||et.strokeWidth||0);let pt=et.x||this.x||0,bt=et.y||this.y||0,Mt=(et.width||this.width||0)+pt,w=(et.height||this.height||0)+bt,B=O(pt,dt),tt=O(bt,dt);return D(et,{x:B,y:tt,width:O(Mt,dt)-B,height:O(w,dt)-tt}),z(et.strokeWidth)&&(et.strokeWidth=dt),et}complexColor(et,dt,pt){let bt=this.renderer,Mt,w,B,tt,nt,x,y,F,lt,rt,gt=[],vt;it(this.renderer,"complexColor",{args:arguments},function(){if(et.radialGradient?w="radialGradient":et.linearGradient&&(w="linearGradient"),w){if(B=et[w],nt=bt.gradients,x=et.stops,lt=pt.radialReference,Q(B)&&(et[w]=B={x1:B[0],y1:B[1],x2:B[2],y2:B[3],gradientUnits:"userSpaceOnUse"}),w==="radialGradient"&<&&!z(B.gradientUnits)&&(tt=B,B=C(B,bt.getRadialAttr(lt,tt),{gradientUnits:"userSpaceOnUse"})),h(B,function(Ot,At){At!=="id"&>.push(At,Ot)}),h(x,function(Ot){gt.push(Ot)}),nt[gt=gt.join(",")])rt=nt[gt].attr("id");else{B.id=rt=b();let Ot=nt[gt]=bt.createElement(w).attr(B).add(bt.defs);Ot.radAttr=tt,Ot.stops=[],x.forEach(function(At){At[1].indexOf("rgba")===0?(y=(Mt=R.parse(At[1])).get("rgb"),F=Mt.get("a")):(y=At[1],F=1);let $t=bt.createElement("stop").attr({offset:At[0],"stop-color":y,"stop-opacity":F}).add(Ot);Ot.stops.push($t)})}vt="url("+bt.url+"#"+rt+")",pt.setAttribute(dt,vt),pt.gradient=gt,et.toString=function(){return vt}}})}css(et){let dt=this.styles,pt={},bt=this.element,Mt,w=!dt;if(dt&&h(et,function(B,tt){dt&&dt[tt]!==B&&(pt[tt]=B,w=!0)}),w){dt&&(et=D(dt,pt)),et.width===null||et.width==="auto"?delete this.textWidth:bt.nodeName.toLowerCase()==="text"&&et.width&&(Mt=this.textWidth=u(et.width)),D(this.styles,et),Mt&&!V&&this.renderer.forExport&&delete et.width;let B=C(et);bt.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","width"].forEach(tt=>B&&delete B[tt]),B.color&&(B.fill=B.color)),H(bt,B)}return this.added&&(this.element.nodeName==="text"&&this.renderer.buildText(this),et.textOutline&&this.applyTextOutline(et.textOutline)),this}dashstyleSetter(et){let dt,pt=this["stroke-width"];if(pt==="inherit"&&(pt=1),et=et&&et.toLowerCase()){let bt=et.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(dt=bt.length;dt--;)bt[dt]=""+u(bt[dt])*l(pt,NaN);et=bt.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",et)}}destroy(){var tt;let et=this,dt=et.element||{},pt=et.renderer,bt=dt.ownerSVGElement,Mt=dt.nodeName==="SPAN"&&et.parentGroup||void 0,w,B;if(dt.onclick=dt.onmouseout=dt.onmouseover=dt.onmousemove=dt.point=null,q(et),et.clipPath&&bt){let nt=et.clipPath;[].forEach.call(bt.querySelectorAll("[clip-path],[CLIP-PATH]"),function(x){x.getAttribute("clip-path").indexOf(nt.element.id)>-1&&x.removeAttribute("clip-path")}),et.clipPath=nt.destroy()}if(et.connector=(tt=et.connector)==null?void 0:tt.destroy(),et.stops){for(B=0;BMt&&Mt.join?(w?bt+" ":"")+Mt.join(" "):(Mt||"").toString(),"")),/(NaN| {2}|^$)/.test(et)&&(et="M 0 0"),this[dt]!==et&&(pt.setAttribute(dt,et),this[dt]=et)}fillSetter(et,dt,pt){typeof et=="string"?pt.setAttribute(dt,et):et&&this.complexColor(et,dt,pt)}hrefSetter(et,dt,pt){pt.setAttributeNS("http://www.w3.org/1999/xlink",dt,et)}getBBox(et,dt){let pt,bt,Mt,w,{alignValue:B,element:tt,renderer:nt,styles:x,textStr:y}=this,{cache:F,cacheKeys:lt}=nt,rt=tt.namespaceURI===this.SVG_NS,gt=l(dt,this.rotation,0),vt=nt.styledMode?tt&&K.prototype.getStyle.call(tt,"font-size"):x.fontSize;if(z(y)&&((w=y.toString()).indexOf("<")===-1&&(w=w.replace(/\d/g,"0")),w+=["",nt.rootFontSize,vt,gt,this.textWidth,B,x.textOverflow,x.fontWeight].join(",")),w&&!et&&(pt=F[w]),!pt||pt.polygon){if(rt||nt.forExport){try{Mt=this.fakeTS&&function(At){let $t=tt.querySelector(".highcharts-text-outline");$t&&H($t,{display:At})},W(Mt)&&Mt("none"),pt=tt.getBBox?D({},tt.getBBox()):{width:tt.offsetWidth,height:tt.offsetHeight,x:0,y:0},W(Mt)&&Mt("")}catch(At){}(!pt||pt.width<0)&&(pt={x:0,y:0,width:0,height:0})}else pt=this.htmlGetBBox();bt=pt.height,rt&&(pt.height=bt={"11px,17":14,"13px,20":16}[`${vt||""},${Math.round(bt)}`]||bt),gt&&(pt=this.getRotatedBox(pt,gt));let Ot={bBox:pt};it(this,"afterGetBBox",Ot),pt=Ot.bBox}if(w&&(y===""||pt.height>0)){for(;lt.length>250;)delete F[lt.shift()];F[w]||lt.push(w),F[w]=pt}return pt}getRotatedBox(et,dt){let{x:pt,y:bt,width:Mt,height:w}=et,{alignValue:B,translateY:tt,rotationOriginX:nt=0,rotationOriginY:x=0}=this,y={right:1,center:.5}[B||0]||0,F=Number(this.element.getAttribute("y")||0)-(tt?0:bt),lt=dt*Z,rt=(dt-90)*Z,gt=Math.cos(lt),vt=Math.sin(lt),Ot=Mt*gt,At=Mt*vt,$t=Math.cos(rt),Xt=Math.sin(rt),[[Ct,wt],[Dt,jt]]=[nt,x].map(Jt=>[Jt-Jt*gt,Jt*vt]),re=pt+y*(Mt-Ot)+Ct+jt+F*$t,le=re+Ot,Gt=le-w*$t,he=Gt-Ot,ve=bt+F-y*At-wt+Dt+F*Xt,Ce=ve+At,Te=Ce-w*Xt,Ke=Te-At,rn=Math.min(re,le,Gt,he),un=Math.min(ve,Ce,Te,Ke),Qt=Math.max(re,le,Gt,he)-rn,Kt=Math.max(ve,Ce,Te,Ke)-un;return{x:rn,y:un,width:Qt,height:Kt,polygon:[[re,ve],[le,Ce],[Gt,Te],[he,Ke]]}}getStyle(et){return U.getComputedStyle(this.element||this,"").getPropertyValue(et)}hasClass(et){return(""+this.attr("class")).split(" ").indexOf(et)!==-1}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(et,dt){this.onEvents={},this.opacity=1,this.SVG_NS=N,this.element=dt==="span"||dt==="body"?M(dt):Y.createElementNS(this.SVG_NS,dt),this.renderer=et,this.styles={},it(this,"afterInit")}on(et,dt){let{onEvents:pt}=this;return pt[et]&&pt[et](),pt[et]=T(this.element,et,dt),this}opacitySetter(et,dt,pt){let bt=Number(Number(et).toFixed(3));this.opacity=bt,pt.setAttribute(dt,bt)}reAlign(){var et;(et=this.alignOptions)!=null&&et.width&&this.alignOptions.align!=="left"&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(et){return this.attr("class",(""+this.attr("class")).replace(_(et)?RegExp(`(^| )${et}( |$)`):et," ").replace(/ +/g," ").trim())}removeTextOutline(){let et=this.element.querySelector("tspan.highcharts-text-outline");et&&this.safeRemoveChild(et)}safeRemoveChild(et){let dt=et.parentNode;dt&&dt.removeChild(et)}setRadialReference(et){let dt=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=et,dt&&dt.radAttr&&dt.animate(this.renderer.getRadialAttr(et,dt.radAttr)),this}shadow(et){var Mt;let{renderer:dt}=this,pt=C(((Mt=this.parentGroup)==null?void 0:Mt.rotation)===90?{offsetX:-1,offsetY:-1}:{},k(et)?et:{}),bt=dt.shadowDefinition(pt);return this.attr({filter:et?`url(${dt.url}#${bt})`:"none"})}show(et=!0){return this.attr({visibility:et?"inherit":"visible"})}"stroke-widthSetter"(et,dt,pt){this[dt]=et,pt.setAttribute(dt,et)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let et=this.getStyle("stroke-width"),dt=0,pt;return/px$/.test(et)?dt=u(et):et!==""&&(A(pt=Y.createElementNS(N,"rect"),{width:et,"stroke-width":0}),this.element.parentNode.appendChild(pt),dt=pt.getBBox().width,pt.parentNode.removeChild(pt)),dt}symbolAttr(et){let dt=this;K.symbolCustomAttribs.forEach(function(pt){dt[pt]=l(et[pt],dt[pt])}),dt.attr({d:dt.renderer.symbols[dt.symbolName](dt.x,dt.y,dt.width,dt.height,dt)})}textSetter(et){et!==this.textStr&&(delete this.textPxLength,this.textStr=et,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(et){let dt=this.element,pt=dt.getElementsByTagName("title")[0]||Y.createElementNS(this.SVG_NS,"title");dt.insertBefore?dt.insertBefore(pt,dt.firstChild):dt.appendChild(pt),pt.textContent=I(l(et,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let et=this.element;return et.parentNode.appendChild(et),this}translate(et,dt){return this.attr({translateX:et,translateY:dt})}updateTransform(et="transform"){var F;let{element:dt,matrix:pt,rotation:bt=0,rotationOriginX:Mt,rotationOriginY:w,scaleX:B,scaleY:tt,translateX:nt=0,translateY:x=0}=this,y=["translate("+nt+","+x+")"];z(pt)&&y.push("matrix("+pt.join(",")+")"),bt&&(y.push("rotate("+bt+" "+l(Mt,dt.getAttribute("x"),0)+" "+l(w,dt.getAttribute("y")||0)+")"),((F=this.text)==null?void 0:F.element.tagName)==="SPAN"&&this.text.attr({rotation:bt,rotationOriginX:(Mt||0)-this.padding,rotationOriginY:(w||0)-this.padding})),(z(B)||z(tt))&&y.push("scale("+l(B,1)+" "+l(tt,1)+")"),y.length&&!(this.text||this).textPath&&dt.setAttribute(et,y.join(" "))}visibilitySetter(et,dt,pt){et==="inherit"?pt.removeAttribute(dt):this[dt]!==et&&pt.setAttribute(dt,et),this[dt]=et}xGetter(et){return this.element.nodeName==="circle"&&(et==="x"?et="cx":et==="y"&&(et="cy")),this._defaultGetter(et)}zIndexSetter(et,dt){let pt=this.renderer,bt=this.parentGroup,Mt=(bt||pt).element||pt.box,w=this.element,B=Mt===pt.box,tt,nt,x,y=!1,F,lt=this.added,rt;if(z(et)?(w.setAttribute("data-z-index",et),et=+et,this[dt]===et&&(lt=!1)):z(this[dt])&&w.removeAttribute("data-z-index"),this[dt]=et,lt){for((et=this.zIndex)&&bt&&(bt.handleZ=!0),rt=(tt=Mt.childNodes).length-1;rt>=0&&!y;rt--)F=!z(x=(nt=tt[rt]).getAttribute("data-z-index")),nt!==w&&(et<0&&F&&!B&&!rt?(Mt.insertBefore(w,tt[rt]),y=!0):(u(x)<=et||F&&(!z(et)||et>=0))&&(Mt.insertBefore(w,tt[rt+1]),y=!0));y||(Mt.insertBefore(w,tt[B?3:0]),y=!0)}return y}}return K.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],K.prototype.strokeSetter=K.prototype.fillSetter,K.prototype.yGetter=K.prototype.xGetter,K.prototype.matrixSetter=K.prototype.rotationOriginXSetter=K.prototype.rotationOriginYSetter=K.prototype.rotationSetter=K.prototype.scaleXSetter=K.prototype.scaleYSetter=K.prototype.translateXSetter=K.prototype.translateYSetter=K.prototype.verticalAlignSetter=function(ct,et){this[et]=ct,this.doTransform=!0},K}),g(d,"Core/Renderer/SVG/SVGLabel.js",[d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R){let{defined:st,extend:$,isNumber:J,merge:X,pick:q,removeEvent:Z}=R;class Y extends L{constructor(N,U,T,A,M,O,H,z,c,D){let it;super(N,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=U,this.x=T,this.y=A,this.anchorX=O,this.anchorY=H,this.baseline=c,this.className=D,this.addClass(D==="button"?"highcharts-no-tooltip":"highcharts-label"),D&&this.addClass("highcharts-"+D),this.text=N.text(void 0,0,0,z).attr({zIndex:1}),typeof M=="string"&&((it=/^url\((.*?)\)$/.test(M))||this.renderer.symbols[M])&&(this.symbolKey=M),this.bBox=Y.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=N.styledMode||it,this.deferredAttr={},this.alignFactor=0}alignSetter(N){let U={left:0,center:.5,right:1}[N];U!==this.alignFactor&&(this.alignFactor=U,this.bBox&&J(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(N,U){this.anchorX=N,this.boxAttr(U,Math.round(N)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(N,U){this.anchorY=N,this.boxAttr(U,N-this.ySetting)}boxAttr(N,U){this.box?this.box.attr(N,U):this.deferredAttr[N]=U}css(N){if(N){let U={};N=X(N),Y.textProps.forEach(T=>{N[T]!==void 0&&(U[T]=N[T],delete N[T])}),this.text.css(U),"fontSize"in U||"fontWeight"in U?this.updateTextPadding():("width"in U||"textOverflow"in U)&&this.updateBoxSize()}return L.prototype.css.call(this,N)}destroy(){Z(this.element,"mouseenter"),Z(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),L.prototype.destroy.call(this)}fillSetter(N,U){N&&(this.needsBox=!0),this.fill=N,this.boxAttr(U,N)}getBBox(N,U){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:T,height:A=0,translateX:M=0,translateY:O=0,width:H=0}=this,z=q(this.paddingLeft,T),c=U!=null?U:this.rotation||0,D={width:H,height:A,x:M+this.bBox.x-z,y:O+this.bBox.y-T+this.baselineOffset};return c&&(D=this.getRotatedBox(D,c)),D}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(N){this.heightSetting=N,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:q(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&st(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(N,U){J(N)?N!==this[U]&&(this[U]=N,this.updateTextPadding()):this[U]=void 0}rSetter(N,U){this.boxAttr(U,N)}strokeSetter(N,U){this.stroke=N,this.boxAttr(U,N)}"stroke-widthSetter"(N,U){N&&(this.needsBox=!0),this["stroke-width"]=N,this.boxAttr(U,N)}"text-alignSetter"(N){this.textAlign=N}textSetter(N){N!==void 0&&this.text.attr({text:N}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let N,U=this.text,T={},A=this.padding,M=this.bBox=(!J(this.widthSetting)||!J(this.heightSetting)||this.textAlign)&&st(U.textStr)?U.getBBox(void 0,0):Y.emptyBBox;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||M.height||0)+2*A;let O=this.renderer.fontMetrics(U);if(this.baselineOffset=A+Math.min((this.text.firstLineMetrics||O).b,M.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-O.h)/2),this.needsBox&&!U.textPath){if(!this.box){let H=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();H.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),H.add(this)}N=this.getCrispAdjust(),T.x=N,T.y=(this.baseline?-this.baselineOffset:0)+N,T.width=Math.round(this.width),T.height=Math.round(this.height),this.box.attr($(T,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let N=this.text;if(!N.textPath){this.updateBoxSize();let U=this.baseline?0:this.baselineOffset,T=q(this.paddingLeft,this.padding);st(this.widthSetting)&&this.bBox&&(this.textAlign==="center"||this.textAlign==="right")&&(T+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(T!==N.x||U!==N.y)&&(N.attr("x",T),N.hasBoxWidthChanged&&(this.bBox=N.getBBox(!0)),U!==void 0&&N.attr("y",U)),N.x=T,N.y=U}}widthSetter(N){this.widthSetting=J(N)?N:void 0,this.doUpdate=!0}getPaddedWidth(){let N=this.padding,U=q(this.paddingLeft,N),T=q(this.paddingRight,N);return(this.widthSetting||this.bBox.width||0)+U+T}xSetter(N){this.x=N,this.alignFactor&&(N-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(N),this.attr("translateX",this.xSetting)}ySetter(N){this.ySetting=this.y=Math.round(N),this.attr("translateY",this.ySetting)}}return Y.emptyBBox={width:0,height:0,x:0,y:0},Y.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],Y}),g(d,"Core/Renderer/SVG/Symbols.js",[d["Core/Utilities.js"]],function(L){let{defined:R,isNumber:st,pick:$}=L;function J(Z,Y,V,N,U){let T=[];if(U){let A=U.start||0,M=$(U.r,V),O=$(U.r,N||V),H=2e-4/(U.borderRadius?1:Math.max(M,1)),z=Math.abs((U.end||0)-A-2*Math.PI)0&&O0)return H;if(Z+M>V-A)if(O>Y+A&&OY+A&&O0){let z=ON&&MA&&H.splice(1,1,["L",M-6,Y],["L",M,Y-6],["L",M+6,Y],["L",V-T,Y]);return H},circle:function(Z,Y,V,N){return J(Z+V/2,Y+N/2,V/2,N/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N/2],["L",Z+V/2,Y+N],["L",Z,Y+N/2],["Z"]]},rect:X,roundedRect:q,square:X,triangle:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N],["L",Z,Y+N],["Z"]]},"triangle-down":function(Z,Y,V,N){return[["M",Z,Y],["L",Z+V,Y],["L",Z+V/2,Y+N],["Z"]]}}}),g(d,"Core/Renderer/SVG/TextBuilder.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{doc:$,SVG_NS:J,win:X}=R,{attr:q,extend:Z,fireEvent:Y,isString:V,objectEach:N,pick:U}=st;return class{constructor(T){let A=T.styles;this.renderer=T.renderer,this.svgElement=T,this.width=T.textWidth,this.textLineHeight=A&&A.lineHeight,this.textOutline=A&&A.textOutline,this.ellipsis=!!(A&&A.textOverflow==="ellipsis"),this.noWrap=!!(A&&A.whiteSpace==="nowrap")}buildSVG(){let T=this.svgElement,A=T.element,M=T.renderer,O=U(T.textStr,"").toString(),H=O.indexOf("<")!==-1,z=A.childNodes,c=!T.added&&M.box,D=[O,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,T.getStyle("font-size"),this.width].join(",");if(D!==T.textCache){T.textCache=D,delete T.actualWidth;for(let it=z.length;it--;)A.removeChild(z[it]);if(H||this.ellipsis||this.width||T.textPath||O.indexOf(" ")!==-1&&(!this.noWrap||//g.test(O))){if(O!==""){c&&c.appendChild(A);let it=new L(O);this.modifyTree(it.nodes),it.addToDOM(A),this.modifyDOM(),this.ellipsis&&(A.textContent||"").indexOf("\u2026")!==-1&&T.attr("title",this.unescapeEntities(T.textStr||"",["<",">"])),c&&c.removeChild(A)}}else A.appendChild($.createTextNode(this.unescapeEntities(O)));V(this.textOutline)&&T.applyTextOutline&&T.applyTextOutline(this.textOutline)}}modifyDOM(){let T,A=this.svgElement,M=q(A.element,"x");for(A.firstLineMetrics=void 0;(T=A.element.firstChild)&&/^[\s\u200B]*$/.test(T.textContent||" ");)A.element.removeChild(T);[].forEach.call(A.element.querySelectorAll("tspan.highcharts-br"),(c,D)=>{c.nextSibling&&c.previousSibling&&(D===0&&c.previousSibling.nodeType===1&&(A.firstLineMetrics=A.renderer.fontMetrics(c.previousSibling)),q(c,{dy:this.getLineHeight(c.nextSibling),x:M}))});let O=this.width||0;if(!O)return;let H=(c,D)=>{let it=c.textContent||"",Q=it.replace(/([^\^])-/g,"$1- ").split(" "),W=!this.noWrap&&(Q.length>1||A.element.childNodes.length>1),k=this.getLineHeight(D),_=0,C=A.actualWidth;if(this.ellipsis)it&&this.truncate(c,it,void 0,0,Math.max(0,O-.8*k),(h,l)=>h.substring(0,l)+"\u2026");else if(W){let h=[],l=[];for(;D.firstChild&&D.firstChild!==c;)l.push(D.firstChild),D.removeChild(D.firstChild);for(;Q.length;)Q.length&&!this.noWrap&&_>0&&(h.push(c.textContent||""),c.textContent=Q.join(" ").replace(/- /g,"-")),this.truncate(c,void 0,Q,_===0&&C||0,O,(u,v)=>Q.slice(0,v).join(" ").replace(/- /g,"-")),C=A.actualWidth,_++;l.forEach(u=>{D.insertBefore(u,c)}),h.forEach(u=>{D.insertBefore($.createTextNode(u),c);let v=$.createElementNS(J,"tspan");v.textContent="\u200B",q(v,{dy:k,x:M}),D.insertBefore(v,c)})}},z=c=>{[].slice.call(c.childNodes).forEach(D=>{D.nodeType===X.Node.TEXT_NODE?H(D,c):(D.className.baseVal.indexOf("highcharts-br")!==-1&&(A.actualWidth=0),z(D))})};z(A.element)}getLineHeight(T){let A=T.nodeType===X.Node.TEXT_NODE?T.parentElement:T;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(A||this.svgElement.element).h}modifyTree(T){let A=(M,O)=>{let{attributes:H={},children:z,style:c={},tagName:D}=M,it=this.renderer.styledMode;if(D==="b"||D==="strong"?it?H.class="highcharts-strong":c.fontWeight="bold":(D==="i"||D==="em")&&(it?H.class="highcharts-emphasized":c.fontStyle="italic"),c&&c.color&&(c.fill=c.color),D==="br"){H.class="highcharts-br",M.textContent="\u200B";let Q=T[O+1];Q&&Q.textContent&&(Q.textContent=Q.textContent.replace(/^ +/gm,""))}else D==="a"&&z&&z.some(Q=>Q.tagName==="#text")&&(M.children=[{children:z,tagName:"tspan"}]);D!=="#text"&&D!=="a"&&(M.tagName="tspan"),Z(M,{attributes:H,style:c}),z&&z.filter(Q=>Q.tagName!=="#text").forEach(A)};T.forEach(A),Y(this.svgElement,"afterModifyTree",{nodes:T})}truncate(T,A,M,O,H,z){let c,D,it=this.svgElement,{rotation:Q}=it,W=[],k=M?1:0,_=(A||M||"").length,C=_,h=function(l,u){let v=u||l,I=T.parentNode;if(I&&W[v]===void 0&&I.getSubStringLength)try{W[v]=O+I.getSubStringLength(0,M?v+1:v)}catch(S){}return W[v]};if(it.rotation=0,O+(D=h(T.textContent.length))>H){for(;k<=_;)C=Math.ceil((k+_)/2),M&&(c=z(M,C)),D=h(C,c&&c.length-1),k===_?k=_+1:D>H?_=C-1:k=C;_===0?T.textContent="":A&&_===A.length-1||(T.textContent=c||z(A||M,C))}M&&M.splice(0,C),it.actualWidth=D,it.rotation=Q}unescapeEntities(T,A){return N(this.renderer.escapes,function(M,O){A&&A.indexOf(M)!==-1||(T=T.toString().replace(RegExp(M,"g"),O))}),T}}}),g(d,"Core/Renderer/SVG/SVGRenderer.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Defaults.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGLabel.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Renderer/SVG/TextBuilder.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let N,{defaultOptions:U}=R,{charts:T,deg2rad:A,doc:M,isFirefox:O,isMS:H,isWebKit:z,noop:c,SVG_NS:D,symbolSizes:it,win:Q}=$,{addEvent:W,attr:k,createElement:_,crisp:C,css:h,defined:l,destroyObjectProperties:u,extend:v,isArray:I,isNumber:S,isObject:b,isString:K,merge:ct,pick:et,pInt:dt,replaceNested:pt,uniqueKey:bt}=V;class Mt{constructor(B,tt,nt,x,y,F,lt){let rt,gt,vt=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),Ot=vt.element;lt||vt.css(this.getStyle(x||{})),B.appendChild(Ot),k(B,"dir","ltr"),B.innerHTML.indexOf("xmlns")===-1&&k(Ot,"xmlns",this.SVG_NS),this.box=Ot,this.boxWrapper=vt,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(M.createTextNode("Created with Highcharts 11.4.8")),this.defs=this.createElement("defs").add(),this.allowHTML=F,this.forExport=y,this.styledMode=lt,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=vt.getStyle("font-size"),this.setSize(tt,nt,!1),O&&B.getBoundingClientRect&&((rt=function(){h(B,{left:0,top:0}),gt=B.getBoundingClientRect(),h(B,{left:Math.ceil(gt.left)-gt.left+"px",top:Math.ceil(gt.top)-gt.top+"px"})})(),this.unSubPixelFix=W(Q,"resize",rt))}definition(B){return new L([B]).addToDOM(this.defs.element)}getReferenceURL(){if((O||z)&&M.getElementsByTagName("base").length){if(!l(N)){let B=bt(),tt=new L([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:B},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${B})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(M.body);h(tt,{position:"fixed",top:0,left:0,zIndex:9e5});let nt=M.elementFromPoint(6,6);N=(nt&&nt.id)==="hitme",M.body.removeChild(tt)}if(N)return pt(Q.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(B){return this.style=v({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},B),this.style}setStyle(B){this.boxWrapper.css(this.getStyle(B))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let B=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),u(this.gradients||{}),this.gradients=null,this.defs=B.destroy(),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null,null}createElement(B){return new this.Element(this,B)}getRadialAttr(B,tt){return{cx:B[0]-B[2]/2+(tt.cx||0)*B[2],cy:B[1]-B[2]/2+(tt.cy||0)*B[2],r:(tt.r||0)*B[2]}}shadowDefinition(B){let tt=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(B).map(x=>`${x}-${B[x]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),nt=ct({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},B);return this.defs.element.querySelector(`#${tt}`)||this.definition({tagName:"filter",attributes:{id:tt,filterUnits:nt.filterUnits},children:this.getShadowFilterContent(nt)}),tt}getShadowFilterContent(B){return[{tagName:"feDropShadow",attributes:{dx:B.offsetX,dy:B.offsetY,"flood-color":B.color,"flood-opacity":Math.min(5*B.opacity,1),stdDeviation:B.width/2}}]}buildText(B){new Y(B).buildSVG()}getContrast(B){let tt=st.parse(B).rgba.map(x=>{let y=x/255;return y<=.03928?y/12.92:Math.pow((y+.055)/1.055,2.4)}),nt=.2126*tt[0]+.7152*tt[1]+.0722*tt[2];return 1.05/(nt+.05)>(nt+.05)/.05?"#FFFFFF":"#000000"}button(B,tt,nt,x,y={},F,lt,rt,gt,vt){let Ot=this.label(B,tt,nt,gt,void 0,void 0,vt,void 0,"button"),At=this.styledMode,$t=arguments,Xt=0;y=ct(U.global.buttonTheme,y),At&&(delete y.fill,delete y.stroke,delete y["stroke-width"]);let Ct=y.states||{},wt=y.style||{};delete y.states,delete y.style;let Dt=[L.filterUserAttributes(y)],jt=[wt];return At||["hover","select","disabled"].forEach((re,le)=>{Dt.push(ct(Dt[0],L.filterUserAttributes($t[le+5]||Ct[re]||{}))),jt.push(Dt[le+1].style),delete Dt[le+1].style}),W(Ot.element,H?"mouseover":"mouseenter",function(){Xt!==3&&Ot.setState(1)}),W(Ot.element,H?"mouseout":"mouseleave",function(){Xt!==3&&Ot.setState(Xt)}),Ot.setState=(re=0)=>{if(re!==1&&(Ot.state=Xt=re),Ot.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][re]),!At){Ot.attr(Dt[re]);let le=jt[re];b(le)&&Ot.css(le)}},Ot.attr(Dt[0]),!At&&(Ot.css(v({cursor:"default"},wt)),vt&&Ot.text.css({pointerEvents:"none"})),Ot.on("touchstart",re=>re.stopPropagation()).on("click",function(re){Xt!==3&&x.call(Ot,re)})}crispLine(B,tt){let[nt,x]=B;return l(nt[1])&&nt[1]===x[1]&&(nt[1]=x[1]=C(nt[1],tt)),l(nt[2])&&nt[2]===x[2]&&(nt[2]=x[2]=C(nt[2],tt)),B}path(B){let tt=this.styledMode?{}:{fill:"none"};return I(B)?tt.d=B:b(B)&&v(tt,B),this.createElement("path").attr(tt)}circle(B,tt,nt){let x=b(B)?B:B===void 0?{}:{x:B,y:tt,r:nt},y=this.createElement("circle");return y.xSetter=y.ySetter=function(F,lt,rt){rt.setAttribute("c"+lt,F)},y.attr(x)}arc(B,tt,nt,x,y,F){let lt;b(B)?(tt=(lt=B).y,nt=lt.r,x=lt.innerR,y=lt.start,F=lt.end,B=lt.x):lt={innerR:x,start:y,end:F};let rt=this.symbol("arc",B,tt,nt,nt,lt);return rt.r=nt,rt}rect(B,tt,nt,x,y,F){let lt=b(B)?B:B===void 0?{}:{x:B,y:tt,r:y,width:Math.max(nt||0,0),height:Math.max(x||0,0)},rt=this.createElement("rect");return this.styledMode||(F!==void 0&&(lt["stroke-width"]=F,v(lt,rt.crisp(lt))),lt.fill="none"),rt.rSetter=function(gt,vt,Ot){rt.r=gt,k(Ot,{rx:gt,ry:gt})},rt.rGetter=function(){return rt.r||0},rt.attr(lt)}roundedRect(B){return this.symbol("roundedRect").attr(B)}setSize(B,tt,nt){this.width=B,this.height=tt,this.boxWrapper.animate({width:B,height:tt},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:et(nt,!0)?void 0:0}),this.alignElements()}g(B){let tt=this.createElement("g");return B?tt.attr({class:"highcharts-"+B}):tt}image(B,tt,nt,x,y,F){let lt={preserveAspectRatio:"none"};S(tt)&&(lt.x=tt),S(nt)&&(lt.y=nt),S(x)&&(lt.width=x),S(y)&&(lt.height=y);let rt=this.createElement("image").attr(lt),gt=function(vt){rt.attr({href:B}),F.call(rt,vt)};if(F){rt.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let vt=new Q.Image;W(vt,"load",gt),vt.src=B,vt.complete&>({})}else rt.attr({href:B});return rt}symbol(B,tt,nt,x,y,F){let lt,rt,gt,vt,Ot=this,At=/^url\((.*?)\)$/,$t=At.test(B),Xt=!$t&&(this.symbols[B]?B:"circle"),Ct=Xt&&this.symbols[Xt];if(Ct)typeof tt=="number"&&(rt=Ct.call(this.symbols,tt||0,nt||0,x||0,y||0,F)),lt=this.path(rt),Ot.styledMode||lt.attr("fill","none"),v(lt,{symbolName:Xt||void 0,x:tt,y:nt,width:x,height:y}),F&&v(lt,F);else if($t){gt=B.match(At)[1];let wt=lt=this.image(gt);wt.imgwidth=et(F&&F.width,it[gt]&&it[gt].width),wt.imgheight=et(F&&F.height,it[gt]&&it[gt].height),vt=Dt=>Dt.attr({width:Dt.width,height:Dt.height}),["width","height"].forEach(Dt=>{wt[`${Dt}Setter`]=function(jt,re){this[re]=jt;let{alignByTranslate:le,element:Gt,width:he,height:ve,imgwidth:Ce,imgheight:Te}=this,Ke=re==="width"?Ce:Te,rn=1;F&&F.backgroundSize==="within"&&he&&ve&&Ce&&Te?(rn=Math.min(he/Ce,ve/Te),k(Gt,{width:Math.round(Ce*rn),height:Math.round(Te*rn)})):Gt&&Ke&&Gt.setAttribute(re,Ke),!le&&Ce&&Te&&this.translate(((he||0)-Ce*rn)/2,((ve||0)-Te*rn)/2)}}),l(tt)&&wt.attr({x:tt,y:nt}),wt.isImg=!0,wt.symbolUrl=B,l(wt.imgwidth)&&l(wt.imgheight)?vt(wt):(wt.attr({width:0,height:0}),_("img",{onload:function(){let Dt=T[Ot.chartIndex];this.width===0&&(h(this,{position:"absolute",top:"-999em"}),M.body.appendChild(this)),it[gt]={width:this.width,height:this.height},wt.imgwidth=this.width,wt.imgheight=this.height,wt.element&&vt(wt),this.parentNode&&this.parentNode.removeChild(this),Ot.imgCount--,Ot.imgCount||!Dt||Dt.hasLoaded||Dt.onload()},src:gt}),this.imgCount++)}return lt}clipRect(B,tt,nt,x){return this.rect(B,tt,nt,x,0)}text(B,tt,nt,x){let y={};if(x&&(this.allowHTML||!this.forExport))return this.html(B,tt,nt);y.x=Math.round(tt||0),nt&&(y.y=Math.round(nt)),l(B)&&(y.text=B);let F=this.createElement("text").attr(y);return x&&(!this.forExport||this.allowHTML)||(F.xSetter=function(lt,rt,gt){let vt=gt.getElementsByTagName("tspan"),Ot=gt.getAttribute(rt);for(let At=0,$t;AtB.align())}}return v(Mt.prototype,{Element:X,SVG_NS:D,escapes:{"&":"&","<":"<",">":">","'":"'",'"':"""},symbols:Z,draw:c}),J.registerRendererType("svg",Mt,!0),Mt}),g(d,"Core/Renderer/HTML/HTMLElement.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{composed:J}=R,{attr:X,css:q,createElement:Z,defined:Y,extend:V,pInt:N,pushUnique:U}=$;function T(H,z,c){var it;let D=((it=this.div)==null?void 0:it.style)||c.style;st.prototype[`${z}Setter`].call(this,H,z,c),D&&(D[z]=H)}let A=(H,z)=>{var c;if(!H.div){let D=X(H.element,"class"),it=H.css,Q=Z("div",D?{className:D}:void 0,Mi(xr({position:"absolute",left:`${H.translateX||0}px`,top:`${H.translateY||0}px`},H.styles),{display:H.display,opacity:H.opacity,visibility:H.visibility}),((c=H.parentGroup)==null?void 0:c.div)||z);H.classSetter=(W,k,_)=>{_.setAttribute("class",W),Q.className=W},H.translateXSetter=H.translateYSetter=(W,k)=>{H[k]=W,Q.style[k==="translateX"?"left":"top"]=`${W}px`,H.doTransform=!0},H.opacitySetter=H.visibilitySetter=T,H.css=W=>(it.call(H,W),W.cursor&&(Q.style.cursor=W.cursor),W.pointerEvents&&(Q.style.pointerEvents=W.pointerEvents),H),H.on=function(){return st.prototype.on.apply({element:Q,onEvents:H.onEvents},arguments),H},H.div=Q}return H.div};class M extends st{static compose(z){U(J,this.compose)&&(z.prototype.html=function(c,D,it){return new M(this,"span").attr({text:c,x:Math.round(D),y:Math.round(it)})})}constructor(z,c){super(z,c),this.css(xr({position:"absolute"},z.styledMode?{}:{fontFamily:z.style.fontFamily,fontSize:z.style.fontSize})),this.element.style.whiteSpace="nowrap"}getSpanCorrection(z,c,D){this.xCorr=-z*D,this.yCorr=-c}css(z){let c,{element:D}=this,it=D.tagName==="SPAN"&&z&&"width"in z,Q=it&&z.width;return it&&(delete z.width,this.textWidth=N(Q)||void 0,c=!0),(z==null?void 0:z.textOverflow)==="ellipsis"&&(z.whiteSpace="nowrap",z.overflow="hidden"),V(this.styles,z),q(D,z),c&&this.updateTransform(),this}htmlGetBBox(){let{element:z}=this;return{x:z.offsetLeft,y:z.offsetTop,width:z.offsetWidth,height:z.offsetHeight}}updateTransform(){var S;if(!this.added){this.alignOnAdd=!0;return}let{element:z,renderer:c,rotation:D,rotationOriginX:it,rotationOriginY:Q,styles:W,textAlign:k="left",textWidth:_,translateX:C=0,translateY:h=0,x:l=0,y:u=0}=this,v={left:0,center:.5,right:1}[k],I=W.whiteSpace;if(q(z,{marginLeft:`${C}px`,marginTop:`${h}px`}),z.tagName==="SPAN"){let b=[D,k,z.innerHTML,_,this.textAlign].join(","),K=-(((S=this.parentGroup)==null?void 0:S.padding)*1)||0,ct,et=!1;if(_!==this.oldTextWidth){let w=this.textPxLength?this.textPxLength:(q(z,{width:"",whiteSpace:I||"nowrap"}),z.offsetWidth),B=_||0;(B>this.oldTextWidth||w>B)&&(/[ \-]/.test(z.textContent||z.innerText)||z.style.textOverflow==="ellipsis")&&(q(z,{width:w>B||D?_+"px":"auto",display:"block",whiteSpace:I||"normal"}),this.oldTextWidth=_,et=!0)}this.hasBoxWidthChanged=et,b!==this.cTT&&(ct=c.fontMetrics(z).b,Y(D)&&(D!==(this.oldRotation||0)||k!==this.oldAlign)&&this.setSpanRotation(D,K,K),this.getSpanCorrection(!Y(D)&&this.textPxLength||z.offsetWidth,ct,v));let{xCorr:dt=0,yCorr:pt=0}=this,bt=(it!=null?it:l)-dt-l-K,Mt=(Q!=null?Q:u)-pt-u-K;q(z,{left:`${l+dt}px`,top:`${u+pt}px`,transformOrigin:`${bt}px ${Mt}px`}),this.cTT=b,this.oldRotation=D,this.oldAlign=k}}setSpanRotation(z,c,D){q(this.element,{transform:`rotate(${z}deg)`,transformOrigin:`${c}% ${D}px`})}add(z){let c,D=this.renderer.box.parentNode,it=[];if(this.parentGroup=z,z&&!(c=z.div)){let Q=z;for(;Q;)it.push(Q),Q=Q.parentGroup;for(let W of it.reverse())c=A(W,D)}return(c||D).appendChild(this.element),this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(z){z!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,L.setElementHTML(this.element,z!=null?z:""),this.textStr=z,this.doTransform=!0)}alignSetter(z){this.alignValue=this.textAlign=z,this.doTransform=!0}xSetter(z,c){this[c]=z,this.doTransform=!0}}let O=M.prototype;return O.visibilitySetter=O.opacitySetter=T,O.ySetter=O.rotationSetter=O.rotationOriginXSetter=O.rotationOriginYSetter=O.xSetter,M}),g(d,"Core/Axis/AxisDefaults.js",[],function(){var L,R;return(R=L||(L={})).xAxis={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e %b"},week:{main:"%e %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotationLimit:80,distance:15,enabled:!0,indentation:10,overflow:"justify",reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,zIndex:7,style:{color:"#333333",cursor:"default",fontSize:"0.8em"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minorTicksPerMajor:5,minPadding:.01,offset:void 0,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",useHTML:!1,x:0,y:0,style:{color:"#666666",fontSize:"0.8em"}},visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},R.yAxis={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:void 0},startOnTick:!0,title:{text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){let{numberFormatter:st}=this.axis.chart;return st(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},L}),g(d,"Core/Foundation.js",[d["Core/Utilities.js"]],function(L){var R;let{addEvent:st,isFunction:$,objectEach:J,removeEvent:X}=L;return(R||(R={})).registerEventOptions=function(q,Z){q.eventOptions=q.eventOptions||{},J(Z.events,function(Y,V){q.eventOptions[V]!==Y&&(q.eventOptions[V]&&(X(q,V,q.eventOptions[V]),delete q.eventOptions[V]),$(Y)&&(q.eventOptions[V]=Y,st(q,V,Y,{order:0})))})},R}),g(d,"Core/Axis/Tick.js",[d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{deg2rad:$}=R,{clamp:J,correctFloat:X,defined:q,destroyObjectProperties:Z,extend:Y,fireEvent:V,isNumber:N,merge:U,objectEach:T,pick:A}=st;return class{constructor(M,O,H,z,c){this.isNew=!0,this.isNewLabel=!0,this.axis=M,this.pos=O,this.type=H||"",this.parameters=c||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,V(this,"init"),H||z||this.addLabel()}addLabel(){let M=this,O=M.axis,H=O.options,z=O.chart,c=O.categories,D=O.logarithmic,it=O.names,Q=M.pos,W=A(M.options&&M.options.labels,H.labels),k=O.tickPositions,_=Q===k[0],C=Q===k[k.length-1],h=(!W.step||W.step===1)&&O.tickInterval===1,l=k.info,u=M.label,v,I,S,b=this.parameters.category||(c?A(c[Q],it[Q],Q):Q);D&&N(b)&&(b=X(D.lin2log(b))),O.dateTime&&(l?v=(I=z.time.resolveDTLFormat(H.dateTimeLabelFormats[!H.grid&&l.higherRanks[Q]||l.unitName])).main:N(b)&&(v=O.dateTime.getXDateFormat(b,H.dateTimeLabelFormats||{}))),M.isFirst=_,M.isLast=C;let K={axis:O,chart:z,dateTimeLabelFormat:v,isFirst:_,isLast:C,pos:Q,tick:M,tickPositionInfo:l,value:b};V(this,"labelFormat",K);let ct=pt=>W.formatter?W.formatter.call(pt,pt):W.format?(pt.text=O.defaultLabelFormatter.call(pt),L.format(W.format,pt,z)):O.defaultLabelFormatter.call(pt),et=ct.call(K,K),dt=I&&I.list;dt?M.shortenLabel=function(){for(S=0;S0&&z+_*C>Q&&(b=Math.round((c-z)/Math.cos(k*$))):(I=z-_*C,S=z+(1-_)*C,IQ&&(u=Q-M.x+u*_,v=-1),(u=Math.min(h,u))u||O.autoRotation&&(W.styles||{}).width)&&(b=u)),b&&(this.shortenLabel?this.shortenLabel():(l.width=Math.floor(b)+"px",(H.style||{}).textOverflow||(l.textOverflow="ellipsis"),W.css(l)))}moveLabel(M,O){let H=this,z=H.label,c=H.axis,D=!1,it;z&&z.textStr===M?(H.movedLabel=z,D=!0,delete H.label):T(c.ticks,function(Q){D||Q.isNew||Q===H||!Q.label||Q.label.textStr!==M||(H.movedLabel=Q.label,D=!0,Q.labelPos=H.movedLabel.xy,delete Q.label)}),!D&&(H.labelPos||z)&&(it=H.labelPos||z.xy,H.movedLabel=H.createLabel(M,O,it),H.movedLabel&&H.movedLabel.attr({opacity:0}))}render(M,O,H){let z=this.axis,c=z.horiz,D=this.pos,it=A(this.tickmarkOffset,z.tickmarkOffset),Q=this.getPosition(c,D,it,O),W=Q.x,k=Q.y,_=z.pos,C=_+z.len,h=c?W:k;!z.chart.polar&&this.isNew&&(X(h)<_||h>C)&&(H=0);let l=A(H,this.label&&this.label.newOpacity,1);H=A(H,1),this.isActive=!0,this.renderGridLine(O,H),this.renderMark(Q,H),this.renderLabel(Q,O,l,M),this.isNew=!1,V(this,"afterRender")}renderGridLine(M,O){let H=this.axis,z=H.options,c={},D=this.pos,it=this.type,Q=A(this.tickmarkOffset,H.tickmarkOffset),W=H.chart.renderer,k=this.gridLine,_,C=z.gridLineWidth,h=z.gridLineColor,l=z.gridLineDashStyle;this.type==="minor"&&(C=z.minorGridLineWidth,h=z.minorGridLineColor,l=z.minorGridLineDashStyle),k||(H.chart.styledMode||(c.stroke=h,c["stroke-width"]=C||0,c.dashstyle=l),it||(c.zIndex=1),M&&(O=0),this.gridLine=k=W.path().attr(c).addClass("highcharts-"+(it?it+"-":"")+"grid-line").add(H.gridGroup)),k&&(_=H.getPlotLinePath({value:D+Q,lineWidth:k.strokeWidth(),force:"pass",old:M,acrossPanes:!1}))&&k[M||this.isNew?"attr":"animate"]({d:_,opacity:O})}renderMark(M,O){let H=this.axis,z=H.options,c=H.chart.renderer,D=this.type,it=H.tickSize(D?D+"Tick":"tick"),Q=M.x,W=M.y,k=A(z[D!=="minor"?"tickWidth":"minorTickWidth"],!D&&H.isXAxis?1:0),_=z[D!=="minor"?"tickColor":"minorTickColor"],C=this.mark,h=!C;it&&(H.opposite&&(it[0]=-it[0]),C||(this.mark=C=c.path().addClass("highcharts-"+(D?D+"-":"")+"tick").add(H.axisGroup),H.chart.styledMode||C.attr({stroke:_,"stroke-width":k})),C[h?"attr":"animate"]({d:this.getMarkPath(Q,W,it[0],C.strokeWidth(),H.horiz,c),opacity:O}))}renderLabel(M,O,H,z){let c=this.axis,D=c.horiz,it=c.options,Q=this.label,W=it.labels,k=W.step,_=A(this.tickmarkOffset,c.tickmarkOffset),C=M.x,h=M.y,l=!0;Q&&N(C)&&(Q.xy=M=this.getLabelPosition(C,h,Q,D,W,_,z,k),(!this.isFirst||this.isLast||it.showFirstLabel)&&(!this.isLast||this.isFirst||it.showLastLabel)?!D||W.step||W.rotation||O||H===0||this.handleOverflow(M):l=!1,k&&z%k&&(l=!1),l&&N(M.y)?(M.opacity=H,Q[this.isNewLabel?"attr":"animate"](M).show(!0),this.isNewLabel=!1):(Q.hide(),this.isNewLabel=!0))}replaceMovedLabel(){let M=this.label,O=this.axis;M&&!this.isNew&&(M.animate({opacity:0},void 0,M.destroy),delete this.label),O.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel}}}),g(d,"Core/Axis/Axis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/AxisDefaults.js"],d["Core/Color/Color.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Axis/Tick.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){let{animObject:Y}=L,{xAxis:V,yAxis:N}=R,{defaultOptions:U}=$,{registerEventOptions:T}=J,{deg2rad:A}=X,{arrayMax:M,arrayMin:O,clamp:H,correctFloat:z,defined:c,destroyObjectProperties:D,erase:it,error:Q,extend:W,fireEvent:k,getClosestDistance:_,insertItem:C,isArray:h,isNumber:l,isString:u,merge:v,normalizeTickInterval:I,objectEach:S,pick:b,relativeLength:K,removeEvent:ct,splat:et,syncTimeout:dt}=Z,pt=(Mt,w)=>I(w,void 0,void 0,b(Mt.options.allowDecimals,w<.5||Mt.tickAmount!==void 0),!!Mt.tickAmount);W(U,{xAxis:V,yAxis:v(V,N)});class bt{constructor(w,B,tt){this.init(w,B,tt)}init(w,B,tt=this.coll){var rt,gt,vt,Ot;let nt=tt==="xAxis",x=this.isZAxis||(w.inverted?!nt:nt);this.chart=w,this.horiz=x,this.isXAxis=nt,this.coll=tt,k(this,"init",{userOptions:B}),this.opposite=b(B.opposite,this.opposite),this.side=b(B.side,this.side,x?this.opposite?0:2:this.opposite?1:3),this.setOptions(B);let y=this.options,F=y.labels;(rt=this.type)!=null||(this.type=y.type||"linear"),(vt=this.uniqueNames)!=null||(this.uniqueNames=(gt=y.uniqueNames)!=null?gt:!0),k(this,"afterSetType"),this.userOptions=B,this.minPixelPadding=0,this.reversed=b(y.reversed,this.reversed),this.visible=y.visible,this.zoomEnabled=y.zoomEnabled,this.hasNames=this.type==="category"||y.categories===!0,this.categories=h(y.categories)&&y.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=c(y.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},(Ot=this.len)!=null||(this.len=0),this.minRange=this.userMinRange=y.minRange||y.maxZoom,this.range=y.range,this.offset=y.offset||0,this.max=void 0,this.min=void 0;let lt=b(y.crosshair,et(w.options.tooltip.crosshairs)[nt?0:1]);this.crosshair=lt===!0?{}:lt,w.axes.indexOf(this)===-1&&(nt?w.axes.splice(w.xAxis.length,0,this):w.axes.push(this),C(this,w[this.coll])),w.orderItems(this.coll),this.series=this.series||[],w.inverted&&!this.isZAxis&&nt&&!c(this.reversed)&&(this.reversed=!0),this.labelRotation=l(F.rotation)?F.rotation:void 0,T(this,y),k(this,"afterInit")}setOptions(w){let B=this.horiz?{labels:{autoRotation:[-45],padding:4},margin:15}:{labels:{padding:1},title:{rotation:90*this.side}};this.options=v(B,U[this.coll],w),k(this,"afterSetOptions",{userOptions:w})}defaultLabelFormatter(){let w=this.axis,{numberFormatter:B}=this.chart,tt=l(this.value)?this.value:NaN,nt=w.chart.time,x=w.categories,y=this.dateTimeLabelFormat,F=U.lang,lt=F.numericSymbols,rt=F.numericSymbolMagnitude||1e3,gt=w.logarithmic?Math.abs(tt):w.tickInterval,vt=lt&<.length,Ot,At;if(x)At=`${this.value}`;else if(y)At=nt.dateFormat(y,tt);else if(vt&<&>>=1e3)for(;vt--&&At===void 0;)gt>=(Ot=Math.pow(rt,vt+1))&&10*tt%Ot==0&<[vt]!==null&&tt!==0&&(At=B(tt/Ot,-1)+lt[vt]);return At===void 0&&(At=Math.abs(tt)>=1e4?B(tt,-1):B(tt,-1,void 0,"")),At}getSeriesExtremes(){let w,B=this;k(this,"getSeriesExtremes",null,function(){B.hasVisibleSeries=!1,B.dataMin=B.dataMax=B.threshold=void 0,B.softThreshold=!B.isXAxis,B.series.forEach(tt=>{if(tt.reserveSpace()){let nt=tt.options,x,y=nt.threshold,F,lt;if(B.hasVisibleSeries=!0,B.positiveValuesOnly&&0>=(y||0)&&(y=void 0),B.isXAxis)(x=tt.xData)&&x.length&&(x=B.logarithmic?x.filter(rt=>rt>0):x,F=(w=tt.getXExtremes(x)).min,lt=w.max,l(F)||F instanceof Date||(x=x.filter(l),F=(w=tt.getXExtremes(x)).min,lt=w.max),x.length&&(B.dataMin=Math.min(b(B.dataMin,F),F),B.dataMax=Math.max(b(B.dataMax,lt),lt)));else{let rt=tt.applyExtremes();l(rt.dataMin)&&(F=rt.dataMin,B.dataMin=Math.min(b(B.dataMin,F),F)),l(rt.dataMax)&&(lt=rt.dataMax,B.dataMax=Math.max(b(B.dataMax,lt),lt)),c(y)&&(B.threshold=y),(!nt.softThreshold||B.positiveValuesOnly)&&(B.softThreshold=!1)}}})}),k(this,"afterGetSeriesExtremes")}translate(w,B,tt,nt,x,y){var Xt;let F=this.linkedParent||this,lt=nt&&F.old?F.old.min:F.min;if(!l(lt))return NaN;let rt=F.minPixelPadding,gt=(F.isOrdinal||((Xt=F.brokenAxis)==null?void 0:Xt.hasBreaks)||F.logarithmic&&x)&&F.lin2val,vt=1,Ot=0,At=nt&&F.old?F.old.transA:F.transA,$t=0;return At||(At=F.transA),tt&&(vt*=-1,Ot=F.len),F.reversed&&(vt*=-1,Ot-=vt*(F.sector||F.len)),B?($t=(w=w*vt+Ot-rt)/At+lt,gt&&($t=F.lin2val($t))):(gt&&(w=F.val2lin(w)),$t=vt*(w-lt)*At+Ot+vt*rt+(l(y)?At*y:0),F.isRadial||($t=z($t))),$t}toPixels(w,B){return this.translate(w,!1,!this.horiz,void 0,!0)+(B?0:this.pos)}toValue(w,B){return this.translate(w-(B?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(w){let B=this,tt=B.chart,nt=B.left,x=B.top,y=w.old,F=w.value,lt=w.lineWidth,rt=y&&tt.oldChartHeight||tt.chartHeight,gt=y&&tt.oldChartWidth||tt.chartWidth,vt=B.transB,Ot=w.translatedValue,At=w.force,$t,Xt,Ct,wt,Dt;function jt(le,Gt,he){return At!=="pass"&&(lehe)&&(At?le=H(le,Gt,he):Dt=!0),le}let re={value:F,lineWidth:lt,old:y,force:At,acrossPanes:w.acrossPanes,translatedValue:Ot};return k(this,"getPlotLinePath",re,function(le){$t=Ct=(Ot=H(Ot=b(Ot,B.translate(F,void 0,void 0,y)),-1e9,1e9))+vt,Xt=wt=rt-Ot-vt,l(Ot)?B.horiz?(Xt=x,wt=rt-B.bottom+(B.options.isInternal?0:tt.scrollablePixelsY||0),$t=Ct=jt($t,nt,nt+B.width)):($t=nt,Ct=gt-B.right+(tt.scrollablePixelsX||0),Xt=wt=jt(Xt,x,x+B.height)):(Dt=!0,At=!1),le.path=Dt&&!At?void 0:tt.renderer.crispLine([["M",$t,Xt],["L",Ct,wt]],lt||1)}),re.path}getLinearTickPositions(w,B,tt){let nt,x,y,F=z(Math.floor(B/w)*w),lt=z(Math.ceil(tt/w)*w),rt=[];if(z(F+w)===F&&(y=20),this.single)return[B];for(nt=F;nt<=lt&&(rt.push(nt),(nt=z(nt+w,y))!==x);)x=nt;return rt}getMinorTickInterval(){let{minorTicks:w,minorTickInterval:B}=this.options;return w===!0?b(B,"auto"):w!==!1?B:void 0}getMinorTickPositions(){let w=this.options,B=this.tickPositions,tt=this.minorTickInterval,nt=this.pointRangePadding||0,x=(this.min||0)-nt,y=(this.max||0)+nt,F=y-x,lt=[],rt;if(F&&F/tt{var vt;return(gt.xIncrement?(vt=gt.xData)==null?void 0:vt.slice(0,2):gt.xData)||[]}))||0),this.dataMax-this.dataMin)),l(tt)&&l(nt)&&l(x)&&tt-nt=x,y=(x-tt+nt)/2,lt=[nt-y,b(w.min,nt-y)],F&&(lt[2]=B?B.log2lin(this.dataMin):this.dataMin),rt=[(nt=M(lt))+x,b(w.max,nt+x)],F&&(rt[2]=B?B.log2lin(this.dataMax):this.dataMax),(tt=O(rt))-ntnt-x),w=_([tt]))}return w&&B?Math.min(w,B):w||B}nameToX(w){let B=h(this.options.categories),tt=B?this.categories:this.names,nt=w.options.x,x;return w.series.requireSorting=!1,c(nt)||(nt=this.uniqueNames&&tt?B?tt.indexOf(w.name):b(tt.keys[w.name],-1):w.series.autoIncrement()),nt===-1?!B&&tt&&(x=tt.length):x=nt,x!==void 0?(this.names[x]=w.name,this.names.keys[w.name]=x):w.x&&(x=w.x),x}updateNames(){let w=this,B=this.names;B.length>0&&(Object.keys(B.keys).forEach(function(tt){delete B.keys[tt]}),B.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(tt=>{tt.xIncrement=null,(!tt.points||tt.isDirtyData)&&(w.max=Math.max(w.max,tt.xData.length-1),tt.processData(),tt.generatePoints()),tt.data.forEach(function(nt,x){let y;nt!=null&&nt.options&&nt.name!==void 0&&(y=w.nameToX(nt))!==void 0&&y!==nt.x&&(nt.x=y,tt.xData[x]=y)})}))}setAxisTranslation(){let w=this,B=w.max-w.min,tt=w.linkedParent,nt=!!w.categories,x=w.isXAxis,y=w.axisPointRange||0,F,lt=0,rt=0,gt,vt=w.transA;(x||nt||y)&&(F=w.getClosest(),tt?(lt=tt.minPointOffset,rt=tt.pointRangePadding):w.series.forEach(function(Ot){let At=nt?1:x?b(Ot.options.pointRange,F,0):w.axisPointRange||0,$t=Ot.options.pointPlacement;if(y=Math.max(y,At),!w.single||nt){let Xt=Ot.is("xrange")?!x:x;lt=Math.max(lt,Xt&&u($t)?0:At/2),rt=Math.max(rt,Xt&&$t==="on"?0:At)}}),gt=w.ordinal&&w.ordinal.slope&&F?w.ordinal.slope/F:1,w.minPointOffset=lt*=gt,w.pointRangePadding=rt*=gt,w.pointRange=Math.min(y,w.single&&nt?1:B),x&&F&&(w.closestPointRange=F)),w.translationSlope=w.transA=vt=w.staticScale||w.len/(B+rt||1),w.transB=w.horiz?w.left:w.bottom,w.minPixelPadding=vt*lt,k(this,"afterSetAxisTranslation")}minFromRange(){let{max:w,min:B}=this;return l(w)&&l(B)&&w-B||void 0}setTickInterval(w){var Qt,Kt,Jt,Et;let{categories:B,chart:tt,dataMax:nt,dataMin:x,dateTime:y,isXAxis:F,logarithmic:lt,options:rt,softThreshold:gt}=this,vt=l(this.threshold)?this.threshold:void 0,Ot=this.minRange||0,{ceiling:At,floor:$t,linkedTo:Xt,softMax:Ct,softMin:wt}=rt,Dt=l(Xt)&&((Qt=tt[this.coll])==null?void 0:Qt[Xt]),jt=rt.tickPixelInterval,re=rt.maxPadding,le=rt.minPadding,Gt=0,he,ve=l(rt.tickInterval)&&rt.tickInterval>=0?rt.tickInterval:void 0,Ce,Te,Ke,rn;if(y||B||Dt||this.getTickAmount(),Ke=b(this.userMin,rt.min),rn=b(this.userMax,rt.max),Dt?(this.linkedParent=Dt,he=Dt.getExtremes(),this.min=b(he.min,he.dataMin),this.max=b(he.max,he.dataMax),this.type!==Dt.type&&Q(11,!0,tt)):(gt&&c(vt)&&l(nt)&&l(x)&&(x>=vt?(Ce=vt,le=0):nt<=vt&&(Te=vt,re=0)),this.min=b(Ke,Ce,x),this.max=b(rn,Te,nt)),l(this.max)&&l(this.min)&&(lt&&(this.positiveValuesOnly&&!w&&0>=Math.min(this.min,b(x,this.min))&&Q(10,!0,tt),this.min=z(lt.log2lin(this.min),16),this.max=z(lt.log2lin(this.max),16)),this.range&&l(x)&&(this.userMin=this.min=Ke=Math.max(x,this.minFromRange()||0),this.userMax=rn=this.max,this.range=void 0)),k(this,"foundExtremes"),this.adjustForMinRange(),l(this.min)&&l(this.max)){if(!l(this.userMin)&&l(wt)&&wtthis.max&&(this.max=rn=Ct),B||this.axisPointRange||(Kt=this.stacking)!=null&&Kt.usePercentage||Dt||!(Gt=this.max-this.min)||(!c(Ke)&&le&&(this.min-=Gt*le),c(rn)||!re||(this.max+=Gt*re)),!l(this.userMin)&&l($t)&&(this.min=Math.max(this.min,$t)),!l(this.userMax)&&l(At)&&(this.max=Math.min(this.max,At)),gt&&l(x)&&l(nt)){let Rt=vt||0;!c(Ke)&&this.min=Rt?this.min=rt.minRange?Math.min(Rt,this.max-Ot):Rt:!c(rn)&&this.max>Rt&&nt<=Rt&&(this.max=rt.minRange?Math.max(Rt,this.min+Ot):Rt)}!tt.polar&&this.min>this.max&&(c(rt.min)?this.max=this.min:c(rt.max)&&(this.min=this.max)),Gt=this.max-this.min}if(this.min!==this.max&&l(this.min)&&l(this.max)?Dt&&!ve&&jt===Dt.options.tickPixelInterval?this.tickInterval=ve=Dt.tickInterval:this.tickInterval=b(ve,this.tickAmount?Gt/Math.max(this.tickAmount-1,1):void 0,B?1:Gt*jt/Math.max(this.len,jt)):this.tickInterval=1,F&&!w){let Rt=this.min!==((Jt=this.old)==null?void 0:Jt.min)||this.max!==((Et=this.old)==null?void 0:Et.max);this.series.forEach(function(zt){var Ft;zt.forceCrop=(Ft=zt.forceCropping)==null?void 0:Ft.call(zt),zt.processData(Rt)}),k(this,"postProcessData",{hasExtremesChanged:Rt})}this.setAxisTranslation(),k(this,"initialAxisTranslation"),this.pointRange&&!ve&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval));let un=b(rt.minTickInterval,y&&!this.series.some(Rt=>Rt.noSharedTooltip)?this.closestPointRange:0);!ve&&this.tickIntervalMath.max(2*this.len,200))lt=[this.min,this.max],Q(19,!1,this.chart);else if(this.dateTime)lt=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,w.units),this.min,this.max,w.startOfWeek,(vt=this.ordinal)==null?void 0:vt.positions,this.closestPointRange,!0);else if(this.logarithmic)lt=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let Ot=this.tickInterval,At=Ot;for(;At<=2*Ot&&(lt=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&<.length>this.tickAmount);)this.tickInterval=pt(this,At*=1.1)}lt.length>this.len&&(lt=[lt[0],lt[lt.length-1]])[0]===lt[1]&&(lt.length=1),tt&&(this.tickPositions=lt,(rt=tt.apply(this,[this.min,this.max]))&&(lt=rt))}this.tickPositions=lt,this.minorTickInterval=nt==="auto"&&this.tickInterval?this.tickInterval/w.minorTicksPerMajor:nt,this.paddedTicks=lt.slice(0),this.trimTicks(lt,y,F),!this.isLinked&&l(this.min)&&l(this.max)&&(this.single&<.length<2&&!this.categories&&!this.series.some(Ot=>Ot.is("heatmap")&&Ot.options.pointPlacement==="between")&&(this.min-=.5,this.max+=.5),B||rt||this.adjustTickAmount()),k(this,"afterSetTickPositions")}trimTicks(w,B,tt){let nt=w[0],x=w[w.length-1],y=!this.isOrdinal&&this.minPointOffset||0;if(k(this,"trimTicks"),!this.isLinked){if(B&&nt!==-1/0)this.min=nt;else for(;this.min-y>w[0];)w.shift();if(tt)this.max=x;else for(;this.max+y{let{horiz:Ot,options:At}=vt;return[Ot?At.left:At.top,At.width,At.height,At.pane].join(",")},gt=rt(this);tt[this.coll].forEach(function(vt){let{series:Ot}=vt;Ot.length&&Ot.some(At=>At.visible)&&vt!==B&&rt(vt)===gt&&(w=!0,nt.push(vt))})}if(w&&F){nt.forEach(gt=>{let vt=gt.getThresholdAlignment(B);l(vt)&<.push(vt)});let rt=lt.length>1?lt.reduce((gt,vt)=>gt+=vt,0)/lt.length:void 0;nt.forEach(gt=>{gt.thresholdAlignment=rt})}return w}getThresholdAlignment(w){if((!l(this.dataMin)||this!==w&&this.series.some(B=>B.isDirty||B.isDirtyData))&&this.getSeriesExtremes(),l(this.threshold)){let B=H((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(B=1-B),B}}getTickAmount(){let w=this.options,B=w.tickPixelInterval,tt=w.tickAmount;c(w.tickInterval)||tt||!(this.leny.push(z(y[y.length-1]+At)),Ct=()=>y.unshift(z(y[0]-At));if(l(lt)&&($t=lt<.5?Math.ceil(lt*(F-1)):Math.floor(lt*(F-1)),x.reversed&&($t=F-1-$t)),w.hasData()&&l(nt)&&l(tt)){let wt=()=>{w.transA*=(rt-1)/(F-1),w.min=x.startOnTick?y[0]:Math.min(nt,y[0]),w.max=x.endOnTick?y[y.length-1]:Math.max(tt,y[y.length-1])};if(l($t)&&l(w.threshold)){for(;y[$t]!==gt||y.length!==F||y[0]>nt||y[y.length-1]w.threshold?Ct():Xt();if(At>8*w.tickInterval)break;At*=2}wt()}else if(rt0&&Ot{tt=tt||lt.isDirtyData||lt.isDirty,nt=nt||lt.xAxis&<.xAxis.isDirty||!1}),this.setAxisSize();let x=this.len!==(this.old&&this.old.len);x||tt||nt||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(B&&w==="yAxis"&&B.buildStacks(),this.forceRedraw=!1,this.userMinRange||(this.minRange=void 0),this.getSeriesExtremes(),this.setTickInterval(),B&&w==="xAxis"&&B.buildStacks(),this.isDirty||(this.isDirty=x||this.min!==((y=this.old)==null?void 0:y.min)||this.max!==((F=this.old)==null?void 0:F.max))):B&&B.cleanStacks(),tt&&delete this.allExtremes,k(this,"afterSetScale")}setExtremes(w,B,tt=!0,nt,x){this.series.forEach(y=>{delete y.kdTree}),k(this,"setExtremes",x=W(x,{min:w,max:B}),y=>{this.userMin=y.min,this.userMax=y.max,this.eventArgs=y,tt&&this.chart.redraw(nt)})}setAxisSize(){let w=this.chart,B=this.options,tt=B.offsets||[0,0,0,0],nt=this.horiz,x=this.width=Math.round(K(b(B.width,w.plotWidth-tt[3]+tt[1]),w.plotWidth)),y=this.height=Math.round(K(b(B.height,w.plotHeight-tt[0]+tt[2]),w.plotHeight)),F=this.top=Math.round(K(b(B.top,w.plotTop+tt[0]),w.plotHeight,w.plotTop)),lt=this.left=Math.round(K(b(B.left,w.plotLeft+tt[3]),w.plotWidth,w.plotLeft));this.bottom=w.chartHeight-y-F,this.right=w.chartWidth-x-lt,this.len=Math.max(nt?x:y,0),this.pos=nt?lt:F}getExtremes(){let w=this.logarithmic;return{min:w?z(w.lin2log(this.min)):this.min,max:w?z(w.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}}getThreshold(w){let B=this.logarithmic,tt=B?B.lin2log(this.min):this.min,nt=B?B.lin2log(this.max):this.max;return w===null||w===-1/0?w=tt:w===1/0?w=nt:tt>w?w=tt:nt15&&B<165?nt.align="right":B>195&&B<345&&(nt.align="left")}),tt.align}tickSize(w){let B=this.options,tt=b(B[w==="tick"?"tickWidth":"minorTickWidth"],w==="tick"&&this.isXAxis&&!this.categories?1:0),nt=B[w==="tick"?"tickLength":"minorTickLength"],x;tt&&nt&&(B[w+"Position"]==="inside"&&(nt=-nt),x=[nt,tt]);let y={tickSize:x};return k(this,"afterTickSize",y),y.tickSize}labelMetrics(){let w=this.chart.renderer,B=this.ticks,tt=B[Object.keys(B)[0]]||{};return this.chart.renderer.fontMetrics(tt.label||tt.movedLabel||w.box)}unsquish(){let w=this.options.labels,B=w.padding||0,tt=this.horiz,nt=this.tickInterval,x=this.len/(((this.categories?1:0)+this.max-this.min)/nt),y=w.rotation,F=z(.8*this.labelMetrics().h),lt=Math.max(this.max-this.min,0),rt=function($t){let Xt=($t+2*B)/(x||1);return(Xt=Xt>1?Math.ceil(Xt):1)*nt>lt&&$t!==1/0&&x!==1/0&<&&(Xt=Math.ceil(lt/nt)),z(Xt*nt)},gt=nt,vt,Ot=Number.MAX_VALUE,At;if(tt){if(!w.staggerLines&&(l(y)?At=[y]:x=-90&&Ct<=90)&&(Xt=($t=rt(Math.abs(F/Math.sin(A*Ct))))+Math.abs(Ct/360))Xt&&(Xt=jt.label.textPxLength)}),this.maxLabelLength=Xt,this.autoRotation)Xt>rt&&Xt>vt.h?gt.rotation=this.labelRotation:this.labelRotation=0;else if(lt&&(At=rt,!Ot))for($t="clip",wt=tt.length;!F&&wt--;)(Ct=nt[tt[wt]].label)&&(Ct.styles.textOverflow==="ellipsis"?Ct.css({textOverflow:"clip"}):Ct.textPxLength>lt&&Ct.css({width:lt+"px"}),Ct.getBBox().height>this.len/tt.length-(vt.h-vt.f)&&(Ct.specificTextOverflow="ellipsis"));gt.rotation&&(At=Xt>.5*w.chartHeight?.33*w.chartHeight:Xt,Ot||($t="ellipsis")),this.labelAlign=x.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(gt.align=this.labelAlign),tt.forEach(function(Dt){let jt=nt[Dt],re=jt&&jt.label,le=y.width,Gt={};re&&(re.attr(gt),jt.shortenLabel?jt.shortenLabel():At&&!le&&y.whiteSpace!=="nowrap"&&(Atx.g(F).attr({zIndex:rt}).addClass(`highcharts-${tt.toLowerCase()}${lt} `+(this.isRadial?`highcharts-radial-axis${lt} `:"")+(nt.className||"")).add(w);this.axisGroup||(this.gridGroup=y("grid","-grid",nt.gridZIndex),this.axisGroup=y("axis","",nt.zIndex),this.labelGroup=y("axis-labels","-labels",nt.labels.zIndex))}getOffset(){let w=this,{chart:B,horiz:tt,options:nt,side:x,ticks:y,tickPositions:F,coll:lt}=w,rt=B.inverted&&!w.isZAxis?[1,0,3,2][x]:x,gt=w.hasData(),vt=nt.title,Ot=nt.labels,At=l(nt.crossing),$t=B.axisOffset,Xt=B.clipOffset,Ct=[-1,1,1,-1][x],wt,Dt=0,jt,re=0,le=0,Gt,he;if(w.showAxis=wt=gt||nt.showEmpty,w.staggerLines=w.horiz&&Ot.staggerLines||void 0,w.createGroups(),gt||w.isLinked?(F.forEach(function(ve){w.generateTick(ve)}),w.renderUnsquish(),w.reserveSpaceDefault=x===0||x===2||{1:"left",3:"right"}[x]===w.labelAlign,b(Ot.reserveSpace,!At&&null,w.labelAlign==="center"||null,w.reserveSpaceDefault)&&F.forEach(function(ve){le=Math.max(y[ve].getLabelSize(),le)}),w.staggerLines&&(le*=w.staggerLines),w.labelOffset=le*(w.opposite?-1:1)):S(y,function(ve,Ce){ve.destroy(),delete y[Ce]}),vt!=null&&vt.text&&vt.enabled!==!1&&(w.addTitle(wt),wt&&!At&&vt.reserveSpace!==!1&&(w.titleOffset=Dt=w.axisTitle.getBBox()[tt?"height":"width"],re=c(jt=vt.offset)?0:b(vt.margin,tt?5:10))),w.renderLine(),w.offset=Ct*b(nt.offset,$t[x]?$t[x]+(nt.margin||0):0),w.tickRotCorr=w.tickRotCorr||{x:0,y:0},he=x===0?-w.labelMetrics().h:x===2?w.tickRotCorr.y:0,Gt=Math.abs(le)+re,le&&(Gt-=he,Gt+=Ct*(tt?b(Ot.y,w.tickRotCorr.y+Ct*Ot.distance):b(Ot.x,Ct*Ot.distance))),w.axisTitleMargin=b(jt,Gt),w.getMaxLabelDimensions&&(w.maxLabelDimensions=w.getMaxLabelDimensions(y,F)),lt!=="colorAxis"&&Xt){let ve=this.tickSize("tick");$t[x]=Math.max($t[x],(w.axisTitleMargin||0)+Dt+Ct*w.offset,Gt,F&&F.length&&ve?ve[0]+Ct*w.offset:0);let Ce=!w.axisLine||nt.offset?0:w.axisLine.strokeWidth()/2;Xt[rt]=Math.max(Xt[rt],Ce)}k(this,"afterGetOffset")}getLinePath(w){let B=this.chart,tt=this.opposite,nt=this.offset,x=this.horiz,y=this.left+(tt?this.width:0)+nt,F=B.chartHeight-this.bottom-(tt?this.height:0)+nt;return tt&&(w*=-1),B.renderer.crispLine([["M",x?this.left:y,x?F:this.top],["L",x?B.chartWidth-this.right:y,x?F:B.chartHeight-this.bottom]],w)}renderLine(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))}getTitlePosition(w){let B=this.horiz,tt=this.left,nt=this.top,x=this.len,y=this.options.title,F=B?tt:nt,lt=this.opposite,rt=this.offset,gt=y.x,vt=y.y,Ot=this.chart.renderer.fontMetrics(w),At=w?Math.max(w.getBBox(!1,0).height-Ot.h-1,0):0,$t={low:F+(B?0:x),middle:F+x/2,high:F+(B?x:0)}[y.align],Xt=(B?nt+this.height:tt)+(B?1:-1)*(lt?-1:1)*(this.axisTitleMargin||0)+[-At,At,Ot.f,-At][this.side],Ct={x:B?$t+gt:Xt+(lt?this.width:0)+rt+gt,y:B?Xt+vt-(lt?this.height:0)+rt:$t+vt};return k(this,"afterGetTitlePosition",{titlePosition:Ct}),Ct}renderMinorTick(w,B){let tt=this.minorTicks;tt[w]||(tt[w]=new q(this,w,"minor")),B&&tt[w].isNew&&tt[w].render(null,!0),tt[w].render(null,!1,1)}renderTick(w,B,tt){let nt=this.isLinked,x=this.ticks;(!nt||w>=this.min&&w<=this.max||this.grid&&this.grid.isColumn)&&(x[w]||(x[w]=new q(this,w)),tt&&x[w].isNew&&x[w].render(B,!0,-1),x[w].render(B))}render(){let w,B,tt=this,nt=tt.chart,x=tt.logarithmic,y=nt.renderer,F=tt.options,lt=tt.isLinked,rt=tt.tickPositions,gt=tt.axisTitle,vt=tt.ticks,Ot=tt.minorTicks,At=tt.alternateBands,$t=F.stackLabels,Xt=F.alternateGridColor,Ct=F.crossing,wt=tt.tickmarkOffset,Dt=tt.axisLine,jt=tt.showAxis,re=Y(y.globalAnimation);if(tt.labelEdge.length=0,tt.overlap=!1,[vt,Ot,At].forEach(function(le){S(le,function(Gt){Gt.isActive=!1})}),l(Ct)){let le=this.isXAxis?nt.yAxis[0]:nt.xAxis[0],Gt=[1,-1,-1,1][this.side];if(le){let he=le.toPixels(Ct,!0);tt.horiz&&(he=le.len-he),tt.offset=Gt*he}}if(tt.hasData()||lt){let le=tt.chart.hasRendered&&tt.old&&l(tt.old.min);tt.minorTickInterval&&!tt.categories&&tt.getMinorTickPositions().forEach(function(Gt){tt.renderMinorTick(Gt,le)}),rt.length&&(rt.forEach(function(Gt,he){tt.renderTick(Gt,he,le)}),wt&&(tt.min===0||tt.single)&&(vt[-1]||(vt[-1]=new q(tt,-1,null,!0)),vt[-1].render(-1))),Xt&&rt.forEach(function(Gt,he){B=rt[he+1]!==void 0?rt[he+1]+wt:tt.max-wt,he%2==0&&Gt=.5)N=Math.round(N),z=M.getLinearTickPositions(N,U,T);else if(N>=.08){let c,D,it,Q,W,k,_,C=Math.floor(U);for(c=N>.3?[1,2,4]:N>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9],D=C;DU&&(!A||k<=T)&&k!==void 0&&z.push(k),k>T&&(_=!0),k=W}else{let c=this.lin2log(U),D=this.lin2log(T),it=A?M.getMinorTickInterval():H.tickInterval,Q=H.tickPixelInterval/(A?5:1),W=A?O/M.tickPositions.length:O;N=$(N=J(it==="auto"?null:it,this.minorAutoInterval,(D-c)*Q/(W||1))),z=M.getLinearTickPositions(N,c,D).map(this.log2lin),A||(this.minorAutoInterval=N/5)}return A||(M.tickInterval=N),z}lin2log(N){return Math.pow(10,N)}log2lin(N){return Math.log(N)/Math.LN10}}X.Additions=Y}(R||(R={})),R}),g(d,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[d["Core/Utilities.js"]],function(L){var R;let{erase:st,extend:$,isNumber:J}=L;return function(X){let q;function Z(M){return this.addPlotBandOrLine(M,"plotBands")}function Y(M,O){let H=this.userOptions,z=new q(this,M);if(this.visible&&(z=z.render()),z){if(this._addedPlotLB||(this._addedPlotLB=!0,(H.plotLines||[]).concat(H.plotBands||[]).forEach(c=>{this.addPlotBandOrLine(c)})),O){let c=H[O]||[];c.push(M),H[O]=c}this.plotLinesAndBands.push(z)}return z}function V(M){return this.addPlotBandOrLine(M,"plotLines")}function N(M,O,H){H=H||this.options;let z=this.getPlotLinePath({value:O,force:!0,acrossPanes:H.acrossPanes}),c=[],D=this.horiz,it=!J(this.min)||!J(this.max)||Mthis.max&&O>this.max,Q=this.getPlotLinePath({value:M,force:!0,acrossPanes:H.acrossPanes}),W,k=1,_;if(Q&&z)for(it&&(_=Q.toString()===z.toString(),k=0),W=0;W{var z;let H=[];for(let c of this.axes)for(let{label:D,options:it}of c.plotLinesAndBands)D&&!((z=it==null?void 0:it.label)!=null&&z.allowOverlap)&&H.push(D);return H})}),L.compose(T,O)}constructor(M,O){this.axis=M,this.options=O,this.id=O.id}render(){var pt,bt,Mt;Y(this,"render");let{axis:M,options:O}=this,{horiz:H,logarithmic:z}=M,{color:c,events:D,zIndex:it=0}=O,Q={},W=M.chart.renderer,k=O.to,_=O.from,C=O.value,h=O.borderWidth,l=O.label,{label:u,svgElem:v}=this,I=[],S,b=X(_)&&X(k),K=X(C),ct=!v,et={class:"highcharts-plot-"+(b?"band ":"line ")+(O.className||"")},dt=b?"bands":"lines";if(!M.chart.styledMode&&(K?(et.stroke=c||"#999999",et["stroke-width"]=U(O.width,1),O.dashStyle&&(et.dashstyle=O.dashStyle)):b&&(et.fill=c||"#e6e9ff",h&&(et.stroke=O.borderColor,et["stroke-width"]=h))),Q.zIndex=it,dt+="-"+it,(S=M.plotLinesAndBandsGroups[dt])||(M.plotLinesAndBandsGroups[dt]=S=W.g("plot-"+dt).attr(Q).add()),v||(this.svgElem=v=W.path().attr(et).add(S)),X(C))I=M.getPlotLinePath({value:(pt=z==null?void 0:z.log2lin(C))!=null?pt:C,lineWidth:v.strokeWidth(),acrossPanes:O.acrossPanes});else{if(!(X(_)&&X(k)))return;I=M.getPlotBandPath((bt=z==null?void 0:z.log2lin(_))!=null?bt:_,(Mt=z==null?void 0:z.log2lin(k))!=null?Mt:k,O)}return!this.eventsAdded&&D&&(N(D,(w,B)=>{v==null||v.on(B,tt=>{D[B].apply(this,[tt])})}),this.eventsAdded=!0),(ct||!v.d)&&(I!=null&&I.length)?v.attr({d:I}):v&&(I?(v.show(),v.animate({d:I})):v.d&&(v.hide(),u&&(this.label=u=u.destroy()))),l&&(X(l.text)||X(l.formatter))&&(I!=null&&I.length)&&M.width>0&&M.height>0&&!I.isFlat?(l=V(xr({align:H&&b?"center":void 0,x:H?!b&&4:10,verticalAlign:!H&&b?"middle":void 0,y:H?b?16:10:b?6:-4,rotation:H&&!b?90:0},b?{inside:!0}:{}),l),this.renderLabel(l,I,b,it)):u&&u.hide(),this}renderLabel(M,O,H,z){var l;let c=this.axis,D=c.chart.renderer,it=M.inside,Q=this.label;Q||(this.label=Q=D.text(this.getLabelText(M),0,0,M.useHTML).attr({align:M.textAlign||M.align,rotation:M.rotation,class:"highcharts-plot-"+(H?"band":"line")+"-label "+(M.className||""),zIndex:z}),c.chart.styledMode||Q.css(V({fontSize:"0.8em",textOverflow:H&&!it?"":"ellipsis"},M.style)),Q.add());let W=O.xBounds||[O[0][1],O[1][1],H?O[2][1]:O[0][1]],k=O.yBounds||[O[0][2],O[1][2],H?O[2][2]:O[0][2]],_=J(W),C=J(k),h=$(W)-_;Q.align(M,!1,{x:_,y:C,width:h,height:$(k)-C}),(!Q.alignValue||Q.alignValue==="left"||X(it))&&Q.css({width:(((l=M.style)==null?void 0:l.width)||(H&&it?h:Q.rotation===90?c.height-(Q.alignAttr.y-c.top):(M.clip?c.width:c.chart.chartWidth)-(Q.alignAttr.x-c.left)))+"px"}),Q.show(!0)}getLabelText(M){return X(M.formatter)?M.formatter.call(this):M.text}destroy(){Z(this.axis.plotLinesAndBands,this),delete this.axis,q(this)}}return T}),g(d,"Core/Tooltip.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){var q;let{animObject:Z}=L,{format:Y}=R,{composed:V,doc:N,isSafari:U}=st,{distribute:T}=$,{addEvent:A,clamp:M,css:O,discardElement:H,extend:z,fireEvent:c,isArray:D,isNumber:it,isString:Q,merge:W,pick:k,pushUnique:_,splat:C,syncTimeout:h}=X;class l{constructor(v,I,S){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.options={},this.outside=!1,this.chart=v,this.init(v,I),this.pointer=S}bodyFormatter(v){return v.map(function(I){let S=I.series.tooltipOptions;return(S[(I.point.formatPrefix||"point")+"Formatter"]||I.point.tooltipFormatter).call(I.point,S[(I.point.formatPrefix||"point")+"Format"]||"")})}cleanSplit(v){this.chart.series.forEach(function(I){let S=I&&I.tt;S&&(!S.isActive||v?I.tt=S.destroy():S.isActive=!1)})}defaultFormatter(v){let I,S=this.points||C(this);return(I=(I=[v.tooltipFooterHeaderFormatter(S[0])]).concat(v.bodyFormatter(S))).push(v.tooltipFooterHeaderFormatter(S[0],!0)),I}destroy(){this.label&&(this.label=this.label.destroy()),this.split&&(this.cleanSplit(!0),this.tt&&(this.tt=this.tt.destroy())),this.renderer&&(this.renderer=this.renderer.destroy(),H(this.container)),X.clearTimeout(this.hideTimer)}getAnchor(v,I){let S,{chart:b,pointer:K}=this,ct=b.inverted,et=b.plotTop,dt=b.plotLeft;if((v=C(v))[0].series&&v[0].series.yAxis&&!v[0].series.yAxis.options.reversedStacks&&(v=v.slice().reverse()),this.followPointer&&I)I.chartX===void 0&&(I=K.normalize(I)),S=[I.chartX-dt,I.chartY-et];else if(v[0].tooltipPos)S=v[0].tooltipPos;else{let pt=0,bt=0;v.forEach(function(Mt){let w=Mt.pos(!0);w&&(pt+=w[0],bt+=w[1])}),pt/=v.length,bt/=v.length,this.shared&&v.length>1&&I&&(ct?pt=I.chartX:bt=I.chartY),S=[pt-dt,bt-et]}return S.map(Math.round)}getClassName(v,I,S){let b=this.options,K=v.series,ct=K.options;return[b.className,"highcharts-label",S&&"highcharts-tooltip-header",I?"highcharts-tooltip-box":"highcharts-tooltip",!S&&"highcharts-color-"+k(v.colorIndex,K.colorIndex),ct&&ct.className].filter(Q).join(" ")}getLabel({anchorX:v,anchorY:I}={anchorX:0,anchorY:0}){let S=this,b=this.chart.styledMode,K=this.options,ct=this.split&&this.allowShared,et=this.container,dt=this.chart.renderer;if(this.label){let pt=!this.label.hasClass("highcharts-label");(!ct&&pt||ct&&!pt)&&this.destroy()}if(!this.label){if(this.outside){let pt=this.chart.options.chart.style,bt=J.getRendererType();this.container=et=st.doc.createElement("div"),et.className="highcharts-tooltip-container",O(et,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(pt&&pt.zIndex||0)+3)}),this.renderer=dt=new bt(et,0,0,pt,void 0,void 0,dt.styledMode)}if(ct?this.label=dt.g("tooltip"):(this.label=dt.label("",v,I,K.shape,void 0,void 0,K.useHTML,void 0,"tooltip").attr({padding:K.padding,r:K.borderRadius}),b||this.label.attr({fill:K.backgroundColor,"stroke-width":K.borderWidth||0}).css(K.style).css({pointerEvents:K.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),S.outside){let pt=this.label;[pt.xSetter,pt.ySetter].forEach((bt,Mt)=>{pt[Mt?"ySetter":"xSetter"]=w=>{bt.call(pt,S.distance),pt[Mt?"y":"x"]=w,et&&(et.style[Mt?"top":"left"]=`${w}px`)}})}this.label.attr({zIndex:8}).shadow(K.shadow).add()}return et&&!et.parentElement&&st.doc.body.appendChild(et),this.label}getPlayingField(){let{body:v,documentElement:I}=N,{chart:S,distance:b,outside:K}=this;return{width:K?Math.max(v.scrollWidth,I.scrollWidth,v.offsetWidth,I.offsetWidth,I.clientWidth)-2*b:S.chartWidth,height:K?Math.max(v.scrollHeight,I.scrollHeight,v.offsetHeight,I.offsetHeight,I.clientHeight):S.chartHeight}}getPosition(v,I,S){var re,le;let{distance:b,chart:K,outside:ct,pointer:et}=this,{inverted:dt,plotLeft:pt,plotTop:bt,polar:Mt}=K,{plotX:w=0,plotY:B=0}=S,tt={},nt=dt&&S.h||0,{height:x,width:y}=this.getPlayingField(),F=et.getChartPosition(),lt=Gt=>Gt*F.scaleX,rt=Gt=>Gt*F.scaleY,gt=Gt=>{let he=Gt==="x";return[Gt,he?y:x,he?v:I].concat(ct?[he?lt(v):rt(I),he?F.left-b+lt(w+pt):F.top-b+rt(B+bt),0,he?y:x]:[he?v:I,he?w+pt:B+bt,he?pt:bt,he?pt+K.plotWidth:bt+K.plotHeight])},vt=gt("y"),Ot=gt("x"),At,$t=!!S.negative;!Mt&&((le=(re=K.hoverSeries)==null?void 0:re.yAxis)!=null&&le.reversed)&&($t=!$t);let Xt=!this.followPointer&&k(S.ttBelow,!Mt&&!dt===$t),Ct=function(Gt,he,ve,Ce,Te,Ke,rn){let un=ct?Gt==="y"?rt(b):lt(b):b,Qt=(ve-Ce)/2,Kt=Cehe?Rt:Rt+nt)}},wt=function(Gt,he,ve,Ce,Te){if(Tehe-b)return!1;Tehe-Ce/2?tt[Gt]=he-Ce-2:tt[Gt]=Te-ve/2},Dt=function(Gt){[vt,Ot]=[Ot,vt],At=Gt},jt=()=>{Ct.apply(0,vt)!==!1?wt.apply(0,Ot)!==!1||At||(Dt(!0),jt()):At?tt.x=tt.y=0:(Dt(!0),jt())};return(dt&&!Mt||this.len>1)&&Dt(),jt(),tt}hide(v){let I=this;X.clearTimeout(this.hideTimer),v=k(v,this.options.hideDelay),this.isHidden||(this.hideTimer=h(function(){let S=I.getLabel();I.getLabel().animate({opacity:0},{duration:v&&150,complete:()=>{S.hide(),I.container&&I.container.remove()}}),I.isHidden=!0},v))}init(v,I){this.chart=v,this.options=I,this.crosshairs=[],this.isHidden=!0,this.split=I.split&&!v.inverted&&!v.polar,this.shared=I.shared||this.split,this.outside=k(I.outside,!!(v.scrollablePixelsX||v.scrollablePixelsY))}shouldStickOnContact(v){return!!(!this.followPointer&&this.options.stickOnContact&&(!v||this.pointer.inClass(v.target,"highcharts-tooltip")))}move(v,I,S,b){let K=this,ct=Z(!K.isHidden&&K.options.animation),et=K.followPointer||(K.len||0)>1,dt={x:v,y:I};et||(dt.anchorX=S,dt.anchorY=b),ct.step=()=>K.drawTracker(),K.getLabel().animate(dt,ct)}refresh(v,I){let{chart:S,options:b,pointer:K,shared:ct}=this,et=C(v),dt=et[0],pt=[],bt=b.format,Mt=b.formatter||this.defaultFormatter,w=S.styledMode,B={},tt=this.allowShared;if(!b.enabled||!dt.series)return;X.clearTimeout(this.hideTimer),this.allowShared=!(!D(v)&&v.series&&v.series.noSharedTooltip),tt=tt&&!this.allowShared,this.followPointer=!this.split&&dt.series.tooltipOptions.followPointer;let nt=this.getAnchor(v,I),x=nt[0],y=nt[1];ct&&this.allowShared?(K.applyInactiveState(et),et.forEach(function(rt){rt.setState("hover"),pt.push(rt.getLabelConfig())}),(B=dt.getLabelConfig()).points=pt):B=dt.getLabelConfig(),this.len=pt.length;let F=Q(bt)?Y(bt,B,S):Mt.call(B,this),lt=dt.series;if(this.distance=k(lt.tooltipOptions.distance,16),F===!1)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(F,et);else{let rt=x,gt=y;if(I&&K.isDirectTouch&&(rt=I.chartX-S.plotLeft,gt=I.chartY-S.plotTop),S.polar||lt.options.clip===!1||et.some(vt=>K.isDirectTouch||vt.series.shouldShowTooltip(rt,gt))){let vt=this.getLabel(tt&&this.tt||{});(!b.style.width||w)&&vt.css({width:(this.outside?this.getPlayingField():S.spacingBox).width+"px"}),vt.attr({class:this.getClassName(dt),text:F&&F.join?F.join(""):F}),this.outside&&vt.attr({x:M(vt.x||0,0,this.getPlayingField().width-(vt.width||0))}),w||vt.attr({stroke:b.borderColor||dt.color||lt.color||"#666666"}),this.updatePosition({plotX:x,plotY:y,negative:dt.negative,ttBelow:dt.ttBelow,h:nt[2]||0})}else{this.hide();return}}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}c(this,"refresh")}renderSplit(v,I){var he;let S=this,{chart:b,chart:{chartWidth:K,chartHeight:ct,plotHeight:et,plotLeft:dt,plotTop:pt,scrollablePixelsY:bt=0,scrollablePixelsX:Mt,styledMode:w},distance:B,options:tt,options:{positioner:nt},pointer:x}=S,{scrollLeft:y=0,scrollTop:F=0}=((he=b.scrollablePlotArea)==null?void 0:he.scrollingContainer)||{},lt=S.outside&&typeof Mt!="number"?N.documentElement.getBoundingClientRect():{left:y,right:y+K,top:F,bottom:F+ct},rt=S.getLabel(),gt=this.renderer||b.renderer,vt=!!(b.xAxis[0]&&b.xAxis[0].opposite),{left:Ot,top:At}=x.getChartPosition(),$t=pt+F,Xt=0,Ct=et-bt;function wt(ve,Ce,Te,Ke,rn=!0){let un,Qt;return Te?(un=vt?0:Ct,Qt=M(ve-Ke/2,lt.left,lt.right-Ke-(S.outside?Ot:0))):(un=Ce-$t,Qt=M(Qt=rn?ve-Ke-B:ve+B,rn?Qt:lt.left,lt.right)),{x:Qt,y:un}}Q(v)&&(v=[!1,v]);let Dt=v.slice(0,I.length+1).reduce(function(ve,Ce,Te){if(Ce!==!1&&Ce!==""){let Ke=I[Te-1]||{isHeader:!0,plotX:I[0].plotX,plotY:et,series:{}},rn=Ke.isHeader,un=rn?S:Ke.series,Qt=un.tt=function(zt,Ft,ce){var pn;let Se=zt,{isHeader:xe,series:Ze}=Ft;if(!Se){let bn={padding:tt.padding,r:tt.borderRadius};w||(bn.fill=tt.backgroundColor,bn["stroke-width"]=(pn=tt.borderWidth)!=null?pn:1),Se=gt.label("",0,0,tt[xe?"headerShape":"shape"],void 0,void 0,tt.useHTML).addClass(S.getClassName(Ft,!0,xe)).attr(bn).add(rt)}return Se.isActive=!0,Se.attr({text:ce}),w||Se.css(tt.style).attr({stroke:tt.borderColor||Ft.color||Ze.color||"#333333"}),Se}(un.tt,Ke,Ce.toString()),Kt=Qt.getBBox(),Jt=Kt.width+Qt.strokeWidth();rn&&(Xt=Kt.height,Ct+=Xt,vt&&($t-=Xt));let{anchorX:Et,anchorY:Rt}=function(zt){let Ft,ce,{isHeader:Se,plotX:xe=0,plotY:Ze=0,series:pn}=zt;if(Se)Ft=Math.max(dt+xe,dt),ce=pt+et/2;else{let{xAxis:bn,yAxis:Ln}=pn;Ft=bn.pos+M(xe,-B,bn.len+B),pn.shouldShowTooltip(0,Ln.pos-pt+Ze,{ignoreX:!0})&&(ce=Ln.pos+Ze)}return{anchorX:Ft=M(Ft,lt.left-B,lt.right+B),anchorY:ce}}(Ke);if(typeof Rt=="number"){let zt=Kt.height+1,Ft=nt?nt.call(S,Jt,zt,Ke):wt(Et,Rt,rn,Jt);ve.push({align:nt?0:void 0,anchorX:Et,anchorY:Rt,boxWidth:Jt,point:Ke,rank:k(Ft.rank,rn?1:0),size:zt,target:Ft.y,tt:Qt,x:Ft.x})}else Qt.isActive=!1}return ve},[]);!nt&&Dt.some(ve=>{let{outside:Ce}=S,Te=(Ce?Ot:0)+ve.anchorX;return TeTe})&&(Dt=Dt.map(ve=>{let{x:Ce,y:Te}=wt(ve.anchorX,ve.anchorY,ve.point.isHeader,ve.boxWidth,!1);return z(ve,{target:Te,x:Ce})})),S.cleanSplit(),T(Dt,Ct);let jt={left:Ot,right:Ot};Dt.forEach(function(ve){let{x:Ce,boxWidth:Te,isHeader:Ke}=ve;!Ke&&(S.outside&&Ot+Cejt.right&&(jt.right=Ot+Ce))}),Dt.forEach(function(ve){let{x:Ce,anchorX:Te,anchorY:Ke,pos:rn,point:{isHeader:un}}=ve,Qt={visibility:rn===void 0?"hidden":"inherit",x:Ce,y:(rn||0)+$t,anchorX:Te,anchorY:Ke};if(S.outside&&Ce0&&(un||(Qt.x=Ce+Kt,Qt.anchorX=Te+Kt),un&&(Qt.x=(jt.right-jt.left)/2,Qt.anchorX=Te+Kt))}ve.tt.attr(Qt)});let{container:re,outside:le,renderer:Gt}=S;if(le&&re&&Gt){let{width:ve,height:Ce,x:Te,y:Ke}=rt.getBBox();Gt.setSize(ve+Te,Ce+Ke,!1),re.style.left=jt.left+"px",re.style.top=At+"px"}U&&rt.attr({opacity:rt.opacity===1?.999:1})}drawTracker(){if(!this.shouldStickOnContact()){this.tracker&&(this.tracker=this.tracker.destroy());return}let v=this.chart,I=this.label,S=this.shared?v.hoverPoints:v.hoverPoint;if(!I||!S)return;let b={x:0,y:0,width:0,height:0},K=this.getAnchor(S),ct=I.getBBox();K[0]+=v.plotLeft-(I.translateX||0),K[1]+=v.plotTop-(I.translateY||0),b.x=Math.min(0,K[0]),b.y=Math.min(0,K[1]),b.width=K[0]<0?Math.max(Math.abs(K[0]),ct.width-K[0]):Math.max(Math.abs(K[0]),ct.width),b.height=K[1]<0?Math.max(Math.abs(K[1]),ct.height-Math.abs(K[1])):Math.max(Math.abs(K[1]),ct.height),this.tracker?this.tracker.attr(b):(this.tracker=I.renderer.rect(b).addClass("highcharts-tracker").add(I),v.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(v){return v.replace('style="font-size: 0.8em"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')}tooltipFooterHeaderFormatter(v,I){let S=v.series,b=S.tooltipOptions,K=S.xAxis,ct=K&&K.dateTime,et={isFooter:I,labelConfig:v},dt=b.xDateFormat,pt=b[I?"footerFormat":"headerFormat"];return c(this,"headerFormatter",et,function(bt){ct&&!dt&&it(v.key)&&(dt=ct.getXDateFormat(v.key,b.dateTimeLabelFormats)),ct&&dt&&(v.point&&v.point.tooltipDateKeys||["key"]).forEach(function(Mt){pt=pt.replace("{point."+Mt+"}","{point."+Mt+":"+dt+"}")}),S.chart.styledMode&&(pt=this.styledModeFormat(pt)),bt.text=Y(pt,{point:v,series:S},this.chart)}),et.text}update(v){this.destroy(),this.init(this.chart,W(!0,this.options,v))}updatePosition(v){let{chart:I,container:S,distance:b,options:K,pointer:ct,renderer:et}=this,{height:dt=0,width:pt=0}=this.getLabel(),{left:bt,top:Mt,scaleX:w,scaleY:B}=ct.getChartPosition(),tt=(K.positioner||this.getPosition).call(this,pt,dt,v),nt=(v.plotX||0)+I.plotLeft,x=(v.plotY||0)+I.plotTop,y;et&&S&&(K.positioner&&(tt.x+=bt-b,tt.y+=Mt-b),y=(K.borderWidth||0)+2*b+2,et.setSize(pt+y,dt+y,!1),(w!==1||B!==1)&&(O(S,{transform:`scale(${w}, ${B})`}),nt*=w,x*=B),nt+=bt-tt.x,x+=Mt-tt.y),this.move(Math.round(tt.x),Math.round(tt.y||0),nt,x)}}return(q=l||(l={})).compose=function(u){_(V,"Core.Tooltip")&&A(u,"afterInit",function(){let v=this.chart;v.options.tooltip&&(v.tooltip=new q(v,v.options.tooltip,this))})},l}),g(d,"Core/Series/Point.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{animObject:X}=R,{defaultOptions:q}=st,{format:Z}=$,{addEvent:Y,crisp:V,erase:N,extend:U,fireEvent:T,getNestedProperty:A,isArray:M,isFunction:O,isNumber:H,isObject:z,merge:c,pick:D,syncTimeout:it,removeEvent:Q,uniqueKey:W}=J;class k{animateBeforeDestroy(){let C=this,h={x:C.startXPos,opacity:0},l=C.getGraphicalProps();l.singular.forEach(function(u){C[u]=C[u].animate(u==="dataLabel"?{x:C[u].startXPos,y:C[u].startYPos,opacity:0}:h)}),l.plural.forEach(function(u){C[u].forEach(function(v){v.element&&v.animate(U({x:C.startXPos},v.startYPos?{x:v.startXPos,y:v.startYPos}:{}))})})}applyOptions(C,h){let l=this.series,u=l.options.pointValKey||l.pointValKey;return U(this,C=k.prototype.optionsToObject.call(this,C)),this.options=this.options?U(this.options,C):C,C.group&&delete this.group,C.dataLabels&&delete this.dataLabels,u&&(this.y=k.prototype.getNestedProperty.call(this,u)),this.selected&&(this.state="select"),"name"in this&&h===void 0&&l.xAxis&&l.xAxis.hasNames&&(this.x=l.xAxis.nameToX(this)),this.x===void 0&&l?this.x=h!=null?h:l.autoIncrement():H(C.x)&&l.options.relativeXValue&&(this.x=l.autoIncrement(C.x)),this.isNull=this.isValid&&!this.isValid(),this.formatPrefix=this.isNull?"null":"point",this}destroy(){if(!this.destroyed){let C=this,h=C.series,l=h.chart,u=h.options.dataSorting,v=l.hoverPoints,I=X(C.series.chart.renderer.globalAnimation),S=()=>{for(let b in(C.graphic||C.graphics||C.dataLabel||C.dataLabels)&&(Q(C),C.destroyElements()),C)delete C[b]};C.legendItem&&l.legend.destroyItem(C),v&&(C.setState(),N(v,C),v.length||(l.hoverPoints=null)),C===l.hoverPoint&&C.onMouseOut(),u&&u.enabled?(this.animateBeforeDestroy(),it(S,I.duration)):S(),l.pointCount--}this.destroyed=!0}destroyElements(C){let h=this,l=h.getGraphicalProps(C);l.singular.forEach(function(u){h[u]=h[u].destroy()}),l.plural.forEach(function(u){h[u].forEach(function(v){v&&v.element&&v.destroy()}),delete h[u]})}firePointEvent(C,h,l){let u=this,v=this.series.options;u.manageEvent(C),C==="click"&&v.allowPointSelect&&(l=function(I){!u.destroyed&&u.select&&u.select(null,I.ctrlKey||I.metaKey||I.shiftKey)}),T(u,C,h,l)}getClassName(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(this.colorIndex!==void 0?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(C){let h,l,u=this,v=[],I={singular:[],plural:[]};for((C=C||{graphic:1,dataLabel:1}).graphic&&v.push("graphic","connector"),C.dataLabel&&v.push("dataLabel","dataLabelPath","dataLabelUpper"),l=v.length;l--;)u[h=v[l]]&&I.singular.push(h);return["graphic","dataLabel"].forEach(function(S){let b=S+"s";C[S]&&u[b]&&I.plural.push(b)}),I}getLabelConfig(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}}getNestedProperty(C){return C?C.indexOf("custom.")===0?A(C,this.options):this[C]:void 0}getZone(){let C=this.series,h=C.zones,l=C.zoneAxis||"y",u,v=0;for(u=h[0];this[l]>=u.value;)u=h[++v];return this.nonZonedColor||(this.nonZonedColor=this.color),u&&u.color&&!this.options.color?this.color=u.color:this.color=this.nonZonedColor,u}hasNewShapeType(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType}constructor(C,h,l){var u;this.formatPrefix="point",this.visible=!0,this.series=C,this.applyOptions(h,l),(u=this.id)!=null||(this.id=W()),this.resolveColor(),C.chart.pointCount++,T(this,"afterInit")}isValid(){return(H(this.x)||this.x instanceof Date)&&H(this.y)}optionsToObject(C){let h=this.series,l=h.options.keys,u=l||h.pointArrayMap||["y"],v=u.length,I={},S,b=0,K=0;if(H(C)||C===null)I[u[0]]=C;else if(M(C))for(!l&&C.length>v&&((S=typeof C[0])=="string"?I.name=C[0]:S==="number"&&(I.x=C[0]),b++);K0?k.prototype.setNestedProperty(I,C[b],u[K]):I[u[K]]=C[b]),b++,K++;else typeof C=="object"&&(I=C,C.dataLabels&&(h.hasDataLabels=()=>!0),C.marker&&(h._hasPointMarkers=!0));return I}pos(C,h=this.plotY){if(!this.destroyed){let{plotX:l,series:u}=this,{chart:v,xAxis:I,yAxis:S}=u,b=0,K=0;if(H(l)&&H(h))return C&&(b=I?I.pos:v.plotLeft,K=S?S.pos:v.plotTop),v.inverted&&I&&S?[S.len-h+K,I.len-l+b]:[l+b,h+K]}}resolveColor(){let C=this.series,h=C.chart.options.chart,l=C.chart.styledMode,u,v,I=h.colorCount,S;delete this.nonZonedColor,C.options.colorByPoint?(l||(u=(v=C.options.colors||C.chart.options.colors)[C.colorCounter],I=v.length),S=C.colorCounter,C.colorCounter++,C.colorCounter===I&&(C.colorCounter=0)):(l||(u=C.color),S=C.colorIndex),this.colorIndex=D(this.options.colorIndex,S),this.color=D(this.options.color,u)}setNestedProperty(C,h,l){return l.split(".").reduce(function(u,v,I,S){let b=S.length-1===I;return u[v]=b?h:z(u[v],!0)?u[v]:{},u[v]},C),C}shouldDraw(){return!this.isNull}tooltipFormatter(C){let h=this.series,l=h.tooltipOptions,u=D(l.valueDecimals,""),v=l.valuePrefix||"",I=l.valueSuffix||"";return h.chart.styledMode&&(C=h.chart.tooltip.styledModeFormat(C)),(h.pointArrayMap||["y"]).forEach(function(S){S="{point."+S,(v||I)&&(C=C.replace(RegExp(S+"}","g"),v+S+"}"+I)),C=C.replace(RegExp(S+"}","g"),S+":,."+u+"f}")}),Z(C,{point:this,series:this.series},h.chart)}update(C,h,l,u){let v,I=this,S=I.series,b=I.graphic,K=S.chart,ct=S.options;function et(){I.applyOptions(C);let dt=b&&I.hasMockGraphic,pt=I.y===null?!dt:dt;b&&pt&&(I.graphic=b.destroy(),delete I.hasMockGraphic),z(C,!0)&&(b&&b.element&&C&&C.marker&&C.marker.symbol!==void 0&&(I.graphic=b.destroy()),C!=null&&C.dataLabels&&I.dataLabel&&(I.dataLabel=I.dataLabel.destroy())),v=I.index,S.updateParallelArrays(I,v),ct.data[v]=z(ct.data[v],!0)||z(C,!0)?I.options:D(C,ct.data[v]),S.isDirty=S.isDirtyData=!0,!S.fixedBox&&S.hasCartesianSeries&&(K.isDirtyBox=!0),ct.legendType==="point"&&(K.isDirtyLegend=!0),h&&K.redraw(l)}h=D(h,!0),u===!1?et():I.firePointEvent("update",{options:C},et)}remove(C,h){this.series.removePoint(this.series.data.indexOf(this),C,h)}select(C,h){let l=this,u=l.series,v=u.chart;C=D(C,!l.selected),this.selectedStaging=C,l.firePointEvent(C?"select":"unselect",{accumulate:h},function(){l.selected=l.options.selected=C,u.options.data[u.data.indexOf(l)]=l.options,l.setState(C&&"select"),h||v.getSelectedPoints().forEach(function(I){let S=I.series;I.selected&&I!==l&&(I.selected=I.options.selected=!1,S.options.data[S.data.indexOf(I)]=I.options,I.setState(v.hoverPoints&&S.options.inactiveOtherPoints?"inactive":""),I.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(C){let{inverted:h,pointer:l}=this.series.chart;l&&(C=C?l.normalize(C):l.getChartCoordinatesFromPoint(this,h),l.runPointActions(C,this))}onMouseOut(){let C=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(C.hoverPoints||[]).forEach(function(h){h.setState()}),C.hoverPoints=C.hoverPoint=null}manageEvent(C){var u,v,I,S,b,K;let h=c(this.series.options.point,this.options),l=(u=h.events)==null?void 0:u[C];O(l)&&(!((v=this.hcEvents)!=null&&v[C])||((S=(I=this.hcEvents)==null?void 0:I[C])==null?void 0:S.map(ct=>ct.fn).indexOf(l))===-1)?((b=this.importedUserEvent)==null||b.call(this),this.importedUserEvent=Y(this,C,l)):this.importedUserEvent&&!l&&((K=this.hcEvents)!=null&&K[C])&&(Q(this,C),delete this.hcEvents[C],Object.keys(this.hcEvents)||delete this.importedUserEvent)}setState(C,h){var F;let l=this.series,u=this.state,v=l.options.states[C||"normal"]||{},I=q.plotOptions[l.type].marker&&l.options.marker,S=I&&I.enabled===!1,b=I&&I.states&&I.states[C||"normal"]||{},K=b.enabled===!1,ct=this.marker||{},et=l.chart,dt=I&&l.markerAttribs,pt=l.halo,bt,Mt,w,B=l.stateMarkerGraphic,tt;if((C=C||"")===this.state&&!h||this.selected&&C!=="select"||v.enabled===!1||C&&(K||S&&b.enabled===!1)||C&&ct.states&&ct.states[C]&&ct.states[C].enabled===!1)return;if(this.state=C,dt&&(bt=l.markerAttribs(this,C)),this.graphic&&!this.hasMockGraphic){if(u&&this.graphic.removeClass("highcharts-point-"+u),C&&this.graphic.addClass("highcharts-point-"+C),!et.styledMode){Mt=l.pointAttribs(this,C),w=D(et.options.chart.animation,v.animation);let lt=Mt.opacity;l.options.inactiveOtherPoints&&H(lt)&&(this.dataLabels||[]).forEach(function(rt){rt&&!rt.hasClass("highcharts-data-label-hidden")&&(rt.animate({opacity:lt},w),rt.connector&&rt.connector.animate({opacity:lt},w))}),this.graphic.animate(Mt,w)}bt&&this.graphic.animate(bt,D(et.options.chart.animation,b.animation,I.animation)),B&&B.hide()}else C&&b&&(tt=ct.symbol||l.symbol,B&&B.currentSymbol!==tt&&(B=B.destroy()),bt&&(B?B[h?"animate":"attr"]({x:bt.x,y:bt.y}):tt&&(l.stateMarkerGraphic=B=et.renderer.symbol(tt,bt.x,bt.y,bt.width,bt.height).add(l.markerGroup),B.currentSymbol=tt)),!et.styledMode&&B&&this.state!=="inactive"&&B.attr(l.pointAttribs(this,C))),B&&(B[C&&this.isInside?"show":"hide"](),B.element.point=this,B.addClass(this.getClassName(),!0));let nt=v.halo,x=this.graphic||B,y=x&&x.visibility||"inherit";nt&&nt.size&&x&&y!=="hidden"&&!this.isCluster?(pt||(l.halo=pt=et.renderer.path().add(x.parentGroup)),pt.show()[h?"animate":"attr"]({d:this.haloPath(nt.size)}),pt.attr({class:"highcharts-halo highcharts-color-"+D(this.colorIndex,l.colorIndex)+(this.className?" "+this.className:""),visibility:y,zIndex:-1}),pt.point=this,et.styledMode||pt.attr(U({fill:this.color||l.color,"fill-opacity":nt.opacity},L.filterUserAttributes(nt.attributes||{})))):(F=pt==null?void 0:pt.point)!=null&&F.haloPath&&!pt.point.destroyed&&pt.animate({d:pt.point.haloPath(0)},null,pt.hide),T(this,"afterSetState",{state:C})}haloPath(C){let h=this.pos();return h?this.series.chart.renderer.symbols.circle(V(h[0],1)-C,h[1]-C,2*C,2*C):[]}}return k}),g(d,"Core/Pointer.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{parse:J}=L,{charts:X,composed:q,isTouchDevice:Z}=R,{addEvent:Y,attr:V,css:N,extend:U,find:T,fireEvent:A,isNumber:M,isObject:O,objectEach:H,offset:z,pick:c,pushUnique:D,splat:it}=st;class Q{applyInactiveState(k){let _=[],C;(k||[]).forEach(function(h){C=h.series,_.push(C),C.linkedParent&&_.push(C.linkedParent),C.linkedSeries&&(_=_.concat(C.linkedSeries)),C.navigatorSeries&&_.push(C.navigatorSeries)}),this.chart.series.forEach(function(h){_.indexOf(h)===-1?h.setState("inactive",!0):h.options.inactiveOtherPoints&&h.setAllPointsToState("inactive")})}destroy(){let k=this;this.eventsToUnbind.forEach(_=>_()),this.eventsToUnbind=[],!R.chartCount&&(Q.unbindDocumentMouseUp&&Q.unbindDocumentMouseUp.forEach(_=>_()),Q.unbindDocumentTouchEnd&&(Q.unbindDocumentTouchEnd=Q.unbindDocumentTouchEnd())),clearInterval(k.tooltipTimeout),H(k,function(_,C){k[C]=void 0})}getSelectionMarkerAttrs(k,_){let C={args:{chartX:k,chartY:_},attrs:{},shapeType:"rect"};return A(this,"getSelectionMarkerAttrs",C,h=>{let l,{chart:u,zoomHor:v,zoomVert:I}=this,{mouseDownX:S=0,mouseDownY:b=0}=u,K=h.attrs;K.x=u.plotLeft,K.y=u.plotTop,K.width=v?1:u.plotWidth,K.height=I?1:u.plotHeight,v&&(l=k-S,K.width=Math.max(1,Math.abs(l)),K.x=(l>0?0:l)+S),I&&(l=_-b,K.height=Math.max(1,Math.abs(l)),K.y=(l>0?0:l)+b)}),C}drag(k){let{chart:_}=this,{mouseDownX:C=0,mouseDownY:h=0}=_,{panning:l,panKey:u,selectionMarkerFill:v}=_.options.chart,I=_.plotLeft,S=_.plotTop,b=_.plotWidth,K=_.plotHeight,ct=O(l)?l.enabled:l,et=u&&k[`${u}Key`],dt=k.chartX,pt=k.chartY,bt,Mt=this.selectionMarker;if((!Mt||!Mt.touch)&&(dtI+b&&(dt=I+b),ptS+K&&(pt=S+K),this.hasDragged=Math.sqrt(Math.pow(C-dt,2)+Math.pow(h-pt,2)),this.hasDragged>10)){bt=_.isInsidePlot(C-I,h-S,{visiblePlotOnly:!0});let{shapeType:w,attrs:B}=this.getSelectionMarkerAttrs(dt,pt);(_.hasCartesianSeries||_.mapView)&&this.hasZoom&&bt&&!et&&!Mt&&(this.selectionMarker=Mt=_.renderer[w](),Mt.attr({class:"highcharts-selection-marker",zIndex:7}).add(),_.styledMode||Mt.attr({fill:v||J("#334eff").setOpacity(.25).get()})),Mt&&Mt.attr(B),bt&&!Mt&&ct&&_.pan(k,l)}}dragStart(k){let _=this.chart;_.mouseIsDown=k.type,_.cancelClick=!1,_.mouseDownX=k.chartX,_.mouseDownY=k.chartY}getSelectionBox(k){let _={args:{marker:k},result:k.getBBox()};return A(this,"getSelectionBox",_),_.result}drop(k){let _,{chart:C,selectionMarker:h}=this;for(let l of C.axes)l.isPanning&&(l.isPanning=!1,(l.options.startOnTick||l.options.endOnTick||l.series.some(u=>u.boosted))&&(l.forceRedraw=!0,l.setExtremes(l.userMin,l.userMax,!1),_=!0));if(_&&C.redraw(),h&&k){if(this.hasDragged){let l=this.getSelectionBox(h);C.transform({axes:C.axes.filter(u=>u.zoomEnabled&&(u.coll==="xAxis"&&this.zoomX||u.coll==="yAxis"&&this.zoomY)),selection:xr({originalEvent:k,xAxis:[],yAxis:[]},l),from:l})}M(C.index)&&(this.selectionMarker=h.destroy())}C&&M(C.index)&&(N(C.container,{cursor:C._cursor}),C.cancelClick=this.hasDragged>10,C.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(k,_,C){let h;return k.forEach(function(l){let u=!(l.noSharedTooltip&&_)&&0>l.options.findNearestPointBy.indexOf("y"),v=l.searchPoint(C,u);O(v,!0)&&v.series&&(!O(h,!0)||function(I,S){var et,dt;let b=I.distX-S.distX,K=I.dist-S.dist,ct=((et=S.series.group)==null?void 0:et.zIndex)-((dt=I.series.group)==null?void 0:dt.zIndex);return b!==0&&_?b:K!==0?K:ct!==0?ct:I.series.index>S.series.index?-1:1}(h,v)>0)&&(h=v)}),h}getChartCoordinatesFromPoint(k,_){var u,v;let{xAxis:C,yAxis:h}=k.series,l=k.shapeArgs;if(C&&h){let I=(v=(u=k.clientX)!=null?u:k.plotX)!=null?v:0,S=k.plotY||0;return k.isNode&&l&&M(l.x)&&M(l.y)&&(I=l.x,S=l.y),_?{chartX:h.len+h.pos-S,chartY:C.len+C.pos-I}:{chartX:I+C.pos,chartY:S+h.pos}}if(l&&l.x&&l.y)return{chartX:l.x,chartY:l.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:k}=this.chart,_=z(k);this.chartPosition={left:_.left,top:_.top,scaleX:1,scaleY:1};let{offsetHeight:C,offsetWidth:h}=k;return h>2&&C>2&&(this.chartPosition.scaleX=_.width/h,this.chartPosition.scaleY=_.height/C),this.chartPosition}getCoordinates(k){let _={xAxis:[],yAxis:[]};for(let C of this.chart.axes)_[C.isXAxis?"xAxis":"yAxis"].push({axis:C,value:C.toValue(k[C.horiz?"chartX":"chartY"])});return _}getHoverData(k,_,C,h,l,u){let v=[],I=function(et){return et.visible&&!(!l&&et.directTouch)&&c(et.options.enableMouseTracking,!0)},S=_,b,K={chartX:u?u.chartX:void 0,chartY:u?u.chartY:void 0,shared:l};A(this,"beforeGetHoverData",K),b=S&&!S.stickyTracking?[S]:C.filter(et=>et.stickyTracking&&(K.filter||I)(et));let ct=h&&k||!u?k:this.findNearestKDPoint(b,l,u);return S=ct&&ct.series,ct&&(l&&!S.noSharedTooltip?(b=C.filter(function(et){return K.filter?K.filter(et):I(et)&&!et.noSharedTooltip})).forEach(function(et){let dt=T(et.points,function(pt){return pt.x===ct.x&&!pt.isNull});O(dt)&&(et.boosted&&et.boost&&(dt=et.boost.getPoint(dt)),v.push(dt))}):v.push(ct)),A(this,"afterGetHoverData",K={hoverPoint:ct}),{hoverPoint:K.hoverPoint,hoverSeries:S,hoverPoints:v}}getPointFromEvent(k){let _=k.target,C;for(;_&&!C;)C=_.point,_=_.parentNode;return C}onTrackerMouseOut(k){let _=this.chart,C=k.relatedTarget,h=_.hoverSeries;this.isDirectTouch=!1,!h||!C||h.stickyTracking||this.inClass(C,"highcharts-tooltip")||this.inClass(C,"highcharts-series-"+h.index)&&this.inClass(C,"highcharts-tracker")||h.onMouseOut()}inClass(k,_){let C=k,h;for(;C;){if(h=V(C,"class")){if(h.indexOf(_)!==-1)return!0;if(h.indexOf("highcharts-container")!==-1)return!1}C=C.parentElement}}constructor(k,_){var C;this.hasDragged=0,this.pointerCaptureEventsToUnbind=[],this.eventsToUnbind=[],this.options=_,this.chart=k,this.runChartClick=!!((C=_.chart.events)!=null&&C.click),this.pinchDown=[],this.setDOMEvents(),A(this,"afterInit")}normalize(k,_){let C=k.touches,h=C?C.length?C.item(0):c(C.changedTouches,k.changedTouches)[0]:k;_||(_=this.getChartPosition());let l=h.pageX-_.left,u=h.pageY-_.top;return U(k,{chartX:Math.round(l/=_.scaleX),chartY:Math.round(u/=_.scaleY)})}onContainerClick(k){let _=this.chart,C=_.hoverPoint,h=this.normalize(k),l=_.plotLeft,u=_.plotTop;!_.cancelClick&&(C&&this.inClass(h.target,"highcharts-tracker")?(A(C.series,"click",U(h,{point:C})),_.hoverPoint&&C.firePointEvent("click",h)):(U(h,this.getCoordinates(h)),_.isInsidePlot(h.chartX-l,h.chartY-u,{visiblePlotOnly:!0})&&A(_,"click",h)))}onContainerMouseDown(k){var C;let _=(1&(k.buttons||k.button))==1;k=this.normalize(k),R.isFirefox&&k.button!==0&&this.onContainerMouseMove(k),(k.button===void 0||_)&&(this.zoomOption(k),_&&((C=k.preventDefault)==null||C.call(k)),this.dragStart(k))}onContainerMouseLeave(k){let{pointer:_}=X[c(Q.hoverChartIndex,-1)]||{};k=this.normalize(k),this.onContainerMouseMove(k),_&&!this.inClass(k.relatedTarget,"highcharts-tooltip")&&(_.reset(),_.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(k){let _=this.chart,C=_.tooltip,h=this.normalize(k);this.setHoverChartIndex(k),(_.mouseIsDown==="mousedown"||this.touchSelect(h))&&this.drag(h),!_.openMenu&&(this.inClass(h.target,"highcharts-tracker")||_.isInsidePlot(h.chartX-_.plotLeft,h.chartY-_.plotTop,{visiblePlotOnly:!0}))&&!(C&&C.shouldStickOnContact(h))&&(this.inClass(h.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(h))}onDocumentTouchEnd(k){this.onDocumentMouseUp(k)}onContainerTouchMove(k){this.touchSelect(k)?this.onContainerMouseMove(k):this.touch(k)}onContainerTouchStart(k){this.touchSelect(k)?this.onContainerMouseDown(k):(this.zoomOption(k),this.touch(k,!0))}onDocumentMouseMove(k){let _=this.chart,C=_.tooltip,h=this.chartPosition,l=this.normalize(k,h);!h||_.isInsidePlot(l.chartX-_.plotLeft,l.chartY-_.plotTop,{visiblePlotOnly:!0})||C&&C.shouldStickOnContact(l)||l.target!==_.container.ownerDocument&&this.inClass(l.target,"highcharts-tracker")||this.reset()}onDocumentMouseUp(k){var _,C;(C=(_=X[c(Q.hoverChartIndex,-1)])==null?void 0:_.pointer)==null||C.drop(k)}pinch(k){let _=this,{chart:C,hasZoom:h,lastTouches:l}=_,u=[].map.call(k.touches||[],K=>_.normalize(K)),v=u.length,I=v===1&&(_.inClass(k.target,"highcharts-tracker")&&C.runTrackerClick||_.runChartClick),S=C.tooltip,b=v===1&&c(S==null?void 0:S.options.followTouchMove,!0);v>1?_.initiated=!0:b&&(_.initiated=!1),h&&_.initiated&&!I&&k.cancelable!==!1&&k.preventDefault(),k.type==="touchstart"?(_.pinchDown=u,_.res=!0,C.mouseDownX=k.chartX):b?this.runPointActions(_.normalize(k)):l&&(A(C,"touchpan",{originalEvent:k,touches:u},()=>{let K=ct=>{let et=ct[0],dt=ct[1]||et;return{x:et.chartX,y:et.chartY,width:dt.chartX-et.chartX,height:dt.chartY-et.chartY}};C.transform({axes:C.axes.filter(ct=>ct.zoomEnabled&&(this.zoomHor&&ct.horiz||this.zoomVert&&!ct.horiz)),to:K(u),from:K(l),trigger:k.type})}),_.res&&(_.res=!1,this.reset(!1,0))),_.lastTouches=u}reset(k,_){let C=this.chart,h=C.hoverSeries,l=C.hoverPoint,u=C.hoverPoints,v=C.tooltip,I=v&&v.shared?u:l;k&&I&&it(I).forEach(function(S){S.series.isCartesian&&S.plotX===void 0&&(k=!1)}),k?v&&I&&it(I).length&&(v.refresh(I),v.shared&&u?u.forEach(function(S){S.setState(S.state,!0),S.series.isCartesian&&(S.series.xAxis.crosshair&&S.series.xAxis.drawCrosshair(null,S),S.series.yAxis.crosshair&&S.series.yAxis.drawCrosshair(null,S))}):l&&(l.setState(l.state,!0),C.axes.forEach(function(S){S.crosshair&&l.series[S.coll]===S&&S.drawCrosshair(null,l)}))):(l&&l.onMouseOut(),u&&u.forEach(function(S){S.setState()}),h&&h.onMouseOut(),v&&v.hide(_),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),C.axes.forEach(function(S){S.hideCrosshair()}),C.hoverPoints=C.hoverPoint=void 0)}runPointActions(k,_,C){let h=this.chart,l=h.series,u=h.tooltip&&h.tooltip.options.enabled?h.tooltip:void 0,v=!!u&&u.shared,I=_||h.hoverPoint,S=I&&I.series||h.hoverSeries,b=(!k||k.type!=="touchmove")&&(!!_||S&&S.directTouch&&this.isDirectTouch),K=this.getHoverData(I,S,l,b,v,k);I=K.hoverPoint,S=K.hoverSeries;let ct=K.hoverPoints,et=S&&S.tooltipOptions.followPointer&&!S.tooltipOptions.split,dt=v&&S&&!S.noSharedTooltip;if(I&&(C||I!==h.hoverPoint||u&&u.isHidden)){if((h.hoverPoints||[]).forEach(function(pt){ct.indexOf(pt)===-1&&pt.setState()}),h.hoverSeries!==S&&S.onMouseOver(),this.applyInactiveState(ct),(ct||[]).forEach(function(pt){pt.setState("hover")}),h.hoverPoint&&h.hoverPoint.firePointEvent("mouseOut"),!I.series)return;h.hoverPoints=ct,h.hoverPoint=I,I.firePointEvent("mouseOver",void 0,()=>{u&&I&&u.refresh(dt?ct:I,k)})}else if(et&&u&&!u.isHidden){let pt=u.getAnchor([{}],k);h.isInsidePlot(pt[0],pt[1],{visiblePlotOnly:!0})&&u.updatePosition({plotX:pt[0],plotY:pt[1]})}this.unDocMouseMove||(this.unDocMouseMove=Y(h.container.ownerDocument,"mousemove",pt=>{var bt,Mt,w;return(w=(Mt=X[(bt=Q.hoverChartIndex)!=null?bt:-1])==null?void 0:Mt.pointer)==null?void 0:w.onDocumentMouseMove(pt)}),this.eventsToUnbind.push(this.unDocMouseMove)),h.axes.forEach(function(pt){let bt,Mt=c((pt.crosshair||{}).snap,!0);!Mt||(bt=h.hoverPoint)&&bt.series[pt.coll]===pt||(bt=T(ct,w=>w.series&&w.series[pt.coll]===pt)),bt||!Mt?pt.drawCrosshair(k,bt):pt.hideCrosshair()})}setDOMEvents(){let k=this.chart.container,_=k.ownerDocument;k.onmousedown=this.onContainerMouseDown.bind(this),k.onmousemove=this.onContainerMouseMove.bind(this),k.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(Y(k,"mouseenter",this.onContainerMouseEnter.bind(this)),Y(k,"mouseleave",this.onContainerMouseLeave.bind(this))),Q.unbindDocumentMouseUp||(Q.unbindDocumentMouseUp=[]),Q.unbindDocumentMouseUp.push(Y(_,"mouseup",this.onDocumentMouseUp.bind(this)));let C=this.chart.renderTo.parentElement;for(;C&&C.tagName!=="BODY";)this.eventsToUnbind.push(Y(C,"scroll",()=>{delete this.chartPosition})),C=C.parentElement;this.eventsToUnbind.push(Y(k,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),Y(k,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),Q.unbindDocumentTouchEnd||(Q.unbindDocumentTouchEnd=Y(_,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})),this.setPointerCapture(),Y(this.chart,"redraw",this.setPointerCapture.bind(this))}setPointerCapture(){var l,u;if(!Z)return;let k=this.pointerCaptureEventsToUnbind,_=this.chart,C=_.container,h=c((l=_.options.tooltip)==null?void 0:l.followTouchMove,!0)&&_.series.some(v=>v.options.findNearestPointBy.indexOf("y")>-1);!this.hasPointerCapture&&h?(k.push(Y(C,"pointerdown",v=>{var I,S;(I=v.target)!=null&&I.hasPointerCapture(v.pointerId)&&((S=v.target)==null||S.releasePointerCapture(v.pointerId))}),Y(C,"pointermove",v=>{var I,S;(S=(I=_.pointer)==null?void 0:I.getPointFromEvent(v))==null||S.onMouseOver(v)})),_.styledMode||N(C,{"touch-action":"none"}),C.className+=" highcharts-no-touch-action",this.hasPointerCapture=!0):this.hasPointerCapture&&!h&&(k.forEach(v=>v()),k.length=0,_.styledMode||N(C,{"touch-action":c((u=_.options.chart.style)==null?void 0:u["touch-action"],"manipulation")}),C.className=C.className.replace(" highcharts-no-touch-action",""),this.hasPointerCapture=!1)}setHoverChartIndex(k){var h;let _=this.chart,C=R.charts[c(Q.hoverChartIndex,-1)];if(C&&C!==_){let l={relatedTarget:_.container};k&&!(k!=null&&k.relatedTarget)&&(k=xr(xr({},l),k)),(h=C.pointer)==null||h.onContainerMouseLeave(k||l)}C&&C.mouseIsDown||(Q.hoverChartIndex=_.index)}touch(k,_){let C,{chart:h,pinchDown:l=[]}=this;this.setHoverChartIndex(),(k=this.normalize(k)).touches.length===1?h.isInsidePlot(k.chartX-h.plotLeft,k.chartY-h.plotTop,{visiblePlotOnly:!0})&&!h.openMenu?(_&&this.runPointActions(k),k.type==="touchmove"&&(C=!!l[0]&&Math.pow(l[0].chartX-k.chartX,2)+Math.pow(l[0].chartY-k.chartY,2)>=16),c(C,!0)&&this.pinch(k)):_&&this.reset():k.touches.length===2&&this.pinch(k)}touchSelect(k){return!!(this.chart.zooming.singleTouch&&k.touches&&k.touches.length===1)}zoomOption(k){let _=this.chart,C=_.inverted,h=_.zooming.type||"",l,u;/touch/.test(k.type)&&(h=c(_.zooming.pinchType,h)),this.zoomX=l=/x/.test(h),this.zoomY=u=/y/.test(h),this.zoomHor=l&&!C||u&&C,this.zoomVert=u&&!C||l&&C,this.hasZoom=l||u}}return($=Q||(Q={})).compose=function(W){D(q,"Core.Pointer")&&Y(W,"beforeRender",function(){this.pointer=new $(this,this.options)})},Q}),g(d,"Core/Legend/LegendSymbol.js",[d["Core/Utilities.js"]],function(L){var R;let{extend:st,merge:$,pick:J}=L;return function(X){function q(Z,Y,V){var C,h;let N=this.legendItem=this.legendItem||{},{chart:U,options:T}=this,{baseline:A=0,symbolWidth:M,symbolHeight:O}=Z,H=this.symbol||"circle",z=O/2,c=U.renderer,D=N.group,it=A-Math.round((((C=Z.fontMetrics)==null?void 0:C.b)||O)*(V?.4:.3)),Q={},W,k=T.marker,_=0;if(U.styledMode||(Q["stroke-width"]=Math.min(T.lineWidth||0,24),T.dashStyle?Q.dashstyle=T.dashStyle:T.linecap==="square"||(Q["stroke-linecap"]="round")),N.line=c.path().addClass("highcharts-graph").attr(Q).add(D),V&&(N.area=c.path().addClass("highcharts-area").add(D)),Q["stroke-linecap"]&&(_=Math.min(N.line.strokeWidth(),M)/2),M){let l=[["M",_,it],["L",M-_,it]];N.line.attr({d:l}),(h=N.area)==null||h.attr({d:[...l,["L",M-_,A],["L",_,A]]})}if(k&&k.enabled!==!1&&M){let l=Math.min(J(k.radius,z),z);H.indexOf("url")===0&&(k=$(k,{width:O,height:O}),l=0),N.symbol=W=c.symbol(H,M/2-l,it-l,2*l,2*l,st({context:"legend"},k)).addClass("highcharts-point").add(D),W.isMarker=!0}}X.areaMarker=function(Z,Y){q.call(this,Z,Y,!0)},X.lineMarker=q,X.rectangle=function(Z,Y){let V=Y.legendItem||{},N=Z.options,U=Z.symbolHeight,T=N.squareSymbol,A=T?U:Z.symbolWidth;V.symbol=this.chart.renderer.rect(T?(Z.symbolWidth-U)/2:0,Z.baseline-U+1,A,U,J(Z.options.symbolRadius,U/2)).addClass("highcharts-point").attr({zIndex:3}).add(V.group)}}(R||(R={})),R}),g(d,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:L}=this.series.chart;return typeof this.y!="number"?"":L(this.y,-1)},padding:5,style:{fontSize:"0.7em",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),g(d,"Core/Series/SeriesRegistry.js",[d["Core/Globals.js"],d["Core/Defaults.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{defaultOptions:X}=R,{extend:q,extendClass:Z,merge:Y}=$;return function(V){function N(U,T){let A=X.plotOptions||{},M=T.defaultOptions,O=T.prototype;return O.type=U,O.pointClass||(O.pointClass=st),!V.seriesTypes[U]&&(M&&(A[U]=M),V.seriesTypes[U]=T,!0)}V.seriesTypes=L.seriesTypes,V.registerSeriesType=N,V.seriesType=function(U,T,A,M,O){let H=X.plotOptions||{};if(T=T||"",H[U]=Y(H[T],A),delete V.seriesTypes[U],N(U,Z(V.seriesTypes[T]||function(){},M)),V.seriesTypes[U].prototype.type=U,O){class z extends st{}q(z.prototype,O),V.seriesTypes[U].prototype.pointClass=z}return V.seriesTypes[U]}}(J||(J={})),J}),g(d,"Core/Series/Series.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Series/Point.js"],d["Core/Series/SeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let{animObject:N,setAnimation:U}=L,{defaultOptions:T}=R,{registerEventOptions:A}=st,{svg:M,win:O}=$,{seriesTypes:H}=Z,{arrayMax:z,arrayMin:c,clamp:D,correctFloat:it,crisp:Q,defined:W,destroyObjectProperties:k,diffObjects:_,erase:C,error:h,extend:l,find:u,fireEvent:v,getClosestDistance:I,getNestedProperty:S,insertItem:b,isArray:K,isNumber:ct,isString:et,merge:dt,objectEach:pt,pick:bt,removeEvent:Mt,splat:w,syncTimeout:B}=V;class tt{constructor(){this.zoneAxis="y"}init(x,y){let F;v(this,"init",{options:y});let lt=this,rt=x.series;this.eventsToUnbind=[],lt.chart=x,lt.options=lt.setOptions(y);let gt=lt.options,vt=gt.visible!==!1;lt.linkedSeries=[],lt.bindAxes(),l(lt,{name:gt.name,state:"",visible:vt,selected:gt.selected===!0}),A(this,gt);let Ot=gt.events;(Ot&&Ot.click||gt.point&>.point.events&>.point.events.click||gt.allowPointSelect)&&(x.runTrackerClick=!0),lt.getColor(),lt.getSymbol(),lt.parallelArrays.forEach(function(At){lt[At+"Data"]||(lt[At+"Data"]=[])}),lt.isCartesian&&(x.hasCartesianSeries=!0),rt.length&&(F=rt[rt.length-1]),lt._i=bt(F&&F._i,-1)+1,lt.opacity=lt.options.opacity,x.orderItems("series",b(this,rt)),gt.dataSorting&>.dataSorting.enabled?lt.setDataSortingOptions():lt.points||lt.data||lt.setData(gt.data,!1),v(this,"afterInit")}is(x){return H[x]&&this instanceof H[x]}bindAxes(){let x,y=this,F=y.options,lt=y.chart;v(this,"bindAxes",null,function(){(y.axisTypes||[]).forEach(function(rt){(lt[rt]||[]).forEach(function(gt){x=gt.options,(bt(F[rt],0)===gt.index||F[rt]!==void 0&&F[rt]===x.id)&&(b(y,gt.series),y[rt]=gt,gt.isDirty=!0)}),y[rt]||y.optionalAxis===rt||h(18,!0,lt)})}),v(this,"afterBindAxes")}updateParallelArrays(x,y,F){let lt=x.series,rt=ct(y)?function(gt){let vt=gt==="y"&<.toYData?lt.toYData(x):x[gt];lt[gt+"Data"][y]=vt}:function(gt){Array.prototype[y].apply(lt[gt+"Data"],F)};lt.parallelArrays.forEach(rt)}hasData(){return this.visible&&this.dataMax!==void 0&&this.dataMin!==void 0||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(x,y){let F=x.marker,lt=y.marker||{};return F&&(lt.enabled&&!F.enabled||lt.symbol!==F.symbol||lt.height!==F.height||lt.width!==F.width)}autoIncrement(x){let y=this.options,F=y.pointIntervalUnit,lt=y.relativeXValue,rt=this.chart.time,gt=this.xIncrement,vt,Ot;return gt=bt(gt,y.pointStart,0),this.pointInterval=Ot=bt(this.pointInterval,y.pointInterval,1),lt&&ct(x)&&(Ot*=x),F&&(vt=new rt.Date(gt),F==="day"?rt.set("Date",vt,rt.get("Date",vt)+Ot):F==="month"?rt.set("Month",vt,rt.get("Month",vt)+Ot):F==="year"&&rt.set("FullYear",vt,rt.get("FullYear",vt)+Ot),Ot=vt.getTime()-gt),lt&&ct(x)?gt+Ot:(this.xIncrement=gt+Ot,gt)}setDataSortingOptions(){let x=this.options;l(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),W(x.pointRange)||(x.pointRange=1)}setOptions(x){var re,le;let y,F=this.chart,lt=F.options.plotOptions,rt=F.userOptions||{},gt=dt(x),vt=F.styledMode,Ot={plotOptions:lt,userOptions:gt};v(this,"setOptions",Ot);let At=Ot.plotOptions[this.type],$t=rt.plotOptions||{},Xt=$t.series||{},Ct=T.plotOptions[this.type]||{},wt=$t[this.type]||{};this.userOptions=Ot.userOptions;let Dt=dt(At,lt.series,wt,gt);this.tooltipOptions=dt(T.tooltip,(re=T.plotOptions.series)==null?void 0:re.tooltip,Ct==null?void 0:Ct.tooltip,F.userOptions.tooltip,(le=$t.series)==null?void 0:le.tooltip,wt.tooltip,gt.tooltip),this.stickyTracking=bt(gt.stickyTracking,wt.stickyTracking,Xt.stickyTracking,!!this.tooltipOptions.shared&&!this.noSharedTooltip||Dt.stickyTracking),At.marker===null&&delete Dt.marker,this.zoneAxis=Dt.zoneAxis||"y";let jt=this.zones=(Dt.zones||[]).map(Gt=>xr({},Gt));return(Dt.negativeColor||Dt.negativeFillColor)&&!Dt.zones&&(y={value:Dt[this.zoneAxis+"Threshold"]||Dt.threshold||0,className:"highcharts-negative"},vt||(y.color=Dt.negativeColor,y.fillColor=Dt.negativeFillColor),jt.push(y)),jt.length&&W(jt[jt.length-1].value)&&jt.push(vt?{}:{color:this.color,fillColor:this.fillColor}),v(this,"afterSetOptions",{options:Dt}),Dt}getName(){return bt(this.options.name,"Series "+(this.index+1))}getCyclic(x,y,F){let lt,rt,gt=this.chart,vt=`${x}Index`,Ot=`${x}Counter`,At=(F==null?void 0:F.length)||gt.options.chart.colorCount;!y&&(W(rt=bt(x==="color"?this.options.colorIndex:void 0,this[vt]))?lt=rt:(gt.series.length||(gt[Ot]=0),lt=gt[Ot]%At,gt[Ot]+=1),F&&(y=F[lt])),lt!==void 0&&(this[vt]=lt),this[x]=y}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||T.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let x=this.options.marker;this.getCyclic("symbol",x.symbol,this.chart.options.symbols)}findPointIndex(x,y){let F,lt,rt,gt=x.id,vt=x.x,Ot=this.points,At=this.options.dataSorting;if(gt){let $t=this.chart.get(gt);$t instanceof X&&(F=$t)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let $t=Xt=>!Xt.touched&&Xt.index===x.index;if(At&&At.matchByName?$t=Xt=>!Xt.touched&&Xt.name===x.name:this.options.relativeXValue&&($t=Xt=>!Xt.touched&&Xt.options.x===x.x),!(F=u(Ot,$t)))return}return F&&(rt=F&&F.index)!==void 0&&(lt=!0),rt===void 0&&ct(vt)&&(rt=this.xData.indexOf(vt,y)),rt!==-1&&rt!==void 0&&this.cropped&&(rt=rt>=this.cropStart?rt-this.cropStart:rt),!lt&&ct(rt)&&Ot[rt]&&Ot[rt].touched&&(rt=void 0),rt}updateData(x,y){let F=this.options,lt=F.dataSorting,rt=this.points,gt=[],vt=this.requireSorting,Ot=x.length===rt.length,At,$t,Xt,Ct,wt=!0;if(this.xIncrement=null,x.forEach(function(Dt,jt){let re,le=W(Dt)&&this.pointClass.prototype.optionsToObject.call({series:this},Dt)||{},Gt=le.x;le.id||ct(Gt)?((re=this.findPointIndex(le,Ct))===-1||re===void 0?gt.push(Dt):rt[re]&&Dt!==F.data[re]?(rt[re].update(Dt,!1,null,!1),rt[re].touched=!0,vt&&(Ct=re+1)):rt[re]&&(rt[re].touched=!0),(!Ot||jt!==re||lt&<.enabled||this.hasDerivedData)&&(At=!0)):gt.push(Dt)},this),At)for($t=rt.length;$t--;)(Xt=rt[$t])&&!Xt.touched&&Xt.remove&&Xt.remove(!1,y);else!Ot||lt&<.enabled?wt=!1:(x.forEach(function(Dt,jt){Dt===rt[jt].y||rt[jt].destroyed||rt[jt].update(Dt,!1,null,!1)}),gt.length=0);return rt.forEach(function(Dt){Dt&&(Dt.touched=!1)}),!!wt&&(gt.forEach(function(Dt){this.addPoint(Dt,!1,null,null,!1)},this),this.xIncrement===null&&this.xData&&this.xData.length&&(this.xIncrement=z(this.xData),this.autoIncrement()),!0)}setData(x,y=!0,F,lt){var un;let rt=this,gt=rt.points,vt=gt&>.length||0,Ot=rt.options,At=rt.chart,$t=Ot.dataSorting,Xt=rt.xAxis,Ct=Ot.turboThreshold,wt=this.xData,Dt=this.yData,jt=rt.pointArrayMap,re=jt&&jt.length,le=Ot.keys,Gt,he,ve,Ce=0,Te=1,Ke;At.options.chart.allowMutatingData||(Ot.data&&delete rt.options.data,rt.userOptions.data&&delete rt.userOptions.data,Ke=dt(!0,x));let rn=(x=Ke||x||[]).length;if($t&&$t.enabled&&(x=this.sortData(x)),At.options.chart.allowMutatingData&<!==!1&&rn&&vt&&!rt.cropped&&!rt.hasGroupedData&&rt.visible&&!rt.boosted&&(ve=this.updateData(x,F)),!ve){rt.xIncrement=null,rt.colorCounter=0,this.parallelArrays.forEach(function(Kt){rt[Kt+"Data"].length=0});let Qt=Ct&&rn>Ct;if(Qt){let Kt=rt.getFirstValidPoint(x),Jt=rt.getFirstValidPoint(x,rn-1,-1),Et=Rt=>!!(K(Rt)&&(le||ct(Rt[0])));if(ct(Kt)&&ct(Jt))for(Gt=0;Gt=0?Ce:0,Te=Te>=0?Te:1),Kt.length===1&&(Te=0),Ce===Te)for(Gt=0;Gt{let vt=S(F,rt),Ot=S(F,gt);return Otvt?1:0}).forEach(function(rt,gt){rt.x=gt},this),y.linkedSeries&&y.linkedSeries.forEach(function(rt){let gt=rt.options,vt=gt.data;gt.dataSorting&>.dataSorting.enabled||!vt||(vt.forEach(function(Ot,At){vt[At]=lt(rt,Ot),x[At]&&(vt[At].x=x[At].x,vt[At].index=At)}),rt.setData(vt,!1))}),x}getProcessedData(x){let y=this,F=y.xAxis,lt=y.options.cropThreshold,rt=F==null?void 0:F.logarithmic,gt=y.isCartesian,vt,Ot,At=0,$t,Xt,Ct,wt=y.xData,Dt=y.yData,jt=!1,re=wt.length;F&&(Xt=($t=F.getExtremes()).min,Ct=$t.max,jt=!!(F.categories&&!F.names.length)),gt&&y.sorted&&!x&&(!lt||re>lt||y.forceCrop)&&(wt[re-1]Ct?(wt=[],Dt=[]):y.yData&&(wt[0]Ct)&&(wt=(vt=this.cropData(y.xData,y.yData,Xt,Ct)).xData,Dt=vt.yData,At=vt.start,Ot=!0));let le=I([rt?wt.map(rt.log2lin):wt],()=>y.requireSorting&&!jt&&h(15,!1,y.chart));return{xData:wt,yData:Dt,cropped:Ot,cropStart:At,closestPointRange:le}}processData(x){let y=this.xAxis;if(this.isCartesian&&!this.isDirty&&!y.isDirty&&!this.yAxis.isDirty&&!x)return!1;let F=this.getProcessedData();this.cropped=F.cropped,this.cropStart=F.cropStart,this.processedXData=F.xData,this.processedYData=F.yData,this.closestPointRange=this.basePointRange=F.closestPointRange,v(this,"afterProcessData")}cropData(x,y,F,lt){let rt=x.length,gt,vt,Ot=0,At=rt;for(gt=0;gt=F){Ot=Math.max(0,gt-1);break}for(vt=gt;vtlt){At=vt+1;break}return{xData:x.slice(Ot,At),yData:y.slice(Ot,At),start:Ot,end:At}}generatePoints(){let x=this.options,y=this.processedData||x.data,F=this.processedXData,lt=this.processedYData,rt=this.pointClass,gt=F.length,vt=this.cropStart||0,Ot=this.hasGroupedData,At=x.keys,$t=[],Xt=x.dataGrouping&&x.dataGrouping.groupAll?vt:0,Ct,wt,Dt,jt,re=this.data;if(!re&&!Ot){let le=[];le.length=y.length,re=this.data=le}for(At&&Ot&&(this.options.keys=!1),jt=0;jt0:jt.length)||!vt),wt=y||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!F||(Te[re+gt]||Dt)>=Gt&&(Te[re-gt]||Dt)<=he,Ct&&wt)if(le=jt.length)for(;le--;)ct(jt[le])&&(rt[ve++]=jt[le]);else rt[ve++]=jt;let Ke={activeYData:rt,dataMin:c(rt),dataMax:z(rt)};return v(this,"afterGetExtremes",{dataExtremes:Ke}),Ke}applyExtremes(){let x=this.getExtremes();return this.dataMin=x.dataMin,this.dataMax=x.dataMax,x}getFirstValidPoint(x,y=0,F=1){let lt=x.length,rt=y;for(;rt>=0&&rt1)&&(gt.step=function(Ct,wt){Xt&&Xt.apply(wt,arguments),wt.prop==="width"&&(At!=null&&At.element)&&At.attr(rt?"height":"width",Ct+99)}),Ot.addClass("highcharts-animating").animate($t,gt)}}afterAnimate(){this.setClip(),pt(this.chart.sharedClips,(x,y,F)=>{x&&!this.chart.container.querySelector(`[clip-path="url(#${x.id})"]`)&&(x.destroy(),delete F[y])}),this.finishedAnimating=!0,v(this,"afterAnimate")}drawPoints(x=this.points){let y,F,lt,rt,gt,vt,Ot,At=this.chart,$t=At.styledMode,{colorAxis:Xt,options:Ct}=this,wt=Ct.marker,Dt=this[this.specialGroup||"markerGroup"],jt=this.xAxis,re=bt(wt.enabled,!jt||!!jt.isRadial||null,this.closestPointRangePx>=wt.enabledThreshold*wt.radius);if(wt.enabled!==!1||this._hasPointMarkers)for(y=0;y0||F.hasImage)&&(F.graphic=lt=At.renderer.symbol(le,Ot.x,Ot.y,Ot.width,Ot.height,vt?gt:wt).add(Dt),this.enabledDataSorting&&At.hasRendered&&(lt.attr({x:F.startXPos}),rt="animate")),lt&&rt==="animate"&<[Gt?"show":"hide"](Gt).animate(Ot),lt){let he=this.pointAttribs(F,$t||!F.selected?void 0:"select");$t?Xt&<.css({fill:he.fill}):lt[rt](he)}lt&<.addClass(F.getClassName(),!0)}else lt&&(F.graphic=lt.destroy())}markerAttribs(x,y){let F=this.options,lt=F.marker,rt=x.marker||{},gt=rt.symbol||lt.symbol,vt={},Ot,At,$t=bt(rt.radius,lt&<.radius);y&&(Ot=lt.states[y],$t=bt((At=rt.states&&rt.states[y])&&At.radius,Ot&&Ot.radius,$t&&$t+(Ot&&Ot.radiusPlus||0))),x.hasImage=gt&>.indexOf("url")===0,x.hasImage&&($t=0);let Xt=x.pos();return ct($t)&&Xt&&(F.crisp&&(Xt[0]=Q(Xt[0],x.hasImage?0:gt==="rect"?(lt==null?void 0:lt.lineWidth)||0:1)),vt.x=Xt[0]-$t,vt.y=Xt[1]-$t),$t&&(vt.width=vt.height=2*$t),vt}pointAttribs(x,y){let F=this.options.marker,lt=x&&x.options,rt=lt&<.marker||{},gt=lt&<.color,vt=x&&x.color,Ot=x&&x.zone&&x.zone.color,At,$t,Xt=this.color,Ct,wt,Dt=bt(rt.lineWidth,F.lineWidth),jt=1;return Xt=gt||Ot||vt||Xt,Ct=rt.fillColor||F.fillColor||Xt,wt=rt.lineColor||F.lineColor||Xt,y=y||"normal",At=F.states[y]||{},Dt=bt(($t=rt.states&&rt.states[y]||{}).lineWidth,At.lineWidth,Dt+bt($t.lineWidthPlus,At.lineWidthPlus,0)),Ct=$t.fillColor||At.fillColor||Ct,{stroke:wt=$t.lineColor||At.lineColor||wt,"stroke-width":Dt,fill:Ct,opacity:jt=bt($t.opacity,At.opacity,jt)}}destroy(x){let y,F,lt,rt=this,gt=rt.chart,vt=/AppleWebKit\/533/.test(O.navigator.userAgent),Ot=rt.data||[];for(v(rt,"destroy",{keepEventsForUpdate:x}),this.removeEvents(x),(rt.axisTypes||[]).forEach(function(At){(lt=rt[At])&<.series&&(C(lt.series,rt),lt.isDirty=lt.forceRedraw=!0)}),rt.legendItem&&rt.chart.legend.destroyItem(rt),y=Ot.length;y--;)(F=Ot[y])&&F.destroy&&F.destroy();for(let At of rt.zones)k(At,void 0,!0);V.clearTimeout(rt.animationTimeout),pt(rt,function(At,$t){At instanceof Y&&!At.survive&&At[vt&&$t==="group"?"hide":"destroy"]()}),gt.hoverSeries===rt&&(gt.hoverSeries=void 0),C(gt.series,rt),gt.orderItems("series"),pt(rt,function(At,$t){x&&$t==="hcEvents"||delete rt[$t]})}applyZones(){let{area:x,chart:y,graph:F,zones:lt,points:rt,xAxis:gt,yAxis:vt,zoneAxis:Ot}=this,{inverted:At,renderer:$t}=y,Xt=this[`${Ot}Axis`],{isXAxis:Ct,len:wt=0}=Xt||{},Dt=((F==null?void 0:F.strokeWidth())||0)/2+1,jt=(re,le=0,Gt=0)=>{At&&(Gt=wt-Gt);let{translated:he=0,lineClip:ve}=re,Ce=Gt-he;ve==null||ve.push(["L",le,Math.abs(Ce){ve.forEach((Ce,Te)=>{(Ce[0]==="M"||Ce[0]==="L")&&(ve[Te]=[Ce[0],Ct?wt-Ce[1]:Ce[1],Ct?Ce[2]:wt-Ce[2]])})};if(lt.forEach(ve=>{ve.lineClip=[],ve.translated=D(Xt.toPixels(bt(ve.value,re),!0)||0,0,wt)}),F&&!this.showLine&&F.hide(),x&&x.hide(),Ot==="y"&&rt.length{var zt,Ft;let Ce=ve.lineClip||[],Te=Math.round(ve.translated||0);gt.reversed&&Ce.reverse();let{clip:Ke,simpleClip:rn}=ve,un=0,Qt=0,Kt=gt.len,Jt=vt.len;Ct?(un=Te,Kt=he):(Qt=Te,Jt=he);let Et=[["M",un,Qt],["L",Kt,Qt],["L",Kt,Jt],["L",un,Jt],["Z"]],Rt=[Et[0],...Ce,Et[1],Et[2],...Gt,Et[3],Et[4]];Gt=Ce.reverse(),he=Te,At&&(le(Rt),x&&le(Et)),Ke?(Ke.animate({d:Rt}),rn==null||rn.animate({d:Et})):(Ke=ve.clip=$t.path(Rt),x&&(rn=ve.simpleClip=$t.path(Et))),F&&((zt=ve.graph)==null||zt.clip(Ke)),x&&((Ft=ve.area)==null||Ft.clip(rn))})}else this.visible&&(F&&F.show(),x&&x.show())}plotGroup(x,y,F,lt,rt){let gt=this[x],vt=!gt,Ot={visibility:F,zIndex:lt||.1};return W(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(Ot.opacity=this.opacity),gt||(this[x]=gt=this.chart.renderer.g().add(rt)),gt.addClass("highcharts-"+y+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(W(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(gt.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),gt.attr(Ot)[vt?"attr":"animate"](this.getPlotBox(y)),gt}getPlotBox(x){let y=this.xAxis,F=this.yAxis,lt=this.chart,rt=lt.inverted&&!lt.polar&&y&&this.invertible&&x==="series";return lt.inverted&&(y=F,F=this.xAxis),{translateX:y?y.left:lt.plotLeft,translateY:F?F.top:lt.plotTop,rotation:rt?90:0,rotationOriginX:rt?(y.len-F.len)/2:0,rotationOriginY:rt?(y.len+F.len)/2:0,scaleX:rt?-1:1,scaleY:1}}removeEvents(x){let{eventsToUnbind:y}=this;x||Mt(this),y.length&&(y.forEach(F=>{F()}),y.length=0)}render(){var $t,Xt,Ct,wt,Dt;let x=this,{chart:y,options:F,hasRendered:lt}=x,rt=N(F.animation),gt=x.visible?"inherit":"hidden",vt=F.zIndex,Ot=y.seriesGroup,At=x.finishedAnimating?0:rt.duration;v(this,"render"),x.plotGroup("group","series",gt,vt,Ot),x.markerGroup=x.plotGroup("markerGroup","markers",gt,vt,Ot),F.clip!==!1&&x.setClip(),At&&(($t=x.animate)==null||$t.call(x,!0)),x.drawGraph&&(x.drawGraph(),x.applyZones()),x.visible&&x.drawPoints(),(Xt=x.drawDataLabels)==null||Xt.call(x),(Ct=x.redrawPoints)==null||Ct.call(x),F.enableMouseTracking&&((wt=x.drawTracker)==null||wt.call(x)),At&&((Dt=x.animate)==null||Dt.call(x)),lt||(At&&rt.defer&&(At+=rt.defer),x.animationTimeout=B(()=>{x.afterAnimate()},At||0)),x.isDirty=!1,x.hasRendered=!0,v(x,"afterRender")}redraw(){let x=this.isDirty||this.isDirtyData;this.translate(),this.render(),x&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(x,y){let{xAxis:F,yAxis:lt}=this,rt=this.chart.inverted;return this.searchKDTree({clientX:rt?F.len-x.chartY+F.pos:x.chartX-F.pos,plotY:rt?lt.len-x.chartX+lt.pos:x.chartY-lt.pos},y,x)}buildKDTree(x){this.buildingKdTree=!0;let y=this,F=y.options.findNearestPointBy.indexOf("y")>-1?2:1;delete y.kdTree,B(function(){y.kdTree=function lt(rt,gt,vt){let Ot,At,$t=rt==null?void 0:rt.length;if($t)return Ot=y.kdAxisArray[gt%vt],rt.sort((Xt,Ct)=>(Xt[Ot]||0)-(Ct[Ot]||0)),{point:rt[At=Math.floor($t/2)],left:lt(rt.slice(0,At),gt+1,vt),right:lt(rt.slice(At+1),gt+1,vt)}}(y.getValidPoints(void 0,!y.directTouch),F,F),y.buildingKdTree=!1},y.options.kdNow||(x==null?void 0:x.type)==="touchstart"?0:1)}searchKDTree(x,y,F){let lt=this,[rt,gt]=this.kdAxisArray,vt=y?"distX":"dist",Ot=(lt.options.findNearestPointBy||"").indexOf("y")>-1?2:1,At=!!lt.isBubble;if(this.kdTree||this.buildingKdTree||this.buildKDTree(F),this.kdTree)return function $t(Xt,Ct,wt,Dt){var Ke;let jt=Ct.point,re=lt.kdAxisArray[wt%Dt],le,Gt,he=jt;(function(rn,un){var ce;let Qt=rn[rt],Kt=un[rt],Jt=W(Qt)&&W(Kt)?Qt-Kt:null,Et=rn[gt],Rt=un[gt],zt=W(Et)&&W(Rt)?Et-Rt:0,Ft=At&&((ce=un.marker)==null?void 0:ce.radius)||0;un.dist=Math.sqrt((Jt&&Jt*Jt||0)+zt*zt)-Ft,un.distX=W(Jt)?Math.abs(Jt)-Ft:Number.MAX_VALUE})(Xt,jt);let ve=(Xt[re]||0)-(jt[re]||0)+(At&&((Ke=jt.marker)==null?void 0:Ke.radius)||0),Ce=ve<0?"left":"right",Te=ve<0?"right":"left";return Ct[Ce]&&(he=(le=$t(Xt,Ct[Ce],wt+1,Dt))[vt]=0&><=(lt?lt.len:y.plotHeight)&&rt>=0&&rt<=(F?F.len:y.plotWidth)}drawTracker(){var Ct;let x=this,y=x.options,F=y.trackByArea,lt=[].concat((F?x.areaPath:x.graphPath)||[]),rt=x.chart,gt=rt.pointer,vt=rt.renderer,Ot=((Ct=rt.options.tooltip)==null?void 0:Ct.snap)||0,At=()=>{y.enableMouseTracking&&rt.hoverSeries!==x&&x.onMouseOver()},$t="rgba(192,192,192,"+(M?1e-4:.002)+")",Xt=x.tracker;Xt?Xt.attr({d:lt}):x.graph&&(x.tracker=Xt=vt.path(lt).attr({visibility:x.visible?"inherit":"hidden",zIndex:2}).addClass(F?"highcharts-tracker-area":"highcharts-tracker-line").add(x.group),rt.styledMode||Xt.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:$t,fill:F?$t:"none","stroke-width":x.graph.strokeWidth()+(F?0:2*Ot)}),[x.tracker,x.markerGroup,x.dataLabelsGroup].forEach(wt=>{wt&&(wt.addClass("highcharts-tracker").on("mouseover",At).on("mouseout",Dt=>{gt==null||gt.onTrackerMouseOut(Dt)}),y.cursor&&!rt.styledMode&&wt.css({cursor:y.cursor}),wt.on("touchstart",At))})),v(this,"afterDrawTracker")}addPoint(x,y,F,lt,rt){let gt,vt,Ot=this.options,At=this.data,$t=this.chart,Xt=this.xAxis,Ct=Xt&&Xt.hasNames&&Xt.names,wt=Ot.data,Dt=this.xData;y=bt(y,!0);let jt={series:this};this.pointClass.prototype.applyOptions.apply(jt,[x]);let re=jt.x;if(vt=Dt.length,this.requireSorting&&rere;)vt--;this.updateParallelArrays(jt,"splice",[vt,0,0]),this.updateParallelArrays(jt,vt),Ct&&jt.name&&(Ct[re]=jt.name),wt.splice(vt,0,x),(gt||this.processedData)&&(this.data.splice(vt,0,null),this.processData()),Ot.legendType==="point"&&this.generatePoints(),F&&(At[0]&&At[0].remove?At[0].remove(!1):(At.shift(),this.updateParallelArrays(jt,"shift"),wt.shift())),rt!==!1&&v(this,"addPoint",{point:jt}),this.isDirty=!0,this.isDirtyData=!0,y&&$t.redraw(lt)}removePoint(x,y,F){let lt=this,rt=lt.data,gt=rt[x],vt=lt.points,Ot=lt.chart,At=function(){vt&&vt.length===rt.length&&vt.splice(x,1),rt.splice(x,1),lt.options.data.splice(x,1),lt.updateParallelArrays(gt||{series:lt},"splice",[x,1]),gt&>.destroy(),lt.isDirty=!0,lt.isDirtyData=!0,y&&Ot.redraw()};U(F,Ot),y=bt(y,!0),gt?gt.firePointEvent("remove",null,At):At()}remove(x,y,F,lt){let rt=this,gt=rt.chart;function vt(){rt.destroy(lt),gt.isDirtyLegend=gt.isDirtyBox=!0,gt.linkSeries(lt),bt(x,!0)&>.redraw(y)}F!==!1?v(rt,"remove",null,vt):vt()}update(x,y){var le,Gt,he,ve,Ce;v(this,"update",{options:x=_(x,this.userOptions)});let F=this,lt=F.chart,rt=F.userOptions,gt=F.initialType||F.type,vt=lt.options.plotOptions,Ot=H[gt].prototype,At=F.finishedAnimating&&{animation:!1},$t={},Xt,Ct,wt=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],Dt=x.type||rt.type||lt.options.chart.type,jt=!(this.hasDerivedData||Dt&&Dt!==this.type||x.pointStart!==void 0||x.pointInterval!==void 0||x.relativeXValue!==void 0||x.joinBy||x.mapData||["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"].some(Te=>F.hasOptionChanged(Te)));Dt=Dt||gt,jt&&(wt.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),x.visible!==!1&&wt.push("area","graph"),F.parallelArrays.forEach(function(Te){wt.push(Te+"Data")}),x.data&&(x.dataSorting&&l(F.options.dataSorting,x.dataSorting),this.setData(x.data,!1))),x=dt(rt,{index:rt.index===void 0?F.index:rt.index,pointStart:(ve=(Gt=(le=vt==null?void 0:vt.series)==null?void 0:le.pointStart)!=null?Gt:rt.pointStart)!=null?ve:(he=F.xData)==null?void 0:he[0]},!jt&&{data:F.options.data},x,At),jt&&x.data&&(x.data=F.options.data),(wt=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(wt)).forEach(function(Te){wt[Te]=F[Te],delete F[Te]});let re=!1;if(H[Dt]){if(re=Dt!==F.type,F.remove(!1,!1,!1,!0),re)if(lt.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(F,H[Dt].prototype);else{let Te=Object.hasOwnProperty.call(F,"hcEvents")&&F.hcEvents;for(Ct in Ot)F[Ct]=void 0;l(F,H[Dt].prototype),Te?F.hcEvents=Te:delete F.hcEvents}}else h(17,!0,lt,{missingModuleFor:Dt});if(wt.forEach(function(Te){F[Te]=wt[Te]}),F.init(lt,x),jt&&this.points)for(let Te of((Xt=F.options).visible===!1?($t.graphic=1,$t.dataLabel=1):(this.hasMarkerChanged(Xt,rt)&&($t.graphic=1),(Ce=F.hasDataLabels)!=null&&Ce.call(F)||($t.dataLabel=1)),this.points))Te&&Te.series&&(Te.resolveColor(),Object.keys($t).length&&Te.destroyElements($t),Xt.showInLegend===!1&&Te.legendItem&<.legend.destroyItem(Te));F.initialType=gt,lt.linkSeries(),lt.setSortedData(),re&&F.linkedSeries.length&&(F.isDirtyData=!0),v(this,"afterUpdate"),bt(y,!0)&<.redraw(!!jt&&void 0)}setName(x){this.name=this.options.name=this.userOptions.name=x,this.chart.isDirtyLegend=!0}hasOptionChanged(x){var vt,Ot;let y=this.chart,F=this.options[x],lt=y.options.plotOptions,rt=this.userOptions[x],gt=bt((vt=lt==null?void 0:lt[this.type])==null?void 0:vt[x],(Ot=lt==null?void 0:lt.series)==null?void 0:Ot[x]);return rt&&!W(gt)?F!==rt:F!==bt(gt,F)}onMouseOver(){let x=this.chart,y=x.hoverSeries,F=x.pointer;F==null||F.setHoverChartIndex(),y&&y!==this&&y.onMouseOut(),this.options.events.mouseOver&&v(this,"mouseOver"),this.setState("hover"),x.hoverSeries=this}onMouseOut(){let x=this.options,y=this.chart,F=y.tooltip,lt=y.hoverPoint;y.hoverSeries=null,lt&<.onMouseOut(),this&&x.events.mouseOut&&v(this,"mouseOut"),F&&!this.stickyTracking&&(!F.shared||this.noSharedTooltip)&&F.hide(),y.series.forEach(function(rt){rt.setState("",!0)})}setState(x,y){let F=this,lt=F.options,rt=F.graph,gt=lt.inactiveOtherPoints,vt=lt.states,Ot=bt(vt[x||"normal"]&&vt[x||"normal"].animation,F.chart.options.chart.animation),At=lt.lineWidth,$t=lt.opacity;if(x=x||"",F.state!==x&&([F.group,F.markerGroup,F.dataLabelsGroup].forEach(function(Xt){Xt&&(F.state&&Xt.removeClass("highcharts-series-"+F.state),x&&Xt.addClass("highcharts-series-"+x))}),F.state=x,!F.chart.styledMode)){if(vt[x]&&vt[x].enabled===!1)return;if(x&&(At=vt[x].lineWidth||At+(vt[x].lineWidthPlus||0),$t=bt(vt[x].opacity,$t)),rt&&!rt.dashstyle&&ct(At))for(let Xt of[rt,...this.zones.map(Ct=>Ct.graph)])Xt==null||Xt.animate({"stroke-width":At},Ot);gt||[F.group,F.markerGroup,F.dataLabelsGroup,F.labelBySeries].forEach(function(Xt){Xt&&Xt.animate({opacity:$t},Ot)})}y&>&&F.points&&F.setAllPointsToState(x||void 0)}setAllPointsToState(x){this.points.forEach(function(y){y.setState&&y.setState(x)})}setVisible(x,y){var Ot;let F=this,lt=F.chart,rt=lt.options.chart.ignoreHiddenSeries,gt=F.visible;F.visible=x=F.options.visible=F.userOptions.visible=x===void 0?!gt:x;let vt=x?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(At=>{var $t;($t=F[At])==null||$t[vt]()}),(lt.hoverSeries===F||((Ot=lt.hoverPoint)==null?void 0:Ot.series)===F)&&F.onMouseOut(),F.legendItem&<.legend.colorizeItem(F,x),F.isDirty=!0,F.options.stacking&<.series.forEach(At=>{At.options.stacking&&At.visible&&(At.isDirty=!0)}),F.linkedSeries.forEach(At=>{At.setVisible(x,!1)}),rt&&(lt.isDirtyBox=!0),v(F,vt),y!==!1&<.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(x){this.selected=x=this.options.selected=x===void 0?!this.selected:x,this.checkbox&&(this.checkbox.checked=x),v(this,x?"select":"unselect")}shouldShowTooltip(x,y,F={}){return F.series=this,F.visiblePlotOnly=!0,this.chart.isInsidePlot(x,y,F)}drawLegendSymbol(x,y){var F;(F=J[this.options.legendSymbol||"rectangle"])==null||F.call(this,x,y)}}return tt.defaultOptions=q,tt.types=Z.seriesTypes,tt.registerType=Z.registerSeriesType,l(tt.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:X,requireSorting:!0,sorted:!0}),Z.series=tt,tt}),g(d,"Core/Legend/Legend.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Series/Point.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){var Y;let{animObject:V,setAnimation:N}=L,{registerEventOptions:U}=R,{composed:T,marginNames:A}=st,{distribute:M}=X,{format:O}=q,{addEvent:H,createElement:z,css:c,defined:D,discardElement:it,find:Q,fireEvent:W,isNumber:k,merge:_,pick:C,pushUnique:h,relativeLength:l,stableSort:u,syncTimeout:v}=Z;class I{constructor(b,K){this.allItems=[],this.initialItemY=0,this.itemHeight=0,this.itemMarginBottom=0,this.itemMarginTop=0,this.itemX=0,this.itemY=0,this.lastItemY=0,this.lastLineHeight=0,this.legendHeight=0,this.legendWidth=0,this.maxItemWidth=0,this.maxLegendWidth=0,this.offsetWidth=0,this.padding=0,this.pages=[],this.symbolHeight=0,this.symbolWidth=0,this.titleHeight=0,this.totalItemWidth=0,this.widthOption=0,this.chart=b,this.setOptions(K),K.enabled&&(this.render(),U(this,K),H(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),H(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(b){let K=C(b.padding,8);this.options=b,this.chart.styledMode||(this.itemStyle=b.itemStyle,this.itemHiddenStyle=_(this.itemStyle,b.itemHiddenStyle)),this.itemMarginTop=b.itemMarginTop,this.itemMarginBottom=b.itemMarginBottom,this.padding=K,this.initialItemY=K-5,this.symbolWidth=C(b.symbolWidth,16),this.pages=[],this.proximate=b.layout==="proximate"&&!this.chart.inverted,this.baseline=void 0}update(b,K){let ct=this.chart;this.setOptions(_(!0,this.options,b)),"events"in this.options&&U(this,this.options),this.destroy(),ct.isDirtyLegend=ct.isDirtyBox=!0,C(K,!0)&&ct.redraw(),W(this,"afterUpdate",{redraw:K})}colorizeItem(b,K){let{area:ct,group:et,label:dt,line:pt,symbol:bt}=b.legendItem||{};if(et==null||et[K?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:Mt={}}=this,w=Mt.color,{fillColor:B,fillOpacity:tt,lineColor:nt,marker:x}=b.options,y=F=>(!K&&(F.fill&&(F.fill=w),F.stroke&&(F.stroke=w)),F);dt==null||dt.css(_(K?this.itemStyle:Mt)),pt==null||pt.attr(y({stroke:nt||b.color})),bt&&bt.attr(y(x&&bt.isMarker?b.pointAttribs():{fill:b.color})),ct==null||ct.attr(y({fill:B||b.color,"fill-opacity":B?1:tt!=null?tt:.75}))}W(this,"afterColorizeItem",{item:b,visible:K})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(b){let{group:K,x:ct=0,y:et=0}=b.legendItem||{},dt=this.options,pt=dt.symbolPadding,bt=!dt.rtl,Mt=b.checkbox;if(K&&K.element){let w={translateX:bt?ct:this.legendWidth-ct-2*pt-4,translateY:et};K[D(K.translateY)?"animate":"attr"](w,void 0,()=>{W(this,"afterPositionItem",{item:b})})}Mt&&(Mt.x=ct,Mt.y=et)}destroyItem(b){let K=b.checkbox,ct=b.legendItem||{};for(let et of["group","label","line","symbol"])ct[et]&&(ct[et]=ct[et].destroy());K&&it(K),b.legendItem=void 0}destroy(){for(let b of this.getAllItems())this.destroyItem(b);for(let b of["clipRect","up","down","pager","nav","box","title","group"])this[b]&&(this[b]=this[b].destroy());this.display=null}positionCheckboxes(){let b,K=this.group&&this.group.alignAttr,ct=this.clipHeight||this.legendHeight,et=this.titleHeight;K&&(b=K.translateY,this.allItems.forEach(function(dt){let pt,bt=dt.checkbox;bt&&(pt=b+et+bt.y+(this.scrollOffset||0)+3,c(bt,{left:K.translateX+dt.checkboxOffset+bt.x-20+"px",top:pt+"px",display:this.proximate||pt>b-6&&pt1.5*$t?At.height:$t))}layoutItem(b){let K=this.options,ct=this.padding,et=K.layout==="horizontal",dt=b.itemHeight,pt=this.itemMarginBottom,bt=this.itemMarginTop,Mt=et?C(K.itemDistance,20):0,w=this.maxLegendWidth,B=K.alignColumns&&this.totalItemWidth>w?this.maxItemWidth:b.itemWidth,tt=b.legendItem||{};et&&this.itemX-ct+B>w&&(this.itemX=ct,this.lastLineHeight&&(this.itemY+=bt+this.lastLineHeight+pt),this.lastLineHeight=0),this.lastItemY=bt+this.itemY+pt,this.lastLineHeight=Math.max(dt,this.lastLineHeight),tt.x=this.itemX,tt.y=this.itemY,et?this.itemX+=B:(this.itemY+=bt+dt+pt,this.lastLineHeight=dt),this.offsetWidth=this.widthOption||Math.max((et?this.itemX-ct-(b.checkbox?0:Mt):B)+ct,this.offsetWidth)}getAllItems(){let b=[];return this.chart.series.forEach(function(K){let ct=K&&K.options;K&&C(ct.showInLegend,!D(ct.linkedTo)&&void 0,!0)&&(b=b.concat((K.legendItem||{}).labels||(ct.legendType==="point"?K.data:K)))}),W(this,"afterGetAllItems",{allItems:b}),b}getAlignment(){let b=this.options;return this.proximate?b.align.charAt(0)+"tv":b.floating?"":b.align.charAt(0)+b.verticalAlign.charAt(0)+b.layout.charAt(0)}adjustMargins(b,K){let ct=this.chart,et=this.options,dt=this.getAlignment();dt&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(pt,bt){pt.test(dt)&&!D(b[bt])&&(ct[A[bt]]=Math.max(ct[A[bt]],ct.legend[(bt+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][bt]*et[bt%2?"x":"y"]+C(et.margin,12)+K[bt]+(ct.titleOffset[bt]||0)))})}proximatePositions(){let b,K=this.chart,ct=[],et=this.options.align==="left";for(let dt of(this.allItems.forEach(function(pt){let bt,Mt,w=et,B,tt;pt.yAxis&&(pt.xAxis.options.reversed&&(w=!w),pt.points&&(bt=Q(w?pt.points:pt.points.slice(0).reverse(),function(nt){return k(nt.plotY)})),Mt=this.itemMarginTop+pt.legendItem.label.getBBox().height+this.itemMarginBottom,tt=pt.yAxis.top-K.plotTop,B=pt.visible?(bt?bt.plotY:pt.yAxis.height)+(tt-.3*Mt):tt+pt.yAxis.height,ct.push({target:B,size:Mt,item:pt}))},this),M(ct,K.plotHeight)))b=dt.item.legendItem||{},k(dt.pos)&&(b.y=K.plotTop-K.spacing[0]+dt.pos)}render(){let b=this.chart,K=b.renderer,ct=this.options,et=this.padding,dt=this.getAllItems(),pt,bt,Mt,w=this.group,B,tt=this.box;this.itemX=et,this.itemY=this.initialItemY,this.offsetWidth=0,this.lastItemY=0,this.widthOption=l(ct.width,b.spacingBox.width-et),B=b.spacingBox.width-2*et-ct.x,["rm","lm"].indexOf(this.getAlignment().substring(0,2))>-1&&(B/=2),this.maxLegendWidth=this.widthOption||B,w||(this.group=w=K.g("legend").addClass(ct.className||"").attr({zIndex:7}).add(),this.contentGroup=K.g().attr({zIndex:1}).add(w),this.scrollGroup=K.g().add(this.contentGroup)),this.renderTitle(),u(dt,(nt,x)=>(nt.options&&nt.options.legendIndex||0)-(x.options&&x.options.legendIndex||0)),ct.reversed&&dt.reverse(),this.allItems=dt,this.display=pt=!!dt.length,this.lastLineHeight=0,this.maxItemWidth=0,this.totalItemWidth=0,this.itemHeight=0,dt.forEach(this.renderItem,this),dt.forEach(this.layoutItem,this),bt=(this.widthOption||this.offsetWidth)+et,Mt=this.lastItemY+this.lastLineHeight+this.titleHeight,Mt=this.handleOverflow(Mt)+et,tt||(this.box=tt=K.rect().addClass("highcharts-legend-box").attr({r:ct.borderRadius}).add(w)),b.styledMode||tt.attr({stroke:ct.borderColor,"stroke-width":ct.borderWidth||0,fill:ct.backgroundColor||"none"}).shadow(ct.shadow),bt>0&&Mt>0&&tt[tt.placed?"animate":"attr"](tt.crisp.call({},{x:0,y:0,width:bt,height:Mt},tt.strokeWidth())),w[pt?"show":"hide"](),b.styledMode&&w.getStyle("display")==="none"&&(bt=Mt=0),this.legendWidth=bt,this.legendHeight=Mt,pt&&this.align(),this.proximate||this.positionItems(),W(this,"afterRender")}align(b=this.chart.spacingBox){let K=this.chart,ct=this.options,et=b.y;/(lth|ct|rth)/.test(this.getAlignment())&&K.titleOffset[0]>0?et+=K.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&K.titleOffset[2]>0&&(et-=K.titleOffset[2]),et!==b.y&&(b=_(b,{y:et})),K.hasRendered||(this.group.placed=!1),this.group.align(_(ct,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":ct.verticalAlign}),!0,b)}handleOverflow(b){let K=this,ct=this.chart,et=ct.renderer,dt=this.options,pt=dt.y,bt=dt.verticalAlign==="top",Mt=this.padding,w=dt.maxHeight,B=dt.navigation,tt=C(B.animation,!0),nt=B.arrowSize||12,x=this.pages,y=this.allItems,F=function(Xt){typeof Xt=="number"?$t.attr({height:Xt}):$t&&(K.clipRect=$t.destroy(),K.contentGroup.clip()),K.contentGroup.div&&(K.contentGroup.div.style.clip=Xt?"rect("+Mt+"px,9999px,"+(Mt+Xt)+"px,0)":"auto")},lt=function(Xt){return K[Xt]=et.circle(0,0,1.3*nt).translate(nt/2,nt/2).add(At),ct.styledMode||K[Xt].attr("fill","rgba(0,0,0,0.0001)"),K[Xt]},rt,gt,vt,Ot=ct.spacingBox.height+(bt?-pt:pt)-Mt,At=this.nav,$t=this.clipRect;return dt.layout!=="horizontal"||dt.verticalAlign==="middle"||dt.floating||(Ot/=2),w&&(Ot=Math.min(Ot,w)),x.length=0,b&&Ot>0&&b>Ot&&B.enabled!==!1?(this.clipHeight=rt=Math.max(Ot-20-this.titleHeight-Mt,0),this.currentPage=C(this.currentPage,1),this.fullHeight=b,y.forEach((Xt,Ct)=>{let wt=(vt=Xt.legendItem||{}).y||0,Dt=Math.round(vt.label.getBBox().height),jt=x.length;(!jt||wt-x[jt-1]>rt&&(gt||wt)!==x[jt-1])&&(x.push(gt||wt),jt++),vt.pageIx=jt-1,gt&&((y[Ct-1].legendItem||{}).pageIx=jt-1),Ct===y.length-1&&wt+Dt-x[jt-1]>rt&&wt>x[jt-1]&&(x.push(wt),vt.pageIx=jt),wt!==gt&&(gt=wt)}),$t||($t=K.clipRect=et.clipRect(0,Mt-2,9999,0),K.contentGroup.clip($t)),F(rt),At||(this.nav=At=et.g().attr({zIndex:1}).add(this.group),this.up=et.symbol("triangle",0,0,nt,nt).add(At),lt("upTracker").on("click",function(){K.scroll(-1,tt)}),this.pager=et.text("",15,10).addClass("highcharts-legend-navigation"),!ct.styledMode&&B.style&&this.pager.css(B.style),this.pager.add(At),this.down=et.symbol("triangle-down",0,0,nt,nt).add(At),lt("downTracker").on("click",function(){K.scroll(1,tt)})),K.scroll(0),b=Ot):At&&(F(),this.nav=At.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),b}scroll(b,K){let ct=this.chart,et=this.pages,dt=et.length,pt=this.clipHeight,bt=this.options.navigation,Mt=this.pager,w=this.padding,B=this.currentPage+b;B>dt&&(B=dt),B>0&&(K!==void 0&&N(K,ct),this.nav.attr({translateX:w,translateY:pt+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(tt){tt.attr({class:B===1?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),Mt.attr({text:B+"/"+dt}),[this.down,this.downTracker].forEach(function(tt){tt.attr({x:18+this.pager.getBBox().width,class:B===dt?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),ct.styledMode||(this.up.attr({fill:B===1?bt.inactiveColor:bt.activeColor}),this.upTracker.css({cursor:B===1?"default":"pointer"}),this.down.attr({fill:B===dt?bt.inactiveColor:bt.activeColor}),this.downTracker.css({cursor:B===dt?"default":"pointer"})),this.scrollOffset=-et[B-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=B,this.positionCheckboxes(),v(()=>{W(this,"afterScroll",{currentPage:B})},V(C(K,ct.renderer.globalAnimation,!0)).duration))}setItemEvents(b,K,ct){let et=this,dt=b.legendItem||{},pt=et.chart.renderer.boxWrapper,bt=b instanceof J,Mt=b instanceof $,w="highcharts-legend-"+(bt?"point":"series")+"-active",B=et.chart.styledMode,tt=ct?[K,dt.symbol]:[dt.group],nt=x=>{et.allItems.forEach(y=>{b!==y&&[y].concat(y.linkedSeries||[]).forEach(F=>{F.setState(x,!bt)})})};for(let x of tt)x&&x.on("mouseover",function(){b.visible&&nt("inactive"),b.setState("hover"),b.visible&&pt.addClass(w),B||K.css(et.options.itemHoverStyle)}).on("mouseout",function(){et.chart.styledMode||K.css(_(b.visible?et.itemStyle:et.itemHiddenStyle)),nt(""),pt.removeClass(w),b.setState()}).on("click",function(y){let F=function(){b.setVisible&&b.setVisible(),nt(b.visible?"inactive":"")};pt.removeClass(w),W(et,"itemClick",{browserEvent:y,legendItem:b},F),bt?b.firePointEvent("legendItemClick",{browserEvent:y}):Mt&&W(b,"legendItemClick",{browserEvent:y})})}createCheckboxForItem(b){b.checkbox=z("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:b.selected,defaultChecked:b.selected},this.options.itemCheckboxStyle,this.chart.container),H(b.checkbox,"click",function(K){let ct=K.target;W(b.series||b,"checkboxClick",{checked:ct.checked,item:b},function(){b.select()})})}}return(Y=I||(I={})).compose=function(S){h(T,"Core.Legend")&&H(S,"beforeMargins",function(){this.legend=new Y(this,this.options.legend)})},I}),g(d,"Core/Chart/Chart.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Time.js"],d["Core/Utilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Axis/Tick.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A){let{animate:M,animObject:O,setAnimation:H}=L,{defaultOptions:z,defaultTime:c}=st,{numberFormat:D}=$,{registerEventOptions:it}=J,{charts:Q,doc:W,marginNames:k,svg:_,win:C}=X,{seriesTypes:h}=Y,{addEvent:l,attr:u,createElement:v,css:I,defined:S,diffObjects:b,discardElement:K,erase:ct,error:et,extend:dt,find:pt,fireEvent:bt,getStyle:Mt,isArray:w,isNumber:B,isObject:tt,isString:nt,merge:x,objectEach:y,pick:F,pInt:lt,relativeLength:rt,removeEvent:gt,splat:vt,syncTimeout:Ot,uniqueKey:At}=U;class $t{static chart(Ct,wt,Dt){return new $t(Ct,wt,Dt)}constructor(Ct,wt,Dt){this.sharedClips={};let jt=[...arguments];(nt(Ct)||Ct.nodeName)&&(this.renderTo=jt.shift()),this.init(jt[0],jt[1])}setZoomOptions(){let Ct=this.options.chart,wt=Ct.zooming;this.zooming=Mi(xr({},wt),{type:F(Ct.zoomType,wt.type),key:F(Ct.zoomKey,wt.key),pinchType:F(Ct.pinchType,wt.pinchType),singleTouch:F(Ct.zoomBySingleTouch,wt.singleTouch,!1),resetButton:x(wt.resetButton,Ct.resetZoomButton)})}init(Ct,wt){bt(this,"init",{args:arguments},function(){let Dt=x(z,Ct),jt=Dt.chart;this.userOptions=dt({},Ct),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=wt,this.isResizing=0,this.options=Dt,this.axes=[],this.series=[],this.time=Ct.time&&Object.keys(Ct.time).length?new N(Ct.time):X.time,this.numberFormatter=jt.numberFormatter||D,this.styledMode=jt.styledMode,this.hasCartesianSeries=jt.showAxes,this.index=Q.length,Q.push(this),X.chartCount++,it(this,jt),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,this.setZoomOptions(),bt(this,"afterInit"),this.firstRender()})}initSeries(Ct){let wt=this.options.chart,Dt=Ct.type||wt.type,jt=h[Dt];jt||et(17,!0,this,{missingModuleFor:Dt});let re=new jt;return typeof re.init=="function"&&re.init(this,Ct),re}setSortedData(){this.getSeriesOrderByLinks().forEach(function(Ct){Ct.points||Ct.data||!Ct.enabledDataSorting||Ct.setData(Ct.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(Ct,wt){return Ct.linkedSeries.length||wt.linkedSeries.length?wt.linkedSeries.length-Ct.linkedSeries.length:0})}orderItems(Ct,wt=0){let Dt=this[Ct],jt=this.options[Ct]=vt(this.options[Ct]).slice(),re=this.userOptions[Ct]=this.userOptions[Ct]?vt(this.userOptions[Ct]).slice():[];if(this.hasRendered&&(jt.splice(wt),re.splice(wt)),Dt)for(let le=wt,Gt=Dt.length;le=Math.max(ve+le,Jt.pos)&&Et<=Math.min(ve+le+Ke.width,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}if(!Dt.ignoreY&&Qt.isInsidePlot){let Jt=!jt&&Dt.axis&&!Dt.axis.isXAxis&&Dt.axis||Te&&(jt?Te.xAxis:Te.yAxis)||{pos:Gt,len:1/0},Et=Dt.paneCoordinates?Jt.pos+un:Gt+un;Et>=Math.max(Ce+Gt,Jt.pos)&&Et<=Math.min(Ce+Gt+Ke.height,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}return bt(this,"afterIsInsidePlot",Qt),Qt.isInsidePlot}redraw(Ct){bt(this,"beforeRedraw");let wt=this.hasCartesianSeries?this.axes:this.colorAxis||[],Dt=this.series,jt=this.pointer,re=this.legend,le=this.userOptions.legend,Gt=this.renderer,he=Gt.isHidden(),ve=[],Ce,Te,Ke,rn=this.isDirtyBox,un=this.isDirtyLegend,Qt;for(Gt.rootFontSize=Gt.boxWrapper.getStyle("font-size"),this.setResponsive&&this.setResponsive(!1),H(!!this.hasRendered&&Ct,this),he&&this.temporaryDisplay(),this.layOutTitles(!1),Ke=Dt.length;Ke--;)if(((Qt=Dt[Ke]).options.stacking||Qt.options.centerInCategory)&&(Te=!0,Qt.isDirty)){Ce=!0;break}if(Ce)for(Ke=Dt.length;Ke--;)(Qt=Dt[Ke]).options.stacking&&(Qt.isDirty=!0);Dt.forEach(function(Kt){Kt.isDirty&&(Kt.options.legendType==="point"?(typeof Kt.updateTotals=="function"&&Kt.updateTotals(),un=!0):le&&(le.labelFormatter||le.labelFormat)&&(un=!0)),Kt.isDirtyData&&bt(Kt,"updatedData")}),un&&re&&re.options.enabled&&(re.render(),this.isDirtyLegend=!1),Te&&this.getStacks(),wt.forEach(function(Kt){Kt.updateNames(),Kt.setScale()}),this.getMargins(),wt.forEach(function(Kt){Kt.isDirty&&(rn=!0)}),wt.forEach(function(Kt){let Jt=Kt.min+","+Kt.max;Kt.extKey!==Jt&&(Kt.extKey=Jt,ve.push(function(){bt(Kt,"afterSetExtremes",dt(Kt.eventArgs,Kt.getExtremes())),delete Kt.eventArgs})),(rn||Te)&&Kt.redraw()}),rn&&this.drawChartBox(),bt(this,"predraw"),Dt.forEach(function(Kt){(rn||Kt.isDirty)&&Kt.visible&&Kt.redraw(),Kt.isDirtyData=!1}),jt&&jt.reset(!0),Gt.draw(),bt(this,"redraw"),bt(this,"render"),he&&this.temporaryDisplay(!0),ve.forEach(function(Kt){Kt.call()})}get(Ct){let wt=this.series;function Dt(re){return re.id===Ct||re.options&&re.options.id===Ct}let jt=pt(this.axes,Dt)||pt(this.series,Dt);for(let re=0;!jt&&re(wt.getPointsCollection().forEach(Dt=>{F(Dt.selectedStaging,Dt.selected)&&Ct.push(Dt)}),Ct),[])}getSelectedSeries(){return this.series.filter(function(Ct){return Ct.selected})}setTitle(Ct,wt,Dt){this.applyDescription("title",Ct),this.applyDescription("subtitle",wt),this.applyDescription("caption",void 0),this.layOutTitles(Dt)}applyDescription(Ct,wt){let Dt=this,jt=this.options[Ct]=x(this.options[Ct],wt),re=this[Ct];re&&wt&&(this[Ct]=re=re.destroy()),jt&&!re&&((re=this.renderer.text(jt.text,0,0,jt.useHTML).attr({align:jt.align,class:"highcharts-"+Ct,zIndex:jt.zIndex||4}).add()).update=function(le,Gt){Dt.applyDescription(Ct,le),Dt.layOutTitles(Gt)},this.styledMode||re.css(dt(Ct==="title"?{fontSize:this.options.isStock?"1em":"1.2em"}:{},jt.style)),this[Ct]=re)}layOutTitles(Ct=!0){let wt=[0,0,0],Dt=this.renderer,jt=this.spacingBox;["title","subtitle","caption"].forEach(function(le){let Gt=this[le],he=this.options[le],ve=he.verticalAlign||"top",Ce=le==="title"?ve==="top"?-3:0:ve==="top"?wt[0]+2:0;if(Gt){Gt.css({width:(he.width||jt.width+(he.widthAdjust||0))+"px"});let Te=Dt.fontMetrics(Gt).b,Ke=Math.round(Gt.getBBox(he.useHTML).height);Gt.align(dt({y:ve==="bottom"?Te:Ce+Te,height:Ke},he),!1,"spacingBox"),he.floating||(ve==="top"?wt[0]=Math.ceil(wt[0]+Ke):ve==="bottom"&&(wt[2]=Math.ceil(wt[2]+Ke)))}},this),wt[0]&&(this.options.title.verticalAlign||"top")==="top"&&(wt[0]+=this.options.title.margin),wt[2]&&this.options.caption.verticalAlign==="bottom"&&(wt[2]+=this.options.caption.margin);let re=!this.titleOffset||this.titleOffset.join(",")!==wt.join(",");this.titleOffset=wt,bt(this,"afterLayOutTitles"),!this.isDirtyBox&&re&&(this.isDirtyBox=this.isDirtyLegend=re,this.hasRendered&&Ct&&this.isDirtyBox&&this.redraw())}getContainerBox(){let Ct=[].map.call(this.renderTo.children,Dt=>{if(Dt!==this.container){let jt=Dt.style.display;return Dt.style.display="none",[Dt,jt]}}),wt={width:Mt(this.renderTo,"width",!0)||0,height:Mt(this.renderTo,"height",!0)||0};return Ct.filter(Boolean).forEach(([Dt,jt])=>{Dt.style.display=jt}),wt}getChartSize(){var le;let Ct=this.options.chart,wt=Ct.width,Dt=Ct.height,jt=this.getContainerBox(),re=jt.height>1&&!(!((le=this.renderTo.parentElement)!=null&&le.style.height)&&this.renderTo.style.height==="100%");this.chartWidth=Math.max(0,wt||jt.width||600),this.chartHeight=Math.max(0,rt(Dt,this.chartWidth)||(re?jt.height:400)),this.containerBox=jt}temporaryDisplay(Ct){let wt=this.renderTo,Dt;if(Ct)for(;wt&&wt.style;)wt.hcOrigStyle&&(I(wt,wt.hcOrigStyle),delete wt.hcOrigStyle),wt.hcOrigDetached&&(W.body.removeChild(wt),wt.hcOrigDetached=!1),wt=wt.parentNode;else for(;wt&&wt.style&&(W.body.contains(wt)||wt.parentNode||(wt.hcOrigDetached=!0,W.body.appendChild(wt)),(Mt(wt,"display",!1)==="none"||wt.hcOricDetached)&&(wt.hcOrigStyle={display:wt.style.display,height:wt.style.height,overflow:wt.style.overflow},Dt={display:"block",overflow:"hidden"},wt!==this.renderTo&&(Dt.height=0),I(wt,Dt),wt.offsetWidth||wt.style.setProperty("display","block","important")),(wt=wt.parentNode)!==W.body););}setClassName(Ct){this.container.className="highcharts-container "+(Ct||"")}getContainer(){var Ke;let Ct=this.options,wt=Ct.chart,Dt="data-highcharts-chart",jt=At(),re,le=this.renderTo;le||(this.renderTo=le=wt.renderTo),nt(le)&&(this.renderTo=le=W.getElementById(le)),le||et(13,!0,this);let Gt=lt(u(le,Dt));B(Gt)&&Q[Gt]&&Q[Gt].hasRendered&&Q[Gt].destroy(),u(le,Dt,this.index),le.innerHTML=T.emptyHTML,wt.skipClone||le.offsetWidth||this.temporaryDisplay(),this.getChartSize();let he=this.chartHeight,ve=this.chartWidth;I(le,{overflow:"hidden"}),this.styledMode||(re=dt({position:"relative",overflow:"hidden",width:ve+"px",height:he+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none",padding:"0px"},wt.style||{}));let Ce=v("div",{id:jt},re,le);this.container=Ce,this.getChartSize(),ve===this.chartWidth||(ve=this.chartWidth,this.styledMode||I(Ce,{width:F((Ke=wt.style)==null?void 0:Ke.width,ve+"px")})),this.containerBox=this.getContainerBox(),this._cursor=Ce.style.cursor;let Te=wt.renderer||!_?q.getRendererType(wt.renderer):V;if(this.renderer=new Te(Ce,ve,he,void 0,wt.forExport,Ct.exporting&&Ct.exporting.allowHTML,this.styledMode),H(void 0,this),this.setClassName(wt.className),this.styledMode)for(let rn in Ct.defs)this.renderer.definition(Ct.defs[rn]);else this.renderer.setStyle(wt.style);this.renderer.chartIndex=this.index,bt(this,"afterGetContainer")}getMargins(Ct){let{spacing:wt,margin:Dt,titleOffset:jt}=this;this.resetMargins(),jt[0]&&!S(Dt[0])&&(this.plotTop=Math.max(this.plotTop,jt[0]+wt[0])),jt[2]&&!S(Dt[2])&&(this.marginBottom=Math.max(this.marginBottom,jt[2]+wt[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(Dt,wt),bt(this,"getMargins"),Ct||this.getAxisMargins()}getAxisMargins(){let Ct=this,wt=Ct.axisOffset=[0,0,0,0],Dt=Ct.colorAxis,jt=Ct.margin,re=function(le){le.forEach(function(Gt){Gt.visible&&Gt.getOffset()})};Ct.hasCartesianSeries?re(Ct.axes):Dt&&Dt.length&&re(Dt),k.forEach(function(le,Gt){S(jt[Gt])||(Ct[le]+=wt[Gt])}),Ct.setChartSize()}getOptions(){return b(this.userOptions,z)}reflow(Ct){var re;let wt=this,Dt=wt.containerBox,jt=wt.getContainerBox();(re=wt.pointer)==null||delete re.chartPosition,!wt.isPrinting&&!wt.isResizing&&Dt&&jt.width&&((jt.width!==Dt.width||jt.height!==Dt.height)&&(U.clearTimeout(wt.reflowTimeout),wt.reflowTimeout=Ot(function(){wt.container&&wt.setSize(void 0,void 0,!1)},Ct?100:0)),wt.containerBox=jt)}setReflow(){let Ct=this,wt=Dt=>{var jt;(jt=Ct.options)!=null&&jt.chart.reflow&&Ct.hasLoaded&&Ct.reflow(Dt)};if(typeof ResizeObserver=="function")new ResizeObserver(wt).observe(Ct.renderTo);else{let Dt=l(C,"resize",wt);l(this,"destroy",Dt)}}setSize(Ct,wt,Dt){let jt=this,re=jt.renderer;jt.isResizing+=1,H(Dt,jt);let le=re.globalAnimation;jt.oldChartHeight=jt.chartHeight,jt.oldChartWidth=jt.chartWidth,Ct!==void 0&&(jt.options.chart.width=Ct),wt!==void 0&&(jt.options.chart.height=wt),jt.getChartSize();let{chartWidth:Gt,chartHeight:he,scrollablePixelsX:ve=0,scrollablePixelsY:Ce=0}=jt;(jt.isDirtyBox||Gt!==jt.oldChartWidth||he!==jt.oldChartHeight)&&(jt.styledMode||(le?M:I)(jt.container,{width:`${Gt+ve}px`,height:`${he+Ce}px`},le),jt.setChartSize(!0),re.setSize(Gt,he,le),jt.axes.forEach(function(Te){Te.isDirty=!0,Te.setScale()}),jt.isDirtyLegend=!0,jt.isDirtyBox=!0,jt.layOutTitles(),jt.getMargins(),jt.redraw(le),jt.oldChartHeight=void 0,bt(jt,"resize"),setTimeout(()=>{jt&&bt(jt,"endResize")},O(le).duration)),jt.isResizing-=1}setChartSize(Ct){let wt,Dt,jt,re,{chartHeight:le,chartWidth:Gt,inverted:he,spacing:ve,renderer:Ce}=this,Te=this.clipOffset,Ke=Math[he?"floor":"round"];this.plotLeft=wt=Math.round(this.plotLeft),this.plotTop=Dt=Math.round(this.plotTop),this.plotWidth=jt=Math.max(0,Math.round(Gt-wt-this.marginRight)),this.plotHeight=re=Math.max(0,Math.round(le-Dt-this.marginBottom)),this.plotSizeX=he?re:jt,this.plotSizeY=he?jt:re,this.spacingBox=Ce.spacingBox={x:ve[3],y:ve[0],width:Gt-ve[3]-ve[1],height:le-ve[0]-ve[2]},this.plotBox=Ce.plotBox={x:wt,y:Dt,width:jt,height:re},Te&&(this.clipBox={x:Ke(Te[3]),y:Ke(Te[0]),width:Ke(this.plotSizeX-Te[1]-Te[3]),height:Ke(this.plotSizeY-Te[0]-Te[2])}),Ct||(this.axes.forEach(function(rn){rn.setAxisSize(),rn.setAxisTranslation()}),Ce.alignElements()),bt(this,"afterSetChartSize",{skipAxes:Ct})}resetMargins(){bt(this,"resetMargins");let Ct=this,wt=Ct.options.chart,Dt=wt.plotBorderWidth||0,jt=Dt/2;["margin","spacing"].forEach(function(re){let le=wt[re],Gt=tt(le)?le:[le,le,le,le];["Top","Right","Bottom","Left"].forEach(function(he,ve){Ct[re][ve]=F(wt[re+he],Gt[ve])})}),k.forEach(function(re,le){Ct[re]=F(Ct.margin[le],Ct.spacing[le])}),Ct.axisOffset=[0,0,0,0],Ct.clipOffset=[jt,jt,jt,jt],Ct.plotBorderWidth=Dt}drawChartBox(){let Ct=this.options.chart,wt=this.renderer,Dt=this.chartWidth,jt=this.chartHeight,re=this.styledMode,le=this.plotBGImage,Gt=Ct.backgroundColor,he=Ct.plotBackgroundColor,ve=Ct.plotBackgroundImage,Ce=this.plotLeft,Te=this.plotTop,Ke=this.plotWidth,rn=this.plotHeight,un=this.plotBox,Qt=this.clipRect,Kt=this.clipBox,Jt=this.chartBackground,Et=this.plotBackground,Rt=this.plotBorder,zt,Ft,ce,Se="animate";Jt||(this.chartBackground=Jt=wt.rect().addClass("highcharts-background").add(),Se="attr"),re?zt=Ft=Jt.strokeWidth():(Ft=(zt=Ct.borderWidth||0)+(Ct.shadow?8:0),ce={fill:Gt||"none"},(zt||Jt["stroke-width"])&&(ce.stroke=Ct.borderColor,ce["stroke-width"]=zt),Jt.attr(ce).shadow(Ct.shadow)),Jt[Se]({x:Ft/2,y:Ft/2,width:Dt-Ft-zt%2,height:jt-Ft-zt%2,r:Ct.borderRadius}),Se="animate",Et||(Se="attr",this.plotBackground=Et=wt.rect().addClass("highcharts-plot-background").add()),Et[Se](un),!re&&(Et.attr({fill:he||"none"}).shadow(Ct.plotShadow),ve&&(le?(ve!==le.attr("href")&&le.attr("href",ve),le.animate(un)):this.plotBGImage=wt.image(ve,Ce,Te,Ke,rn).add())),Qt?Qt.animate({width:Kt.width,height:Kt.height}):this.clipRect=wt.clipRect(Kt),Se="animate",Rt||(Se="attr",this.plotBorder=Rt=wt.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),re||Rt.attr({stroke:Ct.plotBorderColor,"stroke-width":Ct.plotBorderWidth||0,fill:"none"}),Rt[Se](Rt.crisp({x:Ce,y:Te,width:Ke,height:rn},-Rt.strokeWidth())),this.isDirtyBox=!1,bt(this,"afterDrawChartBox")}propFromSeries(){let Ct,wt,Dt,jt=this,re=jt.options.chart,le=jt.options.series;["inverted","angular","polar"].forEach(function(Gt){for(wt=h[re.type],Dt=re[Gt]||wt&&wt.prototype[Gt],Ct=le&&le.length;!Dt&&Ct--;)(wt=h[le[Ct].type])&&wt.prototype[Gt]&&(Dt=!0);jt[Gt]=Dt})}linkSeries(Ct){let wt=this,Dt=wt.series;Dt.forEach(function(jt){jt.linkedSeries.length=0}),Dt.forEach(function(jt){let{linkedTo:re}=jt.options;if(nt(re)){let le;(le=re===":previous"?wt.series[jt.index-1]:wt.get(re))&&le.linkedParent!==jt&&(le.linkedSeries.push(jt),jt.linkedParent=le,le.enabledDataSorting&&jt.setDataSortingOptions(),jt.visible=F(jt.options.visible,le.options.visible,jt.visible))}}),bt(this,"afterLinkSeries",{isUpdating:Ct})}renderSeries(){this.series.forEach(function(Ct){Ct.translate(),Ct.render()})}render(){var Ce;let Ct=this.axes,wt=this.colorAxis,Dt=this.renderer,jt=this.options.chart.axisLayoutRuns||2,re=Te=>{Te.forEach(Ke=>{Ke.visible&&Ke.render()})},le=0,Gt=!0,he,ve=0;for(let Te of(this.setTitle(),bt(this,"beforeMargins"),(Ce=this.getStacks)==null||Ce.call(this),this.getMargins(!0),this.setChartSize(),Ct)){let{options:Ke}=Te,{labels:rn}=Ke;if(this.hasCartesianSeries&&Te.horiz&&Te.visible&&rn.enabled&&Te.series.length&&Te.coll!=="colorAxis"&&!this.polar){le=Ke.tickLength,Te.createGroups();let un=new A(Te,0,"",!0),Qt=un.createLabel("x",rn);if(un.destroy(),Qt&&F(rn.reserveSpace,!B(Ke.crossing))&&(le=Qt.getBBox().height+rn.distance+Math.max(Ke.offset||0,0)),le){Qt==null||Qt.destroy();break}}}for(this.plotHeight=Math.max(this.plotHeight-le,0);(Gt||he||jt>1)&&ve(ve?1:1.1),he=Ke/this.plotHeight>(ve?1:1.05),ve++}this.drawChartBox(),this.hasCartesianSeries?re(Ct):wt&&wt.length&&re(wt),this.seriesGroup||(this.seriesGroup=Dt.g("series-group").attr({zIndex:3}).shadow(this.options.chart.seriesGroupShadow).add()),this.renderSeries(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0}addCredits(Ct){let wt=this,Dt=x(!0,this.options.credits,Ct);Dt.enabled&&!this.credits&&(this.credits=this.renderer.text(Dt.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){Dt.href&&(C.location.href=Dt.href)}).attr({align:Dt.position.align,zIndex:8}),wt.styledMode||this.credits.css(Dt.style),this.credits.add().align(Dt.position),this.credits.update=function(jt){wt.credits=wt.credits.destroy(),wt.addCredits(jt)})}destroy(){let Ct,wt=this,Dt=wt.axes,jt=wt.series,re=wt.container,le=re&&re.parentNode;for(bt(wt,"destroy"),wt.renderer.forExport?ct(Q,wt):Q[wt.index]=void 0,X.chartCount--,wt.renderTo.removeAttribute("data-highcharts-chart"),gt(wt),Ct=Dt.length;Ct--;)Dt[Ct]=Dt[Ct].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),Ct=jt.length;Ct--;)jt[Ct]=jt[Ct].destroy();["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(function(Gt){let he=wt[Gt];he&&he.destroy&&(wt[Gt]=he.destroy())}),re&&(re.innerHTML=T.emptyHTML,gt(re),le&&K(re)),y(wt,function(Gt,he){delete wt[he]})}firstRender(){var jt;let Ct=this,wt=Ct.options;Ct.getContainer(),Ct.resetMargins(),Ct.setChartSize(),Ct.propFromSeries(),Ct.getAxes();let Dt=w(wt.series)?wt.series:[];wt.series=[],Dt.forEach(function(re){Ct.initSeries(re)}),Ct.linkSeries(),Ct.setSortedData(),bt(Ct,"beforeRender"),Ct.render(),(jt=Ct.pointer)==null||jt.getChartPosition(),Ct.renderer.imgCount||Ct.hasLoaded||Ct.onload(),Ct.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(Ct){Ct&&this.index!==void 0&&Ct.apply(this,[this])},this),bt(this,"load"),bt(this,"render"),S(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:Ct,title:wt}=this;!Ct||this.accessibility||(this.renderer.boxWrapper.attr({role:"img","aria-label":(wt&&wt.element.textContent||"").replace(/this.transform({reset:!0,trigger:"zoom"}))}pan(Ct,wt){let Dt=this,jt=typeof wt=="object"?wt:{enabled:wt,type:"x"},re=jt.type,le=re&&Dt[{x:"xAxis",xy:"axes",y:"yAxis"}[re]].filter(he=>he.options.panningEnabled&&!he.options.isInternal),Gt=Dt.options.chart;Gt!=null&&Gt.panning&&(Gt.panning=jt),bt(this,"pan",{originalEvent:Ct},()=>{Dt.transform({axes:le,event:Ct,to:{x:Ct.chartX-(Dt.mouseDownX||0),y:Ct.chartY-(Dt.mouseDownY||0)},trigger:"pan"}),I(Dt.container,{cursor:"move"})})}transform(Ct){var rn,un,Qt,Kt,Jt;let{axes:wt=this.axes,event:Dt,from:jt={},reset:re,selection:le,to:Gt={},trigger:he}=Ct,{inverted:ve}=this,Ce=!1,Te,Ke;for(let Et of((rn=this.hoverPoints)==null||rn.forEach(Rt=>Rt.setState()),wt)){let{horiz:Rt,len:zt,minPointOffset:Ft=0,options:ce,reversed:Se}=Et,xe=Rt?"width":"height",Ze=Rt?"x":"y",pn=F(Gt[xe],Et.len),bn=F(jt[xe],Et.len),Ln=10>Math.abs(pn)?1:pn/bn,vn=(jt[Ze]||0)+bn/2-Et.pos,Tn=vn-(((un=Gt[Ze])!=null?un:Et.pos)+pn/2-Et.pos)/Ln,Qn=Se&&!ve||!Se&&ve?-1:1;if(!re&&(vn<0||vn>Et.len))continue;let dr=Et.toValue(Tn,!0)+(le||Et.isOrdinal?0:Ft*Qn),ye=Et.toValue(Tn+zt/Ln,!0)-(le||Et.isOrdinal?0:Ft*Qn||0),Fe=Et.allExtremes;if(dr>ye&&([dr,ye]=[ye,dr]),Ln===1&&!re&&Et.coll==="yAxis"&&!Fe){for(let an of Et.series){let gn=an.getExtremes(an.getProcessedData(!0).yData,!0);Fe!=null||(Fe={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),B(gn.dataMin)&&B(gn.dataMax)&&(Fe.dataMin=Math.min(gn.dataMin,Fe.dataMin),Fe.dataMax=Math.max(gn.dataMax,Fe.dataMax))}Et.allExtremes=Fe}let{dataMin:qe,dataMax:be,min:je,max:Ue}=dt(Et.getExtremes(),Fe||{}),Re=qe!=null?qe:ce.min,Ie=be!=null?be:ce.max,tn=ye-dr,Mn=Et.categories?0:Math.min(tn,Ie-Re),ke=Re-Mn*(S(ce.min)?0:ce.minPadding),on=Ie+Mn*(S(ce.max)?0:ce.maxPadding),_n=Et.allowZoomOutside||Ln===1||he!=="zoom"&&Ln>1,Pe=Math.min((Qt=ce.min)!=null?Qt:ke,ke,_n?je:ke),wn=Math.max((Kt=ce.max)!=null?Kt:on,on,_n?Ue:on);(!Et.isOrdinal||Et.options.overscroll||Ln!==1||re)&&(dr=1&&(ye=dr+tn)),ye>wn&&(ye=wn,Ln>=1&&(dr=ye-tn)),(re||Et.series.length&&(dr!==je||ye!==Ue)&&dr>=Pe&&ye<=wn)&&(le?le[Et.coll].push({axis:Et,min:dr,max:ye}):(Et.isPanning=he!=="zoom",Et.isPanning&&(Ke=!0),Et.setExtremes(re?void 0:dr,re?void 0:ye,!1,!1,{move:Tn,trigger:he,scale:Ln}),!re&&(dr>Pe||ye{delete Ct.selection,Ct.trigger="zoom",this.transform(Ct)}):(!Te||Ke||this.resetZoomButton?!Te&&this.resetZoomButton&&(this.resetZoomButton=this.resetZoomButton.destroy()):this.showResetZoom(),this.redraw(he==="zoom"&&((Jt=this.options.chart.animation)!=null?Jt:this.pointCount<100)))),Ce}}return dt($t.prototype,{callbacks:[],collectionsWithInit:{xAxis:[$t.prototype.addAxis,[!0]],yAxis:[$t.prototype.addAxis,[!1]],series:[$t.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroundColor","plotBackgroundImage","plotBorderColor","plotBorderWidth","plotShadow","shadow"],propsRequireReflow:["margin","marginTop","marginRight","marginBottom","marginLeft","spacing","spacingTop","spacingRight","spacingBottom","spacingLeft"],propsRequireUpdateSeries:["chart.inverted","chart.polar","chart.ignoreHiddenSeries","chart.type","colors","plotOptions","time","tooltip"]}),$t}),g(d,"Extensions/ScrollablePlotArea.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{stop:J}=L,{composed:X}=R,{addEvent:q,createElement:Z,css:Y,defined:V,merge:N,pushUnique:U}=$;function T(){let O=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!O&&(this.scrollablePlotArea=O=new M(this)),O==null||O.applyFixed()}function A(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}class M{static compose(H,z,c){U(X,this.compose)&&(q(H,"afterInit",A),q(z,"afterSetChartSize",D=>this.afterSetSize(D.target,D)),q(z,"render",T),q(c,"show",A))}static afterSetSize(H,z){let c,D,it,{minWidth:Q,minHeight:W}=H.options.chart.scrollablePlotArea||{},{clipBox:k,plotBox:_,inverted:C,renderer:h}=H;if(!h.forExport&&(Q?(H.scrollablePixelsX=c=Math.max(0,Q-H.chartWidth),c&&(H.scrollablePlotBox=N(H.plotBox),_.width=H.plotWidth+=c,k[C?"height":"width"]+=c,it=!0)):W&&(H.scrollablePixelsY=D=Math.max(0,W-H.chartHeight),V(D)&&(H.scrollablePlotBox=N(H.plotBox),_.height=H.plotHeight+=D,k[C?"width":"height"]+=D,it=!1)),V(it)&&!z.skipAxes))for(let l of H.axes)l.horiz===it&&(l.setAxisSize(),l.setAxisTranslation())}constructor(H){var u,v;let z,c=H.options.chart,D=st.getRendererType(),it=c.scrollablePlotArea||{},Q=this.moveFixedElements.bind(this),W={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};H.scrollablePixelsX&&(W.overflowX="auto"),H.scrollablePixelsY&&(W.overflowY="auto"),this.chart=H;let k=this.parentDiv=Z("div",{className:"highcharts-scrolling-parent"},{position:"relative"},H.renderTo),_=this.scrollingContainer=Z("div",{className:"highcharts-scrolling"},W,k),C=this.innerContainer=Z("div",{className:"highcharts-inner-container"},void 0,_),h=this.fixedDiv=Z("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(((u=c.style)==null?void 0:u.zIndex)||0)+2,top:0},void 0,!0),l=this.fixedRenderer=new D(h,H.chartWidth,H.chartHeight,c.style);this.mask=l.path().attr({fill:c.backgroundColor||"#fff","fill-opacity":(v=it.opacity)!=null?v:.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),_.parentNode.insertBefore(h,_),Y(H.renderTo,{overflow:"visible"}),q(H,"afterShowResetZoom",Q),q(H,"afterApplyDrilldown",Q),q(H,"afterLayOutTitles",Q),q(_,"scroll",()=>{let{pointer:I,hoverPoint:S}=H;I&&(delete I.chartPosition,S&&(z=S),I.runPointActions(void 0,z,!0))}),C.appendChild(H.container)}applyFixed(){var B;let{chart:H,fixedRenderer:z,isDirty:c,scrollingContainer:D}=this,{axisOffset:it,chartWidth:Q,chartHeight:W,container:k,plotHeight:_,plotLeft:C,plotTop:h,plotWidth:l,scrollablePixelsX:u=0,scrollablePixelsY:v=0}=H,{scrollPositionX:I=0,scrollPositionY:S=0}=H.options.chart.scrollablePlotArea||{},b=Q+u,K=W+v;z.setSize(Q,W),(c==null||c)&&(this.isDirty=!1,this.moveFixedElements()),J(H.container),Y(k,{width:`${b}px`,height:`${K}px`}),H.renderer.boxWrapper.attr({width:b,height:K,viewBox:[0,0,b,K].join(" ")}),(B=H.chartBackground)==null||B.attr({width:b,height:K}),Y(D,{width:`${Q}px`,height:`${W}px`}),V(c)||(D.scrollLeft=u*I,D.scrollTop=v*S);let ct=h-it[0]-1,et=C-it[3]-1,dt=h+_+it[2]+1,pt=C+l+it[1]+1,bt=C+l-u,Mt=h+_-v,w=[["M",0,0]];u?w=[["M",0,ct],["L",C-1,ct],["L",C-1,dt],["L",0,dt],["Z"],["M",bt,ct],["L",Q,ct],["L",Q,dt],["L",bt,dt],["Z"]]:v&&(w=[["M",et,0],["L",et,h-1],["L",pt,h-1],["L",pt,0],["Z"],["M",et,Mt],["L",et,W],["L",pt,W],["L",pt,Mt],["Z"]]),H.redrawTrigger!=="adjustHeight"&&this.mask.attr({d:w})}moveFixedElements(){let H,{container:z,inverted:c,scrollablePixelsX:D,scrollablePixelsY:it}=this.chart,Q=this.fixedRenderer,W=M.fixedSelectors;for(let k of(D&&!c?H=".highcharts-yaxis":D&&c||it&&!c?H=".highcharts-xaxis":it&&c&&(H=".highcharts-yaxis"),H&&W.push(`${H}:not(.highcharts-radial-axis)`,`${H}-labels:not(.highcharts-radial-axis-labels)`),W))[].forEach.call(z.querySelectorAll(k),_=>{(_.namespaceURI===Q.SVG_NS?Q.box:Q.box.parentNode).appendChild(_),_.style.pointerEvents="auto"})}}return M.fixedSelectors=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-drillup-button",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-range-selector-group",".highcharts-reset-zoom",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"],M}),g(d,"Core/Axis/Stacking/StackItem.js",[d["Core/Templating.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{format:$}=L,{series:J}=R,{destroyObjectProperties:X,fireEvent:q,isNumber:Z,pick:Y}=st;return class{constructor(V,N,U,T,A){let M=V.chart.inverted,O=V.reversed;this.axis=V;let H=this.isNegative=!!U!=!!O;this.options=N=N||{},this.x=T,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=A,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:N.align||(M?H?"left":"right":"center"),verticalAlign:N.verticalAlign||(M?"middle":H?"bottom":"top"),y:N.y,x:N.x},this.textAlign=N.textAlign||(M?H?"right":"left":"center")}destroy(){X(this,this.axis)}render(V){let N=this.axis.chart,U=this.options,T=U.format,A=T?$(T,this,N):U.formatter.call(this);if(this.label)this.label.attr({text:A,visibility:"hidden"});else{this.label=N.renderer.label(A,null,void 0,U.shape,void 0,void 0,U.useHTML,!1,"stack-labels");let M={r:U.borderRadius||0,text:A,padding:Y(U.padding,5),visibility:"hidden"};N.styledMode||(M.fill=U.backgroundColor,M.stroke=U.borderColor,M["stroke-width"]=U.borderWidth,this.label.css(U.style||{})),this.label.attr(M),this.label.added||this.label.add(V)}this.label.labelrank=N.plotSizeY,q(this,"afterRender")}setOffset(V,N,U,T,A,M){let{alignOptions:O,axis:H,label:z,options:c,textAlign:D}=this,it=H.chart,Q=this.getStackBox({xOffset:V,width:N,boxBottom:U,boxTop:T,defaultX:A,xAxis:M}),{verticalAlign:W}=O;if(z&&Q){let k=z.getBBox(void 0,0),_=z.padding,C=Y(c.overflow,"justify")==="justify",h;O.x=c.x||0,O.y=c.y||0;let{x:l,y:u}=this.adjustStackPosition({labelBox:k,verticalAlign:W,textAlign:D});Q.x-=l,Q.y-=u,z.align(O,!1,Q),(h=it.isInsidePlot(z.alignAttr.x+O.x+l,z.alignAttr.y+O.y+u))||(C=!1),C&&J.prototype.justifyDataLabel.call(H,z,O,z.alignAttr,k,Q),z.attr({x:z.alignAttr.x,y:z.alignAttr.y,rotation:c.rotation,rotationOriginX:k.width*{left:0,center:.5,right:1}[c.textAlign||"center"],rotationOriginY:k.height/2}),Y(!C&&c.crop,!0)&&(h=Z(z.x)&&Z(z.y)&&it.isInsidePlot(z.x-_+(z.width||0),z.y)&&it.isInsidePlot(z.x+_,z.y)),z[h?"show":"hide"]()}q(this,"afterSetOffset",{xOffset:V,width:N})}adjustStackPosition({labelBox:V,verticalAlign:N,textAlign:U}){let T={bottom:0,middle:1,top:2,right:1,center:0,left:-1},A=T[N],M=T[U];return{x:V.width/2+V.width/2*M,y:V.height/2*A}}getStackBox(V){let N=this.axis,U=N.chart,{boxTop:T,defaultX:A,xOffset:M,width:O,boxBottom:H}=V,z=N.stacking.usePercentage?100:Y(T,this.total,0),c=N.toPixels(z),D=V.xAxis||U.xAxis[0],it=Y(A,D.translate(this.x))+M,Q=Math.abs(c-N.toPixels(H||Z(N.min)&&N.logarithmic&&N.logarithmic.lin2log(N.min)||0)),W=U.inverted,k=this.isNegative;return W?{x:(k?c:c-Q)-U.plotLeft,y:D.height-it-O+D.top-U.plotTop,width:Q,height:O}:{x:it+D.transB-U.plotLeft,y:(k?c-Q:c)-U.plotTop,width:O,height:Q}}}}),g(d,"Core/Axis/Stacking/StackingAxis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{getDeferredAnimation:q}=L,{series:{prototype:Z}}=st,{addEvent:Y,correctFloat:V,defined:N,destroyObjectProperties:U,fireEvent:T,isArray:A,isNumber:M,objectEach:O,pick:H}=J;function z(){let h=this.inverted;this.axes.forEach(l=>{l.stacking&&l.stacking.stacks&&l.hasVisibleSeries&&(l.stacking.oldStacks=l.stacking.stacks)}),this.series.forEach(l=>{let u=l.xAxis&&l.xAxis.options||{};l.options.stacking&&l.reserveSpace()&&(l.stackKey=[l.type,H(l.options.stack,""),h?u.top:u.left,h?u.height:u.width].join(","))})}function c(){var l;let h=this.stacking;if(h){let u=h.stacks;O(u,(v,I)=>{U(v),delete u[I]}),(l=h.stackTotalGroup)==null||l.destroy()}}function D(){this.stacking||(this.stacking=new C(this))}function it(h,l,u,v){return!N(h)||h.x!==l||v&&h.stackKey!==v?h={x:l,index:0,key:v,stackKey:v}:h.index++,h.key=[u,l,h.index].join(","),h}function Q(){let h,l=this,u=l.yAxis,v=l.stackKey||"",I=u.stacking.stacks,S=l.processedXData,b=l.options.stacking,K=l[b+"Stacker"];K&&[v,"-"+v].forEach(ct=>{var Mt;let et=S.length,dt,pt,bt;for(;et--;)dt=S[et],h=l.getStackIndicator(h,dt,l.index,ct),pt=(Mt=I[ct])==null?void 0:Mt[dt],(bt=pt==null?void 0:pt.points[h.key||""])&&K.call(l,bt,pt,et)})}function W(h,l,u){let v=l.total?100/l.total:0;h[0]=V(h[0]*v),h[1]=V(h[1]*v),this.stackedYData[u]=h[1]}function k(h){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&!this.options.stacking&&this.chart.series.length>1?Z.setStackedPoints.call(this,h,"group"):h.stacking.resetStacks())}function _(h,l){var At,$t;let u,v,I,S,b,K,ct,et,dt,pt=l||this.options.stacking;if(!pt||!this.reserveSpace()||({group:"xAxis"}[pt]||"yAxis")!==h.coll)return;let bt=this.processedXData,Mt=this.processedYData,w=[],B=Mt.length,tt=this.options,nt=tt.threshold||0,x=tt.startFromThreshold?nt:0,y=tt.stack,F=l?`${this.type},${pt}`:this.stackKey||"",lt="-"+F,rt=this.negStacks,gt=h.stacking,vt=gt.stacks,Ot=gt.oldStacks;for(gt.stacksTouched+=1,ct=0;ct0&&this.singleStacks===!1&&(I.points[K][0]=I.points[this.index+","+et+",0"][0])):(delete I.points[K],delete I.points[this.index]);let Xt=I.total||0;pt==="percent"?(S=v?F:lt,Xt=rt&&(($t=vt[S])!=null&&$t[et])?(S=vt[S][et]).total=Math.max(S.total||0,Xt)+Math.abs(dt)||0:V(Xt+(Math.abs(dt)||0))):pt==="group"?(A(dt)&&(dt=dt[0]),dt!==null&&Xt++):Xt=V(Xt+(dt||0)),pt==="group"?I.cumulative=(Xt||1)-1:I.cumulative=V(H(I.cumulative,x)+(dt||0)),I.total=Xt,dt!==null&&(I.points[K].push(I.cumulative),w[ct]=I.cumulative,I.hasValidPoints=!0)}pt==="percent"&&(gt.usePercentage=!0),pt!=="group"&&(this.stackedYData=w),gt.oldStacks={}}class C{constructor(l){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=l}buildStacks(){let l,u,v=this.axis,I=v.series,S=v.coll==="xAxis",b=v.options.reversedStacks,K=I.length;for(this.resetStacks(),this.usePercentage=!1,u=K;u--;)l=I[b?u:K-u-1],S&&l.setGroupedPoints(v),l.setStackedPoints(v);if(!S)for(u=0;u{O(l,u=>{u.cumulative=u.total})}))}resetStacks(){O(this.stacks,l=>{O(l,(u,v)=>{M(u.touched)&&u.touched{O(ct,et=>{et.render(b)})}),b.animate({opacity:1},S)}}return(X||(X={})).compose=function(h,l,u){let v=l.prototype,I=u.prototype;v.getStacks||(Y(h,"init",D),Y(h,"destroy",c),v.getStacks=z,I.getStackIndicator=it,I.modifyStacks=Q,I.percentStacker=W,I.setGroupedPoints=k,I.setStackedPoints=_)},X}),g(d,"Series/Line/LineSeries.js",[d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{defined:$,merge:J,isObject:X}=st;class q extends L{drawGraph(){let Y=this.options,V=(this.gappedPath||this.getGraphPath).call(this),N=this.chart.styledMode;[this,...this.zones].forEach((U,T)=>{let A,M=U.graph,O=M?"animate":"attr",H=U.dashStyle||Y.dashStyle;M?(M.endX=this.preventGraphAnimation?null:V.xMap,M.animate({d:V})):V.length&&(U.graph=M=this.chart.renderer.path(V).addClass("highcharts-graph"+(T?` highcharts-zone-graph-${T-1} `:" ")+(T&&U.className||"")).attr({zIndex:1}).add(this.group)),M&&!N&&(A={stroke:!T&&Y.lineColor||U.color||this.color||"#cccccc","stroke-width":Y.lineWidth||0,fill:this.fillGraph&&this.color||"none"},H?A.dashstyle=H:Y.linecap!=="square"&&(A["stroke-linecap"]=A["stroke-linejoin"]="round"),M[O](A).shadow(T<2&&Y.shadow&&J({filterUnits:"userSpaceOnUse"},X(Y.shadow)?Y.shadow:{}))),M&&(M.startX=V.xMap,M.isArea=V.isArea)})}getGraphPath(Y,V,N){let U=this,T=U.options,A=[],M=[],O,H=T.step,z=(Y=Y||U.points).reversed;return z&&Y.reverse(),(H={right:1,center:2}[H]||H&&3)&&z&&(H=4-H),(Y=this.getValidPoints(Y,!1,!(T.connectNulls&&!V&&!N))).forEach(function(c,D){let it,Q=c.plotX,W=c.plotY,k=Y[D-1],_=c.isNull||typeof W!="number";(c.leftCliff||k&&k.rightCliff)&&!N&&(O=!0),_&&!$(V)&&D>0?O=!T.connectNulls:_&&!V?O=!0:(D===0||O?it=[["M",c.plotX,c.plotY]]:U.getPointSpline?it=[U.getPointSpline(Y,c,D)]:H?(it=H===1?[["L",k.plotX,W]]:H===2?[["L",(k.plotX+Q)/2,k.plotY],["L",(k.plotX+Q)/2,W]]:[["L",Q,k.plotY]]).push(["L",Q,W]):it=[["L",Q,W]],M.push(c.x),H&&(M.push(c.x),H===2&&M.push(c.x)),A.push.apply(A,it),O=!1)}),A.xMap=M,U.graphPath=A,A}}return q.defaultOptions=J(L.defaultOptions,{legendSymbol:"lineMarker"}),R.registerSeriesType("line",q),q}),g(d,"Series/Area/AreaSeriesDefaults.js",[],function(){return{threshold:0,legendSymbol:"areaMarker"}}),g(d,"Series/Area/AreaSeries.js",[d["Series/Area/AreaSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{line:$}}=R,{extend:J,merge:X,objectEach:q,pick:Z}=st;class Y extends ${drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:N,options:U}=this;[this,...this.zones].forEach((T,A)=>{var c;let M={},O=T.fillColor||U.fillColor,H=T.area,z=H?"animate":"attr";H?(H.endX=this.preventGraphAnimation?null:N.xMap,H.animate({d:N})):(M.zIndex=0,(H=T.area=this.chart.renderer.path(N).addClass("highcharts-area"+(A?` highcharts-zone-area-${A-1} `:" ")+(A&&T.className||"")).add(this.group)).isArea=!0),this.chart.styledMode||(M.fill=O||T.color||this.color,M["fill-opacity"]=O?1:(c=U.fillOpacity)!=null?c:.75,H.css({pointerEvents:this.stickyTracking?"none":"auto"})),H[z](M),H.startX=N.xMap,H.shiftUnit=U.step?2:1})}getGraphPath(N){let U,T,A,M=$.prototype.getGraphPath,O=this.options,H=O.stacking,z=this.yAxis,c=[],D=[],it=this.index,Q=z.stacking.stacks[this.stackKey],W=O.threshold,k=Math.round(z.getThreshold(O.threshold)),_=Z(O.connectNulls,H==="percent"),C=function(S,b,K){let ct=N[S],et=H&&Q[ct.x].points[it],dt=ct[K+"Null"]||0,pt=ct[K+"Cliff"]||0,bt,Mt,w=!0;pt||dt?(bt=(dt?et[0]:et[1])+pt,Mt=et[0]+pt,w=!!dt):!H&&N[b]&&N[b].isNull&&(bt=Mt=W),bt!==void 0&&(D.push({plotX:U,plotY:bt===null?k:z.getThreshold(bt),isNull:w,isCliff:!0}),c.push({plotX:U,plotY:Mt===null?k:z.getThreshold(Mt),doCurve:!1}))};N=N||this.points,H&&(N=this.getStackPoints(N));for(let S=0,b=N.length;S1&&H&&D.some(S=>S.isCliff)&&(v.hasStackedCliffs=I.hasStackedCliffs=!0),v.xMap=h.xMap,this.areaPath=v,I}getStackPoints(N){let U=this,T=[],A=[],M=this.xAxis,O=this.yAxis,H=O.stacking.stacks[this.stackKey],z={},c=O.series,D=c.length,it=O.options.reversedStacks?1:-1,Q=c.indexOf(U);if(N=N||this.points,this.options.stacking){for(let k=0;kk.visible);A.forEach(function(k,_){let C=0,h,l;if(z[k]&&!z[k].isNull)T.push(z[k]),[-1,1].forEach(function(u){let v=u===1?"rightNull":"leftNull",I=H[A[_+u]],S=0;if(I){let b=Q;for(;b>=0&&b=0&&uQ&&U>O?(U=Math.max(Q,O),A=2*O-U):Uk&&A>O?(A=Math.max(k,O),U=2*O-A):A1){let l=this.xAxis.series.filter(S=>S.visible).map(S=>S.index),u=0,v=0;D((h=this.xAxis.stacking)==null?void 0:h.stacks,S=>{if(typeof _.x=="number"){let b=S[_.x.toString()];if(b&&O(b.points[this.index])){let K=Object.keys(b.points).filter(ct=>!ct.match(",")&&b.points[ct]&&b.points[ct].length>1).map(parseFloat).filter(ct=>l.indexOf(ct)!==-1).sort((ct,et)=>et-ct);u=K.indexOf(this.index),v=K.length}}}),u=this.xAxis.reversed?v-1-u:u;let I=(v-1)*C.paddedWidth+k;W=(_.plotX||0)+I/2-k-u*C.paddedWidth}return W}translate(){let W=this,k=W.chart,_=W.options,C=W.dense=W.closestPointRange*W.xAxis.transA<2,h=W.borderWidth=c(_.borderWidth,C?0:1),l=W.xAxis,u=W.yAxis,v=_.threshold,I=c(_.minPointLength,5),S=W.getColumnMetrics(),b=S.width,K=W.pointXOffset=S.offset,ct=W.dataMin,et=W.dataMax,dt=W.translatedThreshold=u.getThreshold(v),pt=W.barW=Math.max(b,1+2*h);_.pointPadding&&(pt=Math.ceil(pt)),J.prototype.translate.apply(W),W.points.forEach(function(bt){let Mt=c(bt.yBottom,dt),w=999+Math.abs(Mt),B=bt.plotX||0,tt=N(bt.plotY,-w,u.len+w),nt,x=Math.min(tt,Mt),y=Math.max(tt,Mt)-x,F=b,lt=B+K,rt=pt;I&&Math.abs(y)I?Mt-I:dt-(nt?I:0)),T(bt.options.pointWidth)&&(lt-=Math.round(((F=rt=Math.ceil(bt.options.pointWidth))-b)/2)),_.centerInCategory&&!_.stacking&&(lt=W.adjustForMissingColumns(lt,F,bt,S)),bt.barX=lt,bt.pointWidth=F,bt.tooltipPos=k.inverted?[N(u.len+u.pos-k.plotLeft-tt,u.pos-k.plotLeft,u.len+u.pos-k.plotLeft),l.len+l.pos-k.plotTop-lt-rt/2,y]:[l.left-k.plotLeft+lt+rt/2,N(tt+u.pos-k.plotTop,u.pos-k.plotTop,u.len+u.pos-k.plotTop),y],bt.shapeType=W.pointClass.prototype.shapeType||"roundedRect",bt.shapeArgs=W.crispCol(lt,bt.isNull?dt:x,rt,bt.isNull?0:y)}),M(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(W,k){let _=this.options,C=this.pointAttrToOptions||{},h=C.stroke||"borderColor",l=C["stroke-width"]||"borderWidth",u,v,I,S=W&&W.color||this.color,b=W&&W[h]||_[h]||S,K=W&&W.options.dashStyle||_.dashStyle,ct=W&&W[l]||_[l]||this[l]||0,et=c(W&&W.opacity,_.opacity,1);W&&this.zones.length&&(v=W.getZone(),S=W.options.color||v&&(v.color||W.nonZonedColor)||this.color,v&&(b=v.borderColor||b,K=v.dashStyle||K,ct=v.borderWidth||ct)),k&&W&&(I=(u=z(_.states[k],W.options.states&&W.options.states[k]||{})).brightness,S=u.color||I!==void 0&&Y(S).brighten(u.brightness).get()||S,b=u[h]||b,ct=u[l]||ct,K=u.dashStyle||K,et=c(u.opacity,et));let dt={fill:S,stroke:b,"stroke-width":ct,opacity:et};return K&&(dt.dashstyle=K),dt}drawPoints(W=this.points){let k,_=this,C=this.chart,h=_.options,l=C.renderer,u=h.animationLimit||250;W.forEach(function(v){let I=v.plotY,S=v.graphic,b=!!S,K=S&&C.pointCounth==null?void 0:h.enabled)}function c(h,l,u,v,I){var tt;let{chart:S,enabledDataSorting:b}=this,K=this.isCartesian&&S.inverted,ct=h.plotX,et=h.plotY,dt=u.rotation||0,pt=q(ct)&&q(et)&&S.isInsidePlot(ct,Math.round(et),{inverted:K,paneCoordinates:!0,series:this}),bt=dt===0&&A(u.overflow,b?"none":"justify")==="justify",Mt=this.visible&&h.visible!==!1&&q(ct)&&(h.series.forceDL||b&&!bt||pt||A(u.inside,!!this.options.stacking)&&v&&S.isInsidePlot(ct,K?v.x+1:v.y+v.height-1,{inverted:K,paneCoordinates:!0,series:this})),w=h.pos();if(Mt&&w){var B;let nt=l.getBBox(),x=l.getBBox(void 0,0),y={right:1,center:.5}[u.align||0]||0,F={bottom:1,middle:.5}[u.verticalAlign||0]||0;if(v=Z({x:w[0],y:Math.round(w[1]),width:0,height:0},v||{}),u.alignTo==="plotEdges"&&this.isCartesian&&(v[K?"x":"y"]=0,v[K?"width":"height"]=((tt=this.yAxis)==null?void 0:tt.len)||0),Z(u,{width:nt.width,height:nt.height}),B=v,b&&this.xAxis&&!bt&&this.setDataLabelStartPos(h,l,I,pt,B),l.align(U(u,{width:x.width,height:x.height}),!1,v,!1),l.alignAttr.x+=y*(x.width-nt.width),l.alignAttr.y+=F*(x.height-nt.height),l[l.placed?"animate":"attr"]({x:l.alignAttr.x+(nt.width-x.width)/2,y:l.alignAttr.y+(nt.height-x.height)/2,rotationOriginX:(l.width||0)/2,rotationOriginY:(l.height||0)/2}),bt&&v.height>=0)this.justifyDataLabel(l,u,l.alignAttr,nt,v,I);else if(A(u.crop,!0)){let{x:lt,y:rt}=l.alignAttr;Mt=S.isInsidePlot(lt,rt,{paneCoordinates:!0,series:this})&&S.isInsidePlot(lt+nt.width-1,rt+nt.height-1,{paneCoordinates:!0,series:this})}u.shape&&!dt&&l[I?"attr":"animate"]({anchorX:w[0],anchorY:w[1]})}I&&b&&(l.placed=!1),Mt||b&&!bt?(l.show(),l.placed=!0):(l.hide(),l.placed=!1)}function D(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function it(h){let l=this.hasRendered||0,u=this.initDataLabelsGroup().attr({opacity:+l});return!l&&u&&(this.visible&&u.show(),this.options.animation?u.animate({opacity:1},h):u.attr({opacity:1})),u}function Q(h){var Mt;let l;h=h||this.points;let u=this,v=u.chart,I=u.options,S=v.renderer,{backgroundColor:b,plotBackgroundColor:K}=v.options.chart,ct=S.getContrast(N(K)&&K||N(b)&&b||"#000000"),et=_(u),{animation:dt,defer:pt}=et[0],bt=pt?J(v,dt,u):{defer:0,duration:0};Y(this,"drawDataLabels"),(Mt=u.hasDataLabels)!=null&&Mt.call(u)&&(l=this.initDataLabels(bt),h.forEach(w=>{var nt,x;let B=w.dataLabels||[];O(k(et,w.dlOptions||((nt=w.options)==null?void 0:nt.dataLabels))).forEach((y,F)=>{let lt=y.enabled&&(w.visible||w.dataLabelOnHidden)&&(!w.isNull||w.dataLabelOnNull)&&function(le,Gt){let he=Gt.filter;if(he){let ve=he.operator,Ce=le[he.property],Te=he.value;return ve===">"&&Ce>Te||ve==="<"&&Ce="&&Ce>=Te||ve==="<="&&Ce<=Te||ve==="=="&&Ce==Te||ve==="==="&&Ce===Te||ve==="!="&&Ce!=Te||ve==="!=="&&Ce!==Te}return!0}(w,y),{backgroundColor:rt,borderColor:gt,distance:vt,style:Ot={}}=y,At,$t,Xt,Ct,wt={},Dt=B[F],jt=!Dt,re;lt&&($t=A(y[w.formatPrefix+"Format"],y.format),At=w.getLabelConfig(),Xt=q($t)?X($t,At,v):(y[w.formatPrefix+"Formatter"]||y.formatter).call(At,y),Ct=y.rotation,!v.styledMode&&(Ot.color=A(y.color,Ot.color,N(u.color)?u.color:void 0,"#000000"),Ot.color==="contrast"?(rt!=="none"&&(re=rt),w.contrastColor=S.getContrast(re!=="auto"&&re||w.color||u.color),Ot.color=re||!q(vt)&&y.inside||0>M(vt||0)||I.stacking?w.contrastColor:ct):delete w.contrastColor,I.cursor&&(Ot.cursor=I.cursor)),wt={r:y.borderRadius||0,rotation:Ct,padding:y.padding,zIndex:1},v.styledMode||(wt.fill=rt==="auto"?w.color:rt,wt.stroke=gt==="auto"?w.color:gt,wt["stroke-width"]=y.borderWidth),T(wt,(le,Gt)=>{le===void 0&&delete wt[Gt]})),!Dt||lt&&q(Xt)&&!!Dt.div==!!y.useHTML&&(Dt.rotation&&y.rotation||Dt.rotation===y.rotation)||(Dt=void 0,jt=!0),lt&&q(Xt)&&(Dt?wt.text=Xt:(Dt=S.label(Xt,0,0,y.shape,void 0,void 0,y.useHTML,void 0,"data-label")).addClass(" highcharts-data-label-color-"+w.colorIndex+" "+(y.className||"")+(y.useHTML?" highcharts-tracker":"")),Dt&&(Dt.options=y,Dt.attr(wt),v.styledMode?Ot.width&&Dt.css({width:Ot.width,textOverflow:Ot.textOverflow}):Dt.css(Ot).shadow(y.shadow),Y(Dt,"beforeAddingDataLabel",{labelOptions:y,point:w}),Dt.added||Dt.add(l),u.alignDataLabel(w,Dt,y,void 0,jt),Dt.isActive=!0,B[F]&&B[F]!==Dt&&B[F].destroy(),B[F]=Dt))});let tt=B.length;for(;tt--;)B[tt]&&B[tt].isActive?B[tt].isActive=!1:((x=B[tt])==null||x.destroy(),B.splice(tt,1));w.dataLabel=B[0],w.dataLabels=B})),Y(this,"afterDrawDataLabels")}function W(h,l,u,v,I,S){let b=this.chart,K=l.align,ct=l.verticalAlign,et=h.box?0:h.padding||0,dt=b.inverted?this.yAxis:this.xAxis,pt=dt?dt.left-b.plotLeft:0,bt=b.inverted?this.xAxis:this.yAxis,Mt=bt?bt.top-b.plotTop:0,{x:w=0,y:B=0}=l,tt,nt;return(tt=(u.x||0)+et+pt)<0&&(K==="right"&&w>=0?(l.align="left",l.inside=!0):w-=tt,nt=!0),(tt=(u.x||0)+v.width-et+pt)>b.plotWidth&&(K==="left"&&w<=0?(l.align="right",l.inside=!0):w+=b.plotWidth-tt,nt=!0),(tt=u.y+et+Mt)<0&&(ct==="bottom"&&B>=0?(l.verticalAlign="top",l.inside=!0):B-=tt,nt=!0),(tt=(u.y||0)+v.height-et+Mt)>b.plotHeight&&(ct==="top"&&B<=0?(l.verticalAlign="bottom",l.inside=!0):B+=b.plotHeight-tt,nt=!0),nt&&(l.x=w,l.y=B,h.placed=!S,h.align(l,void 0,I)),nt}function k(h,l){let u=[],v;if(V(h)&&!V(l))u=h.map(function(I){return U(I,l)});else if(V(l)&&!V(h))u=l.map(function(I){return U(h,I)});else if(V(h)||V(l)){if(V(h)&&V(l))for(v=Math.max(h.length,l.length);v--;)u[v]=U(h[v],l[v])}else u=U(h,l);return u}function _(h){var u,v;let l=h.chart.options.plotOptions;return O(k(k((u=l==null?void 0:l.series)==null?void 0:u.dataLabels,(v=l==null?void 0:l[h.type])==null?void 0:v.dataLabels),h.options.dataLabels))}function C(h,l,u,v,I){let S=this.chart,b=S.inverted,K=this.xAxis,ct=K.reversed,et=((b?l.height:l.width)||0)/2,dt=h.pointWidth,pt=dt?dt/2:0;l.startXPos=b?I.x:ct?-et-pt:K.width-et+pt,l.startYPos=b?ct?this.yAxis.height-et+pt:-et-pt:I.y,v?l.visibility==="hidden"&&(l.show(),l.attr({opacity:0}).animate({opacity:1})):l.attr({opacity:1}).animate({opacity:0},void 0,l.hide),S.hasRendered&&(u&&l.attr({x:l.startXPos,y:l.startYPos}),l.placed=!0)}H.compose=function(h){let l=h.prototype;l.initDataLabels||(l.initDataLabels=it,l.initDataLabelsGroup=D,l.alignDataLabel=c,l.drawDataLabels=Q,l.justifyDataLabel=W,l.setDataLabelStartPos=C,l.hasDataLabels=z)}}($||($={})),$}),g(d,"Series/Column/ColumnDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{composed:X}=R,{series:q}=st,{merge:Z,pick:Y,pushUnique:V}=$;return function(N){function U(T,A,M,O,H){let z=this.chart.inverted,c=T.series,D=(c.xAxis?c.xAxis.len:this.chart.plotSizeX)||0,it=(c.yAxis?c.yAxis.len:this.chart.plotSizeY)||0,Q=T.dlBox||T.shapeArgs,W=Y(T.below,T.plotY>Y(this.translatedThreshold,it)),k=Y(M.inside,!!this.options.stacking);if(Q){if(O=Z(Q),!(M.overflow==="allow"&&M.crop===!1)){O.y<0&&(O.height+=O.y,O.y=0);let _=O.y+O.height-it;_>0&&_\u25CF {series.name}
',pointFormat:"x: {point.x}
y: {point.y}
"}}}),g(d,"Series/Scatter/ScatterSeries.js",[d["Series/Scatter/ScatterSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{column:$,line:J}=R.seriesTypes,{addEvent:X,extend:q,merge:Z}=st;class Y extends J{applyJitter(){let N=this,U=this.options.jitter,T=this.points.length;U&&this.points.forEach(function(A,M){["x","y"].forEach(function(O,H){if(U[O]&&!A.isNull){let z=`plot${O.toUpperCase()}`,c=N[`${O}Axis`],D=U[O]*c.transA;if(c&&!c.logarithmic){let it=Math.max(0,(A[z]||0)-D),Q=Math.min(c.len,(A[z]||0)+D);A[z]=it+(Q-it)*function(W){let k=1e4*Math.sin(W);return k-Math.floor(k)}(M+H*T),O==="x"&&(A.clientX=A.plotX)}}})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}}return Y.defaultOptions=Z(J.defaultOptions,L),q(Y.prototype,{drawTracker:$.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]}),X(Y,"afterTranslate",function(){this.applyJitter()}),R.registerSeriesType("scatter",Y),Y}),g(d,"Series/CenteredUtilities.js",[d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Utilities.js"]],function(L,R,st){var $,J;let{deg2rad:X}=L,{fireEvent:q,isNumber:Z,pick:Y,relativeLength:V}=st;return(J=$||($={})).getCenter=function(){let N=this.options,U=this.chart,T=2*(N.slicedOffset||0),A=U.plotWidth-2*T,M=U.plotHeight-2*T,O=N.center,H=Math.min(A,M),z=N.thickness,c,D=N.size,it=N.innerSize||0,Q,W;typeof D=="string"&&(D=parseFloat(D)),typeof it=="string"&&(it=parseFloat(it));let k=[Y(O[0],"50%"),Y(O[1],"50%"),Y(D&&D<0?void 0:N.size,"100%"),Y(it&&it<0?void 0:N.innerSize||0,"0%")];for(!U.angular||this instanceof R||(k[3]=0),Q=0;Q<4;++Q)W=k[Q],c=Q<2||Q===2&&/%$/.test(W),k[Q]=V(W,[A,M,H,k[2]][Q])+(c?T:0);return k[3]>k[2]&&(k[3]=k[2]),Z(z)&&2*z0&&(k[3]=k[2]-2*z),q(this,"afterGetCenter",{positions:k}),k},J.getStartAndEndRadians=function(N,U){let T=Z(N)?N:0,A=Z(U)&&U>T&&U-T<360?U:T+360;return{start:X*(T+-90),end:X*(A+-90)}},$}),g(d,"Series/Pie/PiePoint.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st){let{setAnimation:$}=L,{addEvent:J,defined:X,extend:q,isNumber:Z,pick:Y,relativeLength:V}=st;class N extends R{getConnectorPath(T){let A=T.dataLabelPosition,M=T.options||{},O=M.connectorShape,H=this.connectorShapes[O]||O;return A&&H.call(this,Mi(xr({},A.computed),{alignment:A.alignment}),A.connectorPosition,M)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(T){let A=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(A.x,A.y,A.r+T,A.r+T,{innerR:A.r-1,start:A.start,end:A.end,borderRadius:A.borderRadius})}constructor(T,A,M){var H;super(T,A,M),this.half=0,(H=this.name)!=null||(this.name="Slice");let O=z=>{this.slice(z.type==="select")};J(this,"select",O),J(this,"unselect",O)}isValid(){return Z(this.y)&&this.y>=0}setVisible(T,A=!0){T!==this.visible&&this.update({visible:T!=null?T:!this.visible},A,void 0,!1)}slice(T,A,M){let O=this.series;$(M,O.chart),A=Y(A,!0),this.sliced=this.options.sliced=T=X(T)?T:!this.sliced,O.options.data[O.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}}return q(N.prototype,{connectorShapes:{fixedOffset:function(U,T,A){let M=T.breakAt,O=T.touchingSliceAt,H=A.softConnector?["C",U.x+(U.alignment==="left"?-5:5),U.y,2*M.x-O.x,2*M.y-O.y,M.x,M.y]:["L",M.x,M.y];return[["M",U.x,U.y],H,["L",O.x,O.y]]},straight:function(U,T){let A=T.touchingSliceAt;return[["M",U.x,U.y],["L",A.x,A.y]]},crookedLine:function(U,T,A){let{breakAt:M,touchingSliceAt:O}=T,{series:H}=this,[z,c,D]=H.center,it=D/2,{plotLeft:Q,plotWidth:W}=H.chart,k=U.alignment==="left",{x:_,y:C}=U,h=M.x;if(A.crookDistance){let u=V(A.crookDistance,1);h=k?z+it+(W+Q-z-it)*(1-u):Q+(z-it)*u}else h=z+(c-C)*Math.tan((this.angle||0)-Math.PI/2);let l=[["M",_,C]];return(k?h<=_&&h>=M.x:h>=_&&h<=M.x)&&l.push(["L",h,C]),l.push(["L",M.x,M.y],["L",O.x,O.y]),l}}}),N}),g(d,"Series/Pie/PieSeriesDefaults.js",[],function(){return{borderRadius:3,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{connectorPadding:5,connectorShape:"crookedLine",crookDistance:void 0,distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}}}),g(d,"Series/Pie/PieSeries.js",[d["Series/CenteredUtilities.js"],d["Series/Column/ColumnSeries.js"],d["Core/Globals.js"],d["Series/Pie/PiePoint.js"],d["Series/Pie/PieSeriesDefaults.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y){let{getStartAndEndRadians:V}=L,{noop:N}=st,{clamp:U,extend:T,fireEvent:A,merge:M,pick:O}=Y;class H extends X{animate(c){let D=this,it=D.points,Q=D.startAngleRad;c||it.forEach(function(W){let k=W.graphic,_=W.shapeArgs;k&&_&&(k.attr({r:O(W.startR,D.center&&D.center[3]/2),start:Q,end:Q}),k.animate({r:_.r,start:_.start,end:_.end},D.options.animation))})}drawEmpty(){let c,D,it=this.startAngleRad,Q=this.endAngleRad,W=this.options;this.total===0&&this.center?(c=this.center[0],D=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(c,D,this.center[1]/2,0,it,Q).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:Z.arc(c,D,this.center[2]/2,0,{start:it,end:Q,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":W.borderWidth,fill:W.fillColor||"none",stroke:W.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let c=this.chart.renderer;this.points.forEach(function(D){D.graphic&&D.hasNewShapeType()&&(D.graphic=D.graphic.destroy()),D.graphic||(D.graphic=c[D.shapeType](D.shapeArgs).add(D.series.group),D.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(c,D,it,Q){let W=this.center,k=this.radii?this.radii[it.index]||0:W[2]/2,_=Q.dataLabelPosition,C=(_==null?void 0:_.distance)||0,h=Math.asin(U((c-W[1])/(k+C),-1,1));return W[0]+Math.cos(h)*(k+C)*(D?-1:1)+(C>0?(D?-1:1)*(Q.padding||0):0)}hasData(){return!!this.processedXData.length}redrawPoints(){let c,D,it,Q,W=this,k=W.chart;this.drawEmpty(),W.group&&!k.styledMode&&W.group.shadow(W.options.shadow),W.points.forEach(function(_){let C={};D=_.graphic,!_.isNull&&D?(Q=_.shapeArgs,c=_.getTranslate(),k.styledMode||(it=W.pointAttribs(_,_.selected&&"select")),_.delayedRendering?(D.setRadialReference(W.center).attr(Q).attr(c),k.styledMode||D.attr(it).attr({"stroke-linejoin":"round"}),_.delayedRendering=!1):(D.setRadialReference(W.center),k.styledMode||M(!0,C,it),M(!0,C,Q,c),D.animate(C)),D.attr({visibility:_.visible?"inherit":"hidden"}),D.addClass(_.getClassName(),!0)):D&&(_.graphic=D.destroy())})}sortByAngle(c,D){c.sort(function(it,Q){return it.angle!==void 0&&(Q.angle-it.angle)*D})}translate(c){A(this,"translate"),this.generatePoints();let D=this.options,it=D.slicedOffset,Q=V(D.startAngle,D.endAngle),W=this.startAngleRad=Q.start,k=(this.endAngleRad=Q.end)-W,_=this.points,C=D.ignoreHiddenPoint,h=_.length,l,u,v,I,S,b,K,ct=0;for(c||(this.center=c=this.getCenter()),b=0;b1.5*Math.PI?v-=2*Math.PI:v<-Math.PI/2&&(v+=2*Math.PI),K.slicedTranslation={translateX:Math.round(Math.cos(v)*it),translateY:Math.round(Math.sin(v)*it)},I=Math.cos(v)*c[2]/2,S=Math.sin(v)*c[2]/2,K.tooltipPos=[c[0]+.7*I,c[1]+.7*S],K.half=v<-Math.PI/2||v>Math.PI/2?1:0,K.angle=v}A(this,"afterTranslate")}updateTotals(){let c=this.points,D=c.length,it=this.options.ignoreHiddenPoint,Q,W,k=0;for(Q=0;Q0&&(W.visible||!it)?W.y/k*100:0,W.total=k}}return H.defaultOptions=M(X.defaultOptions,J),T(H.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:R.prototype.drawTracker,getCenter:L.getCenter,getSymbol:N,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:R.prototype.pointAttribs,pointClass:$,requireSorting:!1,searchPoint:N,trackerGroups:["group","dataLabelsGroup"]}),q.registerSeriesType("pie",H),H}),g(d,"Series/Pie/PieDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{composed:q,noop:Z}=R,{distribute:Y}=st,{series:V}=$,{arrayMax:N,clamp:U,defined:T,pick:A,pushUnique:M,relativeLength:O}=J;return function(H){let z={radialDistributionY:function(W,k){var _;return(((_=k.dataLabelPosition)==null?void 0:_.top)||0)+W.distributeBox.pos},radialDistributionX:function(W,k,_,C,h){let l=h.dataLabelPosition;return W.getX(_<((l==null?void 0:l.top)||0)+2||_>((l==null?void 0:l.bottom)||0)-2?C:_,k.half,k,h)},justify:function(W,k,_,C){var h;return C[0]+(W.half?-1:1)*(_+(((h=k.dataLabelPosition)==null?void 0:h.distance)||0))},alignToPlotEdges:function(W,k,_,C){let h=W.getBBox().width;return k?h+C:_-h-C},alignToConnectors:function(W,k,_,C){let h=0,l;return W.forEach(function(u){(l=u.dataLabel.getBBox().width)>h&&(h=l)}),k?h+C:_-h-C}};function c(W,k){let{center:_,options:C}=this,h=_[2]/2,l=W.angle||0,u=Math.cos(l),v=Math.sin(l),I=_[0]+u*h,S=_[1]+v*h,b=Math.min((C.slicedOffset||0)+(C.borderWidth||0),k/5);return{natural:{x:I+u*k,y:S+v*k},computed:{},alignment:k<0?"center":W.half?"right":"left",connectorPosition:{breakAt:{x:I+u*b,y:S+v*b},touchingSliceAt:{x:I,y:S}},distance:k}}function D(){var Mt;let W=this,k=W.points,_=W.chart,C=_.plotWidth,h=_.plotHeight,l=_.plotLeft,u=Math.round(_.chartWidth/3),v=W.center,I=v[2]/2,S=v[1],b=[[],[]],K=[0,0,0,0],ct=W.dataLabelPositioners,et,dt,pt,bt=0;W.visible&&((Mt=W.hasDataLabels)!=null&&Mt.call(W))&&(k.forEach(w=>{(w.dataLabels||[]).forEach(B=>{B.shortened&&(B.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),B.shortened=!1)})}),V.prototype.drawDataLabels.apply(W),k.forEach(w=>{(w.dataLabels||[]).forEach((B,tt)=>{var F;let nt=v[2]/2,x=B.options,y=O((x==null?void 0:x.distance)||0,nt);tt===0&&b[w.half].push(w),!T((F=x==null?void 0:x.style)==null?void 0:F.width)&&B.getBBox().width>u&&(B.css({width:Math.round(.7*u)+"px"}),B.shortened=!0),B.dataLabelPosition=this.getDataLabelPosition(w,y),bt=Math.max(bt,y)})}),b.forEach((w,B)=>{let tt=w.length,nt=[],x,y,F=0,lt;tt&&(W.sortByAngle(w,B-.5),bt>0&&(x=Math.max(0,S-I-bt),y=Math.min(S+I+bt,_.plotHeight),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{var Ot;let vt=gt.dataLabelPosition;vt&&vt.distance>0&&(vt.top=Math.max(0,S-I-vt.distance),vt.bottom=Math.min(S+I+vt.distance,_.plotHeight),F=gt.getBBox().height||21,gt.lineHeight=_.renderer.fontMetrics(gt.text||gt).h+2*gt.padding,rt.distributeBox={target:(((Ot=gt.dataLabelPosition)==null?void 0:Ot.natural.y)||0)-vt.top+gt.lineHeight/2,size:F,rank:rt.y},nt.push(rt.distributeBox))})}),Y(nt,lt=y+F-x,lt/5)),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{let vt=gt.options||{},Ot=rt.distributeBox,At=gt.dataLabelPosition,$t=(At==null?void 0:At.natural.y)||0,Xt=vt.connectorPadding||0,Ct=gt.lineHeight||21,wt=(Ct-gt.getBBox().height)/2,Dt=0,jt=$t,re="inherit";if(At){if(nt&&T(Ot)&&At.distance>0&&(Ot.pos===void 0?re="hidden":(pt=Ot.size,jt=ct.radialDistributionY(rt,gt))),vt.justify)Dt=ct.justify(rt,gt,I,v);else switch(vt.alignTo){case"connectors":Dt=ct.alignToConnectors(w,B,C,l);break;case"plotEdges":Dt=ct.alignToPlotEdges(gt,B,C,l);break;default:Dt=ct.radialDistributionX(W,rt,jt-wt,$t,gt)}if(At.attribs={visibility:re,align:At.alignment},At.posAttribs={x:Dt+(vt.x||0)+({left:Xt,right:-Xt}[At.alignment]||0),y:jt+(vt.y||0)-Ct/2},At.computed.x=Dt,At.computed.y=jt-wt,A(vt.crop,!0)){let le;Dt-(dt=gt.getBBox().width)C-Xt&&B===0&&(le=Math.round(Dt+dt-C+Xt),K[1]=Math.max(le,K[1])),jt-pt/2<0?K[0]=Math.max(Math.round(-jt+pt/2),K[0]):jt+pt/2>h&&(K[2]=Math.max(Math.round(jt+pt/2-h),K[2])),At.sideOverflow=le}}})}))}),(N(K)===0||this.verifyDataLabelOverflow(K))&&(this.placeDataLabels(),this.points.forEach(w=>{(w.dataLabels||[]).forEach(B=>{var y;let{connectorColor:tt,connectorWidth:nt=1}=B.options||{},x=B.dataLabelPosition;if(nt){let F;et=B.connector,x&&x.distance>0?(F=!et,et||(B.connector=et=_.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+w.colorIndex+(w.className?" "+w.className:"")).add(W.dataLabelsGroup)),_.styledMode||et.attr({"stroke-width":nt,stroke:tt||w.color||"#666666"}),et[F?"attr":"animate"]({d:w.getConnectorPath(B)}),et.attr({visibility:(y=x.attribs)==null?void 0:y.visibility})):et&&(B.connector=et.destroy())}})})))}function it(){this.points.forEach(W=>{(W.dataLabels||[]).forEach(k=>{var C;let _=k.dataLabelPosition;_?(_.sideOverflow&&(k.css({width:Math.max(k.getBBox().width-_.sideOverflow,0)+"px",textOverflow:(((C=k.options)==null?void 0:C.style)||{}).textOverflow||"ellipsis"}),k.shortened=!0),k.attr(_.attribs),k[k.moved?"animate":"attr"](_.posAttribs),k.moved=!0):k&&k.attr({y:-9999})}),delete W.distributeBox},this)}function Q(W){let k=this.center,_=this.options,C=_.center,h=_.minSize||80,l=h,u=_.size!==null;return!u&&(C[0]!==null?l=Math.max(k[2]-Math.max(W[1],W[3]),h):(l=Math.max(k[2]-W[1]-W[3],h),k[0]+=(W[3]-W[1])/2),C[1]!==null?l=U(l,h,k[2]-Math.max(W[0],W[2])):(l=U(l,h,k[2]-W[0]-W[2]),k[1]+=(W[0]-W[2])/2),l(J.x+=X.x,J.y+=X.y,J),{x:0,y:0});return{x:$.x/st.length,y:$.y/st.length}},R.getDistanceBetweenPoints=function(st,$){return Math.sqrt(Math.pow($.x-st.x,2)+Math.pow($.y-st.y,2))},R.getAngleBetweenPoints=function(st,$){return Math.atan2($.x-st.x,$.y-st.y)},R.pointInPolygon=function({x:st,y:$},J){let X=J.length,q,Z,Y=!1;for(q=0,Z=X-1;q$!=T>$&&st<(U-V)*($-N)/(T-N)+V&&(Y=!Y)}return Y},L}),g(d,"Extensions/OverlappingDataLabels.js",[d["Core/Geometry/GeometryUtilities.js"],d["Core/Utilities.js"]],function(L,R){let{pointInPolygon:st}=L,{addEvent:$,fireEvent:J,objectEach:X,pick:q}=R;function Z(N){let U=N.length,T=(it,Q)=>!(Q.x>=it.x+it.width||Q.x+Q.width<=it.x||Q.y>=it.y+it.height||Q.y+Q.height<=it.y),A=(it,Q)=>{for(let W of it)if(st({x:W[0],y:W[1]},Q))return!0;return!1},M,O,H,z,c,D=!1;for(let it=0;it(Q.labelrank||0)-(it.labelrank||0));for(let it=0;it{X(M,O=>{O.label&&U.push(O.label)})});for(let A of N.series||[])if(A.visible&&((T=A.hasDataLabels)!=null&&T.call(A))){let M=O=>{for(let H of O)H.visible&&(H.dataLabels||[]).forEach(z=>{var D,it;let c=z.options||{};z.labelrank=q(c.labelrank,H.labelrank,(D=H.shapeArgs)==null?void 0:D.height),((it=c.allowOverlap)!=null?it:Number(c.distance)>0)?(z.oldOpacity=z.opacity,z.newOpacity=1,Y(z,N)):U.push(z)})};M(A.nodes||[]),M(A.points)}this.hideOverlappingLabels(U)}return{compose:function(N){let U=N.prototype;U.hideOverlappingLabels||(U.hideOverlappingLabels=Z,$(N,"render",V))}}}),g(d,"Extensions/BorderRadius.js",[d["Core/Defaults.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{defaultOptions:$}=L,{noop:J}=R,{addEvent:X,extend:q,isObject:Z,merge:Y,relativeLength:V}=st,N={radius:0,scope:"stack",where:void 0},U=J,T=J;function A(c,D,it,Q,W={}){let k=U(c,D,it,Q,W),{innerR:_=0,r:C=it,start:h=0,end:l=0}=W;if(W.open||!W.borderRadius)return k;let u=l-h,v=Math.sin(u/2),I=Math.max(Math.min(V(W.borderRadius||0,C-_),(C-_)/2,C*v/(1+v)),0),S=Math.min(I,u/Math.PI*2*_),b=k.length-1;for(;b--;)(function(K,ct,et){let dt,pt,bt,Mt=K[ct],w=K[ct+1];if(w[0]==="Z"&&(w=K[0]),(Mt[0]==="M"||Mt[0]==="L")&&w[0]==="A"?(dt=Mt,pt=w,bt=!0):Mt[0]==="A"&&(w[0]==="M"||w[0]==="L")&&(dt=w,pt=Mt),dt&&pt&&pt.params){let B=pt[1],tt=pt[5],nt=pt.params,{start:x,end:y,cx:F,cy:lt}=nt,rt=tt?B-et:B+et,gt=rt?Math.asin(et/rt):0,vt=tt?gt:-gt,Ot=Math.cos(gt)*rt;bt?(nt.start=x+vt,dt[1]=F+Ot*Math.cos(x),dt[2]=lt+Ot*Math.sin(x),K.splice(ct+1,0,["A",et,et,0,0,1,F+B*Math.cos(nt.start),lt+B*Math.sin(nt.start)])):(nt.end=y-vt,pt[6]=F+B*Math.cos(nt.end),pt[7]=lt+B*Math.sin(nt.end),K.splice(ct+1,0,["A",et,et,0,0,1,F+Ot*Math.cos(y),lt+Ot*Math.sin(y)])),pt[4]=Math.abs(nt.end-nt.start)1?S:I);return k}function M(){var c,D;if(this.options.borderRadius&&!(this.chart.is3d&&this.chart.is3d())){let{options:it,yAxis:Q}=this,W=it.stacking==="percent",k=(D=(c=$.plotOptions)==null?void 0:c[this.type])==null?void 0:D.borderRadius,_=O(it.borderRadius,Z(k)?k:{}),C=Q.options.reversed;for(let h of this.points){let{shapeArgs:l}=h;if(h.shapeType==="roundedRect"&&l){let{width:u=0,height:v=0,y:I=0}=l,S=I,b=v;if(_.scope==="stack"&&h.stackTotal){let dt=Q.translate(W?100:h.stackTotal,!1,!0,!1,!0),pt=Q.translate(it.threshold||0,!1,!0,!1,!0),bt=this.crispCol(0,Math.min(dt,pt),0,Math.abs(dt-pt));S=bt.y,b=bt.height}let K=(h.negative?-1:1)*(C?-1:1)==-1,ct=_.where;!ct&&this.is("waterfall")&&Math.abs((h.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(ct="all"),ct||(ct="end");let et=Math.min(V(_.radius,u),u/2,ct==="all"?v/2:1/0)||0;ct==="end"&&(K&&(S-=et),b+=et),q(l,{brBoxHeight:b,brBoxY:S,r:et})}}}}function O(c,D){return Z(c)||(c={radius:c||0}),Y(N,D,c)}function H(){let c=O(this.options.borderRadius);for(let D of this.points){let it=D.shapeArgs;it&&(it.borderRadius=V(c.radius,(it.r||0)-(it.innerR||0)))}}function z(c,D,it,Q,W={}){let k=T(c,D,it,Q,W),{r:_=0,brBoxHeight:C=Q,brBoxY:h=D}=W,l=D-h,u=h+C-(D+Q),v=l-_>-.1?0:_,I=u-_>-.1?0:_,S=Math.max(v&&l,0),b=Math.max(I&&u,0),K=[c+v,D],ct=[c+it-v,D],et=[c+it,D+v],dt=[c+it,D+Q-I],pt=[c+it-I,D+Q],bt=[c+I,D+Q],Mt=[c,D+Q-I],w=[c,D+v],B=(tt,nt)=>Math.sqrt(Math.pow(tt,2)-Math.pow(nt,2));if(S){let tt=B(v,v-S);K[0]-=tt,ct[0]+=tt,et[1]=w[1]=D+v-S}if(Q=q(A.minWidth,0)&&this.chartHeight>=q(A.minHeight,0)}).call(this)&&T.push(U._id)}function N(U,T){let A=this.options.responsive,M=this.currentResponsive,O=[],H;!T&&A&&A.rules&&A.rules.forEach(D=>{D._id===void 0&&(D._id=Z()),this.matchResponsiveRule(D,O)},this);let z=X(...O.map(D=>J((A||{}).rules||[],it=>it._id===D)).map(D=>D&&D.chartOptions));z.isResponsiveOptions=!0,O=O.toString()||void 0;let c=M&&M.ruleIds;O===c||(M&&(this.currentResponsive=void 0,this.updatingResponsive=!0,this.update(M.undoOptions,U,!0),this.updatingResponsive=!1),O?((H=st(z,this.options,!0,this.collectionsWithUpdate)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:O,mergedOptions:z,undoOptions:H},this.updatingResponsive||this.update(z,U,!0)):this.currentResponsive=void 0)}Y.compose=function(U){let T=U.prototype;return T.matchResponsiveRule||$(T,{matchResponsiveRule:V,setResponsive:N}),U}}(R||(R={})),R}),g(d,"masters/highcharts.src.js",[d["Core/Globals.js"],d["Core/Utilities.js"],d["Core/Defaults.js"],d["Core/Animation/Fx.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Templating.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Renderer/HTML/HTMLElement.js"],d["Core/Axis/Axis.js"],d["Core/Axis/DateTimeAxis.js"],d["Core/Axis/LogarithmicAxis.js"],d["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],d["Core/Axis/Tick.js"],d["Core/Tooltip.js"],d["Core/Series/Point.js"],d["Core/Pointer.js"],d["Core/Legend/Legend.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Chart/Chart.js"],d["Extensions/ScrollablePlotArea.js"],d["Core/Axis/Stacking/StackingAxis.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Series/Column/ColumnDataLabel.js"],d["Series/Pie/PieDataLabel.js"],d["Core/Series/DataLabel.js"],d["Extensions/OverlappingDataLabels.js"],d["Extensions/BorderRadius.js"],d["Core/Responsive.js"],d["Core/Color/Color.js"],d["Core/Time.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A,M,O,H,z,c,D,it,Q,W,k,_,C,h,l,u,v,I,S,b,K,ct,et){return L.AST=X,L.Axis=T,L.Chart=W,L.Color=ct,L.DataLabel=I,L.Fx=$,L.HTMLElement=U,L.Legend=it,L.LegendSymbol=Q,L.OverlappingDataLabels=L.OverlappingDataLabels||S,L.PlotLineOrBand=O,L.Point=c,L.Pointer=D,L.RendererRegistry=Z,L.Series=h,L.SeriesRegistry=l,L.StackItem=C,L.SVGElement=V,L.SVGRenderer=N,L.Templating=q,L.Tick=H,L.Time=et,L.Tooltip=z,L.animate=J.animate,L.animObject=J.animObject,L.chart=W.chart,L.color=ct.parse,L.dateFormat=q.dateFormat,L.defaultOptions=st.defaultOptions,L.distribute=Y.distribute,L.format=q.format,L.getDeferredAnimation=J.getDeferredAnimation,L.getOptions=st.getOptions,L.numberFormat=q.numberFormat,L.seriesType=l.seriesType,L.setAnimation=J.setAnimation,L.setOptions=st.setOptions,L.stop=J.stop,L.time=st.defaultTime,L.timers=$.timers,b.compose(L.Series,L.SVGElement,L.SVGRenderer),u.compose(L.Series.types.column),I.compose(L.Series),A.compose(L.Axis),U.compose(L.SVGRenderer),it.compose(L.Chart),M.compose(L.Axis),S.compose(L.Chart),v.compose(L.Series.types.pie),O.compose(L.Chart,L.Axis),D.compose(L.Chart),K.compose(L.Chart),k.compose(L.Axis,L.Chart,L.Series),_.compose(L.Axis,L.Chart,L.Series),z.compose(L.Pointer),R.extend(L,R),L}),d["masters/highcharts.src.js"]._modules=d,d["masters/highcharts.src.js"]})},4563:function(yr,Oe,xt){var j;(function(Pt,d){yr.exports?(d.default=d,yr.exports=Pt&&Pt.document?d(Pt):d):(j=function(){return d(Pt)}.call(Oe,xt,Oe,yr),j!==void 0&&(yr.exports=j))})(typeof window!="undefined"?window:this,function(Pt){"use strict";var d={};function g(L,R,st,$){!L.hasOwnProperty(R)&&(L[R]=$.apply(null,st),Pt&&typeof CustomEvent=="function"&&Pt.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:R,module:L[R]}})))}return g(d,"Core/Globals.js",[],function(){var L,R;return(R=L||(L={})).SVG_NS="http://www.w3.org/2000/svg",R.product="Highcharts",R.version="11.4.8",R.win=Pt!==void 0?Pt:{},R.doc=R.win.document,R.svg=R.doc&&R.doc.createElementNS&&!!R.doc.createElementNS(R.SVG_NS,"svg").createSVGRect,R.userAgent=R.win.navigator&&R.win.navigator.userAgent||"",R.isChrome=R.win.chrome,R.isFirefox=R.userAgent.indexOf("Firefox")!==-1,R.isMS=/(edge|msie|trident)/i.test(R.userAgent)&&!R.win.opera,R.isSafari=!R.isChrome&&R.userAgent.indexOf("Safari")!==-1,R.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(R.userAgent),R.isWebKit=R.userAgent.indexOf("AppleWebKit")!==-1,R.deg2rad=2*Math.PI/360,R.hasBidiBug=R.isFirefox&&4>parseInt(R.userAgent.split("Firefox/")[1],10),R.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],R.noop=function(){},R.supportsPassiveEvents=function(){let st=!1;if(!R.isMS){let $=Object.defineProperty({},"passive",{get:function(){st=!0}});R.win.addEventListener&&R.win.removeEventListener&&(R.win.addEventListener("testPassive",R.noop,$),R.win.removeEventListener("testPassive",R.noop,$))}return st}(),R.charts=[],R.composed=[],R.dateFormats={},R.seriesTypes={},R.symbolSizes={},R.chartCount=0,L}),g(d,"Core/Utilities.js",[d["Core/Globals.js"]],function(L){let R,{charts:st,doc:$,win:J}=L;function X(h,l,u,v){let I=l?"Highcharts error":"Highcharts warning";h===32&&(h=`${I}: Deprecated member`);let S=T(h),b=S?`${I} #${h}: www.highcharts.com/errors/${h}/`:h.toString();if(v!==void 0){let K="";S&&(b+="?"),W(v,function(ct,et){K+=` - - ${et}: ${ct}`,S&&(b+=encodeURI(et)+"="+encodeURI(ct))}),b+=K}_(L,"displayError",{chart:u,code:h,message:b,params:v},function(){if(l)throw Error(b);J.console&&X.messages.indexOf(b)===-1&&console.warn(b)}),X.messages.push(b)}function q(h,l){return parseInt(h,l||10)}function Z(h){return typeof h=="string"}function Y(h){let l=Object.prototype.toString.call(h);return l==="[object Array]"||l==="[object Array Iterator]"}function V(h,l){return!!h&&typeof h=="object"&&(!l||!Y(h))}function N(h){return V(h)&&typeof h.nodeType=="number"}function U(h){let l=h&&h.constructor;return!!(V(h,!0)&&!N(h)&&l&&l.name&&l.name!=="Object")}function T(h){return typeof h=="number"&&!isNaN(h)&&h<1/0&&h>-1/0}function A(h){return h!=null}function M(h,l,u){let v,I=Z(l)&&!A(u),S=(b,K)=>{A(b)?h.setAttribute(K,b):I?(v=h.getAttribute(K))||K!=="class"||(v=h.getAttribute(K+"Name")):h.removeAttribute(K)};return Z(l)?S(u,l):W(l,S),v}function O(h){return Y(h)?h:[h]}function H(h,l){let u;for(u in h||(h={}),l)h[u]=l[u];return h}function z(){let h=arguments,l=h.length;for(let u=0;u1e14?h:parseFloat(h.toPrecision(l||14))}(X||(X={})).messages=[],Math.easeInOutSine=function(h){return-.5*(Math.cos(Math.PI*h)-1)};let Q=Array.prototype.find?function(h,l){return h.find(l)}:function(h,l){let u,v=h.length;for(u=0;uK.order-ct.order),I.forEach(K=>{K.fn.call(h,u)===!1&&u.preventDefault()})}v&&!u.defaultPrevented&&v.call(h,u)}W({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(h,l){L[l]=function(u){return X(32,!1,void 0,{[`Highcharts.${l}`]:`use Array.${h}`}),Array.prototype[h].apply(u,[].slice.call(arguments,1))}});let C=function(){let h=Math.random().toString(36).substring(2,9)+"-",l=0;return function(){return"highcharts-"+(R?"":h)+l++}}();return J.jQuery&&(J.jQuery.fn.highcharts=function(){let h=[].slice.call(arguments);if(this[0])return h[0]?(new L[Z(h[0])?h.shift():"Chart"](this[0],h[0],h[1]),this):st[M(this[0],"data-highcharts-chart")]}),{addEvent:function(h,l,u,v={}){let I=typeof h=="function"&&h.prototype||h;Object.hasOwnProperty.call(I,"hcEvents")||(I.hcEvents={});let S=I.hcEvents;L.Point&&h instanceof L.Point&&h.series&&h.series.chart&&(h.series.chart.runTrackerClick=!0);let b=h.addEventListener;b&&b.call(h,l,u,!!L.supportsPassiveEvents&&{passive:v.passive===void 0?l.indexOf("touch")!==-1:v.passive,capture:!1}),S[l]||(S[l]=[]);let K={fn:u,order:typeof v.order=="number"?v.order:1/0};return S[l].push(K),S[l].sort((ct,et)=>ct.order-et.order),function(){k(h,l,u)}},arrayMax:function(h){let l=h.length,u=h[0];for(;l--;)h[l]>u&&(u=h[l]);return u},arrayMin:function(h){let l=h.length,u=h[0];for(;l--;)h[l]l?h{let v=l%2/2,I=u?-1:1;return(Math.round(h*I-v)+v)*I},css:c,defined:A,destroyObjectProperties:function(h,l,u){W(h,function(v,I){v!==l&&(v!=null&&v.destroy)&&v.destroy(),(v!=null&&v.destroy||!u)&&delete h[I]})},diffObjects:function(h,l,u,v){let I={};return function S(b,K,ct,et){let dt=u?K:b;W(b,function(pt,bt){if(!et&&v&&v.indexOf(bt)>-1&&K[bt]){pt=O(pt),ct[bt]=[];for(let Mt=0;Mt{if(K.length>1)for(S=v=K.length-1;S>0;S--)(I=K[S]-K[S-1])<0&&!b?(l==null||l(),l=void 0):I&&(u===void 0||I=b-1&&(b=Math.floor(K)),Math.max(0,b-(h(l,"padding-left",!0)||0)-(h(l,"padding-right",!0)||0))}if(u==="height")return Math.max(0,Math.min(l.offsetHeight,l.scrollHeight)-(h(l,"padding-top",!0)||0)-(h(l,"padding-bottom",!0)||0));let S=J.getComputedStyle(l,void 0);return S&&(I=S.getPropertyValue(u),z(v,u!=="opacity")&&(I=q(I))),I},inArray:function(h,l,u){return X(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),l.indexOf(h,u)},insertItem:function(h,l){let u,v=h.options.index,I=l.length;for(u=h.options.isInternal?I:0;u=h))&&(I||!(K<=(l[S]+(l[S+1]||l[S]))/2)));S++);return it(b*u,-Math.round(Math.log(.001)/Math.LN10))},objectEach:W,offset:function(h){let l=$.documentElement,u=h.parentElement||h.parentNode?h.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:u.top+(J.pageYOffset||l.scrollTop)-(l.clientTop||0),left:u.left+(J.pageXOffset||l.scrollLeft)-(l.clientLeft||0),width:u.width,height:u.height}},pad:function(h,l,u){return Array((l||2)+1-String(h).replace("-","").length).join(u||"0")+h},pick:z,pInt:q,pushUnique:function(h,l){return 0>h.indexOf(l)&&!!h.push(l)},relativeLength:function(h,l,u){return/%$/.test(h)?l*parseFloat(h)/100+(u||0):parseFloat(h)},removeEvent:k,replaceNested:function(h,...l){let u,v;do for(v of(u=h,l))h=h.replace(v[0],v[1]);while(h!==u);return h},splat:O,stableSort:function(h,l){let u,v,I=h.length;for(v=0;v0?setTimeout(h,l,u):(h.call(0,u),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:C,useSerialIds:function(h){return R=z(h,R)},wrap:function(h,l,u){let v=h[l];h[l]=function(){let I=arguments,S=this;return u.apply(this,[function(){return v.apply(S,arguments.length?arguments:I)}].concat([].slice.call(arguments)))}}}}),g(d,"Core/Chart/ChartDefaults.js",[],function(){return{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{},position:{}},reflow:!0,type:"line",zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#334eff",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"}}),g(d,"Core/Color/Palettes.js",[],function(){return{colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]}}),g(d,"Core/Time.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{win:st}=L,{defined:$,error:J,extend:X,isNumber:q,isObject:Z,merge:Y,objectEach:V,pad:N,pick:U,splat:T,timeUnits:A}=R,M=L.isSafari&&st.Intl&&st.Intl.DateTimeFormat.prototype.formatRange,O=L.isSafari&&st.Intl&&!st.Intl.DateTimeFormat.prototype.formatRange;class H{constructor(c){this.options={},this.useUTC=!1,this.variableTimezone=!1,this.Date=st.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(c)}get(c,D){if(this.variableTimezone||this.timezoneOffset){let it=D.getTime(),Q=it-this.getTimezoneOffset(D);D.setTime(Q);let W=D["getUTC"+c]();return D.setTime(it),W}return this.useUTC?D["getUTC"+c]():D["get"+c]()}set(c,D,it){if(this.variableTimezone||this.timezoneOffset){if(c==="Milliseconds"||c==="Seconds"||c==="Minutes"&&this.getTimezoneOffset(D)%36e5==0)return D["setUTC"+c](it);let Q=this.getTimezoneOffset(D),W=D.getTime()-Q;D.setTime(W),D["setUTC"+c](it);let k=this.getTimezoneOffset(D);return W=D.getTime()+k,D.setTime(W)}return this.useUTC||M&&c==="FullYear"?D["setUTC"+c](it):D["set"+c](it)}update(c={}){let D=U(c.useUTC,!0);this.options=c=Y(!0,this.options,c),this.Date=c.Date||st.Date||Date,this.useUTC=D,this.timezoneOffset=D&&c.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=D&&!!(c.getTimezoneOffset||c.timezone)}makeTime(c,D,it,Q,W,k){let _,C,h;return this.useUTC?(_=this.Date.UTC.apply(0,arguments),C=this.getTimezoneOffset(_),_+=C,C!==(h=this.getTimezoneOffset(_))?_+=h-C:C-36e5!==this.getTimezoneOffset(_-36e5)||O||(_-=36e5)):_=new this.Date(c,D,U(it,1),U(Q,0),U(W,0),U(k,0)).getTime(),_}timezoneOffsetFunction(){let c=this,D=this.options,it=D.getTimezoneOffset;return this.useUTC?D.timezone?Q=>{try{let W=`shortOffset,${D.timezone||""}`,[k,_,C,h,l=0]=(H.formatCache[W]=H.formatCache[W]||Intl.DateTimeFormat("en",{timeZone:D.timezone,timeZoneName:"shortOffset"})).format(Q).split(/(GMT|:)/).map(Number),u=-(36e5*(C+l/60));if(q(u))return u}catch(W){J(34)}return 0}:this.useUTC&&it?Q=>6e4*it(Q.valueOf()):()=>6e4*(c.timezoneOffset||0):Q=>6e4*new Date(Q.toString()).getTimezoneOffset()}dateFormat(c,D,it){if(!$(D)||isNaN(D))return L.defaultOptions.lang&&L.defaultOptions.lang.invalidDate||"";c=U(c,"%Y-%m-%d %H:%M:%S");let Q=this,W=new this.Date(D),k=this.get("Hours",W),_=this.get("Day",W),C=this.get("Date",W),h=this.get("Month",W),l=this.get("FullYear",W),u=L.defaultOptions.lang,v=u&&u.weekdays,I=u&&u.shortWeekdays;return V(X({a:I?I[_]:v[_].substr(0,3),A:v[_],d:N(C),e:N(C,2," "),w:_,b:u.shortMonths[h],B:u.months[h],m:N(h+1),o:h+1,y:l.toString().substr(2,2),Y:l,H:N(k),k,I:N(k%12||12),l:k%12||12,M:N(this.get("Minutes",W)),p:k<12?"AM":"PM",P:k<12?"am":"pm",S:N(this.get("Seconds",W)),L:N(Math.floor(D%1e3),3)},L.dateFormats),function(S,b){for(;c.indexOf("%"+b)!==-1;)c=c.replace("%"+b,typeof S=="function"?S.call(Q,D):S)}),it?c.substr(0,1).toUpperCase()+c.substr(1):c}resolveDTLFormat(c){return Z(c,!0)?c:{main:(c=T(c))[0],from:c[1],to:c[2]}}getTimeTicks(c,D,it,Q){let W,k,_,C,h=this,l=h.Date,u=[],v={},I=new l(D),S=c.unitRange,b=c.count||1;if(Q=U(Q,1),$(D)){h.set("Milliseconds",I,S>=A.second?0:b*Math.floor(h.get("Milliseconds",I)/b)),S>=A.second&&h.set("Seconds",I,S>=A.minute?0:b*Math.floor(h.get("Seconds",I)/b)),S>=A.minute&&h.set("Minutes",I,S>=A.hour?0:b*Math.floor(h.get("Minutes",I)/b)),S>=A.hour&&h.set("Hours",I,S>=A.day?0:b*Math.floor(h.get("Hours",I)/b)),S>=A.day&&h.set("Date",I,S>=A.month?1:Math.max(1,b*Math.floor(h.get("Date",I)/b))),S>=A.month&&(h.set("Month",I,S>=A.year?0:b*Math.floor(h.get("Month",I)/b)),k=h.get("FullYear",I)),S>=A.year&&(k-=k%b,h.set("FullYear",I,k)),S===A.week&&(C=h.get("Day",I),h.set("Date",I,h.get("Date",I)-C+Q+(C4*A.month||h.getTimezoneOffset(D)!==h.getTimezoneOffset(it));let dt=I.getTime();for(W=1;dt1?dt=h.makeTime(k,K,ct,et+W*b):dt+=S*b,W++;u.push(dt),S<=A.hour&&u.length<1e4&&u.forEach(function(pt){pt%18e5==0&&h.dateFormat("%H%M%S%L",pt)==="000000000"&&(v[pt]="day")})}return u.info=X(c,{higherRanks:v,totalRange:S*b}),u}getDateFormat(c,D,it,Q){let W=this.dateFormat("%m-%d %H:%M:%S.%L",D),k="01-01 00:00:00.000",_={millisecond:15,second:12,minute:9,hour:6,day:3},C="millisecond",h=C;for(C in A){if(c===A.week&&+this.dateFormat("%w",D)===it&&W.substr(6)===k.substr(6)){C="week";break}if(A[C]>c){C=h;break}if(_[C]&&W.substr(_[C])!==k.substr(_[C]))break;C!=="week"&&(h=C)}return this.resolveDTLFormat(Q[C]).main}}return H.formatCache={},H}),g(d,"Core/Defaults.js",[d["Core/Chart/ChartDefaults.js"],d["Core/Globals.js"],d["Core/Color/Palettes.js"],d["Core/Time.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{isTouchDevice:X}=R,{fireEvent:q,merge:Z}=J,Y={colors:st.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalPoint:".",numericSymbols:["k","M","G","T","P","E"],resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{buttonTheme:{fill:"#f7f7f7",padding:8,r:2,stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},states:{hover:{fill:"#e6e6e6"},select:{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},disabled:{style:{color:"#cccccc"}}}}},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:L,title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:"",align:"center",widthAdjust:-44},caption:{margin:15,style:{color:"#666666",fontSize:"0.8em"},text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",events:{},layout:"horizontal",itemMarginBottom:2,itemMarginTop:2,labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{style:{fontSize:"0.8em"},activeColor:"#0022ff",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"0.8em",textDecoration:"none",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#666666",textDecoration:"line-through"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontSize:"0.8em",fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:{duration:300,easing:N=>Math.sqrt(1-Math.pow(N-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %e %b, %H:%M:%S.%L",second:"%A, %e %b, %H:%M:%S",minute:"%A, %e %b, %H:%M",hour:"%A, %e %b, %H:%M",day:"%A, %e %b %Y",week:"Week from %A, %e %b %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:X?25:10,headerFormat:'{point.key}
',pointFormat:'\u25CF {series.name}: {point.y}
',backgroundColor:"#ffffff",borderWidth:void 0,shadow:!0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"0.8em"},useHTML:!1},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"0.6em"},text:"Highcharts.com"}};Y.chart.styledMode=!1;let V=new $(Y.time);return{defaultOptions:Y,defaultTime:V,getOptions:function(){return Y},setOptions:function(N){return q(R,"setOptions",{options:N}),Z(!0,Y,N),(N.time||N.global)&&(R.time?R.time.update(Z(Y.global,Y.time,N.global,N.time)):R.time=V),Y}}}),g(d,"Core/Color/Color.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{isNumber:st,merge:$,pInt:J}=R;class X{static parse(Z){return Z?new X(Z):X.None}constructor(Z){let Y,V,N,U;this.rgba=[NaN,NaN,NaN,NaN],this.input=Z;let T=L.Color;if(T&&T!==X)return new T(Z);if(typeof Z=="object"&&Z.stops!==void 0)this.stops=Z.stops.map(A=>new X(A[1]));else if(typeof Z=="string"){if(this.input=Z=X.names[Z.toLowerCase()]||Z,Z.charAt(0)==="#"){let A=Z.length,M=parseInt(Z.substr(1),16);A===7?V=[(16711680&M)>>16,(65280&M)>>8,255&M,1]:A===4&&(V=[(3840&M)>>4|(3840&M)>>8,(240&M)>>4|240&M,(15&M)<<4|15&M,1])}if(!V)for(N=X.parsers.length;N--&&!V;)(Y=(U=X.parsers[N]).regex.exec(Z))&&(V=U.parse(Y))}V&&(this.rgba=V)}get(Z){let Y=this.input,V=this.rgba;if(typeof Y=="object"&&this.stops!==void 0){let N=$(Y);return N.stops=[].slice.call(N.stops),this.stops.forEach((U,T)=>{N.stops[T]=[N.stops[T][0],U.get(Z)]}),N}return V&&st(V[0])?Z!=="rgb"&&(Z||V[3]!==1)?Z==="a"?`${V[3]}`:"rgba("+V.join(",")+")":"rgb("+V[0]+","+V[1]+","+V[2]+")":Y}brighten(Z){let Y=this.rgba;if(this.stops)this.stops.forEach(function(V){V.brighten(Z)});else if(st(Z)&&Z!==0)for(let V=0;V<3;V++)Y[V]+=J(255*Z),Y[V]<0&&(Y[V]=0),Y[V]>255&&(Y[V]=255);return this}setOpacity(Z){return this.rgba[3]=Z,this}tweenTo(Z,Y){let V=this.rgba,N=Z.rgba;if(!st(V[0])||!st(N[0]))return Z.input||"none";let U=N[3]!==1||V[3]!==1;return(U?"rgba(":"rgb(")+Math.round(N[0]+(V[0]-N[0])*(1-Y))+","+Math.round(N[1]+(V[1]-N[1])*(1-Y))+","+Math.round(N[2]+(V[2]-N[2])*(1-Y))+(U?","+(N[3]+(V[3]-N[3])*(1-Y)):"")+")"}}return X.names={white:"#ffffff",black:"#000000"},X.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),parseFloat(q[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),1]}}],X.None=new X(""),X}),g(d,"Core/Animation/Fx.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{parse:$}=L,{win:J}=R,{isNumber:X,objectEach:q}=st;class Z{constructor(V,N,U){this.pos=NaN,this.options=N,this.elem=V,this.prop=U}dSetter(){let V=this.paths,N=V&&V[0],U=V&&V[1],T=this.now||0,A=[];if(T!==1&&N&&U)if(N.length===U.length&&T<1)for(let M=0;M=H+this.startTime?(this.now=this.end,this.pos=1,this.update(),z[this.prop]=!0,U=!0,q(z,function(c){c!==!0&&(U=!1)}),U&&O&&O.call(M),N=!1):(this.pos=A.easing((T-this.startTime)/H),this.now=this.start+(this.end-this.start)*this.pos,this.update(),N=!0),N}initPath(V,N,U){let T=V.startX,A=V.endX,M=U.slice(),O=V.isArea,H=O?2:1,z=N&&U.length>N.length&&U.hasStackedCliffs,c,D,it,Q,W=N&&N.slice();if(!W||z)return[M,M];function k(C,h){for(;C.length{let it=N(D.options.animation);z=q(A)&&st(A.defer)?O.defer:Math.max(z,it.duration+it.defer),c=Math.min(O.duration,it.duration)}),T.renderer.forExport&&(z=0),{defer:Math.max(0,z-c),duration:Math.min(z,c)}},setAnimation:function(T,A){A.renderer.globalAnimation=V(T,A.options.chart.animation,!0)},stop:U}}),g(d,"Core/Renderer/HTML/AST.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{SVG_NS:st,win:$}=L,{attr:J,createElement:X,css:q,error:Z,isFunction:Y,isString:V,objectEach:N,splat:U}=R,{trustedTypes:T}=$,A=T&&Y(T.createPolicy)&&T.createPolicy("highcharts",{createHTML:z=>z}),M=A?A.createHTML(""):"",O=function(){try{return!!new DOMParser().parseFromString(M,"text/html")}catch(z){return!1}}();class H{static filterUserAttributes(c){return N(c,(D,it)=>{let Q=!0;H.allowedAttributes.indexOf(it)===-1&&(Q=!1),["background","dynsrc","href","lowsrc","src"].indexOf(it)!==-1&&(Q=V(D)&&H.allowedReferences.some(W=>D.indexOf(W)===0)),Q||(Z(33,!1,void 0,{"Invalid attribute in config":`${it}`}),delete c[it]),V(D)&&c[it]&&(c[it]=D.replace(/{let Q=it.split(":").map(k=>k.trim()),W=Q.shift();return W&&Q.length&&(D[W.replace(/-([a-z])/g,k=>k[1].toUpperCase())]=Q.join(":")),D},{})}static setElementHTML(c,D){c.innerHTML=H.emptyHTML,D&&new H(D).addToDOM(c)}constructor(c){this.nodes=typeof c=="string"?this.parseMarkup(c):c}addToDOM(c){return function D(it,Q){let W;return U(it).forEach(function(k){let _,C=k.tagName,h=k.textContent?L.doc.createTextNode(k.textContent):void 0,l=H.bypassHTMLFiltering;if(C)if(C==="#text")_=h;else if(H.allowedTags.indexOf(C)!==-1||l){let u=C==="svg"?st:Q.namespaceURI||st,v=L.doc.createElementNS(u,C),I=k.attributes||{};N(k,function(S,b){b!=="tagName"&&b!=="attributes"&&b!=="children"&&b!=="style"&&b!=="textContent"&&(I[b]=S)}),J(v,l?I:H.filterUserAttributes(I)),k.style&&q(v,k.style),h&&v.appendChild(h),D(k.children||[],v),_=v}else Z(33,!1,void 0,{"Invalid tagName in config":C});_&&Q.appendChild(_),W=_}),W}(this.nodes,c)}parseMarkup(c){let D,it=[];if(c=c.trim().replace(/ style=(["'])/g," data-style=$1"),O)D=new DOMParser().parseFromString(A?A.createHTML(c):c,"text/html");else{let W=X("div");W.innerHTML=c,D={body:W}}let Q=(W,k)=>{let _=W.nodeName.toLowerCase(),C={tagName:_};_==="#text"&&(C.textContent=W.textContent||"");let h=W.attributes;if(h){let l={};[].forEach.call(h,u=>{u.name==="data-style"?C.style=H.parseStyle(u.value):l[u.name]=u.value}),C.attributes=l}if(W.childNodes.length){let l=[];[].forEach.call(W.childNodes,u=>{Q(u,l)}),l.length&&(C.children=l)}k.push(C)};return[].forEach.call(D.body.childNodes,W=>Q(W,it)),it}}return H.allowedAttributes=["alt","aria-controls","aria-describedby","aria-expanded","aria-haspopup","aria-hidden","aria-label","aria-labelledby","aria-live","aria-pressed","aria-readonly","aria-roledescription","aria-selected","class","clip-path","color","colspan","cx","cy","d","dx","dy","disabled","fill","filterUnits","flood-color","flood-opacity","height","href","id","in","in2","markerHeight","markerWidth","offset","opacity","operator","orient","padding","paddingLeft","paddingRight","patternUnits","r","radius","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],H.allowedReferences=["https://","http://","mailto:","/","../","./","#"],H.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feComposite","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMorphology","feOffset","feMerge","feMergeNode","filter","h1","h2","h3","h4","h5","h6","hr","i","img","li","linearGradient","marker","ol","p","path","pattern","pre","rect","small","span","stop","strong","style","sub","sup","svg","table","text","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],H.emptyHTML=M,H.bypassHTMLFiltering=!1,H}),g(d,"Core/Templating.js",[d["Core/Defaults.js"],d["Core/Utilities.js"]],function(L,R){let{defaultOptions:st,defaultTime:$}=L,{extend:J,getNestedProperty:X,isArray:q,isNumber:Z,isObject:Y,pick:V,pInt:N}=R,U={add:(M,O)=>M+O,divide:(M,O)=>O!==0?M/O:"",eq:(M,O)=>M==O,each:function(M){let O=arguments[arguments.length-1];return!!q(M)&&M.map((H,z)=>T(O.body,J(Y(H)?H:{"@this":H},{"@index":z,"@first":z===0,"@last":z===M.length-1}))).join("")},ge:(M,O)=>M>=O,gt:(M,O)=>M>O,if:M=>!!M,le:(M,O)=>M<=O,lt:(M,O)=>MM*O,ne:(M,O)=>M!=O,subtract:(M,O)=>M-O,unless:M=>!M};function T(M="",O,H){let z=/\{([\w\:\.\,;\-\/<>%@"'’= #\(\)]+)\}/g,c=/\(([\w\:\.\,;\-\/<>%@"'= ]+)\)/g,D=[],it=/f$/,Q=/\.(\d)/,W=st.lang,k=H&&H.time||$,_=H&&H.numberFormatter||A,C=(I="")=>{let S;return I==="true"||I!=="false"&&((S=Number(I)).toString()===I?S:X(I,O))},h,l,u=0,v;for(;(h=z.exec(M))!==null;){let I=c.exec(h[1]);I&&(h=I,v=!0),l&&l.isBlock||(l={ctx:O,expression:h[1],find:h[0],isBlock:h[1].charAt(0)==="#",start:h.index,startInner:h.index+h[0].length,length:h[0].length});let S=h[1].split(" ")[0].replace("#","");U[S]&&(l.isBlock&&S===l.fn&&u++,l.fn||(l.fn=S));let b=h[1]==="else";if(l.isBlock&&l.fn&&(h[1]===`/${l.fn}`||b))if(u)!b&&u--;else{let K=l.startInner,ct=M.substr(K,h.index-K);l.body===void 0?(l.body=ct,l.startInner=h.index+h[0].length):l.elseBody=ct,l.find+=ct+h[0],b||(D.push(l),l=void 0)}else l.isBlock||D.push(l);if(I&&!(l!=null&&l.isBlock))break}return D.forEach(I=>{let S,b,{body:K,elseBody:ct,expression:et,fn:dt}=I;if(dt){let pt=[I],bt=et.split(" ");for(b=U[dt].length;b--;)pt.unshift(C(bt[b+1]));S=U[dt].apply(O,pt),I.isBlock&&typeof S=="boolean"&&(S=T(S?K:ct,O,H))}else{let pt=et.split(":");if(S=C(pt.shift()||""),pt.length&&typeof S=="number"){let bt=pt.join(":");if(it.test(bt)){let Mt=parseInt((bt.match(Q)||["","-1"])[1],10);S!==null&&(S=_(S,Mt,W.decimalPoint,bt.indexOf(",")>-1?W.thousandsSep:""))}else S=k.dateFormat(bt,S)}}M=M.replace(I.find,V(S,""))}),v?T(M,O,H):M}function A(M,O,H,z){let c,D;M=+M||0,O=+O;let it=st.lang,Q=(M.toString().split(".")[1]||"").split("e")[0].length,W=M.toString().split("e"),k=O;O===-1?O=Math.min(Q,20):Z(O)?O&&W[1]&&W[1]<0&&((D=O+ +W[1])>=0?(W[0]=(+W[0]).toExponential(D).split("e")[0],O=D):(W[0]=W[0].split(".")[0]||0,M=O<20?(W[0]*Math.pow(10,W[1])).toFixed(O):0,W[1]=0)):O=2;let _=(Math.abs(W[1]?W[0]:M)+Math.pow(10,-Math.max(O,Q)-1)).toFixed(O),C=String(N(_)),h=C.length>3?C.length%3:0;return H=V(H,it.decimalPoint),z=V(z,it.thousandsSep),c=(M<0?"-":"")+(h?C.substr(0,h)+z:""),0>+W[1]&&!k?c="0":c+=C.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+z),O?c+=H+_.slice(-O):+c==0&&(c="0"),W[1]&&+c!=0&&(c+="e"+W[1]),c}return{dateFormat:function(M,O,H){return $.dateFormat(M,O,H)},format:T,helpers:U,numberFormat:A}}),g(d,"Core/Renderer/RendererRegistry.js",[d["Core/Globals.js"]],function(L){var R,st;let $;return(st=R||(R={})).rendererTypes={},st.getRendererType=function(J=$){return st.rendererTypes[J]||st.rendererTypes[$]},st.registerRendererType=function(J,X,q){st.rendererTypes[J]=X,(!$||q)&&($=J,L.Renderer=X)},R}),g(d,"Core/Renderer/RendererUtilities.js",[d["Core/Utilities.js"]],function(L){var R;let{clamp:st,pick:$,pushUnique:J,stableSort:X}=L;return(R||(R={})).distribute=function q(Z,Y,V){let N=Z,U=N.reducedLen||Y,T=(C,h)=>C.target-h.target,A=[],M=Z.length,O=[],H=A.push,z,c,D,it=!0,Q,W,k=0,_;for(z=M;z--;)k+=Z[z].size;if(k>U){for(X(Z,(C,h)=>(h.rank||0)-(C.rank||0)),D=(_=Z[0].rank===Z[Z.length-1].rank)?M/2:-1,c=_?D:M-1;D&&k>U;)Q=Z[z=Math.floor(c)],J(O,z)&&(k-=Q.size),c+=D,_&&c>=Z.length&&(D/=2,c=D);O.sort((C,h)=>h-C).forEach(C=>H.apply(A,Z.splice(C,1)))}for(X(Z,T),Z=Z.map(C=>({size:C.size,targets:[C.target],align:$(C.align,.5)}));it;){for(z=Z.length;z--;)Q=Z[z],W=(Math.min.apply(0,Q.targets)+Math.max.apply(0,Q.targets))/2,Q.pos=st(W-Q.size*Q.align,0,Y-Q.size);for(z=Z.length,it=!1;z--;)z>0&&Z[z-1].pos+Z[z-1].size>Z[z].pos&&(Z[z-1].size+=Z[z].size,Z[z-1].targets=Z[z-1].targets.concat(Z[z].targets),Z[z-1].align=.5,Z[z-1].pos+Z[z-1].size>Y&&(Z[z-1].pos=Y-Z[z-1].size),Z.splice(z,1),it=!0)}return H.apply(N,A),z=0,Z.some(C=>{let h=0;return(C.targets||[]).some(()=>(N[z].pos=C.pos+h,V!==void 0&&Math.abs(N[z].pos-N[z].target)>V?(N.slice(0,z+1).forEach(l=>delete l.pos),N.reducedLen=(N.reducedLen||Y)-.1*Y,N.reducedLen>.1*Y&&q(N,Y,V),!0):(h+=N[z].size,z++,!1)))}),X(N,T),N},R}),g(d,"Core/Renderer/SVG/SVGElement.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{animate:J,animObject:X,stop:q}=L,{deg2rad:Z,doc:Y,svg:V,SVG_NS:N,win:U}=st,{addEvent:T,attr:A,createElement:M,crisp:O,css:H,defined:z,erase:c,extend:D,fireEvent:it,isArray:Q,isFunction:W,isObject:k,isString:_,merge:C,objectEach:h,pick:l,pInt:u,pushUnique:v,replaceNested:I,syncTimeout:S,uniqueKey:b}=$;class K{_defaultGetter(et){let dt=l(this[et+"Value"],this[et],this.element?this.element.getAttribute(et):null,0);return/^-?[\d\.]+$/.test(dt)&&(dt=parseFloat(dt)),dt}_defaultSetter(et,dt,pt){pt.setAttribute(dt,et)}add(et){let dt,pt=this.renderer,bt=this.element;return et&&(this.parentGroup=et),this.textStr!==void 0&&this.element.nodeName==="text"&&pt.buildText(this),this.added=!0,(!et||et.handleZ||this.zIndex)&&(dt=this.zIndexSetter()),dt||(et?et.element:pt.box).appendChild(bt),this.onAdd&&this.onAdd(),this}addClass(et,dt){let pt=dt?"":this.attr("class")||"";return(et=(et||"").split(/ /g).reduce(function(bt,Mt){return pt.indexOf(Mt)===-1&&bt.push(Mt),bt},pt?[pt]:[]).join(" "))!==pt&&this.attr("class",et),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(et,dt,pt,bt=!0){let Mt,w,B,tt,nt={},x=this.renderer,y=x.alignedObjects,F=!!et;et?(this.alignOptions=et,this.alignByTranslate=dt,this.alignTo=pt):(et=this.alignOptions||{},dt=this.alignByTranslate,pt=this.alignTo);let lt=!pt||_(pt)?pt||"renderer":void 0;lt&&(F&&v(y,this),pt=void 0);let rt=l(pt,x[lt],x),gt=et.align,vt=et.verticalAlign;return Mt=(rt.x||0)+(et.x||0),w=(rt.y||0)+(et.y||0),gt==="right"?B=1:gt==="center"&&(B=2),B&&(Mt+=((rt.width||0)-(et.width||0))/B),nt[dt?"translateX":"x"]=Math.round(Mt),vt==="bottom"?tt=1:vt==="middle"&&(tt=2),tt&&(w+=((rt.height||0)-(et.height||0))/tt),nt[dt?"translateY":"y"]=Math.round(w),bt&&(this[this.placed?"animate":"attr"](nt),this.placed=!0),this.alignAttr=nt,this}alignSetter(et){let dt={left:"start",center:"middle",right:"end"};dt[et]&&(this.alignValue=et,this.element.setAttribute("text-anchor",dt[et]))}animate(et,dt,pt){let bt=X(l(dt,this.renderer.globalAnimation,!0)),Mt=bt.defer;return Y.hidden&&(bt.duration=0),bt.duration!==0?(pt&&(bt.complete=pt),S(()=>{this.element&&J(this,et,bt)},Mt)):(this.attr(et,void 0,pt||bt.complete),h(et,function(w,B){bt.step&&bt.step.call(this,w,{prop:B,pos:1,elem:this})},this)),this}applyTextOutline(et){let dt=this.element;et.indexOf("contrast")!==-1&&(et=et.replace(/contrast/g,this.renderer.getContrast(dt.style.fill)));let pt=et.split(" "),bt=pt[pt.length-1],Mt=pt[0];if(Mt&&Mt!=="none"&&st.svg){this.fakeTS=!0,Mt=Mt.replace(/(^[\d\.]+)(.*?)$/g,function(x,y,F){return 2*Number(y)+F}),this.removeTextOutline();let w=Y.createElementNS(N,"tspan");A(w,{class:"highcharts-text-outline",fill:bt,stroke:bt,"stroke-width":Mt,"stroke-linejoin":"round"});let B=dt.querySelector("textPath")||dt;[].forEach.call(B.childNodes,x=>{let y=x.cloneNode(!0);y.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(F=>y.removeAttribute(F)),w.appendChild(y)});let tt=0;[].forEach.call(B.querySelectorAll("text tspan"),x=>{tt+=Number(x.getAttribute("dy"))});let nt=Y.createElementNS(N,"tspan");nt.textContent="\u200B",A(nt,{x:Number(dt.getAttribute("x")),dy:-tt}),w.appendChild(nt),B.insertBefore(w,B.firstChild)}}attr(et,dt,pt,bt){let{element:Mt}=this,w=K.symbolCustomAttribs,B,tt,nt=this,x;return typeof et=="string"&&dt!==void 0&&(B=et,(et={})[B]=dt),typeof et=="string"?nt=(this[et+"Getter"]||this._defaultGetter).call(this,et,Mt):(h(et,function(y,F){x=!1,bt||q(this,F),this.symbolName&&w.indexOf(F)!==-1&&(tt||(this.symbolAttr(et),tt=!0),x=!0),this.rotation&&(F==="x"||F==="y")&&(this.doTransform=!0),x||(this[F+"Setter"]||this._defaultSetter).call(this,y,F,Mt)},this),this.afterSetters()),pt&&pt.call(this),nt}clip(et){if(et&&!et.clipPath){let dt=b()+"-",pt=this.renderer.createElement("clipPath").attr({id:dt}).add(this.renderer.defs);D(et,{clipPath:pt,id:dt,count:0}),et.add(pt)}return this.attr("clip-path",et?`url(${this.renderer.url}#${et.id})`:"none")}crisp(et,dt){dt=Math.round(dt||et.strokeWidth||0);let pt=et.x||this.x||0,bt=et.y||this.y||0,Mt=(et.width||this.width||0)+pt,w=(et.height||this.height||0)+bt,B=O(pt,dt),tt=O(bt,dt);return D(et,{x:B,y:tt,width:O(Mt,dt)-B,height:O(w,dt)-tt}),z(et.strokeWidth)&&(et.strokeWidth=dt),et}complexColor(et,dt,pt){let bt=this.renderer,Mt,w,B,tt,nt,x,y,F,lt,rt,gt=[],vt;it(this.renderer,"complexColor",{args:arguments},function(){if(et.radialGradient?w="radialGradient":et.linearGradient&&(w="linearGradient"),w){if(B=et[w],nt=bt.gradients,x=et.stops,lt=pt.radialReference,Q(B)&&(et[w]=B={x1:B[0],y1:B[1],x2:B[2],y2:B[3],gradientUnits:"userSpaceOnUse"}),w==="radialGradient"&<&&!z(B.gradientUnits)&&(tt=B,B=C(B,bt.getRadialAttr(lt,tt),{gradientUnits:"userSpaceOnUse"})),h(B,function(Ot,At){At!=="id"&>.push(At,Ot)}),h(x,function(Ot){gt.push(Ot)}),nt[gt=gt.join(",")])rt=nt[gt].attr("id");else{B.id=rt=b();let Ot=nt[gt]=bt.createElement(w).attr(B).add(bt.defs);Ot.radAttr=tt,Ot.stops=[],x.forEach(function(At){At[1].indexOf("rgba")===0?(y=(Mt=R.parse(At[1])).get("rgb"),F=Mt.get("a")):(y=At[1],F=1);let $t=bt.createElement("stop").attr({offset:At[0],"stop-color":y,"stop-opacity":F}).add(Ot);Ot.stops.push($t)})}vt="url("+bt.url+"#"+rt+")",pt.setAttribute(dt,vt),pt.gradient=gt,et.toString=function(){return vt}}})}css(et){let dt=this.styles,pt={},bt=this.element,Mt,w=!dt;if(dt&&h(et,function(B,tt){dt&&dt[tt]!==B&&(pt[tt]=B,w=!0)}),w){dt&&(et=D(dt,pt)),et.width===null||et.width==="auto"?delete this.textWidth:bt.nodeName.toLowerCase()==="text"&&et.width&&(Mt=this.textWidth=u(et.width)),D(this.styles,et),Mt&&!V&&this.renderer.forExport&&delete et.width;let B=C(et);bt.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","width"].forEach(tt=>B&&delete B[tt]),B.color&&(B.fill=B.color)),H(bt,B)}return this.added&&(this.element.nodeName==="text"&&this.renderer.buildText(this),et.textOutline&&this.applyTextOutline(et.textOutline)),this}dashstyleSetter(et){let dt,pt=this["stroke-width"];if(pt==="inherit"&&(pt=1),et=et&&et.toLowerCase()){let bt=et.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(dt=bt.length;dt--;)bt[dt]=""+u(bt[dt])*l(pt,NaN);et=bt.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",et)}}destroy(){var tt;let et=this,dt=et.element||{},pt=et.renderer,bt=dt.ownerSVGElement,Mt=dt.nodeName==="SPAN"&&et.parentGroup||void 0,w,B;if(dt.onclick=dt.onmouseout=dt.onmouseover=dt.onmousemove=dt.point=null,q(et),et.clipPath&&bt){let nt=et.clipPath;[].forEach.call(bt.querySelectorAll("[clip-path],[CLIP-PATH]"),function(x){x.getAttribute("clip-path").indexOf(nt.element.id)>-1&&x.removeAttribute("clip-path")}),et.clipPath=nt.destroy()}if(et.connector=(tt=et.connector)==null?void 0:tt.destroy(),et.stops){for(B=0;BMt&&Mt.join?(w?bt+" ":"")+Mt.join(" "):(Mt||"").toString(),"")),/(NaN| {2}|^$)/.test(et)&&(et="M 0 0"),this[dt]!==et&&(pt.setAttribute(dt,et),this[dt]=et)}fillSetter(et,dt,pt){typeof et=="string"?pt.setAttribute(dt,et):et&&this.complexColor(et,dt,pt)}hrefSetter(et,dt,pt){pt.setAttributeNS("http://www.w3.org/1999/xlink",dt,et)}getBBox(et,dt){let pt,bt,Mt,w,{alignValue:B,element:tt,renderer:nt,styles:x,textStr:y}=this,{cache:F,cacheKeys:lt}=nt,rt=tt.namespaceURI===this.SVG_NS,gt=l(dt,this.rotation,0),vt=nt.styledMode?tt&&K.prototype.getStyle.call(tt,"font-size"):x.fontSize;if(z(y)&&((w=y.toString()).indexOf("<")===-1&&(w=w.replace(/\d/g,"0")),w+=["",nt.rootFontSize,vt,gt,this.textWidth,B,x.textOverflow,x.fontWeight].join(",")),w&&!et&&(pt=F[w]),!pt||pt.polygon){if(rt||nt.forExport){try{Mt=this.fakeTS&&function(At){let $t=tt.querySelector(".highcharts-text-outline");$t&&H($t,{display:At})},W(Mt)&&Mt("none"),pt=tt.getBBox?D({},tt.getBBox()):{width:tt.offsetWidth,height:tt.offsetHeight,x:0,y:0},W(Mt)&&Mt("")}catch(At){}(!pt||pt.width<0)&&(pt={x:0,y:0,width:0,height:0})}else pt=this.htmlGetBBox();bt=pt.height,rt&&(pt.height=bt={"11px,17":14,"13px,20":16}[`${vt||""},${Math.round(bt)}`]||bt),gt&&(pt=this.getRotatedBox(pt,gt));let Ot={bBox:pt};it(this,"afterGetBBox",Ot),pt=Ot.bBox}if(w&&(y===""||pt.height>0)){for(;lt.length>250;)delete F[lt.shift()];F[w]||lt.push(w),F[w]=pt}return pt}getRotatedBox(et,dt){let{x:pt,y:bt,width:Mt,height:w}=et,{alignValue:B,translateY:tt,rotationOriginX:nt=0,rotationOriginY:x=0}=this,y={right:1,center:.5}[B||0]||0,F=Number(this.element.getAttribute("y")||0)-(tt?0:bt),lt=dt*Z,rt=(dt-90)*Z,gt=Math.cos(lt),vt=Math.sin(lt),Ot=Mt*gt,At=Mt*vt,$t=Math.cos(rt),Xt=Math.sin(rt),[[Ct,wt],[Dt,jt]]=[nt,x].map(Jt=>[Jt-Jt*gt,Jt*vt]),re=pt+y*(Mt-Ot)+Ct+jt+F*$t,le=re+Ot,Gt=le-w*$t,he=Gt-Ot,ve=bt+F-y*At-wt+Dt+F*Xt,Ce=ve+At,Te=Ce-w*Xt,Ke=Te-At,rn=Math.min(re,le,Gt,he),un=Math.min(ve,Ce,Te,Ke),Qt=Math.max(re,le,Gt,he)-rn,Kt=Math.max(ve,Ce,Te,Ke)-un;return{x:rn,y:un,width:Qt,height:Kt,polygon:[[re,ve],[le,Ce],[Gt,Te],[he,Ke]]}}getStyle(et){return U.getComputedStyle(this.element||this,"").getPropertyValue(et)}hasClass(et){return(""+this.attr("class")).split(" ").indexOf(et)!==-1}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(et,dt){this.onEvents={},this.opacity=1,this.SVG_NS=N,this.element=dt==="span"||dt==="body"?M(dt):Y.createElementNS(this.SVG_NS,dt),this.renderer=et,this.styles={},it(this,"afterInit")}on(et,dt){let{onEvents:pt}=this;return pt[et]&&pt[et](),pt[et]=T(this.element,et,dt),this}opacitySetter(et,dt,pt){let bt=Number(Number(et).toFixed(3));this.opacity=bt,pt.setAttribute(dt,bt)}reAlign(){var et;(et=this.alignOptions)!=null&&et.width&&this.alignOptions.align!=="left"&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(et){return this.attr("class",(""+this.attr("class")).replace(_(et)?RegExp(`(^| )${et}( |$)`):et," ").replace(/ +/g," ").trim())}removeTextOutline(){let et=this.element.querySelector("tspan.highcharts-text-outline");et&&this.safeRemoveChild(et)}safeRemoveChild(et){let dt=et.parentNode;dt&&dt.removeChild(et)}setRadialReference(et){let dt=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=et,dt&&dt.radAttr&&dt.animate(this.renderer.getRadialAttr(et,dt.radAttr)),this}shadow(et){var Mt;let{renderer:dt}=this,pt=C(((Mt=this.parentGroup)==null?void 0:Mt.rotation)===90?{offsetX:-1,offsetY:-1}:{},k(et)?et:{}),bt=dt.shadowDefinition(pt);return this.attr({filter:et?`url(${dt.url}#${bt})`:"none"})}show(et=!0){return this.attr({visibility:et?"inherit":"visible"})}"stroke-widthSetter"(et,dt,pt){this[dt]=et,pt.setAttribute(dt,et)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let et=this.getStyle("stroke-width"),dt=0,pt;return/px$/.test(et)?dt=u(et):et!==""&&(A(pt=Y.createElementNS(N,"rect"),{width:et,"stroke-width":0}),this.element.parentNode.appendChild(pt),dt=pt.getBBox().width,pt.parentNode.removeChild(pt)),dt}symbolAttr(et){let dt=this;K.symbolCustomAttribs.forEach(function(pt){dt[pt]=l(et[pt],dt[pt])}),dt.attr({d:dt.renderer.symbols[dt.symbolName](dt.x,dt.y,dt.width,dt.height,dt)})}textSetter(et){et!==this.textStr&&(delete this.textPxLength,this.textStr=et,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(et){let dt=this.element,pt=dt.getElementsByTagName("title")[0]||Y.createElementNS(this.SVG_NS,"title");dt.insertBefore?dt.insertBefore(pt,dt.firstChild):dt.appendChild(pt),pt.textContent=I(l(et,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let et=this.element;return et.parentNode.appendChild(et),this}translate(et,dt){return this.attr({translateX:et,translateY:dt})}updateTransform(et="transform"){var F;let{element:dt,matrix:pt,rotation:bt=0,rotationOriginX:Mt,rotationOriginY:w,scaleX:B,scaleY:tt,translateX:nt=0,translateY:x=0}=this,y=["translate("+nt+","+x+")"];z(pt)&&y.push("matrix("+pt.join(",")+")"),bt&&(y.push("rotate("+bt+" "+l(Mt,dt.getAttribute("x"),0)+" "+l(w,dt.getAttribute("y")||0)+")"),((F=this.text)==null?void 0:F.element.tagName)==="SPAN"&&this.text.attr({rotation:bt,rotationOriginX:(Mt||0)-this.padding,rotationOriginY:(w||0)-this.padding})),(z(B)||z(tt))&&y.push("scale("+l(B,1)+" "+l(tt,1)+")"),y.length&&!(this.text||this).textPath&&dt.setAttribute(et,y.join(" "))}visibilitySetter(et,dt,pt){et==="inherit"?pt.removeAttribute(dt):this[dt]!==et&&pt.setAttribute(dt,et),this[dt]=et}xGetter(et){return this.element.nodeName==="circle"&&(et==="x"?et="cx":et==="y"&&(et="cy")),this._defaultGetter(et)}zIndexSetter(et,dt){let pt=this.renderer,bt=this.parentGroup,Mt=(bt||pt).element||pt.box,w=this.element,B=Mt===pt.box,tt,nt,x,y=!1,F,lt=this.added,rt;if(z(et)?(w.setAttribute("data-z-index",et),et=+et,this[dt]===et&&(lt=!1)):z(this[dt])&&w.removeAttribute("data-z-index"),this[dt]=et,lt){for((et=this.zIndex)&&bt&&(bt.handleZ=!0),rt=(tt=Mt.childNodes).length-1;rt>=0&&!y;rt--)F=!z(x=(nt=tt[rt]).getAttribute("data-z-index")),nt!==w&&(et<0&&F&&!B&&!rt?(Mt.insertBefore(w,tt[rt]),y=!0):(u(x)<=et||F&&(!z(et)||et>=0))&&(Mt.insertBefore(w,tt[rt+1]),y=!0));y||(Mt.insertBefore(w,tt[B?3:0]),y=!0)}return y}}return K.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],K.prototype.strokeSetter=K.prototype.fillSetter,K.prototype.yGetter=K.prototype.xGetter,K.prototype.matrixSetter=K.prototype.rotationOriginXSetter=K.prototype.rotationOriginYSetter=K.prototype.rotationSetter=K.prototype.scaleXSetter=K.prototype.scaleYSetter=K.prototype.translateXSetter=K.prototype.translateYSetter=K.prototype.verticalAlignSetter=function(ct,et){this[et]=ct,this.doTransform=!0},K}),g(d,"Core/Renderer/SVG/SVGLabel.js",[d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R){let{defined:st,extend:$,isNumber:J,merge:X,pick:q,removeEvent:Z}=R;class Y extends L{constructor(N,U,T,A,M,O,H,z,c,D){let it;super(N,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=U,this.x=T,this.y=A,this.anchorX=O,this.anchorY=H,this.baseline=c,this.className=D,this.addClass(D==="button"?"highcharts-no-tooltip":"highcharts-label"),D&&this.addClass("highcharts-"+D),this.text=N.text(void 0,0,0,z).attr({zIndex:1}),typeof M=="string"&&((it=/^url\((.*?)\)$/.test(M))||this.renderer.symbols[M])&&(this.symbolKey=M),this.bBox=Y.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=N.styledMode||it,this.deferredAttr={},this.alignFactor=0}alignSetter(N){let U={left:0,center:.5,right:1}[N];U!==this.alignFactor&&(this.alignFactor=U,this.bBox&&J(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(N,U){this.anchorX=N,this.boxAttr(U,Math.round(N)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(N,U){this.anchorY=N,this.boxAttr(U,N-this.ySetting)}boxAttr(N,U){this.box?this.box.attr(N,U):this.deferredAttr[N]=U}css(N){if(N){let U={};N=X(N),Y.textProps.forEach(T=>{N[T]!==void 0&&(U[T]=N[T],delete N[T])}),this.text.css(U),"fontSize"in U||"fontWeight"in U?this.updateTextPadding():("width"in U||"textOverflow"in U)&&this.updateBoxSize()}return L.prototype.css.call(this,N)}destroy(){Z(this.element,"mouseenter"),Z(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),L.prototype.destroy.call(this)}fillSetter(N,U){N&&(this.needsBox=!0),this.fill=N,this.boxAttr(U,N)}getBBox(N,U){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:T,height:A=0,translateX:M=0,translateY:O=0,width:H=0}=this,z=q(this.paddingLeft,T),c=U!=null?U:this.rotation||0,D={width:H,height:A,x:M+this.bBox.x-z,y:O+this.bBox.y-T+this.baselineOffset};return c&&(D=this.getRotatedBox(D,c)),D}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(N){this.heightSetting=N,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:q(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&st(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(N,U){J(N)?N!==this[U]&&(this[U]=N,this.updateTextPadding()):this[U]=void 0}rSetter(N,U){this.boxAttr(U,N)}strokeSetter(N,U){this.stroke=N,this.boxAttr(U,N)}"stroke-widthSetter"(N,U){N&&(this.needsBox=!0),this["stroke-width"]=N,this.boxAttr(U,N)}"text-alignSetter"(N){this.textAlign=N}textSetter(N){N!==void 0&&this.text.attr({text:N}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let N,U=this.text,T={},A=this.padding,M=this.bBox=(!J(this.widthSetting)||!J(this.heightSetting)||this.textAlign)&&st(U.textStr)?U.getBBox(void 0,0):Y.emptyBBox;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||M.height||0)+2*A;let O=this.renderer.fontMetrics(U);if(this.baselineOffset=A+Math.min((this.text.firstLineMetrics||O).b,M.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-O.h)/2),this.needsBox&&!U.textPath){if(!this.box){let H=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();H.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),H.add(this)}N=this.getCrispAdjust(),T.x=N,T.y=(this.baseline?-this.baselineOffset:0)+N,T.width=Math.round(this.width),T.height=Math.round(this.height),this.box.attr($(T,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let N=this.text;if(!N.textPath){this.updateBoxSize();let U=this.baseline?0:this.baselineOffset,T=q(this.paddingLeft,this.padding);st(this.widthSetting)&&this.bBox&&(this.textAlign==="center"||this.textAlign==="right")&&(T+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(T!==N.x||U!==N.y)&&(N.attr("x",T),N.hasBoxWidthChanged&&(this.bBox=N.getBBox(!0)),U!==void 0&&N.attr("y",U)),N.x=T,N.y=U}}widthSetter(N){this.widthSetting=J(N)?N:void 0,this.doUpdate=!0}getPaddedWidth(){let N=this.padding,U=q(this.paddingLeft,N),T=q(this.paddingRight,N);return(this.widthSetting||this.bBox.width||0)+U+T}xSetter(N){this.x=N,this.alignFactor&&(N-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(N),this.attr("translateX",this.xSetting)}ySetter(N){this.ySetting=this.y=Math.round(N),this.attr("translateY",this.ySetting)}}return Y.emptyBBox={width:0,height:0,x:0,y:0},Y.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],Y}),g(d,"Core/Renderer/SVG/Symbols.js",[d["Core/Utilities.js"]],function(L){let{defined:R,isNumber:st,pick:$}=L;function J(Z,Y,V,N,U){let T=[];if(U){let A=U.start||0,M=$(U.r,V),O=$(U.r,N||V),H=2e-4/(U.borderRadius?1:Math.max(M,1)),z=Math.abs((U.end||0)-A-2*Math.PI)0&&O0)return H;if(Z+M>V-A)if(O>Y+A&&OY+A&&O0){let z=ON&&MA&&H.splice(1,1,["L",M-6,Y],["L",M,Y-6],["L",M+6,Y],["L",V-T,Y]);return H},circle:function(Z,Y,V,N){return J(Z+V/2,Y+N/2,V/2,N/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N/2],["L",Z+V/2,Y+N],["L",Z,Y+N/2],["Z"]]},rect:X,roundedRect:q,square:X,triangle:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N],["L",Z,Y+N],["Z"]]},"triangle-down":function(Z,Y,V,N){return[["M",Z,Y],["L",Z+V,Y],["L",Z+V/2,Y+N],["Z"]]}}}),g(d,"Core/Renderer/SVG/TextBuilder.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{doc:$,SVG_NS:J,win:X}=R,{attr:q,extend:Z,fireEvent:Y,isString:V,objectEach:N,pick:U}=st;return class{constructor(T){let A=T.styles;this.renderer=T.renderer,this.svgElement=T,this.width=T.textWidth,this.textLineHeight=A&&A.lineHeight,this.textOutline=A&&A.textOutline,this.ellipsis=!!(A&&A.textOverflow==="ellipsis"),this.noWrap=!!(A&&A.whiteSpace==="nowrap")}buildSVG(){let T=this.svgElement,A=T.element,M=T.renderer,O=U(T.textStr,"").toString(),H=O.indexOf("<")!==-1,z=A.childNodes,c=!T.added&&M.box,D=[O,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,T.getStyle("font-size"),this.width].join(",");if(D!==T.textCache){T.textCache=D,delete T.actualWidth;for(let it=z.length;it--;)A.removeChild(z[it]);if(H||this.ellipsis||this.width||T.textPath||O.indexOf(" ")!==-1&&(!this.noWrap||//g.test(O))){if(O!==""){c&&c.appendChild(A);let it=new L(O);this.modifyTree(it.nodes),it.addToDOM(A),this.modifyDOM(),this.ellipsis&&(A.textContent||"").indexOf("\u2026")!==-1&&T.attr("title",this.unescapeEntities(T.textStr||"",["<",">"])),c&&c.removeChild(A)}}else A.appendChild($.createTextNode(this.unescapeEntities(O)));V(this.textOutline)&&T.applyTextOutline&&T.applyTextOutline(this.textOutline)}}modifyDOM(){let T,A=this.svgElement,M=q(A.element,"x");for(A.firstLineMetrics=void 0;(T=A.element.firstChild)&&/^[\s\u200B]*$/.test(T.textContent||" ");)A.element.removeChild(T);[].forEach.call(A.element.querySelectorAll("tspan.highcharts-br"),(c,D)=>{c.nextSibling&&c.previousSibling&&(D===0&&c.previousSibling.nodeType===1&&(A.firstLineMetrics=A.renderer.fontMetrics(c.previousSibling)),q(c,{dy:this.getLineHeight(c.nextSibling),x:M}))});let O=this.width||0;if(!O)return;let H=(c,D)=>{let it=c.textContent||"",Q=it.replace(/([^\^])-/g,"$1- ").split(" "),W=!this.noWrap&&(Q.length>1||A.element.childNodes.length>1),k=this.getLineHeight(D),_=0,C=A.actualWidth;if(this.ellipsis)it&&this.truncate(c,it,void 0,0,Math.max(0,O-.8*k),(h,l)=>h.substring(0,l)+"\u2026");else if(W){let h=[],l=[];for(;D.firstChild&&D.firstChild!==c;)l.push(D.firstChild),D.removeChild(D.firstChild);for(;Q.length;)Q.length&&!this.noWrap&&_>0&&(h.push(c.textContent||""),c.textContent=Q.join(" ").replace(/- /g,"-")),this.truncate(c,void 0,Q,_===0&&C||0,O,(u,v)=>Q.slice(0,v).join(" ").replace(/- /g,"-")),C=A.actualWidth,_++;l.forEach(u=>{D.insertBefore(u,c)}),h.forEach(u=>{D.insertBefore($.createTextNode(u),c);let v=$.createElementNS(J,"tspan");v.textContent="\u200B",q(v,{dy:k,x:M}),D.insertBefore(v,c)})}},z=c=>{[].slice.call(c.childNodes).forEach(D=>{D.nodeType===X.Node.TEXT_NODE?H(D,c):(D.className.baseVal.indexOf("highcharts-br")!==-1&&(A.actualWidth=0),z(D))})};z(A.element)}getLineHeight(T){let A=T.nodeType===X.Node.TEXT_NODE?T.parentElement:T;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(A||this.svgElement.element).h}modifyTree(T){let A=(M,O)=>{let{attributes:H={},children:z,style:c={},tagName:D}=M,it=this.renderer.styledMode;if(D==="b"||D==="strong"?it?H.class="highcharts-strong":c.fontWeight="bold":(D==="i"||D==="em")&&(it?H.class="highcharts-emphasized":c.fontStyle="italic"),c&&c.color&&(c.fill=c.color),D==="br"){H.class="highcharts-br",M.textContent="\u200B";let Q=T[O+1];Q&&Q.textContent&&(Q.textContent=Q.textContent.replace(/^ +/gm,""))}else D==="a"&&z&&z.some(Q=>Q.tagName==="#text")&&(M.children=[{children:z,tagName:"tspan"}]);D!=="#text"&&D!=="a"&&(M.tagName="tspan"),Z(M,{attributes:H,style:c}),z&&z.filter(Q=>Q.tagName!=="#text").forEach(A)};T.forEach(A),Y(this.svgElement,"afterModifyTree",{nodes:T})}truncate(T,A,M,O,H,z){let c,D,it=this.svgElement,{rotation:Q}=it,W=[],k=M?1:0,_=(A||M||"").length,C=_,h=function(l,u){let v=u||l,I=T.parentNode;if(I&&W[v]===void 0&&I.getSubStringLength)try{W[v]=O+I.getSubStringLength(0,M?v+1:v)}catch(S){}return W[v]};if(it.rotation=0,O+(D=h(T.textContent.length))>H){for(;k<=_;)C=Math.ceil((k+_)/2),M&&(c=z(M,C)),D=h(C,c&&c.length-1),k===_?k=_+1:D>H?_=C-1:k=C;_===0?T.textContent="":A&&_===A.length-1||(T.textContent=c||z(A||M,C))}M&&M.splice(0,C),it.actualWidth=D,it.rotation=Q}unescapeEntities(T,A){return N(this.renderer.escapes,function(M,O){A&&A.indexOf(M)!==-1||(T=T.toString().replace(RegExp(M,"g"),O))}),T}}}),g(d,"Core/Renderer/SVG/SVGRenderer.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Defaults.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGLabel.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Renderer/SVG/TextBuilder.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let N,{defaultOptions:U}=R,{charts:T,deg2rad:A,doc:M,isFirefox:O,isMS:H,isWebKit:z,noop:c,SVG_NS:D,symbolSizes:it,win:Q}=$,{addEvent:W,attr:k,createElement:_,crisp:C,css:h,defined:l,destroyObjectProperties:u,extend:v,isArray:I,isNumber:S,isObject:b,isString:K,merge:ct,pick:et,pInt:dt,replaceNested:pt,uniqueKey:bt}=V;class Mt{constructor(B,tt,nt,x,y,F,lt){let rt,gt,vt=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),Ot=vt.element;lt||vt.css(this.getStyle(x||{})),B.appendChild(Ot),k(B,"dir","ltr"),B.innerHTML.indexOf("xmlns")===-1&&k(Ot,"xmlns",this.SVG_NS),this.box=Ot,this.boxWrapper=vt,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(M.createTextNode("Created with Highcharts 11.4.8")),this.defs=this.createElement("defs").add(),this.allowHTML=F,this.forExport=y,this.styledMode=lt,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=vt.getStyle("font-size"),this.setSize(tt,nt,!1),O&&B.getBoundingClientRect&&((rt=function(){h(B,{left:0,top:0}),gt=B.getBoundingClientRect(),h(B,{left:Math.ceil(gt.left)-gt.left+"px",top:Math.ceil(gt.top)-gt.top+"px"})})(),this.unSubPixelFix=W(Q,"resize",rt))}definition(B){return new L([B]).addToDOM(this.defs.element)}getReferenceURL(){if((O||z)&&M.getElementsByTagName("base").length){if(!l(N)){let B=bt(),tt=new L([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:B},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${B})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(M.body);h(tt,{position:"fixed",top:0,left:0,zIndex:9e5});let nt=M.elementFromPoint(6,6);N=(nt&&nt.id)==="hitme",M.body.removeChild(tt)}if(N)return pt(Q.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(B){return this.style=v({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},B),this.style}setStyle(B){this.boxWrapper.css(this.getStyle(B))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let B=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),u(this.gradients||{}),this.gradients=null,this.defs=B.destroy(),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null,null}createElement(B){return new this.Element(this,B)}getRadialAttr(B,tt){return{cx:B[0]-B[2]/2+(tt.cx||0)*B[2],cy:B[1]-B[2]/2+(tt.cy||0)*B[2],r:(tt.r||0)*B[2]}}shadowDefinition(B){let tt=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(B).map(x=>`${x}-${B[x]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),nt=ct({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},B);return this.defs.element.querySelector(`#${tt}`)||this.definition({tagName:"filter",attributes:{id:tt,filterUnits:nt.filterUnits},children:this.getShadowFilterContent(nt)}),tt}getShadowFilterContent(B){return[{tagName:"feDropShadow",attributes:{dx:B.offsetX,dy:B.offsetY,"flood-color":B.color,"flood-opacity":Math.min(5*B.opacity,1),stdDeviation:B.width/2}}]}buildText(B){new Y(B).buildSVG()}getContrast(B){let tt=st.parse(B).rgba.map(x=>{let y=x/255;return y<=.03928?y/12.92:Math.pow((y+.055)/1.055,2.4)}),nt=.2126*tt[0]+.7152*tt[1]+.0722*tt[2];return 1.05/(nt+.05)>(nt+.05)/.05?"#FFFFFF":"#000000"}button(B,tt,nt,x,y={},F,lt,rt,gt,vt){let Ot=this.label(B,tt,nt,gt,void 0,void 0,vt,void 0,"button"),At=this.styledMode,$t=arguments,Xt=0;y=ct(U.global.buttonTheme,y),At&&(delete y.fill,delete y.stroke,delete y["stroke-width"]);let Ct=y.states||{},wt=y.style||{};delete y.states,delete y.style;let Dt=[L.filterUserAttributes(y)],jt=[wt];return At||["hover","select","disabled"].forEach((re,le)=>{Dt.push(ct(Dt[0],L.filterUserAttributes($t[le+5]||Ct[re]||{}))),jt.push(Dt[le+1].style),delete Dt[le+1].style}),W(Ot.element,H?"mouseover":"mouseenter",function(){Xt!==3&&Ot.setState(1)}),W(Ot.element,H?"mouseout":"mouseleave",function(){Xt!==3&&Ot.setState(Xt)}),Ot.setState=(re=0)=>{if(re!==1&&(Ot.state=Xt=re),Ot.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][re]),!At){Ot.attr(Dt[re]);let le=jt[re];b(le)&&Ot.css(le)}},Ot.attr(Dt[0]),!At&&(Ot.css(v({cursor:"default"},wt)),vt&&Ot.text.css({pointerEvents:"none"})),Ot.on("touchstart",re=>re.stopPropagation()).on("click",function(re){Xt!==3&&x.call(Ot,re)})}crispLine(B,tt){let[nt,x]=B;return l(nt[1])&&nt[1]===x[1]&&(nt[1]=x[1]=C(nt[1],tt)),l(nt[2])&&nt[2]===x[2]&&(nt[2]=x[2]=C(nt[2],tt)),B}path(B){let tt=this.styledMode?{}:{fill:"none"};return I(B)?tt.d=B:b(B)&&v(tt,B),this.createElement("path").attr(tt)}circle(B,tt,nt){let x=b(B)?B:B===void 0?{}:{x:B,y:tt,r:nt},y=this.createElement("circle");return y.xSetter=y.ySetter=function(F,lt,rt){rt.setAttribute("c"+lt,F)},y.attr(x)}arc(B,tt,nt,x,y,F){let lt;b(B)?(tt=(lt=B).y,nt=lt.r,x=lt.innerR,y=lt.start,F=lt.end,B=lt.x):lt={innerR:x,start:y,end:F};let rt=this.symbol("arc",B,tt,nt,nt,lt);return rt.r=nt,rt}rect(B,tt,nt,x,y,F){let lt=b(B)?B:B===void 0?{}:{x:B,y:tt,r:y,width:Math.max(nt||0,0),height:Math.max(x||0,0)},rt=this.createElement("rect");return this.styledMode||(F!==void 0&&(lt["stroke-width"]=F,v(lt,rt.crisp(lt))),lt.fill="none"),rt.rSetter=function(gt,vt,Ot){rt.r=gt,k(Ot,{rx:gt,ry:gt})},rt.rGetter=function(){return rt.r||0},rt.attr(lt)}roundedRect(B){return this.symbol("roundedRect").attr(B)}setSize(B,tt,nt){this.width=B,this.height=tt,this.boxWrapper.animate({width:B,height:tt},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:et(nt,!0)?void 0:0}),this.alignElements()}g(B){let tt=this.createElement("g");return B?tt.attr({class:"highcharts-"+B}):tt}image(B,tt,nt,x,y,F){let lt={preserveAspectRatio:"none"};S(tt)&&(lt.x=tt),S(nt)&&(lt.y=nt),S(x)&&(lt.width=x),S(y)&&(lt.height=y);let rt=this.createElement("image").attr(lt),gt=function(vt){rt.attr({href:B}),F.call(rt,vt)};if(F){rt.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let vt=new Q.Image;W(vt,"load",gt),vt.src=B,vt.complete&>({})}else rt.attr({href:B});return rt}symbol(B,tt,nt,x,y,F){let lt,rt,gt,vt,Ot=this,At=/^url\((.*?)\)$/,$t=At.test(B),Xt=!$t&&(this.symbols[B]?B:"circle"),Ct=Xt&&this.symbols[Xt];if(Ct)typeof tt=="number"&&(rt=Ct.call(this.symbols,tt||0,nt||0,x||0,y||0,F)),lt=this.path(rt),Ot.styledMode||lt.attr("fill","none"),v(lt,{symbolName:Xt||void 0,x:tt,y:nt,width:x,height:y}),F&&v(lt,F);else if($t){gt=B.match(At)[1];let wt=lt=this.image(gt);wt.imgwidth=et(F&&F.width,it[gt]&&it[gt].width),wt.imgheight=et(F&&F.height,it[gt]&&it[gt].height),vt=Dt=>Dt.attr({width:Dt.width,height:Dt.height}),["width","height"].forEach(Dt=>{wt[`${Dt}Setter`]=function(jt,re){this[re]=jt;let{alignByTranslate:le,element:Gt,width:he,height:ve,imgwidth:Ce,imgheight:Te}=this,Ke=re==="width"?Ce:Te,rn=1;F&&F.backgroundSize==="within"&&he&&ve&&Ce&&Te?(rn=Math.min(he/Ce,ve/Te),k(Gt,{width:Math.round(Ce*rn),height:Math.round(Te*rn)})):Gt&&Ke&&Gt.setAttribute(re,Ke),!le&&Ce&&Te&&this.translate(((he||0)-Ce*rn)/2,((ve||0)-Te*rn)/2)}}),l(tt)&&wt.attr({x:tt,y:nt}),wt.isImg=!0,wt.symbolUrl=B,l(wt.imgwidth)&&l(wt.imgheight)?vt(wt):(wt.attr({width:0,height:0}),_("img",{onload:function(){let Dt=T[Ot.chartIndex];this.width===0&&(h(this,{position:"absolute",top:"-999em"}),M.body.appendChild(this)),it[gt]={width:this.width,height:this.height},wt.imgwidth=this.width,wt.imgheight=this.height,wt.element&&vt(wt),this.parentNode&&this.parentNode.removeChild(this),Ot.imgCount--,Ot.imgCount||!Dt||Dt.hasLoaded||Dt.onload()},src:gt}),this.imgCount++)}return lt}clipRect(B,tt,nt,x){return this.rect(B,tt,nt,x,0)}text(B,tt,nt,x){let y={};if(x&&(this.allowHTML||!this.forExport))return this.html(B,tt,nt);y.x=Math.round(tt||0),nt&&(y.y=Math.round(nt)),l(B)&&(y.text=B);let F=this.createElement("text").attr(y);return x&&(!this.forExport||this.allowHTML)||(F.xSetter=function(lt,rt,gt){let vt=gt.getElementsByTagName("tspan"),Ot=gt.getAttribute(rt);for(let At=0,$t;AtB.align())}}return v(Mt.prototype,{Element:X,SVG_NS:D,escapes:{"&":"&","<":"<",">":">","'":"'",'"':"""},symbols:Z,draw:c}),J.registerRendererType("svg",Mt,!0),Mt}),g(d,"Core/Renderer/HTML/HTMLElement.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{composed:J}=R,{attr:X,css:q,createElement:Z,defined:Y,extend:V,pInt:N,pushUnique:U}=$;function T(H,z,c){var it;let D=((it=this.div)==null?void 0:it.style)||c.style;st.prototype[`${z}Setter`].call(this,H,z,c),D&&(D[z]=H)}let A=(H,z)=>{var c;if(!H.div){let D=X(H.element,"class"),it=H.css,Q=Z("div",D?{className:D}:void 0,Mi(xr({position:"absolute",left:`${H.translateX||0}px`,top:`${H.translateY||0}px`},H.styles),{display:H.display,opacity:H.opacity,visibility:H.visibility}),((c=H.parentGroup)==null?void 0:c.div)||z);H.classSetter=(W,k,_)=>{_.setAttribute("class",W),Q.className=W},H.translateXSetter=H.translateYSetter=(W,k)=>{H[k]=W,Q.style[k==="translateX"?"left":"top"]=`${W}px`,H.doTransform=!0},H.opacitySetter=H.visibilitySetter=T,H.css=W=>(it.call(H,W),W.cursor&&(Q.style.cursor=W.cursor),W.pointerEvents&&(Q.style.pointerEvents=W.pointerEvents),H),H.on=function(){return st.prototype.on.apply({element:Q,onEvents:H.onEvents},arguments),H},H.div=Q}return H.div};class M extends st{static compose(z){U(J,this.compose)&&(z.prototype.html=function(c,D,it){return new M(this,"span").attr({text:c,x:Math.round(D),y:Math.round(it)})})}constructor(z,c){super(z,c),this.css(xr({position:"absolute"},z.styledMode?{}:{fontFamily:z.style.fontFamily,fontSize:z.style.fontSize})),this.element.style.whiteSpace="nowrap"}getSpanCorrection(z,c,D){this.xCorr=-z*D,this.yCorr=-c}css(z){let c,{element:D}=this,it=D.tagName==="SPAN"&&z&&"width"in z,Q=it&&z.width;return it&&(delete z.width,this.textWidth=N(Q)||void 0,c=!0),(z==null?void 0:z.textOverflow)==="ellipsis"&&(z.whiteSpace="nowrap",z.overflow="hidden"),V(this.styles,z),q(D,z),c&&this.updateTransform(),this}htmlGetBBox(){let{element:z}=this;return{x:z.offsetLeft,y:z.offsetTop,width:z.offsetWidth,height:z.offsetHeight}}updateTransform(){var S;if(!this.added){this.alignOnAdd=!0;return}let{element:z,renderer:c,rotation:D,rotationOriginX:it,rotationOriginY:Q,styles:W,textAlign:k="left",textWidth:_,translateX:C=0,translateY:h=0,x:l=0,y:u=0}=this,v={left:0,center:.5,right:1}[k],I=W.whiteSpace;if(q(z,{marginLeft:`${C}px`,marginTop:`${h}px`}),z.tagName==="SPAN"){let b=[D,k,z.innerHTML,_,this.textAlign].join(","),K=-(((S=this.parentGroup)==null?void 0:S.padding)*1)||0,ct,et=!1;if(_!==this.oldTextWidth){let w=this.textPxLength?this.textPxLength:(q(z,{width:"",whiteSpace:I||"nowrap"}),z.offsetWidth),B=_||0;(B>this.oldTextWidth||w>B)&&(/[ \-]/.test(z.textContent||z.innerText)||z.style.textOverflow==="ellipsis")&&(q(z,{width:w>B||D?_+"px":"auto",display:"block",whiteSpace:I||"normal"}),this.oldTextWidth=_,et=!0)}this.hasBoxWidthChanged=et,b!==this.cTT&&(ct=c.fontMetrics(z).b,Y(D)&&(D!==(this.oldRotation||0)||k!==this.oldAlign)&&this.setSpanRotation(D,K,K),this.getSpanCorrection(!Y(D)&&this.textPxLength||z.offsetWidth,ct,v));let{xCorr:dt=0,yCorr:pt=0}=this,bt=(it!=null?it:l)-dt-l-K,Mt=(Q!=null?Q:u)-pt-u-K;q(z,{left:`${l+dt}px`,top:`${u+pt}px`,transformOrigin:`${bt}px ${Mt}px`}),this.cTT=b,this.oldRotation=D,this.oldAlign=k}}setSpanRotation(z,c,D){q(this.element,{transform:`rotate(${z}deg)`,transformOrigin:`${c}% ${D}px`})}add(z){let c,D=this.renderer.box.parentNode,it=[];if(this.parentGroup=z,z&&!(c=z.div)){let Q=z;for(;Q;)it.push(Q),Q=Q.parentGroup;for(let W of it.reverse())c=A(W,D)}return(c||D).appendChild(this.element),this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(z){z!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,L.setElementHTML(this.element,z!=null?z:""),this.textStr=z,this.doTransform=!0)}alignSetter(z){this.alignValue=this.textAlign=z,this.doTransform=!0}xSetter(z,c){this[c]=z,this.doTransform=!0}}let O=M.prototype;return O.visibilitySetter=O.opacitySetter=T,O.ySetter=O.rotationSetter=O.rotationOriginXSetter=O.rotationOriginYSetter=O.xSetter,M}),g(d,"Core/Axis/AxisDefaults.js",[],function(){var L,R;return(R=L||(L={})).xAxis={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e %b"},week:{main:"%e %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotationLimit:80,distance:15,enabled:!0,indentation:10,overflow:"justify",reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,zIndex:7,style:{color:"#333333",cursor:"default",fontSize:"0.8em"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minorTicksPerMajor:5,minPadding:.01,offset:void 0,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",useHTML:!1,x:0,y:0,style:{color:"#666666",fontSize:"0.8em"}},visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},R.yAxis={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:void 0},startOnTick:!0,title:{text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){let{numberFormatter:st}=this.axis.chart;return st(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},L}),g(d,"Core/Foundation.js",[d["Core/Utilities.js"]],function(L){var R;let{addEvent:st,isFunction:$,objectEach:J,removeEvent:X}=L;return(R||(R={})).registerEventOptions=function(q,Z){q.eventOptions=q.eventOptions||{},J(Z.events,function(Y,V){q.eventOptions[V]!==Y&&(q.eventOptions[V]&&(X(q,V,q.eventOptions[V]),delete q.eventOptions[V]),$(Y)&&(q.eventOptions[V]=Y,st(q,V,Y,{order:0})))})},R}),g(d,"Core/Axis/Tick.js",[d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{deg2rad:$}=R,{clamp:J,correctFloat:X,defined:q,destroyObjectProperties:Z,extend:Y,fireEvent:V,isNumber:N,merge:U,objectEach:T,pick:A}=st;return class{constructor(M,O,H,z,c){this.isNew=!0,this.isNewLabel=!0,this.axis=M,this.pos=O,this.type=H||"",this.parameters=c||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,V(this,"init"),H||z||this.addLabel()}addLabel(){let M=this,O=M.axis,H=O.options,z=O.chart,c=O.categories,D=O.logarithmic,it=O.names,Q=M.pos,W=A(M.options&&M.options.labels,H.labels),k=O.tickPositions,_=Q===k[0],C=Q===k[k.length-1],h=(!W.step||W.step===1)&&O.tickInterval===1,l=k.info,u=M.label,v,I,S,b=this.parameters.category||(c?A(c[Q],it[Q],Q):Q);D&&N(b)&&(b=X(D.lin2log(b))),O.dateTime&&(l?v=(I=z.time.resolveDTLFormat(H.dateTimeLabelFormats[!H.grid&&l.higherRanks[Q]||l.unitName])).main:N(b)&&(v=O.dateTime.getXDateFormat(b,H.dateTimeLabelFormats||{}))),M.isFirst=_,M.isLast=C;let K={axis:O,chart:z,dateTimeLabelFormat:v,isFirst:_,isLast:C,pos:Q,tick:M,tickPositionInfo:l,value:b};V(this,"labelFormat",K);let ct=pt=>W.formatter?W.formatter.call(pt,pt):W.format?(pt.text=O.defaultLabelFormatter.call(pt),L.format(W.format,pt,z)):O.defaultLabelFormatter.call(pt),et=ct.call(K,K),dt=I&&I.list;dt?M.shortenLabel=function(){for(S=0;S0&&z+_*C>Q&&(b=Math.round((c-z)/Math.cos(k*$))):(I=z-_*C,S=z+(1-_)*C,IQ&&(u=Q-M.x+u*_,v=-1),(u=Math.min(h,u))u||O.autoRotation&&(W.styles||{}).width)&&(b=u)),b&&(this.shortenLabel?this.shortenLabel():(l.width=Math.floor(b)+"px",(H.style||{}).textOverflow||(l.textOverflow="ellipsis"),W.css(l)))}moveLabel(M,O){let H=this,z=H.label,c=H.axis,D=!1,it;z&&z.textStr===M?(H.movedLabel=z,D=!0,delete H.label):T(c.ticks,function(Q){D||Q.isNew||Q===H||!Q.label||Q.label.textStr!==M||(H.movedLabel=Q.label,D=!0,Q.labelPos=H.movedLabel.xy,delete Q.label)}),!D&&(H.labelPos||z)&&(it=H.labelPos||z.xy,H.movedLabel=H.createLabel(M,O,it),H.movedLabel&&H.movedLabel.attr({opacity:0}))}render(M,O,H){let z=this.axis,c=z.horiz,D=this.pos,it=A(this.tickmarkOffset,z.tickmarkOffset),Q=this.getPosition(c,D,it,O),W=Q.x,k=Q.y,_=z.pos,C=_+z.len,h=c?W:k;!z.chart.polar&&this.isNew&&(X(h)<_||h>C)&&(H=0);let l=A(H,this.label&&this.label.newOpacity,1);H=A(H,1),this.isActive=!0,this.renderGridLine(O,H),this.renderMark(Q,H),this.renderLabel(Q,O,l,M),this.isNew=!1,V(this,"afterRender")}renderGridLine(M,O){let H=this.axis,z=H.options,c={},D=this.pos,it=this.type,Q=A(this.tickmarkOffset,H.tickmarkOffset),W=H.chart.renderer,k=this.gridLine,_,C=z.gridLineWidth,h=z.gridLineColor,l=z.gridLineDashStyle;this.type==="minor"&&(C=z.minorGridLineWidth,h=z.minorGridLineColor,l=z.minorGridLineDashStyle),k||(H.chart.styledMode||(c.stroke=h,c["stroke-width"]=C||0,c.dashstyle=l),it||(c.zIndex=1),M&&(O=0),this.gridLine=k=W.path().attr(c).addClass("highcharts-"+(it?it+"-":"")+"grid-line").add(H.gridGroup)),k&&(_=H.getPlotLinePath({value:D+Q,lineWidth:k.strokeWidth(),force:"pass",old:M,acrossPanes:!1}))&&k[M||this.isNew?"attr":"animate"]({d:_,opacity:O})}renderMark(M,O){let H=this.axis,z=H.options,c=H.chart.renderer,D=this.type,it=H.tickSize(D?D+"Tick":"tick"),Q=M.x,W=M.y,k=A(z[D!=="minor"?"tickWidth":"minorTickWidth"],!D&&H.isXAxis?1:0),_=z[D!=="minor"?"tickColor":"minorTickColor"],C=this.mark,h=!C;it&&(H.opposite&&(it[0]=-it[0]),C||(this.mark=C=c.path().addClass("highcharts-"+(D?D+"-":"")+"tick").add(H.axisGroup),H.chart.styledMode||C.attr({stroke:_,"stroke-width":k})),C[h?"attr":"animate"]({d:this.getMarkPath(Q,W,it[0],C.strokeWidth(),H.horiz,c),opacity:O}))}renderLabel(M,O,H,z){let c=this.axis,D=c.horiz,it=c.options,Q=this.label,W=it.labels,k=W.step,_=A(this.tickmarkOffset,c.tickmarkOffset),C=M.x,h=M.y,l=!0;Q&&N(C)&&(Q.xy=M=this.getLabelPosition(C,h,Q,D,W,_,z,k),(!this.isFirst||this.isLast||it.showFirstLabel)&&(!this.isLast||this.isFirst||it.showLastLabel)?!D||W.step||W.rotation||O||H===0||this.handleOverflow(M):l=!1,k&&z%k&&(l=!1),l&&N(M.y)?(M.opacity=H,Q[this.isNewLabel?"attr":"animate"](M).show(!0),this.isNewLabel=!1):(Q.hide(),this.isNewLabel=!0))}replaceMovedLabel(){let M=this.label,O=this.axis;M&&!this.isNew&&(M.animate({opacity:0},void 0,M.destroy),delete this.label),O.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel}}}),g(d,"Core/Axis/Axis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/AxisDefaults.js"],d["Core/Color/Color.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Axis/Tick.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){let{animObject:Y}=L,{xAxis:V,yAxis:N}=R,{defaultOptions:U}=$,{registerEventOptions:T}=J,{deg2rad:A}=X,{arrayMax:M,arrayMin:O,clamp:H,correctFloat:z,defined:c,destroyObjectProperties:D,erase:it,error:Q,extend:W,fireEvent:k,getClosestDistance:_,insertItem:C,isArray:h,isNumber:l,isString:u,merge:v,normalizeTickInterval:I,objectEach:S,pick:b,relativeLength:K,removeEvent:ct,splat:et,syncTimeout:dt}=Z,pt=(Mt,w)=>I(w,void 0,void 0,b(Mt.options.allowDecimals,w<.5||Mt.tickAmount!==void 0),!!Mt.tickAmount);W(U,{xAxis:V,yAxis:v(V,N)});class bt{constructor(w,B,tt){this.init(w,B,tt)}init(w,B,tt=this.coll){var rt,gt,vt,Ot;let nt=tt==="xAxis",x=this.isZAxis||(w.inverted?!nt:nt);this.chart=w,this.horiz=x,this.isXAxis=nt,this.coll=tt,k(this,"init",{userOptions:B}),this.opposite=b(B.opposite,this.opposite),this.side=b(B.side,this.side,x?this.opposite?0:2:this.opposite?1:3),this.setOptions(B);let y=this.options,F=y.labels;(rt=this.type)!=null||(this.type=y.type||"linear"),(vt=this.uniqueNames)!=null||(this.uniqueNames=(gt=y.uniqueNames)!=null?gt:!0),k(this,"afterSetType"),this.userOptions=B,this.minPixelPadding=0,this.reversed=b(y.reversed,this.reversed),this.visible=y.visible,this.zoomEnabled=y.zoomEnabled,this.hasNames=this.type==="category"||y.categories===!0,this.categories=h(y.categories)&&y.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=c(y.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},(Ot=this.len)!=null||(this.len=0),this.minRange=this.userMinRange=y.minRange||y.maxZoom,this.range=y.range,this.offset=y.offset||0,this.max=void 0,this.min=void 0;let lt=b(y.crosshair,et(w.options.tooltip.crosshairs)[nt?0:1]);this.crosshair=lt===!0?{}:lt,w.axes.indexOf(this)===-1&&(nt?w.axes.splice(w.xAxis.length,0,this):w.axes.push(this),C(this,w[this.coll])),w.orderItems(this.coll),this.series=this.series||[],w.inverted&&!this.isZAxis&&nt&&!c(this.reversed)&&(this.reversed=!0),this.labelRotation=l(F.rotation)?F.rotation:void 0,T(this,y),k(this,"afterInit")}setOptions(w){let B=this.horiz?{labels:{autoRotation:[-45],padding:4},margin:15}:{labels:{padding:1},title:{rotation:90*this.side}};this.options=v(B,U[this.coll],w),k(this,"afterSetOptions",{userOptions:w})}defaultLabelFormatter(){let w=this.axis,{numberFormatter:B}=this.chart,tt=l(this.value)?this.value:NaN,nt=w.chart.time,x=w.categories,y=this.dateTimeLabelFormat,F=U.lang,lt=F.numericSymbols,rt=F.numericSymbolMagnitude||1e3,gt=w.logarithmic?Math.abs(tt):w.tickInterval,vt=lt&<.length,Ot,At;if(x)At=`${this.value}`;else if(y)At=nt.dateFormat(y,tt);else if(vt&<&>>=1e3)for(;vt--&&At===void 0;)gt>=(Ot=Math.pow(rt,vt+1))&&10*tt%Ot==0&<[vt]!==null&&tt!==0&&(At=B(tt/Ot,-1)+lt[vt]);return At===void 0&&(At=Math.abs(tt)>=1e4?B(tt,-1):B(tt,-1,void 0,"")),At}getSeriesExtremes(){let w,B=this;k(this,"getSeriesExtremes",null,function(){B.hasVisibleSeries=!1,B.dataMin=B.dataMax=B.threshold=void 0,B.softThreshold=!B.isXAxis,B.series.forEach(tt=>{if(tt.reserveSpace()){let nt=tt.options,x,y=nt.threshold,F,lt;if(B.hasVisibleSeries=!0,B.positiveValuesOnly&&0>=(y||0)&&(y=void 0),B.isXAxis)(x=tt.xData)&&x.length&&(x=B.logarithmic?x.filter(rt=>rt>0):x,F=(w=tt.getXExtremes(x)).min,lt=w.max,l(F)||F instanceof Date||(x=x.filter(l),F=(w=tt.getXExtremes(x)).min,lt=w.max),x.length&&(B.dataMin=Math.min(b(B.dataMin,F),F),B.dataMax=Math.max(b(B.dataMax,lt),lt)));else{let rt=tt.applyExtremes();l(rt.dataMin)&&(F=rt.dataMin,B.dataMin=Math.min(b(B.dataMin,F),F)),l(rt.dataMax)&&(lt=rt.dataMax,B.dataMax=Math.max(b(B.dataMax,lt),lt)),c(y)&&(B.threshold=y),(!nt.softThreshold||B.positiveValuesOnly)&&(B.softThreshold=!1)}}})}),k(this,"afterGetSeriesExtremes")}translate(w,B,tt,nt,x,y){var Xt;let F=this.linkedParent||this,lt=nt&&F.old?F.old.min:F.min;if(!l(lt))return NaN;let rt=F.minPixelPadding,gt=(F.isOrdinal||((Xt=F.brokenAxis)==null?void 0:Xt.hasBreaks)||F.logarithmic&&x)&&F.lin2val,vt=1,Ot=0,At=nt&&F.old?F.old.transA:F.transA,$t=0;return At||(At=F.transA),tt&&(vt*=-1,Ot=F.len),F.reversed&&(vt*=-1,Ot-=vt*(F.sector||F.len)),B?($t=(w=w*vt+Ot-rt)/At+lt,gt&&($t=F.lin2val($t))):(gt&&(w=F.val2lin(w)),$t=vt*(w-lt)*At+Ot+vt*rt+(l(y)?At*y:0),F.isRadial||($t=z($t))),$t}toPixels(w,B){return this.translate(w,!1,!this.horiz,void 0,!0)+(B?0:this.pos)}toValue(w,B){return this.translate(w-(B?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(w){let B=this,tt=B.chart,nt=B.left,x=B.top,y=w.old,F=w.value,lt=w.lineWidth,rt=y&&tt.oldChartHeight||tt.chartHeight,gt=y&&tt.oldChartWidth||tt.chartWidth,vt=B.transB,Ot=w.translatedValue,At=w.force,$t,Xt,Ct,wt,Dt;function jt(le,Gt,he){return At!=="pass"&&(lehe)&&(At?le=H(le,Gt,he):Dt=!0),le}let re={value:F,lineWidth:lt,old:y,force:At,acrossPanes:w.acrossPanes,translatedValue:Ot};return k(this,"getPlotLinePath",re,function(le){$t=Ct=(Ot=H(Ot=b(Ot,B.translate(F,void 0,void 0,y)),-1e9,1e9))+vt,Xt=wt=rt-Ot-vt,l(Ot)?B.horiz?(Xt=x,wt=rt-B.bottom+(B.options.isInternal?0:tt.scrollablePixelsY||0),$t=Ct=jt($t,nt,nt+B.width)):($t=nt,Ct=gt-B.right+(tt.scrollablePixelsX||0),Xt=wt=jt(Xt,x,x+B.height)):(Dt=!0,At=!1),le.path=Dt&&!At?void 0:tt.renderer.crispLine([["M",$t,Xt],["L",Ct,wt]],lt||1)}),re.path}getLinearTickPositions(w,B,tt){let nt,x,y,F=z(Math.floor(B/w)*w),lt=z(Math.ceil(tt/w)*w),rt=[];if(z(F+w)===F&&(y=20),this.single)return[B];for(nt=F;nt<=lt&&(rt.push(nt),(nt=z(nt+w,y))!==x);)x=nt;return rt}getMinorTickInterval(){let{minorTicks:w,minorTickInterval:B}=this.options;return w===!0?b(B,"auto"):w!==!1?B:void 0}getMinorTickPositions(){let w=this.options,B=this.tickPositions,tt=this.minorTickInterval,nt=this.pointRangePadding||0,x=(this.min||0)-nt,y=(this.max||0)+nt,F=y-x,lt=[],rt;if(F&&F/tt{var vt;return(gt.xIncrement?(vt=gt.xData)==null?void 0:vt.slice(0,2):gt.xData)||[]}))||0),this.dataMax-this.dataMin)),l(tt)&&l(nt)&&l(x)&&tt-nt=x,y=(x-tt+nt)/2,lt=[nt-y,b(w.min,nt-y)],F&&(lt[2]=B?B.log2lin(this.dataMin):this.dataMin),rt=[(nt=M(lt))+x,b(w.max,nt+x)],F&&(rt[2]=B?B.log2lin(this.dataMax):this.dataMax),(tt=O(rt))-ntnt-x),w=_([tt]))}return w&&B?Math.min(w,B):w||B}nameToX(w){let B=h(this.options.categories),tt=B?this.categories:this.names,nt=w.options.x,x;return w.series.requireSorting=!1,c(nt)||(nt=this.uniqueNames&&tt?B?tt.indexOf(w.name):b(tt.keys[w.name],-1):w.series.autoIncrement()),nt===-1?!B&&tt&&(x=tt.length):x=nt,x!==void 0?(this.names[x]=w.name,this.names.keys[w.name]=x):w.x&&(x=w.x),x}updateNames(){let w=this,B=this.names;B.length>0&&(Object.keys(B.keys).forEach(function(tt){delete B.keys[tt]}),B.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(tt=>{tt.xIncrement=null,(!tt.points||tt.isDirtyData)&&(w.max=Math.max(w.max,tt.xData.length-1),tt.processData(),tt.generatePoints()),tt.data.forEach(function(nt,x){let y;nt!=null&&nt.options&&nt.name!==void 0&&(y=w.nameToX(nt))!==void 0&&y!==nt.x&&(nt.x=y,tt.xData[x]=y)})}))}setAxisTranslation(){let w=this,B=w.max-w.min,tt=w.linkedParent,nt=!!w.categories,x=w.isXAxis,y=w.axisPointRange||0,F,lt=0,rt=0,gt,vt=w.transA;(x||nt||y)&&(F=w.getClosest(),tt?(lt=tt.minPointOffset,rt=tt.pointRangePadding):w.series.forEach(function(Ot){let At=nt?1:x?b(Ot.options.pointRange,F,0):w.axisPointRange||0,$t=Ot.options.pointPlacement;if(y=Math.max(y,At),!w.single||nt){let Xt=Ot.is("xrange")?!x:x;lt=Math.max(lt,Xt&&u($t)?0:At/2),rt=Math.max(rt,Xt&&$t==="on"?0:At)}}),gt=w.ordinal&&w.ordinal.slope&&F?w.ordinal.slope/F:1,w.minPointOffset=lt*=gt,w.pointRangePadding=rt*=gt,w.pointRange=Math.min(y,w.single&&nt?1:B),x&&F&&(w.closestPointRange=F)),w.translationSlope=w.transA=vt=w.staticScale||w.len/(B+rt||1),w.transB=w.horiz?w.left:w.bottom,w.minPixelPadding=vt*lt,k(this,"afterSetAxisTranslation")}minFromRange(){let{max:w,min:B}=this;return l(w)&&l(B)&&w-B||void 0}setTickInterval(w){var Qt,Kt,Jt,Et;let{categories:B,chart:tt,dataMax:nt,dataMin:x,dateTime:y,isXAxis:F,logarithmic:lt,options:rt,softThreshold:gt}=this,vt=l(this.threshold)?this.threshold:void 0,Ot=this.minRange||0,{ceiling:At,floor:$t,linkedTo:Xt,softMax:Ct,softMin:wt}=rt,Dt=l(Xt)&&((Qt=tt[this.coll])==null?void 0:Qt[Xt]),jt=rt.tickPixelInterval,re=rt.maxPadding,le=rt.minPadding,Gt=0,he,ve=l(rt.tickInterval)&&rt.tickInterval>=0?rt.tickInterval:void 0,Ce,Te,Ke,rn;if(y||B||Dt||this.getTickAmount(),Ke=b(this.userMin,rt.min),rn=b(this.userMax,rt.max),Dt?(this.linkedParent=Dt,he=Dt.getExtremes(),this.min=b(he.min,he.dataMin),this.max=b(he.max,he.dataMax),this.type!==Dt.type&&Q(11,!0,tt)):(gt&&c(vt)&&l(nt)&&l(x)&&(x>=vt?(Ce=vt,le=0):nt<=vt&&(Te=vt,re=0)),this.min=b(Ke,Ce,x),this.max=b(rn,Te,nt)),l(this.max)&&l(this.min)&&(lt&&(this.positiveValuesOnly&&!w&&0>=Math.min(this.min,b(x,this.min))&&Q(10,!0,tt),this.min=z(lt.log2lin(this.min),16),this.max=z(lt.log2lin(this.max),16)),this.range&&l(x)&&(this.userMin=this.min=Ke=Math.max(x,this.minFromRange()||0),this.userMax=rn=this.max,this.range=void 0)),k(this,"foundExtremes"),this.adjustForMinRange(),l(this.min)&&l(this.max)){if(!l(this.userMin)&&l(wt)&&wtthis.max&&(this.max=rn=Ct),B||this.axisPointRange||(Kt=this.stacking)!=null&&Kt.usePercentage||Dt||!(Gt=this.max-this.min)||(!c(Ke)&&le&&(this.min-=Gt*le),c(rn)||!re||(this.max+=Gt*re)),!l(this.userMin)&&l($t)&&(this.min=Math.max(this.min,$t)),!l(this.userMax)&&l(At)&&(this.max=Math.min(this.max,At)),gt&&l(x)&&l(nt)){let Rt=vt||0;!c(Ke)&&this.min=Rt?this.min=rt.minRange?Math.min(Rt,this.max-Ot):Rt:!c(rn)&&this.max>Rt&&nt<=Rt&&(this.max=rt.minRange?Math.max(Rt,this.min+Ot):Rt)}!tt.polar&&this.min>this.max&&(c(rt.min)?this.max=this.min:c(rt.max)&&(this.min=this.max)),Gt=this.max-this.min}if(this.min!==this.max&&l(this.min)&&l(this.max)?Dt&&!ve&&jt===Dt.options.tickPixelInterval?this.tickInterval=ve=Dt.tickInterval:this.tickInterval=b(ve,this.tickAmount?Gt/Math.max(this.tickAmount-1,1):void 0,B?1:Gt*jt/Math.max(this.len,jt)):this.tickInterval=1,F&&!w){let Rt=this.min!==((Jt=this.old)==null?void 0:Jt.min)||this.max!==((Et=this.old)==null?void 0:Et.max);this.series.forEach(function(zt){var Ft;zt.forceCrop=(Ft=zt.forceCropping)==null?void 0:Ft.call(zt),zt.processData(Rt)}),k(this,"postProcessData",{hasExtremesChanged:Rt})}this.setAxisTranslation(),k(this,"initialAxisTranslation"),this.pointRange&&!ve&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval));let un=b(rt.minTickInterval,y&&!this.series.some(Rt=>Rt.noSharedTooltip)?this.closestPointRange:0);!ve&&this.tickIntervalMath.max(2*this.len,200))lt=[this.min,this.max],Q(19,!1,this.chart);else if(this.dateTime)lt=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,w.units),this.min,this.max,w.startOfWeek,(vt=this.ordinal)==null?void 0:vt.positions,this.closestPointRange,!0);else if(this.logarithmic)lt=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let Ot=this.tickInterval,At=Ot;for(;At<=2*Ot&&(lt=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&<.length>this.tickAmount);)this.tickInterval=pt(this,At*=1.1)}lt.length>this.len&&(lt=[lt[0],lt[lt.length-1]])[0]===lt[1]&&(lt.length=1),tt&&(this.tickPositions=lt,(rt=tt.apply(this,[this.min,this.max]))&&(lt=rt))}this.tickPositions=lt,this.minorTickInterval=nt==="auto"&&this.tickInterval?this.tickInterval/w.minorTicksPerMajor:nt,this.paddedTicks=lt.slice(0),this.trimTicks(lt,y,F),!this.isLinked&&l(this.min)&&l(this.max)&&(this.single&<.length<2&&!this.categories&&!this.series.some(Ot=>Ot.is("heatmap")&&Ot.options.pointPlacement==="between")&&(this.min-=.5,this.max+=.5),B||rt||this.adjustTickAmount()),k(this,"afterSetTickPositions")}trimTicks(w,B,tt){let nt=w[0],x=w[w.length-1],y=!this.isOrdinal&&this.minPointOffset||0;if(k(this,"trimTicks"),!this.isLinked){if(B&&nt!==-1/0)this.min=nt;else for(;this.min-y>w[0];)w.shift();if(tt)this.max=x;else for(;this.max+y{let{horiz:Ot,options:At}=vt;return[Ot?At.left:At.top,At.width,At.height,At.pane].join(",")},gt=rt(this);tt[this.coll].forEach(function(vt){let{series:Ot}=vt;Ot.length&&Ot.some(At=>At.visible)&&vt!==B&&rt(vt)===gt&&(w=!0,nt.push(vt))})}if(w&&F){nt.forEach(gt=>{let vt=gt.getThresholdAlignment(B);l(vt)&<.push(vt)});let rt=lt.length>1?lt.reduce((gt,vt)=>gt+=vt,0)/lt.length:void 0;nt.forEach(gt=>{gt.thresholdAlignment=rt})}return w}getThresholdAlignment(w){if((!l(this.dataMin)||this!==w&&this.series.some(B=>B.isDirty||B.isDirtyData))&&this.getSeriesExtremes(),l(this.threshold)){let B=H((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(B=1-B),B}}getTickAmount(){let w=this.options,B=w.tickPixelInterval,tt=w.tickAmount;c(w.tickInterval)||tt||!(this.leny.push(z(y[y.length-1]+At)),Ct=()=>y.unshift(z(y[0]-At));if(l(lt)&&($t=lt<.5?Math.ceil(lt*(F-1)):Math.floor(lt*(F-1)),x.reversed&&($t=F-1-$t)),w.hasData()&&l(nt)&&l(tt)){let wt=()=>{w.transA*=(rt-1)/(F-1),w.min=x.startOnTick?y[0]:Math.min(nt,y[0]),w.max=x.endOnTick?y[y.length-1]:Math.max(tt,y[y.length-1])};if(l($t)&&l(w.threshold)){for(;y[$t]!==gt||y.length!==F||y[0]>nt||y[y.length-1]w.threshold?Ct():Xt();if(At>8*w.tickInterval)break;At*=2}wt()}else if(rt0&&Ot{tt=tt||lt.isDirtyData||lt.isDirty,nt=nt||lt.xAxis&<.xAxis.isDirty||!1}),this.setAxisSize();let x=this.len!==(this.old&&this.old.len);x||tt||nt||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(B&&w==="yAxis"&&B.buildStacks(),this.forceRedraw=!1,this.userMinRange||(this.minRange=void 0),this.getSeriesExtremes(),this.setTickInterval(),B&&w==="xAxis"&&B.buildStacks(),this.isDirty||(this.isDirty=x||this.min!==((y=this.old)==null?void 0:y.min)||this.max!==((F=this.old)==null?void 0:F.max))):B&&B.cleanStacks(),tt&&delete this.allExtremes,k(this,"afterSetScale")}setExtremes(w,B,tt=!0,nt,x){this.series.forEach(y=>{delete y.kdTree}),k(this,"setExtremes",x=W(x,{min:w,max:B}),y=>{this.userMin=y.min,this.userMax=y.max,this.eventArgs=y,tt&&this.chart.redraw(nt)})}setAxisSize(){let w=this.chart,B=this.options,tt=B.offsets||[0,0,0,0],nt=this.horiz,x=this.width=Math.round(K(b(B.width,w.plotWidth-tt[3]+tt[1]),w.plotWidth)),y=this.height=Math.round(K(b(B.height,w.plotHeight-tt[0]+tt[2]),w.plotHeight)),F=this.top=Math.round(K(b(B.top,w.plotTop+tt[0]),w.plotHeight,w.plotTop)),lt=this.left=Math.round(K(b(B.left,w.plotLeft+tt[3]),w.plotWidth,w.plotLeft));this.bottom=w.chartHeight-y-F,this.right=w.chartWidth-x-lt,this.len=Math.max(nt?x:y,0),this.pos=nt?lt:F}getExtremes(){let w=this.logarithmic;return{min:w?z(w.lin2log(this.min)):this.min,max:w?z(w.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}}getThreshold(w){let B=this.logarithmic,tt=B?B.lin2log(this.min):this.min,nt=B?B.lin2log(this.max):this.max;return w===null||w===-1/0?w=tt:w===1/0?w=nt:tt>w?w=tt:nt15&&B<165?nt.align="right":B>195&&B<345&&(nt.align="left")}),tt.align}tickSize(w){let B=this.options,tt=b(B[w==="tick"?"tickWidth":"minorTickWidth"],w==="tick"&&this.isXAxis&&!this.categories?1:0),nt=B[w==="tick"?"tickLength":"minorTickLength"],x;tt&&nt&&(B[w+"Position"]==="inside"&&(nt=-nt),x=[nt,tt]);let y={tickSize:x};return k(this,"afterTickSize",y),y.tickSize}labelMetrics(){let w=this.chart.renderer,B=this.ticks,tt=B[Object.keys(B)[0]]||{};return this.chart.renderer.fontMetrics(tt.label||tt.movedLabel||w.box)}unsquish(){let w=this.options.labels,B=w.padding||0,tt=this.horiz,nt=this.tickInterval,x=this.len/(((this.categories?1:0)+this.max-this.min)/nt),y=w.rotation,F=z(.8*this.labelMetrics().h),lt=Math.max(this.max-this.min,0),rt=function($t){let Xt=($t+2*B)/(x||1);return(Xt=Xt>1?Math.ceil(Xt):1)*nt>lt&&$t!==1/0&&x!==1/0&<&&(Xt=Math.ceil(lt/nt)),z(Xt*nt)},gt=nt,vt,Ot=Number.MAX_VALUE,At;if(tt){if(!w.staggerLines&&(l(y)?At=[y]:x=-90&&Ct<=90)&&(Xt=($t=rt(Math.abs(F/Math.sin(A*Ct))))+Math.abs(Ct/360))Xt&&(Xt=jt.label.textPxLength)}),this.maxLabelLength=Xt,this.autoRotation)Xt>rt&&Xt>vt.h?gt.rotation=this.labelRotation:this.labelRotation=0;else if(lt&&(At=rt,!Ot))for($t="clip",wt=tt.length;!F&&wt--;)(Ct=nt[tt[wt]].label)&&(Ct.styles.textOverflow==="ellipsis"?Ct.css({textOverflow:"clip"}):Ct.textPxLength>lt&&Ct.css({width:lt+"px"}),Ct.getBBox().height>this.len/tt.length-(vt.h-vt.f)&&(Ct.specificTextOverflow="ellipsis"));gt.rotation&&(At=Xt>.5*w.chartHeight?.33*w.chartHeight:Xt,Ot||($t="ellipsis")),this.labelAlign=x.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(gt.align=this.labelAlign),tt.forEach(function(Dt){let jt=nt[Dt],re=jt&&jt.label,le=y.width,Gt={};re&&(re.attr(gt),jt.shortenLabel?jt.shortenLabel():At&&!le&&y.whiteSpace!=="nowrap"&&(Atx.g(F).attr({zIndex:rt}).addClass(`highcharts-${tt.toLowerCase()}${lt} `+(this.isRadial?`highcharts-radial-axis${lt} `:"")+(nt.className||"")).add(w);this.axisGroup||(this.gridGroup=y("grid","-grid",nt.gridZIndex),this.axisGroup=y("axis","",nt.zIndex),this.labelGroup=y("axis-labels","-labels",nt.labels.zIndex))}getOffset(){let w=this,{chart:B,horiz:tt,options:nt,side:x,ticks:y,tickPositions:F,coll:lt}=w,rt=B.inverted&&!w.isZAxis?[1,0,3,2][x]:x,gt=w.hasData(),vt=nt.title,Ot=nt.labels,At=l(nt.crossing),$t=B.axisOffset,Xt=B.clipOffset,Ct=[-1,1,1,-1][x],wt,Dt=0,jt,re=0,le=0,Gt,he;if(w.showAxis=wt=gt||nt.showEmpty,w.staggerLines=w.horiz&&Ot.staggerLines||void 0,w.createGroups(),gt||w.isLinked?(F.forEach(function(ve){w.generateTick(ve)}),w.renderUnsquish(),w.reserveSpaceDefault=x===0||x===2||{1:"left",3:"right"}[x]===w.labelAlign,b(Ot.reserveSpace,!At&&null,w.labelAlign==="center"||null,w.reserveSpaceDefault)&&F.forEach(function(ve){le=Math.max(y[ve].getLabelSize(),le)}),w.staggerLines&&(le*=w.staggerLines),w.labelOffset=le*(w.opposite?-1:1)):S(y,function(ve,Ce){ve.destroy(),delete y[Ce]}),vt!=null&&vt.text&&vt.enabled!==!1&&(w.addTitle(wt),wt&&!At&&vt.reserveSpace!==!1&&(w.titleOffset=Dt=w.axisTitle.getBBox()[tt?"height":"width"],re=c(jt=vt.offset)?0:b(vt.margin,tt?5:10))),w.renderLine(),w.offset=Ct*b(nt.offset,$t[x]?$t[x]+(nt.margin||0):0),w.tickRotCorr=w.tickRotCorr||{x:0,y:0},he=x===0?-w.labelMetrics().h:x===2?w.tickRotCorr.y:0,Gt=Math.abs(le)+re,le&&(Gt-=he,Gt+=Ct*(tt?b(Ot.y,w.tickRotCorr.y+Ct*Ot.distance):b(Ot.x,Ct*Ot.distance))),w.axisTitleMargin=b(jt,Gt),w.getMaxLabelDimensions&&(w.maxLabelDimensions=w.getMaxLabelDimensions(y,F)),lt!=="colorAxis"&&Xt){let ve=this.tickSize("tick");$t[x]=Math.max($t[x],(w.axisTitleMargin||0)+Dt+Ct*w.offset,Gt,F&&F.length&&ve?ve[0]+Ct*w.offset:0);let Ce=!w.axisLine||nt.offset?0:w.axisLine.strokeWidth()/2;Xt[rt]=Math.max(Xt[rt],Ce)}k(this,"afterGetOffset")}getLinePath(w){let B=this.chart,tt=this.opposite,nt=this.offset,x=this.horiz,y=this.left+(tt?this.width:0)+nt,F=B.chartHeight-this.bottom-(tt?this.height:0)+nt;return tt&&(w*=-1),B.renderer.crispLine([["M",x?this.left:y,x?F:this.top],["L",x?B.chartWidth-this.right:y,x?F:B.chartHeight-this.bottom]],w)}renderLine(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))}getTitlePosition(w){let B=this.horiz,tt=this.left,nt=this.top,x=this.len,y=this.options.title,F=B?tt:nt,lt=this.opposite,rt=this.offset,gt=y.x,vt=y.y,Ot=this.chart.renderer.fontMetrics(w),At=w?Math.max(w.getBBox(!1,0).height-Ot.h-1,0):0,$t={low:F+(B?0:x),middle:F+x/2,high:F+(B?x:0)}[y.align],Xt=(B?nt+this.height:tt)+(B?1:-1)*(lt?-1:1)*(this.axisTitleMargin||0)+[-At,At,Ot.f,-At][this.side],Ct={x:B?$t+gt:Xt+(lt?this.width:0)+rt+gt,y:B?Xt+vt-(lt?this.height:0)+rt:$t+vt};return k(this,"afterGetTitlePosition",{titlePosition:Ct}),Ct}renderMinorTick(w,B){let tt=this.minorTicks;tt[w]||(tt[w]=new q(this,w,"minor")),B&&tt[w].isNew&&tt[w].render(null,!0),tt[w].render(null,!1,1)}renderTick(w,B,tt){let nt=this.isLinked,x=this.ticks;(!nt||w>=this.min&&w<=this.max||this.grid&&this.grid.isColumn)&&(x[w]||(x[w]=new q(this,w)),tt&&x[w].isNew&&x[w].render(B,!0,-1),x[w].render(B))}render(){let w,B,tt=this,nt=tt.chart,x=tt.logarithmic,y=nt.renderer,F=tt.options,lt=tt.isLinked,rt=tt.tickPositions,gt=tt.axisTitle,vt=tt.ticks,Ot=tt.minorTicks,At=tt.alternateBands,$t=F.stackLabels,Xt=F.alternateGridColor,Ct=F.crossing,wt=tt.tickmarkOffset,Dt=tt.axisLine,jt=tt.showAxis,re=Y(y.globalAnimation);if(tt.labelEdge.length=0,tt.overlap=!1,[vt,Ot,At].forEach(function(le){S(le,function(Gt){Gt.isActive=!1})}),l(Ct)){let le=this.isXAxis?nt.yAxis[0]:nt.xAxis[0],Gt=[1,-1,-1,1][this.side];if(le){let he=le.toPixels(Ct,!0);tt.horiz&&(he=le.len-he),tt.offset=Gt*he}}if(tt.hasData()||lt){let le=tt.chart.hasRendered&&tt.old&&l(tt.old.min);tt.minorTickInterval&&!tt.categories&&tt.getMinorTickPositions().forEach(function(Gt){tt.renderMinorTick(Gt,le)}),rt.length&&(rt.forEach(function(Gt,he){tt.renderTick(Gt,he,le)}),wt&&(tt.min===0||tt.single)&&(vt[-1]||(vt[-1]=new q(tt,-1,null,!0)),vt[-1].render(-1))),Xt&&rt.forEach(function(Gt,he){B=rt[he+1]!==void 0?rt[he+1]+wt:tt.max-wt,he%2==0&&Gt=.5)N=Math.round(N),z=M.getLinearTickPositions(N,U,T);else if(N>=.08){let c,D,it,Q,W,k,_,C=Math.floor(U);for(c=N>.3?[1,2,4]:N>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9],D=C;DU&&(!A||k<=T)&&k!==void 0&&z.push(k),k>T&&(_=!0),k=W}else{let c=this.lin2log(U),D=this.lin2log(T),it=A?M.getMinorTickInterval():H.tickInterval,Q=H.tickPixelInterval/(A?5:1),W=A?O/M.tickPositions.length:O;N=$(N=J(it==="auto"?null:it,this.minorAutoInterval,(D-c)*Q/(W||1))),z=M.getLinearTickPositions(N,c,D).map(this.log2lin),A||(this.minorAutoInterval=N/5)}return A||(M.tickInterval=N),z}lin2log(N){return Math.pow(10,N)}log2lin(N){return Math.log(N)/Math.LN10}}X.Additions=Y}(R||(R={})),R}),g(d,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[d["Core/Utilities.js"]],function(L){var R;let{erase:st,extend:$,isNumber:J}=L;return function(X){let q;function Z(M){return this.addPlotBandOrLine(M,"plotBands")}function Y(M,O){let H=this.userOptions,z=new q(this,M);if(this.visible&&(z=z.render()),z){if(this._addedPlotLB||(this._addedPlotLB=!0,(H.plotLines||[]).concat(H.plotBands||[]).forEach(c=>{this.addPlotBandOrLine(c)})),O){let c=H[O]||[];c.push(M),H[O]=c}this.plotLinesAndBands.push(z)}return z}function V(M){return this.addPlotBandOrLine(M,"plotLines")}function N(M,O,H){H=H||this.options;let z=this.getPlotLinePath({value:O,force:!0,acrossPanes:H.acrossPanes}),c=[],D=this.horiz,it=!J(this.min)||!J(this.max)||Mthis.max&&O>this.max,Q=this.getPlotLinePath({value:M,force:!0,acrossPanes:H.acrossPanes}),W,k=1,_;if(Q&&z)for(it&&(_=Q.toString()===z.toString(),k=0),W=0;W{var z;let H=[];for(let c of this.axes)for(let{label:D,options:it}of c.plotLinesAndBands)D&&!((z=it==null?void 0:it.label)!=null&&z.allowOverlap)&&H.push(D);return H})}),L.compose(T,O)}constructor(M,O){this.axis=M,this.options=O,this.id=O.id}render(){var pt,bt,Mt;Y(this,"render");let{axis:M,options:O}=this,{horiz:H,logarithmic:z}=M,{color:c,events:D,zIndex:it=0}=O,Q={},W=M.chart.renderer,k=O.to,_=O.from,C=O.value,h=O.borderWidth,l=O.label,{label:u,svgElem:v}=this,I=[],S,b=X(_)&&X(k),K=X(C),ct=!v,et={class:"highcharts-plot-"+(b?"band ":"line ")+(O.className||"")},dt=b?"bands":"lines";if(!M.chart.styledMode&&(K?(et.stroke=c||"#999999",et["stroke-width"]=U(O.width,1),O.dashStyle&&(et.dashstyle=O.dashStyle)):b&&(et.fill=c||"#e6e9ff",h&&(et.stroke=O.borderColor,et["stroke-width"]=h))),Q.zIndex=it,dt+="-"+it,(S=M.plotLinesAndBandsGroups[dt])||(M.plotLinesAndBandsGroups[dt]=S=W.g("plot-"+dt).attr(Q).add()),v||(this.svgElem=v=W.path().attr(et).add(S)),X(C))I=M.getPlotLinePath({value:(pt=z==null?void 0:z.log2lin(C))!=null?pt:C,lineWidth:v.strokeWidth(),acrossPanes:O.acrossPanes});else{if(!(X(_)&&X(k)))return;I=M.getPlotBandPath((bt=z==null?void 0:z.log2lin(_))!=null?bt:_,(Mt=z==null?void 0:z.log2lin(k))!=null?Mt:k,O)}return!this.eventsAdded&&D&&(N(D,(w,B)=>{v==null||v.on(B,tt=>{D[B].apply(this,[tt])})}),this.eventsAdded=!0),(ct||!v.d)&&(I!=null&&I.length)?v.attr({d:I}):v&&(I?(v.show(),v.animate({d:I})):v.d&&(v.hide(),u&&(this.label=u=u.destroy()))),l&&(X(l.text)||X(l.formatter))&&(I!=null&&I.length)&&M.width>0&&M.height>0&&!I.isFlat?(l=V(xr({align:H&&b?"center":void 0,x:H?!b&&4:10,verticalAlign:!H&&b?"middle":void 0,y:H?b?16:10:b?6:-4,rotation:H&&!b?90:0},b?{inside:!0}:{}),l),this.renderLabel(l,I,b,it)):u&&u.hide(),this}renderLabel(M,O,H,z){var l;let c=this.axis,D=c.chart.renderer,it=M.inside,Q=this.label;Q||(this.label=Q=D.text(this.getLabelText(M),0,0,M.useHTML).attr({align:M.textAlign||M.align,rotation:M.rotation,class:"highcharts-plot-"+(H?"band":"line")+"-label "+(M.className||""),zIndex:z}),c.chart.styledMode||Q.css(V({fontSize:"0.8em",textOverflow:H&&!it?"":"ellipsis"},M.style)),Q.add());let W=O.xBounds||[O[0][1],O[1][1],H?O[2][1]:O[0][1]],k=O.yBounds||[O[0][2],O[1][2],H?O[2][2]:O[0][2]],_=J(W),C=J(k),h=$(W)-_;Q.align(M,!1,{x:_,y:C,width:h,height:$(k)-C}),(!Q.alignValue||Q.alignValue==="left"||X(it))&&Q.css({width:(((l=M.style)==null?void 0:l.width)||(H&&it?h:Q.rotation===90?c.height-(Q.alignAttr.y-c.top):(M.clip?c.width:c.chart.chartWidth)-(Q.alignAttr.x-c.left)))+"px"}),Q.show(!0)}getLabelText(M){return X(M.formatter)?M.formatter.call(this):M.text}destroy(){Z(this.axis.plotLinesAndBands,this),delete this.axis,q(this)}}return T}),g(d,"Core/Tooltip.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){var q;let{animObject:Z}=L,{format:Y}=R,{composed:V,doc:N,isSafari:U}=st,{distribute:T}=$,{addEvent:A,clamp:M,css:O,discardElement:H,extend:z,fireEvent:c,isArray:D,isNumber:it,isString:Q,merge:W,pick:k,pushUnique:_,splat:C,syncTimeout:h}=X;class l{constructor(v,I,S){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.options={},this.outside=!1,this.chart=v,this.init(v,I),this.pointer=S}bodyFormatter(v){return v.map(function(I){let S=I.series.tooltipOptions;return(S[(I.point.formatPrefix||"point")+"Formatter"]||I.point.tooltipFormatter).call(I.point,S[(I.point.formatPrefix||"point")+"Format"]||"")})}cleanSplit(v){this.chart.series.forEach(function(I){let S=I&&I.tt;S&&(!S.isActive||v?I.tt=S.destroy():S.isActive=!1)})}defaultFormatter(v){let I,S=this.points||C(this);return(I=(I=[v.tooltipFooterHeaderFormatter(S[0])]).concat(v.bodyFormatter(S))).push(v.tooltipFooterHeaderFormatter(S[0],!0)),I}destroy(){this.label&&(this.label=this.label.destroy()),this.split&&(this.cleanSplit(!0),this.tt&&(this.tt=this.tt.destroy())),this.renderer&&(this.renderer=this.renderer.destroy(),H(this.container)),X.clearTimeout(this.hideTimer)}getAnchor(v,I){let S,{chart:b,pointer:K}=this,ct=b.inverted,et=b.plotTop,dt=b.plotLeft;if((v=C(v))[0].series&&v[0].series.yAxis&&!v[0].series.yAxis.options.reversedStacks&&(v=v.slice().reverse()),this.followPointer&&I)I.chartX===void 0&&(I=K.normalize(I)),S=[I.chartX-dt,I.chartY-et];else if(v[0].tooltipPos)S=v[0].tooltipPos;else{let pt=0,bt=0;v.forEach(function(Mt){let w=Mt.pos(!0);w&&(pt+=w[0],bt+=w[1])}),pt/=v.length,bt/=v.length,this.shared&&v.length>1&&I&&(ct?pt=I.chartX:bt=I.chartY),S=[pt-dt,bt-et]}return S.map(Math.round)}getClassName(v,I,S){let b=this.options,K=v.series,ct=K.options;return[b.className,"highcharts-label",S&&"highcharts-tooltip-header",I?"highcharts-tooltip-box":"highcharts-tooltip",!S&&"highcharts-color-"+k(v.colorIndex,K.colorIndex),ct&&ct.className].filter(Q).join(" ")}getLabel({anchorX:v,anchorY:I}={anchorX:0,anchorY:0}){let S=this,b=this.chart.styledMode,K=this.options,ct=this.split&&this.allowShared,et=this.container,dt=this.chart.renderer;if(this.label){let pt=!this.label.hasClass("highcharts-label");(!ct&&pt||ct&&!pt)&&this.destroy()}if(!this.label){if(this.outside){let pt=this.chart.options.chart.style,bt=J.getRendererType();this.container=et=st.doc.createElement("div"),et.className="highcharts-tooltip-container",O(et,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(pt&&pt.zIndex||0)+3)}),this.renderer=dt=new bt(et,0,0,pt,void 0,void 0,dt.styledMode)}if(ct?this.label=dt.g("tooltip"):(this.label=dt.label("",v,I,K.shape,void 0,void 0,K.useHTML,void 0,"tooltip").attr({padding:K.padding,r:K.borderRadius}),b||this.label.attr({fill:K.backgroundColor,"stroke-width":K.borderWidth||0}).css(K.style).css({pointerEvents:K.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),S.outside){let pt=this.label;[pt.xSetter,pt.ySetter].forEach((bt,Mt)=>{pt[Mt?"ySetter":"xSetter"]=w=>{bt.call(pt,S.distance),pt[Mt?"y":"x"]=w,et&&(et.style[Mt?"top":"left"]=`${w}px`)}})}this.label.attr({zIndex:8}).shadow(K.shadow).add()}return et&&!et.parentElement&&st.doc.body.appendChild(et),this.label}getPlayingField(){let{body:v,documentElement:I}=N,{chart:S,distance:b,outside:K}=this;return{width:K?Math.max(v.scrollWidth,I.scrollWidth,v.offsetWidth,I.offsetWidth,I.clientWidth)-2*b:S.chartWidth,height:K?Math.max(v.scrollHeight,I.scrollHeight,v.offsetHeight,I.offsetHeight,I.clientHeight):S.chartHeight}}getPosition(v,I,S){var re,le;let{distance:b,chart:K,outside:ct,pointer:et}=this,{inverted:dt,plotLeft:pt,plotTop:bt,polar:Mt}=K,{plotX:w=0,plotY:B=0}=S,tt={},nt=dt&&S.h||0,{height:x,width:y}=this.getPlayingField(),F=et.getChartPosition(),lt=Gt=>Gt*F.scaleX,rt=Gt=>Gt*F.scaleY,gt=Gt=>{let he=Gt==="x";return[Gt,he?y:x,he?v:I].concat(ct?[he?lt(v):rt(I),he?F.left-b+lt(w+pt):F.top-b+rt(B+bt),0,he?y:x]:[he?v:I,he?w+pt:B+bt,he?pt:bt,he?pt+K.plotWidth:bt+K.plotHeight])},vt=gt("y"),Ot=gt("x"),At,$t=!!S.negative;!Mt&&((le=(re=K.hoverSeries)==null?void 0:re.yAxis)!=null&&le.reversed)&&($t=!$t);let Xt=!this.followPointer&&k(S.ttBelow,!Mt&&!dt===$t),Ct=function(Gt,he,ve,Ce,Te,Ke,rn){let un=ct?Gt==="y"?rt(b):lt(b):b,Qt=(ve-Ce)/2,Kt=Cehe?Rt:Rt+nt)}},wt=function(Gt,he,ve,Ce,Te){if(Tehe-b)return!1;Tehe-Ce/2?tt[Gt]=he-Ce-2:tt[Gt]=Te-ve/2},Dt=function(Gt){[vt,Ot]=[Ot,vt],At=Gt},jt=()=>{Ct.apply(0,vt)!==!1?wt.apply(0,Ot)!==!1||At||(Dt(!0),jt()):At?tt.x=tt.y=0:(Dt(!0),jt())};return(dt&&!Mt||this.len>1)&&Dt(),jt(),tt}hide(v){let I=this;X.clearTimeout(this.hideTimer),v=k(v,this.options.hideDelay),this.isHidden||(this.hideTimer=h(function(){let S=I.getLabel();I.getLabel().animate({opacity:0},{duration:v&&150,complete:()=>{S.hide(),I.container&&I.container.remove()}}),I.isHidden=!0},v))}init(v,I){this.chart=v,this.options=I,this.crosshairs=[],this.isHidden=!0,this.split=I.split&&!v.inverted&&!v.polar,this.shared=I.shared||this.split,this.outside=k(I.outside,!!(v.scrollablePixelsX||v.scrollablePixelsY))}shouldStickOnContact(v){return!!(!this.followPointer&&this.options.stickOnContact&&(!v||this.pointer.inClass(v.target,"highcharts-tooltip")))}move(v,I,S,b){let K=this,ct=Z(!K.isHidden&&K.options.animation),et=K.followPointer||(K.len||0)>1,dt={x:v,y:I};et||(dt.anchorX=S,dt.anchorY=b),ct.step=()=>K.drawTracker(),K.getLabel().animate(dt,ct)}refresh(v,I){let{chart:S,options:b,pointer:K,shared:ct}=this,et=C(v),dt=et[0],pt=[],bt=b.format,Mt=b.formatter||this.defaultFormatter,w=S.styledMode,B={},tt=this.allowShared;if(!b.enabled||!dt.series)return;X.clearTimeout(this.hideTimer),this.allowShared=!(!D(v)&&v.series&&v.series.noSharedTooltip),tt=tt&&!this.allowShared,this.followPointer=!this.split&&dt.series.tooltipOptions.followPointer;let nt=this.getAnchor(v,I),x=nt[0],y=nt[1];ct&&this.allowShared?(K.applyInactiveState(et),et.forEach(function(rt){rt.setState("hover"),pt.push(rt.getLabelConfig())}),(B=dt.getLabelConfig()).points=pt):B=dt.getLabelConfig(),this.len=pt.length;let F=Q(bt)?Y(bt,B,S):Mt.call(B,this),lt=dt.series;if(this.distance=k(lt.tooltipOptions.distance,16),F===!1)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(F,et);else{let rt=x,gt=y;if(I&&K.isDirectTouch&&(rt=I.chartX-S.plotLeft,gt=I.chartY-S.plotTop),S.polar||lt.options.clip===!1||et.some(vt=>K.isDirectTouch||vt.series.shouldShowTooltip(rt,gt))){let vt=this.getLabel(tt&&this.tt||{});(!b.style.width||w)&&vt.css({width:(this.outside?this.getPlayingField():S.spacingBox).width+"px"}),vt.attr({class:this.getClassName(dt),text:F&&F.join?F.join(""):F}),this.outside&&vt.attr({x:M(vt.x||0,0,this.getPlayingField().width-(vt.width||0))}),w||vt.attr({stroke:b.borderColor||dt.color||lt.color||"#666666"}),this.updatePosition({plotX:x,plotY:y,negative:dt.negative,ttBelow:dt.ttBelow,h:nt[2]||0})}else{this.hide();return}}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}c(this,"refresh")}renderSplit(v,I){var he;let S=this,{chart:b,chart:{chartWidth:K,chartHeight:ct,plotHeight:et,plotLeft:dt,plotTop:pt,scrollablePixelsY:bt=0,scrollablePixelsX:Mt,styledMode:w},distance:B,options:tt,options:{positioner:nt},pointer:x}=S,{scrollLeft:y=0,scrollTop:F=0}=((he=b.scrollablePlotArea)==null?void 0:he.scrollingContainer)||{},lt=S.outside&&typeof Mt!="number"?N.documentElement.getBoundingClientRect():{left:y,right:y+K,top:F,bottom:F+ct},rt=S.getLabel(),gt=this.renderer||b.renderer,vt=!!(b.xAxis[0]&&b.xAxis[0].opposite),{left:Ot,top:At}=x.getChartPosition(),$t=pt+F,Xt=0,Ct=et-bt;function wt(ve,Ce,Te,Ke,rn=!0){let un,Qt;return Te?(un=vt?0:Ct,Qt=M(ve-Ke/2,lt.left,lt.right-Ke-(S.outside?Ot:0))):(un=Ce-$t,Qt=M(Qt=rn?ve-Ke-B:ve+B,rn?Qt:lt.left,lt.right)),{x:Qt,y:un}}Q(v)&&(v=[!1,v]);let Dt=v.slice(0,I.length+1).reduce(function(ve,Ce,Te){if(Ce!==!1&&Ce!==""){let Ke=I[Te-1]||{isHeader:!0,plotX:I[0].plotX,plotY:et,series:{}},rn=Ke.isHeader,un=rn?S:Ke.series,Qt=un.tt=function(zt,Ft,ce){var pn;let Se=zt,{isHeader:xe,series:Ze}=Ft;if(!Se){let bn={padding:tt.padding,r:tt.borderRadius};w||(bn.fill=tt.backgroundColor,bn["stroke-width"]=(pn=tt.borderWidth)!=null?pn:1),Se=gt.label("",0,0,tt[xe?"headerShape":"shape"],void 0,void 0,tt.useHTML).addClass(S.getClassName(Ft,!0,xe)).attr(bn).add(rt)}return Se.isActive=!0,Se.attr({text:ce}),w||Se.css(tt.style).attr({stroke:tt.borderColor||Ft.color||Ze.color||"#333333"}),Se}(un.tt,Ke,Ce.toString()),Kt=Qt.getBBox(),Jt=Kt.width+Qt.strokeWidth();rn&&(Xt=Kt.height,Ct+=Xt,vt&&($t-=Xt));let{anchorX:Et,anchorY:Rt}=function(zt){let Ft,ce,{isHeader:Se,plotX:xe=0,plotY:Ze=0,series:pn}=zt;if(Se)Ft=Math.max(dt+xe,dt),ce=pt+et/2;else{let{xAxis:bn,yAxis:Ln}=pn;Ft=bn.pos+M(xe,-B,bn.len+B),pn.shouldShowTooltip(0,Ln.pos-pt+Ze,{ignoreX:!0})&&(ce=Ln.pos+Ze)}return{anchorX:Ft=M(Ft,lt.left-B,lt.right+B),anchorY:ce}}(Ke);if(typeof Rt=="number"){let zt=Kt.height+1,Ft=nt?nt.call(S,Jt,zt,Ke):wt(Et,Rt,rn,Jt);ve.push({align:nt?0:void 0,anchorX:Et,anchorY:Rt,boxWidth:Jt,point:Ke,rank:k(Ft.rank,rn?1:0),size:zt,target:Ft.y,tt:Qt,x:Ft.x})}else Qt.isActive=!1}return ve},[]);!nt&&Dt.some(ve=>{let{outside:Ce}=S,Te=(Ce?Ot:0)+ve.anchorX;return TeTe})&&(Dt=Dt.map(ve=>{let{x:Ce,y:Te}=wt(ve.anchorX,ve.anchorY,ve.point.isHeader,ve.boxWidth,!1);return z(ve,{target:Te,x:Ce})})),S.cleanSplit(),T(Dt,Ct);let jt={left:Ot,right:Ot};Dt.forEach(function(ve){let{x:Ce,boxWidth:Te,isHeader:Ke}=ve;!Ke&&(S.outside&&Ot+Cejt.right&&(jt.right=Ot+Ce))}),Dt.forEach(function(ve){let{x:Ce,anchorX:Te,anchorY:Ke,pos:rn,point:{isHeader:un}}=ve,Qt={visibility:rn===void 0?"hidden":"inherit",x:Ce,y:(rn||0)+$t,anchorX:Te,anchorY:Ke};if(S.outside&&Ce0&&(un||(Qt.x=Ce+Kt,Qt.anchorX=Te+Kt),un&&(Qt.x=(jt.right-jt.left)/2,Qt.anchorX=Te+Kt))}ve.tt.attr(Qt)});let{container:re,outside:le,renderer:Gt}=S;if(le&&re&&Gt){let{width:ve,height:Ce,x:Te,y:Ke}=rt.getBBox();Gt.setSize(ve+Te,Ce+Ke,!1),re.style.left=jt.left+"px",re.style.top=At+"px"}U&&rt.attr({opacity:rt.opacity===1?.999:1})}drawTracker(){if(!this.shouldStickOnContact()){this.tracker&&(this.tracker=this.tracker.destroy());return}let v=this.chart,I=this.label,S=this.shared?v.hoverPoints:v.hoverPoint;if(!I||!S)return;let b={x:0,y:0,width:0,height:0},K=this.getAnchor(S),ct=I.getBBox();K[0]+=v.plotLeft-(I.translateX||0),K[1]+=v.plotTop-(I.translateY||0),b.x=Math.min(0,K[0]),b.y=Math.min(0,K[1]),b.width=K[0]<0?Math.max(Math.abs(K[0]),ct.width-K[0]):Math.max(Math.abs(K[0]),ct.width),b.height=K[1]<0?Math.max(Math.abs(K[1]),ct.height-Math.abs(K[1])):Math.max(Math.abs(K[1]),ct.height),this.tracker?this.tracker.attr(b):(this.tracker=I.renderer.rect(b).addClass("highcharts-tracker").add(I),v.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(v){return v.replace('style="font-size: 0.8em"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')}tooltipFooterHeaderFormatter(v,I){let S=v.series,b=S.tooltipOptions,K=S.xAxis,ct=K&&K.dateTime,et={isFooter:I,labelConfig:v},dt=b.xDateFormat,pt=b[I?"footerFormat":"headerFormat"];return c(this,"headerFormatter",et,function(bt){ct&&!dt&&it(v.key)&&(dt=ct.getXDateFormat(v.key,b.dateTimeLabelFormats)),ct&&dt&&(v.point&&v.point.tooltipDateKeys||["key"]).forEach(function(Mt){pt=pt.replace("{point."+Mt+"}","{point."+Mt+":"+dt+"}")}),S.chart.styledMode&&(pt=this.styledModeFormat(pt)),bt.text=Y(pt,{point:v,series:S},this.chart)}),et.text}update(v){this.destroy(),this.init(this.chart,W(!0,this.options,v))}updatePosition(v){let{chart:I,container:S,distance:b,options:K,pointer:ct,renderer:et}=this,{height:dt=0,width:pt=0}=this.getLabel(),{left:bt,top:Mt,scaleX:w,scaleY:B}=ct.getChartPosition(),tt=(K.positioner||this.getPosition).call(this,pt,dt,v),nt=(v.plotX||0)+I.plotLeft,x=(v.plotY||0)+I.plotTop,y;et&&S&&(K.positioner&&(tt.x+=bt-b,tt.y+=Mt-b),y=(K.borderWidth||0)+2*b+2,et.setSize(pt+y,dt+y,!1),(w!==1||B!==1)&&(O(S,{transform:`scale(${w}, ${B})`}),nt*=w,x*=B),nt+=bt-tt.x,x+=Mt-tt.y),this.move(Math.round(tt.x),Math.round(tt.y||0),nt,x)}}return(q=l||(l={})).compose=function(u){_(V,"Core.Tooltip")&&A(u,"afterInit",function(){let v=this.chart;v.options.tooltip&&(v.tooltip=new q(v,v.options.tooltip,this))})},l}),g(d,"Core/Series/Point.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{animObject:X}=R,{defaultOptions:q}=st,{format:Z}=$,{addEvent:Y,crisp:V,erase:N,extend:U,fireEvent:T,getNestedProperty:A,isArray:M,isFunction:O,isNumber:H,isObject:z,merge:c,pick:D,syncTimeout:it,removeEvent:Q,uniqueKey:W}=J;class k{animateBeforeDestroy(){let C=this,h={x:C.startXPos,opacity:0},l=C.getGraphicalProps();l.singular.forEach(function(u){C[u]=C[u].animate(u==="dataLabel"?{x:C[u].startXPos,y:C[u].startYPos,opacity:0}:h)}),l.plural.forEach(function(u){C[u].forEach(function(v){v.element&&v.animate(U({x:C.startXPos},v.startYPos?{x:v.startXPos,y:v.startYPos}:{}))})})}applyOptions(C,h){let l=this.series,u=l.options.pointValKey||l.pointValKey;return U(this,C=k.prototype.optionsToObject.call(this,C)),this.options=this.options?U(this.options,C):C,C.group&&delete this.group,C.dataLabels&&delete this.dataLabels,u&&(this.y=k.prototype.getNestedProperty.call(this,u)),this.selected&&(this.state="select"),"name"in this&&h===void 0&&l.xAxis&&l.xAxis.hasNames&&(this.x=l.xAxis.nameToX(this)),this.x===void 0&&l?this.x=h!=null?h:l.autoIncrement():H(C.x)&&l.options.relativeXValue&&(this.x=l.autoIncrement(C.x)),this.isNull=this.isValid&&!this.isValid(),this.formatPrefix=this.isNull?"null":"point",this}destroy(){if(!this.destroyed){let C=this,h=C.series,l=h.chart,u=h.options.dataSorting,v=l.hoverPoints,I=X(C.series.chart.renderer.globalAnimation),S=()=>{for(let b in(C.graphic||C.graphics||C.dataLabel||C.dataLabels)&&(Q(C),C.destroyElements()),C)delete C[b]};C.legendItem&&l.legend.destroyItem(C),v&&(C.setState(),N(v,C),v.length||(l.hoverPoints=null)),C===l.hoverPoint&&C.onMouseOut(),u&&u.enabled?(this.animateBeforeDestroy(),it(S,I.duration)):S(),l.pointCount--}this.destroyed=!0}destroyElements(C){let h=this,l=h.getGraphicalProps(C);l.singular.forEach(function(u){h[u]=h[u].destroy()}),l.plural.forEach(function(u){h[u].forEach(function(v){v&&v.element&&v.destroy()}),delete h[u]})}firePointEvent(C,h,l){let u=this,v=this.series.options;u.manageEvent(C),C==="click"&&v.allowPointSelect&&(l=function(I){!u.destroyed&&u.select&&u.select(null,I.ctrlKey||I.metaKey||I.shiftKey)}),T(u,C,h,l)}getClassName(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(this.colorIndex!==void 0?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(C){let h,l,u=this,v=[],I={singular:[],plural:[]};for((C=C||{graphic:1,dataLabel:1}).graphic&&v.push("graphic","connector"),C.dataLabel&&v.push("dataLabel","dataLabelPath","dataLabelUpper"),l=v.length;l--;)u[h=v[l]]&&I.singular.push(h);return["graphic","dataLabel"].forEach(function(S){let b=S+"s";C[S]&&u[b]&&I.plural.push(b)}),I}getLabelConfig(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}}getNestedProperty(C){return C?C.indexOf("custom.")===0?A(C,this.options):this[C]:void 0}getZone(){let C=this.series,h=C.zones,l=C.zoneAxis||"y",u,v=0;for(u=h[0];this[l]>=u.value;)u=h[++v];return this.nonZonedColor||(this.nonZonedColor=this.color),u&&u.color&&!this.options.color?this.color=u.color:this.color=this.nonZonedColor,u}hasNewShapeType(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType}constructor(C,h,l){var u;this.formatPrefix="point",this.visible=!0,this.series=C,this.applyOptions(h,l),(u=this.id)!=null||(this.id=W()),this.resolveColor(),C.chart.pointCount++,T(this,"afterInit")}isValid(){return(H(this.x)||this.x instanceof Date)&&H(this.y)}optionsToObject(C){let h=this.series,l=h.options.keys,u=l||h.pointArrayMap||["y"],v=u.length,I={},S,b=0,K=0;if(H(C)||C===null)I[u[0]]=C;else if(M(C))for(!l&&C.length>v&&((S=typeof C[0])=="string"?I.name=C[0]:S==="number"&&(I.x=C[0]),b++);K0?k.prototype.setNestedProperty(I,C[b],u[K]):I[u[K]]=C[b]),b++,K++;else typeof C=="object"&&(I=C,C.dataLabels&&(h.hasDataLabels=()=>!0),C.marker&&(h._hasPointMarkers=!0));return I}pos(C,h=this.plotY){if(!this.destroyed){let{plotX:l,series:u}=this,{chart:v,xAxis:I,yAxis:S}=u,b=0,K=0;if(H(l)&&H(h))return C&&(b=I?I.pos:v.plotLeft,K=S?S.pos:v.plotTop),v.inverted&&I&&S?[S.len-h+K,I.len-l+b]:[l+b,h+K]}}resolveColor(){let C=this.series,h=C.chart.options.chart,l=C.chart.styledMode,u,v,I=h.colorCount,S;delete this.nonZonedColor,C.options.colorByPoint?(l||(u=(v=C.options.colors||C.chart.options.colors)[C.colorCounter],I=v.length),S=C.colorCounter,C.colorCounter++,C.colorCounter===I&&(C.colorCounter=0)):(l||(u=C.color),S=C.colorIndex),this.colorIndex=D(this.options.colorIndex,S),this.color=D(this.options.color,u)}setNestedProperty(C,h,l){return l.split(".").reduce(function(u,v,I,S){let b=S.length-1===I;return u[v]=b?h:z(u[v],!0)?u[v]:{},u[v]},C),C}shouldDraw(){return!this.isNull}tooltipFormatter(C){let h=this.series,l=h.tooltipOptions,u=D(l.valueDecimals,""),v=l.valuePrefix||"",I=l.valueSuffix||"";return h.chart.styledMode&&(C=h.chart.tooltip.styledModeFormat(C)),(h.pointArrayMap||["y"]).forEach(function(S){S="{point."+S,(v||I)&&(C=C.replace(RegExp(S+"}","g"),v+S+"}"+I)),C=C.replace(RegExp(S+"}","g"),S+":,."+u+"f}")}),Z(C,{point:this,series:this.series},h.chart)}update(C,h,l,u){let v,I=this,S=I.series,b=I.graphic,K=S.chart,ct=S.options;function et(){I.applyOptions(C);let dt=b&&I.hasMockGraphic,pt=I.y===null?!dt:dt;b&&pt&&(I.graphic=b.destroy(),delete I.hasMockGraphic),z(C,!0)&&(b&&b.element&&C&&C.marker&&C.marker.symbol!==void 0&&(I.graphic=b.destroy()),C!=null&&C.dataLabels&&I.dataLabel&&(I.dataLabel=I.dataLabel.destroy())),v=I.index,S.updateParallelArrays(I,v),ct.data[v]=z(ct.data[v],!0)||z(C,!0)?I.options:D(C,ct.data[v]),S.isDirty=S.isDirtyData=!0,!S.fixedBox&&S.hasCartesianSeries&&(K.isDirtyBox=!0),ct.legendType==="point"&&(K.isDirtyLegend=!0),h&&K.redraw(l)}h=D(h,!0),u===!1?et():I.firePointEvent("update",{options:C},et)}remove(C,h){this.series.removePoint(this.series.data.indexOf(this),C,h)}select(C,h){let l=this,u=l.series,v=u.chart;C=D(C,!l.selected),this.selectedStaging=C,l.firePointEvent(C?"select":"unselect",{accumulate:h},function(){l.selected=l.options.selected=C,u.options.data[u.data.indexOf(l)]=l.options,l.setState(C&&"select"),h||v.getSelectedPoints().forEach(function(I){let S=I.series;I.selected&&I!==l&&(I.selected=I.options.selected=!1,S.options.data[S.data.indexOf(I)]=I.options,I.setState(v.hoverPoints&&S.options.inactiveOtherPoints?"inactive":""),I.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(C){let{inverted:h,pointer:l}=this.series.chart;l&&(C=C?l.normalize(C):l.getChartCoordinatesFromPoint(this,h),l.runPointActions(C,this))}onMouseOut(){let C=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(C.hoverPoints||[]).forEach(function(h){h.setState()}),C.hoverPoints=C.hoverPoint=null}manageEvent(C){var u,v,I,S,b,K;let h=c(this.series.options.point,this.options),l=(u=h.events)==null?void 0:u[C];O(l)&&(!((v=this.hcEvents)!=null&&v[C])||((S=(I=this.hcEvents)==null?void 0:I[C])==null?void 0:S.map(ct=>ct.fn).indexOf(l))===-1)?((b=this.importedUserEvent)==null||b.call(this),this.importedUserEvent=Y(this,C,l)):this.importedUserEvent&&!l&&((K=this.hcEvents)!=null&&K[C])&&(Q(this,C),delete this.hcEvents[C],Object.keys(this.hcEvents)||delete this.importedUserEvent)}setState(C,h){var F;let l=this.series,u=this.state,v=l.options.states[C||"normal"]||{},I=q.plotOptions[l.type].marker&&l.options.marker,S=I&&I.enabled===!1,b=I&&I.states&&I.states[C||"normal"]||{},K=b.enabled===!1,ct=this.marker||{},et=l.chart,dt=I&&l.markerAttribs,pt=l.halo,bt,Mt,w,B=l.stateMarkerGraphic,tt;if((C=C||"")===this.state&&!h||this.selected&&C!=="select"||v.enabled===!1||C&&(K||S&&b.enabled===!1)||C&&ct.states&&ct.states[C]&&ct.states[C].enabled===!1)return;if(this.state=C,dt&&(bt=l.markerAttribs(this,C)),this.graphic&&!this.hasMockGraphic){if(u&&this.graphic.removeClass("highcharts-point-"+u),C&&this.graphic.addClass("highcharts-point-"+C),!et.styledMode){Mt=l.pointAttribs(this,C),w=D(et.options.chart.animation,v.animation);let lt=Mt.opacity;l.options.inactiveOtherPoints&&H(lt)&&(this.dataLabels||[]).forEach(function(rt){rt&&!rt.hasClass("highcharts-data-label-hidden")&&(rt.animate({opacity:lt},w),rt.connector&&rt.connector.animate({opacity:lt},w))}),this.graphic.animate(Mt,w)}bt&&this.graphic.animate(bt,D(et.options.chart.animation,b.animation,I.animation)),B&&B.hide()}else C&&b&&(tt=ct.symbol||l.symbol,B&&B.currentSymbol!==tt&&(B=B.destroy()),bt&&(B?B[h?"animate":"attr"]({x:bt.x,y:bt.y}):tt&&(l.stateMarkerGraphic=B=et.renderer.symbol(tt,bt.x,bt.y,bt.width,bt.height).add(l.markerGroup),B.currentSymbol=tt)),!et.styledMode&&B&&this.state!=="inactive"&&B.attr(l.pointAttribs(this,C))),B&&(B[C&&this.isInside?"show":"hide"](),B.element.point=this,B.addClass(this.getClassName(),!0));let nt=v.halo,x=this.graphic||B,y=x&&x.visibility||"inherit";nt&&nt.size&&x&&y!=="hidden"&&!this.isCluster?(pt||(l.halo=pt=et.renderer.path().add(x.parentGroup)),pt.show()[h?"animate":"attr"]({d:this.haloPath(nt.size)}),pt.attr({class:"highcharts-halo highcharts-color-"+D(this.colorIndex,l.colorIndex)+(this.className?" "+this.className:""),visibility:y,zIndex:-1}),pt.point=this,et.styledMode||pt.attr(U({fill:this.color||l.color,"fill-opacity":nt.opacity},L.filterUserAttributes(nt.attributes||{})))):(F=pt==null?void 0:pt.point)!=null&&F.haloPath&&!pt.point.destroyed&&pt.animate({d:pt.point.haloPath(0)},null,pt.hide),T(this,"afterSetState",{state:C})}haloPath(C){let h=this.pos();return h?this.series.chart.renderer.symbols.circle(V(h[0],1)-C,h[1]-C,2*C,2*C):[]}}return k}),g(d,"Core/Pointer.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{parse:J}=L,{charts:X,composed:q,isTouchDevice:Z}=R,{addEvent:Y,attr:V,css:N,extend:U,find:T,fireEvent:A,isNumber:M,isObject:O,objectEach:H,offset:z,pick:c,pushUnique:D,splat:it}=st;class Q{applyInactiveState(k){let _=[],C;(k||[]).forEach(function(h){C=h.series,_.push(C),C.linkedParent&&_.push(C.linkedParent),C.linkedSeries&&(_=_.concat(C.linkedSeries)),C.navigatorSeries&&_.push(C.navigatorSeries)}),this.chart.series.forEach(function(h){_.indexOf(h)===-1?h.setState("inactive",!0):h.options.inactiveOtherPoints&&h.setAllPointsToState("inactive")})}destroy(){let k=this;this.eventsToUnbind.forEach(_=>_()),this.eventsToUnbind=[],!R.chartCount&&(Q.unbindDocumentMouseUp&&Q.unbindDocumentMouseUp.forEach(_=>_()),Q.unbindDocumentTouchEnd&&(Q.unbindDocumentTouchEnd=Q.unbindDocumentTouchEnd())),clearInterval(k.tooltipTimeout),H(k,function(_,C){k[C]=void 0})}getSelectionMarkerAttrs(k,_){let C={args:{chartX:k,chartY:_},attrs:{},shapeType:"rect"};return A(this,"getSelectionMarkerAttrs",C,h=>{let l,{chart:u,zoomHor:v,zoomVert:I}=this,{mouseDownX:S=0,mouseDownY:b=0}=u,K=h.attrs;K.x=u.plotLeft,K.y=u.plotTop,K.width=v?1:u.plotWidth,K.height=I?1:u.plotHeight,v&&(l=k-S,K.width=Math.max(1,Math.abs(l)),K.x=(l>0?0:l)+S),I&&(l=_-b,K.height=Math.max(1,Math.abs(l)),K.y=(l>0?0:l)+b)}),C}drag(k){let{chart:_}=this,{mouseDownX:C=0,mouseDownY:h=0}=_,{panning:l,panKey:u,selectionMarkerFill:v}=_.options.chart,I=_.plotLeft,S=_.plotTop,b=_.plotWidth,K=_.plotHeight,ct=O(l)?l.enabled:l,et=u&&k[`${u}Key`],dt=k.chartX,pt=k.chartY,bt,Mt=this.selectionMarker;if((!Mt||!Mt.touch)&&(dtI+b&&(dt=I+b),ptS+K&&(pt=S+K),this.hasDragged=Math.sqrt(Math.pow(C-dt,2)+Math.pow(h-pt,2)),this.hasDragged>10)){bt=_.isInsidePlot(C-I,h-S,{visiblePlotOnly:!0});let{shapeType:w,attrs:B}=this.getSelectionMarkerAttrs(dt,pt);(_.hasCartesianSeries||_.mapView)&&this.hasZoom&&bt&&!et&&!Mt&&(this.selectionMarker=Mt=_.renderer[w](),Mt.attr({class:"highcharts-selection-marker",zIndex:7}).add(),_.styledMode||Mt.attr({fill:v||J("#334eff").setOpacity(.25).get()})),Mt&&Mt.attr(B),bt&&!Mt&&ct&&_.pan(k,l)}}dragStart(k){let _=this.chart;_.mouseIsDown=k.type,_.cancelClick=!1,_.mouseDownX=k.chartX,_.mouseDownY=k.chartY}getSelectionBox(k){let _={args:{marker:k},result:k.getBBox()};return A(this,"getSelectionBox",_),_.result}drop(k){let _,{chart:C,selectionMarker:h}=this;for(let l of C.axes)l.isPanning&&(l.isPanning=!1,(l.options.startOnTick||l.options.endOnTick||l.series.some(u=>u.boosted))&&(l.forceRedraw=!0,l.setExtremes(l.userMin,l.userMax,!1),_=!0));if(_&&C.redraw(),h&&k){if(this.hasDragged){let l=this.getSelectionBox(h);C.transform({axes:C.axes.filter(u=>u.zoomEnabled&&(u.coll==="xAxis"&&this.zoomX||u.coll==="yAxis"&&this.zoomY)),selection:xr({originalEvent:k,xAxis:[],yAxis:[]},l),from:l})}M(C.index)&&(this.selectionMarker=h.destroy())}C&&M(C.index)&&(N(C.container,{cursor:C._cursor}),C.cancelClick=this.hasDragged>10,C.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(k,_,C){let h;return k.forEach(function(l){let u=!(l.noSharedTooltip&&_)&&0>l.options.findNearestPointBy.indexOf("y"),v=l.searchPoint(C,u);O(v,!0)&&v.series&&(!O(h,!0)||function(I,S){var et,dt;let b=I.distX-S.distX,K=I.dist-S.dist,ct=((et=S.series.group)==null?void 0:et.zIndex)-((dt=I.series.group)==null?void 0:dt.zIndex);return b!==0&&_?b:K!==0?K:ct!==0?ct:I.series.index>S.series.index?-1:1}(h,v)>0)&&(h=v)}),h}getChartCoordinatesFromPoint(k,_){var u,v;let{xAxis:C,yAxis:h}=k.series,l=k.shapeArgs;if(C&&h){let I=(v=(u=k.clientX)!=null?u:k.plotX)!=null?v:0,S=k.plotY||0;return k.isNode&&l&&M(l.x)&&M(l.y)&&(I=l.x,S=l.y),_?{chartX:h.len+h.pos-S,chartY:C.len+C.pos-I}:{chartX:I+C.pos,chartY:S+h.pos}}if(l&&l.x&&l.y)return{chartX:l.x,chartY:l.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:k}=this.chart,_=z(k);this.chartPosition={left:_.left,top:_.top,scaleX:1,scaleY:1};let{offsetHeight:C,offsetWidth:h}=k;return h>2&&C>2&&(this.chartPosition.scaleX=_.width/h,this.chartPosition.scaleY=_.height/C),this.chartPosition}getCoordinates(k){let _={xAxis:[],yAxis:[]};for(let C of this.chart.axes)_[C.isXAxis?"xAxis":"yAxis"].push({axis:C,value:C.toValue(k[C.horiz?"chartX":"chartY"])});return _}getHoverData(k,_,C,h,l,u){let v=[],I=function(et){return et.visible&&!(!l&&et.directTouch)&&c(et.options.enableMouseTracking,!0)},S=_,b,K={chartX:u?u.chartX:void 0,chartY:u?u.chartY:void 0,shared:l};A(this,"beforeGetHoverData",K),b=S&&!S.stickyTracking?[S]:C.filter(et=>et.stickyTracking&&(K.filter||I)(et));let ct=h&&k||!u?k:this.findNearestKDPoint(b,l,u);return S=ct&&ct.series,ct&&(l&&!S.noSharedTooltip?(b=C.filter(function(et){return K.filter?K.filter(et):I(et)&&!et.noSharedTooltip})).forEach(function(et){let dt=T(et.points,function(pt){return pt.x===ct.x&&!pt.isNull});O(dt)&&(et.boosted&&et.boost&&(dt=et.boost.getPoint(dt)),v.push(dt))}):v.push(ct)),A(this,"afterGetHoverData",K={hoverPoint:ct}),{hoverPoint:K.hoverPoint,hoverSeries:S,hoverPoints:v}}getPointFromEvent(k){let _=k.target,C;for(;_&&!C;)C=_.point,_=_.parentNode;return C}onTrackerMouseOut(k){let _=this.chart,C=k.relatedTarget,h=_.hoverSeries;this.isDirectTouch=!1,!h||!C||h.stickyTracking||this.inClass(C,"highcharts-tooltip")||this.inClass(C,"highcharts-series-"+h.index)&&this.inClass(C,"highcharts-tracker")||h.onMouseOut()}inClass(k,_){let C=k,h;for(;C;){if(h=V(C,"class")){if(h.indexOf(_)!==-1)return!0;if(h.indexOf("highcharts-container")!==-1)return!1}C=C.parentElement}}constructor(k,_){var C;this.hasDragged=0,this.pointerCaptureEventsToUnbind=[],this.eventsToUnbind=[],this.options=_,this.chart=k,this.runChartClick=!!((C=_.chart.events)!=null&&C.click),this.pinchDown=[],this.setDOMEvents(),A(this,"afterInit")}normalize(k,_){let C=k.touches,h=C?C.length?C.item(0):c(C.changedTouches,k.changedTouches)[0]:k;_||(_=this.getChartPosition());let l=h.pageX-_.left,u=h.pageY-_.top;return U(k,{chartX:Math.round(l/=_.scaleX),chartY:Math.round(u/=_.scaleY)})}onContainerClick(k){let _=this.chart,C=_.hoverPoint,h=this.normalize(k),l=_.plotLeft,u=_.plotTop;!_.cancelClick&&(C&&this.inClass(h.target,"highcharts-tracker")?(A(C.series,"click",U(h,{point:C})),_.hoverPoint&&C.firePointEvent("click",h)):(U(h,this.getCoordinates(h)),_.isInsidePlot(h.chartX-l,h.chartY-u,{visiblePlotOnly:!0})&&A(_,"click",h)))}onContainerMouseDown(k){var C;let _=(1&(k.buttons||k.button))==1;k=this.normalize(k),R.isFirefox&&k.button!==0&&this.onContainerMouseMove(k),(k.button===void 0||_)&&(this.zoomOption(k),_&&((C=k.preventDefault)==null||C.call(k)),this.dragStart(k))}onContainerMouseLeave(k){let{pointer:_}=X[c(Q.hoverChartIndex,-1)]||{};k=this.normalize(k),this.onContainerMouseMove(k),_&&!this.inClass(k.relatedTarget,"highcharts-tooltip")&&(_.reset(),_.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(k){let _=this.chart,C=_.tooltip,h=this.normalize(k);this.setHoverChartIndex(k),(_.mouseIsDown==="mousedown"||this.touchSelect(h))&&this.drag(h),!_.openMenu&&(this.inClass(h.target,"highcharts-tracker")||_.isInsidePlot(h.chartX-_.plotLeft,h.chartY-_.plotTop,{visiblePlotOnly:!0}))&&!(C&&C.shouldStickOnContact(h))&&(this.inClass(h.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(h))}onDocumentTouchEnd(k){this.onDocumentMouseUp(k)}onContainerTouchMove(k){this.touchSelect(k)?this.onContainerMouseMove(k):this.touch(k)}onContainerTouchStart(k){this.touchSelect(k)?this.onContainerMouseDown(k):(this.zoomOption(k),this.touch(k,!0))}onDocumentMouseMove(k){let _=this.chart,C=_.tooltip,h=this.chartPosition,l=this.normalize(k,h);!h||_.isInsidePlot(l.chartX-_.plotLeft,l.chartY-_.plotTop,{visiblePlotOnly:!0})||C&&C.shouldStickOnContact(l)||l.target!==_.container.ownerDocument&&this.inClass(l.target,"highcharts-tracker")||this.reset()}onDocumentMouseUp(k){var _,C;(C=(_=X[c(Q.hoverChartIndex,-1)])==null?void 0:_.pointer)==null||C.drop(k)}pinch(k){let _=this,{chart:C,hasZoom:h,lastTouches:l}=_,u=[].map.call(k.touches||[],K=>_.normalize(K)),v=u.length,I=v===1&&(_.inClass(k.target,"highcharts-tracker")&&C.runTrackerClick||_.runChartClick),S=C.tooltip,b=v===1&&c(S==null?void 0:S.options.followTouchMove,!0);v>1?_.initiated=!0:b&&(_.initiated=!1),h&&_.initiated&&!I&&k.cancelable!==!1&&k.preventDefault(),k.type==="touchstart"?(_.pinchDown=u,_.res=!0,C.mouseDownX=k.chartX):b?this.runPointActions(_.normalize(k)):l&&(A(C,"touchpan",{originalEvent:k,touches:u},()=>{let K=ct=>{let et=ct[0],dt=ct[1]||et;return{x:et.chartX,y:et.chartY,width:dt.chartX-et.chartX,height:dt.chartY-et.chartY}};C.transform({axes:C.axes.filter(ct=>ct.zoomEnabled&&(this.zoomHor&&ct.horiz||this.zoomVert&&!ct.horiz)),to:K(u),from:K(l),trigger:k.type})}),_.res&&(_.res=!1,this.reset(!1,0))),_.lastTouches=u}reset(k,_){let C=this.chart,h=C.hoverSeries,l=C.hoverPoint,u=C.hoverPoints,v=C.tooltip,I=v&&v.shared?u:l;k&&I&&it(I).forEach(function(S){S.series.isCartesian&&S.plotX===void 0&&(k=!1)}),k?v&&I&&it(I).length&&(v.refresh(I),v.shared&&u?u.forEach(function(S){S.setState(S.state,!0),S.series.isCartesian&&(S.series.xAxis.crosshair&&S.series.xAxis.drawCrosshair(null,S),S.series.yAxis.crosshair&&S.series.yAxis.drawCrosshair(null,S))}):l&&(l.setState(l.state,!0),C.axes.forEach(function(S){S.crosshair&&l.series[S.coll]===S&&S.drawCrosshair(null,l)}))):(l&&l.onMouseOut(),u&&u.forEach(function(S){S.setState()}),h&&h.onMouseOut(),v&&v.hide(_),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),C.axes.forEach(function(S){S.hideCrosshair()}),C.hoverPoints=C.hoverPoint=void 0)}runPointActions(k,_,C){let h=this.chart,l=h.series,u=h.tooltip&&h.tooltip.options.enabled?h.tooltip:void 0,v=!!u&&u.shared,I=_||h.hoverPoint,S=I&&I.series||h.hoverSeries,b=(!k||k.type!=="touchmove")&&(!!_||S&&S.directTouch&&this.isDirectTouch),K=this.getHoverData(I,S,l,b,v,k);I=K.hoverPoint,S=K.hoverSeries;let ct=K.hoverPoints,et=S&&S.tooltipOptions.followPointer&&!S.tooltipOptions.split,dt=v&&S&&!S.noSharedTooltip;if(I&&(C||I!==h.hoverPoint||u&&u.isHidden)){if((h.hoverPoints||[]).forEach(function(pt){ct.indexOf(pt)===-1&&pt.setState()}),h.hoverSeries!==S&&S.onMouseOver(),this.applyInactiveState(ct),(ct||[]).forEach(function(pt){pt.setState("hover")}),h.hoverPoint&&h.hoverPoint.firePointEvent("mouseOut"),!I.series)return;h.hoverPoints=ct,h.hoverPoint=I,I.firePointEvent("mouseOver",void 0,()=>{u&&I&&u.refresh(dt?ct:I,k)})}else if(et&&u&&!u.isHidden){let pt=u.getAnchor([{}],k);h.isInsidePlot(pt[0],pt[1],{visiblePlotOnly:!0})&&u.updatePosition({plotX:pt[0],plotY:pt[1]})}this.unDocMouseMove||(this.unDocMouseMove=Y(h.container.ownerDocument,"mousemove",pt=>{var bt,Mt,w;return(w=(Mt=X[(bt=Q.hoverChartIndex)!=null?bt:-1])==null?void 0:Mt.pointer)==null?void 0:w.onDocumentMouseMove(pt)}),this.eventsToUnbind.push(this.unDocMouseMove)),h.axes.forEach(function(pt){let bt,Mt=c((pt.crosshair||{}).snap,!0);!Mt||(bt=h.hoverPoint)&&bt.series[pt.coll]===pt||(bt=T(ct,w=>w.series&&w.series[pt.coll]===pt)),bt||!Mt?pt.drawCrosshair(k,bt):pt.hideCrosshair()})}setDOMEvents(){let k=this.chart.container,_=k.ownerDocument;k.onmousedown=this.onContainerMouseDown.bind(this),k.onmousemove=this.onContainerMouseMove.bind(this),k.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(Y(k,"mouseenter",this.onContainerMouseEnter.bind(this)),Y(k,"mouseleave",this.onContainerMouseLeave.bind(this))),Q.unbindDocumentMouseUp||(Q.unbindDocumentMouseUp=[]),Q.unbindDocumentMouseUp.push(Y(_,"mouseup",this.onDocumentMouseUp.bind(this)));let C=this.chart.renderTo.parentElement;for(;C&&C.tagName!=="BODY";)this.eventsToUnbind.push(Y(C,"scroll",()=>{delete this.chartPosition})),C=C.parentElement;this.eventsToUnbind.push(Y(k,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),Y(k,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),Q.unbindDocumentTouchEnd||(Q.unbindDocumentTouchEnd=Y(_,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})),this.setPointerCapture(),Y(this.chart,"redraw",this.setPointerCapture.bind(this))}setPointerCapture(){var l,u;if(!Z)return;let k=this.pointerCaptureEventsToUnbind,_=this.chart,C=_.container,h=c((l=_.options.tooltip)==null?void 0:l.followTouchMove,!0)&&_.series.some(v=>v.options.findNearestPointBy.indexOf("y")>-1);!this.hasPointerCapture&&h?(k.push(Y(C,"pointerdown",v=>{var I,S;(I=v.target)!=null&&I.hasPointerCapture(v.pointerId)&&((S=v.target)==null||S.releasePointerCapture(v.pointerId))}),Y(C,"pointermove",v=>{var I,S;(S=(I=_.pointer)==null?void 0:I.getPointFromEvent(v))==null||S.onMouseOver(v)})),_.styledMode||N(C,{"touch-action":"none"}),C.className+=" highcharts-no-touch-action",this.hasPointerCapture=!0):this.hasPointerCapture&&!h&&(k.forEach(v=>v()),k.length=0,_.styledMode||N(C,{"touch-action":c((u=_.options.chart.style)==null?void 0:u["touch-action"],"manipulation")}),C.className=C.className.replace(" highcharts-no-touch-action",""),this.hasPointerCapture=!1)}setHoverChartIndex(k){var h;let _=this.chart,C=R.charts[c(Q.hoverChartIndex,-1)];if(C&&C!==_){let l={relatedTarget:_.container};k&&!(k!=null&&k.relatedTarget)&&(k=xr(xr({},l),k)),(h=C.pointer)==null||h.onContainerMouseLeave(k||l)}C&&C.mouseIsDown||(Q.hoverChartIndex=_.index)}touch(k,_){let C,{chart:h,pinchDown:l=[]}=this;this.setHoverChartIndex(),(k=this.normalize(k)).touches.length===1?h.isInsidePlot(k.chartX-h.plotLeft,k.chartY-h.plotTop,{visiblePlotOnly:!0})&&!h.openMenu?(_&&this.runPointActions(k),k.type==="touchmove"&&(C=!!l[0]&&Math.pow(l[0].chartX-k.chartX,2)+Math.pow(l[0].chartY-k.chartY,2)>=16),c(C,!0)&&this.pinch(k)):_&&this.reset():k.touches.length===2&&this.pinch(k)}touchSelect(k){return!!(this.chart.zooming.singleTouch&&k.touches&&k.touches.length===1)}zoomOption(k){let _=this.chart,C=_.inverted,h=_.zooming.type||"",l,u;/touch/.test(k.type)&&(h=c(_.zooming.pinchType,h)),this.zoomX=l=/x/.test(h),this.zoomY=u=/y/.test(h),this.zoomHor=l&&!C||u&&C,this.zoomVert=u&&!C||l&&C,this.hasZoom=l||u}}return($=Q||(Q={})).compose=function(W){D(q,"Core.Pointer")&&Y(W,"beforeRender",function(){this.pointer=new $(this,this.options)})},Q}),g(d,"Core/Legend/LegendSymbol.js",[d["Core/Utilities.js"]],function(L){var R;let{extend:st,merge:$,pick:J}=L;return function(X){function q(Z,Y,V){var C,h;let N=this.legendItem=this.legendItem||{},{chart:U,options:T}=this,{baseline:A=0,symbolWidth:M,symbolHeight:O}=Z,H=this.symbol||"circle",z=O/2,c=U.renderer,D=N.group,it=A-Math.round((((C=Z.fontMetrics)==null?void 0:C.b)||O)*(V?.4:.3)),Q={},W,k=T.marker,_=0;if(U.styledMode||(Q["stroke-width"]=Math.min(T.lineWidth||0,24),T.dashStyle?Q.dashstyle=T.dashStyle:T.linecap==="square"||(Q["stroke-linecap"]="round")),N.line=c.path().addClass("highcharts-graph").attr(Q).add(D),V&&(N.area=c.path().addClass("highcharts-area").add(D)),Q["stroke-linecap"]&&(_=Math.min(N.line.strokeWidth(),M)/2),M){let l=[["M",_,it],["L",M-_,it]];N.line.attr({d:l}),(h=N.area)==null||h.attr({d:[...l,["L",M-_,A],["L",_,A]]})}if(k&&k.enabled!==!1&&M){let l=Math.min(J(k.radius,z),z);H.indexOf("url")===0&&(k=$(k,{width:O,height:O}),l=0),N.symbol=W=c.symbol(H,M/2-l,it-l,2*l,2*l,st({context:"legend"},k)).addClass("highcharts-point").add(D),W.isMarker=!0}}X.areaMarker=function(Z,Y){q.call(this,Z,Y,!0)},X.lineMarker=q,X.rectangle=function(Z,Y){let V=Y.legendItem||{},N=Z.options,U=Z.symbolHeight,T=N.squareSymbol,A=T?U:Z.symbolWidth;V.symbol=this.chart.renderer.rect(T?(Z.symbolWidth-U)/2:0,Z.baseline-U+1,A,U,J(Z.options.symbolRadius,U/2)).addClass("highcharts-point").attr({zIndex:3}).add(V.group)}}(R||(R={})),R}),g(d,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:L}=this.series.chart;return typeof this.y!="number"?"":L(this.y,-1)},padding:5,style:{fontSize:"0.7em",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),g(d,"Core/Series/SeriesRegistry.js",[d["Core/Globals.js"],d["Core/Defaults.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{defaultOptions:X}=R,{extend:q,extendClass:Z,merge:Y}=$;return function(V){function N(U,T){let A=X.plotOptions||{},M=T.defaultOptions,O=T.prototype;return O.type=U,O.pointClass||(O.pointClass=st),!V.seriesTypes[U]&&(M&&(A[U]=M),V.seriesTypes[U]=T,!0)}V.seriesTypes=L.seriesTypes,V.registerSeriesType=N,V.seriesType=function(U,T,A,M,O){let H=X.plotOptions||{};if(T=T||"",H[U]=Y(H[T],A),delete V.seriesTypes[U],N(U,Z(V.seriesTypes[T]||function(){},M)),V.seriesTypes[U].prototype.type=U,O){class z extends st{}q(z.prototype,O),V.seriesTypes[U].prototype.pointClass=z}return V.seriesTypes[U]}}(J||(J={})),J}),g(d,"Core/Series/Series.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Series/Point.js"],d["Core/Series/SeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let{animObject:N,setAnimation:U}=L,{defaultOptions:T}=R,{registerEventOptions:A}=st,{svg:M,win:O}=$,{seriesTypes:H}=Z,{arrayMax:z,arrayMin:c,clamp:D,correctFloat:it,crisp:Q,defined:W,destroyObjectProperties:k,diffObjects:_,erase:C,error:h,extend:l,find:u,fireEvent:v,getClosestDistance:I,getNestedProperty:S,insertItem:b,isArray:K,isNumber:ct,isString:et,merge:dt,objectEach:pt,pick:bt,removeEvent:Mt,splat:w,syncTimeout:B}=V;class tt{constructor(){this.zoneAxis="y"}init(x,y){let F;v(this,"init",{options:y});let lt=this,rt=x.series;this.eventsToUnbind=[],lt.chart=x,lt.options=lt.setOptions(y);let gt=lt.options,vt=gt.visible!==!1;lt.linkedSeries=[],lt.bindAxes(),l(lt,{name:gt.name,state:"",visible:vt,selected:gt.selected===!0}),A(this,gt);let Ot=gt.events;(Ot&&Ot.click||gt.point&>.point.events&>.point.events.click||gt.allowPointSelect)&&(x.runTrackerClick=!0),lt.getColor(),lt.getSymbol(),lt.parallelArrays.forEach(function(At){lt[At+"Data"]||(lt[At+"Data"]=[])}),lt.isCartesian&&(x.hasCartesianSeries=!0),rt.length&&(F=rt[rt.length-1]),lt._i=bt(F&&F._i,-1)+1,lt.opacity=lt.options.opacity,x.orderItems("series",b(this,rt)),gt.dataSorting&>.dataSorting.enabled?lt.setDataSortingOptions():lt.points||lt.data||lt.setData(gt.data,!1),v(this,"afterInit")}is(x){return H[x]&&this instanceof H[x]}bindAxes(){let x,y=this,F=y.options,lt=y.chart;v(this,"bindAxes",null,function(){(y.axisTypes||[]).forEach(function(rt){(lt[rt]||[]).forEach(function(gt){x=gt.options,(bt(F[rt],0)===gt.index||F[rt]!==void 0&&F[rt]===x.id)&&(b(y,gt.series),y[rt]=gt,gt.isDirty=!0)}),y[rt]||y.optionalAxis===rt||h(18,!0,lt)})}),v(this,"afterBindAxes")}updateParallelArrays(x,y,F){let lt=x.series,rt=ct(y)?function(gt){let vt=gt==="y"&<.toYData?lt.toYData(x):x[gt];lt[gt+"Data"][y]=vt}:function(gt){Array.prototype[y].apply(lt[gt+"Data"],F)};lt.parallelArrays.forEach(rt)}hasData(){return this.visible&&this.dataMax!==void 0&&this.dataMin!==void 0||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(x,y){let F=x.marker,lt=y.marker||{};return F&&(lt.enabled&&!F.enabled||lt.symbol!==F.symbol||lt.height!==F.height||lt.width!==F.width)}autoIncrement(x){let y=this.options,F=y.pointIntervalUnit,lt=y.relativeXValue,rt=this.chart.time,gt=this.xIncrement,vt,Ot;return gt=bt(gt,y.pointStart,0),this.pointInterval=Ot=bt(this.pointInterval,y.pointInterval,1),lt&&ct(x)&&(Ot*=x),F&&(vt=new rt.Date(gt),F==="day"?rt.set("Date",vt,rt.get("Date",vt)+Ot):F==="month"?rt.set("Month",vt,rt.get("Month",vt)+Ot):F==="year"&&rt.set("FullYear",vt,rt.get("FullYear",vt)+Ot),Ot=vt.getTime()-gt),lt&&ct(x)?gt+Ot:(this.xIncrement=gt+Ot,gt)}setDataSortingOptions(){let x=this.options;l(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),W(x.pointRange)||(x.pointRange=1)}setOptions(x){var re,le;let y,F=this.chart,lt=F.options.plotOptions,rt=F.userOptions||{},gt=dt(x),vt=F.styledMode,Ot={plotOptions:lt,userOptions:gt};v(this,"setOptions",Ot);let At=Ot.plotOptions[this.type],$t=rt.plotOptions||{},Xt=$t.series||{},Ct=T.plotOptions[this.type]||{},wt=$t[this.type]||{};this.userOptions=Ot.userOptions;let Dt=dt(At,lt.series,wt,gt);this.tooltipOptions=dt(T.tooltip,(re=T.plotOptions.series)==null?void 0:re.tooltip,Ct==null?void 0:Ct.tooltip,F.userOptions.tooltip,(le=$t.series)==null?void 0:le.tooltip,wt.tooltip,gt.tooltip),this.stickyTracking=bt(gt.stickyTracking,wt.stickyTracking,Xt.stickyTracking,!!this.tooltipOptions.shared&&!this.noSharedTooltip||Dt.stickyTracking),At.marker===null&&delete Dt.marker,this.zoneAxis=Dt.zoneAxis||"y";let jt=this.zones=(Dt.zones||[]).map(Gt=>xr({},Gt));return(Dt.negativeColor||Dt.negativeFillColor)&&!Dt.zones&&(y={value:Dt[this.zoneAxis+"Threshold"]||Dt.threshold||0,className:"highcharts-negative"},vt||(y.color=Dt.negativeColor,y.fillColor=Dt.negativeFillColor),jt.push(y)),jt.length&&W(jt[jt.length-1].value)&&jt.push(vt?{}:{color:this.color,fillColor:this.fillColor}),v(this,"afterSetOptions",{options:Dt}),Dt}getName(){return bt(this.options.name,"Series "+(this.index+1))}getCyclic(x,y,F){let lt,rt,gt=this.chart,vt=`${x}Index`,Ot=`${x}Counter`,At=(F==null?void 0:F.length)||gt.options.chart.colorCount;!y&&(W(rt=bt(x==="color"?this.options.colorIndex:void 0,this[vt]))?lt=rt:(gt.series.length||(gt[Ot]=0),lt=gt[Ot]%At,gt[Ot]+=1),F&&(y=F[lt])),lt!==void 0&&(this[vt]=lt),this[x]=y}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||T.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let x=this.options.marker;this.getCyclic("symbol",x.symbol,this.chart.options.symbols)}findPointIndex(x,y){let F,lt,rt,gt=x.id,vt=x.x,Ot=this.points,At=this.options.dataSorting;if(gt){let $t=this.chart.get(gt);$t instanceof X&&(F=$t)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let $t=Xt=>!Xt.touched&&Xt.index===x.index;if(At&&At.matchByName?$t=Xt=>!Xt.touched&&Xt.name===x.name:this.options.relativeXValue&&($t=Xt=>!Xt.touched&&Xt.options.x===x.x),!(F=u(Ot,$t)))return}return F&&(rt=F&&F.index)!==void 0&&(lt=!0),rt===void 0&&ct(vt)&&(rt=this.xData.indexOf(vt,y)),rt!==-1&&rt!==void 0&&this.cropped&&(rt=rt>=this.cropStart?rt-this.cropStart:rt),!lt&&ct(rt)&&Ot[rt]&&Ot[rt].touched&&(rt=void 0),rt}updateData(x,y){let F=this.options,lt=F.dataSorting,rt=this.points,gt=[],vt=this.requireSorting,Ot=x.length===rt.length,At,$t,Xt,Ct,wt=!0;if(this.xIncrement=null,x.forEach(function(Dt,jt){let re,le=W(Dt)&&this.pointClass.prototype.optionsToObject.call({series:this},Dt)||{},Gt=le.x;le.id||ct(Gt)?((re=this.findPointIndex(le,Ct))===-1||re===void 0?gt.push(Dt):rt[re]&&Dt!==F.data[re]?(rt[re].update(Dt,!1,null,!1),rt[re].touched=!0,vt&&(Ct=re+1)):rt[re]&&(rt[re].touched=!0),(!Ot||jt!==re||lt&<.enabled||this.hasDerivedData)&&(At=!0)):gt.push(Dt)},this),At)for($t=rt.length;$t--;)(Xt=rt[$t])&&!Xt.touched&&Xt.remove&&Xt.remove(!1,y);else!Ot||lt&<.enabled?wt=!1:(x.forEach(function(Dt,jt){Dt===rt[jt].y||rt[jt].destroyed||rt[jt].update(Dt,!1,null,!1)}),gt.length=0);return rt.forEach(function(Dt){Dt&&(Dt.touched=!1)}),!!wt&&(gt.forEach(function(Dt){this.addPoint(Dt,!1,null,null,!1)},this),this.xIncrement===null&&this.xData&&this.xData.length&&(this.xIncrement=z(this.xData),this.autoIncrement()),!0)}setData(x,y=!0,F,lt){var un;let rt=this,gt=rt.points,vt=gt&>.length||0,Ot=rt.options,At=rt.chart,$t=Ot.dataSorting,Xt=rt.xAxis,Ct=Ot.turboThreshold,wt=this.xData,Dt=this.yData,jt=rt.pointArrayMap,re=jt&&jt.length,le=Ot.keys,Gt,he,ve,Ce=0,Te=1,Ke;At.options.chart.allowMutatingData||(Ot.data&&delete rt.options.data,rt.userOptions.data&&delete rt.userOptions.data,Ke=dt(!0,x));let rn=(x=Ke||x||[]).length;if($t&&$t.enabled&&(x=this.sortData(x)),At.options.chart.allowMutatingData&<!==!1&&rn&&vt&&!rt.cropped&&!rt.hasGroupedData&&rt.visible&&!rt.boosted&&(ve=this.updateData(x,F)),!ve){rt.xIncrement=null,rt.colorCounter=0,this.parallelArrays.forEach(function(Kt){rt[Kt+"Data"].length=0});let Qt=Ct&&rn>Ct;if(Qt){let Kt=rt.getFirstValidPoint(x),Jt=rt.getFirstValidPoint(x,rn-1,-1),Et=Rt=>!!(K(Rt)&&(le||ct(Rt[0])));if(ct(Kt)&&ct(Jt))for(Gt=0;Gt=0?Ce:0,Te=Te>=0?Te:1),Kt.length===1&&(Te=0),Ce===Te)for(Gt=0;Gt{let vt=S(F,rt),Ot=S(F,gt);return Otvt?1:0}).forEach(function(rt,gt){rt.x=gt},this),y.linkedSeries&&y.linkedSeries.forEach(function(rt){let gt=rt.options,vt=gt.data;gt.dataSorting&>.dataSorting.enabled||!vt||(vt.forEach(function(Ot,At){vt[At]=lt(rt,Ot),x[At]&&(vt[At].x=x[At].x,vt[At].index=At)}),rt.setData(vt,!1))}),x}getProcessedData(x){let y=this,F=y.xAxis,lt=y.options.cropThreshold,rt=F==null?void 0:F.logarithmic,gt=y.isCartesian,vt,Ot,At=0,$t,Xt,Ct,wt=y.xData,Dt=y.yData,jt=!1,re=wt.length;F&&(Xt=($t=F.getExtremes()).min,Ct=$t.max,jt=!!(F.categories&&!F.names.length)),gt&&y.sorted&&!x&&(!lt||re>lt||y.forceCrop)&&(wt[re-1]Ct?(wt=[],Dt=[]):y.yData&&(wt[0]Ct)&&(wt=(vt=this.cropData(y.xData,y.yData,Xt,Ct)).xData,Dt=vt.yData,At=vt.start,Ot=!0));let le=I([rt?wt.map(rt.log2lin):wt],()=>y.requireSorting&&!jt&&h(15,!1,y.chart));return{xData:wt,yData:Dt,cropped:Ot,cropStart:At,closestPointRange:le}}processData(x){let y=this.xAxis;if(this.isCartesian&&!this.isDirty&&!y.isDirty&&!this.yAxis.isDirty&&!x)return!1;let F=this.getProcessedData();this.cropped=F.cropped,this.cropStart=F.cropStart,this.processedXData=F.xData,this.processedYData=F.yData,this.closestPointRange=this.basePointRange=F.closestPointRange,v(this,"afterProcessData")}cropData(x,y,F,lt){let rt=x.length,gt,vt,Ot=0,At=rt;for(gt=0;gt=F){Ot=Math.max(0,gt-1);break}for(vt=gt;vtlt){At=vt+1;break}return{xData:x.slice(Ot,At),yData:y.slice(Ot,At),start:Ot,end:At}}generatePoints(){let x=this.options,y=this.processedData||x.data,F=this.processedXData,lt=this.processedYData,rt=this.pointClass,gt=F.length,vt=this.cropStart||0,Ot=this.hasGroupedData,At=x.keys,$t=[],Xt=x.dataGrouping&&x.dataGrouping.groupAll?vt:0,Ct,wt,Dt,jt,re=this.data;if(!re&&!Ot){let le=[];le.length=y.length,re=this.data=le}for(At&&Ot&&(this.options.keys=!1),jt=0;jt0:jt.length)||!vt),wt=y||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!F||(Te[re+gt]||Dt)>=Gt&&(Te[re-gt]||Dt)<=he,Ct&&wt)if(le=jt.length)for(;le--;)ct(jt[le])&&(rt[ve++]=jt[le]);else rt[ve++]=jt;let Ke={activeYData:rt,dataMin:c(rt),dataMax:z(rt)};return v(this,"afterGetExtremes",{dataExtremes:Ke}),Ke}applyExtremes(){let x=this.getExtremes();return this.dataMin=x.dataMin,this.dataMax=x.dataMax,x}getFirstValidPoint(x,y=0,F=1){let lt=x.length,rt=y;for(;rt>=0&&rt1)&&(gt.step=function(Ct,wt){Xt&&Xt.apply(wt,arguments),wt.prop==="width"&&(At!=null&&At.element)&&At.attr(rt?"height":"width",Ct+99)}),Ot.addClass("highcharts-animating").animate($t,gt)}}afterAnimate(){this.setClip(),pt(this.chart.sharedClips,(x,y,F)=>{x&&!this.chart.container.querySelector(`[clip-path="url(#${x.id})"]`)&&(x.destroy(),delete F[y])}),this.finishedAnimating=!0,v(this,"afterAnimate")}drawPoints(x=this.points){let y,F,lt,rt,gt,vt,Ot,At=this.chart,$t=At.styledMode,{colorAxis:Xt,options:Ct}=this,wt=Ct.marker,Dt=this[this.specialGroup||"markerGroup"],jt=this.xAxis,re=bt(wt.enabled,!jt||!!jt.isRadial||null,this.closestPointRangePx>=wt.enabledThreshold*wt.radius);if(wt.enabled!==!1||this._hasPointMarkers)for(y=0;y0||F.hasImage)&&(F.graphic=lt=At.renderer.symbol(le,Ot.x,Ot.y,Ot.width,Ot.height,vt?gt:wt).add(Dt),this.enabledDataSorting&&At.hasRendered&&(lt.attr({x:F.startXPos}),rt="animate")),lt&&rt==="animate"&<[Gt?"show":"hide"](Gt).animate(Ot),lt){let he=this.pointAttribs(F,$t||!F.selected?void 0:"select");$t?Xt&<.css({fill:he.fill}):lt[rt](he)}lt&<.addClass(F.getClassName(),!0)}else lt&&(F.graphic=lt.destroy())}markerAttribs(x,y){let F=this.options,lt=F.marker,rt=x.marker||{},gt=rt.symbol||lt.symbol,vt={},Ot,At,$t=bt(rt.radius,lt&<.radius);y&&(Ot=lt.states[y],$t=bt((At=rt.states&&rt.states[y])&&At.radius,Ot&&Ot.radius,$t&&$t+(Ot&&Ot.radiusPlus||0))),x.hasImage=gt&>.indexOf("url")===0,x.hasImage&&($t=0);let Xt=x.pos();return ct($t)&&Xt&&(F.crisp&&(Xt[0]=Q(Xt[0],x.hasImage?0:gt==="rect"?(lt==null?void 0:lt.lineWidth)||0:1)),vt.x=Xt[0]-$t,vt.y=Xt[1]-$t),$t&&(vt.width=vt.height=2*$t),vt}pointAttribs(x,y){let F=this.options.marker,lt=x&&x.options,rt=lt&<.marker||{},gt=lt&<.color,vt=x&&x.color,Ot=x&&x.zone&&x.zone.color,At,$t,Xt=this.color,Ct,wt,Dt=bt(rt.lineWidth,F.lineWidth),jt=1;return Xt=gt||Ot||vt||Xt,Ct=rt.fillColor||F.fillColor||Xt,wt=rt.lineColor||F.lineColor||Xt,y=y||"normal",At=F.states[y]||{},Dt=bt(($t=rt.states&&rt.states[y]||{}).lineWidth,At.lineWidth,Dt+bt($t.lineWidthPlus,At.lineWidthPlus,0)),Ct=$t.fillColor||At.fillColor||Ct,{stroke:wt=$t.lineColor||At.lineColor||wt,"stroke-width":Dt,fill:Ct,opacity:jt=bt($t.opacity,At.opacity,jt)}}destroy(x){let y,F,lt,rt=this,gt=rt.chart,vt=/AppleWebKit\/533/.test(O.navigator.userAgent),Ot=rt.data||[];for(v(rt,"destroy",{keepEventsForUpdate:x}),this.removeEvents(x),(rt.axisTypes||[]).forEach(function(At){(lt=rt[At])&<.series&&(C(lt.series,rt),lt.isDirty=lt.forceRedraw=!0)}),rt.legendItem&&rt.chart.legend.destroyItem(rt),y=Ot.length;y--;)(F=Ot[y])&&F.destroy&&F.destroy();for(let At of rt.zones)k(At,void 0,!0);V.clearTimeout(rt.animationTimeout),pt(rt,function(At,$t){At instanceof Y&&!At.survive&&At[vt&&$t==="group"?"hide":"destroy"]()}),gt.hoverSeries===rt&&(gt.hoverSeries=void 0),C(gt.series,rt),gt.orderItems("series"),pt(rt,function(At,$t){x&&$t==="hcEvents"||delete rt[$t]})}applyZones(){let{area:x,chart:y,graph:F,zones:lt,points:rt,xAxis:gt,yAxis:vt,zoneAxis:Ot}=this,{inverted:At,renderer:$t}=y,Xt=this[`${Ot}Axis`],{isXAxis:Ct,len:wt=0}=Xt||{},Dt=((F==null?void 0:F.strokeWidth())||0)/2+1,jt=(re,le=0,Gt=0)=>{At&&(Gt=wt-Gt);let{translated:he=0,lineClip:ve}=re,Ce=Gt-he;ve==null||ve.push(["L",le,Math.abs(Ce){ve.forEach((Ce,Te)=>{(Ce[0]==="M"||Ce[0]==="L")&&(ve[Te]=[Ce[0],Ct?wt-Ce[1]:Ce[1],Ct?Ce[2]:wt-Ce[2]])})};if(lt.forEach(ve=>{ve.lineClip=[],ve.translated=D(Xt.toPixels(bt(ve.value,re),!0)||0,0,wt)}),F&&!this.showLine&&F.hide(),x&&x.hide(),Ot==="y"&&rt.length{var zt,Ft;let Ce=ve.lineClip||[],Te=Math.round(ve.translated||0);gt.reversed&&Ce.reverse();let{clip:Ke,simpleClip:rn}=ve,un=0,Qt=0,Kt=gt.len,Jt=vt.len;Ct?(un=Te,Kt=he):(Qt=Te,Jt=he);let Et=[["M",un,Qt],["L",Kt,Qt],["L",Kt,Jt],["L",un,Jt],["Z"]],Rt=[Et[0],...Ce,Et[1],Et[2],...Gt,Et[3],Et[4]];Gt=Ce.reverse(),he=Te,At&&(le(Rt),x&&le(Et)),Ke?(Ke.animate({d:Rt}),rn==null||rn.animate({d:Et})):(Ke=ve.clip=$t.path(Rt),x&&(rn=ve.simpleClip=$t.path(Et))),F&&((zt=ve.graph)==null||zt.clip(Ke)),x&&((Ft=ve.area)==null||Ft.clip(rn))})}else this.visible&&(F&&F.show(),x&&x.show())}plotGroup(x,y,F,lt,rt){let gt=this[x],vt=!gt,Ot={visibility:F,zIndex:lt||.1};return W(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(Ot.opacity=this.opacity),gt||(this[x]=gt=this.chart.renderer.g().add(rt)),gt.addClass("highcharts-"+y+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(W(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(gt.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),gt.attr(Ot)[vt?"attr":"animate"](this.getPlotBox(y)),gt}getPlotBox(x){let y=this.xAxis,F=this.yAxis,lt=this.chart,rt=lt.inverted&&!lt.polar&&y&&this.invertible&&x==="series";return lt.inverted&&(y=F,F=this.xAxis),{translateX:y?y.left:lt.plotLeft,translateY:F?F.top:lt.plotTop,rotation:rt?90:0,rotationOriginX:rt?(y.len-F.len)/2:0,rotationOriginY:rt?(y.len+F.len)/2:0,scaleX:rt?-1:1,scaleY:1}}removeEvents(x){let{eventsToUnbind:y}=this;x||Mt(this),y.length&&(y.forEach(F=>{F()}),y.length=0)}render(){var $t,Xt,Ct,wt,Dt;let x=this,{chart:y,options:F,hasRendered:lt}=x,rt=N(F.animation),gt=x.visible?"inherit":"hidden",vt=F.zIndex,Ot=y.seriesGroup,At=x.finishedAnimating?0:rt.duration;v(this,"render"),x.plotGroup("group","series",gt,vt,Ot),x.markerGroup=x.plotGroup("markerGroup","markers",gt,vt,Ot),F.clip!==!1&&x.setClip(),At&&(($t=x.animate)==null||$t.call(x,!0)),x.drawGraph&&(x.drawGraph(),x.applyZones()),x.visible&&x.drawPoints(),(Xt=x.drawDataLabels)==null||Xt.call(x),(Ct=x.redrawPoints)==null||Ct.call(x),F.enableMouseTracking&&((wt=x.drawTracker)==null||wt.call(x)),At&&((Dt=x.animate)==null||Dt.call(x)),lt||(At&&rt.defer&&(At+=rt.defer),x.animationTimeout=B(()=>{x.afterAnimate()},At||0)),x.isDirty=!1,x.hasRendered=!0,v(x,"afterRender")}redraw(){let x=this.isDirty||this.isDirtyData;this.translate(),this.render(),x&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(x,y){let{xAxis:F,yAxis:lt}=this,rt=this.chart.inverted;return this.searchKDTree({clientX:rt?F.len-x.chartY+F.pos:x.chartX-F.pos,plotY:rt?lt.len-x.chartX+lt.pos:x.chartY-lt.pos},y,x)}buildKDTree(x){this.buildingKdTree=!0;let y=this,F=y.options.findNearestPointBy.indexOf("y")>-1?2:1;delete y.kdTree,B(function(){y.kdTree=function lt(rt,gt,vt){let Ot,At,$t=rt==null?void 0:rt.length;if($t)return Ot=y.kdAxisArray[gt%vt],rt.sort((Xt,Ct)=>(Xt[Ot]||0)-(Ct[Ot]||0)),{point:rt[At=Math.floor($t/2)],left:lt(rt.slice(0,At),gt+1,vt),right:lt(rt.slice(At+1),gt+1,vt)}}(y.getValidPoints(void 0,!y.directTouch),F,F),y.buildingKdTree=!1},y.options.kdNow||(x==null?void 0:x.type)==="touchstart"?0:1)}searchKDTree(x,y,F){let lt=this,[rt,gt]=this.kdAxisArray,vt=y?"distX":"dist",Ot=(lt.options.findNearestPointBy||"").indexOf("y")>-1?2:1,At=!!lt.isBubble;if(this.kdTree||this.buildingKdTree||this.buildKDTree(F),this.kdTree)return function $t(Xt,Ct,wt,Dt){var Ke;let jt=Ct.point,re=lt.kdAxisArray[wt%Dt],le,Gt,he=jt;(function(rn,un){var ce;let Qt=rn[rt],Kt=un[rt],Jt=W(Qt)&&W(Kt)?Qt-Kt:null,Et=rn[gt],Rt=un[gt],zt=W(Et)&&W(Rt)?Et-Rt:0,Ft=At&&((ce=un.marker)==null?void 0:ce.radius)||0;un.dist=Math.sqrt((Jt&&Jt*Jt||0)+zt*zt)-Ft,un.distX=W(Jt)?Math.abs(Jt)-Ft:Number.MAX_VALUE})(Xt,jt);let ve=(Xt[re]||0)-(jt[re]||0)+(At&&((Ke=jt.marker)==null?void 0:Ke.radius)||0),Ce=ve<0?"left":"right",Te=ve<0?"right":"left";return Ct[Ce]&&(he=(le=$t(Xt,Ct[Ce],wt+1,Dt))[vt]=0&><=(lt?lt.len:y.plotHeight)&&rt>=0&&rt<=(F?F.len:y.plotWidth)}drawTracker(){var Ct;let x=this,y=x.options,F=y.trackByArea,lt=[].concat((F?x.areaPath:x.graphPath)||[]),rt=x.chart,gt=rt.pointer,vt=rt.renderer,Ot=((Ct=rt.options.tooltip)==null?void 0:Ct.snap)||0,At=()=>{y.enableMouseTracking&&rt.hoverSeries!==x&&x.onMouseOver()},$t="rgba(192,192,192,"+(M?1e-4:.002)+")",Xt=x.tracker;Xt?Xt.attr({d:lt}):x.graph&&(x.tracker=Xt=vt.path(lt).attr({visibility:x.visible?"inherit":"hidden",zIndex:2}).addClass(F?"highcharts-tracker-area":"highcharts-tracker-line").add(x.group),rt.styledMode||Xt.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:$t,fill:F?$t:"none","stroke-width":x.graph.strokeWidth()+(F?0:2*Ot)}),[x.tracker,x.markerGroup,x.dataLabelsGroup].forEach(wt=>{wt&&(wt.addClass("highcharts-tracker").on("mouseover",At).on("mouseout",Dt=>{gt==null||gt.onTrackerMouseOut(Dt)}),y.cursor&&!rt.styledMode&&wt.css({cursor:y.cursor}),wt.on("touchstart",At))})),v(this,"afterDrawTracker")}addPoint(x,y,F,lt,rt){let gt,vt,Ot=this.options,At=this.data,$t=this.chart,Xt=this.xAxis,Ct=Xt&&Xt.hasNames&&Xt.names,wt=Ot.data,Dt=this.xData;y=bt(y,!0);let jt={series:this};this.pointClass.prototype.applyOptions.apply(jt,[x]);let re=jt.x;if(vt=Dt.length,this.requireSorting&&rere;)vt--;this.updateParallelArrays(jt,"splice",[vt,0,0]),this.updateParallelArrays(jt,vt),Ct&&jt.name&&(Ct[re]=jt.name),wt.splice(vt,0,x),(gt||this.processedData)&&(this.data.splice(vt,0,null),this.processData()),Ot.legendType==="point"&&this.generatePoints(),F&&(At[0]&&At[0].remove?At[0].remove(!1):(At.shift(),this.updateParallelArrays(jt,"shift"),wt.shift())),rt!==!1&&v(this,"addPoint",{point:jt}),this.isDirty=!0,this.isDirtyData=!0,y&&$t.redraw(lt)}removePoint(x,y,F){let lt=this,rt=lt.data,gt=rt[x],vt=lt.points,Ot=lt.chart,At=function(){vt&&vt.length===rt.length&&vt.splice(x,1),rt.splice(x,1),lt.options.data.splice(x,1),lt.updateParallelArrays(gt||{series:lt},"splice",[x,1]),gt&>.destroy(),lt.isDirty=!0,lt.isDirtyData=!0,y&&Ot.redraw()};U(F,Ot),y=bt(y,!0),gt?gt.firePointEvent("remove",null,At):At()}remove(x,y,F,lt){let rt=this,gt=rt.chart;function vt(){rt.destroy(lt),gt.isDirtyLegend=gt.isDirtyBox=!0,gt.linkSeries(lt),bt(x,!0)&>.redraw(y)}F!==!1?v(rt,"remove",null,vt):vt()}update(x,y){var le,Gt,he,ve,Ce;v(this,"update",{options:x=_(x,this.userOptions)});let F=this,lt=F.chart,rt=F.userOptions,gt=F.initialType||F.type,vt=lt.options.plotOptions,Ot=H[gt].prototype,At=F.finishedAnimating&&{animation:!1},$t={},Xt,Ct,wt=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],Dt=x.type||rt.type||lt.options.chart.type,jt=!(this.hasDerivedData||Dt&&Dt!==this.type||x.pointStart!==void 0||x.pointInterval!==void 0||x.relativeXValue!==void 0||x.joinBy||x.mapData||["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"].some(Te=>F.hasOptionChanged(Te)));Dt=Dt||gt,jt&&(wt.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),x.visible!==!1&&wt.push("area","graph"),F.parallelArrays.forEach(function(Te){wt.push(Te+"Data")}),x.data&&(x.dataSorting&&l(F.options.dataSorting,x.dataSorting),this.setData(x.data,!1))),x=dt(rt,{index:rt.index===void 0?F.index:rt.index,pointStart:(ve=(Gt=(le=vt==null?void 0:vt.series)==null?void 0:le.pointStart)!=null?Gt:rt.pointStart)!=null?ve:(he=F.xData)==null?void 0:he[0]},!jt&&{data:F.options.data},x,At),jt&&x.data&&(x.data=F.options.data),(wt=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(wt)).forEach(function(Te){wt[Te]=F[Te],delete F[Te]});let re=!1;if(H[Dt]){if(re=Dt!==F.type,F.remove(!1,!1,!1,!0),re)if(lt.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(F,H[Dt].prototype);else{let Te=Object.hasOwnProperty.call(F,"hcEvents")&&F.hcEvents;for(Ct in Ot)F[Ct]=void 0;l(F,H[Dt].prototype),Te?F.hcEvents=Te:delete F.hcEvents}}else h(17,!0,lt,{missingModuleFor:Dt});if(wt.forEach(function(Te){F[Te]=wt[Te]}),F.init(lt,x),jt&&this.points)for(let Te of((Xt=F.options).visible===!1?($t.graphic=1,$t.dataLabel=1):(this.hasMarkerChanged(Xt,rt)&&($t.graphic=1),(Ce=F.hasDataLabels)!=null&&Ce.call(F)||($t.dataLabel=1)),this.points))Te&&Te.series&&(Te.resolveColor(),Object.keys($t).length&&Te.destroyElements($t),Xt.showInLegend===!1&&Te.legendItem&<.legend.destroyItem(Te));F.initialType=gt,lt.linkSeries(),lt.setSortedData(),re&&F.linkedSeries.length&&(F.isDirtyData=!0),v(this,"afterUpdate"),bt(y,!0)&<.redraw(!!jt&&void 0)}setName(x){this.name=this.options.name=this.userOptions.name=x,this.chart.isDirtyLegend=!0}hasOptionChanged(x){var vt,Ot;let y=this.chart,F=this.options[x],lt=y.options.plotOptions,rt=this.userOptions[x],gt=bt((vt=lt==null?void 0:lt[this.type])==null?void 0:vt[x],(Ot=lt==null?void 0:lt.series)==null?void 0:Ot[x]);return rt&&!W(gt)?F!==rt:F!==bt(gt,F)}onMouseOver(){let x=this.chart,y=x.hoverSeries,F=x.pointer;F==null||F.setHoverChartIndex(),y&&y!==this&&y.onMouseOut(),this.options.events.mouseOver&&v(this,"mouseOver"),this.setState("hover"),x.hoverSeries=this}onMouseOut(){let x=this.options,y=this.chart,F=y.tooltip,lt=y.hoverPoint;y.hoverSeries=null,lt&<.onMouseOut(),this&&x.events.mouseOut&&v(this,"mouseOut"),F&&!this.stickyTracking&&(!F.shared||this.noSharedTooltip)&&F.hide(),y.series.forEach(function(rt){rt.setState("",!0)})}setState(x,y){let F=this,lt=F.options,rt=F.graph,gt=lt.inactiveOtherPoints,vt=lt.states,Ot=bt(vt[x||"normal"]&&vt[x||"normal"].animation,F.chart.options.chart.animation),At=lt.lineWidth,$t=lt.opacity;if(x=x||"",F.state!==x&&([F.group,F.markerGroup,F.dataLabelsGroup].forEach(function(Xt){Xt&&(F.state&&Xt.removeClass("highcharts-series-"+F.state),x&&Xt.addClass("highcharts-series-"+x))}),F.state=x,!F.chart.styledMode)){if(vt[x]&&vt[x].enabled===!1)return;if(x&&(At=vt[x].lineWidth||At+(vt[x].lineWidthPlus||0),$t=bt(vt[x].opacity,$t)),rt&&!rt.dashstyle&&ct(At))for(let Xt of[rt,...this.zones.map(Ct=>Ct.graph)])Xt==null||Xt.animate({"stroke-width":At},Ot);gt||[F.group,F.markerGroup,F.dataLabelsGroup,F.labelBySeries].forEach(function(Xt){Xt&&Xt.animate({opacity:$t},Ot)})}y&>&&F.points&&F.setAllPointsToState(x||void 0)}setAllPointsToState(x){this.points.forEach(function(y){y.setState&&y.setState(x)})}setVisible(x,y){var Ot;let F=this,lt=F.chart,rt=lt.options.chart.ignoreHiddenSeries,gt=F.visible;F.visible=x=F.options.visible=F.userOptions.visible=x===void 0?!gt:x;let vt=x?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(At=>{var $t;($t=F[At])==null||$t[vt]()}),(lt.hoverSeries===F||((Ot=lt.hoverPoint)==null?void 0:Ot.series)===F)&&F.onMouseOut(),F.legendItem&<.legend.colorizeItem(F,x),F.isDirty=!0,F.options.stacking&<.series.forEach(At=>{At.options.stacking&&At.visible&&(At.isDirty=!0)}),F.linkedSeries.forEach(At=>{At.setVisible(x,!1)}),rt&&(lt.isDirtyBox=!0),v(F,vt),y!==!1&<.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(x){this.selected=x=this.options.selected=x===void 0?!this.selected:x,this.checkbox&&(this.checkbox.checked=x),v(this,x?"select":"unselect")}shouldShowTooltip(x,y,F={}){return F.series=this,F.visiblePlotOnly=!0,this.chart.isInsidePlot(x,y,F)}drawLegendSymbol(x,y){var F;(F=J[this.options.legendSymbol||"rectangle"])==null||F.call(this,x,y)}}return tt.defaultOptions=q,tt.types=Z.seriesTypes,tt.registerType=Z.registerSeriesType,l(tt.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:X,requireSorting:!0,sorted:!0}),Z.series=tt,tt}),g(d,"Core/Legend/Legend.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Series/Point.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){var Y;let{animObject:V,setAnimation:N}=L,{registerEventOptions:U}=R,{composed:T,marginNames:A}=st,{distribute:M}=X,{format:O}=q,{addEvent:H,createElement:z,css:c,defined:D,discardElement:it,find:Q,fireEvent:W,isNumber:k,merge:_,pick:C,pushUnique:h,relativeLength:l,stableSort:u,syncTimeout:v}=Z;class I{constructor(b,K){this.allItems=[],this.initialItemY=0,this.itemHeight=0,this.itemMarginBottom=0,this.itemMarginTop=0,this.itemX=0,this.itemY=0,this.lastItemY=0,this.lastLineHeight=0,this.legendHeight=0,this.legendWidth=0,this.maxItemWidth=0,this.maxLegendWidth=0,this.offsetWidth=0,this.padding=0,this.pages=[],this.symbolHeight=0,this.symbolWidth=0,this.titleHeight=0,this.totalItemWidth=0,this.widthOption=0,this.chart=b,this.setOptions(K),K.enabled&&(this.render(),U(this,K),H(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),H(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(b){let K=C(b.padding,8);this.options=b,this.chart.styledMode||(this.itemStyle=b.itemStyle,this.itemHiddenStyle=_(this.itemStyle,b.itemHiddenStyle)),this.itemMarginTop=b.itemMarginTop,this.itemMarginBottom=b.itemMarginBottom,this.padding=K,this.initialItemY=K-5,this.symbolWidth=C(b.symbolWidth,16),this.pages=[],this.proximate=b.layout==="proximate"&&!this.chart.inverted,this.baseline=void 0}update(b,K){let ct=this.chart;this.setOptions(_(!0,this.options,b)),"events"in this.options&&U(this,this.options),this.destroy(),ct.isDirtyLegend=ct.isDirtyBox=!0,C(K,!0)&&ct.redraw(),W(this,"afterUpdate",{redraw:K})}colorizeItem(b,K){let{area:ct,group:et,label:dt,line:pt,symbol:bt}=b.legendItem||{};if(et==null||et[K?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:Mt={}}=this,w=Mt.color,{fillColor:B,fillOpacity:tt,lineColor:nt,marker:x}=b.options,y=F=>(!K&&(F.fill&&(F.fill=w),F.stroke&&(F.stroke=w)),F);dt==null||dt.css(_(K?this.itemStyle:Mt)),pt==null||pt.attr(y({stroke:nt||b.color})),bt&&bt.attr(y(x&&bt.isMarker?b.pointAttribs():{fill:b.color})),ct==null||ct.attr(y({fill:B||b.color,"fill-opacity":B?1:tt!=null?tt:.75}))}W(this,"afterColorizeItem",{item:b,visible:K})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(b){let{group:K,x:ct=0,y:et=0}=b.legendItem||{},dt=this.options,pt=dt.symbolPadding,bt=!dt.rtl,Mt=b.checkbox;if(K&&K.element){let w={translateX:bt?ct:this.legendWidth-ct-2*pt-4,translateY:et};K[D(K.translateY)?"animate":"attr"](w,void 0,()=>{W(this,"afterPositionItem",{item:b})})}Mt&&(Mt.x=ct,Mt.y=et)}destroyItem(b){let K=b.checkbox,ct=b.legendItem||{};for(let et of["group","label","line","symbol"])ct[et]&&(ct[et]=ct[et].destroy());K&&it(K),b.legendItem=void 0}destroy(){for(let b of this.getAllItems())this.destroyItem(b);for(let b of["clipRect","up","down","pager","nav","box","title","group"])this[b]&&(this[b]=this[b].destroy());this.display=null}positionCheckboxes(){let b,K=this.group&&this.group.alignAttr,ct=this.clipHeight||this.legendHeight,et=this.titleHeight;K&&(b=K.translateY,this.allItems.forEach(function(dt){let pt,bt=dt.checkbox;bt&&(pt=b+et+bt.y+(this.scrollOffset||0)+3,c(bt,{left:K.translateX+dt.checkboxOffset+bt.x-20+"px",top:pt+"px",display:this.proximate||pt>b-6&&pt1.5*$t?At.height:$t))}layoutItem(b){let K=this.options,ct=this.padding,et=K.layout==="horizontal",dt=b.itemHeight,pt=this.itemMarginBottom,bt=this.itemMarginTop,Mt=et?C(K.itemDistance,20):0,w=this.maxLegendWidth,B=K.alignColumns&&this.totalItemWidth>w?this.maxItemWidth:b.itemWidth,tt=b.legendItem||{};et&&this.itemX-ct+B>w&&(this.itemX=ct,this.lastLineHeight&&(this.itemY+=bt+this.lastLineHeight+pt),this.lastLineHeight=0),this.lastItemY=bt+this.itemY+pt,this.lastLineHeight=Math.max(dt,this.lastLineHeight),tt.x=this.itemX,tt.y=this.itemY,et?this.itemX+=B:(this.itemY+=bt+dt+pt,this.lastLineHeight=dt),this.offsetWidth=this.widthOption||Math.max((et?this.itemX-ct-(b.checkbox?0:Mt):B)+ct,this.offsetWidth)}getAllItems(){let b=[];return this.chart.series.forEach(function(K){let ct=K&&K.options;K&&C(ct.showInLegend,!D(ct.linkedTo)&&void 0,!0)&&(b=b.concat((K.legendItem||{}).labels||(ct.legendType==="point"?K.data:K)))}),W(this,"afterGetAllItems",{allItems:b}),b}getAlignment(){let b=this.options;return this.proximate?b.align.charAt(0)+"tv":b.floating?"":b.align.charAt(0)+b.verticalAlign.charAt(0)+b.layout.charAt(0)}adjustMargins(b,K){let ct=this.chart,et=this.options,dt=this.getAlignment();dt&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(pt,bt){pt.test(dt)&&!D(b[bt])&&(ct[A[bt]]=Math.max(ct[A[bt]],ct.legend[(bt+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][bt]*et[bt%2?"x":"y"]+C(et.margin,12)+K[bt]+(ct.titleOffset[bt]||0)))})}proximatePositions(){let b,K=this.chart,ct=[],et=this.options.align==="left";for(let dt of(this.allItems.forEach(function(pt){let bt,Mt,w=et,B,tt;pt.yAxis&&(pt.xAxis.options.reversed&&(w=!w),pt.points&&(bt=Q(w?pt.points:pt.points.slice(0).reverse(),function(nt){return k(nt.plotY)})),Mt=this.itemMarginTop+pt.legendItem.label.getBBox().height+this.itemMarginBottom,tt=pt.yAxis.top-K.plotTop,B=pt.visible?(bt?bt.plotY:pt.yAxis.height)+(tt-.3*Mt):tt+pt.yAxis.height,ct.push({target:B,size:Mt,item:pt}))},this),M(ct,K.plotHeight)))b=dt.item.legendItem||{},k(dt.pos)&&(b.y=K.plotTop-K.spacing[0]+dt.pos)}render(){let b=this.chart,K=b.renderer,ct=this.options,et=this.padding,dt=this.getAllItems(),pt,bt,Mt,w=this.group,B,tt=this.box;this.itemX=et,this.itemY=this.initialItemY,this.offsetWidth=0,this.lastItemY=0,this.widthOption=l(ct.width,b.spacingBox.width-et),B=b.spacingBox.width-2*et-ct.x,["rm","lm"].indexOf(this.getAlignment().substring(0,2))>-1&&(B/=2),this.maxLegendWidth=this.widthOption||B,w||(this.group=w=K.g("legend").addClass(ct.className||"").attr({zIndex:7}).add(),this.contentGroup=K.g().attr({zIndex:1}).add(w),this.scrollGroup=K.g().add(this.contentGroup)),this.renderTitle(),u(dt,(nt,x)=>(nt.options&&nt.options.legendIndex||0)-(x.options&&x.options.legendIndex||0)),ct.reversed&&dt.reverse(),this.allItems=dt,this.display=pt=!!dt.length,this.lastLineHeight=0,this.maxItemWidth=0,this.totalItemWidth=0,this.itemHeight=0,dt.forEach(this.renderItem,this),dt.forEach(this.layoutItem,this),bt=(this.widthOption||this.offsetWidth)+et,Mt=this.lastItemY+this.lastLineHeight+this.titleHeight,Mt=this.handleOverflow(Mt)+et,tt||(this.box=tt=K.rect().addClass("highcharts-legend-box").attr({r:ct.borderRadius}).add(w)),b.styledMode||tt.attr({stroke:ct.borderColor,"stroke-width":ct.borderWidth||0,fill:ct.backgroundColor||"none"}).shadow(ct.shadow),bt>0&&Mt>0&&tt[tt.placed?"animate":"attr"](tt.crisp.call({},{x:0,y:0,width:bt,height:Mt},tt.strokeWidth())),w[pt?"show":"hide"](),b.styledMode&&w.getStyle("display")==="none"&&(bt=Mt=0),this.legendWidth=bt,this.legendHeight=Mt,pt&&this.align(),this.proximate||this.positionItems(),W(this,"afterRender")}align(b=this.chart.spacingBox){let K=this.chart,ct=this.options,et=b.y;/(lth|ct|rth)/.test(this.getAlignment())&&K.titleOffset[0]>0?et+=K.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&K.titleOffset[2]>0&&(et-=K.titleOffset[2]),et!==b.y&&(b=_(b,{y:et})),K.hasRendered||(this.group.placed=!1),this.group.align(_(ct,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":ct.verticalAlign}),!0,b)}handleOverflow(b){let K=this,ct=this.chart,et=ct.renderer,dt=this.options,pt=dt.y,bt=dt.verticalAlign==="top",Mt=this.padding,w=dt.maxHeight,B=dt.navigation,tt=C(B.animation,!0),nt=B.arrowSize||12,x=this.pages,y=this.allItems,F=function(Xt){typeof Xt=="number"?$t.attr({height:Xt}):$t&&(K.clipRect=$t.destroy(),K.contentGroup.clip()),K.contentGroup.div&&(K.contentGroup.div.style.clip=Xt?"rect("+Mt+"px,9999px,"+(Mt+Xt)+"px,0)":"auto")},lt=function(Xt){return K[Xt]=et.circle(0,0,1.3*nt).translate(nt/2,nt/2).add(At),ct.styledMode||K[Xt].attr("fill","rgba(0,0,0,0.0001)"),K[Xt]},rt,gt,vt,Ot=ct.spacingBox.height+(bt?-pt:pt)-Mt,At=this.nav,$t=this.clipRect;return dt.layout!=="horizontal"||dt.verticalAlign==="middle"||dt.floating||(Ot/=2),w&&(Ot=Math.min(Ot,w)),x.length=0,b&&Ot>0&&b>Ot&&B.enabled!==!1?(this.clipHeight=rt=Math.max(Ot-20-this.titleHeight-Mt,0),this.currentPage=C(this.currentPage,1),this.fullHeight=b,y.forEach((Xt,Ct)=>{let wt=(vt=Xt.legendItem||{}).y||0,Dt=Math.round(vt.label.getBBox().height),jt=x.length;(!jt||wt-x[jt-1]>rt&&(gt||wt)!==x[jt-1])&&(x.push(gt||wt),jt++),vt.pageIx=jt-1,gt&&((y[Ct-1].legendItem||{}).pageIx=jt-1),Ct===y.length-1&&wt+Dt-x[jt-1]>rt&&wt>x[jt-1]&&(x.push(wt),vt.pageIx=jt),wt!==gt&&(gt=wt)}),$t||($t=K.clipRect=et.clipRect(0,Mt-2,9999,0),K.contentGroup.clip($t)),F(rt),At||(this.nav=At=et.g().attr({zIndex:1}).add(this.group),this.up=et.symbol("triangle",0,0,nt,nt).add(At),lt("upTracker").on("click",function(){K.scroll(-1,tt)}),this.pager=et.text("",15,10).addClass("highcharts-legend-navigation"),!ct.styledMode&&B.style&&this.pager.css(B.style),this.pager.add(At),this.down=et.symbol("triangle-down",0,0,nt,nt).add(At),lt("downTracker").on("click",function(){K.scroll(1,tt)})),K.scroll(0),b=Ot):At&&(F(),this.nav=At.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),b}scroll(b,K){let ct=this.chart,et=this.pages,dt=et.length,pt=this.clipHeight,bt=this.options.navigation,Mt=this.pager,w=this.padding,B=this.currentPage+b;B>dt&&(B=dt),B>0&&(K!==void 0&&N(K,ct),this.nav.attr({translateX:w,translateY:pt+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(tt){tt.attr({class:B===1?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),Mt.attr({text:B+"/"+dt}),[this.down,this.downTracker].forEach(function(tt){tt.attr({x:18+this.pager.getBBox().width,class:B===dt?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),ct.styledMode||(this.up.attr({fill:B===1?bt.inactiveColor:bt.activeColor}),this.upTracker.css({cursor:B===1?"default":"pointer"}),this.down.attr({fill:B===dt?bt.inactiveColor:bt.activeColor}),this.downTracker.css({cursor:B===dt?"default":"pointer"})),this.scrollOffset=-et[B-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=B,this.positionCheckboxes(),v(()=>{W(this,"afterScroll",{currentPage:B})},V(C(K,ct.renderer.globalAnimation,!0)).duration))}setItemEvents(b,K,ct){let et=this,dt=b.legendItem||{},pt=et.chart.renderer.boxWrapper,bt=b instanceof J,Mt=b instanceof $,w="highcharts-legend-"+(bt?"point":"series")+"-active",B=et.chart.styledMode,tt=ct?[K,dt.symbol]:[dt.group],nt=x=>{et.allItems.forEach(y=>{b!==y&&[y].concat(y.linkedSeries||[]).forEach(F=>{F.setState(x,!bt)})})};for(let x of tt)x&&x.on("mouseover",function(){b.visible&&nt("inactive"),b.setState("hover"),b.visible&&pt.addClass(w),B||K.css(et.options.itemHoverStyle)}).on("mouseout",function(){et.chart.styledMode||K.css(_(b.visible?et.itemStyle:et.itemHiddenStyle)),nt(""),pt.removeClass(w),b.setState()}).on("click",function(y){let F=function(){b.setVisible&&b.setVisible(),nt(b.visible?"inactive":"")};pt.removeClass(w),W(et,"itemClick",{browserEvent:y,legendItem:b},F),bt?b.firePointEvent("legendItemClick",{browserEvent:y}):Mt&&W(b,"legendItemClick",{browserEvent:y})})}createCheckboxForItem(b){b.checkbox=z("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:b.selected,defaultChecked:b.selected},this.options.itemCheckboxStyle,this.chart.container),H(b.checkbox,"click",function(K){let ct=K.target;W(b.series||b,"checkboxClick",{checked:ct.checked,item:b},function(){b.select()})})}}return(Y=I||(I={})).compose=function(S){h(T,"Core.Legend")&&H(S,"beforeMargins",function(){this.legend=new Y(this,this.options.legend)})},I}),g(d,"Core/Chart/Chart.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Time.js"],d["Core/Utilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Axis/Tick.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A){let{animate:M,animObject:O,setAnimation:H}=L,{defaultOptions:z,defaultTime:c}=st,{numberFormat:D}=$,{registerEventOptions:it}=J,{charts:Q,doc:W,marginNames:k,svg:_,win:C}=X,{seriesTypes:h}=Y,{addEvent:l,attr:u,createElement:v,css:I,defined:S,diffObjects:b,discardElement:K,erase:ct,error:et,extend:dt,find:pt,fireEvent:bt,getStyle:Mt,isArray:w,isNumber:B,isObject:tt,isString:nt,merge:x,objectEach:y,pick:F,pInt:lt,relativeLength:rt,removeEvent:gt,splat:vt,syncTimeout:Ot,uniqueKey:At}=U;class $t{static chart(Ct,wt,Dt){return new $t(Ct,wt,Dt)}constructor(Ct,wt,Dt){this.sharedClips={};let jt=[...arguments];(nt(Ct)||Ct.nodeName)&&(this.renderTo=jt.shift()),this.init(jt[0],jt[1])}setZoomOptions(){let Ct=this.options.chart,wt=Ct.zooming;this.zooming=Mi(xr({},wt),{type:F(Ct.zoomType,wt.type),key:F(Ct.zoomKey,wt.key),pinchType:F(Ct.pinchType,wt.pinchType),singleTouch:F(Ct.zoomBySingleTouch,wt.singleTouch,!1),resetButton:x(wt.resetButton,Ct.resetZoomButton)})}init(Ct,wt){bt(this,"init",{args:arguments},function(){let Dt=x(z,Ct),jt=Dt.chart;this.userOptions=dt({},Ct),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=wt,this.isResizing=0,this.options=Dt,this.axes=[],this.series=[],this.time=Ct.time&&Object.keys(Ct.time).length?new N(Ct.time):X.time,this.numberFormatter=jt.numberFormatter||D,this.styledMode=jt.styledMode,this.hasCartesianSeries=jt.showAxes,this.index=Q.length,Q.push(this),X.chartCount++,it(this,jt),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,this.setZoomOptions(),bt(this,"afterInit"),this.firstRender()})}initSeries(Ct){let wt=this.options.chart,Dt=Ct.type||wt.type,jt=h[Dt];jt||et(17,!0,this,{missingModuleFor:Dt});let re=new jt;return typeof re.init=="function"&&re.init(this,Ct),re}setSortedData(){this.getSeriesOrderByLinks().forEach(function(Ct){Ct.points||Ct.data||!Ct.enabledDataSorting||Ct.setData(Ct.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(Ct,wt){return Ct.linkedSeries.length||wt.linkedSeries.length?wt.linkedSeries.length-Ct.linkedSeries.length:0})}orderItems(Ct,wt=0){let Dt=this[Ct],jt=this.options[Ct]=vt(this.options[Ct]).slice(),re=this.userOptions[Ct]=this.userOptions[Ct]?vt(this.userOptions[Ct]).slice():[];if(this.hasRendered&&(jt.splice(wt),re.splice(wt)),Dt)for(let le=wt,Gt=Dt.length;le=Math.max(ve+le,Jt.pos)&&Et<=Math.min(ve+le+Ke.width,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}if(!Dt.ignoreY&&Qt.isInsidePlot){let Jt=!jt&&Dt.axis&&!Dt.axis.isXAxis&&Dt.axis||Te&&(jt?Te.xAxis:Te.yAxis)||{pos:Gt,len:1/0},Et=Dt.paneCoordinates?Jt.pos+un:Gt+un;Et>=Math.max(Ce+Gt,Jt.pos)&&Et<=Math.min(Ce+Gt+Ke.height,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}return bt(this,"afterIsInsidePlot",Qt),Qt.isInsidePlot}redraw(Ct){bt(this,"beforeRedraw");let wt=this.hasCartesianSeries?this.axes:this.colorAxis||[],Dt=this.series,jt=this.pointer,re=this.legend,le=this.userOptions.legend,Gt=this.renderer,he=Gt.isHidden(),ve=[],Ce,Te,Ke,rn=this.isDirtyBox,un=this.isDirtyLegend,Qt;for(Gt.rootFontSize=Gt.boxWrapper.getStyle("font-size"),this.setResponsive&&this.setResponsive(!1),H(!!this.hasRendered&&Ct,this),he&&this.temporaryDisplay(),this.layOutTitles(!1),Ke=Dt.length;Ke--;)if(((Qt=Dt[Ke]).options.stacking||Qt.options.centerInCategory)&&(Te=!0,Qt.isDirty)){Ce=!0;break}if(Ce)for(Ke=Dt.length;Ke--;)(Qt=Dt[Ke]).options.stacking&&(Qt.isDirty=!0);Dt.forEach(function(Kt){Kt.isDirty&&(Kt.options.legendType==="point"?(typeof Kt.updateTotals=="function"&&Kt.updateTotals(),un=!0):le&&(le.labelFormatter||le.labelFormat)&&(un=!0)),Kt.isDirtyData&&bt(Kt,"updatedData")}),un&&re&&re.options.enabled&&(re.render(),this.isDirtyLegend=!1),Te&&this.getStacks(),wt.forEach(function(Kt){Kt.updateNames(),Kt.setScale()}),this.getMargins(),wt.forEach(function(Kt){Kt.isDirty&&(rn=!0)}),wt.forEach(function(Kt){let Jt=Kt.min+","+Kt.max;Kt.extKey!==Jt&&(Kt.extKey=Jt,ve.push(function(){bt(Kt,"afterSetExtremes",dt(Kt.eventArgs,Kt.getExtremes())),delete Kt.eventArgs})),(rn||Te)&&Kt.redraw()}),rn&&this.drawChartBox(),bt(this,"predraw"),Dt.forEach(function(Kt){(rn||Kt.isDirty)&&Kt.visible&&Kt.redraw(),Kt.isDirtyData=!1}),jt&&jt.reset(!0),Gt.draw(),bt(this,"redraw"),bt(this,"render"),he&&this.temporaryDisplay(!0),ve.forEach(function(Kt){Kt.call()})}get(Ct){let wt=this.series;function Dt(re){return re.id===Ct||re.options&&re.options.id===Ct}let jt=pt(this.axes,Dt)||pt(this.series,Dt);for(let re=0;!jt&&re(wt.getPointsCollection().forEach(Dt=>{F(Dt.selectedStaging,Dt.selected)&&Ct.push(Dt)}),Ct),[])}getSelectedSeries(){return this.series.filter(function(Ct){return Ct.selected})}setTitle(Ct,wt,Dt){this.applyDescription("title",Ct),this.applyDescription("subtitle",wt),this.applyDescription("caption",void 0),this.layOutTitles(Dt)}applyDescription(Ct,wt){let Dt=this,jt=this.options[Ct]=x(this.options[Ct],wt),re=this[Ct];re&&wt&&(this[Ct]=re=re.destroy()),jt&&!re&&((re=this.renderer.text(jt.text,0,0,jt.useHTML).attr({align:jt.align,class:"highcharts-"+Ct,zIndex:jt.zIndex||4}).add()).update=function(le,Gt){Dt.applyDescription(Ct,le),Dt.layOutTitles(Gt)},this.styledMode||re.css(dt(Ct==="title"?{fontSize:this.options.isStock?"1em":"1.2em"}:{},jt.style)),this[Ct]=re)}layOutTitles(Ct=!0){let wt=[0,0,0],Dt=this.renderer,jt=this.spacingBox;["title","subtitle","caption"].forEach(function(le){let Gt=this[le],he=this.options[le],ve=he.verticalAlign||"top",Ce=le==="title"?ve==="top"?-3:0:ve==="top"?wt[0]+2:0;if(Gt){Gt.css({width:(he.width||jt.width+(he.widthAdjust||0))+"px"});let Te=Dt.fontMetrics(Gt).b,Ke=Math.round(Gt.getBBox(he.useHTML).height);Gt.align(dt({y:ve==="bottom"?Te:Ce+Te,height:Ke},he),!1,"spacingBox"),he.floating||(ve==="top"?wt[0]=Math.ceil(wt[0]+Ke):ve==="bottom"&&(wt[2]=Math.ceil(wt[2]+Ke)))}},this),wt[0]&&(this.options.title.verticalAlign||"top")==="top"&&(wt[0]+=this.options.title.margin),wt[2]&&this.options.caption.verticalAlign==="bottom"&&(wt[2]+=this.options.caption.margin);let re=!this.titleOffset||this.titleOffset.join(",")!==wt.join(",");this.titleOffset=wt,bt(this,"afterLayOutTitles"),!this.isDirtyBox&&re&&(this.isDirtyBox=this.isDirtyLegend=re,this.hasRendered&&Ct&&this.isDirtyBox&&this.redraw())}getContainerBox(){let Ct=[].map.call(this.renderTo.children,Dt=>{if(Dt!==this.container){let jt=Dt.style.display;return Dt.style.display="none",[Dt,jt]}}),wt={width:Mt(this.renderTo,"width",!0)||0,height:Mt(this.renderTo,"height",!0)||0};return Ct.filter(Boolean).forEach(([Dt,jt])=>{Dt.style.display=jt}),wt}getChartSize(){var le;let Ct=this.options.chart,wt=Ct.width,Dt=Ct.height,jt=this.getContainerBox(),re=jt.height>1&&!(!((le=this.renderTo.parentElement)!=null&&le.style.height)&&this.renderTo.style.height==="100%");this.chartWidth=Math.max(0,wt||jt.width||600),this.chartHeight=Math.max(0,rt(Dt,this.chartWidth)||(re?jt.height:400)),this.containerBox=jt}temporaryDisplay(Ct){let wt=this.renderTo,Dt;if(Ct)for(;wt&&wt.style;)wt.hcOrigStyle&&(I(wt,wt.hcOrigStyle),delete wt.hcOrigStyle),wt.hcOrigDetached&&(W.body.removeChild(wt),wt.hcOrigDetached=!1),wt=wt.parentNode;else for(;wt&&wt.style&&(W.body.contains(wt)||wt.parentNode||(wt.hcOrigDetached=!0,W.body.appendChild(wt)),(Mt(wt,"display",!1)==="none"||wt.hcOricDetached)&&(wt.hcOrigStyle={display:wt.style.display,height:wt.style.height,overflow:wt.style.overflow},Dt={display:"block",overflow:"hidden"},wt!==this.renderTo&&(Dt.height=0),I(wt,Dt),wt.offsetWidth||wt.style.setProperty("display","block","important")),(wt=wt.parentNode)!==W.body););}setClassName(Ct){this.container.className="highcharts-container "+(Ct||"")}getContainer(){var Ke;let Ct=this.options,wt=Ct.chart,Dt="data-highcharts-chart",jt=At(),re,le=this.renderTo;le||(this.renderTo=le=wt.renderTo),nt(le)&&(this.renderTo=le=W.getElementById(le)),le||et(13,!0,this);let Gt=lt(u(le,Dt));B(Gt)&&Q[Gt]&&Q[Gt].hasRendered&&Q[Gt].destroy(),u(le,Dt,this.index),le.innerHTML=T.emptyHTML,wt.skipClone||le.offsetWidth||this.temporaryDisplay(),this.getChartSize();let he=this.chartHeight,ve=this.chartWidth;I(le,{overflow:"hidden"}),this.styledMode||(re=dt({position:"relative",overflow:"hidden",width:ve+"px",height:he+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none",padding:"0px"},wt.style||{}));let Ce=v("div",{id:jt},re,le);this.container=Ce,this.getChartSize(),ve===this.chartWidth||(ve=this.chartWidth,this.styledMode||I(Ce,{width:F((Ke=wt.style)==null?void 0:Ke.width,ve+"px")})),this.containerBox=this.getContainerBox(),this._cursor=Ce.style.cursor;let Te=wt.renderer||!_?q.getRendererType(wt.renderer):V;if(this.renderer=new Te(Ce,ve,he,void 0,wt.forExport,Ct.exporting&&Ct.exporting.allowHTML,this.styledMode),H(void 0,this),this.setClassName(wt.className),this.styledMode)for(let rn in Ct.defs)this.renderer.definition(Ct.defs[rn]);else this.renderer.setStyle(wt.style);this.renderer.chartIndex=this.index,bt(this,"afterGetContainer")}getMargins(Ct){let{spacing:wt,margin:Dt,titleOffset:jt}=this;this.resetMargins(),jt[0]&&!S(Dt[0])&&(this.plotTop=Math.max(this.plotTop,jt[0]+wt[0])),jt[2]&&!S(Dt[2])&&(this.marginBottom=Math.max(this.marginBottom,jt[2]+wt[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(Dt,wt),bt(this,"getMargins"),Ct||this.getAxisMargins()}getAxisMargins(){let Ct=this,wt=Ct.axisOffset=[0,0,0,0],Dt=Ct.colorAxis,jt=Ct.margin,re=function(le){le.forEach(function(Gt){Gt.visible&&Gt.getOffset()})};Ct.hasCartesianSeries?re(Ct.axes):Dt&&Dt.length&&re(Dt),k.forEach(function(le,Gt){S(jt[Gt])||(Ct[le]+=wt[Gt])}),Ct.setChartSize()}getOptions(){return b(this.userOptions,z)}reflow(Ct){var re;let wt=this,Dt=wt.containerBox,jt=wt.getContainerBox();(re=wt.pointer)==null||delete re.chartPosition,!wt.isPrinting&&!wt.isResizing&&Dt&&jt.width&&((jt.width!==Dt.width||jt.height!==Dt.height)&&(U.clearTimeout(wt.reflowTimeout),wt.reflowTimeout=Ot(function(){wt.container&&wt.setSize(void 0,void 0,!1)},Ct?100:0)),wt.containerBox=jt)}setReflow(){let Ct=this,wt=Dt=>{var jt;(jt=Ct.options)!=null&&jt.chart.reflow&&Ct.hasLoaded&&Ct.reflow(Dt)};if(typeof ResizeObserver=="function")new ResizeObserver(wt).observe(Ct.renderTo);else{let Dt=l(C,"resize",wt);l(this,"destroy",Dt)}}setSize(Ct,wt,Dt){let jt=this,re=jt.renderer;jt.isResizing+=1,H(Dt,jt);let le=re.globalAnimation;jt.oldChartHeight=jt.chartHeight,jt.oldChartWidth=jt.chartWidth,Ct!==void 0&&(jt.options.chart.width=Ct),wt!==void 0&&(jt.options.chart.height=wt),jt.getChartSize();let{chartWidth:Gt,chartHeight:he,scrollablePixelsX:ve=0,scrollablePixelsY:Ce=0}=jt;(jt.isDirtyBox||Gt!==jt.oldChartWidth||he!==jt.oldChartHeight)&&(jt.styledMode||(le?M:I)(jt.container,{width:`${Gt+ve}px`,height:`${he+Ce}px`},le),jt.setChartSize(!0),re.setSize(Gt,he,le),jt.axes.forEach(function(Te){Te.isDirty=!0,Te.setScale()}),jt.isDirtyLegend=!0,jt.isDirtyBox=!0,jt.layOutTitles(),jt.getMargins(),jt.redraw(le),jt.oldChartHeight=void 0,bt(jt,"resize"),setTimeout(()=>{jt&&bt(jt,"endResize")},O(le).duration)),jt.isResizing-=1}setChartSize(Ct){let wt,Dt,jt,re,{chartHeight:le,chartWidth:Gt,inverted:he,spacing:ve,renderer:Ce}=this,Te=this.clipOffset,Ke=Math[he?"floor":"round"];this.plotLeft=wt=Math.round(this.plotLeft),this.plotTop=Dt=Math.round(this.plotTop),this.plotWidth=jt=Math.max(0,Math.round(Gt-wt-this.marginRight)),this.plotHeight=re=Math.max(0,Math.round(le-Dt-this.marginBottom)),this.plotSizeX=he?re:jt,this.plotSizeY=he?jt:re,this.spacingBox=Ce.spacingBox={x:ve[3],y:ve[0],width:Gt-ve[3]-ve[1],height:le-ve[0]-ve[2]},this.plotBox=Ce.plotBox={x:wt,y:Dt,width:jt,height:re},Te&&(this.clipBox={x:Ke(Te[3]),y:Ke(Te[0]),width:Ke(this.plotSizeX-Te[1]-Te[3]),height:Ke(this.plotSizeY-Te[0]-Te[2])}),Ct||(this.axes.forEach(function(rn){rn.setAxisSize(),rn.setAxisTranslation()}),Ce.alignElements()),bt(this,"afterSetChartSize",{skipAxes:Ct})}resetMargins(){bt(this,"resetMargins");let Ct=this,wt=Ct.options.chart,Dt=wt.plotBorderWidth||0,jt=Dt/2;["margin","spacing"].forEach(function(re){let le=wt[re],Gt=tt(le)?le:[le,le,le,le];["Top","Right","Bottom","Left"].forEach(function(he,ve){Ct[re][ve]=F(wt[re+he],Gt[ve])})}),k.forEach(function(re,le){Ct[re]=F(Ct.margin[le],Ct.spacing[le])}),Ct.axisOffset=[0,0,0,0],Ct.clipOffset=[jt,jt,jt,jt],Ct.plotBorderWidth=Dt}drawChartBox(){let Ct=this.options.chart,wt=this.renderer,Dt=this.chartWidth,jt=this.chartHeight,re=this.styledMode,le=this.plotBGImage,Gt=Ct.backgroundColor,he=Ct.plotBackgroundColor,ve=Ct.plotBackgroundImage,Ce=this.plotLeft,Te=this.plotTop,Ke=this.plotWidth,rn=this.plotHeight,un=this.plotBox,Qt=this.clipRect,Kt=this.clipBox,Jt=this.chartBackground,Et=this.plotBackground,Rt=this.plotBorder,zt,Ft,ce,Se="animate";Jt||(this.chartBackground=Jt=wt.rect().addClass("highcharts-background").add(),Se="attr"),re?zt=Ft=Jt.strokeWidth():(Ft=(zt=Ct.borderWidth||0)+(Ct.shadow?8:0),ce={fill:Gt||"none"},(zt||Jt["stroke-width"])&&(ce.stroke=Ct.borderColor,ce["stroke-width"]=zt),Jt.attr(ce).shadow(Ct.shadow)),Jt[Se]({x:Ft/2,y:Ft/2,width:Dt-Ft-zt%2,height:jt-Ft-zt%2,r:Ct.borderRadius}),Se="animate",Et||(Se="attr",this.plotBackground=Et=wt.rect().addClass("highcharts-plot-background").add()),Et[Se](un),!re&&(Et.attr({fill:he||"none"}).shadow(Ct.plotShadow),ve&&(le?(ve!==le.attr("href")&&le.attr("href",ve),le.animate(un)):this.plotBGImage=wt.image(ve,Ce,Te,Ke,rn).add())),Qt?Qt.animate({width:Kt.width,height:Kt.height}):this.clipRect=wt.clipRect(Kt),Se="animate",Rt||(Se="attr",this.plotBorder=Rt=wt.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),re||Rt.attr({stroke:Ct.plotBorderColor,"stroke-width":Ct.plotBorderWidth||0,fill:"none"}),Rt[Se](Rt.crisp({x:Ce,y:Te,width:Ke,height:rn},-Rt.strokeWidth())),this.isDirtyBox=!1,bt(this,"afterDrawChartBox")}propFromSeries(){let Ct,wt,Dt,jt=this,re=jt.options.chart,le=jt.options.series;["inverted","angular","polar"].forEach(function(Gt){for(wt=h[re.type],Dt=re[Gt]||wt&&wt.prototype[Gt],Ct=le&&le.length;!Dt&&Ct--;)(wt=h[le[Ct].type])&&wt.prototype[Gt]&&(Dt=!0);jt[Gt]=Dt})}linkSeries(Ct){let wt=this,Dt=wt.series;Dt.forEach(function(jt){jt.linkedSeries.length=0}),Dt.forEach(function(jt){let{linkedTo:re}=jt.options;if(nt(re)){let le;(le=re===":previous"?wt.series[jt.index-1]:wt.get(re))&&le.linkedParent!==jt&&(le.linkedSeries.push(jt),jt.linkedParent=le,le.enabledDataSorting&&jt.setDataSortingOptions(),jt.visible=F(jt.options.visible,le.options.visible,jt.visible))}}),bt(this,"afterLinkSeries",{isUpdating:Ct})}renderSeries(){this.series.forEach(function(Ct){Ct.translate(),Ct.render()})}render(){var Ce;let Ct=this.axes,wt=this.colorAxis,Dt=this.renderer,jt=this.options.chart.axisLayoutRuns||2,re=Te=>{Te.forEach(Ke=>{Ke.visible&&Ke.render()})},le=0,Gt=!0,he,ve=0;for(let Te of(this.setTitle(),bt(this,"beforeMargins"),(Ce=this.getStacks)==null||Ce.call(this),this.getMargins(!0),this.setChartSize(),Ct)){let{options:Ke}=Te,{labels:rn}=Ke;if(this.hasCartesianSeries&&Te.horiz&&Te.visible&&rn.enabled&&Te.series.length&&Te.coll!=="colorAxis"&&!this.polar){le=Ke.tickLength,Te.createGroups();let un=new A(Te,0,"",!0),Qt=un.createLabel("x",rn);if(un.destroy(),Qt&&F(rn.reserveSpace,!B(Ke.crossing))&&(le=Qt.getBBox().height+rn.distance+Math.max(Ke.offset||0,0)),le){Qt==null||Qt.destroy();break}}}for(this.plotHeight=Math.max(this.plotHeight-le,0);(Gt||he||jt>1)&&ve(ve?1:1.1),he=Ke/this.plotHeight>(ve?1:1.05),ve++}this.drawChartBox(),this.hasCartesianSeries?re(Ct):wt&&wt.length&&re(wt),this.seriesGroup||(this.seriesGroup=Dt.g("series-group").attr({zIndex:3}).shadow(this.options.chart.seriesGroupShadow).add()),this.renderSeries(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0}addCredits(Ct){let wt=this,Dt=x(!0,this.options.credits,Ct);Dt.enabled&&!this.credits&&(this.credits=this.renderer.text(Dt.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){Dt.href&&(C.location.href=Dt.href)}).attr({align:Dt.position.align,zIndex:8}),wt.styledMode||this.credits.css(Dt.style),this.credits.add().align(Dt.position),this.credits.update=function(jt){wt.credits=wt.credits.destroy(),wt.addCredits(jt)})}destroy(){let Ct,wt=this,Dt=wt.axes,jt=wt.series,re=wt.container,le=re&&re.parentNode;for(bt(wt,"destroy"),wt.renderer.forExport?ct(Q,wt):Q[wt.index]=void 0,X.chartCount--,wt.renderTo.removeAttribute("data-highcharts-chart"),gt(wt),Ct=Dt.length;Ct--;)Dt[Ct]=Dt[Ct].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),Ct=jt.length;Ct--;)jt[Ct]=jt[Ct].destroy();["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(function(Gt){let he=wt[Gt];he&&he.destroy&&(wt[Gt]=he.destroy())}),re&&(re.innerHTML=T.emptyHTML,gt(re),le&&K(re)),y(wt,function(Gt,he){delete wt[he]})}firstRender(){var jt;let Ct=this,wt=Ct.options;Ct.getContainer(),Ct.resetMargins(),Ct.setChartSize(),Ct.propFromSeries(),Ct.getAxes();let Dt=w(wt.series)?wt.series:[];wt.series=[],Dt.forEach(function(re){Ct.initSeries(re)}),Ct.linkSeries(),Ct.setSortedData(),bt(Ct,"beforeRender"),Ct.render(),(jt=Ct.pointer)==null||jt.getChartPosition(),Ct.renderer.imgCount||Ct.hasLoaded||Ct.onload(),Ct.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(Ct){Ct&&this.index!==void 0&&Ct.apply(this,[this])},this),bt(this,"load"),bt(this,"render"),S(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:Ct,title:wt}=this;!Ct||this.accessibility||(this.renderer.boxWrapper.attr({role:"img","aria-label":(wt&&wt.element.textContent||"").replace(/this.transform({reset:!0,trigger:"zoom"}))}pan(Ct,wt){let Dt=this,jt=typeof wt=="object"?wt:{enabled:wt,type:"x"},re=jt.type,le=re&&Dt[{x:"xAxis",xy:"axes",y:"yAxis"}[re]].filter(he=>he.options.panningEnabled&&!he.options.isInternal),Gt=Dt.options.chart;Gt!=null&&Gt.panning&&(Gt.panning=jt),bt(this,"pan",{originalEvent:Ct},()=>{Dt.transform({axes:le,event:Ct,to:{x:Ct.chartX-(Dt.mouseDownX||0),y:Ct.chartY-(Dt.mouseDownY||0)},trigger:"pan"}),I(Dt.container,{cursor:"move"})})}transform(Ct){var rn,un,Qt,Kt,Jt;let{axes:wt=this.axes,event:Dt,from:jt={},reset:re,selection:le,to:Gt={},trigger:he}=Ct,{inverted:ve}=this,Ce=!1,Te,Ke;for(let Et of((rn=this.hoverPoints)==null||rn.forEach(Rt=>Rt.setState()),wt)){let{horiz:Rt,len:zt,minPointOffset:Ft=0,options:ce,reversed:Se}=Et,xe=Rt?"width":"height",Ze=Rt?"x":"y",pn=F(Gt[xe],Et.len),bn=F(jt[xe],Et.len),Ln=10>Math.abs(pn)?1:pn/bn,vn=(jt[Ze]||0)+bn/2-Et.pos,Tn=vn-(((un=Gt[Ze])!=null?un:Et.pos)+pn/2-Et.pos)/Ln,Qn=Se&&!ve||!Se&&ve?-1:1;if(!re&&(vn<0||vn>Et.len))continue;let dr=Et.toValue(Tn,!0)+(le||Et.isOrdinal?0:Ft*Qn),ye=Et.toValue(Tn+zt/Ln,!0)-(le||Et.isOrdinal?0:Ft*Qn||0),Fe=Et.allExtremes;if(dr>ye&&([dr,ye]=[ye,dr]),Ln===1&&!re&&Et.coll==="yAxis"&&!Fe){for(let an of Et.series){let gn=an.getExtremes(an.getProcessedData(!0).yData,!0);Fe!=null||(Fe={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),B(gn.dataMin)&&B(gn.dataMax)&&(Fe.dataMin=Math.min(gn.dataMin,Fe.dataMin),Fe.dataMax=Math.max(gn.dataMax,Fe.dataMax))}Et.allExtremes=Fe}let{dataMin:qe,dataMax:be,min:je,max:Ue}=dt(Et.getExtremes(),Fe||{}),Re=qe!=null?qe:ce.min,Ie=be!=null?be:ce.max,tn=ye-dr,Mn=Et.categories?0:Math.min(tn,Ie-Re),ke=Re-Mn*(S(ce.min)?0:ce.minPadding),on=Ie+Mn*(S(ce.max)?0:ce.maxPadding),_n=Et.allowZoomOutside||Ln===1||he!=="zoom"&&Ln>1,Pe=Math.min((Qt=ce.min)!=null?Qt:ke,ke,_n?je:ke),wn=Math.max((Kt=ce.max)!=null?Kt:on,on,_n?Ue:on);(!Et.isOrdinal||Et.options.overscroll||Ln!==1||re)&&(dr=1&&(ye=dr+tn)),ye>wn&&(ye=wn,Ln>=1&&(dr=ye-tn)),(re||Et.series.length&&(dr!==je||ye!==Ue)&&dr>=Pe&&ye<=wn)&&(le?le[Et.coll].push({axis:Et,min:dr,max:ye}):(Et.isPanning=he!=="zoom",Et.isPanning&&(Ke=!0),Et.setExtremes(re?void 0:dr,re?void 0:ye,!1,!1,{move:Tn,trigger:he,scale:Ln}),!re&&(dr>Pe||ye{delete Ct.selection,Ct.trigger="zoom",this.transform(Ct)}):(!Te||Ke||this.resetZoomButton?!Te&&this.resetZoomButton&&(this.resetZoomButton=this.resetZoomButton.destroy()):this.showResetZoom(),this.redraw(he==="zoom"&&((Jt=this.options.chart.animation)!=null?Jt:this.pointCount<100)))),Ce}}return dt($t.prototype,{callbacks:[],collectionsWithInit:{xAxis:[$t.prototype.addAxis,[!0]],yAxis:[$t.prototype.addAxis,[!1]],series:[$t.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroundColor","plotBackgroundImage","plotBorderColor","plotBorderWidth","plotShadow","shadow"],propsRequireReflow:["margin","marginTop","marginRight","marginBottom","marginLeft","spacing","spacingTop","spacingRight","spacingBottom","spacingLeft"],propsRequireUpdateSeries:["chart.inverted","chart.polar","chart.ignoreHiddenSeries","chart.type","colors","plotOptions","time","tooltip"]}),$t}),g(d,"Extensions/ScrollablePlotArea.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{stop:J}=L,{composed:X}=R,{addEvent:q,createElement:Z,css:Y,defined:V,merge:N,pushUnique:U}=$;function T(){let O=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!O&&(this.scrollablePlotArea=O=new M(this)),O==null||O.applyFixed()}function A(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}class M{static compose(H,z,c){U(X,this.compose)&&(q(H,"afterInit",A),q(z,"afterSetChartSize",D=>this.afterSetSize(D.target,D)),q(z,"render",T),q(c,"show",A))}static afterSetSize(H,z){let c,D,it,{minWidth:Q,minHeight:W}=H.options.chart.scrollablePlotArea||{},{clipBox:k,plotBox:_,inverted:C,renderer:h}=H;if(!h.forExport&&(Q?(H.scrollablePixelsX=c=Math.max(0,Q-H.chartWidth),c&&(H.scrollablePlotBox=N(H.plotBox),_.width=H.plotWidth+=c,k[C?"height":"width"]+=c,it=!0)):W&&(H.scrollablePixelsY=D=Math.max(0,W-H.chartHeight),V(D)&&(H.scrollablePlotBox=N(H.plotBox),_.height=H.plotHeight+=D,k[C?"width":"height"]+=D,it=!1)),V(it)&&!z.skipAxes))for(let l of H.axes)l.horiz===it&&(l.setAxisSize(),l.setAxisTranslation())}constructor(H){var u,v;let z,c=H.options.chart,D=st.getRendererType(),it=c.scrollablePlotArea||{},Q=this.moveFixedElements.bind(this),W={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};H.scrollablePixelsX&&(W.overflowX="auto"),H.scrollablePixelsY&&(W.overflowY="auto"),this.chart=H;let k=this.parentDiv=Z("div",{className:"highcharts-scrolling-parent"},{position:"relative"},H.renderTo),_=this.scrollingContainer=Z("div",{className:"highcharts-scrolling"},W,k),C=this.innerContainer=Z("div",{className:"highcharts-inner-container"},void 0,_),h=this.fixedDiv=Z("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(((u=c.style)==null?void 0:u.zIndex)||0)+2,top:0},void 0,!0),l=this.fixedRenderer=new D(h,H.chartWidth,H.chartHeight,c.style);this.mask=l.path().attr({fill:c.backgroundColor||"#fff","fill-opacity":(v=it.opacity)!=null?v:.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),_.parentNode.insertBefore(h,_),Y(H.renderTo,{overflow:"visible"}),q(H,"afterShowResetZoom",Q),q(H,"afterApplyDrilldown",Q),q(H,"afterLayOutTitles",Q),q(_,"scroll",()=>{let{pointer:I,hoverPoint:S}=H;I&&(delete I.chartPosition,S&&(z=S),I.runPointActions(void 0,z,!0))}),C.appendChild(H.container)}applyFixed(){var B;let{chart:H,fixedRenderer:z,isDirty:c,scrollingContainer:D}=this,{axisOffset:it,chartWidth:Q,chartHeight:W,container:k,plotHeight:_,plotLeft:C,plotTop:h,plotWidth:l,scrollablePixelsX:u=0,scrollablePixelsY:v=0}=H,{scrollPositionX:I=0,scrollPositionY:S=0}=H.options.chart.scrollablePlotArea||{},b=Q+u,K=W+v;z.setSize(Q,W),(c==null||c)&&(this.isDirty=!1,this.moveFixedElements()),J(H.container),Y(k,{width:`${b}px`,height:`${K}px`}),H.renderer.boxWrapper.attr({width:b,height:K,viewBox:[0,0,b,K].join(" ")}),(B=H.chartBackground)==null||B.attr({width:b,height:K}),Y(D,{width:`${Q}px`,height:`${W}px`}),V(c)||(D.scrollLeft=u*I,D.scrollTop=v*S);let ct=h-it[0]-1,et=C-it[3]-1,dt=h+_+it[2]+1,pt=C+l+it[1]+1,bt=C+l-u,Mt=h+_-v,w=[["M",0,0]];u?w=[["M",0,ct],["L",C-1,ct],["L",C-1,dt],["L",0,dt],["Z"],["M",bt,ct],["L",Q,ct],["L",Q,dt],["L",bt,dt],["Z"]]:v&&(w=[["M",et,0],["L",et,h-1],["L",pt,h-1],["L",pt,0],["Z"],["M",et,Mt],["L",et,W],["L",pt,W],["L",pt,Mt],["Z"]]),H.redrawTrigger!=="adjustHeight"&&this.mask.attr({d:w})}moveFixedElements(){let H,{container:z,inverted:c,scrollablePixelsX:D,scrollablePixelsY:it}=this.chart,Q=this.fixedRenderer,W=M.fixedSelectors;for(let k of(D&&!c?H=".highcharts-yaxis":D&&c||it&&!c?H=".highcharts-xaxis":it&&c&&(H=".highcharts-yaxis"),H&&W.push(`${H}:not(.highcharts-radial-axis)`,`${H}-labels:not(.highcharts-radial-axis-labels)`),W))[].forEach.call(z.querySelectorAll(k),_=>{(_.namespaceURI===Q.SVG_NS?Q.box:Q.box.parentNode).appendChild(_),_.style.pointerEvents="auto"})}}return M.fixedSelectors=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-drillup-button",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-range-selector-group",".highcharts-reset-zoom",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"],M}),g(d,"Core/Axis/Stacking/StackItem.js",[d["Core/Templating.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{format:$}=L,{series:J}=R,{destroyObjectProperties:X,fireEvent:q,isNumber:Z,pick:Y}=st;return class{constructor(V,N,U,T,A){let M=V.chart.inverted,O=V.reversed;this.axis=V;let H=this.isNegative=!!U!=!!O;this.options=N=N||{},this.x=T,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=A,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:N.align||(M?H?"left":"right":"center"),verticalAlign:N.verticalAlign||(M?"middle":H?"bottom":"top"),y:N.y,x:N.x},this.textAlign=N.textAlign||(M?H?"right":"left":"center")}destroy(){X(this,this.axis)}render(V){let N=this.axis.chart,U=this.options,T=U.format,A=T?$(T,this,N):U.formatter.call(this);if(this.label)this.label.attr({text:A,visibility:"hidden"});else{this.label=N.renderer.label(A,null,void 0,U.shape,void 0,void 0,U.useHTML,!1,"stack-labels");let M={r:U.borderRadius||0,text:A,padding:Y(U.padding,5),visibility:"hidden"};N.styledMode||(M.fill=U.backgroundColor,M.stroke=U.borderColor,M["stroke-width"]=U.borderWidth,this.label.css(U.style||{})),this.label.attr(M),this.label.added||this.label.add(V)}this.label.labelrank=N.plotSizeY,q(this,"afterRender")}setOffset(V,N,U,T,A,M){let{alignOptions:O,axis:H,label:z,options:c,textAlign:D}=this,it=H.chart,Q=this.getStackBox({xOffset:V,width:N,boxBottom:U,boxTop:T,defaultX:A,xAxis:M}),{verticalAlign:W}=O;if(z&&Q){let k=z.getBBox(void 0,0),_=z.padding,C=Y(c.overflow,"justify")==="justify",h;O.x=c.x||0,O.y=c.y||0;let{x:l,y:u}=this.adjustStackPosition({labelBox:k,verticalAlign:W,textAlign:D});Q.x-=l,Q.y-=u,z.align(O,!1,Q),(h=it.isInsidePlot(z.alignAttr.x+O.x+l,z.alignAttr.y+O.y+u))||(C=!1),C&&J.prototype.justifyDataLabel.call(H,z,O,z.alignAttr,k,Q),z.attr({x:z.alignAttr.x,y:z.alignAttr.y,rotation:c.rotation,rotationOriginX:k.width*{left:0,center:.5,right:1}[c.textAlign||"center"],rotationOriginY:k.height/2}),Y(!C&&c.crop,!0)&&(h=Z(z.x)&&Z(z.y)&&it.isInsidePlot(z.x-_+(z.width||0),z.y)&&it.isInsidePlot(z.x+_,z.y)),z[h?"show":"hide"]()}q(this,"afterSetOffset",{xOffset:V,width:N})}adjustStackPosition({labelBox:V,verticalAlign:N,textAlign:U}){let T={bottom:0,middle:1,top:2,right:1,center:0,left:-1},A=T[N],M=T[U];return{x:V.width/2+V.width/2*M,y:V.height/2*A}}getStackBox(V){let N=this.axis,U=N.chart,{boxTop:T,defaultX:A,xOffset:M,width:O,boxBottom:H}=V,z=N.stacking.usePercentage?100:Y(T,this.total,0),c=N.toPixels(z),D=V.xAxis||U.xAxis[0],it=Y(A,D.translate(this.x))+M,Q=Math.abs(c-N.toPixels(H||Z(N.min)&&N.logarithmic&&N.logarithmic.lin2log(N.min)||0)),W=U.inverted,k=this.isNegative;return W?{x:(k?c:c-Q)-U.plotLeft,y:D.height-it-O+D.top-U.plotTop,width:Q,height:O}:{x:it+D.transB-U.plotLeft,y:(k?c-Q:c)-U.plotTop,width:O,height:Q}}}}),g(d,"Core/Axis/Stacking/StackingAxis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{getDeferredAnimation:q}=L,{series:{prototype:Z}}=st,{addEvent:Y,correctFloat:V,defined:N,destroyObjectProperties:U,fireEvent:T,isArray:A,isNumber:M,objectEach:O,pick:H}=J;function z(){let h=this.inverted;this.axes.forEach(l=>{l.stacking&&l.stacking.stacks&&l.hasVisibleSeries&&(l.stacking.oldStacks=l.stacking.stacks)}),this.series.forEach(l=>{let u=l.xAxis&&l.xAxis.options||{};l.options.stacking&&l.reserveSpace()&&(l.stackKey=[l.type,H(l.options.stack,""),h?u.top:u.left,h?u.height:u.width].join(","))})}function c(){var l;let h=this.stacking;if(h){let u=h.stacks;O(u,(v,I)=>{U(v),delete u[I]}),(l=h.stackTotalGroup)==null||l.destroy()}}function D(){this.stacking||(this.stacking=new C(this))}function it(h,l,u,v){return!N(h)||h.x!==l||v&&h.stackKey!==v?h={x:l,index:0,key:v,stackKey:v}:h.index++,h.key=[u,l,h.index].join(","),h}function Q(){let h,l=this,u=l.yAxis,v=l.stackKey||"",I=u.stacking.stacks,S=l.processedXData,b=l.options.stacking,K=l[b+"Stacker"];K&&[v,"-"+v].forEach(ct=>{var Mt;let et=S.length,dt,pt,bt;for(;et--;)dt=S[et],h=l.getStackIndicator(h,dt,l.index,ct),pt=(Mt=I[ct])==null?void 0:Mt[dt],(bt=pt==null?void 0:pt.points[h.key||""])&&K.call(l,bt,pt,et)})}function W(h,l,u){let v=l.total?100/l.total:0;h[0]=V(h[0]*v),h[1]=V(h[1]*v),this.stackedYData[u]=h[1]}function k(h){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&!this.options.stacking&&this.chart.series.length>1?Z.setStackedPoints.call(this,h,"group"):h.stacking.resetStacks())}function _(h,l){var At,$t;let u,v,I,S,b,K,ct,et,dt,pt=l||this.options.stacking;if(!pt||!this.reserveSpace()||({group:"xAxis"}[pt]||"yAxis")!==h.coll)return;let bt=this.processedXData,Mt=this.processedYData,w=[],B=Mt.length,tt=this.options,nt=tt.threshold||0,x=tt.startFromThreshold?nt:0,y=tt.stack,F=l?`${this.type},${pt}`:this.stackKey||"",lt="-"+F,rt=this.negStacks,gt=h.stacking,vt=gt.stacks,Ot=gt.oldStacks;for(gt.stacksTouched+=1,ct=0;ct0&&this.singleStacks===!1&&(I.points[K][0]=I.points[this.index+","+et+",0"][0])):(delete I.points[K],delete I.points[this.index]);let Xt=I.total||0;pt==="percent"?(S=v?F:lt,Xt=rt&&(($t=vt[S])!=null&&$t[et])?(S=vt[S][et]).total=Math.max(S.total||0,Xt)+Math.abs(dt)||0:V(Xt+(Math.abs(dt)||0))):pt==="group"?(A(dt)&&(dt=dt[0]),dt!==null&&Xt++):Xt=V(Xt+(dt||0)),pt==="group"?I.cumulative=(Xt||1)-1:I.cumulative=V(H(I.cumulative,x)+(dt||0)),I.total=Xt,dt!==null&&(I.points[K].push(I.cumulative),w[ct]=I.cumulative,I.hasValidPoints=!0)}pt==="percent"&&(gt.usePercentage=!0),pt!=="group"&&(this.stackedYData=w),gt.oldStacks={}}class C{constructor(l){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=l}buildStacks(){let l,u,v=this.axis,I=v.series,S=v.coll==="xAxis",b=v.options.reversedStacks,K=I.length;for(this.resetStacks(),this.usePercentage=!1,u=K;u--;)l=I[b?u:K-u-1],S&&l.setGroupedPoints(v),l.setStackedPoints(v);if(!S)for(u=0;u{O(l,u=>{u.cumulative=u.total})}))}resetStacks(){O(this.stacks,l=>{O(l,(u,v)=>{M(u.touched)&&u.touched{O(ct,et=>{et.render(b)})}),b.animate({opacity:1},S)}}return(X||(X={})).compose=function(h,l,u){let v=l.prototype,I=u.prototype;v.getStacks||(Y(h,"init",D),Y(h,"destroy",c),v.getStacks=z,I.getStackIndicator=it,I.modifyStacks=Q,I.percentStacker=W,I.setGroupedPoints=k,I.setStackedPoints=_)},X}),g(d,"Series/Line/LineSeries.js",[d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{defined:$,merge:J,isObject:X}=st;class q extends L{drawGraph(){let Y=this.options,V=(this.gappedPath||this.getGraphPath).call(this),N=this.chart.styledMode;[this,...this.zones].forEach((U,T)=>{let A,M=U.graph,O=M?"animate":"attr",H=U.dashStyle||Y.dashStyle;M?(M.endX=this.preventGraphAnimation?null:V.xMap,M.animate({d:V})):V.length&&(U.graph=M=this.chart.renderer.path(V).addClass("highcharts-graph"+(T?` highcharts-zone-graph-${T-1} `:" ")+(T&&U.className||"")).attr({zIndex:1}).add(this.group)),M&&!N&&(A={stroke:!T&&Y.lineColor||U.color||this.color||"#cccccc","stroke-width":Y.lineWidth||0,fill:this.fillGraph&&this.color||"none"},H?A.dashstyle=H:Y.linecap!=="square"&&(A["stroke-linecap"]=A["stroke-linejoin"]="round"),M[O](A).shadow(T<2&&Y.shadow&&J({filterUnits:"userSpaceOnUse"},X(Y.shadow)?Y.shadow:{}))),M&&(M.startX=V.xMap,M.isArea=V.isArea)})}getGraphPath(Y,V,N){let U=this,T=U.options,A=[],M=[],O,H=T.step,z=(Y=Y||U.points).reversed;return z&&Y.reverse(),(H={right:1,center:2}[H]||H&&3)&&z&&(H=4-H),(Y=this.getValidPoints(Y,!1,!(T.connectNulls&&!V&&!N))).forEach(function(c,D){let it,Q=c.plotX,W=c.plotY,k=Y[D-1],_=c.isNull||typeof W!="number";(c.leftCliff||k&&k.rightCliff)&&!N&&(O=!0),_&&!$(V)&&D>0?O=!T.connectNulls:_&&!V?O=!0:(D===0||O?it=[["M",c.plotX,c.plotY]]:U.getPointSpline?it=[U.getPointSpline(Y,c,D)]:H?(it=H===1?[["L",k.plotX,W]]:H===2?[["L",(k.plotX+Q)/2,k.plotY],["L",(k.plotX+Q)/2,W]]:[["L",Q,k.plotY]]).push(["L",Q,W]):it=[["L",Q,W]],M.push(c.x),H&&(M.push(c.x),H===2&&M.push(c.x)),A.push.apply(A,it),O=!1)}),A.xMap=M,U.graphPath=A,A}}return q.defaultOptions=J(L.defaultOptions,{legendSymbol:"lineMarker"}),R.registerSeriesType("line",q),q}),g(d,"Series/Area/AreaSeriesDefaults.js",[],function(){return{threshold:0,legendSymbol:"areaMarker"}}),g(d,"Series/Area/AreaSeries.js",[d["Series/Area/AreaSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{line:$}}=R,{extend:J,merge:X,objectEach:q,pick:Z}=st;class Y extends ${drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:N,options:U}=this;[this,...this.zones].forEach((T,A)=>{var c;let M={},O=T.fillColor||U.fillColor,H=T.area,z=H?"animate":"attr";H?(H.endX=this.preventGraphAnimation?null:N.xMap,H.animate({d:N})):(M.zIndex=0,(H=T.area=this.chart.renderer.path(N).addClass("highcharts-area"+(A?` highcharts-zone-area-${A-1} `:" ")+(A&&T.className||"")).add(this.group)).isArea=!0),this.chart.styledMode||(M.fill=O||T.color||this.color,M["fill-opacity"]=O?1:(c=U.fillOpacity)!=null?c:.75,H.css({pointerEvents:this.stickyTracking?"none":"auto"})),H[z](M),H.startX=N.xMap,H.shiftUnit=U.step?2:1})}getGraphPath(N){let U,T,A,M=$.prototype.getGraphPath,O=this.options,H=O.stacking,z=this.yAxis,c=[],D=[],it=this.index,Q=z.stacking.stacks[this.stackKey],W=O.threshold,k=Math.round(z.getThreshold(O.threshold)),_=Z(O.connectNulls,H==="percent"),C=function(S,b,K){let ct=N[S],et=H&&Q[ct.x].points[it],dt=ct[K+"Null"]||0,pt=ct[K+"Cliff"]||0,bt,Mt,w=!0;pt||dt?(bt=(dt?et[0]:et[1])+pt,Mt=et[0]+pt,w=!!dt):!H&&N[b]&&N[b].isNull&&(bt=Mt=W),bt!==void 0&&(D.push({plotX:U,plotY:bt===null?k:z.getThreshold(bt),isNull:w,isCliff:!0}),c.push({plotX:U,plotY:Mt===null?k:z.getThreshold(Mt),doCurve:!1}))};N=N||this.points,H&&(N=this.getStackPoints(N));for(let S=0,b=N.length;S1&&H&&D.some(S=>S.isCliff)&&(v.hasStackedCliffs=I.hasStackedCliffs=!0),v.xMap=h.xMap,this.areaPath=v,I}getStackPoints(N){let U=this,T=[],A=[],M=this.xAxis,O=this.yAxis,H=O.stacking.stacks[this.stackKey],z={},c=O.series,D=c.length,it=O.options.reversedStacks?1:-1,Q=c.indexOf(U);if(N=N||this.points,this.options.stacking){for(let k=0;kk.visible);A.forEach(function(k,_){let C=0,h,l;if(z[k]&&!z[k].isNull)T.push(z[k]),[-1,1].forEach(function(u){let v=u===1?"rightNull":"leftNull",I=H[A[_+u]],S=0;if(I){let b=Q;for(;b>=0&&b=0&&uQ&&U>O?(U=Math.max(Q,O),A=2*O-U):Uk&&A>O?(A=Math.max(k,O),U=2*O-A):A1){let l=this.xAxis.series.filter(S=>S.visible).map(S=>S.index),u=0,v=0;D((h=this.xAxis.stacking)==null?void 0:h.stacks,S=>{if(typeof _.x=="number"){let b=S[_.x.toString()];if(b&&O(b.points[this.index])){let K=Object.keys(b.points).filter(ct=>!ct.match(",")&&b.points[ct]&&b.points[ct].length>1).map(parseFloat).filter(ct=>l.indexOf(ct)!==-1).sort((ct,et)=>et-ct);u=K.indexOf(this.index),v=K.length}}}),u=this.xAxis.reversed?v-1-u:u;let I=(v-1)*C.paddedWidth+k;W=(_.plotX||0)+I/2-k-u*C.paddedWidth}return W}translate(){let W=this,k=W.chart,_=W.options,C=W.dense=W.closestPointRange*W.xAxis.transA<2,h=W.borderWidth=c(_.borderWidth,C?0:1),l=W.xAxis,u=W.yAxis,v=_.threshold,I=c(_.minPointLength,5),S=W.getColumnMetrics(),b=S.width,K=W.pointXOffset=S.offset,ct=W.dataMin,et=W.dataMax,dt=W.translatedThreshold=u.getThreshold(v),pt=W.barW=Math.max(b,1+2*h);_.pointPadding&&(pt=Math.ceil(pt)),J.prototype.translate.apply(W),W.points.forEach(function(bt){let Mt=c(bt.yBottom,dt),w=999+Math.abs(Mt),B=bt.plotX||0,tt=N(bt.plotY,-w,u.len+w),nt,x=Math.min(tt,Mt),y=Math.max(tt,Mt)-x,F=b,lt=B+K,rt=pt;I&&Math.abs(y)I?Mt-I:dt-(nt?I:0)),T(bt.options.pointWidth)&&(lt-=Math.round(((F=rt=Math.ceil(bt.options.pointWidth))-b)/2)),_.centerInCategory&&!_.stacking&&(lt=W.adjustForMissingColumns(lt,F,bt,S)),bt.barX=lt,bt.pointWidth=F,bt.tooltipPos=k.inverted?[N(u.len+u.pos-k.plotLeft-tt,u.pos-k.plotLeft,u.len+u.pos-k.plotLeft),l.len+l.pos-k.plotTop-lt-rt/2,y]:[l.left-k.plotLeft+lt+rt/2,N(tt+u.pos-k.plotTop,u.pos-k.plotTop,u.len+u.pos-k.plotTop),y],bt.shapeType=W.pointClass.prototype.shapeType||"roundedRect",bt.shapeArgs=W.crispCol(lt,bt.isNull?dt:x,rt,bt.isNull?0:y)}),M(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(W,k){let _=this.options,C=this.pointAttrToOptions||{},h=C.stroke||"borderColor",l=C["stroke-width"]||"borderWidth",u,v,I,S=W&&W.color||this.color,b=W&&W[h]||_[h]||S,K=W&&W.options.dashStyle||_.dashStyle,ct=W&&W[l]||_[l]||this[l]||0,et=c(W&&W.opacity,_.opacity,1);W&&this.zones.length&&(v=W.getZone(),S=W.options.color||v&&(v.color||W.nonZonedColor)||this.color,v&&(b=v.borderColor||b,K=v.dashStyle||K,ct=v.borderWidth||ct)),k&&W&&(I=(u=z(_.states[k],W.options.states&&W.options.states[k]||{})).brightness,S=u.color||I!==void 0&&Y(S).brighten(u.brightness).get()||S,b=u[h]||b,ct=u[l]||ct,K=u.dashStyle||K,et=c(u.opacity,et));let dt={fill:S,stroke:b,"stroke-width":ct,opacity:et};return K&&(dt.dashstyle=K),dt}drawPoints(W=this.points){let k,_=this,C=this.chart,h=_.options,l=C.renderer,u=h.animationLimit||250;W.forEach(function(v){let I=v.plotY,S=v.graphic,b=!!S,K=S&&C.pointCounth==null?void 0:h.enabled)}function c(h,l,u,v,I){var tt;let{chart:S,enabledDataSorting:b}=this,K=this.isCartesian&&S.inverted,ct=h.plotX,et=h.plotY,dt=u.rotation||0,pt=q(ct)&&q(et)&&S.isInsidePlot(ct,Math.round(et),{inverted:K,paneCoordinates:!0,series:this}),bt=dt===0&&A(u.overflow,b?"none":"justify")==="justify",Mt=this.visible&&h.visible!==!1&&q(ct)&&(h.series.forceDL||b&&!bt||pt||A(u.inside,!!this.options.stacking)&&v&&S.isInsidePlot(ct,K?v.x+1:v.y+v.height-1,{inverted:K,paneCoordinates:!0,series:this})),w=h.pos();if(Mt&&w){var B;let nt=l.getBBox(),x=l.getBBox(void 0,0),y={right:1,center:.5}[u.align||0]||0,F={bottom:1,middle:.5}[u.verticalAlign||0]||0;if(v=Z({x:w[0],y:Math.round(w[1]),width:0,height:0},v||{}),u.alignTo==="plotEdges"&&this.isCartesian&&(v[K?"x":"y"]=0,v[K?"width":"height"]=((tt=this.yAxis)==null?void 0:tt.len)||0),Z(u,{width:nt.width,height:nt.height}),B=v,b&&this.xAxis&&!bt&&this.setDataLabelStartPos(h,l,I,pt,B),l.align(U(u,{width:x.width,height:x.height}),!1,v,!1),l.alignAttr.x+=y*(x.width-nt.width),l.alignAttr.y+=F*(x.height-nt.height),l[l.placed?"animate":"attr"]({x:l.alignAttr.x+(nt.width-x.width)/2,y:l.alignAttr.y+(nt.height-x.height)/2,rotationOriginX:(l.width||0)/2,rotationOriginY:(l.height||0)/2}),bt&&v.height>=0)this.justifyDataLabel(l,u,l.alignAttr,nt,v,I);else if(A(u.crop,!0)){let{x:lt,y:rt}=l.alignAttr;Mt=S.isInsidePlot(lt,rt,{paneCoordinates:!0,series:this})&&S.isInsidePlot(lt+nt.width-1,rt+nt.height-1,{paneCoordinates:!0,series:this})}u.shape&&!dt&&l[I?"attr":"animate"]({anchorX:w[0],anchorY:w[1]})}I&&b&&(l.placed=!1),Mt||b&&!bt?(l.show(),l.placed=!0):(l.hide(),l.placed=!1)}function D(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function it(h){let l=this.hasRendered||0,u=this.initDataLabelsGroup().attr({opacity:+l});return!l&&u&&(this.visible&&u.show(),this.options.animation?u.animate({opacity:1},h):u.attr({opacity:1})),u}function Q(h){var Mt;let l;h=h||this.points;let u=this,v=u.chart,I=u.options,S=v.renderer,{backgroundColor:b,plotBackgroundColor:K}=v.options.chart,ct=S.getContrast(N(K)&&K||N(b)&&b||"#000000"),et=_(u),{animation:dt,defer:pt}=et[0],bt=pt?J(v,dt,u):{defer:0,duration:0};Y(this,"drawDataLabels"),(Mt=u.hasDataLabels)!=null&&Mt.call(u)&&(l=this.initDataLabels(bt),h.forEach(w=>{var nt,x;let B=w.dataLabels||[];O(k(et,w.dlOptions||((nt=w.options)==null?void 0:nt.dataLabels))).forEach((y,F)=>{let lt=y.enabled&&(w.visible||w.dataLabelOnHidden)&&(!w.isNull||w.dataLabelOnNull)&&function(le,Gt){let he=Gt.filter;if(he){let ve=he.operator,Ce=le[he.property],Te=he.value;return ve===">"&&Ce>Te||ve==="<"&&Ce="&&Ce>=Te||ve==="<="&&Ce<=Te||ve==="=="&&Ce==Te||ve==="==="&&Ce===Te||ve==="!="&&Ce!=Te||ve==="!=="&&Ce!==Te}return!0}(w,y),{backgroundColor:rt,borderColor:gt,distance:vt,style:Ot={}}=y,At,$t,Xt,Ct,wt={},Dt=B[F],jt=!Dt,re;lt&&($t=A(y[w.formatPrefix+"Format"],y.format),At=w.getLabelConfig(),Xt=q($t)?X($t,At,v):(y[w.formatPrefix+"Formatter"]||y.formatter).call(At,y),Ct=y.rotation,!v.styledMode&&(Ot.color=A(y.color,Ot.color,N(u.color)?u.color:void 0,"#000000"),Ot.color==="contrast"?(rt!=="none"&&(re=rt),w.contrastColor=S.getContrast(re!=="auto"&&re||w.color||u.color),Ot.color=re||!q(vt)&&y.inside||0>M(vt||0)||I.stacking?w.contrastColor:ct):delete w.contrastColor,I.cursor&&(Ot.cursor=I.cursor)),wt={r:y.borderRadius||0,rotation:Ct,padding:y.padding,zIndex:1},v.styledMode||(wt.fill=rt==="auto"?w.color:rt,wt.stroke=gt==="auto"?w.color:gt,wt["stroke-width"]=y.borderWidth),T(wt,(le,Gt)=>{le===void 0&&delete wt[Gt]})),!Dt||lt&&q(Xt)&&!!Dt.div==!!y.useHTML&&(Dt.rotation&&y.rotation||Dt.rotation===y.rotation)||(Dt=void 0,jt=!0),lt&&q(Xt)&&(Dt?wt.text=Xt:(Dt=S.label(Xt,0,0,y.shape,void 0,void 0,y.useHTML,void 0,"data-label")).addClass(" highcharts-data-label-color-"+w.colorIndex+" "+(y.className||"")+(y.useHTML?" highcharts-tracker":"")),Dt&&(Dt.options=y,Dt.attr(wt),v.styledMode?Ot.width&&Dt.css({width:Ot.width,textOverflow:Ot.textOverflow}):Dt.css(Ot).shadow(y.shadow),Y(Dt,"beforeAddingDataLabel",{labelOptions:y,point:w}),Dt.added||Dt.add(l),u.alignDataLabel(w,Dt,y,void 0,jt),Dt.isActive=!0,B[F]&&B[F]!==Dt&&B[F].destroy(),B[F]=Dt))});let tt=B.length;for(;tt--;)B[tt]&&B[tt].isActive?B[tt].isActive=!1:((x=B[tt])==null||x.destroy(),B.splice(tt,1));w.dataLabel=B[0],w.dataLabels=B})),Y(this,"afterDrawDataLabels")}function W(h,l,u,v,I,S){let b=this.chart,K=l.align,ct=l.verticalAlign,et=h.box?0:h.padding||0,dt=b.inverted?this.yAxis:this.xAxis,pt=dt?dt.left-b.plotLeft:0,bt=b.inverted?this.xAxis:this.yAxis,Mt=bt?bt.top-b.plotTop:0,{x:w=0,y:B=0}=l,tt,nt;return(tt=(u.x||0)+et+pt)<0&&(K==="right"&&w>=0?(l.align="left",l.inside=!0):w-=tt,nt=!0),(tt=(u.x||0)+v.width-et+pt)>b.plotWidth&&(K==="left"&&w<=0?(l.align="right",l.inside=!0):w+=b.plotWidth-tt,nt=!0),(tt=u.y+et+Mt)<0&&(ct==="bottom"&&B>=0?(l.verticalAlign="top",l.inside=!0):B-=tt,nt=!0),(tt=(u.y||0)+v.height-et+Mt)>b.plotHeight&&(ct==="top"&&B<=0?(l.verticalAlign="bottom",l.inside=!0):B+=b.plotHeight-tt,nt=!0),nt&&(l.x=w,l.y=B,h.placed=!S,h.align(l,void 0,I)),nt}function k(h,l){let u=[],v;if(V(h)&&!V(l))u=h.map(function(I){return U(I,l)});else if(V(l)&&!V(h))u=l.map(function(I){return U(h,I)});else if(V(h)||V(l)){if(V(h)&&V(l))for(v=Math.max(h.length,l.length);v--;)u[v]=U(h[v],l[v])}else u=U(h,l);return u}function _(h){var u,v;let l=h.chart.options.plotOptions;return O(k(k((u=l==null?void 0:l.series)==null?void 0:u.dataLabels,(v=l==null?void 0:l[h.type])==null?void 0:v.dataLabels),h.options.dataLabels))}function C(h,l,u,v,I){let S=this.chart,b=S.inverted,K=this.xAxis,ct=K.reversed,et=((b?l.height:l.width)||0)/2,dt=h.pointWidth,pt=dt?dt/2:0;l.startXPos=b?I.x:ct?-et-pt:K.width-et+pt,l.startYPos=b?ct?this.yAxis.height-et+pt:-et-pt:I.y,v?l.visibility==="hidden"&&(l.show(),l.attr({opacity:0}).animate({opacity:1})):l.attr({opacity:1}).animate({opacity:0},void 0,l.hide),S.hasRendered&&(u&&l.attr({x:l.startXPos,y:l.startYPos}),l.placed=!0)}H.compose=function(h){let l=h.prototype;l.initDataLabels||(l.initDataLabels=it,l.initDataLabelsGroup=D,l.alignDataLabel=c,l.drawDataLabels=Q,l.justifyDataLabel=W,l.setDataLabelStartPos=C,l.hasDataLabels=z)}}($||($={})),$}),g(d,"Series/Column/ColumnDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{composed:X}=R,{series:q}=st,{merge:Z,pick:Y,pushUnique:V}=$;return function(N){function U(T,A,M,O,H){let z=this.chart.inverted,c=T.series,D=(c.xAxis?c.xAxis.len:this.chart.plotSizeX)||0,it=(c.yAxis?c.yAxis.len:this.chart.plotSizeY)||0,Q=T.dlBox||T.shapeArgs,W=Y(T.below,T.plotY>Y(this.translatedThreshold,it)),k=Y(M.inside,!!this.options.stacking);if(Q){if(O=Z(Q),!(M.overflow==="allow"&&M.crop===!1)){O.y<0&&(O.height+=O.y,O.y=0);let _=O.y+O.height-it;_>0&&_\u25CF {series.name}
',pointFormat:"x: {point.x}
y: {point.y}
"}}}),g(d,"Series/Scatter/ScatterSeries.js",[d["Series/Scatter/ScatterSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{column:$,line:J}=R.seriesTypes,{addEvent:X,extend:q,merge:Z}=st;class Y extends J{applyJitter(){let N=this,U=this.options.jitter,T=this.points.length;U&&this.points.forEach(function(A,M){["x","y"].forEach(function(O,H){if(U[O]&&!A.isNull){let z=`plot${O.toUpperCase()}`,c=N[`${O}Axis`],D=U[O]*c.transA;if(c&&!c.logarithmic){let it=Math.max(0,(A[z]||0)-D),Q=Math.min(c.len,(A[z]||0)+D);A[z]=it+(Q-it)*function(W){let k=1e4*Math.sin(W);return k-Math.floor(k)}(M+H*T),O==="x"&&(A.clientX=A.plotX)}}})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}}return Y.defaultOptions=Z(J.defaultOptions,L),q(Y.prototype,{drawTracker:$.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]}),X(Y,"afterTranslate",function(){this.applyJitter()}),R.registerSeriesType("scatter",Y),Y}),g(d,"Series/CenteredUtilities.js",[d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Utilities.js"]],function(L,R,st){var $,J;let{deg2rad:X}=L,{fireEvent:q,isNumber:Z,pick:Y,relativeLength:V}=st;return(J=$||($={})).getCenter=function(){let N=this.options,U=this.chart,T=2*(N.slicedOffset||0),A=U.plotWidth-2*T,M=U.plotHeight-2*T,O=N.center,H=Math.min(A,M),z=N.thickness,c,D=N.size,it=N.innerSize||0,Q,W;typeof D=="string"&&(D=parseFloat(D)),typeof it=="string"&&(it=parseFloat(it));let k=[Y(O[0],"50%"),Y(O[1],"50%"),Y(D&&D<0?void 0:N.size,"100%"),Y(it&&it<0?void 0:N.innerSize||0,"0%")];for(!U.angular||this instanceof R||(k[3]=0),Q=0;Q<4;++Q)W=k[Q],c=Q<2||Q===2&&/%$/.test(W),k[Q]=V(W,[A,M,H,k[2]][Q])+(c?T:0);return k[3]>k[2]&&(k[3]=k[2]),Z(z)&&2*z0&&(k[3]=k[2]-2*z),q(this,"afterGetCenter",{positions:k}),k},J.getStartAndEndRadians=function(N,U){let T=Z(N)?N:0,A=Z(U)&&U>T&&U-T<360?U:T+360;return{start:X*(T+-90),end:X*(A+-90)}},$}),g(d,"Series/Pie/PiePoint.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st){let{setAnimation:$}=L,{addEvent:J,defined:X,extend:q,isNumber:Z,pick:Y,relativeLength:V}=st;class N extends R{getConnectorPath(T){let A=T.dataLabelPosition,M=T.options||{},O=M.connectorShape,H=this.connectorShapes[O]||O;return A&&H.call(this,Mi(xr({},A.computed),{alignment:A.alignment}),A.connectorPosition,M)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(T){let A=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(A.x,A.y,A.r+T,A.r+T,{innerR:A.r-1,start:A.start,end:A.end,borderRadius:A.borderRadius})}constructor(T,A,M){var H;super(T,A,M),this.half=0,(H=this.name)!=null||(this.name="Slice");let O=z=>{this.slice(z.type==="select")};J(this,"select",O),J(this,"unselect",O)}isValid(){return Z(this.y)&&this.y>=0}setVisible(T,A=!0){T!==this.visible&&this.update({visible:T!=null?T:!this.visible},A,void 0,!1)}slice(T,A,M){let O=this.series;$(M,O.chart),A=Y(A,!0),this.sliced=this.options.sliced=T=X(T)?T:!this.sliced,O.options.data[O.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}}return q(N.prototype,{connectorShapes:{fixedOffset:function(U,T,A){let M=T.breakAt,O=T.touchingSliceAt,H=A.softConnector?["C",U.x+(U.alignment==="left"?-5:5),U.y,2*M.x-O.x,2*M.y-O.y,M.x,M.y]:["L",M.x,M.y];return[["M",U.x,U.y],H,["L",O.x,O.y]]},straight:function(U,T){let A=T.touchingSliceAt;return[["M",U.x,U.y],["L",A.x,A.y]]},crookedLine:function(U,T,A){let{breakAt:M,touchingSliceAt:O}=T,{series:H}=this,[z,c,D]=H.center,it=D/2,{plotLeft:Q,plotWidth:W}=H.chart,k=U.alignment==="left",{x:_,y:C}=U,h=M.x;if(A.crookDistance){let u=V(A.crookDistance,1);h=k?z+it+(W+Q-z-it)*(1-u):Q+(z-it)*u}else h=z+(c-C)*Math.tan((this.angle||0)-Math.PI/2);let l=[["M",_,C]];return(k?h<=_&&h>=M.x:h>=_&&h<=M.x)&&l.push(["L",h,C]),l.push(["L",M.x,M.y],["L",O.x,O.y]),l}}}),N}),g(d,"Series/Pie/PieSeriesDefaults.js",[],function(){return{borderRadius:3,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{connectorPadding:5,connectorShape:"crookedLine",crookDistance:void 0,distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}}}),g(d,"Series/Pie/PieSeries.js",[d["Series/CenteredUtilities.js"],d["Series/Column/ColumnSeries.js"],d["Core/Globals.js"],d["Series/Pie/PiePoint.js"],d["Series/Pie/PieSeriesDefaults.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y){let{getStartAndEndRadians:V}=L,{noop:N}=st,{clamp:U,extend:T,fireEvent:A,merge:M,pick:O}=Y;class H extends X{animate(c){let D=this,it=D.points,Q=D.startAngleRad;c||it.forEach(function(W){let k=W.graphic,_=W.shapeArgs;k&&_&&(k.attr({r:O(W.startR,D.center&&D.center[3]/2),start:Q,end:Q}),k.animate({r:_.r,start:_.start,end:_.end},D.options.animation))})}drawEmpty(){let c,D,it=this.startAngleRad,Q=this.endAngleRad,W=this.options;this.total===0&&this.center?(c=this.center[0],D=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(c,D,this.center[1]/2,0,it,Q).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:Z.arc(c,D,this.center[2]/2,0,{start:it,end:Q,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":W.borderWidth,fill:W.fillColor||"none",stroke:W.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let c=this.chart.renderer;this.points.forEach(function(D){D.graphic&&D.hasNewShapeType()&&(D.graphic=D.graphic.destroy()),D.graphic||(D.graphic=c[D.shapeType](D.shapeArgs).add(D.series.group),D.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(c,D,it,Q){let W=this.center,k=this.radii?this.radii[it.index]||0:W[2]/2,_=Q.dataLabelPosition,C=(_==null?void 0:_.distance)||0,h=Math.asin(U((c-W[1])/(k+C),-1,1));return W[0]+Math.cos(h)*(k+C)*(D?-1:1)+(C>0?(D?-1:1)*(Q.padding||0):0)}hasData(){return!!this.processedXData.length}redrawPoints(){let c,D,it,Q,W=this,k=W.chart;this.drawEmpty(),W.group&&!k.styledMode&&W.group.shadow(W.options.shadow),W.points.forEach(function(_){let C={};D=_.graphic,!_.isNull&&D?(Q=_.shapeArgs,c=_.getTranslate(),k.styledMode||(it=W.pointAttribs(_,_.selected&&"select")),_.delayedRendering?(D.setRadialReference(W.center).attr(Q).attr(c),k.styledMode||D.attr(it).attr({"stroke-linejoin":"round"}),_.delayedRendering=!1):(D.setRadialReference(W.center),k.styledMode||M(!0,C,it),M(!0,C,Q,c),D.animate(C)),D.attr({visibility:_.visible?"inherit":"hidden"}),D.addClass(_.getClassName(),!0)):D&&(_.graphic=D.destroy())})}sortByAngle(c,D){c.sort(function(it,Q){return it.angle!==void 0&&(Q.angle-it.angle)*D})}translate(c){A(this,"translate"),this.generatePoints();let D=this.options,it=D.slicedOffset,Q=V(D.startAngle,D.endAngle),W=this.startAngleRad=Q.start,k=(this.endAngleRad=Q.end)-W,_=this.points,C=D.ignoreHiddenPoint,h=_.length,l,u,v,I,S,b,K,ct=0;for(c||(this.center=c=this.getCenter()),b=0;b1.5*Math.PI?v-=2*Math.PI:v<-Math.PI/2&&(v+=2*Math.PI),K.slicedTranslation={translateX:Math.round(Math.cos(v)*it),translateY:Math.round(Math.sin(v)*it)},I=Math.cos(v)*c[2]/2,S=Math.sin(v)*c[2]/2,K.tooltipPos=[c[0]+.7*I,c[1]+.7*S],K.half=v<-Math.PI/2||v>Math.PI/2?1:0,K.angle=v}A(this,"afterTranslate")}updateTotals(){let c=this.points,D=c.length,it=this.options.ignoreHiddenPoint,Q,W,k=0;for(Q=0;Q0&&(W.visible||!it)?W.y/k*100:0,W.total=k}}return H.defaultOptions=M(X.defaultOptions,J),T(H.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:R.prototype.drawTracker,getCenter:L.getCenter,getSymbol:N,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:R.prototype.pointAttribs,pointClass:$,requireSorting:!1,searchPoint:N,trackerGroups:["group","dataLabelsGroup"]}),q.registerSeriesType("pie",H),H}),g(d,"Series/Pie/PieDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{composed:q,noop:Z}=R,{distribute:Y}=st,{series:V}=$,{arrayMax:N,clamp:U,defined:T,pick:A,pushUnique:M,relativeLength:O}=J;return function(H){let z={radialDistributionY:function(W,k){var _;return(((_=k.dataLabelPosition)==null?void 0:_.top)||0)+W.distributeBox.pos},radialDistributionX:function(W,k,_,C,h){let l=h.dataLabelPosition;return W.getX(_<((l==null?void 0:l.top)||0)+2||_>((l==null?void 0:l.bottom)||0)-2?C:_,k.half,k,h)},justify:function(W,k,_,C){var h;return C[0]+(W.half?-1:1)*(_+(((h=k.dataLabelPosition)==null?void 0:h.distance)||0))},alignToPlotEdges:function(W,k,_,C){let h=W.getBBox().width;return k?h+C:_-h-C},alignToConnectors:function(W,k,_,C){let h=0,l;return W.forEach(function(u){(l=u.dataLabel.getBBox().width)>h&&(h=l)}),k?h+C:_-h-C}};function c(W,k){let{center:_,options:C}=this,h=_[2]/2,l=W.angle||0,u=Math.cos(l),v=Math.sin(l),I=_[0]+u*h,S=_[1]+v*h,b=Math.min((C.slicedOffset||0)+(C.borderWidth||0),k/5);return{natural:{x:I+u*k,y:S+v*k},computed:{},alignment:k<0?"center":W.half?"right":"left",connectorPosition:{breakAt:{x:I+u*b,y:S+v*b},touchingSliceAt:{x:I,y:S}},distance:k}}function D(){var Mt;let W=this,k=W.points,_=W.chart,C=_.plotWidth,h=_.plotHeight,l=_.plotLeft,u=Math.round(_.chartWidth/3),v=W.center,I=v[2]/2,S=v[1],b=[[],[]],K=[0,0,0,0],ct=W.dataLabelPositioners,et,dt,pt,bt=0;W.visible&&((Mt=W.hasDataLabels)!=null&&Mt.call(W))&&(k.forEach(w=>{(w.dataLabels||[]).forEach(B=>{B.shortened&&(B.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),B.shortened=!1)})}),V.prototype.drawDataLabels.apply(W),k.forEach(w=>{(w.dataLabels||[]).forEach((B,tt)=>{var F;let nt=v[2]/2,x=B.options,y=O((x==null?void 0:x.distance)||0,nt);tt===0&&b[w.half].push(w),!T((F=x==null?void 0:x.style)==null?void 0:F.width)&&B.getBBox().width>u&&(B.css({width:Math.round(.7*u)+"px"}),B.shortened=!0),B.dataLabelPosition=this.getDataLabelPosition(w,y),bt=Math.max(bt,y)})}),b.forEach((w,B)=>{let tt=w.length,nt=[],x,y,F=0,lt;tt&&(W.sortByAngle(w,B-.5),bt>0&&(x=Math.max(0,S-I-bt),y=Math.min(S+I+bt,_.plotHeight),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{var Ot;let vt=gt.dataLabelPosition;vt&&vt.distance>0&&(vt.top=Math.max(0,S-I-vt.distance),vt.bottom=Math.min(S+I+vt.distance,_.plotHeight),F=gt.getBBox().height||21,gt.lineHeight=_.renderer.fontMetrics(gt.text||gt).h+2*gt.padding,rt.distributeBox={target:(((Ot=gt.dataLabelPosition)==null?void 0:Ot.natural.y)||0)-vt.top+gt.lineHeight/2,size:F,rank:rt.y},nt.push(rt.distributeBox))})}),Y(nt,lt=y+F-x,lt/5)),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{let vt=gt.options||{},Ot=rt.distributeBox,At=gt.dataLabelPosition,$t=(At==null?void 0:At.natural.y)||0,Xt=vt.connectorPadding||0,Ct=gt.lineHeight||21,wt=(Ct-gt.getBBox().height)/2,Dt=0,jt=$t,re="inherit";if(At){if(nt&&T(Ot)&&At.distance>0&&(Ot.pos===void 0?re="hidden":(pt=Ot.size,jt=ct.radialDistributionY(rt,gt))),vt.justify)Dt=ct.justify(rt,gt,I,v);else switch(vt.alignTo){case"connectors":Dt=ct.alignToConnectors(w,B,C,l);break;case"plotEdges":Dt=ct.alignToPlotEdges(gt,B,C,l);break;default:Dt=ct.radialDistributionX(W,rt,jt-wt,$t,gt)}if(At.attribs={visibility:re,align:At.alignment},At.posAttribs={x:Dt+(vt.x||0)+({left:Xt,right:-Xt}[At.alignment]||0),y:jt+(vt.y||0)-Ct/2},At.computed.x=Dt,At.computed.y=jt-wt,A(vt.crop,!0)){let le;Dt-(dt=gt.getBBox().width)C-Xt&&B===0&&(le=Math.round(Dt+dt-C+Xt),K[1]=Math.max(le,K[1])),jt-pt/2<0?K[0]=Math.max(Math.round(-jt+pt/2),K[0]):jt+pt/2>h&&(K[2]=Math.max(Math.round(jt+pt/2-h),K[2])),At.sideOverflow=le}}})}))}),(N(K)===0||this.verifyDataLabelOverflow(K))&&(this.placeDataLabels(),this.points.forEach(w=>{(w.dataLabels||[]).forEach(B=>{var y;let{connectorColor:tt,connectorWidth:nt=1}=B.options||{},x=B.dataLabelPosition;if(nt){let F;et=B.connector,x&&x.distance>0?(F=!et,et||(B.connector=et=_.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+w.colorIndex+(w.className?" "+w.className:"")).add(W.dataLabelsGroup)),_.styledMode||et.attr({"stroke-width":nt,stroke:tt||w.color||"#666666"}),et[F?"attr":"animate"]({d:w.getConnectorPath(B)}),et.attr({visibility:(y=x.attribs)==null?void 0:y.visibility})):et&&(B.connector=et.destroy())}})})))}function it(){this.points.forEach(W=>{(W.dataLabels||[]).forEach(k=>{var C;let _=k.dataLabelPosition;_?(_.sideOverflow&&(k.css({width:Math.max(k.getBBox().width-_.sideOverflow,0)+"px",textOverflow:(((C=k.options)==null?void 0:C.style)||{}).textOverflow||"ellipsis"}),k.shortened=!0),k.attr(_.attribs),k[k.moved?"animate":"attr"](_.posAttribs),k.moved=!0):k&&k.attr({y:-9999})}),delete W.distributeBox},this)}function Q(W){let k=this.center,_=this.options,C=_.center,h=_.minSize||80,l=h,u=_.size!==null;return!u&&(C[0]!==null?l=Math.max(k[2]-Math.max(W[1],W[3]),h):(l=Math.max(k[2]-W[1]-W[3],h),k[0]+=(W[3]-W[1])/2),C[1]!==null?l=U(l,h,k[2]-Math.max(W[0],W[2])):(l=U(l,h,k[2]-W[0]-W[2]),k[1]+=(W[0]-W[2])/2),l(J.x+=X.x,J.y+=X.y,J),{x:0,y:0});return{x:$.x/st.length,y:$.y/st.length}},R.getDistanceBetweenPoints=function(st,$){return Math.sqrt(Math.pow($.x-st.x,2)+Math.pow($.y-st.y,2))},R.getAngleBetweenPoints=function(st,$){return Math.atan2($.x-st.x,$.y-st.y)},R.pointInPolygon=function({x:st,y:$},J){let X=J.length,q,Z,Y=!1;for(q=0,Z=X-1;q$!=T>$&&st<(U-V)*($-N)/(T-N)+V&&(Y=!Y)}return Y},L}),g(d,"Extensions/OverlappingDataLabels.js",[d["Core/Geometry/GeometryUtilities.js"],d["Core/Utilities.js"]],function(L,R){let{pointInPolygon:st}=L,{addEvent:$,fireEvent:J,objectEach:X,pick:q}=R;function Z(N){let U=N.length,T=(it,Q)=>!(Q.x>=it.x+it.width||Q.x+Q.width<=it.x||Q.y>=it.y+it.height||Q.y+Q.height<=it.y),A=(it,Q)=>{for(let W of it)if(st({x:W[0],y:W[1]},Q))return!0;return!1},M,O,H,z,c,D=!1;for(let it=0;it(Q.labelrank||0)-(it.labelrank||0));for(let it=0;it{X(M,O=>{O.label&&U.push(O.label)})});for(let A of N.series||[])if(A.visible&&((T=A.hasDataLabels)!=null&&T.call(A))){let M=O=>{for(let H of O)H.visible&&(H.dataLabels||[]).forEach(z=>{var D,it;let c=z.options||{};z.labelrank=q(c.labelrank,H.labelrank,(D=H.shapeArgs)==null?void 0:D.height),((it=c.allowOverlap)!=null?it:Number(c.distance)>0)?(z.oldOpacity=z.opacity,z.newOpacity=1,Y(z,N)):U.push(z)})};M(A.nodes||[]),M(A.points)}this.hideOverlappingLabels(U)}return{compose:function(N){let U=N.prototype;U.hideOverlappingLabels||(U.hideOverlappingLabels=Z,$(N,"render",V))}}}),g(d,"Extensions/BorderRadius.js",[d["Core/Defaults.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{defaultOptions:$}=L,{noop:J}=R,{addEvent:X,extend:q,isObject:Z,merge:Y,relativeLength:V}=st,N={radius:0,scope:"stack",where:void 0},U=J,T=J;function A(c,D,it,Q,W={}){let k=U(c,D,it,Q,W),{innerR:_=0,r:C=it,start:h=0,end:l=0}=W;if(W.open||!W.borderRadius)return k;let u=l-h,v=Math.sin(u/2),I=Math.max(Math.min(V(W.borderRadius||0,C-_),(C-_)/2,C*v/(1+v)),0),S=Math.min(I,u/Math.PI*2*_),b=k.length-1;for(;b--;)(function(K,ct,et){let dt,pt,bt,Mt=K[ct],w=K[ct+1];if(w[0]==="Z"&&(w=K[0]),(Mt[0]==="M"||Mt[0]==="L")&&w[0]==="A"?(dt=Mt,pt=w,bt=!0):Mt[0]==="A"&&(w[0]==="M"||w[0]==="L")&&(dt=w,pt=Mt),dt&&pt&&pt.params){let B=pt[1],tt=pt[5],nt=pt.params,{start:x,end:y,cx:F,cy:lt}=nt,rt=tt?B-et:B+et,gt=rt?Math.asin(et/rt):0,vt=tt?gt:-gt,Ot=Math.cos(gt)*rt;bt?(nt.start=x+vt,dt[1]=F+Ot*Math.cos(x),dt[2]=lt+Ot*Math.sin(x),K.splice(ct+1,0,["A",et,et,0,0,1,F+B*Math.cos(nt.start),lt+B*Math.sin(nt.start)])):(nt.end=y-vt,pt[6]=F+B*Math.cos(nt.end),pt[7]=lt+B*Math.sin(nt.end),K.splice(ct+1,0,["A",et,et,0,0,1,F+Ot*Math.cos(y),lt+Ot*Math.sin(y)])),pt[4]=Math.abs(nt.end-nt.start)1?S:I);return k}function M(){var c,D;if(this.options.borderRadius&&!(this.chart.is3d&&this.chart.is3d())){let{options:it,yAxis:Q}=this,W=it.stacking==="percent",k=(D=(c=$.plotOptions)==null?void 0:c[this.type])==null?void 0:D.borderRadius,_=O(it.borderRadius,Z(k)?k:{}),C=Q.options.reversed;for(let h of this.points){let{shapeArgs:l}=h;if(h.shapeType==="roundedRect"&&l){let{width:u=0,height:v=0,y:I=0}=l,S=I,b=v;if(_.scope==="stack"&&h.stackTotal){let dt=Q.translate(W?100:h.stackTotal,!1,!0,!1,!0),pt=Q.translate(it.threshold||0,!1,!0,!1,!0),bt=this.crispCol(0,Math.min(dt,pt),0,Math.abs(dt-pt));S=bt.y,b=bt.height}let K=(h.negative?-1:1)*(C?-1:1)==-1,ct=_.where;!ct&&this.is("waterfall")&&Math.abs((h.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(ct="all"),ct||(ct="end");let et=Math.min(V(_.radius,u),u/2,ct==="all"?v/2:1/0)||0;ct==="end"&&(K&&(S-=et),b+=et),q(l,{brBoxHeight:b,brBoxY:S,r:et})}}}}function O(c,D){return Z(c)||(c={radius:c||0}),Y(N,D,c)}function H(){let c=O(this.options.borderRadius);for(let D of this.points){let it=D.shapeArgs;it&&(it.borderRadius=V(c.radius,(it.r||0)-(it.innerR||0)))}}function z(c,D,it,Q,W={}){let k=T(c,D,it,Q,W),{r:_=0,brBoxHeight:C=Q,brBoxY:h=D}=W,l=D-h,u=h+C-(D+Q),v=l-_>-.1?0:_,I=u-_>-.1?0:_,S=Math.max(v&&l,0),b=Math.max(I&&u,0),K=[c+v,D],ct=[c+it-v,D],et=[c+it,D+v],dt=[c+it,D+Q-I],pt=[c+it-I,D+Q],bt=[c+I,D+Q],Mt=[c,D+Q-I],w=[c,D+v],B=(tt,nt)=>Math.sqrt(Math.pow(tt,2)-Math.pow(nt,2));if(S){let tt=B(v,v-S);K[0]-=tt,ct[0]+=tt,et[1]=w[1]=D+v-S}if(Q=q(A.minWidth,0)&&this.chartHeight>=q(A.minHeight,0)}).call(this)&&T.push(U._id)}function N(U,T){let A=this.options.responsive,M=this.currentResponsive,O=[],H;!T&&A&&A.rules&&A.rules.forEach(D=>{D._id===void 0&&(D._id=Z()),this.matchResponsiveRule(D,O)},this);let z=X(...O.map(D=>J((A||{}).rules||[],it=>it._id===D)).map(D=>D&&D.chartOptions));z.isResponsiveOptions=!0,O=O.toString()||void 0;let c=M&&M.ruleIds;O===c||(M&&(this.currentResponsive=void 0,this.updatingResponsive=!0,this.update(M.undoOptions,U,!0),this.updatingResponsive=!1),O?((H=st(z,this.options,!0,this.collectionsWithUpdate)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:O,mergedOptions:z,undoOptions:H},this.updatingResponsive||this.update(z,U,!0)):this.currentResponsive=void 0)}Y.compose=function(U){let T=U.prototype;return T.matchResponsiveRule||$(T,{matchResponsiveRule:V,setResponsive:N}),U}}(R||(R={})),R}),g(d,"masters/highcharts.src.js",[d["Core/Globals.js"],d["Core/Utilities.js"],d["Core/Defaults.js"],d["Core/Animation/Fx.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Templating.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Renderer/HTML/HTMLElement.js"],d["Core/Axis/Axis.js"],d["Core/Axis/DateTimeAxis.js"],d["Core/Axis/LogarithmicAxis.js"],d["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],d["Core/Axis/Tick.js"],d["Core/Tooltip.js"],d["Core/Series/Point.js"],d["Core/Pointer.js"],d["Core/Legend/Legend.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Chart/Chart.js"],d["Extensions/ScrollablePlotArea.js"],d["Core/Axis/Stacking/StackingAxis.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Series/Column/ColumnDataLabel.js"],d["Series/Pie/PieDataLabel.js"],d["Core/Series/DataLabel.js"],d["Extensions/OverlappingDataLabels.js"],d["Extensions/BorderRadius.js"],d["Core/Responsive.js"],d["Core/Color/Color.js"],d["Core/Time.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A,M,O,H,z,c,D,it,Q,W,k,_,C,h,l,u,v,I,S,b,K,ct,et){return L.AST=X,L.Axis=T,L.Chart=W,L.Color=ct,L.DataLabel=I,L.Fx=$,L.HTMLElement=U,L.Legend=it,L.LegendSymbol=Q,L.OverlappingDataLabels=L.OverlappingDataLabels||S,L.PlotLineOrBand=O,L.Point=c,L.Pointer=D,L.RendererRegistry=Z,L.Series=h,L.SeriesRegistry=l,L.StackItem=C,L.SVGElement=V,L.SVGRenderer=N,L.Templating=q,L.Tick=H,L.Time=et,L.Tooltip=z,L.animate=J.animate,L.animObject=J.animObject,L.chart=W.chart,L.color=ct.parse,L.dateFormat=q.dateFormat,L.defaultOptions=st.defaultOptions,L.distribute=Y.distribute,L.format=q.format,L.getDeferredAnimation=J.getDeferredAnimation,L.getOptions=st.getOptions,L.numberFormat=q.numberFormat,L.seriesType=l.seriesType,L.setAnimation=J.setAnimation,L.setOptions=st.setOptions,L.stop=J.stop,L.time=st.defaultTime,L.timers=$.timers,b.compose(L.Series,L.SVGElement,L.SVGRenderer),u.compose(L.Series.types.column),I.compose(L.Series),A.compose(L.Axis),U.compose(L.SVGRenderer),it.compose(L.Chart),M.compose(L.Axis),S.compose(L.Chart),v.compose(L.Series.types.pie),O.compose(L.Chart,L.Axis),D.compose(L.Chart),K.compose(L.Chart),k.compose(L.Axis,L.Chart,L.Series),_.compose(L.Axis,L.Chart,L.Series),z.compose(L.Pointer),R.extend(L,R),L}),g(d,"Core/Axis/Color/ColorAxisComposition.js",[d["Core/Color/Color.js"],d["Core/Utilities.js"]],function(L,R){var st;let{parse:$}=L,{addEvent:J,extend:X,merge:q,pick:Z,splat:Y}=R;return function(V){let N;function U(){let{userOptions:Q}=this;this.colorAxis=[],Q.colorAxis&&(Q.colorAxis=Y(Q.colorAxis),Q.colorAxis.map(W=>new N(this,W)))}function T(Q){let W=this.chart.colorAxis||[],k=l=>{let u=Q.allItems.indexOf(l);u!==-1&&(this.destroyItem(Q.allItems[u]),Q.allItems.splice(u,1))},_=[],C,h;for(W.forEach(function(l){(C=l.options)&&C.showInLegend&&(C.dataClasses&&C.visible?_=_.concat(l.getDataClassLegendSymbols()):C.visible&&_.push(l),l.series.forEach(function(u){(!u.options.showInLegend||C.dataClasses)&&(u.options.legendType==="point"?u.points.forEach(function(v){k(v)}):k(u))}))}),h=_.length;h--;)Q.allItems.unshift(_[h])}function A(Q){Q.visible&&Q.item.legendColor&&Q.item.legendItem.symbol.attr({fill:Q.item.legendColor})}function M(Q){var W;(W=this.chart.colorAxis)==null||W.forEach(k=>{k.update({},Q.redraw)})}function O(){(this.chart.colorAxis&&this.chart.colorAxis.length||this.colorAttribs)&&this.translateColors()}function H(){let Q=this.axisTypes;Q?Q.indexOf("colorAxis")===-1&&Q.push("colorAxis"):this.axisTypes=["colorAxis"]}function z(Q){let W=this,k=Q?"show":"hide";W.visible=W.options.visible=!!Q,["graphic","dataLabel"].forEach(function(_){W[_]&&W[_][k]()}),this.series.buildKDTree()}function c(){let Q=this,W=this.getPointsCollection(),k=this.options.nullColor,_=this.colorAxis,C=this.colorKey;W.forEach(h=>{let l=h.getNestedProperty(C),u=h.options.color||(h.isNull||h.value===null?k:_&&l!==void 0?_.toColor(l,h):h.color||Q.color);u&&h.color!==u&&(h.color=u,Q.options.legendType==="point"&&h.legendItem&&h.legendItem.label&&Q.chart.legend.colorizeItem(h,h.visible))})}function D(){this.elem.attr("fill",$(this.start).tweenTo($(this.end),this.pos),void 0,!0)}function it(){this.elem.attr("stroke",$(this.start).tweenTo($(this.end),this.pos),void 0,!0)}V.compose=function(Q,W,k,_,C){let h=W.prototype,l=k.prototype,u=C.prototype;h.collectionsWithUpdate.includes("colorAxis")||(N=Q,h.collectionsWithUpdate.push("colorAxis"),h.collectionsWithInit.colorAxis=[h.addColorAxis],J(W,"afterGetAxes",U),function(v){let I=v.prototype.createAxis;v.prototype.createAxis=function(S,b){if(S!=="colorAxis")return I.apply(this,arguments);let K=new N(this,q(b.axis,{index:this[S].length,isX:!1}));return this.isDirtyLegend=!0,this.axes.forEach(ct=>{ct.series=[]}),this.series.forEach(ct=>{ct.bindAxes(),ct.isDirtyData=!0}),Z(b.redraw,!0)&&this.redraw(b.animation),K}}(W),l.fillSetter=D,l.strokeSetter=it,J(_,"afterGetAllItems",T),J(_,"afterColorizeItem",A),J(_,"afterUpdate",M),X(u,{optionalAxis:"colorAxis",translateColors:c}),X(u.pointClass.prototype,{setVisible:z}),J(C,"afterTranslate",O,{order:1}),J(C,"bindAxes",H))},V.pointSetVisible=z}(st||(st={})),st}),g(d,"Core/Axis/Color/ColorAxisDefaults.js",[],function(){return{lineWidth:0,minPadding:0,maxPadding:0,gridLineColor:"#ffffff",gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01,color:"#999999"},labels:{distance:8,overflow:"justify",rotation:0},minColor:"#e6e9ff",maxColor:"#0022ff",tickLength:5,showInLegend:!0}}),g(d,"Core/Axis/Color/ColorAxisLike.js",[d["Core/Color/Color.js"],d["Core/Utilities.js"]],function(L,R){var st,$;let{parse:J}=L,{merge:X}=R;return($=st||(st={})).initDataClasses=function(q){let Z=this.chart,Y=this.legendItem=this.legendItem||{},V=this.options,N=q.dataClasses||[],U,T,A=Z.options.chart.colorCount,M=0,O;this.dataClasses=T=[],Y.labels=[];for(let H=0,z=N.length;H=V)&&(N===void 0||q<=N)){U=T.color,Z&&(Z.dataClass=A,Z.colorIndex=T.colorIndex);break}}else{for(Y=this.normalizedValue(q),A=O.length;A--&&!(Y>O[A][0]););V=O[A]||O[A+1],Y=1-((N=O[A+1]||V)[0]-Y)/(N[0]-V[0]||1),U=V.color.tweenTo(N.color,Y)}return U},st}),g(d,"Core/Axis/Color/ColorAxis.js",[d["Core/Axis/Axis.js"],d["Core/Axis/Color/ColorAxisComposition.js"],d["Core/Axis/Color/ColorAxisDefaults.js"],d["Core/Axis/Color/ColorAxisLike.js"],d["Core/Defaults.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){let{defaultOptions:Y}=J,{series:V}=q,{defined:N,extend:U,fireEvent:T,isArray:A,isNumber:M,merge:O,pick:H,relativeLength:z}=Z;Y.colorAxis=O(Y.xAxis,st);class c extends L{static compose(it,Q,W,k){R.compose(c,it,Q,W,k)}constructor(it,Q){super(it,Q),this.coll="colorAxis",this.visible=!0,this.init(it,Q)}init(it,Q){let W=it.options.legend||{},k=Q.layout?Q.layout!=="vertical":W.layout!=="vertical";this.side=Q.side||k?2:1,this.reversed=Q.reversed||!k,this.opposite=!k,super.init(it,Q,"colorAxis"),this.userOptions=Q,A(it.userOptions.colorAxis)&&(it.userOptions.colorAxis[this.index]=Q),Q.dataClasses&&this.initDataClasses(Q),this.initStops(),this.horiz=k,this.zoomEnabled=!1}hasData(){return!!(this.tickPositions||[]).length}setTickPositions(){if(!this.dataClasses)return super.setTickPositions()}setOptions(it){let Q=O(Y.colorAxis,it,{showEmpty:!1,title:null,visible:this.chart.options.legend.enabled&&it.visible!==!1});super.setOptions(Q),this.options.crosshair=this.options.marker}setAxisSize(){var _;let it=this.chart,Q=(_=this.legendItem)==null?void 0:_.symbol,{width:W,height:k}=this.getSize();Q&&(this.left=+Q.attr("x"),this.top=+Q.attr("y"),this.width=W=+Q.attr("width"),this.height=k=+Q.attr("height"),this.right=it.chartWidth-this.left-W,this.bottom=it.chartHeight-this.top-k,this.pos=this.horiz?this.left:this.top),this.len=(this.horiz?W:k)||c.defaultLegendLength}getOffset(){var W;let it=(W=this.legendItem)==null?void 0:W.group,Q=this.chart.axisOffset[this.side];if(it){this.axisParent=it,super.getOffset();let k=this.chart.legend;k.allItems.forEach(function(_){_ instanceof c&&_.drawLegendSymbol(k,_)}),k.render(),this.chart.getMargins(!0),this.chart.series.some(_=>_.isDrilling)||(this.isDirty=!0),this.added||(this.added=!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=Q}}setLegendColor(){let it=this.horiz,Q=this.reversed,W=Q?1:0,k=Q?0:1,_=it?[W,0,k,0]:[0,k,0,W];this.legendColor={linearGradient:{x1:_[0],y1:_[1],x2:_[2],y2:_[3]},stops:this.stops}}drawLegendSymbol(it,Q){var S;let W=Q.legendItem||{},k=it.padding,_=it.options,C=this.options.labels,h=H(_.itemDistance,10),l=this.horiz,{width:u,height:v}=this.getSize(),I=H(_.labelPadding,l?16:30);this.setLegendColor(),W.symbol||(W.symbol=this.chart.renderer.symbol("roundedRect").attr({r:(S=_.symbolRadius)!=null?S:3,zIndex:1}).add(W.group)),W.symbol.attr({x:0,y:(it.baseline||0)-11,width:u,height:v}),W.labelWidth=u+k+(l?h:H(C.x,C.distance)+(this.maxLabelLength||0)),W.labelHeight=v+k+(l?I:0)}setState(it){this.series.forEach(function(Q){Q.setState(it)})}setVisible(){}getSeriesExtremes(){let it=this.series,Q,W,k,_,C,h,l=it.length,u,v;for(this.dataMin=1/0,this.dataMax=-1/0;l--;){if(W=(h=it[l]).colorKey=H(h.options.colorKey,h.colorKey,h.pointValKey,h.zoneAxis,"y"),_=h.pointArrayMap,C=h[W+"Min"]&&h[W+"Max"],h[W+"Data"])Q=h[W+"Data"];else if(_){if(Q=[],k=_.indexOf(W),u=h.yData,k>=0&&u)for(v=0;vh+l&&(W=h+l+2),Q.plotX=W,Q.plotY=this.len-W,super.drawCrosshair(it,Q),Q.plotX=_,Q.plotY=C,this.cross&&!this.cross.addedToColorAxis&&k.group&&(this.cross.addClass("highcharts-coloraxis-marker").add(k.group),this.cross.addedToColorAxis=!0,this.chart.styledMode||typeof this.crosshair!="object"||this.cross.attr({fill:this.crosshair.color})))}getPlotLinePath(it){let Q=this.left,W=it.translatedValue,k=this.top;return M(W)?this.horiz?[["M",W-4,k-6],["L",W+4,k-6],["L",W,k],["Z"]]:[["M",Q,W],["L",Q-6,W+6],["L",Q-6,W-6],["Z"]]:super.getPlotLinePath(it)}update(it,Q){let W=this.chart.legend;this.series.forEach(k=>{k.isDirtyData=!0}),(it.dataClasses&&W.allItems||this.dataClasses)&&this.destroyItems(),super.update(it,Q),this.legendItem&&this.legendItem.label&&(this.setLegendColor(),W.colorizeItem(this,!0))}destroyItems(){let it=this.chart,Q=this.legendItem||{};if(Q.label)it.legend.destroyItem(this);else if(Q.labels)for(let W of Q.labels)it.legend.destroyItem(W);it.isDirtyLegend=!0}destroy(){this.chart.isDirtyLegend=!0,this.destroyItems(),super.destroy(...[].slice.call(arguments))}remove(it){this.destroyItems(),super.remove(it)}getDataClassLegendSymbols(){let it,Q=this,W=Q.chart,k=Q.legendItem&&Q.legendItem.labels||[],_=W.options.legend,C=H(_.valueDecimals,-1),h=H(_.valueSuffix,""),l=u=>Q.series.reduce((v,I)=>(v.push(...I.points.filter(S=>S.dataClass===u)),v),[]);return k.length||Q.dataClasses.forEach((u,v)=>{let I=u.from,S=u.to,{numberFormatter:b}=W,K=!0;it="",I===void 0?it="< ":S===void 0&&(it="> "),I!==void 0&&(it+=b(I,C)+h),I!==void 0&&S!==void 0&&(it+=" - "),S!==void 0&&(it+=b(S,C)+h),k.push(U({chart:W,name:it,options:{},drawLegendSymbol:X.rectangle,visible:!0,isDataClass:!0,setState:ct=>{for(let et of l(v))et.setState(ct)},setVisible:function(){this.visible=K=Q.visible=!K;let ct=[];for(let et of l(v))et.setVisible(K),et.hiddenInDataClass=!K,ct.indexOf(et.series)===-1&&ct.push(et.series);W.legend.colorizeItem(this,K),ct.forEach(et=>{T(et,"afterDataClassLegendClick")})}},u))}),k}getSize(){let{chart:it,horiz:Q}=this,{height:W,width:k}=this.options,{legend:_}=it.options;return{width:H(N(k)?z(k,it.chartWidth):void 0,_==null?void 0:_.symbolWidth,Q?c.defaultLegendLength:12),height:H(N(W)?z(W,it.chartHeight):void 0,_==null?void 0:_.symbolHeight,Q?12:c.defaultLegendLength)}}}return c.defaultLegendLength=200,c.keepProps=["legendItem"],U(c.prototype,$),Array.prototype.push.apply(L.keepProps,c.keepProps),c}),g(d,"masters/modules/coloraxis.src.js",[d["Core/Globals.js"],d["Core/Axis/Color/ColorAxis.js"]],function(L,R){return L.ColorAxis=L.ColorAxis||R,L.ColorAxis.compose(L.Chart,L.Fx,L.Legend,L.Series),L}),g(d,"Maps/MapNavigationDefaults.js",[],function(){return{lang:{zoomIn:"Zoom in",zoomOut:"Zoom out"},mapNavigation:{buttonOptions:{alignTo:"plotBox",align:"left",verticalAlign:"top",x:0,width:18,height:18,padding:5,style:{color:"#666666",fontSize:"1em",fontWeight:"bold"},theme:{fill:"#ffffff",stroke:"#e6e6e6","stroke-width":1,"text-align":"center"}},buttons:{zoomIn:{onclick:function(){this.mapZoom(.5)},text:"+",y:0},zoomOut:{onclick:function(){this.mapZoom(2)},text:"-",y:28}},mouseWheelSensitivity:1.1}}}),g(d,"Maps/MapPointer.js",[d["Core/Utilities.js"]],function(L){var R;let{defined:st,extend:$,pick:J,wrap:X}=L;return function(q){let Z,Y=0;function V(A){let M=this.chart;A=this.normalize(A),M.options.mapNavigation.enableDoubleClickZoomTo?M.pointer.inClass(A.target,"highcharts-tracker")&&M.hoverPoint&&M.hoverPoint.zoomTo():M.isInsidePlot(A.chartX-M.plotLeft,A.chartY-M.plotTop)&&M.mapZoom(.5,void 0,void 0,A.chartX,A.chartY)}function N(A){let M=this.chart,O=st((A=this.normalize(A)).wheelDelta)&&-A.wheelDelta/120||A.deltaY||A.detail;Math.abs(O)>=1&&(Y+=Math.abs(O),Z&&clearTimeout(Z),Z=setTimeout(()=>{Y=0},50)),Y<10&&M.isInsidePlot(A.chartX-M.plotLeft,A.chartY-M.plotTop)&&M.mapView&&M.mapView.zoomBy(-((M.options.mapNavigation.mouseWheelSensitivity-1)*O),void 0,[A.chartX,A.chartY],!(1>Math.abs(O))&&void 0)}function U(A,M,O){let H=this.chart;if(M=A.call(this,M,O),H&&H.mapView){let z=H.mapView.pixelsToLonLat({x:M.chartX-H.plotLeft,y:M.chartY-H.plotTop});z&&$(M,z)}return M}function T(A){let M=this.chart.options.mapNavigation;M&&J(M.enableTouchZoom,M.enabled)&&(this.chart.zooming.pinchType="xy"),A.apply(this,[].slice.call(arguments,1))}q.compose=function(A){let M=A.prototype;M.onContainerDblClick||($(M,{onContainerDblClick:V,onContainerMouseWheel:N}),X(M,"normalize",U),X(M,"zoomOption",T))}}(R||(R={})),R}),g(d,"Maps/MapSymbols.js",[],function(){let L;function R($,J,X,q,Z){if(Z){let Y=(Z==null?void 0:Z.r)||0;Z.brBoxY=J-Y,Z.brBoxHeight=q+Y}return L.roundedRect($,J,X,q,Z)}function st($,J,X,q,Z){if(Z){let Y=(Z==null?void 0:Z.r)||0;Z.brBoxHeight=q+Y}return L.roundedRect($,J,X,q,Z)}return{compose:function($){(L=$.prototype.symbols).bottombutton=R,L.topbutton=st}}}),g(d,"Maps/MapNavigation.js",[d["Core/Defaults.js"],d["Core/Globals.js"],d["Maps/MapNavigationDefaults.js"],d["Maps/MapPointer.js"],d["Maps/MapSymbols.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){let{setOptions:q}=L,{composed:Z}=R,{addEvent:Y,extend:V,merge:N,objectEach:U,pick:T,pushUnique:A}=X;function M(H){H&&(H.preventDefault&&H.preventDefault(),H.stopPropagation&&H.stopPropagation(),H.cancelBubble=!0)}class O{static compose(z,c,D){$.compose(c),J.compose(D),A(Z,"Map.Navigation")&&(Y(z,"beforeRender",function(){this.mapNavigation=new O(this),this.mapNavigation.update()}),q(st))}constructor(z){this.chart=z,this.navButtons=[]}update(z){let c=this,D=c.chart,it=c.navButtons,Q=function(k){this.handler.call(D,k),M(k)},W=D.options.mapNavigation;for(z&&(W=D.options.mapNavigation=N(D.options.mapNavigation,z));it.length;)it.pop().destroy();if(!D.renderer.forExport&&T(W.enableButtons,W.enabled)){c.navButtonsGroup||(c.navButtonsGroup=D.renderer.g().attr({zIndex:7}).add()),U(W.buttons,(_,C)=>{var b;let h={padding:(_=N(W.buttonOptions,_)).padding};!D.styledMode&&_.theme&&(V(h,_.theme),h.style=N(_.theme.style,_.style));let{text:l,width:u=0,height:v=0,padding:I=0}=_,S=D.renderer.button(l!=="+"&&l!=="-"&&l||"",0,0,Q,h,void 0,void 0,void 0,C==="zoomIn"?"topbutton":"bottombutton").addClass("highcharts-map-navigation highcharts-"+{zoomIn:"zoom-in",zoomOut:"zoom-out"}[C]).attr({width:u,height:v,title:D.options.lang[C],zIndex:5}).add(c.navButtonsGroup);if(l==="+"||l==="-"){let K=u+1,ct=[["M",I+3,I+v/2],["L",I+K-3,I+v/2]];l==="+"&&ct.push(["M",I+K/2,I+3],["L",I+K/2,I+v-3]),D.renderer.path(ct).addClass("highcharts-button-symbol").attr(D.styledMode?{}:{stroke:(b=_.style)==null?void 0:b.color,"stroke-width":3,"stroke-linecap":"round"}).add(S)}if(S.handler=_.onclick,Y(S.element,"dblclick",M),it.push(S),V(_,{width:S.width,height:2*(S.height||0)}),D.hasLoaded)S.align(_,!1,_.alignTo);else{let K=Y(D,"load",()=>{S.element&&S.align(_,!1,_.alignTo),K()})}});let k=(_,C)=>!(C.x>=_.x+_.width||C.x+C.width<=_.x||C.y>=_.y+_.height||C.y+C.height<=_.y);D.hasLoaded||Y(D,"render",function(){let _=D.exportingGroup&&D.exportingGroup.getBBox();if(_){let C=c.navButtonsGroup.getBBox();if(k(_,C)){let h=-C.y-C.height+_.y-5,l=_.y+_.height-C.y+5,u=W.buttonOptions&&W.buttonOptions.verticalAlign;c.navButtonsGroup.attr({translateY:u==="bottom"?h:l})}}})}this.updateEvents(W)}updateEvents(z){let c=this.chart;T(z.enableDoubleClickZoom,z.enabled)||z.enableDoubleClickZoomTo?this.unbindDblClick=this.unbindDblClick||Y(c.container,"dblclick",function(D){c.pointer.onContainerDblClick(D)}):this.unbindDblClick&&(this.unbindDblClick=this.unbindDblClick()),T(z.enableMouseWheelZoom,z.enabled)?this.unbindMouseWheel=this.unbindMouseWheel||Y(c.container,"wheel",function(D){return c.pointer.inClass(D.target,"highcharts-no-mousewheel")||(c.pointer.onContainerMouseWheel(D),M(D)),!1}):this.unbindMouseWheel&&(this.unbindMouseWheel=this.unbindMouseWheel())}}return O}),g(d,"Series/ColorMapComposition.js",[d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{column:{prototype:J}}=L.seriesTypes,{addEvent:X,defined:q}=st;return function(Z){function Y(V){let N=this.series,U=N.chart.renderer;this.moveToTopOnHover&&this.graphic&&(N.stateMarkerGraphic||(N.stateMarkerGraphic=new R(U,"use").css({pointerEvents:"none"}).add(this.graphic.parentGroup)),(V==null?void 0:V.state)==="hover"?(this.graphic.attr({id:this.id}),N.stateMarkerGraphic.attr({href:`${U.url}#${this.id}`,visibility:"visible"})):N.stateMarkerGraphic.attr({href:""}))}Z.pointMembers={dataLabelOnNull:!0,moveToTopOnHover:!0,isValid:function(){return this.value!==null&&this.value!==1/0&&this.value!==-1/0&&(this.value===void 0||!isNaN(this.value))}},Z.seriesMembers={colorKey:"value",axisTypes:["xAxis","yAxis","colorAxis"],parallelArrays:["x","y","value"],pointArrayMap:["value"],trackerGroups:["group","markerGroup","dataLabelsGroup"],colorAttribs:function(V){let N={};return q(V.color)&&(!V.state||V.state==="normal")&&(N[this.colorProp||"fill"]=V.color),N},pointAttribs:J.pointAttribs},Z.compose=function(V){return X(V.prototype.pointClass,"afterSetState",Y),V}}($||($={})),$}),g(d,"Core/Chart/MapChart.js",[d["Core/Chart/Chart.js"],d["Core/Defaults.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{getOptions:X}=R,{isNumber:q,merge:Z,pick:Y}=$;class V extends L{init(U,T){let A=X().credits,M=Z({chart:{panning:{enabled:!0,type:"xy"},type:"map"},credits:{mapText:Y(A.mapText,' \xA9 {geojson.copyrightShort}'),mapTextFull:Y(A.mapTextFull,"{geojson.copyright}")},mapView:{},tooltip:{followTouchMove:!1}},U);super.init(M,T)}mapZoom(U,T,A,M,O){this.mapView&&(q(U)&&(U=Math.log(U)/Math.log(.5)),this.mapView.zoomBy(U,q(T)&&q(A)?this.mapView.projection.inverse([T,A]):void 0,q(M)&&q(O)?[M,O]:void 0))}update(U){var T;U.chart&&"map"in U.chart&&((T=this.mapView)==null||T.recommendMapView(this,[U.chart.map,...(this.options.series||[]).map(A=>A.mapData)],!0)),super.update.apply(this,arguments)}}return(J=V||(V={})).maps={},J.mapChart=function(N,U,T){return new J(N,U,T)},J.splitPath=function(N){let U;return U=typeof N=="string"?(N=N.replace(/([A-Z])/gi," $1 ").replace(/^\s*/,"").replace(/\s*$/,"")).split(/[ ,;]+/).map(T=>/[A-Z]/i.test(T)?T:parseFloat(T)):N,st.prototype.pathToSegments(U)},V}),g(d,"Maps/MapUtilities.js",[],function(){return{boundsFromPath:function(L){let R=-Number.MAX_VALUE,st=Number.MAX_VALUE,$=-Number.MAX_VALUE,J=Number.MAX_VALUE,X;if(L.forEach(q=>{let Z=q[q.length-2],Y=q[q.length-1];typeof Z=="number"&&typeof Y=="number"&&(st=Math.min(st,Z),R=Math.max(R,Z),J=Math.min(J,Y),$=Math.max($,Y),X=!0)}),X)return{x1:st,y1:J,x2:R,y2:$}}}}),g(d,"Series/Map/MapPoint.js",[d["Series/ColorMapComposition.js"],d["Maps/MapUtilities.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{boundsFromPath:J}=R,X=st.seriesTypes.scatter.prototype.pointClass,{extend:q,isNumber:Z,pick:Y}=$;class V extends X{static getProjectedPath(U,T){return U.projectedPath||(T&&U.geometry?(T.hasCoordinates=!0,U.projectedPath=T.path(U.geometry)):U.projectedPath=U.path),U.projectedPath||[]}applyOptions(U,T){var H;let A=this.series,M=super.applyOptions(U,T),O=A.joinBy;if(A.mapData&&A.mapMap){let z=O[1],c=super.getNestedProperty(z),D=c!==void 0&&A.mapMap[c];D?q(M,Mi(xr({},D),{name:(H=M.name)!=null?H:D.name})):A.pointArrayMap.indexOf("value")!==-1&&(M.value=M.value||null)}return M}getProjectedBounds(U){let T=J(V.getProjectedPath(this,U)),A=this.properties,M=this.series.chart.mapView;if(T){let O=A&&A["hc-middle-lon"],H=A&&A["hc-middle-lat"];if(M&&Z(O)&&Z(H)){let z=U.forward([O,H]);T.midX=z[0],T.midY=z[1]}else{let z=A&&A["hc-middle-x"],c=A&&A["hc-middle-y"];T.midX=T.x1+(T.x2-T.x1)*Y(this.middleX,Z(z)?z:.5);let D=Y(this.middleY,Z(c)?c:.5);this.geometry||(D=1-D),T.midY=T.y2-(T.y2-T.y1)*D}return T}}onMouseOver(U){$.clearTimeout(this.colorInterval),!this.isNull&&this.visible||this.series.options.nullInteraction?super.onMouseOver.call(this,U):this.series.onMouseOut()}setVisible(U){this.visible=this.options.visible=!!U,this.dataLabel&&this.dataLabel[U?"show":"hide"](),this.graphic&&this.graphic.attr(this.series.pointAttribs(this))}zoomTo(U){let T=this.series.chart,A=T.mapView,M=this.bounds;if(A&&M){let O=Z(this.insetIndex)&&A.insets[this.insetIndex];if(O){let H=O.projectedUnitsToPixels({x:M.x1,y:M.y1}),z=O.projectedUnitsToPixels({x:M.x2,y:M.y2}),c=A.pixelsToProjectedUnits({x:H.x,y:H.y}),D=A.pixelsToProjectedUnits({x:z.x,y:z.y});M={x1:c.x,y1:c.y,x2:D.x,y2:D.y}}A.fitToBounds(M,void 0,!1),this.series.isDirty=!0,T.redraw(U)}}}return q(V.prototype,{dataLabelOnNull:L.pointMembers.dataLabelOnNull,moveToTopOnHover:L.pointMembers.moveToTopOnHover,isValid:L.pointMembers.isValid}),V}),g(d,"Series/Map/MapSeriesDefaults.js",[d["Core/Utilities.js"]],function(L){let{isNumber:R}=L;return{affectsMapView:!0,animation:!1,dataLabels:{crop:!1,formatter:function(){let{numberFormatter:st}=this.series.chart,{value:$}=this.point;return R($)?st($,-1):this.point.name},inside:!0,overflow:!1,padding:0,verticalAlign:"middle"},linecap:"round",marker:null,nullColor:"#f7f7f7",stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:"{point.name}: {point.value}
"},turboThreshold:0,allAreas:!0,borderColor:"#e6e6e6",borderWidth:1,joinBy:"hc-key",states:{hover:{halo:void 0,borderColor:"#666666",borderWidth:2},normal:{animation:!0},select:{color:"#cccccc"}},legendSymbol:"rectangle"}}),g(d,"Maps/MapViewDefaults.js",[],function(){return{center:[0,0],fitToGeometry:void 0,maxZoom:void 0,padding:0,projection:{name:void 0,parallels:void 0,rotation:void 0},zoom:void 0,insetOptions:{borderColor:"#cccccc",borderWidth:1,padding:"10%",relativeTo:"mapBoundingBox",units:"percent"}}}),g(d,"Maps/GeoJSONComposition.js",[d["Core/Globals.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{win:J}=L,{format:X}=R,{error:q,extend:Z,merge:Y,wrap:V}=st;return function(N){function U(z){return this.mapView&&this.mapView.lonLatToProjectedUnits(z)}function T(z){return this.mapView&&this.mapView.projectedUnitsToLonLat(z)}function A(z,c){let D=this.options.chart.proj4||J.proj4;if(!D){q(21,!1,this);return}let{jsonmarginX:it=0,jsonmarginY:Q=0,jsonres:W=1,scale:k=1,xoffset:_=0,xpan:C=0,yoffset:h=0,ypan:l=0}=c,u=D(c.crs,[z.lon,z.lat]),v=c.cosAngle||c.rotation&&Math.cos(c.rotation),I=c.sinAngle||c.rotation&&Math.sin(c.rotation),S=c.rotation?[u[0]*v+u[1]*I,-u[0]*I+u[1]*v]:u;return{x:((S[0]-_)*k+C)*W+it,y:-(((h-S[1])*k+l)*W-Q)}}function M(z,c){let D=this.options.chart.proj4||J.proj4;if(!D){q(21,!1,this);return}if(z.y===null)return;let{jsonmarginX:it=0,jsonmarginY:Q=0,jsonres:W=1,scale:k=1,xoffset:_=0,xpan:C=0,yoffset:h=0,ypan:l=0}=c,u={x:((z.x-it)/W-C)/k+_,y:((z.y-Q)/W+l)/k+h},v=c.cosAngle||c.rotation&&Math.cos(c.rotation),I=c.sinAngle||c.rotation&&Math.sin(c.rotation),S=D(c.crs,"WGS84",c.rotation?{x:u.x*v+-(u.y*I),y:u.x*I+u.y*v}:u);return{lat:S.y,lon:S.x}}function O(z,c){c||(c=Object.keys(z.objects)[0]);let D=z.objects[c];if(D["hc-decoded-geojson"]&&D["hc-decoded-geojson"].title===z.title)return D["hc-decoded-geojson"];let it=z.arcs;if(z.transform){let C,h,l,u=z.arcs,{scale:v,translate:I}=z.transform;it=[];for(let S=0,b=u.length;Stypeof C[0]=="number"?C.reduce((h,l,u)=>{let v=l<0?it[~l]:it[l];return l<0?(v=v.slice(0,u===0?v.length:v.length-1)).reverse():u&&(v=v.slice(1)),h.concat(v)},[]):C.map(Q),W=D.geometries,k=[];for(let C=0,h=W.length;C(J[1]-$[1])*(X[0]-$[0])}function st($,J,X,q){let Z=[$[0]-J[0],$[1]-J[1]],Y=[X[0]-q[0],X[1]-q[1]],V=$[0]*J[1]-$[1]*J[0],N=X[0]*q[1]-X[1]*q[0],U=1/(Z[0]*Y[1]-Z[1]*Y[0]),T=[(V*Y[0]-N*Z[0])*U,(V*Y[1]-N*Z[1])*U];return T.isIntersection=!0,T}return{clipLineString:function($,J){let X=[],q=L($,J,!1);for(let Z=1;ZJ===0?0:J>0?1:-1),R=Math.PI/180,st=Math.PI/2,$=J=>Math.tan((st+J)/2);return class{constructor(J){var N;let X=(J.parallels||[]).map(U=>U*R),q=X[0]||0,Z=(N=X[1])!=null?N:q,Y=Math.cos(q);typeof J.projectedBounds=="object"&&(this.projectedBounds=J.projectedBounds);let V=q===Z?Math.sin(q):Math.log(Y/Math.cos(Z))/Math.log($(Z)/$(q));1e-10>Math.abs(V)&&(V=1e-10*(L(V)||1)),this.n=V,this.c=Y*Math.pow($(q),V)/V}forward(J){let{c:X,n:q,projectedBounds:Z}=this,Y=J[0]*R,V=J[1]*R;X>0?V<-st+1e-6&&(V=-st+1e-6):V>st-1e-6&&(V=st-1e-6);let N=X/Math.pow($(V),q),U=N*Math.sin(q*Y)*63.78137,T=(X-N*Math.cos(q*Y))*63.78137,A=[U,T];return Z&&(UZ.x2||TZ.y2)&&(A.outside=!0),A}inverse(J){let{c:X,n:q}=this,Z=J[0]/63.78137,Y=X-J[1]/63.78137,V=L(q)*Math.sqrt(Z*Z+Y*Y),N=Math.atan2(Z,Math.abs(Y))*L(Y);return Y*q<0&&(N-=Math.PI*L(Z)*L(Y)),[N/q/R,(2*Math.atan(Math.pow(X/V,1/q))-st)/R]}}}),g(d,"Maps/Projections/EqualEarth.js",[],function(){let L=Math.sqrt(3)/2;return class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-97.52595454902263,y2:97.52595454902263}}forward(R){let st=Math.PI/180,$=Math.asin(L*Math.sin(R[1]*st)),J=$*$,X=J*J*J;return[R[0]*st*Math.cos($)*74.03120656864502/(L*(1.340264+-.24331799999999998*J+X*(.0062510000000000005+.034164*J))),74.03120656864502*$*(1.340264+-.081106*J+X*(893e-6+.003796*J))]}inverse(R){let st=R[0]/74.03120656864502,$=R[1]/74.03120656864502,J=180/Math.PI,X=$,q,Z,Y,V;for(let T=0;T<12&&(Z=(q=X*X)*q*q,Y=X*(1.340264+-.081106*q+Z*(893e-6+.003796*q))-$,X-=V=Y/(1.340264+-.24331799999999998*q+Z*(.0062510000000000005+.034164*q)),!(1e-9>Math.abs(V)));++T);Z=(q=X*X)*q*q;let N=J*L*st*(1.340264+-.24331799999999998*q+Z*(.0062510000000000005+.034164*q))/Math.cos(X),U=J*Math.asin(Math.sin(X)/L);return Math.abs(N)>180?[NaN,NaN]:[N,U]}}}),g(d,"Maps/Projections/Miller.js",[],function(){let L=Math.PI/4,R=Math.PI/180;return class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-146.91480769173063,y2:146.91480769173063}}forward(st){return[st[0]*R*63.78137,79.7267125*Math.log(Math.tan(L+.4*st[1]*R))]}inverse(st){return[st[0]/63.78137/R,2.5*(Math.atan(Math.exp(.8*(st[1]/63.78137)))-L)/R]}}}),g(d,"Maps/Projections/Orthographic.js",[],function(){let L=Math.PI/180;return class{constructor(){this.antimeridianCutting=!1,this.bounds={x1:-63.78460826781007,x2:63.78460826781007,y1:-63.78460826781007,y2:63.78460826781007}}forward(R){let st=R[0],$=R[1]*L,J=[Math.cos($)*Math.sin(st*L)*63.78460826781007,63.78460826781007*Math.sin($)];return(st<-90||st>90)&&(J.outside=!0),J}inverse(R){let st=R[0]/63.78460826781007,$=R[1]/63.78460826781007,J=Math.sqrt(st*st+$*$),X=Math.asin(J),q=Math.sin(X);return[Math.atan2(st*q,J*Math.cos(X))/L,Math.asin(J&&$*q/J)/L]}}}),g(d,"Maps/Projections/WebMercator.js",[],function(){let L=Math.PI/180;return class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-200.3750834278071,y2:200.3750834278071},this.maxLatitude=85.0511287798}forward(R){let st=Math.sin(R[1]*L),$=[63.78137*R[0]*L,63.78137*Math.log((1+st)/(1-st))/2];return Math.abs(R[1])>this.maxLatitude&&($.outside=!0),$}inverse(R){return[R[0]/(63.78137*L),(2*Math.atan(Math.exp(R[1]/63.78137))-Math.PI/2)/L]}}}),g(d,"Maps/Projections/ProjectionRegistry.js",[d["Maps/Projections/LambertConformalConic.js"],d["Maps/Projections/EqualEarth.js"],d["Maps/Projections/Miller.js"],d["Maps/Projections/Orthographic.js"],d["Maps/Projections/WebMercator.js"]],function(L,R,st,$,J){return{EqualEarth:R,LambertConformalConic:L,Miller:st,Orthographic:$,WebMercator:J}}),g(d,"Maps/Projection.js",[d["Core/Geometry/PolygonClip.js"],d["Maps/Projections/ProjectionRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{clipLineString:$,clipPolygon:J}=L,{clamp:X,erase:q}=st,Z=2*Math.PI/360,Y=T=>(T<-180&&(T+=360),T>180&&(T-=360),T),V=T=>(1-Math.cos(T))/2,N=(T,A)=>{let M=Math.cos,O=T[1]*Z,H=T[0]*Z,z=A[1]*Z,c=A[0]*Z;return V(z-O)+M(O)*M(z)*V(c-H)};class U{static add(A,M){U.registry[A]=M}static distance(A,M){let{atan2:O,sqrt:H}=Math,z=N(A,M);return 6371e3*(2*O(H(z),H(1-z)))}static geodesic(A,M,O,H=5e5){let{atan2:z,cos:c,sin:D,sqrt:it}=Math,Q=U.distance,W=A[1]*Z,k=A[0]*Z,_=M[1]*Z,C=M[0]*Z,h=c(W)*c(k),l=c(_)*c(C),u=c(W)*D(k),v=c(_)*D(C),I=D(W),S=D(_),b=Q(A,M),K=b/6371e3,ct=D(K),et=Math.round(b/H),dt=[];if(O&&dt.push(A),et>1){let pt=1/et;for(let bt=pt;bt<.999;bt+=pt){let Mt=D((1-bt)*K)/ct,w=D(bt*K)/ct,B=Mt*h+w*l,tt=Mt*u+w*v,nt=z(Mt*I+w*S,it(B*B+tt*tt)),x=z(tt,B);dt.push([x/Z,nt/Z])}}return O&&dt.push(M),dt}static insertGeodesics(A){let M=A.length-1;for(;M--;)if(Math.max(Math.abs(A[M][0]-A[M+1][0]),Math.abs(A[M][1]-A[M+1][1]))>10){let O=U.geodesic(A[M],A[M+1]);O.length&&A.splice(M+1,0,...O)}}static toString(A){let{name:M,rotation:O}=A||{};return[M,O&&O.join(",")].join(";")}constructor(A={}){this.hasCoordinates=!1,this.hasGeoProjection=!1,this.maxLatitude=90,this.options=A;let{name:M,projectedBounds:O,rotation:H}=A;this.rotator=H?this.getRotator(H):void 0;let z=M?U.registry[M]:void 0;z&&(this.def=new z(A));let{def:c,rotator:D}=this;c&&(this.maxLatitude=c.maxLatitude||90,this.hasGeoProjection=!0),D&&c?(this.forward=it=>c.forward(D.forward(it)),this.inverse=it=>D.inverse(c.inverse(it))):c?(this.forward=it=>c.forward(it),this.inverse=it=>c.inverse(it)):D&&(this.forward=D.forward,this.inverse=D.inverse),this.bounds=O==="world"?c&&c.bounds:O}lineIntersectsBounds(A){let{x1:M,x2:O,y1:H,y2:z}=this.bounds||{},c=(Q,W,k)=>{let[_,C]=Q,h=W?0:1;if(typeof k=="number"&&_[W]>=k!=C[W]>=k){let l=(k-_[W])/(C[W]-_[W]),u=_[h]+l*(C[h]-_[h]);return W?[u,k]:[k,u]}},D,it=A[0];return((D=c(A,0,M))||(D=c(A,0,O)))&&(it=D,A[1]=D),((D=c(A,1,H))||(D=c(A,1,z)))&&(it=D),it}getRotator(A){let M=A[0]*Z,O=(A[1]||0)*Z,H=(A[2]||0)*Z,z=Math.cos(O),c=Math.sin(O),D=Math.cos(H),it=Math.sin(H);if(M!==0||O!==0||H!==0)return{forward:Q=>{let W=Q[0]*Z+M,k=Q[1]*Z,_=Math.cos(k),C=Math.cos(W)*_,h=Math.sin(W)*_,l=Math.sin(k),u=l*z+C*c;return[Math.atan2(h*D-u*it,C*z-l*c)/Z,Math.asin(u*D+h*it)/Z]},inverse:Q=>{let W=Q[0]*Z,k=Q[1]*Z,_=Math.cos(k),C=Math.cos(W)*_,h=Math.sin(W)*_,l=Math.sin(k),u=l*D-h*it;return[(Math.atan2(h*D+l*it,C*z+u*c)-M)/Z,Math.asin(u*z-C*c)/Z]}}}forward(A){return A}inverse(A){return A}cutOnAntimeridian(A,M){let O,H=[],z=[A];for(let c=0,D=A.length;c90)&&(k<-90||k>90)&&W>0!=k>0){let _=X((180-(W+360)%360)/((k+360)%360-(W+360)%360),0,1),C=Q[1]+_*(it[1]-Q[1]);H.push({i:c,lat:C,direction:W<0?1:-1,previousLonLat:Q,lonLat:it})}}if(H.length)if(M){H.length%2==1&&(O=H.slice().sort((D,it)=>Math.abs(it.lat)-Math.abs(D.lat))[0],q(H,O));let c=H.length-2;for(;c>=0;){let D=H[c].i,it=Y(180+1e-6*H[c].direction),Q=Y(180-1e-6*H[c].direction),W=A.splice(D,H[c+1].i-D,...U.geodesic([it,H[c].lat],[it,H[c+1].lat],!0));W.push(...U.geodesic([Q,H[c+1].lat],[Q,H[c].lat],!0)),z.push(W),c-=2}if(O)for(let D=0;D-1){let _=(Q<0?-1:1)*this.maxLatitude,C=Y(180+1e-6*it),h=Y(180-1e-6*it),l=U.geodesic([C,Q],[C,_],!0);for(let u=C+120*it;u>-180&&u<180;u+=120*it)l.push([u,_]);l.push(...U.geodesic([h,_],[h,O.lat],!0)),W.splice(k,0,...l);break}}}else{let c=H.length;for(;c--;){let D=H[c].i,it=A.splice(D,A.length,[Y(180+1e-6*H[c].direction),H[c].lat]);it.unshift([Y(180-1e-6*H[c].direction),H[c].lat]),z.push(it)}}return z}path(A){let M,{bounds:O,def:H,rotator:z}=this,c=[],D=A.type==="Polygon"||A.type==="MultiPolygon",it=this.hasGeoProjection,Q=!H||H.antimeridianCutting!==!1,W=Q?z:void 0,k=Q&&H||this;O&&(M=[[O.x1,O.y1],[O.x2,O.y1],[O.x2,O.y2],[O.x1,O.y2]]);let _=C=>{let h=C.map(u=>{if(Q){W&&(u=W.forward(u));let v=u[0];1e-6>Math.abs(v-180)&&(v=v<180?179.999999:180.000001),u=[v,u[1]]}return u}),l=[h];it&&(U.insertGeodesics(h),Q&&(l=this.cutOnAntimeridian(h,D))),l.forEach(u=>{let v,I;if(u.length<2)return;let S=!1,b=!1,K=pt=>{S?c.push(["L",pt[0],pt[1]]):(c.push(["M",pt[0],pt[1]]),S=!0)},ct=!1,et=!1,dt=u.map(pt=>{let bt=k.forward(pt);return bt.outside?ct=!0:et=!0,bt[1]===1/0?bt[1]=1e10:bt[1]===-1/0&&(bt[1]=-1e10),bt});if(Q){if(D&&dt.push(dt[0]),ct){if(!et)return;if(M){if(D)dt=J(dt,M);else if(O){$(dt,M).forEach(pt=>{S=!1,pt.forEach(K)});return}}}dt.forEach(K)}else for(let pt=0;ptK(k.forward(w))):S=!1),K(Mt),I=bt,b=!1)}})};return A.type==="LineString"?_(A.coordinates):A.type==="MultiLineString"?A.coordinates.forEach(C=>_(C)):A.type==="Polygon"?(A.coordinates.forEach(C=>_(C)),c.length&&c.push(["Z"])):A.type==="MultiPolygon"&&(A.coordinates.forEach(C=>{C.forEach(h=>_(h))}),c.length&&c.push(["Z"])),c}}return U.registry=R,U}),g(d,"Maps/MapView.js",[d["Core/Globals.js"],d["Maps/MapViewDefaults.js"],d["Maps/GeoJSONComposition.js"],d["Core/Geometry/GeometryUtilities.js"],d["Maps/MapUtilities.js"],d["Maps/Projection.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q){let{composed:Z}=L,{pointInPolygon:Y}=$,{topo2geo:V}=st,{boundsFromPath:N}=J,{addEvent:U,clamp:T,crisp:A,fireEvent:M,isArray:O,isNumber:H,isObject:z,isString:c,merge:D,pick:it,pushUnique:Q,relativeLength:W}=q,k={};function _(u,v){let{width:I,height:S}=v;return Math.log(400.979322/Math.max((u.x2-u.x1)/(I/256),(u.y2-u.y1)/(S/256)))/Math.log(2)}function C(u){var v,I;u.seriesOptions.mapData&&((I=this.mapView)==null||I.recommendMapView(this,[this.options.chart.map,u.seriesOptions.mapData],(v=this.options.drilldown)==null?void 0:v.mapZooming))}class h{static compose(v){Q(Z,"MapView")&&(k=v.maps,U(v,"afterInit",function(){this.mapView=new h(this,this.options.mapView)},{order:0}),U(v,"addSeriesAsDrilldown",C),U(v,"afterDrillUp",C))}static compositeBounds(v){if(v.length)return v.slice(1).reduce((I,S)=>(I.x1=Math.min(I.x1,S.x1),I.y1=Math.min(I.y1,S.y1),I.x2=Math.max(I.x2,S.x2),I.y2=Math.max(I.y2,S.y2),I),D(v[0]))}static mergeInsets(v,I){let S=K=>{let ct={};return K.forEach((et,dt)=>{ct[et&&et.id||`i${dt}`]=et}),ct},b=D(S(v),S(I));return Object.keys(b).map(K=>b[K])}constructor(v,I){var ct;this.allowTransformAnimation=!0,this.eventsToUnbind=[],this.insets=[],this.padding=[0,0,0,0],this.recommendedMapView={},this instanceof l||this.recommendMapView(v,[v.options.chart.map,...(v.options.series||[]).map(et=>et.mapData)]),this.userOptions=I||{};let S=D(R,this.recommendedMapView,I),b=(ct=this.recommendedMapView)==null?void 0:ct.insets,K=I&&I.insets;b&&K&&(S.insets=h.mergeInsets(b,K)),this.chart=v,this.center=S.center,this.options=S,this.projection=new X(S.projection),this.playingField=v.plotBox,this.zoom=S.zoom||0,this.minZoom=S.minZoom,this.createInsets(),this.eventsToUnbind.push(U(v,"afterSetChartSize",()=>{this.playingField=this.getField(),(this.minZoom===void 0||this.minZoom===this.zoom)&&(this.fitToBounds(void 0,void 0,!1),!this.chart.hasRendered&&H(this.userOptions.zoom)&&(this.zoom=this.userOptions.zoom),this.userOptions.center&&D(!0,this.center,this.userOptions.center))})),this.setUpEvents()}createInsets(){let v=this.options,I=v.insets;I&&I.forEach(S=>{let b=new l(this,D(v.insetOptions,S));this.insets.push(b)})}fitToBounds(v,I,S=!0,b){let K=v||this.getProjectedBounds();if(K){let ct=it(I,v?0:this.options.padding),et=this.getField(!1),dt=O(ct)?ct:[ct,ct,ct,ct];this.padding=[W(dt[0],et.height),W(dt[1],et.width),W(dt[2],et.height),W(dt[3],et.width)],this.playingField=this.getField();let pt=_(K,this.playingField);v||(this.minZoom=pt);let bt=this.projection.inverse([(K.x2+K.x1)/2,(K.y2+K.y1)/2]);this.setView(bt,pt,S,b)}}getField(v=!0){let I=v?this.padding:[0,0,0,0];return{x:I[3],y:I[0],width:this.chart.plotWidth-I[1]-I[3],height:this.chart.plotHeight-I[0]-I[2]}}getGeoMap(v){if(c(v))return k[v]&&k[v].type==="Topology"?V(k[v]):k[v];if(z(v,!0)){if(v.type==="FeatureCollection")return v;if(v.type==="Topology")return V(v)}}getMapBBox(){let v=this.getProjectedBounds(),I=this.getScale();if(v){let S=this.padding,b=this.projectedUnitsToPixels({x:v.x1,y:v.y2});return{width:(v.x2-v.x1)*I+S[1]+S[3],height:(v.y2-v.y1)*I+S[0]+S[2],x:b.x-S[3],y:b.y-S[0]}}}getProjectedBounds(){let v=this.projection,I=this.chart.series.reduce((b,K)=>{let ct=K.getProjectedBounds&&K.getProjectedBounds();return ct&&K.options.affectsMapView!==!1&&b.push(ct),b},[]),S=this.options.fitToGeometry;if(S){if(!this.fitToGeometryCache)if(S.type==="MultiPoint"){let b=S.coordinates.map(et=>v.forward(et)),K=b.map(et=>et[0]),ct=b.map(et=>et[1]);this.fitToGeometryCache={x1:Math.min.apply(0,K),x2:Math.max.apply(0,K),y1:Math.min.apply(0,ct),y2:Math.max.apply(0,ct)}}else this.fitToGeometryCache=N(v.path(S));return this.fitToGeometryCache}return this.projection.bounds||h.compositeBounds(I)}getScale(){return .638436911716859*Math.pow(2,this.zoom)}getSVGTransform(){let{x:v,y:I,width:S,height:b}=this.playingField,K=this.projection.forward(this.center),ct=this.projection.hasCoordinates?-1:1,et=this.getScale(),dt=et*ct,pt=v+S/2-K[0]*et,bt=I+b/2-K[1]*dt;return{scaleX:et,scaleY:dt,translateX:pt,translateY:bt}}lonLatToPixels(v){let I=this.lonLatToProjectedUnits(v);if(I)return this.projectedUnitsToPixels(I)}lonLatToProjectedUnits(v){let I=this.chart,S=I.mapTransforms;if(S){for(let K in S)if(Object.hasOwnProperty.call(S,K)&&S[K].hitZone){let ct=I.transformFromLatLon(v,S[K]);if(ct&&Y(ct,S[K].hitZone.coordinates[0]))return ct}return I.transformFromLatLon(v,S.default)}for(let K of this.insets)if(K.options.geoBounds&&Y({x:v.lon,y:v.lat},K.options.geoBounds.coordinates[0])){let ct=K.projection.forward([v.lon,v.lat]),et=K.projectedUnitsToPixels({x:ct[0],y:ct[1]});return this.pixelsToProjectedUnits(et)}let b=this.projection.forward([v.lon,v.lat]);if(!b.outside)return{x:b[0],y:b[1]}}projectedUnitsToLonLat(v){let I=this.chart,S=I.mapTransforms;if(S){for(let ct in S)if(Object.hasOwnProperty.call(S,ct)&&S[ct].hitZone&&Y(v,S[ct].hitZone.coordinates[0]))return I.transformToLatLon(v,S[ct]);return I.transformToLatLon(v,S.default)}let b=this.projectedUnitsToPixels(v);for(let ct of this.insets)if(ct.hitZone&&Y(b,ct.hitZone.coordinates[0])){let et=ct.pixelsToProjectedUnits(b),dt=ct.projection.inverse([et.x,et.y]);return{lon:dt[0],lat:dt[1]}}let K=this.projection.inverse([v.x,v.y]);return{lon:K[0],lat:K[1]}}recommendMapView(v,I,S=!1){var et;this.recommendedMapView={};let b=I.map(dt=>this.getGeoMap(dt)),K=[];b.forEach(dt=>{if(dt&&(Object.keys(this.recommendedMapView).length||(this.recommendedMapView=dt["hc-recommended-mapview"]||{}),dt.bbox)){let[pt,bt,Mt,w]=dt.bbox;K.push({x1:pt,y1:bt,x2:Mt,y2:w})}});let ct=K.length&&h.compositeBounds(K);M(this,"onRecommendMapView",{geoBounds:ct,chart:v},function(){if(ct&&this.recommendedMapView){if(!this.recommendedMapView.projection){let{x1:dt,y1:pt,x2:bt,y2:Mt}=ct;this.recommendedMapView.projection=bt-dt>180&&Mt-pt>90?{name:"EqualEarth",parallels:[0,0],rotation:[0]}:{name:"LambertConformalConic",parallels:[pt,Mt],rotation:[-(dt+bt)/2]}}this.recommendedMapView.insets||(this.recommendedMapView.insets=void 0)}}),this.geoMap=b[0],S&&v.hasRendered&&!((et=v.userOptions.mapView)!=null&&et.projection)&&this.recommendedMapView&&this.update(this.recommendedMapView)}redraw(v){this.chart.series.forEach(I=>{I.useMapGeometry&&(I.isDirty=!0)}),this.chart.redraw(v)}setView(v,I,S=!0,b){v&&(this.center=v),typeof I=="number"&&(typeof this.minZoom=="number"&&(I=Math.max(I,this.minZoom)),typeof this.options.maxZoom=="number"&&(I=Math.min(I,this.options.maxZoom)),H(I)&&(this.zoom=I));let K=this.getProjectedBounds();if(K){let ct=this.projection.forward(this.center),{x:et,y:dt,width:pt,height:bt}=this.playingField,Mt=this.getScale(),w=this.projectedUnitsToPixels({x:K.x1,y:K.y1}),B=this.projectedUnitsToPixels({x:K.x2,y:K.y2}),tt=[(K.x1+K.x2)/2,(K.y1+K.y2)/2];if(!this.chart.series.some(nt=>nt.isDrilling)){let nt=w.x,x=B.y,y=B.x,F=w.y;y-ntet+pt&&nt>et&&(ct[0]+=Math.min(y-pt-et,nt-et)/Mt),F-xdt+bt&&x>dt&&(ct[1]-=Math.min(F-bt-dt,x-dt)/Mt),this.center=this.projection.inverse(ct)}this.insets.forEach(nt=>{nt.options.field&&(nt.hitZone=nt.getHitZone(),nt.playingField=nt.getField())}),this.render()}M(this,"afterSetView"),S&&this.redraw(b)}projectedUnitsToPixels(v){let I=this.getScale(),S=this.projection.forward(this.center),b=this.playingField,K=b.x+b.width/2,ct=b.y+b.height/2;return{x:K-I*(S[0]-v.x),y:ct+I*(S[1]-v.y)}}pixelsToLonLat(v){return this.projectedUnitsToLonLat(this.pixelsToProjectedUnits(v))}pixelsToProjectedUnits(v){let{x:I,y:S}=v,b=this.getScale(),K=this.projection.forward(this.center),ct=this.playingField,et=ct.x+ct.width/2,dt=ct.y+ct.height/2;return{x:K[0]+(I-et)/b,y:K[1]-(S-dt)/b}}setUpEvents(){let v,I,S,{chart:b}=this,K=ct=>{let{lastTouches:et,pinchDown:dt}=b.pointer,pt=this.projection,bt=ct.touches,{mouseDownX:Mt,mouseDownY:w}=b,B=0;if((dt==null?void 0:dt.length)===1?(Mt=dt[0].chartX,w=dt[0].chartY):(dt==null?void 0:dt.length)===2&&(Mt=(dt[0].chartX+dt[1].chartX)/2,w=(dt[0].chartY+dt[1].chartY)/2),(bt==null?void 0:bt.length)===2&&et&&(B=Math.log(Math.sqrt(Math.pow(et[0].chartX-et[1].chartX,2)+Math.pow(et[0].chartY-et[1].chartY,2))/Math.sqrt(Math.pow(bt[0].chartX-bt[1].chartX,2)+Math.pow(bt[0].chartY-bt[1].chartY,2)))/Math.log(.5)),H(Mt)&&H(w)){let tt=`${Mt},${w}`,{chartX:nt,chartY:x}=ct.originalEvent;(bt==null?void 0:bt.length)===2&&(nt=(bt[0].chartX+bt[1].chartX)/2,x=(bt[0].chartY+bt[1].chartY)/2),tt!==I&&(I=tt,v=this.projection.forward(this.center),S=(this.projection.options.rotation||[0,0]).slice());let y=pt.def&&pt.def.bounds,F=y&&_(y,this.playingField)||-1/0;if(pt.options.name==="Orthographic"&&2>((bt==null?void 0:bt.length)||0)&&(this.minZoom||1/0)<1.3*F){let lt=440/(this.getScale()*Math.min(b.plotWidth,b.plotHeight));if(S){let rt=(Mt-nt)*lt-S[0],gt=T(-S[1]-(w-x)*lt,-80,80),vt=this.zoom;this.update({projection:{rotation:[-rt,-gt]}},!1),this.fitToBounds(void 0,void 0,!1),this.zoom=vt,b.redraw(!1)}}else if(H(nt)&&H(x)){let lt=this.getScale(),rt=this.projection.hasCoordinates?1:-1,gt=this.projection.inverse([v[0]+(Mt-nt)/lt,v[1]-(w-x)/lt*rt]);isNaN(gt[0]+gt[1])||this.zoomBy(B,gt,void 0,!1)}ct.preventDefault()}};U(b,"pan",K),U(b,"touchpan",K),U(b,"selection",ct=>{if(ct.resetSelection)this.zoomBy();else{let et=ct.x-b.plotLeft,dt=ct.y-b.plotTop,{y:pt,x:bt}=this.pixelsToProjectedUnits({x:et,y:dt}),{y:Mt,x:w}=this.pixelsToProjectedUnits({x:et+ct.width,y:dt+ct.height});this.fitToBounds({x1:bt,y1:pt,x2:w,y2:Mt},void 0,!0,!ct.originalEvent.touches&&void 0),/^touch/.test(ct.originalEvent.type)||b.showResetZoom(),ct.preventDefault()}})}render(){this.group||(this.group=this.chart.renderer.g("map-view").attr({zIndex:4}).add())}update(v,I=!0,S){let b=v.projection,K=b&&X.toString(b)!==X.toString(this.options.projection),ct=!1;D(!0,this.userOptions,v),D(!0,this.options,v),"insets"in v&&(this.insets.forEach(et=>et.destroy()),this.insets.length=0,ct=!0),(K||"fitToGeometry"in v)&&delete this.fitToGeometryCache,(K||ct)&&(this.chart.series.forEach(et=>{let dt=et.transformGroups;if(et.clearBounds&&et.clearBounds(),et.isDirty=!0,et.isDirtyData=!0,ct&&dt)for(;dt.length>1;){let pt=dt.pop();pt&&pt.destroy()}}),K&&(this.projection=new X(this.options.projection)),ct&&this.createInsets(),!v.center&&Object.hasOwnProperty.call(v,"zoom")&&!H(v.zoom)&&this.fitToBounds(void 0,void 0,!1)),v.center||H(v.zoom)?this.setView(this.options.center,v.zoom,!1):"fitToGeometry"in v&&this.fitToBounds(void 0,void 0,!1),I&&this.chart.redraw(S)}zoomBy(v,I,S,b){let K=this.chart,ct=this.projection.forward(this.center);if(typeof v=="number"){let et,dt,pt,bt=this.zoom+v;if(S){let[Mt,w]=S,B=this.getScale(),tt=Mt-K.plotLeft-K.plotWidth/2,nt=w-K.plotTop-K.plotHeight/2;dt=ct[0]+tt/B,pt=ct[1]+nt/B}if(typeof dt=="number"&&typeof pt=="number"){let Mt=1-Math.pow(2,this.zoom)/Math.pow(2,bt),w=ct[0]-dt,B=ct[1]-pt;ct[0]-=w*Mt,ct[1]+=B*Mt,et=this.projection.inverse(ct)}this.setView(I||et,bt,void 0,b)}else this.fitToBounds(void 0,void 0,void 0,b)}}class l extends h{constructor(v,I){if(super(v.chart,I),this.id=I.id,this.mapView=v,this.options=D({center:[0,0]},v.options.insetOptions,I),this.allBounds=[],this.options.geoBounds){let S=v.projection.path(this.options.geoBounds);this.geoBoundsProjectedBox=N(S),this.geoBoundsProjectedPolygon=S.map(b=>[b[1]||0,b[2]||0])}}getField(v=!0){let I=this.hitZone;if(I){let S=v?this.padding:[0,0,0,0],b=I.coordinates[0],K=b.map(Mt=>Mt[0]),ct=b.map(Mt=>Mt[1]),et=Math.min.apply(0,K)+S[3],dt=Math.max.apply(0,K)-S[1],pt=Math.min.apply(0,ct)+S[0],bt=Math.max.apply(0,ct)-S[2];if(H(et)&&H(pt))return{x:et,y:pt,width:dt-et,height:bt-pt}}return super.getField.call(this,v)}getHitZone(){let{chart:v,mapView:I,options:S}=this,{coordinates:b}=S.field||{};if(b){let K=b[0];if(S.units==="percent"){let ct=S.relativeTo==="mapBoundingBox"&&I.getMapBBox()||D(v.plotBox,{x:0,y:0});K=K.map(et=>[W(`${et[0]}%`,ct.width,ct.x),W(`${et[1]}%`,ct.height,ct.y)])}return{type:"Polygon",coordinates:[K]}}}getProjectedBounds(){return h.compositeBounds(this.allBounds)}isInside(v){let{geoBoundsProjectedBox:I,geoBoundsProjectedPolygon:S}=this;return!!(I&&v.x>=I.x1&&v.x<=I.x2&&v.y>=I.y1&&v.y<=I.y2&&S&&Y(v,S))}render(){let{chart:v,mapView:I,options:S}=this,b=S.borderPath||S.field;if(b&&I.group){let K=!0;this.border||(this.border=v.renderer.path().addClass("highcharts-mapview-inset-border").add(I.group),K=!1),v.styledMode||this.border.attr({stroke:S.borderColor,"stroke-width":S.borderWidth});let ct=this.border.strokeWidth(),et=S.relativeTo==="mapBoundingBox"&&I.getMapBBox()||I.playingField,dt=(b.coordinates||[]).reduce((pt,bt)=>bt.reduce((Mt,w,B)=>{let[tt,nt]=w;return S.units==="percent"&&(tt=v.plotLeft+W(`${tt}%`,et.width,et.x),nt=v.plotTop+W(`${nt}%`,et.height,et.y)),tt=A(tt,ct),nt=A(nt,ct),Mt.push(B===0?["M",tt,nt]:["L",tt,nt]),Mt},pt),[]);this.border[K?"animate":"attr"]({d:dt})}}destroy(){this.border&&(this.border=this.border.destroy()),this.eventsToUnbind.forEach(v=>v())}setUpEvents(){}}return h}),g(d,"Series/Map/MapSeries.js",[d["Core/Animation/AnimationUtilities.js"],d["Series/ColorMapComposition.js"],d["Series/CenteredUtilities.js"],d["Core/Globals.js"],d["Core/Chart/MapChart.js"],d["Series/Map/MapPoint.js"],d["Series/Map/MapSeriesDefaults.js"],d["Maps/MapView.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let{animObject:N,stop:U}=L,{noop:T}=$,{splitPath:A}=J,{column:M,scatter:O}=Y.seriesTypes,{extend:H,find:z,fireEvent:c,getNestedProperty:D,isArray:it,defined:Q,isNumber:W,isObject:k,merge:_,objectEach:C,pick:h,splat:l}=V;class u extends O{constructor(){super(...arguments),this.processedData=[]}animate(I){let{chart:S,group:b}=this,K=N(this.options.animation);I?b.attr({translateX:S.plotLeft+S.plotWidth/2,translateY:S.plotTop+S.plotHeight/2,scaleX:.001,scaleY:.001}):b.animate({translateX:S.plotLeft,translateY:S.plotTop,scaleX:1,scaleY:1},K)}clearBounds(){this.points.forEach(I=>{delete I.bounds,delete I.insetIndex,delete I.projectedPath}),delete this.bounds}doFullTranslate(){return!!(this.isDirtyData||this.chart.isResizing||!this.hasRendered)}drawMapDataLabels(){super.drawDataLabels(),this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)}drawPoints(){let I=this,{chart:S,group:b,transformGroups:K=[]}=this,{mapView:ct,renderer:et}=S;if(ct){this.transformGroups=K,K[0]||(K[0]=et.g().add(b));for(let dt=0,pt=ct.insets.length;dt{let{graphic:pt}=dt;dt.group=K[typeof dt.insetIndex=="number"?dt.insetIndex+1:0],pt&&pt.parentGroup!==dt.group&&pt.add(dt.group)}),M.prototype.drawPoints.apply(this),this.points.forEach(dt=>{let pt=dt.graphic;if(pt){let bt=pt.animate,Mt="";dt.name&&(Mt+="highcharts-name-"+dt.name.replace(/ /g,"-").toLowerCase()),dt.properties&&dt.properties["hc-key"]&&(Mt+=" highcharts-key-"+dt.properties["hc-key"].toString().toLowerCase()),Mt&&pt.addClass(Mt),S.styledMode&&pt.css(this.pointAttribs(dt,dt.selected&&"select"||void 0)),pt.attr({visibility:!dt.visible&&(dt.visible||dt.isNull)?"hidden":"inherit"}),pt.animate=function(w,B,tt){let nt=W(w["stroke-width"])&&!W(pt["stroke-width"]),x=W(pt["stroke-width"])&&!W(w["stroke-width"]);if(nt||x){let y=h(I.getStrokeWidth(I.options),1)/(S.mapView&&S.mapView.getScale()||1);nt&&(pt["stroke-width"]=y),x&&(w["stroke-width"]=y)}return bt.call(pt,w,B,x?function(){pt.element.removeAttribute("stroke-width"),delete pt["stroke-width"],tt&&tt.apply(this,arguments)}:tt)}}})),K.forEach((dt,pt)=>{let bt=(pt===0?ct:ct.insets[pt-1]).getSVGTransform(),Mt=h(this.getStrokeWidth(this.options),1),w=bt.scaleX,B=bt.scaleY>0?1:-1,tt=nt=>{(I.points||[]).forEach(x=>{let y,F=x.graphic;F&&F["stroke-width"]&&(y=this.getStrokeWidth(x.options))&&F.attr({"stroke-width":y/nt})})};if(et.globalAnimation&&S.hasRendered&&ct.allowTransformAnimation){let nt=Number(dt.attr("translateX")),x=Number(dt.attr("translateY")),y=Number(dt.attr("scaleX")),F=(gt,vt)=>{let Ot=y+(w-y)*vt.pos;dt.attr({translateX:nt+(bt.translateX-nt)*vt.pos,translateY:x+(bt.translateY-x)*vt.pos,scaleX:Ot,scaleY:Ot*B,"stroke-width":Mt/Ot}),tt(Ot)},lt=_(N(et.globalAnimation)),rt=lt.step;lt.step=function(){rt&&rt.apply(this,arguments),F.apply(this,arguments)},dt.attr({animator:0}).animate({animator:1},lt,function(){typeof et.globalAnimation!="boolean"&&et.globalAnimation.complete&&et.globalAnimation.complete({applyDrilldown:!0}),c(this,"mapZoomComplete")}.bind(this))}else U(dt),dt.attr(_(bt,{"stroke-width":Mt/w})),tt(w)}),this.isDrilling||this.drawMapDataLabels()}}getProjectedBounds(){if(!this.bounds&&this.chart.mapView){let{insets:I,projection:S}=this.chart.mapView,b=[];(this.points||[]).forEach(K=>{if(K.path||K.geometry){if(typeof K.path=="string"?K.path=A(K.path):it(K.path)&&K.path[0]==="M"&&(K.path=this.chart.renderer.pathToSegments(K.path)),!K.bounds){let ct=K.getProjectedBounds(S);if(ct){K.labelrank=h(K.labelrank,(ct.x2-ct.x1)*(ct.y2-ct.y1));let{midX:et,midY:dt}=ct;if(I&&W(et)&&W(dt)){let pt=z(I,bt=>bt.isInside({x:et,y:dt}));pt&&(delete K.projectedPath,(ct=K.getProjectedBounds(pt.projection))&&pt.allBounds.push(ct),K.insetIndex=I.indexOf(pt))}K.bounds=ct}}K.bounds&&K.insetIndex===void 0&&b.push(K.bounds)}}),this.bounds=Z.compositeBounds(b)}return this.bounds}getStrokeWidth(I){let S=this.pointAttrToOptions;return I[S&&S["stroke-width"]||"borderWidth"]}hasData(){return!!this.processedXData.length}pointAttribs(I,S){var pt;let{mapView:b,styledMode:K}=I.series.chart,ct=K?this.colorAttribs(I):M.prototype.pointAttribs.call(this,I,S),et=this.getStrokeWidth(I.options);if(S){let bt=_(this.options.states&&this.options.states[S],I.options.states&&I.options.states[S]||{}),Mt=this.getStrokeWidth(bt);Q(Mt)&&(et=Mt),ct.stroke=(pt=bt.borderColor)!=null?pt:I.color}et&&b&&(et/=b.getScale());let dt=this.getStrokeWidth(this.options);return ct.dashstyle&&b&&W(dt)&&(et=dt/b.getScale()),I.visible||(ct.fill=this.options.nullColor),Q(et)?ct["stroke-width"]=et:delete ct["stroke-width"],ct["stroke-linecap"]=ct["stroke-linejoin"]=this.options.linecap,ct}updateData(){return!this.processedData&&super.updateData.apply(this,arguments)}setData(I,S=!0,b,K){delete this.bounds,super.setData(I,!1,void 0,K),this.processData(),this.generatePoints(),S&&this.chart.redraw(b)}processData(){let I,S,b,K=this.options,ct=K.data,et=this.chart,dt=et.options.chart,pt=this.joinBy,bt=K.keys||this.pointArrayMap,Mt=[],w={},B=this.chart.mapView,tt=B&&(k(K.mapData,!0)?B.getGeoMap(K.mapData):B.geoMap),nt=et.mapTransforms=dt.mapTransforms||tt&&tt["hc-transform"]||et.mapTransforms;nt&&C(nt,y=>{y.rotation&&(y.cosAngle=Math.cos(y.rotation),y.sinAngle=Math.sin(y.rotation))}),it(K.mapData)?b=K.mapData:tt&&tt.type==="FeatureCollection"&&(this.mapTitle=tt.title,b=$.geojson(tt,this.type,this)),this.processedData=[];let x=this.processedData;if(ct){let y;for(let F=0,lt=ct.length;Fbt.length&&typeof y[0]=="string"&&(x[F]["hc-key"]=y[0],++rt);for(let gt=0;gt0?X.prototype.setNestedProperty(x[F],y[rt],bt[gt]):x[F][bt[gt]]=y[rt])}else x[F]=ct[F];pt&&pt[0]==="_i"&&(x[F]._i=F)}}if(b){this.mapData=b,this.mapMap={};for(let y=0;y{let lt=D(y,F);w[lt]&&Mt.push(w[lt])})}if(K.allAreas){if(pt[1]){let F=pt[1];x.forEach(lt=>{Mt.push(D(F,lt))})}let y="|"+Mt.map(function(F){return F&&F[pt[0]]}).join("|")+"|";b.forEach(F=>{pt[0]&&y.indexOf("|"+F[pt[0]]+"|")!==-1||x.push(_(F,{value:null}))})}}this.processedXData=Array(x.length)}setOptions(I){let S=super.setOptions(I),b=S.joinBy;return S.joinBy===null&&(b="_i"),(b=this.joinBy=l(b))[1]||(b[1]=b[0]),S}translate(){let I=this.doFullTranslate(),S=this.chart.mapView,b=S&&S.projection;if(this.chart.hasRendered&&(this.isDirtyData||!this.hasRendered)&&(this.processData(),this.generatePoints(),delete this.bounds,!S||S.userOptions.center||W(S.userOptions.zoom)||S.zoom!==S.minZoom?this.getProjectedBounds():S.fitToBounds(void 0,void 0,!1)),S){let K=S.getSVGTransform();this.points.forEach(ct=>{let et=W(ct.insetIndex)&&S.insets[ct.insetIndex].getSVGTransform()||K;et&&ct.bounds&&W(ct.bounds.midX)&&W(ct.bounds.midY)&&(ct.plotX=ct.bounds.midX*et.scaleX+et.translateX,ct.plotY=ct.bounds.midY*et.scaleY+et.translateY),I&&(ct.shapeType="path",ct.shapeArgs={d:X.getProjectedPath(ct,b)}),ct.hiddenInDataClass||(ct.projectedPath&&!ct.projectedPath.length?ct.setVisible(!1):ct.visible||ct.setVisible(!0))})}c(this,"afterTranslate")}update(I){var S;I.mapData&&((S=this.chart.mapView)==null||S.recommendMapView(this.chart,[this.chart.options.chart.map,...(this.chart.options.series||[]).map((b,K)=>K===this._i?I.mapData:b.mapData)],!0)),super.update.apply(this,arguments)}}return u.defaultOptions=_(O.defaultOptions,q),H(u.prototype,{type:"map",axisTypes:R.seriesMembers.axisTypes,colorAttribs:R.seriesMembers.colorAttribs,colorKey:R.seriesMembers.colorKey,directTouch:!0,drawDataLabels:T,drawGraph:T,forceDL:!0,getCenter:st.getCenter,getExtremesFromAll:!0,getSymbol:T,isCartesian:!1,parallelArrays:R.seriesMembers.parallelArrays,pointArrayMap:R.seriesMembers.pointArrayMap,pointClass:X,preserveAspectRatio:!0,searchPoint:T,trackerGroups:R.seriesMembers.trackerGroups,useMapGeometry:!0}),R.compose(u),Y.registerSeriesType("map",u),u}),g(d,"Series/MapLine/MapLineSeriesDefaults.js",[],function(){return{lineWidth:1,fillColor:"none",legendSymbol:"lineMarker"}}),g(d,"Series/MapLine/MapLineSeries.js",[d["Series/MapLine/MapLineSeriesDefaults.js"],d["Series/Map/MapSeries.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{extend:J,merge:X}=$;class q extends R{pointAttribs(Y,V){let N=super.pointAttribs(Y,V);return N.fill=this.options.fillColor,N}}return q.defaultOptions=X(R.defaultOptions,L),J(q.prototype,{type:"mapline",colorProp:"stroke",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"}}),st.registerSeriesType("mapline",q),q}),g(d,"Series/MapPoint/MapPointPoint.js",[d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R){let{scatter:st}=L.seriesTypes,{isNumber:$}=R;class J extends st.prototype.pointClass{isValid(){return!!(this.options.geometry||$(this.x)&&$(this.y)||$(this.options.lon)&&$(this.options.lat))}}return J}),g(d,"Series/MapPoint/MapPointSeriesDefaults.js",[],function(){return{dataLabels:{crop:!1,defer:!1,enabled:!0,formatter:function(){return this.point.name},overflow:!1,style:{color:"#000000"}},legendSymbol:"lineMarker"}}),g(d,"Series/MapPoint/MapPointSeries.js",[d["Core/Globals.js"],d["Series/MapPoint/MapPointPoint.js"],d["Series/MapPoint/MapPointSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){let{noop:q}=L,{map:Z,scatter:Y}=$.seriesTypes,{extend:V,fireEvent:N,isNumber:U,merge:T}=X;class A extends Y{constructor(){super(...arguments),this.clearBounds=Z.prototype.clearBounds}drawDataLabels(){super.drawDataLabels(),this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)}projectPoint(O){let H=this.chart.mapView;if(H){let{geometry:z,lon:c,lat:D}=O,it=z&&z.type==="Point"&&z.coordinates;if(U(c)&&U(D)&&(it=[c,D]),it)return H.lonLatToProjectedUnits({lon:it[0],lat:it[1]})}}translate(){let O=this.chart.mapView;if(this.processedXData||this.processData(),this.generatePoints(),this.getProjectedBounds&&this.isDirtyData&&(delete this.bounds,this.getProjectedBounds()),O){let H=O.getSVGTransform(),{hasCoordinates:z}=O.projection;this.points.forEach(c=>{let D,{x:it,y:Q}=c,W=U(c.insetIndex)&&O.insets[c.insetIndex].getSVGTransform()||H,k=this.projectPoint(c.options)||c.properties&&this.projectPoint(c.properties);if(k?(it=k.x,Q=k.y):c.bounds&&(it=c.bounds.midX,Q=c.bounds.midY,W&&U(it)&&U(Q)&&(c.plotX=it*W.scaleX+W.translateX,c.plotY=Q*W.scaleY+W.translateY,D=!0)),U(it)&&U(Q)){if(!D){let _=O.projectedUnitsToPixels({x:it,y:Q});c.plotX=_.x,c.plotY=z?_.y:this.chart.plotHeight-_.y}}else c.y=c.plotX=c.plotY=void 0;c.isInside=this.isPointInside(c),c.zone=this.zones.length?c.getZone():void 0})}N(this,"afterTranslate")}}return A.defaultOptions=T(Y.defaultOptions,st),J.prototype.symbols.mapmarker=(M,O,H,z,c)=>{let D,it,Q=c&&c.context==="legend";Q?(D=M+H/2,it=O+z):c&&typeof c.anchorX=="number"&&typeof c.anchorY=="number"?(D=c.anchorX,it=c.anchorY):(D=M+H/2,it=O+z/2,O-=z);let W=Q?z/3:z/2;return[["M",D,it],["C",D,it,D-W,O+1.5*W,D-W,O+W],["A",W,W,1,1,1,D+W,O+W],["C",D+W,O+1.5*W,D,it,D,it],["Z"]]},V(A.prototype,{type:"mappoint",axisTypes:["colorAxis"],forceDL:!0,isCartesian:!1,pointClass:R,searchPoint:q,useMapGeometry:!0}),$.registerSeriesType("mappoint",A),A}),g(d,"Series/Bubble/BubbleLegendDefaults.js",[],function(){return{borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:"0.9em",color:"#000000"},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0}}),g(d,"Series/Bubble/BubbleLegendItem.js",[d["Core/Color/Color.js"],d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{parse:J}=L,{noop:X}=st,{arrayMax:q,arrayMin:Z,isNumber:Y,merge:V,pick:N,stableSort:U}=$;return class{constructor(T,A){this.setState=X,this.init(T,A)}init(T,A){this.options=T,this.visible=!0,this.chart=A.chart,this.legend=A}addToLegend(T){T.splice(this.options.legendIndex,0,this)}drawLegendSymbol(T){let A,M=N(T.options.itemDistance,20),O=this.legendItem||{},H=this.options,z=H.ranges,c=H.connectorDistance;if(!z||!z.length||!Y(z[0].value)){T.options.bubbleLegend.autoRanges=!0;return}U(z,function(W,k){return k.value-W.value}),this.ranges=z,this.setOptions(),this.render();let D=this.getMaxLabelSize(),it=this.ranges[0].radius,Q=2*it;A=(A=c-it+D.width)>0?A:0,this.maxLabel=D,this.movementX=H.labels.align==="left"?A:0,O.labelWidth=Q+A+M,O.labelHeight=Q+D.height/2}setOptions(){let T=this.ranges,A=this.options,M=this.chart.series[A.seriesIndex],O=this.legend.baseline,H={zIndex:A.zIndex,"stroke-width":A.borderWidth},z={zIndex:A.zIndex,"stroke-width":A.connectorWidth},c={align:this.legend.options.rtl||A.labels.align==="left"?"right":"left",zIndex:A.zIndex},D=M.options.marker.fillOpacity,it=this.chart.styledMode;T.forEach(function(Q,W){it||(H.stroke=N(Q.borderColor,A.borderColor,M.color),H.fill=N(Q.color,A.color,D!==1?J(M.color).setOpacity(D).get("rgba"):M.color),z.stroke=N(Q.connectorColor,A.connectorColor,M.color)),T[W].radius=this.getRangeRadius(Q.value),T[W]=V(T[W],{center:T[0].radius-T[W].radius+O}),it||V(!0,T[W],{bubbleAttribs:V(H),connectorAttribs:V(z),labelAttribs:c})},this)}getRangeRadius(T){let A=this.options,M=this.options.seriesIndex,O=this.chart.series[M],H=A.ranges[0].value,z=A.ranges[A.ranges.length-1].value,c=A.minSize,D=A.maxSize;return O.getRadius.call(this,z,H,c,D,T)}render(){let T=this.legendItem||{},A=this.chart.renderer,M=this.options.zThreshold;for(let O of(this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]}),T.symbol=A.g("bubble-legend"),T.label=A.g("bubble-legend-item").css(this.legend.itemStyle||{}),T.symbol.translateX=0,T.symbol.translateY=0,T.symbol.add(T.label),T.label.add(T.group),this.ranges))O.value>=M&&this.renderRange(O);this.hideOverlappingLabels()}renderRange(T){let A=this.ranges[0],M=this.legend,O=this.options,H=O.labels,z=this.chart,c=z.series[O.seriesIndex],D=z.renderer,it=this.symbols,Q=it.labels,W=T.center,k=Math.abs(T.radius),_=O.connectorDistance||0,C=H.align,h=M.options.rtl,l=O.borderWidth,u=O.connectorWidth,v=A.radius||0,I=W-k-l/2+u/2,S=(I%1?1:.5)-(u%2?0:.5),b=D.styledMode,K=h||C==="left"?-_:_;C==="center"&&(K=0,O.connectorDistance=0,T.labelAttribs.align="center"),it.bubbleItems.push(D.circle(v,W+S,k).attr(b?{}:T.bubbleAttribs).addClass((b?"highcharts-color-"+c.colorIndex+" ":"")+"highcharts-bubble-legend-symbol "+(O.className||"")).add(this.legendItem.symbol)),it.connectors.push(D.path(D.crispLine([["M",v,I],["L",v+K,I]],O.connectorWidth)).attr(b?{}:T.connectorAttribs).addClass((b?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(O.connectorClassName||"")).add(this.legendItem.symbol));let ct=D.text(this.formatLabel(T)).attr(b?{}:T.labelAttribs).css(b?{}:H.style).addClass("highcharts-bubble-legend-labels "+(O.labels.className||"")).add(this.legendItem.symbol),et={x:v+K+O.labels.x,y:I+O.labels.y+.4*ct.getBBox().height};ct.attr(et),Q.push(ct),ct.placed=!0,ct.alignAttr=et}getMaxLabelSize(){let T,A;return this.symbols.labels.forEach(function(M){A=M.getBBox(!0),T=T?A.width>T.width?A:T:A}),T||{}}formatLabel(T){let A=this.options,M=A.labels.formatter,O=A.labels.format,{numberFormatter:H}=this.chart;return O?R.format(O,T):M?M.call(T):H(T.value,1)}hideOverlappingLabels(){let T=this.chart,A=this.options.labels.allowOverlap,M=this.symbols;!A&&M&&(T.hideOverlappingLabels(M.labels),M.labels.forEach(function(O,H){O.newOpacity?O.newOpacity!==O.oldOpacity&&M.connectors[H].show():M.connectors[H].hide()}))}getRanges(){let T=this.legend.bubbleLegend,A=T.chart.series,M=T.options.ranges,O,H,z=Number.MAX_VALUE,c=-Number.MAX_VALUE;return A.forEach(function(D){D.isBubble&&!D.ignoreSeries&&(H=D.zData.filter(Y)).length&&(z=N(D.options.zMin,Math.min(z,Math.max(Z(H),D.options.displayNegative===!1?D.options.zThreshold:-Number.MAX_VALUE))),c=N(D.options.zMax,Math.max(c,q(H))))}),O=z===c?[{value:c}]:[{value:z},{value:(z+c)/2},{value:c,autoRanges:!0}],M.length&&M[0].radius&&O.reverse(),O.forEach(function(D,it){M&&M[it]&&(O[it]=V(M[it],D))}),O}predictBubbleSizes(){let T=this.chart,A=T.legend.options,M=A.floating,O=A.layout==="horizontal",H=O?T.legend.lastLineHeight:0,z=T.plotSizeX,c=T.plotSizeY,D=T.series[this.options.seriesIndex],it=D.getPxExtremes(),Q=Math.ceil(it.minPxSize),W=Math.ceil(it.maxPxSize),k=Math.min(c,z),_,C=D.options.maxSize;return M||!/%$/.test(C)?_=W:(_=(k+H)*(C=parseFloat(C))/100/(C/100+1),(O&&c-_>=z||!O&&z-_>=c)&&(_=W)),[Q,Math.ceil(_)]}updateRanges(T,A){let M=this.legend.options.bubbleLegend;M.minSize=T,M.maxSize=A,M.ranges=this.getRanges()}correctSizes(){let T=this.legend,A=this.chart.series[this.options.seriesIndex].getPxExtremes();Math.abs(Math.ceil(A.maxPxSize)-this.options.maxSize)>1&&(this.updateRanges(this.options.minSize,A.maxPxSize),T.render())}}}),g(d,"Series/Bubble/BubbleLegendComposition.js",[d["Series/Bubble/BubbleLegendDefaults.js"],d["Series/Bubble/BubbleLegendItem.js"],d["Core/Defaults.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{setOptions:X}=st,{composed:q}=$,{addEvent:Z,objectEach:Y,pushUnique:V,wrap:N}=J;function U(z,c,D){let it,Q,W,k=this.legend,_=T(this)>=0;k&&k.options.enabled&&k.bubbleLegend&&k.options.bubbleLegend.autoRanges&&_?(it=k.bubbleLegend.options,Q=k.bubbleLegend.predictBubbleSizes(),k.bubbleLegend.updateRanges(Q[0],Q[1]),it.placed||(k.group.placed=!1,k.allItems.forEach(C=>{(W=C.legendItem||{}).group&&(W.group.translateY=void 0)})),k.render(),it.placed||(this.getMargins(),this.axes.forEach(function(C){C.visible&&C.render(),it.placed||(C.setScale(),C.updateNames(),Y(C.ticks,function(h){h.isNew=!0,h.isNewLabel=!0}))}),this.getMargins()),it.placed=!0,z.call(this,c,D),k.bubbleLegend.correctSizes(),H(k,A(k))):(z.call(this,c,D),k&&k.options.enabled&&k.bubbleLegend&&(k.render(),H(k,A(k))))}function T(z){let c=z.series,D=0;for(;DQ.height&&(Q.height=c[C].itemHeight);Q.step=_}return D}function M(z){let c=this.bubbleLegend,D=this.options,it=D.bubbleLegend,Q=T(this.chart);c&&c.ranges&&c.ranges.length&&(it.ranges.length&&(it.autoRanges=!!it.ranges[0].autoRanges),this.destroyItem(c)),Q>=0&&D.enabled&&it.enabled&&(it.seriesIndex=Q,this.bubbleLegend=new R(it,this),this.bubbleLegend.addToLegend(z.allItems))}function O(z){let c;if(z.defaultPrevented)return!1;let D=z.legendItem,it=this.chart,Q=D.visible;this&&this.bubbleLegend&&(D.visible=!Q,D.ignoreSeries=Q,c=T(it)>=0,this.bubbleLegend.visible!==c&&(this.update({bubbleLegend:{enabled:c}}),this.bubbleLegend.visible=c),D.visible=Q)}function H(z,c){let D=z.allItems,it=z.options.rtl,Q,W,k,_,C=0;D.forEach((h,l)=>{(_=h.legendItem||{}).group&&(Q=_.group.translateX||0,W=_.y||0,((k=h.movementX)||it&&h.ranges)&&(k=it?Q-h.options.maxSize/2:Q+k,_.group.attr({translateX:k})),l>c[C].step&&C++,_.group.attr({translateY:Math.round(W+c[C].height/2)}),_.y=W+c[C].height/2)})}return{compose:function(z,c){V(q,"Series.BubbleLegend")&&(X({legend:{bubbleLegend:L}}),N(z.prototype,"drawChartBox",U),Z(c,"afterGetAllItems",M),Z(c,"itemClick",O))}}}),g(d,"Series/Bubble/BubblePoint.js",[d["Core/Series/Point.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{scatter:{prototype:{pointClass:$}}}}=R,{extend:J}=st;class X extends ${haloPath(Z){let Y=(Z&&this.marker&&this.marker.radius||0)+Z;if(this.series.chart.inverted){let V=this.pos()||[0,0],{xAxis:N,yAxis:U,chart:T}=this.series;return T.renderer.symbols.circle(N.len-V[1]-Y,U.len-V[0]-Y,2*Y,2*Y)}return L.prototype.haloPath.call(this,Y)}}return J(X.prototype,{ttBelow:!1}),X}),g(d,"Series/Bubble/BubbleSeries.js",[d["Series/Bubble/BubbleLegendComposition.js"],d["Series/Bubble/BubblePoint.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){let{parse:q}=st,{composed:Z,noop:Y}=$,{series:V,seriesTypes:{column:{prototype:N},scatter:U}}=J,{addEvent:T,arrayMax:A,arrayMin:M,clamp:O,extend:H,isNumber:z,merge:c,pick:D,pushUnique:it}=X;function Q(){let k=this.len,{coll:_,isXAxis:C,min:h}=this,l=C?"xData":"yData",u=(this.max||0)-(h||0),v=0,I=k,S=k/u,b;(_==="xAxis"||_==="yAxis")&&(this.series.forEach(K=>{if(K.bubblePadding&&K.reserveSpace()){this.allowZoomOutside=!0,b=!0;let ct=K[l];if(C&&((K.onPoint||K).getRadii(0,0,K),K.onPoint&&(K.radii=K.onPoint.radii)),u>0){let et=ct.length;for(;et--;)if(z(ct[et])&&this.dataMin<=ct[et]&&ct[et]<=this.max){let dt=K.radii&&K.radii[et]||0;v=Math.min((ct[et]-h)*S-dt,v),I=Math.max((ct[et]-h)*S+dt,I)}}}}),b&&u>0&&!this.logarithmic&&(I-=k,S*=(k+Math.max(0,v)-Math.min(I,k))/k,[["min","userMin",v],["max","userMax",I]].forEach(K=>{D(this.options[K[0]],this[K[1]])===void 0&&(this[K[0]]+=K[2]/S)})))}class W extends U{static compose(_,C,h){L.compose(C,h),it(Z,"Series.Bubble")&&T(_,"foundExtremes",Q)}animate(_){!_&&this.points.length{if(dt.bubblePadding&&dt.reserveSpace()){let pt=(dt.onPoint||dt).getZExtremes();pt&&(ct=Math.min(D(ct,pt.zMin),pt.zMin),et=Math.max(D(et,pt.zMax),pt.zMax),K=!0)}}),K?(I={zMin:ct,zMax:et},this.chart.bubbleZExtremes=I):I={zMin:0,zMax:0}}for(u=0,l=_.length;u0&&(ct=(u-_)/K)}return S&&ct>=0&&(ct=Math.sqrt(ct)),Math.ceil(h+ct*(l-h))/2}hasData(){return!!this.processedXData.length}markerAttribs(_,C){let h=super.markerAttribs(_,C),{height:l=0,width:u=0}=h;return this.chart.inverted?H(h,{x:(_.plotX||0)-u/2,y:(_.plotY||0)-l/2}):h}pointAttribs(_,C){let h=this.options.marker.fillOpacity,l=V.prototype.pointAttribs.call(this,_,C);return h!==1&&(l.fill=q(l.fill).setOpacity(h).get("rgba")),l}translate(){super.translate.call(this),this.getRadii(),this.translateBubble()}translateBubble(){let{data:_,options:C,radii:h}=this,{minPxSize:l}=this.getPxExtremes(),u=_.length;for(;u--;){let v=_[u],I=h?h[u]:0;this.zoneAxis==="z"&&(v.negative=(v.z||0)<(C.zThreshold||0)),z(I)&&I>=l/2?(v.marker=H(v.marker,{radius:I,width:2*I,height:2*I}),v.dlBox={x:v.plotX-I,y:v.plotY-I,width:2*I,height:2*I}):(v.shapeArgs=v.plotY=v.dlBox=void 0,v.isInside=!1)}}getPxExtremes(){let _=Math.min(this.chart.plotWidth,this.chart.plotHeight),C=u=>{let v;return typeof u=="string"&&(v=/%$/.test(u),u=parseInt(u,10)),v?_*u/100:u},h=C(D(this.options.minSize,8)),l=Math.max(C(D(this.options.maxSize,"20%")),h);return{minPxSize:h,maxPxSize:l}}getZExtremes(){let _=this.options,C=(this.zData||[]).filter(z);if(C.length){let h=D(_.zMin,O(M(C),_.displayNegative===!1?_.zThreshold||0:-Number.MAX_VALUE,Number.MAX_VALUE)),l=D(_.zMax,A(C));if(z(h)&&z(l))return{zMin:h,zMax:l}}}}return W.defaultOptions=c(U.defaultOptions,{dataLabels:{formatter:function(){let{numberFormatter:k}=this.series.chart,{z:_}=this.point;return z(_)?k(_,-1):""},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"}),H(W.prototype,{alignDataLabel:N.alignDataLabel,applyZones:Y,bubblePadding:!0,isBubble:!0,pointArrayMap:["y","z"],pointClass:R,parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",zoneAxis:"z"}),T(W,"updatedData",k=>{delete k.target.chart.bubbleZExtremes}),T(W,"remove",k=>{delete k.target.chart.bubbleZExtremes}),J.registerSeriesType("bubble",W),W}),g(d,"Series/MapBubble/MapBubblePoint.js",[d["Series/Bubble/BubblePoint.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{map:{prototype:{pointClass:{prototype:$}}}}}=R,{extend:J}=st;class X extends L{isValid(){return typeof this.z=="number"}}return J(X.prototype,{applyOptions:$.applyOptions,getProjectedBounds:$.getProjectedBounds}),X}),g(d,"Series/MapBubble/MapBubbleSeries.js",[d["Series/Bubble/BubbleSeries.js"],d["Series/MapBubble/MapBubblePoint.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{seriesTypes:{map:{prototype:J},mappoint:{prototype:X}}}=st,{extend:q,merge:Z}=$;class Y extends L{constructor(){super(...arguments),this.clearBounds=J.clearBounds}searchPoint(N,U){return this.searchKDTree({plotX:N.chartX-this.chart.plotLeft,plotY:N.chartY-this.chart.plotTop},U,N)}translate(){X.translate.call(this),this.getRadii(),this.translateBubble()}updateParallelArrays(N,U,T){super.updateParallelArrays.call(this,N,U,T);let A=this.processedXData,M=this.xData;A&&M&&(A.length=M.length)}}return Y.defaultOptions=Z(L.defaultOptions,{lineWidth:0,animationLimit:500,joinBy:"hc-key",tooltip:{pointFormat:"{point.name}: {point.z}"}}),q(Y.prototype,{type:"mapbubble",axisTypes:["colorAxis"],getProjectedBounds:J.getProjectedBounds,isCartesian:!1,pointArrayMap:["z"],pointClass:R,processData:J.processData,projectPoint:X.projectPoint,kdAxisArray:["plotX","plotY"],setData:J.setData,setOptions:J.setOptions,updateData:J.updateData,useMapGeometry:!0,xyFromShape:!0}),st.registerSeriesType("mapbubble",Y),Y}),g(d,"Series/Heatmap/HeatmapPoint.js",[d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R){let{scatter:{prototype:{pointClass:st}}}=L.seriesTypes,{clamp:$,defined:J,extend:X,pick:q}=R;class Z extends st{applyOptions(V,N){return(this.isNull||this.value===null)&&delete this.color,super.applyOptions(V,N),this.formatPrefix=this.isNull||this.value===null?"null":"point",this}getCellAttributes(){let V=this.series,N=V.options,U=(N.colsize||1)/2,T=(N.rowsize||1)/2,A=V.xAxis,M=V.yAxis,O=this.options.marker||V.options.marker,H=V.pointPlacementToXValue(),z=q(this.pointPadding,N.pointPadding,0),c={x1:$(Math.round(A.len-A.translate(this.x-U,!1,!0,!1,!0,-H)),-A.len,2*A.len),x2:$(Math.round(A.len-A.translate(this.x+U,!1,!0,!1,!0,-H)),-A.len,2*A.len),y1:$(Math.round(M.translate(this.y-T,!1,!0,!1,!0)),-M.len,2*M.len),y2:$(Math.round(M.translate(this.y+T,!1,!0,!1,!0)),-M.len,2*M.len)};for(let D of[["width","x"],["height","y"]]){let it=D[0],Q=D[1],W=Q+"1",k=Q+"2",_=Math.abs(c[W]-c[k]),C=O&&O.lineWidth||0,h=Math.abs(c[W]+c[k])/2,l=O&&O[it];if(J(l)&&l<_){let u=l/2+C/2;c[W]=h-u,c[k]=h+u}z&&((Q==="x"&&A.reversed||Q==="y"&&!M.reversed)&&(W=k,k=Q+"1"),c[W]+=z,c[k]-=z)}return c}haloPath(V){if(!V)return[];let{x:N=0,y:U=0,width:T=0,height:A=0}=this.shapeArgs||{};return[["M",N-V,U-V],["L",N-V,U+A+V],["L",N+T+V,U+A+V],["L",N+T+V,U-V],["Z"]]}isValid(){return this.value!==1/0&&this.value!==-1/0}}return X(Z.prototype,{dataLabelOnNull:!0,moveToTopOnHover:!0,ttBelow:!1}),Z}),g(d,"Series/Heatmap/HeatmapSeriesDefaults.js",[d["Core/Utilities.js"]],function(L){let{isNumber:R}=L;return{animation:!1,borderRadius:0,borderWidth:0,interpolation:!1,nullColor:"#f7f7f7",dataLabels:{formatter:function(){let{numberFormatter:st}=this.series.chart,{value:$}=this.point;return R($)?st($,-1):""},inside:!0,verticalAlign:"middle",crop:!1,overflow:"allow",padding:0},marker:{symbol:"rect",radius:0,lineColor:void 0,states:{hover:{lineWidthPlus:0},select:{}}},clip:!0,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}
"},states:{hover:{halo:!1,brightness:.2}},legendSymbol:"rectangle"}}),g(d,"Series/InterpolationUtilities.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{doc:st}=L,{defined:$,pick:J}=R;return{colorFromPoint:function(X,q){let Z=q.series.colorAxis;if(Z){let Y=Z.toColor(X||0,q).split(")")[0].split("(")[1].split(",").map(V=>J(parseFloat(V),parseInt(V,10)));return Y[3]=255*J(Y[3],1),$(X)&&q.visible||(Y[3]=0),Y}return[0,0,0,0]},getContext:function(X){let{canvas:q,context:Z}=X;return q&&Z?(Z.clearRect(0,0,q.width,q.height),Z):(X.canvas=st.createElement("canvas"),X.context=X.canvas.getContext("2d",{willReadFrequently:!0})||void 0,X.context)}}}),g(d,"Series/Heatmap/HeatmapSeries.js",[d["Core/Color/Color.js"],d["Series/ColorMapComposition.js"],d["Series/Heatmap/HeatmapPoint.js"],d["Series/Heatmap/HeatmapSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Utilities.js"],d["Series/InterpolationUtilities.js"]],function(L,R,st,$,J,X,q,Z){let{series:Y,seriesTypes:{column:V,scatter:N}}=J,{prototype:{symbols:U}}=X,{addEvent:T,extend:A,fireEvent:M,isNumber:O,merge:H,pick:z}=q,{colorFromPoint:c,getContext:D}=Z;class it extends N{constructor(){super(...arguments),this.valueMax=NaN,this.valueMin=NaN,this.isDirtyCanvas=!0}drawPoints(){let W=this,k=W.options,_=k.interpolation,C=k.marker||{};if(_){let{image:h,chart:l,xAxis:u,yAxis:v}=W,{reversed:I=!1,len:S}=u,{reversed:b=!1,len:K}=v,ct={width:S,height:K};if(!h||W.isDirtyData||W.isDirtyCanvas){let et=D(W),{canvas:dt,options:{colsize:pt=1,rowsize:bt=1},points:Mt,points:{length:w}}=W,B=l.colorAxis&&l.colorAxis[0];if(dt&&et&&B){let{min:tt,max:nt}=u.getExtremes(),{min:x,max:y}=v.getExtremes(),F=nt-tt,lt=y-x,rt=Math.round(F/pt/8*8),gt=Math.round(lt/bt/8*8),[vt,Ot]=[[rt,rt/F,I,"ceil"],[gt,gt/lt,!b,"floor"]].map(([Dt,jt,re,le])=>re?Gt=>Math[le](Dt-jt*Gt):Gt=>Math[le](jt*Gt)),At=dt.width=rt+1,$t=At*(dt.height=gt+1),Xt=(w-1)/$t,Ct=new Uint8ClampedArray(4*$t),wt=(Dt,jt)=>4*Math.ceil(At*Ot(jt-x)+vt(Dt-tt));W.buildKDTree();for(let Dt=0;Dt<$t;Dt++){let jt=Mt[Math.ceil(Xt*Dt)],{x:re,y:le}=jt;Ct.set(c(jt.value,jt),wt(re,le))}et.putImageData(new ImageData(Ct,At),0,0),h?h.attr(Mi(xr({},ct),{href:dt.toDataURL("image/png",1)})):(W.directTouch=!1,W.image=l.renderer.image(dt.toDataURL("image/png",1)).attr(ct).add(W.group))}W.isDirtyCanvas=!1}else(h.width!==S||h.height!==K)&&h.attr(ct)}else(C.enabled||W._hasPointMarkers)&&(Y.prototype.drawPoints.call(W),W.points.forEach(h=>{h.graphic&&(h.graphic[W.chart.styledMode?"css":"animate"](W.colorAttribs(h)),h.value===null&&h.graphic.addClass("highcharts-null-point"))}))}getExtremes(){let{dataMin:W,dataMax:k}=Y.prototype.getExtremes.call(this,this.valueData);return O(W)&&(this.valueMin=W),O(k)&&(this.valueMax=k),Y.prototype.getExtremes.call(this)}getValidPoints(W,k){return Y.prototype.getValidPoints.call(this,W,k,!0)}hasData(){return!!this.xData}init(){super.init.apply(this,arguments);let W=this.options;W.pointRange=z(W.pointRange,W.colsize||1),this.yAxis.axisPointRange=W.rowsize||1,U.ellipse=U.circle,W.marker&&O(W.borderRadius)&&(W.marker.r=W.borderRadius)}markerAttribs(W,k){let _=W.shapeArgs||{};if(W.hasImage)return{x:W.plotX,y:W.plotY};if(k&&k!=="normal"){let C=W.options.marker||{},h=this.options.marker||{},l=h.states&&h.states[k]||{},u=C.states&&C.states[k]||{},v=(u.width||l.width||_.width||0)+(u.widthPlus||l.widthPlus||0),I=(u.height||l.height||_.height||0)+(u.heightPlus||l.heightPlus||0);return{x:(_.x||0)+((_.width||0)-v)/2,y:(_.y||0)+((_.height||0)-I)/2,width:v,height:I}}return _}pointAttribs(W,k){let _=Y.prototype.pointAttribs.call(this,W,k),C=this.options||{},h=this.chart.options.plotOptions||{},l=h.series||{},u=h.heatmap||{},v=W&&W.options.borderColor||C.borderColor||u.borderColor||l.borderColor,I=W&&W.options.borderWidth||C.borderWidth||u.borderWidth||l.borderWidth||_["stroke-width"];if(_.stroke=W&&W.marker&&W.marker.lineColor||C.marker&&C.marker.lineColor||v||this.color,_["stroke-width"]=I,k&&k!=="normal"){let S=H(C.states&&C.states[k],C.marker&&C.marker.states&&C.marker.states[k],W&&W.options.states&&W.options.states[k]||{});_.fill=S.color||L.parse(_.fill).brighten(S.brightness||0).get(),_.stroke=S.lineColor||_.stroke}return _}translate(){let{borderRadius:W,marker:k}=this.options,_=k&&k.symbol||"rect",C=U[_]?_:"rect",h=["circle","square"].indexOf(C)!==-1;if(!this.processedXData){let{xData:l,yData:u}=this.getProcessedData();this.processedXData=l,this.processedYData=u}for(let l of(this.generatePoints(),this.points)){let u=l.getCellAttributes(),v=Math.min(u.x1,u.x2),I=Math.min(u.y1,u.y2),S=Math.max(Math.abs(u.x2-u.x1),0),b=Math.max(Math.abs(u.y2-u.y1),0);if(l.hasImage=(l.marker&&l.marker.symbol||_||"").indexOf("url")===0,h){let K=Math.abs(S-b);v=Math.min(u.x1,u.x2)+(S{var j,Pt;(function(d){yr.exports?(d.default=d,yr.exports=d):(j=[xt(6193)],Pt=function(g){return d(g),d.Highcharts=g,d}.apply(Oe,j),Pt!==void 0&&(yr.exports=Pt))})(function(d){"use strict";var g=d?d._modules:{};function L(R,st,$,J){R.hasOwnProperty(st)||(R[st]=J.apply(null,$),typeof CustomEvent=="function"&&d.win.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:st,module:R[st]}})))}L(g,"Accessibility/Utils/HTMLUtilities.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let{doc:$,win:J}=R,{css:X}=st,q=J.EventTarget&&new J.EventTarget||"none";function Z(V){if(typeof J.MouseEvent=="function")return new J.MouseEvent(V.type,V);if($.createEvent){let N=$.createEvent("MouseEvent");if(N.initMouseEvent)return N.initMouseEvent(V.type,V.bubbles,V.cancelable,V.view||J,V.detail,V.screenX,V.screenY,V.clientX,V.clientY,V.ctrlKey,V.altKey,V.shiftKey,V.metaKey,V.button,V.relatedTarget),N}return Y(V.type)}function Y(V,N,U){let T=N||{x:0,y:0};if(typeof J.MouseEvent=="function")return new J.MouseEvent(V,{bubbles:!0,cancelable:!0,composed:!0,button:0,buttons:1,relatedTarget:U||q,view:J,detail:V==="click"?1:0,screenX:T.x,screenY:T.y,clientX:T.x,clientY:T.y});if($.createEvent){let A=$.createEvent("MouseEvent");if(A.initMouseEvent)return A.initMouseEvent(V,!0,!0,J,V==="click"?1:0,T.x,T.y,T.x,T.y,!1,!1,!1,!1,0,null),A}return{type:V}}return{addClass:function(V,N){V.classList?V.classList.add(N):0>V.className.indexOf(N)&&(V.className+=" "+N)},cloneMouseEvent:Z,cloneTouchEvent:function(V){let N=T=>{let A=[];for(let M=0;M/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")},getElement:function(V){return $.getElementById(V)},getFakeMouseEvent:Y,getHeadingTagNameForElement:function(V){let N=M=>"h"+Math.min(6,parseInt(M.slice(1),10)+1),U=M=>/^H[1-6]$/i.test(M),T=M=>{let O=M;for(;O=O.previousSibling;){let H=O.tagName||"";if(U(H))return H}return""},A=M=>{let O=T(M);if(O)return N(O);let H=M.parentElement;if(!H)return"p";let z=H.tagName;return U(z)?N(z):A(H)};return A(V)},removeChildNodes:function(V){for(;V.lastChild;)V.removeChild(V.lastChild)},removeClass:function(V,N){V.classList?V.classList.remove(N):V.className=V.className.replace(RegExp(N,"g"),"")},removeElement:function(V){V&&V.parentNode&&V.parentNode.removeChild(V)},reverseChildNodes:function(V){let N=V.childNodes.length;for(;N--;)V.appendChild(V.childNodes[N])},simulatedEventTarget:q,stripHTMLTagsFromString:function(V,N=!1){return typeof V=="string"?N?V.replace(/<\/?[^>]+(>|$)/g,""):V.replace(/<\/?(?!\s)[^>]+(>|$)/g,""):V},visuallyHideElement:function(V){X(V,{position:"absolute",width:"1px",height:"1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(1px, 1px, 1px, 1px)",marginTop:"-3px","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)",filter:"alpha(opacity=1)",opacity:.01})}}}),L(g,"Accessibility/A11yI18n.js",[g["Core/Templating.js"],g["Core/Utilities.js"]],function(R,st){var $;let{format:J}=R,{getNestedProperty:X,pick:q}=st;return function(Z){function Y(N,U,T){let A=(c,D)=>{let it=c.slice(D||0),Q=it.indexOf("{"),W=it.indexOf("}");if(Q>-1&&W>Q)return{statement:it.substring(Q+1,W),begin:D+Q+1,end:D+W}},M=[],O,H,z=0;do O=A(N,z),(H=N.substring(z,O&&O.begin-1)).length&&M.push({value:H,type:"constant"}),O&&M.push({value:O.statement,type:"statement"}),z=O?O.end+1:z+1;while(O);return M.forEach(c=>{c.type==="statement"&&(c.value=function(D,it){let Q,W,k=D.indexOf("#each("),_=D.indexOf("#plural("),C=D.indexOf("["),h=D.indexOf("]");if(k>-1){let u=D.slice(k).indexOf(")")+k,v=D.substring(0,k),I=D.substring(u+1),S=D.substring(k+6,u).split(","),b=Number(S[1]),K;if(W="",Q=X(S[0],it)){K=(b=isNaN(b)?Q.length:b)<0?Q.length+b:Math.min(b,Q.length);for(let ct=0;ct-1){var l;let u=D.slice(_).indexOf(")")+_,v=D.substring(_+8,u).split(",");switch(Number(X(v[0],it))){case 0:W=q(v[4],v[1]);break;case 1:W=q(v[2],v[1]);break;case 2:W=q(v[3],v[1]);break;default:W=v[1]}return W?(l=W).trim&&l.trim()||l.replace(/^\s+|\s+$/g,""):""}if(C>-1){let u,v=D.substring(0,C),I=Number(D.substring(C+1,h));return Q=X(v,it),!isNaN(I)&&Q&&(I<0?(u=Q[Q.length+I])===void 0&&(u=Q[0]):(u=Q[I])===void 0&&(u=Q[Q.length-1])),u!==void 0?u:""}return"{"+D+"}"}(c.value,U))}),J(M.reduce((c,D)=>c+D.value,""),U,T)}function V(N,U){let T=N.split("."),A=this.options.lang,M=0;for(;M!!A.graphic);return T&&T.graphic&&T.graphic.element}}function N(U){let T=V(U);return T&&T.parentNode||U.graph&&U.graph.element||U.group&&U.group.element}return{fireEventOnWrappedOrUnwrappedElement:function U(T,A){let M=A.type,O=T.hcEvents;J.createEvent&&(T.dispatchEvent||T.fireEvent)?T.dispatchEvent?T.dispatchEvent(A):T.fireEvent(M,A):O&&O[M]?Y(T,M,A):T.element&&U(T.element,A)},getChartTitle:function(U){return X(U.options.title.text||U.langFormat("accessibility.defaultChartTitle",{chart:U}),U.renderer.forExport)},getAxisDescription:function(U){var T,A;return U&&(((T=U.options.accessibility)==null?void 0:T.description)||((A=U.axisTitle)==null?void 0:A.textStr)||U.options.id||U.categories&&"categories"||U.dateTime&&"Time"||"values")},getAxisRangeDescription:function(U){let T=U.options||{};return T.accessibility&&T.accessibility.rangeDescription!==void 0?T.accessibility.rangeDescription:U.categories?function(A){let M=A.chart;return A.dataMax&&A.dataMin?M.langFormat("accessibility.axis.rangeCategories",{chart:M,axis:A,numCategories:A.dataMax-A.dataMin+1}):""}(U):U.dateTime&&(U.min===0||U.dataMin===0)?function(A){let M=A.chart,O={},H=A.dataMin||A.min||0,z=A.dataMax||A.max||0,c="Seconds";O.Seconds=(z-H)/1e3,O.Minutes=O.Seconds/60,O.Hours=O.Minutes/60,O.Days=O.Hours/24,["Minutes","Hours","Days"].forEach(function(it){O[it]>2&&(c=it)});let D=O[c].toFixed(c!=="Seconds"&&c!=="Minutes"?1:0);return M.langFormat("accessibility.axis.timeRange"+c,{chart:M,axis:A,range:D.replace(".0","")})}(U):function(A){let M=A.chart,O=M.options,H=O&&O.accessibility&&O.accessibility.screenReaderSection.axisRangeDateFormat||"",z={min:A.dataMin||A.min||0,max:A.dataMax||A.max||0},c=function(D){return A.dateTime?M.time.dateFormat(H,z[D]):z[D].toString()};return M.langFormat("accessibility.axis.rangeFromTo",{chart:M,axis:A,rangeFrom:c("min"),rangeTo:c("max")})}(U)},getPointFromXY:function(U,T,A){let M=U.length,O;for(;M--;)if(O=Z(U[M].points||[],function(H){return H.x===T&&H.y===A}))return O},getSeriesFirstPointElement:V,getSeriesFromName:function(U,T){return T?(U.series||[]).filter(function(A){return A.name===T}):U.series},getSeriesA11yElement:N,unhideChartElementFromAT:function U(T,A){A.setAttribute("aria-hidden",!1),A!==T.renderTo&&A.parentNode&&A.parentNode!==J.body&&(Array.prototype.forEach.call(A.parentNode.childNodes,function(M){M.hasAttribute("aria-hidden")||M.setAttribute("aria-hidden",!0)}),U(T,A.parentNode))},hideSeriesFromAT:function(U){let T=N(U);T&&T.setAttribute("aria-hidden",!0)},scrollAxisToPoint:function(U){let T=U.series.xAxis,A=U.series.yAxis,M=T&&T.scrollbar?T:A,O=M&&M.scrollbar;if(O&&q(O.to)&&q(O.from)){let H=O.to-O.from,z=function(c,D){if(!q(c.dataMin)||!q(c.dataMax))return 0;let it=c.toPixels(c.dataMin),Q=c.toPixels(c.dataMax),W=c.coll==="xAxis"?"x":"y";return(c.toPixels(D[W]||0)-it)/(Q-it)}(M,U);O.updatePosition(z-H/2,z+H/2),Y(O,"changed",{from:O.from,to:O.to,trigger:"scrollbar",DOMEvent:null})}}}}),L(g,"Accessibility/Utils/DOMElementProvider.js",[g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st){let{doc:$}=R,{removeElement:J}=st;return class{constructor(){this.elements=[]}createElement(){let X=$.createElement.apply($,arguments);return this.elements.push(X),X}removeElement(X){J(X),this.elements.splice(this.elements.indexOf(X),1)}destroyCreatedElements(){this.elements.forEach(function(X){J(X)}),this.elements=[]}}}),L(g,"Accessibility/Utils/EventProvider.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let{addEvent:$}=st;return class{constructor(){this.eventRemovers=[]}addEvent(){let J=$.apply(R,arguments);return this.eventRemovers.push({element:arguments[0],remover:J}),J}removeEvent(J){let X=this.eventRemovers.map(q=>q.remover).indexOf(J);this.eventRemovers[X].remover(),this.eventRemovers.splice(X,1)}removeAddedEvents(){this.eventRemovers.map(J=>J.remover).forEach(J=>J()),this.eventRemovers=[]}}}),L(g,"Accessibility/AccessibilityComponent.js",[g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/DOMElementProvider.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J){let{fireEventOnWrappedOrUnwrappedElement:X}=R,{getFakeMouseEvent:q}=J;return class{destroy(){}getKeyboardNavigation(){return[]}init(){}onChartRender(){}onChartUpdate(){}initBase(Z,Y){this.chart=Z,this.eventProvider=new $,this.domElementProvider=new st,this.proxyProvider=Y,this.keyCodes={left:37,right:39,up:38,down:40,enter:13,space:32,esc:27,tab:9,pageUp:33,pageDown:34,end:35,home:36}}addEvent(Z,Y,V,N){return this.eventProvider.addEvent(Z,Y,V,N)}createElement(Z,Y){return this.domElementProvider.createElement(Z,Y)}fakeClickEvent(Z){X(Z,q("click"))}destroyBase(){this.domElementProvider.destroyCreatedElements(),this.eventProvider.removeAddedEvents()}}}),L(g,"Accessibility/KeyboardNavigationHandler.js",[g["Core/Utilities.js"]],function(R){let{find:st}=R;return class{constructor($,J){this.chart=$,this.keyCodeMap=J.keyCodeMap||[],this.validate=J.validate,this.init=J.init,this.terminate=J.terminate,this.response={success:1,prev:2,next:3,noHandler:4,fail:5}}run($){let J=$.which||$.keyCode,X=this.response.noHandler,q=st(this.keyCodeMap,function(Z){return Z[0].indexOf(J)>-1});return q?X=q[1].call(this,J,$):J===9&&(X=this.response[$.shiftKey?"prev":"next"]),X}}}),L(g,"Accessibility/Components/ContainerComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{unhideChartElementFromAT:q,getChartTitle:Z}=$,{doc:Y}=J,{stripHTMLTagsFromString:V}=X;return class extends R{onChartUpdate(){this.handleSVGTitleElement(),this.setSVGContainerLabel(),this.setGraphicContainerAttrs(),this.setRenderToAttrs(),this.makeCreditsAccessible()}handleSVGTitleElement(){let N=this.chart,U="highcharts-title-"+N.index,T=V(N.langFormat("accessibility.svgContainerTitle",{chartTitle:Z(N)}));if(T.length){let A=this.svgTitleElement=this.svgTitleElement||Y.createElementNS("http://www.w3.org/2000/svg","title");A.textContent=T,A.id=U,N.renderTo.insertBefore(A,N.renderTo.firstChild)}}setSVGContainerLabel(){let N=this.chart,U=N.langFormat("accessibility.svgContainerLabel",{chartTitle:Z(N)});N.renderer.box&&U.length&&N.renderer.box.setAttribute("aria-label",U)}setGraphicContainerAttrs(){let N=this.chart,U=N.langFormat("accessibility.graphicContainerLabel",{chartTitle:Z(N)});U.length&&N.container.setAttribute("aria-label",U)}setRenderToAttrs(){let N=this.chart,U=N.options.accessibility.landmarkVerbosity!=="disabled",T=N.langFormat("accessibility.chartContainerLabel",{title:Z(N),chart:N});T&&(N.renderTo.setAttribute("role",U?"region":"group"),N.renderTo.setAttribute("aria-label",T))}makeCreditsAccessible(){let N=this.chart,U=N.credits;U&&(U.textStr&&U.element.setAttribute("aria-label",N.langFormat("accessibility.credits",{creditsStr:V(U.textStr,N.renderer.forExport)})),q(N,U.element))}getKeyboardNavigation(){let N=this.chart;return new st(N,{keyCodeMap:[],validate:function(){return!0},init:function(){let U=N.accessibility;U&&U.keyboardNavigation.tabindexContainer.focus()}})}destroy(){this.chart.renderTo.setAttribute("aria-hidden",!0)}}}),L(g,"Accessibility/FocusBorder.js",[g["Core/Utilities.js"]],function(R){var st;let{addEvent:$,pick:J}=R;return function(X){let q=["x","y","transform","width","height","r","d","stroke-width"];function Z(){let U=this.focusElement,T=this.options.accessibility.keyboardNavigation.focusBorder;U&&(U.removeFocusBorder(),T.enabled&&U.addFocusBorder(T.margin,{stroke:T.style.color,strokeWidth:T.style.lineWidth,r:T.style.borderRadius}))}function Y(U,T){let A=this.options.accessibility.keyboardNavigation.focusBorder,M=T||U.element;M&&M.focus&&(M.hcEvents&&M.hcEvents.focusin||$(M,"focusin",function(){}),M.focus(),A.hideBrowserFocusOutline&&(M.style.outline="none")),this.focusElement&&this.focusElement.removeFocusBorder(),this.focusElement=U,this.renderFocusBorder()}function V(U,T){this.focusBorder&&this.removeFocusBorder();let A=this.getBBox(),M=J(U,3),O=this.parentGroup,H=this.scaleX||O&&O.scaleX,z=this.scaleY||O&&O.scaleY,c=(H?!z:z)?Math.abs(H||z||1):(Math.abs(H||1)+Math.abs(z||1))/2;A.x+=this.translateX?this.translateX:0,A.y+=this.translateY?this.translateY:0;let D=A.x-M,it=A.y-M,Q=A.width+2*M,W=A.height+2*M,k=!!this.text;if(this.element.nodeName==="text"||k){let _,C,h=!!this.rotation,l=k?{x:h?1:0,y:0}:(_=0,C=0,this.attr("text-anchor")==="middle"?_=C=.5:this.rotation?_=.25:C=.75,{x:_,y:C}),u=+this.attr("x"),v=+this.attr("y");if(isNaN(u)||(D=u-A.width*l.x-M),isNaN(v)||(it=v-A.height*l.y-M),k&&h){let I=Q;Q=W,W=I,isNaN(u)||(D=u-A.height*l.x-M),isNaN(v)||(it=v-A.width*l.y-M)}}this.focusBorder=this.renderer.rect(D,it,Q,W,parseInt((T&&T.r||0).toString(),10)/c).addClass("highcharts-focus-border").attr({zIndex:99}).add(O),this.renderer.styledMode||this.focusBorder.attr({stroke:T&&T.stroke,"stroke-width":(T&&T.strokeWidth||0)/c}),function(_,...C){_.focusBorderUpdateHooks||(_.focusBorderUpdateHooks={},q.forEach(h=>{let l=h+"Setter",u=_[l]||_._defaultSetter;_.focusBorderUpdateHooks[l]=u,_[l]=function(){let v=u.apply(_,arguments);return _.addFocusBorder.apply(_,C),v}}))}(this,U,T),function(_){if(_.focusBorderDestroyHook)return;let C=_.destroy;_.destroy=function(){return _.focusBorder&&_.focusBorder.destroy&&_.focusBorder.destroy(),C.apply(_,arguments)},_.focusBorderDestroyHook=C}(this)}function N(){var U;U=this,U.focusBorderUpdateHooks&&(Object.keys(U.focusBorderUpdateHooks).forEach(T=>{let A=U.focusBorderUpdateHooks[T];A===U._defaultSetter?delete U[T]:U[T]=A}),delete U.focusBorderUpdateHooks),this.focusBorderDestroyHook&&(this.destroy=this.focusBorderDestroyHook,delete this.focusBorderDestroyHook),this.focusBorder&&(this.focusBorder.destroy(),delete this.focusBorder)}X.compose=function(U,T){let A=U.prototype,M=T.prototype;A.renderFocusBorder||(A.renderFocusBorder=Z,A.setFocusToElement=Y),M.addFocusBorder||(M.addFocusBorder=V,M.removeFocusBorder=N)}}(st||(st={})),st}),L(g,"Accessibility/Utils/Announcer.js",[g["Core/Renderer/HTML/AST.js"],g["Accessibility/Utils/DOMElementProvider.js"],g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{doc:q}=$,{addClass:Z,visuallyHideElement:Y}=J,{attr:V}=X;return class{constructor(N,U){this.chart=N,this.domElementProvider=new st,this.announceRegion=this.addAnnounceRegion(U)}destroy(){this.domElementProvider.destroyCreatedElements()}announce(N){R.setElementHTML(this.announceRegion,N),this.clearAnnouncementRegionTimer&&clearTimeout(this.clearAnnouncementRegionTimer),this.clearAnnouncementRegionTimer=setTimeout(()=>{this.announceRegion.innerHTML=R.emptyHTML,delete this.clearAnnouncementRegionTimer},3e3)}addAnnounceRegion(N){let U=this.chart.announcerContainer||this.createAnnouncerContainer(),T=this.domElementProvider.createElement("div");return V(T,{"aria-hidden":!1,"aria-live":N,"aria-atomic":!0}),this.chart.styledMode?Z(T,"highcharts-visually-hidden"):Y(T),U.appendChild(T),T}createAnnouncerContainer(){let N=this.chart,U=q.createElement("div");return V(U,{"aria-hidden":!1,class:"highcharts-announcer-container"}),U.style.position="relative",N.renderTo.insertBefore(U,N.renderTo.firstChild),N.announcerContainer=U,U}}}),L(g,"Accessibility/Components/AnnotationsA11y.js",[g["Accessibility/Utils/HTMLUtilities.js"]],function(R){let{escapeStringForHTML:st,stripHTMLTagsFromString:$}=R;function J(Y){return(Y.annotations||[]).reduce((V,N)=>(N.options&&N.options.visible!==!1&&(V=V.concat(N.labels)),V),[])}function X(Y){return Y.options&&Y.options.accessibility&&Y.options.accessibility.description||Y.graphic&&Y.graphic.text&&Y.graphic.text.textStr||""}function q(Y){let V=Y.options&&Y.options.accessibility&&Y.options.accessibility.description;if(V)return V;let N=Y.chart,U=X(Y),T=Y.points,A=c=>c.graphic&&c.graphic.element&&c.graphic.element.getAttribute("aria-label")||"",M=T.filter(c=>!!c.graphic).map(c=>{let D=c.accessibility&&c.accessibility.valueDescription||A(c),it=c&&c.series.name||"";return(it?it+", ":"")+"data point "+D}).filter(c=>!!c),O=M.length,H=O>1?"MultiplePoints":O?"SinglePoint":"NoPoints",z={annotationText:U,annotation:Y,numPoints:O,annotationPoint:M[0],additionalAnnotationPoints:M.slice(1)};return N.langFormat("accessibility.screenReaderSection.annotations.description"+H,z)}function Z(Y){return J(Y).map(V=>{let N=st($(q(V),Y.renderer.forExport));return N?`
  • ${N}
  • `:""})}return{getAnnotationsInfoHTML:function(Y){let V=Y.annotations;return V&&V.length?`
      ${Z(Y).join(" ")}
    `:""},getAnnotationLabelDescription:q,getAnnotationListItems:Z,getPointAnnotationTexts:function(Y){let V=J(Y.series.chart).filter(N=>N.points.indexOf(Y)>-1);return V.length?V.map(N=>`${X(N)}`):[]}}}),L(g,"Accessibility/Components/InfoRegionsComponent.js",[g["Accessibility/A11yI18n.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/Components/AnnotationsA11y.js"],g["Core/Renderer/HTML/AST.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Core/Templating.js"],g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X,q,Z,Y,V,N){let{getAnnotationsInfoHTML:U}=J,{getAxisDescription:T,getAxisRangeDescription:A,getChartTitle:M,unhideChartElementFromAT:O}=q,{format:H}=Z,{doc:z}=Y,{addClass:c,getElement:D,getHeadingTagNameForElement:it,stripHTMLTagsFromString:Q,visuallyHideElement:W}=V,{attr:k,pick:_,replaceNested:C}=N;function h(l){return C(l,[/<([\w\-.:!]+)\b[^<>]*>\s*<\/\1>/g,""])}return class extends st{constructor(){super(...arguments),this.screenReaderSections={}}init(){let l=this.chart,u=this;this.initRegionsDefinitions(),this.addEvent(l,"aftergetTableAST",function(v){u.onDataTableCreated(v)}),this.addEvent(l,"afterViewData",function(v){v.wasHidden&&(u.dataTableDiv=v.element,setTimeout(function(){u.focusDataTable()},300))}),this.addEvent(l,"afterHideData",function(){u.viewDataTableButton&&u.viewDataTableButton.setAttribute("aria-expanded","false")}),l.exporting&&this.addEvent(l,"afterPrint",function(){u.updateAllScreenReaderSections()}),this.announcer=new $(l,"assertive")}initRegionsDefinitions(){let l=this,u=this.chart.options.accessibility;this.screenReaderSections={before:{element:null,buildContent:function(v){let I=u.screenReaderSection.beforeChartFormatter;return I?I(v):l.defaultBeforeChartFormatter(v)},insertIntoDOM:function(v,I){I.renderTo.insertBefore(v,I.renderTo.firstChild)},afterInserted:function(){l.sonifyButtonId!==void 0&&l.initSonifyButton(l.sonifyButtonId),l.dataTableButtonId!==void 0&&l.initDataTableButton(l.dataTableButtonId)}},after:{element:null,buildContent:function(v){let I=u.screenReaderSection.afterChartFormatter;return I?I(v):l.defaultAfterChartFormatter()},insertIntoDOM:function(v,I){I.renderTo.insertBefore(v,I.container.nextSibling)},afterInserted:function(){l.chart.accessibility&&u.keyboardNavigation.enabled&&l.chart.accessibility.keyboardNavigation.updateExitAnchor()}}}}onChartRender(){this.linkedDescriptionElement=this.getLinkedDescriptionElement(),this.setLinkedDescriptionAttrs(),this.updateAllScreenReaderSections()}updateAllScreenReaderSections(){let l=this;Object.keys(this.screenReaderSections).forEach(function(u){l.updateScreenReaderSection(u)})}getLinkedDescriptionElement(){let l=this.chart.options.accessibility.linkedDescription;if(!l)return;if(typeof l!="string")return l;let u=H(l,this.chart),v=z.querySelectorAll(u);if(v.length===1)return v[0]}setLinkedDescriptionAttrs(){let l=this.linkedDescriptionElement;l&&(l.setAttribute("aria-hidden","true"),c(l,"highcharts-linked-description"))}updateScreenReaderSection(l){let u=this.chart,v=this.screenReaderSections[l],I=v.buildContent(u),S=v.element=v.element||this.createElement("div"),b=S.firstChild||this.createElement("div");I?(this.setScreenReaderSectionAttribs(S,l),X.setElementHTML(b,I),S.appendChild(b),v.insertIntoDOM(S,u),u.styledMode?c(b,"highcharts-visually-hidden"):W(b),O(u,b),v.afterInserted&&v.afterInserted()):(S.parentNode&&S.parentNode.removeChild(S),v.element=null)}setScreenReaderSectionAttribs(l,u){let v=this.chart,I=v.langFormat("accessibility.screenReaderSection."+u+"RegionLabel",{chart:v,chartTitle:M(v)});k(l,{id:`highcharts-screen-reader-region-${u}-${v.index}`,"aria-label":I||void 0}),l.style.position="relative",I&&l.setAttribute("role",v.options.accessibility.landmarkVerbosity==="all"?"region":"group")}defaultBeforeChartFormatter(){let l=this.chart,u=l.options.accessibility.screenReaderSection.beforeChartFormat;if(!u)return"";let v=this.getAxesDescription(),I=l.sonify&&l.options.sonification&&l.options.sonification.enabled,S="highcharts-a11y-sonify-data-btn-"+l.index,b="hc-linkto-highcharts-data-table-"+l.index,K=U(l),ct=l.langFormat("accessibility.screenReaderSection.annotations.heading",{chart:l}),et={headingTagName:it(l.renderTo),chartTitle:M(l),typeDescription:this.getTypeDescriptionText(),chartSubtitle:this.getSubtitleText(),chartLongdesc:this.getLongdescText(),xAxisDescription:v.xAxis,yAxisDescription:v.yAxis,playAsSoundButton:I?this.getSonifyButtonText(S):"",viewTableButton:l.getCSV?this.getDataTableButtonText(b):"",annotationsTitle:K?ct:"",annotationsList:K},dt=R.i18nFormat(u,et,l);return this.dataTableButtonId=b,this.sonifyButtonId=S,h(dt)}defaultAfterChartFormatter(){let l=this.chart,u=l.options.accessibility.screenReaderSection.afterChartFormat;if(!u)return"";let v={endOfChartMarker:this.getEndOfChartMarkerText()};return h(R.i18nFormat(u,v,l))}getLinkedDescription(){let l=this.linkedDescriptionElement;return Q(l&&l.innerHTML||"",this.chart.renderer.forExport)}getLongdescText(){let l=this.chart.options,u=l.caption,v=u&&u.text,I=this.getLinkedDescription();return l.accessibility.description||I||v||""}getTypeDescriptionText(){let l=this.chart;return l.types?l.options.accessibility.typeDescription||function(u,v){let I=v[0],S=u.series&&u.series[0]||{},b=u.mapView&&u.mapView.geoMap&&u.mapView.geoMap.title,K={numSeries:u.series.length,numPoints:S.points&&S.points.length,chart:u,mapTitle:b};return I?I==="map"||I==="tiledwebmap"?K.mapTitle?u.langFormat("accessibility.chartTypes.mapTypeDescription",K):u.langFormat("accessibility.chartTypes.unknownMap",K):u.types.length>1?u.langFormat("accessibility.chartTypes.combinationChart",K):function(ct,et,dt){let pt=et[0],bt=ct.langFormat("accessibility.seriesTypeDescriptions."+pt,dt),Mt=ct.series&&ct.series.length<2?"Single":"Multiple";return(ct.langFormat("accessibility.chartTypes."+pt+Mt,dt)||ct.langFormat("accessibility.chartTypes.default"+Mt,dt))+(bt?" "+bt:"")}(u,v,K):u.langFormat("accessibility.chartTypes.emptyChart",K)}(l,l.types):""}getDataTableButtonText(l){let u=this.chart;return'"}getSonifyButtonText(l){let u=this.chart;return u.options.sonification&&u.options.sonification.enabled===!1?"":'"}getSubtitleText(){let l=this.chart.options.subtitle;return Q(l&&l.text||"",this.chart.renderer.forExport)}getEndOfChartMarkerText(){let l=D(`highcharts-end-of-chart-marker-${this.chart.index}`);if(l)return l.outerHTML;let u=this.chart,v=u.langFormat("accessibility.screenReaderSection.endOfChartMarker",{chart:u});return'
    '+v+"
    "}onDataTableCreated(l){let u=this.chart;if(u.options.accessibility.enabled){this.viewDataTableButton&&this.viewDataTableButton.setAttribute("aria-expanded","true");let v=l.tree.attributes||{};v.tabindex=-1,v.summary=u.langFormat("accessibility.table.tableSummary",{chart:u}),l.tree.attributes=v}}focusDataTable(){let l=this.dataTableDiv,u=l&&l.getElementsByTagName("table")[0];u&&u.focus&&u.focus()}initSonifyButton(l){let u=this.sonifyButton=D(l),v=this.chart,I=S=>{u&&(u.setAttribute("aria-hidden","true"),u.setAttribute("aria-label","")),S.preventDefault(),S.stopPropagation();let b=v.langFormat("accessibility.sonification.playAsSoundClickAnnouncement",{chart:v});this.announcer.announce(b),setTimeout(()=>{u&&(u.removeAttribute("aria-hidden"),u.removeAttribute("aria-label")),v.sonify&&v.sonify()},1e3)};u&&v&&(u.setAttribute("tabindex",-1),u.onclick=function(S){(v.options.accessibility&&v.options.accessibility.screenReaderSection.onPlayAsSoundClick||I).call(this,S,v)})}initDataTableButton(l){let u=this.viewDataTableButton=D(l),v=this.chart,I=l.replace("hc-linkto-","");u&&(k(u,{tabindex:-1,"aria-expanded":!!D(I)}),u.onclick=v.options.accessibility.screenReaderSection.onViewDataTableClick||function(){v.viewData()})}getAxesDescription(){let l=this.chart,u=function(ct,et){let dt=l[ct];return dt.length>1||dt[0]&&_(dt[0].options.accessibility&&dt[0].options.accessibility.enabled,et)},v=!!l.types&&0>l.types.indexOf("map")&&0>l.types.indexOf("treemap")&&0>l.types.indexOf("tilemap"),I=!!l.hasCartesianSeries,S=u("xAxis",!l.angular&&I&&v),b=u("yAxis",I&&v),K={};return S&&(K.xAxis=this.getAxisDescriptionText("xAxis")),b&&(K.yAxis=this.getAxisDescriptionText("yAxis")),K}getAxisDescriptionText(l){let u=this.chart,v=u[l];return u.langFormat("accessibility.axis."+l+"Description"+(v.length>1?"Plural":"Singular"),{chart:u,names:v.map(function(I){return T(I)}),ranges:v.map(function(I){return A(I)}),numAxes:v.length})}destroy(){this.announcer&&this.announcer.destroy()}}}),L(g,"Accessibility/Components/MenuComponent.js",[g["Core/Utilities.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{attr:q}=R,{getChartTitle:Z,unhideChartElementFromAT:Y}=J,{getFakeMouseEvent:V}=X;function N(T){return T.exportSVGElements&&T.exportSVGElements[0]}class U extends st{init(){let A=this.chart,M=this;this.addEvent(A,"exportMenuShown",function(){M.onMenuShown()}),this.addEvent(A,"exportMenuHidden",function(){M.onMenuHidden()}),this.createProxyGroup()}onMenuHidden(){let A=this.chart.exportContextMenu;A&&A.setAttribute("aria-hidden","true"),this.setExportButtonExpandedState("false")}onMenuShown(){let A=this.chart,M=A.exportContextMenu;M&&(this.addAccessibleContextMenuAttribs(),Y(A,M)),this.setExportButtonExpandedState("true")}setExportButtonExpandedState(A){this.exportButtonProxy&&this.exportButtonProxy.innerElement.setAttribute("aria-expanded",A)}onChartRender(){let A=this.chart,M=A.focusElement,O=A.accessibility;this.proxyProvider.clearGroup("chartMenu"),this.proxyMenuButton(),this.exportButtonProxy&&M&&M===A.exportingGroup&&(M.focusBorder?A.setFocusToElement(M,this.exportButtonProxy.innerElement):O&&O.keyboardNavigation.tabindexContainer.focus())}proxyMenuButton(){let A=this.chart,M=this.proxyProvider,O=N(A);(function(H){let z=H.options.exporting,c=N(H);return!!(z&&z.enabled!==!1&&z.accessibility&&z.accessibility.enabled&&c&&c.element)})(A)&&O&&(this.exportButtonProxy=M.addProxyElement("chartMenu",{click:O},"button",{"aria-label":A.langFormat("accessibility.exporting.menuButtonLabel",{chart:A,chartTitle:Z(A)}),"aria-expanded":!1,title:A.options.lang.contextButtonTitle||null}))}createProxyGroup(){this.chart&&this.proxyProvider&&this.proxyProvider.addGroup("chartMenu")}addAccessibleContextMenuAttribs(){let A=this.chart,M=A.exportDivElements;if(M&&M.length){M.forEach(H=>{H&&(H.tagName!=="LI"||H.children&&H.children.length?H.setAttribute("aria-hidden","true"):H.setAttribute("tabindex",-1))});let O=M[0]&&M[0].parentNode;O&&q(O,{"aria-hidden":void 0,"aria-label":A.langFormat("accessibility.exporting.chartMenuLabel",{chart:A}),role:"list"})}}getKeyboardNavigation(){let A=this.keyCodes,M=this.chart,O=this;return new $(M,{keyCodeMap:[[[A.left,A.up],function(){return O.onKbdPrevious(this)}],[[A.right,A.down],function(){return O.onKbdNext(this)}],[[A.enter,A.space],function(){return O.onKbdClick(this)}]],validate:function(){return!!M.exporting&&M.options.exporting.enabled!==!1&&M.options.exporting.accessibility.enabled!==!1},init:function(){let H=O.exportButtonProxy,z=O.chart.exportingGroup;H&&z&&M.setFocusToElement(z,H.innerElement)},terminate:function(){M.hideExportMenu()}})}onKbdPrevious(A){let M=this.chart,O=M.options.accessibility,H=A.response,z=M.highlightedExportItemIx||0;for(;z--;)if(M.highlightExportItem(z))return H.success;return O.keyboardNavigation.wrapAround?(M.highlightLastExportItem(),H.success):H.prev}onKbdNext(A){let M=this.chart,O=M.options.accessibility,H=A.response;for(let z=(M.highlightedExportItemIx||0)+1;z{c&&c.className==="highcharts-menu-item"&&c.onmouseout&&c.onmouseout(V("mouseout"))}),this.highlightedExportItemIx=0,this.exportContextMenu.hideMenu(),this.container.focus())}function O(z){let c=this.exportDivElements&&this.exportDivElements[z],D=this.exportDivElements&&this.exportDivElements[this.highlightedExportItemIx];if(c&&c.tagName==="LI"&&!(c.children&&c.children.length)){let it=!!(this.renderTo.getElementsByTagName("g")[0]||{}).focus;return c.focus&&it&&c.focus(),D&&D.onmouseout&&D.onmouseout(V("mouseout")),c.onmouseover&&c.onmouseover(V("mouseover")),this.highlightedExportItemIx=z,!0}return!1}function H(){if(this.exportDivElements){let z=this.exportDivElements.length;for(;z--;)if(this.highlightExportItem(z))return!0}return!1}T.compose=function(z){let c=z.prototype;c.hideExportMenu||(c.hideExportMenu=M,c.highlightExportItem=O,c.highlightLastExportItem=H,c.showExportMenu=A)}}(U||(U={})),U}),L(g,"Accessibility/KeyboardNavigation.js",[g["Core/Globals.js"],g["Accessibility/Components/MenuComponent.js"],g["Core/Utilities.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{doc:q,win:Z}=R,{addEvent:Y,defined:V,fireEvent:N}=$,{getElement:U,simulatedEventTarget:T}=X;class A{constructor(O,H){this.currentModuleIx=NaN,this.modules=[],this.init(O,H)}init(O,H){let z=this.eventProvider=new J;this.chart=O,this.components=H,this.modules=[],this.currentModuleIx=0,this.update(),z.addEvent(this.tabindexContainer,"keydown",c=>this.onKeydown(c)),z.addEvent(this.tabindexContainer,"focus",c=>this.onFocus(c)),["mouseup","touchend"].forEach(c=>z.addEvent(q,c,D=>this.onMouseUp(D))),["mousedown","touchstart"].forEach(c=>z.addEvent(O.renderTo,c,()=>{this.isClickingChart=!0}))}update(O){let H=this.chart.options.accessibility,z=H&&H.keyboardNavigation,c=this.components;this.updateContainerTabindex(),z&&z.enabled&&O&&O.length?(this.modules=O.reduce(function(D,it){let Q=c[it].getKeyboardNavigation();return D.concat(Q)},[]),this.updateExitAnchor()):(this.modules=[],this.currentModuleIx=0,this.removeExitAnchor())}updateExitAnchor(){let O=U(`highcharts-end-of-chart-marker-${this.chart.index}`);this.removeExitAnchor(),O?(this.makeElementAnExitAnchor(O),this.exitAnchor=O):this.createExitAnchor()}move(O){let H=this.modules&&this.modules[this.currentModuleIx];H&&H.terminate&&H.terminate(O),this.chart.focusElement&&this.chart.focusElement.removeFocusBorder(),this.currentModuleIx+=O;let z=this.modules&&this.modules[this.currentModuleIx];if(z){if(z.validate&&!z.validate())return this.move(O);if(z.init)return z.init(O),!0}return this.currentModuleIx=0,this.exiting=!0,O>0?this.exitAnchor&&this.exitAnchor.focus():this.tabindexContainer.focus(),!1}onFocus(O){let H=this.chart,z=O.relatedTarget&&H.container.contains(O.relatedTarget),c=H.options.accessibility,D=c&&c.keyboardNavigation;if(D&&D.enabled&&!this.exiting&&!this.tabbingInBackwards&&!this.isClickingChart&&!z){let it=this.getFirstValidModuleIx();it!==null&&(this.currentModuleIx=it,this.modules[it].init(1))}this.keyboardReset=!1,this.exiting=!1}onMouseUp(O){if(delete this.isClickingChart,!this.keyboardReset&&O.relatedTarget!==T){let H=this.chart;if(!O.target||!H.container.contains(O.target)){let z=this.modules&&this.modules[this.currentModuleIx||0];z&&z.terminate&&z.terminate(),this.currentModuleIx=0}H.focusElement&&(H.focusElement.removeFocusBorder(),delete H.focusElement),this.keyboardReset=!0}}onKeydown(O){let H,z=O||Z.event,c=this.modules&&this.modules.length&&this.modules[this.currentModuleIx],D=z.target;if((!D||D.nodeName!=="INPUT"||D.classList.contains("highcharts-a11y-proxy-element"))&&(this.keyboardReset=!1,this.exiting=!1,c)){let it=c.run(z);it===c.response.success?H=!0:it===c.response.prev?H=this.move(-1):it===c.response.next&&(H=this.move(1)),H&&(z.preventDefault(),z.stopPropagation())}}updateContainerTabindex(){let O,H=this.chart.options.accessibility,z=H&&H.keyboardNavigation,c=!(z&&z.enabled===!1),D=this.chart,it=D.container;D.renderTo.hasAttribute("tabindex")?(it.removeAttribute("tabindex"),O=D.renderTo):O=it,this.tabindexContainer=O;let Q=O.getAttribute("tabindex");c&&!Q?O.setAttribute("tabindex","0"):c||D.container.removeAttribute("tabindex")}createExitAnchor(){let O=this.chart,H=this.exitAnchor=q.createElement("div");O.renderTo.appendChild(H),this.makeElementAnExitAnchor(H)}makeElementAnExitAnchor(O){let H=this.tabindexContainer.getAttribute("tabindex")||0;O.setAttribute("class","highcharts-exit-anchor"),O.setAttribute("tabindex",H),O.setAttribute("aria-hidden",!1),this.addExitAnchorEventsToEl(O)}removeExitAnchor(){if(this.exitAnchor){let O=this.eventProvider.eventRemovers.find(H=>H.element===this.exitAnchor);O&&V(O.remover)&&this.eventProvider.removeEvent(O.remover),this.exitAnchor.parentNode&&this.exitAnchor.parentNode.removeChild(this.exitAnchor),delete this.exitAnchor}}addExitAnchorEventsToEl(O){let H=this.chart,z=this;this.eventProvider.addEvent(O,"focus",function(c){let D=c||Z.event,it=!(D.relatedTarget&&H.container.contains(D.relatedTarget)||z.exiting);if(H.focusElement&&delete H.focusElement,it){if(z.tabbingInBackwards=!0,z.tabindexContainer.focus(),delete z.tabbingInBackwards,D.preventDefault(),z.modules&&z.modules.length){z.currentModuleIx=z.modules.length-1;let Q=z.modules[z.currentModuleIx];Q&&Q.validate&&!Q.validate()?z.move(-1):Q&&Q.init(-1)}}else z.exiting=!1})}getFirstValidModuleIx(){let O=this.modules.length;for(let H=0;H{c&&c.dismissPopupContent&&c.dismissPopupContent()})}M.compose=function(z){st.compose(z);let c=z.prototype;return c.dismissPopupContent||(c.dismissPopupContent=O,Y(q,"keydown",H)),z}}(A||(A={})),A}),L(g,"Accessibility/Components/LegendComponent.js",[g["Core/Animation/AnimationUtilities.js"],g["Core/Globals.js"],g["Core/Legend/Legend.js"],g["Core/Utilities.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X,q,Z,Y){let{animObject:V}=R,{doc:N}=st,{addEvent:U,fireEvent:T,isNumber:A,pick:M,syncTimeout:O}=J,{getChartTitle:H}=Z,{stripHTMLTagsFromString:z,addClass:c,removeClass:D}=Y;function it(k){let _=k.legend&&k.legend.allItems,C=k.options.legend.accessibility||{},h=k.colorAxis&&k.colorAxis.some(l=>!l.dataClasses||!l.dataClasses.length);return!!(_&&_.length&&!h&&C.enabled!==!1)}function Q(k,_){let C=_.legendItem||{};for(let h of(_.setState(k?"hover":"",!0),["group","label","symbol"])){let l=C[h],u=l&&l.element||l;u&&T(u,k?"mouseover":"mouseout")}}class W extends X{constructor(){super(...arguments),this.highlightedLegendItemIx=NaN,this.proxyGroup=null}init(){let _=this;this.recreateProxies(),this.addEvent($,"afterScroll",function(){this.chart===_.chart&&(_.proxyProvider.updateGroupProxyElementPositions("legend"),_.updateLegendItemProxyVisibility(),_.highlightedLegendItemIx>-1&&this.chart.highlightLegendItem(_.highlightedLegendItemIx))}),this.addEvent($,"afterPositionItem",function(C){this.chart===_.chart&&this.chart.renderer&&_.updateProxyPositionForItem(C.item)}),this.addEvent($,"afterRender",function(){this.chart===_.chart&&this.chart.renderer&&_.recreateProxies()&&O(()=>_.proxyProvider.updateGroupProxyElementPositions("legend"),V(M(this.chart.renderer.globalAnimation,!0)).duration)})}updateLegendItemProxyVisibility(){let _,C=this.chart,h=C.legend,l=h.allItems||[],u=h.currentPage||1,v=h.clipHeight||0;l.forEach(I=>{if(I.a11yProxyElement){let S=h.pages&&h.pages.length,b=I.a11yProxyElement.element,K=!1;if(_=I.legendItem||{},S){let ct=_.pageIx||0;K=(_.y||0)+(_.label?Math.round(_.label.getBBox().height):0)-h.pages[ct]>v||ct!==u-1}K?C.styledMode?c(b,"highcharts-a11y-invisible"):b.style.visibility="hidden":(D(b,"highcharts-a11y-invisible"),b.style.visibility="")}})}onChartRender(){it(this.chart)||this.removeProxies()}highlightAdjacentLegendPage(_){let C=this.chart,h=C.legend,l=(h.currentPage||1)+_,u=h.pages||[];if(l>0&&l<=u.length){let v=0;for(let I of h.allItems)((I.legendItem||{}).pageIx||0)+1===l&&C.highlightLegendItem(v)&&(this.highlightedLegendItemIx=v),++v}}updateProxyPositionForItem(_){_.a11yProxyElement&&_.a11yProxyElement.refreshPosition()}recreateProxies(){let _=N.activeElement,C=this.proxyGroup,h=_&&C&&C.contains(_);return this.removeProxies(),!!it(this.chart)&&(this.addLegendProxyGroup(),this.proxyLegendItems(),this.updateLegendItemProxyVisibility(),this.updateLegendTitle(),h&&this.chart.highlightLegendItem(this.highlightedLegendItemIx),!0)}removeProxies(){this.proxyProvider.removeGroup("legend")}updateLegendTitle(){let _=this.chart,C=z((_.legend&&_.legend.options.title&&_.legend.options.title.text||"").replace(/
    /g," "),_.renderer.forExport),h=_.langFormat("accessibility.legend.legendLabel"+(C?"":"NoTitle"),{chart:_,legendTitle:C,chartTitle:H(_)});this.proxyProvider.updateGroupAttrs("legend",{"aria-label":h})}addLegendProxyGroup(){let _=this.chart.options.accessibility.landmarkVerbosity==="all"?"region":null;this.proxyGroup=this.proxyProvider.addGroup("legend","ul",{"aria-label":"_placeholder_",role:_})}proxyLegendItems(){let _,C=this;((this.chart.legend||{}).allItems||[]).forEach(h=>{(_=h.legendItem||{}).label&&_.label.element&&C.proxyLegendItem(h)})}proxyLegendItem(_){let C=_.legendItem||{};if(!C.label||!C.group)return;let h=this.chart.langFormat("accessibility.legend.legendItem",{chart:this.chart,itemName:z(_.name,this.chart.renderer.forExport),item:_}),l={tabindex:-1,"aria-pressed":_.visible,"aria-label":h},u=C.group.div?C.label:C.group;_.a11yProxyElement=this.proxyProvider.addProxyElement("legend",{click:C.label,visual:u.element},"button",l)}getKeyboardNavigation(){let _=this.keyCodes,C=this,h=this.chart;return new q(h,{keyCodeMap:[[[_.left,_.right,_.up,_.down],function(l){return C.onKbdArrowKey(this,l)}],[[_.enter,_.space],function(){return C.onKbdClick(this)}],[[_.pageDown,_.pageUp],function(l){let u=l===_.pageDown?1:-1;return C.highlightAdjacentLegendPage(u),this.response.success}]],validate:function(){return C.shouldHaveLegendNavigation()},init:function(){h.highlightLegendItem(0),C.highlightedLegendItemIx=0},terminate:function(){C.highlightedLegendItemIx=-1,h.legend.allItems.forEach(l=>Q(!1,l))}})}onKbdArrowKey(_,C){let{keyCodes:{left:h,up:l},highlightedLegendItemIx:u,chart:v}=this,I=v.legend.allItems.length,S=v.options.accessibility.keyboardNavigation.wrapAround,b=C===h||C===l?-1:1;return v.highlightLegendItem(u+b)?this.highlightedLegendItemIx+=b:S&&I>1&&(this.highlightedLegendItemIx=b>0?0:I-1,v.highlightLegendItem(this.highlightedLegendItemIx)),_.response.success}onKbdClick(_){let C=this.chart.legend.allItems[this.highlightedLegendItemIx];return C&&C.a11yProxyElement&&C.a11yProxyElement.click(),_.response.success}shouldHaveLegendNavigation(){if(!it(this.chart))return!1;let _=this.chart,C=(_.options.legend||{}).accessibility||{};return!!(_.legend.display&&C.keyboardNavigation&&C.keyboardNavigation.enabled)}destroy(){this.removeProxies()}}return function(k){function _(h){let l=this.legend.allItems,u=this.accessibility&&this.accessibility.components.legend.highlightedLegendItemIx,v=l[h],I=(v==null?void 0:v.legendItem)||{};if(v){A(u)&&l[u]&&Q(!1,l[u]),function(K,ct){let et=(K.allItems[ct].legendItem||{}).pageIx,dt=K.currentPage;et!==void 0&&et+1!==dt&&K.scroll(1+et-dt)}(this.legend,h);let S=I.label,b=v.a11yProxyElement&&v.a11yProxyElement.innerElement;return S&&S.element&&b&&this.setFocusToElement(S,b),Q(!0,v),!0}return!1}function C(h){let l=this.chart.options.accessibility,u=h.item;l.enabled&&u&&u.a11yProxyElement&&u.a11yProxyElement.innerElement.setAttribute("aria-pressed",h.visible?"true":"false")}k.compose=function(h,l){let u=h.prototype;u.highlightLegendItem||(u.highlightLegendItem=_,U(l,"afterColorizeItem",C))}}(W||(W={})),W}),L(g,"Stock/Navigator/ChartNavigatorComposition.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let $,{isTouchDevice:J}=R,{addEvent:X,merge:q,pick:Z}=st,Y=[];function V(){this.navigator&&this.navigator.setBaseSeries(null,!1)}function N(){var Q;let H,z,c,D=this.legend,it=this.navigator;if(it){H=D&&D.options,z=it.xAxis,c=it.yAxis;let{scrollbarHeight:W,scrollButtonSize:k}=it;this.inverted?(it.left=it.opposite?this.chartWidth-W-it.height:this.spacing[3]+W,it.top=this.plotTop+k):(it.left=Z(z.left,this.plotLeft+k),it.top=it.navigatorOptions.top||this.chartHeight-it.height-W-(((Q=this.scrollbar)==null?void 0:Q.options.margin)||0)-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(H&&H.verticalAlign==="bottom"&&H.layout!=="proximate"&&H.enabled&&!H.floating?D.legendHeight+Z(H.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0)),z&&c&&(this.inverted?z.options.left=c.options.left=it.left:z.options.top=c.options.top=it.top,z.setAxisSize(),c.setAxisSize())}}function U(H){!this.navigator&&!this.scroller&&(this.options.navigator.enabled||this.options.scrollbar.enabled)&&(this.scroller=this.navigator=new $(this),Z(H.redraw,!0)&&this.redraw(H.animation))}function T(){let H=this.options;(H.navigator.enabled||H.scrollbar.enabled)&&(this.scroller=this.navigator=new $(this))}function A(){let H=this.options,z=H.navigator,c=H.rangeSelector;if((z&&z.enabled||c&&c.enabled)&&(!J&&this.zooming.type==="x"||J&&this.zooming.pinchType==="x"))return!1}function M(H){let z=H.navigator;if(z&&H.xAxis[0]){let c=H.xAxis[0].getExtremes();z.render(c.min,c.max)}}function O(H){let z=H.options.navigator||{},c=H.options.scrollbar||{};!this.navigator&&!this.scroller&&(z.enabled||c.enabled)&&(q(!0,this.options.navigator,z),q(!0,this.options.scrollbar,c),delete H.options.navigator,delete H.options.scrollbar)}return{compose:function(H,z){if(st.pushUnique(Y,H)){let c=H.prototype;$=z,c.callbacks.push(M),X(H,"afterAddSeries",V),X(H,"afterSetChartSize",N),X(H,"afterUpdate",U),X(H,"beforeRender",T),X(H,"beforeShowResetZoom",A),X(H,"update",O)}}}}),L(g,"Core/Axis/NavigatorAxisComposition.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let{isTouchDevice:$}=R,{addEvent:J,correctFloat:X,defined:q,isNumber:Z,pick:Y}=st;function V(){this.navigatorAxis||(this.navigatorAxis=new U(this))}function N(T){let A,M=this.chart,O=M.options,H=O.navigator,z=this.navigatorAxis,c=M.zooming.pinchType,D=O.rangeSelector,it=M.zooming.type;if(this.isXAxis&&(H!=null&&H.enabled||D!=null&&D.enabled)){if(it==="y"&&T.trigger==="zoom")A=!1;else if((T.trigger==="zoom"&&it==="xy"||$&&c==="xy")&&this.options.range){let Q=z.previousZoom;q(T.min)?z.previousZoom=[this.min,this.max]:Q&&(T.min=Q[0],T.max=Q[1],z.previousZoom=void 0)}}A!==void 0&&T.preventDefault()}class U{static compose(A){A.keepProps.includes("navigatorAxis")||(A.keepProps.push("navigatorAxis"),J(A,"init",V),J(A,"setExtremes",N))}constructor(A){this.axis=A}destroy(){this.axis=void 0}toFixedRange(A,M,O,H){let z=this.axis,c=(z.pointRange||0)/2,D=Y(O,z.translate(A,!0,!z.horiz)),it=Y(H,z.translate(M,!0,!z.horiz));return q(O)||(D=X(D+c)),q(H)||(it=X(it-c)),Z(D)&&Z(it)||(D=it=void 0),{min:D,max:it}}}return U}),L(g,"Stock/Navigator/NavigatorDefaults.js",[g["Core/Color/Color.js"],g["Core/Series/SeriesRegistry.js"]],function(R,st){let{parse:$}=R,{seriesTypes:J}=st;return{height:40,margin:25,maskInside:!0,handles:{width:7,borderRadius:0,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:"#f2f2f2",borderColor:"#999999"},maskFill:$("#667aff").setOpacity(.3).get(),outlineColor:"#999999",outlineWidth:1,series:{type:J.areaspline===void 0?"line":"areaspline",fillOpacity:.05,lineWidth:1,compare:null,sonification:{enabled:!1},dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"#e6e6e6",id:"navigator-x-axis",gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:"#000000",fontSize:"0.7em",opacity:.6,textOutline:"2px contrast"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,id:"navigator-y-axis",maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}}),L(g,"Stock/Navigator/NavigatorSymbols.js",[g["Core/Renderer/SVG/Symbols.js"],g["Core/Utilities.js"]],function(R,st){let{relativeLength:$}=st;return{"navigator-handle":function(J,X,q,Z,Y={}){let V=Y.width?Y.width/2:q,N=$(Y.borderRadius||0,Math.min(2*V,Z));return[["M",-1.5,(Z=Y.height||Z)/2-3.5],["L",-1.5,Z/2+4.5],["M",.5,Z/2-3.5],["L",.5,Z/2+4.5],...R.rect(-V-1,.5,2*V+1,Z,{r:N})]}}}),L(g,"Stock/Utilities/StockUtilities.js",[g["Core/Utilities.js"]],function(R){let{defined:st}=R;return{setFixedRange:function($){let J=this.xAxis[0];st(J.dataMax)&&st(J.dataMin)&&$?this.fixedRange=Math.min($,J.dataMax-J.dataMin):this.fixedRange=$}}}),L(g,"Stock/Navigator/NavigatorComposition.js",[g["Core/Defaults.js"],g["Core/Globals.js"],g["Core/Axis/NavigatorAxisComposition.js"],g["Stock/Navigator/NavigatorDefaults.js"],g["Stock/Navigator/NavigatorSymbols.js"],g["Core/Renderer/RendererRegistry.js"],g["Stock/Utilities/StockUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X,q,Z,Y){let{setOptions:V}=R,{composed:N}=st,{getRendererType:U}=q,{setFixedRange:T}=Z,{addEvent:A,extend:M,pushUnique:O}=Y;function H(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}return{compose:function(z,c,D){$.compose(c),O(N,"Navigator")&&(z.prototype.setFixedRange=T,M(U().prototype.symbols,X),A(D,"afterUpdate",H),V({navigator:J}))}}}),L(g,"Core/Axis/ScrollbarAxis.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){var $;let{composed:J}=R,{addEvent:X,defined:q,pick:Z,pushUnique:Y}=st;return function(V){let N;function U(O){let H=Z(O.options&&O.options.min,O.min),z=Z(O.options&&O.options.max,O.max);return{axisMin:H,axisMax:z,scrollMin:q(O.dataMin)?Math.min(H,O.min,O.dataMin,Z(O.threshold,1/0)):H,scrollMax:q(O.dataMax)?Math.max(z,O.max,O.dataMax,Z(O.threshold,-1/0)):z}}function T(){let O=this.scrollbar,H=O&&!O.options.opposite,z=this.horiz?2:H?3:1;O&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[z]+=O.size+(O.options.margin||0))}function A(){let O=this;O.options&&O.options.scrollbar&&O.options.scrollbar.enabled&&(O.options.scrollbar.vertical=!O.horiz,O.options.startOnTick=O.options.endOnTick=!1,O.scrollbar=new N(O.chart.renderer,O.options.scrollbar,O.chart),X(O.scrollbar,"changed",function(H){let z,c,{axisMin:D,axisMax:it,scrollMin:Q,scrollMax:W}=U(O),k=W-Q;if(q(D)&&q(it))if(O.horiz&&!O.reversed||!O.horiz&&O.reversed?(z=Q+k*this.to,c=Q+k*this.from):(z=Q+k*(1-this.from),c=Q+k*(1-this.to)),this.shouldUpdateExtremes(H.DOMType)){let _=H.DOMType!=="mousemove"&&H.DOMType!=="touchmove"&&void 0;O.setExtremes(c,z,!0,_,H)}else this.setRange(this.from,this.to)}))}function M(){let O,H,z,{scrollMin:c,scrollMax:D}=U(this),it=this.scrollbar,Q=this.axisTitleMargin+(this.titleOffset||0),W=this.chart.scrollbarsOffsets,k=this.options.margin||0;if(it&&W){if(this.horiz)this.opposite||(W[1]+=Q),it.position(this.left,this.top+this.height+2+W[1]-(this.opposite?k:0),this.width,this.height),this.opposite||(W[1]+=k),O=1;else{let _;this.opposite&&(W[0]+=Q),_=it.options.opposite?this.left+this.width+2+W[0]-(this.opposite?0:k):this.opposite?0:k,it.position(_,this.top,this.width,this.height),this.opposite&&(W[0]+=k),O=0}if(W[O]+=it.size+(it.options.margin||0),isNaN(c)||isNaN(D)||!q(this.min)||!q(this.max)||this.dataMin===this.dataMax)it.setRange(0,1);else if(this.min===this.max){let _=this.pointRange/(this.dataMax+1);H=_*this.min,z=_*(this.max+1),it.setRange(H,z)}else H=(this.min-c)/(D-c),z=(this.max-c)/(D-c),this.horiz&&!this.reversed||!this.horiz&&this.reversed?it.setRange(H,z):it.setRange(1-z,1-H)}}V.compose=function(O,H){Y(J,"Axis.Scrollbar")&&(N=H,X(O,"afterGetOffset",T),X(O,"afterInit",A),X(O,"afterRender",M))}}($||($={})),$}),L(g,"Stock/Scrollbar/ScrollbarDefaults.js",[],function(){return{height:10,barBorderRadius:5,buttonBorderRadius:0,buttonsEnabled:!1,liveRedraw:void 0,margin:void 0,minWidth:6,opposite:!0,step:.2,zIndex:3,barBackgroundColor:"#cccccc",barBorderWidth:0,barBorderColor:"#cccccc",buttonArrowColor:"#333333",buttonBackgroundColor:"#e6e6e6",buttonBorderColor:"#cccccc",buttonBorderWidth:1,rifleColor:"none",trackBackgroundColor:"rgba(255, 255, 255, 0.001)",trackBorderColor:"#cccccc",trackBorderRadius:5,trackBorderWidth:1}}),L(g,"Stock/Scrollbar/Scrollbar.js",[g["Core/Defaults.js"],g["Core/Globals.js"],g["Core/Axis/ScrollbarAxis.js"],g["Stock/Scrollbar/ScrollbarDefaults.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{defaultOptions:q}=R,{addEvent:Z,correctFloat:Y,crisp:V,defined:N,destroyObjectProperties:U,fireEvent:T,merge:A,pick:M,removeEvent:O}=X;class H{static compose(c){$.compose(c,H)}static swapXY(c,D){return D&&c.forEach(it=>{let Q,W=it.length;for(let k=0;kthis.calculatedWidth?D.minWidth:0;return{chartX:(c.chartX-this.x-this.xOffset)/(this.barWidth-it),chartY:(c.chartY-this.y-this.yOffset)/(this.barWidth-it)}}destroy(){let c=this,D=c.chart.scroller;c.removeEvents(),["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(it){c[it]&&c[it].destroy&&(c[it]=c[it].destroy())}),D&&c===D.scrollbar&&(D.scrollbar=null,U(D.scrollbarButtons))}drawScrollbarButton(c){let D=this.renderer,it=this.scrollbarButtons,Q=this.options,W=this.size,k=D.g().add(this.group);if(it.push(k),Q.buttonsEnabled){let _=D.rect().addClass("highcharts-scrollbar-button").add(k);this.chart.styledMode||_.attr({stroke:Q.buttonBorderColor,"stroke-width":Q.buttonBorderWidth,fill:Q.buttonBackgroundColor}),_.attr(_.crisp({x:-.5,y:-.5,width:W,height:W,r:Q.buttonBorderRadius},_.strokeWidth()));let C=D.path(H.swapXY([["M",W/2+(c?-1:1),W/2-3],["L",W/2+(c?-1:1),W/2+3],["L",W/2+(c?2:-2),W/2]],Q.vertical)).addClass("highcharts-scrollbar-arrow").add(it[c]);this.chart.styledMode||C.attr({fill:Q.buttonArrowColor})}}init(c,D,it){this.scrollbarButtons=[],this.renderer=c,this.userOptions=D,this.options=A(J,q.scrollbar,D),this.options.margin=M(this.options.margin,10),this.chart=it,this.size=M(this.options.size,this.options.height),D.enabled&&(this.render(),this.addEvents())}mouseDownHandler(c){var Q;let D=((Q=this.chart.pointer)==null?void 0:Q.normalize(c))||c,it=this.cursorToScrollbarPosition(D);this.chartX=it.chartX,this.chartY=it.chartY,this.initPositions=[this.from,this.to],this.grabbedCenter=!0}mouseMoveHandler(c){var k;let D,it=((k=this.chart.pointer)==null?void 0:k.normalize(c))||c,Q=this.options.vertical?"chartY":"chartX",W=this.initPositions||[];this.grabbedCenter&&(!c.touches||c.touches[0][Q]!==0)&&(D=this.cursorToScrollbarPosition(it)[Q]-this[Q],this.hasDragged=!0,this.updatePosition(W[0]+D,W[1]+D),this.hasDragged&&T(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:c.type,DOMEvent:c}))}mouseUpHandler(c){this.hasDragged&&T(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:c.type,DOMEvent:c}),this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null}position(c,D,it,Q){let{buttonsEnabled:W,margin:k=0,vertical:_}=this.options,C=this.rendered?"animate":"attr",h=Q,l=0;this.group.show(),this.x=c,this.y=D+this.trackBorderWidth,this.width=it,this.height=Q,this.xOffset=h,this.yOffset=l,_?(this.width=this.yOffset=it=l=this.size,this.xOffset=h=0,this.yOffset=l=W?this.size:0,this.barWidth=Q-(W?2*it:0),this.x=c+=k):(this.height=Q=this.size,this.xOffset=h=W?this.size:0,this.barWidth=it-(W?2*Q:0),this.y=this.y+k),this.group[C]({translateX:c,translateY:this.y}),this.track[C]({width:it,height:Q}),this.scrollbarButtons[1][C]({translateX:_?0:it-h,translateY:_?Q-l:0})}removeEvents(){this._events.forEach(function(c){O.apply(null,c)}),this._events.length=0}render(){let c=this.renderer,D=this.options,it=this.size,Q=this.chart.styledMode,W=c.g("scrollbar").attr({zIndex:D.zIndex}).hide().add();this.group=W,this.track=c.rect().addClass("highcharts-scrollbar-track").attr({r:D.trackBorderRadius||0,height:it,width:it}).add(W),Q||this.track.attr({fill:D.trackBackgroundColor,stroke:D.trackBorderColor,"stroke-width":D.trackBorderWidth});let k=this.trackBorderWidth=this.track.strokeWidth();this.track.attr({x:-V(0,k),y:-V(0,k)}),this.scrollbarGroup=c.g().add(W),this.scrollbar=c.rect().addClass("highcharts-scrollbar-thumb").attr({height:it-k,width:it-k,r:D.barBorderRadius||0}).add(this.scrollbarGroup),this.scrollbarRifles=c.path(H.swapXY([["M",-3,it/4],["L",-3,2*it/3],["M",0,it/4],["L",0,2*it/3],["M",3,it/4],["L",3,2*it/3]],D.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup),Q||(this.scrollbar.attr({fill:D.barBackgroundColor,stroke:D.barBorderColor,"stroke-width":D.barBorderWidth}),this.scrollbarRifles.attr({stroke:D.rifleColor,"stroke-width":1})),this.scrollbarStrokeWidth=this.scrollbar.strokeWidth(),this.scrollbarGroup.translate(-V(0,this.scrollbarStrokeWidth),-V(0,this.scrollbarStrokeWidth)),this.drawScrollbarButton(0),this.drawScrollbarButton(1)}setRange(c,D){let it,Q,W=this.options,k=W.vertical,_=W.minWidth,C=this.barWidth,h=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(!N(C))return;let l=C*Math.min(D,1);it=Math.ceil(C*(c=Math.max(c,0))),this.calculatedWidth=Q=Y(l-it),Q<_&&(it=(C-_+Q)*c,Q=_);let u=Math.floor(it+this.xOffset+this.yOffset),v=Q/2-.5;this.from=c,this.to=D,k?(this.scrollbarGroup[h]({translateY:u}),this.scrollbar[h]({height:Q}),this.scrollbarRifles[h]({translateY:v}),this.scrollbarTop=u,this.scrollbarLeft=0):(this.scrollbarGroup[h]({translateX:u}),this.scrollbar[h]({width:Q}),this.scrollbarRifles[h]({translateX:v}),this.scrollbarLeft=u,this.scrollbarTop=0),Q<=12?this.scrollbarRifles.hide():this.scrollbarRifles.show(),W.showFull===!1&&(c<=0&&D>=1?this.group.hide():this.group.show()),this.rendered=!0}shouldUpdateExtremes(c){return M(this.options.liveRedraw,st.svg&&!st.isTouchDevice&&!this.chart.boosted)||c==="mouseup"||c==="touchend"||!N(c)}trackClick(c){var k;let D=((k=this.chart.pointer)==null?void 0:k.normalize(c))||c,it=this.to-this.from,Q=this.y+this.scrollbarTop,W=this.x+this.scrollbarLeft;this.options.vertical&&D.chartY>Q||!this.options.vertical&&D.chartX>W?this.updatePosition(this.from+it,this.to+it):this.updatePosition(this.from-it,this.to-it),T(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:c})}update(c){this.destroy(),this.init(this.chart.renderer,A(!0,this.options,c),this.chart)}updatePosition(c,D){D>1&&(c=Y(1-Y(D-c)),D=1),c<0&&(D=Y(D-c),c=0),this.from=c,this.to=D}}return H.defaultOptions=J,q.scrollbar=A(!0,H.defaultOptions,q.scrollbar),H}),L(g,"Stock/Navigator/Navigator.js",[g["Core/Axis/Axis.js"],g["Stock/Navigator/ChartNavigatorComposition.js"],g["Core/Defaults.js"],g["Core/Globals.js"],g["Core/Axis/NavigatorAxisComposition.js"],g["Stock/Navigator/NavigatorComposition.js"],g["Stock/Scrollbar/Scrollbar.js"],g["Core/Renderer/SVG/SVGRenderer.js"],g["Core/Utilities.js"]],function(R,st,$,J,X,q,Z,Y,V){let{defaultOptions:N}=$,{isTouchDevice:U}=J,{prototype:{symbols:T}}=Y,{addEvent:A,clamp:M,correctFloat:O,defined:H,destroyObjectProperties:z,erase:c,extend:D,find:it,fireEvent:Q,isArray:W,isNumber:k,merge:_,pick:C,removeEvent:h,splat:l}=V;function u(I,...S){let b=[].filter.call(S,k);if(b.length)return Math[I].apply(0,b)}class v{static compose(S,b,K){st.compose(S,v),q.compose(S,b,K)}constructor(S){this.isDirty=!1,this.scrollbarHeight=0,this.init(S)}drawHandle(S,b,K,ct){let et=this.navigatorOptions.handles.height;this.handles[b][ct](K?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(S,10)+.5-et)}:{translateX:Math.round(this.left+parseInt(S,10)),translateY:Math.round(this.top+this.height/2-et/2-1)})}drawOutline(S,b,K,ct){let et=this.navigatorOptions.maskInside,dt=this.outline.strokeWidth(),pt=dt/2,bt=dt%2/2,Mt=this.scrollButtonSize,w=this.size,B=this.top,tt=this.height,nt=B-pt,x=B+tt,y=this.left,F,lt;K?(F=B+b+bt,b=B+S+bt,lt=[["M",y+tt,B-Mt-bt],["L",y+tt,F],["L",y,F],["M",y,b],["L",y+tt,b],["L",y+tt,B+w+Mt]],et&<.push(["M",y+tt,F-pt],["L",y+tt,b+pt])):(y-=Mt,S+=y+Mt-bt,b+=y+Mt-bt,lt=[["M",y,nt],["L",S,nt],["L",S,x],["M",b,x],["L",b,nt],["L",y+w+2*Mt,nt]],et&<.push(["M",S-pt,nt],["L",b+pt,nt])),this.outline[ct]({d:lt})}drawMasks(S,b,K,ct){let et,dt,pt,bt,Mt=this.left,w=this.top,B=this.height;K?(pt=[Mt,Mt,Mt],bt=[w,w+S,w+b],dt=[B,B,B],et=[S,b-S,this.size-b]):(pt=[Mt,Mt+S,Mt+b],bt=[w,w,w],dt=[S,b-S,this.size-b],et=[B,B,B]),this.shades.forEach((tt,nt)=>{tt[ct]({x:pt[nt],y:bt[nt],width:dt[nt],height:et[nt]})})}renderElements(){var Mt,w;let S=this,b=S.navigatorOptions,K=b.maskInside,ct=S.chart,et=ct.inverted,dt=ct.renderer,pt={cursor:et?"ns-resize":"ew-resize"},bt=(Mt=S.navigatorGroup)!=null?Mt:S.navigatorGroup=dt.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();if([!K,K,!K].forEach((B,tt)=>{var x;let nt=(x=S.shades[tt])!=null?x:S.shades[tt]=dt.rect().addClass("highcharts-navigator-mask"+(tt===1?"-inside":"-outside")).add(bt);ct.styledMode||(nt.attr({fill:B?b.maskFill:"rgba(0,0,0,0)"}),tt===1&&nt.css(pt))}),S.outline||(S.outline=dt.path().addClass("highcharts-navigator-outline").add(bt)),ct.styledMode||S.outline.attr({"stroke-width":b.outlineWidth,stroke:b.outlineColor}),(w=b.handles)==null?void 0:w.enabled){let B=b.handles,{height:tt,width:nt}=B;[0,1].forEach(x=>{var F;let y=B.symbols[x];if(S.handles[x]&&S.handles[x].symbolUrl===y){if(!S.handles[x].isImg&&S.handles[x].symbolName!==y){let lt=T[y].call(T,-nt/2-1,0,nt,tt);S.handles[x].attr({d:lt}),S.handles[x].symbolName=y}}else(F=S.handles[x])==null||F.destroy(),S.handles[x]=dt.symbol(y,-nt/2-1,0,nt,tt,B),S.handles[x].attr({zIndex:7-x}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][x]).add(bt),S.addMouseEvents();ct.inverted&&S.handles[x].attr({rotation:90,rotationOriginX:Math.floor(-nt/2),rotationOriginY:(tt+nt)/2}),ct.styledMode||S.handles[x].attr({fill:B.backgroundColor,stroke:B.borderColor,"stroke-width":B.lineWidth,width:B.width,height:B.height,x:-nt/2-1,y:0}).css(pt)})}}update(S,b=!1){var et,dt;let K=this.chart,ct=K.options.chart.inverted!==((et=K.scrollbar)==null?void 0:et.options.vertical);if(_(!0,K.options.navigator,S),this.navigatorOptions=K.options.navigator||{},this.setOpposite(),H(S.enabled)||ct)return this.destroy(),this.navigatorEnabled=S.enabled||this.navigatorEnabled,this.init(K);if(this.navigatorEnabled&&(this.isDirty=!0,S.adaptToUpdatedData===!1&&this.baseSeries.forEach(pt=>{h(pt,"updatedData",this.updatedDataHandler)},this),S.adaptToUpdatedData&&this.baseSeries.forEach(pt=>{pt.eventsToUnbind.push(A(pt,"updatedData",this.updatedDataHandler))},this),(S.series||S.baseSeries)&&this.setBaseSeries(void 0,!1),S.height||S.xAxis||S.yAxis)){this.height=(dt=S.height)!=null?dt:this.height;let pt=this.getXAxisOffsets();this.xAxis.update(Mi(xr({},S.xAxis),{offsets:pt,[K.inverted?"width":"height"]:this.height,[K.inverted?"height":"width"]:void 0}),!1),this.yAxis.update(Mi(xr({},S.yAxis),{[K.inverted?"width":"height"]:this.height}),!1)}b&&K.redraw()}render(S,b,K,ct){let et=this.chart,dt=this.xAxis,pt=dt.pointRange||0,bt=dt.navigatorAxis.fake?et.xAxis[0]:dt,Mt=this.navigatorEnabled,w=this.rendered,B=et.inverted,tt=et.xAxis[0].minRange,nt=et.xAxis[0].options.maxRange,x=this.scrollButtonSize,y,F,lt,rt=this.scrollbarHeight,gt,vt;if(this.hasDragged&&!H(K))return;if(this.isDirty&&this.renderElements(),S=O(S-pt/2),b=O(b+pt/2),!k(S)||!k(b)){if(!w)return;K=0,ct=C(dt.width,bt.width)}this.left=C(dt.left,et.plotLeft+x+(B?et.plotWidth:0));let Ot=this.size=gt=C(dt.len,(B?et.plotHeight:et.plotWidth)-2*x);y=B?rt:gt+2*x,K=C(K,dt.toPixels(S,!0)),ct=C(ct,dt.toPixels(b,!0)),k(K)&&Math.abs(K)!==1/0||(K=0,ct=y);let At=dt.toValue(K,!0),$t=dt.toValue(ct,!0),Xt=Math.abs(O($t-At));Xtnt&&(this.grabbedLeft?K=dt.toPixels($t-nt-pt,!0):this.grabbedRight&&(ct=dt.toPixels(At+nt+pt,!0))),this.zoomedMax=M(Math.max(K,ct),0,Ot),this.zoomedMin=M(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(K,ct),0,Ot),this.range=this.zoomedMax-this.zoomedMin,Ot=Math.round(this.zoomedMax);let Ct=Math.round(this.zoomedMin);Mt&&(this.navigatorGroup.attr({visibility:"inherit"}),vt=w&&!this.hasDragged?"animate":"attr",this.drawMasks(Ct,Ot,B,vt),this.drawOutline(Ct,Ot,B,vt),this.navigatorOptions.handles.enabled&&(this.drawHandle(Ct,0,B,vt),this.drawHandle(Ot,1,B,vt))),this.scrollbar&&(B?(lt=this.top-x,F=this.left-rt+(Mt||!bt.opposite?0:(bt.titleOffset||0)+bt.axisTitleMargin),rt=gt+2*x):(lt=this.top+(Mt?this.height:-rt),F=this.left-x),this.scrollbar.position(F,lt,y,rt),this.scrollbar.setRange(this.zoomedMin/(gt||1),this.zoomedMax/(gt||1))),this.rendered=!0,this.isDirty=!1,Q(this,"afterRender")}addMouseEvents(){let S=this,b=S.chart,K=b.container,ct=[],et,dt;S.mouseMoveHandler=et=function(pt){S.onMouseMove(pt)},S.mouseUpHandler=dt=function(pt){S.onMouseUp(pt)},(ct=S.getPartsEvents("mousedown")).push(A(b.renderTo,"mousemove",et),A(K.ownerDocument,"mouseup",dt),A(b.renderTo,"touchmove",et),A(K.ownerDocument,"touchend",dt)),ct.concat(S.getPartsEvents("touchstart")),S.eventsToUnbind=ct,S.series&&S.series[0]&&ct.push(A(S.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))}getPartsEvents(S){let b=this,K=[];return["shades","handles"].forEach(function(ct){b[ct].forEach(function(et,dt){K.push(A(et.element,S,function(pt){b[ct+"Mousedown"](pt,dt)}))})}),K}shadesMousedown(S,b){var x;S=((x=this.chart.pointer)==null?void 0:x.normalize(S))||S;let K=this.chart,ct=this.xAxis,et=this.zoomedMin,dt=this.size,pt=this.range,bt=this.left,Mt=S.chartX,w,B,tt,nt;K.inverted&&(Mt=S.chartY,bt=this.top),b===1?(this.grabbedCenter=Mt,this.fixedWidth=pt,this.dragOffset=Mt-et):(nt=Mt-bt-pt/2,b===0?nt=Math.max(0,nt):b===2&&nt+pt>=dt&&(nt=dt-pt,this.reversedExtremes?(nt-=pt,B=this.getUnionExtremes().dataMin):w=this.getUnionExtremes().dataMax),nt!==et&&(this.fixedWidth=pt,H((tt=ct.navigatorAxis.toFixedRange(nt,nt+pt,B,w)).min)&&Q(this,"setRange",{min:Math.min(tt.min,tt.max),max:Math.max(tt.min,tt.max),redraw:!0,eventArguments:{trigger:"navigator"}})))}handlesMousedown(S,b){var dt;S=((dt=this.chart.pointer)==null?void 0:dt.normalize(S))||S;let K=this.chart,ct=K.xAxis[0],et=this.reversedExtremes;b===0?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=et?ct.min:ct.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=et?ct.max:ct.min),K.setFixedRange(void 0)}onMouseMove(S){var w;let b=this,K=b.chart,ct=b.navigatorSize,et=b.range,dt=b.dragOffset,pt=K.inverted,bt=b.left,Mt;(!S.touches||S.touches[0].pageX!==0)&&(Mt=(S=((w=K.pointer)==null?void 0:w.normalize(S))||S).chartX,pt&&(bt=b.top,Mt=S.chartY),b.grabbedLeft?(b.hasDragged=!0,b.render(0,0,Mt-bt,b.otherHandlePos)):b.grabbedRight?(b.hasDragged=!0,b.render(0,0,b.otherHandlePos,Mt-bt)):b.grabbedCenter&&(b.hasDragged=!0,Mtct+dt-et&&(Mt=ct+dt-et),b.render(0,0,Mt-dt,Mt-dt+et)),b.hasDragged&&b.scrollbar&&C(b.scrollbar.options.liveRedraw,!U&&!this.chart.boosted)&&(S.DOMType=S.type,setTimeout(function(){b.onMouseUp(S)},0)))}onMouseUp(S){let b,K,ct,et,dt,pt,bt=this.chart,Mt=this.xAxis,w=this.scrollbar,B=S.DOMEvent||S,tt=bt.inverted,nt=this.rendered&&!this.hasDragged?"animate":"attr";(this.hasDragged&&(!w||!w.hasDragged)||S.trigger==="scrollbar")&&(ct=this.getUnionExtremes(),this.zoomedMin===this.otherHandlePos?et=this.fixedExtreme:this.zoomedMax===this.otherHandlePos&&(dt=this.fixedExtreme),this.zoomedMax===this.size&&(dt=this.reversedExtremes?ct.dataMin:ct.dataMax),this.zoomedMin===0&&(et=this.reversedExtremes?ct.dataMax:ct.dataMin),H((pt=Mt.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,et,dt)).min)&&Q(this,"setRange",{min:Math.min(pt.min,pt.max),max:Math.max(pt.min,pt.max),redraw:!0,animation:!this.hasDragged&&null,eventArguments:{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:B}})),S.DOMType!=="mousemove"&&S.DOMType!=="touchmove"&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null),this.navigatorEnabled&&k(this.zoomedMin)&&k(this.zoomedMax)&&(K=Math.round(this.zoomedMin),b=Math.round(this.zoomedMax),this.shades&&this.drawMasks(K,b,tt,nt),this.outline&&this.drawOutline(K,b,tt,nt),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(K,0,tt,nt),this.drawHandle(b,1,tt,nt)))}removeEvents(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(S){S()}),this.eventsToUnbind=void 0),this.removeBaseSeriesEvents()}removeBaseSeriesEvents(){let S=this.baseSeries||[];this.navigatorEnabled&&S[0]&&(this.navigatorOptions.adaptToUpdatedData!==!1&&S.forEach(function(b){h(b,"updatedData",this.updatedDataHandler)},this),S[0].xAxis&&h(S[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))}getXAxisOffsets(){return this.chart.inverted?[this.scrollButtonSize,0,-this.scrollButtonSize,0]:[0,-this.scrollButtonSize,0,this.scrollButtonSize]}init(S){var y;let b=S.options,K=b.navigator||{},ct=K.enabled,et=b.scrollbar||{},dt=et.enabled,pt=ct&&K.height||0,bt=dt&&et.height||0,Mt=et.buttonsEnabled&&bt||0;this.handles=[],this.shades=[],this.chart=S,this.setBaseSeries(),this.height=pt,this.scrollbarHeight=bt,this.scrollButtonSize=Mt,this.scrollbarEnabled=dt,this.navigatorEnabled=ct,this.navigatorOptions=K,this.scrollbarOptions=et,this.setOpposite();let w=this,B=w.baseSeries,tt=S.xAxis.length,nt=S.yAxis.length,x=B&&B[0]&&B[0].xAxis||S.xAxis[0]||{options:{}};if(S.isDirtyBox=!0,w.navigatorEnabled){let F=this.getXAxisOffsets();w.xAxis=new R(S,_({breaks:x.options.breaks,ordinal:x.options.ordinal,overscroll:x.options.overscroll},K.xAxis,{type:"datetime",yAxis:(y=K.yAxis)==null?void 0:y.id,index:tt,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:x.options.ordinal?0:x.options.minPadding,maxPadding:x.options.ordinal?0:x.options.maxPadding,zoomEnabled:!1},S.inverted?{offsets:F,width:pt}:{offsets:F,height:pt}),"xAxis"),w.yAxis=new R(S,_(K.yAxis,{alignTicks:!1,offset:0,index:nt,isInternal:!0,reversed:C(K.yAxis&&K.yAxis.reversed,S.yAxis[0]&&S.yAxis[0].reversed,!1),zoomEnabled:!1},S.inverted?{width:pt}:{height:pt}),"yAxis"),B||K.series.data?w.updateNavigatorSeries(!1):S.series.length===0&&(w.unbindRedraw=A(S,"beforeRedraw",function(){S.series.length>0&&!w.series&&(w.setBaseSeries(),w.unbindRedraw())})),w.reversedExtremes=S.inverted&&!w.xAxis.reversed||!S.inverted&&w.xAxis.reversed,w.renderElements(),w.addMouseEvents()}else w.xAxis={chart:S,navigatorAxis:{fake:!0},translate:function(F,lt){let rt=S.xAxis[0],gt=rt.getExtremes(),vt=rt.len-2*Mt,Ot=u("min",rt.options.min,gt.dataMin),At=u("max",rt.options.max,gt.dataMax)-Ot;return lt?F*At/vt+Ot:vt*(F-Ot)/At},toPixels:function(F){return this.translate(F)},toValue:function(F){return this.translate(F,!0)}},w.xAxis.navigatorAxis.axis=w.xAxis,w.xAxis.navigatorAxis.toFixedRange=X.prototype.toFixedRange.bind(w.xAxis.navigatorAxis);if(S.options.scrollbar.enabled){let F=_(S.options.scrollbar,{vertical:S.inverted});!k(F.margin)&&w.navigatorEnabled&&(F.margin=S.inverted?-3:3),S.scrollbar=w.scrollbar=new Z(S.renderer,F,S),A(w.scrollbar,"changed",function(lt){let rt=w.size,gt=rt*this.to,vt=rt*this.from;w.hasDragged=w.scrollbar.hasDragged,w.render(0,0,vt,gt),this.shouldUpdateExtremes(lt.DOMType)&&setTimeout(function(){w.onMouseUp(lt)})})}w.addBaseSeriesEvents(),w.addChartEvents()}setOpposite(){let S=this.navigatorOptions,b=this.navigatorEnabled,K=this.chart;this.opposite=C(S.opposite,!!(!b&&K.inverted))}getUnionExtremes(S){let b,K=this.chart.xAxis[0],ct=this.xAxis,et=ct.options,dt=K.options;return S&&K.dataMin===null||(b={dataMin:C(et&&et.min,u("min",dt.min,K.dataMin,ct.dataMin,ct.min)),dataMax:C(et&&et.max,u("max",dt.max,K.dataMax,ct.dataMax,ct.max))}),b}setBaseSeries(S,b){let K=this.chart,ct=this.baseSeries=[];S=S||K.options&&K.options.navigator.baseSeries||(K.series.length?it(K.series,et=>!et.options.isInternal).index:0),(K.series||[]).forEach((et,dt)=>{!et.options.isInternal&&(et.options.showInNavigator||(dt===S||et.options.id===S)&&et.options.showInNavigator!==!1)&&ct.push(et)}),this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,b)}updateNavigatorSeries(S,b){var tt,nt;let K=this,ct=K.chart,et=K.baseSeries,dt={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:(tt=this.navigatorOptions.xAxis)==null?void 0:tt.id,yAxis:(nt=this.navigatorOptions.yAxis)==null?void 0:nt.id,showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},pt=K.series=(K.series||[]).filter(x=>{let y=x.baseSeries;return!(0>et.indexOf(y))||(y&&(h(y,"updatedData",K.updatedDataHandler),delete y.navigatorSeries),x.chart&&x.destroy(),!1)}),bt,Mt,w=K.navigatorOptions.series,B;et&&et.length&&et.forEach(x=>{let y=x.navigatorSeries,F=D({color:x.color,visible:x.visible},W(w)?N.navigator.series:w);if(y&&K.navigatorOptions.adaptToUpdatedData===!1)return;dt.name="Navigator "+et.length,B=(bt=x.options||{}).navigatorOptions||{},F.dataLabels=l(F.dataLabels),(Mt=_(bt,dt,F,B)).pointRange=C(F.pointRange,B.pointRange,N.plotOptions[Mt.type||"line"].pointRange);let lt=B.data||F.data;K.hasNavigatorData=K.hasNavigatorData||!!lt,Mt.data=lt||bt.data&&bt.data.slice(0),y&&y.options?y.update(Mt,b):(x.navigatorSeries=ct.initSeries(Mt),ct.setSortedData(),x.navigatorSeries.baseSeries=x,pt.push(x.navigatorSeries))}),(w.data&&!(et&&et.length)||W(w))&&(K.hasNavigatorData=!1,(w=l(w)).forEach((x,y)=>{dt.name="Navigator "+(pt.length+1),(Mt=_(N.navigator.series,{color:ct.series[y]&&!ct.series[y].options.isInternal&&ct.series[y].color||ct.options.colors[y]||ct.options.colors[0]},dt,x)).data=x.data,Mt.data&&(K.hasNavigatorData=!0,pt.push(ct.initSeries(Mt)))})),S&&this.addBaseSeriesEvents()}addBaseSeriesEvents(){let S=this,b=S.baseSeries||[];b[0]&&b[0].xAxis&&b[0].eventsToUnbind.push(A(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes)),b.forEach(K=>{K.eventsToUnbind.push(A(K,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)})),K.eventsToUnbind.push(A(K,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)})),this.navigatorOptions.adaptToUpdatedData!==!1&&K.xAxis&&K.eventsToUnbind.push(A(K,"updatedData",this.updatedDataHandler)),K.eventsToUnbind.push(A(K,"remove",function(){b&&c(b,K),this.navigatorSeries&&(c(S.series,this.navigatorSeries),H(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))})}getBaseSeriesMin(S){return this.baseSeries.reduce(function(b,K){return Math.min(b,K.xData&&K.xData.length?K.xData[0]:b)},S)}modifyNavigatorAxisExtremes(){let S=this.xAxis;if(S.getExtremes!==void 0){let b=this.getUnionExtremes(!0);b&&(b.dataMin!==S.min||b.dataMax!==S.max)&&(S.min=b.dataMin,S.max=b.dataMax)}}modifyBaseAxisExtremes(){var y;let S,b,K=this.chart.navigator,ct=this.getExtremes(),et=ct.min,dt=ct.max,pt=ct.dataMin,bt=ct.dataMax,Mt=dt-et,w=K.stickToMin,B=K.stickToMax,tt=C((y=this.ordinal)==null?void 0:y.convertOverscroll(this.options.overscroll),0),nt=K.series&&K.series[0],x=!!this.setExtremes;!(this.eventArgs&&this.eventArgs.trigger==="rangeSelectorButton")&&(w&&(S=(b=pt)+Mt),B&&(S=bt+tt,w||(b=Math.max(pt,S-Mt,K.getBaseSeriesMin(nt&&nt.xData?nt.xData[0]:-Number.MAX_VALUE)))),x&&(w||B)&&k(b)&&(this.min=this.userMin=b,this.max=this.userMax=S)),K.stickToMin=K.stickToMax=null}updatedDataHandler(){let S=this.chart.navigator,b=this.navigatorSeries,K=S.reversedExtremes?Math.round(S.zoomedMin)===0:Math.round(S.zoomedMax)>=Math.round(S.size);S.stickToMax=C(this.chart.options.navigator&&this.chart.options.navigator.stickToMax,K),S.stickToMin=S.shouldStickToMin(this,S),b&&!S.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))}shouldStickToMin(S,b){let K=b.getBaseSeriesMin(S.xData[0]),ct=S.xAxis,et=ct.max,dt=ct.min,pt=ct.options.range;return!!(k(et)&&k(dt))&&(pt&&et-K>0?et-K{S.destroy&&S.destroy()}),["series","xAxis","yAxis","shades","outline","scrollbarTrack","scrollbarRifles","scrollbarGroup","scrollbar","navigatorGroup","rendered"].forEach(S=>{this[S]&&this[S].destroy&&this[S].destroy(),this[S]=null}),[this.handles].forEach(S=>{z(S)}),this.navigatorEnabled=!1}}return v}),L(g,"Accessibility/Components/NavigatorComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Stock/Navigator/Navigator.js"],g["Core/Animation/AnimationUtilities.js"],g["Core/Templating.js"],g["Core/Utilities.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/Utils/ChartUtilities.js"]],function(R,st,$,J,X,q,Z,Y,V){let{animObject:N}=X,{format:U}=q,{clamp:T,pick:A,syncTimeout:M}=Z,{getFakeMouseEvent:O}=Y,{getAxisRangeDescription:H,fireEventOnWrappedOrUnwrappedElement:z}=V;return class extends R{init(){let c=this.chart,D=this;this.announcer=new st(c,"polite"),this.addEvent(J,"afterRender",function(){this.chart===D.chart&&this.chart.renderer&&M(()=>{D.proxyProvider.updateGroupProxyElementPositions("navigator"),D.updateHandleValues()},N(A(this.chart.renderer.globalAnimation,!0)).duration)})}onChartUpdate(){var Q,W,k;let c=this.chart,D=c.options,it=D.navigator;if(it.enabled&&((Q=it.accessibility)!=null&&Q.enabled)){let _=D.accessibility.landmarkVerbosity,C=(W=D.lang.accessibility)==null?void 0:W.navigator.groupLabel;this.proxyProvider.removeGroup("navigator"),this.proxyProvider.addGroup("navigator","div",{role:_==="all"?"region":"group","aria-label":U(C,{chart:c},c)});let h=(k=D.lang.accessibility)==null?void 0:k.navigator.handleLabel;[0,1].forEach(l=>{let u=this.getHandleByIx(l);if(u){let v=this.proxyProvider.addProxyElement("navigator",{click:u},"input",{type:"range","aria-label":U(h,{handleIx:l,chart:c},c)});this[l?"maxHandleProxy":"minHandleProxy"]=v.innerElement,v.innerElement.style.pointerEvents="none",v.innerElement.oninput=()=>this.updateNavigator()}}),this.updateHandleValues()}else this.proxyProvider.removeGroup("navigator")}getNavigatorHandleNavigation(c){let D=this,it=this.chart,Q=c?this.maxHandleProxy:this.minHandleProxy,W=this.keyCodes;return new $(it,{keyCodeMap:[[[W.left,W.right,W.up,W.down],function(k){if(Q){let _=k===W.left||k===W.up?-1:1;Q.value=""+T(parseFloat(Q.value)+_,0,100),D.updateNavigator(()=>{let C=D.getHandleByIx(c);C&&it.setFocusToElement(C,Q)})}return this.response.success}]],init:()=>{it.setFocusToElement(this.getHandleByIx(c),Q)},validate:()=>{var k;return!!(this.getHandleByIx(c)&&Q&&((k=it.options.navigator.accessibility)!=null&&k.enabled))}})}getKeyboardNavigation(){return[this.getNavigatorHandleNavigation(0),this.getNavigatorHandleNavigation(1)]}destroy(){this.updateNavigatorThrottleTimer&&clearTimeout(this.updateNavigatorThrottleTimer),this.proxyProvider.removeGroup("navigator"),this.announcer&&this.announcer.destroy()}updateHandleValues(){let c=this.chart.navigator;if(c&&this.minHandleProxy&&this.maxHandleProxy){let D=c.size;this.minHandleProxy.value=""+Math.round(c.zoomedMin/D*100),this.maxHandleProxy.value=""+Math.round(c.zoomedMax/D*100)}}getHandleByIx(c){let D=this.chart.navigator;return D&&D.handles&&D.handles[c]}updateNavigator(c){this.updateNavigatorThrottleTimer&&clearTimeout(this.updateNavigatorThrottleTimer),this.updateNavigatorThrottleTimer=setTimeout((D=>{var k;let it=this.chart,{navigator:Q,pointer:W}=it;if(Q&&W&&this.minHandleProxy&&this.maxHandleProxy){let _=W.getChartPosition(),C=parseFloat(this.minHandleProxy.value)/100*Q.size,h=parseFloat(this.maxHandleProxy.value)/100*Q.size;[[0,"mousedown",Q.zoomedMin],[0,"mousemove",C],[0,"mouseup",C],[1,"mousedown",Q.zoomedMax],[1,"mousemove",h],[1,"mouseup",h]].forEach(([v,I,S])=>{var K;let b=(K=this.getHandleByIx(v))==null?void 0:K.element;b&&z(b,O(I,{x:_.left+Q.left+S,y:_.top+Q.top},b))}),D&&D();let l=(k=it.options.lang.accessibility)==null?void 0:k.navigator.changeAnnouncement,u=H(it.xAxis[0]);this.announcer.announce(U(l,{axisRangeDescription:u,chart:it},it))}}).bind(this,c),20)}}}),L(g,"Accessibility/Components/SeriesComponent/SeriesDescriber.js",[g["Accessibility/Components/AnnotationsA11y.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Core/Templating.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{getPointAnnotationTexts:q}=R,{getAxisDescription:Z,getSeriesFirstPointElement:Y,getSeriesA11yElement:V,unhideChartElementFromAT:N}=st,{format:U,numberFormat:T}=$,{reverseChildNodes:A,stripHTMLTagsFromString:M}=J,{find:O,isNumber:H,isString:z,pick:c,defined:D}=X;function it(C){let h=C.chart.options.accessibility.series.pointDescriptionEnabledThreshold;return!!(h!==!1&&C.points&&C.points.length>=+h)}function Q(C,h){let l=C.series,u=l.chart,v=u.options.accessibility.point||{},I=l.options.accessibility&&l.options.accessibility.point||{},S=l.tooltipOptions||{},b=u.options.lang;return H(h)?T(h,I.valueDecimals||v.valueDecimals||S.valueDecimals||-1,b.decimalPoint,b.accessibility.thousandsSep||b.thousandsSep):h}function W(C,h){let l=C[h];return C.chart.langFormat("accessibility.series."+h+"Description",{name:Z(l),series:C})}function k(C){let h=C.series,l=h.chart.series.length>1||h.options.name,u=function(b){let K=b.series,ct=K.chart,et=K.options.accessibility,dt=et&&et.point&&et.point.valueDescriptionFormat||ct.options.accessibility.point.valueDescriptionFormat,pt=c(K.xAxis&&K.xAxis.options.accessibility&&K.xAxis.options.accessibility.enabled,!ct.angular&&K.type!=="flowmap"),bt=pt?function(Mt){let w=function(x){let y=x.series,F=y.chart,lt=y.options.accessibility&&y.options.accessibility.point||{},rt=F.options.accessibility.point||{},gt=y.xAxis&&y.xAxis.dateTime;if(gt){let vt=gt.getXDateFormat(x.x||0,F.options.tooltip.dateTimeLabelFormats),Ot=lt.dateFormatter&<.dateFormatter(x)||rt.dateFormatter&&rt.dateFormatter(x)||lt.dateFormat||rt.dateFormat||vt;return F.time.dateFormat(Ot,x.x||0,void 0)}}(Mt),B=(Mt.series.xAxis||{}).categories&&D(Mt.category)&&(""+Mt.category).replace("
    "," "),tt=D(Mt.id)&&0>(""+Mt.id).indexOf("highcharts-"),nt="x, "+Mt.x;return Mt.name||w||B||(tt?Mt.id:nt)}(b):"";return U(dt,{point:b,index:D(b.index)?b.index+1:"",xDescription:bt,value:function(Mt){let w=Mt.series,B=w.chart.options.accessibility.point||{},tt=w.chart.options.accessibility&&w.chart.options.accessibility.point||{},nt=w.tooltipOptions||{},x=tt.valuePrefix||B.valuePrefix||nt.valuePrefix||"",y=tt.valueSuffix||B.valueSuffix||nt.valueSuffix||"",F=Mt.value!==void 0?"value":"y",lt=Q(Mt,Mt[F]);return Mt.isNull?w.chart.langFormat("accessibility.series.nullPointValue",{point:Mt}):w.pointArrayMap?function(rt,gt,vt){let Ot=gt||"",At=vt||"",$t=function(Xt){let Ct=Q(rt,c(rt[Xt],rt.options[Xt]));return Ct!==void 0?Xt+": "+Ot+Ct+At:Ct};return rt.series.pointArrayMap.reduce(function(Xt,Ct){let wt=$t(Ct);return wt?Xt+(Xt.length?", ":"")+wt:Xt},"")}(Mt,x,y):x+lt+y}(b),separator:pt?", ":""},ct)}(C),v=C.options&&C.options.accessibility&&C.options.accessibility.description,I=l?" "+h.name+".":"",S=function(b){let K=b.series.chart,ct=q(b);return ct.length?K.langFormat("accessibility.series.pointAnnotationsDescription",{point:b,annotations:ct}):""}(C);return C.accessibility=C.accessibility||{},C.accessibility.valueDescription=u,u+(v?" "+v:"")+I+(S?" "+S:"")}function _(C){let h=C.chart,l=h.types||[],u=function(pt){let bt=(pt.options.accessibility||{}).description;return bt&&pt.chart.langFormat("accessibility.series.description",{description:bt,series:pt})||""}(C),v=function(pt){return h[pt]&&h[pt].length>1&&C[pt]},I=C.index+1,S=W(C,"xAxis"),b=W(C,"yAxis"),K={seriesNumber:I,series:C,chart:h},ct=l.length>1?"Combination":"",et=h.langFormat("accessibility.series.summary."+C.type+ct,K)||h.langFormat("accessibility.series.summary.default"+ct,K),dt=(v("yAxis")?" "+b+".":"")+(v("xAxis")?" "+S+".":"");return U(c(C.options.accessibility&&C.options.accessibility.descriptionFormat,h.options.accessibility.series.descriptionFormat,""),{seriesDescription:et,authorDescription:u?" "+u:"",axisDescription:dt,series:C,chart:h,seriesNumber:I},void 0)}return{defaultPointDescriptionFormatter:k,defaultSeriesDescriptionFormatter:_,describeSeries:function(C){let h=C.chart,l=Y(C),u=V(C),v=h.is3d&&h.is3d();u&&(u.lastChild!==l||v||A(u),function(I){let S=function(ct){let et=ct.options.accessibility||{};return!it(ct)&&!et.exposeAsGroupOnly}(I),b=function(ct){let et=ct.chart.options.accessibility.keyboardNavigation.seriesNavigation;return!!(ct.points&&(ct.points.length<+et.pointNavigationEnabledThreshold||et.pointNavigationEnabledThreshold===!1))}(I),K=I.chart.options.accessibility.point.describeNull;(S||b)&&I.points.forEach(ct=>{let et=ct.graphic&&ct.graphic.element||function(pt){let bt=pt.series,Mt=bt&&bt.chart,w=bt&&bt.is("sunburst"),B=pt.isNull,tt=Mt&&Mt.options.accessibility.point.describeNull;return B&&!w&&tt}(ct)&&function(pt){let bt=pt.series,Mt=function(x){let y=x.index;return x.series&&x.series.data&&D(y)&&O(x.series.data,function(F){return!!(F&&F.index!==void 0&&F.index>y&&F.graphic&&F.graphic.element)})||null}(pt),w=Mt&&Mt.graphic,B=w?w.parentGroup:bt.graph||bt.group,tt=Mt?{x:c(pt.plotX,Mt.plotX,0),y:c(pt.plotY,Mt.plotY,0)}:{x:c(pt.plotX,0),y:c(pt.plotY,0)},nt=function(x,y){let F=x.series.chart.renderer.rect(y.x,y.y,1,1);return F.attr({class:"highcharts-a11y-mock-point",fill:"none",opacity:0,"fill-opacity":0,"stroke-opacity":0}),F}(pt,tt);if(B&&B.element)return pt.graphic=nt,pt.hasMockGraphic=!0,nt.add(B),B.element.insertBefore(nt.element,w?w.element:null),nt.element}(ct),dt=ct.options&&ct.options.accessibility&&ct.options.accessibility.enabled===!1;if(et){if(ct.isNull&&!K){et.setAttribute("aria-hidden",!0);return}et.setAttribute("tabindex","-1"),I.chart.styledMode||(et.style.outline="none"),S&&!dt?function(pt,bt){var nt,x,y;let Mt=pt.series,w=((nt=Mt.options.accessibility)==null?void 0:nt.point)||{},B=Mt.chart.options.accessibility.point||{},tt=M(z(w.descriptionFormat)&&U(w.descriptionFormat,pt,Mt.chart)||((x=w.descriptionFormatter)==null?void 0:x.call(w,pt))||z(B.descriptionFormat)&&U(B.descriptionFormat,pt,Mt.chart)||((y=B.descriptionFormatter)==null?void 0:y.call(B,pt))||k(pt),Mt.chart.renderer.forExport);bt.setAttribute("role","img"),bt.setAttribute("aria-label",tt)}(ct,et):et.setAttribute("aria-hidden",!0)}})}(C),N(h,u),function(I){let S=I.chart,b=S.options.chart,K=b.options3d&&b.options3d.enabled,ct=S.series.length>1,et=S.options.accessibility.series.describeSingleSeries,dt=(I.options.accessibility||{}).exposeAsGroupOnly;return!(K&&ct)&&(ct||et||dt||it(I))}(C)?function(I,S){let b=I.options.accessibility||{},K=I.chart.options.accessibility,ct=K.landmarkVerbosity;b.exposeAsGroupOnly?S.setAttribute("role","img"):ct==="all"?S.setAttribute("role","region"):S.setAttribute("role","group"),S.setAttribute("tabindex","-1"),I.chart.styledMode||(S.style.outline="none"),S.setAttribute("aria-label",M(K.series.descriptionFormatter&&K.series.descriptionFormatter(I)||_(I),I.chart.renderer.forExport))}(C,u):u.removeAttribute("aria-label"))}}}),L(g,"Accessibility/Components/SeriesComponent/NewDataAnnouncer.js",[g["Core/Globals.js"],g["Core/Utilities.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Components/SeriesComponent/SeriesDescriber.js"]],function(R,st,$,J,X,q){let{composed:Z}=R,{addEvent:Y,defined:V,pushUnique:N}=st,{getChartTitle:U}=J,{defaultPointDescriptionFormatter:T,defaultSeriesDescriptionFormatter:A}=q;function M(H){return!!H.options.accessibility.announceNewData.enabled}class O{constructor(z){this.dirty={allSeries:{}},this.lastAnnouncementTime=0,this.chart=z}init(){let z=this.chart,c=z.options.accessibility.announceNewData.interruptUser?"assertive":"polite";this.lastAnnouncementTime=0,this.dirty={allSeries:{}},this.eventProvider=new X,this.announcer=new $(z,c),this.addEventListeners()}destroy(){this.eventProvider.removeAddedEvents(),this.announcer.destroy()}addEventListeners(){let z=this,c=this.chart,D=this.eventProvider;D.addEvent(c,"afterApplyDrilldown",function(){z.lastAnnouncementTime=0}),D.addEvent(c,"afterAddSeries",function(it){z.onSeriesAdded(it.series)}),D.addEvent(c,"redraw",function(){z.announceDirtyData()})}onSeriesAdded(z){M(this.chart)&&(this.dirty.hasDirty=!0,this.dirty.allSeries[z.name+z.index]=z,this.dirty.newSeries=V(this.dirty.newSeries)?void 0:z)}announceDirtyData(){let z=this.chart,c=this;if(z.options.accessibility.announceNewData&&this.dirty.hasDirty){let D=this.dirty.newPoint;D&&(D=function(it){let Q=it.series.data.filter(W=>it.x===W.x&&it.y===W.y);return Q.length===1?Q[0]:it}(D)),this.queueAnnouncement(Object.keys(this.dirty.allSeries).map(it=>c.dirty.allSeries[it]),this.dirty.newSeries,D),this.dirty={allSeries:{}}}}queueAnnouncement(z,c,D){let it=this.chart.options.accessibility.announceNewData;if(it.enabled){let Q=+new Date,W=Q-this.lastAnnouncementTime,k=Math.max(0,it.minAnnounceInterval-W),_=function(h,l){let u=(h||[]).concat(l||[]).reduce((v,I)=>(v[I.name+I.index]=I,v),{});return Object.keys(u).map(v=>u[v])}(this.queuedAnnouncement&&this.queuedAnnouncement.series,z),C=this.buildAnnouncementMessage(_,c,D);C&&(this.queuedAnnouncement&&clearTimeout(this.queuedAnnouncementTimer),this.queuedAnnouncement={time:Q,message:C,series:_},this.queuedAnnouncementTimer=setTimeout(()=>{this&&this.announcer&&(this.lastAnnouncementTime=+new Date,this.announcer.announce(this.queuedAnnouncement.message),delete this.queuedAnnouncement,delete this.queuedAnnouncementTimer)},k))}}buildAnnouncementMessage(z,c,D){let it=this.chart,Q=it.options.accessibility.announceNewData;if(Q.announcementFormatter){let C=Q.announcementFormatter(z,c,D);if(C!==!1)return C.length?C:null}let W=R.charts&&R.charts.length>1?"Multiple":"Single",k=c?"newSeriesAnnounce"+W:D?"newPointAnnounce"+W:"newDataAnnounce",_=U(it);return it.langFormat("accessibility.announceNewData."+k,{chartTitle:_,seriesDesc:c?A(c):null,pointDesc:D?T(D):null,point:D,series:c})}}return function(H){function z(D){var W;let it=this.chart,Q=(W=it.accessibility)==null?void 0:W.components.series.newDataAnnouncer;Q&&Q.chart===it&&M(it)&&(Q.dirty.newPoint=V(Q.dirty.newPoint)?void 0:D.point)}function c(){var Q;let D=this.chart,it=(Q=D.accessibility)==null?void 0:Q.components.series.newDataAnnouncer;it&&it.chart===D&&M(D)&&(it.dirty.hasDirty=!0,it.dirty.allSeries[this.name+this.index]=this)}H.compose=function(D){N(Z,"A11y.NDA")&&(Y(D,"addPoint",z),Y(D,"updatedData",c))}}(O||(O={})),O}),L(g,"Accessibility/ProxyElement.js",[g["Core/Globals.js"],g["Core/Utilities.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{doc:q}=R,{attr:Z,css:Y,merge:V}=st,{fireEventOnWrappedOrUnwrappedElement:N}=J,{cloneMouseEvent:U,cloneTouchEvent:T,getFakeMouseEvent:A,removeElement:M}=X;return class{constructor(O,H,z="button",c,D){this.chart=O,this.target=H,this.eventProvider=new $;let it=this.innerElement=q.createElement(z),Q=this.element=c?q.createElement(c):it;O.styledMode||this.hideElementVisually(it),c&&(c!=="li"||O.styledMode||(Q.style.listStyle="none"),Q.appendChild(it),this.element=Q),this.updateTarget(H,D)}click(){let O=this.getTargetPosition();O.x+=O.width/2,O.y+=O.height/2;let H=A("click",O);N(this.target.click,H)}updateTarget(O,H){this.target=O,this.updateCSSClassName();let z=H||{};Object.keys(z).forEach(D=>{z[D]===null&&delete z[D]});let c=this.getTargetAttr(O.click,"aria-label");Z(this.innerElement,V(c?{"aria-label":c}:{},z)),this.eventProvider.removeAddedEvents(),this.addProxyEventsToElement(this.innerElement,O.click),this.refreshPosition()}refreshPosition(){let O=this.getTargetPosition();Y(this.innerElement,{width:(O.width||1)+"px",height:(O.height||1)+"px",left:(Math.round(O.x)||0)+"px",top:(Math.round(O.y)||0)+"px"})}remove(){this.eventProvider.removeAddedEvents(),M(this.element)}updateCSSClassName(){let O=it=>it.indexOf("highcharts-no-tooltip")>-1,H=this.chart.legend,z=H.group&&H.group.div,c=O(z&&z.className||""),D=O(this.getTargetAttr(this.target.click,"class")||"");this.innerElement.className=c||D?"highcharts-a11y-proxy-element highcharts-no-tooltip":"highcharts-a11y-proxy-element"}addProxyEventsToElement(O,H){["click","touchstart","touchend","touchcancel","touchmove","mouseover","mouseenter","mouseleave","mouseout"].forEach(z=>{let c=z.indexOf("touch")===0;this.eventProvider.addEvent(O,z,D=>{let it=c?T(D):U(D);H&&N(H,it),D.stopPropagation(),c||D.preventDefault()},{passive:!1})})}hideElementVisually(O){Y(O,{borderWidth:0,backgroundColor:"transparent",cursor:"pointer",outline:"none",opacity:.001,filter:"alpha(opacity=1)",zIndex:999,overflow:"hidden",padding:0,margin:0,display:"block",position:"absolute","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)"})}getTargetPosition(){let O=this.target.click,H=O.element?O.element:O,z=this.target.visual||H,c=this.chart.renderTo,D=this.chart.pointer;if(c&&(z!=null&&z.getBoundingClientRect)&&D){let it=z.getBoundingClientRect(),Q=D.getChartPosition();return{x:(it.left-Q.left)/Q.scaleX,y:(it.top-Q.top)/Q.scaleY,width:it.right/Q.scaleX-it.left/Q.scaleX,height:it.bottom/Q.scaleY-it.top/Q.scaleY}}return{x:0,y:0,width:1,height:1}}getTargetAttr(O,H){return O.element?O.element.getAttribute(H):O.getAttribute(H)}}}),L(g,"Accessibility/ProxyProvider.js",[g["Core/Globals.js"],g["Core/Utilities.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/DOMElementProvider.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/ProxyElement.js"]],function(R,st,$,J,X,q){let{doc:Z}=R,{attr:Y,css:V}=st,{unhideChartElementFromAT:N}=$,{removeChildNodes:U}=X;return class{constructor(T){this.chart=T,this.domElementProvider=new J,this.groups={},this.groupOrder=[],this.beforeChartProxyPosContainer=this.createProxyPosContainer("before"),this.afterChartProxyPosContainer=this.createProxyPosContainer("after"),this.update()}addProxyElement(T,A,M="button",O){let H=this.groups[T];if(!H)throw Error("ProxyProvider.addProxyElement: Invalid group key "+T);let z=H.type==="ul"||H.type==="ol"?"li":void 0,c=new q(this.chart,A,M,z,O);return H.proxyContainerElement.appendChild(c.element),H.proxyElements.push(c),c}addGroup(T,A="div",M){let O,H=this.groups[T];if(H)return H.groupElement;let z=this.domElementProvider.createElement(A);return M&&M.role&&A!=="div"?(O=this.domElementProvider.createElement("div")).appendChild(z):O=z,O.className="highcharts-a11y-proxy-group highcharts-a11y-proxy-group-"+T.replace(/\W/g,"-"),this.groups[T]={proxyContainerElement:z,groupElement:O,type:A,proxyElements:[]},Y(O,M||{}),A==="ul"&&z.setAttribute("role","list"),this.afterChartProxyPosContainer.appendChild(O),this.updateGroupOrder(this.groupOrder),O}updateGroupAttrs(T,A){let M=this.groups[T];if(!M)throw Error("ProxyProvider.updateGroupAttrs: Invalid group key "+T);Y(M.groupElement,A)}updateGroupOrder(T){if(this.groupOrder=T.slice(),this.isDOMOrderGroupOrder())return;let A=T.indexOf("series"),M=A>-1?T.slice(0,A):T,O=A>-1?T.slice(A+1):[],H=Z.activeElement;["before","after"].forEach(z=>{let c=this[z==="before"?"beforeChartProxyPosContainer":"afterChartProxyPosContainer"];U(c),(z==="before"?M:O).forEach(D=>{let it=this.groups[D];it&&c.appendChild(it.groupElement)})}),(this.beforeChartProxyPosContainer.contains(H)||this.afterChartProxyPosContainer.contains(H))&&H&&H.focus&&H.focus()}clearGroup(T){let A=this.groups[T];if(!A)throw Error("ProxyProvider.clearGroup: Invalid group key "+T);U(A.proxyContainerElement)}removeGroup(T){let A=this.groups[T];A&&(this.domElementProvider.removeElement(A.groupElement),A.groupElement!==A.proxyContainerElement&&this.domElementProvider.removeElement(A.proxyContainerElement),delete this.groups[T])}update(){this.updatePosContainerPositions(),this.updateGroupOrder(this.groupOrder),this.updateProxyElementPositions()}updateProxyElementPositions(){Object.keys(this.groups).forEach(this.updateGroupProxyElementPositions.bind(this))}updateGroupProxyElementPositions(T){let A=this.groups[T];A&&A.proxyElements.forEach(M=>M.refreshPosition())}destroy(){this.domElementProvider.destroyCreatedElements()}createProxyPosContainer(T){let A=this.domElementProvider.createElement("div");return A.setAttribute("aria-hidden","false"),A.className="highcharts-a11y-proxy-container"+(T?"-"+T:""),V(A,{top:"0",left:"0"}),this.chart.styledMode||(A.style.whiteSpace="nowrap",A.style.position="absolute"),A}getCurrentGroupOrderInDOM(){let T=H=>{let z=Object.keys(this.groups),c=z.length;for(;c--;){let D=z[c],it=this.groups[D];if(it&&H===it.groupElement)return D}},A=H=>{let z=[],c=H.children;for(let D=0;DO==="series"||!!this.groups[O]),M=T.length;if(M!==A.length)return!1;for(;M--;)if(T[M]!==A[M])return!1;return!0}updatePosContainerPositions(){let T=this.chart;if(T.renderer.forExport)return;let A=T.renderer.box;T.container.insertBefore(this.afterChartProxyPosContainer,A.nextSibling),T.container.insertBefore(this.beforeChartProxyPosContainer,A),N(this.chart,this.afterChartProxyPosContainer),N(this.chart,this.beforeChartProxyPosContainer)}}}),L(g,"Accessibility/Components/RangeSelectorComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{unhideChartElementFromAT:q,getAxisRangeDescription:Z}=$,{addEvent:Y,attr:V}=X;class N extends R{init(){let T=this.chart;this.announcer=new st(T,"polite")}onChartUpdate(){let T=this.chart,A=this,M=T.rangeSelector;M&&(this.updateSelectorVisibility(),this.setDropdownAttrs(),M.buttons&&M.buttons.length&&M.buttons.forEach(O=>{A.setRangeButtonAttrs(O)}),M.maxInput&&M.minInput&&["minInput","maxInput"].forEach(function(O,H){let z=M[O];z&&(q(T,z),A.setRangeInputAttrs(z,"accessibility.rangeSelector."+(H?"max":"min")+"InputLabel"))}))}updateSelectorVisibility(){let T=this.chart,A=T.rangeSelector,M=A&&A.dropdown,O=A&&A.buttons||[],H=z=>z.setAttribute("aria-hidden",!0);A&&A.hasVisibleDropdown&&M?(q(T,M),O.forEach(z=>H(z.element))):(M&&H(M),O.forEach(z=>q(T,z.element)))}setDropdownAttrs(){let T=this.chart,A=T.rangeSelector&&T.rangeSelector.dropdown;if(A){let M=T.langFormat("accessibility.rangeSelector.dropdownLabel",{rangeTitle:T.options.lang.rangeSelectorZoom});A.setAttribute("aria-label",M),A.setAttribute("tabindex",-1)}}setRangeButtonAttrs(T){V(T.element,{tabindex:-1,role:"button"})}setRangeInputAttrs(T,A){let M=this.chart;V(T,{tabindex:-1,"aria-label":M.langFormat(A,{chart:M})})}onButtonNavKbdArrowKey(T,A){let M=T.response,O=this.keyCodes,H=this.chart,z=H.options.accessibility.keyboardNavigation.wrapAround,c=A===O.left||A===O.up?-1:1;return H.highlightRangeSelectorButton(H.highlightedRangeSelectorItemIx+c)?M.success:z?(T.init(c),M.success):M[c>0?"next":"prev"]}onButtonNavKbdClick(T){let A=T.response,M=this.chart;return M.oldRangeSelectorItemState!==3&&this.fakeClickEvent(M.rangeSelector.buttons[M.highlightedRangeSelectorItemIx].element),A.success}onAfterBtnClick(){let T=this.chart,A=Z(T.xAxis[0]),M=T.langFormat("accessibility.rangeSelector.clickButtonAnnouncement",{chart:T,axisRangeDescription:A});M&&this.announcer.announce(M)}onInputKbdMove(T){let A=this.chart,M=A.rangeSelector,O=A.highlightedInputRangeIx=(A.highlightedInputRangeIx||0)+T;if(O>1||O<0){if(A.accessibility)return A.accessibility.keyboardNavigation.exiting=!0,A.accessibility.keyboardNavigation.tabindexContainer.focus(),A.accessibility.keyboardNavigation.move(T)}else if(M){let H=M[O?"maxDateBox":"minDateBox"],z=M[O?"maxInput":"minInput"];H&&z&&A.setFocusToElement(H,z)}return!0}onInputNavInit(T){let A=this,M=this.chart,O=T>0?0:1,H=M.rangeSelector,z=H&&H[O?"maxDateBox":"minDateBox"],c=H&&H.minInput,D=H&&H.maxInput;if(M.highlightedInputRangeIx=O,z&&c&&D){M.setFocusToElement(z,O?D:c),this.removeInputKeydownHandler&&this.removeInputKeydownHandler();let it=k=>{(k.which||k.keyCode)===this.keyCodes.tab&&A.onInputKbdMove(k.shiftKey?-1:1)&&(k.preventDefault(),k.stopPropagation())},Q=Y(c,"keydown",it),W=Y(D,"keydown",it);this.removeInputKeydownHandler=()=>{Q(),W()}}}onInputNavTerminate(){let T=this.chart.rangeSelector||{};T.maxInput&&T.hideInput("max"),T.minInput&&T.hideInput("min"),this.removeInputKeydownHandler&&(this.removeInputKeydownHandler(),delete this.removeInputKeydownHandler)}initDropdownNav(){let T=this.chart,A=T.rangeSelector,M=A&&A.dropdown;A&&M&&(T.setFocusToElement(A.buttonGroup,M),this.removeDropdownKeydownHandler&&this.removeDropdownKeydownHandler(),this.removeDropdownKeydownHandler=Y(M,"keydown",O=>{let H=(O.which||O.keyCode)===this.keyCodes.tab,z=T.accessibility;H&&(O.preventDefault(),O.stopPropagation(),z&&(z.keyboardNavigation.tabindexContainer.focus(),z.keyboardNavigation.move(O.shiftKey?-1:1)))}))}getRangeSelectorButtonNavigation(){let T=this.chart,A=this.keyCodes,M=this;return new J(T,{keyCodeMap:[[[A.left,A.right,A.up,A.down],function(O){return M.onButtonNavKbdArrowKey(this,O)}],[[A.enter,A.space],function(){return M.onButtonNavKbdClick(this)}]],validate:function(){return!!(T.rangeSelector&&T.rangeSelector.buttons&&T.rangeSelector.buttons.length)},init:function(O){let H=T.rangeSelector;if(H&&H.hasVisibleDropdown)M.initDropdownNav();else if(H){let z=H.buttons.length-1;T.highlightRangeSelectorButton(O>0?0:z)}},terminate:function(){M.removeDropdownKeydownHandler&&(M.removeDropdownKeydownHandler(),delete M.removeDropdownKeydownHandler)}})}getRangeSelectorInputNavigation(){let T=this.chart,A=this;return new J(T,{keyCodeMap:[],validate:function(){return!!(T.rangeSelector&&T.rangeSelector.inputGroup&&T.rangeSelector.inputGroup.element.style.visibility!=="hidden"&&T.options.rangeSelector.inputEnabled!==!1&&T.rangeSelector.minInput&&T.rangeSelector.maxInput)},init:function(M){A.onInputNavInit(M)},terminate:function(){A.onInputNavTerminate()}})}getKeyboardNavigation(){return[this.getRangeSelectorButtonNavigation(),this.getRangeSelectorInputNavigation()]}destroy(){this.removeDropdownKeydownHandler&&this.removeDropdownKeydownHandler(),this.removeInputKeydownHandler&&this.removeInputKeydownHandler(),this.announcer&&this.announcer.destroy()}}return function(U){function T(M){let O=this.rangeSelector&&this.rangeSelector.buttons||[],H=this.highlightedRangeSelectorItemIx,z=this.rangeSelector&&this.rangeSelector.selected;return H!==void 0&&O[H]&&H!==z&&O[H].setState(this.oldRangeSelectorItemState||0),this.highlightedRangeSelectorItemIx=M,!!O[M]&&(this.setFocusToElement(O[M].box,O[M].element),M!==z&&(this.oldRangeSelectorItemState=O[M].state,O[M].setState(1)),!0)}function A(){let M=this.chart.accessibility;if(M&&M.components.rangeSelector)return M.components.rangeSelector.onAfterBtnClick()}U.compose=function(M,O){let H=M.prototype;H.highlightRangeSelectorButton||(H.highlightRangeSelectorButton=T,Y(O,"afterBtnClick",A))}}(N||(N={})),N}),L(g,"Accessibility/Components/SeriesComponent/ForcedMarkers.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){var $;let{composed:J}=R,{addEvent:X,merge:q,pushUnique:Z}=st;return function(Y){function V(H){q(!0,H,{marker:{enabled:!0,states:{normal:{opacity:0}}}})}function N(H){return H.marker.states&&H.marker.states.normal&&H.marker.states.normal.opacity}function U(H){return!!(H._hasPointMarkers&&H.points&&H.points.length)}function T(){this.chart.styledMode&&(this.markerGroup&&this.markerGroup[this.a11yMarkersForced?"addClass":"removeClass"]("highcharts-a11y-markers-hidden"),U(this)&&this.points.forEach(H=>{H.graphic&&(H.graphic[H.hasForcedA11yMarker?"addClass":"removeClass"]("highcharts-a11y-marker-hidden"),H.graphic[H.hasForcedA11yMarker===!1?"addClass":"removeClass"]("highcharts-a11y-marker-visible"))}))}function A(H){this.resetA11yMarkerOptions=q(H.options.marker||{},this.userOptions.marker||{})}function M(){let H=this.options;(function(z){let c=z.chart.options.accessibility.enabled,D=(z.options.accessibility&&z.options.accessibility.enabled)!==!1;return c&&D&&function(it){let Q=it.chart.options.accessibility;return it.points.length-1;C.highlightedPoint===this&&u!==l&&!I&&l&&l.focus&&l.focus()})}onDrillupAll(){let _,C=this.lastDrilledDownPoint,h=this.chart,l=C&&M(h,C.seriesName);C&&l&&U(C.x)&&U(C.y)&&(_=A(l,C.x,C.y)),_=_||D(h),h.container&&h.container.focus(),_&&_.highlight&&_.highlight(!1)}getKeyboardNavigationHandler(){let _=this,C=this.keyCodes,h=this.chart,l=h.inverted;return new q(h,{keyCodeMap:[[l?[C.up,C.down]:[C.left,C.right],function(u){return _.onKbdSideways(this,u)}],[l?[C.left,C.right]:[C.up,C.down],function(u){return _.onKbdVertical(this,u)}],[[C.enter,C.space],function(u,v){var S;let I=h.highlightedPoint;if(I){let{plotLeft:b,plotTop:K}=this.chart,{plotX:ct=0,plotY:et=0}=I;v=Mi(xr({},v),{chartX:b+ct,chartY:K+et,point:I,target:((S=I.graphic)==null?void 0:S.element)||v.target}),T(I.series,"click",v),I.firePointEvent("click",v)}return this.response.success}],[[C.home],function(){return Q(h),this.response.success}],[[C.end],function(){return it(h),this.response.success}],[[C.pageDown,C.pageUp],function(u){return h.highlightAdjacentSeries(u===C.pageDown),this.response.success}]],init:function(){return _.onHandlerInit(this)},validate:function(){return!!D(h)},terminate:function(){return _.onHandlerTerminate()}})}onKbdSideways(_,C){let h=this.keyCodes,l=C===h.right||C===h.down;return this.attemptHighlightAdjacentPoint(_,l)}onHandlerInit(_){let C=this.chart;return C.options.accessibility.keyboardNavigation.seriesNavigation.rememberPointFocus&&C.highlightedPoint?C.highlightedPoint.highlight():Q(C),_.response.success}onKbdVertical(_,C){let h=this.chart,l=this.keyCodes,u=C===l.down||C===l.right,v=h.options.accessibility.keyboardNavigation.seriesNavigation;if(v.mode&&v.mode==="serialize")return this.attemptHighlightAdjacentPoint(_,u);let I=h.highlightedPoint&&h.highlightedPoint.series.keyboardMoveVertical?"highlightAdjacentPointVertical":"highlightAdjacentSeries";return h[I](u),_.response.success}onHandlerTerminate(){let _=this.chart,C=_.options.accessibility.keyboardNavigation;_.tooltip&&_.tooltip.hide(0);let h=_.highlightedPoint&&_.highlightedPoint.series;h&&h.onMouseOut&&h.onMouseOut(),_.highlightedPoint&&_.highlightedPoint.onMouseOut&&_.highlightedPoint.onMouseOut(),C.seriesNavigation.rememberPointFocus||delete _.highlightedPoint}attemptHighlightAdjacentPoint(_,C){let h=this.chart,l=h.options.accessibility.keyboardNavigation.wrapAround;return h.highlightAdjacentPoint(C)||l&&(C?Q(h):it(h))?_.response.success:_.response[C?"next":"prev"]}onSeriesDestroy(_){let C=this.chart;C.highlightedPoint&&C.highlightedPoint.series===_&&(delete C.highlightedPoint,C.focusElement&&C.focusElement.removeFocusBorder())}destroy(){this.eventProvider.removeAddedEvents()}}return function(k){function _(v){let I,S,b=this.series,K=this.highlightedPoint,ct=K&&H(K)||0,et=K&&K.series.points||[],dt=this.series&&this.series[this.series.length-1],pt=dt&&dt.points&&dt.points[dt.points.length-1];if(!b[0]||!b[0].points)return!1;if(K){if(I=b[K.series.index+(v?1:-1)],(S=et[ct+(v?1:-1)])||!I||(S=I.points[v?0:I.points.length-1]),!S)return!1}else S=v?b[0].points[0]:pt;return c(S)?(z(I=S.series)?this.highlightedPoint=v?I.points[I.points.length-1]:I.points[0]:this.highlightedPoint=S,this.highlightAdjacentPoint(v)):S.highlight()}function C(v){let I=this.highlightedPoint,S=1/0,b;return!!(U(I.plotX)&&U(I.plotY))&&(this.series.forEach(K=>{z(K)||K.points.forEach(ct=>{if(!U(ct.plotY)||!U(ct.plotX)||ct===I)return;let et=ct.plotY-I.plotY,dt=Math.abs(ct.plotX-I.plotX),pt=Math.abs(et)*Math.abs(et)+dt*dt*4;K.yAxis&&K.yAxis.reversed&&(et*=-1),!(et<=0&&v||et>=0&&!v||pt<5||c(ct))&&pt!(U(F.plotX)&&U(F.plotY));if(!y(dt)){for(;x--;)!y(B=pt.points[x])&&(nt=(dt.plotX-B.plotX)*(dt.plotX-B.plotX)*4+(dt.plotY-B.plotY)*(dt.plotY-B.plotY)*1)=0;--K)if(!c(S[K]))return S[K].highlight()}return!1}k.compose=function(v,I,S){let b=v.prototype,K=I.prototype,ct=S.prototype;b.highlightAdjacentPoint||(b.highlightAdjacentPoint=_,b.highlightAdjacentPointVertical=C,b.highlightAdjacentSeries=h,K.highlight=l,ct.keyboardMoveVertical=!0,["column","gantt","pie"].forEach(et=>{V[et]&&(V[et].prototype.keyboardMoveVertical=!1)}),ct.highlightNextValidPoint=u)}}(W||(W={})),W}),L(g,"Accessibility/Components/SeriesComponent/SeriesComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Components/SeriesComponent/ForcedMarkers.js"],g["Accessibility/Components/SeriesComponent/NewDataAnnouncer.js"],g["Accessibility/Components/SeriesComponent/SeriesDescriber.js"],g["Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js"]],function(R,st,$,J,X,q){let{hideSeriesFromAT:Z}=st,{describeSeries:Y}=X;return class extends R{static compose(V,N,U){J.compose(U),$.compose(U),q.compose(V,N,U)}init(){this.newDataAnnouncer=new J(this.chart),this.newDataAnnouncer.init(),this.keyboardNavigation=new q(this.chart,this.keyCodes),this.keyboardNavigation.init(),this.hideTooltipFromATWhenShown(),this.hideSeriesLabelsFromATWhenShown()}hideTooltipFromATWhenShown(){let V=this;this.chart.tooltip&&this.addEvent(this.chart.tooltip.constructor,"refresh",function(){this.chart===V.chart&&this.label&&this.label.element&&this.label.element.setAttribute("aria-hidden",!0)})}hideSeriesLabelsFromATWhenShown(){this.addEvent(this.chart,"afterDrawSeriesLabels",function(){this.series.forEach(function(V){V.labelBySeries&&V.labelBySeries.attr("aria-hidden",!0)})})}onChartRender(){this.chart.series.forEach(function(V){(V.options.accessibility&&V.options.accessibility.enabled)!==!1&&V.visible&&V.getPointsCollection().length!==0?Y(V):Z(V)})}getKeyboardNavigation(){return this.keyboardNavigation.getKeyboardNavigationHandler()}destroy(){this.newDataAnnouncer.destroy(),this.keyboardNavigation.destroy()}}}),L(g,"Accessibility/Components/ZoomComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{unhideChartElementFromAT:q}=st,{getFakeMouseEvent:Z}=$,{attr:Y,pick:V}=X;return class extends R{constructor(){super(...arguments),this.focusedMapNavButtonIx=-1}init(){let N=this,U=this.chart;this.proxyProvider.addGroup("zoom","div"),["afterShowResetZoom","afterApplyDrilldown","drillupall"].forEach(T=>{N.addEvent(U,T,function(){N.updateProxyOverlays()})})}onChartUpdate(){let N=this.chart,U=this;N.mapNavigation&&N.mapNavigation.navButtons.forEach((T,A)=>{q(N,T.element),U.setMapNavButtonAttrs(T.element,"accessibility.zoom.mapZoom"+(A?"Out":"In"))})}setMapNavButtonAttrs(N,U){let T=this.chart;Y(N,{tabindex:-1,role:"button","aria-label":T.langFormat(U,{chart:T})})}onChartRender(){this.updateProxyOverlays()}updateProxyOverlays(){let N=this.chart;if(this.proxyProvider.clearGroup("zoom"),N.resetZoomButton&&this.createZoomProxyButton(N.resetZoomButton,"resetZoomProxyButton",N.langFormat("accessibility.zoom.resetZoomButton",{chart:N})),N.drillUpButton&&N.breadcrumbs&&N.breadcrumbs.list){let U=N.breadcrumbs.list[N.breadcrumbs.list.length-1];this.createZoomProxyButton(N.drillUpButton,"drillUpProxyButton",N.langFormat("accessibility.drillUpButton",{chart:N,buttonText:N.breadcrumbs.getButtonText(U)}))}}createZoomProxyButton(N,U,T){this[U]=this.proxyProvider.addProxyElement("zoom",{click:N},"button",{"aria-label":T,tabindex:-1})}getMapZoomNavigation(){let N=this.keyCodes,U=this.chart,T=this;return new J(U,{keyCodeMap:[[[N.up,N.down,N.left,N.right],function(A){return T.onMapKbdArrow(this,A)}],[[N.tab],function(A,M){return T.onMapKbdTab(this,M)}],[[N.space,N.enter],function(){return T.onMapKbdClick(this)}]],validate:function(){return!!(U.mapView&&U.mapNavigation&&U.mapNavigation.navButtons.length)},init:function(A){return T.onMapNavInit(A)}})}onMapKbdArrow(N,U){let T=this.chart,A=this.keyCodes,M=T.container,O=U===A.up||U===A.down,H=U===A.left||U===A.up?1:-1,z=(O?T.plotHeight:T.plotWidth)/10*H,c=10*Math.random(),D={x:M.offsetLeft+T.plotLeft+T.plotWidth/2+c,y:M.offsetTop+T.plotTop+T.plotHeight/2+c},it=O?{x:D.x,y:D.y+z}:{x:D.x+z,y:D.y};return[Z("mousedown",D),Z("mousemove",it),Z("mouseup",it)].forEach(Q=>M.dispatchEvent(Q)),N.response.success}onMapKbdTab(N,U){let T=this.chart,A=N.response,M=U.shiftKey,O=M&&!this.focusedMapNavButtonIx||!M&&this.focusedMapNavButtonIx;if(T.mapNavigation.navButtons[this.focusedMapNavButtonIx].setState(0),O)return T.mapView&&T.mapView.zoomBy(),A[M?"prev":"next"];this.focusedMapNavButtonIx+=M?-1:1;let H=T.mapNavigation.navButtons[this.focusedMapNavButtonIx];return T.setFocusToElement(H.box,H.element),H.setState(2),A.success}onMapKbdClick(N){let U=this.chart.mapNavigation.navButtons[this.focusedMapNavButtonIx].element;return this.fakeClickEvent(U),N.response.success}onMapNavInit(N){let U=this.chart,T=U.mapNavigation.navButtons[0],A=U.mapNavigation.navButtons[1],M=N>0?T:A;U.setFocusToElement(M.box,M.element),M.setState(2),this.focusedMapNavButtonIx=N>0?0:1}simpleButtonNavigation(N,U,T){let A=this.keyCodes,M=this,O=this.chart;return new J(O,{keyCodeMap:[[[A.tab,A.up,A.down,A.left,A.right],function(H,z){let c=H===A.tab&&z.shiftKey||H===A.left||H===A.up;return this.response[c?"prev":"next"]}],[[A.space,A.enter],function(){return V(T(this,O),this.response.success)}]],validate:function(){return O[N]&&O[N].box&&M[U].innerElement},init:function(){O.setFocusToElement(O[N].box,M[U].innerElement)}})}getKeyboardNavigation(){return[this.simpleButtonNavigation("resetZoomButton","resetZoomProxyButton",function(N,U){U.zoomOut()}),this.simpleButtonNavigation("drillUpButton","drillUpProxyButton",function(N,U){return U.drillUp(),N.response.prev}),this.getMapZoomNavigation()]}}}),L(g,"Accessibility/HighContrastMode.js",[g["Core/Globals.js"]],function(R){let{doc:st,isMS:$,win:J}=R;return{isHighContrastModeActive:function(){let X=/(Edg)/.test(J.navigator.userAgent);if(J.matchMedia&&X)return J.matchMedia("(-ms-high-contrast: active)").matches;if($&&J.getComputedStyle){let q=st.createElement("div");q.style.backgroundImage="url(data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)",st.body.appendChild(q);let Z=(q.currentStyle||J.getComputedStyle(q)).backgroundImage;return st.body.removeChild(q),Z==="none"}return J.matchMedia&&J.matchMedia("(forced-colors: active)").matches},setHighContrastTheme:function(X){var Y;X.highContrastModeActive=!0;let q=X.options.accessibility.highContrastTheme;X.update(q,!1);let Z=((Y=q.colors)==null?void 0:Y.length)>1;X.series.forEach(function(V){let N=q.plotOptions[V.type]||{},U=Z&&V.colorIndex!==void 0?q.colors[V.colorIndex]:N.color||"window",T={color:N.color||"windowText",colors:Z?q.colors:[N.color||"windowText"],borderColor:N.borderColor||"window",fillColor:U};V.update(T,!1),V.points&&V.points.forEach(function(A){A.options&&A.options.color&&A.update({color:N.color||"windowText",borderColor:N.borderColor||"window"},!1)})}),X.redraw()}}}),L(g,"Accessibility/HighContrastTheme.js",[],function(){return{chart:{backgroundColor:"window"},title:{style:{color:"windowText"}},subtitle:{style:{color:"windowText"}},colorAxis:{minColor:"windowText",maxColor:"windowText",stops:[],dataClasses:[]},colors:["windowText"],xAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},yAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},tooltip:{backgroundColor:"window",borderColor:"windowText",style:{color:"windowText"}},plotOptions:{series:{lineColor:"windowText",fillColor:"window",borderColor:"windowText",edgeColor:"windowText",borderWidth:1,dataLabels:{connectorColor:"windowText",color:"windowText",style:{color:"windowText",textOutline:"none"}},marker:{lineColor:"windowText",fillColor:"windowText"}},pie:{color:"window",colors:["window"],borderColor:"windowText",borderWidth:1},boxplot:{fillColor:"window"},candlestick:{lineColor:"windowText",fillColor:"window"},errorbar:{fillColor:"window"}},legend:{backgroundColor:"window",itemStyle:{color:"windowText"},itemHoverStyle:{color:"windowText"},itemHiddenStyle:{color:"#555"},title:{style:{color:"windowText"}}},credits:{style:{color:"windowText"}},drilldown:{activeAxisLabelStyle:{color:"windowText"},activeDataLabelStyle:{color:"windowText"}},navigation:{buttonOptions:{symbolStroke:"windowText",theme:{fill:"window"}}},rangeSelector:{buttonTheme:{fill:"window",stroke:"windowText",style:{color:"windowText"},states:{hover:{fill:"window",stroke:"windowText",style:{color:"windowText"}},select:{fill:"#444",stroke:"windowText",style:{color:"windowText"}}}},inputBoxBorderColor:"windowText",inputStyle:{backgroundColor:"window",color:"windowText"},labelStyle:{color:"windowText"}},navigator:{handles:{backgroundColor:"window",borderColor:"windowText"},outlineColor:"windowText",maskFill:"transparent",series:{color:"windowText",lineColor:"windowText"},xAxis:{gridLineColor:"windowText"}},scrollbar:{barBackgroundColor:"#444",barBorderColor:"windowText",buttonArrowColor:"windowText",buttonBackgroundColor:"window",buttonBorderColor:"windowText",rifleColor:"windowText",trackBackgroundColor:"window",trackBorderColor:"windowText"}}}),L(g,"Accessibility/Options/A11yDefaults.js",[],function(){return{accessibility:{enabled:!0,screenReaderSection:{beforeChartFormat:"<{headingTagName}>{chartTitle}
    {typeDescription}
    {chartSubtitle}
    {chartLongdesc}
    {playAsSoundButton}
    {viewTableButton}
    {xAxisDescription}
    {yAxisDescription}
    {annotationsTitle}{annotationsList}
    ",afterChartFormat:"{endOfChartMarker}",axisRangeDateFormat:"%Y-%m-%d %H:%M:%S"},series:{descriptionFormat:"{seriesDescription}{authorDescription}{axisDescription}",describeSingleSeries:!1,pointDescriptionEnabledThreshold:200},point:{valueDescriptionFormat:"{xDescription}{separator}{value}.",describeNull:!0},landmarkVerbosity:"all",linkedDescription:'*[data-highcharts-chart="{index}"] + .highcharts-description',highContrastMode:"auto",keyboardNavigation:{enabled:!0,focusBorder:{enabled:!0,hideBrowserFocusOutline:!0,style:{color:"#334eff",lineWidth:2,borderRadius:3},margin:2},order:["series","zoom","rangeSelector","navigator","legend","chartMenu"],wrapAround:!0,seriesNavigation:{skipNullPoints:!0,pointNavigationEnabledThreshold:!1,rememberPointFocus:!1}},announceNewData:{enabled:!1,minAnnounceInterval:5e3,interruptUser:!1}},legend:{accessibility:{enabled:!0,keyboardNavigation:{enabled:!0}}},exporting:{accessibility:{enabled:!0}},navigator:{accessibility:{enabled:!0}}}}),L(g,"Accessibility/Options/LangDefaults.js",[],function(){return{accessibility:{defaultChartTitle:"Chart",chartContainerLabel:"{title}. Highcharts interactive chart.",svgContainerLabel:"Interactive chart",drillUpButton:"{buttonText}",credits:"Chart credits: {creditsStr}",thousandsSep:",",svgContainerTitle:"",graphicContainerLabel:"",screenReaderSection:{beforeRegionLabel:"",afterRegionLabel:"",annotations:{heading:"Chart annotations summary",descriptionSinglePoint:"{annotationText}. Related to {annotationPoint}",descriptionMultiplePoints:"{annotationText}. Related to {annotationPoint}{#each additionalAnnotationPoints}, also related to {this}{/each}",descriptionNoPoints:"{annotationText}"},endOfChartMarker:"End of interactive chart."},sonification:{playAsSoundButtonText:"Play as sound, {chartTitle}",playAsSoundClickAnnouncement:"Play"},legend:{legendLabelNoTitle:"Toggle series visibility, {chartTitle}",legendLabel:"Chart legend: {legendTitle}",legendItem:"Show {itemName}"},zoom:{mapZoomIn:"Zoom chart",mapZoomOut:"Zoom out chart",resetZoomButton:"Reset zoom"},rangeSelector:{dropdownLabel:"{rangeTitle}",minInputLabel:"Select start date.",maxInputLabel:"Select end date.",clickButtonAnnouncement:"Viewing {axisRangeDescription}"},navigator:{handleLabel:"{#eq handleIx 0}Start, percent{else}End, percent{/eq}",groupLabel:"Axis zoom",changeAnnouncement:"{axisRangeDescription}"},table:{viewAsDataTableButtonText:"View as data table, {chartTitle}",tableSummary:"Table representation of chart."},announceNewData:{newDataAnnounce:"Updated data for chart {chartTitle}",newSeriesAnnounceSingle:"New data series: {seriesDesc}",newPointAnnounceSingle:"New data point: {pointDesc}",newSeriesAnnounceMultiple:"New data series in chart {chartTitle}: {seriesDesc}",newPointAnnounceMultiple:"New data point in chart {chartTitle}: {pointDesc}"},seriesTypeDescriptions:{boxplot:"Box plot charts are typically used to display groups of statistical data. Each data point in the chart can have up to 5 values: minimum, lower quartile, median, upper quartile, and maximum.",arearange:"Arearange charts are line charts displaying a range between a lower and higher value for each point.",areasplinerange:"These charts are line charts displaying a range between a lower and higher value for each point.",bubble:"Bubble charts are scatter charts where each data point also has a size value.",columnrange:"Columnrange charts are column charts displaying a range between a lower and higher value for each point.",errorbar:"Errorbar series are used to display the variability of the data.",funnel:"Funnel charts are used to display reduction of data in stages.",pyramid:"Pyramid charts consist of a single pyramid with item heights corresponding to each point value.",waterfall:"A waterfall chart is a column chart where each column contributes towards a total end value."},chartTypes:{emptyChart:"Empty chart",mapTypeDescription:"Map of {mapTitle} with {numSeries} data series.",unknownMap:"Map of unspecified region with {numSeries} data series.",combinationChart:"Combination chart with {numSeries} data series.",defaultSingle:"Chart with {numPoints} data {#eq numPoints 1}point{else}points{/eq}.",defaultMultiple:"Chart with {numSeries} data series.",splineSingle:"Line chart with {numPoints} data {#eq numPoints 1}point{else}points{/eq}.",splineMultiple:"Line chart with {numSeries} lines.",lineSingle:"Line chart with {numPoints} data {#eq numPoints 1}point{else}points{/eq}.",lineMultiple:"Line chart with {numSeries} lines.",columnSingle:"Bar chart with {numPoints} {#eq numPoints 1}bar{else}bars{/eq}.",columnMultiple:"Bar chart with {numSeries} data series.",barSingle:"Bar chart with {numPoints} {#eq numPoints 1}bar{else}bars{/eq}.",barMultiple:"Bar chart with {numSeries} data series.",pieSingle:"Pie chart with {numPoints} {#eq numPoints 1}slice{else}slices{/eq}.",pieMultiple:"Pie chart with {numSeries} pies.",scatterSingle:"Scatter chart with {numPoints} {#eq numPoints 1}point{else}points{/eq}.",scatterMultiple:"Scatter chart with {numSeries} data series.",boxplotSingle:"Boxplot with {numPoints} {#eq numPoints 1}box{else}boxes{/eq}.",boxplotMultiple:"Boxplot with {numSeries} data series.",bubbleSingle:"Bubble chart with {numPoints} {#eq numPoints 1}bubbles{else}bubble{/eq}.",bubbleMultiple:"Bubble chart with {numSeries} data series."},axis:{xAxisDescriptionSingular:"The chart has 1 X axis displaying {names[0]}. {ranges[0]}",xAxisDescriptionPlural:"The chart has {numAxes} X axes displaying {#each names}{#unless @first},{/unless}{#if @last} and{/if} {this}{/each}.",yAxisDescriptionSingular:"The chart has 1 Y axis displaying {names[0]}. {ranges[0]}",yAxisDescriptionPlural:"The chart has {numAxes} Y axes displaying {#each names}{#unless @first},{/unless}{#if @last} and{/if} {this}{/each}.",timeRangeDays:"Data range: {range} days.",timeRangeHours:"Data range: {range} hours.",timeRangeMinutes:"Data range: {range} minutes.",timeRangeSeconds:"Data range: {range} seconds.",rangeFromTo:"Data ranges from {rangeFrom} to {rangeTo}.",rangeCategories:"Data range: {numCategories} categories."},exporting:{chartMenuLabel:"Chart menu",menuButtonLabel:"View chart menu, {chartTitle}"},series:{summary:{default:"{series.name}, series {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",defaultCombination:"{series.name}, series {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",line:"{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",lineCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",spline:"{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",splineCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",column:"{series.name}, bar series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",columnCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bar series with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",bar:"{series.name}, bar series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",barCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bar series with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",pie:"{series.name}, pie {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}slice{else}slices{/eq}.",pieCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Pie with {series.points.length} {#eq series.points.length 1}slice{else}slices{/eq}.",scatter:"{series.name}, scatter plot {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}point{else}points{/eq}.",scatterCombination:"{series.name}, series {seriesNumber} of {chart.series.length}, scatter plot with {series.points.length} {#eq series.points.length 1}point{else}points{/eq}.",boxplot:"{series.name}, boxplot {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}box{else}boxes{/eq}.",boxplotCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Boxplot with {series.points.length} {#eq series.points.length 1}box{else}boxes{/eq}.",bubble:"{series.name}, bubble series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}.",bubbleCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bubble series with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}.",map:"{series.name}, map {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}area{else}areas{/eq}.",mapCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Map with {series.points.length} {#eq series.points.length 1}area{else}areas{/eq}.",mapline:"{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",maplineCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",mapbubble:"{series.name}, bubble series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}.",mapbubbleCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bubble series with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}."},description:"{description}",xAxisDescription:"X axis, {name}",yAxisDescription:"Y axis, {name}",nullPointValue:"No value",pointAnnotationsDescription:"{#each annotations}Annotation: {this}{/each}"}}}}),L(g,"Accessibility/Options/DeprecatedOptions.js",[g["Core/Utilities.js"]],function(R){let{error:st,pick:$}=R;function J(q,Z,Y){let V=q,N,U=0;for(;Ub!=="series")):Object.keys(this.components):[]}update(){let b=this.components,K=this.chart,ct=K.options.accessibility;l(K,"beforeA11yUpdate"),K.types=this.getChartTypes();let et=ct.keyboardNavigation.order;this.proxyProvider.updateGroupOrder(et),this.getComponentOrder().forEach(function(dt){b[dt].onChartUpdate(),l(K,"afterA11yComponentUpdate",{name:dt,component:b[dt]})}),this.keyboardNavigation.update(et),!K.highContrastModeActive&&ct.highContrastMode!==!1&&(c.isHighContrastModeActive()||ct.highContrastMode===!0)&&c.setHighContrastTheme(K),l(K,"afterA11yUpdate",{accessibility:this})}destroy(){let b=this.chart||{},K=this.components;Object.keys(K).forEach(function(ct){K[ct].destroy(),K[ct].destroyBase()}),this.proxyProvider&&this.proxyProvider.destroy(),b.announcerContainer&&v(b.announcerContainer),this.keyboardNavigation&&this.keyboardNavigation.destroy(),b.renderTo&&b.renderTo.setAttribute("aria-hidden",!0),b.focusElement&&b.focusElement.removeFocusBorder()}getChartTypes(){let b={};return this.chart.series.forEach(function(K){b[K.type]=1}),Object.keys(b)}}return function(S){function b(){this.accessibility&&this.accessibility.destroy()}function K(){this.a11yDirty&&this.renderTo&&(delete this.a11yDirty,this.updateA11yEnabled());let pt=this.accessibility;pt&&!pt.zombie&&(pt.proxyProvider.updateProxyElementPositions(),pt.getComponentOrder().forEach(function(bt){pt.components[bt].onChartRender()}))}function ct(pt){let bt=pt.options.accessibility;bt&&(bt.customComponents&&(this.options.accessibility.customComponents=bt.customComponents,delete bt.customComponents),u(!0,this.options.accessibility,bt),this.accessibility&&this.accessibility.destroy&&(this.accessibility.destroy(),delete this.accessibility)),this.a11yDirty=!0}function et(){let pt=this.accessibility,bt=this.options.accessibility,Mt=this.renderer.boxWrapper.element,w=this.title;if(bt&&bt.enabled)pt&&!pt.zombie?pt.update():(this.accessibility=pt=new S(this),pt&&!pt.zombie&&pt.update(),Mt.getAttribute("role")==="img"&&Mt.removeAttribute("role"));else if(pt)pt.destroy&&pt.destroy(),delete this.accessibility;else{this.renderTo.setAttribute("role","img"),this.renderTo.setAttribute("aria-hidden",!1),this.renderTo.setAttribute("aria-label",(w&&w.element.textContent||"").replace(/{C(pt,x,function(){this.a11yDirty=!0})}),["afterApplyDrilldown","drillupall"].forEach(x=>{C(pt,x,function(){let y=this.accessibility;y&&!y.zombie&&y.update()})}),C(Mt,"update",dt),["update","updatedData","remove"].forEach(x=>{C(w,x,function(){this.chart.accessibility&&(this.chart.a11yDirty=!0)})}))}}(I||(I={})),u(!0,k,it,{accessibility:{highContrastTheme:D},lang:Q}),I}),L(g,"masters/modules/accessibility.src.js",[g["Core/Globals.js"],g["Accessibility/Accessibility.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Components/SeriesComponent/SeriesDescriber.js"]],function(R,st,$,J,X,q,Z){return R.i18nFormat=st.i18nFormat,R.A11yChartUtilities=J,R.A11yHTMLUtilities=X,R.AccessibilityComponent=$,R.KeyboardNavigationHandler=q,R.SeriesAccessibilityDescriber=Z,st.compose(R.Chart,R.Legend,R.Point,R.Series,R.SVGElement,R.RangeSelector),R})})},5705:yr=>{"use strict";var Oe=function(xt,j,Pt,d,g,L,R,st){if(!xt){var $;if(j===void 0)$=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var J=[Pt,d,g,L,R,st],X=0;$=new Error(j.replace(/%s/g,function(){return J[X++]})),$.name="Invariant Violation"}throw $.framesToPop=1,$}};yr.exports=Oe},7967:(yr,Oe,xt)=>{var j="Expected a function",Pt=NaN,d="[object Symbol]",g=/^\s+|\s+$/g,L=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,st=/^0o[0-7]+$/i,$=parseInt,J=typeof xt.g=="object"&&xt.g&&xt.g.Object===Object&&xt.g,X=typeof self=="object"&&self&&self.Object===Object&&self,q=J||X||Function("return this")(),Z=Object.prototype,Y=Z.toString,V=Math.max,N=Math.min,U=function(){return q.Date.now()};function T(z,c,D){var it,Q,W,k,_,C,h=0,l=!1,u=!1,v=!0;if(typeof z!="function")throw new TypeError(j);c=H(c)||0,A(D)&&(l=!!D.leading,u="maxWait"in D,W=u?V(H(D.maxWait)||0,c):W,v="trailing"in D?!!D.trailing:v);function I(Mt){var w=it,B=Q;return it=Q=void 0,h=Mt,k=z.apply(B,w),k}function S(Mt){return h=Mt,_=setTimeout(ct,c),l?I(Mt):k}function b(Mt){var w=Mt-C,B=Mt-h,tt=c-w;return u?N(tt,W-B):tt}function K(Mt){var w=Mt-C,B=Mt-h;return C===void 0||w>=c||w<0||u&&B>=W}function ct(){var Mt=U();if(K(Mt))return et(Mt);_=setTimeout(ct,b(Mt))}function et(Mt){return _=void 0,v&&it?I(Mt):(it=Q=void 0,k)}function dt(){_!==void 0&&clearTimeout(_),h=0,it=C=Q=_=void 0}function pt(){return _===void 0?k:et(U())}function bt(){var Mt=U(),w=K(Mt);if(it=arguments,Q=this,C=Mt,w){if(_===void 0)return S(C);if(u)return _=setTimeout(ct,c),I(C)}return _===void 0&&(_=setTimeout(ct,c)),k}return bt.cancel=dt,bt.flush=pt,bt}function A(z){var c=typeof z;return!!z&&(c=="object"||c=="function")}function M(z){return!!z&&typeof z=="object"}function O(z){return typeof z=="symbol"||M(z)&&Y.call(z)==d}function H(z){if(typeof z=="number")return z;if(O(z))return Pt;if(A(z)){var c=typeof z.valueOf=="function"?z.valueOf():z;z=A(c)?c+"":c}if(typeof z!="string")return z===0?z:+z;z=z.replace(g,"");var D=R.test(z);return D||st.test(z)?$(z.slice(2),D?2:8):L.test(z)?Pt:+z}yr.exports=T},628:(yr,Oe,xt)=>{"use strict";var j=xt(4067);function Pt(){}function d(){}d.resetWarningCache=Pt,yr.exports=function(){function g(st,$,J,X,q,Z){if(Z!==j){var Y=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw Y.name="Invariant Violation",Y}}g.isRequired=g;function L(){return g}var R={array:g,bigint:g,bool:g,func:g,number:g,object:g,string:g,symbol:g,any:g,arrayOf:L,element:g,elementType:g,instanceOf:L,node:g,objectOf:L,oneOf:L,oneOfType:L,shape:L,exact:L,checkPropTypes:d,resetWarningCache:Pt};return R.PropTypes=R,R}},5826:(yr,Oe,xt)=>{if(0)var j,Pt;else yr.exports=xt(628)()},4067:yr=>{"use strict";var Oe="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";yr.exports=Oe},1363:(yr,Oe,xt)=>{"use strict";/** +*/(function(){"use strict";var Pt=!!(typeof window!="undefined"&&window.document&&window.document.createElement),d={canUseDOM:Pt,canUseWorkers:typeof Worker!="undefined",canUseEventListeners:Pt&&!!(window.addEventListener||window.attachEvent),canUseViewport:Pt&&!!window.screen};F=function(){return d}.call(Oe,xt,Oe,yr),F!==void 0&&(yr.exports=F)})()},5215:yr=>{"use strict";yr.exports=function Oe(xt,F){if(xt===F)return!0;if(xt&&F&&typeof xt=="object"&&typeof F=="object"){if(xt.constructor!==F.constructor)return!1;var Pt,d,g;if(Array.isArray(xt)){if(Pt=xt.length,Pt!=F.length)return!1;for(d=Pt;d--!==0;)if(!Oe(xt[d],F[d]))return!1;return!0}if(xt.constructor===RegExp)return xt.source===F.source&&xt.flags===F.flags;if(xt.valueOf!==Object.prototype.valueOf)return xt.valueOf()===F.valueOf();if(xt.toString!==Object.prototype.toString)return xt.toString()===F.toString();if(g=Object.keys(xt),Pt=g.length,Pt!==Object.keys(F).length)return!1;for(d=Pt;d--!==0;)if(!Object.prototype.hasOwnProperty.call(F,g[d]))return!1;for(d=Pt;d--!==0;){var L=g[d];if(!Oe(xt[L],F[L]))return!1}return!0}return xt!==xt&&F!==F}},6193:function(yr,Oe,xt){var F;(function(Pt,d){yr.exports?(d.default=d,yr.exports=Pt&&Pt.document?d(Pt):d):(F=function(){return d(Pt)}.call(Oe,xt,Oe,yr),F!==void 0&&(yr.exports=F))})(typeof window!="undefined"?window:this,function(Pt){"use strict";var d={};function g(L,R,st,$){!L.hasOwnProperty(R)&&(L[R]=$.apply(null,st),Pt&&typeof CustomEvent=="function"&&Pt.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:R,module:L[R]}})))}return g(d,"Core/Globals.js",[],function(){var L,R;return(R=L||(L={})).SVG_NS="http://www.w3.org/2000/svg",R.product="Highcharts",R.version="11.4.8",R.win=Pt!==void 0?Pt:{},R.doc=R.win.document,R.svg=R.doc&&R.doc.createElementNS&&!!R.doc.createElementNS(R.SVG_NS,"svg").createSVGRect,R.userAgent=R.win.navigator&&R.win.navigator.userAgent||"",R.isChrome=R.win.chrome,R.isFirefox=R.userAgent.indexOf("Firefox")!==-1,R.isMS=/(edge|msie|trident)/i.test(R.userAgent)&&!R.win.opera,R.isSafari=!R.isChrome&&R.userAgent.indexOf("Safari")!==-1,R.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(R.userAgent),R.isWebKit=R.userAgent.indexOf("AppleWebKit")!==-1,R.deg2rad=2*Math.PI/360,R.hasBidiBug=R.isFirefox&&4>parseInt(R.userAgent.split("Firefox/")[1],10),R.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],R.noop=function(){},R.supportsPassiveEvents=function(){let st=!1;if(!R.isMS){let $=Object.defineProperty({},"passive",{get:function(){st=!0}});R.win.addEventListener&&R.win.removeEventListener&&(R.win.addEventListener("testPassive",R.noop,$),R.win.removeEventListener("testPassive",R.noop,$))}return st}(),R.charts=[],R.composed=[],R.dateFormats={},R.seriesTypes={},R.symbolSizes={},R.chartCount=0,L}),g(d,"Core/Utilities.js",[d["Core/Globals.js"]],function(L){let R,{charts:st,doc:$,win:J}=L;function X(h,l,u,v){let I=l?"Highcharts error":"Highcharts warning";h===32&&(h=`${I}: Deprecated member`);let S=T(h),b=S?`${I} #${h}: www.highcharts.com/errors/${h}/`:h.toString();if(v!==void 0){let K="";S&&(b+="?"),W(v,function(ct,et){K+=` + - ${et}: ${ct}`,S&&(b+=encodeURI(et)+"="+encodeURI(ct))}),b+=K}_(L,"displayError",{chart:u,code:h,message:b,params:v},function(){if(l)throw Error(b);J.console&&X.messages.indexOf(b)===-1&&console.warn(b)}),X.messages.push(b)}function q(h,l){return parseInt(h,l||10)}function Z(h){return typeof h=="string"}function Y(h){let l=Object.prototype.toString.call(h);return l==="[object Array]"||l==="[object Array Iterator]"}function V(h,l){return!!h&&typeof h=="object"&&(!l||!Y(h))}function N(h){return V(h)&&typeof h.nodeType=="number"}function U(h){let l=h&&h.constructor;return!!(V(h,!0)&&!N(h)&&l&&l.name&&l.name!=="Object")}function T(h){return typeof h=="number"&&!isNaN(h)&&h<1/0&&h>-1/0}function A(h){return h!=null}function M(h,l,u){let v,I=Z(l)&&!A(u),S=(b,K)=>{A(b)?h.setAttribute(K,b):I?(v=h.getAttribute(K))||K!=="class"||(v=h.getAttribute(K+"Name")):h.removeAttribute(K)};return Z(l)?S(u,l):W(l,S),v}function O(h){return Y(h)?h:[h]}function H(h,l){let u;for(u in h||(h={}),l)h[u]=l[u];return h}function z(){let h=arguments,l=h.length;for(let u=0;u1e14?h:parseFloat(h.toPrecision(l||14))}(X||(X={})).messages=[],Math.easeInOutSine=function(h){return-.5*(Math.cos(Math.PI*h)-1)};let Q=Array.prototype.find?function(h,l){return h.find(l)}:function(h,l){let u,v=h.length;for(u=0;uK.order-ct.order),I.forEach(K=>{K.fn.call(h,u)===!1&&u.preventDefault()})}v&&!u.defaultPrevented&&v.call(h,u)}W({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(h,l){L[l]=function(u){return X(32,!1,void 0,{[`Highcharts.${l}`]:`use Array.${h}`}),Array.prototype[h].apply(u,[].slice.call(arguments,1))}});let C=function(){let h=Math.random().toString(36).substring(2,9)+"-",l=0;return function(){return"highcharts-"+(R?"":h)+l++}}();return J.jQuery&&(J.jQuery.fn.highcharts=function(){let h=[].slice.call(arguments);if(this[0])return h[0]?(new L[Z(h[0])?h.shift():"Chart"](this[0],h[0],h[1]),this):st[M(this[0],"data-highcharts-chart")]}),{addEvent:function(h,l,u,v={}){let I=typeof h=="function"&&h.prototype||h;Object.hasOwnProperty.call(I,"hcEvents")||(I.hcEvents={});let S=I.hcEvents;L.Point&&h instanceof L.Point&&h.series&&h.series.chart&&(h.series.chart.runTrackerClick=!0);let b=h.addEventListener;b&&b.call(h,l,u,!!L.supportsPassiveEvents&&{passive:v.passive===void 0?l.indexOf("touch")!==-1:v.passive,capture:!1}),S[l]||(S[l]=[]);let K={fn:u,order:typeof v.order=="number"?v.order:1/0};return S[l].push(K),S[l].sort((ct,et)=>ct.order-et.order),function(){k(h,l,u)}},arrayMax:function(h){let l=h.length,u=h[0];for(;l--;)h[l]>u&&(u=h[l]);return u},arrayMin:function(h){let l=h.length,u=h[0];for(;l--;)h[l]l?h{let v=l%2/2,I=u?-1:1;return(Math.round(h*I-v)+v)*I},css:c,defined:A,destroyObjectProperties:function(h,l,u){W(h,function(v,I){v!==l&&(v!=null&&v.destroy)&&v.destroy(),(v!=null&&v.destroy||!u)&&delete h[I]})},diffObjects:function(h,l,u,v){let I={};return function S(b,K,ct,et){let dt=u?K:b;W(b,function(pt,bt){if(!et&&v&&v.indexOf(bt)>-1&&K[bt]){pt=O(pt),ct[bt]=[];for(let Mt=0;Mt{if(K.length>1)for(S=v=K.length-1;S>0;S--)(I=K[S]-K[S-1])<0&&!b?(l==null||l(),l=void 0):I&&(u===void 0||I=b-1&&(b=Math.floor(K)),Math.max(0,b-(h(l,"padding-left",!0)||0)-(h(l,"padding-right",!0)||0))}if(u==="height")return Math.max(0,Math.min(l.offsetHeight,l.scrollHeight)-(h(l,"padding-top",!0)||0)-(h(l,"padding-bottom",!0)||0));let S=J.getComputedStyle(l,void 0);return S&&(I=S.getPropertyValue(u),z(v,u!=="opacity")&&(I=q(I))),I},inArray:function(h,l,u){return X(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),l.indexOf(h,u)},insertItem:function(h,l){let u,v=h.options.index,I=l.length;for(u=h.options.isInternal?I:0;u=h))&&(I||!(K<=(l[S]+(l[S+1]||l[S]))/2)));S++);return it(b*u,-Math.round(Math.log(.001)/Math.LN10))},objectEach:W,offset:function(h){let l=$.documentElement,u=h.parentElement||h.parentNode?h.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:u.top+(J.pageYOffset||l.scrollTop)-(l.clientTop||0),left:u.left+(J.pageXOffset||l.scrollLeft)-(l.clientLeft||0),width:u.width,height:u.height}},pad:function(h,l,u){return Array((l||2)+1-String(h).replace("-","").length).join(u||"0")+h},pick:z,pInt:q,pushUnique:function(h,l){return 0>h.indexOf(l)&&!!h.push(l)},relativeLength:function(h,l,u){return/%$/.test(h)?l*parseFloat(h)/100+(u||0):parseFloat(h)},removeEvent:k,replaceNested:function(h,...l){let u,v;do for(v of(u=h,l))h=h.replace(v[0],v[1]);while(h!==u);return h},splat:O,stableSort:function(h,l){let u,v,I=h.length;for(v=0;v0?setTimeout(h,l,u):(h.call(0,u),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:C,useSerialIds:function(h){return R=z(h,R)},wrap:function(h,l,u){let v=h[l];h[l]=function(){let I=arguments,S=this;return u.apply(this,[function(){return v.apply(S,arguments.length?arguments:I)}].concat([].slice.call(arguments)))}}}}),g(d,"Core/Chart/ChartDefaults.js",[],function(){return{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{},position:{}},reflow:!0,type:"line",zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#334eff",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"}}),g(d,"Core/Color/Palettes.js",[],function(){return{colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]}}),g(d,"Core/Time.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{win:st}=L,{defined:$,error:J,extend:X,isNumber:q,isObject:Z,merge:Y,objectEach:V,pad:N,pick:U,splat:T,timeUnits:A}=R,M=L.isSafari&&st.Intl&&st.Intl.DateTimeFormat.prototype.formatRange,O=L.isSafari&&st.Intl&&!st.Intl.DateTimeFormat.prototype.formatRange;class H{constructor(c){this.options={},this.useUTC=!1,this.variableTimezone=!1,this.Date=st.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(c)}get(c,D){if(this.variableTimezone||this.timezoneOffset){let it=D.getTime(),Q=it-this.getTimezoneOffset(D);D.setTime(Q);let W=D["getUTC"+c]();return D.setTime(it),W}return this.useUTC?D["getUTC"+c]():D["get"+c]()}set(c,D,it){if(this.variableTimezone||this.timezoneOffset){if(c==="Milliseconds"||c==="Seconds"||c==="Minutes"&&this.getTimezoneOffset(D)%36e5==0)return D["setUTC"+c](it);let Q=this.getTimezoneOffset(D),W=D.getTime()-Q;D.setTime(W),D["setUTC"+c](it);let k=this.getTimezoneOffset(D);return W=D.getTime()+k,D.setTime(W)}return this.useUTC||M&&c==="FullYear"?D["setUTC"+c](it):D["set"+c](it)}update(c={}){let D=U(c.useUTC,!0);this.options=c=Y(!0,this.options,c),this.Date=c.Date||st.Date||Date,this.useUTC=D,this.timezoneOffset=D&&c.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=D&&!!(c.getTimezoneOffset||c.timezone)}makeTime(c,D,it,Q,W,k){let _,C,h;return this.useUTC?(_=this.Date.UTC.apply(0,arguments),C=this.getTimezoneOffset(_),_+=C,C!==(h=this.getTimezoneOffset(_))?_+=h-C:C-36e5!==this.getTimezoneOffset(_-36e5)||O||(_-=36e5)):_=new this.Date(c,D,U(it,1),U(Q,0),U(W,0),U(k,0)).getTime(),_}timezoneOffsetFunction(){let c=this,D=this.options,it=D.getTimezoneOffset;return this.useUTC?D.timezone?Q=>{try{let W=`shortOffset,${D.timezone||""}`,[k,_,C,h,l=0]=(H.formatCache[W]=H.formatCache[W]||Intl.DateTimeFormat("en",{timeZone:D.timezone,timeZoneName:"shortOffset"})).format(Q).split(/(GMT|:)/).map(Number),u=-(36e5*(C+l/60));if(q(u))return u}catch(W){J(34)}return 0}:this.useUTC&&it?Q=>6e4*it(Q.valueOf()):()=>6e4*(c.timezoneOffset||0):Q=>6e4*new Date(Q.toString()).getTimezoneOffset()}dateFormat(c,D,it){if(!$(D)||isNaN(D))return L.defaultOptions.lang&&L.defaultOptions.lang.invalidDate||"";c=U(c,"%Y-%m-%d %H:%M:%S");let Q=this,W=new this.Date(D),k=this.get("Hours",W),_=this.get("Day",W),C=this.get("Date",W),h=this.get("Month",W),l=this.get("FullYear",W),u=L.defaultOptions.lang,v=u&&u.weekdays,I=u&&u.shortWeekdays;return V(X({a:I?I[_]:v[_].substr(0,3),A:v[_],d:N(C),e:N(C,2," "),w:_,b:u.shortMonths[h],B:u.months[h],m:N(h+1),o:h+1,y:l.toString().substr(2,2),Y:l,H:N(k),k,I:N(k%12||12),l:k%12||12,M:N(this.get("Minutes",W)),p:k<12?"AM":"PM",P:k<12?"am":"pm",S:N(this.get("Seconds",W)),L:N(Math.floor(D%1e3),3)},L.dateFormats),function(S,b){for(;c.indexOf("%"+b)!==-1;)c=c.replace("%"+b,typeof S=="function"?S.call(Q,D):S)}),it?c.substr(0,1).toUpperCase()+c.substr(1):c}resolveDTLFormat(c){return Z(c,!0)?c:{main:(c=T(c))[0],from:c[1],to:c[2]}}getTimeTicks(c,D,it,Q){let W,k,_,C,h=this,l=h.Date,u=[],v={},I=new l(D),S=c.unitRange,b=c.count||1;if(Q=U(Q,1),$(D)){h.set("Milliseconds",I,S>=A.second?0:b*Math.floor(h.get("Milliseconds",I)/b)),S>=A.second&&h.set("Seconds",I,S>=A.minute?0:b*Math.floor(h.get("Seconds",I)/b)),S>=A.minute&&h.set("Minutes",I,S>=A.hour?0:b*Math.floor(h.get("Minutes",I)/b)),S>=A.hour&&h.set("Hours",I,S>=A.day?0:b*Math.floor(h.get("Hours",I)/b)),S>=A.day&&h.set("Date",I,S>=A.month?1:Math.max(1,b*Math.floor(h.get("Date",I)/b))),S>=A.month&&(h.set("Month",I,S>=A.year?0:b*Math.floor(h.get("Month",I)/b)),k=h.get("FullYear",I)),S>=A.year&&(k-=k%b,h.set("FullYear",I,k)),S===A.week&&(C=h.get("Day",I),h.set("Date",I,h.get("Date",I)-C+Q+(C4*A.month||h.getTimezoneOffset(D)!==h.getTimezoneOffset(it));let dt=I.getTime();for(W=1;dt1?dt=h.makeTime(k,K,ct,et+W*b):dt+=S*b,W++;u.push(dt),S<=A.hour&&u.length<1e4&&u.forEach(function(pt){pt%18e5==0&&h.dateFormat("%H%M%S%L",pt)==="000000000"&&(v[pt]="day")})}return u.info=X(c,{higherRanks:v,totalRange:S*b}),u}getDateFormat(c,D,it,Q){let W=this.dateFormat("%m-%d %H:%M:%S.%L",D),k="01-01 00:00:00.000",_={millisecond:15,second:12,minute:9,hour:6,day:3},C="millisecond",h=C;for(C in A){if(c===A.week&&+this.dateFormat("%w",D)===it&&W.substr(6)===k.substr(6)){C="week";break}if(A[C]>c){C=h;break}if(_[C]&&W.substr(_[C])!==k.substr(_[C]))break;C!=="week"&&(h=C)}return this.resolveDTLFormat(Q[C]).main}}return H.formatCache={},H}),g(d,"Core/Defaults.js",[d["Core/Chart/ChartDefaults.js"],d["Core/Globals.js"],d["Core/Color/Palettes.js"],d["Core/Time.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{isTouchDevice:X}=R,{fireEvent:q,merge:Z}=J,Y={colors:st.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalPoint:".",numericSymbols:["k","M","G","T","P","E"],resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{buttonTheme:{fill:"#f7f7f7",padding:8,r:2,stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},states:{hover:{fill:"#e6e6e6"},select:{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},disabled:{style:{color:"#cccccc"}}}}},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:L,title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:"",align:"center",widthAdjust:-44},caption:{margin:15,style:{color:"#666666",fontSize:"0.8em"},text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",events:{},layout:"horizontal",itemMarginBottom:2,itemMarginTop:2,labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{style:{fontSize:"0.8em"},activeColor:"#0022ff",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"0.8em",textDecoration:"none",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#666666",textDecoration:"line-through"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontSize:"0.8em",fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:{duration:300,easing:N=>Math.sqrt(1-Math.pow(N-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %e %b, %H:%M:%S.%L",second:"%A, %e %b, %H:%M:%S",minute:"%A, %e %b, %H:%M",hour:"%A, %e %b, %H:%M",day:"%A, %e %b %Y",week:"Week from %A, %e %b %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:X?25:10,headerFormat:'{point.key}
    ',pointFormat:'\u25CF {series.name}: {point.y}
    ',backgroundColor:"#ffffff",borderWidth:void 0,shadow:!0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"0.8em"},useHTML:!1},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"0.6em"},text:"Highcharts.com"}};Y.chart.styledMode=!1;let V=new $(Y.time);return{defaultOptions:Y,defaultTime:V,getOptions:function(){return Y},setOptions:function(N){return q(R,"setOptions",{options:N}),Z(!0,Y,N),(N.time||N.global)&&(R.time?R.time.update(Z(Y.global,Y.time,N.global,N.time)):R.time=V),Y}}}),g(d,"Core/Color/Color.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{isNumber:st,merge:$,pInt:J}=R;class X{static parse(Z){return Z?new X(Z):X.None}constructor(Z){let Y,V,N,U;this.rgba=[NaN,NaN,NaN,NaN],this.input=Z;let T=L.Color;if(T&&T!==X)return new T(Z);if(typeof Z=="object"&&Z.stops!==void 0)this.stops=Z.stops.map(A=>new X(A[1]));else if(typeof Z=="string"){if(this.input=Z=X.names[Z.toLowerCase()]||Z,Z.charAt(0)==="#"){let A=Z.length,M=parseInt(Z.substr(1),16);A===7?V=[(16711680&M)>>16,(65280&M)>>8,255&M,1]:A===4&&(V=[(3840&M)>>4|(3840&M)>>8,(240&M)>>4|240&M,(15&M)<<4|15&M,1])}if(!V)for(N=X.parsers.length;N--&&!V;)(Y=(U=X.parsers[N]).regex.exec(Z))&&(V=U.parse(Y))}V&&(this.rgba=V)}get(Z){let Y=this.input,V=this.rgba;if(typeof Y=="object"&&this.stops!==void 0){let N=$(Y);return N.stops=[].slice.call(N.stops),this.stops.forEach((U,T)=>{N.stops[T]=[N.stops[T][0],U.get(Z)]}),N}return V&&st(V[0])?Z!=="rgb"&&(Z||V[3]!==1)?Z==="a"?`${V[3]}`:"rgba("+V.join(",")+")":"rgb("+V[0]+","+V[1]+","+V[2]+")":Y}brighten(Z){let Y=this.rgba;if(this.stops)this.stops.forEach(function(V){V.brighten(Z)});else if(st(Z)&&Z!==0)for(let V=0;V<3;V++)Y[V]+=J(255*Z),Y[V]<0&&(Y[V]=0),Y[V]>255&&(Y[V]=255);return this}setOpacity(Z){return this.rgba[3]=Z,this}tweenTo(Z,Y){let V=this.rgba,N=Z.rgba;if(!st(V[0])||!st(N[0]))return Z.input||"none";let U=N[3]!==1||V[3]!==1;return(U?"rgba(":"rgb(")+Math.round(N[0]+(V[0]-N[0])*(1-Y))+","+Math.round(N[1]+(V[1]-N[1])*(1-Y))+","+Math.round(N[2]+(V[2]-N[2])*(1-Y))+(U?","+(N[3]+(V[3]-N[3])*(1-Y)):"")+")"}}return X.names={white:"#ffffff",black:"#000000"},X.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),parseFloat(q[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),1]}}],X.None=new X(""),X}),g(d,"Core/Animation/Fx.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{parse:$}=L,{win:J}=R,{isNumber:X,objectEach:q}=st;class Z{constructor(V,N,U){this.pos=NaN,this.options=N,this.elem=V,this.prop=U}dSetter(){let V=this.paths,N=V&&V[0],U=V&&V[1],T=this.now||0,A=[];if(T!==1&&N&&U)if(N.length===U.length&&T<1)for(let M=0;M=H+this.startTime?(this.now=this.end,this.pos=1,this.update(),z[this.prop]=!0,U=!0,q(z,function(c){c!==!0&&(U=!1)}),U&&O&&O.call(M),N=!1):(this.pos=A.easing((T-this.startTime)/H),this.now=this.start+(this.end-this.start)*this.pos,this.update(),N=!0),N}initPath(V,N,U){let T=V.startX,A=V.endX,M=U.slice(),O=V.isArea,H=O?2:1,z=N&&U.length>N.length&&U.hasStackedCliffs,c,D,it,Q,W=N&&N.slice();if(!W||z)return[M,M];function k(C,h){for(;C.length{let it=N(D.options.animation);z=q(A)&&st(A.defer)?O.defer:Math.max(z,it.duration+it.defer),c=Math.min(O.duration,it.duration)}),T.renderer.forExport&&(z=0),{defer:Math.max(0,z-c),duration:Math.min(z,c)}},setAnimation:function(T,A){A.renderer.globalAnimation=V(T,A.options.chart.animation,!0)},stop:U}}),g(d,"Core/Renderer/HTML/AST.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{SVG_NS:st,win:$}=L,{attr:J,createElement:X,css:q,error:Z,isFunction:Y,isString:V,objectEach:N,splat:U}=R,{trustedTypes:T}=$,A=T&&Y(T.createPolicy)&&T.createPolicy("highcharts",{createHTML:z=>z}),M=A?A.createHTML(""):"",O=function(){try{return!!new DOMParser().parseFromString(M,"text/html")}catch(z){return!1}}();class H{static filterUserAttributes(c){return N(c,(D,it)=>{let Q=!0;H.allowedAttributes.indexOf(it)===-1&&(Q=!1),["background","dynsrc","href","lowsrc","src"].indexOf(it)!==-1&&(Q=V(D)&&H.allowedReferences.some(W=>D.indexOf(W)===0)),Q||(Z(33,!1,void 0,{"Invalid attribute in config":`${it}`}),delete c[it]),V(D)&&c[it]&&(c[it]=D.replace(/{let Q=it.split(":").map(k=>k.trim()),W=Q.shift();return W&&Q.length&&(D[W.replace(/-([a-z])/g,k=>k[1].toUpperCase())]=Q.join(":")),D},{})}static setElementHTML(c,D){c.innerHTML=H.emptyHTML,D&&new H(D).addToDOM(c)}constructor(c){this.nodes=typeof c=="string"?this.parseMarkup(c):c}addToDOM(c){return function D(it,Q){let W;return U(it).forEach(function(k){let _,C=k.tagName,h=k.textContent?L.doc.createTextNode(k.textContent):void 0,l=H.bypassHTMLFiltering;if(C)if(C==="#text")_=h;else if(H.allowedTags.indexOf(C)!==-1||l){let u=C==="svg"?st:Q.namespaceURI||st,v=L.doc.createElementNS(u,C),I=k.attributes||{};N(k,function(S,b){b!=="tagName"&&b!=="attributes"&&b!=="children"&&b!=="style"&&b!=="textContent"&&(I[b]=S)}),J(v,l?I:H.filterUserAttributes(I)),k.style&&q(v,k.style),h&&v.appendChild(h),D(k.children||[],v),_=v}else Z(33,!1,void 0,{"Invalid tagName in config":C});_&&Q.appendChild(_),W=_}),W}(this.nodes,c)}parseMarkup(c){let D,it=[];if(c=c.trim().replace(/ style=(["'])/g," data-style=$1"),O)D=new DOMParser().parseFromString(A?A.createHTML(c):c,"text/html");else{let W=X("div");W.innerHTML=c,D={body:W}}let Q=(W,k)=>{let _=W.nodeName.toLowerCase(),C={tagName:_};_==="#text"&&(C.textContent=W.textContent||"");let h=W.attributes;if(h){let l={};[].forEach.call(h,u=>{u.name==="data-style"?C.style=H.parseStyle(u.value):l[u.name]=u.value}),C.attributes=l}if(W.childNodes.length){let l=[];[].forEach.call(W.childNodes,u=>{Q(u,l)}),l.length&&(C.children=l)}k.push(C)};return[].forEach.call(D.body.childNodes,W=>Q(W,it)),it}}return H.allowedAttributes=["alt","aria-controls","aria-describedby","aria-expanded","aria-haspopup","aria-hidden","aria-label","aria-labelledby","aria-live","aria-pressed","aria-readonly","aria-roledescription","aria-selected","class","clip-path","color","colspan","cx","cy","d","dx","dy","disabled","fill","filterUnits","flood-color","flood-opacity","height","href","id","in","in2","markerHeight","markerWidth","offset","opacity","operator","orient","padding","paddingLeft","paddingRight","patternUnits","r","radius","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],H.allowedReferences=["https://","http://","mailto:","/","../","./","#"],H.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feComposite","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMorphology","feOffset","feMerge","feMergeNode","filter","h1","h2","h3","h4","h5","h6","hr","i","img","li","linearGradient","marker","ol","p","path","pattern","pre","rect","small","span","stop","strong","style","sub","sup","svg","table","text","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],H.emptyHTML=M,H.bypassHTMLFiltering=!1,H}),g(d,"Core/Templating.js",[d["Core/Defaults.js"],d["Core/Utilities.js"]],function(L,R){let{defaultOptions:st,defaultTime:$}=L,{extend:J,getNestedProperty:X,isArray:q,isNumber:Z,isObject:Y,pick:V,pInt:N}=R,U={add:(M,O)=>M+O,divide:(M,O)=>O!==0?M/O:"",eq:(M,O)=>M==O,each:function(M){let O=arguments[arguments.length-1];return!!q(M)&&M.map((H,z)=>T(O.body,J(Y(H)?H:{"@this":H},{"@index":z,"@first":z===0,"@last":z===M.length-1}))).join("")},ge:(M,O)=>M>=O,gt:(M,O)=>M>O,if:M=>!!M,le:(M,O)=>M<=O,lt:(M,O)=>MM*O,ne:(M,O)=>M!=O,subtract:(M,O)=>M-O,unless:M=>!M};function T(M="",O,H){let z=/\{([\w\:\.\,;\-\/<>%@"'’= #\(\)]+)\}/g,c=/\(([\w\:\.\,;\-\/<>%@"'= ]+)\)/g,D=[],it=/f$/,Q=/\.(\d)/,W=st.lang,k=H&&H.time||$,_=H&&H.numberFormatter||A,C=(I="")=>{let S;return I==="true"||I!=="false"&&((S=Number(I)).toString()===I?S:X(I,O))},h,l,u=0,v;for(;(h=z.exec(M))!==null;){let I=c.exec(h[1]);I&&(h=I,v=!0),l&&l.isBlock||(l={ctx:O,expression:h[1],find:h[0],isBlock:h[1].charAt(0)==="#",start:h.index,startInner:h.index+h[0].length,length:h[0].length});let S=h[1].split(" ")[0].replace("#","");U[S]&&(l.isBlock&&S===l.fn&&u++,l.fn||(l.fn=S));let b=h[1]==="else";if(l.isBlock&&l.fn&&(h[1]===`/${l.fn}`||b))if(u)!b&&u--;else{let K=l.startInner,ct=M.substr(K,h.index-K);l.body===void 0?(l.body=ct,l.startInner=h.index+h[0].length):l.elseBody=ct,l.find+=ct+h[0],b||(D.push(l),l=void 0)}else l.isBlock||D.push(l);if(I&&!(l!=null&&l.isBlock))break}return D.forEach(I=>{let S,b,{body:K,elseBody:ct,expression:et,fn:dt}=I;if(dt){let pt=[I],bt=et.split(" ");for(b=U[dt].length;b--;)pt.unshift(C(bt[b+1]));S=U[dt].apply(O,pt),I.isBlock&&typeof S=="boolean"&&(S=T(S?K:ct,O,H))}else{let pt=et.split(":");if(S=C(pt.shift()||""),pt.length&&typeof S=="number"){let bt=pt.join(":");if(it.test(bt)){let Mt=parseInt((bt.match(Q)||["","-1"])[1],10);S!==null&&(S=_(S,Mt,W.decimalPoint,bt.indexOf(",")>-1?W.thousandsSep:""))}else S=k.dateFormat(bt,S)}}M=M.replace(I.find,V(S,""))}),v?T(M,O,H):M}function A(M,O,H,z){let c,D;M=+M||0,O=+O;let it=st.lang,Q=(M.toString().split(".")[1]||"").split("e")[0].length,W=M.toString().split("e"),k=O;O===-1?O=Math.min(Q,20):Z(O)?O&&W[1]&&W[1]<0&&((D=O+ +W[1])>=0?(W[0]=(+W[0]).toExponential(D).split("e")[0],O=D):(W[0]=W[0].split(".")[0]||0,M=O<20?(W[0]*Math.pow(10,W[1])).toFixed(O):0,W[1]=0)):O=2;let _=(Math.abs(W[1]?W[0]:M)+Math.pow(10,-Math.max(O,Q)-1)).toFixed(O),C=String(N(_)),h=C.length>3?C.length%3:0;return H=V(H,it.decimalPoint),z=V(z,it.thousandsSep),c=(M<0?"-":"")+(h?C.substr(0,h)+z:""),0>+W[1]&&!k?c="0":c+=C.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+z),O?c+=H+_.slice(-O):+c==0&&(c="0"),W[1]&&+c!=0&&(c+="e"+W[1]),c}return{dateFormat:function(M,O,H){return $.dateFormat(M,O,H)},format:T,helpers:U,numberFormat:A}}),g(d,"Core/Renderer/RendererRegistry.js",[d["Core/Globals.js"]],function(L){var R,st;let $;return(st=R||(R={})).rendererTypes={},st.getRendererType=function(J=$){return st.rendererTypes[J]||st.rendererTypes[$]},st.registerRendererType=function(J,X,q){st.rendererTypes[J]=X,(!$||q)&&($=J,L.Renderer=X)},R}),g(d,"Core/Renderer/RendererUtilities.js",[d["Core/Utilities.js"]],function(L){var R;let{clamp:st,pick:$,pushUnique:J,stableSort:X}=L;return(R||(R={})).distribute=function q(Z,Y,V){let N=Z,U=N.reducedLen||Y,T=(C,h)=>C.target-h.target,A=[],M=Z.length,O=[],H=A.push,z,c,D,it=!0,Q,W,k=0,_;for(z=M;z--;)k+=Z[z].size;if(k>U){for(X(Z,(C,h)=>(h.rank||0)-(C.rank||0)),D=(_=Z[0].rank===Z[Z.length-1].rank)?M/2:-1,c=_?D:M-1;D&&k>U;)Q=Z[z=Math.floor(c)],J(O,z)&&(k-=Q.size),c+=D,_&&c>=Z.length&&(D/=2,c=D);O.sort((C,h)=>h-C).forEach(C=>H.apply(A,Z.splice(C,1)))}for(X(Z,T),Z=Z.map(C=>({size:C.size,targets:[C.target],align:$(C.align,.5)}));it;){for(z=Z.length;z--;)Q=Z[z],W=(Math.min.apply(0,Q.targets)+Math.max.apply(0,Q.targets))/2,Q.pos=st(W-Q.size*Q.align,0,Y-Q.size);for(z=Z.length,it=!1;z--;)z>0&&Z[z-1].pos+Z[z-1].size>Z[z].pos&&(Z[z-1].size+=Z[z].size,Z[z-1].targets=Z[z-1].targets.concat(Z[z].targets),Z[z-1].align=.5,Z[z-1].pos+Z[z-1].size>Y&&(Z[z-1].pos=Y-Z[z-1].size),Z.splice(z,1),it=!0)}return H.apply(N,A),z=0,Z.some(C=>{let h=0;return(C.targets||[]).some(()=>(N[z].pos=C.pos+h,V!==void 0&&Math.abs(N[z].pos-N[z].target)>V?(N.slice(0,z+1).forEach(l=>delete l.pos),N.reducedLen=(N.reducedLen||Y)-.1*Y,N.reducedLen>.1*Y&&q(N,Y,V),!0):(h+=N[z].size,z++,!1)))}),X(N,T),N},R}),g(d,"Core/Renderer/SVG/SVGElement.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{animate:J,animObject:X,stop:q}=L,{deg2rad:Z,doc:Y,svg:V,SVG_NS:N,win:U}=st,{addEvent:T,attr:A,createElement:M,crisp:O,css:H,defined:z,erase:c,extend:D,fireEvent:it,isArray:Q,isFunction:W,isObject:k,isString:_,merge:C,objectEach:h,pick:l,pInt:u,pushUnique:v,replaceNested:I,syncTimeout:S,uniqueKey:b}=$;class K{_defaultGetter(et){let dt=l(this[et+"Value"],this[et],this.element?this.element.getAttribute(et):null,0);return/^-?[\d\.]+$/.test(dt)&&(dt=parseFloat(dt)),dt}_defaultSetter(et,dt,pt){pt.setAttribute(dt,et)}add(et){let dt,pt=this.renderer,bt=this.element;return et&&(this.parentGroup=et),this.textStr!==void 0&&this.element.nodeName==="text"&&pt.buildText(this),this.added=!0,(!et||et.handleZ||this.zIndex)&&(dt=this.zIndexSetter()),dt||(et?et.element:pt.box).appendChild(bt),this.onAdd&&this.onAdd(),this}addClass(et,dt){let pt=dt?"":this.attr("class")||"";return(et=(et||"").split(/ /g).reduce(function(bt,Mt){return pt.indexOf(Mt)===-1&&bt.push(Mt),bt},pt?[pt]:[]).join(" "))!==pt&&this.attr("class",et),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(et,dt,pt,bt=!0){let Mt,w,B,tt,nt={},x=this.renderer,y=x.alignedObjects,j=!!et;et?(this.alignOptions=et,this.alignByTranslate=dt,this.alignTo=pt):(et=this.alignOptions||{},dt=this.alignByTranslate,pt=this.alignTo);let lt=!pt||_(pt)?pt||"renderer":void 0;lt&&(j&&v(y,this),pt=void 0);let rt=l(pt,x[lt],x),gt=et.align,vt=et.verticalAlign;return Mt=(rt.x||0)+(et.x||0),w=(rt.y||0)+(et.y||0),gt==="right"?B=1:gt==="center"&&(B=2),B&&(Mt+=((rt.width||0)-(et.width||0))/B),nt[dt?"translateX":"x"]=Math.round(Mt),vt==="bottom"?tt=1:vt==="middle"&&(tt=2),tt&&(w+=((rt.height||0)-(et.height||0))/tt),nt[dt?"translateY":"y"]=Math.round(w),bt&&(this[this.placed?"animate":"attr"](nt),this.placed=!0),this.alignAttr=nt,this}alignSetter(et){let dt={left:"start",center:"middle",right:"end"};dt[et]&&(this.alignValue=et,this.element.setAttribute("text-anchor",dt[et]))}animate(et,dt,pt){let bt=X(l(dt,this.renderer.globalAnimation,!0)),Mt=bt.defer;return Y.hidden&&(bt.duration=0),bt.duration!==0?(pt&&(bt.complete=pt),S(()=>{this.element&&J(this,et,bt)},Mt)):(this.attr(et,void 0,pt||bt.complete),h(et,function(w,B){bt.step&&bt.step.call(this,w,{prop:B,pos:1,elem:this})},this)),this}applyTextOutline(et){let dt=this.element;et.indexOf("contrast")!==-1&&(et=et.replace(/contrast/g,this.renderer.getContrast(dt.style.fill)));let pt=et.split(" "),bt=pt[pt.length-1],Mt=pt[0];if(Mt&&Mt!=="none"&&st.svg){this.fakeTS=!0,Mt=Mt.replace(/(^[\d\.]+)(.*?)$/g,function(x,y,j){return 2*Number(y)+j}),this.removeTextOutline();let w=Y.createElementNS(N,"tspan");A(w,{class:"highcharts-text-outline",fill:bt,stroke:bt,"stroke-width":Mt,"stroke-linejoin":"round"});let B=dt.querySelector("textPath")||dt;[].forEach.call(B.childNodes,x=>{let y=x.cloneNode(!0);y.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(j=>y.removeAttribute(j)),w.appendChild(y)});let tt=0;[].forEach.call(B.querySelectorAll("text tspan"),x=>{tt+=Number(x.getAttribute("dy"))});let nt=Y.createElementNS(N,"tspan");nt.textContent="\u200B",A(nt,{x:Number(dt.getAttribute("x")),dy:-tt}),w.appendChild(nt),B.insertBefore(w,B.firstChild)}}attr(et,dt,pt,bt){let{element:Mt}=this,w=K.symbolCustomAttribs,B,tt,nt=this,x;return typeof et=="string"&&dt!==void 0&&(B=et,(et={})[B]=dt),typeof et=="string"?nt=(this[et+"Getter"]||this._defaultGetter).call(this,et,Mt):(h(et,function(y,j){x=!1,bt||q(this,j),this.symbolName&&w.indexOf(j)!==-1&&(tt||(this.symbolAttr(et),tt=!0),x=!0),this.rotation&&(j==="x"||j==="y")&&(this.doTransform=!0),x||(this[j+"Setter"]||this._defaultSetter).call(this,y,j,Mt)},this),this.afterSetters()),pt&&pt.call(this),nt}clip(et){if(et&&!et.clipPath){let dt=b()+"-",pt=this.renderer.createElement("clipPath").attr({id:dt}).add(this.renderer.defs);D(et,{clipPath:pt,id:dt,count:0}),et.add(pt)}return this.attr("clip-path",et?`url(${this.renderer.url}#${et.id})`:"none")}crisp(et,dt){dt=Math.round(dt||et.strokeWidth||0);let pt=et.x||this.x||0,bt=et.y||this.y||0,Mt=(et.width||this.width||0)+pt,w=(et.height||this.height||0)+bt,B=O(pt,dt),tt=O(bt,dt);return D(et,{x:B,y:tt,width:O(Mt,dt)-B,height:O(w,dt)-tt}),z(et.strokeWidth)&&(et.strokeWidth=dt),et}complexColor(et,dt,pt){let bt=this.renderer,Mt,w,B,tt,nt,x,y,j,lt,rt,gt=[],vt;it(this.renderer,"complexColor",{args:arguments},function(){if(et.radialGradient?w="radialGradient":et.linearGradient&&(w="linearGradient"),w){if(B=et[w],nt=bt.gradients,x=et.stops,lt=pt.radialReference,Q(B)&&(et[w]=B={x1:B[0],y1:B[1],x2:B[2],y2:B[3],gradientUnits:"userSpaceOnUse"}),w==="radialGradient"&<&&!z(B.gradientUnits)&&(tt=B,B=C(B,bt.getRadialAttr(lt,tt),{gradientUnits:"userSpaceOnUse"})),h(B,function(Ot,At){At!=="id"&>.push(At,Ot)}),h(x,function(Ot){gt.push(Ot)}),nt[gt=gt.join(",")])rt=nt[gt].attr("id");else{B.id=rt=b();let Ot=nt[gt]=bt.createElement(w).attr(B).add(bt.defs);Ot.radAttr=tt,Ot.stops=[],x.forEach(function(At){At[1].indexOf("rgba")===0?(y=(Mt=R.parse(At[1])).get("rgb"),j=Mt.get("a")):(y=At[1],j=1);let $t=bt.createElement("stop").attr({offset:At[0],"stop-color":y,"stop-opacity":j}).add(Ot);Ot.stops.push($t)})}vt="url("+bt.url+"#"+rt+")",pt.setAttribute(dt,vt),pt.gradient=gt,et.toString=function(){return vt}}})}css(et){let dt=this.styles,pt={},bt=this.element,Mt,w=!dt;if(dt&&h(et,function(B,tt){dt&&dt[tt]!==B&&(pt[tt]=B,w=!0)}),w){dt&&(et=D(dt,pt)),et.width===null||et.width==="auto"?delete this.textWidth:bt.nodeName.toLowerCase()==="text"&&et.width&&(Mt=this.textWidth=u(et.width)),D(this.styles,et),Mt&&!V&&this.renderer.forExport&&delete et.width;let B=C(et);bt.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","width"].forEach(tt=>B&&delete B[tt]),B.color&&(B.fill=B.color)),H(bt,B)}return this.added&&(this.element.nodeName==="text"&&this.renderer.buildText(this),et.textOutline&&this.applyTextOutline(et.textOutline)),this}dashstyleSetter(et){let dt,pt=this["stroke-width"];if(pt==="inherit"&&(pt=1),et=et&&et.toLowerCase()){let bt=et.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(dt=bt.length;dt--;)bt[dt]=""+u(bt[dt])*l(pt,NaN);et=bt.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",et)}}destroy(){var tt;let et=this,dt=et.element||{},pt=et.renderer,bt=dt.ownerSVGElement,Mt=dt.nodeName==="SPAN"&&et.parentGroup||void 0,w,B;if(dt.onclick=dt.onmouseout=dt.onmouseover=dt.onmousemove=dt.point=null,q(et),et.clipPath&&bt){let nt=et.clipPath;[].forEach.call(bt.querySelectorAll("[clip-path],[CLIP-PATH]"),function(x){x.getAttribute("clip-path").indexOf(nt.element.id)>-1&&x.removeAttribute("clip-path")}),et.clipPath=nt.destroy()}if(et.connector=(tt=et.connector)==null?void 0:tt.destroy(),et.stops){for(B=0;BMt&&Mt.join?(w?bt+" ":"")+Mt.join(" "):(Mt||"").toString(),"")),/(NaN| {2}|^$)/.test(et)&&(et="M 0 0"),this[dt]!==et&&(pt.setAttribute(dt,et),this[dt]=et)}fillSetter(et,dt,pt){typeof et=="string"?pt.setAttribute(dt,et):et&&this.complexColor(et,dt,pt)}hrefSetter(et,dt,pt){pt.setAttributeNS("http://www.w3.org/1999/xlink",dt,et)}getBBox(et,dt){let pt,bt,Mt,w,{alignValue:B,element:tt,renderer:nt,styles:x,textStr:y}=this,{cache:j,cacheKeys:lt}=nt,rt=tt.namespaceURI===this.SVG_NS,gt=l(dt,this.rotation,0),vt=nt.styledMode?tt&&K.prototype.getStyle.call(tt,"font-size"):x.fontSize;if(z(y)&&((w=y.toString()).indexOf("<")===-1&&(w=w.replace(/\d/g,"0")),w+=["",nt.rootFontSize,vt,gt,this.textWidth,B,x.textOverflow,x.fontWeight].join(",")),w&&!et&&(pt=j[w]),!pt||pt.polygon){if(rt||nt.forExport){try{Mt=this.fakeTS&&function(At){let $t=tt.querySelector(".highcharts-text-outline");$t&&H($t,{display:At})},W(Mt)&&Mt("none"),pt=tt.getBBox?D({},tt.getBBox()):{width:tt.offsetWidth,height:tt.offsetHeight,x:0,y:0},W(Mt)&&Mt("")}catch(At){}(!pt||pt.width<0)&&(pt={x:0,y:0,width:0,height:0})}else pt=this.htmlGetBBox();bt=pt.height,rt&&(pt.height=bt={"11px,17":14,"13px,20":16}[`${vt||""},${Math.round(bt)}`]||bt),gt&&(pt=this.getRotatedBox(pt,gt));let Ot={bBox:pt};it(this,"afterGetBBox",Ot),pt=Ot.bBox}if(w&&(y===""||pt.height>0)){for(;lt.length>250;)delete j[lt.shift()];j[w]||lt.push(w),j[w]=pt}return pt}getRotatedBox(et,dt){let{x:pt,y:bt,width:Mt,height:w}=et,{alignValue:B,translateY:tt,rotationOriginX:nt=0,rotationOriginY:x=0}=this,y={right:1,center:.5}[B||0]||0,j=Number(this.element.getAttribute("y")||0)-(tt?0:bt),lt=dt*Z,rt=(dt-90)*Z,gt=Math.cos(lt),vt=Math.sin(lt),Ot=Mt*gt,At=Mt*vt,$t=Math.cos(rt),Xt=Math.sin(rt),[[Ct,wt],[Dt,jt]]=[nt,x].map(Jt=>[Jt-Jt*gt,Jt*vt]),re=pt+y*(Mt-Ot)+Ct+jt+j*$t,le=re+Ot,Gt=le-w*$t,he=Gt-Ot,ve=bt+j-y*At-wt+Dt+j*Xt,Ce=ve+At,Te=Ce-w*Xt,Ke=Te-At,rn=Math.min(re,le,Gt,he),un=Math.min(ve,Ce,Te,Ke),Qt=Math.max(re,le,Gt,he)-rn,Kt=Math.max(ve,Ce,Te,Ke)-un;return{x:rn,y:un,width:Qt,height:Kt,polygon:[[re,ve],[le,Ce],[Gt,Te],[he,Ke]]}}getStyle(et){return U.getComputedStyle(this.element||this,"").getPropertyValue(et)}hasClass(et){return(""+this.attr("class")).split(" ").indexOf(et)!==-1}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(et,dt){this.onEvents={},this.opacity=1,this.SVG_NS=N,this.element=dt==="span"||dt==="body"?M(dt):Y.createElementNS(this.SVG_NS,dt),this.renderer=et,this.styles={},it(this,"afterInit")}on(et,dt){let{onEvents:pt}=this;return pt[et]&&pt[et](),pt[et]=T(this.element,et,dt),this}opacitySetter(et,dt,pt){let bt=Number(Number(et).toFixed(3));this.opacity=bt,pt.setAttribute(dt,bt)}reAlign(){var et;(et=this.alignOptions)!=null&&et.width&&this.alignOptions.align!=="left"&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(et){return this.attr("class",(""+this.attr("class")).replace(_(et)?RegExp(`(^| )${et}( |$)`):et," ").replace(/ +/g," ").trim())}removeTextOutline(){let et=this.element.querySelector("tspan.highcharts-text-outline");et&&this.safeRemoveChild(et)}safeRemoveChild(et){let dt=et.parentNode;dt&&dt.removeChild(et)}setRadialReference(et){let dt=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=et,dt&&dt.radAttr&&dt.animate(this.renderer.getRadialAttr(et,dt.radAttr)),this}shadow(et){var Mt;let{renderer:dt}=this,pt=C(((Mt=this.parentGroup)==null?void 0:Mt.rotation)===90?{offsetX:-1,offsetY:-1}:{},k(et)?et:{}),bt=dt.shadowDefinition(pt);return this.attr({filter:et?`url(${dt.url}#${bt})`:"none"})}show(et=!0){return this.attr({visibility:et?"inherit":"visible"})}"stroke-widthSetter"(et,dt,pt){this[dt]=et,pt.setAttribute(dt,et)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let et=this.getStyle("stroke-width"),dt=0,pt;return/px$/.test(et)?dt=u(et):et!==""&&(A(pt=Y.createElementNS(N,"rect"),{width:et,"stroke-width":0}),this.element.parentNode.appendChild(pt),dt=pt.getBBox().width,pt.parentNode.removeChild(pt)),dt}symbolAttr(et){let dt=this;K.symbolCustomAttribs.forEach(function(pt){dt[pt]=l(et[pt],dt[pt])}),dt.attr({d:dt.renderer.symbols[dt.symbolName](dt.x,dt.y,dt.width,dt.height,dt)})}textSetter(et){et!==this.textStr&&(delete this.textPxLength,this.textStr=et,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(et){let dt=this.element,pt=dt.getElementsByTagName("title")[0]||Y.createElementNS(this.SVG_NS,"title");dt.insertBefore?dt.insertBefore(pt,dt.firstChild):dt.appendChild(pt),pt.textContent=I(l(et,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let et=this.element;return et.parentNode.appendChild(et),this}translate(et,dt){return this.attr({translateX:et,translateY:dt})}updateTransform(et="transform"){var j;let{element:dt,matrix:pt,rotation:bt=0,rotationOriginX:Mt,rotationOriginY:w,scaleX:B,scaleY:tt,translateX:nt=0,translateY:x=0}=this,y=["translate("+nt+","+x+")"];z(pt)&&y.push("matrix("+pt.join(",")+")"),bt&&(y.push("rotate("+bt+" "+l(Mt,dt.getAttribute("x"),0)+" "+l(w,dt.getAttribute("y")||0)+")"),((j=this.text)==null?void 0:j.element.tagName)==="SPAN"&&this.text.attr({rotation:bt,rotationOriginX:(Mt||0)-this.padding,rotationOriginY:(w||0)-this.padding})),(z(B)||z(tt))&&y.push("scale("+l(B,1)+" "+l(tt,1)+")"),y.length&&!(this.text||this).textPath&&dt.setAttribute(et,y.join(" "))}visibilitySetter(et,dt,pt){et==="inherit"?pt.removeAttribute(dt):this[dt]!==et&&pt.setAttribute(dt,et),this[dt]=et}xGetter(et){return this.element.nodeName==="circle"&&(et==="x"?et="cx":et==="y"&&(et="cy")),this._defaultGetter(et)}zIndexSetter(et,dt){let pt=this.renderer,bt=this.parentGroup,Mt=(bt||pt).element||pt.box,w=this.element,B=Mt===pt.box,tt,nt,x,y=!1,j,lt=this.added,rt;if(z(et)?(w.setAttribute("data-z-index",et),et=+et,this[dt]===et&&(lt=!1)):z(this[dt])&&w.removeAttribute("data-z-index"),this[dt]=et,lt){for((et=this.zIndex)&&bt&&(bt.handleZ=!0),rt=(tt=Mt.childNodes).length-1;rt>=0&&!y;rt--)j=!z(x=(nt=tt[rt]).getAttribute("data-z-index")),nt!==w&&(et<0&&j&&!B&&!rt?(Mt.insertBefore(w,tt[rt]),y=!0):(u(x)<=et||j&&(!z(et)||et>=0))&&(Mt.insertBefore(w,tt[rt+1]),y=!0));y||(Mt.insertBefore(w,tt[B?3:0]),y=!0)}return y}}return K.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],K.prototype.strokeSetter=K.prototype.fillSetter,K.prototype.yGetter=K.prototype.xGetter,K.prototype.matrixSetter=K.prototype.rotationOriginXSetter=K.prototype.rotationOriginYSetter=K.prototype.rotationSetter=K.prototype.scaleXSetter=K.prototype.scaleYSetter=K.prototype.translateXSetter=K.prototype.translateYSetter=K.prototype.verticalAlignSetter=function(ct,et){this[et]=ct,this.doTransform=!0},K}),g(d,"Core/Renderer/SVG/SVGLabel.js",[d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R){let{defined:st,extend:$,isNumber:J,merge:X,pick:q,removeEvent:Z}=R;class Y extends L{constructor(N,U,T,A,M,O,H,z,c,D){let it;super(N,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=U,this.x=T,this.y=A,this.anchorX=O,this.anchorY=H,this.baseline=c,this.className=D,this.addClass(D==="button"?"highcharts-no-tooltip":"highcharts-label"),D&&this.addClass("highcharts-"+D),this.text=N.text(void 0,0,0,z).attr({zIndex:1}),typeof M=="string"&&((it=/^url\((.*?)\)$/.test(M))||this.renderer.symbols[M])&&(this.symbolKey=M),this.bBox=Y.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=N.styledMode||it,this.deferredAttr={},this.alignFactor=0}alignSetter(N){let U={left:0,center:.5,right:1}[N];U!==this.alignFactor&&(this.alignFactor=U,this.bBox&&J(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(N,U){this.anchorX=N,this.boxAttr(U,Math.round(N)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(N,U){this.anchorY=N,this.boxAttr(U,N-this.ySetting)}boxAttr(N,U){this.box?this.box.attr(N,U):this.deferredAttr[N]=U}css(N){if(N){let U={};N=X(N),Y.textProps.forEach(T=>{N[T]!==void 0&&(U[T]=N[T],delete N[T])}),this.text.css(U),"fontSize"in U||"fontWeight"in U?this.updateTextPadding():("width"in U||"textOverflow"in U)&&this.updateBoxSize()}return L.prototype.css.call(this,N)}destroy(){Z(this.element,"mouseenter"),Z(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),L.prototype.destroy.call(this)}fillSetter(N,U){N&&(this.needsBox=!0),this.fill=N,this.boxAttr(U,N)}getBBox(N,U){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:T,height:A=0,translateX:M=0,translateY:O=0,width:H=0}=this,z=q(this.paddingLeft,T),c=U!=null?U:this.rotation||0,D={width:H,height:A,x:M+this.bBox.x-z,y:O+this.bBox.y-T+this.baselineOffset};return c&&(D=this.getRotatedBox(D,c)),D}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(N){this.heightSetting=N,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:q(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&st(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(N,U){J(N)?N!==this[U]&&(this[U]=N,this.updateTextPadding()):this[U]=void 0}rSetter(N,U){this.boxAttr(U,N)}strokeSetter(N,U){this.stroke=N,this.boxAttr(U,N)}"stroke-widthSetter"(N,U){N&&(this.needsBox=!0),this["stroke-width"]=N,this.boxAttr(U,N)}"text-alignSetter"(N){this.textAlign=N}textSetter(N){N!==void 0&&this.text.attr({text:N}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let N,U=this.text,T={},A=this.padding,M=this.bBox=(!J(this.widthSetting)||!J(this.heightSetting)||this.textAlign)&&st(U.textStr)?U.getBBox(void 0,0):Y.emptyBBox;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||M.height||0)+2*A;let O=this.renderer.fontMetrics(U);if(this.baselineOffset=A+Math.min((this.text.firstLineMetrics||O).b,M.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-O.h)/2),this.needsBox&&!U.textPath){if(!this.box){let H=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();H.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),H.add(this)}N=this.getCrispAdjust(),T.x=N,T.y=(this.baseline?-this.baselineOffset:0)+N,T.width=Math.round(this.width),T.height=Math.round(this.height),this.box.attr($(T,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let N=this.text;if(!N.textPath){this.updateBoxSize();let U=this.baseline?0:this.baselineOffset,T=q(this.paddingLeft,this.padding);st(this.widthSetting)&&this.bBox&&(this.textAlign==="center"||this.textAlign==="right")&&(T+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(T!==N.x||U!==N.y)&&(N.attr("x",T),N.hasBoxWidthChanged&&(this.bBox=N.getBBox(!0)),U!==void 0&&N.attr("y",U)),N.x=T,N.y=U}}widthSetter(N){this.widthSetting=J(N)?N:void 0,this.doUpdate=!0}getPaddedWidth(){let N=this.padding,U=q(this.paddingLeft,N),T=q(this.paddingRight,N);return(this.widthSetting||this.bBox.width||0)+U+T}xSetter(N){this.x=N,this.alignFactor&&(N-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(N),this.attr("translateX",this.xSetting)}ySetter(N){this.ySetting=this.y=Math.round(N),this.attr("translateY",this.ySetting)}}return Y.emptyBBox={width:0,height:0,x:0,y:0},Y.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],Y}),g(d,"Core/Renderer/SVG/Symbols.js",[d["Core/Utilities.js"]],function(L){let{defined:R,isNumber:st,pick:$}=L;function J(Z,Y,V,N,U){let T=[];if(U){let A=U.start||0,M=$(U.r,V),O=$(U.r,N||V),H=2e-4/(U.borderRadius?1:Math.max(M,1)),z=Math.abs((U.end||0)-A-2*Math.PI)0&&O0)return H;if(Z+M>V-A)if(O>Y+A&&OY+A&&O0){let z=ON&&MA&&H.splice(1,1,["L",M-6,Y],["L",M,Y-6],["L",M+6,Y],["L",V-T,Y]);return H},circle:function(Z,Y,V,N){return J(Z+V/2,Y+N/2,V/2,N/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N/2],["L",Z+V/2,Y+N],["L",Z,Y+N/2],["Z"]]},rect:X,roundedRect:q,square:X,triangle:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N],["L",Z,Y+N],["Z"]]},"triangle-down":function(Z,Y,V,N){return[["M",Z,Y],["L",Z+V,Y],["L",Z+V/2,Y+N],["Z"]]}}}),g(d,"Core/Renderer/SVG/TextBuilder.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{doc:$,SVG_NS:J,win:X}=R,{attr:q,extend:Z,fireEvent:Y,isString:V,objectEach:N,pick:U}=st;return class{constructor(T){let A=T.styles;this.renderer=T.renderer,this.svgElement=T,this.width=T.textWidth,this.textLineHeight=A&&A.lineHeight,this.textOutline=A&&A.textOutline,this.ellipsis=!!(A&&A.textOverflow==="ellipsis"),this.noWrap=!!(A&&A.whiteSpace==="nowrap")}buildSVG(){let T=this.svgElement,A=T.element,M=T.renderer,O=U(T.textStr,"").toString(),H=O.indexOf("<")!==-1,z=A.childNodes,c=!T.added&&M.box,D=[O,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,T.getStyle("font-size"),this.width].join(",");if(D!==T.textCache){T.textCache=D,delete T.actualWidth;for(let it=z.length;it--;)A.removeChild(z[it]);if(H||this.ellipsis||this.width||T.textPath||O.indexOf(" ")!==-1&&(!this.noWrap||//g.test(O))){if(O!==""){c&&c.appendChild(A);let it=new L(O);this.modifyTree(it.nodes),it.addToDOM(A),this.modifyDOM(),this.ellipsis&&(A.textContent||"").indexOf("\u2026")!==-1&&T.attr("title",this.unescapeEntities(T.textStr||"",["<",">"])),c&&c.removeChild(A)}}else A.appendChild($.createTextNode(this.unescapeEntities(O)));V(this.textOutline)&&T.applyTextOutline&&T.applyTextOutline(this.textOutline)}}modifyDOM(){let T,A=this.svgElement,M=q(A.element,"x");for(A.firstLineMetrics=void 0;(T=A.element.firstChild)&&/^[\s\u200B]*$/.test(T.textContent||" ");)A.element.removeChild(T);[].forEach.call(A.element.querySelectorAll("tspan.highcharts-br"),(c,D)=>{c.nextSibling&&c.previousSibling&&(D===0&&c.previousSibling.nodeType===1&&(A.firstLineMetrics=A.renderer.fontMetrics(c.previousSibling)),q(c,{dy:this.getLineHeight(c.nextSibling),x:M}))});let O=this.width||0;if(!O)return;let H=(c,D)=>{let it=c.textContent||"",Q=it.replace(/([^\^])-/g,"$1- ").split(" "),W=!this.noWrap&&(Q.length>1||A.element.childNodes.length>1),k=this.getLineHeight(D),_=0,C=A.actualWidth;if(this.ellipsis)it&&this.truncate(c,it,void 0,0,Math.max(0,O-.8*k),(h,l)=>h.substring(0,l)+"\u2026");else if(W){let h=[],l=[];for(;D.firstChild&&D.firstChild!==c;)l.push(D.firstChild),D.removeChild(D.firstChild);for(;Q.length;)Q.length&&!this.noWrap&&_>0&&(h.push(c.textContent||""),c.textContent=Q.join(" ").replace(/- /g,"-")),this.truncate(c,void 0,Q,_===0&&C||0,O,(u,v)=>Q.slice(0,v).join(" ").replace(/- /g,"-")),C=A.actualWidth,_++;l.forEach(u=>{D.insertBefore(u,c)}),h.forEach(u=>{D.insertBefore($.createTextNode(u),c);let v=$.createElementNS(J,"tspan");v.textContent="\u200B",q(v,{dy:k,x:M}),D.insertBefore(v,c)})}},z=c=>{[].slice.call(c.childNodes).forEach(D=>{D.nodeType===X.Node.TEXT_NODE?H(D,c):(D.className.baseVal.indexOf("highcharts-br")!==-1&&(A.actualWidth=0),z(D))})};z(A.element)}getLineHeight(T){let A=T.nodeType===X.Node.TEXT_NODE?T.parentElement:T;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(A||this.svgElement.element).h}modifyTree(T){let A=(M,O)=>{let{attributes:H={},children:z,style:c={},tagName:D}=M,it=this.renderer.styledMode;if(D==="b"||D==="strong"?it?H.class="highcharts-strong":c.fontWeight="bold":(D==="i"||D==="em")&&(it?H.class="highcharts-emphasized":c.fontStyle="italic"),c&&c.color&&(c.fill=c.color),D==="br"){H.class="highcharts-br",M.textContent="\u200B";let Q=T[O+1];Q&&Q.textContent&&(Q.textContent=Q.textContent.replace(/^ +/gm,""))}else D==="a"&&z&&z.some(Q=>Q.tagName==="#text")&&(M.children=[{children:z,tagName:"tspan"}]);D!=="#text"&&D!=="a"&&(M.tagName="tspan"),Z(M,{attributes:H,style:c}),z&&z.filter(Q=>Q.tagName!=="#text").forEach(A)};T.forEach(A),Y(this.svgElement,"afterModifyTree",{nodes:T})}truncate(T,A,M,O,H,z){let c,D,it=this.svgElement,{rotation:Q}=it,W=[],k=M?1:0,_=(A||M||"").length,C=_,h=function(l,u){let v=u||l,I=T.parentNode;if(I&&W[v]===void 0&&I.getSubStringLength)try{W[v]=O+I.getSubStringLength(0,M?v+1:v)}catch(S){}return W[v]};if(it.rotation=0,O+(D=h(T.textContent.length))>H){for(;k<=_;)C=Math.ceil((k+_)/2),M&&(c=z(M,C)),D=h(C,c&&c.length-1),k===_?k=_+1:D>H?_=C-1:k=C;_===0?T.textContent="":A&&_===A.length-1||(T.textContent=c||z(A||M,C))}M&&M.splice(0,C),it.actualWidth=D,it.rotation=Q}unescapeEntities(T,A){return N(this.renderer.escapes,function(M,O){A&&A.indexOf(M)!==-1||(T=T.toString().replace(RegExp(M,"g"),O))}),T}}}),g(d,"Core/Renderer/SVG/SVGRenderer.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Defaults.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGLabel.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Renderer/SVG/TextBuilder.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let N,{defaultOptions:U}=R,{charts:T,deg2rad:A,doc:M,isFirefox:O,isMS:H,isWebKit:z,noop:c,SVG_NS:D,symbolSizes:it,win:Q}=$,{addEvent:W,attr:k,createElement:_,crisp:C,css:h,defined:l,destroyObjectProperties:u,extend:v,isArray:I,isNumber:S,isObject:b,isString:K,merge:ct,pick:et,pInt:dt,replaceNested:pt,uniqueKey:bt}=V;class Mt{constructor(B,tt,nt,x,y,j,lt){let rt,gt,vt=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),Ot=vt.element;lt||vt.css(this.getStyle(x||{})),B.appendChild(Ot),k(B,"dir","ltr"),B.innerHTML.indexOf("xmlns")===-1&&k(Ot,"xmlns",this.SVG_NS),this.box=Ot,this.boxWrapper=vt,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(M.createTextNode("Created with Highcharts 11.4.8")),this.defs=this.createElement("defs").add(),this.allowHTML=j,this.forExport=y,this.styledMode=lt,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=vt.getStyle("font-size"),this.setSize(tt,nt,!1),O&&B.getBoundingClientRect&&((rt=function(){h(B,{left:0,top:0}),gt=B.getBoundingClientRect(),h(B,{left:Math.ceil(gt.left)-gt.left+"px",top:Math.ceil(gt.top)-gt.top+"px"})})(),this.unSubPixelFix=W(Q,"resize",rt))}definition(B){return new L([B]).addToDOM(this.defs.element)}getReferenceURL(){if((O||z)&&M.getElementsByTagName("base").length){if(!l(N)){let B=bt(),tt=new L([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:B},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${B})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(M.body);h(tt,{position:"fixed",top:0,left:0,zIndex:9e5});let nt=M.elementFromPoint(6,6);N=(nt&&nt.id)==="hitme",M.body.removeChild(tt)}if(N)return pt(Q.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(B){return this.style=v({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},B),this.style}setStyle(B){this.boxWrapper.css(this.getStyle(B))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let B=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),u(this.gradients||{}),this.gradients=null,this.defs=B.destroy(),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null,null}createElement(B){return new this.Element(this,B)}getRadialAttr(B,tt){return{cx:B[0]-B[2]/2+(tt.cx||0)*B[2],cy:B[1]-B[2]/2+(tt.cy||0)*B[2],r:(tt.r||0)*B[2]}}shadowDefinition(B){let tt=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(B).map(x=>`${x}-${B[x]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),nt=ct({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},B);return this.defs.element.querySelector(`#${tt}`)||this.definition({tagName:"filter",attributes:{id:tt,filterUnits:nt.filterUnits},children:this.getShadowFilterContent(nt)}),tt}getShadowFilterContent(B){return[{tagName:"feDropShadow",attributes:{dx:B.offsetX,dy:B.offsetY,"flood-color":B.color,"flood-opacity":Math.min(5*B.opacity,1),stdDeviation:B.width/2}}]}buildText(B){new Y(B).buildSVG()}getContrast(B){let tt=st.parse(B).rgba.map(x=>{let y=x/255;return y<=.03928?y/12.92:Math.pow((y+.055)/1.055,2.4)}),nt=.2126*tt[0]+.7152*tt[1]+.0722*tt[2];return 1.05/(nt+.05)>(nt+.05)/.05?"#FFFFFF":"#000000"}button(B,tt,nt,x,y={},j,lt,rt,gt,vt){let Ot=this.label(B,tt,nt,gt,void 0,void 0,vt,void 0,"button"),At=this.styledMode,$t=arguments,Xt=0;y=ct(U.global.buttonTheme,y),At&&(delete y.fill,delete y.stroke,delete y["stroke-width"]);let Ct=y.states||{},wt=y.style||{};delete y.states,delete y.style;let Dt=[L.filterUserAttributes(y)],jt=[wt];return At||["hover","select","disabled"].forEach((re,le)=>{Dt.push(ct(Dt[0],L.filterUserAttributes($t[le+5]||Ct[re]||{}))),jt.push(Dt[le+1].style),delete Dt[le+1].style}),W(Ot.element,H?"mouseover":"mouseenter",function(){Xt!==3&&Ot.setState(1)}),W(Ot.element,H?"mouseout":"mouseleave",function(){Xt!==3&&Ot.setState(Xt)}),Ot.setState=(re=0)=>{if(re!==1&&(Ot.state=Xt=re),Ot.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][re]),!At){Ot.attr(Dt[re]);let le=jt[re];b(le)&&Ot.css(le)}},Ot.attr(Dt[0]),!At&&(Ot.css(v({cursor:"default"},wt)),vt&&Ot.text.css({pointerEvents:"none"})),Ot.on("touchstart",re=>re.stopPropagation()).on("click",function(re){Xt!==3&&x.call(Ot,re)})}crispLine(B,tt){let[nt,x]=B;return l(nt[1])&&nt[1]===x[1]&&(nt[1]=x[1]=C(nt[1],tt)),l(nt[2])&&nt[2]===x[2]&&(nt[2]=x[2]=C(nt[2],tt)),B}path(B){let tt=this.styledMode?{}:{fill:"none"};return I(B)?tt.d=B:b(B)&&v(tt,B),this.createElement("path").attr(tt)}circle(B,tt,nt){let x=b(B)?B:B===void 0?{}:{x:B,y:tt,r:nt},y=this.createElement("circle");return y.xSetter=y.ySetter=function(j,lt,rt){rt.setAttribute("c"+lt,j)},y.attr(x)}arc(B,tt,nt,x,y,j){let lt;b(B)?(tt=(lt=B).y,nt=lt.r,x=lt.innerR,y=lt.start,j=lt.end,B=lt.x):lt={innerR:x,start:y,end:j};let rt=this.symbol("arc",B,tt,nt,nt,lt);return rt.r=nt,rt}rect(B,tt,nt,x,y,j){let lt=b(B)?B:B===void 0?{}:{x:B,y:tt,r:y,width:Math.max(nt||0,0),height:Math.max(x||0,0)},rt=this.createElement("rect");return this.styledMode||(j!==void 0&&(lt["stroke-width"]=j,v(lt,rt.crisp(lt))),lt.fill="none"),rt.rSetter=function(gt,vt,Ot){rt.r=gt,k(Ot,{rx:gt,ry:gt})},rt.rGetter=function(){return rt.r||0},rt.attr(lt)}roundedRect(B){return this.symbol("roundedRect").attr(B)}setSize(B,tt,nt){this.width=B,this.height=tt,this.boxWrapper.animate({width:B,height:tt},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:et(nt,!0)?void 0:0}),this.alignElements()}g(B){let tt=this.createElement("g");return B?tt.attr({class:"highcharts-"+B}):tt}image(B,tt,nt,x,y,j){let lt={preserveAspectRatio:"none"};S(tt)&&(lt.x=tt),S(nt)&&(lt.y=nt),S(x)&&(lt.width=x),S(y)&&(lt.height=y);let rt=this.createElement("image").attr(lt),gt=function(vt){rt.attr({href:B}),j.call(rt,vt)};if(j){rt.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let vt=new Q.Image;W(vt,"load",gt),vt.src=B,vt.complete&>({})}else rt.attr({href:B});return rt}symbol(B,tt,nt,x,y,j){let lt,rt,gt,vt,Ot=this,At=/^url\((.*?)\)$/,$t=At.test(B),Xt=!$t&&(this.symbols[B]?B:"circle"),Ct=Xt&&this.symbols[Xt];if(Ct)typeof tt=="number"&&(rt=Ct.call(this.symbols,tt||0,nt||0,x||0,y||0,j)),lt=this.path(rt),Ot.styledMode||lt.attr("fill","none"),v(lt,{symbolName:Xt||void 0,x:tt,y:nt,width:x,height:y}),j&&v(lt,j);else if($t){gt=B.match(At)[1];let wt=lt=this.image(gt);wt.imgwidth=et(j&&j.width,it[gt]&&it[gt].width),wt.imgheight=et(j&&j.height,it[gt]&&it[gt].height),vt=Dt=>Dt.attr({width:Dt.width,height:Dt.height}),["width","height"].forEach(Dt=>{wt[`${Dt}Setter`]=function(jt,re){this[re]=jt;let{alignByTranslate:le,element:Gt,width:he,height:ve,imgwidth:Ce,imgheight:Te}=this,Ke=re==="width"?Ce:Te,rn=1;j&&j.backgroundSize==="within"&&he&&ve&&Ce&&Te?(rn=Math.min(he/Ce,ve/Te),k(Gt,{width:Math.round(Ce*rn),height:Math.round(Te*rn)})):Gt&&Ke&&Gt.setAttribute(re,Ke),!le&&Ce&&Te&&this.translate(((he||0)-Ce*rn)/2,((ve||0)-Te*rn)/2)}}),l(tt)&&wt.attr({x:tt,y:nt}),wt.isImg=!0,wt.symbolUrl=B,l(wt.imgwidth)&&l(wt.imgheight)?vt(wt):(wt.attr({width:0,height:0}),_("img",{onload:function(){let Dt=T[Ot.chartIndex];this.width===0&&(h(this,{position:"absolute",top:"-999em"}),M.body.appendChild(this)),it[gt]={width:this.width,height:this.height},wt.imgwidth=this.width,wt.imgheight=this.height,wt.element&&vt(wt),this.parentNode&&this.parentNode.removeChild(this),Ot.imgCount--,Ot.imgCount||!Dt||Dt.hasLoaded||Dt.onload()},src:gt}),this.imgCount++)}return lt}clipRect(B,tt,nt,x){return this.rect(B,tt,nt,x,0)}text(B,tt,nt,x){let y={};if(x&&(this.allowHTML||!this.forExport))return this.html(B,tt,nt);y.x=Math.round(tt||0),nt&&(y.y=Math.round(nt)),l(B)&&(y.text=B);let j=this.createElement("text").attr(y);return x&&(!this.forExport||this.allowHTML)||(j.xSetter=function(lt,rt,gt){let vt=gt.getElementsByTagName("tspan"),Ot=gt.getAttribute(rt);for(let At=0,$t;AtB.align())}}return v(Mt.prototype,{Element:X,SVG_NS:D,escapes:{"&":"&","<":"<",">":">","'":"'",'"':"""},symbols:Z,draw:c}),J.registerRendererType("svg",Mt,!0),Mt}),g(d,"Core/Renderer/HTML/HTMLElement.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{composed:J}=R,{attr:X,css:q,createElement:Z,defined:Y,extend:V,pInt:N,pushUnique:U}=$;function T(H,z,c){var it;let D=((it=this.div)==null?void 0:it.style)||c.style;st.prototype[`${z}Setter`].call(this,H,z,c),D&&(D[z]=H)}let A=(H,z)=>{var c;if(!H.div){let D=X(H.element,"class"),it=H.css,Q=Z("div",D?{className:D}:void 0,Mi(xr({position:"absolute",left:`${H.translateX||0}px`,top:`${H.translateY||0}px`},H.styles),{display:H.display,opacity:H.opacity,visibility:H.visibility}),((c=H.parentGroup)==null?void 0:c.div)||z);H.classSetter=(W,k,_)=>{_.setAttribute("class",W),Q.className=W},H.translateXSetter=H.translateYSetter=(W,k)=>{H[k]=W,Q.style[k==="translateX"?"left":"top"]=`${W}px`,H.doTransform=!0},H.opacitySetter=H.visibilitySetter=T,H.css=W=>(it.call(H,W),W.cursor&&(Q.style.cursor=W.cursor),W.pointerEvents&&(Q.style.pointerEvents=W.pointerEvents),H),H.on=function(){return st.prototype.on.apply({element:Q,onEvents:H.onEvents},arguments),H},H.div=Q}return H.div};class M extends st{static compose(z){U(J,this.compose)&&(z.prototype.html=function(c,D,it){return new M(this,"span").attr({text:c,x:Math.round(D),y:Math.round(it)})})}constructor(z,c){super(z,c),this.css(xr({position:"absolute"},z.styledMode?{}:{fontFamily:z.style.fontFamily,fontSize:z.style.fontSize})),this.element.style.whiteSpace="nowrap"}getSpanCorrection(z,c,D){this.xCorr=-z*D,this.yCorr=-c}css(z){let c,{element:D}=this,it=D.tagName==="SPAN"&&z&&"width"in z,Q=it&&z.width;return it&&(delete z.width,this.textWidth=N(Q)||void 0,c=!0),(z==null?void 0:z.textOverflow)==="ellipsis"&&(z.whiteSpace="nowrap",z.overflow="hidden"),V(this.styles,z),q(D,z),c&&this.updateTransform(),this}htmlGetBBox(){let{element:z}=this;return{x:z.offsetLeft,y:z.offsetTop,width:z.offsetWidth,height:z.offsetHeight}}updateTransform(){var S;if(!this.added){this.alignOnAdd=!0;return}let{element:z,renderer:c,rotation:D,rotationOriginX:it,rotationOriginY:Q,styles:W,textAlign:k="left",textWidth:_,translateX:C=0,translateY:h=0,x:l=0,y:u=0}=this,v={left:0,center:.5,right:1}[k],I=W.whiteSpace;if(q(z,{marginLeft:`${C}px`,marginTop:`${h}px`}),z.tagName==="SPAN"){let b=[D,k,z.innerHTML,_,this.textAlign].join(","),K=-(((S=this.parentGroup)==null?void 0:S.padding)*1)||0,ct,et=!1;if(_!==this.oldTextWidth){let w=this.textPxLength?this.textPxLength:(q(z,{width:"",whiteSpace:I||"nowrap"}),z.offsetWidth),B=_||0;(B>this.oldTextWidth||w>B)&&(/[ \-]/.test(z.textContent||z.innerText)||z.style.textOverflow==="ellipsis")&&(q(z,{width:w>B||D?_+"px":"auto",display:"block",whiteSpace:I||"normal"}),this.oldTextWidth=_,et=!0)}this.hasBoxWidthChanged=et,b!==this.cTT&&(ct=c.fontMetrics(z).b,Y(D)&&(D!==(this.oldRotation||0)||k!==this.oldAlign)&&this.setSpanRotation(D,K,K),this.getSpanCorrection(!Y(D)&&this.textPxLength||z.offsetWidth,ct,v));let{xCorr:dt=0,yCorr:pt=0}=this,bt=(it!=null?it:l)-dt-l-K,Mt=(Q!=null?Q:u)-pt-u-K;q(z,{left:`${l+dt}px`,top:`${u+pt}px`,transformOrigin:`${bt}px ${Mt}px`}),this.cTT=b,this.oldRotation=D,this.oldAlign=k}}setSpanRotation(z,c,D){q(this.element,{transform:`rotate(${z}deg)`,transformOrigin:`${c}% ${D}px`})}add(z){let c,D=this.renderer.box.parentNode,it=[];if(this.parentGroup=z,z&&!(c=z.div)){let Q=z;for(;Q;)it.push(Q),Q=Q.parentGroup;for(let W of it.reverse())c=A(W,D)}return(c||D).appendChild(this.element),this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(z){z!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,L.setElementHTML(this.element,z!=null?z:""),this.textStr=z,this.doTransform=!0)}alignSetter(z){this.alignValue=this.textAlign=z,this.doTransform=!0}xSetter(z,c){this[c]=z,this.doTransform=!0}}let O=M.prototype;return O.visibilitySetter=O.opacitySetter=T,O.ySetter=O.rotationSetter=O.rotationOriginXSetter=O.rotationOriginYSetter=O.xSetter,M}),g(d,"Core/Axis/AxisDefaults.js",[],function(){var L,R;return(R=L||(L={})).xAxis={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e %b"},week:{main:"%e %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotationLimit:80,distance:15,enabled:!0,indentation:10,overflow:"justify",reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,zIndex:7,style:{color:"#333333",cursor:"default",fontSize:"0.8em"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minorTicksPerMajor:5,minPadding:.01,offset:void 0,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",useHTML:!1,x:0,y:0,style:{color:"#666666",fontSize:"0.8em"}},visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},R.yAxis={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:void 0},startOnTick:!0,title:{text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){let{numberFormatter:st}=this.axis.chart;return st(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},L}),g(d,"Core/Foundation.js",[d["Core/Utilities.js"]],function(L){var R;let{addEvent:st,isFunction:$,objectEach:J,removeEvent:X}=L;return(R||(R={})).registerEventOptions=function(q,Z){q.eventOptions=q.eventOptions||{},J(Z.events,function(Y,V){q.eventOptions[V]!==Y&&(q.eventOptions[V]&&(X(q,V,q.eventOptions[V]),delete q.eventOptions[V]),$(Y)&&(q.eventOptions[V]=Y,st(q,V,Y,{order:0})))})},R}),g(d,"Core/Axis/Tick.js",[d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{deg2rad:$}=R,{clamp:J,correctFloat:X,defined:q,destroyObjectProperties:Z,extend:Y,fireEvent:V,isNumber:N,merge:U,objectEach:T,pick:A}=st;return class{constructor(M,O,H,z,c){this.isNew=!0,this.isNewLabel=!0,this.axis=M,this.pos=O,this.type=H||"",this.parameters=c||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,V(this,"init"),H||z||this.addLabel()}addLabel(){let M=this,O=M.axis,H=O.options,z=O.chart,c=O.categories,D=O.logarithmic,it=O.names,Q=M.pos,W=A(M.options&&M.options.labels,H.labels),k=O.tickPositions,_=Q===k[0],C=Q===k[k.length-1],h=(!W.step||W.step===1)&&O.tickInterval===1,l=k.info,u=M.label,v,I,S,b=this.parameters.category||(c?A(c[Q],it[Q],Q):Q);D&&N(b)&&(b=X(D.lin2log(b))),O.dateTime&&(l?v=(I=z.time.resolveDTLFormat(H.dateTimeLabelFormats[!H.grid&&l.higherRanks[Q]||l.unitName])).main:N(b)&&(v=O.dateTime.getXDateFormat(b,H.dateTimeLabelFormats||{}))),M.isFirst=_,M.isLast=C;let K={axis:O,chart:z,dateTimeLabelFormat:v,isFirst:_,isLast:C,pos:Q,tick:M,tickPositionInfo:l,value:b};V(this,"labelFormat",K);let ct=pt=>W.formatter?W.formatter.call(pt,pt):W.format?(pt.text=O.defaultLabelFormatter.call(pt),L.format(W.format,pt,z)):O.defaultLabelFormatter.call(pt),et=ct.call(K,K),dt=I&&I.list;dt?M.shortenLabel=function(){for(S=0;S0&&z+_*C>Q&&(b=Math.round((c-z)/Math.cos(k*$))):(I=z-_*C,S=z+(1-_)*C,IQ&&(u=Q-M.x+u*_,v=-1),(u=Math.min(h,u))u||O.autoRotation&&(W.styles||{}).width)&&(b=u)),b&&(this.shortenLabel?this.shortenLabel():(l.width=Math.floor(b)+"px",(H.style||{}).textOverflow||(l.textOverflow="ellipsis"),W.css(l)))}moveLabel(M,O){let H=this,z=H.label,c=H.axis,D=!1,it;z&&z.textStr===M?(H.movedLabel=z,D=!0,delete H.label):T(c.ticks,function(Q){D||Q.isNew||Q===H||!Q.label||Q.label.textStr!==M||(H.movedLabel=Q.label,D=!0,Q.labelPos=H.movedLabel.xy,delete Q.label)}),!D&&(H.labelPos||z)&&(it=H.labelPos||z.xy,H.movedLabel=H.createLabel(M,O,it),H.movedLabel&&H.movedLabel.attr({opacity:0}))}render(M,O,H){let z=this.axis,c=z.horiz,D=this.pos,it=A(this.tickmarkOffset,z.tickmarkOffset),Q=this.getPosition(c,D,it,O),W=Q.x,k=Q.y,_=z.pos,C=_+z.len,h=c?W:k;!z.chart.polar&&this.isNew&&(X(h)<_||h>C)&&(H=0);let l=A(H,this.label&&this.label.newOpacity,1);H=A(H,1),this.isActive=!0,this.renderGridLine(O,H),this.renderMark(Q,H),this.renderLabel(Q,O,l,M),this.isNew=!1,V(this,"afterRender")}renderGridLine(M,O){let H=this.axis,z=H.options,c={},D=this.pos,it=this.type,Q=A(this.tickmarkOffset,H.tickmarkOffset),W=H.chart.renderer,k=this.gridLine,_,C=z.gridLineWidth,h=z.gridLineColor,l=z.gridLineDashStyle;this.type==="minor"&&(C=z.minorGridLineWidth,h=z.minorGridLineColor,l=z.minorGridLineDashStyle),k||(H.chart.styledMode||(c.stroke=h,c["stroke-width"]=C||0,c.dashstyle=l),it||(c.zIndex=1),M&&(O=0),this.gridLine=k=W.path().attr(c).addClass("highcharts-"+(it?it+"-":"")+"grid-line").add(H.gridGroup)),k&&(_=H.getPlotLinePath({value:D+Q,lineWidth:k.strokeWidth(),force:"pass",old:M,acrossPanes:!1}))&&k[M||this.isNew?"attr":"animate"]({d:_,opacity:O})}renderMark(M,O){let H=this.axis,z=H.options,c=H.chart.renderer,D=this.type,it=H.tickSize(D?D+"Tick":"tick"),Q=M.x,W=M.y,k=A(z[D!=="minor"?"tickWidth":"minorTickWidth"],!D&&H.isXAxis?1:0),_=z[D!=="minor"?"tickColor":"minorTickColor"],C=this.mark,h=!C;it&&(H.opposite&&(it[0]=-it[0]),C||(this.mark=C=c.path().addClass("highcharts-"+(D?D+"-":"")+"tick").add(H.axisGroup),H.chart.styledMode||C.attr({stroke:_,"stroke-width":k})),C[h?"attr":"animate"]({d:this.getMarkPath(Q,W,it[0],C.strokeWidth(),H.horiz,c),opacity:O}))}renderLabel(M,O,H,z){let c=this.axis,D=c.horiz,it=c.options,Q=this.label,W=it.labels,k=W.step,_=A(this.tickmarkOffset,c.tickmarkOffset),C=M.x,h=M.y,l=!0;Q&&N(C)&&(Q.xy=M=this.getLabelPosition(C,h,Q,D,W,_,z,k),(!this.isFirst||this.isLast||it.showFirstLabel)&&(!this.isLast||this.isFirst||it.showLastLabel)?!D||W.step||W.rotation||O||H===0||this.handleOverflow(M):l=!1,k&&z%k&&(l=!1),l&&N(M.y)?(M.opacity=H,Q[this.isNewLabel?"attr":"animate"](M).show(!0),this.isNewLabel=!1):(Q.hide(),this.isNewLabel=!0))}replaceMovedLabel(){let M=this.label,O=this.axis;M&&!this.isNew&&(M.animate({opacity:0},void 0,M.destroy),delete this.label),O.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel}}}),g(d,"Core/Axis/Axis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/AxisDefaults.js"],d["Core/Color/Color.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Axis/Tick.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){let{animObject:Y}=L,{xAxis:V,yAxis:N}=R,{defaultOptions:U}=$,{registerEventOptions:T}=J,{deg2rad:A}=X,{arrayMax:M,arrayMin:O,clamp:H,correctFloat:z,defined:c,destroyObjectProperties:D,erase:it,error:Q,extend:W,fireEvent:k,getClosestDistance:_,insertItem:C,isArray:h,isNumber:l,isString:u,merge:v,normalizeTickInterval:I,objectEach:S,pick:b,relativeLength:K,removeEvent:ct,splat:et,syncTimeout:dt}=Z,pt=(Mt,w)=>I(w,void 0,void 0,b(Mt.options.allowDecimals,w<.5||Mt.tickAmount!==void 0),!!Mt.tickAmount);W(U,{xAxis:V,yAxis:v(V,N)});class bt{constructor(w,B,tt){this.init(w,B,tt)}init(w,B,tt=this.coll){var rt,gt,vt,Ot;let nt=tt==="xAxis",x=this.isZAxis||(w.inverted?!nt:nt);this.chart=w,this.horiz=x,this.isXAxis=nt,this.coll=tt,k(this,"init",{userOptions:B}),this.opposite=b(B.opposite,this.opposite),this.side=b(B.side,this.side,x?this.opposite?0:2:this.opposite?1:3),this.setOptions(B);let y=this.options,j=y.labels;(rt=this.type)!=null||(this.type=y.type||"linear"),(vt=this.uniqueNames)!=null||(this.uniqueNames=(gt=y.uniqueNames)!=null?gt:!0),k(this,"afterSetType"),this.userOptions=B,this.minPixelPadding=0,this.reversed=b(y.reversed,this.reversed),this.visible=y.visible,this.zoomEnabled=y.zoomEnabled,this.hasNames=this.type==="category"||y.categories===!0,this.categories=h(y.categories)&&y.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=c(y.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},(Ot=this.len)!=null||(this.len=0),this.minRange=this.userMinRange=y.minRange||y.maxZoom,this.range=y.range,this.offset=y.offset||0,this.max=void 0,this.min=void 0;let lt=b(y.crosshair,et(w.options.tooltip.crosshairs)[nt?0:1]);this.crosshair=lt===!0?{}:lt,w.axes.indexOf(this)===-1&&(nt?w.axes.splice(w.xAxis.length,0,this):w.axes.push(this),C(this,w[this.coll])),w.orderItems(this.coll),this.series=this.series||[],w.inverted&&!this.isZAxis&&nt&&!c(this.reversed)&&(this.reversed=!0),this.labelRotation=l(j.rotation)?j.rotation:void 0,T(this,y),k(this,"afterInit")}setOptions(w){let B=this.horiz?{labels:{autoRotation:[-45],padding:4},margin:15}:{labels:{padding:1},title:{rotation:90*this.side}};this.options=v(B,U[this.coll],w),k(this,"afterSetOptions",{userOptions:w})}defaultLabelFormatter(){let w=this.axis,{numberFormatter:B}=this.chart,tt=l(this.value)?this.value:NaN,nt=w.chart.time,x=w.categories,y=this.dateTimeLabelFormat,j=U.lang,lt=j.numericSymbols,rt=j.numericSymbolMagnitude||1e3,gt=w.logarithmic?Math.abs(tt):w.tickInterval,vt=lt&<.length,Ot,At;if(x)At=`${this.value}`;else if(y)At=nt.dateFormat(y,tt);else if(vt&<&>>=1e3)for(;vt--&&At===void 0;)gt>=(Ot=Math.pow(rt,vt+1))&&10*tt%Ot==0&<[vt]!==null&&tt!==0&&(At=B(tt/Ot,-1)+lt[vt]);return At===void 0&&(At=Math.abs(tt)>=1e4?B(tt,-1):B(tt,-1,void 0,"")),At}getSeriesExtremes(){let w,B=this;k(this,"getSeriesExtremes",null,function(){B.hasVisibleSeries=!1,B.dataMin=B.dataMax=B.threshold=void 0,B.softThreshold=!B.isXAxis,B.series.forEach(tt=>{if(tt.reserveSpace()){let nt=tt.options,x,y=nt.threshold,j,lt;if(B.hasVisibleSeries=!0,B.positiveValuesOnly&&0>=(y||0)&&(y=void 0),B.isXAxis)(x=tt.xData)&&x.length&&(x=B.logarithmic?x.filter(rt=>rt>0):x,j=(w=tt.getXExtremes(x)).min,lt=w.max,l(j)||j instanceof Date||(x=x.filter(l),j=(w=tt.getXExtremes(x)).min,lt=w.max),x.length&&(B.dataMin=Math.min(b(B.dataMin,j),j),B.dataMax=Math.max(b(B.dataMax,lt),lt)));else{let rt=tt.applyExtremes();l(rt.dataMin)&&(j=rt.dataMin,B.dataMin=Math.min(b(B.dataMin,j),j)),l(rt.dataMax)&&(lt=rt.dataMax,B.dataMax=Math.max(b(B.dataMax,lt),lt)),c(y)&&(B.threshold=y),(!nt.softThreshold||B.positiveValuesOnly)&&(B.softThreshold=!1)}}})}),k(this,"afterGetSeriesExtremes")}translate(w,B,tt,nt,x,y){var Xt;let j=this.linkedParent||this,lt=nt&&j.old?j.old.min:j.min;if(!l(lt))return NaN;let rt=j.minPixelPadding,gt=(j.isOrdinal||((Xt=j.brokenAxis)==null?void 0:Xt.hasBreaks)||j.logarithmic&&x)&&j.lin2val,vt=1,Ot=0,At=nt&&j.old?j.old.transA:j.transA,$t=0;return At||(At=j.transA),tt&&(vt*=-1,Ot=j.len),j.reversed&&(vt*=-1,Ot-=vt*(j.sector||j.len)),B?($t=(w=w*vt+Ot-rt)/At+lt,gt&&($t=j.lin2val($t))):(gt&&(w=j.val2lin(w)),$t=vt*(w-lt)*At+Ot+vt*rt+(l(y)?At*y:0),j.isRadial||($t=z($t))),$t}toPixels(w,B){return this.translate(w,!1,!this.horiz,void 0,!0)+(B?0:this.pos)}toValue(w,B){return this.translate(w-(B?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(w){let B=this,tt=B.chart,nt=B.left,x=B.top,y=w.old,j=w.value,lt=w.lineWidth,rt=y&&tt.oldChartHeight||tt.chartHeight,gt=y&&tt.oldChartWidth||tt.chartWidth,vt=B.transB,Ot=w.translatedValue,At=w.force,$t,Xt,Ct,wt,Dt;function jt(le,Gt,he){return At!=="pass"&&(lehe)&&(At?le=H(le,Gt,he):Dt=!0),le}let re={value:j,lineWidth:lt,old:y,force:At,acrossPanes:w.acrossPanes,translatedValue:Ot};return k(this,"getPlotLinePath",re,function(le){$t=Ct=(Ot=H(Ot=b(Ot,B.translate(j,void 0,void 0,y)),-1e9,1e9))+vt,Xt=wt=rt-Ot-vt,l(Ot)?B.horiz?(Xt=x,wt=rt-B.bottom+(B.options.isInternal?0:tt.scrollablePixelsY||0),$t=Ct=jt($t,nt,nt+B.width)):($t=nt,Ct=gt-B.right+(tt.scrollablePixelsX||0),Xt=wt=jt(Xt,x,x+B.height)):(Dt=!0,At=!1),le.path=Dt&&!At?void 0:tt.renderer.crispLine([["M",$t,Xt],["L",Ct,wt]],lt||1)}),re.path}getLinearTickPositions(w,B,tt){let nt,x,y,j=z(Math.floor(B/w)*w),lt=z(Math.ceil(tt/w)*w),rt=[];if(z(j+w)===j&&(y=20),this.single)return[B];for(nt=j;nt<=lt&&(rt.push(nt),(nt=z(nt+w,y))!==x);)x=nt;return rt}getMinorTickInterval(){let{minorTicks:w,minorTickInterval:B}=this.options;return w===!0?b(B,"auto"):w!==!1?B:void 0}getMinorTickPositions(){let w=this.options,B=this.tickPositions,tt=this.minorTickInterval,nt=this.pointRangePadding||0,x=(this.min||0)-nt,y=(this.max||0)+nt,j=y-x,lt=[],rt;if(j&&j/tt{var vt;return(gt.xIncrement?(vt=gt.xData)==null?void 0:vt.slice(0,2):gt.xData)||[]}))||0),this.dataMax-this.dataMin)),l(tt)&&l(nt)&&l(x)&&tt-nt=x,y=(x-tt+nt)/2,lt=[nt-y,b(w.min,nt-y)],j&&(lt[2]=B?B.log2lin(this.dataMin):this.dataMin),rt=[(nt=M(lt))+x,b(w.max,nt+x)],j&&(rt[2]=B?B.log2lin(this.dataMax):this.dataMax),(tt=O(rt))-ntnt-x),w=_([tt]))}return w&&B?Math.min(w,B):w||B}nameToX(w){let B=h(this.options.categories),tt=B?this.categories:this.names,nt=w.options.x,x;return w.series.requireSorting=!1,c(nt)||(nt=this.uniqueNames&&tt?B?tt.indexOf(w.name):b(tt.keys[w.name],-1):w.series.autoIncrement()),nt===-1?!B&&tt&&(x=tt.length):x=nt,x!==void 0?(this.names[x]=w.name,this.names.keys[w.name]=x):w.x&&(x=w.x),x}updateNames(){let w=this,B=this.names;B.length>0&&(Object.keys(B.keys).forEach(function(tt){delete B.keys[tt]}),B.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(tt=>{tt.xIncrement=null,(!tt.points||tt.isDirtyData)&&(w.max=Math.max(w.max,tt.xData.length-1),tt.processData(),tt.generatePoints()),tt.data.forEach(function(nt,x){let y;nt!=null&&nt.options&&nt.name!==void 0&&(y=w.nameToX(nt))!==void 0&&y!==nt.x&&(nt.x=y,tt.xData[x]=y)})}))}setAxisTranslation(){let w=this,B=w.max-w.min,tt=w.linkedParent,nt=!!w.categories,x=w.isXAxis,y=w.axisPointRange||0,j,lt=0,rt=0,gt,vt=w.transA;(x||nt||y)&&(j=w.getClosest(),tt?(lt=tt.minPointOffset,rt=tt.pointRangePadding):w.series.forEach(function(Ot){let At=nt?1:x?b(Ot.options.pointRange,j,0):w.axisPointRange||0,$t=Ot.options.pointPlacement;if(y=Math.max(y,At),!w.single||nt){let Xt=Ot.is("xrange")?!x:x;lt=Math.max(lt,Xt&&u($t)?0:At/2),rt=Math.max(rt,Xt&&$t==="on"?0:At)}}),gt=w.ordinal&&w.ordinal.slope&&j?w.ordinal.slope/j:1,w.minPointOffset=lt*=gt,w.pointRangePadding=rt*=gt,w.pointRange=Math.min(y,w.single&&nt?1:B),x&&j&&(w.closestPointRange=j)),w.translationSlope=w.transA=vt=w.staticScale||w.len/(B+rt||1),w.transB=w.horiz?w.left:w.bottom,w.minPixelPadding=vt*lt,k(this,"afterSetAxisTranslation")}minFromRange(){let{max:w,min:B}=this;return l(w)&&l(B)&&w-B||void 0}setTickInterval(w){var Qt,Kt,Jt,Et;let{categories:B,chart:tt,dataMax:nt,dataMin:x,dateTime:y,isXAxis:j,logarithmic:lt,options:rt,softThreshold:gt}=this,vt=l(this.threshold)?this.threshold:void 0,Ot=this.minRange||0,{ceiling:At,floor:$t,linkedTo:Xt,softMax:Ct,softMin:wt}=rt,Dt=l(Xt)&&((Qt=tt[this.coll])==null?void 0:Qt[Xt]),jt=rt.tickPixelInterval,re=rt.maxPadding,le=rt.minPadding,Gt=0,he,ve=l(rt.tickInterval)&&rt.tickInterval>=0?rt.tickInterval:void 0,Ce,Te,Ke,rn;if(y||B||Dt||this.getTickAmount(),Ke=b(this.userMin,rt.min),rn=b(this.userMax,rt.max),Dt?(this.linkedParent=Dt,he=Dt.getExtremes(),this.min=b(he.min,he.dataMin),this.max=b(he.max,he.dataMax),this.type!==Dt.type&&Q(11,!0,tt)):(gt&&c(vt)&&l(nt)&&l(x)&&(x>=vt?(Ce=vt,le=0):nt<=vt&&(Te=vt,re=0)),this.min=b(Ke,Ce,x),this.max=b(rn,Te,nt)),l(this.max)&&l(this.min)&&(lt&&(this.positiveValuesOnly&&!w&&0>=Math.min(this.min,b(x,this.min))&&Q(10,!0,tt),this.min=z(lt.log2lin(this.min),16),this.max=z(lt.log2lin(this.max),16)),this.range&&l(x)&&(this.userMin=this.min=Ke=Math.max(x,this.minFromRange()||0),this.userMax=rn=this.max,this.range=void 0)),k(this,"foundExtremes"),this.adjustForMinRange(),l(this.min)&&l(this.max)){if(!l(this.userMin)&&l(wt)&&wtthis.max&&(this.max=rn=Ct),B||this.axisPointRange||(Kt=this.stacking)!=null&&Kt.usePercentage||Dt||!(Gt=this.max-this.min)||(!c(Ke)&&le&&(this.min-=Gt*le),c(rn)||!re||(this.max+=Gt*re)),!l(this.userMin)&&l($t)&&(this.min=Math.max(this.min,$t)),!l(this.userMax)&&l(At)&&(this.max=Math.min(this.max,At)),gt&&l(x)&&l(nt)){let Rt=vt||0;!c(Ke)&&this.min=Rt?this.min=rt.minRange?Math.min(Rt,this.max-Ot):Rt:!c(rn)&&this.max>Rt&&nt<=Rt&&(this.max=rt.minRange?Math.max(Rt,this.min+Ot):Rt)}!tt.polar&&this.min>this.max&&(c(rt.min)?this.max=this.min:c(rt.max)&&(this.min=this.max)),Gt=this.max-this.min}if(this.min!==this.max&&l(this.min)&&l(this.max)?Dt&&!ve&&jt===Dt.options.tickPixelInterval?this.tickInterval=ve=Dt.tickInterval:this.tickInterval=b(ve,this.tickAmount?Gt/Math.max(this.tickAmount-1,1):void 0,B?1:Gt*jt/Math.max(this.len,jt)):this.tickInterval=1,j&&!w){let Rt=this.min!==((Jt=this.old)==null?void 0:Jt.min)||this.max!==((Et=this.old)==null?void 0:Et.max);this.series.forEach(function(zt){var Ft;zt.forceCrop=(Ft=zt.forceCropping)==null?void 0:Ft.call(zt),zt.processData(Rt)}),k(this,"postProcessData",{hasExtremesChanged:Rt})}this.setAxisTranslation(),k(this,"initialAxisTranslation"),this.pointRange&&!ve&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval));let un=b(rt.minTickInterval,y&&!this.series.some(Rt=>Rt.noSharedTooltip)?this.closestPointRange:0);!ve&&this.tickIntervalMath.max(2*this.len,200))lt=[this.min,this.max],Q(19,!1,this.chart);else if(this.dateTime)lt=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,w.units),this.min,this.max,w.startOfWeek,(vt=this.ordinal)==null?void 0:vt.positions,this.closestPointRange,!0);else if(this.logarithmic)lt=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let Ot=this.tickInterval,At=Ot;for(;At<=2*Ot&&(lt=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&<.length>this.tickAmount);)this.tickInterval=pt(this,At*=1.1)}lt.length>this.len&&(lt=[lt[0],lt[lt.length-1]])[0]===lt[1]&&(lt.length=1),tt&&(this.tickPositions=lt,(rt=tt.apply(this,[this.min,this.max]))&&(lt=rt))}this.tickPositions=lt,this.minorTickInterval=nt==="auto"&&this.tickInterval?this.tickInterval/w.minorTicksPerMajor:nt,this.paddedTicks=lt.slice(0),this.trimTicks(lt,y,j),!this.isLinked&&l(this.min)&&l(this.max)&&(this.single&<.length<2&&!this.categories&&!this.series.some(Ot=>Ot.is("heatmap")&&Ot.options.pointPlacement==="between")&&(this.min-=.5,this.max+=.5),B||rt||this.adjustTickAmount()),k(this,"afterSetTickPositions")}trimTicks(w,B,tt){let nt=w[0],x=w[w.length-1],y=!this.isOrdinal&&this.minPointOffset||0;if(k(this,"trimTicks"),!this.isLinked){if(B&&nt!==-1/0)this.min=nt;else for(;this.min-y>w[0];)w.shift();if(tt)this.max=x;else for(;this.max+y{let{horiz:Ot,options:At}=vt;return[Ot?At.left:At.top,At.width,At.height,At.pane].join(",")},gt=rt(this);tt[this.coll].forEach(function(vt){let{series:Ot}=vt;Ot.length&&Ot.some(At=>At.visible)&&vt!==B&&rt(vt)===gt&&(w=!0,nt.push(vt))})}if(w&&j){nt.forEach(gt=>{let vt=gt.getThresholdAlignment(B);l(vt)&<.push(vt)});let rt=lt.length>1?lt.reduce((gt,vt)=>gt+=vt,0)/lt.length:void 0;nt.forEach(gt=>{gt.thresholdAlignment=rt})}return w}getThresholdAlignment(w){if((!l(this.dataMin)||this!==w&&this.series.some(B=>B.isDirty||B.isDirtyData))&&this.getSeriesExtremes(),l(this.threshold)){let B=H((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(B=1-B),B}}getTickAmount(){let w=this.options,B=w.tickPixelInterval,tt=w.tickAmount;c(w.tickInterval)||tt||!(this.leny.push(z(y[y.length-1]+At)),Ct=()=>y.unshift(z(y[0]-At));if(l(lt)&&($t=lt<.5?Math.ceil(lt*(j-1)):Math.floor(lt*(j-1)),x.reversed&&($t=j-1-$t)),w.hasData()&&l(nt)&&l(tt)){let wt=()=>{w.transA*=(rt-1)/(j-1),w.min=x.startOnTick?y[0]:Math.min(nt,y[0]),w.max=x.endOnTick?y[y.length-1]:Math.max(tt,y[y.length-1])};if(l($t)&&l(w.threshold)){for(;y[$t]!==gt||y.length!==j||y[0]>nt||y[y.length-1]w.threshold?Ct():Xt();if(At>8*w.tickInterval)break;At*=2}wt()}else if(rt0&&Ot{tt=tt||lt.isDirtyData||lt.isDirty,nt=nt||lt.xAxis&<.xAxis.isDirty||!1}),this.setAxisSize();let x=this.len!==(this.old&&this.old.len);x||tt||nt||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(B&&w==="yAxis"&&B.buildStacks(),this.forceRedraw=!1,this.userMinRange||(this.minRange=void 0),this.getSeriesExtremes(),this.setTickInterval(),B&&w==="xAxis"&&B.buildStacks(),this.isDirty||(this.isDirty=x||this.min!==((y=this.old)==null?void 0:y.min)||this.max!==((j=this.old)==null?void 0:j.max))):B&&B.cleanStacks(),tt&&delete this.allExtremes,k(this,"afterSetScale")}setExtremes(w,B,tt=!0,nt,x){this.series.forEach(y=>{delete y.kdTree}),k(this,"setExtremes",x=W(x,{min:w,max:B}),y=>{this.userMin=y.min,this.userMax=y.max,this.eventArgs=y,tt&&this.chart.redraw(nt)})}setAxisSize(){let w=this.chart,B=this.options,tt=B.offsets||[0,0,0,0],nt=this.horiz,x=this.width=Math.round(K(b(B.width,w.plotWidth-tt[3]+tt[1]),w.plotWidth)),y=this.height=Math.round(K(b(B.height,w.plotHeight-tt[0]+tt[2]),w.plotHeight)),j=this.top=Math.round(K(b(B.top,w.plotTop+tt[0]),w.plotHeight,w.plotTop)),lt=this.left=Math.round(K(b(B.left,w.plotLeft+tt[3]),w.plotWidth,w.plotLeft));this.bottom=w.chartHeight-y-j,this.right=w.chartWidth-x-lt,this.len=Math.max(nt?x:y,0),this.pos=nt?lt:j}getExtremes(){let w=this.logarithmic;return{min:w?z(w.lin2log(this.min)):this.min,max:w?z(w.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}}getThreshold(w){let B=this.logarithmic,tt=B?B.lin2log(this.min):this.min,nt=B?B.lin2log(this.max):this.max;return w===null||w===-1/0?w=tt:w===1/0?w=nt:tt>w?w=tt:nt15&&B<165?nt.align="right":B>195&&B<345&&(nt.align="left")}),tt.align}tickSize(w){let B=this.options,tt=b(B[w==="tick"?"tickWidth":"minorTickWidth"],w==="tick"&&this.isXAxis&&!this.categories?1:0),nt=B[w==="tick"?"tickLength":"minorTickLength"],x;tt&&nt&&(B[w+"Position"]==="inside"&&(nt=-nt),x=[nt,tt]);let y={tickSize:x};return k(this,"afterTickSize",y),y.tickSize}labelMetrics(){let w=this.chart.renderer,B=this.ticks,tt=B[Object.keys(B)[0]]||{};return this.chart.renderer.fontMetrics(tt.label||tt.movedLabel||w.box)}unsquish(){let w=this.options.labels,B=w.padding||0,tt=this.horiz,nt=this.tickInterval,x=this.len/(((this.categories?1:0)+this.max-this.min)/nt),y=w.rotation,j=z(.8*this.labelMetrics().h),lt=Math.max(this.max-this.min,0),rt=function($t){let Xt=($t+2*B)/(x||1);return(Xt=Xt>1?Math.ceil(Xt):1)*nt>lt&&$t!==1/0&&x!==1/0&<&&(Xt=Math.ceil(lt/nt)),z(Xt*nt)},gt=nt,vt,Ot=Number.MAX_VALUE,At;if(tt){if(!w.staggerLines&&(l(y)?At=[y]:x=-90&&Ct<=90)&&(Xt=($t=rt(Math.abs(j/Math.sin(A*Ct))))+Math.abs(Ct/360))Xt&&(Xt=jt.label.textPxLength)}),this.maxLabelLength=Xt,this.autoRotation)Xt>rt&&Xt>vt.h?gt.rotation=this.labelRotation:this.labelRotation=0;else if(lt&&(At=rt,!Ot))for($t="clip",wt=tt.length;!j&&wt--;)(Ct=nt[tt[wt]].label)&&(Ct.styles.textOverflow==="ellipsis"?Ct.css({textOverflow:"clip"}):Ct.textPxLength>lt&&Ct.css({width:lt+"px"}),Ct.getBBox().height>this.len/tt.length-(vt.h-vt.f)&&(Ct.specificTextOverflow="ellipsis"));gt.rotation&&(At=Xt>.5*w.chartHeight?.33*w.chartHeight:Xt,Ot||($t="ellipsis")),this.labelAlign=x.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(gt.align=this.labelAlign),tt.forEach(function(Dt){let jt=nt[Dt],re=jt&&jt.label,le=y.width,Gt={};re&&(re.attr(gt),jt.shortenLabel?jt.shortenLabel():At&&!le&&y.whiteSpace!=="nowrap"&&(Atx.g(j).attr({zIndex:rt}).addClass(`highcharts-${tt.toLowerCase()}${lt} `+(this.isRadial?`highcharts-radial-axis${lt} `:"")+(nt.className||"")).add(w);this.axisGroup||(this.gridGroup=y("grid","-grid",nt.gridZIndex),this.axisGroup=y("axis","",nt.zIndex),this.labelGroup=y("axis-labels","-labels",nt.labels.zIndex))}getOffset(){let w=this,{chart:B,horiz:tt,options:nt,side:x,ticks:y,tickPositions:j,coll:lt}=w,rt=B.inverted&&!w.isZAxis?[1,0,3,2][x]:x,gt=w.hasData(),vt=nt.title,Ot=nt.labels,At=l(nt.crossing),$t=B.axisOffset,Xt=B.clipOffset,Ct=[-1,1,1,-1][x],wt,Dt=0,jt,re=0,le=0,Gt,he;if(w.showAxis=wt=gt||nt.showEmpty,w.staggerLines=w.horiz&&Ot.staggerLines||void 0,w.createGroups(),gt||w.isLinked?(j.forEach(function(ve){w.generateTick(ve)}),w.renderUnsquish(),w.reserveSpaceDefault=x===0||x===2||{1:"left",3:"right"}[x]===w.labelAlign,b(Ot.reserveSpace,!At&&null,w.labelAlign==="center"||null,w.reserveSpaceDefault)&&j.forEach(function(ve){le=Math.max(y[ve].getLabelSize(),le)}),w.staggerLines&&(le*=w.staggerLines),w.labelOffset=le*(w.opposite?-1:1)):S(y,function(ve,Ce){ve.destroy(),delete y[Ce]}),vt!=null&&vt.text&&vt.enabled!==!1&&(w.addTitle(wt),wt&&!At&&vt.reserveSpace!==!1&&(w.titleOffset=Dt=w.axisTitle.getBBox()[tt?"height":"width"],re=c(jt=vt.offset)?0:b(vt.margin,tt?5:10))),w.renderLine(),w.offset=Ct*b(nt.offset,$t[x]?$t[x]+(nt.margin||0):0),w.tickRotCorr=w.tickRotCorr||{x:0,y:0},he=x===0?-w.labelMetrics().h:x===2?w.tickRotCorr.y:0,Gt=Math.abs(le)+re,le&&(Gt-=he,Gt+=Ct*(tt?b(Ot.y,w.tickRotCorr.y+Ct*Ot.distance):b(Ot.x,Ct*Ot.distance))),w.axisTitleMargin=b(jt,Gt),w.getMaxLabelDimensions&&(w.maxLabelDimensions=w.getMaxLabelDimensions(y,j)),lt!=="colorAxis"&&Xt){let ve=this.tickSize("tick");$t[x]=Math.max($t[x],(w.axisTitleMargin||0)+Dt+Ct*w.offset,Gt,j&&j.length&&ve?ve[0]+Ct*w.offset:0);let Ce=!w.axisLine||nt.offset?0:w.axisLine.strokeWidth()/2;Xt[rt]=Math.max(Xt[rt],Ce)}k(this,"afterGetOffset")}getLinePath(w){let B=this.chart,tt=this.opposite,nt=this.offset,x=this.horiz,y=this.left+(tt?this.width:0)+nt,j=B.chartHeight-this.bottom-(tt?this.height:0)+nt;return tt&&(w*=-1),B.renderer.crispLine([["M",x?this.left:y,x?j:this.top],["L",x?B.chartWidth-this.right:y,x?j:B.chartHeight-this.bottom]],w)}renderLine(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))}getTitlePosition(w){let B=this.horiz,tt=this.left,nt=this.top,x=this.len,y=this.options.title,j=B?tt:nt,lt=this.opposite,rt=this.offset,gt=y.x,vt=y.y,Ot=this.chart.renderer.fontMetrics(w),At=w?Math.max(w.getBBox(!1,0).height-Ot.h-1,0):0,$t={low:j+(B?0:x),middle:j+x/2,high:j+(B?x:0)}[y.align],Xt=(B?nt+this.height:tt)+(B?1:-1)*(lt?-1:1)*(this.axisTitleMargin||0)+[-At,At,Ot.f,-At][this.side],Ct={x:B?$t+gt:Xt+(lt?this.width:0)+rt+gt,y:B?Xt+vt-(lt?this.height:0)+rt:$t+vt};return k(this,"afterGetTitlePosition",{titlePosition:Ct}),Ct}renderMinorTick(w,B){let tt=this.minorTicks;tt[w]||(tt[w]=new q(this,w,"minor")),B&&tt[w].isNew&&tt[w].render(null,!0),tt[w].render(null,!1,1)}renderTick(w,B,tt){let nt=this.isLinked,x=this.ticks;(!nt||w>=this.min&&w<=this.max||this.grid&&this.grid.isColumn)&&(x[w]||(x[w]=new q(this,w)),tt&&x[w].isNew&&x[w].render(B,!0,-1),x[w].render(B))}render(){let w,B,tt=this,nt=tt.chart,x=tt.logarithmic,y=nt.renderer,j=tt.options,lt=tt.isLinked,rt=tt.tickPositions,gt=tt.axisTitle,vt=tt.ticks,Ot=tt.minorTicks,At=tt.alternateBands,$t=j.stackLabels,Xt=j.alternateGridColor,Ct=j.crossing,wt=tt.tickmarkOffset,Dt=tt.axisLine,jt=tt.showAxis,re=Y(y.globalAnimation);if(tt.labelEdge.length=0,tt.overlap=!1,[vt,Ot,At].forEach(function(le){S(le,function(Gt){Gt.isActive=!1})}),l(Ct)){let le=this.isXAxis?nt.yAxis[0]:nt.xAxis[0],Gt=[1,-1,-1,1][this.side];if(le){let he=le.toPixels(Ct,!0);tt.horiz&&(he=le.len-he),tt.offset=Gt*he}}if(tt.hasData()||lt){let le=tt.chart.hasRendered&&tt.old&&l(tt.old.min);tt.minorTickInterval&&!tt.categories&&tt.getMinorTickPositions().forEach(function(Gt){tt.renderMinorTick(Gt,le)}),rt.length&&(rt.forEach(function(Gt,he){tt.renderTick(Gt,he,le)}),wt&&(tt.min===0||tt.single)&&(vt[-1]||(vt[-1]=new q(tt,-1,null,!0)),vt[-1].render(-1))),Xt&&rt.forEach(function(Gt,he){B=rt[he+1]!==void 0?rt[he+1]+wt:tt.max-wt,he%2==0&&Gt=.5)N=Math.round(N),z=M.getLinearTickPositions(N,U,T);else if(N>=.08){let c,D,it,Q,W,k,_,C=Math.floor(U);for(c=N>.3?[1,2,4]:N>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9],D=C;DU&&(!A||k<=T)&&k!==void 0&&z.push(k),k>T&&(_=!0),k=W}else{let c=this.lin2log(U),D=this.lin2log(T),it=A?M.getMinorTickInterval():H.tickInterval,Q=H.tickPixelInterval/(A?5:1),W=A?O/M.tickPositions.length:O;N=$(N=J(it==="auto"?null:it,this.minorAutoInterval,(D-c)*Q/(W||1))),z=M.getLinearTickPositions(N,c,D).map(this.log2lin),A||(this.minorAutoInterval=N/5)}return A||(M.tickInterval=N),z}lin2log(N){return Math.pow(10,N)}log2lin(N){return Math.log(N)/Math.LN10}}X.Additions=Y}(R||(R={})),R}),g(d,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[d["Core/Utilities.js"]],function(L){var R;let{erase:st,extend:$,isNumber:J}=L;return function(X){let q;function Z(M){return this.addPlotBandOrLine(M,"plotBands")}function Y(M,O){let H=this.userOptions,z=new q(this,M);if(this.visible&&(z=z.render()),z){if(this._addedPlotLB||(this._addedPlotLB=!0,(H.plotLines||[]).concat(H.plotBands||[]).forEach(c=>{this.addPlotBandOrLine(c)})),O){let c=H[O]||[];c.push(M),H[O]=c}this.plotLinesAndBands.push(z)}return z}function V(M){return this.addPlotBandOrLine(M,"plotLines")}function N(M,O,H){H=H||this.options;let z=this.getPlotLinePath({value:O,force:!0,acrossPanes:H.acrossPanes}),c=[],D=this.horiz,it=!J(this.min)||!J(this.max)||Mthis.max&&O>this.max,Q=this.getPlotLinePath({value:M,force:!0,acrossPanes:H.acrossPanes}),W,k=1,_;if(Q&&z)for(it&&(_=Q.toString()===z.toString(),k=0),W=0;W{var z;let H=[];for(let c of this.axes)for(let{label:D,options:it}of c.plotLinesAndBands)D&&!((z=it==null?void 0:it.label)!=null&&z.allowOverlap)&&H.push(D);return H})}),L.compose(T,O)}constructor(M,O){this.axis=M,this.options=O,this.id=O.id}render(){var pt,bt,Mt;Y(this,"render");let{axis:M,options:O}=this,{horiz:H,logarithmic:z}=M,{color:c,events:D,zIndex:it=0}=O,Q={},W=M.chart.renderer,k=O.to,_=O.from,C=O.value,h=O.borderWidth,l=O.label,{label:u,svgElem:v}=this,I=[],S,b=X(_)&&X(k),K=X(C),ct=!v,et={class:"highcharts-plot-"+(b?"band ":"line ")+(O.className||"")},dt=b?"bands":"lines";if(!M.chart.styledMode&&(K?(et.stroke=c||"#999999",et["stroke-width"]=U(O.width,1),O.dashStyle&&(et.dashstyle=O.dashStyle)):b&&(et.fill=c||"#e6e9ff",h&&(et.stroke=O.borderColor,et["stroke-width"]=h))),Q.zIndex=it,dt+="-"+it,(S=M.plotLinesAndBandsGroups[dt])||(M.plotLinesAndBandsGroups[dt]=S=W.g("plot-"+dt).attr(Q).add()),v||(this.svgElem=v=W.path().attr(et).add(S)),X(C))I=M.getPlotLinePath({value:(pt=z==null?void 0:z.log2lin(C))!=null?pt:C,lineWidth:v.strokeWidth(),acrossPanes:O.acrossPanes});else{if(!(X(_)&&X(k)))return;I=M.getPlotBandPath((bt=z==null?void 0:z.log2lin(_))!=null?bt:_,(Mt=z==null?void 0:z.log2lin(k))!=null?Mt:k,O)}return!this.eventsAdded&&D&&(N(D,(w,B)=>{v==null||v.on(B,tt=>{D[B].apply(this,[tt])})}),this.eventsAdded=!0),(ct||!v.d)&&(I!=null&&I.length)?v.attr({d:I}):v&&(I?(v.show(),v.animate({d:I})):v.d&&(v.hide(),u&&(this.label=u=u.destroy()))),l&&(X(l.text)||X(l.formatter))&&(I!=null&&I.length)&&M.width>0&&M.height>0&&!I.isFlat?(l=V(xr({align:H&&b?"center":void 0,x:H?!b&&4:10,verticalAlign:!H&&b?"middle":void 0,y:H?b?16:10:b?6:-4,rotation:H&&!b?90:0},b?{inside:!0}:{}),l),this.renderLabel(l,I,b,it)):u&&u.hide(),this}renderLabel(M,O,H,z){var l;let c=this.axis,D=c.chart.renderer,it=M.inside,Q=this.label;Q||(this.label=Q=D.text(this.getLabelText(M),0,0,M.useHTML).attr({align:M.textAlign||M.align,rotation:M.rotation,class:"highcharts-plot-"+(H?"band":"line")+"-label "+(M.className||""),zIndex:z}),c.chart.styledMode||Q.css(V({fontSize:"0.8em",textOverflow:H&&!it?"":"ellipsis"},M.style)),Q.add());let W=O.xBounds||[O[0][1],O[1][1],H?O[2][1]:O[0][1]],k=O.yBounds||[O[0][2],O[1][2],H?O[2][2]:O[0][2]],_=J(W),C=J(k),h=$(W)-_;Q.align(M,!1,{x:_,y:C,width:h,height:$(k)-C}),(!Q.alignValue||Q.alignValue==="left"||X(it))&&Q.css({width:(((l=M.style)==null?void 0:l.width)||(H&&it?h:Q.rotation===90?c.height-(Q.alignAttr.y-c.top):(M.clip?c.width:c.chart.chartWidth)-(Q.alignAttr.x-c.left)))+"px"}),Q.show(!0)}getLabelText(M){return X(M.formatter)?M.formatter.call(this):M.text}destroy(){Z(this.axis.plotLinesAndBands,this),delete this.axis,q(this)}}return T}),g(d,"Core/Tooltip.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){var q;let{animObject:Z}=L,{format:Y}=R,{composed:V,doc:N,isSafari:U}=st,{distribute:T}=$,{addEvent:A,clamp:M,css:O,discardElement:H,extend:z,fireEvent:c,isArray:D,isNumber:it,isString:Q,merge:W,pick:k,pushUnique:_,splat:C,syncTimeout:h}=X;class l{constructor(v,I,S){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.options={},this.outside=!1,this.chart=v,this.init(v,I),this.pointer=S}bodyFormatter(v){return v.map(function(I){let S=I.series.tooltipOptions;return(S[(I.point.formatPrefix||"point")+"Formatter"]||I.point.tooltipFormatter).call(I.point,S[(I.point.formatPrefix||"point")+"Format"]||"")})}cleanSplit(v){this.chart.series.forEach(function(I){let S=I&&I.tt;S&&(!S.isActive||v?I.tt=S.destroy():S.isActive=!1)})}defaultFormatter(v){let I,S=this.points||C(this);return(I=(I=[v.tooltipFooterHeaderFormatter(S[0])]).concat(v.bodyFormatter(S))).push(v.tooltipFooterHeaderFormatter(S[0],!0)),I}destroy(){this.label&&(this.label=this.label.destroy()),this.split&&(this.cleanSplit(!0),this.tt&&(this.tt=this.tt.destroy())),this.renderer&&(this.renderer=this.renderer.destroy(),H(this.container)),X.clearTimeout(this.hideTimer)}getAnchor(v,I){let S,{chart:b,pointer:K}=this,ct=b.inverted,et=b.plotTop,dt=b.plotLeft;if((v=C(v))[0].series&&v[0].series.yAxis&&!v[0].series.yAxis.options.reversedStacks&&(v=v.slice().reverse()),this.followPointer&&I)I.chartX===void 0&&(I=K.normalize(I)),S=[I.chartX-dt,I.chartY-et];else if(v[0].tooltipPos)S=v[0].tooltipPos;else{let pt=0,bt=0;v.forEach(function(Mt){let w=Mt.pos(!0);w&&(pt+=w[0],bt+=w[1])}),pt/=v.length,bt/=v.length,this.shared&&v.length>1&&I&&(ct?pt=I.chartX:bt=I.chartY),S=[pt-dt,bt-et]}return S.map(Math.round)}getClassName(v,I,S){let b=this.options,K=v.series,ct=K.options;return[b.className,"highcharts-label",S&&"highcharts-tooltip-header",I?"highcharts-tooltip-box":"highcharts-tooltip",!S&&"highcharts-color-"+k(v.colorIndex,K.colorIndex),ct&&ct.className].filter(Q).join(" ")}getLabel({anchorX:v,anchorY:I}={anchorX:0,anchorY:0}){let S=this,b=this.chart.styledMode,K=this.options,ct=this.split&&this.allowShared,et=this.container,dt=this.chart.renderer;if(this.label){let pt=!this.label.hasClass("highcharts-label");(!ct&&pt||ct&&!pt)&&this.destroy()}if(!this.label){if(this.outside){let pt=this.chart.options.chart.style,bt=J.getRendererType();this.container=et=st.doc.createElement("div"),et.className="highcharts-tooltip-container",O(et,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(pt&&pt.zIndex||0)+3)}),this.renderer=dt=new bt(et,0,0,pt,void 0,void 0,dt.styledMode)}if(ct?this.label=dt.g("tooltip"):(this.label=dt.label("",v,I,K.shape,void 0,void 0,K.useHTML,void 0,"tooltip").attr({padding:K.padding,r:K.borderRadius}),b||this.label.attr({fill:K.backgroundColor,"stroke-width":K.borderWidth||0}).css(K.style).css({pointerEvents:K.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),S.outside){let pt=this.label;[pt.xSetter,pt.ySetter].forEach((bt,Mt)=>{pt[Mt?"ySetter":"xSetter"]=w=>{bt.call(pt,S.distance),pt[Mt?"y":"x"]=w,et&&(et.style[Mt?"top":"left"]=`${w}px`)}})}this.label.attr({zIndex:8}).shadow(K.shadow).add()}return et&&!et.parentElement&&st.doc.body.appendChild(et),this.label}getPlayingField(){let{body:v,documentElement:I}=N,{chart:S,distance:b,outside:K}=this;return{width:K?Math.max(v.scrollWidth,I.scrollWidth,v.offsetWidth,I.offsetWidth,I.clientWidth)-2*b:S.chartWidth,height:K?Math.max(v.scrollHeight,I.scrollHeight,v.offsetHeight,I.offsetHeight,I.clientHeight):S.chartHeight}}getPosition(v,I,S){var re,le;let{distance:b,chart:K,outside:ct,pointer:et}=this,{inverted:dt,plotLeft:pt,plotTop:bt,polar:Mt}=K,{plotX:w=0,plotY:B=0}=S,tt={},nt=dt&&S.h||0,{height:x,width:y}=this.getPlayingField(),j=et.getChartPosition(),lt=Gt=>Gt*j.scaleX,rt=Gt=>Gt*j.scaleY,gt=Gt=>{let he=Gt==="x";return[Gt,he?y:x,he?v:I].concat(ct?[he?lt(v):rt(I),he?j.left-b+lt(w+pt):j.top-b+rt(B+bt),0,he?y:x]:[he?v:I,he?w+pt:B+bt,he?pt:bt,he?pt+K.plotWidth:bt+K.plotHeight])},vt=gt("y"),Ot=gt("x"),At,$t=!!S.negative;!Mt&&((le=(re=K.hoverSeries)==null?void 0:re.yAxis)!=null&&le.reversed)&&($t=!$t);let Xt=!this.followPointer&&k(S.ttBelow,!Mt&&!dt===$t),Ct=function(Gt,he,ve,Ce,Te,Ke,rn){let un=ct?Gt==="y"?rt(b):lt(b):b,Qt=(ve-Ce)/2,Kt=Cehe?Rt:Rt+nt)}},wt=function(Gt,he,ve,Ce,Te){if(Tehe-b)return!1;Tehe-Ce/2?tt[Gt]=he-Ce-2:tt[Gt]=Te-ve/2},Dt=function(Gt){[vt,Ot]=[Ot,vt],At=Gt},jt=()=>{Ct.apply(0,vt)!==!1?wt.apply(0,Ot)!==!1||At||(Dt(!0),jt()):At?tt.x=tt.y=0:(Dt(!0),jt())};return(dt&&!Mt||this.len>1)&&Dt(),jt(),tt}hide(v){let I=this;X.clearTimeout(this.hideTimer),v=k(v,this.options.hideDelay),this.isHidden||(this.hideTimer=h(function(){let S=I.getLabel();I.getLabel().animate({opacity:0},{duration:v&&150,complete:()=>{S.hide(),I.container&&I.container.remove()}}),I.isHidden=!0},v))}init(v,I){this.chart=v,this.options=I,this.crosshairs=[],this.isHidden=!0,this.split=I.split&&!v.inverted&&!v.polar,this.shared=I.shared||this.split,this.outside=k(I.outside,!!(v.scrollablePixelsX||v.scrollablePixelsY))}shouldStickOnContact(v){return!!(!this.followPointer&&this.options.stickOnContact&&(!v||this.pointer.inClass(v.target,"highcharts-tooltip")))}move(v,I,S,b){let K=this,ct=Z(!K.isHidden&&K.options.animation),et=K.followPointer||(K.len||0)>1,dt={x:v,y:I};et||(dt.anchorX=S,dt.anchorY=b),ct.step=()=>K.drawTracker(),K.getLabel().animate(dt,ct)}refresh(v,I){let{chart:S,options:b,pointer:K,shared:ct}=this,et=C(v),dt=et[0],pt=[],bt=b.format,Mt=b.formatter||this.defaultFormatter,w=S.styledMode,B={},tt=this.allowShared;if(!b.enabled||!dt.series)return;X.clearTimeout(this.hideTimer),this.allowShared=!(!D(v)&&v.series&&v.series.noSharedTooltip),tt=tt&&!this.allowShared,this.followPointer=!this.split&&dt.series.tooltipOptions.followPointer;let nt=this.getAnchor(v,I),x=nt[0],y=nt[1];ct&&this.allowShared?(K.applyInactiveState(et),et.forEach(function(rt){rt.setState("hover"),pt.push(rt.getLabelConfig())}),(B=dt.getLabelConfig()).points=pt):B=dt.getLabelConfig(),this.len=pt.length;let j=Q(bt)?Y(bt,B,S):Mt.call(B,this),lt=dt.series;if(this.distance=k(lt.tooltipOptions.distance,16),j===!1)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(j,et);else{let rt=x,gt=y;if(I&&K.isDirectTouch&&(rt=I.chartX-S.plotLeft,gt=I.chartY-S.plotTop),S.polar||lt.options.clip===!1||et.some(vt=>K.isDirectTouch||vt.series.shouldShowTooltip(rt,gt))){let vt=this.getLabel(tt&&this.tt||{});(!b.style.width||w)&&vt.css({width:(this.outside?this.getPlayingField():S.spacingBox).width+"px"}),vt.attr({class:this.getClassName(dt),text:j&&j.join?j.join(""):j}),this.outside&&vt.attr({x:M(vt.x||0,0,this.getPlayingField().width-(vt.width||0))}),w||vt.attr({stroke:b.borderColor||dt.color||lt.color||"#666666"}),this.updatePosition({plotX:x,plotY:y,negative:dt.negative,ttBelow:dt.ttBelow,h:nt[2]||0})}else{this.hide();return}}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}c(this,"refresh")}renderSplit(v,I){var he;let S=this,{chart:b,chart:{chartWidth:K,chartHeight:ct,plotHeight:et,plotLeft:dt,plotTop:pt,scrollablePixelsY:bt=0,scrollablePixelsX:Mt,styledMode:w},distance:B,options:tt,options:{positioner:nt},pointer:x}=S,{scrollLeft:y=0,scrollTop:j=0}=((he=b.scrollablePlotArea)==null?void 0:he.scrollingContainer)||{},lt=S.outside&&typeof Mt!="number"?N.documentElement.getBoundingClientRect():{left:y,right:y+K,top:j,bottom:j+ct},rt=S.getLabel(),gt=this.renderer||b.renderer,vt=!!(b.xAxis[0]&&b.xAxis[0].opposite),{left:Ot,top:At}=x.getChartPosition(),$t=pt+j,Xt=0,Ct=et-bt;function wt(ve,Ce,Te,Ke,rn=!0){let un,Qt;return Te?(un=vt?0:Ct,Qt=M(ve-Ke/2,lt.left,lt.right-Ke-(S.outside?Ot:0))):(un=Ce-$t,Qt=M(Qt=rn?ve-Ke-B:ve+B,rn?Qt:lt.left,lt.right)),{x:Qt,y:un}}Q(v)&&(v=[!1,v]);let Dt=v.slice(0,I.length+1).reduce(function(ve,Ce,Te){if(Ce!==!1&&Ce!==""){let Ke=I[Te-1]||{isHeader:!0,plotX:I[0].plotX,plotY:et,series:{}},rn=Ke.isHeader,un=rn?S:Ke.series,Qt=un.tt=function(zt,Ft,ce){var pn;let Se=zt,{isHeader:xe,series:Ze}=Ft;if(!Se){let bn={padding:tt.padding,r:tt.borderRadius};w||(bn.fill=tt.backgroundColor,bn["stroke-width"]=(pn=tt.borderWidth)!=null?pn:1),Se=gt.label("",0,0,tt[xe?"headerShape":"shape"],void 0,void 0,tt.useHTML).addClass(S.getClassName(Ft,!0,xe)).attr(bn).add(rt)}return Se.isActive=!0,Se.attr({text:ce}),w||Se.css(tt.style).attr({stroke:tt.borderColor||Ft.color||Ze.color||"#333333"}),Se}(un.tt,Ke,Ce.toString()),Kt=Qt.getBBox(),Jt=Kt.width+Qt.strokeWidth();rn&&(Xt=Kt.height,Ct+=Xt,vt&&($t-=Xt));let{anchorX:Et,anchorY:Rt}=function(zt){let Ft,ce,{isHeader:Se,plotX:xe=0,plotY:Ze=0,series:pn}=zt;if(Se)Ft=Math.max(dt+xe,dt),ce=pt+et/2;else{let{xAxis:bn,yAxis:Ln}=pn;Ft=bn.pos+M(xe,-B,bn.len+B),pn.shouldShowTooltip(0,Ln.pos-pt+Ze,{ignoreX:!0})&&(ce=Ln.pos+Ze)}return{anchorX:Ft=M(Ft,lt.left-B,lt.right+B),anchorY:ce}}(Ke);if(typeof Rt=="number"){let zt=Kt.height+1,Ft=nt?nt.call(S,Jt,zt,Ke):wt(Et,Rt,rn,Jt);ve.push({align:nt?0:void 0,anchorX:Et,anchorY:Rt,boxWidth:Jt,point:Ke,rank:k(Ft.rank,rn?1:0),size:zt,target:Ft.y,tt:Qt,x:Ft.x})}else Qt.isActive=!1}return ve},[]);!nt&&Dt.some(ve=>{let{outside:Ce}=S,Te=(Ce?Ot:0)+ve.anchorX;return TeTe})&&(Dt=Dt.map(ve=>{let{x:Ce,y:Te}=wt(ve.anchorX,ve.anchorY,ve.point.isHeader,ve.boxWidth,!1);return z(ve,{target:Te,x:Ce})})),S.cleanSplit(),T(Dt,Ct);let jt={left:Ot,right:Ot};Dt.forEach(function(ve){let{x:Ce,boxWidth:Te,isHeader:Ke}=ve;!Ke&&(S.outside&&Ot+Cejt.right&&(jt.right=Ot+Ce))}),Dt.forEach(function(ve){let{x:Ce,anchorX:Te,anchorY:Ke,pos:rn,point:{isHeader:un}}=ve,Qt={visibility:rn===void 0?"hidden":"inherit",x:Ce,y:(rn||0)+$t,anchorX:Te,anchorY:Ke};if(S.outside&&Ce0&&(un||(Qt.x=Ce+Kt,Qt.anchorX=Te+Kt),un&&(Qt.x=(jt.right-jt.left)/2,Qt.anchorX=Te+Kt))}ve.tt.attr(Qt)});let{container:re,outside:le,renderer:Gt}=S;if(le&&re&&Gt){let{width:ve,height:Ce,x:Te,y:Ke}=rt.getBBox();Gt.setSize(ve+Te,Ce+Ke,!1),re.style.left=jt.left+"px",re.style.top=At+"px"}U&&rt.attr({opacity:rt.opacity===1?.999:1})}drawTracker(){if(!this.shouldStickOnContact()){this.tracker&&(this.tracker=this.tracker.destroy());return}let v=this.chart,I=this.label,S=this.shared?v.hoverPoints:v.hoverPoint;if(!I||!S)return;let b={x:0,y:0,width:0,height:0},K=this.getAnchor(S),ct=I.getBBox();K[0]+=v.plotLeft-(I.translateX||0),K[1]+=v.plotTop-(I.translateY||0),b.x=Math.min(0,K[0]),b.y=Math.min(0,K[1]),b.width=K[0]<0?Math.max(Math.abs(K[0]),ct.width-K[0]):Math.max(Math.abs(K[0]),ct.width),b.height=K[1]<0?Math.max(Math.abs(K[1]),ct.height-Math.abs(K[1])):Math.max(Math.abs(K[1]),ct.height),this.tracker?this.tracker.attr(b):(this.tracker=I.renderer.rect(b).addClass("highcharts-tracker").add(I),v.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(v){return v.replace('style="font-size: 0.8em"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')}tooltipFooterHeaderFormatter(v,I){let S=v.series,b=S.tooltipOptions,K=S.xAxis,ct=K&&K.dateTime,et={isFooter:I,labelConfig:v},dt=b.xDateFormat,pt=b[I?"footerFormat":"headerFormat"];return c(this,"headerFormatter",et,function(bt){ct&&!dt&&it(v.key)&&(dt=ct.getXDateFormat(v.key,b.dateTimeLabelFormats)),ct&&dt&&(v.point&&v.point.tooltipDateKeys||["key"]).forEach(function(Mt){pt=pt.replace("{point."+Mt+"}","{point."+Mt+":"+dt+"}")}),S.chart.styledMode&&(pt=this.styledModeFormat(pt)),bt.text=Y(pt,{point:v,series:S},this.chart)}),et.text}update(v){this.destroy(),this.init(this.chart,W(!0,this.options,v))}updatePosition(v){let{chart:I,container:S,distance:b,options:K,pointer:ct,renderer:et}=this,{height:dt=0,width:pt=0}=this.getLabel(),{left:bt,top:Mt,scaleX:w,scaleY:B}=ct.getChartPosition(),tt=(K.positioner||this.getPosition).call(this,pt,dt,v),nt=(v.plotX||0)+I.plotLeft,x=(v.plotY||0)+I.plotTop,y;et&&S&&(K.positioner&&(tt.x+=bt-b,tt.y+=Mt-b),y=(K.borderWidth||0)+2*b+2,et.setSize(pt+y,dt+y,!1),(w!==1||B!==1)&&(O(S,{transform:`scale(${w}, ${B})`}),nt*=w,x*=B),nt+=bt-tt.x,x+=Mt-tt.y),this.move(Math.round(tt.x),Math.round(tt.y||0),nt,x)}}return(q=l||(l={})).compose=function(u){_(V,"Core.Tooltip")&&A(u,"afterInit",function(){let v=this.chart;v.options.tooltip&&(v.tooltip=new q(v,v.options.tooltip,this))})},l}),g(d,"Core/Series/Point.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{animObject:X}=R,{defaultOptions:q}=st,{format:Z}=$,{addEvent:Y,crisp:V,erase:N,extend:U,fireEvent:T,getNestedProperty:A,isArray:M,isFunction:O,isNumber:H,isObject:z,merge:c,pick:D,syncTimeout:it,removeEvent:Q,uniqueKey:W}=J;class k{animateBeforeDestroy(){let C=this,h={x:C.startXPos,opacity:0},l=C.getGraphicalProps();l.singular.forEach(function(u){C[u]=C[u].animate(u==="dataLabel"?{x:C[u].startXPos,y:C[u].startYPos,opacity:0}:h)}),l.plural.forEach(function(u){C[u].forEach(function(v){v.element&&v.animate(U({x:C.startXPos},v.startYPos?{x:v.startXPos,y:v.startYPos}:{}))})})}applyOptions(C,h){let l=this.series,u=l.options.pointValKey||l.pointValKey;return U(this,C=k.prototype.optionsToObject.call(this,C)),this.options=this.options?U(this.options,C):C,C.group&&delete this.group,C.dataLabels&&delete this.dataLabels,u&&(this.y=k.prototype.getNestedProperty.call(this,u)),this.selected&&(this.state="select"),"name"in this&&h===void 0&&l.xAxis&&l.xAxis.hasNames&&(this.x=l.xAxis.nameToX(this)),this.x===void 0&&l?this.x=h!=null?h:l.autoIncrement():H(C.x)&&l.options.relativeXValue&&(this.x=l.autoIncrement(C.x)),this.isNull=this.isValid&&!this.isValid(),this.formatPrefix=this.isNull?"null":"point",this}destroy(){if(!this.destroyed){let C=this,h=C.series,l=h.chart,u=h.options.dataSorting,v=l.hoverPoints,I=X(C.series.chart.renderer.globalAnimation),S=()=>{for(let b in(C.graphic||C.graphics||C.dataLabel||C.dataLabels)&&(Q(C),C.destroyElements()),C)delete C[b]};C.legendItem&&l.legend.destroyItem(C),v&&(C.setState(),N(v,C),v.length||(l.hoverPoints=null)),C===l.hoverPoint&&C.onMouseOut(),u&&u.enabled?(this.animateBeforeDestroy(),it(S,I.duration)):S(),l.pointCount--}this.destroyed=!0}destroyElements(C){let h=this,l=h.getGraphicalProps(C);l.singular.forEach(function(u){h[u]=h[u].destroy()}),l.plural.forEach(function(u){h[u].forEach(function(v){v&&v.element&&v.destroy()}),delete h[u]})}firePointEvent(C,h,l){let u=this,v=this.series.options;u.manageEvent(C),C==="click"&&v.allowPointSelect&&(l=function(I){!u.destroyed&&u.select&&u.select(null,I.ctrlKey||I.metaKey||I.shiftKey)}),T(u,C,h,l)}getClassName(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(this.colorIndex!==void 0?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(C){let h,l,u=this,v=[],I={singular:[],plural:[]};for((C=C||{graphic:1,dataLabel:1}).graphic&&v.push("graphic","connector"),C.dataLabel&&v.push("dataLabel","dataLabelPath","dataLabelUpper"),l=v.length;l--;)u[h=v[l]]&&I.singular.push(h);return["graphic","dataLabel"].forEach(function(S){let b=S+"s";C[S]&&u[b]&&I.plural.push(b)}),I}getLabelConfig(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}}getNestedProperty(C){return C?C.indexOf("custom.")===0?A(C,this.options):this[C]:void 0}getZone(){let C=this.series,h=C.zones,l=C.zoneAxis||"y",u,v=0;for(u=h[0];this[l]>=u.value;)u=h[++v];return this.nonZonedColor||(this.nonZonedColor=this.color),u&&u.color&&!this.options.color?this.color=u.color:this.color=this.nonZonedColor,u}hasNewShapeType(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType}constructor(C,h,l){var u;this.formatPrefix="point",this.visible=!0,this.series=C,this.applyOptions(h,l),(u=this.id)!=null||(this.id=W()),this.resolveColor(),C.chart.pointCount++,T(this,"afterInit")}isValid(){return(H(this.x)||this.x instanceof Date)&&H(this.y)}optionsToObject(C){let h=this.series,l=h.options.keys,u=l||h.pointArrayMap||["y"],v=u.length,I={},S,b=0,K=0;if(H(C)||C===null)I[u[0]]=C;else if(M(C))for(!l&&C.length>v&&((S=typeof C[0])=="string"?I.name=C[0]:S==="number"&&(I.x=C[0]),b++);K0?k.prototype.setNestedProperty(I,C[b],u[K]):I[u[K]]=C[b]),b++,K++;else typeof C=="object"&&(I=C,C.dataLabels&&(h.hasDataLabels=()=>!0),C.marker&&(h._hasPointMarkers=!0));return I}pos(C,h=this.plotY){if(!this.destroyed){let{plotX:l,series:u}=this,{chart:v,xAxis:I,yAxis:S}=u,b=0,K=0;if(H(l)&&H(h))return C&&(b=I?I.pos:v.plotLeft,K=S?S.pos:v.plotTop),v.inverted&&I&&S?[S.len-h+K,I.len-l+b]:[l+b,h+K]}}resolveColor(){let C=this.series,h=C.chart.options.chart,l=C.chart.styledMode,u,v,I=h.colorCount,S;delete this.nonZonedColor,C.options.colorByPoint?(l||(u=(v=C.options.colors||C.chart.options.colors)[C.colorCounter],I=v.length),S=C.colorCounter,C.colorCounter++,C.colorCounter===I&&(C.colorCounter=0)):(l||(u=C.color),S=C.colorIndex),this.colorIndex=D(this.options.colorIndex,S),this.color=D(this.options.color,u)}setNestedProperty(C,h,l){return l.split(".").reduce(function(u,v,I,S){let b=S.length-1===I;return u[v]=b?h:z(u[v],!0)?u[v]:{},u[v]},C),C}shouldDraw(){return!this.isNull}tooltipFormatter(C){let h=this.series,l=h.tooltipOptions,u=D(l.valueDecimals,""),v=l.valuePrefix||"",I=l.valueSuffix||"";return h.chart.styledMode&&(C=h.chart.tooltip.styledModeFormat(C)),(h.pointArrayMap||["y"]).forEach(function(S){S="{point."+S,(v||I)&&(C=C.replace(RegExp(S+"}","g"),v+S+"}"+I)),C=C.replace(RegExp(S+"}","g"),S+":,."+u+"f}")}),Z(C,{point:this,series:this.series},h.chart)}update(C,h,l,u){let v,I=this,S=I.series,b=I.graphic,K=S.chart,ct=S.options;function et(){I.applyOptions(C);let dt=b&&I.hasMockGraphic,pt=I.y===null?!dt:dt;b&&pt&&(I.graphic=b.destroy(),delete I.hasMockGraphic),z(C,!0)&&(b&&b.element&&C&&C.marker&&C.marker.symbol!==void 0&&(I.graphic=b.destroy()),C!=null&&C.dataLabels&&I.dataLabel&&(I.dataLabel=I.dataLabel.destroy())),v=I.index,S.updateParallelArrays(I,v),ct.data[v]=z(ct.data[v],!0)||z(C,!0)?I.options:D(C,ct.data[v]),S.isDirty=S.isDirtyData=!0,!S.fixedBox&&S.hasCartesianSeries&&(K.isDirtyBox=!0),ct.legendType==="point"&&(K.isDirtyLegend=!0),h&&K.redraw(l)}h=D(h,!0),u===!1?et():I.firePointEvent("update",{options:C},et)}remove(C,h){this.series.removePoint(this.series.data.indexOf(this),C,h)}select(C,h){let l=this,u=l.series,v=u.chart;C=D(C,!l.selected),this.selectedStaging=C,l.firePointEvent(C?"select":"unselect",{accumulate:h},function(){l.selected=l.options.selected=C,u.options.data[u.data.indexOf(l)]=l.options,l.setState(C&&"select"),h||v.getSelectedPoints().forEach(function(I){let S=I.series;I.selected&&I!==l&&(I.selected=I.options.selected=!1,S.options.data[S.data.indexOf(I)]=I.options,I.setState(v.hoverPoints&&S.options.inactiveOtherPoints?"inactive":""),I.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(C){let{inverted:h,pointer:l}=this.series.chart;l&&(C=C?l.normalize(C):l.getChartCoordinatesFromPoint(this,h),l.runPointActions(C,this))}onMouseOut(){let C=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(C.hoverPoints||[]).forEach(function(h){h.setState()}),C.hoverPoints=C.hoverPoint=null}manageEvent(C){var u,v,I,S,b,K;let h=c(this.series.options.point,this.options),l=(u=h.events)==null?void 0:u[C];O(l)&&(!((v=this.hcEvents)!=null&&v[C])||((S=(I=this.hcEvents)==null?void 0:I[C])==null?void 0:S.map(ct=>ct.fn).indexOf(l))===-1)?((b=this.importedUserEvent)==null||b.call(this),this.importedUserEvent=Y(this,C,l)):this.importedUserEvent&&!l&&((K=this.hcEvents)!=null&&K[C])&&(Q(this,C),delete this.hcEvents[C],Object.keys(this.hcEvents)||delete this.importedUserEvent)}setState(C,h){var j;let l=this.series,u=this.state,v=l.options.states[C||"normal"]||{},I=q.plotOptions[l.type].marker&&l.options.marker,S=I&&I.enabled===!1,b=I&&I.states&&I.states[C||"normal"]||{},K=b.enabled===!1,ct=this.marker||{},et=l.chart,dt=I&&l.markerAttribs,pt=l.halo,bt,Mt,w,B=l.stateMarkerGraphic,tt;if((C=C||"")===this.state&&!h||this.selected&&C!=="select"||v.enabled===!1||C&&(K||S&&b.enabled===!1)||C&&ct.states&&ct.states[C]&&ct.states[C].enabled===!1)return;if(this.state=C,dt&&(bt=l.markerAttribs(this,C)),this.graphic&&!this.hasMockGraphic){if(u&&this.graphic.removeClass("highcharts-point-"+u),C&&this.graphic.addClass("highcharts-point-"+C),!et.styledMode){Mt=l.pointAttribs(this,C),w=D(et.options.chart.animation,v.animation);let lt=Mt.opacity;l.options.inactiveOtherPoints&&H(lt)&&(this.dataLabels||[]).forEach(function(rt){rt&&!rt.hasClass("highcharts-data-label-hidden")&&(rt.animate({opacity:lt},w),rt.connector&&rt.connector.animate({opacity:lt},w))}),this.graphic.animate(Mt,w)}bt&&this.graphic.animate(bt,D(et.options.chart.animation,b.animation,I.animation)),B&&B.hide()}else C&&b&&(tt=ct.symbol||l.symbol,B&&B.currentSymbol!==tt&&(B=B.destroy()),bt&&(B?B[h?"animate":"attr"]({x:bt.x,y:bt.y}):tt&&(l.stateMarkerGraphic=B=et.renderer.symbol(tt,bt.x,bt.y,bt.width,bt.height).add(l.markerGroup),B.currentSymbol=tt)),!et.styledMode&&B&&this.state!=="inactive"&&B.attr(l.pointAttribs(this,C))),B&&(B[C&&this.isInside?"show":"hide"](),B.element.point=this,B.addClass(this.getClassName(),!0));let nt=v.halo,x=this.graphic||B,y=x&&x.visibility||"inherit";nt&&nt.size&&x&&y!=="hidden"&&!this.isCluster?(pt||(l.halo=pt=et.renderer.path().add(x.parentGroup)),pt.show()[h?"animate":"attr"]({d:this.haloPath(nt.size)}),pt.attr({class:"highcharts-halo highcharts-color-"+D(this.colorIndex,l.colorIndex)+(this.className?" "+this.className:""),visibility:y,zIndex:-1}),pt.point=this,et.styledMode||pt.attr(U({fill:this.color||l.color,"fill-opacity":nt.opacity},L.filterUserAttributes(nt.attributes||{})))):(j=pt==null?void 0:pt.point)!=null&&j.haloPath&&!pt.point.destroyed&&pt.animate({d:pt.point.haloPath(0)},null,pt.hide),T(this,"afterSetState",{state:C})}haloPath(C){let h=this.pos();return h?this.series.chart.renderer.symbols.circle(V(h[0],1)-C,h[1]-C,2*C,2*C):[]}}return k}),g(d,"Core/Pointer.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{parse:J}=L,{charts:X,composed:q,isTouchDevice:Z}=R,{addEvent:Y,attr:V,css:N,extend:U,find:T,fireEvent:A,isNumber:M,isObject:O,objectEach:H,offset:z,pick:c,pushUnique:D,splat:it}=st;class Q{applyInactiveState(k){let _=[],C;(k||[]).forEach(function(h){C=h.series,_.push(C),C.linkedParent&&_.push(C.linkedParent),C.linkedSeries&&(_=_.concat(C.linkedSeries)),C.navigatorSeries&&_.push(C.navigatorSeries)}),this.chart.series.forEach(function(h){_.indexOf(h)===-1?h.setState("inactive",!0):h.options.inactiveOtherPoints&&h.setAllPointsToState("inactive")})}destroy(){let k=this;this.eventsToUnbind.forEach(_=>_()),this.eventsToUnbind=[],!R.chartCount&&(Q.unbindDocumentMouseUp&&Q.unbindDocumentMouseUp.forEach(_=>_()),Q.unbindDocumentTouchEnd&&(Q.unbindDocumentTouchEnd=Q.unbindDocumentTouchEnd())),clearInterval(k.tooltipTimeout),H(k,function(_,C){k[C]=void 0})}getSelectionMarkerAttrs(k,_){let C={args:{chartX:k,chartY:_},attrs:{},shapeType:"rect"};return A(this,"getSelectionMarkerAttrs",C,h=>{let l,{chart:u,zoomHor:v,zoomVert:I}=this,{mouseDownX:S=0,mouseDownY:b=0}=u,K=h.attrs;K.x=u.plotLeft,K.y=u.plotTop,K.width=v?1:u.plotWidth,K.height=I?1:u.plotHeight,v&&(l=k-S,K.width=Math.max(1,Math.abs(l)),K.x=(l>0?0:l)+S),I&&(l=_-b,K.height=Math.max(1,Math.abs(l)),K.y=(l>0?0:l)+b)}),C}drag(k){let{chart:_}=this,{mouseDownX:C=0,mouseDownY:h=0}=_,{panning:l,panKey:u,selectionMarkerFill:v}=_.options.chart,I=_.plotLeft,S=_.plotTop,b=_.plotWidth,K=_.plotHeight,ct=O(l)?l.enabled:l,et=u&&k[`${u}Key`],dt=k.chartX,pt=k.chartY,bt,Mt=this.selectionMarker;if((!Mt||!Mt.touch)&&(dtI+b&&(dt=I+b),ptS+K&&(pt=S+K),this.hasDragged=Math.sqrt(Math.pow(C-dt,2)+Math.pow(h-pt,2)),this.hasDragged>10)){bt=_.isInsidePlot(C-I,h-S,{visiblePlotOnly:!0});let{shapeType:w,attrs:B}=this.getSelectionMarkerAttrs(dt,pt);(_.hasCartesianSeries||_.mapView)&&this.hasZoom&&bt&&!et&&!Mt&&(this.selectionMarker=Mt=_.renderer[w](),Mt.attr({class:"highcharts-selection-marker",zIndex:7}).add(),_.styledMode||Mt.attr({fill:v||J("#334eff").setOpacity(.25).get()})),Mt&&Mt.attr(B),bt&&!Mt&&ct&&_.pan(k,l)}}dragStart(k){let _=this.chart;_.mouseIsDown=k.type,_.cancelClick=!1,_.mouseDownX=k.chartX,_.mouseDownY=k.chartY}getSelectionBox(k){let _={args:{marker:k},result:k.getBBox()};return A(this,"getSelectionBox",_),_.result}drop(k){let _,{chart:C,selectionMarker:h}=this;for(let l of C.axes)l.isPanning&&(l.isPanning=!1,(l.options.startOnTick||l.options.endOnTick||l.series.some(u=>u.boosted))&&(l.forceRedraw=!0,l.setExtremes(l.userMin,l.userMax,!1),_=!0));if(_&&C.redraw(),h&&k){if(this.hasDragged){let l=this.getSelectionBox(h);C.transform({axes:C.axes.filter(u=>u.zoomEnabled&&(u.coll==="xAxis"&&this.zoomX||u.coll==="yAxis"&&this.zoomY)),selection:xr({originalEvent:k,xAxis:[],yAxis:[]},l),from:l})}M(C.index)&&(this.selectionMarker=h.destroy())}C&&M(C.index)&&(N(C.container,{cursor:C._cursor}),C.cancelClick=this.hasDragged>10,C.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(k,_,C){let h;return k.forEach(function(l){let u=!(l.noSharedTooltip&&_)&&0>l.options.findNearestPointBy.indexOf("y"),v=l.searchPoint(C,u);O(v,!0)&&v.series&&(!O(h,!0)||function(I,S){var et,dt;let b=I.distX-S.distX,K=I.dist-S.dist,ct=((et=S.series.group)==null?void 0:et.zIndex)-((dt=I.series.group)==null?void 0:dt.zIndex);return b!==0&&_?b:K!==0?K:ct!==0?ct:I.series.index>S.series.index?-1:1}(h,v)>0)&&(h=v)}),h}getChartCoordinatesFromPoint(k,_){var u,v;let{xAxis:C,yAxis:h}=k.series,l=k.shapeArgs;if(C&&h){let I=(v=(u=k.clientX)!=null?u:k.plotX)!=null?v:0,S=k.plotY||0;return k.isNode&&l&&M(l.x)&&M(l.y)&&(I=l.x,S=l.y),_?{chartX:h.len+h.pos-S,chartY:C.len+C.pos-I}:{chartX:I+C.pos,chartY:S+h.pos}}if(l&&l.x&&l.y)return{chartX:l.x,chartY:l.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:k}=this.chart,_=z(k);this.chartPosition={left:_.left,top:_.top,scaleX:1,scaleY:1};let{offsetHeight:C,offsetWidth:h}=k;return h>2&&C>2&&(this.chartPosition.scaleX=_.width/h,this.chartPosition.scaleY=_.height/C),this.chartPosition}getCoordinates(k){let _={xAxis:[],yAxis:[]};for(let C of this.chart.axes)_[C.isXAxis?"xAxis":"yAxis"].push({axis:C,value:C.toValue(k[C.horiz?"chartX":"chartY"])});return _}getHoverData(k,_,C,h,l,u){let v=[],I=function(et){return et.visible&&!(!l&&et.directTouch)&&c(et.options.enableMouseTracking,!0)},S=_,b,K={chartX:u?u.chartX:void 0,chartY:u?u.chartY:void 0,shared:l};A(this,"beforeGetHoverData",K),b=S&&!S.stickyTracking?[S]:C.filter(et=>et.stickyTracking&&(K.filter||I)(et));let ct=h&&k||!u?k:this.findNearestKDPoint(b,l,u);return S=ct&&ct.series,ct&&(l&&!S.noSharedTooltip?(b=C.filter(function(et){return K.filter?K.filter(et):I(et)&&!et.noSharedTooltip})).forEach(function(et){let dt=T(et.points,function(pt){return pt.x===ct.x&&!pt.isNull});O(dt)&&(et.boosted&&et.boost&&(dt=et.boost.getPoint(dt)),v.push(dt))}):v.push(ct)),A(this,"afterGetHoverData",K={hoverPoint:ct}),{hoverPoint:K.hoverPoint,hoverSeries:S,hoverPoints:v}}getPointFromEvent(k){let _=k.target,C;for(;_&&!C;)C=_.point,_=_.parentNode;return C}onTrackerMouseOut(k){let _=this.chart,C=k.relatedTarget,h=_.hoverSeries;this.isDirectTouch=!1,!h||!C||h.stickyTracking||this.inClass(C,"highcharts-tooltip")||this.inClass(C,"highcharts-series-"+h.index)&&this.inClass(C,"highcharts-tracker")||h.onMouseOut()}inClass(k,_){let C=k,h;for(;C;){if(h=V(C,"class")){if(h.indexOf(_)!==-1)return!0;if(h.indexOf("highcharts-container")!==-1)return!1}C=C.parentElement}}constructor(k,_){var C;this.hasDragged=0,this.pointerCaptureEventsToUnbind=[],this.eventsToUnbind=[],this.options=_,this.chart=k,this.runChartClick=!!((C=_.chart.events)!=null&&C.click),this.pinchDown=[],this.setDOMEvents(),A(this,"afterInit")}normalize(k,_){let C=k.touches,h=C?C.length?C.item(0):c(C.changedTouches,k.changedTouches)[0]:k;_||(_=this.getChartPosition());let l=h.pageX-_.left,u=h.pageY-_.top;return U(k,{chartX:Math.round(l/=_.scaleX),chartY:Math.round(u/=_.scaleY)})}onContainerClick(k){let _=this.chart,C=_.hoverPoint,h=this.normalize(k),l=_.plotLeft,u=_.plotTop;!_.cancelClick&&(C&&this.inClass(h.target,"highcharts-tracker")?(A(C.series,"click",U(h,{point:C})),_.hoverPoint&&C.firePointEvent("click",h)):(U(h,this.getCoordinates(h)),_.isInsidePlot(h.chartX-l,h.chartY-u,{visiblePlotOnly:!0})&&A(_,"click",h)))}onContainerMouseDown(k){var C;let _=(1&(k.buttons||k.button))==1;k=this.normalize(k),R.isFirefox&&k.button!==0&&this.onContainerMouseMove(k),(k.button===void 0||_)&&(this.zoomOption(k),_&&((C=k.preventDefault)==null||C.call(k)),this.dragStart(k))}onContainerMouseLeave(k){let{pointer:_}=X[c(Q.hoverChartIndex,-1)]||{};k=this.normalize(k),this.onContainerMouseMove(k),_&&!this.inClass(k.relatedTarget,"highcharts-tooltip")&&(_.reset(),_.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(k){let _=this.chart,C=_.tooltip,h=this.normalize(k);this.setHoverChartIndex(k),(_.mouseIsDown==="mousedown"||this.touchSelect(h))&&this.drag(h),!_.openMenu&&(this.inClass(h.target,"highcharts-tracker")||_.isInsidePlot(h.chartX-_.plotLeft,h.chartY-_.plotTop,{visiblePlotOnly:!0}))&&!(C&&C.shouldStickOnContact(h))&&(this.inClass(h.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(h))}onDocumentTouchEnd(k){this.onDocumentMouseUp(k)}onContainerTouchMove(k){this.touchSelect(k)?this.onContainerMouseMove(k):this.touch(k)}onContainerTouchStart(k){this.touchSelect(k)?this.onContainerMouseDown(k):(this.zoomOption(k),this.touch(k,!0))}onDocumentMouseMove(k){let _=this.chart,C=_.tooltip,h=this.chartPosition,l=this.normalize(k,h);!h||_.isInsidePlot(l.chartX-_.plotLeft,l.chartY-_.plotTop,{visiblePlotOnly:!0})||C&&C.shouldStickOnContact(l)||l.target!==_.container.ownerDocument&&this.inClass(l.target,"highcharts-tracker")||this.reset()}onDocumentMouseUp(k){var _,C;(C=(_=X[c(Q.hoverChartIndex,-1)])==null?void 0:_.pointer)==null||C.drop(k)}pinch(k){let _=this,{chart:C,hasZoom:h,lastTouches:l}=_,u=[].map.call(k.touches||[],K=>_.normalize(K)),v=u.length,I=v===1&&(_.inClass(k.target,"highcharts-tracker")&&C.runTrackerClick||_.runChartClick),S=C.tooltip,b=v===1&&c(S==null?void 0:S.options.followTouchMove,!0);v>1?_.initiated=!0:b&&(_.initiated=!1),h&&_.initiated&&!I&&k.cancelable!==!1&&k.preventDefault(),k.type==="touchstart"?(_.pinchDown=u,_.res=!0,C.mouseDownX=k.chartX):b?this.runPointActions(_.normalize(k)):l&&(A(C,"touchpan",{originalEvent:k,touches:u},()=>{let K=ct=>{let et=ct[0],dt=ct[1]||et;return{x:et.chartX,y:et.chartY,width:dt.chartX-et.chartX,height:dt.chartY-et.chartY}};C.transform({axes:C.axes.filter(ct=>ct.zoomEnabled&&(this.zoomHor&&ct.horiz||this.zoomVert&&!ct.horiz)),to:K(u),from:K(l),trigger:k.type})}),_.res&&(_.res=!1,this.reset(!1,0))),_.lastTouches=u}reset(k,_){let C=this.chart,h=C.hoverSeries,l=C.hoverPoint,u=C.hoverPoints,v=C.tooltip,I=v&&v.shared?u:l;k&&I&&it(I).forEach(function(S){S.series.isCartesian&&S.plotX===void 0&&(k=!1)}),k?v&&I&&it(I).length&&(v.refresh(I),v.shared&&u?u.forEach(function(S){S.setState(S.state,!0),S.series.isCartesian&&(S.series.xAxis.crosshair&&S.series.xAxis.drawCrosshair(null,S),S.series.yAxis.crosshair&&S.series.yAxis.drawCrosshair(null,S))}):l&&(l.setState(l.state,!0),C.axes.forEach(function(S){S.crosshair&&l.series[S.coll]===S&&S.drawCrosshair(null,l)}))):(l&&l.onMouseOut(),u&&u.forEach(function(S){S.setState()}),h&&h.onMouseOut(),v&&v.hide(_),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),C.axes.forEach(function(S){S.hideCrosshair()}),C.hoverPoints=C.hoverPoint=void 0)}runPointActions(k,_,C){let h=this.chart,l=h.series,u=h.tooltip&&h.tooltip.options.enabled?h.tooltip:void 0,v=!!u&&u.shared,I=_||h.hoverPoint,S=I&&I.series||h.hoverSeries,b=(!k||k.type!=="touchmove")&&(!!_||S&&S.directTouch&&this.isDirectTouch),K=this.getHoverData(I,S,l,b,v,k);I=K.hoverPoint,S=K.hoverSeries;let ct=K.hoverPoints,et=S&&S.tooltipOptions.followPointer&&!S.tooltipOptions.split,dt=v&&S&&!S.noSharedTooltip;if(I&&(C||I!==h.hoverPoint||u&&u.isHidden)){if((h.hoverPoints||[]).forEach(function(pt){ct.indexOf(pt)===-1&&pt.setState()}),h.hoverSeries!==S&&S.onMouseOver(),this.applyInactiveState(ct),(ct||[]).forEach(function(pt){pt.setState("hover")}),h.hoverPoint&&h.hoverPoint.firePointEvent("mouseOut"),!I.series)return;h.hoverPoints=ct,h.hoverPoint=I,I.firePointEvent("mouseOver",void 0,()=>{u&&I&&u.refresh(dt?ct:I,k)})}else if(et&&u&&!u.isHidden){let pt=u.getAnchor([{}],k);h.isInsidePlot(pt[0],pt[1],{visiblePlotOnly:!0})&&u.updatePosition({plotX:pt[0],plotY:pt[1]})}this.unDocMouseMove||(this.unDocMouseMove=Y(h.container.ownerDocument,"mousemove",pt=>{var bt,Mt,w;return(w=(Mt=X[(bt=Q.hoverChartIndex)!=null?bt:-1])==null?void 0:Mt.pointer)==null?void 0:w.onDocumentMouseMove(pt)}),this.eventsToUnbind.push(this.unDocMouseMove)),h.axes.forEach(function(pt){let bt,Mt=c((pt.crosshair||{}).snap,!0);!Mt||(bt=h.hoverPoint)&&bt.series[pt.coll]===pt||(bt=T(ct,w=>w.series&&w.series[pt.coll]===pt)),bt||!Mt?pt.drawCrosshair(k,bt):pt.hideCrosshair()})}setDOMEvents(){let k=this.chart.container,_=k.ownerDocument;k.onmousedown=this.onContainerMouseDown.bind(this),k.onmousemove=this.onContainerMouseMove.bind(this),k.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(Y(k,"mouseenter",this.onContainerMouseEnter.bind(this)),Y(k,"mouseleave",this.onContainerMouseLeave.bind(this))),Q.unbindDocumentMouseUp||(Q.unbindDocumentMouseUp=[]),Q.unbindDocumentMouseUp.push(Y(_,"mouseup",this.onDocumentMouseUp.bind(this)));let C=this.chart.renderTo.parentElement;for(;C&&C.tagName!=="BODY";)this.eventsToUnbind.push(Y(C,"scroll",()=>{delete this.chartPosition})),C=C.parentElement;this.eventsToUnbind.push(Y(k,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),Y(k,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),Q.unbindDocumentTouchEnd||(Q.unbindDocumentTouchEnd=Y(_,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})),this.setPointerCapture(),Y(this.chart,"redraw",this.setPointerCapture.bind(this))}setPointerCapture(){var l,u;if(!Z)return;let k=this.pointerCaptureEventsToUnbind,_=this.chart,C=_.container,h=c((l=_.options.tooltip)==null?void 0:l.followTouchMove,!0)&&_.series.some(v=>v.options.findNearestPointBy.indexOf("y")>-1);!this.hasPointerCapture&&h?(k.push(Y(C,"pointerdown",v=>{var I,S;(I=v.target)!=null&&I.hasPointerCapture(v.pointerId)&&((S=v.target)==null||S.releasePointerCapture(v.pointerId))}),Y(C,"pointermove",v=>{var I,S;(S=(I=_.pointer)==null?void 0:I.getPointFromEvent(v))==null||S.onMouseOver(v)})),_.styledMode||N(C,{"touch-action":"none"}),C.className+=" highcharts-no-touch-action",this.hasPointerCapture=!0):this.hasPointerCapture&&!h&&(k.forEach(v=>v()),k.length=0,_.styledMode||N(C,{"touch-action":c((u=_.options.chart.style)==null?void 0:u["touch-action"],"manipulation")}),C.className=C.className.replace(" highcharts-no-touch-action",""),this.hasPointerCapture=!1)}setHoverChartIndex(k){var h;let _=this.chart,C=R.charts[c(Q.hoverChartIndex,-1)];if(C&&C!==_){let l={relatedTarget:_.container};k&&!(k!=null&&k.relatedTarget)&&(k=xr(xr({},l),k)),(h=C.pointer)==null||h.onContainerMouseLeave(k||l)}C&&C.mouseIsDown||(Q.hoverChartIndex=_.index)}touch(k,_){let C,{chart:h,pinchDown:l=[]}=this;this.setHoverChartIndex(),(k=this.normalize(k)).touches.length===1?h.isInsidePlot(k.chartX-h.plotLeft,k.chartY-h.plotTop,{visiblePlotOnly:!0})&&!h.openMenu?(_&&this.runPointActions(k),k.type==="touchmove"&&(C=!!l[0]&&Math.pow(l[0].chartX-k.chartX,2)+Math.pow(l[0].chartY-k.chartY,2)>=16),c(C,!0)&&this.pinch(k)):_&&this.reset():k.touches.length===2&&this.pinch(k)}touchSelect(k){return!!(this.chart.zooming.singleTouch&&k.touches&&k.touches.length===1)}zoomOption(k){let _=this.chart,C=_.inverted,h=_.zooming.type||"",l,u;/touch/.test(k.type)&&(h=c(_.zooming.pinchType,h)),this.zoomX=l=/x/.test(h),this.zoomY=u=/y/.test(h),this.zoomHor=l&&!C||u&&C,this.zoomVert=u&&!C||l&&C,this.hasZoom=l||u}}return($=Q||(Q={})).compose=function(W){D(q,"Core.Pointer")&&Y(W,"beforeRender",function(){this.pointer=new $(this,this.options)})},Q}),g(d,"Core/Legend/LegendSymbol.js",[d["Core/Utilities.js"]],function(L){var R;let{extend:st,merge:$,pick:J}=L;return function(X){function q(Z,Y,V){var C,h;let N=this.legendItem=this.legendItem||{},{chart:U,options:T}=this,{baseline:A=0,symbolWidth:M,symbolHeight:O}=Z,H=this.symbol||"circle",z=O/2,c=U.renderer,D=N.group,it=A-Math.round((((C=Z.fontMetrics)==null?void 0:C.b)||O)*(V?.4:.3)),Q={},W,k=T.marker,_=0;if(U.styledMode||(Q["stroke-width"]=Math.min(T.lineWidth||0,24),T.dashStyle?Q.dashstyle=T.dashStyle:T.linecap==="square"||(Q["stroke-linecap"]="round")),N.line=c.path().addClass("highcharts-graph").attr(Q).add(D),V&&(N.area=c.path().addClass("highcharts-area").add(D)),Q["stroke-linecap"]&&(_=Math.min(N.line.strokeWidth(),M)/2),M){let l=[["M",_,it],["L",M-_,it]];N.line.attr({d:l}),(h=N.area)==null||h.attr({d:[...l,["L",M-_,A],["L",_,A]]})}if(k&&k.enabled!==!1&&M){let l=Math.min(J(k.radius,z),z);H.indexOf("url")===0&&(k=$(k,{width:O,height:O}),l=0),N.symbol=W=c.symbol(H,M/2-l,it-l,2*l,2*l,st({context:"legend"},k)).addClass("highcharts-point").add(D),W.isMarker=!0}}X.areaMarker=function(Z,Y){q.call(this,Z,Y,!0)},X.lineMarker=q,X.rectangle=function(Z,Y){let V=Y.legendItem||{},N=Z.options,U=Z.symbolHeight,T=N.squareSymbol,A=T?U:Z.symbolWidth;V.symbol=this.chart.renderer.rect(T?(Z.symbolWidth-U)/2:0,Z.baseline-U+1,A,U,J(Z.options.symbolRadius,U/2)).addClass("highcharts-point").attr({zIndex:3}).add(V.group)}}(R||(R={})),R}),g(d,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:L}=this.series.chart;return typeof this.y!="number"?"":L(this.y,-1)},padding:5,style:{fontSize:"0.7em",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),g(d,"Core/Series/SeriesRegistry.js",[d["Core/Globals.js"],d["Core/Defaults.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{defaultOptions:X}=R,{extend:q,extendClass:Z,merge:Y}=$;return function(V){function N(U,T){let A=X.plotOptions||{},M=T.defaultOptions,O=T.prototype;return O.type=U,O.pointClass||(O.pointClass=st),!V.seriesTypes[U]&&(M&&(A[U]=M),V.seriesTypes[U]=T,!0)}V.seriesTypes=L.seriesTypes,V.registerSeriesType=N,V.seriesType=function(U,T,A,M,O){let H=X.plotOptions||{};if(T=T||"",H[U]=Y(H[T],A),delete V.seriesTypes[U],N(U,Z(V.seriesTypes[T]||function(){},M)),V.seriesTypes[U].prototype.type=U,O){class z extends st{}q(z.prototype,O),V.seriesTypes[U].prototype.pointClass=z}return V.seriesTypes[U]}}(J||(J={})),J}),g(d,"Core/Series/Series.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Series/Point.js"],d["Core/Series/SeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let{animObject:N,setAnimation:U}=L,{defaultOptions:T}=R,{registerEventOptions:A}=st,{svg:M,win:O}=$,{seriesTypes:H}=Z,{arrayMax:z,arrayMin:c,clamp:D,correctFloat:it,crisp:Q,defined:W,destroyObjectProperties:k,diffObjects:_,erase:C,error:h,extend:l,find:u,fireEvent:v,getClosestDistance:I,getNestedProperty:S,insertItem:b,isArray:K,isNumber:ct,isString:et,merge:dt,objectEach:pt,pick:bt,removeEvent:Mt,splat:w,syncTimeout:B}=V;class tt{constructor(){this.zoneAxis="y"}init(x,y){let j;v(this,"init",{options:y});let lt=this,rt=x.series;this.eventsToUnbind=[],lt.chart=x,lt.options=lt.setOptions(y);let gt=lt.options,vt=gt.visible!==!1;lt.linkedSeries=[],lt.bindAxes(),l(lt,{name:gt.name,state:"",visible:vt,selected:gt.selected===!0}),A(this,gt);let Ot=gt.events;(Ot&&Ot.click||gt.point&>.point.events&>.point.events.click||gt.allowPointSelect)&&(x.runTrackerClick=!0),lt.getColor(),lt.getSymbol(),lt.parallelArrays.forEach(function(At){lt[At+"Data"]||(lt[At+"Data"]=[])}),lt.isCartesian&&(x.hasCartesianSeries=!0),rt.length&&(j=rt[rt.length-1]),lt._i=bt(j&&j._i,-1)+1,lt.opacity=lt.options.opacity,x.orderItems("series",b(this,rt)),gt.dataSorting&>.dataSorting.enabled?lt.setDataSortingOptions():lt.points||lt.data||lt.setData(gt.data,!1),v(this,"afterInit")}is(x){return H[x]&&this instanceof H[x]}bindAxes(){let x,y=this,j=y.options,lt=y.chart;v(this,"bindAxes",null,function(){(y.axisTypes||[]).forEach(function(rt){(lt[rt]||[]).forEach(function(gt){x=gt.options,(bt(j[rt],0)===gt.index||j[rt]!==void 0&&j[rt]===x.id)&&(b(y,gt.series),y[rt]=gt,gt.isDirty=!0)}),y[rt]||y.optionalAxis===rt||h(18,!0,lt)})}),v(this,"afterBindAxes")}updateParallelArrays(x,y,j){let lt=x.series,rt=ct(y)?function(gt){let vt=gt==="y"&<.toYData?lt.toYData(x):x[gt];lt[gt+"Data"][y]=vt}:function(gt){Array.prototype[y].apply(lt[gt+"Data"],j)};lt.parallelArrays.forEach(rt)}hasData(){return this.visible&&this.dataMax!==void 0&&this.dataMin!==void 0||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(x,y){let j=x.marker,lt=y.marker||{};return j&&(lt.enabled&&!j.enabled||lt.symbol!==j.symbol||lt.height!==j.height||lt.width!==j.width)}autoIncrement(x){let y=this.options,j=y.pointIntervalUnit,lt=y.relativeXValue,rt=this.chart.time,gt=this.xIncrement,vt,Ot;return gt=bt(gt,y.pointStart,0),this.pointInterval=Ot=bt(this.pointInterval,y.pointInterval,1),lt&&ct(x)&&(Ot*=x),j&&(vt=new rt.Date(gt),j==="day"?rt.set("Date",vt,rt.get("Date",vt)+Ot):j==="month"?rt.set("Month",vt,rt.get("Month",vt)+Ot):j==="year"&&rt.set("FullYear",vt,rt.get("FullYear",vt)+Ot),Ot=vt.getTime()-gt),lt&&ct(x)?gt+Ot:(this.xIncrement=gt+Ot,gt)}setDataSortingOptions(){let x=this.options;l(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),W(x.pointRange)||(x.pointRange=1)}setOptions(x){var re,le;let y,j=this.chart,lt=j.options.plotOptions,rt=j.userOptions||{},gt=dt(x),vt=j.styledMode,Ot={plotOptions:lt,userOptions:gt};v(this,"setOptions",Ot);let At=Ot.plotOptions[this.type],$t=rt.plotOptions||{},Xt=$t.series||{},Ct=T.plotOptions[this.type]||{},wt=$t[this.type]||{};this.userOptions=Ot.userOptions;let Dt=dt(At,lt.series,wt,gt);this.tooltipOptions=dt(T.tooltip,(re=T.plotOptions.series)==null?void 0:re.tooltip,Ct==null?void 0:Ct.tooltip,j.userOptions.tooltip,(le=$t.series)==null?void 0:le.tooltip,wt.tooltip,gt.tooltip),this.stickyTracking=bt(gt.stickyTracking,wt.stickyTracking,Xt.stickyTracking,!!this.tooltipOptions.shared&&!this.noSharedTooltip||Dt.stickyTracking),At.marker===null&&delete Dt.marker,this.zoneAxis=Dt.zoneAxis||"y";let jt=this.zones=(Dt.zones||[]).map(Gt=>xr({},Gt));return(Dt.negativeColor||Dt.negativeFillColor)&&!Dt.zones&&(y={value:Dt[this.zoneAxis+"Threshold"]||Dt.threshold||0,className:"highcharts-negative"},vt||(y.color=Dt.negativeColor,y.fillColor=Dt.negativeFillColor),jt.push(y)),jt.length&&W(jt[jt.length-1].value)&&jt.push(vt?{}:{color:this.color,fillColor:this.fillColor}),v(this,"afterSetOptions",{options:Dt}),Dt}getName(){return bt(this.options.name,"Series "+(this.index+1))}getCyclic(x,y,j){let lt,rt,gt=this.chart,vt=`${x}Index`,Ot=`${x}Counter`,At=(j==null?void 0:j.length)||gt.options.chart.colorCount;!y&&(W(rt=bt(x==="color"?this.options.colorIndex:void 0,this[vt]))?lt=rt:(gt.series.length||(gt[Ot]=0),lt=gt[Ot]%At,gt[Ot]+=1),j&&(y=j[lt])),lt!==void 0&&(this[vt]=lt),this[x]=y}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||T.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let x=this.options.marker;this.getCyclic("symbol",x.symbol,this.chart.options.symbols)}findPointIndex(x,y){let j,lt,rt,gt=x.id,vt=x.x,Ot=this.points,At=this.options.dataSorting;if(gt){let $t=this.chart.get(gt);$t instanceof X&&(j=$t)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let $t=Xt=>!Xt.touched&&Xt.index===x.index;if(At&&At.matchByName?$t=Xt=>!Xt.touched&&Xt.name===x.name:this.options.relativeXValue&&($t=Xt=>!Xt.touched&&Xt.options.x===x.x),!(j=u(Ot,$t)))return}return j&&(rt=j&&j.index)!==void 0&&(lt=!0),rt===void 0&&ct(vt)&&(rt=this.xData.indexOf(vt,y)),rt!==-1&&rt!==void 0&&this.cropped&&(rt=rt>=this.cropStart?rt-this.cropStart:rt),!lt&&ct(rt)&&Ot[rt]&&Ot[rt].touched&&(rt=void 0),rt}updateData(x,y){let j=this.options,lt=j.dataSorting,rt=this.points,gt=[],vt=this.requireSorting,Ot=x.length===rt.length,At,$t,Xt,Ct,wt=!0;if(this.xIncrement=null,x.forEach(function(Dt,jt){let re,le=W(Dt)&&this.pointClass.prototype.optionsToObject.call({series:this},Dt)||{},Gt=le.x;le.id||ct(Gt)?((re=this.findPointIndex(le,Ct))===-1||re===void 0?gt.push(Dt):rt[re]&&Dt!==j.data[re]?(rt[re].update(Dt,!1,null,!1),rt[re].touched=!0,vt&&(Ct=re+1)):rt[re]&&(rt[re].touched=!0),(!Ot||jt!==re||lt&<.enabled||this.hasDerivedData)&&(At=!0)):gt.push(Dt)},this),At)for($t=rt.length;$t--;)(Xt=rt[$t])&&!Xt.touched&&Xt.remove&&Xt.remove(!1,y);else!Ot||lt&<.enabled?wt=!1:(x.forEach(function(Dt,jt){Dt===rt[jt].y||rt[jt].destroyed||rt[jt].update(Dt,!1,null,!1)}),gt.length=0);return rt.forEach(function(Dt){Dt&&(Dt.touched=!1)}),!!wt&&(gt.forEach(function(Dt){this.addPoint(Dt,!1,null,null,!1)},this),this.xIncrement===null&&this.xData&&this.xData.length&&(this.xIncrement=z(this.xData),this.autoIncrement()),!0)}setData(x,y=!0,j,lt){var un;let rt=this,gt=rt.points,vt=gt&>.length||0,Ot=rt.options,At=rt.chart,$t=Ot.dataSorting,Xt=rt.xAxis,Ct=Ot.turboThreshold,wt=this.xData,Dt=this.yData,jt=rt.pointArrayMap,re=jt&&jt.length,le=Ot.keys,Gt,he,ve,Ce=0,Te=1,Ke;At.options.chart.allowMutatingData||(Ot.data&&delete rt.options.data,rt.userOptions.data&&delete rt.userOptions.data,Ke=dt(!0,x));let rn=(x=Ke||x||[]).length;if($t&&$t.enabled&&(x=this.sortData(x)),At.options.chart.allowMutatingData&<!==!1&&rn&&vt&&!rt.cropped&&!rt.hasGroupedData&&rt.visible&&!rt.boosted&&(ve=this.updateData(x,j)),!ve){rt.xIncrement=null,rt.colorCounter=0,this.parallelArrays.forEach(function(Kt){rt[Kt+"Data"].length=0});let Qt=Ct&&rn>Ct;if(Qt){let Kt=rt.getFirstValidPoint(x),Jt=rt.getFirstValidPoint(x,rn-1,-1),Et=Rt=>!!(K(Rt)&&(le||ct(Rt[0])));if(ct(Kt)&&ct(Jt))for(Gt=0;Gt=0?Ce:0,Te=Te>=0?Te:1),Kt.length===1&&(Te=0),Ce===Te)for(Gt=0;Gt{let vt=S(j,rt),Ot=S(j,gt);return Otvt?1:0}).forEach(function(rt,gt){rt.x=gt},this),y.linkedSeries&&y.linkedSeries.forEach(function(rt){let gt=rt.options,vt=gt.data;gt.dataSorting&>.dataSorting.enabled||!vt||(vt.forEach(function(Ot,At){vt[At]=lt(rt,Ot),x[At]&&(vt[At].x=x[At].x,vt[At].index=At)}),rt.setData(vt,!1))}),x}getProcessedData(x){let y=this,j=y.xAxis,lt=y.options.cropThreshold,rt=j==null?void 0:j.logarithmic,gt=y.isCartesian,vt,Ot,At=0,$t,Xt,Ct,wt=y.xData,Dt=y.yData,jt=!1,re=wt.length;j&&(Xt=($t=j.getExtremes()).min,Ct=$t.max,jt=!!(j.categories&&!j.names.length)),gt&&y.sorted&&!x&&(!lt||re>lt||y.forceCrop)&&(wt[re-1]Ct?(wt=[],Dt=[]):y.yData&&(wt[0]Ct)&&(wt=(vt=this.cropData(y.xData,y.yData,Xt,Ct)).xData,Dt=vt.yData,At=vt.start,Ot=!0));let le=I([rt?wt.map(rt.log2lin):wt],()=>y.requireSorting&&!jt&&h(15,!1,y.chart));return{xData:wt,yData:Dt,cropped:Ot,cropStart:At,closestPointRange:le}}processData(x){let y=this.xAxis;if(this.isCartesian&&!this.isDirty&&!y.isDirty&&!this.yAxis.isDirty&&!x)return!1;let j=this.getProcessedData();this.cropped=j.cropped,this.cropStart=j.cropStart,this.processedXData=j.xData,this.processedYData=j.yData,this.closestPointRange=this.basePointRange=j.closestPointRange,v(this,"afterProcessData")}cropData(x,y,j,lt){let rt=x.length,gt,vt,Ot=0,At=rt;for(gt=0;gt=j){Ot=Math.max(0,gt-1);break}for(vt=gt;vtlt){At=vt+1;break}return{xData:x.slice(Ot,At),yData:y.slice(Ot,At),start:Ot,end:At}}generatePoints(){let x=this.options,y=this.processedData||x.data,j=this.processedXData,lt=this.processedYData,rt=this.pointClass,gt=j.length,vt=this.cropStart||0,Ot=this.hasGroupedData,At=x.keys,$t=[],Xt=x.dataGrouping&&x.dataGrouping.groupAll?vt:0,Ct,wt,Dt,jt,re=this.data;if(!re&&!Ot){let le=[];le.length=y.length,re=this.data=le}for(At&&Ot&&(this.options.keys=!1),jt=0;jt0:jt.length)||!vt),wt=y||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!j||(Te[re+gt]||Dt)>=Gt&&(Te[re-gt]||Dt)<=he,Ct&&wt)if(le=jt.length)for(;le--;)ct(jt[le])&&(rt[ve++]=jt[le]);else rt[ve++]=jt;let Ke={activeYData:rt,dataMin:c(rt),dataMax:z(rt)};return v(this,"afterGetExtremes",{dataExtremes:Ke}),Ke}applyExtremes(){let x=this.getExtremes();return this.dataMin=x.dataMin,this.dataMax=x.dataMax,x}getFirstValidPoint(x,y=0,j=1){let lt=x.length,rt=y;for(;rt>=0&&rt1)&&(gt.step=function(Ct,wt){Xt&&Xt.apply(wt,arguments),wt.prop==="width"&&(At!=null&&At.element)&&At.attr(rt?"height":"width",Ct+99)}),Ot.addClass("highcharts-animating").animate($t,gt)}}afterAnimate(){this.setClip(),pt(this.chart.sharedClips,(x,y,j)=>{x&&!this.chart.container.querySelector(`[clip-path="url(#${x.id})"]`)&&(x.destroy(),delete j[y])}),this.finishedAnimating=!0,v(this,"afterAnimate")}drawPoints(x=this.points){let y,j,lt,rt,gt,vt,Ot,At=this.chart,$t=At.styledMode,{colorAxis:Xt,options:Ct}=this,wt=Ct.marker,Dt=this[this.specialGroup||"markerGroup"],jt=this.xAxis,re=bt(wt.enabled,!jt||!!jt.isRadial||null,this.closestPointRangePx>=wt.enabledThreshold*wt.radius);if(wt.enabled!==!1||this._hasPointMarkers)for(y=0;y0||j.hasImage)&&(j.graphic=lt=At.renderer.symbol(le,Ot.x,Ot.y,Ot.width,Ot.height,vt?gt:wt).add(Dt),this.enabledDataSorting&&At.hasRendered&&(lt.attr({x:j.startXPos}),rt="animate")),lt&&rt==="animate"&<[Gt?"show":"hide"](Gt).animate(Ot),lt){let he=this.pointAttribs(j,$t||!j.selected?void 0:"select");$t?Xt&<.css({fill:he.fill}):lt[rt](he)}lt&<.addClass(j.getClassName(),!0)}else lt&&(j.graphic=lt.destroy())}markerAttribs(x,y){let j=this.options,lt=j.marker,rt=x.marker||{},gt=rt.symbol||lt.symbol,vt={},Ot,At,$t=bt(rt.radius,lt&<.radius);y&&(Ot=lt.states[y],$t=bt((At=rt.states&&rt.states[y])&&At.radius,Ot&&Ot.radius,$t&&$t+(Ot&&Ot.radiusPlus||0))),x.hasImage=gt&>.indexOf("url")===0,x.hasImage&&($t=0);let Xt=x.pos();return ct($t)&&Xt&&(j.crisp&&(Xt[0]=Q(Xt[0],x.hasImage?0:gt==="rect"?(lt==null?void 0:lt.lineWidth)||0:1)),vt.x=Xt[0]-$t,vt.y=Xt[1]-$t),$t&&(vt.width=vt.height=2*$t),vt}pointAttribs(x,y){let j=this.options.marker,lt=x&&x.options,rt=lt&<.marker||{},gt=lt&<.color,vt=x&&x.color,Ot=x&&x.zone&&x.zone.color,At,$t,Xt=this.color,Ct,wt,Dt=bt(rt.lineWidth,j.lineWidth),jt=1;return Xt=gt||Ot||vt||Xt,Ct=rt.fillColor||j.fillColor||Xt,wt=rt.lineColor||j.lineColor||Xt,y=y||"normal",At=j.states[y]||{},Dt=bt(($t=rt.states&&rt.states[y]||{}).lineWidth,At.lineWidth,Dt+bt($t.lineWidthPlus,At.lineWidthPlus,0)),Ct=$t.fillColor||At.fillColor||Ct,{stroke:wt=$t.lineColor||At.lineColor||wt,"stroke-width":Dt,fill:Ct,opacity:jt=bt($t.opacity,At.opacity,jt)}}destroy(x){let y,j,lt,rt=this,gt=rt.chart,vt=/AppleWebKit\/533/.test(O.navigator.userAgent),Ot=rt.data||[];for(v(rt,"destroy",{keepEventsForUpdate:x}),this.removeEvents(x),(rt.axisTypes||[]).forEach(function(At){(lt=rt[At])&<.series&&(C(lt.series,rt),lt.isDirty=lt.forceRedraw=!0)}),rt.legendItem&&rt.chart.legend.destroyItem(rt),y=Ot.length;y--;)(j=Ot[y])&&j.destroy&&j.destroy();for(let At of rt.zones)k(At,void 0,!0);V.clearTimeout(rt.animationTimeout),pt(rt,function(At,$t){At instanceof Y&&!At.survive&&At[vt&&$t==="group"?"hide":"destroy"]()}),gt.hoverSeries===rt&&(gt.hoverSeries=void 0),C(gt.series,rt),gt.orderItems("series"),pt(rt,function(At,$t){x&&$t==="hcEvents"||delete rt[$t]})}applyZones(){let{area:x,chart:y,graph:j,zones:lt,points:rt,xAxis:gt,yAxis:vt,zoneAxis:Ot}=this,{inverted:At,renderer:$t}=y,Xt=this[`${Ot}Axis`],{isXAxis:Ct,len:wt=0}=Xt||{},Dt=((j==null?void 0:j.strokeWidth())||0)/2+1,jt=(re,le=0,Gt=0)=>{At&&(Gt=wt-Gt);let{translated:he=0,lineClip:ve}=re,Ce=Gt-he;ve==null||ve.push(["L",le,Math.abs(Ce){ve.forEach((Ce,Te)=>{(Ce[0]==="M"||Ce[0]==="L")&&(ve[Te]=[Ce[0],Ct?wt-Ce[1]:Ce[1],Ct?Ce[2]:wt-Ce[2]])})};if(lt.forEach(ve=>{ve.lineClip=[],ve.translated=D(Xt.toPixels(bt(ve.value,re),!0)||0,0,wt)}),j&&!this.showLine&&j.hide(),x&&x.hide(),Ot==="y"&&rt.length{var zt,Ft;let Ce=ve.lineClip||[],Te=Math.round(ve.translated||0);gt.reversed&&Ce.reverse();let{clip:Ke,simpleClip:rn}=ve,un=0,Qt=0,Kt=gt.len,Jt=vt.len;Ct?(un=Te,Kt=he):(Qt=Te,Jt=he);let Et=[["M",un,Qt],["L",Kt,Qt],["L",Kt,Jt],["L",un,Jt],["Z"]],Rt=[Et[0],...Ce,Et[1],Et[2],...Gt,Et[3],Et[4]];Gt=Ce.reverse(),he=Te,At&&(le(Rt),x&&le(Et)),Ke?(Ke.animate({d:Rt}),rn==null||rn.animate({d:Et})):(Ke=ve.clip=$t.path(Rt),x&&(rn=ve.simpleClip=$t.path(Et))),j&&((zt=ve.graph)==null||zt.clip(Ke)),x&&((Ft=ve.area)==null||Ft.clip(rn))})}else this.visible&&(j&&j.show(),x&&x.show())}plotGroup(x,y,j,lt,rt){let gt=this[x],vt=!gt,Ot={visibility:j,zIndex:lt||.1};return W(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(Ot.opacity=this.opacity),gt||(this[x]=gt=this.chart.renderer.g().add(rt)),gt.addClass("highcharts-"+y+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(W(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(gt.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),gt.attr(Ot)[vt?"attr":"animate"](this.getPlotBox(y)),gt}getPlotBox(x){let y=this.xAxis,j=this.yAxis,lt=this.chart,rt=lt.inverted&&!lt.polar&&y&&this.invertible&&x==="series";return lt.inverted&&(y=j,j=this.xAxis),{translateX:y?y.left:lt.plotLeft,translateY:j?j.top:lt.plotTop,rotation:rt?90:0,rotationOriginX:rt?(y.len-j.len)/2:0,rotationOriginY:rt?(y.len+j.len)/2:0,scaleX:rt?-1:1,scaleY:1}}removeEvents(x){let{eventsToUnbind:y}=this;x||Mt(this),y.length&&(y.forEach(j=>{j()}),y.length=0)}render(){var $t,Xt,Ct,wt,Dt;let x=this,{chart:y,options:j,hasRendered:lt}=x,rt=N(j.animation),gt=x.visible?"inherit":"hidden",vt=j.zIndex,Ot=y.seriesGroup,At=x.finishedAnimating?0:rt.duration;v(this,"render"),x.plotGroup("group","series",gt,vt,Ot),x.markerGroup=x.plotGroup("markerGroup","markers",gt,vt,Ot),j.clip!==!1&&x.setClip(),At&&(($t=x.animate)==null||$t.call(x,!0)),x.drawGraph&&(x.drawGraph(),x.applyZones()),x.visible&&x.drawPoints(),(Xt=x.drawDataLabels)==null||Xt.call(x),(Ct=x.redrawPoints)==null||Ct.call(x),j.enableMouseTracking&&((wt=x.drawTracker)==null||wt.call(x)),At&&((Dt=x.animate)==null||Dt.call(x)),lt||(At&&rt.defer&&(At+=rt.defer),x.animationTimeout=B(()=>{x.afterAnimate()},At||0)),x.isDirty=!1,x.hasRendered=!0,v(x,"afterRender")}redraw(){let x=this.isDirty||this.isDirtyData;this.translate(),this.render(),x&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(x,y){let{xAxis:j,yAxis:lt}=this,rt=this.chart.inverted;return this.searchKDTree({clientX:rt?j.len-x.chartY+j.pos:x.chartX-j.pos,plotY:rt?lt.len-x.chartX+lt.pos:x.chartY-lt.pos},y,x)}buildKDTree(x){this.buildingKdTree=!0;let y=this,j=y.options.findNearestPointBy.indexOf("y")>-1?2:1;delete y.kdTree,B(function(){y.kdTree=function lt(rt,gt,vt){let Ot,At,$t=rt==null?void 0:rt.length;if($t)return Ot=y.kdAxisArray[gt%vt],rt.sort((Xt,Ct)=>(Xt[Ot]||0)-(Ct[Ot]||0)),{point:rt[At=Math.floor($t/2)],left:lt(rt.slice(0,At),gt+1,vt),right:lt(rt.slice(At+1),gt+1,vt)}}(y.getValidPoints(void 0,!y.directTouch),j,j),y.buildingKdTree=!1},y.options.kdNow||(x==null?void 0:x.type)==="touchstart"?0:1)}searchKDTree(x,y,j){let lt=this,[rt,gt]=this.kdAxisArray,vt=y?"distX":"dist",Ot=(lt.options.findNearestPointBy||"").indexOf("y")>-1?2:1,At=!!lt.isBubble;if(this.kdTree||this.buildingKdTree||this.buildKDTree(j),this.kdTree)return function $t(Xt,Ct,wt,Dt){var Ke;let jt=Ct.point,re=lt.kdAxisArray[wt%Dt],le,Gt,he=jt;(function(rn,un){var ce;let Qt=rn[rt],Kt=un[rt],Jt=W(Qt)&&W(Kt)?Qt-Kt:null,Et=rn[gt],Rt=un[gt],zt=W(Et)&&W(Rt)?Et-Rt:0,Ft=At&&((ce=un.marker)==null?void 0:ce.radius)||0;un.dist=Math.sqrt((Jt&&Jt*Jt||0)+zt*zt)-Ft,un.distX=W(Jt)?Math.abs(Jt)-Ft:Number.MAX_VALUE})(Xt,jt);let ve=(Xt[re]||0)-(jt[re]||0)+(At&&((Ke=jt.marker)==null?void 0:Ke.radius)||0),Ce=ve<0?"left":"right",Te=ve<0?"right":"left";return Ct[Ce]&&(he=(le=$t(Xt,Ct[Ce],wt+1,Dt))[vt]=0&><=(lt?lt.len:y.plotHeight)&&rt>=0&&rt<=(j?j.len:y.plotWidth)}drawTracker(){var Ct;let x=this,y=x.options,j=y.trackByArea,lt=[].concat((j?x.areaPath:x.graphPath)||[]),rt=x.chart,gt=rt.pointer,vt=rt.renderer,Ot=((Ct=rt.options.tooltip)==null?void 0:Ct.snap)||0,At=()=>{y.enableMouseTracking&&rt.hoverSeries!==x&&x.onMouseOver()},$t="rgba(192,192,192,"+(M?1e-4:.002)+")",Xt=x.tracker;Xt?Xt.attr({d:lt}):x.graph&&(x.tracker=Xt=vt.path(lt).attr({visibility:x.visible?"inherit":"hidden",zIndex:2}).addClass(j?"highcharts-tracker-area":"highcharts-tracker-line").add(x.group),rt.styledMode||Xt.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:$t,fill:j?$t:"none","stroke-width":x.graph.strokeWidth()+(j?0:2*Ot)}),[x.tracker,x.markerGroup,x.dataLabelsGroup].forEach(wt=>{wt&&(wt.addClass("highcharts-tracker").on("mouseover",At).on("mouseout",Dt=>{gt==null||gt.onTrackerMouseOut(Dt)}),y.cursor&&!rt.styledMode&&wt.css({cursor:y.cursor}),wt.on("touchstart",At))})),v(this,"afterDrawTracker")}addPoint(x,y,j,lt,rt){let gt,vt,Ot=this.options,At=this.data,$t=this.chart,Xt=this.xAxis,Ct=Xt&&Xt.hasNames&&Xt.names,wt=Ot.data,Dt=this.xData;y=bt(y,!0);let jt={series:this};this.pointClass.prototype.applyOptions.apply(jt,[x]);let re=jt.x;if(vt=Dt.length,this.requireSorting&&rere;)vt--;this.updateParallelArrays(jt,"splice",[vt,0,0]),this.updateParallelArrays(jt,vt),Ct&&jt.name&&(Ct[re]=jt.name),wt.splice(vt,0,x),(gt||this.processedData)&&(this.data.splice(vt,0,null),this.processData()),Ot.legendType==="point"&&this.generatePoints(),j&&(At[0]&&At[0].remove?At[0].remove(!1):(At.shift(),this.updateParallelArrays(jt,"shift"),wt.shift())),rt!==!1&&v(this,"addPoint",{point:jt}),this.isDirty=!0,this.isDirtyData=!0,y&&$t.redraw(lt)}removePoint(x,y,j){let lt=this,rt=lt.data,gt=rt[x],vt=lt.points,Ot=lt.chart,At=function(){vt&&vt.length===rt.length&&vt.splice(x,1),rt.splice(x,1),lt.options.data.splice(x,1),lt.updateParallelArrays(gt||{series:lt},"splice",[x,1]),gt&>.destroy(),lt.isDirty=!0,lt.isDirtyData=!0,y&&Ot.redraw()};U(j,Ot),y=bt(y,!0),gt?gt.firePointEvent("remove",null,At):At()}remove(x,y,j,lt){let rt=this,gt=rt.chart;function vt(){rt.destroy(lt),gt.isDirtyLegend=gt.isDirtyBox=!0,gt.linkSeries(lt),bt(x,!0)&>.redraw(y)}j!==!1?v(rt,"remove",null,vt):vt()}update(x,y){var le,Gt,he,ve,Ce;v(this,"update",{options:x=_(x,this.userOptions)});let j=this,lt=j.chart,rt=j.userOptions,gt=j.initialType||j.type,vt=lt.options.plotOptions,Ot=H[gt].prototype,At=j.finishedAnimating&&{animation:!1},$t={},Xt,Ct,wt=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],Dt=x.type||rt.type||lt.options.chart.type,jt=!(this.hasDerivedData||Dt&&Dt!==this.type||x.pointStart!==void 0||x.pointInterval!==void 0||x.relativeXValue!==void 0||x.joinBy||x.mapData||["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"].some(Te=>j.hasOptionChanged(Te)));Dt=Dt||gt,jt&&(wt.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),x.visible!==!1&&wt.push("area","graph"),j.parallelArrays.forEach(function(Te){wt.push(Te+"Data")}),x.data&&(x.dataSorting&&l(j.options.dataSorting,x.dataSorting),this.setData(x.data,!1))),x=dt(rt,{index:rt.index===void 0?j.index:rt.index,pointStart:(ve=(Gt=(le=vt==null?void 0:vt.series)==null?void 0:le.pointStart)!=null?Gt:rt.pointStart)!=null?ve:(he=j.xData)==null?void 0:he[0]},!jt&&{data:j.options.data},x,At),jt&&x.data&&(x.data=j.options.data),(wt=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(wt)).forEach(function(Te){wt[Te]=j[Te],delete j[Te]});let re=!1;if(H[Dt]){if(re=Dt!==j.type,j.remove(!1,!1,!1,!0),re)if(lt.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(j,H[Dt].prototype);else{let Te=Object.hasOwnProperty.call(j,"hcEvents")&&j.hcEvents;for(Ct in Ot)j[Ct]=void 0;l(j,H[Dt].prototype),Te?j.hcEvents=Te:delete j.hcEvents}}else h(17,!0,lt,{missingModuleFor:Dt});if(wt.forEach(function(Te){j[Te]=wt[Te]}),j.init(lt,x),jt&&this.points)for(let Te of((Xt=j.options).visible===!1?($t.graphic=1,$t.dataLabel=1):(this.hasMarkerChanged(Xt,rt)&&($t.graphic=1),(Ce=j.hasDataLabels)!=null&&Ce.call(j)||($t.dataLabel=1)),this.points))Te&&Te.series&&(Te.resolveColor(),Object.keys($t).length&&Te.destroyElements($t),Xt.showInLegend===!1&&Te.legendItem&<.legend.destroyItem(Te));j.initialType=gt,lt.linkSeries(),lt.setSortedData(),re&&j.linkedSeries.length&&(j.isDirtyData=!0),v(this,"afterUpdate"),bt(y,!0)&<.redraw(!!jt&&void 0)}setName(x){this.name=this.options.name=this.userOptions.name=x,this.chart.isDirtyLegend=!0}hasOptionChanged(x){var vt,Ot;let y=this.chart,j=this.options[x],lt=y.options.plotOptions,rt=this.userOptions[x],gt=bt((vt=lt==null?void 0:lt[this.type])==null?void 0:vt[x],(Ot=lt==null?void 0:lt.series)==null?void 0:Ot[x]);return rt&&!W(gt)?j!==rt:j!==bt(gt,j)}onMouseOver(){let x=this.chart,y=x.hoverSeries,j=x.pointer;j==null||j.setHoverChartIndex(),y&&y!==this&&y.onMouseOut(),this.options.events.mouseOver&&v(this,"mouseOver"),this.setState("hover"),x.hoverSeries=this}onMouseOut(){let x=this.options,y=this.chart,j=y.tooltip,lt=y.hoverPoint;y.hoverSeries=null,lt&<.onMouseOut(),this&&x.events.mouseOut&&v(this,"mouseOut"),j&&!this.stickyTracking&&(!j.shared||this.noSharedTooltip)&&j.hide(),y.series.forEach(function(rt){rt.setState("",!0)})}setState(x,y){let j=this,lt=j.options,rt=j.graph,gt=lt.inactiveOtherPoints,vt=lt.states,Ot=bt(vt[x||"normal"]&&vt[x||"normal"].animation,j.chart.options.chart.animation),At=lt.lineWidth,$t=lt.opacity;if(x=x||"",j.state!==x&&([j.group,j.markerGroup,j.dataLabelsGroup].forEach(function(Xt){Xt&&(j.state&&Xt.removeClass("highcharts-series-"+j.state),x&&Xt.addClass("highcharts-series-"+x))}),j.state=x,!j.chart.styledMode)){if(vt[x]&&vt[x].enabled===!1)return;if(x&&(At=vt[x].lineWidth||At+(vt[x].lineWidthPlus||0),$t=bt(vt[x].opacity,$t)),rt&&!rt.dashstyle&&ct(At))for(let Xt of[rt,...this.zones.map(Ct=>Ct.graph)])Xt==null||Xt.animate({"stroke-width":At},Ot);gt||[j.group,j.markerGroup,j.dataLabelsGroup,j.labelBySeries].forEach(function(Xt){Xt&&Xt.animate({opacity:$t},Ot)})}y&>&&j.points&&j.setAllPointsToState(x||void 0)}setAllPointsToState(x){this.points.forEach(function(y){y.setState&&y.setState(x)})}setVisible(x,y){var Ot;let j=this,lt=j.chart,rt=lt.options.chart.ignoreHiddenSeries,gt=j.visible;j.visible=x=j.options.visible=j.userOptions.visible=x===void 0?!gt:x;let vt=x?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(At=>{var $t;($t=j[At])==null||$t[vt]()}),(lt.hoverSeries===j||((Ot=lt.hoverPoint)==null?void 0:Ot.series)===j)&&j.onMouseOut(),j.legendItem&<.legend.colorizeItem(j,x),j.isDirty=!0,j.options.stacking&<.series.forEach(At=>{At.options.stacking&&At.visible&&(At.isDirty=!0)}),j.linkedSeries.forEach(At=>{At.setVisible(x,!1)}),rt&&(lt.isDirtyBox=!0),v(j,vt),y!==!1&<.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(x){this.selected=x=this.options.selected=x===void 0?!this.selected:x,this.checkbox&&(this.checkbox.checked=x),v(this,x?"select":"unselect")}shouldShowTooltip(x,y,j={}){return j.series=this,j.visiblePlotOnly=!0,this.chart.isInsidePlot(x,y,j)}drawLegendSymbol(x,y){var j;(j=J[this.options.legendSymbol||"rectangle"])==null||j.call(this,x,y)}}return tt.defaultOptions=q,tt.types=Z.seriesTypes,tt.registerType=Z.registerSeriesType,l(tt.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:X,requireSorting:!0,sorted:!0}),Z.series=tt,tt}),g(d,"Core/Legend/Legend.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Series/Point.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){var Y;let{animObject:V,setAnimation:N}=L,{registerEventOptions:U}=R,{composed:T,marginNames:A}=st,{distribute:M}=X,{format:O}=q,{addEvent:H,createElement:z,css:c,defined:D,discardElement:it,find:Q,fireEvent:W,isNumber:k,merge:_,pick:C,pushUnique:h,relativeLength:l,stableSort:u,syncTimeout:v}=Z;class I{constructor(b,K){this.allItems=[],this.initialItemY=0,this.itemHeight=0,this.itemMarginBottom=0,this.itemMarginTop=0,this.itemX=0,this.itemY=0,this.lastItemY=0,this.lastLineHeight=0,this.legendHeight=0,this.legendWidth=0,this.maxItemWidth=0,this.maxLegendWidth=0,this.offsetWidth=0,this.padding=0,this.pages=[],this.symbolHeight=0,this.symbolWidth=0,this.titleHeight=0,this.totalItemWidth=0,this.widthOption=0,this.chart=b,this.setOptions(K),K.enabled&&(this.render(),U(this,K),H(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),H(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(b){let K=C(b.padding,8);this.options=b,this.chart.styledMode||(this.itemStyle=b.itemStyle,this.itemHiddenStyle=_(this.itemStyle,b.itemHiddenStyle)),this.itemMarginTop=b.itemMarginTop,this.itemMarginBottom=b.itemMarginBottom,this.padding=K,this.initialItemY=K-5,this.symbolWidth=C(b.symbolWidth,16),this.pages=[],this.proximate=b.layout==="proximate"&&!this.chart.inverted,this.baseline=void 0}update(b,K){let ct=this.chart;this.setOptions(_(!0,this.options,b)),"events"in this.options&&U(this,this.options),this.destroy(),ct.isDirtyLegend=ct.isDirtyBox=!0,C(K,!0)&&ct.redraw(),W(this,"afterUpdate",{redraw:K})}colorizeItem(b,K){let{area:ct,group:et,label:dt,line:pt,symbol:bt}=b.legendItem||{};if(et==null||et[K?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:Mt={}}=this,w=Mt.color,{fillColor:B,fillOpacity:tt,lineColor:nt,marker:x}=b.options,y=j=>(!K&&(j.fill&&(j.fill=w),j.stroke&&(j.stroke=w)),j);dt==null||dt.css(_(K?this.itemStyle:Mt)),pt==null||pt.attr(y({stroke:nt||b.color})),bt&&bt.attr(y(x&&bt.isMarker?b.pointAttribs():{fill:b.color})),ct==null||ct.attr(y({fill:B||b.color,"fill-opacity":B?1:tt!=null?tt:.75}))}W(this,"afterColorizeItem",{item:b,visible:K})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(b){let{group:K,x:ct=0,y:et=0}=b.legendItem||{},dt=this.options,pt=dt.symbolPadding,bt=!dt.rtl,Mt=b.checkbox;if(K&&K.element){let w={translateX:bt?ct:this.legendWidth-ct-2*pt-4,translateY:et};K[D(K.translateY)?"animate":"attr"](w,void 0,()=>{W(this,"afterPositionItem",{item:b})})}Mt&&(Mt.x=ct,Mt.y=et)}destroyItem(b){let K=b.checkbox,ct=b.legendItem||{};for(let et of["group","label","line","symbol"])ct[et]&&(ct[et]=ct[et].destroy());K&&it(K),b.legendItem=void 0}destroy(){for(let b of this.getAllItems())this.destroyItem(b);for(let b of["clipRect","up","down","pager","nav","box","title","group"])this[b]&&(this[b]=this[b].destroy());this.display=null}positionCheckboxes(){let b,K=this.group&&this.group.alignAttr,ct=this.clipHeight||this.legendHeight,et=this.titleHeight;K&&(b=K.translateY,this.allItems.forEach(function(dt){let pt,bt=dt.checkbox;bt&&(pt=b+et+bt.y+(this.scrollOffset||0)+3,c(bt,{left:K.translateX+dt.checkboxOffset+bt.x-20+"px",top:pt+"px",display:this.proximate||pt>b-6&&pt1.5*$t?At.height:$t))}layoutItem(b){let K=this.options,ct=this.padding,et=K.layout==="horizontal",dt=b.itemHeight,pt=this.itemMarginBottom,bt=this.itemMarginTop,Mt=et?C(K.itemDistance,20):0,w=this.maxLegendWidth,B=K.alignColumns&&this.totalItemWidth>w?this.maxItemWidth:b.itemWidth,tt=b.legendItem||{};et&&this.itemX-ct+B>w&&(this.itemX=ct,this.lastLineHeight&&(this.itemY+=bt+this.lastLineHeight+pt),this.lastLineHeight=0),this.lastItemY=bt+this.itemY+pt,this.lastLineHeight=Math.max(dt,this.lastLineHeight),tt.x=this.itemX,tt.y=this.itemY,et?this.itemX+=B:(this.itemY+=bt+dt+pt,this.lastLineHeight=dt),this.offsetWidth=this.widthOption||Math.max((et?this.itemX-ct-(b.checkbox?0:Mt):B)+ct,this.offsetWidth)}getAllItems(){let b=[];return this.chart.series.forEach(function(K){let ct=K&&K.options;K&&C(ct.showInLegend,!D(ct.linkedTo)&&void 0,!0)&&(b=b.concat((K.legendItem||{}).labels||(ct.legendType==="point"?K.data:K)))}),W(this,"afterGetAllItems",{allItems:b}),b}getAlignment(){let b=this.options;return this.proximate?b.align.charAt(0)+"tv":b.floating?"":b.align.charAt(0)+b.verticalAlign.charAt(0)+b.layout.charAt(0)}adjustMargins(b,K){let ct=this.chart,et=this.options,dt=this.getAlignment();dt&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(pt,bt){pt.test(dt)&&!D(b[bt])&&(ct[A[bt]]=Math.max(ct[A[bt]],ct.legend[(bt+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][bt]*et[bt%2?"x":"y"]+C(et.margin,12)+K[bt]+(ct.titleOffset[bt]||0)))})}proximatePositions(){let b,K=this.chart,ct=[],et=this.options.align==="left";for(let dt of(this.allItems.forEach(function(pt){let bt,Mt,w=et,B,tt;pt.yAxis&&(pt.xAxis.options.reversed&&(w=!w),pt.points&&(bt=Q(w?pt.points:pt.points.slice(0).reverse(),function(nt){return k(nt.plotY)})),Mt=this.itemMarginTop+pt.legendItem.label.getBBox().height+this.itemMarginBottom,tt=pt.yAxis.top-K.plotTop,B=pt.visible?(bt?bt.plotY:pt.yAxis.height)+(tt-.3*Mt):tt+pt.yAxis.height,ct.push({target:B,size:Mt,item:pt}))},this),M(ct,K.plotHeight)))b=dt.item.legendItem||{},k(dt.pos)&&(b.y=K.plotTop-K.spacing[0]+dt.pos)}render(){let b=this.chart,K=b.renderer,ct=this.options,et=this.padding,dt=this.getAllItems(),pt,bt,Mt,w=this.group,B,tt=this.box;this.itemX=et,this.itemY=this.initialItemY,this.offsetWidth=0,this.lastItemY=0,this.widthOption=l(ct.width,b.spacingBox.width-et),B=b.spacingBox.width-2*et-ct.x,["rm","lm"].indexOf(this.getAlignment().substring(0,2))>-1&&(B/=2),this.maxLegendWidth=this.widthOption||B,w||(this.group=w=K.g("legend").addClass(ct.className||"").attr({zIndex:7}).add(),this.contentGroup=K.g().attr({zIndex:1}).add(w),this.scrollGroup=K.g().add(this.contentGroup)),this.renderTitle(),u(dt,(nt,x)=>(nt.options&&nt.options.legendIndex||0)-(x.options&&x.options.legendIndex||0)),ct.reversed&&dt.reverse(),this.allItems=dt,this.display=pt=!!dt.length,this.lastLineHeight=0,this.maxItemWidth=0,this.totalItemWidth=0,this.itemHeight=0,dt.forEach(this.renderItem,this),dt.forEach(this.layoutItem,this),bt=(this.widthOption||this.offsetWidth)+et,Mt=this.lastItemY+this.lastLineHeight+this.titleHeight,Mt=this.handleOverflow(Mt)+et,tt||(this.box=tt=K.rect().addClass("highcharts-legend-box").attr({r:ct.borderRadius}).add(w)),b.styledMode||tt.attr({stroke:ct.borderColor,"stroke-width":ct.borderWidth||0,fill:ct.backgroundColor||"none"}).shadow(ct.shadow),bt>0&&Mt>0&&tt[tt.placed?"animate":"attr"](tt.crisp.call({},{x:0,y:0,width:bt,height:Mt},tt.strokeWidth())),w[pt?"show":"hide"](),b.styledMode&&w.getStyle("display")==="none"&&(bt=Mt=0),this.legendWidth=bt,this.legendHeight=Mt,pt&&this.align(),this.proximate||this.positionItems(),W(this,"afterRender")}align(b=this.chart.spacingBox){let K=this.chart,ct=this.options,et=b.y;/(lth|ct|rth)/.test(this.getAlignment())&&K.titleOffset[0]>0?et+=K.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&K.titleOffset[2]>0&&(et-=K.titleOffset[2]),et!==b.y&&(b=_(b,{y:et})),K.hasRendered||(this.group.placed=!1),this.group.align(_(ct,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":ct.verticalAlign}),!0,b)}handleOverflow(b){let K=this,ct=this.chart,et=ct.renderer,dt=this.options,pt=dt.y,bt=dt.verticalAlign==="top",Mt=this.padding,w=dt.maxHeight,B=dt.navigation,tt=C(B.animation,!0),nt=B.arrowSize||12,x=this.pages,y=this.allItems,j=function(Xt){typeof Xt=="number"?$t.attr({height:Xt}):$t&&(K.clipRect=$t.destroy(),K.contentGroup.clip()),K.contentGroup.div&&(K.contentGroup.div.style.clip=Xt?"rect("+Mt+"px,9999px,"+(Mt+Xt)+"px,0)":"auto")},lt=function(Xt){return K[Xt]=et.circle(0,0,1.3*nt).translate(nt/2,nt/2).add(At),ct.styledMode||K[Xt].attr("fill","rgba(0,0,0,0.0001)"),K[Xt]},rt,gt,vt,Ot=ct.spacingBox.height+(bt?-pt:pt)-Mt,At=this.nav,$t=this.clipRect;return dt.layout!=="horizontal"||dt.verticalAlign==="middle"||dt.floating||(Ot/=2),w&&(Ot=Math.min(Ot,w)),x.length=0,b&&Ot>0&&b>Ot&&B.enabled!==!1?(this.clipHeight=rt=Math.max(Ot-20-this.titleHeight-Mt,0),this.currentPage=C(this.currentPage,1),this.fullHeight=b,y.forEach((Xt,Ct)=>{let wt=(vt=Xt.legendItem||{}).y||0,Dt=Math.round(vt.label.getBBox().height),jt=x.length;(!jt||wt-x[jt-1]>rt&&(gt||wt)!==x[jt-1])&&(x.push(gt||wt),jt++),vt.pageIx=jt-1,gt&&((y[Ct-1].legendItem||{}).pageIx=jt-1),Ct===y.length-1&&wt+Dt-x[jt-1]>rt&&wt>x[jt-1]&&(x.push(wt),vt.pageIx=jt),wt!==gt&&(gt=wt)}),$t||($t=K.clipRect=et.clipRect(0,Mt-2,9999,0),K.contentGroup.clip($t)),j(rt),At||(this.nav=At=et.g().attr({zIndex:1}).add(this.group),this.up=et.symbol("triangle",0,0,nt,nt).add(At),lt("upTracker").on("click",function(){K.scroll(-1,tt)}),this.pager=et.text("",15,10).addClass("highcharts-legend-navigation"),!ct.styledMode&&B.style&&this.pager.css(B.style),this.pager.add(At),this.down=et.symbol("triangle-down",0,0,nt,nt).add(At),lt("downTracker").on("click",function(){K.scroll(1,tt)})),K.scroll(0),b=Ot):At&&(j(),this.nav=At.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),b}scroll(b,K){let ct=this.chart,et=this.pages,dt=et.length,pt=this.clipHeight,bt=this.options.navigation,Mt=this.pager,w=this.padding,B=this.currentPage+b;B>dt&&(B=dt),B>0&&(K!==void 0&&N(K,ct),this.nav.attr({translateX:w,translateY:pt+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(tt){tt.attr({class:B===1?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),Mt.attr({text:B+"/"+dt}),[this.down,this.downTracker].forEach(function(tt){tt.attr({x:18+this.pager.getBBox().width,class:B===dt?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),ct.styledMode||(this.up.attr({fill:B===1?bt.inactiveColor:bt.activeColor}),this.upTracker.css({cursor:B===1?"default":"pointer"}),this.down.attr({fill:B===dt?bt.inactiveColor:bt.activeColor}),this.downTracker.css({cursor:B===dt?"default":"pointer"})),this.scrollOffset=-et[B-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=B,this.positionCheckboxes(),v(()=>{W(this,"afterScroll",{currentPage:B})},V(C(K,ct.renderer.globalAnimation,!0)).duration))}setItemEvents(b,K,ct){let et=this,dt=b.legendItem||{},pt=et.chart.renderer.boxWrapper,bt=b instanceof J,Mt=b instanceof $,w="highcharts-legend-"+(bt?"point":"series")+"-active",B=et.chart.styledMode,tt=ct?[K,dt.symbol]:[dt.group],nt=x=>{et.allItems.forEach(y=>{b!==y&&[y].concat(y.linkedSeries||[]).forEach(j=>{j.setState(x,!bt)})})};for(let x of tt)x&&x.on("mouseover",function(){b.visible&&nt("inactive"),b.setState("hover"),b.visible&&pt.addClass(w),B||K.css(et.options.itemHoverStyle)}).on("mouseout",function(){et.chart.styledMode||K.css(_(b.visible?et.itemStyle:et.itemHiddenStyle)),nt(""),pt.removeClass(w),b.setState()}).on("click",function(y){let j=function(){b.setVisible&&b.setVisible(),nt(b.visible?"inactive":"")};pt.removeClass(w),W(et,"itemClick",{browserEvent:y,legendItem:b},j),bt?b.firePointEvent("legendItemClick",{browserEvent:y}):Mt&&W(b,"legendItemClick",{browserEvent:y})})}createCheckboxForItem(b){b.checkbox=z("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:b.selected,defaultChecked:b.selected},this.options.itemCheckboxStyle,this.chart.container),H(b.checkbox,"click",function(K){let ct=K.target;W(b.series||b,"checkboxClick",{checked:ct.checked,item:b},function(){b.select()})})}}return(Y=I||(I={})).compose=function(S){h(T,"Core.Legend")&&H(S,"beforeMargins",function(){this.legend=new Y(this,this.options.legend)})},I}),g(d,"Core/Chart/Chart.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Time.js"],d["Core/Utilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Axis/Tick.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A){let{animate:M,animObject:O,setAnimation:H}=L,{defaultOptions:z,defaultTime:c}=st,{numberFormat:D}=$,{registerEventOptions:it}=J,{charts:Q,doc:W,marginNames:k,svg:_,win:C}=X,{seriesTypes:h}=Y,{addEvent:l,attr:u,createElement:v,css:I,defined:S,diffObjects:b,discardElement:K,erase:ct,error:et,extend:dt,find:pt,fireEvent:bt,getStyle:Mt,isArray:w,isNumber:B,isObject:tt,isString:nt,merge:x,objectEach:y,pick:j,pInt:lt,relativeLength:rt,removeEvent:gt,splat:vt,syncTimeout:Ot,uniqueKey:At}=U;class $t{static chart(Ct,wt,Dt){return new $t(Ct,wt,Dt)}constructor(Ct,wt,Dt){this.sharedClips={};let jt=[...arguments];(nt(Ct)||Ct.nodeName)&&(this.renderTo=jt.shift()),this.init(jt[0],jt[1])}setZoomOptions(){let Ct=this.options.chart,wt=Ct.zooming;this.zooming=Mi(xr({},wt),{type:j(Ct.zoomType,wt.type),key:j(Ct.zoomKey,wt.key),pinchType:j(Ct.pinchType,wt.pinchType),singleTouch:j(Ct.zoomBySingleTouch,wt.singleTouch,!1),resetButton:x(wt.resetButton,Ct.resetZoomButton)})}init(Ct,wt){bt(this,"init",{args:arguments},function(){let Dt=x(z,Ct),jt=Dt.chart;this.userOptions=dt({},Ct),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=wt,this.isResizing=0,this.options=Dt,this.axes=[],this.series=[],this.time=Ct.time&&Object.keys(Ct.time).length?new N(Ct.time):X.time,this.numberFormatter=jt.numberFormatter||D,this.styledMode=jt.styledMode,this.hasCartesianSeries=jt.showAxes,this.index=Q.length,Q.push(this),X.chartCount++,it(this,jt),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,this.setZoomOptions(),bt(this,"afterInit"),this.firstRender()})}initSeries(Ct){let wt=this.options.chart,Dt=Ct.type||wt.type,jt=h[Dt];jt||et(17,!0,this,{missingModuleFor:Dt});let re=new jt;return typeof re.init=="function"&&re.init(this,Ct),re}setSortedData(){this.getSeriesOrderByLinks().forEach(function(Ct){Ct.points||Ct.data||!Ct.enabledDataSorting||Ct.setData(Ct.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(Ct,wt){return Ct.linkedSeries.length||wt.linkedSeries.length?wt.linkedSeries.length-Ct.linkedSeries.length:0})}orderItems(Ct,wt=0){let Dt=this[Ct],jt=this.options[Ct]=vt(this.options[Ct]).slice(),re=this.userOptions[Ct]=this.userOptions[Ct]?vt(this.userOptions[Ct]).slice():[];if(this.hasRendered&&(jt.splice(wt),re.splice(wt)),Dt)for(let le=wt,Gt=Dt.length;le=Math.max(ve+le,Jt.pos)&&Et<=Math.min(ve+le+Ke.width,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}if(!Dt.ignoreY&&Qt.isInsidePlot){let Jt=!jt&&Dt.axis&&!Dt.axis.isXAxis&&Dt.axis||Te&&(jt?Te.xAxis:Te.yAxis)||{pos:Gt,len:1/0},Et=Dt.paneCoordinates?Jt.pos+un:Gt+un;Et>=Math.max(Ce+Gt,Jt.pos)&&Et<=Math.min(Ce+Gt+Ke.height,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}return bt(this,"afterIsInsidePlot",Qt),Qt.isInsidePlot}redraw(Ct){bt(this,"beforeRedraw");let wt=this.hasCartesianSeries?this.axes:this.colorAxis||[],Dt=this.series,jt=this.pointer,re=this.legend,le=this.userOptions.legend,Gt=this.renderer,he=Gt.isHidden(),ve=[],Ce,Te,Ke,rn=this.isDirtyBox,un=this.isDirtyLegend,Qt;for(Gt.rootFontSize=Gt.boxWrapper.getStyle("font-size"),this.setResponsive&&this.setResponsive(!1),H(!!this.hasRendered&&Ct,this),he&&this.temporaryDisplay(),this.layOutTitles(!1),Ke=Dt.length;Ke--;)if(((Qt=Dt[Ke]).options.stacking||Qt.options.centerInCategory)&&(Te=!0,Qt.isDirty)){Ce=!0;break}if(Ce)for(Ke=Dt.length;Ke--;)(Qt=Dt[Ke]).options.stacking&&(Qt.isDirty=!0);Dt.forEach(function(Kt){Kt.isDirty&&(Kt.options.legendType==="point"?(typeof Kt.updateTotals=="function"&&Kt.updateTotals(),un=!0):le&&(le.labelFormatter||le.labelFormat)&&(un=!0)),Kt.isDirtyData&&bt(Kt,"updatedData")}),un&&re&&re.options.enabled&&(re.render(),this.isDirtyLegend=!1),Te&&this.getStacks(),wt.forEach(function(Kt){Kt.updateNames(),Kt.setScale()}),this.getMargins(),wt.forEach(function(Kt){Kt.isDirty&&(rn=!0)}),wt.forEach(function(Kt){let Jt=Kt.min+","+Kt.max;Kt.extKey!==Jt&&(Kt.extKey=Jt,ve.push(function(){bt(Kt,"afterSetExtremes",dt(Kt.eventArgs,Kt.getExtremes())),delete Kt.eventArgs})),(rn||Te)&&Kt.redraw()}),rn&&this.drawChartBox(),bt(this,"predraw"),Dt.forEach(function(Kt){(rn||Kt.isDirty)&&Kt.visible&&Kt.redraw(),Kt.isDirtyData=!1}),jt&&jt.reset(!0),Gt.draw(),bt(this,"redraw"),bt(this,"render"),he&&this.temporaryDisplay(!0),ve.forEach(function(Kt){Kt.call()})}get(Ct){let wt=this.series;function Dt(re){return re.id===Ct||re.options&&re.options.id===Ct}let jt=pt(this.axes,Dt)||pt(this.series,Dt);for(let re=0;!jt&&re(wt.getPointsCollection().forEach(Dt=>{j(Dt.selectedStaging,Dt.selected)&&Ct.push(Dt)}),Ct),[])}getSelectedSeries(){return this.series.filter(function(Ct){return Ct.selected})}setTitle(Ct,wt,Dt){this.applyDescription("title",Ct),this.applyDescription("subtitle",wt),this.applyDescription("caption",void 0),this.layOutTitles(Dt)}applyDescription(Ct,wt){let Dt=this,jt=this.options[Ct]=x(this.options[Ct],wt),re=this[Ct];re&&wt&&(this[Ct]=re=re.destroy()),jt&&!re&&((re=this.renderer.text(jt.text,0,0,jt.useHTML).attr({align:jt.align,class:"highcharts-"+Ct,zIndex:jt.zIndex||4}).add()).update=function(le,Gt){Dt.applyDescription(Ct,le),Dt.layOutTitles(Gt)},this.styledMode||re.css(dt(Ct==="title"?{fontSize:this.options.isStock?"1em":"1.2em"}:{},jt.style)),this[Ct]=re)}layOutTitles(Ct=!0){let wt=[0,0,0],Dt=this.renderer,jt=this.spacingBox;["title","subtitle","caption"].forEach(function(le){let Gt=this[le],he=this.options[le],ve=he.verticalAlign||"top",Ce=le==="title"?ve==="top"?-3:0:ve==="top"?wt[0]+2:0;if(Gt){Gt.css({width:(he.width||jt.width+(he.widthAdjust||0))+"px"});let Te=Dt.fontMetrics(Gt).b,Ke=Math.round(Gt.getBBox(he.useHTML).height);Gt.align(dt({y:ve==="bottom"?Te:Ce+Te,height:Ke},he),!1,"spacingBox"),he.floating||(ve==="top"?wt[0]=Math.ceil(wt[0]+Ke):ve==="bottom"&&(wt[2]=Math.ceil(wt[2]+Ke)))}},this),wt[0]&&(this.options.title.verticalAlign||"top")==="top"&&(wt[0]+=this.options.title.margin),wt[2]&&this.options.caption.verticalAlign==="bottom"&&(wt[2]+=this.options.caption.margin);let re=!this.titleOffset||this.titleOffset.join(",")!==wt.join(",");this.titleOffset=wt,bt(this,"afterLayOutTitles"),!this.isDirtyBox&&re&&(this.isDirtyBox=this.isDirtyLegend=re,this.hasRendered&&Ct&&this.isDirtyBox&&this.redraw())}getContainerBox(){let Ct=[].map.call(this.renderTo.children,Dt=>{if(Dt!==this.container){let jt=Dt.style.display;return Dt.style.display="none",[Dt,jt]}}),wt={width:Mt(this.renderTo,"width",!0)||0,height:Mt(this.renderTo,"height",!0)||0};return Ct.filter(Boolean).forEach(([Dt,jt])=>{Dt.style.display=jt}),wt}getChartSize(){var le;let Ct=this.options.chart,wt=Ct.width,Dt=Ct.height,jt=this.getContainerBox(),re=jt.height>1&&!(!((le=this.renderTo.parentElement)!=null&&le.style.height)&&this.renderTo.style.height==="100%");this.chartWidth=Math.max(0,wt||jt.width||600),this.chartHeight=Math.max(0,rt(Dt,this.chartWidth)||(re?jt.height:400)),this.containerBox=jt}temporaryDisplay(Ct){let wt=this.renderTo,Dt;if(Ct)for(;wt&&wt.style;)wt.hcOrigStyle&&(I(wt,wt.hcOrigStyle),delete wt.hcOrigStyle),wt.hcOrigDetached&&(W.body.removeChild(wt),wt.hcOrigDetached=!1),wt=wt.parentNode;else for(;wt&&wt.style&&(W.body.contains(wt)||wt.parentNode||(wt.hcOrigDetached=!0,W.body.appendChild(wt)),(Mt(wt,"display",!1)==="none"||wt.hcOricDetached)&&(wt.hcOrigStyle={display:wt.style.display,height:wt.style.height,overflow:wt.style.overflow},Dt={display:"block",overflow:"hidden"},wt!==this.renderTo&&(Dt.height=0),I(wt,Dt),wt.offsetWidth||wt.style.setProperty("display","block","important")),(wt=wt.parentNode)!==W.body););}setClassName(Ct){this.container.className="highcharts-container "+(Ct||"")}getContainer(){var Ke;let Ct=this.options,wt=Ct.chart,Dt="data-highcharts-chart",jt=At(),re,le=this.renderTo;le||(this.renderTo=le=wt.renderTo),nt(le)&&(this.renderTo=le=W.getElementById(le)),le||et(13,!0,this);let Gt=lt(u(le,Dt));B(Gt)&&Q[Gt]&&Q[Gt].hasRendered&&Q[Gt].destroy(),u(le,Dt,this.index),le.innerHTML=T.emptyHTML,wt.skipClone||le.offsetWidth||this.temporaryDisplay(),this.getChartSize();let he=this.chartHeight,ve=this.chartWidth;I(le,{overflow:"hidden"}),this.styledMode||(re=dt({position:"relative",overflow:"hidden",width:ve+"px",height:he+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none",padding:"0px"},wt.style||{}));let Ce=v("div",{id:jt},re,le);this.container=Ce,this.getChartSize(),ve===this.chartWidth||(ve=this.chartWidth,this.styledMode||I(Ce,{width:j((Ke=wt.style)==null?void 0:Ke.width,ve+"px")})),this.containerBox=this.getContainerBox(),this._cursor=Ce.style.cursor;let Te=wt.renderer||!_?q.getRendererType(wt.renderer):V;if(this.renderer=new Te(Ce,ve,he,void 0,wt.forExport,Ct.exporting&&Ct.exporting.allowHTML,this.styledMode),H(void 0,this),this.setClassName(wt.className),this.styledMode)for(let rn in Ct.defs)this.renderer.definition(Ct.defs[rn]);else this.renderer.setStyle(wt.style);this.renderer.chartIndex=this.index,bt(this,"afterGetContainer")}getMargins(Ct){let{spacing:wt,margin:Dt,titleOffset:jt}=this;this.resetMargins(),jt[0]&&!S(Dt[0])&&(this.plotTop=Math.max(this.plotTop,jt[0]+wt[0])),jt[2]&&!S(Dt[2])&&(this.marginBottom=Math.max(this.marginBottom,jt[2]+wt[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(Dt,wt),bt(this,"getMargins"),Ct||this.getAxisMargins()}getAxisMargins(){let Ct=this,wt=Ct.axisOffset=[0,0,0,0],Dt=Ct.colorAxis,jt=Ct.margin,re=function(le){le.forEach(function(Gt){Gt.visible&&Gt.getOffset()})};Ct.hasCartesianSeries?re(Ct.axes):Dt&&Dt.length&&re(Dt),k.forEach(function(le,Gt){S(jt[Gt])||(Ct[le]+=wt[Gt])}),Ct.setChartSize()}getOptions(){return b(this.userOptions,z)}reflow(Ct){var re;let wt=this,Dt=wt.containerBox,jt=wt.getContainerBox();(re=wt.pointer)==null||delete re.chartPosition,!wt.isPrinting&&!wt.isResizing&&Dt&&jt.width&&((jt.width!==Dt.width||jt.height!==Dt.height)&&(U.clearTimeout(wt.reflowTimeout),wt.reflowTimeout=Ot(function(){wt.container&&wt.setSize(void 0,void 0,!1)},Ct?100:0)),wt.containerBox=jt)}setReflow(){let Ct=this,wt=Dt=>{var jt;(jt=Ct.options)!=null&&jt.chart.reflow&&Ct.hasLoaded&&Ct.reflow(Dt)};if(typeof ResizeObserver=="function")new ResizeObserver(wt).observe(Ct.renderTo);else{let Dt=l(C,"resize",wt);l(this,"destroy",Dt)}}setSize(Ct,wt,Dt){let jt=this,re=jt.renderer;jt.isResizing+=1,H(Dt,jt);let le=re.globalAnimation;jt.oldChartHeight=jt.chartHeight,jt.oldChartWidth=jt.chartWidth,Ct!==void 0&&(jt.options.chart.width=Ct),wt!==void 0&&(jt.options.chart.height=wt),jt.getChartSize();let{chartWidth:Gt,chartHeight:he,scrollablePixelsX:ve=0,scrollablePixelsY:Ce=0}=jt;(jt.isDirtyBox||Gt!==jt.oldChartWidth||he!==jt.oldChartHeight)&&(jt.styledMode||(le?M:I)(jt.container,{width:`${Gt+ve}px`,height:`${he+Ce}px`},le),jt.setChartSize(!0),re.setSize(Gt,he,le),jt.axes.forEach(function(Te){Te.isDirty=!0,Te.setScale()}),jt.isDirtyLegend=!0,jt.isDirtyBox=!0,jt.layOutTitles(),jt.getMargins(),jt.redraw(le),jt.oldChartHeight=void 0,bt(jt,"resize"),setTimeout(()=>{jt&&bt(jt,"endResize")},O(le).duration)),jt.isResizing-=1}setChartSize(Ct){let wt,Dt,jt,re,{chartHeight:le,chartWidth:Gt,inverted:he,spacing:ve,renderer:Ce}=this,Te=this.clipOffset,Ke=Math[he?"floor":"round"];this.plotLeft=wt=Math.round(this.plotLeft),this.plotTop=Dt=Math.round(this.plotTop),this.plotWidth=jt=Math.max(0,Math.round(Gt-wt-this.marginRight)),this.plotHeight=re=Math.max(0,Math.round(le-Dt-this.marginBottom)),this.plotSizeX=he?re:jt,this.plotSizeY=he?jt:re,this.spacingBox=Ce.spacingBox={x:ve[3],y:ve[0],width:Gt-ve[3]-ve[1],height:le-ve[0]-ve[2]},this.plotBox=Ce.plotBox={x:wt,y:Dt,width:jt,height:re},Te&&(this.clipBox={x:Ke(Te[3]),y:Ke(Te[0]),width:Ke(this.plotSizeX-Te[1]-Te[3]),height:Ke(this.plotSizeY-Te[0]-Te[2])}),Ct||(this.axes.forEach(function(rn){rn.setAxisSize(),rn.setAxisTranslation()}),Ce.alignElements()),bt(this,"afterSetChartSize",{skipAxes:Ct})}resetMargins(){bt(this,"resetMargins");let Ct=this,wt=Ct.options.chart,Dt=wt.plotBorderWidth||0,jt=Dt/2;["margin","spacing"].forEach(function(re){let le=wt[re],Gt=tt(le)?le:[le,le,le,le];["Top","Right","Bottom","Left"].forEach(function(he,ve){Ct[re][ve]=j(wt[re+he],Gt[ve])})}),k.forEach(function(re,le){Ct[re]=j(Ct.margin[le],Ct.spacing[le])}),Ct.axisOffset=[0,0,0,0],Ct.clipOffset=[jt,jt,jt,jt],Ct.plotBorderWidth=Dt}drawChartBox(){let Ct=this.options.chart,wt=this.renderer,Dt=this.chartWidth,jt=this.chartHeight,re=this.styledMode,le=this.plotBGImage,Gt=Ct.backgroundColor,he=Ct.plotBackgroundColor,ve=Ct.plotBackgroundImage,Ce=this.plotLeft,Te=this.plotTop,Ke=this.plotWidth,rn=this.plotHeight,un=this.plotBox,Qt=this.clipRect,Kt=this.clipBox,Jt=this.chartBackground,Et=this.plotBackground,Rt=this.plotBorder,zt,Ft,ce,Se="animate";Jt||(this.chartBackground=Jt=wt.rect().addClass("highcharts-background").add(),Se="attr"),re?zt=Ft=Jt.strokeWidth():(Ft=(zt=Ct.borderWidth||0)+(Ct.shadow?8:0),ce={fill:Gt||"none"},(zt||Jt["stroke-width"])&&(ce.stroke=Ct.borderColor,ce["stroke-width"]=zt),Jt.attr(ce).shadow(Ct.shadow)),Jt[Se]({x:Ft/2,y:Ft/2,width:Dt-Ft-zt%2,height:jt-Ft-zt%2,r:Ct.borderRadius}),Se="animate",Et||(Se="attr",this.plotBackground=Et=wt.rect().addClass("highcharts-plot-background").add()),Et[Se](un),!re&&(Et.attr({fill:he||"none"}).shadow(Ct.plotShadow),ve&&(le?(ve!==le.attr("href")&&le.attr("href",ve),le.animate(un)):this.plotBGImage=wt.image(ve,Ce,Te,Ke,rn).add())),Qt?Qt.animate({width:Kt.width,height:Kt.height}):this.clipRect=wt.clipRect(Kt),Se="animate",Rt||(Se="attr",this.plotBorder=Rt=wt.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),re||Rt.attr({stroke:Ct.plotBorderColor,"stroke-width":Ct.plotBorderWidth||0,fill:"none"}),Rt[Se](Rt.crisp({x:Ce,y:Te,width:Ke,height:rn},-Rt.strokeWidth())),this.isDirtyBox=!1,bt(this,"afterDrawChartBox")}propFromSeries(){let Ct,wt,Dt,jt=this,re=jt.options.chart,le=jt.options.series;["inverted","angular","polar"].forEach(function(Gt){for(wt=h[re.type],Dt=re[Gt]||wt&&wt.prototype[Gt],Ct=le&&le.length;!Dt&&Ct--;)(wt=h[le[Ct].type])&&wt.prototype[Gt]&&(Dt=!0);jt[Gt]=Dt})}linkSeries(Ct){let wt=this,Dt=wt.series;Dt.forEach(function(jt){jt.linkedSeries.length=0}),Dt.forEach(function(jt){let{linkedTo:re}=jt.options;if(nt(re)){let le;(le=re===":previous"?wt.series[jt.index-1]:wt.get(re))&&le.linkedParent!==jt&&(le.linkedSeries.push(jt),jt.linkedParent=le,le.enabledDataSorting&&jt.setDataSortingOptions(),jt.visible=j(jt.options.visible,le.options.visible,jt.visible))}}),bt(this,"afterLinkSeries",{isUpdating:Ct})}renderSeries(){this.series.forEach(function(Ct){Ct.translate(),Ct.render()})}render(){var Ce;let Ct=this.axes,wt=this.colorAxis,Dt=this.renderer,jt=this.options.chart.axisLayoutRuns||2,re=Te=>{Te.forEach(Ke=>{Ke.visible&&Ke.render()})},le=0,Gt=!0,he,ve=0;for(let Te of(this.setTitle(),bt(this,"beforeMargins"),(Ce=this.getStacks)==null||Ce.call(this),this.getMargins(!0),this.setChartSize(),Ct)){let{options:Ke}=Te,{labels:rn}=Ke;if(this.hasCartesianSeries&&Te.horiz&&Te.visible&&rn.enabled&&Te.series.length&&Te.coll!=="colorAxis"&&!this.polar){le=Ke.tickLength,Te.createGroups();let un=new A(Te,0,"",!0),Qt=un.createLabel("x",rn);if(un.destroy(),Qt&&j(rn.reserveSpace,!B(Ke.crossing))&&(le=Qt.getBBox().height+rn.distance+Math.max(Ke.offset||0,0)),le){Qt==null||Qt.destroy();break}}}for(this.plotHeight=Math.max(this.plotHeight-le,0);(Gt||he||jt>1)&&ve(ve?1:1.1),he=Ke/this.plotHeight>(ve?1:1.05),ve++}this.drawChartBox(),this.hasCartesianSeries?re(Ct):wt&&wt.length&&re(wt),this.seriesGroup||(this.seriesGroup=Dt.g("series-group").attr({zIndex:3}).shadow(this.options.chart.seriesGroupShadow).add()),this.renderSeries(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0}addCredits(Ct){let wt=this,Dt=x(!0,this.options.credits,Ct);Dt.enabled&&!this.credits&&(this.credits=this.renderer.text(Dt.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){Dt.href&&(C.location.href=Dt.href)}).attr({align:Dt.position.align,zIndex:8}),wt.styledMode||this.credits.css(Dt.style),this.credits.add().align(Dt.position),this.credits.update=function(jt){wt.credits=wt.credits.destroy(),wt.addCredits(jt)})}destroy(){let Ct,wt=this,Dt=wt.axes,jt=wt.series,re=wt.container,le=re&&re.parentNode;for(bt(wt,"destroy"),wt.renderer.forExport?ct(Q,wt):Q[wt.index]=void 0,X.chartCount--,wt.renderTo.removeAttribute("data-highcharts-chart"),gt(wt),Ct=Dt.length;Ct--;)Dt[Ct]=Dt[Ct].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),Ct=jt.length;Ct--;)jt[Ct]=jt[Ct].destroy();["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(function(Gt){let he=wt[Gt];he&&he.destroy&&(wt[Gt]=he.destroy())}),re&&(re.innerHTML=T.emptyHTML,gt(re),le&&K(re)),y(wt,function(Gt,he){delete wt[he]})}firstRender(){var jt;let Ct=this,wt=Ct.options;Ct.getContainer(),Ct.resetMargins(),Ct.setChartSize(),Ct.propFromSeries(),Ct.getAxes();let Dt=w(wt.series)?wt.series:[];wt.series=[],Dt.forEach(function(re){Ct.initSeries(re)}),Ct.linkSeries(),Ct.setSortedData(),bt(Ct,"beforeRender"),Ct.render(),(jt=Ct.pointer)==null||jt.getChartPosition(),Ct.renderer.imgCount||Ct.hasLoaded||Ct.onload(),Ct.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(Ct){Ct&&this.index!==void 0&&Ct.apply(this,[this])},this),bt(this,"load"),bt(this,"render"),S(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:Ct,title:wt}=this;!Ct||this.accessibility||(this.renderer.boxWrapper.attr({role:"img","aria-label":(wt&&wt.element.textContent||"").replace(/this.transform({reset:!0,trigger:"zoom"}))}pan(Ct,wt){let Dt=this,jt=typeof wt=="object"?wt:{enabled:wt,type:"x"},re=jt.type,le=re&&Dt[{x:"xAxis",xy:"axes",y:"yAxis"}[re]].filter(he=>he.options.panningEnabled&&!he.options.isInternal),Gt=Dt.options.chart;Gt!=null&&Gt.panning&&(Gt.panning=jt),bt(this,"pan",{originalEvent:Ct},()=>{Dt.transform({axes:le,event:Ct,to:{x:Ct.chartX-(Dt.mouseDownX||0),y:Ct.chartY-(Dt.mouseDownY||0)},trigger:"pan"}),I(Dt.container,{cursor:"move"})})}transform(Ct){var rn,un,Qt,Kt,Jt;let{axes:wt=this.axes,event:Dt,from:jt={},reset:re,selection:le,to:Gt={},trigger:he}=Ct,{inverted:ve}=this,Ce=!1,Te,Ke;for(let Et of((rn=this.hoverPoints)==null||rn.forEach(Rt=>Rt.setState()),wt)){let{horiz:Rt,len:zt,minPointOffset:Ft=0,options:ce,reversed:Se}=Et,xe=Rt?"width":"height",Ze=Rt?"x":"y",pn=j(Gt[xe],Et.len),bn=j(jt[xe],Et.len),Ln=10>Math.abs(pn)?1:pn/bn,vn=(jt[Ze]||0)+bn/2-Et.pos,Tn=vn-(((un=Gt[Ze])!=null?un:Et.pos)+pn/2-Et.pos)/Ln,Qn=Se&&!ve||!Se&&ve?-1:1;if(!re&&(vn<0||vn>Et.len))continue;let dr=Et.toValue(Tn,!0)+(le||Et.isOrdinal?0:Ft*Qn),ye=Et.toValue(Tn+zt/Ln,!0)-(le||Et.isOrdinal?0:Ft*Qn||0),Fe=Et.allExtremes;if(dr>ye&&([dr,ye]=[ye,dr]),Ln===1&&!re&&Et.coll==="yAxis"&&!Fe){for(let an of Et.series){let gn=an.getExtremes(an.getProcessedData(!0).yData,!0);Fe!=null||(Fe={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),B(gn.dataMin)&&B(gn.dataMax)&&(Fe.dataMin=Math.min(gn.dataMin,Fe.dataMin),Fe.dataMax=Math.max(gn.dataMax,Fe.dataMax))}Et.allExtremes=Fe}let{dataMin:qe,dataMax:be,min:je,max:Ue}=dt(Et.getExtremes(),Fe||{}),Re=qe!=null?qe:ce.min,Ie=be!=null?be:ce.max,tn=ye-dr,Mn=Et.categories?0:Math.min(tn,Ie-Re),ke=Re-Mn*(S(ce.min)?0:ce.minPadding),on=Ie+Mn*(S(ce.max)?0:ce.maxPadding),_n=Et.allowZoomOutside||Ln===1||he!=="zoom"&&Ln>1,Pe=Math.min((Qt=ce.min)!=null?Qt:ke,ke,_n?je:ke),wn=Math.max((Kt=ce.max)!=null?Kt:on,on,_n?Ue:on);(!Et.isOrdinal||Et.options.overscroll||Ln!==1||re)&&(dr=1&&(ye=dr+tn)),ye>wn&&(ye=wn,Ln>=1&&(dr=ye-tn)),(re||Et.series.length&&(dr!==je||ye!==Ue)&&dr>=Pe&&ye<=wn)&&(le?le[Et.coll].push({axis:Et,min:dr,max:ye}):(Et.isPanning=he!=="zoom",Et.isPanning&&(Ke=!0),Et.setExtremes(re?void 0:dr,re?void 0:ye,!1,!1,{move:Tn,trigger:he,scale:Ln}),!re&&(dr>Pe||ye{delete Ct.selection,Ct.trigger="zoom",this.transform(Ct)}):(!Te||Ke||this.resetZoomButton?!Te&&this.resetZoomButton&&(this.resetZoomButton=this.resetZoomButton.destroy()):this.showResetZoom(),this.redraw(he==="zoom"&&((Jt=this.options.chart.animation)!=null?Jt:this.pointCount<100)))),Ce}}return dt($t.prototype,{callbacks:[],collectionsWithInit:{xAxis:[$t.prototype.addAxis,[!0]],yAxis:[$t.prototype.addAxis,[!1]],series:[$t.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroundColor","plotBackgroundImage","plotBorderColor","plotBorderWidth","plotShadow","shadow"],propsRequireReflow:["margin","marginTop","marginRight","marginBottom","marginLeft","spacing","spacingTop","spacingRight","spacingBottom","spacingLeft"],propsRequireUpdateSeries:["chart.inverted","chart.polar","chart.ignoreHiddenSeries","chart.type","colors","plotOptions","time","tooltip"]}),$t}),g(d,"Extensions/ScrollablePlotArea.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{stop:J}=L,{composed:X}=R,{addEvent:q,createElement:Z,css:Y,defined:V,merge:N,pushUnique:U}=$;function T(){let O=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!O&&(this.scrollablePlotArea=O=new M(this)),O==null||O.applyFixed()}function A(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}class M{static compose(H,z,c){U(X,this.compose)&&(q(H,"afterInit",A),q(z,"afterSetChartSize",D=>this.afterSetSize(D.target,D)),q(z,"render",T),q(c,"show",A))}static afterSetSize(H,z){let c,D,it,{minWidth:Q,minHeight:W}=H.options.chart.scrollablePlotArea||{},{clipBox:k,plotBox:_,inverted:C,renderer:h}=H;if(!h.forExport&&(Q?(H.scrollablePixelsX=c=Math.max(0,Q-H.chartWidth),c&&(H.scrollablePlotBox=N(H.plotBox),_.width=H.plotWidth+=c,k[C?"height":"width"]+=c,it=!0)):W&&(H.scrollablePixelsY=D=Math.max(0,W-H.chartHeight),V(D)&&(H.scrollablePlotBox=N(H.plotBox),_.height=H.plotHeight+=D,k[C?"width":"height"]+=D,it=!1)),V(it)&&!z.skipAxes))for(let l of H.axes)l.horiz===it&&(l.setAxisSize(),l.setAxisTranslation())}constructor(H){var u,v;let z,c=H.options.chart,D=st.getRendererType(),it=c.scrollablePlotArea||{},Q=this.moveFixedElements.bind(this),W={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};H.scrollablePixelsX&&(W.overflowX="auto"),H.scrollablePixelsY&&(W.overflowY="auto"),this.chart=H;let k=this.parentDiv=Z("div",{className:"highcharts-scrolling-parent"},{position:"relative"},H.renderTo),_=this.scrollingContainer=Z("div",{className:"highcharts-scrolling"},W,k),C=this.innerContainer=Z("div",{className:"highcharts-inner-container"},void 0,_),h=this.fixedDiv=Z("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(((u=c.style)==null?void 0:u.zIndex)||0)+2,top:0},void 0,!0),l=this.fixedRenderer=new D(h,H.chartWidth,H.chartHeight,c.style);this.mask=l.path().attr({fill:c.backgroundColor||"#fff","fill-opacity":(v=it.opacity)!=null?v:.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),_.parentNode.insertBefore(h,_),Y(H.renderTo,{overflow:"visible"}),q(H,"afterShowResetZoom",Q),q(H,"afterApplyDrilldown",Q),q(H,"afterLayOutTitles",Q),q(_,"scroll",()=>{let{pointer:I,hoverPoint:S}=H;I&&(delete I.chartPosition,S&&(z=S),I.runPointActions(void 0,z,!0))}),C.appendChild(H.container)}applyFixed(){var B;let{chart:H,fixedRenderer:z,isDirty:c,scrollingContainer:D}=this,{axisOffset:it,chartWidth:Q,chartHeight:W,container:k,plotHeight:_,plotLeft:C,plotTop:h,plotWidth:l,scrollablePixelsX:u=0,scrollablePixelsY:v=0}=H,{scrollPositionX:I=0,scrollPositionY:S=0}=H.options.chart.scrollablePlotArea||{},b=Q+u,K=W+v;z.setSize(Q,W),(c==null||c)&&(this.isDirty=!1,this.moveFixedElements()),J(H.container),Y(k,{width:`${b}px`,height:`${K}px`}),H.renderer.boxWrapper.attr({width:b,height:K,viewBox:[0,0,b,K].join(" ")}),(B=H.chartBackground)==null||B.attr({width:b,height:K}),Y(D,{width:`${Q}px`,height:`${W}px`}),V(c)||(D.scrollLeft=u*I,D.scrollTop=v*S);let ct=h-it[0]-1,et=C-it[3]-1,dt=h+_+it[2]+1,pt=C+l+it[1]+1,bt=C+l-u,Mt=h+_-v,w=[["M",0,0]];u?w=[["M",0,ct],["L",C-1,ct],["L",C-1,dt],["L",0,dt],["Z"],["M",bt,ct],["L",Q,ct],["L",Q,dt],["L",bt,dt],["Z"]]:v&&(w=[["M",et,0],["L",et,h-1],["L",pt,h-1],["L",pt,0],["Z"],["M",et,Mt],["L",et,W],["L",pt,W],["L",pt,Mt],["Z"]]),H.redrawTrigger!=="adjustHeight"&&this.mask.attr({d:w})}moveFixedElements(){let H,{container:z,inverted:c,scrollablePixelsX:D,scrollablePixelsY:it}=this.chart,Q=this.fixedRenderer,W=M.fixedSelectors;for(let k of(D&&!c?H=".highcharts-yaxis":D&&c||it&&!c?H=".highcharts-xaxis":it&&c&&(H=".highcharts-yaxis"),H&&W.push(`${H}:not(.highcharts-radial-axis)`,`${H}-labels:not(.highcharts-radial-axis-labels)`),W))[].forEach.call(z.querySelectorAll(k),_=>{(_.namespaceURI===Q.SVG_NS?Q.box:Q.box.parentNode).appendChild(_),_.style.pointerEvents="auto"})}}return M.fixedSelectors=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-drillup-button",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-range-selector-group",".highcharts-reset-zoom",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"],M}),g(d,"Core/Axis/Stacking/StackItem.js",[d["Core/Templating.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{format:$}=L,{series:J}=R,{destroyObjectProperties:X,fireEvent:q,isNumber:Z,pick:Y}=st;return class{constructor(V,N,U,T,A){let M=V.chart.inverted,O=V.reversed;this.axis=V;let H=this.isNegative=!!U!=!!O;this.options=N=N||{},this.x=T,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=A,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:N.align||(M?H?"left":"right":"center"),verticalAlign:N.verticalAlign||(M?"middle":H?"bottom":"top"),y:N.y,x:N.x},this.textAlign=N.textAlign||(M?H?"right":"left":"center")}destroy(){X(this,this.axis)}render(V){let N=this.axis.chart,U=this.options,T=U.format,A=T?$(T,this,N):U.formatter.call(this);if(this.label)this.label.attr({text:A,visibility:"hidden"});else{this.label=N.renderer.label(A,null,void 0,U.shape,void 0,void 0,U.useHTML,!1,"stack-labels");let M={r:U.borderRadius||0,text:A,padding:Y(U.padding,5),visibility:"hidden"};N.styledMode||(M.fill=U.backgroundColor,M.stroke=U.borderColor,M["stroke-width"]=U.borderWidth,this.label.css(U.style||{})),this.label.attr(M),this.label.added||this.label.add(V)}this.label.labelrank=N.plotSizeY,q(this,"afterRender")}setOffset(V,N,U,T,A,M){let{alignOptions:O,axis:H,label:z,options:c,textAlign:D}=this,it=H.chart,Q=this.getStackBox({xOffset:V,width:N,boxBottom:U,boxTop:T,defaultX:A,xAxis:M}),{verticalAlign:W}=O;if(z&&Q){let k=z.getBBox(void 0,0),_=z.padding,C=Y(c.overflow,"justify")==="justify",h;O.x=c.x||0,O.y=c.y||0;let{x:l,y:u}=this.adjustStackPosition({labelBox:k,verticalAlign:W,textAlign:D});Q.x-=l,Q.y-=u,z.align(O,!1,Q),(h=it.isInsidePlot(z.alignAttr.x+O.x+l,z.alignAttr.y+O.y+u))||(C=!1),C&&J.prototype.justifyDataLabel.call(H,z,O,z.alignAttr,k,Q),z.attr({x:z.alignAttr.x,y:z.alignAttr.y,rotation:c.rotation,rotationOriginX:k.width*{left:0,center:.5,right:1}[c.textAlign||"center"],rotationOriginY:k.height/2}),Y(!C&&c.crop,!0)&&(h=Z(z.x)&&Z(z.y)&&it.isInsidePlot(z.x-_+(z.width||0),z.y)&&it.isInsidePlot(z.x+_,z.y)),z[h?"show":"hide"]()}q(this,"afterSetOffset",{xOffset:V,width:N})}adjustStackPosition({labelBox:V,verticalAlign:N,textAlign:U}){let T={bottom:0,middle:1,top:2,right:1,center:0,left:-1},A=T[N],M=T[U];return{x:V.width/2+V.width/2*M,y:V.height/2*A}}getStackBox(V){let N=this.axis,U=N.chart,{boxTop:T,defaultX:A,xOffset:M,width:O,boxBottom:H}=V,z=N.stacking.usePercentage?100:Y(T,this.total,0),c=N.toPixels(z),D=V.xAxis||U.xAxis[0],it=Y(A,D.translate(this.x))+M,Q=Math.abs(c-N.toPixels(H||Z(N.min)&&N.logarithmic&&N.logarithmic.lin2log(N.min)||0)),W=U.inverted,k=this.isNegative;return W?{x:(k?c:c-Q)-U.plotLeft,y:D.height-it-O+D.top-U.plotTop,width:Q,height:O}:{x:it+D.transB-U.plotLeft,y:(k?c-Q:c)-U.plotTop,width:O,height:Q}}}}),g(d,"Core/Axis/Stacking/StackingAxis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{getDeferredAnimation:q}=L,{series:{prototype:Z}}=st,{addEvent:Y,correctFloat:V,defined:N,destroyObjectProperties:U,fireEvent:T,isArray:A,isNumber:M,objectEach:O,pick:H}=J;function z(){let h=this.inverted;this.axes.forEach(l=>{l.stacking&&l.stacking.stacks&&l.hasVisibleSeries&&(l.stacking.oldStacks=l.stacking.stacks)}),this.series.forEach(l=>{let u=l.xAxis&&l.xAxis.options||{};l.options.stacking&&l.reserveSpace()&&(l.stackKey=[l.type,H(l.options.stack,""),h?u.top:u.left,h?u.height:u.width].join(","))})}function c(){var l;let h=this.stacking;if(h){let u=h.stacks;O(u,(v,I)=>{U(v),delete u[I]}),(l=h.stackTotalGroup)==null||l.destroy()}}function D(){this.stacking||(this.stacking=new C(this))}function it(h,l,u,v){return!N(h)||h.x!==l||v&&h.stackKey!==v?h={x:l,index:0,key:v,stackKey:v}:h.index++,h.key=[u,l,h.index].join(","),h}function Q(){let h,l=this,u=l.yAxis,v=l.stackKey||"",I=u.stacking.stacks,S=l.processedXData,b=l.options.stacking,K=l[b+"Stacker"];K&&[v,"-"+v].forEach(ct=>{var Mt;let et=S.length,dt,pt,bt;for(;et--;)dt=S[et],h=l.getStackIndicator(h,dt,l.index,ct),pt=(Mt=I[ct])==null?void 0:Mt[dt],(bt=pt==null?void 0:pt.points[h.key||""])&&K.call(l,bt,pt,et)})}function W(h,l,u){let v=l.total?100/l.total:0;h[0]=V(h[0]*v),h[1]=V(h[1]*v),this.stackedYData[u]=h[1]}function k(h){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&!this.options.stacking&&this.chart.series.length>1?Z.setStackedPoints.call(this,h,"group"):h.stacking.resetStacks())}function _(h,l){var At,$t;let u,v,I,S,b,K,ct,et,dt,pt=l||this.options.stacking;if(!pt||!this.reserveSpace()||({group:"xAxis"}[pt]||"yAxis")!==h.coll)return;let bt=this.processedXData,Mt=this.processedYData,w=[],B=Mt.length,tt=this.options,nt=tt.threshold||0,x=tt.startFromThreshold?nt:0,y=tt.stack,j=l?`${this.type},${pt}`:this.stackKey||"",lt="-"+j,rt=this.negStacks,gt=h.stacking,vt=gt.stacks,Ot=gt.oldStacks;for(gt.stacksTouched+=1,ct=0;ct0&&this.singleStacks===!1&&(I.points[K][0]=I.points[this.index+","+et+",0"][0])):(delete I.points[K],delete I.points[this.index]);let Xt=I.total||0;pt==="percent"?(S=v?j:lt,Xt=rt&&(($t=vt[S])!=null&&$t[et])?(S=vt[S][et]).total=Math.max(S.total||0,Xt)+Math.abs(dt)||0:V(Xt+(Math.abs(dt)||0))):pt==="group"?(A(dt)&&(dt=dt[0]),dt!==null&&Xt++):Xt=V(Xt+(dt||0)),pt==="group"?I.cumulative=(Xt||1)-1:I.cumulative=V(H(I.cumulative,x)+(dt||0)),I.total=Xt,dt!==null&&(I.points[K].push(I.cumulative),w[ct]=I.cumulative,I.hasValidPoints=!0)}pt==="percent"&&(gt.usePercentage=!0),pt!=="group"&&(this.stackedYData=w),gt.oldStacks={}}class C{constructor(l){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=l}buildStacks(){let l,u,v=this.axis,I=v.series,S=v.coll==="xAxis",b=v.options.reversedStacks,K=I.length;for(this.resetStacks(),this.usePercentage=!1,u=K;u--;)l=I[b?u:K-u-1],S&&l.setGroupedPoints(v),l.setStackedPoints(v);if(!S)for(u=0;u{O(l,u=>{u.cumulative=u.total})}))}resetStacks(){O(this.stacks,l=>{O(l,(u,v)=>{M(u.touched)&&u.touched{O(ct,et=>{et.render(b)})}),b.animate({opacity:1},S)}}return(X||(X={})).compose=function(h,l,u){let v=l.prototype,I=u.prototype;v.getStacks||(Y(h,"init",D),Y(h,"destroy",c),v.getStacks=z,I.getStackIndicator=it,I.modifyStacks=Q,I.percentStacker=W,I.setGroupedPoints=k,I.setStackedPoints=_)},X}),g(d,"Series/Line/LineSeries.js",[d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{defined:$,merge:J,isObject:X}=st;class q extends L{drawGraph(){let Y=this.options,V=(this.gappedPath||this.getGraphPath).call(this),N=this.chart.styledMode;[this,...this.zones].forEach((U,T)=>{let A,M=U.graph,O=M?"animate":"attr",H=U.dashStyle||Y.dashStyle;M?(M.endX=this.preventGraphAnimation?null:V.xMap,M.animate({d:V})):V.length&&(U.graph=M=this.chart.renderer.path(V).addClass("highcharts-graph"+(T?` highcharts-zone-graph-${T-1} `:" ")+(T&&U.className||"")).attr({zIndex:1}).add(this.group)),M&&!N&&(A={stroke:!T&&Y.lineColor||U.color||this.color||"#cccccc","stroke-width":Y.lineWidth||0,fill:this.fillGraph&&this.color||"none"},H?A.dashstyle=H:Y.linecap!=="square"&&(A["stroke-linecap"]=A["stroke-linejoin"]="round"),M[O](A).shadow(T<2&&Y.shadow&&J({filterUnits:"userSpaceOnUse"},X(Y.shadow)?Y.shadow:{}))),M&&(M.startX=V.xMap,M.isArea=V.isArea)})}getGraphPath(Y,V,N){let U=this,T=U.options,A=[],M=[],O,H=T.step,z=(Y=Y||U.points).reversed;return z&&Y.reverse(),(H={right:1,center:2}[H]||H&&3)&&z&&(H=4-H),(Y=this.getValidPoints(Y,!1,!(T.connectNulls&&!V&&!N))).forEach(function(c,D){let it,Q=c.plotX,W=c.plotY,k=Y[D-1],_=c.isNull||typeof W!="number";(c.leftCliff||k&&k.rightCliff)&&!N&&(O=!0),_&&!$(V)&&D>0?O=!T.connectNulls:_&&!V?O=!0:(D===0||O?it=[["M",c.plotX,c.plotY]]:U.getPointSpline?it=[U.getPointSpline(Y,c,D)]:H?(it=H===1?[["L",k.plotX,W]]:H===2?[["L",(k.plotX+Q)/2,k.plotY],["L",(k.plotX+Q)/2,W]]:[["L",Q,k.plotY]]).push(["L",Q,W]):it=[["L",Q,W]],M.push(c.x),H&&(M.push(c.x),H===2&&M.push(c.x)),A.push.apply(A,it),O=!1)}),A.xMap=M,U.graphPath=A,A}}return q.defaultOptions=J(L.defaultOptions,{legendSymbol:"lineMarker"}),R.registerSeriesType("line",q),q}),g(d,"Series/Area/AreaSeriesDefaults.js",[],function(){return{threshold:0,legendSymbol:"areaMarker"}}),g(d,"Series/Area/AreaSeries.js",[d["Series/Area/AreaSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{line:$}}=R,{extend:J,merge:X,objectEach:q,pick:Z}=st;class Y extends ${drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:N,options:U}=this;[this,...this.zones].forEach((T,A)=>{var c;let M={},O=T.fillColor||U.fillColor,H=T.area,z=H?"animate":"attr";H?(H.endX=this.preventGraphAnimation?null:N.xMap,H.animate({d:N})):(M.zIndex=0,(H=T.area=this.chart.renderer.path(N).addClass("highcharts-area"+(A?` highcharts-zone-area-${A-1} `:" ")+(A&&T.className||"")).add(this.group)).isArea=!0),this.chart.styledMode||(M.fill=O||T.color||this.color,M["fill-opacity"]=O?1:(c=U.fillOpacity)!=null?c:.75,H.css({pointerEvents:this.stickyTracking?"none":"auto"})),H[z](M),H.startX=N.xMap,H.shiftUnit=U.step?2:1})}getGraphPath(N){let U,T,A,M=$.prototype.getGraphPath,O=this.options,H=O.stacking,z=this.yAxis,c=[],D=[],it=this.index,Q=z.stacking.stacks[this.stackKey],W=O.threshold,k=Math.round(z.getThreshold(O.threshold)),_=Z(O.connectNulls,H==="percent"),C=function(S,b,K){let ct=N[S],et=H&&Q[ct.x].points[it],dt=ct[K+"Null"]||0,pt=ct[K+"Cliff"]||0,bt,Mt,w=!0;pt||dt?(bt=(dt?et[0]:et[1])+pt,Mt=et[0]+pt,w=!!dt):!H&&N[b]&&N[b].isNull&&(bt=Mt=W),bt!==void 0&&(D.push({plotX:U,plotY:bt===null?k:z.getThreshold(bt),isNull:w,isCliff:!0}),c.push({plotX:U,plotY:Mt===null?k:z.getThreshold(Mt),doCurve:!1}))};N=N||this.points,H&&(N=this.getStackPoints(N));for(let S=0,b=N.length;S1&&H&&D.some(S=>S.isCliff)&&(v.hasStackedCliffs=I.hasStackedCliffs=!0),v.xMap=h.xMap,this.areaPath=v,I}getStackPoints(N){let U=this,T=[],A=[],M=this.xAxis,O=this.yAxis,H=O.stacking.stacks[this.stackKey],z={},c=O.series,D=c.length,it=O.options.reversedStacks?1:-1,Q=c.indexOf(U);if(N=N||this.points,this.options.stacking){for(let k=0;kk.visible);A.forEach(function(k,_){let C=0,h,l;if(z[k]&&!z[k].isNull)T.push(z[k]),[-1,1].forEach(function(u){let v=u===1?"rightNull":"leftNull",I=H[A[_+u]],S=0;if(I){let b=Q;for(;b>=0&&b=0&&uQ&&U>O?(U=Math.max(Q,O),A=2*O-U):Uk&&A>O?(A=Math.max(k,O),U=2*O-A):A1){let l=this.xAxis.series.filter(S=>S.visible).map(S=>S.index),u=0,v=0;D((h=this.xAxis.stacking)==null?void 0:h.stacks,S=>{if(typeof _.x=="number"){let b=S[_.x.toString()];if(b&&O(b.points[this.index])){let K=Object.keys(b.points).filter(ct=>!ct.match(",")&&b.points[ct]&&b.points[ct].length>1).map(parseFloat).filter(ct=>l.indexOf(ct)!==-1).sort((ct,et)=>et-ct);u=K.indexOf(this.index),v=K.length}}}),u=this.xAxis.reversed?v-1-u:u;let I=(v-1)*C.paddedWidth+k;W=(_.plotX||0)+I/2-k-u*C.paddedWidth}return W}translate(){let W=this,k=W.chart,_=W.options,C=W.dense=W.closestPointRange*W.xAxis.transA<2,h=W.borderWidth=c(_.borderWidth,C?0:1),l=W.xAxis,u=W.yAxis,v=_.threshold,I=c(_.minPointLength,5),S=W.getColumnMetrics(),b=S.width,K=W.pointXOffset=S.offset,ct=W.dataMin,et=W.dataMax,dt=W.translatedThreshold=u.getThreshold(v),pt=W.barW=Math.max(b,1+2*h);_.pointPadding&&(pt=Math.ceil(pt)),J.prototype.translate.apply(W),W.points.forEach(function(bt){let Mt=c(bt.yBottom,dt),w=999+Math.abs(Mt),B=bt.plotX||0,tt=N(bt.plotY,-w,u.len+w),nt,x=Math.min(tt,Mt),y=Math.max(tt,Mt)-x,j=b,lt=B+K,rt=pt;I&&Math.abs(y)I?Mt-I:dt-(nt?I:0)),T(bt.options.pointWidth)&&(lt-=Math.round(((j=rt=Math.ceil(bt.options.pointWidth))-b)/2)),_.centerInCategory&&!_.stacking&&(lt=W.adjustForMissingColumns(lt,j,bt,S)),bt.barX=lt,bt.pointWidth=j,bt.tooltipPos=k.inverted?[N(u.len+u.pos-k.plotLeft-tt,u.pos-k.plotLeft,u.len+u.pos-k.plotLeft),l.len+l.pos-k.plotTop-lt-rt/2,y]:[l.left-k.plotLeft+lt+rt/2,N(tt+u.pos-k.plotTop,u.pos-k.plotTop,u.len+u.pos-k.plotTop),y],bt.shapeType=W.pointClass.prototype.shapeType||"roundedRect",bt.shapeArgs=W.crispCol(lt,bt.isNull?dt:x,rt,bt.isNull?0:y)}),M(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(W,k){let _=this.options,C=this.pointAttrToOptions||{},h=C.stroke||"borderColor",l=C["stroke-width"]||"borderWidth",u,v,I,S=W&&W.color||this.color,b=W&&W[h]||_[h]||S,K=W&&W.options.dashStyle||_.dashStyle,ct=W&&W[l]||_[l]||this[l]||0,et=c(W&&W.opacity,_.opacity,1);W&&this.zones.length&&(v=W.getZone(),S=W.options.color||v&&(v.color||W.nonZonedColor)||this.color,v&&(b=v.borderColor||b,K=v.dashStyle||K,ct=v.borderWidth||ct)),k&&W&&(I=(u=z(_.states[k],W.options.states&&W.options.states[k]||{})).brightness,S=u.color||I!==void 0&&Y(S).brighten(u.brightness).get()||S,b=u[h]||b,ct=u[l]||ct,K=u.dashStyle||K,et=c(u.opacity,et));let dt={fill:S,stroke:b,"stroke-width":ct,opacity:et};return K&&(dt.dashstyle=K),dt}drawPoints(W=this.points){let k,_=this,C=this.chart,h=_.options,l=C.renderer,u=h.animationLimit||250;W.forEach(function(v){let I=v.plotY,S=v.graphic,b=!!S,K=S&&C.pointCounth==null?void 0:h.enabled)}function c(h,l,u,v,I){var tt;let{chart:S,enabledDataSorting:b}=this,K=this.isCartesian&&S.inverted,ct=h.plotX,et=h.plotY,dt=u.rotation||0,pt=q(ct)&&q(et)&&S.isInsidePlot(ct,Math.round(et),{inverted:K,paneCoordinates:!0,series:this}),bt=dt===0&&A(u.overflow,b?"none":"justify")==="justify",Mt=this.visible&&h.visible!==!1&&q(ct)&&(h.series.forceDL||b&&!bt||pt||A(u.inside,!!this.options.stacking)&&v&&S.isInsidePlot(ct,K?v.x+1:v.y+v.height-1,{inverted:K,paneCoordinates:!0,series:this})),w=h.pos();if(Mt&&w){var B;let nt=l.getBBox(),x=l.getBBox(void 0,0),y={right:1,center:.5}[u.align||0]||0,j={bottom:1,middle:.5}[u.verticalAlign||0]||0;if(v=Z({x:w[0],y:Math.round(w[1]),width:0,height:0},v||{}),u.alignTo==="plotEdges"&&this.isCartesian&&(v[K?"x":"y"]=0,v[K?"width":"height"]=((tt=this.yAxis)==null?void 0:tt.len)||0),Z(u,{width:nt.width,height:nt.height}),B=v,b&&this.xAxis&&!bt&&this.setDataLabelStartPos(h,l,I,pt,B),l.align(U(u,{width:x.width,height:x.height}),!1,v,!1),l.alignAttr.x+=y*(x.width-nt.width),l.alignAttr.y+=j*(x.height-nt.height),l[l.placed?"animate":"attr"]({x:l.alignAttr.x+(nt.width-x.width)/2,y:l.alignAttr.y+(nt.height-x.height)/2,rotationOriginX:(l.width||0)/2,rotationOriginY:(l.height||0)/2}),bt&&v.height>=0)this.justifyDataLabel(l,u,l.alignAttr,nt,v,I);else if(A(u.crop,!0)){let{x:lt,y:rt}=l.alignAttr;Mt=S.isInsidePlot(lt,rt,{paneCoordinates:!0,series:this})&&S.isInsidePlot(lt+nt.width-1,rt+nt.height-1,{paneCoordinates:!0,series:this})}u.shape&&!dt&&l[I?"attr":"animate"]({anchorX:w[0],anchorY:w[1]})}I&&b&&(l.placed=!1),Mt||b&&!bt?(l.show(),l.placed=!0):(l.hide(),l.placed=!1)}function D(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function it(h){let l=this.hasRendered||0,u=this.initDataLabelsGroup().attr({opacity:+l});return!l&&u&&(this.visible&&u.show(),this.options.animation?u.animate({opacity:1},h):u.attr({opacity:1})),u}function Q(h){var Mt;let l;h=h||this.points;let u=this,v=u.chart,I=u.options,S=v.renderer,{backgroundColor:b,plotBackgroundColor:K}=v.options.chart,ct=S.getContrast(N(K)&&K||N(b)&&b||"#000000"),et=_(u),{animation:dt,defer:pt}=et[0],bt=pt?J(v,dt,u):{defer:0,duration:0};Y(this,"drawDataLabels"),(Mt=u.hasDataLabels)!=null&&Mt.call(u)&&(l=this.initDataLabels(bt),h.forEach(w=>{var nt,x;let B=w.dataLabels||[];O(k(et,w.dlOptions||((nt=w.options)==null?void 0:nt.dataLabels))).forEach((y,j)=>{let lt=y.enabled&&(w.visible||w.dataLabelOnHidden)&&(!w.isNull||w.dataLabelOnNull)&&function(le,Gt){let he=Gt.filter;if(he){let ve=he.operator,Ce=le[he.property],Te=he.value;return ve===">"&&Ce>Te||ve==="<"&&Ce="&&Ce>=Te||ve==="<="&&Ce<=Te||ve==="=="&&Ce==Te||ve==="==="&&Ce===Te||ve==="!="&&Ce!=Te||ve==="!=="&&Ce!==Te}return!0}(w,y),{backgroundColor:rt,borderColor:gt,distance:vt,style:Ot={}}=y,At,$t,Xt,Ct,wt={},Dt=B[j],jt=!Dt,re;lt&&($t=A(y[w.formatPrefix+"Format"],y.format),At=w.getLabelConfig(),Xt=q($t)?X($t,At,v):(y[w.formatPrefix+"Formatter"]||y.formatter).call(At,y),Ct=y.rotation,!v.styledMode&&(Ot.color=A(y.color,Ot.color,N(u.color)?u.color:void 0,"#000000"),Ot.color==="contrast"?(rt!=="none"&&(re=rt),w.contrastColor=S.getContrast(re!=="auto"&&re||w.color||u.color),Ot.color=re||!q(vt)&&y.inside||0>M(vt||0)||I.stacking?w.contrastColor:ct):delete w.contrastColor,I.cursor&&(Ot.cursor=I.cursor)),wt={r:y.borderRadius||0,rotation:Ct,padding:y.padding,zIndex:1},v.styledMode||(wt.fill=rt==="auto"?w.color:rt,wt.stroke=gt==="auto"?w.color:gt,wt["stroke-width"]=y.borderWidth),T(wt,(le,Gt)=>{le===void 0&&delete wt[Gt]})),!Dt||lt&&q(Xt)&&!!Dt.div==!!y.useHTML&&(Dt.rotation&&y.rotation||Dt.rotation===y.rotation)||(Dt=void 0,jt=!0),lt&&q(Xt)&&(Dt?wt.text=Xt:(Dt=S.label(Xt,0,0,y.shape,void 0,void 0,y.useHTML,void 0,"data-label")).addClass(" highcharts-data-label-color-"+w.colorIndex+" "+(y.className||"")+(y.useHTML?" highcharts-tracker":"")),Dt&&(Dt.options=y,Dt.attr(wt),v.styledMode?Ot.width&&Dt.css({width:Ot.width,textOverflow:Ot.textOverflow}):Dt.css(Ot).shadow(y.shadow),Y(Dt,"beforeAddingDataLabel",{labelOptions:y,point:w}),Dt.added||Dt.add(l),u.alignDataLabel(w,Dt,y,void 0,jt),Dt.isActive=!0,B[j]&&B[j]!==Dt&&B[j].destroy(),B[j]=Dt))});let tt=B.length;for(;tt--;)B[tt]&&B[tt].isActive?B[tt].isActive=!1:((x=B[tt])==null||x.destroy(),B.splice(tt,1));w.dataLabel=B[0],w.dataLabels=B})),Y(this,"afterDrawDataLabels")}function W(h,l,u,v,I,S){let b=this.chart,K=l.align,ct=l.verticalAlign,et=h.box?0:h.padding||0,dt=b.inverted?this.yAxis:this.xAxis,pt=dt?dt.left-b.plotLeft:0,bt=b.inverted?this.xAxis:this.yAxis,Mt=bt?bt.top-b.plotTop:0,{x:w=0,y:B=0}=l,tt,nt;return(tt=(u.x||0)+et+pt)<0&&(K==="right"&&w>=0?(l.align="left",l.inside=!0):w-=tt,nt=!0),(tt=(u.x||0)+v.width-et+pt)>b.plotWidth&&(K==="left"&&w<=0?(l.align="right",l.inside=!0):w+=b.plotWidth-tt,nt=!0),(tt=u.y+et+Mt)<0&&(ct==="bottom"&&B>=0?(l.verticalAlign="top",l.inside=!0):B-=tt,nt=!0),(tt=(u.y||0)+v.height-et+Mt)>b.plotHeight&&(ct==="top"&&B<=0?(l.verticalAlign="bottom",l.inside=!0):B+=b.plotHeight-tt,nt=!0),nt&&(l.x=w,l.y=B,h.placed=!S,h.align(l,void 0,I)),nt}function k(h,l){let u=[],v;if(V(h)&&!V(l))u=h.map(function(I){return U(I,l)});else if(V(l)&&!V(h))u=l.map(function(I){return U(h,I)});else if(V(h)||V(l)){if(V(h)&&V(l))for(v=Math.max(h.length,l.length);v--;)u[v]=U(h[v],l[v])}else u=U(h,l);return u}function _(h){var u,v;let l=h.chart.options.plotOptions;return O(k(k((u=l==null?void 0:l.series)==null?void 0:u.dataLabels,(v=l==null?void 0:l[h.type])==null?void 0:v.dataLabels),h.options.dataLabels))}function C(h,l,u,v,I){let S=this.chart,b=S.inverted,K=this.xAxis,ct=K.reversed,et=((b?l.height:l.width)||0)/2,dt=h.pointWidth,pt=dt?dt/2:0;l.startXPos=b?I.x:ct?-et-pt:K.width-et+pt,l.startYPos=b?ct?this.yAxis.height-et+pt:-et-pt:I.y,v?l.visibility==="hidden"&&(l.show(),l.attr({opacity:0}).animate({opacity:1})):l.attr({opacity:1}).animate({opacity:0},void 0,l.hide),S.hasRendered&&(u&&l.attr({x:l.startXPos,y:l.startYPos}),l.placed=!0)}H.compose=function(h){let l=h.prototype;l.initDataLabels||(l.initDataLabels=it,l.initDataLabelsGroup=D,l.alignDataLabel=c,l.drawDataLabels=Q,l.justifyDataLabel=W,l.setDataLabelStartPos=C,l.hasDataLabels=z)}}($||($={})),$}),g(d,"Series/Column/ColumnDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{composed:X}=R,{series:q}=st,{merge:Z,pick:Y,pushUnique:V}=$;return function(N){function U(T,A,M,O,H){let z=this.chart.inverted,c=T.series,D=(c.xAxis?c.xAxis.len:this.chart.plotSizeX)||0,it=(c.yAxis?c.yAxis.len:this.chart.plotSizeY)||0,Q=T.dlBox||T.shapeArgs,W=Y(T.below,T.plotY>Y(this.translatedThreshold,it)),k=Y(M.inside,!!this.options.stacking);if(Q){if(O=Z(Q),!(M.overflow==="allow"&&M.crop===!1)){O.y<0&&(O.height+=O.y,O.y=0);let _=O.y+O.height-it;_>0&&_\u25CF {series.name}
    ',pointFormat:"x: {point.x}
    y: {point.y}
    "}}}),g(d,"Series/Scatter/ScatterSeries.js",[d["Series/Scatter/ScatterSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{column:$,line:J}=R.seriesTypes,{addEvent:X,extend:q,merge:Z}=st;class Y extends J{applyJitter(){let N=this,U=this.options.jitter,T=this.points.length;U&&this.points.forEach(function(A,M){["x","y"].forEach(function(O,H){if(U[O]&&!A.isNull){let z=`plot${O.toUpperCase()}`,c=N[`${O}Axis`],D=U[O]*c.transA;if(c&&!c.logarithmic){let it=Math.max(0,(A[z]||0)-D),Q=Math.min(c.len,(A[z]||0)+D);A[z]=it+(Q-it)*function(W){let k=1e4*Math.sin(W);return k-Math.floor(k)}(M+H*T),O==="x"&&(A.clientX=A.plotX)}}})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}}return Y.defaultOptions=Z(J.defaultOptions,L),q(Y.prototype,{drawTracker:$.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]}),X(Y,"afterTranslate",function(){this.applyJitter()}),R.registerSeriesType("scatter",Y),Y}),g(d,"Series/CenteredUtilities.js",[d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Utilities.js"]],function(L,R,st){var $,J;let{deg2rad:X}=L,{fireEvent:q,isNumber:Z,pick:Y,relativeLength:V}=st;return(J=$||($={})).getCenter=function(){let N=this.options,U=this.chart,T=2*(N.slicedOffset||0),A=U.plotWidth-2*T,M=U.plotHeight-2*T,O=N.center,H=Math.min(A,M),z=N.thickness,c,D=N.size,it=N.innerSize||0,Q,W;typeof D=="string"&&(D=parseFloat(D)),typeof it=="string"&&(it=parseFloat(it));let k=[Y(O[0],"50%"),Y(O[1],"50%"),Y(D&&D<0?void 0:N.size,"100%"),Y(it&&it<0?void 0:N.innerSize||0,"0%")];for(!U.angular||this instanceof R||(k[3]=0),Q=0;Q<4;++Q)W=k[Q],c=Q<2||Q===2&&/%$/.test(W),k[Q]=V(W,[A,M,H,k[2]][Q])+(c?T:0);return k[3]>k[2]&&(k[3]=k[2]),Z(z)&&2*z0&&(k[3]=k[2]-2*z),q(this,"afterGetCenter",{positions:k}),k},J.getStartAndEndRadians=function(N,U){let T=Z(N)?N:0,A=Z(U)&&U>T&&U-T<360?U:T+360;return{start:X*(T+-90),end:X*(A+-90)}},$}),g(d,"Series/Pie/PiePoint.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st){let{setAnimation:$}=L,{addEvent:J,defined:X,extend:q,isNumber:Z,pick:Y,relativeLength:V}=st;class N extends R{getConnectorPath(T){let A=T.dataLabelPosition,M=T.options||{},O=M.connectorShape,H=this.connectorShapes[O]||O;return A&&H.call(this,Mi(xr({},A.computed),{alignment:A.alignment}),A.connectorPosition,M)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(T){let A=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(A.x,A.y,A.r+T,A.r+T,{innerR:A.r-1,start:A.start,end:A.end,borderRadius:A.borderRadius})}constructor(T,A,M){var H;super(T,A,M),this.half=0,(H=this.name)!=null||(this.name="Slice");let O=z=>{this.slice(z.type==="select")};J(this,"select",O),J(this,"unselect",O)}isValid(){return Z(this.y)&&this.y>=0}setVisible(T,A=!0){T!==this.visible&&this.update({visible:T!=null?T:!this.visible},A,void 0,!1)}slice(T,A,M){let O=this.series;$(M,O.chart),A=Y(A,!0),this.sliced=this.options.sliced=T=X(T)?T:!this.sliced,O.options.data[O.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}}return q(N.prototype,{connectorShapes:{fixedOffset:function(U,T,A){let M=T.breakAt,O=T.touchingSliceAt,H=A.softConnector?["C",U.x+(U.alignment==="left"?-5:5),U.y,2*M.x-O.x,2*M.y-O.y,M.x,M.y]:["L",M.x,M.y];return[["M",U.x,U.y],H,["L",O.x,O.y]]},straight:function(U,T){let A=T.touchingSliceAt;return[["M",U.x,U.y],["L",A.x,A.y]]},crookedLine:function(U,T,A){let{breakAt:M,touchingSliceAt:O}=T,{series:H}=this,[z,c,D]=H.center,it=D/2,{plotLeft:Q,plotWidth:W}=H.chart,k=U.alignment==="left",{x:_,y:C}=U,h=M.x;if(A.crookDistance){let u=V(A.crookDistance,1);h=k?z+it+(W+Q-z-it)*(1-u):Q+(z-it)*u}else h=z+(c-C)*Math.tan((this.angle||0)-Math.PI/2);let l=[["M",_,C]];return(k?h<=_&&h>=M.x:h>=_&&h<=M.x)&&l.push(["L",h,C]),l.push(["L",M.x,M.y],["L",O.x,O.y]),l}}}),N}),g(d,"Series/Pie/PieSeriesDefaults.js",[],function(){return{borderRadius:3,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{connectorPadding:5,connectorShape:"crookedLine",crookDistance:void 0,distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}}}),g(d,"Series/Pie/PieSeries.js",[d["Series/CenteredUtilities.js"],d["Series/Column/ColumnSeries.js"],d["Core/Globals.js"],d["Series/Pie/PiePoint.js"],d["Series/Pie/PieSeriesDefaults.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y){let{getStartAndEndRadians:V}=L,{noop:N}=st,{clamp:U,extend:T,fireEvent:A,merge:M,pick:O}=Y;class H extends X{animate(c){let D=this,it=D.points,Q=D.startAngleRad;c||it.forEach(function(W){let k=W.graphic,_=W.shapeArgs;k&&_&&(k.attr({r:O(W.startR,D.center&&D.center[3]/2),start:Q,end:Q}),k.animate({r:_.r,start:_.start,end:_.end},D.options.animation))})}drawEmpty(){let c,D,it=this.startAngleRad,Q=this.endAngleRad,W=this.options;this.total===0&&this.center?(c=this.center[0],D=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(c,D,this.center[1]/2,0,it,Q).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:Z.arc(c,D,this.center[2]/2,0,{start:it,end:Q,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":W.borderWidth,fill:W.fillColor||"none",stroke:W.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let c=this.chart.renderer;this.points.forEach(function(D){D.graphic&&D.hasNewShapeType()&&(D.graphic=D.graphic.destroy()),D.graphic||(D.graphic=c[D.shapeType](D.shapeArgs).add(D.series.group),D.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(c,D,it,Q){let W=this.center,k=this.radii?this.radii[it.index]||0:W[2]/2,_=Q.dataLabelPosition,C=(_==null?void 0:_.distance)||0,h=Math.asin(U((c-W[1])/(k+C),-1,1));return W[0]+Math.cos(h)*(k+C)*(D?-1:1)+(C>0?(D?-1:1)*(Q.padding||0):0)}hasData(){return!!this.processedXData.length}redrawPoints(){let c,D,it,Q,W=this,k=W.chart;this.drawEmpty(),W.group&&!k.styledMode&&W.group.shadow(W.options.shadow),W.points.forEach(function(_){let C={};D=_.graphic,!_.isNull&&D?(Q=_.shapeArgs,c=_.getTranslate(),k.styledMode||(it=W.pointAttribs(_,_.selected&&"select")),_.delayedRendering?(D.setRadialReference(W.center).attr(Q).attr(c),k.styledMode||D.attr(it).attr({"stroke-linejoin":"round"}),_.delayedRendering=!1):(D.setRadialReference(W.center),k.styledMode||M(!0,C,it),M(!0,C,Q,c),D.animate(C)),D.attr({visibility:_.visible?"inherit":"hidden"}),D.addClass(_.getClassName(),!0)):D&&(_.graphic=D.destroy())})}sortByAngle(c,D){c.sort(function(it,Q){return it.angle!==void 0&&(Q.angle-it.angle)*D})}translate(c){A(this,"translate"),this.generatePoints();let D=this.options,it=D.slicedOffset,Q=V(D.startAngle,D.endAngle),W=this.startAngleRad=Q.start,k=(this.endAngleRad=Q.end)-W,_=this.points,C=D.ignoreHiddenPoint,h=_.length,l,u,v,I,S,b,K,ct=0;for(c||(this.center=c=this.getCenter()),b=0;b1.5*Math.PI?v-=2*Math.PI:v<-Math.PI/2&&(v+=2*Math.PI),K.slicedTranslation={translateX:Math.round(Math.cos(v)*it),translateY:Math.round(Math.sin(v)*it)},I=Math.cos(v)*c[2]/2,S=Math.sin(v)*c[2]/2,K.tooltipPos=[c[0]+.7*I,c[1]+.7*S],K.half=v<-Math.PI/2||v>Math.PI/2?1:0,K.angle=v}A(this,"afterTranslate")}updateTotals(){let c=this.points,D=c.length,it=this.options.ignoreHiddenPoint,Q,W,k=0;for(Q=0;Q0&&(W.visible||!it)?W.y/k*100:0,W.total=k}}return H.defaultOptions=M(X.defaultOptions,J),T(H.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:R.prototype.drawTracker,getCenter:L.getCenter,getSymbol:N,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:R.prototype.pointAttribs,pointClass:$,requireSorting:!1,searchPoint:N,trackerGroups:["group","dataLabelsGroup"]}),q.registerSeriesType("pie",H),H}),g(d,"Series/Pie/PieDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{composed:q,noop:Z}=R,{distribute:Y}=st,{series:V}=$,{arrayMax:N,clamp:U,defined:T,pick:A,pushUnique:M,relativeLength:O}=J;return function(H){let z={radialDistributionY:function(W,k){var _;return(((_=k.dataLabelPosition)==null?void 0:_.top)||0)+W.distributeBox.pos},radialDistributionX:function(W,k,_,C,h){let l=h.dataLabelPosition;return W.getX(_<((l==null?void 0:l.top)||0)+2||_>((l==null?void 0:l.bottom)||0)-2?C:_,k.half,k,h)},justify:function(W,k,_,C){var h;return C[0]+(W.half?-1:1)*(_+(((h=k.dataLabelPosition)==null?void 0:h.distance)||0))},alignToPlotEdges:function(W,k,_,C){let h=W.getBBox().width;return k?h+C:_-h-C},alignToConnectors:function(W,k,_,C){let h=0,l;return W.forEach(function(u){(l=u.dataLabel.getBBox().width)>h&&(h=l)}),k?h+C:_-h-C}};function c(W,k){let{center:_,options:C}=this,h=_[2]/2,l=W.angle||0,u=Math.cos(l),v=Math.sin(l),I=_[0]+u*h,S=_[1]+v*h,b=Math.min((C.slicedOffset||0)+(C.borderWidth||0),k/5);return{natural:{x:I+u*k,y:S+v*k},computed:{},alignment:k<0?"center":W.half?"right":"left",connectorPosition:{breakAt:{x:I+u*b,y:S+v*b},touchingSliceAt:{x:I,y:S}},distance:k}}function D(){var Mt;let W=this,k=W.points,_=W.chart,C=_.plotWidth,h=_.plotHeight,l=_.plotLeft,u=Math.round(_.chartWidth/3),v=W.center,I=v[2]/2,S=v[1],b=[[],[]],K=[0,0,0,0],ct=W.dataLabelPositioners,et,dt,pt,bt=0;W.visible&&((Mt=W.hasDataLabels)!=null&&Mt.call(W))&&(k.forEach(w=>{(w.dataLabels||[]).forEach(B=>{B.shortened&&(B.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),B.shortened=!1)})}),V.prototype.drawDataLabels.apply(W),k.forEach(w=>{(w.dataLabels||[]).forEach((B,tt)=>{var j;let nt=v[2]/2,x=B.options,y=O((x==null?void 0:x.distance)||0,nt);tt===0&&b[w.half].push(w),!T((j=x==null?void 0:x.style)==null?void 0:j.width)&&B.getBBox().width>u&&(B.css({width:Math.round(.7*u)+"px"}),B.shortened=!0),B.dataLabelPosition=this.getDataLabelPosition(w,y),bt=Math.max(bt,y)})}),b.forEach((w,B)=>{let tt=w.length,nt=[],x,y,j=0,lt;tt&&(W.sortByAngle(w,B-.5),bt>0&&(x=Math.max(0,S-I-bt),y=Math.min(S+I+bt,_.plotHeight),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{var Ot;let vt=gt.dataLabelPosition;vt&&vt.distance>0&&(vt.top=Math.max(0,S-I-vt.distance),vt.bottom=Math.min(S+I+vt.distance,_.plotHeight),j=gt.getBBox().height||21,gt.lineHeight=_.renderer.fontMetrics(gt.text||gt).h+2*gt.padding,rt.distributeBox={target:(((Ot=gt.dataLabelPosition)==null?void 0:Ot.natural.y)||0)-vt.top+gt.lineHeight/2,size:j,rank:rt.y},nt.push(rt.distributeBox))})}),Y(nt,lt=y+j-x,lt/5)),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{let vt=gt.options||{},Ot=rt.distributeBox,At=gt.dataLabelPosition,$t=(At==null?void 0:At.natural.y)||0,Xt=vt.connectorPadding||0,Ct=gt.lineHeight||21,wt=(Ct-gt.getBBox().height)/2,Dt=0,jt=$t,re="inherit";if(At){if(nt&&T(Ot)&&At.distance>0&&(Ot.pos===void 0?re="hidden":(pt=Ot.size,jt=ct.radialDistributionY(rt,gt))),vt.justify)Dt=ct.justify(rt,gt,I,v);else switch(vt.alignTo){case"connectors":Dt=ct.alignToConnectors(w,B,C,l);break;case"plotEdges":Dt=ct.alignToPlotEdges(gt,B,C,l);break;default:Dt=ct.radialDistributionX(W,rt,jt-wt,$t,gt)}if(At.attribs={visibility:re,align:At.alignment},At.posAttribs={x:Dt+(vt.x||0)+({left:Xt,right:-Xt}[At.alignment]||0),y:jt+(vt.y||0)-Ct/2},At.computed.x=Dt,At.computed.y=jt-wt,A(vt.crop,!0)){let le;Dt-(dt=gt.getBBox().width)C-Xt&&B===0&&(le=Math.round(Dt+dt-C+Xt),K[1]=Math.max(le,K[1])),jt-pt/2<0?K[0]=Math.max(Math.round(-jt+pt/2),K[0]):jt+pt/2>h&&(K[2]=Math.max(Math.round(jt+pt/2-h),K[2])),At.sideOverflow=le}}})}))}),(N(K)===0||this.verifyDataLabelOverflow(K))&&(this.placeDataLabels(),this.points.forEach(w=>{(w.dataLabels||[]).forEach(B=>{var y;let{connectorColor:tt,connectorWidth:nt=1}=B.options||{},x=B.dataLabelPosition;if(nt){let j;et=B.connector,x&&x.distance>0?(j=!et,et||(B.connector=et=_.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+w.colorIndex+(w.className?" "+w.className:"")).add(W.dataLabelsGroup)),_.styledMode||et.attr({"stroke-width":nt,stroke:tt||w.color||"#666666"}),et[j?"attr":"animate"]({d:w.getConnectorPath(B)}),et.attr({visibility:(y=x.attribs)==null?void 0:y.visibility})):et&&(B.connector=et.destroy())}})})))}function it(){this.points.forEach(W=>{(W.dataLabels||[]).forEach(k=>{var C;let _=k.dataLabelPosition;_?(_.sideOverflow&&(k.css({width:Math.max(k.getBBox().width-_.sideOverflow,0)+"px",textOverflow:(((C=k.options)==null?void 0:C.style)||{}).textOverflow||"ellipsis"}),k.shortened=!0),k.attr(_.attribs),k[k.moved?"animate":"attr"](_.posAttribs),k.moved=!0):k&&k.attr({y:-9999})}),delete W.distributeBox},this)}function Q(W){let k=this.center,_=this.options,C=_.center,h=_.minSize||80,l=h,u=_.size!==null;return!u&&(C[0]!==null?l=Math.max(k[2]-Math.max(W[1],W[3]),h):(l=Math.max(k[2]-W[1]-W[3],h),k[0]+=(W[3]-W[1])/2),C[1]!==null?l=U(l,h,k[2]-Math.max(W[0],W[2])):(l=U(l,h,k[2]-W[0]-W[2]),k[1]+=(W[0]-W[2])/2),l(J.x+=X.x,J.y+=X.y,J),{x:0,y:0});return{x:$.x/st.length,y:$.y/st.length}},R.getDistanceBetweenPoints=function(st,$){return Math.sqrt(Math.pow($.x-st.x,2)+Math.pow($.y-st.y,2))},R.getAngleBetweenPoints=function(st,$){return Math.atan2($.x-st.x,$.y-st.y)},R.pointInPolygon=function({x:st,y:$},J){let X=J.length,q,Z,Y=!1;for(q=0,Z=X-1;q$!=T>$&&st<(U-V)*($-N)/(T-N)+V&&(Y=!Y)}return Y},L}),g(d,"Extensions/OverlappingDataLabels.js",[d["Core/Geometry/GeometryUtilities.js"],d["Core/Utilities.js"]],function(L,R){let{pointInPolygon:st}=L,{addEvent:$,fireEvent:J,objectEach:X,pick:q}=R;function Z(N){let U=N.length,T=(it,Q)=>!(Q.x>=it.x+it.width||Q.x+Q.width<=it.x||Q.y>=it.y+it.height||Q.y+Q.height<=it.y),A=(it,Q)=>{for(let W of it)if(st({x:W[0],y:W[1]},Q))return!0;return!1},M,O,H,z,c,D=!1;for(let it=0;it(Q.labelrank||0)-(it.labelrank||0));for(let it=0;it{X(M,O=>{O.label&&U.push(O.label)})});for(let A of N.series||[])if(A.visible&&((T=A.hasDataLabels)!=null&&T.call(A))){let M=O=>{for(let H of O)H.visible&&(H.dataLabels||[]).forEach(z=>{var D,it;let c=z.options||{};z.labelrank=q(c.labelrank,H.labelrank,(D=H.shapeArgs)==null?void 0:D.height),((it=c.allowOverlap)!=null?it:Number(c.distance)>0)?(z.oldOpacity=z.opacity,z.newOpacity=1,Y(z,N)):U.push(z)})};M(A.nodes||[]),M(A.points)}this.hideOverlappingLabels(U)}return{compose:function(N){let U=N.prototype;U.hideOverlappingLabels||(U.hideOverlappingLabels=Z,$(N,"render",V))}}}),g(d,"Extensions/BorderRadius.js",[d["Core/Defaults.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{defaultOptions:$}=L,{noop:J}=R,{addEvent:X,extend:q,isObject:Z,merge:Y,relativeLength:V}=st,N={radius:0,scope:"stack",where:void 0},U=J,T=J;function A(c,D,it,Q,W={}){let k=U(c,D,it,Q,W),{innerR:_=0,r:C=it,start:h=0,end:l=0}=W;if(W.open||!W.borderRadius)return k;let u=l-h,v=Math.sin(u/2),I=Math.max(Math.min(V(W.borderRadius||0,C-_),(C-_)/2,C*v/(1+v)),0),S=Math.min(I,u/Math.PI*2*_),b=k.length-1;for(;b--;)(function(K,ct,et){let dt,pt,bt,Mt=K[ct],w=K[ct+1];if(w[0]==="Z"&&(w=K[0]),(Mt[0]==="M"||Mt[0]==="L")&&w[0]==="A"?(dt=Mt,pt=w,bt=!0):Mt[0]==="A"&&(w[0]==="M"||w[0]==="L")&&(dt=w,pt=Mt),dt&&pt&&pt.params){let B=pt[1],tt=pt[5],nt=pt.params,{start:x,end:y,cx:j,cy:lt}=nt,rt=tt?B-et:B+et,gt=rt?Math.asin(et/rt):0,vt=tt?gt:-gt,Ot=Math.cos(gt)*rt;bt?(nt.start=x+vt,dt[1]=j+Ot*Math.cos(x),dt[2]=lt+Ot*Math.sin(x),K.splice(ct+1,0,["A",et,et,0,0,1,j+B*Math.cos(nt.start),lt+B*Math.sin(nt.start)])):(nt.end=y-vt,pt[6]=j+B*Math.cos(nt.end),pt[7]=lt+B*Math.sin(nt.end),K.splice(ct+1,0,["A",et,et,0,0,1,j+Ot*Math.cos(y),lt+Ot*Math.sin(y)])),pt[4]=Math.abs(nt.end-nt.start)1?S:I);return k}function M(){var c,D;if(this.options.borderRadius&&!(this.chart.is3d&&this.chart.is3d())){let{options:it,yAxis:Q}=this,W=it.stacking==="percent",k=(D=(c=$.plotOptions)==null?void 0:c[this.type])==null?void 0:D.borderRadius,_=O(it.borderRadius,Z(k)?k:{}),C=Q.options.reversed;for(let h of this.points){let{shapeArgs:l}=h;if(h.shapeType==="roundedRect"&&l){let{width:u=0,height:v=0,y:I=0}=l,S=I,b=v;if(_.scope==="stack"&&h.stackTotal){let dt=Q.translate(W?100:h.stackTotal,!1,!0,!1,!0),pt=Q.translate(it.threshold||0,!1,!0,!1,!0),bt=this.crispCol(0,Math.min(dt,pt),0,Math.abs(dt-pt));S=bt.y,b=bt.height}let K=(h.negative?-1:1)*(C?-1:1)==-1,ct=_.where;!ct&&this.is("waterfall")&&Math.abs((h.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(ct="all"),ct||(ct="end");let et=Math.min(V(_.radius,u),u/2,ct==="all"?v/2:1/0)||0;ct==="end"&&(K&&(S-=et),b+=et),q(l,{brBoxHeight:b,brBoxY:S,r:et})}}}}function O(c,D){return Z(c)||(c={radius:c||0}),Y(N,D,c)}function H(){let c=O(this.options.borderRadius);for(let D of this.points){let it=D.shapeArgs;it&&(it.borderRadius=V(c.radius,(it.r||0)-(it.innerR||0)))}}function z(c,D,it,Q,W={}){let k=T(c,D,it,Q,W),{r:_=0,brBoxHeight:C=Q,brBoxY:h=D}=W,l=D-h,u=h+C-(D+Q),v=l-_>-.1?0:_,I=u-_>-.1?0:_,S=Math.max(v&&l,0),b=Math.max(I&&u,0),K=[c+v,D],ct=[c+it-v,D],et=[c+it,D+v],dt=[c+it,D+Q-I],pt=[c+it-I,D+Q],bt=[c+I,D+Q],Mt=[c,D+Q-I],w=[c,D+v],B=(tt,nt)=>Math.sqrt(Math.pow(tt,2)-Math.pow(nt,2));if(S){let tt=B(v,v-S);K[0]-=tt,ct[0]+=tt,et[1]=w[1]=D+v-S}if(Q=q(A.minWidth,0)&&this.chartHeight>=q(A.minHeight,0)}).call(this)&&T.push(U._id)}function N(U,T){let A=this.options.responsive,M=this.currentResponsive,O=[],H;!T&&A&&A.rules&&A.rules.forEach(D=>{D._id===void 0&&(D._id=Z()),this.matchResponsiveRule(D,O)},this);let z=X(...O.map(D=>J((A||{}).rules||[],it=>it._id===D)).map(D=>D&&D.chartOptions));z.isResponsiveOptions=!0,O=O.toString()||void 0;let c=M&&M.ruleIds;O===c||(M&&(this.currentResponsive=void 0,this.updatingResponsive=!0,this.update(M.undoOptions,U,!0),this.updatingResponsive=!1),O?((H=st(z,this.options,!0,this.collectionsWithUpdate)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:O,mergedOptions:z,undoOptions:H},this.updatingResponsive||this.update(z,U,!0)):this.currentResponsive=void 0)}Y.compose=function(U){let T=U.prototype;return T.matchResponsiveRule||$(T,{matchResponsiveRule:V,setResponsive:N}),U}}(R||(R={})),R}),g(d,"masters/highcharts.src.js",[d["Core/Globals.js"],d["Core/Utilities.js"],d["Core/Defaults.js"],d["Core/Animation/Fx.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Templating.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Renderer/HTML/HTMLElement.js"],d["Core/Axis/Axis.js"],d["Core/Axis/DateTimeAxis.js"],d["Core/Axis/LogarithmicAxis.js"],d["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],d["Core/Axis/Tick.js"],d["Core/Tooltip.js"],d["Core/Series/Point.js"],d["Core/Pointer.js"],d["Core/Legend/Legend.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Chart/Chart.js"],d["Extensions/ScrollablePlotArea.js"],d["Core/Axis/Stacking/StackingAxis.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Series/Column/ColumnDataLabel.js"],d["Series/Pie/PieDataLabel.js"],d["Core/Series/DataLabel.js"],d["Extensions/OverlappingDataLabels.js"],d["Extensions/BorderRadius.js"],d["Core/Responsive.js"],d["Core/Color/Color.js"],d["Core/Time.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A,M,O,H,z,c,D,it,Q,W,k,_,C,h,l,u,v,I,S,b,K,ct,et){return L.AST=X,L.Axis=T,L.Chart=W,L.Color=ct,L.DataLabel=I,L.Fx=$,L.HTMLElement=U,L.Legend=it,L.LegendSymbol=Q,L.OverlappingDataLabels=L.OverlappingDataLabels||S,L.PlotLineOrBand=O,L.Point=c,L.Pointer=D,L.RendererRegistry=Z,L.Series=h,L.SeriesRegistry=l,L.StackItem=C,L.SVGElement=V,L.SVGRenderer=N,L.Templating=q,L.Tick=H,L.Time=et,L.Tooltip=z,L.animate=J.animate,L.animObject=J.animObject,L.chart=W.chart,L.color=ct.parse,L.dateFormat=q.dateFormat,L.defaultOptions=st.defaultOptions,L.distribute=Y.distribute,L.format=q.format,L.getDeferredAnimation=J.getDeferredAnimation,L.getOptions=st.getOptions,L.numberFormat=q.numberFormat,L.seriesType=l.seriesType,L.setAnimation=J.setAnimation,L.setOptions=st.setOptions,L.stop=J.stop,L.time=st.defaultTime,L.timers=$.timers,b.compose(L.Series,L.SVGElement,L.SVGRenderer),u.compose(L.Series.types.column),I.compose(L.Series),A.compose(L.Axis),U.compose(L.SVGRenderer),it.compose(L.Chart),M.compose(L.Axis),S.compose(L.Chart),v.compose(L.Series.types.pie),O.compose(L.Chart,L.Axis),D.compose(L.Chart),K.compose(L.Chart),k.compose(L.Axis,L.Chart,L.Series),_.compose(L.Axis,L.Chart,L.Series),z.compose(L.Pointer),R.extend(L,R),L}),d["masters/highcharts.src.js"]._modules=d,d["masters/highcharts.src.js"]})},4563:function(yr,Oe,xt){var F;(function(Pt,d){yr.exports?(d.default=d,yr.exports=Pt&&Pt.document?d(Pt):d):(F=function(){return d(Pt)}.call(Oe,xt,Oe,yr),F!==void 0&&(yr.exports=F))})(typeof window!="undefined"?window:this,function(Pt){"use strict";var d={};function g(L,R,st,$){!L.hasOwnProperty(R)&&(L[R]=$.apply(null,st),Pt&&typeof CustomEvent=="function"&&Pt.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:R,module:L[R]}})))}return g(d,"Core/Globals.js",[],function(){var L,R;return(R=L||(L={})).SVG_NS="http://www.w3.org/2000/svg",R.product="Highcharts",R.version="11.4.8",R.win=Pt!==void 0?Pt:{},R.doc=R.win.document,R.svg=R.doc&&R.doc.createElementNS&&!!R.doc.createElementNS(R.SVG_NS,"svg").createSVGRect,R.userAgent=R.win.navigator&&R.win.navigator.userAgent||"",R.isChrome=R.win.chrome,R.isFirefox=R.userAgent.indexOf("Firefox")!==-1,R.isMS=/(edge|msie|trident)/i.test(R.userAgent)&&!R.win.opera,R.isSafari=!R.isChrome&&R.userAgent.indexOf("Safari")!==-1,R.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(R.userAgent),R.isWebKit=R.userAgent.indexOf("AppleWebKit")!==-1,R.deg2rad=2*Math.PI/360,R.hasBidiBug=R.isFirefox&&4>parseInt(R.userAgent.split("Firefox/")[1],10),R.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],R.noop=function(){},R.supportsPassiveEvents=function(){let st=!1;if(!R.isMS){let $=Object.defineProperty({},"passive",{get:function(){st=!0}});R.win.addEventListener&&R.win.removeEventListener&&(R.win.addEventListener("testPassive",R.noop,$),R.win.removeEventListener("testPassive",R.noop,$))}return st}(),R.charts=[],R.composed=[],R.dateFormats={},R.seriesTypes={},R.symbolSizes={},R.chartCount=0,L}),g(d,"Core/Utilities.js",[d["Core/Globals.js"]],function(L){let R,{charts:st,doc:$,win:J}=L;function X(h,l,u,v){let I=l?"Highcharts error":"Highcharts warning";h===32&&(h=`${I}: Deprecated member`);let S=T(h),b=S?`${I} #${h}: www.highcharts.com/errors/${h}/`:h.toString();if(v!==void 0){let K="";S&&(b+="?"),W(v,function(ct,et){K+=` + - ${et}: ${ct}`,S&&(b+=encodeURI(et)+"="+encodeURI(ct))}),b+=K}_(L,"displayError",{chart:u,code:h,message:b,params:v},function(){if(l)throw Error(b);J.console&&X.messages.indexOf(b)===-1&&console.warn(b)}),X.messages.push(b)}function q(h,l){return parseInt(h,l||10)}function Z(h){return typeof h=="string"}function Y(h){let l=Object.prototype.toString.call(h);return l==="[object Array]"||l==="[object Array Iterator]"}function V(h,l){return!!h&&typeof h=="object"&&(!l||!Y(h))}function N(h){return V(h)&&typeof h.nodeType=="number"}function U(h){let l=h&&h.constructor;return!!(V(h,!0)&&!N(h)&&l&&l.name&&l.name!=="Object")}function T(h){return typeof h=="number"&&!isNaN(h)&&h<1/0&&h>-1/0}function A(h){return h!=null}function M(h,l,u){let v,I=Z(l)&&!A(u),S=(b,K)=>{A(b)?h.setAttribute(K,b):I?(v=h.getAttribute(K))||K!=="class"||(v=h.getAttribute(K+"Name")):h.removeAttribute(K)};return Z(l)?S(u,l):W(l,S),v}function O(h){return Y(h)?h:[h]}function H(h,l){let u;for(u in h||(h={}),l)h[u]=l[u];return h}function z(){let h=arguments,l=h.length;for(let u=0;u1e14?h:parseFloat(h.toPrecision(l||14))}(X||(X={})).messages=[],Math.easeInOutSine=function(h){return-.5*(Math.cos(Math.PI*h)-1)};let Q=Array.prototype.find?function(h,l){return h.find(l)}:function(h,l){let u,v=h.length;for(u=0;uK.order-ct.order),I.forEach(K=>{K.fn.call(h,u)===!1&&u.preventDefault()})}v&&!u.defaultPrevented&&v.call(h,u)}W({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(h,l){L[l]=function(u){return X(32,!1,void 0,{[`Highcharts.${l}`]:`use Array.${h}`}),Array.prototype[h].apply(u,[].slice.call(arguments,1))}});let C=function(){let h=Math.random().toString(36).substring(2,9)+"-",l=0;return function(){return"highcharts-"+(R?"":h)+l++}}();return J.jQuery&&(J.jQuery.fn.highcharts=function(){let h=[].slice.call(arguments);if(this[0])return h[0]?(new L[Z(h[0])?h.shift():"Chart"](this[0],h[0],h[1]),this):st[M(this[0],"data-highcharts-chart")]}),{addEvent:function(h,l,u,v={}){let I=typeof h=="function"&&h.prototype||h;Object.hasOwnProperty.call(I,"hcEvents")||(I.hcEvents={});let S=I.hcEvents;L.Point&&h instanceof L.Point&&h.series&&h.series.chart&&(h.series.chart.runTrackerClick=!0);let b=h.addEventListener;b&&b.call(h,l,u,!!L.supportsPassiveEvents&&{passive:v.passive===void 0?l.indexOf("touch")!==-1:v.passive,capture:!1}),S[l]||(S[l]=[]);let K={fn:u,order:typeof v.order=="number"?v.order:1/0};return S[l].push(K),S[l].sort((ct,et)=>ct.order-et.order),function(){k(h,l,u)}},arrayMax:function(h){let l=h.length,u=h[0];for(;l--;)h[l]>u&&(u=h[l]);return u},arrayMin:function(h){let l=h.length,u=h[0];for(;l--;)h[l]l?h{let v=l%2/2,I=u?-1:1;return(Math.round(h*I-v)+v)*I},css:c,defined:A,destroyObjectProperties:function(h,l,u){W(h,function(v,I){v!==l&&(v!=null&&v.destroy)&&v.destroy(),(v!=null&&v.destroy||!u)&&delete h[I]})},diffObjects:function(h,l,u,v){let I={};return function S(b,K,ct,et){let dt=u?K:b;W(b,function(pt,bt){if(!et&&v&&v.indexOf(bt)>-1&&K[bt]){pt=O(pt),ct[bt]=[];for(let Mt=0;Mt{if(K.length>1)for(S=v=K.length-1;S>0;S--)(I=K[S]-K[S-1])<0&&!b?(l==null||l(),l=void 0):I&&(u===void 0||I=b-1&&(b=Math.floor(K)),Math.max(0,b-(h(l,"padding-left",!0)||0)-(h(l,"padding-right",!0)||0))}if(u==="height")return Math.max(0,Math.min(l.offsetHeight,l.scrollHeight)-(h(l,"padding-top",!0)||0)-(h(l,"padding-bottom",!0)||0));let S=J.getComputedStyle(l,void 0);return S&&(I=S.getPropertyValue(u),z(v,u!=="opacity")&&(I=q(I))),I},inArray:function(h,l,u){return X(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),l.indexOf(h,u)},insertItem:function(h,l){let u,v=h.options.index,I=l.length;for(u=h.options.isInternal?I:0;u=h))&&(I||!(K<=(l[S]+(l[S+1]||l[S]))/2)));S++);return it(b*u,-Math.round(Math.log(.001)/Math.LN10))},objectEach:W,offset:function(h){let l=$.documentElement,u=h.parentElement||h.parentNode?h.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:u.top+(J.pageYOffset||l.scrollTop)-(l.clientTop||0),left:u.left+(J.pageXOffset||l.scrollLeft)-(l.clientLeft||0),width:u.width,height:u.height}},pad:function(h,l,u){return Array((l||2)+1-String(h).replace("-","").length).join(u||"0")+h},pick:z,pInt:q,pushUnique:function(h,l){return 0>h.indexOf(l)&&!!h.push(l)},relativeLength:function(h,l,u){return/%$/.test(h)?l*parseFloat(h)/100+(u||0):parseFloat(h)},removeEvent:k,replaceNested:function(h,...l){let u,v;do for(v of(u=h,l))h=h.replace(v[0],v[1]);while(h!==u);return h},splat:O,stableSort:function(h,l){let u,v,I=h.length;for(v=0;v0?setTimeout(h,l,u):(h.call(0,u),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:C,useSerialIds:function(h){return R=z(h,R)},wrap:function(h,l,u){let v=h[l];h[l]=function(){let I=arguments,S=this;return u.apply(this,[function(){return v.apply(S,arguments.length?arguments:I)}].concat([].slice.call(arguments)))}}}}),g(d,"Core/Chart/ChartDefaults.js",[],function(){return{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{},position:{}},reflow:!0,type:"line",zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#334eff",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"}}),g(d,"Core/Color/Palettes.js",[],function(){return{colors:["#2caffe","#544fc5","#00e272","#fe6a35","#6b8abc","#d568fb","#2ee0ca","#fa4b42","#feb56a","#91e8e1"]}}),g(d,"Core/Time.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{win:st}=L,{defined:$,error:J,extend:X,isNumber:q,isObject:Z,merge:Y,objectEach:V,pad:N,pick:U,splat:T,timeUnits:A}=R,M=L.isSafari&&st.Intl&&st.Intl.DateTimeFormat.prototype.formatRange,O=L.isSafari&&st.Intl&&!st.Intl.DateTimeFormat.prototype.formatRange;class H{constructor(c){this.options={},this.useUTC=!1,this.variableTimezone=!1,this.Date=st.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(c)}get(c,D){if(this.variableTimezone||this.timezoneOffset){let it=D.getTime(),Q=it-this.getTimezoneOffset(D);D.setTime(Q);let W=D["getUTC"+c]();return D.setTime(it),W}return this.useUTC?D["getUTC"+c]():D["get"+c]()}set(c,D,it){if(this.variableTimezone||this.timezoneOffset){if(c==="Milliseconds"||c==="Seconds"||c==="Minutes"&&this.getTimezoneOffset(D)%36e5==0)return D["setUTC"+c](it);let Q=this.getTimezoneOffset(D),W=D.getTime()-Q;D.setTime(W),D["setUTC"+c](it);let k=this.getTimezoneOffset(D);return W=D.getTime()+k,D.setTime(W)}return this.useUTC||M&&c==="FullYear"?D["setUTC"+c](it):D["set"+c](it)}update(c={}){let D=U(c.useUTC,!0);this.options=c=Y(!0,this.options,c),this.Date=c.Date||st.Date||Date,this.useUTC=D,this.timezoneOffset=D&&c.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=D&&!!(c.getTimezoneOffset||c.timezone)}makeTime(c,D,it,Q,W,k){let _,C,h;return this.useUTC?(_=this.Date.UTC.apply(0,arguments),C=this.getTimezoneOffset(_),_+=C,C!==(h=this.getTimezoneOffset(_))?_+=h-C:C-36e5!==this.getTimezoneOffset(_-36e5)||O||(_-=36e5)):_=new this.Date(c,D,U(it,1),U(Q,0),U(W,0),U(k,0)).getTime(),_}timezoneOffsetFunction(){let c=this,D=this.options,it=D.getTimezoneOffset;return this.useUTC?D.timezone?Q=>{try{let W=`shortOffset,${D.timezone||""}`,[k,_,C,h,l=0]=(H.formatCache[W]=H.formatCache[W]||Intl.DateTimeFormat("en",{timeZone:D.timezone,timeZoneName:"shortOffset"})).format(Q).split(/(GMT|:)/).map(Number),u=-(36e5*(C+l/60));if(q(u))return u}catch(W){J(34)}return 0}:this.useUTC&&it?Q=>6e4*it(Q.valueOf()):()=>6e4*(c.timezoneOffset||0):Q=>6e4*new Date(Q.toString()).getTimezoneOffset()}dateFormat(c,D,it){if(!$(D)||isNaN(D))return L.defaultOptions.lang&&L.defaultOptions.lang.invalidDate||"";c=U(c,"%Y-%m-%d %H:%M:%S");let Q=this,W=new this.Date(D),k=this.get("Hours",W),_=this.get("Day",W),C=this.get("Date",W),h=this.get("Month",W),l=this.get("FullYear",W),u=L.defaultOptions.lang,v=u&&u.weekdays,I=u&&u.shortWeekdays;return V(X({a:I?I[_]:v[_].substr(0,3),A:v[_],d:N(C),e:N(C,2," "),w:_,b:u.shortMonths[h],B:u.months[h],m:N(h+1),o:h+1,y:l.toString().substr(2,2),Y:l,H:N(k),k,I:N(k%12||12),l:k%12||12,M:N(this.get("Minutes",W)),p:k<12?"AM":"PM",P:k<12?"am":"pm",S:N(this.get("Seconds",W)),L:N(Math.floor(D%1e3),3)},L.dateFormats),function(S,b){for(;c.indexOf("%"+b)!==-1;)c=c.replace("%"+b,typeof S=="function"?S.call(Q,D):S)}),it?c.substr(0,1).toUpperCase()+c.substr(1):c}resolveDTLFormat(c){return Z(c,!0)?c:{main:(c=T(c))[0],from:c[1],to:c[2]}}getTimeTicks(c,D,it,Q){let W,k,_,C,h=this,l=h.Date,u=[],v={},I=new l(D),S=c.unitRange,b=c.count||1;if(Q=U(Q,1),$(D)){h.set("Milliseconds",I,S>=A.second?0:b*Math.floor(h.get("Milliseconds",I)/b)),S>=A.second&&h.set("Seconds",I,S>=A.minute?0:b*Math.floor(h.get("Seconds",I)/b)),S>=A.minute&&h.set("Minutes",I,S>=A.hour?0:b*Math.floor(h.get("Minutes",I)/b)),S>=A.hour&&h.set("Hours",I,S>=A.day?0:b*Math.floor(h.get("Hours",I)/b)),S>=A.day&&h.set("Date",I,S>=A.month?1:Math.max(1,b*Math.floor(h.get("Date",I)/b))),S>=A.month&&(h.set("Month",I,S>=A.year?0:b*Math.floor(h.get("Month",I)/b)),k=h.get("FullYear",I)),S>=A.year&&(k-=k%b,h.set("FullYear",I,k)),S===A.week&&(C=h.get("Day",I),h.set("Date",I,h.get("Date",I)-C+Q+(C4*A.month||h.getTimezoneOffset(D)!==h.getTimezoneOffset(it));let dt=I.getTime();for(W=1;dt1?dt=h.makeTime(k,K,ct,et+W*b):dt+=S*b,W++;u.push(dt),S<=A.hour&&u.length<1e4&&u.forEach(function(pt){pt%18e5==0&&h.dateFormat("%H%M%S%L",pt)==="000000000"&&(v[pt]="day")})}return u.info=X(c,{higherRanks:v,totalRange:S*b}),u}getDateFormat(c,D,it,Q){let W=this.dateFormat("%m-%d %H:%M:%S.%L",D),k="01-01 00:00:00.000",_={millisecond:15,second:12,minute:9,hour:6,day:3},C="millisecond",h=C;for(C in A){if(c===A.week&&+this.dateFormat("%w",D)===it&&W.substr(6)===k.substr(6)){C="week";break}if(A[C]>c){C=h;break}if(_[C]&&W.substr(_[C])!==k.substr(_[C]))break;C!=="week"&&(h=C)}return this.resolveDTLFormat(Q[C]).main}}return H.formatCache={},H}),g(d,"Core/Defaults.js",[d["Core/Chart/ChartDefaults.js"],d["Core/Globals.js"],d["Core/Color/Palettes.js"],d["Core/Time.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{isTouchDevice:X}=R,{fireEvent:q,merge:Z}=J,Y={colors:st.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalPoint:".",numericSymbols:["k","M","G","T","P","E"],resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{buttonTheme:{fill:"#f7f7f7",padding:8,r:2,stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer",fontSize:"0.8em",fontWeight:"normal"},states:{hover:{fill:"#e6e6e6"},select:{fill:"#e6e9ff",style:{color:"#000000",fontWeight:"bold"}},disabled:{style:{color:"#cccccc"}}}}},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:L,title:{style:{color:"#333333",fontWeight:"bold"},text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{style:{color:"#666666",fontSize:"0.8em"},text:"",align:"center",widthAdjust:-44},caption:{margin:15,style:{color:"#666666",fontSize:"0.8em"},text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",events:{},layout:"horizontal",itemMarginBottom:2,itemMarginTop:2,labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{style:{fontSize:"0.8em"},activeColor:"#0022ff",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"0.8em",textDecoration:"none",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#666666",textDecoration:"line-through"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontSize:"0.8em",fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:{duration:300,easing:N=>Math.sqrt(1-Math.pow(N-1,2))},borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %e %b, %H:%M:%S.%L",second:"%A, %e %b, %H:%M:%S",minute:"%A, %e %b, %H:%M",hour:"%A, %e %b, %H:%M",day:"%A, %e %b %Y",week:"Week from %A, %e %b %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:X?25:10,headerFormat:'{point.key}
    ',pointFormat:'\u25CF {series.name}: {point.y}
    ',backgroundColor:"#ffffff",borderWidth:void 0,shadow:!0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"0.8em"},useHTML:!1},credits:{enabled:!0,href:"https://www.highcharts.com?credits",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#999999",fontSize:"0.6em"},text:"Highcharts.com"}};Y.chart.styledMode=!1;let V=new $(Y.time);return{defaultOptions:Y,defaultTime:V,getOptions:function(){return Y},setOptions:function(N){return q(R,"setOptions",{options:N}),Z(!0,Y,N),(N.time||N.global)&&(R.time?R.time.update(Z(Y.global,Y.time,N.global,N.time)):R.time=V),Y}}}),g(d,"Core/Color/Color.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{isNumber:st,merge:$,pInt:J}=R;class X{static parse(Z){return Z?new X(Z):X.None}constructor(Z){let Y,V,N,U;this.rgba=[NaN,NaN,NaN,NaN],this.input=Z;let T=L.Color;if(T&&T!==X)return new T(Z);if(typeof Z=="object"&&Z.stops!==void 0)this.stops=Z.stops.map(A=>new X(A[1]));else if(typeof Z=="string"){if(this.input=Z=X.names[Z.toLowerCase()]||Z,Z.charAt(0)==="#"){let A=Z.length,M=parseInt(Z.substr(1),16);A===7?V=[(16711680&M)>>16,(65280&M)>>8,255&M,1]:A===4&&(V=[(3840&M)>>4|(3840&M)>>8,(240&M)>>4|240&M,(15&M)<<4|15&M,1])}if(!V)for(N=X.parsers.length;N--&&!V;)(Y=(U=X.parsers[N]).regex.exec(Z))&&(V=U.parse(Y))}V&&(this.rgba=V)}get(Z){let Y=this.input,V=this.rgba;if(typeof Y=="object"&&this.stops!==void 0){let N=$(Y);return N.stops=[].slice.call(N.stops),this.stops.forEach((U,T)=>{N.stops[T]=[N.stops[T][0],U.get(Z)]}),N}return V&&st(V[0])?Z!=="rgb"&&(Z||V[3]!==1)?Z==="a"?`${V[3]}`:"rgba("+V.join(",")+")":"rgb("+V[0]+","+V[1]+","+V[2]+")":Y}brighten(Z){let Y=this.rgba;if(this.stops)this.stops.forEach(function(V){V.brighten(Z)});else if(st(Z)&&Z!==0)for(let V=0;V<3;V++)Y[V]+=J(255*Z),Y[V]<0&&(Y[V]=0),Y[V]>255&&(Y[V]=255);return this}setOpacity(Z){return this.rgba[3]=Z,this}tweenTo(Z,Y){let V=this.rgba,N=Z.rgba;if(!st(V[0])||!st(N[0]))return Z.input||"none";let U=N[3]!==1||V[3]!==1;return(U?"rgba(":"rgb(")+Math.round(N[0]+(V[0]-N[0])*(1-Y))+","+Math.round(N[1]+(V[1]-N[1])*(1-Y))+","+Math.round(N[2]+(V[2]-N[2])*(1-Y))+(U?","+(N[3]+(V[3]-N[3])*(1-Y)):"")+")"}}return X.names={white:"#ffffff",black:"#000000"},X.parsers=[{regex:/rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d?(?:\.\d+)?)\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),parseFloat(q[4],10)]}},{regex:/rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)/,parse:function(q){return[J(q[1]),J(q[2]),J(q[3]),1]}}],X.None=new X(""),X}),g(d,"Core/Animation/Fx.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{parse:$}=L,{win:J}=R,{isNumber:X,objectEach:q}=st;class Z{constructor(V,N,U){this.pos=NaN,this.options=N,this.elem=V,this.prop=U}dSetter(){let V=this.paths,N=V&&V[0],U=V&&V[1],T=this.now||0,A=[];if(T!==1&&N&&U)if(N.length===U.length&&T<1)for(let M=0;M=H+this.startTime?(this.now=this.end,this.pos=1,this.update(),z[this.prop]=!0,U=!0,q(z,function(c){c!==!0&&(U=!1)}),U&&O&&O.call(M),N=!1):(this.pos=A.easing((T-this.startTime)/H),this.now=this.start+(this.end-this.start)*this.pos,this.update(),N=!0),N}initPath(V,N,U){let T=V.startX,A=V.endX,M=U.slice(),O=V.isArea,H=O?2:1,z=N&&U.length>N.length&&U.hasStackedCliffs,c,D,it,Q,W=N&&N.slice();if(!W||z)return[M,M];function k(C,h){for(;C.length{let it=N(D.options.animation);z=q(A)&&st(A.defer)?O.defer:Math.max(z,it.duration+it.defer),c=Math.min(O.duration,it.duration)}),T.renderer.forExport&&(z=0),{defer:Math.max(0,z-c),duration:Math.min(z,c)}},setAnimation:function(T,A){A.renderer.globalAnimation=V(T,A.options.chart.animation,!0)},stop:U}}),g(d,"Core/Renderer/HTML/AST.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{SVG_NS:st,win:$}=L,{attr:J,createElement:X,css:q,error:Z,isFunction:Y,isString:V,objectEach:N,splat:U}=R,{trustedTypes:T}=$,A=T&&Y(T.createPolicy)&&T.createPolicy("highcharts",{createHTML:z=>z}),M=A?A.createHTML(""):"",O=function(){try{return!!new DOMParser().parseFromString(M,"text/html")}catch(z){return!1}}();class H{static filterUserAttributes(c){return N(c,(D,it)=>{let Q=!0;H.allowedAttributes.indexOf(it)===-1&&(Q=!1),["background","dynsrc","href","lowsrc","src"].indexOf(it)!==-1&&(Q=V(D)&&H.allowedReferences.some(W=>D.indexOf(W)===0)),Q||(Z(33,!1,void 0,{"Invalid attribute in config":`${it}`}),delete c[it]),V(D)&&c[it]&&(c[it]=D.replace(/{let Q=it.split(":").map(k=>k.trim()),W=Q.shift();return W&&Q.length&&(D[W.replace(/-([a-z])/g,k=>k[1].toUpperCase())]=Q.join(":")),D},{})}static setElementHTML(c,D){c.innerHTML=H.emptyHTML,D&&new H(D).addToDOM(c)}constructor(c){this.nodes=typeof c=="string"?this.parseMarkup(c):c}addToDOM(c){return function D(it,Q){let W;return U(it).forEach(function(k){let _,C=k.tagName,h=k.textContent?L.doc.createTextNode(k.textContent):void 0,l=H.bypassHTMLFiltering;if(C)if(C==="#text")_=h;else if(H.allowedTags.indexOf(C)!==-1||l){let u=C==="svg"?st:Q.namespaceURI||st,v=L.doc.createElementNS(u,C),I=k.attributes||{};N(k,function(S,b){b!=="tagName"&&b!=="attributes"&&b!=="children"&&b!=="style"&&b!=="textContent"&&(I[b]=S)}),J(v,l?I:H.filterUserAttributes(I)),k.style&&q(v,k.style),h&&v.appendChild(h),D(k.children||[],v),_=v}else Z(33,!1,void 0,{"Invalid tagName in config":C});_&&Q.appendChild(_),W=_}),W}(this.nodes,c)}parseMarkup(c){let D,it=[];if(c=c.trim().replace(/ style=(["'])/g," data-style=$1"),O)D=new DOMParser().parseFromString(A?A.createHTML(c):c,"text/html");else{let W=X("div");W.innerHTML=c,D={body:W}}let Q=(W,k)=>{let _=W.nodeName.toLowerCase(),C={tagName:_};_==="#text"&&(C.textContent=W.textContent||"");let h=W.attributes;if(h){let l={};[].forEach.call(h,u=>{u.name==="data-style"?C.style=H.parseStyle(u.value):l[u.name]=u.value}),C.attributes=l}if(W.childNodes.length){let l=[];[].forEach.call(W.childNodes,u=>{Q(u,l)}),l.length&&(C.children=l)}k.push(C)};return[].forEach.call(D.body.childNodes,W=>Q(W,it)),it}}return H.allowedAttributes=["alt","aria-controls","aria-describedby","aria-expanded","aria-haspopup","aria-hidden","aria-label","aria-labelledby","aria-live","aria-pressed","aria-readonly","aria-roledescription","aria-selected","class","clip-path","color","colspan","cx","cy","d","dx","dy","disabled","fill","filterUnits","flood-color","flood-opacity","height","href","id","in","in2","markerHeight","markerWidth","offset","opacity","operator","orient","padding","paddingLeft","paddingRight","patternUnits","r","radius","refX","refY","role","scope","slope","src","startOffset","stdDeviation","stroke","stroke-linecap","stroke-width","style","tableValues","result","rowspan","summary","target","tabindex","text-align","text-anchor","textAnchor","textLength","title","type","valign","width","x","x1","x2","xlink:href","y","y1","y2","zIndex"],H.allowedReferences=["https://","http://","mailto:","/","../","./","#"],H.allowedTags=["a","abbr","b","br","button","caption","circle","clipPath","code","dd","defs","div","dl","dt","em","feComponentTransfer","feComposite","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feMorphology","feOffset","feMerge","feMergeNode","filter","h1","h2","h3","h4","h5","h6","hr","i","img","li","linearGradient","marker","ol","p","path","pattern","pre","rect","small","span","stop","strong","style","sub","sup","svg","table","text","textPath","thead","title","tbody","tspan","td","th","tr","u","ul","#text"],H.emptyHTML=M,H.bypassHTMLFiltering=!1,H}),g(d,"Core/Templating.js",[d["Core/Defaults.js"],d["Core/Utilities.js"]],function(L,R){let{defaultOptions:st,defaultTime:$}=L,{extend:J,getNestedProperty:X,isArray:q,isNumber:Z,isObject:Y,pick:V,pInt:N}=R,U={add:(M,O)=>M+O,divide:(M,O)=>O!==0?M/O:"",eq:(M,O)=>M==O,each:function(M){let O=arguments[arguments.length-1];return!!q(M)&&M.map((H,z)=>T(O.body,J(Y(H)?H:{"@this":H},{"@index":z,"@first":z===0,"@last":z===M.length-1}))).join("")},ge:(M,O)=>M>=O,gt:(M,O)=>M>O,if:M=>!!M,le:(M,O)=>M<=O,lt:(M,O)=>MM*O,ne:(M,O)=>M!=O,subtract:(M,O)=>M-O,unless:M=>!M};function T(M="",O,H){let z=/\{([\w\:\.\,;\-\/<>%@"'’= #\(\)]+)\}/g,c=/\(([\w\:\.\,;\-\/<>%@"'= ]+)\)/g,D=[],it=/f$/,Q=/\.(\d)/,W=st.lang,k=H&&H.time||$,_=H&&H.numberFormatter||A,C=(I="")=>{let S;return I==="true"||I!=="false"&&((S=Number(I)).toString()===I?S:X(I,O))},h,l,u=0,v;for(;(h=z.exec(M))!==null;){let I=c.exec(h[1]);I&&(h=I,v=!0),l&&l.isBlock||(l={ctx:O,expression:h[1],find:h[0],isBlock:h[1].charAt(0)==="#",start:h.index,startInner:h.index+h[0].length,length:h[0].length});let S=h[1].split(" ")[0].replace("#","");U[S]&&(l.isBlock&&S===l.fn&&u++,l.fn||(l.fn=S));let b=h[1]==="else";if(l.isBlock&&l.fn&&(h[1]===`/${l.fn}`||b))if(u)!b&&u--;else{let K=l.startInner,ct=M.substr(K,h.index-K);l.body===void 0?(l.body=ct,l.startInner=h.index+h[0].length):l.elseBody=ct,l.find+=ct+h[0],b||(D.push(l),l=void 0)}else l.isBlock||D.push(l);if(I&&!(l!=null&&l.isBlock))break}return D.forEach(I=>{let S,b,{body:K,elseBody:ct,expression:et,fn:dt}=I;if(dt){let pt=[I],bt=et.split(" ");for(b=U[dt].length;b--;)pt.unshift(C(bt[b+1]));S=U[dt].apply(O,pt),I.isBlock&&typeof S=="boolean"&&(S=T(S?K:ct,O,H))}else{let pt=et.split(":");if(S=C(pt.shift()||""),pt.length&&typeof S=="number"){let bt=pt.join(":");if(it.test(bt)){let Mt=parseInt((bt.match(Q)||["","-1"])[1],10);S!==null&&(S=_(S,Mt,W.decimalPoint,bt.indexOf(",")>-1?W.thousandsSep:""))}else S=k.dateFormat(bt,S)}}M=M.replace(I.find,V(S,""))}),v?T(M,O,H):M}function A(M,O,H,z){let c,D;M=+M||0,O=+O;let it=st.lang,Q=(M.toString().split(".")[1]||"").split("e")[0].length,W=M.toString().split("e"),k=O;O===-1?O=Math.min(Q,20):Z(O)?O&&W[1]&&W[1]<0&&((D=O+ +W[1])>=0?(W[0]=(+W[0]).toExponential(D).split("e")[0],O=D):(W[0]=W[0].split(".")[0]||0,M=O<20?(W[0]*Math.pow(10,W[1])).toFixed(O):0,W[1]=0)):O=2;let _=(Math.abs(W[1]?W[0]:M)+Math.pow(10,-Math.max(O,Q)-1)).toFixed(O),C=String(N(_)),h=C.length>3?C.length%3:0;return H=V(H,it.decimalPoint),z=V(z,it.thousandsSep),c=(M<0?"-":"")+(h?C.substr(0,h)+z:""),0>+W[1]&&!k?c="0":c+=C.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+z),O?c+=H+_.slice(-O):+c==0&&(c="0"),W[1]&&+c!=0&&(c+="e"+W[1]),c}return{dateFormat:function(M,O,H){return $.dateFormat(M,O,H)},format:T,helpers:U,numberFormat:A}}),g(d,"Core/Renderer/RendererRegistry.js",[d["Core/Globals.js"]],function(L){var R,st;let $;return(st=R||(R={})).rendererTypes={},st.getRendererType=function(J=$){return st.rendererTypes[J]||st.rendererTypes[$]},st.registerRendererType=function(J,X,q){st.rendererTypes[J]=X,(!$||q)&&($=J,L.Renderer=X)},R}),g(d,"Core/Renderer/RendererUtilities.js",[d["Core/Utilities.js"]],function(L){var R;let{clamp:st,pick:$,pushUnique:J,stableSort:X}=L;return(R||(R={})).distribute=function q(Z,Y,V){let N=Z,U=N.reducedLen||Y,T=(C,h)=>C.target-h.target,A=[],M=Z.length,O=[],H=A.push,z,c,D,it=!0,Q,W,k=0,_;for(z=M;z--;)k+=Z[z].size;if(k>U){for(X(Z,(C,h)=>(h.rank||0)-(C.rank||0)),D=(_=Z[0].rank===Z[Z.length-1].rank)?M/2:-1,c=_?D:M-1;D&&k>U;)Q=Z[z=Math.floor(c)],J(O,z)&&(k-=Q.size),c+=D,_&&c>=Z.length&&(D/=2,c=D);O.sort((C,h)=>h-C).forEach(C=>H.apply(A,Z.splice(C,1)))}for(X(Z,T),Z=Z.map(C=>({size:C.size,targets:[C.target],align:$(C.align,.5)}));it;){for(z=Z.length;z--;)Q=Z[z],W=(Math.min.apply(0,Q.targets)+Math.max.apply(0,Q.targets))/2,Q.pos=st(W-Q.size*Q.align,0,Y-Q.size);for(z=Z.length,it=!1;z--;)z>0&&Z[z-1].pos+Z[z-1].size>Z[z].pos&&(Z[z-1].size+=Z[z].size,Z[z-1].targets=Z[z-1].targets.concat(Z[z].targets),Z[z-1].align=.5,Z[z-1].pos+Z[z-1].size>Y&&(Z[z-1].pos=Y-Z[z-1].size),Z.splice(z,1),it=!0)}return H.apply(N,A),z=0,Z.some(C=>{let h=0;return(C.targets||[]).some(()=>(N[z].pos=C.pos+h,V!==void 0&&Math.abs(N[z].pos-N[z].target)>V?(N.slice(0,z+1).forEach(l=>delete l.pos),N.reducedLen=(N.reducedLen||Y)-.1*Y,N.reducedLen>.1*Y&&q(N,Y,V),!0):(h+=N[z].size,z++,!1)))}),X(N,T),N},R}),g(d,"Core/Renderer/SVG/SVGElement.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{animate:J,animObject:X,stop:q}=L,{deg2rad:Z,doc:Y,svg:V,SVG_NS:N,win:U}=st,{addEvent:T,attr:A,createElement:M,crisp:O,css:H,defined:z,erase:c,extend:D,fireEvent:it,isArray:Q,isFunction:W,isObject:k,isString:_,merge:C,objectEach:h,pick:l,pInt:u,pushUnique:v,replaceNested:I,syncTimeout:S,uniqueKey:b}=$;class K{_defaultGetter(et){let dt=l(this[et+"Value"],this[et],this.element?this.element.getAttribute(et):null,0);return/^-?[\d\.]+$/.test(dt)&&(dt=parseFloat(dt)),dt}_defaultSetter(et,dt,pt){pt.setAttribute(dt,et)}add(et){let dt,pt=this.renderer,bt=this.element;return et&&(this.parentGroup=et),this.textStr!==void 0&&this.element.nodeName==="text"&&pt.buildText(this),this.added=!0,(!et||et.handleZ||this.zIndex)&&(dt=this.zIndexSetter()),dt||(et?et.element:pt.box).appendChild(bt),this.onAdd&&this.onAdd(),this}addClass(et,dt){let pt=dt?"":this.attr("class")||"";return(et=(et||"").split(/ /g).reduce(function(bt,Mt){return pt.indexOf(Mt)===-1&&bt.push(Mt),bt},pt?[pt]:[]).join(" "))!==pt&&this.attr("class",et),this}afterSetters(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)}align(et,dt,pt,bt=!0){let Mt,w,B,tt,nt={},x=this.renderer,y=x.alignedObjects,j=!!et;et?(this.alignOptions=et,this.alignByTranslate=dt,this.alignTo=pt):(et=this.alignOptions||{},dt=this.alignByTranslate,pt=this.alignTo);let lt=!pt||_(pt)?pt||"renderer":void 0;lt&&(j&&v(y,this),pt=void 0);let rt=l(pt,x[lt],x),gt=et.align,vt=et.verticalAlign;return Mt=(rt.x||0)+(et.x||0),w=(rt.y||0)+(et.y||0),gt==="right"?B=1:gt==="center"&&(B=2),B&&(Mt+=((rt.width||0)-(et.width||0))/B),nt[dt?"translateX":"x"]=Math.round(Mt),vt==="bottom"?tt=1:vt==="middle"&&(tt=2),tt&&(w+=((rt.height||0)-(et.height||0))/tt),nt[dt?"translateY":"y"]=Math.round(w),bt&&(this[this.placed?"animate":"attr"](nt),this.placed=!0),this.alignAttr=nt,this}alignSetter(et){let dt={left:"start",center:"middle",right:"end"};dt[et]&&(this.alignValue=et,this.element.setAttribute("text-anchor",dt[et]))}animate(et,dt,pt){let bt=X(l(dt,this.renderer.globalAnimation,!0)),Mt=bt.defer;return Y.hidden&&(bt.duration=0),bt.duration!==0?(pt&&(bt.complete=pt),S(()=>{this.element&&J(this,et,bt)},Mt)):(this.attr(et,void 0,pt||bt.complete),h(et,function(w,B){bt.step&&bt.step.call(this,w,{prop:B,pos:1,elem:this})},this)),this}applyTextOutline(et){let dt=this.element;et.indexOf("contrast")!==-1&&(et=et.replace(/contrast/g,this.renderer.getContrast(dt.style.fill)));let pt=et.split(" "),bt=pt[pt.length-1],Mt=pt[0];if(Mt&&Mt!=="none"&&st.svg){this.fakeTS=!0,Mt=Mt.replace(/(^[\d\.]+)(.*?)$/g,function(x,y,j){return 2*Number(y)+j}),this.removeTextOutline();let w=Y.createElementNS(N,"tspan");A(w,{class:"highcharts-text-outline",fill:bt,stroke:bt,"stroke-width":Mt,"stroke-linejoin":"round"});let B=dt.querySelector("textPath")||dt;[].forEach.call(B.childNodes,x=>{let y=x.cloneNode(!0);y.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(j=>y.removeAttribute(j)),w.appendChild(y)});let tt=0;[].forEach.call(B.querySelectorAll("text tspan"),x=>{tt+=Number(x.getAttribute("dy"))});let nt=Y.createElementNS(N,"tspan");nt.textContent="\u200B",A(nt,{x:Number(dt.getAttribute("x")),dy:-tt}),w.appendChild(nt),B.insertBefore(w,B.firstChild)}}attr(et,dt,pt,bt){let{element:Mt}=this,w=K.symbolCustomAttribs,B,tt,nt=this,x;return typeof et=="string"&&dt!==void 0&&(B=et,(et={})[B]=dt),typeof et=="string"?nt=(this[et+"Getter"]||this._defaultGetter).call(this,et,Mt):(h(et,function(y,j){x=!1,bt||q(this,j),this.symbolName&&w.indexOf(j)!==-1&&(tt||(this.symbolAttr(et),tt=!0),x=!0),this.rotation&&(j==="x"||j==="y")&&(this.doTransform=!0),x||(this[j+"Setter"]||this._defaultSetter).call(this,y,j,Mt)},this),this.afterSetters()),pt&&pt.call(this),nt}clip(et){if(et&&!et.clipPath){let dt=b()+"-",pt=this.renderer.createElement("clipPath").attr({id:dt}).add(this.renderer.defs);D(et,{clipPath:pt,id:dt,count:0}),et.add(pt)}return this.attr("clip-path",et?`url(${this.renderer.url}#${et.id})`:"none")}crisp(et,dt){dt=Math.round(dt||et.strokeWidth||0);let pt=et.x||this.x||0,bt=et.y||this.y||0,Mt=(et.width||this.width||0)+pt,w=(et.height||this.height||0)+bt,B=O(pt,dt),tt=O(bt,dt);return D(et,{x:B,y:tt,width:O(Mt,dt)-B,height:O(w,dt)-tt}),z(et.strokeWidth)&&(et.strokeWidth=dt),et}complexColor(et,dt,pt){let bt=this.renderer,Mt,w,B,tt,nt,x,y,j,lt,rt,gt=[],vt;it(this.renderer,"complexColor",{args:arguments},function(){if(et.radialGradient?w="radialGradient":et.linearGradient&&(w="linearGradient"),w){if(B=et[w],nt=bt.gradients,x=et.stops,lt=pt.radialReference,Q(B)&&(et[w]=B={x1:B[0],y1:B[1],x2:B[2],y2:B[3],gradientUnits:"userSpaceOnUse"}),w==="radialGradient"&<&&!z(B.gradientUnits)&&(tt=B,B=C(B,bt.getRadialAttr(lt,tt),{gradientUnits:"userSpaceOnUse"})),h(B,function(Ot,At){At!=="id"&>.push(At,Ot)}),h(x,function(Ot){gt.push(Ot)}),nt[gt=gt.join(",")])rt=nt[gt].attr("id");else{B.id=rt=b();let Ot=nt[gt]=bt.createElement(w).attr(B).add(bt.defs);Ot.radAttr=tt,Ot.stops=[],x.forEach(function(At){At[1].indexOf("rgba")===0?(y=(Mt=R.parse(At[1])).get("rgb"),j=Mt.get("a")):(y=At[1],j=1);let $t=bt.createElement("stop").attr({offset:At[0],"stop-color":y,"stop-opacity":j}).add(Ot);Ot.stops.push($t)})}vt="url("+bt.url+"#"+rt+")",pt.setAttribute(dt,vt),pt.gradient=gt,et.toString=function(){return vt}}})}css(et){let dt=this.styles,pt={},bt=this.element,Mt,w=!dt;if(dt&&h(et,function(B,tt){dt&&dt[tt]!==B&&(pt[tt]=B,w=!0)}),w){dt&&(et=D(dt,pt)),et.width===null||et.width==="auto"?delete this.textWidth:bt.nodeName.toLowerCase()==="text"&&et.width&&(Mt=this.textWidth=u(et.width)),D(this.styles,et),Mt&&!V&&this.renderer.forExport&&delete et.width;let B=C(et);bt.namespaceURI===this.SVG_NS&&(["textOutline","textOverflow","width"].forEach(tt=>B&&delete B[tt]),B.color&&(B.fill=B.color)),H(bt,B)}return this.added&&(this.element.nodeName==="text"&&this.renderer.buildText(this),et.textOutline&&this.applyTextOutline(et.textOutline)),this}dashstyleSetter(et){let dt,pt=this["stroke-width"];if(pt==="inherit"&&(pt=1),et=et&&et.toLowerCase()){let bt=et.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(dt=bt.length;dt--;)bt[dt]=""+u(bt[dt])*l(pt,NaN);et=bt.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",et)}}destroy(){var tt;let et=this,dt=et.element||{},pt=et.renderer,bt=dt.ownerSVGElement,Mt=dt.nodeName==="SPAN"&&et.parentGroup||void 0,w,B;if(dt.onclick=dt.onmouseout=dt.onmouseover=dt.onmousemove=dt.point=null,q(et),et.clipPath&&bt){let nt=et.clipPath;[].forEach.call(bt.querySelectorAll("[clip-path],[CLIP-PATH]"),function(x){x.getAttribute("clip-path").indexOf(nt.element.id)>-1&&x.removeAttribute("clip-path")}),et.clipPath=nt.destroy()}if(et.connector=(tt=et.connector)==null?void 0:tt.destroy(),et.stops){for(B=0;BMt&&Mt.join?(w?bt+" ":"")+Mt.join(" "):(Mt||"").toString(),"")),/(NaN| {2}|^$)/.test(et)&&(et="M 0 0"),this[dt]!==et&&(pt.setAttribute(dt,et),this[dt]=et)}fillSetter(et,dt,pt){typeof et=="string"?pt.setAttribute(dt,et):et&&this.complexColor(et,dt,pt)}hrefSetter(et,dt,pt){pt.setAttributeNS("http://www.w3.org/1999/xlink",dt,et)}getBBox(et,dt){let pt,bt,Mt,w,{alignValue:B,element:tt,renderer:nt,styles:x,textStr:y}=this,{cache:j,cacheKeys:lt}=nt,rt=tt.namespaceURI===this.SVG_NS,gt=l(dt,this.rotation,0),vt=nt.styledMode?tt&&K.prototype.getStyle.call(tt,"font-size"):x.fontSize;if(z(y)&&((w=y.toString()).indexOf("<")===-1&&(w=w.replace(/\d/g,"0")),w+=["",nt.rootFontSize,vt,gt,this.textWidth,B,x.textOverflow,x.fontWeight].join(",")),w&&!et&&(pt=j[w]),!pt||pt.polygon){if(rt||nt.forExport){try{Mt=this.fakeTS&&function(At){let $t=tt.querySelector(".highcharts-text-outline");$t&&H($t,{display:At})},W(Mt)&&Mt("none"),pt=tt.getBBox?D({},tt.getBBox()):{width:tt.offsetWidth,height:tt.offsetHeight,x:0,y:0},W(Mt)&&Mt("")}catch(At){}(!pt||pt.width<0)&&(pt={x:0,y:0,width:0,height:0})}else pt=this.htmlGetBBox();bt=pt.height,rt&&(pt.height=bt={"11px,17":14,"13px,20":16}[`${vt||""},${Math.round(bt)}`]||bt),gt&&(pt=this.getRotatedBox(pt,gt));let Ot={bBox:pt};it(this,"afterGetBBox",Ot),pt=Ot.bBox}if(w&&(y===""||pt.height>0)){for(;lt.length>250;)delete j[lt.shift()];j[w]||lt.push(w),j[w]=pt}return pt}getRotatedBox(et,dt){let{x:pt,y:bt,width:Mt,height:w}=et,{alignValue:B,translateY:tt,rotationOriginX:nt=0,rotationOriginY:x=0}=this,y={right:1,center:.5}[B||0]||0,j=Number(this.element.getAttribute("y")||0)-(tt?0:bt),lt=dt*Z,rt=(dt-90)*Z,gt=Math.cos(lt),vt=Math.sin(lt),Ot=Mt*gt,At=Mt*vt,$t=Math.cos(rt),Xt=Math.sin(rt),[[Ct,wt],[Dt,jt]]=[nt,x].map(Jt=>[Jt-Jt*gt,Jt*vt]),re=pt+y*(Mt-Ot)+Ct+jt+j*$t,le=re+Ot,Gt=le-w*$t,he=Gt-Ot,ve=bt+j-y*At-wt+Dt+j*Xt,Ce=ve+At,Te=Ce-w*Xt,Ke=Te-At,rn=Math.min(re,le,Gt,he),un=Math.min(ve,Ce,Te,Ke),Qt=Math.max(re,le,Gt,he)-rn,Kt=Math.max(ve,Ce,Te,Ke)-un;return{x:rn,y:un,width:Qt,height:Kt,polygon:[[re,ve],[le,Ce],[Gt,Te],[he,Ke]]}}getStyle(et){return U.getComputedStyle(this.element||this,"").getPropertyValue(et)}hasClass(et){return(""+this.attr("class")).split(" ").indexOf(et)!==-1}hide(){return this.attr({visibility:"hidden"})}htmlGetBBox(){return{height:0,width:0,x:0,y:0}}constructor(et,dt){this.onEvents={},this.opacity=1,this.SVG_NS=N,this.element=dt==="span"||dt==="body"?M(dt):Y.createElementNS(this.SVG_NS,dt),this.renderer=et,this.styles={},it(this,"afterInit")}on(et,dt){let{onEvents:pt}=this;return pt[et]&&pt[et](),pt[et]=T(this.element,et,dt),this}opacitySetter(et,dt,pt){let bt=Number(Number(et).toFixed(3));this.opacity=bt,pt.setAttribute(dt,bt)}reAlign(){var et;(et=this.alignOptions)!=null&&et.width&&this.alignOptions.align!=="left"&&(this.alignOptions.width=this.getBBox().width,this.placed=!1,this.align())}removeClass(et){return this.attr("class",(""+this.attr("class")).replace(_(et)?RegExp(`(^| )${et}( |$)`):et," ").replace(/ +/g," ").trim())}removeTextOutline(){let et=this.element.querySelector("tspan.highcharts-text-outline");et&&this.safeRemoveChild(et)}safeRemoveChild(et){let dt=et.parentNode;dt&&dt.removeChild(et)}setRadialReference(et){let dt=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=et,dt&&dt.radAttr&&dt.animate(this.renderer.getRadialAttr(et,dt.radAttr)),this}shadow(et){var Mt;let{renderer:dt}=this,pt=C(((Mt=this.parentGroup)==null?void 0:Mt.rotation)===90?{offsetX:-1,offsetY:-1}:{},k(et)?et:{}),bt=dt.shadowDefinition(pt);return this.attr({filter:et?`url(${dt.url}#${bt})`:"none"})}show(et=!0){return this.attr({visibility:et?"inherit":"visible"})}"stroke-widthSetter"(et,dt,pt){this[dt]=et,pt.setAttribute(dt,et)}strokeWidth(){if(!this.renderer.styledMode)return this["stroke-width"]||0;let et=this.getStyle("stroke-width"),dt=0,pt;return/px$/.test(et)?dt=u(et):et!==""&&(A(pt=Y.createElementNS(N,"rect"),{width:et,"stroke-width":0}),this.element.parentNode.appendChild(pt),dt=pt.getBBox().width,pt.parentNode.removeChild(pt)),dt}symbolAttr(et){let dt=this;K.symbolCustomAttribs.forEach(function(pt){dt[pt]=l(et[pt],dt[pt])}),dt.attr({d:dt.renderer.symbols[dt.symbolName](dt.x,dt.y,dt.width,dt.height,dt)})}textSetter(et){et!==this.textStr&&(delete this.textPxLength,this.textStr=et,this.added&&this.renderer.buildText(this),this.reAlign())}titleSetter(et){let dt=this.element,pt=dt.getElementsByTagName("title")[0]||Y.createElementNS(this.SVG_NS,"title");dt.insertBefore?dt.insertBefore(pt,dt.firstChild):dt.appendChild(pt),pt.textContent=I(l(et,""),[/<[^>]*>/g,""]).replace(/</g,"<").replace(/>/g,">")}toFront(){let et=this.element;return et.parentNode.appendChild(et),this}translate(et,dt){return this.attr({translateX:et,translateY:dt})}updateTransform(et="transform"){var j;let{element:dt,matrix:pt,rotation:bt=0,rotationOriginX:Mt,rotationOriginY:w,scaleX:B,scaleY:tt,translateX:nt=0,translateY:x=0}=this,y=["translate("+nt+","+x+")"];z(pt)&&y.push("matrix("+pt.join(",")+")"),bt&&(y.push("rotate("+bt+" "+l(Mt,dt.getAttribute("x"),0)+" "+l(w,dt.getAttribute("y")||0)+")"),((j=this.text)==null?void 0:j.element.tagName)==="SPAN"&&this.text.attr({rotation:bt,rotationOriginX:(Mt||0)-this.padding,rotationOriginY:(w||0)-this.padding})),(z(B)||z(tt))&&y.push("scale("+l(B,1)+" "+l(tt,1)+")"),y.length&&!(this.text||this).textPath&&dt.setAttribute(et,y.join(" "))}visibilitySetter(et,dt,pt){et==="inherit"?pt.removeAttribute(dt):this[dt]!==et&&pt.setAttribute(dt,et),this[dt]=et}xGetter(et){return this.element.nodeName==="circle"&&(et==="x"?et="cx":et==="y"&&(et="cy")),this._defaultGetter(et)}zIndexSetter(et,dt){let pt=this.renderer,bt=this.parentGroup,Mt=(bt||pt).element||pt.box,w=this.element,B=Mt===pt.box,tt,nt,x,y=!1,j,lt=this.added,rt;if(z(et)?(w.setAttribute("data-z-index",et),et=+et,this[dt]===et&&(lt=!1)):z(this[dt])&&w.removeAttribute("data-z-index"),this[dt]=et,lt){for((et=this.zIndex)&&bt&&(bt.handleZ=!0),rt=(tt=Mt.childNodes).length-1;rt>=0&&!y;rt--)j=!z(x=(nt=tt[rt]).getAttribute("data-z-index")),nt!==w&&(et<0&&j&&!B&&!rt?(Mt.insertBefore(w,tt[rt]),y=!0):(u(x)<=et||j&&(!z(et)||et>=0))&&(Mt.insertBefore(w,tt[rt+1]),y=!0));y||(Mt.insertBefore(w,tt[B?3:0]),y=!0)}return y}}return K.symbolCustomAttribs=["anchorX","anchorY","clockwise","end","height","innerR","r","start","width","x","y"],K.prototype.strokeSetter=K.prototype.fillSetter,K.prototype.yGetter=K.prototype.xGetter,K.prototype.matrixSetter=K.prototype.rotationOriginXSetter=K.prototype.rotationOriginYSetter=K.prototype.rotationSetter=K.prototype.scaleXSetter=K.prototype.scaleYSetter=K.prototype.translateXSetter=K.prototype.translateYSetter=K.prototype.verticalAlignSetter=function(ct,et){this[et]=ct,this.doTransform=!0},K}),g(d,"Core/Renderer/SVG/SVGLabel.js",[d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R){let{defined:st,extend:$,isNumber:J,merge:X,pick:q,removeEvent:Z}=R;class Y extends L{constructor(N,U,T,A,M,O,H,z,c,D){let it;super(N,"g"),this.paddingLeftSetter=this.paddingSetter,this.paddingRightSetter=this.paddingSetter,this.doUpdate=!1,this.textStr=U,this.x=T,this.y=A,this.anchorX=O,this.anchorY=H,this.baseline=c,this.className=D,this.addClass(D==="button"?"highcharts-no-tooltip":"highcharts-label"),D&&this.addClass("highcharts-"+D),this.text=N.text(void 0,0,0,z).attr({zIndex:1}),typeof M=="string"&&((it=/^url\((.*?)\)$/.test(M))||this.renderer.symbols[M])&&(this.symbolKey=M),this.bBox=Y.emptyBBox,this.padding=3,this.baselineOffset=0,this.needsBox=N.styledMode||it,this.deferredAttr={},this.alignFactor=0}alignSetter(N){let U={left:0,center:.5,right:1}[N];U!==this.alignFactor&&(this.alignFactor=U,this.bBox&&J(this.xSetting)&&this.attr({x:this.xSetting}))}anchorXSetter(N,U){this.anchorX=N,this.boxAttr(U,Math.round(N)-this.getCrispAdjust()-this.xSetting)}anchorYSetter(N,U){this.anchorY=N,this.boxAttr(U,N-this.ySetting)}boxAttr(N,U){this.box?this.box.attr(N,U):this.deferredAttr[N]=U}css(N){if(N){let U={};N=X(N),Y.textProps.forEach(T=>{N[T]!==void 0&&(U[T]=N[T],delete N[T])}),this.text.css(U),"fontSize"in U||"fontWeight"in U?this.updateTextPadding():("width"in U||"textOverflow"in U)&&this.updateBoxSize()}return L.prototype.css.call(this,N)}destroy(){Z(this.element,"mouseenter"),Z(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),L.prototype.destroy.call(this)}fillSetter(N,U){N&&(this.needsBox=!0),this.fill=N,this.boxAttr(U,N)}getBBox(N,U){this.textStr&&this.bBox.width===0&&this.bBox.height===0&&this.updateBoxSize();let{padding:T,height:A=0,translateX:M=0,translateY:O=0,width:H=0}=this,z=q(this.paddingLeft,T),c=U!=null?U:this.rotation||0,D={width:H,height:A,x:M+this.bBox.x-z,y:O+this.bBox.y-T+this.baselineOffset};return c&&(D=this.getRotatedBox(D,c)),D}getCrispAdjust(){return(this.renderer.styledMode&&this.box?this.box.strokeWidth():this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2}heightSetter(N){this.heightSetting=N,this.doUpdate=!0}afterSetters(){super.afterSetters(),this.doUpdate&&(this.updateBoxSize(),this.doUpdate=!1)}onAdd(){this.text.add(this),this.attr({text:q(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&st(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})}paddingSetter(N,U){J(N)?N!==this[U]&&(this[U]=N,this.updateTextPadding()):this[U]=void 0}rSetter(N,U){this.boxAttr(U,N)}strokeSetter(N,U){this.stroke=N,this.boxAttr(U,N)}"stroke-widthSetter"(N,U){N&&(this.needsBox=!0),this["stroke-width"]=N,this.boxAttr(U,N)}"text-alignSetter"(N){this.textAlign=N}textSetter(N){N!==void 0&&this.text.attr({text:N}),this.updateTextPadding(),this.reAlign()}updateBoxSize(){let N,U=this.text,T={},A=this.padding,M=this.bBox=(!J(this.widthSetting)||!J(this.heightSetting)||this.textAlign)&&st(U.textStr)?U.getBBox(void 0,0):Y.emptyBBox;this.width=this.getPaddedWidth(),this.height=(this.heightSetting||M.height||0)+2*A;let O=this.renderer.fontMetrics(U);if(this.baselineOffset=A+Math.min((this.text.firstLineMetrics||O).b,M.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-O.h)/2),this.needsBox&&!U.textPath){if(!this.box){let H=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect();H.addClass((this.className==="button"?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),H.add(this)}N=this.getCrispAdjust(),T.x=N,T.y=(this.baseline?-this.baselineOffset:0)+N,T.width=Math.round(this.width),T.height=Math.round(this.height),this.box.attr($(T,this.deferredAttr)),this.deferredAttr={}}}updateTextPadding(){let N=this.text;if(!N.textPath){this.updateBoxSize();let U=this.baseline?0:this.baselineOffset,T=q(this.paddingLeft,this.padding);st(this.widthSetting)&&this.bBox&&(this.textAlign==="center"||this.textAlign==="right")&&(T+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(T!==N.x||U!==N.y)&&(N.attr("x",T),N.hasBoxWidthChanged&&(this.bBox=N.getBBox(!0)),U!==void 0&&N.attr("y",U)),N.x=T,N.y=U}}widthSetter(N){this.widthSetting=J(N)?N:void 0,this.doUpdate=!0}getPaddedWidth(){let N=this.padding,U=q(this.paddingLeft,N),T=q(this.paddingRight,N);return(this.widthSetting||this.bBox.width||0)+U+T}xSetter(N){this.x=N,this.alignFactor&&(N-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(N),this.attr("translateX",this.xSetting)}ySetter(N){this.ySetting=this.y=Math.round(N),this.attr("translateY",this.ySetting)}}return Y.emptyBBox={width:0,height:0,x:0,y:0},Y.textProps=["color","direction","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","textDecoration","textOutline","textOverflow","whiteSpace","width"],Y}),g(d,"Core/Renderer/SVG/Symbols.js",[d["Core/Utilities.js"]],function(L){let{defined:R,isNumber:st,pick:$}=L;function J(Z,Y,V,N,U){let T=[];if(U){let A=U.start||0,M=$(U.r,V),O=$(U.r,N||V),H=2e-4/(U.borderRadius?1:Math.max(M,1)),z=Math.abs((U.end||0)-A-2*Math.PI)0&&O0)return H;if(Z+M>V-A)if(O>Y+A&&OY+A&&O0){let z=ON&&MA&&H.splice(1,1,["L",M-6,Y],["L",M,Y-6],["L",M+6,Y],["L",V-T,Y]);return H},circle:function(Z,Y,V,N){return J(Z+V/2,Y+N/2,V/2,N/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N/2],["L",Z+V/2,Y+N],["L",Z,Y+N/2],["Z"]]},rect:X,roundedRect:q,square:X,triangle:function(Z,Y,V,N){return[["M",Z+V/2,Y],["L",Z+V,Y+N],["L",Z,Y+N],["Z"]]},"triangle-down":function(Z,Y,V,N){return[["M",Z,Y],["L",Z+V,Y],["L",Z+V/2,Y+N],["Z"]]}}}),g(d,"Core/Renderer/SVG/TextBuilder.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{doc:$,SVG_NS:J,win:X}=R,{attr:q,extend:Z,fireEvent:Y,isString:V,objectEach:N,pick:U}=st;return class{constructor(T){let A=T.styles;this.renderer=T.renderer,this.svgElement=T,this.width=T.textWidth,this.textLineHeight=A&&A.lineHeight,this.textOutline=A&&A.textOutline,this.ellipsis=!!(A&&A.textOverflow==="ellipsis"),this.noWrap=!!(A&&A.whiteSpace==="nowrap")}buildSVG(){let T=this.svgElement,A=T.element,M=T.renderer,O=U(T.textStr,"").toString(),H=O.indexOf("<")!==-1,z=A.childNodes,c=!T.added&&M.box,D=[O,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,T.getStyle("font-size"),this.width].join(",");if(D!==T.textCache){T.textCache=D,delete T.actualWidth;for(let it=z.length;it--;)A.removeChild(z[it]);if(H||this.ellipsis||this.width||T.textPath||O.indexOf(" ")!==-1&&(!this.noWrap||//g.test(O))){if(O!==""){c&&c.appendChild(A);let it=new L(O);this.modifyTree(it.nodes),it.addToDOM(A),this.modifyDOM(),this.ellipsis&&(A.textContent||"").indexOf("\u2026")!==-1&&T.attr("title",this.unescapeEntities(T.textStr||"",["<",">"])),c&&c.removeChild(A)}}else A.appendChild($.createTextNode(this.unescapeEntities(O)));V(this.textOutline)&&T.applyTextOutline&&T.applyTextOutline(this.textOutline)}}modifyDOM(){let T,A=this.svgElement,M=q(A.element,"x");for(A.firstLineMetrics=void 0;(T=A.element.firstChild)&&/^[\s\u200B]*$/.test(T.textContent||" ");)A.element.removeChild(T);[].forEach.call(A.element.querySelectorAll("tspan.highcharts-br"),(c,D)=>{c.nextSibling&&c.previousSibling&&(D===0&&c.previousSibling.nodeType===1&&(A.firstLineMetrics=A.renderer.fontMetrics(c.previousSibling)),q(c,{dy:this.getLineHeight(c.nextSibling),x:M}))});let O=this.width||0;if(!O)return;let H=(c,D)=>{let it=c.textContent||"",Q=it.replace(/([^\^])-/g,"$1- ").split(" "),W=!this.noWrap&&(Q.length>1||A.element.childNodes.length>1),k=this.getLineHeight(D),_=0,C=A.actualWidth;if(this.ellipsis)it&&this.truncate(c,it,void 0,0,Math.max(0,O-.8*k),(h,l)=>h.substring(0,l)+"\u2026");else if(W){let h=[],l=[];for(;D.firstChild&&D.firstChild!==c;)l.push(D.firstChild),D.removeChild(D.firstChild);for(;Q.length;)Q.length&&!this.noWrap&&_>0&&(h.push(c.textContent||""),c.textContent=Q.join(" ").replace(/- /g,"-")),this.truncate(c,void 0,Q,_===0&&C||0,O,(u,v)=>Q.slice(0,v).join(" ").replace(/- /g,"-")),C=A.actualWidth,_++;l.forEach(u=>{D.insertBefore(u,c)}),h.forEach(u=>{D.insertBefore($.createTextNode(u),c);let v=$.createElementNS(J,"tspan");v.textContent="\u200B",q(v,{dy:k,x:M}),D.insertBefore(v,c)})}},z=c=>{[].slice.call(c.childNodes).forEach(D=>{D.nodeType===X.Node.TEXT_NODE?H(D,c):(D.className.baseVal.indexOf("highcharts-br")!==-1&&(A.actualWidth=0),z(D))})};z(A.element)}getLineHeight(T){let A=T.nodeType===X.Node.TEXT_NODE?T.parentElement:T;return this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(A||this.svgElement.element).h}modifyTree(T){let A=(M,O)=>{let{attributes:H={},children:z,style:c={},tagName:D}=M,it=this.renderer.styledMode;if(D==="b"||D==="strong"?it?H.class="highcharts-strong":c.fontWeight="bold":(D==="i"||D==="em")&&(it?H.class="highcharts-emphasized":c.fontStyle="italic"),c&&c.color&&(c.fill=c.color),D==="br"){H.class="highcharts-br",M.textContent="\u200B";let Q=T[O+1];Q&&Q.textContent&&(Q.textContent=Q.textContent.replace(/^ +/gm,""))}else D==="a"&&z&&z.some(Q=>Q.tagName==="#text")&&(M.children=[{children:z,tagName:"tspan"}]);D!=="#text"&&D!=="a"&&(M.tagName="tspan"),Z(M,{attributes:H,style:c}),z&&z.filter(Q=>Q.tagName!=="#text").forEach(A)};T.forEach(A),Y(this.svgElement,"afterModifyTree",{nodes:T})}truncate(T,A,M,O,H,z){let c,D,it=this.svgElement,{rotation:Q}=it,W=[],k=M?1:0,_=(A||M||"").length,C=_,h=function(l,u){let v=u||l,I=T.parentNode;if(I&&W[v]===void 0&&I.getSubStringLength)try{W[v]=O+I.getSubStringLength(0,M?v+1:v)}catch(S){}return W[v]};if(it.rotation=0,O+(D=h(T.textContent.length))>H){for(;k<=_;)C=Math.ceil((k+_)/2),M&&(c=z(M,C)),D=h(C,c&&c.length-1),k===_?k=_+1:D>H?_=C-1:k=C;_===0?T.textContent="":A&&_===A.length-1||(T.textContent=c||z(A||M,C))}M&&M.splice(0,C),it.actualWidth=D,it.rotation=Q}unescapeEntities(T,A){return N(this.renderer.escapes,function(M,O){A&&A.indexOf(M)!==-1||(T=T.toString().replace(RegExp(M,"g"),O))}),T}}}),g(d,"Core/Renderer/SVG/SVGRenderer.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Defaults.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGLabel.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Renderer/SVG/TextBuilder.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let N,{defaultOptions:U}=R,{charts:T,deg2rad:A,doc:M,isFirefox:O,isMS:H,isWebKit:z,noop:c,SVG_NS:D,symbolSizes:it,win:Q}=$,{addEvent:W,attr:k,createElement:_,crisp:C,css:h,defined:l,destroyObjectProperties:u,extend:v,isArray:I,isNumber:S,isObject:b,isString:K,merge:ct,pick:et,pInt:dt,replaceNested:pt,uniqueKey:bt}=V;class Mt{constructor(B,tt,nt,x,y,j,lt){let rt,gt,vt=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),Ot=vt.element;lt||vt.css(this.getStyle(x||{})),B.appendChild(Ot),k(B,"dir","ltr"),B.innerHTML.indexOf("xmlns")===-1&&k(Ot,"xmlns",this.SVG_NS),this.box=Ot,this.boxWrapper=vt,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(M.createTextNode("Created with Highcharts 11.4.8")),this.defs=this.createElement("defs").add(),this.allowHTML=j,this.forExport=y,this.styledMode=lt,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.rootFontSize=vt.getStyle("font-size"),this.setSize(tt,nt,!1),O&&B.getBoundingClientRect&&((rt=function(){h(B,{left:0,top:0}),gt=B.getBoundingClientRect(),h(B,{left:Math.ceil(gt.left)-gt.left+"px",top:Math.ceil(gt.top)-gt.top+"px"})})(),this.unSubPixelFix=W(Q,"resize",rt))}definition(B){return new L([B]).addToDOM(this.defs.element)}getReferenceURL(){if((O||z)&&M.getElementsByTagName("base").length){if(!l(N)){let B=bt(),tt=new L([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:B},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":`url(#${B})`,fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(M.body);h(tt,{position:"fixed",top:0,left:0,zIndex:9e5});let nt=M.elementFromPoint(6,6);N=(nt&&nt.id)==="hitme",M.body.removeChild(tt)}if(N)return pt(Q.location.href.split("#")[0],[/<[^>]*>/g,""],[/([\('\)])/g,"\\$1"],[/ /g,"%20"])}return""}getStyle(B){return this.style=v({fontFamily:"Helvetica, Arial, sans-serif",fontSize:"1rem"},B),this.style}setStyle(B){this.boxWrapper.css(this.getStyle(B))}isHidden(){return!this.boxWrapper.getBBox().width}destroy(){let B=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),u(this.gradients||{}),this.gradients=null,this.defs=B.destroy(),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null,null}createElement(B){return new this.Element(this,B)}getRadialAttr(B,tt){return{cx:B[0]-B[2]/2+(tt.cx||0)*B[2],cy:B[1]-B[2]/2+(tt.cy||0)*B[2],r:(tt.r||0)*B[2]}}shadowDefinition(B){let tt=[`highcharts-drop-shadow-${this.chartIndex}`,...Object.keys(B).map(x=>`${x}-${B[x]}`)].join("-").toLowerCase().replace(/[^a-z\d\-]/g,""),nt=ct({color:"#000000",offsetX:1,offsetY:1,opacity:.15,width:5},B);return this.defs.element.querySelector(`#${tt}`)||this.definition({tagName:"filter",attributes:{id:tt,filterUnits:nt.filterUnits},children:this.getShadowFilterContent(nt)}),tt}getShadowFilterContent(B){return[{tagName:"feDropShadow",attributes:{dx:B.offsetX,dy:B.offsetY,"flood-color":B.color,"flood-opacity":Math.min(5*B.opacity,1),stdDeviation:B.width/2}}]}buildText(B){new Y(B).buildSVG()}getContrast(B){let tt=st.parse(B).rgba.map(x=>{let y=x/255;return y<=.03928?y/12.92:Math.pow((y+.055)/1.055,2.4)}),nt=.2126*tt[0]+.7152*tt[1]+.0722*tt[2];return 1.05/(nt+.05)>(nt+.05)/.05?"#FFFFFF":"#000000"}button(B,tt,nt,x,y={},j,lt,rt,gt,vt){let Ot=this.label(B,tt,nt,gt,void 0,void 0,vt,void 0,"button"),At=this.styledMode,$t=arguments,Xt=0;y=ct(U.global.buttonTheme,y),At&&(delete y.fill,delete y.stroke,delete y["stroke-width"]);let Ct=y.states||{},wt=y.style||{};delete y.states,delete y.style;let Dt=[L.filterUserAttributes(y)],jt=[wt];return At||["hover","select","disabled"].forEach((re,le)=>{Dt.push(ct(Dt[0],L.filterUserAttributes($t[le+5]||Ct[re]||{}))),jt.push(Dt[le+1].style),delete Dt[le+1].style}),W(Ot.element,H?"mouseover":"mouseenter",function(){Xt!==3&&Ot.setState(1)}),W(Ot.element,H?"mouseout":"mouseleave",function(){Xt!==3&&Ot.setState(Xt)}),Ot.setState=(re=0)=>{if(re!==1&&(Ot.state=Xt=re),Ot.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][re]),!At){Ot.attr(Dt[re]);let le=jt[re];b(le)&&Ot.css(le)}},Ot.attr(Dt[0]),!At&&(Ot.css(v({cursor:"default"},wt)),vt&&Ot.text.css({pointerEvents:"none"})),Ot.on("touchstart",re=>re.stopPropagation()).on("click",function(re){Xt!==3&&x.call(Ot,re)})}crispLine(B,tt){let[nt,x]=B;return l(nt[1])&&nt[1]===x[1]&&(nt[1]=x[1]=C(nt[1],tt)),l(nt[2])&&nt[2]===x[2]&&(nt[2]=x[2]=C(nt[2],tt)),B}path(B){let tt=this.styledMode?{}:{fill:"none"};return I(B)?tt.d=B:b(B)&&v(tt,B),this.createElement("path").attr(tt)}circle(B,tt,nt){let x=b(B)?B:B===void 0?{}:{x:B,y:tt,r:nt},y=this.createElement("circle");return y.xSetter=y.ySetter=function(j,lt,rt){rt.setAttribute("c"+lt,j)},y.attr(x)}arc(B,tt,nt,x,y,j){let lt;b(B)?(tt=(lt=B).y,nt=lt.r,x=lt.innerR,y=lt.start,j=lt.end,B=lt.x):lt={innerR:x,start:y,end:j};let rt=this.symbol("arc",B,tt,nt,nt,lt);return rt.r=nt,rt}rect(B,tt,nt,x,y,j){let lt=b(B)?B:B===void 0?{}:{x:B,y:tt,r:y,width:Math.max(nt||0,0),height:Math.max(x||0,0)},rt=this.createElement("rect");return this.styledMode||(j!==void 0&&(lt["stroke-width"]=j,v(lt,rt.crisp(lt))),lt.fill="none"),rt.rSetter=function(gt,vt,Ot){rt.r=gt,k(Ot,{rx:gt,ry:gt})},rt.rGetter=function(){return rt.r||0},rt.attr(lt)}roundedRect(B){return this.symbol("roundedRect").attr(B)}setSize(B,tt,nt){this.width=B,this.height=tt,this.boxWrapper.animate({width:B,height:tt},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:et(nt,!0)?void 0:0}),this.alignElements()}g(B){let tt=this.createElement("g");return B?tt.attr({class:"highcharts-"+B}):tt}image(B,tt,nt,x,y,j){let lt={preserveAspectRatio:"none"};S(tt)&&(lt.x=tt),S(nt)&&(lt.y=nt),S(x)&&(lt.width=x),S(y)&&(lt.height=y);let rt=this.createElement("image").attr(lt),gt=function(vt){rt.attr({href:B}),j.call(rt,vt)};if(j){rt.attr({href:"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="});let vt=new Q.Image;W(vt,"load",gt),vt.src=B,vt.complete&>({})}else rt.attr({href:B});return rt}symbol(B,tt,nt,x,y,j){let lt,rt,gt,vt,Ot=this,At=/^url\((.*?)\)$/,$t=At.test(B),Xt=!$t&&(this.symbols[B]?B:"circle"),Ct=Xt&&this.symbols[Xt];if(Ct)typeof tt=="number"&&(rt=Ct.call(this.symbols,tt||0,nt||0,x||0,y||0,j)),lt=this.path(rt),Ot.styledMode||lt.attr("fill","none"),v(lt,{symbolName:Xt||void 0,x:tt,y:nt,width:x,height:y}),j&&v(lt,j);else if($t){gt=B.match(At)[1];let wt=lt=this.image(gt);wt.imgwidth=et(j&&j.width,it[gt]&&it[gt].width),wt.imgheight=et(j&&j.height,it[gt]&&it[gt].height),vt=Dt=>Dt.attr({width:Dt.width,height:Dt.height}),["width","height"].forEach(Dt=>{wt[`${Dt}Setter`]=function(jt,re){this[re]=jt;let{alignByTranslate:le,element:Gt,width:he,height:ve,imgwidth:Ce,imgheight:Te}=this,Ke=re==="width"?Ce:Te,rn=1;j&&j.backgroundSize==="within"&&he&&ve&&Ce&&Te?(rn=Math.min(he/Ce,ve/Te),k(Gt,{width:Math.round(Ce*rn),height:Math.round(Te*rn)})):Gt&&Ke&&Gt.setAttribute(re,Ke),!le&&Ce&&Te&&this.translate(((he||0)-Ce*rn)/2,((ve||0)-Te*rn)/2)}}),l(tt)&&wt.attr({x:tt,y:nt}),wt.isImg=!0,wt.symbolUrl=B,l(wt.imgwidth)&&l(wt.imgheight)?vt(wt):(wt.attr({width:0,height:0}),_("img",{onload:function(){let Dt=T[Ot.chartIndex];this.width===0&&(h(this,{position:"absolute",top:"-999em"}),M.body.appendChild(this)),it[gt]={width:this.width,height:this.height},wt.imgwidth=this.width,wt.imgheight=this.height,wt.element&&vt(wt),this.parentNode&&this.parentNode.removeChild(this),Ot.imgCount--,Ot.imgCount||!Dt||Dt.hasLoaded||Dt.onload()},src:gt}),this.imgCount++)}return lt}clipRect(B,tt,nt,x){return this.rect(B,tt,nt,x,0)}text(B,tt,nt,x){let y={};if(x&&(this.allowHTML||!this.forExport))return this.html(B,tt,nt);y.x=Math.round(tt||0),nt&&(y.y=Math.round(nt)),l(B)&&(y.text=B);let j=this.createElement("text").attr(y);return x&&(!this.forExport||this.allowHTML)||(j.xSetter=function(lt,rt,gt){let vt=gt.getElementsByTagName("tspan"),Ot=gt.getAttribute(rt);for(let At=0,$t;AtB.align())}}return v(Mt.prototype,{Element:X,SVG_NS:D,escapes:{"&":"&","<":"<",">":">","'":"'",'"':"""},symbols:Z,draw:c}),J.registerRendererType("svg",Mt,!0),Mt}),g(d,"Core/Renderer/HTML/HTMLElement.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Globals.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{composed:J}=R,{attr:X,css:q,createElement:Z,defined:Y,extend:V,pInt:N,pushUnique:U}=$;function T(H,z,c){var it;let D=((it=this.div)==null?void 0:it.style)||c.style;st.prototype[`${z}Setter`].call(this,H,z,c),D&&(D[z]=H)}let A=(H,z)=>{var c;if(!H.div){let D=X(H.element,"class"),it=H.css,Q=Z("div",D?{className:D}:void 0,Mi(xr({position:"absolute",left:`${H.translateX||0}px`,top:`${H.translateY||0}px`},H.styles),{display:H.display,opacity:H.opacity,visibility:H.visibility}),((c=H.parentGroup)==null?void 0:c.div)||z);H.classSetter=(W,k,_)=>{_.setAttribute("class",W),Q.className=W},H.translateXSetter=H.translateYSetter=(W,k)=>{H[k]=W,Q.style[k==="translateX"?"left":"top"]=`${W}px`,H.doTransform=!0},H.opacitySetter=H.visibilitySetter=T,H.css=W=>(it.call(H,W),W.cursor&&(Q.style.cursor=W.cursor),W.pointerEvents&&(Q.style.pointerEvents=W.pointerEvents),H),H.on=function(){return st.prototype.on.apply({element:Q,onEvents:H.onEvents},arguments),H},H.div=Q}return H.div};class M extends st{static compose(z){U(J,this.compose)&&(z.prototype.html=function(c,D,it){return new M(this,"span").attr({text:c,x:Math.round(D),y:Math.round(it)})})}constructor(z,c){super(z,c),this.css(xr({position:"absolute"},z.styledMode?{}:{fontFamily:z.style.fontFamily,fontSize:z.style.fontSize})),this.element.style.whiteSpace="nowrap"}getSpanCorrection(z,c,D){this.xCorr=-z*D,this.yCorr=-c}css(z){let c,{element:D}=this,it=D.tagName==="SPAN"&&z&&"width"in z,Q=it&&z.width;return it&&(delete z.width,this.textWidth=N(Q)||void 0,c=!0),(z==null?void 0:z.textOverflow)==="ellipsis"&&(z.whiteSpace="nowrap",z.overflow="hidden"),V(this.styles,z),q(D,z),c&&this.updateTransform(),this}htmlGetBBox(){let{element:z}=this;return{x:z.offsetLeft,y:z.offsetTop,width:z.offsetWidth,height:z.offsetHeight}}updateTransform(){var S;if(!this.added){this.alignOnAdd=!0;return}let{element:z,renderer:c,rotation:D,rotationOriginX:it,rotationOriginY:Q,styles:W,textAlign:k="left",textWidth:_,translateX:C=0,translateY:h=0,x:l=0,y:u=0}=this,v={left:0,center:.5,right:1}[k],I=W.whiteSpace;if(q(z,{marginLeft:`${C}px`,marginTop:`${h}px`}),z.tagName==="SPAN"){let b=[D,k,z.innerHTML,_,this.textAlign].join(","),K=-(((S=this.parentGroup)==null?void 0:S.padding)*1)||0,ct,et=!1;if(_!==this.oldTextWidth){let w=this.textPxLength?this.textPxLength:(q(z,{width:"",whiteSpace:I||"nowrap"}),z.offsetWidth),B=_||0;(B>this.oldTextWidth||w>B)&&(/[ \-]/.test(z.textContent||z.innerText)||z.style.textOverflow==="ellipsis")&&(q(z,{width:w>B||D?_+"px":"auto",display:"block",whiteSpace:I||"normal"}),this.oldTextWidth=_,et=!0)}this.hasBoxWidthChanged=et,b!==this.cTT&&(ct=c.fontMetrics(z).b,Y(D)&&(D!==(this.oldRotation||0)||k!==this.oldAlign)&&this.setSpanRotation(D,K,K),this.getSpanCorrection(!Y(D)&&this.textPxLength||z.offsetWidth,ct,v));let{xCorr:dt=0,yCorr:pt=0}=this,bt=(it!=null?it:l)-dt-l-K,Mt=(Q!=null?Q:u)-pt-u-K;q(z,{left:`${l+dt}px`,top:`${u+pt}px`,transformOrigin:`${bt}px ${Mt}px`}),this.cTT=b,this.oldRotation=D,this.oldAlign=k}}setSpanRotation(z,c,D){q(this.element,{transform:`rotate(${z}deg)`,transformOrigin:`${c}% ${D}px`})}add(z){let c,D=this.renderer.box.parentNode,it=[];if(this.parentGroup=z,z&&!(c=z.div)){let Q=z;for(;Q;)it.push(Q),Q=Q.parentGroup;for(let W of it.reverse())c=A(W,D)}return(c||D).appendChild(this.element),this.added=!0,this.alignOnAdd&&this.updateTransform(),this}textSetter(z){z!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,L.setElementHTML(this.element,z!=null?z:""),this.textStr=z,this.doTransform=!0)}alignSetter(z){this.alignValue=this.textAlign=z,this.doTransform=!0}xSetter(z,c){this[c]=z,this.doTransform=!0}}let O=M.prototype;return O.visibilitySetter=O.opacitySetter=T,O.ySetter=O.rotationSetter=O.rotationOriginXSetter=O.rotationOriginYSetter=O.xSetter,M}),g(d,"Core/Axis/AxisDefaults.js",[],function(){var L,R;return(R=L||(L={})).xAxis={alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:"%H:%M:%S.%L",range:!1},second:{main:"%H:%M:%S",range:!1},minute:{main:"%H:%M",range:!1},hour:{main:"%H:%M",range:!1},day:{main:"%e %b"},week:{main:"%e %b"},month:{main:"%b '%y"},year:{main:"%Y"}},endOnTick:!1,gridLineDashStyle:"Solid",gridZIndex:1,labels:{autoRotationLimit:80,distance:15,enabled:!0,indentation:10,overflow:"justify",reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,zIndex:7,style:{color:"#333333",cursor:"default",fontSize:"0.8em"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minorTicksPerMajor:5,minPadding:.01,offset:void 0,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:"between",tickPosition:"outside",title:{align:"middle",useHTML:!1,x:0,y:0,style:{color:"#666666",fontSize:"0.8em"}},visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#333333",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#333333"},R.yAxis={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:void 0},startOnTick:!0,title:{text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){let{numberFormatter:st}=this.axis.chart;return st(this.total||0,-1)},style:{color:"#000000",fontSize:"0.7em",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},L}),g(d,"Core/Foundation.js",[d["Core/Utilities.js"]],function(L){var R;let{addEvent:st,isFunction:$,objectEach:J,removeEvent:X}=L;return(R||(R={})).registerEventOptions=function(q,Z){q.eventOptions=q.eventOptions||{},J(Z.events,function(Y,V){q.eventOptions[V]!==Y&&(q.eventOptions[V]&&(X(q,V,q.eventOptions[V]),delete q.eventOptions[V]),$(Y)&&(q.eventOptions[V]=Y,st(q,V,Y,{order:0})))})},R}),g(d,"Core/Axis/Tick.js",[d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{deg2rad:$}=R,{clamp:J,correctFloat:X,defined:q,destroyObjectProperties:Z,extend:Y,fireEvent:V,isNumber:N,merge:U,objectEach:T,pick:A}=st;return class{constructor(M,O,H,z,c){this.isNew=!0,this.isNewLabel=!0,this.axis=M,this.pos=O,this.type=H||"",this.parameters=c||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,V(this,"init"),H||z||this.addLabel()}addLabel(){let M=this,O=M.axis,H=O.options,z=O.chart,c=O.categories,D=O.logarithmic,it=O.names,Q=M.pos,W=A(M.options&&M.options.labels,H.labels),k=O.tickPositions,_=Q===k[0],C=Q===k[k.length-1],h=(!W.step||W.step===1)&&O.tickInterval===1,l=k.info,u=M.label,v,I,S,b=this.parameters.category||(c?A(c[Q],it[Q],Q):Q);D&&N(b)&&(b=X(D.lin2log(b))),O.dateTime&&(l?v=(I=z.time.resolveDTLFormat(H.dateTimeLabelFormats[!H.grid&&l.higherRanks[Q]||l.unitName])).main:N(b)&&(v=O.dateTime.getXDateFormat(b,H.dateTimeLabelFormats||{}))),M.isFirst=_,M.isLast=C;let K={axis:O,chart:z,dateTimeLabelFormat:v,isFirst:_,isLast:C,pos:Q,tick:M,tickPositionInfo:l,value:b};V(this,"labelFormat",K);let ct=pt=>W.formatter?W.formatter.call(pt,pt):W.format?(pt.text=O.defaultLabelFormatter.call(pt),L.format(W.format,pt,z)):O.defaultLabelFormatter.call(pt),et=ct.call(K,K),dt=I&&I.list;dt?M.shortenLabel=function(){for(S=0;S0&&z+_*C>Q&&(b=Math.round((c-z)/Math.cos(k*$))):(I=z-_*C,S=z+(1-_)*C,IQ&&(u=Q-M.x+u*_,v=-1),(u=Math.min(h,u))u||O.autoRotation&&(W.styles||{}).width)&&(b=u)),b&&(this.shortenLabel?this.shortenLabel():(l.width=Math.floor(b)+"px",(H.style||{}).textOverflow||(l.textOverflow="ellipsis"),W.css(l)))}moveLabel(M,O){let H=this,z=H.label,c=H.axis,D=!1,it;z&&z.textStr===M?(H.movedLabel=z,D=!0,delete H.label):T(c.ticks,function(Q){D||Q.isNew||Q===H||!Q.label||Q.label.textStr!==M||(H.movedLabel=Q.label,D=!0,Q.labelPos=H.movedLabel.xy,delete Q.label)}),!D&&(H.labelPos||z)&&(it=H.labelPos||z.xy,H.movedLabel=H.createLabel(M,O,it),H.movedLabel&&H.movedLabel.attr({opacity:0}))}render(M,O,H){let z=this.axis,c=z.horiz,D=this.pos,it=A(this.tickmarkOffset,z.tickmarkOffset),Q=this.getPosition(c,D,it,O),W=Q.x,k=Q.y,_=z.pos,C=_+z.len,h=c?W:k;!z.chart.polar&&this.isNew&&(X(h)<_||h>C)&&(H=0);let l=A(H,this.label&&this.label.newOpacity,1);H=A(H,1),this.isActive=!0,this.renderGridLine(O,H),this.renderMark(Q,H),this.renderLabel(Q,O,l,M),this.isNew=!1,V(this,"afterRender")}renderGridLine(M,O){let H=this.axis,z=H.options,c={},D=this.pos,it=this.type,Q=A(this.tickmarkOffset,H.tickmarkOffset),W=H.chart.renderer,k=this.gridLine,_,C=z.gridLineWidth,h=z.gridLineColor,l=z.gridLineDashStyle;this.type==="minor"&&(C=z.minorGridLineWidth,h=z.minorGridLineColor,l=z.minorGridLineDashStyle),k||(H.chart.styledMode||(c.stroke=h,c["stroke-width"]=C||0,c.dashstyle=l),it||(c.zIndex=1),M&&(O=0),this.gridLine=k=W.path().attr(c).addClass("highcharts-"+(it?it+"-":"")+"grid-line").add(H.gridGroup)),k&&(_=H.getPlotLinePath({value:D+Q,lineWidth:k.strokeWidth(),force:"pass",old:M,acrossPanes:!1}))&&k[M||this.isNew?"attr":"animate"]({d:_,opacity:O})}renderMark(M,O){let H=this.axis,z=H.options,c=H.chart.renderer,D=this.type,it=H.tickSize(D?D+"Tick":"tick"),Q=M.x,W=M.y,k=A(z[D!=="minor"?"tickWidth":"minorTickWidth"],!D&&H.isXAxis?1:0),_=z[D!=="minor"?"tickColor":"minorTickColor"],C=this.mark,h=!C;it&&(H.opposite&&(it[0]=-it[0]),C||(this.mark=C=c.path().addClass("highcharts-"+(D?D+"-":"")+"tick").add(H.axisGroup),H.chart.styledMode||C.attr({stroke:_,"stroke-width":k})),C[h?"attr":"animate"]({d:this.getMarkPath(Q,W,it[0],C.strokeWidth(),H.horiz,c),opacity:O}))}renderLabel(M,O,H,z){let c=this.axis,D=c.horiz,it=c.options,Q=this.label,W=it.labels,k=W.step,_=A(this.tickmarkOffset,c.tickmarkOffset),C=M.x,h=M.y,l=!0;Q&&N(C)&&(Q.xy=M=this.getLabelPosition(C,h,Q,D,W,_,z,k),(!this.isFirst||this.isLast||it.showFirstLabel)&&(!this.isLast||this.isFirst||it.showLastLabel)?!D||W.step||W.rotation||O||H===0||this.handleOverflow(M):l=!1,k&&z%k&&(l=!1),l&&N(M.y)?(M.opacity=H,Q[this.isNewLabel?"attr":"animate"](M).show(!0),this.isNewLabel=!1):(Q.hide(),this.isNewLabel=!0))}replaceMovedLabel(){let M=this.label,O=this.axis;M&&!this.isNew&&(M.animate({opacity:0},void 0,M.destroy),delete this.label),O.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel}}}),g(d,"Core/Axis/Axis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/AxisDefaults.js"],d["Core/Color/Color.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Axis/Tick.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){let{animObject:Y}=L,{xAxis:V,yAxis:N}=R,{defaultOptions:U}=$,{registerEventOptions:T}=J,{deg2rad:A}=X,{arrayMax:M,arrayMin:O,clamp:H,correctFloat:z,defined:c,destroyObjectProperties:D,erase:it,error:Q,extend:W,fireEvent:k,getClosestDistance:_,insertItem:C,isArray:h,isNumber:l,isString:u,merge:v,normalizeTickInterval:I,objectEach:S,pick:b,relativeLength:K,removeEvent:ct,splat:et,syncTimeout:dt}=Z,pt=(Mt,w)=>I(w,void 0,void 0,b(Mt.options.allowDecimals,w<.5||Mt.tickAmount!==void 0),!!Mt.tickAmount);W(U,{xAxis:V,yAxis:v(V,N)});class bt{constructor(w,B,tt){this.init(w,B,tt)}init(w,B,tt=this.coll){var rt,gt,vt,Ot;let nt=tt==="xAxis",x=this.isZAxis||(w.inverted?!nt:nt);this.chart=w,this.horiz=x,this.isXAxis=nt,this.coll=tt,k(this,"init",{userOptions:B}),this.opposite=b(B.opposite,this.opposite),this.side=b(B.side,this.side,x?this.opposite?0:2:this.opposite?1:3),this.setOptions(B);let y=this.options,j=y.labels;(rt=this.type)!=null||(this.type=y.type||"linear"),(vt=this.uniqueNames)!=null||(this.uniqueNames=(gt=y.uniqueNames)!=null?gt:!0),k(this,"afterSetType"),this.userOptions=B,this.minPixelPadding=0,this.reversed=b(y.reversed,this.reversed),this.visible=y.visible,this.zoomEnabled=y.zoomEnabled,this.hasNames=this.type==="category"||y.categories===!0,this.categories=h(y.categories)&&y.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=c(y.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},(Ot=this.len)!=null||(this.len=0),this.minRange=this.userMinRange=y.minRange||y.maxZoom,this.range=y.range,this.offset=y.offset||0,this.max=void 0,this.min=void 0;let lt=b(y.crosshair,et(w.options.tooltip.crosshairs)[nt?0:1]);this.crosshair=lt===!0?{}:lt,w.axes.indexOf(this)===-1&&(nt?w.axes.splice(w.xAxis.length,0,this):w.axes.push(this),C(this,w[this.coll])),w.orderItems(this.coll),this.series=this.series||[],w.inverted&&!this.isZAxis&&nt&&!c(this.reversed)&&(this.reversed=!0),this.labelRotation=l(j.rotation)?j.rotation:void 0,T(this,y),k(this,"afterInit")}setOptions(w){let B=this.horiz?{labels:{autoRotation:[-45],padding:4},margin:15}:{labels:{padding:1},title:{rotation:90*this.side}};this.options=v(B,U[this.coll],w),k(this,"afterSetOptions",{userOptions:w})}defaultLabelFormatter(){let w=this.axis,{numberFormatter:B}=this.chart,tt=l(this.value)?this.value:NaN,nt=w.chart.time,x=w.categories,y=this.dateTimeLabelFormat,j=U.lang,lt=j.numericSymbols,rt=j.numericSymbolMagnitude||1e3,gt=w.logarithmic?Math.abs(tt):w.tickInterval,vt=lt&<.length,Ot,At;if(x)At=`${this.value}`;else if(y)At=nt.dateFormat(y,tt);else if(vt&<&>>=1e3)for(;vt--&&At===void 0;)gt>=(Ot=Math.pow(rt,vt+1))&&10*tt%Ot==0&<[vt]!==null&&tt!==0&&(At=B(tt/Ot,-1)+lt[vt]);return At===void 0&&(At=Math.abs(tt)>=1e4?B(tt,-1):B(tt,-1,void 0,"")),At}getSeriesExtremes(){let w,B=this;k(this,"getSeriesExtremes",null,function(){B.hasVisibleSeries=!1,B.dataMin=B.dataMax=B.threshold=void 0,B.softThreshold=!B.isXAxis,B.series.forEach(tt=>{if(tt.reserveSpace()){let nt=tt.options,x,y=nt.threshold,j,lt;if(B.hasVisibleSeries=!0,B.positiveValuesOnly&&0>=(y||0)&&(y=void 0),B.isXAxis)(x=tt.xData)&&x.length&&(x=B.logarithmic?x.filter(rt=>rt>0):x,j=(w=tt.getXExtremes(x)).min,lt=w.max,l(j)||j instanceof Date||(x=x.filter(l),j=(w=tt.getXExtremes(x)).min,lt=w.max),x.length&&(B.dataMin=Math.min(b(B.dataMin,j),j),B.dataMax=Math.max(b(B.dataMax,lt),lt)));else{let rt=tt.applyExtremes();l(rt.dataMin)&&(j=rt.dataMin,B.dataMin=Math.min(b(B.dataMin,j),j)),l(rt.dataMax)&&(lt=rt.dataMax,B.dataMax=Math.max(b(B.dataMax,lt),lt)),c(y)&&(B.threshold=y),(!nt.softThreshold||B.positiveValuesOnly)&&(B.softThreshold=!1)}}})}),k(this,"afterGetSeriesExtremes")}translate(w,B,tt,nt,x,y){var Xt;let j=this.linkedParent||this,lt=nt&&j.old?j.old.min:j.min;if(!l(lt))return NaN;let rt=j.minPixelPadding,gt=(j.isOrdinal||((Xt=j.brokenAxis)==null?void 0:Xt.hasBreaks)||j.logarithmic&&x)&&j.lin2val,vt=1,Ot=0,At=nt&&j.old?j.old.transA:j.transA,$t=0;return At||(At=j.transA),tt&&(vt*=-1,Ot=j.len),j.reversed&&(vt*=-1,Ot-=vt*(j.sector||j.len)),B?($t=(w=w*vt+Ot-rt)/At+lt,gt&&($t=j.lin2val($t))):(gt&&(w=j.val2lin(w)),$t=vt*(w-lt)*At+Ot+vt*rt+(l(y)?At*y:0),j.isRadial||($t=z($t))),$t}toPixels(w,B){return this.translate(w,!1,!this.horiz,void 0,!0)+(B?0:this.pos)}toValue(w,B){return this.translate(w-(B?0:this.pos),!0,!this.horiz,void 0,!0)}getPlotLinePath(w){let B=this,tt=B.chart,nt=B.left,x=B.top,y=w.old,j=w.value,lt=w.lineWidth,rt=y&&tt.oldChartHeight||tt.chartHeight,gt=y&&tt.oldChartWidth||tt.chartWidth,vt=B.transB,Ot=w.translatedValue,At=w.force,$t,Xt,Ct,wt,Dt;function jt(le,Gt,he){return At!=="pass"&&(lehe)&&(At?le=H(le,Gt,he):Dt=!0),le}let re={value:j,lineWidth:lt,old:y,force:At,acrossPanes:w.acrossPanes,translatedValue:Ot};return k(this,"getPlotLinePath",re,function(le){$t=Ct=(Ot=H(Ot=b(Ot,B.translate(j,void 0,void 0,y)),-1e9,1e9))+vt,Xt=wt=rt-Ot-vt,l(Ot)?B.horiz?(Xt=x,wt=rt-B.bottom+(B.options.isInternal?0:tt.scrollablePixelsY||0),$t=Ct=jt($t,nt,nt+B.width)):($t=nt,Ct=gt-B.right+(tt.scrollablePixelsX||0),Xt=wt=jt(Xt,x,x+B.height)):(Dt=!0,At=!1),le.path=Dt&&!At?void 0:tt.renderer.crispLine([["M",$t,Xt],["L",Ct,wt]],lt||1)}),re.path}getLinearTickPositions(w,B,tt){let nt,x,y,j=z(Math.floor(B/w)*w),lt=z(Math.ceil(tt/w)*w),rt=[];if(z(j+w)===j&&(y=20),this.single)return[B];for(nt=j;nt<=lt&&(rt.push(nt),(nt=z(nt+w,y))!==x);)x=nt;return rt}getMinorTickInterval(){let{minorTicks:w,minorTickInterval:B}=this.options;return w===!0?b(B,"auto"):w!==!1?B:void 0}getMinorTickPositions(){let w=this.options,B=this.tickPositions,tt=this.minorTickInterval,nt=this.pointRangePadding||0,x=(this.min||0)-nt,y=(this.max||0)+nt,j=y-x,lt=[],rt;if(j&&j/tt{var vt;return(gt.xIncrement?(vt=gt.xData)==null?void 0:vt.slice(0,2):gt.xData)||[]}))||0),this.dataMax-this.dataMin)),l(tt)&&l(nt)&&l(x)&&tt-nt=x,y=(x-tt+nt)/2,lt=[nt-y,b(w.min,nt-y)],j&&(lt[2]=B?B.log2lin(this.dataMin):this.dataMin),rt=[(nt=M(lt))+x,b(w.max,nt+x)],j&&(rt[2]=B?B.log2lin(this.dataMax):this.dataMax),(tt=O(rt))-ntnt-x),w=_([tt]))}return w&&B?Math.min(w,B):w||B}nameToX(w){let B=h(this.options.categories),tt=B?this.categories:this.names,nt=w.options.x,x;return w.series.requireSorting=!1,c(nt)||(nt=this.uniqueNames&&tt?B?tt.indexOf(w.name):b(tt.keys[w.name],-1):w.series.autoIncrement()),nt===-1?!B&&tt&&(x=tt.length):x=nt,x!==void 0?(this.names[x]=w.name,this.names.keys[w.name]=x):w.x&&(x=w.x),x}updateNames(){let w=this,B=this.names;B.length>0&&(Object.keys(B.keys).forEach(function(tt){delete B.keys[tt]}),B.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(tt=>{tt.xIncrement=null,(!tt.points||tt.isDirtyData)&&(w.max=Math.max(w.max,tt.xData.length-1),tt.processData(),tt.generatePoints()),tt.data.forEach(function(nt,x){let y;nt!=null&&nt.options&&nt.name!==void 0&&(y=w.nameToX(nt))!==void 0&&y!==nt.x&&(nt.x=y,tt.xData[x]=y)})}))}setAxisTranslation(){let w=this,B=w.max-w.min,tt=w.linkedParent,nt=!!w.categories,x=w.isXAxis,y=w.axisPointRange||0,j,lt=0,rt=0,gt,vt=w.transA;(x||nt||y)&&(j=w.getClosest(),tt?(lt=tt.minPointOffset,rt=tt.pointRangePadding):w.series.forEach(function(Ot){let At=nt?1:x?b(Ot.options.pointRange,j,0):w.axisPointRange||0,$t=Ot.options.pointPlacement;if(y=Math.max(y,At),!w.single||nt){let Xt=Ot.is("xrange")?!x:x;lt=Math.max(lt,Xt&&u($t)?0:At/2),rt=Math.max(rt,Xt&&$t==="on"?0:At)}}),gt=w.ordinal&&w.ordinal.slope&&j?w.ordinal.slope/j:1,w.minPointOffset=lt*=gt,w.pointRangePadding=rt*=gt,w.pointRange=Math.min(y,w.single&&nt?1:B),x&&j&&(w.closestPointRange=j)),w.translationSlope=w.transA=vt=w.staticScale||w.len/(B+rt||1),w.transB=w.horiz?w.left:w.bottom,w.minPixelPadding=vt*lt,k(this,"afterSetAxisTranslation")}minFromRange(){let{max:w,min:B}=this;return l(w)&&l(B)&&w-B||void 0}setTickInterval(w){var Qt,Kt,Jt,Et;let{categories:B,chart:tt,dataMax:nt,dataMin:x,dateTime:y,isXAxis:j,logarithmic:lt,options:rt,softThreshold:gt}=this,vt=l(this.threshold)?this.threshold:void 0,Ot=this.minRange||0,{ceiling:At,floor:$t,linkedTo:Xt,softMax:Ct,softMin:wt}=rt,Dt=l(Xt)&&((Qt=tt[this.coll])==null?void 0:Qt[Xt]),jt=rt.tickPixelInterval,re=rt.maxPadding,le=rt.minPadding,Gt=0,he,ve=l(rt.tickInterval)&&rt.tickInterval>=0?rt.tickInterval:void 0,Ce,Te,Ke,rn;if(y||B||Dt||this.getTickAmount(),Ke=b(this.userMin,rt.min),rn=b(this.userMax,rt.max),Dt?(this.linkedParent=Dt,he=Dt.getExtremes(),this.min=b(he.min,he.dataMin),this.max=b(he.max,he.dataMax),this.type!==Dt.type&&Q(11,!0,tt)):(gt&&c(vt)&&l(nt)&&l(x)&&(x>=vt?(Ce=vt,le=0):nt<=vt&&(Te=vt,re=0)),this.min=b(Ke,Ce,x),this.max=b(rn,Te,nt)),l(this.max)&&l(this.min)&&(lt&&(this.positiveValuesOnly&&!w&&0>=Math.min(this.min,b(x,this.min))&&Q(10,!0,tt),this.min=z(lt.log2lin(this.min),16),this.max=z(lt.log2lin(this.max),16)),this.range&&l(x)&&(this.userMin=this.min=Ke=Math.max(x,this.minFromRange()||0),this.userMax=rn=this.max,this.range=void 0)),k(this,"foundExtremes"),this.adjustForMinRange(),l(this.min)&&l(this.max)){if(!l(this.userMin)&&l(wt)&&wtthis.max&&(this.max=rn=Ct),B||this.axisPointRange||(Kt=this.stacking)!=null&&Kt.usePercentage||Dt||!(Gt=this.max-this.min)||(!c(Ke)&&le&&(this.min-=Gt*le),c(rn)||!re||(this.max+=Gt*re)),!l(this.userMin)&&l($t)&&(this.min=Math.max(this.min,$t)),!l(this.userMax)&&l(At)&&(this.max=Math.min(this.max,At)),gt&&l(x)&&l(nt)){let Rt=vt||0;!c(Ke)&&this.min=Rt?this.min=rt.minRange?Math.min(Rt,this.max-Ot):Rt:!c(rn)&&this.max>Rt&&nt<=Rt&&(this.max=rt.minRange?Math.max(Rt,this.min+Ot):Rt)}!tt.polar&&this.min>this.max&&(c(rt.min)?this.max=this.min:c(rt.max)&&(this.min=this.max)),Gt=this.max-this.min}if(this.min!==this.max&&l(this.min)&&l(this.max)?Dt&&!ve&&jt===Dt.options.tickPixelInterval?this.tickInterval=ve=Dt.tickInterval:this.tickInterval=b(ve,this.tickAmount?Gt/Math.max(this.tickAmount-1,1):void 0,B?1:Gt*jt/Math.max(this.len,jt)):this.tickInterval=1,j&&!w){let Rt=this.min!==((Jt=this.old)==null?void 0:Jt.min)||this.max!==((Et=this.old)==null?void 0:Et.max);this.series.forEach(function(zt){var Ft;zt.forceCrop=(Ft=zt.forceCropping)==null?void 0:Ft.call(zt),zt.processData(Rt)}),k(this,"postProcessData",{hasExtremesChanged:Rt})}this.setAxisTranslation(),k(this,"initialAxisTranslation"),this.pointRange&&!ve&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval));let un=b(rt.minTickInterval,y&&!this.series.some(Rt=>Rt.noSharedTooltip)?this.closestPointRange:0);!ve&&this.tickIntervalMath.max(2*this.len,200))lt=[this.min,this.max],Q(19,!1,this.chart);else if(this.dateTime)lt=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,w.units),this.min,this.max,w.startOfWeek,(vt=this.ordinal)==null?void 0:vt.positions,this.closestPointRange,!0);else if(this.logarithmic)lt=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else{let Ot=this.tickInterval,At=Ot;for(;At<=2*Ot&&(lt=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&<.length>this.tickAmount);)this.tickInterval=pt(this,At*=1.1)}lt.length>this.len&&(lt=[lt[0],lt[lt.length-1]])[0]===lt[1]&&(lt.length=1),tt&&(this.tickPositions=lt,(rt=tt.apply(this,[this.min,this.max]))&&(lt=rt))}this.tickPositions=lt,this.minorTickInterval=nt==="auto"&&this.tickInterval?this.tickInterval/w.minorTicksPerMajor:nt,this.paddedTicks=lt.slice(0),this.trimTicks(lt,y,j),!this.isLinked&&l(this.min)&&l(this.max)&&(this.single&<.length<2&&!this.categories&&!this.series.some(Ot=>Ot.is("heatmap")&&Ot.options.pointPlacement==="between")&&(this.min-=.5,this.max+=.5),B||rt||this.adjustTickAmount()),k(this,"afterSetTickPositions")}trimTicks(w,B,tt){let nt=w[0],x=w[w.length-1],y=!this.isOrdinal&&this.minPointOffset||0;if(k(this,"trimTicks"),!this.isLinked){if(B&&nt!==-1/0)this.min=nt;else for(;this.min-y>w[0];)w.shift();if(tt)this.max=x;else for(;this.max+y{let{horiz:Ot,options:At}=vt;return[Ot?At.left:At.top,At.width,At.height,At.pane].join(",")},gt=rt(this);tt[this.coll].forEach(function(vt){let{series:Ot}=vt;Ot.length&&Ot.some(At=>At.visible)&&vt!==B&&rt(vt)===gt&&(w=!0,nt.push(vt))})}if(w&&j){nt.forEach(gt=>{let vt=gt.getThresholdAlignment(B);l(vt)&<.push(vt)});let rt=lt.length>1?lt.reduce((gt,vt)=>gt+=vt,0)/lt.length:void 0;nt.forEach(gt=>{gt.thresholdAlignment=rt})}return w}getThresholdAlignment(w){if((!l(this.dataMin)||this!==w&&this.series.some(B=>B.isDirty||B.isDirtyData))&&this.getSeriesExtremes(),l(this.threshold)){let B=H((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1);return this.options.reversed&&(B=1-B),B}}getTickAmount(){let w=this.options,B=w.tickPixelInterval,tt=w.tickAmount;c(w.tickInterval)||tt||!(this.leny.push(z(y[y.length-1]+At)),Ct=()=>y.unshift(z(y[0]-At));if(l(lt)&&($t=lt<.5?Math.ceil(lt*(j-1)):Math.floor(lt*(j-1)),x.reversed&&($t=j-1-$t)),w.hasData()&&l(nt)&&l(tt)){let wt=()=>{w.transA*=(rt-1)/(j-1),w.min=x.startOnTick?y[0]:Math.min(nt,y[0]),w.max=x.endOnTick?y[y.length-1]:Math.max(tt,y[y.length-1])};if(l($t)&&l(w.threshold)){for(;y[$t]!==gt||y.length!==j||y[0]>nt||y[y.length-1]w.threshold?Ct():Xt();if(At>8*w.tickInterval)break;At*=2}wt()}else if(rt0&&Ot{tt=tt||lt.isDirtyData||lt.isDirty,nt=nt||lt.xAxis&<.xAxis.isDirty||!1}),this.setAxisSize();let x=this.len!==(this.old&&this.old.len);x||tt||nt||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(B&&w==="yAxis"&&B.buildStacks(),this.forceRedraw=!1,this.userMinRange||(this.minRange=void 0),this.getSeriesExtremes(),this.setTickInterval(),B&&w==="xAxis"&&B.buildStacks(),this.isDirty||(this.isDirty=x||this.min!==((y=this.old)==null?void 0:y.min)||this.max!==((j=this.old)==null?void 0:j.max))):B&&B.cleanStacks(),tt&&delete this.allExtremes,k(this,"afterSetScale")}setExtremes(w,B,tt=!0,nt,x){this.series.forEach(y=>{delete y.kdTree}),k(this,"setExtremes",x=W(x,{min:w,max:B}),y=>{this.userMin=y.min,this.userMax=y.max,this.eventArgs=y,tt&&this.chart.redraw(nt)})}setAxisSize(){let w=this.chart,B=this.options,tt=B.offsets||[0,0,0,0],nt=this.horiz,x=this.width=Math.round(K(b(B.width,w.plotWidth-tt[3]+tt[1]),w.plotWidth)),y=this.height=Math.round(K(b(B.height,w.plotHeight-tt[0]+tt[2]),w.plotHeight)),j=this.top=Math.round(K(b(B.top,w.plotTop+tt[0]),w.plotHeight,w.plotTop)),lt=this.left=Math.round(K(b(B.left,w.plotLeft+tt[3]),w.plotWidth,w.plotLeft));this.bottom=w.chartHeight-y-j,this.right=w.chartWidth-x-lt,this.len=Math.max(nt?x:y,0),this.pos=nt?lt:j}getExtremes(){let w=this.logarithmic;return{min:w?z(w.lin2log(this.min)):this.min,max:w?z(w.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}}getThreshold(w){let B=this.logarithmic,tt=B?B.lin2log(this.min):this.min,nt=B?B.lin2log(this.max):this.max;return w===null||w===-1/0?w=tt:w===1/0?w=nt:tt>w?w=tt:nt15&&B<165?nt.align="right":B>195&&B<345&&(nt.align="left")}),tt.align}tickSize(w){let B=this.options,tt=b(B[w==="tick"?"tickWidth":"minorTickWidth"],w==="tick"&&this.isXAxis&&!this.categories?1:0),nt=B[w==="tick"?"tickLength":"minorTickLength"],x;tt&&nt&&(B[w+"Position"]==="inside"&&(nt=-nt),x=[nt,tt]);let y={tickSize:x};return k(this,"afterTickSize",y),y.tickSize}labelMetrics(){let w=this.chart.renderer,B=this.ticks,tt=B[Object.keys(B)[0]]||{};return this.chart.renderer.fontMetrics(tt.label||tt.movedLabel||w.box)}unsquish(){let w=this.options.labels,B=w.padding||0,tt=this.horiz,nt=this.tickInterval,x=this.len/(((this.categories?1:0)+this.max-this.min)/nt),y=w.rotation,j=z(.8*this.labelMetrics().h),lt=Math.max(this.max-this.min,0),rt=function($t){let Xt=($t+2*B)/(x||1);return(Xt=Xt>1?Math.ceil(Xt):1)*nt>lt&&$t!==1/0&&x!==1/0&<&&(Xt=Math.ceil(lt/nt)),z(Xt*nt)},gt=nt,vt,Ot=Number.MAX_VALUE,At;if(tt){if(!w.staggerLines&&(l(y)?At=[y]:x=-90&&Ct<=90)&&(Xt=($t=rt(Math.abs(j/Math.sin(A*Ct))))+Math.abs(Ct/360))Xt&&(Xt=jt.label.textPxLength)}),this.maxLabelLength=Xt,this.autoRotation)Xt>rt&&Xt>vt.h?gt.rotation=this.labelRotation:this.labelRotation=0;else if(lt&&(At=rt,!Ot))for($t="clip",wt=tt.length;!j&&wt--;)(Ct=nt[tt[wt]].label)&&(Ct.styles.textOverflow==="ellipsis"?Ct.css({textOverflow:"clip"}):Ct.textPxLength>lt&&Ct.css({width:lt+"px"}),Ct.getBBox().height>this.len/tt.length-(vt.h-vt.f)&&(Ct.specificTextOverflow="ellipsis"));gt.rotation&&(At=Xt>.5*w.chartHeight?.33*w.chartHeight:Xt,Ot||($t="ellipsis")),this.labelAlign=x.align||this.autoLabelAlign(this.labelRotation),this.labelAlign&&(gt.align=this.labelAlign),tt.forEach(function(Dt){let jt=nt[Dt],re=jt&&jt.label,le=y.width,Gt={};re&&(re.attr(gt),jt.shortenLabel?jt.shortenLabel():At&&!le&&y.whiteSpace!=="nowrap"&&(Atx.g(j).attr({zIndex:rt}).addClass(`highcharts-${tt.toLowerCase()}${lt} `+(this.isRadial?`highcharts-radial-axis${lt} `:"")+(nt.className||"")).add(w);this.axisGroup||(this.gridGroup=y("grid","-grid",nt.gridZIndex),this.axisGroup=y("axis","",nt.zIndex),this.labelGroup=y("axis-labels","-labels",nt.labels.zIndex))}getOffset(){let w=this,{chart:B,horiz:tt,options:nt,side:x,ticks:y,tickPositions:j,coll:lt}=w,rt=B.inverted&&!w.isZAxis?[1,0,3,2][x]:x,gt=w.hasData(),vt=nt.title,Ot=nt.labels,At=l(nt.crossing),$t=B.axisOffset,Xt=B.clipOffset,Ct=[-1,1,1,-1][x],wt,Dt=0,jt,re=0,le=0,Gt,he;if(w.showAxis=wt=gt||nt.showEmpty,w.staggerLines=w.horiz&&Ot.staggerLines||void 0,w.createGroups(),gt||w.isLinked?(j.forEach(function(ve){w.generateTick(ve)}),w.renderUnsquish(),w.reserveSpaceDefault=x===0||x===2||{1:"left",3:"right"}[x]===w.labelAlign,b(Ot.reserveSpace,!At&&null,w.labelAlign==="center"||null,w.reserveSpaceDefault)&&j.forEach(function(ve){le=Math.max(y[ve].getLabelSize(),le)}),w.staggerLines&&(le*=w.staggerLines),w.labelOffset=le*(w.opposite?-1:1)):S(y,function(ve,Ce){ve.destroy(),delete y[Ce]}),vt!=null&&vt.text&&vt.enabled!==!1&&(w.addTitle(wt),wt&&!At&&vt.reserveSpace!==!1&&(w.titleOffset=Dt=w.axisTitle.getBBox()[tt?"height":"width"],re=c(jt=vt.offset)?0:b(vt.margin,tt?5:10))),w.renderLine(),w.offset=Ct*b(nt.offset,$t[x]?$t[x]+(nt.margin||0):0),w.tickRotCorr=w.tickRotCorr||{x:0,y:0},he=x===0?-w.labelMetrics().h:x===2?w.tickRotCorr.y:0,Gt=Math.abs(le)+re,le&&(Gt-=he,Gt+=Ct*(tt?b(Ot.y,w.tickRotCorr.y+Ct*Ot.distance):b(Ot.x,Ct*Ot.distance))),w.axisTitleMargin=b(jt,Gt),w.getMaxLabelDimensions&&(w.maxLabelDimensions=w.getMaxLabelDimensions(y,j)),lt!=="colorAxis"&&Xt){let ve=this.tickSize("tick");$t[x]=Math.max($t[x],(w.axisTitleMargin||0)+Dt+Ct*w.offset,Gt,j&&j.length&&ve?ve[0]+Ct*w.offset:0);let Ce=!w.axisLine||nt.offset?0:w.axisLine.strokeWidth()/2;Xt[rt]=Math.max(Xt[rt],Ce)}k(this,"afterGetOffset")}getLinePath(w){let B=this.chart,tt=this.opposite,nt=this.offset,x=this.horiz,y=this.left+(tt?this.width:0)+nt,j=B.chartHeight-this.bottom-(tt?this.height:0)+nt;return tt&&(w*=-1),B.renderer.crispLine([["M",x?this.left:y,x?j:this.top],["L",x?B.chartWidth-this.right:y,x?j:B.chartHeight-this.bottom]],w)}renderLine(){this.axisLine||(this.axisLine=this.chart.renderer.path().addClass("highcharts-axis-line").add(this.axisGroup),this.chart.styledMode||this.axisLine.attr({stroke:this.options.lineColor,"stroke-width":this.options.lineWidth,zIndex:7}))}getTitlePosition(w){let B=this.horiz,tt=this.left,nt=this.top,x=this.len,y=this.options.title,j=B?tt:nt,lt=this.opposite,rt=this.offset,gt=y.x,vt=y.y,Ot=this.chart.renderer.fontMetrics(w),At=w?Math.max(w.getBBox(!1,0).height-Ot.h-1,0):0,$t={low:j+(B?0:x),middle:j+x/2,high:j+(B?x:0)}[y.align],Xt=(B?nt+this.height:tt)+(B?1:-1)*(lt?-1:1)*(this.axisTitleMargin||0)+[-At,At,Ot.f,-At][this.side],Ct={x:B?$t+gt:Xt+(lt?this.width:0)+rt+gt,y:B?Xt+vt-(lt?this.height:0)+rt:$t+vt};return k(this,"afterGetTitlePosition",{titlePosition:Ct}),Ct}renderMinorTick(w,B){let tt=this.minorTicks;tt[w]||(tt[w]=new q(this,w,"minor")),B&&tt[w].isNew&&tt[w].render(null,!0),tt[w].render(null,!1,1)}renderTick(w,B,tt){let nt=this.isLinked,x=this.ticks;(!nt||w>=this.min&&w<=this.max||this.grid&&this.grid.isColumn)&&(x[w]||(x[w]=new q(this,w)),tt&&x[w].isNew&&x[w].render(B,!0,-1),x[w].render(B))}render(){let w,B,tt=this,nt=tt.chart,x=tt.logarithmic,y=nt.renderer,j=tt.options,lt=tt.isLinked,rt=tt.tickPositions,gt=tt.axisTitle,vt=tt.ticks,Ot=tt.minorTicks,At=tt.alternateBands,$t=j.stackLabels,Xt=j.alternateGridColor,Ct=j.crossing,wt=tt.tickmarkOffset,Dt=tt.axisLine,jt=tt.showAxis,re=Y(y.globalAnimation);if(tt.labelEdge.length=0,tt.overlap=!1,[vt,Ot,At].forEach(function(le){S(le,function(Gt){Gt.isActive=!1})}),l(Ct)){let le=this.isXAxis?nt.yAxis[0]:nt.xAxis[0],Gt=[1,-1,-1,1][this.side];if(le){let he=le.toPixels(Ct,!0);tt.horiz&&(he=le.len-he),tt.offset=Gt*he}}if(tt.hasData()||lt){let le=tt.chart.hasRendered&&tt.old&&l(tt.old.min);tt.minorTickInterval&&!tt.categories&&tt.getMinorTickPositions().forEach(function(Gt){tt.renderMinorTick(Gt,le)}),rt.length&&(rt.forEach(function(Gt,he){tt.renderTick(Gt,he,le)}),wt&&(tt.min===0||tt.single)&&(vt[-1]||(vt[-1]=new q(tt,-1,null,!0)),vt[-1].render(-1))),Xt&&rt.forEach(function(Gt,he){B=rt[he+1]!==void 0?rt[he+1]+wt:tt.max-wt,he%2==0&&Gt=.5)N=Math.round(N),z=M.getLinearTickPositions(N,U,T);else if(N>=.08){let c,D,it,Q,W,k,_,C=Math.floor(U);for(c=N>.3?[1,2,4]:N>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9],D=C;DU&&(!A||k<=T)&&k!==void 0&&z.push(k),k>T&&(_=!0),k=W}else{let c=this.lin2log(U),D=this.lin2log(T),it=A?M.getMinorTickInterval():H.tickInterval,Q=H.tickPixelInterval/(A?5:1),W=A?O/M.tickPositions.length:O;N=$(N=J(it==="auto"?null:it,this.minorAutoInterval,(D-c)*Q/(W||1))),z=M.getLinearTickPositions(N,c,D).map(this.log2lin),A||(this.minorAutoInterval=N/5)}return A||(M.tickInterval=N),z}lin2log(N){return Math.pow(10,N)}log2lin(N){return Math.log(N)/Math.LN10}}X.Additions=Y}(R||(R={})),R}),g(d,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[d["Core/Utilities.js"]],function(L){var R;let{erase:st,extend:$,isNumber:J}=L;return function(X){let q;function Z(M){return this.addPlotBandOrLine(M,"plotBands")}function Y(M,O){let H=this.userOptions,z=new q(this,M);if(this.visible&&(z=z.render()),z){if(this._addedPlotLB||(this._addedPlotLB=!0,(H.plotLines||[]).concat(H.plotBands||[]).forEach(c=>{this.addPlotBandOrLine(c)})),O){let c=H[O]||[];c.push(M),H[O]=c}this.plotLinesAndBands.push(z)}return z}function V(M){return this.addPlotBandOrLine(M,"plotLines")}function N(M,O,H){H=H||this.options;let z=this.getPlotLinePath({value:O,force:!0,acrossPanes:H.acrossPanes}),c=[],D=this.horiz,it=!J(this.min)||!J(this.max)||Mthis.max&&O>this.max,Q=this.getPlotLinePath({value:M,force:!0,acrossPanes:H.acrossPanes}),W,k=1,_;if(Q&&z)for(it&&(_=Q.toString()===z.toString(),k=0),W=0;W{var z;let H=[];for(let c of this.axes)for(let{label:D,options:it}of c.plotLinesAndBands)D&&!((z=it==null?void 0:it.label)!=null&&z.allowOverlap)&&H.push(D);return H})}),L.compose(T,O)}constructor(M,O){this.axis=M,this.options=O,this.id=O.id}render(){var pt,bt,Mt;Y(this,"render");let{axis:M,options:O}=this,{horiz:H,logarithmic:z}=M,{color:c,events:D,zIndex:it=0}=O,Q={},W=M.chart.renderer,k=O.to,_=O.from,C=O.value,h=O.borderWidth,l=O.label,{label:u,svgElem:v}=this,I=[],S,b=X(_)&&X(k),K=X(C),ct=!v,et={class:"highcharts-plot-"+(b?"band ":"line ")+(O.className||"")},dt=b?"bands":"lines";if(!M.chart.styledMode&&(K?(et.stroke=c||"#999999",et["stroke-width"]=U(O.width,1),O.dashStyle&&(et.dashstyle=O.dashStyle)):b&&(et.fill=c||"#e6e9ff",h&&(et.stroke=O.borderColor,et["stroke-width"]=h))),Q.zIndex=it,dt+="-"+it,(S=M.plotLinesAndBandsGroups[dt])||(M.plotLinesAndBandsGroups[dt]=S=W.g("plot-"+dt).attr(Q).add()),v||(this.svgElem=v=W.path().attr(et).add(S)),X(C))I=M.getPlotLinePath({value:(pt=z==null?void 0:z.log2lin(C))!=null?pt:C,lineWidth:v.strokeWidth(),acrossPanes:O.acrossPanes});else{if(!(X(_)&&X(k)))return;I=M.getPlotBandPath((bt=z==null?void 0:z.log2lin(_))!=null?bt:_,(Mt=z==null?void 0:z.log2lin(k))!=null?Mt:k,O)}return!this.eventsAdded&&D&&(N(D,(w,B)=>{v==null||v.on(B,tt=>{D[B].apply(this,[tt])})}),this.eventsAdded=!0),(ct||!v.d)&&(I!=null&&I.length)?v.attr({d:I}):v&&(I?(v.show(),v.animate({d:I})):v.d&&(v.hide(),u&&(this.label=u=u.destroy()))),l&&(X(l.text)||X(l.formatter))&&(I!=null&&I.length)&&M.width>0&&M.height>0&&!I.isFlat?(l=V(xr({align:H&&b?"center":void 0,x:H?!b&&4:10,verticalAlign:!H&&b?"middle":void 0,y:H?b?16:10:b?6:-4,rotation:H&&!b?90:0},b?{inside:!0}:{}),l),this.renderLabel(l,I,b,it)):u&&u.hide(),this}renderLabel(M,O,H,z){var l;let c=this.axis,D=c.chart.renderer,it=M.inside,Q=this.label;Q||(this.label=Q=D.text(this.getLabelText(M),0,0,M.useHTML).attr({align:M.textAlign||M.align,rotation:M.rotation,class:"highcharts-plot-"+(H?"band":"line")+"-label "+(M.className||""),zIndex:z}),c.chart.styledMode||Q.css(V({fontSize:"0.8em",textOverflow:H&&!it?"":"ellipsis"},M.style)),Q.add());let W=O.xBounds||[O[0][1],O[1][1],H?O[2][1]:O[0][1]],k=O.yBounds||[O[0][2],O[1][2],H?O[2][2]:O[0][2]],_=J(W),C=J(k),h=$(W)-_;Q.align(M,!1,{x:_,y:C,width:h,height:$(k)-C}),(!Q.alignValue||Q.alignValue==="left"||X(it))&&Q.css({width:(((l=M.style)==null?void 0:l.width)||(H&&it?h:Q.rotation===90?c.height-(Q.alignAttr.y-c.top):(M.clip?c.width:c.chart.chartWidth)-(Q.alignAttr.x-c.left)))+"px"}),Q.show(!0)}getLabelText(M){return X(M.formatter)?M.formatter.call(this):M.text}destroy(){Z(this.axis.plotLinesAndBands,this),delete this.axis,q(this)}}return T}),g(d,"Core/Tooltip.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){var q;let{animObject:Z}=L,{format:Y}=R,{composed:V,doc:N,isSafari:U}=st,{distribute:T}=$,{addEvent:A,clamp:M,css:O,discardElement:H,extend:z,fireEvent:c,isArray:D,isNumber:it,isString:Q,merge:W,pick:k,pushUnique:_,splat:C,syncTimeout:h}=X;class l{constructor(v,I,S){this.allowShared=!0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.options={},this.outside=!1,this.chart=v,this.init(v,I),this.pointer=S}bodyFormatter(v){return v.map(function(I){let S=I.series.tooltipOptions;return(S[(I.point.formatPrefix||"point")+"Formatter"]||I.point.tooltipFormatter).call(I.point,S[(I.point.formatPrefix||"point")+"Format"]||"")})}cleanSplit(v){this.chart.series.forEach(function(I){let S=I&&I.tt;S&&(!S.isActive||v?I.tt=S.destroy():S.isActive=!1)})}defaultFormatter(v){let I,S=this.points||C(this);return(I=(I=[v.tooltipFooterHeaderFormatter(S[0])]).concat(v.bodyFormatter(S))).push(v.tooltipFooterHeaderFormatter(S[0],!0)),I}destroy(){this.label&&(this.label=this.label.destroy()),this.split&&(this.cleanSplit(!0),this.tt&&(this.tt=this.tt.destroy())),this.renderer&&(this.renderer=this.renderer.destroy(),H(this.container)),X.clearTimeout(this.hideTimer)}getAnchor(v,I){let S,{chart:b,pointer:K}=this,ct=b.inverted,et=b.plotTop,dt=b.plotLeft;if((v=C(v))[0].series&&v[0].series.yAxis&&!v[0].series.yAxis.options.reversedStacks&&(v=v.slice().reverse()),this.followPointer&&I)I.chartX===void 0&&(I=K.normalize(I)),S=[I.chartX-dt,I.chartY-et];else if(v[0].tooltipPos)S=v[0].tooltipPos;else{let pt=0,bt=0;v.forEach(function(Mt){let w=Mt.pos(!0);w&&(pt+=w[0],bt+=w[1])}),pt/=v.length,bt/=v.length,this.shared&&v.length>1&&I&&(ct?pt=I.chartX:bt=I.chartY),S=[pt-dt,bt-et]}return S.map(Math.round)}getClassName(v,I,S){let b=this.options,K=v.series,ct=K.options;return[b.className,"highcharts-label",S&&"highcharts-tooltip-header",I?"highcharts-tooltip-box":"highcharts-tooltip",!S&&"highcharts-color-"+k(v.colorIndex,K.colorIndex),ct&&ct.className].filter(Q).join(" ")}getLabel({anchorX:v,anchorY:I}={anchorX:0,anchorY:0}){let S=this,b=this.chart.styledMode,K=this.options,ct=this.split&&this.allowShared,et=this.container,dt=this.chart.renderer;if(this.label){let pt=!this.label.hasClass("highcharts-label");(!ct&&pt||ct&&!pt)&&this.destroy()}if(!this.label){if(this.outside){let pt=this.chart.options.chart.style,bt=J.getRendererType();this.container=et=st.doc.createElement("div"),et.className="highcharts-tooltip-container",O(et,{position:"absolute",top:"1px",pointerEvents:"none",zIndex:Math.max(this.options.style.zIndex||0,(pt&&pt.zIndex||0)+3)}),this.renderer=dt=new bt(et,0,0,pt,void 0,void 0,dt.styledMode)}if(ct?this.label=dt.g("tooltip"):(this.label=dt.label("",v,I,K.shape,void 0,void 0,K.useHTML,void 0,"tooltip").attr({padding:K.padding,r:K.borderRadius}),b||this.label.attr({fill:K.backgroundColor,"stroke-width":K.borderWidth||0}).css(K.style).css({pointerEvents:K.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none")})),S.outside){let pt=this.label;[pt.xSetter,pt.ySetter].forEach((bt,Mt)=>{pt[Mt?"ySetter":"xSetter"]=w=>{bt.call(pt,S.distance),pt[Mt?"y":"x"]=w,et&&(et.style[Mt?"top":"left"]=`${w}px`)}})}this.label.attr({zIndex:8}).shadow(K.shadow).add()}return et&&!et.parentElement&&st.doc.body.appendChild(et),this.label}getPlayingField(){let{body:v,documentElement:I}=N,{chart:S,distance:b,outside:K}=this;return{width:K?Math.max(v.scrollWidth,I.scrollWidth,v.offsetWidth,I.offsetWidth,I.clientWidth)-2*b:S.chartWidth,height:K?Math.max(v.scrollHeight,I.scrollHeight,v.offsetHeight,I.offsetHeight,I.clientHeight):S.chartHeight}}getPosition(v,I,S){var re,le;let{distance:b,chart:K,outside:ct,pointer:et}=this,{inverted:dt,plotLeft:pt,plotTop:bt,polar:Mt}=K,{plotX:w=0,plotY:B=0}=S,tt={},nt=dt&&S.h||0,{height:x,width:y}=this.getPlayingField(),j=et.getChartPosition(),lt=Gt=>Gt*j.scaleX,rt=Gt=>Gt*j.scaleY,gt=Gt=>{let he=Gt==="x";return[Gt,he?y:x,he?v:I].concat(ct?[he?lt(v):rt(I),he?j.left-b+lt(w+pt):j.top-b+rt(B+bt),0,he?y:x]:[he?v:I,he?w+pt:B+bt,he?pt:bt,he?pt+K.plotWidth:bt+K.plotHeight])},vt=gt("y"),Ot=gt("x"),At,$t=!!S.negative;!Mt&&((le=(re=K.hoverSeries)==null?void 0:re.yAxis)!=null&&le.reversed)&&($t=!$t);let Xt=!this.followPointer&&k(S.ttBelow,!Mt&&!dt===$t),Ct=function(Gt,he,ve,Ce,Te,Ke,rn){let un=ct?Gt==="y"?rt(b):lt(b):b,Qt=(ve-Ce)/2,Kt=Cehe?Rt:Rt+nt)}},wt=function(Gt,he,ve,Ce,Te){if(Tehe-b)return!1;Tehe-Ce/2?tt[Gt]=he-Ce-2:tt[Gt]=Te-ve/2},Dt=function(Gt){[vt,Ot]=[Ot,vt],At=Gt},jt=()=>{Ct.apply(0,vt)!==!1?wt.apply(0,Ot)!==!1||At||(Dt(!0),jt()):At?tt.x=tt.y=0:(Dt(!0),jt())};return(dt&&!Mt||this.len>1)&&Dt(),jt(),tt}hide(v){let I=this;X.clearTimeout(this.hideTimer),v=k(v,this.options.hideDelay),this.isHidden||(this.hideTimer=h(function(){let S=I.getLabel();I.getLabel().animate({opacity:0},{duration:v&&150,complete:()=>{S.hide(),I.container&&I.container.remove()}}),I.isHidden=!0},v))}init(v,I){this.chart=v,this.options=I,this.crosshairs=[],this.isHidden=!0,this.split=I.split&&!v.inverted&&!v.polar,this.shared=I.shared||this.split,this.outside=k(I.outside,!!(v.scrollablePixelsX||v.scrollablePixelsY))}shouldStickOnContact(v){return!!(!this.followPointer&&this.options.stickOnContact&&(!v||this.pointer.inClass(v.target,"highcharts-tooltip")))}move(v,I,S,b){let K=this,ct=Z(!K.isHidden&&K.options.animation),et=K.followPointer||(K.len||0)>1,dt={x:v,y:I};et||(dt.anchorX=S,dt.anchorY=b),ct.step=()=>K.drawTracker(),K.getLabel().animate(dt,ct)}refresh(v,I){let{chart:S,options:b,pointer:K,shared:ct}=this,et=C(v),dt=et[0],pt=[],bt=b.format,Mt=b.formatter||this.defaultFormatter,w=S.styledMode,B={},tt=this.allowShared;if(!b.enabled||!dt.series)return;X.clearTimeout(this.hideTimer),this.allowShared=!(!D(v)&&v.series&&v.series.noSharedTooltip),tt=tt&&!this.allowShared,this.followPointer=!this.split&&dt.series.tooltipOptions.followPointer;let nt=this.getAnchor(v,I),x=nt[0],y=nt[1];ct&&this.allowShared?(K.applyInactiveState(et),et.forEach(function(rt){rt.setState("hover"),pt.push(rt.getLabelConfig())}),(B=dt.getLabelConfig()).points=pt):B=dt.getLabelConfig(),this.len=pt.length;let j=Q(bt)?Y(bt,B,S):Mt.call(B,this),lt=dt.series;if(this.distance=k(lt.tooltipOptions.distance,16),j===!1)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(j,et);else{let rt=x,gt=y;if(I&&K.isDirectTouch&&(rt=I.chartX-S.plotLeft,gt=I.chartY-S.plotTop),S.polar||lt.options.clip===!1||et.some(vt=>K.isDirectTouch||vt.series.shouldShowTooltip(rt,gt))){let vt=this.getLabel(tt&&this.tt||{});(!b.style.width||w)&&vt.css({width:(this.outside?this.getPlayingField():S.spacingBox).width+"px"}),vt.attr({class:this.getClassName(dt),text:j&&j.join?j.join(""):j}),this.outside&&vt.attr({x:M(vt.x||0,0,this.getPlayingField().width-(vt.width||0))}),w||vt.attr({stroke:b.borderColor||dt.color||lt.color||"#666666"}),this.updatePosition({plotX:x,plotY:y,negative:dt.negative,ttBelow:dt.ttBelow,h:nt[2]||0})}else{this.hide();return}}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}c(this,"refresh")}renderSplit(v,I){var he;let S=this,{chart:b,chart:{chartWidth:K,chartHeight:ct,plotHeight:et,plotLeft:dt,plotTop:pt,scrollablePixelsY:bt=0,scrollablePixelsX:Mt,styledMode:w},distance:B,options:tt,options:{positioner:nt},pointer:x}=S,{scrollLeft:y=0,scrollTop:j=0}=((he=b.scrollablePlotArea)==null?void 0:he.scrollingContainer)||{},lt=S.outside&&typeof Mt!="number"?N.documentElement.getBoundingClientRect():{left:y,right:y+K,top:j,bottom:j+ct},rt=S.getLabel(),gt=this.renderer||b.renderer,vt=!!(b.xAxis[0]&&b.xAxis[0].opposite),{left:Ot,top:At}=x.getChartPosition(),$t=pt+j,Xt=0,Ct=et-bt;function wt(ve,Ce,Te,Ke,rn=!0){let un,Qt;return Te?(un=vt?0:Ct,Qt=M(ve-Ke/2,lt.left,lt.right-Ke-(S.outside?Ot:0))):(un=Ce-$t,Qt=M(Qt=rn?ve-Ke-B:ve+B,rn?Qt:lt.left,lt.right)),{x:Qt,y:un}}Q(v)&&(v=[!1,v]);let Dt=v.slice(0,I.length+1).reduce(function(ve,Ce,Te){if(Ce!==!1&&Ce!==""){let Ke=I[Te-1]||{isHeader:!0,plotX:I[0].plotX,plotY:et,series:{}},rn=Ke.isHeader,un=rn?S:Ke.series,Qt=un.tt=function(zt,Ft,ce){var pn;let Se=zt,{isHeader:xe,series:Ze}=Ft;if(!Se){let bn={padding:tt.padding,r:tt.borderRadius};w||(bn.fill=tt.backgroundColor,bn["stroke-width"]=(pn=tt.borderWidth)!=null?pn:1),Se=gt.label("",0,0,tt[xe?"headerShape":"shape"],void 0,void 0,tt.useHTML).addClass(S.getClassName(Ft,!0,xe)).attr(bn).add(rt)}return Se.isActive=!0,Se.attr({text:ce}),w||Se.css(tt.style).attr({stroke:tt.borderColor||Ft.color||Ze.color||"#333333"}),Se}(un.tt,Ke,Ce.toString()),Kt=Qt.getBBox(),Jt=Kt.width+Qt.strokeWidth();rn&&(Xt=Kt.height,Ct+=Xt,vt&&($t-=Xt));let{anchorX:Et,anchorY:Rt}=function(zt){let Ft,ce,{isHeader:Se,plotX:xe=0,plotY:Ze=0,series:pn}=zt;if(Se)Ft=Math.max(dt+xe,dt),ce=pt+et/2;else{let{xAxis:bn,yAxis:Ln}=pn;Ft=bn.pos+M(xe,-B,bn.len+B),pn.shouldShowTooltip(0,Ln.pos-pt+Ze,{ignoreX:!0})&&(ce=Ln.pos+Ze)}return{anchorX:Ft=M(Ft,lt.left-B,lt.right+B),anchorY:ce}}(Ke);if(typeof Rt=="number"){let zt=Kt.height+1,Ft=nt?nt.call(S,Jt,zt,Ke):wt(Et,Rt,rn,Jt);ve.push({align:nt?0:void 0,anchorX:Et,anchorY:Rt,boxWidth:Jt,point:Ke,rank:k(Ft.rank,rn?1:0),size:zt,target:Ft.y,tt:Qt,x:Ft.x})}else Qt.isActive=!1}return ve},[]);!nt&&Dt.some(ve=>{let{outside:Ce}=S,Te=(Ce?Ot:0)+ve.anchorX;return TeTe})&&(Dt=Dt.map(ve=>{let{x:Ce,y:Te}=wt(ve.anchorX,ve.anchorY,ve.point.isHeader,ve.boxWidth,!1);return z(ve,{target:Te,x:Ce})})),S.cleanSplit(),T(Dt,Ct);let jt={left:Ot,right:Ot};Dt.forEach(function(ve){let{x:Ce,boxWidth:Te,isHeader:Ke}=ve;!Ke&&(S.outside&&Ot+Cejt.right&&(jt.right=Ot+Ce))}),Dt.forEach(function(ve){let{x:Ce,anchorX:Te,anchorY:Ke,pos:rn,point:{isHeader:un}}=ve,Qt={visibility:rn===void 0?"hidden":"inherit",x:Ce,y:(rn||0)+$t,anchorX:Te,anchorY:Ke};if(S.outside&&Ce0&&(un||(Qt.x=Ce+Kt,Qt.anchorX=Te+Kt),un&&(Qt.x=(jt.right-jt.left)/2,Qt.anchorX=Te+Kt))}ve.tt.attr(Qt)});let{container:re,outside:le,renderer:Gt}=S;if(le&&re&&Gt){let{width:ve,height:Ce,x:Te,y:Ke}=rt.getBBox();Gt.setSize(ve+Te,Ce+Ke,!1),re.style.left=jt.left+"px",re.style.top=At+"px"}U&&rt.attr({opacity:rt.opacity===1?.999:1})}drawTracker(){if(!this.shouldStickOnContact()){this.tracker&&(this.tracker=this.tracker.destroy());return}let v=this.chart,I=this.label,S=this.shared?v.hoverPoints:v.hoverPoint;if(!I||!S)return;let b={x:0,y:0,width:0,height:0},K=this.getAnchor(S),ct=I.getBBox();K[0]+=v.plotLeft-(I.translateX||0),K[1]+=v.plotTop-(I.translateY||0),b.x=Math.min(0,K[0]),b.y=Math.min(0,K[1]),b.width=K[0]<0?Math.max(Math.abs(K[0]),ct.width-K[0]):Math.max(Math.abs(K[0]),ct.width),b.height=K[1]<0?Math.max(Math.abs(K[1]),ct.height-Math.abs(K[1])):Math.max(Math.abs(K[1]),ct.height),this.tracker?this.tracker.attr(b):(this.tracker=I.renderer.rect(b).addClass("highcharts-tracker").add(I),v.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}styledModeFormat(v){return v.replace('style="font-size: 0.8em"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')}tooltipFooterHeaderFormatter(v,I){let S=v.series,b=S.tooltipOptions,K=S.xAxis,ct=K&&K.dateTime,et={isFooter:I,labelConfig:v},dt=b.xDateFormat,pt=b[I?"footerFormat":"headerFormat"];return c(this,"headerFormatter",et,function(bt){ct&&!dt&&it(v.key)&&(dt=ct.getXDateFormat(v.key,b.dateTimeLabelFormats)),ct&&dt&&(v.point&&v.point.tooltipDateKeys||["key"]).forEach(function(Mt){pt=pt.replace("{point."+Mt+"}","{point."+Mt+":"+dt+"}")}),S.chart.styledMode&&(pt=this.styledModeFormat(pt)),bt.text=Y(pt,{point:v,series:S},this.chart)}),et.text}update(v){this.destroy(),this.init(this.chart,W(!0,this.options,v))}updatePosition(v){let{chart:I,container:S,distance:b,options:K,pointer:ct,renderer:et}=this,{height:dt=0,width:pt=0}=this.getLabel(),{left:bt,top:Mt,scaleX:w,scaleY:B}=ct.getChartPosition(),tt=(K.positioner||this.getPosition).call(this,pt,dt,v),nt=(v.plotX||0)+I.plotLeft,x=(v.plotY||0)+I.plotTop,y;et&&S&&(K.positioner&&(tt.x+=bt-b,tt.y+=Mt-b),y=(K.borderWidth||0)+2*b+2,et.setSize(pt+y,dt+y,!1),(w!==1||B!==1)&&(O(S,{transform:`scale(${w}, ${B})`}),nt*=w,x*=B),nt+=bt-tt.x,x+=Mt-tt.y),this.move(Math.round(tt.x),Math.round(tt.y||0),nt,x)}}return(q=l||(l={})).compose=function(u){_(V,"Core.Tooltip")&&A(u,"afterInit",function(){let v=this.chart;v.options.tooltip&&(v.tooltip=new q(v,v.options.tooltip,this))})},l}),g(d,"Core/Series/Point.js",[d["Core/Renderer/HTML/AST.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{animObject:X}=R,{defaultOptions:q}=st,{format:Z}=$,{addEvent:Y,crisp:V,erase:N,extend:U,fireEvent:T,getNestedProperty:A,isArray:M,isFunction:O,isNumber:H,isObject:z,merge:c,pick:D,syncTimeout:it,removeEvent:Q,uniqueKey:W}=J;class k{animateBeforeDestroy(){let C=this,h={x:C.startXPos,opacity:0},l=C.getGraphicalProps();l.singular.forEach(function(u){C[u]=C[u].animate(u==="dataLabel"?{x:C[u].startXPos,y:C[u].startYPos,opacity:0}:h)}),l.plural.forEach(function(u){C[u].forEach(function(v){v.element&&v.animate(U({x:C.startXPos},v.startYPos?{x:v.startXPos,y:v.startYPos}:{}))})})}applyOptions(C,h){let l=this.series,u=l.options.pointValKey||l.pointValKey;return U(this,C=k.prototype.optionsToObject.call(this,C)),this.options=this.options?U(this.options,C):C,C.group&&delete this.group,C.dataLabels&&delete this.dataLabels,u&&(this.y=k.prototype.getNestedProperty.call(this,u)),this.selected&&(this.state="select"),"name"in this&&h===void 0&&l.xAxis&&l.xAxis.hasNames&&(this.x=l.xAxis.nameToX(this)),this.x===void 0&&l?this.x=h!=null?h:l.autoIncrement():H(C.x)&&l.options.relativeXValue&&(this.x=l.autoIncrement(C.x)),this.isNull=this.isValid&&!this.isValid(),this.formatPrefix=this.isNull?"null":"point",this}destroy(){if(!this.destroyed){let C=this,h=C.series,l=h.chart,u=h.options.dataSorting,v=l.hoverPoints,I=X(C.series.chart.renderer.globalAnimation),S=()=>{for(let b in(C.graphic||C.graphics||C.dataLabel||C.dataLabels)&&(Q(C),C.destroyElements()),C)delete C[b]};C.legendItem&&l.legend.destroyItem(C),v&&(C.setState(),N(v,C),v.length||(l.hoverPoints=null)),C===l.hoverPoint&&C.onMouseOut(),u&&u.enabled?(this.animateBeforeDestroy(),it(S,I.duration)):S(),l.pointCount--}this.destroyed=!0}destroyElements(C){let h=this,l=h.getGraphicalProps(C);l.singular.forEach(function(u){h[u]=h[u].destroy()}),l.plural.forEach(function(u){h[u].forEach(function(v){v&&v.element&&v.destroy()}),delete h[u]})}firePointEvent(C,h,l){let u=this,v=this.series.options;u.manageEvent(C),C==="click"&&v.allowPointSelect&&(l=function(I){!u.destroyed&&u.select&&u.select(null,I.ctrlKey||I.metaKey||I.shiftKey)}),T(u,C,h,l)}getClassName(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(this.colorIndex!==void 0?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")}getGraphicalProps(C){let h,l,u=this,v=[],I={singular:[],plural:[]};for((C=C||{graphic:1,dataLabel:1}).graphic&&v.push("graphic","connector"),C.dataLabel&&v.push("dataLabel","dataLabelPath","dataLabelUpper"),l=v.length;l--;)u[h=v[l]]&&I.singular.push(h);return["graphic","dataLabel"].forEach(function(S){let b=S+"s";C[S]&&u[b]&&I.plural.push(b)}),I}getLabelConfig(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}}getNestedProperty(C){return C?C.indexOf("custom.")===0?A(C,this.options):this[C]:void 0}getZone(){let C=this.series,h=C.zones,l=C.zoneAxis||"y",u,v=0;for(u=h[0];this[l]>=u.value;)u=h[++v];return this.nonZonedColor||(this.nonZonedColor=this.color),u&&u.color&&!this.options.color?this.color=u.color:this.color=this.nonZonedColor,u}hasNewShapeType(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType}constructor(C,h,l){var u;this.formatPrefix="point",this.visible=!0,this.series=C,this.applyOptions(h,l),(u=this.id)!=null||(this.id=W()),this.resolveColor(),C.chart.pointCount++,T(this,"afterInit")}isValid(){return(H(this.x)||this.x instanceof Date)&&H(this.y)}optionsToObject(C){let h=this.series,l=h.options.keys,u=l||h.pointArrayMap||["y"],v=u.length,I={},S,b=0,K=0;if(H(C)||C===null)I[u[0]]=C;else if(M(C))for(!l&&C.length>v&&((S=typeof C[0])=="string"?I.name=C[0]:S==="number"&&(I.x=C[0]),b++);K0?k.prototype.setNestedProperty(I,C[b],u[K]):I[u[K]]=C[b]),b++,K++;else typeof C=="object"&&(I=C,C.dataLabels&&(h.hasDataLabels=()=>!0),C.marker&&(h._hasPointMarkers=!0));return I}pos(C,h=this.plotY){if(!this.destroyed){let{plotX:l,series:u}=this,{chart:v,xAxis:I,yAxis:S}=u,b=0,K=0;if(H(l)&&H(h))return C&&(b=I?I.pos:v.plotLeft,K=S?S.pos:v.plotTop),v.inverted&&I&&S?[S.len-h+K,I.len-l+b]:[l+b,h+K]}}resolveColor(){let C=this.series,h=C.chart.options.chart,l=C.chart.styledMode,u,v,I=h.colorCount,S;delete this.nonZonedColor,C.options.colorByPoint?(l||(u=(v=C.options.colors||C.chart.options.colors)[C.colorCounter],I=v.length),S=C.colorCounter,C.colorCounter++,C.colorCounter===I&&(C.colorCounter=0)):(l||(u=C.color),S=C.colorIndex),this.colorIndex=D(this.options.colorIndex,S),this.color=D(this.options.color,u)}setNestedProperty(C,h,l){return l.split(".").reduce(function(u,v,I,S){let b=S.length-1===I;return u[v]=b?h:z(u[v],!0)?u[v]:{},u[v]},C),C}shouldDraw(){return!this.isNull}tooltipFormatter(C){let h=this.series,l=h.tooltipOptions,u=D(l.valueDecimals,""),v=l.valuePrefix||"",I=l.valueSuffix||"";return h.chart.styledMode&&(C=h.chart.tooltip.styledModeFormat(C)),(h.pointArrayMap||["y"]).forEach(function(S){S="{point."+S,(v||I)&&(C=C.replace(RegExp(S+"}","g"),v+S+"}"+I)),C=C.replace(RegExp(S+"}","g"),S+":,."+u+"f}")}),Z(C,{point:this,series:this.series},h.chart)}update(C,h,l,u){let v,I=this,S=I.series,b=I.graphic,K=S.chart,ct=S.options;function et(){I.applyOptions(C);let dt=b&&I.hasMockGraphic,pt=I.y===null?!dt:dt;b&&pt&&(I.graphic=b.destroy(),delete I.hasMockGraphic),z(C,!0)&&(b&&b.element&&C&&C.marker&&C.marker.symbol!==void 0&&(I.graphic=b.destroy()),C!=null&&C.dataLabels&&I.dataLabel&&(I.dataLabel=I.dataLabel.destroy())),v=I.index,S.updateParallelArrays(I,v),ct.data[v]=z(ct.data[v],!0)||z(C,!0)?I.options:D(C,ct.data[v]),S.isDirty=S.isDirtyData=!0,!S.fixedBox&&S.hasCartesianSeries&&(K.isDirtyBox=!0),ct.legendType==="point"&&(K.isDirtyLegend=!0),h&&K.redraw(l)}h=D(h,!0),u===!1?et():I.firePointEvent("update",{options:C},et)}remove(C,h){this.series.removePoint(this.series.data.indexOf(this),C,h)}select(C,h){let l=this,u=l.series,v=u.chart;C=D(C,!l.selected),this.selectedStaging=C,l.firePointEvent(C?"select":"unselect",{accumulate:h},function(){l.selected=l.options.selected=C,u.options.data[u.data.indexOf(l)]=l.options,l.setState(C&&"select"),h||v.getSelectedPoints().forEach(function(I){let S=I.series;I.selected&&I!==l&&(I.selected=I.options.selected=!1,S.options.data[S.data.indexOf(I)]=I.options,I.setState(v.hoverPoints&&S.options.inactiveOtherPoints?"inactive":""),I.firePointEvent("unselect"))})}),delete this.selectedStaging}onMouseOver(C){let{inverted:h,pointer:l}=this.series.chart;l&&(C=C?l.normalize(C):l.getChartCoordinatesFromPoint(this,h),l.runPointActions(C,this))}onMouseOut(){let C=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(C.hoverPoints||[]).forEach(function(h){h.setState()}),C.hoverPoints=C.hoverPoint=null}manageEvent(C){var u,v,I,S,b,K;let h=c(this.series.options.point,this.options),l=(u=h.events)==null?void 0:u[C];O(l)&&(!((v=this.hcEvents)!=null&&v[C])||((S=(I=this.hcEvents)==null?void 0:I[C])==null?void 0:S.map(ct=>ct.fn).indexOf(l))===-1)?((b=this.importedUserEvent)==null||b.call(this),this.importedUserEvent=Y(this,C,l)):this.importedUserEvent&&!l&&((K=this.hcEvents)!=null&&K[C])&&(Q(this,C),delete this.hcEvents[C],Object.keys(this.hcEvents)||delete this.importedUserEvent)}setState(C,h){var j;let l=this.series,u=this.state,v=l.options.states[C||"normal"]||{},I=q.plotOptions[l.type].marker&&l.options.marker,S=I&&I.enabled===!1,b=I&&I.states&&I.states[C||"normal"]||{},K=b.enabled===!1,ct=this.marker||{},et=l.chart,dt=I&&l.markerAttribs,pt=l.halo,bt,Mt,w,B=l.stateMarkerGraphic,tt;if((C=C||"")===this.state&&!h||this.selected&&C!=="select"||v.enabled===!1||C&&(K||S&&b.enabled===!1)||C&&ct.states&&ct.states[C]&&ct.states[C].enabled===!1)return;if(this.state=C,dt&&(bt=l.markerAttribs(this,C)),this.graphic&&!this.hasMockGraphic){if(u&&this.graphic.removeClass("highcharts-point-"+u),C&&this.graphic.addClass("highcharts-point-"+C),!et.styledMode){Mt=l.pointAttribs(this,C),w=D(et.options.chart.animation,v.animation);let lt=Mt.opacity;l.options.inactiveOtherPoints&&H(lt)&&(this.dataLabels||[]).forEach(function(rt){rt&&!rt.hasClass("highcharts-data-label-hidden")&&(rt.animate({opacity:lt},w),rt.connector&&rt.connector.animate({opacity:lt},w))}),this.graphic.animate(Mt,w)}bt&&this.graphic.animate(bt,D(et.options.chart.animation,b.animation,I.animation)),B&&B.hide()}else C&&b&&(tt=ct.symbol||l.symbol,B&&B.currentSymbol!==tt&&(B=B.destroy()),bt&&(B?B[h?"animate":"attr"]({x:bt.x,y:bt.y}):tt&&(l.stateMarkerGraphic=B=et.renderer.symbol(tt,bt.x,bt.y,bt.width,bt.height).add(l.markerGroup),B.currentSymbol=tt)),!et.styledMode&&B&&this.state!=="inactive"&&B.attr(l.pointAttribs(this,C))),B&&(B[C&&this.isInside?"show":"hide"](),B.element.point=this,B.addClass(this.getClassName(),!0));let nt=v.halo,x=this.graphic||B,y=x&&x.visibility||"inherit";nt&&nt.size&&x&&y!=="hidden"&&!this.isCluster?(pt||(l.halo=pt=et.renderer.path().add(x.parentGroup)),pt.show()[h?"animate":"attr"]({d:this.haloPath(nt.size)}),pt.attr({class:"highcharts-halo highcharts-color-"+D(this.colorIndex,l.colorIndex)+(this.className?" "+this.className:""),visibility:y,zIndex:-1}),pt.point=this,et.styledMode||pt.attr(U({fill:this.color||l.color,"fill-opacity":nt.opacity},L.filterUserAttributes(nt.attributes||{})))):(j=pt==null?void 0:pt.point)!=null&&j.haloPath&&!pt.point.destroyed&&pt.animate({d:pt.point.haloPath(0)},null,pt.hide),T(this,"afterSetState",{state:C})}haloPath(C){let h=this.pos();return h?this.series.chart.renderer.symbols.circle(V(h[0],1)-C,h[1]-C,2*C,2*C):[]}}return k}),g(d,"Core/Pointer.js",[d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{parse:J}=L,{charts:X,composed:q,isTouchDevice:Z}=R,{addEvent:Y,attr:V,css:N,extend:U,find:T,fireEvent:A,isNumber:M,isObject:O,objectEach:H,offset:z,pick:c,pushUnique:D,splat:it}=st;class Q{applyInactiveState(k){let _=[],C;(k||[]).forEach(function(h){C=h.series,_.push(C),C.linkedParent&&_.push(C.linkedParent),C.linkedSeries&&(_=_.concat(C.linkedSeries)),C.navigatorSeries&&_.push(C.navigatorSeries)}),this.chart.series.forEach(function(h){_.indexOf(h)===-1?h.setState("inactive",!0):h.options.inactiveOtherPoints&&h.setAllPointsToState("inactive")})}destroy(){let k=this;this.eventsToUnbind.forEach(_=>_()),this.eventsToUnbind=[],!R.chartCount&&(Q.unbindDocumentMouseUp&&Q.unbindDocumentMouseUp.forEach(_=>_()),Q.unbindDocumentTouchEnd&&(Q.unbindDocumentTouchEnd=Q.unbindDocumentTouchEnd())),clearInterval(k.tooltipTimeout),H(k,function(_,C){k[C]=void 0})}getSelectionMarkerAttrs(k,_){let C={args:{chartX:k,chartY:_},attrs:{},shapeType:"rect"};return A(this,"getSelectionMarkerAttrs",C,h=>{let l,{chart:u,zoomHor:v,zoomVert:I}=this,{mouseDownX:S=0,mouseDownY:b=0}=u,K=h.attrs;K.x=u.plotLeft,K.y=u.plotTop,K.width=v?1:u.plotWidth,K.height=I?1:u.plotHeight,v&&(l=k-S,K.width=Math.max(1,Math.abs(l)),K.x=(l>0?0:l)+S),I&&(l=_-b,K.height=Math.max(1,Math.abs(l)),K.y=(l>0?0:l)+b)}),C}drag(k){let{chart:_}=this,{mouseDownX:C=0,mouseDownY:h=0}=_,{panning:l,panKey:u,selectionMarkerFill:v}=_.options.chart,I=_.plotLeft,S=_.plotTop,b=_.plotWidth,K=_.plotHeight,ct=O(l)?l.enabled:l,et=u&&k[`${u}Key`],dt=k.chartX,pt=k.chartY,bt,Mt=this.selectionMarker;if((!Mt||!Mt.touch)&&(dtI+b&&(dt=I+b),ptS+K&&(pt=S+K),this.hasDragged=Math.sqrt(Math.pow(C-dt,2)+Math.pow(h-pt,2)),this.hasDragged>10)){bt=_.isInsidePlot(C-I,h-S,{visiblePlotOnly:!0});let{shapeType:w,attrs:B}=this.getSelectionMarkerAttrs(dt,pt);(_.hasCartesianSeries||_.mapView)&&this.hasZoom&&bt&&!et&&!Mt&&(this.selectionMarker=Mt=_.renderer[w](),Mt.attr({class:"highcharts-selection-marker",zIndex:7}).add(),_.styledMode||Mt.attr({fill:v||J("#334eff").setOpacity(.25).get()})),Mt&&Mt.attr(B),bt&&!Mt&&ct&&_.pan(k,l)}}dragStart(k){let _=this.chart;_.mouseIsDown=k.type,_.cancelClick=!1,_.mouseDownX=k.chartX,_.mouseDownY=k.chartY}getSelectionBox(k){let _={args:{marker:k},result:k.getBBox()};return A(this,"getSelectionBox",_),_.result}drop(k){let _,{chart:C,selectionMarker:h}=this;for(let l of C.axes)l.isPanning&&(l.isPanning=!1,(l.options.startOnTick||l.options.endOnTick||l.series.some(u=>u.boosted))&&(l.forceRedraw=!0,l.setExtremes(l.userMin,l.userMax,!1),_=!0));if(_&&C.redraw(),h&&k){if(this.hasDragged){let l=this.getSelectionBox(h);C.transform({axes:C.axes.filter(u=>u.zoomEnabled&&(u.coll==="xAxis"&&this.zoomX||u.coll==="yAxis"&&this.zoomY)),selection:xr({originalEvent:k,xAxis:[],yAxis:[]},l),from:l})}M(C.index)&&(this.selectionMarker=h.destroy())}C&&M(C.index)&&(N(C.container,{cursor:C._cursor}),C.cancelClick=this.hasDragged>10,C.mouseIsDown=!1,this.hasDragged=0,this.pinchDown=[])}findNearestKDPoint(k,_,C){let h;return k.forEach(function(l){let u=!(l.noSharedTooltip&&_)&&0>l.options.findNearestPointBy.indexOf("y"),v=l.searchPoint(C,u);O(v,!0)&&v.series&&(!O(h,!0)||function(I,S){var et,dt;let b=I.distX-S.distX,K=I.dist-S.dist,ct=((et=S.series.group)==null?void 0:et.zIndex)-((dt=I.series.group)==null?void 0:dt.zIndex);return b!==0&&_?b:K!==0?K:ct!==0?ct:I.series.index>S.series.index?-1:1}(h,v)>0)&&(h=v)}),h}getChartCoordinatesFromPoint(k,_){var u,v;let{xAxis:C,yAxis:h}=k.series,l=k.shapeArgs;if(C&&h){let I=(v=(u=k.clientX)!=null?u:k.plotX)!=null?v:0,S=k.plotY||0;return k.isNode&&l&&M(l.x)&&M(l.y)&&(I=l.x,S=l.y),_?{chartX:h.len+h.pos-S,chartY:C.len+C.pos-I}:{chartX:I+C.pos,chartY:S+h.pos}}if(l&&l.x&&l.y)return{chartX:l.x,chartY:l.y}}getChartPosition(){if(this.chartPosition)return this.chartPosition;let{container:k}=this.chart,_=z(k);this.chartPosition={left:_.left,top:_.top,scaleX:1,scaleY:1};let{offsetHeight:C,offsetWidth:h}=k;return h>2&&C>2&&(this.chartPosition.scaleX=_.width/h,this.chartPosition.scaleY=_.height/C),this.chartPosition}getCoordinates(k){let _={xAxis:[],yAxis:[]};for(let C of this.chart.axes)_[C.isXAxis?"xAxis":"yAxis"].push({axis:C,value:C.toValue(k[C.horiz?"chartX":"chartY"])});return _}getHoverData(k,_,C,h,l,u){let v=[],I=function(et){return et.visible&&!(!l&&et.directTouch)&&c(et.options.enableMouseTracking,!0)},S=_,b,K={chartX:u?u.chartX:void 0,chartY:u?u.chartY:void 0,shared:l};A(this,"beforeGetHoverData",K),b=S&&!S.stickyTracking?[S]:C.filter(et=>et.stickyTracking&&(K.filter||I)(et));let ct=h&&k||!u?k:this.findNearestKDPoint(b,l,u);return S=ct&&ct.series,ct&&(l&&!S.noSharedTooltip?(b=C.filter(function(et){return K.filter?K.filter(et):I(et)&&!et.noSharedTooltip})).forEach(function(et){let dt=T(et.points,function(pt){return pt.x===ct.x&&!pt.isNull});O(dt)&&(et.boosted&&et.boost&&(dt=et.boost.getPoint(dt)),v.push(dt))}):v.push(ct)),A(this,"afterGetHoverData",K={hoverPoint:ct}),{hoverPoint:K.hoverPoint,hoverSeries:S,hoverPoints:v}}getPointFromEvent(k){let _=k.target,C;for(;_&&!C;)C=_.point,_=_.parentNode;return C}onTrackerMouseOut(k){let _=this.chart,C=k.relatedTarget,h=_.hoverSeries;this.isDirectTouch=!1,!h||!C||h.stickyTracking||this.inClass(C,"highcharts-tooltip")||this.inClass(C,"highcharts-series-"+h.index)&&this.inClass(C,"highcharts-tracker")||h.onMouseOut()}inClass(k,_){let C=k,h;for(;C;){if(h=V(C,"class")){if(h.indexOf(_)!==-1)return!0;if(h.indexOf("highcharts-container")!==-1)return!1}C=C.parentElement}}constructor(k,_){var C;this.hasDragged=0,this.pointerCaptureEventsToUnbind=[],this.eventsToUnbind=[],this.options=_,this.chart=k,this.runChartClick=!!((C=_.chart.events)!=null&&C.click),this.pinchDown=[],this.setDOMEvents(),A(this,"afterInit")}normalize(k,_){let C=k.touches,h=C?C.length?C.item(0):c(C.changedTouches,k.changedTouches)[0]:k;_||(_=this.getChartPosition());let l=h.pageX-_.left,u=h.pageY-_.top;return U(k,{chartX:Math.round(l/=_.scaleX),chartY:Math.round(u/=_.scaleY)})}onContainerClick(k){let _=this.chart,C=_.hoverPoint,h=this.normalize(k),l=_.plotLeft,u=_.plotTop;!_.cancelClick&&(C&&this.inClass(h.target,"highcharts-tracker")?(A(C.series,"click",U(h,{point:C})),_.hoverPoint&&C.firePointEvent("click",h)):(U(h,this.getCoordinates(h)),_.isInsidePlot(h.chartX-l,h.chartY-u,{visiblePlotOnly:!0})&&A(_,"click",h)))}onContainerMouseDown(k){var C;let _=(1&(k.buttons||k.button))==1;k=this.normalize(k),R.isFirefox&&k.button!==0&&this.onContainerMouseMove(k),(k.button===void 0||_)&&(this.zoomOption(k),_&&((C=k.preventDefault)==null||C.call(k)),this.dragStart(k))}onContainerMouseLeave(k){let{pointer:_}=X[c(Q.hoverChartIndex,-1)]||{};k=this.normalize(k),this.onContainerMouseMove(k),_&&!this.inClass(k.relatedTarget,"highcharts-tooltip")&&(_.reset(),_.chartPosition=void 0)}onContainerMouseEnter(){delete this.chartPosition}onContainerMouseMove(k){let _=this.chart,C=_.tooltip,h=this.normalize(k);this.setHoverChartIndex(k),(_.mouseIsDown==="mousedown"||this.touchSelect(h))&&this.drag(h),!_.openMenu&&(this.inClass(h.target,"highcharts-tracker")||_.isInsidePlot(h.chartX-_.plotLeft,h.chartY-_.plotTop,{visiblePlotOnly:!0}))&&!(C&&C.shouldStickOnContact(h))&&(this.inClass(h.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(h))}onDocumentTouchEnd(k){this.onDocumentMouseUp(k)}onContainerTouchMove(k){this.touchSelect(k)?this.onContainerMouseMove(k):this.touch(k)}onContainerTouchStart(k){this.touchSelect(k)?this.onContainerMouseDown(k):(this.zoomOption(k),this.touch(k,!0))}onDocumentMouseMove(k){let _=this.chart,C=_.tooltip,h=this.chartPosition,l=this.normalize(k,h);!h||_.isInsidePlot(l.chartX-_.plotLeft,l.chartY-_.plotTop,{visiblePlotOnly:!0})||C&&C.shouldStickOnContact(l)||l.target!==_.container.ownerDocument&&this.inClass(l.target,"highcharts-tracker")||this.reset()}onDocumentMouseUp(k){var _,C;(C=(_=X[c(Q.hoverChartIndex,-1)])==null?void 0:_.pointer)==null||C.drop(k)}pinch(k){let _=this,{chart:C,hasZoom:h,lastTouches:l}=_,u=[].map.call(k.touches||[],K=>_.normalize(K)),v=u.length,I=v===1&&(_.inClass(k.target,"highcharts-tracker")&&C.runTrackerClick||_.runChartClick),S=C.tooltip,b=v===1&&c(S==null?void 0:S.options.followTouchMove,!0);v>1?_.initiated=!0:b&&(_.initiated=!1),h&&_.initiated&&!I&&k.cancelable!==!1&&k.preventDefault(),k.type==="touchstart"?(_.pinchDown=u,_.res=!0,C.mouseDownX=k.chartX):b?this.runPointActions(_.normalize(k)):l&&(A(C,"touchpan",{originalEvent:k,touches:u},()=>{let K=ct=>{let et=ct[0],dt=ct[1]||et;return{x:et.chartX,y:et.chartY,width:dt.chartX-et.chartX,height:dt.chartY-et.chartY}};C.transform({axes:C.axes.filter(ct=>ct.zoomEnabled&&(this.zoomHor&&ct.horiz||this.zoomVert&&!ct.horiz)),to:K(u),from:K(l),trigger:k.type})}),_.res&&(_.res=!1,this.reset(!1,0))),_.lastTouches=u}reset(k,_){let C=this.chart,h=C.hoverSeries,l=C.hoverPoint,u=C.hoverPoints,v=C.tooltip,I=v&&v.shared?u:l;k&&I&&it(I).forEach(function(S){S.series.isCartesian&&S.plotX===void 0&&(k=!1)}),k?v&&I&&it(I).length&&(v.refresh(I),v.shared&&u?u.forEach(function(S){S.setState(S.state,!0),S.series.isCartesian&&(S.series.xAxis.crosshair&&S.series.xAxis.drawCrosshair(null,S),S.series.yAxis.crosshair&&S.series.yAxis.drawCrosshair(null,S))}):l&&(l.setState(l.state,!0),C.axes.forEach(function(S){S.crosshair&&l.series[S.coll]===S&&S.drawCrosshair(null,l)}))):(l&&l.onMouseOut(),u&&u.forEach(function(S){S.setState()}),h&&h.onMouseOut(),v&&v.hide(_),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),C.axes.forEach(function(S){S.hideCrosshair()}),C.hoverPoints=C.hoverPoint=void 0)}runPointActions(k,_,C){let h=this.chart,l=h.series,u=h.tooltip&&h.tooltip.options.enabled?h.tooltip:void 0,v=!!u&&u.shared,I=_||h.hoverPoint,S=I&&I.series||h.hoverSeries,b=(!k||k.type!=="touchmove")&&(!!_||S&&S.directTouch&&this.isDirectTouch),K=this.getHoverData(I,S,l,b,v,k);I=K.hoverPoint,S=K.hoverSeries;let ct=K.hoverPoints,et=S&&S.tooltipOptions.followPointer&&!S.tooltipOptions.split,dt=v&&S&&!S.noSharedTooltip;if(I&&(C||I!==h.hoverPoint||u&&u.isHidden)){if((h.hoverPoints||[]).forEach(function(pt){ct.indexOf(pt)===-1&&pt.setState()}),h.hoverSeries!==S&&S.onMouseOver(),this.applyInactiveState(ct),(ct||[]).forEach(function(pt){pt.setState("hover")}),h.hoverPoint&&h.hoverPoint.firePointEvent("mouseOut"),!I.series)return;h.hoverPoints=ct,h.hoverPoint=I,I.firePointEvent("mouseOver",void 0,()=>{u&&I&&u.refresh(dt?ct:I,k)})}else if(et&&u&&!u.isHidden){let pt=u.getAnchor([{}],k);h.isInsidePlot(pt[0],pt[1],{visiblePlotOnly:!0})&&u.updatePosition({plotX:pt[0],plotY:pt[1]})}this.unDocMouseMove||(this.unDocMouseMove=Y(h.container.ownerDocument,"mousemove",pt=>{var bt,Mt,w;return(w=(Mt=X[(bt=Q.hoverChartIndex)!=null?bt:-1])==null?void 0:Mt.pointer)==null?void 0:w.onDocumentMouseMove(pt)}),this.eventsToUnbind.push(this.unDocMouseMove)),h.axes.forEach(function(pt){let bt,Mt=c((pt.crosshair||{}).snap,!0);!Mt||(bt=h.hoverPoint)&&bt.series[pt.coll]===pt||(bt=T(ct,w=>w.series&&w.series[pt.coll]===pt)),bt||!Mt?pt.drawCrosshair(k,bt):pt.hideCrosshair()})}setDOMEvents(){let k=this.chart.container,_=k.ownerDocument;k.onmousedown=this.onContainerMouseDown.bind(this),k.onmousemove=this.onContainerMouseMove.bind(this),k.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(Y(k,"mouseenter",this.onContainerMouseEnter.bind(this)),Y(k,"mouseleave",this.onContainerMouseLeave.bind(this))),Q.unbindDocumentMouseUp||(Q.unbindDocumentMouseUp=[]),Q.unbindDocumentMouseUp.push(Y(_,"mouseup",this.onDocumentMouseUp.bind(this)));let C=this.chart.renderTo.parentElement;for(;C&&C.tagName!=="BODY";)this.eventsToUnbind.push(Y(C,"scroll",()=>{delete this.chartPosition})),C=C.parentElement;this.eventsToUnbind.push(Y(k,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1}),Y(k,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),Q.unbindDocumentTouchEnd||(Q.unbindDocumentTouchEnd=Y(_,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})),this.setPointerCapture(),Y(this.chart,"redraw",this.setPointerCapture.bind(this))}setPointerCapture(){var l,u;if(!Z)return;let k=this.pointerCaptureEventsToUnbind,_=this.chart,C=_.container,h=c((l=_.options.tooltip)==null?void 0:l.followTouchMove,!0)&&_.series.some(v=>v.options.findNearestPointBy.indexOf("y")>-1);!this.hasPointerCapture&&h?(k.push(Y(C,"pointerdown",v=>{var I,S;(I=v.target)!=null&&I.hasPointerCapture(v.pointerId)&&((S=v.target)==null||S.releasePointerCapture(v.pointerId))}),Y(C,"pointermove",v=>{var I,S;(S=(I=_.pointer)==null?void 0:I.getPointFromEvent(v))==null||S.onMouseOver(v)})),_.styledMode||N(C,{"touch-action":"none"}),C.className+=" highcharts-no-touch-action",this.hasPointerCapture=!0):this.hasPointerCapture&&!h&&(k.forEach(v=>v()),k.length=0,_.styledMode||N(C,{"touch-action":c((u=_.options.chart.style)==null?void 0:u["touch-action"],"manipulation")}),C.className=C.className.replace(" highcharts-no-touch-action",""),this.hasPointerCapture=!1)}setHoverChartIndex(k){var h;let _=this.chart,C=R.charts[c(Q.hoverChartIndex,-1)];if(C&&C!==_){let l={relatedTarget:_.container};k&&!(k!=null&&k.relatedTarget)&&(k=xr(xr({},l),k)),(h=C.pointer)==null||h.onContainerMouseLeave(k||l)}C&&C.mouseIsDown||(Q.hoverChartIndex=_.index)}touch(k,_){let C,{chart:h,pinchDown:l=[]}=this;this.setHoverChartIndex(),(k=this.normalize(k)).touches.length===1?h.isInsidePlot(k.chartX-h.plotLeft,k.chartY-h.plotTop,{visiblePlotOnly:!0})&&!h.openMenu?(_&&this.runPointActions(k),k.type==="touchmove"&&(C=!!l[0]&&Math.pow(l[0].chartX-k.chartX,2)+Math.pow(l[0].chartY-k.chartY,2)>=16),c(C,!0)&&this.pinch(k)):_&&this.reset():k.touches.length===2&&this.pinch(k)}touchSelect(k){return!!(this.chart.zooming.singleTouch&&k.touches&&k.touches.length===1)}zoomOption(k){let _=this.chart,C=_.inverted,h=_.zooming.type||"",l,u;/touch/.test(k.type)&&(h=c(_.zooming.pinchType,h)),this.zoomX=l=/x/.test(h),this.zoomY=u=/y/.test(h),this.zoomHor=l&&!C||u&&C,this.zoomVert=u&&!C||l&&C,this.hasZoom=l||u}}return($=Q||(Q={})).compose=function(W){D(q,"Core.Pointer")&&Y(W,"beforeRender",function(){this.pointer=new $(this,this.options)})},Q}),g(d,"Core/Legend/LegendSymbol.js",[d["Core/Utilities.js"]],function(L){var R;let{extend:st,merge:$,pick:J}=L;return function(X){function q(Z,Y,V){var C,h;let N=this.legendItem=this.legendItem||{},{chart:U,options:T}=this,{baseline:A=0,symbolWidth:M,symbolHeight:O}=Z,H=this.symbol||"circle",z=O/2,c=U.renderer,D=N.group,it=A-Math.round((((C=Z.fontMetrics)==null?void 0:C.b)||O)*(V?.4:.3)),Q={},W,k=T.marker,_=0;if(U.styledMode||(Q["stroke-width"]=Math.min(T.lineWidth||0,24),T.dashStyle?Q.dashstyle=T.dashStyle:T.linecap==="square"||(Q["stroke-linecap"]="round")),N.line=c.path().addClass("highcharts-graph").attr(Q).add(D),V&&(N.area=c.path().addClass("highcharts-area").add(D)),Q["stroke-linecap"]&&(_=Math.min(N.line.strokeWidth(),M)/2),M){let l=[["M",_,it],["L",M-_,it]];N.line.attr({d:l}),(h=N.area)==null||h.attr({d:[...l,["L",M-_,A],["L",_,A]]})}if(k&&k.enabled!==!1&&M){let l=Math.min(J(k.radius,z),z);H.indexOf("url")===0&&(k=$(k,{width:O,height:O}),l=0),N.symbol=W=c.symbol(H,M/2-l,it-l,2*l,2*l,st({context:"legend"},k)).addClass("highcharts-point").add(D),W.isMarker=!0}}X.areaMarker=function(Z,Y){q.call(this,Z,Y,!0)},X.lineMarker=q,X.rectangle=function(Z,Y){let V=Y.legendItem||{},N=Z.options,U=Z.symbolHeight,T=N.squareSymbol,A=T?U:Z.symbolWidth;V.symbol=this.chart.renderer.rect(T?(Z.symbolWidth-U)/2:0,Z.baseline-U+1,A,U,J(Z.options.symbolRadius,U/2)).addClass("highcharts-point").attr({zIndex:3}).add(V.group)}}(R||(R={})),R}),g(d,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},enableMouseTracking:!0,events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:150},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:"#cccccc",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",borderWidth:0,defer:!0,formatter:function(){let{numberFormatter:L}=this.series.chart;return typeof this.y!="number"?"":L(this.y,-1)},padding:5,style:{fontSize:"0.7em",fontWeight:"bold",color:"contrast",textOutline:"1px contrast"},verticalAlign:"bottom",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},hover:{animation:{duration:150},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:150},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),g(d,"Core/Series/SeriesRegistry.js",[d["Core/Globals.js"],d["Core/Defaults.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{defaultOptions:X}=R,{extend:q,extendClass:Z,merge:Y}=$;return function(V){function N(U,T){let A=X.plotOptions||{},M=T.defaultOptions,O=T.prototype;return O.type=U,O.pointClass||(O.pointClass=st),!V.seriesTypes[U]&&(M&&(A[U]=M),V.seriesTypes[U]=T,!0)}V.seriesTypes=L.seriesTypes,V.registerSeriesType=N,V.seriesType=function(U,T,A,M,O){let H=X.plotOptions||{};if(T=T||"",H[U]=Y(H[T],A),delete V.seriesTypes[U],N(U,Z(V.seriesTypes[T]||function(){},M)),V.seriesTypes[U].prototype.type=U,O){class z extends st{}q(z.prototype,O),V.seriesTypes[U].prototype.pointClass=z}return V.seriesTypes[U]}}(J||(J={})),J}),g(d,"Core/Series/Series.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Defaults.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Series/Point.js"],d["Core/Series/SeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let{animObject:N,setAnimation:U}=L,{defaultOptions:T}=R,{registerEventOptions:A}=st,{svg:M,win:O}=$,{seriesTypes:H}=Z,{arrayMax:z,arrayMin:c,clamp:D,correctFloat:it,crisp:Q,defined:W,destroyObjectProperties:k,diffObjects:_,erase:C,error:h,extend:l,find:u,fireEvent:v,getClosestDistance:I,getNestedProperty:S,insertItem:b,isArray:K,isNumber:ct,isString:et,merge:dt,objectEach:pt,pick:bt,removeEvent:Mt,splat:w,syncTimeout:B}=V;class tt{constructor(){this.zoneAxis="y"}init(x,y){let j;v(this,"init",{options:y});let lt=this,rt=x.series;this.eventsToUnbind=[],lt.chart=x,lt.options=lt.setOptions(y);let gt=lt.options,vt=gt.visible!==!1;lt.linkedSeries=[],lt.bindAxes(),l(lt,{name:gt.name,state:"",visible:vt,selected:gt.selected===!0}),A(this,gt);let Ot=gt.events;(Ot&&Ot.click||gt.point&>.point.events&>.point.events.click||gt.allowPointSelect)&&(x.runTrackerClick=!0),lt.getColor(),lt.getSymbol(),lt.parallelArrays.forEach(function(At){lt[At+"Data"]||(lt[At+"Data"]=[])}),lt.isCartesian&&(x.hasCartesianSeries=!0),rt.length&&(j=rt[rt.length-1]),lt._i=bt(j&&j._i,-1)+1,lt.opacity=lt.options.opacity,x.orderItems("series",b(this,rt)),gt.dataSorting&>.dataSorting.enabled?lt.setDataSortingOptions():lt.points||lt.data||lt.setData(gt.data,!1),v(this,"afterInit")}is(x){return H[x]&&this instanceof H[x]}bindAxes(){let x,y=this,j=y.options,lt=y.chart;v(this,"bindAxes",null,function(){(y.axisTypes||[]).forEach(function(rt){(lt[rt]||[]).forEach(function(gt){x=gt.options,(bt(j[rt],0)===gt.index||j[rt]!==void 0&&j[rt]===x.id)&&(b(y,gt.series),y[rt]=gt,gt.isDirty=!0)}),y[rt]||y.optionalAxis===rt||h(18,!0,lt)})}),v(this,"afterBindAxes")}updateParallelArrays(x,y,j){let lt=x.series,rt=ct(y)?function(gt){let vt=gt==="y"&<.toYData?lt.toYData(x):x[gt];lt[gt+"Data"][y]=vt}:function(gt){Array.prototype[y].apply(lt[gt+"Data"],j)};lt.parallelArrays.forEach(rt)}hasData(){return this.visible&&this.dataMax!==void 0&&this.dataMin!==void 0||this.visible&&this.yData&&this.yData.length>0}hasMarkerChanged(x,y){let j=x.marker,lt=y.marker||{};return j&&(lt.enabled&&!j.enabled||lt.symbol!==j.symbol||lt.height!==j.height||lt.width!==j.width)}autoIncrement(x){let y=this.options,j=y.pointIntervalUnit,lt=y.relativeXValue,rt=this.chart.time,gt=this.xIncrement,vt,Ot;return gt=bt(gt,y.pointStart,0),this.pointInterval=Ot=bt(this.pointInterval,y.pointInterval,1),lt&&ct(x)&&(Ot*=x),j&&(vt=new rt.Date(gt),j==="day"?rt.set("Date",vt,rt.get("Date",vt)+Ot):j==="month"?rt.set("Month",vt,rt.get("Month",vt)+Ot):j==="year"&&rt.set("FullYear",vt,rt.get("FullYear",vt)+Ot),Ot=vt.getTime()-gt),lt&&ct(x)?gt+Ot:(this.xIncrement=gt+Ot,gt)}setDataSortingOptions(){let x=this.options;l(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),W(x.pointRange)||(x.pointRange=1)}setOptions(x){var re,le;let y,j=this.chart,lt=j.options.plotOptions,rt=j.userOptions||{},gt=dt(x),vt=j.styledMode,Ot={plotOptions:lt,userOptions:gt};v(this,"setOptions",Ot);let At=Ot.plotOptions[this.type],$t=rt.plotOptions||{},Xt=$t.series||{},Ct=T.plotOptions[this.type]||{},wt=$t[this.type]||{};this.userOptions=Ot.userOptions;let Dt=dt(At,lt.series,wt,gt);this.tooltipOptions=dt(T.tooltip,(re=T.plotOptions.series)==null?void 0:re.tooltip,Ct==null?void 0:Ct.tooltip,j.userOptions.tooltip,(le=$t.series)==null?void 0:le.tooltip,wt.tooltip,gt.tooltip),this.stickyTracking=bt(gt.stickyTracking,wt.stickyTracking,Xt.stickyTracking,!!this.tooltipOptions.shared&&!this.noSharedTooltip||Dt.stickyTracking),At.marker===null&&delete Dt.marker,this.zoneAxis=Dt.zoneAxis||"y";let jt=this.zones=(Dt.zones||[]).map(Gt=>xr({},Gt));return(Dt.negativeColor||Dt.negativeFillColor)&&!Dt.zones&&(y={value:Dt[this.zoneAxis+"Threshold"]||Dt.threshold||0,className:"highcharts-negative"},vt||(y.color=Dt.negativeColor,y.fillColor=Dt.negativeFillColor),jt.push(y)),jt.length&&W(jt[jt.length-1].value)&&jt.push(vt?{}:{color:this.color,fillColor:this.fillColor}),v(this,"afterSetOptions",{options:Dt}),Dt}getName(){return bt(this.options.name,"Series "+(this.index+1))}getCyclic(x,y,j){let lt,rt,gt=this.chart,vt=`${x}Index`,Ot=`${x}Counter`,At=(j==null?void 0:j.length)||gt.options.chart.colorCount;!y&&(W(rt=bt(x==="color"?this.options.colorIndex:void 0,this[vt]))?lt=rt:(gt.series.length||(gt[Ot]=0),lt=gt[Ot]%At,gt[Ot]+=1),j&&(y=j[lt])),lt!==void 0&&(this[vt]=lt),this[x]=y}getColor(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||T.plotOptions[this.type].color,this.chart.options.colors)}getPointsCollection(){return(this.hasGroupedData?this.points:this.data)||[]}getSymbol(){let x=this.options.marker;this.getCyclic("symbol",x.symbol,this.chart.options.symbols)}findPointIndex(x,y){let j,lt,rt,gt=x.id,vt=x.x,Ot=this.points,At=this.options.dataSorting;if(gt){let $t=this.chart.get(gt);$t instanceof X&&(j=$t)}else if(this.linkedParent||this.enabledDataSorting||this.options.relativeXValue){let $t=Xt=>!Xt.touched&&Xt.index===x.index;if(At&&At.matchByName?$t=Xt=>!Xt.touched&&Xt.name===x.name:this.options.relativeXValue&&($t=Xt=>!Xt.touched&&Xt.options.x===x.x),!(j=u(Ot,$t)))return}return j&&(rt=j&&j.index)!==void 0&&(lt=!0),rt===void 0&&ct(vt)&&(rt=this.xData.indexOf(vt,y)),rt!==-1&&rt!==void 0&&this.cropped&&(rt=rt>=this.cropStart?rt-this.cropStart:rt),!lt&&ct(rt)&&Ot[rt]&&Ot[rt].touched&&(rt=void 0),rt}updateData(x,y){let j=this.options,lt=j.dataSorting,rt=this.points,gt=[],vt=this.requireSorting,Ot=x.length===rt.length,At,$t,Xt,Ct,wt=!0;if(this.xIncrement=null,x.forEach(function(Dt,jt){let re,le=W(Dt)&&this.pointClass.prototype.optionsToObject.call({series:this},Dt)||{},Gt=le.x;le.id||ct(Gt)?((re=this.findPointIndex(le,Ct))===-1||re===void 0?gt.push(Dt):rt[re]&&Dt!==j.data[re]?(rt[re].update(Dt,!1,null,!1),rt[re].touched=!0,vt&&(Ct=re+1)):rt[re]&&(rt[re].touched=!0),(!Ot||jt!==re||lt&<.enabled||this.hasDerivedData)&&(At=!0)):gt.push(Dt)},this),At)for($t=rt.length;$t--;)(Xt=rt[$t])&&!Xt.touched&&Xt.remove&&Xt.remove(!1,y);else!Ot||lt&<.enabled?wt=!1:(x.forEach(function(Dt,jt){Dt===rt[jt].y||rt[jt].destroyed||rt[jt].update(Dt,!1,null,!1)}),gt.length=0);return rt.forEach(function(Dt){Dt&&(Dt.touched=!1)}),!!wt&&(gt.forEach(function(Dt){this.addPoint(Dt,!1,null,null,!1)},this),this.xIncrement===null&&this.xData&&this.xData.length&&(this.xIncrement=z(this.xData),this.autoIncrement()),!0)}setData(x,y=!0,j,lt){var un;let rt=this,gt=rt.points,vt=gt&>.length||0,Ot=rt.options,At=rt.chart,$t=Ot.dataSorting,Xt=rt.xAxis,Ct=Ot.turboThreshold,wt=this.xData,Dt=this.yData,jt=rt.pointArrayMap,re=jt&&jt.length,le=Ot.keys,Gt,he,ve,Ce=0,Te=1,Ke;At.options.chart.allowMutatingData||(Ot.data&&delete rt.options.data,rt.userOptions.data&&delete rt.userOptions.data,Ke=dt(!0,x));let rn=(x=Ke||x||[]).length;if($t&&$t.enabled&&(x=this.sortData(x)),At.options.chart.allowMutatingData&<!==!1&&rn&&vt&&!rt.cropped&&!rt.hasGroupedData&&rt.visible&&!rt.boosted&&(ve=this.updateData(x,j)),!ve){rt.xIncrement=null,rt.colorCounter=0,this.parallelArrays.forEach(function(Kt){rt[Kt+"Data"].length=0});let Qt=Ct&&rn>Ct;if(Qt){let Kt=rt.getFirstValidPoint(x),Jt=rt.getFirstValidPoint(x,rn-1,-1),Et=Rt=>!!(K(Rt)&&(le||ct(Rt[0])));if(ct(Kt)&&ct(Jt))for(Gt=0;Gt=0?Ce:0,Te=Te>=0?Te:1),Kt.length===1&&(Te=0),Ce===Te)for(Gt=0;Gt{let vt=S(j,rt),Ot=S(j,gt);return Otvt?1:0}).forEach(function(rt,gt){rt.x=gt},this),y.linkedSeries&&y.linkedSeries.forEach(function(rt){let gt=rt.options,vt=gt.data;gt.dataSorting&>.dataSorting.enabled||!vt||(vt.forEach(function(Ot,At){vt[At]=lt(rt,Ot),x[At]&&(vt[At].x=x[At].x,vt[At].index=At)}),rt.setData(vt,!1))}),x}getProcessedData(x){let y=this,j=y.xAxis,lt=y.options.cropThreshold,rt=j==null?void 0:j.logarithmic,gt=y.isCartesian,vt,Ot,At=0,$t,Xt,Ct,wt=y.xData,Dt=y.yData,jt=!1,re=wt.length;j&&(Xt=($t=j.getExtremes()).min,Ct=$t.max,jt=!!(j.categories&&!j.names.length)),gt&&y.sorted&&!x&&(!lt||re>lt||y.forceCrop)&&(wt[re-1]Ct?(wt=[],Dt=[]):y.yData&&(wt[0]Ct)&&(wt=(vt=this.cropData(y.xData,y.yData,Xt,Ct)).xData,Dt=vt.yData,At=vt.start,Ot=!0));let le=I([rt?wt.map(rt.log2lin):wt],()=>y.requireSorting&&!jt&&h(15,!1,y.chart));return{xData:wt,yData:Dt,cropped:Ot,cropStart:At,closestPointRange:le}}processData(x){let y=this.xAxis;if(this.isCartesian&&!this.isDirty&&!y.isDirty&&!this.yAxis.isDirty&&!x)return!1;let j=this.getProcessedData();this.cropped=j.cropped,this.cropStart=j.cropStart,this.processedXData=j.xData,this.processedYData=j.yData,this.closestPointRange=this.basePointRange=j.closestPointRange,v(this,"afterProcessData")}cropData(x,y,j,lt){let rt=x.length,gt,vt,Ot=0,At=rt;for(gt=0;gt=j){Ot=Math.max(0,gt-1);break}for(vt=gt;vtlt){At=vt+1;break}return{xData:x.slice(Ot,At),yData:y.slice(Ot,At),start:Ot,end:At}}generatePoints(){let x=this.options,y=this.processedData||x.data,j=this.processedXData,lt=this.processedYData,rt=this.pointClass,gt=j.length,vt=this.cropStart||0,Ot=this.hasGroupedData,At=x.keys,$t=[],Xt=x.dataGrouping&&x.dataGrouping.groupAll?vt:0,Ct,wt,Dt,jt,re=this.data;if(!re&&!Ot){let le=[];le.length=y.length,re=this.data=le}for(At&&Ot&&(this.options.keys=!1),jt=0;jt0:jt.length)||!vt),wt=y||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!j||(Te[re+gt]||Dt)>=Gt&&(Te[re-gt]||Dt)<=he,Ct&&wt)if(le=jt.length)for(;le--;)ct(jt[le])&&(rt[ve++]=jt[le]);else rt[ve++]=jt;let Ke={activeYData:rt,dataMin:c(rt),dataMax:z(rt)};return v(this,"afterGetExtremes",{dataExtremes:Ke}),Ke}applyExtremes(){let x=this.getExtremes();return this.dataMin=x.dataMin,this.dataMax=x.dataMax,x}getFirstValidPoint(x,y=0,j=1){let lt=x.length,rt=y;for(;rt>=0&&rt1)&&(gt.step=function(Ct,wt){Xt&&Xt.apply(wt,arguments),wt.prop==="width"&&(At!=null&&At.element)&&At.attr(rt?"height":"width",Ct+99)}),Ot.addClass("highcharts-animating").animate($t,gt)}}afterAnimate(){this.setClip(),pt(this.chart.sharedClips,(x,y,j)=>{x&&!this.chart.container.querySelector(`[clip-path="url(#${x.id})"]`)&&(x.destroy(),delete j[y])}),this.finishedAnimating=!0,v(this,"afterAnimate")}drawPoints(x=this.points){let y,j,lt,rt,gt,vt,Ot,At=this.chart,$t=At.styledMode,{colorAxis:Xt,options:Ct}=this,wt=Ct.marker,Dt=this[this.specialGroup||"markerGroup"],jt=this.xAxis,re=bt(wt.enabled,!jt||!!jt.isRadial||null,this.closestPointRangePx>=wt.enabledThreshold*wt.radius);if(wt.enabled!==!1||this._hasPointMarkers)for(y=0;y0||j.hasImage)&&(j.graphic=lt=At.renderer.symbol(le,Ot.x,Ot.y,Ot.width,Ot.height,vt?gt:wt).add(Dt),this.enabledDataSorting&&At.hasRendered&&(lt.attr({x:j.startXPos}),rt="animate")),lt&&rt==="animate"&<[Gt?"show":"hide"](Gt).animate(Ot),lt){let he=this.pointAttribs(j,$t||!j.selected?void 0:"select");$t?Xt&<.css({fill:he.fill}):lt[rt](he)}lt&<.addClass(j.getClassName(),!0)}else lt&&(j.graphic=lt.destroy())}markerAttribs(x,y){let j=this.options,lt=j.marker,rt=x.marker||{},gt=rt.symbol||lt.symbol,vt={},Ot,At,$t=bt(rt.radius,lt&<.radius);y&&(Ot=lt.states[y],$t=bt((At=rt.states&&rt.states[y])&&At.radius,Ot&&Ot.radius,$t&&$t+(Ot&&Ot.radiusPlus||0))),x.hasImage=gt&>.indexOf("url")===0,x.hasImage&&($t=0);let Xt=x.pos();return ct($t)&&Xt&&(j.crisp&&(Xt[0]=Q(Xt[0],x.hasImage?0:gt==="rect"?(lt==null?void 0:lt.lineWidth)||0:1)),vt.x=Xt[0]-$t,vt.y=Xt[1]-$t),$t&&(vt.width=vt.height=2*$t),vt}pointAttribs(x,y){let j=this.options.marker,lt=x&&x.options,rt=lt&<.marker||{},gt=lt&<.color,vt=x&&x.color,Ot=x&&x.zone&&x.zone.color,At,$t,Xt=this.color,Ct,wt,Dt=bt(rt.lineWidth,j.lineWidth),jt=1;return Xt=gt||Ot||vt||Xt,Ct=rt.fillColor||j.fillColor||Xt,wt=rt.lineColor||j.lineColor||Xt,y=y||"normal",At=j.states[y]||{},Dt=bt(($t=rt.states&&rt.states[y]||{}).lineWidth,At.lineWidth,Dt+bt($t.lineWidthPlus,At.lineWidthPlus,0)),Ct=$t.fillColor||At.fillColor||Ct,{stroke:wt=$t.lineColor||At.lineColor||wt,"stroke-width":Dt,fill:Ct,opacity:jt=bt($t.opacity,At.opacity,jt)}}destroy(x){let y,j,lt,rt=this,gt=rt.chart,vt=/AppleWebKit\/533/.test(O.navigator.userAgent),Ot=rt.data||[];for(v(rt,"destroy",{keepEventsForUpdate:x}),this.removeEvents(x),(rt.axisTypes||[]).forEach(function(At){(lt=rt[At])&<.series&&(C(lt.series,rt),lt.isDirty=lt.forceRedraw=!0)}),rt.legendItem&&rt.chart.legend.destroyItem(rt),y=Ot.length;y--;)(j=Ot[y])&&j.destroy&&j.destroy();for(let At of rt.zones)k(At,void 0,!0);V.clearTimeout(rt.animationTimeout),pt(rt,function(At,$t){At instanceof Y&&!At.survive&&At[vt&&$t==="group"?"hide":"destroy"]()}),gt.hoverSeries===rt&&(gt.hoverSeries=void 0),C(gt.series,rt),gt.orderItems("series"),pt(rt,function(At,$t){x&&$t==="hcEvents"||delete rt[$t]})}applyZones(){let{area:x,chart:y,graph:j,zones:lt,points:rt,xAxis:gt,yAxis:vt,zoneAxis:Ot}=this,{inverted:At,renderer:$t}=y,Xt=this[`${Ot}Axis`],{isXAxis:Ct,len:wt=0}=Xt||{},Dt=((j==null?void 0:j.strokeWidth())||0)/2+1,jt=(re,le=0,Gt=0)=>{At&&(Gt=wt-Gt);let{translated:he=0,lineClip:ve}=re,Ce=Gt-he;ve==null||ve.push(["L",le,Math.abs(Ce){ve.forEach((Ce,Te)=>{(Ce[0]==="M"||Ce[0]==="L")&&(ve[Te]=[Ce[0],Ct?wt-Ce[1]:Ce[1],Ct?Ce[2]:wt-Ce[2]])})};if(lt.forEach(ve=>{ve.lineClip=[],ve.translated=D(Xt.toPixels(bt(ve.value,re),!0)||0,0,wt)}),j&&!this.showLine&&j.hide(),x&&x.hide(),Ot==="y"&&rt.length{var zt,Ft;let Ce=ve.lineClip||[],Te=Math.round(ve.translated||0);gt.reversed&&Ce.reverse();let{clip:Ke,simpleClip:rn}=ve,un=0,Qt=0,Kt=gt.len,Jt=vt.len;Ct?(un=Te,Kt=he):(Qt=Te,Jt=he);let Et=[["M",un,Qt],["L",Kt,Qt],["L",Kt,Jt],["L",un,Jt],["Z"]],Rt=[Et[0],...Ce,Et[1],Et[2],...Gt,Et[3],Et[4]];Gt=Ce.reverse(),he=Te,At&&(le(Rt),x&&le(Et)),Ke?(Ke.animate({d:Rt}),rn==null||rn.animate({d:Et})):(Ke=ve.clip=$t.path(Rt),x&&(rn=ve.simpleClip=$t.path(Et))),j&&((zt=ve.graph)==null||zt.clip(Ke)),x&&((Ft=ve.area)==null||Ft.clip(rn))})}else this.visible&&(j&&j.show(),x&&x.show())}plotGroup(x,y,j,lt,rt){let gt=this[x],vt=!gt,Ot={visibility:j,zIndex:lt||.1};return W(this.opacity)&&!this.chart.styledMode&&this.state!=="inactive"&&(Ot.opacity=this.opacity),gt||(this[x]=gt=this.chart.renderer.g().add(rt)),gt.addClass("highcharts-"+y+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(W(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(gt.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),gt.attr(Ot)[vt?"attr":"animate"](this.getPlotBox(y)),gt}getPlotBox(x){let y=this.xAxis,j=this.yAxis,lt=this.chart,rt=lt.inverted&&!lt.polar&&y&&this.invertible&&x==="series";return lt.inverted&&(y=j,j=this.xAxis),{translateX:y?y.left:lt.plotLeft,translateY:j?j.top:lt.plotTop,rotation:rt?90:0,rotationOriginX:rt?(y.len-j.len)/2:0,rotationOriginY:rt?(y.len+j.len)/2:0,scaleX:rt?-1:1,scaleY:1}}removeEvents(x){let{eventsToUnbind:y}=this;x||Mt(this),y.length&&(y.forEach(j=>{j()}),y.length=0)}render(){var $t,Xt,Ct,wt,Dt;let x=this,{chart:y,options:j,hasRendered:lt}=x,rt=N(j.animation),gt=x.visible?"inherit":"hidden",vt=j.zIndex,Ot=y.seriesGroup,At=x.finishedAnimating?0:rt.duration;v(this,"render"),x.plotGroup("group","series",gt,vt,Ot),x.markerGroup=x.plotGroup("markerGroup","markers",gt,vt,Ot),j.clip!==!1&&x.setClip(),At&&(($t=x.animate)==null||$t.call(x,!0)),x.drawGraph&&(x.drawGraph(),x.applyZones()),x.visible&&x.drawPoints(),(Xt=x.drawDataLabels)==null||Xt.call(x),(Ct=x.redrawPoints)==null||Ct.call(x),j.enableMouseTracking&&((wt=x.drawTracker)==null||wt.call(x)),At&&((Dt=x.animate)==null||Dt.call(x)),lt||(At&&rt.defer&&(At+=rt.defer),x.animationTimeout=B(()=>{x.afterAnimate()},At||0)),x.isDirty=!1,x.hasRendered=!0,v(x,"afterRender")}redraw(){let x=this.isDirty||this.isDirtyData;this.translate(),this.render(),x&&delete this.kdTree}reserveSpace(){return this.visible||!this.chart.options.chart.ignoreHiddenSeries}searchPoint(x,y){let{xAxis:j,yAxis:lt}=this,rt=this.chart.inverted;return this.searchKDTree({clientX:rt?j.len-x.chartY+j.pos:x.chartX-j.pos,plotY:rt?lt.len-x.chartX+lt.pos:x.chartY-lt.pos},y,x)}buildKDTree(x){this.buildingKdTree=!0;let y=this,j=y.options.findNearestPointBy.indexOf("y")>-1?2:1;delete y.kdTree,B(function(){y.kdTree=function lt(rt,gt,vt){let Ot,At,$t=rt==null?void 0:rt.length;if($t)return Ot=y.kdAxisArray[gt%vt],rt.sort((Xt,Ct)=>(Xt[Ot]||0)-(Ct[Ot]||0)),{point:rt[At=Math.floor($t/2)],left:lt(rt.slice(0,At),gt+1,vt),right:lt(rt.slice(At+1),gt+1,vt)}}(y.getValidPoints(void 0,!y.directTouch),j,j),y.buildingKdTree=!1},y.options.kdNow||(x==null?void 0:x.type)==="touchstart"?0:1)}searchKDTree(x,y,j){let lt=this,[rt,gt]=this.kdAxisArray,vt=y?"distX":"dist",Ot=(lt.options.findNearestPointBy||"").indexOf("y")>-1?2:1,At=!!lt.isBubble;if(this.kdTree||this.buildingKdTree||this.buildKDTree(j),this.kdTree)return function $t(Xt,Ct,wt,Dt){var Ke;let jt=Ct.point,re=lt.kdAxisArray[wt%Dt],le,Gt,he=jt;(function(rn,un){var ce;let Qt=rn[rt],Kt=un[rt],Jt=W(Qt)&&W(Kt)?Qt-Kt:null,Et=rn[gt],Rt=un[gt],zt=W(Et)&&W(Rt)?Et-Rt:0,Ft=At&&((ce=un.marker)==null?void 0:ce.radius)||0;un.dist=Math.sqrt((Jt&&Jt*Jt||0)+zt*zt)-Ft,un.distX=W(Jt)?Math.abs(Jt)-Ft:Number.MAX_VALUE})(Xt,jt);let ve=(Xt[re]||0)-(jt[re]||0)+(At&&((Ke=jt.marker)==null?void 0:Ke.radius)||0),Ce=ve<0?"left":"right",Te=ve<0?"right":"left";return Ct[Ce]&&(he=(le=$t(Xt,Ct[Ce],wt+1,Dt))[vt]=0&><=(lt?lt.len:y.plotHeight)&&rt>=0&&rt<=(j?j.len:y.plotWidth)}drawTracker(){var Ct;let x=this,y=x.options,j=y.trackByArea,lt=[].concat((j?x.areaPath:x.graphPath)||[]),rt=x.chart,gt=rt.pointer,vt=rt.renderer,Ot=((Ct=rt.options.tooltip)==null?void 0:Ct.snap)||0,At=()=>{y.enableMouseTracking&&rt.hoverSeries!==x&&x.onMouseOver()},$t="rgba(192,192,192,"+(M?1e-4:.002)+")",Xt=x.tracker;Xt?Xt.attr({d:lt}):x.graph&&(x.tracker=Xt=vt.path(lt).attr({visibility:x.visible?"inherit":"hidden",zIndex:2}).addClass(j?"highcharts-tracker-area":"highcharts-tracker-line").add(x.group),rt.styledMode||Xt.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:$t,fill:j?$t:"none","stroke-width":x.graph.strokeWidth()+(j?0:2*Ot)}),[x.tracker,x.markerGroup,x.dataLabelsGroup].forEach(wt=>{wt&&(wt.addClass("highcharts-tracker").on("mouseover",At).on("mouseout",Dt=>{gt==null||gt.onTrackerMouseOut(Dt)}),y.cursor&&!rt.styledMode&&wt.css({cursor:y.cursor}),wt.on("touchstart",At))})),v(this,"afterDrawTracker")}addPoint(x,y,j,lt,rt){let gt,vt,Ot=this.options,At=this.data,$t=this.chart,Xt=this.xAxis,Ct=Xt&&Xt.hasNames&&Xt.names,wt=Ot.data,Dt=this.xData;y=bt(y,!0);let jt={series:this};this.pointClass.prototype.applyOptions.apply(jt,[x]);let re=jt.x;if(vt=Dt.length,this.requireSorting&&rere;)vt--;this.updateParallelArrays(jt,"splice",[vt,0,0]),this.updateParallelArrays(jt,vt),Ct&&jt.name&&(Ct[re]=jt.name),wt.splice(vt,0,x),(gt||this.processedData)&&(this.data.splice(vt,0,null),this.processData()),Ot.legendType==="point"&&this.generatePoints(),j&&(At[0]&&At[0].remove?At[0].remove(!1):(At.shift(),this.updateParallelArrays(jt,"shift"),wt.shift())),rt!==!1&&v(this,"addPoint",{point:jt}),this.isDirty=!0,this.isDirtyData=!0,y&&$t.redraw(lt)}removePoint(x,y,j){let lt=this,rt=lt.data,gt=rt[x],vt=lt.points,Ot=lt.chart,At=function(){vt&&vt.length===rt.length&&vt.splice(x,1),rt.splice(x,1),lt.options.data.splice(x,1),lt.updateParallelArrays(gt||{series:lt},"splice",[x,1]),gt&>.destroy(),lt.isDirty=!0,lt.isDirtyData=!0,y&&Ot.redraw()};U(j,Ot),y=bt(y,!0),gt?gt.firePointEvent("remove",null,At):At()}remove(x,y,j,lt){let rt=this,gt=rt.chart;function vt(){rt.destroy(lt),gt.isDirtyLegend=gt.isDirtyBox=!0,gt.linkSeries(lt),bt(x,!0)&>.redraw(y)}j!==!1?v(rt,"remove",null,vt):vt()}update(x,y){var le,Gt,he,ve,Ce;v(this,"update",{options:x=_(x,this.userOptions)});let j=this,lt=j.chart,rt=j.userOptions,gt=j.initialType||j.type,vt=lt.options.plotOptions,Ot=H[gt].prototype,At=j.finishedAnimating&&{animation:!1},$t={},Xt,Ct,wt=["colorIndex","eventOptions","navigatorSeries","symbolIndex","baseSeries"],Dt=x.type||rt.type||lt.options.chart.type,jt=!(this.hasDerivedData||Dt&&Dt!==this.type||x.pointStart!==void 0||x.pointInterval!==void 0||x.relativeXValue!==void 0||x.joinBy||x.mapData||["dataGrouping","pointStart","pointInterval","pointIntervalUnit","keys"].some(Te=>j.hasOptionChanged(Te)));Dt=Dt||gt,jt&&(wt.push("data","isDirtyData","isDirtyCanvas","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","hasDataLabels","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX","transformGroups"),x.visible!==!1&&wt.push("area","graph"),j.parallelArrays.forEach(function(Te){wt.push(Te+"Data")}),x.data&&(x.dataSorting&&l(j.options.dataSorting,x.dataSorting),this.setData(x.data,!1))),x=dt(rt,{index:rt.index===void 0?j.index:rt.index,pointStart:(ve=(Gt=(le=vt==null?void 0:vt.series)==null?void 0:le.pointStart)!=null?Gt:rt.pointStart)!=null?ve:(he=j.xData)==null?void 0:he[0]},!jt&&{data:j.options.data},x,At),jt&&x.data&&(x.data=j.options.data),(wt=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(wt)).forEach(function(Te){wt[Te]=j[Te],delete j[Te]});let re=!1;if(H[Dt]){if(re=Dt!==j.type,j.remove(!1,!1,!1,!0),re)if(lt.propFromSeries(),Object.setPrototypeOf)Object.setPrototypeOf(j,H[Dt].prototype);else{let Te=Object.hasOwnProperty.call(j,"hcEvents")&&j.hcEvents;for(Ct in Ot)j[Ct]=void 0;l(j,H[Dt].prototype),Te?j.hcEvents=Te:delete j.hcEvents}}else h(17,!0,lt,{missingModuleFor:Dt});if(wt.forEach(function(Te){j[Te]=wt[Te]}),j.init(lt,x),jt&&this.points)for(let Te of((Xt=j.options).visible===!1?($t.graphic=1,$t.dataLabel=1):(this.hasMarkerChanged(Xt,rt)&&($t.graphic=1),(Ce=j.hasDataLabels)!=null&&Ce.call(j)||($t.dataLabel=1)),this.points))Te&&Te.series&&(Te.resolveColor(),Object.keys($t).length&&Te.destroyElements($t),Xt.showInLegend===!1&&Te.legendItem&<.legend.destroyItem(Te));j.initialType=gt,lt.linkSeries(),lt.setSortedData(),re&&j.linkedSeries.length&&(j.isDirtyData=!0),v(this,"afterUpdate"),bt(y,!0)&<.redraw(!!jt&&void 0)}setName(x){this.name=this.options.name=this.userOptions.name=x,this.chart.isDirtyLegend=!0}hasOptionChanged(x){var vt,Ot;let y=this.chart,j=this.options[x],lt=y.options.plotOptions,rt=this.userOptions[x],gt=bt((vt=lt==null?void 0:lt[this.type])==null?void 0:vt[x],(Ot=lt==null?void 0:lt.series)==null?void 0:Ot[x]);return rt&&!W(gt)?j!==rt:j!==bt(gt,j)}onMouseOver(){let x=this.chart,y=x.hoverSeries,j=x.pointer;j==null||j.setHoverChartIndex(),y&&y!==this&&y.onMouseOut(),this.options.events.mouseOver&&v(this,"mouseOver"),this.setState("hover"),x.hoverSeries=this}onMouseOut(){let x=this.options,y=this.chart,j=y.tooltip,lt=y.hoverPoint;y.hoverSeries=null,lt&<.onMouseOut(),this&&x.events.mouseOut&&v(this,"mouseOut"),j&&!this.stickyTracking&&(!j.shared||this.noSharedTooltip)&&j.hide(),y.series.forEach(function(rt){rt.setState("",!0)})}setState(x,y){let j=this,lt=j.options,rt=j.graph,gt=lt.inactiveOtherPoints,vt=lt.states,Ot=bt(vt[x||"normal"]&&vt[x||"normal"].animation,j.chart.options.chart.animation),At=lt.lineWidth,$t=lt.opacity;if(x=x||"",j.state!==x&&([j.group,j.markerGroup,j.dataLabelsGroup].forEach(function(Xt){Xt&&(j.state&&Xt.removeClass("highcharts-series-"+j.state),x&&Xt.addClass("highcharts-series-"+x))}),j.state=x,!j.chart.styledMode)){if(vt[x]&&vt[x].enabled===!1)return;if(x&&(At=vt[x].lineWidth||At+(vt[x].lineWidthPlus||0),$t=bt(vt[x].opacity,$t)),rt&&!rt.dashstyle&&ct(At))for(let Xt of[rt,...this.zones.map(Ct=>Ct.graph)])Xt==null||Xt.animate({"stroke-width":At},Ot);gt||[j.group,j.markerGroup,j.dataLabelsGroup,j.labelBySeries].forEach(function(Xt){Xt&&Xt.animate({opacity:$t},Ot)})}y&>&&j.points&&j.setAllPointsToState(x||void 0)}setAllPointsToState(x){this.points.forEach(function(y){y.setState&&y.setState(x)})}setVisible(x,y){var Ot;let j=this,lt=j.chart,rt=lt.options.chart.ignoreHiddenSeries,gt=j.visible;j.visible=x=j.options.visible=j.userOptions.visible=x===void 0?!gt:x;let vt=x?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(At=>{var $t;($t=j[At])==null||$t[vt]()}),(lt.hoverSeries===j||((Ot=lt.hoverPoint)==null?void 0:Ot.series)===j)&&j.onMouseOut(),j.legendItem&<.legend.colorizeItem(j,x),j.isDirty=!0,j.options.stacking&<.series.forEach(At=>{At.options.stacking&&At.visible&&(At.isDirty=!0)}),j.linkedSeries.forEach(At=>{At.setVisible(x,!1)}),rt&&(lt.isDirtyBox=!0),v(j,vt),y!==!1&<.redraw()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}select(x){this.selected=x=this.options.selected=x===void 0?!this.selected:x,this.checkbox&&(this.checkbox.checked=x),v(this,x?"select":"unselect")}shouldShowTooltip(x,y,j={}){return j.series=this,j.visiblePlotOnly=!0,this.chart.isInsidePlot(x,y,j)}drawLegendSymbol(x,y){var j;(j=J[this.options.legendSymbol||"rectangle"])==null||j.call(this,x,y)}}return tt.defaultOptions=q,tt.types=Z.seriesTypes,tt.registerType=Z.registerSeriesType,l(tt.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,directTouch:!1,invertible:!0,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:X,requireSorting:!0,sorted:!0}),Z.series=tt,tt}),g(d,"Core/Legend/Legend.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Series/Point.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){var Y;let{animObject:V,setAnimation:N}=L,{registerEventOptions:U}=R,{composed:T,marginNames:A}=st,{distribute:M}=X,{format:O}=q,{addEvent:H,createElement:z,css:c,defined:D,discardElement:it,find:Q,fireEvent:W,isNumber:k,merge:_,pick:C,pushUnique:h,relativeLength:l,stableSort:u,syncTimeout:v}=Z;class I{constructor(b,K){this.allItems=[],this.initialItemY=0,this.itemHeight=0,this.itemMarginBottom=0,this.itemMarginTop=0,this.itemX=0,this.itemY=0,this.lastItemY=0,this.lastLineHeight=0,this.legendHeight=0,this.legendWidth=0,this.maxItemWidth=0,this.maxLegendWidth=0,this.offsetWidth=0,this.padding=0,this.pages=[],this.symbolHeight=0,this.symbolWidth=0,this.titleHeight=0,this.totalItemWidth=0,this.widthOption=0,this.chart=b,this.setOptions(K),K.enabled&&(this.render(),U(this,K),H(this.chart,"endResize",function(){this.legend.positionCheckboxes()})),H(this.chart,"render",()=>{this.options.enabled&&this.proximate&&(this.proximatePositions(),this.positionItems())})}setOptions(b){let K=C(b.padding,8);this.options=b,this.chart.styledMode||(this.itemStyle=b.itemStyle,this.itemHiddenStyle=_(this.itemStyle,b.itemHiddenStyle)),this.itemMarginTop=b.itemMarginTop,this.itemMarginBottom=b.itemMarginBottom,this.padding=K,this.initialItemY=K-5,this.symbolWidth=C(b.symbolWidth,16),this.pages=[],this.proximate=b.layout==="proximate"&&!this.chart.inverted,this.baseline=void 0}update(b,K){let ct=this.chart;this.setOptions(_(!0,this.options,b)),"events"in this.options&&U(this,this.options),this.destroy(),ct.isDirtyLegend=ct.isDirtyBox=!0,C(K,!0)&&ct.redraw(),W(this,"afterUpdate",{redraw:K})}colorizeItem(b,K){let{area:ct,group:et,label:dt,line:pt,symbol:bt}=b.legendItem||{};if(et==null||et[K?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){let{itemHiddenStyle:Mt={}}=this,w=Mt.color,{fillColor:B,fillOpacity:tt,lineColor:nt,marker:x}=b.options,y=j=>(!K&&(j.fill&&(j.fill=w),j.stroke&&(j.stroke=w)),j);dt==null||dt.css(_(K?this.itemStyle:Mt)),pt==null||pt.attr(y({stroke:nt||b.color})),bt&&bt.attr(y(x&&bt.isMarker?b.pointAttribs():{fill:b.color})),ct==null||ct.attr(y({fill:B||b.color,"fill-opacity":B?1:tt!=null?tt:.75}))}W(this,"afterColorizeItem",{item:b,visible:K})}positionItems(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()}positionItem(b){let{group:K,x:ct=0,y:et=0}=b.legendItem||{},dt=this.options,pt=dt.symbolPadding,bt=!dt.rtl,Mt=b.checkbox;if(K&&K.element){let w={translateX:bt?ct:this.legendWidth-ct-2*pt-4,translateY:et};K[D(K.translateY)?"animate":"attr"](w,void 0,()=>{W(this,"afterPositionItem",{item:b})})}Mt&&(Mt.x=ct,Mt.y=et)}destroyItem(b){let K=b.checkbox,ct=b.legendItem||{};for(let et of["group","label","line","symbol"])ct[et]&&(ct[et]=ct[et].destroy());K&&it(K),b.legendItem=void 0}destroy(){for(let b of this.getAllItems())this.destroyItem(b);for(let b of["clipRect","up","down","pager","nav","box","title","group"])this[b]&&(this[b]=this[b].destroy());this.display=null}positionCheckboxes(){let b,K=this.group&&this.group.alignAttr,ct=this.clipHeight||this.legendHeight,et=this.titleHeight;K&&(b=K.translateY,this.allItems.forEach(function(dt){let pt,bt=dt.checkbox;bt&&(pt=b+et+bt.y+(this.scrollOffset||0)+3,c(bt,{left:K.translateX+dt.checkboxOffset+bt.x-20+"px",top:pt+"px",display:this.proximate||pt>b-6&&pt1.5*$t?At.height:$t))}layoutItem(b){let K=this.options,ct=this.padding,et=K.layout==="horizontal",dt=b.itemHeight,pt=this.itemMarginBottom,bt=this.itemMarginTop,Mt=et?C(K.itemDistance,20):0,w=this.maxLegendWidth,B=K.alignColumns&&this.totalItemWidth>w?this.maxItemWidth:b.itemWidth,tt=b.legendItem||{};et&&this.itemX-ct+B>w&&(this.itemX=ct,this.lastLineHeight&&(this.itemY+=bt+this.lastLineHeight+pt),this.lastLineHeight=0),this.lastItemY=bt+this.itemY+pt,this.lastLineHeight=Math.max(dt,this.lastLineHeight),tt.x=this.itemX,tt.y=this.itemY,et?this.itemX+=B:(this.itemY+=bt+dt+pt,this.lastLineHeight=dt),this.offsetWidth=this.widthOption||Math.max((et?this.itemX-ct-(b.checkbox?0:Mt):B)+ct,this.offsetWidth)}getAllItems(){let b=[];return this.chart.series.forEach(function(K){let ct=K&&K.options;K&&C(ct.showInLegend,!D(ct.linkedTo)&&void 0,!0)&&(b=b.concat((K.legendItem||{}).labels||(ct.legendType==="point"?K.data:K)))}),W(this,"afterGetAllItems",{allItems:b}),b}getAlignment(){let b=this.options;return this.proximate?b.align.charAt(0)+"tv":b.floating?"":b.align.charAt(0)+b.verticalAlign.charAt(0)+b.layout.charAt(0)}adjustMargins(b,K){let ct=this.chart,et=this.options,dt=this.getAlignment();dt&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(pt,bt){pt.test(dt)&&!D(b[bt])&&(ct[A[bt]]=Math.max(ct[A[bt]],ct.legend[(bt+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][bt]*et[bt%2?"x":"y"]+C(et.margin,12)+K[bt]+(ct.titleOffset[bt]||0)))})}proximatePositions(){let b,K=this.chart,ct=[],et=this.options.align==="left";for(let dt of(this.allItems.forEach(function(pt){let bt,Mt,w=et,B,tt;pt.yAxis&&(pt.xAxis.options.reversed&&(w=!w),pt.points&&(bt=Q(w?pt.points:pt.points.slice(0).reverse(),function(nt){return k(nt.plotY)})),Mt=this.itemMarginTop+pt.legendItem.label.getBBox().height+this.itemMarginBottom,tt=pt.yAxis.top-K.plotTop,B=pt.visible?(bt?bt.plotY:pt.yAxis.height)+(tt-.3*Mt):tt+pt.yAxis.height,ct.push({target:B,size:Mt,item:pt}))},this),M(ct,K.plotHeight)))b=dt.item.legendItem||{},k(dt.pos)&&(b.y=K.plotTop-K.spacing[0]+dt.pos)}render(){let b=this.chart,K=b.renderer,ct=this.options,et=this.padding,dt=this.getAllItems(),pt,bt,Mt,w=this.group,B,tt=this.box;this.itemX=et,this.itemY=this.initialItemY,this.offsetWidth=0,this.lastItemY=0,this.widthOption=l(ct.width,b.spacingBox.width-et),B=b.spacingBox.width-2*et-ct.x,["rm","lm"].indexOf(this.getAlignment().substring(0,2))>-1&&(B/=2),this.maxLegendWidth=this.widthOption||B,w||(this.group=w=K.g("legend").addClass(ct.className||"").attr({zIndex:7}).add(),this.contentGroup=K.g().attr({zIndex:1}).add(w),this.scrollGroup=K.g().add(this.contentGroup)),this.renderTitle(),u(dt,(nt,x)=>(nt.options&&nt.options.legendIndex||0)-(x.options&&x.options.legendIndex||0)),ct.reversed&&dt.reverse(),this.allItems=dt,this.display=pt=!!dt.length,this.lastLineHeight=0,this.maxItemWidth=0,this.totalItemWidth=0,this.itemHeight=0,dt.forEach(this.renderItem,this),dt.forEach(this.layoutItem,this),bt=(this.widthOption||this.offsetWidth)+et,Mt=this.lastItemY+this.lastLineHeight+this.titleHeight,Mt=this.handleOverflow(Mt)+et,tt||(this.box=tt=K.rect().addClass("highcharts-legend-box").attr({r:ct.borderRadius}).add(w)),b.styledMode||tt.attr({stroke:ct.borderColor,"stroke-width":ct.borderWidth||0,fill:ct.backgroundColor||"none"}).shadow(ct.shadow),bt>0&&Mt>0&&tt[tt.placed?"animate":"attr"](tt.crisp.call({},{x:0,y:0,width:bt,height:Mt},tt.strokeWidth())),w[pt?"show":"hide"](),b.styledMode&&w.getStyle("display")==="none"&&(bt=Mt=0),this.legendWidth=bt,this.legendHeight=Mt,pt&&this.align(),this.proximate||this.positionItems(),W(this,"afterRender")}align(b=this.chart.spacingBox){let K=this.chart,ct=this.options,et=b.y;/(lth|ct|rth)/.test(this.getAlignment())&&K.titleOffset[0]>0?et+=K.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&K.titleOffset[2]>0&&(et-=K.titleOffset[2]),et!==b.y&&(b=_(b,{y:et})),K.hasRendered||(this.group.placed=!1),this.group.align(_(ct,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":ct.verticalAlign}),!0,b)}handleOverflow(b){let K=this,ct=this.chart,et=ct.renderer,dt=this.options,pt=dt.y,bt=dt.verticalAlign==="top",Mt=this.padding,w=dt.maxHeight,B=dt.navigation,tt=C(B.animation,!0),nt=B.arrowSize||12,x=this.pages,y=this.allItems,j=function(Xt){typeof Xt=="number"?$t.attr({height:Xt}):$t&&(K.clipRect=$t.destroy(),K.contentGroup.clip()),K.contentGroup.div&&(K.contentGroup.div.style.clip=Xt?"rect("+Mt+"px,9999px,"+(Mt+Xt)+"px,0)":"auto")},lt=function(Xt){return K[Xt]=et.circle(0,0,1.3*nt).translate(nt/2,nt/2).add(At),ct.styledMode||K[Xt].attr("fill","rgba(0,0,0,0.0001)"),K[Xt]},rt,gt,vt,Ot=ct.spacingBox.height+(bt?-pt:pt)-Mt,At=this.nav,$t=this.clipRect;return dt.layout!=="horizontal"||dt.verticalAlign==="middle"||dt.floating||(Ot/=2),w&&(Ot=Math.min(Ot,w)),x.length=0,b&&Ot>0&&b>Ot&&B.enabled!==!1?(this.clipHeight=rt=Math.max(Ot-20-this.titleHeight-Mt,0),this.currentPage=C(this.currentPage,1),this.fullHeight=b,y.forEach((Xt,Ct)=>{let wt=(vt=Xt.legendItem||{}).y||0,Dt=Math.round(vt.label.getBBox().height),jt=x.length;(!jt||wt-x[jt-1]>rt&&(gt||wt)!==x[jt-1])&&(x.push(gt||wt),jt++),vt.pageIx=jt-1,gt&&((y[Ct-1].legendItem||{}).pageIx=jt-1),Ct===y.length-1&&wt+Dt-x[jt-1]>rt&&wt>x[jt-1]&&(x.push(wt),vt.pageIx=jt),wt!==gt&&(gt=wt)}),$t||($t=K.clipRect=et.clipRect(0,Mt-2,9999,0),K.contentGroup.clip($t)),j(rt),At||(this.nav=At=et.g().attr({zIndex:1}).add(this.group),this.up=et.symbol("triangle",0,0,nt,nt).add(At),lt("upTracker").on("click",function(){K.scroll(-1,tt)}),this.pager=et.text("",15,10).addClass("highcharts-legend-navigation"),!ct.styledMode&&B.style&&this.pager.css(B.style),this.pager.add(At),this.down=et.symbol("triangle-down",0,0,nt,nt).add(At),lt("downTracker").on("click",function(){K.scroll(1,tt)})),K.scroll(0),b=Ot):At&&(j(),this.nav=At.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),b}scroll(b,K){let ct=this.chart,et=this.pages,dt=et.length,pt=this.clipHeight,bt=this.options.navigation,Mt=this.pager,w=this.padding,B=this.currentPage+b;B>dt&&(B=dt),B>0&&(K!==void 0&&N(K,ct),this.nav.attr({translateX:w,translateY:pt+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(tt){tt.attr({class:B===1?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),Mt.attr({text:B+"/"+dt}),[this.down,this.downTracker].forEach(function(tt){tt.attr({x:18+this.pager.getBBox().width,class:B===dt?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),ct.styledMode||(this.up.attr({fill:B===1?bt.inactiveColor:bt.activeColor}),this.upTracker.css({cursor:B===1?"default":"pointer"}),this.down.attr({fill:B===dt?bt.inactiveColor:bt.activeColor}),this.downTracker.css({cursor:B===dt?"default":"pointer"})),this.scrollOffset=-et[B-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=B,this.positionCheckboxes(),v(()=>{W(this,"afterScroll",{currentPage:B})},V(C(K,ct.renderer.globalAnimation,!0)).duration))}setItemEvents(b,K,ct){let et=this,dt=b.legendItem||{},pt=et.chart.renderer.boxWrapper,bt=b instanceof J,Mt=b instanceof $,w="highcharts-legend-"+(bt?"point":"series")+"-active",B=et.chart.styledMode,tt=ct?[K,dt.symbol]:[dt.group],nt=x=>{et.allItems.forEach(y=>{b!==y&&[y].concat(y.linkedSeries||[]).forEach(j=>{j.setState(x,!bt)})})};for(let x of tt)x&&x.on("mouseover",function(){b.visible&&nt("inactive"),b.setState("hover"),b.visible&&pt.addClass(w),B||K.css(et.options.itemHoverStyle)}).on("mouseout",function(){et.chart.styledMode||K.css(_(b.visible?et.itemStyle:et.itemHiddenStyle)),nt(""),pt.removeClass(w),b.setState()}).on("click",function(y){let j=function(){b.setVisible&&b.setVisible(),nt(b.visible?"inactive":"")};pt.removeClass(w),W(et,"itemClick",{browserEvent:y,legendItem:b},j),bt?b.firePointEvent("legendItemClick",{browserEvent:y}):Mt&&W(b,"legendItemClick",{browserEvent:y})})}createCheckboxForItem(b){b.checkbox=z("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:b.selected,defaultChecked:b.selected},this.options.itemCheckboxStyle,this.chart.container),H(b.checkbox,"click",function(K){let ct=K.target;W(b.series||b,"checkboxClick",{checked:ct.checked,item:b},function(){b.select()})})}}return(Y=I||(I={})).compose=function(S){h(T,"Core.Legend")&&H(S,"beforeMargins",function(){this.legend=new Y(this,this.options.legend)})},I}),g(d,"Core/Chart/Chart.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Defaults.js"],d["Core/Templating.js"],d["Core/Foundation.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Time.js"],d["Core/Utilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Axis/Tick.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A){let{animate:M,animObject:O,setAnimation:H}=L,{defaultOptions:z,defaultTime:c}=st,{numberFormat:D}=$,{registerEventOptions:it}=J,{charts:Q,doc:W,marginNames:k,svg:_,win:C}=X,{seriesTypes:h}=Y,{addEvent:l,attr:u,createElement:v,css:I,defined:S,diffObjects:b,discardElement:K,erase:ct,error:et,extend:dt,find:pt,fireEvent:bt,getStyle:Mt,isArray:w,isNumber:B,isObject:tt,isString:nt,merge:x,objectEach:y,pick:j,pInt:lt,relativeLength:rt,removeEvent:gt,splat:vt,syncTimeout:Ot,uniqueKey:At}=U;class $t{static chart(Ct,wt,Dt){return new $t(Ct,wt,Dt)}constructor(Ct,wt,Dt){this.sharedClips={};let jt=[...arguments];(nt(Ct)||Ct.nodeName)&&(this.renderTo=jt.shift()),this.init(jt[0],jt[1])}setZoomOptions(){let Ct=this.options.chart,wt=Ct.zooming;this.zooming=Mi(xr({},wt),{type:j(Ct.zoomType,wt.type),key:j(Ct.zoomKey,wt.key),pinchType:j(Ct.pinchType,wt.pinchType),singleTouch:j(Ct.zoomBySingleTouch,wt.singleTouch,!1),resetButton:x(wt.resetButton,Ct.resetZoomButton)})}init(Ct,wt){bt(this,"init",{args:arguments},function(){let Dt=x(z,Ct),jt=Dt.chart;this.userOptions=dt({},Ct),this.margin=[],this.spacing=[],this.labelCollectors=[],this.callback=wt,this.isResizing=0,this.options=Dt,this.axes=[],this.series=[],this.time=Ct.time&&Object.keys(Ct.time).length?new N(Ct.time):X.time,this.numberFormatter=jt.numberFormatter||D,this.styledMode=jt.styledMode,this.hasCartesianSeries=jt.showAxes,this.index=Q.length,Q.push(this),X.chartCount++,it(this,jt),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,this.setZoomOptions(),bt(this,"afterInit"),this.firstRender()})}initSeries(Ct){let wt=this.options.chart,Dt=Ct.type||wt.type,jt=h[Dt];jt||et(17,!0,this,{missingModuleFor:Dt});let re=new jt;return typeof re.init=="function"&&re.init(this,Ct),re}setSortedData(){this.getSeriesOrderByLinks().forEach(function(Ct){Ct.points||Ct.data||!Ct.enabledDataSorting||Ct.setData(Ct.options.data,!1)})}getSeriesOrderByLinks(){return this.series.concat().sort(function(Ct,wt){return Ct.linkedSeries.length||wt.linkedSeries.length?wt.linkedSeries.length-Ct.linkedSeries.length:0})}orderItems(Ct,wt=0){let Dt=this[Ct],jt=this.options[Ct]=vt(this.options[Ct]).slice(),re=this.userOptions[Ct]=this.userOptions[Ct]?vt(this.userOptions[Ct]).slice():[];if(this.hasRendered&&(jt.splice(wt),re.splice(wt)),Dt)for(let le=wt,Gt=Dt.length;le=Math.max(ve+le,Jt.pos)&&Et<=Math.min(ve+le+Ke.width,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}if(!Dt.ignoreY&&Qt.isInsidePlot){let Jt=!jt&&Dt.axis&&!Dt.axis.isXAxis&&Dt.axis||Te&&(jt?Te.xAxis:Te.yAxis)||{pos:Gt,len:1/0},Et=Dt.paneCoordinates?Jt.pos+un:Gt+un;Et>=Math.max(Ce+Gt,Jt.pos)&&Et<=Math.min(Ce+Gt+Ke.height,Jt.pos+Jt.len)||(Qt.isInsidePlot=!1)}return bt(this,"afterIsInsidePlot",Qt),Qt.isInsidePlot}redraw(Ct){bt(this,"beforeRedraw");let wt=this.hasCartesianSeries?this.axes:this.colorAxis||[],Dt=this.series,jt=this.pointer,re=this.legend,le=this.userOptions.legend,Gt=this.renderer,he=Gt.isHidden(),ve=[],Ce,Te,Ke,rn=this.isDirtyBox,un=this.isDirtyLegend,Qt;for(Gt.rootFontSize=Gt.boxWrapper.getStyle("font-size"),this.setResponsive&&this.setResponsive(!1),H(!!this.hasRendered&&Ct,this),he&&this.temporaryDisplay(),this.layOutTitles(!1),Ke=Dt.length;Ke--;)if(((Qt=Dt[Ke]).options.stacking||Qt.options.centerInCategory)&&(Te=!0,Qt.isDirty)){Ce=!0;break}if(Ce)for(Ke=Dt.length;Ke--;)(Qt=Dt[Ke]).options.stacking&&(Qt.isDirty=!0);Dt.forEach(function(Kt){Kt.isDirty&&(Kt.options.legendType==="point"?(typeof Kt.updateTotals=="function"&&Kt.updateTotals(),un=!0):le&&(le.labelFormatter||le.labelFormat)&&(un=!0)),Kt.isDirtyData&&bt(Kt,"updatedData")}),un&&re&&re.options.enabled&&(re.render(),this.isDirtyLegend=!1),Te&&this.getStacks(),wt.forEach(function(Kt){Kt.updateNames(),Kt.setScale()}),this.getMargins(),wt.forEach(function(Kt){Kt.isDirty&&(rn=!0)}),wt.forEach(function(Kt){let Jt=Kt.min+","+Kt.max;Kt.extKey!==Jt&&(Kt.extKey=Jt,ve.push(function(){bt(Kt,"afterSetExtremes",dt(Kt.eventArgs,Kt.getExtremes())),delete Kt.eventArgs})),(rn||Te)&&Kt.redraw()}),rn&&this.drawChartBox(),bt(this,"predraw"),Dt.forEach(function(Kt){(rn||Kt.isDirty)&&Kt.visible&&Kt.redraw(),Kt.isDirtyData=!1}),jt&&jt.reset(!0),Gt.draw(),bt(this,"redraw"),bt(this,"render"),he&&this.temporaryDisplay(!0),ve.forEach(function(Kt){Kt.call()})}get(Ct){let wt=this.series;function Dt(re){return re.id===Ct||re.options&&re.options.id===Ct}let jt=pt(this.axes,Dt)||pt(this.series,Dt);for(let re=0;!jt&&re(wt.getPointsCollection().forEach(Dt=>{j(Dt.selectedStaging,Dt.selected)&&Ct.push(Dt)}),Ct),[])}getSelectedSeries(){return this.series.filter(function(Ct){return Ct.selected})}setTitle(Ct,wt,Dt){this.applyDescription("title",Ct),this.applyDescription("subtitle",wt),this.applyDescription("caption",void 0),this.layOutTitles(Dt)}applyDescription(Ct,wt){let Dt=this,jt=this.options[Ct]=x(this.options[Ct],wt),re=this[Ct];re&&wt&&(this[Ct]=re=re.destroy()),jt&&!re&&((re=this.renderer.text(jt.text,0,0,jt.useHTML).attr({align:jt.align,class:"highcharts-"+Ct,zIndex:jt.zIndex||4}).add()).update=function(le,Gt){Dt.applyDescription(Ct,le),Dt.layOutTitles(Gt)},this.styledMode||re.css(dt(Ct==="title"?{fontSize:this.options.isStock?"1em":"1.2em"}:{},jt.style)),this[Ct]=re)}layOutTitles(Ct=!0){let wt=[0,0,0],Dt=this.renderer,jt=this.spacingBox;["title","subtitle","caption"].forEach(function(le){let Gt=this[le],he=this.options[le],ve=he.verticalAlign||"top",Ce=le==="title"?ve==="top"?-3:0:ve==="top"?wt[0]+2:0;if(Gt){Gt.css({width:(he.width||jt.width+(he.widthAdjust||0))+"px"});let Te=Dt.fontMetrics(Gt).b,Ke=Math.round(Gt.getBBox(he.useHTML).height);Gt.align(dt({y:ve==="bottom"?Te:Ce+Te,height:Ke},he),!1,"spacingBox"),he.floating||(ve==="top"?wt[0]=Math.ceil(wt[0]+Ke):ve==="bottom"&&(wt[2]=Math.ceil(wt[2]+Ke)))}},this),wt[0]&&(this.options.title.verticalAlign||"top")==="top"&&(wt[0]+=this.options.title.margin),wt[2]&&this.options.caption.verticalAlign==="bottom"&&(wt[2]+=this.options.caption.margin);let re=!this.titleOffset||this.titleOffset.join(",")!==wt.join(",");this.titleOffset=wt,bt(this,"afterLayOutTitles"),!this.isDirtyBox&&re&&(this.isDirtyBox=this.isDirtyLegend=re,this.hasRendered&&Ct&&this.isDirtyBox&&this.redraw())}getContainerBox(){let Ct=[].map.call(this.renderTo.children,Dt=>{if(Dt!==this.container){let jt=Dt.style.display;return Dt.style.display="none",[Dt,jt]}}),wt={width:Mt(this.renderTo,"width",!0)||0,height:Mt(this.renderTo,"height",!0)||0};return Ct.filter(Boolean).forEach(([Dt,jt])=>{Dt.style.display=jt}),wt}getChartSize(){var le;let Ct=this.options.chart,wt=Ct.width,Dt=Ct.height,jt=this.getContainerBox(),re=jt.height>1&&!(!((le=this.renderTo.parentElement)!=null&&le.style.height)&&this.renderTo.style.height==="100%");this.chartWidth=Math.max(0,wt||jt.width||600),this.chartHeight=Math.max(0,rt(Dt,this.chartWidth)||(re?jt.height:400)),this.containerBox=jt}temporaryDisplay(Ct){let wt=this.renderTo,Dt;if(Ct)for(;wt&&wt.style;)wt.hcOrigStyle&&(I(wt,wt.hcOrigStyle),delete wt.hcOrigStyle),wt.hcOrigDetached&&(W.body.removeChild(wt),wt.hcOrigDetached=!1),wt=wt.parentNode;else for(;wt&&wt.style&&(W.body.contains(wt)||wt.parentNode||(wt.hcOrigDetached=!0,W.body.appendChild(wt)),(Mt(wt,"display",!1)==="none"||wt.hcOricDetached)&&(wt.hcOrigStyle={display:wt.style.display,height:wt.style.height,overflow:wt.style.overflow},Dt={display:"block",overflow:"hidden"},wt!==this.renderTo&&(Dt.height=0),I(wt,Dt),wt.offsetWidth||wt.style.setProperty("display","block","important")),(wt=wt.parentNode)!==W.body););}setClassName(Ct){this.container.className="highcharts-container "+(Ct||"")}getContainer(){var Ke;let Ct=this.options,wt=Ct.chart,Dt="data-highcharts-chart",jt=At(),re,le=this.renderTo;le||(this.renderTo=le=wt.renderTo),nt(le)&&(this.renderTo=le=W.getElementById(le)),le||et(13,!0,this);let Gt=lt(u(le,Dt));B(Gt)&&Q[Gt]&&Q[Gt].hasRendered&&Q[Gt].destroy(),u(le,Dt,this.index),le.innerHTML=T.emptyHTML,wt.skipClone||le.offsetWidth||this.temporaryDisplay(),this.getChartSize();let he=this.chartHeight,ve=this.chartWidth;I(le,{overflow:"hidden"}),this.styledMode||(re=dt({position:"relative",overflow:"hidden",width:ve+"px",height:he+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none",padding:"0px"},wt.style||{}));let Ce=v("div",{id:jt},re,le);this.container=Ce,this.getChartSize(),ve===this.chartWidth||(ve=this.chartWidth,this.styledMode||I(Ce,{width:j((Ke=wt.style)==null?void 0:Ke.width,ve+"px")})),this.containerBox=this.getContainerBox(),this._cursor=Ce.style.cursor;let Te=wt.renderer||!_?q.getRendererType(wt.renderer):V;if(this.renderer=new Te(Ce,ve,he,void 0,wt.forExport,Ct.exporting&&Ct.exporting.allowHTML,this.styledMode),H(void 0,this),this.setClassName(wt.className),this.styledMode)for(let rn in Ct.defs)this.renderer.definition(Ct.defs[rn]);else this.renderer.setStyle(wt.style);this.renderer.chartIndex=this.index,bt(this,"afterGetContainer")}getMargins(Ct){let{spacing:wt,margin:Dt,titleOffset:jt}=this;this.resetMargins(),jt[0]&&!S(Dt[0])&&(this.plotTop=Math.max(this.plotTop,jt[0]+wt[0])),jt[2]&&!S(Dt[2])&&(this.marginBottom=Math.max(this.marginBottom,jt[2]+wt[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(Dt,wt),bt(this,"getMargins"),Ct||this.getAxisMargins()}getAxisMargins(){let Ct=this,wt=Ct.axisOffset=[0,0,0,0],Dt=Ct.colorAxis,jt=Ct.margin,re=function(le){le.forEach(function(Gt){Gt.visible&&Gt.getOffset()})};Ct.hasCartesianSeries?re(Ct.axes):Dt&&Dt.length&&re(Dt),k.forEach(function(le,Gt){S(jt[Gt])||(Ct[le]+=wt[Gt])}),Ct.setChartSize()}getOptions(){return b(this.userOptions,z)}reflow(Ct){var re;let wt=this,Dt=wt.containerBox,jt=wt.getContainerBox();(re=wt.pointer)==null||delete re.chartPosition,!wt.isPrinting&&!wt.isResizing&&Dt&&jt.width&&((jt.width!==Dt.width||jt.height!==Dt.height)&&(U.clearTimeout(wt.reflowTimeout),wt.reflowTimeout=Ot(function(){wt.container&&wt.setSize(void 0,void 0,!1)},Ct?100:0)),wt.containerBox=jt)}setReflow(){let Ct=this,wt=Dt=>{var jt;(jt=Ct.options)!=null&&jt.chart.reflow&&Ct.hasLoaded&&Ct.reflow(Dt)};if(typeof ResizeObserver=="function")new ResizeObserver(wt).observe(Ct.renderTo);else{let Dt=l(C,"resize",wt);l(this,"destroy",Dt)}}setSize(Ct,wt,Dt){let jt=this,re=jt.renderer;jt.isResizing+=1,H(Dt,jt);let le=re.globalAnimation;jt.oldChartHeight=jt.chartHeight,jt.oldChartWidth=jt.chartWidth,Ct!==void 0&&(jt.options.chart.width=Ct),wt!==void 0&&(jt.options.chart.height=wt),jt.getChartSize();let{chartWidth:Gt,chartHeight:he,scrollablePixelsX:ve=0,scrollablePixelsY:Ce=0}=jt;(jt.isDirtyBox||Gt!==jt.oldChartWidth||he!==jt.oldChartHeight)&&(jt.styledMode||(le?M:I)(jt.container,{width:`${Gt+ve}px`,height:`${he+Ce}px`},le),jt.setChartSize(!0),re.setSize(Gt,he,le),jt.axes.forEach(function(Te){Te.isDirty=!0,Te.setScale()}),jt.isDirtyLegend=!0,jt.isDirtyBox=!0,jt.layOutTitles(),jt.getMargins(),jt.redraw(le),jt.oldChartHeight=void 0,bt(jt,"resize"),setTimeout(()=>{jt&&bt(jt,"endResize")},O(le).duration)),jt.isResizing-=1}setChartSize(Ct){let wt,Dt,jt,re,{chartHeight:le,chartWidth:Gt,inverted:he,spacing:ve,renderer:Ce}=this,Te=this.clipOffset,Ke=Math[he?"floor":"round"];this.plotLeft=wt=Math.round(this.plotLeft),this.plotTop=Dt=Math.round(this.plotTop),this.plotWidth=jt=Math.max(0,Math.round(Gt-wt-this.marginRight)),this.plotHeight=re=Math.max(0,Math.round(le-Dt-this.marginBottom)),this.plotSizeX=he?re:jt,this.plotSizeY=he?jt:re,this.spacingBox=Ce.spacingBox={x:ve[3],y:ve[0],width:Gt-ve[3]-ve[1],height:le-ve[0]-ve[2]},this.plotBox=Ce.plotBox={x:wt,y:Dt,width:jt,height:re},Te&&(this.clipBox={x:Ke(Te[3]),y:Ke(Te[0]),width:Ke(this.plotSizeX-Te[1]-Te[3]),height:Ke(this.plotSizeY-Te[0]-Te[2])}),Ct||(this.axes.forEach(function(rn){rn.setAxisSize(),rn.setAxisTranslation()}),Ce.alignElements()),bt(this,"afterSetChartSize",{skipAxes:Ct})}resetMargins(){bt(this,"resetMargins");let Ct=this,wt=Ct.options.chart,Dt=wt.plotBorderWidth||0,jt=Dt/2;["margin","spacing"].forEach(function(re){let le=wt[re],Gt=tt(le)?le:[le,le,le,le];["Top","Right","Bottom","Left"].forEach(function(he,ve){Ct[re][ve]=j(wt[re+he],Gt[ve])})}),k.forEach(function(re,le){Ct[re]=j(Ct.margin[le],Ct.spacing[le])}),Ct.axisOffset=[0,0,0,0],Ct.clipOffset=[jt,jt,jt,jt],Ct.plotBorderWidth=Dt}drawChartBox(){let Ct=this.options.chart,wt=this.renderer,Dt=this.chartWidth,jt=this.chartHeight,re=this.styledMode,le=this.plotBGImage,Gt=Ct.backgroundColor,he=Ct.plotBackgroundColor,ve=Ct.plotBackgroundImage,Ce=this.plotLeft,Te=this.plotTop,Ke=this.plotWidth,rn=this.plotHeight,un=this.plotBox,Qt=this.clipRect,Kt=this.clipBox,Jt=this.chartBackground,Et=this.plotBackground,Rt=this.plotBorder,zt,Ft,ce,Se="animate";Jt||(this.chartBackground=Jt=wt.rect().addClass("highcharts-background").add(),Se="attr"),re?zt=Ft=Jt.strokeWidth():(Ft=(zt=Ct.borderWidth||0)+(Ct.shadow?8:0),ce={fill:Gt||"none"},(zt||Jt["stroke-width"])&&(ce.stroke=Ct.borderColor,ce["stroke-width"]=zt),Jt.attr(ce).shadow(Ct.shadow)),Jt[Se]({x:Ft/2,y:Ft/2,width:Dt-Ft-zt%2,height:jt-Ft-zt%2,r:Ct.borderRadius}),Se="animate",Et||(Se="attr",this.plotBackground=Et=wt.rect().addClass("highcharts-plot-background").add()),Et[Se](un),!re&&(Et.attr({fill:he||"none"}).shadow(Ct.plotShadow),ve&&(le?(ve!==le.attr("href")&&le.attr("href",ve),le.animate(un)):this.plotBGImage=wt.image(ve,Ce,Te,Ke,rn).add())),Qt?Qt.animate({width:Kt.width,height:Kt.height}):this.clipRect=wt.clipRect(Kt),Se="animate",Rt||(Se="attr",this.plotBorder=Rt=wt.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),re||Rt.attr({stroke:Ct.plotBorderColor,"stroke-width":Ct.plotBorderWidth||0,fill:"none"}),Rt[Se](Rt.crisp({x:Ce,y:Te,width:Ke,height:rn},-Rt.strokeWidth())),this.isDirtyBox=!1,bt(this,"afterDrawChartBox")}propFromSeries(){let Ct,wt,Dt,jt=this,re=jt.options.chart,le=jt.options.series;["inverted","angular","polar"].forEach(function(Gt){for(wt=h[re.type],Dt=re[Gt]||wt&&wt.prototype[Gt],Ct=le&&le.length;!Dt&&Ct--;)(wt=h[le[Ct].type])&&wt.prototype[Gt]&&(Dt=!0);jt[Gt]=Dt})}linkSeries(Ct){let wt=this,Dt=wt.series;Dt.forEach(function(jt){jt.linkedSeries.length=0}),Dt.forEach(function(jt){let{linkedTo:re}=jt.options;if(nt(re)){let le;(le=re===":previous"?wt.series[jt.index-1]:wt.get(re))&&le.linkedParent!==jt&&(le.linkedSeries.push(jt),jt.linkedParent=le,le.enabledDataSorting&&jt.setDataSortingOptions(),jt.visible=j(jt.options.visible,le.options.visible,jt.visible))}}),bt(this,"afterLinkSeries",{isUpdating:Ct})}renderSeries(){this.series.forEach(function(Ct){Ct.translate(),Ct.render()})}render(){var Ce;let Ct=this.axes,wt=this.colorAxis,Dt=this.renderer,jt=this.options.chart.axisLayoutRuns||2,re=Te=>{Te.forEach(Ke=>{Ke.visible&&Ke.render()})},le=0,Gt=!0,he,ve=0;for(let Te of(this.setTitle(),bt(this,"beforeMargins"),(Ce=this.getStacks)==null||Ce.call(this),this.getMargins(!0),this.setChartSize(),Ct)){let{options:Ke}=Te,{labels:rn}=Ke;if(this.hasCartesianSeries&&Te.horiz&&Te.visible&&rn.enabled&&Te.series.length&&Te.coll!=="colorAxis"&&!this.polar){le=Ke.tickLength,Te.createGroups();let un=new A(Te,0,"",!0),Qt=un.createLabel("x",rn);if(un.destroy(),Qt&&j(rn.reserveSpace,!B(Ke.crossing))&&(le=Qt.getBBox().height+rn.distance+Math.max(Ke.offset||0,0)),le){Qt==null||Qt.destroy();break}}}for(this.plotHeight=Math.max(this.plotHeight-le,0);(Gt||he||jt>1)&&ve(ve?1:1.1),he=Ke/this.plotHeight>(ve?1:1.05),ve++}this.drawChartBox(),this.hasCartesianSeries?re(Ct):wt&&wt.length&&re(wt),this.seriesGroup||(this.seriesGroup=Dt.g("series-group").attr({zIndex:3}).shadow(this.options.chart.seriesGroupShadow).add()),this.renderSeries(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0}addCredits(Ct){let wt=this,Dt=x(!0,this.options.credits,Ct);Dt.enabled&&!this.credits&&(this.credits=this.renderer.text(Dt.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){Dt.href&&(C.location.href=Dt.href)}).attr({align:Dt.position.align,zIndex:8}),wt.styledMode||this.credits.css(Dt.style),this.credits.add().align(Dt.position),this.credits.update=function(jt){wt.credits=wt.credits.destroy(),wt.addCredits(jt)})}destroy(){let Ct,wt=this,Dt=wt.axes,jt=wt.series,re=wt.container,le=re&&re.parentNode;for(bt(wt,"destroy"),wt.renderer.forExport?ct(Q,wt):Q[wt.index]=void 0,X.chartCount--,wt.renderTo.removeAttribute("data-highcharts-chart"),gt(wt),Ct=Dt.length;Ct--;)Dt[Ct]=Dt[Ct].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),Ct=jt.length;Ct--;)jt[Ct]=jt[Ct].destroy();["title","subtitle","chartBackground","plotBackground","plotBGImage","plotBorder","seriesGroup","clipRect","credits","pointer","rangeSelector","legend","resetZoomButton","tooltip","renderer"].forEach(function(Gt){let he=wt[Gt];he&&he.destroy&&(wt[Gt]=he.destroy())}),re&&(re.innerHTML=T.emptyHTML,gt(re),le&&K(re)),y(wt,function(Gt,he){delete wt[he]})}firstRender(){var jt;let Ct=this,wt=Ct.options;Ct.getContainer(),Ct.resetMargins(),Ct.setChartSize(),Ct.propFromSeries(),Ct.getAxes();let Dt=w(wt.series)?wt.series:[];wt.series=[],Dt.forEach(function(re){Ct.initSeries(re)}),Ct.linkSeries(),Ct.setSortedData(),bt(Ct,"beforeRender"),Ct.render(),(jt=Ct.pointer)==null||jt.getChartPosition(),Ct.renderer.imgCount||Ct.hasLoaded||Ct.onload(),Ct.temporaryDisplay(!0)}onload(){this.callbacks.concat([this.callback]).forEach(function(Ct){Ct&&this.index!==void 0&&Ct.apply(this,[this])},this),bt(this,"load"),bt(this,"render"),S(this.index)&&this.setReflow(),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0}warnIfA11yModuleNotLoaded(){let{options:Ct,title:wt}=this;!Ct||this.accessibility||(this.renderer.boxWrapper.attr({role:"img","aria-label":(wt&&wt.element.textContent||"").replace(/this.transform({reset:!0,trigger:"zoom"}))}pan(Ct,wt){let Dt=this,jt=typeof wt=="object"?wt:{enabled:wt,type:"x"},re=jt.type,le=re&&Dt[{x:"xAxis",xy:"axes",y:"yAxis"}[re]].filter(he=>he.options.panningEnabled&&!he.options.isInternal),Gt=Dt.options.chart;Gt!=null&&Gt.panning&&(Gt.panning=jt),bt(this,"pan",{originalEvent:Ct},()=>{Dt.transform({axes:le,event:Ct,to:{x:Ct.chartX-(Dt.mouseDownX||0),y:Ct.chartY-(Dt.mouseDownY||0)},trigger:"pan"}),I(Dt.container,{cursor:"move"})})}transform(Ct){var rn,un,Qt,Kt,Jt;let{axes:wt=this.axes,event:Dt,from:jt={},reset:re,selection:le,to:Gt={},trigger:he}=Ct,{inverted:ve}=this,Ce=!1,Te,Ke;for(let Et of((rn=this.hoverPoints)==null||rn.forEach(Rt=>Rt.setState()),wt)){let{horiz:Rt,len:zt,minPointOffset:Ft=0,options:ce,reversed:Se}=Et,xe=Rt?"width":"height",Ze=Rt?"x":"y",pn=j(Gt[xe],Et.len),bn=j(jt[xe],Et.len),Ln=10>Math.abs(pn)?1:pn/bn,vn=(jt[Ze]||0)+bn/2-Et.pos,Tn=vn-(((un=Gt[Ze])!=null?un:Et.pos)+pn/2-Et.pos)/Ln,Qn=Se&&!ve||!Se&&ve?-1:1;if(!re&&(vn<0||vn>Et.len))continue;let dr=Et.toValue(Tn,!0)+(le||Et.isOrdinal?0:Ft*Qn),ye=Et.toValue(Tn+zt/Ln,!0)-(le||Et.isOrdinal?0:Ft*Qn||0),Fe=Et.allExtremes;if(dr>ye&&([dr,ye]=[ye,dr]),Ln===1&&!re&&Et.coll==="yAxis"&&!Fe){for(let an of Et.series){let gn=an.getExtremes(an.getProcessedData(!0).yData,!0);Fe!=null||(Fe={dataMin:Number.MAX_VALUE,dataMax:-Number.MAX_VALUE}),B(gn.dataMin)&&B(gn.dataMax)&&(Fe.dataMin=Math.min(gn.dataMin,Fe.dataMin),Fe.dataMax=Math.max(gn.dataMax,Fe.dataMax))}Et.allExtremes=Fe}let{dataMin:qe,dataMax:be,min:je,max:Ue}=dt(Et.getExtremes(),Fe||{}),Re=qe!=null?qe:ce.min,Ie=be!=null?be:ce.max,tn=ye-dr,Mn=Et.categories?0:Math.min(tn,Ie-Re),ke=Re-Mn*(S(ce.min)?0:ce.minPadding),on=Ie+Mn*(S(ce.max)?0:ce.maxPadding),_n=Et.allowZoomOutside||Ln===1||he!=="zoom"&&Ln>1,Pe=Math.min((Qt=ce.min)!=null?Qt:ke,ke,_n?je:ke),wn=Math.max((Kt=ce.max)!=null?Kt:on,on,_n?Ue:on);(!Et.isOrdinal||Et.options.overscroll||Ln!==1||re)&&(dr=1&&(ye=dr+tn)),ye>wn&&(ye=wn,Ln>=1&&(dr=ye-tn)),(re||Et.series.length&&(dr!==je||ye!==Ue)&&dr>=Pe&&ye<=wn)&&(le?le[Et.coll].push({axis:Et,min:dr,max:ye}):(Et.isPanning=he!=="zoom",Et.isPanning&&(Ke=!0),Et.setExtremes(re?void 0:dr,re?void 0:ye,!1,!1,{move:Tn,trigger:he,scale:Ln}),!re&&(dr>Pe||ye{delete Ct.selection,Ct.trigger="zoom",this.transform(Ct)}):(!Te||Ke||this.resetZoomButton?!Te&&this.resetZoomButton&&(this.resetZoomButton=this.resetZoomButton.destroy()):this.showResetZoom(),this.redraw(he==="zoom"&&((Jt=this.options.chart.animation)!=null?Jt:this.pointCount<100)))),Ce}}return dt($t.prototype,{callbacks:[],collectionsWithInit:{xAxis:[$t.prototype.addAxis,[!0]],yAxis:[$t.prototype.addAxis,[!1]],series:[$t.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:["backgroundColor","borderColor","borderWidth","borderRadius","plotBackgroundColor","plotBackgroundImage","plotBorderColor","plotBorderWidth","plotShadow","shadow"],propsRequireReflow:["margin","marginTop","marginRight","marginBottom","marginLeft","spacing","spacingTop","spacingRight","spacingBottom","spacingLeft"],propsRequireUpdateSeries:["chart.inverted","chart.polar","chart.ignoreHiddenSeries","chart.type","colors","plotOptions","time","tooltip"]}),$t}),g(d,"Extensions/ScrollablePlotArea.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Globals.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{stop:J}=L,{composed:X}=R,{addEvent:q,createElement:Z,css:Y,defined:V,merge:N,pushUnique:U}=$;function T(){let O=this.scrollablePlotArea;(this.scrollablePixelsX||this.scrollablePixelsY)&&!O&&(this.scrollablePlotArea=O=new M(this)),O==null||O.applyFixed()}function A(){this.chart.scrollablePlotArea&&(this.chart.scrollablePlotArea.isDirty=!0)}class M{static compose(H,z,c){U(X,this.compose)&&(q(H,"afterInit",A),q(z,"afterSetChartSize",D=>this.afterSetSize(D.target,D)),q(z,"render",T),q(c,"show",A))}static afterSetSize(H,z){let c,D,it,{minWidth:Q,minHeight:W}=H.options.chart.scrollablePlotArea||{},{clipBox:k,plotBox:_,inverted:C,renderer:h}=H;if(!h.forExport&&(Q?(H.scrollablePixelsX=c=Math.max(0,Q-H.chartWidth),c&&(H.scrollablePlotBox=N(H.plotBox),_.width=H.plotWidth+=c,k[C?"height":"width"]+=c,it=!0)):W&&(H.scrollablePixelsY=D=Math.max(0,W-H.chartHeight),V(D)&&(H.scrollablePlotBox=N(H.plotBox),_.height=H.plotHeight+=D,k[C?"width":"height"]+=D,it=!1)),V(it)&&!z.skipAxes))for(let l of H.axes)l.horiz===it&&(l.setAxisSize(),l.setAxisTranslation())}constructor(H){var u,v;let z,c=H.options.chart,D=st.getRendererType(),it=c.scrollablePlotArea||{},Q=this.moveFixedElements.bind(this),W={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};H.scrollablePixelsX&&(W.overflowX="auto"),H.scrollablePixelsY&&(W.overflowY="auto"),this.chart=H;let k=this.parentDiv=Z("div",{className:"highcharts-scrolling-parent"},{position:"relative"},H.renderTo),_=this.scrollingContainer=Z("div",{className:"highcharts-scrolling"},W,k),C=this.innerContainer=Z("div",{className:"highcharts-inner-container"},void 0,_),h=this.fixedDiv=Z("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(((u=c.style)==null?void 0:u.zIndex)||0)+2,top:0},void 0,!0),l=this.fixedRenderer=new D(h,H.chartWidth,H.chartHeight,c.style);this.mask=l.path().attr({fill:c.backgroundColor||"#fff","fill-opacity":(v=it.opacity)!=null?v:.85,zIndex:-1}).addClass("highcharts-scrollable-mask").add(),_.parentNode.insertBefore(h,_),Y(H.renderTo,{overflow:"visible"}),q(H,"afterShowResetZoom",Q),q(H,"afterApplyDrilldown",Q),q(H,"afterLayOutTitles",Q),q(_,"scroll",()=>{let{pointer:I,hoverPoint:S}=H;I&&(delete I.chartPosition,S&&(z=S),I.runPointActions(void 0,z,!0))}),C.appendChild(H.container)}applyFixed(){var B;let{chart:H,fixedRenderer:z,isDirty:c,scrollingContainer:D}=this,{axisOffset:it,chartWidth:Q,chartHeight:W,container:k,plotHeight:_,plotLeft:C,plotTop:h,plotWidth:l,scrollablePixelsX:u=0,scrollablePixelsY:v=0}=H,{scrollPositionX:I=0,scrollPositionY:S=0}=H.options.chart.scrollablePlotArea||{},b=Q+u,K=W+v;z.setSize(Q,W),(c==null||c)&&(this.isDirty=!1,this.moveFixedElements()),J(H.container),Y(k,{width:`${b}px`,height:`${K}px`}),H.renderer.boxWrapper.attr({width:b,height:K,viewBox:[0,0,b,K].join(" ")}),(B=H.chartBackground)==null||B.attr({width:b,height:K}),Y(D,{width:`${Q}px`,height:`${W}px`}),V(c)||(D.scrollLeft=u*I,D.scrollTop=v*S);let ct=h-it[0]-1,et=C-it[3]-1,dt=h+_+it[2]+1,pt=C+l+it[1]+1,bt=C+l-u,Mt=h+_-v,w=[["M",0,0]];u?w=[["M",0,ct],["L",C-1,ct],["L",C-1,dt],["L",0,dt],["Z"],["M",bt,ct],["L",Q,ct],["L",Q,dt],["L",bt,dt],["Z"]]:v&&(w=[["M",et,0],["L",et,h-1],["L",pt,h-1],["L",pt,0],["Z"],["M",et,Mt],["L",et,W],["L",pt,W],["L",pt,Mt],["Z"]]),H.redrawTrigger!=="adjustHeight"&&this.mask.attr({d:w})}moveFixedElements(){let H,{container:z,inverted:c,scrollablePixelsX:D,scrollablePixelsY:it}=this.chart,Q=this.fixedRenderer,W=M.fixedSelectors;for(let k of(D&&!c?H=".highcharts-yaxis":D&&c||it&&!c?H=".highcharts-xaxis":it&&c&&(H=".highcharts-yaxis"),H&&W.push(`${H}:not(.highcharts-radial-axis)`,`${H}-labels:not(.highcharts-radial-axis-labels)`),W))[].forEach.call(z.querySelectorAll(k),_=>{(_.namespaceURI===Q.SVG_NS?Q.box:Q.box.parentNode).appendChild(_),_.style.pointerEvents="auto"})}}return M.fixedSelectors=[".highcharts-breadcrumbs-group",".highcharts-contextbutton",".highcharts-caption",".highcharts-credits",".highcharts-drillup-button",".highcharts-legend",".highcharts-legend-checkbox",".highcharts-navigator-series",".highcharts-navigator-xaxis",".highcharts-navigator-yaxis",".highcharts-navigator",".highcharts-range-selector-group",".highcharts-reset-zoom",".highcharts-scrollbar",".highcharts-subtitle",".highcharts-title"],M}),g(d,"Core/Axis/Stacking/StackItem.js",[d["Core/Templating.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{format:$}=L,{series:J}=R,{destroyObjectProperties:X,fireEvent:q,isNumber:Z,pick:Y}=st;return class{constructor(V,N,U,T,A){let M=V.chart.inverted,O=V.reversed;this.axis=V;let H=this.isNegative=!!U!=!!O;this.options=N=N||{},this.x=T,this.total=null,this.cumulative=null,this.points={},this.hasValidPoints=!1,this.stack=A,this.leftCliff=0,this.rightCliff=0,this.alignOptions={align:N.align||(M?H?"left":"right":"center"),verticalAlign:N.verticalAlign||(M?"middle":H?"bottom":"top"),y:N.y,x:N.x},this.textAlign=N.textAlign||(M?H?"right":"left":"center")}destroy(){X(this,this.axis)}render(V){let N=this.axis.chart,U=this.options,T=U.format,A=T?$(T,this,N):U.formatter.call(this);if(this.label)this.label.attr({text:A,visibility:"hidden"});else{this.label=N.renderer.label(A,null,void 0,U.shape,void 0,void 0,U.useHTML,!1,"stack-labels");let M={r:U.borderRadius||0,text:A,padding:Y(U.padding,5),visibility:"hidden"};N.styledMode||(M.fill=U.backgroundColor,M.stroke=U.borderColor,M["stroke-width"]=U.borderWidth,this.label.css(U.style||{})),this.label.attr(M),this.label.added||this.label.add(V)}this.label.labelrank=N.plotSizeY,q(this,"afterRender")}setOffset(V,N,U,T,A,M){let{alignOptions:O,axis:H,label:z,options:c,textAlign:D}=this,it=H.chart,Q=this.getStackBox({xOffset:V,width:N,boxBottom:U,boxTop:T,defaultX:A,xAxis:M}),{verticalAlign:W}=O;if(z&&Q){let k=z.getBBox(void 0,0),_=z.padding,C=Y(c.overflow,"justify")==="justify",h;O.x=c.x||0,O.y=c.y||0;let{x:l,y:u}=this.adjustStackPosition({labelBox:k,verticalAlign:W,textAlign:D});Q.x-=l,Q.y-=u,z.align(O,!1,Q),(h=it.isInsidePlot(z.alignAttr.x+O.x+l,z.alignAttr.y+O.y+u))||(C=!1),C&&J.prototype.justifyDataLabel.call(H,z,O,z.alignAttr,k,Q),z.attr({x:z.alignAttr.x,y:z.alignAttr.y,rotation:c.rotation,rotationOriginX:k.width*{left:0,center:.5,right:1}[c.textAlign||"center"],rotationOriginY:k.height/2}),Y(!C&&c.crop,!0)&&(h=Z(z.x)&&Z(z.y)&&it.isInsidePlot(z.x-_+(z.width||0),z.y)&&it.isInsidePlot(z.x+_,z.y)),z[h?"show":"hide"]()}q(this,"afterSetOffset",{xOffset:V,width:N})}adjustStackPosition({labelBox:V,verticalAlign:N,textAlign:U}){let T={bottom:0,middle:1,top:2,right:1,center:0,left:-1},A=T[N],M=T[U];return{x:V.width/2+V.width/2*M,y:V.height/2*A}}getStackBox(V){let N=this.axis,U=N.chart,{boxTop:T,defaultX:A,xOffset:M,width:O,boxBottom:H}=V,z=N.stacking.usePercentage?100:Y(T,this.total,0),c=N.toPixels(z),D=V.xAxis||U.xAxis[0],it=Y(A,D.translate(this.x))+M,Q=Math.abs(c-N.toPixels(H||Z(N.min)&&N.logarithmic&&N.logarithmic.lin2log(N.min)||0)),W=U.inverted,k=this.isNegative;return W?{x:(k?c:c-Q)-U.plotLeft,y:D.height-it-O+D.top-U.plotTop,width:Q,height:O}:{x:it+D.transB-U.plotLeft,y:(k?c-Q:c)-U.plotTop,width:O,height:Q}}}}),g(d,"Core/Axis/Stacking/StackingAxis.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Axis/Axis.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{getDeferredAnimation:q}=L,{series:{prototype:Z}}=st,{addEvent:Y,correctFloat:V,defined:N,destroyObjectProperties:U,fireEvent:T,isArray:A,isNumber:M,objectEach:O,pick:H}=J;function z(){let h=this.inverted;this.axes.forEach(l=>{l.stacking&&l.stacking.stacks&&l.hasVisibleSeries&&(l.stacking.oldStacks=l.stacking.stacks)}),this.series.forEach(l=>{let u=l.xAxis&&l.xAxis.options||{};l.options.stacking&&l.reserveSpace()&&(l.stackKey=[l.type,H(l.options.stack,""),h?u.top:u.left,h?u.height:u.width].join(","))})}function c(){var l;let h=this.stacking;if(h){let u=h.stacks;O(u,(v,I)=>{U(v),delete u[I]}),(l=h.stackTotalGroup)==null||l.destroy()}}function D(){this.stacking||(this.stacking=new C(this))}function it(h,l,u,v){return!N(h)||h.x!==l||v&&h.stackKey!==v?h={x:l,index:0,key:v,stackKey:v}:h.index++,h.key=[u,l,h.index].join(","),h}function Q(){let h,l=this,u=l.yAxis,v=l.stackKey||"",I=u.stacking.stacks,S=l.processedXData,b=l.options.stacking,K=l[b+"Stacker"];K&&[v,"-"+v].forEach(ct=>{var Mt;let et=S.length,dt,pt,bt;for(;et--;)dt=S[et],h=l.getStackIndicator(h,dt,l.index,ct),pt=(Mt=I[ct])==null?void 0:Mt[dt],(bt=pt==null?void 0:pt.points[h.key||""])&&K.call(l,bt,pt,et)})}function W(h,l,u){let v=l.total?100/l.total:0;h[0]=V(h[0]*v),h[1]=V(h[1]*v),this.stackedYData[u]=h[1]}function k(h){(this.is("column")||this.is("columnrange"))&&(this.options.centerInCategory&&!this.options.stacking&&this.chart.series.length>1?Z.setStackedPoints.call(this,h,"group"):h.stacking.resetStacks())}function _(h,l){var At,$t;let u,v,I,S,b,K,ct,et,dt,pt=l||this.options.stacking;if(!pt||!this.reserveSpace()||({group:"xAxis"}[pt]||"yAxis")!==h.coll)return;let bt=this.processedXData,Mt=this.processedYData,w=[],B=Mt.length,tt=this.options,nt=tt.threshold||0,x=tt.startFromThreshold?nt:0,y=tt.stack,j=l?`${this.type},${pt}`:this.stackKey||"",lt="-"+j,rt=this.negStacks,gt=h.stacking,vt=gt.stacks,Ot=gt.oldStacks;for(gt.stacksTouched+=1,ct=0;ct0&&this.singleStacks===!1&&(I.points[K][0]=I.points[this.index+","+et+",0"][0])):(delete I.points[K],delete I.points[this.index]);let Xt=I.total||0;pt==="percent"?(S=v?j:lt,Xt=rt&&(($t=vt[S])!=null&&$t[et])?(S=vt[S][et]).total=Math.max(S.total||0,Xt)+Math.abs(dt)||0:V(Xt+(Math.abs(dt)||0))):pt==="group"?(A(dt)&&(dt=dt[0]),dt!==null&&Xt++):Xt=V(Xt+(dt||0)),pt==="group"?I.cumulative=(Xt||1)-1:I.cumulative=V(H(I.cumulative,x)+(dt||0)),I.total=Xt,dt!==null&&(I.points[K].push(I.cumulative),w[ct]=I.cumulative,I.hasValidPoints=!0)}pt==="percent"&&(gt.usePercentage=!0),pt!=="group"&&(this.stackedYData=w),gt.oldStacks={}}class C{constructor(l){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=l}buildStacks(){let l,u,v=this.axis,I=v.series,S=v.coll==="xAxis",b=v.options.reversedStacks,K=I.length;for(this.resetStacks(),this.usePercentage=!1,u=K;u--;)l=I[b?u:K-u-1],S&&l.setGroupedPoints(v),l.setStackedPoints(v);if(!S)for(u=0;u{O(l,u=>{u.cumulative=u.total})}))}resetStacks(){O(this.stacks,l=>{O(l,(u,v)=>{M(u.touched)&&u.touched{O(ct,et=>{et.render(b)})}),b.animate({opacity:1},S)}}return(X||(X={})).compose=function(h,l,u){let v=l.prototype,I=u.prototype;v.getStacks||(Y(h,"init",D),Y(h,"destroy",c),v.getStacks=z,I.getStackIndicator=it,I.modifyStacks=Q,I.percentStacker=W,I.setGroupedPoints=k,I.setStackedPoints=_)},X}),g(d,"Series/Line/LineSeries.js",[d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{defined:$,merge:J,isObject:X}=st;class q extends L{drawGraph(){let Y=this.options,V=(this.gappedPath||this.getGraphPath).call(this),N=this.chart.styledMode;[this,...this.zones].forEach((U,T)=>{let A,M=U.graph,O=M?"animate":"attr",H=U.dashStyle||Y.dashStyle;M?(M.endX=this.preventGraphAnimation?null:V.xMap,M.animate({d:V})):V.length&&(U.graph=M=this.chart.renderer.path(V).addClass("highcharts-graph"+(T?` highcharts-zone-graph-${T-1} `:" ")+(T&&U.className||"")).attr({zIndex:1}).add(this.group)),M&&!N&&(A={stroke:!T&&Y.lineColor||U.color||this.color||"#cccccc","stroke-width":Y.lineWidth||0,fill:this.fillGraph&&this.color||"none"},H?A.dashstyle=H:Y.linecap!=="square"&&(A["stroke-linecap"]=A["stroke-linejoin"]="round"),M[O](A).shadow(T<2&&Y.shadow&&J({filterUnits:"userSpaceOnUse"},X(Y.shadow)?Y.shadow:{}))),M&&(M.startX=V.xMap,M.isArea=V.isArea)})}getGraphPath(Y,V,N){let U=this,T=U.options,A=[],M=[],O,H=T.step,z=(Y=Y||U.points).reversed;return z&&Y.reverse(),(H={right:1,center:2}[H]||H&&3)&&z&&(H=4-H),(Y=this.getValidPoints(Y,!1,!(T.connectNulls&&!V&&!N))).forEach(function(c,D){let it,Q=c.plotX,W=c.plotY,k=Y[D-1],_=c.isNull||typeof W!="number";(c.leftCliff||k&&k.rightCliff)&&!N&&(O=!0),_&&!$(V)&&D>0?O=!T.connectNulls:_&&!V?O=!0:(D===0||O?it=[["M",c.plotX,c.plotY]]:U.getPointSpline?it=[U.getPointSpline(Y,c,D)]:H?(it=H===1?[["L",k.plotX,W]]:H===2?[["L",(k.plotX+Q)/2,k.plotY],["L",(k.plotX+Q)/2,W]]:[["L",Q,k.plotY]]).push(["L",Q,W]):it=[["L",Q,W]],M.push(c.x),H&&(M.push(c.x),H===2&&M.push(c.x)),A.push.apply(A,it),O=!1)}),A.xMap=M,U.graphPath=A,A}}return q.defaultOptions=J(L.defaultOptions,{legendSymbol:"lineMarker"}),R.registerSeriesType("line",q),q}),g(d,"Series/Area/AreaSeriesDefaults.js",[],function(){return{threshold:0,legendSymbol:"areaMarker"}}),g(d,"Series/Area/AreaSeries.js",[d["Series/Area/AreaSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{line:$}}=R,{extend:J,merge:X,objectEach:q,pick:Z}=st;class Y extends ${drawGraph(){this.areaPath=[],super.drawGraph.apply(this);let{areaPath:N,options:U}=this;[this,...this.zones].forEach((T,A)=>{var c;let M={},O=T.fillColor||U.fillColor,H=T.area,z=H?"animate":"attr";H?(H.endX=this.preventGraphAnimation?null:N.xMap,H.animate({d:N})):(M.zIndex=0,(H=T.area=this.chart.renderer.path(N).addClass("highcharts-area"+(A?` highcharts-zone-area-${A-1} `:" ")+(A&&T.className||"")).add(this.group)).isArea=!0),this.chart.styledMode||(M.fill=O||T.color||this.color,M["fill-opacity"]=O?1:(c=U.fillOpacity)!=null?c:.75,H.css({pointerEvents:this.stickyTracking?"none":"auto"})),H[z](M),H.startX=N.xMap,H.shiftUnit=U.step?2:1})}getGraphPath(N){let U,T,A,M=$.prototype.getGraphPath,O=this.options,H=O.stacking,z=this.yAxis,c=[],D=[],it=this.index,Q=z.stacking.stacks[this.stackKey],W=O.threshold,k=Math.round(z.getThreshold(O.threshold)),_=Z(O.connectNulls,H==="percent"),C=function(S,b,K){let ct=N[S],et=H&&Q[ct.x].points[it],dt=ct[K+"Null"]||0,pt=ct[K+"Cliff"]||0,bt,Mt,w=!0;pt||dt?(bt=(dt?et[0]:et[1])+pt,Mt=et[0]+pt,w=!!dt):!H&&N[b]&&N[b].isNull&&(bt=Mt=W),bt!==void 0&&(D.push({plotX:U,plotY:bt===null?k:z.getThreshold(bt),isNull:w,isCliff:!0}),c.push({plotX:U,plotY:Mt===null?k:z.getThreshold(Mt),doCurve:!1}))};N=N||this.points,H&&(N=this.getStackPoints(N));for(let S=0,b=N.length;S1&&H&&D.some(S=>S.isCliff)&&(v.hasStackedCliffs=I.hasStackedCliffs=!0),v.xMap=h.xMap,this.areaPath=v,I}getStackPoints(N){let U=this,T=[],A=[],M=this.xAxis,O=this.yAxis,H=O.stacking.stacks[this.stackKey],z={},c=O.series,D=c.length,it=O.options.reversedStacks?1:-1,Q=c.indexOf(U);if(N=N||this.points,this.options.stacking){for(let k=0;kk.visible);A.forEach(function(k,_){let C=0,h,l;if(z[k]&&!z[k].isNull)T.push(z[k]),[-1,1].forEach(function(u){let v=u===1?"rightNull":"leftNull",I=H[A[_+u]],S=0;if(I){let b=Q;for(;b>=0&&b=0&&uQ&&U>O?(U=Math.max(Q,O),A=2*O-U):Uk&&A>O?(A=Math.max(k,O),U=2*O-A):A1){let l=this.xAxis.series.filter(S=>S.visible).map(S=>S.index),u=0,v=0;D((h=this.xAxis.stacking)==null?void 0:h.stacks,S=>{if(typeof _.x=="number"){let b=S[_.x.toString()];if(b&&O(b.points[this.index])){let K=Object.keys(b.points).filter(ct=>!ct.match(",")&&b.points[ct]&&b.points[ct].length>1).map(parseFloat).filter(ct=>l.indexOf(ct)!==-1).sort((ct,et)=>et-ct);u=K.indexOf(this.index),v=K.length}}}),u=this.xAxis.reversed?v-1-u:u;let I=(v-1)*C.paddedWidth+k;W=(_.plotX||0)+I/2-k-u*C.paddedWidth}return W}translate(){let W=this,k=W.chart,_=W.options,C=W.dense=W.closestPointRange*W.xAxis.transA<2,h=W.borderWidth=c(_.borderWidth,C?0:1),l=W.xAxis,u=W.yAxis,v=_.threshold,I=c(_.minPointLength,5),S=W.getColumnMetrics(),b=S.width,K=W.pointXOffset=S.offset,ct=W.dataMin,et=W.dataMax,dt=W.translatedThreshold=u.getThreshold(v),pt=W.barW=Math.max(b,1+2*h);_.pointPadding&&(pt=Math.ceil(pt)),J.prototype.translate.apply(W),W.points.forEach(function(bt){let Mt=c(bt.yBottom,dt),w=999+Math.abs(Mt),B=bt.plotX||0,tt=N(bt.plotY,-w,u.len+w),nt,x=Math.min(tt,Mt),y=Math.max(tt,Mt)-x,j=b,lt=B+K,rt=pt;I&&Math.abs(y)I?Mt-I:dt-(nt?I:0)),T(bt.options.pointWidth)&&(lt-=Math.round(((j=rt=Math.ceil(bt.options.pointWidth))-b)/2)),_.centerInCategory&&!_.stacking&&(lt=W.adjustForMissingColumns(lt,j,bt,S)),bt.barX=lt,bt.pointWidth=j,bt.tooltipPos=k.inverted?[N(u.len+u.pos-k.plotLeft-tt,u.pos-k.plotLeft,u.len+u.pos-k.plotLeft),l.len+l.pos-k.plotTop-lt-rt/2,y]:[l.left-k.plotLeft+lt+rt/2,N(tt+u.pos-k.plotTop,u.pos-k.plotTop,u.len+u.pos-k.plotTop),y],bt.shapeType=W.pointClass.prototype.shapeType||"roundedRect",bt.shapeArgs=W.crispCol(lt,bt.isNull?dt:x,rt,bt.isNull?0:y)}),M(this,"afterColumnTranslate")}drawGraph(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")}pointAttribs(W,k){let _=this.options,C=this.pointAttrToOptions||{},h=C.stroke||"borderColor",l=C["stroke-width"]||"borderWidth",u,v,I,S=W&&W.color||this.color,b=W&&W[h]||_[h]||S,K=W&&W.options.dashStyle||_.dashStyle,ct=W&&W[l]||_[l]||this[l]||0,et=c(W&&W.opacity,_.opacity,1);W&&this.zones.length&&(v=W.getZone(),S=W.options.color||v&&(v.color||W.nonZonedColor)||this.color,v&&(b=v.borderColor||b,K=v.dashStyle||K,ct=v.borderWidth||ct)),k&&W&&(I=(u=z(_.states[k],W.options.states&&W.options.states[k]||{})).brightness,S=u.color||I!==void 0&&Y(S).brighten(u.brightness).get()||S,b=u[h]||b,ct=u[l]||ct,K=u.dashStyle||K,et=c(u.opacity,et));let dt={fill:S,stroke:b,"stroke-width":ct,opacity:et};return K&&(dt.dashstyle=K),dt}drawPoints(W=this.points){let k,_=this,C=this.chart,h=_.options,l=C.renderer,u=h.animationLimit||250;W.forEach(function(v){let I=v.plotY,S=v.graphic,b=!!S,K=S&&C.pointCounth==null?void 0:h.enabled)}function c(h,l,u,v,I){var tt;let{chart:S,enabledDataSorting:b}=this,K=this.isCartesian&&S.inverted,ct=h.plotX,et=h.plotY,dt=u.rotation||0,pt=q(ct)&&q(et)&&S.isInsidePlot(ct,Math.round(et),{inverted:K,paneCoordinates:!0,series:this}),bt=dt===0&&A(u.overflow,b?"none":"justify")==="justify",Mt=this.visible&&h.visible!==!1&&q(ct)&&(h.series.forceDL||b&&!bt||pt||A(u.inside,!!this.options.stacking)&&v&&S.isInsidePlot(ct,K?v.x+1:v.y+v.height-1,{inverted:K,paneCoordinates:!0,series:this})),w=h.pos();if(Mt&&w){var B;let nt=l.getBBox(),x=l.getBBox(void 0,0),y={right:1,center:.5}[u.align||0]||0,j={bottom:1,middle:.5}[u.verticalAlign||0]||0;if(v=Z({x:w[0],y:Math.round(w[1]),width:0,height:0},v||{}),u.alignTo==="plotEdges"&&this.isCartesian&&(v[K?"x":"y"]=0,v[K?"width":"height"]=((tt=this.yAxis)==null?void 0:tt.len)||0),Z(u,{width:nt.width,height:nt.height}),B=v,b&&this.xAxis&&!bt&&this.setDataLabelStartPos(h,l,I,pt,B),l.align(U(u,{width:x.width,height:x.height}),!1,v,!1),l.alignAttr.x+=y*(x.width-nt.width),l.alignAttr.y+=j*(x.height-nt.height),l[l.placed?"animate":"attr"]({x:l.alignAttr.x+(nt.width-x.width)/2,y:l.alignAttr.y+(nt.height-x.height)/2,rotationOriginX:(l.width||0)/2,rotationOriginY:(l.height||0)/2}),bt&&v.height>=0)this.justifyDataLabel(l,u,l.alignAttr,nt,v,I);else if(A(u.crop,!0)){let{x:lt,y:rt}=l.alignAttr;Mt=S.isInsidePlot(lt,rt,{paneCoordinates:!0,series:this})&&S.isInsidePlot(lt+nt.width-1,rt+nt.height-1,{paneCoordinates:!0,series:this})}u.shape&&!dt&&l[I?"attr":"animate"]({anchorX:w[0],anchorY:w[1]})}I&&b&&(l.placed=!1),Mt||b&&!bt?(l.show(),l.placed=!0):(l.hide(),l.placed=!1)}function D(){return this.plotGroup("dataLabelsGroup","data-labels",this.hasRendered?"inherit":"hidden",this.options.dataLabels.zIndex||6)}function it(h){let l=this.hasRendered||0,u=this.initDataLabelsGroup().attr({opacity:+l});return!l&&u&&(this.visible&&u.show(),this.options.animation?u.animate({opacity:1},h):u.attr({opacity:1})),u}function Q(h){var Mt;let l;h=h||this.points;let u=this,v=u.chart,I=u.options,S=v.renderer,{backgroundColor:b,plotBackgroundColor:K}=v.options.chart,ct=S.getContrast(N(K)&&K||N(b)&&b||"#000000"),et=_(u),{animation:dt,defer:pt}=et[0],bt=pt?J(v,dt,u):{defer:0,duration:0};Y(this,"drawDataLabels"),(Mt=u.hasDataLabels)!=null&&Mt.call(u)&&(l=this.initDataLabels(bt),h.forEach(w=>{var nt,x;let B=w.dataLabels||[];O(k(et,w.dlOptions||((nt=w.options)==null?void 0:nt.dataLabels))).forEach((y,j)=>{let lt=y.enabled&&(w.visible||w.dataLabelOnHidden)&&(!w.isNull||w.dataLabelOnNull)&&function(le,Gt){let he=Gt.filter;if(he){let ve=he.operator,Ce=le[he.property],Te=he.value;return ve===">"&&Ce>Te||ve==="<"&&Ce="&&Ce>=Te||ve==="<="&&Ce<=Te||ve==="=="&&Ce==Te||ve==="==="&&Ce===Te||ve==="!="&&Ce!=Te||ve==="!=="&&Ce!==Te}return!0}(w,y),{backgroundColor:rt,borderColor:gt,distance:vt,style:Ot={}}=y,At,$t,Xt,Ct,wt={},Dt=B[j],jt=!Dt,re;lt&&($t=A(y[w.formatPrefix+"Format"],y.format),At=w.getLabelConfig(),Xt=q($t)?X($t,At,v):(y[w.formatPrefix+"Formatter"]||y.formatter).call(At,y),Ct=y.rotation,!v.styledMode&&(Ot.color=A(y.color,Ot.color,N(u.color)?u.color:void 0,"#000000"),Ot.color==="contrast"?(rt!=="none"&&(re=rt),w.contrastColor=S.getContrast(re!=="auto"&&re||w.color||u.color),Ot.color=re||!q(vt)&&y.inside||0>M(vt||0)||I.stacking?w.contrastColor:ct):delete w.contrastColor,I.cursor&&(Ot.cursor=I.cursor)),wt={r:y.borderRadius||0,rotation:Ct,padding:y.padding,zIndex:1},v.styledMode||(wt.fill=rt==="auto"?w.color:rt,wt.stroke=gt==="auto"?w.color:gt,wt["stroke-width"]=y.borderWidth),T(wt,(le,Gt)=>{le===void 0&&delete wt[Gt]})),!Dt||lt&&q(Xt)&&!!Dt.div==!!y.useHTML&&(Dt.rotation&&y.rotation||Dt.rotation===y.rotation)||(Dt=void 0,jt=!0),lt&&q(Xt)&&(Dt?wt.text=Xt:(Dt=S.label(Xt,0,0,y.shape,void 0,void 0,y.useHTML,void 0,"data-label")).addClass(" highcharts-data-label-color-"+w.colorIndex+" "+(y.className||"")+(y.useHTML?" highcharts-tracker":"")),Dt&&(Dt.options=y,Dt.attr(wt),v.styledMode?Ot.width&&Dt.css({width:Ot.width,textOverflow:Ot.textOverflow}):Dt.css(Ot).shadow(y.shadow),Y(Dt,"beforeAddingDataLabel",{labelOptions:y,point:w}),Dt.added||Dt.add(l),u.alignDataLabel(w,Dt,y,void 0,jt),Dt.isActive=!0,B[j]&&B[j]!==Dt&&B[j].destroy(),B[j]=Dt))});let tt=B.length;for(;tt--;)B[tt]&&B[tt].isActive?B[tt].isActive=!1:((x=B[tt])==null||x.destroy(),B.splice(tt,1));w.dataLabel=B[0],w.dataLabels=B})),Y(this,"afterDrawDataLabels")}function W(h,l,u,v,I,S){let b=this.chart,K=l.align,ct=l.verticalAlign,et=h.box?0:h.padding||0,dt=b.inverted?this.yAxis:this.xAxis,pt=dt?dt.left-b.plotLeft:0,bt=b.inverted?this.xAxis:this.yAxis,Mt=bt?bt.top-b.plotTop:0,{x:w=0,y:B=0}=l,tt,nt;return(tt=(u.x||0)+et+pt)<0&&(K==="right"&&w>=0?(l.align="left",l.inside=!0):w-=tt,nt=!0),(tt=(u.x||0)+v.width-et+pt)>b.plotWidth&&(K==="left"&&w<=0?(l.align="right",l.inside=!0):w+=b.plotWidth-tt,nt=!0),(tt=u.y+et+Mt)<0&&(ct==="bottom"&&B>=0?(l.verticalAlign="top",l.inside=!0):B-=tt,nt=!0),(tt=(u.y||0)+v.height-et+Mt)>b.plotHeight&&(ct==="top"&&B<=0?(l.verticalAlign="bottom",l.inside=!0):B+=b.plotHeight-tt,nt=!0),nt&&(l.x=w,l.y=B,h.placed=!S,h.align(l,void 0,I)),nt}function k(h,l){let u=[],v;if(V(h)&&!V(l))u=h.map(function(I){return U(I,l)});else if(V(l)&&!V(h))u=l.map(function(I){return U(h,I)});else if(V(h)||V(l)){if(V(h)&&V(l))for(v=Math.max(h.length,l.length);v--;)u[v]=U(h[v],l[v])}else u=U(h,l);return u}function _(h){var u,v;let l=h.chart.options.plotOptions;return O(k(k((u=l==null?void 0:l.series)==null?void 0:u.dataLabels,(v=l==null?void 0:l[h.type])==null?void 0:v.dataLabels),h.options.dataLabels))}function C(h,l,u,v,I){let S=this.chart,b=S.inverted,K=this.xAxis,ct=K.reversed,et=((b?l.height:l.width)||0)/2,dt=h.pointWidth,pt=dt?dt/2:0;l.startXPos=b?I.x:ct?-et-pt:K.width-et+pt,l.startYPos=b?ct?this.yAxis.height-et+pt:-et-pt:I.y,v?l.visibility==="hidden"&&(l.show(),l.attr({opacity:0}).animate({opacity:1})):l.attr({opacity:1}).animate({opacity:0},void 0,l.hide),S.hasRendered&&(u&&l.attr({x:l.startXPos,y:l.startYPos}),l.placed=!0)}H.compose=function(h){let l=h.prototype;l.initDataLabels||(l.initDataLabels=it,l.initDataLabelsGroup=D,l.alignDataLabel=c,l.drawDataLabels=Q,l.justifyDataLabel=W,l.setDataLabelStartPos=C,l.hasDataLabels=z)}}($||($={})),$}),g(d,"Series/Column/ColumnDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{composed:X}=R,{series:q}=st,{merge:Z,pick:Y,pushUnique:V}=$;return function(N){function U(T,A,M,O,H){let z=this.chart.inverted,c=T.series,D=(c.xAxis?c.xAxis.len:this.chart.plotSizeX)||0,it=(c.yAxis?c.yAxis.len:this.chart.plotSizeY)||0,Q=T.dlBox||T.shapeArgs,W=Y(T.below,T.plotY>Y(this.translatedThreshold,it)),k=Y(M.inside,!!this.options.stacking);if(Q){if(O=Z(Q),!(M.overflow==="allow"&&M.crop===!1)){O.y<0&&(O.height+=O.y,O.y=0);let _=O.y+O.height-it;_>0&&_\u25CF {series.name}
    ',pointFormat:"x: {point.x}
    y: {point.y}
    "}}}),g(d,"Series/Scatter/ScatterSeries.js",[d["Series/Scatter/ScatterSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{column:$,line:J}=R.seriesTypes,{addEvent:X,extend:q,merge:Z}=st;class Y extends J{applyJitter(){let N=this,U=this.options.jitter,T=this.points.length;U&&this.points.forEach(function(A,M){["x","y"].forEach(function(O,H){if(U[O]&&!A.isNull){let z=`plot${O.toUpperCase()}`,c=N[`${O}Axis`],D=U[O]*c.transA;if(c&&!c.logarithmic){let it=Math.max(0,(A[z]||0)-D),Q=Math.min(c.len,(A[z]||0)+D);A[z]=it+(Q-it)*function(W){let k=1e4*Math.sin(W);return k-Math.floor(k)}(M+H*T),O==="x"&&(A.clientX=A.plotX)}}})})}drawGraph(){this.options.lineWidth?super.drawGraph():this.graph&&(this.graph=this.graph.destroy())}}return Y.defaultOptions=Z(J.defaultOptions,L),q(Y.prototype,{drawTracker:$.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"]}),X(Y,"afterTranslate",function(){this.applyJitter()}),R.registerSeriesType("scatter",Y),Y}),g(d,"Series/CenteredUtilities.js",[d["Core/Globals.js"],d["Core/Series/Series.js"],d["Core/Utilities.js"]],function(L,R,st){var $,J;let{deg2rad:X}=L,{fireEvent:q,isNumber:Z,pick:Y,relativeLength:V}=st;return(J=$||($={})).getCenter=function(){let N=this.options,U=this.chart,T=2*(N.slicedOffset||0),A=U.plotWidth-2*T,M=U.plotHeight-2*T,O=N.center,H=Math.min(A,M),z=N.thickness,c,D=N.size,it=N.innerSize||0,Q,W;typeof D=="string"&&(D=parseFloat(D)),typeof it=="string"&&(it=parseFloat(it));let k=[Y(O[0],"50%"),Y(O[1],"50%"),Y(D&&D<0?void 0:N.size,"100%"),Y(it&&it<0?void 0:N.innerSize||0,"0%")];for(!U.angular||this instanceof R||(k[3]=0),Q=0;Q<4;++Q)W=k[Q],c=Q<2||Q===2&&/%$/.test(W),k[Q]=V(W,[A,M,H,k[2]][Q])+(c?T:0);return k[3]>k[2]&&(k[3]=k[2]),Z(z)&&2*z0&&(k[3]=k[2]-2*z),q(this,"afterGetCenter",{positions:k}),k},J.getStartAndEndRadians=function(N,U){let T=Z(N)?N:0,A=Z(U)&&U>T&&U-T<360?U:T+360;return{start:X*(T+-90),end:X*(A+-90)}},$}),g(d,"Series/Pie/PiePoint.js",[d["Core/Animation/AnimationUtilities.js"],d["Core/Series/Point.js"],d["Core/Utilities.js"]],function(L,R,st){let{setAnimation:$}=L,{addEvent:J,defined:X,extend:q,isNumber:Z,pick:Y,relativeLength:V}=st;class N extends R{getConnectorPath(T){let A=T.dataLabelPosition,M=T.options||{},O=M.connectorShape,H=this.connectorShapes[O]||O;return A&&H.call(this,Mi(xr({},A.computed),{alignment:A.alignment}),A.connectorPosition,M)||[]}getTranslate(){return this.sliced&&this.slicedTranslation||{translateX:0,translateY:0}}haloPath(T){let A=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(A.x,A.y,A.r+T,A.r+T,{innerR:A.r-1,start:A.start,end:A.end,borderRadius:A.borderRadius})}constructor(T,A,M){var H;super(T,A,M),this.half=0,(H=this.name)!=null||(this.name="Slice");let O=z=>{this.slice(z.type==="select")};J(this,"select",O),J(this,"unselect",O)}isValid(){return Z(this.y)&&this.y>=0}setVisible(T,A=!0){T!==this.visible&&this.update({visible:T!=null?T:!this.visible},A,void 0,!1)}slice(T,A,M){let O=this.series;$(M,O.chart),A=Y(A,!0),this.sliced=this.options.sliced=T=X(T)?T:!this.sliced,O.options.data[O.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate())}}return q(N.prototype,{connectorShapes:{fixedOffset:function(U,T,A){let M=T.breakAt,O=T.touchingSliceAt,H=A.softConnector?["C",U.x+(U.alignment==="left"?-5:5),U.y,2*M.x-O.x,2*M.y-O.y,M.x,M.y]:["L",M.x,M.y];return[["M",U.x,U.y],H,["L",O.x,O.y]]},straight:function(U,T){let A=T.touchingSliceAt;return[["M",U.x,U.y],["L",A.x,A.y]]},crookedLine:function(U,T,A){let{breakAt:M,touchingSliceAt:O}=T,{series:H}=this,[z,c,D]=H.center,it=D/2,{plotLeft:Q,plotWidth:W}=H.chart,k=U.alignment==="left",{x:_,y:C}=U,h=M.x;if(A.crookDistance){let u=V(A.crookDistance,1);h=k?z+it+(W+Q-z-it)*(1-u):Q+(z-it)*u}else h=z+(c-C)*Math.tan((this.angle||0)-Math.PI/2);let l=[["M",_,C]];return(k?h<=_&&h>=M.x:h>=_&&h<=M.x)&&l.push(["L",h,C]),l.push(["L",M.x,M.y],["L",O.x,O.y]),l}}}),N}),g(d,"Series/Pie/PieSeriesDefaults.js",[],function(){return{borderRadius:3,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{connectorPadding:5,connectorShape:"crookedLine",crookDistance:void 0,distance:30,enabled:!0,formatter:function(){return this.point.isNull?void 0:this.point.name},softConnector:!0,x:0},fillColor:void 0,ignoreHiddenPoint:!0,inactiveOtherPoints:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,stickyTracking:!1,tooltip:{followPointer:!0},borderColor:"#ffffff",borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}}}),g(d,"Series/Pie/PieSeries.js",[d["Series/CenteredUtilities.js"],d["Series/Column/ColumnSeries.js"],d["Core/Globals.js"],d["Series/Pie/PiePoint.js"],d["Series/Pie/PieSeriesDefaults.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/Symbols.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y){let{getStartAndEndRadians:V}=L,{noop:N}=st,{clamp:U,extend:T,fireEvent:A,merge:M,pick:O}=Y;class H extends X{animate(c){let D=this,it=D.points,Q=D.startAngleRad;c||it.forEach(function(W){let k=W.graphic,_=W.shapeArgs;k&&_&&(k.attr({r:O(W.startR,D.center&&D.center[3]/2),start:Q,end:Q}),k.animate({r:_.r,start:_.start,end:_.end},D.options.animation))})}drawEmpty(){let c,D,it=this.startAngleRad,Q=this.endAngleRad,W=this.options;this.total===0&&this.center?(c=this.center[0],D=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(c,D,this.center[1]/2,0,it,Q).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:Z.arc(c,D,this.center[2]/2,0,{start:it,end:Q,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":W.borderWidth,fill:W.fillColor||"none",stroke:W.color||"#cccccc"})):this.graph&&(this.graph=this.graph.destroy())}drawPoints(){let c=this.chart.renderer;this.points.forEach(function(D){D.graphic&&D.hasNewShapeType()&&(D.graphic=D.graphic.destroy()),D.graphic||(D.graphic=c[D.shapeType](D.shapeArgs).add(D.series.group),D.delayedRendering=!0)})}generatePoints(){super.generatePoints(),this.updateTotals()}getX(c,D,it,Q){let W=this.center,k=this.radii?this.radii[it.index]||0:W[2]/2,_=Q.dataLabelPosition,C=(_==null?void 0:_.distance)||0,h=Math.asin(U((c-W[1])/(k+C),-1,1));return W[0]+Math.cos(h)*(k+C)*(D?-1:1)+(C>0?(D?-1:1)*(Q.padding||0):0)}hasData(){return!!this.processedXData.length}redrawPoints(){let c,D,it,Q,W=this,k=W.chart;this.drawEmpty(),W.group&&!k.styledMode&&W.group.shadow(W.options.shadow),W.points.forEach(function(_){let C={};D=_.graphic,!_.isNull&&D?(Q=_.shapeArgs,c=_.getTranslate(),k.styledMode||(it=W.pointAttribs(_,_.selected&&"select")),_.delayedRendering?(D.setRadialReference(W.center).attr(Q).attr(c),k.styledMode||D.attr(it).attr({"stroke-linejoin":"round"}),_.delayedRendering=!1):(D.setRadialReference(W.center),k.styledMode||M(!0,C,it),M(!0,C,Q,c),D.animate(C)),D.attr({visibility:_.visible?"inherit":"hidden"}),D.addClass(_.getClassName(),!0)):D&&(_.graphic=D.destroy())})}sortByAngle(c,D){c.sort(function(it,Q){return it.angle!==void 0&&(Q.angle-it.angle)*D})}translate(c){A(this,"translate"),this.generatePoints();let D=this.options,it=D.slicedOffset,Q=V(D.startAngle,D.endAngle),W=this.startAngleRad=Q.start,k=(this.endAngleRad=Q.end)-W,_=this.points,C=D.ignoreHiddenPoint,h=_.length,l,u,v,I,S,b,K,ct=0;for(c||(this.center=c=this.getCenter()),b=0;b1.5*Math.PI?v-=2*Math.PI:v<-Math.PI/2&&(v+=2*Math.PI),K.slicedTranslation={translateX:Math.round(Math.cos(v)*it),translateY:Math.round(Math.sin(v)*it)},I=Math.cos(v)*c[2]/2,S=Math.sin(v)*c[2]/2,K.tooltipPos=[c[0]+.7*I,c[1]+.7*S],K.half=v<-Math.PI/2||v>Math.PI/2?1:0,K.angle=v}A(this,"afterTranslate")}updateTotals(){let c=this.points,D=c.length,it=this.options.ignoreHiddenPoint,Q,W,k=0;for(Q=0;Q0&&(W.visible||!it)?W.y/k*100:0,W.total=k}}return H.defaultOptions=M(X.defaultOptions,J),T(H.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawTracker:R.prototype.drawTracker,getCenter:L.getCenter,getSymbol:N,invertible:!1,isCartesian:!1,noSharedTooltip:!0,pointAttribs:R.prototype.pointAttribs,pointClass:$,requireSorting:!1,searchPoint:N,trackerGroups:["group","dataLabelsGroup"]}),q.registerSeriesType("pie",H),H}),g(d,"Series/Pie/PieDataLabel.js",[d["Core/Series/DataLabel.js"],d["Core/Globals.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){var X;let{composed:q,noop:Z}=R,{distribute:Y}=st,{series:V}=$,{arrayMax:N,clamp:U,defined:T,pick:A,pushUnique:M,relativeLength:O}=J;return function(H){let z={radialDistributionY:function(W,k){var _;return(((_=k.dataLabelPosition)==null?void 0:_.top)||0)+W.distributeBox.pos},radialDistributionX:function(W,k,_,C,h){let l=h.dataLabelPosition;return W.getX(_<((l==null?void 0:l.top)||0)+2||_>((l==null?void 0:l.bottom)||0)-2?C:_,k.half,k,h)},justify:function(W,k,_,C){var h;return C[0]+(W.half?-1:1)*(_+(((h=k.dataLabelPosition)==null?void 0:h.distance)||0))},alignToPlotEdges:function(W,k,_,C){let h=W.getBBox().width;return k?h+C:_-h-C},alignToConnectors:function(W,k,_,C){let h=0,l;return W.forEach(function(u){(l=u.dataLabel.getBBox().width)>h&&(h=l)}),k?h+C:_-h-C}};function c(W,k){let{center:_,options:C}=this,h=_[2]/2,l=W.angle||0,u=Math.cos(l),v=Math.sin(l),I=_[0]+u*h,S=_[1]+v*h,b=Math.min((C.slicedOffset||0)+(C.borderWidth||0),k/5);return{natural:{x:I+u*k,y:S+v*k},computed:{},alignment:k<0?"center":W.half?"right":"left",connectorPosition:{breakAt:{x:I+u*b,y:S+v*b},touchingSliceAt:{x:I,y:S}},distance:k}}function D(){var Mt;let W=this,k=W.points,_=W.chart,C=_.plotWidth,h=_.plotHeight,l=_.plotLeft,u=Math.round(_.chartWidth/3),v=W.center,I=v[2]/2,S=v[1],b=[[],[]],K=[0,0,0,0],ct=W.dataLabelPositioners,et,dt,pt,bt=0;W.visible&&((Mt=W.hasDataLabels)!=null&&Mt.call(W))&&(k.forEach(w=>{(w.dataLabels||[]).forEach(B=>{B.shortened&&(B.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),B.shortened=!1)})}),V.prototype.drawDataLabels.apply(W),k.forEach(w=>{(w.dataLabels||[]).forEach((B,tt)=>{var j;let nt=v[2]/2,x=B.options,y=O((x==null?void 0:x.distance)||0,nt);tt===0&&b[w.half].push(w),!T((j=x==null?void 0:x.style)==null?void 0:j.width)&&B.getBBox().width>u&&(B.css({width:Math.round(.7*u)+"px"}),B.shortened=!0),B.dataLabelPosition=this.getDataLabelPosition(w,y),bt=Math.max(bt,y)})}),b.forEach((w,B)=>{let tt=w.length,nt=[],x,y,j=0,lt;tt&&(W.sortByAngle(w,B-.5),bt>0&&(x=Math.max(0,S-I-bt),y=Math.min(S+I+bt,_.plotHeight),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{var Ot;let vt=gt.dataLabelPosition;vt&&vt.distance>0&&(vt.top=Math.max(0,S-I-vt.distance),vt.bottom=Math.min(S+I+vt.distance,_.plotHeight),j=gt.getBBox().height||21,gt.lineHeight=_.renderer.fontMetrics(gt.text||gt).h+2*gt.padding,rt.distributeBox={target:(((Ot=gt.dataLabelPosition)==null?void 0:Ot.natural.y)||0)-vt.top+gt.lineHeight/2,size:j,rank:rt.y},nt.push(rt.distributeBox))})}),Y(nt,lt=y+j-x,lt/5)),w.forEach(rt=>{(rt.dataLabels||[]).forEach(gt=>{let vt=gt.options||{},Ot=rt.distributeBox,At=gt.dataLabelPosition,$t=(At==null?void 0:At.natural.y)||0,Xt=vt.connectorPadding||0,Ct=gt.lineHeight||21,wt=(Ct-gt.getBBox().height)/2,Dt=0,jt=$t,re="inherit";if(At){if(nt&&T(Ot)&&At.distance>0&&(Ot.pos===void 0?re="hidden":(pt=Ot.size,jt=ct.radialDistributionY(rt,gt))),vt.justify)Dt=ct.justify(rt,gt,I,v);else switch(vt.alignTo){case"connectors":Dt=ct.alignToConnectors(w,B,C,l);break;case"plotEdges":Dt=ct.alignToPlotEdges(gt,B,C,l);break;default:Dt=ct.radialDistributionX(W,rt,jt-wt,$t,gt)}if(At.attribs={visibility:re,align:At.alignment},At.posAttribs={x:Dt+(vt.x||0)+({left:Xt,right:-Xt}[At.alignment]||0),y:jt+(vt.y||0)-Ct/2},At.computed.x=Dt,At.computed.y=jt-wt,A(vt.crop,!0)){let le;Dt-(dt=gt.getBBox().width)C-Xt&&B===0&&(le=Math.round(Dt+dt-C+Xt),K[1]=Math.max(le,K[1])),jt-pt/2<0?K[0]=Math.max(Math.round(-jt+pt/2),K[0]):jt+pt/2>h&&(K[2]=Math.max(Math.round(jt+pt/2-h),K[2])),At.sideOverflow=le}}})}))}),(N(K)===0||this.verifyDataLabelOverflow(K))&&(this.placeDataLabels(),this.points.forEach(w=>{(w.dataLabels||[]).forEach(B=>{var y;let{connectorColor:tt,connectorWidth:nt=1}=B.options||{},x=B.dataLabelPosition;if(nt){let j;et=B.connector,x&&x.distance>0?(j=!et,et||(B.connector=et=_.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+w.colorIndex+(w.className?" "+w.className:"")).add(W.dataLabelsGroup)),_.styledMode||et.attr({"stroke-width":nt,stroke:tt||w.color||"#666666"}),et[j?"attr":"animate"]({d:w.getConnectorPath(B)}),et.attr({visibility:(y=x.attribs)==null?void 0:y.visibility})):et&&(B.connector=et.destroy())}})})))}function it(){this.points.forEach(W=>{(W.dataLabels||[]).forEach(k=>{var C;let _=k.dataLabelPosition;_?(_.sideOverflow&&(k.css({width:Math.max(k.getBBox().width-_.sideOverflow,0)+"px",textOverflow:(((C=k.options)==null?void 0:C.style)||{}).textOverflow||"ellipsis"}),k.shortened=!0),k.attr(_.attribs),k[k.moved?"animate":"attr"](_.posAttribs),k.moved=!0):k&&k.attr({y:-9999})}),delete W.distributeBox},this)}function Q(W){let k=this.center,_=this.options,C=_.center,h=_.minSize||80,l=h,u=_.size!==null;return!u&&(C[0]!==null?l=Math.max(k[2]-Math.max(W[1],W[3]),h):(l=Math.max(k[2]-W[1]-W[3],h),k[0]+=(W[3]-W[1])/2),C[1]!==null?l=U(l,h,k[2]-Math.max(W[0],W[2])):(l=U(l,h,k[2]-W[0]-W[2]),k[1]+=(W[0]-W[2])/2),l(J.x+=X.x,J.y+=X.y,J),{x:0,y:0});return{x:$.x/st.length,y:$.y/st.length}},R.getDistanceBetweenPoints=function(st,$){return Math.sqrt(Math.pow($.x-st.x,2)+Math.pow($.y-st.y,2))},R.getAngleBetweenPoints=function(st,$){return Math.atan2($.x-st.x,$.y-st.y)},R.pointInPolygon=function({x:st,y:$},J){let X=J.length,q,Z,Y=!1;for(q=0,Z=X-1;q$!=T>$&&st<(U-V)*($-N)/(T-N)+V&&(Y=!Y)}return Y},L}),g(d,"Extensions/OverlappingDataLabels.js",[d["Core/Geometry/GeometryUtilities.js"],d["Core/Utilities.js"]],function(L,R){let{pointInPolygon:st}=L,{addEvent:$,fireEvent:J,objectEach:X,pick:q}=R;function Z(N){let U=N.length,T=(it,Q)=>!(Q.x>=it.x+it.width||Q.x+Q.width<=it.x||Q.y>=it.y+it.height||Q.y+Q.height<=it.y),A=(it,Q)=>{for(let W of it)if(st({x:W[0],y:W[1]},Q))return!0;return!1},M,O,H,z,c,D=!1;for(let it=0;it(Q.labelrank||0)-(it.labelrank||0));for(let it=0;it{X(M,O=>{O.label&&U.push(O.label)})});for(let A of N.series||[])if(A.visible&&((T=A.hasDataLabels)!=null&&T.call(A))){let M=O=>{for(let H of O)H.visible&&(H.dataLabels||[]).forEach(z=>{var D,it;let c=z.options||{};z.labelrank=q(c.labelrank,H.labelrank,(D=H.shapeArgs)==null?void 0:D.height),((it=c.allowOverlap)!=null?it:Number(c.distance)>0)?(z.oldOpacity=z.opacity,z.newOpacity=1,Y(z,N)):U.push(z)})};M(A.nodes||[]),M(A.points)}this.hideOverlappingLabels(U)}return{compose:function(N){let U=N.prototype;U.hideOverlappingLabels||(U.hideOverlappingLabels=Z,$(N,"render",V))}}}),g(d,"Extensions/BorderRadius.js",[d["Core/Defaults.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st){let{defaultOptions:$}=L,{noop:J}=R,{addEvent:X,extend:q,isObject:Z,merge:Y,relativeLength:V}=st,N={radius:0,scope:"stack",where:void 0},U=J,T=J;function A(c,D,it,Q,W={}){let k=U(c,D,it,Q,W),{innerR:_=0,r:C=it,start:h=0,end:l=0}=W;if(W.open||!W.borderRadius)return k;let u=l-h,v=Math.sin(u/2),I=Math.max(Math.min(V(W.borderRadius||0,C-_),(C-_)/2,C*v/(1+v)),0),S=Math.min(I,u/Math.PI*2*_),b=k.length-1;for(;b--;)(function(K,ct,et){let dt,pt,bt,Mt=K[ct],w=K[ct+1];if(w[0]==="Z"&&(w=K[0]),(Mt[0]==="M"||Mt[0]==="L")&&w[0]==="A"?(dt=Mt,pt=w,bt=!0):Mt[0]==="A"&&(w[0]==="M"||w[0]==="L")&&(dt=w,pt=Mt),dt&&pt&&pt.params){let B=pt[1],tt=pt[5],nt=pt.params,{start:x,end:y,cx:j,cy:lt}=nt,rt=tt?B-et:B+et,gt=rt?Math.asin(et/rt):0,vt=tt?gt:-gt,Ot=Math.cos(gt)*rt;bt?(nt.start=x+vt,dt[1]=j+Ot*Math.cos(x),dt[2]=lt+Ot*Math.sin(x),K.splice(ct+1,0,["A",et,et,0,0,1,j+B*Math.cos(nt.start),lt+B*Math.sin(nt.start)])):(nt.end=y-vt,pt[6]=j+B*Math.cos(nt.end),pt[7]=lt+B*Math.sin(nt.end),K.splice(ct+1,0,["A",et,et,0,0,1,j+Ot*Math.cos(y),lt+Ot*Math.sin(y)])),pt[4]=Math.abs(nt.end-nt.start)1?S:I);return k}function M(){var c,D;if(this.options.borderRadius&&!(this.chart.is3d&&this.chart.is3d())){let{options:it,yAxis:Q}=this,W=it.stacking==="percent",k=(D=(c=$.plotOptions)==null?void 0:c[this.type])==null?void 0:D.borderRadius,_=O(it.borderRadius,Z(k)?k:{}),C=Q.options.reversed;for(let h of this.points){let{shapeArgs:l}=h;if(h.shapeType==="roundedRect"&&l){let{width:u=0,height:v=0,y:I=0}=l,S=I,b=v;if(_.scope==="stack"&&h.stackTotal){let dt=Q.translate(W?100:h.stackTotal,!1,!0,!1,!0),pt=Q.translate(it.threshold||0,!1,!0,!1,!0),bt=this.crispCol(0,Math.min(dt,pt),0,Math.abs(dt-pt));S=bt.y,b=bt.height}let K=(h.negative?-1:1)*(C?-1:1)==-1,ct=_.where;!ct&&this.is("waterfall")&&Math.abs((h.yBottom||0)-(this.translatedThreshold||0))>this.borderWidth&&(ct="all"),ct||(ct="end");let et=Math.min(V(_.radius,u),u/2,ct==="all"?v/2:1/0)||0;ct==="end"&&(K&&(S-=et),b+=et),q(l,{brBoxHeight:b,brBoxY:S,r:et})}}}}function O(c,D){return Z(c)||(c={radius:c||0}),Y(N,D,c)}function H(){let c=O(this.options.borderRadius);for(let D of this.points){let it=D.shapeArgs;it&&(it.borderRadius=V(c.radius,(it.r||0)-(it.innerR||0)))}}function z(c,D,it,Q,W={}){let k=T(c,D,it,Q,W),{r:_=0,brBoxHeight:C=Q,brBoxY:h=D}=W,l=D-h,u=h+C-(D+Q),v=l-_>-.1?0:_,I=u-_>-.1?0:_,S=Math.max(v&&l,0),b=Math.max(I&&u,0),K=[c+v,D],ct=[c+it-v,D],et=[c+it,D+v],dt=[c+it,D+Q-I],pt=[c+it-I,D+Q],bt=[c+I,D+Q],Mt=[c,D+Q-I],w=[c,D+v],B=(tt,nt)=>Math.sqrt(Math.pow(tt,2)-Math.pow(nt,2));if(S){let tt=B(v,v-S);K[0]-=tt,ct[0]+=tt,et[1]=w[1]=D+v-S}if(Q=q(A.minWidth,0)&&this.chartHeight>=q(A.minHeight,0)}).call(this)&&T.push(U._id)}function N(U,T){let A=this.options.responsive,M=this.currentResponsive,O=[],H;!T&&A&&A.rules&&A.rules.forEach(D=>{D._id===void 0&&(D._id=Z()),this.matchResponsiveRule(D,O)},this);let z=X(...O.map(D=>J((A||{}).rules||[],it=>it._id===D)).map(D=>D&&D.chartOptions));z.isResponsiveOptions=!0,O=O.toString()||void 0;let c=M&&M.ruleIds;O===c||(M&&(this.currentResponsive=void 0,this.updatingResponsive=!0,this.update(M.undoOptions,U,!0),this.updatingResponsive=!1),O?((H=st(z,this.options,!0,this.collectionsWithUpdate)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:O,mergedOptions:z,undoOptions:H},this.updatingResponsive||this.update(z,U,!0)):this.currentResponsive=void 0)}Y.compose=function(U){let T=U.prototype;return T.matchResponsiveRule||$(T,{matchResponsiveRule:V,setResponsive:N}),U}}(R||(R={})),R}),g(d,"masters/highcharts.src.js",[d["Core/Globals.js"],d["Core/Utilities.js"],d["Core/Defaults.js"],d["Core/Animation/Fx.js"],d["Core/Animation/AnimationUtilities.js"],d["Core/Renderer/HTML/AST.js"],d["Core/Templating.js"],d["Core/Renderer/RendererRegistry.js"],d["Core/Renderer/RendererUtilities.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Renderer/HTML/HTMLElement.js"],d["Core/Axis/Axis.js"],d["Core/Axis/DateTimeAxis.js"],d["Core/Axis/LogarithmicAxis.js"],d["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],d["Core/Axis/Tick.js"],d["Core/Tooltip.js"],d["Core/Series/Point.js"],d["Core/Pointer.js"],d["Core/Legend/Legend.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Chart/Chart.js"],d["Extensions/ScrollablePlotArea.js"],d["Core/Axis/Stacking/StackingAxis.js"],d["Core/Axis/Stacking/StackItem.js"],d["Core/Series/Series.js"],d["Core/Series/SeriesRegistry.js"],d["Series/Column/ColumnDataLabel.js"],d["Series/Pie/PieDataLabel.js"],d["Core/Series/DataLabel.js"],d["Extensions/OverlappingDataLabels.js"],d["Extensions/BorderRadius.js"],d["Core/Responsive.js"],d["Core/Color/Color.js"],d["Core/Time.js"]],function(L,R,st,$,J,X,q,Z,Y,V,N,U,T,A,M,O,H,z,c,D,it,Q,W,k,_,C,h,l,u,v,I,S,b,K,ct,et){return L.AST=X,L.Axis=T,L.Chart=W,L.Color=ct,L.DataLabel=I,L.Fx=$,L.HTMLElement=U,L.Legend=it,L.LegendSymbol=Q,L.OverlappingDataLabels=L.OverlappingDataLabels||S,L.PlotLineOrBand=O,L.Point=c,L.Pointer=D,L.RendererRegistry=Z,L.Series=h,L.SeriesRegistry=l,L.StackItem=C,L.SVGElement=V,L.SVGRenderer=N,L.Templating=q,L.Tick=H,L.Time=et,L.Tooltip=z,L.animate=J.animate,L.animObject=J.animObject,L.chart=W.chart,L.color=ct.parse,L.dateFormat=q.dateFormat,L.defaultOptions=st.defaultOptions,L.distribute=Y.distribute,L.format=q.format,L.getDeferredAnimation=J.getDeferredAnimation,L.getOptions=st.getOptions,L.numberFormat=q.numberFormat,L.seriesType=l.seriesType,L.setAnimation=J.setAnimation,L.setOptions=st.setOptions,L.stop=J.stop,L.time=st.defaultTime,L.timers=$.timers,b.compose(L.Series,L.SVGElement,L.SVGRenderer),u.compose(L.Series.types.column),I.compose(L.Series),A.compose(L.Axis),U.compose(L.SVGRenderer),it.compose(L.Chart),M.compose(L.Axis),S.compose(L.Chart),v.compose(L.Series.types.pie),O.compose(L.Chart,L.Axis),D.compose(L.Chart),K.compose(L.Chart),k.compose(L.Axis,L.Chart,L.Series),_.compose(L.Axis,L.Chart,L.Series),z.compose(L.Pointer),R.extend(L,R),L}),g(d,"Core/Axis/Color/ColorAxisComposition.js",[d["Core/Color/Color.js"],d["Core/Utilities.js"]],function(L,R){var st;let{parse:$}=L,{addEvent:J,extend:X,merge:q,pick:Z,splat:Y}=R;return function(V){let N;function U(){let{userOptions:Q}=this;this.colorAxis=[],Q.colorAxis&&(Q.colorAxis=Y(Q.colorAxis),Q.colorAxis.map(W=>new N(this,W)))}function T(Q){let W=this.chart.colorAxis||[],k=l=>{let u=Q.allItems.indexOf(l);u!==-1&&(this.destroyItem(Q.allItems[u]),Q.allItems.splice(u,1))},_=[],C,h;for(W.forEach(function(l){(C=l.options)&&C.showInLegend&&(C.dataClasses&&C.visible?_=_.concat(l.getDataClassLegendSymbols()):C.visible&&_.push(l),l.series.forEach(function(u){(!u.options.showInLegend||C.dataClasses)&&(u.options.legendType==="point"?u.points.forEach(function(v){k(v)}):k(u))}))}),h=_.length;h--;)Q.allItems.unshift(_[h])}function A(Q){Q.visible&&Q.item.legendColor&&Q.item.legendItem.symbol.attr({fill:Q.item.legendColor})}function M(Q){var W;(W=this.chart.colorAxis)==null||W.forEach(k=>{k.update({},Q.redraw)})}function O(){(this.chart.colorAxis&&this.chart.colorAxis.length||this.colorAttribs)&&this.translateColors()}function H(){let Q=this.axisTypes;Q?Q.indexOf("colorAxis")===-1&&Q.push("colorAxis"):this.axisTypes=["colorAxis"]}function z(Q){let W=this,k=Q?"show":"hide";W.visible=W.options.visible=!!Q,["graphic","dataLabel"].forEach(function(_){W[_]&&W[_][k]()}),this.series.buildKDTree()}function c(){let Q=this,W=this.getPointsCollection(),k=this.options.nullColor,_=this.colorAxis,C=this.colorKey;W.forEach(h=>{let l=h.getNestedProperty(C),u=h.options.color||(h.isNull||h.value===null?k:_&&l!==void 0?_.toColor(l,h):h.color||Q.color);u&&h.color!==u&&(h.color=u,Q.options.legendType==="point"&&h.legendItem&&h.legendItem.label&&Q.chart.legend.colorizeItem(h,h.visible))})}function D(){this.elem.attr("fill",$(this.start).tweenTo($(this.end),this.pos),void 0,!0)}function it(){this.elem.attr("stroke",$(this.start).tweenTo($(this.end),this.pos),void 0,!0)}V.compose=function(Q,W,k,_,C){let h=W.prototype,l=k.prototype,u=C.prototype;h.collectionsWithUpdate.includes("colorAxis")||(N=Q,h.collectionsWithUpdate.push("colorAxis"),h.collectionsWithInit.colorAxis=[h.addColorAxis],J(W,"afterGetAxes",U),function(v){let I=v.prototype.createAxis;v.prototype.createAxis=function(S,b){if(S!=="colorAxis")return I.apply(this,arguments);let K=new N(this,q(b.axis,{index:this[S].length,isX:!1}));return this.isDirtyLegend=!0,this.axes.forEach(ct=>{ct.series=[]}),this.series.forEach(ct=>{ct.bindAxes(),ct.isDirtyData=!0}),Z(b.redraw,!0)&&this.redraw(b.animation),K}}(W),l.fillSetter=D,l.strokeSetter=it,J(_,"afterGetAllItems",T),J(_,"afterColorizeItem",A),J(_,"afterUpdate",M),X(u,{optionalAxis:"colorAxis",translateColors:c}),X(u.pointClass.prototype,{setVisible:z}),J(C,"afterTranslate",O,{order:1}),J(C,"bindAxes",H))},V.pointSetVisible=z}(st||(st={})),st}),g(d,"Core/Axis/Color/ColorAxisDefaults.js",[],function(){return{lineWidth:0,minPadding:0,maxPadding:0,gridLineColor:"#ffffff",gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01,color:"#999999"},labels:{distance:8,overflow:"justify",rotation:0},minColor:"#e6e9ff",maxColor:"#0022ff",tickLength:5,showInLegend:!0}}),g(d,"Core/Axis/Color/ColorAxisLike.js",[d["Core/Color/Color.js"],d["Core/Utilities.js"]],function(L,R){var st,$;let{parse:J}=L,{merge:X}=R;return($=st||(st={})).initDataClasses=function(q){let Z=this.chart,Y=this.legendItem=this.legendItem||{},V=this.options,N=q.dataClasses||[],U,T,A=Z.options.chart.colorCount,M=0,O;this.dataClasses=T=[],Y.labels=[];for(let H=0,z=N.length;H=V)&&(N===void 0||q<=N)){U=T.color,Z&&(Z.dataClass=A,Z.colorIndex=T.colorIndex);break}}else{for(Y=this.normalizedValue(q),A=O.length;A--&&!(Y>O[A][0]););V=O[A]||O[A+1],Y=1-((N=O[A+1]||V)[0]-Y)/(N[0]-V[0]||1),U=V.color.tweenTo(N.color,Y)}return U},st}),g(d,"Core/Axis/Color/ColorAxis.js",[d["Core/Axis/Axis.js"],d["Core/Axis/Color/ColorAxisComposition.js"],d["Core/Axis/Color/ColorAxisDefaults.js"],d["Core/Axis/Color/ColorAxisLike.js"],d["Core/Defaults.js"],d["Core/Legend/LegendSymbol.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z){let{defaultOptions:Y}=J,{series:V}=q,{defined:N,extend:U,fireEvent:T,isArray:A,isNumber:M,merge:O,pick:H,relativeLength:z}=Z;Y.colorAxis=O(Y.xAxis,st);class c extends L{static compose(it,Q,W,k){R.compose(c,it,Q,W,k)}constructor(it,Q){super(it,Q),this.coll="colorAxis",this.visible=!0,this.init(it,Q)}init(it,Q){let W=it.options.legend||{},k=Q.layout?Q.layout!=="vertical":W.layout!=="vertical";this.side=Q.side||k?2:1,this.reversed=Q.reversed||!k,this.opposite=!k,super.init(it,Q,"colorAxis"),this.userOptions=Q,A(it.userOptions.colorAxis)&&(it.userOptions.colorAxis[this.index]=Q),Q.dataClasses&&this.initDataClasses(Q),this.initStops(),this.horiz=k,this.zoomEnabled=!1}hasData(){return!!(this.tickPositions||[]).length}setTickPositions(){if(!this.dataClasses)return super.setTickPositions()}setOptions(it){let Q=O(Y.colorAxis,it,{showEmpty:!1,title:null,visible:this.chart.options.legend.enabled&&it.visible!==!1});super.setOptions(Q),this.options.crosshair=this.options.marker}setAxisSize(){var _;let it=this.chart,Q=(_=this.legendItem)==null?void 0:_.symbol,{width:W,height:k}=this.getSize();Q&&(this.left=+Q.attr("x"),this.top=+Q.attr("y"),this.width=W=+Q.attr("width"),this.height=k=+Q.attr("height"),this.right=it.chartWidth-this.left-W,this.bottom=it.chartHeight-this.top-k,this.pos=this.horiz?this.left:this.top),this.len=(this.horiz?W:k)||c.defaultLegendLength}getOffset(){var W;let it=(W=this.legendItem)==null?void 0:W.group,Q=this.chart.axisOffset[this.side];if(it){this.axisParent=it,super.getOffset();let k=this.chart.legend;k.allItems.forEach(function(_){_ instanceof c&&_.drawLegendSymbol(k,_)}),k.render(),this.chart.getMargins(!0),this.chart.series.some(_=>_.isDrilling)||(this.isDirty=!0),this.added||(this.added=!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=Q}}setLegendColor(){let it=this.horiz,Q=this.reversed,W=Q?1:0,k=Q?0:1,_=it?[W,0,k,0]:[0,k,0,W];this.legendColor={linearGradient:{x1:_[0],y1:_[1],x2:_[2],y2:_[3]},stops:this.stops}}drawLegendSymbol(it,Q){var S;let W=Q.legendItem||{},k=it.padding,_=it.options,C=this.options.labels,h=H(_.itemDistance,10),l=this.horiz,{width:u,height:v}=this.getSize(),I=H(_.labelPadding,l?16:30);this.setLegendColor(),W.symbol||(W.symbol=this.chart.renderer.symbol("roundedRect").attr({r:(S=_.symbolRadius)!=null?S:3,zIndex:1}).add(W.group)),W.symbol.attr({x:0,y:(it.baseline||0)-11,width:u,height:v}),W.labelWidth=u+k+(l?h:H(C.x,C.distance)+(this.maxLabelLength||0)),W.labelHeight=v+k+(l?I:0)}setState(it){this.series.forEach(function(Q){Q.setState(it)})}setVisible(){}getSeriesExtremes(){let it=this.series,Q,W,k,_,C,h,l=it.length,u,v;for(this.dataMin=1/0,this.dataMax=-1/0;l--;){if(W=(h=it[l]).colorKey=H(h.options.colorKey,h.colorKey,h.pointValKey,h.zoneAxis,"y"),_=h.pointArrayMap,C=h[W+"Min"]&&h[W+"Max"],h[W+"Data"])Q=h[W+"Data"];else if(_){if(Q=[],k=_.indexOf(W),u=h.yData,k>=0&&u)for(v=0;vh+l&&(W=h+l+2),Q.plotX=W,Q.plotY=this.len-W,super.drawCrosshair(it,Q),Q.plotX=_,Q.plotY=C,this.cross&&!this.cross.addedToColorAxis&&k.group&&(this.cross.addClass("highcharts-coloraxis-marker").add(k.group),this.cross.addedToColorAxis=!0,this.chart.styledMode||typeof this.crosshair!="object"||this.cross.attr({fill:this.crosshair.color})))}getPlotLinePath(it){let Q=this.left,W=it.translatedValue,k=this.top;return M(W)?this.horiz?[["M",W-4,k-6],["L",W+4,k-6],["L",W,k],["Z"]]:[["M",Q,W],["L",Q-6,W+6],["L",Q-6,W-6],["Z"]]:super.getPlotLinePath(it)}update(it,Q){let W=this.chart.legend;this.series.forEach(k=>{k.isDirtyData=!0}),(it.dataClasses&&W.allItems||this.dataClasses)&&this.destroyItems(),super.update(it,Q),this.legendItem&&this.legendItem.label&&(this.setLegendColor(),W.colorizeItem(this,!0))}destroyItems(){let it=this.chart,Q=this.legendItem||{};if(Q.label)it.legend.destroyItem(this);else if(Q.labels)for(let W of Q.labels)it.legend.destroyItem(W);it.isDirtyLegend=!0}destroy(){this.chart.isDirtyLegend=!0,this.destroyItems(),super.destroy(...[].slice.call(arguments))}remove(it){this.destroyItems(),super.remove(it)}getDataClassLegendSymbols(){let it,Q=this,W=Q.chart,k=Q.legendItem&&Q.legendItem.labels||[],_=W.options.legend,C=H(_.valueDecimals,-1),h=H(_.valueSuffix,""),l=u=>Q.series.reduce((v,I)=>(v.push(...I.points.filter(S=>S.dataClass===u)),v),[]);return k.length||Q.dataClasses.forEach((u,v)=>{let I=u.from,S=u.to,{numberFormatter:b}=W,K=!0;it="",I===void 0?it="< ":S===void 0&&(it="> "),I!==void 0&&(it+=b(I,C)+h),I!==void 0&&S!==void 0&&(it+=" - "),S!==void 0&&(it+=b(S,C)+h),k.push(U({chart:W,name:it,options:{},drawLegendSymbol:X.rectangle,visible:!0,isDataClass:!0,setState:ct=>{for(let et of l(v))et.setState(ct)},setVisible:function(){this.visible=K=Q.visible=!K;let ct=[];for(let et of l(v))et.setVisible(K),et.hiddenInDataClass=!K,ct.indexOf(et.series)===-1&&ct.push(et.series);W.legend.colorizeItem(this,K),ct.forEach(et=>{T(et,"afterDataClassLegendClick")})}},u))}),k}getSize(){let{chart:it,horiz:Q}=this,{height:W,width:k}=this.options,{legend:_}=it.options;return{width:H(N(k)?z(k,it.chartWidth):void 0,_==null?void 0:_.symbolWidth,Q?c.defaultLegendLength:12),height:H(N(W)?z(W,it.chartHeight):void 0,_==null?void 0:_.symbolHeight,Q?12:c.defaultLegendLength)}}}return c.defaultLegendLength=200,c.keepProps=["legendItem"],U(c.prototype,$),Array.prototype.push.apply(L.keepProps,c.keepProps),c}),g(d,"masters/modules/coloraxis.src.js",[d["Core/Globals.js"],d["Core/Axis/Color/ColorAxis.js"]],function(L,R){return L.ColorAxis=L.ColorAxis||R,L.ColorAxis.compose(L.Chart,L.Fx,L.Legend,L.Series),L}),g(d,"Maps/MapNavigationDefaults.js",[],function(){return{lang:{zoomIn:"Zoom in",zoomOut:"Zoom out"},mapNavigation:{buttonOptions:{alignTo:"plotBox",align:"left",verticalAlign:"top",x:0,width:18,height:18,padding:5,style:{color:"#666666",fontSize:"1em",fontWeight:"bold"},theme:{fill:"#ffffff",stroke:"#e6e6e6","stroke-width":1,"text-align":"center"}},buttons:{zoomIn:{onclick:function(){this.mapZoom(.5)},text:"+",y:0},zoomOut:{onclick:function(){this.mapZoom(2)},text:"-",y:28}},mouseWheelSensitivity:1.1}}}),g(d,"Maps/MapPointer.js",[d["Core/Utilities.js"]],function(L){var R;let{defined:st,extend:$,pick:J,wrap:X}=L;return function(q){let Z,Y=0;function V(A){let M=this.chart;A=this.normalize(A),M.options.mapNavigation.enableDoubleClickZoomTo?M.pointer.inClass(A.target,"highcharts-tracker")&&M.hoverPoint&&M.hoverPoint.zoomTo():M.isInsidePlot(A.chartX-M.plotLeft,A.chartY-M.plotTop)&&M.mapZoom(.5,void 0,void 0,A.chartX,A.chartY)}function N(A){let M=this.chart,O=st((A=this.normalize(A)).wheelDelta)&&-A.wheelDelta/120||A.deltaY||A.detail;Math.abs(O)>=1&&(Y+=Math.abs(O),Z&&clearTimeout(Z),Z=setTimeout(()=>{Y=0},50)),Y<10&&M.isInsidePlot(A.chartX-M.plotLeft,A.chartY-M.plotTop)&&M.mapView&&M.mapView.zoomBy(-((M.options.mapNavigation.mouseWheelSensitivity-1)*O),void 0,[A.chartX,A.chartY],!(1>Math.abs(O))&&void 0)}function U(A,M,O){let H=this.chart;if(M=A.call(this,M,O),H&&H.mapView){let z=H.mapView.pixelsToLonLat({x:M.chartX-H.plotLeft,y:M.chartY-H.plotTop});z&&$(M,z)}return M}function T(A){let M=this.chart.options.mapNavigation;M&&J(M.enableTouchZoom,M.enabled)&&(this.chart.zooming.pinchType="xy"),A.apply(this,[].slice.call(arguments,1))}q.compose=function(A){let M=A.prototype;M.onContainerDblClick||($(M,{onContainerDblClick:V,onContainerMouseWheel:N}),X(M,"normalize",U),X(M,"zoomOption",T))}}(R||(R={})),R}),g(d,"Maps/MapSymbols.js",[],function(){let L;function R($,J,X,q,Z){if(Z){let Y=(Z==null?void 0:Z.r)||0;Z.brBoxY=J-Y,Z.brBoxHeight=q+Y}return L.roundedRect($,J,X,q,Z)}function st($,J,X,q,Z){if(Z){let Y=(Z==null?void 0:Z.r)||0;Z.brBoxHeight=q+Y}return L.roundedRect($,J,X,q,Z)}return{compose:function($){(L=$.prototype.symbols).bottombutton=R,L.topbutton=st}}}),g(d,"Maps/MapNavigation.js",[d["Core/Defaults.js"],d["Core/Globals.js"],d["Maps/MapNavigationDefaults.js"],d["Maps/MapPointer.js"],d["Maps/MapSymbols.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){let{setOptions:q}=L,{composed:Z}=R,{addEvent:Y,extend:V,merge:N,objectEach:U,pick:T,pushUnique:A}=X;function M(H){H&&(H.preventDefault&&H.preventDefault(),H.stopPropagation&&H.stopPropagation(),H.cancelBubble=!0)}class O{static compose(z,c,D){$.compose(c),J.compose(D),A(Z,"Map.Navigation")&&(Y(z,"beforeRender",function(){this.mapNavigation=new O(this),this.mapNavigation.update()}),q(st))}constructor(z){this.chart=z,this.navButtons=[]}update(z){let c=this,D=c.chart,it=c.navButtons,Q=function(k){this.handler.call(D,k),M(k)},W=D.options.mapNavigation;for(z&&(W=D.options.mapNavigation=N(D.options.mapNavigation,z));it.length;)it.pop().destroy();if(!D.renderer.forExport&&T(W.enableButtons,W.enabled)){c.navButtonsGroup||(c.navButtonsGroup=D.renderer.g().attr({zIndex:7}).add()),U(W.buttons,(_,C)=>{var b;let h={padding:(_=N(W.buttonOptions,_)).padding};!D.styledMode&&_.theme&&(V(h,_.theme),h.style=N(_.theme.style,_.style));let{text:l,width:u=0,height:v=0,padding:I=0}=_,S=D.renderer.button(l!=="+"&&l!=="-"&&l||"",0,0,Q,h,void 0,void 0,void 0,C==="zoomIn"?"topbutton":"bottombutton").addClass("highcharts-map-navigation highcharts-"+{zoomIn:"zoom-in",zoomOut:"zoom-out"}[C]).attr({width:u,height:v,title:D.options.lang[C],zIndex:5}).add(c.navButtonsGroup);if(l==="+"||l==="-"){let K=u+1,ct=[["M",I+3,I+v/2],["L",I+K-3,I+v/2]];l==="+"&&ct.push(["M",I+K/2,I+3],["L",I+K/2,I+v-3]),D.renderer.path(ct).addClass("highcharts-button-symbol").attr(D.styledMode?{}:{stroke:(b=_.style)==null?void 0:b.color,"stroke-width":3,"stroke-linecap":"round"}).add(S)}if(S.handler=_.onclick,Y(S.element,"dblclick",M),it.push(S),V(_,{width:S.width,height:2*(S.height||0)}),D.hasLoaded)S.align(_,!1,_.alignTo);else{let K=Y(D,"load",()=>{S.element&&S.align(_,!1,_.alignTo),K()})}});let k=(_,C)=>!(C.x>=_.x+_.width||C.x+C.width<=_.x||C.y>=_.y+_.height||C.y+C.height<=_.y);D.hasLoaded||Y(D,"render",function(){let _=D.exportingGroup&&D.exportingGroup.getBBox();if(_){let C=c.navButtonsGroup.getBBox();if(k(_,C)){let h=-C.y-C.height+_.y-5,l=_.y+_.height-C.y+5,u=W.buttonOptions&&W.buttonOptions.verticalAlign;c.navButtonsGroup.attr({translateY:u==="bottom"?h:l})}}})}this.updateEvents(W)}updateEvents(z){let c=this.chart;T(z.enableDoubleClickZoom,z.enabled)||z.enableDoubleClickZoomTo?this.unbindDblClick=this.unbindDblClick||Y(c.container,"dblclick",function(D){c.pointer.onContainerDblClick(D)}):this.unbindDblClick&&(this.unbindDblClick=this.unbindDblClick()),T(z.enableMouseWheelZoom,z.enabled)?this.unbindMouseWheel=this.unbindMouseWheel||Y(c.container,"wheel",function(D){return c.pointer.inClass(D.target,"highcharts-no-mousewheel")||(c.pointer.onContainerMouseWheel(D),M(D)),!1}):this.unbindMouseWheel&&(this.unbindMouseWheel=this.unbindMouseWheel())}}return O}),g(d,"Series/ColorMapComposition.js",[d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGElement.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{column:{prototype:J}}=L.seriesTypes,{addEvent:X,defined:q}=st;return function(Z){function Y(V){let N=this.series,U=N.chart.renderer;this.moveToTopOnHover&&this.graphic&&(N.stateMarkerGraphic||(N.stateMarkerGraphic=new R(U,"use").css({pointerEvents:"none"}).add(this.graphic.parentGroup)),(V==null?void 0:V.state)==="hover"?(this.graphic.attr({id:this.id}),N.stateMarkerGraphic.attr({href:`${U.url}#${this.id}`,visibility:"visible"})):N.stateMarkerGraphic.attr({href:""}))}Z.pointMembers={dataLabelOnNull:!0,moveToTopOnHover:!0,isValid:function(){return this.value!==null&&this.value!==1/0&&this.value!==-1/0&&(this.value===void 0||!isNaN(this.value))}},Z.seriesMembers={colorKey:"value",axisTypes:["xAxis","yAxis","colorAxis"],parallelArrays:["x","y","value"],pointArrayMap:["value"],trackerGroups:["group","markerGroup","dataLabelsGroup"],colorAttribs:function(V){let N={};return q(V.color)&&(!V.state||V.state==="normal")&&(N[this.colorProp||"fill"]=V.color),N},pointAttribs:J.pointAttribs},Z.compose=function(V){return X(V.prototype.pointClass,"afterSetState",Y),V}}($||($={})),$}),g(d,"Core/Chart/MapChart.js",[d["Core/Chart/Chart.js"],d["Core/Defaults.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Utilities.js"]],function(L,R,st,$){var J;let{getOptions:X}=R,{isNumber:q,merge:Z,pick:Y}=$;class V extends L{init(U,T){let A=X().credits,M=Z({chart:{panning:{enabled:!0,type:"xy"},type:"map"},credits:{mapText:Y(A.mapText,' \xA9 {geojson.copyrightShort}'),mapTextFull:Y(A.mapTextFull,"{geojson.copyright}")},mapView:{},tooltip:{followTouchMove:!1}},U);super.init(M,T)}mapZoom(U,T,A,M,O){this.mapView&&(q(U)&&(U=Math.log(U)/Math.log(.5)),this.mapView.zoomBy(U,q(T)&&q(A)?this.mapView.projection.inverse([T,A]):void 0,q(M)&&q(O)?[M,O]:void 0))}update(U){var T;U.chart&&"map"in U.chart&&((T=this.mapView)==null||T.recommendMapView(this,[U.chart.map,...(this.options.series||[]).map(A=>A.mapData)],!0)),super.update.apply(this,arguments)}}return(J=V||(V={})).maps={},J.mapChart=function(N,U,T){return new J(N,U,T)},J.splitPath=function(N){let U;return U=typeof N=="string"?(N=N.replace(/([A-Z])/gi," $1 ").replace(/^\s*/,"").replace(/\s*$/,"")).split(/[ ,;]+/).map(T=>/[A-Z]/i.test(T)?T:parseFloat(T)):N,st.prototype.pathToSegments(U)},V}),g(d,"Maps/MapUtilities.js",[],function(){return{boundsFromPath:function(L){let R=-Number.MAX_VALUE,st=Number.MAX_VALUE,$=-Number.MAX_VALUE,J=Number.MAX_VALUE,X;if(L.forEach(q=>{let Z=q[q.length-2],Y=q[q.length-1];typeof Z=="number"&&typeof Y=="number"&&(st=Math.min(st,Z),R=Math.max(R,Z),J=Math.min(J,Y),$=Math.max($,Y),X=!0)}),X)return{x1:st,y1:J,x2:R,y2:$}}}}),g(d,"Series/Map/MapPoint.js",[d["Series/ColorMapComposition.js"],d["Maps/MapUtilities.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{boundsFromPath:J}=R,X=st.seriesTypes.scatter.prototype.pointClass,{extend:q,isNumber:Z,pick:Y}=$;class V extends X{static getProjectedPath(U,T){return U.projectedPath||(T&&U.geometry?(T.hasCoordinates=!0,U.projectedPath=T.path(U.geometry)):U.projectedPath=U.path),U.projectedPath||[]}applyOptions(U,T){var H;let A=this.series,M=super.applyOptions(U,T),O=A.joinBy;if(A.mapData&&A.mapMap){let z=O[1],c=super.getNestedProperty(z),D=c!==void 0&&A.mapMap[c];D?q(M,Mi(xr({},D),{name:(H=M.name)!=null?H:D.name})):A.pointArrayMap.indexOf("value")!==-1&&(M.value=M.value||null)}return M}getProjectedBounds(U){let T=J(V.getProjectedPath(this,U)),A=this.properties,M=this.series.chart.mapView;if(T){let O=A&&A["hc-middle-lon"],H=A&&A["hc-middle-lat"];if(M&&Z(O)&&Z(H)){let z=U.forward([O,H]);T.midX=z[0],T.midY=z[1]}else{let z=A&&A["hc-middle-x"],c=A&&A["hc-middle-y"];T.midX=T.x1+(T.x2-T.x1)*Y(this.middleX,Z(z)?z:.5);let D=Y(this.middleY,Z(c)?c:.5);this.geometry||(D=1-D),T.midY=T.y2-(T.y2-T.y1)*D}return T}}onMouseOver(U){$.clearTimeout(this.colorInterval),!this.isNull&&this.visible||this.series.options.nullInteraction?super.onMouseOver.call(this,U):this.series.onMouseOut()}setVisible(U){this.visible=this.options.visible=!!U,this.dataLabel&&this.dataLabel[U?"show":"hide"](),this.graphic&&this.graphic.attr(this.series.pointAttribs(this))}zoomTo(U){let T=this.series.chart,A=T.mapView,M=this.bounds;if(A&&M){let O=Z(this.insetIndex)&&A.insets[this.insetIndex];if(O){let H=O.projectedUnitsToPixels({x:M.x1,y:M.y1}),z=O.projectedUnitsToPixels({x:M.x2,y:M.y2}),c=A.pixelsToProjectedUnits({x:H.x,y:H.y}),D=A.pixelsToProjectedUnits({x:z.x,y:z.y});M={x1:c.x,y1:c.y,x2:D.x,y2:D.y}}A.fitToBounds(M,void 0,!1),this.series.isDirty=!0,T.redraw(U)}}}return q(V.prototype,{dataLabelOnNull:L.pointMembers.dataLabelOnNull,moveToTopOnHover:L.pointMembers.moveToTopOnHover,isValid:L.pointMembers.isValid}),V}),g(d,"Series/Map/MapSeriesDefaults.js",[d["Core/Utilities.js"]],function(L){let{isNumber:R}=L;return{affectsMapView:!0,animation:!1,dataLabels:{crop:!1,formatter:function(){let{numberFormatter:st}=this.series.chart,{value:$}=this.point;return R($)?st($,-1):this.point.name},inside:!0,overflow:!1,padding:0,verticalAlign:"middle"},linecap:"round",marker:null,nullColor:"#f7f7f7",stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:"{point.name}: {point.value}
    "},turboThreshold:0,allAreas:!0,borderColor:"#e6e6e6",borderWidth:1,joinBy:"hc-key",states:{hover:{halo:void 0,borderColor:"#666666",borderWidth:2},normal:{animation:!0},select:{color:"#cccccc"}},legendSymbol:"rectangle"}}),g(d,"Maps/MapViewDefaults.js",[],function(){return{center:[0,0],fitToGeometry:void 0,maxZoom:void 0,padding:0,projection:{name:void 0,parallels:void 0,rotation:void 0},zoom:void 0,insetOptions:{borderColor:"#cccccc",borderWidth:1,padding:"10%",relativeTo:"mapBoundingBox",units:"percent"}}}),g(d,"Maps/GeoJSONComposition.js",[d["Core/Globals.js"],d["Core/Templating.js"],d["Core/Utilities.js"]],function(L,R,st){var $;let{win:J}=L,{format:X}=R,{error:q,extend:Z,merge:Y,wrap:V}=st;return function(N){function U(z){return this.mapView&&this.mapView.lonLatToProjectedUnits(z)}function T(z){return this.mapView&&this.mapView.projectedUnitsToLonLat(z)}function A(z,c){let D=this.options.chart.proj4||J.proj4;if(!D){q(21,!1,this);return}let{jsonmarginX:it=0,jsonmarginY:Q=0,jsonres:W=1,scale:k=1,xoffset:_=0,xpan:C=0,yoffset:h=0,ypan:l=0}=c,u=D(c.crs,[z.lon,z.lat]),v=c.cosAngle||c.rotation&&Math.cos(c.rotation),I=c.sinAngle||c.rotation&&Math.sin(c.rotation),S=c.rotation?[u[0]*v+u[1]*I,-u[0]*I+u[1]*v]:u;return{x:((S[0]-_)*k+C)*W+it,y:-(((h-S[1])*k+l)*W-Q)}}function M(z,c){let D=this.options.chart.proj4||J.proj4;if(!D){q(21,!1,this);return}if(z.y===null)return;let{jsonmarginX:it=0,jsonmarginY:Q=0,jsonres:W=1,scale:k=1,xoffset:_=0,xpan:C=0,yoffset:h=0,ypan:l=0}=c,u={x:((z.x-it)/W-C)/k+_,y:((z.y-Q)/W+l)/k+h},v=c.cosAngle||c.rotation&&Math.cos(c.rotation),I=c.sinAngle||c.rotation&&Math.sin(c.rotation),S=D(c.crs,"WGS84",c.rotation?{x:u.x*v+-(u.y*I),y:u.x*I+u.y*v}:u);return{lat:S.y,lon:S.x}}function O(z,c){c||(c=Object.keys(z.objects)[0]);let D=z.objects[c];if(D["hc-decoded-geojson"]&&D["hc-decoded-geojson"].title===z.title)return D["hc-decoded-geojson"];let it=z.arcs;if(z.transform){let C,h,l,u=z.arcs,{scale:v,translate:I}=z.transform;it=[];for(let S=0,b=u.length;Stypeof C[0]=="number"?C.reduce((h,l,u)=>{let v=l<0?it[~l]:it[l];return l<0?(v=v.slice(0,u===0?v.length:v.length-1)).reverse():u&&(v=v.slice(1)),h.concat(v)},[]):C.map(Q),W=D.geometries,k=[];for(let C=0,h=W.length;C(J[1]-$[1])*(X[0]-$[0])}function st($,J,X,q){let Z=[$[0]-J[0],$[1]-J[1]],Y=[X[0]-q[0],X[1]-q[1]],V=$[0]*J[1]-$[1]*J[0],N=X[0]*q[1]-X[1]*q[0],U=1/(Z[0]*Y[1]-Z[1]*Y[0]),T=[(V*Y[0]-N*Z[0])*U,(V*Y[1]-N*Z[1])*U];return T.isIntersection=!0,T}return{clipLineString:function($,J){let X=[],q=L($,J,!1);for(let Z=1;ZJ===0?0:J>0?1:-1),R=Math.PI/180,st=Math.PI/2,$=J=>Math.tan((st+J)/2);return class{constructor(J){var N;let X=(J.parallels||[]).map(U=>U*R),q=X[0]||0,Z=(N=X[1])!=null?N:q,Y=Math.cos(q);typeof J.projectedBounds=="object"&&(this.projectedBounds=J.projectedBounds);let V=q===Z?Math.sin(q):Math.log(Y/Math.cos(Z))/Math.log($(Z)/$(q));1e-10>Math.abs(V)&&(V=1e-10*(L(V)||1)),this.n=V,this.c=Y*Math.pow($(q),V)/V}forward(J){let{c:X,n:q,projectedBounds:Z}=this,Y=J[0]*R,V=J[1]*R;X>0?V<-st+1e-6&&(V=-st+1e-6):V>st-1e-6&&(V=st-1e-6);let N=X/Math.pow($(V),q),U=N*Math.sin(q*Y)*63.78137,T=(X-N*Math.cos(q*Y))*63.78137,A=[U,T];return Z&&(UZ.x2||TZ.y2)&&(A.outside=!0),A}inverse(J){let{c:X,n:q}=this,Z=J[0]/63.78137,Y=X-J[1]/63.78137,V=L(q)*Math.sqrt(Z*Z+Y*Y),N=Math.atan2(Z,Math.abs(Y))*L(Y);return Y*q<0&&(N-=Math.PI*L(Z)*L(Y)),[N/q/R,(2*Math.atan(Math.pow(X/V,1/q))-st)/R]}}}),g(d,"Maps/Projections/EqualEarth.js",[],function(){let L=Math.sqrt(3)/2;return class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-97.52595454902263,y2:97.52595454902263}}forward(R){let st=Math.PI/180,$=Math.asin(L*Math.sin(R[1]*st)),J=$*$,X=J*J*J;return[R[0]*st*Math.cos($)*74.03120656864502/(L*(1.340264+-.24331799999999998*J+X*(.0062510000000000005+.034164*J))),74.03120656864502*$*(1.340264+-.081106*J+X*(893e-6+.003796*J))]}inverse(R){let st=R[0]/74.03120656864502,$=R[1]/74.03120656864502,J=180/Math.PI,X=$,q,Z,Y,V;for(let T=0;T<12&&(Z=(q=X*X)*q*q,Y=X*(1.340264+-.081106*q+Z*(893e-6+.003796*q))-$,X-=V=Y/(1.340264+-.24331799999999998*q+Z*(.0062510000000000005+.034164*q)),!(1e-9>Math.abs(V)));++T);Z=(q=X*X)*q*q;let N=J*L*st*(1.340264+-.24331799999999998*q+Z*(.0062510000000000005+.034164*q))/Math.cos(X),U=J*Math.asin(Math.sin(X)/L);return Math.abs(N)>180?[NaN,NaN]:[N,U]}}}),g(d,"Maps/Projections/Miller.js",[],function(){let L=Math.PI/4,R=Math.PI/180;return class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-146.91480769173063,y2:146.91480769173063}}forward(st){return[st[0]*R*63.78137,79.7267125*Math.log(Math.tan(L+.4*st[1]*R))]}inverse(st){return[st[0]/63.78137/R,2.5*(Math.atan(Math.exp(.8*(st[1]/63.78137)))-L)/R]}}}),g(d,"Maps/Projections/Orthographic.js",[],function(){let L=Math.PI/180;return class{constructor(){this.antimeridianCutting=!1,this.bounds={x1:-63.78460826781007,x2:63.78460826781007,y1:-63.78460826781007,y2:63.78460826781007}}forward(R){let st=R[0],$=R[1]*L,J=[Math.cos($)*Math.sin(st*L)*63.78460826781007,63.78460826781007*Math.sin($)];return(st<-90||st>90)&&(J.outside=!0),J}inverse(R){let st=R[0]/63.78460826781007,$=R[1]/63.78460826781007,J=Math.sqrt(st*st+$*$),X=Math.asin(J),q=Math.sin(X);return[Math.atan2(st*q,J*Math.cos(X))/L,Math.asin(J&&$*q/J)/L]}}}),g(d,"Maps/Projections/WebMercator.js",[],function(){let L=Math.PI/180;return class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-200.3750834278071,y2:200.3750834278071},this.maxLatitude=85.0511287798}forward(R){let st=Math.sin(R[1]*L),$=[63.78137*R[0]*L,63.78137*Math.log((1+st)/(1-st))/2];return Math.abs(R[1])>this.maxLatitude&&($.outside=!0),$}inverse(R){return[R[0]/(63.78137*L),(2*Math.atan(Math.exp(R[1]/63.78137))-Math.PI/2)/L]}}}),g(d,"Maps/Projections/ProjectionRegistry.js",[d["Maps/Projections/LambertConformalConic.js"],d["Maps/Projections/EqualEarth.js"],d["Maps/Projections/Miller.js"],d["Maps/Projections/Orthographic.js"],d["Maps/Projections/WebMercator.js"]],function(L,R,st,$,J){return{EqualEarth:R,LambertConformalConic:L,Miller:st,Orthographic:$,WebMercator:J}}),g(d,"Maps/Projection.js",[d["Core/Geometry/PolygonClip.js"],d["Maps/Projections/ProjectionRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{clipLineString:$,clipPolygon:J}=L,{clamp:X,erase:q}=st,Z=2*Math.PI/360,Y=T=>(T<-180&&(T+=360),T>180&&(T-=360),T),V=T=>(1-Math.cos(T))/2,N=(T,A)=>{let M=Math.cos,O=T[1]*Z,H=T[0]*Z,z=A[1]*Z,c=A[0]*Z;return V(z-O)+M(O)*M(z)*V(c-H)};class U{static add(A,M){U.registry[A]=M}static distance(A,M){let{atan2:O,sqrt:H}=Math,z=N(A,M);return 6371e3*(2*O(H(z),H(1-z)))}static geodesic(A,M,O,H=5e5){let{atan2:z,cos:c,sin:D,sqrt:it}=Math,Q=U.distance,W=A[1]*Z,k=A[0]*Z,_=M[1]*Z,C=M[0]*Z,h=c(W)*c(k),l=c(_)*c(C),u=c(W)*D(k),v=c(_)*D(C),I=D(W),S=D(_),b=Q(A,M),K=b/6371e3,ct=D(K),et=Math.round(b/H),dt=[];if(O&&dt.push(A),et>1){let pt=1/et;for(let bt=pt;bt<.999;bt+=pt){let Mt=D((1-bt)*K)/ct,w=D(bt*K)/ct,B=Mt*h+w*l,tt=Mt*u+w*v,nt=z(Mt*I+w*S,it(B*B+tt*tt)),x=z(tt,B);dt.push([x/Z,nt/Z])}}return O&&dt.push(M),dt}static insertGeodesics(A){let M=A.length-1;for(;M--;)if(Math.max(Math.abs(A[M][0]-A[M+1][0]),Math.abs(A[M][1]-A[M+1][1]))>10){let O=U.geodesic(A[M],A[M+1]);O.length&&A.splice(M+1,0,...O)}}static toString(A){let{name:M,rotation:O}=A||{};return[M,O&&O.join(",")].join(";")}constructor(A={}){this.hasCoordinates=!1,this.hasGeoProjection=!1,this.maxLatitude=90,this.options=A;let{name:M,projectedBounds:O,rotation:H}=A;this.rotator=H?this.getRotator(H):void 0;let z=M?U.registry[M]:void 0;z&&(this.def=new z(A));let{def:c,rotator:D}=this;c&&(this.maxLatitude=c.maxLatitude||90,this.hasGeoProjection=!0),D&&c?(this.forward=it=>c.forward(D.forward(it)),this.inverse=it=>D.inverse(c.inverse(it))):c?(this.forward=it=>c.forward(it),this.inverse=it=>c.inverse(it)):D&&(this.forward=D.forward,this.inverse=D.inverse),this.bounds=O==="world"?c&&c.bounds:O}lineIntersectsBounds(A){let{x1:M,x2:O,y1:H,y2:z}=this.bounds||{},c=(Q,W,k)=>{let[_,C]=Q,h=W?0:1;if(typeof k=="number"&&_[W]>=k!=C[W]>=k){let l=(k-_[W])/(C[W]-_[W]),u=_[h]+l*(C[h]-_[h]);return W?[u,k]:[k,u]}},D,it=A[0];return((D=c(A,0,M))||(D=c(A,0,O)))&&(it=D,A[1]=D),((D=c(A,1,H))||(D=c(A,1,z)))&&(it=D),it}getRotator(A){let M=A[0]*Z,O=(A[1]||0)*Z,H=(A[2]||0)*Z,z=Math.cos(O),c=Math.sin(O),D=Math.cos(H),it=Math.sin(H);if(M!==0||O!==0||H!==0)return{forward:Q=>{let W=Q[0]*Z+M,k=Q[1]*Z,_=Math.cos(k),C=Math.cos(W)*_,h=Math.sin(W)*_,l=Math.sin(k),u=l*z+C*c;return[Math.atan2(h*D-u*it,C*z-l*c)/Z,Math.asin(u*D+h*it)/Z]},inverse:Q=>{let W=Q[0]*Z,k=Q[1]*Z,_=Math.cos(k),C=Math.cos(W)*_,h=Math.sin(W)*_,l=Math.sin(k),u=l*D-h*it;return[(Math.atan2(h*D+l*it,C*z+u*c)-M)/Z,Math.asin(u*z-C*c)/Z]}}}forward(A){return A}inverse(A){return A}cutOnAntimeridian(A,M){let O,H=[],z=[A];for(let c=0,D=A.length;c90)&&(k<-90||k>90)&&W>0!=k>0){let _=X((180-(W+360)%360)/((k+360)%360-(W+360)%360),0,1),C=Q[1]+_*(it[1]-Q[1]);H.push({i:c,lat:C,direction:W<0?1:-1,previousLonLat:Q,lonLat:it})}}if(H.length)if(M){H.length%2==1&&(O=H.slice().sort((D,it)=>Math.abs(it.lat)-Math.abs(D.lat))[0],q(H,O));let c=H.length-2;for(;c>=0;){let D=H[c].i,it=Y(180+1e-6*H[c].direction),Q=Y(180-1e-6*H[c].direction),W=A.splice(D,H[c+1].i-D,...U.geodesic([it,H[c].lat],[it,H[c+1].lat],!0));W.push(...U.geodesic([Q,H[c+1].lat],[Q,H[c].lat],!0)),z.push(W),c-=2}if(O)for(let D=0;D-1){let _=(Q<0?-1:1)*this.maxLatitude,C=Y(180+1e-6*it),h=Y(180-1e-6*it),l=U.geodesic([C,Q],[C,_],!0);for(let u=C+120*it;u>-180&&u<180;u+=120*it)l.push([u,_]);l.push(...U.geodesic([h,_],[h,O.lat],!0)),W.splice(k,0,...l);break}}}else{let c=H.length;for(;c--;){let D=H[c].i,it=A.splice(D,A.length,[Y(180+1e-6*H[c].direction),H[c].lat]);it.unshift([Y(180-1e-6*H[c].direction),H[c].lat]),z.push(it)}}return z}path(A){let M,{bounds:O,def:H,rotator:z}=this,c=[],D=A.type==="Polygon"||A.type==="MultiPolygon",it=this.hasGeoProjection,Q=!H||H.antimeridianCutting!==!1,W=Q?z:void 0,k=Q&&H||this;O&&(M=[[O.x1,O.y1],[O.x2,O.y1],[O.x2,O.y2],[O.x1,O.y2]]);let _=C=>{let h=C.map(u=>{if(Q){W&&(u=W.forward(u));let v=u[0];1e-6>Math.abs(v-180)&&(v=v<180?179.999999:180.000001),u=[v,u[1]]}return u}),l=[h];it&&(U.insertGeodesics(h),Q&&(l=this.cutOnAntimeridian(h,D))),l.forEach(u=>{let v,I;if(u.length<2)return;let S=!1,b=!1,K=pt=>{S?c.push(["L",pt[0],pt[1]]):(c.push(["M",pt[0],pt[1]]),S=!0)},ct=!1,et=!1,dt=u.map(pt=>{let bt=k.forward(pt);return bt.outside?ct=!0:et=!0,bt[1]===1/0?bt[1]=1e10:bt[1]===-1/0&&(bt[1]=-1e10),bt});if(Q){if(D&&dt.push(dt[0]),ct){if(!et)return;if(M){if(D)dt=J(dt,M);else if(O){$(dt,M).forEach(pt=>{S=!1,pt.forEach(K)});return}}}dt.forEach(K)}else for(let pt=0;ptK(k.forward(w))):S=!1),K(Mt),I=bt,b=!1)}})};return A.type==="LineString"?_(A.coordinates):A.type==="MultiLineString"?A.coordinates.forEach(C=>_(C)):A.type==="Polygon"?(A.coordinates.forEach(C=>_(C)),c.length&&c.push(["Z"])):A.type==="MultiPolygon"&&(A.coordinates.forEach(C=>{C.forEach(h=>_(h))}),c.length&&c.push(["Z"])),c}}return U.registry=R,U}),g(d,"Maps/MapView.js",[d["Core/Globals.js"],d["Maps/MapViewDefaults.js"],d["Maps/GeoJSONComposition.js"],d["Core/Geometry/GeometryUtilities.js"],d["Maps/MapUtilities.js"],d["Maps/Projection.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q){let{composed:Z}=L,{pointInPolygon:Y}=$,{topo2geo:V}=st,{boundsFromPath:N}=J,{addEvent:U,clamp:T,crisp:A,fireEvent:M,isArray:O,isNumber:H,isObject:z,isString:c,merge:D,pick:it,pushUnique:Q,relativeLength:W}=q,k={};function _(u,v){let{width:I,height:S}=v;return Math.log(400.979322/Math.max((u.x2-u.x1)/(I/256),(u.y2-u.y1)/(S/256)))/Math.log(2)}function C(u){var v,I;u.seriesOptions.mapData&&((I=this.mapView)==null||I.recommendMapView(this,[this.options.chart.map,u.seriesOptions.mapData],(v=this.options.drilldown)==null?void 0:v.mapZooming))}class h{static compose(v){Q(Z,"MapView")&&(k=v.maps,U(v,"afterInit",function(){this.mapView=new h(this,this.options.mapView)},{order:0}),U(v,"addSeriesAsDrilldown",C),U(v,"afterDrillUp",C))}static compositeBounds(v){if(v.length)return v.slice(1).reduce((I,S)=>(I.x1=Math.min(I.x1,S.x1),I.y1=Math.min(I.y1,S.y1),I.x2=Math.max(I.x2,S.x2),I.y2=Math.max(I.y2,S.y2),I),D(v[0]))}static mergeInsets(v,I){let S=K=>{let ct={};return K.forEach((et,dt)=>{ct[et&&et.id||`i${dt}`]=et}),ct},b=D(S(v),S(I));return Object.keys(b).map(K=>b[K])}constructor(v,I){var ct;this.allowTransformAnimation=!0,this.eventsToUnbind=[],this.insets=[],this.padding=[0,0,0,0],this.recommendedMapView={},this instanceof l||this.recommendMapView(v,[v.options.chart.map,...(v.options.series||[]).map(et=>et.mapData)]),this.userOptions=I||{};let S=D(R,this.recommendedMapView,I),b=(ct=this.recommendedMapView)==null?void 0:ct.insets,K=I&&I.insets;b&&K&&(S.insets=h.mergeInsets(b,K)),this.chart=v,this.center=S.center,this.options=S,this.projection=new X(S.projection),this.playingField=v.plotBox,this.zoom=S.zoom||0,this.minZoom=S.minZoom,this.createInsets(),this.eventsToUnbind.push(U(v,"afterSetChartSize",()=>{this.playingField=this.getField(),(this.minZoom===void 0||this.minZoom===this.zoom)&&(this.fitToBounds(void 0,void 0,!1),!this.chart.hasRendered&&H(this.userOptions.zoom)&&(this.zoom=this.userOptions.zoom),this.userOptions.center&&D(!0,this.center,this.userOptions.center))})),this.setUpEvents()}createInsets(){let v=this.options,I=v.insets;I&&I.forEach(S=>{let b=new l(this,D(v.insetOptions,S));this.insets.push(b)})}fitToBounds(v,I,S=!0,b){let K=v||this.getProjectedBounds();if(K){let ct=it(I,v?0:this.options.padding),et=this.getField(!1),dt=O(ct)?ct:[ct,ct,ct,ct];this.padding=[W(dt[0],et.height),W(dt[1],et.width),W(dt[2],et.height),W(dt[3],et.width)],this.playingField=this.getField();let pt=_(K,this.playingField);v||(this.minZoom=pt);let bt=this.projection.inverse([(K.x2+K.x1)/2,(K.y2+K.y1)/2]);this.setView(bt,pt,S,b)}}getField(v=!0){let I=v?this.padding:[0,0,0,0];return{x:I[3],y:I[0],width:this.chart.plotWidth-I[1]-I[3],height:this.chart.plotHeight-I[0]-I[2]}}getGeoMap(v){if(c(v))return k[v]&&k[v].type==="Topology"?V(k[v]):k[v];if(z(v,!0)){if(v.type==="FeatureCollection")return v;if(v.type==="Topology")return V(v)}}getMapBBox(){let v=this.getProjectedBounds(),I=this.getScale();if(v){let S=this.padding,b=this.projectedUnitsToPixels({x:v.x1,y:v.y2});return{width:(v.x2-v.x1)*I+S[1]+S[3],height:(v.y2-v.y1)*I+S[0]+S[2],x:b.x-S[3],y:b.y-S[0]}}}getProjectedBounds(){let v=this.projection,I=this.chart.series.reduce((b,K)=>{let ct=K.getProjectedBounds&&K.getProjectedBounds();return ct&&K.options.affectsMapView!==!1&&b.push(ct),b},[]),S=this.options.fitToGeometry;if(S){if(!this.fitToGeometryCache)if(S.type==="MultiPoint"){let b=S.coordinates.map(et=>v.forward(et)),K=b.map(et=>et[0]),ct=b.map(et=>et[1]);this.fitToGeometryCache={x1:Math.min.apply(0,K),x2:Math.max.apply(0,K),y1:Math.min.apply(0,ct),y2:Math.max.apply(0,ct)}}else this.fitToGeometryCache=N(v.path(S));return this.fitToGeometryCache}return this.projection.bounds||h.compositeBounds(I)}getScale(){return .638436911716859*Math.pow(2,this.zoom)}getSVGTransform(){let{x:v,y:I,width:S,height:b}=this.playingField,K=this.projection.forward(this.center),ct=this.projection.hasCoordinates?-1:1,et=this.getScale(),dt=et*ct,pt=v+S/2-K[0]*et,bt=I+b/2-K[1]*dt;return{scaleX:et,scaleY:dt,translateX:pt,translateY:bt}}lonLatToPixels(v){let I=this.lonLatToProjectedUnits(v);if(I)return this.projectedUnitsToPixels(I)}lonLatToProjectedUnits(v){let I=this.chart,S=I.mapTransforms;if(S){for(let K in S)if(Object.hasOwnProperty.call(S,K)&&S[K].hitZone){let ct=I.transformFromLatLon(v,S[K]);if(ct&&Y(ct,S[K].hitZone.coordinates[0]))return ct}return I.transformFromLatLon(v,S.default)}for(let K of this.insets)if(K.options.geoBounds&&Y({x:v.lon,y:v.lat},K.options.geoBounds.coordinates[0])){let ct=K.projection.forward([v.lon,v.lat]),et=K.projectedUnitsToPixels({x:ct[0],y:ct[1]});return this.pixelsToProjectedUnits(et)}let b=this.projection.forward([v.lon,v.lat]);if(!b.outside)return{x:b[0],y:b[1]}}projectedUnitsToLonLat(v){let I=this.chart,S=I.mapTransforms;if(S){for(let ct in S)if(Object.hasOwnProperty.call(S,ct)&&S[ct].hitZone&&Y(v,S[ct].hitZone.coordinates[0]))return I.transformToLatLon(v,S[ct]);return I.transformToLatLon(v,S.default)}let b=this.projectedUnitsToPixels(v);for(let ct of this.insets)if(ct.hitZone&&Y(b,ct.hitZone.coordinates[0])){let et=ct.pixelsToProjectedUnits(b),dt=ct.projection.inverse([et.x,et.y]);return{lon:dt[0],lat:dt[1]}}let K=this.projection.inverse([v.x,v.y]);return{lon:K[0],lat:K[1]}}recommendMapView(v,I,S=!1){var et;this.recommendedMapView={};let b=I.map(dt=>this.getGeoMap(dt)),K=[];b.forEach(dt=>{if(dt&&(Object.keys(this.recommendedMapView).length||(this.recommendedMapView=dt["hc-recommended-mapview"]||{}),dt.bbox)){let[pt,bt,Mt,w]=dt.bbox;K.push({x1:pt,y1:bt,x2:Mt,y2:w})}});let ct=K.length&&h.compositeBounds(K);M(this,"onRecommendMapView",{geoBounds:ct,chart:v},function(){if(ct&&this.recommendedMapView){if(!this.recommendedMapView.projection){let{x1:dt,y1:pt,x2:bt,y2:Mt}=ct;this.recommendedMapView.projection=bt-dt>180&&Mt-pt>90?{name:"EqualEarth",parallels:[0,0],rotation:[0]}:{name:"LambertConformalConic",parallels:[pt,Mt],rotation:[-(dt+bt)/2]}}this.recommendedMapView.insets||(this.recommendedMapView.insets=void 0)}}),this.geoMap=b[0],S&&v.hasRendered&&!((et=v.userOptions.mapView)!=null&&et.projection)&&this.recommendedMapView&&this.update(this.recommendedMapView)}redraw(v){this.chart.series.forEach(I=>{I.useMapGeometry&&(I.isDirty=!0)}),this.chart.redraw(v)}setView(v,I,S=!0,b){v&&(this.center=v),typeof I=="number"&&(typeof this.minZoom=="number"&&(I=Math.max(I,this.minZoom)),typeof this.options.maxZoom=="number"&&(I=Math.min(I,this.options.maxZoom)),H(I)&&(this.zoom=I));let K=this.getProjectedBounds();if(K){let ct=this.projection.forward(this.center),{x:et,y:dt,width:pt,height:bt}=this.playingField,Mt=this.getScale(),w=this.projectedUnitsToPixels({x:K.x1,y:K.y1}),B=this.projectedUnitsToPixels({x:K.x2,y:K.y2}),tt=[(K.x1+K.x2)/2,(K.y1+K.y2)/2];if(!this.chart.series.some(nt=>nt.isDrilling)){let nt=w.x,x=B.y,y=B.x,j=w.y;y-ntet+pt&&nt>et&&(ct[0]+=Math.min(y-pt-et,nt-et)/Mt),j-xdt+bt&&x>dt&&(ct[1]-=Math.min(j-bt-dt,x-dt)/Mt),this.center=this.projection.inverse(ct)}this.insets.forEach(nt=>{nt.options.field&&(nt.hitZone=nt.getHitZone(),nt.playingField=nt.getField())}),this.render()}M(this,"afterSetView"),S&&this.redraw(b)}projectedUnitsToPixels(v){let I=this.getScale(),S=this.projection.forward(this.center),b=this.playingField,K=b.x+b.width/2,ct=b.y+b.height/2;return{x:K-I*(S[0]-v.x),y:ct+I*(S[1]-v.y)}}pixelsToLonLat(v){return this.projectedUnitsToLonLat(this.pixelsToProjectedUnits(v))}pixelsToProjectedUnits(v){let{x:I,y:S}=v,b=this.getScale(),K=this.projection.forward(this.center),ct=this.playingField,et=ct.x+ct.width/2,dt=ct.y+ct.height/2;return{x:K[0]+(I-et)/b,y:K[1]-(S-dt)/b}}setUpEvents(){let v,I,S,{chart:b}=this,K=ct=>{let{lastTouches:et,pinchDown:dt}=b.pointer,pt=this.projection,bt=ct.touches,{mouseDownX:Mt,mouseDownY:w}=b,B=0;if((dt==null?void 0:dt.length)===1?(Mt=dt[0].chartX,w=dt[0].chartY):(dt==null?void 0:dt.length)===2&&(Mt=(dt[0].chartX+dt[1].chartX)/2,w=(dt[0].chartY+dt[1].chartY)/2),(bt==null?void 0:bt.length)===2&&et&&(B=Math.log(Math.sqrt(Math.pow(et[0].chartX-et[1].chartX,2)+Math.pow(et[0].chartY-et[1].chartY,2))/Math.sqrt(Math.pow(bt[0].chartX-bt[1].chartX,2)+Math.pow(bt[0].chartY-bt[1].chartY,2)))/Math.log(.5)),H(Mt)&&H(w)){let tt=`${Mt},${w}`,{chartX:nt,chartY:x}=ct.originalEvent;(bt==null?void 0:bt.length)===2&&(nt=(bt[0].chartX+bt[1].chartX)/2,x=(bt[0].chartY+bt[1].chartY)/2),tt!==I&&(I=tt,v=this.projection.forward(this.center),S=(this.projection.options.rotation||[0,0]).slice());let y=pt.def&&pt.def.bounds,j=y&&_(y,this.playingField)||-1/0;if(pt.options.name==="Orthographic"&&2>((bt==null?void 0:bt.length)||0)&&(this.minZoom||1/0)<1.3*j){let lt=440/(this.getScale()*Math.min(b.plotWidth,b.plotHeight));if(S){let rt=(Mt-nt)*lt-S[0],gt=T(-S[1]-(w-x)*lt,-80,80),vt=this.zoom;this.update({projection:{rotation:[-rt,-gt]}},!1),this.fitToBounds(void 0,void 0,!1),this.zoom=vt,b.redraw(!1)}}else if(H(nt)&&H(x)){let lt=this.getScale(),rt=this.projection.hasCoordinates?1:-1,gt=this.projection.inverse([v[0]+(Mt-nt)/lt,v[1]-(w-x)/lt*rt]);isNaN(gt[0]+gt[1])||this.zoomBy(B,gt,void 0,!1)}ct.preventDefault()}};U(b,"pan",K),U(b,"touchpan",K),U(b,"selection",ct=>{if(ct.resetSelection)this.zoomBy();else{let et=ct.x-b.plotLeft,dt=ct.y-b.plotTop,{y:pt,x:bt}=this.pixelsToProjectedUnits({x:et,y:dt}),{y:Mt,x:w}=this.pixelsToProjectedUnits({x:et+ct.width,y:dt+ct.height});this.fitToBounds({x1:bt,y1:pt,x2:w,y2:Mt},void 0,!0,!ct.originalEvent.touches&&void 0),/^touch/.test(ct.originalEvent.type)||b.showResetZoom(),ct.preventDefault()}})}render(){this.group||(this.group=this.chart.renderer.g("map-view").attr({zIndex:4}).add())}update(v,I=!0,S){let b=v.projection,K=b&&X.toString(b)!==X.toString(this.options.projection),ct=!1;D(!0,this.userOptions,v),D(!0,this.options,v),"insets"in v&&(this.insets.forEach(et=>et.destroy()),this.insets.length=0,ct=!0),(K||"fitToGeometry"in v)&&delete this.fitToGeometryCache,(K||ct)&&(this.chart.series.forEach(et=>{let dt=et.transformGroups;if(et.clearBounds&&et.clearBounds(),et.isDirty=!0,et.isDirtyData=!0,ct&&dt)for(;dt.length>1;){let pt=dt.pop();pt&&pt.destroy()}}),K&&(this.projection=new X(this.options.projection)),ct&&this.createInsets(),!v.center&&Object.hasOwnProperty.call(v,"zoom")&&!H(v.zoom)&&this.fitToBounds(void 0,void 0,!1)),v.center||H(v.zoom)?this.setView(this.options.center,v.zoom,!1):"fitToGeometry"in v&&this.fitToBounds(void 0,void 0,!1),I&&this.chart.redraw(S)}zoomBy(v,I,S,b){let K=this.chart,ct=this.projection.forward(this.center);if(typeof v=="number"){let et,dt,pt,bt=this.zoom+v;if(S){let[Mt,w]=S,B=this.getScale(),tt=Mt-K.plotLeft-K.plotWidth/2,nt=w-K.plotTop-K.plotHeight/2;dt=ct[0]+tt/B,pt=ct[1]+nt/B}if(typeof dt=="number"&&typeof pt=="number"){let Mt=1-Math.pow(2,this.zoom)/Math.pow(2,bt),w=ct[0]-dt,B=ct[1]-pt;ct[0]-=w*Mt,ct[1]+=B*Mt,et=this.projection.inverse(ct)}this.setView(I||et,bt,void 0,b)}else this.fitToBounds(void 0,void 0,void 0,b)}}class l extends h{constructor(v,I){if(super(v.chart,I),this.id=I.id,this.mapView=v,this.options=D({center:[0,0]},v.options.insetOptions,I),this.allBounds=[],this.options.geoBounds){let S=v.projection.path(this.options.geoBounds);this.geoBoundsProjectedBox=N(S),this.geoBoundsProjectedPolygon=S.map(b=>[b[1]||0,b[2]||0])}}getField(v=!0){let I=this.hitZone;if(I){let S=v?this.padding:[0,0,0,0],b=I.coordinates[0],K=b.map(Mt=>Mt[0]),ct=b.map(Mt=>Mt[1]),et=Math.min.apply(0,K)+S[3],dt=Math.max.apply(0,K)-S[1],pt=Math.min.apply(0,ct)+S[0],bt=Math.max.apply(0,ct)-S[2];if(H(et)&&H(pt))return{x:et,y:pt,width:dt-et,height:bt-pt}}return super.getField.call(this,v)}getHitZone(){let{chart:v,mapView:I,options:S}=this,{coordinates:b}=S.field||{};if(b){let K=b[0];if(S.units==="percent"){let ct=S.relativeTo==="mapBoundingBox"&&I.getMapBBox()||D(v.plotBox,{x:0,y:0});K=K.map(et=>[W(`${et[0]}%`,ct.width,ct.x),W(`${et[1]}%`,ct.height,ct.y)])}return{type:"Polygon",coordinates:[K]}}}getProjectedBounds(){return h.compositeBounds(this.allBounds)}isInside(v){let{geoBoundsProjectedBox:I,geoBoundsProjectedPolygon:S}=this;return!!(I&&v.x>=I.x1&&v.x<=I.x2&&v.y>=I.y1&&v.y<=I.y2&&S&&Y(v,S))}render(){let{chart:v,mapView:I,options:S}=this,b=S.borderPath||S.field;if(b&&I.group){let K=!0;this.border||(this.border=v.renderer.path().addClass("highcharts-mapview-inset-border").add(I.group),K=!1),v.styledMode||this.border.attr({stroke:S.borderColor,"stroke-width":S.borderWidth});let ct=this.border.strokeWidth(),et=S.relativeTo==="mapBoundingBox"&&I.getMapBBox()||I.playingField,dt=(b.coordinates||[]).reduce((pt,bt)=>bt.reduce((Mt,w,B)=>{let[tt,nt]=w;return S.units==="percent"&&(tt=v.plotLeft+W(`${tt}%`,et.width,et.x),nt=v.plotTop+W(`${nt}%`,et.height,et.y)),tt=A(tt,ct),nt=A(nt,ct),Mt.push(B===0?["M",tt,nt]:["L",tt,nt]),Mt},pt),[]);this.border[K?"animate":"attr"]({d:dt})}}destroy(){this.border&&(this.border=this.border.destroy()),this.eventsToUnbind.forEach(v=>v())}setUpEvents(){}}return h}),g(d,"Series/Map/MapSeries.js",[d["Core/Animation/AnimationUtilities.js"],d["Series/ColorMapComposition.js"],d["Series/CenteredUtilities.js"],d["Core/Globals.js"],d["Core/Chart/MapChart.js"],d["Series/Map/MapPoint.js"],d["Series/Map/MapSeriesDefaults.js"],d["Maps/MapView.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X,q,Z,Y,V){let{animObject:N,stop:U}=L,{noop:T}=$,{splitPath:A}=J,{column:M,scatter:O}=Y.seriesTypes,{extend:H,find:z,fireEvent:c,getNestedProperty:D,isArray:it,defined:Q,isNumber:W,isObject:k,merge:_,objectEach:C,pick:h,splat:l}=V;class u extends O{constructor(){super(...arguments),this.processedData=[]}animate(I){let{chart:S,group:b}=this,K=N(this.options.animation);I?b.attr({translateX:S.plotLeft+S.plotWidth/2,translateY:S.plotTop+S.plotHeight/2,scaleX:.001,scaleY:.001}):b.animate({translateX:S.plotLeft,translateY:S.plotTop,scaleX:1,scaleY:1},K)}clearBounds(){this.points.forEach(I=>{delete I.bounds,delete I.insetIndex,delete I.projectedPath}),delete this.bounds}doFullTranslate(){return!!(this.isDirtyData||this.chart.isResizing||!this.hasRendered)}drawMapDataLabels(){super.drawDataLabels(),this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)}drawPoints(){let I=this,{chart:S,group:b,transformGroups:K=[]}=this,{mapView:ct,renderer:et}=S;if(ct){this.transformGroups=K,K[0]||(K[0]=et.g().add(b));for(let dt=0,pt=ct.insets.length;dt{let{graphic:pt}=dt;dt.group=K[typeof dt.insetIndex=="number"?dt.insetIndex+1:0],pt&&pt.parentGroup!==dt.group&&pt.add(dt.group)}),M.prototype.drawPoints.apply(this),this.points.forEach(dt=>{let pt=dt.graphic;if(pt){let bt=pt.animate,Mt="";dt.name&&(Mt+="highcharts-name-"+dt.name.replace(/ /g,"-").toLowerCase()),dt.properties&&dt.properties["hc-key"]&&(Mt+=" highcharts-key-"+dt.properties["hc-key"].toString().toLowerCase()),Mt&&pt.addClass(Mt),S.styledMode&&pt.css(this.pointAttribs(dt,dt.selected&&"select"||void 0)),pt.attr({visibility:!dt.visible&&(dt.visible||dt.isNull)?"hidden":"inherit"}),pt.animate=function(w,B,tt){let nt=W(w["stroke-width"])&&!W(pt["stroke-width"]),x=W(pt["stroke-width"])&&!W(w["stroke-width"]);if(nt||x){let y=h(I.getStrokeWidth(I.options),1)/(S.mapView&&S.mapView.getScale()||1);nt&&(pt["stroke-width"]=y),x&&(w["stroke-width"]=y)}return bt.call(pt,w,B,x?function(){pt.element.removeAttribute("stroke-width"),delete pt["stroke-width"],tt&&tt.apply(this,arguments)}:tt)}}})),K.forEach((dt,pt)=>{let bt=(pt===0?ct:ct.insets[pt-1]).getSVGTransform(),Mt=h(this.getStrokeWidth(this.options),1),w=bt.scaleX,B=bt.scaleY>0?1:-1,tt=nt=>{(I.points||[]).forEach(x=>{let y,j=x.graphic;j&&j["stroke-width"]&&(y=this.getStrokeWidth(x.options))&&j.attr({"stroke-width":y/nt})})};if(et.globalAnimation&&S.hasRendered&&ct.allowTransformAnimation){let nt=Number(dt.attr("translateX")),x=Number(dt.attr("translateY")),y=Number(dt.attr("scaleX")),j=(gt,vt)=>{let Ot=y+(w-y)*vt.pos;dt.attr({translateX:nt+(bt.translateX-nt)*vt.pos,translateY:x+(bt.translateY-x)*vt.pos,scaleX:Ot,scaleY:Ot*B,"stroke-width":Mt/Ot}),tt(Ot)},lt=_(N(et.globalAnimation)),rt=lt.step;lt.step=function(){rt&&rt.apply(this,arguments),j.apply(this,arguments)},dt.attr({animator:0}).animate({animator:1},lt,function(){typeof et.globalAnimation!="boolean"&&et.globalAnimation.complete&&et.globalAnimation.complete({applyDrilldown:!0}),c(this,"mapZoomComplete")}.bind(this))}else U(dt),dt.attr(_(bt,{"stroke-width":Mt/w})),tt(w)}),this.isDrilling||this.drawMapDataLabels()}}getProjectedBounds(){if(!this.bounds&&this.chart.mapView){let{insets:I,projection:S}=this.chart.mapView,b=[];(this.points||[]).forEach(K=>{if(K.path||K.geometry){if(typeof K.path=="string"?K.path=A(K.path):it(K.path)&&K.path[0]==="M"&&(K.path=this.chart.renderer.pathToSegments(K.path)),!K.bounds){let ct=K.getProjectedBounds(S);if(ct){K.labelrank=h(K.labelrank,(ct.x2-ct.x1)*(ct.y2-ct.y1));let{midX:et,midY:dt}=ct;if(I&&W(et)&&W(dt)){let pt=z(I,bt=>bt.isInside({x:et,y:dt}));pt&&(delete K.projectedPath,(ct=K.getProjectedBounds(pt.projection))&&pt.allBounds.push(ct),K.insetIndex=I.indexOf(pt))}K.bounds=ct}}K.bounds&&K.insetIndex===void 0&&b.push(K.bounds)}}),this.bounds=Z.compositeBounds(b)}return this.bounds}getStrokeWidth(I){let S=this.pointAttrToOptions;return I[S&&S["stroke-width"]||"borderWidth"]}hasData(){return!!this.processedXData.length}pointAttribs(I,S){var pt;let{mapView:b,styledMode:K}=I.series.chart,ct=K?this.colorAttribs(I):M.prototype.pointAttribs.call(this,I,S),et=this.getStrokeWidth(I.options);if(S){let bt=_(this.options.states&&this.options.states[S],I.options.states&&I.options.states[S]||{}),Mt=this.getStrokeWidth(bt);Q(Mt)&&(et=Mt),ct.stroke=(pt=bt.borderColor)!=null?pt:I.color}et&&b&&(et/=b.getScale());let dt=this.getStrokeWidth(this.options);return ct.dashstyle&&b&&W(dt)&&(et=dt/b.getScale()),I.visible||(ct.fill=this.options.nullColor),Q(et)?ct["stroke-width"]=et:delete ct["stroke-width"],ct["stroke-linecap"]=ct["stroke-linejoin"]=this.options.linecap,ct}updateData(){return!this.processedData&&super.updateData.apply(this,arguments)}setData(I,S=!0,b,K){delete this.bounds,super.setData(I,!1,void 0,K),this.processData(),this.generatePoints(),S&&this.chart.redraw(b)}processData(){let I,S,b,K=this.options,ct=K.data,et=this.chart,dt=et.options.chart,pt=this.joinBy,bt=K.keys||this.pointArrayMap,Mt=[],w={},B=this.chart.mapView,tt=B&&(k(K.mapData,!0)?B.getGeoMap(K.mapData):B.geoMap),nt=et.mapTransforms=dt.mapTransforms||tt&&tt["hc-transform"]||et.mapTransforms;nt&&C(nt,y=>{y.rotation&&(y.cosAngle=Math.cos(y.rotation),y.sinAngle=Math.sin(y.rotation))}),it(K.mapData)?b=K.mapData:tt&&tt.type==="FeatureCollection"&&(this.mapTitle=tt.title,b=$.geojson(tt,this.type,this)),this.processedData=[];let x=this.processedData;if(ct){let y;for(let j=0,lt=ct.length;jbt.length&&typeof y[0]=="string"&&(x[j]["hc-key"]=y[0],++rt);for(let gt=0;gt0?X.prototype.setNestedProperty(x[j],y[rt],bt[gt]):x[j][bt[gt]]=y[rt])}else x[j]=ct[j];pt&&pt[0]==="_i"&&(x[j]._i=j)}}if(b){this.mapData=b,this.mapMap={};for(let y=0;y{let lt=D(y,j);w[lt]&&Mt.push(w[lt])})}if(K.allAreas){if(pt[1]){let j=pt[1];x.forEach(lt=>{Mt.push(D(j,lt))})}let y="|"+Mt.map(function(j){return j&&j[pt[0]]}).join("|")+"|";b.forEach(j=>{pt[0]&&y.indexOf("|"+j[pt[0]]+"|")!==-1||x.push(_(j,{value:null}))})}}this.processedXData=Array(x.length)}setOptions(I){let S=super.setOptions(I),b=S.joinBy;return S.joinBy===null&&(b="_i"),(b=this.joinBy=l(b))[1]||(b[1]=b[0]),S}translate(){let I=this.doFullTranslate(),S=this.chart.mapView,b=S&&S.projection;if(this.chart.hasRendered&&(this.isDirtyData||!this.hasRendered)&&(this.processData(),this.generatePoints(),delete this.bounds,!S||S.userOptions.center||W(S.userOptions.zoom)||S.zoom!==S.minZoom?this.getProjectedBounds():S.fitToBounds(void 0,void 0,!1)),S){let K=S.getSVGTransform();this.points.forEach(ct=>{let et=W(ct.insetIndex)&&S.insets[ct.insetIndex].getSVGTransform()||K;et&&ct.bounds&&W(ct.bounds.midX)&&W(ct.bounds.midY)&&(ct.plotX=ct.bounds.midX*et.scaleX+et.translateX,ct.plotY=ct.bounds.midY*et.scaleY+et.translateY),I&&(ct.shapeType="path",ct.shapeArgs={d:X.getProjectedPath(ct,b)}),ct.hiddenInDataClass||(ct.projectedPath&&!ct.projectedPath.length?ct.setVisible(!1):ct.visible||ct.setVisible(!0))})}c(this,"afterTranslate")}update(I){var S;I.mapData&&((S=this.chart.mapView)==null||S.recommendMapView(this.chart,[this.chart.options.chart.map,...(this.chart.options.series||[]).map((b,K)=>K===this._i?I.mapData:b.mapData)],!0)),super.update.apply(this,arguments)}}return u.defaultOptions=_(O.defaultOptions,q),H(u.prototype,{type:"map",axisTypes:R.seriesMembers.axisTypes,colorAttribs:R.seriesMembers.colorAttribs,colorKey:R.seriesMembers.colorKey,directTouch:!0,drawDataLabels:T,drawGraph:T,forceDL:!0,getCenter:st.getCenter,getExtremesFromAll:!0,getSymbol:T,isCartesian:!1,parallelArrays:R.seriesMembers.parallelArrays,pointArrayMap:R.seriesMembers.pointArrayMap,pointClass:X,preserveAspectRatio:!0,searchPoint:T,trackerGroups:R.seriesMembers.trackerGroups,useMapGeometry:!0}),R.compose(u),Y.registerSeriesType("map",u),u}),g(d,"Series/MapLine/MapLineSeriesDefaults.js",[],function(){return{lineWidth:1,fillColor:"none",legendSymbol:"lineMarker"}}),g(d,"Series/MapLine/MapLineSeries.js",[d["Series/MapLine/MapLineSeriesDefaults.js"],d["Series/Map/MapSeries.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{extend:J,merge:X}=$;class q extends R{pointAttribs(Y,V){let N=super.pointAttribs(Y,V);return N.fill=this.options.fillColor,N}}return q.defaultOptions=X(R.defaultOptions,L),J(q.prototype,{type:"mapline",colorProp:"stroke",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"}}),st.registerSeriesType("mapline",q),q}),g(d,"Series/MapPoint/MapPointPoint.js",[d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R){let{scatter:st}=L.seriesTypes,{isNumber:$}=R;class J extends st.prototype.pointClass{isValid(){return!!(this.options.geometry||$(this.x)&&$(this.y)||$(this.options.lon)&&$(this.options.lat))}}return J}),g(d,"Series/MapPoint/MapPointSeriesDefaults.js",[],function(){return{dataLabels:{crop:!1,defer:!1,enabled:!0,formatter:function(){return this.point.name},overflow:!1,style:{color:"#000000"}},legendSymbol:"lineMarker"}}),g(d,"Series/MapPoint/MapPointSeries.js",[d["Core/Globals.js"],d["Series/MapPoint/MapPointPoint.js"],d["Series/MapPoint/MapPointSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){let{noop:q}=L,{map:Z,scatter:Y}=$.seriesTypes,{extend:V,fireEvent:N,isNumber:U,merge:T}=X;class A extends Y{constructor(){super(...arguments),this.clearBounds=Z.prototype.clearBounds}drawDataLabels(){super.drawDataLabels(),this.dataLabelsGroup&&this.dataLabelsGroup.clip(this.chart.clipRect)}projectPoint(O){let H=this.chart.mapView;if(H){let{geometry:z,lon:c,lat:D}=O,it=z&&z.type==="Point"&&z.coordinates;if(U(c)&&U(D)&&(it=[c,D]),it)return H.lonLatToProjectedUnits({lon:it[0],lat:it[1]})}}translate(){let O=this.chart.mapView;if(this.processedXData||this.processData(),this.generatePoints(),this.getProjectedBounds&&this.isDirtyData&&(delete this.bounds,this.getProjectedBounds()),O){let H=O.getSVGTransform(),{hasCoordinates:z}=O.projection;this.points.forEach(c=>{let D,{x:it,y:Q}=c,W=U(c.insetIndex)&&O.insets[c.insetIndex].getSVGTransform()||H,k=this.projectPoint(c.options)||c.properties&&this.projectPoint(c.properties);if(k?(it=k.x,Q=k.y):c.bounds&&(it=c.bounds.midX,Q=c.bounds.midY,W&&U(it)&&U(Q)&&(c.plotX=it*W.scaleX+W.translateX,c.plotY=Q*W.scaleY+W.translateY,D=!0)),U(it)&&U(Q)){if(!D){let _=O.projectedUnitsToPixels({x:it,y:Q});c.plotX=_.x,c.plotY=z?_.y:this.chart.plotHeight-_.y}}else c.y=c.plotX=c.plotY=void 0;c.isInside=this.isPointInside(c),c.zone=this.zones.length?c.getZone():void 0})}N(this,"afterTranslate")}}return A.defaultOptions=T(Y.defaultOptions,st),J.prototype.symbols.mapmarker=(M,O,H,z,c)=>{let D,it,Q=c&&c.context==="legend";Q?(D=M+H/2,it=O+z):c&&typeof c.anchorX=="number"&&typeof c.anchorY=="number"?(D=c.anchorX,it=c.anchorY):(D=M+H/2,it=O+z/2,O-=z);let W=Q?z/3:z/2;return[["M",D,it],["C",D,it,D-W,O+1.5*W,D-W,O+W],["A",W,W,1,1,1,D+W,O+W],["C",D+W,O+1.5*W,D,it,D,it],["Z"]]},V(A.prototype,{type:"mappoint",axisTypes:["colorAxis"],forceDL:!0,isCartesian:!1,pointClass:R,searchPoint:q,useMapGeometry:!0}),$.registerSeriesType("mappoint",A),A}),g(d,"Series/Bubble/BubbleLegendDefaults.js",[],function(){return{borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:"0.9em",color:"#000000"},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0}}),g(d,"Series/Bubble/BubbleLegendItem.js",[d["Core/Color/Color.js"],d["Core/Templating.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{parse:J}=L,{noop:X}=st,{arrayMax:q,arrayMin:Z,isNumber:Y,merge:V,pick:N,stableSort:U}=$;return class{constructor(T,A){this.setState=X,this.init(T,A)}init(T,A){this.options=T,this.visible=!0,this.chart=A.chart,this.legend=A}addToLegend(T){T.splice(this.options.legendIndex,0,this)}drawLegendSymbol(T){let A,M=N(T.options.itemDistance,20),O=this.legendItem||{},H=this.options,z=H.ranges,c=H.connectorDistance;if(!z||!z.length||!Y(z[0].value)){T.options.bubbleLegend.autoRanges=!0;return}U(z,function(W,k){return k.value-W.value}),this.ranges=z,this.setOptions(),this.render();let D=this.getMaxLabelSize(),it=this.ranges[0].radius,Q=2*it;A=(A=c-it+D.width)>0?A:0,this.maxLabel=D,this.movementX=H.labels.align==="left"?A:0,O.labelWidth=Q+A+M,O.labelHeight=Q+D.height/2}setOptions(){let T=this.ranges,A=this.options,M=this.chart.series[A.seriesIndex],O=this.legend.baseline,H={zIndex:A.zIndex,"stroke-width":A.borderWidth},z={zIndex:A.zIndex,"stroke-width":A.connectorWidth},c={align:this.legend.options.rtl||A.labels.align==="left"?"right":"left",zIndex:A.zIndex},D=M.options.marker.fillOpacity,it=this.chart.styledMode;T.forEach(function(Q,W){it||(H.stroke=N(Q.borderColor,A.borderColor,M.color),H.fill=N(Q.color,A.color,D!==1?J(M.color).setOpacity(D).get("rgba"):M.color),z.stroke=N(Q.connectorColor,A.connectorColor,M.color)),T[W].radius=this.getRangeRadius(Q.value),T[W]=V(T[W],{center:T[0].radius-T[W].radius+O}),it||V(!0,T[W],{bubbleAttribs:V(H),connectorAttribs:V(z),labelAttribs:c})},this)}getRangeRadius(T){let A=this.options,M=this.options.seriesIndex,O=this.chart.series[M],H=A.ranges[0].value,z=A.ranges[A.ranges.length-1].value,c=A.minSize,D=A.maxSize;return O.getRadius.call(this,z,H,c,D,T)}render(){let T=this.legendItem||{},A=this.chart.renderer,M=this.options.zThreshold;for(let O of(this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]}),T.symbol=A.g("bubble-legend"),T.label=A.g("bubble-legend-item").css(this.legend.itemStyle||{}),T.symbol.translateX=0,T.symbol.translateY=0,T.symbol.add(T.label),T.label.add(T.group),this.ranges))O.value>=M&&this.renderRange(O);this.hideOverlappingLabels()}renderRange(T){let A=this.ranges[0],M=this.legend,O=this.options,H=O.labels,z=this.chart,c=z.series[O.seriesIndex],D=z.renderer,it=this.symbols,Q=it.labels,W=T.center,k=Math.abs(T.radius),_=O.connectorDistance||0,C=H.align,h=M.options.rtl,l=O.borderWidth,u=O.connectorWidth,v=A.radius||0,I=W-k-l/2+u/2,S=(I%1?1:.5)-(u%2?0:.5),b=D.styledMode,K=h||C==="left"?-_:_;C==="center"&&(K=0,O.connectorDistance=0,T.labelAttribs.align="center"),it.bubbleItems.push(D.circle(v,W+S,k).attr(b?{}:T.bubbleAttribs).addClass((b?"highcharts-color-"+c.colorIndex+" ":"")+"highcharts-bubble-legend-symbol "+(O.className||"")).add(this.legendItem.symbol)),it.connectors.push(D.path(D.crispLine([["M",v,I],["L",v+K,I]],O.connectorWidth)).attr(b?{}:T.connectorAttribs).addClass((b?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(O.connectorClassName||"")).add(this.legendItem.symbol));let ct=D.text(this.formatLabel(T)).attr(b?{}:T.labelAttribs).css(b?{}:H.style).addClass("highcharts-bubble-legend-labels "+(O.labels.className||"")).add(this.legendItem.symbol),et={x:v+K+O.labels.x,y:I+O.labels.y+.4*ct.getBBox().height};ct.attr(et),Q.push(ct),ct.placed=!0,ct.alignAttr=et}getMaxLabelSize(){let T,A;return this.symbols.labels.forEach(function(M){A=M.getBBox(!0),T=T?A.width>T.width?A:T:A}),T||{}}formatLabel(T){let A=this.options,M=A.labels.formatter,O=A.labels.format,{numberFormatter:H}=this.chart;return O?R.format(O,T):M?M.call(T):H(T.value,1)}hideOverlappingLabels(){let T=this.chart,A=this.options.labels.allowOverlap,M=this.symbols;!A&&M&&(T.hideOverlappingLabels(M.labels),M.labels.forEach(function(O,H){O.newOpacity?O.newOpacity!==O.oldOpacity&&M.connectors[H].show():M.connectors[H].hide()}))}getRanges(){let T=this.legend.bubbleLegend,A=T.chart.series,M=T.options.ranges,O,H,z=Number.MAX_VALUE,c=-Number.MAX_VALUE;return A.forEach(function(D){D.isBubble&&!D.ignoreSeries&&(H=D.zData.filter(Y)).length&&(z=N(D.options.zMin,Math.min(z,Math.max(Z(H),D.options.displayNegative===!1?D.options.zThreshold:-Number.MAX_VALUE))),c=N(D.options.zMax,Math.max(c,q(H))))}),O=z===c?[{value:c}]:[{value:z},{value:(z+c)/2},{value:c,autoRanges:!0}],M.length&&M[0].radius&&O.reverse(),O.forEach(function(D,it){M&&M[it]&&(O[it]=V(M[it],D))}),O}predictBubbleSizes(){let T=this.chart,A=T.legend.options,M=A.floating,O=A.layout==="horizontal",H=O?T.legend.lastLineHeight:0,z=T.plotSizeX,c=T.plotSizeY,D=T.series[this.options.seriesIndex],it=D.getPxExtremes(),Q=Math.ceil(it.minPxSize),W=Math.ceil(it.maxPxSize),k=Math.min(c,z),_,C=D.options.maxSize;return M||!/%$/.test(C)?_=W:(_=(k+H)*(C=parseFloat(C))/100/(C/100+1),(O&&c-_>=z||!O&&z-_>=c)&&(_=W)),[Q,Math.ceil(_)]}updateRanges(T,A){let M=this.legend.options.bubbleLegend;M.minSize=T,M.maxSize=A,M.ranges=this.getRanges()}correctSizes(){let T=this.legend,A=this.chart.series[this.options.seriesIndex].getPxExtremes();Math.abs(Math.ceil(A.maxPxSize)-this.options.maxSize)>1&&(this.updateRanges(this.options.minSize,A.maxPxSize),T.render())}}}),g(d,"Series/Bubble/BubbleLegendComposition.js",[d["Series/Bubble/BubbleLegendDefaults.js"],d["Series/Bubble/BubbleLegendItem.js"],d["Core/Defaults.js"],d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R,st,$,J){let{setOptions:X}=st,{composed:q}=$,{addEvent:Z,objectEach:Y,pushUnique:V,wrap:N}=J;function U(z,c,D){let it,Q,W,k=this.legend,_=T(this)>=0;k&&k.options.enabled&&k.bubbleLegend&&k.options.bubbleLegend.autoRanges&&_?(it=k.bubbleLegend.options,Q=k.bubbleLegend.predictBubbleSizes(),k.bubbleLegend.updateRanges(Q[0],Q[1]),it.placed||(k.group.placed=!1,k.allItems.forEach(C=>{(W=C.legendItem||{}).group&&(W.group.translateY=void 0)})),k.render(),it.placed||(this.getMargins(),this.axes.forEach(function(C){C.visible&&C.render(),it.placed||(C.setScale(),C.updateNames(),Y(C.ticks,function(h){h.isNew=!0,h.isNewLabel=!0}))}),this.getMargins()),it.placed=!0,z.call(this,c,D),k.bubbleLegend.correctSizes(),H(k,A(k))):(z.call(this,c,D),k&&k.options.enabled&&k.bubbleLegend&&(k.render(),H(k,A(k))))}function T(z){let c=z.series,D=0;for(;DQ.height&&(Q.height=c[C].itemHeight);Q.step=_}return D}function M(z){let c=this.bubbleLegend,D=this.options,it=D.bubbleLegend,Q=T(this.chart);c&&c.ranges&&c.ranges.length&&(it.ranges.length&&(it.autoRanges=!!it.ranges[0].autoRanges),this.destroyItem(c)),Q>=0&&D.enabled&&it.enabled&&(it.seriesIndex=Q,this.bubbleLegend=new R(it,this),this.bubbleLegend.addToLegend(z.allItems))}function O(z){let c;if(z.defaultPrevented)return!1;let D=z.legendItem,it=this.chart,Q=D.visible;this&&this.bubbleLegend&&(D.visible=!Q,D.ignoreSeries=Q,c=T(it)>=0,this.bubbleLegend.visible!==c&&(this.update({bubbleLegend:{enabled:c}}),this.bubbleLegend.visible=c),D.visible=Q)}function H(z,c){let D=z.allItems,it=z.options.rtl,Q,W,k,_,C=0;D.forEach((h,l)=>{(_=h.legendItem||{}).group&&(Q=_.group.translateX||0,W=_.y||0,((k=h.movementX)||it&&h.ranges)&&(k=it?Q-h.options.maxSize/2:Q+k,_.group.attr({translateX:k})),l>c[C].step&&C++,_.group.attr({translateY:Math.round(W+c[C].height/2)}),_.y=W+c[C].height/2)})}return{compose:function(z,c){V(q,"Series.BubbleLegend")&&(X({legend:{bubbleLegend:L}}),N(z.prototype,"drawChartBox",U),Z(c,"afterGetAllItems",M),Z(c,"itemClick",O))}}}),g(d,"Series/Bubble/BubblePoint.js",[d["Core/Series/Point.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{scatter:{prototype:{pointClass:$}}}}=R,{extend:J}=st;class X extends ${haloPath(Z){let Y=(Z&&this.marker&&this.marker.radius||0)+Z;if(this.series.chart.inverted){let V=this.pos()||[0,0],{xAxis:N,yAxis:U,chart:T}=this.series;return T.renderer.symbols.circle(N.len-V[1]-Y,U.len-V[0]-Y,2*Y,2*Y)}return L.prototype.haloPath.call(this,Y)}}return J(X.prototype,{ttBelow:!1}),X}),g(d,"Series/Bubble/BubbleSeries.js",[d["Series/Bubble/BubbleLegendComposition.js"],d["Series/Bubble/BubblePoint.js"],d["Core/Color/Color.js"],d["Core/Globals.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$,J,X){let{parse:q}=st,{composed:Z,noop:Y}=$,{series:V,seriesTypes:{column:{prototype:N},scatter:U}}=J,{addEvent:T,arrayMax:A,arrayMin:M,clamp:O,extend:H,isNumber:z,merge:c,pick:D,pushUnique:it}=X;function Q(){let k=this.len,{coll:_,isXAxis:C,min:h}=this,l=C?"xData":"yData",u=(this.max||0)-(h||0),v=0,I=k,S=k/u,b;(_==="xAxis"||_==="yAxis")&&(this.series.forEach(K=>{if(K.bubblePadding&&K.reserveSpace()){this.allowZoomOutside=!0,b=!0;let ct=K[l];if(C&&((K.onPoint||K).getRadii(0,0,K),K.onPoint&&(K.radii=K.onPoint.radii)),u>0){let et=ct.length;for(;et--;)if(z(ct[et])&&this.dataMin<=ct[et]&&ct[et]<=this.max){let dt=K.radii&&K.radii[et]||0;v=Math.min((ct[et]-h)*S-dt,v),I=Math.max((ct[et]-h)*S+dt,I)}}}}),b&&u>0&&!this.logarithmic&&(I-=k,S*=(k+Math.max(0,v)-Math.min(I,k))/k,[["min","userMin",v],["max","userMax",I]].forEach(K=>{D(this.options[K[0]],this[K[1]])===void 0&&(this[K[0]]+=K[2]/S)})))}class W extends U{static compose(_,C,h){L.compose(C,h),it(Z,"Series.Bubble")&&T(_,"foundExtremes",Q)}animate(_){!_&&this.points.length{if(dt.bubblePadding&&dt.reserveSpace()){let pt=(dt.onPoint||dt).getZExtremes();pt&&(ct=Math.min(D(ct,pt.zMin),pt.zMin),et=Math.max(D(et,pt.zMax),pt.zMax),K=!0)}}),K?(I={zMin:ct,zMax:et},this.chart.bubbleZExtremes=I):I={zMin:0,zMax:0}}for(u=0,l=_.length;u0&&(ct=(u-_)/K)}return S&&ct>=0&&(ct=Math.sqrt(ct)),Math.ceil(h+ct*(l-h))/2}hasData(){return!!this.processedXData.length}markerAttribs(_,C){let h=super.markerAttribs(_,C),{height:l=0,width:u=0}=h;return this.chart.inverted?H(h,{x:(_.plotX||0)-u/2,y:(_.plotY||0)-l/2}):h}pointAttribs(_,C){let h=this.options.marker.fillOpacity,l=V.prototype.pointAttribs.call(this,_,C);return h!==1&&(l.fill=q(l.fill).setOpacity(h).get("rgba")),l}translate(){super.translate.call(this),this.getRadii(),this.translateBubble()}translateBubble(){let{data:_,options:C,radii:h}=this,{minPxSize:l}=this.getPxExtremes(),u=_.length;for(;u--;){let v=_[u],I=h?h[u]:0;this.zoneAxis==="z"&&(v.negative=(v.z||0)<(C.zThreshold||0)),z(I)&&I>=l/2?(v.marker=H(v.marker,{radius:I,width:2*I,height:2*I}),v.dlBox={x:v.plotX-I,y:v.plotY-I,width:2*I,height:2*I}):(v.shapeArgs=v.plotY=v.dlBox=void 0,v.isInside=!1)}}getPxExtremes(){let _=Math.min(this.chart.plotWidth,this.chart.plotHeight),C=u=>{let v;return typeof u=="string"&&(v=/%$/.test(u),u=parseInt(u,10)),v?_*u/100:u},h=C(D(this.options.minSize,8)),l=Math.max(C(D(this.options.maxSize,"20%")),h);return{minPxSize:h,maxPxSize:l}}getZExtremes(){let _=this.options,C=(this.zData||[]).filter(z);if(C.length){let h=D(_.zMin,O(M(C),_.displayNegative===!1?_.zThreshold||0:-Number.MAX_VALUE,Number.MAX_VALUE)),l=D(_.zMax,A(C));if(z(h)&&z(l))return{zMin:h,zMax:l}}}}return W.defaultOptions=c(U.defaultOptions,{dataLabels:{formatter:function(){let{numberFormatter:k}=this.series.chart,{z:_}=this.point;return z(_)?k(_,-1):""},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"}),H(W.prototype,{alignDataLabel:N.alignDataLabel,applyZones:Y,bubblePadding:!0,isBubble:!0,pointArrayMap:["y","z"],pointClass:R,parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",zoneAxis:"z"}),T(W,"updatedData",k=>{delete k.target.chart.bubbleZExtremes}),T(W,"remove",k=>{delete k.target.chart.bubbleZExtremes}),J.registerSeriesType("bubble",W),W}),g(d,"Series/MapBubble/MapBubblePoint.js",[d["Series/Bubble/BubblePoint.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st){let{seriesTypes:{map:{prototype:{pointClass:{prototype:$}}}}}=R,{extend:J}=st;class X extends L{isValid(){return typeof this.z=="number"}}return J(X.prototype,{applyOptions:$.applyOptions,getProjectedBounds:$.getProjectedBounds}),X}),g(d,"Series/MapBubble/MapBubbleSeries.js",[d["Series/Bubble/BubbleSeries.js"],d["Series/MapBubble/MapBubblePoint.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R,st,$){let{seriesTypes:{map:{prototype:J},mappoint:{prototype:X}}}=st,{extend:q,merge:Z}=$;class Y extends L{constructor(){super(...arguments),this.clearBounds=J.clearBounds}searchPoint(N,U){return this.searchKDTree({plotX:N.chartX-this.chart.plotLeft,plotY:N.chartY-this.chart.plotTop},U,N)}translate(){X.translate.call(this),this.getRadii(),this.translateBubble()}updateParallelArrays(N,U,T){super.updateParallelArrays.call(this,N,U,T);let A=this.processedXData,M=this.xData;A&&M&&(A.length=M.length)}}return Y.defaultOptions=Z(L.defaultOptions,{lineWidth:0,animationLimit:500,joinBy:"hc-key",tooltip:{pointFormat:"{point.name}: {point.z}"}}),q(Y.prototype,{type:"mapbubble",axisTypes:["colorAxis"],getProjectedBounds:J.getProjectedBounds,isCartesian:!1,pointArrayMap:["z"],pointClass:R,processData:J.processData,projectPoint:X.projectPoint,kdAxisArray:["plotX","plotY"],setData:J.setData,setOptions:J.setOptions,updateData:J.updateData,useMapGeometry:!0,xyFromShape:!0}),st.registerSeriesType("mapbubble",Y),Y}),g(d,"Series/Heatmap/HeatmapPoint.js",[d["Core/Series/SeriesRegistry.js"],d["Core/Utilities.js"]],function(L,R){let{scatter:{prototype:{pointClass:st}}}=L.seriesTypes,{clamp:$,defined:J,extend:X,pick:q}=R;class Z extends st{applyOptions(V,N){return(this.isNull||this.value===null)&&delete this.color,super.applyOptions(V,N),this.formatPrefix=this.isNull||this.value===null?"null":"point",this}getCellAttributes(){let V=this.series,N=V.options,U=(N.colsize||1)/2,T=(N.rowsize||1)/2,A=V.xAxis,M=V.yAxis,O=this.options.marker||V.options.marker,H=V.pointPlacementToXValue(),z=q(this.pointPadding,N.pointPadding,0),c={x1:$(Math.round(A.len-A.translate(this.x-U,!1,!0,!1,!0,-H)),-A.len,2*A.len),x2:$(Math.round(A.len-A.translate(this.x+U,!1,!0,!1,!0,-H)),-A.len,2*A.len),y1:$(Math.round(M.translate(this.y-T,!1,!0,!1,!0)),-M.len,2*M.len),y2:$(Math.round(M.translate(this.y+T,!1,!0,!1,!0)),-M.len,2*M.len)};for(let D of[["width","x"],["height","y"]]){let it=D[0],Q=D[1],W=Q+"1",k=Q+"2",_=Math.abs(c[W]-c[k]),C=O&&O.lineWidth||0,h=Math.abs(c[W]+c[k])/2,l=O&&O[it];if(J(l)&&l<_){let u=l/2+C/2;c[W]=h-u,c[k]=h+u}z&&((Q==="x"&&A.reversed||Q==="y"&&!M.reversed)&&(W=k,k=Q+"1"),c[W]+=z,c[k]-=z)}return c}haloPath(V){if(!V)return[];let{x:N=0,y:U=0,width:T=0,height:A=0}=this.shapeArgs||{};return[["M",N-V,U-V],["L",N-V,U+A+V],["L",N+T+V,U+A+V],["L",N+T+V,U-V],["Z"]]}isValid(){return this.value!==1/0&&this.value!==-1/0}}return X(Z.prototype,{dataLabelOnNull:!0,moveToTopOnHover:!0,ttBelow:!1}),Z}),g(d,"Series/Heatmap/HeatmapSeriesDefaults.js",[d["Core/Utilities.js"]],function(L){let{isNumber:R}=L;return{animation:!1,borderRadius:0,borderWidth:0,interpolation:!1,nullColor:"#f7f7f7",dataLabels:{formatter:function(){let{numberFormatter:st}=this.series.chart,{value:$}=this.point;return R($)?st($,-1):""},inside:!0,verticalAlign:"middle",crop:!1,overflow:"allow",padding:0},marker:{symbol:"rect",radius:0,lineColor:void 0,states:{hover:{lineWidthPlus:0},select:{}}},clip:!0,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}
    "},states:{hover:{halo:!1,brightness:.2}},legendSymbol:"rectangle"}}),g(d,"Series/InterpolationUtilities.js",[d["Core/Globals.js"],d["Core/Utilities.js"]],function(L,R){let{doc:st}=L,{defined:$,pick:J}=R;return{colorFromPoint:function(X,q){let Z=q.series.colorAxis;if(Z){let Y=Z.toColor(X||0,q).split(")")[0].split("(")[1].split(",").map(V=>J(parseFloat(V),parseInt(V,10)));return Y[3]=255*J(Y[3],1),$(X)&&q.visible||(Y[3]=0),Y}return[0,0,0,0]},getContext:function(X){let{canvas:q,context:Z}=X;return q&&Z?(Z.clearRect(0,0,q.width,q.height),Z):(X.canvas=st.createElement("canvas"),X.context=X.canvas.getContext("2d",{willReadFrequently:!0})||void 0,X.context)}}}),g(d,"Series/Heatmap/HeatmapSeries.js",[d["Core/Color/Color.js"],d["Series/ColorMapComposition.js"],d["Series/Heatmap/HeatmapPoint.js"],d["Series/Heatmap/HeatmapSeriesDefaults.js"],d["Core/Series/SeriesRegistry.js"],d["Core/Renderer/SVG/SVGRenderer.js"],d["Core/Utilities.js"],d["Series/InterpolationUtilities.js"]],function(L,R,st,$,J,X,q,Z){let{series:Y,seriesTypes:{column:V,scatter:N}}=J,{prototype:{symbols:U}}=X,{addEvent:T,extend:A,fireEvent:M,isNumber:O,merge:H,pick:z}=q,{colorFromPoint:c,getContext:D}=Z;class it extends N{constructor(){super(...arguments),this.valueMax=NaN,this.valueMin=NaN,this.isDirtyCanvas=!0}drawPoints(){let W=this,k=W.options,_=k.interpolation,C=k.marker||{};if(_){let{image:h,chart:l,xAxis:u,yAxis:v}=W,{reversed:I=!1,len:S}=u,{reversed:b=!1,len:K}=v,ct={width:S,height:K};if(!h||W.isDirtyData||W.isDirtyCanvas){let et=D(W),{canvas:dt,options:{colsize:pt=1,rowsize:bt=1},points:Mt,points:{length:w}}=W,B=l.colorAxis&&l.colorAxis[0];if(dt&&et&&B){let{min:tt,max:nt}=u.getExtremes(),{min:x,max:y}=v.getExtremes(),j=nt-tt,lt=y-x,rt=Math.round(j/pt/8*8),gt=Math.round(lt/bt/8*8),[vt,Ot]=[[rt,rt/j,I,"ceil"],[gt,gt/lt,!b,"floor"]].map(([Dt,jt,re,le])=>re?Gt=>Math[le](Dt-jt*Gt):Gt=>Math[le](jt*Gt)),At=dt.width=rt+1,$t=At*(dt.height=gt+1),Xt=(w-1)/$t,Ct=new Uint8ClampedArray(4*$t),wt=(Dt,jt)=>4*Math.ceil(At*Ot(jt-x)+vt(Dt-tt));W.buildKDTree();for(let Dt=0;Dt<$t;Dt++){let jt=Mt[Math.ceil(Xt*Dt)],{x:re,y:le}=jt;Ct.set(c(jt.value,jt),wt(re,le))}et.putImageData(new ImageData(Ct,At),0,0),h?h.attr(Mi(xr({},ct),{href:dt.toDataURL("image/png",1)})):(W.directTouch=!1,W.image=l.renderer.image(dt.toDataURL("image/png",1)).attr(ct).add(W.group))}W.isDirtyCanvas=!1}else(h.width!==S||h.height!==K)&&h.attr(ct)}else(C.enabled||W._hasPointMarkers)&&(Y.prototype.drawPoints.call(W),W.points.forEach(h=>{h.graphic&&(h.graphic[W.chart.styledMode?"css":"animate"](W.colorAttribs(h)),h.value===null&&h.graphic.addClass("highcharts-null-point"))}))}getExtremes(){let{dataMin:W,dataMax:k}=Y.prototype.getExtremes.call(this,this.valueData);return O(W)&&(this.valueMin=W),O(k)&&(this.valueMax=k),Y.prototype.getExtremes.call(this)}getValidPoints(W,k){return Y.prototype.getValidPoints.call(this,W,k,!0)}hasData(){return!!this.xData}init(){super.init.apply(this,arguments);let W=this.options;W.pointRange=z(W.pointRange,W.colsize||1),this.yAxis.axisPointRange=W.rowsize||1,U.ellipse=U.circle,W.marker&&O(W.borderRadius)&&(W.marker.r=W.borderRadius)}markerAttribs(W,k){let _=W.shapeArgs||{};if(W.hasImage)return{x:W.plotX,y:W.plotY};if(k&&k!=="normal"){let C=W.options.marker||{},h=this.options.marker||{},l=h.states&&h.states[k]||{},u=C.states&&C.states[k]||{},v=(u.width||l.width||_.width||0)+(u.widthPlus||l.widthPlus||0),I=(u.height||l.height||_.height||0)+(u.heightPlus||l.heightPlus||0);return{x:(_.x||0)+((_.width||0)-v)/2,y:(_.y||0)+((_.height||0)-I)/2,width:v,height:I}}return _}pointAttribs(W,k){let _=Y.prototype.pointAttribs.call(this,W,k),C=this.options||{},h=this.chart.options.plotOptions||{},l=h.series||{},u=h.heatmap||{},v=W&&W.options.borderColor||C.borderColor||u.borderColor||l.borderColor,I=W&&W.options.borderWidth||C.borderWidth||u.borderWidth||l.borderWidth||_["stroke-width"];if(_.stroke=W&&W.marker&&W.marker.lineColor||C.marker&&C.marker.lineColor||v||this.color,_["stroke-width"]=I,k&&k!=="normal"){let S=H(C.states&&C.states[k],C.marker&&C.marker.states&&C.marker.states[k],W&&W.options.states&&W.options.states[k]||{});_.fill=S.color||L.parse(_.fill).brighten(S.brightness||0).get(),_.stroke=S.lineColor||_.stroke}return _}translate(){let{borderRadius:W,marker:k}=this.options,_=k&&k.symbol||"rect",C=U[_]?_:"rect",h=["circle","square"].indexOf(C)!==-1;if(!this.processedXData){let{xData:l,yData:u}=this.getProcessedData();this.processedXData=l,this.processedYData=u}for(let l of(this.generatePoints(),this.points)){let u=l.getCellAttributes(),v=Math.min(u.x1,u.x2),I=Math.min(u.y1,u.y2),S=Math.max(Math.abs(u.x2-u.x1),0),b=Math.max(Math.abs(u.y2-u.y1),0);if(l.hasImage=(l.marker&&l.marker.symbol||_||"").indexOf("url")===0,h){let K=Math.abs(S-b);v=Math.min(u.x1,u.x2)+(S{var F,Pt;(function(d){yr.exports?(d.default=d,yr.exports=d):(F=[xt(6193)],Pt=function(g){return d(g),d.Highcharts=g,d}.apply(Oe,F),Pt!==void 0&&(yr.exports=Pt))})(function(d){"use strict";var g=d?d._modules:{};function L(R,st,$,J){R.hasOwnProperty(st)||(R[st]=J.apply(null,$),typeof CustomEvent=="function"&&d.win.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:st,module:R[st]}})))}L(g,"Accessibility/Utils/HTMLUtilities.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let{doc:$,win:J}=R,{css:X}=st,q=J.EventTarget&&new J.EventTarget||"none";function Z(V){if(typeof J.MouseEvent=="function")return new J.MouseEvent(V.type,V);if($.createEvent){let N=$.createEvent("MouseEvent");if(N.initMouseEvent)return N.initMouseEvent(V.type,V.bubbles,V.cancelable,V.view||J,V.detail,V.screenX,V.screenY,V.clientX,V.clientY,V.ctrlKey,V.altKey,V.shiftKey,V.metaKey,V.button,V.relatedTarget),N}return Y(V.type)}function Y(V,N,U){let T=N||{x:0,y:0};if(typeof J.MouseEvent=="function")return new J.MouseEvent(V,{bubbles:!0,cancelable:!0,composed:!0,button:0,buttons:1,relatedTarget:U||q,view:J,detail:V==="click"?1:0,screenX:T.x,screenY:T.y,clientX:T.x,clientY:T.y});if($.createEvent){let A=$.createEvent("MouseEvent");if(A.initMouseEvent)return A.initMouseEvent(V,!0,!0,J,V==="click"?1:0,T.x,T.y,T.x,T.y,!1,!1,!1,!1,0,null),A}return{type:V}}return{addClass:function(V,N){V.classList?V.classList.add(N):0>V.className.indexOf(N)&&(V.className+=" "+N)},cloneMouseEvent:Z,cloneTouchEvent:function(V){let N=T=>{let A=[];for(let M=0;M/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")},getElement:function(V){return $.getElementById(V)},getFakeMouseEvent:Y,getHeadingTagNameForElement:function(V){let N=M=>"h"+Math.min(6,parseInt(M.slice(1),10)+1),U=M=>/^H[1-6]$/i.test(M),T=M=>{let O=M;for(;O=O.previousSibling;){let H=O.tagName||"";if(U(H))return H}return""},A=M=>{let O=T(M);if(O)return N(O);let H=M.parentElement;if(!H)return"p";let z=H.tagName;return U(z)?N(z):A(H)};return A(V)},removeChildNodes:function(V){for(;V.lastChild;)V.removeChild(V.lastChild)},removeClass:function(V,N){V.classList?V.classList.remove(N):V.className=V.className.replace(RegExp(N,"g"),"")},removeElement:function(V){V&&V.parentNode&&V.parentNode.removeChild(V)},reverseChildNodes:function(V){let N=V.childNodes.length;for(;N--;)V.appendChild(V.childNodes[N])},simulatedEventTarget:q,stripHTMLTagsFromString:function(V,N=!1){return typeof V=="string"?N?V.replace(/<\/?[^>]+(>|$)/g,""):V.replace(/<\/?(?!\s)[^>]+(>|$)/g,""):V},visuallyHideElement:function(V){X(V,{position:"absolute",width:"1px",height:"1px",overflow:"hidden",whiteSpace:"nowrap",clip:"rect(1px, 1px, 1px, 1px)",marginTop:"-3px","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)",filter:"alpha(opacity=1)",opacity:.01})}}}),L(g,"Accessibility/A11yI18n.js",[g["Core/Templating.js"],g["Core/Utilities.js"]],function(R,st){var $;let{format:J}=R,{getNestedProperty:X,pick:q}=st;return function(Z){function Y(N,U,T){let A=(c,D)=>{let it=c.slice(D||0),Q=it.indexOf("{"),W=it.indexOf("}");if(Q>-1&&W>Q)return{statement:it.substring(Q+1,W),begin:D+Q+1,end:D+W}},M=[],O,H,z=0;do O=A(N,z),(H=N.substring(z,O&&O.begin-1)).length&&M.push({value:H,type:"constant"}),O&&M.push({value:O.statement,type:"statement"}),z=O?O.end+1:z+1;while(O);return M.forEach(c=>{c.type==="statement"&&(c.value=function(D,it){let Q,W,k=D.indexOf("#each("),_=D.indexOf("#plural("),C=D.indexOf("["),h=D.indexOf("]");if(k>-1){let u=D.slice(k).indexOf(")")+k,v=D.substring(0,k),I=D.substring(u+1),S=D.substring(k+6,u).split(","),b=Number(S[1]),K;if(W="",Q=X(S[0],it)){K=(b=isNaN(b)?Q.length:b)<0?Q.length+b:Math.min(b,Q.length);for(let ct=0;ct-1){var l;let u=D.slice(_).indexOf(")")+_,v=D.substring(_+8,u).split(",");switch(Number(X(v[0],it))){case 0:W=q(v[4],v[1]);break;case 1:W=q(v[2],v[1]);break;case 2:W=q(v[3],v[1]);break;default:W=v[1]}return W?(l=W).trim&&l.trim()||l.replace(/^\s+|\s+$/g,""):""}if(C>-1){let u,v=D.substring(0,C),I=Number(D.substring(C+1,h));return Q=X(v,it),!isNaN(I)&&Q&&(I<0?(u=Q[Q.length+I])===void 0&&(u=Q[0]):(u=Q[I])===void 0&&(u=Q[Q.length-1])),u!==void 0?u:""}return"{"+D+"}"}(c.value,U))}),J(M.reduce((c,D)=>c+D.value,""),U,T)}function V(N,U){let T=N.split("."),A=this.options.lang,M=0;for(;M!!A.graphic);return T&&T.graphic&&T.graphic.element}}function N(U){let T=V(U);return T&&T.parentNode||U.graph&&U.graph.element||U.group&&U.group.element}return{fireEventOnWrappedOrUnwrappedElement:function U(T,A){let M=A.type,O=T.hcEvents;J.createEvent&&(T.dispatchEvent||T.fireEvent)?T.dispatchEvent?T.dispatchEvent(A):T.fireEvent(M,A):O&&O[M]?Y(T,M,A):T.element&&U(T.element,A)},getChartTitle:function(U){return X(U.options.title.text||U.langFormat("accessibility.defaultChartTitle",{chart:U}),U.renderer.forExport)},getAxisDescription:function(U){var T,A;return U&&(((T=U.options.accessibility)==null?void 0:T.description)||((A=U.axisTitle)==null?void 0:A.textStr)||U.options.id||U.categories&&"categories"||U.dateTime&&"Time"||"values")},getAxisRangeDescription:function(U){let T=U.options||{};return T.accessibility&&T.accessibility.rangeDescription!==void 0?T.accessibility.rangeDescription:U.categories?function(A){let M=A.chart;return A.dataMax&&A.dataMin?M.langFormat("accessibility.axis.rangeCategories",{chart:M,axis:A,numCategories:A.dataMax-A.dataMin+1}):""}(U):U.dateTime&&(U.min===0||U.dataMin===0)?function(A){let M=A.chart,O={},H=A.dataMin||A.min||0,z=A.dataMax||A.max||0,c="Seconds";O.Seconds=(z-H)/1e3,O.Minutes=O.Seconds/60,O.Hours=O.Minutes/60,O.Days=O.Hours/24,["Minutes","Hours","Days"].forEach(function(it){O[it]>2&&(c=it)});let D=O[c].toFixed(c!=="Seconds"&&c!=="Minutes"?1:0);return M.langFormat("accessibility.axis.timeRange"+c,{chart:M,axis:A,range:D.replace(".0","")})}(U):function(A){let M=A.chart,O=M.options,H=O&&O.accessibility&&O.accessibility.screenReaderSection.axisRangeDateFormat||"",z={min:A.dataMin||A.min||0,max:A.dataMax||A.max||0},c=function(D){return A.dateTime?M.time.dateFormat(H,z[D]):z[D].toString()};return M.langFormat("accessibility.axis.rangeFromTo",{chart:M,axis:A,rangeFrom:c("min"),rangeTo:c("max")})}(U)},getPointFromXY:function(U,T,A){let M=U.length,O;for(;M--;)if(O=Z(U[M].points||[],function(H){return H.x===T&&H.y===A}))return O},getSeriesFirstPointElement:V,getSeriesFromName:function(U,T){return T?(U.series||[]).filter(function(A){return A.name===T}):U.series},getSeriesA11yElement:N,unhideChartElementFromAT:function U(T,A){A.setAttribute("aria-hidden",!1),A!==T.renderTo&&A.parentNode&&A.parentNode!==J.body&&(Array.prototype.forEach.call(A.parentNode.childNodes,function(M){M.hasAttribute("aria-hidden")||M.setAttribute("aria-hidden",!0)}),U(T,A.parentNode))},hideSeriesFromAT:function(U){let T=N(U);T&&T.setAttribute("aria-hidden",!0)},scrollAxisToPoint:function(U){let T=U.series.xAxis,A=U.series.yAxis,M=T&&T.scrollbar?T:A,O=M&&M.scrollbar;if(O&&q(O.to)&&q(O.from)){let H=O.to-O.from,z=function(c,D){if(!q(c.dataMin)||!q(c.dataMax))return 0;let it=c.toPixels(c.dataMin),Q=c.toPixels(c.dataMax),W=c.coll==="xAxis"?"x":"y";return(c.toPixels(D[W]||0)-it)/(Q-it)}(M,U);O.updatePosition(z-H/2,z+H/2),Y(O,"changed",{from:O.from,to:O.to,trigger:"scrollbar",DOMEvent:null})}}}}),L(g,"Accessibility/Utils/DOMElementProvider.js",[g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st){let{doc:$}=R,{removeElement:J}=st;return class{constructor(){this.elements=[]}createElement(){let X=$.createElement.apply($,arguments);return this.elements.push(X),X}removeElement(X){J(X),this.elements.splice(this.elements.indexOf(X),1)}destroyCreatedElements(){this.elements.forEach(function(X){J(X)}),this.elements=[]}}}),L(g,"Accessibility/Utils/EventProvider.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let{addEvent:$}=st;return class{constructor(){this.eventRemovers=[]}addEvent(){let J=$.apply(R,arguments);return this.eventRemovers.push({element:arguments[0],remover:J}),J}removeEvent(J){let X=this.eventRemovers.map(q=>q.remover).indexOf(J);this.eventRemovers[X].remover(),this.eventRemovers.splice(X,1)}removeAddedEvents(){this.eventRemovers.map(J=>J.remover).forEach(J=>J()),this.eventRemovers=[]}}}),L(g,"Accessibility/AccessibilityComponent.js",[g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/DOMElementProvider.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J){let{fireEventOnWrappedOrUnwrappedElement:X}=R,{getFakeMouseEvent:q}=J;return class{destroy(){}getKeyboardNavigation(){return[]}init(){}onChartRender(){}onChartUpdate(){}initBase(Z,Y){this.chart=Z,this.eventProvider=new $,this.domElementProvider=new st,this.proxyProvider=Y,this.keyCodes={left:37,right:39,up:38,down:40,enter:13,space:32,esc:27,tab:9,pageUp:33,pageDown:34,end:35,home:36}}addEvent(Z,Y,V,N){return this.eventProvider.addEvent(Z,Y,V,N)}createElement(Z,Y){return this.domElementProvider.createElement(Z,Y)}fakeClickEvent(Z){X(Z,q("click"))}destroyBase(){this.domElementProvider.destroyCreatedElements(),this.eventProvider.removeAddedEvents()}}}),L(g,"Accessibility/KeyboardNavigationHandler.js",[g["Core/Utilities.js"]],function(R){let{find:st}=R;return class{constructor($,J){this.chart=$,this.keyCodeMap=J.keyCodeMap||[],this.validate=J.validate,this.init=J.init,this.terminate=J.terminate,this.response={success:1,prev:2,next:3,noHandler:4,fail:5}}run($){let J=$.which||$.keyCode,X=this.response.noHandler,q=st(this.keyCodeMap,function(Z){return Z[0].indexOf(J)>-1});return q?X=q[1].call(this,J,$):J===9&&(X=this.response[$.shiftKey?"prev":"next"]),X}}}),L(g,"Accessibility/Components/ContainerComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{unhideChartElementFromAT:q,getChartTitle:Z}=$,{doc:Y}=J,{stripHTMLTagsFromString:V}=X;return class extends R{onChartUpdate(){this.handleSVGTitleElement(),this.setSVGContainerLabel(),this.setGraphicContainerAttrs(),this.setRenderToAttrs(),this.makeCreditsAccessible()}handleSVGTitleElement(){let N=this.chart,U="highcharts-title-"+N.index,T=V(N.langFormat("accessibility.svgContainerTitle",{chartTitle:Z(N)}));if(T.length){let A=this.svgTitleElement=this.svgTitleElement||Y.createElementNS("http://www.w3.org/2000/svg","title");A.textContent=T,A.id=U,N.renderTo.insertBefore(A,N.renderTo.firstChild)}}setSVGContainerLabel(){let N=this.chart,U=N.langFormat("accessibility.svgContainerLabel",{chartTitle:Z(N)});N.renderer.box&&U.length&&N.renderer.box.setAttribute("aria-label",U)}setGraphicContainerAttrs(){let N=this.chart,U=N.langFormat("accessibility.graphicContainerLabel",{chartTitle:Z(N)});U.length&&N.container.setAttribute("aria-label",U)}setRenderToAttrs(){let N=this.chart,U=N.options.accessibility.landmarkVerbosity!=="disabled",T=N.langFormat("accessibility.chartContainerLabel",{title:Z(N),chart:N});T&&(N.renderTo.setAttribute("role",U?"region":"group"),N.renderTo.setAttribute("aria-label",T))}makeCreditsAccessible(){let N=this.chart,U=N.credits;U&&(U.textStr&&U.element.setAttribute("aria-label",N.langFormat("accessibility.credits",{creditsStr:V(U.textStr,N.renderer.forExport)})),q(N,U.element))}getKeyboardNavigation(){let N=this.chart;return new st(N,{keyCodeMap:[],validate:function(){return!0},init:function(){let U=N.accessibility;U&&U.keyboardNavigation.tabindexContainer.focus()}})}destroy(){this.chart.renderTo.setAttribute("aria-hidden",!0)}}}),L(g,"Accessibility/FocusBorder.js",[g["Core/Utilities.js"]],function(R){var st;let{addEvent:$,pick:J}=R;return function(X){let q=["x","y","transform","width","height","r","d","stroke-width"];function Z(){let U=this.focusElement,T=this.options.accessibility.keyboardNavigation.focusBorder;U&&(U.removeFocusBorder(),T.enabled&&U.addFocusBorder(T.margin,{stroke:T.style.color,strokeWidth:T.style.lineWidth,r:T.style.borderRadius}))}function Y(U,T){let A=this.options.accessibility.keyboardNavigation.focusBorder,M=T||U.element;M&&M.focus&&(M.hcEvents&&M.hcEvents.focusin||$(M,"focusin",function(){}),M.focus(),A.hideBrowserFocusOutline&&(M.style.outline="none")),this.focusElement&&this.focusElement.removeFocusBorder(),this.focusElement=U,this.renderFocusBorder()}function V(U,T){this.focusBorder&&this.removeFocusBorder();let A=this.getBBox(),M=J(U,3),O=this.parentGroup,H=this.scaleX||O&&O.scaleX,z=this.scaleY||O&&O.scaleY,c=(H?!z:z)?Math.abs(H||z||1):(Math.abs(H||1)+Math.abs(z||1))/2;A.x+=this.translateX?this.translateX:0,A.y+=this.translateY?this.translateY:0;let D=A.x-M,it=A.y-M,Q=A.width+2*M,W=A.height+2*M,k=!!this.text;if(this.element.nodeName==="text"||k){let _,C,h=!!this.rotation,l=k?{x:h?1:0,y:0}:(_=0,C=0,this.attr("text-anchor")==="middle"?_=C=.5:this.rotation?_=.25:C=.75,{x:_,y:C}),u=+this.attr("x"),v=+this.attr("y");if(isNaN(u)||(D=u-A.width*l.x-M),isNaN(v)||(it=v-A.height*l.y-M),k&&h){let I=Q;Q=W,W=I,isNaN(u)||(D=u-A.height*l.x-M),isNaN(v)||(it=v-A.width*l.y-M)}}this.focusBorder=this.renderer.rect(D,it,Q,W,parseInt((T&&T.r||0).toString(),10)/c).addClass("highcharts-focus-border").attr({zIndex:99}).add(O),this.renderer.styledMode||this.focusBorder.attr({stroke:T&&T.stroke,"stroke-width":(T&&T.strokeWidth||0)/c}),function(_,...C){_.focusBorderUpdateHooks||(_.focusBorderUpdateHooks={},q.forEach(h=>{let l=h+"Setter",u=_[l]||_._defaultSetter;_.focusBorderUpdateHooks[l]=u,_[l]=function(){let v=u.apply(_,arguments);return _.addFocusBorder.apply(_,C),v}}))}(this,U,T),function(_){if(_.focusBorderDestroyHook)return;let C=_.destroy;_.destroy=function(){return _.focusBorder&&_.focusBorder.destroy&&_.focusBorder.destroy(),C.apply(_,arguments)},_.focusBorderDestroyHook=C}(this)}function N(){var U;U=this,U.focusBorderUpdateHooks&&(Object.keys(U.focusBorderUpdateHooks).forEach(T=>{let A=U.focusBorderUpdateHooks[T];A===U._defaultSetter?delete U[T]:U[T]=A}),delete U.focusBorderUpdateHooks),this.focusBorderDestroyHook&&(this.destroy=this.focusBorderDestroyHook,delete this.focusBorderDestroyHook),this.focusBorder&&(this.focusBorder.destroy(),delete this.focusBorder)}X.compose=function(U,T){let A=U.prototype,M=T.prototype;A.renderFocusBorder||(A.renderFocusBorder=Z,A.setFocusToElement=Y),M.addFocusBorder||(M.addFocusBorder=V,M.removeFocusBorder=N)}}(st||(st={})),st}),L(g,"Accessibility/Utils/Announcer.js",[g["Core/Renderer/HTML/AST.js"],g["Accessibility/Utils/DOMElementProvider.js"],g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{doc:q}=$,{addClass:Z,visuallyHideElement:Y}=J,{attr:V}=X;return class{constructor(N,U){this.chart=N,this.domElementProvider=new st,this.announceRegion=this.addAnnounceRegion(U)}destroy(){this.domElementProvider.destroyCreatedElements()}announce(N){R.setElementHTML(this.announceRegion,N),this.clearAnnouncementRegionTimer&&clearTimeout(this.clearAnnouncementRegionTimer),this.clearAnnouncementRegionTimer=setTimeout(()=>{this.announceRegion.innerHTML=R.emptyHTML,delete this.clearAnnouncementRegionTimer},3e3)}addAnnounceRegion(N){let U=this.chart.announcerContainer||this.createAnnouncerContainer(),T=this.domElementProvider.createElement("div");return V(T,{"aria-hidden":!1,"aria-live":N,"aria-atomic":!0}),this.chart.styledMode?Z(T,"highcharts-visually-hidden"):Y(T),U.appendChild(T),T}createAnnouncerContainer(){let N=this.chart,U=q.createElement("div");return V(U,{"aria-hidden":!1,class:"highcharts-announcer-container"}),U.style.position="relative",N.renderTo.insertBefore(U,N.renderTo.firstChild),N.announcerContainer=U,U}}}),L(g,"Accessibility/Components/AnnotationsA11y.js",[g["Accessibility/Utils/HTMLUtilities.js"]],function(R){let{escapeStringForHTML:st,stripHTMLTagsFromString:$}=R;function J(Y){return(Y.annotations||[]).reduce((V,N)=>(N.options&&N.options.visible!==!1&&(V=V.concat(N.labels)),V),[])}function X(Y){return Y.options&&Y.options.accessibility&&Y.options.accessibility.description||Y.graphic&&Y.graphic.text&&Y.graphic.text.textStr||""}function q(Y){let V=Y.options&&Y.options.accessibility&&Y.options.accessibility.description;if(V)return V;let N=Y.chart,U=X(Y),T=Y.points,A=c=>c.graphic&&c.graphic.element&&c.graphic.element.getAttribute("aria-label")||"",M=T.filter(c=>!!c.graphic).map(c=>{let D=c.accessibility&&c.accessibility.valueDescription||A(c),it=c&&c.series.name||"";return(it?it+", ":"")+"data point "+D}).filter(c=>!!c),O=M.length,H=O>1?"MultiplePoints":O?"SinglePoint":"NoPoints",z={annotationText:U,annotation:Y,numPoints:O,annotationPoint:M[0],additionalAnnotationPoints:M.slice(1)};return N.langFormat("accessibility.screenReaderSection.annotations.description"+H,z)}function Z(Y){return J(Y).map(V=>{let N=st($(q(V),Y.renderer.forExport));return N?`
  • ${N}
  • `:""})}return{getAnnotationsInfoHTML:function(Y){let V=Y.annotations;return V&&V.length?`
      ${Z(Y).join(" ")}
    `:""},getAnnotationLabelDescription:q,getAnnotationListItems:Z,getPointAnnotationTexts:function(Y){let V=J(Y.series.chart).filter(N=>N.points.indexOf(Y)>-1);return V.length?V.map(N=>`${X(N)}`):[]}}}),L(g,"Accessibility/Components/InfoRegionsComponent.js",[g["Accessibility/A11yI18n.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/Components/AnnotationsA11y.js"],g["Core/Renderer/HTML/AST.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Core/Templating.js"],g["Core/Globals.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X,q,Z,Y,V,N){let{getAnnotationsInfoHTML:U}=J,{getAxisDescription:T,getAxisRangeDescription:A,getChartTitle:M,unhideChartElementFromAT:O}=q,{format:H}=Z,{doc:z}=Y,{addClass:c,getElement:D,getHeadingTagNameForElement:it,stripHTMLTagsFromString:Q,visuallyHideElement:W}=V,{attr:k,pick:_,replaceNested:C}=N;function h(l){return C(l,[/<([\w\-.:!]+)\b[^<>]*>\s*<\/\1>/g,""])}return class extends st{constructor(){super(...arguments),this.screenReaderSections={}}init(){let l=this.chart,u=this;this.initRegionsDefinitions(),this.addEvent(l,"aftergetTableAST",function(v){u.onDataTableCreated(v)}),this.addEvent(l,"afterViewData",function(v){v.wasHidden&&(u.dataTableDiv=v.element,setTimeout(function(){u.focusDataTable()},300))}),this.addEvent(l,"afterHideData",function(){u.viewDataTableButton&&u.viewDataTableButton.setAttribute("aria-expanded","false")}),l.exporting&&this.addEvent(l,"afterPrint",function(){u.updateAllScreenReaderSections()}),this.announcer=new $(l,"assertive")}initRegionsDefinitions(){let l=this,u=this.chart.options.accessibility;this.screenReaderSections={before:{element:null,buildContent:function(v){let I=u.screenReaderSection.beforeChartFormatter;return I?I(v):l.defaultBeforeChartFormatter(v)},insertIntoDOM:function(v,I){I.renderTo.insertBefore(v,I.renderTo.firstChild)},afterInserted:function(){l.sonifyButtonId!==void 0&&l.initSonifyButton(l.sonifyButtonId),l.dataTableButtonId!==void 0&&l.initDataTableButton(l.dataTableButtonId)}},after:{element:null,buildContent:function(v){let I=u.screenReaderSection.afterChartFormatter;return I?I(v):l.defaultAfterChartFormatter()},insertIntoDOM:function(v,I){I.renderTo.insertBefore(v,I.container.nextSibling)},afterInserted:function(){l.chart.accessibility&&u.keyboardNavigation.enabled&&l.chart.accessibility.keyboardNavigation.updateExitAnchor()}}}}onChartRender(){this.linkedDescriptionElement=this.getLinkedDescriptionElement(),this.setLinkedDescriptionAttrs(),this.updateAllScreenReaderSections()}updateAllScreenReaderSections(){let l=this;Object.keys(this.screenReaderSections).forEach(function(u){l.updateScreenReaderSection(u)})}getLinkedDescriptionElement(){let l=this.chart.options.accessibility.linkedDescription;if(!l)return;if(typeof l!="string")return l;let u=H(l,this.chart),v=z.querySelectorAll(u);if(v.length===1)return v[0]}setLinkedDescriptionAttrs(){let l=this.linkedDescriptionElement;l&&(l.setAttribute("aria-hidden","true"),c(l,"highcharts-linked-description"))}updateScreenReaderSection(l){let u=this.chart,v=this.screenReaderSections[l],I=v.buildContent(u),S=v.element=v.element||this.createElement("div"),b=S.firstChild||this.createElement("div");I?(this.setScreenReaderSectionAttribs(S,l),X.setElementHTML(b,I),S.appendChild(b),v.insertIntoDOM(S,u),u.styledMode?c(b,"highcharts-visually-hidden"):W(b),O(u,b),v.afterInserted&&v.afterInserted()):(S.parentNode&&S.parentNode.removeChild(S),v.element=null)}setScreenReaderSectionAttribs(l,u){let v=this.chart,I=v.langFormat("accessibility.screenReaderSection."+u+"RegionLabel",{chart:v,chartTitle:M(v)});k(l,{id:`highcharts-screen-reader-region-${u}-${v.index}`,"aria-label":I||void 0}),l.style.position="relative",I&&l.setAttribute("role",v.options.accessibility.landmarkVerbosity==="all"?"region":"group")}defaultBeforeChartFormatter(){let l=this.chart,u=l.options.accessibility.screenReaderSection.beforeChartFormat;if(!u)return"";let v=this.getAxesDescription(),I=l.sonify&&l.options.sonification&&l.options.sonification.enabled,S="highcharts-a11y-sonify-data-btn-"+l.index,b="hc-linkto-highcharts-data-table-"+l.index,K=U(l),ct=l.langFormat("accessibility.screenReaderSection.annotations.heading",{chart:l}),et={headingTagName:it(l.renderTo),chartTitle:M(l),typeDescription:this.getTypeDescriptionText(),chartSubtitle:this.getSubtitleText(),chartLongdesc:this.getLongdescText(),xAxisDescription:v.xAxis,yAxisDescription:v.yAxis,playAsSoundButton:I?this.getSonifyButtonText(S):"",viewTableButton:l.getCSV?this.getDataTableButtonText(b):"",annotationsTitle:K?ct:"",annotationsList:K},dt=R.i18nFormat(u,et,l);return this.dataTableButtonId=b,this.sonifyButtonId=S,h(dt)}defaultAfterChartFormatter(){let l=this.chart,u=l.options.accessibility.screenReaderSection.afterChartFormat;if(!u)return"";let v={endOfChartMarker:this.getEndOfChartMarkerText()};return h(R.i18nFormat(u,v,l))}getLinkedDescription(){let l=this.linkedDescriptionElement;return Q(l&&l.innerHTML||"",this.chart.renderer.forExport)}getLongdescText(){let l=this.chart.options,u=l.caption,v=u&&u.text,I=this.getLinkedDescription();return l.accessibility.description||I||v||""}getTypeDescriptionText(){let l=this.chart;return l.types?l.options.accessibility.typeDescription||function(u,v){let I=v[0],S=u.series&&u.series[0]||{},b=u.mapView&&u.mapView.geoMap&&u.mapView.geoMap.title,K={numSeries:u.series.length,numPoints:S.points&&S.points.length,chart:u,mapTitle:b};return I?I==="map"||I==="tiledwebmap"?K.mapTitle?u.langFormat("accessibility.chartTypes.mapTypeDescription",K):u.langFormat("accessibility.chartTypes.unknownMap",K):u.types.length>1?u.langFormat("accessibility.chartTypes.combinationChart",K):function(ct,et,dt){let pt=et[0],bt=ct.langFormat("accessibility.seriesTypeDescriptions."+pt,dt),Mt=ct.series&&ct.series.length<2?"Single":"Multiple";return(ct.langFormat("accessibility.chartTypes."+pt+Mt,dt)||ct.langFormat("accessibility.chartTypes.default"+Mt,dt))+(bt?" "+bt:"")}(u,v,K):u.langFormat("accessibility.chartTypes.emptyChart",K)}(l,l.types):""}getDataTableButtonText(l){let u=this.chart;return'"}getSonifyButtonText(l){let u=this.chart;return u.options.sonification&&u.options.sonification.enabled===!1?"":'"}getSubtitleText(){let l=this.chart.options.subtitle;return Q(l&&l.text||"",this.chart.renderer.forExport)}getEndOfChartMarkerText(){let l=D(`highcharts-end-of-chart-marker-${this.chart.index}`);if(l)return l.outerHTML;let u=this.chart,v=u.langFormat("accessibility.screenReaderSection.endOfChartMarker",{chart:u});return'
    '+v+"
    "}onDataTableCreated(l){let u=this.chart;if(u.options.accessibility.enabled){this.viewDataTableButton&&this.viewDataTableButton.setAttribute("aria-expanded","true");let v=l.tree.attributes||{};v.tabindex=-1,v.summary=u.langFormat("accessibility.table.tableSummary",{chart:u}),l.tree.attributes=v}}focusDataTable(){let l=this.dataTableDiv,u=l&&l.getElementsByTagName("table")[0];u&&u.focus&&u.focus()}initSonifyButton(l){let u=this.sonifyButton=D(l),v=this.chart,I=S=>{u&&(u.setAttribute("aria-hidden","true"),u.setAttribute("aria-label","")),S.preventDefault(),S.stopPropagation();let b=v.langFormat("accessibility.sonification.playAsSoundClickAnnouncement",{chart:v});this.announcer.announce(b),setTimeout(()=>{u&&(u.removeAttribute("aria-hidden"),u.removeAttribute("aria-label")),v.sonify&&v.sonify()},1e3)};u&&v&&(u.setAttribute("tabindex",-1),u.onclick=function(S){(v.options.accessibility&&v.options.accessibility.screenReaderSection.onPlayAsSoundClick||I).call(this,S,v)})}initDataTableButton(l){let u=this.viewDataTableButton=D(l),v=this.chart,I=l.replace("hc-linkto-","");u&&(k(u,{tabindex:-1,"aria-expanded":!!D(I)}),u.onclick=v.options.accessibility.screenReaderSection.onViewDataTableClick||function(){v.viewData()})}getAxesDescription(){let l=this.chart,u=function(ct,et){let dt=l[ct];return dt.length>1||dt[0]&&_(dt[0].options.accessibility&&dt[0].options.accessibility.enabled,et)},v=!!l.types&&0>l.types.indexOf("map")&&0>l.types.indexOf("treemap")&&0>l.types.indexOf("tilemap"),I=!!l.hasCartesianSeries,S=u("xAxis",!l.angular&&I&&v),b=u("yAxis",I&&v),K={};return S&&(K.xAxis=this.getAxisDescriptionText("xAxis")),b&&(K.yAxis=this.getAxisDescriptionText("yAxis")),K}getAxisDescriptionText(l){let u=this.chart,v=u[l];return u.langFormat("accessibility.axis."+l+"Description"+(v.length>1?"Plural":"Singular"),{chart:u,names:v.map(function(I){return T(I)}),ranges:v.map(function(I){return A(I)}),numAxes:v.length})}destroy(){this.announcer&&this.announcer.destroy()}}}),L(g,"Accessibility/Components/MenuComponent.js",[g["Core/Utilities.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{attr:q}=R,{getChartTitle:Z,unhideChartElementFromAT:Y}=J,{getFakeMouseEvent:V}=X;function N(T){return T.exportSVGElements&&T.exportSVGElements[0]}class U extends st{init(){let A=this.chart,M=this;this.addEvent(A,"exportMenuShown",function(){M.onMenuShown()}),this.addEvent(A,"exportMenuHidden",function(){M.onMenuHidden()}),this.createProxyGroup()}onMenuHidden(){let A=this.chart.exportContextMenu;A&&A.setAttribute("aria-hidden","true"),this.setExportButtonExpandedState("false")}onMenuShown(){let A=this.chart,M=A.exportContextMenu;M&&(this.addAccessibleContextMenuAttribs(),Y(A,M)),this.setExportButtonExpandedState("true")}setExportButtonExpandedState(A){this.exportButtonProxy&&this.exportButtonProxy.innerElement.setAttribute("aria-expanded",A)}onChartRender(){let A=this.chart,M=A.focusElement,O=A.accessibility;this.proxyProvider.clearGroup("chartMenu"),this.proxyMenuButton(),this.exportButtonProxy&&M&&M===A.exportingGroup&&(M.focusBorder?A.setFocusToElement(M,this.exportButtonProxy.innerElement):O&&O.keyboardNavigation.tabindexContainer.focus())}proxyMenuButton(){let A=this.chart,M=this.proxyProvider,O=N(A);(function(H){let z=H.options.exporting,c=N(H);return!!(z&&z.enabled!==!1&&z.accessibility&&z.accessibility.enabled&&c&&c.element)})(A)&&O&&(this.exportButtonProxy=M.addProxyElement("chartMenu",{click:O},"button",{"aria-label":A.langFormat("accessibility.exporting.menuButtonLabel",{chart:A,chartTitle:Z(A)}),"aria-expanded":!1,title:A.options.lang.contextButtonTitle||null}))}createProxyGroup(){this.chart&&this.proxyProvider&&this.proxyProvider.addGroup("chartMenu")}addAccessibleContextMenuAttribs(){let A=this.chart,M=A.exportDivElements;if(M&&M.length){M.forEach(H=>{H&&(H.tagName!=="LI"||H.children&&H.children.length?H.setAttribute("aria-hidden","true"):H.setAttribute("tabindex",-1))});let O=M[0]&&M[0].parentNode;O&&q(O,{"aria-hidden":void 0,"aria-label":A.langFormat("accessibility.exporting.chartMenuLabel",{chart:A}),role:"list"})}}getKeyboardNavigation(){let A=this.keyCodes,M=this.chart,O=this;return new $(M,{keyCodeMap:[[[A.left,A.up],function(){return O.onKbdPrevious(this)}],[[A.right,A.down],function(){return O.onKbdNext(this)}],[[A.enter,A.space],function(){return O.onKbdClick(this)}]],validate:function(){return!!M.exporting&&M.options.exporting.enabled!==!1&&M.options.exporting.accessibility.enabled!==!1},init:function(){let H=O.exportButtonProxy,z=O.chart.exportingGroup;H&&z&&M.setFocusToElement(z,H.innerElement)},terminate:function(){M.hideExportMenu()}})}onKbdPrevious(A){let M=this.chart,O=M.options.accessibility,H=A.response,z=M.highlightedExportItemIx||0;for(;z--;)if(M.highlightExportItem(z))return H.success;return O.keyboardNavigation.wrapAround?(M.highlightLastExportItem(),H.success):H.prev}onKbdNext(A){let M=this.chart,O=M.options.accessibility,H=A.response;for(let z=(M.highlightedExportItemIx||0)+1;z{c&&c.className==="highcharts-menu-item"&&c.onmouseout&&c.onmouseout(V("mouseout"))}),this.highlightedExportItemIx=0,this.exportContextMenu.hideMenu(),this.container.focus())}function O(z){let c=this.exportDivElements&&this.exportDivElements[z],D=this.exportDivElements&&this.exportDivElements[this.highlightedExportItemIx];if(c&&c.tagName==="LI"&&!(c.children&&c.children.length)){let it=!!(this.renderTo.getElementsByTagName("g")[0]||{}).focus;return c.focus&&it&&c.focus(),D&&D.onmouseout&&D.onmouseout(V("mouseout")),c.onmouseover&&c.onmouseover(V("mouseover")),this.highlightedExportItemIx=z,!0}return!1}function H(){if(this.exportDivElements){let z=this.exportDivElements.length;for(;z--;)if(this.highlightExportItem(z))return!0}return!1}T.compose=function(z){let c=z.prototype;c.hideExportMenu||(c.hideExportMenu=M,c.highlightExportItem=O,c.highlightLastExportItem=H,c.showExportMenu=A)}}(U||(U={})),U}),L(g,"Accessibility/KeyboardNavigation.js",[g["Core/Globals.js"],g["Accessibility/Components/MenuComponent.js"],g["Core/Utilities.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{doc:q,win:Z}=R,{addEvent:Y,defined:V,fireEvent:N}=$,{getElement:U,simulatedEventTarget:T}=X;class A{constructor(O,H){this.currentModuleIx=NaN,this.modules=[],this.init(O,H)}init(O,H){let z=this.eventProvider=new J;this.chart=O,this.components=H,this.modules=[],this.currentModuleIx=0,this.update(),z.addEvent(this.tabindexContainer,"keydown",c=>this.onKeydown(c)),z.addEvent(this.tabindexContainer,"focus",c=>this.onFocus(c)),["mouseup","touchend"].forEach(c=>z.addEvent(q,c,D=>this.onMouseUp(D))),["mousedown","touchstart"].forEach(c=>z.addEvent(O.renderTo,c,()=>{this.isClickingChart=!0}))}update(O){let H=this.chart.options.accessibility,z=H&&H.keyboardNavigation,c=this.components;this.updateContainerTabindex(),z&&z.enabled&&O&&O.length?(this.modules=O.reduce(function(D,it){let Q=c[it].getKeyboardNavigation();return D.concat(Q)},[]),this.updateExitAnchor()):(this.modules=[],this.currentModuleIx=0,this.removeExitAnchor())}updateExitAnchor(){let O=U(`highcharts-end-of-chart-marker-${this.chart.index}`);this.removeExitAnchor(),O?(this.makeElementAnExitAnchor(O),this.exitAnchor=O):this.createExitAnchor()}move(O){let H=this.modules&&this.modules[this.currentModuleIx];H&&H.terminate&&H.terminate(O),this.chart.focusElement&&this.chart.focusElement.removeFocusBorder(),this.currentModuleIx+=O;let z=this.modules&&this.modules[this.currentModuleIx];if(z){if(z.validate&&!z.validate())return this.move(O);if(z.init)return z.init(O),!0}return this.currentModuleIx=0,this.exiting=!0,O>0?this.exitAnchor&&this.exitAnchor.focus():this.tabindexContainer.focus(),!1}onFocus(O){let H=this.chart,z=O.relatedTarget&&H.container.contains(O.relatedTarget),c=H.options.accessibility,D=c&&c.keyboardNavigation;if(D&&D.enabled&&!this.exiting&&!this.tabbingInBackwards&&!this.isClickingChart&&!z){let it=this.getFirstValidModuleIx();it!==null&&(this.currentModuleIx=it,this.modules[it].init(1))}this.keyboardReset=!1,this.exiting=!1}onMouseUp(O){if(delete this.isClickingChart,!this.keyboardReset&&O.relatedTarget!==T){let H=this.chart;if(!O.target||!H.container.contains(O.target)){let z=this.modules&&this.modules[this.currentModuleIx||0];z&&z.terminate&&z.terminate(),this.currentModuleIx=0}H.focusElement&&(H.focusElement.removeFocusBorder(),delete H.focusElement),this.keyboardReset=!0}}onKeydown(O){let H,z=O||Z.event,c=this.modules&&this.modules.length&&this.modules[this.currentModuleIx],D=z.target;if((!D||D.nodeName!=="INPUT"||D.classList.contains("highcharts-a11y-proxy-element"))&&(this.keyboardReset=!1,this.exiting=!1,c)){let it=c.run(z);it===c.response.success?H=!0:it===c.response.prev?H=this.move(-1):it===c.response.next&&(H=this.move(1)),H&&(z.preventDefault(),z.stopPropagation())}}updateContainerTabindex(){let O,H=this.chart.options.accessibility,z=H&&H.keyboardNavigation,c=!(z&&z.enabled===!1),D=this.chart,it=D.container;D.renderTo.hasAttribute("tabindex")?(it.removeAttribute("tabindex"),O=D.renderTo):O=it,this.tabindexContainer=O;let Q=O.getAttribute("tabindex");c&&!Q?O.setAttribute("tabindex","0"):c||D.container.removeAttribute("tabindex")}createExitAnchor(){let O=this.chart,H=this.exitAnchor=q.createElement("div");O.renderTo.appendChild(H),this.makeElementAnExitAnchor(H)}makeElementAnExitAnchor(O){let H=this.tabindexContainer.getAttribute("tabindex")||0;O.setAttribute("class","highcharts-exit-anchor"),O.setAttribute("tabindex",H),O.setAttribute("aria-hidden",!1),this.addExitAnchorEventsToEl(O)}removeExitAnchor(){if(this.exitAnchor){let O=this.eventProvider.eventRemovers.find(H=>H.element===this.exitAnchor);O&&V(O.remover)&&this.eventProvider.removeEvent(O.remover),this.exitAnchor.parentNode&&this.exitAnchor.parentNode.removeChild(this.exitAnchor),delete this.exitAnchor}}addExitAnchorEventsToEl(O){let H=this.chart,z=this;this.eventProvider.addEvent(O,"focus",function(c){let D=c||Z.event,it=!(D.relatedTarget&&H.container.contains(D.relatedTarget)||z.exiting);if(H.focusElement&&delete H.focusElement,it){if(z.tabbingInBackwards=!0,z.tabindexContainer.focus(),delete z.tabbingInBackwards,D.preventDefault(),z.modules&&z.modules.length){z.currentModuleIx=z.modules.length-1;let Q=z.modules[z.currentModuleIx];Q&&Q.validate&&!Q.validate()?z.move(-1):Q&&Q.init(-1)}}else z.exiting=!1})}getFirstValidModuleIx(){let O=this.modules.length;for(let H=0;H{c&&c.dismissPopupContent&&c.dismissPopupContent()})}M.compose=function(z){st.compose(z);let c=z.prototype;return c.dismissPopupContent||(c.dismissPopupContent=O,Y(q,"keydown",H)),z}}(A||(A={})),A}),L(g,"Accessibility/Components/LegendComponent.js",[g["Core/Animation/AnimationUtilities.js"],g["Core/Globals.js"],g["Core/Legend/Legend.js"],g["Core/Utilities.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X,q,Z,Y){let{animObject:V}=R,{doc:N}=st,{addEvent:U,fireEvent:T,isNumber:A,pick:M,syncTimeout:O}=J,{getChartTitle:H}=Z,{stripHTMLTagsFromString:z,addClass:c,removeClass:D}=Y;function it(k){let _=k.legend&&k.legend.allItems,C=k.options.legend.accessibility||{},h=k.colorAxis&&k.colorAxis.some(l=>!l.dataClasses||!l.dataClasses.length);return!!(_&&_.length&&!h&&C.enabled!==!1)}function Q(k,_){let C=_.legendItem||{};for(let h of(_.setState(k?"hover":"",!0),["group","label","symbol"])){let l=C[h],u=l&&l.element||l;u&&T(u,k?"mouseover":"mouseout")}}class W extends X{constructor(){super(...arguments),this.highlightedLegendItemIx=NaN,this.proxyGroup=null}init(){let _=this;this.recreateProxies(),this.addEvent($,"afterScroll",function(){this.chart===_.chart&&(_.proxyProvider.updateGroupProxyElementPositions("legend"),_.updateLegendItemProxyVisibility(),_.highlightedLegendItemIx>-1&&this.chart.highlightLegendItem(_.highlightedLegendItemIx))}),this.addEvent($,"afterPositionItem",function(C){this.chart===_.chart&&this.chart.renderer&&_.updateProxyPositionForItem(C.item)}),this.addEvent($,"afterRender",function(){this.chart===_.chart&&this.chart.renderer&&_.recreateProxies()&&O(()=>_.proxyProvider.updateGroupProxyElementPositions("legend"),V(M(this.chart.renderer.globalAnimation,!0)).duration)})}updateLegendItemProxyVisibility(){let _,C=this.chart,h=C.legend,l=h.allItems||[],u=h.currentPage||1,v=h.clipHeight||0;l.forEach(I=>{if(I.a11yProxyElement){let S=h.pages&&h.pages.length,b=I.a11yProxyElement.element,K=!1;if(_=I.legendItem||{},S){let ct=_.pageIx||0;K=(_.y||0)+(_.label?Math.round(_.label.getBBox().height):0)-h.pages[ct]>v||ct!==u-1}K?C.styledMode?c(b,"highcharts-a11y-invisible"):b.style.visibility="hidden":(D(b,"highcharts-a11y-invisible"),b.style.visibility="")}})}onChartRender(){it(this.chart)||this.removeProxies()}highlightAdjacentLegendPage(_){let C=this.chart,h=C.legend,l=(h.currentPage||1)+_,u=h.pages||[];if(l>0&&l<=u.length){let v=0;for(let I of h.allItems)((I.legendItem||{}).pageIx||0)+1===l&&C.highlightLegendItem(v)&&(this.highlightedLegendItemIx=v),++v}}updateProxyPositionForItem(_){_.a11yProxyElement&&_.a11yProxyElement.refreshPosition()}recreateProxies(){let _=N.activeElement,C=this.proxyGroup,h=_&&C&&C.contains(_);return this.removeProxies(),!!it(this.chart)&&(this.addLegendProxyGroup(),this.proxyLegendItems(),this.updateLegendItemProxyVisibility(),this.updateLegendTitle(),h&&this.chart.highlightLegendItem(this.highlightedLegendItemIx),!0)}removeProxies(){this.proxyProvider.removeGroup("legend")}updateLegendTitle(){let _=this.chart,C=z((_.legend&&_.legend.options.title&&_.legend.options.title.text||"").replace(/
    /g," "),_.renderer.forExport),h=_.langFormat("accessibility.legend.legendLabel"+(C?"":"NoTitle"),{chart:_,legendTitle:C,chartTitle:H(_)});this.proxyProvider.updateGroupAttrs("legend",{"aria-label":h})}addLegendProxyGroup(){let _=this.chart.options.accessibility.landmarkVerbosity==="all"?"region":null;this.proxyGroup=this.proxyProvider.addGroup("legend","ul",{"aria-label":"_placeholder_",role:_})}proxyLegendItems(){let _,C=this;((this.chart.legend||{}).allItems||[]).forEach(h=>{(_=h.legendItem||{}).label&&_.label.element&&C.proxyLegendItem(h)})}proxyLegendItem(_){let C=_.legendItem||{};if(!C.label||!C.group)return;let h=this.chart.langFormat("accessibility.legend.legendItem",{chart:this.chart,itemName:z(_.name,this.chart.renderer.forExport),item:_}),l={tabindex:-1,"aria-pressed":_.visible,"aria-label":h},u=C.group.div?C.label:C.group;_.a11yProxyElement=this.proxyProvider.addProxyElement("legend",{click:C.label,visual:u.element},"button",l)}getKeyboardNavigation(){let _=this.keyCodes,C=this,h=this.chart;return new q(h,{keyCodeMap:[[[_.left,_.right,_.up,_.down],function(l){return C.onKbdArrowKey(this,l)}],[[_.enter,_.space],function(){return C.onKbdClick(this)}],[[_.pageDown,_.pageUp],function(l){let u=l===_.pageDown?1:-1;return C.highlightAdjacentLegendPage(u),this.response.success}]],validate:function(){return C.shouldHaveLegendNavigation()},init:function(){h.highlightLegendItem(0),C.highlightedLegendItemIx=0},terminate:function(){C.highlightedLegendItemIx=-1,h.legend.allItems.forEach(l=>Q(!1,l))}})}onKbdArrowKey(_,C){let{keyCodes:{left:h,up:l},highlightedLegendItemIx:u,chart:v}=this,I=v.legend.allItems.length,S=v.options.accessibility.keyboardNavigation.wrapAround,b=C===h||C===l?-1:1;return v.highlightLegendItem(u+b)?this.highlightedLegendItemIx+=b:S&&I>1&&(this.highlightedLegendItemIx=b>0?0:I-1,v.highlightLegendItem(this.highlightedLegendItemIx)),_.response.success}onKbdClick(_){let C=this.chart.legend.allItems[this.highlightedLegendItemIx];return C&&C.a11yProxyElement&&C.a11yProxyElement.click(),_.response.success}shouldHaveLegendNavigation(){if(!it(this.chart))return!1;let _=this.chart,C=(_.options.legend||{}).accessibility||{};return!!(_.legend.display&&C.keyboardNavigation&&C.keyboardNavigation.enabled)}destroy(){this.removeProxies()}}return function(k){function _(h){let l=this.legend.allItems,u=this.accessibility&&this.accessibility.components.legend.highlightedLegendItemIx,v=l[h],I=(v==null?void 0:v.legendItem)||{};if(v){A(u)&&l[u]&&Q(!1,l[u]),function(K,ct){let et=(K.allItems[ct].legendItem||{}).pageIx,dt=K.currentPage;et!==void 0&&et+1!==dt&&K.scroll(1+et-dt)}(this.legend,h);let S=I.label,b=v.a11yProxyElement&&v.a11yProxyElement.innerElement;return S&&S.element&&b&&this.setFocusToElement(S,b),Q(!0,v),!0}return!1}function C(h){let l=this.chart.options.accessibility,u=h.item;l.enabled&&u&&u.a11yProxyElement&&u.a11yProxyElement.innerElement.setAttribute("aria-pressed",h.visible?"true":"false")}k.compose=function(h,l){let u=h.prototype;u.highlightLegendItem||(u.highlightLegendItem=_,U(l,"afterColorizeItem",C))}}(W||(W={})),W}),L(g,"Stock/Navigator/ChartNavigatorComposition.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let $,{isTouchDevice:J}=R,{addEvent:X,merge:q,pick:Z}=st,Y=[];function V(){this.navigator&&this.navigator.setBaseSeries(null,!1)}function N(){var Q;let H,z,c,D=this.legend,it=this.navigator;if(it){H=D&&D.options,z=it.xAxis,c=it.yAxis;let{scrollbarHeight:W,scrollButtonSize:k}=it;this.inverted?(it.left=it.opposite?this.chartWidth-W-it.height:this.spacing[3]+W,it.top=this.plotTop+k):(it.left=Z(z.left,this.plotLeft+k),it.top=it.navigatorOptions.top||this.chartHeight-it.height-W-(((Q=this.scrollbar)==null?void 0:Q.options.margin)||0)-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(H&&H.verticalAlign==="bottom"&&H.layout!=="proximate"&&H.enabled&&!H.floating?D.legendHeight+Z(H.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0)),z&&c&&(this.inverted?z.options.left=c.options.left=it.left:z.options.top=c.options.top=it.top,z.setAxisSize(),c.setAxisSize())}}function U(H){!this.navigator&&!this.scroller&&(this.options.navigator.enabled||this.options.scrollbar.enabled)&&(this.scroller=this.navigator=new $(this),Z(H.redraw,!0)&&this.redraw(H.animation))}function T(){let H=this.options;(H.navigator.enabled||H.scrollbar.enabled)&&(this.scroller=this.navigator=new $(this))}function A(){let H=this.options,z=H.navigator,c=H.rangeSelector;if((z&&z.enabled||c&&c.enabled)&&(!J&&this.zooming.type==="x"||J&&this.zooming.pinchType==="x"))return!1}function M(H){let z=H.navigator;if(z&&H.xAxis[0]){let c=H.xAxis[0].getExtremes();z.render(c.min,c.max)}}function O(H){let z=H.options.navigator||{},c=H.options.scrollbar||{};!this.navigator&&!this.scroller&&(z.enabled||c.enabled)&&(q(!0,this.options.navigator,z),q(!0,this.options.scrollbar,c),delete H.options.navigator,delete H.options.scrollbar)}return{compose:function(H,z){if(st.pushUnique(Y,H)){let c=H.prototype;$=z,c.callbacks.push(M),X(H,"afterAddSeries",V),X(H,"afterSetChartSize",N),X(H,"afterUpdate",U),X(H,"beforeRender",T),X(H,"beforeShowResetZoom",A),X(H,"update",O)}}}}),L(g,"Core/Axis/NavigatorAxisComposition.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){let{isTouchDevice:$}=R,{addEvent:J,correctFloat:X,defined:q,isNumber:Z,pick:Y}=st;function V(){this.navigatorAxis||(this.navigatorAxis=new U(this))}function N(T){let A,M=this.chart,O=M.options,H=O.navigator,z=this.navigatorAxis,c=M.zooming.pinchType,D=O.rangeSelector,it=M.zooming.type;if(this.isXAxis&&(H!=null&&H.enabled||D!=null&&D.enabled)){if(it==="y"&&T.trigger==="zoom")A=!1;else if((T.trigger==="zoom"&&it==="xy"||$&&c==="xy")&&this.options.range){let Q=z.previousZoom;q(T.min)?z.previousZoom=[this.min,this.max]:Q&&(T.min=Q[0],T.max=Q[1],z.previousZoom=void 0)}}A!==void 0&&T.preventDefault()}class U{static compose(A){A.keepProps.includes("navigatorAxis")||(A.keepProps.push("navigatorAxis"),J(A,"init",V),J(A,"setExtremes",N))}constructor(A){this.axis=A}destroy(){this.axis=void 0}toFixedRange(A,M,O,H){let z=this.axis,c=(z.pointRange||0)/2,D=Y(O,z.translate(A,!0,!z.horiz)),it=Y(H,z.translate(M,!0,!z.horiz));return q(O)||(D=X(D+c)),q(H)||(it=X(it-c)),Z(D)&&Z(it)||(D=it=void 0),{min:D,max:it}}}return U}),L(g,"Stock/Navigator/NavigatorDefaults.js",[g["Core/Color/Color.js"],g["Core/Series/SeriesRegistry.js"]],function(R,st){let{parse:$}=R,{seriesTypes:J}=st;return{height:40,margin:25,maskInside:!0,handles:{width:7,borderRadius:0,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:"#f2f2f2",borderColor:"#999999"},maskFill:$("#667aff").setOpacity(.3).get(),outlineColor:"#999999",outlineWidth:1,series:{type:J.areaspline===void 0?"line":"areaspline",fillOpacity:.05,lineWidth:1,compare:null,sonification:{enabled:!1},dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"#e6e6e6",id:"navigator-x-axis",gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:"#000000",fontSize:"0.7em",opacity:.6,textOutline:"2px contrast"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,id:"navigator-y-axis",maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}}),L(g,"Stock/Navigator/NavigatorSymbols.js",[g["Core/Renderer/SVG/Symbols.js"],g["Core/Utilities.js"]],function(R,st){let{relativeLength:$}=st;return{"navigator-handle":function(J,X,q,Z,Y={}){let V=Y.width?Y.width/2:q,N=$(Y.borderRadius||0,Math.min(2*V,Z));return[["M",-1.5,(Z=Y.height||Z)/2-3.5],["L",-1.5,Z/2+4.5],["M",.5,Z/2-3.5],["L",.5,Z/2+4.5],...R.rect(-V-1,.5,2*V+1,Z,{r:N})]}}}),L(g,"Stock/Utilities/StockUtilities.js",[g["Core/Utilities.js"]],function(R){let{defined:st}=R;return{setFixedRange:function($){let J=this.xAxis[0];st(J.dataMax)&&st(J.dataMin)&&$?this.fixedRange=Math.min($,J.dataMax-J.dataMin):this.fixedRange=$}}}),L(g,"Stock/Navigator/NavigatorComposition.js",[g["Core/Defaults.js"],g["Core/Globals.js"],g["Core/Axis/NavigatorAxisComposition.js"],g["Stock/Navigator/NavigatorDefaults.js"],g["Stock/Navigator/NavigatorSymbols.js"],g["Core/Renderer/RendererRegistry.js"],g["Stock/Utilities/StockUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X,q,Z,Y){let{setOptions:V}=R,{composed:N}=st,{getRendererType:U}=q,{setFixedRange:T}=Z,{addEvent:A,extend:M,pushUnique:O}=Y;function H(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}return{compose:function(z,c,D){$.compose(c),O(N,"Navigator")&&(z.prototype.setFixedRange=T,M(U().prototype.symbols,X),A(D,"afterUpdate",H),V({navigator:J}))}}}),L(g,"Core/Axis/ScrollbarAxis.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){var $;let{composed:J}=R,{addEvent:X,defined:q,pick:Z,pushUnique:Y}=st;return function(V){let N;function U(O){let H=Z(O.options&&O.options.min,O.min),z=Z(O.options&&O.options.max,O.max);return{axisMin:H,axisMax:z,scrollMin:q(O.dataMin)?Math.min(H,O.min,O.dataMin,Z(O.threshold,1/0)):H,scrollMax:q(O.dataMax)?Math.max(z,O.max,O.dataMax,Z(O.threshold,-1/0)):z}}function T(){let O=this.scrollbar,H=O&&!O.options.opposite,z=this.horiz?2:H?3:1;O&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[z]+=O.size+(O.options.margin||0))}function A(){let O=this;O.options&&O.options.scrollbar&&O.options.scrollbar.enabled&&(O.options.scrollbar.vertical=!O.horiz,O.options.startOnTick=O.options.endOnTick=!1,O.scrollbar=new N(O.chart.renderer,O.options.scrollbar,O.chart),X(O.scrollbar,"changed",function(H){let z,c,{axisMin:D,axisMax:it,scrollMin:Q,scrollMax:W}=U(O),k=W-Q;if(q(D)&&q(it))if(O.horiz&&!O.reversed||!O.horiz&&O.reversed?(z=Q+k*this.to,c=Q+k*this.from):(z=Q+k*(1-this.from),c=Q+k*(1-this.to)),this.shouldUpdateExtremes(H.DOMType)){let _=H.DOMType!=="mousemove"&&H.DOMType!=="touchmove"&&void 0;O.setExtremes(c,z,!0,_,H)}else this.setRange(this.from,this.to)}))}function M(){let O,H,z,{scrollMin:c,scrollMax:D}=U(this),it=this.scrollbar,Q=this.axisTitleMargin+(this.titleOffset||0),W=this.chart.scrollbarsOffsets,k=this.options.margin||0;if(it&&W){if(this.horiz)this.opposite||(W[1]+=Q),it.position(this.left,this.top+this.height+2+W[1]-(this.opposite?k:0),this.width,this.height),this.opposite||(W[1]+=k),O=1;else{let _;this.opposite&&(W[0]+=Q),_=it.options.opposite?this.left+this.width+2+W[0]-(this.opposite?0:k):this.opposite?0:k,it.position(_,this.top,this.width,this.height),this.opposite&&(W[0]+=k),O=0}if(W[O]+=it.size+(it.options.margin||0),isNaN(c)||isNaN(D)||!q(this.min)||!q(this.max)||this.dataMin===this.dataMax)it.setRange(0,1);else if(this.min===this.max){let _=this.pointRange/(this.dataMax+1);H=_*this.min,z=_*(this.max+1),it.setRange(H,z)}else H=(this.min-c)/(D-c),z=(this.max-c)/(D-c),this.horiz&&!this.reversed||!this.horiz&&this.reversed?it.setRange(H,z):it.setRange(1-z,1-H)}}V.compose=function(O,H){Y(J,"Axis.Scrollbar")&&(N=H,X(O,"afterGetOffset",T),X(O,"afterInit",A),X(O,"afterRender",M))}}($||($={})),$}),L(g,"Stock/Scrollbar/ScrollbarDefaults.js",[],function(){return{height:10,barBorderRadius:5,buttonBorderRadius:0,buttonsEnabled:!1,liveRedraw:void 0,margin:void 0,minWidth:6,opposite:!0,step:.2,zIndex:3,barBackgroundColor:"#cccccc",barBorderWidth:0,barBorderColor:"#cccccc",buttonArrowColor:"#333333",buttonBackgroundColor:"#e6e6e6",buttonBorderColor:"#cccccc",buttonBorderWidth:1,rifleColor:"none",trackBackgroundColor:"rgba(255, 255, 255, 0.001)",trackBorderColor:"#cccccc",trackBorderRadius:5,trackBorderWidth:1}}),L(g,"Stock/Scrollbar/Scrollbar.js",[g["Core/Defaults.js"],g["Core/Globals.js"],g["Core/Axis/ScrollbarAxis.js"],g["Stock/Scrollbar/ScrollbarDefaults.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{defaultOptions:q}=R,{addEvent:Z,correctFloat:Y,crisp:V,defined:N,destroyObjectProperties:U,fireEvent:T,merge:A,pick:M,removeEvent:O}=X;class H{static compose(c){$.compose(c,H)}static swapXY(c,D){return D&&c.forEach(it=>{let Q,W=it.length;for(let k=0;kthis.calculatedWidth?D.minWidth:0;return{chartX:(c.chartX-this.x-this.xOffset)/(this.barWidth-it),chartY:(c.chartY-this.y-this.yOffset)/(this.barWidth-it)}}destroy(){let c=this,D=c.chart.scroller;c.removeEvents(),["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(it){c[it]&&c[it].destroy&&(c[it]=c[it].destroy())}),D&&c===D.scrollbar&&(D.scrollbar=null,U(D.scrollbarButtons))}drawScrollbarButton(c){let D=this.renderer,it=this.scrollbarButtons,Q=this.options,W=this.size,k=D.g().add(this.group);if(it.push(k),Q.buttonsEnabled){let _=D.rect().addClass("highcharts-scrollbar-button").add(k);this.chart.styledMode||_.attr({stroke:Q.buttonBorderColor,"stroke-width":Q.buttonBorderWidth,fill:Q.buttonBackgroundColor}),_.attr(_.crisp({x:-.5,y:-.5,width:W,height:W,r:Q.buttonBorderRadius},_.strokeWidth()));let C=D.path(H.swapXY([["M",W/2+(c?-1:1),W/2-3],["L",W/2+(c?-1:1),W/2+3],["L",W/2+(c?2:-2),W/2]],Q.vertical)).addClass("highcharts-scrollbar-arrow").add(it[c]);this.chart.styledMode||C.attr({fill:Q.buttonArrowColor})}}init(c,D,it){this.scrollbarButtons=[],this.renderer=c,this.userOptions=D,this.options=A(J,q.scrollbar,D),this.options.margin=M(this.options.margin,10),this.chart=it,this.size=M(this.options.size,this.options.height),D.enabled&&(this.render(),this.addEvents())}mouseDownHandler(c){var Q;let D=((Q=this.chart.pointer)==null?void 0:Q.normalize(c))||c,it=this.cursorToScrollbarPosition(D);this.chartX=it.chartX,this.chartY=it.chartY,this.initPositions=[this.from,this.to],this.grabbedCenter=!0}mouseMoveHandler(c){var k;let D,it=((k=this.chart.pointer)==null?void 0:k.normalize(c))||c,Q=this.options.vertical?"chartY":"chartX",W=this.initPositions||[];this.grabbedCenter&&(!c.touches||c.touches[0][Q]!==0)&&(D=this.cursorToScrollbarPosition(it)[Q]-this[Q],this.hasDragged=!0,this.updatePosition(W[0]+D,W[1]+D),this.hasDragged&&T(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:c.type,DOMEvent:c}))}mouseUpHandler(c){this.hasDragged&&T(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:c.type,DOMEvent:c}),this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null}position(c,D,it,Q){let{buttonsEnabled:W,margin:k=0,vertical:_}=this.options,C=this.rendered?"animate":"attr",h=Q,l=0;this.group.show(),this.x=c,this.y=D+this.trackBorderWidth,this.width=it,this.height=Q,this.xOffset=h,this.yOffset=l,_?(this.width=this.yOffset=it=l=this.size,this.xOffset=h=0,this.yOffset=l=W?this.size:0,this.barWidth=Q-(W?2*it:0),this.x=c+=k):(this.height=Q=this.size,this.xOffset=h=W?this.size:0,this.barWidth=it-(W?2*Q:0),this.y=this.y+k),this.group[C]({translateX:c,translateY:this.y}),this.track[C]({width:it,height:Q}),this.scrollbarButtons[1][C]({translateX:_?0:it-h,translateY:_?Q-l:0})}removeEvents(){this._events.forEach(function(c){O.apply(null,c)}),this._events.length=0}render(){let c=this.renderer,D=this.options,it=this.size,Q=this.chart.styledMode,W=c.g("scrollbar").attr({zIndex:D.zIndex}).hide().add();this.group=W,this.track=c.rect().addClass("highcharts-scrollbar-track").attr({r:D.trackBorderRadius||0,height:it,width:it}).add(W),Q||this.track.attr({fill:D.trackBackgroundColor,stroke:D.trackBorderColor,"stroke-width":D.trackBorderWidth});let k=this.trackBorderWidth=this.track.strokeWidth();this.track.attr({x:-V(0,k),y:-V(0,k)}),this.scrollbarGroup=c.g().add(W),this.scrollbar=c.rect().addClass("highcharts-scrollbar-thumb").attr({height:it-k,width:it-k,r:D.barBorderRadius||0}).add(this.scrollbarGroup),this.scrollbarRifles=c.path(H.swapXY([["M",-3,it/4],["L",-3,2*it/3],["M",0,it/4],["L",0,2*it/3],["M",3,it/4],["L",3,2*it/3]],D.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup),Q||(this.scrollbar.attr({fill:D.barBackgroundColor,stroke:D.barBorderColor,"stroke-width":D.barBorderWidth}),this.scrollbarRifles.attr({stroke:D.rifleColor,"stroke-width":1})),this.scrollbarStrokeWidth=this.scrollbar.strokeWidth(),this.scrollbarGroup.translate(-V(0,this.scrollbarStrokeWidth),-V(0,this.scrollbarStrokeWidth)),this.drawScrollbarButton(0),this.drawScrollbarButton(1)}setRange(c,D){let it,Q,W=this.options,k=W.vertical,_=W.minWidth,C=this.barWidth,h=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(!N(C))return;let l=C*Math.min(D,1);it=Math.ceil(C*(c=Math.max(c,0))),this.calculatedWidth=Q=Y(l-it),Q<_&&(it=(C-_+Q)*c,Q=_);let u=Math.floor(it+this.xOffset+this.yOffset),v=Q/2-.5;this.from=c,this.to=D,k?(this.scrollbarGroup[h]({translateY:u}),this.scrollbar[h]({height:Q}),this.scrollbarRifles[h]({translateY:v}),this.scrollbarTop=u,this.scrollbarLeft=0):(this.scrollbarGroup[h]({translateX:u}),this.scrollbar[h]({width:Q}),this.scrollbarRifles[h]({translateX:v}),this.scrollbarLeft=u,this.scrollbarTop=0),Q<=12?this.scrollbarRifles.hide():this.scrollbarRifles.show(),W.showFull===!1&&(c<=0&&D>=1?this.group.hide():this.group.show()),this.rendered=!0}shouldUpdateExtremes(c){return M(this.options.liveRedraw,st.svg&&!st.isTouchDevice&&!this.chart.boosted)||c==="mouseup"||c==="touchend"||!N(c)}trackClick(c){var k;let D=((k=this.chart.pointer)==null?void 0:k.normalize(c))||c,it=this.to-this.from,Q=this.y+this.scrollbarTop,W=this.x+this.scrollbarLeft;this.options.vertical&&D.chartY>Q||!this.options.vertical&&D.chartX>W?this.updatePosition(this.from+it,this.to+it):this.updatePosition(this.from-it,this.to-it),T(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:c})}update(c){this.destroy(),this.init(this.chart.renderer,A(!0,this.options,c),this.chart)}updatePosition(c,D){D>1&&(c=Y(1-Y(D-c)),D=1),c<0&&(D=Y(D-c),c=0),this.from=c,this.to=D}}return H.defaultOptions=J,q.scrollbar=A(!0,H.defaultOptions,q.scrollbar),H}),L(g,"Stock/Navigator/Navigator.js",[g["Core/Axis/Axis.js"],g["Stock/Navigator/ChartNavigatorComposition.js"],g["Core/Defaults.js"],g["Core/Globals.js"],g["Core/Axis/NavigatorAxisComposition.js"],g["Stock/Navigator/NavigatorComposition.js"],g["Stock/Scrollbar/Scrollbar.js"],g["Core/Renderer/SVG/SVGRenderer.js"],g["Core/Utilities.js"]],function(R,st,$,J,X,q,Z,Y,V){let{defaultOptions:N}=$,{isTouchDevice:U}=J,{prototype:{symbols:T}}=Y,{addEvent:A,clamp:M,correctFloat:O,defined:H,destroyObjectProperties:z,erase:c,extend:D,find:it,fireEvent:Q,isArray:W,isNumber:k,merge:_,pick:C,removeEvent:h,splat:l}=V;function u(I,...S){let b=[].filter.call(S,k);if(b.length)return Math[I].apply(0,b)}class v{static compose(S,b,K){st.compose(S,v),q.compose(S,b,K)}constructor(S){this.isDirty=!1,this.scrollbarHeight=0,this.init(S)}drawHandle(S,b,K,ct){let et=this.navigatorOptions.handles.height;this.handles[b][ct](K?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(S,10)+.5-et)}:{translateX:Math.round(this.left+parseInt(S,10)),translateY:Math.round(this.top+this.height/2-et/2-1)})}drawOutline(S,b,K,ct){let et=this.navigatorOptions.maskInside,dt=this.outline.strokeWidth(),pt=dt/2,bt=dt%2/2,Mt=this.scrollButtonSize,w=this.size,B=this.top,tt=this.height,nt=B-pt,x=B+tt,y=this.left,j,lt;K?(j=B+b+bt,b=B+S+bt,lt=[["M",y+tt,B-Mt-bt],["L",y+tt,j],["L",y,j],["M",y,b],["L",y+tt,b],["L",y+tt,B+w+Mt]],et&<.push(["M",y+tt,j-pt],["L",y+tt,b+pt])):(y-=Mt,S+=y+Mt-bt,b+=y+Mt-bt,lt=[["M",y,nt],["L",S,nt],["L",S,x],["M",b,x],["L",b,nt],["L",y+w+2*Mt,nt]],et&<.push(["M",S-pt,nt],["L",b+pt,nt])),this.outline[ct]({d:lt})}drawMasks(S,b,K,ct){let et,dt,pt,bt,Mt=this.left,w=this.top,B=this.height;K?(pt=[Mt,Mt,Mt],bt=[w,w+S,w+b],dt=[B,B,B],et=[S,b-S,this.size-b]):(pt=[Mt,Mt+S,Mt+b],bt=[w,w,w],dt=[S,b-S,this.size-b],et=[B,B,B]),this.shades.forEach((tt,nt)=>{tt[ct]({x:pt[nt],y:bt[nt],width:dt[nt],height:et[nt]})})}renderElements(){var Mt,w;let S=this,b=S.navigatorOptions,K=b.maskInside,ct=S.chart,et=ct.inverted,dt=ct.renderer,pt={cursor:et?"ns-resize":"ew-resize"},bt=(Mt=S.navigatorGroup)!=null?Mt:S.navigatorGroup=dt.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();if([!K,K,!K].forEach((B,tt)=>{var x;let nt=(x=S.shades[tt])!=null?x:S.shades[tt]=dt.rect().addClass("highcharts-navigator-mask"+(tt===1?"-inside":"-outside")).add(bt);ct.styledMode||(nt.attr({fill:B?b.maskFill:"rgba(0,0,0,0)"}),tt===1&&nt.css(pt))}),S.outline||(S.outline=dt.path().addClass("highcharts-navigator-outline").add(bt)),ct.styledMode||S.outline.attr({"stroke-width":b.outlineWidth,stroke:b.outlineColor}),(w=b.handles)==null?void 0:w.enabled){let B=b.handles,{height:tt,width:nt}=B;[0,1].forEach(x=>{var j;let y=B.symbols[x];if(S.handles[x]&&S.handles[x].symbolUrl===y){if(!S.handles[x].isImg&&S.handles[x].symbolName!==y){let lt=T[y].call(T,-nt/2-1,0,nt,tt);S.handles[x].attr({d:lt}),S.handles[x].symbolName=y}}else(j=S.handles[x])==null||j.destroy(),S.handles[x]=dt.symbol(y,-nt/2-1,0,nt,tt,B),S.handles[x].attr({zIndex:7-x}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][x]).add(bt),S.addMouseEvents();ct.inverted&&S.handles[x].attr({rotation:90,rotationOriginX:Math.floor(-nt/2),rotationOriginY:(tt+nt)/2}),ct.styledMode||S.handles[x].attr({fill:B.backgroundColor,stroke:B.borderColor,"stroke-width":B.lineWidth,width:B.width,height:B.height,x:-nt/2-1,y:0}).css(pt)})}}update(S,b=!1){var et,dt;let K=this.chart,ct=K.options.chart.inverted!==((et=K.scrollbar)==null?void 0:et.options.vertical);if(_(!0,K.options.navigator,S),this.navigatorOptions=K.options.navigator||{},this.setOpposite(),H(S.enabled)||ct)return this.destroy(),this.navigatorEnabled=S.enabled||this.navigatorEnabled,this.init(K);if(this.navigatorEnabled&&(this.isDirty=!0,S.adaptToUpdatedData===!1&&this.baseSeries.forEach(pt=>{h(pt,"updatedData",this.updatedDataHandler)},this),S.adaptToUpdatedData&&this.baseSeries.forEach(pt=>{pt.eventsToUnbind.push(A(pt,"updatedData",this.updatedDataHandler))},this),(S.series||S.baseSeries)&&this.setBaseSeries(void 0,!1),S.height||S.xAxis||S.yAxis)){this.height=(dt=S.height)!=null?dt:this.height;let pt=this.getXAxisOffsets();this.xAxis.update(Mi(xr({},S.xAxis),{offsets:pt,[K.inverted?"width":"height"]:this.height,[K.inverted?"height":"width"]:void 0}),!1),this.yAxis.update(Mi(xr({},S.yAxis),{[K.inverted?"width":"height"]:this.height}),!1)}b&&K.redraw()}render(S,b,K,ct){let et=this.chart,dt=this.xAxis,pt=dt.pointRange||0,bt=dt.navigatorAxis.fake?et.xAxis[0]:dt,Mt=this.navigatorEnabled,w=this.rendered,B=et.inverted,tt=et.xAxis[0].minRange,nt=et.xAxis[0].options.maxRange,x=this.scrollButtonSize,y,j,lt,rt=this.scrollbarHeight,gt,vt;if(this.hasDragged&&!H(K))return;if(this.isDirty&&this.renderElements(),S=O(S-pt/2),b=O(b+pt/2),!k(S)||!k(b)){if(!w)return;K=0,ct=C(dt.width,bt.width)}this.left=C(dt.left,et.plotLeft+x+(B?et.plotWidth:0));let Ot=this.size=gt=C(dt.len,(B?et.plotHeight:et.plotWidth)-2*x);y=B?rt:gt+2*x,K=C(K,dt.toPixels(S,!0)),ct=C(ct,dt.toPixels(b,!0)),k(K)&&Math.abs(K)!==1/0||(K=0,ct=y);let At=dt.toValue(K,!0),$t=dt.toValue(ct,!0),Xt=Math.abs(O($t-At));Xtnt&&(this.grabbedLeft?K=dt.toPixels($t-nt-pt,!0):this.grabbedRight&&(ct=dt.toPixels(At+nt+pt,!0))),this.zoomedMax=M(Math.max(K,ct),0,Ot),this.zoomedMin=M(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(K,ct),0,Ot),this.range=this.zoomedMax-this.zoomedMin,Ot=Math.round(this.zoomedMax);let Ct=Math.round(this.zoomedMin);Mt&&(this.navigatorGroup.attr({visibility:"inherit"}),vt=w&&!this.hasDragged?"animate":"attr",this.drawMasks(Ct,Ot,B,vt),this.drawOutline(Ct,Ot,B,vt),this.navigatorOptions.handles.enabled&&(this.drawHandle(Ct,0,B,vt),this.drawHandle(Ot,1,B,vt))),this.scrollbar&&(B?(lt=this.top-x,j=this.left-rt+(Mt||!bt.opposite?0:(bt.titleOffset||0)+bt.axisTitleMargin),rt=gt+2*x):(lt=this.top+(Mt?this.height:-rt),j=this.left-x),this.scrollbar.position(j,lt,y,rt),this.scrollbar.setRange(this.zoomedMin/(gt||1),this.zoomedMax/(gt||1))),this.rendered=!0,this.isDirty=!1,Q(this,"afterRender")}addMouseEvents(){let S=this,b=S.chart,K=b.container,ct=[],et,dt;S.mouseMoveHandler=et=function(pt){S.onMouseMove(pt)},S.mouseUpHandler=dt=function(pt){S.onMouseUp(pt)},(ct=S.getPartsEvents("mousedown")).push(A(b.renderTo,"mousemove",et),A(K.ownerDocument,"mouseup",dt),A(b.renderTo,"touchmove",et),A(K.ownerDocument,"touchend",dt)),ct.concat(S.getPartsEvents("touchstart")),S.eventsToUnbind=ct,S.series&&S.series[0]&&ct.push(A(S.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))}getPartsEvents(S){let b=this,K=[];return["shades","handles"].forEach(function(ct){b[ct].forEach(function(et,dt){K.push(A(et.element,S,function(pt){b[ct+"Mousedown"](pt,dt)}))})}),K}shadesMousedown(S,b){var x;S=((x=this.chart.pointer)==null?void 0:x.normalize(S))||S;let K=this.chart,ct=this.xAxis,et=this.zoomedMin,dt=this.size,pt=this.range,bt=this.left,Mt=S.chartX,w,B,tt,nt;K.inverted&&(Mt=S.chartY,bt=this.top),b===1?(this.grabbedCenter=Mt,this.fixedWidth=pt,this.dragOffset=Mt-et):(nt=Mt-bt-pt/2,b===0?nt=Math.max(0,nt):b===2&&nt+pt>=dt&&(nt=dt-pt,this.reversedExtremes?(nt-=pt,B=this.getUnionExtremes().dataMin):w=this.getUnionExtremes().dataMax),nt!==et&&(this.fixedWidth=pt,H((tt=ct.navigatorAxis.toFixedRange(nt,nt+pt,B,w)).min)&&Q(this,"setRange",{min:Math.min(tt.min,tt.max),max:Math.max(tt.min,tt.max),redraw:!0,eventArguments:{trigger:"navigator"}})))}handlesMousedown(S,b){var dt;S=((dt=this.chart.pointer)==null?void 0:dt.normalize(S))||S;let K=this.chart,ct=K.xAxis[0],et=this.reversedExtremes;b===0?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=et?ct.min:ct.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=et?ct.max:ct.min),K.setFixedRange(void 0)}onMouseMove(S){var w;let b=this,K=b.chart,ct=b.navigatorSize,et=b.range,dt=b.dragOffset,pt=K.inverted,bt=b.left,Mt;(!S.touches||S.touches[0].pageX!==0)&&(Mt=(S=((w=K.pointer)==null?void 0:w.normalize(S))||S).chartX,pt&&(bt=b.top,Mt=S.chartY),b.grabbedLeft?(b.hasDragged=!0,b.render(0,0,Mt-bt,b.otherHandlePos)):b.grabbedRight?(b.hasDragged=!0,b.render(0,0,b.otherHandlePos,Mt-bt)):b.grabbedCenter&&(b.hasDragged=!0,Mtct+dt-et&&(Mt=ct+dt-et),b.render(0,0,Mt-dt,Mt-dt+et)),b.hasDragged&&b.scrollbar&&C(b.scrollbar.options.liveRedraw,!U&&!this.chart.boosted)&&(S.DOMType=S.type,setTimeout(function(){b.onMouseUp(S)},0)))}onMouseUp(S){let b,K,ct,et,dt,pt,bt=this.chart,Mt=this.xAxis,w=this.scrollbar,B=S.DOMEvent||S,tt=bt.inverted,nt=this.rendered&&!this.hasDragged?"animate":"attr";(this.hasDragged&&(!w||!w.hasDragged)||S.trigger==="scrollbar")&&(ct=this.getUnionExtremes(),this.zoomedMin===this.otherHandlePos?et=this.fixedExtreme:this.zoomedMax===this.otherHandlePos&&(dt=this.fixedExtreme),this.zoomedMax===this.size&&(dt=this.reversedExtremes?ct.dataMin:ct.dataMax),this.zoomedMin===0&&(et=this.reversedExtremes?ct.dataMax:ct.dataMin),H((pt=Mt.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,et,dt)).min)&&Q(this,"setRange",{min:Math.min(pt.min,pt.max),max:Math.max(pt.min,pt.max),redraw:!0,animation:!this.hasDragged&&null,eventArguments:{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:B}})),S.DOMType!=="mousemove"&&S.DOMType!=="touchmove"&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null),this.navigatorEnabled&&k(this.zoomedMin)&&k(this.zoomedMax)&&(K=Math.round(this.zoomedMin),b=Math.round(this.zoomedMax),this.shades&&this.drawMasks(K,b,tt,nt),this.outline&&this.drawOutline(K,b,tt,nt),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(K,0,tt,nt),this.drawHandle(b,1,tt,nt)))}removeEvents(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(S){S()}),this.eventsToUnbind=void 0),this.removeBaseSeriesEvents()}removeBaseSeriesEvents(){let S=this.baseSeries||[];this.navigatorEnabled&&S[0]&&(this.navigatorOptions.adaptToUpdatedData!==!1&&S.forEach(function(b){h(b,"updatedData",this.updatedDataHandler)},this),S[0].xAxis&&h(S[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))}getXAxisOffsets(){return this.chart.inverted?[this.scrollButtonSize,0,-this.scrollButtonSize,0]:[0,-this.scrollButtonSize,0,this.scrollButtonSize]}init(S){var y;let b=S.options,K=b.navigator||{},ct=K.enabled,et=b.scrollbar||{},dt=et.enabled,pt=ct&&K.height||0,bt=dt&&et.height||0,Mt=et.buttonsEnabled&&bt||0;this.handles=[],this.shades=[],this.chart=S,this.setBaseSeries(),this.height=pt,this.scrollbarHeight=bt,this.scrollButtonSize=Mt,this.scrollbarEnabled=dt,this.navigatorEnabled=ct,this.navigatorOptions=K,this.scrollbarOptions=et,this.setOpposite();let w=this,B=w.baseSeries,tt=S.xAxis.length,nt=S.yAxis.length,x=B&&B[0]&&B[0].xAxis||S.xAxis[0]||{options:{}};if(S.isDirtyBox=!0,w.navigatorEnabled){let j=this.getXAxisOffsets();w.xAxis=new R(S,_({breaks:x.options.breaks,ordinal:x.options.ordinal,overscroll:x.options.overscroll},K.xAxis,{type:"datetime",yAxis:(y=K.yAxis)==null?void 0:y.id,index:tt,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:x.options.ordinal?0:x.options.minPadding,maxPadding:x.options.ordinal?0:x.options.maxPadding,zoomEnabled:!1},S.inverted?{offsets:j,width:pt}:{offsets:j,height:pt}),"xAxis"),w.yAxis=new R(S,_(K.yAxis,{alignTicks:!1,offset:0,index:nt,isInternal:!0,reversed:C(K.yAxis&&K.yAxis.reversed,S.yAxis[0]&&S.yAxis[0].reversed,!1),zoomEnabled:!1},S.inverted?{width:pt}:{height:pt}),"yAxis"),B||K.series.data?w.updateNavigatorSeries(!1):S.series.length===0&&(w.unbindRedraw=A(S,"beforeRedraw",function(){S.series.length>0&&!w.series&&(w.setBaseSeries(),w.unbindRedraw())})),w.reversedExtremes=S.inverted&&!w.xAxis.reversed||!S.inverted&&w.xAxis.reversed,w.renderElements(),w.addMouseEvents()}else w.xAxis={chart:S,navigatorAxis:{fake:!0},translate:function(j,lt){let rt=S.xAxis[0],gt=rt.getExtremes(),vt=rt.len-2*Mt,Ot=u("min",rt.options.min,gt.dataMin),At=u("max",rt.options.max,gt.dataMax)-Ot;return lt?j*At/vt+Ot:vt*(j-Ot)/At},toPixels:function(j){return this.translate(j)},toValue:function(j){return this.translate(j,!0)}},w.xAxis.navigatorAxis.axis=w.xAxis,w.xAxis.navigatorAxis.toFixedRange=X.prototype.toFixedRange.bind(w.xAxis.navigatorAxis);if(S.options.scrollbar.enabled){let j=_(S.options.scrollbar,{vertical:S.inverted});!k(j.margin)&&w.navigatorEnabled&&(j.margin=S.inverted?-3:3),S.scrollbar=w.scrollbar=new Z(S.renderer,j,S),A(w.scrollbar,"changed",function(lt){let rt=w.size,gt=rt*this.to,vt=rt*this.from;w.hasDragged=w.scrollbar.hasDragged,w.render(0,0,vt,gt),this.shouldUpdateExtremes(lt.DOMType)&&setTimeout(function(){w.onMouseUp(lt)})})}w.addBaseSeriesEvents(),w.addChartEvents()}setOpposite(){let S=this.navigatorOptions,b=this.navigatorEnabled,K=this.chart;this.opposite=C(S.opposite,!!(!b&&K.inverted))}getUnionExtremes(S){let b,K=this.chart.xAxis[0],ct=this.xAxis,et=ct.options,dt=K.options;return S&&K.dataMin===null||(b={dataMin:C(et&&et.min,u("min",dt.min,K.dataMin,ct.dataMin,ct.min)),dataMax:C(et&&et.max,u("max",dt.max,K.dataMax,ct.dataMax,ct.max))}),b}setBaseSeries(S,b){let K=this.chart,ct=this.baseSeries=[];S=S||K.options&&K.options.navigator.baseSeries||(K.series.length?it(K.series,et=>!et.options.isInternal).index:0),(K.series||[]).forEach((et,dt)=>{!et.options.isInternal&&(et.options.showInNavigator||(dt===S||et.options.id===S)&&et.options.showInNavigator!==!1)&&ct.push(et)}),this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,b)}updateNavigatorSeries(S,b){var tt,nt;let K=this,ct=K.chart,et=K.baseSeries,dt={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:(tt=this.navigatorOptions.xAxis)==null?void 0:tt.id,yAxis:(nt=this.navigatorOptions.yAxis)==null?void 0:nt.id,showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},pt=K.series=(K.series||[]).filter(x=>{let y=x.baseSeries;return!(0>et.indexOf(y))||(y&&(h(y,"updatedData",K.updatedDataHandler),delete y.navigatorSeries),x.chart&&x.destroy(),!1)}),bt,Mt,w=K.navigatorOptions.series,B;et&&et.length&&et.forEach(x=>{let y=x.navigatorSeries,j=D({color:x.color,visible:x.visible},W(w)?N.navigator.series:w);if(y&&K.navigatorOptions.adaptToUpdatedData===!1)return;dt.name="Navigator "+et.length,B=(bt=x.options||{}).navigatorOptions||{},j.dataLabels=l(j.dataLabels),(Mt=_(bt,dt,j,B)).pointRange=C(j.pointRange,B.pointRange,N.plotOptions[Mt.type||"line"].pointRange);let lt=B.data||j.data;K.hasNavigatorData=K.hasNavigatorData||!!lt,Mt.data=lt||bt.data&&bt.data.slice(0),y&&y.options?y.update(Mt,b):(x.navigatorSeries=ct.initSeries(Mt),ct.setSortedData(),x.navigatorSeries.baseSeries=x,pt.push(x.navigatorSeries))}),(w.data&&!(et&&et.length)||W(w))&&(K.hasNavigatorData=!1,(w=l(w)).forEach((x,y)=>{dt.name="Navigator "+(pt.length+1),(Mt=_(N.navigator.series,{color:ct.series[y]&&!ct.series[y].options.isInternal&&ct.series[y].color||ct.options.colors[y]||ct.options.colors[0]},dt,x)).data=x.data,Mt.data&&(K.hasNavigatorData=!0,pt.push(ct.initSeries(Mt)))})),S&&this.addBaseSeriesEvents()}addBaseSeriesEvents(){let S=this,b=S.baseSeries||[];b[0]&&b[0].xAxis&&b[0].eventsToUnbind.push(A(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes)),b.forEach(K=>{K.eventsToUnbind.push(A(K,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)})),K.eventsToUnbind.push(A(K,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)})),this.navigatorOptions.adaptToUpdatedData!==!1&&K.xAxis&&K.eventsToUnbind.push(A(K,"updatedData",this.updatedDataHandler)),K.eventsToUnbind.push(A(K,"remove",function(){b&&c(b,K),this.navigatorSeries&&(c(S.series,this.navigatorSeries),H(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))})}getBaseSeriesMin(S){return this.baseSeries.reduce(function(b,K){return Math.min(b,K.xData&&K.xData.length?K.xData[0]:b)},S)}modifyNavigatorAxisExtremes(){let S=this.xAxis;if(S.getExtremes!==void 0){let b=this.getUnionExtremes(!0);b&&(b.dataMin!==S.min||b.dataMax!==S.max)&&(S.min=b.dataMin,S.max=b.dataMax)}}modifyBaseAxisExtremes(){var y;let S,b,K=this.chart.navigator,ct=this.getExtremes(),et=ct.min,dt=ct.max,pt=ct.dataMin,bt=ct.dataMax,Mt=dt-et,w=K.stickToMin,B=K.stickToMax,tt=C((y=this.ordinal)==null?void 0:y.convertOverscroll(this.options.overscroll),0),nt=K.series&&K.series[0],x=!!this.setExtremes;!(this.eventArgs&&this.eventArgs.trigger==="rangeSelectorButton")&&(w&&(S=(b=pt)+Mt),B&&(S=bt+tt,w||(b=Math.max(pt,S-Mt,K.getBaseSeriesMin(nt&&nt.xData?nt.xData[0]:-Number.MAX_VALUE)))),x&&(w||B)&&k(b)&&(this.min=this.userMin=b,this.max=this.userMax=S)),K.stickToMin=K.stickToMax=null}updatedDataHandler(){let S=this.chart.navigator,b=this.navigatorSeries,K=S.reversedExtremes?Math.round(S.zoomedMin)===0:Math.round(S.zoomedMax)>=Math.round(S.size);S.stickToMax=C(this.chart.options.navigator&&this.chart.options.navigator.stickToMax,K),S.stickToMin=S.shouldStickToMin(this,S),b&&!S.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))}shouldStickToMin(S,b){let K=b.getBaseSeriesMin(S.xData[0]),ct=S.xAxis,et=ct.max,dt=ct.min,pt=ct.options.range;return!!(k(et)&&k(dt))&&(pt&&et-K>0?et-K{S.destroy&&S.destroy()}),["series","xAxis","yAxis","shades","outline","scrollbarTrack","scrollbarRifles","scrollbarGroup","scrollbar","navigatorGroup","rendered"].forEach(S=>{this[S]&&this[S].destroy&&this[S].destroy(),this[S]=null}),[this.handles].forEach(S=>{z(S)}),this.navigatorEnabled=!1}}return v}),L(g,"Accessibility/Components/NavigatorComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Stock/Navigator/Navigator.js"],g["Core/Animation/AnimationUtilities.js"],g["Core/Templating.js"],g["Core/Utilities.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/Utils/ChartUtilities.js"]],function(R,st,$,J,X,q,Z,Y,V){let{animObject:N}=X,{format:U}=q,{clamp:T,pick:A,syncTimeout:M}=Z,{getFakeMouseEvent:O}=Y,{getAxisRangeDescription:H,fireEventOnWrappedOrUnwrappedElement:z}=V;return class extends R{init(){let c=this.chart,D=this;this.announcer=new st(c,"polite"),this.addEvent(J,"afterRender",function(){this.chart===D.chart&&this.chart.renderer&&M(()=>{D.proxyProvider.updateGroupProxyElementPositions("navigator"),D.updateHandleValues()},N(A(this.chart.renderer.globalAnimation,!0)).duration)})}onChartUpdate(){var Q,W,k;let c=this.chart,D=c.options,it=D.navigator;if(it.enabled&&((Q=it.accessibility)!=null&&Q.enabled)){let _=D.accessibility.landmarkVerbosity,C=(W=D.lang.accessibility)==null?void 0:W.navigator.groupLabel;this.proxyProvider.removeGroup("navigator"),this.proxyProvider.addGroup("navigator","div",{role:_==="all"?"region":"group","aria-label":U(C,{chart:c},c)});let h=(k=D.lang.accessibility)==null?void 0:k.navigator.handleLabel;[0,1].forEach(l=>{let u=this.getHandleByIx(l);if(u){let v=this.proxyProvider.addProxyElement("navigator",{click:u},"input",{type:"range","aria-label":U(h,{handleIx:l,chart:c},c)});this[l?"maxHandleProxy":"minHandleProxy"]=v.innerElement,v.innerElement.style.pointerEvents="none",v.innerElement.oninput=()=>this.updateNavigator()}}),this.updateHandleValues()}else this.proxyProvider.removeGroup("navigator")}getNavigatorHandleNavigation(c){let D=this,it=this.chart,Q=c?this.maxHandleProxy:this.minHandleProxy,W=this.keyCodes;return new $(it,{keyCodeMap:[[[W.left,W.right,W.up,W.down],function(k){if(Q){let _=k===W.left||k===W.up?-1:1;Q.value=""+T(parseFloat(Q.value)+_,0,100),D.updateNavigator(()=>{let C=D.getHandleByIx(c);C&&it.setFocusToElement(C,Q)})}return this.response.success}]],init:()=>{it.setFocusToElement(this.getHandleByIx(c),Q)},validate:()=>{var k;return!!(this.getHandleByIx(c)&&Q&&((k=it.options.navigator.accessibility)!=null&&k.enabled))}})}getKeyboardNavigation(){return[this.getNavigatorHandleNavigation(0),this.getNavigatorHandleNavigation(1)]}destroy(){this.updateNavigatorThrottleTimer&&clearTimeout(this.updateNavigatorThrottleTimer),this.proxyProvider.removeGroup("navigator"),this.announcer&&this.announcer.destroy()}updateHandleValues(){let c=this.chart.navigator;if(c&&this.minHandleProxy&&this.maxHandleProxy){let D=c.size;this.minHandleProxy.value=""+Math.round(c.zoomedMin/D*100),this.maxHandleProxy.value=""+Math.round(c.zoomedMax/D*100)}}getHandleByIx(c){let D=this.chart.navigator;return D&&D.handles&&D.handles[c]}updateNavigator(c){this.updateNavigatorThrottleTimer&&clearTimeout(this.updateNavigatorThrottleTimer),this.updateNavigatorThrottleTimer=setTimeout((D=>{var k;let it=this.chart,{navigator:Q,pointer:W}=it;if(Q&&W&&this.minHandleProxy&&this.maxHandleProxy){let _=W.getChartPosition(),C=parseFloat(this.minHandleProxy.value)/100*Q.size,h=parseFloat(this.maxHandleProxy.value)/100*Q.size;[[0,"mousedown",Q.zoomedMin],[0,"mousemove",C],[0,"mouseup",C],[1,"mousedown",Q.zoomedMax],[1,"mousemove",h],[1,"mouseup",h]].forEach(([v,I,S])=>{var K;let b=(K=this.getHandleByIx(v))==null?void 0:K.element;b&&z(b,O(I,{x:_.left+Q.left+S,y:_.top+Q.top},b))}),D&&D();let l=(k=it.options.lang.accessibility)==null?void 0:k.navigator.changeAnnouncement,u=H(it.xAxis[0]);this.announcer.announce(U(l,{axisRangeDescription:u,chart:it},it))}}).bind(this,c),20)}}}),L(g,"Accessibility/Components/SeriesComponent/SeriesDescriber.js",[g["Accessibility/Components/AnnotationsA11y.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Core/Templating.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{getPointAnnotationTexts:q}=R,{getAxisDescription:Z,getSeriesFirstPointElement:Y,getSeriesA11yElement:V,unhideChartElementFromAT:N}=st,{format:U,numberFormat:T}=$,{reverseChildNodes:A,stripHTMLTagsFromString:M}=J,{find:O,isNumber:H,isString:z,pick:c,defined:D}=X;function it(C){let h=C.chart.options.accessibility.series.pointDescriptionEnabledThreshold;return!!(h!==!1&&C.points&&C.points.length>=+h)}function Q(C,h){let l=C.series,u=l.chart,v=u.options.accessibility.point||{},I=l.options.accessibility&&l.options.accessibility.point||{},S=l.tooltipOptions||{},b=u.options.lang;return H(h)?T(h,I.valueDecimals||v.valueDecimals||S.valueDecimals||-1,b.decimalPoint,b.accessibility.thousandsSep||b.thousandsSep):h}function W(C,h){let l=C[h];return C.chart.langFormat("accessibility.series."+h+"Description",{name:Z(l),series:C})}function k(C){let h=C.series,l=h.chart.series.length>1||h.options.name,u=function(b){let K=b.series,ct=K.chart,et=K.options.accessibility,dt=et&&et.point&&et.point.valueDescriptionFormat||ct.options.accessibility.point.valueDescriptionFormat,pt=c(K.xAxis&&K.xAxis.options.accessibility&&K.xAxis.options.accessibility.enabled,!ct.angular&&K.type!=="flowmap"),bt=pt?function(Mt){let w=function(x){let y=x.series,j=y.chart,lt=y.options.accessibility&&y.options.accessibility.point||{},rt=j.options.accessibility.point||{},gt=y.xAxis&&y.xAxis.dateTime;if(gt){let vt=gt.getXDateFormat(x.x||0,j.options.tooltip.dateTimeLabelFormats),Ot=lt.dateFormatter&<.dateFormatter(x)||rt.dateFormatter&&rt.dateFormatter(x)||lt.dateFormat||rt.dateFormat||vt;return j.time.dateFormat(Ot,x.x||0,void 0)}}(Mt),B=(Mt.series.xAxis||{}).categories&&D(Mt.category)&&(""+Mt.category).replace("
    "," "),tt=D(Mt.id)&&0>(""+Mt.id).indexOf("highcharts-"),nt="x, "+Mt.x;return Mt.name||w||B||(tt?Mt.id:nt)}(b):"";return U(dt,{point:b,index:D(b.index)?b.index+1:"",xDescription:bt,value:function(Mt){let w=Mt.series,B=w.chart.options.accessibility.point||{},tt=w.chart.options.accessibility&&w.chart.options.accessibility.point||{},nt=w.tooltipOptions||{},x=tt.valuePrefix||B.valuePrefix||nt.valuePrefix||"",y=tt.valueSuffix||B.valueSuffix||nt.valueSuffix||"",j=Mt.value!==void 0?"value":"y",lt=Q(Mt,Mt[j]);return Mt.isNull?w.chart.langFormat("accessibility.series.nullPointValue",{point:Mt}):w.pointArrayMap?function(rt,gt,vt){let Ot=gt||"",At=vt||"",$t=function(Xt){let Ct=Q(rt,c(rt[Xt],rt.options[Xt]));return Ct!==void 0?Xt+": "+Ot+Ct+At:Ct};return rt.series.pointArrayMap.reduce(function(Xt,Ct){let wt=$t(Ct);return wt?Xt+(Xt.length?", ":"")+wt:Xt},"")}(Mt,x,y):x+lt+y}(b),separator:pt?", ":""},ct)}(C),v=C.options&&C.options.accessibility&&C.options.accessibility.description,I=l?" "+h.name+".":"",S=function(b){let K=b.series.chart,ct=q(b);return ct.length?K.langFormat("accessibility.series.pointAnnotationsDescription",{point:b,annotations:ct}):""}(C);return C.accessibility=C.accessibility||{},C.accessibility.valueDescription=u,u+(v?" "+v:"")+I+(S?" "+S:"")}function _(C){let h=C.chart,l=h.types||[],u=function(pt){let bt=(pt.options.accessibility||{}).description;return bt&&pt.chart.langFormat("accessibility.series.description",{description:bt,series:pt})||""}(C),v=function(pt){return h[pt]&&h[pt].length>1&&C[pt]},I=C.index+1,S=W(C,"xAxis"),b=W(C,"yAxis"),K={seriesNumber:I,series:C,chart:h},ct=l.length>1?"Combination":"",et=h.langFormat("accessibility.series.summary."+C.type+ct,K)||h.langFormat("accessibility.series.summary.default"+ct,K),dt=(v("yAxis")?" "+b+".":"")+(v("xAxis")?" "+S+".":"");return U(c(C.options.accessibility&&C.options.accessibility.descriptionFormat,h.options.accessibility.series.descriptionFormat,""),{seriesDescription:et,authorDescription:u?" "+u:"",axisDescription:dt,series:C,chart:h,seriesNumber:I},void 0)}return{defaultPointDescriptionFormatter:k,defaultSeriesDescriptionFormatter:_,describeSeries:function(C){let h=C.chart,l=Y(C),u=V(C),v=h.is3d&&h.is3d();u&&(u.lastChild!==l||v||A(u),function(I){let S=function(ct){let et=ct.options.accessibility||{};return!it(ct)&&!et.exposeAsGroupOnly}(I),b=function(ct){let et=ct.chart.options.accessibility.keyboardNavigation.seriesNavigation;return!!(ct.points&&(ct.points.length<+et.pointNavigationEnabledThreshold||et.pointNavigationEnabledThreshold===!1))}(I),K=I.chart.options.accessibility.point.describeNull;(S||b)&&I.points.forEach(ct=>{let et=ct.graphic&&ct.graphic.element||function(pt){let bt=pt.series,Mt=bt&&bt.chart,w=bt&&bt.is("sunburst"),B=pt.isNull,tt=Mt&&Mt.options.accessibility.point.describeNull;return B&&!w&&tt}(ct)&&function(pt){let bt=pt.series,Mt=function(x){let y=x.index;return x.series&&x.series.data&&D(y)&&O(x.series.data,function(j){return!!(j&&j.index!==void 0&&j.index>y&&j.graphic&&j.graphic.element)})||null}(pt),w=Mt&&Mt.graphic,B=w?w.parentGroup:bt.graph||bt.group,tt=Mt?{x:c(pt.plotX,Mt.plotX,0),y:c(pt.plotY,Mt.plotY,0)}:{x:c(pt.plotX,0),y:c(pt.plotY,0)},nt=function(x,y){let j=x.series.chart.renderer.rect(y.x,y.y,1,1);return j.attr({class:"highcharts-a11y-mock-point",fill:"none",opacity:0,"fill-opacity":0,"stroke-opacity":0}),j}(pt,tt);if(B&&B.element)return pt.graphic=nt,pt.hasMockGraphic=!0,nt.add(B),B.element.insertBefore(nt.element,w?w.element:null),nt.element}(ct),dt=ct.options&&ct.options.accessibility&&ct.options.accessibility.enabled===!1;if(et){if(ct.isNull&&!K){et.setAttribute("aria-hidden",!0);return}et.setAttribute("tabindex","-1"),I.chart.styledMode||(et.style.outline="none"),S&&!dt?function(pt,bt){var nt,x,y;let Mt=pt.series,w=((nt=Mt.options.accessibility)==null?void 0:nt.point)||{},B=Mt.chart.options.accessibility.point||{},tt=M(z(w.descriptionFormat)&&U(w.descriptionFormat,pt,Mt.chart)||((x=w.descriptionFormatter)==null?void 0:x.call(w,pt))||z(B.descriptionFormat)&&U(B.descriptionFormat,pt,Mt.chart)||((y=B.descriptionFormatter)==null?void 0:y.call(B,pt))||k(pt),Mt.chart.renderer.forExport);bt.setAttribute("role","img"),bt.setAttribute("aria-label",tt)}(ct,et):et.setAttribute("aria-hidden",!0)}})}(C),N(h,u),function(I){let S=I.chart,b=S.options.chart,K=b.options3d&&b.options3d.enabled,ct=S.series.length>1,et=S.options.accessibility.series.describeSingleSeries,dt=(I.options.accessibility||{}).exposeAsGroupOnly;return!(K&&ct)&&(ct||et||dt||it(I))}(C)?function(I,S){let b=I.options.accessibility||{},K=I.chart.options.accessibility,ct=K.landmarkVerbosity;b.exposeAsGroupOnly?S.setAttribute("role","img"):ct==="all"?S.setAttribute("role","region"):S.setAttribute("role","group"),S.setAttribute("tabindex","-1"),I.chart.styledMode||(S.style.outline="none"),S.setAttribute("aria-label",M(K.series.descriptionFormatter&&K.series.descriptionFormatter(I)||_(I),I.chart.renderer.forExport))}(C,u):u.removeAttribute("aria-label"))}}}),L(g,"Accessibility/Components/SeriesComponent/NewDataAnnouncer.js",[g["Core/Globals.js"],g["Core/Utilities.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Components/SeriesComponent/SeriesDescriber.js"]],function(R,st,$,J,X,q){let{composed:Z}=R,{addEvent:Y,defined:V,pushUnique:N}=st,{getChartTitle:U}=J,{defaultPointDescriptionFormatter:T,defaultSeriesDescriptionFormatter:A}=q;function M(H){return!!H.options.accessibility.announceNewData.enabled}class O{constructor(z){this.dirty={allSeries:{}},this.lastAnnouncementTime=0,this.chart=z}init(){let z=this.chart,c=z.options.accessibility.announceNewData.interruptUser?"assertive":"polite";this.lastAnnouncementTime=0,this.dirty={allSeries:{}},this.eventProvider=new X,this.announcer=new $(z,c),this.addEventListeners()}destroy(){this.eventProvider.removeAddedEvents(),this.announcer.destroy()}addEventListeners(){let z=this,c=this.chart,D=this.eventProvider;D.addEvent(c,"afterApplyDrilldown",function(){z.lastAnnouncementTime=0}),D.addEvent(c,"afterAddSeries",function(it){z.onSeriesAdded(it.series)}),D.addEvent(c,"redraw",function(){z.announceDirtyData()})}onSeriesAdded(z){M(this.chart)&&(this.dirty.hasDirty=!0,this.dirty.allSeries[z.name+z.index]=z,this.dirty.newSeries=V(this.dirty.newSeries)?void 0:z)}announceDirtyData(){let z=this.chart,c=this;if(z.options.accessibility.announceNewData&&this.dirty.hasDirty){let D=this.dirty.newPoint;D&&(D=function(it){let Q=it.series.data.filter(W=>it.x===W.x&&it.y===W.y);return Q.length===1?Q[0]:it}(D)),this.queueAnnouncement(Object.keys(this.dirty.allSeries).map(it=>c.dirty.allSeries[it]),this.dirty.newSeries,D),this.dirty={allSeries:{}}}}queueAnnouncement(z,c,D){let it=this.chart.options.accessibility.announceNewData;if(it.enabled){let Q=+new Date,W=Q-this.lastAnnouncementTime,k=Math.max(0,it.minAnnounceInterval-W),_=function(h,l){let u=(h||[]).concat(l||[]).reduce((v,I)=>(v[I.name+I.index]=I,v),{});return Object.keys(u).map(v=>u[v])}(this.queuedAnnouncement&&this.queuedAnnouncement.series,z),C=this.buildAnnouncementMessage(_,c,D);C&&(this.queuedAnnouncement&&clearTimeout(this.queuedAnnouncementTimer),this.queuedAnnouncement={time:Q,message:C,series:_},this.queuedAnnouncementTimer=setTimeout(()=>{this&&this.announcer&&(this.lastAnnouncementTime=+new Date,this.announcer.announce(this.queuedAnnouncement.message),delete this.queuedAnnouncement,delete this.queuedAnnouncementTimer)},k))}}buildAnnouncementMessage(z,c,D){let it=this.chart,Q=it.options.accessibility.announceNewData;if(Q.announcementFormatter){let C=Q.announcementFormatter(z,c,D);if(C!==!1)return C.length?C:null}let W=R.charts&&R.charts.length>1?"Multiple":"Single",k=c?"newSeriesAnnounce"+W:D?"newPointAnnounce"+W:"newDataAnnounce",_=U(it);return it.langFormat("accessibility.announceNewData."+k,{chartTitle:_,seriesDesc:c?A(c):null,pointDesc:D?T(D):null,point:D,series:c})}}return function(H){function z(D){var W;let it=this.chart,Q=(W=it.accessibility)==null?void 0:W.components.series.newDataAnnouncer;Q&&Q.chart===it&&M(it)&&(Q.dirty.newPoint=V(Q.dirty.newPoint)?void 0:D.point)}function c(){var Q;let D=this.chart,it=(Q=D.accessibility)==null?void 0:Q.components.series.newDataAnnouncer;it&&it.chart===D&&M(D)&&(it.dirty.hasDirty=!0,it.dirty.allSeries[this.name+this.index]=this)}H.compose=function(D){N(Z,"A11y.NDA")&&(Y(D,"addPoint",z),Y(D,"updatedData",c))}}(O||(O={})),O}),L(g,"Accessibility/ProxyElement.js",[g["Core/Globals.js"],g["Core/Utilities.js"],g["Accessibility/Utils/EventProvider.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"]],function(R,st,$,J,X){let{doc:q}=R,{attr:Z,css:Y,merge:V}=st,{fireEventOnWrappedOrUnwrappedElement:N}=J,{cloneMouseEvent:U,cloneTouchEvent:T,getFakeMouseEvent:A,removeElement:M}=X;return class{constructor(O,H,z="button",c,D){this.chart=O,this.target=H,this.eventProvider=new $;let it=this.innerElement=q.createElement(z),Q=this.element=c?q.createElement(c):it;O.styledMode||this.hideElementVisually(it),c&&(c!=="li"||O.styledMode||(Q.style.listStyle="none"),Q.appendChild(it),this.element=Q),this.updateTarget(H,D)}click(){let O=this.getTargetPosition();O.x+=O.width/2,O.y+=O.height/2;let H=A("click",O);N(this.target.click,H)}updateTarget(O,H){this.target=O,this.updateCSSClassName();let z=H||{};Object.keys(z).forEach(D=>{z[D]===null&&delete z[D]});let c=this.getTargetAttr(O.click,"aria-label");Z(this.innerElement,V(c?{"aria-label":c}:{},z)),this.eventProvider.removeAddedEvents(),this.addProxyEventsToElement(this.innerElement,O.click),this.refreshPosition()}refreshPosition(){let O=this.getTargetPosition();Y(this.innerElement,{width:(O.width||1)+"px",height:(O.height||1)+"px",left:(Math.round(O.x)||0)+"px",top:(Math.round(O.y)||0)+"px"})}remove(){this.eventProvider.removeAddedEvents(),M(this.element)}updateCSSClassName(){let O=it=>it.indexOf("highcharts-no-tooltip")>-1,H=this.chart.legend,z=H.group&&H.group.div,c=O(z&&z.className||""),D=O(this.getTargetAttr(this.target.click,"class")||"");this.innerElement.className=c||D?"highcharts-a11y-proxy-element highcharts-no-tooltip":"highcharts-a11y-proxy-element"}addProxyEventsToElement(O,H){["click","touchstart","touchend","touchcancel","touchmove","mouseover","mouseenter","mouseleave","mouseout"].forEach(z=>{let c=z.indexOf("touch")===0;this.eventProvider.addEvent(O,z,D=>{let it=c?T(D):U(D);H&&N(H,it),D.stopPropagation(),c||D.preventDefault()},{passive:!1})})}hideElementVisually(O){Y(O,{borderWidth:0,backgroundColor:"transparent",cursor:"pointer",outline:"none",opacity:.001,filter:"alpha(opacity=1)",zIndex:999,overflow:"hidden",padding:0,margin:0,display:"block",position:"absolute","-ms-filter":"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)"})}getTargetPosition(){let O=this.target.click,H=O.element?O.element:O,z=this.target.visual||H,c=this.chart.renderTo,D=this.chart.pointer;if(c&&(z!=null&&z.getBoundingClientRect)&&D){let it=z.getBoundingClientRect(),Q=D.getChartPosition();return{x:(it.left-Q.left)/Q.scaleX,y:(it.top-Q.top)/Q.scaleY,width:it.right/Q.scaleX-it.left/Q.scaleX,height:it.bottom/Q.scaleY-it.top/Q.scaleY}}return{x:0,y:0,width:1,height:1}}getTargetAttr(O,H){return O.element?O.element.getAttribute(H):O.getAttribute(H)}}}),L(g,"Accessibility/ProxyProvider.js",[g["Core/Globals.js"],g["Core/Utilities.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/DOMElementProvider.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/ProxyElement.js"]],function(R,st,$,J,X,q){let{doc:Z}=R,{attr:Y,css:V}=st,{unhideChartElementFromAT:N}=$,{removeChildNodes:U}=X;return class{constructor(T){this.chart=T,this.domElementProvider=new J,this.groups={},this.groupOrder=[],this.beforeChartProxyPosContainer=this.createProxyPosContainer("before"),this.afterChartProxyPosContainer=this.createProxyPosContainer("after"),this.update()}addProxyElement(T,A,M="button",O){let H=this.groups[T];if(!H)throw Error("ProxyProvider.addProxyElement: Invalid group key "+T);let z=H.type==="ul"||H.type==="ol"?"li":void 0,c=new q(this.chart,A,M,z,O);return H.proxyContainerElement.appendChild(c.element),H.proxyElements.push(c),c}addGroup(T,A="div",M){let O,H=this.groups[T];if(H)return H.groupElement;let z=this.domElementProvider.createElement(A);return M&&M.role&&A!=="div"?(O=this.domElementProvider.createElement("div")).appendChild(z):O=z,O.className="highcharts-a11y-proxy-group highcharts-a11y-proxy-group-"+T.replace(/\W/g,"-"),this.groups[T]={proxyContainerElement:z,groupElement:O,type:A,proxyElements:[]},Y(O,M||{}),A==="ul"&&z.setAttribute("role","list"),this.afterChartProxyPosContainer.appendChild(O),this.updateGroupOrder(this.groupOrder),O}updateGroupAttrs(T,A){let M=this.groups[T];if(!M)throw Error("ProxyProvider.updateGroupAttrs: Invalid group key "+T);Y(M.groupElement,A)}updateGroupOrder(T){if(this.groupOrder=T.slice(),this.isDOMOrderGroupOrder())return;let A=T.indexOf("series"),M=A>-1?T.slice(0,A):T,O=A>-1?T.slice(A+1):[],H=Z.activeElement;["before","after"].forEach(z=>{let c=this[z==="before"?"beforeChartProxyPosContainer":"afterChartProxyPosContainer"];U(c),(z==="before"?M:O).forEach(D=>{let it=this.groups[D];it&&c.appendChild(it.groupElement)})}),(this.beforeChartProxyPosContainer.contains(H)||this.afterChartProxyPosContainer.contains(H))&&H&&H.focus&&H.focus()}clearGroup(T){let A=this.groups[T];if(!A)throw Error("ProxyProvider.clearGroup: Invalid group key "+T);U(A.proxyContainerElement)}removeGroup(T){let A=this.groups[T];A&&(this.domElementProvider.removeElement(A.groupElement),A.groupElement!==A.proxyContainerElement&&this.domElementProvider.removeElement(A.proxyContainerElement),delete this.groups[T])}update(){this.updatePosContainerPositions(),this.updateGroupOrder(this.groupOrder),this.updateProxyElementPositions()}updateProxyElementPositions(){Object.keys(this.groups).forEach(this.updateGroupProxyElementPositions.bind(this))}updateGroupProxyElementPositions(T){let A=this.groups[T];A&&A.proxyElements.forEach(M=>M.refreshPosition())}destroy(){this.domElementProvider.destroyCreatedElements()}createProxyPosContainer(T){let A=this.domElementProvider.createElement("div");return A.setAttribute("aria-hidden","false"),A.className="highcharts-a11y-proxy-container"+(T?"-"+T:""),V(A,{top:"0",left:"0"}),this.chart.styledMode||(A.style.whiteSpace="nowrap",A.style.position="absolute"),A}getCurrentGroupOrderInDOM(){let T=H=>{let z=Object.keys(this.groups),c=z.length;for(;c--;){let D=z[c],it=this.groups[D];if(it&&H===it.groupElement)return D}},A=H=>{let z=[],c=H.children;for(let D=0;DO==="series"||!!this.groups[O]),M=T.length;if(M!==A.length)return!1;for(;M--;)if(T[M]!==A[M])return!1;return!0}updatePosContainerPositions(){let T=this.chart;if(T.renderer.forExport)return;let A=T.renderer.box;T.container.insertBefore(this.afterChartProxyPosContainer,A.nextSibling),T.container.insertBefore(this.beforeChartProxyPosContainer,A),N(this.chart,this.afterChartProxyPosContainer),N(this.chart,this.beforeChartProxyPosContainer)}}}),L(g,"Accessibility/Components/RangeSelectorComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/Announcer.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{unhideChartElementFromAT:q,getAxisRangeDescription:Z}=$,{addEvent:Y,attr:V}=X;class N extends R{init(){let T=this.chart;this.announcer=new st(T,"polite")}onChartUpdate(){let T=this.chart,A=this,M=T.rangeSelector;M&&(this.updateSelectorVisibility(),this.setDropdownAttrs(),M.buttons&&M.buttons.length&&M.buttons.forEach(O=>{A.setRangeButtonAttrs(O)}),M.maxInput&&M.minInput&&["minInput","maxInput"].forEach(function(O,H){let z=M[O];z&&(q(T,z),A.setRangeInputAttrs(z,"accessibility.rangeSelector."+(H?"max":"min")+"InputLabel"))}))}updateSelectorVisibility(){let T=this.chart,A=T.rangeSelector,M=A&&A.dropdown,O=A&&A.buttons||[],H=z=>z.setAttribute("aria-hidden",!0);A&&A.hasVisibleDropdown&&M?(q(T,M),O.forEach(z=>H(z.element))):(M&&H(M),O.forEach(z=>q(T,z.element)))}setDropdownAttrs(){let T=this.chart,A=T.rangeSelector&&T.rangeSelector.dropdown;if(A){let M=T.langFormat("accessibility.rangeSelector.dropdownLabel",{rangeTitle:T.options.lang.rangeSelectorZoom});A.setAttribute("aria-label",M),A.setAttribute("tabindex",-1)}}setRangeButtonAttrs(T){V(T.element,{tabindex:-1,role:"button"})}setRangeInputAttrs(T,A){let M=this.chart;V(T,{tabindex:-1,"aria-label":M.langFormat(A,{chart:M})})}onButtonNavKbdArrowKey(T,A){let M=T.response,O=this.keyCodes,H=this.chart,z=H.options.accessibility.keyboardNavigation.wrapAround,c=A===O.left||A===O.up?-1:1;return H.highlightRangeSelectorButton(H.highlightedRangeSelectorItemIx+c)?M.success:z?(T.init(c),M.success):M[c>0?"next":"prev"]}onButtonNavKbdClick(T){let A=T.response,M=this.chart;return M.oldRangeSelectorItemState!==3&&this.fakeClickEvent(M.rangeSelector.buttons[M.highlightedRangeSelectorItemIx].element),A.success}onAfterBtnClick(){let T=this.chart,A=Z(T.xAxis[0]),M=T.langFormat("accessibility.rangeSelector.clickButtonAnnouncement",{chart:T,axisRangeDescription:A});M&&this.announcer.announce(M)}onInputKbdMove(T){let A=this.chart,M=A.rangeSelector,O=A.highlightedInputRangeIx=(A.highlightedInputRangeIx||0)+T;if(O>1||O<0){if(A.accessibility)return A.accessibility.keyboardNavigation.exiting=!0,A.accessibility.keyboardNavigation.tabindexContainer.focus(),A.accessibility.keyboardNavigation.move(T)}else if(M){let H=M[O?"maxDateBox":"minDateBox"],z=M[O?"maxInput":"minInput"];H&&z&&A.setFocusToElement(H,z)}return!0}onInputNavInit(T){let A=this,M=this.chart,O=T>0?0:1,H=M.rangeSelector,z=H&&H[O?"maxDateBox":"minDateBox"],c=H&&H.minInput,D=H&&H.maxInput;if(M.highlightedInputRangeIx=O,z&&c&&D){M.setFocusToElement(z,O?D:c),this.removeInputKeydownHandler&&this.removeInputKeydownHandler();let it=k=>{(k.which||k.keyCode)===this.keyCodes.tab&&A.onInputKbdMove(k.shiftKey?-1:1)&&(k.preventDefault(),k.stopPropagation())},Q=Y(c,"keydown",it),W=Y(D,"keydown",it);this.removeInputKeydownHandler=()=>{Q(),W()}}}onInputNavTerminate(){let T=this.chart.rangeSelector||{};T.maxInput&&T.hideInput("max"),T.minInput&&T.hideInput("min"),this.removeInputKeydownHandler&&(this.removeInputKeydownHandler(),delete this.removeInputKeydownHandler)}initDropdownNav(){let T=this.chart,A=T.rangeSelector,M=A&&A.dropdown;A&&M&&(T.setFocusToElement(A.buttonGroup,M),this.removeDropdownKeydownHandler&&this.removeDropdownKeydownHandler(),this.removeDropdownKeydownHandler=Y(M,"keydown",O=>{let H=(O.which||O.keyCode)===this.keyCodes.tab,z=T.accessibility;H&&(O.preventDefault(),O.stopPropagation(),z&&(z.keyboardNavigation.tabindexContainer.focus(),z.keyboardNavigation.move(O.shiftKey?-1:1)))}))}getRangeSelectorButtonNavigation(){let T=this.chart,A=this.keyCodes,M=this;return new J(T,{keyCodeMap:[[[A.left,A.right,A.up,A.down],function(O){return M.onButtonNavKbdArrowKey(this,O)}],[[A.enter,A.space],function(){return M.onButtonNavKbdClick(this)}]],validate:function(){return!!(T.rangeSelector&&T.rangeSelector.buttons&&T.rangeSelector.buttons.length)},init:function(O){let H=T.rangeSelector;if(H&&H.hasVisibleDropdown)M.initDropdownNav();else if(H){let z=H.buttons.length-1;T.highlightRangeSelectorButton(O>0?0:z)}},terminate:function(){M.removeDropdownKeydownHandler&&(M.removeDropdownKeydownHandler(),delete M.removeDropdownKeydownHandler)}})}getRangeSelectorInputNavigation(){let T=this.chart,A=this;return new J(T,{keyCodeMap:[],validate:function(){return!!(T.rangeSelector&&T.rangeSelector.inputGroup&&T.rangeSelector.inputGroup.element.style.visibility!=="hidden"&&T.options.rangeSelector.inputEnabled!==!1&&T.rangeSelector.minInput&&T.rangeSelector.maxInput)},init:function(M){A.onInputNavInit(M)},terminate:function(){A.onInputNavTerminate()}})}getKeyboardNavigation(){return[this.getRangeSelectorButtonNavigation(),this.getRangeSelectorInputNavigation()]}destroy(){this.removeDropdownKeydownHandler&&this.removeDropdownKeydownHandler(),this.removeInputKeydownHandler&&this.removeInputKeydownHandler(),this.announcer&&this.announcer.destroy()}}return function(U){function T(M){let O=this.rangeSelector&&this.rangeSelector.buttons||[],H=this.highlightedRangeSelectorItemIx,z=this.rangeSelector&&this.rangeSelector.selected;return H!==void 0&&O[H]&&H!==z&&O[H].setState(this.oldRangeSelectorItemState||0),this.highlightedRangeSelectorItemIx=M,!!O[M]&&(this.setFocusToElement(O[M].box,O[M].element),M!==z&&(this.oldRangeSelectorItemState=O[M].state,O[M].setState(1)),!0)}function A(){let M=this.chart.accessibility;if(M&&M.components.rangeSelector)return M.components.rangeSelector.onAfterBtnClick()}U.compose=function(M,O){let H=M.prototype;H.highlightRangeSelectorButton||(H.highlightRangeSelectorButton=T,Y(O,"afterBtnClick",A))}}(N||(N={})),N}),L(g,"Accessibility/Components/SeriesComponent/ForcedMarkers.js",[g["Core/Globals.js"],g["Core/Utilities.js"]],function(R,st){var $;let{composed:J}=R,{addEvent:X,merge:q,pushUnique:Z}=st;return function(Y){function V(H){q(!0,H,{marker:{enabled:!0,states:{normal:{opacity:0}}}})}function N(H){return H.marker.states&&H.marker.states.normal&&H.marker.states.normal.opacity}function U(H){return!!(H._hasPointMarkers&&H.points&&H.points.length)}function T(){this.chart.styledMode&&(this.markerGroup&&this.markerGroup[this.a11yMarkersForced?"addClass":"removeClass"]("highcharts-a11y-markers-hidden"),U(this)&&this.points.forEach(H=>{H.graphic&&(H.graphic[H.hasForcedA11yMarker?"addClass":"removeClass"]("highcharts-a11y-marker-hidden"),H.graphic[H.hasForcedA11yMarker===!1?"addClass":"removeClass"]("highcharts-a11y-marker-visible"))}))}function A(H){this.resetA11yMarkerOptions=q(H.options.marker||{},this.userOptions.marker||{})}function M(){let H=this.options;(function(z){let c=z.chart.options.accessibility.enabled,D=(z.options.accessibility&&z.options.accessibility.enabled)!==!1;return c&&D&&function(it){let Q=it.chart.options.accessibility;return it.points.length-1;C.highlightedPoint===this&&u!==l&&!I&&l&&l.focus&&l.focus()})}onDrillupAll(){let _,C=this.lastDrilledDownPoint,h=this.chart,l=C&&M(h,C.seriesName);C&&l&&U(C.x)&&U(C.y)&&(_=A(l,C.x,C.y)),_=_||D(h),h.container&&h.container.focus(),_&&_.highlight&&_.highlight(!1)}getKeyboardNavigationHandler(){let _=this,C=this.keyCodes,h=this.chart,l=h.inverted;return new q(h,{keyCodeMap:[[l?[C.up,C.down]:[C.left,C.right],function(u){return _.onKbdSideways(this,u)}],[l?[C.left,C.right]:[C.up,C.down],function(u){return _.onKbdVertical(this,u)}],[[C.enter,C.space],function(u,v){var S;let I=h.highlightedPoint;if(I){let{plotLeft:b,plotTop:K}=this.chart,{plotX:ct=0,plotY:et=0}=I;v=Mi(xr({},v),{chartX:b+ct,chartY:K+et,point:I,target:((S=I.graphic)==null?void 0:S.element)||v.target}),T(I.series,"click",v),I.firePointEvent("click",v)}return this.response.success}],[[C.home],function(){return Q(h),this.response.success}],[[C.end],function(){return it(h),this.response.success}],[[C.pageDown,C.pageUp],function(u){return h.highlightAdjacentSeries(u===C.pageDown),this.response.success}]],init:function(){return _.onHandlerInit(this)},validate:function(){return!!D(h)},terminate:function(){return _.onHandlerTerminate()}})}onKbdSideways(_,C){let h=this.keyCodes,l=C===h.right||C===h.down;return this.attemptHighlightAdjacentPoint(_,l)}onHandlerInit(_){let C=this.chart;return C.options.accessibility.keyboardNavigation.seriesNavigation.rememberPointFocus&&C.highlightedPoint?C.highlightedPoint.highlight():Q(C),_.response.success}onKbdVertical(_,C){let h=this.chart,l=this.keyCodes,u=C===l.down||C===l.right,v=h.options.accessibility.keyboardNavigation.seriesNavigation;if(v.mode&&v.mode==="serialize")return this.attemptHighlightAdjacentPoint(_,u);let I=h.highlightedPoint&&h.highlightedPoint.series.keyboardMoveVertical?"highlightAdjacentPointVertical":"highlightAdjacentSeries";return h[I](u),_.response.success}onHandlerTerminate(){let _=this.chart,C=_.options.accessibility.keyboardNavigation;_.tooltip&&_.tooltip.hide(0);let h=_.highlightedPoint&&_.highlightedPoint.series;h&&h.onMouseOut&&h.onMouseOut(),_.highlightedPoint&&_.highlightedPoint.onMouseOut&&_.highlightedPoint.onMouseOut(),C.seriesNavigation.rememberPointFocus||delete _.highlightedPoint}attemptHighlightAdjacentPoint(_,C){let h=this.chart,l=h.options.accessibility.keyboardNavigation.wrapAround;return h.highlightAdjacentPoint(C)||l&&(C?Q(h):it(h))?_.response.success:_.response[C?"next":"prev"]}onSeriesDestroy(_){let C=this.chart;C.highlightedPoint&&C.highlightedPoint.series===_&&(delete C.highlightedPoint,C.focusElement&&C.focusElement.removeFocusBorder())}destroy(){this.eventProvider.removeAddedEvents()}}return function(k){function _(v){let I,S,b=this.series,K=this.highlightedPoint,ct=K&&H(K)||0,et=K&&K.series.points||[],dt=this.series&&this.series[this.series.length-1],pt=dt&&dt.points&&dt.points[dt.points.length-1];if(!b[0]||!b[0].points)return!1;if(K){if(I=b[K.series.index+(v?1:-1)],(S=et[ct+(v?1:-1)])||!I||(S=I.points[v?0:I.points.length-1]),!S)return!1}else S=v?b[0].points[0]:pt;return c(S)?(z(I=S.series)?this.highlightedPoint=v?I.points[I.points.length-1]:I.points[0]:this.highlightedPoint=S,this.highlightAdjacentPoint(v)):S.highlight()}function C(v){let I=this.highlightedPoint,S=1/0,b;return!!(U(I.plotX)&&U(I.plotY))&&(this.series.forEach(K=>{z(K)||K.points.forEach(ct=>{if(!U(ct.plotY)||!U(ct.plotX)||ct===I)return;let et=ct.plotY-I.plotY,dt=Math.abs(ct.plotX-I.plotX),pt=Math.abs(et)*Math.abs(et)+dt*dt*4;K.yAxis&&K.yAxis.reversed&&(et*=-1),!(et<=0&&v||et>=0&&!v||pt<5||c(ct))&&pt!(U(j.plotX)&&U(j.plotY));if(!y(dt)){for(;x--;)!y(B=pt.points[x])&&(nt=(dt.plotX-B.plotX)*(dt.plotX-B.plotX)*4+(dt.plotY-B.plotY)*(dt.plotY-B.plotY)*1)=0;--K)if(!c(S[K]))return S[K].highlight()}return!1}k.compose=function(v,I,S){let b=v.prototype,K=I.prototype,ct=S.prototype;b.highlightAdjacentPoint||(b.highlightAdjacentPoint=_,b.highlightAdjacentPointVertical=C,b.highlightAdjacentSeries=h,K.highlight=l,ct.keyboardMoveVertical=!0,["column","gantt","pie"].forEach(et=>{V[et]&&(V[et].prototype.keyboardMoveVertical=!1)}),ct.highlightNextValidPoint=u)}}(W||(W={})),W}),L(g,"Accessibility/Components/SeriesComponent/SeriesComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Components/SeriesComponent/ForcedMarkers.js"],g["Accessibility/Components/SeriesComponent/NewDataAnnouncer.js"],g["Accessibility/Components/SeriesComponent/SeriesDescriber.js"],g["Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js"]],function(R,st,$,J,X,q){let{hideSeriesFromAT:Z}=st,{describeSeries:Y}=X;return class extends R{static compose(V,N,U){J.compose(U),$.compose(U),q.compose(V,N,U)}init(){this.newDataAnnouncer=new J(this.chart),this.newDataAnnouncer.init(),this.keyboardNavigation=new q(this.chart,this.keyCodes),this.keyboardNavigation.init(),this.hideTooltipFromATWhenShown(),this.hideSeriesLabelsFromATWhenShown()}hideTooltipFromATWhenShown(){let V=this;this.chart.tooltip&&this.addEvent(this.chart.tooltip.constructor,"refresh",function(){this.chart===V.chart&&this.label&&this.label.element&&this.label.element.setAttribute("aria-hidden",!0)})}hideSeriesLabelsFromATWhenShown(){this.addEvent(this.chart,"afterDrawSeriesLabels",function(){this.series.forEach(function(V){V.labelBySeries&&V.labelBySeries.attr("aria-hidden",!0)})})}onChartRender(){this.chart.series.forEach(function(V){(V.options.accessibility&&V.options.accessibility.enabled)!==!1&&V.visible&&V.getPointsCollection().length!==0?Y(V):Z(V)})}getKeyboardNavigation(){return this.keyboardNavigation.getKeyboardNavigationHandler()}destroy(){this.newDataAnnouncer.destroy(),this.keyboardNavigation.destroy()}}}),L(g,"Accessibility/Components/ZoomComponent.js",[g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Core/Utilities.js"]],function(R,st,$,J,X){let{unhideChartElementFromAT:q}=st,{getFakeMouseEvent:Z}=$,{attr:Y,pick:V}=X;return class extends R{constructor(){super(...arguments),this.focusedMapNavButtonIx=-1}init(){let N=this,U=this.chart;this.proxyProvider.addGroup("zoom","div"),["afterShowResetZoom","afterApplyDrilldown","drillupall"].forEach(T=>{N.addEvent(U,T,function(){N.updateProxyOverlays()})})}onChartUpdate(){let N=this.chart,U=this;N.mapNavigation&&N.mapNavigation.navButtons.forEach((T,A)=>{q(N,T.element),U.setMapNavButtonAttrs(T.element,"accessibility.zoom.mapZoom"+(A?"Out":"In"))})}setMapNavButtonAttrs(N,U){let T=this.chart;Y(N,{tabindex:-1,role:"button","aria-label":T.langFormat(U,{chart:T})})}onChartRender(){this.updateProxyOverlays()}updateProxyOverlays(){let N=this.chart;if(this.proxyProvider.clearGroup("zoom"),N.resetZoomButton&&this.createZoomProxyButton(N.resetZoomButton,"resetZoomProxyButton",N.langFormat("accessibility.zoom.resetZoomButton",{chart:N})),N.drillUpButton&&N.breadcrumbs&&N.breadcrumbs.list){let U=N.breadcrumbs.list[N.breadcrumbs.list.length-1];this.createZoomProxyButton(N.drillUpButton,"drillUpProxyButton",N.langFormat("accessibility.drillUpButton",{chart:N,buttonText:N.breadcrumbs.getButtonText(U)}))}}createZoomProxyButton(N,U,T){this[U]=this.proxyProvider.addProxyElement("zoom",{click:N},"button",{"aria-label":T,tabindex:-1})}getMapZoomNavigation(){let N=this.keyCodes,U=this.chart,T=this;return new J(U,{keyCodeMap:[[[N.up,N.down,N.left,N.right],function(A){return T.onMapKbdArrow(this,A)}],[[N.tab],function(A,M){return T.onMapKbdTab(this,M)}],[[N.space,N.enter],function(){return T.onMapKbdClick(this)}]],validate:function(){return!!(U.mapView&&U.mapNavigation&&U.mapNavigation.navButtons.length)},init:function(A){return T.onMapNavInit(A)}})}onMapKbdArrow(N,U){let T=this.chart,A=this.keyCodes,M=T.container,O=U===A.up||U===A.down,H=U===A.left||U===A.up?1:-1,z=(O?T.plotHeight:T.plotWidth)/10*H,c=10*Math.random(),D={x:M.offsetLeft+T.plotLeft+T.plotWidth/2+c,y:M.offsetTop+T.plotTop+T.plotHeight/2+c},it=O?{x:D.x,y:D.y+z}:{x:D.x+z,y:D.y};return[Z("mousedown",D),Z("mousemove",it),Z("mouseup",it)].forEach(Q=>M.dispatchEvent(Q)),N.response.success}onMapKbdTab(N,U){let T=this.chart,A=N.response,M=U.shiftKey,O=M&&!this.focusedMapNavButtonIx||!M&&this.focusedMapNavButtonIx;if(T.mapNavigation.navButtons[this.focusedMapNavButtonIx].setState(0),O)return T.mapView&&T.mapView.zoomBy(),A[M?"prev":"next"];this.focusedMapNavButtonIx+=M?-1:1;let H=T.mapNavigation.navButtons[this.focusedMapNavButtonIx];return T.setFocusToElement(H.box,H.element),H.setState(2),A.success}onMapKbdClick(N){let U=this.chart.mapNavigation.navButtons[this.focusedMapNavButtonIx].element;return this.fakeClickEvent(U),N.response.success}onMapNavInit(N){let U=this.chart,T=U.mapNavigation.navButtons[0],A=U.mapNavigation.navButtons[1],M=N>0?T:A;U.setFocusToElement(M.box,M.element),M.setState(2),this.focusedMapNavButtonIx=N>0?0:1}simpleButtonNavigation(N,U,T){let A=this.keyCodes,M=this,O=this.chart;return new J(O,{keyCodeMap:[[[A.tab,A.up,A.down,A.left,A.right],function(H,z){let c=H===A.tab&&z.shiftKey||H===A.left||H===A.up;return this.response[c?"prev":"next"]}],[[A.space,A.enter],function(){return V(T(this,O),this.response.success)}]],validate:function(){return O[N]&&O[N].box&&M[U].innerElement},init:function(){O.setFocusToElement(O[N].box,M[U].innerElement)}})}getKeyboardNavigation(){return[this.simpleButtonNavigation("resetZoomButton","resetZoomProxyButton",function(N,U){U.zoomOut()}),this.simpleButtonNavigation("drillUpButton","drillUpProxyButton",function(N,U){return U.drillUp(),N.response.prev}),this.getMapZoomNavigation()]}}}),L(g,"Accessibility/HighContrastMode.js",[g["Core/Globals.js"]],function(R){let{doc:st,isMS:$,win:J}=R;return{isHighContrastModeActive:function(){let X=/(Edg)/.test(J.navigator.userAgent);if(J.matchMedia&&X)return J.matchMedia("(-ms-high-contrast: active)").matches;if($&&J.getComputedStyle){let q=st.createElement("div");q.style.backgroundImage="url(data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)",st.body.appendChild(q);let Z=(q.currentStyle||J.getComputedStyle(q)).backgroundImage;return st.body.removeChild(q),Z==="none"}return J.matchMedia&&J.matchMedia("(forced-colors: active)").matches},setHighContrastTheme:function(X){var Y;X.highContrastModeActive=!0;let q=X.options.accessibility.highContrastTheme;X.update(q,!1);let Z=((Y=q.colors)==null?void 0:Y.length)>1;X.series.forEach(function(V){let N=q.plotOptions[V.type]||{},U=Z&&V.colorIndex!==void 0?q.colors[V.colorIndex]:N.color||"window",T={color:N.color||"windowText",colors:Z?q.colors:[N.color||"windowText"],borderColor:N.borderColor||"window",fillColor:U};V.update(T,!1),V.points&&V.points.forEach(function(A){A.options&&A.options.color&&A.update({color:N.color||"windowText",borderColor:N.borderColor||"window"},!1)})}),X.redraw()}}}),L(g,"Accessibility/HighContrastTheme.js",[],function(){return{chart:{backgroundColor:"window"},title:{style:{color:"windowText"}},subtitle:{style:{color:"windowText"}},colorAxis:{minColor:"windowText",maxColor:"windowText",stops:[],dataClasses:[]},colors:["windowText"],xAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},yAxis:{gridLineColor:"windowText",labels:{style:{color:"windowText"}},lineColor:"windowText",minorGridLineColor:"windowText",tickColor:"windowText",title:{style:{color:"windowText"}}},tooltip:{backgroundColor:"window",borderColor:"windowText",style:{color:"windowText"}},plotOptions:{series:{lineColor:"windowText",fillColor:"window",borderColor:"windowText",edgeColor:"windowText",borderWidth:1,dataLabels:{connectorColor:"windowText",color:"windowText",style:{color:"windowText",textOutline:"none"}},marker:{lineColor:"windowText",fillColor:"windowText"}},pie:{color:"window",colors:["window"],borderColor:"windowText",borderWidth:1},boxplot:{fillColor:"window"},candlestick:{lineColor:"windowText",fillColor:"window"},errorbar:{fillColor:"window"}},legend:{backgroundColor:"window",itemStyle:{color:"windowText"},itemHoverStyle:{color:"windowText"},itemHiddenStyle:{color:"#555"},title:{style:{color:"windowText"}}},credits:{style:{color:"windowText"}},drilldown:{activeAxisLabelStyle:{color:"windowText"},activeDataLabelStyle:{color:"windowText"}},navigation:{buttonOptions:{symbolStroke:"windowText",theme:{fill:"window"}}},rangeSelector:{buttonTheme:{fill:"window",stroke:"windowText",style:{color:"windowText"},states:{hover:{fill:"window",stroke:"windowText",style:{color:"windowText"}},select:{fill:"#444",stroke:"windowText",style:{color:"windowText"}}}},inputBoxBorderColor:"windowText",inputStyle:{backgroundColor:"window",color:"windowText"},labelStyle:{color:"windowText"}},navigator:{handles:{backgroundColor:"window",borderColor:"windowText"},outlineColor:"windowText",maskFill:"transparent",series:{color:"windowText",lineColor:"windowText"},xAxis:{gridLineColor:"windowText"}},scrollbar:{barBackgroundColor:"#444",barBorderColor:"windowText",buttonArrowColor:"windowText",buttonBackgroundColor:"window",buttonBorderColor:"windowText",rifleColor:"windowText",trackBackgroundColor:"window",trackBorderColor:"windowText"}}}),L(g,"Accessibility/Options/A11yDefaults.js",[],function(){return{accessibility:{enabled:!0,screenReaderSection:{beforeChartFormat:"<{headingTagName}>{chartTitle}
    {typeDescription}
    {chartSubtitle}
    {chartLongdesc}
    {playAsSoundButton}
    {viewTableButton}
    {xAxisDescription}
    {yAxisDescription}
    {annotationsTitle}{annotationsList}
    ",afterChartFormat:"{endOfChartMarker}",axisRangeDateFormat:"%Y-%m-%d %H:%M:%S"},series:{descriptionFormat:"{seriesDescription}{authorDescription}{axisDescription}",describeSingleSeries:!1,pointDescriptionEnabledThreshold:200},point:{valueDescriptionFormat:"{xDescription}{separator}{value}.",describeNull:!0},landmarkVerbosity:"all",linkedDescription:'*[data-highcharts-chart="{index}"] + .highcharts-description',highContrastMode:"auto",keyboardNavigation:{enabled:!0,focusBorder:{enabled:!0,hideBrowserFocusOutline:!0,style:{color:"#334eff",lineWidth:2,borderRadius:3},margin:2},order:["series","zoom","rangeSelector","navigator","legend","chartMenu"],wrapAround:!0,seriesNavigation:{skipNullPoints:!0,pointNavigationEnabledThreshold:!1,rememberPointFocus:!1}},announceNewData:{enabled:!1,minAnnounceInterval:5e3,interruptUser:!1}},legend:{accessibility:{enabled:!0,keyboardNavigation:{enabled:!0}}},exporting:{accessibility:{enabled:!0}},navigator:{accessibility:{enabled:!0}}}}),L(g,"Accessibility/Options/LangDefaults.js",[],function(){return{accessibility:{defaultChartTitle:"Chart",chartContainerLabel:"{title}. Highcharts interactive chart.",svgContainerLabel:"Interactive chart",drillUpButton:"{buttonText}",credits:"Chart credits: {creditsStr}",thousandsSep:",",svgContainerTitle:"",graphicContainerLabel:"",screenReaderSection:{beforeRegionLabel:"",afterRegionLabel:"",annotations:{heading:"Chart annotations summary",descriptionSinglePoint:"{annotationText}. Related to {annotationPoint}",descriptionMultiplePoints:"{annotationText}. Related to {annotationPoint}{#each additionalAnnotationPoints}, also related to {this}{/each}",descriptionNoPoints:"{annotationText}"},endOfChartMarker:"End of interactive chart."},sonification:{playAsSoundButtonText:"Play as sound, {chartTitle}",playAsSoundClickAnnouncement:"Play"},legend:{legendLabelNoTitle:"Toggle series visibility, {chartTitle}",legendLabel:"Chart legend: {legendTitle}",legendItem:"Show {itemName}"},zoom:{mapZoomIn:"Zoom chart",mapZoomOut:"Zoom out chart",resetZoomButton:"Reset zoom"},rangeSelector:{dropdownLabel:"{rangeTitle}",minInputLabel:"Select start date.",maxInputLabel:"Select end date.",clickButtonAnnouncement:"Viewing {axisRangeDescription}"},navigator:{handleLabel:"{#eq handleIx 0}Start, percent{else}End, percent{/eq}",groupLabel:"Axis zoom",changeAnnouncement:"{axisRangeDescription}"},table:{viewAsDataTableButtonText:"View as data table, {chartTitle}",tableSummary:"Table representation of chart."},announceNewData:{newDataAnnounce:"Updated data for chart {chartTitle}",newSeriesAnnounceSingle:"New data series: {seriesDesc}",newPointAnnounceSingle:"New data point: {pointDesc}",newSeriesAnnounceMultiple:"New data series in chart {chartTitle}: {seriesDesc}",newPointAnnounceMultiple:"New data point in chart {chartTitle}: {pointDesc}"},seriesTypeDescriptions:{boxplot:"Box plot charts are typically used to display groups of statistical data. Each data point in the chart can have up to 5 values: minimum, lower quartile, median, upper quartile, and maximum.",arearange:"Arearange charts are line charts displaying a range between a lower and higher value for each point.",areasplinerange:"These charts are line charts displaying a range between a lower and higher value for each point.",bubble:"Bubble charts are scatter charts where each data point also has a size value.",columnrange:"Columnrange charts are column charts displaying a range between a lower and higher value for each point.",errorbar:"Errorbar series are used to display the variability of the data.",funnel:"Funnel charts are used to display reduction of data in stages.",pyramid:"Pyramid charts consist of a single pyramid with item heights corresponding to each point value.",waterfall:"A waterfall chart is a column chart where each column contributes towards a total end value."},chartTypes:{emptyChart:"Empty chart",mapTypeDescription:"Map of {mapTitle} with {numSeries} data series.",unknownMap:"Map of unspecified region with {numSeries} data series.",combinationChart:"Combination chart with {numSeries} data series.",defaultSingle:"Chart with {numPoints} data {#eq numPoints 1}point{else}points{/eq}.",defaultMultiple:"Chart with {numSeries} data series.",splineSingle:"Line chart with {numPoints} data {#eq numPoints 1}point{else}points{/eq}.",splineMultiple:"Line chart with {numSeries} lines.",lineSingle:"Line chart with {numPoints} data {#eq numPoints 1}point{else}points{/eq}.",lineMultiple:"Line chart with {numSeries} lines.",columnSingle:"Bar chart with {numPoints} {#eq numPoints 1}bar{else}bars{/eq}.",columnMultiple:"Bar chart with {numSeries} data series.",barSingle:"Bar chart with {numPoints} {#eq numPoints 1}bar{else}bars{/eq}.",barMultiple:"Bar chart with {numSeries} data series.",pieSingle:"Pie chart with {numPoints} {#eq numPoints 1}slice{else}slices{/eq}.",pieMultiple:"Pie chart with {numSeries} pies.",scatterSingle:"Scatter chart with {numPoints} {#eq numPoints 1}point{else}points{/eq}.",scatterMultiple:"Scatter chart with {numSeries} data series.",boxplotSingle:"Boxplot with {numPoints} {#eq numPoints 1}box{else}boxes{/eq}.",boxplotMultiple:"Boxplot with {numSeries} data series.",bubbleSingle:"Bubble chart with {numPoints} {#eq numPoints 1}bubbles{else}bubble{/eq}.",bubbleMultiple:"Bubble chart with {numSeries} data series."},axis:{xAxisDescriptionSingular:"The chart has 1 X axis displaying {names[0]}. {ranges[0]}",xAxisDescriptionPlural:"The chart has {numAxes} X axes displaying {#each names}{#unless @first},{/unless}{#if @last} and{/if} {this}{/each}.",yAxisDescriptionSingular:"The chart has 1 Y axis displaying {names[0]}. {ranges[0]}",yAxisDescriptionPlural:"The chart has {numAxes} Y axes displaying {#each names}{#unless @first},{/unless}{#if @last} and{/if} {this}{/each}.",timeRangeDays:"Data range: {range} days.",timeRangeHours:"Data range: {range} hours.",timeRangeMinutes:"Data range: {range} minutes.",timeRangeSeconds:"Data range: {range} seconds.",rangeFromTo:"Data ranges from {rangeFrom} to {rangeTo}.",rangeCategories:"Data range: {numCategories} categories."},exporting:{chartMenuLabel:"Chart menu",menuButtonLabel:"View chart menu, {chartTitle}"},series:{summary:{default:"{series.name}, series {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",defaultCombination:"{series.name}, series {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",line:"{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",lineCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",spline:"{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",splineCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",column:"{series.name}, bar series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",columnCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bar series with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",bar:"{series.name}, bar series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",barCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bar series with {series.points.length} {#eq series.points.length 1}bar{else}bars{/eq}.",pie:"{series.name}, pie {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}slice{else}slices{/eq}.",pieCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Pie with {series.points.length} {#eq series.points.length 1}slice{else}slices{/eq}.",scatter:"{series.name}, scatter plot {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}point{else}points{/eq}.",scatterCombination:"{series.name}, series {seriesNumber} of {chart.series.length}, scatter plot with {series.points.length} {#eq series.points.length 1}point{else}points{/eq}.",boxplot:"{series.name}, boxplot {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}box{else}boxes{/eq}.",boxplotCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Boxplot with {series.points.length} {#eq series.points.length 1}box{else}boxes{/eq}.",bubble:"{series.name}, bubble series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}.",bubbleCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bubble series with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}.",map:"{series.name}, map {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}area{else}areas{/eq}.",mapCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Map with {series.points.length} {#eq series.points.length 1}area{else}areas{/eq}.",mapline:"{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",maplineCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#eq series.points.length 1}point{else}points{/eq}.",mapbubble:"{series.name}, bubble series {seriesNumber} of {chart.series.length} with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}.",mapbubbleCombination:"{series.name}, series {seriesNumber} of {chart.series.length}. Bubble series with {series.points.length} {#eq series.points.length 1}bubble{else}bubbles{/eq}."},description:"{description}",xAxisDescription:"X axis, {name}",yAxisDescription:"Y axis, {name}",nullPointValue:"No value",pointAnnotationsDescription:"{#each annotations}Annotation: {this}{/each}"}}}}),L(g,"Accessibility/Options/DeprecatedOptions.js",[g["Core/Utilities.js"]],function(R){let{error:st,pick:$}=R;function J(q,Z,Y){let V=q,N,U=0;for(;Ub!=="series")):Object.keys(this.components):[]}update(){let b=this.components,K=this.chart,ct=K.options.accessibility;l(K,"beforeA11yUpdate"),K.types=this.getChartTypes();let et=ct.keyboardNavigation.order;this.proxyProvider.updateGroupOrder(et),this.getComponentOrder().forEach(function(dt){b[dt].onChartUpdate(),l(K,"afterA11yComponentUpdate",{name:dt,component:b[dt]})}),this.keyboardNavigation.update(et),!K.highContrastModeActive&&ct.highContrastMode!==!1&&(c.isHighContrastModeActive()||ct.highContrastMode===!0)&&c.setHighContrastTheme(K),l(K,"afterA11yUpdate",{accessibility:this})}destroy(){let b=this.chart||{},K=this.components;Object.keys(K).forEach(function(ct){K[ct].destroy(),K[ct].destroyBase()}),this.proxyProvider&&this.proxyProvider.destroy(),b.announcerContainer&&v(b.announcerContainer),this.keyboardNavigation&&this.keyboardNavigation.destroy(),b.renderTo&&b.renderTo.setAttribute("aria-hidden",!0),b.focusElement&&b.focusElement.removeFocusBorder()}getChartTypes(){let b={};return this.chart.series.forEach(function(K){b[K.type]=1}),Object.keys(b)}}return function(S){function b(){this.accessibility&&this.accessibility.destroy()}function K(){this.a11yDirty&&this.renderTo&&(delete this.a11yDirty,this.updateA11yEnabled());let pt=this.accessibility;pt&&!pt.zombie&&(pt.proxyProvider.updateProxyElementPositions(),pt.getComponentOrder().forEach(function(bt){pt.components[bt].onChartRender()}))}function ct(pt){let bt=pt.options.accessibility;bt&&(bt.customComponents&&(this.options.accessibility.customComponents=bt.customComponents,delete bt.customComponents),u(!0,this.options.accessibility,bt),this.accessibility&&this.accessibility.destroy&&(this.accessibility.destroy(),delete this.accessibility)),this.a11yDirty=!0}function et(){let pt=this.accessibility,bt=this.options.accessibility,Mt=this.renderer.boxWrapper.element,w=this.title;if(bt&&bt.enabled)pt&&!pt.zombie?pt.update():(this.accessibility=pt=new S(this),pt&&!pt.zombie&&pt.update(),Mt.getAttribute("role")==="img"&&Mt.removeAttribute("role"));else if(pt)pt.destroy&&pt.destroy(),delete this.accessibility;else{this.renderTo.setAttribute("role","img"),this.renderTo.setAttribute("aria-hidden",!1),this.renderTo.setAttribute("aria-label",(w&&w.element.textContent||"").replace(/{C(pt,x,function(){this.a11yDirty=!0})}),["afterApplyDrilldown","drillupall"].forEach(x=>{C(pt,x,function(){let y=this.accessibility;y&&!y.zombie&&y.update()})}),C(Mt,"update",dt),["update","updatedData","remove"].forEach(x=>{C(w,x,function(){this.chart.accessibility&&(this.chart.a11yDirty=!0)})}))}}(I||(I={})),u(!0,k,it,{accessibility:{highContrastTheme:D},lang:Q}),I}),L(g,"masters/modules/accessibility.src.js",[g["Core/Globals.js"],g["Accessibility/Accessibility.js"],g["Accessibility/AccessibilityComponent.js"],g["Accessibility/Utils/ChartUtilities.js"],g["Accessibility/Utils/HTMLUtilities.js"],g["Accessibility/KeyboardNavigationHandler.js"],g["Accessibility/Components/SeriesComponent/SeriesDescriber.js"]],function(R,st,$,J,X,q,Z){return R.i18nFormat=st.i18nFormat,R.A11yChartUtilities=J,R.A11yHTMLUtilities=X,R.AccessibilityComponent=$,R.KeyboardNavigationHandler=q,R.SeriesAccessibilityDescriber=Z,st.compose(R.Chart,R.Legend,R.Point,R.Series,R.SVGElement,R.RangeSelector),R})})},5705:yr=>{"use strict";var Oe=function(xt,F,Pt,d,g,L,R,st){if(!xt){var $;if(F===void 0)$=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var J=[Pt,d,g,L,R,st],X=0;$=new Error(F.replace(/%s/g,function(){return J[X++]})),$.name="Invariant Violation"}throw $.framesToPop=1,$}};yr.exports=Oe},7967:(yr,Oe,xt)=>{var F="Expected a function",Pt=NaN,d="[object Symbol]",g=/^\s+|\s+$/g,L=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,st=/^0o[0-7]+$/i,$=parseInt,J=typeof xt.g=="object"&&xt.g&&xt.g.Object===Object&&xt.g,X=typeof self=="object"&&self&&self.Object===Object&&self,q=J||X||Function("return this")(),Z=Object.prototype,Y=Z.toString,V=Math.max,N=Math.min,U=function(){return q.Date.now()};function T(z,c,D){var it,Q,W,k,_,C,h=0,l=!1,u=!1,v=!0;if(typeof z!="function")throw new TypeError(F);c=H(c)||0,A(D)&&(l=!!D.leading,u="maxWait"in D,W=u?V(H(D.maxWait)||0,c):W,v="trailing"in D?!!D.trailing:v);function I(Mt){var w=it,B=Q;return it=Q=void 0,h=Mt,k=z.apply(B,w),k}function S(Mt){return h=Mt,_=setTimeout(ct,c),l?I(Mt):k}function b(Mt){var w=Mt-C,B=Mt-h,tt=c-w;return u?N(tt,W-B):tt}function K(Mt){var w=Mt-C,B=Mt-h;return C===void 0||w>=c||w<0||u&&B>=W}function ct(){var Mt=U();if(K(Mt))return et(Mt);_=setTimeout(ct,b(Mt))}function et(Mt){return _=void 0,v&&it?I(Mt):(it=Q=void 0,k)}function dt(){_!==void 0&&clearTimeout(_),h=0,it=C=Q=_=void 0}function pt(){return _===void 0?k:et(U())}function bt(){var Mt=U(),w=K(Mt);if(it=arguments,Q=this,C=Mt,w){if(_===void 0)return S(C);if(u)return _=setTimeout(ct,c),I(C)}return _===void 0&&(_=setTimeout(ct,c)),k}return bt.cancel=dt,bt.flush=pt,bt}function A(z){var c=typeof z;return!!z&&(c=="object"||c=="function")}function M(z){return!!z&&typeof z=="object"}function O(z){return typeof z=="symbol"||M(z)&&Y.call(z)==d}function H(z){if(typeof z=="number")return z;if(O(z))return Pt;if(A(z)){var c=typeof z.valueOf=="function"?z.valueOf():z;z=A(c)?c+"":c}if(typeof z!="string")return z===0?z:+z;z=z.replace(g,"");var D=R.test(z);return D||st.test(z)?$(z.slice(2),D?2:8):L.test(z)?Pt:+z}yr.exports=T},628:(yr,Oe,xt)=>{"use strict";var F=xt(4067);function Pt(){}function d(){}d.resetWarningCache=Pt,yr.exports=function(){function g(st,$,J,X,q,Z){if(Z!==F){var Y=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw Y.name="Invariant Violation",Y}}g.isRequired=g;function L(){return g}var R={array:g,bigint:g,bool:g,func:g,number:g,object:g,string:g,symbol:g,any:g,arrayOf:L,element:g,elementType:g,instanceOf:L,node:g,objectOf:L,oneOf:L,oneOfType:L,shape:L,exact:L,checkPropTypes:d,resetWarningCache:Pt};return R.PropTypes=R,R}},5826:(yr,Oe,xt)=>{if(0)var F,Pt;else yr.exports=xt(628)()},4067:yr=>{"use strict";var Oe="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";yr.exports=Oe},1363:(yr,Oe,xt)=>{"use strict";/** * @license React * react-dom-server-legacy.browser.production.min.js * @@ -338,13 +338,13 @@ var fq=Object.defineProperty,dq=Object.defineProperties;var pq=Object.getOwnProp * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var j=xt(7810);function Pt(te){for(var Me="https://reactjs.org/docs/error-decoder.html?invariant="+te,$e=1;$e