UNPKG

highcharts

Version:
105 lines (103 loc) 197 kB
/* Highmaps JS v5.0.13 (2017-07-27) (c) 2011-2016 Torstein Honsi License: www.highcharts.com/license */ (function(H,T){"object"===typeof module&&module.exports?module.exports=H.document?T(H):T:H.Highcharts=T(H)})("undefined"!==typeof window?window:this,function(H){H=function(){var a=window,w=a.document,B=a.navigator&&a.navigator.userAgent||"",A=w&&w.createElementNS&&!!w.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,v=/(edge|msie|trident)/i.test(B)&&!window.opera,d=!A,g=/Firefox/.test(B),m=g&&4>parseInt(B.split("Firefox/")[1],10);return a.Highcharts?a.Highcharts.error(16,!0):{product:"Highmaps", version:"5.0.13",deg2rad:2*Math.PI/360,doc:w,hasBidiBug:m,hasTouch:w&&void 0!==w.documentElement.ontouchstart,isMS:v,isWebKit:/AppleWebKit/.test(B),isFirefox:g,isTouchDevice:/(Mobile|Android|Windows Phone)/.test(B),SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:A,vml:d,win:a,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[]}}();(function(a){var w=[],B=a.charts,A=a.doc,v=a.win;a.error=function(d,g){d=a.isNumber(d)?"Highcharts error #"+ d+": www.highcharts.com/errors/"+d:d;if(g)throw Error(d);v.console&&console.log(d)};a.Fx=function(a,g,m){this.options=g;this.elem=a;this.prop=m};a.Fx.prototype={dSetter:function(){var a=this.paths[0],g=this.paths[1],m=[],t=this.now,p=a.length,k;if(1===t)m=this.toD;else if(p===g.length&&1>t)for(;p--;)k=parseFloat(a[p]),m[p]=isNaN(k)?a[p]:t*parseFloat(g[p]-k)+k;else m=g;this.elem.attr("d",m,null,!0)},update:function(){var a=this.elem,g=this.prop,m=this.now,t=this.options.step;if(this[g+"Setter"])this[g+ "Setter"]();else a.attr?a.element&&a.attr(g,m,null,!0):a.style[g]=m+this.unit;t&&t.call(a,m,this)},run:function(a,g,m){var d=this,p=function(a){return p.stopped?!1:d.step(a)},k;this.startTime=+new Date;this.start=a;this.end=g;this.unit=m;this.now=this.start;this.pos=0;p.elem=this.elem;p.prop=this.prop;p()&&1===w.push(p)&&(p.timerId=setInterval(function(){for(k=0;k<w.length;k++)w[k]()||w.splice(k--,1);w.length||clearInterval(p.timerId)},13))},step:function(d){var g=+new Date,m,t=this.options,p=this.elem, k=t.complete,f=t.duration,q=t.curAnim;p.attr&&!p.element?d=!1:d||g>=f+this.startTime?(this.now=this.end,this.pos=1,this.update(),m=q[this.prop]=!0,a.objectEach(q,function(a){!0!==a&&(m=!1)}),m&&k&&k.call(p),d=!1):(this.pos=t.easing((g-this.startTime)/f),this.now=this.start+(this.end-this.start)*this.pos,this.update(),d=!0);return d},initPath:function(d,g,m){function t(a){var b,e;for(n=a.length;n--;)b="M"===a[n]||"L"===a[n],e=/[a-zA-Z]/.test(a[n+3]),b&&e&&a.splice(n+1,0,a[n+1],a[n+2],a[n+1],a[n+2])} function p(a,e){for(;a.length<l;){a[0]=e[l-a.length];var c=a.slice(0,b);[].splice.apply(a,[0,0].concat(c));F&&(c=a.slice(a.length-b),[].splice.apply(a,[a.length,0].concat(c)),n--)}a[0]="M"}function k(a,n){for(var k=(l-a.length)/b;0<k&&k--;)e=a.slice().splice(a.length/G-b,b*G),e[0]=n[l-b-k*b],c&&(e[b-6]=e[b-2],e[b-5]=e[b-1]),[].splice.apply(a,[a.length/G,0].concat(e)),F&&k--}g=g||"";var f,q=d.startX,u=d.endX,c=-1<g.indexOf("C"),b=c?7:3,l,e,n;g=g.split(" ");m=m.slice();var F=d.isArea,G=F?2:1,E;c&&(t(g), t(m));if(q&&u){for(n=0;n<q.length;n++)if(q[n]===u[0]){f=n;break}else if(q[0]===u[u.length-q.length+n]){f=n;E=!0;break}void 0===f&&(g=[])}g.length&&a.isNumber(f)&&(l=m.length+f*G*b,E?(p(g,m),k(m,g)):(p(m,g),k(g,m)));return[g,m]}};a.Fx.prototype.fillSetter=a.Fx.prototype.strokeSetter=function(){this.elem.attr(this.prop,a.color(this.start).tweenTo(a.color(this.end),this.pos),null,!0)};a.extend=function(a,g){var d;a||(a={});for(d in g)a[d]=g[d];return a};a.merge=function(){var d,g=arguments,m,t={},p= function(k,f){"object"!==typeof k&&(k={});a.objectEach(f,function(g,d){!a.isObject(g,!0)||a.isClass(g)||a.isDOMElement(g)?k[d]=f[d]:k[d]=p(k[d]||{},g)});return k};!0===g[0]&&(t=g[1],g=Array.prototype.slice.call(g,2));m=g.length;for(d=0;d<m;d++)t=p(t,g[d]);return t};a.pInt=function(a,g){return parseInt(a,g||10)};a.isString=function(a){return"string"===typeof a};a.isArray=function(a){a=Object.prototype.toString.call(a);return"[object Array]"===a||"[object Array Iterator]"===a};a.isObject=function(d, g){return!!d&&"object"===typeof d&&(!g||!a.isArray(d))};a.isDOMElement=function(d){return a.isObject(d)&&"number"===typeof d.nodeType};a.isClass=function(d){var g=d&&d.constructor;return!(!a.isObject(d,!0)||a.isDOMElement(d)||!g||!g.name||"Object"===g.name)};a.isNumber=function(a){return"number"===typeof a&&!isNaN(a)};a.erase=function(a,g){for(var d=a.length;d--;)if(a[d]===g){a.splice(d,1);break}};a.defined=function(a){return void 0!==a&&null!==a};a.attr=function(d,g,m){var t;a.isString(g)?a.defined(m)? d.setAttribute(g,m):d&&d.getAttribute&&(t=d.getAttribute(g)):a.defined(g)&&a.isObject(g)&&a.objectEach(g,function(a,k){d.setAttribute(k,a)});return t};a.splat=function(d){return a.isArray(d)?d:[d]};a.syncTimeout=function(a,g,m){if(g)return setTimeout(a,g,m);a.call(0,m)};a.pick=function(){var a=arguments,g,m,t=a.length;for(g=0;g<t;g++)if(m=a[g],void 0!==m&&null!==m)return m};a.css=function(d,g){a.isMS&&!a.svg&&g&&void 0!==g.opacity&&(g.filter="alpha(opacity\x3d"+100*g.opacity+")");a.extend(d.style, g)};a.createElement=function(d,g,m,t,p){d=A.createElement(d);var k=a.css;g&&a.extend(d,g);p&&k(d,{padding:0,border:"none",margin:0});m&&k(d,m);t&&t.appendChild(d);return d};a.extendClass=function(d,g){var m=function(){};m.prototype=new d;a.extend(m.prototype,g);return m};a.pad=function(a,g,m){return Array((g||2)+1-String(a).length).join(m||0)+a};a.relativeLength=function(a,g,m){return/%$/.test(a)?g*parseFloat(a)/100+(m||0):parseFloat(a)};a.wrap=function(a,g,m){var d=a[g];a[g]=function(){var a=Array.prototype.slice.call(arguments), k=arguments,f=this;f.proceed=function(){d.apply(f,arguments.length?arguments:k)};a.unshift(d);a=m.apply(this,a);f.proceed=null;return a}};a.getTZOffset=function(d){var g=a.Date;return 6E4*(g.hcGetTimezoneOffset&&g.hcGetTimezoneOffset(d)||g.hcTimezoneOffset||0)};a.dateFormat=function(d,g,m){if(!a.defined(g)||isNaN(g))return a.defaultOptions.lang.invalidDate||"";d=a.pick(d,"%Y-%m-%d %H:%M:%S");var t=a.Date,p=new t(g-a.getTZOffset(g)),k=p[t.hcGetHours](),f=p[t.hcGetDay](),q=p[t.hcGetDate](),u=p[t.hcGetMonth](), c=p[t.hcGetFullYear](),b=a.defaultOptions.lang,l=b.weekdays,e=b.shortWeekdays,n=a.pad,t=a.extend({a:e?e[f]:l[f].substr(0,3),A:l[f],d:n(q),e:n(q,2," "),w:f,b:b.shortMonths[u],B:b.months[u],m:n(u+1),y:c.toString().substr(2,2),Y:c,H:n(k),k:k,I:n(k%12||12),l:k%12||12,M:n(p[t.hcGetMinutes]()),p:12>k?"AM":"PM",P:12>k?"am":"pm",S:n(p.getSeconds()),L:n(Math.round(g%1E3),3)},a.dateFormats);a.objectEach(t,function(a,b){for(;-1!==d.indexOf("%"+b);)d=d.replace("%"+b,"function"===typeof a?a(g):a)});return m?d.substr(0, 1).toUpperCase()+d.substr(1):d};a.formatSingle=function(d,g){var m=/\.([0-9])/,t=a.defaultOptions.lang;/f$/.test(d)?(m=(m=d.match(m))?m[1]:-1,null!==g&&(g=a.numberFormat(g,m,t.decimalPoint,-1<d.indexOf(",")?t.thousandsSep:""))):g=a.dateFormat(d,g);return g};a.format=function(d,g){for(var m="{",t=!1,p,k,f,q,u=[],c;d;){m=d.indexOf(m);if(-1===m)break;p=d.slice(0,m);if(t){p=p.split(":");k=p.shift().split(".");q=k.length;c=g;for(f=0;f<q;f++)c=c[k[f]];p.length&&(c=a.formatSingle(p.join(":"),c));u.push(c)}else u.push(p); d=d.slice(m+1);m=(t=!t)?"}":"{"}u.push(d);return u.join("")};a.getMagnitude=function(a){return Math.pow(10,Math.floor(Math.log(a)/Math.LN10))};a.normalizeTickInterval=function(d,g,m,t,p){var k,f=d;m=a.pick(m,1);k=d/m;g||(g=p?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===t&&(1===m?g=a.grep(g,function(a){return 0===a%1}):.1>=m&&(g=[1/m])));for(t=0;t<g.length&&!(f=g[t],p&&f*m>=d||!p&&k<=(g[t]+(g[t+1]||g[t]))/2);t++);return f=a.correctFloat(f*m,-Math.round(Math.log(.001)/Math.LN10))};a.stableSort= function(a,g){var m=a.length,d,p;for(p=0;p<m;p++)a[p].safeI=p;a.sort(function(a,f){d=g(a,f);return 0===d?a.safeI-f.safeI:d});for(p=0;p<m;p++)delete a[p].safeI};a.arrayMin=function(a){for(var g=a.length,m=a[0];g--;)a[g]<m&&(m=a[g]);return m};a.arrayMax=function(a){for(var g=a.length,m=a[0];g--;)a[g]>m&&(m=a[g]);return m};a.destroyObjectProperties=function(d,g){a.objectEach(d,function(a,t){a&&a!==g&&a.destroy&&a.destroy();delete d[t]})};a.discardElement=function(d){var g=a.garbageBin;g||(g=a.createElement("div")); d&&g.appendChild(d);g.innerHTML=""};a.correctFloat=function(a,g){return parseFloat(a.toPrecision(g||14))};a.setAnimation=function(d,g){g.renderer.globalAnimation=a.pick(d,g.options.chart.animation,!0)};a.animObject=function(d){return a.isObject(d)?a.merge(d):{duration:d?500:0}};a.timeUnits={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5,month:24192E5,year:314496E5};a.numberFormat=function(d,g,m,t){d=+d||0;g=+g;var p=a.defaultOptions.lang,k=(d.toString().split(".")[1]||"").split("e")[0].length, f,q,u=d.toString().split("e");-1===g?g=Math.min(k,20):a.isNumber(g)||(g=2);q=(Math.abs(u[1]?u[0]:d)+Math.pow(10,-Math.max(g,k)-1)).toFixed(g);k=String(a.pInt(q));f=3<k.length?k.length%3:0;m=a.pick(m,p.decimalPoint);t=a.pick(t,p.thousandsSep);d=(0>d?"-":"")+(f?k.substr(0,f)+t:"");d+=k.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+t);g&&(d+=m+q.slice(-g));u[1]&&(d+="e"+u[1]);return d};Math.easeInOutSine=function(a){return-.5*(Math.cos(Math.PI*a)-1)};a.getStyle=function(d,g,m){if("width"===g)return Math.min(d.offsetWidth, d.scrollWidth)-a.getStyle(d,"padding-left")-a.getStyle(d,"padding-right");if("height"===g)return Math.min(d.offsetHeight,d.scrollHeight)-a.getStyle(d,"padding-top")-a.getStyle(d,"padding-bottom");if(d=v.getComputedStyle(d,void 0))d=d.getPropertyValue(g),a.pick(m,!0)&&(d=a.pInt(d));return d};a.inArray=function(a,g){return g.indexOf?g.indexOf(a):[].indexOf.call(g,a)};a.grep=function(a,g){return[].filter.call(a,g)};a.find=function(a,g){return[].find.call(a,g)};a.map=function(a,g){for(var m=[],d=0,p= a.length;d<p;d++)m[d]=g.call(a[d],a[d],d,a);return m};a.offset=function(a){var g=A.documentElement;a=a.getBoundingClientRect();return{top:a.top+(v.pageYOffset||g.scrollTop)-(g.clientTop||0),left:a.left+(v.pageXOffset||g.scrollLeft)-(g.clientLeft||0)}};a.stop=function(a,g){for(var m=w.length;m--;)w[m].elem!==a||g&&g!==w[m].prop||(w[m].stopped=!0)};a.each=function(a,g,m){return Array.prototype.forEach.call(a,g,m)};a.objectEach=function(a,g,m){for(var d in a)a.hasOwnProperty(d)&&g.call(m,a[d],d,a)}; a.addEvent=function(d,g,m){function t(a){a.target=a.srcElement||v;m.call(d,a)}var p=d.hcEvents=d.hcEvents||{};d.addEventListener?d.addEventListener(g,m,!1):d.attachEvent&&(d.hcEventsIE||(d.hcEventsIE={}),m.hcGetKey||(m.hcGetKey=a.uniqueKey()),d.hcEventsIE[m.hcGetKey]=t,d.attachEvent("on"+g,t));p[g]||(p[g]=[]);p[g].push(m);return function(){a.removeEvent(d,g,m)}};a.removeEvent=function(d,g,m){function t(a,c){d.removeEventListener?d.removeEventListener(a,c,!1):d.attachEvent&&(c=d.hcEventsIE[c.hcGetKey], d.detachEvent("on"+a,c))}function p(){var k,c;d.nodeName&&(g?(k={},k[g]=!0):k=f,a.objectEach(k,function(a,l){if(f[l])for(c=f[l].length;c--;)t(l,f[l][c])}))}var k,f=d.hcEvents,q;f&&(g?(k=f[g]||[],m?(q=a.inArray(m,k),-1<q&&(k.splice(q,1),f[g]=k),t(g,m)):(p(),f[g]=[])):(p(),d.hcEvents={}))};a.fireEvent=function(d,g,m,t){var p;p=d.hcEvents;var k,f;m=m||{};if(A.createEvent&&(d.dispatchEvent||d.fireEvent))p=A.createEvent("Events"),p.initEvent(g,!0,!0),a.extend(p,m),d.dispatchEvent?d.dispatchEvent(p):d.fireEvent(g, p);else if(p)for(p=p[g]||[],k=p.length,m.target||a.extend(m,{preventDefault:function(){m.defaultPrevented=!0},target:d,type:g}),g=0;g<k;g++)(f=p[g])&&!1===f.call(d,m)&&m.preventDefault();t&&!m.defaultPrevented&&t(m)};a.animate=function(d,g,m){var t,p="",k,f,q;a.isObject(m)||(q=arguments,m={duration:q[2],easing:q[3],complete:q[4]});a.isNumber(m.duration)||(m.duration=400);m.easing="function"===typeof m.easing?m.easing:Math[m.easing]||Math.easeInOutSine;m.curAnim=a.merge(g);a.objectEach(g,function(q, c){a.stop(d,c);f=new a.Fx(d,m,c);k=null;"d"===c?(f.paths=f.initPath(d,d.d,g.d),f.toD=g.d,t=0,k=1):d.attr?t=d.attr(c):(t=parseFloat(a.getStyle(d,c))||0,"opacity"!==c&&(p="px"));k||(k=q);k&&k.match&&k.match("px")&&(k=k.replace(/px/g,""));f.run(t,k,p)})};a.seriesType=function(d,g,m,t,p){var k=a.getOptions(),f=a.seriesTypes;k.plotOptions[d]=a.merge(k.plotOptions[g],m);f[d]=a.extendClass(f[g]||function(){},t);f[d].prototype.type=d;p&&(f[d].prototype.pointClass=a.extendClass(a.Point,p));return f[d]};a.uniqueKey= function(){var a=Math.random().toString(36).substring(2,9),g=0;return function(){return"highcharts-"+a+"-"+g++}}();v.jQuery&&(v.jQuery.fn.highcharts=function(){var d=[].slice.call(arguments);if(this[0])return d[0]?(new (a[a.isString(d[0])?d.shift():"Chart"])(this[0],d[0],d[1]),this):B[a.attr(this[0],"data-highcharts-chart")]});A&&!A.defaultView&&(a.getStyle=function(d,g){var m={width:"clientWidth",height:"clientHeight"}[g];if(d.style[g])return a.pInt(d.style[g]);"opacity"===g&&(g="filter");if(m)return d.style.zoom= 1,Math.max(d[m]-2*a.getStyle(d,"padding"),0);d=d.currentStyle[g.replace(/\-(\w)/g,function(a,g){return g.toUpperCase()})];"filter"===g&&(d=d.replace(/alpha\(opacity=([0-9]+)\)/,function(a,g){return g/100}));return""===d?1:a.pInt(d)});Array.prototype.forEach||(a.each=function(a,g,m){for(var d=0,p=a.length;d<p;d++)if(!1===g.call(m,a[d],d,a))return d});Array.prototype.indexOf||(a.inArray=function(a,g){var m,d=0;if(g)for(m=g.length;d<m;d++)if(g[d]===a)return d;return-1});Array.prototype.filter||(a.grep= function(a,g){for(var m=[],d=0,p=a.length;d<p;d++)g(a[d],d)&&m.push(a[d]);return m});Array.prototype.find||(a.find=function(a,g){var m,d=a.length;for(m=0;m<d;m++)if(g(a[m],m))return a[m]})})(H);(function(a){var w=a.each,B=a.isNumber,A=a.map,v=a.merge,d=a.pInt;a.Color=function(g){if(!(this instanceof a.Color))return new a.Color(g);this.init(g)};a.Color.prototype={parsers:[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(a){return[d(a[1]), d(a[2]),d(a[3]),parseFloat(a[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(a){return[d(a[1]),d(a[2]),d(a[3]),1]}}],names:{none:"rgba(255,255,255,0)",white:"#ffffff",black:"#000000"},init:function(g){var m,d,p,k;if((this.input=g=this.names[g&&g.toLowerCase?g.toLowerCase():""]||g)&&g.stops)this.stops=A(g.stops,function(k){return new a.Color(k[1])});else if(g&&"#"===g.charAt()&&(m=g.length,g=parseInt(g.substr(1),16),7===m?d=[(g&16711680)>>16,(g&65280)>> 8,g&255,1]:4===m&&(d=[(g&3840)>>4|(g&3840)>>8,(g&240)>>4|g&240,(g&15)<<4|g&15,1])),!d)for(p=this.parsers.length;p--&&!d;)k=this.parsers[p],(m=k.regex.exec(g))&&(d=k.parse(m));this.rgba=d||[]},get:function(a){var g=this.input,d=this.rgba,p;this.stops?(p=v(g),p.stops=[].concat(p.stops),w(this.stops,function(k,f){p.stops[f]=[p.stops[f][0],k.get(a)]})):p=d&&B(d[0])?"rgb"===a||!a&&1===d[3]?"rgb("+d[0]+","+d[1]+","+d[2]+")":"a"===a?d[3]:"rgba("+d.join(",")+")":g;return p},brighten:function(a){var g,t=this.rgba; if(this.stops)w(this.stops,function(g){g.brighten(a)});else if(B(a)&&0!==a)for(g=0;3>g;g++)t[g]+=d(255*a),0>t[g]&&(t[g]=0),255<t[g]&&(t[g]=255);return this},setOpacity:function(a){this.rgba[3]=a;return this},tweenTo:function(a,d){var g,m;a.rgba.length?(g=this.rgba,a=a.rgba,m=1!==a[3]||1!==g[3],a=(m?"rgba(":"rgb(")+Math.round(a[0]+(g[0]-a[0])*(1-d))+","+Math.round(a[1]+(g[1]-a[1])*(1-d))+","+Math.round(a[2]+(g[2]-a[2])*(1-d))+(m?","+(a[3]+(g[3]-a[3])*(1-d)):"")+")"):a=a.input||"none";return a}};a.color= function(g){return new a.Color(g)}})(H);(function(a){function w(){var g=a.defaultOptions.global,d=m.moment;if(g.timezone){if(d)return function(a){return-d.tz(a,g.timezone).utcOffset()};a.error(25)}return g.useUTC&&g.getTimezoneOffset}function B(){var d=a.defaultOptions.global,p,k=d.useUTC,f=k?"getUTC":"get",q=k?"setUTC":"set";a.Date=p=d.Date||m.Date;p.hcTimezoneOffset=k&&d.timezoneOffset;p.hcGetTimezoneOffset=w();p.hcMakeTime=function(a,c,b,l,e,n){var f;k?(f=p.UTC.apply(0,arguments),f+=v(f)):f=(new p(a, c,g(b,1),g(l,0),g(e,0),g(n,0))).getTime();return f};A("Minutes Hours Day Date Month FullYear".split(" "),function(a){p["hcGet"+a]=f+a});A("Milliseconds Seconds Minutes Hours Date Month FullYear".split(" "),function(a){p["hcSet"+a]=q+a})}var A=a.each,v=a.getTZOffset,d=a.merge,g=a.pick,m=a.win;a.defaultOptions={symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January February March April May June July August September October November December".split(" "), shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),decimalPoint:".",numericSymbols:"kMGTPE".split(""),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{useUTC:!0},chart:{borderRadius:0,colorCount:10,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}},width:null,height:null}, title:{text:"Chart title",align:"center",margin:15,widthAdjust:-44},subtitle:{text:"",align:"center",widthAdjust:-44},plotOptions:{},labels:{style:{position:"absolute",color:"#333333"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#999999",borderRadius:0,navigation:{},itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},squareSymbol:!0,symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{}},loading:{},tooltip:{enabled:!0, animation:a.svg,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},footerFormat:"",padding:8,snap:a.isTouchDevice?25:10,headerFormat:'\x3cspan class\x3d"highcharts-header"\x3e{point.key}\x3c/span\x3e\x3cbr/\x3e',pointFormat:'\x3cspan class\x3d"highcharts-color-{point.colorIndex}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cspan class\x3d"highcharts-strong"\x3e{point.y}\x3c/span\x3e\x3cbr/\x3e'}, credits:{enabled:!0,href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},text:"Highcharts.com"}};a.setOptions=function(g){a.defaultOptions=d(!0,a.defaultOptions,g);B();return a.defaultOptions};a.getOptions=function(){return a.defaultOptions};a.defaultPlotOptions=a.defaultOptions.plotOptions;B()})(H);(function(a){var w,B,A=a.addEvent,v=a.animate,d=a.attr,g=a.charts,m=a.color,t=a.css,p=a.createElement,k=a.defined,f=a.deg2rad,q=a.destroyObjectProperties,u=a.doc, c=a.each,b=a.extend,l=a.erase,e=a.grep,n=a.hasTouch,F=a.inArray,G=a.isArray,E=a.isFirefox,I=a.isMS,x=a.isObject,L=a.isString,y=a.isWebKit,D=a.merge,C=a.noop,J=a.objectEach,h=a.pick,r=a.pInt,M=a.removeEvent,K=a.splat,N=a.stop,O=a.svg,R=a.SVG_NS,Q=a.symbolSizes,P=a.win;w=a.SVGElement=function(){return this};b(w.prototype,{opacity:1,SVG_NS:R,textProps:"direction fontSize fontWeight fontFamily fontStyle color lineHeight width textAlign textDecoration textOverflow textOutline".split(" "),init:function(a, h){this.element="span"===h?p(h):u.createElementNS(this.SVG_NS,h);this.renderer=a},animate:function(z,b,r){b=a.animObject(h(b,this.renderer.globalAnimation,!0));0!==b.duration?(r&&(b.complete=r),v(this,z,b)):(this.attr(z,null,r),b.step&&b.step.call(this));return this},colorGradient:function(z,h,b){var r=this.renderer,e,l,n,f,g,y,d,q,K,S,m=[],C;z.radialGradient?l="radialGradient":z.linearGradient&&(l="linearGradient");l&&(n=z[l],g=r.gradients,d=z.stops,S=b.radialReference,G(n)&&(z[l]=n={x1:n[0],y1:n[1], x2:n[2],y2:n[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===l&&S&&!k(n.gradientUnits)&&(f=n,n=D(n,r.getRadialAttr(S,f),{gradientUnits:"userSpaceOnUse"})),J(n,function(a,z){"id"!==z&&m.push(z,a)}),J(d,function(a){m.push(a)}),m=m.join(","),g[m]?S=g[m].attr("id"):(n.id=S=a.uniqueKey(),g[m]=y=r.createElement(l).attr(n).add(r.defs),y.radAttr=f,y.stops=[],c(d,function(z){0===z[1].indexOf("rgba")?(e=a.color(z[1]),q=e.get("rgb"),K=e.get("a")):(q=z[1],K=1);z=r.createElement("stop").attr({offset:z[0], "stop-color":q,"stop-opacity":K}).add(y);y.stops.push(z)})),C="url("+r.url+"#"+S+")",b.setAttribute(h,C),b.gradient=m,z.toString=function(){return C})},applyTextOutline:function(z){var h=this.element,b,r,e,n,k;-1!==z.indexOf("contrast")&&(z=z.replace(/contrast/g,this.renderer.getContrast(h.style.fill)));z=z.split(" ");r=z[z.length-1];if((e=z[0])&&"none"!==e&&a.svg){this.fakeTS=!0;z=[].slice.call(h.getElementsByTagName("tspan"));this.ySetter=this.xSetter;e=e.replace(/(^[\d\.]+)(.*?)$/g,function(a, z,h){return 2*z+h});for(k=z.length;k--;)b=z[k],"highcharts-text-outline"===b.getAttribute("class")&&l(z,h.removeChild(b));n=h.firstChild;c(z,function(a,z){0===z&&(a.setAttribute("x",h.getAttribute("x")),z=h.getAttribute("y"),a.setAttribute("y",z||0),null===z&&h.setAttribute("y",0));a=a.cloneNode(1);d(a,{"class":"highcharts-text-outline",fill:r,stroke:r,"stroke-width":e,"stroke-linejoin":"round"});h.insertBefore(a,n)})}},attr:function(a,h,b,r){var z,e=this.element,l,c=this,n,k;"string"===typeof a&& void 0!==h&&(z=a,a={},a[z]=h);"string"===typeof a?c=(this[a+"Getter"]||this._defaultGetter).call(this,a,e):(J(a,function(z,h){n=!1;r||N(this,h);this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)$/.test(h)&&(l||(this.symbolAttr(a),l=!0),n=!0);!this.rotation||"x"!==h&&"y"!==h||(this.doTransform=!0);n||(k=this[h+"Setter"]||this._defaultSetter,k.call(this,z,h,e))},this),this.afterSetters());b&&b();return c},afterSetters:function(){this.doTransform&&(this.updateTransform(),this.doTransform= !1)},addClass:function(a,h){var z=this.attr("class")||"";-1===z.indexOf(a)&&(h||(a=(z+(z?" ":"")+a).replace(" "," ")),this.attr("class",a));return this},hasClass:function(a){return-1!==F(a,(this.attr("class")||"").split(" "))},removeClass:function(a){return this.attr("class",(this.attr("class")||"").replace(a,""))},symbolAttr:function(a){var z=this;c("x y r start end width height innerR anchorX anchorY".split(" "),function(b){z[b]=h(a[b],z[b])});z.attr({d:z.renderer.symbols[z.symbolName](z.x,z.y, z.width,z.height,z)})},clip:function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":"none")},crisp:function(a,h){var z=this,b={},r;h=h||a.strokeWidth||0;r=Math.round(h)%2/2;a.x=Math.floor(a.x||z.x||0)+r;a.y=Math.floor(a.y||z.y||0)+r;a.width=Math.floor((a.width||z.width||0)-2*r);a.height=Math.floor((a.height||z.height||0)-2*r);k(a.strokeWidth)&&(a.strokeWidth=h);J(a,function(a,h){z[h]!==a&&(z[h]=b[h]=a)});return b},css:function(a){var h=this.styles,z={},e=this.element,l,c= "",n,k=!h,f=["textOutline","textOverflow","width"];a&&a.color&&(a.fill=a.color);h&&J(a,function(a,b){a!==h[b]&&(z[b]=a,k=!0)});k&&(h&&(a=b(h,z)),l=this.textWidth=a&&a.width&&"auto"!==a.width&&"text"===e.nodeName.toLowerCase()&&r(a.width),this.styles=a,l&&!O&&this.renderer.forExport&&delete a.width,I&&!O?t(this.element,a):(n=function(a,h){return"-"+h.toLowerCase()},J(a,function(a,h){-1===F(h,f)&&(c+=h.replace(/([A-Z])/g,n)+":"+a+";")}),c&&d(e,"style",c)),this.added&&("text"===this.element.nodeName&& this.renderer.buildText(this),a&&a.textOutline&&this.applyTextOutline(a.textOutline)));return this},getStyle:function(a){return P.getComputedStyle(this.element||this,"").getPropertyValue(a)},strokeWidth:function(){var a=this.getStyle("stroke-width"),h;a.indexOf("px")===a.length-2?a=r(a):(h=u.createElementNS(R,"rect"),d(h,{width:a,"stroke-width":0}),this.element.parentNode.appendChild(h),a=h.getBBox().width,h.parentNode.removeChild(h));return a},on:function(a,h){var z=this,b=z.element;n&&"click"=== a?(b.ontouchstart=function(a){z.touchEventFired=Date.now();a.preventDefault();h.call(b,a)},b.onclick=function(a){(-1===P.navigator.userAgent.indexOf("Android")||1100<Date.now()-(z.touchEventFired||0))&&h.call(b,a)}):b["on"+a]=h;return this},setRadialReference:function(a){var h=this.renderer.gradients[this.element.gradient];this.element.radialReference=a;h&&h.radAttr&&h.animate(this.renderer.getRadialAttr(a,h.radAttr));return this},translate:function(a,h){return this.attr({translateX:a,translateY:h})}, invert:function(a){this.inverted=a;this.updateTransform();return this},updateTransform:function(){var a=this.translateX||0,b=this.translateY||0,r=this.scaleX,e=this.scaleY,l=this.inverted,c=this.rotation,n=this.element;l&&(a+=this.width,b+=this.height);a=["translate("+a+","+b+")"];l?a.push("rotate(90) scale(-1,1)"):c&&a.push("rotate("+c+" "+(n.getAttribute("x")||0)+" "+(n.getAttribute("y")||0)+")");(k(r)||k(e))&&a.push("scale("+h(r,1)+" "+h(e,1)+")");a.length&&n.setAttribute("transform",a.join(" "))}, toFront:function(){var a=this.element;a.parentNode.appendChild(a);return this},align:function(a,b,r){var z,e,c,n,k={};e=this.renderer;c=e.alignedObjects;var f,y;if(a){if(this.alignOptions=a,this.alignByTranslate=b,!r||L(r))this.alignTo=z=r||"renderer",l(c,this),c.push(this),r=null}else a=this.alignOptions,b=this.alignByTranslate,z=this.alignTo;r=h(r,e[z],e);z=a.align;e=a.verticalAlign;c=(r.x||0)+(a.x||0);n=(r.y||0)+(a.y||0);"right"===z?f=1:"center"===z&&(f=2);f&&(c+=(r.width-(a.width||0))/f);k[b? "translateX":"x"]=Math.round(c);"bottom"===e?y=1:"middle"===e&&(y=2);y&&(n+=(r.height-(a.height||0))/y);k[b?"translateY":"y"]=Math.round(n);this[this.placed?"animate":"attr"](k);this.placed=!0;this.alignAttr=k;return this},getBBox:function(a,r){var z,e=this.renderer,l,n=this.element,k=this.styles,y,g=this.textStr,d,D=e.cache,q=e.cacheKeys,K;r=h(r,this.rotation);l=r*f;y=n&&w.prototype.getStyle.call(n,"font-size");void 0!==g&&(K=g.toString(),-1===K.indexOf("\x3c")&&(K=K.replace(/[0-9]/g,"0")),K+=["", r||0,y,k&&k.width,k&&k.textOverflow].join());K&&!a&&(z=D[K]);if(!z){if(n.namespaceURI===this.SVG_NS||e.forExport){try{(d=this.fakeTS&&function(a){c(n.querySelectorAll(".highcharts-text-outline"),function(h){h.style.display=a})})&&d("none"),z=n.getBBox?b({},n.getBBox()):{width:n.offsetWidth,height:n.offsetHeight},d&&d("")}catch(U){}if(!z||0>z.width)z={width:0,height:0}}else z=this.htmlGetBBox();e.isSVG&&(a=z.width,e=z.height,k&&"11px"===k.fontSize&&17===Math.round(e)&&(z.height=e=14),r&&(z.width=Math.abs(e* Math.sin(l))+Math.abs(a*Math.cos(l)),z.height=Math.abs(e*Math.cos(l))+Math.abs(a*Math.sin(l))));if(K&&0<z.height){for(;250<q.length;)delete D[q.shift()];D[K]||q.push(K);D[K]=z}}return z},show:function(a){return this.attr({visibility:a?"inherit":"visible"})},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(a){var h=this;h.animate({opacity:0},{duration:a||150,complete:function(){h.attr({y:-9999})}})},add:function(a){var h=this.renderer,b=this.element,r;a&&(this.parentGroup= a);this.parentInverted=a&&a.inverted;void 0!==this.textStr&&h.buildText(this);this.added=!0;if(!a||a.handleZ||this.zIndex)r=this.zIndexSetter();r||(a?a.element:h.box).appendChild(b);if(this.onAdd)this.onAdd();return this},safeRemoveChild:function(a){var h=a.parentNode;h&&h.removeChild(a)},destroy:function(){var a=this,h=a.element||{},b=a.renderer.isSVG&&"SPAN"===h.nodeName&&a.parentGroup,r=h.ownerSVGElement;h.onclick=h.onmouseout=h.onmouseover=h.onmousemove=h.point=null;N(a);a.clipPath&&r&&(c(r.querySelectorAll("[clip-path]"), function(h){-1<h.getAttribute("clip-path").indexOf(a.clipPath.element.id+")")&&h.removeAttribute("clip-path")}),a.clipPath=a.clipPath.destroy());if(a.stops){for(r=0;r<a.stops.length;r++)a.stops[r]=a.stops[r].destroy();a.stops=null}for(a.safeRemoveChild(h);b&&b.div&&0===b.div.childNodes.length;)h=b.parentGroup,a.safeRemoveChild(b.div),delete b.div,b=h;a.alignTo&&l(a.renderer.alignedObjects,a);J(a,function(h,b){delete a[b]});return null},xGetter:function(a){"circle"===this.element.nodeName&&("x"=== a?a="cx":"y"===a&&(a="cy"));return this._defaultGetter(a)},_defaultGetter:function(a){a=h(this[a],this.element?this.element.getAttribute(a):null,0);/^[\-0-9\.]+$/.test(a)&&(a=parseFloat(a));return a},dSetter:function(a,h,b){a&&a.join&&(a=a.join(" "));/(NaN| {2}|^$)/.test(a)&&(a="M 0 0");this[h]!==a&&(b.setAttribute(h,a),this[h]=a)},alignSetter:function(a){this.element.setAttribute("text-anchor",{left:"start",center:"middle",right:"end"}[a])},opacitySetter:function(a,h,b){this[h]=a;b.setAttribute(h, a)},titleSetter:function(a){var b=this.element.getElementsByTagName("title")[0];b||(b=u.createElementNS(this.SVG_NS,"title"),this.element.appendChild(b));b.firstChild&&b.removeChild(b.firstChild);b.appendChild(u.createTextNode(String(h(a),"").replace(/<[^>]*>/g,"")))},textSetter:function(a){a!==this.textStr&&(delete this.bBox,this.textStr=a,this.added&&this.renderer.buildText(this))},fillSetter:function(a,h,b){"string"===typeof a?b.setAttribute(h,a):a&&this.colorGradient(a,h,b)},visibilitySetter:function(a, h,b){"inherit"===a?b.removeAttribute(h):this[h]!==a&&b.setAttribute(h,a);this[h]=a},zIndexSetter:function(a,h){var b=this.renderer,e=this.parentGroup,c=(e||b).element||b.box,l,n=this.element,z;l=this.added;var f;k(a)&&(n.zIndex=a,a=+a,this[h]===a&&(l=!1),this[h]=a);if(l){(a=this.zIndex)&&e&&(e.handleZ=!0);h=c.childNodes;for(f=0;f<h.length&&!z;f++)e=h[f],l=e.zIndex,e!==n&&(r(l)>a||!k(a)&&k(l)||0>a&&!k(l)&&c!==b.box)&&(c.insertBefore(n,e),z=!0);z||c.appendChild(n)}return z},_defaultSetter:function(a, h,b){b.setAttribute(h,a)}});w.prototype.yGetter=w.prototype.xGetter;w.prototype.translateXSetter=w.prototype.translateYSetter=w.prototype.rotationSetter=w.prototype.verticalAlignSetter=w.prototype.scaleXSetter=w.prototype.scaleYSetter=function(a,h){this[h]=a;this.doTransform=!0};B=a.SVGRenderer=function(){this.init.apply(this,arguments)};b(B.prototype,{Element:w,SVG_NS:R,init:function(a,h,b,r,e,l){var c;r=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"});c=r.element;a.appendChild(c); -1===a.innerHTML.indexOf("xmlns")&&d(c,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=c;this.boxWrapper=r;this.alignedObjects=[];this.url=(E||y)&&u.getElementsByTagName("base").length?P.location.href.replace(/#.*?$/,"").replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(u.createTextNode("Created with Highmaps 5.0.13"));this.defs=this.createElement("defs").add();this.allowHTML=l;this.forExport=e;this.gradients={};this.cache= {};this.cacheKeys=[];this.imgCount=0;this.setSize(h,b,!1);var n;E&&a.getBoundingClientRect&&(h=function(){t(a,{left:0,top:0});n=a.getBoundingClientRect();t(a,{left:Math.ceil(n.left)-n.left+"px",top:Math.ceil(n.top)-n.top+"px"})},h(),this.unSubPixelFix=A(P,"resize",h))},definition:function(a){function h(a,r){var e;c(K(a),function(a){var c=b.createElement(a.tagName),l={};J(a,function(a,h){"tagName"!==h&&"children"!==h&&"textContent"!==h&&(l[h]=a)});c.attr(l);c.add(r||b.defs);a.textContent&&c.element.appendChild(u.createTextNode(a.textContent)); h(a.children||[],c);e=c});return e}var b=this;return h(a)},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var a=this.defs;this.box=null;this.boxWrapper=this.boxWrapper.destroy();q(this.gradients||{});this.gradients=null;a&&(this.defs=a.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=null},createElement:function(a){var h=new this.Element;h.init(this,a);return h},draw:C,getRadialAttr:function(a,h){return{cx:a[0]-a[2]/2+h.cx*a[2],cy:a[1]- a[2]/2+h.cy*a[2],r:h.r*a[2]}},getSpanWidth:function(a,h){var b=a.getBBox(!0).width;!O&&this.forExport&&(b=this.measureSpanWidth(h.firstChild.data,a.styles));return b},applyEllipsis:function(a,h,b,r){var e=a.rotation,c=b,l,n=0,z=b.length,k=function(a){h.removeChild(h.firstChild);a&&h.appendChild(u.createTextNode(a))},f;a.rotation=0;c=this.getSpanWidth(a,h);if(f=c>r){for(;n<=z;)l=Math.ceil((n+z)/2),c=b.substring(0,l)+"\u2026",k(c),c=this.getSpanWidth(a,h),n===z?n=z+1:c>r?z=l-1:n=l;0===z&&k("")}a.rotation= e;return f},buildText:function(a){var b=a.element,l=this,n=l.forExport,k=h(a.textStr,"").toString(),z=-1!==k.indexOf("\x3c"),f=b.childNodes,y,g,K,D,q=d(b,"x"),m=a.styles,C=a.textWidth,x=m&&m.lineHeight,M=m&&m.textOutline,p=m&&"ellipsis"===m.textOverflow,E=m&&"nowrap"===m.whiteSpace,I,F=f.length,N=C&&!a.added&&this.box,G=function(a){return x?r(x):l.fontMetrics(void 0,a.getAttribute("style")?a:b).h},m=[k,p,E,x,M,m&&m.fontSize,C].join();if(m!==a.textCache){for(a.textCache=m;F--;)b.removeChild(f[F]); z||M||p||C||-1!==k.indexOf(" ")?(y=/<.*class="([^"]+)".*>/,g=/<.*style="([^"]+)".*>/,K=/<.*href="([^"]+)".*>/,N&&N.appendChild(b),k=z?k.replace(/<(b|strong)>/g,'\x3cspan class\x3d"highcharts-strong"\x3e').replace(/<(i|em)>/g,'\x3cspan class\x3d"highcharts-emphasized"\x3e').replace(/<a/g,"\x3cspan").replace(/<\/(b|strong|i|em|a)>/g,"\x3c/span\x3e").split(/<br.*?>/g):[k],k=e(k,function(a){return""!==a}),c(k,function(h,r){var e,k=0;h=h.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||\x3cspan").replace(/<\/span>/g, "\x3c/span\x3e|||");e=h.split("|||");c(e,function(h){if(""!==h||1===e.length){var c={},z=u.createElementNS(l.SVG_NS,"tspan"),f,m;y.test(h)&&(f=h.match(y)[1],d(z,"class",f));g.test(h)&&(m=h.match(g)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),d(z,"style",m));K.test(h)&&!n&&(d(z,"onclick",'location.href\x3d"'+h.match(K)[1]+'"'),t(z,{cursor:"pointer"}));h=(h.replace(/<(.|\n)*?>/g,"")||" ").replace(/&lt;/g,"\x3c").replace(/&gt;/g,"\x3e");if(" "!==h){z.appendChild(u.createTextNode(h));k?c.dx=0:r&&null!== q&&(c.x=q);d(z,c);b.appendChild(z);!k&&I&&(!O&&n&&t(z,{display:"block"}),d(z,"dy",G(z)));if(C){c=h.replace(/([^\^])-/g,"$1- ").split(" ");f=1<e.length||r||1<c.length&&!E;var x=[],M,F=G(z),N=a.rotation;for(p&&(D=l.applyEllipsis(a,z,h,C));!p&&f&&(c.length||x.length);)a.rotation=0,M=l.getSpanWidth(a,z),h=M>C,void 0===D&&(D=h),h&&1!==c.length?(z.removeChild(z.firstChild),x.unshift(c.pop())):(c=x,x=[],c.length&&!E&&(z=u.createElementNS(R,"tspan"),d(z,{dy:F,x:q}),m&&d(z,"style",m),b.appendChild(z)),M>C&& (C=M)),c.length&&z.appendChild(u.createTextNode(c.join(" ").replace(/- /g,"-")));a.rotation=N}k++}}});I=I||b.childNodes.length}),D&&a.attr("title",a.textStr),N&&N.removeChild(b),M&&a.applyTextOutline&&a.applyTextOutline(M)):b.appendChild(u.createTextNode(k.replace(/&lt;/g,"\x3c").replace(/&gt;/g,"\x3e")))}},getContrast:function(a){a=m(a).rgba;return 510<a[0]+a[1]+a[2]?"#000000":"#FFFFFF"},button:function(a,h,b,r,e,c,l,n,k){var z=this.label(a,h,b,k,null,null,null,null,"button"),f=0;z.attr(D({padding:8, r:2},e));A(z.element,I?"mouseover":"mouseenter",function(){3!==f&&z.setState(1)});A(z.element,I?"mouseout":"mouseleave",function(){3!==f&&z.setState(f)});z.setState=function(a){1!==a&&(z.state=f=a);z.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+["normal","hover","pressed","disabled"][a||0])};return z.on("click",function(a){3!==f&&r.call(z,a)})},crispLine:function(a,h){a[1]===a[4]&&(a[1]=a[4]=Math.round(a[1])-h%2/2);a[2]===a[5]&&(a[2]=a[5]=Math.round(a[2])+ h%2/2);return a},path:function(a){var h={};G(a)?h.d=a:x(a)&&b(h,a);return this.createElement("path").attr(h)},circle:function(a,h,b){a=x(a)?a:{x:a,y:h,r:b};h=this.createElement("circle");h.xSetter=h.ySetter=function(a,h,b){b.setAttribute("c"+h,a)};return h.attr(a)},arc:function(a,h,b,r,e,c){x(a)?(r=a,h=r.y,b=r.r,a=r.x):r={innerR:r,start:e,end:c};a=this.symbol("arc",a,h,b,b,r);a.r=b;return a},rect:function(a,h,b,r,e,c){e=x(a)?a.r:e;c=this.createElement("rect");a=x(a)?a:void 0===a?{}:{x:a,y:h,width:Math.max(b, 0),height:Math.max(r,0)};e&&(a.r=e);c.rSetter=function(a,h,b){d(b,{rx:a,ry:a})};return c.attr(a)},setSize:function(a,b,r){var e=this.alignedObjects,c=e.length;this.width=a;this.height=b;for(this.boxWrapper.animate({width:a,height:b},{step:function(){this.attr({viewBox:"0 0 "+this.attr("width")+" "+this.attr("height")})},duration:h(r,!0)?void 0:0});c--;)e[c].align()},g:function(a){var h=this.createElement("g");return a?h.attr({"class":"highcharts-"+a}):h},image:function(a,h,r,e,c){var l={preserveAspectRatio:"none"}; 1<arguments.length&&b(l,{x:h,y:r,width:e,height:c});l=this.createElement("image").attr(l);l.element.setAttributeNS?l.element.setAttributeNS("http://www.w3.org/1999/xlink","href",a):l.element.setAttribute("hc-svg-href",a);return l},symbol:function(a,r,e,l,n,f){var z=this,y,K=/^url\((.*?)\)$/,d=K.test(a),m=!d&&(this.symbols[a]?a:"circle"),D=m&&this.symbols[m],q=k(r)&&D&&D.call(this.symbols,Math.round(r),Math.round(e),l,n,f),C,x;D?(y=this.path(q),b(y,{symbolName:m,x:r,y:e,width:l,height:n}),f&&b(y,f)): d&&(C=a.match(K)[1],y=this.image(C),y.imgwidth=h(Q[C]&&Q[C].width,f&&f.width),y.imgheight=h(Q[C]&&Q[C].height,f&&f.height),x=function(){y.attr({width:y.width,height:y.height})},c(["width","height"],function(a){y[a+"Setter"]=function(a,h){var b={},r=this["img"+h],e="width"===h?"translateX":"translateY";this[h]=a;k(r)&&(this.element&&this.element.setAttribute(h,r),this.alignByTranslate||(b[e]=((this[h]||0)-r)/2,this.attr(b)))}}),k(r)&&y.attr({x:r,y:e}),y.isImg=!0,k(y.imgwidth)&&k(y.imgheight)?x():(y.attr({width:0, height:0}),p("img",{onload:function(){var a=g[z.chartIndex];0===this.width&&(t(this,{position:"absolute",top:"-999em"}),u.body.appendChild(this));Q[C]={width:this.width,height:this.height};y.imgwidth=this.width;y.imgheight=this.height;y.element&&x();this.parentNode&&this.parentNode.removeChild(this);z.imgCount--;if(!z.imgCount&&a&&a.onload)a.onload()},src:C}),this.imgCount++));return y},symbols:{circle:function(a,h,b,r){return this.arc(a+b/2,h+r/2,b/2,r/2,{start:0,end:2*Math.PI,open:!1})},square:function(a, h,b,r){return["M",a,h,"L",a+b,h,a+b,h+r,a,h+r,"Z"]},triangle:function(a,h,b,r){return["M",a+b/2,h,"L",a+b,h+r,a,h+r,"Z"]},"triangle-down":function(a,h,b,r){return["M",a,h,"L",a+b,h,a+b/2,h+r,"Z"]},diamond:function(a,h,b,r){return["M",a+b/2,h,"L",a+b,h+r/2,a+b/2,h+r,a,h+r/2,"Z"]},arc:function(a,b,r,e,c){var l=c.start,n=c.r||r,f=c.r||e||r,y=c.end-.001;r=c.innerR;e=h(c.open,.001>Math.abs(c.end-c.start-2*Math.PI));var z=Math.cos(l),g=Math.sin(l),K=Math.cos(y),y=Math.sin(y);c=.001>c.end-l-Math.PI?0:1; n=["M",a+n*z,b+f*g,"A",n,f,0,c,1,a+n*K,b+f*y];k(r)&&n.push(e?"M":"L",a+r*K,b+r*y,"A",r,r,0,c,0,a+r*z,b+r*g);n.push(e?"":"Z");return n},callout:function(a,h,b,r,e){var c=Math.min(e&&e.r||0,b,r),l=c+6,n=e&&e.anchorX;e=e&&e.anchorY;var k;k=["M",a+c,h,"L",a+b-c,h,"C",a+b,h,a+b,h,a+b,h+c,"L",a+b,h+r-c,"C",a+b,h+r,a+b,h+r,a+b-c,h+r,"L",a+c,h+r,"C",a,h+r,a,h+r,a,h+r-c,"L",a,h+c,"C",a,h,a,h,a+c,h];n&&n>b?e>h+l&&e<h+r-l?k.splice(13,3,"L",a+b,e-6,a+b+6,e,a+b,e+6,a+b,h+r-c):k.splice(13,3,"L",a+b,r/2,n,e,a+b, r/2,a+b,h+r-c):n&&0>n?e>h+l&&e<h+r-l?k.splice(33,3,"L",a,e+6,a-6,e,a,e-6,a,h+c):k.splice(33,3,"L",a,r/2,n,e,a,r/2,a,h+c):e&&e>r&&n>a+l&&n<a+b-l?k.splice(23,3,"L",n+6,h+r,n,h+r+6,n-6,h+r,a+c,h+r):e&&0>e&&n>a+l&&n<a+b-l&&k.splice(3,3,"L",n-6,h,n,h-6,n+6,h,b-c,h);return k}},clipRect:function(h,b,r,e){var c=a.uniqueKey(),l=this.createElement("clipPath").attr({id:c}).add(this.defs);h=this.rect(h,b,r,e,0).add(l);h.id=c;h.clipPath=l;h.count=0;return h},text:function(a,h,b,r){var e=!O&&this.forExport,c={}; if(r&&(this.allowHTML||!this.forExport))return this.html(a,h,b);c.x=Math.round(h||0);b&&(c.y=Math.round(b));if(a||0===a)c.text=a;a=this.createElement("text").attr(c);e&&a.css({position:"absolute"});r||(a.xSetter=function(a,h,b){var r=b.getElementsByTagName("tspan"),e,c=b.getAttribute(h),l;for(l=0;l<r.length;l++)e=r[l],e.getAttribute(h)===c&&e.setAttribute(h,a);b.setAttribute(h,a)});return a},fontMetrics:function(a,h){a=h&&w.prototype.getStyle.call(h,"font-size");a=/px/.test(a)?r(a):/em/.test(a)?parseFloat(a)* (h?this.fontMetrics(null,h.parentNode).f:16):12;h=24>a?a+3:Math.round(1.2*a);return{h:h,b:Math.round(.8*h),f:a}},rotCorr:function(a,h,b){var r=a;h&&b&&(r=Math.max(r*Math.cos(h*f),4));return{x:-a/3*Math.sin(h*f),y:r}},label:function(h,r,e,l,n,f,y,g,K){var m=this,d=m.g("button"!==K&&"label"),q=d.text=m.text("",0,0,y).attr({zIndex:1}),C,x,z=0,p=3,R=0,E,u,I,F,N,G={},t,Q=/^url\((.*?)\)$/.test(l),J=Q,L,O,P,v;K&&d.addClass("highcharts-"+K);J=!0;L=function(){return C.strokeWidth()%2/2};O=function(){var a= q.element.style,h={};x=(void 0===E||void 0===u||N)&&k(q.textStr)&&q.getBBox();d.width=(E||x.width||0)+2*p+R;d.height=(u||x.height||0)+2*p;t=p+m.fontMetrics(a&&a.fontSize,q).b;J&&(C||(d.box=C=m.symbols[l]||Q?m.symbol(l):m.rect(),C.addClass(("button"===K?"":"highcharts-label-box")+(K?" highcharts-"+K+"-box":"")),C.add(d),a=L(),h.x=a,h.y=(g?-t:0)+a),h.width=Math.round(d.width),h.height=Math.round(d.height),C.attr(b(h,G)),G={})};P=function(){var a=R+p,h;h=g?0:t;k(E)&&x&&("center"===N||"right"===N)&&(a+= {center:.5,right:1}[N]*(E-x.width));if(a!==q.x||h!==q.y)q.attr("x",a),void 0!==h&&q.attr("y",h);q.x=a;q.y=h};v=function(a,h){C?C.attr(a,h):G[a]=h};d.onAdd=function(){q.add(d);d.attr({text:h||0===h?h:"",x:r,y:e});C&&k(n)&&d.attr({anchorX:n,anchorY:f})};d.widthSetter=function(h){E=a.isNumber(h)?h:null};d.heightSetter=function(a){u=a};d["text-alignSetter"]=function(a){N=a};d.paddingSetter=function(a){k(a)&&a!==p&&(p=d.padding=a,P())};d.paddingLeftSetter=function(a){k(a)&&a!==R&&(R=a,P())};d.alignSetter= function(a){a={left:0,center:.5,right:1}[a];a!==z&&(z=a,x&&d.attr({x:I}))};d.textSetter=function(a){void 0!==a&&q.textSetter(a);O();P()};d["stroke-widthSetter"]=function(a,h){a&&(J=!0);this["stroke-width"]=a;v(h,a)};d.rSetter=function(a,h){v(h,a)};d.anchorXSetter=function(a,h){n=d.anchorX=a;v(h,Math.round(a)-L()-I)};d.anchorYSetter=function(a,h){f=d.anchorY=a;v(h,a-F)};d.xSetter=function(a){d.x=a;z&&(a-=z*((E||x.width)+2*p));I=Math.round(a);d.attr("translateX",I)};d.ySetter=function(a){F=d.y=Math.round(a); d.attr("translateY",F)};var S=d.css;return b(d,{css:function(a){if(a){var h={};a=D(a);c(d.textProps,function(b){void 0!==a[b]&&(h[b]=a[b],delete a[b])});q.css(h)}return S.call(d,a)},getBBox:function(){return{width:x.width+2*p,height:x.height+2*p,x:x.x-p,y:x.y-p}},destroy:function(){M(d.element,"mouseenter");M(d.element,"mouseleave");q&&(q=q.destroy());C&&(C=C.destroy());w.prototype.destroy.call(d);d=m=O=P=v=null}})}});a.Renderer=B})(H);(function(a){var w=a.attr,B=a.createElement,A=a.css,v=a.defined, d=a.each,g=a.extend,m=a.isFirefox,t=a.isMS,p=a.isWebKit,k=a.pInt,f=a.SVGRenderer,q=a.win,u=a.wrap;g(a.SVGElement.prototype,{htmlCss:function(a){var b=this.element;if(b=a&&"SPAN"===b.tagName&&a.width)delete a.width,this.textWidth=b,this.updateTransform();a&&"ellipsis"===a.textOverflow&&(a.whiteSpace="nowrap",a.overflow="hidden");this.styles=g(this.styles,a);A(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,b=this.element,l=this.x||0,e=this.y||0,n=this.textAlign||"left",f={left:0,center:.5,right:1}[n],g=this.styles;A(b,{marginLeft:this.translateX||0,marginTop:this.translateY||0});this.inverted&&d(b.childNodes,function(e){a.invertChild(e,b)});if("SPAN"===b.tagName){var q=this.rotation,m=k(this.textWidth),x=g&&g.whiteSpace,u=[q,n,b.innerHTML,this.textWidth,this.textAlign].join(); u!==this.cTT&&(g=a.fontMetrics(b.style.fontSize).b,v(q)&&this.setSpanRotation(q,f,g),A(b,{width:"",whiteSpace:x||"nowrap"}),b.offsetWidth>m&&/[ \-]/.test(b.textContent||b.innerText)&&A(b,{width:m+"px",display:"block",whiteSpace:x||"normal"}),this.getSpanCorrection(b.offsetWidth,g,f,q,n));A(b,{left:l+(this.xCorr||0)+"px",top:e+(this.yCorr||0)+"px"});p&&(g=b.offsetHeight);this.cTT=u}}else this.alignOnAdd=!0},setSpanRotation:function(a,b,l){var e={},c=t?"-ms-transform":p?"-webkit-transform":m?"MozTransform": q.opera?"-o-transform":"";e[c]=e.transform="rotate("+a+"deg)";e[c+(m?"Origin":"-origin")]=e.transformOrigin=100*b+"% "+l+"px";A(this.element,e)},getSpanCorrection:function(a,b,l){this.xCorr=-a*l;this.yCorr=-b}});g(f.prototype,{html:function(a,b,l){var e=this.createElement("span"),c=e.element,k=e.renderer,f=k.isSVG,q=function(a,b){d(["opacity","visibility"],function(e){u(a,e+"Setter",function(a,e,c,l){a.call(this,e,c,l);b[c]=e})})};e.textSetter=function(a){a!==c.innerHTML&&delete this.bBox;c.innerHTML= this.textStr=a;e.htmlUpdateTransform()};f&&q(e,e.element.style);e.xSetter=e.ySetter=e.alignSetter=e.rotationSetter=function(a,b){"align"===b&&(b="textAlign");e[b]=a;e.htmlUpdateTransform()};e.attr({text:a,x:Math.round(b),y:Math.round(l)}).css({position:"absolute"});c.style.whiteSpace="nowrap";e.css=e.htmlCss;f&&(e.add=function(a){var b,l=k.box.parentNode,n=[];if(this.parentGroup=a){if(b=a.div,!b){for(;a;)n.push(a),a=a.parentGroup;d(n.reverse(),function(a){var c,k=w(a.element,"class");k&&(k={className:k}); b=a.div=a.div||B("div",k,{position:"absolute",left:(a.translateX||0)+"px",top:(a.translateY||0)+"px",display:a.display,opacity:a.opacity,pointerEvents:a.styles&&a.styles.pointerEvents},b||l);c=b.style;g(a,{classSetter:function(a){this.element.setAttribute("class",a);b.className=a},on:function(){n[0].div&&e.on.apply({element:n[0].div},arguments);return a},translateXSetter:function(h,b){c.left=h+"px";a[b]=h;a.doTransform=!0},translateYSetter:function(h,b){c.top=h+"px";a[b]=h;a.doTransform=!0}});q(a, c)})}}else b=l;b.appendChild(c);e.added=!0;e.alignOnAdd&&e.htmlUpdateTransform();return e});return e}})})(H);(function(a){var w=a.correctFloat,B=a.defined,A=a.destroyObjectProperties,v=a.isNumber,d=a.pick,g=a.deg2rad;a.Tick=function(a,d,g,k){this.axis=a;this.pos=d;this.type=g||"";this.isNewLabel=this.isNew=!0;g||k||this.addLabel()};a.Tick.prototype={addLabel:function(){var a=this.axis,g=a.options,p=a.chart,k=a.categories,f=a.names,q=this.pos,u=g.labels,c=a.tickPositions,b=q===c[0],l=q===c[c.length- 1],f=k?d(k[q],f[q],q):q,k=this.label,c=c.info,e;a.isDatetimeAxis&&c&&(e=g.dateTimeLabelFormats[c.higherRanks[q]||c.unitName]);this.isFirst=b;this.isLast=l;g=a.labelFormatter.call({axis:a,chart:p,isFirst:b,isLast:l,dateTimeLabelFormat:e,value:a.isLog?w(a.lin2log(f)):f,pos:q});B(k)?k&&k.attr({text:g}):(this.labelLength=(this.label=k=B(g)&&u.enabled?p.renderer.text(g,0,0,u.useHTML).add(a.labelGroup):null)&&k.getBBox().width,this.rotation=0)},getLabelSize:function(){return this.label?this.label.getBBox()[this.axis.horiz? "height":"width"]:0},handleOverflow:function(a){var m=this.axis,p=a.x,k=m.chart.chartWidth,f=m.chart.spacing,q=d(m.labelLeft,Math.min(m.pos,f[3])),f=d(m.labelRight,Math.max(m.pos+m.len,k-f[1])),u=this.label,c=this.rotation,b={left:0,center:.5,right:1}[m.labelAlign],l=u.getBBox().width,e=m.getSlotWidth(),n=e,F=1,G,E={};if(c)0>c&&p-b*l<q?G=Math.round(p/Math.cos(c*g)-q):0<c&&p+b*l>f&&(G=Math.round((k-p)/Math.cos(c*g)));else if(k=p+(1-b)*l,p-b*l<q?n=a.x+n*(1-b)-q:k>f&&(n=f-a.x+n*b,F=-1),n=Math.min(e, n),n<e&&"center"===m.labelAlign&&(a.x+=F*(e-n-b*(e-Math.min(l,n)))),l>n||m.autoRotation&&(u.styles||{}).width)G=n;G&&(E.width=G,(m.options.labels.style||{}).textOverflow||(E.textOverflow="ellipsis"),u.css(E))},getPosition:function(a,g,d,k){var f=this.axis,q=f.chart,m=k&&q.oldChartHeight||q.chartHeight;return{x:a?f.translate(g+d,null,null,k)+f.transB:f.left+f.offset+(f.opposite?(k&&q.oldChartWidth||q.chartWidth)-f.right-f.left:0),y:a?m-f.bottom+f.offset-(f.opposite?f.height:0):m-f.translate(g+d,null, null,k)-f.transB}},getLabelPosition:function(a,d,p,k,f,q,u,c){var b=this.axis,l=b.transA,e=b.reversed,n=b.staggerLines,m=b.tickRotCorr||{x:0,y:0},G=f.y;B(G)||(G=0===b.side?p.rotation?-8:-p.getBBox().height:2===b.side?m.y+8:Math.cos(p.rotation*g)*(m.y-p.getBBox(!1,0).height/2));a=a+f.x+m.x-(q&&k?q*l*(e?-1:1):0);d=d+G-(q&&!k?q*l*(e?1:-1):0);n&&(p=u/(c||1)%n,b.opposite&&(p=n-p-1),d+=b.labelOffset/n*p);return{x:a,y:Math.round(d)}},getMarkPath:function(a,g,d,k,f,q){return q.crispLine(["M",a,g,"L",a+(f? 0:-d),g+(f?d:0)],k)},renderGridLine:function(a,g,d){var k=this.axis,f=this.gridLine,q={},m=this.pos,c=this.type,b=k.tickmarkOffset,l=k.chart.renderer;f||(c||(q.zIndex=1),a&&(q.opacity=0),this.gridLine=f=l.path().attr(q).addClass("highcharts-"+(c?c+"-":"")+"grid-line").add(k.gridGroup));if(!a&&f&&(a=k.getPlotLinePath(m+b,f.strokeWidth()*d,a,!0)))f[this.isNew?"attr":"animate"]({d:a,opacity:g})},renderMark:function(a,g,d){var k=this.axis,f=k.chart.renderer,q=this.type,m=k.tickSize(q?q+"Tick":"tick"), c=this.mark,b=!c,l=a.x;a=a.y;m&&(k.opposite&&(m[0]=-m[0]),b&&(this.mark=c=f.path().addClass("highcharts-"+(q?q+"-":"")+"tick").add(k.axisGroup)),c[b?"attr":"animate"]({d:this.getMarkPath(l,a,m[0],c.strokeWidth()*d,k.horiz,f),opacity:g}))},renderLabel:function(a,g,p,k){var f=this.axis,q=f.horiz,m=f.options,c=this.label,b=m.labels,l=b.step,e=f.tickmarkOffset,n=!0,F=a.x;a=a.y;c&&v(F)&&(c.xy=a=this.getLabelPosition(F,a,c,q,b,e,k,l),this.isFirst&&!this.isLast&&!d(m.showFirstLabel,1)||this.isLast&&!this.isFirst&& !d(m.showLastLabel,1)?n=!1:!q||f.isRadial||b.step||b.rotation||g||0===p||this.handleOverflow(a),l&&k%l&&(n=!1),n&&v(a.y)?(a.opacity=p,c[this.isNewLabel?"attr":"animate"](a),this.isNewLabel=!1):(c.attr("y",-9999),this.isNewLabel=!0),this.isNew=!1)},render:function(a,g,p){var k=this.axis,f=k.horiz,q=this.getPosition(f,this.pos,k.tickmarkOffset,g),m=q.x,c=q.y,k=f&&m===k.pos+k.len||!f&&c===k.pos?-1:1;p=d(p,1);this.isActive=!0;this.renderGridLine(g,p,k);this.renderMark(q,p,k);this.renderLabel(q,g,p,a)}, destroy:function(){A(this,this.axis)}}})(H);var T=function(a){var w=a.addEvent,B=a.animObject,A=a.arrayMax,v=a.arrayMin,d=a.correctFloat,g=a.defaultOptions,m=a.defined,t=a.deg2rad,p=a.destroyObjectProperties,k=a.each,f=a.extend,q=a.fireEvent,u=a.format,c=a.getMagnitude,b=a.grep,l=a.inArray,e=a.isArray,n=a.isNumber,F=a.isString,G=a.merge,E=a.normalizeTickInterval,I=a.objectEach,x=a.pick,L=a.removeEvent,y=a.splat,D=a.syncTimeout,C=a.Tick,J=function(){this.init.apply(this,arguments)};a.extend(J.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,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"},type:"linear"},defaultYAxisOptions:{endOnTick:!0,tickP