!function(){function D(t,e){var i;for(i in t=t||{},e)t[i]=e[i];return t}function I(){var t,e=arguments.length,i={},n=function(t,e){var i,s;for(s in"object"!=typeof t&&(t={}),e)e.hasOwnProperty(s)&&(i=e[s],t[s]=i&&"object"==typeof i&&"[object Array]"!==Object.prototype.toString.call(i)&&"number"!=typeof i.nodeType?n(t[s]||{},i):e[s]);return t};for(t=0;t=J[Vt]&&(h.setMilliseconds(0),h.setSeconds(l>=J[jt]?0:c*mt(h.getSeconds()/c))),l>=J[jt]&&h[rt](l>=J[_t]?0:c*mt(h[tt]()/c)),l>=J[_t]&&h[at](l>=J.day?0:c*mt(h[et]()/c)),l>=J.day&&h[ht](l>=J[Kt]?1:c*mt(h[st]()/c)),l>=J[Kt]&&(h[lt](l>=J[$t]?0:c*mt(h[nt]()/c)),n=h[ot]()),l>=J[$t]&&(n-=n%c,h[ct](n)),l===J[Zt]&&h[ht](h[st]()-h[it]()+O(s,1)),e=1,n=h[ot]();s=h.getTime();for(var d=h[nt](),p=h[st](),u=a?0:(864e5+6e4*h.getTimezoneOffset())%864e5;si&&(i=t[e]);return i}function o(t,e){for(var i in t)t[i]&&t[i]!==e&&t[i].destroy&&t[i].destroy(),delete t[i]}function r(t){U=U||C(Et),t&&U.appendChild(t),U.innerHTML=""}function B(t,e){var i="Highcharts error #"+t+": www.highcharts.com/errors/"+t;if(e)throw i;ut.console&&console.log(i)}function R(t){return parseFloat(t.toPrecision(14))}function X(t,e){$=O(t,e.animation)}function i(){var t=Z.global.useUTC,e=t?"getUTC":"get",i=t?"setUTC":"set";Q=t?Date.UTC:function(t,e,i,s,n,o){return new Date(t,e,O(i,1),O(s,0),O(n,0),O(o,0)).getTime()},tt=e+"Minutes",et=e+"Hours",it=e+"Day",st=e+"Date",nt=e+"Month",ot=e+"FullYear",rt=i+"Minutes",at=i+"Hours",ht=i+"Date",lt=i+"Month",ct=i+"FullYear"}function W(){}function Y(t,e,i,s){this.axis=t,this.pos=e,this.type=i||"",this.isNew=!0,i||s||this.addLabel()}function E(t,e){this.axis=t,e&&(this.options=e,this.id=e.id)}function G(t,e,i,s,n,o){var r=t.chart.inverted;this.axis=t,this.isNegative=i,this.options=e,this.x=s,this.total=null,this.points={},this.stack=n,this.percent="percent"===o,this.alignOptions={align:e.align||(r?i?"left":"right":"center"),verticalAlign:e.verticalAlign||(r?"middle":i?"bottom":"top"),y:O(e.y,r?4:i?14:-6),x:O(e.x,r?i?-6:6:0)},this.textAlign=e.textAlign||(r?i?"right":"left":"center")}function h(){this.init.apply(this,arguments)}function N(){this.init.apply(this,arguments)}function s(t,e){this.init(t,e)}function F(t,e){this.init(t,e)}function n(){this.init.apply(this,arguments)}function V(){}var j,_,U,Z,K,$,q,J,Q,tt,et,it,st,nt,ot,rt,at,ht,lt,ct,dt,pt=document,ut=window,gt=Math,ft=gt.round,mt=gt.floor,xt=gt.ceil,yt=gt.max,vt=gt.min,bt=gt.abs,kt=gt.cos,wt=gt.sin,Tt=gt.PI,St=2*Tt/360,Lt=navigator.userAgent,Pt=ut.opera,At=/msie/i.test(Lt)&&!Pt,Ct=8===pt.documentMode,Mt=/AppleWebKit/.test(Lt),Dt=/Firefox/.test(Lt),It=/(Mobile|Android|Windows Phone)/.test(Lt),zt="http://www.w3.org/2000/svg",Bt=!!pt.createElementNS&&!!pt.createElementNS(zt,"svg").createSVGRect,Ot=Dt&&parseInt(Lt.split("Firefox/")[1],10)<4,Ht=!Bt&&!At&&!!pt.createElement("canvas").getContext,Rt=pt.documentElement.ontouchstart!==j,Xt={},Wt=0,Yt=[],Et="div",Gt="none",Nt="rgba(192,192,192,"+(Bt?1e-4:.002)+")",Ft="millisecond",Vt="second",jt="minute",_t="hour",Ut="day",Zt="week",Kt="month",$t="year",qt="stroke-width",Jt={};ut.Highcharts=ut.Highcharts?B(16,!0):{},K=function(t,e,i){if(!z(e)||isNaN(e))return"Invalid date";t=O(t,"%Y-%m-%d %H:%M:%S");var s,n=(d=new Date(e))[et](),o=d[it](),r=d[st](),a=d[nt](),h=d[ot](),l=Z.lang,c=l.weekdays,d=D({a:c[o].substr(0,3),A:c[o],d:p(r),e:r,b:l.shortMonths[a],B:l.months[a],m:p(a+1),y:h.toString().substr(2,2),Y:h,H:p(n),I:p(n%12||12),l:n%12||12,M:p(d[tt]()),p:n<12?"AM":"PM",P:n<12?"am":"pm",S:p(d.getSeconds()),L:p(ft(e%1e3),3)},Highcharts.dateFormats);for(s in d)for(;-1!==t.indexOf("%"+s);)t=t.replace("%"+s,"function"==typeof d[s]?d[s](e):d[s]);return i?t.substr(0,1).toUpperCase()+t.substr(1):t},a.prototype={wrapColor:function(t){this.color>=t&&(this.color=0)},wrapSymbol:function(t){this.symbol>=t&&(this.symbol=0)}},J=function(){for(var t=0,e=arguments,i=e.length,s={};t{point.key}
',pointFormat:'{series.name}: {point.y}
',shadow:!0,snap:It?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"Highcharts.com",href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#909090",fontSize:"9px"}}}).plotOptions),ge=ue.line;i();var fe=function(t){var e,n,i,o=[];return(i=t)&&i.stops?n=re(i.stops,function(t){return fe(t[1])}):(e=/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*\)/.exec(i))?o=[k(e[1]),k(e[2]),k(e[3]),parseFloat(e[4],10)]:(e=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(i))?o=[k(e[1],16),k(e[2],16),k(e[3],16),1]:(e=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(i))&&(o=[k(e[1]),k(e[2]),k(e[3]),1]),{get:function(i){var s;return n?((s=I(t)).stops=[].concat(s.stops),se(n,function(t,e){s.stops[e]=[s.stops[e][0],t.get(i)]})):s=o&&!isNaN(o[0])?"rgb"===i?"rgb("+o[0]+","+o[1]+","+o[2]+")":"a"===i?o[3]:"rgba("+o.join(",")+")":t,s},brighten:function(e){if(n)se(n,function(t){t.brighten(e)});else if(x(e)&&0!==e){var t;for(t=0;t<3;t++)o[t]+=k(255*e),o[t]<0&&(o[t]=0),255a||!z(a)&&z(i))){n.insertBefore(r,t),e=!0;break}return e||n.appendChild(r),this.added=!0,le(this,"add"),this},safeRemoveChild:function(t){var e=t.parentNode;e&&e.removeChild(t)},destroy:function(){var t,e,i=this,s=i.element||{},n=i.shadows,o=i.renderer.isSVG&&"SPAN"===s.nodeName&&s.parentNode;if(s.onclick=s.onmouseout=s.onmouseover=s.onmousemove=s.point=null,pe(i),i.clipPath&&(i.clipPath=i.clipPath.destroy()),i.stops){for(e=0;e/g,'').replace(/<(i|em)>/g,'').replace(//g,"").split(//g),e=p.childNodes,f=/style="([^"]+)"/,m=/href="(http[^"]+)"/,x=w(p,"x"),y=d.styles,v=y&&y.width&&k(y.width),b=y&&y.lineHeight,i=e.length;i--;)p.removeChild(e[i]);v&&!d.added&&this.box.appendChild(p),""===t[t.length-1]&&t.pop(),se(t,function(t,h){var l,c=0;t=t.replace(//g,"|||");l=t.split("|||"),se(l,function(t){if(""!==t||1===l.length){var e,i={},s=pt.createElementNS(zt,"tspan");if(f.test(t)&&w(s,"style",e=t.match(f)[1].replace(/(;| |^)color([ :])/,"$1fill$2")),m.test(t)&&!g&&(w(s,"onclick",'location.href="'+t.match(m)[1]+'"'),S(s,{cursor:"pointer"}))," "!==(t=(t.replace(/<(.|\n)*?>/g,"")||" ").replace(/</g,"<").replace(/>/g,">"))&&(s.appendChild(pt.createTextNode(t)),c?i.dx=0:i.x=x,w(s,i),!c&&h&&(!Bt&&g&&S(s,{display:"block"}),w(s,"dy",b||u.fontMetrics(/px$/.test(s.style.fontSize)?s.style.fontSize:y.fontSize).h,Mt&&s.offsetHeight)),p.appendChild(s),c++,v)){t=t.replace(/([^\^])-/g,"$1- ").split(" "),i=d._clipHeight;for(var n,o=[],r=k(b||16),a=1;t.length||o.length;)delete d.bBox,n=d.getBBox().width,v'),e&&(i=n||"span"===e||"img"===e?i.join(""):t.prepVML(i),this.element=C(i)),this.renderer=t,this.attrSetters={}},add:function(t){var e=this.renderer,i=this.element,s=e.box;s=t?t.element||t:s;return t&&t.inverted&&e.invertChild(i,s),s.appendChild(i),this.added=!0,this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform(),le(this,"add"),this},updateTransform:W.prototype.htmlUpdateTransform,setSpanRotation:function(t,e,i){S(this.element,{filter:t?["progid:DXImageTransform.Microsoft.Matrix(M11=",i,", M12=",-e,", M21=",e,", M22=",i,", sizingMethod='auto expand')"].join(""):Gt})},pathToVML:function(t){for(var e,i=t.length,s=[];i--;)x(t[i])?s[i]=ft(10*t[i])-5:"Z"===t[i]?s[i]="x":(s[i]=t[i],!t.isArc||"wa"!==t[i]&&"at"!==t[i]||(e="wa"===t[i]?1:-1,s[i+5]===s[i+7]&&(s[i+7]-=e),s[i+6]===s[i+8]&&(s[i+8]-=e)));return s.join(" ")||"x"},attr:function(t,e){var i,s,n,o,r,a=this.element||{},h=a.style,l=a.nodeName,c=this.renderer,d=this.symbolName,p=this.shadows,u=this.attrSetters,g=this;if(f(t)&&z(e)&&(i=t,(t={})[i]=e),f(t))g="strokeWidth"===(i=t)||"stroke-width"===i?this.strokeweight:this[i];else for(i in t)if(s=t[i],(r=!1)!==(n=u[i]&&u[i].call(this,s,i))&&null!==s){if(n!==j&&(s=n),d&&/^(x|y|r|start|end|width|height|innerR|anchorX|anchorY)/.test(i))o||(this.symbolAttr(t),o=!0),r=!0;else if("d"===i){if(s=s||[],this.d=s.join(" "),a.path=s=this.pathToVML(s),p)for(n=p.length;n--;)p[n].path=p[n].cutOff?this.cutOffPath(s,p[n].cutOff):s;r=!0}else if("visibility"===i){if(p)for(n=p.length;n--;)p[n].style[i]=s;"DIV"===l&&(s="hidden"===s?"-999em":0,Ct||(h[i]=s?"visible":"hidden"),i="top"),h[i]=s,r=!0}else"zIndex"===i?(s&&(h[i]=s),r=!0):-1!==ie(i,["x","y","width","height"])?(this[i]=s,"x"===i||"y"===i?i={x:"left",y:"top"}[i]:s=yt(0,s),this.updateClipping?(this[i]=s,this.updateClipping()):h[i]=s,r=!0):"class"===i&&"DIV"===l?a.className=s:"stroke"===i?(s=c.color(s,a,i),i="strokecolor"):"stroke-width"===i||"strokeWidth"===i?(a.stroked=!!s,x(this[i="strokeweight"]=s)&&(s+="px")):"dashstyle"===i?((a.getElementsByTagName("stroke")[0]||C(c.prepVML([""]),null,null,a))[i]=s||"solid",this.dashstyle=s,r=!0):"fill"===i?"SPAN"===l?h.color=s:"IMG"!==l&&(a.filled=s!==Gt,s=c.color(s,a,i,this),i="fillcolor"):"opacity"===i?r=!0:"shape"===l&&"rotation"===i?(this[i]=a.style[i]=s,a.style.left=-ft(wt(s*St)+1)+"px",a.style.top=ft(kt(s*St))+"px"):"translateX"===i||"translateY"===i||"rotation"===i?(this[i]=s,this.updateTransform(),r=!0):"text"===i&&(this.bBox=null,a.innerHTML=s,r=!0);r||(Ct?a[i]=s:w(a,i,s))}return g},clip:function(t){var e,i=this;return t=t?(l(e=t.members,i),e.push(i),i.destroyClip=function(){l(e,i)},t.getCSS(i)):(i.destroyClip&&i.destroyClip(),{clip:Ct?"inherit":"rect(auto)"}),i.css(t)},css:W.prototype.htmlCss,safeRemoveChild:function(t){t.parentNode&&r(t)},destroy:function(){return this.destroyClip&&this.destroyClip(),W.prototype.destroy.apply(this)},on:function(t,e){return this.element["on"+t]=function(){var t=ut.event;t.target=t.srcElement,e(t)},this},cutOffPath:function(t,e){var i;return 9!==(i=(t=t.split(/[ ,]/)).length)&&11!==i||(t[i-4]=t[i-2]=k(t[i-2])-10*e),t.join(" ")},shadow:function(t,e,i){var s,n,o,r,a,h,l,c=[],d=this.element,p=this.renderer,u=d.style,g=d.path;if(g&&"string"!=typeof g.value&&(g="x"),a=g,t){for(h=O(t.width,3),l=(t.opacity||.15)/h,s=1;s<=3;s++)r=2*h+1-2*s,i&&(a=this.cutOffPath(g.value,.5+r)),o=[''],n=C(p.prepVML(o),null,{left:k(u.left)+O(t.offsetX,1),top:k(u.top)+O(t.offsetY,1)}),i&&(n.cutOff=1+r),o=[''],C(p.prepVML(o),null,null,n),e?e.element.appendChild(n):d.parentNode.insertBefore(n,d),c.push(n);this.shadows=c}return this}};var be={Element:xe=t(W,xe),isIE8:-1'],C(a.prepVML(o),null,null,e)}var d,p,u,g,f,m,x,y,v=t.linearGradient||t.radialGradient,b="",k=(t=t.stops,[]);if(u=t[0],y=t[t.length-1],0'],C(this.prepVML(o),null,null,e),n.get("rgb")):((l=e.getElementsByTagName(i)).length&&(l[0].opacity=1,l[0].type="solid"),t);return l},prepVML:function(t){var e=this.isIE8;t=t.join("");return t=e?-1===(t=t.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />')).indexOf('style="')?t.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'):t.replace('style="','style="display:inline-block;behavior:url(#default#VML);'):t.replace("<","=e?(s.dataMin=e,s.ignoreMinPadding=!0):s.dataMaxl+this.width)&&(a=!0)):(i=l,o=p-this.right,(nc+this.height)&&(a=!0)),a&&!s?null:h.renderer.crispLine(["M",i,n,"L",o,r],e||0)},getPlotBandPath:function(t,e){var i=this.getPlotLinePath(e),s=this.getPlotLinePath(t);return s&&i?s.push(i[4],i[5],i[1],i[2]):s=null,s},getLinearTickPositions:function(t,e,i){e=R(mt(e/t)*t),i=R(xt(i/t)*t);for(var s,n=[];e<=i&&(n.push(e),(e=R(e+t))!==s);)s=e;return n},getLogTickPositions:function(t,e,i,s){var n=this.options,o=this.len,r=[];if(s||(this._minorAutoInterval=null),.5<=t)t=ft(t),r=this.getLinearTickPositions(t,e,i);else if(.08<=t){var a,h,l,c,d;for(o=mt(e),n=.3=this.minRange;if(this.isXAxis&&this.minRange===j&&!this.isLog&&(z(o.min)||z(o.max)?this.minRange=null:(se(this.series,function(t){for(n=t.xData,i=t.xIncrement?1:n.length-1;0yt(2*i.len,200)&&B(19,!0),t=r?(i.getNonLinearTimeTicks||A)(P(i.tickInterval,n.units),i.min,i.max,n.startOfWeek,i.ordinalPositions,i.closestPointRange,!0):o?i.getLogTickPositions(i.tickInterval,i.min,i.max):i.getLinearTickPositions(i.tickInterval,i.min,i.max),e&&t.splice(1,t.length-2),i.tickPositions=t),h||(o=t[0],r=t[t.length-1],h=i.minPointOffset||0,n.startOnTick?i.min=o:i.min-h>o&&t.shift(),n.endOnTick?i.max=r:i.max+h(e[s]||0)&&!1!==this.options.alignTicks&&(e[s]=i.length),t.maxTicks=e},adjustTickAmount:function(){var t=this._maxTicksKey,e=this.tickPositions,i=this.chart.maxTicks;if(i&&i[t]&&!this.isDatetimeAxis&&!this.categories&&!this.isLinked&&!1!==this.options.alignTicks){var s=this.tickAmount,n=e.length;if(this.tickAmount=t=i[t],n=this.dataMax&&(e=j)),this.displayBtn=t!==j||e!==j,this.setExtremes(t,e,!1,j,{trigger:"zoom"}),!0},setAxisSize:function(){var t,e,i=this.chart,s=this.options,n=s.offsetLeft||0,o=s.offsetRight||0,r=this.horiz;this.left=e=O(s.left,i.plotLeft+n),this.top=t=O(s.top,i.plotTop),this.width=n=O(s.width,i.plotWidth-n+o),this.height=s=O(s.height,i.plotHeight),this.bottom=i.chartHeight-s-t,this.right=i.chartWidth-n-e,this.len=yt(r?n:s,0),this.pos=r?e:t},getExtremes:function(){var t=this.isLog;return{min:t?R(T(this.min)):this.min,max:t?R(T(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(t){var e=(i=this.isLog)?T(this.min):this.min,i=i?T(this.max):this.max;return t=i.min&&t<=i.max)&&(c[t]||(c[t]=new Y(i,t)),x&&c[t].isNew&&c[t].render(e,!0),c[t].render(e,!1,1))}),f&&0===i.min&&(c[-1]||(c[-1]=new Y(i,-1,null,!0)),c[-1].render(-1))),g&&se(a,function(t,e){e%2==0&&tl&&e.splice(i,1);e.length&&e[0].clientX!==this.hoverX&&(r.refresh(e,t),this.hoverX=e[0].clientX)}h&&h.tracker?(n=h.tooltipPoints[c])&&n!==a&&n.onMouseOver(t):r&&r.followPointer&&!r.isHidden&&(t=r.getAnchor([{}],t),r.updatePosition({plotX:t[0],plotY:t[1]}))},reset:function(t){var e=(n=this.chart).hoverSeries,i=n.hoverPoint,s=n.tooltip,n=s&&s.shared?n.hoverPoints:i;(t=t&&s&&n)&&u(n)[0].plotX===j&&(t=!1),t?s.refresh(n):(i&&i.onMouseOut(),e&&e.onMouseOut(),s&&(s.hide(),s.hideCrosshairs()),this.hoverX=null)},scaleGroups:function(e,i){var s,n=this.chart;se(n.series,function(t){s=e||t.getPlotBox(),t.xAxis&&t.xAxis.zoomEnabled&&(t.group.attr(s),t.markerGroup&&(t.markerGroup.attr(s),t.markerGroup.clip(i?n.clipRect:null)),t.dataLabelsGroup&&t.dataLabelsGroup.attr(s))}),n.clipRect.attr(i||n.clipBox)},pinchTranslateDirection:function(t,e,i,s,n,o,r){var a,h,l,c=this.chart,d=t?"x":"y",p=t?"X":"Y",u="chart"+p,g=t?"width":"height",f=c["plot"+(t?"Left":"Top")],m=1,x=c.inverted,y=c.bounds[t?"h":"v"],v=1===e.length,b=e[0][u],k=i[0][u],w=!v&&e[1][u],T=!v&&i[1][u];(i=function(){!v&&20y.max&&(e=y.max-a,l=!0),l?(k-=.8*(k-r[d][0]),v||(T-=.8*(T-r[d][1])),i()):r[d]=[k,T],x||(o[d]=h-f,o[g]=a),o=x?1/m:m,n[g]=a,n[d]=e,s[x?t?"scaleY":"scaleX":"scale"+p]=m,s["translate"+p]=o*f+(k-o*b)},pinch:function(t){var e=this,r=e.chart,i=e.pinchDown,s=r.tooltip&&r.tooltip.options.followTouchMove,n=t.touches,o=n.length,a=e.lastValidTouch,h=e.zoomHor||e.pinchHor,l=e.zoomVert||e.pinchVert,c=h||l,d=e.selectionMarker,p={},u=1===o&&(e.inClass(t.target,"highcharts-tracker")&&r.runTrackerClick||r.runChartClick),g={};!c&&!s||u||t.preventDefault(),re(n,function(t){return e.normalize(t)}),"touchstart"===t.type?(se(n,function(t,e){i[e]={chartX:t.chartX,chartY:t.chartY}}),a.x=[i[0].chartX,i[1]&&i[1].chartX],a.y=[i[0].chartY,i[1]&&i[1].chartY],se(r.axes,function(t){if(t.zoomEnabled){var e=r.bounds[t.horiz?"h":"v"],i=t.minPixelPadding,s=t.toPixels(t.dataMin),n=t.toPixels(t.dataMax),o=vt(s,n);s=yt(s,n);e.min=vt(t.pos,o-i),e.max=yt(t.pos+t.len,s+i)}})):i.length&&(d||(e.selectionMarker=d=D({destroy:V},r.plotBox)),h&&e.pinchTranslateDirection(!0,i,n,p,d,g,a),l&&e.pinchTranslateDirection(!1,i,n,p,d,g,a),e.hasPinched=c,e.scaleGroups(p,g),!c&&s&&1===o&&this.runPointActions(e.normalize(t)))},dragStart:function(t){var e=this.chart;e.mouseIsDown=t.type,e.cancelClick=!1,e.mouseDownX=this.mouseDownX=t.chartX,e.mouseDownY=this.mouseDownY=t.chartY},drag:function(t){var e,i=this.chart,s=i.options.chart,n=t.chartX,o=t.chartY,r=this.zoomHor,a=this.zoomVert,h=i.plotLeft,l=i.plotTop,c=i.plotWidth,d=i.plotHeight,p=this.mouseDownX,u=this.mouseDownY;n(u||e.chartWidth-2*c-m)&&(t.itemX=m,t.itemY+=f+t.lastLineHeight+g,t.lastLineHeight=0),t.maxItemWidth=yt(t.maxItemWidth,n),t.lastItemY=f+t.itemY+g,t.lastLineHeight=yt(r,t.lastLineHeight),i._legendItemPos=[t.itemX,t.itemY],o?t.itemX+=n:(t.itemY+=f+r+g,t.lastLineHeight=r),t.offsetWidth=u||yt((o?t.itemX-m-d:n)+c,t.offsetWidth)},render:function(){var i,t,e,s,n=this,o=n.chart,r=o.renderer,a=n.group,h=n.box,l=n.options,c=n.padding,d=l.borderWidth,p=l.backgroundColor;n.itemX=n.initialItemX,n.itemY=n.initialItemY,n.offsetWidth=0,n.lastItemY=0,a||(n.group=a=r.g("legend").attr({zIndex:7}).add(),n.contentGroup=r.g().attr({zIndex:1}).add(a),n.scrollGroup=r.g().add(n.contentGroup)),n.renderTitle(),i=[],se(o.series,function(t){var e=t.options;e.showInLegend&&!z(e.linkedTo)&&(i=i.concat(t.legendItems||("point"===e.legendType?t.data:t)))}),g(i,function(t,e){return(t.options&&t.options.legendIndex||0)-(e.options&&e.options.legendIndex||0)}),l.reversed&&i.reverse(),n.allItems=i,n.display=t=!!i.length,se(i,function(t){n.renderItem(t)}),e=l.width||n.offsetWidth,s=n.lastItemY+n.lastLineHeight+n.titleHeight,s=n.handleOverflow(s),(d||p)&&(e+=c,s+=c,h?0vt(o.dataMin,o.min)&&sn&&("string"===(i=typeof t[0])?e.name=t[0]:"number"===i&&(e.x=t[0]),o++);ra;)h--;c.splice(h,0,a),d.splice(h,0,this.toYData?this.toYData(s):s.y),p.splice(h,0,s.z),u&&(u[a]=s.name),f.splice(h,0,t),n&&(this.data.splice(h,0,null),this.processData()),"point"===o.legendType&&this.generatePoints(),i&&(r[0]&&r[0].remove?r[0].remove(!1):(r.shift(),c.shift(),d.shift(),p.shift(),f.shift())),this.isDirtyData=this.isDirty=!0,e&&(this.getAttribs(),l.redraw())},setData:function(t,e){var i,s=this.points,n=this.options,o=this.chart,r=null,a=this.xAxis,h=a&&a.categories&&!a.categories.length?[]:null;this.xIncrement=null,this.pointRange=a&&a.categories?1:n.pointRange,this.colorCounter=0;var l=[],c=[],d=[],p=t?t.length:[];i=O(n.turboThreshold,1e3);var u=(u=this.pointArrayMap)&&u.length,g=!!this.toYData;if(i&&ia?(i=[],s=[]):(i[0]a)&&(i=(e=this.cropData(this.xData,this.yData,t,a)).xData,s=e.yData,e=e.start,o=!0)),a=i.length-1;0<=a;a--)0<(n=i[a]-i[a-1])&&(r===j||n=i){r=yt(0,n-h);break}for(;ns){a=n+h;break}return{xData:t.slice(r,a),yData:e.slice(r,a),start:r,end:a}},generatePoints:function(){var t,e,i,s,n=this.options.data,o=this.data,r=this.processedXData,a=this.processedYData,h=this.pointClass,l=r.length,c=this.cropStart||0,d=this.hasGroupedData,p=[];for(o||d||((o=[]).length=n.length,o=this.data=o),s=0;s=c&&(o[s-1]||e)<=d,t&&e)if(t=i.length)for(;t--;)null!==i[t]&&(h[l++]=i[t]);else h[l++]=i;this.dataMin=O(void 0,M(h)),this.dataMax=O(void 0,H(h))},translate:function(){this.processedXData||this.processData(),this.generatePoints();for(var t=(c=this.options).stacking,e=this.xAxis,i=e.categories,s=this.yAxis,n=this.points,o=n.length,r=!!this.modifyValue,a=c.pointPlacement,h="between"===a||x(a),l=c.threshold,c=0;c=a.min&&e<=a.max)for(s=o[n+1],e=i===j?0:i+1,i=o[n+1]?vt(yt(0,mt((r.clientX+(s?s.wrappedClientX||s.clientX:h))/2)),h):h;0<=e&&e<=i;)l[e++]=r;this.tooltipPoints=l}},tooltipHeaderFormatter:function(t){var e,i=(o=this.tooltipOptions).xDateFormat,s=o.dateTimeLabelFormats,n=(r=this.xAxis)&&"datetime"===r.options.type,o=o.headerFormat,r=r&&r.closestPointRange;if(n&&!i)if(r){for(e in J)if(J[e]>=r){i=s[e];break}}else i=s.day;return n&&i&&x(t.key)&&(o=o.replace("{point.key}","{point.key:"+i+"}")),L(o,{point:t,series:this})},onMouseOver:function(){var t=this.chart,e=t.hoverSeries;e&&e!==this&&e.onMouseOut(),this.options.events.mouseOver&&le(this,"mouseOver"),this.setState("hover"),t.hoverSeries=this},onMouseOut:function(){var t=this.options,e=this.chart,i=e.tooltip,s=e.hoverPoint;s&&s.onMouseOut(),this&&t.events.mouseOut&&le(this,"mouseOut"),!i||t.stickyTracking||i.shared&&!this.noSharedTooltip||i.hide(),this.setState(),e.hoverSeries=null},animate:function(t){var e,i=this,s=i.chart,n=s.renderer;e=i.options.animation;var o,r=s.clipBox,a=s.inverted;e&&!c(e)&&(e=ue[i.type].animation),o="_sharedClip"+e.duration+e.easing,t?(t=s[o],e=s[o+"m"],t||(s[o]=t=n.clipRect(D(r,{width:0})),s[o+"m"]=e=n.clipRect(-99,a?-s.plotLeft:-s.plotTop,99,a?s.chartWidth:s.chartHeight)),i.group.clip(t),i.markerGroup.clip(e),i.sharedClipKey=o):((t=s[o])&&(t.animate({width:s.plotSizeX},e),s[o+"m"].animate({width:s.plotSizeX+99},e)),i.animate=null,i.animationTimeout=setTimeout(function(){i.afterAnimate()},e.duration))},afterAnimate:function(){var t=this.chart,e=this.sharedClipKey,i=this.group;i&&!1!==this.options.clip&&(i.clip(t.clipRect),this.markerGroup.clip()),setTimeout(function(){e&&t[e]&&(t[e]=t[e].destroy(),t[e+"m"]=t[e+"m"].destroy())},100)},drawPoints:function(){var t,e,i,s,n,o,r,a,h,l,c=this.points,d=this.chart,p=this.options.marker,u=this.markerGroup;if(p.enabled||this._hasPointMarkers)for(s=c.length;s--;)n=c[s],e=mt(n.plotX),i=n.plotY,h=n.graphic,r=n.marker||{},t=p.enabled&&r.enabled===j||r.enabled,l=d.isInsidePlot(ft(e),i,d.inverted),t&&i!==j&&!isNaN(i)&&null!==n.y?(o=(t=n.pointAttr[n.selected?"select":""]).r,a=0===(r=O(r.symbol,this.symbol)).indexOf("url"),h?h.attr({visibility:l?Bt?"inherit":"visible":"hidden"}).animate(D({x:e-o,y:i-o},h.symbolName?{width:2*o,height:2*o}:{})):l&&(0h.plotWidth&&("left"===l?e.align="right":e.x=h.plotWidth-r,a=!0),(r=i.y)<0&&("bottom"===c?e.verticalAlign="top":e.y=-r,a=!0),(r=i.y+s.height)>h.plotHeight&&("top"===c?e.verticalAlign="bottom":e.y=h.plotHeight-r,a=!0),a&&(t.placed=!o,t.align(e,null,n))},getSegmentPath:function(o){var r=this,a=[],h=r.options.step;return se(o,function(t,e){var i,s=t.plotX,n=t.plotY;r.getPointSpline?a.push.apply(a,r.getPointSpline(o,t,e)):(a.push(e?"L":"M"),h&&e&&(i=o[e-1],"right"===h?a.push(i.plotX,n):"center"===h?a.push((i.plotX+s)/2,i.plotY,(i.plotX+s)/2,n):a.push(s,i.plotY)),a.push(t.plotX,t.plotY))}),a},getGraphPath:function(){var e,i=this,s=[],n=[];return se(i.segments,function(t){e=i.getSegmentPath(t),1l?i-l:h-(a.translate(t.y,0,1,0,1)<=h?l:0))),t.barX=n,t.pointWidth=c,i=bt(n)<.5,o=ft(n+o)+u,o-=n=ft(n)+u,e=bt(r)<.5,s=ft(r+s)+g,s-=r=ft(r)+g,i&&(n+=1,--o),e&&(--r,s+=1),t.shapeType="rect",t.shapeArgs={x:n,y:r,width:o,height:s}})},getSymbol:V,drawLegendSymbol:Qt.prototype.drawLegendSymbol,drawGraph:V,drawPoints:function(){var s,n=this,o=n.options,r=n.chart.renderer;se(n.points,function(t){var e=t.plotY,i=t.graphic;e===j||isNaN(e)||null===t.y?i&&(t.graphic=i.destroy()):(s=t.shapeArgs,i?(pe(i),i.animate(I(s))):t.graphic=r[t.shapeType](s).attr(t.pointAttr[t.selected?"select":""]).add(n.group).shadow(o.shadow,null,o.stacking&&!o.borderRadius))})},drawTracker:function(){function e(t){var e,i=t.target;for(n.hoverSeries!==s&&s.onMouseOver();i&&!e;)e=i.point,i=i.parentNode;e!==j&&e!==n.hoverPoint&&e.onMouseOver(t)}var s=this,n=s.chart,i=n.pointer,t=s.options.cursor,o=t&&{cursor:t};se(s.points,function(t){t.graphic&&(t.graphic.element.point=t),t.dataLabel&&(t.dataLabel.element.point=t)}),s._hasTracking||(se(s.trackerGroups,function(t){s[t]&&(s[t].addClass("highcharts-tracker").on("mouseover",e).on("mouseout",function(t){i.onTrackerMouseOut(t)}).css(o),Rt)&&s[t].on("touchstart",e)}),s._hasTracking=!0)},alignDataLabel:function(t,e,i,s,n){var o=this.chart,r=o.inverted,a=t.dlBox||t.shapeArgs,h=t.below||t.plotY>O(this.translatedThreshold,o.plotSizeY),l=O(i.inside,!!this.options.stacking);a&&(s=I(a),r&&(s={x:o.plotWidth-s.y-s.height,y:o.plotHeight-s.x-s.width,width:s.height,height:s.width}),!l)&&(r?(s.x+=h?0:s.width,s.width=0):(s.y+=h?s.height:0,s.height=0)),i.align=O(i.align,!r||l?"center":h?"right":"left"),i.verticalAlign=O(i.verticalAlign,r||l?"middle":h?"top":"bottom"),Te.prototype.alignDataLabel.call(this,t,e,i,s,n)},animate:function(t){var e=this.yAxis,i=this.options,s=this.chart.inverted,n={};Bt&&(t?(n.scaleY=.001,t=vt(e.pos+e.len,yt(e.pos,e.toPixels(i.threshold))),s?n.translateX=t-e.len:n.translateY=t,this.group.attr(n)):(n.scaleY=1,n[s?"translateX":"translateY"]=e.pos,this.group.animate(n,this.options.animation),this.animate=null))},remove:function(){var e=this,t=e.chart;t.hasRendered&&se(t.series,function(t){t.type===e.type&&(t.isDirty=!0)}),Te.prototype.remove.apply(e,arguments)}}),Jt.column=xe,ue.bar=I(ue.column),be=t(xe,{type:"bar",inverted:!0}),Jt.bar=be,ue.scatter=I(ge,{lineWidth:0,tooltip:{headerFormat:'{series.name}
',pointFormat:"x: {point.x}
y: {point.y}
",followPointer:!0},stickyTracking:!1}),be=t(Te,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["markerGroup"],drawTracker:xe.prototype.drawTracker,setTooltipPoints:V}),Jt.scatter=be,ue.pie=I(ge,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return this.point.name}},ignoreHiddenPoint:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}}),ge={type:"pie",isCartesian:!1,pointClass:t(we,{init:function(){we.prototype.init.apply(this,arguments);var t,e=this;return e.y<0&&(e.y=null),D(e,{visible:!1!==e.visible,name:O(e.name,"Slice")}),t=function(t){e.slice("select"===t.type)},ae(e,"select",t),ae(e,"unselect",t),e},setVisible:function(t){var e,i=this,s=i.series,n=s.chart;i.visible=i.options.visible=t=t===j?!i.visible:t,s.options.data[ie(i,s.data)]=i.options,e=t?"show":"hide",se(["graphic","dataLabel","connector","shadowGroup"],function(t){i[t]&&i[t][e]()}),i.legendItem&&n.legend.colorizeItem(i,t),!s.isDirty&&s.options.ignoreHiddenPoint&&(s.isDirty=!0,n.redraw())},slice:function(t,e,i){var s=this.series;X(i,s.chart),O(e,!0),this.sliced=this.options.sliced=t=z(t)?t:!this.sliced,s.options.data[ie(this,s.data)]=this.options,t=t?this.slicedTranslation:{translateX:0,translateY:0},this.graphic.animate(t),this.shadowGroup&&this.shadowGroup.animate(t)}}),requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},getColor:V,animate:function(t){var i=this,e=i.points,s=i.startAngleRad;t||(se(e,function(t){var e=t.graphic;t=t.shapeArgs;e&&(e.attr({r:i.center[3]/2,start:s,end:s}),e.animate({r:t.r,start:t.start,end:t.end},i.options.animation))}),i.animate=null)},setData:function(t,e){Te.prototype.setData.call(this,t,!1),this.processData(),this.generatePoints(),O(e,!0)&&this.chart.redraw()},generatePoints:function(){var t,e,i,s,n=0,o=this.options.ignoreHiddenPoint;for(Te.prototype.generatePoints.call(this),i=(e=this.points).length,t=0;t=o&&D.splice(p,1);I=D.length}for(p=0;p