/* highcharts js v5.0.6 (2016-12-07) (c) 2009-2016 torstein honsi license: www.highcharts.com/license */ (function(l,a){"object"===typeof module&&module.exports?module.exports=l.document?a(l):a:l.highcharts=a(l)})("undefined"!==typeof window?window:this,function(l){l=function(){var a=window,d=a.document,c=a.navigator&&a.navigator.useragent||"",g=d&&d.createelementns&&!!d.createelementns("http://www.w3.org/2000/svg","svg").createsvgrect,i=/(edge|msie|trident)/i.test(c)&&!window.opera,h=!g,f=/firefox/.test(c),p=f&&4>parseint(c.split("firefox/")[1],10);return a.highcharts?a.highcharts.error(16,!0):{product:"highcharts", version:"5.0.6",deg2rad:2*math.pi/360,doc:d,hasbidibug:p,hastouch:d&&void 0!==d.documentelement.ontouchstart,isms:i,iswebkit:/applewebkit/.test(c),isfirefox:f,istouchdevice:/(mobile|android|windows phone)/.test(c),svg_ns:"http://www.w3.org/2000/svg",chartcount:0,seriestypes:{},symbolsizes:{},svg:g,vml:h,win:a,charts:[],marginnames:["plottop","marginright","marginbottom","plotleft"],noop:function(){}}}();(function(a){var d=[],c=a.charts,g=a.doc,i=a.win;a.error=function(h,f){h=a.isnumber(h)?"highcharts error #"+ h+": www.highcharts.com/errors/"+h:h;if(f)throw error(h);i.console&&console.log(h)};a.fx=function(a,f,p){this.options=f;this.elem=a;this.prop=p};a.fx.prototype={dsetter:function(){var a=this.paths[0],f=this.paths[1],p=[],v=this.now,l=a.length,u;if(1===v)p=this.tod;else if(l===f.length&&1>v)for(;l--;)u=parsefloat(a[l]),p[l]=isnan(u)?a[l]:v*parsefloat(f[l]-u)+u;else p=f;this.elem.attr("d",p,null,!0)},update:function(){var a=this.elem,f=this.prop,p=this.now,v=this.options.step;if(this[f+"setter"])this[f+ "setter"]();else a.attr?a.element&&a.attr(f,p,null,!0):a.style[f]=p+this.unit;v&&v.call(a,p,this)},run:function(a,f,p){var h=this,l=function(a){return l.stopped?!1:h.step(a)},u;this.starttime=+new date;this.start=a;this.end=f;this.unit=p;this.now=this.start;this.pos=0;l.elem=this.elem;l.prop=this.prop;l()&&1===d.push(l)&&(l.timerid=setinterval(function(){for(u=0;u=u+this.starttime){this.now=this.end;this.pos=1;this.update();a=d[this.prop]=!0;for(c in d)!0!==d[c]&&(a=!1);a&&l&&l.call(h);h=!1}else this.pos=v.easing((f-this.starttime)/u),this.now=this.start+(this.end-this.start)*this.pos,this.update(),h=!0;return h},initpath:function(h,f,p){function v(a){var e,b;for(q=a.length;q--;)e="m"===a[q]||"l"===a[q],b=/[a-za-z]/.test(a[q+3]),e&&b&&a.splice(q+1,0,a[q+1],a[q+2],a[q+1],a[q+ 2])}function l(a,e){for(;a.lengthd?"am":"pm",p:12>d?"am":"pm",s:z(l.getseconds()),l:z(math.round(f% 1e3),3)},a.dateformats);for(u in v)for(;-1!==h.indexof("%"+u);)h=h.replace("%"+u,"function"===typeof v[u]?v[u](f):v[u]);return p?h.substr(0,1).touppercase()+h.substr(1):h};a.formatsingle=function(h,f){var p=/\.([0-9])/,v=a.defaultoptions.lang;/f$/.test(h)?(p=(p=h.match(p))?p[1]:-1,null!==f&&(f=a.numberformat(f,p,v.decimalpoint,-1=p&&(f=[1/p]))); for(v=0;v=h||!l&&u<=(f[v]+(f[v+1]||f[v]))/2);v++);return d*p};a.stablesort=function(a,f){var p=a.length,h,l;for(l=0;lp&&(p=a[f]);return p};a.destroyobjectproperties=function(a,f){for(var p in a)a[p]&&a[p]!==f&&a[p].destroy&& a[p].destroy(),delete a[p]};a.discardelement=function(h){var f=a.garbagebin;f||(f=a.createelement("div"));h&&f.appendchild(h);f.innerhtml=""};a.correctfloat=function(a,f){return parsefloat(a.toprecision(f||14))};a.setanimation=function(h,f){f.renderer.globalanimation=a.pick(h,f.options.chart.animation,!0)};a.animobject=function(h){return a.isobject(h)?a.merge(h):{duration:h?500:0}};a.timeunits={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5};a.numberformat= function(h,f,p,v){h=+h||0;f=+f;var l=a.defaultoptions.lang,u=(h.tostring().split(".")[1]||"").length,d,c,n=math.abs(h);-1===f?f=math.min(u,20):a.isnumber(f)||(f=2);d=string(a.pint(n.tofixed(f)));c=3h?"-":"")+(c?d.substr(0,c)+v:"");h+=d.substr(c).replace(/(\d{3})(?=\d)/g,"$1"+v);f&&(v=math.abs(n-d+math.pow(10,-math.max(f,u)-1)),h+=p+v.tofixed(f).slice(2));return h};math.easeinoutsine=function(a){return-.5*(math.cos(math.pi* a)-1)};a.getstyle=function(h,f){return"width"===f?math.min(h.offsetwidth,h.scrollwidth)-a.getstyle(h,"padding-left")-a.getstyle(h,"padding-right"):"height"===f?math.min(h.offsetheight,h.scrollheight)-a.getstyle(h,"padding-top")-a.getstyle(h,"padding-bottom"):(h=i.getcomputedstyle(h,void 0))&&a.pint(h.getpropertyvalue(f))};a.inarray=function(a,f){return f.indexof?f.indexof(a):[].indexof.call(f,a)};a.grep=function(a,f){return[].filter.call(a,f)};a.find=function(a,f){return[].find.call(a,f)};a.map=function(a, f){for(var p=[],h=0,l=a.length;hf;f++)v[f]+=h(255*a),0>v[f]&&(v[f]=0),255e.width)e={width:0, height:0}}else e=this.htmlgetbbox();h.issvg&&(a=e.width,h=e.height,e&&c&&"11px"===c.fontsize&&"16.9"===h.toprecision(3)&&(e.height=h=14),g&&(e.width=math.abs(h*math.sin(k))+math.abs(a*math.cos(k)),e.height=math.abs(h*math.cos(k))+math.abs(a*math.sin(k))));if(x&&0]*>/g,"")))},textsetter:function(a){a!==this.textstr&&(delete this.bbox,this.textstr=a,this.added&&this.renderer.buildtext(this))},fillsetter:function(a, g,e){"string"===typeof a?e.setattribute(g,a):a&&this.colorgradient(a,g,e)},visibilitysetter:function(a,g,e){"inherit"===a?e.removeattribute(g):e.setattribute(g,a)},zindexsetter:function(a,g){var e=this.renderer,k=this.parentgroup,b=(k||e).element||e.box,c,b=this.element,h;c=this.added;var r;u(a)&&(b.zindex=a,a=+a,this[g]===a&&(c=!1),this[g]=a);if(c){(a=this.zindex)&&k&&(k.handlez=!0);g=b.childnodes;for(r=0;ra||!u(a)&&u(c)||0>a&&!u(c)&&b!==e.box)&&(b.insertbefore(b, k),h=!0);h||b.appendchild(b)}return h},_defaultsetter:function(a,g,e){e.setattribute(g,a)}};d.prototype.ygetter=d.prototype.xgetter;d.prototype.translatexsetter=d.prototype.translateysetter=d.prototype.rotationsetter=d.prototype.verticalalignsetter=d.prototype.scalexsetter=d.prototype.scaleysetter=function(a,g){this[g]=a;this.dotransform=!0};d.prototype["stroke-widthsetter"]=d.prototype.strokesetter=function(a,g,e){this[g]=a;this.stroke&&this["stroke-width"]?(d.prototype.fillsetter.call(this,this.stroke, "stroke",e),e.setattribute("stroke-width",this["stroke-width"]),this.hasstroke=!0):"stroke-width"===g&&0===a&&this.hasstroke&&(e.removeattribute("stroke"),this.hasstroke=!1)};c=a.svgrenderer=function(){this.init.apply(this,arguments)};c.prototype={element:d,svg_ns:s,init:function(a,g,e,k,b,c){var b;k=this.createelement("svg").attr({version:"1.1","class":"highcharts-root"}).css(this.getstyle(k));b=k.element;a.appendchild(b);-1===a.innerhtml.indexof("xmlns")&&h(b,"xmlns",this.svg_ns);this.issvg=!0; this.box=b;this.boxwrapper=k;this.alignedobjects=[];this.url=(f||a)&&n.getelementsbytagname("base").length?r.location.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createelement("desc").add().element.appendchild(n.createtextnode("created with highcharts 5.0.6"));this.defs=this.createelement("defs").add();this.allowhtml=c;this.forexport=b;this.gradients={};this.cache={};this.cachekeys=[];this.imgcount=0;this.setsize(g,e,!1);var h;f&&a.getboundingclientrect&&(g=function(){v(a, {left:0,top:0});h=a.getboundingclientrect();v(a,{left:math.ceil(h.left)-h.left+"px",top:math.ceil(h.top)-h.top+"px"})},g(),this.unsubpixelfix=g(r,"resize",g))},getstyle:function(a){return this.style=t({fontfamily:'"lucida grande", "lucida sans unicode", arial, helvetica, sans-serif',fontsize:"12px"},a)},setstyle:function(a){this.boxwrapper.css(this.getstyle(a))},ishidden:function(){return!this.boxwrapper.getbbox().width},destroy:function(){var a=this.defs;this.box=null;this.boxwrapper=this.boxwrapper.destroy(); c(this.gradients||{});this.gradients=null;a&&(this.defs=a.destroy());this.unsubpixelfix&&this.unsubpixelfix();return this.alignedobjects=null},createelement:function(a){var g=new this.element;g.init(this,a);return g},draw:w,getradialattr:function(a,g){return{cx:a[0]-a[2]/2+g.cx*a[2],cy:a[1]-a[2]/2+g.cy*a[2],r:g.r*a[2]}},buildtext:function(a){for(var g=a.element,e=this,k=e.forexport,c=k(a.textstr,"").tostring(),r=-1!==c.indexof("\x3c"),m=g.childnodes,w,e,q,x,d=h(g,"x"),t=a.styles,a=a.textwidth,z=t&& t.lineheight,l=t&&t.textoutline,f=t&&"ellipsis"===t.textoverflow,f=m.length,u=a&&!a.added&&this.box,p=function(a){var k;k=/(px|em)$/.test(a&&a.style.fontsize)?a.style.fontsize:t&&t.fontsize||e.style.fontsize||12;return z?j(z):e.fontmetrics(k,a.getattribute("style")?a:g).h};f--;)g.removechild(m[f]);r||l||f||a||-1!==c.indexof(" ")?(w=/<.*class="([^"]+)".*>/,e=/<.*style="([^"]+)".*>/,q=/<.*href="(http[^"]+)".*>/,u&&u.appendchild(g),c=r?c.replace(/<(b|strong)>/g,'\x3cspan style\x3d"font-weight:bold"\x3e').replace(/<(i|em)>/g, '\x3cspan style\x3d"font-style:italic"\x3e').replace(//g,"\x3c/span\x3e").split(//g):[c],c=b(c,function(a){return""!==a}),y(c,function(b,c){var r,h=0;b=b.replace(/^\s+|\s+$/g,"").replace(//g,"\x3c/span\x3e|||");r=b.split("|||");y(r,function(b){if(""!==b||1===r.length){var m={},l=n.createelementns(e.svg_ns,"tspan"),z,f;w.test(b)&&(z=b.match(w)[1],h(l,"class",z));e.test(b)&&(f=b.match(e)[1].replace(/(;| |^)color([ :])/, "$1fill$2"),h(l,"style",f));q.test(b)&&!k&&(h(l,"onclick",'location.href\x3d"'+b.match(q)[1]+'"'),v(l,{cursor:"pointer"}));b=(b.replace(/<(.|\n)*?>/g,"")||" ").replace(/</g,"\x3c").replace(/>/g,"\x3e");if(" "!==b){l.appendchild(n.createtextnode(b));h?m.dx=0:c&&null!==d&&(m.x=d);h(l,m);g.appendchild(l);!h&&c&&(!b&&k&&v(l,{display:"block"}),h(l,"dy",p(l)));if(a){m=b.replace(/([^\^])-/g,"$1- ").split(" ");z="nowrap"===t.whitespace;for(var k=1a,void 0===x&&(x=u),f&&x?(n/=2,""===o||!u&&.5>n?m=[]:(o=b.substring(0,o.length+(u?-1:1)*math.ceil(n)),m=[o+(3a&&(a=y)),m.length&& l.appendchild(n.createtextnode(m.join(" ").replace(/- /g,"-")));a.rotation=p}h++}}})}),x&&a.attr("title",a.textstr),u&&u.removechild(g),l&&a.applytextoutline&&a.applytextoutline(l)):g.appendchild(n.createtextnode(c.replace(/</g,"\x3c").replace(/>/g,"\x3e")))},getcontrast:function(a){a=p(a).rgba;return 510e?k>g+b&&kr?k>g+b&&kb&&r>a+b&&rk&&r>a+b&&ra?a+3:math.round(1.2* a);return{h:g,b:math.round(.8*g),f:a}},rotcorr:function(a,g,e){var b=a;g&&e&&(b=math.max(b*math.cos(g*d),4));return{x:-a/3*math.sin(g*d),y:b}},label:function(a,g,e,b,c,b,r,m,w){var q=this,x=q.g("button"!==w&&"label"),d=x.text=q.text("",0,0,r).attr({zindex:1}),h,n,l=0,a=3,z=0,f,f,k,p,j,h={},m,s,e=/^url\((.*?)\)$/.test(b),v=e,p,r,o,q;w&&x.addclass("highcharts-"+w);v=e;p=function(){return(m||0)%2/2};r=function(){var a=d.element.style,g={};n=(void 0===f||void 0===f||j)&&u(d.textstr)&&d.getbbox();x.width= (f||n.width||0)+2*a+z;x.height=(f||n.height||0)+2*a;s=a+q.fontmetrics(a&&a.fontsize,d).b;v&&(h||(x.box=h=q.symbols[b]||e?q.symbol(b):q.rect(),h.addclass(("button"===w?"":"highcharts-label-box")+(w?" highcharts-"+w+"-box":"")),h.add(x),a=p(),g.x=a,g.y=(m?-s:0)+a),g.width=math.round(x.width),g.height=math.round(x.height),h.attr(t(g,h)),h={})};o=function(){var a=z+a,g;g=m?0:s;u(f)&&n&&("center"===j||"right"===j)&&(a+={center:.5,right:1}[j]*(f-n.width));if(a!==d.x||g!==d.y)d.attr("x",a),void 0!==g&&d.attr("y", g);d.x=a;d.y=g};q=function(a,g){h?h.attr(a,g):h[a]=g};x.onadd=function(){d.add(x);x.attr({text:a||0===a?a:"",x:g,y:e});h&&u(c)&&x.attr({anchorx:c,anchory:b})};x.widthsetter=function(a){f=a};x.heightsetter=function(a){f=a};x["text-alignsetter"]=function(a){j=a};x.paddingsetter=function(a){u(a)&&a!==a&&(a=x.padding=a,o())};x.paddingleftsetter=function(a){u(a)&&a!==z&&(z=a,o())};x.alignsetter=function(a){a={left:0,center:.5,right:1}[a];a!==l&&(l=a,n&&x.attr({x:k}))};x.textsetter=function(a){void 0!== a&&d.textsetter(a);r();o()};x["stroke-widthsetter"]=function(a,g){a&&(v=!0);m=this["stroke-width"]=a;q(g,a)};x.strokesetter=x.fillsetter=x.rsetter=function(a,g){"fill"===g&&a&&(v=!0);q(g,a)};x.anchorxsetter=function(a,g){c=a;q(g,math.round(a)-p()-k)};x.anchorysetter=function(a,g){b=a;q(g,a-p)};x.xsetter=function(a){x.x=a;l&&(a-=l*((f||n.width)+2*a));k=math.round(a);x.attr("translatex",k)};x.ysetter=function(a){p=x.y=math.round(a);x.attr("translatey",p)};var v=x.css;return t(x,{css:function(a){if(a){var g= {};a=k(a);y(x.textprops,function(e){void 0!==a[e]&&(g[e]=a[e],delete a[e])});d.css(g)}return v.call(x,a)},getbbox:function(){return{width:n.width+2*a,height:n.height+2*a,x:n.x-a,y:n.y-a}},shadow:function(a){a&&(r(),h&&h.shadow(a));return x},destroy:function(){n(x.element,"mouseenter");n(x.element,"mouseleave");d&&(d=d.destroy());h&&(h=h.destroy());d.prototype.destroy.call(x);x=q=r=o=q=null}})}};a.renderer=c})(l);(function(a){var d=a.attr,c=a.createelement,g=a.css,i=a.defined,h=a.each,f=a.extend,p= a.isfirefox,v=a.isms,l=a.iswebkit,u=a.pint,d=a.svgrenderer,c=a.win,n=a.wrap;f(a.svgelement.prototype,{htmlcss:function(a){var c=this.element;if(c=a&&"span"===c.tagname&&a.width)delete a.width,this.textwidth=c,this.updatetransform();a&&"ellipsis"===a.textoverflow&&(a.whitespace="nowrap",a.overflow="hidden");this.styles=f(this.styles,a);g(this.element,a);return this},htmlgetbbox:function(){var a=this.element;"text"===a.nodename&&(a.style.position="absolute");return{x:a.offsetleft,y:a.offsettop,width:a.offsetwidth, height:a.offsetheight}},htmlupdatetransform:function(){if(this.added){var a=this.renderer,c=this.element,m=this.translatex||0,b=this.translatey||0,q=this.x||0,d=this.y||0,n=this.textalign||"left",e={left:0,center:.5,right:1}[n],r=this.styles;g(c,{marginleft:m,margintop:b});this.shadows&&h(this.shadows,function(a){g(a,{marginleft:m+1,margintop:b+1})});this.inverted&&h(c.childnodes,function(e){a.invertchild(e,c)});if("span"===c.tagname){var x=this.rotation,a=u(this.textwidth),k=r&&r.whitespace,w=[x, n,c.innerhtml,this.textwidth,this.textalign].join();w!==this.ctt&&(r=a.fontmetrics(c.style.fontsize).b,i(x)&&this.setspanrotation(x,e,r),g(c,{width:"",whitespace:k||"nowrap"}),c.offsetwidth>a&&/[ \-]/.test(c.textcontent||c.innertext)&&g(c,{width:a+"px",display:"block",whitespace:k||"normal"}),this.getspancorrection(c.offsetwidth,r,e,x,n));g(c,{left:q+(this.xcorr||0)+"px",top:d+(this.ycorr||0)+"px"});l&&(r=c.offsetheight);this.ctt=w}}else this.alignonadd=!0},setspanrotation:function(a,d,m){var b={}, q=v?"-ms-transform":l?"-webkit-transform":p?"moztransform":c.opera?"-o-transform":"";b[q]=b.transform="rotate("+a+"deg)";b[q+(p?"origin":"-origin")]=b.transformorigin=100*d+"% "+m+"px";g(this.element,b)},getspancorrection:function(a,c,m){this.xcorr=-a*m;this.ycorr=-c}});f(d.prototype,{html:function(a,c,m){var b=this.createelement("span"),q=b.element,d=b.renderer,l=d.issvg,e=function(a,e){h(["opacity","visibility"],function(b){n(a,b+"setter",function(a,b,c,r){a.call(this,b,c,r);e[c]=b})})};b.textsetter= function(a){a!==q.innerhtml&&delete this.bbox;q.innerhtml=this.textstr=a;b.htmlupdatetransform()};l&&e(b,b.element.style);b.xsetter=b.ysetter=b.alignsetter=b.rotationsetter=function(a,e){"align"===e&&(e="textalign");b[e]=a;b.htmlupdatetransform()};b.attr({text:a,x:math.round(c),y:math.round(m)}).css({fontfamily:this.style.fontfamily,fontsize:this.style.fontsize,position:"absolute"});q.style.whitespace="nowrap";b.css=b.htmlcss;l&&(b.add=function(a){var c,r=d.box.parentnode,k=[];if(this.parentgroup= a){if(c=a.div,!c){for(;a;)k.push(a),a=a.parentgroup;h(k.reverse(),function(a){var m,x=d(a.element,"class");x&&(x={classname:x});c=a.div=a.div||c("div",x,{position:"absolute",left:(a.translatex||0)+"px",top:(a.translatey||0)+"px",display:a.display,opacity:a.opacity,pointerevents:a.styles&&a.styles.pointerevents},c||r);m=c.style;f(a,{on:function(){b.on.apply({element:k[0].div},arguments);return a},translatexsetter:function(e,g){m.left=e+"px";a[g]=e;a.dotransform=!0},translateysetter:function(e,g){m.top= e+"px";a[g]=e;a.dotransform=!0}});e(a,m)})}}else c=r;c.appendchild(q);b.added=!0;b.alignonadd&&b.htmlupdatetransform();return b});return b}})})(l);(function(a){var d,c,g=a.createelement,i=a.css,h=a.defined,f=a.deg2rad,p=a.discardelement,v=a.doc,l=a.each,u=a.erase,d=a.extend;d=a.extendclass;var c=a.isarray,n=a.isnumber,y=a.isobject,t=a.merge;c=a.noop;var m=a.pick,b=a.pint,q=a.svgelement,z=a.svgrenderer,f=a.win;a.svg||(c={docmode8:v&&8===v.documentmode,init:function(a,b){var e=["\x3c",b,' filled\x3d"f" stroked\x3d"f"'], c=["position: ","absolute",";"],k="div"===b;("shape"===b||k)&&c.push("left:0;top:0;width:1px;height:1px;");c.push("visibility: ",k?"hidden":"visible");e.push(' style\x3d"',c.join(""),'"/\x3e');b&&(e=k||"span"===b||"img"===b?e.join(""):a.prepvml(e),this.element=g(e));this.renderer=a},add:function(a){var e=this.renderer,b=this.element,c=e.box,k=a&&a.inverted,c=a?a.element||a:c;a&&(this.parentgroup=a);k&&e.invertchild(b,c);c.appendchild(b);this.added=!0;this.alignonadd&&!this.deferupdatetransform&&this.updatetransform(); if(this.onadd)this.onadd();this.classname&&this.attr("class",this.classname);return this},updatetransform:q.prototype.htmlupdatetransform,setspanrotation:function(){var a=this.rotation,b=math.cos(a*f),c=math.sin(a*f);i(this.element,{filter:a?["progid:dximagetransform.microsoft.matrix(m11\x3d",b,", m12\x3d",-c,", m21\x3d",c,", m22\x3d",b,", sizingmethod\x3d'auto expand')"].join(""):"none"})},getspancorrection:function(a,b,c,q,k){var e=q?math.cos(q*f):1,r=q?math.sin(q*f):0,x=m(this.elemheight,this.element.offsetheight), d;this.xcorr=0>e&&-a;this.ycorr=0>r&&-x;d=0>e*r;this.xcorr+=r*b*(d?1-c:c);this.ycorr-=e*b*(q?d?c:1-c:1);k&&"left"!==k&&(this.xcorr-=a*c*(0>e?-1:1),q&&(this.ycorr-=x*c*(0>r?-1:1)),i(this.element,{textalign:k}))},pathtovml:function(a){for(var e=a.length,b=[];e--;)n(a[e])?b[e]=math.round(10*a[e])-5:"z"===a[e]?b[e]="x":(b[e]=a[e],!a.isarc||"wa"!==a[e]&&"at"!==a[e]||(b[e+5]===b[e+7]&&(b[e+7]+=a[e+7]>a[e+5]?1:-1),b[e+6]===b[e+8]&&(b[e+8]+=a[e+8]>a[e+6]?1:-1)));return b.join(" ")||"x"},clip:function(a){var e= this,b;a?(b=a.members,u(b,e),b.push(e),e.destroyclip=function(){u(b,e)},a=a.getcss(e)):(e.destroyclip&&e.destroyclip(),a={clip:e.docmode8?"inherit":"rect(auto)"});return e.css(a)},css:q.prototype.htmlcss,saferemovechild:function(a){a.parentnode&&p(a)},destroy:function(){this.destroyclip&&this.destroyclip();return q.prototype.destroy.apply(this)},on:function(a,b){this.element["on"+a]=function(){var a=f.event;a.target=a.srcelement;b(a)};return this},cutoffpath:function(a,c){var e;a=a.split(/[ ,]/); e=a.length;if(9===e||11===e)a[e-4]=a[e-2]=b(a[e-2])-10*c;return a.join(" ")},shadow:function(a,c,q){var e=[],k,r=this.element,d=this.renderer,x,n=r.style,g,b=r.path,l,t,z,f;b&&"string"!==typeof b.value&&(b="x");t=b;if(a){z=m(a.width,3);f=(a.opacity||.15)/z;for(k=1;3>=k;k++)l=2*z+1-2*k,q&&(t=this.cutoffpath(b.value,l+.5)),g=['\x3cshape isshadow\x3d"true" strokeweight\x3d"',l,'" filled\x3d"false" path\x3d"',t,'" coordsize\x3d"10 10" style\x3d"',r.style.csstext,'" /\x3e'],x=g(d.prepvml(g),null,{left:b(n.left)+ m(a.offsetx,1),top:b(n.top)+m(a.offsety,1)}),q&&(x.cutoff=l+1),g=['\x3cstroke color\x3d"',a.color||"#000000",'" opacity\x3d"',f*k,'"/\x3e'],g(d.prepvml(g),null,null,x),c?c.element.appendchild(x):r.parentnode.insertbefore(x,r),e.push(x);this.shadows=e}return this},updateshadows:c,setattr:function(a,b){this.docmode8?this.element[a]=b:this.element.setattribute(a,b)},classsetter:function(a){(this.added?this.element:this).classname=a},dashstylesetter:function(a,b,c){(c.getelementsbytagname("stroke")[0]|| g(this.renderer.prepvml(["\x3cstroke/\x3e"]),null,null,c))[b]=a||"solid";this[b]=a},dsetter:function(a,b,c){var e=this.shadows;a=a||[];this.d=a.join&&a.join(" ");c.path=a=this.pathtovml(a);if(e)for(c=e.length;c--;)e[c].path=e[c].cutoff?this.cutoffpath(a,e[c].cutoff):a;this.setattr(b,a)},fillsetter:function(a,b,c){var e=c.nodename;"span"===e?c.style.color=a:"img"!==e&&(c.filled="none"!==a,this.setattr("fillcolor",this.renderer.color(a,c,b,this)))},"fill-opacitysetter":function(a,b,c){g(this.renderer.prepvml(["\x3c", b.split("-")[0],' opacity\x3d"',a,'"/\x3e']),null,null,c)},opacitysetter:c,rotationsetter:function(a,b,c){c=c.style;this[b]=c[b]=a;c.left=-math.round(math.sin(a*f)+1)+"px";c.top=math.round(math.cos(a*f))+"px"},strokesetter:function(a,b,c){this.setattr("strokecolor",this.renderer.color(a,c,b,this))},"stroke-widthsetter":function(a,b,c){c.stroked=!!a;this[b]=a;n(a)&&(a+="px");this.setattr("strokeweight",a)},titlesetter:function(a,b){this.setattr(b,a)},visibilitysetter:function(a,b,c){"inherit"===a&& (a="visible");this.shadows&&l(this.shadows,function(c){c.style[b]=a});"div"===c.nodename&&(a="hidden"===a?"-999em":0,this.docmode8||(c.style[b]=a?"visible":"hidden"),b="top");c.style[b]=a},xsetter:function(a,b,c){this[b]=a;"x"===b?b="left":"y"===b&&(b="top");this.updateclipping?(this[b]=a,this.updateclipping()):c.style[b]=a},zindexsetter:function(a,b,c){c.style[b]=a}},c["stroke-opacitysetter"]=c["fill-opacitysetter"],a.vmlelement=c=d(q,c),c.prototype.ysetter=c.prototype.widthsetter=c.prototype.heightsetter= c.prototype.xsetter,c={element:c,isie8:-1h[0]&&b.push([1,h[1]]);l(b,function(g,b){d.test(g[1])?(r=a.color(g[1]),b=r.get("rgb"),t=r.get("a")):(b=g[1],t=1);y.push(100*g[0]+"% "+b);b?(h=t,a=b):(f=t,u=b)});if("fill"===m)if("gradient"===x)m=z.x1||z[0]||0,b=z.y1||z[1]||0,f=z.x2||z[2]||0,z=z.y2||z[3]||0,p='angle\x3d"'+(90-180*math.atan((z-b)/(f-m))/math.pi)+'"', v();else{var g=z.r,c=2*g,d=2*g,i=z.cx,u=z.cy,l=c.radialreference,t,g=function(){l&&(t=q.getbbox(),i+=(l[0]-t.x)/t.width-.5,u+=(l[1]-t.y)/t.height-.5,c*=l[2]/t.width,d*=l[2]/t.height);p='src\x3d"'+a.getoptions().global.vmlradialgradienturl+'" size\x3d"'+c+","+d+'" origin\x3d"0.5,0.5" position\x3d"'+i+","+u+'" color2\x3d"'+u+'" ';v()};q.added?g():q.onadd=g;g=a}else g=b}else d.test(b)&&"img"!==c.tagname?(r=a.color(b),q[m+"-opacitysetter"](r.get("a"),m,c),g=r.get("rgb")):(g=c.getelementsbytagname(m), g.length&&(g[0].opacity=1,g[0].type="solid"),g=b);return g},prepvml:function(a){var b=this.isie8;a=a.join("");b?(a=a.replace("/\x3e",' xmlns\x3d"urn:schemas-microsoft-com:vml" /\x3e'),a=-1===a.indexof('style\x3d"')?a.replace("/\x3e",' style\x3d"display:inline-block;behavior:url(#default#vml);" /\x3e'):a.replace('style\x3d"','style\x3d"display:inline-block;behavior:url(#default#vml);')):a=a.replace("\x3c","\x3chcv:");return a},text:z.prototype.html,path:function(a){var b={coordsize:"10 10"};c(a)?b.d= a:y(a)&&d(b,a);return this.createelement("shape").attr(b)},circle:function(a,b,c){var e=this.symbol("circle");y(a)&&(c=a.r,b=a.y,a=a.x);e.iscircle=!0;e.r=c;return e.attr({x:a,y:b})},g:function(a){var b;a&&(b={classname:"highcharts-"+a,"class":"highcharts-"+a});return this.createelement("div").attr(b)},image:function(a,b,c,m,k){var e=this.createelement("img").attr({src:a});1t&&h-m*bc&&(e=math.round((d-h)/math.cos(t*p)));else if(d=h+(1-m)*b,h-m*bc&&(z=c-a.x+z*m,f=-1),z=math.min(q, z),zz||l.autorotation&&(y.styles||{}).width)e=z;e&&(r.width=e,(l.options.labels.style||{}).textoverflow||(r.textoverflow="ellipsis"),y.css(r))},getposition:function(a,f,h,d){var c=this.axis,n=c.chart,l=d&&n.oldchartheight||n.chartheight;return{x:a?c.translate(f+h,null,null,d)+c.transb:c.left+c.offset+(c.opposite?(d&&n.oldchartwidth||n.chartwidth)-c.right-c.left:0),y:a?l-c.bottom+c.offset-(c.opposite?c.height:0):l-c.translate(f+h,null, null,d)-c.transb}},getlabelposition:function(a,f,h,d,c,n,y,t){var m=this.axis,b=m.transa,q=m.reversed,z=m.staggerlines,l=m.tickrotcorr||{x:0,y:0},e=c.y;c(e)||(e=0===m.side?h.rotation?-8:-h.getbbox().height:2===m.side?l.y+8:math.cos(h.rotation*p)*(l.y-h.getbbox(!1,0).height/2));a=a+c.x+l.x-(n&&d?n*b*(q?-1:1):0);f=f+e-(n&&!d?n*b*(q?1:-1):0);z&&(h=y/(t||1)%z,m.opposite&&(h=z-h-1),f+=m.labeloffset/z*h);return{x:a,y:math.round(f)}},getmarkpath:function(a,f,h,d,c,n){return n.crispline(["m",a,f,"l",a+(c? 0:-h),f+(c?h:0)],d)},render:function(a,l,h){var d=this.axis,c=d.options,n=d.chart.renderer,p=d.horiz,t=this.type,m=this.label,b=this.pos,q=c.labels,z=this.gridline,f=t?t+"tick":"tick",e=d.ticksize(f),r=this.mark,x=!r,a=q.step,k={},w=!0,k=d.tickmarkoffset,j=this.getposition(p,b,k,l),u=j.x,j=j.y,g=p&&u===d.pos+d.len||!p&&j===d.pos?-1:1,b=t?t+"grid":"grid",s=c[b+"linewidth"],m=c[b+"linecolor"],v=c[b+"linedashstyle"],b=f(c[f+"width"],!t&&d.isxaxis?1:0),f=c[f+"color"];h=f(h,1);this.isactive=!0;z||(k.stroke= m,k["stroke-width"]=s,v&&(k.dashstyle=v),t||(k.zindex=1),l&&(k.opacity=0),this.gridline=z=n.path().attr(k).addclass("highcharts-"+(t?t+"-":"")+"grid-line").add(d.gridgroup));if(!l&&z&&(b=d.getplotlinepath(b+k,z.strokewidth()*g,l,!0)))z[this.isnew?"attr":"animate"]({d:b,opacity:h});e&&(d.opposite&&(e[0]=-e[0]),x&&(this.mark=r=n.path().addclass("highcharts-"+(t?t+"-":"")+"tick").add(d.axisgroup),r.attr({stroke:f,"stroke-width":b})),r[x?"attr":"animate"]({d:this.getmarkpath(u,j,e[0],r.strokewidth()* g,p,n),opacity:h}));m&&i(u)&&(m.xy=j=this.getlabelposition(u,j,m,p,q,k,a,a),this.isfirst&&!this.islast&&!f(c.showfirstlabel,1)||this.islast&&!this.isfirst&&!f(c.showlastlabel,1)?w=!1:!p||d.isradial||q.step||q.rotation||l||0===h||this.handleoverflow(j),a&&a%a&&(w=!1),w&&i(j.y)?(j.opacity=h,m[this.isnew?"attr":"animate"](j)):m.attr("y",-9999),this.isnew=!1)},destroy:function(){g(this,this.axis)}}})(l);(function(a){var d=a.addevent,c=a.animobject,g=a.arraymax,i=a.arraymin,h=a.axisplotlineorbandextension, f=a.color,p=a.correctfloat,v=a.defaultoptions,l=a.defined,u=a.deg2rad,d=a.destroyobjectproperties,c=a.each,n=a.extend,y=a.fireevent,t=a.format,m=a.getmagnitude,b=a.grep,q=a.inarray,z=a.isarray,f=a.isnumber,e=a.isstring,r=a.merge,x=a.normalizetickinterval,a=a.pick,k=a.plotlineorband,w=a.removeevent,k=a.splat,j=a.synctimeout,n=a.tick;a.axis=function(){this.init.apply(this,arguments)};a.axis.prototype={defaultoptions:{datetimelabelformats:{millisecond:"%h:%m:%s.%l",second:"%h:%m:%s",minute:"%h:%m",hour:"%h:%m", day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%y"},endontick:!1,labels:{enabled:!0,style:{color:"#666666",cursor:"default",fontsize:"11px"},x:0},minpadding:.01,maxpadding:.01,minorticklength:2,minortickposition:"outside",startofweek:1,startontick:!1,ticklength:10,tickmarkplacement:"between",tickpixelinterval:100,tickposition:"outside",title:{align:"middle",style:{color:"#666666"}},type:"linear",minorgridlinecolor:"#f2f2f2",minorgridlinewidth:1,minortickcolor:"#999999",linecolor:"#ccd6eb",linewidth:1, gridlinecolor:"#e6e6e6",tickcolor:"#ccd6eb"},defaultyaxisoptions:{endontick:!0,tickpixelinterval:72,showlastlabel:!0,labels:{x:-8},maxpadding:.05,minpadding:.05,startontick:!0,title:{rotation:270,text:"values"},stacklabels:{enabled:!1,formatter:function(){return a.numberformat(this.total,-1)},style:{fontsize:"11px",fontweight:"bold",color:"#000000",textoutline:"1px contrast"}},gridlinewidth:1,linewidth:0},defaultleftaxisoptions:{labels:{x:-15},title:{rotation:270}},defaultrightaxisoptions:{labels:{x:15}, title:{rotation:90}},defaultbottomaxisoptions:{labels:{autorotation:[-45],x:0},title:{rotation:0}},defaulttopaxisoptions:{labels:{autorotation:[-45],x:0},title:{rotation:0}},init:function(a,b){var g=b.isx;this.chart=a;this.horiz=a.inverted?!g:g;this.isxaxis=g;this.coll=this.coll||(g?"xaxis":"yaxis");this.opposite=b.opposite;this.side=b.side||(this.horiz?this.opposite?0:2:this.opposite?1:3);this.setoptions(b);var c=this.options,e=c.type;this.labelformatter=c.labels.formatter||this.defaultlabelformatter; this.useroptions=b;this.minpixelpadding=0;this.reversed=c.reversed;this.visible=!1!==c.visible;this.zoomenabled=!1!==c.zoomenabled;this.hasnames="category"===e||!0===c.categories;this.categories=c.categories||this.hasnames;this.names=this.names||[];this.islog="logarithmic"===e;this.isdatetimeaxis="datetime"===e;this.islinked=l(c.linkedto);this.ticks={};this.labeledge=[];this.minorticks={};this.plotlinesandbands=[];this.alternatebands={};this.len=0;this.minrange=this.userminrange=c.minrange||c.maxzoom; this.range=c.range;this.offset=c.offset||0;this.stacks={};this.oldstacks={};this.stackstouched=0;this.min=this.max=null;this.crosshair=a(c.crosshair,k(a.options.tooltip.crosshairs)[g?0:1],!1);var k;b=this.options.events;-1===q(this,a.axes)&&(g?a.axes.splice(a.xaxis.length,0,this):a.axes.push(this),a[this.coll].push(this));this.series=this.series||[];a.inverted&&g&&void 0===this.reversed&&(this.reversed=!0);this.removeplotline=this.removeplotband=this.removeplotbandorline;for(k in b)d(this,k,b[k]); this.islog&&(this.val2lin=this.log2lin,this.lin2val=this.lin2log)},setoptions:function(a){this.options=r(this.defaultoptions,"yaxis"===this.coll&&this.defaultyaxisoptions,[this.defaulttopaxisoptions,this.defaultrightaxisoptions,this.defaultbottomaxisoptions,this.defaultleftaxisoptions][this.side],r(v[this.coll],a))},defaultlabelformatter:function(){var g=this.axis,b=this.value,c=g.categories,e=this.datetimelabelformat,k=v.lang,m=k.numericsymbols,k=k.numericsymbolmagnitude||1e3,q=m&&m.length,d,r=g.options.labels.format, g=g.islog?b:g.tickinterval;if(r)d=t(r,this);else if(c)d=b;else if(e)d=a.dateformat(e,b);else if(q&&1e3<=g)for(;q--&&void 0===d;)c=math.pow(k,q+1),g>=c&&0===10*b%c&&null!==m[q]&&0!==b&&(d=a.numberformat(b/c,-1)+m[q]);void 0===d&&(d=1e4<=math.abs(b)?a.numberformat(b,-1):a.numberformat(b,-1,void 0,""));return d},getseriesextremes:function(){var a=this,e=a.chart;a.hasvisibleseries=!1;a.datamin=a.datamax=a.threshold=null;a.softthreshold=!a.isxaxis;a.buildstacks&&a.buildstacks();c(a.series,function(g){if(g.visible|| !e.options.chart.ignorehiddenseries){var c=g.options,k=c.threshold,b;a.hasvisibleseries=!0;a.islog&&0>=k&&(k=null);if(a.isxaxis)c=g.xdata,c.length&&(g=i(c),f(g)||g instanceof date||(c=b(c,function(a){return f(a)}),g=i(c)),a.datamin=math.min(a(a.datamin,c[0]),g),a.datamax=math.max(a(a.datamax,c[0]),g(c)));else if(g.getextremes(),b=g.datamax,g=g.datamin,l(g)&&l(b)&&(a.datamin=math.min(a(a.datamin,g),g),a.datamax=math.max(a(a.datamax,b),b)),l(k)&&(a.threshold=k),!c.softthreshold||a.islog)a.softthreshold= !1}})},translate:function(a,b,c,e,k,m){var g=this.linkedparent||this,b=1,q=0,d=e?g.oldtransa:g.transa;e=e?g.oldmin:g.min;var r=g.minpixelpadding;k=(g.isordinal||g.isbroken||g.islog&&k)&&g.lin2val;d||(d=g.transa);c&&(b*=-1,q=g.len);g.reversed&&(b*=-1,q-=b*(g.sector||g.len));b?(a=(a*b+q-r)/d+e,k&&(a=g.lin2val(a))):(k&&(a=g.val2lin(a)),a=b*(a-e)*d+q+b*r+(f(m)?d*m:0));return a},topixels:function(a,b){return this.translate(a,!1,!this.horiz,null,!0)+(b?0:this.pos)},tovalue:function(a,b){return this.translate(a- (b?0:this.pos),!0,!this.horiz,null,!0)},getplotlinepath:function(a,b,c,e,k){var g=this.chart,b=this.left,m=this.top,q,d,r=c&&g.oldchartheight||g.chartheight,n=c&&g.oldchartwidth||g.chartwidth,f;q=this.transb;var w=function(a,g,b){if(ab)e?a=math.min(math.max(g,a),b):f=!0;return a};k=a(k,this.translate(a,null,null,c));a=c=math.round(k+q);q=d=math.round(r-k-q);f(k)?this.horiz?(q=m,d=r-this.bottom,a=c=w(a,b,b+this.width)):(a=b,c=n-this.right,q=d=w(q,m,m+this.height)):f=!0;return f&&!e?null:g.renderer.crispline(["m", a,q,"l",c,d],b||1)},getlineartickpositions:function(a,b,c){var g,k=p(math.floor(b/a)*a),e=p(math.ceil(c/a)*a),b=[];if(b===c&&f(b))return[b];for(b=k;b<=e;){b.push(b);b=p(b+a);if(b===g)break;g=b}return b},getminortickpositions:function(){var a=this.options,b=this.tickpositions,c=this.minortickinterval,k=[],e,m=this.pointrangepadding||0;e=this.min-m;var m=this.max+m,q=m-e;if(q&&q/c=this.minrange,q,d,r,f,n,w;this.isxaxis&&void 0===this.minrange&&!this.islog&&(l(a.min)||l(a.max)?this.minrange=null:(c(this.series,function(a){f=a.xdata;for(d=n=a.xincrement? 1:f.length-1;0=j?(n=j,t=0):g.datamax<=j&&(v=j,w=0)),g.min=a(c,n,g.datamin),g.max=a(d,v,g.datamax));q&&(!b&&0>= math.min(g.min,a(g.datamin,g.min))&&a.error(10,1),g.min=p(d(g.min),15),g.max=p(d(g.max),15));g.range&&l(g.max)&&(g.usermin=g.min=c=math.max(g.min,g.minfromrange()),g.usermax=d=g.max,g.range=null);y(g,"foundextremes");g.beforepadding&&g.beforepadding();g.adjustforminrange();!(k||g.axispointrange||g.usepercentage||n)&&l(g.min)&&l(g.max)&&(d=g.max-g.min)&&(!l(c)&&t&&(g.min-=d*t),!l(d)&&w&&(g.max+=d*w));f(e.floor)?g.min=math.max(g.min,e.floor):f(e.softmin)&&(g.min=math.min(g.min,e.softmin));f(e.ceiling)? g.max=math.min(g.max,e.ceiling):f(e.softmax)&&(g.max=math.max(g.max,e.softmax));u&&l(g.datamin)&&(j=j||0,!l(c)&&g.min=j?g.min=j:!l(d)&&g.max>j&&g.datamax<=j&&(g.max=j));g.tickinterval=g.min===g.max||void 0===g.min||void 0===g.max?1:n&&!z&&h===g.linkedparent.options.tickpixelinterval?z=g.linkedparent.tickinterval:a(z,this.tickamount?(g.max-g.min)/math.max(this.tickamount-1,1):void 0,k?1:(g.max-g.min)*h/math.max(g.len,h));f&&!b&&c(g.series,function(a){a.processdata(g.min!==g.oldmin||g.max!== g.oldmax)});g.setaxistranslation(!0);g.beforesettickpositions&&g.beforesettickpositions();g.postprocesstickinterval&&(g.tickinterval=g.postprocesstickinterval(g.tickinterval));g.pointrange&&!z&&(g.tickinterval=math.max(g.pointrange,g.tickinterval));b=a(e.mintickinterval,g.isdatetimeaxis&&g.closestpointrange);!z&&g.tickintervalg.tickinterval&&1e3g.max)),!!this.tickamount)); this.tickamount||(g.tickinterval=g.unsquish());this.settickpositions()},settickpositions:function(){var a=this.options,b,c=a.tickpositions,k=a.tickpositioner,e=a.startontick,m=a.endontick,q;this.tickmarkoffset=this.categories&&"between"===a.tickmarkplacement&&1===this.tickinterval?.5:0;this.minortickinterval="auto"===a.minortickinterval&&this.tickinterval?this.tickinterval/5:a.minortickinterval;this.tickpositions=b=c&&c.slice();!b&&(b=this.isdatetimeaxis?this.gettimeticks(this.normalizetimetickinterval(this.tickinterval, a.units),this.min,this.max,a.startofweek,this.ordinalpositions,this.closestpointrange,!0):this.islog?this.getlogtickpositions(this.tickinterval,this.min,this.max):this.getlineartickpositions(this.tickinterval,this.min,this.max),b.length>this.len&&(b=[b[0],b.pop()]),this.tickpositions=b,k&&(k=k.apply(this,[this.min,this.max])))&&(this.tickpositions=b=k);this.islinked||(this.trimticks(b,e,m),this.min===this.max&&l(this.min)&&!this.tickamount&&(q=!0,this.min-=.5,this.max+=.5),this.single=q,c||k||this.adjusttickamount())}, trimticks:function(a,b,c){var g=a[0],k=a[a.length-1],e=this.minpointoffset||0;if(b)this.min=g;else for(;this.min-e>a[0];)a.shift();if(c)this.max=k;else for(;this.max+eb&&(this.finaltickamt=b,b=5);this.tickamount=b},adjusttickamount:function(){var a=this.tickinterval,b=this.tickpositions,c=this.tickamount,k=this.finaltickamt,e=b&&b.length;if(ec&&(this.tickinterval*=2,this.settickpositions());if(l(k)){for(a=c=b.length;a--;)(3===k&&1===a%2||2>=k&&0k&&(a=k)),l(c)&&(bk&&(b=k))),this.displaybtn=void 0!==a||void 0!==b,this.setextremes(a,b,!1,void 0,{trigger:"zoom"});return!0},setaxissize:function(){var a=this.chart,b=this.options,c=b.offsetleft||0,k=this.horiz,e=a(b.width,a.plotwidth-c+(b.offsetright||0)),m=a(b.height,a.plotheight),q=a(b.top,a.plottop),b=a(b.left, a.plotleft+c),c=/%$/;c.test(m)&&(m=math.round(parsefloat(m)/100*a.plotheight));c.test(q)&&(q=math.round(parsefloat(q)/100*a.plotheight+a.plottop));this.left=b;this.top=q;this.width=e;this.height=m;this.bottom=a.chartheight-m-q;this.right=a.chartwidth-e-b;this.len=math.max(k?e:m,0);this.pos=k?b:q},getextremes:function(){var a=this.islog,b=this.lin2log;return{min:a?p(b(this.min)):this.min,max:a?p(b(this.max)):this.max,datamin:this.datamin,datamax:this.datamax,usermin:this.usermin,usermax:this.usermax}}, getthreshold:function(a){var b=this.islog,g=this.lin2log,c=b?g(this.min):this.min,b=b?g(this.max):this.max;null===a?a=c:c>a?a=c:ba?"right":195a?"left":"center"},ticksize:function(a){var b=this.options,g=b[a+"length"],c=a(b[a+"width"],"tick"===a&&this.isxaxis?1:0);if(c&&g)return"inside"===b[a+"position"]&&(g=-g),[g,c]},labelmetrics:function(){return this.chart.renderer.fontmetrics(this.options.labels.style&& this.options.labels.style.fontsize,this.ticks[0]&&this.ticks[0].label)},unsquish:function(){var a=this.options.labels,b=this.horiz,k=this.tickinterval,e=k,m=this.len/(((this.categories?1:0)+this.max-this.min)/k),q,d=a.rotation,r=this.labelmetrics(),f,n=number.max_value,w,t=function(a){a/=m||1;a=1=a)f=t(math.abs(r.h/math.sin(u*a))),b=f+ math.abs(a/360),b(c.step||0)&&!c.rotation&&(this.staggerlines||1)*a.plotwidth/k||!b&&(e&&e-a.spacing[3]||.33*a.chartwidth)},renderunsquish:function(){var a=this.chart,b=a.renderer,k=this.tickpositions,m=this.ticks,q=this.options.labels,d=this.horiz, f=this.getslotwidth(),n=math.max(1,math.round(f-2*(q.padding||5))),w={},t=this.labelmetrics(),z=q.style&&q.style.textoverflow,h,l=0,x,f;e(q.rotation)||(w.rotation=q.rotation||0);c(k,function(a){(a=m[a])&&a.labellength>l&&(l=a.labellength)});this.maxlabellength=l;if(this.autorotation)l>n&&l>t.h?w.rotation=this.labelrotation:this.labelrotation=0;else if(f&&(h={width:n+"px"},!z))for(h.textoverflow="clip",x=k.length;!d&&x--;)if(f=k[x],n=m[f].label)n.styles&&"ellipsis"===n.styles.textoverflow?n.css({textoverflow:"clip"}): m[f].labellength>f&&n.css({width:f+"px"}),n.getbbox().height>this.len/k.length-(t.h-t.f)&&(n.speccss={textoverflow:"ellipsis"});w.rotation&&(h={width:(l>.5*a.chartheight?.33*a.chartheight:a.chartheight)+"px"},z||(h.textoverflow="ellipsis"));if(this.labelalign=q.align||this.autolabelalign(this.labelrotation))w.align=this.labelalign;c(k,function(a){var b=(a=m[a])&&a.label;b&&(b.attr(w),h&&b.css(r(h,b.speccss)),delete b.speccss,a.rotation=w.rotation)});this.tickrotcorr=b.rotcorr(t.b,this.labelrotation|| 0,0!==this.side)},hasdata:function(){return this.hasvisibleseries||l(this.min)&&l(this.max)&&!!this.tickpositions},addtitle:function(a){var b=this.chart.renderer,g=this.horiz,c=this.opposite,k=this.options.title,e;this.axistitle||((e=k.textalign)||(e=(g?{low:"left",middle:"center",high:"right"}:{low:c?"right":"left",middle:"center",high:c?"left":"right"})[k.align]),this.axistitle=b.text(k.text,0,0,k.usehtml).attr({zindex:7,rotation:k.rotation||0,align:e}).addclass("highcharts-axis-title").css(k.style).add(this.axisgroup), this.axistitle.isnew=!0);this.axistitle[a?"show":"hide"](!0)},getoffset:function(){var a=this,b=a.chart,k=b.renderer,e=a.options,m=a.tickpositions,q=a.ticks,d=a.horiz,r=a.side,n=b.inverted?[1,0,3,2][r]:r,w,f,t=0,z,h=0,x=e.title,f=e.labels,p=0,k=b.axisoffset,b=b.clipoffset,j=[-1,1,1,-1][r],u,y=e.classname,v=a.axisparent,c=this.ticksize("tick");w=a.hasdata();a.showaxis=f=w||a(e.showempty,!0);a.staggerlines=a.horiz&&f.staggerlines;a.axisgroup||(a.gridgroup=k.g("grid").attr({zindex:e.gridzindex||1}).addclass("highcharts-"+ this.coll.tolowercase()+"-grid "+(y||"")).add(v),a.axisgroup=k.g("axis").attr({zindex:e.zindex||2}).addclass("highcharts-"+this.coll.tolowercase()+" "+(y||"")).add(v),a.labelgroup=k.g("axis-labels").attr({zindex:f.zindex||7}).addclass("highcharts-"+a.coll.tolowercase()+"-labels "+(y||"")).add(v));if(w||a.islinked)c(m,function(b){q[b]?q[b].addlabel():q[b]=new n(a,b)}),a.renderunsquish(),!1===f.reservespace||0!==r&&2!==r&&{1:"left",3:"right"}[r]!==a.labelalign&&"center"!==a.labelalign||c(m,function(a){p= math.max(q[a].getlabelsize(),p)}),a.staggerlines&&(p*=a.staggerlines,a.labeloffset=p*(a.opposite?-1:1));else for(u in q)q[u].destroy(),delete q[u];x&&x.text&&!1!==x.enabled&&(a.addtitle(f),f&&(t=a.axistitle.getbbox()[d?"height":"width"],z=x.offset,h=l(z)?0:a(x.margin,d?5:10)));a.renderline();a.offset=j*a(e.offset,k[r]);a.tickrotcorr=a.tickrotcorr||{x:0,y:0};k=0===r?-a.labelmetrics().h:2===r?a.tickrotcorr.y:0;h=math.abs(p)+h;p&&(h=h-k+j*(d?a(f.y,a.tickrotcorr.y+8*j):f.x));a.axistitlemargin=a(z,h); k[r]=math.max(k[r],a.axistitlemargin+t+j*a.offset,h,w&&m.length&&c?c[0]:0);e=e.offset?0:2*math.floor(a.axisline.strokewidth()/2);b[n]=math.max(b[n],e)},getlinepath:function(a){var b=this.chart,c=this.opposite,g=this.offset,k=this.horiz,e=this.left+(c?this.width:0)+g,g=b.chartheight-this.bottom-(c?this.height:0)+g;c&&(a*=-1);return b.renderer.crispline(["m",k?this.left:e,k?g:this.top,"l",k?b.chartwidth-this.right:e,k?g:b.chartheight-this.bottom],a)},renderline:function(){this.axisline||(this.axisline= this.chart.renderer.path().addclass("highcharts-axis-line").add(this.axisgroup),this.axisline.attr({stroke:this.options.linecolor,"stroke-width":this.options.linewidth,zindex:7}))},gettitleposition:function(){var a=this.horiz,b=this.left,c=this.top,k=this.len,e=this.options.title,m=a?b:c,q=this.opposite,d=this.offset,r=e.x||0,n=e.y||0,w=this.chart.renderer.fontmetrics(e.style&&e.style.fontsize,this.axistitle).f,k={low:m+(a?0:k),middle:m+k/2,high:m+(a?k:0)}[e.align],b=(a?c+this.height:b)+(a?1:-1)* (q?-1:1)*this.axistitlemargin+(2===this.side?w:0);return{x:a?k+r:b+(q?this.width:0)+d+r,y:a?b+n-(q?this.height:0)+d:k+n}},render:function(){var a=this,b=a.chart,e=b.renderer,m=a.options,q=a.islog,d=a.lin2log,r=a.islinked,n=a.tickpositions,w=a.axistitle,f=a.ticks,t=a.minorticks,z=a.alternatebands,h=m.stacklabels,l=m.alternategridcolor,x=a.tickmarkoffset,p=a.axisline,a=b.hasrendered&&f(a.oldmin),k=a.showaxis,u=c(e.globalanimation),y,v;a.labeledge.length=0;a.overlap=!1;c([f,t,z],function(a){for(var b in a)a[b].isactive= !1});if(a.hasdata()||r)a.minortickinterval&&!a.categories&&c(a.getminortickpositions(),function(b){t[b]||(t[b]=new n(a,b,"minor"));a&&t[b].isnew&&t[b].render(null,!0);t[b].render(null,!1,1)}),n.length&&(c(n,function(b,c){if(!r||b>=a.min&&b<=a.max)f[b]||(f[b]=new n(a,b)),a&&f[b].isnew&&f[b].render(c,!0,.1),f[b].render(c)}),x&&(0===a.min||a.single)&&(f[-1]||(f[-1]=new n(a,-1,null,!0)),f[-1].render(-1))),l&&c(n,function(c,g){v=void 0!==n[g+1]?n[g+1]+x:a.max-x;0===g%2&&c=c.second?0:a*math.floor(e.getmilliseconds()/a));if(x>=c.second)e[c.hcsetseconds](x>=c.minute?0:a*math.floor(e.getseconds()/a));if(x>=c.minute)e[c.hcsetminutes](x>=c.hour?0:a*math.floor(e[c.hcgetminutes]()/a));if(x>=c.hour)e[c.hcsethours](x>=c.day?0:a*math.floor(e[c.hcgethours]()/a));if(x>=c.day)e[c.hcsetdate](x>=c.month?1:a*math.floor(e[c.hcgetdate]()/a));x>=c.month&&(e[c.hcsetmonth](x>=c.year?0:a*math.floor(e[c.hcgetmonth]()/a)),f=e[c.hcgetfullyear]()); if(x>=c.year)e[c.hcsetfullyear](f-f%a);if(x===c.week)e[c.hcsetdate](e[c.hcgetdate]()-e[c.hcgetday]()+d(m,1));f=e[c.hcgetfullyear]();m=e[c.hcgetmonth]();var w=e[c.hcgetdate](),k=e[c.hcgethours]();if(c.hctimezoneoffset||c.hcgettimezoneoffset)k=(!n||!!c.hcgettimezoneoffset)&&(t-y>4*c.month||l(y)!==l(t)),e=e.gettime(),e=new c(e+l(e));n=e.gettime();for(y=1;np&&(!l||q<=v)&&void 0!==q&&y.push(q),q>v&&(z=!0),q=b;else p=c(p),v=c(v),a=f[l?"minortickinterval":"tickinterval"],a=h("auto"===a?null:a,this._minorautointerval,f.tickpixelinterval/(l?5:1)*(v-p)/((l?d/this.tickpositions.length:d)||1)),a=i(a,null,c(a)),y=g(this.getlineartickpositions(a,p,v),n),l||(this._minorautointerval=a/5);l||(this.tickinterval=a);return y};d.prototype.log2lin= function(a){return math.log(a)/math.ln10};d.prototype.lin2log=function(a){return math.pow(10,a)}})(l);(function(a){var d=a.dateformat,c=a.each,g=a.extend,i=a.format,h=a.isnumber,f=a.map,p=a.merge,v=a.pick,l=a.splat,u=a.synctimeout,d=a.timeunits;a.tooltip=function(){this.init.apply(this,arguments)};a.tooltip.prototype={init:function(a,d){this.chart=a;this.options=d;this.crosshairs=[];this.now={x:0,y:0};this.ishidden=!0;this.split=d.split&&!a.inverted;this.shared=d.shared||this.split},cleansplit:function(a){c(this.chart.series, function(c){var d=c&&c.tt;d&&(!d.isactive||a?c.tt=d.destroy():d.isactive=!1)})},getlabel:function(){var a=this.chart.renderer,d=this.options;this.label||(this.split?this.label=a.g("tooltip"):(this.label=a.label("",0,0,d.shape||"callout",null,null,d.usehtml,null,"tooltip").attr({padding:d.padding,r:d.borderradius}),this.label.attr({fill:d.backgroundcolor,"stroke-width":d.borderwidth}).css(d.style).shadow(d.shadow)),this.label.attr({zindex:8}).add());return this.label},update:function(a){this.destroy(); this.init(this.chart,p(!0,this.options,a))},destroy:function(){this.label&&(this.label=this.label.destroy());this.split&&this.tt&&(this.cleansplit(this.chart,!0),this.tt=this.tt.destroy());cleartimeout(this.hidetimer);cleartimeout(this.tooltiptimeout)},move:function(a,d,f,t){var c=this,b=c.now,q=!1!==c.options.animation&&!c.ishidden&&(1n-q?n:n-q);else if(w)b[a]=math.max(e,g+q+k>c?g:g+q);else return!1},p=function(a,c,k,g){var e;gc-m?e=!1:b[a]=gc-k/2?c-k-2:g-k/2;return e},k=function(a){var b=h;h=e;e=b;n=a},w=function(){!1!==l.apply(0,h)?!1!==p.apply(0,e)||n||(k(!0),w()):n?b.x=b.y=0:(k(!0), w())};(c.inverted||1w&&(q=!1);a=(c.series&&c.series.yaxis&&c.series.yaxis.pos)+(c.ploty||0);a-=m.plottop;n.push({target:c.isheader? m.plotheight+l:a,rank:c.isheader?1:0,size:r.tt.getbbox().height+1,point:c,x:w,tt:k})});this.cleansplit();a.distribute(n,m.plotheight+l);c(n,function(a){var b=a.point,c=b.series;a.tt.attr({visibility:void 0===a.pos?"hidden":"inherit",x:q||b.isheader?a.x:b.plotx+m.plotleft+v(h.distance,16),y:a.pos+m.plottop,anchorx:b.isheader?b.plotx+m.plotleft:b.plotx+c.xaxis.pos,anchory:b.isheader?a.pos+m.plottop-15:b.ploty+c.yaxis.pos})})},updateposition:function(a){var c=this.chart,d=this.getlabel(),d=(this.options.positioner|| this.getposition).call(this,d.width,d.height,a);this.move(math.round(d.x),math.round(d.y||0),a.plotx+c.plotleft,a.ploty+c.plottop)},getxdateformat:function(a,f,h){var c;f=f.datetimelabelformats;var m=h&&h.closestpointrange,b,q={millisecond:15,second:12,minute:9,hour:6,day:3},n,l="millisecond";if(m){n=d("%m-%d %h:%m:%s.%l",a.x);for(b in d){if(m===d.week&&+d("%w",a.x)===h.options.startofweek&&"00:00:00.000"===n.substr(6)){b="week";break}if(d[b]>m){b=l;break}if(q[b]&&n.substr(q[b])!=="01-01 00:00:00.000".substr(q[b]))break; "week"!==b&&(l=b)}b&&(c=f[b])}else c=f.day;return c||f.year},tooltipfooterheaderformatter:function(a,d){var c=d?"footer":"header";d=a.series;var f=d.tooltipoptions,m=f.xdateformat,b=d.xaxis,q=b&&"datetime"===b.options.type&&h(a.key),c=f[c+"format"];q&&!m&&(m=this.getxdateformat(a,f,b));q&&m&&(c=c.replace("{point.key}","{point.key:"+m+"}"));return i(c,{point:a,series:d})},bodyformatter:function(a){return f(a,function(a){var c=a.series.tooltipoptions;return(c.pointformatter||a.point.tooltipformatter).call(a.point, c.pointformat)})}}})(l);(function(a){var d=a.addevent,c=a.attr,g=a.charts,i=a.color,h=a.css,f=a.defined,p=a.doc,v=a.each,l=a.extend,u=a.fireevent,d=a.offset,c=a.pick,n=a.removeevent,y=a.splat,t=a.tooltip,m=a.win;a.pointer=function(a,c){this.init(a,c)};a.pointer.prototype={init:function(a,m){this.options=m;this.chart=a;this.runchartclick=m.chart.events&&!!m.chart.events.click;this.pinchdown=[];this.lastvalidtouch={};t&&m.tooltip.enabled&&(a.tooltip=new t(a,m.tooltip),this.followtouchmove=c(m.tooltip.followtouchmove, !0));this.setdomevents()},zoomoption:function(a){var b=this.chart,m=b.options.chart,d=m.zoomtype||"",b=b.inverted;/touch/.test(a.type)&&(d=c(m.pinchtype,d));this.zoomx=a=/x/.test(d);this.zoomy=d=/y/.test(d);this.zoomhor=a&&!b||d&&b;this.zoomvert=d&&!b||a&&b;this.haszoom=a||d},normalize:function(a,c){var b,q;a=a||m.event;a.target||(a.target=a.srcelement);q=a.touches?a.touches.length?a.touches.item(0):a.changedtouches[0]:a;c||(this.chartposition=c=d(this.chart.container));void 0===q.pagex?(b=math.max(a.x, a.clientx-c.left),c=a.y):(b=q.pagex-c.left,c=q.pagey-c.top);return l(a,{chartx:math.round(b),charty:math.round(c)})},getcoordinates:function(a){var b={xaxis:[],yaxis:[]};v(this.chart.axes,function(c){b[c.isxaxis?"xaxis":"yaxis"].push({axis:c,value:c.tovalue(a[c.horiz?"chartx":"charty"])})});return b},runpointactions:function(b){var m=this.chart,d=m.series,f=m.tooltip,e=f?f.shared:!1,r=!0,n=m.hoverpoint,h=m.hoverseries,k,w,l,t=[],u;if(!e&&!h)for(k=0;kb.series.index?-1:1}));if(e)for(k=t.length;k--;)(t[k].x!==t[0].x||t[k].series.nosharedtooltip)&& t.splice(k,1);if(t[0]&&(t[0]!==this.prevkdpoint||f&&f.ishidden)){if(e&&!t[0].series.nosharedtooltip){for(k=0;kn+w&&(m=n+w),ek+h&&(e=k+h),this.hasdragged=math.sqrt(math.pow(g-m,2)+math.pow(p-e,2)),10k.max&&(f=k.max-e,b=!0);b?(j-=.8*(j-n[m][0]),w||(g-=.8*(g-n[m][1])),h()):n[m]=[j, g];a||(c[m]=r-p,c[l]=e);c=a?1/x:x;d[l]=e;d[m]=f;u[a?a?"scaley":"scalex":"scale"+b]=x;u["translate"+b]=c*p+(j-c*k)},pinch:function(a){var p=this,l=p.chart,u=p.pinchdown,d=a.touches,c=d.length,n=p.lastvalidtouch,y=p.haszoom,t=p.selectionmarker,m={},b=1===c&&(p.inclass(a.target,"highcharts-tracker")&&l.runtrackerclick||p.runchartclick),q={};1c-6&&h(p||b.chartwidth-2*k-b-m.x)&&(this.itemx=b,this.itemy+=g+this.lastlineheight+y,this.lastlineheight=0);this.maxitemwidth=math.max(this.maxitemwidth,e);this.lastitemy=g+this.itemy+y;this.lastlineheight=math.max(h,this.lastlineheight);a._legenditempos=[this.itemx,this.itemy];f?this.itemx+=e: (this.itemy+=g+h+y,this.lastlineheight=h);this.offsetwidth=p||math.max((f?this.itemx-b-w:e)+k,this.offsetwidth)},getallitems:function(){var a=[];f(this.chart.series,function(b){var c=b&&b.options;b&&d(c.showinlegend,h(c.linkedto)?!1:void 0,!0)&&(a=a.concat(b.legenditems||("point"===c.legendtype?b.data:b)))});return a},adjustmargins:function(a,b){var c=this.chart,m=this.options,n=m.align.charat(0)+m.verticalalign.charat(0)+m.layout.charat(0);m.floating||f([/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/, /(lbv|lm|ltv)/],function(e,f){e.test(n)&&!h(a[f])&&(c[l[f]]=math.max(c[l[f]],c.legend[(f+1)%2?"legendheight":"legendwidth"]+[1,-1,-1,1][f]*m[f%2?"x":"y"]+d(m.margin,12)+b[f]))})},render:function(){var a=this,b=a.chart,c=b.renderer,d=a.group,h,e,r,l,t=a.box,k=a.options,w=a.padding;a.itemx=a.initialitemx;a.itemy=a.initialitemy;a.offsetwidth=0;a.lastitemy=0;d||(a.group=d=c.g("legend").attr({zindex:7}).add(),a.contentgroup=c.g().attr({zindex:1}).add(d),a.scrollgroup=c.g().add(a.contentgroup));a.rendertitle(); h=a.getallitems();n(h,function(a,b){return(a.options&&a.options.legendindex||0)-(b.options&&b.options.legendindex||0)});k.reversed&&h.reverse();a.allitems=h;a.display=e=!!h.length;a.lastlineheight=0;f(h,function(b){a.renderitem(b)});r=(k.width||a.offsetwidth)+w;l=a.lastitemy+a.lastlineheight+a.titleheight;l=a.handleoverflow(l);l+=w;t||(a.box=t=c.rect().addclass("highcharts-legend-box").attr({r:k.borderradius}).add(d),t.isnew=!0);t.attr({stroke:k.bordercolor,"stroke-width":k.borderwidth||0,fill:k.backgroundcolor|| "none"}).shadow(k.shadow);0c&&!1!==t.enabled?(this.clipheight=n=math.max(c-20-this.titleheight-y,0),this.currentpage=d(this.currentpage,1),this.fullheight= a,f(b,function(a,b){var c=a._legenditempos[1];a=math.round(a.legenditem.getbbox().height);var k=u.length;if(!k||c-u[k-1]>n&&(g||c)!==u[k-1])u.push(g||c),k++;b===b.length-1&&c+a-u[k-1]>n&&u.push(c);c!==g&&(g=c)}),l||(l=b.cliprect=m.cliprect(0,y,9999,0),b.contentgroup.clip(l)),v(n),p||(this.nav=p=m.g().attr({zindex:1}).add(this.group),this.up=m.symbol("triangle",0,0,w,w).on("click",function(){b.scroll(-1,k)}).add(p),this.pager=m.text("",15,10).addclass("highcharts-legend-navigation").css(t.style).add(p), this.down=m.symbol("triangle-down",0,0,w,w).on("click",function(){b.scroll(1,k)}).add(p)),b.scroll(0),a=c):p&&(v(),p.hide(),this.scrollgroup.attr({translatey:1}),this.clipheight=0);return a},scroll:function(a,b){var d=this.pages,f=d.length;a=this.currentpage+a;var m=this.clipheight,e=this.options.navigation,h=this.pager,n=this.padding;a>f&&(a=f);0m&&(d=typeof a[0],"string"===d?c.name=a[0]:"number"===d&&(c.x=a[0]),b++);l=h.value;)h=c[++f];h&&h.color&&!this.options.color&&(this.color=h.color);return h},destroy:function(){var a=this.series.chart,c=a.hoverpoints,f;a.pointcount--;c&&(this.setstate(),i(c,this),c.length||(a.hoverpoints=null));if(this===a.hoverpoint)this.onmouseout();if(this.graphic||this.datalabel)u(this),this.destroyelements();this.legenditem&&a.legend.destroyitem(this);for(f in this)this[f]=null},destroyelements:function(){for(var a= ["graphic","datalabel","datalabelupper","connector","shadowgroup"],c,f=6;f--;)c=a[f],this[c]&&(this[c]=this[c].destroy())},getlabelconfig:function(){return{x:this.category,y:this.y,color:this.color,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stacktotal}},tooltipformatter:function(a){var c=this.series,d=c.tooltipoptions,h=l(d.valuedecimals,""),t=d.valueprefix||"",m=d.valuesuffix||"";c(c.pointarraymap||["y"],function(b){b="{point."+b; if(t||m)a=a.replace(b+"}",t+b+"}"+m);a=a.replace(b+"}",b+":,."+h+"f}")});return f(a,{point:this,series:this.series})},firepointevent:function(a,c,f){var d=this,n=this.series.options;(n.point.events[a]||d.options&&d.options.events&&d.options.events[a])&&this.importevents();"click"===a&&n.allowpointselect&&(f=function(a){d.select&&d.select(null,a.ctrlkey||a.metakey||a.shiftkey)});h(this,a,c,f)},visible:!0}})(l);(function(a){var d=a.addevent,c=a.animobject,g=a.arraymax,i=a.arraymin,h=a.correctfloat, f=a.date,p=a.defaultoptions,v=a.defaultplotoptions,l=a.defined,u=a.each,d=a.erase,c=a.extend,n=a.fireevent,y=a.grep,t=a.isarray,m=a.isnumber,b=a.isstring,q=a.merge,z=a.pick,f=a.removeevent,e=a.splat,r=a.svgelement,x=a.synctimeout,a=a.win;a.series=a.seriestype("line",null,{linewidth:2,allowpointselect:!1,showcheckbox:!1,animation:{duration:1e3},events:{},marker:{linewidth:0,linecolor:"#ffffff",radius:4,states:{hover:{animation:{duration:50},enabled:!0,radiusplus:2,linewidthplus:1},select:{fillcolor:"#cccccc", linecolor:"#000000",linewidth:2}}},point:{events:{}},datalabels:{align:"center",formatter:function(){return null===this.y?"":a.numberformat(this.y,-1)},style:{fontsize:"11px",fontweight:"bold",color:"contrast",textoutline:"1px contrast"},verticalalign:"bottom",x:0,y:0,padding:5},cropthreshold:300,pointrange:0,softthreshold:!0,states:{hover:{linewidthplus:1,marker:{},halo:{size:10,opacity:.25}},select:{marker:{}}},stickytracking:!0,turbothreshold:1e3},{iscartesian:!0,pointclass:a.point,sorted:!0,requiresorting:!0, directtouch:!1,axistypes:["xaxis","yaxis"],colorcounter:0,parallelarrays:["x","y"],coll:"series",init:function(a,b){var k=this,e,d,g=a.series,f;k.chart=a;k.options=b=k.setoptions(b);k.linkedseries=[];k.bindaxes();c(k,{name:b.name,state:"",visible:!1!==b.visible,selected:!0===b.selected});d=b.events;for(e in d)d(k,e,d[e]);if(d&&d.click||b.point&&b.point.events&&b.point.events.click||b.allowpointselect)a.runtrackerclick=!0;k.getcolor();k.getsymbol();u(k.parallelarrays,function(a){k[a+"data"]=[]});k.setdata(b.data, !1);k.iscartesian&&(a.hascartesianseries=!0);g.length&&(f=g[g.length-1]);k._i=z(f&&f._i,-1)+1;for(a=this.insert(g);a=z(a[c].options.index,a[c]._i)){a.splice(c+1,0,this);break}-1===c&&a.unshift(this);c+=1}else a.push(this);return z(c,a.length-1)},bindaxes:function(){var b=this,c=b.options,e=b.chart,d;u(b.axistypes||[],function(k){u(e[k],function(a){d= a.options;if(c[k]===d.index||void 0!==c[k]&&c[k]===d.id||void 0===c[k]&&0===d.index)b.insert(a.series),b[k]=a,a.isdirty=!0});b[k]||b.optionalaxis===k||a.error(18,!0)})},updateparallelarrays:function(a,b){var c=a.series,k=arguments,e=m(b)?function(g){var k="y"===g&&c.toydata?c.toydata(a):a[g];c[g+"data"][b]=k}:function(a){array.prototype[b].apply(c[a+"data"],array.prototype.slice.call(k,2))};u(c.parallelarrays,e)},autoincrement:function(){var a=this.options,b=this.xincrement,c,e=a.pointintervalunit, b=z(b,a.pointstart,0);this.pointinterval=c=z(this.pointinterval,a.pointinterval,1);e&&(a=new f(b),"day"===e?a=+a[f.hcsetdate](a[f.hcgetdate]()+c):"month"===e?a=+a[f.hcsetmonth](a[f.hcgetmonth]()+c):"year"===e&&(a=+a[f.hcsetfullyear](a[f.hcgetfullyear]()+c)),c=a-b);this.xincrement=b+c;return b},setoptions:function(a){var b=this.chart,c=b.options.plotoptions,b=b.useroptions||{},k=b.plotoptions||{},e=c[this.type];this.useroptions=a;c=q(e,c.series,a);this.tooltipoptions=q(p.tooltip,p.plotoptions[this.type].tooltip, b.tooltip,k.series&&k.series.tooltip,k[this.type]&&k[this.type].tooltip,a.tooltip);null===e.marker&&delete c.marker;this.zoneaxis=c.zoneaxis;a=this.zones=(c.zones||[]).slice();!c.negativecolor&&!c.negativefillcolor||c.zones||a.push({value:c[this.zoneaxis+"threshold"]||c.threshold||0,classname:"highcharts-negative",color:c.negativecolor,fillcolor:c.negativefillcolor});a.length&&l(a[a.length-1].value)&&a.push({color:this.color,fillcolor:this.fillcolor});return c},getcyclic:function(a,b,c){var k,e=this.useroptions, g=a+"index",d=a+"counter",f=c?c.length:z(this.chart.options.chart[a+"count"],this.chart[a+"count"]);b||(k=z(e[g],e["_"+g]),l(k)||(e["_"+g]=k=this.chart[d]%f,this.chart[d]+=1),c&&(b=c[k]));void 0!==k&&(this[g]=k);this[a]=b},getcolor:function(){this.options.colorbypoint?this.options.color=null:this.getcyclic("color",this.options.color||v[this.type].color,this.chart.options.colors)},getsymbol:function(){this.getcyclic("symbol",this.options.marker.symbol,this.chart.options.symbols)},drawlegendsymbol:a.legendsymbolmixin.drawlinemarker, setdata:function(c,e,d,f){var k=this,g=k.points,h=g&&g.length||0,n,r=k.options,w=k.chart,l=null,q=k.xaxis,p=r.turbothreshold,x=this.xdata,a=this.ydata,f=(n=k.pointarraymap)&&n.length;c=c||[];n=c.length;e=z(e,!0);if(!1!==f&&n&&h===n&&!k.cropped&&!k.hasgroupeddata&&k.visible)u(c,function(a,b){g[b].update&&a!==r.data[b]&&g[b].update(a,!1,null,!1)});else{k.xincrement=null;k.colorcounter=0;u(this.parallelarrays,function(a){k[a+"data"].length=0});if(p&&n>p){for(d=0;null===l&&dh||this.forcecrop))if(c[e-1]p)c=[], k=[];else if(c[0]p)d=this.cropdata(this.xdata,this.ydata,t,p),c=d.xdata,k=d.ydata,d=d.start,g=!0;for(h=c.length||1;--h;)e=q?n(c[h])-n(c[h-1]):c[h]-c[h-1],0e&&this.requiresorting&&a.error(15);this.cropped=g;this.cropstart=d;this.processedxdata=c;this.processedydata=k;this.closestpointrange=f},cropdata:function(a,b,c,e){var k=a.length,g=0,d=k,f=z(this.cropshoulder,1),h;for(h=0;h=c){g=math.max(0,h-f);break}for(c=h;ce){d=c+f;break}return{xdata:a.slice(g, d),ydata:b.slice(g,d),start:g,end:d}},generatepoints:function(){var a=this.options.data,b=this.data,c,d=this.processedxdata,f=this.processedydata,g=this.pointclass,h=d.length,m=this.cropstart||0,n,r=this.hasgroupeddata,l,q=[],t;b||r||(b=[],b.length=a.length,b=this.data=b);for(t=0;t=d&&(c[r-1]||n)<=f,h&&n)if(h=l.length)for(;h--;)null!==l[h]&&(k[g++]= l[h]);else k[g++]=l;this.datamin=i(k);this.datamax=g(k)},translate:function(){this.processedxdata||this.processdata();this.generatepoints();var a=this.options,b=a.stacking,c=this.xaxis,e=c.categories,d=this.yaxis,g=this.points,f=g.length,n=!!this.modifyvalue,r=a.pointplacement,t="between"===r||m(r),q=a.threshold,p=a.startfromthreshold?q:0,x,u,a,f,v=number.max_value;"between"===r&&(r=.5);m(r)&&(r*=z(a.pointrange||c.pointrange));for(a=0;a=d&&(y.isnull=!0);y.plotx=x=h(math.min(math.max(-1e5,c.translate(c,0,0,0,1,r,"flags"===this.type)),1e5));b&&this.visible&&!y.isnull&&g&&g[c]&&(f=this.getstackindicator(f,c,this.index),i=g[c],d=i.points[f.key],u=d[0],d=d[1],u===p&&f.key===g[c].base&&(u=z(q,d.min)),d.islog&&0>=u&&(u=null),y.total=y.stacktotal=i.total,y.percentage=i.total&&y.y/i.total*100,y.stacky=d,i.setoffset(this.pointxoffset||0,this.barw||0));y.ybottom=l(u)?d.translate(u,0, 1,0,1):null;n&&(d=this.modifyvalue(d,y));y.ploty=u="number"===typeof d&&infinity!==d?math.min(math.max(-1e5,d.translate(d,0,1,0,1)),1e5):void 0;y.isinside=void 0!==u&&0<=u&&u<=d.len&&0<=x&&x<=c.len;y.clientx=t?h(c.translate(c,0,0,0,1,r)):x;y.negative=y.y<(q||0);y.category=e&&void 0!==e[y.x]?e[y.x]:y.x;y.isnull||(void 0!==a&&(v=math.min(v,math.abs(x-a))),a=x);y.zone=this.zones.length&&y.getzone()}this.closestpointrangepx=v},getvalidpoints:function(a,b){var c=this.chart;return y(a||this.points||[], function(a){return b&&!c.isinsideplot(a.plotx,a.ploty,c.inverted)?!1:!a.isnull})},setclip:function(a){var b=this.chart,c=this.options,e=b.renderer,k=b.inverted,g=this.clipbox,d=g||b.clipbox,f=this.sharedclipkey||["_sharedclip",a&&a.duration,a&&a.easing,d.height,c.xaxis,c.yaxis].join(),h=b[f],m=b[f+"m"];h||(a&&(d.width=0,b[f+"m"]=m=e.cliprect(-99,k?-b.plotleft:-b.plottop,99,k?b.chartwidth:b.chartheight)),b[f]=h=e.cliprect(d),h.count={length:0});a&&!h.count[this.index]&&(h.count[this.index]=!0,h.count.length+= 1);!1!==c.clip&&(this.group.clip(a||g?h:b.cliprect),this.markergroup.clip(m),this.sharedclipkey=f);a||(h.count[this.index]&&(delete h.count[this.index],--h.count.length),0===h.count.length&&f&&b[f]&&(g||(b[f]=b[f].destroy()),b[f+"m"]&&(b[f+"m"]=b[f+"m"].destroy())))},animate:function(a){var b=this.chart,c=c(this.options.animation),e;a?this.setclip(c):(e=this.sharedclipkey,(a=b[e])&&a.animate({width:b.plotsizex},c),b[e+"m"]&&b[e+"m"].animate({width:b.plotsizex+99},c),this.animate=null)},afteranimate:function(){this.setclip(); n(this,"afteranimate")},drawpoints:function(){var a=this.points,b=this.chart,c,e,d,g,f=this.options.marker,h,n,r,l,t=this.markergroup,q=z(f.enabled,this.xaxis.isradial?!0:null,this.closestpointrangepx>2*f.radius);if(!1!==f.enabled||this._haspointmarkers)for(e=a.length;e--;)d=a[e],c=d.ploty,g=d.graphic,h=d.marker||{},n=!!d.marker,r=q&&void 0===h.enabled||h.enabled,l=d.isinside,r&&m(c)&&null!==d.y?(c=z(h.symbol,this.symbol),d.hasimage=0===c.indexof("url"),r=this.markerattribs(d,d.selected&&"select"), g?g[l?"show":"hide"](!0).animate(r):l&&(0g&&b.shadow));d&&(d.startx=c.xmap,d.isarea=c.isarea)})},applyzones:function(){var a=this,b=this.chart,c=b.renderer,e=this.zones,d,g,f=this.clips||[], h,m=this.graph,n=this.area,r=math.max(b.chartwidth,b.chartheight),l=this[(this.zoneaxis||"y")+"axis"],q,t,p=b.inverted,x,a,f,y,v=!1;e.length&&(m||n)&&l&&void 0!==l.min&&(t=l.reversed,x=l.horiz,m&&m.hide(),n&&n.hide(),q=l.getextremes(),u(e,function(e,k){d=t?x?b.plotwidth:0:x?0:l.topixels(q.min);d=math.min(math.max(z(g,d),0),r);g=math.min(math.max(math.round(l.topixels(z(e.value,q.max),!0)),0),r);v&&(d=g=l.topixels(q.max));a=math.abs(d-g);f=math.min(d,g);y=math.max(d,g);l.isxaxis?(h={x:p?y:f,y:0,width:a, height:r},x||(h.x=b.plotheight-h.x)):(h={x:0,y:p?y:f,width:r,height:a},x&&(h.y=b.plotwidth-h.y));p&&c.isvml&&(h=l.isxaxis?{x:0,y:t?f:y,height:h.width,width:b.chartwidth}:{x:h.y-b.plotleft-b.spacingbox.x,y:0,width:h.height,height:b.chartheight});f[k]?f[k].animate(h):(f[k]=c.cliprect(h),m&&a["zone-graph-"+k].clip(f[k]),n&&a["zone-area-"+k].clip(f[k]));v=e.value>q.max}),this.clips=f)},invertgroups:function(a){function b(){var b={width:c.yaxis.len,height:c.xaxis.len};u(["group","markergroup"],function(e){c[e]&& c[e].attr(b).invert(a)})}var c=this,e;c.xaxis&&(e=d(c.chart,"resize",b),d(c,"destroy",e),b(a),c.invertgroups=b)},plotgroup:function(a,b,c,e,d){var g=this[a],k=!g;k&&(this[a]=g=this.chart.renderer.g(b).attr({zindex:e||.1}).add(d),g.addclass("highcharts-series-"+this.index+" highcharts-"+this.type+"-series highcharts-color-"+this.colorindex+" "+(this.options.classname||"")));g.attr({visibility:c})[k?"attr":"animate"](this.getplotbox());return g},getplotbox:function(){var a=this.chart,b=this.xaxis,c= this.yaxis;a.inverted&&(b=c,c=this.xaxis);return{translatex:b?b.left:a.plotleft,translatey:c?c.top:a.plottop,scalex:1,scaley:1}},render:function(){var a=this,b=a.chart,c,e=a.options,d=!!a.animate&&b.renderer.issvg&&c(e.animation).duration,g=a.visible?"inherit":"hidden",f=e.zindex,h=a.hasrendered,m=b.seriesgroup,n=b.inverted;c=a.plotgroup("group","series",g,f,m);a.markergroup=a.plotgroup("markergroup","markers",g,f,m);d&&a.animate(!0);c.inverted=a.iscartesian?n:!1;a.drawgraph&&(a.drawgraph(),a.applyzones()); a.drawdatalabels&&a.drawdatalabels();a.visible&&a.drawpoints();a.drawtracker&&!1!==a.options.enablemousetracking&&a.drawtracker();a.invertgroups(n);!1===e.clip||a.sharedclipkey||h||c.clip(b.cliprect);d&&a.animate();h||(a.animationtimeout=x(function(){a.afteranimate()},d));a.isdirty=a.isdirtydata=!1;a.hasrendered=!0},redraw:function(){var a=this.chart,b=this.isdirty||this.isdirtydata,c=this.group,e=this.xaxis,d=this.yaxis;c&&(a.inverted&&c.attr({width:a.plotwidth,height:a.plotheight}),c.animate({translatex:z(e&& e.left,a.plotleft),translatey:z(d&&d.top,a.plottop)}));this.translate();this.render();b&&delete this.kdtree},kddimensions:1,kdaxisarray:["clientx","ploty"],searchpoint:function(a,b){var c=this.xaxis,e=this.yaxis,d=this.chart.inverted;return this.searchkdtree({clientx:d?c.len-a.charty+c.pos:a.chartx-c.pos,ploty:d?e.len-a.chartx+e.pos:a.charty-e.pos},b)},buildkdtree:function(){function a(c,e,g){var d,k;if(k=c&&c.length)return d=b.kdaxisarray[e%g],c.sort(function(a,b){return a[d]-b[d]}),k=math.floor(k/ 2),{point:c[k],left:a(c.slice(0,k),e+1,g),right:a(c.slice(k+1),e+1,g)}}var b=this,c=b.kddimensions;delete b.kdtree;x(function(){b.kdtree=a(b.getvalidpoints(null,!b.directtouch),c,c)},b.options.kdnow?0:1)},searchkdtree:function(a,b){function c(a,b,f,h){var m=b.point,n=e.kdaxisarray[f%h],r,q,t=m;q=l(a[d])&&l(m[d])?math.pow(a[d]-m[d],2):null;r=l(a[g])&&l(m[g])?math.pow(a[g]-m[g],2):null;r=(q||0)+(r||0);m.dist=l(r)?math.sqrt(r):number.max_value;m.distx=l(q)?math.sqrt(q):number.max_value;n=a[n]-m[n];r= 0>n?"left":"right";q=0>n?"right":"left";b[r]&&(r=c(a,b[r],f+1,h),t=r[k]p;)q--;this.updateparallelarrays(g,"splice",q,0,0);this.updateparallelarrays(g,q);m&&g.name&&(m[p]=g.name);n.splice(q,0,a);l&&(this.data.splice(q,0,null),this.processdata());"point"===e.legendtype&&this.generatepoints();c&&(f[0]&&f[0].remove? f[0].remove(!1):(f.shift(),this.updateparallelarrays(g,"shift"),n.shift()));this.isdirtydata=this.isdirty=!0;b&&h.redraw(d)},removepoint:function(a,b,c){var e=this,d=e.data,f=d[a],h=e.points,m=e.chart,n=function(){h&&h.length===d.length&&h.splice(a,1);d.splice(a,1);e.options.data.splice(a,1);e.updateparallelarrays(f||{series:e},"splice",a,1);f&&f.destroy();e.isdirty=!0;e.isdirtydata=!0;b&&m.redraw()};z(c,m);b=t(b,!0);f?f.firepointevent("remove",null,n):n()},remove:function(a,b,c){function e(){d.destroy(); f.isdirtylegend=f.isdirtybox=!0;f.linkseries();t(a,!0)&&f.redraw(b)}var d=this,f=d.chart;!1!==c?u(d,"remove",null,e):e()},update:function(a,b){var c=this,e=this.chart,d=this.useroptions,f=this.type,h=a.type||d.type||e.options.chart.type,m=q[f].prototype,n=["group","markergroup","datalabelsgroup"],g;if(h&&h!==f||void 0!==a.zindex)n.length=0;p(n,function(a){n[a]=c[a];delete c[a]});a=y(d,{animation:!1,index:this.index,pointstart:this.xdata[0]},{data:this.options.data},a);this.remove(!1,null,!1);for(g in m)this[g]= void 0;l(this,q[h||f].prototype);p(n,function(a){c[a]=n[a]});this.init(e,a);e.linkseries();t(b,!0)&&e.redraw(!1)}});l(g.prototype,{update:function(a,b){var c=this.chart;a=c.options[this.coll][this.options.index]=y(this.useroptions,a);this.destroy(!0);this.init(c,l(a,{events:void 0}));c.isdirtybox=!0;t(b,!0)&&c.redraw()},remove:function(a){for(var b=this.chart,c=this.coll,e=this.series,d=e.length;d--;)e[d]&&e[d].remove(!1);v(b.axes,this);v(b[c],this);b.options[c].splice(this.options.index,1);p(b[c], function(a,b){a.options.index=b});this.destroy();b.isdirtybox=!0;t(a,!0)&&b.redraw()},settitle:function(a,b){this.update({title:a},b)},setcategories:function(a,b){this.update({categories:a},b)}})})(l);(function(a){var d=a.color,c=a.each,g=a.map,i=a.pick,h=a.series,f=a.seriestype;f("area","line",{softthreshold:!1,threshold:0},{singlestacks:!1,getstackpoints:function(){var a=[],f=[],h=this.xaxis,u=this.yaxis,d=u.stacks[this.stackkey],c={},n=this.points,y=this.index,t=u.series,m=t.length,b,q=i(u.options.reversedstacks, !0)?1:-1,z,f;if(this.options.stacking){for(z=0;za&&l>f?(l=math.max(a,f),d=2*f-l):li&&d>f?(d=math.max(i,f),l=2*f-d):d=math.abs(c)&&.5a.closestpointrange*a.xaxis.transa,h=a.borderwidth=p(f.borderwidth,h?0:1),l=a.yaxis,m=a.translatedthreshold=l.getthreshold(f.threshold),b=p(f.minpointlength, 5),q=a.getcolumnmetrics(),u=q.width,f=a.barw=math.max(u,1+2*h),e=a.pointxoffset=q.offset;c.inverted&&(m-=.5);f.pointpadding&&(f=math.ceil(f));v.prototype.translate.apply(a);g(a.points,function(d){var f=p(d.ybottom,m),h=999+math.abs(f),h=math.min(math.max(-h,d.ploty),l.len+h),k=d.plotx+e,n=f,q=math.min(h,f),r,t=math.max(h,f)-q;math.abs(t)b?f-b:m-(r?b:0));d.barx=k;d.pointwidth=u;d.tooltippos=c.inverted?[l.len+l.pos-c.plotleft- h,a.xaxis.len-k-n/2,t]:[k+n/2,h+l.pos-c.plottop,t];d.shapetype="rect";d.shapeargs=a.crispcol.apply(a,d.isnull?[d.plotx,l.len/2,0,0]:[k,q,n,t])})},getsymbol:a.noop,drawlegendsymbol:a.legendsymbolmixin.drawrectangle,drawgraph:function(){this.group[this.dense?"addclass":"removeclass"]("highcharts-dense-data")},pointattribs:function(a,c){var d=this.options,f,h=this.pointattrtooptions||{};f=h.stroke||"bordercolor";var m=h["stroke-width"]||"borderwidth",b=a&&a.color||this.color,l=a[f]||d[f]||this.color|| b,p=a[m]||d[m]||this[m]||0,h=d.dashstyle;a&&this.zones.length&&(b=(b=a.getzone())&&b.color||a.options.color||this.color);c&&(a=d.states[c],c=a.brightness,b=a.color||void 0!==c&&c(b).brighten(a.brightness).get()||b,l=a[f]||l,p=a[m]||p,h=a.dashstyle||h);f={fill:b,stroke:l,"stroke-width":p};d.borderradius&&(f.r=d.borderradius);h&&(f.dashstyle=h);return f},drawpoints:function(){var a=this,c=this.chart,l=a.options,p=c.renderer,t=l.animationlimit||250,m;g(a.points,function(b){var d=b.graphic;if(h(b.ploty)&& null!==b.y){m=b.shapeargs;if(d)d[c.pointcountl;++l)u=p[l],a=2>l||2===l&&/%$/.test(u),p[l]=c(u,[f,i,v,p[2]][l])+(a?h:0);p[3]>p[2]&&(p[3]=p[2]);return p}}})(l);(function(a){var d=a.addevent,c=a.defined,g=a.each,i=a.extend,h=a.inarray,f=a.noop,p=a.pick,v=a.point,l=a.series,u=a.seriestype,d=a.setanimation;u("pie","line",{center:[null,null],clip:!1,colorbypoint:!0,datalabels:{distance:30,enabled:!0,formatter:function(){return null===this.y? void 0:this.point.name},x:0},ignorehiddenpoint:!0,legendtype:"point",marker:null,size:null,showinlegend:!1,slicedoffset:10,stickytracking:!1,tooltip:{followpointer:!0},bordercolor:"#ffffff",borderwidth:1,states:{hover:{brightness:.1,shadow:!1}}},{iscartesian:!1,requiresorting:!1,directtouch:!0,nosharedtooltip:!0,trackergroups:["group","datalabelsgroup"],axistypes:[],pointattribs:a.seriestypes.column.prototype.pointattribs,animate:function(a){var c=this,d=c.points,f=c.startanglerad;a||(g(d,function(a){var b= a.graphic,d=a.shapeargs;b&&(b.attr({r:a.startr||c.center[3]/2,start:f,end:f}),b.animate({r:d.r,start:d.start,end:d.end},c.options.animation))}),c.animate=null)},updatetotals:function(){var a,d=0,f=this.points,h=f.length,m,b=this.options.ignorehiddenpoint;for(a=0;am.y&&(m.y=null),d+=b&&!m.visible?0:m.y;this.total=d;for(a=0;a1.5*math.pi?u-=2*math.pi:u<-math.pi/2&&(u+=2*math.pi);w.slicedtranslation={translatex:math.round(math.cos(u)*f),translatey:math.round(math.sin(u)*f)};b=math.cos(u)*a[2]/2;l=math.sin(u)*a[2]/2;w.tooltippos=[a[0]+.7*b,a[1]+.7*l];w.half=u<-math.pi/2||u>math.pi/2?1:0;w.angle=u;h=math.min(h,x/5);w.labelpos=[a[0]+b+math.cos(u)*x,a[1]+l+math.sin(u)*x,a[0]+b+math.cos(u)*h,a[1]+l+math.sin(u)* h,a[0]+b,a[1]+l,0>x?"center":w.half?"right":"left",u]}},drawgraph:null,drawpoints:function(){var a=this,d=a.chart.renderer,f,h,m,b,l=a.options.shadow;l&&!a.shadowgroup&&(a.shadowgroup=d.g("shadow").add(a.group));g(a.points,function(c){if(null!==c.y){h=c.graphic;b=c.shapeargs;f=c.sliced?c.slicedtranslation:{};var n=c.shadowgroup;l&&!n&&(n=c.shadowgroup=d.g("shadow").add(a.shadowgroup));n&&n.attr(f);m=a.pointattribs(c,c.selected&&"select");h?h.setradialreference(a.center).attr(m).animate(i(b,f)):(c.graphic= h=d[c.shapetype](b).addclass(c.getclassname()).setradialreference(a.center).attr(f).add(a.group),c.visible||h.attr({visibility:"hidden"}),h.attr(m).attr({"stroke-linejoin":"round"}).shadow(l,n))}})},searchpoint:f,sortbyangle:function(a,d){a.sort(function(a,c){return void 0!==a.angle&&(c.angle-a.angle)*d})},drawlegendsymbol:a.legendsymbolmixin.drawrectangle,getcenter:a.centeredseriesmixin.getcenter,getsymbol:f},{init:function(){v.prototype.init.apply(this,arguments);var a=this,d;a.name=p(a.name,"slice"); d=function(c){a.slice("select"===c.type)};d(a,"select",d);d(a,"unselect",d);return a},setvisible:function(a,d){var c=this,f=c.series,m=f.chart,b=f.options.ignorehiddenpoint;d=p(d,b);a!==c.visible&&(c.visible=c.options.visible=a=void 0===a?!c.visible:a,f.options.data[h(c,f.data)]=c.options,g(["graphic","datalabel","connector","shadowgroup"],function(b){if(c[b])c[b][a?"show":"hide"](!0)}),c.legenditem&&m.legend.colorizeitem(c,a),a||"hover"!==c.state||c.setstate(""),b&&(f.isdirty=!0),d&&m.redraw())}, slice:function(a,f,l){var c=this.series;d(l,c.chart);p(f,!0);this.sliced=this.options.sliced=a=c(a)?a:!this.sliced;c.options.data[h(this,c.data)]=this.options;a=a?this.slicedtranslation:{translatex:0,translatey:0};this.graphic.animate(a);this.shadowgroup&&this.shadowgroup.animate(a)},halopath:function(a){var c=this.shapeargs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(c.x,c.y,c.r+a,c.r+a,{innerr:this.shapeargs.r,start:c.start,end:c.end})}})})(l);(function(a){var d= a.addevent,c=a.arraymax,g=a.defined,i=a.each,h=a.extend,f=a.format,p=a.map,v=a.merge,l=a.noop,u=a.pick,d=a.relativelength,c=a.series,n=a.seriestypes,y=a.stablesort;a.distribute=function(a,c){function b(a,b){return a.target-b.target}var d,f=!0,h=a,e=[],m;m=0;for(d=a.length;d--;)m+=a[d].size;if(m>c){y(a,function(a,b){return(b.rank||0)-(a.rank||0)});for(m=d=0;m<=c;)m+=a[d].size,d++;e=a.splice(d-1,a.length)}y(a,b);for(a=p(a,function(a){return{size:a.size,targets:[a.target]}});f;){for(d=a.length;d--;)f= a[d],m=(math.min.apply(0,f.targets)+math.max.apply(0,f.targets))/2,f.pos=math.min(math.max(0,m-f.size/2),c-f.size);d=a.length;for(f=!1;d--;)0a[d].pos&&(a[d-1].size+=a[d].size,a[d-1].targets=a[d-1].targets.concat(a[d].targets),a[d-1].pos+a[d-1].size>c&&(a[d-1].pos=c-a[d-1].size),a.splice(d,1),f=!0)}d=0;i(a,function(a){var b=0;i(a.targets,function(){h[d].pos=a.pos+b;b+=h[d].size;d++})});h.push.apply(h,e);y(h,b)};c.prototype.drawdatalabels=function(){var a=this,c=a.options, b=c.datalabels,d=a.points,l,n,e=a.hasrendered||0,r,p,a=u(b.defer,!0),k=a.chart.renderer;if(b.enabled||a._haspointlabels)a.dlprocessoptions&&a.dlprocessoptions(b),p=a.plotgroup("datalabelsgroup","data-labels",a&&!e?"hidden":"visible",b.zindex||6),a&&(p.attr({opacity:+e}),e||d(a,"afteranimate",function(){a.visible&&p.show(!0);p[c.animation?"animate":"attr"]({opacity:1},{duration:200})})),n=b,i(d,function(e){var d,m=e.datalabel,q,g,t=e.connector,f=!0,x,a={};l=e.dloptions||e.options&&e.options.datalabels; d=u(l&&l.enabled,n.enabled)&&null!==e.y;if(m&&!d)e.datalabel=m.destroy();else if(d){b=v(n,l);x=b.style;d=b.rotation;q=e.getlabelconfig();r=b.format?f(b.format,q):b.formatter.call(q,b);x.color=u(b.color,x.color,a.color,"#000000");if(m)g(r)?(m.attr({text:r}),f=!1):(e.datalabel=m=m.destroy(),t&&(e.connector=t.destroy()));else if(g(r)){m={fill:b.backgroundcolor,stroke:b.bordercolor,"stroke-width":b.borderwidth,r:b.borderradius||0,rotation:d,padding:b.padding,zindex:1};"contrast"===x.color&&(a.color=b.inside|| 0>b.distance||c.stacking?k.getcontrast(e.color||a.color):"#000000");c.cursor&&(a.cursor=c.cursor);for(g in m)void 0===m[g]&&delete m[g];m=e.datalabel=k[d?"text":"label"](r,0,-9999,b.shape,null,null,b.usehtml,null,"data-label").attr(m);m.addclass("highcharts-data-label-color-"+e.colorindex+" "+(b.classname||"")+(b.usehtml?"highcharts-tracker":""));m.css(h(x,a));m.add(p);m.shadow(b.shadow)}m&&a.aligndatalabel(e,m,b,null,f)}})};c.prototype.aligndatalabel=function(a,c,b,d,f){var m=this.chart,e=m.inverted, l=u(a.plotx,-9999),n=u(a.ploty,-9999),p=c.getbbox(),k,q=b.rotation,t=b.align,v=this.visible&&(a.series.forcedl||m.isinsideplot(l,math.round(n),e)||d&&m.isinsideplot(l,e?d.x+1:d.y+d.height-1,e)),z="justify"===u(b.overflow,"justify");v&&(k=b.style.fontsize,k=m.renderer.fontmetrics(k,c).b,d=h({x:e?m.plotwidth-n:l,y:math.round(e?m.plotheight-l:n),width:0,height:0},d),h(b,{width:p.width,height:p.height}),q?(z=!1,e=m.renderer.rotcorr(k,q),e={x:d.x+b.x+d.width/2+e.x,y:d.y+b.y+{top:0,middle:.5,bottom:1}[b.verticalalign]* d.height},c[f?"attr":"animate"](e).attr({align:t}),l=(q+720)%360,l=180l,"left"===t?e.y-=l?p.height:0:"center"===t?(e.x-=p.width/2,e.y-=p.height/2):"right"===t&&(e.x-=p.width,e.y-=l?0:p.height)):(c.align(b,null,d),e=c.alignattr),z?this.justifydatalabel(c,b,e,p,d,f):u(b.crop,!0)&&(v=m.isinsideplot(e.x,e.y)&&m.isinsideplot(e.x+p.width,e.y+p.height)),b.shape&&!q&&c.attr({anchorx:a.plotx,anchory:a.ploty}));v||(c.attr({y:-9999}),c.placed=!1)};c.prototype.justifydatalabel=function(a,c,b,d,f,h){var e= this.chart,m=c.align,l=c.verticalalign,n,k,p=a.box?0:a.padding||0;n=b.x+p;0>n&&("right"===m?c.align="left":c.x=-n,k=!0);n=b.x+d.width-p;n>e.plotwidth&&("left"===m?c.align="right":c.x=e.plotwidth-n,k=!0);n=b.y+p;0>n&&("bottom"===l?c.verticalalign="top":c.y=-n,k=!0);n=b.y+d.height-p;n>e.plotheight&&("top"===l?c.verticalalign="bottom":c.y=e.plotheight-n,k=!0);k&&(a.placed=!h,a.align(c,null,f))};n.pie&&(n.pie.prototype.drawdatalabels=function(){var d=this,f=d.data,b,h=d.chart,l=d.options.datalabels,n= u(l.connectorpadding,10),e=u(l.connectorwidth,1),r=h.plotwidth,v=h.plotheight,a,k=l.distance,w=d.center,y=w[2]/2,d=w[1],g=0m-2?u:h,e),g._attr={visibility:p,align:l[6]},g._pos={x:e+l.x+({left:n,right:-n}[l[6]]||0),y:h+l.y-10},l.x=e,l.y=h,null===d.options.size&&(b=g.width,e-br-n&& (o[1]=math.max(math.round(e+b-r+n),o[1])),0>h-m/2?o[0]=math.max(math.round(-h+m/2),o[0]):h+m/2>v&&(o[2]=math.max(math.round(h+m/2-v),o[2])))}),0===c(o)||this.verifydatalabeloverflow(o))&&(this.placedatalabels(),g&&e&&i(this.points,function(a){var b;a=a.connector;if((g=a.datalabel)&&g._pos&&a.visible){p=g._attr.visibility;if(b=!a)a.connector=a=h.renderer.path().addclass("highcharts-data-label-connector highcharts-color-"+a.colorindex).add(d.datalabelsgroup),a.attr({"stroke-width":e,stroke:l.connectorcolor|| a.color||"#666666"});a[b?"attr":"animate"]({d:d.connectorpath(a.labelpos)});a.attr("visibility",p)}else a&&(a.connector=a.destroy())}))},n.pie.prototype.connectorpath=function(a){var c=a.x,b=a.y;return u(this.options.datalabels.softconnector,!0)?["m",c+("left"===a[6]?5:-5),b,"c",c,b,2*a[2]-a[4],2*a[3]-a[5],a[2],a[3],"l",a[4],a[5]]:["m",c+("left"===a[6]?5:-5),b,"l",a[2],a[3],"l",a[4],a[5]]},n.pie.prototype.placedatalabels=function(){i(this.points,function(a){var c=a.datalabel;c&&a.visible&&((a=c._pos)? (c.attr(c._attr),c[c.moved?"animate":"attr"](a),c.moved=!0):c&&c.attr({y:-9999}))})},n.pie.prototype.aligndatalabel=l,n.pie.prototype.verifydatalabeloverflow=function(a){var c=this.center,b=this.options,f=b.center,h=b.minsize||80,l,e;null!==f[0]?l=math.max(c[2]-math.max(a[1],a[3]),h):(l=math.max(c[2]-a[1]-a[3],h),c[0]+=(a[3]-a[1])/2);null!==f[1]?l=math.max(math.min(l,c[2]-math.max(a[0],a[2])),h):(l=math.max(math.min(l,c[2]-a[0]-a[2]),h),c[1]+=(a[0]-a[2])/2);lu(this.translatedthreshold,e.yaxis.len)),p=u(b.inside,!!this.options.stacking);m&&(f=v(m),0>f.y&&(f.height+=f.y,f.y=0),m=f.y+f.height-e.yaxis.len,0a+d||e+lc+f||h+mthis.pointcount))}, pan:function(a,b){var c=this,e=c.hoverpoints,d;e&&p(e,function(a){a.setstate()});p("xy"===b?[1,0]:[1],function(b){b=c[b?"xaxis":"yaxis"][0];var e=b.horiz,f=a[e?"chartx":"charty"],e=e?"mousedownx":"mousedowny",h=c[e],k=(b.pointrange||0)/2,g=b.getextremes(),l=b.tovalue(h-f,!0)+k,k=b.tovalue(h+b.len-f,!0)-k,m=kk&&0>g&&(b.setextremes(h,l,!1,!1,{trigger:"pan"}),d=!0);c[e]=f});d&&c.redraw(!1);i(c.container, {cursor:"move"})}});v(m.prototype,{select:function(a,b){var c=this,e=c.series,f=e.chart;a=t(a,!c.selected);c.firepointevent(a?"select":"unselect",{accumulate:b},function(){c.selected=c.options.selected=a;e.options.data[d(c,e.data)]=c.options;c.setstate(a&&"select");b||p(f.getselectedpoints(),function(a){a.selected&&a!==c&&(a.selected=a.options.selected=!1,e.options.data[d(a,e.data)]=a.options,a.setstate(""),a.firepointevent("unselect"))})})},onmouseover:function(a,b){var c=this.series,e=c.chart,d= e.tooltip,f=e.hoverpoint;if(this.series){if(!b){if(f&&f!==this)f.onmouseout();if(e.hoverseries!==c)c.onmouseover();e.hoverpoint=this}!d||d.shared&&!c.nosharedtooltip?d||this.setstate("hover"):(this.setstate("hover"),d.refresh(this,a));this.firepointevent("mouseover")}},onmouseout:function(){var a=this.series.chart,b=a.hoverpoints;this.firepointevent("mouseout");b&&-1!==d(this,b)||(this.setstate(),a.hoverpoint=null)},importevents:function(){if(!this.hasimportedevents){var a=y(this.series.options.point, this.options).events,b;this.events=a;for(b in a)d(this,b,a[b]);this.hasimportedevents=!0}},setstate:function(a,b){var c=math.floor(this.plotx),d=this.ploty,e=this.series,h=e.options.states[a]||{},l=f[e.type].marker&&e.options.marker,m=l&&!1===l.enabled,n=l&&l.states&&l.states[a]||{},p=!1===n.enabled,g=e.statemarkergraphic,q=this.marker||{},u=e.chart,y=e.halo,z,f=l&&e.markerattribs;a=a||"";if(!(a===this.state&&!b||this.selected&&"select"!==a||!1===h.enabled||a&&(p||m&&!1===n.enabled)||a&&q.states&& q.states[a]&&!1===q.states[a].enabled)){f&&(z=e.markerattribs(this,a));if(this.graphic)this.state&&this.graphic.removeclass("highcharts-point-"+this.state),a&&this.graphic.addclass("highcharts-point-"+a),this.graphic.attr(e.pointattribs(this,a)),z&&this.graphic.animate(z,t(u.options.chart.animation,n.animation,l.animation)),g&&g.hide();else{if(a&&n){l=q.symbol||e.symbol;g&&g.currentsymbol!==l&&(g=g.destroy());if(g)g[b?"animate":"attr"]({x:z.x,y:z.y});else l&&(e.statemarkergraphic=g=u.renderer.symbol(l, z.x,z.y,z.width,z.height).add(e.markergroup),g.currentsymbol=l);g&&g.attr(e.pointattribs(this,a))}g&&(g[a&&u.isinsideplot(c,d,u.inverted)?"show":"hide"](),g.element.point=this)}(c=h.halo)&&c.size?(y||(e.halo=y=u.renderer.path().add(f?e.markergroup:e.group)),y[b?"animate":"attr"]({d:this.halopath(c.size)}),y.attr({"class":"highcharts-halo highcharts-color-"+t(this.colorindex,e.colorindex)}),y.point=this,y.attr(v({fill:this.color||e.color,"fill-opacity":c.opacity,zindex:-1},c.attributes))):y&&y.point&& y.point.halopath&&y.animate({d:y.point.halopath(0)});this.state=a}},halopath:function(a){return this.series.chart.renderer.symbols.circle(math.floor(this.plotx)-a,this.ploty-a,2*a,2*a)}});v(b.prototype,{onmouseover:function(){var a=this.chart,b=a.hoverseries;if(b&&b!==this)b.onmouseout();this.options.events.mouseover&&l(this,"mouseover");this.setstate("hover");a.hoverseries=this},onmouseout:function(){var a=this.options,b=this.chart,c=b.tooltip,d=b.hoverpoint;b.hoverseries=null;if(d)d.onmouseout(); this&&a.events.mouseout&&l(this,"mouseout");!c||a.stickytracking||c.shared&&!this.nosharedtooltip||c.hide();this.setstate()},setstate:function(a){var b=this,c=b.options,d=b.graph,f=c.states,h=c.linewidth,c=0;a=a||"";if(b.state!==a&&(p([b.group,b.markergroup],function(c){c&&(b.state&&c.removeclass("highcharts-series-"+b.state),a&&c.addclass("highcharts-series-"+a))}),b.state=a,!f[a]||!1!==f[a].enabled)&&(a&&(h=f[a].linewidth||h+(f[a].linewidthplus||0)),d&&!d.dashstyle))for(f={"stroke-width":h},d.attr(f);b["zone-graph-"+ c];)b["zone-graph-"+c].attr(f),c+=1},setvisible:function(a,b){var c=this,d=c.chart,e=c.legenditem,f,h=d.options.chart.ignorehiddenseries,m=c.visible;f=(c.visible=a=c.options.visible=c.useroptions.visible=void 0===a?!m:a)?"show":"hide";p(["group","datalabelsgroup","markergroup","tracker","tt"],function(a){if(c[a])c[a][f]()});if(d.hoverseries===c||(d.hoverpoint&&d.hoverpoint.series)===c)c.onmouseout();e&&d.legend.colorizeitem(c,a);c.isdirty=!0;c.options.stacking&&p(d.series,function(a){a.options.stacking&& a.visible&&(a.isdirty=!0)});p(c.linkedseries,function(b){b.setvisible(a,!1)});h&&(d.isdirtybox=!0);!1!==b&&d.redraw();l(c,f)},show:function(){this.setvisible(!0)},hide:function(){this.setvisible(!1)},select:function(a){this.selected=a=void 0===a?!this.selected:a;this.checkbox&&(this.checkbox.checked=a);l(this,a?"select":"unselect")},drawtracker:a.drawtrackergraph})})(l);(function(a){var d=a.chart,c=a.each,g=a.inarray,i=a.isobject,h=a.pick,f=a.splat;d.prototype.setresponsive=function(a){var f=this.options.responsive; f&&f.rules&&c(f.rules,function(f){this.matchresponsiverule(f,a)},this)};d.prototype.matchresponsiverule=function(f,v){var l=this.resprules,p=f.condition,d;d=p.callback||function(){return this.chartwidth<=h(p.maxwidth,number.max_value)&&this.chartheight<=h(p.maxheight,number.max_value)&&this.chartwidth>=h(p.minwidth,0)&&this.chartheight>=h(p.minheight,0)};void 0===f._id&&(f._id=a.uniquekey());d=d.call(this);!l[f._id]&&d?f.chartoptions&&(l[f._id]=this.currentoptions(f.chartoptions),this.update(f.chartoptions, v)):l[f._id]&&!d&&(this.update(l[f._id],v),delete l[f._id])};d.prototype.currentoptions=function(a){function h(a,d,c){var l,p;for(l in a)if(-1