  



var tableau_script=document.createElement("script");tableau_script.setAttribute("src","https://public.tableau.com/javascripts/api/viz_v1.js");document.head.appendChild(tableau_script)
function setLeftNavParent(){}var leftNavParentItemHref=null
$(document).ready(function(){$(".nav-tabs a").click(function(n){n.preventDefault();$(this).tab("show")});$('a[data-toggle="tab"]').on("click",function(){history.pushState(null,null,$(this).attr("href"))});showTabFromUrl=function(){hashToUse=location.hash.substr(0,3)=="#/#"?location.hash.substr(2):location.hash;var n=$('[href="'+hashToUse+'"]');n.length?n.tab("show"):$(".nav-tabs a:first").tab("show")};window.addEventListener?window.addEventListener("popstate",showTabFromUrl,!1):window.attachEvent("popstate",showTabFromUrl);showTabFromUrl()})

function setChartDefaults(n,t,i,r,u,f,e){n||(n=650);t||(t=450);i||(i="Source: Atlanta Fed");r||(r=50);u||(u=1);e||(e="");var s=[{condition:{maxWidth:500},chartOptions:{legend:{itemStyle:{font:"10px "+ChartFontFamily}},subtitle:{style:{font:"11px "+ChartFontFamily}},title:{style:{font:"bold 13px "+ChartFontFamily}},xAxis:{labels:{style:{font:"10px "+ChartFontFamily}},title:{style:{font:"10px "+ChartFontFamily}}},yAxis:[{labels:{style:{font:"10px "+ChartFontFamily}},title:{style:{font:"10px "+ChartFontFamily}}},{labels:{style:{font:"10px "+ChartFontFamily}},title:{style:{font:"10px "+ChartFontFamily},text:""}}],rangeSelector:{buttonPosition:{align:"left",x:-20},buttonTheme:{style:{fontSize:"10px",fontFamily:ChartFontFamily}},inputStyle:{fontSize:"10px",fontFamily:ChartFontFamily},labelStyle:{fontSize:"10px",fontFamily:ChartFontFamily}}}}],a=f?["#8a3ffc","#33b1ff","#007d79","#ff7eb6","#fa4d56","#fff1f1","#6fdc8c","#4589ff","#d12771","#d2a106","#08bdba"]:["#0E4768","#768F40","#F5892F","#581F54","#5588A3","#084225","#B59236","#8B4823","#756A5C","#A01D23","#000000","#B89078","#CF8788","#AB8EA9","#9BB4A9","#B5C7D1"];var h="14px",l="13px ",c="12px",o="10px ";e=="small"?(h="18px",l="17px ",c="16px",o="14px ",s=[]):e=="regular"?(h="20px",l="19px ",c="18px",o="16px ",s=[]):e=="large"&&(h="24px",l="23px ",c="22px",o="20px ",s=[]);Highcharts.setOptions({chart:{borderColor:MediumGray,borderWidth:u,zoomType:"x",style:{color:DarkGray,fontFamily:ChartFontFamily,fontSize:h}},colors:a,credits:{enabled:!0,text:"",style:{color:"#FFFFFF",font:"9px "+ChartFontFamily},position:{align:"right",y:-10}},exporting:{scale:1,allowHTML:!0,chartOptions:{chart:{height:t,width:n},legend:{enabled:!0},rangeSelector:{enabled:!1}},enableImages:!0,buttons:{contextButton:{text:"Export",menuItems:[{text:"Print this chart",onclick:function(){this.print();thisTitle=this.options.title.text;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"print",label:newTitle+" | "+document.title})}},{separator:!0},{text:"Save as PNG",onclick:function(){this.exportChart();thisTitle=this.options.title.text;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"png",label:newTitle+" | "+document.title})}},{text:"Save as JPEG",onclick:function(){this.exportChart({type:"image/jpeg"});thisTitle=this.options.title.text;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"jpeg",label:newTitle+" | "+document.title})}},{text:"Save as SVG",onclick:function(){this.exportChart({type:"image/svg+xml"});thisTitle=this.options.title.text;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"svg",label:newTitle+" | "+document.title})}},{text:"Save as PDF",onclick:function(){this.exportChart({type:"application/pdf"});thisTitle=this.options.title.text;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"pdf",label:newTitle+" | "+document.title})}}]}}},lang:{thousandsSep:",",noData:"No data are available for this selection."},legend:{enabled:!0,align:"right",backgroundColor:"#FFFFFF",borderRadius:5,borderWidth:1,layout:"horizontal",symbolWidth:20,verticalAlign:"top",itemStyle:{color:DarkGray,font:"13px "+ChartFontFamily,paddingTop:"2px",paddingBottom:"2px"},useHTML:!1,itemMarginTop:2,itemMarginBottom:2},navigation:{menuStyle:{fontFamily:ChartFontFamily,fontSize:"18px",color:DarkGray}},noData:{attr:{zIndex:10},style:{fontFamily:ChartFontFamily,fontWeight:"bold",fontSize:"18px",color:DarkGray}},plotOptions:{area:{marker:{enabled:!1}},line:{marker:{enabled:!1}},scatter:{marker:{enabled:!0}},spline:{marker:{enabled:!1}},series:{events:{hide:function(){thisTitle=this.chart.title.textStr;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"hideSeries",label:newTitle+" (series: "+this.name+") | "+document.title})},show:function(){thisTitle=this.chart.title.textStr;newTitle=thisTitle.replace("<br>",": ");newTitle=thisTitle.replace("<br />",": ");window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:"Highcharts",category:"Highcharts",action:"showSeries",label:newTitle+" (series: "+this.name+") | "+document.title})}}}},subtitle:{align:"left",style:{color:DarkGray,font:"14px "+ChartFontFamily},x:5},title:{align:"left",style:{color:"#000000",font:"18px "+ChartFontFamily},x:5,y:15},xAxis:{lineColor:DarkGray,lineWidth:2,tickmarkPlacement:"on",labels:{style:{fontSize:o}},title:{style:{fontSize:o}}},yAxis:{lineColor:DarkGray,lineWidth:0,tickmarkPlacement:"on",labels:{style:{fontSize:o}},title:{style:{fontSize:o}},plotLines:[{value:0,color:"#ABABAB",width:2,zIndex:1}]},tooltip:{style:{fontFamily:ChartFontFamily,fontSize:c}},rangeSelector:{enabled:!0,verticalAlign:"top",inputDateFormat:"%b %Y",buttons:[{type:"year",count:1,text:"1y"},{type:"year",count:5,text:"5y"},{type:"year",count:10,text:"10y"},{type:"year",count:20,text:"20y"},{type:"all",text:"All"}],buttonTheme:{fill:LightGray,stroke:MediumGray,style:{color:DarkGray,fontSize:"14px",fontFamily:ChartFontFamily}},inputStyle:{color:DarkGray,fontSize:"14px",fontFamily:ChartFontFamily},labelStyle:{color:DarkGray,fontSize:"14px",fontFamily:ChartFontFamily}},responsive:{rules:s}})}function setHighstockDatePickers(n){var t=n.xAxis[0].getExtremes();setTimeout(function(){$("input.highcharts-range-selector",$("#"+n.options.chart.renderTo)).datepicker({minDate:new Date(t.dataMin+864e5),maxDate:new Date(t.dataMax+864e5)})},0);$.datepicker.setDefaults({dateFormat:"MM yy",changeMonth:!0,changeYear:!0,showButtonPanel:!0,onClose:function(){var n=$("#ui-datepicker-div .ui-datepicker-month :selected").val(),t=$("#ui-datepicker-div .ui-datepicker-year :selected").val();$(this).datepicker("setDate",new Date(t,n,1))},beforeShow:function(){(selDate=$(this).val()).length>0&&(iYear=selDate.substring(selDate.length-4,selDate.length),iMonth=jQuery.inArray(selDate.substring(0,selDate.length-5),$(this).datepicker("option","monthNames")),$(this).datepicker("option","defaultDate",new Date(iYear,iMonth,1)),$(this).datepicker("setDate",new Date(iYear,iMonth,1)))}})}function setChartBranding(n,t,i,r,u){t||(t=650);i||(i=450);r||(r="Source: Atlanta Fed");u||(u=50);n.update({exporting:{chartOptions:{chart:{events:{load:function(){this.renderer.text(r,15,i-u).css({color:"#756A5B",font:"11px IBM Plex Sans, Arial, sans-serif",width:t-50}).add();this.renderer.image("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASgAAAAUCAYAAAA+yKB7AAAACXBIWXMAAAsTAAALEwEAmpwYAAAF8WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIyLTAzLTA3VDEzOjU3OjUyLTA1OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0wMy0wN1QxNDoyMToxMi0wNTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMi0wMy0wN1QxNDoyMToxMi0wNTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiNWYwODQ1NC01YzMxLTBiNDEtYTE0Yi1jNjhkZTliZWE0ODEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmNGI4MGZiOC0xN2Y4LWI3NDUtOTRkMi04ZjkyMmNhOGM1NWIiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDplM2NmMzkzOC1jMDBlLTAzNDEtOGY2ZS00N2RkMzMyNDA1MjIiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmUzY2YzOTM4LWMwMGUtMDM0MS04ZjZlLTQ3ZGQzMzI0MDUyMiIgc3RFdnQ6d2hlbj0iMjAyMi0wMy0wN1QxMzo1Nzo1Mi0wNTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpiNWYwODQ1NC01YzMxLTBiNDEtYTE0Yi1jNjhkZTliZWE0ODEiIHN0RXZ0OndoZW49IjIwMjItMDMtMDdUMTQ6MjE6MTItMDU6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6oGq8iAAAQ6klEQVR4nO2cedxWVbXHvy8oAiK8gIiITGYkci+mhkOaAxXxUVNI1PSqmOaQXsXydu/NIafrLc0xB/JmeCunFHA2NU3FOSUUQRFlEARnmVEG/fXHb+3O4XCeh+d9ZfiU7+/zeT777HXW3mefPay91trrPHWSRgD9gceAbsAXgAXALGA6sBzoBfQA6oF3gInAbsHzfWAxTWhCE5qwhtEMEPBX4EagBTAPGAf8BugEfBG4DngcmB/lHohfa9a/cGqGBWuL9dyOjaIddeu5HU1Ys6gHuqyjZ/UEjgR2BDZcB8/bEmi/Dp7TaNRJ6gEMBQ4HJgBvAZtg7WhjoCXwYdAAOgJ7AzcANwOvldT7r1i4vQq0jTKfxL0NsFCbB8wGljay7V8EbolnvRH59YGvYQHeG3gS2L0C37bAFsBk3JcdgU+B5rivZ6zthv6DYDugAzAFaBfXwhvRdODNddSO44GzgK7AL4Hha/l5hwDnAGOB44DReF1WwobYslmK53+taAaMwvN2U2AX4NmGN3fdYAP8cgI+wkLnS0A/LF3fxoKlB7ACa1A3Y8HVnnLhBHAwcGZcLwPm4oVI1Nceazy740XdGMwE/gDsQCY81wcmAPcAP8L9WQnfAc6P6+VY6IM3gHZYQH0bm8+fZxyJ+xK8+ObFdWs8zhNxP81Yy+34I/BN4EA8XmsT2+DNdhjwOyygVodvAvfGdTcqC+4d8BpM8+pTYCTw1cgva0R7G4OdgYXAyw0p1CzSjbGA2groDkzCAqAfsDWeDJOBzXFnghdWJZwFDI7rB6Ncb6BPXKcJ2HyVkrVjKfALLFzXp4CaD1wS19X65H+w5gnwKFmfdMA7ZU/gJbwxfJ5xGtncuYusn9oBxwD/gvup3Vpux0zg2rhuVo1xDeDsSG+MdFNs0VTD4Nz1d6vw3Q6cFNfJ/XAP615ruhc4tqGFUsffhs2xwbhz9sG7xjV48U0D9sMScDAWLL9dTd1LC+lc4P24XlDCX4cX60arqbc5mb+pWZRTBd5m2JSqxT/VHO/SZWiJ+6XSRK3V75T6Iu1aC/CONhr3NVjTKsPG2B9SDc2Dp5omR9zvWAMfuO+qCd5a0R6/Qy1I/fRxpAvwGI8ExgBtgEEl5Tai+jgVUUd1X8+aFEz1VBaqBwNPkLlBPiB79zJsgTe7oyNfSZjtihWO2ZGvtE7K0JHaxws89yr15cCob06V8vWUzO80AJOBP0V6CXAumZ/kO8DXgQuwr2U8cD/wTAMaX8Q9rGz7HgcsAV7HA3NThXJXYFNzKfZR7IT9N2UC4lSsFU4J/usK98/D5uptwAHYvH0HHxhsETz1wEX4XWfiCXRxje/YULwXaccCvQM2g+diNf4dYEBJ+bNw37wNvIjHcWRJfT8n67+luB8SOmFBOQa4HNgXeBpvLCODZxTWYG4BXgG+EfR9sOb9SKQ9gj4g2jwDC5qnS9rUECyKNK991wMX4vk0i/Jx2jPa/DCeG4PwJrwMz7lafUxX4BPvibiv91gN/+bAn+O5LwFX5e5dG21OBz3PU10bShiG3/96rI1vR2bZJNwHPBXXJ2L/3Z011D0k2jsB9/UrJXUfjd0rj2Htfziee8uwy2jvHO8j+EAN4BS8jvLre2esKY/Dc/xDLNAMSUjaS9Jtks6WtETSSEmXSdpZ0suS/irpIknzJF0oabSkw6Nspd8gGaMK9JMkbZfLnxd8F0nqJOmQyL9UKHdX0B+UdICkSyQ9E7TZBd5Lg36upI6ShkX+mRzP5cowTtJhkh6I/EnB82rkvy6pnaQbIv9/hed1DfoLq+mTXYPvnpJ7v4p7Q0vqnSNpJ0k9c208IMd3TtB+JqmXpIGSpgZtixzf3UH7gaQOkn4c+RvifhtJ9wVthaQxko6S9HbQdpH0ZXmOSJ4LbaLsJpKuDfpPgzYw8ndK6iZpN3kOSVLnKv2U5s7vSu69XFJ+ctC+Ee24OfL5cfqapDeC/ma85xmSTpM0P+jfKzzrW0G/NEcbGrQJko6R1L3Ke3QP3icl1UnqF/kz4n5/eS1J0qmSjpC0TZX60u9FSb+P6+FR/icFnv0k3Rr37pF0oqTjcvfvjHvb52gnB22EpGaSDlWGzXN831c2B6bEOxwr6Yocf9fg3V/S7UG7M54xLO7tEfRHJLWVtLuk94O2m6S/C6jNJPWWdE3cvFDSb6KBl0q6PtcRY+RJ2qVKB+Yn2QOSWskTapug/XvwbB/5iwtlBwf91Mh/O/K3FPh2DvqcHG3PoJ1R4B0W9KNytF8HbXjkr4z8TpFP6JYrkwamZY7WUAH1cOTrIx0S9GcK/A8HvW2B/q6kxbn8e5IWFngOL7T9sMgfWeD7edB3y9HSgt8x8s9KWq5M2J0f948u1DVCXrhI2ih4xhZ4egf9Bq3aP8W585wsEI6Vx+0vsnDpkePdRBnywmJx0PLjtFXQligTrEgaEPT7C+0oE1DPSRpfpe353/uSXivQxsvjl/I3lrSz2q9ntH+XyH8hyk8s4f23uPfDkntlAmpE0M7N0c4OWlF4HxH0MQV6mk8n52jHB+2UAu+JQR+do6W1MELS3028d7GPoBc+6nwdmxUDsd/pOeyLOB2bfl1wOEIt2DvUxOdC3QOr/ACHRvqnQpkJke4X6b6RjizwPR9p2xzt4EifKvC+EOngHC35u/4S6SnYjk75/ePZs3JlpkfahsZjD2yGTcR+gRvwwcEuOZ6O2Dx6mVV9dvdif9mOkZ8T7dkvxzMGHyW/G/nvRVrsl8cjHZyjpf6cFOlXgVZkPoTrI/1hoa4Dcfwc2GyGVcd2CjYHDmT16ItN0NPwqXB/bG7Oy/EsJBunmTn6jEjzByhpvo8nMxVTHhykXIbkD3oCz5nta2j7EXgMzyzQN2Ll+ToEz/dqPqc8jsHvllwsU7E51xf3Tx7JDK7Vl/YL7G65JEdLp4P1Bd5UZ9HZntZO9xwtuWCKPrCb4nk/ytHSGHaGlZ2kz2Lb/FZsX47Fk20QcBD2MUzDAuwhasdDUbYdFoLTsSMTsglxFZ4wLbD/IDnbkgDpFum8Qt1lTr9tI70W+7U2xAsi1VUtME3Bm3A3Hohh+IRzQa4tnwVPAnthJ+ZT2Ha/qsDTJ9KtsF8stf8jfOIHngTj8IT6bbR3Pj45vRr7CBK2jvQOsriiZWQLuHOV9n5SyE+LuvfEC2MSXmgAIyLdLtLjsPBrGc/9BM+7T/GcSMG/ZRiFww7yeBjPg0Fkvo00TkfiObWQbIGUzZEiLY15pYX8LvAf+OuJX1Vpbx5pQ3i0QO9Dtsl1wYL/jzXWCRbs83H4wDZ4809CZH+sCDQW0+L3FbzBvEXmDyrOgUpIB0C1HMDMA36N5/gZWAak9bu0rJLpWAJ2xzFKz2Mn1gZ4t5+FHekNwZJI58dvON6JIFt0V2HtqiuW+svwbv1B3G9Voe4y53jivRJrB12i/R9hp2a1BVHE+XgHnB11fUzDTjYqIe3eT2Pn7n9hp27eUZtOHifjXXMzvIBa4PeYGyk4dmYGHuzeeEM5CB8CHBY8adc+D49jPRbeC7FGO6+B73AdFlBDsIA6nkzYQrbJ3IHHdyuyLxdm4z5ozFcI/43n6OlkAio/Tk/gsa50ItsYXIZDAG4CTsBC5w9V+Jtjy+F1MmsBMs3rz5HuFem91IYeeINsi8MHUn8mDXsoPixpLL6CFYp2kb5GdmBUKyppS2XojDfTflgjfInscEWwqoBahif6EXiQp+GAsDn4xCOdJH0W/DJ3nRbYdKzmTliVHcjMlGK4wKf4RfKCaiYWqq9is+6FRrYzBZveycrmT3+sNawpXIA111PwCdqrQU/RwS3ITJBqGIuDbJtj0/BGbEJfhnfVN/CJ4CQy0+2z4Fbg91h4Xog1tJNz91P75+J3epU1g4WRpnixffA43UVmVsKaHadp+Ch/Yyzwb8EL+IMK/KltRfM2nW6NijS5I56usR0nYW2vLFbuBay17tqA+oq4CwunbbFmBh7f/qydT7j+HwunIXgjA2uGA4m1XqbS3ox38v/F9u0S/BlJXxoWR1ELHoy0LI5jOPCTuE4a194Fns644z7K0dKuejCr4jRW1lKqvU/a7R4r0Nf0t0sLgZ/G9dk5+lS8g21LZi4ldMQmXPKDvUnWV5/ghZGi1tMOeEekZZ9PnE/mD6wVy7C50xMLw6msbKo8GmlZvfvi8I3GoGukr0e6c+F5CWXj1ND5m/hvj3QxXrBgDb0SUuR5Me7nVLzZ3h/5fbDWsILacDDeFMqQ4hIH52gN0WZ6YWvjbTLhBJkLoFiHKtCL96Gy6bxDpPmQpTRuKyoVnIYX+W3AfwLfwjb+hzTMPEoPSlpPWRDXrVj4HITV5y1xJ12M43CSw+xaPLDnYX8Q2P5Oztp2WPUH+83G44l0XdTXFWsnF5NNbMjMgLLJPDXSvKA7g2zB5+NwOlV5xzw6RFoMRr0onnco1qgS0juNxZ93tMdCejZ2gCdTsT0WUPlAwKRNjIv0cjyG5+DNpxM2u+7GGkjS0lrl3m2z1bxPOrRI45fHJOyP2hr73Ppi3+MPcBxcNcdtGo8kgLtFe/fCGyhkPrukqR2SK38m1cep2P+dcrx5/jReeUf7SNynh1L5k5Q5WHPMH3pcE++RYth64bVxR4U6ihiAzZ/RFe6nRX4C2bilgNf0Hvl4phR8m2LSZkSbN8eCk2j/CRWeVx9p2wI9PSt/iJTa0R4LzZ6RT5p82sR6Aj+Oawu4Go82kXS1HOdSC++5cVS4XNI7cpzJoRV4W8mxTUUU46y2kcMJ8jhL0mOSPpaPc/sEbztJj5fUeWDcr5OPlJdLWiZprhwXU2zb6EL5c5XFDkk+7u4rH/t+HL8JymJA8r/To8xS+Qh8vFYO1dhO0lvB83SOno6K83iqUPekeO5Dcf1p8O1f4Osl6ZWS+nZVdmQ9Jd5jYbTz6pJ3yf8mRh3tK9y/quR5P6tS30XR/o8lfShplhxaMDvKLpHDTvJlRhXqP0s+Wk9IMVgrlI3TuCi7vTw/P4rfZDkG6Mgouzx+dwT/fpIW5eq+sMJ7DJDH+j55fi+SQ2DS/VT/gCp9kX7bR9sXyXFkpxXuD5fncJo/KbShuaQPcm29Xp77D0bblgb9+OAfqpXxohyXOCPyVwbfBZFfEel1QU99XuyzLnKfJ6T4tm0lLcjR58phBinm8aE6qWatd2+svRxVA293vBNPC6m5JfYzzV1Nmd2wXf8IlT/Q3B37Wh7Apk13Vj5ezqMXPiJ/G5sA6SSiLupYiCO4ewatzE/SN9r1MpmpuSfeDW/FO+5W8X6tsdn5Gqt+hLkl3omn4j5J//ZQfM9NsSY0HfvYwJrZ7lgTfJLsFChhk3iXnljjewtrwJWOrvtgh+hUVg47aIlPwZLPsRd2wFb7Wr411oYWVeHpgPusDp/CVdPEe0Q7puPduR73QzPsyH+/QrnVjVOLqHsa7q9OeAdvg/ttOtasumATp1M8exrWKlrj8doM+6Jm4TEVlftnC/x/aXOwCZYf65tx1HgrVh9i0Dae+0609T0y/y14znWOd6iL9r6BNZfWwJfjGS9FG/rgtTgXj/eHufraYb9zS+yTWoDn3T7Yl/kC7scNsdbVDa+B14OvDav2GUHvh11Gr5BpVS2wbOmGXT4z8fgMBt5siIDaGMfZLMZ+kctY+195N6EJ/yyow+vnGSxgVuBT8l2qFfq8oyEfQy7GJxdzsT9oTTvMm9CEf2YMxRrJ/lhDaU5tf6vyuUZDNCio/s8BTWhCEyqjHz7+f4Lsn0LuW68t+gfA3wDOy8qrzHNSRQAAAABJRU5ErkJggg==",15,i-28,296,20).attr({zIndex:3}).add();this.renderer.rect(1,i-34,t-3,32,0).attr({"stroke-width":0,fill:"#000000",zIndex:2}).add();this.update({credits:{text:"Exported on: "+Highcharts.dateFormat("%A, %B %e, %Y",Date.now())}})}}}}}});n.hasOwnProperty("currentResponsive")?(n.renderer.text(r,15,i-u,!0).css({color:"#756A5B",font:"9px IBM Plex Sans, Arial, sans-serif",marginRight:"15px",wordWrap:"break-word",whiteSpace:"normal",lineHeight:"normal"}).add(),n.update({exporting:{buttons:{contextButton:{text:null}}}})):n.renderer.text(r,15,i-u,!0).css({color:"#756A5B",font:"11px IBM Plex Sans, Arial, sans-serif",marginRight:"15px",wordWrap:"break-word",whiteSpace:"normal",lineHeight:"140%"}).add();n.renderer.image("https://www.frbatlanta.org/-/media/images/logos/atlantafed-highcharts-logo.png",15,i-28,296,20).attr({zIndex:3}).add();n.renderer.rect(1,i-36,t-3,34,0).attr({"stroke-width":0,fill:"#000000",zIndex:2}).add()}var ChartFontFamily="IBM Plex Sans, Arial, sans-serif",DarkGray="#6F7070",MediumGray="#AFB0AE",LightGray="#F8F9FA",RecessionGray="rgba(175,176,174,0.3)",recessionBands;typeof recessionBands=="undefined"&&(recessionBands=[{id:"recession",color:RecessionGray,from:Date.UTC(1923,4,1),to:Date.UTC(1924,5,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1926,9,1),to:Date.UTC(1927,10,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1929,7,1),to:Date.UTC(1933,2,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1937,4,1),to:Date.UTC(1938,5,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1945,1,1),to:Date.UTC(1945,9,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1948,10,1),to:Date.UTC(1949,9,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1953,6,1),to:Date.UTC(1954,4,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1957,7,1),to:Date.UTC(1958,3,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1960,3,1),to:Date.UTC(1961,1,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1969,11,1),to:Date.UTC(1970,10,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1973,10,1),to:Date.UTC(1975,2,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1980,0,1),to:Date.UTC(1980,6,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1981,6,1),to:Date.UTC(1982,10,1)},{id:"recession",color:RecessionGray,from:Date.UTC(1990,6,1),to:Date.UTC(1991,2,1)},{id:"recession",color:RecessionGray,from:Date.UTC(2001,2,1),to:Date.UTC(2001,10,1)},{id:"recession",color:RecessionGray,from:Date.UTC(2007,11,1),to:Date.UTC(2009,5,1)},{id:"recession",color:RecessionGray,from:Date.UTC(2020,1,1),to:Date.UTC(2020,3,1)}])
$(document).ready(function(){var n=$(".WorkforceCurrentsChart").width(),t=$(".WorkforceCurrentsChart").height(),i="Note: High and low skill is determined by the demand for employees with a four-year college degree. The bars represent averages weighted by employment. Here, low wage falls below the national median wage, high wage above it.<br />Source: Author's calculations using Manyika et al. 2017, Frey and Osborne 2017, Burning Glass Technologies, and U.S. Bureau of Labor Statistics’ Occupational Employment Statistics, 2017",r,u;setChartDefaults(n,t,i,95);r={chart:{marginBottom:160,marginRight:20,renderTo:"container_AutomationEmployment",type:"bar"},exporting:{chartOptions:{legend:{enabled:!0}},filename:"atlanta-fed_economy-matters_small-business-snapshot-firm-size"},legend:{floating:!1,x:-15,itemWidth:n*.4,width:n*.8},subtitle:{enabled:!1},title:{text:"Automation potential by wages and skill levels (2017)",width:n*.8},plotOptions:{column:{borderWidth:0,groupPadding:.1}},tooltip:{formatter:function(){var n='<span style="font-size: 14px;">'+this.x+"<\/span>";return $.each(this.points,function(t,i){n+='<br /><span style="color: '+i.series.color+'; font-weight: bold;">'+i.series.name+"<\/span>: "+Highcharts.numberFormat(i.y,1)+"%"}),n},shared:!0},xAxis:{categories:["Low-wage, low-skill employment","Low-wage, high-skill employment","Opportunity employment","High-wage, high-skill employment"].reverse(),type:"category",labels:{y:5}},yAxis:{title:{text:"Percent"},tickInterval:10,max:100,labels:{y:20,formatter:function(){return Highcharts.numberFormat(this.value,0)}}},series:[{name:"Computerization Probability (Frey and Osborne)",data:[78.4,66.5,49.8,24.6].reverse()},{name:"Technical Automation Potential (MGI)",data:[55.1,49.3,48.9,25.8].reverse()}]};u=new Highcharts.Chart(r);setChartBranding(u,n,t,i,95)})
"use strict";(function(n,t){"object"==typeof module&&module.exports?(t["default"]=t,module.exports=n.document?t(n):t):"function"==typeof define&&define.amd?define("highcharts/highcharts",function(){return t(n)}):(n.Highcharts&&n.Highcharts.error(16,!0),n.Highcharts=t(n))})("undefined"!=typeof window?window:this,function(n){function i(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}var t={};return i(t,"Core/Globals.js",[],function(){var i="undefined"!=typeof n?n:"undefined"!=typeof window?window:{},t;return function(n){n.SVG_NS="http://www.w3.org/2000/svg";n.product="Highcharts";n.version="9.2.2";n.win=i;n.doc=n.win.document;n.svg=n.doc&&n.doc.createElementNS&&!!n.doc.createElementNS(n.SVG_NS,"svg").createSVGRect;n.userAgent=n.win.navigator&&n.win.navigator.userAgent||"";n.isChrome=-1!==n.userAgent.indexOf("Chrome");n.isFirefox=-1!==n.userAgent.indexOf("Firefox");n.isMS=/(edge|msie|trident)/i.test(n.userAgent)&&!n.win.opera;n.isSafari=!n.isChrome&&-1!==n.userAgent.indexOf("Safari");n.isTouchDevice=/(Mobile|Android|Windows Phone)/.test(n.userAgent);n.isWebKit=-1!==n.userAgent.indexOf("AppleWebKit");n.deg2rad=Math.PI/180;n.hasBidiBug=n.isFirefox&&4>parseInt(n.userAgent.split("Firefox/")[1],10);n.hasTouch=!!n.win.TouchEvent;n.marginNames=["plotTop","marginRight","marginBottom","plotLeft"];n.noop=function(){};n.supportsPassiveEvents=function(){var i=!1,t;return n.isMS||(t=Object.defineProperty({},"passive",{get:function(){i=!0}}),n.win.addEventListener&&n.win.removeEventListener&&(n.win.addEventListener("testPassive",n.noop,t),n.win.removeEventListener("testPassive",n.noop,t))),i}();n.charts=[];n.dateFormats={};n.seriesTypes={};n.symbolSizes={};n.chartCount=0}(t||(t={})),t}),i(t,"Core/Utilities.js",[t["Core/Globals.js"]],function(n){function t(u,f,e,o){var l=f?"Highcharts error":"Highcharts warning",h,s,c;32===u&&(u=l+": Deprecated member");h=d(u);s=h?l+" #"+u+": www.highcharts.com/errors/"+u+"/":u.toString();"undefined"!=typeof o&&(c="",h&&(s+="?"),i(o,function(n,t){c+="\n - "+t+": "+n;h&&(s+=encodeURI(t)+"="+encodeURI(n))}),s+=c);ut(n,"displayError",{chart:e,code:u,message:s,params:o},function(){if(f)throw Error(s);r.console&&-1===t.messages.indexOf(s)&&console.warn(s)});t.messages.push(s)}function w(n,t){var r={};return i(n,function(i,f){u(n[f],!0)&&!n.nodeType&&t[f]?(i=w(n[f],t[f]),Object.keys(i).length&&(r[f]=i)):(u(n[f])||n[f]!==t[f])&&(r[f]=n[f])}),r}function b(n,t){return parseInt(n,t||10)}function l(n){return"string"==typeof n}function a(n){return n=Object.prototype.toString.call(n),"[object Array]"===n||"[object Array Iterator]"===n}function u(n,t){return!!n&&"object"==typeof n&&(!t||!a(n))}function v(n){return u(n)&&"number"==typeof n.nodeType}function k(n){var t=n&&n.constructor;return!(!u(n,!0)||v(n)||!t||!t.name||"Object"===t.name)}function d(n){return"number"==typeof n&&!isNaN(n)&&Infinity>n&&-Infinity<n}function e(n){return"undefined"!=typeof n&&null!==n}function g(n,t,r){var u;return l(t)?e(r)?n.setAttribute(t,r):n&&n.getAttribute&&((u=n.getAttribute(t))||"class"!==t||(u=n.getAttribute(t+"Name"))):i(t,function(t,i){n.setAttribute(i,t)}),u}function f(n,t){var i;n||(n={});for(i in t)n[i]=t[i];return n}function o(){for(var n,i=arguments,r=i.length,t=0;t<r;t++)if(n=i[t],"undefined"!=typeof n&&null!==n)return n}function y(t,i){n.isMS&&!n.svg&&i&&"undefined"!=typeof i.opacity&&(i.filter="alpha(opacity="+100*i.opacity+")");f(t.style,i)}function nt(n,t,i,r,u){return n=s.createElement(n),t&&f(n,t),u&&y(n,{padding:"0",border:"none",margin:"0"}),i&&y(n,i),r&&r.appendChild(n),n}function tt(n,t){return parseFloat(n.toPrecision(t||14))}function it(i,u,f){var e=n.getStyle||it,s;return"width"===u?(u=Math.min(i.offsetWidth,i.scrollWidth),f=i.getBoundingClientRect&&i.getBoundingClientRect().width,f<u&&f>=u-1&&(u=Math.floor(f)),Math.max(0,u-(e(i,"padding-left",!0)||0)-(e(i,"padding-right",!0)||0))):"height"===u?Math.max(0,Math.min(i.offsetHeight,i.scrollHeight)-(e(i,"padding-top",!0)||0)-(e(i,"padding-bottom",!0)||0)):(r.getComputedStyle||t(27,!0),(i=r.getComputedStyle(i,void 0))&&(s=i.getPropertyValue(u),o(f,"opacity"!==u)&&(s=b(s))),s)}function i(n,t,i){for(var r in n)Object.hasOwnProperty.call(n,r)&&t.call(i||n[r],n[r],r,n)}function rt(t,r,u){function o(i,r){var u=t.removeEventListener||n.removeEventListenerPolyfill;u&&u.call(t,i,r,!1)}function s(n){var f,u;t.nodeName&&(r?(u={},u[r]=!0):u=n,i(u,function(t,i){if(n[i])for(f=n[i].length;f--;)o(i,n[i][f].fn)}))}var e="function"==typeof t&&t.prototype||t,f;Object.hasOwnProperty.call(e,"hcEvents")&&(f=e.hcEvents,r?(e=f[r]||[],u?(f[r]=e.filter(function(n){return u!==n.fn}),o(r,u)):(s(f),f[r]=[])):(s(f),delete e.hcEvents))}function ut(t,i,r,u){var e,o,h;if(r=r||{},s.createEvent&&(t.dispatchEvent||t.fireEvent&&t!==n))e=s.createEvent("Events"),e.initEvent(i,!0,!0),r=f(e,r),t.dispatchEvent?t.dispatchEvent(r):t.fireEvent(i,r);else if(t.hcEvents){for(r.target||f(r,{preventDefault:function(){r.defaultPrevented=!0},target:t,type:i}),e=[],o=t,h=!1;o.hcEvents;)Object.hasOwnProperty.call(o,"hcEvents")&&o.hcEvents[i]&&(e.length&&(h=!0),e.unshift.apply(e,o.hcEvents[i])),o=Object.getPrototypeOf(o);h&&e.sort(function(n,t){return n.order-t.order});e.forEach(function(n){!1===n.fn.call(t,r)&&r.preventDefault()})}u&&!r.defaultPrevented&&u.call(t,r)}var et=n.charts,s=n.doc,r=n.win,h,c,p,ft;return(t||(t={})).messages=[],Math.easeInOutSine=function(n){return-.5*(Math.cos(Math.PI*n)-1)},c=Array.prototype.find?function(n,t){return n.find(t)}:function(n,t){for(var r=n.length,i=0;i<r;i++)if(t(n[i],i))return n[i]},i({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(i,r){n[r]=function(n){var u;return t(32,!1,void 0,(u={},u["Highcharts."+r]="use Array."+i,u)),Array.prototype[i].apply(n,[].slice.call(arguments,1))}}),ft=function(){var n=Math.random().toString(36).substring(2,9)+"-",t=0;return function(){return"highcharts-"+(p?"":n)+t++}}(),r.jQuery&&(r.jQuery.fn.highcharts=function(){var t=[].slice.call(arguments);if(this[0])return t[0]?(new n[l(t[0])?t.shift():"Chart"](this[0],t[0],t[1]),this):et[g(this[0],"data-highcharts-chart")]}),c={addEvent:function(t,i,r,u){var f,e;return void 0===u&&(u={}),f="function"==typeof t&&t.prototype||t,Object.hasOwnProperty.call(f,"hcEvents")||(f.hcEvents={}),f=f.hcEvents,n.Point&&t instanceof n.Point&&t.series&&t.series.chart&&(t.series.chart.runTrackerClick=!0),e=t.addEventListener||n.addEventListenerPolyfill,e&&e.call(t,i,r,n.supportsPassiveEvents?{passive:void 0===u.passive?-1!==i.indexOf("touch"):u.passive,capture:!1}:!1),f[i]||(f[i]=[]),f[i].push({fn:r,order:"number"==typeof u.order?u.order:Infinity}),f[i].sort(function(n,t){return n.order-t.order}),function(){rt(t,i,r)}},arrayMax:function(n){for(var t=n.length,i=n[0];t--;)n[t]>i&&(i=n[t]);return i},arrayMin:function(n){for(var t=n.length,i=n[0];t--;)n[t]<i&&(i=n[t]);return i},attr:g,clamp:function(n,t,i){return n>t?n<i?n:i:t},cleanRecursively:w,clearTimeout:function(n){e(n)&&clearTimeout(n)},correctFloat:tt,createElement:nt,css:y,defined:e,destroyObjectProperties:function(n,t){i(n,function(i,r){i&&i!==t&&i.destroy&&i.destroy();delete n[r]})},discardElement:function(n){h||(h=nt("div"));n&&h.appendChild(n);h.innerHTML=""},erase:function(n,t){for(var i=n.length;i--;)if(n[i]===t){n.splice(i,1);break}},error:t,extend:f,extendClass:function(n,t){var i=function(){};return i.prototype=new n,f(i.prototype,t),i},find:c,fireEvent:ut,getMagnitude:function(n){return Math.pow(10,Math.floor(Math.log(n)/Math.LN10))},getNestedProperty:function(n,t){for(n=n.split(".");n.length&&e(t);){var i=n.shift();if("undefined"==typeof i||"__proto__"===i)return;if(t=t[i],!e(t)||"function"==typeof t||"number"==typeof t.nodeType||t===r)return}return t},getStyle:it,inArray:function(n,i,r){return t(32,!1,void 0,{"Highcharts.inArray":"use Array.indexOf"}),i.indexOf(n,r)},isArray:a,isClass:k,isDOMElement:v,isFunction:function(n){return"function"==typeof n},isNumber:d,isObject:u,isString:l,keys:function(n){return t(32,!1,void 0,{"Highcharts.keys":"use Object.keys"}),Object.keys(n)},merge:function(){var t,n=arguments,r={},f=function(n,t){return"object"!=typeof n&&(n={}),i(t,function(i,r){"__proto__"!==r&&"constructor"!==r&&(n[r]=!u(i,!0)||k(i)||v(i)?t[r]:f(n[r]||{},i))}),n},e;for(!0===n[0]&&(r=n[1],n=Array.prototype.slice.call(n,2)),e=n.length,t=0;t<e;t++)r=f(r,n[t]);return r},normalizeTickInterval:function(n,t,i,r,u){var f=n,e;for(i=o(i,1),e=n/i,t||(t=u?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===r&&(1===i?t=t.filter(function(n){return 0==n%1}):.1>=i&&(t=[1/i]))),r=0;r<t.length&&!(f=t[r],u&&f*i>=n||!u&&e<=(t[r]+(t[r+1]||t[r]))/2);r++);return tt(f*i,-Math.round(Math.log(.001)/Math.LN10))},objectEach:i,offset:function(n){var t=s.documentElement;return n=n.parentElement||n.parentNode?n.getBoundingClientRect():{top:0,left:0,width:0,height:0},{top:n.top+(r.pageYOffset||t.scrollTop)-(t.clientTop||0),left:n.left+(r.pageXOffset||t.scrollLeft)-(t.clientLeft||0),width:n.width,height:n.height}},pad:function(n,t,i){return Array((t||2)+1-String(n).replace("-","").length).join(i||"0")+n},pick:o,pInt:b,relativeLength:function(n,t,i){return/%$/.test(n)?t*parseFloat(n)/100+(i||0):parseFloat(n)},removeEvent:rt,splat:function(n){return a(n)?n:[n]},stableSort:function(n,t){for(var u=n.length,r,i=0;i<u;i++)n[i].safeI=i;for(n.sort(function(n,i){return r=t(n,i),0===r?n.safeI-i.safeI:r}),i=0;i<u;i++)delete n[i].safeI},syncTimeout:function(n,t,i){return 0<t?setTimeout(n,t,i):(n.call(0,i),-1)},timeUnits:{millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},uniqueKey:ft,useSerialIds:function(n){return p=o(n,p)},wrap:function(n,t,i){var r=n[t];n[t]=function(){var n=Array.prototype.slice.call(arguments),u=arguments,t=this;return t.proceed=function(){r.apply(t,arguments.length?arguments:u)},n.unshift(r),n=i.apply(this,n),t.proceed=null,n}}},c}),i(t,"Core/Color/Palette.js",[],function(){return{colors:"#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1".split(" "),backgroundColor:"#ffffff",neutralColor100:"#000000",neutralColor80:"#333333",neutralColor60:"#666666",neutralColor40:"#999999",neutralColor20:"#cccccc",neutralColor10:"#e6e6e6",neutralColor5:"#f2f2f2",neutralColor3:"#f7f7f7",highlightColor100:"#003399",highlightColor80:"#335cad",highlightColor60:"#6685c2",highlightColor20:"#ccd6eb",highlightColor10:"#e6ebf5",positiveColor:"#06b535",negativeColor:"#f21313"}}),i(t,"Core/Chart/ChartDefaults.js",[t["Core/Color/Palette.js"]],function(n){return{panning:{enabled:!1,type:"x"},styledMode:!1,borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:6},position:{align:"right",x:-10,y:10}},zoomBySingleTouch:!1,width:null,height:null,borderColor:n.highlightColor80,backgroundColor:n.backgroundColor,plotBorderColor:n.neutralColor20}}),i(t,"Core/Color/Color.js",[t["Core/Globals.js"],t["Core/Utilities.js"]],function(n,t){var r=t.isNumber,u=t.merge,i=t.pInt;return t=function(){function t(i){this.rgba=[NaN,NaN,NaN,NaN];this.input=i;var r=n.Color;if(r&&r!==t)return new r(i);if(!(this instanceof t))return new t(i);this.init(i)}return t.parse=function(n){return n?new t(n):t.None},t.prototype.init=function(n){var r,u,i,f;if("object"==typeof n&&"undefined"!=typeof n.stops)this.stops=n.stops.map(function(n){return new t(n[1])});else if("string"==typeof n&&(this.input=n=t.names[n.toLowerCase()]||n,"#"===n.charAt(0)&&(u=n.length,i=parseInt(n.substr(1),16),7===u?r=[(i&16711680)>>16,(i&65280)>>8,i&255,1]:4===u&&(r=[(i&3840)>>4|(i&3840)>>8,(i&240)>>4|i&240,(i&15)<<4|i&15,1])),!r))for(i=t.parsers.length;i--&&!r;)f=t.parsers[i],(u=f.regex.exec(n))&&(r=f.parse(u));r&&(this.rgba=r)},t.prototype.get=function(n){var f=this.input,t=this.rgba,i;return"object"==typeof f&&"undefined"!=typeof this.stops?(i=u(f),i.stops=[].slice.call(i.stops),this.stops.forEach(function(t,r){i.stops[r]=[i.stops[r][0],t.get(n)]}),i):t&&r(t[0])?"rgb"===n||!n&&1===t[3]?"rgb("+t[0]+","+t[1]+","+t[2]+")":"a"===n?""+t[3]:"rgba("+t.join(",")+")":f},t.prototype.brighten=function(n){var u=this.rgba,t;if(this.stops)this.stops.forEach(function(t){t.brighten(n)});else if(r(n)&&0!==n)for(t=0;3>t;t++)u[t]+=i(255*n),0>u[t]&&(u[t]=0),255<u[t]&&(u[t]=255);return this},t.prototype.setOpacity=function(n){return this.rgba[3]=n,this},t.prototype.tweenTo=function(n,t){var u=this.rgba,i=n.rgba;return!r(u[0])||!r(i[0])?n.input||"none":(n=1!==i[3]||1!==u[3],(n?"rgba(":"rgb(")+Math.round(i[0]+(u[0]-i[0])*(1-t))+","+Math.round(i[1]+(u[1]-i[1])*(1-t))+","+Math.round(i[2]+(u[2]-i[2])*(1-t))+(n?","+(i[3]+(u[3]-i[3])*(1-t)):"")+")")},t.names={white:"#ffffff",black:"#000000"},t.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(n){return[i(n[1]),i(n[2]),i(n[3]),parseFloat(n[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(n){return[i(n[1]),i(n[2]),i(n[3]),1]}}],t.None=new t(""),t}(),t}),i(t,"Core/Time.js",[t["Core/Globals.js"],t["Core/Utilities.js"]],function(n,t){var u=n.win,e=t.defined,s=t.error,o=t.extend,h=t.isObject,c=t.merge,l=t.objectEach,r=t.pad,f=t.pick,a=t.splat,i=t.timeUnits,v=n.isSafari&&u.Intl&&u.Intl.DateTimeFormat.prototype.formatRange,y=n.isSafari&&u.Intl&&!u.Intl.DateTimeFormat.prototype.formatRange;return t=function(){function t(n){this.options={};this.variableTimezone=this.useUTC=!1;this.Date=u.Date;this.getTimezoneOffset=this.timezoneOffsetFunction();this.update(n)}return t.prototype.get=function(n,t){if(this.variableTimezone||this.timezoneOffset){var i=t.getTime(),r=i-this.getTimezoneOffset(t);return t.setTime(r),n=t["getUTC"+n](),t.setTime(i),n}return this.useUTC?t["getUTC"+n]():t["get"+n]()},t.prototype.set=function(n,t,i){if(this.variableTimezone||this.timezoneOffset){if("Milliseconds"===n||"Seconds"===n||"Minutes"===n&&0==this.getTimezoneOffset(t)%36e5)return t["setUTC"+n](i);var r=this.getTimezoneOffset(t);return r=t.getTime()-r,t.setTime(r),t["setUTC"+n](i),n=this.getTimezoneOffset(t),r=t.getTime()+n,t.setTime(r)}return this.useUTC||v&&"FullYear"===n?t["setUTC"+n](i):t["set"+n](i)},t.prototype.update=function(n){var t=f(n&&n.useUTC,!0);this.options=n=c(!0,this.options||{},n);this.Date=n.Date||u.Date||Date;this.timezoneOffset=(this.useUTC=t)&&n.timezoneOffset;this.getTimezoneOffset=this.timezoneOffsetFunction();this.variableTimezone=t&&!(!n.getTimezoneOffset&&!n.timezone)},t.prototype.makeTime=function(n,t,i,r,u,e){var o,s,h;return this.useUTC?(o=this.Date.UTC.apply(0,arguments),s=this.getTimezoneOffset(o),o+=s,h=this.getTimezoneOffset(o),s!==h?o+=h-s:s-36e5!==this.getTimezoneOffset(o-36e5)||y||(o-=36e5)):o=new this.Date(n,t,f(i,1),f(r,0),f(u,0),f(e,0)).getTime(),o},t.prototype.timezoneOffsetFunction=function(){var i=this,n=this.options,t=n.moment||u.moment;if(!this.useUTC)return function(n){return 6e4*new Date(n.toString()).getTimezoneOffset()};if(n.timezone){if(t)return function(i){return 6e4*-t.tz(i,n.timezone).utcOffset()};s(25)}return this.useUTC&&n.getTimezoneOffset?function(t){return 6e4*n.getTimezoneOffset(t.valueOf())}:function(){return 6e4*(i.timezoneOffset||0)}},t.prototype.dateFormat=function(t,i,u){if(!e(i)||isNaN(i))return n.defaultOptions.lang&&n.defaultOptions.lang.invalidDate||"";t=f(t,"%Y-%m-%d %H:%M:%S");var k=this,s=new this.Date(i),h=this.get("Hours",s),a=this.get("Day",s),y=this.get("Date",s),v=this.get("Month",s),p=this.get("FullYear",s),c=n.defaultOptions.lang,w=c&&c.weekdays,b=c&&c.shortWeekdays;return s=o({a:b?b[a]:w[a].substr(0,3),A:w[a],d:r(y),e:r(y,2," "),w:a,b:c.shortMonths[v],B:c.months[v],m:r(v+1),o:v+1,y:p.toString().substr(2,2),Y:p,H:r(h),k:h,I:r(h%12||12),l:h%12||12,M:r(this.get("Minutes",s)),p:12>h?"AM":"PM",P:12>h?"am":"pm",S:r(s.getSeconds()),L:r(Math.floor(i%1e3),3)},n.dateFormats),l(s,function(n,r){for(;-1!==t.indexOf("%"+r);)t=t.replace("%"+r,"function"==typeof n?n.call(k,i):n)}),u?t.substr(0,1).toUpperCase()+t.substr(1):t},t.prototype.resolveDTLFormat=function(n){return h(n,!0)?n:(n=a(n),{main:n[0],from:n[1],to:n[2]})},t.prototype.getTimeTicks=function(n,t,r,u){var s=this,v=[],w={},h=new s.Date(t),c=n.unitRange,l=n.count||1,y,a,p,b;if(u=f(u,1),e(t)){for(s.set("Milliseconds",h,c>=i.second?0:l*Math.floor(s.get("Milliseconds",h)/l)),c>=i.second&&s.set("Seconds",h,c>=i.minute?0:l*Math.floor(s.get("Seconds",h)/l)),c>=i.minute&&s.set("Minutes",h,c>=i.hour?0:l*Math.floor(s.get("Minutes",h)/l)),c>=i.hour&&s.set("Hours",h,c>=i.day?0:l*Math.floor(s.get("Hours",h)/l)),c>=i.day&&s.set("Date",h,c>=i.month?1:Math.max(1,l*Math.floor(s.get("Date",h)/l))),c>=i.month&&(s.set("Month",h,c>=i.year?0:l*Math.floor(s.get("Month",h)/l)),a=s.get("FullYear",h)),c>=i.year&&s.set("FullYear",h,a-a%l),c===i.week&&(a=s.get("Day",h),s.set("Date",h,s.get("Date",h)-a+u+(a<u?-7:0))),a=s.get("FullYear",h),u=s.get("Month",h),p=s.get("Date",h),b=s.get("Hours",h),t=h.getTime(),(s.variableTimezone||!s.useUTC)&&e(r)&&(y=r-t>4*i.month||s.getTimezoneOffset(t)!==s.getTimezoneOffset(r)),t=h.getTime(),h=1;t<r;)v.push(t),t=c===i.year?s.makeTime(a+h*l,0):c===i.month?s.makeTime(a,u+h*l):!y||c!==i.day&&c!==i.week?y&&c===i.hour&&1<l?s.makeTime(a,u,p,b+h*l):t+c*l:s.makeTime(a,u,p+h*l*(c===i.day?1:7)),h++;v.push(t);c<=i.hour&&1e4>v.length&&v.forEach(function(n){0==n%18e5&&"000000000"===s.dateFormat("%H%M%S%L",n)&&(w[n]="day")})}return v.info=o(n,{higherRanks:w,totalRange:c*l}),v},t.prototype.getDateFormat=function(n,t,r,u){var o=this.dateFormat("%m-%d %H:%M:%S.%L",t),e={millisecond:15,second:12,minute:9,hour:6,day:3},s="millisecond",f,h;for(f in i){if(n===i.week&&+this.dateFormat("%w",t)===r&&"00:00:00.000"===o.substr(6)){f="week";break}if(i[f]>n){f=s;break}if(e[f]&&o.substr(e[f])!=="01-01 00:00:00.000".substr(e[f]))break;"week"!==f&&(s=f)}return f&&(h=this.resolveDTLFormat(u[f]).main),h},t}(),t}),i(t,"Core/DefaultOptions.js",[t["Core/Chart/ChartDefaults.js"],t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Color/Palette.js"],t["Core/Time.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f){var o,e,s;return t=t.parse,o=f.merge,e={colors:r.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:n,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:r.neutralColor80}},legend:{enabled:!0,align:"center",alignColumns:!0,className:"highcharts-no-tooltip",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:r.neutralColor40,borderRadius:0,navigation:{activeColor:r.highlightColor100,inactiveColor:r.neutralColor20},itemStyle:{color:r.neutralColor80,cursor:"pointer",fontSize:"12px",fontWeight:"bold",textOverflow:"ellipsis"},itemHoverStyle:{color:r.neutralColor100},itemHiddenStyle:{color:r.neutralColor20},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:r.backgroundColor,opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:i.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:i.isTouchDevice?25:10,headerFormat:'<span style="font-size: 10px">{point.key}<\/span><br/>',pointFormat:'<span style="color:{point.color}">●<\/span> {series.name}: <b>{point.y}<\/b><br/>',backgroundColor:t(r.neutralColor3).setOpacity(.85).get(),borderWidth:1,shadow:!0,stickOnContact:!1,style:{color:r.neutralColor80,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:r.neutralColor40,fontSize:"9px"},text:"Highcharts.com"}},e.chart.styledMode=!1,s=new u(o(e.global,e.time)),n={defaultOptions:e,defaultTime:s,getOptions:function(){return e},setOptions:function(n){return o(!0,e,n),(n.time||n.global)&&(i.time?i.time.update(o(e.global,e.time,n.global,n.time)):i.time=s),e}},n}),i(t,"Core/Animation/Fx.js",[t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Utilities.js"]],function(n,t,i){var u=n.parse,f=t.win,r=i.isNumber,e=i.objectEach;return function(){function n(n,t,i){this.pos=NaN;this.options=t;this.elem=n;this.prop=i}return n.prototype.dSetter=function(){var n=this.paths,s=n&&n[0],f,i,u,e,o;if(n=n&&n[1],f=this.now||0,i=[],1!==f&&s&&n)if(s.length===n.length&&1>f)for(u=0;u<n.length;u++){for(var l=s[u],h=n[u],c=[],t=0;t<h.length;t++)e=l[t],o=h[t],c[t]=r(e)&&r(o)&&("A"!==h[0]||4!==t&&5!==t)?e+f*(o-e):o;i.push(c)}else i=n;else i=this.toD||[];this.elem.attr("d",i,void 0,!0)},n.prototype.update=function(){var n=this.elem,t=this.prop,i=this.now,r=this.options.step;this[t+"Setter"]?this[t+"Setter"]():n.attr?n.element&&n.attr(t,i,null,!0):n.style[t]=i+this.unit;r&&r.call(n,i,this)},n.prototype.run=function(t,i,r){var o=this,e=o.options,u=function(n){return u.stopped?!1:o.step(n)},s=f.requestAnimationFrame||function(n){setTimeout(n,13)},h=function(){for(var t=0;t<n.timers.length;t++)n.timers[t]()||n.timers.splice(t--,1);n.timers.length&&s(h)};t!==i||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=t,this.end=i,this.unit=r,this.now=this.start,this.pos=0,u.elem=this.elem,u.prop=this.prop,u()&&1===n.timers.push(u)&&s(h)):(delete e.curAnim[this.prop],e.complete&&0===Object.keys(e.curAnim).length&&e.complete.call(this.elem))},n.prototype.step=function(n){var u=+new Date,t=this.options,i=this.elem,f=t.complete,o=t.duration,s=t.curAnim,r;return i.attr&&!i.element?n=!1:n||u>=o+this.startTime?(this.now=this.end,this.pos=1,this.update(),r=s[this.prop]=!0,e(s,function(n){!0!==n&&(r=!1)}),r&&f&&f.call(i),n=!1):(this.pos=t.easing((u-this.startTime)/o),this.now=this.start+(this.end-this.start)*this.pos,this.update(),n=!0),n},n.prototype.initPath=function(n,t,i){function c(n,t){for(;n.length<h;){var i=n[0],r=t[h-n.length];r&&"M"===i[0]&&(n[0]="C"===r[0]?["C",i[1],i[2],i[1],i[2],i[1],i[2]]:["L",i[1],i[2]]);n.unshift(i);o&&(i=n.pop(),n.push(n[n.length-1],i))}}function l(n,t){for(;n.length<h;)if(t=n[Math.floor(n.length/s)-1].slice(),"C"===t[0]&&(t[1]=t[5],t[2]=t[6]),o){var i=n[Math.floor(n.length/s)].slice();n.splice(n.length/2,0,t,i)}else n.push(t)}var u=n.startX,f=n.endX,o,s,e,a,h;if(i=i.slice(),o=n.isArea,s=o?2:1,t=t&&t.slice(),!t)return[i,i];if(u&&f&&f.length){for(n=0;n<u.length;n++)if(u[n]===f[0]){e=n;break}else if(u[0]===f[f.length-u.length+n]){e=n;a=!0;break}else if(u[u.length-1]===f[f.length-u.length+n]){e=u.length-n;break}"undefined"==typeof e&&(t=[])}return t.length&&r(e)&&(h=i.length+e*s,a?(c(t,i),l(i,t)):(c(i,t),l(t,i))),[t,i]},n.prototype.fillSetter=function(){n.prototype.strokeSetter.apply(this,arguments)},n.prototype.strokeSetter=function(){this.elem.attr(this.prop,u(this.start).tweenTo(u(this.end),this.pos),null,!0)},n.timers=[],n}()}),i(t,"Core/Animation/AnimationUtilities.js",[t["Core/Animation/Fx.js"],t["Core/Utilities.js"]],function(n,t){function i(n){return u(n)?f({duration:500,defer:0},n):{duration:n?500:0,defer:0}}function r(t,i){for(var r=n.timers.length;r--;)n.timers[r].elem!==t||i&&i!==n.timers[r].prop||(n.timers[r].stopped=!0)}var e=t.defined,o=t.getStyle,s=t.isArray,h=t.isNumber,u=t.isObject,f=t.merge,c=t.objectEach,l=t.pick;return{animate:function(t,i,e){var v,p="",l,a,y;u(e)||(y=arguments,e={duration:y[2],easing:y[3],complete:y[4]});h(e.duration)||(e.duration=400);e.easing="function"==typeof e.easing?e.easing:Math[e.easing]||Math.easeInOutSine;e.curAnim=f(i);c(i,function(u,f){r(t,f);a=new n(t,e,f);l=void 0;"d"===f&&s(i.d)?(a.paths=a.initPath(t,t.pathArray,i.d),a.toD=i.d,v=0,l=1):t.attr?v=t.attr(f):(v=parseFloat(o(t,f))||0,"opacity"!==f&&(p="px"));l||(l=u);"string"==typeof l&&l.match("px")&&(l=l.replace(/px/g,""));a.run(v,l,p)})},animObject:i,getDeferredAnimation:function(n,t,r){var o=i(t),u=0,f=0;return(r?[r]:n.series).forEach(function(n){n=i(n.options.animation);u=t&&e(t.defer)?o.defer:Math.max(u,n.duration+n.defer);f=Math.min(o.duration,n.duration)}),n.renderer.forExport&&(u=0),{defer:Math.max(0,u-f),duration:Math.min(u,f)}},setAnimation:function(n,t){t.renderer.globalAnimation=l(n,t.options.chart.animation,!0)},stop:r}}),i(t,"Core/Renderer/HTML/AST.js",[t["Core/Globals.js"],t["Core/Utilities.js"]],function(n,t){var r=n.SVG_NS,e=t.attr,o=t.createElement,s=t.discardElement,u=t.error,h=t.isString,f=t.objectEach,c=t.splat,i;try{i=!!(new DOMParser).parseFromString("","text/html")}catch(l){i=!1}return t=function(){function t(n){this.nodes="string"==typeof n?this.parseMarkup(n):n}return t.filterUserAttributes=function(n){return f(n,function(i,r){var f=!0;-1===t.allowedAttributes.indexOf(r)&&(f=!1);-1!==["background","dynsrc","href","lowsrc","src"].indexOf(r)&&(f=h(i)&&t.allowedReferences.some(function(n){return 0===i.indexOf(n)}));f||(u("Highcharts warning: Invalid attribute '"+r+"' in config"),delete n[r])}),n},t.setElementHTML=function(n,i){n.innerHTML="";i&&new t(i).addToDOM(n)},t.prototype.addToDOM=function(i){function o(i,s){var h;return c(i).forEach(function(i){var c=i.tagName,a=i.textContent?n.doc.createTextNode(i.textContent):void 0,l,v;c&&("#text"===c?l=a:-1!==t.allowedTags.indexOf(c)?(c=n.doc.createElementNS("svg"===c?r:s.namespaceURI||r,c),v=i.attributes||{},f(i,function(n,t){"tagName"!==t&&"attributes"!==t&&"children"!==t&&"textContent"!==t&&(v[t]=n)}),e(c,t.filterUserAttributes(v)),a&&c.appendChild(a),o(i.children||[],c),l=c):u("Highcharts warning: Invalid tagName '"+c+"' in config"));l&&s.appendChild(l);h=l}),h}return o(this.nodes,i)},t.prototype.parseMarkup=function(n){var u=[],t,r;return n=n.trim(),i?n=(new DOMParser).parseFromString(n,"text/html"):(t=o("div"),t.innerHTML=n,n={body:t}),r=function(n,t){var i=n.nodeName.toLowerCase(),u={tagName:i},e,f;"#text"===i&&(u.textContent=n.textContent||"");(i=n.attributes)&&(e={},[].forEach.call(i,function(n){e[n.name]=n.value}),u.attributes=e);n.childNodes.length&&(f=[],[].forEach.call(n.childNodes,function(n){r(n,f)}),f.length&&(u.children=f));t.push(u)},[].forEach.call(n.body.childNodes,function(n){return r(n,u)}),t&&s(t),u},t.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 textAnchor textLength type valign width x x1 x2 y y1 y2 zIndex".split(" "),t.allowedReferences="https:// http:// mailto: / ../ ./ #".split(" "),t.allowedTags="a 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 thead tbody tspan td th tr u ul #text".split(" "),t}(),t}),i(t,"Core/FormatUtilities.js",[t["Core/DefaultOptions.js"],t["Core/Utilities.js"]],function(n,t){function i(n,t,i,u){var c,l;n=+n||0;t=+t;var a=r.lang,h=(n.toString().split(".")[1]||"").split("e")[0].length,e=n.toString().split("e"),v=t;return-1===t?t=Math.min(h,20):o(t)?t&&e[1]&&0>e[1]&&(c=t+ +e[1],0<=c?(e[0]=(+e[0]).toExponential(c).split("e")[0],t=c):(e[0]=e[0].split(".")[0]||0,n=20>t?(e[0]*Math.pow(10,e[1])).toFixed(t):0,e[1]=0)):t=2,c=(Math.abs(e[1]?e[0]:n)+Math.pow(10,-Math.max(t,h)-1)).toFixed(t),h=String(s(c)),l=3<h.length?h.length%3:0,i=f(i,a.decimalPoint),u=f(u,a.thousandsSep),n=(0>n?"-":"")+(l?h.substr(0,l)+u:""),n=0>+e[1]&&!v?"0":n+h.substr(l).replace(/(\d{3})(?=\d)/g,"$1"+u),t&&(n+=i+c.slice(-t)),e[1]&&0!=+n&&(n+="e"+e[1]),n}var r=n.defaultOptions,u=n.defaultTime,e=t.getNestedProperty,o=t.isNumber,f=t.pick,s=t.pInt;return{dateFormat:function(n,t,i){return u.dateFormat(n,t,i)},format:function(n,t,f){var s="{",l=!1,a=r.lang,y=f&&f.time||u,h,c,o,v;for(f=f&&f.numberFormatter||i,h=[];n;){if(c=n.indexOf(s),-1===c)break;o=n.slice(0,c);l?(o=o.split(":"),s=e(o.shift()||"",t),o.length&&"number"==typeof s&&((o=o.join(":"),/f$/.test(o))?(v=parseInt((o.match(/\.([0-9])/)||["","-1"])[1],10),null!==s&&(s=f(s,v,a.decimalPoint,-1<o.indexOf(",")?a.thousandsSep:""))):s=y.dateFormat(o,s)),h.push(s)):h.push(o);n=n.slice(c+1);s=(l=!l)?"}":"{"}return h.push(n),h.join("")},numberFormat:i}}),i(t,"Core/Renderer/RendererUtilities.js",[t["Core/Utilities.js"]],function(n){var r=n.clamp,u=n.pick,t=n.stableSort,i;return function(n){function i(n,f,e){for(var s=n,h=s.reducedLen||f,l=function(n,t){return(t.rank||0)-(n.rank||0)},v=function(n,t){return n.target-t.target},a=!0,y=[],c=0,o=n.length;o--;)c+=n[o].size;if(c>h){for(t(n,l),c=o=0;c<=h;)c+=n[o].size,o++;y=n.splice(o-1,n.length)}for(t(n,v),n=n.map(function(n){return{size:n.size,targets:[n.target],align:u(n.align,.5)}});a;){for(o=n.length;o--;)h=n[o],l=(Math.min.apply(0,h.targets)+Math.max.apply(0,h.targets))/2,h.pos=r(l-h.size*h.align,0,f-h.size);for(o=n.length,a=!1;o--;)0<o&&n[o-1].pos+n[o-1].size>n[o].pos&&(n[o-1].size+=n[o].size,n[o-1].targets=n[o-1].targets.concat(n[o].targets),n[o-1].align=.5,n[o-1].pos+n[o-1].size>f&&(n[o-1].pos=f-n[o-1].size),n.splice(o,1),a=!0)}return s.push.apply(s,y),o=0,n.some(function(n){var t=0;return(n.targets||[]).some(function(){return(s[o].pos=n.pos+t,"undefined"!=typeof e&&Math.abs(s[o].pos-s[o].target)>e)?(s.slice(0,o+1).forEach(function(n){return delete n.pos}),s.reducedLen=(s.reducedLen||f)-.1*f,s.reducedLen>.1*f&&i(s,f,e),!0):(t+=s[o].size,o++,!1)})}),t(s,v),s}n.distribute=i}(i||(i={})),i}),i(t,"Core/Renderer/SVG/SVGElement.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Renderer/HTML/AST.js"],t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Color/Palette.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f){var it=n.animate,rt=n.animObject,y=n.stop,ut=r.deg2rad,h=r.doc,ft=r.noop,et=r.svg,l=r.SVG_NS,ot=r.win,st=f.addEvent,c=f.attr,ht=f.createElement,p=f.css,o=f.defined,w=f.erase,v=f.extend,b=f.fireEvent,k=f.isArray,d=f.isFunction,ct=f.isNumber,g=f.isString,nt=f.merge,s=f.objectEach,e=f.pick,a=f.pInt,lt=f.syncTimeout,tt=f.uniqueKey;return n=function(){function n(){this.element=void 0;this.onEvents={};this.opacity=1;this.renderer=void 0;this.SVG_NS=l;this.symbolCustomAttribs="x y width height r start end innerR anchorX anchorY rounded".split(" ")}return n.prototype._defaultGetter=function(n){return n=e(this[n+"Value"],this[n],this.element?this.element.getAttribute(n):null,0),/^[\-0-9\.]+$/.test(n)&&(n=parseFloat(n)),n},n.prototype._defaultSetter=function(n,t,i){i.setAttribute(t,n)},n.prototype.add=function(n){var t=this.renderer,r=this.element,i;return n&&(this.parentGroup=n),this.parentInverted=n&&n.inverted,"undefined"!=typeof this.textStr&&"text"===this.element.nodeName&&t.buildText(this),this.added=!0,(!n||n.handleZ||this.zIndex)&&(i=this.zIndexSetter()),i||(n?n.element:t.box).appendChild(r),this.onAdd&&this.onAdd(),this},n.prototype.addClass=function(n,t){var i=t?"":this.attr("class")||"";return n=(n||"").split(/ /g).reduce(function(n,t){return-1===i.indexOf(t)&&n.push(t),n},i?[i]:[]).join(" "),n!==i&&this.attr("class",n),this},n.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},n.prototype.align=function(n,t,i){var o={},r=this.renderer,f=r.alignedObjects,u,s,h,c;return n?(this.alignOptions=n,this.alignByTranslate=t,!i||g(i))&&(this.alignTo=u=i||"renderer",w(f,this),f.push(this),i=void 0):(n=this.alignOptions,t=this.alignByTranslate,u=this.alignTo),i=e(i,r[u],"scrollablePlotBox"===u?r.plotBox:void 0,r),u=n.align,c=n.verticalAlign,r=(i.x||0)+(n.x||0),f=(i.y||0)+(n.y||0),"right"===u?s=1:"center"===u&&(s=2),s&&(r+=(i.width-(n.width||0))/s),o[t?"translateX":"x"]=Math.round(r),"bottom"===c?h=1:"middle"===c&&(h=2),h&&(f+=(i.height-(n.height||0))/h),o[t?"translateY":"y"]=Math.round(f),this[this.placed?"animate":"attr"](o),this.placed=!0,this.alignAttr=o,this},n.prototype.alignSetter=function(n){var t={left:"start",center:"middle",right:"end"};t[n]&&(this.alignValue=n,this.element.setAttribute("text-anchor",t[n]))},n.prototype.animate=function(n,t,i){var u=this,r=rt(e(t,this.renderer.globalAnimation,!0));return t=r.defer,e(h.hidden,h.msHidden,h.webkitHidden,!1)&&(r.duration=0),0!==r.duration?(i&&(r.complete=i),lt(function(){u.element&&it(u,n,r)},t)):(this.attr(n,void 0,i),s(n,function(n,t){r.step&&r.step.call(this,n,{prop:t,pos:1,elem:this})},this)),this},n.prototype.applyTextOutline=function(n){var i=this.element,t,u,f;-1!==n.indexOf("contrast")&&(n=n.replace(/contrast/g,this.renderer.getContrast(i.style.fill)));t=n.split(" ");n=t[t.length-1];(t=t[0])&&"none"!==t&&r.svg&&(this.fakeTS=!0,this.ySetter=this.xSetter,t=t.replace(/(^[\d\.]+)(.*?)$/g,function(n,t,i){return 2*Number(t)+i}),this.removeTextOutline(),u=h.createElementNS(l,"tspan"),c(u,{"class":"highcharts-text-outline",fill:n,stroke:n,"stroke-width":t,"stroke-linejoin":"round"}),[].forEach.call(i.childNodes,function(n){var t=n.cloneNode(!0);t.removeAttribute&&["fill","stroke","stroke-width","stroke"].forEach(function(n){return t.removeAttribute(n)});u.appendChild(t)}),f=h.createElementNS(l,"tspan"),f.textContent="​",["x","y"].forEach(function(n){var t=i.getAttribute(n);t&&f.setAttribute(n,t)}),u.appendChild(f),i.insertBefore(u,i.firstChild))},n.prototype.attr=function(n,t,i,r){var e=this.element,l=this.symbolCustomAttribs,o,h=this,u,f,c;return"string"==typeof n&&"undefined"!=typeof t&&(c=n,n={},n[c]=t),"string"==typeof n?h=(this[n+"Getter"]||this._defaultGetter).call(this,n,e):(s(n,function(t,i){u=!1;r||y(this,i);this.symbolName&&-1!==l.indexOf(i)&&(o||(this.symbolAttr(n),o=!0),u=!0);this.rotation&&("x"===i||"y"===i)&&(this.doTransform=!0);u||(f=this[i+"Setter"]||this._defaultSetter,f.call(this,t,i,e),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(i)&&this.updateShadows(i,t,f))},this),this.afterSetters()),i&&i.call(this),h},n.prototype.clip=function(n){return this.attr("clip-path",n?"url("+this.renderer.url+"#"+n.id+")":"none")},n.prototype.crisp=function(n,t){t=t||n.strokeWidth||0;var i=Math.round(t)%2/2;return n.x=Math.floor(n.x||this.x||0)+i,n.y=Math.floor(n.y||this.y||0)+i,n.width=Math.floor((n.width||this.width||0)-2*i),n.height=Math.floor((n.height||this.height||0)-2*i),o(n.strokeWidth)&&(n.strokeWidth=t),n},n.prototype.complexColor=function(n,t,r){var h=this.renderer,l,e,u,a,c,v,y,p,w,d,f=[],g;b(this.renderer,"complexColor",{args:arguments},function(){if(n.radialGradient?e="radialGradient":n.linearGradient&&(e="linearGradient"),e){if(u=n[e],c=h.gradients,v=n.stops,w=r.radialReference,k(u)&&(n[e]=u={x1:u[0],y1:u[1],x2:u[2],y2:u[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===e&&w&&!o(u.gradientUnits)&&(a=u,u=nt(u,h.getRadialAttr(w,a),{gradientUnits:"userSpaceOnUse"})),s(u,function(n,t){"id"!==t&&f.push(t,n)}),s(v,function(n){f.push(n)}),f=f.join(","),c[f])d=c[f].attr("id");else{u.id=d=tt();var b=c[f]=h.createElement(e).attr(u).add(h.defs);b.radAttr=a;b.stops=[];v.forEach(function(n){0===n[1].indexOf("rgba")?(l=i.parse(n[1]),y=l.get("rgb"),p=l.get("a")):(y=n[1],p=1);n=h.createElement("stop").attr({offset:n[0],"stop-color":y,"stop-opacity":p}).add(b);b.stops.push(n)})}g="url("+h.url+"#"+d+")";r.setAttribute(t,g);r.gradient=f;n.toString=function(){return g}}})},n.prototype.css=function(n){var t=this.styles,u={},i=this.element,h=["textOutline","textOverflow","width"],r="",f=!t,e,o;return n&&n.color&&(n.fill=n.color),t&&s(n,function(n,i){t&&t[i]!==n&&(u[i]=n,f=!0)}),f&&(t&&(n=v(t,u)),n&&(null===n.width||"auto"===n.width?delete this.textWidth:"text"===i.nodeName.toLowerCase()&&n.width&&(e=this.textWidth=a(n.width))),this.styles=n,e&&!et&&this.renderer.forExport&&delete n.width,i.namespaceURI===this.SVG_NS?(o=function(n,t){return"-"+t.toLowerCase()},s(n,function(n,t){-1===h.indexOf(t)&&(r+=t.replace(/([A-Z])/g,o)+":"+n+";")}),r&&c(i,"style",r)):p(i,n),this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),n&&n.textOutline&&this.applyTextOutline(n.textOutline))),this},n.prototype.dashstyleSetter=function(n){var i=this["stroke-width"],t;if("inherit"===i&&(i=1),n=n&&n.toLowerCase()){for(t=n.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(","),n=t.length;n--;)t[n]=""+a(t[n])*e(i,NaN);n=t.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",n)}},n.prototype.destroy=function(){var n=this,t=n.element||{},u=n.renderer,r=t.ownerSVGElement,i=u.isSVG&&"SPAN"===t.nodeName&&n.parentGroup||void 0,f;if(t.onclick=t.onmouseout=t.onmouseover=t.onmousemove=t.point=null,y(n),n.clipPath&&r&&(f=n.clipPath,[].forEach.call(r.querySelectorAll("[clip-path],[CLIP-PATH]"),function(n){-1<n.getAttribute("clip-path").indexOf(f.element.id)&&n.removeAttribute("clip-path")}),n.clipPath=f.destroy()),n.stops){for(r=0;r<n.stops.length;r++)n.stops[r].destroy();n.stops.length=0;n.stops=void 0}for(n.safeRemoveChild(t),u.styledMode||n.destroyShadows();i&&i.div&&0===i.div.childNodes.length;)t=i.parentGroup,n.safeRemoveChild(i.div),delete i.div,i=t;n.alignTo&&w(u.alignedObjects,n);s(n,function(t,i){n[i]&&n[i].parentGroup===n&&n[i].destroy&&n[i].destroy();delete n[i]})},n.prototype.destroyShadows=function(){(this.shadows||[]).forEach(function(n){this.safeRemoveChild(n)},this);this.shadows=void 0},n.prototype.destroyTextPath=function(n,t){var i=n.getElementsByTagName("text")[0];if(i){if(i.removeAttribute("dx"),i.removeAttribute("dy"),t.element.setAttribute("id",""),this.textPathWrapper&&i.getElementsByTagName("textPath").length){for(n=this.textPathWrapper.element.childNodes;n.length;)i.appendChild(n[0]);i.removeChild(this.textPathWrapper.element)}}else(n.getAttribute("dx")||n.getAttribute("dy"))&&(n.removeAttribute("dx"),n.removeAttribute("dy"));this.textPathWrapper&&(this.textPathWrapper=this.textPathWrapper.destroy())},n.prototype.dSetter=function(n,t,i){k(n)&&("string"==typeof n[0]&&(n=this.renderer.pathToSegments(n)),this.pathArray=n,n=n.reduce(function(n,t,i){return t&&t.join?(i?n+" ":"")+t.join(" "):(t||"").toString()},""));/(NaN| {2}|^$)/.test(n)&&(n="M 0 0");this[t]!==n&&(i.setAttribute(t,n),this[t]=n)},n.prototype.fadeOut=function(n){var t=this;t.animate({opacity:0},{duration:e(n,150),complete:function(){t.attr({y:-9999}).hide()}})},n.prototype.fillSetter=function(n,t,i){"string"==typeof n?i.setAttribute(t,n):n&&this.complexColor(n,t,i)},n.prototype.getBBox=function(t,i){var f=this.renderer,h=this.element,u=this.styles,a=this.textStr,l=f.cache,y=f.cacheKeys,w=h.namespaceURI===this.SVG_NS,b,r,s,c;if(i=e(i,this.rotation,0),b=f.styledMode?h&&n.prototype.getStyle.call(h,"font-size"):u&&u.fontSize,o(a)&&(s=a.toString(),-1===s.indexOf("<")&&(s=s.replace(/[0-9]/g,"0")),s+=["",i,b,this.textWidth,u&&u.textOverflow,u&&u.fontWeight].join()),s&&!t&&(r=l[s]),!r){if(w||f.forExport){try{c=this.fakeTS&&function(n){var t=h.querySelector(".highcharts-text-outline");t&&p(t,{display:n})};d(c)&&c("none");r=h.getBBox?v({},h.getBBox()):{width:h.offsetWidth,height:h.offsetHeight};d(c)&&c("")}catch(k){""}(!r||0>r.width)&&(r={width:0,height:0})}else r=this.htmlGetBBox();if(f.isSVG&&(t=r.width,f=r.height,w&&(r.height=f={"11px,17":14,"13px,20":16}[u&&u.fontSize+","+Math.round(f)]||f),i&&(u=i*ut,r.width=Math.abs(f*Math.sin(u))+Math.abs(t*Math.cos(u)),r.height=Math.abs(f*Math.cos(u))+Math.abs(t*Math.sin(u)))),s&&(""===a||0<r.height)){for(;250<y.length;)delete l[y.shift()];l[s]||y.push(s);l[s]=r}}return r},n.prototype.getStyle=function(n){return ot.getComputedStyle(this.element||this,"").getPropertyValue(n)},n.prototype.hasClass=function(n){return-1!==(""+this.attr("class")).split(" ").indexOf(n)},n.prototype.hide=function(n){return n?this.attr({y:-9999}):this.attr({visibility:"hidden"}),this},n.prototype.htmlGetBBox=function(){return{height:0,width:0,x:0,y:0}},n.prototype.init=function(n,t){this.element="span"===t?ht(t):h.createElementNS(this.SVG_NS,t);this.renderer=n;b(this,"afterInit")},n.prototype.invert=function(n){return this.inverted=n,this.updateTransform(),this},n.prototype.on=function(n,t){var i=this.onEvents;return i[n]&&i[n](),i[n]=st(this.element,n,t),this},n.prototype.opacitySetter=function(n,t,i){this.opacity=n=Number(Number(n).toFixed(3));i.setAttribute(t,n)},n.prototype.removeClass=function(n){return this.attr("class",(""+this.attr("class")).replace(g(n)?new RegExp("(^| )"+n+"( |$)"):n," ").replace(/ +/g," ").trim())},n.prototype.removeTextOutline=function(){var n=this.element.querySelector("tspan.highcharts-text-outline");n&&this.safeRemoveChild(n)},n.prototype.safeRemoveChild=function(n){var t=n.parentNode;t&&t.removeChild(n)},n.prototype.setRadialReference=function(n){var t=this.element.gradient&&this.renderer.gradients[this.element.gradient];return this.element.radialReference=n,t&&t.radAttr&&t.animate(this.renderer.getRadialAttr(n,t.radAttr)),this},n.prototype.setTextPath=function(n,i){var l=this.element,h=this.text?this.text.element:l,v={textAnchor:"text-anchor"},a=!1,r=this.textPathWrapper,f=!r,u,e,c;if(i=nt(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},i),u=t.filterUserAttributes(i.attributes),n&&i&&i.enabled){if(r&&null===r.element.parentNode?(f=!0,r=r.destroy()):r&&this.removeTextOutline.call(r.parentGroup),this.options&&this.options.padding&&(u.dx=-this.options.padding),r||(this.textPathWrapper=r=this.renderer.createElement("textPath"),a=!0),e=r.element,(i=n.element.getAttribute("id"))||n.element.setAttribute("id",i=tt()),f)for(h.setAttribute("y",0),ct(u.dx)&&h.setAttribute("x",-u.dx),n=[].slice.call(h.childNodes),f=0;f<n.length;f++)c=n[f],c.nodeType!==Node.TEXT_NODE&&"tspan"!==c.nodeName||e.appendChild(c);a&&r&&r.add({element:h});e.setAttributeNS("http://www.w3.org/1999/xlink","href",this.renderer.url+"#"+i);o(u.dy)&&(e.parentNode.setAttribute("dy",u.dy),delete u.dy);o(u.dx)&&(e.parentNode.setAttribute("dx",u.dx),delete u.dx);s(u,function(n,t){e.setAttribute(v[t]||t,n)});l.removeAttribute("transform");this.removeTextOutline.call(r);this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});this.applyTextOutline=this.updateTransform=ft}else r&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(l,n),this.updateTransform(),this.options&&this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this},n.prototype.shadow=function(n,t,i){var l=[],o=this.element,a=this.oldShadowOptions,e={color:u.neutralColor100,offsetX:this.parentInverted?-1:1,offsetY:this.parentInverted?-1:1,opacity:.15,width:3},y=!1,r,p,w,f,h;if(!0===n?r=e:"object"==typeof n&&(r=v(e,n)),r&&(r&&a&&s(r,function(n,t){n!==a[t]&&(y=!0)}),y&&this.destroyShadows(),this.oldShadowOptions=r),r){if(!this.shadows){for(p=r.opacity/r.width,w=this.parentInverted?"translate("+r.offsetY+", "+r.offsetX+")":"translate("+r.offsetX+", "+r.offsetY+")",e=1;e<=r.width;e++)f=o.cloneNode(!1),h=2*r.width+1-2*e,c(f,{stroke:n.color||u.neutralColor100,"stroke-opacity":p*e,"stroke-width":h,transform:w,fill:"none"}),f.setAttribute("class",(f.getAttribute("class")||"")+" highcharts-shadow"),i&&(c(f,"height",Math.max(c(f,"height")-h,0)),f.cutHeight=h),t?t.element.appendChild(f):o.parentNode&&o.parentNode.insertBefore(f,o),l.push(f);this.shadows=l}}else this.destroyShadows();return this},n.prototype.show=function(n){return this.attr({visibility:n?"inherit":"visible"})},n.prototype.strokeSetter=function(t,i,r){this[i]=t;this.stroke&&this["stroke-width"]?(n.prototype.fillSetter.call(this,this.stroke,"stroke",r),r.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===i&&0===t&&this.hasStroke?(r.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(r.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)},n.prototype.strokeWidth=function(){var n,i,t;return this.renderer.styledMode?(n=this.getStyle("stroke-width"),i=0,n.indexOf("px")===n.length-2?i=a(n):""!==n&&(t=h.createElementNS(l,"rect"),c(t,{width:n,"stroke-width":0}),this.element.parentNode.appendChild(t),i=t.getBBox().width,t.parentNode.removeChild(t)),i):this["stroke-width"]||0},n.prototype.symbolAttr=function(n){var t=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(i){t[i]=e(n[i],t[i])});t.attr({d:t.renderer.symbols[t.symbolName](t.x,t.y,t.width,t.height,t)})},n.prototype.textSetter=function(n){n!==this.textStr&&(delete this.textPxLength,this.textStr=n,this.added&&this.renderer.buildText(this))},n.prototype.titleSetter=function(n){var t=this.element,i=t.getElementsByTagName("title")[0]||h.createElementNS(this.SVG_NS,"title");t.insertBefore?t.insertBefore(i,t.firstChild):t.appendChild(i);i.textContent=String(e(n,"")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")},n.prototype.toFront=function(){var n=this.element;return n.parentNode.appendChild(n),this},n.prototype.translate=function(n,t){return this.attr({translateX:n,translateY:t})},n.prototype.updateShadows=function(n,t,i){var r=this.shadows,u;if(r)for(u=r.length;u--;)i.call(r[u],"height"===n?Math.max(t-(r[u].cutHeight||0),0):"d"===n?this.d:t,n,r[u])},n.prototype.updateTransform=function(){var i=this.scaleX,r=this.scaleY,u=this.inverted,f=this.rotation,s=this.matrix,t=this.element,n=this.translateX||0,h=this.translateY||0;u&&(n+=this.width,h+=this.height);n=["translate("+n+","+h+")"];o(s)&&n.push("matrix("+s.join(",")+")");u?n.push("rotate(90) scale(-1,1)"):f&&n.push("rotate("+f+" "+e(this.rotationOriginX,t.getAttribute("x"),0)+" "+e(this.rotationOriginY,t.getAttribute("y")||0)+")");(o(i)||o(r))&&n.push("scale("+e(i,1)+" "+e(r,1)+")");n.length&&t.setAttribute("transform",n.join(" "))},n.prototype.visibilitySetter=function(n,t,i){"inherit"===n?i.removeAttribute(t):this[t]!==n&&i.setAttribute(t,n);this[t]=n},n.prototype.xGetter=function(n){return"circle"===this.element.nodeName&&("x"===n?n="cx":"y"===n&&(n="cy")),this._defaultGetter(n)},n.prototype.zIndexSetter=function(n,t){var u=this.renderer,f=this.parentGroup,h=(f||u).element||u.box,e=this.element,i,s,r,c;if(u=h===u.box,i=!1,s=this.added,o(n)?(e.setAttribute("data-z-index",n),n=+n,this[t]===n&&(s=!1)):o(this[t])&&e.removeAttribute("data-z-index"),this[t]=n,s){for((n=this.zIndex)&&f&&(f.handleZ=!0),t=h.childNodes,r=t.length-1;0<=r&&!i;r--)f=t[r],s=f.getAttribute("data-z-index"),c=!o(s),f!==e&&(0>n&&c&&!u&&!r?(h.insertBefore(e,t[r]),i=!0):(a(s)<=n||c&&(!o(n)||0<=n))&&(h.insertBefore(e,t[r+1]||null),i=!0));i||(h.insertBefore(e,t[u?3:0]||null),i=!0)}return i},n}(),n.prototype["stroke-widthSetter"]=n.prototype.strokeSetter,n.prototype.yGetter=n.prototype.xGetter,n.prototype.matrixSetter=n.prototype.rotationOriginXSetter=n.prototype.rotationOriginYSetter=n.prototype.rotationSetter=n.prototype.scaleXSetter=n.prototype.scaleYSetter=n.prototype.translateXSetter=n.prototype.translateYSetter=n.prototype.verticalAlignSetter=function(n,t){this[t]=n;this.doTransform=!0},n}),i(t,"Core/Renderer/RendererRegistry.js",[t["Core/Globals.js"]],function(n){var t;return function(t){t.rendererTypes={};var i;t.getRendererType=function(n){return void 0===n&&(n=i),t.rendererTypes[n]||t.rendererTypes[i]};t.registerRendererType=function(r,u,f){t.rendererTypes[r]=u;(!i||f)&&(i=r,n.Renderer=u)}}(t||(t={})),t}),i(t,"Core/Renderer/SVG/SVGLabel.js",[t["Core/Renderer/SVG/SVGElement.js"],t["Core/Utilities.js"]],function(n,t){var e=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),r=t.defined,o=t.extend,i=t.isNumber,s=t.merge,u=t.pick,f=t.removeEvent;return function(t){function h(n,i,r,u,f,e,o,s,c,l){var a=t.call(this)||this,v;return a.paddingLeftSetter=a.paddingSetter,a.paddingRightSetter=a.paddingSetter,a.init(n,"g"),a.textStr=i,a.x=r,a.y=u,a.anchorX=e,a.anchorY=o,a.baseline=c,a.className=l,a.addClass("button"===l?"highcharts-no-tooltip":"highcharts-label"),l&&a.addClass("highcharts-"+l),a.text=n.text(void 0,0,0,s).attr({zIndex:1}),"string"==typeof f&&((v=/^url\((.*?)\)$/.test(f))||a.renderer.symbols[f])&&(a.symbolKey=f),a.bBox=h.emptyBBox,a.padding=3,a.baselineOffset=0,a.needsBox=n.styledMode||v,a.deferredAttr={},a.alignFactor=0,a}return e(h,t),h.prototype.alignSetter=function(n){n={left:0,center:.5,right:1}[n];n!==this.alignFactor&&(this.alignFactor=n,this.bBox&&i(this.xSetting)&&this.attr({x:this.xSetting}))},h.prototype.anchorXSetter=function(n,t){this.anchorX=n;this.boxAttr(t,Math.round(n)-this.getCrispAdjust()-this.xSetting)},h.prototype.anchorYSetter=function(n,t){this.anchorY=n;this.boxAttr(t,n-this.ySetting)},h.prototype.boxAttr=function(n,t){this.box?this.box.attr(n,t):this.deferredAttr[n]=t},h.prototype.css=function(t){var i,r;return t&&(i={},t=s(t),h.textProps.forEach(function(n){"undefined"!=typeof t[n]&&(i[n]=t[n],delete t[n])}),this.text.css(i),r="width"in i,"fontSize"in i||"fontWeight"in i?this.updateTextPadding():r&&this.updateBoxSize()),n.prototype.css.call(this,t)},h.prototype.destroy=function(){f(this.element,"mouseenter");f(this.element,"mouseleave");this.text&&this.text.destroy();this.box&&(this.box=this.box.destroy());n.prototype.destroy.call(this)},h.prototype.fillSetter=function(n,t){n&&(this.needsBox=!0);this.fill=n;this.boxAttr(t,n)},h.prototype.getBBox=function(){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();var n=this.padding,t=u(this.paddingLeft,n);return{width:this.width,height:this.height,x:this.bBox.x-t,y:this.bBox.y-n}},h.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},h.prototype.heightSetter=function(n){this.heightSetting=n},h.prototype.onAdd=function(){var n=this.textStr;this.text.add(this);this.attr({text:r(n)?n:"",x:this.x,y:this.y});this.box&&r(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})},h.prototype.paddingSetter=function(n,t){i(n)?n!==this[t]&&(this[t]=n,this.updateTextPadding()):this[t]=void 0},h.prototype.rSetter=function(n,t){this.boxAttr(t,n)},h.prototype.shadow=function(n){return n&&!this.renderer.styledMode&&(this.updateBoxSize(),this.box&&this.box.shadow(n)),this},h.prototype.strokeSetter=function(n,t){this.stroke=n;this.boxAttr(t,n)},h.prototype["stroke-widthSetter"]=function(n,t){n&&(this.needsBox=!0);this["stroke-width"]=n;this.boxAttr(t,n)},h.prototype["text-alignSetter"]=function(n){this.textAlign=n},h.prototype.textSetter=function(n){"undefined"!=typeof n&&this.text.attr({text:n});this.updateTextPadding()},h.prototype.updateBoxSize=function(){var t=this.text.element.style,u={},n=this.padding,f=this.bBox=i(this.widthSetting)&&i(this.heightSetting)&&!this.textAlign||!r(this.text.textStr)?h.emptyBBox:this.text.getBBox();this.width=this.getPaddedWidth();this.height=(this.heightSetting||f.height||0)+2*n;t=this.renderer.fontMetrics(t&&t.fontSize,this.text);this.baselineOffset=n+Math.min((this.text.firstLineMetrics||t).b,f.height||Infinity);this.heightSetting&&(this.baselineOffset+=(this.heightSetting-t.h)/2);this.needsBox&&(this.box||(n=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect(),n.addClass(("button"===this.className?"":"highcharts-label-box")+(this.className?" highcharts-"+this.className+"-box":"")),n.add(this)),n=this.getCrispAdjust(),u.x=n,u.y=(this.baseline?-this.baselineOffset:0)+n,u.width=Math.round(this.width),u.height=Math.round(this.height),this.box.attr(o(u,this.deferredAttr)),this.deferredAttr={})},h.prototype.updateTextPadding=function(){var n=this.text,t,i;this.updateBoxSize();t=this.baseline?0:this.baselineOffset;i=u(this.paddingLeft,this.padding);r(this.widthSetting)&&this.bBox&&("center"===this.textAlign||"right"===this.textAlign)&&(i+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width));(i!==n.x||t!==n.y)&&(n.attr("x",i),n.hasBoxWidthChanged&&(this.bBox=n.getBBox(!0)),"undefined"!=typeof t&&n.attr("y",t));n.x=i;n.y=t},h.prototype.widthSetter=function(n){this.widthSetting=i(n)?n:void 0},h.prototype.getPaddedWidth=function(){var n=this.padding,t=u(this.paddingLeft,n);return n=u(this.paddingRight,n),(this.widthSetting||this.bBox.width||0)+t+n},h.prototype.xSetter=function(n){this.x=n;this.alignFactor&&(n-=this.alignFactor*this.getPaddedWidth(),this["forceAnimate:x"]=!0);this.xSetting=Math.round(n);this.attr("translateX",this.xSetting)},h.prototype.ySetter=function(n){this.ySetting=this.y=Math.round(n);this.attr("translateY",this.ySetting)},h.emptyBBox={width:0,height:0,x:0,y:0},h.textProps="color direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width".split(" "),h}(n)}),i(t,"Core/Renderer/SVG/Symbols.js",[t["Core/Utilities.js"]],function(n){function r(n,i,r,u,e){var s=[],o,h,c;if(e){o=e.start||0;h=t(e.r,r);r=t(e.r,u||r);c=(e.end||0)-.001;u=e.innerR;var v=t(e.open,.001>Math.abs((e.end||0)-o-2*Math.PI)),y=Math.cos(o),p=Math.sin(o),l=Math.cos(c),a=Math.sin(c);o=t(e.longArc,.001>c-o-Math.PI?0:1);s.push(["M",n+h*y,i+r*p],["A",h,r,0,o,t(e.clockwise,1),n+h*l,i+r*a]);f(u)&&s.push(v?["M",n+u*l,i+u*a]:["L",n+u*l,i+u*a],["A",u,u,0,o,f(e.clockwise)?1-e.clockwise:0,n+u*y,i+u*p]);v||s.push(["Z"])}return s}function u(n,t,r,u,f){return f&&f.r?i(n,t,r,u,f):[["M",n,t],["L",n+r,t],["L",n+r,t+u],["L",n,t+u],["Z"]]}function i(n,t,i,r,u){return u=u&&u.r||0,[["M",n+u,t],["L",n+i-u,t],["C",n+i,t,n+i,t,n+i,t+u],["L",n+i,t+r-u],["C",n+i,t+r,n+i,t+r,n+i-u,t+r],["L",n+u,t+r],["C",n,t+r,n,t+r,n,t+r-u],["L",n,t+u],["C",n,t,n,t,n+u,t]]}var f=n.defined,e=n.isNumber,t=n.pick;return{arc:r,callout:function(n,t,r,u,f){var h=Math.min(f&&f.r||0,r,u),c=h+6,o=f&&f.anchorX,s;return(f=f&&f.anchorY||0,s=i(n,t,r,u,{r:h}),!e(o))?s:(n+o>=r?f>t+c&&f<t+u-c?s.splice(3,1,["L",n+r,f-6],["L",n+r+6,f],["L",n+r,f+6],["L",n+r,t+u-h]):s.splice(3,1,["L",n+r,u/2],["L",o,f],["L",n+r,u/2],["L",n+r,t+u-h]):0>=n+o?f>t+c&&f<t+u-c?s.splice(7,1,["L",n,f+6],["L",n-6,f],["L",n,f-6],["L",n,t+h]):s.splice(7,1,["L",n,u/2],["L",o,f],["L",n,u/2],["L",n,t+h]):f&&f>u&&o>n+c&&o<n+r-c?s.splice(5,1,["L",o+6,t+u],["L",o,t+u+6],["L",o-6,t+u],["L",n+h,t+u]):f&&0>f&&o>n+c&&o<n+r-c&&s.splice(1,1,["L",o-6,t],["L",o,t-6],["L",o+6,t],["L",r-h,t]),s)},circle:function(n,t,i,u){return r(n+i/2,t+u/2,i/2,u/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},diamond:function(n,t,i,r){return[["M",n+i/2,t],["L",n+i,t+r/2],["L",n+i/2,t+r],["L",n,t+r/2],["Z"]]},rect:u,roundedRect:i,square:u,triangle:function(n,t,i,r){return[["M",n+i/2,t],["L",n+i,t+r],["L",n,t+r],["Z"]]},"triangle-down":function(n,t,i,r){return[["M",n,t],["L",n+i,t],["L",n+i/2,t+r],["Z"]]}}}),i(t,"Core/Renderer/SVG/TextBuilder.js",[t["Core/Renderer/HTML/AST.js"],t["Core/Globals.js"],t["Core/Utilities.js"]],function(n,t,i){var r=t.doc,e=t.SVG_NS,u=i.attr,f=i.isString,o=i.objectEach,s=i.pick;return function(){function t(n){var t=n.styles;this.renderer=n.renderer;this.svgElement=n;this.width=n.textWidth;this.textLineHeight=t&&t.lineHeight;this.textOutline=t&&t.textOutline;this.ellipsis=!(!t||"ellipsis"!==t.textOverflow);this.noWrap=!(!t||"nowrap"!==t.whiteSpace);this.fontSize=t&&t.fontSize}return t.prototype.buildSVG=function(){var t=this.svgElement,u=t.element,e=t.renderer,i=s(t.textStr,"").toString(),l=-1!==i.indexOf("<"),h=u.childNodes,c,o;if(e=this.width&&!t.added&&e.box,c=/<br.*?>/g,o=[i,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,this.fontSize,this.width].join(),o!==t.textCache){for(t.textCache=o,delete t.actualWidth,o=h.length;o--;)u.removeChild(h[o]);l||this.ellipsis||this.width||-1!==i.indexOf(" ")&&(!this.noWrap||c.test(i))?""!==i&&(e&&e.appendChild(u),i=new n(i),this.modifyTree(i.nodes),i.addToDOM(t.element),this.modifyDOM(),this.ellipsis&&-1!==(u.textContent||"").indexOf("…")&&t.attr("title",this.unescapeEntities(t.textStr||"",["&lt;","&gt;"])),e&&e.removeChild(u)):u.appendChild(r.createTextNode(this.unescapeEntities(i)));f(this.textOutline)&&t.applyTextOutline&&t.applyTextOutline(this.textOutline)}},t.prototype.modifyDOM=function(){var t=this,n=this.svgElement,s=u(n.element,"x"),f,i,h,o;for(n.firstLineMetrics=void 0;f=n.element.firstChild;)if(/^[\s\u200B]*$/.test(f.textContent||" "))n.element.removeChild(f);else break;[].forEach.call(n.element.querySelectorAll("tspan.highcharts-br"),function(i,r){i.nextSibling&&i.previousSibling&&(0===r&&1===i.previousSibling.nodeType&&(n.firstLineMetrics=n.renderer.fontMetrics(void 0,i.previousSibling)),u(i,{dy:t.getLineHeight(i.nextSibling),x:s}))});i=this.width||0;i&&(h=function(f,o){var h=f.textContent||"",c=h.replace(/([^\^])-/g,"$1- ").split(" "),l=!t.noWrap&&(1<c.length||1<n.element.childNodes.length),y=t.getLineHeight(o),a=0,v=n.actualWidth;if(t.ellipsis)h&&t.truncate(f,h,void 0,0,Math.max(0,i-parseInt(t.fontSize||12,10)),function(n,t){return n.substring(0,t)+"…"});else if(l){for(h=[],l=[];o.firstChild&&o.firstChild!==f;)l.push(o.firstChild),o.removeChild(o.firstChild);for(;c.length;)c.length&&!t.noWrap&&0<a&&(h.push(f.textContent||""),f.textContent=c.join(" ").replace(/- /g,"-")),t.truncate(f,void 0,c,0===a?v||0:0,i,function(n,t){return c.slice(0,t).join(" ").replace(/- /g,"-")}),v=n.actualWidth,a++;l.forEach(function(n){o.insertBefore(n,f)});h.forEach(function(n){o.insertBefore(r.createTextNode(n),f);n=r.createElementNS(e,"tspan");n.textContent="​";u(n,{dy:y,x:s});o.insertBefore(n,f)})}},o=function(t){[].slice.call(t.childNodes).forEach(function(i){i.nodeType===Node.TEXT_NODE?h(i,t):(-1!==i.className.baseVal.indexOf("highcharts-br")&&(n.actualWidth=0),o(i))})},o(n.element))},t.prototype.getLineHeight=function(n){var t;return n=n.nodeType===Node.TEXT_NODE?n.parentElement:n,this.renderer.styledMode||(t=n&&/(px|em)$/.test(n.style.fontSize)?n.style.fontSize:this.fontSize||this.renderer.style.fontSize||12),this.textLineHeight?parseInt(this.textLineHeight.toString(),10):this.renderer.fontMetrics(t,n||this.svgElement.element).h},t.prototype.modifyTree=function(n){var i=this,t=function(r,u){var o=r.tagName,s=i.renderer.styledMode,e=r.attributes||{};"b"===o||"strong"===o?s?e["class"]="highcharts-strong":e.style="font-weight:bold;"+(e.style||""):("i"===o||"em"===o)&&(s?e["class"]="highcharts-emphasized":e.style="font-style:italic;"+(e.style||""));f(e.style)&&(e.style=e.style.replace(/(;| |^)color([ :])/,"$1fill$2"));"br"===o&&(e["class"]="highcharts-br",r.textContent="​",(u=n[u+1])&&u.textContent&&(u.textContent=u.textContent.replace(/^ +/gm,"")));"#text"!==o&&"a"!==o&&(r.tagName="tspan");r.attributes=e;r.children&&r.children.filter(function(n){return"#text"!==n.tagName}).forEach(t)};n.forEach(t)},t.prototype.truncate=function(n,t,i,r,u,f){var s=this.svgElement,v=s.renderer,p=s.rotation,l=[],h=i?1:0,e=(t||i||"").length,o=e,a,y=function(u,e){e=e||u;var o=n.parentNode;if(o&&"undefined"==typeof l[e])if(o.getSubStringLength)try{l[e]=r+o.getSubStringLength(0,i?e+1:e)}catch(h){""}else v.getSpanWidth&&(n.textContent=f(t||i,u),l[e]=r+v.getSpanWidth(s,n));return l[e]},c;if(s.rotation=0,c=y(n.textContent.length),r+c>u){for(;h<=e;)o=Math.ceil((h+e)/2),i&&(a=f(i,o)),c=y(o,a&&a.length-1),h===e?h=e+1:c>u?e=o-1:h=o;0===e?n.textContent="":t&&e===t.length-1||(n.textContent=a||f(t||i,o))}i&&i.splice(0,o);s.actualWidth=c;s.rotation=p},t.prototype.unescapeEntities=function(n,t){return o(this.renderer.escapes,function(i,r){t&&-1!==t.indexOf(i)||(n=n.toString().replace(new RegExp(i,"g"),r))}),n},t}()}),i(t,"Core/Renderer/SVG/SVGRenderer.js",[t["Core/Renderer/HTML/AST.js"],t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Color/Palette.js"],t["Core/Renderer/RendererRegistry.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Renderer/SVG/SVGLabel.js"],t["Core/Renderer/SVG/Symbols.js"],t["Core/Renderer/SVG/TextBuilder.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o,s,h){var ft=i.charts,tt=i.deg2rad,a=i.doc,it=i.isFirefox,rt=i.isMS,et=i.isWebKit,ot=i.noop,st=i.SVG_NS,y=i.symbolSizes,w=i.win,b=h.addEvent,d=h.attr,ht=h.createElement,k=h.css,c=h.defined,ct=h.destroyObjectProperties,l=h.extend,lt=h.isArray,at=h.isNumber,p=h.isObject,vt=h.isString,v=h.merge,g=h.pick,yt=h.pInt,ut=h.uniqueKey,nt;return i=function(){function i(n,t,i,r,u,f,e){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(n,t,i,r,u,f,e)}return i.prototype.init=function(n,t,i,r,u,f,e){var s=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"}),h=s.element,o;e||s.css(this.getStyle(r));n.appendChild(h);d(n,"dir","ltr");-1===n.innerHTML.indexOf("xmlns")&&d(h,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=h;this.boxWrapper=s;this.alignedObjects=[];this.url=this.getReferenceURL();this.createElement("desc").add().element.appendChild(a.createTextNode("Created with Highcharts 9.2.2"));this.defs=this.createElement("defs").add();this.allowHTML=f;this.forExport=u;this.styledMode=e;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(t,i,!1);it&&n.getBoundingClientRect&&(t=function(){k(n,{left:0,top:0});o=n.getBoundingClientRect();k(n,{left:Math.ceil(o.left)-o.left+"px",top:Math.ceil(o.top)-o.top+"px"})},t(),this.unSubPixelFix=b(w,"resize",t))},i.prototype.definition=function(t){return new n([t]).addToDOM(this.defs.element)},i.prototype.getReferenceURL=function(){var t,i;return(it||et)&&a.getElementsByTagName("base").length&&(c(nt)||(t=ut(),t=new n([{tagName:"svg",attributes:{width:8,height:8},children:[{tagName:"defs",children:[{tagName:"clipPath",attributes:{id:t},children:[{tagName:"rect",attributes:{width:4,height:4}}]}]},{tagName:"rect",attributes:{id:"hitme",width:8,height:8,"clip-path":"url(#"+t+")",fill:"rgba(0,0,0,0.001)"}}]}]).addToDOM(a.body),k(t,{position:"fixed",top:0,left:0,zIndex:9e5}),i=a.elementFromPoint(6,6),nt="hitme"===(i&&i.id),a.body.removeChild(t)),nt)?w.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):""},i.prototype.getStyle=function(n){return this.style=l({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},n)},i.prototype.setStyle=function(n){this.boxWrapper.css(this.getStyle(n))},i.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width},i.prototype.destroy=function(){var n=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),ct(this.gradients||{}),this.gradients=null,n&&(this.defs=n.destroy()),this.unSubPixelFix&&this.unSubPixelFix(),this.alignedObjects=null},i.prototype.createElement=function(n){var t=new this.Element;return t.init(this,n),t},i.prototype.getRadialAttr=function(n,t){return{cx:n[0]-n[2]/2+(t.cx||0)*n[2],cy:n[1]-n[2]/2+(t.cy||0)*n[2],r:(t.r||0)*n[2]}},i.prototype.buildText=function(n){new s(n).buildSVG()},i.prototype.getContrast=function(n){return n=t.parse(n).rgba,n[0]*=1,n[1]*=1.2,n[2]*=.5,459<n[0]+n[1]+n[2]?"#000000":"#FFFFFF"},i.prototype.button=function(t,i,u,f,e,o,s,h,c,a){var p=this.label(t,i,u,c,void 0,void 0,a,void 0,"button"),k=this.styledMode,w=0,y=e?v(e):{},d,g,nt,tt;t=y&&y.style||{};y=n.filterUserAttributes(y);p.attr(v({padding:8,r:2},y));k||(y=v({fill:r.neutralColor3,stroke:r.neutralColor20,"stroke-width":1,style:{color:r.neutralColor80,cursor:"pointer",fontWeight:"normal"}},{style:t},y),d=y.style,delete y.style,o=v(y,{fill:r.neutralColor10},n.filterUserAttributes(o||{})),g=o.style,delete o.style,s=v(y,{fill:r.highlightColor10,style:{color:r.neutralColor100,fontWeight:"bold"}},n.filterUserAttributes(s||{})),nt=s.style,delete s.style,h=v(y,{style:{color:r.neutralColor20}},n.filterUserAttributes(h||{})),tt=h.style,delete h.style);b(p.element,rt?"mouseover":"mouseenter",function(){3!==w&&p.setState(1)});b(p.element,rt?"mouseout":"mouseleave",function(){3!==w&&p.setState(w)});p.setState=function(n){1!==n&&(p.state=w=n);p.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][n||0]);k||p.attr([y,o,s,h][n||0]).css([d,g,nt,tt][n||0])};k||p.attr(y).css(l({cursor:"default"},d));return p.on("touchstart",function(n){return n.stopPropagation()}).on("click",function(n){3!==w&&f.call(p,n)})},i.prototype.crispLine=function(n,t,i){void 0===i&&(i="round");var r=n[0],u=n[1];return c(r[1])&&r[1]===u[1]&&(r[1]=u[1]=Math[i](r[1])-t%2/2),c(r[2])&&r[2]===u[2]&&(r[2]=u[2]=Math[i](r[2])+t%2/2),n},i.prototype.path=function(n){var t=this.styledMode?{}:{fill:"none"};return lt(n)?t.d=n:p(n)&&l(t,n),this.createElement("path").attr(t)},i.prototype.circle=function(n,t,i){return n=p(n)?n:"undefined"==typeof n?{}:{x:n,y:t,r:i},t=this.createElement("circle"),t.xSetter=t.ySetter=function(n,t,i){i.setAttribute("c"+t,n)},t.attr(n)},i.prototype.arc=function(n,t,i,r,u,f){return p(n)?(r=n,t=r.y,i=r.r,n=r.x):r={innerR:r,start:u,end:f},n=this.symbol("arc",n,t,i,i,r),n.r=i,n},i.prototype.rect=function(n,t,i,r,u,f){u=p(n)?n.r:u;var e=this.createElement("rect");return n=p(n)?n:"undefined"==typeof n?{}:{x:n,y:t,width:Math.max(i,0),height:Math.max(r,0)},this.styledMode||("undefined"!=typeof f&&(n["stroke-width"]=f,n=e.crisp(n)),n.fill="none"),u&&(n.r=u),e.rSetter=function(n,t,i){e.r=n;d(i,{rx:n,ry:n})},e.rGetter=function(){return e.r||0},e.attr(n)},i.prototype.setSize=function(n,t,i){this.width=n;this.height=t;this.boxWrapper.animate({width:n,height:t},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:g(i,!0)?void 0:0});this.alignElements()},i.prototype.g=function(n){var t=this.createElement("g");return n?t.attr({"class":"highcharts-"+n}):t},i.prototype.image=function(n,t,i,r,u,f){var o={preserveAspectRatio:"none"},h=function(n,t){n.setAttributeNS?n.setAttributeNS("http://www.w3.org/1999/xlink","href",t):n.setAttribute("hc-svg-href",t)},e,s;return 1<arguments.length&&l(o,{x:t,y:i,width:r,height:u}),e=this.createElement("image").attr(o),o=function(t){h(e.element,n);f.call(e,t)},f?(h(e.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),s=new w.Image,b(s,"load",o),s.src=n,s.complete&&o({})):h(e.element,n),e},i.prototype.symbol=function(n,t,i,r,u,f){var h=this,w=/^url\((.*?)\)$/,b=w.test(n),v=!b&&(this.symbols[n]?n:"circle"),d=v&&this.symbols[v],nt,s,o,e,p;return d?("number"==typeof t&&(nt=d.call(this.symbols,Math.round(t||0),Math.round(i||0),r||0,u||0,f)),s=this.path(nt),h.styledMode||s.attr("fill","none"),l(s,{symbolName:v||void 0,x:t,y:i,width:r,height:u}),f&&l(s,f)):b&&(o=n.match(w)[1],e=s=this.image(o),e.imgwidth=g(y[o]&&y[o].width,f&&f.width),e.imgheight=g(y[o]&&y[o].height,f&&f.height),p=function(n){return n.attr({width:n.width,height:n.height})},["width","height"].forEach(function(n){e[n+"Setter"]=function(n,t){var i=this["img"+t];this[t]=n;c(i)&&(f&&"within"===f.backgroundSize&&this.width&&this.height&&(i=Math.round(i*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(t,i),this.alignByTranslate||(n=((this[t]||0)-i)/2,this.attr("width"===t?{translateX:n}:{translateY:n})))}}),c(t)&&e.attr({x:t,y:i}),e.isImg=!0,c(e.imgwidth)&&c(e.imgheight)?p(e):(e.attr({width:0,height:0}),ht("img",{onload:function(){var n=ft[h.chartIndex];0===this.width&&(k(this,{position:"absolute",top:"-999em"}),a.body.appendChild(this));y[o]={width:this.width,height:this.height};e.imgwidth=this.width;e.imgheight=this.height;e.element&&p(e);this.parentNode&&this.parentNode.removeChild(this);h.imgCount--;h.imgCount||!n||n.hasLoaded||n.onload()},src:o}),this.imgCount++)),s},i.prototype.clipRect=function(n,t,i,r){var u=ut()+"-",f=this.createElement("clipPath").attr({id:u}).add(this.defs);return n=this.rect(n,t,i,r,0).add(f),n.id=u,n.clipPath=f,n.count=0,n},i.prototype.text=function(n,t,i,r){var u={};return r&&(this.allowHTML||!this.forExport)?this.html(n,t,i):(u.x=Math.round(t||0),i&&(u.y=Math.round(i)),c(n)&&(u.text=n),n=this.createElement("text").attr(u),r&&(!this.forExport||this.allowHTML)||(n.xSetter=function(n,t,i){for(var f=i.getElementsByTagName("tspan"),e=i.getAttribute(t),r=0,u;r<f.length;r++)u=f[r],u.getAttribute(t)===e&&u.setAttribute(t,n);i.setAttribute(t,n)}),n)},i.prototype.fontMetrics=function(n,t){return n=!this.styledMode&&/px/.test(n)||!w.getComputedStyle?n||t&&t.style&&t.style.fontSize||this.style&&this.style.fontSize:t&&f.prototype.getStyle.call(t,"font-size"),n=/px/.test(n)?yt(n):12,t=24>n?n+3:Math.round(1.2*n),{h:t,b:Math.round(.8*t),f:n}},i.prototype.rotCorr=function(n,t,i){var r=n;return t&&i&&(r=Math.max(r*Math.cos(t*tt),4)),{x:-n/3*Math.sin(t*tt),y:r}},i.prototype.pathToSegments=function(n){for(var r=[],t=[],u={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},i=0;i<n.length;i++)vt(t[0])&&at(n[i])&&t.length===u[t[0].toUpperCase()]&&n.splice(i,0,t[0].replace("M","L").replace("m","l")),"string"==typeof n[i]&&(t.length&&r.push(t.slice(0)),t.length=0),t.push(n[i]);return r.push(t.slice(0)),r},i.prototype.label=function(n,t,i,r,u,f,o,s,h){return new e(this,n,t,i,r,u,f,o,s,h)},i.prototype.alignElements=function(){this.alignedObjects.forEach(function(n){return n.align()})},i}(),l(i.prototype,{Element:f,SVG_NS:st,escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},symbols:o,draw:ot}),u.registerRendererType("svg",i,!0),i}),i(t,"Core/Renderer/HTML/HTMLElement.js",[t["Core/Globals.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Utilities.js"]],function(n,t,i){var o=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),u=n.isFirefox,s=n.isMS,h=n.isWebKit,f=n.win,r=i.css,e=i.defined,c=i.extend,l=i.pick,a=i.pInt;return function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return o(t,n),t.compose=function(n){if(-1===t.composedClasses.indexOf(n)){t.composedClasses.push(n);var i=t.prototype,r=n.prototype;r.getSpanCorrection=i.getSpanCorrection;r.htmlCss=i.htmlCss;r.htmlGetBBox=i.htmlGetBBox;r.htmlUpdateTransform=i.htmlUpdateTransform;r.setSpanRotation=i.setSpanRotation}return n},t.prototype.getSpanCorrection=function(n,t,i){this.xCorr=-n*i;this.yCorr=-t},t.prototype.htmlCss=function(n){var t="SPAN"===this.element.tagName&&n&&"width"in n,u=l(t&&n.width,void 0),i;return t&&(delete n.width,this.textWidth=u,i=!0),n&&"ellipsis"===n.textOverflow&&(n.whiteSpace="nowrap",n.overflow="hidden"),this.styles=c(this.styles,n),r(this.element,n),i&&this.htmlUpdateTransform(),this},t.prototype.htmlGetBBox=function(){var n=this.element;return{x:n.offsetLeft,y:n.offsetTop,width:n.offsetWidth,height:n.offsetHeight}},t.prototype.htmlUpdateTransform=function(){if(this.added){var s=this.renderer,n=this.element,h=this.translateX||0,c=this.translateY||0,y=this.x||0,p=this.y||0,u=this.textAlign||"left",l={left:0,center:.5,right:1}[u],f=this.styles;if(f=f&&f.whiteSpace,r(n,{marginLeft:h,marginTop:c}),!s.styledMode&&this.shadows&&this.shadows.forEach(function(n){r(n,{marginLeft:h+1,marginTop:c+1})}),this.inverted&&[].forEach.call(n.childNodes,function(t){s.invertChild(t,n)}),"SPAN"===n.tagName){var i=this.rotation,o=this.textWidth&&a(this.textWidth),v=[i,u,n.innerHTML,this.textWidth,this.textAlign].join(),t=void 0;!(t=o!==this.oldTextWidth)||(t=o>this.oldTextWidth)||((t=this.textPxLength)||(r(n,{width:"",whiteSpace:f||"nowrap"}),t=n.offsetWidth),t=t>o);t&&(/[ \-]/.test(n.textContent||n.innerText)||"ellipsis"===n.style.textOverflow)?(r(n,{width:o+"px",display:"block",whiteSpace:f||"normal"}),this.oldTextWidth=o,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1;v!==this.cTT&&(t=s.fontMetrics(n.style.fontSize,n).b,!e(i)||i===(this.oldRotation||0)&&u===this.oldAlign||this.setSpanRotation(i,l,t),this.getSpanCorrection(!e(i)&&this.textPxLength||n.offsetWidth,t,l,i,u));r(n,{left:y+(this.xCorr||0)+"px",top:p+(this.yCorr||0)+"px"});this.cTT=v;this.oldRotation=i;this.oldAlign=u}}else this.alignOnAdd=!0},t.prototype.setSpanRotation=function(n,t,i){var e={},o=s&&!/Edge/.test(f.navigator.userAgent)?"-ms-transform":h?"-webkit-transform":u?"MozTransform":f.opera?"-o-transform":void 0;o&&(e[o]=e.transform="rotate("+n+"deg)",e[o+(u?"Origin":"-origin")]=e.transformOrigin=100*t+"% "+i+"px",r(this.element,e))},t.composedClasses=[],t}(t)}),i(t,"Core/Renderer/HTML/HTMLRenderer.js",[t["Core/Renderer/HTML/AST.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Renderer/SVG/SVGRenderer.js"],t["Core/Utilities.js"]],function(n,t,i,r){var u=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),f=r.attr,e=r.createElement,o=r.extend,s=r.pick;return function(i){function r(){return null!==i&&i.apply(this,arguments)||this}return u(r,i),r.compose=function(n){return-1===r.composedClasses.indexOf(n)&&(r.composedClasses.push(n),n.prototype.html=r.prototype.html),n},r.prototype.html=function(i,r,u){var h=this.createElement("span"),l=h.element,c=h.renderer,a=c.isSVG,v=function(n,i){["opacity","visibility"].forEach(function(r){n[r+"Setter"]=function(u,f,e){var o=n.div?n.div.style:i;t.prototype[r+"Setter"].call(this,u,f,e);o&&(o[f]=u)}});n.addedSetters=!0};return h.textSetter=function(t){t!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,n.setElementHTML(this.element,s(t,"")),this.textStr=t,h.doTransform=!0)},a&&v(h,h.element.style),h.xSetter=h.ySetter=h.alignSetter=h.rotationSetter=function(n,t){"align"===t?h.alignValue=h.textAlign=n:h[t]=n;h.doTransform=!0},h.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)},h.attr({text:i,x:Math.round(r),y:Math.round(u)}).css({position:"absolute"}),c.styledMode||h.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),l.style.whiteSpace="nowrap",h.css=h.htmlCss,a&&(h.add=function(n){var r=c.box.parentNode,i=[],t;if(this.parentGroup=n){if(t=n.div,!t){for(;n;)i.push(n),n=n.parentGroup;i.reverse().forEach(function(n){function s(t,i){n[i]=t;"translateX"===i?u.left=t+"px":u.top=t+"px";n.doTransform=!0}var c=f(n.element,"class"),l=n.styles||{},u;t=n.div=n.div||e("div",c?{className:c}:void 0,{position:"absolute",left:(n.translateX||0)+"px",top:(n.translateY||0)+"px",display:n.display,opacity:n.opacity,cursor:l.cursor,pointerEvents:l.pointerEvents,visibility:n.visibility},t||r);u=t.style;o(n,{classSetter:function(n){return function(t){this.element.setAttribute("class",t);n.className=t}}(t),on:function(){return i[0].div&&h.on.apply({element:i[0].div,onEvents:n.onEvents},arguments),n},translateXSetter:s,translateYSetter:s});n.addedSetters||v(n)})}}else t=r;return t.appendChild(l),h.added=!0,h.alignOnAdd&&h.htmlUpdateTransform(),h}),h},r.composedClasses=[],r}(i)}),i(t,"Core/Axis/AxisDefaults.js",[t["Core/Color/Palette.js"]],function(n){var t;return function(t){t.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:n.neutralColor60,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:n.neutralColor60}},type:"linear",uniqueNames:!0,visible:!0,minorGridLineColor:n.neutralColor5,minorGridLineWidth:1,minorTickColor:n.neutralColor40,lineColor:n.highlightColor20,lineWidth:1,gridLineColor:n.neutralColor10,gridLineWidth:void 0,tickColor:n.highlightColor20};t.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(){var n=this.axis.chart.numberFormatter;return n(this.total,-1)},style:{color:n.neutralColor100,fontSize:"11px",fontWeight:"bold",textOutline:"1px contrast"}},gridLineWidth:1,lineWidth:0};t.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}};t.defaultRightAxisOptions={labels:{x:15},title:{rotation:90}};t.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}};t.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}}}(t||(t={})),t}),i(t,"Core/Foundation.js",[t["Core/Utilities.js"]],function(n){var t=n.addEvent,i=n.isFunction,r=n.objectEach,u=n.removeEvent;return{registerEventOptions:function(n,f){n.eventOptions=n.eventOptions||{};r(f.events,function(r,f){n.eventOptions[f]!==r&&(n.eventOptions[f]&&(u(n,f,n.eventOptions[f]),delete n.eventOptions[f]),i(r)&&(n.eventOptions[f]=r,t(n,f,r)))})}}}),i(t,"Core/Axis/Tick.js",[t["Core/FormatUtilities.js"],t["Core/Globals.js"],t["Core/Utilities.js"]],function(n,t,i){var e=t.deg2rad,h=i.clamp,o=i.correctFloat,s=i.defined,c=i.destroyObjectProperties,l=i.extend,u=i.fireEvent,f=i.isNumber,a=i.merge,v=i.objectEach,r=i.pick;return t=function(){function t(n,t,i,r,f){this.isNewLabel=this.isNew=!0;this.axis=n;this.pos=t;this.type=i||"";this.parameters=f||{};this.tickmarkOffset=this.parameters.tickmarkOffset;this.options=this.parameters.options;u(this,"init");i||r||this.addLabel()}return t.prototype.addLabel=function(){var t=this,i=t.axis,c=i.options,d=i.chart,a=i.categories,tt=i.logarithmic,ft=i.names,y=t.pos,h=r(t.options&&t.options.labels,c.labels),v=i.tickPositions,it=y===v[0],rt=y===v[v.length-1],ut=(!h.step||1===h.step)&&1===i.tickInterval,e,w,b,g,p,nt,k;v=v.info;e=t.label;a=this.parameters.category||(a?r(a[y],ft[y],y):y);tt&&f(a)&&(a=o(tt.lin2log(a)));i.dateTime&&(v?(b=d.time.resolveDTLFormat(c.dateTimeLabelFormats[!c.grid&&v.higherRanks[y]||v.unitName]),g=b.main):f(a)&&(g=i.dateTime.getXDateFormat(a,c.dateTimeLabelFormats||{})));t.isFirst=it;t.isLast=rt;p={axis:i,chart:d,dateTimeLabelFormat:g,isFirst:it,isLast:rt,pos:y,tick:t,tickPositionInfo:v,value:a};u(this,"labelFormat",p);nt=function(t){return h.formatter?h.formatter.call(t,t):h.format?(t.text=i.defaultLabelFormatter.call(t),n.format(h.format,t,d)):i.defaultLabelFormatter.call(t,t)};c=nt.call(p,p);k=b&&b.list;t.shortenLabel=k?function(){for(w=0;w<k.length;w++)if(l(p,{dateTimeLabelFormat:k[w]}),e.attr({text:nt.call(p,p)}),e.getBBox().width<i.getSlotWidth(t)-2*h.padding)return;e.attr({text:""})}:void 0;ut&&i._addedPlotLB&&t.moveLabel(c,h);s(e)||t.movedLabel?e&&e.textStr!==c&&!ut&&(!e.textWidth||h.style.width||e.styles.width||e.css({width:null}),e.attr({text:c}),e.textPxLength=e.getBBox().width):(t.label=e=t.createLabel({x:0,y:0},c,h),t.rotation=0)},t.prototype.createLabel=function(n,t,i){var r=this.axis,u=r.chart;return(n=s(t)&&i.enabled?u.renderer.text(t,n.x,n.y,i.useHTML).add(r.labelGroup):null)&&(u.styledMode||n.css(a(i.style)),n.textPxLength=n.getBBox().width),n},t.prototype.destroy=function(){c(this,this.axis)},t.prototype.getPosition=function(n,t,i,r){var f=this.axis,e=f.chart,s=r&&e.oldChartHeight||e.chartHeight;return n={x:n?o(f.translate(t+i,null,null,r)+f.transB):f.left+f.offset+(f.opposite?(r&&e.oldChartWidth||e.chartWidth)-f.right-f.left:0),y:n?s-f.bottom+f.offset-(f.opposite?f.height:0):o(s-f.translate(t+i,null,null,r)-f.transB)},n.y=h(n.y,-1e5,1e5),u(this,"afterGetPosition",{pos:n}),n},t.prototype.getLabelPosition=function(n,t,i,r,f,o,h,c){var l=this.axis,w=l.transA,b=l.isLinked&&l.linkedParent?l.linkedParent.reversed:l.reversed,a=l.staggerLines,y=l.tickRotCorr||{x:0,y:0},k=r||l.reserveSpaceDefault?0:-l.labelOffset*("center"===l.labelAlign?.5:1),v={},p=f.y;return s(p)||(p=0===l.side?i.rotation?-8:-i.getBBox().height:2===l.side?y.y+8:Math.cos(i.rotation*e)*(y.y-i.getBBox(!1,0).height/2)),n=n+f.x+k+y.x-(o&&r?o*w*(b?-1:1):0),t=t+p-(o&&!r?o*w*(b?1:-1):0),a&&(i=h/(c||1)%a,l.opposite&&(i=a-i-1),t+=l.labelOffset/a*i),v.x=n,v.y=Math.round(t),u(this,"afterGetLabelPosition",{pos:v,tickmarkOffset:o,index:h}),v},t.prototype.getLabelSize=function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},t.prototype.getMarkPath=function(n,t,i,r,u,f){return f.crispLine([["M",n,t],["L",n+(u?0:-i),t+(u?i:0)]],r)},t.prototype.handleOverflow=function(n){var t=this.axis,w=t.options.labels,f=n.x,a=t.chart.chartWidth,o=t.chart.spacing,v=r(t.labelLeft,Math.min(t.pos,o[3]));o=r(t.labelRight,Math.max(t.isRadial?0:t.pos+t.len,a-o[1]));var y=this.label,h=this.rotation,u={left:0,center:.5,right:1}[t.labelAlign||y.attr("align")],s=y.getBBox().width,c=t.getSlotWidth(this),p={},i=c,b=1,l;h||"justify"!==w.overflow?0>h&&f-u*s<v?l=Math.round(f/Math.cos(h*e)-v):0<h&&f+u*s>o&&(l=Math.round((a-f)/Math.cos(h*e))):(a=f+(1-u)*s,f-u*s<v?i=n.x+i*(1-u)-v:a>o&&(i=o-n.x+i*u,b=-1),i=Math.min(c,i),i<c&&"center"===t.labelAlign&&(n.x+=b*(c-i-u*(c-Math.min(s,i)))),s>i||t.autoRotation&&(y.styles||{}).width)&&(l=i);l&&(this.shortenLabel?this.shortenLabel():(p.width=Math.floor(l)+"px",(w.style||{}).textOverflow||(p.textOverflow="ellipsis"),y.css(p)))},t.prototype.moveLabel=function(n,t){var i=this,u=i.label,r=i.axis,o=r.reversed,f=!1,e;u&&u.textStr===n?(i.movedLabel=u,f=!0,delete i.label):v(r.ticks,function(t){f||t.isNew||t===i||!t.label||t.label.textStr!==n||(i.movedLabel=t.label,f=!0,t.labelPos=i.movedLabel.xy,delete t.label)});!f&&(i.labelPos||u)&&(e=i.labelPos||u.xy,u=r.horiz?o?0:r.width+r.left:e.x,r=r.horiz?e.y:o?r.width+r.left:0,i.movedLabel=i.createLabel({x:u,y:r},n,t),i.movedLabel&&i.movedLabel.attr({opacity:0}))},t.prototype.render=function(n,t,i){var f=this.axis,o=f.horiz,e=this.pos,s=r(this.tickmarkOffset,f.tickmarkOffset),h;e=this.getPosition(o,e,s,t);s=e.x;h=e.y;f=o&&s===f.pos+f.len||!o&&h===f.pos?-1:1;o=r(i,this.label&&this.label.newOpacity,1);i=r(i,1);this.isActive=!0;this.renderGridLine(t,i,f);this.renderMark(e,i,f);this.renderLabel(e,t,o,n);this.isNew=!1;u(this,"afterRender")},t.prototype.renderGridLine=function(n,t,i){var u=this.axis,f=u.options,e={},a=this.pos,s=this.type,v=r(this.tickmarkOffset,u.tickmarkOffset),y=u.chart.renderer,o=this.gridLine,h=f.gridLineWidth,c=f.gridLineColor,l=f.gridLineDashStyle;"minor"===this.type&&(h=f.minorGridLineWidth,c=f.minorGridLineColor,l=f.minorGridLineDashStyle);o||(u.chart.styledMode||(e.stroke=c,e["stroke-width"]=h||0,e.dashstyle=l),s||(e.zIndex=1),n&&(t=0),this.gridLine=o=y.path().attr(e).addClass("highcharts-"+(s?s+"-":"")+"grid-line").add(u.gridGroup));o&&(i=u.getPlotLinePath({value:a+v,lineWidth:o.strokeWidth()*i,force:"pass",old:n}))&&o[n||this.isNew?"attr":"animate"]({d:i,opacity:t})},t.prototype.renderMark=function(n,t,i){var u=this.axis,o=u.options,h=u.chart.renderer,f=this.type,s=u.tickSize(f?f+"Tick":"tick"),a=n.x,c,e,l;n=n.y;c=r(o["minor"!==f?"tickWidth":"minorTickWidth"],!f&&u.isXAxis?1:0);o=o["minor"!==f?"tickColor":"minorTickColor"];e=this.mark;l=!e;s&&(u.opposite&&(s[0]=-s[0]),e||(this.mark=e=h.path().addClass("highcharts-"+(f?f+"-":"")+"tick").add(u.axisGroup),u.chart.styledMode||e.attr({stroke:o,"stroke-width":c})),e[l?"attr":"animate"]({d:this.getMarkPath(a,n,s[0],e.strokeWidth()*i,u.horiz,h),opacity:t}))},t.prototype.renderLabel=function(n,t,i,u){var e=this.axis,v=e.horiz,c=e.options,o=this.label,s=c.labels,l=s.step,a,h;e=r(this.tickmarkOffset,e.tickmarkOffset);a=n.x;n=n.y;h=!0;o&&f(a)&&(o.xy=n=this.getLabelPosition(a,n,o,v,s,e,u,l),this.isFirst&&!this.isLast&&!c.showFirstLabel||this.isLast&&!this.isFirst&&!c.showLastLabel?h=!1:!v||s.step||s.rotation||t||0===i||this.handleOverflow(n),l&&u%l&&(h=!1),h&&f(n.y)?(n.opacity=i,o[this.isNewLabel?"attr":"animate"](n),this.isNewLabel=!1):(o.attr("y",-9999),this.isNewLabel=!0))},t.prototype.replaceMovedLabel=function(){var t=this.label,n=this.axis,i=n.reversed,r;t&&!this.isNew&&(r=n.horiz?i?n.left:n.width+n.left:t.xy.x,i=n.horiz?t.xy.y:i?n.width+n.top:n.top,t.animate({x:r,y:i,opacity:0},void 0,t.destroy),delete this.label);n.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel},t}(),t}),i(t,"Core/Axis/Axis.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Axis/AxisDefaults.js"],t["Core/Color/Color.js"],t["Core/Color/Palette.js"],t["Core/DefaultOptions.js"],t["Core/Foundation.js"],t["Core/Globals.js"],t["Core/Axis/Tick.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o,s){var rt=n.animObject,k=u.defaultOptions,ut=f.registerEventOptions,ft=e.deg2rad,d=s.arrayMax,et=s.arrayMin,g=s.clamp,v=s.correctFloat,c=s.defined,ot=s.destroyObjectProperties,nt=s.erase,b=s.error,tt=s.extend,a=s.fireEvent,st=s.getMagnitude,ht=s.isArray,l=s.isNumber,it=s.isString,y=s.merge,ct=s.normalizeTickInterval,p=s.objectEach,h=s.pick,w=s.relativeLength,lt=s.removeEvent,at=s.splat,vt=s.syncTimeout;return n=function(){function n(n,t){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.categories=this.bottom=this.alternateBands=void 0;this.init(n,t)}return n.prototype.init=function(n,t){var r=t.isX;this.chart=n;this.horiz=n.inverted&&!this.isZAxis?!r:r;this.isXAxis=r;this.coll=this.coll||(r?"xAxis":"yAxis");a(this,"init",{userOptions:t});this.opposite=h(t.opposite,this.opposite);this.side=h(t.side,this.side,this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(t);var i=this.options,u=i.labels,f=i.type;this.userOptions=t;this.minPixelPadding=0;this.reversed=h(i.reversed,this.reversed);this.visible=i.visible;this.zoomEnabled=i.zoomEnabled;this.hasNames="category"===f||!0===i.categories;this.categories=i.categories||this.hasNames;this.names||(this.names=[],this.names.keys={});this.plotLinesAndBandsGroups={};this.positiveValuesOnly=!!this.logarithmic;this.isLinked=c(i.linkedTo);this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands=[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=i.minRange||i.maxZoom;this.range=i.range;this.offset=i.offset||0;this.min=this.max=null;t=h(i.crosshair,at(n.options.tooltip.crosshairs)[r?0:1]);this.crosshair=!0===t?{}:t;-1===n.axes.indexOf(this)&&(r?n.axes.splice(n.xAxis.length,0,this):n.axes.push(this),n[this.coll].push(this));this.series=this.series||[];n.inverted&&!this.isZAxis&&r&&"undefined"==typeof this.reversed&&(this.reversed=!0);this.labelRotation=l(u.rotation)?u.rotation:void 0;ut(this,i);a(this,"afterInit")},n.prototype.setOptions=function(n){this.options=y(t.defaultXAxisOptions,"yAxis"===this.coll&&t.defaultYAxisOptions,[t.defaultTopAxisOptions,t.defaultRightAxisOptions,t.defaultBottomAxisOptions,t.defaultLeftAxisOptions][this.side],y(k[this.coll],n));a(this,"afterSetOptions",{userOptions:n})},n.prototype.defaultLabelFormatter=function(n){var t=this.axis,o,u,r;n=this.chart.numberFormatter;var i=l(this.value)?this.value:NaN,h=t.chart.time,s=this.dateTimeLabelFormat,f=k.lang,e=f.numericSymbols;if(f=f.numericSymbolMagnitude||1e3,o=t.logarithmic?Math.abs(i):t.tickInterval,u=e&&e.length,t.categories)r=""+this.value;else if(s)r=h.dateFormat(s,i);else if(u&&1e3<=o)for(;u--&&"undefined"==typeof r;)t=Math.pow(f,u+1),o>=t&&0==10*i%t&&null!==e[u]&&0!==i&&(r=n(i/t,-1)+e[u]);return"undefined"==typeof r&&(r=1e4<=Math.abs(i)?n(i,-1):n(i,-1,void 0,"")),r},n.prototype.getSeriesExtremes=function(){var n=this,i=n.chart,t;a(this,"getSeriesExtremes",null,function(){n.hasVisibleSeries=!1;n.dataMin=n.dataMax=n.threshold=null;n.softThreshold=!n.isXAxis;n.stacking&&n.stacking.buildStacks();n.series.forEach(function(r){var u,o,f,e;(r.visible||!i.options.chart.ignoreHiddenSeries)&&(u=r.options,o=u.threshold,n.hasVisibleSeries=!0,n.positiveValuesOnly&&0>=o&&(o=null),n.isXAxis?(u=r.xData,u.length)&&(u=n.logarithmic?u.filter(n.validatePositiveValue):u,t=r.getXExtremes(u),f=t.min,e=t.max,l(f)||f instanceof Date||(u=u.filter(l),t=r.getXExtremes(u),f=t.min,e=t.max),u.length&&(n.dataMin=Math.min(h(n.dataMin,f),f),n.dataMax=Math.max(h(n.dataMax,e),e))):(r=r.applyExtremes(),l(r.dataMin)&&(f=r.dataMin,n.dataMin=Math.min(h(n.dataMin,f),f)),l(r.dataMax)&&(e=r.dataMax,n.dataMax=Math.max(h(n.dataMax,e),e)),c(o)&&(n.threshold=o),!u.softThreshold||n.positiveValuesOnly)&&(n.softThreshold=!1))})});a(this,"afterGetSeriesExtremes")},n.prototype.translate=function(n,t,i,r,u,f){var e=this.linkedParent||this,h=r&&e.old?e.old.min:e.min,c=e.minPixelPadding,o,s;return u=(e.isOrdinal||e.brokenAxis&&e.brokenAxis.hasBreaks||e.logarithmic&&u)&&e.lin2val,o=1,s=0,r=r&&e.old?e.old.transA:e.transA,r||(r=e.transA),i&&(o*=-1,s=e.len),e.reversed&&(o*=-1,s-=o*(e.sector||e.len)),t?(n=(n*o+s-c)/r+h,u&&(n=e.lin2val(n))):(u&&(n=e.val2lin(n)),n=l(h)?o*(n-h)*r+s+o*c+(l(f)?r*f:0):void 0),n},n.prototype.toPixels=function(n,t){return this.translate(n,!1,!this.horiz,null,!0)+(t?0:this.pos)},n.prototype.toValue=function(n,t){return this.translate(n-(t?0:this.pos),!0,!this.horiz,null,!0)},n.prototype.getPlotLinePath=function(n){function w(n,t,i){return("pass"!==u&&n<t||n>i)&&(u?n=g(n,t,i):p=!0),n}var t=this,r=t.chart,v=t.left,y=t.top,o=n.old,b=n.value,k=n.lineWidth,d=o&&r.oldChartHeight||r.chartHeight,tt=o&&r.oldChartWidth||r.chartWidth,nt=t.transB,i=n.translatedValue,u=n.force,f,e,s,c,p;return n={value:b,lineWidth:k,old:o,force:u,acrossPanes:n.acrossPanes,translatedValue:i},a(this,"getPlotLinePath",n,function(n){i=h(i,t.translate(b,null,null,o));i=g(i,-1e5,1e5);f=s=Math.round(i+nt);e=c=Math.round(d-i-nt);l(i)?t.horiz?(e=y,c=d-t.bottom,f=s=w(f,v,v+t.width)):(f=v,s=tt-t.right,e=c=w(e,y,y+t.height)):(p=!0,u=!1);n.path=p&&!u?null:r.renderer.crispLine([["M",f,e],["L",s,c]],k||1)}),n.path},n.prototype.getLinearTickPositions=function(n,t,i){var r=v(Math.floor(t/n)*n),u,f,e;if(i=v(Math.ceil(i/n)*n),u=[],v(r+n)===r&&(f=20),this.single)return[t];for(t=r;t<=i;){if(u.push(t),t=v(t+n,f),t===e)break;e=t}return u},n.prototype.getMinorTickInterval=function(){var n=this.options;return!0===n.minorTicks?h(n.minorTickInterval,"auto"):!1===n.minorTicks?null:n.minorTickInterval},n.prototype.getMinorTickPositions=function(){var t=this.options,o=this.tickPositions,r=this.minorTickInterval,i=this.pointRangePadding||0,u=this.min-i,f,n,e;if(i=this.max+i,f=i-u,n=[],f&&f/r<this.len/3)if(e=this.logarithmic,e)this.paddedTicks.forEach(function(t,i,u){i&&n.push.apply(n,e.getLogTickPositions(r,u[i-1],u[i],!0))});else if(this.dateTime&&"auto"===this.getMinorTickInterval())n=n.concat(this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(r),u,i,t.startOfWeek));else for(t=u+(o[0]-u)%r;t<=i&&t!==n[0];t+=r)n.push(t);return 0!==n.length&&this.trimTicks(n),n},n.prototype.adjustForMinRange=function(){var u=this.options,s=this.logarithmic,n=this.min,t=this.max,o=0,f,l,e,a;if(this.isXAxis&&"undefined"==typeof this.minRange&&!s&&(c(u.min)||c(u.max)?this.minRange=null:(this.series.forEach(function(n){if(e=n.xData,a=n.xIncrement?1:e.length-1,1<e.length)for(f=a;0<f;f--)(l=e[f]-e[f-1],!o||l<o)&&(o=l)}),this.minRange=Math.min(5*o,this.dataMax-this.dataMin))),t-n<this.minRange){var v=this.dataMax-this.dataMin>=this.minRange,r=this.minRange,i=(r-t+n)/2;i=[n-i,h(u.min,n-i)];v&&(i[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);n=d(i);t=[n+r,h(u.max,n+r)];v&&(t[2]=s?s.log2lin(this.dataMax):this.dataMax);t=et(t);t-n<r&&(i[0]=t-r,i[1]=h(u.min,t-r),n=d(i))}this.min=n;this.max=t},n.prototype.getClosest=function(){var n;return this.categories?n=1:this.series.forEach(function(t){var i=t.closestPointRange,r=t.visible||!t.chart.options.chart.ignoreHiddenSeries;!t.noSharedTooltip&&c(i)&&r&&(n=c(n)?Math.min(n,i):i)}),n},n.prototype.nameToX=function(n){var r=ht(this.categories),u=r?this.categories:this.names,i=n.options.x,t;return n.series.requireSorting=!1,c(i)||(i=this.options.uniqueNames?r?u.indexOf(n.name):h(u.keys[n.name],-1):n.series.autoIncrement()),-1===i?r||(t=u.length):t=i,"undefined"!=typeof t&&(this.names[t]=n.name,this.names.keys[n.name]=t),t},n.prototype.updateNames=function(){var t=this,n=this.names;0<n.length&&(Object.keys(n.keys).forEach(function(t){delete n.keys[t]}),n.length=0,this.minRange=this.userMinRange,(this.series||[]).forEach(function(n){n.xIncrement=null;(!n.points||n.isDirtyData)&&(t.max=Math.max(t.max,n.xData.length-1),n.processData(),n.generatePoints());n.data.forEach(function(i,r){if(i&&i.options&&"undefined"!=typeof i.name){var u=t.nameToX(i);"undefined"!=typeof u&&u!==i.x&&(i.x=u,n.xData[r]=u)}})}))},n.prototype.setAxisTranslation=function(){var n=this,s=n.max-n.min,t=n.linkedParent,e=!!n.categories,i=n.isXAxis,o=n.axisPointRange||0,r=0,u=0,c=n.transA,f;(i||e||o)&&(f=n.getClosest(),t?(r=t.minPointOffset,u=t.pointRangePadding):n.series.forEach(function(t){var s=e?1:i?h(t.options.pointRange,f,0):n.axisPointRange||0,c=t.options.pointPlacement;o=Math.max(o,s);(!n.single||e)&&(t=t.is("xrange")?!i:i,r=Math.max(r,t&&it(c)?0:s/2),u=Math.max(u,t&&"on"===c?0:s))}),t=n.ordinal&&n.ordinal.slope&&f?n.ordinal.slope/f:1,n.minPointOffset=r*=t,n.pointRangePadding=u*=t,n.pointRange=Math.min(o,n.single&&e?1:s),i&&(n.closestPointRange=f));n.translationSlope=n.transA=c=n.staticScale||n.len/(s+u||1);n.transB=n.horiz?n.left:n.bottom;n.minPixelPadding=c*r;a(this,"afterSetAxisTranslation")},n.prototype.minFromRange=function(){return this.max-this.range},n.prototype.setTickInterval=function(n){var t=this,f=t.chart,p=t.logarithmic,i=t.options,it=t.isXAxis,y=t.isLinked,w=i.tickPixelInterval,k=t.categories,nt=t.softThreshold,d=i.maxPadding,g=i.minPadding,e=i.tickInterval,r=l(t.threshold)?t.threshold:null,o,s,u,tt;t.dateTime||k||y||this.getTickAmount();o=h(t.userMin,i.min);s=h(t.userMax,i.max);y?(t.linkedParent=f[t.coll][i.linkedTo],u=t.linkedParent.getExtremes(),t.min=h(u.min,u.dataMin),t.max=h(u.max,u.dataMax),i.type!==t.linkedParent.options.type&&b(11,1,f)):(nt&&c(r)&&(t.dataMin>=r?(u=r,g=0):t.dataMax<=r&&(tt=r,d=0)),t.min=h(o,u,t.dataMin),t.max=h(s,tt,t.dataMax));p&&(t.positiveValuesOnly&&!n&&0>=Math.min(t.min,h(t.dataMin,t.min))&&b(10,1,f),t.min=v(p.log2lin(t.min),16),t.max=v(p.log2lin(t.max),16));t.range&&c(t.max)&&(t.userMin=t.min=o=Math.max(t.dataMin,t.minFromRange()),t.userMax=s=t.max,t.range=null);a(t,"foundExtremes");t.beforePadding&&t.beforePadding();t.adjustForMinRange();!(k||t.axisPointRange||t.stacking&&t.stacking.usePercentage||y)&&c(t.min)&&c(t.max)&&(f=t.max-t.min)&&(!c(o)&&g&&(t.min-=f*g),!c(s)&&d&&(t.max+=f*d));l(t.userMin)||(l(i.softMin)&&i.softMin<t.min&&(t.min=o=i.softMin),l(i.floor)&&(t.min=Math.max(t.min,i.floor)));l(t.userMax)||(l(i.softMax)&&i.softMax>t.max&&(t.max=s=i.softMax),l(i.ceiling)&&(t.max=Math.min(t.max,i.ceiling)));nt&&c(t.dataMin)&&(r=r||0,!c(o)&&t.min<r&&t.dataMin>=r?t.min=t.options.minRange?Math.min(r,t.max-t.minRange):r:!c(s)&&t.max>r&&t.dataMax<=r&&(t.max=t.options.minRange?Math.max(r,t.min+t.minRange):r));l(t.min)&&l(t.max)&&!this.chart.polar&&t.min>t.max&&(c(t.options.min)?t.max=t.min:c(t.options.max)&&(t.min=t.max));t.tickInterval=t.min===t.max||"undefined"==typeof t.min||"undefined"==typeof t.max?1:y&&t.linkedParent&&!e&&w===t.linkedParent.options.tickPixelInterval?e=t.linkedParent.tickInterval:h(e,this.tickAmount?(t.max-t.min)/Math.max(this.tickAmount-1,1):void 0,k?1:(t.max-t.min)*w/Math.max(t.len,w));it&&!n&&(t.series.forEach(function(n){n.forceCrop=n.forceCropping&&n.forceCropping();n.processData(t.min!==(t.old&&t.old.min)||t.max!==(t.old&&t.old.max))}),a(this,"postProcessData"));t.setAxisTranslation();a(this,"initialAxisTranslation");t.pointRange&&!e&&(t.tickInterval=Math.max(t.pointRange,t.tickInterval));n=h(i.minTickInterval,t.dateTime&&!t.series.some(function(n){return n.noSharedTooltip})?t.closestPointRange:0);!e&&t.tickInterval<n&&(t.tickInterval=n);t.dateTime||t.logarithmic||e||(t.tickInterval=ct(t.tickInterval,void 0,st(t.tickInterval),h(i.allowDecimals,.5>t.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));this.tickAmount||(t.tickInterval=t.unsquish());this.setTickPositions()},n.prototype.setTickPositions=function(){var t=this.options,u=t.tickPositions,n=this.getMinorTickInterval(),r=this.hasVerticalPanning(),i="colorAxis"===this.coll,f=(i||!r)&&t.startOnTick;r=(i||!r)&&t.endOnTick;i=t.tickPositioner;this.tickmarkOffset=this.categories&&"between"===t.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval="auto"===n&&this.tickInterval?this.tickInterval/5:n;this.single=this.min===this.max&&c(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==t.allowDecimals);this.tickPositions=n=u&&u.slice();!n&&(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))?n=this.dateTime?this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,t.units),this.min,this.max,t.startOfWeek,this.ordinal&&this.ordinal.positions,this.closestPointRange,!0):this.logarithmic?this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max):(n=[this.min,this.max],b(19,!1,this.chart)),n.length>this.len&&(n=[n[0],n.pop()],n[0]===n[1]&&(n.length=1)),this.tickPositions=n,i&&(i=i.apply(this,[this.min,this.max])))&&(this.tickPositions=n=i);this.paddedTicks=n.slice(0);this.trimTicks(n,f,r);this.isLinked||(this.single&&2>n.length&&!this.categories&&!this.series.some(function(n){return n.is("heatmap")&&"between"===n.options.pointPlacement})&&(this.min-=.5,this.max+=.5),u||i||this.adjustTickAmount());a(this,"afterSetTickPositions")},n.prototype.trimTicks=function(n,t,i){var r=n[0],u=n[n.length-1],f=!this.isOrdinal&&this.minPointOffset||0;if(a(this,"trimTicks"),!this.isLinked){if(t&&-Infinity!==r)this.min=r;else for(;this.min-f>n[0];)n.shift();if(i)this.max=u;else for(;this.max+f<n[n.length-1];)n.pop();0===n.length&&c(r)&&!this.options.tickPositions&&n.push((u+r)/2)}},n.prototype.alignToOthers=function(){var t={},n=this.options,i;return!1!==this.chart.options.chart.alignTicks&&n.alignTicks&&!1!==n.startOnTick&&!1!==n.endOnTick&&!this.logarithmic&&this.chart[this.coll].forEach(function(n){var r=n.options;r=[n.horiz?r.left:r.top,r.width,r.height,r.pane].join();n.series.length&&(t[r]?i=!0:t[r]=1)}),i},n.prototype.getTickAmount=function(){var t=this.options,i=t.tickPixelInterval,n=t.tickAmount;!c(t.tickInterval)&&!n&&this.len<i&&!this.isRadial&&!this.logarithmic&&t.startOnTick&&t.endOnTick&&(n=2);!n&&this.alignToOthers()&&(n=Math.ceil(this.len/i)+1);4>n&&(this.finalTickAmt=n,n=5);this.tickAmount=n},n.prototype.adjustTickAmount=function(){var i=this.options,t=this.tickInterval,n=this.tickPositions,r=this.tickAmount,u=this.finalTickAmt,f=n&&n.length,e=h(this.threshold,this.softThreshold?0:null);if(this.hasData()&&l(this.min)&&l(this.max)){if(f<r){for(;n.length<r;)n.length%2||this.min===e?n.push(v(n[n.length-1]+t)):n.unshift(v(n[0]-t));this.transA*=(f-1)/(r-1);this.min=i.startOnTick?n[0]:Math.min(this.min,n[0]);this.max=i.endOnTick?n[n.length-1]:Math.max(this.max,n[n.length-1])}else f>r&&(this.tickInterval*=2,this.setTickPositions());if(c(u)){for(t=i=n.length;t--;)(3===u&&1==t%2||2>=u&&0<t&&t<i-1)&&n.splice(t,1);this.finalTickAmt=void 0}}},n.prototype.setScale=function(){var n=!1,t=!1,i;this.series.forEach(function(i){n=n||i.isDirtyData||i.isDirty;t=t||i.xAxis&&i.xAxis.isDirty||!1});this.setAxisSize();i=this.len!==(this.old&&this.old.len);i||n||t||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.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.isDirty||(this.isDirty=i||this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max))):this.stacking&&this.stacking.cleanStacks();n&&this.panningState&&(this.panningState.isDirty=!0);a(this,"afterSetScale")},n.prototype.setExtremes=function(n,t,i,r,u){var f=this,e=f.chart;i=h(i,!0);f.series.forEach(function(n){delete n.kdTree});u=tt(u,{min:n,max:t});a(f,"setExtremes",u,function(){f.userMin=n;f.userMax=t;f.eventArgs=u;i&&e.redraw(r)})},n.prototype.zoom=function(n,t){var i=this,f=this.dataMin,e=this.dataMax,o=this.options,r=Math.min(f,h(o.min,f)),u=Math.max(e,h(o.max,e));return n={newMin:n,newMax:t},a(this,"zoom",n,function(n){var t=n.newMin,o=n.newMax;(t!==i.min||o!==i.max)&&(i.allowZoomOutside||(c(f)&&(t<r&&(t=r),t>u&&(t=u)),c(e)&&(o<r&&(o=r),o>u&&(o=u))),i.displayBtn="undefined"!=typeof t||"undefined"!=typeof o,i.setExtremes(t,o,!1,void 0,{trigger:"zoom"}));n.zoomed=!0}),n.zoomed},n.prototype.setAxisSize=function(){var n=this.chart,t=this.options,i=t.offsets||[0,0,0,0],r=this.horiz,u=this.width=Math.round(w(h(t.width,n.plotWidth-i[3]+i[1]),n.plotWidth)),f=this.height=Math.round(w(h(t.height,n.plotHeight-i[0]+i[2]),n.plotHeight)),e=this.top=Math.round(w(h(t.top,n.plotTop+i[0]),n.plotHeight,n.plotTop));t=this.left=Math.round(w(h(t.left,n.plotLeft+i[3]),n.plotWidth,n.plotLeft));this.bottom=n.chartHeight-f-e;this.right=n.chartWidth-u-t;this.len=Math.max(r?u:f,0);this.pos=r?t:e},n.prototype.getExtremes=function(){var n=this.logarithmic;return{min:n?v(n.lin2log(this.min)):this.min,max:n?v(n.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},n.prototype.getThreshold=function(n){var t=this.logarithmic,i=t?t.lin2log(this.min):this.min;return t=t?t.lin2log(this.max):this.max,null===n||-Infinity===n?n=i:Infinity===n?n=t:i>n?n=i:t<n&&(n=t),this.translate(n,0,1,0,1)},n.prototype.autoLabelAlign=function(n){var t=(h(n,0)-90*this.side+720)%360;return n={align:"center"},a(this,"autoLabelAlign",n,function(n){15<t&&165>t?n.align="right":195<t&&345>t&&(n.align="left")}),n.align},n.prototype.tickSize=function(n){var i=this.options,r=h(i["tick"===n?"tickWidth":"minorTickWidth"],"tick"===n&&this.isXAxis&&!this.categories?1:0),t=i["tick"===n?"tickLength":"minorTickLength"],u;return r&&t&&("inside"===i[n+"Position"]&&(t=-t),u=[t,r]),n={tickSize:u},a(this,"afterTickSize",n),n.tickSize},n.prototype.labelMetrics=function(){var n=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style.fontSize,this.ticks[n]&&this.ticks[n].label)},n.prototype.unsquish=function(){var n=this.options.labels,p=this.horiz,t=this.tickInterval,u=this.len/(((this.categories?1:0)+this.max-this.min)/t),i=n.rotation,s=this.labelMetrics(),f=Math.max(this.max-this.min,0),c=function(n){var i=n/(u||1);return i=1<i?Math.ceil(i):1,i*t>f&&Infinity!==n&&Infinity!==u&&f&&(i=Math.ceil(f/t)),v(i*t)},e=t,a,o,y=Number.MAX_VALUE,r;return p?(n.staggerLines||n.step||(l(i)?r=[i]:u<n.autoRotationLimit&&(r=n.autoRotation)),r&&r.forEach(function(n){if(n===i||n&&-90<=n&&90>=n){o=c(Math.abs(s.h/Math.sin(ft*n)));var t=o+Math.abs(n/360);t<y&&(y=t,a=n,e=o)}})):n.step||(e=c(s.h)),this.autoRotation=r,this.labelRotation=h(a,l(i)?i:0),e},n.prototype.getSlotWidth=function(n){var t=this.chart,r=this.horiz,i=this.options.labels,f=Math.max(this.tickPositions.length-(this.categories?0:1),1),u=t.margin[3];if(n&&l(n.slotWidth))return n.slotWidth;if(r&&2>i.step)return i.rotation?0:(this.staggerLines||1)*this.len/f;if(!r){if(n=i.style.width,void 0!==n)return parseInt(String(n),10);if(u)return u-t.spacing[3]}return.33*t.chartWidth},n.prototype.renderUnsquish=function(){var h=this.chart,y=h.renderer,r=this.tickPositions,c=this.ticks,u=this.options.labels,l=u.style,p=this.horiz,o=this.getSlotWidth(),f=Math.max(1,Math.round(o-2*u.padding)),i={},s=this.labelMetrics(),a=l.textOverflow,t=0,e,v,n;if(it(u.rotation)||(i.rotation=u.rotation||0),r.forEach(function(n){n=c[n];n.movedLabel&&n.replaceMovedLabel();n&&n.label&&n.label.textPxLength>t&&(t=n.label.textPxLength)}),this.maxLabelLength=t,this.autoRotation)t>f&&t>s.h?i.rotation=this.labelRotation:this.labelRotation=0;else if(o&&(e=f,!a))for(v="clip",f=r.length;!p&&f--;)n=r[f],(n=c[n].label)&&(n.styles&&"ellipsis"===n.styles.textOverflow?n.css({textOverflow:"clip"}):n.textPxLength>o&&n.css({width:o+"px"}),n.getBBox().height>this.len/r.length-(s.h-s.f)&&(n.specificTextOverflow="ellipsis"));i.rotation&&(e=t>.5*h.chartHeight?.33*h.chartHeight:t,a||(v="ellipsis"));(this.labelAlign=u.align||this.autoLabelAlign(this.labelRotation))&&(i.align=this.labelAlign);r.forEach(function(n){var t=(n=c[n])&&n.label,u=l.width,r={};t&&(t.attr(i),n.shortenLabel?n.shortenLabel():e&&!u&&"nowrap"!==l.whiteSpace&&(e<t.textPxLength||"SPAN"===t.element.tagName)?(r.width=e+"px",a||(r.textOverflow=t.specificTextOverflow||v),t.css(r)):t.styles&&t.styles.width&&!r.width&&!u&&t.css({width:null}),delete t.specificTextOverflow,n.rotation=i.rotation)},this);this.tickRotCorr=y.rotCorr(s.b,this.labelRotation||0,0!==this.side)},n.prototype.hasData=function(){return this.series.some(function(n){return n.hasData()})||this.options.showEmpty&&c(this.min)&&c(this.max)},n.prototype.addTitle=function(n){var f=this.chart.renderer,e=this.horiz,r=this.opposite,t=this.options.title,u=this.chart.styledMode,i;this.axisTitle||((i=t.textAlign)||(i=(e?{low:"left",middle:"center",high:"right"}:{low:r?"right":"left",middle:"center",high:r?"left":"right"})[t.align]),this.axisTitle=f.text(t.text||"",0,0,t.useHTML).attr({zIndex:7,rotation:t.rotation,align:i}).addClass("highcharts-axis-title"),u||this.axisTitle.css(y(t.style)),this.axisTitle.add(this.axisGroup),this.axisTitle.isNew=!0);u||t.style.width||this.isRadial||this.axisTitle.css({width:this.len+"px"});this.axisTitle[n?"show":"hide"](n)},n.prototype.generateTick=function(n){var t=this.ticks;t[n]?t[n].addLabel():t[n]=new o(this,n)},n.prototype.getOffset=function(){var g=this,n=this,u=n.chart,rt=u.renderer,i=n.options,s=n.tickPositions,y=n.ticks,e=n.horiz,t=n.side,nt=u.inverted&&!n.isZAxis?[1,0,3,2][t]:t,f=n.hasData(),r=i.title,l=i.labels,w=u.axisOffset,b,d;u=u.clipOffset;var v=[-1,1,1,-1][t],ut=i.className,ft=n.axisParent,k,tt=0,it=0,o=0;n.showAxis=k=f||i.showEmpty;n.staggerLines=n.horiz&&l.staggerLines||void 0;n.axisGroup||(b=function(n,t,i){return rt.g(n).attr({zIndex:i}).addClass("highcharts-"+g.coll.toLowerCase()+t+" "+(g.isRadial?"highcharts-radial-axis"+t+" ":"")+(ut||"")).add(ft)},n.gridGroup=b("grid","-grid",i.gridZIndex),n.axisGroup=b("axis","",i.zIndex),n.labelGroup=b("axis-labels","-labels",l.zIndex));f||n.isLinked?(s.forEach(function(t){n.generateTick(t)}),n.renderUnsquish(),n.reserveSpaceDefault=0===t||2===t||{1:"left",3:"right"}[t]===n.labelAlign,h(l.reserveSpace,"center"===n.labelAlign?!0:null,n.reserveSpaceDefault)&&s.forEach(function(n){o=Math.max(y[n].getLabelSize(),o)}),n.staggerLines&&(o*=n.staggerLines),n.labelOffset=o*(n.opposite?-1:1)):p(y,function(n,t){n.destroy();delete y[t]});r&&r.text&&!1!==r.enabled&&(n.addTitle(k),k&&!1!==r.reserveSpace)&&(n.titleOffset=tt=n.axisTitle.getBBox()[e?"height":"width"],d=r.offset,it=c(d)?0:h(r.margin,e?5:10));n.renderLine();n.offset=v*h(i.offset,w[t]?w[t]+(i.margin||0):0);n.tickRotCorr=n.tickRotCorr||{x:0,y:0};r=0===t?-n.labelMetrics().h:2===t?n.tickRotCorr.y:0;f=Math.abs(o)+it;o&&(f=f-r+v*(e?h(l.y,n.tickRotCorr.y+8*v):l.x));n.axisTitleMargin=h(d,f);n.getMaxLabelDimensions&&(n.maxLabelDimensions=n.getMaxLabelDimensions(y,s));e=this.tickSize("tick");w[t]=Math.max(w[t],(n.axisTitleMargin||0)+tt+v*n.offset,f,s&&s.length&&e?e[0]+v*n.offset:0);i=i.offset?0:2*Math.floor(n.axisLine.strokeWidth()/2);u[nt]=Math.max(u[nt],i);a(this,"afterGetOffset")},n.prototype.getLinePath=function(n){var i=this.chart,u=this.opposite,t=this.offset,r=this.horiz,f=this.left+(u?this.width:0)+t;return t=i.chartHeight-this.bottom-(u?this.height:0)+t,u&&(n*=-1),i.renderer.crispLine([["M",r?this.left:f,r?t:this.top],["L",r?i.chartWidth-this.right:f,r?t:i.chartHeight-this.bottom]],n)},n.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}))},n.prototype.getTitlePosition=function(){var n=this.horiz,r=this.left,o=this.top,t=this.len,u=this.options.title,f=n?r:o,e=this.opposite,s=this.offset,h=u.x,c=u.y,i=this.axisTitle,l=this.chart.renderer.fontMetrics(u.style.fontSize,i);return i=Math.max(i.getBBox(null,0).height-l.h-1,0),t={low:f+(n?0:t),middle:f+t/2,high:f+(n?t:0)}[u.align],r=(n?o+this.height:r)+(n?1:-1)*(e?-1:1)*this.axisTitleMargin+[-i,i,l.f,-i][this.side],n={x:n?t+h:r+(e?this.width:0)+s+h,y:n?r+c-(e?this.height:0)+s:t+c},a(this,"afterGetTitlePosition",{titlePosition:n}),n},n.prototype.renderMinorTick=function(n,t){var i=this.minorTicks;i[n]||(i[n]=new o(this,n,"minor"));t&&i[n].isNew&&i[n].render(null,!0);i[n].render(null,!1,1)},n.prototype.renderTick=function(n,t,i){var r=this.ticks;(!this.isLinked||n>=this.min&&n<=this.max||this.grid&&this.grid.isColumn)&&(r[n]||(r[n]=new o(this,n)),i&&r[n].isNew&&r[n].render(t,!0,-1),r[n].render(t))},n.prototype.render=function(){var n=this,y=n.chart,c=n.logarithmic,i=n.options,tt=n.isLinked,s=n.tickPositions,r=n.axisTitle,h=n.ticks,d=n.minorTicks,t=n.alternateBands,g=i.stackLabels,nt=i.alternateGridColor,u=n.tickmarkOffset,f=n.axisLine,w=n.showAxis,it=rt(y.renderer.globalAnimation),b,v,k;n.labelEdge.length=0;n.overlap=!1;[h,d,t].forEach(function(n){p(n,function(n){n.isActive=!1})});(n.hasData()||tt)&&(k=n.chart.hasRendered&&n.old&&l(n.old.min),n.minorTickInterval&&!n.categories&&n.getMinorTickPositions().forEach(function(t){n.renderMinorTick(t,k)}),s.length&&(s.forEach(function(t,i){n.renderTick(t,i,k)}),u&&(0===n.min||n.single)&&(h[-1]||(h[-1]=new o(n,-1,null,!0)),h[-1].render(-1))),nt&&s.forEach(function(i,r){v="undefined"!=typeof s[r+1]?s[r+1]+u:n.max-u;0==r%2&&i<n.max&&v<=n.max+(y.polar?-u:u)&&(t[i]||(t[i]=new e.PlotLineOrBand(n)),b=i+u,t[i].options={from:c?c.lin2log(b):b,to:c?c.lin2log(v):v,color:nt,className:"highcharts-alternate-grid"},t[i].render(),t[i].isActive=!0)}),n._addedPlotLB||(n._addedPlotLB=!0,(i.plotLines||[]).concat(i.plotBands||[]).forEach(function(t){n.addPlotBandOrLine(t)})));[h,d,t].forEach(function(n){var i=[],r=it.duration;p(n,function(n,t){n.isActive||(n.render(t,!1,0),n.isActive=!1,i.push(t))});vt(function(){for(var t=i.length;t--;)n[i[t]]&&!n[i[t]].isActive&&(n[i[t]].destroy(),delete n[i[t]])},n!==t&&y.hasRendered&&r?r:0)});f&&(f[f.isPlaced?"animate":"attr"]({d:this.getLinePath(f.strokeWidth())}),f.isPlaced=!0,f[w?"show":"hide"](w));r&&w&&(i=n.getTitlePosition(),l(i.y)?(r[r.isNew?"attr":"animate"](i),r.isNew=!1):(r.attr("y",-9999),r.isNew=!0));g&&g.enabled&&n.stacking&&n.stacking.renderStackTotals();n.old={len:n.len,max:n.max,min:n.min,transA:n.transA,userMax:n.userMax,userMin:n.userMin};n.isDirty=!1;a(this,"afterRender")},n.prototype.redraw=function(){this.visible&&(this.render(),this.plotLinesAndBands.forEach(function(n){n.render()}));this.series.forEach(function(n){n.isDirty=!0})},n.prototype.getKeepProps=function(){return this.keepProps||n.keepProps},n.prototype.destroy=function(n){var t=this,i=t.plotLinesAndBands,u=this.eventOptions,r;if(a(this,"destroy",{keepEvents:n}),n||lt(t),[t.ticks,t.minorTicks,t.alternateBands].forEach(function(n){ot(n)}),i)for(n=i.length;n--;)i[n].destroy();"axisLine axisTitle axisGroup gridGroup labelGroup cross scrollbar".split(" ").forEach(function(n){t[n]&&(t[n]=t[n].destroy())});for(r in t.plotLinesAndBandsGroups)t.plotLinesAndBandsGroups[r]=t.plotLinesAndBandsGroups[r].destroy();p(t,function(n,i){-1===t.getKeepProps().indexOf(i)&&delete t[i]});this.eventOptions=u},n.prototype.drawCrosshair=function(n,t){var u=this.crosshair,f=h(u&&u.snap,!0),l=this.chart,s,e=this.cross,o;if(a(this,"drawCrosshair",{e:n,point:t}),n||(n=this.cross&&this.cross.e),u&&!1!==(c(t)||!f)){if(f?c(t)&&(s=h("colorAxis"!==this.coll?t.crosshairPos:null,this.isXAxis?t.plotX:this.len-t.plotY)):s=n&&(this.horiz?n.chartX-this.pos:this.len-n.chartY+this.pos),c(s)&&(o={value:t&&(this.isXAxis?t.x:h(t.stackY,t.y)),translatedValue:s},l.polar&&tt(o,{isCrosshair:!0,chartX:n&&n.chartX,chartY:n&&n.chartY,point:t}),o=this.getPlotLinePath(o)||null),!c(o)){this.hideCrosshair();return}f=this.categories&&!this.isRadial;e||(this.cross=e=l.renderer.path().addClass("highcharts-crosshair highcharts-crosshair-"+(f?"category ":"thin ")+(u.className||"")).attr({zIndex:h(u.zIndex,2)}).add(),l.styledMode||(e.attr({stroke:u.color||(f?i.parse(r.highlightColor20).setOpacity(.25).get():r.neutralColor20),"stroke-width":h(u.width,1)}).css({"pointer-events":"none"}),u.dashStyle&&e.attr({dashstyle:u.dashStyle})));e.show().attr({d:o});f&&!u.width&&e.attr({"stroke-width":this.transA});this.cross.e=n}else this.hideCrosshair();a(this,"afterDrawCrosshair",{e:n,point:t})},n.prototype.hideCrosshair=function(){this.cross&&this.cross.hide();a(this,"afterHideCrosshair")},n.prototype.hasVerticalPanning=function(){var n=this.chart.options.chart.panning;return!!(n&&n.enabled&&/y/.test(n.type))},n.prototype.validatePositiveValue=function(n){return l(n)&&0<n},n.prototype.update=function(n,t){var i=this.chart;n=y(this.userOptions,n);this.destroy(!0);this.init(i,n);i.isDirtyBox=!0;h(t,!0)&&i.redraw()},n.prototype.remove=function(n){for(var t=this.chart,u=this.coll,i=this.series,r=i.length;r--;)i[r]&&i[r].remove(!1);nt(t.axes,this);nt(t[u],this);t[u].forEach(function(n,t){n.options.index=n.userOptions.index=t});this.destroy();t.isDirtyBox=!0;h(n,!0)&&t.redraw()},n.prototype.setTitle=function(n,t){this.update({title:n},t)},n.prototype.setCategories=function(n,t){this.update({categories:n},t)},n.defaultOptions=t.defaultXAxisOptions,n.keepProps="extKey hcEvents names series userMax userMin".split(" "),n}(),n}),i(t,"Core/Axis/DateTimeAxis.js",[t["Core/Utilities.js"]],function(n){var r=n.addEvent,u=n.getMagnitude,f=n.normalizeTickInterval,t=n.timeUnits,i;return function(n){function o(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function s(n){"datetime"!==n.userOptions.type?this.dateTime=void 0:this.dateTime||(this.dateTime=new i(this))}var e=[],i;n.compose=function(n){return-1===e.indexOf(n)&&(e.push(n),n.keepProps.push("dateTime"),n.prototype.getTimeTicks=o,r(n,"init",s)),n};i=function(){function n(n){this.axis=n}return n.prototype.normalizeTimeTickInterval=function(n,i){var e=i||[["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]],r,o,s;for(i=e[e.length-1],r=t[i[0]],o=i[1],s=0;s<e.length&&!(i=e[s],r=t[i[0]],o=i[1],e[s+1]&&n<=(r*o[o.length-1]+t[e[s+1][0]])/2);s++);return r===t.year&&n<5*r&&(o=[1,2,5]),n=f(n/r,o,"year"===i[0]?Math.max(u(n/r),1):1),{unitRange:r,count:n,unitName:i[0]}},n.prototype.getXDateFormat=function(n,t){var i=this.axis;return i.closestPointRange?i.chart.time.getDateFormat(i.closestPointRange,n,i.options.startOfWeek,t)||t.year:t.day},n}();n.Additions=i}(i||(i={})),i}),i(t,"Core/Axis/LogarithmicAxis.js",[t["Core/Utilities.js"]],function(n){var i=n.addEvent,r=n.getMagnitude,u=n.normalizeTickInterval,f=n.pick,t;return function(n){function o(n){var i=this.logarithmic;"logarithmic"!==n.userOptions.type?this.logarithmic=void 0:i||(this.logarithmic=new t(this))}function s(){var n=this.logarithmic;n&&(this.lin2val=function(t){return n.lin2log(t)},this.val2lin=function(t){return n.log2lin(t)})}var e=[],t;n.compose=function(n){return-1===e.indexOf(n)&&(e.push(n),n.keepProps.push("logarithmic"),i(n,"init",o),i(n,"afterInit",s)),n};t=function(){function n(n){this.axis=n}return n.prototype.getLogTickPositions=function(n,t,i,e){var s=this.axis,h=s.len,o=s.options,c=[],l,a,v,p,y;if(e||(this.minorAutoInterval=void 0),.5<=n)n=Math.round(n),c=s.getLinearTickPositions(n,t,i);else if(.08<=n)for(l=Math.floor(t),v=o=void 0,h=.3<n?[1,2,4]:.15<n?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];l<i+1&&!v;l++)for(p=h.length,a=0;a<p&&!v;a++)y=this.log2lin(this.lin2log(l)*h[a]),y>t&&(!e||o<=i)&&"undefined"!=typeof o&&c.push(o),o>i&&(v=!0),o=y;else t=this.lin2log(t),i=this.lin2log(i),n=e?s.getMinorTickInterval():o.tickInterval,n=f("auto"===n?null:n,this.minorAutoInterval,o.tickPixelInterval/(e?5:1)*(i-t)/((e?h/s.tickPositions.length:h)||1)),n=u(n,void 0,r(n)),c=s.getLinearTickPositions(n,t,i).map(this.log2lin),e||(this.minorAutoInterval=n/5);return e||(s.tickInterval=n),c},n.prototype.lin2log=function(n){return Math.pow(10,n)},n.prototype.log2lin=function(n){return Math.log(n)/Math.LN10},n}();n.Additions=t}(t||(t={})),t}),i(t,"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js",[t["Core/Utilities.js"]],function(n){var r=n.erase,u=n.extend,i=n.isNumber,t;return function(n){var f=[],t,e;n.compose=function(n,i){return t||(t=n),-1===f.indexOf(i)&&(f.push(i),u(i.prototype,e.prototype)),i};e=function(){function n(){}return n.prototype.getPlotBandPath=function(n,t,r){var l;void 0===r&&(r=this.options);var o=this.getPlotLinePath({value:t,force:!0,acrossPanes:r.acrossPanes}),h=[],c=this.horiz;if(t=!i(this.min)||!i(this.max)||n<this.min&&t<this.min||n>this.max&&t>this.max,n=this.getPlotLinePath({value:n,force:!0,acrossPanes:r.acrossPanes}),r=1,n&&o)for(t&&(l=n.toString()===o.toString(),r=0),t=0;t<n.length;t+=2){var f=n[t],s=n[t+1],u=o[t],e=o[t+1];"M"!==f[0]&&"L"!==f[0]||"M"!==s[0]&&"L"!==s[0]||"M"!==u[0]&&"L"!==u[0]||"M"!==e[0]&&"L"!==e[0]||(c&&u[1]===f[1]?(u[1]+=r,e[1]+=r):c||u[2]!==f[2]||(u[2]+=r,e[2]+=r),h.push(["M",f[1],f[2]],["L",s[1],s[2]],["L",e[1],e[2]],["L",u[1],u[2]],["Z"]));h.isFlat=l}return h},n.prototype.addPlotBand=function(n){return this.addPlotBandOrLine(n,"plotBands")},n.prototype.addPlotLine=function(n){return this.addPlotBandOrLine(n,"plotLines")},n.prototype.addPlotBandOrLine=function(n,i){var e=this,u=this.userOptions,r=new t(this,n),f;return this.visible&&(r=r.render()),r&&(this._addedPlotLB||(this._addedPlotLB=!0,(u.plotLines||[]).concat(u.plotBands||[]).forEach(function(n){e.addPlotBandOrLine(n)})),i&&(f=u[i]||[],f.push(n),u[i]=f),this.plotLinesAndBands.push(r)),r},n.prototype.removePlotBandOrLine=function(n){var i=this.plotLinesAndBands,u=this.options,f=this.userOptions,t;if(i){for(t=i.length;t--;)i[t].id===n&&i[t].destroy();[u.plotLines||[],f.plotLines||[],u.plotBands||[],f.plotBands||[]].forEach(function(i){for(t=i.length;t--;)(i[t]||{}).id===n&&r(i,i[t])})}},n.prototype.removePlotBand=function(n){this.removePlotBandOrLine(n)},n.prototype.removePlotLine=function(n){this.removePlotBandOrLine(n)},n}()}(t||(t={})),t}),i(t,"Core/Axis/PlotLineOrBand/PlotLineOrBand.js",[t["Core/Color/Palette.js"],t["Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js"],t["Core/Utilities.js"]],function(n,t,i){var u=i.arrayMax,f=i.arrayMin,r=i.defined,s=i.destroyObjectProperties,h=i.erase,c=i.fireEvent,e=i.merge,l=i.objectEach,o=i.pick;return i=function(){function i(n,t){this.axis=n;t&&(this.options=t,this.id=t.id)}return i.compose=function(n){return t.compose(i,n)},i.prototype.render=function(){c(this,"render");var s=this,h=s.axis,p=h.horiz,a=h.logarithmic,t=s.options,it=t.color,nt=o(t.zIndex,0),tt=t.events,rt={},ut=h.chart.renderer,y=t.label,w=s.label,b=t.to,k=t.from,d=t.value,u=s.svgElem,i=[],f=r(k)&&r(b);i=r(d);var ft=!u,v={"class":"highcharts-plot-"+(f?"band ":"line ")+(t.className||"")},g=f?"bands":"lines";if(a&&(k=a.log2lin(k),b=a.log2lin(b),d=a.log2lin(d)),h.chart.styledMode||(i?(v.stroke=it||n.neutralColor40,v["stroke-width"]=o(t.width,1),t.dashStyle&&(v.dashstyle=t.dashStyle)):f&&(v.fill=it||n.highlightColor10,t.borderWidth&&(v.stroke=t.borderColor,v["stroke-width"]=t.borderWidth))),rt.zIndex=nt,g+="-"+nt,(a=h.plotLinesAndBandsGroups[g])||(h.plotLinesAndBandsGroups[g]=a=ut.g("plot-"+g).attr(rt).add()),ft&&(s.svgElem=u=ut.path().attr(v).add(a)),i)i=h.getPlotLinePath({value:d,lineWidth:u.strokeWidth(),acrossPanes:t.acrossPanes});else if(f)i=h.getPlotBandPath(k,b,t);else return;return!s.eventsAdded&&tt&&(l(tt,function(n,t){u.on(t,function(n){tt[t].apply(s,[n])})}),s.eventsAdded=!0),(ft||!u.d)&&i&&i.length?u.attr({d:i}):u&&(i?(u.show(!0),u.animate({d:i})):u.d&&(u.hide(),w&&(s.label=w=w.destroy()))),y&&(r(y.text)||r(y.formatter))&&i&&i.length&&0<h.width&&0<h.height&&!i.isFlat?(y=e({align:p&&f&&"center",x:p?!f&&4:10,verticalAlign:!p&&f&&"middle",y:p?f?16:10:f?6:-4,rotation:p&&!f&&90},y),this.renderLabel(y,i,f,nt)):w&&w.hide(),s},i.prototype.renderLabel=function(n,t,i,r){var s=this.axis,h=s.chart.renderer,o=this.label;o||(this.label=o=h.text(this.getLabelText(n),0,0,n.useHTML).attr({align:n.textAlign||n.align,rotation:n.rotation,"class":"highcharts-plot-"+(i?"band":"line")+"-label "+(n.className||""),zIndex:r}).add(),s.chart.styledMode||o.css(e({textOverflow:"ellipsis"},n.style)));r=t.xBounds||[t[0][1],t[1][1],i?t[2][1]:t[0][1]];t=t.yBounds||[t[0][2],t[1][2],i?t[2][2]:t[0][2]];i=f(r);h=f(t);o.align(n,!1,{x:i,y:h,width:u(r)-i,height:u(t)-h});o.alignValue&&"left"!==o.alignValue||o.css({width:(90===o.rotation?s.height-(o.alignAttr.y-s.top):s.width-(o.alignAttr.x-s.left))+"px"});o.show(!0)},i.prototype.getLabelText=function(n){return r(n.formatter)?n.formatter.call(this):n.text},i.prototype.destroy=function(){h(this.axis.plotLinesAndBands,this);delete this.axis;s(this)},i}(),i}),i(t,"Core/Tooltip.js",[t["Core/FormatUtilities.js"],t["Core/Globals.js"],t["Core/Color/Palette.js"],t["Core/Renderer/RendererUtilities.js"],t["Core/Renderer/RendererRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f){var p=n.format,e=t.doc,w=r.distribute,c=f.addEvent,s=f.clamp,l=f.css,b=f.defined,k=f.discardElement,a=f.extend,v=f.fireEvent,d=f.isArray,g=f.isNumber,nt=f.isString,y=f.merge,o=f.pick,h=f.splat,tt=f.syncTimeout;return n=function(){function n(n,t){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,t)}return n.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"}}]}]})},n.prototype.bodyFormatter=function(n){return n.map(function(n){var t=n.series.tooltipOptions;return(t[(n.point.formatPrefix||"point")+"Formatter"]||n.point.tooltipFormatter).call(n.point,t[(n.point.formatPrefix||"point")+"Format"]||"")})},n.prototype.cleanSplit=function(n){this.chart.series.forEach(function(t){var i=t&&t.tt;i&&(!i.isActive||n?t.tt=i.destroy():i.isActive=!1)})},n.prototype.defaultFormatter=function(n){var i=this.points||h(this),t=[n.tooltipFooterHeaderFormatter(i[0])];return t=t.concat(n.bodyFormatter(i)),t.push(n.tooltipFooterHeaderFormatter(i[0],!0)),t},n.prototype.destroy=function(){this.label&&(this.label=this.label.destroy());this.split&&this.tt&&(this.cleanSplit(this.chart,!0),this.tt=this.tt.destroy());this.renderer&&(this.renderer=this.renderer.destroy(),k(this.container));f.clearTimeout(this.hideTimer);f.clearTimeout(this.tooltipTimeout)},n.prototype.getAnchor=function(n,t){var i=this.chart,r=i.pointer,s=i.inverted,c=i.plotTop,l=i.plotLeft,e,o,u=0,f=0;return n=h(n),this.followPointer&&t?("undefined"==typeof t.chartX&&(t=r.normalize(t)),r=[t.chartX-l,t.chartY-c]):n[0].tooltipPos?r=n[0].tooltipPos:(n.forEach(function(n){e=n.series.yAxis;o=n.series.xAxis;u+=n.plotX||0;f+=n.plotLow?(n.plotLow+(n.plotHigh||0))/2:n.plotY||0;o&&e&&(s?(u+=c+i.plotHeight-o.len-o.pos,f+=l+i.plotWidth-e.len-e.pos):(u+=o.pos-l,f+=e.pos-c))}),u/=n.length,f/=n.length,r=[s?i.plotWidth-f:u,s?i.plotHeight-u:f],this.shared&&1<n.length&&t&&(s?r[0]=t.chartX-l:r[1]=t.chartY-c)),r.map(Math.round)},n.prototype.getLabel=function(){var i=this,s=this.chart.styledMode,n=this.options,h="tooltip"+(b(n.className)?" "+n.className:""),a=n.style.pointerEvents||(!this.followPointer&&n.stickOnContact?"auto":"none"),v=function(){i.inContact=!0},y=function(n){var t=i.chart.hoverSeries;i.inContact=i.shouldStickOnContact()&&i.chart.pointer.inClass(n.relatedTarget,"highcharts-tooltip");!i.inContact&&t&&t.onMouseOut&&t.onMouseOut()},r,e=this.chart.renderer,o,p;if(!this.label){if(this.outside&&(o=this.chart.options.chart.style,p=u.getRendererType(),this.container=r=t.doc.createElement("div"),r.className="highcharts-tooltip-container",l(r,{position:"absolute",top:"1px",pointerEvents:a,zIndex:Math.max(this.options.style.zIndex||0,(o&&o.zIndex||0)+3)}),c(r,"mouseenter",v),c(r,"mouseleave",y),t.doc.body.appendChild(r),this.renderer=e=new p(r,0,0,o,void 0,void 0,e.styledMode)),this.split?this.label=e.g(h):(this.label=e.label("",0,0,n.shape,void 0,void 0,n.useHTML,void 0,h).attr({padding:n.padding,r:n.borderRadius}),s||this.label.attr({fill:n.backgroundColor,"stroke-width":n.borderWidth}).css(n.style).css({pointerEvents:a}).shadow(n.shadow)),s&&n.shadow&&(this.applyFilter(),this.label.attr({filter:"url(#drop-shadow-"+this.chart.index+")"})),i.outside&&!i.split){var f=this.label,w=f.xSetter,k=f.ySetter;f.xSetter=function(n){w.call(f,i.distance);r.style.left=n+"px"};f.ySetter=function(n){k.call(f,i.distance);r.style.top=n+"px"}}this.label.on("mouseenter",v).on("mouseleave",y).attr({zIndex:8}).add()}return this.label},n.prototype.getPosition=function(n,t,i){var r=this.chart,u=this.distance,f={},h=r.inverted&&i.h||0,c=this.outside,w=c?e.documentElement.clientWidth-2*u:r.chartWidth,b=c?Math.max(e.body.scrollHeight,e.documentElement.scrollHeight,e.body.offsetHeight,e.documentElement.offsetHeight,e.documentElement.clientHeight):r.chartHeight,s=r.pointer.getChartPosition(),k=function(f){var e="x"===f;return[f,e?w:b,e?n:t].concat(c?[e?n*s.scaleX:t*s.scaleY,e?s.left-u+(i.plotX+r.plotLeft)*s.scaleX:s.top-u+(i.plotY+r.plotTop)*s.scaleY,0,e?w:b]:[e?n:t,e?i.plotX+r.plotLeft:i.plotY+r.plotTop,e?r.plotLeft:r.plotTop,e?r.plotLeft+r.plotWidth:r.plotTop+r.plotHeight])},l=k("y"),a=k("x"),v,d=!this.followPointer&&o(i.ttBelow,!r.inverted==!!i.negative),g=function(n,t,i,r,e,o,l){var v=c?"y"===n?u*s.scaleY:u*s.scaleX:u,y=(i-r)/2,p=r<e-u,w=e+u+r<t,a=e-v-i+y;if(e=e+v-y,d&&w)f[n]=e;else if(!d&&p)f[n]=a;else if(p)f[n]=Math.min(l-r,0>a-h?a:a-h);else if(w)f[n]=Math.max(o,e+h+i>t?e:e+h);else return!1},nt=function(n,t,i,r,e){var o;return e<u||e>t-u?o=!1:f[n]=e<i/2?1:e>t-r/2?t-r-2:e-i/2,o},y=function(n){var t=l;l=a;a=t;v=n},p=function(){!1!==g.apply(0,l)?!1!==nt.apply(0,a)||v||(y(!0),p()):v?f.x=f.y=0:(y(!0),p())};return(r.inverted||1<this.len)&&y(),p(),f},n.prototype.hide=function(n){var t=this;f.clearTimeout(this.hideTimer);n=o(n,this.options.hideDelay);this.isHidden||(this.hideTimer=tt(function(){t.getLabel().fadeOut(n?void 0:n);t.isHidden=!0},n))},n.prototype.init=function(n,t){this.chart=n;this.options=t;this.crosshairs=[];this.now={x:0,y:0};this.isHidden=!0;this.split=t.split&&!n.inverted&&!n.polar;this.shared=t.shared||this.split;this.outside=o(t.outside,!(!n.scrollablePixelsX&&!n.scrollablePixelsY))},n.prototype.shouldStickOnContact=function(){return!(this.followPointer||!this.options.stickOnContact)},n.prototype.isStickyOnContact=function(){return!(!this.shouldStickOnContact()||!this.inContact)},n.prototype.move=function(n,t,i,r){var u=this,e=u.now,o=!1!==u.options.animation&&!u.isHidden&&(1<Math.abs(n-e.x)||1<Math.abs(t-e.y)),s=u.followPointer||1<u.len;a(e,{x:o?(2*e.x+n)/3:n,y:o?(e.y+t)/2:t,anchorX:s?void 0:o?(2*e.anchorX+i)/3:i,anchorY:s?void 0:o?(e.anchorY+r)/2:r});u.getLabel().attr(e);u.drawTracker();o&&(f.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){u&&u.move(n,t,i,r)},32))},n.prototype.refresh=function(n,t){var s=this.chart,c=this.options,u=h(n),r=u[0],y=[],e=c.formatter||this.defaultFormatter,l=this.shared,w=s.styledMode,a={};if(c.enabled){f.clearTimeout(this.hideTimer);this.followPointer=!this.split&&r.series.tooltipOptions.followPointer;var p=this.getAnchor(n,t),b=p[0],k=p[1];if(!l||!d(n)&&n.series&&n.series.noSharedTooltip?a=r.getLabelConfig():(s.pointer.applyInactiveState(u),u.forEach(function(n){n.setState("hover");y.push(n.getLabelConfig())}),a={x:r.category,y:r.y},a.points=y),this.len=y.length,n=e.call(a,this),e=r.series,this.distance=o(e.tooltipOptions.distance,16),!1===n)this.hide();else{if(this.split)this.renderSplit(n,u);else if(u=b,l=k,t&&s.pointer.isDirectTouch&&(u=t.chartX-s.plotLeft,l=t.chartY-s.plotTop),s.polar||!1===e.options.clip||e.shouldShowTooltip(u,l))t=this.getLabel(),c.style.width&&!w||t.css({width:this.chart.spacingBox.width+"px"}),t.attr({text:n&&n.join?n.join(""):n}),t.removeClass(/highcharts-color-[\d]+/g).addClass("highcharts-color-"+o(r.colorIndex,e.colorIndex)),w||t.attr({stroke:c.borderColor||r.color||e.color||i.neutralColor60}),this.updatePosition({plotX:b,plotY:k,negative:r.negative,ttBelow:r.ttBelow,h:p[2]||0});else{this.hide();return}this.isHidden&&this.label&&this.label.attr({opacity:1}).show();this.isHidden=!1}v(this,"refresh")}},n.prototype.renderSplit=function(n,t){function et(n,t,i,u,f){return void 0===f&&(f=!0),i?(t=ct?0:ft,n=s(n-u/2,h.left,h.right-u-(r.outside?c:0))):(t-=rt,n=f?n-u-b:n+b,n=s(n,f?n:h.left,h.right)),{x:n,y:t}}var r=this,v=r.chart,u=r.chart,lt=u.chartWidth,at=u.chartHeight,g=u.plotHeight,vt=u.plotLeft,tt=u.plotTop,yt=u.pointer,y=u.scrollablePixelsY,ot,f,it,c,p,d;y=void 0===y?0:y;ot=u.scrollablePixelsX;f=u.scrollingContainer;f=void 0===f?{scrollLeft:0,scrollTop:0}:f;it=f.scrollLeft;f=f.scrollTop;var st=u.styledMode,b=r.distance,l=r.options,k=r.options.positioner,h=r.outside&&"number"!=typeof ot?e.documentElement.getBoundingClientRect():{left:it,right:it+lt,top:f,bottom:f+at},ht=r.getLabel(),pt=this.renderer||v.renderer,ct=!(!v.xAxis[0]||!v.xAxis[0].opposite);v=yt.getChartPosition();c=v.left;v=v.top;var rt=tt+f,ut=0,ft=g-y;nt(n)&&(n=[!1,n]);n=n.slice(0,t.length+1).reduce(function(n,u,f){var p,y,w,d,nt;if(!1!==u&&""!==u){f=t[f-1]||{isHeader:!0,plotX:t[0].plotX,plotY:g,series:{}};p=f.isHeader;y=p?r:f.series;u=u.toString();var e=y.tt,v=f.isHeader,c=f.series,a="highcharts-color-"+o(f.colorIndex,c.colorIndex,"none");e||(e={padding:l.padding,r:l.borderRadius},st||(e.fill=l.backgroundColor,e["stroke-width"]=l.borderWidth),e=pt.label("",0,0,l[v?"headerShape":"shape"],void 0,void 0,l.useHTML).addClass((v?"highcharts-tooltip-header ":"")+"highcharts-tooltip-box "+a).attr(e).add(ht));e.isActive=!0;e.attr({text:u});st||e.css(l.style).shadow(l.shadow).attr({stroke:l.borderColor||f.color||c.color||i.neutralColor80});y=y.tt=e;v=y.getBBox();u=v.width+y.strokeWidth();p&&(ut=v.height,ft+=ut,ct&&(rt-=ut));c=f.plotX;c=void 0===c?0:c;a=f.plotY;a=void 0===a?0:a;e=f.series;f.isHeader?(c=vt+c,w=tt+g/2):(d=e.xAxis,nt=e.yAxis,c=d.pos+s(c,-b,d.len+b),e.shouldShowTooltip(0,nt.pos-tt+a,{ignoreX:!0})&&(w=nt.pos+a));c=s(c,h.left-b,h.right+b);"number"==typeof w?(v=v.height+1,a=k?k.call(r,u,v,f):et(c,w,p,u),n.push({align:k?0:void 0,anchorX:c,anchorY:w,boxWidth:u,point:f,rank:o(a.rank,p?1:0),size:v,target:a.y,tt:y,x:a.x})):y.isActive=!1}return n},[]);!k&&n.some(function(n){var t=(r.outside?c:0)+n.anchorX;return t<h.left&&t+n.boxWidth<h.right?!0:t<c-h.left+n.boxWidth&&h.right-t>t})&&(n=n.map(function(n){var t=et(n.anchorX,n.anchorY,n.point.isHeader,n.boxWidth,!1);return a(n,{target:t.y,x:t.x})}));r.cleanSplit();w(n,ft);p=c;d=c;n.forEach(function(n){var t=n.x,i=n.boxWidth;n=n.isHeader;n||(r.outside&&c+t<p&&(p=c+t),!n&&r.outside&&p+i>d&&(d=c+t))});n.forEach(function(n){var f=n.x,u=n.anchorX,t=n.pos,e=n.point.isHeader,i;t={visibility:"undefined"==typeof t?"hidden":"inherit",x:f,y:t+rt,anchorX:u,anchorY:n.anchorY};r.outside&&f<u&&(i=c-p,0<i&&(e||(t.x=f+i,t.anchorX=u+i),e&&(t.x=(d-p)/2,t.anchorX=u+i)));n.tt.attr(t)});n=r.container;y=r.renderer;r.outside&&n&&y&&(u=ht.getBBox(),y.setSize(u.width+u.x,u.height+u.y,!1),n.style.left=p+"px",n.style.top=v+"px")},n.prototype.drawTracker=function(){var t,u;if(this.followPointer||!this.options.stickOnContact)this.tracker&&this.tracker.destroy();else{var r=this.chart,i=this.label,n=this.shared?r.hoverPoints:r.hoverPoint;i&&n&&(t={x:0,y:0,width:0,height:0},n=this.getAnchor(n),u=i.getBBox(),n[0]+=r.plotLeft-i.translateX,n[1]+=r.plotTop-i.translateY,t.x=Math.min(0,n[0]),t.y=Math.min(0,n[1]),t.width=0>n[0]?Math.max(Math.abs(n[0]),u.width-n[0]):Math.max(Math.abs(n[0]),u.width),t.height=0>n[1]?Math.max(Math.abs(n[1]),u.height-Math.abs(n[1])):Math.max(Math.abs(n[1]),u.height),this.tracker?this.tracker.attr(t):(this.tracker=i.renderer.rect(t).addClass("highcharts-tracker").add(i),r.styledMode||this.tracker.attr({fill:"rgba(0,0,0,0)"})))}},n.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}"')},n.prototype.tooltipFooterHeaderFormatter=function(n,t){var f=n.series,e=f.tooltipOptions,r=f.xAxis,o=r&&r.dateTime,u,i;return r={isFooter:t,labelConfig:n},u=e.xDateFormat,i=e[t?"footerFormat":"headerFormat"],v(this,"headerFormatter",r,function(t){o&&!u&&g(n.key)&&(u=o.getXDateFormat(n.key,e.dateTimeLabelFormats));o&&u&&(n.point&&n.point.tooltipDateKeys||["key"]).forEach(function(n){i=i.replace("{point."+n+"}","{point."+n+":"+u+"}")});f.chart.styledMode&&(i=this.styledModeFormat(i));t.text=p(i,{point:n,series:f},this.chart)}),r.text},n.prototype.update=function(n){this.destroy();y(!0,this.chart.options.tooltip.userOptions,n);this.init(this.chart,y(!0,this.options,n))},n.prototype.updatePosition=function(n){var e=this.chart,i=this.options,t=e.pointer,u=this.getLabel(),r,f;t=t.getChartPosition();r=(i.positioner||this.getPosition).call(this,u.width,u.height,n);f=n.plotX+e.plotLeft;n=n.plotY+e.plotTop;this.outside&&(i=i.borderWidth+2*this.distance,this.renderer.setSize(u.width+i,u.height+i,!1),(1!==t.scaleX||1!==t.scaleY)&&(l(this.container,{transform:"scale("+t.scaleX+", "+t.scaleY+")"}),f*=t.scaleX,n*=t.scaleY),f+=t.left-r.x,n+=t.top-r.y);this.move(Math.round(r.x),Math.round(r.y||0),f,n)},n}(),n}),i(t,"Core/Series/Point.js",[t["Core/Renderer/HTML/AST.js"],t["Core/Animation/AnimationUtilities.js"],t["Core/DefaultOptions.js"],t["Core/FormatUtilities.js"],t["Core/Utilities.js"]],function(n,t,i,r,u){var c=t.animObject,l=i.defaultOptions,a=r.format,v=u.addEvent,y=u.defined,p=u.erase,e=u.extend,h=u.fireEvent,w=u.getNestedProperty,b=u.isArray,k=u.isFunction,o=u.isNumber,s=u.isObject,d=u.merge,g=u.objectEach,f=u.pick,nt=u.syncTimeout,tt=u.removeEvent,it=u.uniqueKey;return t=function(){function t(){this.colorIndex=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.series=void 0;this.visible=!0;this.x=void 0}return t.prototype.animateBeforeDestroy=function(){var n=this,i={x:n.startXPos,opacity:0},t=n.getGraphicalProps();t.singular.forEach(function(t){n[t]=n[t].animate("dataLabel"===t?{x:n[t].startXPos,y:n[t].startYPos,opacity:0}:i)});t.plural.forEach(function(t){n[t].forEach(function(t){t.element&&t.animate(e({x:n.startXPos},t.startYPos?{x:t.startXPos,y:t.startYPos}:{}))})})},t.prototype.applyOptions=function(n,i){var r=this.series,u=r.options.pointValKey||r.pointValKey;return n=t.prototype.optionsToObject.call(this,n),e(this,n),this.options=this.options?e(this.options,n):n,n.group&&delete this.group,n.dataLabels&&delete this.dataLabels,u&&(this.y=t.prototype.getNestedProperty.call(this,u)),this.formatPrefix=(this.isNull=f(this.isValid&&!this.isValid(),null===this.x||!o(this.y)))?"null":"point",this.selected&&(this.state="select"),"name"in this&&"undefined"==typeof i&&r.xAxis&&r.xAxis.hasNames&&(this.x=r.xAxis.nameToX(this)),"undefined"==typeof this.x&&r?this.x="undefined"==typeof i?r.autoIncrement():i:o(n.x)&&r.options.relativeXValue&&(this.x=r.autoIncrement(n.x)),this},t.prototype.destroy=function(){function u(){(n.graphic||n.dataLabel||n.dataLabels)&&(tt(n),n.destroyElements());for(e in n)n[e]=null}var n=this,t=n.series,i=t.chart,r,f,e;t=t.options.dataSorting;r=i.hoverPoints;f=c(n.series.chart.renderer.globalAnimation);n.legendItem&&i.legend.destroyItem(n);r&&(n.setState(),p(r,n),r.length||(i.hoverPoints=null));n===i.hoverPoint&&n.onMouseOut();t&&t.enabled?(this.animateBeforeDestroy(),nt(u,f.duration)):u();i.pointCount--},t.prototype.destroyElements=function(n){var t=this;n=t.getGraphicalProps(n);n.singular.forEach(function(n){t[n]=t[n].destroy()});n.plural.forEach(function(n){t[n].forEach(function(n){n.element&&n.destroy()});delete t[n]})},t.prototype.firePointEvent=function(n,t,i){var r=this,u=this.series.options;(u.point.events[n]||r.options&&r.options.events&&r.options.events[n])&&r.importEvents();"click"===n&&u.allowPointSelect&&(i=function(n){r.select&&r.select(null,n.ctrlKey||n.metaKey||n.shiftKey)});h(r,n,t,i)},t.prototype.getClassName=function(){return"highcharts-point"+(this.selected?" highcharts-point-select":"")+(this.negative?" highcharts-negative":"")+(this.isNull?" highcharts-null-point":"")+("undefined"!=typeof this.colorIndex?" highcharts-color-"+this.colorIndex:"")+(this.options.className?" "+this.options.className:"")+(this.zone&&this.zone.className?" "+this.zone.className.replace("highcharts-negative",""):"")},t.prototype.getGraphicalProps=function(n){var f=this,t=[],i={singular:[],plural:[]},r,u;for(n=n||{graphic:1,dataLabel:1},n.graphic&&t.push("graphic","upperGraphic","shadowGroup"),n.dataLabel&&t.push("dataLabel","dataLabelUpper","connector"),r=t.length;r--;)u=t[r],f[u]&&i.singular.push(u);return["dataLabel","connector"].forEach(function(t){var r=t+"s";n[t]&&f[r]&&i.plural.push(r)}),i},t.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}},t.prototype.getNestedProperty=function(n){if(n)return 0===n.indexOf("custom.")?w(n,this.options):this[n]},t.prototype.getZone=function(){var t=this.series,r=t.zones,n,i;for(t=t.zoneAxis||"y",i=0,n=r[i];this[t]>=n.value;)n=r[++i];return this.nonZonedColor||(this.nonZonedColor=this.color),this.color=n&&n.color&&!this.options.color?n.color:this.nonZonedColor,n},t.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType},t.prototype.init=function(n,t,i){return this.series=n,this.applyOptions(t,i),this.id=y(this.id)?this.id:it(),this.resolveColor(),n.chart.pointCount++,h(this,"afterInit"),this},t.prototype.optionsToObject=function(n){var i=this.series,s=i.options.keys,u=s||i.pointArrayMap||["y"],h=u.length,r={},f=0,e=0;if(o(n)||null===n)r[u[0]]=n;else if(b(n))for(!s&&n.length>h&&(i=typeof n[0],"string"===i?r.name=n[0]:"number"===i&&(r.x=n[0]),f++);e<h;)s&&"undefined"==typeof n[f]||(0<u[e].indexOf(".")?t.prototype.setNestedProperty(r,n[f],u[e]):r[u[e]]=n[f]),f++,e++;else"object"==typeof n&&(r=n,n.dataLabels&&(i._hasPointLabels=!0),n.marker&&(i._hasPointMarkers=!0));return r},t.prototype.resolveColor=function(){var n=this.series,t=n.chart.styledMode,i=n.chart.options.chart.colorCount,r;delete this.nonZonedColor;n.options.colorByPoint?(t||(i=n.options.colors||n.chart.options.colors,r=i[n.colorCounter],i=i.length),t=n.colorCounter,n.colorCounter++,n.colorCounter===i&&(n.colorCounter=0)):(t||(r=n.color),t=n.colorIndex);this.colorIndex=f(this.options.colorIndex,t);this.color=f(this.options.color,r)},t.prototype.setNestedProperty=function(n,t,i){return i.split(".").reduce(function(n,i,r,u){return n[i]=u.length-1===r?t:s(n[i],!0)?n[i]:{},n[i]},n),n},t.prototype.tooltipFormatter=function(n){var t=this.series,i=t.tooltipOptions,e=f(i.valueDecimals,""),r=i.valuePrefix||"",u=i.valueSuffix||"";return t.chart.styledMode&&(n=t.chart.tooltip.styledModeFormat(n)),(t.pointArrayMap||["y"]).forEach(function(t){t="{point."+t;(r||u)&&(n=n.replace(RegExp(t+"}","g"),r+t+"}"+u));n=n.replace(RegExp(t+"}","g"),t+":,."+e+"f}")}),a(n,{point:this,series:this.series},t.chart)},t.prototype.update=function(n,t,i,r){function a(){u.applyOptions(n);var r=o&&u.hasDummyGraphic;r=null===u.y?!r:r;o&&r&&(u.graphic=o.destroy(),delete u.hasDummyGraphic);s(n,!0)&&(o&&o.element&&n&&n.marker&&"undefined"!=typeof n.marker.symbol&&(u.graphic=o.destroy()),n&&n.dataLabels&&u.dataLabel&&(u.dataLabel=u.dataLabel.destroy()),u.connector&&(u.connector=u.connector.destroy()));h=u.index;e.updateParallelArrays(u,h);c.data[h]=s(c.data[h],!0)||s(n,!0)?u.options:f(n,c.data[h]);e.isDirty=e.isDirtyData=!0;!e.fixedBox&&e.hasCartesianSeries&&(l.isDirtyBox=!0);"point"===c.legendType&&(l.isDirtyLegend=!0);t&&l.redraw(i)}var u=this,e=u.series,o=u.graphic,l=e.chart,c=e.options,h;t=f(t,!0);!1===r?a():u.firePointEvent("update",{options:n},a)},t.prototype.remove=function(n,t){this.series.removePoint(this.series.data.indexOf(this),n,t)},t.prototype.select=function(n,t){var i=this,r=i.series,u=r.chart;this.selectedStaging=n=f(n,!i.selected);i.firePointEvent(n?"select":"unselect",{accumulate:t},function(){i.selected=i.options.selected=n;r.options.data[r.data.indexOf(i)]=i.options;i.setState(n&&"select");t||u.getSelectedPoints().forEach(function(n){var t=n.series;n.selected&&n!==i&&(n.selected=n.options.selected=!1,t.options.data[t.data.indexOf(n)]=n.options,n.setState(u.hoverPoints&&t.options.inactiveOtherPoints?"inactive":""),n.firePointEvent("unselect"))})});delete this.selectedStaging},t.prototype.onMouseOver=function(n){var i=this.series.chart,t=i.pointer;n=n?t.normalize(n):t.getChartCoordinatesFromPoint(this,i.inverted);t.runPointActions(n,this)},t.prototype.onMouseOut=function(){var n=this.series.chart;this.firePointEvent("mouseOut");this.series.options.inactiveOtherPoints||(n.hoverPoints||[]).forEach(function(n){n.setState()});n.hoverPoints=n.hoverPoint=null},t.prototype.importEvents=function(){if(!this.hasImportedEvents){var n=this,t=d(n.series.options.point,n.options).events;n.events=t;g(t,function(t,i){k(t)&&v(n,i,t)});this.hasImportedEvents=!0}},t.prototype.setState=function(t,i){var u=this.series,v=this.state,a=u.options.states[t||"normal"]||{},y=l.plotOptions[u.type].marker&&u.options.marker,g=y&&!1===y.enabled,b=y&&y.states&&y.states[t||"normal"]||{},nt=!1===b.enabled,k=this.marker||{},p=u.chart,tt=y&&u.markerAttribs,c=u.halo,s,r=u.stateMarkerGraphic,w,d;t=t||"";t===this.state&&!i||this.selected&&"select"!==t||!1===a.enabled||t&&(nt||g&&!1===b.enabled)||t&&k.states&&k.states[t]&&!1===k.states[t].enabled||(this.state=t,tt&&(s=u.markerAttribs(this,t)),this.graphic&&!this.hasDummyGraphic?(v&&this.graphic.removeClass("highcharts-point-"+v),t&&this.graphic.addClass("highcharts-point-"+t),p.styledMode||(w=u.pointAttribs(this,t),d=f(p.options.chart.animation,a.animation),u.options.inactiveOtherPoints&&o(w.opacity)&&((this.dataLabels||[]).forEach(function(n){n&&n.animate({opacity:w.opacity},d)}),this.connector&&this.connector.animate({opacity:w.opacity},d)),this.graphic.animate(w,d)),s&&this.graphic.animate(s,f(p.options.chart.animation,b.animation,y.animation)),r&&r.hide()):(t&&b&&(v=k.symbol||u.symbol,r&&r.currentSymbol!==v&&(r=r.destroy()),s&&(r?r[i?"animate":"attr"]({x:s.x,y:s.y}):v&&(u.stateMarkerGraphic=r=p.renderer.symbol(v,s.x,s.y,s.width,s.height).add(u.markerGroup),r.currentSymbol=v)),!p.styledMode&&r&&r.attr(u.pointAttribs(this,t))),r&&(r[t&&this.isInside?"show":"hide"](),r.element.point=this,r.addClass(this.getClassName(),!0))),a=a.halo,s=(r=this.graphic||r)&&r.visibility||"inherit",a&&a.size&&r&&"hidden"!==s&&!this.isCluster?(c||(u.halo=c=p.renderer.path().add(r.parentGroup)),c.show()[i?"animate":"attr"]({d:this.haloPath(a.size)}),c.attr({"class":"highcharts-halo highcharts-color-"+f(this.colorIndex,u.colorIndex)+(this.className?" "+this.className:""),visibility:s,zIndex:-1}),c.point=this,p.styledMode||c.attr(e({fill:this.color||u.color,"fill-opacity":a.opacity},n.filterUserAttributes(a.attributes||{})))):c&&c.point&&c.point.haloPath&&c.animate({d:c.point.haloPath(0)},null,c.hide),h(this,"afterSetState",{state:t}))},t.prototype.haloPath=function(n){return this.series.chart.renderer.symbols.circle(Math.floor(this.plotX)-n,this.plotY-n,2*n,2*n)},t}(),t}),i(t,"Core/Pointer.js",[t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Color/Palette.js"],t["Core/Tooltip.js"],t["Core/Utilities.js"]],function(n,t,i,r,u){var y=n.parse,c=t.charts,p=t.noop,e=u.addEvent,w=u.attr,b=u.css,k=u.defined,s=u.extend,a=u.find,h=u.fireEvent,o=u.isNumber,l=u.isObject,d=u.objectEach,g=u.offset,f=u.pick,v=u.splat;return n=function(){function n(n,t){this.lastValidTouch={};this.pinchDown=[];this.runChartClick=!1;this.eventsToUnbind=[];this.chart=n;this.hasDragged=!1;this.options=t;this.init(n,t)}return n.prototype.applyInactiveState=function(n){var i=[],t;(n||[]).forEach(function(n){t=n.series;i.push(t);t.linkedParent&&i.push(t.linkedParent);t.linkedSeries&&(i=i.concat(t.linkedSeries));t.navigatorSeries&&i.push(t.navigatorSeries)});this.chart.series.forEach(function(n){-1===i.indexOf(n)?n.setState("inactive",!0):n.options.inactiveOtherPoints&&n.setAllPointsToState("inactive")})},n.prototype.destroy=function(){var i=this;this.eventsToUnbind.forEach(function(n){return n()});this.eventsToUnbind=[];t.chartCount||(n.unbindDocumentMouseUp&&(n.unbindDocumentMouseUp=n.unbindDocumentMouseUp()),n.unbindDocumentTouchEnd&&(n.unbindDocumentTouchEnd=n.unbindDocumentTouchEnd()));clearInterval(i.tooltipTimeout);d(i,function(n,t){i[t]=void 0})},n.prototype.drag=function(n){var t=this.chart,f=t.options.chart,r=this.zoomHor,b=this.zoomVert,e=t.plotLeft,o=t.plotTop,v=t.plotWidth,p=t.plotHeight,c=this.mouseDownX||0,a=this.mouseDownY||0,k=l(f.panning)?f.panning&&f.panning.enabled:f.panning,d=f.panKey&&n[f.panKey+"Key"],s=n.chartX,h=n.chartY,u=this.selectionMarker,w;u&&u.touch||(s<e?s=e:s>e+v&&(s=e+v),h<o?h=o:h>o+p&&(h=o+p),this.hasDragged=Math.sqrt(Math.pow(c-s,2)+Math.pow(a-h,2)),10<this.hasDragged)&&(w=t.isInsidePlot(c-e,a-o,{visiblePlotOnly:!0}),t.hasCartesianSeries&&(this.zoomX||this.zoomY)&&w&&!d&&!u&&(this.selectionMarker=u=t.renderer.rect(e,o,r?1:v,b?1:p,0).attr({"class":"highcharts-selection-marker",zIndex:7}).add(),t.styledMode||u.attr({fill:f.selectionMarkerFill||y(i.highlightColor80).setOpacity(.25).get()})),u&&r&&(r=s-c,u.attr({width:Math.abs(r),x:(0<r?0:r)+c})),u&&b&&(r=h-a,u.attr({height:Math.abs(r),y:(0<r?0:r)+a})),w&&!u&&k&&t.pan(n,f.panning))},n.prototype.dragStart=function(n){var t=this.chart;t.mouseIsDown=n.type;t.cancelClick=!1;t.mouseDownX=this.mouseDownX=n.chartX;t.mouseDownY=this.mouseDownY=n.chartY},n.prototype.drop=function(n){var l=this,i=this.chart,r=this.hasPinched;if(this.selectionMarker){var e={originalEvent:n,xAxis:[],yAxis:[]},t=this.selectionMarker,u=t.attr?t.attr("x"):t.x,f=t.attr?t.attr("y"):t.y,a=t.attr?t.attr("width"):t.width,v=t.attr?t.attr("height"):t.height,c;(this.hasDragged||r)&&(i.axes.forEach(function(t){if(t.zoomEnabled&&k(t.min)&&(r||l[{xAxis:"zoomX",yAxis:"zoomY"}[t.coll]])&&o(u)&&o(f)){var i=t.horiz,s="touchend"===n.type?t.minPixelPadding:0,h=t.toValue((i?u:f)+s);i=t.toValue((i?u+a:f+v)-s);e[t.coll].push({axis:t,min:Math.min(h,i),max:Math.max(h,i)});c=!0}}),c&&h(i,"selection",e,function(n){i.zoom(s(n,r?{animation:!1}:null))}));o(i.index)&&(this.selectionMarker=this.selectionMarker.destroy());r&&this.scaleGroups()}i&&o(i.index)&&(b(i.container,{cursor:i._cursor}),i.cancelClick=10<this.hasDragged,i.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},n.prototype.findNearestKDPoint=function(n,t,i){var u=this.chart,f=u.hoverPoint,r;return(u=u.tooltip,f&&u&&u.isStickyOnContact())?f:(n.forEach(function(n){var u=!(n.noSharedTooltip&&t)&&0>n.options.findNearestPointBy.indexOf("y"),f,e;n=n.searchPoint(i,u);!(u=l(n,!0)&&n.series)||(u=!l(r,!0))||(u=r.distX-n.distX,f=r.dist-n.dist,e=(n.series.group&&n.series.group.zIndex)-(r.series.group&&r.series.group.zIndex),u=0<(0!==u&&t?u:0!==f?f:0!==e?e:r.series.index>n.series.index?-1:1));u&&(r=n)}),r)},n.prototype.getChartCoordinatesFromPoint=function(n,t){var r=n.series,u=r.xAxis,i,e,s;return(r=r.yAxis,i=n.shapeArgs,u&&r)?(e=f(n.clientX,n.plotX),s=n.plotY||0,n.isNode&&i&&o(i.x)&&o(i.y)&&(e=i.x,s=i.y),t?{chartX:r.len+r.pos-s,chartY:u.len+u.pos-e}:{chartX:e+u.pos,chartY:s+r.pos}):i&&i.x&&i.y?{chartX:i.x,chartY:i.y}:void 0},n.prototype.getChartPosition=function(){var n,t,i;return this.chartPosition?this.chartPosition:(n=this.chart.container,t=g(n),this.chartPosition={left:t.left,top:t.top,scaleX:1,scaleY:1},i=n.offsetWidth,n=n.offsetHeight,2<i&&2<n&&(this.chartPosition.scaleX=t.width/i,this.chartPosition.scaleY=t.height/n),this.chartPosition)},n.prototype.getCoordinates=function(n){var t={xAxis:[],yAxis:[]};return this.chart.axes.forEach(function(i){t[i.isXAxis?"xAxis":"yAxis"].push({axis:i,value:i.toValue(n[i.horiz?"chartX":"chartY"])})}),t},n.prototype.getHoverData=function(n,t,i,r,u,e){var v=[],o,c,s;return r=!(!r||!n),o={chartX:e?e.chartX:void 0,chartY:e?e.chartY:void 0,shared:u},h(this,"beforeGetHoverData",o),c=t&&!t.stickyTracking?[t]:i.filter(function(n){return o.filter?o.filter(n):n.visible&&!(!u&&n.directTouch)&&f(n.options.enableMouseTracking,!0)&&n.stickyTracking}),s=r||!e?n:this.findNearestKDPoint(c,u,e),t=s&&s.series,s&&(u&&!t.noSharedTooltip?(c=i.filter(function(n){return o.filter?o.filter(n):n.visible&&!(!u&&n.directTouch)&&f(n.options.enableMouseTracking,!0)&&!n.noSharedTooltip}),c.forEach(function(n){var t=a(n.points,function(n){return n.x===s.x&&!n.isNull});l(t)&&(n.chart.isBoosting&&(t=n.getPoint(t)),v.push(t))})):v.push(s)),o={hoverPoint:s},h(this,"afterGetHoverData",o),{hoverPoint:o.hoverPoint,hoverSeries:t,hoverPoints:v}},n.prototype.getPointFromEvent=function(n){n=n.target;for(var t;n&&!t;)t=n.point,n=n.parentNode;return t},n.prototype.onTrackerMouseOut=function(n){n=n.relatedTarget||n.toElement;var t=this.chart.hoverSeries;this.isDirectTouch=!1;!t||!n||t.stickyTracking||this.inClass(n,"highcharts-tooltip")||this.inClass(n,"highcharts-series-"+t.index)&&this.inClass(n,"highcharts-tracker")||t.onMouseOut()},n.prototype.inClass=function(n,t){for(var i;n;){if(i=w(n,"class")){if(-1!==i.indexOf(t))return!0;if(-1!==i.indexOf("highcharts-container"))return!1}n=n.parentNode}},n.prototype.init=function(n,t){this.options=t;this.chart=n;this.runChartClick=!(!t.chart.events||!t.chart.events.click);this.pinchDown=[];this.lastValidTouch={};r&&(n.tooltip=new r(n,t.tooltip),this.followTouchMove=f(t.tooltip.followTouchMove,!0));this.setDOMEvents()},n.prototype.normalize=function(n,t){var i=n.touches,r=i?i.length?i.item(0):f(i.changedTouches,n.changedTouches)[0]:n;return t||(t=this.getChartPosition()),i=r.pageX-t.left,r=r.pageY-t.top,i/=t.scaleX,r/=t.scaleY,s(n,{chartX:Math.round(i),chartY:Math.round(r)})},n.prototype.onContainerClick=function(n){var t=this.chart,i=t.hoverPoint,r,u;n=this.normalize(n);r=t.plotLeft;u=t.plotTop;t.cancelClick||(i&&this.inClass(n.target,"highcharts-tracker")?(h(i.series,"click",s(n,{point:i})),t.hoverPoint&&i.firePointEvent("click",n)):(s(n,this.getCoordinates(n)),t.isInsidePlot(n.chartX-r,n.chartY-u,{visiblePlotOnly:!0})&&h(t,"click",n)))},n.prototype.onContainerMouseDown=function(n){var i=1==((n.buttons||n.button)&1);if(n=this.normalize(n),t.isFirefox&&0!==n.button)this.onContainerMouseMove(n);("undefined"==typeof n.button||i)&&(this.zoomOption(n),i&&n.preventDefault&&n.preventDefault(),this.dragStart(n))},n.prototype.onContainerMouseLeave=function(t){var r=c[f(n.hoverChartIndex,-1)],i=this.chart.tooltip;i&&i.shouldStickOnContact()&&this.inClass(t.relatedTarget,"highcharts-tooltip-container")||(t=this.normalize(t),r&&(t.relatedTarget||t.toElement)&&(r.pointer.reset(),r.pointer.chartPosition=void 0),i&&!i.isHidden&&this.reset())},n.prototype.onContainerMouseEnter=function(){delete this.chartPosition},n.prototype.onContainerMouseMove=function(n){var t=this.chart;n=this.normalize(n);this.setHoverChartIndex();n.preventDefault||(n.returnValue=!1);("mousedown"===t.mouseIsDown||this.touchSelect(n))&&this.drag(n);!t.openMenu&&(this.inClass(n.target,"highcharts-tracker")||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop,{visiblePlotOnly:!0}))&&(this.inClass(n.target,"highcharts-no-tooltip")?this.reset(!1,0):this.runPointActions(n))},n.prototype.onDocumentTouchEnd=function(t){var i=c[f(n.hoverChartIndex,-1)];i&&i.pointer.drop(t)},n.prototype.onContainerTouchMove=function(n){if(this.touchSelect(n))this.onContainerMouseMove(n);else this.touch(n)},n.prototype.onContainerTouchStart=function(n){if(this.touchSelect(n))this.onContainerMouseDown(n);else this.zoomOption(n),this.touch(n,!0)},n.prototype.onDocumentMouseMove=function(n){var t=this.chart,r=this.chartPosition,i;n=this.normalize(n,r);i=t.tooltip;!r||i&&i.isStickyOnContact()||t.isInsidePlot(n.chartX-t.plotLeft,n.chartY-t.plotTop,{visiblePlotOnly:!0})||this.inClass(n.target,"highcharts-tracker")||this.reset()},n.prototype.onDocumentMouseUp=function(t){var i=c[f(n.hoverChartIndex,-1)];i&&i.pointer.drop(t)},n.prototype.pinch=function(n){var t=this,r=t.chart,i=t.pinchDown,u=n.touches||[],e=u.length,o=t.lastValidTouch,c=t.hasZoom,l={},v=1===e&&(t.inClass(n.target,"highcharts-tracker")&&r.runTrackerClick||t.runChartClick),a={},h=t.selectionMarker;1<e?t.initiated=!0:1===e&&this.followTouchMove&&(t.initiated=!1);c&&t.initiated&&!v&&!1!==n.cancelable&&n.preventDefault();[].map.call(u,function(n){return t.normalize(n)});"touchstart"===n.type?([].forEach.call(u,function(n,t){i[t]={chartX:n.chartX,chartY:n.chartY}}),o.x=[i[0].chartX,i[1]&&i[1].chartX],o.y=[i[0].chartY,i[1]&&i[1].chartY],r.axes.forEach(function(n){if(n.zoomEnabled){var t=r.bounds[n.horiz?"h":"v"],i=n.minPixelPadding,u=n.toPixels(Math.min(f(n.options.min,n.dataMin),n.dataMin)),e=n.toPixels(Math.max(f(n.options.max,n.dataMax),n.dataMax)),o=Math.max(u,e);t.min=Math.min(n.pos,Math.min(u,e)-i);t.max=Math.max(n.pos+n.len,o+i)}}),t.res=!0):t.followTouchMove&&1===e?this.runPointActions(t.normalize(n)):i.length&&(h||(t.selectionMarker=h=s({destroy:p,touch:!0},r.plotBox)),t.pinchTranslate(i,u,l,h,a,o),t.hasPinched=c,t.scaleGroups(l,a),t.res&&(t.res=!1,this.reset(!1,0)))},n.prototype.pinchTranslate=function(n,t,i,r,u,f){this.zoomHor&&this.pinchTranslateDirection(!0,n,t,i,r,u,f);this.zoomVert&&this.pinchTranslateDirection(!1,n,t,i,r,u,f)},n.prototype.pinchTranslateDirection=function(n,t,i,r,u,f,e,o){var v=this.chart,l=n?"x":"y",b=n?"X":"Y",y="chart"+b,tt=n?"width":"height",k=v["plot"+(n?"Left":"Top")],d=v.inverted,p=v.bounds[n?"h":"v"],it=1===t.length,w=t[0][y],rt=!it&&t[1][y],nt;t=function(){"number"==typeof c&&20<Math.abs(w-rt)&&(s=o||Math.abs(h-c)/Math.abs(w-rt));g=(k-h)/s+w;a=v["plot"+(n?"Width":"Height")]/s};var a,g,s=o||1,h=i[0][y],c=!it&&i[1][y];t();i=g;i<p.min?(i=p.min,nt=!0):i+a>p.max&&(i=p.max-a,nt=!0);nt?(h-=.8*(h-e[l][0]),"number"==typeof c&&(c-=.8*(c-e[l][1])),t()):e[l]=[h,c];d||(f[l]=g-k,f[tt]=a);f=d?1/s:s;u[tt]=a;u[l]=i;r[d?n?"scaleY":"scaleX":"scale"+b]=s;r["translate"+b]=f*k+(h-f*w)},n.prototype.reset=function(n,t){var i=this.chart,o=i.hoverSeries,r=i.hoverPoint,f=i.hoverPoints,u=i.tooltip,e=u&&u.shared?f:r;n&&e&&v(e).forEach(function(t){t.series.isCartesian&&"undefined"==typeof t.plotX&&(n=!1)});n?u&&e&&v(e).length&&(u.refresh(e),u.shared&&f?f.forEach(function(n){n.setState(n.state,!0);n.series.isCartesian&&(n.series.xAxis.crosshair&&n.series.xAxis.drawCrosshair(null,n),n.series.yAxis.crosshair&&n.series.yAxis.drawCrosshair(null,n))}):r&&(r.setState(r.state,!0),i.axes.forEach(function(n){n.crosshair&&r.series[n.coll]===n&&n.drawCrosshair(null,r)}))):(r&&r.onMouseOut(),f&&f.forEach(function(n){n.setState()}),o&&o.onMouseOut(),u&&u.hide(t),this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove()),i.axes.forEach(function(n){n.hideCrosshair()}),this.hoverX=i.hoverPoints=i.hoverPoint=null)},n.prototype.runPointActions=function(t,i){var r=this.chart,s=r.tooltip&&r.tooltip.options.enabled?r.tooltip:void 0,l=s?s.shared:!1,u=i||r.hoverPoint,o=u&&u.series||r.hoverSeries,h;if(i=this.getHoverData(u,o,r.series,(!t||"touchmove"!==t.type)&&(!!i||o&&o.directTouch&&this.isDirectTouch),l,t),u=i.hoverPoint,o=i.hoverSeries,h=i.hoverPoints,i=o&&o.tooltipOptions.followPointer&&!o.tooltipOptions.split,l=l&&o&&!o.noSharedTooltip,u&&(u!==r.hoverPoint||s&&s.isHidden)){if((r.hoverPoints||[]).forEach(function(n){-1===h.indexOf(n)&&n.setState()}),r.hoverSeries!==o&&o.onMouseOver(),this.applyInactiveState(h),(h||[]).forEach(function(n){n.setState("hover")}),r.hoverPoint&&r.hoverPoint.firePointEvent("mouseOut"),!u.series)return;r.hoverPoints=h;r.hoverPoint=u;u.firePointEvent("mouseOver");s&&s.refresh(l?h:u,t)}else i&&s&&!s.isHidden&&(u=s.getAnchor([{}],t),r.isInsidePlot(u[0],u[1],{visiblePlotOnly:!0})&&s.updatePosition({plotX:u[0],plotY:u[1]}));this.unDocMouseMove||(this.unDocMouseMove=e(r.container.ownerDocument,"mousemove",function(t){var i=c[n.hoverChartIndex];if(i)i.pointer.onDocumentMouseMove(t)}),this.eventsToUnbind.push(this.unDocMouseMove));r.axes.forEach(function(n){var u=f((n.crosshair||{}).snap,!0),i;u&&((i=r.hoverPoint)&&i.series[n.coll]===n||(i=a(h,function(t){return t.series[n.coll]===n})));i||!u?n.drawCrosshair(t,i):n.hideCrosshair()})},n.prototype.scaleGroups=function(n,t){var i=this.chart;i.series.forEach(function(r){var u=n||r.getPlotBox();r.xAxis&&r.xAxis.zoomEnabled&&r.group&&(r.group.attr(u),r.markerGroup&&(r.markerGroup.attr(u),r.markerGroup.clip(t?i.clipRect:null)),r.dataLabelsGroup&&r.dataLabelsGroup.attr(u))});i.clipRect.attr(t||i.clipBox)},n.prototype.setDOMEvents=function(){var f=this,i=this.chart.container,u=i.ownerDocument,r;for(i.onmousedown=this.onContainerMouseDown.bind(this),i.onmousemove=this.onContainerMouseMove.bind(this),i.onclick=this.onContainerClick.bind(this),this.eventsToUnbind.push(e(i,"mouseenter",this.onContainerMouseEnter.bind(this))),this.eventsToUnbind.push(e(i,"mouseleave",this.onContainerMouseLeave.bind(this))),n.unbindDocumentMouseUp||(n.unbindDocumentMouseUp=e(u,"mouseup",this.onDocumentMouseUp.bind(this))),r=this.chart.renderTo.parentElement;r&&"BODY"!==r.tagName;)this.eventsToUnbind.push(e(r,"scroll",function(){delete f.chartPosition})),r=r.parentElement;t.hasTouch&&(this.eventsToUnbind.push(e(i,"touchstart",this.onContainerTouchStart.bind(this),{passive:!1})),this.eventsToUnbind.push(e(i,"touchmove",this.onContainerTouchMove.bind(this),{passive:!1})),n.unbindDocumentTouchEnd||(n.unbindDocumentTouchEnd=e(u,"touchend",this.onDocumentTouchEnd.bind(this),{passive:!1})))},n.prototype.setHoverChartIndex=function(){var r=this.chart,i=t.charts[f(n.hoverChartIndex,-1)];if(i&&i!==r)i.pointer.onContainerMouseLeave({relatedTarget:!0});i&&i.mouseIsDown||(n.hoverChartIndex=r.index)},n.prototype.touch=function(n,t){var i=this.chart,u,r;this.setHoverChartIndex();1===n.touches.length?(n=this.normalize(n),(u=i.isInsidePlot(n.chartX-i.plotLeft,n.chartY-i.plotTop,{visiblePlotOnly:!0}))&&!i.openMenu)?(t&&this.runPointActions(n),"touchmove"===n.type&&(t=this.pinchDown,r=t[0]?4<=Math.sqrt(Math.pow(t[0].chartX-n.chartX,2)+Math.pow(t[0].chartY-n.chartY,2)):!1),f(r,!0)&&this.pinch(n)):t&&this.reset():2===n.touches.length&&this.pinch(n)},n.prototype.touchSelect=function(n){return!(!this.chart.options.chart.zoomBySingleTouch||!n.touches||1!==n.touches.length)},n.prototype.zoomOption=function(n){var t=this.chart,i=t.options.chart,r;t=t.inverted;r=i.zoomType||"";/touch/.test(n.type)&&(r=f(i.pinchType,r));this.zoomX=n=/x/.test(r);this.zoomY=i=/y/.test(r);this.zoomHor=n&&!t||i&&t;this.zoomVert=i&&!t||n&&t;this.hasZoom=n||i},n}(),n}),i(t,"Core/MSPointer.js",[t["Core/Globals.js"],t["Core/Pointer.js"],t["Core/Utilities.js"]],function(n,t,i){function o(){var n=[];return n.item=function(n){return this[n]},y(r,function(t){n.push({pageX:t.pageX,pageY:t.pageY,target:t.target})}),n}function u(n,i,r,u){var f=h[t.hoverChartIndex||NaN];("touch"===n.pointerType||n.pointerType===n.MSPOINTER_TYPE_TOUCH)&&f&&(f=f.pointer,u(n),f[i]({type:r,target:n.currentTarget,preventDefault:l,touches:o()}))}var s=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),h=n.charts,c=n.doc,l=n.noop,f=n.win,a=i.addEvent,v=i.css,y=i.objectEach,p=i.removeEvent,r={},e=!!f.PointerEvent;return function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return s(i,t),i.isRequired=function(){return!(n.hasTouch||!f.PointerEvent&&!f.MSPointerEvent)},i.prototype.batchMSEvents=function(n){n(this.chart.container,e?"pointerdown":"MSPointerDown",this.onContainerPointerDown);n(this.chart.container,e?"pointermove":"MSPointerMove",this.onContainerPointerMove);n(c,e?"pointerup":"MSPointerUp",this.onDocumentPointerUp)},i.prototype.destroy=function(){this.batchMSEvents(p);t.prototype.destroy.call(this)},i.prototype.init=function(n,i){t.prototype.init.call(this,n,i);this.hasZoom&&v(n.container,{"-ms-touch-action":"none","touch-action":"none"})},i.prototype.onContainerPointerDown=function(n){u(n,"onContainerTouchStart","touchstart",function(n){r[n.pointerId]={pageX:n.pageX,pageY:n.pageY,target:n.currentTarget}})},i.prototype.onContainerPointerMove=function(n){u(n,"onContainerTouchMove","touchmove",function(n){r[n.pointerId]={pageX:n.pageX,pageY:n.pageY};r[n.pointerId].target||(r[n.pointerId].target=n.currentTarget)})},i.prototype.onDocumentPointerUp=function(n){u(n,"onDocumentTouchEnd","touchend",function(n){delete r[n.pointerId]})},i.prototype.setDOMEvents=function(){t.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(a)},i}(t)}),i(t,"Core/Legend/Legend.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/FormatUtilities.js"],t["Core/Globals.js"],t["Core/Series/Point.js"],t["Core/Renderer/RendererUtilities.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f){var a=n.animObject,v=n.setAnimation,y=t.format,h;n=i.isFirefox;h=i.marginNames;i=i.win;var p=u.distribute,c=f.addEvent,w=f.createElement,b=f.css,l=f.defined,k=f.discardElement,d=f.find,o=f.fireEvent,g=f.isNumber,s=f.merge,e=f.pick,nt=f.relativeLength,tt=f.stableSort,it=f.syncTimeout;return u=f.wrap,f=function(){function n(n,t){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={};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=n;this.init(n,t)}return n.prototype.init=function(n,t){this.chart=n;this.setOptions(t);t.enabled&&(this.render(),c(this.chart,"endResize",function(){this.legend.positionCheckboxes()}),this.proximate?this.unchartrender=c(this.chart,"render",function(){this.legend.proximatePositions();this.legend.positionItems()}):this.unchartrender&&this.unchartrender())},n.prototype.setOptions=function(n){var t=e(n.padding,8);this.options=n;this.chart.styledMode||(this.itemStyle=n.itemStyle,this.itemHiddenStyle=s(this.itemStyle,n.itemHiddenStyle));this.itemMarginTop=n.itemMarginTop||0;this.itemMarginBottom=n.itemMarginBottom||0;this.padding=t;this.initialItemY=t-5;this.symbolWidth=e(n.symbolWidth,16);this.pages=[];this.proximate="proximate"===n.layout&&!this.chart.inverted;this.baseline=void 0},n.prototype.update=function(n,t){var i=this.chart;this.setOptions(s(!0,this.options,n));this.destroy();i.isDirtyLegend=i.isDirtyBox=!0;e(t,!0)&&i.redraw();o(this,"afterUpdate")},n.prototype.colorizeItem=function(n,t){if(n.legendGroup[t?"removeClass":"addClass"]("highcharts-legend-item-hidden"),!this.chart.styledMode){var i=this.options,e=n.legendItem,s=n.legendLine,f=n.legendSymbol,r=this.itemHiddenStyle.color;i=t?i.itemStyle.color:r;var h=t?n.color||r:r,c=n.options&&n.options.marker,u={fill:h};e&&e.css({fill:i,color:i});s&&s.attr({stroke:h});f&&(c&&f.isMarker&&(u=n.pointAttribs(),t||(u.stroke=u.fill=r)),f.attr(u))}o(this,"afterColorizeItem",{item:n,visible:t})},n.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()},n.prototype.positionItem=function(n){var s=this,t=this.options,u=t.symbolPadding,f=!t.rtl,r=n._legendItemPos,e,i;t=r[0];r=r[1];e=n.checkbox;i=n.legendGroup;i&&i.element&&(u={translateX:f?t:this.legendWidth-t-2*u-4,translateY:r},f=function(){o(s,"afterPositionItem",{item:n})},l(i.translateY)?i.animate(u,void 0,f):(i.attr(u),f()));e&&(e.x=t,e.y=r)},n.prototype.destroyItem=function(n){var t=n.checkbox;["legendItem","legendLine","legendSymbol","legendGroup"].forEach(function(t){n[t]&&(n[t]=n[t].destroy())});t&&k(n.checkbox)},n.prototype.destroy=function(){function n(n){this[n]&&(this[n]=this[n].destroy())}this.getAllItems().forEach(function(t){["legendItem","legendGroup"].forEach(n,t)});"clipRect up down pager nav box title group".split(" ").forEach(n,this);this.display=null},n.prototype.positionCheckboxes=function(){var t=this.group&&this.group.alignAttr,i=this.clipHeight||this.legendHeight,r=this.titleHeight,n;t&&(n=t.translateY,this.allItems.forEach(function(u){var f=u.checkbox,e;f&&(e=n+r+f.y+(this.scrollOffset||0)+3,b(f,{left:t.translateX+u.checkboxOffset+f.x-20+"px",top:e+"px",display:this.proximate||e>n-6&&e<n+i-6?"":"none"}))},this))},n.prototype.renderTitle=function(){var n=this.options,r=this.padding,t=n.title,i=0;t.text&&(this.title||(this.title=this.chart.renderer.label(t.text,r-3,r-4,null,null,null,n.useHTML,null,"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"}),n=this.title.getBBox(),i=n.height,this.offsetWidth=n.width,this.contentGroup.attr({translateY:i}));this.titleHeight=i},n.prototype.setText=function(n){var t=this.options;n.legendItem.attr({text:t.labelFormat?y(t.labelFormat,n,this.chart):t.labelFormatter.call(n)})},n.prototype.renderItem=function(n){var r=this.chart,o=r.renderer,t=this.options,v=this.symbolWidth,f=t.symbolPadding||0,h=this.itemStyle,k=this.itemHiddenStyle,y="horizontal"===t.layout?e(t.itemDistance,20):0,c=!t.rtl,p=!n.series,l=!p&&n.series.drawLegendSymbol?n.series:n,u=l.options,a=this.createCheckboxForItem&&u&&u.showCheckbox,w=t.useHTML,b=n.options.className,i=n.legendItem;u=v+f+y+(a?20:0);i||(n.legendGroup=o.g("legend-item").addClass("highcharts-"+l.type+"-series highcharts-color-"+n.colorIndex+(b?" "+b:"")+(p?" highcharts-series-"+n.index:"")).attr({zIndex:1}).add(this.scrollGroup),n.legendItem=i=o.text("",c?v+f:-f,this.baseline||0,w),r.styledMode||i.css(s(n.visible?h:k)),i.attr({align:c?"left":"right",zIndex:2}).add(n.legendGroup),this.baseline||(this.fontMetrics=o.fontMetrics(r.styledMode?12:h.fontSize,i),this.baseline=this.fontMetrics.f+3+this.itemMarginTop,i.attr("y",this.baseline),this.symbolHeight=t.symbolHeight||this.fontMetrics.f,t.squareSymbol&&(this.symbolWidth=e(t.symbolWidth,Math.max(this.symbolHeight,16)),u=this.symbolWidth+f+y+(a?20:0),c&&i.attr("x",this.symbolWidth+f))),l.drawLegendSymbol(this,n),this.setItemEvents&&this.setItemEvents(n,i,w));a&&!n.checkbox&&this.createCheckboxForItem&&this.createCheckboxForItem(n);this.colorizeItem(n,n.visible);!r.styledMode&&h.width||i.css({width:(t.itemWidth||this.widthOption||r.spacingBox.width)-u+"px"});this.setText(n);r=i.getBBox();n.itemWidth=n.checkboxOffset=t.itemWidth||n.legendItemWidth||r.width+u;this.maxItemWidth=Math.max(this.maxItemWidth,n.itemWidth);this.totalItemWidth+=n.itemWidth;this.itemHeight=n.itemHeight=Math.round(n.legendItemHeight||r.height||this.symbolHeight)},n.prototype.layoutItem=function(n){var t=this.options,i=this.padding,r="horizontal"===t.layout,u=n.itemHeight,f=this.itemMarginBottom,o=this.itemMarginTop,h=r?e(t.itemDistance,20):0,s=this.maxLegendWidth;t=t.alignColumns&&this.totalItemWidth>s?this.maxItemWidth:n.itemWidth;r&&this.itemX-i+t>s&&(this.itemX=i,this.lastLineHeight&&(this.itemY+=o+this.lastLineHeight+f),this.lastLineHeight=0);this.lastItemY=o+this.itemY+f;this.lastLineHeight=Math.max(u,this.lastLineHeight);n._legendItemPos=[this.itemX,this.itemY];r?this.itemX+=t:(this.itemY+=o+u+f,this.lastLineHeight=u);this.offsetWidth=this.widthOption||Math.max((r?this.itemX-i-(n.checkbox?0:h):t)+i,this.offsetWidth)},n.prototype.getAllItems=function(){var n=[];return this.chart.series.forEach(function(t){var i=t&&t.options;t&&e(i.showInLegend,l(i.linkedTo)?!1:void 0,!0)&&(n=n.concat(t.legendItems||("point"===i.legendType?t.data:t)))}),o(this,"afterGetAllItems",{allItems:n}),n},n.prototype.getAlignment=function(){var n=this.options;return this.proximate?n.align.charAt(0)+"tv":n.floating?"":n.align.charAt(0)+n.verticalAlign.charAt(0)+n.layout.charAt(0)},n.prototype.adjustMargins=function(n,t){var i=this.chart,r=this.options,u=this.getAlignment();u&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(f,o){f.test(u)&&!l(n[o])&&(i[h[o]]=Math.max(i[h[o]],i.legend[(o+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][o]*r[o%2?"x":"y"]+e(r.margin,12)+t[o]+(i.titleOffset[o]||0)))})},n.prototype.proximatePositions=function(){var n=this.chart,t=[],i="left"===this.options.align;this.allItems.forEach(function(r){var u,f=i,e;r.yAxis&&(r.xAxis.options.reversed&&(f=!f),r.points&&(u=d(f?r.points:r.points.slice(0).reverse(),function(n){return g(n.plotY)})),f=this.itemMarginTop+r.legendItem.getBBox().height+this.itemMarginBottom,e=r.yAxis.top-n.plotTop,r.visible?(u=u?u.plotY:r.yAxis.height,u+=e-.3*f):u=e+r.yAxis.height,t.push({target:u,size:f,item:r}))},this);p(t,n.plotHeight).forEach(function(t){t.item._legendItemPos&&(t.item._legendItemPos[1]=n.plotTop-n.spacing[0]+t.pos)})},n.prototype.render=function(){var f=this.chart,h=f.renderer,i=this.options,e=this.padding,n=this.getAllItems(),s=this.group,t=this.box,u,r;this.itemX=e;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=nt(i.width,f.spacingBox.width-e);u=f.spacingBox.width-2*e-i.x;-1<["rm","lm"].indexOf(this.getAlignment().substring(0,2))&&(u/=2);this.maxLegendWidth=this.widthOption||u;s||(this.group=s=h.g("legend").addClass(i.className||"").attr({zIndex:7}).add(),this.contentGroup=h.g().attr({zIndex:1}).add(s),this.scrollGroup=h.g().add(this.contentGroup));this.renderTitle();tt(n,function(n,t){return(n.options&&n.options.legendIndex||0)-(t.options&&t.options.legendIndex||0)});i.reversed&&n.reverse();this.allItems=n;this.display=u=!!n.length;this.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0;n.forEach(this.renderItem,this);n.forEach(this.layoutItem,this);n=(this.widthOption||this.offsetWidth)+e;r=this.lastItemY+this.lastLineHeight+this.titleHeight;r=this.handleOverflow(r);r+=e;t||(this.box=t=h.rect().addClass("highcharts-legend-box").attr({r:i.borderRadius}).add(s),t.isNew=!0);f.styledMode||t.attr({stroke:i.borderColor,"stroke-width":i.borderWidth||0,fill:i.backgroundColor||"none"}).shadow(i.shadow);0<n&&0<r&&(t[t.isNew?"attr":"animate"](t.crisp.call({},{x:0,y:0,width:n,height:r},t.strokeWidth())),t.isNew=!1);t[u?"show":"hide"]();f.styledMode&&"none"===s.getStyle("display")&&(n=r=0);this.legendWidth=n;this.legendHeight=r;u&&this.align();this.proximate||this.positionItems();o(this,"afterRender")},n.prototype.align=function(n){void 0===n&&(n=this.chart.spacingBox);var t=this.chart,r=this.options,i=n.y;/(lth|ct|rth)/.test(this.getAlignment())&&0<t.titleOffset[0]?i+=t.titleOffset[0]:/(lbh|cb|rbh)/.test(this.getAlignment())&&0<t.titleOffset[2]&&(i-=t.titleOffset[2]);i!==n.y&&(n=s(n,{y:i}));this.group.align(s(r,{width:this.legendWidth,height:this.legendHeight,verticalAlign:this.proximate?"top":r.verticalAlign}),!0,n)},n.prototype.handleOverflow=function(n){var t=this,a=this.chart,h=a.renderer,u=this.options,i=u.y,g="top"===u.verticalAlign,l=this.padding,w=u.maxHeight,v=u.navigation,b=e(v.animation,!0),f=v.arrowSize||12,o=this.pages,p=this.allItems,k=function(n){"number"==typeof n?s.attr({height:n}):s&&(t.clipRect=s.destroy(),t.contentGroup.clip());t.contentGroup.div&&(t.contentGroup.div.style.clip=n?"rect("+l+"px,9999px,"+(l+n)+"px,0)":"auto")},d=function(n){return t[n]=h.circle(0,0,1.3*f).translate(f/2,f/2).add(r),a.styledMode||t[n].attr("fill","rgba(0,0,0,0.0001)"),t[n]},y,c,r,s;return i=a.spacingBox.height+(g?-i:i)-l,r=this.nav,s=this.clipRect,"horizontal"!==u.layout||"middle"===u.verticalAlign||u.floating||(i/=2),w&&(i=Math.min(i,w)),o.length=0,n&&0<i&&n>i&&!1!==v.enabled?(this.clipHeight=y=Math.max(i-20-this.titleHeight-l,0),this.currentPage=e(this.currentPage,1),this.fullHeight=n,p.forEach(function(n,t){var i=n._legendItemPos[1],u=Math.round(n.legendItem.getBBox().height),r=o.length;(!r||i-o[r-1]>y&&(c||i)!==o[r-1])&&(o.push(c||i),r++);n.pageIx=r-1;c&&(p[t-1].pageIx=r-1);t===p.length-1&&i+u-o[r-1]>y&&i!==c&&(o.push(i),n.pageIx=r);i!==c&&(c=i)}),s||(s=t.clipRect=h.clipRect(0,l,9999,0),t.contentGroup.clip(s)),k(y),r||(this.nav=r=h.g().attr({zIndex:1}).add(this.group),this.up=h.symbol("triangle",0,0,f,f).add(r),d("upTracker").on("click",function(){t.scroll(-1,b)}),this.pager=h.text("",15,10).addClass("highcharts-legend-navigation"),a.styledMode||this.pager.css(v.style),this.pager.add(r),this.down=h.symbol("triangle-down",0,0,f,f).add(r),d("downTracker").on("click",function(){t.scroll(1,b)})),t.scroll(0),n=i):r&&(k(),this.nav=r.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),n},n.prototype.scroll=function(n,t){var h=this,f=this.chart,s=this.pages,r=s.length,c=this.clipHeight,u=this.options.navigation,l=this.pager,y=this.padding,i=this.currentPage+n;i>r&&(i=r);0<i&&("undefined"!=typeof t&&v(t,f),this.nav.attr({translateX:y,translateY:c+this.padding+7+this.titleHeight,visibility:"visible"}),[this.up,this.upTracker].forEach(function(n){n.attr({"class":1===i?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})}),l.attr({text:i+"/"+r}),[this.down,this.downTracker].forEach(function(n){n.attr({x:18+this.pager.getBBox().width,"class":i===r?"highcharts-legend-nav-inactive":"highcharts-legend-nav-active"})},this),f.styledMode||(this.up.attr({fill:1===i?u.inactiveColor:u.activeColor}),this.upTracker.css({cursor:1===i?"default":"pointer"}),this.down.attr({fill:i===r?u.inactiveColor:u.activeColor}),this.downTracker.css({cursor:i===r?"default":"pointer"})),this.scrollOffset=-s[i-1]+this.initialItemY,this.scrollGroup.animate({translateY:this.scrollOffset}),this.currentPage=i,this.positionCheckboxes(),n=a(e(t,f.renderer.globalAnimation,!0)),it(function(){o(h,"afterScroll",{currentPage:i})},n.duration))},n.prototype.setItemEvents=function(n,t,i){var u=this,f=u.chart.renderer.boxWrapper,c=n instanceof r,e="highcharts-legend-"+(c?"point":"series")+"-active",l=u.chart.styledMode,h=function(t){u.allItems.forEach(function(i){n!==i&&[i].concat(i.linkedSeries||[]).forEach(function(n){n.setState(t,!c)})})};(i?[t,n.legendSymbol]:[n.legendGroup]).forEach(function(i){if(i)i.on("mouseover",function(){n.visible&&h("inactive");n.setState("hover");n.visible&&f.addClass(e);l||t.css(u.options.itemHoverStyle)}).on("mouseout",function(){u.chart.styledMode||t.css(s(n.visible?u.itemStyle:u.itemHiddenStyle));h("");f.removeClass(e);n.setState()}).on("click",function(t){var i=function(){n.setVisible&&n.setVisible();h(n.visible?"inactive":"")};f.removeClass(e);t={browserEvent:t};n.firePointEvent?n.firePointEvent("legendItemClick",t,i):o(n,"legendItemClick",t,i)})})},n.prototype.createCheckboxForItem=function(n){n.checkbox=w("input",{type:"checkbox",className:"highcharts-legend-checkbox",checked:n.selected,defaultChecked:n.selected},this.options.itemCheckboxStyle,this.chart.container);c(n.checkbox,"click",function(t){o(n.series||n,"checkboxClick",{checked:t.target.checked,item:n},function(){n.select()})})},n}(),(/Trident\/7\.0/.test(i.navigator&&i.navigator.userAgent)||n)&&u(f.prototype,"positionItem",function(n,t){var i=this,r=function(){t._legendItemPos&&n.call(i,t)};r();i.bubbleLegend||setTimeout(r)}),f}),i(t,"Core/Series/SeriesRegistry.js",[t["Core/Globals.js"],t["Core/DefaultOptions.js"],t["Core/Series/Point.js"],t["Core/Utilities.js"]],function(n,t,i,r){var f=t.defaultOptions,o=r.error,e=r.extendClass,s=r.merge,u;return function(t){function r(n,r){var e=f.plotOptions||{},u=r.defaultOptions;r.prototype.pointClass||(r.prototype.pointClass=i);r.prototype.type=n;u&&(e[n]=u);t.seriesTypes[n]=r}t.seriesTypes=n.seriesTypes;t.getSeries=function(n,i){var r,u;return void 0===i&&(i={}),r=n.options.chart,r=i.type||r.type||r.defaultSeriesType||"",u=t.seriesTypes[r],t||o(17,!0,n,{missingModuleFor:r}),r=new u,"function"==typeof r.init&&r.init(n,i),r};t.registerSeriesType=r;t.seriesType=function(n,u,o,h,c){var l=f.plotOptions||{};return u=u||"",l[n]=s(l[u],o),r(n,e(t.seriesTypes[u]||function(){},h)),t.seriesTypes[n].prototype.type=n,c&&(t.seriesTypes[n].prototype.pointClass=e(i,c)),t.seriesTypes[n]}}(u||(u={})),u}),i(t,"Core/Chart/Chart.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Axis/Axis.js"],t["Core/FormatUtilities.js"],t["Core/Foundation.js"],t["Core/Globals.js"],t["Core/Legend/Legend.js"],t["Core/MSPointer.js"],t["Core/DefaultOptions.js"],t["Core/Color/Palette.js"],t["Core/Pointer.js"],t["Core/Renderer/RendererRegistry.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Renderer/SVG/SVGRenderer.js"],t["Core/Time.js"],t["Core/Utilities.js"],t["Core/Renderer/HTML/AST.js"]],function(n,t,i,r,u,f,e,o,s,h,c,l,a,v,y,p){var st=n.animate,ui=n.animObject,ht=n.setAnimation,fi=i.numberFormat,bt=r.registerEventOptions,nt=u.charts,tt=u.doc,kt=u.marginNames,ei=u.svg,et=u.win,dt=o.defaultOptions,oi=o.defaultTime,ct=l.seriesTypes,lt=y.addEvent,gt=y.attr,si=y.cleanRecursively,at=y.createElement,d=y.css,k=y.defined,hi=y.discardElement,ci=y.erase,ni=y.error,it=y.extend,vt=y.find,w=y.fireEvent,rt=y.getStyle,li=y.isArray,ut=y.isNumber,yt=y.isObject,ot=y.isString,g=y.merge,ft=y.objectEach,b=y.pick,pt=y.pInt,ti=y.relativeLength,ii=y.removeEvent,wt=y.splat,ri=y.syncTimeout,ai=y.uniqueKey;return n=function(){function n(n,t,i){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(n,t,i)}return n.chart=function(t,i,r){return new n(t,i,r)},n.prototype.getArgs=function(n,t,i){ot(n)||n.nodeName?(this.renderTo=n,this.init(t,i)):this.init(n,t)},n.prototype.init=function(n,t){var i=n.plotOptions||{};w(this,"init",{args:arguments},function(){var r=g(dt,n),f=r.chart;ft(r.plotOptions,function(n,t){yt(n)&&(n.tooltip=i[t]&&g(i[t].tooltip)||void 0)});r.tooltip.userOptions=n.chart&&n.chart.forExport&&n.tooltip.userOptions||n.tooltip;this.userOptions=n;this.margin=[];this.spacing=[];this.bounds={h:{},v:{}};this.labelCollectors=[];this.callback=t;this.isResizing=0;this.options=r;this.axes=[];this.series=[];this.time=n.time&&Object.keys(n.time).length?new v(n.time):u.time;this.numberFormatter=f.numberFormatter||fi;this.styledMode=f.styledMode;this.hasCartesianSeries=f.showAxes;this.index=nt.length;nt.push(this);u.chartCount++;bt(this,f);this.xAxis=[];this.yAxis=[];this.pointCount=this.colorCounter=this.symbolCounter=0;w(this,"afterInit");this.firstRender()})},n.prototype.initSeries=function(n){var t=this.options.chart,i;return t=n.type||t.type||t.defaultSeriesType,i=ct[t],i||ni(17,!0,this,{missingModuleFor:t}),t=new i,"function"==typeof t.init&&t.init(this,n),t},n.prototype.setSeriesData=function(){this.getSeriesOrderByLinks().forEach(function(n){n.points||n.data||!n.enabledDataSorting||n.setData(n.options.data,!1)})},n.prototype.getSeriesOrderByLinks=function(){return this.series.concat().sort(function(n,t){return n.linkedSeries.length||t.linkedSeries.length?t.linkedSeries.length-n.linkedSeries.length:0})},n.prototype.orderSeries=function(n){var t=this.series,i;for(n=n||0,i=t.length;n<i;++n)t[n]&&(t[n].index=n,t[n].name=t[n].getName())},n.prototype.isInsidePlot=function(n,t,i){var f,o;void 0===i&&(i={});var u=this.inverted,s=this.plotBox,h=this.plotLeft,c=this.plotTop,r=this.scrollablePlotBox,l=0,e=0;return i.visiblePlotOnly&&this.scrollingContainer&&(e=this.scrollingContainer,l=e.scrollLeft,e=e.scrollTop),f=i.series,s=i.visiblePlotOnly&&r||s,r=i.inverted?t:n,t=i.inverted?n:t,n={x:r,y:t,isInsidePlot:!0},i.ignoreX||(o=f&&(u?f.yAxis:f.xAxis)||{pos:h,len:Infinity},r=i.paneCoordinates?o.pos+r:h+r,r>=Math.max(l+h,o.pos)&&r<=Math.min(l+h+s.width,o.pos+o.len)||(n.isInsidePlot=!1)),!i.ignoreY&&n.isInsidePlot&&(u=f&&(u?f.xAxis:f.yAxis)||{pos:c,len:Infinity},i=i.paneCoordinates?u.pos+t:c+t,i>=Math.max(e+c,u.pos)&&i<=Math.min(e+c+s.height,u.pos+u.len)||(n.isInsidePlot=!1)),w(this,"afterIsInsidePlot",n),n.isInsidePlot},n.prototype.redraw=function(n){var t,s,v;w(this,"beforeRedraw");var u=this.hasCartesianSeries?this.axes:this.colorAxis||[],i=this.series,h=this.pointer,f=this.legend,e=this.userOptions.legend,c=this.renderer,l=c.isHidden(),a=[],r=this.isDirtyBox,o=this.isDirtyLegend;for(this.setResponsive&&this.setResponsive(!1),ht(this.hasRendered?n:!1,this),l&&this.temporaryDisplay(),this.layOutTitles(),n=i.length;n--;)if(t=i[n],(t.options.stacking||t.options.centerInCategory)&&(s=!0,t.isDirty)){v=!0;break}if(v)for(n=i.length;n--;)t=i[n],t.options.stacking&&(t.isDirty=!0);i.forEach(function(n){n.isDirty&&("point"===n.options.legendType?("function"==typeof n.updateTotals&&n.updateTotals(),o=!0):e&&(e.labelFormatter||e.labelFormat)&&(o=!0));n.isDirtyData&&w(n,"updatedData")});o&&f&&f.options.enabled&&(f.render(),this.isDirtyLegend=!1);s&&this.getStacks();u.forEach(function(n){n.updateNames();n.setScale()});this.getMargins();u.forEach(function(n){n.isDirty&&(r=!0)});u.forEach(function(n){var t=n.min+","+n.max;n.extKey!==t&&(n.extKey=t,a.push(function(){w(n,"afterSetExtremes",it(n.eventArgs,n.getExtremes()));delete n.eventArgs}));(r||s)&&n.redraw()});r&&this.drawChartBox();w(this,"predraw");i.forEach(function(n){(r||n.isDirty)&&n.visible&&n.redraw();n.isDirtyData=!1});h&&h.reset(!0);c.draw();w(this,"redraw");w(this,"render");l&&this.temporaryDisplay(!0);a.forEach(function(n){n.call()})},n.prototype.get=function(n){function t(t){return t.id===n||t.options&&t.options.id===n}for(var u=this.series,i=vt(this.axes,t)||vt(this.series,t),r=0;!i&&r<u.length;r++)i=vt(u[r].points||[],t);return i},n.prototype.getAxes=function(){var r=this,n=this.options,i=n.xAxis=wt(n.xAxis||{});n=n.yAxis=wt(n.yAxis||{});w(this,"getAxes");i.forEach(function(n,t){n.index=t;n.isX=!0});n.forEach(function(n,t){n.index=t});i.concat(n).forEach(function(n){new t(r,n)});w(this,"afterGetAxes")},n.prototype.getSelectedPoints=function(){return this.series.reduce(function(n,t){return t.getPointsCollection().forEach(function(t){b(t.selectedStaging,t.selected)&&n.push(t)}),n},[])},n.prototype.getSelectedSeries=function(){return this.series.filter(function(n){return n.selected})},n.prototype.setTitle=function(n,t,i){this.applyDescription("title",n);this.applyDescription("subtitle",t);this.applyDescription("caption",void 0);this.layOutTitles(i)},n.prototype.applyDescription=function(n,t){var u=this,r="title"===n?{color:s.neutralColor80,fontSize:this.options.isStock?"16px":"18px"}:{color:s.neutralColor60},i;r=this.options[n]=g(!this.styledMode&&{style:r},this.options[n],t);i=this[n];i&&t&&(this[n]=i=i.destroy());r&&!i&&(i=this.renderer.text(r.text,0,0,r.useHTML).attr({align:r.align,"class":"highcharts-"+n,zIndex:r.zIndex||4}).add(),i.update=function(t){u[{title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"}[n]](t)},this.styledMode||i.css(r.style),this[n]=i)},n.prototype.layOutTitles=function(n){var t=[0,0,0],r=this.renderer,u=this.spacingBox,i;["title","subtitle","caption"].forEach(function(n){var f=this[n],i=this.options[n],e=i.verticalAlign||"top",o,s;n="title"===n?"top"===e?-3:0:"top"===e?t[0]+2:0;f&&(this.styledMode||(o=i.style&&i.style.fontSize),o=r.fontMetrics(o,f).b,f.css({width:(i.width||u.width+(i.widthAdjust||0))+"px"}),s=Math.round(f.getBBox(i.useHTML).height),f.align(it({y:"bottom"===e?o:n+o,height:s},i),!1,"spacingBox"),i.floating||("top"===e?t[0]=Math.ceil(t[0]+s):"bottom"===e&&(t[2]=Math.ceil(t[2]+s))))},this);t[0]&&"top"===(this.options.title.verticalAlign||"top")&&(t[0]+=this.options.title.margin);t[2]&&"bottom"===this.options.caption.verticalAlign&&(t[2]+=this.options.caption.margin);i=!this.titleOffset||this.titleOffset.join(",")!==t.join(",");this.titleOffset=t;w(this,"afterLayOutTitles");!this.isDirtyBox&&i&&(this.isDirtyBox=this.isDirtyLegend=i,this.hasRendered&&b(n,!0)&&this.isDirtyBox&&this.redraw())},n.prototype.getChartSize=function(){var n=this.options.chart,i=n.width,t;n=n.height;t=this.renderTo;k(i)||(this.containerWidth=rt(t,"width"));k(n)||(this.containerHeight=rt(t,"height"));this.chartWidth=Math.max(0,i||this.containerWidth||600);this.chartHeight=Math.max(0,ti(n,this.chartWidth)||(1<this.containerHeight?this.containerHeight:400))},n.prototype.temporaryDisplay=function(n){var t=this.renderTo;if(n)for(;t&&t.style;)t.hcOrigStyle&&(d(t,t.hcOrigStyle),delete t.hcOrigStyle),t.hcOrigDetached&&(tt.body.removeChild(t),t.hcOrigDetached=!1),t=t.parentNode;else for(;t&&t.style;)if(tt.body.contains(t)||t.parentNode||(t.hcOrigDetached=!0,tt.body.appendChild(t)),("none"===rt(t,"display",!1)||t.hcOricDetached)&&(t.hcOrigStyle={display:t.style.display,height:t.style.height,overflow:t.style.overflow},n={display:"block",overflow:"hidden"},t!==this.renderTo&&(n.height=0),d(t,n),t.offsetWidth||t.style.setProperty("display","block","important")),t=t.parentNode,t===tt.body)break},n.prototype.setClassName=function(n){this.container.className="highcharts-container "+(n||"")},n.prototype.getContainer=function(){var r=this.options,t=r.chart,u=ai(),e,n=this.renderTo,i,f,o;if(n||(this.renderTo=n=t.renderTo),ot(n)&&(this.renderTo=n=tt.getElementById(n)),n||ni(13,!0,this),i=pt(gt(n,"data-highcharts-chart")),ut(i)&&nt[i]&&nt[i].hasRendered&&nt[i].destroy(),gt(n,"data-highcharts-chart",this.index),n.innerHTML="",t.skipClone||n.offsetWidth||this.temporaryDisplay(),this.getChartSize(),i=this.chartWidth,f=this.chartHeight,d(n,{overflow:"hidden"}),this.styledMode||(e=it({position:"relative",overflow:"hidden",width:i+"px",height:f+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)",userSelect:"none","touch-action":"manipulation",outline:"none"},t.style||{})),this.container=u=at("div",{id:u},e,n),this._cursor=u.style.cursor,this.renderer=new(t.renderer||!ei?c.getRendererType(t.renderer):a)(u,i,f,void 0,t.forExport,r.exporting&&r.exporting.allowHTML,this.styledMode),ht(void 0,this),this.setClassName(t.className),this.styledMode)for(o in r.defs)this.renderer.definition(r.defs[o]);else this.renderer.setStyle(t.style);this.renderer.chartIndex=this.index;w(this,"afterGetContainer")},n.prototype.getMargins=function(n){var i=this.spacing,r=this.margin,t=this.titleOffset;this.resetMargins();t[0]&&!k(r[0])&&(this.plotTop=Math.max(this.plotTop,t[0]+i[0]));t[2]&&!k(r[2])&&(this.marginBottom=Math.max(this.marginBottom,t[2]+i[2]));this.legend&&this.legend.display&&this.legend.adjustMargins(r,i);w(this,"getMargins");n||this.getAxisMargins()},n.prototype.getAxisMargins=function(){var n=this,r=n.axisOffset=[0,0,0,0],t=n.colorAxis,u=n.margin,i=function(n){n.forEach(function(n){n.visible&&n.getOffset()})};n.hasCartesianSeries?i(n.axes):t&&t.length&&i(t);kt.forEach(function(t,i){k(u[i])||(n[t]+=r[i])});n.setChartSize()},n.prototype.reflow=function(n){var t=this,i=t.options.chart,r=t.renderTo,f=k(i.width)&&k(i.height),u=i.width||rt(r,"width");i=i.height||rt(r,"height");r=n?n.target:et;delete t.pointer.chartPosition;!f&&!t.isPrinting&&u&&i&&(r===et||r===tt)&&((u!==t.containerWidth||i!==t.containerHeight)&&(y.clearTimeout(t.reflowTimeout),t.reflowTimeout=ri(function(){t.container&&t.setSize(void 0,void 0,!1)},n?100:0)),t.containerWidth=u,t.containerHeight=i)},n.prototype.setReflow=function(n){var t=this;!1===n||this.unbindReflow?!1===n&&this.unbindReflow&&(this.unbindReflow=this.unbindReflow()):(this.unbindReflow=lt(et,"resize",function(n){t.options&&t.reflow(n)}),lt(this,"destroy",this.unbindReflow))},n.prototype.setSize=function(n,t,i){var r=this,u=r.renderer;r.isResizing+=1;ht(i,r);i=u.globalAnimation;r.oldChartHeight=r.chartHeight;r.oldChartWidth=r.chartWidth;"undefined"!=typeof n&&(r.options.chart.width=n);"undefined"!=typeof t&&(r.options.chart.height=t);r.getChartSize();r.styledMode||(i?st:d)(r.container,{width:r.chartWidth+"px",height:r.chartHeight+"px"},i);r.setChartSize(!0);u.setSize(r.chartWidth,r.chartHeight,i);r.axes.forEach(function(n){n.isDirty=!0;n.setScale()});r.isDirtyLegend=!0;r.isDirtyBox=!0;r.layOutTitles();r.getMargins();r.redraw(i);r.oldChartHeight=null;w(r,"resize");ri(function(){r&&w(r,"endResize",null,function(){--r.isResizing})},ui(i).duration)},n.prototype.setChartSize=function(n){var t=this.inverted,s=this.renderer,r=this.chartWidth,u=this.chartHeight,l=this.options.chart,i=this.spacing,f=this.clipOffset,h,c,e,o;this.plotLeft=h=Math.round(this.plotLeft);this.plotTop=c=Math.round(this.plotTop);this.plotWidth=e=Math.max(0,Math.round(r-h-this.marginRight));this.plotHeight=o=Math.max(0,Math.round(u-c-this.marginBottom));this.plotSizeX=t?o:e;this.plotSizeY=t?e:o;this.plotBorderWidth=l.plotBorderWidth||0;this.spacingBox=s.spacingBox={x:i[3],y:i[0],width:r-i[3]-i[1],height:u-i[0]-i[2]};this.plotBox=s.plotBox={x:h,y:c,width:e,height:o};t=2*Math.floor(this.plotBorderWidth/2);r=Math.ceil(Math.max(t,f[3])/2);u=Math.ceil(Math.max(t,f[0])/2);this.clipBox={x:r,y:u,width:Math.floor(this.plotSizeX-Math.max(t,f[1])/2-r),height:Math.max(0,Math.floor(this.plotSizeY-Math.max(t,f[2])/2-u))};n||(this.axes.forEach(function(n){n.setAxisSize();n.setAxisTranslation()}),s.alignElements());w(this,"afterSetChartSize",{skipAxes:n})},n.prototype.resetMargins=function(){w(this,"resetMargins");var n=this,t=n.options.chart;["margin","spacing"].forEach(function(i){var r=t[i],u=yt(r)?r:[r,r,r,r];["Top","Right","Bottom","Left"].forEach(function(r,f){n[i][f]=b(t[i+r],u[f])})});kt.forEach(function(t,i){n[t]=b(n.margin[i],n.spacing[i])});n.axisOffset=[0,0,0,0];n.clipOffset=[0,0,0,0]},n.prototype.drawChartBox=function(){var n=this.options.chart,e=this.renderer,g=this.chartWidth,nt=this.chartHeight,l=this.styledMode,s=this.plotBGImage,o=n.backgroundColor,tt=n.plotBackgroundColor,h=n.plotBackgroundImage,v=this.plotLeft,y=this.plotTop,p=this.plotWidth,b=this.plotHeight,k=this.plotBox,d=this.clipRect,a=this.clipBox,r=this.chartBackground,c=this.plotBackground,u=this.plotBorder,f,t="animate",i;r||(this.chartBackground=r=e.rect().addClass("highcharts-background").add(),t="attr");l?i=f=r.strokeWidth():(i=n.borderWidth||0,f=i+(n.shadow?8:0),o={fill:o||"none"},(i||r["stroke-width"])&&(o.stroke=n.borderColor,o["stroke-width"]=i),r.attr(o).shadow(n.shadow));r[t]({x:f/2,y:f/2,width:g-f-i%2,height:nt-f-i%2,r:n.borderRadius});t="animate";c||(t="attr",this.plotBackground=c=e.rect().addClass("highcharts-plot-background").add());c[t](k);l||(c.attr({fill:tt||"none"}).shadow(n.plotShadow),h&&(s?(h!==s.attr("href")&&s.attr("href",h),s.animate(k)):this.plotBGImage=e.image(h,v,y,p,b).add()));d?d.animate({width:a.width,height:a.height}):this.clipRect=e.clipRect(a);t="animate";u||(t="attr",this.plotBorder=u=e.rect().addClass("highcharts-plot-border").attr({zIndex:1}).add());l||u.attr({stroke:n.plotBorderColor,"stroke-width":n.plotBorderWidth||0,fill:"none"});u[t](u.crisp({x:v,y:y,width:p,height:b},-u.strokeWidth()));this.isDirtyBox=!1;w(this,"afterDrawChartBox")},n.prototype.propFromSeries=function(){var i=this,r=i.options.chart,u=i.options.series,f,n,t;["inverted","angular","polar"].forEach(function(e){for(n=ct[r.type||r.defaultSeriesType],t=r[e]||n&&n.prototype[e],f=u&&u.length;!t&&f--;)(n=ct[u[f].type])&&n.prototype[e]&&(t=!0);i[e]=t})},n.prototype.linkSeries=function(){var n=this,t=n.series;t.forEach(function(n){n.linkedSeries.length=0});t.forEach(function(t){var i=t.options.linkedTo;ot(i)&&(i=":previous"===i?n.series[t.index-1]:n.get(i))&&i.linkedParent!==t&&(i.linkedSeries.push(t),t.linkedParent=i,i.enabledDataSorting&&t.setDataSortingOptions(),t.visible=b(t.options.visible,i.options.visible,t.visible))});w(this,"afterLinkSeries")},n.prototype.renderSeries=function(){this.series.forEach(function(n){n.translate();n.render()})},n.prototype.renderLabels=function(){var n=this,t=n.options.labels;t.items&&t.items.forEach(function(i){var r=it(t.style,i.style),u=pt(r.left)+n.plotLeft,f=pt(r.top)+n.plotTop+12;delete r.left;delete r.top;n.renderer.text(i.html,u,f).attr({zIndex:2}).css(r).add()})},n.prototype.render=function(){var n=this.axes,t=this.colorAxis,h=this.renderer,i=this.options,e=function(n){n.forEach(function(n){n.visible&&n.render()})},o=0,s,r,u;this.setTitle();this.legend=new f(this,i.legend);this.getStacks&&this.getStacks();this.getMargins(!0);this.setChartSize();i=this.plotWidth;n.some(function(n){if(n.horiz&&n.visible&&n.options.labels.enabled&&n.series.length)return o=21,!0});s=this.plotHeight=Math.max(this.plotHeight-o,0);n.forEach(function(n){n.setScale()});this.getAxisMargins();r=1.1<i/this.plotWidth;u=1.05<s/this.plotHeight;(r||u)&&(n.forEach(function(n){(n.horiz&&r||!n.horiz&&u)&&n.setTickInterval(!0)}),this.getMargins());this.drawChartBox();this.hasCartesianSeries?e(n):t&&t.length&&e(t);this.seriesGroup||(this.seriesGroup=h.g("series-group").attr({zIndex:3}).add());this.renderSeries();this.renderLabels();this.addCredits();this.setResponsive&&this.setResponsive();this.hasRendered=!0},n.prototype.addCredits=function(n){var i=this,t=g(!0,this.options.credits,n);t.enabled&&!this.credits&&(this.credits=this.renderer.text(t.text+(this.mapCredits||""),0,0).addClass("highcharts-credits").on("click",function(){t.href&&(et.location.href=t.href)}).attr({align:t.position.align,zIndex:8}),i.styledMode||this.credits.css(t.style),this.credits.add().align(t.position),this.credits.update=function(n){i.credits=i.credits.destroy();i.addCredits(n)})},n.prototype.destroy=function(){var n=this,r=n.axes,f=n.series,i=n.container,e=i&&i.parentNode,t;for(w(n,"destroy"),n.renderer.forExport?ci(nt,n):nt[n.index]=void 0,u.chartCount--,n.renderTo.removeAttribute("data-highcharts-chart"),ii(n),t=r.length;t--;)r[t]=r[t].destroy();for(this.scroller&&this.scroller.destroy&&this.scroller.destroy(),t=f.length;t--;)f[t]=f[t].destroy();"title subtitle chartBackground plotBackground plotBGImage plotBorder seriesGroup clipRect credits pointer rangeSelector legend resetZoomButton tooltip renderer".split(" ").forEach(function(t){var i=n[t];i&&i.destroy&&(n[t]=i.destroy())});i&&(i.innerHTML="",ii(i),e&&hi(i));ft(n,function(t,i){delete n[i]})},n.prototype.firstRender=function(){var n=this,t=n.options;(!n.isReadyToRender||n.isReadyToRender())&&(n.getContainer(),n.resetMargins(),n.setChartSize(),n.propFromSeries(),n.getAxes(),(li(t.series)?t.series:[]).forEach(function(t){n.initSeries(t)}),n.linkSeries(),n.setSeriesData(),w(n,"beforeRender"),h&&(n.pointer=e.isRequired()?new e(n,t):new h(n,t)),n.render(),n.pointer.getChartPosition(),n.renderer.imgCount||n.hasLoaded||n.onload(),n.temporaryDisplay(!0))},n.prototype.onload=function(){this.callbacks.concat([this.callback]).forEach(function(n){n&&"undefined"!=typeof this.index&&n.apply(this,[this])},this);w(this,"load");w(this,"render");k(this.index)&&this.setReflow(this.options.chart.reflow);this.hasLoaded=!0},n.prototype.addSeries=function(n,t,i){var r=this,u;return n&&(t=b(t,!0),w(r,"addSeries",{options:n},function(){u=r.initSeries(n);r.isDirtyLegend=!0;r.linkSeries();u.enabledDataSorting&&u.setData(n.data,!1);w(r,"afterAddSeries",{series:u});t&&r.redraw(i)})),u},n.prototype.addAxis=function(n,t,i,r){return this.createAxis(t?"xAxis":"yAxis",{axis:n,redraw:i,animation:r})},n.prototype.addColorAxis=function(n,t,i){return this.createAxis("colorAxis",{axis:n,redraw:t,animation:i})},n.prototype.createAxis=function(n,i){return n=new t(this,g(i.axis,{index:this[n].length,isX:"xAxis"===n})),b(i.redraw,!0)&&this.redraw(i.animation),n},n.prototype.showLoading=function(n){var t=this,f=t.options,r=f.loading,e=function(){i&&d(i,{left:t.plotLeft+"px",top:t.plotTop+"px",width:t.plotWidth+"px",height:t.plotHeight+"px"})},i=t.loadingDiv,u=t.loadingSpan;i||(t.loadingDiv=i=at("div",{className:"highcharts-loading highcharts-loading-hidden"},null,t.container));u||(t.loadingSpan=u=at("span",{className:"highcharts-loading-inner"},null,i),lt(t,"redraw",e));i.className="highcharts-loading";p.setElementHTML(u,b(n,f.lang.loading,""));t.styledMode||(d(i,it(r.style,{zIndex:10})),d(u,r.labelStyle),t.loadingShown||(d(i,{opacity:0,display:""}),st(i,{opacity:r.style.opacity||.5},{duration:r.showDuration||0})));t.loadingShown=!0;e()},n.prototype.hideLoading=function(){var t=this.options,n=this.loadingDiv;n&&(n.className="highcharts-loading highcharts-loading-hidden",this.styledMode||st(n,{opacity:0},{duration:t.loading.hideDuration||100,complete:function(){d(n,{display:"none"})}}));this.loadingShown=!1},n.prototype.update=function(n,t,i,r){var u=this,s={credits:"addCredits",title:"setTitle",subtitle:"setSubtitle",caption:"setCaption"},h=n.isResponsiveOptions,c=[],o,l,f,e;w(u,"update",{options:n});h||u.setResponsive(!1,!0);n=si(n,u.options);u.userOptions=g(u.userOptions,n);f=n.chart;f&&(g(!0,u.options.chart,f),"className"in f&&u.setClassName(f.className),"reflow"in f&&u.setReflow(f.reflow),("inverted"in f||"polar"in f||"type"in f)&&(u.propFromSeries(),e=!0),"alignTicks"in f&&(e=!0),"events"in f&&bt(this,f),ft(f,function(n,t){-1!==u.propsRequireUpdateSeries.indexOf("chart."+t)&&(o=!0);-1!==u.propsRequireDirtyBox.indexOf(t)&&(u.isDirtyBox=!0);-1!==u.propsRequireReflow.indexOf(t)&&(h?u.isDirtyBox=!0:l=!0)}),!u.styledMode&&f.style&&u.renderer.setStyle(u.options.chart.style||{}));!u.styledMode&&n.colors&&(this.options.colors=n.colors);n.time&&(this.time===oi&&(this.time=new v(n.time)),g(!0,u.options.time,n.time));ft(n,function(t,i){u[i]&&"function"==typeof u[i].update?u[i].update(t,!1):"function"==typeof u[s[i]]?u[s[i]](t):"colors"!==i&&-1===u.collectionsWithUpdate.indexOf(i)&&g(!0,u.options[i],n[i]);"chart"!==i&&-1!==u.propsRequireUpdateSeries.indexOf(i)&&(o=!0)});this.collectionsWithUpdate.forEach(function(t){if(n[t]){var r=[];u[t].forEach(function(n,t){n.options.isInternal||r.push(b(n.options.index,t))});wt(n[t]).forEach(function(n,f){var o=k(n.id),e;o&&(e=u.get(n.id));!e&&u[t]&&(e=u[t][r?r[f]:f])&&o&&k(e.options.id)&&(e=void 0);e&&e.coll===t&&(e.update(n,!1),i&&(e.touched=!0));!e&&i&&u.collectionsWithInit[t]&&(u.collectionsWithInit[t][0].apply(u,[n].concat(u.collectionsWithInit[t][1]||[]).concat([!1])).touched=!0)});i&&u[t].forEach(function(n){n.touched||n.options.isInternal?delete n.touched:c.push(n)})}});c.forEach(function(n){n.chart&&n.remove&&n.remove(!1)});e&&u.axes.forEach(function(n){n.update({},!1)});o&&u.getSeriesOrderByLinks().forEach(function(n){n.chart&&n.update({},!1)},this);e=f&&f.width;f=f&&(ot(f.height)?ti(f.height,e||u.chartWidth):f.height);l||ut(e)&&e!==u.chartWidth||ut(f)&&f!==u.chartHeight?u.setSize(e,f,r):b(t,!0)&&u.redraw(r);w(u,"afterUpdate",{options:n,redraw:t,animation:r})},n.prototype.setSubtitle=function(n,t){this.applyDescription("subtitle",n);this.layOutTitles(t)},n.prototype.setCaption=function(n,t){this.applyDescription("caption",n);this.layOutTitles(t)},n.prototype.showResetZoom=function(){function f(){t.zoomOut()}var t=this,i=dt.lang,n=t.options.chart.resetZoomButton,r=n.theme,u=r.states,e="chart"===n.relativeTo||"spacingBox"===n.relativeTo?null:"scrollablePlotBox";w(this,"beforeShowResetZoom",null,function(){t.resetZoomButton=t.renderer.button(i.resetZoom,null,null,f,r,u&&u.hover).attr({align:n.position.align,title:i.resetZoomTitle}).addClass("highcharts-reset-zoom").add().align(n.position,!1,e)});w(this,"afterShowResetZoom")},n.prototype.zoomOut=function(){w(this,"selection",{resetSelection:!0},this.zoom)},n.prototype.zoom=function(n){var t=this,i=t.pointer,u=t.inverted?i.mouseDownX:i.mouseDownY,f=!1,e,r;!n||n.resetSelection?(t.axes.forEach(function(n){e=n.zoom()}),i.initiated=!1):n.xAxis.concat(n.yAxis).forEach(function(n){var r=n.axis,o=t.inverted?r.left:r.top,c=t.inverted?o+r.width:o+r.height,s=r.isXAxis,h=!1;(!s&&u>=o&&u<=c||s||!k(u))&&(h=!0);i[s?"zoomX":"zoomY"]&&h&&(e=r.zoom(n.min,n.max),r.displayBtn&&(f=!0))});r=t.resetZoomButton;f&&!r?t.showResetZoom():!f&&yt(r)&&(t.resetZoomButton=r.destroy());e&&t.redraw(b(t.options.chart.animation,n&&n.animation,100>t.pointCount))},n.prototype.pan=function(n,t){var i=this,f=i.hoverPoints,r,e,u,o;t="object"==typeof t?t:{enabled:t,type:"x"};r=i.options.chart;e=i.options.mapNavigation&&i.options.mapNavigation.enabled;r&&r.panning&&(r.panning=t);u=t.type;w(this,"pan",{originalEvent:n},function(){var t,r;f&&f.forEach(function(n){n.setState()});t=i.xAxis;"xy"===u?t=t.concat(i.yAxis):"y"===u&&(t=i.yAxis);r={};t.forEach(function(t){var y,p,f;if(t.options.panningEnabled&&!t.options.isInternal){y=t.horiz;p=n[y?"chartX":"chartY"];y=y?"mouseDownX":"mouseDownY";var h=i[y],c=t.minPointOffset||0,l=t.reversed&&!i.inverted||!t.reversed&&i.inverted?-1:1,a=t.getExtremes(),s=t.toValue(h-p,!0)+c*l,v=t.toValue(h+t.len-p,!0)-(c*l||t.isXAxis&&t.pointRangePadding||0),w=v<s;l=t.hasVerticalPanning();h=w?v:s;s=w?s:v;f=t.panningState;!l||t.isXAxis||f&&!f.isDirty||t.series.forEach(function(n){var t=n.getProcessedData(!0);t=n.getExtremes(t.yData,!0);f||(f={startMin:Number.MAX_VALUE,startMax:-Number.MAX_VALUE});ut(t.dataMin)&&ut(t.dataMax)&&(f.startMin=Math.min(b(n.options.threshold,Infinity),t.dataMin,f.startMin),f.startMax=Math.max(b(n.options.threshold,-Infinity),t.dataMax,f.startMax))});l=Math.min(b(f&&f.startMin,a.dataMin),c?a.min:t.toValue(t.toPixels(a.min)-t.minPixelPadding));v=Math.max(b(f&&f.startMax,a.dataMax),c?a.max:t.toValue(t.toPixels(a.max)+t.minPixelPadding));t.panningState=f;t.isOrdinal||(c=l-h,0<c&&(s+=c,h=l),c=s-v,0<c&&(s=v,h-=c),t.series.length&&h!==a.min&&s!==a.max&&h>=l&&s<=v&&(t.setExtremes(h,s,!1,!1,{trigger:"pan"}),i.resetZoomButton||e||h===l||s===v||!u.match("y")||(i.showResetZoom(),t.displayBtn=!1),o=!0),r[y]=p)}});ft(r,function(n,t){i[t]=n});o&&i.redraw(!1);d(i.container,{cursor:"move"})})},n}(),it(n.prototype,{callbacks:[],collectionsWithInit:{xAxis:[n.prototype.addAxis,[!0]],yAxis:[n.prototype.addAxis,[!1]],series:[n.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(" ")}),n}),i(t,"Core/Legend/LegendSymbol.js",[t["Core/Utilities.js"]],function(n){var r=n.merge,i=n.pick,t;return function(n){n.drawLineMarker=function(n){var t=this.options,f=n.symbolWidth,o=n.symbolHeight,s=o/2,h=this.chart.renderer,c=this.legendGroup,e,u;n=n.baseline-Math.round(.3*n.fontMetrics.b);e={};u=t.marker;this.chart.styledMode||(e={"stroke-width":t.lineWidth||0},t.dashStyle&&(e.dashstyle=t.dashStyle));this.legendLine=h.path([["M",0,n],["L",f,n]]).addClass("highcharts-graph").attr(e).add(c);u&&!1!==u.enabled&&f&&(t=Math.min(i(u.radius,s),s),0===this.symbol.indexOf("url")&&(u=r(u,{width:o,height:o}),t=0),this.legendSymbol=f=h.symbol(this.symbol,f/2-t,n-t,2*t,2*t,u).addClass("highcharts-point").add(c),f.isMarker=!0)};n.drawRectangle=function(n,t){var r=n.symbolHeight,u=n.options.squareSymbol;t.legendSymbol=this.chart.renderer.rect(u?(n.symbolWidth-r)/2:0,n.baseline-r+1,u?r:n.symbolWidth,r,i(n.options.symbolRadius,r/2)).addClass("highcharts-point").attr({zIndex:3}).add(t.legendGroup)}}(t||(t={})),t}),i(t,"Core/Series/SeriesDefaults.js",[t["Core/Color/Palette.js"]],function(n){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1e3},events:{},marker:{enabledThreshold:2,lineColor:n.backgroundColor,lineWidth:0,radius:4,states:{normal:{animation:!0},hover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:n.neutralColor20,lineColor:n.neutralColor100,lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:"center",defer:!0,formatter:function(){var n=this.series.chart.numberFormatter;return"number"!=typeof this.y?"":n(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"}}),i(t,"Core/Series/Series.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/DefaultOptions.js"],t["Core/Foundation.js"],t["Core/Globals.js"],t["Core/Legend/LegendSymbol.js"],t["Core/Color/Palette.js"],t["Core/Series/Point.js"],t["Core/Series/SeriesDefaults.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o,s,h,c){var it=n.animObject,ht=n.setAnimation,b=t.defaultOptions,ct=i.registerEventOptions,lt=r.hasTouch,at=r.svg,vt=r.win,p=s.seriesTypes,yt=c.addEvent,nt=c.arrayMax,rt=c.arrayMin,k=c.clamp,pt=c.cleanRecursively,ut=c.correctFloat,v=c.defined,ft=c.erase,d=c.error,w=c.extend,wt=c.find,a=c.fireEvent,et=c.getNestedProperty,tt=c.isArray,y=c.isNumber,bt=c.isString,g=c.merge,ot=c.objectEach,l=c.pick,kt=c.removeEvent,dt=c.splat,st=c.syncTimeout;return n=function(){function n(){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 n.prototype.init=function(n,t){var i,r,u,f;a(this,"init",{options:t});i=this;r=n.series;this.eventsToUnbind=[];i.chart=n;i.options=i.setOptions(t);t=i.options;i.linkedSeries=[];i.bindAxes();w(i,{name:t.name,state:"",visible:!1!==t.visible,selected:!0===t.selected});ct(this,t);u=t.events;(u&&u.click||t.point&&t.point.events&&t.point.events.click||t.allowPointSelect)&&(n.runTrackerClick=!0);i.getColor();i.getSymbol();i.parallelArrays.forEach(function(n){i[n+"Data"]||(i[n+"Data"]=[])});i.isCartesian&&(n.hasCartesianSeries=!0);r.length&&(f=r[r.length-1]);i._i=l(f&&f._i,-1)+1;i.opacity=i.options.opacity;n.orderSeries(this.insert(r));t.dataSorting&&t.dataSorting.enabled?i.setDataSortingOptions():i.points||i.data||i.setData(t.data,!1);a(this,"afterInit")},n.prototype.is=function(n){return p[n]&&this instanceof p[n]},n.prototype.insert=function(n){var i=this.options.index,t;if(y(i)){for(t=n.length;t--;)if(i>=l(n[t].options.index,n[t]._i)){n.splice(t+1,0,this);break}-1===t&&n.unshift(this);t+=1}else n.push(this);return l(t,n.length-1)},n.prototype.bindAxes=function(){var n=this,i=n.options,r=n.chart,t;a(this,"bindAxes",null,function(){(n.axisTypes||[]).forEach(function(u){var f=0;r[u].forEach(function(r){t=r.options;(i[u]!==f||t.isInternal)&&("undefined"==typeof i[u]||i[u]!==t.id)&&("undefined"!=typeof i[u]||0!==t.index)||(n.insert(r.series),n[u]=r,r.isDirty=!0);t.isInternal||f++});n[u]||n.optionalAxis===u||d(18,!0,r)})});a(this,"afterBindAxes")},n.prototype.updateParallelArrays=function(n,t){var i=n.series,r=arguments,u=y(t)?function(r){var u="y"===r&&i.toYData?i.toYData(n):n[r];i[r+"Data"][t]=u}:function(n){Array.prototype[t].apply(i[n+"Data"],Array.prototype.slice.call(r,2))};i.parallelArrays.forEach(u)},n.prototype.hasData=function(){return this.visible&&"undefined"!=typeof this.dataMax&&"undefined"!=typeof this.dataMin||this.visible&&this.yData&&0<this.yData.length},n.prototype.autoIncrement=function(n){var t=this.options,f=t.pointIntervalUnit,e=t.relativeXValue,r=this.chart.time,u=this.xIncrement,i;return(u=l(u,t.pointStart,0),this.pointInterval=i=l(this.pointInterval,t.pointInterval,1),e&&y(n)&&(i*=n),f&&(t=new r.Date(u),"day"===f?r.set("Date",t,r.get("Date",t)+i):"month"===f?r.set("Month",t,r.get("Month",t)+i):"year"===f&&r.set("FullYear",t,r.get("FullYear",t)+i),i=t.getTime()-u),e&&y(n))?u+i:(this.xIncrement=u+i,u)},n.prototype.setDataSortingOptions=function(){var n=this.options;w(this,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1});v(n.pointRange)||(n.pointRange=1)},n.prototype.setOptions=function(n){var r=this.chart,u=r.options,i=u.plotOptions,t=r.userOptions||{},e,o,f;return n=g(n),r=r.styledMode,e={plotOptions:i,userOptions:n},a(this,"setOptions",e),o=e.plotOptions[this.type],f=t.plotOptions||{},this.userOptions=e.userOptions,t=g(o,i.series,t.plotOptions&&t.plotOptions[this.type],n),this.tooltipOptions=g(b.tooltip,b.plotOptions.series&&b.plotOptions.series.tooltip,b.plotOptions[this.type].tooltip,u.tooltip.userOptions,i.series&&i.series.tooltip,i[this.type].tooltip,n.tooltip),this.stickyTracking=l(n.stickyTracking,f[this.type]&&f[this.type].stickyTracking,f.series&&f.series.stickyTracking,this.tooltipOptions.shared&&!this.noSharedTooltip?!0:t.stickyTracking),null===o.marker&&delete t.marker,this.zoneAxis=t.zoneAxis,i=this.zones=(t.zones||[]).slice(),(t.negativeColor||t.negativeFillColor)&&!t.zones&&(u={value:t[this.zoneAxis+"Threshold"]||t.threshold||0,className:"highcharts-negative"},r||(u.color=t.negativeColor,u.fillColor=t.negativeFillColor),i.push(u)),i.length&&v(i[i.length-1].value)&&i.push(r?{}:{color:this.color,fillColor:this.fillColor}),a(this,"afterSetOptions",{options:t}),t},n.prototype.getName=function(){return l(this.options.name,"Series "+(this.index+1))},n.prototype.getCyclic=function(n,t,i){var r=this.chart,e=this.userOptions,f=n+"Index",o=n+"Counter",s=i?i.length:l(r.options.chart[n+"Count"],r[n+"Count"]),u;t||(u=l(e[f],e["_"+f]),v(u)||(r.series.length||(r[o]=0),e["_"+f]=u=r[o]%s,r[o]+=1),i&&(t=i[u]));"undefined"!=typeof u&&(this[f]=u);this[n]=t},n.prototype.getColor=function(){this.chart.styledMode?this.getCyclic("color"):this.options.colorByPoint?this.color=f.neutralColor20:this.getCyclic("color",this.options.color||b.plotOptions[this.type].color,this.chart.options.colors)},n.prototype.getPointsCollection=function(){return(this.hasGroupedData?this.points:this.data)||[]},n.prototype.getSymbol=function(){this.getCyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},n.prototype.findPointIndex=function(n,t){var o=n.id,s=n.x,f=this.points,u=this.options.dataSorting,r,h,i;if(o)u=this.chart.get(o),u instanceof e&&(r=u);else if((this.linkedParent||this.enabledDataSorting||this.options.relativeXValue)&&(r=function(t){return!t.touched&&t.index===n.index},u&&u.matchByName?r=function(t){return!t.touched&&t.name===n.name}:this.options.relativeXValue&&(r=function(t){return!t.touched&&t.options.x===n.x}),r=wt(f,r),!r))return;return r&&(i=r&&r.index,"undefined"!=typeof i&&(h=!0)),"undefined"==typeof i&&y(s)&&(i=this.xData.indexOf(s,t)),-1!==i&&"undefined"!=typeof i&&this.cropped&&(i=i>=this.cropStart?i-this.cropStart:i),!h&&y(i)&&f[i]&&f[i].touched&&(i=void 0),i},n.prototype.updateData=function(n,t){var e=this.options,r=e.dataSorting,i=this.points,u=[],l=this.requireSorting,o=n.length===i.length,s,f,h,c=!0;if(this.xIncrement=null,n.forEach(function(n,t){var f=v(n)&&this.pointClass.prototype.optionsToObject.call({series:this},n)||{},c=f.x;f.id||y(c)?(f=this.findPointIndex(f,h),-1===f||"undefined"==typeof f?u.push(n):i[f]&&n!==e.data[f]?(i[f].update(n,!1,null,!1),i[f].touched=!0,l&&(h=f+1)):i[f]&&(i[f].touched=!0),!o||t!==f||r&&r.enabled||this.hasDerivedData)&&(s=!0):u.push(n)},this),s)for(n=i.length;n--;)(f=i[n])&&!f.touched&&f.remove&&f.remove(!1,t);else!o||r&&r.enabled?c=!1:(n.forEach(function(n,t){n!==i[t].y&&i[t].update&&i[t].update(n,!1,null,!1)}),u.length=0);return(i.forEach(function(n){n&&(n.touched=!1)}),!c)?!1:(u.forEach(function(n){this.addPoint(n,!1,null,null,!1)},this),null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=nt(this.xData),this.autoIncrement()),!0)},n.prototype.setData=function(n,t,i,r){var u=this,e=u.points,g=e&&e.length||0,a=u.options,v=u.chart,nt=a.dataSorting,p=u.xAxis,it=a.turboThreshold,w=this.xData,o=this.yData,s=u.pointArrayMap,f;s=s&&s.length;var b=a.keys,rt,h=0,c=1,k=null;if(n=n||[],f=n.length,t=l(t,!0),nt&&nt.enabled&&(n=this.sortData(n)),!1!==r&&f&&g&&!u.cropped&&!u.hasGroupedData&&u.visible&&!u.isSeriesBoosting&&(rt=this.updateData(n,i)),!rt){if(u.xIncrement=null,u.colorCounter=0,this.parallelArrays.forEach(function(n){u[n+"Data"].length=0}),it&&f>it)if(k=u.getFirstValidPoint(n),y(k))for(i=0;i<f;i++)w[i]=this.autoIncrement(),o[i]=n[i];else if(tt(k))if(s)for(i=0;i<f;i++)r=n[i],w[i]=r[0],o[i]=r.slice(1,s+1);else for(b&&(h=b.indexOf("x"),c=b.indexOf("y"),h=0<=h?h:0,c=0<=c?c:1),i=0;i<f;i++)r=n[i],w[i]=r[h],o[i]=r[c];else d(12,!1,v);else for(i=0;i<f;i++)"undefined"!=typeof n[i]&&(r={series:u},u.pointClass.prototype.applyOptions.apply(r,[n[i]]),u.updateParallelArrays(r,i));for(o&&bt(o[0])&&d(14,!0,v),u.data=[],u.options.data=u.userOptions.data=n,i=g;i--;)e[i]&&e[i].destroy&&e[i].destroy();p&&(p.minRange=p.userMinRange);u.isDirty=v.isDirtyBox=!0;u.isDirtyData=!!e;i=!1}"point"===a.legendType&&(this.processData(),this.generatePoints());t&&v.redraw(i)},n.prototype.sortData=function(n){var t=this,i=t.options.dataSorting.sortKey||"y",r=function(n,t){return v(t)&&n.pointClass.prototype.optionsToObject.call({series:n},t)||{}};return n.forEach(function(i,u){n[u]=r(t,i);n[u].index=u},this),n.concat().sort(function(n,t){return n=et(i,n),t=et(i,t),t<n?-1:t>n?1:0}).forEach(function(n,t){n.x=t},this),t.linkedSeries&&t.linkedSeries.forEach(function(t){var u=t.options,i=u.data;u.dataSorting&&u.dataSorting.enabled||!i||(i.forEach(function(u,f){i[f]=r(t,u);n[f]&&(i[f].x=n[f].x,i[f].index=f)}),t.setData(i,!1))}),n},n.prototype.getProcessedData=function(n){var t=this.xAxis,e=this.options,r=e.cropThreshold,y=n||this.getExtremesFromAll||e.getExtremesFromAll,p=this.isCartesian,o,s,u,h;n=t&&t.val2lin;e=!(!t||!t.logarithmic);var a=0,i=this.xData,c=this.yData,v=this.requireSorting,f=!1,l=i.length;for(t&&(f=t.getExtremes(),o=f.min,s=f.max,f=t.categories&&!t.names.length),p&&this.sorted&&!y&&(!r||l>r||this.forceCrop)&&(i[l-1]<o||i[0]>s?(i=[],c=[]):this.yData&&(i[0]<o||i[l-1]>s)&&(u=this.cropData(this.xData,this.yData,o,s),i=u.xData,c=u.yData,a=u.start,u=!0)),r=i.length||1;--r;)(t=e?n(i[r])-n(i[r-1]):i[r]-i[r-1],0<t&&("undefined"==typeof h||t<h))?h=t:0>t&&v&&!f&&(d(15,!1,this.chart),v=!1);return{xData:i,yData:c,cropped:u,cropStart:a,closestPointRange:h}},n.prototype.processData=function(n){var t=this.xAxis;if(this.isCartesian&&!this.isDirty&&!t.isDirty&&!this.yAxis.isDirty&&!n)return!1;n=this.getProcessedData();this.cropped=n.cropped;this.cropStart=n.cropStart;this.processedXData=n.xData;this.processedYData=n.yData;this.closestPointRange=this.basePointRange=n.closestPointRange},n.prototype.cropData=function(n,t,i,r,u){var s=n.length,f,e=0,o=s;for(u=l(u,this.cropShoulder),f=0;f<s;f++)if(n[f]>=i){e=Math.max(0,f-u);break}for(i=f;i<s;i++)if(n[i]>r){o=i+u;break}return{xData:n.slice(e,o),yData:t.slice(e,o),start:e,end:o}},n.prototype.generatePoints=function(){var u=this.options,e=u.data,o=this.processedXData,p=this.processedYData,c=this.pointClass,s=o.length,h=this.cropStart||0,f=this.hasGroupedData,l=u.keys,v=[],y,n,i,r,t;for(u=u.dataGrouping&&u.dataGrouping.groupAll?h:0,i=this.data,i||f||(r=[],r.length=e.length,i=this.data=r),l&&f&&(this.options.keys=!1),n=0;n<s;n++)r=h+n,f?(t=(new c).init(this,[o[n]].concat(dt(p[n]))),t.dataGroup=this.groupMap[u+n],t.dataGroup.options&&(t.options=t.dataGroup.options,w(t,t.dataGroup.options),delete t.dataLabels)):(t=i[r])||"undefined"==typeof e[r]||(i[r]=t=(new c).init(this,e[r],o[n])),t&&(t.index=f?u+n:r,v[n]=t);if(this.options.keys=l,i&&(s!==(y=i.length)||f))for(n=0;n<y;n++)n!==h||f||(n+=s),i[n]&&(i[n].destroyElements(),i[n].plotX=void 0);this.data=i;this.points=v;a(this,"afterGeneratePoints")},n.prototype.getXExtremes=function(n){return{min:rt(n),max:nt(n)}},n.prototype.getExtremes=function(n,t){var s=this.xAxis,e=this.yAxis,h=this.processedXData||this.xData,o=[],c=this.requireSorting?this.cropShoulder:0,w,i,f,u;e=e?e.positiveValuesOnly:!1;var r,l=0,v=0,p=0;for(n=n||this.stackedYData||this.processedYData||[],w=n.length,s&&(i=s.getExtremes(),l=i.min,v=i.max),r=0;r<w;r++)if(f=h[r],i=n[r],u=(y(i)||tt(i))&&(i.length||0<i||!e),f=t||this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||!s||(h[r+c]||f)>=l&&(h[r-c]||f)<=v,u&&f)if(u=i.length)for(;u--;)y(i[u])&&(o[p++]=i[u]);else o[p++]=i;return n={dataMin:rt(o),dataMax:nt(o)},a(this,"afterGetExtremes",{dataExtremes:n}),n},n.prototype.applyExtremes=function(){var n=this.getExtremes();return this.dataMin=n.dataMin,this.dataMax=n.dataMax,n},n.prototype.getFirstValidPoint=function(n){for(var r=n.length,t=0,i=null;null===i&&t<r;)i=n[t],t++;return i},n.prototype.translate=function(){var b,it;this.processedXData||this.processData();this.generatePoints();for(var s=this.options,rt=s.stacking,e=this.xAxis,d=e.categories,st=this.enabledDataSorting,i=this.yAxis,ft=this.points,ht=ft.length,ct=!!this.modifyValue,g=this.pointPlacementToXValue(),lt=!!g,o=s.threshold,et=s.startFromThreshold?o:0,ot=this.zoneAxis||"y",c,nt=Number.MAX_VALUE,h=0;h<ht;h++){var n=ft[h],u=n.x,t=void 0,p=void 0,r=n.y,f=n.low,w=rt&&i.stacking&&i.stacking.stacks[(this.negStacks&&r<(et?0:o)?"-":"")+this.stackKey];(i.positiveValuesOnly&&!i.validatePositiveValue(r)||e.positiveValuesOnly&&!e.validatePositiveValue(u))&&(n.isNull=!0);n.plotX=c=ut(k(e.translate(u,0,0,0,1,g,"flags"===this.type),-1e5,1e5));rt&&this.visible&&w&&w[u]&&(b=this.getStackIndicator(b,u,this.index),n.isNull||(t=w[u],p=t.points[b.key]));tt(p)&&(f=p[0],r=p[1],f===et&&b.key===w[u].base&&(f=l(y(o)&&o,i.min)),i.positiveValuesOnly&&0>=f&&(f=null),n.total=n.stackTotal=t.total,n.percentage=t.total&&n.y/t.total*100,n.stackY=r,this.irregularWidths||t.setOffset(this.pointXOffset||0,this.barW||0));n.yBottom=v(f)?k(i.translate(f,0,1,0,1),-1e5,1e5):null;ct&&(r=this.modifyValue(r,n));n.plotY=void 0;y(r)&&(t=i.translate(r,!1,!0,!1,!0),"undefined"!=typeof t&&(n.plotY=k(t,-1e5,1e5)));n.isInside=this.isPointInside(n);n.clientX=lt?ut(e.translate(u,0,0,0,1,g)):c;n.negative=n[ot]<(s[ot+"Threshold"]||o||0);n.category=d&&"undefined"!=typeof d[n.x]?d[n.x]:n.x;n.isNull||!1===n.visible||("undefined"!=typeof it&&(nt=Math.min(nt,Math.abs(c-it))),it=c);n.zone=this.zones.length&&n.getZone();!n.graphic&&this.group&&st&&(n.isNew=!0)}this.closestPointRangePx=nt;a(this,"afterTranslate")},n.prototype.getValidPoints=function(n,t,i){var r=this.chart;return(n||this.points||[]).filter(function(n){return t&&!r.isInsidePlot(n.plotX,n.plotY,{inverted:r.inverted})?!1:!1!==n.visible&&(i||!n.isNull)})},n.prototype.getClipBox=function(n,t){var f=this.options,i=this.chart,e=i.inverted,r=this.xAxis,u=r&&this.yAxis,o=i.options.chart.scrollablePlotArea||{};return n&&!1===f.clip&&u?n=e?{y:-i.chartWidth+u.len+u.pos,height:i.chartWidth,width:i.chartHeight,x:-i.chartHeight+r.len+r.pos}:{y:-u.pos,height:i.chartHeight,width:i.chartWidth,x:-r.pos}:(n=this.clipBox||i.clipBox,t&&(n.width=i.plotSizeX,n.x=(i.scrollablePixelsX||0)*(o.scrollPositionX||0))),t?{width:n.width,x:n.x}:n},n.prototype.getSharedClipKey=function(n){if(this.sharedClipKey)return this.sharedClipKey;var t=[n&&n.duration,n&&n.easing,n&&n.defer,this.getClipBox(n).height,this.options.xAxis,this.options.yAxis].join();return(!1!==this.options.clip||n)&&(this.sharedClipKey=t),t},n.prototype.setClip=function(n){var t=this.chart,o=this.options,s=t.renderer,u=t.inverted,h=this.clipBox,f=this.getClipBox(n),r=this.getSharedClipKey(n),i=t.sharedClips[r],e=t.sharedClips[r+"m"];n&&(f.width=0,u&&(f.x=t.plotHeight+(!1!==o.clip?0:t.plotTop)));i?t.hasLoaded||i.attr(f):(n&&(t.sharedClips[r+"m"]=e=s.clipRect(u?(t.plotSizeX||0)+99:-99,u?-t.plotLeft:-t.plotTop,99,u?t.chartWidth:t.chartHeight)),t.sharedClips[r]=i=s.clipRect(f),i.count={length:0});n&&!i.count[this.index]&&(i.count[this.index]=!0,i.count.length+=1);(!1!==o.clip||n)&&(this.group.clip(n||h?i:t.clipRect),this.markerGroup.clip(e));n||(i.count[this.index]&&(delete i.count[this.index],--i.count.length),0===i.count.length&&(h||(t.sharedClips[r]=i.destroy()),e&&(t.sharedClips[r+"m"]=e.destroy())))},n.prototype.animate=function(n){var u=this.chart,i=it(this.options.animation),t=this.sharedClipKey,r;n?this.setClip(i):t&&(n=u.sharedClips[t],t=u.sharedClips[t+"m"],r=this.getClipBox(i,!0),n&&n.animate(r,i),t&&t.animate({width:r.width+99,x:r.x-(u.inverted?0:99)},i))},n.prototype.afterAnimate=function(){this.setClip();a(this,"afterAnimate");this.finishedAnimating=!0},n.prototype.drawPoints=function(){var c=this.points,s=this.chart,u=this.options.marker,v=this[this.specialGroup]||this.markerGroup,f=this.xAxis,y=l(u.enabled,!f||f.isRadial?!0:null,this.closestPointRangePx>=u.enabledThreshold*u.radius),e,t,a,i,r;if(!1!==u.enabled||this._hasPointMarkers)for(e=0;e<c.length;e++){var n=c[e],h=(t=n.graphic)?"animate":"attr",o=n.marker||{},p=!!n.marker;(y&&"undefined"==typeof o.enabled||o.enabled)&&!n.isNull&&!1!==n.visible?(a=l(o.symbol,this.symbol,"rect"),i=this.markerAttribs(n,n.selected&&"select"),this.enabledDataSorting&&(n.startXPos=f.reversed?-(i.width||0):f.width),r=!1!==n.isInside,t?t[r?"show":"hide"](r).animate(i):r&&(0<(i.width||0)||n.hasImage)&&(n.graphic=t=s.renderer.symbol(a,i.x,i.y,i.width,i.height,p?o:u).add(v),this.enabledDataSorting&&s.hasRendered&&(t.attr({x:n.startXPos}),h="animate")),t&&"animate"===h&&t[r?"show":"hide"](r).animate(i),t&&!s.styledMode&&t[h](this.pointAttribs(n,n.selected&&"select")),t&&t.addClass(n.getClassName(),!0)):t&&(n.graphic=t.destroy())}},n.prototype.markerAttribs=function(n,t){var f=this.options,i=f.marker,u=n.marker||{},e=u.symbol||i.symbol,r=l(u.radius,i.radius);return t&&(i=i.states[t],t=u.states&&u.states[t],r=l(t&&t.radius,i&&i.radius,r+(i&&i.radiusPlus||0))),n.hasImage=e&&0===e.indexOf("url"),n.hasImage&&(r=0),n={x:f.crisp?Math.floor(n.plotX-r):n.plotX-r,y:n.plotY-r},r&&(n.width=n.height=2*r),n},n.prototype.pointAttribs=function(n,t){var i=this.options.marker,r=n&&n.options,u=r&&r.marker||{},f=r&&r.color,e=n&&n.color,s=n&&n.zone&&n.zone.color,o=this.color;return n=l(u.lineWidth,i.lineWidth),r=1,o=f||s||e||o,f=u.fillColor||i.fillColor||o,e=u.lineColor||i.lineColor||o,t=t||"normal",i=i.states[t],t=u.states&&u.states[t]||{},n=l(t.lineWidth,i.lineWidth,n+l(t.lineWidthPlus,i.lineWidthPlus,0)),f=t.fillColor||i.fillColor||f,e=t.lineColor||i.lineColor||e,r=l(t.opacity,i.opacity,r),{stroke:e,"stroke-width":n,fill:f,opacity:r}},n.prototype.destroy=function(n){var t=this,r=t.chart,s=/AppleWebKit\/533/.test(vt.navigator.userAgent),e=t.data||[],o,u,f,i;for(a(t,"destroy"),this.removeEvents(n),(t.axisTypes||[]).forEach(function(n){(i=t[n])&&i.series&&(ft(i.series,t),i.isDirty=i.forceRedraw=!0)}),t.legendItem&&t.chart.legend.destroyItem(t),u=e.length;u--;)(f=e[u])&&f.destroy&&f.destroy();t.clips&&t.clips.forEach(function(n){return n.destroy()});c.clearTimeout(t.animationTimeout);ot(t,function(n,t){n instanceof h&&!n.survive&&(o=s&&"group"===t?"hide":"destroy",n[o]())});r.hoverSeries===t&&(r.hoverSeries=void 0);ft(r.series,t);r.orderSeries();ot(t,function(i,r){n&&"hcEvents"===r||delete t[r]})},n.prototype.applyZones=function(){var c=this,t=this.chart,nt=t.renderer,tt=this.zones,f=this.clips||[],e=this.graph,o=this.area,a=Math.max(t.chartWidth,t.chartHeight),i=this[(this.zoneAxis||"y")+"Axis"],p=t.inverted,u,r,n,w,v,y,b,d,it=!1,g,s,h;tt.length&&(e||o)&&i&&"undefined"!=typeof i.min?(g=i.reversed,s=i.horiz,e&&!this.showLine&&e.hide(),o&&o.hide(),h=i.getExtremes(),tt.forEach(function(tt,rt){u=g?s?t.plotWidth:0:s?0:i.toPixels(h.min)||0;u=k(l(r,u),0,a);r=k(Math.round(i.toPixels(l(tt.value,h.max),!0)||0),0,a);it&&(u=r=i.toPixels(h.max));w=Math.abs(u-r);v=Math.min(u,r);y=Math.max(u,r);i.isXAxis?(n={x:p?y:v,y:0,width:w,height:a},s||(n.x=t.plotHeight-n.x)):(n={x:0,y:p?y:v,width:a,height:w},s&&(n.y=t.plotWidth-n.y));p&&nt.isVML&&(n=i.isXAxis?{x:0,y:g?v:y,height:n.width,width:t.chartWidth}:{x:n.y-t.plotLeft-t.spacingBox.x,y:0,width:n.height,height:t.chartHeight});f[rt]?f[rt].animate(n):f[rt]=nt.clipRect(n);b=c["zone-area-"+rt];d=c["zone-graph-"+rt];e&&d&&d.clip(f[rt]);o&&b&&b.clip(f[rt]);it=tt.value>h.max;c.resetZones&&0===r&&(r=void 0)}),this.clips=f):c.visible&&(e&&e.show(!0),o&&o.show(!0))},n.prototype.invertGroups=function(n){function i(){["group","markerGroup"].forEach(function(i){t[i]&&(r.renderer.isVML&&t[i].attr({width:t.yAxis.len,height:t.xAxis.len}),t[i].width=t.yAxis.len,t[i].height=t.xAxis.len,t[i].invert(t.isRadialSeries?!1:n))})}var t=this,r=t.chart;t.xAxis&&(t.eventsToUnbind.push(yt(r,"resize",i)),i(),t.invertGroups=i)},n.prototype.plotGroup=function(n,t,i,r,u){var f=this[n],e=!f;return i={visibility:i,zIndex:r||.1},"undefined"==typeof this.opacity||this.chart.styledMode||"inactive"===this.state||(i.opacity=this.opacity),e&&(this[n]=f=this.chart.renderer.g().add(u)),f.addClass("highcharts-"+t+" highcharts-series-"+this.index+" highcharts-"+this.type+"-series "+(v(this.colorIndex)?"highcharts-color-"+this.colorIndex+" ":"")+(this.options.className||"")+(f.hasClass("highcharts-tracker")?" highcharts-tracker":""),!0),f.attr(i)[e?"attr":"animate"](this.getPlotBox()),f},n.prototype.getPlotBox=function(){var t=this.chart,i=this.xAxis,n=this.yAxis;return t.inverted&&(i=n,n=this.xAxis),{translateX:i?i.left:t.plotLeft,translateY:n?n.top:t.plotTop,scaleX:1,scaleY:1}},n.prototype.removeEvents=function(n){n||kt(this);this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(n){n()}),this.eventsToUnbind.length=0)},n.prototype.render=function(){var n=this,i=n.chart,r=n.options,u=it(r.animation),e=n.visible?"inherit":"hidden",o=r.zIndex,s=n.hasRendered,h=i.seriesGroup,c=i.inverted,t=!n.finishedAnimating&&i.renderer.isSVG&&u.duration,f;a(this,"render");f=n.plotGroup("group","series",e,o,h);n.markerGroup=n.plotGroup("markerGroup","markers",e,o,h);t&&n.animate&&n.animate(!0);f.inverted=l(n.invertible,n.isCartesian)?c:!1;n.drawGraph&&(n.drawGraph(),n.applyZones());n.visible&&n.drawPoints();n.drawDataLabels&&n.drawDataLabels();n.redrawPoints&&n.redrawPoints();n.drawTracker&&!1!==n.options.enableMouseTracking&&n.drawTracker();n.invertGroups(c);!1===r.clip||n.sharedClipKey||s||f.clip(i.clipRect);t&&n.animate&&n.animate();s||(t&&u.defer&&(t+=u.defer),n.animationTimeout=st(function(){n.afterAnimate()},t||0));n.isDirty=!1;n.hasRendered=!0;a(n,"afterRender")},n.prototype.redraw=function(){var n=this.chart,u=this.isDirty||this.isDirtyData,t=this.group,i=this.xAxis,r=this.yAxis;t&&(n.inverted&&t.attr({width:n.plotWidth,height:n.plotHeight}),t.animate({translateX:l(i&&i.left,n.plotLeft),translateY:l(r&&r.top,n.plotTop)}));this.translate();this.render();u&&delete this.kdTree},n.prototype.searchPoint=function(n,t){var i=this.xAxis,r=this.yAxis,u=this.chart.inverted;return this.searchKDTree({clientX:u?i.len-n.chartY+i.pos:n.chartX-i.pos,plotY:u?r.len-n.chartX+r.pos:n.chartY-r.pos},t,n)},n.prototype.buildKDTree=function(n){function i(n,r,u){var f=n&&n.length,e;if(f)return e=t.kdAxisArray[r%u],n.sort(function(n,t){return n[e]-t[e]}),f=Math.floor(f/2),{point:n[f],left:i(n.slice(0,f),r+1,u),right:i(n.slice(f+1),r+1,u)}}this.buildingKdTree=!0;var t=this,r=-1<t.options.findNearestPointBy.indexOf("y")?2:1;delete t.kdTree;st(function(){t.kdTree=i(t.getValidPoints(null,!t.directTouch),r,r);t.buildingKdTree=!1},t.options.kdNow||n&&"touchstart"===n.type?0:1)},n.prototype.searchKDTree=function(n,t,i){function e(n,t,i,s){var c=t.point,l=o.kdAxisArray[i%s],a=c,y=v(n[u])&&v(c[u])?Math.pow(n[u]-c[u],2):null,h=v(n[f])&&v(c[f])?Math.pow(n[f]-c[f],2):null;return h=(y||0)+(h||0),c.dist=v(h)?Math.sqrt(h):Number.MAX_VALUE,c.distX=v(y)?Math.sqrt(y):Number.MAX_VALUE,l=n[l]-c[l],h=0>l?"left":"right",y=0>l?"right":"left",t[h]&&(h=e(n,t[h],i+1,s),a=h[r]<a[r]?h:c),t[y]&&Math.sqrt(l*l)<a[r]&&(n=e(n,t[y],i+1,s),a=n[r]<a[r]?n:a),a}var o=this,u=this.kdAxisArray[0],f=this.kdAxisArray[1],r=t?"distX":"dist";return t=-1<o.options.findNearestPointBy.indexOf("y")?2:1,this.kdTree||this.buildingKdTree||this.buildKDTree(i),this.kdTree?e(n,this.kdTree,t,t):void 0},n.prototype.pointPlacementToXValue=function(){var n=this.options,i=n.pointRange,t=this.xAxis;return n=n.pointPlacement,"between"===n&&(n=t.reversed?-.5:.5),y(n)?n*(i||t.pointRange):0},n.prototype.isPointInside=function(n){return"undefined"!=typeof n.plotY&&"undefined"!=typeof n.plotX&&0<=n.plotY&&n.plotY<=this.yAxis.len&&0<=n.plotX&&n.plotX<=this.xAxis.len},n.prototype.drawTracker=function(){var n=this,r=n.options,i=r.trackByArea,u=[].concat(i?n.areaPath:n.graphPath),t=n.chart,s=t.pointer,h=t.renderer,c=t.options.tooltip.snap,f=n.tracker,e=function(){t.hoverSeries!==n&&n.onMouseOver()},o="rgba(192,192,192,"+(at?.0001:.002)+")";f?f.attr({d:u}):n.graph&&(n.tracker=h.path(u).attr({visibility:n.visible?"visible":"hidden",zIndex:2}).addClass(i?"highcharts-tracker-area":"highcharts-tracker-line").add(n.group),t.styledMode||n.tracker.attr({"stroke-linecap":"round","stroke-linejoin":"round",stroke:o,fill:i?o:"none","stroke-width":n.graph.strokeWidth()+(i?0:2*c)}),[n.tracker,n.markerGroup,n.dataLabelsGroup].forEach(function(n){if(n&&(n.addClass("highcharts-tracker").on("mouseover",e).on("mouseout",function(n){s.onTrackerMouseOut(n)}),r.cursor&&!t.styledMode&&n.css({cursor:r.cursor}),lt))n.on("touchstart",e)}));a(this,"afterDrawTracker")},n.prototype.addPoint=function(n,t,i,r,u){var y=this.options,s=this.data,w=this.chart,o=this.xAxis,v,h,p,f,c,e;if(o=o&&o.hasNames&&o.names,v=y.data,h=this.xData,t=l(t,!0),f={series:this},this.pointClass.prototype.applyOptions.apply(f,[n]),c=f.x,e=h.length,this.requireSorting&&c<h[e-1])for(p=!0;e&&h[e-1]>c;)e--;this.updateParallelArrays(f,"splice",e,0,0);this.updateParallelArrays(f,e);o&&f.name&&(o[c]=f.name);v.splice(e,0,n);p&&(this.data.splice(e,0,null),this.processData());"point"===y.legendType&&this.generatePoints();i&&(s[0]&&s[0].remove?s[0].remove(!1):(s.shift(),this.updateParallelArrays(f,"shift"),v.shift()));!1!==u&&a(this,"addPoint",{point:f});this.isDirtyData=this.isDirty=!0;t&&w.redraw(r)},n.prototype.removePoint=function(n,t,i){var r=this,f=r.data,u=f[n],e=r.points,o=r.chart,s=function(){e&&e.length===f.length&&e.splice(n,1);f.splice(n,1);r.options.data.splice(n,1);r.updateParallelArrays(u||{series:r},"splice",n,1);u&&u.destroy();r.isDirty=!0;r.isDirtyData=!0;t&&o.redraw()};ht(i,o);t=l(t,!0);u?u.firePointEvent("remove",null,s):s()},n.prototype.remove=function(n,t,i,r){function e(){f.destroy(r);u.isDirtyLegend=u.isDirtyBox=!0;u.linkSeries();l(n,!0)&&u.redraw(t)}var f=this,u=f.chart;!1!==i?a(f,"remove",null,e):e()},n.prototype.update=function(n,t){var c;n=pt(n,this.userOptions);a(this,"update",{options:n});var i=this,f=i.chart,e=i.userOptions,b=i.initialType||i.type,o=f.options.plotOptions,v=p[b].prototype,y=i.finishedAnimating&&{animation:!1},s={},k,r=["eventOptions","navigatorSeries","baseSeries"],u=n.type||e.type||f.options.chart.type,h=!(this.hasDerivedData||u&&u!==this.type||"undefined"!=typeof n.pointStart||"undefined"!=typeof n.pointInterval||"undefined"!=typeof n.relativeXValue||i.hasOptionChanged("dataGrouping")||i.hasOptionChanged("pointStart")||i.hasOptionChanged("pointInterval")||i.hasOptionChanged("pointIntervalUnit")||i.hasOptionChanged("keys"));if(u=u||b,h&&(r.push("data","isDirtyData","points","processedXData","processedYData","xIncrement","cropped","_hasPointMarkers","_hasPointLabels","clips","nodes","layout","mapMap","mapData","minY","maxY","minX","maxX"),!1!==n.visible&&r.push("area","graph"),i.parallelArrays.forEach(function(n){r.push(n+"Data")}),n.data&&(n.dataSorting&&w(i.options.dataSorting,n.dataSorting),this.setData(n.data,!1))),n=g(e,y,{index:"undefined"==typeof e.index?i.index:e.index,pointStart:l(o&&o.series&&o.series.pointStart,e.pointStart,i.xData[0])},!h&&{data:i.options.data},n),h&&n.data&&(n.data=i.options.data),r=["group","markerGroup","dataLabelsGroup","transformGroup"].concat(r),r.forEach(function(n){r[n]=i[n];delete i[n]}),o=!1,p[u]){if(o=u!==i.type,i.remove(!1,!1,!1,!0),o)if(Object.setPrototypeOf)Object.setPrototypeOf(i,p[u].prototype);else{y=Object.hasOwnProperty.call(i,"hcEvents")&&i.hcEvents;for(k in v)i[k]=void 0;w(i,p[u].prototype);y?i.hcEvents=y:delete i.hcEvents}}else d(17,!0,f,{missingModuleFor:u});r.forEach(function(n){i[n]=r[n]});i.init(f,n);h&&this.points&&(c=i.options,!1===c.visible?(s.graphic=1,s.dataLabel=1):i._hasPointLabels||(n=c.marker,v=c.dataLabels,!n||!1!==n.enabled&&(e.marker&&e.marker.symbol)===n.symbol||(s.graphic=1),v&&!1===v.enabled&&(s.dataLabel=1)),this.points.forEach(function(n){n&&n.series&&(n.resolveColor(),Object.keys(s).length&&n.destroyElements(s),!1===c.showInLegend&&n.legendItem&&f.legend.destroyItem(n))},this));i.initialType=b;f.linkSeries();o&&i.linkedSeries.length&&(i.isDirtyData=!0);a(this,"afterUpdate");l(t,!0)&&f.redraw(h?void 0:!1)},n.prototype.setName=function(n){this.name=this.options.name=this.userOptions.name=n;this.chart.isDirtyLegend=!0},n.prototype.hasOptionChanged=function(n){var i=this.options[n],t=this.chart.options.plotOptions,r=this.userOptions[n];return r?i!==r:i!==l(t&&t[this.type]&&t[this.type][n],t&&t.series&&t.series[n],i)},n.prototype.onMouseOver=function(){var n=this.chart,t=n.hoverSeries;n.pointer.setHoverChartIndex();t&&t!==this&&t.onMouseOut();this.options.events.mouseOver&&a(this,"mouseOver");this.setState("hover");n.hoverSeries=this},n.prototype.onMouseOut=function(){var r=this.options,n=this.chart,t=n.tooltip,i=n.hoverPoint;n.hoverSeries=null;i&&i.onMouseOut();this&&r.events.mouseOut&&a(this,"mouseOut");!t||this.stickyTracking||t.shared&&!this.noSharedTooltip||t.hide();n.series.forEach(function(n){n.setState("",!0)})},n.prototype.setState=function(n,t){var i=this,r=i.options,f=i.graph,c=r.inactiveOtherPoints,u=r.states,e=l(u[n||"normal"]&&u[n||"normal"].animation,i.chart.options.chart.animation),o=r.lineWidth,s=0,h=r.opacity;if(n=n||"",i.state!==n&&([i.group,i.markerGroup,i.dataLabelsGroup].forEach(function(t){t&&(i.state&&t.removeClass("highcharts-series-"+i.state),n&&t.addClass("highcharts-series-"+n))}),i.state=n,!i.chart.styledMode)){if(u[n]&&!1===u[n].enabled)return;if(n&&(o=u[n].lineWidth||o+(u[n].lineWidthPlus||0),h=l(u[n].opacity,h)),f&&!f.dashstyle)for(r={"stroke-width":o},f.animate(r,e);i["zone-graph-"+s];)i["zone-graph-"+s].animate(r,e),s+=1;c||[i.group,i.markerGroup,i.dataLabelsGroup,i.labelBySeries].forEach(function(n){n&&n.animate({opacity:h},e)})}t&&c&&i.points&&i.setAllPointsToState(n||void 0)},n.prototype.setAllPointsToState=function(n){this.points.forEach(function(t){t.setState&&t.setState(n)})},n.prototype.setVisible=function(n,t){var i=this,r=i.chart,f=i.legendItem,e=r.options.chart.ignoreHiddenSeries,o=i.visible,u=(i.visible=n=i.options.visible=i.userOptions.visible="undefined"==typeof n?!o:n)?"show":"hide";["group","dataLabelsGroup","markerGroup","tracker","tt"].forEach(function(n){i[n]&&i[n][u]()});(r.hoverSeries===i||(r.hoverPoint&&r.hoverPoint.series)===i)&&i.onMouseOut();f&&r.legend.colorizeItem(i,n);i.isDirty=!0;i.options.stacking&&r.series.forEach(function(n){n.options.stacking&&n.visible&&(n.isDirty=!0)});i.linkedSeries.forEach(function(t){t.setVisible(n,!1)});e&&(r.isDirtyBox=!0);a(i,u);!1!==t&&r.redraw()},n.prototype.show=function(){this.setVisible(!0)},n.prototype.hide=function(){this.setVisible(!1)},n.prototype.select=function(n){this.selected=n=this.options.selected="undefined"==typeof n?!this.selected:n;this.checkbox&&(this.checkbox.checked=n);a(this,n?"select":"unselect")},n.prototype.shouldShowTooltip=function(n,t,i){return void 0===i&&(i={}),i.series=this,i.visiblePlotOnly=!0,this.chart.isInsidePlot(n,t,i)},n.defaultOptions=o,n}(),w(n.prototype,{axisTypes:["xAxis","yAxis"],coll:"series",colorCounter:0,cropShoulder:1,directTouch:!1,drawLegendSymbol:u.drawLineMarker,isCartesian:!0,kdAxisArray:["clientX","plotY"],parallelArrays:["x","y"],pointClass:e,requireSorting:!0,sorted:!0}),s.series=n,n}),i(t,"Extensions/ScrollablePlotArea.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Axis/Axis.js"],t["Core/Chart/Chart.js"],t["Core/Series/Series.js"],t["Core/Renderer/RendererRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f){var h=n.stop,e=f.addEvent,o=f.createElement,s=f.merge,c=f.pick;e(i,"afterSetChartSize",function(n){var r=this.options.chart.scrollablePlotArea,i=r&&r.minWidth,u;r=r&&r.minHeight;this.renderer.forExport||(i?(this.scrollablePixelsX=i=Math.max(0,i-this.chartWidth))&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=s(this.plotBox),this.plotBox.width=this.plotWidth+=i,this.inverted?this.clipBox.height+=i:this.clipBox.width+=i,u={1:{name:"right",value:i}}):r&&(this.scrollablePixelsY=i=Math.max(0,r-this.chartHeight))&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=s(this.plotBox),this.plotBox.height=this.plotHeight+=i,this.inverted?this.clipBox.width+=i:this.clipBox.height+=i,u={2:{name:"bottom",value:i}}),u&&!n.skipAxes&&this.axes.forEach(function(n){u[n.side]?n.getPlotLinePath=function(){var i=u[n.side].name,r=this[i],f;return this[i]=r-u[n.side].value,f=t.prototype.getPlotLinePath.apply(this,arguments),this[i]=r,f}:(n.setAxisSize(),n.setAxisTranslation())}))});e(i,"render",function(){this.scrollablePixelsX||this.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});i.prototype.setUpScrolling=function(){var t=this,n={WebkitOverflowScrolling:"touch",overflowX:"hidden",overflowY:"hidden"};this.scrollablePixelsX&&(n.overflowX="auto");this.scrollablePixelsY&&(n.overflowY="auto");this.scrollingParent=o("div",{className:"highcharts-scrolling-parent"},{position:"relative"},this.renderTo);this.scrollingContainer=o("div",{className:"highcharts-scrolling"},n,this.scrollingParent);e(this.scrollingContainer,"scroll",function(){t.pointer&&delete t.pointer.chartPosition});this.innerContainer=o("div",{className:"highcharts-inner-container"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=null};i.prototype.moveFixedElements=function(){var r=this.container,t=this.fixedRenderer,i=".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(" "),n;this.scrollablePixelsX&&!this.inverted?n=".highcharts-yaxis":this.scrollablePixelsX&&this.inverted?n=".highcharts-xaxis":this.scrollablePixelsY&&!this.inverted?n=".highcharts-xaxis":this.scrollablePixelsY&&this.inverted&&(n=".highcharts-yaxis");n&&i.push(n+":not(.highcharts-radial-axis)",n+"-labels:not(.highcharts-radial-axis-labels)");i.forEach(function(n){[].forEach.call(r.querySelectorAll(n),function(n){(n.namespaceURI===t.SVG_NS?t.box:t.box.parentNode).appendChild(n);n.style.pointerEvents="auto"})})};i.prototype.applyFixed=function(){var i=!this.fixedDiv,t=this.options.chart,r=t.scrollablePlotArea,n=u.getRendererType(),f,s;i?(this.fixedDiv=o("div",{className:"highcharts-fixed"},{position:"absolute",overflow:"hidden",pointerEvents:"none",zIndex:(t.style&&t.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=t=new n(this.fixedDiv,this.chartWidth,this.chartHeight,this.options.chart.style),this.scrollableMask=t.path().attr({fill:this.options.chart.backgroundColor||"#fff","fill-opacity":c(r.opacity,.85),zIndex:-1}).addClass("highcharts-scrollable-mask").add(),e(this,"afterShowResetZoom",this.moveFixedElements),e(this,"afterDrilldown",this.moveFixedElements),e(this,"afterLayOutTitles",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);(this.scrollableDirty||i)&&(this.scrollableDirty=!1,this.moveFixedElements());t=this.chartWidth+(this.scrollablePixelsX||0);n=this.chartHeight+(this.scrollablePixelsY||0);h(this.container);this.container.style.width=t+"px";this.container.style.height=n+"px";this.renderer.boxWrapper.attr({width:t,height:n,viewBox:[0,0,t,n].join(" ")});this.chartBackground.attr({width:t,height:n});this.scrollingContainer.style.height=this.chartHeight+"px";i&&(r.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*r.scrollPositionX),r.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*r.scrollPositionY));n=this.axisOffset;i=this.plotTop-n[0]-1;r=this.plotLeft-n[3]-1;t=this.plotTop+this.plotHeight+n[2]+1;n=this.plotLeft+this.plotWidth+n[1]+1;f=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0);s=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);i=this.scrollablePixelsX?[["M",0,i],["L",this.plotLeft-1,i],["L",this.plotLeft-1,t],["L",0,t],["Z"],["M",f,i],["L",this.chartWidth,i],["L",this.chartWidth,t],["L",f,t],["Z"]]:this.scrollablePixelsY?[["M",r,0],["L",r,this.plotTop-1],["L",n,this.plotTop-1],["L",n,0],["Z"],["M",r,s],["L",r,this.chartHeight],["L",n,this.chartHeight],["L",n,s],["Z"]]:[["M",0,0]];"adjustHeight"!==this.redrawTrigger&&this.scrollableMask.attr({d:i})};e(t,"afterInit",function(){this.chart.scrollableDirty=!0});e(r,"show",function(){this.chart.scrollableDirty=!0});""}),i(t,"Core/Axis/StackingAxis.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Axis/Axis.js"],t["Core/Utilities.js"]],function(n,t,i){var e=n.getDeferredAnimation,f=i.addEvent,o=i.destroyObjectProperties,s=i.fireEvent,h=i.isNumber,r=i.objectEach,u;return function(n){function u(){var n=this.stacking,t;n&&(t=n.stacks,r(t,function(n,i){o(n);t[i]=null}),n&&n.stackTotalGroup&&n.stackTotalGroup.destroy())}function c(){this.stacking||(this.stacking=new t(this))}var i=[],t;n.compose=function(n){return-1===i.indexOf(n)&&(i.push(n),f(n,"init",c),f(n,"destroy",u)),n};t=function(){function n(n){this.oldStacks={};this.stacks={};this.stacksTouched=0;this.axis=n}return n.prototype.buildStacks=function(){var t=this.axis,i=t.series,f=t.options.reversedStacks,r=i.length,n,u;if(!t.isXAxis){for(this.usePercentage=!1,n=r;n--;)u=i[f?n:r-n-1],u.setStackedPoints(),u.setGroupedPoints();for(n=0;n<r;n++)i[n].modifyStacks();s(t,"afterBuildStacks")}},n.prototype.cleanStacks=function(){if(!this.axis.isXAxis){if(this.oldStacks)var n=this.stacks=this.oldStacks;r(n,function(n){r(n,function(n){n.cumulative=n.total})})}},n.prototype.resetStacks=function(){var n=this,t=n.stacks;n.axis.isXAxis||r(t,function(t){r(t,function(i,r){h(i.touched)&&i.touched<n.stacksTouched?(i.destroy(),delete t[r]):(i.total=null,i.cumulative=null)})})},n.prototype.renderStackTotals=function(){var n=this.axis,t=n.chart,u=t.renderer,f=this.stacks,i;n=e(t,n.options.stackLabels&&n.options.stackLabels.animation||!1);i=this.stackTotalGroup=this.stackTotalGroup||u.g("stack-labels").attr({visibility:"visible",zIndex:6,opacity:0}).add();i.translate(t.plotLeft,t.plotTop);r(f,function(n){r(n,function(n){n.render(i)})});i.animate({opacity:1},n)},n}();n.Additions=t}(u||(u={})),u}),i(t,"Extensions/Stacking.js",[t["Core/Axis/Axis.js"],t["Core/Chart/Chart.js"],t["Core/FormatUtilities.js"],t["Core/Globals.js"],t["Core/Series/Series.js"],t["Core/Axis/StackingAxis.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f,e){var v=i.format,s=e.correctFloat,h=e.defined,y=e.destroyObjectProperties,p=e.isArray,c=e.isNumber,l=e.objectEach,o=e.pick,a=function(){function n(n,t,i,r,u){var f=n.chart.inverted;this.axis=n;this.isNegative=i;this.options=t=t||{};this.x=r;this.total=null;this.points={};this.hasValidPoints=!1;this.stack=u;this.rightCliff=this.leftCliff=0;this.alignOptions={align:t.align||(f?i?"left":"right":"center"),verticalAlign:t.verticalAlign||(f?"middle":i?"bottom":"top"),y:t.y,x:t.x};this.textAlign=t.textAlign||(f?i?"right":"left":"center")}return n.prototype.destroy=function(){y(this,this.axis)},n.prototype.render=function(n){var r=this.axis.chart,t=this.options,i=t.format;i=i?v(i,this,r):t.formatter.call(this);this.label?this.label.attr({text:i,visibility:"hidden"}):(this.label=r.renderer.label(i,null,null,t.shape,null,null,t.useHTML,!1,"stack-labels"),i={r:t.borderRadius||0,text:i,rotation:t.rotation,padding:o(t.padding,5),visibility:"hidden"},r.styledMode||(i.fill=t.backgroundColor,i.stroke=t.borderColor,i["stroke-width"]=t.borderWidth,this.label.css(t.style)),this.label.attr(i),this.label.added||this.label.add(n));this.label.labelrank=r.plotSizeY},n.prototype.setOffset=function(n,t,i,r,f){var e=this.axis,s=e.chart,l;r=e.translate(e.stacking.usePercentage?100:r?r:this.total,0,0,0,1);i=e.translate(i?i:0);i=h(r)&&Math.abs(r-i);n=o(f,s.xAxis[0].translate(this.x))+n;e=h(r)&&this.getStackBox(s,this,n,r,t,i,e);t=this.label;i=this.isNegative;n="justify"===o(this.options.overflow,"justify");l=this.textAlign;t&&e&&(f=t.getBBox(),r=t.padding,l="left"===l?s.inverted?-r:r:"right"===l?f.width:s.inverted&&"center"===l?f.width/2:s.inverted?i?f.width+r:-r:f.width/2,i=s.inverted?f.height/2:i?-r:f.height,this.alignOptions.x=o(this.options.x,0),this.alignOptions.y=o(this.options.y,0),e.x-=l,e.y-=i,t.align(this.alignOptions,null,e),s.isInsidePlot(t.alignAttr.x+l-this.alignOptions.x,t.alignAttr.y+i-this.alignOptions.y)?t.show():(t.alignAttr.y=-9999,n=!1),n&&u.prototype.justifyDataLabel.call(this.axis,t,this.alignOptions,t.alignAttr,f,e),t.attr({x:t.alignAttr.x,y:t.alignAttr.y}),o(!n&&this.options.crop,!0)&&((s=c(t.x)&&c(t.y)&&s.isInsidePlot(t.x-r+t.width,t.y)&&s.isInsidePlot(t.x+r,t.y))||t.hide()))},n.prototype.getStackBox=function(n,t,i,r,u,f,e){var s=t.axis.reversed,o=n.inverted,h=e.height+e.pos-(o?n.plotLeft:n.plotTop);return t=t.isNegative&&!s||!t.isNegative&&s,{x:o?t?r-e.right:r-f+e.pos-n.plotLeft:i+n.xAxis[0].transB-n.plotLeft,y:o?e.height-i-u:t?h-r-f:h-r,width:o?f:u,height:o?u:f}},n}();return t.prototype.getStacks=function(){var n=this,t=n.inverted;n.yAxis.forEach(function(n){n.stacking&&n.stacking.stacks&&n.hasVisibleSeries&&(n.stacking.oldStacks=n.stacking.stacks)});n.series.forEach(function(i){var r=i.xAxis&&i.xAxis.options||{};i.options.stacking&&(!0===i.visible||!1===n.options.chart.ignoreHiddenSeries)&&(i.stackKey=[i.type,o(i.options.stack,""),t?r.top:r.left,t?r.height:r.width].join())})},f.compose(n),u.prototype.setGroupedPoints=function(){var n=this.yAxis.stacking;this.options.centerInCategory&&(this.is("column")||this.is("columnrange"))&&!this.options.stacking&&1<this.chart.series.length?u.prototype.setStackedPoints.call(this,"group"):n&&l(n.stacks,function(t,i){"group"===i.slice(-5)&&(l(t,function(n){return n.destroy()}),delete n.stacks[i])})},u.prototype.setStackedPoints=function(n){var c=n||this.options.stacking;if(c&&(!0===this.visible||!1===this.chart.options.chart.ignoreHiddenSeries)){var rt=this.processedXData,d=this.processedYData,g=[],ut=d.length,v=this.options,nt=v.threshold,w=o(v.startFromThreshold&&nt,0);v=v.stack;n=n?this.type+","+c:this.stackKey;var tt="-"+n,it=this.negStacks,e=this.yAxis,u=e.stacking.stacks,b=e.stacking.oldStacks,f,l;for(e.stacking.stacksTouched+=1,l=0;l<ut;l++){var i=rt[l],r=d[l],k=this.getStackIndicator(k,i,this.index),y=k.key,t=(f=it&&r<(w?0:nt))?tt:n;u[t]||(u[t]={});u[t][i]||(b[t]&&b[t][i]?(u[t][i]=b[t][i],u[t][i].total=null):u[t][i]=new a(e,e.options.stackLabels,f,i,v));t=u[t][i];null!==r?(t.points[y]=t.points[this.index]=[o(t.cumulative,w)],h(t.cumulative)||(t.base=y),t.touched=e.stacking.stacksTouched,0<k.index&&!1===this.singleStacks&&(t.points[y][0]=t.points[this.index+","+i+",0"][0])):t.points[y]=t.points[this.index]=null;"percent"===c?(f=f?n:tt,it&&u[f]&&u[f][i]?(f=u[f][i],t.total=f.total=Math.max(f.total,t.total)+Math.abs(r)||0):t.total=s(t.total+(Math.abs(r)||0))):"group"===c?(p(r)&&(r=r[0]),null!==r&&(t.total=(t.total||0)+1)):t.total=s(t.total+(r||0));t.cumulative="group"===c?(t.total||1)-1:o(t.cumulative,w)+(r||0);null!==r&&(t.points[y].push(t.cumulative),g[l]=t.cumulative,t.hasValidPoints=!0)}"percent"===c&&(e.stacking.usePercentage=!0);"group"!==c&&(this.stackedYData=g);e.stacking.oldStacks={}}},u.prototype.modifyStacks=function(){var n=this,i=n.stackKey,r=n.yAxis.stacking.stacks,u=n.processedXData,t,f=n.options.stacking;n[f+"Stacker"]&&[i,"-"+i].forEach(function(i){for(var o=u.length,e,s;o--;)(e=u[o],t=n.getStackIndicator(t,e,n.index,i),s=(e=r[i]&&r[i][e])&&e.points[t.key])&&n[f+"Stacker"](s,e,o)})},u.prototype.percentStacker=function(n,t,i){t=t.total?100/t.total:0;n[0]=s(n[0]*t);n[1]=s(n[1]*t);this.stackedYData[i]=n[1]},u.prototype.getStackIndicator=function(n,t,i,r){return!h(n)||n.x!==t||r&&n.key!==r?n={x:t,index:0,key:r}:n.index++,n.key=[i,t,n.index].join(),n},r.StackItem=a,r.StackItem}),i(t,"Series/Line/LineSeries.js",[t["Core/Color/Palette.js"],t["Core/Series/Series.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r){var u=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),f=r.defined,e=r.merge;return r=function(i){function r(){var n=null!==i&&i.apply(this,arguments)||this;return n.data=void 0,n.options=void 0,n.points=void 0,n}return u(r,i),r.prototype.drawGraph=function(){var t=this,r=this.options,i=(this.gappedPath||this.getGraphPath).call(this),f=this.chart.styledMode,u=[["graph","highcharts-graph"]];f||u[0].push(r.lineColor||this.color||n.neutralColor20,r.dashStyle);u=t.getZonesGraphs(u);u.forEach(function(n,u){var o=n[0],e=t[o],s=e?"animate":"attr";e?(e.endX=t.preventGraphAnimation?null:i.xMap,e.animate({d:i})):i.length&&(t[o]=e=t.chart.renderer.path(i).addClass(n[1]).attr({zIndex:1}).add(t.group));e&&!f&&(o={stroke:n[2],"stroke-width":r.lineWidth,fill:t.fillGraph&&t.color||"none"},n[3]?o.dashstyle=n[3]:"square"!==r.linecap&&(o["stroke-linecap"]=o["stroke-linejoin"]="round"),e[s](o).shadow(2>u&&r.shadow));e&&(e.startX=i.xMap,e.isArea=i.isArea)})},r.prototype.getGraphPath=function(n,t,i){var u=this,h=u.options,o=[],s=[],e,r=h.step,c;return n=n||u.points,c=n.reversed,c&&n.reverse(),(r={right:1,center:2}[r]||r&&3)&&c&&(r=4-r),n=this.getValidPoints(n,!1,!(h.connectNulls&&!t&&!i)),n.forEach(function(c,l){var v=c.plotX,y=c.plotY,a=n[l-1];(c.leftCliff||a&&a.rightCliff)&&!i&&(e=!0);c.isNull&&!f(t)&&0<l?e=!h.connectNulls:c.isNull&&!t?e=!0:(0===l||e?l=[["M",c.plotX,c.plotY]]:u.getPointSpline?l=[u.getPointSpline(n,c,l)]:r?(l=1===r?[["L",a.plotX,y]]:2===r?[["L",(a.plotX+v)/2,a.plotY],["L",(a.plotX+v)/2,y]]:[["L",v,a.plotY]],l.push(["L",v,y])):l=[["L",v,y]],s.push(c.x),r&&(s.push(c.x),2===r&&s.push(c.x)),o.push.apply(o,l),e=!1)}),o.xMap=s,u.graphPath=o},r.prototype.getZonesGraphs=function(n){return this.zones.forEach(function(t,i){i=["zone-graph-"+i,"highcharts-graph highcharts-zone-graph-"+i+" "+(t.className||"")];this.chart.styledMode||i.push(t.color||this.color,t.dashStyle||this.options.dashStyle);n.push(i)},this),n},r.defaultOptions=e(t.defaultOptions,{}),r}(t),i.registerSeriesType("line",r),r}),i(t,"Series/Area/AreaSeries.js",[t["Core/Color/Color.js"],t["Core/Legend/LegendSymbol.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r){var e=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),o=n.parse,f=i.seriesTypes.line;n=r.extend;var s=r.merge,h=r.objectEach,u=r.pick;return r=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t}return e(t,n),t.prototype.drawGraph=function(){this.areaPath=[];n.prototype.drawGraph.apply(this);var t=this,i=this.areaPath,r=this.options,f=[["area","highcharts-area",this.color,r.fillColor]];this.zones.forEach(function(n,i){f.push(["zone-area-"+i,"highcharts-area highcharts-zone-area-"+i+" "+n.className,n.color||t.color,n.fillColor||r.fillColor])});f.forEach(function(n){var s=n[0],f=t[s],h=f?"animate":"attr",e={};f?(f.endX=t.preventGraphAnimation?null:i.xMap,f.animate({d:i})):(e.zIndex=0,f=t[s]=t.chart.renderer.path(i).addClass(n[1]).add(t.group),f.isArea=!0);t.chart.styledMode||(e.fill=u(n[3],o(n[2]).setOpacity(u(r.fillOpacity,.75)).get()));f[h](e);f.startX=i.xMap;f.shiftUnit=r.step?2:1})},t.prototype.getGraphPath=function(n){var o=f.prototype.getGraphPath,r=this.options,e=r.stacking,h=this.yAxis,t,c=[],l=[],p=this.index,w=h.stacking.stacks[this.stackKey],b=r.threshold,a=Math.round(h.getThreshold(r.threshold)),v;for(r=u(r.connectNulls,"percent"===e),v=function(t,i,r){var u=n[t],o,f,s;t=e&&w[u.x].points[p];o=u[r+"Null"]||0;r=u[r+"Cliff"]||0;u=!0;r||o?(f=(o?t[0]:t[1])+r,s=t[0]+r,u=!!o):!e&&n[i]&&n[i].isNull&&(f=s=b);"undefined"!=typeof f&&(l.push({plotX:y,plotY:null===f?a:h.getThreshold(f),isNull:u,isCliff:!0}),c.push({plotX:y,plotY:null===s?a:h.getThreshold(s),doCurve:!1}))},n=n||this.points,e&&(n=this.getStackPoints(n)),t=0;t<n.length;t++){e||(n[t].leftCliff=n[t].rightCliff=n[t].leftNull=n[t].rightNull=void 0);var i=n[t].isNull,y=u(n[t].rectPlotX,n[t].plotX),s=e?u(n[t].yBottom,a):a;(!i||r)&&(r||v(t,t-1,"left"),i&&!e&&r||(l.push(n[t]),c.push({x:t,plotX:y,plotY:s})),r||v(t,t+1,"right"))}return t=o.call(this,l,!0,!0),c.reversed=!0,i=o.call(this,c,!0,!0),(s=i[0])&&"M"===s[0]&&(i[0]=["L",s[1],s[2]]),i=t.concat(i),i.length&&i.push(["Z"]),o=o.call(this,l,!1,r),i.xMap=t.xMap,this.areaPath=i,o},t.prototype.getStackPoints=function(n){var c=this,s=[],f=[],p=this.xAxis,e=this.yAxis,o=e.stacking.stacks[this.stackKey],i={},r=e.series,l=r.length,a=e.options.reversedStacks?1:-1,v=r.indexOf(c),t,y;if(n=n||this.points,this.options.stacking){for(t=0;t<n.length;t++)n[t].leftNull=n[t].rightNull=void 0,i[n[t].x]=n[t];h(o,function(n,t){null!==n.total&&f.push(t)});f.sort(function(n,t){return n-t});y=r.map(function(n){return n.visible});f.forEach(function(n,t){var h=0,b,k,w;if(i[n]&&!i[n].isNull)s.push(i[n]),[-1,1].forEach(function(u){var w=1===u?"rightNull":"leftNull",h=0,p=o[f[t+u]],e,s;if(p)for(e=v;0<=e&&e<l;)s=r[e].index,b=p.points[s],b||(s===c.index?i[n][w]=!0:y[e]&&(k=o[n].points[s])&&(h-=k[1]-k[0])),e+=a;i[n][1===u?"rightCliff":"leftCliff"]=h});else{for(w=v;0<=w&&w<l;){if(b=o[n].points[r[w].index]){h=b[1];break}w+=a}h=u(h,0);h=e.translate(h,0,1,0,1);s.push({isNull:!0,plotX:p.translate(n,0,0,0,1),x:n,plotY:h,yBottom:h})}})}return s},t.defaultOptions=s(f.defaultOptions,{threshold:0}),t}(f),n(r.prototype,{singleStacks:!1,drawLegendSymbol:t.drawRectangle}),i.registerSeriesType("area",r),r}),i(t,"Series/Spline/SplineSeries.js",[t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t){var u=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),r=n.seriesTypes.line,f=t.merge,i=t.pick;return t=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t}return u(t,n),t.prototype.getPointSpline=function(n,t,r){var h=t.plotX||0,u=t.plotY||0,o=n[r-1],s,f;if(r=n[r+1],o&&!o.isNull&&!1!==o.doCurve&&!t.isCliff&&r&&!r.isNull&&!1!==r.doCurve&&!t.isCliff){n=o.plotY||0;s=r.plotX||0;r=r.plotY||0;var c=0,l=(1.5*h+(o.plotX||0))/2.5,e=(1.5*u+n)/2.5;s=(1.5*h+s)/2.5;f=(1.5*u+r)/2.5;s!==l&&(c=(f-e)*(s-h)/(s-l)+u-f);e+=c;f+=c;e>n&&e>u?(e=Math.max(n,u),f=2*u-e):e<n&&e<u&&(e=Math.min(n,u),f=2*u-e);f>r&&f>u?(f=Math.max(r,u),e=2*u-f):f<r&&f<u&&(f=Math.min(r,u),e=2*u-f);t.rightContX=s;t.rightContY=f}return t=["C",i(o.rightContX,o.plotX,0),i(o.rightContY,o.plotY,0),i(l,h,0),i(e,u,0),h,u],o.rightContX=o.rightContY=void 0,t},t.defaultOptions=f(r.defaultOptions),t}(r),n.registerSeriesType("spline",t),t}),i(t,"Series/AreaSpline/AreaSplineSeries.js",[t["Series/Area/AreaSeries.js"],t["Series/Spline/SplineSeries.js"],t["Core/Legend/LegendSymbol.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r,u){var e=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),f=n.prototype,o=u.extend,s=u.merge;return u=function(i){function r(){var n=null!==i&&i.apply(this,arguments)||this;return n.data=void 0,n.points=void 0,n.options=void 0,n}return e(r,i),r.defaultOptions=s(t.defaultOptions,n.defaultOptions),r}(t),o(u.prototype,{getGraphPath:f.getGraphPath,getStackPoints:f.getStackPoints,drawGraph:f.drawGraph,drawLegendSymbol:i.drawRectangle}),r.registerSeriesType("areaspline",u),u}),i(t,"Series/Column/ColumnSeries.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Color/Color.js"],t["Core/Globals.js"],t["Core/Legend/LegendSymbol.js"],t["Core/Color/Palette.js"],t["Core/Series/Series.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o){var y=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),p=n.animObject,w=t.parse,b=i.hasTouch;n=i.noop;var h=o.clamp,k=o.css,d=o.defined,a=o.extend,g=o.fireEvent,v=o.isArray,c=o.isNumber,l=o.merge,s=o.pick,nt=o.objectEach;return o=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.borderWidth=void 0,t.data=void 0,t.group=void 0,t.options=void 0,t.points=void 0,t}return y(t,n),t.prototype.animate=function(n){var t=this,i=this.yAxis,o=t.options,f=this.chart.inverted,r={},e=f?"translateX":"translateY",u;n?(r.scaleY=.001,n=h(i.toPixels(o.threshold),i.pos,i.pos+i.len),f?r.translateX=n-i.len:r.translateY=n,t.clipBox&&t.setClip(),t.group.attr(r)):(u=Number(t.group.attr(e)),t.group.animate({scaleY:1},a(p(t.options.animation),{step:function(n,f){t.group&&(r[e]=u+f.pos*(i.pos-u),t.group.attr(r))}})))},t.prototype.init=function(t){n.prototype.init.apply(this,arguments);var i=this;t=i.chart;t.hasRendered&&t.series.forEach(function(n){n.type===i.type&&(n.isDirty=!0)})},t.prototype.getColumnMetrics=function(){var t=this,i=t.options,n=t.xAxis,c=t.yAxis,u=n.options.reversedStacks,f,e,r;u=n.reversed&&!u||!n.reversed&&u;f={};r=0;!1===i.grouping?r=1:t.chart.series.forEach(function(n){var o=n.yAxis,i=n.options,u;n.type===t.type&&(n.visible||!t.chart.options.chart.ignoreHiddenSeries)&&c.len===o.len&&c.pos===o.pos&&(i.stacking&&"group"!==i.stacking?(e=n.stackKey,"undefined"==typeof f[e]&&(f[e]=r++),u=f[e]):!1!==i.grouping&&(u=r++),n.columnIndex=u)});var h=Math.min(Math.abs(n.transA)*(n.ordinal&&n.ordinal.slope||i.pointRange||n.closestPointRange||n.tickInterval||1),n.len),l=h*i.groupPadding,o=(h-2*l)/(r||1);return i=Math.min(i.maxPointWidth||n.len,s(i.pointWidth,o*(1-2*i.pointPadding))),t.columnMetrics={width:i,offset:(o-i)/2+(l+((t.columnIndex||0)+(u?1:0))*o-h/2)*(u?-1:1),paddedWidth:o,columnCount:r},t.columnMetrics},t.prototype.crispCol=function(n,t,i,r){var e=this.chart,u=this.borderWidth,f=-(u%2?.5:0);return u=u%2?.5:1,e.inverted&&e.renderer.isVML&&(u+=1),this.options.crisp&&(i=Math.round(n+i)+f,n=Math.round(n)+f,i-=n),r=Math.round(t+r)+u,f=.5>=Math.abs(t)&&.5<r,t=Math.round(t)+u,r-=t,f&&r&&(--t,r+=1),{x:n,y:t,width:i,height:r}},t.prototype.adjustForMissingColumns=function(n,t,i,r){var e=this,o=this.options.stacking,f,u;return!i.isNull&&1<r.columnCount&&(f=0,u=0,nt(this.yAxis.stacking&&this.yAxis.stacking.stacks,function(n){if("number"==typeof i.x&&(n=n[i.x.toString()])){var t=n.points[e.index],r=n.total;o?(t&&(f=u),n.hasValidPoints&&u++):v(t)&&(f=t[1],u=r||0)}}),n=(i.plotX||0)+((u-1)*r.paddedWidth+t)/2-t-f*r.paddedWidth),n},t.prototype.translate=function(){var n=this,i=n.chart,e=n.options,l=n.dense=2>n.closestPointRange*n.xAxis.transA;l=n.borderWidth=s(e.borderWidth,l?0:1);var a=n.xAxis,t=n.yAxis,r=e.threshold,o=n.translatedThreshold=t.getThreshold(r),u=s(e.minPointLength,5),v=n.getColumnMetrics(),y=v.width,b=n.pointXOffset=v.offset,k=n.dataMin,p=n.dataMax,w=n.barW=Math.max(y,1+2*l);i.inverted&&(o-=.5);e.pointPadding&&(w=Math.ceil(w));f.prototype.translate.apply(n);n.points.forEach(function(f){var rt=s(f.yBottom,o),g=999+Math.abs(rt),nt=f.plotX||0;g=h(f.plotY,-g,t.len+g);var ut=Math.min(g,rt),tt=Math.max(g,rt)-ut,ft=y,l=nt+b,it=w;u&&Math.abs(tt)<u&&(tt=u,nt=!t.reversed&&!f.negative||t.reversed&&f.negative,c(r)&&c(p)&&f.y===r&&p<=r&&(t.min||0)<r&&(k!==p||(t.max||0)<=r)&&(nt=!nt),ut=Math.abs(ut-o)>u?rt-u:o-(nt?u:0));d(f.options.pointWidth)&&(ft=it=Math.ceil(f.options.pointWidth),l-=Math.round((ft-y)/2));e.centerInCategory&&(l=n.adjustForMissingColumns(l,ft,f,v));f.barX=l;f.pointWidth=ft;f.tooltipPos=i.inverted?[h(t.len+t.pos-i.plotLeft-g,t.pos-i.plotLeft,t.len+t.pos-i.plotLeft),a.len+a.pos-i.plotTop-l-it/2,tt]:[a.left-i.plotLeft+l+it/2,h(g+t.pos-i.plotTop,t.pos-i.plotTop,t.len+t.pos-i.plotTop),tt];f.shapeType=n.pointClass.prototype.shapeType||"rect";f.shapeArgs=n.crispCol.apply(n,f.isNull?[l,o,it,0]:[l,ut,it,tt])})},t.prototype.drawGraph=function(){this.group[this.dense?"addClass":"removeClass"]("highcharts-dense-data")},t.prototype.pointAttribs=function(n,t){var o=this.options,i=this.pointAttrToOptions||{},u=i.stroke||"borderColor",c=i["stroke-width"]||"borderWidth",f=n&&n.color||this.color,h=n&&n[u]||o[u]||f,e,a,r;return i=n&&n.options.dashStyle||o.dashStyle,e=n&&n[c]||o[c]||this[c]||0,a=s(n&&n.opacity,o.opacity,1),n&&this.zones.length&&(r=n.getZone(),f=n.options.color||r&&(r.color||n.nonZonedColor)||this.color,r&&(h=r.borderColor||h,i=r.dashStyle||i,e=r.borderWidth||e)),t&&n&&(n=l(o.states[t],n.options.states&&n.options.states[t]||{}),t=n.brightness,f=n.color||"undefined"!=typeof t&&w(f).brighten(n.brightness).get()||f,h=n[u]||h,e=n[c]||e,i=n.dashStyle||i,a=s(n.opacity,a)),u={fill:f,stroke:h,"stroke-width":e,opacity:a},i&&(u.dashstyle=i),u},t.prototype.drawPoints=function(){var n=this,i=this.chart,t=n.options,f=i.renderer,u=t.animationLimit||250,r;n.points.forEach(function(e){var o=e.graphic,h=!!o,s=o&&i.pointCount<u?"animate":"attr";c(e.plotY)&&null!==e.y?(r=e.shapeArgs,o&&e.hasNewShapeType()&&(o=o.destroy()),n.enabledDataSorting&&(e.startXPos=n.xAxis.reversed?-(r?r.width||0:0):n.xAxis.width),o||(e.graphic=o=f[e.shapeType](r).add(e.group||n.group))&&n.enabledDataSorting&&i.hasRendered&&i.pointCount<u&&(o.attr({x:e.startXPos}),h=!0,s="animate"),o&&h&&o[s](l(r)),t.borderRadius&&o[s]({r:t.borderRadius}),i.styledMode||o[s](n.pointAttribs(e,e.selected&&"select")).shadow(!1!==e.allowShadow&&t.shadow,null,t.stacking&&!t.borderRadius),o&&(o.addClass(e.getClassName(),!0),o.attr({visibility:e.visible?"inherit":"hidden"}))):o&&(e.graphic=o.destroy())})},t.prototype.drawTracker=function(){var n=this,i=n.chart,t=i.pointer,r=function(n){var i=t.getPointFromEvent(n);"undefined"!=typeof i&&(t.isDirectTouch=!0,i.onMouseOver(n))},u;n.points.forEach(function(n){u=v(n.dataLabels)?n.dataLabels:n.dataLabel?[n.dataLabel]:[];n.graphic&&(n.graphic.element.point=n);u.forEach(function(t){t.div?t.div.point=n:t.element.point=n})});n._hasTracking||(n.trackerGroups.forEach(function(u){if(n[u]){n[u].addClass("highcharts-tracker").on("mouseover",r).on("mouseout",function(n){t.onTrackerMouseOut(n)});if(b)n[u].on("touchstart",r);!i.styledMode&&n.options.cursor&&n[u].css(k).css({cursor:n.options.cursor})}}),n._hasTracking=!0);g(this,"afterDrawTracker")},t.prototype.remove=function(){var n=this,t=n.chart;t.hasRendered&&t.series.forEach(function(t){t.type===n.type&&(t.isDirty=!0)});f.prototype.remove.apply(n,arguments)},t.defaultOptions=l(f.defaultOptions,{borderRadius:0,centerInCategory:!1,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{halo:!1,brightness:.1},select:{color:u.neutralColor20,borderColor:u.neutralColor100}},dataLabels:{align:void 0,verticalAlign:void 0,y:void 0},startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0,borderColor:u.backgroundColor}),t}(f),a(o.prototype,{cropShoulder:0,directTouch:!0,drawLegendSymbol:r.drawRectangle,getSymbol:n,negStacks:!0,trackerGroups:["group","dataLabelsGroup"]}),e.registerSeriesType("column",o),o}),i(t,"Core/Series/DataLabel.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/FormatUtilities.js"],t["Core/Color/Palette.js"],t["Core/Utilities.js"]],function(n,t,i,r){var l=n.getDeferredAnimation,a=t.format,e=r.defined,h=r.extend,c=r.fireEvent,f=r.isArray,o=r.merge,v=r.objectEach,u=r.pick,y=r.splat,s;return function(n){function s(n,t,i,r,f){var a=this,o=this.chart,l=this.isCartesian&&o.inverted,v=this.enabledDataSorting,e=u(n.dlBox&&n.dlBox.centerX,n.plotX,-9999),b=u(n.plotY,-9999),s=t.getBBox(),p=i.rotation,w=i.align,d=o.isInsidePlot(e,Math.round(b),{inverted:l,paneCoordinates:!0,series:a}),c=function(i){v&&a.xAxis&&!y&&a.setDataLabelStartPos(n,t,f,d,i)},y="justify"===u(i.overflow,v?"none":"justify"),k=this.visible&&!1!==n.visible&&(n.series.forceDL||v&&!y||d||u(i.inside,!!this.options.stacking)&&r&&o.isInsidePlot(e,l?r.x+1:r.y+r.height-1,{inverted:l,paneCoordinates:!0,series:a})),g;k&&(g=o.renderer.fontMetrics(o.styledMode?void 0:i.style.fontSize,t).b,r=h({x:l?this.yAxis.len-b:e,y:Math.round(l?this.xAxis.len-e:b),width:0,height:0},r),h(i,{width:s.width,height:s.height}),p?(y=!1,e=o.renderer.rotCorr(g,p),e={x:r.x+(i.x||0)+r.width/2+e.x,y:r.y+(i.y||0)+{top:0,middle:.5,bottom:1}[i.verticalAlign]*r.height},c(e),t[f?"attr":"animate"](e).attr({align:w}),c=(p+720)%360,c=180<c&&360>c,"left"===w?e.y-=c?s.height:0:"center"===w?(e.x-=s.width/2,e.y-=s.height/2):"right"===w&&(e.x-=s.width,e.y-=c?0:s.height),t.placed=!0,t.alignAttr=e):(c(r),t.align(i,void 0,r),e=t.alignAttr),y&&0<=r.height?this.justifyDataLabel(t,i,e,s,r,f):u(i.crop,!0)&&(k=o.isInsidePlot(e.x,e.y,{paneCoordinates:!0,series:a})&&o.isInsidePlot(e.x+s.width,e.y+s.height,{paneCoordinates:!0,series:a})),i.shape&&!p&&t[f?"attr":"animate"]({anchorX:l?o.plotWidth-n.plotY:n.plotX,anchorY:l?o.plotHeight-n.plotX:n.plotY}));f&&v&&(t.placed=!1);k||v&&!y||(t.hide(!0),t.placed=!1)}function p(n,t){var i=t.filter;return i?(t=i.operator,n=n[i.property],i=i.value,">"===t&&n>i||"<"===t&&n<i||">="===t&&n>=i||"<="===t&&n<=i||"=="===t&&n==i||"==="===t&&n===i?!0:!1):!0}function w(){var n=this,r=n.chart,s=n.options,g=n.points,h=n.hasRendered||0,b=r.renderer,o=s.dataLabels,d,k=o.animation,w;k=o.defer?l(r,k,n):{defer:0,duration:0};o=t(t(r.options.plotOptions&&r.options.plotOptions.series&&r.options.plotOptions.series.dataLabels,r.options.plotOptions&&r.options.plotOptions[n.type]&&r.options.plotOptions[n.type].dataLabels),o);c(this,"drawDataLabels");(f(o)||o.enabled||n._hasPointLabels)&&(w=n.plotGroup("dataLabelsGroup","data-labels",h?"inherit":"hidden",o.zIndex||6),w.attr({opacity:+h}),!h&&(h=n.dataLabelsGroup)&&(n.visible&&w.show(!0),h[s.animation?"animate":"attr"]({opacity:1},k)),g.forEach(function(f){d=y(t(o,f.dlOptions||f.options&&f.options.dataLabels));d.forEach(function(t,o){var k=t.enabled&&(!f.isNull||f.dataLabelOnNull)&&p(f,t),nt=f.connectors?f.connectors[o]:f.connector,h=f.dataLabels?f.dataLabels[o]:f.dataLabel,g=u(t.distance,f.labelDistance),tt=!h,l,c,d,y;k&&(l=f.getLabelConfig(),c=u(t[f.formatPrefix+"Format"],t.format),l=e(c)?a(c,l,r):(t[f.formatPrefix+"Formatter"]||t.formatter).call(l,t),c=t.style,d=t.rotation,r.styledMode||(c.color=u(t.color,c.color,n.color,i.neutralColor100),"contrast"===c.color?(f.contrastColor=b.getContrast(f.color||n.color),c.color=!e(g)&&t.inside||0>g||s.stacking?f.contrastColor:i.neutralColor100):delete f.contrastColor,s.cursor&&(c.cursor=s.cursor)),y={r:t.borderRadius||0,rotation:d,padding:t.padding,zIndex:1},r.styledMode||(y.fill=t.backgroundColor,y.stroke=t.borderColor,y["stroke-width"]=t.borderWidth),v(y,function(n,t){"undefined"==typeof n&&delete y[t]}));!h||k&&e(l)?k&&e(l)&&(h?y.text=l:(f.dataLabels=f.dataLabels||[],h=f.dataLabels[o]=d?b.text(l,0,-9999,t.useHTML).addClass("highcharts-data-label"):b.label(l,0,-9999,t.shape,null,null,t.useHTML,null,"data-label"),o||(f.dataLabel=h),h.addClass(" highcharts-data-label-color-"+f.colorIndex+" "+(t.className||"")+(t.useHTML?" highcharts-tracker":""))),h.options=t,h.attr(y),r.styledMode||h.css(c).shadow(t.shadow),h.added||h.add(w),t.textPath&&!t.useHTML&&(h.setTextPath(f.getDataLabelPath&&f.getDataLabelPath(h)||f.graphic,t.textPath),f.dataLabelPath&&!t.textPath.enabled&&(f.dataLabelPath=f.dataLabelPath.destroy())),n.alignDataLabel(f,h,t,null,tt)):(f.dataLabel=f.dataLabel&&f.dataLabel.destroy(),f.dataLabels&&(1===f.dataLabels.length?delete f.dataLabels:delete f.dataLabels[o]),o||delete f.dataLabel,nt&&(f.connector=f.connector.destroy(),f.connectors&&(1===f.connectors.length?delete f.connectors:delete f.connectors[o])))})}));c(this,"afterDrawDataLabels")}function b(n,t,i,r,u,f){var c=this.chart,a=t.align,v=t.verticalAlign,l=n.box?0:n.padding||0,s=t.x,o,e,h;return s=void 0===s?0:s,o=t.y,o=void 0===o?0:o,e=(i.x||0)+l,0>e&&("right"===a&&0<=s?(t.align="left",t.inside=!0):s-=e,h=!0),e=(i.x||0)+r.width-l,e>c.plotWidth&&("left"===a&&0>=s?(t.align="right",t.inside=!0):s+=c.plotWidth-e,h=!0),e=i.y+l,0>e&&("bottom"===v&&0<=o?(t.verticalAlign="top",t.inside=!0):o-=e,h=!0),e=(i.y||0)+r.height-l,e>c.plotHeight&&("top"===v&&0>=o?(t.verticalAlign="bottom",t.inside=!0):o+=c.plotHeight-e,h=!0),h&&(t.x=s,t.y=o,n.placed=!f,n.align(t,void 0,u)),h}function t(n,t){var i=[],r;if(f(n)&&!f(t))i=n.map(function(n){return o(n,t)});else if(f(t)&&!f(n))i=t.map(function(t){return o(n,t)});else if(f(n)||f(t))for(r=Math.max(n.length,t.length);r--;)i[r]=o(n[r],t[r]);else i=o(n,t);return i}function k(n,t,i,r,u){var o=this.chart,e=o.inverted,s=this.xAxis,h=s.reversed,f=e?t.height/2:t.width/2;n=(n=n.pointWidth)?n/2:0;t.startXPos=e?u.x:h?-f-n:s.width-f+n;t.startYPos=e?h?this.yAxis.height-f+n:-f-n:u.y;r?"hidden"===t.visibility&&(t.show(),t.attr({opacity:0}).animate({opacity:1})):t.attr({opacity:1}).animate({opacity:0},void 0,t.hide);o.hasRendered&&(i&&t.attr({x:t.startXPos,y:t.startYPos}),t.placed=!0)}var r=[];n.compose=function(n){if(-1===r.indexOf(n)){var t=n.prototype;r.push(n);t.alignDataLabel=s;t.drawDataLabels=w;t.justifyDataLabel=b;t.setDataLabelStartPos=k}}}(s||(s={})),s}),i(t,"Series/Column/ColumnDataLabel.js",[t["Core/Series/DataLabel.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i){var f=t.series,e=i.merge,r=i.pick,u;return function(t){function u(n,t,i,u,o){var h=this.chart.inverted,c=n.series,s=n.dlBox||n.shapeArgs,l=r(n.below,n.plotY>r(this.translatedThreshold,c.yAxis.len)),a=r(i.inside,!!this.options.stacking);s&&(u=e(s),0>u.y&&(u.height+=u.y,u.y=0),s=u.y+u.height-c.yAxis.len,0<s&&s<u.height&&(u.height-=s),h&&(u={x:c.yAxis.len-u.y-u.height,y:c.xAxis.len-u.x-u.width,width:u.height,height:u.width}),a||(h?(u.x+=l?0:u.width,u.width=0):(u.y+=l?u.height:0,u.height=0)));i.align=r(i.align,!h||a?"center":l?"right":"left");i.verticalAlign=r(i.verticalAlign,h||a?"middle":l?"top":"bottom");f.prototype.alignDataLabel.call(this,n,t,i,u,o);i.inside&&n.contrastColor&&t.css({color:n.contrastColor})}var i=[];t.compose=function(t){n.compose(f);-1===i.indexOf(t)&&(i.push(t),t.prototype.alignDataLabel=u)}}(u||(u={})),u}),i(t,"Series/Bar/BarSeries.js",[t["Series/Column/ColumnSeries.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i){var r=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),u=i.extend,f=i.merge;return i=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.data=void 0,n.options=void 0,n.points=void 0,n}return r(i,t),i.defaultOptions=f(n.defaultOptions,{}),i}(n),u(i.prototype,{inverted:!0}),t.registerSeriesType("bar",i),i}),i(t,"Series/Scatter/ScatterSeries.js",[t["Series/Column/ColumnSeries.js"],t["Series/Line/LineSeries.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r){var u=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),f=r.addEvent,e=r.extend,o=r.merge;return r=function(n){function i(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t}return u(i,n),i.prototype.applyJitter=function(){var t=this,n=this.options.jitter,i=this.points.length;n&&this.points.forEach(function(r,u){["x","y"].forEach(function(f,e){var s="plot"+f.toUpperCase(),o,h,c;n[f]&&!r.isNull&&(o=t[f+"Axis"],h=n[f]*o.transA,o&&!o.isLog&&(c=Math.max(0,r[s]-h),o=Math.min(o.len,r[s]+h),e=1e4*Math.sin(u+e*i),r[s]=c+(o-c)*(e-Math.floor(e)),"x"===f&&(r.clientX=r.plotX)))})})},i.prototype.drawGraph=function(){this.options.lineWidth?n.prototype.drawGraph.call(this):this.graph&&(this.graph=this.graph.destroy())},i.defaultOptions=o(t.defaultOptions,{lineWidth:0,findNearestPointBy:"xy",jitter:{x:0,y:0},marker:{enabled:!0},tooltip:{headerFormat:'<span style="color:{point.color}">●<\/span> <span style="font-size: 10px"> {series.name}<\/span><br/>',pointFormat:"x: <b>{point.x}<\/b><br/>y: <b>{point.y}<\/b><br/>"}}),i}(t),e(r.prototype,{drawTracker:n.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1}),f(r,"afterTranslate",function(){this.applyJitter()}),i.registerSeriesType("scatter",r),r}),i(t,"Mixins/CenteredSeries.js",[t["Core/Globals.js"],t["Core/Series/Series.js"],t["Core/Utilities.js"]],function(n,t,i){var u=i.isNumber,r=i.pick,e=i.relativeLength,f=n.deg2rad;return n.CenteredSeriesMixin={getCenter:function(){var n=this.options,f=this.chart,s=2*(n.slicedOffset||0),h=f.plotWidth-2*s,c=f.plotHeight-2*s,i=n.center,l=Math.min(h,c),u=n.size,o=n.innerSize||0;for("string"==typeof u&&(u=parseFloat(u)),"string"==typeof o&&(o=parseFloat(o)),n=[r(i[0],"50%"),r(i[1],"50%"),r(u&&0>u?void 0:n.size,"100%"),r(o&&0>o?void 0:n.innerSize||0,"0%")],!f.angular||this instanceof t||(n[3]=0),i=0;4>i;++i)u=n[i],f=2>i||2===i&&/%$/.test(u),n[i]=e(u,[h,c,l,n[2]][i])+(f?s:0);return n[3]>n[2]&&(n[3]=n[2]),n},getStartAndEndRadians:function(n,t){return n=u(n)?n:0,t=u(t)&&t>n&&360>t-n?t:n+360,{start:f*(n+-90),end:f*(t+-90)}}}}),i(t,"Series/Pie/PiePoint.js",[t["Core/Animation/AnimationUtilities.js"],t["Core/Series/Point.js"],t["Core/Utilities.js"]],function(n,t,i){var f=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),e=n.setAnimation,u=i.addEvent,o=i.defined;n=i.extend;var s=i.isNumber,r=i.pick,h=i.relativeLength;return t=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.labelDistance=void 0,t.options=void 0,t.series=void 0,t}return f(t,n),t.prototype.getConnectorPath=function(){var n=this.labelPosition,i=this.series.options.dataLabels,r=this.connectorShapes,t=i.connectorShape;return r[t]&&(t=r[t]),t.call(this,{x:n.final.x,y:n.final.y,alignment:n.alignment},n.connectorPosition,i)},t.prototype.getTranslate=function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}},t.prototype.haloPath=function(n){var t=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(t.x,t.y,t.r+n,t.r+n,{innerR:t.r-1,start:t.start,end:t.end})},t.prototype.init=function(){var i=this,t;return n.prototype.init.apply(this,arguments),this.name=r(this.name,"Slice"),t=function(n){i.slice("select"===n.type)},u(this,"select",t),u(this,"unselect",t),this},t.prototype.isValid=function(){return s(this.y)&&0<=this.y},t.prototype.setVisible=function(n,t){var u=this,i=this.series,f=i.chart,e=i.options.ignoreHiddenPoint;t=r(t,e);n!==this.visible&&(this.visible=this.options.visible=n="undefined"==typeof n?!this.visible:n,i.options.data[i.data.indexOf(this)]=this.options,["graphic","dataLabel","connector","shadowGroup"].forEach(function(t){u[t]&&u[t][n?"show":"hide"](n)}),this.legendItem&&f.legend.colorizeItem(this,n),n||"hover"!==this.state||this.setState(""),e&&(i.isDirty=!0),t&&f.redraw())},t.prototype.slice=function(n,t,i){var u=this.series;e(i,u.chart);r(t,!0);this.sliced=this.options.sliced=o(n)?n:!this.sliced;u.options.data[u.data.indexOf(this)]=this.options;this.graphic&&this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())},t}(t),n(t.prototype,{connectorShapes:{fixedOffset:function(n,t,i){var r=t.breakAt;return t=t.touchingSliceAt,[["M",n.x,n.y],i.softConnector?["C",n.x+("left"===n.alignment?-5:5),n.y,2*r.x-t.x,2*r.y-t.y,r.x,r.y]:["L",r.x,r.y],["L",t.x,t.y]]},straight:function(n,t){return t=t.touchingSliceAt,[["M",n.x,n.y],["L",t.x,t.y]]},crookedLine:function(n,t,i){var e;t=t.touchingSliceAt;var u=this.series,f=u.center[0],r=u.chart.plotWidth,o=u.chart.plotLeft;return u=n.alignment,e=this.shapeArgs.r,i=h(i.crookDistance,1),r="left"===u?f+e+(r+o-f-e)*(1-i):o+(f-e)*i,i=["L",r,n.y],f=!0,("left"===u?r>n.x||r<t.x:r<n.x||r>t.x)&&(f=!1),n=[["M",n.x,n.y]],f&&n.push(i),n.push(["L",t.x,t.y]),n}}}),t}),i(t,"Series/Pie/PieSeries.js",[t["Mixins/CenteredSeries.js"],t["Series/Column/ColumnSeries.js"],t["Core/Globals.js"],t["Core/Legend/LegendSymbol.js"],t["Core/Color/Palette.js"],t["Series/Pie/PiePoint.js"],t["Core/Series/Series.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Renderer/SVG/Symbols.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o,s,h){var a=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),v=n.getStartAndEndRadians;i=i.noop;var y=h.clamp,p=h.extend,w=h.fireEvent,c=h.merge,l=h.pick,b=h.relativeLength;return h=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.center=void 0,t.data=void 0,t.maxLabelDistance=void 0,t.options=void 0,t.points=void 0,t}return a(t,n),t.prototype.animate=function(n){var t=this,r=t.points,i=t.startAngleRad;n||r.forEach(function(n){var u=n.graphic,r=n.shapeArgs;u&&r&&(u.attr({r:l(n.startR,t.center&&t.center[3]/2),start:i,end:i}),u.animate({r:r.r,start:r.start,end:r.end},t.options.animation))})},t.prototype.drawEmpty=function(){var r=this.startAngleRad,f=this.endAngleRad,n=this.options,t,i;0===this.total&&this.center?(t=this.center[0],i=this.center[1],this.graph||(this.graph=this.chart.renderer.arc(t,i,this.center[1]/2,0,r,f).addClass("highcharts-empty-series").add(this.group)),this.graph.attr({d:s.arc(t,i,this.center[2]/2,0,{start:r,end:f,innerR:this.center[3]/2})}),this.chart.styledMode||this.graph.attr({"stroke-width":n.borderWidth,fill:n.fillColor||"none",stroke:n.color||u.neutralColor20})):this.graph&&(this.graph=this.graph.destroy())},t.prototype.drawPoints=function(){var n=this.chart.renderer;this.points.forEach(function(t){t.graphic&&t.hasNewShapeType()&&(t.graphic=t.graphic.destroy());t.graphic||(t.graphic=n[t.shapeType](t.shapeArgs).add(t.series.group),t.delayedRendering=!0)})},t.prototype.generatePoints=function(){n.prototype.generatePoints.call(this);this.updateTotals()},t.prototype.getX=function(n,t,i){var r=this.center,u=this.radii?this.radii[i.index]||0:r[2]/2;return n=Math.asin(y((n-r[1])/(u+i.labelDistance),-1,1)),r[0]+(t?-1:1)*Math.cos(n)*(u+i.labelDistance)+(0<i.labelDistance?(t?-1:1)*this.options.dataLabels.padding:0)},t.prototype.hasData=function(){return!!this.processedXData.length},t.prototype.redrawPoints=function(){var n=this,i=n.chart,o=i.renderer,u=n.options.shadow,r,t,f,e;this.drawEmpty();!u||n.shadowGroup||i.styledMode||(n.shadowGroup=o.g("shadow").attr({zIndex:-1}).add(n.group));n.points.forEach(function(s){var l={},h;t=s.graphic;!s.isNull&&t?(h=void 0,e=s.shapeArgs,r=s.getTranslate(),i.styledMode||(h=s.shadowGroup,u&&!h&&(h=s.shadowGroup=o.g("shadow").add(n.shadowGroup)),h&&h.attr(r),f=n.pointAttribs(s,s.selected&&"select")),s.delayedRendering?(t.setRadialReference(n.center).attr(e).attr(r),i.styledMode||t.attr(f).attr({"stroke-linejoin":"round"}).shadow(u,h),s.delayedRendering=!1):(t.setRadialReference(n.center),i.styledMode||c(!0,l,f),c(!0,l,e,r),t.animate(l)),t.attr({visibility:s.visible?"inherit":"hidden"}),t.addClass(s.getClassName(),!0)):t&&(s.graphic=t.destroy())})},t.prototype.sortByAngle=function(n,t){n.sort(function(n,i){return"undefined"!=typeof n.angle&&(i.angle-n.angle)*t})},t.prototype.translate=function(n){var y,p,k,s,h,t,f,i,u,o;this.generatePoints();var r=this.options,c=r.slicedOffset,d=c+(r.borderWidth||0),e=v(r.startAngle,r.endAngle),a=this.startAngleRad=e.start;for(e=(this.endAngleRad=e.end)-a,y=this.points,p=r.dataLabels.distance,r=r.ignoreHiddenPoint,k=y.length,h=0,n||(this.center=n=this.getCenter()),s=0;s<k;s++)t=y[s],f=a+h*e,t.isValid()&&(!r||t.visible)&&(h+=t.percentage/100),i=a+h*e,u={x:n[0],y:n[1],r:n[2]/2,innerR:n[3]/2,start:Math.round(1e3*f)/1e3,end:Math.round(1e3*i)/1e3},t.shapeType="arc",t.shapeArgs=u,t.labelDistance=l(t.options.dataLabels&&t.options.dataLabels.distance,p),t.labelDistance=b(t.labelDistance,u.r),this.maxLabelDistance=Math.max(this.maxLabelDistance||0,t.labelDistance),i=(i+f)/2,i>1.5*Math.PI?i-=2*Math.PI:i<-Math.PI/2&&(i+=2*Math.PI),t.slicedTranslation={translateX:Math.round(Math.cos(i)*c),translateY:Math.round(Math.sin(i)*c)},u=Math.cos(i)*n[2]/2,o=Math.sin(i)*n[2]/2,t.tooltipPos=[n[0]+.7*u,n[1]+.7*o],t.half=i<-Math.PI/2||i>Math.PI/2?1:0,t.angle=i,f=Math.min(d,t.labelDistance/5),t.labelPosition={natural:{x:n[0]+u+Math.cos(i)*t.labelDistance,y:n[1]+o+Math.sin(i)*t.labelDistance},final:{},alignment:0>t.labelDistance?"center":t.half?"right":"left",connectorPosition:{breakAt:{x:n[0]+u+Math.cos(i)*f,y:n[1]+o+Math.sin(i)*f},touchingSliceAt:{x:n[0]+u,y:n[1]+o}}};w(this,"afterTranslate")},t.prototype.updateTotals=function(){for(var r=this.points,u=r.length,f=this.options.ignoreHiddenPoint,i=0,n,t=0;t<u;t++)n=r[t],n.isValid()&&(!f||n.visible)&&(i+=n.y);for(this.total=i,t=0;t<u;t++)n=r[t],n.percentage=0<i&&(n.visible||!f)?n.y/i*100:0,n.total=i},t.defaultOptions=c(e.defaultOptions,{center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{allowOverlap:!0,connectorPadding:5,connectorShape:"fixedOffset",crookDistance:"70%",distance:30,enabled:!0,formatter:function(){if(!this.point.isNull)return 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:u.backgroundColor,borderWidth:1,lineWidth:void 0,states:{hover:{brightness:.1}}}),t}(e),p(h.prototype,{axisTypes:[],directTouch:!0,drawGraph:void 0,drawLegendSymbol:r.drawRectangle,drawTracker:t.prototype.drawTracker,getCenter:n.getCenter,getSymbol:i,isCartesian:!1,noSharedTooltip:!0,pointAttribs:t.prototype.pointAttribs,pointClass:f,requireSorting:!1,searchPoint:i,trackerGroups:["group","dataLabelsGroup"]}),o.registerSeriesType("pie",h),h}),i(t,"Series/Pie/PieDataLabel.js",[t["Core/Series/DataLabel.js"],t["Core/Globals.js"],t["Core/Color/Palette.js"],t["Core/Renderer/RendererUtilities.js"],t["Core/Series/SeriesRegistry.js"],t["Core/Utilities.js"]],function(n,t,i,r,u,f){var l=t.noop,a=r.distribute,h=u.series,v=f.arrayMax,c=f.clamp,o=f.defined,y=f.merge,e=f.pick,p=f.relativeLength,s;return function(t){function u(){var n=this,ot=n.data,l=n.chart,f=n.options.dataLabels||{},w=f.connectorPadding,rt=l.plotWidth,st=l.plotHeight,ht=l.plotLeft,ct=Math.round(l.chartWidth/3),et=n.center,d=et[2]/2,ut=et[1],lt=[[],[]],r=[0,0,0,0],g=n.dataLabelPositioners,t,at,p,s,nt,b,tt,u,c,it,ft,k;n.visible&&(f.enabled||n._hasPointLabels)&&(ot.forEach(function(n){n.dataLabel&&n.visible&&n.dataLabel.shortened&&(n.dataLabel.attr({width:"auto"}).css({width:"auto",textOverflow:"clip"}),n.dataLabel.shortened=!1)}),h.prototype.drawDataLabels.apply(n),ot.forEach(function(n){n.dataLabel&&(n.visible?(lt[n.half].push(n),n.dataLabel._pos=null,!o(f.style.width)&&!o(n.options.dataLabels&&n.options.dataLabels.style&&n.options.dataLabels.style.width)&&n.dataLabel.getBBox().width>ct&&(n.dataLabel.css({width:Math.round(.7*ct)+"px"}),n.dataLabel.shortened=!0)):(n.dataLabel=n.dataLabel.destroy(),n.dataLabels&&1===n.dataLabels.length&&delete n.dataLabels))}),lt.forEach(function(i,h){var ot=i.length,p=[],y,v,ct;if(ot)for(n.sortByAngle(i,h-.5),0<n.maxLabelDistance&&(v=Math.max(0,ut-d-n.maxLabelDistance),ct=Math.min(ut+d+n.maxLabelDistance,l.plotHeight),i.forEach(function(n){0<n.labelDistance&&n.dataLabel&&(n.top=Math.max(0,ut-d-n.labelDistance),n.bottom=Math.min(ut+d+n.labelDistance,l.plotHeight),y=n.dataLabel.getBBox().height||21,n.distributeBox={target:n.labelPosition.natural.y-n.top+y/2,size:y,rank:n.y},p.push(n.distributeBox))}),v=ct+y-v,a(p,v,v/5)),ft=0;ft<ot;ft++){if(t=i[ft],b=t.labelPosition,s=t.dataLabel,it=!1===t.visible?"hidden":"inherit",c=v=b.natural.y,p&&o(t.distributeBox)&&("undefined"==typeof t.distributeBox.pos?it="hidden":(tt=t.distributeBox.size,c=g.radialDistributionY(t))),delete t.positionIndex,f.justify)u=g.justify(t,d,et);else switch(f.alignTo){case"connectors":u=g.alignToConnectors(i,h,rt,ht);break;case"plotEdges":u=g.alignToPlotEdges(s,h,rt,ht);break;default:u=g.radialDistributionX(n,t,c,v)}s._attr={visibility:it,align:b.alignment};k=t.options.dataLabels||{};s._pos={x:u+e(k.x,f.x)+({left:w,right:-w}[b.alignment]||0),y:c+e(k.y,f.y)-10};b.final.x=u;b.final.y=c;e(f.crop,!0)&&(nt=s.getBBox().width,v=null,u-nt<w&&1===h?(v=Math.round(nt-u+w),r[3]=Math.max(v,r[3])):u+nt>rt-w&&0===h&&(v=Math.round(u+nt-rt+w),r[1]=Math.max(v,r[1])),0>c-tt/2?r[0]=Math.max(Math.round(-c+tt/2),r[0]):c+tt/2>st&&(r[2]=Math.max(Math.round(c+tt/2-st),r[2])),s.sideOverflow=v)}}),0===v(r)||this.verifyDataLabelOverflow(r))&&(this.placeDataLabels(),this.points.forEach(function(t){if(k=y(f,t.options.dataLabels),at=e(k.connectorWidth,1)){var r;p=t.connector;(s=t.dataLabel)&&s._pos&&t.visible&&0<t.labelDistance?(it=s._attr.visibility,(r=!p)&&(t.connector=p=l.renderer.path().addClass("highcharts-data-label-connector  highcharts-color-"+t.colorIndex+(t.className?" "+t.className:"")).add(n.dataLabelsGroup),l.styledMode||p.attr({"stroke-width":at,stroke:k.connectorColor||t.color||i.neutralColor60})),p[r?"attr":"animate"]({d:t.getConnectorPath()}),p.attr("visibility",it)):p&&(t.connector=p.destroy())}}))}function f(){this.points.forEach(function(n){var t=n.dataLabel,i;t&&n.visible&&((i=t._pos)?(t.sideOverflow&&(t._attr.width=Math.max(t.getBBox().width-t.sideOverflow,0),t.css({width:t._attr.width+"px",textOverflow:(this.options.dataLabels.style||{}).textOverflow||"ellipsis"}),t.shortened=!0),t.attr(t._attr),t[t.moved?"animate":"attr"](i),t.moved=!0):t&&t.attr({y:-9999}));delete n.distributeBox},this)}function s(n){var t=this.center,r=this.options,e=r.center,u=r.minSize||80,f=null!==r.size,i;return f||(null!==e[0]?i=Math.max(t[2]-Math.max(n[1],n[3]),u):(i=Math.max(t[2]-n[1]-n[3],u),t[0]+=(n[3]-n[1])/2),null!==e[1]?i=c(i,u,t[2]-Math.max(n[0],n[2])):(i=c(i,u,t[2]-n[0]-n[2]),t[1]+=(n[0]-n[2])/2),i<t[2]?(t[2]=i,t[3]=Math.min(p(r.innerSize||0,i),i),this.translate(t),this.drawDataLabels&&this.drawDataLabels()):f=!0),f}var r=[],w={radialDistributionY:function(n){return n.top+n.distributeBox.pos},radialDistributionX:function(n,t,i,r){return n.getX(i<t.top+2||i>t.bottom-2?r:i,t.half,t)},justify:function(n,t,i){return i[0]+(n.half?-1:1)*(t+n.labelDistance)},alignToPlotEdges:function(n,t,i,r){return n=n.getBBox().width,t?n+r:i-n-r},alignToConnectors:function(n,t,i,r){var u=0,f;return n.forEach(function(n){f=n.dataLabel.getBBox().width;f>u&&(u=f)}),t?u+r:i-u-r}};t.compose=function(t){n.compose(h);-1===r.indexOf(t)&&(r.push(t),t=t.prototype,t.dataLabelPositioners=w,t.alignDataLabel=l,t.drawDataLabels=u,t.placeDataLabels=f,t.verifyDataLabelOverflow=s)}}(s||(s={})),s}),i(t,"Extensions/OverlappingDataLabels.js",[t["Core/Chart/Chart.js"],t["Core/Utilities.js"]],function(n,t){function i(n,t){var u=!1,i;return n&&(i=n.newOpacity,n.oldOpacity!==i&&(n.alignAttr&&n.placed?(n[i?"removeClass":"addClass"]("highcharts-data-label-hidden"),u=!0,n.alignAttr.opacity=i,n[n.isOld?"animate":"attr"](n.alignAttr,null,function(){t.styledMode||n.css({pointerEvents:i?"auto":"none"})}),r(t,"afterHideOverlappingLabel")):n.attr({opacity:i})),n.isOld=!0),u}var f=t.addEvent,r=t.fireEvent,e=t.isArray,o=t.isNumber,u=t.objectEach,s=t.pick;f(n,"render",function(){var t=this,n=[];(this.labelCollectors||[]).forEach(function(t){n=n.concat(t())});(this.yAxis||[]).forEach(function(t){t.stacking&&t.options.stackLabels&&!t.options.stackLabels.allowOverlap&&u(t.stacking.stacks,function(t){u(t,function(t){t.label&&"hidden"!==t.label.visibility&&n.push(t.label)})})});(this.series||[]).forEach(function(r){var u=r.options.dataLabels;r.visible&&(!1!==u.enabled||r._hasPointLabels)&&(u=function(r){return r.forEach(function(r){r.visible&&(e(r.dataLabels)?r.dataLabels:r.dataLabel?[r.dataLabel]:[]).forEach(function(u){var f=u.options;u.labelrank=s(f.labelrank,r.labelrank,r.shapeArgs&&r.shapeArgs.height);f.allowOverlap?(u.oldOpacity=u.opacity,u.newOpacity=1,i(u,t)):n.push(u)})})},u(r.nodes||[]),u(r.points))});this.hideOverlappingLabels(n)});n.prototype.hideOverlappingLabels=function(n){for(var c=this,l=n.length,v=c.renderer,t,h,a=!1,s=function(n){var t,i=n.box?0:n.padding||0,r=t=0,e,u,f,s;if(n&&(!n.alignAttr||n.placed))return u=n.alignAttr||{x:n.attr("x"),y:n.attr("y")},f=n.parentGroup,n.width||(t=n.getBBox(),n.width=t.width,n.height=t.height,t=v.fontMetrics(null,n.element).h),s=n.width-2*i,(e={left:"0",center:"0.5",right:"1"}[n.alignValue])?r=+e*s:o(n.x)&&Math.round(n.x)!==n.translateX&&(r=n.x-n.translateX),{x:u.x+(f.translateX||0)+i-(r||0),y:u.y+(f.translateY||0)+i-t,width:n.width-2*i,height:n.height-2*i}},f,e,u=0;u<l;u++)(t=n[u])&&(t.oldOpacity=t.opacity,t.newOpacity=1,t.absoluteBox=s(t));for(n.sort(function(n,t){return(t.labelrank||0)-(n.labelrank||0)}),u=0;u<l;u++)for(f=(s=n[u])&&s.absoluteBox,t=u+1;t<l;++t)e=(h=n[t])&&h.absoluteBox,!f||!e||s===h||0===s.newOpacity||0===h.newOpacity||e.x>=f.x+f.width||e.x+e.width<=f.x||e.y>=f.y+f.height||e.y+e.height<=f.y||((s.labelrank<h.labelrank?s:h).newOpacity=0);n.forEach(function(n){i(n,c)&&(a=!0)});a&&r(c,"afterHideAllOverlappingLabels")}}),i(t,"Core/Responsive.js",[t["Core/Utilities.js"]],function(n){var r=n.extend,u=n.find,f=n.isArray,e=n.isObject,o=n.merge,s=n.objectEach,t=n.pick,h=n.splat,c=n.uniqueKey,i;return function(n){var i=[],l;n.compose=function(n){return-1===i.indexOf(n)&&(i.push(n),r(n.prototype,l.prototype)),n};l=function(){function n(){}return n.prototype.currentOptions=function(n){function t(n,i,u,o){var c;s(n,function(n,s){if(!o&&-1<r.collectionsWithUpdate.indexOf(s)&&i[s])for(n=h(n),u[s]=[],c=0;c<Math.max(n.length,i[s].length);c++)i[s][c]&&(void 0===n[c]?u[s][c]=i[s][c]:(u[s][c]={},t(n[c],i[s][c],u[s][c],o+1)));else e(n)?(u[s]=f(n)?[]:{},t(n,i[s]||{},u[s],o+1)):u[s]="undefined"==typeof i[s]?null:i[s]})}var r=this,i={};return t(n,this.options,i,0),i},n.prototype.matchResponsiveRule=function(n,i){var r=n.condition;(r.callback||function(){return this.chartWidth<=t(r.maxWidth,Number.MAX_VALUE)&&this.chartHeight<=t(r.maxHeight,Number.MAX_VALUE)&&this.chartWidth>=t(r.minWidth,0)&&this.chartHeight>=t(r.minHeight,0)}).call(this)&&i.push(n._id)},n.prototype.setResponsive=function(n,t){var e=this,f=this.options.responsive,i=this.currentResponsive,r=[];!t&&f&&f.rules&&f.rules.forEach(function(n){"undefined"==typeof n._id&&(n._id=c());e.matchResponsiveRule(n,r)},this);t=o.apply(void 0,r.map(function(n){return u((f||{}).rules||[],function(t){return t._id===n})}).map(function(n){return n&&n.chartOptions}));t.isResponsiveOptions=!0;r=r.toString()||void 0;r!==(i&&i.ruleIds)&&(i&&this.update(i.undoOptions,n,!0),r?(i=this.currentOptions(t),i.isResponsiveOptions=!0,this.currentResponsive={ruleIds:r,mergedOptions:t,undoOptions:i},this.update(t,n,!0)):this.currentResponsive=void 0)},n}()}(i||(i={})),i}),i(t,"masters/highcharts.src.js",[t["Core/Globals.js"],t["Core/Utilities.js"],t["Core/DefaultOptions.js"],t["Core/Animation/Fx.js"],t["Core/Animation/AnimationUtilities.js"],t["Core/Renderer/HTML/AST.js"],t["Core/FormatUtilities.js"],t["Core/Renderer/RendererUtilities.js"],t["Core/Renderer/SVG/SVGElement.js"],t["Core/Renderer/SVG/SVGRenderer.js"],t["Core/Renderer/HTML/HTMLElement.js"],t["Core/Renderer/HTML/HTMLRenderer.js"],t["Core/Axis/Axis.js"],t["Core/Axis/DateTimeAxis.js"],t["Core/Axis/LogarithmicAxis.js"],t["Core/Axis/PlotLineOrBand/PlotLineOrBand.js"],t["Core/Axis/Tick.js"],t["Core/Tooltip.js"],t["Core/Series/Point.js"],t["Core/Pointer.js"],t["Core/MSPointer.js"],t["Core/Legend/Legend.js"],t["Core/Chart/Chart.js"],t["Core/Series/Series.js"],t["Core/Series/SeriesRegistry.js"],t["Series/Column/ColumnSeries.js"],t["Series/Column/ColumnDataLabel.js"],t["Series/Pie/PieSeries.js"],t["Series/Pie/PieDataLabel.js"],t["Core/Series/DataLabel.js"],t["Core/Responsive.js"],t["Core/Color/Color.js"],t["Core/Time.js"]],function(n,t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b,k,d,g,nt,tt,it,rt,ut,ft,et,ot,st,ht,ct,lt){return n.animate=u.animate,n.animObject=u.animObject,n.getDeferredAnimation=u.getDeferredAnimation,n.setAnimation=u.setAnimation,n.stop=u.stop,n.timers=r.timers,n.AST=f,n.Axis=a,n.Chart=tt,n.chart=tt.chart,n.Fx=r,n.Legend=nt,n.PlotLineOrBand=p,n.Point=k,n.Pointer=g.isRequired()?g:d,n.Series=it,n.SVGElement=s,n.SVGRenderer=h,n.Tick=w,n.Time=lt,n.Tooltip=b,n.Color=ct,n.color=ct.parse,l.compose(h),c.compose(s),n.defaultOptions=i.defaultOptions,n.getOptions=i.getOptions,n.time=i.defaultTime,n.setOptions=i.setOptions,n.dateFormat=e.dateFormat,n.format=e.format,n.numberFormat=e.numberFormat,n.addEvent=t.addEvent,n.arrayMax=t.arrayMax,n.arrayMin=t.arrayMin,n.attr=t.attr,n.clearTimeout=t.clearTimeout,n.correctFloat=t.correctFloat,n.createElement=t.createElement,n.css=t.css,n.defined=t.defined,n.destroyObjectProperties=t.destroyObjectProperties,n.discardElement=t.discardElement,n.distribute=o.distribute,n.erase=t.erase,n.error=t.error,n.extend=t.extend,n.extendClass=t.extendClass,n.find=t.find,n.fireEvent=t.fireEvent,n.getMagnitude=t.getMagnitude,n.getStyle=t.getStyle,n.inArray=t.inArray,n.isArray=t.isArray,n.isClass=t.isClass,n.isDOMElement=t.isDOMElement,n.isFunction=t.isFunction,n.isNumber=t.isNumber,n.isObject=t.isObject,n.isString=t.isString,n.keys=t.keys,n.merge=t.merge,n.normalizeTickInterval=t.normalizeTickInterval,n.objectEach=t.objectEach,n.offset=t.offset,n.pad=t.pad,n.pick=t.pick,n.pInt=t.pInt,n.relativeLength=t.relativeLength,n.removeEvent=t.removeEvent,n.seriesType=rt.seriesType,n.splat=t.splat,n.stableSort=t.stableSort,n.syncTimeout=t.syncTimeout,n.timeUnits=t.timeUnits,n.uniqueKey=t.uniqueKey,n.useSerialIds=t.useSerialIds,n.wrap=t.wrap,ft.compose(ut),st.compose(it),v.compose(a),y.compose(a),ot.compose(et),p.compose(a),ht.compose(tt),n}),t["masters/highcharts.src.js"]._modules=t,t["masters/highcharts.src.js"]})
"use strict";(function(n){"object"==typeof module&&module.exports?(n["default"]=n,module.exports=n):"function"==typeof define&&define.amd?define("highcharts/highcharts-more",["highcharts"],function(t){return n(t),n.Highcharts=t,n}):n("undefined"!=typeof Highcharts?Highcharts:void 0)})(function(n){function t(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}n=n?n._modules:{};t(n,"Extensions/Pane.js",[n["Core/Chart/Chart.js"],n["Core/Globals.js"],n["Core/Color/Palette.js"],n["Core/Pointer.js"],n["Core/Utilities.js"],n["Mixins/CenteredSeries.js"]],function(n,t,i,r,u,f){function e(n,t,i){return Math.sqrt(Math.pow(n-i[0],2)+Math.pow(t-i[1],2))<=i[2]/2}var o=u.addEvent,h=u.extend,s=u.merge,c=u.pick,l=u.splat;return n.prototype.collectionsWithUpdate.push("pane"),u=function(){function n(n,t){this.options=this.chart=this.center=this.background=void 0;this.coll="pane";this.defaultOptions={center:["50%","50%"],size:"85%",innerSize:"0%",startAngle:0};this.defaultBackgroundOptions={shape:"circle",borderWidth:1,borderColor:i.neutralColor20,backgroundColor:{linearGradient:{x1:0,y1:0,x2:0,y2:1},stops:[[0,i.backgroundColor],[1,i.neutralColor10]]},from:-Number.MAX_VALUE,innerRadius:0,to:Number.MAX_VALUE,outerRadius:"105%"};this.init(n,t)}return n.prototype.init=function(n,t){this.chart=t;this.background=[];t.pane.push(this);this.setOptions(n)},n.prototype.setOptions=function(n){this.options=s(this.defaultOptions,this.chart.angular?{background:{}}:void 0,n)},n.prototype.render=function(){var i=this.options,t=this.options.background,n=this.chart.renderer;if(this.group||(this.group=n.g("pane-group").attr({zIndex:i.zIndex||0}).add()),this.updateCenter(),t)for(t=l(t),i=Math.max(t.length,this.background.length||0),n=0;n<i;n++)t[n]&&this.axis?this.renderBackground(s(this.defaultBackgroundOptions,t[n]),n):this.background[n]&&(this.background[n]=this.background[n].destroy(),this.background.splice(n,1))},n.prototype.renderBackground=function(n,t){var i="animate",r={"class":"highcharts-pane "+(n.className||"")};this.chart.styledMode||h(r,{fill:n.backgroundColor,stroke:n.borderColor,"stroke-width":n.borderWidth});this.background[t]||(this.background[t]=this.chart.renderer.path().add(this.group),i="attr");this.background[t][i]({d:this.axis.getPlotBandPath(n.from,n.to,n)}).attr(r)},n.prototype.updateCenter=function(n){this.center=(n||this.axis||{}).center=f.getCenter.call(this)},n.prototype.update=function(n,t){s(!0,this.options,n);this.setOptions(this.options);this.render();this.chart.axes.forEach(function(n){n.pane===this&&(n.pane=null,n.update({},t))},this)},n}(),n.prototype.getHoverPane=function(n){var t=this,i;return n&&t.pane.forEach(function(r){var u=n.chartX-t.plotLeft,f=n.chartY-t.plotTop;e(t.inverted?f:u,t.inverted?u:f,r.center)&&(i=r)}),i},o(n,"afterIsInsidePlot",function(n){this.polar&&(n.isInsidePlot=this.pane.some(function(t){return e(n.x,n.y,t.center)}))}),o(r,"beforeGetHoverData",function(n){var t=this.chart;t.polar?(t.hoverPane=t.getHoverPane(n),n.filter=function(i){return i.visible&&!(!n.shared&&i.directTouch)&&c(i.options.enableMouseTracking,!0)&&(!t.hoverPane||i.xAxis.pane===t.hoverPane)}):t.hoverPane=void 0}),o(r,"afterGetHoverData",function(n){var t=this.chart;n.hoverPoint&&n.hoverPoint.plotX&&n.hoverPoint.plotY&&t.hoverPane&&!e(n.hoverPoint.plotX,n.hoverPoint.plotY,t.hoverPane.center)&&(n.hoverPoint=void 0)}),t.Pane=u,t.Pane});t(n,"Core/Axis/RadialAxis.js",[n["Core/Axis/AxisDefaults.js"],n["Core/DefaultOptions.js"],n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t,i,r){var a=t.defaultOptions,o=i.noop,f=r.addEvent,c=r.correctFloat,e=r.defined,v=r.extend,y=r.fireEvent,l=r.merge,u=r.pick,s=r.relativeLength,p=r.wrap,h;return function(t){function h(){this.autoConnect=this.isCircular&&"undefined"==typeof u(this.userMax,this.options.max)&&c(this.endAngleRad-this.startAngleRad)===c(2*Math.PI);!this.isCircular&&this.chart.inverted&&this.max++;this.autoConnect&&(this.max+=this.categories&&1||this.pointRange||this.closestPointRange||0)}function w(){var n=this;return function(){if(n.isRadial&&n.tickPositions&&n.options.labels&&!0!==n.options.labels.allowOverlap)return n.tickPositions.map(function(t){return n.ticks[t]&&n.ticks[t].label}).filter(function(n){return!!n})}}function b(){return o}function k(n,t,i){var o=this.pane.center,u=n.value,r,f;return this.isCircular?(e(u)?n.point&&(r=n.point.shapeArgs||{},r.start&&(u=this.chart.inverted?this.translate(n.point.rectPlotY,!0):n.point.x)):(r=n.chartX||0,f=n.chartY||0,u=this.translate(Math.atan2(f-i,r-t)-this.startAngleRad,!0)),n=this.getPosition(u),r=n.x,f=n.y):(e(u)||(r=n.chartX,f=n.chartY),e(r)&&e(f)&&(i=o[1]+this.chart.plotTop,u=this.translate(Math.min(Math.sqrt(Math.pow(r-t,2)+Math.pow(f-i,2)),o[2]/2)-o[3]/2,!0))),[u,r||0,f||0]}function d(n,t,i){n=this.pane.center;var f=this.chart,e=this.left||0,o=this.top||0,r=u(t,n[2]/2-this.offset);return"undefined"==typeof i&&(i=this.horiz?0:this.center&&-this.center[3]/2),i&&(r+=i),this.isCircular||"undefined"!=typeof t?(t=this.chart.renderer.symbols.arc(e+n[0],o+n[1],r,r,{start:this.startAngleRad,end:this.endAngleRad,open:!0,innerR:0}),t.xBounds=[e+n[0]],t.yBounds=[o+n[1]-r]):(t=this.postTranslate(this.angleRad,r),t=[["M",this.center[0]+f.plotLeft,this.center[1]+f.plotTop],["L",t.x,t.y]]),t}function g(){this.constructor.prototype.getOffset.call(this);this.chart.axisOffset[this.side]=0}function nt(n,t,i){var l=this.chart,s=function(n){if("string"==typeof n){var t=parseInt(n,10);return w.test(n)&&(t=t*a/100),t}return n},e=this.center,o=this.startAngleRad,a=e[2]/2,f=Math.min(this.offset,0),h=this.left||0,v=this.top||0,w=/%$/,r=this.isCircular,c=u(s(i.outerRadius),a),y=s(i.innerRadius),p;return s=u(s(i.thickness),10),"polygon"===this.options.gridLineInterpolation?f=this.getPlotLinePath({value:n}).concat(this.getPlotLinePath({value:t,reverse:!0})):(n=Math.max(n,this.min),t=Math.min(t,this.max),n=this.translate(n),t=this.translate(t),r||(c=n||0,y=t||0),"circle"!==i.shape&&r?(i=o+(n||0),o+=t||0):(i=-Math.PI/2,o=1.5*Math.PI,p=!0),c-=f,f=l.renderer.symbols.arc(h+e[0],v+e[1],c,c,{start:Math.min(i,o),end:Math.max(i,o),innerR:u(y,c-(s-f)),open:p}),r&&(r=(o+i)/2,h=h+e[0]+e[2]/2*Math.cos(r),f.xBounds=r>-Math.PI/2&&r<Math.PI/2?[h,l.plotWidth]:[0,h],f.yBounds=[v+e[1]+e[2]/2*Math.sin(r)],f.yBounds[0]+=r>-Math.PI&&0>r||r>Math.PI?-10:10)),f}function tt(n){var y=this,e=this.pane.center,o=this.chart,p=o.inverted,h=n.reverse,t=this.pane.options.background?this.pane.options.background[0]||this.pane.options.background:{},a=t.innerRadius||"0%",v=t.outerRadius||"100%",r=e[0]+o.plotLeft,f=e[1]+o.plotTop,w=this.height,b=n.isCrosshair;t=e[3]/2;var i=n.value,c,u=this.getPosition(i),l=u.x;if(u=u.y,b&&(u=this.getCrosshairPosition(n,r,f),i=u[0],l=u[1],u=u[2]),this.isCircular)i=Math.sqrt(Math.pow(l-r,2)+Math.pow(u-f,2)),h="string"==typeof a?s(a,1):a/i,o="string"==typeof v?s(v,1):v/i,e&&t&&(t/=i,h<t&&(h=t),o<t&&(o=t)),e=[["M",r+h*(l-r),f-h*(f-u)],["L",l-(1-o)*(l-r),u+(1-o)*(f-u)]];else if((i=this.translate(i))&&(0>i||i>w)&&(i=0),"circle"===this.options.gridLineInterpolation)e=this.getLinePath(0,i,t);else if(e=[],o[p?"yAxis":"xAxis"].forEach(function(n){n.pane===y.pane&&(c=n)}),c)for(r=c.tickPositions,c.autoConnect&&(r=r.concat([r[0]])),h&&(r=r.slice().reverse()),i&&(i+=t),f=0;f<r.length;f++)t=c.getPosition(r[f],i),e.push(f?["L",t.x,t.y]:["M",t.x,t.y]);return e}function it(n,t){return n=this.translate(n),this.postTranslate(this.isCircular?n:this.angleRad,u(this.isCircular?t:0>n?0:n,this.center[2]/2)-this.offset)}function rt(){var n=this.center,i=this.chart,t=this.options.title;return{x:i.plotLeft+n[0]+(t.x||0),y:i.plotTop+n[1]-{high:.5,middle:.25,low:0}[t.align]*n[2]+(t.y||0)}}function r(n){n.beforeSetTickPositions=h;n.createLabelCollector=w;n.getCrosshairPosition=k;n.getLinePath=d;n.getOffset=g;n.getPlotBandPath=nt;n.getPlotLinePath=tt;n.getPosition=it;n.getTitlePosition=rt;n.postTranslate=lt;n.setAxisSize=vt;n.setAxisTranslation=yt;n.setOptions=pt}function ut(){var n=this.chart,r=this.options,t=this.pane,i=t&&t.options;(!n.angular||!this.isXAxis)&&t&&(n.angular||n.polar)&&(this.angleRad=(r.angle||0)*Math.PI/180,this.startAngleRad=(i.startAngle-90)*Math.PI/180,this.endAngleRad=(u(i.endAngle,i.startAngle+360)-90)*Math.PI/180,this.offset=r.offset||0)}function ft(n){this.isRadial&&(n.align=void 0,n.preventDefault())}function et(){if(this.chart&&this.chart.labelCollectors){var n=this.labelCollector?this.chart.labelCollectors.indexOf(this.labelCollector):-1;0<=n&&this.chart.labelCollectors.splice(n,1)}}function ot(t){var i=this.chart,c=i.inverted,f=i.angular,s=i.polar,h=this.isXAxis,e=this.coll,a=f&&h,v=i.options,u;t=t.userOptions.pane||0;t=this.pane=i.pane&&i.pane[t];"colorAxis"===e?this.isRadial=!1:(f?(a?(this.isHidden=!0,this.createLabelCollector=b,this.getOffset=o,this.render=this.redraw=at,this.setTitle=this.setCategories=this.setScale=o):r(this),u=!h)&&(this.defaultPolarOptions=kt):s&&(r(this),this.defaultPolarOptions=(u=this.horiz)?bt:l("xAxis"===e?n.defaultXAxisOptions:n.defaultYAxisOptions,dt),c&&"yAxis"===e&&(this.defaultPolarOptions.stackLabels=n.defaultYAxisOptions.stackLabels,this.defaultPolarOptions.reversedStacks=!0)),f||s?(this.isRadial=!0,v.chart.zoomType=null,this.labelCollector||(this.labelCollector=this.createLabelCollector()),this.labelCollector&&i.labelCollectors.push(this.labelCollector)):this.isRadial=!1,t&&u&&(t.axis=this),this.isCircular=u)}function st(){this.isRadial&&this.beforeSetTickPositions()}function ht(n){var c=this.label,k;if(c){var i=this.axis,r=c.getBBox(),a=i.options.labels,v=(i.translate(this.pos)+i.startAngleRad+Math.PI/2)/Math.PI*180%360,f=Math.round(v),d=e(a.y)?0:.3*-r.height,w=a.y,p=20,l=a.align,o="end",t=0>f?f+360:f,h=t,y=0,b=0;i.isRadial&&(k=i.getPosition(this.pos,i.center[2]/2+s(u(a.distance,-25),i.center[2]/2,-i.center[2]/2)),"auto"===a.rotation?c.attr({rotation:v}):e(w)||(w=i.chart.renderer.fontMetrics(c.styles&&c.styles.fontSize).b-r.height/2),e(l)||(i.isCircular?(r.width>i.len*i.tickInterval/(i.max-i.min)&&(p=0),l=v>p&&v<180-p?"left":v>180+p&&v<360-p?"right":"center"):l="center",c.attr({align:l})),"auto"===l&&2===i.tickPositions.length&&i.isCircular&&(90<t&&180>t?t=180-t:270<t&&360>=t&&(t=540-t),180<h&&360>=h&&(h=360-h),(i.pane.options.startAngle===f||i.pane.options.startAngle===f+360||i.pane.options.startAngle===f-360)&&(o="start"),l=-90<=f&&90>=f||-360<=f&&-270>=f||270<=f&&360>=f?"start"===o?"right":"left":"start"===o?"left":"right",70<h&&110>h&&(l="center"),15>t||180<=t&&195>t?y=.3*r.height:15<=t&&35>=t?y="start"===o?0:.75*r.height:195<=t&&215>=t?y="start"===o?.75*r.height:0:35<t&&90>=t?y="start"===o?.25*-r.height:r.height:215<t&&270>=t&&(y="start"===o?r.height:.25*-r.height),15>h?b="start"===o?.15*-r.height:.15*r.height:165<h&&180>=h&&(b="start"===o?.15*r.height:.15*-r.height),c.attr({align:l}),c.translate(b,y+d)),n.pos.x=k.x+(a.x||0),n.pos.y=k.y+(w||0))}}function ct(n){this.axis.getPosition&&v(n.pos,this.axis.getPosition(this.pos))}function lt(n,t){var i=this.chart,r=this.center;return n=this.startAngleRad+n,{x:i.plotLeft+r[0]+Math.cos(n)*t,y:i.plotTop+r[1]+Math.sin(n)*t}}function at(){this.isDirty=!1}function vt(){var n,t;this.constructor.prototype.setAxisSize.call(this);this.isRadial&&(this.pane.updateCenter(this),n=this.center=this.pane.center.slice(),this.isCircular?this.sector=this.endAngleRad-this.startAngleRad:(t=this.postTranslate(this.angleRad,n[3]/2),n[0]=t.x-this.chart.plotLeft,n[1]=t.y-this.chart.plotTop),this.len=this.width=this.height=(n[2]-n[3])*u(this.sector,1)/2)}function yt(){this.constructor.prototype.setAxisTranslation.call(this);this.center&&(this.transA=this.isCircular?(this.endAngleRad-this.startAngleRad)/(this.max-this.min||1):(this.center[2]-this.center[3])/2/(this.max-this.min||1),this.minPixelPadding=this.isXAxis?this.transA*this.minPointOffset:0)}function pt(n){n=this.options=l(this.constructor.defaultOptions,this.defaultPolarOptions,a[this.coll],n);n.plotBands||(n.plotBands=[]);y(this,"afterSetOptions")}function wt(n,t,i,r,u,f,e){var o=this.axis;return o.isRadial?(n=o.getPosition(this.pos,o.center[2]/2+r),t=["M",t,i,"L",n.x,n.y]):t=n.call(this,t,i,r,u,f,e),t}var i=[],bt={gridLineWidth:1,labels:{align:void 0,distance:15,x:0,y:void 0,style:{textOverflow:"none"}},maxPadding:0,minPadding:0,showLastLabel:!1,tickLength:0},kt={labels:{align:"center",x:0,y:void 0},minorGridLineWidth:0,minorTickInterval:"auto",minorTickLength:10,minorTickPosition:"inside",minorTickWidth:1,tickLength:10,tickPosition:"inside",tickWidth:2,title:{rotation:0},zIndex:2},dt={gridLineInterpolation:"circle",gridLineWidth:1,labels:{align:"right",x:-3,y:-2},showLastLabel:!1,title:{x:4,text:null,rotation:90}};t.compose=function(n,t){return-1===i.indexOf(n)&&(i.push(n),f(n,"afterInit",ut),f(n,"autoLabelAlign",ft),f(n,"destroy",et),f(n,"init",ot),f(n,"initialAxisTranslation",st)),-1===i.indexOf(t)&&(i.push(t),f(t,"afterGetLabelPosition",ht),f(t,"afterGetPosition",ct),p(t.prototype,"getMarkPath",wt)),n}}(h||(h={})),h});t(n,"Series/AreaRange/AreaRangePoint.js",[n["Series/Area/AreaSeries.js"],n["Core/Series/Point.js"],n["Core/Utilities.js"]],function(n,t,i){var e=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),r=t.prototype,u=i.defined,f=i.isNumber;return function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.high=void 0,t.low=void 0,t.options=void 0,t.plotHigh=void 0,t.plotLow=void 0,t.plotHighX=void 0,t.plotLowX=void 0,t.plotX=void 0,t.series=void 0,t}return e(t,n),t.prototype.setState=function(){var i=this.state,n=this.series,t=n.chart.polar;u(this.plotHigh)||(this.plotHigh=n.yAxis.toPixels(this.high,!0));u(this.plotLow)||(this.plotLow=this.plotY=n.yAxis.toPixels(this.low,!0));n.stateMarkerGraphic&&(n.lowerStateMarkerGraphic=n.stateMarkerGraphic,n.stateMarkerGraphic=n.upperStateMarkerGraphic);this.graphic=this.upperGraphic;this.plotY=this.plotHigh;t&&(this.plotX=this.plotHighX);r.setState.apply(this,arguments);this.state=i;this.plotY=this.plotLow;this.graphic=this.lowerGraphic;t&&(this.plotX=this.plotLowX);n.stateMarkerGraphic&&(n.upperStateMarkerGraphic=n.stateMarkerGraphic,n.stateMarkerGraphic=n.lowerStateMarkerGraphic,n.lowerStateMarkerGraphic=void 0);r.setState.apply(this,arguments)},t.prototype.haloPath=function(){var t=this.series.chart.polar,n=[];return this.plotY=this.plotLow,t&&(this.plotX=this.plotLowX),this.isInside&&(n=r.haloPath.apply(this,arguments)),this.plotY=this.plotHigh,t&&(this.plotX=this.plotHighX),this.isTopInside&&(n=n.concat(r.haloPath.apply(this,arguments))),n},t.prototype.isValid=function(){return f(this.low)&&f(this.high)},t}(n.prototype.pointClass)});t(n,"Series/AreaRange/AreaRangeSeries.js",[n["Series/AreaRange/AreaRangePoint.js"],n["Series/Area/AreaSeries.js"],n["Series/Column/ColumnSeries.js"],n["Core/Globals.js"],n["Core/Series/Series.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u,f,e){var l=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),h=t.prototype,a=i.prototype;i=r.noop;var o=u.prototype,v=e.defined,s=e.extend,y=e.isArray,c=e.pick,p=e.merge;return u=function(n){function i(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t.lowerStateMarkerGraphic=void 0,t.xAxis=void 0,t}return l(i,n),i.prototype.toYData=function(n){return[n.low,n.high]},i.prototype.highToXY=function(n){var t=this.chart,i=this.xAxis.postTranslate(n.rectPlotX||0,this.yAxis.len-n.plotHigh);n.plotHighX=i.x-t.plotLeft;n.plotHigh=i.y-t.plotTop;n.plotLowX=n.plotX},i.prototype.translate=function(){var n=this,i=n.yAxis,t=!!n.modifyValue;h.translate.apply(n);n.points.forEach(function(r){var u=r.high,f=r.plotY;r.isNull?r.plotY=null:(r.plotLow=f,r.plotHigh=i.translate(t?n.modifyValue(u,r):u,0,1,0,1),t&&(r.yBottom=r.plotHigh))});this.chart.polar&&this.points.forEach(function(t){n.highToXY(t);t.tooltipPos=[(t.plotHighX+t.plotLowX)/2,(t.plotHigh+t.plotLow)/2]})},i.prototype.getGraphPath=function(n){var e=[],i=[],u,o=h.getGraphPath,r=this.options,a=this.chart.polar,v=a&&!1!==r.connectEnds,y=r.connectNulls,f=r.step,t,s,l;for(n=n||this.points,u=n.length;u--;)t=n[u],s=a?{plotX:t.rectPlotX,plotY:t.yBottom,doCurve:!1}:{plotX:t.plotX,plotY:t.plotY,doCurve:!1},t.isNull||v||y||n[u+1]&&!n[u+1].isNull||i.push(s),l={polarPlotY:t.polarPlotY,rectPlotX:t.rectPlotX,yBottom:t.yBottom,plotX:c(t.plotHighX,t.plotX),plotY:t.plotHigh,isNull:t.isNull},i.push(l),e.push(l),t.isNull||v||y||n[u-1]&&!n[u-1].isNull||i.push(s);return n=o.call(this,n),f&&(!0===f&&(f="left"),r.step={left:"right",center:"center",right:"left"}[f]),e=o.call(this,e),i=o.call(this,i),r.step=f,r=[].concat(n,e),!this.chart.polar&&i[0]&&"M"===i[0][0]&&(i[0]=["L",i[0][1],i[0][2]]),this.graphPath=r,this.areaPath=n.concat(i),r.isArea=!0,r.xMap=n.xMap,this.areaPath.xMap=n.xMap,r},i.prototype.drawDataLabels=function(){var e=this.points,h=e.length,t,c=[],r=this.options.dataLabels,n,l=this.chart.inverted,i,u,f;if(r){if(y(r)?(i=r[0]||{enabled:!1},u=r[1]||{enabled:!1}):(i=s({},r),i.x=r.xHigh,i.y=r.yHigh,u=s({},r),u.x=r.xLow,u.y=r.yLow),i.enabled||this._hasPointLabels){for(t=h;t--;)(n=e[t])&&(f=i.inside?n.plotHigh<n.plotLow:n.plotHigh>n.plotLow,n.y=n.high,n._plotY=n.plotY,n.plotY=n.plotHigh,c[t]=n.dataLabel,n.dataLabel=n.dataLabelUpper,n.below=f,l?i.align||(i.align=f?"right":"left"):i.verticalAlign||(i.verticalAlign=f?"top":"bottom"));for(this.options.dataLabels=i,o.drawDataLabels&&o.drawDataLabels.apply(this,arguments),t=h;t--;)(n=e[t])&&(n.dataLabelUpper=n.dataLabel,n.dataLabel=c[t],delete n.dataLabels,n.y=n.low,n.plotY=n._plotY)}if(u.enabled||this._hasPointLabels){for(t=h;t--;)(n=e[t])&&(f=u.inside?n.plotHigh<n.plotLow:n.plotHigh>n.plotLow,n.below=!f,l?u.align||(u.align=f?"left":"right"):u.verticalAlign||(u.verticalAlign=f?"bottom":"top"));this.options.dataLabels=u;o.drawDataLabels&&o.drawDataLabels.apply(this,arguments)}if(i.enabled)for(t=h;t--;)(n=e[t])&&(n.dataLabels=[n.dataLabelUpper,n.dataLabel].filter(function(n){return!!n}));this.options.dataLabels=r}},i.prototype.alignDataLabel=function(){a.alignDataLabel.apply(this,arguments)},i.prototype.drawPoints=function(){var i=this.points.length,t,n;for(o.drawPoints.apply(this,arguments),t=0;t<i;)n=this.points[t],n.origProps={plotY:n.plotY,plotX:n.plotX,isInside:n.isInside,negative:n.negative,zone:n.zone,y:n.y},n.lowerGraphic=n.graphic,n.graphic=n.upperGraphic,n.plotY=n.plotHigh,v(n.plotHighX)&&(n.plotX=n.plotHighX),n.y=c(n.high,n.origProps.y),n.negative=n.y<(this.options.threshold||0),this.zones.length&&(n.zone=n.getZone()),this.chart.polar||(n.isInside=n.isTopInside="undefined"!=typeof n.plotY&&0<=n.plotY&&n.plotY<=this.yAxis.len&&0<=n.plotX&&n.plotX<=this.xAxis.len),t++;for(o.drawPoints.apply(this,arguments),t=0;t<i;)n=this.points[t],n.upperGraphic=n.graphic,n.graphic=n.lowerGraphic,n.origProps&&(s(n,n.origProps),delete n.origProps),t++},i.defaultOptions=p(t.defaultOptions,{lineWidth:1,threshold:null,tooltip:{pointFormat:'<span style="color:{series.color}">●<\/span> {series.name}: <b>{point.low}<\/b> - <b>{point.high}<\/b><br/>'},trackByArea:!0,dataLabels:{align:void 0,verticalAlign:void 0,xLow:0,xHigh:0,yLow:0,yHigh:0}}),i}(t),s(u.prototype,{pointArrayMap:["low","high"],pointValKey:"low",deferTranslatePolar:!0,pointClass:n,setStackedPoints:i}),f.registerSeriesType("arearange",u),u});t(n,"Series/AreaSplineRange/AreaSplineRangeSeries.js",[n["Series/AreaRange/AreaRangeSeries.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i){var u=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),f=t.seriesTypes.spline,e=i.merge,r;return i=i.extend,r=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.options=void 0,n.data=void 0,n.points=void 0,n}return u(i,t),i.defaultOptions=e(n.defaultOptions),i}(n),i(r.prototype,{getPointSpline:f.prototype.getPointSpline}),t.registerSeriesType("areasplinerange",r),r});t(n,"Series/BoxPlot/BoxPlotSeries.js",[n["Series/Column/ColumnSeries.js"],n["Core/Globals.js"],n["Core/Color/Palette.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u){var e=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();t=t.noop;var o=u.extend,s=u.merge,f=u.pick;return u=function(t){function r(){var n=null!==t&&t.apply(this,arguments)||this;return n.data=void 0,n.options=void 0,n.points=void 0,n}return e(r,t),r.prototype.pointAttribs=function(){return{}},r.prototype.translate=function(){var n=this.yAxis,i=this.pointArrayMap;t.prototype.translate.apply(this);this.points.forEach(function(t){i.forEach(function(i){null!==t[i]&&(t[i+"Plot"]=n.translate(t[i],0,1,0,1))});t.plotHigh=t.highPlot})},r.prototype.drawPoints=function(){var u=this,n=u.options,k=u.chart,h=k.renderer,o,e,c,l,p,t,i=0,w,r,a,b,v=!1!==u.doQuartiles,y,s=u.options.whiskerLength;u.points.forEach(function(d){var g=d.graphic,it=g?"animate":"attr",et=d.shapeArgs,nt={},rt={},ut={},ft={},tt=d.color||u.color;"undefined"!=typeof d.plotY&&(w=Math.round(et.width),r=Math.floor(et.x),a=r+w,b=Math.round(w/2),o=Math.floor(v?d.q1Plot:d.lowPlot),e=Math.floor(v?d.q3Plot:d.lowPlot),c=Math.floor(d.highPlot),l=Math.floor(d.lowPlot),g||(d.graphic=g=h.g("point").add(u.group),d.stem=h.path().addClass("highcharts-boxplot-stem").add(g),s&&(d.whiskers=h.path().addClass("highcharts-boxplot-whisker").add(g)),v&&(d.box=h.path(void 0).addClass("highcharts-boxplot-box").add(g)),d.medianShape=h.path(void 0).addClass("highcharts-boxplot-median").add(g)),k.styledMode||(rt.stroke=d.stemColor||n.stemColor||tt,rt["stroke-width"]=f(d.stemWidth,n.stemWidth,n.lineWidth),rt.dashstyle=d.stemDashStyle||n.stemDashStyle||n.dashStyle,d.stem.attr(rt),s&&(ut.stroke=d.whiskerColor||n.whiskerColor||tt,ut["stroke-width"]=f(d.whiskerWidth,n.whiskerWidth,n.lineWidth),ut.dashstyle=d.whiskerDashStyle||n.whiskerDashStyle||n.dashStyle,d.whiskers.attr(ut)),v&&(nt.fill=d.fillColor||n.fillColor||tt,nt.stroke=n.lineColor||tt,nt["stroke-width"]=n.lineWidth||0,nt.dashstyle=d.boxDashStyle||n.boxDashStyle||n.dashStyle,d.box.attr(nt)),ft.stroke=d.medianColor||n.medianColor||tt,ft["stroke-width"]=f(d.medianWidth,n.medianWidth,n.lineWidth),ft.dashstyle=d.medianDashStyle||n.medianDashStyle||n.dashStyle,d.medianShape.attr(ft)),t=d.stem.strokeWidth()%2/2,i=r+b+t,g=[["M",i,e],["L",i,c],["M",i,o],["L",i,l]],d.stem[it]({d:g}),v&&(t=d.box.strokeWidth()%2/2,o=Math.floor(o)+t,e=Math.floor(e)+t,r+=t,a+=t,g=[["M",r,e],["L",r,o],["L",a,o],["L",a,e],["L",r,e],["Z"]],d.box[it]({d:g})),s&&(t=d.whiskers.strokeWidth()%2/2,c+=t,l+=t,y=/%$/.test(s)?b*parseFloat(s)/100:s/2,g=[["M",i-y,c],["L",i+y,c],["M",i-y,l],["L",i+y,l]],d.whiskers[it]({d:g})),p=Math.round(d.medianPlot),t=d.medianShape.strokeWidth()%2/2,p+=t,g=[["M",r,p],["L",a,p]],d.medianShape[it]({d:g}))})},r.prototype.toYData=function(n){return[n.low,n.q1,n.median,n.q3,n.high]},r.defaultOptions=s(n.defaultOptions,{threshold:null,tooltip:{pointFormat:'<span style="color:{point.color}">●<\/span> <b> {series.name}<\/b><br/>Maximum: {point.high}<br/>Upper quartile: {point.q3}<br/>Median: {point.median}<br/>Lower quartile: {point.q1}<br/>Minimum: {point.low}<br/>'},whiskerLength:"50%",fillColor:i.backgroundColor,lineWidth:1,medianWidth:2,whiskerWidth:2}),r}(n),o(u.prototype,{pointArrayMap:["low","q1","median","q3","high"],pointValKey:"high",drawDataLabels:t,setStackedPoints:t}),r.registerSeriesType("boxplot",u),u});t(n,"Series/Bubble/BubbleLegendDefaults.js",[n["Core/Color/Palette.js"]],function(n){return{borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:"10px",color:n.neutralColor100},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0}});t(n,"Series/Bubble/BubbleLegendItem.js",[n["Core/Color/Color.js"],n["Core/FormatUtilities.js"],n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t,i,r){var o=n.parse,s=i.noop,h=r.arrayMax,c=r.arrayMin,e=r.isNumber,f=r.merge,u=r.pick,l=r.stableSort;return function(){function n(n,t){this.options=this.symbols=this.visible=this.selected=this.ranges=this.movementX=this.maxLabel=this.legendSymbol=this.legendItemWidth=this.legendItemHeight=this.legendItem=this.legendGroup=this.legend=this.fontMetrics=this.chart=void 0;this.setState=s;this.init(n,t)}return n.prototype.init=function(n,t){this.options=n;this.visible=!0;this.chart=t.chart;this.legend=t},n.prototype.addToLegend=function(n){n.splice(this.options.legendIndex,0,this)},n.prototype.drawLegendSymbol=function(n){var r=this.chart,f=this.options,o=u(n.options.itemDistance,20),t=f.ranges,i=f.connectorDistance;this.fontMetrics=r.renderer.fontMetrics(f.labels.style.fontSize);t&&t.length&&e(t[0].value)?(l(t,function(n,t){return t.value-n.value}),this.ranges=t,this.setOptions(),this.render(),n=this.getMaxLabelSize(),t=this.ranges[0].radius,r=2*t,i=i-t+n.width,i=0<i?i:0,this.maxLabel=n,this.movementX="left"===f.labels.align?i:0,this.legendItemWidth=r+i+o,this.legendItemHeight=r+this.fontMetrics.h/2):n.options.bubbleLegend.autoRanges=!0},n.prototype.setOptions=function(){var t=this.ranges,n=this.options,i=this.chart.series[n.seriesIndex],c=this.legend.baseline,r={zIndex:n.zIndex,"stroke-width":n.borderWidth},e={zIndex:n.zIndex,"stroke-width":n.connectorWidth},l={align:this.legend.options.rtl||"left"===n.labels.align?"right":"left",zIndex:n.zIndex},s=i.options.marker.fillOpacity,h=this.chart.styledMode;t.forEach(function(a,v){h||(r.stroke=u(a.borderColor,n.borderColor,i.color),r.fill=u(a.color,n.color,1!==s?o(i.color).setOpacity(s).get("rgba"):i.color),e.stroke=u(a.connectorColor,n.connectorColor,i.color));t[v].radius=this.getRangeRadius(a.value);t[v]=f(t[v],{center:t[0].radius-t[v].radius+c});h||f(!0,t[v],{bubbleAttribs:f(r),connectorAttribs:f(e),labelAttribs:l})},this)},n.prototype.getRangeRadius=function(n){var t=this.options;return this.chart.series[this.options.seriesIndex].getRadius.call(this,t.ranges[t.ranges.length-1].value,t.ranges[0].value,t.minSize,t.maxSize,n)},n.prototype.render=function(){var n=this.chart.renderer,t=this.options.zThreshold;this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]});this.legendSymbol=n.g("bubble-legend");this.legendItem=n.g("bubble-legend-item");this.legendSymbol.translateX=0;this.legendSymbol.translateY=0;this.ranges.forEach(function(n){n.value>=t&&this.renderRange(n)},this);this.legendSymbol.add(this.legendItem);this.legendItem.add(this.legendGroup);this.hideOverlappingLabels()},n.prototype.renderRange=function(n){var t=this.options,a=t.labels,o=this.chart,w=o.series[t.seriesIndex],f=o.renderer,c=this.symbols,i,l;o=c.labels;var v=n.center,y=Math.abs(n.radius),r=t.connectorDistance||0,e=a.align,p=t.connectorWidth,s=this.ranges[0].radius||0,h=v-y-t.borderWidth/2+p/2,u=this.fontMetrics;u=u.f/2-(u.h-u.f)/2;i=f.styledMode;r=this.legend.options.rtl||"left"===e?-r:r;"center"===e&&(r=0,t.connectorDistance=0,n.labelAttribs.align="center");e=h+t.labels.y;l=s+r+t.labels.x;c.bubbleItems.push(f.circle(s,v+((h%1?1:.5)-(p%2?0:.5)),y).attr(i?{}:n.bubbleAttribs).addClass((i?"highcharts-color-"+w.colorIndex+" ":"")+"highcharts-bubble-legend-symbol "+(t.className||"")).add(this.legendSymbol));c.connectors.push(f.path(f.crispLine([["M",s,h],["L",s+r,h]],t.connectorWidth)).attr(i?{}:n.connectorAttribs).addClass((i?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(t.connectorClassName||"")).add(this.legendSymbol));n=f.text(this.formatLabel(n),l,e+u).attr(i?{}:n.labelAttribs).css(i?{}:a.style).addClass("highcharts-bubble-legend-labels "+(t.labels.className||"")).add(this.legendSymbol);o.push(n);n.placed=!0;n.alignAttr={x:l,y:e+u}},n.prototype.getMaxLabelSize=function(){var n,t;return this.symbols.labels.forEach(function(i){t=i.getBBox(!0);n=n?t.width>n.width?t:n:t}),n||{}},n.prototype.formatLabel=function(n){var i=this.options,r=i.labels.formatter,u;return i=i.labels.format,u=this.chart.numberFormatter,i?t.format(i,n):r?r.call(n):u(n.value,1)},n.prototype.hideOverlappingLabels=function(){var t=this.chart,n=this.symbols;!this.options.labels.allowOverlap&&n&&(t.hideOverlappingLabels(n.labels),n.labels.forEach(function(t,i){t.newOpacity?t.newOpacity!==t.oldOpacity&&n.connectors[i].show():n.connectors[i].hide()}))},n.prototype.getRanges=function(){var s=this.legend.bubbleLegend,t=s.options.ranges,o,i=Number.MAX_VALUE,n=-Number.MAX_VALUE,r;return s.chart.series.forEach(function(t){t.isBubble&&!t.ignoreSeries&&(o=t.zData.filter(e),o.length&&(i=u(t.options.zMin,Math.min(i,Math.max(c(o),!1===t.options.displayNegative?t.options.zThreshold:-Number.MAX_VALUE))),n=u(t.options.zMax,Math.max(n,h(o)))))}),r=i===n?[{value:n}]:[{value:i},{value:(i+n)/2},{value:n,autoRanges:!0}],t.length&&t[0].radius&&r.reverse(),r.forEach(function(n,i){t&&t[i]&&(r[i]=f(t[i],n))}),r},n.prototype.predictBubbleSizes=function(){var t=this.chart,i=this.fontMetrics,o=t.legend.options,r="horizontal"===o.layout,h=r?t.legend.lastLineHeight:0,u=t.plotSizeX,f=t.plotSizeY,n=t.series[this.options.seriesIndex],e,s;return t=Math.ceil(n.minPxSize),e=Math.ceil(n.maxPxSize),s=Math.min(f,u),n=n.options.maxSize,o.floating||!/%$/.test(n)?i=e:(n=parseFloat(n),i=(s+h-i.h/2)*n/100/(n/100+1),r&&f-i>=u||!r&&u-i>=f)&&(i=e),[t,Math.ceil(i)]},n.prototype.updateRanges=function(n,t){var i=this.legend.options.bubbleLegend;i.minSize=n;i.maxSize=t;i.ranges=this.getRanges()},n.prototype.correctSizes=function(){var t=this.legend,n=this.chart.series[this.options.seriesIndex];1<Math.abs(Math.ceil(n.maxPxSize)-this.options.maxSize)&&(this.updateRanges(this.options.minSize,n.maxPxSize),t.render())},n}()});t(n,"Series/Bubble/BubbleLegendComposition.js",[n["Series/Bubble/BubbleLegendDefaults.js"],n["Series/Bubble/BubbleLegendItem.js"],n["Core/DefaultOptions.js"],n["Core/Utilities.js"]],function(n,t,i,r){var e=i.setOptions,f=r.addEvent,o=r.objectEach,s=r.wrap,u;return function(i){function l(n,t,i){var r=this.legend,f=0<=u(this),e;r&&r.options.enabled&&r.bubbleLegend&&r.options.bubbleLegend.autoRanges&&f?(e=r.bubbleLegend.options,f=r.bubbleLegend.predictBubbleSizes(),r.bubbleLegend.updateRanges(f[0],f[1]),e.placed||(r.group.placed=!1,r.allItems.forEach(function(n){n.legendGroup.translateY=null})),r.render(),this.getMargins(),this.axes.forEach(function(n){n.visible&&n.render();e.placed||(n.setScale(),n.updateNames(),o(n.ticks,function(n){n.isNew=!0;n.isNewLabel=!0}))}),e.placed=!0,this.getMargins(),n.call(this,t,i),r.bubbleLegend.correctSizes(),c(r,h(r))):(n.call(this,t,i),r&&r.options.enabled&&r.bubbleLegend&&(r.render(),c(r,h(r))))}function u(n){n=n.series;for(var t=0;t<n.length;){if(n[t]&&n[t].isBubble&&n[t].visible&&n[t].zData.length)return t;t++}return-1}function h(n){var u;n=n.allItems;for(var r=[],f=n.length,i=0,t=0;t<f;t++)if(n[t].legendItemHeight&&(n[t].itemHeight=n[t].legendItemHeight),n[t]===n[f-1]||n[t+1]&&n[t]._legendItemPos[1]!==n[t+1]._legendItemPos[1]){for(r.push({height:0}),u=r[r.length-1],i;i<=t;i++)n[i].itemHeight>u.height&&(u.height=n[i].itemHeight);u.step=t}return r}function a(n){var r=this.bubbleLegend,f=this.options,i=f.bubbleLegend,e=u(this.chart);r&&r.ranges&&r.ranges.length&&(i.ranges.length&&(i.autoRanges=!!i.ranges[0].autoRanges),this.destroyItem(r));0<=e&&f.enabled&&i.enabled&&(i.seriesIndex=e,this.bubbleLegend=new t(i,this),this.bubbleLegend.addToLegend(n.allItems))}function v(){var n=this.chart,i=this.visible,t=this.chart.legend;t&&t.bubbleLegend&&(this.visible=!i,this.ignoreSeries=i,n=0<=u(n),t.bubbleLegend.visible!==n&&(t.update({bubbleLegend:{enabled:n}}),t.bubbleLegend.visible=n),this.visible=i)}function c(n,t){var e=n.options.rtl,u,f,i,r=0;n.allItems.forEach(function(n,o){u=n.legendGroup.translateX;f=n._legendItemPos[1];((i=n.movementX)||e&&n.ranges)&&(i=e?u-n.options.maxSize/2:u+i,n.legendGroup.attr({translateX:i}));o>t[r].step&&r++;n.legendGroup.attr({translateY:Math.round(f+t[r].height/2)});n._legendItemPos[1]=f+t[r].height/2})}var r=[];i.compose=function(t,i,u){-1===r.indexOf(t)&&(r.push(t),e({legend:{bubbleLegend:n}}),s(t.prototype,"drawChartBox",l));-1===r.indexOf(i)&&(r.push(i),f(i,"afterGetAllItems",a));-1===r.indexOf(u)&&(r.push(u),f(u,"legendItemClick",v))}}(u||(u={})),u});t(n,"Series/Bubble/BubblePoint.js",[n["Core/Series/Point.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i){var r=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();return i=i.extend,t=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.options=void 0,n.series=void 0,n}return r(i,t),i.prototype.haloPath=function(t){return n.prototype.haloPath.call(this,0===t?0:(this.marker?this.marker.radius||0:0)+t)},i}(t.seriesTypes.scatter.prototype.pointClass),i(t.prototype,{ttBelow:!1}),t});t(n,"Series/Bubble/BubbleSeries.js",[n["Core/Axis/Axis.js"],n["Series/Bubble/BubbleLegendComposition.js"],n["Series/Bubble/BubblePoint.js"],n["Core/Color/Color.js"],n["Core/Globals.js"],n["Core/Series/Series.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o){var v=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),y=r.parse,h;r=u.noop;h=e.seriesTypes;u=h.column;var l=h.scatter,p=o.arrayMax,w=o.arrayMin,b=o.clamp,a=o.extend,s=o.isNumber,k=o.merge,c=o.pick,d=o.pInt;return o=function(n){function i(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.maxPxSize=void 0,t.minPxSize=void 0,t.options=void 0,t.points=void 0,t.radii=void 0,t.yData=void 0,t.zData=void 0,t}return v(i,n),i.prototype.animate=function(n){!n&&this.points.length<this.options.animationLimit&&this.points.forEach(function(n){var t=n.graphic;t&&t.width&&(this.hasRendered||t.attr({x:n.plotX,y:n.plotY,width:1,height:1}),t.animate(this.markerAttribs(n),this.options.animation))},this)},i.prototype.getRadii=function(n,t,i){var u=this.zData,o=this.yData,s=i.minPxSize,h=i.maxPxSize,f=[],r=0,e;for(i=u.length;r<i;r++)e=u[r],f.push(this.getRadius(n,t,s,h,e,o[r]));this.radii=f},i.prototype.getRadius=function(n,t,i,r,u,f){var o=this.options,l="width"!==o.sizeBy,h=o.zThreshold,c=t-n,e=.5;if(null===f||null===u)return null;if(s(u)){if(o.sizeByAbsoluteValue&&(u=Math.abs(u-h),c=Math.max(t-h,Math.abs(n-h)),n=0),u<n)return i/2-1;0<c&&(e=(u-n)/c)}return l&&0<=e&&(e=Math.sqrt(e)),Math.ceil(i+e*(r-i))/2},i.prototype.hasData=function(){return!!this.processedXData.length},i.prototype.pointAttribs=function(n,t){var i=this.options.marker.fillOpacity;return n=f.prototype.pointAttribs.call(this,n,t),1!==i&&(n.fill=y(n.fill).setOpacity(i).get("rgba")),n},i.prototype.translate=function(){var r,u=this.data,f=this.radii,i,t;for(n.prototype.translate.call(this),r=u.length;r--;)i=u[r],t=f?f[r]:0,s(t)&&t>=this.minPxSize/2?(i.marker=a(i.marker,{radius:t,width:2*t,height:2*t}),i.dlBox={x:i.plotX-t,y:i.plotY-t,width:2*t,height:2*t}):i.shapeArgs=i.plotY=i.dlBox=void 0},i.compose=t.compose,i.defaultOptions=k(l.defaultOptions,{dataLabels:{formatter:function(){var t=this.series.chart.numberFormatter,n=this.point.z;return s(n)?t(n,-1):""},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"}),i}(l),a(o.prototype,{alignDataLabel:u.prototype.alignDataLabel,applyZones:r,bubblePadding:!0,buildKDTree:r,directTouch:!0,isBubble:!0,pointArrayMap:["y","z"],pointClass:i,parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",zoneAxis:"z"}),n.prototype.beforePadding=function(){var n=this,t=this.len,e=this.chart,r=0,i=t,o=this.isXAxis,k=o?"xData":"yData",h=this.min,u={},g=Math.min(e.plotWidth,e.plotHeight),l=Number.MAX_VALUE,a=-Number.MAX_VALUE,v=this.max-h,f=t/v,y=[];this.series.forEach(function(t){var i=t.options;t.bubblePadding&&(t.visible||!e.options.chart.ignoreHiddenSeries)&&(n.allowZoomOutside=!0,y.push(t),o&&(["minSize","maxSize"].forEach(function(n){var t=i[n],r=/%$/.test(t);t=d(t);u[n]=r?g*t/100:t}),t.minPxSize=u.minSize,t.maxPxSize=Math.max(u.maxSize,u.minSize),t=t.zData.filter(s),t.length&&(l=c(i.zMin,b(w(t),!1===i.displayNegative?i.zThreshold:-Number.MAX_VALUE,l)),a=c(i.zMax,Math.max(a,p(t))))))});y.forEach(function(t){var e=t[k],u=e.length,c;if(o&&t.getRadii(l,a,t),0<v)for(;u--;)s(e[u])&&n.dataMin<=e[u]&&e[u]<=n.max&&(c=t.radii?t.radii[u]:0,r=Math.min((e[u]-h)*f-c,r),i=Math.max((e[u]-h)*f+c,i))});y.length&&0<v&&!this.logarithmic&&(i-=t,f*=(t+Math.max(0,r)-Math.min(i,t))/t,[["min","userMin",r],["max","userMax",i]].forEach(function(t){"undefined"==typeof c(n.options[t[0]],n[t[1]])&&(n[t[0]]+=t[2]/f)}))},e.registerSeriesType("bubble",o),o});t(n,"Series/ColumnRange/ColumnRangePoint.js",[n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t){var f=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),i=n.seriesTypes,r,u;return n=i.column.prototype.pointClass,r=t.extend,u=t.isNumber,t=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.series=void 0,t.options=void 0,t.barX=void 0,t.pointWidth=void 0,t.shapeType=void 0,t}return f(t,n),t.prototype.isValid=function(){return u(this.low)},t}(i.arearange.prototype.pointClass),r(t.prototype,{setState:n.prototype.setState}),t});t(n,"Series/ColumnRange/ColumnRangeSeries.js",[n["Series/ColumnRange/ColumnRangePoint.js"],n["Core/Globals.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r){var l=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),c;t=t.noop;var f=i.seriesTypes,e=f.arearange,o=f.column,u=o.prototype,a=e.prototype,s=r.clamp,h=r.merge,v=r.pick;return r=r.extend,c={pointRange:null,marker:null,states:{hover:{halo:!1}}},f=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.points=void 0,t.options=void 0,t}return l(t,n),t.prototype.setOptions=function(){return h(!0,arguments[0],{stacking:void 0}),a.setOptions.apply(this,arguments)},t.prototype.translate=function(){var n=this,i=n.yAxis,r=n.xAxis,h=r.startAngleRad,e,t=n.chart,c=n.xAxis.isRadial,f=Math.max(t.chartWidth,t.chartHeight)+999,o;u.translate.apply(n);n.points.forEach(function(u){var a=u.shapeArgs||{},y=n.options.minPointLength,p,l;u.plotHigh=o=s(i.translate(u.high,0,1,0,1),-f,f);u.plotLow=s(u.plotY,-f,f);p=o;l=v(u.rectPlotY,u.plotY)-o;Math.abs(l)<y?(y-=l,l+=y,p-=y/2):0>l&&(l*=-1,p-=l);c?(e=u.barX+h,u.shapeType="arc",u.shapeArgs=n.polarArc(p+l,p,e,e+u.pointWidth)):(a.height=l,a.y=p,y=a.x,y=void 0===y?0:y,a=a.width,a=void 0===a?0:a,u.tooltipPos=t.inverted?[i.len+i.pos-t.plotLeft-p-l/2,r.len+r.pos-t.plotTop-y-a/2,l]:[r.left-t.plotLeft+y+a/2,i.pos-t.plotTop+p+l/2,l])})},t.prototype.crispCol=function(){return u.crispCol.apply(this,arguments)},t.prototype.drawPoints=function(){return u.drawPoints.apply(this,arguments)},t.prototype.drawTracker=function(){return u.drawTracker.apply(this,arguments)},t.prototype.getColumnMetrics=function(){return u.getColumnMetrics.apply(this,arguments)},t.prototype.pointAttribs=function(){return u.pointAttribs.apply(this,arguments)},t.prototype.adjustForMissingColumns=function(){return u.adjustForMissingColumns.apply(this,arguments)},t.prototype.animate=function(){return u.animate.apply(this,arguments)},t.prototype.translate3dPoints=function(){return u.translate3dPoints.apply(this,arguments)},t.prototype.translate3dShapes=function(){return u.translate3dShapes.apply(this,arguments)},t.defaultOptions=h(o.defaultOptions,e.defaultOptions,c),t}(e),r(f.prototype,{directTouch:!0,trackerGroups:["group","dataLabelsGroup"],drawGraph:t,getSymbol:t,polarArc:function(){return u.polarArc.apply(this,arguments)},pointClass:n}),i.registerSeriesType("columnrange",f),f});t(n,"Series/ColumnPyramid/ColumnPyramidSeries.js",[n["Series/Column/ColumnSeries.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i){var u=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),f=n.prototype,e=i.clamp,o=i.merge,r=i.pick;return i=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.data=void 0,n.options=void 0,n.points=void 0,n}return u(i,t),i.prototype.translate=function(){var n=this,t=n.chart,u=n.options,h=n.dense=2>n.closestPointRange*n.xAxis.transA;h=n.borderWidth=r(u.borderWidth,h?0:1);var i=n.yAxis,c=u.threshold,o=n.translatedThreshold=i.getThreshold(c),s=r(u.minPointLength,5),a=n.getColumnMetrics(),v=a.width,l=n.barW=Math.max(v,1+2*h),y=n.pointXOffset=a.offset;t.inverted&&(o-=.5);u.pointPadding&&(l=Math.ceil(l));f.translate.apply(n);n.points.forEach(function(f){var p=r(f.yBottom,o),w=999+Math.abs(p),h=e(f.plotY,-w,i.len+w),a,k,b,d,g,nt,tt,it;w=f.plotX+y;a=l/2;k=Math.min(h,p);p=Math.max(h,p)-k;f.barX=w;f.pointWidth=v;f.tooltipPos=t.inverted?[i.len+i.pos-t.plotLeft-h,n.xAxis.len-w-a,p]:[w+a,h+i.pos-t.plotTop,p];h=c+(f.total||f.y);"percent"===u.stacking&&(h=c+(0>f.y)?-100:100);h=i.toPixels(h,!0);d=(b=t.plotHeight-h-(t.plotHeight-o))?a*(k-h)/b:0;g=b?a*(k+p-h)/b:0;b=w-d+a;d=w+d+a;nt=w+g+a;g=w-g+a;tt=k-s;it=k+p;0>f.y&&(tt=k,it=k+p+s);t.inverted&&(nt=t.plotWidth-k,b=h-(t.plotWidth-o),d=a*(h-nt)/b,g=a*(h-(nt-p))/b,b=w+a+d,d=b-2*d,nt=w-g+a,g=w+g+a,tt=k,it=k+p-s,0>f.y&&(it=k+p+s));f.shapeType="path";f.shapeArgs={x:b,y:tt,width:d-b,height:p,d:[["M",b,tt],["L",d,tt],["L",nt,it],["L",g,it],["Z"]]}})},i.defaultOptions=o(n.defaultOptions,{}),i}(n),t.registerSeriesType("columnpyramid",i),i});t(n,"Series/ErrorBar/ErrorBarSeries.js",[n["Series/BoxPlot/BoxPlotSeries.js"],n["Series/Column/ColumnSeries.js"],n["Core/Color/Palette.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u){var o=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),e=r.seriesTypes.arearange,s=u.merge,f;return u=u.extend,f=function(r){function u(){var n=null!==r&&r.apply(this,arguments)||this;return n.data=void 0,n.options=void 0,n.points=void 0,n}return o(u,r),u.prototype.getColumnMetrics=function(){return this.linkedParent&&this.linkedParent.columnMetrics||t.prototype.getColumnMetrics.call(this)},u.prototype.drawDataLabels=function(){var n=this.pointValKey;e&&(e.prototype.drawDataLabels.call(this),this.data.forEach(function(t){t.y=t[n]}))},u.prototype.toYData=function(n){return[n.low,n.high]},u.defaultOptions=s(n.defaultOptions,{color:i.neutralColor100,grouping:!1,linkedTo:":previous",tooltip:{pointFormat:'<span style="color:{point.color}">●<\/span> {series.name}: <b>{point.low}<\/b> - <b>{point.high}<\/b><br/>'},whiskerWidth:null}),u}(n),u(f.prototype,{pointArrayMap:["low","high"],pointValKey:"high",doQuartiles:!1}),r.registerSeriesType("errorbar",f),f});t(n,"Series/Gauge/GaugePoint.js",[n["Core/Series/SeriesRegistry.js"]],function(n){var t=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();return function(n){function i(){var t=null!==n&&n.apply(this,arguments)||this;return t.options=void 0,t.series=void 0,t.shapeArgs=void 0,t}return t(i,n),i.prototype.setState=function(n){this.state=n},i}(n.series.prototype.pointClass)});t(n,"Series/Gauge/GaugeSeries.js",[n["Series/Gauge/GaugePoint.js"],n["Core/Globals.js"],n["Core/Color/Palette.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u){var c=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();t=t.noop;var e=r.series,l=r.seriesTypes.column,a=u.clamp,h=u.isNumber,v=u.extend,o=u.merge,f=u.pick,s=u.pInt;return u=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.points=void 0,t.options=void 0,t.yAxis=void 0,t}return c(t,n),t.prototype.translate=function(){var n=this.yAxis,i=this.options,t=n.center;this.generatePoints();this.points.forEach(function(r){var u=o(i.dial,r.dial),l=s(f(u.radius,"80%"))*t[2]/200,y=s(f(u.baseLength,"70%"))*l/100,p=s(f(u.rearLength,"10%"))*l/100,v=u.baseWidth||3,w=u.topWidth||1,e=i.overshoot,c=n.startAngleRad+n.translate(r.y,null,null,null,!0);(h(e)||!1===i.wrap)&&(e=h(e)?e/180*Math.PI:0,c=a(c,n.startAngleRad-e,n.endAngleRad+e));c=180*c/Math.PI;r.shapeType="path";r.shapeArgs={d:u.path||[["M",-p,-v/2],["L",y,-v/2],["L",l,-w/2],["L",l,w/2],["L",y,v/2],["L",-p,v/2],["Z"]],translateX:t[0],translateY:t[1],rotation:c};r.plotX=t[0];r.plotY=t[1]})},t.prototype.drawPoints=function(){var n=this,u=n.chart,t=n.yAxis.center,e=n.pivot,s=n.options,r=s.pivot,h=u.renderer;n.points.forEach(function(t){var f=t.graphic,r=t.shapeArgs,c=r.d,e=o(s.dial,t.dial);f?(f.animate(r),r.d=c):t.graphic=h[t.shapeType](r).attr({rotation:r.rotation,zIndex:1}).addClass("highcharts-dial").add(n.group);u.styledMode||t.graphic[f?"animate":"attr"]({stroke:e.borderColor||"none","stroke-width":e.borderWidth||0,fill:e.backgroundColor||i.neutralColor100})});e?e.animate({translateX:t[0],translateY:t[1]}):(n.pivot=h.circle(0,0,f(r.radius,5)).attr({zIndex:2}).addClass("highcharts-pivot").translate(t[0],t[1]).add(n.group),u.styledMode||n.pivot.attr({"stroke-width":r.borderWidth||0,stroke:r.borderColor||i.neutralColor20,fill:r.backgroundColor||i.neutralColor100}))},t.prototype.animate=function(n){var t=this;n||t.points.forEach(function(n){var i=n.graphic;i&&(i.attr({rotation:180*t.yAxis.startAngleRad/Math.PI}),i.animate({rotation:n.shapeArgs.rotation},t.options.animation))})},t.prototype.render=function(){this.group=this.plotGroup("group","series",this.visible?"visible":"hidden",this.options.zIndex,this.chart.seriesGroup);e.prototype.render.call(this);this.group.clip(this.chart.clipRect)},t.prototype.setData=function(n,t){e.prototype.setData.call(this,n,!1);this.processData();this.generatePoints();f(t,!0)&&this.chart.redraw()},t.prototype.hasData=function(){return!!this.points.length},t.defaultOptions=o(e.defaultOptions,{dataLabels:{borderColor:i.neutralColor20,borderRadius:3,borderWidth:1,crop:!1,defer:!1,enabled:!0,verticalAlign:"top",y:15,zIndex:2},dial:{},pivot:{},tooltip:{headerFormat:""},showInLegend:!1}),t}(e),v(u.prototype,{angular:!0,directTouch:!0,drawGraph:t,drawTracker:l.prototype.drawTracker,fixedBox:!0,forceDL:!0,noSharedTooltip:!0,pointClass:n,trackerGroups:["group","dataLabelsGroup"]}),r.registerSeriesType("gauge",u),u});t(n,"Series/PackedBubble/PackedBubblePoint.js",[n["Core/Chart/Chart.js"],n["Core/Series/Point.js"],n["Core/Series/SeriesRegistry.js"]],function(n,t,i){var r=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();return function(i){function u(){var n=null!==i&&i.apply(this,arguments)||this;return n.degree=NaN,n.mass=NaN,n.radius=NaN,n.options=void 0,n.series=void 0,n.value=null,n}return r(u,i),u.prototype.destroy=function(){return this.series.layout&&this.series.layout.removeElementFromCollection(this,this.series.layout.nodes),t.prototype.destroy.apply(this,arguments)},u.prototype.firePointEvent=function(){var n=this.series.options,i;this.isParentNode&&n.parentNode?(i=n.allowPointSelect,n.allowPointSelect=n.parentNode.allowPointSelect,t.prototype.firePointEvent.apply(this,arguments),n.allowPointSelect=i):t.prototype.firePointEvent.apply(this,arguments)},u.prototype.select=function(){var i=this.series.chart;this.isParentNode?(i.getSelectedPoints=i.getSelectedParentNodes,t.prototype.select.apply(this,arguments),i.getSelectedPoints=n.prototype.getSelectedPoints):t.prototype.select.apply(this,arguments)},u}(i.seriesTypes.bubble.prototype.pointClass)});t(n,"Series/Networkgraph/DraggableNodes.js",[n["Core/Chart/Chart.js"],n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t,i){var r=i.addEvent;t.dragNodesMixin={onMouseDown:function(n,t){t=this.chart.pointer.normalize(t);n.fixedPosition={chartX:t.chartX,chartY:t.chartY,plotX:n.plotX,plotY:n.plotY};n.inDragMode=!0},onMouseMove:function(n,t){var r,i;if(n.fixedPosition&&n.inDragMode){r=this.chart;i=r.pointer.normalize(t);t=n.fixedPosition.chartX-i.chartX;i=n.fixedPosition.chartY-i.chartY;var u=void 0,f=void 0,e=r.graphLayoutsLookup;(5<Math.abs(t)||5<Math.abs(i))&&(u=n.fixedPosition.plotX-t,f=n.fixedPosition.plotY-i,r.isInsidePlot(u,f)&&(n.plotX=u,n.plotY=f,n.hasDragged=!0,this.redrawHalo(n),e.forEach(function(n){n.restartSimulation()})))}},onMouseUp:function(n){n.fixedPosition&&(n.hasDragged&&(this.layout.enableSimulation?this.layout.start():this.chart.redraw()),n.inDragMode=n.hasDragged=!1,this.options.fixedDraggable||delete n.fixedPosition)},redrawHalo:function(n){n&&this.halo&&this.halo.attr({d:n.haloPath(this.options.states.hover.halo.size)})}};r(n,"load",function(){var n=this,t,i,u;n.container&&(t=r(n.container,"mousedown",function(t){var f=n.hoverPoint;f&&f.series&&f.series.hasDraggableNodes&&f.series.options.draggable&&(f.series.onMouseDown(f,t),i=r(n.container,"mousemove",function(n){return f&&f.series&&f.series.onMouseMove(f,n)}),u=r(n.container.ownerDocument,"mouseup",function(n){return i(),u(),f&&f.series&&f.series.onMouseUp(f,n)}))}));r(n,"destroy",function(){t()})})});t(n,"Series/Networkgraph/Integrations.js",[n["Core/Globals.js"]],function(n){n.networkgraphIntegrations={verlet:{attractiveForceFunction:function(n,t){return(t-n)/n},repulsiveForceFunction:function(n,t){return(t-n)/n*(t>n?1:0)},barycenter:function(){var i=this.options.gravitationalConstant,n=this.barycenter.xFactor,t=this.barycenter.yFactor;n=(n-(this.box.left+this.box.width)/2)*i;t=(t-(this.box.top+this.box.height)/2)*i;this.nodes.forEach(function(i){i.fixedPosition||(i.plotX-=n/i.mass/i.degree,i.plotY-=t/i.mass/i.degree)})},repulsive:function(n,t,i){t=t*this.diffTemperature/n.mass/n.degree;n.fixedPosition||(n.plotX+=i.x*t,n.plotY+=i.y*t)},attractive:function(n,t,i){var r=n.getMass(),u=-i.x*t*this.diffTemperature;t=-i.y*t*this.diffTemperature;n.fromNode.fixedPosition||(n.fromNode.plotX-=u*r.fromNode/n.fromNode.degree,n.fromNode.plotY-=t*r.fromNode/n.fromNode.degree);n.toNode.fixedPosition||(n.toNode.plotX+=u*r.toNode/n.toNode.degree,n.toNode.plotY+=t*r.toNode/n.toNode.degree)},integrate:function(n,t){var i=-n.options.friction,f=n.options.maxSpeed,r=(t.plotX+t.dispX-t.prevX)*i,u,e;i*=t.plotY+t.dispY-t.prevY;u=Math.abs;e=u(r)/(r||1);u=u(i)/(i||1);r=e*Math.min(f,Math.abs(r));i=u*Math.min(f,Math.abs(i));t.prevX=t.plotX+t.dispX;t.prevY=t.plotY+t.dispY;t.plotX+=r;t.plotY+=i;t.temperature=n.vectorLength({x:r,y:i})},getK:function(n){return Math.pow(n.box.width*n.box.height/n.nodes.length,.5)}},euler:{attractiveForceFunction:function(n,t){return n*n/t},repulsiveForceFunction:function(n,t){return t*t/n},barycenter:function(){var n=this.options.gravitationalConstant,t=this.barycenter.xFactor,i=this.barycenter.yFactor;this.nodes.forEach(function(r){if(!r.fixedPosition){var u=r.getDegree();u*=1+u/2;r.dispX+=(t-r.plotX)*n*u/r.degree;r.dispY+=(i-r.plotY)*n*u/r.degree}})},repulsive:function(n,t,i,r){n.dispX+=i.x/r*t/n.degree;n.dispY+=i.y/r*t/n.degree},attractive:function(n,t,i,r){var u=n.getMass(),f=i.x/r*t;t*=i.y/r;n.fromNode.fixedPosition||(n.fromNode.dispX-=f*u.fromNode/n.fromNode.degree,n.fromNode.dispY-=t*u.fromNode/n.fromNode.degree);n.toNode.fixedPosition||(n.toNode.dispX+=f*u.toNode/n.toNode.degree,n.toNode.dispY+=t*u.toNode/n.toNode.degree)},integrate:function(n,t){t.dispX+=t.dispX*n.options.friction;t.dispY+=t.dispY*n.options.friction;var i=t.temperature=n.vectorLength({x:t.dispX,y:t.dispY});0!==i&&(t.plotX+=t.dispX/i*Math.min(Math.abs(t.dispX),n.temperature),t.plotY+=t.dispY/i*Math.min(Math.abs(t.dispY),n.temperature))},getK:function(n){return Math.pow(n.box.width*n.box.height/n.nodes.length,.3)}}}});t(n,"Series/Networkgraph/QuadTree.js",[n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t){t=t.extend;var i=n.QuadTreeNode=function(n){this.box=n;this.boxSize=Math.min(n.width,n.height);this.nodes=[];this.body=this.isInternal=!1;this.isEmpty=!0};t(i.prototype,{insert:function(n,t){this.isInternal?this.nodes[this.getBoxPosition(n)].insert(n,t-1):(this.isEmpty=!1,this.body?t?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,t-1),this.body=!0),this.nodes[this.getBoxPosition(n)].insert(n,t-1)):(t=new i({top:n.plotX,left:n.plotY,width:.1,height:.1}),t.body=n,t.isInternal=!1,this.nodes.push(t)):(this.isInternal=!1,this.body=n))},updateMassAndCenter:function(){var n=0,t=0,i=0;this.isInternal?(this.nodes.forEach(function(r){r.isEmpty||(n+=r.mass,t+=r.plotX*r.mass,i+=r.plotY*r.mass)}),t/=n,i/=n):this.body&&(n=this.body.mass,t=this.body.plotX,i=this.body.plotY);this.mass=n;this.plotX=t;this.plotY=i},divideBox:function(){var n=this.box.width/2,t=this.box.height/2;this.nodes[0]=new i({left:this.box.left,top:this.box.top,width:n,height:t});this.nodes[1]=new i({left:this.box.left+n,top:this.box.top,width:n,height:t});this.nodes[2]=new i({left:this.box.left+n,top:this.box.top+t,width:n,height:t});this.nodes[3]=new i({left:this.box.left,top:this.box.top+t,width:n,height:t})},getBoxPosition:function(n){var t=n.plotY<this.box.top+this.box.height/2;return n.plotX<this.box.left+this.box.width/2?t?0:3:t?1:2}});n=n.QuadTree=function(n,t,r,u){this.box={left:n,top:t,width:r,height:u};this.maxDepth=25;this.root=new i(this.box,"0");this.root.isInternal=!0;this.root.isRoot=!0;this.root.divideBox()};t(n.prototype,{insertNodes:function(n){n.forEach(function(n){this.root.insert(n,this.maxDepth)},this)},visitNodeRecursive:function(n,t,i){var r;n||(n=this.root);n===this.root&&t&&(r=t(n));!1!==r&&(n.nodes.forEach(function(n){if(n.isInternal){if(t&&(r=t(n)),!1===r)return;this.visitNodeRecursive(n,t,i)}else n.body&&t&&t(n.body);i&&i(n)},this),n===this.root&&i&&i(n))},calculateMassAndCenter:function(){this.visitNodeRecursive(null,null,function(n){n.updateMassAndCenter()})}})});t(n,"Series/Networkgraph/Layouts.js",[n["Core/Chart/Chart.js"],n["Core/Animation/AnimationUtilities.js"],n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t,i,r){var o=t.setAnimation;t=r.addEvent;var f=r.clamp,e=r.defined,s=r.extend,h=r.isFunction,u=r.pick;i.layouts={"reingold-fruchterman":function(){}};s(i.layouts["reingold-fruchterman"].prototype,{init:function(n){this.options=n;this.nodes=[];this.links=[];this.series=[];this.box={x:0,y:0,width:0,height:0};this.setInitialRendering(!0);this.integration=i.networkgraphIntegrations[n.integration];this.enableSimulation=n.enableSimulation;this.attractiveForce=u(n.attractiveForce,this.integration.attractiveForceFunction);this.repulsiveForce=u(n.repulsiveForce,this.integration.repulsiveForceFunction);this.approximation=n.approximation},updateSimulation:function(n){this.enableSimulation=u(n,this.options.enableSimulation)},start:function(){var n=this.series,t=this.options;this.currentStep=0;this.forces=n[0]&&n[0].forces||[];this.chart=n[0]&&n[0].chart;this.initialRendering&&(this.initPositions(),n.forEach(function(n){n.finishedAnimating=!0;n.render()}));this.setK();this.resetSimulation(t);this.enableSimulation&&this.step()},step:function(){var n=this,t=this.series;n.currentStep++;"barnes-hut"===n.approximation&&(n.createQuadTree(),n.quadTree.calculateMassAndCenter());n.forces.forEach(function(t){n[t+"Forces"](n.temperature)});n.applyLimits(n.temperature);n.temperature=n.coolDown(n.startTemperature,n.diffTemperature,n.currentStep);n.prevSystemTemperature=n.systemTemperature;n.systemTemperature=n.getSystemTemperature();n.enableSimulation&&(t.forEach(function(n){n.chart&&n.render()}),n.maxIterations--&&isFinite(n.temperature)&&!n.isStable()?(n.simulation&&i.win.cancelAnimationFrame(n.simulation),n.simulation=i.win.requestAnimationFrame(function(){n.step()})):n.simulation=!1)},stop:function(){this.simulation&&i.win.cancelAnimationFrame(this.simulation)},setArea:function(n,t,i,r){this.box={left:n,top:t,width:i,height:r}},setK:function(){this.k=this.options.linkLength||this.integration.getK(this)},addElementsToCollection:function(n,t){n.forEach(function(n){-1===t.indexOf(n)&&t.push(n)})},removeElementFromCollection:function(n,t){n=t.indexOf(n);-1!==n&&t.splice(n,1)},clear:function(){this.nodes.length=0;this.links.length=0;this.series.length=0;this.resetSimulation()},resetSimulation:function(){this.forcedStop=!1;this.systemTemperature=0;this.setMaxIterations();this.setTemperature();this.setDiffTemperature()},restartSimulation:function(){this.simulation?this.resetSimulation():(this.setInitialRendering(!1),this.enableSimulation?this.start():this.setMaxIterations(1),this.chart&&this.chart.redraw(),this.setInitialRendering(!0))},setMaxIterations:function(n){this.maxIterations=u(n,this.options.maxIterations)},setTemperature:function(){this.temperature=this.startTemperature=Math.sqrt(this.nodes.length)},setDiffTemperature:function(){this.diffTemperature=this.startTemperature/(this.options.maxIterations+1)},setInitialRendering:function(n){this.initialRendering=n},createQuadTree:function(){this.quadTree=new i.QuadTree(this.box.left,this.box.top,this.box.width,this.box.height);this.quadTree.insertNodes(this.nodes)},initPositions:function(){var n=this.options.initialPositions;h(n)?(n.call(this),this.nodes.forEach(function(n){e(n.prevX)||(n.prevX=n.plotX);e(n.prevY)||(n.prevY=n.plotY);n.dispX=0;n.dispY=0})):"circle"===n?this.setCircularPositions():this.setRandomPositions()},setCircularPositions:function(){function i(t){t.linksFrom.forEach(function(t){e[t.toNode.id]||(e[t.toNode.id]=!0,n.push(t.toNode),i(t.toNode))})}var r=this.box,t=this.nodes,f=2*Math.PI/(t.length+1),s=t.filter(function(n){return 0===n.linksTo.length}),n=[],e={},o=this.options.initialPositionRadius;s.forEach(function(t){n.push(t);i(t)});n.length?t.forEach(function(t){-1===n.indexOf(t)&&n.push(t)}):n=t;n.forEach(function(n,t){n.plotX=n.prevX=u(n.plotX,r.width/2+o*Math.cos(t*f));n.plotY=n.prevY=u(n.plotY,r.height/2+o*Math.sin(t*f));n.dispX=0;n.dispY=0})},setRandomPositions:function(){function n(n){return n=n*n/Math.PI,n-Math.floor(n)}var t=this.box,i=this.nodes,r=i.length+1;i.forEach(function(i,f){i.plotX=i.prevX=u(i.plotX,t.width*n(f));i.plotY=i.prevY=u(i.plotY,t.height*n(r+f));i.dispX=0;i.dispY=0})},force:function(n){this.integration[n].apply(this,Array.prototype.slice.call(arguments,1))},barycenterForces:function(){this.getBarycenter();this.force("barycenter")},getBarycenter:function(){var n=0,t=0,i=0;return this.nodes.forEach(function(r){t+=r.plotX*r.mass;i+=r.plotY*r.mass;n+=r.mass}),this.barycenter={x:t,y:i,xFactor:t/n,yFactor:i/n}},barnesHutApproximation:function(n,t){var u=this.getDistXY(n,t),i=this.vectorLength(u),r,f;return n!==t&&0!==i&&(t.isInternal?t.boxSize/i<this.options.theta&&0!==i?(r=this.repulsiveForce(i,this.k),this.force("repulsive",n,r*t.mass,u,i),f=!1):f=!0:(r=this.repulsiveForce(i,this.k),this.force("repulsive",n,r*t.mass,u,i))),f},repulsiveForces:function(){var n=this;"barnes-hut"===n.approximation?n.nodes.forEach(function(t){n.quadTree.visitNodeRecursive(null,function(i){return n.barnesHutApproximation(t,i)})}):n.nodes.forEach(function(t){n.nodes.forEach(function(i){var u,r,f;t===i||t.fixedPosition||(u=n.getDistXY(t,i),r=n.vectorLength(u),0!==r&&(f=n.repulsiveForce(r,n.k),n.force("repulsive",t,f*i.mass,u,r)))})})},attractiveForces:function(){var n=this,i,t,r;n.links.forEach(function(u){u.fromNode&&u.toNode&&(i=n.getDistXY(u.fromNode,u.toNode),t=n.vectorLength(i),0!==t&&(r=n.attractiveForce(t,n.k),n.force("attractive",u,r,i,t)))})},applyLimits:function(){var n=this;n.nodes.forEach(function(t){t.fixedPosition||(n.integration.integrate(n,t),n.applyLimitBox(t,n.box),t.dispX=0,t.dispY=0)})},applyLimitBox:function(n,t){var i=n.radius;n.plotX=f(n.plotX,t.left+i,t.width-i);n.plotY=f(n.plotY,t.top+i,t.height-i)},coolDown:function(n,t,i){return n-t*i},isStable:function(){return 1e-5>Math.abs(this.systemTemperature-this.prevSystemTemperature)||0>=this.temperature},getSystemTemperature:function(){return this.nodes.reduce(function(n,t){return n+t.temperature},0)},vectorLength:function(n){return Math.sqrt(n.x*n.x+n.y*n.y)},getDistR:function(n,t){return n=this.getDistXY(n,t),this.vectorLength(n)},getDistXY:function(n,t){var i=n.plotX-t.plotX;return n=n.plotY-t.plotY,{x:i,y:n,absX:Math.abs(i),absY:Math.abs(n)}}});t(n,"predraw",function(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(function(n){n.stop()})});t(n,"render",function(){function i(i){i.maxIterations--&&isFinite(i.temperature)&&!i.isStable()&&!i.enableSimulation&&(i.beforeStep&&i.beforeStep(),i.step(),n=!1,t=!0)}var t=!1,n;if(this.graphLayoutsLookup){for(o(!1,this),this.graphLayoutsLookup.forEach(function(n){n.start()});!n;)n=!0,this.graphLayoutsLookup.forEach(i);t&&this.series.forEach(function(n){n&&n.layout&&n.render()})}});t(n,"beforePrint",function(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(function(n){n.updateSimulation(!1)}),this.redraw())});t(n,"afterPrint",function(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(function(n){n.updateSimulation()});this.redraw()})});t(n,"Series/PackedBubble/PackedBubbleComposition.js",[n["Core/Chart/Chart.js"],n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t,i){var r=t.layouts["reingold-fruchterman"],f=i.addEvent,e=i.extendClass,u=i.pick;n.prototype.getSelectedParentNodes=function(){var n=[];return this.series.forEach(function(t){t.parentNode&&t.parentNode.selected&&n.push(t.parentNode)}),n};t.networkgraphIntegrations.packedbubble={repulsiveForceFunction:function(n,t,i,r){return Math.min(n,(i.marker.radius+r.marker.radius)/2)},barycenter:function(){var n=this,u=n.options.gravitationalConstant,f=n.box,t=n.nodes,i,r;t.forEach(function(e){n.options.splitSeries&&!e.isParentNode?(i=e.series.parentNode.plotX,r=e.series.parentNode.plotY):(i=f.width/2,r=f.height/2);e.fixedPosition||(e.plotX-=(e.plotX-i)*u/(e.mass*Math.sqrt(t.length)),e.plotY-=(e.plotY-r)*u/(e.mass*Math.sqrt(t.length)))})},repulsive:function(n,t,i,r){var u=t*this.diffTemperature/n.mass/n.degree;t=i.x*u;i=i.y*u;n.fixedPosition||(n.plotX+=t,n.plotY+=i);r.fixedPosition||(r.plotX-=t,r.plotY-=i)},integrate:t.networkgraphIntegrations.verlet.integrate,getK:t.noop};t.layouts.packedbubble=e(r,{beforeStep:function(){this.options.marker&&this.series.forEach(function(n){n&&n.calculateParentRadius()})},isStable:function(){var n=Math.abs(this.prevSystemTemperature-this.systemTemperature);return 1>Math.abs(10*this.systemTemperature/Math.sqrt(this.nodes.length))&&1e-5>n||0>=this.temperature},setCircularPositions:function(){var n=this,r=n.box,f=n.nodes,e=2*Math.PI/(f.length+1),t,i,o=n.options.initialPositionRadius;f.forEach(function(f,s){n.options.splitSeries&&!f.isParentNode?(t=f.series.parentNode.plotX,i=f.series.parentNode.plotY):(t=r.width/2,i=r.height/2);f.plotX=f.prevX=u(f.plotX,t+o*Math.cos(f.index||s*e));f.plotY=f.prevY=u(f.plotY,i+o*Math.sin(f.index||s*e));f.dispX=0;f.dispY=0})},repulsiveForces:function(){var n=this,i,t,r,u=n.options.bubblePadding;n.nodes.forEach(function(f){f.degree=f.mass;f.neighbours=0;n.nodes.forEach(function(e){i=0;f===e||f.fixedPosition||!n.options.seriesInteraction&&f.series!==e.series||(r=n.getDistXY(f,e),t=n.vectorLength(r)-(f.marker.radius+e.marker.radius+u),0>t&&(f.degree+=.01,f.neighbours++,i=n.repulsiveForce(-t/Math.sqrt(f.neighbours),n.k,f,e)),n.force("repulsive",f,i*e.mass,r,e,t))})})},applyLimitBox:function(n){if(this.options.splitSeries&&!n.isParentNode&&this.options.parentNodeLimit){var t=this.getDistXY(n,n.series.parentNode),i=n.series.parentNodeRadius-n.marker.radius-this.vectorLength(t);0>i&&i>-2*n.marker.radius&&(n.plotX-=.01*t.x,n.plotY-=.01*t.y)}r.prototype.applyLimitBox.apply(this,arguments)}});f(n,"beforeRedraw",function(){this.allDataPoints&&delete this.allDataPoints})});t(n,"Series/PackedBubble/PackedBubbleSeries.js",[n["Core/Color/Color.js"],n["Core/Globals.js"],n["Series/PackedBubble/PackedBubblePoint.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u){var p=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),w=n.parse,f=r.series,l=r.seriesTypes.bubble,b=u.addEvent,a=u.clamp,e=u.defined,v=u.extend,k=u.fireEvent,y=u.isArray,h=u.isNumber,o=u.merge,c=u.pick,s=t.dragNodesMixin;return n=function(n){function i(){var t=null!==n&&n.apply(this,arguments)||this;return t.chart=void 0,t.data=void 0,t.layout=void 0,t.options=void 0,t.points=void 0,t.xData=void 0,t}return p(i,n),i.prototype.accumulateAllPoints=function(n){for(var r=n.chart,u=[],t,i=0;i<r.series.length;i++)if(n=r.series[i],n.is("packedbubble")&&n.visible||!r.options.chart.ignoreHiddenSeries)for(t=0;t<n.yData.length;t++)u.push([null,null,n.yData[t],n.index,t,{id:t,marker:{radius:0}}]);return u},i.prototype.addLayout=function(){var i=this.options.layoutAlgorithm,r=this.chart.graphLayoutsStorage,u=this.chart.graphLayoutsLookup,f=this.chart.options.chart,n;r||(this.chart.graphLayoutsStorage=r={},this.chart.graphLayoutsLookup=u=[]);n=r[i.type];n||(i.enableSimulation=e(f.forExport)?!f.forExport:i.enableSimulation,r[i.type]=n=new t.layouts[i.type],n.init(i),u.splice(n.index,0,n));this.layout=n;this.points.forEach(function(n){n.mass=2;n.degree=1;n.collisionNmb=1});n.setArea(0,0,this.chart.plotWidth,this.chart.plotHeight);n.addElementsToCollection([this],n.series);n.addElementsToCollection(this.points,n.nodes)},i.prototype.addSeriesLayout=function(){var i=this.options.layoutAlgorithm,r=this.chart.graphLayoutsStorage,u=this.chart.graphLayoutsLookup,f=o(i,i.parentNodeOptions,{enableSimulation:this.layout.options.enableSimulation}),n=r[i.type+"-series"];n||(r[i.type+"-series"]=n=new t.layouts[i.type],n.init(f),u.splice(n.index,0,n));this.parentNodeLayout=n;this.createParentNodes()},i.prototype.calculateParentRadius=function(){var n=this.seriesBox();this.parentNodeRadius=a(Math.sqrt(2*this.parentNodeMass/Math.PI)+20,20,n?Math.max(Math.sqrt(Math.pow(n.width,2)+Math.pow(n.height,2))/2+20,20):Math.sqrt(2*this.parentNodeMass/Math.PI)+20);this.parentNode&&(this.parentNode.marker.radius=this.parentNode.radius=this.parentNodeRadius)},i.prototype.calculateZExtremes=function(){var n=this.options.zMin,t=this.options.zMax,i=Infinity,r=-Infinity;return n&&t?[n,t]:(this.chart.series.forEach(function(n){n.yData.forEach(function(n){e(n)&&(n>r&&(r=n),n<i&&(i=n))})}),n=c(n,i),t=c(t,r),[n,t])},i.prototype.checkOverlap=function(n,t){var i=n[0]-t[0],r=n[1]-t[1];return-.001>Math.sqrt(i*i+r*r)-Math.abs(n[2]+t[2])},i.prototype.createParentNodes=function(){var n=this,r=n.chart,t=n.parentNodeLayout,u,i=n.parentNode,f=n.pointClass;n.parentNodeMass=0;n.points.forEach(function(t){n.parentNodeMass+=Math.PI*Math.pow(t.marker.radius,2)});n.calculateParentRadius();t.nodes.forEach(function(t){t.seriesIndex===n.index&&(u=!0)});t.setArea(0,0,r.plotWidth,r.plotHeight);u||(i||(i=(new f).init(this,{mass:n.parentNodeRadius/2,marker:{radius:n.parentNodeRadius},dataLabels:{inside:!1},dataLabelOnNull:!0,degree:n.parentNodeRadius,isParentNode:!0,seriesIndex:n.index})),n.parentNode&&(i.plotX=n.parentNode.plotX,i.plotY=n.parentNode.plotY),n.parentNode=i,t.addElementsToCollection([n],t.series),t.addElementsToCollection([i],t.nodes))},i.prototype.deferLayout=function(){var n=this.options.layoutAlgorithm;this.visible&&(this.addLayout(),n.splitSeries&&this.addSeriesLayout())},i.prototype.destroy=function(){this.chart.graphLayoutsLookup&&this.chart.graphLayoutsLookup.forEach(function(n){n.removeElementFromCollection(this,n.series)},this);this.parentNode&&this.parentNodeLayout&&(this.parentNodeLayout.removeElementFromCollection(this.parentNode,this.parentNodeLayout.nodes),this.parentNode.dataLabel&&(this.parentNode.dataLabel=this.parentNode.dataLabel.destroy()));f.prototype.destroy.apply(this,arguments)},i.prototype.drawDataLabels=function(){var n=this.options.dataLabels.textPath,t=this.points;f.prototype.drawDataLabels.apply(this,arguments);this.parentNode&&(this.parentNode.formatPrefix="parentNode",this.points=[this.parentNode],this.options.dataLabels.textPath=this.options.dataLabels.parentNodeTextPath,f.prototype.drawDataLabels.apply(this,arguments),this.points=t,this.options.dataLabels.textPath=n)},i.prototype.drawGraph=function(){if(this.layout&&this.layout.options.splitSeries){var t=this.chart,n=this.layout.options.parentNodeOptions.marker,i={fill:n.fillColor||w(this.color).brighten(.4).get(),opacity:n.fillOpacity,stroke:n.lineColor||this.color,"stroke-width":n.lineWidth};this.parentNodesGroup||(this.parentNodesGroup=this.plotGroup("parentNodesGroup","parentNode",this.visible?"inherit":"hidden",.1,t.seriesGroup),this.group.attr({zIndex:2}));this.calculateParentRadius();n=o({x:this.parentNode.plotX-this.parentNodeRadius,y:this.parentNode.plotY-this.parentNodeRadius,width:2*this.parentNodeRadius,height:2*this.parentNodeRadius},i);this.parentNode.graphic||(this.graph=this.parentNode.graphic=t.renderer.symbol(i.symbol).add(this.parentNodesGroup));this.parentNode.graphic.attr(n)}},i.prototype.drawTracker=function(){var t=this.parentNode,i;n.prototype.drawTracker.call(this);t&&(i=y(t.dataLabels)?t.dataLabels:t.dataLabel?[t.dataLabel]:[],t.graphic&&(t.graphic.element.point=t),i.forEach(function(n){n.div?n.div.point=t:n.element.point=t}))},i.prototype.getPointRadius=function(){var n=this,t=n.chart,f=n.options,h=f.useSimulation,v=Math.min(t.plotWidth,t.plotHeight),e={},c=[],i=t.allDataPoints,o,s,l,r,u;["minSize","maxSize"].forEach(function(n){var t=parseInt(f[n],10),r=/%$/.test(f[n]);e[n]=r?v*t/100:t*Math.sqrt(i.length)});t.minRadius=o=e.minSize/Math.sqrt(i.length);t.maxRadius=s=e.maxSize/Math.sqrt(i.length);u=h?n.calculateZExtremes():[o,s];(i||[]).forEach(function(t,f){l=h?a(t[2],u[0],u[1]):t[2];r=n.getRadius(u[0],u[1],o,s,l);0===r&&(r=null);i[f][2]=r;c.push(r)});n.radii=c},i.prototype.init=function(){return f.prototype.init.apply(this,arguments),this.eventsToUnbind.push(b(this,"updatedData",function(){this.chart.series.forEach(function(n){n.type===this.type&&(n.isDirty=!0)},this)})),this},i.prototype.onMouseUp=function(n){if(n.fixedPosition&&!n.removed){var i,r,t=this.layout,u=this.parentNodeLayout;u&&t.options.dragBetweenSeries&&u.nodes.forEach(function(u){n&&n.marker&&u!==n.series.parentNode&&(i=t.getDistXY(n,u),r=t.vectorLength(i)-u.marker.radius-n.marker.radius,0>r&&(u.series.addPoint(o(n.options,{plotX:n.plotX,plotY:n.plotY}),!1),t.removeElementFromCollection(n,t.nodes),n.remove()))});s.onMouseUp.apply(this,arguments)}},i.prototype.placeBubbles=function(n){var s=this.checkOverlap,o=this.positionBubble,t=[],i=1,u=0,f=0,e=[],r;if(n=n.sort(function(n,t){return t[2]-n[2]}),n.length){if(t.push([[0,0,n[0][2],n[0][3],n[0][4]]]),1<n.length)for(t.push([[0,0-n[1][2]-n[0][2],n[1][2],n[1][3],n[1][4]]]),r=2;r<n.length;r++)n[r][2]=n[r][2]||1,e=o(t[i][u],t[i-1][f],n[r]),s(e,t[i][0])?(t.push([]),f=0,t[i+1].push(o(t[i][u],t[i][0],n[r])),i++,u=0):1<i&&t[i-1][f+1]&&s(e,t[i-1][f+1])?(f++,t[i].push(o(t[i][u],t[i-1][f],n[r])),u++):(u++,t[i].push(e));this.chart.stages=t;this.chart.rawPositions=[].concat.apply([],t);this.resizeRadius();e=this.chart.rawPositions}return e},i.prototype.positionBubble=function(n,t,i){var r=Math.sqrt,f=Math.asin,e=Math.acos,u=Math.pow,o=Math.abs;return r=r(u(n[0]-t[0],2)+u(n[1]-t[1],2)),e=e((u(r,2)+u(i[2]+t[2],2)-u(i[2]+n[2],2))/(2*(i[2]+t[2])*r)),f=f(o(n[0]-t[0])/r),n=(0>n[1]-t[1]?0:Math.PI)+e+f*(0>(n[0]-t[0])*(n[1]-t[1])?1:-1),[t[0]+(t[2]+i[2])*Math.sin(n),t[1]-(t[2]+i[2])*Math.cos(n),i[2],i[3],i[4]]},i.prototype.render=function(){var n=[];f.prototype.render.apply(this,arguments);this.options.dataLabels.allowOverlap||(this.data.forEach(function(t){y(t.dataLabels)&&t.dataLabels.forEach(function(t){n.push(t)})}),this.options.useSimulation&&this.chart.hideOverlappingLabels(n))},i.prototype.resizeRadius=function(){for(var i=this.chart,t=i.rawPositions,r=Math.min,h=Math.max,c=i.plotLeft,l=i.plotTop,a=i.plotHeight,v=i.plotWidth,u,f,e=u=Number.POSITIVE_INFINITY,s=f=Number.NEGATIVE_INFINITY,o,n=0;n<t.length;n++)o=t[n][2],e=r(e,t[n][0]-o),s=h(s,t[n][0]+o),u=r(u,t[n][1]-o),f=h(f,t[n][1]+o);if(n=[s-e,f-u],r=r.apply([],[(v-c)/n[0],(a-l)/n[1]]),1e-10<Math.abs(r-1)){for(n=0;n<t.length;n++)t[n][2]*=r;this.placeBubbles(t)}else i.diffY=a/2+l-u-(f-u)/2,i.diffX=v/2+c-e-(s-e)/2},i.prototype.seriesBox=function(){var t=this.chart,r=Math.max,u=Math.min,i,n=[t.plotLeft,t.plotLeft+t.plotWidth,t.plotTop,t.plotTop+t.plotHeight];return this.data.forEach(function(t){e(t.plotX)&&e(t.plotY)&&t.marker.radius&&(i=t.marker.radius,n[0]=u(n[0],t.plotX-i),n[1]=r(n[1],t.plotX+i),n[2]=u(n[2],t.plotY-i),n[3]=r(n[3],t.plotY+i))}),h(n.width/n.height)?n:null},i.prototype.setVisible=function(){var n=this;f.prototype.setVisible.apply(n,arguments);n.parentNodeLayout&&n.graph?n.visible?(n.graph.show(),n.parentNode.dataLabel&&n.parentNode.dataLabel.show()):(n.graph.hide(),n.parentNodeLayout.removeElementFromCollection(n.parentNode,n.parentNodeLayout.nodes),n.parentNode.dataLabel&&n.parentNode.dataLabel.hide()):n.layout&&(n.visible?n.layout.addElementsToCollection(n.points,n.layout.nodes):n.points.forEach(function(t){n.layout.removeElementFromCollection(t,n.layout.nodes)}))},i.prototype.translate=function(){var n=this.chart,o=this.data,s=this.index,t,f=this.options.useSimulation,i,r,u;for(this.processedXData=this.xData,this.generatePoints(),e(n.allDataPoints)||(n.allDataPoints=this.accumulateAllPoints(this),this.getPointRadius()),f?i=n.allDataPoints:(i=this.placeBubbles(n.allDataPoints),this.options.draggable=!1),t=0;t<i.length;t++)i[t][3]===s&&(r=o[i[t][4]],u=c(i[t][2],void 0),f||(r.plotX=i[t][0]-n.plotLeft+n.diffX,r.plotY=i[t][1]-n.plotTop+n.diffY),h(u)&&(r.marker=v(r.marker,{radius:u,width:2*u,height:2*u}),r.radius=u));f&&this.deferLayout();k(this,"afterTranslate")},i.defaultOptions=o(l.defaultOptions,{minSize:"10%",maxSize:"50%",sizeBy:"area",zoneAxis:"y",crisp:!1,tooltip:{pointFormat:"Value: {point.value}"},draggable:!0,useSimulation:!0,parentNode:{allowPointSelect:!1},dataLabels:{formatter:function(){var t=this.series.chart.numberFormatter,n=this.point.value;return h(n)?t(n,-1):""},parentNodeFormatter:function(){return this.name},parentNodeTextPath:{enabled:!0},padding:0,style:{transition:"opacity 2000ms"}},layoutAlgorithm:{initialPositions:"circle",initialPositionRadius:20,bubblePadding:5,parentNodeLimit:!1,seriesInteraction:!0,dragBetweenSeries:!1,parentNodeOptions:{maxIterations:400,gravitationalConstant:.03,maxSpeed:50,initialPositionRadius:100,seriesInteraction:!0,marker:{fillColor:null,fillOpacity:1,lineWidth:1,lineColor:null,symbol:"circle"}},enableSimulation:!0,type:"packedbubble",integration:"packedbubble",maxIterations:1e3,splitSeries:!1,maxSpeed:5,gravitationalConstant:.01,friction:-.981}}),i}(l),v(n.prototype,{alignDataLabel:f.prototype.alignDataLabel,axisTypes:[],directTouch:!0,forces:["barycenter","repulsive"],hasDraggableNodes:!0,isCartesian:!1,noSharedTooltip:!0,onMouseDown:s.onMouseDown,onMouseMove:s.onMouseMove,pointArrayMap:["value"],pointClass:i,pointValKey:"value",redrawHalo:s.redrawHalo,requireSorting:!1,searchPoint:t.noop,trackerGroups:["group","dataLabelsGroup","parentNodesGroup"]}),r.registerSeriesType("packedbubble",n),n});t(n,"Series/Polygon/PolygonSeries.js",[n["Core/Globals.js"],n["Core/Legend/LegendSymbol.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r){var o=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),e;n=n.noop;var s=i.series,u=i.seriesTypes,h=u.area,c=u.line,f=u.scatter;return u=r.extend,e=r.merge,r=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.data=void 0,t.options=void 0,t.points=void 0,t}return o(t,n),t.prototype.getGraphPath=function(){for(var n=c.prototype.getGraphPath.call(this),t=n.length+1;t--;)(t===n.length||"M"===n[t][0])&&0<t&&n.splice(t,0,["Z"]);return this.areaPath=n},t.prototype.drawGraph=function(){this.options.fillColor=this.color;h.prototype.drawGraph.call(this)},t.defaultOptions=e(f.defaultOptions,{marker:{enabled:!1,states:{hover:{enabled:!1}}},stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:""},trackByArea:!0}),t}(f),u(r.prototype,{type:"polygon",drawLegendSymbol:t.drawRectangle,drawTracker:s.prototype.drawTracker,setStackedPoints:n}),i.registerSeriesType("polygon",r),r});t(n,"Core/Axis/WaterfallAxis.js",[n["Extensions/Stacking.js"],n["Core/Utilities.js"]],function(n,t){var i=t.addEvent,u=t.objectEach,r;return function(t){function f(){var n=this.waterfall.stacks;n&&(n.changed=!1,delete n.alreadyChanged)}function e(){var n=this.options.stackLabels;n&&n.enabled&&this.waterfall.stacks&&this.waterfall.renderStackTotals()}function o(){for(var i=this.axes,t=this.series,n=t.length;n--;)t[n].options.stacking&&(i.forEach(function(n){n.isXAxis||(n.waterfall.stacks.changed=!0)}),n=0)}function s(){this.waterfall||(this.waterfall=new r(this))}var r=function(){function t(n){this.axis=n;this.stacks={changed:!1}}return t.prototype.renderStackTotals=function(){var i=this.axis,r=i.waterfall.stacks,f=i.stacking&&i.stacking.stackTotalGroup,t=new n(i,i.options.stackLabels,!1,0,void 0);this.dummyStackItem=t;u(r,function(i){u(i,function(i){t.total=i.stackTotal;i.label&&(t.label=i.label);n.prototype.render.call(t,f);i.label=t.label;delete t.label})});t.total=null},t}();t.Composition=r;t.compose=function(n,t){i(n,"init",s);i(n,"afterBuildStacks",f);i(n,"afterRender",e);i(t,"beforeRedraw",o)}}(r||(r={})),r});t(n,"Series/Waterfall/WaterfallPoint.js",[n["Series/Column/ColumnSeries.js"],n["Core/Series/Point.js"],n["Core/Utilities.js"]],function(n,t,i){var r=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),u=i.isNumber;return function(n){function i(){var t=null!==n&&n.apply(this,arguments)||this;return t.options=void 0,t.series=void 0,t}return r(i,n),i.prototype.getClassName=function(){var n=t.prototype.getClassName.call(this);return this.isSum?n+=" highcharts-sum":this.isIntermediateSum&&(n+=" highcharts-intermediate-sum"),n},i.prototype.isValid=function(){return u(this.y)||this.isSum||!!this.isIntermediateSum},i}(n.prototype.pointClass)});t(n,"Series/Waterfall/WaterfallSeries.js",[n["Core/Axis/Axis.js"],n["Core/Chart/Chart.js"],n["Core/Color/Palette.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"],n["Core/Axis/WaterfallAxis.js"],n["Series/Waterfall/WaterfallPoint.js"]],function(n,t,i,r,u,f,e){var y=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),s=r.seriesTypes,o=s.column,c=s.line,l=u.arrayMax,a=u.arrayMin,h=u.correctFloat;s=u.extend;var p=u.isNumber,w=u.merge,v=u.objectEach,b=u.pick;return u=function(n){function t(){var t=null!==n&&n.apply(this,arguments)||this;return t.chart=void 0,t.data=void 0,t.options=void 0,t.points=void 0,t.stackedYNeg=void 0,t.stackedYPos=void 0,t.stackKey=void 0,t.xData=void 0,t.yAxis=void 0,t.yData=void 0,t}return y(t,n),t.prototype.generatePoints=function(){var i,n,t,r;for(o.prototype.generatePoints.apply(this),n=0,i=this.points.length;n<i;n++)t=this.points[n],r=this.processedYData[n],(t.isIntermediateSum||t.isSum)&&(t.y=h(r))},t.prototype.translate=function(){var c=this.options,u=this.yAxis,y=b(c.minPointLength,5),w=y/2,l=c.threshold||0,h=l,a=l,v,k,s,n,i,e;for(c=c.stacking,v=u.waterfall.stacks[this.stackKey],o.prototype.translate.apply(this),k=this.points,s=0;s<k.length;s++){var r=k[s],f=this.processedYData[s],t=r.shapeArgs;t&&p(f)&&(n=[0,f],i=r.y,c?v&&(n=v[s],"overlap"===c?(e=n.stackState[n.stateIndex--],e=0<=i?e:e-i,Object.hasOwnProperty.call(n,"absolutePos")&&delete n.absolutePos,Object.hasOwnProperty.call(n,"absoluteNeg")&&delete n.absoluteNeg):(0<=i?(e=n.threshold+n.posTotal,n.posTotal-=i):(e=n.threshold+n.negTotal,n.negTotal-=i,e-=i),!n.posTotal&&Object.hasOwnProperty.call(n,"absolutePos")&&(n.posTotal=n.absolutePos,delete n.absolutePos),!n.negTotal&&Object.hasOwnProperty.call(n,"absoluteNeg")&&(n.negTotal=n.absoluteNeg,delete n.absoluteNeg)),r.isSum||(n.connectorThreshold=n.threshold+n.stackTotal),u.reversed?(f=0<=i?e-i:e+i,i=e):(f=e,i=e-i),r.below=f<=l,t.y=u.translate(f,!1,!0,!1,!0)||0,t.height=Math.abs(t.y-(u.translate(i,!1,!0,!1,!0)||0)),(i=u.waterfall.dummyStackItem)&&(i.x=s,i.label=v[s].label,i.setOffset(this.pointXOffset||0,this.barW||0,this.stackedYNeg[s],this.stackedYPos[s]))):(e=Math.max(h,h+i)+n[0],t.y=u.translate(e,!1,!0,!1,!0)||0,r.isSum?(t.y=u.translate(n[1],!1,!0,!1,!0)||0,t.height=Math.min(u.translate(n[0],!1,!0,!1,!0)||0,u.len)-t.y,r.below=n[1]<=l):r.isIntermediateSum?(0<=i?(f=n[1]+a,i=a):(f=a,i=n[1]+a),u.reversed&&(f^=i,i^=f,f^=i),t.y=u.translate(f,!1,!0,!1,!0)||0,t.height=Math.abs(t.y-Math.min(u.translate(i,!1,!0,!1,!0)||0,u.len)),a+=n[1],r.below=f<=l):(t.height=0<f?(u.translate(h,!1,!0,!1,!0)||0)-t.y:(u.translate(h,!1,!0,!1,!0)||0)-(u.translate(h-f,!1,!0,!1,!0)||0),h+=f,r.below=h<l),0>t.height&&(t.y+=t.height,t.height*=-1)),r.plotY=t.y=Math.round(t.y||0)-this.borderWidth%2/2,t.height=Math.max(Math.round(t.height||0),.001),r.yBottom=t.y+t.height,t.height<=y&&!r.isNull?(t.height=y,t.y-=w,r.plotY=t.y,r.minPointLengthOffset=0>r.y?-w:w):(r.isNull&&(t.width=0),r.minPointLengthOffset=0),i=r.plotY+(r.negative?t.height:0),r.below&&(r.plotY+=t.height),r.tooltipPos&&(this.chart.inverted?r.tooltipPos[0]=u.len-i:r.tooltipPos[1]=i))}},t.prototype.processData=function(t){for(var c=this.options,f=this.yData,l=c.data,v=f.length,y=c.threshold||0,e,r,o,s,u,a,i=r=e=o=s=0;i<v;i++)u=f[i],a=l&&l[i]?l[i]:{},"sum"===u||a.isSum?f[i]=h(r):"intermediateSum"===u||a.isIntermediateSum?(f[i]=h(e),e=0):(r+=u,e+=u),o=Math.min(r,o),s=Math.max(r,s);n.prototype.processData.call(this,t);c.stacking||(this.dataMin=o+y,this.dataMax=s)},t.prototype.toYData=function(n){return n.isSum?"sum":n.isIntermediateSum?"intermediateSum":n.y},t.prototype.updateParallelArrays=function(t,i){n.prototype.updateParallelArrays.call(this,t,i);("sum"===this.yData[0]||"intermediateSum"===this.yData[0])&&(this.yData[0]=null)},t.prototype.pointAttribs=function(n,t){var i=this.options.upColor;return i&&!n.options.color&&(n.color=0<n.y?i:null),n=o.prototype.pointAttribs.call(this,n,t),delete n.dashstyle,n},t.prototype.getGraphPath=function(){return[["M",0,0]]},t.prototype.getCrispPath=function(){for(var e=this.data,h=this.yAxis,v=e.length,c=Math.round(this.graph.strokeWidth())%2/2,y=Math.round(this.borderWidth)%2/2,l=this.xAxis.reversed,o=this.yAxis.reversed,a=this.options.stacking,i=[],r=1;r<v;r++){var s=e[r].shapeArgs,n=e[r-1],t=e[r-1].shapeArgs,u=h.waterfall.stacks[this.stackKey],f=0<n.y?-t.height:0;u&&t&&s&&(u=u[r-1],a?(u=u.connectorThreshold,f=Math.round(h.translate(u,0,1,0,1)+(o?f:0))-c):f=t.y+n.minPointLengthOffset+y-c,i.push(["M",(t.x||0)+(l?0:t.width||0),f],["L",(s.x||0)+(l?s.width||0:0),f]));t&&i.length&&(!a&&0>n.y&&!o||0<n.y&&o)&&((n=i[i.length-2])&&"number"==typeof n[2]&&(n[2]+=t.height||0),(n=i[i.length-1])&&"number"==typeof n[2]&&(n[2]+=t.height||0))}return i},t.prototype.drawGraph=function(){c.prototype.drawGraph.call(this);this.graph.attr({d:this.getCrispPath()})},t.prototype.setStackedPoints=function(){function p(t,i,r,u){if(s)for(r;r<s;r++)n.stackState[r]+=u;else n.stackState[0]=t,s=n.stackState.length;n.stackState.push(n.stackState[s-1]+i)}var b=this.options,t=this.yAxis.waterfall.stacks,l=b.threshold,i=l||0,w=i,h=this.stackKey,k=this.xData,g=k.length,r,c,a,v,y,e,u,n,f,o,d,s;if(this.yAxis.stacking.usePercentage=!1,v=c=a=i,this.visible||!this.chart.options.chart.ignoreHiddenSeries){for(y=t.changed,(r=t.alreadyChanged)&&0>r.indexOf(h)&&(y=!0),t[h]||(t[h]={}),r=t[h],e=0;e<g;e++)u=k[e],(!r[u]||y)&&(r[u]={negTotal:0,posTotal:0,stackTotal:0,threshold:0,stateIndex:0,stackState:[],label:y&&r[u]?r[u].label:void 0}),n=r[u],f=this.yData[e],0<=f?n.posTotal+=f:n.negTotal+=f,o=b.data[e],u=n.absolutePos=n.posTotal,d=n.absoluteNeg=n.negTotal,n.stackTotal=u+d,s=n.stackState.length,o&&o.isIntermediateSum?(p(a,c,0,a),a=c,c=l,i^=w,w^=i,i^=w):o&&o.isSum?(p(l,v,s),i=l):(p(i,f,0,v),o&&(v+=f,c+=f)),n.stateIndex++,n.threshold=i,i+=n.stackTotal;t.changed=!1;t.alreadyChanged||(t.alreadyChanged=[]);t.alreadyChanged.push(h)}},t.prototype.getExtremes=function(){var r=this.options.stacking,n,t,i;return r?(n=this.yAxis,n=n.waterfall.stacks,t=this.stackedYNeg=[],i=this.stackedYPos=[],"overlap"===r?v(n[this.stackKey],function(n){t.push(a(n.stackState));i.push(l(n.stackState))}):v(n[this.stackKey],function(n){t.push(n.negTotal+n.threshold);i.push(n.posTotal+n.threshold)}),{dataMin:a(t),dataMax:l(i)}):{dataMin:this.dataMin,dataMax:this.dataMax}},t.defaultOptions=w(o.defaultOptions,{dataLabels:{inside:!0},lineWidth:1,lineColor:i.neutralColor80,dashStyle:"Dot",borderColor:i.neutralColor80,states:{hover:{lineWidthPlus:0}}}),t}(o),s(u.prototype,{getZonesGraphs:c.prototype.getZonesGraphs,pointValKey:"y",showLine:!0,pointClass:e}),r.registerSeriesType("waterfall",u),f.compose(n,t),u});t(n,"Extensions/Polar.js",[n["Core/Animation/AnimationUtilities.js"],n["Core/Chart/Chart.js"],n["Core/Globals.js"],n["Extensions/Pane.js"],n["Core/Pointer.js"],n["Core/Series/Series.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Renderer/SVG/SVGRenderer.js"],n["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o,s){var w=n.animObject,c,y,p;e=e.seriesTypes;var l=s.addEvent,v=s.defined,b=s.find,h=s.isNumber,a=s.pick,k=s.splat,d=s.uniqueKey;n=s.wrap;c=f.prototype;u=u.prototype;c.searchPointByAngle=function(n){var t=this.chart,i=this.xAxis.pane.center;return this.searchKDTree({clientX:180+-180/Math.PI*Math.atan2(n.chartX-i[0]-t.plotLeft,n.chartY-i[1]-t.plotTop)})};c.getConnectors=function(n,t,i,r){var u=r?1:0,f=0<=t&&t<=n.length-1?t:0>t?n.length-1+t:0,o,s,h,c,e,l;return t=0>f-1?n.length-(1+u):f-1,u=f+1>n.length-1?u:f+1,o=n[t],u=n[u],s=o.plotX,o=o.plotY,h=u.plotX,c=u.plotY,u=n[f].plotX,f=n[f].plotY,s=(1.5*u+s)/2.5,o=(1.5*f+o)/2.5,h=(1.5*u+h)/2.5,e=(1.5*f+c)/2.5,c=Math.sqrt(Math.pow(s-u,2)+Math.pow(o-f,2)),l=Math.sqrt(Math.pow(h-u,2)+Math.pow(e-f,2)),s=Math.atan2(o-f,s-u),e=Math.PI/2+(s+Math.atan2(e-f,h-u))/2,Math.abs(s-e)>Math.PI/2&&(e-=Math.PI),s=u+Math.cos(e)*c,o=f+Math.sin(e)*c,h=u+Math.cos(Math.PI+e)*l,e=f+Math.sin(Math.PI+e)*l,u={rightContX:h,rightContY:e,leftContX:s,leftContY:o,plotX:u,plotY:f},i&&(u.prevPointCont=this.getConnectors(n,t,!1,r)),u};c.toXY=function(n){var i=this.chart,o=this.xAxis,t=this.yAxis,u=n.plotX,r=n.plotY,s=n.series,f=i.inverted,c=n.y,e=f?u:t.len-r;f&&s&&!s.isRadialBar&&(n.plotY=r="number"==typeof c?t.translate(c)||0:0);n.rectPlotX=u;n.rectPlotY=r;t.center&&(e+=t.center[3]/2);h(r)&&(t=f?t.postTranslate(r,e):o.postTranslate(u,e),n.plotX=n.polarPlotX=t.x-i.plotLeft,n.plotY=n.polarPlotY=t.y-i.plotTop);this.kdByAngle?(i=(u/Math.PI*180+o.pane.options.startAngle)%360,0>i&&(i+=360),n.clientX=i):n.clientX=n.plotX};e.spline&&(n(e.spline.prototype,"getPointSpline",function(n,t,i,r){return this.chart.polar?r?(n=this.getConnectors(t,r,!0,this.connectEnds),t=n.prevPointCont&&n.prevPointCont.rightContX,i=n.prevPointCont&&n.prevPointCont.rightContY,n=["C",h(t)?t:n.plotX,h(i)?i:n.plotY,h(n.leftContX)?n.leftContX:n.plotX,h(n.leftContY)?n.leftContY:n.plotY,n.plotX,n.plotY]):n=["M",i.plotX,i.plotY]:n=n.call(this,t,i,r),n}),e.areasplinerange&&(e.areasplinerange.prototype.getPointSpline=e.spline.prototype.getPointSpline));l(f,"afterTranslate",function(){var n=this.chart,t,r;if(n.polar&&this.xAxis){if((this.kdByAngle=n.tooltip&&n.tooltip.shared)?this.searchPoint=this.searchPointByAngle:this.options.findNearestPointBy="xy",!this.preventPostTranslate)for(t=this.points,r=t.length;r--;)this.toXY(t[r]),!n.hasParallelCoordinates&&!this.yAxis.reversed&&t[r].y<this.yAxis.min&&(t[r].isNull=!0);this.hasClipCircleSetter||(this.hasClipCircleSetter=!!this.eventsToUnbind.push(l(this,"afterRender",function(){if(n.polar){var t=this.yAxis.pane.center;this.clipCircle?this.clipCircle.animate({x:t[0],y:t[1],r:t[2]/2,innerR:t[3]/2}):this.clipCircle=n.renderer.clipCircle(t[0],t[1],t[2]/2,t[3]/2);this.group.clip(this.clipCircle);this.setClip=i.noop}})))}},{order:2});n(e.line.prototype,"getGraphPath",function(n,t){var f=this,i,r,u;if(this.chart.polar){for(t=t||this.points,i=0;i<t.length;i++)if(!t[i].isNull){r=i;break}!1!==this.options.connectEnds&&"undefined"!=typeof r&&(this.connectEnds=!0,t.splice(t.length,0,t[r]),u=!0);t.forEach(function(n){"undefined"==typeof n.polarPlotY&&f.toXY(n)})}return i=n.apply(this,[].slice.call(arguments,1)),u&&t.pop(),i});y=function(n,t){var r=this,f=this.chart,e=this.options.animation,l=this.group,o=this.markerGroup,h=this.xAxis.center,v=f.plotLeft,y=f.plotTop,s,u,p,b,c;f.polar?r.isRadialBar?t||(r.startAngleRad=a(r.translatedThreshold,r.xAxis.startAngleRad),i.seriesTypes.pie.prototype.animate.call(r,t)):f.renderer.isSVG&&((e=w(e),r.is("column"))?t||(c=h[3]/2,r.points.forEach(function(n){s=n.graphic;p=(u=n.shapeArgs)&&u.r;b=u&&u.innerR;s&&u&&(s.attr({r:c,innerR:c}),s.animate({r:p,innerR:b},r.options.animation))})):t?(n={translateX:h[0]+v,translateY:h[1]+y,scaleX:.001,scaleY:.001},l.attr(n),o&&o.attr(n)):(n={translateX:v,translateY:y,scaleX:1,scaleY:1},l.animate(n,e),o&&o.animate(n,e))):n.call(this,t)};n(c,"animate",y);e.column&&(p=e.arearange.prototype,e=e.column.prototype,e.polarArc=function(n,t,i,r){var f=this.xAxis.center,e=this.yAxis.len,u=f[3]/2;return t=e-t+u,n=e-a(n,e)+u,this.yAxis.reversed&&(0>t&&(t=u),0>n&&(n=u)),{x:f[0],y:f[1],r:t,innerR:n,start:i,end:r}},n(e,"animate",y),n(e,"translate",function(n){var t=this.options,g=t.stacking,w=this.chart,y=this.xAxis,u=this.yAxis,d=u.reversed,f=u.center,p=y.startAngleRad,b=y.endAngleRad-p,l,a,e,r,i;if(this.preventPostTranslate=!0,n.call(this),y.isRadial)for(n=this.points,y=n.length,l=u.translate(u.min),a=u.translate(u.max),t=t.threshold||0,w.inverted&&h(t)&&(e=u.translate(t),v(e)&&(0>e?e=0:e>b&&(e=b),this.translatedThreshold=e+p));y--;){t=n[y];var o=t.barX,k=t.x,c=t.y;t.shapeType="arc";w.inverted?(t.plotY=u.translate(c),g&&u.stacking?(c=u.stacking.stacks[(0>c?"-":"")+this.stackKey],this.visible&&c&&c[k]&&!t.isNull)&&(r=c[k].points[this.getStackIndicator(void 0,k,this.index).key],i=u.translate(r[0]),r=u.translate(r[1]),v(i)&&(i=s.clamp(i,0,b))):(i=e,r=t.plotY),i>r&&(r=[i,i=r][0]),d?r>l?r=l:i<a?i=a:(i>l||r<a)&&(i=r=b):i<l?i=l:r>a?r=a:(r<l||i>a)&&(i=r=0),u.min>u.max&&(i=r=d?b:0),i+=p,r+=p,f&&(t.barX=o+=f[3]/2),k=Math.max(o,0),c=Math.max(o+t.pointWidth,0),t.shapeArgs={x:f&&f[0],y:f&&f[1],r:c,innerR:k,start:i,end:r},t.opacity=i===r?0:void 0,t.plotY=(v(this.translatedThreshold)&&(i<this.translatedThreshold?i:r))-p):(i=o+p,t.shapeArgs=this.polarArc(t.yBottom,t.plotY,i,i+t.pointWidth));this.toXY(t);w.inverted?(o=u.postTranslate(t.rectPlotY,o+t.pointWidth/2),t.tooltipPos=[o.x-w.plotLeft,o.y-w.plotTop]):t.tooltipPos=[t.plotX,t.plotY];f&&(t.ttBelow=t.plotY>f[1])}}),e.findAlignments=function(n,t){return null===t.align&&(t.align=20<n&&160>n?"left":200<n&&340>n?"right":"center"),null===t.verticalAlign&&(t.verticalAlign=45>n||315<n?"bottom":135<n&&225>n?"top":"middle"),t},p&&(p.findAlignments=e.findAlignments),n(e,"alignDataLabel",function(n,t,i,r,u,f){var e=this.chart,o=a(r.inside,!!this.options.stacking);e.polar?(n=t.rectPlotX/Math.PI*180,e.inverted?(this.forceDL=e.isInsidePlot(t.plotX,Math.round(t.plotY)),o&&t.shapeArgs?(u=t.shapeArgs,u=this.yAxis.postTranslate(((u.start||0)+(u.end||0))/2-this.xAxis.startAngleRad,t.barX+t.pointWidth/2),u={x:u.x-e.plotLeft,y:u.y-e.plotTop}):t.tooltipPos&&(u={x:t.tooltipPos[0],y:t.tooltipPos[1]}),r.align=a(r.align,"center"),r.verticalAlign=a(r.verticalAlign,"middle")):this.findAlignments&&(r=this.findAlignments(n,r)),c.alignDataLabel.call(this,t,i,r,u,f),this.isRadialBar&&t.shapeArgs&&t.shapeArgs.start===t.shapeArgs.end&&i.hide(!0)):n.call(this,t,i,r,u,f)}));n(u,"getCoordinates",function(n,t){var i=this.chart,r={xAxis:[],yAxis:[]};return i.polar?i.axes.forEach(function(n){var e=n.isXAxis,u=n.center,f;"colorAxis"!==n.coll&&(f=t.chartX-u[0]-i.plotLeft,u=t.chartY-u[1]-i.plotTop,r[e?"xAxis":"yAxis"].push({axis:n,value:n.translate(e?Math.PI-Math.atan2(f,u):Math.sqrt(Math.pow(f,2)+Math.pow(u,2)),!0)}))}):r=n.call(this,t),r});o.prototype.clipCircle=function(n,t,i,r){var f=d(),u=this.createElement("clipPath").attr({id:f}).add(this.defs);return n=r?this.arc(n,t,i,r,0,2*Math.PI).add(u):this.circle(n,t,i).add(u),n.id=f,n.clipPath=u,n};l(t,"getAxes",function(){this.pane||(this.pane=[]);this.options.pane=k(this.options.pane);this.options.pane.forEach(function(n){new r(n,this)},this)});l(t,"afterDrawChartBox",function(){this.pane.forEach(function(n){n.render()})});l(f,"afterInit",function(){var n=this.chart;n.inverted&&n.polar&&(this.isRadialSeries=!0,this.is("column")&&(this.isRadialBar=!0))});n(t.prototype,"get",function(n,t){return b(this.pane||[],function(n){return n.options.id===t})||n.call(this,t)})});t(n,"masters/highcharts-more.src.js",[n["Core/Globals.js"],n["Core/Axis/RadialAxis.js"],n["Series/Bubble/BubbleSeries.js"]],function(n,t,i){t.compose(n.Axis,n.Tick);i.compose(n.Chart,n.Legend,n.Series)})})
"use strict";(function(n){"object"==typeof module&&module.exports?(n["default"]=n,module.exports=n):"function"==typeof define&&define.amd?define("highcharts/modules/data",["highcharts"],function(t){return n(t),n.Highcharts=t,n}):n("undefined"!=typeof Highcharts?Highcharts:void 0)})(function(n){function t(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}n=n?n._modules:{};t(n,"Core/HttpUtilities.js",[n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t){var e=n.doc,i=t.createElement,o=t.discardElement,r=t.merge,u=t.objectEach,f={ajax:function(n){var t=r(!0,{url:!1,type:"get",dataType:"json",success:!1,error:!1,data:!1,headers:{}},n),i;if(n={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"},i=new XMLHttpRequest,!t.url)return!1;i.open(t.type.toUpperCase(),t.url,!0);t.headers["Content-Type"]||i.setRequestHeader("Content-Type",n[t.dataType]||n.text);u(t.headers,function(n,t){i.setRequestHeader(t,n)});i.onreadystatechange=function(){if(4===i.readyState){if(200===i.status){var n=i.responseText;if("json"===t.dataType)try{n=JSON.parse(n)}catch(r){t.error&&t.error(i,r);return}return t.success&&t.success(n)}t.error&&t.error(i,i.responseText)}};try{t.data=JSON.stringify(t.data)}catch(f){}i.send(t.data||!0)},getJSON:function(n,t){f.ajax({url:n,success:t,dataType:"json",headers:{"Content-Type":"text/plain"}})},post:function(n,t,f){var s=i("form",r({method:"post",action:n,enctype:"multipart/form-data"},f),{display:"none"},e.body);u(t,function(n,t){i("input",{type:"hidden",name:t,value:n},null,s)});s.submit();o(s)}};return f});t(n,"Extensions/Data.js",[n["Core/Chart/Chart.js"],n["Core/Globals.js"],n["Core/HttpUtilities.js"],n["Core/Series/Point.js"],n["Core/Series/SeriesRegistry.js"],n["Core/Utilities.js"]],function(n,t,i,r,u,f){var v=t.doc,h=i.ajax,o=u.seriesTypes,s;i=f.addEvent;var c=f.defined,y=f.extend,p=f.fireEvent,l=f.isNumber,e=f.merge,w=f.objectEach,a=f.pick,b=f.splat;return f=function(){function n(n,t,i){this.options=this.rawColumns=this.firstRowAsNames=this.chartOptions=this.chart=void 0;this.dateFormats={"YYYY/mm/dd":{regex:/^([0-9]{4})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{1,2})$/,parser:function(n){return n?Date.UTC(+n[1],n[2]-1,+n[3]):NaN}},"dd/mm/YYYY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{4})$/,parser:function(n){return n?Date.UTC(+n[3],n[2]-1,+n[1]):NaN},alternative:"mm/dd/YYYY"},"mm/dd/YYYY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{4})$/,parser:function(n){return n?Date.UTC(+n[3],n[1]-1,+n[2]):NaN}},"dd/mm/YY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{2})$/,parser:function(n){if(!n)return NaN;var t=+n[3];return t=t>(new Date).getFullYear()-2e3?t+1900:t+2e3,Date.UTC(t,n[2]-1,+n[1])},alternative:"mm/dd/YY"},"mm/dd/YY":{regex:/^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{2})$/,parser:function(n){return n?Date.UTC(+n[3]+2e3,n[1]-1,+n[2]):NaN}}};this.init(n,t,i)}return n.prototype.init=function(n,t,i){var u=n.decimalPoint,r;t&&(this.chartOptions=t);i&&(this.chart=i);"."!==u&&","!==u&&(u=void 0);this.options=n;this.columns=n.columns||this.rowsToColumns(n.rows)||[];this.firstRowAsNames=a(n.firstRowAsNames,this.firstRowAsNames,!0);this.decimalRegex=u&&new RegExp("^(-?[0-9]+)"+u+"([0-9]+)$");this.rawColumns=[];this.columns.length&&(this.dataFound(),r=!0);this.hasURLOption(n)&&(clearTimeout(this.liveDataTimeout),r=!1);r||(r=this.fetchLiveData());r||(r=!!this.parseCSV().length);r||(r=!!this.parseTable().length);r||(r=this.parseGoogleSpreadsheet());!r&&n.afterComplete&&n.afterComplete()},n.prototype.hasURLOption=function(n){return!(!n||!(n.rowsURL||n.csvURL||n.columnsURL))},n.prototype.getColumnDistribution=function(){var n=this.chartOptions,t=this.options,u=[],f=function(n){return(o[n||"line"].prototype.pointArrayMap||[0]).length},i=n&&n.chart&&n.chart.type,e=[],l=[],h=0,r;t=t&&t.seriesMapping||n&&n.series&&n.series.map(function(){return{x:0}})||[];(n&&n.series||[]).forEach(function(n){e.push(f(n.type||i))});t.forEach(function(n){u.push(n.x||0)});0===u.length&&u.push(0);t.forEach(function(t){var u=new s,p=e[h]||f(i),a=(n&&n.series||[])[h]||{},v=o[a.type||i||"line"].prototype.pointArrayMap,y=v||["y"];for((c(t.x)||a.isCartesian||!v)&&u.addColumnReader(t.x,"x"),w(t,function(n,t){"x"!==t&&u.addColumnReader(n,t)}),r=0;r<p;r++)u.hasReader(y[r])||u.addColumnReader(void 0,y[r]);l.push(u);h++});t=o[i||"line"].prototype.pointArrayMap;"undefined"==typeof t&&(t=["y"]);this.valueCount={global:f(i),xColumns:u,individual:e,seriesBuilders:l,globalPointArrayMap:t}},n.prototype.dataFound=function(){this.options.switchRowsAndColumns&&(this.columns=this.rowsToColumns(this.columns));this.getColumnDistribution();this.parseTypes();!1!==this.parsed()&&this.complete()},n.prototype.parseCSV=function(n){function l(n,t,i,u){function a(t){o=n[t];b=n[t-1];k=n[t+1]}function v(n){r.length<h+1&&r.push([n]);r[h][r[h].length-1]!==n&&r[h].push(n)}function p(){y>l||l>w?(++l,f=""):(!isNaN(parseFloat(f))&&isFinite(f)?(f=parseFloat(f),v("number")):isNaN(Date.parse(f))?v("string"):(f=f.replace(/\//g,"-"),v("date")),e.length<h+1&&e.push([]),i||(e[h][t]=f),f="",++h,++l)}var c=0,o="",b="",k="",f="",l=0,h=0;if(n.trim().length&&"#"!==n.trim()[0]){for(;c<n.length;c++)if(a(c),'"'===o)for(a(++c);c<n.length&&('"'!==o||'"'===b||'"'===k);)('"'!==o||'"'===o&&'"'!==b)&&(f+=o),a(++c);else u&&u[o]?u[o](o,f)&&p():o===s?p():f+=o;p()}}function a(n){var i=0,r=0,f=!1;return n.some(function(n,t){var s=!1,e="",f,o,h;if(13<t)return!0;for(f=0;f<n.length;f++){if(t=n[f],o=n[f+1],h=n[f-1],"#"===t)break;if('"'===t)if(s){if('"'!==h&&'"'!==o){for(;" "===o&&f<n.length;)o=n[++f];"undefined"!=typeof u[o]&&u[o]++;s=!1}}else s=!0;else"undefined"!=typeof u[t]?(e=e.trim(),isNaN(Date.parse(e))?!isNaN(e)&&isFinite(e)||u[t]++:u[t]++,e=""):e+=t;","===t&&r++;"."===t&&i++}}),f=u[";"]>u[","]?";":",",t.decimalPoint||(t.decimalPoint=i>r?".":",",c.decimalRegex=new RegExp("^(-?[0-9]+)"+t.decimalPoint+"([0-9]+)$")),f}function v(n,i){var u=[],e=0,h=!1,o=[],s=[],r,f;for((!i||i>n.length)&&(i=n.length);e<i;e++)if("undefined"!=typeof n[e]&&n[e]&&n[e].length)for(f=n[e].trim().replace(/\//g," ").replace(/\-/g," ").replace(/\./g," ").split(" "),u=["","",""],r=0;r<f.length;r++)r<u.length&&(f[r]=parseInt(f[r],10),f[r]&&(s[r]=!s[r]||s[r]<f[r]?f[r]:s[r],"undefined"!=typeof o[r]?o[r]!==f[r]&&(o[r]=!1):o[r]=f[r],31<f[r]?u[r]=100>f[r]?"YY":"YYYY":12<f[r]&&31>=f[r]?(u[r]="dd",h=!0):u[r].length||(u[r]="mm")));if(h){for(r=0;r<o.length;r++)!1!==o[r]?12<s[r]&&"YY"!==u[r]&&"YYYY"!==u[r]&&(u[r]="YY"):12<s[r]&&"mm"===u[r]&&(u[r]="dd");return 3===u.length&&"dd"===u[1]&&"dd"===u[2]&&(u[2]="YY"),n=u.join("/"),(t.dateFormats||c.dateFormats)[n]?n:(p("deduceDateFailed"),"YYYY/mm/dd")}return"YYYY/mm/dd"}var c=this,t=n||this.options,i=t.csv,s,h;n="undefined"!=typeof t.startRow&&t.startRow?t.startRow:0;var o=t.endRow||Number.MAX_VALUE,y="undefined"!=typeof t.startColumn&&t.startColumn?t.startColumn:0,w=t.endColumn||Number.MAX_VALUE,f=0,r=[],u={",":0,";":0,"\t":0},e=this.columns=[];if(i&&t.beforeParse&&(i=t.beforeParse.call(this,i)),i){for(i=i.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split(t.lineDelimiter||"\n"),(!n||0>n)&&(n=0),(!o||o>=i.length)&&(o=i.length-1),t.itemDelimiter?s=t.itemDelimiter:(s=null,s=a(i)),h=0,f=n;f<=o;f++)"#"===i[f][0]?h++:l(i[f],f-n-h);t.columnTypes&&0!==t.columnTypes.length||!r.length||!r[0].length||"date"!==r[0][1]||t.dateFormat||(t.dateFormat=v(e[0]));this.dataFound()}return e},n.prototype.parseTable=function(){var n=this.options,t=n.table,i=this.columns||[],r=n.startRow||0,f=n.endRow||Number.MAX_VALUE,u=n.startColumn||0,e=n.endColumn||Number.MAX_VALUE;return t&&("string"==typeof t&&(t=v.getElementById(t)),[].forEach.call(t.getElementsByTagName("tr"),function(n,t){t>=r&&t<=f&&[].forEach.call(n.children,function(n,f){var s=i[f-u],o=1;if(("TD"===n.tagName||"TH"===n.tagName)&&f>=u&&f<=e)for(i[f-u]||(i[f-u]=[]),i[f-u][t-r]=n.innerHTML;t-r>=o&&void 0===s[t-r-o];)s[t-r-o]=null,o++})}),this.dataFound()),i},n.prototype.fetchLiveData=function(){function u(e){function c(r,c,l){function a(){s&&t.liveDataURL===r&&(f.liveDataTimeout=setTimeout(u,i))}return!r||!/^(http|\/|\.\/|\.\.\/)/.test(r)?(r&&n.error&&n.error("Invalid URL"),!1):(e&&(clearTimeout(f.liveDataTimeout),t.liveDataURL=r),h({url:r,dataType:l||"json",success:function(n){t&&t.series&&c(n);a()},error:function(t,i){return 3>++o&&a(),n.error&&n.error(i,t)}}),!0)}c(r.csvURL,function(n){t.update({data:{csv:n}})},"text")||c(r.rowsURL,function(n){t.update({data:{rows:n}})})||c(r.columnsURL,function(n){t.update({data:{columns:n}})})}var f=this,t=this.chart,n=this.options,o=0,s=n.enablePolling,i=1e3*(n.dataRefreshRate||2),r=e(n);return this.hasURLOption(n)?(1e3>i&&(i=1e3),delete n.csvURL,delete n.rowsURL,delete n.columnsURL,u(!0),this.hasURLOption(n)):!1},n.prototype.parseGoogleSpreadsheet=function(){function i(t){var r=["https://sheets.googleapis.com/v4/spreadsheets",u,"values",e(),"?alt=json&majorDimension=COLUMNS&valueRenderOption=UNFORMATTED_VALUE&dateTimeRenderOption=FORMATTED_STRING&key="+n.googleAPIKey].join("/");h({url:r,dataType:"json",success:function(r){t(r);n.enablePolling&&setTimeout(function(){i(t)},f)},error:function(t,i){return n.error&&n.error(i,t)}})}var r=this,n=this.options,u=n.googleSpreadsheetKey,t=this.chart,f=Math.max(1e3*(n.dataRefreshRate||2),4e3),e=function(){if(n.googleSpreadsheetRange)return n.googleSpreadsheetRange;var i=("ABCDEFGHIJKLMNOPQRSTUVWXYZ".charAt(n.startColumn||0)||"A")+((n.startRow||0)+1),t="ABCDEFGHIJKLMNOPQRSTUVWXYZ".charAt(a(n.endColumn,-1))||"ZZ";return c(n.endRow)&&(t+=n.endRow+1),i+":"+t};return u&&(delete n.googleSpreadsheetKey,i(function(n){if(n=n.values,!n||0===n.length)return!1;var i=n.reduce(function(n,t){return Math.max(n,t.length)},0);n.forEach(function(n){for(var t=0;t<i;t++)"undefined"==typeof n[t]&&(n[t]=null)});t&&t.series?t.update({data:{columns:n}}):(r.columns=n,r.dataFound())})),!1},n.prototype.trim=function(n,t){return"string"==typeof n&&(n=n.replace(/^\s+|\s+$/g,""),t&&/^[0-9\s]+$/.test(n)&&(n=n.replace(/\s/g,"")),this.decimalRegex&&(n=n.replace(this.decimalRegex,"$1.$2"))),n},n.prototype.parseTypes=function(){for(var t=this.columns,n=t.length;n--;)this.parseColumn(t[n],n)},n.prototype.parseColumn=function(n,t){var f=this.rawColumns,e=this.columns,i=n.length,y=this.firstRowAsNames,h=-1!==this.valueCount.xColumns.indexOf(t),c,p=[],o=this.chartOptions,s,v=(this.options.columnTypes||[])[t];for(o=h&&(o&&o.xAxis&&"category"===b(o.xAxis)[0].type||"string"===v),f[t]||(f[t]=[]);i--;){var r=p[i]||n[i],u=this.trim(r),w=this.trim(r,!0),a=parseFloat(w);"undefined"==typeof f[t][i]&&(f[t][i]=u);o||0===i&&y?n[i]=""+u:+w===a?(n[i]=a,31536e6<a&&"float"!==v?n.isDatetime=!0:n.isNumeric=!0,"undefined"!=typeof n[i+1]&&(s=a>n[i+1])):(u&&u.length&&(c=this.parseDate(r)),h&&l(c)&&"float"!==v?(p[i]=r,n[i]=c,n.isDatetime=!0,"undefined"!=typeof n[i+1]&&(r=c>n[i+1],r!==s&&"undefined"!=typeof s&&(this.alternativeFormat?(this.dateFormat=this.alternativeFormat,i=n.length,this.alternativeFormat=this.dateFormats[this.dateFormat].alternative):n.unsorted=!0),s=r)):(n[i]=""===u?null:u,0!==i&&(n.isDatetime||n.isNumeric)&&(n.mixed=!0)))}if(h&&n.mixed&&(e[t]=f[t]),h&&s&&this.options.sort)for(t=0;t<e.length;t++)e[t].reverse(),y&&e[t].unshift(e[t].pop())},n.prototype.parseDate=function(n){var i=this.options.parseDate,u,f=this.options.dateFormat||this.dateFormat,t,r;if(i)r=i(n);else if("string"==typeof n){if(f)(i=this.dateFormats[f])||(i=this.dateFormats["YYYY/mm/dd"]),(t=n.match(i.regex))&&(r=i.parser(t));else for(u in this.dateFormats)if(i=this.dateFormats[u],t=n.match(i.regex)){this.dateFormat=u;this.alternativeFormat=i.alternative;r=i.parser(t);break}t||(n.match(/:.+(GMT|UTC|[Z+-])/)&&(n=n.replace(/\s*(?:GMT|UTC)?([+-])(\d\d)(\d\d)$/,"$1$2:$3").replace(/(?:\s+|GMT|UTC)([+-])/,"$1").replace(/(\d)\s*(?:GMT|UTC|Z)$/,"$1+00:00")),t=Date.parse(n),"object"==typeof t&&null!==t&&t.getTime?r=t.getTime()-6e4*t.getTimezoneOffset():l(t)&&(r=t-6e4*new Date(t).getTimezoneOffset()))}return r},n.prototype.rowsToColumns=function(n){var i,t,r,u,f;if(n)for(r=[],u=n.length,i=0;i<u;i++)for(f=n[i].length,t=0;t<f;t++)r[t]||(r[t]=[]),r[t][i]=n[i][t];return r},n.prototype.getData=function(){if(this.columns)return this.rowsToColumns(this.columns).slice(1)},n.prototype.parsed=function(){if(this.options.parsed)return this.options.parsed.call(this,this.columns)},n.prototype.getFreeIndexes=function(n,t){for(var r=[],f=[],u,i=0;i<n;i+=1)r.push(!0);for(n=0;n<t.length;n+=1)for(u=t[n].getReferencedColumnIndexes(),i=0;i<u.length;i+=1)r[u[i]]=!1;for(i=0;i<r.length;i+=1)r[i]&&f.push(i);return f},n.prototype.complete=function(){var r=this.columns,f,e=this.options,n,o,u=[],h,i,t;if(e.complete||e.afterComplete){if(this.firstRowAsNames)for(n=0;n<r.length;n++)r[n].name=r[n].shift();for(h=[],i=this.getFreeIndexes(r.length,this.valueCount.seriesBuilders),n=0;n<this.valueCount.seriesBuilders.length;n++)t=this.valueCount.seriesBuilders[n],t.populateColumns(i)&&u.push(t);for(;0<i.length;){for(t=new s,t.addColumnReader(0,"x"),n=i.indexOf(0),-1!==n&&i.splice(n,1),n=0;n<this.valueCount.global;n++)t.addColumnReader(void 0,this.valueCount.globalPointArrayMap[n]);t.populateColumns(i)&&u.push(t)}if(0<u.length&&0<u[0].readers.length&&(t=r[u[0].readers[0].columnIndex],"undefined"!=typeof t&&(t.isDatetime?f="datetime":t.isNumeric||(f="category"))),"category"===f)for(n=0;n<u.length;n++)for(t=u[n],i=0;i<t.readers.length;i++)"x"===t.readers[i].configName&&(t.readers[i].configName="name");for(n=0;n<u.length;n++){for(t=u[n],i=[],o=0;o<r[0].length;o++)i[o]=t.read(r,o);h[n]={data:i};t.name&&(h[n].name=t.name);"category"===f&&(h[n].turboThreshold=0)}r={series:h};f&&(r.xAxis={type:f},"category"===f&&(r.xAxis.uniqueNames=!1));e.complete&&e.complete(r);e.afterComplete&&e.afterComplete(r)}},n.prototype.update=function(n,t){var i=this.chart;n&&(n.afterComplete=function(n){n&&(n.xAxis&&i.xAxis[0]&&n.xAxis.type===i.xAxis[0].options.type&&delete n.xAxis,i.update(n,t,!0))},e(!0,i.options.data,n),this.init(i.options.data))},n}(),t.data=function(n,i,r){return new t.Data(n,i,r)},i(n,"init",function(n){var r=this,i=n.args[0]||{},u=n.args[1];i&&i.data&&!r.hasDataDef&&(r.hasDataDef=!0,r.data=new t.Data(y(i.data,{afterComplete:function(n){var t,f;if(Object.hasOwnProperty.call(i,"series"))if("object"==typeof i.series)for(t=Math.max(i.series.length,n&&n.series?n.series.length:0);t--;)f=i.series[t]||{},i.series[t]=e(f,n&&n.series?n.series[t]:{});else delete i.series;i=e(n,i);r.init(i,u)}}),i,r),n.preventDefault())}),s=function(){function n(){this.readers=[];this.pointIsArray=!0;this.name=void 0}return n.prototype.populateColumns=function(n){var t=!0;return this.readers.forEach(function(t){"undefined"==typeof t.columnIndex&&(t.columnIndex=n.shift())}),this.readers.forEach(function(n){"undefined"==typeof n.columnIndex&&(t=!1)}),t},n.prototype.read=function(n,t){var f=this.pointIsArray,u=f?[]:{},i;return this.readers.forEach(function(i){var e=n[i.columnIndex][t];f?u.push(e):0<i.configName.indexOf(".")?r.prototype.setNestedProperty(u,e,i.configName):u[i.configName]=e}),"undefined"==typeof this.name&&2<=this.readers.length&&(i=this.getReferencedColumnIndexes(),2<=i.length&&(i.shift(),i.sort(function(n,t){return n-t}),this.name=n[i.shift()].name)),u},n.prototype.addColumnReader=function(n,t){this.readers.push({columnIndex:n,configName:t});"x"!==t&&"y"!==t&&"undefined"!=typeof t&&(this.pointIsArray=!1)},n.prototype.getReferencedColumnIndexes=function(){for(var i=[],t,n=0;n<this.readers.length;n+=1)t=this.readers[n],"undefined"!=typeof t.columnIndex&&i.push(t.columnIndex);return i},n.prototype.hasReader=function(n){for(var i,t=0;t<this.readers.length;t+=1)if(i=this.readers[t],i.configName===n)return!0},n}(),t.Data=f,t.Data});t(n,"masters/modules/data.src.js",[n["Core/Globals.js"],n["Core/HttpUtilities.js"]],function(n,t){n.HttpUtilities=t;n.ajax=t.ajax;n.getJSON=t.getJSON;n.post=t.post})})
"use strict";(function(n){"object"==typeof module&&module.exports?(n["default"]=n,module.exports=n):"function"==typeof define&&define.amd?define("highcharts/modules/exporting",["highcharts"],function(t){return n(t),n.Highcharts=t,n}):n("undefined"!=typeof Highcharts?Highcharts:void 0)})(function(n){function t(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}n=n?n._modules:{};t(n,"Extensions/FullScreen.js",[n["Core/Chart/Chart.js"],n["Core/Globals.js"],n["Core/Renderer/HTML/AST.js"],n["Core/Utilities.js"]],function(n,t,i,r){var u=r.addEvent;return r=function(){function n(n){this.chart=n;this.isOpen=!1;n=n.renderTo;this.browserProps||("function"==typeof n.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:n.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:n.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:n.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"}))}return n.prototype.close=function(){var n=this.chart,t=n.options.chart;this.isOpen&&this.browserProps&&n.container.ownerDocument instanceof Document&&n.container.ownerDocument[this.browserProps.exitFullscreen]();this.unbindFullscreenEvent&&(this.unbindFullscreenEvent=this.unbindFullscreenEvent());n.setSize(this.origWidth,this.origHeight,!1);this.origHeight=this.origWidth=void 0;t.width=this.origWidthOption;t.height=this.origHeightOption;this.origHeightOption=this.origWidthOption=void 0;this.isOpen=!1;this.setButtonText()},n.prototype.open=function(){var n=this,t=n.chart,i=t.options.chart,r,f;i&&(n.origWidthOption=i.width,n.origHeightOption=i.height);n.origWidth=t.chartWidth;n.origHeight=t.chartHeight;n.browserProps&&(r=u(t.container.ownerDocument,n.browserProps.fullscreenChange,function(){n.isOpen?(n.isOpen=!1,n.close()):(t.setSize(null,null,!1),n.isOpen=!0,n.setButtonText())}),f=u(t,"destroy",r),n.unbindFullscreenEvent=function(){r();f()},(i=t.renderTo[n.browserProps.requestFullscreen]())&&i["catch"](function(){alert("Full screen is not supported inside a frame.")}))},n.prototype.setButtonText=function(){var n=this.chart,r=n.exportDivElements,t=n.options.exporting,u=t&&t.buttons&&t.buttons.contextButton.menuItems;n=n.options.lang;t&&t.menuItemDefinitions&&n&&n.exitFullscreen&&n.viewFullscreen&&u&&r&&(r=r[u.indexOf("viewFullscreen")])&&i.setElementHTML(r,this.isOpen?n.exitFullscreen:t.menuItemDefinitions.viewFullscreen.text||n.viewFullscreen)},n.prototype.toggle=function(){this.isOpen?this.close():this.open()},n}(),t.Fullscreen=r,u(n,"beforeRender",function(){this.fullscreen=new t.Fullscreen(this)}),t.Fullscreen});t(n,"Core/Chart/ChartNavigationComposition.js",[],function(){var n;return function(n){n.compose=function(n){return n.navigation||(n.navigation=new t(n)),n};var t=function(){function n(n){this.updates=[];this.chart=n}return n.prototype.addUpdate=function(n){this.chart.navigation.updates.push(n)},n.prototype.update=function(n,t){var i=this;this.updates.forEach(function(r){r.call(i.chart,n,t)})},n}();n.Additions=t}(n||(n={})),n});t(n,"Extensions/Exporting/ExportingDefaults.js",[n["Core/Globals.js"]],function(n){return{exporting:{type:"image/png",url:"https://export.highcharts.com/",printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:"viewFullscreen printChart separator downloadPNG downloadJPEG downloadPDF downloadSVG".split(" ")}},menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}}},lang:{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"},navigation:{buttonOptions:{symbolSize:14,symbolX:12.5,symbolY:10.5,align:"right",buttonSpacing:3,height:22,verticalAlign:"top",width:24,symbolFill:"#666666",symbolStroke:"#666666",symbolStrokeWidth:3,theme:{padding:5}},menuStyle:{border:"1px solid #999999",background:"#ffffff",padding:"5px 0"},menuItemStyle:{padding:"0.5em 1em",color:"#333333",background:"none",fontSize:n.isTouchDevice?"14px":"11px",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"#335cad",color:"#ffffff"}}}});t(n,"Extensions/Exporting/ExportingSymbols.js",[],function(){var n;return function(n){function i(n,t,i,r){return[["M",n,t+2.5],["L",n+i,t+2.5],["M",n,t+r/2+.5],["L",n+i,t+r/2+.5],["M",n,t+r-1.5],["L",n+i,t+r-1.5]]}function r(n,t,i,r){return n=r/3-2,r=[],r.concat(this.circle(i-n,t,n,n),this.circle(i-n,t+n+4,n,n),this.circle(i-n,t+2*(n+4),n,n))}var t=[];n.compose=function(n){-1===t.indexOf(n)&&(t.push(n),n=n.prototype.symbols,n.menu=i,n.menuball=r.bind(n))}}(n||(n={})),n});t(n,"Core/HttpUtilities.js",[n["Core/Globals.js"],n["Core/Utilities.js"]],function(n,t){var e=n.doc,i=t.createElement,o=t.discardElement,r=t.merge,u=t.objectEach,f={ajax:function(n){var t=r(!0,{url:!1,type:"get",dataType:"json",success:!1,error:!1,data:!1,headers:{}},n),i;if(n={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"},i=new XMLHttpRequest,!t.url)return!1;i.open(t.type.toUpperCase(),t.url,!0);t.headers["Content-Type"]||i.setRequestHeader("Content-Type",n[t.dataType]||n.text);u(t.headers,function(n,t){i.setRequestHeader(t,n)});i.onreadystatechange=function(){if(4===i.readyState){if(200===i.status){var n=i.responseText;if("json"===t.dataType)try{n=JSON.parse(n)}catch(r){t.error&&t.error(i,r);return}return t.success&&t.success(n)}t.error&&t.error(i,i.responseText)}};try{t.data=JSON.stringify(t.data)}catch(f){}i.send(t.data||!0)},getJSON:function(n,t){f.ajax({url:n,success:t,dataType:"json",headers:{"Content-Type":"text/plain"}})},post:function(n,t,f){var s=i("form",r({method:"post",action:n,enctype:"multipart/form-data"},f),{display:"none"},e.body);u(t,function(n,t){i("input",{type:"hidden",name:t,value:n},null,s)});s.submit();o(s)}};return f});t(n,"Extensions/Exporting/Exporting.js",[n["Core/Renderer/HTML/AST.js"],n["Core/Chart/Chart.js"],n["Core/Chart/ChartNavigationComposition.js"],n["Core/DefaultOptions.js"],n["Extensions/Exporting/ExportingDefaults.js"],n["Extensions/Exporting/ExportingSymbols.js"],n["Core/Globals.js"],n["Core/HttpUtilities.js"],n["Core/Utilities.js"]],function(n,t,i,r,u,f,e,o,s){t=r.defaultOptions;var y=e.doc,v=e.win,a=s.addEvent,c=s.css,p=s.createElement,d=s.discardElement,w=s.extend,nt=s.find,b=s.fireEvent,tt=s.isObject,h=s.merge,g=s.objectEach,l=s.pick,it=s.removeEvent,rt=s.uniqueKey,k;return function(t){function et(n){var i=this,c=i.renderer,t=h(i.options.navigation.buttonOptions,n),a=t.onclick,v=t.menuItems,f=t.symbolSize||12,o,u,s;if(i.btnCount||(i.btnCount=0),i.exportDivElements||(i.exportDivElements=[],i.exportSVGElements=[]),!1!==t.enabled&&t.theme){var r=t.theme,e=r.states,y=e&&e.hover;e=e&&e.select;i.styledMode||(r.fill=l(r.fill,"#ffffff"),r.stroke=l(r.stroke,"none"));delete r.states;a?o=function(n){n&&n.stopPropagation();a.call(i,n)}:v&&(o=function(n){n&&n.stopPropagation();i.contextMenu(u.menuClassName,v,u.translateX,u.translateY,u.width,u.height,u);u.setState(2)});t.text&&t.symbol?r.paddingLeft=l(r.paddingLeft,30):t.text||w(r,{width:t.width,height:t.height,padding:0});i.styledMode||(r["stroke-linecap"]="round",r.fill=l(r.fill,"#ffffff"),r.stroke=l(r.stroke,"none"));u=c.button(t.text,0,0,o,r,y,e).addClass(n.className).attr({title:l(i.options.lang[t._titleKey||t.titleKey],"")});u.menuClassName=n.menuClassName||"highcharts-menu-"+i.btnCount++;t.symbol&&(s=c.symbol(t.symbol,t.symbolX-f/2,t.symbolY-f/2,f,f,{width:f,height:f}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(u),i.styledMode||s.attr({stroke:t.symbolStroke,fill:t.symbolFill,"stroke-width":t.symbolStrokeWidth||1}));u.add(i.exportingGroup).align(w(t,{width:u.width,x:l(t.x,i.buttonOffset)}),!0,"spacingBox");i.buttonOffset+=(u.width+t.buttonSpacing)*("right"===t.align?-1:1);i.exportSVGElements.push(u,s)}}function ot(){if(this.printReverseInfo){var n=this.printReverseInfo,t=n.childNodes,i=n.origDisplay;n=n.resetParams;this.moveContainers(this.renderTo);[].forEach.call(t,function(n,t){1===n.nodeType&&(n.style.display=i[t]||"")});this.isPrinting=!1;n&&this.setSize.apply(this,n);delete this.printReverseInfo;r=void 0;b(this,"afterPrint")}}function st(){var i=y.body,t=this.options.exporting.printMaxWidth,n={childNodes:i.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0;this.pointer.reset(null,0);b(this,"beforePrint");t&&this.chartWidth>t&&(n.resetParams=[this.options.chart.width,void 0,!1],this.setSize(t,void 0,!1));[].forEach.call(n.childNodes,function(t,i){1===t.nodeType&&(n.origDisplay[i]=t.style.display,t.style.display="none")});this.moveContainers(i);this.printReverseInfo=n}function ht(n){n.renderExporting();a(n,"redraw",n.renderExporting);a(n,"destroy",n.destroyExport)}function ct(t,i,r,u,f,e,o){var h=this,g=h.options.navigation,nt=h.chartWidth,it=h.chartHeight,rt="cache-"+t,k=Math.max(f,e),l=h[rt],d;l||(h.exportContextMenu=h[rt]=l=p("div",{className:t},{position:"absolute",zIndex:1e3,padding:k+"px",pointerEvents:"auto"},h.fixedDiv||h.container),d=p("ul",{className:"highcharts-menu"},{listStyle:"none",margin:0,padding:0},l),h.styledMode||c(d,w({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},g.menuStyle)),l.hideMenu=function(){c(l,{display:"none"});o&&o.setState(0);h.openMenu=!1;c(h.renderTo,{overflow:"hidden"});c(h.container,{overflow:"hidden"});s.clearTimeout(l.hideTimer);b(h,"exportMenuHidden")},h.exportEvents.push(a(l,"mouseleave",function(){l.hideTimer=v.setTimeout(l.hideMenu,500)}),a(l,"mouseenter",function(){s.clearTimeout(l.hideTimer)}),a(y,"mouseup",function(n){h.pointer.inClass(n.target,t)||l.hideMenu()}),a(l,"click",function(){h.openMenu&&l.hideMenu()})),i.forEach(function(t){if("string"==typeof t&&(t=h.options.exporting.menuItemDefinitions[t]),tt(t,!0)){var i=void 0;t.separator?i=p("hr",void 0,void 0,d):("viewData"===t.textKey&&h.isDataTableVisible&&(t.textKey="hideData"),i=p("li",{className:"highcharts-menu-item",onclick:function(n){n&&n.stopPropagation();l.hideMenu();t.onclick&&t.onclick.apply(h,arguments)}},void 0,d),n.setElementHTML(i,t.text||h.options.lang[t.textKey]),h.styledMode||(i.onmouseover=function(){c(this,g.menuItemHoverStyle)},i.onmouseout=function(){c(this,g.menuItemStyle)},c(i,w({cursor:"pointer"},g.menuItemStyle))));h.exportDivElements.push(i)}}),h.exportDivElements.push(d,l),h.exportMenuWidth=l.offsetWidth,h.exportMenuHeight=l.offsetHeight);i={display:"block"};r+h.exportMenuWidth>nt?i.right=nt-r-f-k+"px":i.left=r-k+"px";u+e+h.exportMenuHeight>it&&"top"!==o.alignOptions.verticalAlign?i.bottom=it-u-k+"px":i.top=u+e-k+"px";c(l,i);c(h.renderTo,{overflow:""});c(h.container,{overflow:""});h.openMenu=!0;b(h,"exportMenuShown")}function lt(n){var t=n?n.target:this,i=t.exportSVGElements,r=t.exportDivElements,u;n=t.exportEvents;i&&(i.forEach(function(n,r){n&&(n.onclick=n.ontouchstart=null,u="cache-"+n.menuClassName,t[u]&&delete t[u],i[r]=n.destroy())}),i.length=0);t.exportingGroup&&(t.exportingGroup.destroy(),delete t.exportingGroup);r&&(r.forEach(function(n,t){n&&(s.clearTimeout(n.hideTimer),it(n,"mouseleave"),r[t]=n.onmouseout=n.onmouseover=n.ontouchstart=n.onclick=null,d(n))}),r.length=0);n&&(n.forEach(function(n){n()}),n.length=0)}function at(n,t){t=this.getSVGForExport(n,t);n=h(this.options.exporting,n);o.post(n.url,{filename:n.filename?n.filename.replace(/\//g,"-"):this.getFilename(),type:n.type,width:n.width||0,scale:n.scale,svg:t},n.formAttributes)}function vt(){return this.styledMode&&this.inlineStyles(),this.container.innerHTML}function yt(){var t=this.userOptions.title&&this.userOptions.title.text,n=this.options.exporting.filename;return n?n.replace(/\//g,"-"):("string"==typeof t&&(n=t.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z0-9\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,"")),(!n||5>n.length)&&(n="chart"),n)}function pt(n){var f,t=h(this.options,n),e,r;t.plotOptions=h(this.userOptions.plotOptions,n&&n.plotOptions);t.time=h(this.userOptions.time,n&&n.time);var o=p("div",null,{position:"absolute",top:"-9999em",width:this.chartWidth+"px",height:this.chartHeight+"px"},y.body),u=this.renderTo.style.width,i=this.renderTo.style.height;return u=t.exporting.sourceWidth||t.chart.width||/px$/.test(u)&&parseInt(u,10)||(t.isGantt?800:600),i=t.exporting.sourceHeight||t.chart.height||/px$/.test(i)&&parseInt(i,10)||400,w(t.chart,{animation:!1,renderTo:o,forExport:!0,renderer:"SVGRenderer",width:u,height:i}),t.exporting.enabled=!1,delete t.data,t.series=[],this.series.forEach(function(n){f=h(n.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:n.visible});f.isInternal||t.series.push(f)}),e={},this.axes.forEach(function(n){n.userOptions.internalKey||(n.userOptions.internalKey=rt());n.options.isInternal||(e[n.coll]||(e[n.coll]=!0,t[n.coll]=[]),t[n.coll].push(h(n.userOptions,{visible:n.visible})))}),r=new this.constructor(t,this.callback),n&&["xAxis","yAxis","series"].forEach(function(t){var i={};n[t]&&(i[t]=n[t],r.update(i))}),this.axes.forEach(function(n){var i=nt(r.axes,function(t){return t.options.internalKey===n.userOptions.internalKey}),t=n.getExtremes(),u=t.userMin;t=t.userMax;i&&("undefined"!=typeof u&&u!==i.min||"undefined"!=typeof t&&t!==i.max)&&i.setExtremes(u,t,!0,!1)}),i=r.getChartHTML(),b(this,"getSVG",{chartCopy:r}),i=this.sanitizeSVG(i,t),t=null,r.destroy(),d(o),i}function wt(n,t){var i=this.options.exporting;return this.getSVG(h({chart:{borderRadius:0}},i.chartOptions,t,{exporting:{sourceWidth:n&&n.sourceWidth||i.sourceWidth,sourceHeight:n&&n.sourceHeight||i.sourceHeight}}))}function u(n){return n.replace(/([A-Z])/g,function(n,t){return"-"+t.toLowerCase()})}function bt(){function s(t){function k(n,i){if(c=y=!1,o.length){for(a=o.length;a--&&!y;)y=o[a].test(i);c=!y}for("transform"===i&&"none"===n&&(c=!0),a=l.length;a--&&!c;)c=l[a].test(i)||"function"==typeof n;c||d[i]===n&&"svg"!==t.nodeName||f[t.nodeName][i]===n||(ut&&-1===ut.indexOf(i)?w+=u(i)+":"+n+";":n&&t.setAttribute(u(i),n))}var w="",c,y,a,r,d,p,b;if(1===t.nodeType&&-1===ft.indexOf(t.nodeName)){if(r=v.getComputedStyle(t,null),d="svg"===t.nodeName?{}:v.getComputedStyle(t.parentNode,null),f[t.nodeName]||(i=n.getElementsByTagName("svg")[0],p=n.createElementNS(t.namespaceURI,t.nodeName),i.appendChild(p),f[t.nodeName]=h(v.getComputedStyle(p,null)),"text"===t.nodeName&&delete f.text.fill,i.removeChild(p)),e.isFirefox||e.isMS)for(b in r)k(r[b],b);else g(r,k);w&&(r=t.getAttribute("style"),t.setAttribute("style",(r?r+";":"")+w));"svg"===t.nodeName&&t.setAttribute("stroke-width","1px");"text"!==t.nodeName&&[].forEach.call(t.children||t.childNodes,s)}}var l=ii,o=t.inlineWhitelist,f={},i,r=y.createElement("iframe"),n;c(r,{width:"1px",height:"1px",visibility:"hidden"});y.body.appendChild(r);n=r.contentWindow.document;n.open();n.write('<svg xmlns="http://www.w3.org/2000/svg"><\/svg>');n.close();s(this.container.querySelector("svg"));i.parentNode.removeChild(i);r.parentNode.removeChild(r)}function kt(n){(this.fixedDiv?[this.fixedDiv,this.scrollingContainer]:[this.container]).forEach(function(t){n.appendChild(t)})}function dt(){var n=this;n.exporting={update:function(t,i){n.isDirtyExporting=!0;h(!0,n.options.exporting,t);l(i,!0)&&n.redraw()}};i.compose(n).navigation.addUpdate(function(t,i){n.isDirtyExporting=!0;h(!0,n.options.navigation,t);l(i,!0)&&n.redraw()})}function gt(){var n=this;n.isPrinting||(r=n,e.isSafari||n.beforePrint(),setTimeout(function(){v.focus();v.print();e.isSafari||setTimeout(function(){n.afterPrint()},1e3)},1))}function ni(){var n=this,t=n.options.exporting,i=t.buttons,r=n.isDirtyExporting||!n.exportSVGElements;n.buttonOffset=0;n.isDirtyExporting&&n.destroyExport();r&&!1!==t.enabled&&(n.exportEvents=[],n.exportingGroup=n.exportingGroup||n.renderer.g("exporting-group").attr({zIndex:3}).add(),g(i,function(t){n.addButton(t)}),n.isDirtyExporting=!1)}function ti(n,t){var r=n.indexOf("<\/svg>")+6,i=n.substr(r);return n=n.substr(0,r),t&&t.exporting&&t.exporting.allowHTML&&i&&(i='<foreignObject x="0" y="0" width="'+t.chart.width+'" height="'+t.chart.height+'"><body xmlns="http://www.w3.org/1999/xhtml">'+i.replace(/(<(?:img|br).*?(?=>))>/g,"$1 />")+"<\/body><\/foreignObject>",n=n.replace("<\/svg>",i+"<\/svg>")),n=n.replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery[0-9]+="[^"]+"/g,"").replace(/url\(("|&quot;)(.*?)("|&quot;);?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (|NS[0-9]+:)href=/g," xlink:href=").replace(/\n/," ").replace(/(fill|stroke)="rgba\(([ 0-9]+,[ 0-9]+,[ 0-9]+),([ 0-9\.]+)\)"/g,'$1="rgb($2)" $1-opacity="$3"').replace(/&nbsp;/g," ").replace(/&shy;/g,"­"),this.ieSanitizeSVG&&(n=this.ieSanitizeSVG(n)),n}var k=[],ii=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/],ut="fill stroke strokeLinecap strokeLinejoin strokeWidth textAnchor x y".split(" "),ft,r;t.inlineWhitelist=[];ft=["clipPath","defs","desc"];t.compose=function(n,t){f.compose(t);-1===k.indexOf(n)&&(k.push(n),t=n.prototype,t.afterPrint=ot,t.exportChart=at,t.inlineStyles=bt,t.print=gt,t.sanitizeSVG=ti,t.getChartHTML=vt,t.getSVG=pt,t.getSVGForExport=wt,t.getFilename=yt,t.moveContainers=kt,t.beforePrint=st,t.contextMenu=ct,t.addButton=et,t.destroyExport=lt,t.renderExporting=ni,t.callbacks.push(ht),a(n,"init",dt),e.isSafari&&e.win.matchMedia("print").addListener(function(n){r&&(n.matches?r.beforePrint():r.afterPrint())}))}}(k||(k={})),t.exporting=h(u.exporting,t.exporting),t.lang=h(u.lang,t.lang),t.navigation=h(u.navigation,t.navigation),k});t(n,"masters/modules/exporting.src.js",[n["Core/Globals.js"],n["Extensions/Exporting/Exporting.js"],n["Core/HttpUtilities.js"]],function(n,t,i){n.HttpUtilities=i;n.ajax=i.ajax;n.getJSON=i.getJSON;n.post=i.post;t.compose(n.Chart,n.Renderer)})})
"use strict";(function(n){"object"==typeof module&&module.exports?(n["default"]=n,module.exports=n):"function"==typeof define&&define.amd?define("highcharts/modules/no-data-to-display",["highcharts"],function(t){return n(t),n.Highcharts=t,n}):n("undefined"!=typeof Highcharts?Highcharts:void 0)})(function(n){function t(n,t,i,r){n.hasOwnProperty(t)||(n[t]=r.apply(null,i))}n=n?n._modules:{};t(n,"Extensions/NoDataToDisplay.js",[n["Core/Renderer/HTML/AST.js"],n["Core/Chart/Chart.js"],n["Core/DefaultOptions.js"],n["Core/Color/Palette.js"],n["Core/Utilities.js"]],function(n,t,i,r,u){var f=i.getOptions,e;i=u.addEvent;e=u.extend;u=t.prototype;f=f();e(f.lang,{noData:"No data to display"});f.noData={attr:{zIndex:1},position:{x:0,y:0,align:"center",verticalAlign:"middle"},style:{fontWeight:"bold",fontSize:"12px",color:r.neutralColor60}};u.showNoData=function(t){var i=this.options;t=t||i&&i.lang.noData||"";i=i&&(i.noData||{});this.renderer&&(this.noDataLabel||(this.noDataLabel=this.renderer.label(t,0,0,void 0,void 0,void 0,i.useHTML,void 0,"no-data").add()),this.styledMode||this.noDataLabel.attr(n.filterUserAttributes(i.attr||{})).css(i.style||{}),this.noDataLabel.align(e(this.noDataLabel.getBBox(),i.position||{}),!1,"plotBox"))};u.hideNoData=function(){this.noDataLabel&&(this.noDataLabel=this.noDataLabel.destroy())};u.hasData=function(){for(var n=this.series||[],t=n.length;t--;)if(n[t].hasData()&&!n[t].options.isInternal)return!0;return this.loadingShown};i(t,"render",function(){this.hasData()?this.hideNoData():this.showNoData()})});t(n,"masters/modules/no-data-to-display.src.js",[],function(){})})
var skinnyNavConfig=!1
setLeftNavParent('cweo/publications/workforce-currents');

var divElement = document.getElementById('viz1581528429338');
var vizElement = divElement.getElementsByTagName('object')[0];
vizElement.style.width='880px';vizElement.style.height='777px';
var scriptElement = document.createElement('script');
scriptElement.src = 'https://public.tableau.com/javascripts/api/viz_v1.js';
vizElement.parentNode.insertBefore(scriptElement, vizElement);$(function(){t=event;{const n=event.keyCode;return n>=48&&n<=57||n>=96&&n<=105}n=event;{const n=event.keyCode;return event.shiftKey===!0||n===35||n===36||n===8||n===9||n===13||n===46||n>36&&n<41||(event.ctrlKey===!0||event.metaKey===!0)&&(n===65||n===67||n===86||n===88||n===90)}i=event;t(event)||n(event)||event.preventDefault();r=event;{if(n(event))return;const i=event.target,t=event.target.value.replace(/\D/g,"").substring(0,10),r=t.substring(0,3),u=t.substring(3,6),f=t.substring(6,10);t.length>6?(i.value=$,r,-$,u,-$,f):t.length>3?(i.value=$,r,-$,u):t.length>0&&(i.value=$,r)}let u=document.querySelectorAll(".phone-number-formatting");u.forEach(item);item.addEventListener("keydown",i);item.addEventListener("keyup",r)})
 