marketplacepos 3.2.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/Marketplace/3rdpartylicenses.txt +202 -187
  2. package/Marketplace/chunk-2KQ4WEPD.js +1 -0
  3. package/Marketplace/chunk-2OB3TW2H.js +4 -0
  4. package/Marketplace/chunk-3ICHEZSE.js +1 -0
  5. package/Marketplace/chunk-3TM7EKQZ.js +1 -0
  6. package/Marketplace/chunk-45IJGKR3.js +1 -0
  7. package/Marketplace/chunk-4O5EV6W4.js +1 -0
  8. package/Marketplace/chunk-5DS4AFTV.js +1 -0
  9. package/Marketplace/chunk-5DVM7TJ7.js +5 -0
  10. package/Marketplace/chunk-5JZJC54P.js +2 -0
  11. package/Marketplace/chunk-67YIEWYV.js +1 -0
  12. package/Marketplace/chunk-7DXQ5BDE.js +1 -0
  13. package/Marketplace/chunk-7RCRNZNI.js +1 -0
  14. package/Marketplace/chunk-7Y73MGEU.js +1 -0
  15. package/Marketplace/chunk-AIZ2SLGZ.js +5 -0
  16. package/Marketplace/chunk-B4RPQGTA.js +1 -0
  17. package/Marketplace/chunk-BELWZRNY.js +1 -0
  18. package/Marketplace/chunk-BYDOIRDD.js +1 -0
  19. package/Marketplace/chunk-CS64SQAA.js +1 -0
  20. package/Marketplace/chunk-CWG6UUW5.js +1 -0
  21. package/Marketplace/chunk-DBEZLCZM.js +1 -0
  22. package/Marketplace/chunk-ECB4VT3U.js +1 -0
  23. package/Marketplace/chunk-FWCMOK42.js +8 -0
  24. package/Marketplace/chunk-G5D7W2T3.js +2 -0
  25. package/Marketplace/chunk-GD6CRVOV.js +1 -0
  26. package/Marketplace/chunk-GFW452UY.js +1 -0
  27. package/Marketplace/chunk-GIFWICGN.js +2 -0
  28. package/Marketplace/chunk-GMALFTAY.js +1 -0
  29. package/Marketplace/chunk-H7KLY4IB.js +1 -0
  30. package/Marketplace/chunk-HWOBJ4Z3.js +1 -0
  31. package/Marketplace/chunk-I4V2RPID.js +1 -0
  32. package/Marketplace/chunk-IJIIMLQ7.js +1 -0
  33. package/Marketplace/chunk-ISBEY2N5.js +1 -0
  34. package/Marketplace/chunk-KEKROO5B.js +1 -0
  35. package/Marketplace/chunk-KX7WACSK.js +1 -0
  36. package/Marketplace/chunk-LJ6J4EIT.js +1 -0
  37. package/Marketplace/chunk-LKSBRXCX.js +1 -0
  38. package/Marketplace/chunk-MA4ZKUP6.js +4 -0
  39. package/Marketplace/chunk-MORUNYG3.js +6 -0
  40. package/Marketplace/chunk-MRWTB7OG.js +8 -0
  41. package/Marketplace/chunk-N76YHCQ6.js +1 -0
  42. package/Marketplace/chunk-NZBQKND7.js +1 -0
  43. package/Marketplace/chunk-O3V3GTIM.js +1 -0
  44. package/Marketplace/chunk-PJQTGT4K.js +1 -0
  45. package/Marketplace/chunk-PQGHN52M.js +1 -0
  46. package/Marketplace/chunk-Q7FH7Z7R.js +1 -0
  47. package/Marketplace/chunk-QK2PM3OO.js +2 -0
  48. package/Marketplace/chunk-QKVTZKIC.js +3 -0
  49. package/Marketplace/chunk-RFTG6MKX.js +1 -0
  50. package/Marketplace/chunk-S65ISV4X.js +5 -0
  51. package/Marketplace/chunk-SKA4KCAB.js +1 -0
  52. package/Marketplace/chunk-SWQXA73A.js +1 -0
  53. package/Marketplace/chunk-T6XRWLCZ.js +1 -0
  54. package/Marketplace/chunk-TBY7FO23.js +3 -0
  55. package/Marketplace/chunk-TJRQ2WWD.js +1 -0
  56. package/Marketplace/chunk-TMUAQXEK.js +1 -0
  57. package/Marketplace/chunk-TNVZKPJP.js +1 -0
  58. package/Marketplace/chunk-TQ6UUVH3.js +1 -0
  59. package/Marketplace/chunk-TT7NBZMD.js +1 -0
  60. package/Marketplace/chunk-UNZLFKB2.js +1 -0
  61. package/Marketplace/chunk-VIJ5HUKS.js +1 -0
  62. package/Marketplace/chunk-VRSV5O5R.js +1 -0
  63. package/Marketplace/chunk-VTFOZMLI.js +1 -0
  64. package/Marketplace/chunk-WBI4ZM2X.js +1 -0
  65. package/Marketplace/chunk-WYMCYQCR.js +1 -0
  66. package/Marketplace/chunk-XWIBRKIY.js +5 -0
  67. package/Marketplace/chunk-YQEEQRFM.js +2 -0
  68. package/Marketplace/chunk-YQXKX6O7.js +7 -0
  69. package/Marketplace/chunk-YWVMHX45.js +1 -0
  70. package/Marketplace/chunk-Z2ABDS6L.js +1 -0
  71. package/Marketplace/index.html +2 -2
  72. package/Marketplace/main-B2AQI7UJ.js +1 -0
  73. package/Marketplace/polyfills-KQQO3SZT.js +2 -0
  74. package/Marketplace/scripts-M46NWPTC.js +5 -0
  75. package/Marketplace/styles-WZSIIWL7.css +1 -0
  76. package/package.json +1 -1
  77. package/Marketplace/103.bc1f4c51ca99f04f.js +0 -1
  78. package/Marketplace/168.50d66b17241a3765.js +0 -1
  79. package/Marketplace/231.0c7ab993977632a2.js +0 -1
  80. package/Marketplace/257.d1592e885695ba4b.js +0 -1
  81. package/Marketplace/278.e89610409641d910.js +0 -1
  82. package/Marketplace/296.93310f70e5f9d3a9.js +0 -1
  83. package/Marketplace/311.afcc0c4a03ea0076.js +0 -1
  84. package/Marketplace/389.02d8fd64069d0119.js +0 -1
  85. package/Marketplace/394.11ae606578598904.js +0 -1
  86. package/Marketplace/445.cbf341bc0afe3ffc.js +0 -1
  87. package/Marketplace/452.58ce3ef12b9b5a47.js +0 -1
  88. package/Marketplace/476.d08ef7b92327904d.js +0 -1
  89. package/Marketplace/478.a63c640a3e971a16.js +0 -1
  90. package/Marketplace/500.c2e6963e4771761e.js +0 -1
  91. package/Marketplace/527.984c24771dbd0f8e.js +0 -1
  92. package/Marketplace/556.5d624cfb73f161b2.js +0 -1
  93. package/Marketplace/56.0432dfcbb3e04e39.js +0 -1
  94. package/Marketplace/599.8de0c2b4c7af0f9d.js +0 -1
  95. package/Marketplace/609.0e0a820d30efd4d4.js +0 -1
  96. package/Marketplace/617.4db1b737553fe58b.js +0 -1
  97. package/Marketplace/62.4f9a8ca2692bdd97.js +0 -1
  98. package/Marketplace/687.1fb4b2602d2b185a.js +0 -1
  99. package/Marketplace/699.d68a917277dbe11a.js +0 -1
  100. package/Marketplace/700.755c54d915bd281e.js +0 -1
  101. package/Marketplace/726.40535ee28a35e978.js +0 -1
  102. package/Marketplace/806.4037f673990a5242.js +0 -1
  103. package/Marketplace/810.629a800ca97725b7.js +0 -1
  104. package/Marketplace/877.bbdea3b04cc75780.js +0 -1
  105. package/Marketplace/900.b7de175b628a8dbe.js +0 -1
  106. package/Marketplace/967.2b39f548c7f4eb30.js +0 -1
  107. package/Marketplace/common.2cffc11d42ed963f.js +0 -1
  108. package/Marketplace/main.892c697dc9030f18.js +0 -1
  109. package/Marketplace/polyfills.503b3f4bf922d237.js +0 -1
  110. package/Marketplace/runtime.a3441aa39d1419eb.js +0 -1
  111. package/Marketplace/scripts.0d34bffadb54993a.js +0 -1
  112. package/Marketplace/styles.095460a0131dd2fc.css +0 -19
@@ -1 +0,0 @@
1
- (self.webpackChunkpos_marketplace=self.webpackChunkpos_marketplace||[]).push([[389],{6389:(Ot,Lt,St)=>{"use strict";St.r(Lt),St.d(Lt,{DashboardModule:()=>e});var Tt=St(6814),At=St(1845),ct=St(7081),F=St(7398),_=St(754),Y=St(5802),A=St(5879),et=St(851);class J{constructor(t){this.Chart=t.Chart,this.PerformanceChannel=t.PerformanceChannel,this.lineChartOptions=this.generateLineChartOptions(),this.pieChartOptions=this.generatePieChartOptions()}generateLineChartOptions(){let t=0;return{chart:{type:"spline",inverted:!1},credits:{enabled:!1},yAxis:{title:{text:""}},xAxis:{categories:this.Chart.XAxis,labels:{style:{fontSize:"10px"}}},title:{text:""},legend:{itemMarginTop:2,itemMarginBottom:2,itemStyle:{fontSize:"10px"}},tooltip:{pointFormatter:function(){return'<span style="color:'+this.color+'">\u25cf</span> '+this.series.name+": <b>"+At.numberFormat(this.y,0,",",".")+" IDR</b><br/>"}},series:this.Chart.Area.filter(l=>(t=0,l?.Data.forEach(s=>{0==s&&(t+=1)}),t!=l.Data.length)).map(l=>({name:l.Name,data:l.Data,type:"spline",color:Y.g.getCssChannelColor(l.TypeID)}))}}generatePieChartOptions(){return{credits:{enabled:!1},title:{text:""},legend:{itemMarginTop:2,itemMarginBottom:2,itemStyle:{fontSize:"10px"}},plotOptions:{pie:{allowPointSelect:!0,cursor:"pointer",dataLabels:{enabled:!0,format:"<b>{point.name}</b>: {point.y} Orders"},showInLegend:!0}},series:[{type:"pie",name:"Total",data:this.Chart.Pie.filter(o=>o.Order>0).map(o=>({name:o.Name,y:o.Order,color:Y.g.getCssChannelColor(o.TypeID)}))}]}}}var $=St(9862);let Z=(()=>{var h;class t{constructor(l){this.http=l}getDashboardData(l){return this.http.post("/api/dashboard/GetDashboardData",{range:l.range,type:l.type}).pipe((0,F.U)(w=>new J(w)))}getChannelShortcuts(){return[{name:"Tokopedia",class:"btn-tokopedia",typeId:_.x.Tokopedia,campaign:"https://seller.tokopedia.com/promo",chat:"https://seller.tokopedia.com/chat",logo:et.$.TOKOPEDIA,sellerCenter:"https://seller.tokopedia.com"},{name:"Shopee",class:"btn-shopee",typeId:_.x.ShopeeV2,campaign:"https://seller.shopee.co.id/portal/marketing",chat:"https://seller.shopee.co.id/webchat/conversations",logo:et.$.SHOOPE,sellerCenter:"https://seller.shopee.co.id/"},{name:"Tiktok",class:"btn-tiktok",typeId:_.x.Tiktok,campaign:"https://seller-id.tiktok.com",chat:"https://seller-id.tiktok.com/chat?lang=id-ID&from=seller_center_navigation_im",logo:et.$.TIKTOK,sellerCenter:"https://seller-id.tiktok.com"},{name:"Lazada",class:"btn-lazada",typeId:_.x.Lazada,campaign:"https://sellercenter.lazada.co.id/apps/promotion/home?",chat:"https://sellercenter.lazada.co.id/apps/im/chat",logo:et.$.LAZADA,sellerCenter:"https://sellercenter.lazada.co.id"}]}}return(h=t).\u0275fac=function(l){return new(l||h)(A.LFG($.eN))},h.\u0275prov=A.Yz7({token:h,factory:h.\u0275fac}),t})();var z=St(9790),j=St(4387),O=St(6223);let m=(()=>{class h{constructor(o,l){this.el=o,this._zone=l,this.updateChange=new A.vpe(!0),this.chartInstance=new A.vpe}ngOnChanges(o){const l=o.update&&o.update.currentValue;(o.options||l)&&(this.wrappedUpdateOrCreateChart(),l&&this.updateChange.emit(!1))}wrappedUpdateOrCreateChart(){this.runOutsideAngular?this._zone.runOutsideAngular(()=>{this.updateOrCreateChart()}):this.updateOrCreateChart()}updateOrCreateChart(){this.chart&&this.chart.update?this.chart.update(this.options,!0,this.oneToOne||!1):(this.chart=this.Highcharts[this.constructorType||"chart"](this.el.nativeElement,this.options,this.callbackFunction||null),this.chartInstance.emit(this.chart))}ngOnDestroy(){this.chart&&(this.chart.destroy(),this.chart=null)}}return h.\u0275fac=function(o){return new(o||h)(A.Y36(A.SBq),A.Y36(A.R0b))},h.\u0275cmp=A.Xpm({type:h,selectors:[["highcharts-chart"]],inputs:{Highcharts:"Highcharts",constructorType:"constructorType",callbackFunction:"callbackFunction",oneToOne:"oneToOne",runOutsideAngular:"runOutsideAngular",options:"options",update:"update"},outputs:{updateChange:"updateChange",chartInstance:"chartInstance"},features:[A.TTD],decls:0,vars:0,template:function(o,l){},encapsulation:2}),h})(),g=(()=>{class h{}return h.\u0275fac=function(o){return new(o||h)},h.\u0275mod=A.oAB({type:h}),h.\u0275inj=A.cJS({}),h})();var y=St(4807),C=St(3566),v=St(2596);let S=(()=>{var h;class t{transform(l,s,f,w){let X=0;return l&&!f&&!w&&l.forEach(R=>X+=R[s]-0),f&&w&&l.forEach(R=>{R[f]==w&&(X+=R[s]-0)}),X}}return(h=t).\u0275fac=function(l){return new(l||h)},h.\u0275pipe=A.Yjl({name:"sum",type:h,pure:!0}),t})();function M(h,t){if(1&h&&(A.TgZ(0,"span",8),A._UZ(1,"img",9),A.qZA(),A._uU(2)),2&h){const o=t.item;A.xp6(1),A.Q6J("src",o.logo,A.LSH),A.xp6(1),A.hij(" ",o.name," ")}}function T(h,t){if(1&h&&(A.TgZ(0,"tr",40)(1,"td"),A._UZ(2,"img",41),A.qZA(),A.TgZ(3,"td",42),A._uU(4),A.qZA(),A.TgZ(5,"td",43),A._uU(6),A.ALo(7,"number"),A.qZA(),A.TgZ(8,"td",44),A._uU(9),A.ALo(10,"number"),A.qZA(),A.TgZ(11,"td",45),A._uU(12),A.ALo(13,"number"),A.qZA()()),2&h){const o=t.$implicit;A.xp6(2),A.Q6J("src",o.logo,A.LSH),A.xp6(2),A.Oqu(o.Name),A.xp6(2),A.Oqu(A.lcZ(7,5,o.Products)),A.xp6(3),A.Oqu(A.lcZ(10,7,o.Order)),A.xp6(3),A.Oqu(A.lcZ(13,9,o.Amount))}}const E=function(h){return{"border-color":h}};function I(h,t){if(1&h&&(A.TgZ(0,"tr",46)(1,"td",47),A._UZ(2,"img",41),A.qZA(),A.TgZ(3,"td",48)(4,"a",49),A._uU(5,"Seller Center"),A.qZA()(),A.TgZ(6,"td",48)(7,"a",50),A._uU(8,"Chat"),A.qZA()(),A.TgZ(9,"td",48)(10,"a",49),A._uU(11,"Campaign"),A.qZA()()()),2&h){const o=t.$implicit,l=t.index,s=A.oxw(2);A.Q6J("ngStyle",A.VKq(11,E,s.channelShortcut.length-1==l?"white":"")),A.xp6(2),A.Q6J("src",o.logo,A.LSH),A.xp6(2),A.Tol(o.class),A.Q6J("href",o.sellerCenter,A.LSH),A.xp6(3),A.Tol(o.class),A.Q6J("href",o.chat,A.LSH),A.xp6(3),A.Tol(o.class),A.Q6J("href",o.campaign,A.LSH)}}function k(h,t){if(1&h){const o=A.EpF();A.ynx(0),A.TgZ(1,"div",10)(2,"div",11)(3,"div",12)(4,"div",13)(5,"div",14)(6,"h1",15),A._uU(7,"Daily Sales"),A.qZA()(),A.TgZ(8,"div",16),A._UZ(9,"highcharts-chart",17),A.qZA()()()(),A.TgZ(10,"div",11)(11,"div",12)(12,"div",13)(13,"div",14)(14,"h1",15),A._uU(15),A.qZA()(),A.TgZ(16,"div",16),A._UZ(17,"highcharts-chart",18),A.qZA()()()()(),A.TgZ(18,"div",19)(19,"div",20)(20,"div",12)(21,"div",21)(22,"h1",22),A._uU(23),A.qZA()(),A.TgZ(24,"div",13)(25,"div",23)(26,"table",24),A.NdJ("matSortChange",function(s){const w=A.CHM(o).ngIf,X=A.oxw();return A.KtG(X.onSort(s,w))}),A.TgZ(27,"thead")(28,"tr",25),A._UZ(29,"th",26),A.TgZ(30,"th",27),A._uU(31,"Store Name"),A.qZA(),A.TgZ(32,"th",28)(33,"span",29),A._uU(34,"Products"),A.qZA()(),A.TgZ(35,"th",30),A._uU(36,"Order "),A.qZA(),A.TgZ(37,"th",31),A._uU(38,"Amount "),A.qZA()()(),A.TgZ(39,"tbody"),A.YNc(40,T,14,11,"tr",32),A.qZA(),A.TgZ(41,"tfoot")(42,"tr",33),A._UZ(43,"td",34),A.TgZ(44,"td",35),A._uU(45,"Total"),A.qZA(),A.TgZ(46,"td",36),A._uU(47),A.ALo(48,"number"),A.ALo(49,"sum"),A.qZA(),A.TgZ(50,"td",36),A._uU(51),A.ALo(52,"number"),A.ALo(53,"sum"),A.qZA(),A.TgZ(54,"td",36),A._uU(55),A.ALo(56,"number"),A.ALo(57,"sum"),A.qZA()()()()()()()(),A.TgZ(58,"div",37)(59,"div",12)(60,"div",21)(61,"h1",22),A._uU(62,"Seller Center Shortcut"),A.qZA()(),A.TgZ(63,"div",13)(64,"div",23)(65,"table",38)(66,"tbody"),A.YNc(67,I,12,13,"tr",39),A.qZA()()()()()()(),A.BQk()}if(2&h){const o=t.ngIf,l=A.oxw();A.xp6(9),A.Q6J("Highcharts",l.Highcharts)("options",o.lineChartOptions),A.xp6(6),A.hij("Order Count (",l.dateTitle,")"),A.xp6(2),A.Q6J("Highcharts",l.Highcharts)("options",o.pieChartOptions),A.xp6(6),A.hij("Channel Sales (",l.dateTitle,")"),A.xp6(17),A.Q6J("ngForOf",o.PerformanceChannel),A.xp6(7),A.Oqu(A.lcZ(48,11,A.xi3(49,13,o.PerformanceChannel,"Products"))),A.xp6(4),A.hij("",A.lcZ(52,16,A.xi3(53,18,o.PerformanceChannel,"Order"))," "),A.xp6(4),A.hij("",A.lcZ(56,21,A.xi3(57,23,o.PerformanceChannel,"Amount"))," "),A.xp6(12),A.Q6J("ngForOf",l.channelShortcut)}}let n=(()=>{var h;class t{constructor(l,s,f){this.dashboardService=l,this.datePipe=s,this._router=f,this.Highcharts=At,this.filter={range:0,type:null},this.channelType=_.x,this.dateRange=[{label:"Week",value:0},{label:"Month",value:1}],this.channelShortcut=l.getChannelShortcuts(),this.channelOptions=structuredClone(this.channelShortcut),this.filter.range=0}ngOnInit(){this.initDashboardData()}initDashboardData(){this.dashboardData$=this.dashboardService.getDashboardData(this.filter).pipe((0,ct.d)(),(0,F.U)(l=>(l.PerformanceChannel=l.PerformanceChannel.map(s=>(s.logo=Y.g.getChannelLogoByTypeId(s.TypeID),s)),this.performanceChannelSource=JSON.parse(JSON.stringify(l.PerformanceChannel)),l.PerformanceChannel=this.sorting(l.PerformanceChannel,"Amount","desc"),this.filterChannelShortcut(l.PerformanceChannel),this.generateDateTitle(),l)))}generateDateTitle(){const l=new Date,s=this.datePipe.transform(l,"dd MMMM");let w,f=new Date;0==this.filter.range?f.setDate(f.getDate()-6):f=this.getStartDateMonthly(),w=f.getMonth()==l.getMonth()?this.datePipe.transform(f,"dd"):this.datePipe.transform(f,"dd MMMM"),this.dateTitle=`${w}-${s}`}getStartDateMonthly(){const l=new Date;l.setDate(l.getDate()-30);const s=new Date;return s.getMonth()!==l.getMonth()&&l.setDate(s.getDate()),l}filterChannelShortcut(l){const s=this.dashboardService.getChannelShortcuts(),f=l.filter((w,X,R)=>R.findIndex(i=>i.TypeID==w.TypeID)===X);this.channelShortcut=s.filter(w=>-1!==f.findIndex(X=>X.TypeID==w.typeId))}sorting(l,s,f){return l.sort((w,X)=>Y.g.compare(w[s],X[s],"asc"==f))}onFilter(){this.initDashboardData()}onSort(l,s){s.PerformanceChannel=l.active&&""!==l.direction?s.PerformanceChannel.sort((f,w)=>{const X="asc"===l.direction;switch(l.active){case"Products":return Y.g.compare(f.Products,w.Products,X);case"Order":return Y.g.compare(f.Order,w.Order,X);case"Amount":return Y.g.compare(f.Amount,w.Amount,X);default:return 0}}):JSON.parse(JSON.stringify(this.performanceChannelSource))}}return(h=t).\u0275fac=function(l){return new(l||h)(A.Y36(Z),A.Y36(Tt.uU),A.Y36(z.F0))},h.\u0275cmp=A.Xpm({type:h,selectors:[["app-dashboard"]],decls:16,vars:9,consts:[["headerTitle","Dashboard",3,"hideSearchBox","onSubmit"],["container",""],[1,"mb-3","fw-normal"],["bindLabel","label","name","channelid","bindValue","value",1,"center-text",3,"items","ngModel","ngModelChange"],["bindLabel","name","name","channel","bindValue","typeId","placeholder","Select Channel",1,"center-text",3,"clearable","items","ngModel","ngModelChange"],["ng-option-tmp",""],[1,"container-fluid"],[4,"ngIf"],[1,"me-2"],["alt","",2,"width","18px",3,"src"],[1,"row","mt-6"],[1,"col-6"],[1,"card"],[1,"card-body"],[1,"d-flex","justify-content-start"],[1,"card-title","ms-4","mt-6"],[1,"mt-5"],[2,"display","block","width","100%","height","100%",3,"Highcharts","options"],["id","lineChart",2,"display","block","width","100%","height","100%",3,"Highcharts","options"],[1,"row"],[1,"col-8"],[1,"d-flex","justify-content-start","border-bottom"],[1,"card-title","my-6","ms-10"],[1,"table-responsive","mt-2"],["matSort","",1,"table",3,"matSortChange"],[1,"table-light",2,"border","none !important"],[2,"width","10px"],[2,"width","200px","padding-left","0px"],["arrowPosition","before","mat-sort-header","Products",1,"text-end",2,"width","70px"],["matTooltip","Number of SKUs that have been mapped between omni and POS","matTooltipPosition","above"],["arrowPosition","before","mat-sort-header","Order",1,"text-end",2,"width","70px"],["arrowPosition","before","mat-sort-header","Amount",1,"text-end",2,"width","70px"],["class","py-4",4,"ngFor","ngForOf"],[1,"fw-bold","fs-5","border-bottom-0"],[1,"border-bottom-0",2,"width","10px"],[1,"border-bottom-0",2,"width","210px","padding-left","0px"],[1,"text-end","border-bottom-0"],[1,"col-4"],[1,"table"],[3,"ngStyle",4,"ngFor","ngForOf"],[1,"py-4"],["alt","",2,"width","25px",3,"src"],[2,"width","210px","padding-left","0px"],[1,"text-end",2,"width","100px"],[1,"text-end",2,"width","115px"],[1,"text-end",2,"width","70px"],[3,"ngStyle"],[1,"text-end",2,"width","45px"],[1,"text-center"],["role","button","target","_blank","type","button",1,"btn","btn-sm","rounded",3,"href"],["role","button","type","button","target","_blank",1,"btn","btn-sm","rounded",3,"href"]],template:function(l,s){1&l&&(A.TgZ(0,"mainpanel",0),A.NdJ("onSubmit",function(){return s.onFilter()}),A.TgZ(1,"filters")(2,"div",1)(3,"div")(4,"h5",2),A._uU(5,"Select a Period"),A.qZA(),A.TgZ(6,"ng-select",3),A.NdJ("ngModelChange",function(w){return s.filter.range=w}),A.qZA()(),A.TgZ(7,"div")(8,"h5",2),A._uU(9,"Type"),A.qZA(),A.TgZ(10,"ng-select",4),A.NdJ("ngModelChange",function(w){return s.filter.type=w}),A.YNc(11,M,3,2,"ng-template",5),A.qZA()()()(),A.TgZ(12,"content")(13,"div",6),A.YNc(14,k,68,26,"ng-container",7),A.ALo(15,"async"),A.qZA()()()),2&l&&(A.Q6J("hideSearchBox",!0),A.xp6(6),A.Q6J("items",s.dateRange)("ngModel",s.filter.range),A.xp6(4),A.Q6J("clearable",!0)("items",s.channelOptions)("ngModel",s.filter.type),A.xp6(4),A.Q6J("ngIf",A.lcZ(15,7,s.dashboardData$)))},dependencies:[Tt.sg,Tt.O5,Tt.PC,j.p,O.JJ,O.On,m,y.w9,y.ir,C.YE,C.nU,v.gM,Tt.Ov,Tt.JJ,S],styles:[".btn-shopee[_ngcontent-%COMP%]{background-color:#ee4d2d;color:#fff}.btn-lazada[_ngcontent-%COMP%]{background-color:#ff00b2;color:#fff}.btn-tokopedia[_ngcontent-%COMP%]{background-color:var(--G500, #03AC0E);color:#fff}.btn-tiktok[_ngcontent-%COMP%]{background-color:#000;color:#fff}.btn-woocommerce[_ngcontent-%COMP%]{background-color:#674399;color:#fff}.btn-kalcare[_ngcontent-%COMP%]{background-color:#80bc00;color:#fff}.btn-sm[_ngcontent-%COMP%]{font-size:12px!important}.card-title[_ngcontent-%COMP%]{font-weight:300;color:#4d4d4d;margin:0}.card.shortcut[_ngcontent-%COMP%]{margin-bottom:10px!important}"]}),t})(),d=(()=>{var h;class t{}return(h=t).\u0275fac=function(l){return new(l||h)},h.\u0275mod=A.oAB({type:h}),h.\u0275inj=A.cJS({providers:[S],imports:[Tt.ez]}),t})();var r=St(7738);const c=[{path:"",component:n}];let e=(()=>{var h;class t{}return(h=t).\u0275fac=function(l){return new(l||h)},h.\u0275mod=A.oAB({type:h}),h.\u0275inj=A.cJS({providers:[Z],imports:[Tt.ez,z.Bz.forChild(c),j.R,O.u5,g,y.A0,d,r.f,C.JX,v.AV]}),t})()},1845:function(Ot,Lt,St){var Tt,At,ct;At=typeof window<"u"?window:this,ct=function(At){function ct(_,Y,A,et){_.hasOwnProperty(Y)||(_[Y]=et.apply(null,A),"function"==typeof CustomEvent&&At.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:Y,module:_[Y]}})))}var F={};return ct(F,"Core/Globals.js",[],function(){var _,Y;return(Y=_||(_={})).SVG_NS="http://www.w3.org/2000/svg",Y.product="Highcharts",Y.version="10.3.3",Y.win=typeof At<"u"?At:{},Y.doc=Y.win.document,Y.svg=Y.doc&&Y.doc.createElementNS&&!!Y.doc.createElementNS(Y.SVG_NS,"svg").createSVGRect,Y.userAgent=Y.win.navigator&&Y.win.navigator.userAgent||"",Y.isChrome=-1!==Y.userAgent.indexOf("Chrome"),Y.isFirefox=-1!==Y.userAgent.indexOf("Firefox"),Y.isMS=/(edge|msie|trident)/i.test(Y.userAgent)&&!Y.win.opera,Y.isSafari=!Y.isChrome&&-1!==Y.userAgent.indexOf("Safari"),Y.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(Y.userAgent),Y.isWebKit=-1!==Y.userAgent.indexOf("AppleWebKit"),Y.deg2rad=2*Math.PI/360,Y.hasBidiBug=Y.isFirefox&&4>parseInt(Y.userAgent.split("Firefox/")[1],10),Y.hasTouch=!!Y.win.TouchEvent,Y.marginNames=["plotTop","marginRight","marginBottom","plotLeft"],Y.noop=function(){},Y.supportsPassiveEvents=function(){var A=!1;if(!Y.isMS){var et=Object.defineProperty({},"passive",{get:function(){A=!0}});Y.win.addEventListener&&Y.win.removeEventListener&&(Y.win.addEventListener("testPassive",Y.noop,et),Y.win.removeEventListener("testPassive",Y.noop,et))}return A}(),Y.charts=[],Y.dateFormats={},Y.seriesTypes={},Y.symbolSizes={},Y.chartCount=0,_}),ct(F,"Core/Utilities.js",[F["Core/Globals.js"]],function(_){function Y(t,o,l,s){var f=o?"Highcharts error":"Highcharts warning";32===t&&(t=f+": Deprecated member");var w=O(t),X=w?f+" #"+t+": www.highcharts.com/errors/"+t+"/":t.toString();if(typeof s<"u"){var R="";w&&(X+="?"),E(s,function(i,p){R+="\n - ".concat(p,": ").concat(i),w&&(X+=encodeURI(p)+"="+encodeURI(i))}),X+=R}k(_,"displayError",{chart:l,code:t,message:X,params:s},function(){if(o)throw Error(X);r.console&&-1===Y.messages.indexOf(X)&&console.warn(X)}),Y.messages.push(X)}function et(t,o){return parseInt(t,o||10)}function J(t){return"string"==typeof t}function $(t){return"[object Array]"===(t=Object.prototype.toString.call(t))||"[object Array Iterator]"===t}function Z(t,o){return!(!t||"object"!=typeof t||o&&$(t))}function z(t){return Z(t)&&"number"==typeof t.nodeType}function j(t){var o=t&&t.constructor;return!(!Z(t,!0)||z(t)||!o||!o.name||"Object"===o.name)}function O(t){return"number"==typeof t&&!isNaN(t)&&1/0>t&&-1/0<t}function m(t){return typeof t<"u"&&null!==t}function g(t,o,l){var f,s=J(o)&&!m(l),w=function(X,R){m(X)?t.setAttribute(R,X):s?(f=t.getAttribute(R))||"class"!==R||(f=t.getAttribute(R+"Name")):t.removeAttribute(R)};return J(o)?w(l,o):E(o,w),f}function y(t,o){var l;for(l in t||(t={}),o)t[l]=o[l];return t}function C(){for(var t=arguments,o=t.length,l=0;l<o;l++){var s=t[l];if(typeof s<"u"&&null!==s)return s}}function v(t,o){_.isMS&&!_.svg&&o&&m(o.opacity)&&(o.filter="alpha(opacity=".concat(100*o.opacity,")")),y(t.style,o)}function S(t){return Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function M(t,o){return 1e14<t?t:parseFloat(t.toPrecision(o||14))}function E(t,o,l){for(var s in t)Object.hasOwnProperty.call(t,s)&&o.call(l||t[s],t[s],s,t)}function I(t,o,l){function s(R,i){var p=t.removeEventListener||_.removeEventListenerPolyfill;p&&p.call(t,R,i,!1)}function f(R){var i;if(t.nodeName){if(o){var p={};p[o]=!0}else p=R;E(p,function(P,D){if(R[D])for(i=R[D].length;i--;)s(D,R[D][i].fn)})}}var w="function"==typeof t&&t.prototype||t;if(Object.hasOwnProperty.call(w,"hcEvents")){var X=w.hcEvents;o?(w=X[o]||[],l?(X[o]=w.filter(function(R){return l!==R.fn}),s(o,l)):(f(X),X[o]=[])):(f(X),delete w.hcEvents)}}function k(t,o,l,s){if(l=l||{},d.createEvent&&(t.dispatchEvent||t.fireEvent&&t!==_)){var f=d.createEvent("Events");f.initEvent(o,!0,!0),l=y(f,l),t.dispatchEvent?t.dispatchEvent(l):t.fireEvent(o,l)}else if(t.hcEvents){l.target||y(l,{preventDefault:function(){l.defaultPrevented=!0},target:t,type:o}),f=[];for(var w=t,X=!1;w.hcEvents;)Object.hasOwnProperty.call(w,"hcEvents")&&w.hcEvents[o]&&(f.length&&(X=!0),f.unshift.apply(f,w.hcEvents[o])),w=Object.getPrototypeOf(w);X&&f.sort(function(R,i){return R.order-i.order}),f.forEach(function(R){!1===R.fn.call(t,l)&&l.preventDefault()})}s&&!l.defaultPrevented&&s.call(t,l)}var n=_.charts,d=_.doc,r=_.win;(Y||(Y={})).messages=[],Math.easeInOutSine=function(t){return-.5*(Math.cos(Math.PI*t)-1)};var c=Array.prototype.find?function(t,o){return t.find(o)}:function(t,o){var l,s=t.length;for(l=0;l<s;l++)if(o(t[l],l))return t[l]};E({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(t,o){_[o]=function(l){var s;return Y(32,!1,void 0,((s={})["Highcharts.".concat(o)]="use Array.".concat(t),s)),Array.prototype[t].apply(l,[].slice.call(arguments,1))}});var e,t,o,h=(t=Math.random().toString(36).substring(2,9)+"-",o=0,function(){return"highcharts-"+(e?"":t)+o++});return r.jQuery&&(r.jQuery.fn.highcharts=function(){var t=[].slice.call(arguments);if(this[0])return t[0]?(new(_[J(t[0])?t.shift():"Chart"])(this[0],t[0],t[1]),this):n[g(this[0],"data-highcharts-chart")]}),c={addEvent:function(t,o,l,s){void 0===s&&(s={});var f="function"==typeof t&&t.prototype||t;Object.hasOwnProperty.call(f,"hcEvents")||(f.hcEvents={}),f=f.hcEvents,_.Point&&t instanceof _.Point&&t.series&&t.series.chart&&(t.series.chart.runTrackerClick=!0);var w=t.addEventListener||_.addEventListenerPolyfill;return w&&w.call(t,o,l,!!_.supportsPassiveEvents&&{passive:void 0===s.passive?-1!==o.indexOf("touch"):s.passive,capture:!1}),f[o]||(f[o]=[]),f[o].push({fn:l,order:"number"==typeof s.order?s.order:1/0}),f[o].sort(function(X,R){return X.order-R.order}),function(){I(t,o,l)}},arrayMax:function(t){for(var o=t.length,l=t[0];o--;)t[o]>l&&(l=t[o]);return l},arrayMin:function(t){for(var o=t.length,l=t[0];o--;)t[o]<l&&(l=t[o]);return l},attr:g,clamp:function(t,o,l){return t>o?t<l?t:l:o},cleanRecursively:function A(t,o){var l={};return E(t,function(s,f){Z(t[f],!0)&&!t.nodeType&&o[f]?(s=A(t[f],o[f]),Object.keys(s).length&&(l[f]=s)):(Z(t[f])||t[f]!==o[f]||f in t&&!(f in o))&&(l[f]=t[f])}),l},clearTimeout:function(t){m(t)&&clearTimeout(t)},correctFloat:M,createElement:function(t,o,l,s,f){return t=d.createElement(t),o&&y(t,o),f&&v(t,{padding:"0",border:"none",margin:"0"}),l&&v(t,l),s&&s.appendChild(t),t},css:v,defined:m,destroyObjectProperties:function(t,o){E(t,function(l,s){l&&l!==o&&l.destroy&&l.destroy(),delete t[s]})},discardElement:function(t){t&&t.parentElement&&t.parentElement.removeChild(t)},erase:function(t,o){for(var l=t.length;l--;)if(t[l]===o){t.splice(l,1);break}},error:Y,extend:y,extendClass:function(t,o){var l=function(){};return y(l.prototype=new t,o),l},find:c,fireEvent:k,getMagnitude:S,getNestedProperty:function(t,o){for(t=t.split(".");t.length&&m(o);){var l=t.shift();if(typeof l>"u"||"__proto__"===l||!m(o=o[l])||"function"==typeof o||"number"==typeof o.nodeType||o===r)return}return o},getStyle:function T(t,o,l){var s=_.getStyle||T;if("width"===o)return o=Math.min(t.offsetWidth,t.scrollWidth),(l=t.getBoundingClientRect&&t.getBoundingClientRect().width)<o&&l>=o-1&&(o=Math.floor(l)),Math.max(0,o-(s(t,"padding-left",!0)||0)-(s(t,"padding-right",!0)||0));if("height"===o)return Math.max(0,Math.min(t.offsetHeight,t.scrollHeight)-(s(t,"padding-top",!0)||0)-(s(t,"padding-bottom",!0)||0));if(r.getComputedStyle||Y(27,!0),t=r.getComputedStyle(t,void 0)){var f=t.getPropertyValue(o);C(l,"opacity"!==o)&&(f=et(f))}return f},inArray:function(t,o,l){return Y(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),o.indexOf(t,l)},isArray:$,isClass:j,isDOMElement:z,isFunction:function(t){return"function"==typeof t},isNumber:O,isObject:Z,isString:J,keys:function(t){return Y(32,!1,void 0,{"Highcharts.keys":"use Object.keys"}),Object.keys(t)},merge:function(){var t,o=arguments,l={},s=function(w,X){return"object"!=typeof w&&(w={}),E(X,function(R,i){"__proto__"!==i&&"constructor"!==i&&(w[i]=!Z(R,!0)||j(R)||z(R)?X[i]:s(w[i]||{},R))}),w};!0===o[0]&&(l=o[1],o=Array.prototype.slice.call(o,2));var f=o.length;for(t=0;t<f;t++)l=s(l,o[t]);return l},normalizeTickInterval:function(t,o,l,s,f){var w=t,X=t/(l=C(l,S(t)));for(o||(o=f?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===s&&(1===l?o=o.filter(function(R){return R%1==0}):.1>=l&&(o=[1/l]))),s=0;s<o.length&&(w=o[s],!(f&&w*l>=t||!f&&X<=(o[s]+(o[s+1]||o[s]))/2));s++);return M(w*l,-Math.round(Math.log(.001)/Math.LN10))},objectEach:E,offset:function(t){var o=d.documentElement;return{top:(t=t.parentElement||t.parentNode?t.getBoundingClientRect():{top:0,left:0,width:0,height:0}).top+(r.pageYOffset||o.scrollTop)-(o.clientTop||0),left:t.left+(r.pageXOffset||o.scrollLeft)-(o.clientLeft||0),width:t.width,height:t.height}},pad:function(t,o,l){return Array((o||2)+1-String(t).replace("-","").length).join(l||"0")+t},pick:C,pInt:et,relativeLength:function(t,o,l){return/%$/.test(t)?o*parseFloat(t)/100+(l||0):parseFloat(t)},removeEvent:I,splat:function(t){return $(t)?t:[t]},stableSort:function(t,o){var s,f,l=t.length;for(f=0;f<l;f++)t[f].safeI=f;for(t.sort(function(w,X){return 0===(s=o(w,X))?w.safeI-X.safeI:s}),f=0;f<l;f++)delete t[f].safeI},syncTimeout:function(t,o,l){return 0<o?setTimeout(t,o,l):(t.call(0,l),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:h,useSerialIds:function(t){return e=C(t,e)},wrap:function(t,o,l){var s=t[o];t[o]=function(){var f=arguments,w=this;return l.apply(this,[function(){return s.apply(w,arguments.length?arguments:f)}].concat([].slice.call(arguments)))}}},c}),ct(F,"Core/Chart/ChartDefaults.js",[],function(){return{alignThresholds:!1,panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,allowMutatingData:!0,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}},zoomBySingleTouch:!1,zooming:{singleTouch:!1,resetButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}}},width:null,height:null,borderColor:"#335cad",backgroundColor:"#ffffff",plotBorderColor:"#cccccc"}}),ct(F,"Core/Color/Color.js",[F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y){var A=Y.isNumber,et=Y.merge,J=Y.pInt;return function(){function $(Z){this.rgba=[NaN,NaN,NaN,NaN],this.input=Z;var z=_.Color;return z&&z!==$?new z(Z):this instanceof $?void this.init(Z):new $(Z)}return $.parse=function(Z){return Z?new $(Z):$.None},$.prototype.init=function(Z){var z;if("object"==typeof Z&&typeof Z.stops<"u")this.stops=Z.stops.map(function(g){return new $(g[1])});else if("string"==typeof Z){if(this.input=Z=$.names[Z.toLowerCase()]||Z,"#"===Z.charAt(0)){var j=Z.length,O=parseInt(Z.substr(1),16);7===j?z=[(16711680&O)>>16,(65280&O)>>8,255&O,1]:4===j&&(z=[(3840&O)>>4|(3840&O)>>8,(240&O)>>4|240&O,(15&O)<<4|15&O,1])}if(!z)for(O=$.parsers.length;O--&&!z;){var m=$.parsers[O];(j=m.regex.exec(Z))&&(z=m.parse(j))}}z&&(this.rgba=z)},$.prototype.get=function(Z){var z=this.input,j=this.rgba;if("object"==typeof z&&typeof this.stops<"u"){var O=et(z);return O.stops=[].slice.call(O.stops),this.stops.forEach(function(m,g){O.stops[g]=[O.stops[g][0],m.get(Z)]}),O}return j&&A(j[0])?"rgb"===Z||!Z&&1===j[3]?"rgb("+j[0]+","+j[1]+","+j[2]+")":"a"===Z?"".concat(j[3]):"rgba("+j.join(",")+")":z},$.prototype.brighten=function(Z){var z=this.rgba;if(this.stops)this.stops.forEach(function(O){O.brighten(Z)});else if(A(Z)&&0!==Z)for(var j=0;3>j;j++)z[j]+=J(255*Z),0>z[j]&&(z[j]=0),255<z[j]&&(z[j]=255);return this},$.prototype.setOpacity=function(Z){return this.rgba[3]=Z,this},$.prototype.tweenTo=function(Z,z){var j=this.rgba,O=Z.rgba;return A(j[0])&&A(O[0])?((Z=1!==O[3]||1!==j[3])?"rgba(":"rgb(")+Math.round(O[0]+(j[0]-O[0])*(1-z))+","+Math.round(O[1]+(j[1]-O[1])*(1-z))+","+Math.round(O[2]+(j[2]-O[2])*(1-z))+(Z?","+(O[3]+(j[3]-O[3])*(1-z)):"")+")":Z.input||"none"},$.names={white:"#ffffff",black:"#000000"},$.parsers=[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(Z){return[J(Z[1]),J(Z[2]),J(Z[3]),parseFloat(Z[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(Z){return[J(Z[1]),J(Z[2]),J(Z[3]),1]}}],$.None=new $(""),$}()}),ct(F,"Core/Color/Palettes.js",[],function(){return{colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" ")}}),ct(F,"Core/Time.js",[F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y){var A=_.win,et=Y.defined,J=Y.error,$=Y.extend,Z=Y.isObject,z=Y.merge,j=Y.objectEach,O=Y.pad,m=Y.pick,g=Y.splat,y=Y.timeUnits,C=_.isSafari&&A.Intl&&A.Intl.DateTimeFormat.prototype.formatRange,v=_.isSafari&&A.Intl&&!A.Intl.DateTimeFormat.prototype.formatRange;return Y=function(){function S(M){this.options={},this.variableTimezone=this.useUTC=!1,this.Date=A.Date,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.update(M)}return S.prototype.get=function(M,T){if(this.variableTimezone||this.timezoneOffset){var E=T.getTime(),I=E-this.getTimezoneOffset(T);return T.setTime(I),M=T["getUTC"+M](),T.setTime(E),M}return this.useUTC?T["getUTC"+M]():T["get"+M]()},S.prototype.set=function(M,T,E){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===M||"Seconds"===M||"Minutes"===M&&this.getTimezoneOffset(T)%36e5==0)return T["setUTC"+M](E);var I=this.getTimezoneOffset(T);return I=T.getTime()-I,T.setTime(I),T["setUTC"+M](E),M=this.getTimezoneOffset(T),I=T.getTime()+M,T.setTime(I)}return this.useUTC||C&&"FullYear"===M?T["setUTC"+M](E):T["set"+M](E)},S.prototype.update=function(M){void 0===M&&(M={});var T=m(M.useUTC,!0);this.options=M=z(!0,this.options,M),this.Date=M.Date||A.Date||Date,this.timezoneOffset=(this.useUTC=T)&&M.timezoneOffset||void 0,this.getTimezoneOffset=this.timezoneOffsetFunction(),this.variableTimezone=T&&!(!M.getTimezoneOffset&&!M.timezone)},S.prototype.makeTime=function(M,T,E,I,k,n){if(this.useUTC){var d=this.Date.UTC.apply(0,arguments),r=this.getTimezoneOffset(d),c=this.getTimezoneOffset(d+=r);r!==c?d+=c-r:r-36e5!==this.getTimezoneOffset(d-36e5)||v||(d-=36e5)}else d=new this.Date(M,T,m(E,1),m(I,0),m(k,0),m(n,0)).getTime();return d},S.prototype.timezoneOffsetFunction=function(){var M=this,T=this.options,E=T.getTimezoneOffset,I=T.moment||A.moment;if(!this.useUTC)return function(k){return 6e4*new Date(k.toString()).getTimezoneOffset()};if(T.timezone){if(I)return function(k){return 6e4*-I.tz(k,T.timezone).utcOffset()};J(25)}return this.useUTC&&E?function(k){return 6e4*E(k.valueOf())}:function(){return 6e4*(M.timezoneOffset||0)}},S.prototype.dateFormat=function(M,T,E){if(!et(T)||isNaN(T))return _.defaultOptions.lang&&_.defaultOptions.lang.invalidDate||"";M=m(M,"%Y-%m-%d %H:%M:%S");var I=this,k=new this.Date(T),n=this.get("Hours",k),d=this.get("Day",k),r=this.get("Date",k),c=this.get("Month",k),e=this.get("FullYear",k),h=_.defaultOptions.lang,t=h&&h.weekdays,o=h&&h.shortWeekdays;return k=$({a:o?o[d]:t[d].substr(0,3),A:t[d],d:O(r),e:O(r,2," "),w:d,b:h.shortMonths[c],B:h.months[c],m:O(c+1),o:c+1,y:e.toString().substr(2,2),Y:e,H:O(n),k:n,I:O(n%12||12),l:n%12||12,M:O(this.get("Minutes",k)),p:12>n?"AM":"PM",P:12>n?"am":"pm",S:O(k.getSeconds()),L:O(Math.floor(T%1e3),3)},_.dateFormats),j(k,function(l,s){for(;-1!==M.indexOf("%"+s);)M=M.replace("%"+s,"function"==typeof l?l.call(I,T):l)}),E?M.substr(0,1).toUpperCase()+M.substr(1):M},S.prototype.resolveDTLFormat=function(M){return Z(M,!0)?M:{main:(M=g(M))[0],from:M[1],to:M[2]}},S.prototype.getTimeTicks=function(M,T,E,I){var h,k=this,n=[],d={},r=new k.Date(T),c=M.unitRange,e=M.count||1;if(I=m(I,1),et(T)){if(k.set("Milliseconds",r,c>=y.second?0:e*Math.floor(k.get("Milliseconds",r)/e)),c>=y.second&&k.set("Seconds",r,c>=y.minute?0:e*Math.floor(k.get("Seconds",r)/e)),c>=y.minute&&k.set("Minutes",r,c>=y.hour?0:e*Math.floor(k.get("Minutes",r)/e)),c>=y.hour&&k.set("Hours",r,c>=y.day?0:e*Math.floor(k.get("Hours",r)/e)),c>=y.day&&k.set("Date",r,c>=y.month?1:Math.max(1,e*Math.floor(k.get("Date",r)/e))),c>=y.month){k.set("Month",r,c>=y.year?0:e*Math.floor(k.get("Month",r)/e));var t=k.get("FullYear",r)}c>=y.year&&k.set("FullYear",r,t-t%e),c===y.week&&(t=k.get("Day",r),k.set("Date",r,k.get("Date",r)-t+I+(t<I?-7:0))),t=k.get("FullYear",r),I=k.get("Month",r);var o=k.get("Date",r),l=k.get("Hours",r);for(T=r.getTime(),!k.variableTimezone&&k.useUTC||!et(E)||(h=E-T>4*y.month||k.getTimezoneOffset(T)!==k.getTimezoneOffset(E)),T=r.getTime(),r=1;T<E;)n.push(T),T=c===y.year?k.makeTime(t+r*e,0):c===y.month?k.makeTime(t,I+r*e):!h||c!==y.day&&c!==y.week?h&&c===y.hour&&1<e?k.makeTime(t,I,o,l+r*e):T+c*e:k.makeTime(t,I,o+r*e*(c===y.day?1:7)),r++;n.push(T),c<=y.hour&&1e4>n.length&&n.forEach(function(s){s%18e5==0&&"000000000"===k.dateFormat("%H%M%S%L",s)&&(d[s]="day")})}return n.info=$(M,{higherRanks:d,totalRange:c*e}),n},S.prototype.getDateFormat=function(M,T,E,I){var k=this.dateFormat("%m-%d %H:%M:%S.%L",T),n={millisecond:15,second:12,minute:9,hour:6,day:3},d="millisecond";for(r in y){if(M===y.week&&+this.dateFormat("%w",T)===E&&"00:00:00.000"===k.substr(6)){var r="week";break}if(y[r]>M){r=d;break}if(n[r]&&k.substr(n[r])!=="01-01 00:00:00.000".substr(n[r]))break;"week"!==r&&(d=r)}return this.resolveDTLFormat(I[r]).main},S}(),Y}),ct(F,"Core/Defaults.js",[F["Core/Chart/ChartDefaults.js"],F["Core/Color/Color.js"],F["Core/Globals.js"],F["Core/Color/Palettes.js"],F["Core/Time.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$){Y=Y.parse;var Z=$.merge,z={colors:et.colors,symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:_,title:{text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{text:"",align:"center",widthAdjust:-44},caption:{margin:15,text:"",align:"left",verticalAlign:"bottom"},plotOptions:{},labels:{style:{position:"absolute",color:"#333333"}},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{activeColor:"#003399",inactiveColor:"#cccccc"},itemStyle:{color:"#333333",cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},itemHoverStyle:{color:"#000000"},itemHiddenStyle:{color:"#cccccc"},shadow:!1,itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"#ffffff",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:A.svg,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerShape:"callout",hideDelay:500,padding:8,shape:"callout",shared:!1,snap:A.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.y}</b><br/>',backgroundColor:Y("#f7f7f7").setOpacity(.85).get(),borderWidth:1,shadow:!0,stickOnContact:!1,style:{color:"#333333",cursor:"default",fontSize:"12px",whiteSpace:"nowrap"},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:"9px"},text:"Highcharts.com"}};z.chart.styledMode=!1;var j=new J(Z(z.global,z.time));return{defaultOptions:z,defaultTime:j,getOptions:function(){return z},setOptions:function(O){return Z(!0,z,O),(O.time||O.global)&&(A.time?A.time.update(Z(z.global,z.time,O.global,O.time)):A.time=j),z}}}),ct(F,"Core/Animation/Fx.js",[F["Core/Color/Color.js"],F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y,A){var et=_.parse,J=Y.win,$=A.isNumber,Z=A.objectEach;return function(){function z(j,O,m){this.pos=NaN,this.options=O,this.elem=j,this.prop=m}return z.prototype.dSetter=function(){var j=this.paths,O=j&&j[0];j=j&&j[1];var m=this.now||0,g=[];if(1!==m&&O&&j)if(O.length===j.length&&1>m)for(var y=0;y<j.length;y++){for(var C=O[y],v=j[y],S=[],M=0;M<v.length;M++){var T=C[M],E=v[M];S[M]=$(T)&&$(E)&&("A"!==v[0]||4!==M&&5!==M)?T+m*(E-T):E}g.push(S)}else g=j;else g=this.toD||[];this.elem.attr("d",g,void 0,!0)},z.prototype.update=function(){var j=this.elem,O=this.prop,m=this.now,g=this.options.step;this[O+"Setter"]?this[O+"Setter"]():j.attr?j.element&&j.attr(O,m,null,!0):j.style[O]=m+this.unit,g&&g.call(j,m,this)},z.prototype.run=function(j,O,m){var g=this,y=g.options,C=function(M){return!C.stopped&&g.step(M)},v=J.requestAnimationFrame||function(M){setTimeout(M,13)},S=function(){for(var M=0;M<z.timers.length;M++)z.timers[M]()||z.timers.splice(M--,1);z.timers.length&&v(S)};j!==O||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=j,this.end=O,this.unit=m,this.now=this.start,this.pos=0,C.elem=this.elem,C.prop=this.prop,C()&&1===z.timers.push(C)&&v(S)):(delete y.curAnim[this.prop],y.complete&&0===Object.keys(y.curAnim).length&&y.complete.call(this.elem))},z.prototype.step=function(j){var O=+new Date,m=this.options,g=this.elem,y=m.complete,C=m.duration,v=m.curAnim;if(g.attr&&!g.element)j=!1;else if(j||O>=C+this.startTime){this.now=this.end,this.pos=1,this.update();var S=v[this.prop]=!0;Z(v,function(M){!0!==M&&(S=!1)}),S&&y&&y.call(g),j=!1}else this.pos=m.easing((O-this.startTime)/C),this.now=this.start+(this.end-this.start)*this.pos,this.update(),j=!0;return j},z.prototype.initPath=function(j,O,m){function g(k,n){for(;k.length<I;){var d=k[0],r=n[I-k.length];r&&"M"===d[0]&&(k[0]="C"===r[0]?["C",d[1],d[2],d[1],d[2],d[1],d[2]]:["L",d[1],d[2]]),k.unshift(d),S&&(d=k.pop(),k.push(k[k.length-1],d))}}function y(k,n){for(;k.length<I;)if("C"===(n=k[Math.floor(k.length/M)-1].slice())[0]&&(n[1]=n[5],n[2]=n[6]),S){var d=k[Math.floor(k.length/M)].slice();k.splice(k.length/2,0,n,d)}else k.push(n)}var C=j.startX,v=j.endX;m=m.slice();var S=j.isArea,M=S?2:1;if(!(O=O&&O.slice()))return[m,m];if(C&&v&&v.length){for(j=0;j<C.length;j++){if(C[j]===v[0]){var T=j;break}if(C[0]===v[v.length-C.length+j]){T=j;var E=!0;break}if(C[C.length-1]===v[v.length-C.length+j]){T=C.length-j;break}}typeof T>"u"&&(O=[])}if(O.length&&$(T)){var I=m.length+T*M;E?(g(O,m),y(m,O)):(g(m,O),y(O,m))}return[O,m]},z.prototype.fillSetter=function(){z.prototype.strokeSetter.apply(this,arguments)},z.prototype.strokeSetter=function(){this.elem.attr(this.prop,et(this.start).tweenTo(et(this.end),this.pos),void 0,!0)},z.timers=[],z}()}),ct(F,"Core/Animation/AnimationUtilities.js",[F["Core/Animation/Fx.js"],F["Core/Utilities.js"]],function(_,Y){function A(y){return j(y)?O({duration:500,defer:0},y):{duration:y?500:0,defer:0}}function et(y,C){for(var v=_.timers.length;v--;)_.timers[v].elem!==y||C&&C!==_.timers[v].prop||(_.timers[v].stopped=!0)}var J=Y.defined,$=Y.getStyle,Z=Y.isArray,z=Y.isNumber,j=Y.isObject,O=Y.merge,m=Y.objectEach,g=Y.pick;return{animate:function(y,C,v){var S,T,E,M="";if(!j(v)){var I=arguments;v={duration:I[2],easing:I[3],complete:I[4]}}z(v.duration)||(v.duration=400),v.easing="function"==typeof v.easing?v.easing:Math[v.easing]||Math.easeInOutSine,v.curAnim=O(C),m(C,function(k,n){et(y,n),E=new _(y,v,n),T=void 0,"d"===n&&Z(C.d)?(E.paths=E.initPath(y,y.pathArray,C.d),E.toD=C.d,S=0,T=1):y.attr?S=y.attr(n):(S=parseFloat($(y,n))||0,"opacity"!==n&&(M="px")),T||(T=k),"string"==typeof T&&T.match("px")&&(T=T.replace(/px/g,"")),E.run(S,T,M)})},animObject:A,getDeferredAnimation:function(y,C,v){var S=A(C),M=0,T=0;return(v?[v]:y.series).forEach(function(E){E=A(E.options.animation),M=C&&J(C.defer)?S.defer:Math.max(M,E.duration+E.defer),T=Math.min(S.duration,E.duration)}),y.renderer.forExport&&(M=0),{defer:Math.max(0,M-T),duration:Math.min(M,T)}},setAnimation:function(y,C){C.renderer.globalAnimation=g(y,C.options.chart.animation,!0)},stop:et}}),ct(F,"Core/Renderer/HTML/AST.js",[F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y){var A=_.SVG_NS,et=Y.attr,J=Y.createElement,$=Y.css,Z=Y.error,z=Y.isFunction,j=Y.isString,O=Y.objectEach,m=Y.splat,g=(Y=_.win.trustedTypes)&&z(Y.createPolicy)&&Y.createPolicy("highcharts",{createHTML:function(v){return v}}),y=g?g.createHTML(""):"";try{var C=!!(new DOMParser).parseFromString(y,"text/html")}catch{C=!1}return function(){function v(S){this.nodes="string"==typeof S?this.parseMarkup(S):S}return v.filterUserAttributes=function(S){return O(S,function(M,T){var E=!0;-1===v.allowedAttributes.indexOf(T)&&(E=!1),-1!==["background","dynsrc","href","lowsrc","src"].indexOf(T)&&(E=j(M)&&v.allowedReferences.some(function(I){return 0===M.indexOf(I)})),E||(Z(33,!1,void 0,{"Invalid attribute in config":"".concat(T)}),delete S[T]),j(M)&&S[T]&&(S[T]=M.replace(/</g,"&lt;"))}),S},v.parseStyle=function(S){return S.split(";").reduce(function(M,T){var E=(T=T.split(":").map(function(I){return I.trim()})).shift();return E&&T.length&&(M[E.replace(/-([a-z])/g,function(I){return I[1].toUpperCase()})]=T.join(":")),M},{})},v.setElementHTML=function(S,M){S.innerHTML=v.emptyHTML,M&&new v(M).addToDOM(S)},v.prototype.addToDOM=function(S){return function M(T,E){var I;return m(T).forEach(function(k){var n=k.tagName,d=k.textContent?_.doc.createTextNode(k.textContent):void 0,r=v.bypassHTMLFiltering;if(n)if("#text"===n)var c=d;else if(-1!==v.allowedTags.indexOf(n)||r){n=_.doc.createElementNS("svg"===n?A:E.namespaceURI||A,n);var e=k.attributes||{};O(k,function(h,t){"tagName"!==t&&"attributes"!==t&&"children"!==t&&"style"!==t&&"textContent"!==t&&(e[t]=h)}),et(n,r?e:v.filterUserAttributes(e)),k.style&&$(n,k.style),d&&n.appendChild(d),M(k.children||[],n),c=n}else Z(33,!1,void 0,{"Invalid tagName in config":n});c&&E.appendChild(c),I=c}),I}(this.nodes,S)},v.prototype.parseMarkup=function(S){var M=[];if(S=S.trim().replace(/ style=(["'])/g," data-style=$1"),C)S=(new DOMParser).parseFromString(g?g.createHTML(S):S,"text/html");else{var T=J("div");T.innerHTML=S,S={body:T}}var E=function(I,k){var n=I.nodeName.toLowerCase(),d={tagName:n};if("#text"===n&&(d.textContent=I.textContent||""),n=I.attributes){var r={};[].forEach.call(n,function(e){"data-style"===e.name?d.style=v.parseStyle(e.value):r[e.name]=e.value}),d.attributes=r}if(I.childNodes.length){var c=[];[].forEach.call(I.childNodes,function(e){E(e,c)}),c.length&&(d.children=c)}k.push(d)};return[].forEach.call(S.body.childNodes,function(I){return E(I,M)}),M},v.allowedAttributes="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 height href id in markerHeight markerWidth offset opacity orient padding paddingLeft paddingRight patternUnits r 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".split(" "),v.allowedReferences="https:// http:// mailto: / ../ ./ #".split(" "),v.allowedTags="a abbr b br button caption circle clipPath code dd defs div dl dt em feComponentTransfer feFuncA feFuncB feFuncG feFuncR feGaussianBlur 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".split(" "),v.emptyHTML=y,v.bypassHTMLFiltering=!1,v}()}),ct(F,"Core/FormatUtilities.js",[F["Core/Defaults.js"],F["Core/Utilities.js"]],function(_,Y){function A(O,m,g,y){m=+m;var C=et.lang,v=((O=+O||0).toString().split(".")[1]||"").split("e")[0].length,S=O.toString().split("e"),M=m;if(-1===m)m=Math.min(v,20);else if(Z(m)){if(m&&S[1]&&0>S[1]){var T=m+ +S[1];0<=T?(S[0]=(+S[0]).toExponential(T).split("e")[0],m=T):(S[0]=S[0].split(".")[0]||0,O=20>m?(S[0]*Math.pow(10,S[1])).toFixed(m):0,S[1]=0)}}else m=2;T=(Math.abs(S[1]?S[0]:O)+Math.pow(10,-Math.max(m,v)-1)).toFixed(m);var E=3<(v=String(j(T))).length?v.length%3:0;return g=z(g,C.decimalPoint),y=z(y,C.thousandsSep),O=(0>O?"-":"")+(E?v.substr(0,E)+y:""),O=0>+S[1]&&!M?"0":O+v.substr(E).replace(/(\d{3})(?=\d)/g,"$1"+y),m&&(O+=g+T.slice(-m)),S[1]&&0!=+O&&(O+="e"+S[1]),O}var et=_.defaultOptions,J=_.defaultTime,$=Y.getNestedProperty,Z=Y.isNumber,z=Y.pick,j=Y.pInt;return{dateFormat:function(O,m,g){return J.dateFormat(O,m,g)},format:function(O,m,g){var y="{",C=!1,v=/f$/,S=/\.([0-9])/,M=et.lang,T=g&&g.time||J;g=g&&g.numberFormatter||A;for(var E=[];O;){var I=O.indexOf(y);if(-1===I)break;var k=O.slice(0,I);if(C){if(k=k.split(":"),y=$(k.shift()||"",m),k.length&&"number"==typeof y)if(k=k.join(":"),v.test(k)){var n=parseInt((k.match(S)||["","-1"])[1],10);null!==y&&(y=g(y,n,M.decimalPoint,-1<k.indexOf(",")?M.thousandsSep:""))}else y=T.dateFormat(k,y);E.push(y)}else E.push(k);O=O.slice(I+1),y=(C=!C)?"}":"{"}return E.push(O),E.join("")},numberFormat:A}}),ct(F,"Core/Renderer/RendererUtilities.js",[F["Core/Utilities.js"]],function(_){var J,Y=_.clamp,A=_.pick,et=_.stableSort;return(J||(J={})).distribute=function Z(z,j,O){var v,m=z,g=m.reducedLen||j,y=function(E,I){return(I.rank||0)-(E.rank||0)},C=function(E,I){return E.target-I.target},S=!0,M=[],T=0;for(v=z.length;v--;)T+=z[v].size;if(T>g){for(et(z,y),T=v=0;T<=g;)T+=z[v].size,v++;M=z.splice(v-1,z.length)}for(et(z,C),z=z.map(function(E){return{size:E.size,targets:[E.target],align:A(E.align,.5)}});S;){for(v=z.length;v--;)g=z[v],y=(Math.min.apply(0,g.targets)+Math.max.apply(0,g.targets))/2,g.pos=Y(y-g.size*g.align,0,j-g.size);for(v=z.length,S=!1;v--;)0<v&&z[v-1].pos+z[v-1].size>z[v].pos&&(z[v-1].size+=z[v].size,z[v-1].targets=z[v-1].targets.concat(z[v].targets),z[v-1].align=.5,z[v-1].pos+z[v-1].size>j&&(z[v-1].pos=j-z[v-1].size),z.splice(v,1),S=!0)}return m.push.apply(m,M),v=0,z.some(function(E){var I=0;return(E.targets||[]).some(function(){return m[v].pos=E.pos+I,typeof O<"u"&&Math.abs(m[v].pos-m[v].target)>O?(m.slice(0,v+1).forEach(function(k){return delete k.pos}),m.reducedLen=(m.reducedLen||j)-.1*j,m.reducedLen>.1*j&&Z(m,j,O),!0):(I+=m[v].size,v++,!1)})}),et(m,C),m},J}),ct(F,"Core/Renderer/SVG/SVGElement.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Color/Color.js"],F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y,A,et){var J=_.animate,$=_.animObject,Z=_.stop,z=A.deg2rad,j=A.doc,O=A.svg,m=A.SVG_NS,g=A.win,y=et.addEvent,C=et.attr,v=et.createElement,S=et.css,M=et.defined,T=et.erase,E=et.extend,I=et.fireEvent,k=et.isArray,n=et.isFunction,d=et.isString,r=et.merge,c=et.objectEach,e=et.pick,h=et.pInt,t=et.syncTimeout,o=et.uniqueKey;return _=function(){function l(){this.element=void 0,this.onEvents={},this.opacity=1,this.renderer=void 0,this.SVG_NS=m,this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ")}return l.prototype._defaultGetter=function(s){return s=e(this[s+"Value"],this[s],this.element?this.element.getAttribute(s):null,0),/^[\-0-9\.]+$/.test(s)&&(s=parseFloat(s)),s},l.prototype._defaultSetter=function(s,f,w){w.setAttribute(f,s)},l.prototype.add=function(s){var f=this.renderer,w=this.element;if(s&&(this.parentGroup=s),typeof this.textStr<"u"&&"text"===this.element.nodeName&&f.buildText(this),this.added=!0,!s||s.handleZ||this.zIndex)var X=this.zIndexSetter();return X||(s?s.element:f.box).appendChild(w),this.onAdd&&this.onAdd(),this},l.prototype.addClass=function(s,f){var w=f?"":this.attr("class")||"";return(s=(s||"").split(/ /g).reduce(function(X,R){return-1===w.indexOf(R)&&X.push(R),X},w?[w]:[]).join(" "))!==w&&this.attr("class",s),this},l.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},l.prototype.align=function(s,f,w){var p,P,D,X={},R=this.renderer,i=R.alignedObjects;s?(this.alignOptions=s,this.alignByTranslate=f,(!w||d(w))&&(this.alignTo=p=w||"renderer",T(i,this),i.push(this),w=void 0)):(s=this.alignOptions,f=this.alignByTranslate,p=this.alignTo),w=e(w,R[p],"scrollablePlotBox"===p?R.plotBox:void 0,R);var L=s.verticalAlign;return R=(w.x||0)+(s.x||0),i=(w.y||0)+(s.y||0),"right"===(p=s.align)?P=1:"center"===p&&(P=2),P&&(R+=(w.width-(s.width||0))/P),X[f?"translateX":"x"]=Math.round(R),"bottom"===L?D=1:"middle"===L&&(D=2),D&&(i+=(w.height-(s.height||0))/D),X[f?"translateY":"y"]=Math.round(i),this[this.placed?"animate":"attr"](X),this.placed=!0,this.alignAttr=X,this},l.prototype.alignSetter=function(s){var f={left:"start",center:"middle",right:"end"};f[s]&&(this.alignValue=s,this.element.setAttribute("text-anchor",f[s]))},l.prototype.animate=function(s,f,w){var X=this,R=$(e(f,this.renderer.globalAnimation,!0));return f=R.defer,e(j.hidden,j.msHidden,j.webkitHidden,!1)&&(R.duration=0),0!==R.duration?(w&&(R.complete=w),t(function(){X.element&&J(X,s,R)},f)):(this.attr(s,void 0,w||R.complete),c(s,function(i,p){R.step&&R.step.call(this,i,{prop:p,pos:1,elem:this})},this)),this},l.prototype.applyTextOutline=function(s){var f=this.element;-1!==s.indexOf("contrast")&&(s=s.replace(/contrast/g,this.renderer.getContrast(f.style.fill)));var w=s.split(" ");if(s=w[w.length-1],(w=w[0])&&"none"!==w&&A.svg){this.fakeTS=!0,w=w.replace(/(^[\d\.]+)(.*?)$/g,function(i,p,P){return 2*Number(p)+P}),this.removeTextOutline();var X=j.createElementNS(m,"tspan");C(X,{class:"highcharts-text-outline",fill:s,stroke:s,"stroke-width":w,"stroke-linejoin":"round"}),s=f.querySelector("textPath")||f,[].forEach.call(s.childNodes,function(i){var p=i.cloneNode(!0);p.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(function(P){return p.removeAttribute(P)}),X.appendChild(p)});var R=0;[].forEach.call(s.querySelectorAll("text tspan"),function(i){R+=Number(i.getAttribute("dy"))}),(w=j.createElementNS(m,"tspan")).textContent="\u200b",C(w,{x:Number(f.getAttribute("x")),dy:-R}),X.appendChild(w),s.insertBefore(X,s.firstChild)}},l.prototype.attr=function(s,f,w,X){var p,D,L,R=this.element,i=this.symbolCustomAttribs,P=this;if("string"==typeof s&&typeof f<"u"){var a=s;(s={})[a]=f}return"string"==typeof s?P=(this[s+"Getter"]||this._defaultGetter).call(this,s,R):(c(s,function(x,u){D=!1,X||Z(this,u),this.symbolName&&-1!==i.indexOf(u)&&(p||(this.symbolAttr(s),p=!0),D=!0),!this.rotation||"x"!==u&&"y"!==u||(this.doTransform=!0),D||((L=this[u+"Setter"]||this._defaultSetter).call(this,x,u,R),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(u)&&this.updateShadows(u,x,L))},this),this.afterSetters()),w&&w.call(this),P},l.prototype.clip=function(s){return this.attr("clip-path",s?"url("+this.renderer.url+"#"+s.id+")":"none")},l.prototype.crisp=function(s,f){f=f||s.strokeWidth||0;var w=Math.round(f)%2/2;return s.x=Math.floor(s.x||this.x||0)+w,s.y=Math.floor(s.y||this.y||0)+w,s.width=Math.floor((s.width||this.width||0)-2*w),s.height=Math.floor((s.height||this.height||0)-2*w),M(s.strokeWidth)&&(s.strokeWidth=f),s},l.prototype.complexColor=function(s,f,w){var R,i,p,P,D,L,a,x,u,B,N,X=this.renderer,b=[];I(this.renderer,"complexColor",{args:arguments},function(){if(s.radialGradient?i="radialGradient":s.linearGradient&&(i="linearGradient"),i){if(D=X.gradients,L=s.stops,u=w.radialReference,k(p=s[i])&&(s[i]=p={x1:p[0],y1:p[1],x2:p[2],y2:p[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===i&&u&&!M(p.gradientUnits)&&(p=r(p,X.getRadialAttr(u,P=p),{gradientUnits:"userSpaceOnUse"})),c(p,function(U,V){"id"!==V&&b.push(V,U)}),c(L,function(U){b.push(U)}),b=b.join(","),D[b])B=D[b].attr("id");else{p.id=B=o();var G=D[b]=X.createElement(i).attr(p).add(X.defs);G.radAttr=P,G.stops=[],L.forEach(function(U){0===U[1].indexOf("rgba")?(R=Y.parse(U[1]),a=R.get("rgb"),x=R.get("a")):(a=U[1],x=1),U=X.createElement("stop").attr({offset:U[0],"stop-color":a,"stop-opacity":x}).add(G),G.stops.push(U)})}w.setAttribute(f,N="url("+X.url+"#"+B+")"),w.gradient=b,s.toString=function(){return N}}})},l.prototype.css=function(s){var f=this.styles,w={},X=this.element,R=!f;if(s.color&&(s.fill=s.color),f&&c(s,function(P,D){f&&f[D]!==P&&(w[D]=P,R=!0)}),R){if(f&&(s=E(f,w)),null===s.width||"auto"===s.width)delete this.textWidth;else if("text"===X.nodeName.toLowerCase()&&s.width)var i=this.textWidth=h(s.width);this.styles=s,i&&!O&&this.renderer.forExport&&delete s.width;var p=r(s);X.namespaceURI===this.SVG_NS&&["textOutline","textOverflow","width"].forEach(function(P){return p&&delete p[P]}),S(X,p),this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),s.textOutline&&this.applyTextOutline(s.textOutline))}return this},l.prototype.dashstyleSetter=function(s){var f=this["stroke-width"];if("inherit"===f&&(f=1),s=s&&s.toLowerCase()){var w=s.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(s=w.length;s--;)w[s]=""+h(w[s])*e(f,NaN);s=w.join(",").replace(/NaN/g,"none"),this.element.setAttribute("stroke-dasharray",s)}},l.prototype.destroy=function(){var s=this,f=s.element||{},w=s.renderer,X=f.ownerSVGElement,R=w.isSVG&&"SPAN"===f.nodeName&&s.parentGroup||void 0;if(f.onclick=f.onmouseout=f.onmouseover=f.onmousemove=f.point=null,Z(s),s.clipPath&&X){var i=s.clipPath;[].forEach.call(X.querySelectorAll("[clip-path],[CLIP-PATH]"),function(p){-1<p.getAttribute("clip-path").indexOf(i.element.id)&&p.removeAttribute("clip-path")}),s.clipPath=i.destroy()}if(s.stops){for(X=0;X<s.stops.length;X++)s.stops[X].destroy();s.stops.length=0,s.stops=void 0}for(s.safeRemoveChild(f),w.styledMode||s.destroyShadows();R&&R.div&&0===R.div.childNodes.length;)f=R.parentGroup,s.safeRemoveChild(R.div),delete R.div,R=f;s.alignTo&&T(w.alignedObjects,s),c(s,function(p,P){s[P]&&s[P].parentGroup===s&&s[P].destroy&&s[P].destroy(),delete s[P]})},l.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(s){this.safeRemoveChild(s)},this),this.shadows=void 0},l.prototype.dSetter=function(s,f,w){k(s)&&("string"==typeof s[0]&&(s=this.renderer.pathToSegments(s)),this.pathArray=s,s=s.reduce(function(X,R,i){return R&&R.join?(i?X+" ":"")+R.join(" "):(R||"").toString()},"")),/(NaN| {2}|^$)/.test(s)&&(s="M 0 0"),this[f]!==s&&(w.setAttribute(f,s),this[f]=s)},l.prototype.fadeOut=function(s){var f=this;f.animate({opacity:0},{duration:e(s,150),complete:function(){f.hide()}})},l.prototype.fillSetter=function(s,f,w){"string"==typeof s?w.setAttribute(f,s):s&&this.complexColor(s,f,w)},l.prototype.getBBox=function(s,f){var w=this.alignValue,X=this.element,R=this.renderer,i=this.styles,p=this.textStr,P=R.cache,D=R.cacheKeys,L=X.namespaceURI===this.SVG_NS;f=e(f,this.rotation,0);var x,a=R.styledMode?X&&l.prototype.getStyle.call(X,"font-size"):i&&i.fontSize;if(M(p)){var u=p.toString();-1===u.indexOf("<")&&(u=u.replace(/[0-9]/g,"0")),u+=["",f,a,this.textWidth,w,i&&i.textOverflow,i&&i.fontWeight].join()}if(u&&!s&&(x=P[u]),!x){if(L||R.forExport){try{var B=this.fakeTS&&function(N){var G=X.querySelector(".highcharts-text-outline");G&&S(G,{display:N})};n(B)&&B("none"),x=X.getBBox?E({},X.getBBox()):{width:X.offsetWidth,height:X.offsetHeight,x:0,y:0},n(B)&&B("")}catch{}(!x||0>x.width)&&(x={x:0,y:0,width:0,height:0})}else x=this.htmlGetBBox();if(R.isSVG&&(R=x.width,s=x.height,L&&(x.height=s={"11px,17":14,"13px,20":16}[""+(a||"")+",".concat(Math.round(s))]||s),f)){L=Number(X.getAttribute("y")||0)-x.y,w={right:1,center:.5}[w||0]||0,i=f*z,a=(f-90)*z;var b=R*Math.cos(i);f=R*Math.sin(i),B=Math.cos(a),i=Math.sin(a),b=(B=(a=(R=x.x+w*(R-b)+L*B)+b)-s*B)-b,f=(s=(w=(L=x.y+L-w*f+L*i)+f)-s*i)-f,x.x=Math.min(R,a,B,b),x.y=Math.min(L,w,s,f),x.width=Math.max(R,a,B,b)-x.x,x.height=Math.max(L,w,s,f)-x.y}if(u&&(""===p||0<x.height)){for(;250<D.length;)delete P[D.shift()];P[u]||D.push(u),P[u]=x}}return x},l.prototype.getStyle=function(s){return g.getComputedStyle(this.element||this,"").getPropertyValue(s)},l.prototype.hasClass=function(s){return-1!==(""+this.attr("class")).split(" ").indexOf(s)},l.prototype.hide=function(){return this.attr({visibility:"hidden"})},l.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}},l.prototype.init=function(s,f){this.element="span"===f?v(f):j.createElementNS(this.SVG_NS,f),this.renderer=s,I(this,"afterInit")},l.prototype.on=function(s,f){var w=this.onEvents;return w[s]&&w[s](),w[s]=y(this.element,s,f),this},l.prototype.opacitySetter=function(s,f,w){this.opacity=s=Number(Number(s).toFixed(3)),w.setAttribute(f,s)},l.prototype.removeClass=function(s){return this.attr("class",(""+this.attr("class")).replace(d(s)?new RegExp("(^| )".concat(s,"( |$)")):s," ").replace(/ +/g," ").trim())},l.prototype.removeTextOutline=function(){var s=this.element.querySelector("tspan.highcharts-text-outline");s&&this.safeRemoveChild(s)},l.prototype.safeRemoveChild=function(s){var f=s.parentNode;f&&f.removeChild(s)},l.prototype.setRadialReference=function(s){var f=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=s,f&&f.radAttr&&f.animate(this.renderer.getRadialAttr(s,f.radAttr)),this},l.prototype.setTextPath=function(s,f){var w=this;f=r(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},f);var X=this.renderer.url,R=this.text||this,i=R.textPath,p=f.attributes,P=f.enabled;return s=s||i&&i.path,i&&i.undo(),s&&P?(f=y(R,"afterModifyTree",function(D){if(s&&P){var L=s.attr("id");L||s.attr("id",L=o());var a={x:0,y:0};M(p.dx)&&(a.dx=p.dx,delete p.dx),M(p.dy)&&(a.dy=p.dy,delete p.dy),R.attr(a),w.attr({transform:""}),w.box&&(w.box=w.box.destroy()),a=D.nodes.slice(0),D.nodes.length=0,D.nodes[0]={tagName:"textPath",attributes:E(p,{"text-anchor":p.textAnchor,href:""+X+"#".concat(L)}),children:a}}}),R.textPath={path:s,undo:f}):(R.attr({dx:0,dy:0}),delete R.textPath),this.added&&(R.textCache="",this.renderer.buildText(R)),this},l.prototype.shadow=function(s,f,w){var X=[],R=this.element,i=this.oldShadowOptions,p=this.parentGroup,P=p&&90===p.rotation;p={color:"#000000",offsetX:P?-1:1,offsetY:P?-1:1,opacity:.15,width:3};var L,D=!1;if(!0===s?L=p:"object"==typeof s&&(L=E(p,s)),L&&(L&&i&&c(L,function(B,b){B!==i[b]&&(D=!0)}),D&&this.destroyShadows(),this.oldShadowOptions=L),L){if(!this.shadows){p=L.opacity/L.width;var a=P?"translate(".concat(L.offsetY,", ").concat(L.offsetX,")"):"translate(".concat(L.offsetX,", ").concat(L.offsetY,")");for(P=1;P<=L.width;P++){var x=R.cloneNode(!1),u=2*L.width+1-2*P;C(x,{stroke:s.color||"#000000","stroke-opacity":p*P,"stroke-width":u,transform:a,fill:"none"}),x.setAttribute("class",(x.getAttribute("class")||"")+" highcharts-shadow"),w&&(C(x,"height",Math.max(C(x,"height")-u,0)),x.cutHeight=u),f?f.element.appendChild(x):R.parentNode&&R.parentNode.insertBefore(x,R),X.push(x)}this.shadows=X}}else this.destroyShadows();return this},l.prototype.show=function(s){return void 0===s&&(s=!0),this.attr({visibility:s?"inherit":"visible"})},l.prototype["stroke-widthSetter"]=function(s,f,w){this[f]=s,w.setAttribute(f,s)},l.prototype.strokeWidth=function(){if(!this.renderer.styledMode)return this["stroke-width"]||0;var s=this.getStyle("stroke-width"),f=0;if(s.indexOf("px")===s.length-2)f=h(s);else if(""!==s){var w=j.createElementNS(m,"rect");C(w,{width:s,"stroke-width":0}),this.element.parentNode.appendChild(w),f=w.getBBox().width,w.parentNode.removeChild(w)}return f},l.prototype.symbolAttr=function(s){var f=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(w){f[w]=e(s[w],f[w])}),f.attr({d:f.renderer.symbols[f.symbolName](f.x,f.y,f.width,f.height,f)})},l.prototype.textSetter=function(s){s!==this.textStr&&(delete this.textPxLength,this.textStr=s,this.added&&this.renderer.buildText(this))},l.prototype.titleSetter=function(s){var f=this.element,w=f.getElementsByTagName("title")[0]||j.createElementNS(this.SVG_NS,"title");f.insertBefore?f.insertBefore(w,f.firstChild):f.appendChild(w),w.textContent=String(e(s,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")},l.prototype.toFront=function(){var s=this.element;return s.parentNode.appendChild(s),this},l.prototype.translate=function(s,f){return this.attr({translateX:s,translateY:f})},l.prototype.updateShadows=function(s,f,w){var X=this.shadows;if(X)for(var R=X.length;R--;)w.call(X[R],"height"===s?Math.max(f-(X[R].cutHeight||0),0):"d"===s?this.d:f,s,X[R])},l.prototype.updateTransform=function(){var s=this.element,f=this.matrix,w=this.rotation;w=void 0===w?0:w;var X=this.scaleX,R=this.scaleY,i=this.translateX,p=this.translateY;i=["translate("+(void 0===i?0:i)+","+(void 0===p?0:p)+")"],M(f)&&i.push("matrix("+f.join(",")+")"),w&&i.push("rotate("+w+" "+e(this.rotationOriginX,s.getAttribute("x"),0)+" "+e(this.rotationOriginY,s.getAttribute("y")||0)+")"),(M(X)||M(R))&&i.push("scale("+e(X,1)+" "+e(R,1)+")"),i.length&&!(this.text||this).textPath&&s.setAttribute("transform",i.join(" "))},l.prototype.visibilitySetter=function(s,f,w){"inherit"===s?w.removeAttribute(f):this[f]!==s&&w.setAttribute(f,s),this[f]=s},l.prototype.xGetter=function(s){return"circle"===this.element.nodeName&&("x"===s?s="cx":"y"===s&&(s="cy")),this._defaultGetter(s)},l.prototype.zIndexSetter=function(s,f){var w=this.renderer,X=this.parentGroup,R=(X||w).element||w.box,i=this.element;w=R===w.box;var D,p=!1,P=this.added;if(M(s)?(i.setAttribute("data-z-index",s),this[f]===(s=+s)&&(P=!1)):M(this[f])&&i.removeAttribute("data-z-index"),this[f]=s,P){for((s=this.zIndex)&&X&&(X.handleZ=!0),D=(f=R.childNodes).length-1;0<=D&&!p;D--){P=(X=f[D]).getAttribute("data-z-index");var L=!M(P);X!==i&&(0>s&&L&&!w&&!D?(R.insertBefore(i,f[D]),p=!0):(h(P)<=s||L&&(!M(s)||0<=s))&&(R.insertBefore(i,f[D+1]||null),p=!0))}p||(R.insertBefore(i,f[w?3:0]||null),p=!0)}return p},l}(),_.prototype.strokeSetter=_.prototype.fillSetter,_.prototype.yGetter=_.prototype.xGetter,_.prototype.matrixSetter=_.prototype.rotationOriginXSetter=_.prototype.rotationOriginYSetter=_.prototype.rotationSetter=_.prototype.scaleXSetter=_.prototype.scaleYSetter=_.prototype.translateXSetter=_.prototype.translateYSetter=_.prototype.verticalAlignSetter=function(l,s){this[s]=l,this.doTransform=!0},_}),ct(F,"Core/Renderer/RendererRegistry.js",[F["Core/Globals.js"]],function(_){var Y,A,et;return(A=Y||(Y={})).rendererTypes={},A.getRendererType=function(J){return void 0===J&&(J=et),A.rendererTypes[J]||A.rendererTypes[et]},A.registerRendererType=function(J,$,Z){A.rendererTypes[J]=$,(!et||Z)&&(et=J,_.Renderer=$)},Y}),ct(F,"Core/Renderer/SVG/SVGLabel.js",[F["Core/Renderer/SVG/SVGElement.js"],F["Core/Utilities.js"]],function(_,Y){var O,A=this&&this.__extends||(O=function(m,g){return(O=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(y,C){y.__proto__=C}||function(y,C){for(var v in C)C.hasOwnProperty(v)&&(y[v]=C[v])})(m,g)},function(m,g){function y(){this.constructor=m}O(m,g),m.prototype=null===g?Object.create(g):(y.prototype=g.prototype,new y)}),et=Y.defined,J=Y.extend,$=Y.isNumber,Z=Y.merge,z=Y.pick,j=Y.removeEvent;return function(O){function m(g,y,C,v,S,M,T,E,I,k){var d,n=O.call(this)||this;return n.paddingLeftSetter=n.paddingSetter,n.paddingRightSetter=n.paddingSetter,n.init(g,"g"),n.textStr=y,n.x=C,n.y=v,n.anchorX=M,n.anchorY=T,n.baseline=I,n.className=k,n.addClass("button"===k?"highcharts-no-tooltip":"highcharts-label"),k&&n.addClass("highcharts-"+k),n.text=g.text(void 0,0,0,E).attr({zIndex:1}),"string"==typeof S&&((d=/^url\((.*?)\)$/.test(S))||n.renderer.symbols[S])&&(n.symbolKey=S),n.bBox=m.emptyBBox,n.padding=3,n.baselineOffset=0,n.needsBox=g.styledMode||d,n.deferredAttr={},n.alignFactor=0,n}return A(m,O),m.prototype.alignSetter=function(g){(g={left:0,center:.5,right:1}[g])!==this.alignFactor&&(this.alignFactor=g,this.bBox&&$(this.xSetting)&&this.attr({x:this.xSetting}))},m.prototype.anchorXSetter=function(g,y){this.anchorX=g,this.boxAttr(y,Math.round(g)-this.getCrispAdjust()-this.xSetting)},m.prototype.anchorYSetter=function(g,y){this.anchorY=g,this.boxAttr(y,g-this.ySetting)},m.prototype.boxAttr=function(g,y){this.box?this.box.attr(g,y):this.deferredAttr[g]=y},m.prototype.css=function(g){if(g){var y={};g=Z(g),m.textProps.forEach(function(C){typeof g[C]<"u"&&(y[C]=g[C],delete g[C])}),this.text.css(y),"fontSize"in y||"fontWeight"in y?this.updateTextPadding():("width"in y||"textOverflow"in y)&&this.updateBoxSize()}return _.prototype.css.call(this,g)},m.prototype.destroy=function(){j(this.element,"mouseenter"),j(this.element,"mouseleave"),this.text&&this.text.destroy(),this.box&&(this.box=this.box.destroy()),_.prototype.destroy.call(this)},m.prototype.fillSetter=function(g,y){g&&(this.needsBox=!0),this.fill=g,this.boxAttr(y,g)},m.prototype.getBBox=function(){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();var g=this.padding,y=z(this.paddingLeft,g);return{width:this.width,height:this.height,x:this.bBox.x-y,y:this.bBox.y-g}},m.prototype.getCrispAdjust=function(){return this.renderer.styledMode&&this.box?this.box.strokeWidth()%2/2:(this["stroke-width"]?parseInt(this["stroke-width"],10):0)%2/2},m.prototype.heightSetter=function(g){this.heightSetting=g},m.prototype.onAdd=function(){this.text.add(this),this.attr({text:z(this.textStr,""),x:this.x||0,y:this.y||0}),this.box&&et(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})},m.prototype.paddingSetter=function(g,y){$(g)?g!==this[y]&&(this[y]=g,this.updateTextPadding()):this[y]=void 0},m.prototype.rSetter=function(g,y){this.boxAttr(y,g)},m.prototype.shadow=function(g){return g&&!this.renderer.styledMode&&(this.updateBoxSize(),this.box&&this.box.shadow(g)),this},m.prototype.strokeSetter=function(g,y){this.stroke=g,this.boxAttr(y,g)},m.prototype["stroke-widthSetter"]=function(g,y){g&&(this.needsBox=!0),this["stroke-width"]=g,this.boxAttr(y,g)},m.prototype["text-alignSetter"]=function(g){this.textAlign=g},m.prototype.textSetter=function(g){typeof g<"u"&&this.text.attr({text:g}),this.updateTextPadding()},m.prototype.updateBoxSize=function(){var g=this.text,y=g.element.style,C={},v=this.padding,S=this.bBox=$(this.widthSetting)&&$(this.heightSetting)&&!this.textAlign||!et(g.textStr)?m.emptyBBox:g.getBBox();this.width=this.getPaddedWidth(),this.height=(this.heightSetting||S.height||0)+2*v,y=this.renderer.fontMetrics(y&&y.fontSize,g),this.baselineOffset=v+Math.min((this.text.firstLineMetrics||y).b,S.height||1/0),this.heightSetting&&(this.baselineOffset+=(this.heightSetting-y.h)/2),this.needsBox&&!g.textPath&&(this.box||((g=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect()).addClass(("button"===this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),g.add(this)),g=this.getCrispAdjust(),C.x=g,C.y=(this.baseline?-this.baselineOffset:0)+g,C.width=Math.round(this.width),C.height=Math.round(this.height),this.box.attr(J(C,this.deferredAttr)),this.deferredAttr={})},m.prototype.updateTextPadding=function(){var g=this.text;if(!g.textPath){this.updateBoxSize();var y=this.baseline?0:this.baselineOffset,C=z(this.paddingLeft,this.padding);et(this.widthSetting)&&this.bBox&&("center"===this.textAlign||"right"===this.textAlign)&&(C+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width)),(C!==g.x||y!==g.y)&&(g.attr("x",C),g.hasBoxWidthChanged&&(this.bBox=g.getBBox(!0)),typeof y<"u"&&g.attr("y",y)),g.x=C,g.y=y}},m.prototype.widthSetter=function(g){this.widthSetting=$(g)?g:void 0},m.prototype.getPaddedWidth=function(){var g=this.padding,y=z(this.paddingLeft,g);return g=z(this.paddingRight,g),(this.widthSetting||this.bBox.width||0)+y+g},m.prototype.xSetter=function(g){this.x=g,this.alignFactor&&(g-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0),this.xSetting=Math.round(g),this.attr("translateX",this.xSetting)},m.prototype.ySetter=function(g){this.ySetting=this.y=Math.round(g),this.attr("translateY",this.ySetting)},m.emptyBBox={width:0,height:0,x:0,y:0},m.textProps="color direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" "),m}(_)}),ct(F,"Core/Renderer/SVG/Symbols.js",[F["Core/Utilities.js"]],function(_){function Y(z,j,O,m,g){var y=[];if(g){var C=g.start||0,v=Z(g.r,O);O=Z(g.r,m||O);var S=(g.end||0)-.001;m=g.innerR;var M=Z(g.open,.001>Math.abs((g.end||0)-C-2*Math.PI)),T=Math.cos(C),E=Math.sin(C),I=Math.cos(S),k=Math.sin(S);C=Z(g.longArc,.001>S-C-Math.PI?0:1),y.push(["M",z+v*T,j+O*E],["A",v,O,0,C,Z(g.clockwise,1),z+v*I,j+O*k]),J(m)&&y.push(M?["M",z+m*I,j+m*k]:["L",z+m*I,j+m*k],["A",m,m,0,C,J(g.clockwise)?1-g.clockwise:0,z+m*T,j+m*E]),M||y.push(["Z"])}return y}function A(z,j,O,m,g){return g&&g.r?et(z,j,O,m,g):[["M",z,j],["L",z+O,j],["L",z+O,j+m],["L",z,j+m],["Z"]]}function et(z,j,O,m,g){return[["M",z+(g=g&&g.r||0),j],["L",z+O-g,j],["C",z+O,j,z+O,j,z+O,j+g],["L",z+O,j+m-g],["C",z+O,j+m,z+O,j+m,z+O-g,j+m],["L",z+g,j+m],["C",z,j+m,z,j+m,z,j+m-g],["L",z,j+g],["C",z,j,z,j,z+g,j]]}var J=_.defined,$=_.isNumber,Z=_.pick;return{arc:Y,callout:function(z,j,O,m,g){var y=Math.min(g&&g.r||0,O,m),C=y+6,v=g&&g.anchorX;g=g&&g.anchorY||0;var S=et(z,j,O,m,{r:y});return $(v)&&(z+v>=O?g>j+C&&g<j+m-C?S.splice(3,1,["L",z+O,g-6],["L",z+O+6,g],["L",z+O,g+6],["L",z+O,j+m-y]):S.splice(3,1,["L",z+O,m/2],["L",v,g],["L",z+O,m/2],["L",z+O,j+m-y]):0>=z+v?g>j+C&&g<j+m-C?S.splice(7,1,["L",z,g+6],["L",z-6,g],["L",z,g-6],["L",z,j+y]):S.splice(7,1,["L",z,m/2],["L",v,g],["L",z,m/2],["L",z,j+y]):g&&g>m&&v>z+C&&v<z+O-C?S.splice(5,1,["L",v+6,j+m],["L",v,j+m+6],["L",v-6,j+m],["L",z+y,j+m]):g&&0>g&&v>z+C&&v<z+O-C&&S.splice(1,1,["L",v-6,j],["L",v,j-6],["L",v+6,j],["L",O-y,j])),S},circle:function(z,j,O,m){return Y(z+O/2,j+m/2,O/2,m/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(z,j,O,m){return[["M",z+O/2,j],["L",z+O,j+m/2],["L",z+O/2,j+m],["L",z,j+m/2],["Z"]]},rect:A,roundedRect:et,square:A,triangle:function(z,j,O,m){return[["M",z+O/2,j],["L",z+O,j+m],["L",z,j+m],["Z"]]},"triangle-down":function(z,j,O,m){return[["M",z,j],["L",z+O,j],["L",z+O/2,j+m],["Z"]]}}}),ct(F,"Core/Renderer/SVG/TextBuilder.js",[F["Core/Renderer/HTML/AST.js"],F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y,A){var et=Y.doc,J=Y.SVG_NS,$=Y.win,Z=A.attr,z=A.extend,j=A.fireEvent,O=A.isString,m=A.objectEach,g=A.pick;return function(){function y(C){var v=C.styles;this.renderer=C.renderer,this.svgElement=C,this.width=C.textWidth,this.textLineHeight=v&&v.lineHeight,this.textOutline=v&&v.textOutline,this.ellipsis=!(!v||"ellipsis"!==v.textOverflow),this.noWrap=!(!v||"nowrap"!==v.whiteSpace),this.fontSize=v&&v.fontSize}return y.prototype.buildSVG=function(){var C=this.svgElement,v=C.element,S=C.renderer,M=g(C.textStr,"").toString(),T=-1!==M.indexOf("<"),E=v.childNodes;S=this.width&&!C.added&&S.box;var k=[M,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,this.fontSize,this.width].join();if(k!==C.textCache){for(C.textCache=k,delete C.actualWidth,k=E.length;k--;)v.removeChild(E[k]);T||this.ellipsis||this.width||C.textPath||-1!==M.indexOf(" ")&&(!this.noWrap||/<br.*?>/g.test(M))?""!==M&&(S&&S.appendChild(v),M=new _(M),this.modifyTree(M.nodes),M.addToDOM(v),this.modifyDOM(),this.ellipsis&&-1!==(v.textContent||"").indexOf("\u2026")&&C.attr("title",this.unescapeEntities(C.textStr||"",["&lt;","&gt;"])),S&&S.removeChild(v)):v.appendChild(et.createTextNode(this.unescapeEntities(M))),O(this.textOutline)&&C.applyTextOutline&&C.applyTextOutline(this.textOutline)}},y.prototype.modifyDOM=function(){var M,C=this,v=this.svgElement,S=Z(v.element,"x");for(v.firstLineMetrics=void 0;(M=v.element.firstChild)&&/^[\s\u200B]*$/.test(M.textContent||" ");)v.element.removeChild(M);[].forEach.call(v.element.querySelectorAll("tspan.highcharts-br"),function(k,n){k.nextSibling&&k.previousSibling&&(0===n&&1===k.previousSibling.nodeType&&(v.firstLineMetrics=v.renderer.fontMetrics(void 0,k.previousSibling)),Z(k,{dy:C.getLineHeight(k.nextSibling),x:S}))});var T=this.width||0;if(T){var I=function(k){[].slice.call(k.childNodes).forEach(function(n){n.nodeType===$.Node.TEXT_NODE?function(k,n){var d=k.textContent||"",r=d.replace(/([^\^])-/g,"$1- ").split(" "),c=!C.noWrap&&(1<r.length||1<v.element.childNodes.length),e=C.getLineHeight(n),h=0,t=v.actualWidth;if(C.ellipsis)d&&C.truncate(k,d,void 0,0,Math.max(0,T-parseInt(C.fontSize||12,10)),function(o,l){return o.substring(0,l)+"\u2026"});else if(c){for(d=[],c=[];n.firstChild&&n.firstChild!==k;)c.push(n.firstChild),n.removeChild(n.firstChild);for(;r.length;)r.length&&!C.noWrap&&0<h&&(d.push(k.textContent||""),k.textContent=r.join(" ").replace(/- /g,"-")),C.truncate(k,void 0,r,0===h&&t||0,T,function(o,l){return r.slice(0,l).join(" ").replace(/- /g,"-")}),t=v.actualWidth,h++;c.forEach(function(o){n.insertBefore(o,k)}),d.forEach(function(o){n.insertBefore(et.createTextNode(o),k),(o=et.createElementNS(J,"tspan")).textContent="\u200b",Z(o,{dy:e,x:S}),n.insertBefore(o,k)})}}(n,k):(-1!==n.className.baseVal.indexOf("highcharts-br")&&(v.actualWidth=0),I(n))})};I(v.element)}},y.prototype.getLineHeight=function(C){var v;return C=C.nodeType===$.Node.TEXT_NODE?C.parentElement:C,this.renderer.styledMode||(v=C&&/(px|em)$/.test(C.style.fontSize)?C.style.fontSize:this.fontSize||this.renderer.style.fontSize||12),this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(v,C||this.svgElement.element).h},y.prototype.modifyTree=function(C){var v=this,S=function(M,T){var E=M.attributes;E=void 0===E?{}:E;var I=M.children,k=M.style;k=void 0===k?{}:k;var n=M.tagName,d=v.renderer.styledMode;"b"===n||"strong"===n?d?E.class="highcharts-strong":k.fontWeight="bold":("i"===n||"em"===n)&&(d?E.class="highcharts-emphasized":k.fontStyle="italic"),k&&k.color&&(k.fill=k.color),"br"===n?(E.class="highcharts-br",M.textContent="\u200b",(T=C[T+1])&&T.textContent&&(T.textContent=T.textContent.replace(/^ +/gm,""))):"a"===n&&I&&I.some(function(r){return"#text"===r.tagName})&&(M.children=[{children:I,tagName:"tspan"}]),"#text"!==n&&"a"!==n&&(M.tagName="tspan"),z(M,{attributes:E,style:k}),I&&I.filter(function(r){return"#text"!==r.tagName}).forEach(S)};C.forEach(S),j(this.svgElement,"afterModifyTree",{nodes:C})},y.prototype.truncate=function(C,v,S,M,T,E){var h,I=this.svgElement,k=I.renderer,n=I.rotation,d=[],r=S?1:0,c=(v||S||"").length,e=c,t=function(l,s){s=s||l;var f=C.parentNode;if(f&&typeof d[s]>"u")if(f.getSubStringLength)try{d[s]=M+f.getSubStringLength(0,S?s+1:s)}catch{}else k.getSpanWidth&&(C.textContent=E(v||S,l),d[s]=M+k.getSpanWidth(I,C));return d[s]};I.rotation=0;var o=t(C.textContent.length);if(M+o>T){for(;r<=c;)e=Math.ceil((r+c)/2),S&&(h=E(S,e)),o=t(e,h&&h.length-1),r===c?r=c+1:o>T?c=e-1:r=e;0===c?C.textContent="":v&&c===v.length-1||(C.textContent=h||E(v||S,e))}S&&S.splice(0,e),I.actualWidth=o,I.rotation=n},y.prototype.unescapeEntities=function(C,v){return m(this.renderer.escapes,function(S,M){v&&-1!==v.indexOf(S)||(C=C.toString().replace(new RegExp(S,"g"),M))}),C},y}()}),ct(F,"Core/Renderer/SVG/SVGRenderer.js",[F["Core/Renderer/HTML/AST.js"],F["Core/Color/Color.js"],F["Core/Globals.js"],F["Core/Renderer/RendererRegistry.js"],F["Core/Renderer/SVG/SVGElement.js"],F["Core/Renderer/SVG/SVGLabel.js"],F["Core/Renderer/SVG/Symbols.js"],F["Core/Renderer/SVG/TextBuilder.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$,Z,z,j){var R,O=A.charts,m=A.deg2rad,g=A.doc,y=A.isFirefox,C=A.isMS,v=A.isWebKit,S=A.noop,M=A.SVG_NS,T=A.symbolSizes,E=A.win,I=j.addEvent,k=j.attr,n=j.createElement,d=j.css,r=j.defined,c=j.destroyObjectProperties,e=j.extend,h=j.isArray,t=j.isNumber,o=j.isObject,l=j.isString,s=j.merge,f=j.pick,w=j.pInt,X=j.uniqueKey;return A=function(){function i(p,P,D,L,a,x,u){this.width=this.url=this.style=this.isSVG=this.imgCount=this.height=this.gradients=this.globalAnimation=this.defs=this.chartIndex=this.cacheKeys=this.cache=this.boxWrapper=this.box=this.alignedObjects=void 0,this.init(p,P,D,L,a,x,u)}return i.prototype.init=function(p,P,D,L,a,x,u){var N,B=this.createElement("svg").attr({version:"1.1",class:"highcharts-root"}),b=B.element;u||B.css(this.getStyle(L)),p.appendChild(b),k(p,"dir","ltr"),-1===p.innerHTML.indexOf("xmlns")&&k(b,"xmlns",this.SVG_NS),this.isSVG=!0,this.box=b,this.boxWrapper=B,this.alignedObjects=[],this.url=this.getReferenceURL(),this.createElement("desc").add().element.appendChild(g.createTextNode("Created with Highcharts 10.3.3")),this.defs=this.createElement("defs").add(),this.allowHTML=x,this.forExport=a,this.styledMode=u,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.setSize(P,D,!1),y&&p.getBoundingClientRect&&((P=function(){d(p,{left:0,top:0}),N=p.getBoundingClientRect(),d(p,{left:Math.ceil(N.left)-N.left+"px",top:Math.ceil(N.top)-N.top+"px"})})(),this.unSubPixelFix=I(E,"resize",P))},i.prototype.definition=function(p){return new _([p]).addToDOM(this.defs.element)},i.prototype.getReferenceURL=function(){if((y||v)&&g.getElementsByTagName("base").length){if(!r(R)){var p=X();p=new _([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:p},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":"url(#".concat(p,")"),fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(g.body),d(p,{position:"fixed",top:0,left:0,zIndex:9e5});var P=g.elementFromPoint(6,6);R="hitme"===(P&&P.id),g.body.removeChild(p)}if(R)return E.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20")}return""},i.prototype.getStyle=function(p){return this.style=e({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},p)},i.prototype.setStyle=function(p){this.boxWrapper.css(this.getStyle(p))},i.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width},i.prototype.destroy=function(){var p=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),c(this.gradients||{}),this.gradients=null,p&&(this.defs=p.destroy()),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null},i.prototype.createElement=function(p){var P=new this.Element;return P.init(this,p),P},i.prototype.getRadialAttr=function(p,P){return{cx:p[0]-p[2]/2+(P.cx||0)*p[2],cy:p[1]-p[2]/2+(P.cy||0)*p[2],r:(P.r||0)*p[2]}},i.prototype.buildText=function(p){new z(p).buildSVG()},i.prototype.getContrast=function(p){return 1.05/(.05+(p=.2126*(p=Y.parse(p).rgba.map(function(P){return.03928>=(P/=255)?P/12.92:Math.pow((P+.055)/1.055,2.4)}))[0]+.7152*p[1]+.0722*p[2]))>(p+.05)/.05?"#FFFFFF":"#000000"},i.prototype.button=function(p,P,D,L,a,x,u,B,b,N){void 0===a&&(a={});var G=this.label(p,P,D,b,void 0,void 0,N,void 0,"button"),U=this.styledMode;p=a.states||{};var V=0;delete(a=s(a)).states;var st=s({color:"#333333",cursor:"pointer",fontWeight:"normal"},a.style);delete a.style;var rt=_.filterUserAttributes(a);if(G.attr(s({padding:8,r:2},rt)),!U){rt=s({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1},rt);var ot=(x=s(rt,{fill:"#e6e6e6"},_.filterUserAttributes(x||p.hover||{}))).style;delete x.style;var tt=(u=s(rt,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},_.filterUserAttributes(u||p.select||{}))).style;delete u.style;var at=(B=s(rt,{style:{color:"#cccccc"}},_.filterUserAttributes(B||p.disabled||{}))).style;delete B.style}return I(G.element,C?"mouseover":"mouseenter",function(){3!==V&&G.setState(1)}),I(G.element,C?"mouseout":"mouseleave",function(){3!==V&&G.setState(V)}),G.setState=function(q){1!==q&&(G.state=V=q),G.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][q||0]),U||(G.attr([rt,x,u,B][q||0]),o(q=[st,ot,tt,at][q||0])&&G.css(q))},U||(G.attr(rt).css(e({cursor:"default"},st)),N&&G.text.css({pointerEvents:"none"})),G.on("touchstart",function(q){return q.stopPropagation()}).on("click",function(q){3!==V&&L.call(G,q)})},i.prototype.crispLine=function(p,P,D){void 0===D&&(D="round");var L=p[0],a=p[1];return r(L[1])&&L[1]===a[1]&&(L[1]=a[1]=Math[D](L[1])-P%2/2),r(L[2])&&L[2]===a[2]&&(L[2]=a[2]=Math[D](L[2])+P%2/2),p},i.prototype.path=function(p){var P=this.styledMode?{}:{fill:"none"};return h(p)?P.d=p:o(p)&&e(P,p),this.createElement("path").attr(P)},i.prototype.circle=function(p,P,D){return p=o(p)?p:typeof p>"u"?{}:{x:p,y:P,r:D},(P=this.createElement("circle")).xSetter=P.ySetter=function(L,a,x){x.setAttribute("c"+a,L)},P.attr(p)},i.prototype.arc=function(p,P,D,L,a,x){return o(p)?(P=(L=p).y,D=L.r,p=L.x):L={innerR:L,start:a,end:x},(p=this.symbol("arc",p,P,D,D,L)).r=D,p},i.prototype.rect=function(p,P,D,L,a,x){a=o(p)?p.r:a;var u=this.createElement("rect");return p=o(p)?p:typeof p>"u"?{}:{x:p,y:P,width:Math.max(D,0),height:Math.max(L,0)},this.styledMode||(typeof x<"u"&&(p["stroke-width"]=x,p=u.crisp(p)),p.fill="none"),a&&(p.r=a),u.rSetter=function(B,b,N){u.r=B,k(N,{rx:B,ry:B})},u.rGetter=function(){return u.r||0},u.attr(p)},i.prototype.setSize=function(p,P,D){this.width=p,this.height=P,this.boxWrapper.animate({width:p,height:P},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:f(D,!0)?void 0:0}),this.alignElements()},i.prototype.g=function(p){var P=this.createElement("g");return p?P.attr({class:"highcharts-"+p}):P},i.prototype.image=function(p,P,D,L,a,x){var u={preserveAspectRatio:"none"},B=function(N,G){N.setAttributeNS?N.setAttributeNS("http://www.w3.org/1999/xlink","href",G):N.setAttribute("hc-svg-href",G)};t(P)&&(u.x=P),t(D)&&(u.y=D),t(L)&&(u.width=L),t(a)&&(u.height=a);var b=this.createElement("image").attr(u);return P=function(N){B(b.element,p),x.call(b,N)},x?(B(b.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),D=new E.Image,I(D,"load",P),D.src=p,D.complete&&P({})):B(b.element,p),b},i.prototype.symbol=function(p,P,D,L,a,x){var U,u=this,B=/^url\((.*?)\)$/,b=B.test(p),N=!b&&(this.symbols[p]?p:"circle"),G=N&&this.symbols[N];if(G){"number"==typeof P&&(U=G.call(this.symbols,Math.round(P||0),Math.round(D||0),L||0,a||0,x));var V=this.path(U);u.styledMode||V.attr("fill","none"),e(V,{symbolName:N||void 0,x:P,y:D,width:L,height:a}),x&&e(V,x)}else if(b){var st=p.match(B)[1],rt=V=this.image(st);rt.imgwidth=f(T[st]&&T[st].width,x&&x.width),rt.imgheight=f(T[st]&&T[st].height,x&&x.height);var ot=function(tt){return tt.attr({width:tt.width,height:tt.height})};["width","height"].forEach(function(tt){rt[tt+"Setter"]=function(at,q){this[q]=at,at=this.alignByTranslate;var H=this.element,W=this.width,K=this.height,Q=this.imgwidth,it=this.imgheight,nt=this["img"+q];if(r(nt)){var ht=1;x&&"within"===x.backgroundSize&&W&&K?(ht=Math.min(W/Q,K/it),nt=Math.round(nt*ht),k(H,{width:Math.round(Q*ht),height:Math.round(it*ht)})):H&&H.setAttribute(q,nt),at||this.translate(((W||0)-nt*ht)/2,((K||0)-nt*ht)/2)}}}),r(P)&&rt.attr({x:P,y:D}),rt.isImg=!0,r(rt.imgwidth)&&r(rt.imgheight)?ot(rt):(rt.attr({width:0,height:0}),n("img",{onload:function(){var tt=O[u.chartIndex];0===this.width&&(d(this,{position:"absolute",top:"-999em"}),g.body.appendChild(this)),T[st]={width:this.width,height:this.height},rt.imgwidth=this.width,rt.imgheight=this.height,rt.element&&ot(rt),this.parentNode&&this.parentNode.removeChild(this),u.imgCount--,!u.imgCount&&tt&&!tt.hasLoaded&&tt.onload()},src:st}),this.imgCount++)}return V},i.prototype.clipRect=function(p,P,D,L){var a=X()+"-",x=this.createElement("clipPath").attr({id:a}).add(this.defs);return(p=this.rect(p,P,D,L,0).add(x)).id=a,p.clipPath=x,p.count=0,p},i.prototype.text=function(p,P,D,L){var a={};return!L||!this.allowHTML&&this.forExport?(a.x=Math.round(P||0),D&&(a.y=Math.round(D)),r(p)&&(a.text=p),p=this.createElement("text").attr(a),(!L||this.forExport&&!this.allowHTML)&&(p.xSetter=function(x,u,B){for(var U,b=B.getElementsByTagName("tspan"),N=B.getAttribute(u),G=0;G<b.length;G++)(U=b[G]).getAttribute(u)===N&&U.setAttribute(u,x);B.setAttribute(u,x)}),p):this.html(p,P,D)},i.prototype.fontMetrics=function(p,P){return p=!this.styledMode&&/px/.test(p)||!E.getComputedStyle?p||P&&P.style&&P.style.fontSize||this.style&&this.style.fontSize:P&&J.prototype.getStyle.call(P,"font-size"),{h:P=24>(p=/px/.test(p)?w(p):12)?p+3:Math.round(1.2*p),b:Math.round(.8*P),f:p}},i.prototype.rotCorr=function(p,P,D){var L=p;return P&&D&&(L=Math.max(L*Math.cos(P*m),4)),{x:-p/3*Math.sin(P*m),y:L}},i.prototype.pathToSegments=function(p){for(var P=[],D=[],L={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},a=0;a<p.length;a++)l(D[0])&&t(p[a])&&D.length===L[D[0].toUpperCase()]&&p.splice(a,0,D[0].replace("M","L").replace("m","l")),"string"==typeof p[a]&&(D.length&&P.push(D.slice(0)),D.length=0),D.push(p[a]);return P.push(D.slice(0)),P},i.prototype.label=function(p,P,D,L,a,x,u,B,b){return new $(this,p,P,D,L,a,x,u,B,b)},i.prototype.alignElements=function(){this.alignedObjects.forEach(function(p){return p.align()})},i}(),e(A.prototype,{Element:J,SVG_NS:M,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:Z,draw:S}),et.registerRendererType("svg",A,!0),A}),ct(F,"Core/Renderer/HTML/HTMLElement.js",[F["Core/Globals.js"],F["Core/Renderer/SVG/SVGElement.js"],F["Core/Utilities.js"]],function(_,Y,A){var C,et=this&&this.__extends||(C=function(v,S){return(C=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(M,T){M.__proto__=T}||function(M,T){for(var E in T)T.hasOwnProperty(E)&&(M[E]=T[E])})(v,S)},function(v,S){function M(){this.constructor=v}C(v,S),v.prototype=null===S?Object.create(S):(M.prototype=S.prototype,new M)}),J=_.isFirefox,$=_.isMS,Z=_.isWebKit,z=_.win,j=A.css,O=A.defined,m=A.extend,g=A.pick,y=A.pInt;return function(C){function v(){return null!==C&&C.apply(this,arguments)||this}return et(v,C),v.compose=function(S){if(-1===v.composedClasses.indexOf(S)){v.composedClasses.push(S);var M=v.prototype,T=S.prototype;T.getSpanCorrection=M.getSpanCorrection,T.htmlCss=M.htmlCss,T.htmlGetBBox=M.htmlGetBBox,T.htmlUpdateTransform=M.htmlUpdateTransform,T.setSpanRotation=M.setSpanRotation}return S},v.prototype.getSpanCorrection=function(S,M,T){this.xCorr=-S*T,this.yCorr=-M},v.prototype.htmlCss=function(S){var M="SPAN"===this.element.tagName&&S&&"width"in S,T=g(M&&S.width,void 0);if(M){delete S.width,this.textWidth=T;var E=!0}return S&&"ellipsis"===S.textOverflow&&(S.whiteSpace="nowrap",S.overflow="hidden"),this.styles=m(this.styles,S),j(this.element,S),E&&this.htmlUpdateTransform(),this},v.prototype.htmlGetBBox=function(){var S=this.element;return{x:S.offsetLeft,y:S.offsetTop,width:S.offsetWidth,height:S.offsetHeight}},v.prototype.htmlUpdateTransform=function(){if(this.added){var S=this.renderer,M=this.element,T=this.translateX||0,E=this.translateY||0,I=this.x||0,k=this.y||0,n=this.textAlign||"left",d={left:0,center:.5,right:1}[n],r=this.styles;if(r=r&&r.whiteSpace,j(M,{marginLeft:T,marginTop:E}),!S.styledMode&&this.shadows&&this.shadows.forEach(function(l){j(l,{marginLeft:T+1,marginTop:E+1})}),this.inverted&&[].forEach.call(M.childNodes,function(l){S.invertChild(l,M)}),"SPAN"===M.tagName){var c=this.rotation,e=this.textWidth&&y(this.textWidth),h=[c,n,M.innerHTML,this.textWidth,this.textAlign].join(),t=void 0;if(t=!1,e!==this.oldTextWidth){if(this.textPxLength)var o=this.textPxLength;else j(M,{width:"",whiteSpace:r||"nowrap"}),o=M.offsetWidth;(e>this.oldTextWidth||o>e)&&(/[ \-]/.test(M.textContent||M.innerText)||"ellipsis"===M.style.textOverflow)&&(j(M,{width:o>e||c?e+"px":"auto",display:"block",whiteSpace:r||"normal"}),this.oldTextWidth=e,t=!0)}this.hasBoxWidthChanged=t,h!==this.cTT&&(t=S.fontMetrics(M.style.fontSize,M).b,!O(c)||c===(this.oldRotation||0)&&n===this.oldAlign||this.setSpanRotation(c,d,t),this.getSpanCorrection(!O(c)&&this.textPxLength||M.offsetWidth,t,d,c,n)),j(M,{left:I+(this.xCorr||0)+"px",top:k+(this.yCorr||0)+"px"}),this.cTT=h,this.oldRotation=c,this.oldAlign=n}}else this.alignOnAdd=!0},v.prototype.setSpanRotation=function(S,M,T){var E={},I=$&&!/Edge/.test(z.navigator.userAgent)?"-ms-transform":Z?"-webkit-transform":J?"MozTransform":z.opera?"-o-transform":void 0;I&&(E[I]=E.transform="rotate("+S+"deg)",E[I+(J?"Origin":"-origin")]=E.transformOrigin=100*M+"% "+T+"px",j(this.element,E))},v.composedClasses=[],v}(Y)}),ct(F,"Core/Renderer/HTML/HTMLRenderer.js",[F["Core/Renderer/HTML/AST.js"],F["Core/Renderer/SVG/SVGElement.js"],F["Core/Renderer/SVG/SVGRenderer.js"],F["Core/Utilities.js"]],function(_,Y,A,et){var O,J=this&&this.__extends||(O=function(m,g){return(O=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(y,C){y.__proto__=C}||function(y,C){for(var v in C)C.hasOwnProperty(v)&&(y[v]=C[v])})(m,g)},function(m,g){function y(){this.constructor=m}O(m,g),m.prototype=null===g?Object.create(g):(y.prototype=g.prototype,new y)}),$=et.attr,Z=et.createElement,z=et.extend,j=et.pick;return function(O){function m(){return null!==O&&O.apply(this,arguments)||this}return J(m,O),m.compose=function(g){return-1===m.composedClasses.indexOf(g)&&(m.composedClasses.push(g),g.prototype.html=m.prototype.html),g},m.prototype.html=function(g,y,C){var v=this.createElement("span"),S=v.element,M=v.renderer,T=M.isSVG,E=function(I,k){["opacity","visibility"].forEach(function(n){I[n+"Setter"]=function(d,r,c){var e=I.div?I.div.style:k;Y.prototype[n+"Setter"].call(this,d,r,c),e&&(e[r]=d)}}),I.addedSetters=!0};return v.textSetter=function(I){I!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,_.setElementHTML(this.element,j(I,"")),this.textStr=I,v.doTransform=!0)},T&&E(v,v.element.style),v.xSetter=v.ySetter=v.alignSetter=v.rotationSetter=function(I,k){"align"===k?v.alignValue=v.textAlign=I:v[k]=I,v.doTransform=!0},v.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)},v.attr({text:g,x:Math.round(y),y:Math.round(C)}).css({position:"absolute"}),M.styledMode||v.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),S.style.whiteSpace="nowrap",v.css=v.htmlCss,T&&(v.add=function(I){var k=M.box.parentNode,n=[];if(this.parentGroup=I){var d=I.div;if(!d){for(;I;)n.push(I),I=I.parentGroup;n.reverse().forEach(function(r){function c(o,l){r[l]=o,"translateX"===l?t.left=o+"px":t.top=o+"px",r.doTransform=!0}var o,e=$(r.element,"class"),h=r.styles||{},t=(d=r.div=r.div||Z("div",e?{className:e}:void 0,{position:"absolute",left:(r.translateX||0)+"px",top:(r.translateY||0)+"px",display:r.display,opacity:r.opacity,cursor:h.cursor,pointerEvents:h.pointerEvents,visibility:r.visibility},d||k)).style;z(r,{classSetter:(o=d,function(l){this.element.setAttribute("class",l),o.className=l}),on:function(){return n[0].div&&v.on.apply({element:n[0].div,onEvents:r.onEvents},arguments),r},translateXSetter:c,translateYSetter:c}),r.addedSetters||E(r)})}}else d=k;return d.appendChild(S),v.added=!0,v.alignOnAdd&&v.htmlUpdateTransform(),v}),v},m.composedClasses=[],m}(A)}),ct(F,"Core/Axis/AxisDefaults.js",[],function(){var _=function(Y){return Y.defaultXAxisOptions={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:{autoRotation:void 0,autoRotationLimit:80,distance:void 0,enabled:!0,indentation:10,overflow:"justify",padding:5,reserveSpace:void 0,rotation:void 0,staggerLines:0,step:0,useHTML:!1,x:0,zIndex:7,style:{color:"#666666",cursor:"default",fontSize:"11px"}},maxPadding:.01,minorGridLineDashStyle:"Solid",minorTickLength:2,minorTickPosition:"outside",minPadding:.01,offset:void 0,opposite:!1,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",rotation:0,useHTML:!1,x:0,y:0,style:{color:"#666666"}},type:"linear",uniqueNames:!0,visible:!0,minorGridLineColor:"#f2f2f2",minorGridLineWidth:1,minorTickColor:"#999999",lineColor:"#ccd6eb",lineWidth:1,gridLineColor:"#e6e6e6",gridLineWidth:void 0,tickColor:"#ccd6eb"},Y.defaultYAxisOptions={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:"justify",formatter:function(){return(0,this.axis.chart.numberFormatter)(this.total||0,-1)},style:{color:"#000000",fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0},Y.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}},Y.defaultRightAxisOptions={labels:{x:15},title:{rotation:90}},Y.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},Y.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}},Y}(_||{});return _}),ct(F,"Core/Foundation.js",[F["Core/Utilities.js"]],function(_){var $,Y=_.addEvent,A=_.isFunction,et=_.objectEach,J=_.removeEvent;return($||($={})).registerEventOptions=function(z,j){z.eventOptions=z.eventOptions||{},et(j.events,function(O,m){z.eventOptions[m]!==O&&(z.eventOptions[m]&&(J(z,m,z.eventOptions[m]),delete z.eventOptions[m]),A(O)&&(z.eventOptions[m]=O,Y(z,m,O)))})},$}),ct(F,"Core/Axis/Tick.js",[F["Core/FormatUtilities.js"],F["Core/Globals.js"],F["Core/Utilities.js"]],function(_,Y,A){var et=Y.deg2rad,J=A.clamp,$=A.correctFloat,Z=A.defined,z=A.destroyObjectProperties,j=A.extend,O=A.fireEvent,m=A.isNumber,g=A.merge,y=A.objectEach,C=A.pick;return function(){function v(S,M,T,E,I){this.isNewLabel=this.isNew=!0,this.axis=S,this.pos=M,this.type=T||"",this.parameters=I||{},this.tickmarkOffset=this.parameters.tickmarkOffset,this.options=this.parameters.options,O(this,"init"),T||E||this.addLabel()}return v.prototype.addLabel=function(){var S=this,M=S.axis,T=M.options,E=M.chart,I=M.categories,k=M.logarithmic,n=M.names,d=S.pos,r=C(S.options&&S.options.labels,T.labels),c=M.tickPositions,e=d===c[0],h=d===c[c.length-1],t=(!r.step||1===r.step)&&1===M.tickInterval;c=c.info;var l,o=S.label;if(I=this.parameters.category||(I?C(I[d],n[d],d):d),k&&m(I)&&(I=$(k.lin2log(I))),M.dateTime)if(c)var s=E.time.resolveDTLFormat(T.dateTimeLabelFormats[!T.grid&&c.higherRanks[d]||c.unitName]),f=s.main;else m(I)&&(f=M.dateTime.getXDateFormat(I,T.dateTimeLabelFormats||{}));S.isFirst=e,S.isLast=h;var w={axis:M,chart:E,dateTimeLabelFormat:f,isFirst:e,isLast:h,pos:d,tick:S,tickPositionInfo:c,value:I};O(this,"labelFormat",w);var X=function(i){return r.formatter?r.formatter.call(i,i):r.format?(i.text=M.defaultLabelFormatter.call(i,i),_.format(r.format,i,E)):M.defaultLabelFormatter.call(i,i)};T=X.call(w,w);var R=s&&s.list;S.shortenLabel=R?function(){for(l=0;l<R.length;l++)if(j(w,{dateTimeLabelFormat:R[l]}),o.attr({text:X.call(w,w)}),o.getBBox().width<M.getSlotWidth(S)-2*r.padding)return;o.attr({text:""})}:void 0,t&&M._addedPlotLB&&S.moveLabel(T,r),Z(o)||S.movedLabel?o&&o.textStr!==T&&!t&&(!o.textWidth||r.style.width||o.styles.width||o.css({width:null}),o.attr({text:T}),o.textPxLength=o.getBBox().width):(S.label=o=S.createLabel({x:0,y:0},T,r),S.rotation=0)},v.prototype.createLabel=function(S,M,T){var E=this.axis,I=E.chart;return(S=Z(M)&&T.enabled?I.renderer.text(M,S.x,S.y,T.useHTML).add(E.labelGroup):null)&&(I.styledMode||S.css(g(T.style)),S.textPxLength=S.getBBox().width),S},v.prototype.destroy=function(){z(this,this.axis)},v.prototype.getPosition=function(S,M,T,E){var I=this.axis,k=I.chart,n=E&&k.oldChartHeight||k.chartHeight;return(S={x:S?$(I.translate(M+T,void 0,void 0,E)+I.transB):I.left+I.offset+(I.opposite?(E&&k.oldChartWidth||k.chartWidth)-I.right-I.left:0),y:S?n-I.bottom+I.offset-(I.opposite?I.height:0):$(n-I.translate(M+T,void 0,void 0,E)-I.transB)}).y=J(S.y,-1e5,1e5),O(this,"afterGetPosition",{pos:S}),S},v.prototype.getLabelPosition=function(S,M,T,E,I,k,n,d){var r=this.axis,c=r.transA,e=r.isLinked&&r.linkedParent?r.linkedParent.reversed:r.reversed,h=r.staggerLines,t=r.tickRotCorr||{x:0,y:0},o=E||r.reserveSpaceDefault?0:-r.labelOffset*("center"===r.labelAlign?.5:1),l={};return T=0===r.side?T.rotation?-8:-T.getBBox().height:2===r.side?t.y+8:Math.cos(T.rotation*et)*(t.y-T.getBBox(!1,0).height/2),Z(I.y)&&(T=0===r.side&&r.horiz?I.y+T:I.y),S=S+I.x+o+t.x-(k&&E?k*c*(e?-1:1):0),M=M+T-(k&&!E?k*c*(e?1:-1):0),h&&(E=n/(d||1)%h,r.opposite&&(E=h-E-1),M+=r.labelOffset/h*E),l.x=S,l.y=Math.round(M),O(this,"afterGetLabelPosition",{pos:l,tickmarkOffset:k,index:n}),l},v.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},v.prototype.getMarkPath=function(S,M,T,E,I,k){return k.crispLine([["M",S,M],["L",S+(I?0:-T),M+(I?T:0)]],E)},v.prototype.handleOverflow=function(S){var M=this.axis,T=M.options.labels,E=S.x,I=M.chart.chartWidth,k=M.chart.spacing,n=C(M.labelLeft,Math.min(M.pos,k[3]));k=C(M.labelRight,Math.max(M.isRadial?0:M.pos+M.len,I-k[1]));var s,d=this.label,r=this.rotation,c={left:0,center:.5,right:1}[M.labelAlign||d.attr("align")],e=d.getBBox().width,h=M.getSlotWidth(this),t={},o=h,l=1;r||"justify"!==T.overflow?0>r&&E-c*e<n?s=Math.round(E/Math.cos(r*et)-n):0<r&&E+c*e>k&&(s=Math.round((I-E)/Math.cos(r*et))):(I=E+(1-c)*e,E-c*e<n?o=S.x+o*(1-c)-n:I>k&&(o=k-S.x+o*c,l=-1),(o=Math.min(h,o))<h&&"center"===M.labelAlign&&(S.x+=l*(h-o-c*(h-Math.min(e,o)))),(e>o||M.autoRotation&&(d.styles||{}).width)&&(s=o)),s&&(this.shortenLabel?this.shortenLabel():(t.width=Math.floor(s)+"px",(T.style||{}).textOverflow||(t.textOverflow="ellipsis"),d.css(t)))},v.prototype.moveLabel=function(S,M){var T=this,E=T.label,I=T.axis,k=I.reversed,n=!1;if(E&&E.textStr===S?(T.movedLabel=E,n=!0,delete T.label):y(I.ticks,function(r){n||r.isNew||r===T||!r.label||r.label.textStr!==S||(T.movedLabel=r.label,n=!0,r.labelPos=T.movedLabel.xy,delete r.label)}),!n&&(T.labelPos||E)){var d=T.labelPos||E.xy;T.movedLabel=T.createLabel({x:E=I.horiz?k?0:I.width+I.left:d.x,y:I=I.horiz?d.y:k?I.width+I.left:0},S,M),T.movedLabel&&T.movedLabel.attr({opacity:0})}},v.prototype.render=function(S,M,T){var E=this.axis,I=E.horiz,k=this.pos,n=C(this.tickmarkOffset,E.tickmarkOffset);n=(k=this.getPosition(I,k,n,M)).x,E=I&&n===E.pos+E.len||!I&&k.y===E.pos?-1:1,I=C(T,this.label&&this.label.newOpacity,1),T=C(T,1),this.isActive=!0,this.renderGridLine(M,T,E),this.renderMark(k,T,E),this.renderLabel(k,M,I,S),this.isNew=!1,O(this,"afterRender")},v.prototype.renderGridLine=function(S,M,T){var E=this.axis,I=E.options,k={},n=this.pos,d=this.type,r=C(this.tickmarkOffset,E.tickmarkOffset),c=E.chart.renderer,e=this.gridLine,h=I.gridLineWidth,t=I.gridLineColor,o=I.gridLineDashStyle;"minor"===this.type&&(h=I.minorGridLineWidth,t=I.minorGridLineColor,o=I.minorGridLineDashStyle),e||(E.chart.styledMode||(k.stroke=t,k["stroke-width"]=h||0,k.dashstyle=o),d||(k.zIndex=1),S&&(M=0),this.gridLine=e=c.path().attr(k).addClass("highcharts-"+(d?d+"-":"")+"grid-line").add(E.gridGroup)),e&&(T=E.getPlotLinePath({value:n+r,lineWidth:e.strokeWidth()*T,force:"pass",old:S,acrossPanes:!1}))&&e[S||this.isNew?"attr":"animate"]({d:T,opacity:M})},v.prototype.renderMark=function(S,M,T){var E=this.axis,I=E.options,k=E.chart.renderer,n=this.type,d=E.tickSize(n?n+"Tick":"tick"),r=S.x;S=S.y;var c=C(I["minor"!==n?"tickWidth":"minorTickWidth"],!n&&E.isXAxis?1:0);I=I["minor"!==n?"tickColor":"minorTickColor"];var e=this.mark,h=!e;d&&(E.opposite&&(d[0]=-d[0]),e||(this.mark=e=k.path().addClass("highcharts-"+(n?n+"-":"")+"tick").add(E.axisGroup),E.chart.styledMode||e.attr({stroke:I,"stroke-width":c})),e[h?"attr":"animate"]({d:this.getMarkPath(r,S,d[0],e.strokeWidth()*T,E.horiz,k),opacity:M}))},v.prototype.renderLabel=function(S,M,T,E){var I=this.axis,k=I.horiz,n=I.options,d=this.label,r=n.labels,c=r.step;I=C(this.tickmarkOffset,I.tickmarkOffset);var e=S.x;S=S.y;var h=!0;d&&m(e)&&(d.xy=S=this.getLabelPosition(e,S,d,k,r,I,E,c),this.isFirst&&!this.isLast&&!n.showFirstLabel||this.isLast&&!this.isFirst&&!n.showLastLabel?h=!1:!k||r.step||r.rotation||M||0===T||this.handleOverflow(S),c&&E%c&&(h=!1),h&&m(S.y)?(S.opacity=T,d[this.isNewLabel?"attr":"animate"](S).show(!0),this.isNewLabel=!1):(d.hide(),this.isNewLabel=!0))},v.prototype.replaceMovedLabel=function(){var S=this.label,M=this.axis,T=M.reversed;S&&!this.isNew&&(S.animate({x:M.horiz?T?M.left:M.width+M.left:S.xy.x,y:T=M.horiz?S.xy.y:T?M.width+M.top:M.top,opacity:0},void 0,S.destroy),delete this.label),M.isDirty=!0,this.label=this.movedLabel,delete this.movedLabel},v}()}),ct(F,"Core/Axis/Axis.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Axis/AxisDefaults.js"],F["Core/Color/Color.js"],F["Core/Defaults.js"],F["Core/Foundation.js"],F["Core/Globals.js"],F["Core/Axis/Tick.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$,Z,z){var j=_.animObject,O=et.defaultOptions,m=J.registerEventOptions,g=$.deg2rad,y=z.arrayMax,C=z.arrayMin,v=z.clamp,S=z.correctFloat,M=z.defined,T=z.destroyObjectProperties,E=z.erase,I=z.error,k=z.extend,n=z.fireEvent,d=z.isArray,r=z.isNumber,c=z.isString,e=z.merge,h=z.normalizeTickInterval,t=z.objectEach,o=z.pick,l=z.relativeLength,s=z.removeEvent,f=z.splat,w=z.syncTimeout,X=function(R,i){return h(i,void 0,void 0,o(R.options.allowDecimals,.5>i||void 0!==R.tickAmount),!!R.tickAmount)};return function(){function R(i,p){this.zoomEnabled=this.width=this.visible=this.userOptions=this.translationSlope=this.transB=this.transA=this.top=this.ticks=this.tickRotCorr=this.tickPositions=this.tickmarkOffset=this.tickInterval=this.tickAmount=this.side=this.series=this.right=this.positiveValuesOnly=this.pos=this.pointRangePadding=this.pointRange=this.plotLinesAndBandsGroups=this.plotLinesAndBands=this.paddedTicks=this.overlap=this.options=this.offset=this.names=this.minPixelPadding=this.minorTicks=this.minorTickInterval=this.min=this.maxLabelLength=this.max=this.len=this.left=this.labelFormatter=this.labelEdge=this.isLinked=this.height=this.hasVisibleSeries=this.hasNames=this.eventOptions=this.coll=this.closestPointRange=this.chart=this.bottom=this.alternateBands=void 0,this.init(i,p)}return R.prototype.init=function(i,p){var P=p.isX;this.chart=i,this.horiz=i.inverted&&!this.isZAxis?!P:P,this.isXAxis=P,this.coll=this.coll||(P?"xAxis":"yAxis"),n(this,"init",{userOptions:p}),this.opposite=o(p.opposite,this.opposite),this.side=o(p.side,this.side,this.horiz?this.opposite?0:2:this.opposite?1:3),this.setOptions(p);var D=this.options,L=D.labels,a=D.type;this.userOptions=p,this.minPixelPadding=0,this.reversed=o(D.reversed,this.reversed),this.visible=D.visible,this.zoomEnabled=D.zoomEnabled,this.hasNames="category"===a||!0===D.categories,this.categories=D.categories||(this.hasNames?[]:void 0),this.names||(this.names=[],this.names.keys={}),this.plotLinesAndBandsGroups={},this.positiveValuesOnly=!!this.logarithmic,this.isLinked=M(D.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},this.len=0,this.minRange=this.userMinRange=D.minRange||D.maxZoom,this.range=D.range,this.offset=D.offset||0,this.min=this.max=null,p=o(D.crosshair,f(i.options.tooltip.crosshairs)[P?0:1]),this.crosshair=!0===p?{}:p,-1===i.axes.indexOf(this)&&(P?i.axes.splice(i.xAxis.length,0,this):i.axes.push(this),i[this.coll].push(this)),this.series=this.series||[],i.inverted&&!this.isZAxis&&P&&typeof this.reversed>"u"&&(this.reversed=!0),this.labelRotation=r(L.rotation)?L.rotation:void 0,m(this,D),n(this,"afterInit")},R.prototype.setOptions=function(i){this.options=e(Y.defaultXAxisOptions,"yAxis"===this.coll&&Y.defaultYAxisOptions,[Y.defaultTopAxisOptions,Y.defaultRightAxisOptions,Y.defaultBottomAxisOptions,Y.defaultLeftAxisOptions][this.side],e(O[this.coll],i)),n(this,"afterSetOptions",{userOptions:i})},R.prototype.defaultLabelFormatter=function(i){var p=this.axis;i=this.chart.numberFormatter;var P=r(this.value)?this.value:NaN,D=p.chart.time,L=this.dateTimeLabelFormat,a=O.lang,x=a.numericSymbols;a=a.numericSymbolMagnitude||1e3;var u=p.logarithmic?Math.abs(P):p.tickInterval,B=x&&x.length;if(p.categories)var b="".concat(this.value);else if(L)b=D.dateFormat(L,P);else if(B&&1e3<=u)for(;B--&&typeof b>"u";)u>=(p=Math.pow(a,B+1))&&10*P%p==0&&null!==x[B]&&0!==P&&(b=i(P/p,-1)+x[B]);return typeof b>"u"&&(b=1e4<=Math.abs(P)?i(P,-1):i(P,-1,void 0,"")),b},R.prototype.getSeriesExtremes=function(){var P,i=this,p=i.chart;n(this,"getSeriesExtremes",null,function(){i.hasVisibleSeries=!1,i.dataMin=i.dataMax=i.threshold=null,i.softThreshold=!i.isXAxis,i.series.forEach(function(D){if(D.visible||!p.options.chart.ignoreHiddenSeries){var L=D.options,a=L.threshold;if(i.hasVisibleSeries=!0,i.positiveValuesOnly&&0>=a&&(a=null),i.isXAxis){if((L=D.xData).length){L=i.logarithmic?L.filter(i.validatePositiveValue):L;var x=(P=D.getXExtremes(L)).min,u=P.max;r(x)||x instanceof Date||(L=L.filter(r),x=(P=D.getXExtremes(L)).min,u=P.max),L.length&&(i.dataMin=Math.min(o(i.dataMin,x),x),i.dataMax=Math.max(o(i.dataMax,u),u))}}else D=D.applyExtremes(),r(D.dataMin)&&(x=D.dataMin,i.dataMin=Math.min(o(i.dataMin,x),x)),r(D.dataMax)&&(u=D.dataMax,i.dataMax=Math.max(o(i.dataMax,u),u)),M(a)&&(i.threshold=a),(!L.softThreshold||i.positiveValuesOnly)&&(i.softThreshold=!1)}})}),n(this,"afterGetSeriesExtremes")},R.prototype.translate=function(i,p,P,D,L,a){var x=this.linkedParent||this,u=D&&x.old?x.old.min:x.min;if(!r(u))return NaN;var B=x.minPixelPadding;L=(x.isOrdinal||x.brokenAxis&&x.brokenAxis.hasBreaks||x.logarithmic&&L)&&x.lin2val;var b=1,N=0;return(D=D&&x.old?x.old.transA:x.transA)||(D=x.transA),P&&(b*=-1,N=x.len),x.reversed&&(N-=(b*=-1)*(x.sector||x.len)),p?(a=(i*b+N-B)/D+u,L&&(a=x.lin2val(a))):(L&&(i=x.val2lin(i)),i=b*(i-u)*D,a=(x.isRadial?i:S(i))+N+b*B+(r(a)?D*a:0)),a},R.prototype.toPixels=function(i,p){return this.translate(i,!1,!this.horiz,void 0,!0)+(p?0:this.pos)},R.prototype.toValue=function(i,p){return this.translate(i-(p?0:this.pos),!0,!this.horiz,void 0,!0)},R.prototype.getPlotLinePath=function(i){function p(q,H,W){return"pass"!==V&&(q<H||q>W)&&(V?q=v(q,H,W):at=!0),q}var st,rt,ot,tt,at,P=this,D=P.chart,L=P.left,a=P.top,x=i.old,u=i.value,B=i.lineWidth,b=x&&D.oldChartHeight||D.chartHeight,N=x&&D.oldChartWidth||D.chartWidth,G=P.transB,U=i.translatedValue,V=i.force;return n(this,"getPlotLinePath",i={value:u,lineWidth:B,old:x,force:V,acrossPanes:i.acrossPanes,translatedValue:U},function(q){U=o(U,P.translate(u,void 0,void 0,x)),U=v(U,-1e5,1e5),st=ot=Math.round(U+G),rt=tt=Math.round(b-U-G),r(U)?P.horiz?(rt=a,tt=b-P.bottom,st=ot=p(st,L,L+P.width)):(st=L,ot=N-P.right,rt=tt=p(rt,a,a+P.height)):(at=!0,V=!1),q.path=at&&!V?null:D.renderer.crispLine([["M",st,rt],["L",ot,tt]],B||1)}),i.path},R.prototype.getLinearTickPositions=function(i,p,P){var D=S(Math.floor(p/i)*i);P=S(Math.ceil(P/i)*i);var a,L=[];if(S(D+i)===D&&(a=20),this.single)return[p];for(p=D;p<=P&&(L.push(p),(p=S(p+i,a))!==x);)var x=p;return L},R.prototype.getMinorTickInterval=function(){var i=this.options;return!0===i.minorTicks?o(i.minorTickInterval,"auto"):!1===i.minorTicks?null:i.minorTickInterval},R.prototype.getMinorTickPositions=function(){var i=this.options,p=this.tickPositions,P=this.minorTickInterval,D=this.pointRangePadding||0,L=this.min-D,a=(D=this.max+D)-L,x=[];if(a&&a/P<this.len/3){var u=this.logarithmic;if(u)this.paddedTicks.forEach(function(B,b,N){b&&x.push.apply(x,u.getLogTickPositions(P,N[b-1],N[b],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())x=x.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(P),L,D,i.startOfWeek));else for(i=L+(p[0]-L)%P;i<=D&&i!==x[0];i+=P)x.push(i)}return 0!==x.length&&this.trimTicks(x),x},R.prototype.adjustForMinRange=function(){var a,x,u,B,i=this.options,p=this.logarithmic,P=this.min,D=this.max,L=0;if(this.isXAxis&&typeof this.minRange>"u"&&!p&&(M(i.min)||M(i.max)||M(i.floor)||M(i.ceiling)?this.minRange=null:(this.series.forEach(function(U){if(u=U.xData,B=U.xIncrement?1:u.length-1,1<u.length)for(a=B;0<a;a--)x=u[a]-u[a-1],(!L||x<L)&&(L=x)}),this.minRange=Math.min(5*L,this.dataMax-this.dataMin))),D-P<this.minRange){var b=this.dataMax-this.dataMin>=this.minRange,N=this.minRange,G=(N-D+P)/2;G=[P-G,o(i.min,P-G)],b&&(G[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin),D=[(P=y(G))+N,o(i.max,P+N)],b&&(D[2]=p?p.log2lin(this.dataMax):this.dataMax),(D=C(D))-P<N&&(G[0]=D-N,G[1]=o(i.min,D-N),P=y(G))}this.min=P,this.max=D},R.prototype.getClosest=function(){var i;return this.categories?i=1:this.series.forEach(function(p){var P=p.closestPointRange,D=p.visible||!p.chart.options.chart.ignoreHiddenSeries;!p.noSharedTooltip&&M(P)&&D&&(i=M(i)?Math.min(i,P):P)}),i},R.prototype.nameToX=function(i){var p=d(this.options.categories),P=p?this.categories:this.names,D=i.options.x;if(i.series.requireSorting=!1,M(D)||(D=this.options.uniqueNames&&P?p?P.indexOf(i.name):o(P.keys[i.name],-1):i.series.autoIncrement()),-1===D){if(!p&&P)var L=P.length}else L=D;return typeof L<"u"?(this.names[L]=i.name,this.names.keys[i.name]=L):i.x&&(L=i.x),L},R.prototype.updateNames=function(){var i=this,p=this.names;0<p.length&&(Object.keys(p.keys).forEach(function(P){delete p.keys[P]}),p.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(P){P.xIncrement=null,(!P.points||P.isDirtyData)&&(i.max=Math.max(i.max,P.xData.length-1),P.processData(),P.generatePoints()),P.data.forEach(function(D,L){if(D&&D.options&&typeof D.name<"u"){var a=i.nameToX(D);typeof a<"u"&&a!==D.x&&(D.x=a,P.xData[L]=a)}})}))},R.prototype.setAxisTranslation=function(){var B,i=this,p=i.max-i.min,P=i.linkedParent,D=!!i.categories,L=i.isXAxis,a=i.axisPointRange||0,x=0,u=0;if(L||D||a){var b=i.getClosest();P?(x=P.minPointOffset,u=P.pointRangePadding):i.series.forEach(function(N){var G=D?1:L?o(N.options.pointRange,b,0):i.axisPointRange||0,U=N.options.pointPlacement;a=Math.max(a,G),(!i.single||D)&&(N=N.is("xrange")?!L:L,x=Math.max(x,N&&c(U)?0:G/2),u=Math.max(u,N&&"on"===U?0:G))}),i.minPointOffset=x*=P=i.ordinal&&i.ordinal.slope&&b?i.ordinal.slope/b:1,i.pointRangePadding=u*=P,i.pointRange=Math.min(a,i.single&&D?1:p),L&&(i.closestPointRange=b)}i.translationSlope=i.transA=B=i.staticScale||i.len/(p+u||1),i.transB=i.horiz?i.left:i.bottom,i.minPixelPadding=B*x,n(this,"afterSetAxisTranslation")},R.prototype.minFromRange=function(){return this.max-this.range},R.prototype.setTickInterval=function(i){var p=this.chart,P=this.logarithmic,D=this.options,L=this.isXAxis,a=this.isLinked,x=D.tickPixelInterval,u=this.categories,B=this.softThreshold,b=D.maxPadding,N=D.minPadding,G=r(D.tickInterval)&&0<=D.tickInterval?D.tickInterval:void 0,U=r(this.threshold)?this.threshold:null;this.dateTime||u||a||this.getTickAmount();var V=o(this.userMin,D.min),st=o(this.userMax,D.max);if(a){this.linkedParent=p[this.coll][D.linkedTo];var rt=this.linkedParent.getExtremes();this.min=o(rt.min,rt.dataMin),this.max=o(rt.max,rt.dataMax),D.type!==this.linkedParent.options.type&&I(11,1,p)}else{if(B&&M(U))if(this.dataMin>=U)rt=U,N=0;else if(this.dataMax<=U){var ot=U;b=0}this.min=o(V,rt,this.dataMin),this.max=o(st,ot,this.dataMax)}if(P&&(this.positiveValuesOnly&&!i&&0>=Math.min(this.min,o(this.dataMin,this.min))&&I(10,1,p),this.min=S(P.log2lin(this.min),16),this.max=S(P.log2lin(this.max),16)),this.range&&M(this.max)&&(this.userMin=this.min=V=Math.max(this.dataMin,this.minFromRange()),this.userMax=st=this.max,this.range=null),n(this,"foundExtremes"),this.beforePadding&&this.beforePadding(),this.adjustForMinRange(),!(u||this.axisPointRange||this.stacking&&this.stacking.usePercentage||a)&&M(this.min)&&M(this.max)&&(p=this.max-this.min)&&(!M(V)&&N&&(this.min-=p*N),!M(st)&&b&&(this.max+=p*b)),r(this.userMin)||(r(D.softMin)&&D.softMin<this.min&&(this.min=V=D.softMin),r(D.floor)&&(this.min=Math.max(this.min,D.floor))),r(this.userMax)||(r(D.softMax)&&D.softMax>this.max&&(this.max=st=D.softMax),r(D.ceiling)&&(this.max=Math.min(this.max,D.ceiling))),B&&M(this.dataMin)&&(U=U||0,!M(V)&&this.min<U&&this.dataMin>=U?this.min=this.options.minRange?Math.min(U,this.max-this.minRange):U:!M(st)&&this.max>U&&this.dataMax<=U&&(this.max=this.options.minRange?Math.max(U,this.min+this.minRange):U)),r(this.min)&&r(this.max)&&!this.chart.polar&&this.min>this.max&&(M(this.options.min)?this.max=this.min:M(this.options.max)&&(this.min=this.max)),this.tickInterval=this.min===this.max||typeof this.min>"u"||typeof this.max>"u"?1:a&&this.linkedParent&&!G&&x===this.linkedParent.options.tickPixelInterval?G=this.linkedParent.tickInterval:o(G,this.tickAmount?(this.max-this.min)/Math.max(this.tickAmount-1,1):void 0,u?1:(this.max-this.min)*x/Math.max(this.len,x)),L&&!i){var tt=this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max);this.series.forEach(function(at){at.forceCrop=at.forceCropping&&at.forceCropping(),at.processData(tt)}),n(this,"postProcessData",{hasExtremesChanged:tt})}this.setAxisTranslation(),n(this,"initialAxisTranslation"),this.pointRange&&!G&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval)),i=o(D.minTickInterval,this.dateTime&&!this.series.some(function(at){return at.noSharedTooltip})?this.closestPointRange:0),!G&&this.tickInterval<i&&(this.tickInterval=i),this.dateTime||this.logarithmic||G||(this.tickInterval=X(this,this.tickInterval)),this.tickAmount||(this.tickInterval=this.unsquish()),this.setTickPositions()},R.prototype.setTickPositions=function(){var u,i=this.options,p=i.tickPositions,P=i.tickPositioner,D=this.getMinorTickInterval(),L=this.hasVerticalPanning(),a="colorAxis"===this.coll,x=(a||!L)&&i.startOnTick;if(L=(a||!L)&&i.endOnTick,a=[],this.tickmarkOffset=this.categories&&"between"===i.tickmarkPlacement&&1===this.tickInterval?.5:0,this.minorTickInterval="auto"===D&&this.tickInterval?this.tickInterval/5:D,this.single=this.min===this.max&&M(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==i.allowDecimals),p)a=p.slice();else if(r(this.min)&&r(this.max)){if(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200)))if(this.dateTime)a=this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,i.units),this.min,this.max,i.startOfWeek,this.ordinal&&this.ordinal.positions,this.closestPointRange,!0);else if(this.logarithmic)a=this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max);else for(D=i=this.tickInterval;D<=2*i&&(a=this.getLinearTickPositions(this.tickInterval,this.min,this.max),this.tickAmount&&a.length>this.tickAmount);)this.tickInterval=X(this,D*=1.1);else a=[this.min,this.max],I(19,!1,this.chart);a.length>this.len&&(a=[a[0],a[a.length-1]])[0]===a[1]&&(a.length=1),P&&(this.tickPositions=a,(u=P.apply(this,[this.min,this.max]))&&(a=u))}this.tickPositions=a,this.paddedTicks=a.slice(0),this.trimTicks(a,x,L),!this.isLinked&&r(this.min)&&r(this.max)&&(this.single&&2>a.length&&!this.categories&&!this.series.some(function(B){return B.is("heatmap")&&"between"===B.options.pointPlacement})&&(this.min-=.5,this.max+=.5),p||u||this.adjustTickAmount()),n(this,"afterSetTickPositions")},R.prototype.trimTicks=function(i,p,P){var D=i[0],L=i[i.length-1],a=!this.isOrdinal&&this.minPointOffset||0;if(n(this,"trimTicks"),!this.isLinked){if(p&&D!==-1/0)this.min=D;else for(;this.min-a>i[0];)i.shift();if(P)this.max=L;else for(;this.max+a<i[i.length-1];)i.pop();0===i.length&&M(D)&&!this.options.tickPositions&&i.push((L+D)/2)}},R.prototype.alignToOthers=function(){var a,i=this,p=[this],P=i.options,D="yAxis"===this.coll&&this.chart.options.chart.alignThresholds,L=[];if(i.thresholdAlignment=void 0,(!1!==this.chart.options.chart.alignTicks&&P.alignTicks||D)&&!1!==P.startOnTick&&!1!==P.endOnTick&&!i.logarithmic){var x=function(b){var N=b.options;return[b.horiz?N.left:N.top,N.width,N.height,N.pane].join()},u=x(this);this.chart[this.coll].forEach(function(b){var N=b.series;N.length&&N.some(function(G){return G.visible})&&b!==i&&x(b)===u&&(a=!0,p.push(b))})}if(a&&D){p.forEach(function(b){b=b.getThresholdAlignment(i),r(b)&&L.push(b)});var B=1<L.length?L.reduce(function(b,N){return b+N},0)/L.length:void 0;p.forEach(function(b){b.thresholdAlignment=B})}return a},R.prototype.getThresholdAlignment=function(i){if((!r(this.dataMin)||this!==i&&this.series.some(function(p){return p.isDirty||p.isDirtyData}))&&this.getSeriesExtremes(),r(this.threshold))return i=v((this.threshold-(this.dataMin||0))/((this.dataMax||0)-(this.dataMin||0)),0,1),this.options.reversed&&(i=1-i),i},R.prototype.getTickAmount=function(){var i=this.options,p=i.tickPixelInterval,P=i.tickAmount;!M(i.tickInterval)&&!P&&this.len<p&&!this.isRadial&&!this.logarithmic&&i.startOnTick&&i.endOnTick&&(P=2),!P&&this.alignToOthers()&&(P=Math.ceil(this.len/p)+1),4>P&&(this.finalTickAmt=P,P=5),this.tickAmount=P},R.prototype.adjustTickAmount=function(){var i=this,p=i.finalTickAmt,P=i.max,D=i.min,L=i.options,a=i.tickPositions,x=i.tickAmount,u=i.thresholdAlignment,B=a&&a.length,b=o(i.threshold,i.softThreshold?0:null),N=i.tickInterval;if(r(u)){var G=.5>u?Math.ceil(u*(x-1)):Math.floor(u*(x-1));L.reversed&&(G=x-1-G)}if(i.hasData()&&r(D)&&r(P)){if(u=function(){i.transA*=(B-1)/(x-1),i.min=L.startOnTick?a[0]:Math.min(D,a[0]),i.max=L.endOnTick?a[a.length-1]:Math.max(P,a[a.length-1])},r(G)&&r(i.threshold)){for(;a[G]!==b||a.length!==x||a[0]>D||a[a.length-1]<P;){for(a.length=0,a.push(i.threshold);a.length<x;)void 0===a[G]||a[G]>i.threshold?a.unshift(S(a[0]-N)):a.push(S(a[a.length-1]+N));if(N>8*i.tickInterval)break;N*=2}u()}else if(B<x){for(;a.length<x;)a.length%2||D===b?a.push(S(a[a.length-1]+N)):a.unshift(S(a[0]-N));u()}if(M(p)){for(N=b=a.length;N--;)(3===p&&N%2==1||2>=p&&0<N&&N<b-1)&&a.splice(N,1);i.finalTickAmt=void 0}}},R.prototype.setScale=function(){var i=!1,p=!1;this.series.forEach(function(D){i=i||D.isDirtyData||D.isDirty,p=p||D.xAxis&&D.xAxis.isDirty||!1}),this.setAxisSize();var P=this.len!==(this.old&&this.old.len);P||i||p||this.isLinked||this.forceRedraw||this.userMin!==(this.old&&this.old.userMin)||this.userMax!==(this.old&&this.old.userMax)||this.alignToOthers()?(this.stacking&&(this.stacking.resetStacks(),this.stacking.buildStacks()),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.isDirty||(this.isDirty=P||this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max))):this.stacking&&this.stacking.cleanStacks(),i&&this.panningState&&(this.panningState.isDirty=!0),n(this,"afterSetScale")},R.prototype.setExtremes=function(i,p,P,D,L){var a=this,x=a.chart;P=o(P,!0),a.series.forEach(function(u){delete u.kdTree}),L=k(L,{min:i,max:p}),n(a,"setExtremes",L,function(){a.userMin=i,a.userMax=p,a.eventArgs=L,P&&x.redraw(D)})},R.prototype.zoom=function(i,p){var P=this,D=this.dataMin,L=this.dataMax,a=this.options,x=Math.min(D,o(a.min,D)),u=Math.max(L,o(a.max,L));return n(this,"zoom",i={newMin:i,newMax:p},function(B){var b=B.newMin,N=B.newMax;(b!==P.min||N!==P.max)&&(P.allowZoomOutside||(M(D)&&(b<x&&(b=x),b>u&&(b=u)),M(L)&&(N<x&&(N=x),N>u&&(N=u))),P.displayBtn=typeof b<"u"||typeof N<"u",P.setExtremes(b,N,!1,void 0,{trigger:"zoom"})),B.zoomed=!0}),i.zoomed},R.prototype.setAxisSize=function(){var i=this.chart,p=this.options,P=p.offsets||[0,0,0,0],D=this.horiz,L=this.width=Math.round(l(o(p.width,i.plotWidth-P[3]+P[1]),i.plotWidth)),a=this.height=Math.round(l(o(p.height,i.plotHeight-P[0]+P[2]),i.plotHeight)),x=this.top=Math.round(l(o(p.top,i.plotTop+P[0]),i.plotHeight,i.plotTop));p=this.left=Math.round(l(o(p.left,i.plotLeft+P[3]),i.plotWidth,i.plotLeft)),this.bottom=i.chartHeight-a-x,this.right=i.chartWidth-L-p,this.len=Math.max(D?L:a,0),this.pos=D?p:x},R.prototype.getExtremes=function(){var i=this.logarithmic;return{min:i?S(i.lin2log(this.min)):this.min,max:i?S(i.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},R.prototype.getThreshold=function(i){var p=this.logarithmic,P=p?p.lin2log(this.min):this.min;return p=p?p.lin2log(this.max):this.max,null===i||i===-1/0?i=P:i===1/0?i=p:P>i?i=P:p<i&&(i=p),this.translate(i,0,1,0,1)},R.prototype.autoLabelAlign=function(i){var p=(o(i,0)-90*this.side+720)%360;return n(this,"autoLabelAlign",i={align:"center"},function(P){15<p&&165>p?P.align="right":195<p&&345>p&&(P.align="left")}),i.align},R.prototype.tickSize=function(i){var p=this.options,P=o(p["tick"===i?"tickWidth":"minorTickWidth"],"tick"===i&&this.isXAxis&&!this.categories?1:0),D=p["tick"===i?"tickLength":"minorTickLength"];if(P&&D){"inside"===p[i+"Position"]&&(D=-D);var L=[D,P]}return n(this,"afterTickSize",i={tickSize:L}),i.tickSize},R.prototype.labelMetrics=function(){var i=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style.fontSize,this.ticks[i]&&this.ticks[i].label)},R.prototype.unsquish=function(){var i=this.options.labels,p=this.horiz,P=this.tickInterval,D=this.len/(((this.categories?1:0)+this.max-this.min)/P),L=i.rotation,a=this.labelMetrics(),x=Math.max(this.max-this.min,0),u=function(ot){var tt=ot/(D||1);return(tt=1<tt?Math.ceil(tt):1)*P>x&&ot!==1/0&&D!==1/0&&x&&(tt=Math.ceil(x/P)),S(tt*P)},B=P,b=Number.MAX_VALUE;if(p){if(!i.staggerLines)if(r(L))var N=[L];else D<i.autoRotationLimit&&(N=i.autoRotation);if(N)for(var G=p=void 0,U=0,V=N;U<V.length;U++){var st=V[U];if((st===L||st&&-90<=st&&90>=st)&&(G=(p=u(Math.abs(a.h/Math.sin(g*st))))+Math.abs(st/360))<b){b=G;var rt=st;B=p}}}else B=u(a.h);return this.autoRotation=N,this.labelRotation=o(rt,r(L)?L:0),i.step?P:B},R.prototype.getSlotWidth=function(i){var p=this.chart,P=this.horiz,D=this.options.labels,L=Math.max(this.tickPositions.length-(this.categories?0:1),1),a=p.margin[3];if(i&&r(i.slotWidth))return i.slotWidth;if(P&&2>D.step)return D.rotation?0:(this.staggerLines||1)*this.len/L;if(!P){if(void 0!==(i=D.style.width))return parseInt(String(i),10);if(a)return a-p.spacing[3]}return.33*p.chartWidth},R.prototype.renderUnsquish=function(){var i=this.chart,p=i.renderer,P=this.tickPositions,D=this.ticks,L=this.options.labels,a=L.style,x=this.horiz,u=this.getSlotWidth(),B=Math.max(1,Math.round(u-2*L.padding)),b={},N=this.labelMetrics(),G=a.textOverflow,U=0;if(c(L.rotation)||(b.rotation=L.rotation||0),P.forEach(function(ot){(ot=D[ot]).movedLabel&&ot.replaceMovedLabel(),ot&&ot.label&&ot.label.textPxLength>U&&(U=ot.label.textPxLength)}),this.maxLabelLength=U,this.autoRotation)U>B&&U>N.h?b.rotation=this.labelRotation:this.labelRotation=0;else if(u){var V=B;if(!G){var st="clip";for(B=P.length;!x&&B--;){var rt=P[B];(rt=D[rt].label)&&(rt.styles&&"ellipsis"===rt.styles.textOverflow?rt.css({textOverflow:"clip"}):rt.textPxLength>u&&rt.css({width:u+"px"}),rt.getBBox().height>this.len/P.length-(N.h-N.f)&&(rt.specificTextOverflow="ellipsis"))}}}b.rotation&&(V=U>.5*i.chartHeight?.33*i.chartHeight:U,G||(st="ellipsis")),(this.labelAlign=L.align||this.autoLabelAlign(this.labelRotation))&&(b.align=this.labelAlign),P.forEach(function(ot){var tt=(ot=D[ot])&&ot.label,at=a.width,q={};tt&&(tt.attr(b),ot.shortenLabel?ot.shortenLabel():V&&!at&&"nowrap"!==a.whiteSpace&&(V<tt.textPxLength||"SPAN"===tt.element.tagName)?(q.width=V+"px",G||(q.textOverflow=tt.specificTextOverflow||st),tt.css(q)):tt.styles&&tt.styles.width&&!q.width&&!at&&tt.css({width:null}),delete tt.specificTextOverflow,ot.rotation=b.rotation)},this),this.tickRotCorr=p.rotCorr(N.b,this.labelRotation||0,0!==this.side)},R.prototype.hasData=function(){return this.series.some(function(i){return i.hasData()})||this.options.showEmpty&&M(this.min)&&M(this.max)},R.prototype.addTitle=function(i){var x,D=this.opposite,L=this.options.title,a=this.chart.styledMode;this.axisTitle||((x=L.textAlign)||(x=(this.horiz?{low:"left",middle:"center",high:"right"}:{low:D?"right":"left",middle:"center",high:D?"left":"right"})[L.align]),this.axisTitle=this.chart.renderer.text(L.text||"",0,0,L.useHTML).attr({zIndex:7,rotation:L.rotation,align:x}).addClass("highcharts-axis-title"),a||this.axisTitle.css(e(L.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0),a||L.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"}),this.axisTitle[i?"show":"hide"](i)},R.prototype.generateTick=function(i){var p=this.ticks;p[i]?p[i].addLabel():p[i]=new Z(this,i)},R.prototype.getOffset=function(){var i=this,p=this,P=p.chart,D=p.horiz,L=p.options,a=p.side,x=p.ticks,u=p.tickPositions,B=p.coll,b=p.axisParent,N=P.renderer,G=P.inverted&&!p.isZAxis?[1,0,3,2][a]:a,U=p.hasData(),V=L.title,st=L.labels,rt=P.axisOffset;P=P.clipOffset;var at,ot=[-1,1,1,-1][a],tt=L.className,q=0,H=0,W=0;if(p.showAxis=at=U||L.showEmpty,p.staggerLines=p.horiz&&st.staggerLines||void 0,!p.axisGroup){var K=function(it,nt,ht){return N.g(it).attr({zIndex:ht}).addClass("highcharts-".concat(B.toLowerCase()).concat(nt," ")+(i.isRadial?"highcharts-radial-axis".concat(nt," "):"")+(tt||"")).add(b)};p.gridGroup=K("grid","-grid",L.gridZIndex),p.axisGroup=K("axis","",L.zIndex),p.labelGroup=K("axis-labels","-labels",st.zIndex)}if(U||p.isLinked?(u.forEach(function(it){p.generateTick(it)}),p.renderUnsquish(),p.reserveSpaceDefault=0===a||2===a||{1:"left",3:"right"}[a]===p.labelAlign,o(st.reserveSpace,"center"===p.labelAlign||null,p.reserveSpaceDefault)&&u.forEach(function(it){W=Math.max(x[it].getLabelSize(),W)}),p.staggerLines&&(W*=p.staggerLines),p.labelOffset=W*(p.opposite?-1:1)):t(x,function(it,nt){it.destroy(),delete x[nt]}),V&&V.text&&!1!==V.enabled&&(p.addTitle(at),at&&!1!==V.reserveSpace)){p.titleOffset=q=p.axisTitle.getBBox()[D?"height":"width"];var Q=V.offset;H=M(Q)?0:o(V.margin,D?5:10)}p.renderLine(),p.offset=ot*o(L.offset,rt[a]?rt[a]+(L.margin||0):0),p.tickRotCorr=p.tickRotCorr||{x:0,y:0},V=0===a?-p.labelMetrics().h:2===a?p.tickRotCorr.y:0,U=Math.abs(W)+H,W&&(U=U-V+ot*(D?o(st.y,p.tickRotCorr.y+8*ot):st.x)),p.axisTitleMargin=o(Q,U),p.getMaxLabelDimensions&&(p.maxLabelDimensions=p.getMaxLabelDimensions(x,u)),"colorAxis"!==B&&(D=this.tickSize("tick"),rt[a]=Math.max(rt[a],(p.axisTitleMargin||0)+q+ot*p.offset,U,u&&u.length&&D?D[0]+ot*p.offset:0),L=!p.axisLine||L.offset?0:2*Math.floor(p.axisLine.strokeWidth()/2),P[G]=Math.max(P[G],L)),n(this,"afterGetOffset")},R.prototype.getLinePath=function(i){var p=this.chart,P=this.opposite,D=this.offset,L=this.horiz,a=this.left+(P?this.width:0)+D;return D=p.chartHeight-this.bottom-(P?this.height:0)+D,P&&(i*=-1),p.renderer.crispLine([["M",L?this.left:a,L?D:this.top],["L",L?p.chartWidth-this.right:a,L?D:p.chartHeight-this.bottom]],i)},R.prototype.renderLine=function(){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}))},R.prototype.getTitlePosition=function(){var i=this.horiz,p=this.left,P=this.top,D=this.len,L=this.options.title,a=i?p:P,x=this.opposite,u=this.offset,B=L.x,b=L.y,N=this.axisTitle,G=this.chart.renderer.fontMetrics(L.style.fontSize,N);return N=N?Math.max(N.getBBox(!1,0).height-G.h-1,0):0,D={low:a+(i?0:D),middle:a+D/2,high:a+(i?D:0)}[L.align],p=(i?P+this.height:p)+(i?1:-1)*(x?-1:1)*(this.axisTitleMargin||0)+[-N,N,G.f,-N][this.side],n(this,"afterGetTitlePosition",{titlePosition:i={x:i?D+B:p+(x?this.width:0)+u+B,y:i?p+b-(x?this.height:0)+u:D+b}}),i},R.prototype.renderMinorTick=function(i,p){var P=this.minorTicks;P[i]||(P[i]=new Z(this,i,"minor")),p&&P[i].isNew&&P[i].render(null,!0),P[i].render(null,!1,1)},R.prototype.renderTick=function(i,p,P){var D=this.ticks;(!this.isLinked||i>=this.min&&i<=this.max||this.grid&&this.grid.isColumn)&&(D[i]||(D[i]=new Z(this,i)),P&&D[i].isNew&&D[i].render(p,!0,-1),D[i].render(p))},R.prototype.render=function(){var ot,tt,i=this,p=i.chart,P=i.logarithmic,D=i.options,L=i.isLinked,a=i.tickPositions,x=i.axisTitle,u=i.ticks,B=i.minorTicks,b=i.alternateBands,N=D.stackLabels,G=D.alternateGridColor,U=i.tickmarkOffset,V=i.axisLine,st=i.showAxis,rt=j(p.renderer.globalAnimation);if(i.labelEdge.length=0,i.overlap=!1,[u,B,b].forEach(function(q){t(q,function(H){H.isActive=!1})}),i.hasData()||L){var at=i.chart.hasRendered&&i.old&&r(i.old.min);i.minorTickInterval&&!i.categories&&i.getMinorTickPositions().forEach(function(q){i.renderMinorTick(q,at)}),a.length&&(a.forEach(function(q,H){i.renderTick(q,H,at)}),U&&(0===i.min||i.single)&&(u[-1]||(u[-1]=new Z(i,-1,null,!0)),u[-1].render(-1))),G&&a.forEach(function(q,H){tt=typeof a[H+1]<"u"?a[H+1]+U:i.max-U,H%2==0&&q<i.max&&tt<=i.max+(p.polar?-U:U)&&(b[q]||(b[q]=new $.PlotLineOrBand(i)),ot=q+U,b[q].options={from:P?P.lin2log(ot):ot,to:P?P.lin2log(tt):tt,color:G,className:"highcharts-alternate-grid"},b[q].render(),b[q].isActive=!0)}),i._addedPlotLB||(i._addedPlotLB=!0,(D.plotLines||[]).concat(D.plotBands||[]).forEach(function(q){i.addPlotBandOrLine(q)}))}[u,B,b].forEach(function(q){var H=[],W=rt.duration;t(q,function(K,Q){K.isActive||(K.render(Q,!1,0),K.isActive=!1,H.push(Q))}),w(function(){for(var K=H.length;K--;)q[H[K]]&&!q[H[K]].isActive&&(q[H[K]].destroy(),delete q[H[K]])},q!==b&&p.hasRendered&&W?W:0)}),V&&(V[V.isPlaced?"animate":"attr"]({d:this.getLinePath(V.strokeWidth())}),V.isPlaced=!0,V[st?"show":"hide"](st)),x&&st&&(D=i.getTitlePosition(),x[x.isNew?"attr":"animate"](D),x.isNew=!1),N&&N.enabled&&i.stacking&&i.stacking.renderStackTotals(),i.old={len:i.len,max:i.max,min:i.min,transA:i.transA,userMax:i.userMax,userMin:i.userMin},i.isDirty=!1,n(this,"afterRender")},R.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(i){i.render()})),this.series.forEach(function(i){i.isDirty=!0})},R.prototype.getKeepProps=function(){return this.keepProps||R.keepProps},R.prototype.destroy=function(i){var p=this,P=p.plotLinesAndBands,D=this.eventOptions;if(n(this,"destroy",{keepEvents:i}),i||s(p),[p.ticks,p.minorTicks,p.alternateBands].forEach(function(a){T(a)}),P)for(i=P.length;i--;)P[i].destroy();for(var L in"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(a){p[a]&&(p[a]=p[a].destroy())}),p.plotLinesAndBandsGroups)p.plotLinesAndBandsGroups[L]=p.plotLinesAndBandsGroups[L].destroy();t(p,function(a,x){-1===p.getKeepProps().indexOf(x)&&delete p[x]}),this.eventOptions=D},R.prototype.drawCrosshair=function(i,p){var a,P=this.crosshair,D=o(P&&P.snap,!0),L=this.chart,x=this.cross;if(n(this,"drawCrosshair",{e:i,point:p}),i||(i=this.cross&&this.cross.e),P&&!1!==(M(p)||!D)){if(D?M(p)&&(a=o("colorAxis"!==this.coll?p.crosshairPos:null,this.isXAxis?p.plotX:this.len-p.plotY)):a=i&&(this.horiz?i.chartX-this.pos:this.len-i.chartY+this.pos),M(a)){var u={value:p&&(this.isXAxis?p.x:o(p.stackY,p.y)),translatedValue:a};L.polar&&k(u,{isCrosshair:!0,chartX:i&&i.chartX,chartY:i&&i.chartY,point:p}),u=this.getPlotLinePath(u)||null}if(!M(u))return void this.hideCrosshair();D=this.categories&&!this.isRadial,x||(this.cross=x=L.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(D?"category ":"thin ")+(P.className||"")).attr({zIndex:o(P.zIndex,2)}).add(),L.styledMode||(x.attr({stroke:P.color||(D?A.parse("#ccd6eb").setOpacity(.25).get():"#cccccc"),"stroke-width":o(P.width,1)}).css({"pointer-events":"none"}),P.dashStyle&&x.attr({dashstyle:P.dashStyle}))),x.show().attr({d:u}),D&&!P.width&&x.attr({"stroke-width":this.transA}),this.cross.e=i}else this.hideCrosshair();n(this,"afterDrawCrosshair",{e:i,point:p})},R.prototype.hideCrosshair=function(){this.cross&&this.cross.hide(),n(this,"afterHideCrosshair")},R.prototype.hasVerticalPanning=function(){var i=this.chart.options.chart.panning;return!!(i&&i.enabled&&/y/.test(i.type))},R.prototype.validatePositiveValue=function(i){return r(i)&&0<i},R.prototype.update=function(i,p){var P=this.chart;i=e(this.userOptions,i),this.destroy(!0),this.init(P,i),P.isDirtyBox=!0,o(p,!0)&&P.redraw()},R.prototype.remove=function(i){for(var p=this.chart,P=this.coll,D=this.series,L=D.length;L--;)D[L]&&D[L].remove(!1);E(p.axes,this),E(p[P],this),p[P].forEach(function(a,x){a.options.index=a.userOptions.index=x}),this.destroy(),p.isDirtyBox=!0,o(i,!0)&&p.redraw()},R.prototype.setTitle=function(i,p){this.update({title:i},p)},R.prototype.setCategories=function(i,p){this.update({categories:i},p)},R.defaultOptions=Y.defaultXAxisOptions,R.keepProps="extKey hcEvents names series userMax userMin".split(" "),R}()}),ct(F,"Core/Axis/DateTimeAxis.js",[F["Core/Utilities.js"]],function(_){var $,Y=_.addEvent,A=_.getMagnitude,et=_.normalizeTickInterval,J=_.timeUnits;return function(Z){function z(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function j(g){"datetime"!==g.userOptions.type?this.dateTime=void 0:this.dateTime||(this.dateTime=new m(this))}var O=[];Z.compose=function(g){return-1===O.indexOf(g)&&(O.push(g),g.keepProps.push("dateTime"),g.prototype.getTimeTicks=z,Y(g,"init",j)),g};var m=function(){function g(y){this.axis=y}return g.prototype.normalizeTimeTickInterval=function(y,C){var T,v=C||[["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]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],S=J[(C=v[v.length-1])[0]],M=C[1];for(T=0;T<v.length&&(S=J[(C=v[T])[0]],M=C[1],!(v[T+1]&&y<=(S*M[M.length-1]+J[v[T+1][0]])/2));T++);return S===J.year&&y<5*S&&(M=[1,2,5]),{unitRange:S,count:y=et(y/S,M,"year"===C[0]?Math.max(A(y/S),1):1),unitName:C[0]}},g.prototype.getXDateFormat=function(y,C){var v=this.axis,S=v.chart.time;return v.closestPointRange?S.getDateFormat(v.closestPointRange,y,v.options.startOfWeek,C)||S.resolveDTLFormat(C.year).main:S.resolveDTLFormat(C.day).main},g}();Z.Additions=m}($||($={})),$}),ct(F,"Core/Axis/LogarithmicAxis.js",[F["Core/Utilities.js"]],function(_){var J,Y=_.addEvent,A=_.normalizeTickInterval,et=_.pick;return function($){function Z(m){var g=this.logarithmic;"logarithmic"!==m.userOptions.type?this.logarithmic=void 0:g||(this.logarithmic=new O(this))}function z(){var m=this.logarithmic;m&&(this.lin2val=function(g){return m.lin2log(g)},this.val2lin=function(g){return m.log2lin(g)})}var j=[];$.compose=function(m){return-1===j.indexOf(m)&&(j.push(m),m.keepProps.push("logarithmic"),Y(m,"init",Z),Y(m,"afterInit",z)),m};var O=function(){function m(g){this.axis=g}return m.prototype.getLogTickPositions=function(g,y,C,v){var S=this.axis,M=S.len,T=S.options,E=[];if(v||(this.minorAutoInterval=void 0),.5<=g)g=Math.round(g),E=S.getLinearTickPositions(g,y,C);else if(.08<=g){var k,I=Math.floor(y),n=T=void 0;for(M=.3<g?[1,2,4]:.15<g?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];I<C+1&&!n;I++){var d=M.length;for(k=0;k<d&&!n;k++){var r=this.log2lin(this.lin2log(I)*M[k]);r>y&&(!v||T<=C)&&typeof T<"u"&&E.push(T),T>C&&(n=!0),T=r}}}else y=this.lin2log(y),C=this.lin2log(C),g=v?S.getMinorTickInterval():T.tickInterval,g=et("auto"===g?null:g,this.minorAutoInterval,T.tickPixelInterval/(v?5:1)*(C-y)/((v?M/S.tickPositions.length:M)||1)),g=A(g),E=S.getLinearTickPositions(g,y,C).map(this.log2lin),v||(this.minorAutoInterval=g/5);return v||(S.tickInterval=g),E},m.prototype.lin2log=function(g){return Math.pow(10,g)},m.prototype.log2lin=function(g){return Math.log(g)/Math.LN10},m}();$.Additions=O}(J||(J={})),J}),ct(F,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[F["Core/Utilities.js"]],function(_){var J,Y=_.erase,A=_.extend,et=_.isNumber;return function($){var z,Z=[];$.compose=function(O,m){return z||(z=O),-1===Z.indexOf(m)&&(Z.push(m),A(m.prototype,j.prototype)),m};var j=function(){function O(){}return O.prototype.getPlotBandPath=function(m,g,y){void 0===y&&(y=this.options);var C=this.getPlotLinePath({value:g,force:!0,acrossPanes:y.acrossPanes}),v=[],S=this.horiz;if(g=!et(this.min)||!et(this.max)||m<this.min&&g<this.min||m>this.max&&g>this.max,m=this.getPlotLinePath({value:m,force:!0,acrossPanes:y.acrossPanes}),y=1,m&&C){if(g){var M=m.toString()===C.toString();y=0}for(g=0;g<m.length;g+=2){var T=m[g],E=m[g+1],I=C[g],k=C[g+1];"M"!==T[0]&&"L"!==T[0]||"M"!==E[0]&&"L"!==E[0]||"M"!==I[0]&&"L"!==I[0]||"M"!==k[0]&&"L"!==k[0]||(S&&I[1]===T[1]?(I[1]+=y,k[1]+=y):S||I[2]!==T[2]||(I[2]+=y,k[2]+=y),v.push(["M",T[1],T[2]],["L",E[1],E[2]],["L",k[1],k[2]],["L",I[1],I[2]],["Z"])),v.isFlat=M}}return v},O.prototype.addPlotBand=function(m){return this.addPlotBandOrLine(m,"plotBands")},O.prototype.addPlotLine=function(m){return this.addPlotBandOrLine(m,"plotLines")},O.prototype.addPlotBandOrLine=function(m,g){var y=this,C=this.userOptions,v=new z(this,m);if(this.visible&&(v=v.render()),v){if(this._addedPlotLB||(this._addedPlotLB=!0,(C.plotLines||[]).concat(C.plotBands||[]).forEach(function(M){y.addPlotBandOrLine(M)})),g){var S=C[g]||[];S.push(m),C[g]=S}this.plotLinesAndBands.push(v)}return v},O.prototype.removePlotBandOrLine=function(m){var g=this.plotLinesAndBands,y=this.options,C=this.userOptions;if(g){for(var v=g.length;v--;)g[v].id===m&&g[v].destroy();[y.plotLines||[],C.plotLines||[],y.plotBands||[],C.plotBands||[]].forEach(function(S){for(v=S.length;v--;)(S[v]||{}).id===m&&Y(S,S[v])})}},O.prototype.removePlotBand=function(m){this.removePlotBandOrLine(m)},O.prototype.removePlotLine=function(m){this.removePlotBandOrLine(m)},O}()}(J||(J={})),J}),ct(F,"Core/Axis/PlotLineOrBand/PlotLineOrBand.js",[F["Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js"],F["Core/Utilities.js"]],function(_,Y){var A=Y.arrayMax,et=Y.arrayMin,J=Y.defined,$=Y.destroyObjectProperties,Z=Y.erase,z=Y.fireEvent,j=Y.merge,O=Y.objectEach,m=Y.pick;return function(){function g(y,C){this.axis=y,C&&(this.options=C,this.id=C.id)}return g.compose=function(y){return _.compose(g,y)},g.prototype.render=function(){z(this,"render");var y=this,C=y.axis,v=C.horiz,S=C.logarithmic,M=y.options,T=M.color,E=m(M.zIndex,0),I=M.events,k={},n=C.chart.renderer,d=M.label,r=y.label,c=M.to,e=M.from,h=M.value,t=y.svgElem,o=[],l=J(e)&&J(c);o=J(h);var s=!t,f={class:"highcharts-plot-"+(l?"band ":"line ")+(M.className||"")},w=l?"bands":"lines";if(S&&(e=S.log2lin(e),c=S.log2lin(c),h=S.log2lin(h)),C.chart.styledMode||(o?(f.stroke=T||"#999999",f["stroke-width"]=m(M.width,1),M.dashStyle&&(f.dashstyle=M.dashStyle)):l&&(f.fill=T||"#e6ebf5",M.borderWidth&&(f.stroke=M.borderColor,f["stroke-width"]=M.borderWidth))),k.zIndex=E,(S=C.plotLinesAndBandsGroups[w+="-"+E])||(C.plotLinesAndBandsGroups[w]=S=n.g("plot-"+w).attr(k).add()),s&&(y.svgElem=t=n.path().attr(f).add(S)),o)o=C.getPlotLinePath({value:h,lineWidth:t.strokeWidth(),acrossPanes:M.acrossPanes});else{if(!l)return;o=C.getPlotBandPath(e,c,M)}return!y.eventsAdded&&I&&(O(I,function(X,R){t.on(R,function(i){I[R].apply(y,[i])})}),y.eventsAdded=!0),(s||!t.d)&&o&&o.length?t.attr({d:o}):t&&(o?(t.show(),t.animate({d:o})):t.d&&(t.hide(),r&&(y.label=r=r.destroy()))),d&&(J(d.text)||J(d.formatter))&&o&&o.length&&0<C.width&&0<C.height&&!o.isFlat?(d=j({align:v&&l&&"center",x:v?!l&&4:10,verticalAlign:!v&&l&&"middle",y:v?l?16:10:l?6:-4,rotation:v&&!l&&90},d),this.renderLabel(d,o,l,E)):r&&r.hide(),y},g.prototype.renderLabel=function(y,C,v,S){var M=this.axis,T=M.chart.renderer,E=this.label;E||(this.label=E=T.text(this.getLabelText(y),0,0,y.useHTML).attr({align:y.textAlign||y.align,rotation:y.rotation,class:"highcharts-plot-"+(v?"band":"line")+"-label "+(y.className||""),zIndex:S}).add(),M.chart.styledMode||E.css(j({textOverflow:"ellipsis"},y.style))),S=C.xBounds||[C[0][1],C[1][1],v?C[2][1]:C[0][1]],C=C.yBounds||[C[0][2],C[1][2],v?C[2][2]:C[0][2]],v=et(S),T=et(C),E.align(y,!1,{x:v,y:T,width:A(S)-v,height:A(C)-T}),E.alignValue&&"left"!==E.alignValue||(y=y.clip?M.width:M.chart.chartWidth,E.css({width:(90===E.rotation?M.height-(E.alignAttr.y-M.top):y-(E.alignAttr.x-M.left))+"px"})),E.show(!0)},g.prototype.getLabelText=function(y){return J(y.formatter)?y.formatter.call(this):y.text},g.prototype.destroy=function(){Z(this.axis.plotLinesAndBands,this),delete this.axis,$(this)},g}()}),ct(F,"Core/Tooltip.js",[F["Core/FormatUtilities.js"],F["Core/Globals.js"],F["Core/Renderer/RendererUtilities.js"],F["Core/Renderer/RendererRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J){var $=_.format,Z=Y.doc,z=A.distribute,j=J.clamp,O=J.css,m=J.discardElement,g=J.extend,y=J.fireEvent,C=J.isArray,v=J.isNumber,S=J.isString,M=J.merge,T=J.pick,E=J.splat,I=J.syncTimeout;return function(){function k(n,d){this.allowShared=!0,this.container=void 0,this.crosshairs=[],this.distance=0,this.isHidden=!0,this.isSticky=!1,this.now={},this.options={},this.outside=!1,this.chart=n,this.init(n,d)}return k.prototype.applyFilter=function(){var n=this.chart;n.renderer.definition({tagName:"filter",attributes:{id:"drop-shadow-"+n.index,opacity:.5},children:[{tagName:"feGaussianBlur",attributes:{in:"SourceAlpha",stdDeviation:1}},{tagName:"feOffset",attributes:{dx:1,dy:1}},{tagName:"feComponentTransfer",children:[{tagName:"feFuncA",attributes:{type:"linear",slope:.3}}]},{tagName:"feMerge",children:[{tagName:"feMergeNode"},{tagName:"feMergeNode",attributes:{in:"SourceGraphic"}}]}]})},k.prototype.bodyFormatter=function(n){return n.map(function(d){var r=d.series.tooltipOptions;return(r[(d.point.formatPrefix||"point")+"Formatter"]||d.point.tooltipFormatter).call(d.point,r[(d.point.formatPrefix||"point")+"Format"]||"")})},k.prototype.cleanSplit=function(n){this.chart.series.forEach(function(d){var r=d&&d.tt;r&&(!r.isActive||n?d.tt=r.destroy():r.isActive=!1)})},k.prototype.defaultFormatter=function(n){var d=this.points||E(this),r=[n.tooltipFooterHeaderFormatter(d[0])];return(r=r.concat(n.bodyFormatter(d))).push(n.tooltipFooterHeaderFormatter(d[0],!0)),r},k.prototype.destroy=function(){this.label&&(this.label=this.label.destroy()),this.split&&this.tt&&(this.cleanSplit(!0),this.tt=this.tt.destroy()),this.renderer&&(this.renderer=this.renderer.destroy(),m(this.container)),J.clearTimeout(this.hideTimer),J.clearTimeout(this.tooltipTimeout)},k.prototype.getAnchor=function(n,d){var r=this.chart,c=r.pointer,e=r.inverted,h=r.plotTop;if(r=r.plotLeft,(n=E(n))[0].series&&n[0].series.yAxis&&!n[0].series.yAxis.options.reversedStacks&&(n=n.slice().reverse()),this.followPointer&&d)typeof d.chartX>"u"&&(d=c.normalize(d)),n=[d.chartX-r,d.chartY-h];else if(n[0].tooltipPos)n=n[0].tooltipPos;else{var t=0,o=0;n.forEach(function(l){(l=l.pos(!0))&&(t+=l[0],o+=l[1])}),t/=n.length,o/=n.length,this.shared&&1<n.length&&d&&(e?t=d.chartX:o=d.chartY),n=[t-r,o-h]}return n.map(Math.round)},k.prototype.getClassName=function(n,d,r){var c=n.series,e=c.options;return[this.options.className,"highcharts-label",r&&"highcharts-tooltip-header",d?"highcharts-tooltip-box":"highcharts-tooltip",!r&&"highcharts-color-"+T(n.colorIndex,c.colorIndex),e&&e.className].filter(S).join(" ")},k.prototype.getLabel=function(){var h,n=this,d=this.chart.styledMode,r=this.options,c=this.split&&this.allowShared,e=r.style.pointerEvents||(this.shouldStickOnContact()?"auto":"none"),t=this.chart.renderer;if(n.label){var o=!n.label.hasClass("highcharts-label");(c&&!o||!c&&o)&&n.destroy()}if(!this.label){if(this.outside){o=this.chart.options.chart.style;var l=et.getRendererType();this.container=h=Y.doc.createElement("div"),h.className="highcharts-tooltip-container",O(h,{position:"absolute",top:"1px",pointerEvents:e,zIndex:Math.max(this.options.style.zIndex||0,(o&&o.zIndex||0)+3)}),Y.doc.body.appendChild(h),this.renderer=t=new l(h,0,0,o,void 0,void 0,t.styledMode)}if(c?this.label=t.g("tooltip"):(this.label=t.label("",0,0,r.shape,void 0,void 0,r.useHTML,void 0,"tooltip").attr({padding:r.padding,r:r.borderRadius}),d||this.label.attr({fill:r.backgroundColor,"stroke-width":r.borderWidth}).css(r.style).css({pointerEvents:e}).shadow(r.shadow)),d&&r.shadow&&(this.applyFilter(),this.label.attr({filter:"url(#drop-shadow-"+this.chart.index+")"})),n.outside&&!n.split){var s=this.label,f=s.xSetter,w=s.ySetter;s.xSetter=function(X){f.call(s,n.distance),h.style.left=X+"px"},s.ySetter=function(X){w.call(s,n.distance),h.style.top=X+"px"}}this.label.attr({zIndex:8}).add()}return this.label},k.prototype.getPosition=function(n,d,r){var i,c=this.chart,e=this.distance,h={},t=c.inverted&&r.h||0,o=this.outside,l=o?Z.documentElement.clientWidth-2*e:c.chartWidth,s=o?Math.max(Z.body.scrollHeight,Z.documentElement.scrollHeight,Z.body.offsetHeight,Z.documentElement.offsetHeight,Z.documentElement.clientHeight):c.chartHeight,f=c.pointer.getChartPosition(),w=function(x){var u="x"===x;return[x,u?l:s,u?n:d].concat(o?[u?n*f.scaleX:d*f.scaleY,u?f.left-e+(r.plotX+c.plotLeft)*f.scaleX:f.top-e+(r.plotY+c.plotTop)*f.scaleY,0,u?l:s]:[u?n:d,u?r.plotX+c.plotLeft:r.plotY+c.plotTop,u?c.plotLeft:c.plotTop,u?c.plotLeft+c.plotWidth:c.plotTop+c.plotHeight])},X=w("y"),R=w("x");w=!!r.negative,!c.polar&&c.hoverSeries&&c.hoverSeries.yAxis&&c.hoverSeries.yAxis.reversed&&(w=!w);var p=!this.followPointer&&T(r.ttBelow,!c.inverted===w),P=function(x,u,B,b,N,G,U){var V=o?"y"===x?e*f.scaleY:e*f.scaleX:e,st=(B-b)/2,rt=b<N-e,ot=N+e+b<u,tt=N-V-B+st;if(N=N+V-st,p&&ot)h[x]=N;else if(!p&&rt)h[x]=tt;else if(rt)h[x]=Math.min(U-b,0>tt-t?tt:tt-t);else{if(!ot)return!1;h[x]=Math.max(G,N+t+B>u?N:N+t)}},D=function(x,u,B,b,N){var G;return N<e||N>u-e?G=!1:h[x]=N<B/2?1:N>u-b/2?u-b-2:N-B/2,G},L=function(x){var u=X;X=R,R=u,i=x},a=function(){!1!==P.apply(0,X)?!1!==D.apply(0,R)||i||(L(!0),a()):i?h.x=h.y=0:(L(!0),a())};return(c.inverted||1<this.len)&&L(),a(),h},k.prototype.hide=function(n){var d=this;J.clearTimeout(this.hideTimer),n=T(n,this.options.hideDelay),this.isHidden||(this.hideTimer=I(function(){d.getLabel().fadeOut(n&&void 0),d.isHidden=!0},n))},k.prototype.init=function(n,d){this.chart=n,this.options=d,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.split=d.split&&!n.inverted&&!n.polar,this.shared=d.shared||this.split,this.outside=T(d.outside,!(!n.scrollablePixelsX&&!n.scrollablePixelsY))},k.prototype.shouldStickOnContact=function(n){return!(this.followPointer||!this.options.stickOnContact||n&&!this.chart.pointer.inClass(n.target,"highcharts-tooltip"))},k.prototype.move=function(n,d,r,c){var e=this,h=e.now,t=!1!==e.options.animation&&!e.isHidden&&(1<Math.abs(n-h.x)||1<Math.abs(d-h.y)),o=e.followPointer||1<e.len;g(h,{x:t?(2*h.x+n)/3:n,y:t?(h.y+d)/2:d,anchorX:o?void 0:t?(2*h.anchorX+r)/3:r,anchorY:o?void 0:t?(h.anchorY+c)/2:c}),e.getLabel().attr(h),e.drawTracker(),t&&(J.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){e&&e.move(n,d,r,c)},32))},k.prototype.refresh=function(n,d){var r=this.chart,c=this.options,e=r.pointer,h=E(n),t=h[0],o=[],l=c.formatter||this.defaultFormatter,s=this.shared,f=r.styledMode,w={};if(c.enabled&&t.series){J.clearTimeout(this.hideTimer),this.allowShared=!(!C(n)&&n.series&&n.series.noSharedTooltip),this.followPointer=!this.split&&t.series.tooltipOptions.followPointer;var X=(n=this.getAnchor(n,d))[0],R=n[1];if(s&&this.allowShared?(e.applyInactiveState(h),h.forEach(function(P){P.setState("hover"),o.push(P.getLabelConfig())}),(w={x:t.category,y:t.y}).points=o):w=t.getLabelConfig(),this.len=o.length,l=l.call(w,this),this.distance=T((s=t.series).tooltipOptions.distance,16),!1===l)this.hide();else{if(this.split&&this.allowShared)this.renderSplit(l,h);else{var i=X,p=R;if(d&&e.isDirectTouch&&(i=d.chartX-r.plotLeft,p=d.chartY-r.plotTop),!r.polar&&!1!==s.options.clip&&!h.some(function(P){return e.isDirectTouch||P.series.shouldShowTooltip(i,p)}))return void this.hide();d=this.getLabel(),c.style.width&&!f||d.css({width:r.spacingBox.width+"px"}),d.attr({text:l&&l.join?l.join(""):l}),d.addClass(this.getClassName(t),!0),f||d.attr({stroke:c.borderColor||t.color||s.color||"#666666"}),this.updatePosition({plotX:X,plotY:R,negative:t.negative,ttBelow:t.ttBelow,h:n[2]||0})}this.isHidden&&this.label&&this.label.attr({opacity:1}).show(),this.isHidden=!1}y(this,"refresh")}},k.prototype.renderSplit=function(n,d){function r(ot,tt,at,q,H){return void 0===H&&(H=!0),at?(tt=b?0:V,ot=j(ot-q/2,x.left,x.right-q-(c.outside?N:0))):(tt-=G,ot=j(ot=H?ot-q-D:ot+D,H?ot:x.left,x.right)),{x:ot,y:tt}}var c=this,e=c.chart,h=c.chart,t=h.chartWidth,o=h.chartHeight,l=h.plotHeight,s=h.plotLeft,f=h.plotTop,w=h.pointer,X=h.scrollablePixelsY;X=void 0===X?0:X;var i=h.scrollingContainer,p=(i=void 0===i?{scrollLeft:0,scrollTop:0}:i).scrollLeft;i=i.scrollTop;var P=h.styledMode,D=c.distance,L=c.options,a=c.options.positioner,x=c.outside&&"number"!=typeof h.scrollablePixelsX?Z.documentElement.getBoundingClientRect():{left:p,right:p+t,top:i,bottom:i+o},u=c.getLabel(),B=this.renderer||e.renderer,b=!(!e.xAxis[0]||!e.xAxis[0].opposite),N=(e=w.getChartPosition()).left;e=e.top;var G=f+i,U=0,V=l-X;S(n)&&(n=[!1,n]),n=n.slice(0,d.length+1).reduce(function(ot,tt,at){if(!1!==tt&&""!==tt){var q=(at=d[at-1]||{isHeader:!0,plotX:d[0].plotX,plotY:l,series:{}}).isHeader,H=q?c:at.series;tt=tt.toString();var W=H.tt,K=at.isHeader,Q=at.series;W||(W={padding:L.padding,r:L.borderRadius},P||(W.fill=L.backgroundColor,W["stroke-width"]=L.borderWidth),W=B.label("",0,0,L[K?"headerShape":"shape"],void 0,void 0,L.useHTML).addClass(c.getClassName(at,!0,K)).attr(W).add(u)),W.isActive=!0,W.attr({text:tt}),P||W.css(L.style).shadow(L.shadow).attr({stroke:L.borderColor||at.color||Q.color||"#333333"}),tt=(K=(H=H.tt=W).getBBox()).width+H.strokeWidth(),q&&(V+=U=K.height,b&&(G-=U)),Q=void 0===(Q=at.plotX)?0:Q,W=void 0===(W=at.plotY)?0:W;var it=at.series;if(at.isHeader){Q=s+Q;var nt=f+l/2}else{var ht=it.xAxis,pt=it.yAxis;Q=ht.pos+j(Q,-D,ht.len+D),it.shouldShowTooltip(0,pt.pos-f+W,{ignoreX:!0})&&(nt=pt.pos+W)}Q=j(Q,x.left-D,x.right+D),"number"==typeof nt?(K=K.height+1,W=a?a.call(c,tt,K,at):r(Q,nt,q,tt),ot.push({align:a?0:void 0,anchorX:Q,anchorY:nt,boxWidth:tt,point:at,rank:T(W.rank,q?1:0),size:K,target:W.y,tt:H,x:W.x})):H.isActive=!1}return ot},[]),!a&&n.some(function(ot){var tt=(c.outside?N:0)+ot.anchorX;return tt<x.left&&tt+ot.boxWidth<x.right||tt<N-x.left+ot.boxWidth&&x.right-tt>tt})&&(n=n.map(function(ot){var tt=r(ot.anchorX,ot.anchorY,ot.point.isHeader,ot.boxWidth,!1);return g(ot,{target:tt.y,x:tt.x})})),c.cleanSplit(),z(n,V);var st=N,rt=N;n.forEach(function(ot){var tt=ot.x,at=ot.boxWidth;(ot=ot.isHeader)||(c.outside&&N+tt<st&&(st=N+tt),!ot&&c.outside&&st+at>rt&&(rt=N+tt))}),n.forEach(function(ot){var tt=ot.x,at=ot.anchorX,q=ot.pos,H=ot.point.isHeader;if(q={visibility:typeof q>"u"?"hidden":"inherit",x:tt,y:(q||0)+G,anchorX:at,anchorY:ot.anchorY},c.outside&&tt<at){var W=N-st;0<W&&(H||(q.x=tt+W,q.anchorX=at+W),H&&(q.x=(rt-st)/2,q.anchorX=at+W))}ot.tt.attr(q)}),n=c.container,X=c.renderer,c.outside&&n&&X&&(h=u.getBBox(),X.setSize(h.width+h.x,h.height+h.y,!1),n.style.left=st+"px",n.style.top=e+"px")},k.prototype.drawTracker=function(){if(this.shouldStickOnContact()){var n=this.chart,d=this.label,r=this.shared?n.hoverPoints:n.hoverPoint;if(d&&r){var c={x:0,y:0,width:0,height:0};r=this.getAnchor(r);var e=d.getBBox();r[0]+=n.plotLeft-d.translateX,r[1]+=n.plotTop-d.translateY,c.x=Math.min(0,r[0]),c.y=Math.min(0,r[1]),c.width=0>r[0]?Math.max(Math.abs(r[0]),e.width-r[0]):Math.max(Math.abs(r[0]),e.width),c.height=0>r[1]?Math.max(Math.abs(r[1]),e.height-Math.abs(r[1])):Math.max(Math.abs(r[1]),e.height),this.tracker?this.tracker.attr(c):(this.tracker=d.renderer.rect(c).addClass("highcharts-tracker").add(d),n.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"}))}}else this.tracker&&this.tracker.destroy()},k.prototype.styledModeFormat=function(n){return n.replace('style="font-size: 10px"','class="highcharts-header"').replace(/style="color:{(point|series)\.color}"/g,'class="highcharts-color-{$1.colorIndex} {series.options.className} {point.options.className}"')},k.prototype.tooltipFooterHeaderFormatter=function(n,d){var r=n.series,c=r.tooltipOptions,e=r.xAxis,h=e&&e.dateTime,t=c.xDateFormat,o=c[d?"footerFormat":"headerFormat"];return y(this,"headerFormatter",e={isFooter:d,labelConfig:n},function(l){h&&!t&&v(n.key)&&(t=h.getXDateFormat(n.key,c.dateTimeLabelFormats)),h&&t&&(n.point&&n.point.tooltipDateKeys||["key"]).forEach(function(s){o=o.replace("{point."+s+"}","{point."+s+":"+t+"}")}),r.chart.styledMode&&(o=this.styledModeFormat(o)),l.text=$(o,{point:n,series:r},this.chart)}),e.text},k.prototype.update=function(n){this.destroy(),M(!0,this.chart.options.tooltip.userOptions,n),this.init(this.chart,M(!0,this.options,n))},k.prototype.updatePosition=function(n){var d=this.chart,r=this.distance,c=this.options,e=d.pointer,h=this.getLabel(),t=e.getChartPosition();e=t.left;var o=t.top,l=t.scaleX;t=t.scaleY;var s=(c.positioner||this.getPosition).call(this,h.width,h.height,n),f=(n.plotX||0)+d.plotLeft;n=(n.plotY||0)+d.plotTop,this.outside&&(c.positioner&&(s.x+=e-r,s.y+=o-r),this.renderer.setSize(h.width+(r=c.borderWidth+2*r),h.height+r,!1),(1!==l||1!==t)&&(O(this.container,{transform:"scale(".concat(l,", ").concat(t,")")}),f*=l,n*=t),f+=e-s.x,n+=o-s.y),this.move(Math.round(s.x),Math.round(s.y||0),f,n)},k}()}),ct(F,"Core/Series/Point.js",[F["Core/Renderer/HTML/AST.js"],F["Core/Animation/AnimationUtilities.js"],F["Core/Defaults.js"],F["Core/FormatUtilities.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J){var $=Y.animObject,Z=A.defaultOptions,z=et.format,j=J.addEvent,O=J.defined,m=J.erase,g=J.extend,y=J.fireEvent,C=J.getNestedProperty,v=J.isArray,S=J.isFunction,M=J.isNumber,T=J.isObject,E=J.merge,I=J.objectEach,k=J.pick,n=J.syncTimeout,d=J.removeEvent,r=J.uniqueKey;return function(){function c(){this.category=void 0,this.formatPrefix="point",this.id=void 0,this.isNull=!1,this.percentage=this.options=this.name=void 0,this.selected=!1,this.total=this.shapeArgs=this.series=void 0,this.visible=!0,this.x=void 0}return c.prototype.animateBeforeDestroy=function(){var e=this,h={x:e.startXPos,opacity:0},t=e.getGraphicalProps();t.singular.forEach(function(o){e[o]=e[o].animate("dataLabel"===o?{x:e[o].startXPos,y:e[o].startYPos,opacity:0}:h)}),t.plural.forEach(function(o){e[o].forEach(function(l){l.element&&l.animate(g({x:e.startXPos},l.startYPos?{x:l.startXPos,y:l.startYPos}:{}))})})},c.prototype.applyOptions=function(e,h){var t=this.series,o=t.options.pointValKey||t.pointValKey;return e=c.prototype.optionsToObject.call(this,e),g(this,e),this.options=this.options?g(this.options,e):e,e.group&&delete this.group,e.dataLabels&&delete this.dataLabels,o&&(this.y=c.prototype.getNestedProperty.call(this,o)),this.formatPrefix=(this.isNull=this.isValid&&!this.isValid())?"null":"point",this.selected&&(this.state="select"),"name"in this&&typeof h>"u"&&t.xAxis&&t.xAxis.hasNames&&(this.x=t.xAxis.nameToX(this)),typeof this.x>"u"&&t?this.x=typeof h>"u"?t.autoIncrement():h:M(e.x)&&t.options.relativeXValue&&(this.x=t.autoIncrement(e.x)),this},c.prototype.destroy=function(){function e(){for(f in(h.graphic||h.graphics||h.dataLabel||h.dataLabels)&&(d(h),h.destroyElements()),h)h[f]=null}var h=this,t=h.series,o=t.chart;t=t.options.dataSorting;var f,l=o.hoverPoints,s=$(h.series.chart.renderer.globalAnimation);h.legendItem&&o.legend.destroyItem(h),l&&(h.setState(),m(l,h),l.length||(o.hoverPoints=null)),h===o.hoverPoint&&h.onMouseOut(),t&&t.enabled?(this.animateBeforeDestroy(),n(e,s.duration)):e(),o.pointCount--},c.prototype.destroyElements=function(e){var h=this;(e=h.getGraphicalProps(e)).singular.forEach(function(t){h[t]=h[t].destroy()}),e.plural.forEach(function(t){h[t].forEach(function(o){o&&o.element&&o.destroy()}),delete h[t]})},c.prototype.firePointEvent=function(e,h,t){var o=this,l=this.series.options;(l.point.events[e]||o.options&&o.options.events&&o.options.events[e])&&o.importEvents(),"click"===e&&l.allowPointSelect&&(t=function(s){o.select&&o.select(null,s.ctrlKey||s.metaKey||s.shiftKey)}),y(o,e,h,t)},c.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+(typeof this.colorIndex<"u"?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")},c.prototype.getGraphicalProps=function(e){var l,h=this,t=[],o={singular:[],plural:[]};for((e=e||{graphic:1,dataLabel:1}).graphic&&t.push("graphic","shadowGroup"),e.dataLabel&&t.push("dataLabel","dataLabelPath","dataLabelUpper","connector"),l=t.length;l--;){var s=t[l];h[s]&&o.singular.push(s)}return["graphic","dataLabel","connector"].forEach(function(f){var w=f+"s";e[f]&&h[w]&&o.plural.push(w)}),o},c.prototype.getLabelConfig=function(){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}},c.prototype.getNestedProperty=function(e){if(e)return 0===e.indexOf("custom.")?C(e,this.options):this[e]},c.prototype.getZone=function(){var e=this.series,h=e.zones;e=e.zoneAxis||"y";var t,o=0;for(t=h[o];this[e]>=t.value;)t=h[++o];return this.nonZonedColor||(this.nonZonedColor=this.color),this.color=t&&t.color&&!this.options.color?t.color:this.nonZonedColor,t},c.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType},c.prototype.init=function(e,h,t){return this.series=e,this.applyOptions(h,t),this.id=O(this.id)?this.id:r(),this.resolveColor(),e.chart.pointCount++,y(this,"afterInit"),this},c.prototype.isValid=function(){return null!==this.x&&M(this.y)},c.prototype.optionsToObject=function(e){var h=this.series,t=h.options.keys,o=t||h.pointArrayMap||["y"],l=o.length,s={},f=0,w=0;if(M(e)||null===e)s[o[0]]=e;else if(v(e))for(!t&&e.length>l&&("string"==(h=typeof e[0])?s.name=e[0]:"number"===h&&(s.x=e[0]),f++);w<l;)t&&typeof e[f]>"u"||(0<o[w].indexOf(".")?c.prototype.setNestedProperty(s,e[f],o[w]):s[o[w]]=e[f]),f++,w++;else"object"==typeof e&&(s=e,e.dataLabels&&(h._hasPointLabels=!0),e.marker&&(h._hasPointMarkers=!0));return s},c.prototype.pos=function(e,h){void 0===h&&(h=this.plotY);var t=this.plotX,o=this.series,l=o.chart,s=o.xAxis;o=o.yAxis;var f=0,w=0;if(M(t)&&M(h))return e&&(f=s?s.pos:l.plotLeft,w=o?o.pos:l.plotTop),l.inverted&&s&&o?[o.len-h+w,s.len-t+f]:[t+f,h+w]},c.prototype.resolveColor=function(){var e=this.series,h=e.chart.styledMode,t=e.chart.options.chart.colorCount;if(delete this.nonZonedColor,e.options.colorByPoint){if(!h){var o=(t=e.options.colors||e.chart.options.colors)[e.colorCounter];t=t.length}h=e.colorCounter,e.colorCounter++,e.colorCounter===t&&(e.colorCounter=0)}else h||(o=e.color),h=e.colorIndex;this.colorIndex=k(this.options.colorIndex,h),this.color=k(this.options.color,o)},c.prototype.setNestedProperty=function(e,h,t){return t.split(".").reduce(function(o,l,s,f){return o[l]=f.length-1===s?h:T(o[l],!0)?o[l]:{},o[l]},e),e},c.prototype.shouldDraw=function(){return!this.isNull},c.prototype.tooltipFormatter=function(e){var h=this.series,t=h.tooltipOptions,o=k(t.valueDecimals,""),l=t.valuePrefix||"",s=t.valueSuffix||"";return h.chart.styledMode&&(e=h.chart.tooltip.styledModeFormat(e)),(h.pointArrayMap||["y"]).forEach(function(f){f="{point."+f,(l||s)&&(e=e.replace(RegExp(f+"}","g"),l+f+"}"+s)),e=e.replace(RegExp(f+"}","g"),f+":,."+o+"f}")}),z(e,{point:this,series:this.series},h.chart)},c.prototype.update=function(e,h,t,o){function l(){s.applyOptions(e);var p=w&&s.hasMockGraphic;p=null===s.y?!p:p,w&&p&&(s.graphic=w.destroy(),delete s.hasMockGraphic),T(e,!0)&&(w&&w.element&&e&&e.marker&&typeof e.marker.symbol<"u"&&(s.graphic=w.destroy()),e&&e.dataLabels&&s.dataLabel&&(s.dataLabel=s.dataLabel.destroy()),s.connector&&(s.connector=s.connector.destroy())),f.updateParallelArrays(s,i=s.index),R.data[i]=T(R.data[i],!0)||T(e,!0)?s.options:k(e,R.data[i]),f.isDirty=f.isDirtyData=!0,!f.fixedBox&&f.hasCartesianSeries&&(X.isDirtyBox=!0),"point"===R.legendType&&(X.isDirtyLegend=!0),h&&X.redraw(t)}var i,s=this,f=s.series,w=s.graphic,X=f.chart,R=f.options;h=k(h,!0),!1===o?l():s.firePointEvent("update",{options:e},l)},c.prototype.remove=function(e,h){this.series.removePoint(this.series.data.indexOf(this),e,h)},c.prototype.select=function(e,h){var t=this,o=t.series,l=o.chart;this.selectedStaging=e=k(e,!t.selected),t.firePointEvent(e?"select":"unselect",{accumulate:h},function(){t.selected=t.options.selected=e,o.options.data[o.data.indexOf(t)]=t.options,t.setState(e&&"select"),h||l.getSelectedPoints().forEach(function(s){var f=s.series;s.selected&&s!==t&&(s.selected=s.options.selected=!1,f.options.data[f.data.indexOf(s)]=s.options,s.setState(l.hoverPoints&&f.options.inactiveOtherPoints?"inactive":""),s.firePointEvent("unselect"))})}),delete this.selectedStaging},c.prototype.onMouseOver=function(e){var h=this.series.chart,t=h.pointer;e=e?t.normalize(e):t.getChartCoordinatesFromPoint(this,h.inverted),t.runPointActions(e,this)},c.prototype.onMouseOut=function(){var e=this.series.chart;this.firePointEvent("mouseOut"),this.series.options.inactiveOtherPoints||(e.hoverPoints||[]).forEach(function(h){h.setState()}),e.hoverPoints=e.hoverPoint=null},c.prototype.importEvents=function(){if(!this.hasImportedEvents){var e=this,h=E(e.series.options.point,e.options).events;e.events=h,I(h,function(t,o){S(t)&&j(e,o,t)}),this.hasImportedEvents=!0}},c.prototype.setState=function(e,h){var D,t=this.series,o=this.state,l=t.options.states[e||"normal"]||{},s=Z.plotOptions[t.type].marker&&t.options.marker,w=s&&s.states&&s.states[e||"normal"]||{},R=this.marker||{},i=t.chart,p=s&&t.markerAttribs,P=t.halo,L=t.stateMarkerGraphic;if(!((e=e||"")===this.state&&!h||this.selected&&"select"!==e||!1===l.enabled||e&&(!1===w.enabled||s&&!1===s.enabled&&!1===w.enabled)||e&&R.states&&R.states[e]&&!1===R.states[e].enabled)){if(this.state=e,p&&(D=t.markerAttribs(this,e)),this.graphic&&!this.hasMockGraphic){if(o&&this.graphic.removeClass("highcharts-point-"+o),e&&this.graphic.addClass("highcharts-point-"+e),!i.styledMode){o=t.pointAttribs(this,e);var a=k(i.options.chart.animation,l.animation),x=o.opacity;t.options.inactiveOtherPoints&&M(x)&&((this.dataLabels||[]).forEach(function(u){u&&!u.hasClass("highcharts-data-label-hidden")&&u.animate({opacity:x},a)}),this.connector&&this.connector.animate({opacity:x},a)),this.graphic.animate(o,a)}D&&this.graphic.animate(D,k(i.options.chart.animation,w.animation,s.animation)),L&&L.hide()}else e&&w&&(s=R.symbol||t.symbol,L&&L.currentSymbol!==s&&(L=L.destroy()),D&&(L?L[h?"animate":"attr"]({x:D.x,y:D.y}):s&&(t.stateMarkerGraphic=L=i.renderer.symbol(s,D.x,D.y,D.width,D.height).add(t.markerGroup),L.currentSymbol=s)),!i.styledMode&&L&&"inactive"!==this.state&&L.attr(t.pointAttribs(this,e))),L&&(L[e&&this.isInside?"show":"hide"](),L.element.point=this,L.addClass(this.getClassName(),!0));D=(L=this.graphic||L)&&L.visibility||"inherit",(l=l.halo)&&l.size&&L&&"hidden"!==D&&!this.isCluster?(P||(t.halo=P=i.renderer.path().add(L.parentGroup)),P.show()[h?"animate":"attr"]({d:this.haloPath(l.size)}),P.attr({class:"highcharts-halo highcharts-color-"+k(this.colorIndex,t.colorIndex)+(this.className?" "+this.className:""),visibility:D,zIndex:-1}),P.point=this,i.styledMode||P.attr(g({fill:this.color||t.color,"fill-opacity":l.opacity},_.filterUserAttributes(l.attributes||{})))):P&&P.point&&P.point.haloPath&&P.animate({d:P.point.haloPath(0)},null,P.hide),y(this,"afterSetState",{state:e})}},c.prototype.haloPath=function(e){var h=this.pos();return h?this.series.chart.renderer.symbols.circle(Math.floor(h[0])-e,h[1]-e,2*e,2*e):[]},c}()}),ct(F,"Core/Pointer.js",[F["Core/Color/Color.js"],F["Core/Globals.js"],F["Core/Tooltip.js"],F["Core/Utilities.js"]],function(_,Y,A,et){var J=_.parse,$=Y.charts,Z=Y.noop,z=et.addEvent,j=et.attr,O=et.css,m=et.defined,g=et.extend,y=et.find,C=et.fireEvent,v=et.isNumber,S=et.isObject,M=et.objectEach,T=et.offset,E=et.pick,I=et.splat;return function(){function k(n,d){this.lastValidTouch={},this.pinchDown=[],this.runChartClick=!1,this.eventsToUnbind=[],this.chart=n,this.hasDragged=!1,this.options=d,this.init(n,d)}return k.prototype.applyInactiveState=function(n){var r,d=[];(n||[]).forEach(function(c){d.push(r=c.series),r.linkedParent&&d.push(r.linkedParent),r.linkedSeries&&(d=d.concat(r.linkedSeries)),r.navigatorSeries&&d.push(r.navigatorSeries)}),this.chart.series.forEach(function(c){-1===d.indexOf(c)?c.setState("inactive",!0):c.options.inactiveOtherPoints&&c.setAllPointsToState("inactive")})},k.prototype.destroy=function(){var n=this;this.eventsToUnbind.forEach(function(d){return d()}),this.eventsToUnbind=[],Y.chartCount||(k.unbindDocumentMouseUp&&(k.unbindDocumentMouseUp=k.unbindDocumentMouseUp()),k.unbindDocumentTouchEnd&&(k.unbindDocumentTouchEnd=k.unbindDocumentTouchEnd())),clearInterval(n.tooltipTimeout),M(n,function(d,r){n[r]=void 0})},k.prototype.getSelectionMarkerAttrs=function(n,d){var r=this,c={args:{chartX:n,chartY:d},attrs:{},shapeType:"rect"};return C(this,"getSelectionMarkerAttrs",c,function(e){var h=r.chart,t=r.mouseDownX;t=void 0===t?0:t;var o=r.mouseDownY;o=void 0===o?0:o;var l=r.zoomHor,s=r.zoomVert;(e=e.attrs).x=h.plotLeft,e.y=h.plotTop,e.width=l?1:h.plotWidth,e.height=s?1:h.plotHeight,l&&(h=n-t,e.width=Math.abs(h),e.x=(0<h?0:h)+t),s&&(h=d-o,e.height=Math.abs(h),e.y=(0<h?0:h)+o)}),c},k.prototype.drag=function(n){var d=this.chart,r=d.options.chart,c=d.plotLeft,e=d.plotTop,h=d.plotWidth,t=d.plotHeight,o=this.mouseDownX||0,l=this.mouseDownY||0,s=S(r.panning)?r.panning&&r.panning.enabled:r.panning,f=r.panKey&&n[r.panKey+"Key"],w=n.chartX,X=n.chartY,R=this.selectionMarker;R&&R.touch||(w<c?w=c:w>c+h&&(w=c+h),X<e?X=e:X>e+t&&(X=e+t),this.hasDragged=Math.sqrt(Math.pow(o-w,2)+Math.pow(l-X,2)),10<this.hasDragged&&(c=d.isInsidePlot(o-c,l-e,{visiblePlotOnly:!0}),w=(X=this.getSelectionMarkerAttrs(w,X)).shapeType,X=X.attrs,!d.hasCartesianSeries&&!d.mapView||!this.zoomX&&!this.zoomY||!c||f||R||(this.selectionMarker=R=d.renderer[w](),R.attr({class:"highcharts-selection-marker",zIndex:7}).add(),d.styledMode||R.attr({fill:r.selectionMarkerFill||J("#335cad").setOpacity(.25).get()})),R&&R.attr(X),c&&!R&&s&&d.pan(n,r.panning)))},k.prototype.dragStart=function(n){var d=this.chart;d.mouseIsDown=n.type,d.cancelClick=!1,d.mouseDownX=this.mouseDownX=n.chartX,d.mouseDownY=this.mouseDownY=n.chartY},k.prototype.getSelectionBox=function(n){var d={args:{marker:n},result:{}};return C(this,"getSelectionBox",d,function(r){r.result={x:n.attr?+n.attr("x"):n.x,y:n.attr?+n.attr("y"):n.y,width:n.attr?n.attr("width"):n.width,height:n.attr?n.attr("height"):n.height}}),d.result},k.prototype.drop=function(n){var d=this,r=this.chart,c=this.hasPinched;if(this.selectionMarker){var e=this.getSelectionBox(this.selectionMarker),h=e.x,t=e.y,o=e.width,l=e.height,s={originalEvent:n,xAxis:[],yAxis:[],x:h,y:t,width:o,height:l},f=!!r.mapView;(this.hasDragged||c)&&(r.axes.forEach(function(w){if(w.zoomEnabled&&m(w.min)&&(c||d[{xAxis:"zoomX",yAxis:"zoomY"}[w.coll]])&&v(h)&&v(t)&&v(o)&&v(l)){var X=w.horiz,R="touchend"===n.type?w.minPixelPadding:0,i=w.toValue((X?h:t)+R);X=w.toValue((X?h+o:t+l)-R),s[w.coll].push({axis:w,min:Math.min(i,X),max:Math.max(i,X)}),f=!0}}),f&&C(r,"selection",s,function(w){r.zoom(g(w,c?{animation:!1}:null))})),v(r.index)&&(this.selectionMarker=this.selectionMarker.destroy()),c&&this.scaleGroups()}r&&v(r.index)&&(O(r.container,{cursor:r._cursor}),r.cancelClick=10<this.hasDragged,r.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},k.prototype.findNearestKDPoint=function(n,d,r){var c;return n.forEach(function(e){var h=!(e.noSharedTooltip&&d)&&0>e.options.findNearestPointBy.indexOf("y");if(e=e.searchPoint(r,h),(h=S(e,!0)&&e.series)&&!(h=!S(c,!0))){var t=c.dist-e.dist,o=(e.series.group&&e.series.group.zIndex)-(c.series.group&&c.series.group.zIndex);h=0<(0!=(h=c.distX-e.distX)&&d?h:0!==t?t:0!==o?o:c.series.index>e.series.index?-1:1)}h&&(c=e)}),c},k.prototype.getChartCoordinatesFromPoint=function(n,d){var r=n.series,c=r.xAxis;r=r.yAxis;var e=n.shapeArgs;if(c&&r){var h=E(n.clientX,n.plotX),t=n.plotY||0;return n.isNode&&e&&v(e.x)&&v(e.y)&&(h=e.x,t=e.y),d?{chartX:r.len+r.pos-t,chartY:c.len+c.pos-h}:{chartX:h+c.pos,chartY:t+r.pos}}if(e&&e.x&&e.y)return{chartX:e.x,chartY:e.y}},k.prototype.getChartPosition=function(){if(this.chartPosition)return this.chartPosition;var n=this.chart.container,d=T(n);this.chartPosition={left:d.left,top:d.top,scaleX:1,scaleY:1};var r=n.offsetWidth;return n=n.offsetHeight,2<r&&2<n&&(this.chartPosition.scaleX=d.width/r,this.chartPosition.scaleY=d.height/n),this.chartPosition},k.prototype.getCoordinates=function(n){var d={xAxis:[],yAxis:[]};return this.chart.axes.forEach(function(r){d[r.isXAxis?"xAxis":"yAxis"].push({axis:r,value:r.toValue(n[r.horiz?"chartX":"chartY"])})}),d},k.prototype.getHoverData=function(n,d,r,c,e,h){var t=[];c=!(!c||!n);var o=function(w){return w.visible&&!(!e&&w.directTouch)&&E(w.options.enableMouseTracking,!0)},l={chartX:h?h.chartX:void 0,chartY:h?h.chartY:void 0,shared:e};C(this,"beforeGetHoverData",l);var s=d&&!d.stickyTracking?[d]:r.filter(function(w){return w.stickyTracking&&(l.filter||o)(w)}),f=c||!h?n:this.findNearestKDPoint(s,e,h);return d=f&&f.series,f&&(e&&!d.noSharedTooltip?(s=r.filter(function(w){return l.filter?l.filter(w):o(w)&&!w.noSharedTooltip})).forEach(function(w){var X=y(w.points,function(R){return R.x===f.x&&!R.isNull});S(X)&&(w.boosted&&w.boost&&(X=w.boost.getPoint(X)),t.push(X))}):t.push(f)),C(this,"afterGetHoverData",l={hoverPoint:f}),{hoverPoint:l.hoverPoint,hoverSeries:d,hoverPoints:t}},k.prototype.getPointFromEvent=function(n){n=n.target;for(var d;n&&!d;)d=n.point,n=n.parentNode;return d},k.prototype.onTrackerMouseOut=function(n){n=n.relatedTarget||n.toElement;var d=this.chart.hoverSeries;this.isDirectTouch=!1,!d||!n||d.stickyTracking||this.inClass(n,"highcharts-tooltip")||this.inClass(n,"highcharts-series-"+d.index)&&this.inClass(n,"highcharts-tracker")||d.onMouseOut()},k.prototype.inClass=function(n,d){for(var r;n;){if(r=j(n,"class")){if(-1!==r.indexOf(d))return!0;if(-1!==r.indexOf("highcharts-container"))return!1}n=n.parentElement}},k.prototype.init=function(n,d){this.options=d,this.chart=n,this.runChartClick=!(!d.chart.events||!d.chart.events.click),this.pinchDown=[],this.lastValidTouch={},A&&(n.tooltip=new A(n,d.tooltip)),this.setDOMEvents()},k.prototype.normalize=function(n,d){var r=n.touches,c=r?r.length?r.item(0):E(r.changedTouches,n.changedTouches)[0]:n;return d||(d=this.getChartPosition()),r=c.pageX-d.left,c=c.pageY-d.top,r/=d.scaleX,c/=d.scaleY,g(n,{chartX:Math.round(r),chartY:Math.round(c)})},k.prototype.onContainerClick=function(n){var d=this.chart,r=d.hoverPoint;n=this.normalize(n);var c=d.plotLeft,e=d.plotTop;d.cancelClick||(r&&this.inClass(n.target,"highcharts-tracker")?(C(r.series,"click",g(n,{point:r})),d.hoverPoint&&r.firePointEvent("click",n)):(g(n,this.getCoordinates(n)),d.isInsidePlot(n.chartX-c,n.chartY-e,{visiblePlotOnly:!0})&&C(d,"click",n)))},k.prototype.onContainerMouseDown=function(n){var d=1==(1&(n.buttons||n.button));n=this.normalize(n),Y.isFirefox&&0!==n.button&&this.onContainerMouseMove(n),(typeof n.button>"u"||d)&&(this.zoomOption(n),d&&n.preventDefault&&n.preventDefault(),this.dragStart(n))},k.prototype.onContainerMouseLeave=function(n){var d=$[E(k.hoverChartIndex,-1)],r=this.chart.tooltip;n=this.normalize(n),d&&(n.relatedTarget||n.toElement)&&(d.pointer.reset(),d.pointer.chartPosition=void 0),r&&!r.isHidden&&this.reset()},k.prototype.onContainerMouseEnter=function(n){delete this.chartPosition},k.prototype.onContainerMouseMove=function(n){var d=this.chart,r=d.tooltip;n=this.normalize(n),this.setHoverChartIndex(),n.preventDefault||(n.returnValue=!1),("mousedown"===d.mouseIsDown||this.touchSelect(n))&&this.drag(n),d.openMenu||!this.inClass(n.target,"highcharts-tracker")&&!d.isInsidePlot(n.chartX-d.plotLeft,n.chartY-d.plotTop,{visiblePlotOnly:!0})||r&&r.shouldStickOnContact(n)||(this.inClass(n.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(n))},k.prototype.onDocumentTouchEnd=function(n){var d=$[E(k.hoverChartIndex,-1)];d&&d.pointer.drop(n)},k.prototype.onContainerTouchMove=function(n){this.touchSelect(n)?this.onContainerMouseMove(n):this.touch(n)},k.prototype.onContainerTouchStart=function(n){this.touchSelect(n)?this.onContainerMouseDown(n):(this.zoomOption(n),this.touch(n,!0))},k.prototype.onDocumentMouseMove=function(n){var d=this.chart,r=d.tooltip,c=this.chartPosition;n=this.normalize(n,c),!c||d.isInsidePlot(n.chartX-d.plotLeft,n.chartY-d.plotTop,{visiblePlotOnly:!0})||r&&r.shouldStickOnContact(n)||this.inClass(n.target,"highcharts-tracker")||this.reset()},k.prototype.onDocumentMouseUp=function(n){var d=$[E(k.hoverChartIndex,-1)];d&&d.pointer.drop(n)},k.prototype.pinch=function(n){var d=this,r=d.chart,c=d.pinchDown,e=n.touches||[],h=e.length,t=d.lastValidTouch,o=d.hasZoom,l={},s=1===h&&(d.inClass(n.target,"highcharts-tracker")&&r.runTrackerClick||d.runChartClick),f={},w=d.chart.tooltip;w=1===h&&E(w&&w.options.followTouchMove,!0);var X=d.selectionMarker;1<h?d.initiated=!0:w&&(d.initiated=!1),o&&d.initiated&&!s&&!1!==n.cancelable&&n.preventDefault(),[].map.call(e,function(R){return d.normalize(R)}),"touchstart"===n.type?([].forEach.call(e,function(R,i){c[i]={chartX:R.chartX,chartY:R.chartY}}),t.x=[c[0].chartX,c[1]&&c[1].chartX],t.y=[c[0].chartY,c[1]&&c[1].chartY],r.axes.forEach(function(R){if(R.zoomEnabled){var i=r.bounds[R.horiz?"h":"v"],p=R.minPixelPadding,P=R.toPixels(Math.min(E(R.options.min,R.dataMin),R.dataMin)),D=R.toPixels(Math.max(E(R.options.max,R.dataMax),R.dataMax)),L=Math.max(P,D);i.min=Math.min(R.pos,Math.min(P,D)-p),i.max=Math.max(R.pos+R.len,L+p)}}),d.res=!0):w?this.runPointActions(d.normalize(n)):c.length&&(C(r,"touchpan",{originalEvent:n},function(){X||(d.selectionMarker=X=g({destroy:Z,touch:!0},r.plotBox)),d.pinchTranslate(c,e,l,X,f,t),d.hasPinched=o,d.scaleGroups(l,f)}),d.res&&(d.res=!1,this.reset(!1,0)))},k.prototype.pinchTranslate=function(n,d,r,c,e,h){this.zoomHor&&this.pinchTranslateDirection(!0,n,d,r,c,e,h),this.zoomVert&&this.pinchTranslateDirection(!1,n,d,r,c,e,h)},k.prototype.pinchTranslateDirection=function(n,d,r,c,e,h,t,o){var l=this.chart,s=n?"x":"y",f=n?"X":"Y",w="chart"+f,X=n?"width":"height",R=l["plot"+(n?"Left":"Top")],i=l.inverted,p=l.bounds[n?"h":"v"],P=1===d.length,D=d[0][w],L=!P&&d[1][w];d=function(){"number"==typeof b&&20<Math.abs(D-L)&&(u=o||Math.abs(B-b)/Math.abs(D-L)),x=(R-B)/u+D,a=l["plot"+(n?"Width":"Height")]/u};var a,x,u=o||1,B=r[0][w],b=!P&&r[1][w];if(d(),(r=x)<p.min){r=p.min;var N=!0}else r+a>p.max&&(r=p.max-a,N=!0);N?(B-=.8*(B-t[s][0]),"number"==typeof b&&(b-=.8*(b-t[s][1])),d()):t[s]=[B,b],i||(h[s]=x-R,h[X]=a),h=i?1/u:u,e[X]=a,e[s]=r,c[i?n?"scaleY":"scaleX":"scale"+f]=u,c["translate"+f]=h*R+(B-h*D)},k.prototype.reset=function(n,d){var r=this.chart,c=r.hoverSeries,e=r.hoverPoint,h=r.hoverPoints,t=r.tooltip,o=t&&t.shared?h:e;n&&o&&I(o).forEach(function(l){l.series.isCartesian&&typeof l.plotX>"u"&&(n=!1)}),n?t&&o&&I(o).length&&(t.refresh(o),t.shared&&h?h.forEach(function(l){l.setState(l.state,!0),l.series.isCartesian&&(l.series.xAxis.crosshair&&l.series.xAxis.drawCrosshair(null,l),l.series.yAxis.crosshair&&l.series.yAxis.drawCrosshair(null,l))}):e&&(e.setState(e.state,!0),r.axes.forEach(function(l){l.crosshair&&e.series[l.coll]===l&&l.drawCrosshair(null,e)}))):(e&&e.onMouseOut(),h&&h.forEach(function(l){l.setState()}),c&&c.onMouseOut(),t&&t.hide(d),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),r.axes.forEach(function(l){l.hideCrosshair()}),this.hoverX=r.hoverPoints=r.hoverPoint=null)},k.prototype.runPointActions=function(n,d,r){var c=this.chart,e=c.tooltip&&c.tooltip.options.enabled?c.tooltip:void 0,h=!!e&&e.shared,t=d||c.hoverPoint,o=t&&t.series||c.hoverSeries;d=this.getHoverData(t,o,c.series,(!n||"touchmove"!==n.type)&&(!!d||o&&o.directTouch&&this.isDirectTouch),h,n),t=d.hoverPoint;var l=d.hoverPoints;d=(o=d.hoverSeries)&&o.tooltipOptions.followPointer&&!o.tooltipOptions.split;var s=h&&o&&!o.noSharedTooltip;if(t&&(r||t!==c.hoverPoint||e&&e.isHidden)){if((c.hoverPoints||[]).forEach(function(f){-1===l.indexOf(f)&&f.setState()}),c.hoverSeries!==o&&o.onMouseOver(),this.applyInactiveState(l),(l||[]).forEach(function(f){f.setState("hover")}),c.hoverPoint&&c.hoverPoint.firePointEvent("mouseOut"),!t.series)return;c.hoverPoints=l,c.hoverPoint=t,t.firePointEvent("mouseOver",void 0,function(){e&&t&&e.refresh(s?l:t,n)})}else d&&e&&!e.isHidden&&(r=e.getAnchor([{}],n),c.isInsidePlot(r[0],r[1],{visiblePlotOnly:!0})&&e.updatePosition({plotX:r[0],plotY:r[1]}));this.unDocMouseMove||(this.unDocMouseMove=z(c.container.ownerDocument,"mousemove",function(f){var w=$[k.hoverChartIndex];w&&w.pointer.onDocumentMouseMove(f)}),this.eventsToUnbind.push(this.unDocMouseMove)),c.axes.forEach(function(f){var X,w=E((f.crosshair||{}).snap,!0);w&&((X=c.hoverPoint)&&X.series[f.coll]===f||(X=y(l,function(R){return R.series&&R.series[f.coll]===f}))),X||!w?f.drawCrosshair(n,X):f.hideCrosshair()})},k.prototype.scaleGroups=function(n,d){var r=this.chart;r.series.forEach(function(c){var e=n||c.getPlotBox();c.group&&(c.xAxis&&c.xAxis.zoomEnabled||r.mapView)&&(c.group.attr(e),c.markerGroup&&(c.markerGroup.attr(e),c.markerGroup.clip(d?r.clipRect:null)),c.dataLabelsGroup&&c.dataLabelsGroup.attr(e))}),r.clipRect.attr(d||r.clipBox)},k.prototype.setDOMEvents=function(){var n=this,d=this.chart.container,r=d.ownerDocument;d.onmousedown=this.onContainerMouseDown.bind(this),d.onmousemove=this.onContainerMouseMove.bind(this),d.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(z(d,"mouseenter",this.onContainerMouseEnter.bind(this))),this.eventsToUnbind.push(z(d,"mouseleave",this.onContainerMouseLeave.bind(this))),k.unbindDocumentMouseUp||(k.unbindDocumentMouseUp=z(r,"mouseup",this.onDocumentMouseUp.bind(this)));for(var c=this.chart.renderTo.parentElement;c&&"BODY"!==c.tagName;)this.eventsToUnbind.push(z(c,"scroll",function(){delete n.chartPosition})),c=c.parentElement;Y.hasTouch&&(this.eventsToUnbind.push(z(d,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1})),this.eventsToUnbind.push(z(d,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),k.unbindDocumentTouchEnd||(k.unbindDocumentTouchEnd=z(r,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})))},k.prototype.setHoverChartIndex=function(){var n=this.chart,d=Y.charts[E(k.hoverChartIndex,-1)];d&&d!==n&&d.pointer.onContainerMouseLeave({relatedTarget:n.container}),d&&d.mouseIsDown||(k.hoverChartIndex=n.index)},k.prototype.touch=function(n,d){var r=this.chart;if(this.setHoverChartIndex(),1===n.touches.length)if(n=this.normalize(n),r.isInsidePlot(n.chartX-r.plotLeft,n.chartY-r.plotTop,{visiblePlotOnly:!0})&&!r.openMenu){if(d&&this.runPointActions(n),"touchmove"===n.type)var e=!!(d=this.pinchDown)[0]&&4<=Math.sqrt(Math.pow(d[0].chartX-n.chartX,2)+Math.pow(d[0].chartY-n.chartY,2));E(e,!0)&&this.pinch(n)}else d&&this.reset();else 2===n.touches.length&&this.pinch(n)},k.prototype.touchSelect=function(n){return!(!this.chart.options.chart.zooming.singleTouch||!n.touches||1!==n.touches.length)},k.prototype.zoomOption=function(n){var d=this.chart,r=d.options.chart;d=d.inverted;var c=r.zooming.type||"";/touch/.test(n.type)&&(c=E(r.zooming.pinchType,c)),this.zoomX=n=/x/.test(c),this.zoomY=r=/y/.test(c),this.zoomHor=n&&!d||r&&d,this.zoomVert=r&&!d||n&&d,this.hasZoom=n||r},k}()}),ct(F,"Core/MSPointer.js",[F["Core/Globals.js"],F["Core/Pointer.js"],F["Core/Utilities.js"]],function(_,Y,A){function et(){var T=[];return T.item=function(E){return this[E]},y(S,function(E){T.push({pageX:E.pageX,pageY:E.pageY,target:E.target})}),T}function J(T,E,I,k){var n=Z[Y.hoverChartIndex||NaN];"touch"!==T.pointerType&&T.pointerType!==T.MSPOINTER_TYPE_TOUCH||!n||(n=n.pointer,k(T),n[E]({type:I,target:T.currentTarget,preventDefault:j,touches:et()}))}var T,$=this&&this.__extends||(T=function(E,I){return(T=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(k,n){k.__proto__=n}||function(k,n){for(var d in n)n.hasOwnProperty(d)&&(k[d]=n[d])})(E,I)},function(E,I){function k(){this.constructor=E}T(E,I),E.prototype=null===I?Object.create(I):(k.prototype=I.prototype,new k)}),Z=_.charts,z=_.doc,j=_.noop,O=_.win,m=A.addEvent,g=A.css,y=A.objectEach,C=A.pick,v=A.removeEvent,S={},M=!!O.PointerEvent;return function(T){function E(){return null!==T&&T.apply(this,arguments)||this}return $(E,T),E.isRequired=function(){return!(_.hasTouch||!O.PointerEvent&&!O.MSPointerEvent)},E.prototype.batchMSEvents=function(I){I(this.chart.container,M?"pointerdown":"MSPointerDown",this.onContainerPointerDown),I(this.chart.container,M?"pointermove":"MSPointerMove",this.onContainerPointerMove),I(z,M?"pointerup":"MSPointerUp",this.onDocumentPointerUp)},E.prototype.destroy=function(){this.batchMSEvents(v),T.prototype.destroy.call(this)},E.prototype.init=function(I,k){T.prototype.init.call(this,I,k),this.hasZoom&&g(I.container,{"-ms-touch-action":"none","touch-action":"none"})},E.prototype.onContainerPointerDown=function(I){J(I,"onContainerTouchStart","touchstart",function(k){S[k.pointerId]={pageX:k.pageX,pageY:k.pageY,target:k.currentTarget}})},E.prototype.onContainerPointerMove=function(I){J(I,"onContainerTouchMove","touchmove",function(k){S[k.pointerId]={pageX:k.pageX,pageY:k.pageY},S[k.pointerId].target||(S[k.pointerId].target=k.currentTarget)})},E.prototype.onDocumentPointerUp=function(I){J(I,"onDocumentTouchEnd","touchend",function(k){delete S[k.pointerId]})},E.prototype.setDOMEvents=function(){var I=this.chart.tooltip;T.prototype.setDOMEvents.call(this),(this.hasZoom||C(I&&I.options.followTouchMove,!0))&&this.batchMSEvents(m)},E}(Y)}),ct(F,"Core/Legend/Legend.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/FormatUtilities.js"],F["Core/Globals.js"],F["Core/Series/Point.js"],F["Core/Renderer/RendererUtilities.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$){var Z=_.animObject,z=_.setAnimation,j=Y.format,O=A.marginNames,m=J.distribute,g=$.addEvent,y=$.createElement,C=$.css,v=$.defined,S=$.discardElement,M=$.find,T=$.fireEvent,E=$.isNumber,I=$.merge,k=$.pick,n=$.relativeLength,d=$.stableSort,r=$.syncTimeout;return function(){function c(e,h){this.allItems=[],this.contentGroup=this.box=void 0,this.display=!1,this.group=void 0,this.offsetWidth=this.maxLegendWidth=this.maxItemWidth=this.legendWidth=this.legendHeight=this.lastLineHeight=this.lastItemY=this.itemY=this.itemX=this.itemMarginTop=this.itemMarginBottom=this.itemHeight=this.initialItemY=0,this.options=void 0,this.padding=0,this.pages=[],this.proximate=!1,this.scrollGroup=void 0,this.widthOption=this.totalItemWidth=this.titleHeight=this.symbolWidth=this.symbolHeight=0,this.chart=e,this.init(e,h)}return c.prototype.init=function(e,h){this.chart=e,this.setOptions(h),h.enabled&&(this.render(),g(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=g(this.chart,"render",function(){this.legend.proximatePositions(),this.legend.positionItems()}):this.unchartrender&&this.unchartrender())},c.prototype.setOptions=function(e){var h=k(e.padding,8);this.options=e,this.chart.styledMode||(this.itemStyle=e.itemStyle,this.itemHiddenStyle=I(this.itemStyle,e.itemHiddenStyle)),this.itemMarginTop=e.itemMarginTop||0,this.itemMarginBottom=e.itemMarginBottom||0,this.padding=h,this.initialItemY=h-5,this.symbolWidth=k(e.symbolWidth,16),this.pages=[],this.proximate="proximate"===e.layout&&!this.chart.inverted,this.baseline=void 0},c.prototype.update=function(e,h){var t=this.chart;this.setOptions(I(!0,this.options,e)),this.destroy(),t.isDirtyLegend=t.isDirtyBox=!0,k(h,!0)&&t.redraw(),T(this,"afterUpdate")},c.prototype.colorizeItem=function(e,h){var t=e.legendItem||{},o=t.group,l=t.label,s=t.line;if(t=t.symbol,o&&o[h?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){var f=this.options;o=this.itemHiddenStyle.color,f=h?f.itemStyle.color:o;var w=h&&e.color||o,X=e.options&&e.options.marker,R={fill:w};l&&l.css({fill:f,color:f}),s&&s.attr({stroke:w}),t&&(X&&t.isMarker&&(R=e.pointAttribs(),h||(R.stroke=R.fill=o)),t.attr(R))}T(this,"afterColorizeItem",{item:e,visible:h})},c.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this),this.chart.isResizing||this.positionCheckboxes()},c.prototype.positionItem=function(e){var h=this,t=e.legendItem||{},o=t.group,l=t.x;l=void 0===l?0:l,t=void 0===(t=t.y)?0:t;var s=this.options,f=s.symbolPadding,w=!s.rtl;s=e.checkbox,o&&o.element&&(f={translateX:w?l:this.legendWidth-l-2*f-4,translateY:t},o[v(o.translateY)?"animate":"attr"](f,void 0,function(){T(h,"afterPositionItem",{item:e})})),s&&(s.x=l,s.y=t)},c.prototype.destroyItem=function(e){for(var h=e.checkbox,t=e.legendItem||{},o=0,l=["group","label","line","symbol"];o<l.length;o++){var s=l[o];t[s]&&(t[s]=t[s].destroy())}h&&S(h),e.legendItem=void 0},c.prototype.destroy=function(){for(var e=0,h=this.getAllItems();e<h.length;e++)this.destroyItem(h[e]);for(e=0,h="clipRect up down pager nav box title group".split(" ");e<h.length;e++){var t=h[e];this[t]&&(this[t]=this[t].destroy())}this.display=null},c.prototype.positionCheckboxes=function(){var e=this.group&&this.group.alignAttr,h=this.clipHeight||this.legendHeight,t=this.titleHeight;if(e){var o=e.translateY;this.allItems.forEach(function(l){var s=l.checkbox;if(s){var f=o+t+s.y+(this.scrollOffset||0)+3;C(s,{left:e.translateX+l.checkboxOffset+s.x-20+"px",top:f+"px",display:this.proximate||f>o-6&&f<o+h-6?"":"none"})}},this)}},c.prototype.renderTitle=function(){var e=this.options,h=this.padding,t=e.title,o=0;t.text&&(this.title||(this.title=this.chart.renderer.label(t.text,h-3,h-4,void 0,void 0,void 0,e.useHTML,void 0,"legend-title").attr({zIndex:1}),this.chart.styledMode||this.title.css(t.style),this.title.add(this.group)),t.width||this.title.css({width:this.maxLegendWidth+"px"}),o=(e=this.title.getBBox()).height,this.offsetWidth=e.width,this.contentGroup.attr({translateY:o})),this.titleHeight=o},c.prototype.setText=function(e){var h=this.options;e.legendItem.label.attr({text:h.labelFormat?j(h.labelFormat,e,this.chart):h.labelFormatter.call(e)})},c.prototype.renderItem=function(e){var h=e.legendItem=e.legendItem||{},t=this.chart,o=t.renderer,l=this.options,s=this.symbolWidth,f=l.symbolPadding||0,w=this.itemStyle,X=this.itemHiddenStyle,R="horizontal"===l.layout?k(l.itemDistance,20):0,i=!l.rtl,p=!e.series,P=!p&&e.series.drawLegendSymbol?e.series:e,D=P.options,L=this.createCheckboxForItem&&D&&D.showCheckbox,a=l.useHTML,x=e.options.className,u=h.label;D=s+f+R+(L?20:0),u||(h.group=o.g("legend-item").addClass("highcharts-"+P.type+"-series highcharts-color-"+e.colorIndex+(x?" "+x:"")+(p?" highcharts-series-"+e.index:"")).attr({zIndex:1}).add(this.scrollGroup),h.label=u=o.text("",i?s+f:-f,this.baseline||0,a),t.styledMode||u.css(I(e.visible?w:X)),u.attr({align:i?"left":"right",zIndex:2}).add(h.group),this.baseline||(this.fontMetrics=o.fontMetrics(t.styledMode?12:w.fontSize,u),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,u.attr("y",this.baseline),this.symbolHeight=l.symbolHeight||this.fontMetrics.f,l.squareSymbol&&(this.symbolWidth=k(l.symbolWidth,Math.max(this.symbolHeight,16)),D=this.symbolWidth+f+R+(L?20:0),i&&u.attr("x",this.symbolWidth+f))),P.drawLegendSymbol(this,e),this.setItemEvents&&this.setItemEvents(e,u,a)),L&&!e.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(e),this.colorizeItem(e,e.visible),!t.styledMode&&w.width||u.css({width:(l.itemWidth||this.widthOption||t.spacingBox.width)-D+"px"}),this.setText(e),t=u.getBBox(),o=this.fontMetrics&&this.fontMetrics.h||0,e.itemWidth=e.checkboxOffset=l.itemWidth||h.labelWidth||t.width+D,this.maxItemWidth=Math.max(this.maxItemWidth,e.itemWidth),this.totalItemWidth+=e.itemWidth,this.itemHeight=e.itemHeight=Math.round(h.labelHeight||(t.height>1.5*o?t.height:o))},c.prototype.layoutItem=function(e){var h=this.options,t=this.padding,o="horizontal"===h.layout,l=e.itemHeight,s=this.itemMarginBottom,f=this.itemMarginTop,w=o?k(h.itemDistance,20):0,X=this.maxLegendWidth;h=h.alignColumns&&this.totalItemWidth>X?this.maxItemWidth:e.itemWidth;var R=e.legendItem||{};o&&this.itemX-t+h>X&&(this.itemX=t,this.lastLineHeight&&(this.itemY+=f+this.lastLineHeight+s),this.lastLineHeight=0),this.lastItemY=f+this.itemY+s,this.lastLineHeight=Math.max(l,this.lastLineHeight),R.x=this.itemX,R.y=this.itemY,o?this.itemX+=h:(this.itemY+=f+l+s,this.lastLineHeight=l),this.offsetWidth=this.widthOption||Math.max((o?this.itemX-t-(e.checkbox?0:w):h)+t,this.offsetWidth)},c.prototype.getAllItems=function(){var e=[];return this.chart.series.forEach(function(h){var t=h&&h.options;h&&k(t.showInLegend,!v(t.linkedTo)&&void 0,!0)&&(e=e.concat((h.legendItem||{}).labels||("point"===t.legendType?h.data:h)))}),T(this,"afterGetAllItems",{allItems:e}),e},c.prototype.getAlignment=function(){var e=this.options;return this.proximate?e.align.charAt(0)+"tv":e.floating?"":e.align.charAt(0)+e.verticalAlign.charAt(0)+e.layout.charAt(0)},c.prototype.adjustMargins=function(e,h){var t=this.chart,o=this.options,l=this.getAlignment();l&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(s,f){s.test(l)&&!v(e[f])&&(t[O[f]]=Math.max(t[O[f]],t.legend[(f+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][f]*o[f%2?"x":"y"]+k(o.margin,12)+h[f]+(t.titleOffset[f]||0)))})},c.prototype.proximatePositions=function(){var e=this.chart,h=[],t="left"===this.options.align;this.allItems.forEach(function(w){var X,R=t;if(w.yAxis){w.xAxis.options.reversed&&(R=!R),w.points&&(X=M(R?w.points:w.points.slice(0).reverse(),function(p){return E(p.plotY)})),R=this.itemMarginTop+w.legendItem.label.getBBox().height+this.itemMarginBottom;var i=w.yAxis.top-e.plotTop;w.visible?(X=X?X.plotY:w.yAxis.height,X+=i-.3*R):X=i+w.yAxis.height,h.push({target:X,size:R,item:w})}},this);for(var o,l=0,s=m(h,e.plotHeight);l<s.length;l++){var f=s[l];o=f.item.legendItem||{},E(f.pos)&&(o.y=e.plotTop-e.spacing[0]+f.pos)}},c.prototype.render=function(){var e=this.chart,h=e.renderer,t=this.options,o=this.padding,l=this.getAllItems(),s=this.group,f=this.box;this.itemX=o,this.itemY=this.initialItemY,this.lastItemY=this.offsetWidth=0,this.widthOption=n(t.width,e.spacingBox.width-o);var w=e.spacingBox.width-2*o-t.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(w/=2),this.maxLegendWidth=this.widthOption||w,s||(this.group=s=h.g("legend").addClass(t.className||"").attr({zIndex:7}).add(),this.contentGroup=h.g().attr({zIndex:1}).add(s),this.scrollGroup=h.g().add(this.contentGroup)),this.renderTitle(),d(l,function(R,i){return(R.options&&R.options.legendIndex||0)-(i.options&&i.options.legendIndex||0)}),t.reversed&&l.reverse(),this.allItems=l,this.display=w=!!l.length,this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0,l.forEach(this.renderItem,this),l.forEach(this.layoutItem,this),l=(this.widthOption||this.offsetWidth)+o;var X=this.lastItemY+this.lastLineHeight+this.titleHeight;X=this.handleOverflow(X),X+=o,f||(this.box=f=h.rect().addClass("highcharts-legend-box").attr({r:t.borderRadius}).add(s)),e.styledMode||f.attr({stroke:t.borderColor,"stroke-width":t.borderWidth||0,fill:t.backgroundColor||"none"}).shadow(t.shadow),0<l&&0<X&&f[f.placed?"animate":"attr"](f.crisp.call({},{x:0,y:0,width:l,height:X},f.strokeWidth())),s[w?"show":"hide"](),e.styledMode&&"none"===s.getStyle("display")&&(l=X=0),this.legendWidth=l,this.legendHeight=X,w&&this.align(),this.proximate||this.positionItems(),T(this,"afterRender")},c.prototype.align=function(e){void 0===e&&(e=this.chart.spacingBox);var h=this.chart,t=this.options,o=e.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<h.titleOffset[0]?o+=h.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<h.titleOffset[2]&&(o-=h.titleOffset[2]),o!==e.y&&(e=I(e,{y:o})),h.hasRendered||(this.group.placed=!1),this.group.align(I(t,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":t.verticalAlign}),!0,e)},c.prototype.handleOverflow=function(e){var x,u,B,h=this,t=this.chart,o=t.renderer,l=this.options,s=l.y,f="top"===l.verticalAlign,w=this.padding,X=l.maxHeight,R=l.navigation,i=k(R.animation,!0),p=R.arrowSize||12,P=this.pages,D=this.allItems,L=function(G){"number"==typeof G?N.attr({height:G}):N&&(h.clipRect=N.destroy(),h.contentGroup.clip()),h.contentGroup.div&&(h.contentGroup.div.style.clip=G?"rect("+w+"px,9999px,"+(w+G)+"px,0)":"auto")},a=function(G){return h[G]=o.circle(0,0,1.3*p).translate(p/2,p/2).add(b),t.styledMode||h[G].attr("fill","rgba(0,0,0,0.0001)"),h[G]};s=t.spacingBox.height+(f?-s:s)-w;var b=this.nav,N=this.clipRect;return"horizontal"!==l.layout||"middle"===l.verticalAlign||l.floating||(s/=2),X&&(s=Math.min(s,X)),P.length=0,e&&0<s&&e>s&&!1!==R.enabled?(this.clipHeight=x=Math.max(s-20-this.titleHeight-w,0),this.currentPage=k(this.currentPage,1),this.fullHeight=e,D.forEach(function(G,U){G=(B=G.legendItem||{}).y||0;var V=Math.round(B.label.getBBox().height),st=P.length;(!st||G-P[st-1]>x&&(u||G)!==P[st-1])&&(P.push(u||G),st++),B.pageIx=st-1,u&&((D[U-1].legendItem||{}).pageIx=st-1),U===D.length-1&&G+V-P[st-1]>x&&V<=x&&(P.push(G),B.pageIx=st),G!==u&&(u=G)}),N||(N=h.clipRect=o.clipRect(0,w,9999,0),h.contentGroup.clip(N)),L(x),b||(this.nav=b=o.g().attr({zIndex:1}).add(this.group),this.up=o.symbol("triangle",0,0,p,p).add(b),a("upTracker").on("click",function(){h.scroll(-1,i)}),this.pager=o.text("",15,10).addClass("highcharts-legend-navigation"),!t.styledMode&&R.style&&this.pager.css(R.style),this.pager.add(b),this.down=o.symbol("triangle-down",0,0,p,p).add(b),a("downTracker").on("click",function(){h.scroll(1,i)})),h.scroll(0),e=s):b&&(L(),this.nav=b.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),e},c.prototype.scroll=function(e,h){var t=this,o=this.chart,l=this.pages,s=l.length,f=this.clipHeight,w=this.options.navigation,X=this.pager,R=this.padding,i=this.currentPage+e;i>s&&(i=s),0<i&&(typeof h<"u"&&z(h,o),this.nav.attr({translateX:R,translateY:f+this.padding+7+this.titleHeight,visibility:"inherit"}),[this.up,this.upTracker].forEach(function(p){p.attr({class:1===i?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),X.attr({text:i+"/"+s}),[this.down,this.downTracker].forEach(function(p){p.attr({x:18+this.pager.getBBox().width,class:i===s?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),o.styledMode||(this.up.attr({fill:1===i?w.inactiveColor:w.activeColor}),this.upTracker.css({cursor:1===i?"default":"pointer"}),this.down.attr({fill:i===s?w.inactiveColor:w.activeColor}),this.downTracker.css({cursor:i===s?"default":"pointer"})),this.scrollOffset=-l[i-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=i,this.positionCheckboxes(),e=Z(k(h,o.renderer.globalAnimation,!0)),r(function(){T(t,"afterScroll",{currentPage:i})},e.duration))},c.prototype.setItemEvents=function(e,h,t){var o=this,l=e.legendItem||{},s=o.chart.renderer.boxWrapper,f=e instanceof et,w="highcharts-legend-"+(f?"point":"series")+"-active",X=o.chart.styledMode,R=function(p){o.allItems.forEach(function(P){e!==P&&[P].concat(P.linkedSeries||[]).forEach(function(D){D.setState(p,!f)})})},i=0;for(t=t?[h,l.symbol]:[l.group];i<t.length;i++)(l=t[i])&&l.on("mouseover",function(){e.visible&&R("inactive"),e.setState("hover"),e.visible&&s.addClass(w),X||h.css(o.options.itemHoverStyle)}).on("mouseout",function(){o.chart.styledMode||h.css(I(e.visible?o.itemStyle:o.itemHiddenStyle)),R(""),s.removeClass(w),e.setState()}).on("click",function(p){var P=function(){e.setVisible&&e.setVisible(),R(e.visible?"inactive":"")};s.removeClass(w),p={browserEvent:p},e.firePointEvent?e.firePointEvent("legendItemClick",p,P):T(e,"legendItemClick",p,P)})},c.prototype.createCheckboxForItem=function(e){e.checkbox=y("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:e.selected,defaultChecked:e.selected},this.options.itemCheckboxStyle,this.chart.container),g(e.checkbox,"click",function(h){T(e.series||e,"checkboxClick",{checked:h.target.checked,item:e},function(){e.select()})})},c}()}),ct(F,"Core/Series/SeriesRegistry.js",[F["Core/Globals.js"],F["Core/Defaults.js"],F["Core/Series/Point.js"],F["Core/Utilities.js"]],function(_,Y,A,et){var z,J=Y.defaultOptions,$=et.extendClass,Z=et.merge;return function(j){function O(m,g){var y=J.plotOptions||{},C=g.defaultOptions,v=g.prototype;v.type=m,v.pointClass||(v.pointClass=A),C&&(y[m]=C),j.seriesTypes[m]=g}j.seriesTypes=_.seriesTypes,j.registerSeriesType=O,j.seriesType=function(m,g,y,C,v){var S=J.plotOptions||{};return S[m]=Z(S[g=g||""],y),O(m,$(j.seriesTypes[g]||function(){},C)),j.seriesTypes[m].prototype.type=m,v&&(j.seriesTypes[m].prototype.pointClass=$(A,v)),j.seriesTypes[m]}}(z||(z={})),z}),ct(F,"Core/Chart/Chart.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Axis/Axis.js"],F["Core/Defaults.js"],F["Core/FormatUtilities.js"],F["Core/Foundation.js"],F["Core/Globals.js"],F["Core/Legend/Legend.js"],F["Core/MSPointer.js"],F["Core/Pointer.js"],F["Core/Renderer/RendererRegistry.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Renderer/SVG/SVGRenderer.js"],F["Core/Time.js"],F["Core/Utilities.js"],F["Core/Renderer/HTML/AST.js"]],function(_,Y,A,et,J,$,Z,z,j,O,m,g,y,C,v){var S=_.animate,M=_.animObject,T=_.setAnimation,E=A.defaultOptions,I=A.defaultTime,k=et.numberFormat,n=J.registerEventOptions,d=$.charts,r=$.doc,c=$.marginNames,e=$.svg,h=$.win,t=m.seriesTypes,o=C.addEvent,l=C.attr,s=C.cleanRecursively,f=C.createElement,w=C.css,X=C.defined,R=C.discardElement,i=C.erase,p=C.error,P=C.extend,D=C.find,L=C.fireEvent,a=C.getStyle,x=C.isArray,u=C.isNumber,B=C.isObject,b=C.isString,N=C.merge,G=C.objectEach,U=C.pick,V=C.pInt,st=C.relativeLength,rt=C.removeEvent,ot=C.splat,tt=C.syncTimeout,at=C.uniqueKey;return _=function(){function q(H,W,K){this.series=this.renderTo=this.renderer=this.pointer=this.pointCount=this.plotWidth=this.plotTop=this.plotLeft=this.plotHeight=this.plotBox=this.options=this.numberFormatter=this.margin=this.legend=this.labelCollectors=this.isResizing=this.index=this.eventOptions=this.container=this.colorCounter=this.clipBox=this.chartWidth=this.chartHeight=this.bounds=this.axisOffset=this.axes=void 0,this.sharedClips={},this.yAxis=this.xAxis=this.userOptions=this.titleOffset=this.time=this.symbolCounter=this.spacingBox=this.spacing=void 0,this.getArgs(H,W,K)}return q.chart=function(H,W,K){return new q(H,W,K)},q.prototype.getArgs=function(H,W,K){b(H)||H.nodeName?(this.renderTo=H,this.init(W,K)):this.init(H,W)},q.prototype.init=function(H,W){var K=H.plotOptions||{};L(this,"init",{args:arguments},function(){var Q=N(E,H),it=Q.chart;G(Q.plotOptions,function(ht,pt){B(ht)&&(ht.tooltip=K[pt]&&N(K[pt].tooltip)||void 0)}),Q.tooltip.userOptions=H.chart&&H.chart.forExport&&H.tooltip.userOptions||H.tooltip,this.userOptions=H,this.margin=[],this.spacing=[],this.bounds={h:{},v:{}},this.labelCollectors=[],this.callback=W,this.isResizing=0;var nt=it.zooming=it.zooming||{};H.chart&&!H.chart.zooming&&(nt.resetButton=it.resetZoomButton),nt.key=U(nt.key,it.zoomKey),nt.pinchType=U(nt.pinchType,it.pinchType),nt.singleTouch=U(nt.singleTouch,it.zoomBySingleTouch),nt.type=U(nt.type,it.zoomType),this.options=Q,this.axes=[],this.series=[],this.time=H.time&&Object.keys(H.time).length?new y(H.time):$.time,this.numberFormatter=it.numberFormatter||k,this.styledMode=it.styledMode,this.hasCartesianSeries=it.showAxes,this.index=d.length,d.push(this),$.chartCount++,n(this,it),this.xAxis=[],this.yAxis=[],this.pointCount=this.colorCounter=this.symbolCounter=0,L(this,"afterInit"),this.firstRender()})},q.prototype.initSeries=function(H){var W=this.options.chart,K=t[W=H.type||W.type||W.defaultSeriesType];return K||p(17,!0,this,{missingModuleFor:W}),"function"==typeof(W=new K).init&&W.init(this,H),W},q.prototype.setSeriesData=function(){this.getSeriesOrderByLinks().forEach(function(H){H.points||H.data||!H.enabledDataSorting||H.setData(H.options.data,!1)})},q.prototype.getSeriesOrderByLinks=function(){return this.series.concat().sort(function(H,W){return H.linkedSeries.length||W.linkedSeries.length?W.linkedSeries.length-H.linkedSeries.length:0})},q.prototype.orderSeries=function(H){var W=this.series;H=H||0;for(var K=W.length;H<K;++H)W[H]&&(W[H].index=H,W[H].name=W[H].getName())},q.prototype.isInsidePlot=function(H,W,K){void 0===K&&(K={});var Q=this.inverted,it=this.plotBox,nt=this.plotLeft,ht=this.plotTop,pt=this.scrollablePlotBox,ft=0,lt=0;K.visiblePlotOnly&&this.scrollingContainer&&(ft=(lt=this.scrollingContainer).scrollLeft,lt=lt.scrollTop);var dt=K.series;if(it=K.visiblePlotOnly&&pt||it,H={x:pt=K.inverted?W:H,y:W=K.inverted?H:W,isInsidePlot:!0,options:K},!K.ignoreX){var yt=dt&&(Q&&!this.polar?dt.yAxis:dt.xAxis)||{pos:nt,len:1/0};(pt=K.paneCoordinates?yt.pos+pt:nt+pt)>=Math.max(ft+nt,yt.pos)&&pt<=Math.min(ft+nt+it.width,yt.pos+yt.len)||(H.isInsidePlot=!1)}return!K.ignoreY&&H.isInsidePlot&&(Q=K.axis&&!K.axis.isXAxis&&K.axis||dt&&(Q?dt.xAxis:dt.yAxis)||{pos:ht,len:1/0},(K=K.paneCoordinates?Q.pos+W:ht+W)>=Math.max(lt+ht,Q.pos)&&K<=Math.min(lt+ht+it.height,Q.pos+Q.len)||(H.isInsidePlot=!1)),L(this,"afterIsInsidePlot",H),H.isInsidePlot},q.prototype.redraw=function(H){L(this,"beforeRedraw");var W=this.hasCartesianSeries?this.axes:this.colorAxis||[],K=this.series,Q=this.pointer,it=this.legend,nt=this.userOptions.legend,ht=this.renderer,pt=ht.isHidden(),ft=[],lt=this.isDirtyBox,dt=this.isDirtyLegend;for(this.setResponsive&&this.setResponsive(!1),T(!!this.hasRendered&&H,this),pt&&this.temporaryDisplay(),this.layOutTitles(),H=K.length;H--;){var yt=K[H];if(yt.options.stacking||yt.options.centerInCategory){var gt=!0;if(yt.isDirty){var mt=!0;break}}}if(mt)for(H=K.length;H--;)(yt=K[H]).options.stacking&&(yt.isDirty=!0);K.forEach(function(ut){ut.isDirty&&("point"===ut.options.legendType?("function"==typeof ut.updateTotals&&ut.updateTotals(),dt=!0):nt&&(nt.labelFormatter||nt.labelFormat)&&(dt=!0)),ut.isDirtyData&&L(ut,"updatedData")}),dt&&it&&it.options.enabled&&(it.render(),this.isDirtyLegend=!1),gt&&this.getStacks(),W.forEach(function(ut){ut.updateNames(),ut.setScale()}),this.getMargins(),W.forEach(function(ut){ut.isDirty&&(lt=!0)}),W.forEach(function(ut){var Ct=ut.min+","+ut.max;ut.extKey!==Ct&&(ut.extKey=Ct,ft.push(function(){L(ut,"afterSetExtremes",P(ut.eventArgs,ut.getExtremes())),delete ut.eventArgs})),(lt||gt)&&ut.redraw()}),lt&&this.drawChartBox(),L(this,"predraw"),K.forEach(function(ut){(lt||ut.isDirty)&&ut.visible&&ut.redraw(),ut.isDirtyData=!1}),Q&&Q.reset(!0),ht.draw(),L(this,"redraw"),L(this,"render"),pt&&this.temporaryDisplay(!0),ft.forEach(function(ut){ut.call()})},q.prototype.get=function(H){function W(nt){return nt.id===H||nt.options&&nt.options.id===H}for(var K=this.series,Q=D(this.axes,W)||D(this.series,W),it=0;!Q&&it<K.length;it++)Q=D(K[it].points||[],W);return Q},q.prototype.getAxes=function(){var H=this,W=this.options,K=W.xAxis=ot(W.xAxis||{});W=W.yAxis=ot(W.yAxis||{}),L(this,"getAxes"),K.forEach(function(Q,it){Q.index=it,Q.isX=!0}),W.forEach(function(Q,it){Q.index=it}),K.concat(W).forEach(function(Q){new Y(H,Q)}),L(this,"afterGetAxes")},q.prototype.getSelectedPoints=function(){return this.series.reduce(function(H,W){return W.getPointsCollection().forEach(function(K){U(K.selectedStaging,K.selected)&&H.push(K)}),H},[])},q.prototype.getSelectedSeries=function(){return this.series.filter(function(H){return H.selected})},q.prototype.setTitle=function(H,W,K){this.applyDescription("title",H),this.applyDescription("subtitle",W),this.applyDescription("caption",void 0),this.layOutTitles(K)},q.prototype.applyDescription=function(H,W){var K=this,Q="title"===H?{color:"#333333",fontSize:this.options.isStock?"16px":"18px"}:{color:"#666666"};Q=this.options[H]=N(!this.styledMode&&{style:Q},this.options[H],W);var it=this[H];it&&W&&(this[H]=it=it.destroy()),Q&&!it&&((it=this.renderer.text(Q.text,0,0,Q.useHTML).attr({align:Q.align,class:"highcharts-"+H,zIndex:Q.zIndex||4}).add()).update=function(nt){K[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[H]](nt)},this.styledMode||it.css(Q.style),this[H]=it)},q.prototype.layOutTitles=function(H){var W=[0,0,0],K=this.renderer,Q=this.spacingBox;["title","subtitle","caption"].forEach(function(nt){var lt,ht=this[nt],pt=this.options[nt],ft=pt.verticalAlign||"top";if(nt="title"===nt?"top"===ft?-3:0:"top"===ft?W[0]+2:0,ht){this.styledMode||(lt=pt.style&&pt.style.fontSize),lt=K.fontMetrics(lt,ht).b,ht.css({width:(pt.width||Q.width+(pt.widthAdjust||0))+"px"});var dt=Math.round(ht.getBBox(pt.useHTML).height);ht.align(P({y:"bottom"===ft?lt:nt+lt,height:dt},pt),!1,"spacingBox"),pt.floating||("top"===ft?W[0]=Math.ceil(W[0]+dt):"bottom"===ft&&(W[2]=Math.ceil(W[2]+dt)))}},this),W[0]&&"top"===(this.options.title.verticalAlign||"top")&&(W[0]+=this.options.title.margin),W[2]&&"bottom"===this.options.caption.verticalAlign&&(W[2]+=this.options.caption.margin);var it=!this.titleOffset||this.titleOffset.join(",")!==W.join(",");this.titleOffset=W,L(this,"afterLayOutTitles"),!this.isDirtyBox&&it&&(this.isDirtyBox=this.isDirtyLegend=it,this.hasRendered&&U(H,!0)&&this.isDirtyBox&&this.redraw())},q.prototype.getChartSize=function(){var H=this.options.chart,W=H.width;H=H.height;var K=this.renderTo;X(W)||(this.containerWidth=a(K,"width")),X(H)||(this.containerHeight=a(K,"height")),this.chartWidth=Math.max(0,W||this.containerWidth||600),this.chartHeight=Math.max(0,st(H,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},q.prototype.temporaryDisplay=function(H){var W=this.renderTo;if(H)for(;W&&W.style;)W.hcOrigStyle&&(w(W,W.hcOrigStyle),delete W.hcOrigStyle),W.hcOrigDetached&&(r.body.removeChild(W),W.hcOrigDetached=!1),W=W.parentNode;else for(;W&&W.style&&(r.body.contains(W)||W.parentNode||(W.hcOrigDetached=!0,r.body.appendChild(W)),("none"===a(W,"display",!1)||W.hcOricDetached)&&(W.hcOrigStyle={display:W.style.display,height:W.style.height,overflow:W.style.overflow},H={display:"block",overflow:"hidden"},W!==this.renderTo&&(H.height=0),w(W,H),W.offsetWidth||W.style.setProperty("display","block","important")),(W=W.parentNode)!==r.body););},q.prototype.setClassName=function(H){this.container.className="highcharts-container "+(H||"")},q.prototype.getContainer=function(){var Q,H=this.options,W=H.chart,K=at(),it=this.renderTo;it||(this.renderTo=it=W.renderTo),b(it)&&(this.renderTo=it=r.getElementById(it)),it||p(13,!0,this);var nt=V(l(it,"data-highcharts-chart"));u(nt)&&d[nt]&&d[nt].hasRendered&&d[nt].destroy(),l(it,"data-highcharts-chart",this.index),it.innerHTML=v.emptyHTML,W.skipClone||it.offsetWidth||this.temporaryDisplay(),this.getChartSize(),nt=this.chartWidth;var ht=this.chartHeight;if(w(it,{overflow:"hidden"}),this.styledMode||(Q=P({position:"relative",overflow:"hidden",width:nt+"px",height:ht+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none"},W.style||{})),this.container=K=f("div",{id:K},Q,it),this._cursor=K.style.cursor,this.renderer=new(W.renderer||!e?O.getRendererType(W.renderer):g)(K,nt,ht,void 0,W.forExport,H.exporting&&H.exporting.allowHTML,this.styledMode),T(void 0,this),this.setClassName(W.className),this.styledMode)for(var pt in H.defs)this.renderer.definition(H.defs[pt]);else this.renderer.setStyle(W.style);this.renderer.chartIndex=this.index,L(this,"afterGetContainer")},q.prototype.getMargins=function(H){var W=this.spacing,K=this.margin,Q=this.titleOffset;this.resetMargins(),Q[0]&&!X(K[0])&&(this.plotTop=Math.max(this.plotTop,Q[0]+W[0])),Q[2]&&!X(K[2])&&(this.marginBottom=Math.max(this.marginBottom,Q[2]+W[2])),this.legend&&this.legend.display&&this.legend.adjustMargins(K,W),L(this,"getMargins"),H||this.getAxisMargins()},q.prototype.getAxisMargins=function(){var H=this,W=H.axisOffset=[0,0,0,0],K=H.colorAxis,Q=H.margin,it=function(nt){nt.forEach(function(ht){ht.visible&&ht.getOffset()})};H.hasCartesianSeries?it(H.axes):K&&K.length&&it(K),c.forEach(function(nt,ht){X(Q[ht])||(H[nt]+=W[ht])}),H.setChartSize()},q.prototype.reflow=function(H){var W=this,K=W.options.chart,Q=W.renderTo,it=X(K.width)&&X(K.height),nt=K.width||a(Q,"width");K=K.height||a(Q,"height"),Q=H?H.target:h,delete W.pointer.chartPosition,!it&&!W.isPrinting&&nt&&K&&(Q===h||Q===r)&&((nt!==W.containerWidth||K!==W.containerHeight)&&(C.clearTimeout(W.reflowTimeout),W.reflowTimeout=tt(function(){W.container&&W.setSize(void 0,void 0,!1)},H?100:0)),W.containerWidth=nt,W.containerHeight=K)},q.prototype.setReflow=function(H){var W=this;!1===H||this.unbindReflow?!1===H&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=o(h,"resize",function(K){W.options&&W.reflow(K)}),o(this,"destroy",this.unbindReflow))},q.prototype.setSize=function(H,W,K){var Q=this,it=Q.renderer;Q.isResizing+=1,T(K,Q),K=it.globalAnimation,Q.oldChartHeight=Q.chartHeight,Q.oldChartWidth=Q.chartWidth,typeof H<"u"&&(Q.options.chart.width=H),typeof W<"u"&&(Q.options.chart.height=W),Q.getChartSize(),Q.styledMode||(K?S:w)(Q.container,{width:Q.chartWidth+"px",height:Q.chartHeight+"px"},K),Q.setChartSize(!0),it.setSize(Q.chartWidth,Q.chartHeight,K),Q.axes.forEach(function(nt){nt.isDirty=!0,nt.setScale()}),Q.isDirtyLegend=!0,Q.isDirtyBox=!0,Q.layOutTitles(),Q.getMargins(),Q.redraw(K),Q.oldChartHeight=null,L(Q,"resize"),tt(function(){Q&&L(Q,"endResize",null,function(){--Q.isResizing})},M(K).duration)},q.prototype.setChartSize=function(H){var ft,lt,dt,yt,W=this.inverted,K=this.renderer,Q=this.chartWidth,it=this.chartHeight,nt=this.options.chart,ht=this.spacing,pt=this.clipOffset;this.plotLeft=ft=Math.round(this.plotLeft),this.plotTop=lt=Math.round(this.plotTop),this.plotWidth=dt=Math.max(0,Math.round(Q-ft-this.marginRight)),this.plotHeight=yt=Math.max(0,Math.round(it-lt-this.marginBottom)),this.plotSizeX=W?yt:dt,this.plotSizeY=W?dt:yt,this.plotBorderWidth=nt.plotBorderWidth||0,this.spacingBox=K.spacingBox={x:ht[3],y:ht[0],width:Q-ht[3]-ht[1],height:it-ht[0]-ht[2]},this.plotBox=K.plotBox={x:ft,y:lt,width:dt,height:yt},W=2*Math.floor(this.plotBorderWidth/2),Q=Math.ceil(Math.max(W,pt[3])/2),it=Math.ceil(Math.max(W,pt[0])/2),this.clipBox={x:Q,y:it,width:Math.floor(this.plotSizeX-Math.max(W,pt[1])/2-Q),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(W,pt[2])/2-it))},H||(this.axes.forEach(function(gt){gt.setAxisSize(),gt.setAxisTranslation()}),K.alignElements()),L(this,"afterSetChartSize",{skipAxes:H})},q.prototype.resetMargins=function(){L(this,"resetMargins");var H=this,W=H.options.chart;["margin","spacing"].forEach(function(K){var Q=W[K],it=B(Q)?Q:[Q,Q,Q,Q];["Top","Right","Bottom","Left"].forEach(function(nt,ht){H[K][ht]=U(W[K+nt],it[ht])})}),c.forEach(function(K,Q){H[K]=U(H.margin[Q],H.spacing[Q])}),H.axisOffset=[0,0,0,0],H.clipOffset=[0,0,0,0]},q.prototype.drawChartBox=function(){var kt,H=this.options.chart,W=this.renderer,K=this.chartWidth,Q=this.chartHeight,it=this.styledMode,nt=this.plotBGImage,ht=H.backgroundColor,pt=H.plotBackgroundColor,ft=H.plotBackgroundImage,lt=this.plotLeft,dt=this.plotTop,yt=this.plotWidth,gt=this.plotHeight,mt=this.plotBox,ut=this.clipRect,Ct=this.clipBox,xt=this.chartBackground,vt=this.plotBackground,Pt=this.plotBorder,Mt="animate";if(xt||(this.chartBackground=xt=W.rect().addClass("highcharts-background").add(),Mt="attr"),it)var wt=kt=xt.strokeWidth();else kt=(wt=H.borderWidth||0)+(H.shadow?8:0),ht={fill:ht||"none"},(wt||xt["stroke-width"])&&(ht.stroke=H.borderColor,ht["stroke-width"]=wt),xt.attr(ht).shadow(H.shadow);xt[Mt]({x:kt/2,y:kt/2,width:K-kt-wt%2,height:Q-kt-wt%2,r:H.borderRadius}),Mt="animate",vt||(Mt="attr",this.plotBackground=vt=W.rect().addClass("highcharts-plot-background").add()),vt[Mt](mt),it||(vt.attr({fill:pt||"none"}).shadow(H.plotShadow),ft&&(nt?(ft!==nt.attr("href")&&nt.attr("href",ft),nt.animate(mt)):this.plotBGImage=W.image(ft,lt,dt,yt,gt).add())),ut?ut.animate({width:Ct.width,height:Ct.height}):this.clipRect=W.clipRect(Ct),Mt="animate",Pt||(Mt="attr",this.plotBorder=Pt=W.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add()),it||Pt.attr({stroke:H.plotBorderColor,"stroke-width":H.plotBorderWidth||0,fill:"none"}),Pt[Mt](Pt.crisp({x:lt,y:dt,width:yt,height:gt},-Pt.strokeWidth())),this.isDirtyBox=!1,L(this,"afterDrawChartBox")},q.prototype.propFromSeries=function(){var Q,it,nt,H=this,W=H.options.chart,K=H.options.series;["inverted","angular","polar"].forEach(function(ht){for(it=t[W.type||W.defaultSeriesType],nt=W[ht]||it&&it.prototype[ht],Q=K&&K.length;!nt&&Q--;)(it=t[K[Q].type])&&it.prototype[ht]&&(nt=!0);H[ht]=nt})},q.prototype.linkSeries=function(){var H=this,W=H.series;W.forEach(function(K){K.linkedSeries.length=0}),W.forEach(function(K){var Q=K.options.linkedTo;b(Q)&&(Q=":previous"===Q?H.series[K.index-1]:H.get(Q))&&Q.linkedParent!==K&&(Q.linkedSeries.push(K),K.linkedParent=Q,Q.enabledDataSorting&&K.setDataSortingOptions(),K.visible=U(K.options.visible,Q.options.visible,K.visible))}),L(this,"afterLinkSeries")},q.prototype.renderSeries=function(){this.series.forEach(function(H){H.translate(),H.render()})},q.prototype.renderLabels=function(){var H=this,W=H.options.labels;W.items&&W.items.forEach(function(K){var Q=P(W.style,K.style),it=V(Q.left)+H.plotLeft,nt=V(Q.top)+H.plotTop+12;delete Q.left,delete Q.top,H.renderer.text(K.html,it,nt).attr({zIndex:2}).css(Q).add()})},q.prototype.render=function(){var H=this.axes,W=this.colorAxis,K=this.renderer,Q=this.options,it=function(lt){lt.forEach(function(dt){dt.visible&&dt.render()})},nt=0;this.setTitle(),this.legend=new Z(this,Q.legend),this.getStacks&&this.getStacks(),this.getMargins(!0),this.setChartSize(),Q=this.plotWidth,H.some(function(lt){if(lt.horiz&&lt.visible&&lt.options.labels.enabled&&lt.series.length)return nt=21,!0});var ht=this.plotHeight=Math.max(this.plotHeight-nt,0);H.forEach(function(lt){lt.setScale()}),this.getAxisMargins();var pt=1.1<Q/this.plotWidth,ft=1.05<ht/this.plotHeight;(pt||ft)&&(H.forEach(function(lt){(lt.horiz&&pt||!lt.horiz&&ft)&&lt.setTickInterval(!0)}),this.getMargins()),this.drawChartBox(),this.hasCartesianSeries?it(H):W&&W.length&&it(W),this.seriesGroup||(this.seriesGroup=K.g("series-group").attr({zIndex:3}).add()),this.renderSeries(),this.renderLabels(),this.addCredits(),this.setResponsive&&this.setResponsive(),this.hasRendered=!0},q.prototype.addCredits=function(H){var W=this,K=N(!0,this.options.credits,H);K.enabled&&!this.credits&&(this.credits=this.renderer.text(K.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){K.href&&(h.location.href=K.href)}).attr({align:K.position.align,zIndex:8}),W.styledMode||this.credits.css(K.style),this.credits.add().align(K.position),this.credits.update=function(Q){W.credits=W.credits.destroy(),W.addCredits(Q)})},q.prototype.destroy=function(){var nt,H=this,W=H.axes,K=H.series,Q=H.container,it=Q&&Q.parentNode;for(L(H,"destroy"),H.renderer.forExport?i(d,H):d[H.index]=void 0,$.chartCount--,H.renderTo.removeAttribute("data-highcharts-chart"),rt(H),nt=W.length;nt--;)W[nt]=W[nt].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),nt=K.length;nt--;)K[nt]=K[nt].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(ht){var pt=H[ht];pt&&pt.destroy&&(H[ht]=pt.destroy())}),Q&&(Q.innerHTML=v.emptyHTML,rt(Q),it&&R(Q)),G(H,function(ht,pt){delete H[pt]})},q.prototype.firstRender=function(){var H=this,W=H.options;(!H.isReadyToRender||H.isReadyToRender())&&(H.getContainer(),H.resetMargins(),H.setChartSize(),H.propFromSeries(),H.getAxes(),(x(W.series)?W.series:[]).forEach(function(K){H.initSeries(K)}),H.linkSeries(),H.setSeriesData(),L(H,"beforeRender"),j&&(H.pointer=z.isRequired()?new z(H,W):new j(H,W)),H.render(),H.pointer.getChartPosition(),!H.renderer.imgCount&&!H.hasLoaded&&H.onload(),H.temporaryDisplay(!0))},q.prototype.onload=function(){this.callbacks.concat([this.callback]).forEach(function(H){H&&typeof this.index<"u"&&H.apply(this,[this])},this),L(this,"load"),L(this,"render"),X(this.index)&&this.setReflow(this.options.chart.reflow),this.warnIfA11yModuleNotLoaded(),this.hasLoaded=!0},q.prototype.warnIfA11yModuleNotLoaded=function(){var H=this.options,W=this.title;H&&!this.accessibility&&(this.renderer.boxWrapper.attr({role:"img","aria-label":(W&&W.element.textContent||"").replace(/</g,"&lt;")}),H.accessibility&&!1===H.accessibility.enabled||p('Highcharts warning: Consider including the "accessibility.js" module to make your chart more usable for people with disabilities. Set the "accessibility.enabled" option to false to remove this warning. See https://www.highcharts.com/docs/accessibility/accessibility-module.',!1,this))},q.prototype.addSeries=function(H,W,K){var it,Q=this;return H&&(W=U(W,!0),L(Q,"addSeries",{options:H},function(){it=Q.initSeries(H),Q.isDirtyLegend=!0,Q.linkSeries(),it.enabledDataSorting&&it.setData(H.data,!1),L(Q,"afterAddSeries",{series:it}),W&&Q.redraw(K)})),it},q.prototype.addAxis=function(H,W,K,Q){return this.createAxis(W?"xAxis":"yAxis",{axis:H,redraw:K,animation:Q})},q.prototype.addColorAxis=function(H,W,K){return this.createAxis("colorAxis",{axis:H,redraw:W,animation:K})},q.prototype.createAxis=function(H,W){return H=new Y(this,N(W.axis,{index:this[H].length,isX:"xAxis"===H})),U(W.redraw,!0)&&this.redraw(W.animation),H},q.prototype.showLoading=function(H){var W=this,K=W.options,Q=K.loading,it=function(){nt&&w(nt,{left:W.plotLeft+"px",top:W.plotTop+"px",width:W.plotWidth+"px",height:W.plotHeight+"px"})},nt=W.loadingDiv,ht=W.loadingSpan;nt||(W.loadingDiv=nt=f("div",{className:"highcharts-loading highcharts-loading-hidden"},null,W.container)),ht||(W.loadingSpan=ht=f("span",{className:"highcharts-loading-inner"},null,nt),o(W,"redraw",it)),nt.className="highcharts-loading",v.setElementHTML(ht,U(H,K.lang.loading,"")),W.styledMode||(w(nt,P(Q.style,{zIndex:10})),w(ht,Q.labelStyle),W.loadingShown||(w(nt,{opacity:0,display:""}),S(nt,{opacity:Q.style.opacity||.5},{duration:Q.showDuration||0}))),W.loadingShown=!0,it()},q.prototype.hideLoading=function(){var H=this.options,W=this.loadingDiv;W&&(W.className="highcharts-loading highcharts-loading-hidden",this.styledMode||S(W,{opacity:0},{duration:H.loading.hideDuration||100,complete:function(){w(W,{display:"none"})}})),this.loadingShown=!1},q.prototype.update=function(H,W,K,Q){var ft,lt,it=this,nt={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},ht=H.isResponsiveOptions,pt=[];L(it,"update",{options:H}),ht||it.setResponsive(!1,!0),H=s(H,it.options),it.userOptions=N(it.userOptions,H);var dt=H.chart;if(dt){if(N(!0,it.options.chart,dt),"className"in dt&&it.setClassName(dt.className),"reflow"in dt&&it.setReflow(dt.reflow),"inverted"in dt||"polar"in dt||"type"in dt){it.propFromSeries();var yt=!0}"alignTicks"in dt&&(yt=!0),"events"in dt&&n(this,dt),G(dt,function(gt,mt){-1!==it.propsRequireUpdateSeries.indexOf("chart."+mt)&&(ft=!0),-1!==it.propsRequireDirtyBox.indexOf(mt)&&(it.isDirtyBox=!0),-1!==it.propsRequireReflow.indexOf(mt)&&(ht?it.isDirtyBox=!0:lt=!0)}),!it.styledMode&&dt.style&&it.renderer.setStyle(it.options.chart.style||{})}!it.styledMode&&H.colors&&(this.options.colors=H.colors),H.time&&(this.time===I&&(this.time=new y(H.time)),N(!0,it.options.time,H.time)),G(H,function(gt,mt){it[mt]&&"function"==typeof it[mt].update?it[mt].update(gt,!1):"function"==typeof it[nt[mt]]?it[nt[mt]](gt):"colors"!==mt&&-1===it.collectionsWithUpdate.indexOf(mt)&&N(!0,it.options[mt],H[mt]),"chart"!==mt&&-1!==it.propsRequireUpdateSeries.indexOf(mt)&&(ft=!0)}),this.collectionsWithUpdate.forEach(function(gt){if(H[gt]){var mt=[];it[gt].forEach(function(ut,Ct){ut.options.isInternal||mt.push(U(ut.options.index,Ct))}),ot(H[gt]).forEach(function(ut,Ct){var vt,xt=X(ut.id);xt&&(vt=it.get(ut.id)),!vt&&it[gt]&&(vt=it[gt][mt?mt[Ct]:Ct])&&xt&&X(vt.options.id)&&(vt=void 0),vt&&vt.coll===gt&&(vt.update(ut,!1),K&&(vt.touched=!0)),!vt&&K&&it.collectionsWithInit[gt]&&(it.collectionsWithInit[gt][0].apply(it,[ut].concat(it.collectionsWithInit[gt][1]||[]).concat([!1])).touched=!0)}),K&&it[gt].forEach(function(ut){ut.touched||ut.options.isInternal?delete ut.touched:pt.push(ut)})}}),pt.forEach(function(gt){gt.chart&&gt.remove&&gt.remove(!1)}),yt&&it.axes.forEach(function(gt){gt.update({},!1)}),ft&&it.getSeriesOrderByLinks().forEach(function(gt){gt.chart&&gt.update({},!1)},this),yt=dt&&dt.width,dt=dt&&(b(dt.height)?st(dt.height,yt||it.chartWidth):dt.height),lt||u(yt)&&yt!==it.chartWidth||u(dt)&&dt!==it.chartHeight?it.setSize(yt,dt,Q):U(W,!0)&&it.redraw(Q),L(it,"afterUpdate",{options:H,redraw:W,animation:Q})},q.prototype.setSubtitle=function(H,W){this.applyDescription("subtitle",H),this.layOutTitles(W)},q.prototype.setCaption=function(H,W){this.applyDescription("caption",H),this.layOutTitles(W)},q.prototype.showResetZoom=function(){function H(){W.zoomOut()}var W=this,K=E.lang,Q=W.options.chart.zooming.resetButton,it=Q.theme,nt="chart"===Q.relativeTo||"spacingBox"===Q.relativeTo?null:"scrollablePlotBox";L(this,"beforeShowResetZoom",null,function(){W.resetZoomButton=W.renderer.button(K.resetZoom,null,null,H,it).attr({align:Q.position.align,title:K.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(Q.position,!1,nt)}),L(this,"afterShowResetZoom")},q.prototype.zoomOut=function(){L(this,"selection",{resetSelection:!0},this.zoom)},q.prototype.zoom=function(H){var it,W=this,K=W.pointer,Q=!1;!H||H.resetSelection?(W.axes.forEach(function(ht){it=ht.zoom()}),K.initiated=!1):H.xAxis.concat(H.yAxis).forEach(function(ht){var pt=ht.axis;(K[pt.isXAxis?"zoomX":"zoomY"]&&X(K.mouseDownX)&&X(K.mouseDownY)&&W.isInsidePlot(K.mouseDownX-W.plotLeft,K.mouseDownY-W.plotTop,{axis:pt})||!X(W.inverted?K.mouseDownX:K.mouseDownY))&&(it=pt.zoom(ht.min,ht.max),pt.displayBtn&&(Q=!0))});var nt=W.resetZoomButton;Q&&!nt?W.showResetZoom():!Q&&B(nt)&&(W.resetZoomButton=nt.destroy()),it&&W.redraw(U(W.options.chart.animation,H&&H.animation,100>W.pointCount))},q.prototype.pan=function(H,W){var K=this,Q=K.hoverPoints;W="object"==typeof W?W:{enabled:W,type:"x"};var it=K.options.chart;it&&it.panning&&(it.panning=W);var ht,nt=W.type;L(this,"pan",{originalEvent:H},function(){Q&&Q.forEach(function(lt){lt.setState()});var pt=K.xAxis;"xy"===nt?pt=pt.concat(K.yAxis):"y"===nt&&(pt=K.yAxis);var ft={};pt.forEach(function(lt){if(lt.options.panningEnabled&&!lt.options.isInternal){var dt=lt.horiz,yt=H[dt?"chartX":"chartY"],gt=K[dt=dt?"mouseDownX":"mouseDownY"],mt=lt.minPointOffset||0,ut=lt.reversed&&!K.inverted||!lt.reversed&&K.inverted?-1:1,Ct=lt.getExtremes(),xt=lt.toValue(gt-yt,!0)+mt*ut,vt=lt.toValue(gt+lt.len-yt,!0)-(mt*ut||lt.isXAxis&&lt.pointRangePadding||0),Pt=vt<xt;ut=lt.hasVerticalPanning(),gt=Pt?vt:xt,xt=Pt?xt:vt;var kt=lt.panningState;!ut||lt.isXAxis||kt&&!kt.isDirty||lt.series.forEach(function(Mt){var wt=Mt.getProcessedData(!0);wt=Mt.getExtremes(wt.yData,!0),kt||(kt={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE}),u(wt.dataMin)&&u(wt.dataMax)&&(kt.startMin=Math.min(U(Mt.options.threshold,1/0),wt.dataMin,kt.startMin),kt.startMax=Math.max(U(Mt.options.threshold,-1/0),wt.dataMax,kt.startMax))}),ut=Math.min(U(kt&&kt.startMin,Ct.dataMin),mt?Ct.min:lt.toValue(lt.toPixels(Ct.min)-lt.minPixelPadding)),vt=Math.max(U(kt&&kt.startMax,Ct.dataMax),mt?Ct.max:lt.toValue(lt.toPixels(Ct.max)+lt.minPixelPadding)),lt.panningState=kt,lt.isOrdinal||(0<(mt=ut-gt)&&(xt+=mt,gt=ut),0<(mt=xt-vt)&&(xt=vt,gt-=mt),lt.series.length&&gt!==Ct.min&&xt!==Ct.max&&gt>=ut&&xt<=vt&&(lt.setExtremes(gt,xt,!1,!1,{trigger:"pan"}),!K.resetZoomButton&&gt!==ut&&xt!==vt&&nt.match("y")&&(K.showResetZoom(),lt.displayBtn=!1),ht=!0),ft[dt]=yt)}}),G(ft,function(lt,dt){K[dt]=lt}),ht&&K.redraw(!1),w(K.container,{cursor:"move"})})},q}(),P(_.prototype,{callbacks:[],collectionsWithInit:{xAxis:[_.prototype.addAxis,[!0]],yAxis:[_.prototype.addAxis,[!1]],series:[_.prototype.addSeries]},collectionsWithUpdate:["xAxis","yAxis","series"],propsRequireDirtyBox:"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow".split(" "),propsRequireReflow:"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft".split(" "),propsRequireUpdateSeries:"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip".split(" ")}),_}),ct(F,"Core/Legend/LegendSymbol.js",[F["Core/Utilities.js"]],function(_){var J,$,Y=_.extend,A=_.merge,et=_.pick;return($=J||(J={})).drawLineMarker=function(Z){var z=this.legendItem=this.legendItem||{},j=this.options,O=Z.symbolWidth,m=Z.symbolHeight,g=m/2,y=this.chart.renderer,C=z.group;Z=Z.baseline-Math.round(.3*Z.fontMetrics.b);var v={},S=j.marker,M=0;this.chart.styledMode||(v={"stroke-width":Math.min(j.lineWidth||0,24)},j.dashStyle?v.dashstyle=j.dashStyle:"square"!==j.linecap&&(v["stroke-linecap"]="round")),z.line=y.path().addClass("highcharts-graph").attr(v).add(C),v["stroke-linecap"]&&(M=Math.min(z.line.strokeWidth(),O)/2),z.line.attr({d:[["M",M,Z],["L",O-M,Z]]}),S&&!1!==S.enabled&&O&&(j=Math.min(et(S.radius,g),g),0===this.symbol.indexOf("url")&&(S=A(S,{width:m,height:m}),j=0),z.symbol=z=y.symbol(this.symbol,O/2-j,Z-j,2*j,2*j,Y({context:"legend"},S)).addClass("highcharts-point").add(C),z.isMarker=!0)},$.drawRectangle=function(Z,z){var j=Z.symbolHeight,O=Z.options.squareSymbol;(z=z.legendItem||{}).symbol=this.chart.renderer.rect(O?(Z.symbolWidth-j)/2:0,Z.baseline-j+1,O?j:Z.symbolWidth,j,et(Z.options.symbolRadius,j/2)).addClass("highcharts-point").attr({zIndex:3}).add(z.group)},J}),ct(F,"Core/Series/SeriesDefaults.js",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},events:{},marker:{enabledThreshold:2,lineColor:"#ffffff",lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},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(){return"number"!=typeof this.y?"":(0,this.series.chart.numberFormatter)(this.y,-1)},padding:5,style:{fontSize:"11px",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:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1e3,findNearestPointBy:"x"}}),ct(F,"Core/Series/Series.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Defaults.js"],F["Core/Foundation.js"],F["Core/Globals.js"],F["Core/Legend/LegendSymbol.js"],F["Core/Series/Point.js"],F["Core/Series/SeriesDefaults.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Renderer/SVG/SVGElement.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$,Z,z,j,O){var m=_.animObject,g=_.setAnimation,y=Y.defaultOptions,C=A.registerEventOptions,v=et.hasTouch,S=et.svg,M=et.win,T=z.seriesTypes,E=O.arrayMax,I=O.arrayMin,k=O.clamp,n=O.cleanRecursively,d=O.correctFloat,r=O.defined,c=O.erase,e=O.error,h=O.extend,t=O.find,o=O.fireEvent,l=O.getNestedProperty,s=O.isArray,f=O.isNumber,w=O.isString,X=O.merge,R=O.objectEach,i=O.pick,p=O.removeEvent,P=O.splat,D=O.syncTimeout;return _=function(){function L(){this.zones=this.yAxis=this.xAxis=this.userOptions=this.tooltipOptions=this.processedYData=this.processedXData=this.points=this.options=this.linkedSeries=this.index=this.eventsToUnbind=this.eventOptions=this.data=this.chart=this._i=void 0}return L.prototype.init=function(a,x){o(this,"init",{options:x});var u=this,B=a.series;this.eventsToUnbind=[],u.chart=a,u.options=u.setOptions(x),x=u.options,u.linkedSeries=[],u.bindAxes(),h(u,{name:x.name,state:"",visible:!1!==x.visible,selected:!0===x.selected}),C(this,x);var N,b=x.events;(b&&b.click||x.point&&x.point.events&&x.point.events.click||x.allowPointSelect)&&(a.runTrackerClick=!0),u.getColor(),u.getSymbol(),u.parallelArrays.forEach(function(G){u[G+"Data"]||(u[G+"Data"]=[])}),u.isCartesian&&(a.hasCartesianSeries=!0),B.length&&(N=B[B.length-1]),u._i=i(N&&N._i,-1)+1,u.opacity=u.options.opacity,a.orderSeries(this.insert(B)),x.dataSorting&&x.dataSorting.enabled?u.setDataSortingOptions():u.points||u.data||u.setData(x.data,!1),o(this,"afterInit")},L.prototype.is=function(a){return T[a]&&this instanceof T[a]},L.prototype.insert=function(a){var u,x=this.options.index;if(f(x)){for(u=a.length;u--;)if(x>=i(a[u].options.index,a[u]._i)){a.splice(u+1,0,this);break}-1===u&&a.unshift(this),u+=1}else a.push(this);return i(u,a.length-1)},L.prototype.bindAxes=function(){var B,a=this,x=a.options,u=a.chart;o(this,"bindAxes",null,function(){(a.axisTypes||[]).forEach(function(b){var N=0;u[b].forEach(function(G){B=G.options,(x[b]===N&&!B.isInternal||typeof x[b]<"u"&&x[b]===B.id||typeof x[b]>"u"&&0===B.index)&&(a.insert(G.series),a[b]=G,G.isDirty=!0),B.isInternal||N++}),a[b]||a.optionalAxis===b||e(18,!0,u)})}),o(this,"afterBindAxes")},L.prototype.updateParallelArrays=function(a,x){var u=a.series,B=arguments,b=f(x)?function(N){var G="y"===N&&u.toYData?u.toYData(a):a[N];u[N+"Data"][x]=G}:function(N){Array.prototype[x].apply(u[N+"Data"],Array.prototype.slice.call(B,2))};u.parallelArrays.forEach(b)},L.prototype.hasData=function(){return this.visible&&typeof this.dataMax<"u"&&typeof this.dataMin<"u"||this.visible&&this.yData&&0<this.yData.length},L.prototype.autoIncrement=function(a){var G,x=this.options,u=x.pointIntervalUnit,B=x.relativeXValue,b=this.chart.time,N=this.xIncrement;return N=i(N,x.pointStart,0),this.pointInterval=G=i(this.pointInterval,x.pointInterval,1),B&&f(a)&&(G*=a),u&&(x=new b.Date(N),"day"===u?b.set("Date",x,b.get("Date",x)+G):"month"===u?b.set("Month",x,b.get("Month",x)+G):"year"===u&&b.set("FullYear",x,b.get("FullYear",x)+G),G=x.getTime()-N),B&&f(a)?N+G:(this.xIncrement=N+G,N)},L.prototype.setDataSortingOptions=function(){var a=this.options;h(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),r(a.pointRange)||(a.pointRange=1)},L.prototype.setOptions=function(a){var x=this.chart,u=x.options,B=u.plotOptions,b=x.userOptions||{};a=X(a),x=x.styledMode;var N={plotOptions:B,userOptions:a};o(this,"setOptions",N);var G=N.plotOptions[this.type],U=b.plotOptions||{};return this.userOptions=N.userOptions,b=X(G,B.series,b.plotOptions&&b.plotOptions[this.type],a),this.tooltipOptions=X(y.tooltip,y.plotOptions.series&&y.plotOptions.series.tooltip,y.plotOptions[this.type].tooltip,u.tooltip.userOptions,B.series&&B.series.tooltip,B[this.type].tooltip,a.tooltip),this.stickyTracking=i(a.stickyTracking,U[this.type]&&U[this.type].stickyTracking,U.series&&U.series.stickyTracking,!(!this.tooltipOptions.shared||this.noSharedTooltip)||b.stickyTracking),null===G.marker&&delete b.marker,this.zoneAxis=b.zoneAxis,B=this.zones=(b.zones||[]).slice(),!b.negativeColor&&!b.negativeFillColor||b.zones||(u={value:b[this.zoneAxis+"Threshold"]||b.threshold||0,className:"highcharts-negative"},x||(u.color=b.negativeColor,u.fillColor=b.negativeFillColor),B.push(u)),B.length&&r(B[B.length-1].value)&&B.push(x?{}:{color:this.color,fillColor:this.fillColor}),o(this,"afterSetOptions",{options:b}),b},L.prototype.getName=function(){return i(this.options.name,"Series "+(this.index+1))},L.prototype.getCyclic=function(a,x,u){var B=this.chart,b=this.userOptions,N=a+"Index",G=a+"Counter",U=u?u.length:i(B.options.chart[a+"Count"],B[a+"Count"]);if(!x){var V=i(b[N],b["_"+N]);r(V)||(B.series.length||(B[G]=0),b["_"+N]=V=B[G]%U,B[G]+=1),u&&(x=u[V])}typeof V<"u"&&(this[N]=V),this[a]=x},L.prototype.getColor=function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color="#cccccc":this.getCyclic("color",this.options.color||y.plotOptions[this.type].color,this.chart.options.colors)},L.prototype.getPointsCollection=function(){return(this.hasGroupedData?this.points:this.data)||[]},L.prototype.getSymbol=function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},L.prototype.findPointIndex=function(a,x){var G,U,u=a.id,B=a.x,b=this.points,N=this.options.dataSorting;if(u)(N=this.chart.get(u))instanceof $&&(G=N);else if((this.linkedParent||this.enabledDataSorting||this.options.relativeXValue)&&(G=function(st){return!st.touched&&st.index===a.index},N&&N.matchByName?G=function(st){return!st.touched&&st.name===a.name}:this.options.relativeXValue&&(G=function(st){return!st.touched&&st.options.x===a.x}),!(G=t(b,G))))return;if(G){var V=G&&G.index;typeof V<"u"&&(U=!0)}return typeof V>"u"&&f(B)&&(V=this.xData.indexOf(B,x)),-1!==V&&typeof V<"u"&&this.cropped&&(V=V>=this.cropStart?V-this.cropStart:V),!U&&f(V)&&b[V]&&b[V].touched&&(V=void 0),V},L.prototype.updateData=function(a,x){var V,st,rt,u=this.options,B=u.dataSorting,b=this.points,N=[],G=this.requireSorting,U=a.length===b.length,ot=!0;if(this.xIncrement=null,a.forEach(function(tt,at){var q=r(tt)&&this.pointClass.prototype.optionsToObject.call({series:this},tt)||{};q.id||f(q.x)?(-1===(q=this.findPointIndex(q,rt))||typeof q>"u"?N.push(tt):b[q]&&tt!==u.data[q]?(b[q].update(tt,!1,null,!1),b[q].touched=!0,G&&(rt=q+1)):b[q]&&(b[q].touched=!0),(!U||at!==q||B&&B.enabled||this.hasDerivedData)&&(V=!0)):N.push(tt)},this),V)for(a=b.length;a--;)(st=b[a])&&!st.touched&&st.remove&&st.remove(!1,x);else!U||B&&B.enabled?ot=!1:(a.forEach(function(tt,at){tt!==b[at].y&&b[at].update&&b[at].update(tt,!1,null,!1)}),N.length=0);return b.forEach(function(tt){tt&&(tt.touched=!1)}),!!ot&&(N.forEach(function(tt){this.addPoint(tt,!1,null,null,!1)},this),null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=E(this.xData),this.autoIncrement()),!0)},L.prototype.setData=function(a,x,u,B){void 0===x&&(x=!0);var b=this,N=b.points,G=N&&N.length||0,U=b.options,V=b.chart,st=U.dataSorting,rt=b.xAxis,ot=U.turboThreshold,tt=this.xData,at=this.yData,q=b.pointArrayMap;q=q&&q.length;var W,H=U.keys,K=0,Q=1,it=null;if(!V.options.chart.allowMutatingData){U.data&&delete b.options.data,b.userOptions.data&&delete b.userOptions.data;var nt=X(!0,a)}if(nt=(a=nt||a||[]).length,st&&st.enabled&&(a=this.sortData(a)),V.options.chart.allowMutatingData&&!1!==B&&nt&&G&&!b.cropped&&!b.hasGroupedData&&b.visible&&!b.boosted&&(W=this.updateData(a,u)),!W){if(b.xIncrement=null,b.colorCounter=0,this.parallelArrays.forEach(function(ht){b[ht+"Data"].length=0}),ot&&nt>ot)if(it=b.getFirstValidPoint(a),f(it))for(u=0;u<nt;u++)tt[u]=this.autoIncrement(),at[u]=a[u];else if(s(it))if(q)if(it.length===q)for(u=0;u<nt;u++)tt[u]=this.autoIncrement(),at[u]=a[u];else for(u=0;u<nt;u++)tt[u]=(B=a[u])[0],at[u]=B.slice(1,q+1);else if(H&&(K=0<=(K=H.indexOf("x"))?K:0,Q=0<=(Q=H.indexOf("y"))?Q:1),1===it.length&&(Q=0),K===Q)for(u=0;u<nt;u++)tt[u]=this.autoIncrement(),at[u]=a[u][Q];else for(u=0;u<nt;u++)tt[u]=(B=a[u])[K],at[u]=B[Q];else e(12,!1,V);else for(u=0;u<nt;u++)typeof a[u]<"u"&&(b.pointClass.prototype.applyOptions.apply(B={series:b},[a[u]]),b.updateParallelArrays(B,u));for(at&&w(at[0])&&e(14,!0,V),b.data=[],b.options.data=b.userOptions.data=a,u=G;u--;)N[u]&&N[u].destroy&&N[u].destroy();rt&&(rt.minRange=rt.userMinRange),b.isDirty=V.isDirtyBox=!0,b.isDirtyData=!!N,u=!1}"point"===U.legendType&&(this.processData(),this.generatePoints()),x&&V.redraw(u)},L.prototype.sortData=function(a){var x=this,u=x.options.dataSorting.sortKey||"y",B=function(b,N){return r(N)&&b.pointClass.prototype.optionsToObject.call({series:b},N)||{}};return a.forEach(function(b,N){a[N]=B(x,b),a[N].index=N},this),a.concat().sort(function(b,N){return b=l(u,b),(N=l(u,N))<b?-1:N>b?1:0}).forEach(function(b,N){b.x=N},this),x.linkedSeries&&x.linkedSeries.forEach(function(b){var N=b.options,G=N.data;N.dataSorting&&N.dataSorting.enabled||!G||(G.forEach(function(U,V){G[V]=B(b,U),a[V]&&(G[V].x=a[V].x,G[V].index=V)}),b.setData(G,!1))}),a},L.prototype.getProcessedData=function(a){var x=this.xAxis,u=this.options,B=u.cropThreshold,b=a||this.getExtremesFromAll||u.getExtremesFromAll,N=this.isCartesian;a=x&&x.val2lin,u=!(!x||!x.logarithmic);var G=0,U=this.xData,V=this.yData,st=this.requireSorting,rt=!1,ot=U.length;if(x){var tt=(rt=x.getExtremes()).min,at=rt.max;rt=!(!x.categories||x.names.length)}if(N&&this.sorted&&!b&&(!B||ot>B||this.forceCrop))if(U[ot-1]<tt||U[0]>at)U=[],V=[];else if(this.yData&&(U[0]<tt||U[ot-1]>at)){var q=this.cropData(this.xData,this.yData,tt,at);U=q.xData,V=q.yData,G=q.start,q=!0}for(B=U.length||1;--B;)if(0<(x=u?a(U[B])-a(U[B-1]):U[B]-U[B-1])&&(typeof H>"u"||x<H))var H=x;else 0>x&&st&&!rt&&(e(15,!1,this.chart),st=!1);return{xData:U,yData:V,cropped:q,cropStart:G,closestPointRange:H}},L.prototype.processData=function(a){if(this.isCartesian&&!this.isDirty&&!this.xAxis.isDirty&&!this.yAxis.isDirty&&!a)return!1;a=this.getProcessedData(),this.cropped=a.cropped,this.cropStart=a.cropStart,this.processedXData=a.xData,this.processedYData=a.yData,this.closestPointRange=this.basePointRange=a.closestPointRange,o(this,"afterProcessData")},L.prototype.cropData=function(a,x,u,B,b){var G,N=a.length,U=0,V=N;for(b=i(b,this.cropShoulder),G=0;G<N;G++)if(a[G]>=u){U=Math.max(0,G-b);break}for(u=G;u<N;u++)if(a[u]>B){V=u+b;break}return{xData:a.slice(U,V),yData:x.slice(U,V),start:U,end:V}},L.prototype.generatePoints=function(){var a=this.options,x=this.processedData||a.data,u=this.processedXData,B=this.processedYData,b=this.pointClass,N=u.length,G=this.cropStart||0,U=this.hasGroupedData,V=a.keys,st=[];a=a.dataGrouping&&a.dataGrouping.groupAll?G:0;var rt,ot,tt=this.data;if(!tt&&!U){var at=[];at.length=x.length,tt=this.data=at}for(V&&U&&(this.options.keys=!1),ot=0;ot<N;ot++){if(at=G+ot,U){var q=(new b).init(this,[u[ot]].concat(P(B[ot])));q.dataGroup=this.groupMap[a+ot],q.dataGroup.options&&(q.options=q.dataGroup.options,h(q,q.dataGroup.options),delete q.dataLabels)}else(q=tt[at])||typeof x[at]>"u"||(tt[at]=q=(new b).init(this,x[at],u[ot]));q&&(q.index=U?a+ot:at,st[ot]=q)}if(this.options.keys=V,tt&&(N!==(rt=tt.length)||U))for(ot=0;ot<rt;ot++)ot!==G||U||(ot+=N),tt[ot]&&(tt[ot].destroyElements(),tt[ot].plotX=void 0);this.data=tt,this.points=st,o(this,"afterGeneratePoints")},L.prototype.getXExtremes=function(a){return{min:I(a),max:E(a)}},L.prototype.getExtremes=function(a,x){var u=this.xAxis,B=this.yAxis,b=this.processedXData||this.xData,N=[],G=this.requireSorting?this.cropShoulder:0;B=!!B&&B.positiveValuesOnly;var U,V=0,st=0,rt=0,ot=(a=a||this.stackedYData||this.processedYData||[]).length;if(u){var tt=u.getExtremes();V=tt.min,st=tt.max}for(U=0;U<ot;U++){var at=b[U],q=(f(tt=a[U])||s(tt))&&(tt.length||0<tt||!B);if(at=x||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!u||(b[U+G]||at)>=V&&(b[U-G]||at)<=st,q&&at)if(q=tt.length)for(;q--;)f(tt[q])&&(N[rt++]=tt[q]);else N[rt++]=tt}return a={activeYData:N,dataMin:I(N),dataMax:E(N)},o(this,"afterGetExtremes",{dataExtremes:a}),a},L.prototype.applyExtremes=function(){var a=this.getExtremes();return this.dataMin=a.dataMin,this.dataMax=a.dataMax,a},L.prototype.getFirstValidPoint=function(a){for(var x=a.length,u=0,B=null;null===B&&u<x;)B=a[u],u++;return B},L.prototype.translate=function(){this.processedXData||this.processData(),this.generatePoints();var at,q,a=this.options,x=a.stacking,u=this.xAxis,B=u.categories,b=this.enabledDataSorting,N=this.yAxis,G=this.points,U=G.length,V=this.pointPlacementToXValue(),st=!!V,rt=a.threshold,ot=a.startFromThreshold?rt:0,tt=this.zoneAxis||"y",H=Number.MAX_VALUE;for(at=0;at<U;at++){var W=G[at],K=W.x,Q=void 0,it=void 0,nt=W.y,ht=W.low,pt=x&&N.stacking&&N.stacking.stacks[(this.negStacks&&nt<(ot?0:rt)?"-":"")+this.stackKey];if((N.positiveValuesOnly&&!N.validatePositiveValue(nt)||u.positiveValuesOnly&&!u.validatePositiveValue(K))&&(W.isNull=!0),W.plotX=q=d(k(u.translate(K,0,0,0,1,V,"flags"===this.type),-1e5,1e5)),x&&this.visible&&pt&&pt[K]){var ft=this.getStackIndicator(ft,K,this.index);!W.isNull&&ft.key&&(it=(Q=pt[K]).points[ft.key]),Q&&s(it)&&(nt=it[1],(ht=it[0])===ot&&ft.key===pt[K].base&&(ht=i(f(rt)?rt:N.min)),N.positiveValuesOnly&&r(ht)&&0>=ht&&(ht=void 0),W.total=W.stackTotal=i(Q.total),W.percentage=r(W.y)&&Q.total?W.y/Q.total*100:void 0,W.stackY=nt,this.irregularWidths||Q.setOffset(this.pointXOffset||0,this.barW||0,void 0,void 0,void 0,this.xAxis))}if(W.yBottom=r(ht)?k(N.translate(ht,0,1,0,1),-1e5,1e5):void 0,this.dataModify&&(nt=this.dataModify.modifyValue(nt,at)),W.plotY=void 0,f(nt)&&typeof(Q=N.translate(nt,!1,!0,!1,!0))<"u"&&(W.plotY=k(Q,-1e5,1e5)),W.isInside=this.isPointInside(W),W.clientX=st?d(u.translate(K,0,0,0,1,V)):q,W.negative=W[tt]<(a[tt+"Threshold"]||rt||0),W.category=i(B&&B[W.x],W.x),!W.isNull&&!1!==W.visible){typeof lt<"u"&&(H=Math.min(H,Math.abs(q-lt)));var lt=q}W.zone=this.zones.length?W.getZone():void 0,!W.graphic&&this.group&&b&&(W.isNew=!0)}this.closestPointRangePx=H,o(this,"afterTranslate")},L.prototype.getValidPoints=function(a,x,u){var B=this.chart;return(a||this.points||[]).filter(function(b){return!(x&&!B.isInsidePlot(b.plotX,b.plotY,{inverted:B.inverted}))&&!1!==b.visible&&(u||!b.isNull)})},L.prototype.getClipBox=function(){var a=this.chart,x=this.xAxis,u=this.yAxis,B=X(a.clipBox);return x&&x.len!==a.plotSizeX&&(B.width=x.len),u&&u.len!==a.plotSizeY&&(B.height=u.len),B},L.prototype.getSharedClipKey=function(){return this.sharedClipKey=(this.options.xAxis||0)+","+(this.options.yAxis||0)},L.prototype.setClip=function(){var a=this.chart,x=this.group,u=this.markerGroup,B=a.sharedClips;a=a.renderer;var b=this.getClipBox(),N=this.getSharedClipKey(),G=B[N];G?G.animate(b):B[N]=G=a.clipRect(b),x&&x.clip(!1===this.options.clip?void 0:G),u&&u.clip()},L.prototype.animate=function(a){var x=this.chart,u=this.group,B=this.markerGroup,b=x.inverted,N=m(this.options.animation),G=[this.getSharedClipKey(),N.duration,N.easing,N.defer].join(),U=x.sharedClips[G],V=x.sharedClips[G+"m"];if(a&&u)N=this.getClipBox(),U?U.attr("height",N.height):(N.width=0,b&&(N.x=x.plotHeight),U=x.renderer.clipRect(N),x.sharedClips[G]=U,V=x.renderer.clipRect({x:-99,y:-99,width:b?x.plotWidth+199:99,height:b?99:x.plotHeight+199}),x.sharedClips[G+"m"]=V),u.clip(U),B&&B.clip(V);else if(U&&!U.hasClass("highcharts-animating")){x=this.getClipBox();var st=N.step;B&&B.element.childNodes.length&&(N.step=function(rt,ot){st&&st.apply(ot,arguments),"width"===ot.prop&&V&&V.element&&V.attr(b?"height":"width",rt+99)}),U.addClass("highcharts-animating").animate(x,N)}},L.prototype.afterAnimate=function(){var a=this;this.setClip(),R(this.chart.sharedClips,function(x,u,B){x&&!a.chart.container.querySelector('[clip-path="url(#'.concat(x.id,')"]'))&&(x.destroy(),delete B[u])}),this.finishedAnimating=!0,o(this,"afterAnimate")},L.prototype.drawPoints=function(a){void 0===a&&(a=this.points);var V,st,x=this.chart,u=x.styledMode,B=this.colorAxis,b=this.options.marker,N=this[this.specialGroup||"markerGroup"],G=this.xAxis,U=i(b.enabled,!(G&&!G.isRadial)||null,this.closestPointRangePx>=b.enabledThreshold*b.radius);if(!1!==b.enabled||this._hasPointMarkers)for(V=0;V<a.length;V++){var rt=a[V],ot=(st=rt.graphic)?"animate":"attr",tt=rt.marker||{},at=!!rt.marker;if((U&&typeof tt.enabled>"u"||tt.enabled)&&!rt.isNull&&!1!==rt.visible){var q=i(tt.symbol,this.symbol,"rect"),H=this.markerAttribs(rt,rt.selected&&"select");this.enabledDataSorting&&(rt.startXPos=G.reversed?-(H.width||0):G.width);var W=!1!==rt.isInside;!st&&W&&(0<(H.width||0)||rt.hasImage)&&(rt.graphic=st=x.renderer.symbol(q,H.x,H.y,H.width,H.height,at?tt:b).add(N),this.enabledDataSorting&&x.hasRendered&&(st.attr({x:rt.startXPos}),ot="animate")),st&&"animate"===ot&&st[W?"show":"hide"](W).animate(H),st&&(tt=this.pointAttribs(rt,u||!rt.selected?void 0:"select"),u?B&&st.css({fill:tt.fill}):st[ot](tt)),st&&st.addClass(rt.getClassName(),!0)}else st&&(rt.graphic=st.destroy())}},L.prototype.markerAttribs=function(a,x){var u=this.options,B=u.marker,b=a.marker||{},N=b.symbol||B.symbol,G={},U=i(b.radius,B&&B.radius);return x&&(B=B.states[x],U=i((x=b.states&&b.states[x])&&x.radius,B&&B.radius,U&&U+(B&&B.radiusPlus||0))),a.hasImage=N&&0===N.indexOf("url"),a.hasImage&&(U=0),a=a.pos(),f(U)&&a&&(G.x=a[0]-U,G.y=a[1]-U,u.crisp&&(G.x=Math.floor(G.x))),U&&(G.width=G.height=2*U),G},L.prototype.pointAttribs=function(a,x){var u=this.options.marker,B=a&&a.options,b=B&&B.marker||{},N=B&&B.color,G=a&&a.color,U=a&&a.zone&&a.zone.color,V=this.color;return a=i(b.lineWidth,u.lineWidth),B=1,V=N||U||G||V,N=b.fillColor||u.fillColor||V,G=b.lineColor||u.lineColor||V,u=u.states[x=x||"normal"]||{},a=i((x=b.states&&b.states[x]||{}).lineWidth,u.lineWidth,a+i(x.lineWidthPlus,u.lineWidthPlus,0)),{stroke:G=x.lineColor||u.lineColor||G,"stroke-width":a,fill:N=x.fillColor||u.fillColor||N,opacity:B=i(x.opacity,u.opacity,B)}},L.prototype.destroy=function(a){var G,U,V,x=this,u=x.chart,B=/AppleWebKit\/533/.test(M.navigator.userAgent),b=x.data||[];for(o(x,"destroy",{keepEventsForUpdate:a}),this.removeEvents(a),(x.axisTypes||[]).forEach(function(st){(V=x[st])&&V.series&&(c(V.series,x),V.isDirty=V.forceRedraw=!0)}),x.legendItem&&x.chart.legend.destroyItem(x),G=b.length;G--;)(U=b[G])&&U.destroy&&U.destroy();x.clips&&x.clips.forEach(function(st){return st.destroy()}),O.clearTimeout(x.animationTimeout),R(x,function(st,rt){st instanceof j&&!st.survive&&st[B&&"group"===rt?"hide":"destroy"]()}),u.hoverSeries===x&&(u.hoverSeries=void 0),c(u.series,x),u.orderSeries(),R(x,function(st,rt){a&&"hcEvents"===rt||delete x[rt]})},L.prototype.applyZones=function(){var rt,ot,tt,at,q,H,W,K,a=this,x=this.chart,u=x.renderer,B=this.zones,b=this.clips||[],N=this.graph,G=this.area,U=Math.max(x.plotWidth,x.plotHeight),V=this[(this.zoneAxis||"y")+"Axis"],st=x.inverted,Q=!1;if(B.length&&(N||G)&&V&&typeof V.min<"u"){var it=V.reversed,nt=V.horiz;N&&!this.showLine&&N.hide(),G&&G.hide();var ht=V.getExtremes();B.forEach(function(pt,ft){rt=it?nt?x.plotWidth:0:nt?0:V.toPixels(ht.min)||0,rt=k(i(ot,rt),0,U),ot=k(Math.round(V.toPixels(i(pt.value,ht.max),!0)||0),0,U),Q&&(rt=ot=V.toPixels(ht.max)),at=Math.abs(rt-ot),q=Math.min(rt,ot),H=Math.max(rt,ot),V.isXAxis?(tt={x:st?H:q,y:0,width:at,height:U},nt||(tt.x=x.plotHeight-tt.x)):(tt={x:0,y:st?H:q,width:U,height:at},nt&&(tt.y=x.plotWidth-tt.y)),st&&u.isVML&&(tt=V.isXAxis?{x:0,y:it?q:H,height:tt.width,width:x.chartWidth}:{x:tt.y-x.plotLeft-x.spacingBox.x,y:0,width:tt.height,height:x.chartHeight}),b[ft]?b[ft].animate(tt):b[ft]=u.clipRect(tt),W=a["zone-area-"+ft],K=a["zone-graph-"+ft],N&&K&&K.clip(b[ft]),G&&W&&W.clip(b[ft]),Q=pt.value>ht.max,a.resetZones&&0===ot&&(ot=void 0)}),this.clips=b}else a.visible&&(N&&N.show(),G&&G.show())},L.prototype.plotGroup=function(a,x,u,B,b){var N=this[a],G=!N;return u={visibility:u,zIndex:B||.1},typeof this.opacity>"u"||this.chart.styledMode||"inactive"===this.state||(u.opacity=this.opacity),G&&(this[a]=N=this.chart.renderer.g().add(b)),N.addClass("highcharts-"+x+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(r(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(N.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),N.attr(u)[G?"attr":"animate"](this.getPlotBox(x)),N},L.prototype.getPlotBox=function(a){var x=this.xAxis,u=this.yAxis,B=this.chart;return a=B.inverted&&!B.polar&&x&&!1!==this.invertible&&"series"===a,B.inverted&&(x=u,u=this.xAxis),{translateX:x?x.left:B.plotLeft,translateY:u?u.top:B.plotTop,rotation:a?90:0,rotationOriginX:a?(x.len-u.len)/2:0,rotationOriginY:a?(x.len+u.len)/2:0,scaleX:a?-1:1,scaleY:1}},L.prototype.removeEvents=function(a){a||p(this),this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(x){x()}),this.eventsToUnbind.length=0)},L.prototype.render=function(){var a=this,x=a.chart,u=a.options,B=m(u.animation),b=a.visible?"inherit":"hidden",N=u.zIndex,G=a.hasRendered,U=x.seriesGroup;x=!a.finishedAnimating&&x.renderer.isSVG?B.duration:0,o(this,"render"),a.plotGroup("group","series",b,N,U),a.markerGroup=a.plotGroup("markerGroup","markers",b,N,U),!1!==u.clip&&a.setClip(),a.animate&&x&&a.animate(!0),a.drawGraph&&(a.drawGraph(),a.applyZones()),a.visible&&a.drawPoints(),a.drawDataLabels&&a.drawDataLabels(),a.redrawPoints&&a.redrawPoints(),a.drawTracker&&!1!==a.options.enableMouseTracking&&a.drawTracker(),a.animate&&x&&a.animate(),G||(x&&B.defer&&(x+=B.defer),a.animationTimeout=D(function(){a.afterAnimate()},x||0)),a.isDirty=!1,a.hasRendered=!0,o(a,"afterRender")},L.prototype.redraw=function(){var a=this.isDirty||this.isDirtyData;this.translate(),this.render(),a&&delete this.kdTree},L.prototype.searchPoint=function(a,x){var u=this.xAxis,B=this.yAxis,b=this.chart.inverted;return this.searchKDTree({clientX:b?u.len-a.chartY+u.pos:a.chartX-u.pos,plotY:b?B.len-a.chartX+B.pos:a.chartY-B.pos},x,a)},L.prototype.buildKDTree=function(a){function x(b,N,G){var U=b&&b.length;if(U){var V=u.kdAxisArray[N%G];return b.sort(function(st,rt){return st[V]-rt[V]}),{point:b[U=Math.floor(U/2)],left:x(b.slice(0,U),N+1,G),right:x(b.slice(U+1),N+1,G)}}}this.buildingKdTree=!0;var u=this,B=-1<u.options.findNearestPointBy.indexOf("y")?2:1;delete u.kdTree,D(function(){u.kdTree=x(u.getValidPoints(null,!u.directTouch),B,B),u.buildingKdTree=!1},u.options.kdNow||a&&"touchstart"===a.type?0:1)},L.prototype.searchKDTree=function(a,x,u){var b=this,N=this.kdAxisArray[0],G=this.kdAxisArray[1],U=x?"distX":"dist";if(x=-1<b.options.findNearestPointBy.indexOf("y")?2:1,this.kdTree||this.buildingKdTree||this.buildKDTree(u),this.kdTree)return function B(V,st,rt,ot){var tt=st.point,at=b.kdAxisArray[rt%ot],q=tt,H=r(V[N])&&r(tt[N])?Math.pow(V[N]-tt[N],2):null,W=r(V[G])&&r(tt[G])?Math.pow(V[G]-tt[G],2):null;return tt.dist=r(W=(H||0)+(W||0))?Math.sqrt(W):Number.MAX_VALUE,tt.distX=r(H)?Math.sqrt(H):Number.MAX_VALUE,H=0>(at=V[at]-tt[at])?"right":"left",st[W=0>at?"left":"right"]&&(q=(W=B(V,st[W],rt+1,ot))[U]<q[U]?W:tt),st[H]&&Math.sqrt(at*at)<q[U]&&(q=(V=B(V,st[H],rt+1,ot))[U]<q[U]?V:q),q}(a,this.kdTree,x,x)},L.prototype.pointPlacementToXValue=function(){var a=this.options,x=a.pointRange,u=this.xAxis;return"between"===(a=a.pointPlacement)&&(a=u.reversed?-.5:.5),f(a)?a*(x||u.pointRange):0},L.prototype.isPointInside=function(a){var x=this.chart,u=this.xAxis,B=this.yAxis;return typeof a.plotY<"u"&&typeof a.plotX<"u"&&0<=a.plotY&&a.plotY<=(B?B.len:x.plotHeight)&&0<=a.plotX&&a.plotX<=(u?u.len:x.plotWidth)},L.prototype.drawTracker=function(){var a=this,x=a.options,u=x.trackByArea,B=[].concat(u?a.areaPath:a.graphPath),b=a.chart,N=b.pointer,G=b.renderer,U=b.options.tooltip.snap,V=a.tracker,st=function(ot){b.hoverSeries!==a&&a.onMouseOver()},rt="rgba(192,192,192,"+(S?1e-4:.002)+")";V?V.attr({d:B}):a.graph&&(a.tracker=G.path(B).attr({visibility:a.visible?"inherit":"hidden",zIndex:2}).addClass(u?"highcharts-tracker-area":"highcharts-tracker-line").add(a.group),b.styledMode||a.tracker.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:rt,fill:u?rt:"none","stroke-width":a.graph.strokeWidth()+(u?0:2*U)}),[a.tracker,a.markerGroup,a.dataLabelsGroup].forEach(function(ot){ot&&(ot.addClass("highcharts-tracker").on("mouseover",st).on("mouseout",function(tt){N.onTrackerMouseOut(tt)}),x.cursor&&!b.styledMode&&ot.css({cursor:x.cursor}),v)&&ot.on("touchstart",st)})),o(this,"afterDrawTracker")},L.prototype.addPoint=function(a,x,u,B,b){var N=this.options,G=this.data,U=this.chart,V=this.xAxis;V=V&&V.hasNames&&V.names;var ot,st=N.data,rt=this.xData;x=i(x,!0);var tt={series:this};this.pointClass.prototype.applyOptions.apply(tt,[a]);var at=tt.x,q=rt.length;if(this.requireSorting&&at<rt[q-1])for(ot=!0;q&&rt[q-1]>at;)q--;this.updateParallelArrays(tt,"splice",q,0,0),this.updateParallelArrays(tt,q),V&&tt.name&&(V[at]=tt.name),st.splice(q,0,a),(ot||this.processedData)&&(this.data.splice(q,0,null),this.processData()),"point"===N.legendType&&this.generatePoints(),u&&(G[0]&&G[0].remove?G[0].remove(!1):(G.shift(),this.updateParallelArrays(tt,"shift"),st.shift())),!1!==b&&o(this,"addPoint",{point:tt}),this.isDirtyData=this.isDirty=!0,x&&U.redraw(B)},L.prototype.removePoint=function(a,x,u){var B=this,b=B.data,N=b[a],G=B.points,U=B.chart,V=function(){G&&G.length===b.length&&G.splice(a,1),b.splice(a,1),B.options.data.splice(a,1),B.updateParallelArrays(N||{series:B},"splice",a,1),N&&N.destroy(),B.isDirty=!0,B.isDirtyData=!0,x&&U.redraw()};g(u,U),x=i(x,!0),N?N.firePointEvent("remove",null,V):V()},L.prototype.remove=function(a,x,u,B){function b(){N.destroy(B),G.isDirtyLegend=G.isDirtyBox=!0,G.linkSeries(),i(a,!0)&&G.redraw(x)}var N=this,G=N.chart;!1!==u?o(N,"remove",null,b):b()},L.prototype.update=function(a,x){a=n(a,this.userOptions),o(this,"update",{options:a});var u=this,B=u.chart,b=u.userOptions,N=u.initialType||u.type,G=B.options.plotOptions,U=T[N].prototype,V=u.finishedAnimating&&{animation:!1},st={},rt=["eventOptions","navigatorSeries","baseSeries"],ot=a.type||b.type||B.options.chart.type,tt=!(this.hasDerivedData||ot&&ot!==this.type||typeof a.pointStart<"u"||typeof a.pointInterval<"u"||typeof a.relativeXValue<"u"||a.joinBy||a.mapData||u.hasOptionChanged("dataGrouping")||u.hasOptionChanged("pointStart")||u.hasOptionChanged("pointInterval")||u.hasOptionChanged("pointIntervalUnit")||u.hasOptionChanged("keys"));if(ot=ot||N,tt&&(rt.push("data","isDirtyData","points","processedData","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","clips","nodes","layout","level","mapMap","mapData","minY","maxY","minX","maxX"),!1!==a.visible&&rt.push("area","graph"),u.parallelArrays.forEach(function(q){rt.push(q+"Data")}),a.data&&(a.dataSorting&&h(u.options.dataSorting,a.dataSorting),this.setData(a.data,!1))),a=X(b,V,{index:typeof b.index>"u"?u.index:b.index,pointStart:i(G&&G.series&&G.series.pointStart,b.pointStart,u.xData[0])},!tt&&{data:u.options.data},a),tt&&a.data&&(a.data=u.options.data),(rt=["group","markerGroup","dataLabelsGroup","transformGroup","shadowGroup"].concat(rt)).forEach(function(q){rt[q]=u[q],delete u[q]}),G=!1,T[ot]){if(G=ot!==u.type,u.remove(!1,!1,!1,!0),G)if(Object.setPrototypeOf)Object.setPrototypeOf(u,T[ot].prototype);else{for(at in V=Object.hasOwnProperty.call(u,"hcEvents")&&u.hcEvents,U)u[at]=void 0;h(u,T[ot].prototype),V?u.hcEvents=V:delete u.hcEvents}}else e(17,!0,B,{missingModuleFor:ot});if(rt.forEach(function(q){u[q]=rt[q]}),u.init(B,a),tt&&this.points){if(!1===(a=u.options).visible)st.graphic=1,st.dataLabel=1;else if(!u._hasPointLabels){var at=a.dataLabels;b=b.marker||{},!(U=a.marker)||!1!==U.enabled&&b.symbol===U.symbol&&b.height===U.height&&b.width===U.width||(st.graphic=1),at&&!1===at.enabled&&(st.dataLabel=1)}for(b=0,U=this.points;b<U.length;b++)(at=U[b])&&at.series&&(at.resolveColor(),Object.keys(st).length&&at.destroyElements(st),!1===a.showInLegend&&at.legendItem&&B.legend.destroyItem(at))}u.initialType=N,B.linkSeries(),G&&u.linkedSeries.length&&(u.isDirtyData=!0),o(this,"afterUpdate"),i(x,!0)&&B.redraw(!!tt&&void 0)},L.prototype.setName=function(a){this.name=this.options.name=this.userOptions.name=a,this.chart.isDirtyLegend=!0},L.prototype.hasOptionChanged=function(a){var x=this.options[a],u=this.chart.options.plotOptions,B=this.userOptions[a];return B?x!==B:x!==i(u&&u[this.type]&&u[this.type][a],u&&u.series&&u.series[a],x)},L.prototype.onMouseOver=function(){var a=this.chart,x=a.hoverSeries;a.pointer.setHoverChartIndex(),x&&x!==this&&x.onMouseOut(),this.options.events.mouseOver&&o(this,"mouseOver"),this.setState("hover"),a.hoverSeries=this},L.prototype.onMouseOut=function(){var a=this.options,x=this.chart,u=x.tooltip,B=x.hoverPoint;x.hoverSeries=null,B&&B.onMouseOut(),this&&a.events.mouseOut&&o(this,"mouseOut"),!u||this.stickyTracking||u.shared&&!this.noSharedTooltip||u.hide(),x.series.forEach(function(b){b.setState("",!0)})},L.prototype.setState=function(a,x){var u=this,B=u.options,b=u.graph,N=B.inactiveOtherPoints,G=B.states,U=i(G[a||"normal"]&&G[a||"normal"].animation,u.chart.options.chart.animation),V=B.lineWidth,st=0,rt=B.opacity;if(u.state!==(a=a||"")&&([u.group,u.markerGroup,u.dataLabelsGroup].forEach(function(ot){ot&&(u.state&&ot.removeClass("highcharts-series-"+u.state),a&&ot.addClass("highcharts-series-"+a))}),u.state=a,!u.chart.styledMode)){if(G[a]&&!1===G[a].enabled)return;if(a&&(V=G[a].lineWidth||V+(G[a].lineWidthPlus||0),rt=i(G[a].opacity,rt)),b&&!b.dashstyle&&f(V))for(b.animate(B={"stroke-width":V},U);u["zone-graph-"+st];)u["zone-graph-"+st].animate(B,U),st+=1;N||[u.group,u.markerGroup,u.dataLabelsGroup,u.labelBySeries].forEach(function(ot){ot&&ot.animate({opacity:rt},U)})}x&&N&&u.points&&u.setAllPointsToState(a||void 0)},L.prototype.setAllPointsToState=function(a){this.points.forEach(function(x){x.setState&&x.setState(a)})},L.prototype.setVisible=function(a,x){var u=this,B=u.chart,b=B.options.chart.ignoreHiddenSeries,G=(u.visible=a=u.options.visible=u.userOptions.visible=typeof a>"u"?!u.visible:a)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(U){u[U]&&u[U][G]()}),(B.hoverSeries===u||(B.hoverPoint&&B.hoverPoint.series)===u)&&u.onMouseOut(),u.legendItem&&B.legend.colorizeItem(u,a),u.isDirty=!0,u.options.stacking&&B.series.forEach(function(U){U.options.stacking&&U.visible&&(U.isDirty=!0)}),u.linkedSeries.forEach(function(U){U.setVisible(a,!1)}),b&&(B.isDirtyBox=!0),o(u,G),!1!==x&&B.redraw()},L.prototype.show=function(){this.setVisible(!0)},L.prototype.hide=function(){this.setVisible(!1)},L.prototype.select=function(a){this.selected=a=this.options.selected=typeof a>"u"?!this.selected:a,this.checkbox&&(this.checkbox.checked=a),o(this,a?"select":"unselect")},L.prototype.shouldShowTooltip=function(a,x,u){return void 0===u&&(u={}),u.series=this,u.visiblePlotOnly=!0,this.chart.isInsidePlot(a,x,u)},L.defaultOptions=Z,L.types=z.seriesTypes,L.registerType=z.registerSeriesType,L}(),h(_.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,drawLegendSymbol:J.drawLineMarker,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:$,requireSorting:!0,sorted:!0}),z.series=_,_}),ct(F,"Extensions/ScrollablePlotArea.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Axis/Axis.js"],F["Core/Chart/Chart.js"],F["Core/Series/Series.js"],F["Core/Renderer/RendererRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$){var Z=_.stop,z=$.addEvent,j=$.createElement,O=$.defined,m=$.merge,g=$.pick;z(A,"afterSetChartSize",function(y){var C=this.options.chart.scrollablePlotArea,v=C&&C.minWidth;if(C=C&&C.minHeight,!this.renderer.forExport){if(v){if(this.scrollablePixelsX=v=Math.max(0,v-this.chartWidth)){this.scrollablePlotBox=this.renderer.scrollablePlotBox=m(this.plotBox),this.plotBox.width=this.plotWidth+=v,this.inverted?this.clipBox.height+=v:this.clipBox.width+=v;var S={1:{name:"right",value:v}}}}else C&&(this.scrollablePixelsY=v=Math.max(0,C-this.chartHeight),O(v)&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=m(this.plotBox),this.plotBox.height=this.plotHeight+=v,this.inverted?this.clipBox.width+=v:this.clipBox.height+=v,S={2:{name:"bottom",value:v}}));S&&!y.skipAxes&&this.axes.forEach(function(M){S[M.side]?M.getPlotLinePath=function(){var T=S[M.side].name,E=this[T];this[T]=E-S[M.side].value;var I=Y.prototype.getPlotLinePath.apply(this,arguments);return this[T]=E,I}:(M.setAxisSize(),M.setAxisTranslation())})}}),z(A,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()}),A.prototype.setUpScrolling=function(){var v,y=this,C={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(C.overflowX="auto"),this.scrollablePixelsY&&(C.overflowY="auto"),this.scrollingParent=j("div",{className:"highcharts-scrolling-parent"},{position:"relative"},this.renderTo),this.scrollingContainer=j("div",{className:"highcharts-scrolling"},C,this.scrollingParent),z(this.scrollingContainer,"scroll",function(){y.pointer&&(delete y.pointer.chartPosition,y.hoverPoint&&(v=y.hoverPoint),y.pointer.runPointActions(void 0,v,!0))}),this.innerContainer=j("div",{className:"highcharts-inner-container"},null,this.scrollingContainer),this.innerContainer.appendChild(this.container),this.setUpScrolling=null},A.prototype.moveFixedElements=function(){var S,y=this.container,C=this.fixedRenderer,v=".highcharts-breadcrumbs-group .highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-legend-checkbox .highcharts-navigator-series .highcharts-navigator-xaxis .highcharts-navigator-yaxis .highcharts-navigator .highcharts-reset-zoom .highcharts-drillup-button .highcharts-scrollbar .highcharts-subtitle .highcharts-title".split(" ");this.scrollablePixelsX&&!this.inverted?S=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted||this.scrollablePixelsY&&!this.inverted?S=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(S=".highcharts-yaxis"),S&&v.push(S+":not(.highcharts-radial-axis)",S+"-labels:not(.highcharts-radial-axis-labels)"),v.forEach(function(M){[].forEach.call(y.querySelectorAll(M),function(T){(T.namespaceURI===C.SVG_NS?C.box:C.box.parentNode).appendChild(T),T.style.pointerEvents="auto"})})},A.prototype.applyFixed=function(){var y=!this.fixedDiv,C=this.options.chart,v=C.scrollablePlotArea,S=J.getRendererType();y?(this.fixedDiv=j("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(C.style&&C.style.zIndex||0)+2,top:0},null,!0),this.scrollingContainer&&this.scrollingContainer.parentNode.insertBefore(this.fixedDiv,this.scrollingContainer),this.renderTo.style.overflow="visible",this.fixedRenderer=C=new S(this.fixedDiv,this.chartWidth,this.chartHeight,this.options.chart.style),this.scrollableMask=C.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":g(v.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),z(this,"afterShowResetZoom",this.moveFixedElements),z(this,"afterApplyDrilldown",this.moveFixedElements),z(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight),(this.scrollableDirty||y)&&(this.scrollableDirty=!1,this.moveFixedElements()),C=this.chartWidth+(this.scrollablePixelsX||0),S=this.chartHeight+(this.scrollablePixelsY||0),Z(this.container),this.container.style.width=C+"px",this.container.style.height=S+"px",this.renderer.boxWrapper.attr({width:C,height:S,viewBox:[0,0,C,S].join(" ")}),this.chartBackground.attr({width:C,height:S}),this.scrollingContainer.style.height=this.chartHeight+"px",y&&(v.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*v.scrollPositionX),v.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*v.scrollPositionY)),y=this.plotTop-(S=this.axisOffset)[0]-1,v=this.plotLeft-S[3]-1,C=this.plotTop+this.plotHeight+S[2]+1,S=this.plotLeft+this.plotWidth+S[1]+1;var M=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),T=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);y=this.scrollablePixelsX?[["M",0,y],["L",this.plotLeft-1,y],["L",this.plotLeft-1,C],["L",0,C],["Z"],["M",M,y],["L",this.chartWidth,y],["L",this.chartWidth,C],["L",M,C],["Z"]]:this.scrollablePixelsY?[["M",v,0],["L",v,this.plotTop-1],["L",S,this.plotTop-1],["L",S,0],["Z"],["M",v,T],["L",v,this.chartHeight],["L",S,this.chartHeight],["L",S,T],["Z"]]:[["M",0,0]],"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:y})},z(Y,"afterInit",function(){this.chart.scrollableDirty=!0}),z(et,"show",function(){this.chart.scrollableDirty=!0})}),ct(F,"Core/Axis/Stacking/StackItem.js",[F["Core/FormatUtilities.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A){var et=_.format,J=Y.series,$=A.destroyObjectProperties,Z=A.pick,z=A.isNumber;return function(){function j(O,m,g,y,C){var v=O.chart.inverted,S=O.reversed;this.axis=O,O=this.isNegative=!!g!=!!S,this.options=m=m||{},this.x=y,this.cumulative=this.total=null,this.points={},this.hasValidPoints=!1,this.stack=C,this.rightCliff=this.leftCliff=0,this.alignOptions={align:m.align||(v?O?"left":"right":"center"),verticalAlign:m.verticalAlign||(v?"middle":O?"bottom":"top"),y:m.y,x:m.x},this.textAlign=m.textAlign||(v?O?"right":"left":"center")}return j.prototype.destroy=function(){$(this,this.axis)},j.prototype.render=function(O){var m=this.axis.chart,g=this.options,y=g.format;y=y?et(y,this,m):g.formatter.call(this),this.label?this.label.attr({text:y,visibility:"hidden"}):(this.label=m.renderer.label(y,null,void 0,g.shape,void 0,void 0,g.useHTML,!1,"stack-labels"),y={r:g.borderRadius||0,text:y,padding:Z(g.padding,5),visibility:"hidden"},m.styledMode||(y.fill=g.backgroundColor,y.stroke=g.borderColor,y["stroke-width"]=g.borderWidth,this.label.css(g.style||{})),this.label.attr(y),this.label.added||this.label.add(O)),this.label.labelrank=m.plotSizeY},j.prototype.setOffset=function(O,m,g,y,C,v){var S=this.alignOptions,M=this.axis,T=this.label,E=this.options,I=this.textAlign,k=M.chart;O=this.getStackBox({xOffset:O,width:m,boxBottom:g,boxTop:y,defaultX:C,xAxis:v}),C=S.verticalAlign,T&&O&&(m=T.getBBox(),g=T.padding,y="justify"===Z(E.overflow,"justify"),S.x=E.x||0,S.y=E.y||0,I=(C=this.adjustStackPosition({labelBox:m,verticalAlign:C,textAlign:I})).x,C=C.y,O.x-=I,O.y-=C,T.align(S,!1,O),(I=k.isInsidePlot(T.alignAttr.x+S.x+I,T.alignAttr.y+S.y+C))||(y=!1),y&&J.prototype.justifyDataLabel.call(M,T,S,T.alignAttr,m,O),T.attr({x:T.alignAttr.x,y:T.alignAttr.y,rotation:E.rotation,rotationOriginX:m.width/2,rotationOriginY:m.height/2}),Z(!y&&E.crop,!0)&&(I=z(T.x)&&z(T.y)&&k.isInsidePlot(T.x-g+T.width,T.y)&&k.isInsidePlot(T.x+g,T.y)),T[I?"show":"hide"]())},j.prototype.adjustStackPosition=function(O){var m=O.labelBox,g={bottom:0,middle:1,top:2,right:1,center:0,left:-1};return{x:m.width/2+m.width/2*g[O.textAlign],y:m.height/2*g[O.verticalAlign]}},j.prototype.getStackBox=function(O){var m=this.axis,g=m.chart,y=O.boxTop,C=O.defaultX,v=O.xOffset,S=O.width,M=O.boxBottom;return y=m.stacking.usePercentage?100:Z(y,this.total,0),y=m.toPixels(y),O=Z(C,(O.xAxis||g.xAxis[0]).toPixels(this.x))+v,m=m.toPixels(M||0),m=Math.abs(y-m),M=this.isNegative,g.inverted?{x:(M?y:y-m)-g.plotLeft,y:O-g.plotTop,width:m,height:S}:{x:O-g.plotLeft,y:(M?y-m:y)-g.plotTop,width:S,height:m}},j}()}),ct(F,"Core/Axis/Stacking/StackingAxis.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Axis/Axis.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Axis/Stacking/StackItem.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J){function $(){var h=this,t=h.inverted;h.yAxis.forEach(function(o){o.stacking&&o.stacking.stacks&&o.hasVisibleSeries&&(o.stacking.oldStacks=o.stacking.stacks)}),h.series.forEach(function(o){var l=o.xAxis&&o.xAxis.options||{};!o.options.stacking||!0!==o.visible&&!1!==h.options.chart.ignoreHiddenSeries||(o.stackKey=[o.type,r(o.options.stack,""),t?l.top:l.left,t?l.height:l.width].join())})}function Z(){var h=this.stacking;if(h){var t=h.stacks;d(t,function(o,l){E(o),t[l]=null}),h&&h.stackTotalGroup&&h.stackTotalGroup.destroy()}}function z(){"yAxis"!==this.coll||this.stacking||(this.stacking=new c(this))}function j(h,t,o,l){return!T(h)||h.x!==t||l&&h.stackKey!==l?h={x:t,index:0,key:l,stackKey:l}:h.index++,h.key=[o,t,h.index].join(),h}function O(){var f,h=this,t=h.stackKey,o=h.yAxis.stacking.stacks,l=h.processedXData,s=h[h.options.stacking+"Stacker"];s&&[t,"-"+t].forEach(function(w){for(var R,i,X=l.length;X--;)f=h.getStackIndicator(f,R=l[X],h.index,w),(i=(R=o[w]&&o[w][R])&&R.points[f.key])&&s.call(h,i,R,X)})}function m(h,t,o){h[0]=M(h[0]*(t=t.total?100/t.total:0)),h[1]=M(h[1]*t),this.stackedYData[o]=h[1]}function g(){var h=this.yAxis.stacking;this.options.centerInCategory&&(this.is("column")||this.is("columnrange"))&&!this.options.stacking&&1<this.chart.series.length?v.setStackedPoints.call(this,"group"):h&&d(h.stacks,function(t,o){"group"===o.slice(-5)&&(d(t,function(l){return l.destroy()}),delete h.stacks[o])})}function y(h){var t=this.chart,o=h||this.options.stacking;if(o&&(!0===this.visible||!1===t.options.chart.ignoreHiddenSeries)){var l=this.processedXData,s=this.processedYData,f=[],w=s.length,X=this.options,R=X.threshold,i=r(X.startFromThreshold&&R,0);X=X.stack;var a,x,p="-"+(h=h?""+this.type+",".concat(o):this.stackKey),P=this.negStacks,D=(t="group"===o?t.yAxis[0]:this.yAxis).stacking.stacks,L=t.stacking.oldStacks;for(t.stacking.stacksTouched+=1,x=0;x<w;x++){var u=l[x],B=s[x],b=this.getStackIndicator(b,u,this.index),N=b.key,G=(a=P&&B<(i?0:R))?p:h;D[G]||(D[G]={}),D[G][u]||(L[G]&&L[G][u]?(D[G][u]=L[G][u],D[G][u].total=null):D[G][u]=new et(t,t.options.stackLabels,!!a,u,X)),G=D[G][u],null!==B?(G.points[N]=G.points[this.index]=[r(G.cumulative,i)],T(G.cumulative)||(G.base=N),G.touched=t.stacking.stacksTouched,0<b.index&&!1===this.singleStacks&&(G.points[N][0]=G.points[this.index+","+u+",0"][0])):G.points[N]=G.points[this.index]=null,"percent"===o?(a=a?h:p,G.total=P&&D[a]&&D[a][u]?(a=D[a][u]).total=Math.max(a.total,G.total)+Math.abs(B)||0:M(G.total+(Math.abs(B)||0))):"group"===o?(k(B)&&(B=B[0]),null!==B&&(G.total=(G.total||0)+1)):G.total=M(G.total+(B||0)),G.cumulative="group"===o?(G.total||1)-1:r(G.cumulative,i)+(B||0),null!==B&&(G.points[N].push(G.cumulative),f[x]=G.cumulative,G.hasValidPoints=!0)}"percent"===o&&(t.stacking.usePercentage=!0),"group"!==o&&(this.stackedYData=f),t.stacking.oldStacks={}}}var e,h,t,C=_.getDeferredAnimation,v=A.series.prototype,S=J.addEvent,M=J.correctFloat,T=J.defined,E=J.destroyObjectProperties,I=J.fireEvent,k=J.isArray,n=J.isNumber,d=J.objectEach,r=J.pick,c=function(){function h(t){this.oldStacks={},this.stacks={},this.stacksTouched=0,this.axis=t}return h.prototype.buildStacks=function(){var f,t=this.axis,o=t.series,l=t.options.reversedStacks,s=o.length;for(this.usePercentage=!1,f=s;f--;){var w=o[l?f:s-f-1];w.setStackedPoints(),w.setGroupedPoints()}for(f=0;f<s;f++)o[f].modifyStacks();I(t,"afterBuildStacks")},h.prototype.cleanStacks=function(){if(this.oldStacks)var t=this.stacks=this.oldStacks;d(t,function(o){d(o,function(l){l.cumulative=l.total})})},h.prototype.resetStacks=function(){var t=this;d(this.stacks,function(o){d(o,function(l,s){n(l.touched)&&l.touched<t.stacksTouched?(l.destroy(),delete o[s]):(l.total=null,l.cumulative=null)})})},h.prototype.renderStackTotals=function(){var t=this.axis,o=t.chart,l=o.renderer,s=this.stacks;t=C(o,t.options.stackLabels&&t.options.stackLabels.animation||!1);var f=this.stackTotalGroup=this.stackTotalGroup||l.g("stack-labels").attr({zIndex:6,opacity:0}).add();f.translate(o.plotLeft,o.plotTop),d(s,function(w){d(w,function(X){X.render(f)})}),f.animate({opacity:1},t)},h}();return h=e||(e={}),t=[],h.compose=function(o,l,s){-1===t.indexOf(o)&&(t.push(o),S(o,"init",z),S(o,"destroy",Z)),-1===t.indexOf(l)&&(t.push(l),l.prototype.getStacks=$),-1===t.indexOf(s)&&(t.push(s),(o=s.prototype).getStackIndicator=j,o.modifyStacks=O,o.percentStacker=m,o.setGroupedPoints=g,o.setStackedPoints=y)},e}),ct(F,"Series/Line/LineSeries.js",[F["Core/Series/Series.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A){var Z,et=this&&this.__extends||(Z=function(z,j){return(Z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(O,m){O.__proto__=m}||function(O,m){for(var g in m)m.hasOwnProperty(g)&&(O[g]=m[g])})(z,j)},function(z,j){function O(){this.constructor=z}Z(z,j),z.prototype=null===j?Object.create(j):(O.prototype=j.prototype,new O)}),J=A.defined,$=A.merge;return A=function(Z){function z(){var j=null!==Z&&Z.apply(this,arguments)||this;return j.data=void 0,j.options=void 0,j.points=void 0,j}return et(z,Z),z.prototype.drawGraph=function(){var j=this,O=this.options,m=(this.gappedPath||this.getGraphPath).call(this),g=this.chart.styledMode,y=[["graph","highcharts-graph"]];g||y[0].push(O.lineColor||this.color||"#cccccc",O.dashStyle),(y=j.getZonesGraphs(y)).forEach(function(C,v){var S=C[0],M=j[S],T=M?"animate":"attr";M?(M.endX=j.preventGraphAnimation?null:m.xMap,M.animate({d:m})):m.length&&(j[S]=M=j.chart.renderer.path(m).addClass(C[1]).attr({zIndex:1}).add(j.group)),M&&!g&&(S={stroke:C[2],"stroke-width":O.lineWidth||0,fill:j.fillGraph&&j.color||"none"},C[3]?S.dashstyle=C[3]:"square"!==O.linecap&&(S["stroke-linecap"]=S["stroke-linejoin"]="round"),M[T](S).shadow(2>v&&O.shadow)),M&&(M.startX=m.xMap,M.isArea=m.isArea)})},z.prototype.getGraphPath=function(j,O,m){var S,g=this,y=g.options,C=[],v=[],M=y.step,T=(j=j||g.points).reversed;return T&&j.reverse(),(M={right:1,center:2}[M]||M&&3)&&T&&(M=4-M),(j=this.getValidPoints(j,!1,!(y.connectNulls&&!O&&!m))).forEach(function(E,I){var k=E.plotX,n=E.plotY,d=j[I-1];(E.leftCliff||d&&d.rightCliff)&&!m&&(S=!0),E.isNull&&!J(O)&&0<I?S=!y.connectNulls:E.isNull&&!O?S=!0:(0===I||S?I=[["M",E.plotX,E.plotY]]:g.getPointSpline?I=[g.getPointSpline(j,E,I)]:M?(I=1===M?[["L",d.plotX,n]]:2===M?[["L",(d.plotX+k)/2,d.plotY],["L",(d.plotX+k)/2,n]]:[["L",k,d.plotY]]).push(["L",k,n]):I=[["L",k,n]],v.push(E.x),M&&(v.push(E.x),2===M&&v.push(E.x)),C.push.apply(C,I),S=!1)}),C.xMap=v,g.graphPath=C},z.prototype.getZonesGraphs=function(j){return this.zones.forEach(function(O,m){m=["zone-graph-"+m,"highcharts-graph highcharts-zone-graph-"+m+" "+(O.className||"")],this.chart.styledMode||m.push(O.color||this.color,O.dashStyle||this.options.dashStyle),j.push(m)},this),j},z.defaultOptions=$(_.defaultOptions,{}),z}(_),Y.registerSeriesType("line",A),A}),ct(F,"Series/Area/AreaSeries.js",[F["Core/Color/Color.js"],F["Core/Legend/LegendSymbol.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A,et){var m,J=this&&this.__extends||(m=function(g,y){return(m=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(C,v){C.__proto__=v}||function(C,v){for(var S in v)v.hasOwnProperty(S)&&(C[S]=v[S])})(g,y)},function(g,y){function C(){this.constructor=g}m(g,y),g.prototype=null===y?Object.create(y):(C.prototype=y.prototype,new C)}),$=_.parse,Z=A.seriesTypes.line;_=et.extend;var z=et.merge,j=et.objectEach,O=et.pick;return et=function(m){function g(){var y=null!==m&&m.apply(this,arguments)||this;return y.data=void 0,y.options=void 0,y.points=void 0,y}return J(g,m),g.prototype.drawGraph=function(){this.areaPath=[],m.prototype.drawGraph.apply(this);var y=this,C=this.areaPath,v=this.options,S=[["area","highcharts-area",this.color,v.fillColor]];this.zones.forEach(function(M,T){S.push(["zone-area-"+T,"highcharts-area highcharts-zone-area-"+T+" "+M.className,M.color||y.color,M.fillColor||v.fillColor])}),S.forEach(function(M){var T=M[0],E={},I=y[T],k=I?"animate":"attr";I?(I.endX=y.preventGraphAnimation?null:C.xMap,I.animate({d:C})):(E.zIndex=0,(I=y[T]=y.chart.renderer.path(C).addClass(M[1]).add(y.group)).isArea=!0),y.chart.styledMode||(E.fill=O(M[3],$(M[2]).setOpacity(O(v.fillOpacity,.75)).get())),I[k](E),I.startX=C.xMap,I.shiftUnit=v.step?2:1})},g.prototype.getGraphPath=function(y){var C=Z.prototype.getGraphPath,v=this.options,S=v.stacking,M=this.yAxis,T=[],E=[],I=this.index,k=M.stacking.stacks[this.stackKey],n=v.threshold,d=Math.round(M.getThreshold(v.threshold));v=O(v.connectNulls,"percent"===S);var r=function(l,s,f){var w=y[l];l=S&&k[w.x].points[I];var X=w[f+"Null"]||0;if(f=w[f+"Cliff"]||0,w=!0,f||X){var R=(X?l[0]:l[1])+f,i=l[0]+f;w=!!X}else!S&&y[s]&&y[s].isNull&&(R=i=n);typeof R<"u"&&(E.push({plotX:t,plotY:null===R?d:M.getThreshold(R),isNull:w,isCliff:!0}),T.push({plotX:t,plotY:null===i?d:M.getThreshold(i),doCurve:!1}))};y=y||this.points,S&&(y=this.getStackPoints(y));for(var c=0,e=y.length;c<e;++c){S||(y[c].leftCliff=y[c].rightCliff=y[c].leftNull=y[c].rightNull=void 0);var h=y[c].isNull,t=O(y[c].rectPlotX,y[c].plotX),o=S?O(y[c].yBottom,d):d;(!h||v)&&(v||r(c,c-1,"left"),h&&!S&&v||(E.push(y[c]),T.push({x:c,plotX:t,plotY:o})),v||r(c,c+1,"right"))}return r=C.call(this,E,!0,!0),T.reversed=!0,(o=(h=C.call(this,T,!0,!0))[0])&&"M"===o[0]&&(h[0]=["L",o[1],o[2]]),(h=r.concat(h)).length&&h.push(["Z"]),C=C.call(this,E,!1,v),h.xMap=r.xMap,this.areaPath=h,C},g.prototype.getStackPoints=function(y){var C=this,v=[],S=[],M=this.xAxis,T=this.yAxis,E=T.stacking.stacks[this.stackKey],I={},k=T.series,n=k.length,d=T.options.reversedStacks?1:-1,r=k.indexOf(C);if(y=y||this.points,this.options.stacking){for(var c=0;c<y.length;c++)y[c].leftNull=y[c].rightNull=void 0,I[y[c].x]=y[c];j(E,function(h,t){null!==h.total&&S.push(t)}),S.sort(function(h,t){return h-t});var e=k.map(function(h){return h.visible});S.forEach(function(h,t){var l,s,o=0;if(I[h]&&!I[h].isNull)v.push(I[h]),[-1,1].forEach(function(w){var X=1===w?"rightNull":"leftNull",R=E[S[t+w]],i=0;if(R)for(var p=r;0<=p&&p<n;){var P=k[p].index;(l=R.points[P])||(P===C.index?I[h][X]=!0:e[p]&&(s=E[h].points[P])&&(i-=s[1]-s[0])),p+=d}I[h][1===w?"rightCliff":"leftCliff"]=i});else{for(var f=r;0<=f&&f<n;){if(l=E[h].points[k[f].index]){o=l[1];break}f+=d}o=O(o,0),o=T.translate(o,0,1,0,1),v.push({isNull:!0,plotX:M.translate(h,0,0,0,1),x:h,plotY:o,yBottom:o})}})}return v},g.defaultOptions=z(Z.defaultOptions,{threshold:0}),g}(Z),_(et.prototype,{singleStacks:!1,drawLegendSymbol:Y.drawRectangle}),A.registerSeriesType("area",et),et}),ct(F,"Series/Spline/SplineSeries.js",[F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y){var Z,A=this&&this.__extends||(Z=function(z,j){return(Z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(O,m){O.__proto__=m}||function(O,m){for(var g in m)m.hasOwnProperty(g)&&(O[g]=m[g])})(z,j)},function(z,j){function O(){this.constructor=z}Z(z,j),z.prototype=null===j?Object.create(j):(O.prototype=j.prototype,new O)}),et=_.seriesTypes.line,J=Y.merge,$=Y.pick;return Y=function(Z){function z(){var j=null!==Z&&Z.apply(this,arguments)||this;return j.data=void 0,j.options=void 0,j.points=void 0,j}return A(z,Z),z.prototype.getPointSpline=function(j,O,m){var g=O.plotX||0,y=O.plotY||0,C=j[m-1];if(m=j[m+1],C&&!C.isNull&&!1!==C.doCurve&&!O.isCliff&&m&&!m.isNull&&!1!==m.doCurve&&!O.isCliff){var v=m.plotX||0,S=0,M=(1.5*g+(C.plotX||0))/2.5,T=(1.5*y+(j=C.plotY||0))/2.5,E=(1.5*y+(m=m.plotY||0))/2.5;(v=(1.5*g+v)/2.5)!==M&&(S=(E-T)*(v-g)/(v-M)+y-E),E+=S,(T+=S)>j&&T>y?E=2*y-(T=Math.max(j,y)):T<j&&T<y&&(E=2*y-(T=Math.min(j,y))),E>m&&E>y?T=2*y-(E=Math.max(m,y)):E<m&&E<y&&(T=2*y-(E=Math.min(m,y))),O.rightContX=v,O.rightContY=E}return O=["C",$(C.rightContX,C.plotX,0),$(C.rightContY,C.plotY,0),$(M,g,0),$(T,y,0),g,y],C.rightContX=C.rightContY=void 0,O},z.defaultOptions=J(et.defaultOptions),z}(et),_.registerSeriesType("spline",Y),Y}),ct(F,"Series/AreaSpline/AreaSplineSeries.js",[F["Series/Spline/SplineSeries.js"],F["Core/Legend/LegendSymbol.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A,et){var O,J=this&&this.__extends||(O=function(m,g){return(O=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(y,C){y.__proto__=C}||function(y,C){for(var v in C)C.hasOwnProperty(v)&&(y[v]=C[v])})(m,g)},function(m,g){function y(){this.constructor=m}O(m,g),m.prototype=null===g?Object.create(g):(y.prototype=g.prototype,new y)}),$=A.seriesTypes,Z=$.area;$=$.area.prototype;var z=et.extend,j=et.merge;return et=function(O){function m(){var g=null!==O&&O.apply(this,arguments)||this;return g.data=void 0,g.points=void 0,g.options=void 0,g}return J(m,O),m.defaultOptions=j(_.defaultOptions,Z.defaultOptions),m}(_),z(et.prototype,{getGraphPath:$.getGraphPath,getStackPoints:$.getStackPoints,drawGraph:$.drawGraph,drawLegendSymbol:Y.drawRectangle}),A.registerSeriesType("areaspline",et),et}),ct(F,"Series/Column/ColumnSeriesDefaults.js",[],function(){return{borderRadius:0,centerInCategory:!1,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:"#cccccc",borderColor:"#000000"}},dataLabels:{align:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:"#ffffff"}}),ct(F,"Series/Column/ColumnSeries.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Color/Color.js"],F["Series/Column/ColumnSeriesDefaults.js"],F["Core/Globals.js"],F["Core/Legend/LegendSymbol.js"],F["Core/Series/Series.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$,Z,z){var n,j=this&&this.__extends||(n=function(d,r){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,e){c.__proto__=e}||function(c,e){for(var h in e)e.hasOwnProperty(h)&&(c[h]=e[h])})(d,r)},function(d,r){function c(){this.constructor=d}n(d,r),d.prototype=null===r?Object.create(r):(c.prototype=r.prototype,new c)}),O=_.animObject,m=Y.parse,g=et.hasTouch;_=et.noop;var y=z.clamp,C=z.defined,v=z.extend,S=z.fireEvent,M=z.isArray,T=z.isNumber,E=z.merge,I=z.pick,k=z.objectEach;return z=function(n){function d(){var r=null!==n&&n.apply(this,arguments)||this;return r.borderWidth=void 0,r.data=void 0,r.group=void 0,r.options=void 0,r.points=void 0,r}return j(d,n),d.prototype.animate=function(r){var c=this,e=this.yAxis,h=c.options,t=this.chart.inverted,o={},l=t?"translateX":"translateY";if(r)o.scaleY=.001,r=y(e.toPixels(h.threshold),e.pos,e.pos+e.len),t?o.translateX=r-e.len:o.translateY=r,c.clipBox&&c.setClip(),c.group.attr(o);else{var s=Number(c.group.attr(l));c.group.animate({scaleY:1},v(O(c.options.animation),{step:function(f,w){c.group&&(o[l]=s+w.pos*(e.pos-s),c.group.attr(o))}}))}},d.prototype.init=function(r,c){n.prototype.init.apply(this,arguments);var e=this;(r=e.chart).hasRendered&&r.series.forEach(function(h){h.type===e.type&&(h.isDirty=!0)})},d.prototype.getColumnMetrics=function(){var r=this,c=r.options,e=r.xAxis,h=r.yAxis,t=e.options.reversedStacks;t=e.reversed&&!t||!e.reversed&&t;var l,o={},s=0;!1===c.grouping?s=1:r.chart.series.forEach(function(R){var i=R.yAxis,p=R.options;if(R.type===r.type&&(R.visible||!r.chart.options.chart.ignoreHiddenSeries)&&h.len===i.len&&h.pos===i.pos){if(p.stacking&&"group"!==p.stacking){typeof o[l=R.stackKey]>"u"&&(o[l]=s++);var P=o[l]}else!1!==p.grouping&&(P=s++);R.columnIndex=P}});var f=Math.min(Math.abs(e.transA)*(e.ordinal&&e.ordinal.slope||c.pointRange||e.closestPointRange||e.tickInterval||1),e.len),w=f*c.groupPadding,X=(f-2*w)/(s||1);return c=Math.min(c.maxPointWidth||e.len,I(c.pointWidth,X*(1-2*c.pointPadding))),r.columnMetrics={width:c,offset:(X-c)/2+(w+((r.columnIndex||0)+(t?1:0))*X-f/2)*(t?-1:1),paddedWidth:X,columnCount:s},r.columnMetrics},d.prototype.crispCol=function(r,c,e,h){var t=this.chart,o=this.borderWidth,l=-(o%2?.5:0);return o=o%2?.5:1,t.inverted&&t.renderer.isVML&&(o+=1),this.options.crisp&&(e=Math.round(r+e)+l,e-=r=Math.round(r)+l),h=Math.round(c+h)+o,l=.5>=Math.abs(c)&&.5<h,h-=c=Math.round(c)+o,l&&h&&(--c,h+=1),{x:r,y:c,width:e,height:h}},d.prototype.adjustForMissingColumns=function(r,c,e,h){var t=this,o=this.options.stacking;if(!e.isNull&&1<h.columnCount){var l=this.yAxis.options.reversedStacks,s=0,f=l?0:-h.columnCount;k(this.yAxis.stacking&&this.yAxis.stacking.stacks,function(w){if("number"==typeof e.x){var X=w[e.x.toString()];X&&(w=X.points[t.index],o?(w&&(s=f),X.hasValidPoints&&(l?f++:f--)):M(w)&&(w=Object.keys(X.points).filter(function(R){return!R.match(",")&&X.points[R]&&1<X.points[R].length}).map(parseFloat).sort(function(R,i){return i-R}),s=w.indexOf(t.index),f=w.length))}}),r=(e.plotX||0)+((f-1)*h.paddedWidth+c)/2-c-s*h.paddedWidth}return r},d.prototype.translate=function(){var r=this,c=r.chart,e=r.options,h=r.dense=2>r.closestPointRange*r.xAxis.transA;h=r.borderWidth=I(e.borderWidth,h?0:1);var t=r.xAxis,o=r.yAxis,l=e.threshold,s=r.translatedThreshold=o.getThreshold(l),f=I(e.minPointLength,5),w=r.getColumnMetrics(),X=w.width,R=r.pointXOffset=w.offset,i=r.dataMin,p=r.dataMax,P=r.barW=Math.max(X,1+2*h);c.inverted&&(s-=.5),e.pointPadding&&(P=Math.ceil(P)),$.prototype.translate.apply(r),r.points.forEach(function(D){var L=I(D.yBottom,s),a=999+Math.abs(L),x=D.plotX||0;a=y(D.plotY,-a,o.len+a);var u=Math.min(a,L),B=Math.max(a,L)-u,b=X,N=x+R,G=P;f&&Math.abs(B)<f&&(B=f,x=!o.reversed&&!D.negative||o.reversed&&D.negative,T(l)&&T(p)&&D.y===l&&p<=l&&(o.min||0)<l&&(i!==p||(o.max||0)<=l)&&(x=!x),u=Math.abs(u-s)>f?L-f:s-(x?f:0)),C(D.options.pointWidth)&&(b=G=Math.ceil(D.options.pointWidth),N-=Math.round((b-X)/2)),e.centerInCategory&&(N=r.adjustForMissingColumns(N,b,D,w)),D.barX=N,D.pointWidth=b,D.tooltipPos=c.inverted?[y(o.len+o.pos-c.plotLeft-a,o.pos-c.plotLeft,o.len+o.pos-c.plotLeft),t.len+t.pos-c.plotTop-N-G/2,B]:[t.left-c.plotLeft+N+G/2,y(a+o.pos-c.plotTop,o.pos-c.plotTop,o.len+o.pos-c.plotTop),B],D.shapeType=r.pointClass.prototype.shapeType||"rect",D.shapeArgs=r.crispCol.apply(r,D.isNull?[N,s,G,0]:[N,u,G,B])})},d.prototype.drawGraph=function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},d.prototype.pointAttribs=function(r,c){var e=this.options,h=this.pointAttrToOptions||{},t=h.stroke||"borderColor",o=h["stroke-width"]||"borderWidth",l=r&&r.color||this.color,s=r&&r[t]||e[t]||l;h=r&&r.options.dashStyle||e.dashStyle;var f=r&&r[o]||e[o]||this[o]||0,w=I(r&&r.opacity,e.opacity,1);if(r&&this.zones.length){var X=r.getZone();l=r.options.color||X&&(X.color||r.nonZonedColor)||this.color,X&&(s=X.borderColor||s,h=X.dashStyle||h,f=X.borderWidth||f)}return c&&r&&(c=(r=E(e.states[c],r.options.states&&r.options.states[c]||{})).brightness,l=r.color||typeof c<"u"&&m(l).brighten(r.brightness).get()||l,s=r[t]||s,f=r[o]||f,h=r.dashStyle||h,w=I(r.opacity,w)),t={fill:l,stroke:s,"stroke-width":f,opacity:w},h&&(t.dashstyle=h),t},d.prototype.drawPoints=function(r){void 0===r&&(r=this.points);var l,c=this,e=this.chart,h=c.options,t=e.renderer,o=h.animationLimit||250;r.forEach(function(s){var f=s.graphic,w=!!f,X=f&&e.pointCount<o?"animate":"attr";T(s.plotY)&&null!==s.y?(l=s.shapeArgs,f&&s.hasNewShapeType()&&(f=f.destroy()),c.enabledDataSorting&&(s.startXPos=c.xAxis.reversed?-(l&&l.width||0):c.xAxis.width),f||(s.graphic=f=t[s.shapeType](l).add(s.group||c.group))&&c.enabledDataSorting&&e.hasRendered&&e.pointCount<o&&(f.attr({x:s.startXPos}),w=!0,X="animate"),f&&w&&f[X](E(l)),h.borderRadius&&f[X]({r:h.borderRadius}),e.styledMode||f[X](c.pointAttribs(s,s.selected&&"select")).shadow(!1!==s.allowShadow&&h.shadow,null,h.stacking&&!h.borderRadius),f&&(f.addClass(s.getClassName(),!0),f.attr({visibility:s.visible?"inherit":"hidden"}))):f&&(s.graphic=f.destroy())})},d.prototype.drawTracker=function(r){void 0===r&&(r=this.points);var o,c=this,e=c.chart,h=e.pointer,t=function(l){var s=h.getPointFromEvent(l);typeof s<"u"&&(h.isDirectTouch=!0,s.onMouseOver(l))};r.forEach(function(l){o=M(l.dataLabels)?l.dataLabels:l.dataLabel?[l.dataLabel]:[],l.graphic&&(l.graphic.element.point=l),o.forEach(function(s){s.div?s.div.point=l:s.element.point=l})}),c._hasTracking||(c.trackerGroups.forEach(function(l){c[l]&&(c[l].addClass("highcharts-tracker").on("mouseover",t).on("mouseout",function(s){h.onTrackerMouseOut(s)}),g&&c[l].on("touchstart",t),!e.styledMode&&c.options.cursor&&c[l].css({cursor:c.options.cursor}))}),c._hasTracking=!0),S(this,"afterDrawTracker")},d.prototype.remove=function(){var r=this,c=r.chart;c.hasRendered&&c.series.forEach(function(e){e.type===r.type&&(e.isDirty=!0)}),$.prototype.remove.apply(r,arguments)},d.defaultOptions=E($.defaultOptions,A),d}($),v(z.prototype,{cropShoulder:0,directTouch:!0,drawLegendSymbol:J.drawRectangle,getSymbol:_,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]}),Z.registerSeriesType("column",z),z}),ct(F,"Core/Series/DataLabel.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/FormatUtilities.js"],F["Core/Utilities.js"]],function(_,Y,A){var v,et=_.getDeferredAnimation,J=Y.format,$=A.defined,Z=A.extend,z=A.fireEvent,j=A.isArray,O=A.isString,m=A.merge,g=A.objectEach,y=A.pick,C=A.splat;return function(S){function M(r,c,e,h,t){var o=this,l=this.chart,s=this.isCartesian&&l.inverted,f=this.enabledDataSorting,w=r.plotX,X=r.plotY,R=e.rotation,i=e.align,p=$(w)&&$(X)&&l.isInsidePlot(w,Math.round(X),{inverted:s,paneCoordinates:!0,series:o});X=function(a){f&&o.xAxis&&!P&&o.setDataLabelStartPos(r,c,t,p,a)};var P="justify"===y(e.overflow,f?"none":"justify");if(w=this.visible&&!1!==r.visible&&$(w)&&(r.series.forceDL||f&&!P||p||y(e.inside,!!this.options.stacking)&&h&&l.isInsidePlot(w,s?h.x+1:h.y+h.height-1,{inverted:s,paneCoordinates:!0,series:o})),s=r.pos(),w&&s){R&&c.attr({align:i}),i=c.getBBox(!0);var D=[0,0],L=l.renderer.fontMetrics(l.styledMode?void 0:e.style.fontSize,c).b;h=Z({x:s[0],y:Math.round(s[1]),width:0,height:0},h),Z(e,{width:i.width,height:i.height}),R?(P=!1,D=l.renderer.rotCorr(L,R),L={x:h.x+(e.x||0)+h.width/2+D.x,y:h.y+(e.y||0)+{top:0,middle:.5,bottom:1}[e.verticalAlign]*h.height},D=[i.x-Number(c.attr("x")),i.y-Number(c.attr("y"))],X(L),c[t?"attr":"animate"](L)):(X(h),c.align(e,void 0,h),L=c.alignAttr),P&&0<=h.height?this.justifyDataLabel(c,e,L,i,h,t):y(e.crop,!0)&&(h=L.x,X=L.y,w=l.isInsidePlot(h+=D[0],X+=D[1],{paneCoordinates:!0,series:o})&&l.isInsidePlot(h+i.width,X+i.height,{paneCoordinates:!0,series:o})),e.shape&&!R&&c[t?"attr":"animate"]({anchorX:s[0],anchorY:s[1]})}t&&f&&(c.placed=!1),w||f&&!P?c.show():(c.hide(),c.placed=!1)}function E(r){void 0===r&&(r=this.points);var c=this,e=c.chart,h=c.options,t=c.hasRendered||0,o=e.renderer,l=e.options.chart,s=l.backgroundColor,f=o.getContrast(O(l=l.plotBackgroundColor)&&l||O(s)&&s||"#000000"),w=h.dataLabels;if(s=w.animation,s=w.defer?et(e,s,c):{defer:0,duration:0},w=k(k(e.options.plotOptions&&e.options.plotOptions.series&&e.options.plotOptions.series.dataLabels,e.options.plotOptions&&e.options.plotOptions[c.type]&&e.options.plotOptions[c.type].dataLabels),w),z(this,"drawDataLabels"),j(w)||w.enabled||c._hasPointLabels){var R=c.plotGroup("dataLabelsGroup","data-labels",t?"inherit":"hidden",w.zIndex||6);R.attr({opacity:+t}),!t&&(t=c.dataLabelsGroup)&&(c.visible&&R.show(),t[h.animation?"animate":"attr"]({opacity:1},s)),r.forEach(function(i){C(k(w,i.dlOptions||i.options&&i.options.dataLabels)).forEach(function(p,P){var D=p.enabled&&(!i.isNull||i.dataLabelOnNull)&&function T(r,c){var e=c.filter;return!e||(c=e.operator,r=r[e.property],e=e.value,">"===c&&r>e||"<"===c&&r<e||">="===c&&r>=e||"<="===c&&r<=e||"=="===c&&r==e||"==="===c&&r===e)}(i,p),L=i.connectors?i.connectors[P]:i.connector,a=i.dataLabels?i.dataLabels[P]:i.dataLabel,x=!a,u=y(p.distance,i.labelDistance);if(D){var B=i.getLabelConfig(),b=y(p[i.formatPrefix+"Format"],p.format);B=$(b)?J(b,B,e):(p[i.formatPrefix+"Formatter"]||p.formatter).call(B,p),b=p.style;var N=p.rotation;e.styledMode||(b.color=y(p.color,b.color,c.color,"#000000"),"contrast"===b.color?(i.contrastColor=o.getContrast(i.color||c.color),b.color=!$(u)&&p.inside||0>u||h.stacking?i.contrastColor:f):delete i.contrastColor,h.cursor&&(b.cursor=h.cursor));var G={r:p.borderRadius||0,rotation:N,padding:p.padding,zIndex:1};if(!e.styledMode){var U=p.borderColor;G.fill="auto"===(u=p.backgroundColor)?i.color:u,G.stroke="auto"===U?i.color:U,G["stroke-width"]=p.borderWidth}g(G,function(V,st){typeof V>"u"&&delete G[st]})}!a||D&&$(B)&&!!a.div==!!p.useHTML&&(a.rotation&&p.rotation||a.rotation===p.rotation)||(x=!0,i.dataLabel=a=i.dataLabel&&i.dataLabel.destroy(),i.dataLabels&&(1===i.dataLabels.length?delete i.dataLabels:delete i.dataLabels[P]),P||delete i.dataLabel,L&&(i.connector=i.connector.destroy(),i.connectors&&(1===i.connectors.length?delete i.connectors:delete i.connectors[P]))),D&&$(B)?(a?G.text=B:(i.dataLabels=i.dataLabels||[],a=i.dataLabels[P]=N?o.text(B,0,0,p.useHTML).addClass("highcharts-data-label"):o.label(B,0,0,p.shape,null,null,p.useHTML,null,"data-label"),P||(i.dataLabel=a),a.addClass(" highcharts-data-label-color-"+i.colorIndex+" "+(p.className||"")+(p.useHTML?" highcharts-tracker":""))),a.options=p,a.attr(G),e.styledMode||a.css(b).shadow(p.shadow),(P=p[i.formatPrefix+"TextPath"]||p.textPath)&&!p.useHTML&&(a.setTextPath(i.getDataLabelPath&&i.getDataLabelPath(a)||i.graphic,P),i.dataLabelPath&&!P.enabled&&(i.dataLabelPath=i.dataLabelPath.destroy())),a.added||a.add(R),c.alignDataLabel(i,a,p,null,x)):a&&a.hide()})})}z(this,"afterDrawDataLabels")}function I(r,c,e,h,t,o){var l=this.chart,s=c.align,f=c.verticalAlign,w=r.box?0:r.padding||0,X=c.x;X=void 0===X?0:X;var R=c.y;R=void 0===R?0:R;var i=(e.x||0)+w;if(0>i){"right"===s&&0<=X?(c.align="left",c.inside=!0):X-=i;var p=!0}return(i=(e.x||0)+h.width-w)>l.plotWidth&&("left"===s&&0>=X?(c.align="right",c.inside=!0):X+=l.plotWidth-i,p=!0),0>(i=e.y+w)&&("bottom"===f&&0<=R?(c.verticalAlign="top",c.inside=!0):R-=i,p=!0),(i=(e.y||0)+h.height-w)>l.plotHeight&&("top"===f&&0>=R?(c.verticalAlign="bottom",c.inside=!0):R+=l.plotHeight-i,p=!0),p&&(c.x=X,c.y=R,r.placed=!o,r.align(c,void 0,t)),p}function k(r,c){var h,e=[];if(j(r)&&!j(c))e=r.map(function(t){return m(t,c)});else if(j(c)&&!j(r))e=c.map(function(t){return m(r,t)});else if(j(r)||j(c))for(h=Math.max(r.length,c.length);h--;)e[h]=m(r[h],c[h]);else e=m(r,c);return e}function n(r,c,e,h,t){var o=this.chart,l=o.inverted,s=this.xAxis,f=s.reversed,w=l?c.height/2:c.width/2;r=(r=r.pointWidth)?r/2:0,c.startXPos=l?t.x:f?-w-r:s.width-w+r,c.startYPos=l?f?this.yAxis.height-w+r:-w-r:t.y,h?"hidden"===c.visibility&&(c.show(),c.attr({opacity:0}).animate({opacity:1})):c.attr({opacity:1}).animate({opacity:0},void 0,c.hide),o.hasRendered&&(e&&c.attr({x:c.startXPos,y:c.startYPos}),c.placed=!0)}var d=[];S.compose=function(r){if(-1===d.indexOf(r)){var c=r.prototype;d.push(r),c.alignDataLabel=M,c.drawDataLabels=E,c.justifyDataLabel=I,c.setDataLabelStartPos=n}}}(v||(v={})),v}),ct(F,"Series/Column/ColumnDataLabel.js",[F["Core/Series/DataLabel.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A){var Z,et=Y.series,J=A.merge,$=A.pick;return function(z){function j(m,g,y,C,v){var S=this.chart.inverted,M=m.series,T=(M.xAxis?M.xAxis.len:this.chart.plotSizeX)||0,E=m.dlBox||m.shapeArgs,I=$(m.below,m.plotY>$(this.translatedThreshold,M=(M.yAxis?M.yAxis.len:this.chart.plotSizeY)||0)),k=$(y.inside,!!this.options.stacking);E&&(0>(C=J(E)).y&&(C.height+=C.y,C.y=0),0<(E=C.y+C.height-M)&&E<C.height&&(C.height-=E),S&&(C={x:M-C.y-C.height,y:T-C.x-C.width,width:C.height,height:C.width}),k||(S?(C.x+=I?0:C.width,C.width=0):(C.y+=I?C.height:0,C.height=0))),y.align=$(y.align,!S||k?"center":I?"right":"left"),y.verticalAlign=$(y.verticalAlign,S||k?"middle":I?"top":"bottom"),et.prototype.alignDataLabel.call(this,m,g,y,C,v),y.inside&&m.contrastColor&&g.css({color:m.contrastColor})}var O=[];z.compose=function(m){_.compose(et),-1===O.indexOf(m)&&(O.push(m),m.prototype.alignDataLabel=j)}}(Z||(Z={})),Z}),ct(F,"Series/Bar/BarSeries.js",[F["Series/Column/ColumnSeries.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A){var Z,et=this&&this.__extends||(Z=function(z,j){return(Z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(O,m){O.__proto__=m}||function(O,m){for(var g in m)m.hasOwnProperty(g)&&(O[g]=m[g])})(z,j)},function(z,j){function O(){this.constructor=z}Z(z,j),z.prototype=null===j?Object.create(j):(O.prototype=j.prototype,new O)}),J=A.extend,$=A.merge;return A=function(Z){function z(){var j=null!==Z&&Z.apply(this,arguments)||this;return j.data=void 0,j.options=void 0,j.points=void 0,j}return et(z,Z),z.defaultOptions=$(_.defaultOptions,{}),z}(_),J(A.prototype,{inverted:!0}),Y.registerSeriesType("bar",A),A}),ct(F,"Series/Scatter/ScatterSeriesDefaults.js",[],function(){return{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">\u25cf</span> <span style="font-size: 10px"> {series.name}</span><br/>',pointFormat:"x: <b>{point.x}</b><br/>y: <b>{point.y}</b><br/>"}}}),ct(F,"Series/Scatter/ScatterSeries.js",[F["Series/Scatter/ScatterSeriesDefaults.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A){var O,et=this&&this.__extends||(O=function(m,g){return(O=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(y,C){y.__proto__=C}||function(y,C){for(var v in C)C.hasOwnProperty(v)&&(y[v]=C[v])})(m,g)},function(m,g){function y(){this.constructor=m}O(m,g),m.prototype=null===g?Object.create(g):(y.prototype=g.prototype,new y)}),J=Y.seriesTypes,$=J.column,Z=J.line;J=A.addEvent;var z=A.extend,j=A.merge;return A=function(O){function m(){var g=null!==O&&O.apply(this,arguments)||this;return g.data=void 0,g.options=void 0,g.points=void 0,g}return et(m,O),m.prototype.applyJitter=function(){var g=this,y=this.options.jitter,C=this.points.length;y&&this.points.forEach(function(v,S){["x","y"].forEach(function(M,T){var E="plot"+M.toUpperCase();if(y[M]&&!v.isNull){var I=g[M+"Axis"],k=y[M]*I.transA;if(I&&!I.isLog){var n=Math.max(0,v[E]-k);I=Math.min(I.len,v[E]+k),T=1e4*Math.sin(S+T*C),v[E]=n+(I-n)*(T-Math.floor(T)),"x"===M&&(v.clientX=v.plotX)}}})})},m.prototype.drawGraph=function(){this.options.lineWidth?O.prototype.drawGraph.call(this):this.graph&&(this.graph=this.graph.destroy())},m.defaultOptions=j(Z.defaultOptions,_),m}(Z),z(A.prototype,{drawTracker:$.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1}),J(A,"afterTranslate",function(){this.applyJitter()}),Y.registerSeriesType("scatter",A),A}),ct(F,"Series/CenteredUtilities.js",[F["Core/Globals.js"],F["Core/Series/Series.js"],F["Core/Utilities.js"]],function(_,Y,A){var j,O,et=_.deg2rad,J=A.fireEvent,$=A.isNumber,Z=A.pick,z=A.relativeLength;return(O=j||(j={})).getCenter=function(){var m=this.options,g=this.chart,y=2*(m.slicedOffset||0),C=g.plotWidth-2*y,v=g.plotHeight-2*y,S=m.center,M=Math.min(C,v),T=m.thickness,E=m.size,I=m.innerSize||0;for("string"==typeof E&&(E=parseFloat(E)),"string"==typeof I&&(I=parseFloat(I)),m=[Z(S[0],"50%"),Z(S[1],"50%"),Z(E&&0>E?void 0:m.size,"100%"),Z(I&&0>I?void 0:m.innerSize||0,"0%")],!g.angular||this instanceof Y||(m[3]=0),S=0;4>S;++S)E=m[S],g=2>S||2===S&&/%$/.test(E),m[S]=z(E,[C,v,M,m[2]][S])+(g?y:0);return m[3]>m[2]&&(m[3]=m[2]),$(T)&&2*T<m[2]&&0<T&&(m[3]=m[2]-2*T),J(this,"afterGetCenter",{positions:m}),m},O.getStartAndEndRadians=function(m,g){return m=$(m)?m:0,g=$(g)&&g>m&&360>g-m?g:m+360,{start:et*(m+-90),end:et*(g+-90)}},j}),ct(F,"Series/Pie/PiePoint.js",[F["Core/Animation/AnimationUtilities.js"],F["Core/Series/Point.js"],F["Core/Utilities.js"]],function(_,Y,A){var m,et=this&&this.__extends||(m=function(g,y){return(m=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(C,v){C.__proto__=v}||function(C,v){for(var S in v)v.hasOwnProperty(S)&&(C[S]=v[S])})(g,y)},function(g,y){function C(){this.constructor=g}m(g,y),g.prototype=null===y?Object.create(y):(C.prototype=y.prototype,new C)}),J=_.setAnimation,$=A.addEvent,Z=A.defined;_=A.extend;var z=A.isNumber,j=A.pick,O=A.relativeLength;return Y=function(m){function g(){var y=null!==m&&m.apply(this,arguments)||this;return y.labelDistance=void 0,y.options=void 0,y.series=void 0,y}return et(g,m),g.prototype.getConnectorPath=function(){var y=this.labelPosition,C=this.series.options.dataLabels,v=this.connectorShapes,S=C.connectorShape;return v[S]&&(S=v[S]),S.call(this,{x:y.final.x,y:y.final.y,alignment:y.alignment},y.connectorPosition,C)},g.prototype.getTranslate=function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},g.prototype.haloPath=function(y){var C=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(C.x,C.y,C.r+y,C.r+y,{innerR:C.r-1,start:C.start,end:C.end})},g.prototype.init=function(){var y=this;m.prototype.init.apply(this,arguments),this.name=j(this.name,"Slice");var C=function(v){y.slice("select"===v.type)};return $(this,"select",C),$(this,"unselect",C),this},g.prototype.isValid=function(){return z(this.y)&&0<=this.y},g.prototype.setVisible=function(y,C){var v=this,S=this.series,M=S.chart,T=S.options.ignoreHiddenPoint;C=j(C,T),y!==this.visible&&(this.visible=this.options.visible=y=typeof y>"u"?!this.visible:y,S.options.data[S.data.indexOf(this)]=this.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(E){v[E]&&v[E][y?"show":"hide"](y)}),this.legendItem&&M.legend.colorizeItem(this,y),y||"hover"!==this.state||this.setState(""),T&&(S.isDirty=!0),C&&M.redraw())},g.prototype.slice=function(y,C,v){var S=this.series;J(v,S.chart),j(C,!0),this.sliced=this.options.sliced=Z(y)?y:!this.sliced,S.options.data[S.data.indexOf(this)]=this.options,this.graphic&&this.graphic.animate(this.getTranslate()),this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},g}(Y),_(Y.prototype,{connectorShapes:{fixedOffset:function(m,g,y){var C=g.breakAt;return g=g.touchingSliceAt,[["M",m.x,m.y],y.softConnector?["C",m.x+("left"===m.alignment?-5:5),m.y,2*C.x-g.x,2*C.y-g.y,C.x,C.y]:["L",C.x,C.y],["L",g.x,g.y]]},straight:function(m,g){return[["M",m.x,m.y],["L",(g=g.touchingSliceAt).x,g.y]]},crookedLine:function(m,g,y){g=g.touchingSliceAt;var C=this.series,v=C.center[0],S=C.chart.plotWidth,M=C.chart.plotLeft;C=m.alignment;var T=this.shapeArgs.r;return y=O(y.crookDistance,1),y=["L",S="left"===C?v+T+(S+M-v-T)*(1-y):M+(v-T)*y,m.y],v=!0,("left"===C?S>m.x||S<g.x:S<m.x||S>g.x)&&(v=!1),m=[["M",m.x,m.y]],v&&m.push(y),m.push(["L",g.x,g.y]),m}}}),Y}),ct(F,"Series/Pie/PieSeriesDefaults.js",[],function(){return{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,connectorShape:"fixedOffset",crookDistance:"70%",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}}}}),ct(F,"Series/Pie/PieSeries.js",[F["Series/CenteredUtilities.js"],F["Series/Column/ColumnSeries.js"],F["Core/Globals.js"],F["Core/Legend/LegendSymbol.js"],F["Series/Pie/PiePoint.js"],F["Series/Pie/PieSeriesDefaults.js"],F["Core/Series/Series.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Renderer/SVG/Symbols.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J,$,Z,z,j,O){var E,m=this&&this.__extends||(E=function(I,k){return(E=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,d){n.__proto__=d}||function(n,d){for(var r in d)d.hasOwnProperty(r)&&(n[r]=d[r])})(I,k)},function(I,k){function n(){this.constructor=I}E(I,k),I.prototype=null===k?Object.create(k):(n.prototype=k.prototype,new n)}),g=_.getStartAndEndRadians;A=A.noop;var y=O.clamp,C=O.extend,v=O.fireEvent,S=O.merge,M=O.pick,T=O.relativeLength;return O=function(E){function I(){var k=null!==E&&E.apply(this,arguments)||this;return k.center=void 0,k.data=void 0,k.maxLabelDistance=void 0,k.options=void 0,k.points=void 0,k}return m(I,E),I.prototype.animate=function(k){var n=this,r=n.startAngleRad;k||n.points.forEach(function(c){var e=c.graphic,h=c.shapeArgs;e&&h&&(e.attr({r:M(c.startR,n.center&&n.center[3]/2),start:r,end:r}),e.animate({r:h.r,start:h.start,end:h.end},n.options.animation))})},I.prototype.drawEmpty=function(){var k=this.startAngleRad,n=this.endAngleRad,d=this.options;if(0===this.total&&this.center){var r=this.center[0],c=this.center[1];this.graph||(this.graph=this.chart.renderer.arc(r,c,this.center[1]/2,0,k,n).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:j.arc(r,c,this.center[2]/2,0,{start:k,end:n,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":d.borderWidth,fill:d.fillColor||"none",stroke:d.color||"#cccccc"})}else this.graph&&(this.graph=this.graph.destroy())},I.prototype.drawPoints=function(){var k=this.chart.renderer;this.points.forEach(function(n){n.graphic&&n.hasNewShapeType()&&(n.graphic=n.graphic.destroy()),n.graphic||(n.graphic=k[n.shapeType](n.shapeArgs).add(n.series.group),n.delayedRendering=!0)})},I.prototype.generatePoints=function(){E.prototype.generatePoints.call(this),this.updateTotals()},I.prototype.getX=function(k,n,d){var r=this.center,c=this.radii?this.radii[d.index]||0:r[2]/2;return k=Math.asin(y((k-r[1])/(c+d.labelDistance),-1,1)),r[0]+(n?-1:1)*Math.cos(k)*(c+d.labelDistance)+(0<d.labelDistance?(n?-1:1)*this.options.dataLabels.padding:0)},I.prototype.hasData=function(){return!!this.processedXData.length},I.prototype.redrawPoints=function(){var c,e,h,t,k=this,n=k.chart,d=n.renderer,r=k.options.shadow;this.drawEmpty(),!r||k.shadowGroup||n.styledMode||(k.shadowGroup=d.g("shadow").attr({zIndex:-1}).add(k.group)),k.points.forEach(function(o){var l={};if(e=o.graphic,!o.isNull&&e){var s=void 0;t=o.shapeArgs,c=o.getTranslate(),n.styledMode||(s=o.shadowGroup,r&&!s&&(s=o.shadowGroup=d.g("shadow").add(k.shadowGroup)),s&&s.attr(c),h=k.pointAttribs(o,o.selected&&"select")),o.delayedRendering?(e.setRadialReference(k.center).attr(t).attr(c),n.styledMode||e.attr(h).attr({"stroke-linejoin":"round"}).shadow(r,s),o.delayedRendering=!1):(e.setRadialReference(k.center),n.styledMode||S(!0,l,h),S(!0,l,t,c),e.animate(l)),e.attr({visibility:o.visible?"inherit":"hidden"}),e.addClass(o.getClassName(),!0)}else e&&(o.graphic=e.destroy())})},I.prototype.sortByAngle=function(k,n){k.sort(function(d,r){return typeof d.angle<"u"&&(r.angle-d.angle)*n})},I.prototype.translate=function(k){v(this,"translate"),this.generatePoints();var n=this.options,d=n.slicedOffset,r=d+(n.borderWidth||0),c=g(n.startAngle,n.endAngle),e=this.startAngleRad=c.start;c=(this.endAngleRad=c.end)-e;var h=this.points,t=n.dataLabels.distance;n=n.ignoreHiddenPoint;var l,o=h.length,s=0;for(k||(this.center=k=this.getCenter()),l=0;l<o;l++){var f=h[l],w=e+s*c;!f.isValid()||n&&!f.visible||(s+=f.percentage/100);var X=e+s*c,R={x:k[0],y:k[1],r:k[2]/2,innerR:k[3]/2,start:Math.round(1e3*w)/1e3,end:Math.round(1e3*X)/1e3};f.shapeType="arc",f.shapeArgs=R,f.labelDistance=M(f.options.dataLabels&&f.options.dataLabels.distance,t),f.labelDistance=T(f.labelDistance,R.r),this.maxLabelDistance=Math.max(this.maxLabelDistance||0,f.labelDistance),(X=(X+w)/2)>1.5*Math.PI?X-=2*Math.PI:X<-Math.PI/2&&(X+=2*Math.PI),f.slicedTranslation={translateX:Math.round(Math.cos(X)*d),translateY:Math.round(Math.sin(X)*d)},R=Math.cos(X)*k[2]/2;var i=Math.sin(X)*k[2]/2;f.tooltipPos=[k[0]+.7*R,k[1]+.7*i],f.half=X<-Math.PI/2||X>Math.PI/2?1:0,f.angle=X,w=Math.min(r,f.labelDistance/5),f.labelPosition={natural:{x:k[0]+R+Math.cos(X)*f.labelDistance,y:k[1]+i+Math.sin(X)*f.labelDistance},final:{},alignment:0>f.labelDistance?"center":f.half?"right":"left",connectorPosition:{breakAt:{x:k[0]+R+Math.cos(X)*w,y:k[1]+i+Math.sin(X)*w},touchingSliceAt:{x:k[0]+R,y:k[1]+i}}}}v(this,"afterTranslate")},I.prototype.updateTotals=function(){var r,k=this.points,n=k.length,d=this.options.ignoreHiddenPoint,c=0;for(r=0;r<n;r++){var e=k[r];!e.isValid()||d&&!e.visible||(c+=e.y)}for(this.total=c,r=0;r<n;r++)(e=k[r]).percentage=0<c&&(e.visible||!d)?e.y/c*100:0,e.total=c},I.defaultOptions=S(Z.defaultOptions,$),I}(Z),C(O.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawLegendSymbol:et.drawRectangle,drawTracker:Y.prototype.drawTracker,getCenter:_.getCenter,getSymbol:A,isCartesian:!1,noSharedTooltip:!0,pointAttribs:Y.prototype.pointAttribs,pointClass:J,requireSorting:!1,searchPoint:A,trackerGroups:["group","dataLabelsGroup"]}),z.registerSeriesType("pie",O),O}),ct(F,"Series/Pie/PieDataLabel.js",[F["Core/Series/DataLabel.js"],F["Core/Globals.js"],F["Core/Renderer/RendererUtilities.js"],F["Core/Series/SeriesRegistry.js"],F["Core/Utilities.js"]],function(_,Y,A,et,J){var v,$=Y.noop,Z=A.distribute,z=et.series,j=J.arrayMax,O=J.clamp,m=J.defined,g=J.merge,y=J.pick,C=J.relativeLength;return function(S){function M(){var p,P,D,L,a,x,u,B,b,N,G,U,n=this,d=n.data,r=n.chart,c=n.options.dataLabels||{},e=c.connectorPadding,h=r.plotWidth,t=r.plotHeight,o=r.plotLeft,l=Math.round(r.chartWidth/3),s=n.center,f=s[2]/2,w=s[1],X=[[],[]],R=[0,0,0,0],i=n.dataLabelPositioners;n.visible&&(c.enabled||n._hasPointLabels)&&(d.forEach(function(V){V.dataLabel&&V.visible&&V.dataLabel.shortened&&(V.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),V.dataLabel.shortened=!1)}),z.prototype.drawDataLabels.apply(n),d.forEach(function(V){V.dataLabel&&(V.visible?(X[V.half].push(V),V.dataLabel._pos=null,!m(c.style.width)&&!m(V.options.dataLabels&&V.options.dataLabels.style&&V.options.dataLabels.style.width)&&V.dataLabel.getBBox().width>l&&(V.dataLabel.css({width:Math.round(.7*l)+"px"}),V.dataLabel.shortened=!0)):(V.dataLabel=V.dataLabel.destroy(),V.dataLabels&&1===V.dataLabels.length&&delete V.dataLabels))}),X.forEach(function(V,st){var tt,rt=V.length,ot=[];if(rt){if(n.sortByAngle(V,st-.5),0<n.maxLabelDistance){var at=Math.max(0,w-f-n.maxLabelDistance),q=Math.min(w+f+n.maxLabelDistance,r.plotHeight);V.forEach(function(H){0<H.labelDistance&&H.dataLabel&&(H.top=Math.max(0,w-f-H.labelDistance),H.bottom=Math.min(w+f+H.labelDistance,r.plotHeight),tt=H.dataLabel.getBBox().height||21,H.distributeBox={target:H.labelPosition.natural.y-H.top+tt/2,size:tt,rank:H.y},ot.push(H.distributeBox))}),Z(ot,at=q+tt-at,at/5)}for(G=0;G<rt;G++){if(L=(p=V[G]).dataLabel,N=!1===p.visible?"hidden":"inherit",b=at=(x=p.labelPosition).natural.y,ot&&m(p.distributeBox)&&(typeof p.distributeBox.pos>"u"?N="hidden":(u=p.distributeBox.size,b=i.radialDistributionY(p))),delete p.positionIndex,c.justify)B=i.justify(p,f,s);else switch(c.alignTo){case"connectors":B=i.alignToConnectors(V,st,h,o);break;case"plotEdges":B=i.alignToPlotEdges(L,st,h,o);break;default:B=i.radialDistributionX(n,p,b,at)}L._attr={visibility:N,align:x.alignment},L._pos={x:B+y((U=p.options.dataLabels||{}).x,c.x)+({left:e,right:-e}[x.alignment]||0),y:b+y(U.y,c.y)-10},x.final.x=B,x.final.y=b,y(c.crop,!0)&&(a=L.getBBox().width,at=null,B-a<e&&1===st?(at=Math.round(a-B+e),R[3]=Math.max(at,R[3])):B+a>h-e&&0===st&&(at=Math.round(B+a-h+e),R[1]=Math.max(at,R[1])),0>b-u/2?R[0]=Math.max(Math.round(u/2-b),R[0]):b+u/2>t&&(R[2]=Math.max(Math.round(b+u/2-t),R[2])),L.sideOverflow=at)}}}),0===j(R)||this.verifyDataLabelOverflow(R))&&(this.placeDataLabels(),this.points.forEach(function(V){var st;U=g(c,V.options.dataLabels),(P=y(U.connectorWidth,1))&&(D=V.connector,(L=V.dataLabel)&&L._pos&&V.visible&&0<V.labelDistance?(N=L._attr.visibility,(st=!D)&&(V.connector=D=r.renderer.path().addClass("highcharts-data-label-connector highcharts-color-"+V.colorIndex+(V.className?" "+V.className:"")).add(n.dataLabelsGroup),r.styledMode||D.attr({"stroke-width":P,stroke:U.connectorColor||V.color||"#666666"})),D[st?"attr":"animate"]({d:V.getConnectorPath()}),D.attr("visibility",N)):D&&(V.connector=D.destroy()))}))}function T(){this.points.forEach(function(n){var r,d=n.dataLabel;d&&n.visible&&((r=d._pos)?(d.sideOverflow&&(d._attr.width=Math.max(d.getBBox().width-d.sideOverflow,0),d.css({width:d._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),d.shortened=!0),d.attr(d._attr),d[d.moved?"animate":"attr"](r),d.moved=!0):d&&d.attr({y:-9999})),delete n.distributeBox},this)}function E(n){var d=this.center,r=this.options,c=r.center,e=r.minSize||80,h=null!==r.size;if(!h){if(null!==c[0])var t=Math.max(d[2]-Math.max(n[1],n[3]),e);else t=Math.max(d[2]-n[1]-n[3],e),d[0]+=(n[3]-n[1])/2;null!==c[1]?t=O(t,e,d[2]-Math.max(n[0],n[2])):(t=O(t,e,d[2]-n[0]-n[2]),d[1]+=(n[0]-n[2])/2),t<d[2]?(d[2]=t,d[3]=Math.min(r.thickness?Math.max(0,t-2*r.thickness):Math.max(0,C(r.innerSize||0,t)),t),this.translate(d),this.drawDataLabels&&this.drawDataLabels()):h=!0}return h}var I=[],k={radialDistributionY:function(n){return n.top+n.distributeBox.pos},radialDistributionX:function(n,d,r,c){return n.getX(r<d.top+2||r>d.bottom-2?c:r,d.half,d)},justify:function(n,d,r){return r[0]+(n.half?-1:1)*(d+n.labelDistance)},alignToPlotEdges:function(n,d,r,c){return n=n.getBBox().width,d?n+c:r-n-c},alignToConnectors:function(n,d,r,c){var h,e=0;return n.forEach(function(t){(h=t.dataLabel.getBBox().width)>e&&(e=h)}),d?e+c:r-e-c}};S.compose=function(n){_.compose(z),-1===I.indexOf(n)&&(I.push(n),(n=n.prototype).dataLabelPositioners=k,n.alignDataLabel=$,n.drawDataLabels=M,n.placeDataLabels=T,n.verifyDataLabelOverflow=E)}}(v||(v={})),v}),ct(F,"Extensions/OverlappingDataLabels.js",[F["Core/Chart/Chart.js"],F["Core/Utilities.js"]],function(_,Y){function A(O,m){var g=!1;if(O){var y=O.newOpacity;O.oldOpacity!==y&&(O.alignAttr&&O.placed?(O[y?"removeClass":"addClass"]("highcharts-data-label-hidden"),g=!0,O.alignAttr.opacity=y,O[O.isOld?"animate":"attr"](O.alignAttr,null,function(){m.styledMode||O.css({pointerEvents:y?"auto":"none"})}),J(m,"afterHideOverlappingLabel")):O.attr({opacity:y})),O.isOld=!0}return g}var J=Y.fireEvent,$=Y.isArray,Z=Y.isNumber,z=Y.objectEach,j=Y.pick;(0,Y.addEvent)(_,"render",function(){var O=this,m=[];(this.labelCollectors||[]).forEach(function(g){m=m.concat(g())}),(this.yAxis||[]).forEach(function(g){g.stacking&&g.options.stackLabels&&!g.options.stackLabels.allowOverlap&&z(g.stacking.stacks,function(y){z(y,function(C){C.label&&m.push(C.label)})})}),(this.series||[]).forEach(function(g){var y=g.options.dataLabels;g.visible&&(!1!==y.enabled||g._hasPointLabels)&&((y=function(C){return C.forEach(function(v){v.visible&&($(v.dataLabels)?v.dataLabels:v.dataLabel?[v.dataLabel]:[]).forEach(function(S){var M=S.options;S.labelrank=j(M.labelrank,v.labelrank,v.shapeArgs&&v.shapeArgs.height),M.allowOverlap?(S.oldOpacity=S.opacity,S.newOpacity=1,A(S,O)):m.push(S)})})})(g.nodes||[]),y(g.points))}),this.hideOverlappingLabels(m)}),_.prototype.hideOverlappingLabels=function(O){var C,v,S,m=this,g=O.length,y=m.renderer,M=!1,T=function(k){var n,c,d=k.box?0:k.padding||0,r=n=0;if(k&&(!k.alignAttr||k.placed)){var e=k.alignAttr||{x:k.attr("x"),y:k.attr("y")},h=k.parentGroup;return k.width||(n=k.getBBox(),k.width=n.width,k.height=n.height,n=y.fontMetrics(null,k.element).h),(c={left:"0",center:"0.5",right:"1"}[k.alignValue])?r=+c*(k.width-2*d):Z(k.x)&&Math.round(k.x)!==k.translateX&&(r=k.x-k.translateX),{x:e.x+(h.translateX||0)+d-(r||0),y:e.y+(h.translateY||0)+d-n,width:k.width-2*d,height:k.height-2*d}}};for(v=0;v<g;v++)(C=O[v])&&(C.oldOpacity=C.opacity,C.newOpacity=1,C.absoluteBox=T(C));for(O.sort(function(k,n){return(n.labelrank||0)-(k.labelrank||0)}),v=0;v<g;v++){var E=(T=O[v])&&T.absoluteBox;for(C=v+1;C<g;++C){var I=(S=O[C])&&S.absoluteBox;!E||!I||T===S||0===T.newOpacity||0===S.newOpacity||"hidden"===T.visibility||"hidden"===S.visibility||I.x>=E.x+E.width||I.x+I.width<=E.x||I.y>=E.y+E.height||I.y+I.height<=E.y||((T.labelrank<S.labelrank?T:S).newOpacity=0)}}O.forEach(function(k){A(k,m)&&(M=!0)}),M&&J(m,"afterHideAllOverlappingLabels")}}),ct(F,"Core/Responsive.js",[F["Core/Utilities.js"]],function(_){var m,Y=_.extend,A=_.find,et=_.isArray,J=_.isObject,$=_.merge,Z=_.objectEach,z=_.pick,j=_.splat,O=_.uniqueKey;return function(g){var y=[];g.compose=function(v){return-1===y.indexOf(v)&&(y.push(v),Y(v.prototype,C.prototype)),v};var C=function(){function v(){}return v.prototype.currentOptions=function(S){var T=this,E={};return function M(I,k,n,d){var r;Z(I,function(c,e){if(!d&&-1<T.collectionsWithUpdate.indexOf(e)&&k[e])for(c=j(c),n[e]=[],r=0;r<Math.max(c.length,k[e].length);r++)k[e][r]&&(void 0===c[r]?n[e][r]=k[e][r]:(n[e][r]={},M(c[r],k[e][r],n[e][r],d+1)));else J(c)?(n[e]=et(c)?[]:{},M(c,k[e]||{},n[e],d+1)):n[e]=typeof k[e]>"u"?null:k[e]})}(S,this.options,E,0),E},v.prototype.matchResponsiveRule=function(S,M){var T=S.condition;(T.callback||function(){return this.chartWidth<=z(T.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=z(T.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=z(T.minWidth,0)&&this.chartHeight>=z(T.minHeight,0)}).call(this)&&M.push(S._id)},v.prototype.setResponsive=function(S,M){var T=this,E=this.options.responsive,I=this.currentResponsive,k=[];!M&&E&&E.rules&&E.rules.forEach(function(n){typeof n._id>"u"&&(n._id=O()),T.matchResponsiveRule(n,k)},this),(M=$.apply(void 0,k.map(function(n){return A((E||{}).rules||[],function(d){return d._id===n})}).map(function(n){return n&&n.chartOptions}))).isResponsiveOptions=!0,(k=k.toString()||void 0)!==(I&&I.ruleIds)&&(I&&this.update(I.undoOptions,S,!0),k?((I=this.currentOptions(M)).isResponsiveOptions=!0,this.currentResponsive={ruleIds:k,mergedOptions:M,undoOptions:I},this.update(M,S,!0)):this.currentResponsive=void 0)},v}()}(m||(m={})),m}),ct(F,"masters/highcharts.src.js",[F["Core/Globals.js"],F["Core/Utilities.js"],F["Core/Defaults.js"],F["Core/Animation/Fx.js"],F["Core/Animation/AnimationUtilities.js"],F["Core/Renderer/HTML/AST.js"],F["Core/FormatUtilities.js"],F["Core/Renderer/RendererUtilities.js"],F["Core/Renderer/SVG/SVGElement.js"],F["Core/Renderer/SVG/SVGRenderer.js"],F["Core/Renderer/HTML/HTMLElement.js"],F["Core/Renderer/HTML/HTMLRenderer.js"],F["Core/Axis/Axis.js"],F["Core/Axis/DateTimeAxis.js"],F["Core/Axis/LogarithmicAxis.js"],F["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],F["Core/Axis/Tick.js"],F["Core/Tooltip.js"],F["Core/Series/Point.js"],F["Core/Pointer.js"],F["Core/MSPointer.js"],F["Core/Legend/Legend.js"],F["Core/Chart/Chart.js"],F["Core/Axis/Stacking/StackingAxis.js"],F["Core/Axis/Stacking/StackItem.js"],F["Core/Series/Series.js"],F["Core/Series/SeriesRegistry.js"],F["Series/Column/ColumnSeries.js"],F["Series/Column/ColumnDataLabel.js"],F["Series/Pie/PieSeries.js"],F["Series/Pie/PieDataLabel.js"],F["Core/Series/DataLabel.js"],F["Core/Responsive.js"],F["Core/Color/Color.js"],F["Core/Time.js"]],function(_,Y,A,et,J,$,Z,z,j,O,m,g,y,C,v,S,M,T,E,I,k,n,d,r,c,e,h,t,o,l,s,f,w,X,R){return _.animate=J.animate,_.animObject=J.animObject,_.getDeferredAnimation=J.getDeferredAnimation,_.setAnimation=J.setAnimation,_.stop=J.stop,_.timers=et.timers,_.AST=$,_.Axis=y,_.Chart=d,_.chart=d.chart,_.Fx=et,_.Legend=n,_.PlotLineOrBand=S,_.Point=E,_.Pointer=k.isRequired()?k:I,_.Series=e,_.StackItem=c,_.SVGElement=j,_.SVGRenderer=O,_.Tick=M,_.Time=R,_.Tooltip=T,_.Color=X,_.color=X.parse,g.compose(O),m.compose(j),_.defaultOptions=A.defaultOptions,_.getOptions=A.getOptions,_.time=A.defaultTime,_.setOptions=A.setOptions,_.dateFormat=Z.dateFormat,_.format=Z.format,_.numberFormat=Z.numberFormat,_.addEvent=Y.addEvent,_.arrayMax=Y.arrayMax,_.arrayMin=Y.arrayMin,_.attr=Y.attr,_.clearTimeout=Y.clearTimeout,_.correctFloat=Y.correctFloat,_.createElement=Y.createElement,_.css=Y.css,_.defined=Y.defined,_.destroyObjectProperties=Y.destroyObjectProperties,_.discardElement=Y.discardElement,_.distribute=z.distribute,_.erase=Y.erase,_.error=Y.error,_.extend=Y.extend,_.extendClass=Y.extendClass,_.find=Y.find,_.fireEvent=Y.fireEvent,_.getMagnitude=Y.getMagnitude,_.getStyle=Y.getStyle,_.inArray=Y.inArray,_.isArray=Y.isArray,_.isClass=Y.isClass,_.isDOMElement=Y.isDOMElement,_.isFunction=Y.isFunction,_.isNumber=Y.isNumber,_.isObject=Y.isObject,_.isString=Y.isString,_.keys=Y.keys,_.merge=Y.merge,_.normalizeTickInterval=Y.normalizeTickInterval,_.objectEach=Y.objectEach,_.offset=Y.offset,_.pad=Y.pad,_.pick=Y.pick,_.pInt=Y.pInt,_.relativeLength=Y.relativeLength,_.removeEvent=Y.removeEvent,_.seriesType=h.seriesType,_.splat=Y.splat,_.stableSort=Y.stableSort,_.syncTimeout=Y.syncTimeout,_.timeUnits=Y.timeUnits,_.uniqueKey=Y.uniqueKey,_.useSerialIds=Y.useSerialIds,_.wrap=Y.wrap,o.compose(t),f.compose(e),C.compose(y),v.compose(y),s.compose(l),S.compose(y),w.compose(d),r.compose(y,d,e),_}),F["masters/highcharts.src.js"]._modules=F,F["masters/highcharts.src.js"]},Ot.exports?(ct.default=ct,Ot.exports=At.document?ct(At):ct):void 0!==(Tt=function(){return ct(At)}.call(Lt,St,Lt,Ot))&&(Ot.exports=Tt)}}]);