UNPKG

highcharts

Version:
105 lines (103 loc) 292 kB
/* Highmaps JS v8.0.0 (2019-12-10) (c) 2011-2018 Torstein Honsi License: www.highcharts.com/license */ (function(R,M){"object"===typeof module&&module.exports?(M["default"]=M,module.exports=R.document?M(R):M):"function"===typeof define&&define.amd?define("highcharts/highmaps",function(){return M(R)}):(R.Highcharts&&R.Highcharts.error(16,!0),R.Highcharts=M(R))})("undefined"!==typeof window?window:this,function(R){function M(d,f,L,F){d.hasOwnProperty(f)||(d[f]=F.apply(null,L))}var w={};M(w,"parts/Globals.js",[],function(){var d="undefined"!==typeof R?R:"undefined"!==typeof window?window:{},f=d.document, L=d.navigator&&d.navigator.userAgent||"",F=f&&f.createElementNS&&!!f.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,A=/(edge|msie|trident)/i.test(L)&&!d.opera,D=-1!==L.indexOf("Firefox"),x=-1!==L.indexOf("Chrome"),p=D&&4>parseInt(L.split("Firefox/")[1],10);return{product:"Highcharts",version:"8.0.0",deg2rad:2*Math.PI/360,doc:f,hasBidiBug:p,hasTouch:!!d.TouchEvent,isMS:A,isWebKit:-1!==L.indexOf("AppleWebKit"),isFirefox:D,isChrome:x,isSafari:!x&&-1!==L.indexOf("Safari"),isTouchDevice:/(Mobile|Android|Windows Phone)/.test(L), SVG_NS:"http://www.w3.org/2000/svg",chartCount:0,seriesTypes:{},symbolSizes:{},svg:F,win:d,marginNames:["plotTop","marginRight","marginBottom","plotLeft"],noop:function(){},charts:[],dateFormats:{}}});M(w,"parts/Utilities.js",[w["parts/Globals.js"]],function(d){function f(b,a){return parseInt(b,a||10)}function L(b){return"string"===typeof b}function F(b){b=Object.prototype.toString.call(b);return"[object Array]"===b||"[object Array Iterator]"===b}function A(b,a){return!!b&&"object"===typeof b&&(!a|| !F(b))}function D(b){return A(b)&&"number"===typeof b.nodeType}function x(b){var a=b&&b.constructor;return!(!A(b,!0)||D(b)||!a||!a.name||"Object"===a.name)}function p(b){return"number"===typeof b&&!isNaN(b)&&Infinity>b&&-Infinity<b}function H(b){return"undefined"!==typeof b&&null!==b}function u(b,a,c){var g;L(a)?H(c)?b.setAttribute(a,c):b&&b.getAttribute&&((g=b.getAttribute(a))||"class"!==a||(g=b.getAttribute(a+"Name"))):h(a,function(a,c){b.setAttribute(c,a)});return g}function t(b,a){var c;b||(b= {});for(c in a)b[c]=a[c];return b}function y(){for(var b=arguments,a=b.length,c=0;c<a;c++){var e=b[c];if("undefined"!==typeof e&&null!==e)return e}}function k(b,a){var c=function(){};c.prototype=new b;t(c.prototype,a);return c}function n(b,a){return parseFloat(b.toPrecision(a||14))}function E(b,a,c,e){b=+b||0;a=+a;var g=d.defaultOptions.lang,q=(b.toString().split(".")[1]||"").split("e")[0].length,l=b.toString().split("e");if(-1===a)a=Math.min(q,20);else if(!p(a))a=2;else if(a&&l[1]&&0>l[1]){var m= a+ +l[1];0<=m?(l[0]=(+l[0]).toExponential(m).split("e")[0],a=m):(l[0]=l[0].split(".")[0]||0,b=20>a?(l[0]*Math.pow(10,l[1])).toFixed(a):0,l[1]=0)}var B=(Math.abs(l[1]?l[0]:b)+Math.pow(10,-Math.max(a,q)-1)).toFixed(a);q=String(f(B));m=3<q.length?q.length%3:0;c=y(c,g.decimalPoint);e=y(e,g.thousandsSep);b=(0>b?"-":"")+(m?q.substr(0,m)+e:"");b+=q.substr(m).replace(/(\d{3})(?=\d)/g,"$1"+e);a&&(b+=c+B.slice(-a));l[1]&&0!==+b&&(b+="e"+l[1]);return b}function h(b,a,c){for(var g in b)Object.hasOwnProperty.call(b, g)&&a.call(c||b[g],b[g],g,b)}d.timers=[];var e=d.charts,c=d.doc,a=d.win;d.error=function(b,c,e,m){var g=p(b),q=g?"Highcharts error #"+b+": www.highcharts.com/errors/"+b+"/":b.toString(),l=function(){if(c)throw Error(q);a.console&&console.log(q)};if("undefined"!==typeof m){var v="";g&&(q+="?");d.objectEach(m,function(b,a){v+="\n"+a+": "+b;g&&(q+=encodeURI(a)+"="+encodeURI(b))});q+=v}e?d.fireEvent(e,"displayError",{code:b,message:q,params:m},l):l()};d.Fx=function(b,a,c){this.options=a;this.elem=b;this.prop= c};d.Fx.prototype={dSetter:function(){var b=this.paths[0],a=this.paths[1],c=[],e=this.now,d=b.length;if(1===e)c=this.toD;else if(d===a.length&&1>e)for(;d--;){var z=parseFloat(b[d]);c[d]=isNaN(z)||"A"===a[d-4]||"A"===a[d-5]?a[d]:e*parseFloat(""+(a[d]-z))+z}else c=a;this.elem.attr("d",c,null,!0)},update:function(){var b=this.elem,a=this.prop,c=this.now,e=this.options.step;if(this[a+"Setter"])this[a+"Setter"]();else b.attr?b.element&&b.attr(a,c,null,!0):b.style[a]=c+this.unit;e&&e.call(b,c,this)},run:function(b, c,e){var g=this,q=g.options,z=function(b){return z.stopped?!1:g.step(b)},l=a.requestAnimationFrame||function(b){setTimeout(b,13)},v=function(){for(var b=0;b<d.timers.length;b++)d.timers[b]()||d.timers.splice(b--,1);d.timers.length&&l(v)};b!==c||this.elem["forceAnimate:"+this.prop]?(this.startTime=+new Date,this.start=b,this.end=c,this.unit=e,this.now=this.start,this.pos=0,z.elem=this.elem,z.prop=this.prop,z()&&1===d.timers.push(z)&&l(v)):(delete q.curAnim[this.prop],q.complete&&0===Object.keys(q.curAnim).length&& q.complete.call(this.elem))},step:function(b){var a=+new Date,c=this.options,e=this.elem,d=c.complete,z=c.duration,l=c.curAnim;if(e.attr&&!e.element)b=!1;else if(b||a>=z+this.startTime){this.now=this.end;this.pos=1;this.update();var v=l[this.prop]=!0;h(l,function(b){!0!==b&&(v=!1)});v&&d&&d.call(e);b=!1}else this.pos=c.easing((a-this.startTime)/z),this.now=this.start+(this.end-this.start)*this.pos,this.update(),b=!0;return b},initPath:function(b,a,c){function g(b){for(r=b.length;r--;){var a="M"=== b[r]||"L"===b[r];var c=/[a-zA-Z]/.test(b[r+3]);a&&c&&b.splice(r+1,0,b[r+1],b[r+2],b[r+1],b[r+2])}}function e(b,a){for(;b.length<f;){b[0]=a[f-b.length];var c=b.slice(0,h);[].splice.apply(b,[0,0].concat(c));G&&(c=b.slice(b.length-h),[].splice.apply(b,[b.length,0].concat(c)),r--)}b[0]="M"}function q(b,a){for(var c=(f-b.length)/h;0<c&&c--;)k=b.slice().splice(b.length/N-h,h*N),k[0]=a[f-h-c*h],d&&(k[h-6]=k[h-2],k[h-5]=k[h-1]),[].splice.apply(b,[b.length/N,0].concat(k)),G&&c--}a=a||"";var l=b.startX,v=b.endX, d=-1<a.indexOf("C"),h=d?7:3,k,r;a=a.split(" ");c=c.slice();var G=b.isArea,N=G?2:1;d&&(g(a),g(c));if(l&&v){for(r=0;r<l.length;r++)if(l[r]===v[0]){var n=r;break}else if(l[0]===v[v.length-l.length+r]){n=r;var E=!0;break}else if(l[l.length-1]===v[v.length-l.length+r]){n=l.length-r;break}"undefined"===typeof n&&(a=[])}if(a.length&&p(n)){var f=c.length+n*N*h;E?(e(a,c),q(c,a)):(e(c,a),q(a,c))}return[a,c]},fillSetter:function(){d.Fx.prototype.strokeSetter.apply(this,arguments)},strokeSetter:function(){this.elem.attr(this.prop, d.color(this.start).tweenTo(d.color(this.end),this.pos),null,!0)}};d.merge=function(){var b,a=arguments,c={},e=function(b,a){"object"!==typeof b&&(b={});h(a,function(c,g){!A(c,!0)||x(c)||D(c)?b[g]=a[g]:b[g]=e(b[g]||{},c)});return b};!0===a[0]&&(c=a[1],a=Array.prototype.slice.call(a,2));var d=a.length;for(b=0;b<d;b++)c=e(c,a[b]);return c};d.clearTimeout=function(b){H(b)&&clearTimeout(b)};d.css=function(b,a){d.isMS&&!d.svg&&a&&"undefined"!==typeof a.opacity&&(a.filter="alpha(opacity="+100*a.opacity+ ")");t(b.style,a)};d.createElement=function(b,a,e,m,h){b=c.createElement(b);var g=d.css;a&&t(b,a);h&&g(b,{padding:"0",border:"none",margin:"0"});e&&g(b,e);m&&m.appendChild(b);return b};d.datePropsToTimestamps=function(b){h(b,function(a,c){A(a)&&"function"===typeof a.getTime?b[c]=a.getTime():(A(a)||F(a))&&d.datePropsToTimestamps(a)})};d.formatSingle=function(b,a,c){var g=/\.([0-9])/,e=d.defaultOptions.lang,q=c&&c.time||d.time;c=c&&c.numberFormatter||E;/f$/.test(b)?(g=(g=b.match(g))?g[1]:-1,null!== a&&(a=c(a,g,e.decimalPoint,-1<b.indexOf(",")?e.thousandsSep:""))):a=q.dateFormat(b,a);return a};d.format=function(b,a,c){for(var g="{",e=!1,q,l,v,h,k=[],n;b;){g=b.indexOf(g);if(-1===g)break;q=b.slice(0,g);if(e){q=q.split(":");l=q.shift().split(".");h=l.length;n=a;for(v=0;v<h;v++)n&&(n=n[l[v]]);q.length&&(n=d.formatSingle(q.join(":"),n,c));k.push(n)}else k.push(q);b=b.slice(g+1);g=(e=!e)?"}":"{"}k.push(b);return k.join("")};d.getMagnitude=function(b){return Math.pow(10,Math.floor(Math.log(b)/Math.LN10))}; d.normalizeTickInterval=function(b,a,c,e,d){var g=b;c=y(c,1);var l=b/c;a||(a=d?[1,1.2,1.5,2,2.5,3,4,5,6,8,10]:[1,2,2.5,5,10],!1===e&&(1===c?a=a.filter(function(b){return 0===b%1}):.1>=c&&(a=[1/c])));for(e=0;e<a.length&&!(g=a[e],d&&g*c>=b||!d&&l<=(a[e]+(a[e+1]||a[e]))/2);e++);return g=n(g*c,-Math.round(Math.log(.001)/Math.LN10))};d.stableSort=function(b,a){var c=b.length,e,g;for(g=0;g<c;g++)b[g].safeI=g;b.sort(function(b,c){e=a(b,c);return 0===e?b.safeI-c.safeI:e});for(g=0;g<c;g++)delete b[g].safeI}; d.timeUnits={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5,month:24192E5,year:314496E5};Math.easeInOutSine=function(b){return-.5*(Math.cos(Math.PI*b)-1)};d.getStyle=function(b,c,e){if("width"===c)return c=Math.min(b.offsetWidth,b.scrollWidth),e=b.getBoundingClientRect&&b.getBoundingClientRect().width,e<c&&e>=c-1&&(c=Math.floor(e)),Math.max(0,c-d.getStyle(b,"padding-left")-d.getStyle(b,"padding-right"));if("height"===c)return Math.max(0,Math.min(b.offsetHeight,b.scrollHeight)- d.getStyle(b,"padding-top")-d.getStyle(b,"padding-bottom"));a.getComputedStyle||d.error(27,!0);if(b=a.getComputedStyle(b,void 0))b=b.getPropertyValue(c),y(e,"opacity"!==c)&&(b=f(b));return b};d.inArray=function(b,a,c){return a.indexOf(b,c)};d.find=Array.prototype.find?function(b,a){return b.find(a)}:function(b,a){var c,e=b.length;for(c=0;c<e;c++)if(a(b[c],c))return b[c]};d.keys=Object.keys;d.stop=function(b,a){for(var c=d.timers.length;c--;)d.timers[c].elem!==b||a&&a!==d.timers[c].prop||(d.timers[c].stopped= !0)};h({map:"map",each:"forEach",grep:"filter",reduce:"reduce",some:"some"},function(b,a){d[a]=function(a){return Array.prototype[b].apply(a,[].slice.call(arguments,1))}});d.addEvent=function(b,a,c,e){void 0===e&&(e={});var g=b.addEventListener||d.addEventListenerPolyfill;var m="function"===typeof b&&b.prototype?b.prototype.protoEvents=b.prototype.protoEvents||{}:b.hcEvents=b.hcEvents||{};d.Point&&b instanceof d.Point&&b.series&&b.series.chart&&(b.series.chart.runTrackerClick=!0);g&&g.call(b,a,c, !1);m[a]||(m[a]=[]);m[a].push({fn:c,order:"number"===typeof e.order?e.order:Infinity});m[a].sort(function(b,a){return b.order-a.order});return function(){d.removeEvent(b,a,c)}};d.removeEvent=function(b,a,c){function e(a,c){var e=b.removeEventListener||d.removeEventListenerPolyfill;e&&e.call(b,a,c,!1)}function g(c){var g;if(b.nodeName){if(a){var l={};l[a]=!0}else l=c;h(l,function(b,a){if(c[a])for(g=c[a].length;g--;)e(a,c[a][g].fn)})}}var q;["protoEvents","hcEvents"].forEach(function(l,m){var v=(m= m?b:b.prototype)&&m[l];v&&(a?(q=v[a]||[],c?(v[a]=q.filter(function(b){return c!==b.fn}),e(a,c)):(g(v),v[a]=[])):(g(v),m[l]={}))})};d.fireEvent=function(b,a,e,m){var g;e=e||{};if(c.createEvent&&(b.dispatchEvent||b.fireEvent)){var q=c.createEvent("Events");q.initEvent(a,!0,!0);t(q,e);b.dispatchEvent?b.dispatchEvent(q):b.fireEvent(a,q)}else e.target||t(e,{preventDefault:function(){e.defaultPrevented=!0},target:b,type:a}),function(a,c){void 0===a&&(a=[]);void 0===c&&(c=[]);var l=0,m=0,q=a.length+c.length; for(g=0;g<q;g++)!1===(a[l]?c[m]?a[l].order<=c[m].order?a[l++]:c[m++]:a[l++]:c[m++]).fn.call(b,e)&&e.preventDefault()}(b.protoEvents&&b.protoEvents[a],b.hcEvents&&b.hcEvents[a]);m&&!e.defaultPrevented&&m.call(b,e)};d.animate=function(a,c,e){var b,g="",q,l;if(!A(e)){var v=arguments;e={duration:v[2],easing:v[3],complete:v[4]}}p(e.duration)||(e.duration=400);e.easing="function"===typeof e.easing?e.easing:Math[e.easing]||Math.easeInOutSine;e.curAnim=d.merge(c);h(c,function(m,v){d.stop(a,v);l=new d.Fx(a, e,v);q=null;"d"===v?(l.paths=l.initPath(a,a.d,c.d),l.toD=c.d,b=0,q=1):a.attr?b=a.attr(v):(b=parseFloat(d.getStyle(a,v))||0,"opacity"!==v&&(g="px"));q||(q=m);q&&q.match&&q.match("px")&&(q=q.replace(/px/g,""));l.run(b,q,g)})};d.seriesType=function(a,c,e,m,h){var b=d.getOptions(),g=d.seriesTypes;b.plotOptions[a]=d.merge(b.plotOptions[c],e);g[a]=k(g[c]||function(){},m);g[a].prototype.type=a;h&&(g[a].prototype.pointClass=k(d.Point,h));return g[a]};d.uniqueKey=function(){var a=Math.random().toString(36).substring(2, 9),c=0;return function(){return"highcharts-"+a+"-"+c++}}();d.isFunction=function(a){return"function"===typeof a};a.jQuery&&(a.jQuery.fn.highcharts=function(){var a=[].slice.call(arguments);if(this[0])return a[0]?(new (d[L(a[0])?a.shift():"Chart"])(this[0],a[0],a[1]),this):e[u(this[0],"data-highcharts-chart")]});return{animObject:function(a){return A(a)?d.merge(a):{duration:a?500:0}},arrayMax:function(a){for(var b=a.length,c=a[0];b--;)a[b]>c&&(c=a[b]);return c},arrayMin:function(a){for(var b=a.length, c=a[0];b--;)a[b]<c&&(c=a[b]);return c},attr:u,clamp:function(a,c,e){return a>c?a<e?a:e:c},correctFloat:n,defined:H,destroyObjectProperties:function(a,c){h(a,function(b,e){b&&b!==c&&b.destroy&&b.destroy();delete a[e]})},discardElement:function(a){var b=d.garbageBin;b||(b=d.createElement("div"));a&&b.appendChild(a);b.innerHTML=""},erase:function(a,c){for(var b=a.length;b--;)if(a[b]===c){a.splice(b,1);break}},extend:t,extendClass:k,isArray:F,isClass:x,isDOMElement:D,isNumber:p,isObject:A,isString:L, numberFormat:E,objectEach:h,offset:function(b){var e=c.documentElement;b=b.parentElement||b.parentNode?b.getBoundingClientRect():{top:0,left:0};return{top:b.top+(a.pageYOffset||e.scrollTop)-(e.clientTop||0),left:b.left+(a.pageXOffset||e.scrollLeft)-(e.clientLeft||0)}},pad:function(a,c,e){return Array((c||2)+1-String(a).replace("-","").length).join(e||"0")+a},pick:y,pInt:f,relativeLength:function(a,c,e){return/%$/.test(a)?c*parseFloat(a)/100+(e||0):parseFloat(a)},setAnimation:function(a,c){c.renderer.globalAnimation= y(a,c.options.chart.animation,!0)},splat:function(a){return F(a)?a:[a]},syncTimeout:function(a,c,e){if(0<c)return setTimeout(a,c,e);a.call(0,e);return-1},wrap:function(a,c,e){var b=a[c];a[c]=function(){var a=Array.prototype.slice.call(arguments),c=arguments,g=this;g.proceed=function(){b.apply(g,arguments.length?arguments:c)};a.unshift(b);a=e.apply(this,a);g.proceed=null;return a}}}});M(w,"parts/Color.js",[w["parts/Globals.js"],w["parts/Utilities.js"]],function(d,f){var L=f.isNumber,F=f.pInt,A=d.merge; d.Color=function(f){if(!(this instanceof d.Color))return new d.Color(f);this.init(f)};d.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(d){return[F(d[1]),F(d[2]),F(d[3]),parseFloat(d[4],10)]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(d){return[F(d[1]),F(d[2]),F(d[3]),1]}}],names:{white:"#ffffff",black:"#000000"},init:function(f){var x,p;if((this.input=f=this.names[f&& f.toLowerCase?f.toLowerCase():""]||f)&&f.stops)this.stops=f.stops.map(function(f){return new d.Color(f[1])});else{if(f&&f.charAt&&"#"===f.charAt()){var H=f.length;f=parseInt(f.substr(1),16);7===H?x=[(f&16711680)>>16,(f&65280)>>8,f&255,1]:4===H&&(x=[(f&3840)>>4|(f&3840)>>8,(f&240)>>4|f&240,(f&15)<<4|f&15,1])}if(!x)for(p=this.parsers.length;p--&&!x;){var u=this.parsers[p];(H=u.regex.exec(f))&&(x=u.parse(H))}}this.rgba=x||[]},get:function(d){var f=this.input,p=this.rgba;if(this.stops){var H=A(f);H.stops= [].concat(H.stops);this.stops.forEach(function(f,t){H.stops[t]=[H.stops[t][0],f.get(d)]})}else H=p&&L(p[0])?"rgb"===d||!d&&1===p[3]?"rgb("+p[0]+","+p[1]+","+p[2]+")":"a"===d?p[3]:"rgba("+p.join(",")+")":f;return H},brighten:function(d){var f,p=this.rgba;if(this.stops)this.stops.forEach(function(f){f.brighten(d)});else if(L(d)&&0!==d)for(f=0;3>f;f++)p[f]+=F(255*d),0>p[f]&&(p[f]=0),255<p[f]&&(p[f]=255);return this},setOpacity:function(d){this.rgba[3]=d;return this},tweenTo:function(d,f){var p=this.rgba, x=d.rgba;x.length&&p&&p.length?(d=1!==x[3]||1!==p[3],f=(d?"rgba(":"rgb(")+Math.round(x[0]+(p[0]-x[0])*(1-f))+","+Math.round(x[1]+(p[1]-x[1])*(1-f))+","+Math.round(x[2]+(p[2]-x[2])*(1-f))+(d?","+(x[3]+(p[3]-x[3])*(1-f)):"")+")"):f=d.input||"none";return f}};d.color=function(f){return new d.Color(f)}});M(w,"parts/SvgRenderer.js",[w["parts/Globals.js"],w["parts/Utilities.js"]],function(d,f){var L=f.animObject,F=f.attr,A=f.defined,D=f.destroyObjectProperties,x=f.erase,p=f.extend,H=f.isArray,u=f.isNumber, t=f.isObject,y=f.isString,k=f.objectEach,n=f.pick,E=f.pInt,h=f.splat,e=d.addEvent,c=d.animate,a=d.charts,b=d.color,g=d.css,q=d.createElement,m=d.deg2rad,C=d.doc,z=d.hasTouch,l=d.isFirefox,v=d.isMS,B=d.isWebKit,I=d.merge,J=d.noop,r=d.removeEvent,G=d.stop,N=d.svg,U=d.SVG_NS,S=d.symbolSizes,W=d.win;var O=d.SVGElement=function(){return this};p(O.prototype,{opacity:1,SVG_NS:U,textProps:"direction fontSize fontWeight fontFamily fontStyle color lineHeight width textAlign textDecoration textOverflow textOutline cursor".split(" "), init:function(a,b){this.element="span"===b?q(b):C.createElementNS(this.SVG_NS,b);this.renderer=a;d.fireEvent(this,"afterInit")},animate:function(a,b,e){var r=L(n(b,this.renderer.globalAnimation,!0));n(C.hidden,C.msHidden,C.webkitHidden,!1)&&(r.duration=0);0!==r.duration?(e&&(r.complete=e),c(this,a,r)):(this.attr(a,void 0,e),k(a,function(a,b){r.step&&r.step.call(this,a,{prop:b,pos:1})},this));return this},complexColor:function(a,b,c){var e=this.renderer,r,g,l,G,K,m,P,v,q,h,Q,B=[],z;d.fireEvent(this.renderer, "complexColor",{args:arguments},function(){a.radialGradient?g="radialGradient":a.linearGradient&&(g="linearGradient");g&&(l=a[g],K=e.gradients,P=a.stops,h=c.radialReference,H(l)&&(a[g]=l={x1:l[0],y1:l[1],x2:l[2],y2:l[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===g&&h&&!A(l.gradientUnits)&&(G=l,l=I(l,e.getRadialAttr(h,G),{gradientUnits:"userSpaceOnUse"})),k(l,function(a,b){"id"!==b&&B.push(b,a)}),k(P,function(a){B.push(a)}),B=B.join(","),K[B]?Q=K[B].attr("id"):(l.id=Q=d.uniqueKey(),K[B]=m= e.createElement(g).attr(l).add(e.defs),m.radAttr=G,m.stops=[],P.forEach(function(a){0===a[1].indexOf("rgba")?(r=d.color(a[1]),v=r.get("rgb"),q=r.get("a")):(v=a[1],q=1);a=e.createElement("stop").attr({offset:a[0],"stop-color":v,"stop-opacity":q}).add(m);m.stops.push(a)})),z="url("+e.url+"#"+Q+")",c.setAttribute(b,z),c.gradient=B,a.toString=function(){return z})})},applyTextOutline:function(a){var b=this.element,c;-1!==a.indexOf("contrast")&&(a=a.replace(/contrast/g,this.renderer.getContrast(b.style.fill))); a=a.split(" ");var e=a[a.length-1];if((c=a[0])&&"none"!==c&&d.svg){this.fakeTS=!0;a=[].slice.call(b.getElementsByTagName("tspan"));this.ySetter=this.xSetter;c=c.replace(/(^[\d\.]+)(.*?)$/g,function(a,b,c){return 2*b+c});this.removeTextOutline(a);var r=b.firstChild;a.forEach(function(a,g){0===g&&(a.setAttribute("x",b.getAttribute("x")),g=b.getAttribute("y"),a.setAttribute("y",g||0),null===g&&b.setAttribute("y",0));a=a.cloneNode(1);F(a,{"class":"highcharts-text-outline",fill:e,stroke:e,"stroke-width":c, "stroke-linejoin":"round"});b.insertBefore(a,r)})}},removeTextOutline:function(a){for(var b=a.length,c;b--;)c=a[b],"highcharts-text-outline"===c.getAttribute("class")&&x(a,this.element.removeChild(c))},symbolCustomAttribs:"x y width height r start end innerR anchorX anchorY rounded".split(" "),attr:function(a,b,c,e){var r=this.element,g,l=this,m,K,P=this.symbolCustomAttribs;if("string"===typeof a&&"undefined"!==typeof b){var v=a;a={};a[v]=b}"string"===typeof a?l=(this[a+"Getter"]||this._defaultGetter).call(this, a,r):(k(a,function(b,c){m=!1;e||G(this,c);this.symbolName&&-1!==d.inArray(c,P)&&(g||(this.symbolAttr(a),g=!0),m=!0);!this.rotation||"x"!==c&&"y"!==c||(this.doTransform=!0);m||(K=this[c+"Setter"]||this._defaultSetter,K.call(this,b,c,r),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(c)&&this.updateShadows(c,b,K))},this),this.afterSetters());c&&c.call(this);return l},afterSetters:function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)},updateShadows:function(a, b,c){for(var e=this.shadows,r=e.length;r--;)c.call(e[r],"height"===a?Math.max(b-(e[r].cutHeight||0),0):"d"===a?this.d:b,a,e[r])},addClass:function(a,b){var c=b?"":this.attr("class")||"";a=(a||"").split(/ /g).reduce(function(a,b){-1===c.indexOf(b)&&a.push(b);return a},c?[c]:[]).join(" ");a!==c&&this.attr("class",a);return this},hasClass:function(a){return-1!==(this.attr("class")||"").split(" ").indexOf(a)},removeClass:function(a){return this.attr("class",(this.attr("class")||"").replace(y(a)?new RegExp(" ?"+ a+" ?"):a,""))},symbolAttr:function(a){var b=this;"x y r start end width height innerR anchorX anchorY clockwise".split(" ").forEach(function(c){b[c]=n(a[c],b[c])});b.attr({d:b.renderer.symbols[b.symbolName](b.x,b.y,b.width,b.height,b)})},clip:function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":"none")},crisp:function(a,b){b=b||a.strokeWidth||0;var c=Math.round(b)%2/2;a.x=Math.floor(a.x||this.x||0)+c;a.y=Math.floor(a.y||this.y||0)+c;a.width=Math.floor((a.width||this.width|| 0)-2*c);a.height=Math.floor((a.height||this.height||0)-2*c);A(a.strokeWidth)&&(a.strokeWidth=b);return a},css:function(a){var b=this.styles,c={},e=this.element,r="",l=!b,G=["textOutline","textOverflow","width"];a&&a.color&&(a.fill=a.color);b&&k(a,function(a,e){a!==b[e]&&(c[e]=a,l=!0)});if(l){b&&(a=p(b,c));if(a)if(null===a.width||"auto"===a.width)delete this.textWidth;else if("text"===e.nodeName.toLowerCase()&&a.width)var m=this.textWidth=E(a.width);this.styles=a;m&&!N&&this.renderer.forExport&&delete a.width; if(e.namespaceURI===this.SVG_NS){var d=function(a,b){return"-"+b.toLowerCase()};k(a,function(a,b){-1===G.indexOf(b)&&(r+=b.replace(/([A-Z])/g,d)+":"+a+";")});r&&F(e,"style",r)}else g(e,a);this.added&&("text"===this.element.nodeName&&this.renderer.buildText(this),a&&a.textOutline&&this.applyTextOutline(a.textOutline))}return this},getStyle:function(a){return W.getComputedStyle(this.element||this,"").getPropertyValue(a)},strokeWidth:function(){if(!this.renderer.styledMode)return this["stroke-width"]|| 0;var a=this.getStyle("stroke-width"),b=0;if(a.indexOf("px")===a.length-2)b=E(a);else if(""!==a){var c=C.createElementNS(U,"rect");F(c,{width:a,"stroke-width":0});this.element.parentNode.appendChild(c);b=c.getBBox().width;c.parentNode.removeChild(c)}return b},on:function(a,b){var c=this,e=c.element;z&&"click"===a?(e.ontouchstart=function(a){c.touchEventFired=Date.now();a.preventDefault();b.call(e,a)},e.onclick=function(a){(-1===W.navigator.userAgent.indexOf("Android")||1100<Date.now()-(c.touchEventFired|| 0))&&b.call(e,a)}):e["on"+a]=b;return this},setRadialReference:function(a){var b=this.renderer.gradients[this.element.gradient];this.element.radialReference=a;b&&b.radAttr&&b.animate(this.renderer.getRadialAttr(a,b.radAttr));return this},translate:function(a,b){return this.attr({translateX:a,translateY:b})},invert:function(a){this.inverted=a;this.updateTransform();return this},updateTransform:function(){var a=this.translateX||0,b=this.translateY||0,c=this.scaleX,e=this.scaleY,r=this.inverted,g=this.rotation, l=this.matrix,G=this.element;r&&(a+=this.width,b+=this.height);a=["translate("+a+","+b+")"];A(l)&&a.push("matrix("+l.join(",")+")");r?a.push("rotate(90) scale(-1,1)"):g&&a.push("rotate("+g+" "+n(this.rotationOriginX,G.getAttribute("x"),0)+" "+n(this.rotationOriginY,G.getAttribute("y")||0)+")");(A(c)||A(e))&&a.push("scale("+n(c,1)+" "+n(e,1)+")");a.length&&G.setAttribute("transform",a.join(" "))},toFront:function(){var a=this.element;a.parentNode.appendChild(a);return this},align:function(a,b,c){var e, r={};var g=this.renderer;var l=g.alignedObjects;var G,m;if(a){if(this.alignOptions=a,this.alignByTranslate=b,!c||y(c))this.alignTo=e=c||"renderer",x(l,this),l.push(this),c=null}else a=this.alignOptions,b=this.alignByTranslate,e=this.alignTo;c=n(c,g[e],g);e=a.align;g=a.verticalAlign;l=(c.x||0)+(a.x||0);var d=(c.y||0)+(a.y||0);"right"===e?G=1:"center"===e&&(G=2);G&&(l+=(c.width-(a.width||0))/G);r[b?"translateX":"x"]=Math.round(l);"bottom"===g?m=1:"middle"===g&&(m=2);m&&(d+=(c.height-(a.height||0))/ m);r[b?"translateY":"y"]=Math.round(d);this[this.placed?"animate":"attr"](r);this.placed=!0;this.alignAttr=r;return this},getBBox:function(a,b){var c,e=this.renderer,r=this.element,g=this.styles,l=this.textStr,G,d=e.cache,v=e.cacheKeys,q=r.namespaceURI===this.SVG_NS;b=n(b,this.rotation,0);var K=e.styledMode?r&&O.prototype.getStyle.call(r,"font-size"):g&&g.fontSize;if(A(l)){var h=l.toString();-1===h.indexOf("<")&&(h=h.replace(/[0-9]/g,"0"));h+=["",b,K,this.textWidth,g&&g.textOverflow].join()}h&&!a&& (c=d[h]);if(!c){if(q||e.forExport){try{(G=this.fakeTS&&function(a){[].forEach.call(r.querySelectorAll(".highcharts-text-outline"),function(b){b.style.display=a})})&&G("none"),c=r.getBBox?p({},r.getBBox()):{width:r.offsetWidth,height:r.offsetHeight},G&&G("")}catch(da){""}if(!c||0>c.width)c={width:0,height:0}}else c=this.htmlGetBBox();e.isSVG&&(a=c.width,e=c.height,q&&(c.height=e={"11px,17":14,"13px,20":16}[g&&g.fontSize+","+Math.round(e)]||e),b&&(g=b*m,c.width=Math.abs(e*Math.sin(g))+Math.abs(a*Math.cos(g)), c.height=Math.abs(e*Math.cos(g))+Math.abs(a*Math.sin(g))));if(h&&0<c.height){for(;250<v.length;)delete d[v.shift()];d[h]||v.push(h);d[h]=c}}return c},show:function(a){return this.attr({visibility:a?"inherit":"visible"})},hide:function(a){a?this.attr({y:-9999}):this.attr({visibility:"hidden"});return this},fadeOut:function(a){var b=this;b.animate({opacity:0},{duration:a||150,complete:function(){b.attr({y:-9999})}})},add:function(a){var b=this.renderer,c=this.element;a&&(this.parentGroup=a);this.parentInverted= a&&a.inverted;"undefined"!==typeof this.textStr&&b.buildText(this);this.added=!0;if(!a||a.handleZ||this.zIndex)var e=this.zIndexSetter();e||(a?a.element:b.box).appendChild(c);if(this.onAdd)this.onAdd();return this},safeRemoveChild:function(a){var b=a.parentNode;b&&b.removeChild(a)},destroy:function(){var a=this,b=a.element||{},c=a.renderer,e=c.isSVG&&"SPAN"===b.nodeName&&a.parentGroup,r=b.ownerSVGElement,g=a.clipPath;b.onclick=b.onmouseout=b.onmouseover=b.onmousemove=b.point=null;G(a);g&&r&&([].forEach.call(r.querySelectorAll("[clip-path],[CLIP-PATH]"), function(a){-1<a.getAttribute("clip-path").indexOf(g.element.id)&&a.removeAttribute("clip-path")}),a.clipPath=g.destroy());if(a.stops){for(r=0;r<a.stops.length;r++)a.stops[r]=a.stops[r].destroy();a.stops=null}a.safeRemoveChild(b);for(c.styledMode||a.destroyShadows();e&&e.div&&0===e.div.childNodes.length;)b=e.parentGroup,a.safeRemoveChild(e.div),delete e.div,e=b;a.alignTo&&x(c.alignedObjects,a);k(a,function(b,c){a[c]&&a[c].parentGroup===a&&a[c].destroy&&a[c].destroy();delete a[c]})},shadow:function(a, b,c){var e=[],r,g=this.element;if(!a)this.destroyShadows();else if(!this.shadows){var l=n(a.width,3);var G=(a.opacity||.15)/l;var m=this.parentInverted?"(-1,-1)":"("+n(a.offsetX,1)+", "+n(a.offsetY,1)+")";for(r=1;r<=l;r++){var d=g.cloneNode(0);var v=2*l+1-2*r;F(d,{stroke:a.color||"#000000","stroke-opacity":G*r,"stroke-width":v,transform:"translate"+m,fill:"none"});d.setAttribute("class",(d.getAttribute("class")||"")+" highcharts-shadow");c&&(F(d,"height",Math.max(F(d,"height")-v,0)),d.cutHeight=v); b?b.element.appendChild(d):g.parentNode&&g.parentNode.insertBefore(d,g);e.push(d)}this.shadows=e}return this},destroyShadows:function(){(this.shadows||[]).forEach(function(a){this.safeRemoveChild(a)},this);this.shadows=void 0},xGetter:function(a){"circle"===this.element.nodeName&&("x"===a?a="cx":"y"===a&&(a="cy"));return this._defaultGetter(a)},_defaultGetter:function(a){a=n(this[a+"Value"],this[a],this.element?this.element.getAttribute(a):null,0);/^[\-0-9\.]+$/.test(a)&&(a=parseFloat(a));return a}, dSetter:function(a,b,c){a&&a.join&&(a=a.join(" "));/(NaN| {2}|^$)/.test(a)&&(a="M 0 0");this[b]!==a&&(c.setAttribute(b,a),this[b]=a)},dashstyleSetter:function(a){var b,c=this["stroke-width"];"inherit"===c&&(c=1);if(a=a&&a.toLowerCase()){a=a.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(",");for(b=a.length;b--;)a[b]=E(a[b])* c;a=a.join(",").replace(/NaN/g,"none");this.element.setAttribute("stroke-dasharray",a)}},alignSetter:function(a){var b={left:"start",center:"middle",right:"end"};b[a]&&(this.alignValue=a,this.element.setAttribute("text-anchor",b[a]))},opacitySetter:function(a,b,c){this[b]=a;c.setAttribute(b,a)},titleSetter:function(a){var b=this.element.getElementsByTagName("title")[0];b||(b=C.createElementNS(this.SVG_NS,"title"),this.element.appendChild(b));b.firstChild&&b.removeChild(b.firstChild);b.appendChild(C.createTextNode(String(n(a, "")).replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">")))},textSetter:function(a){a!==this.textStr&&(delete this.bBox,delete this.textPxLength,this.textStr=a,this.added&&this.renderer.buildText(this))},setTextPath:function(a,b){var c=this.element,e={textAnchor:"text-anchor"},r=!1,g=this.textPathWrapper,l=!g;b=I(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},b);var G=b.attributes;if(a&&b&&b.enabled){g&&null===g.element.parentNode?(l=!0,g=g.destroy()):g&&this.removeTextOutline.call(g.parentGroup, [].slice.call(c.getElementsByTagName("tspan")));this.options&&this.options.padding&&(G.dx=-this.options.padding);g||(this.textPathWrapper=g=this.renderer.createElement("textPath"),r=!0);var m=g.element;(b=a.element.getAttribute("id"))||a.element.setAttribute("id",b=d.uniqueKey());if(l)for(a=c.getElementsByTagName("tspan");a.length;)a[0].setAttribute("y",0),u(G.dx)&&a[0].setAttribute("x",-G.dx),m.appendChild(a[0]);r&&g.add({element:this.text?this.text.element:c});m.setAttributeNS("http://www.w3.org/1999/xlink", "href",this.renderer.url+"#"+b);A(G.dy)&&(m.parentNode.setAttribute("dy",G.dy),delete G.dy);A(G.dx)&&(m.parentNode.setAttribute("dx",G.dx),delete G.dx);k(G,function(a,b){m.setAttribute(e[b]||b,a)});c.removeAttribute("transform");this.removeTextOutline.call(g,[].slice.call(c.getElementsByTagName("tspan")));this.text&&!this.renderer.styledMode&&this.attr({fill:"none","stroke-width":0});this.applyTextOutline=this.updateTransform=J}else g&&(delete this.updateTransform,delete this.applyTextOutline,this.destroyTextPath(c, a),this.updateTransform(),this.options.rotation&&this.applyTextOutline(this.options.style.textOutline));return this},destroyTextPath:function(a,b){var c=a.getElementsByTagName("text")[0];if(c){if(c.removeAttribute("dx"),c.removeAttribute("dy"),b.element.setAttribute("id",""),c.getElementsByTagName("textPath").length){for(a=this.textPathWrapper.element.childNodes;a.length;)c.appendChild(a[0]);c.removeChild(this.textPathWrapper.element)}}else if(a.getAttribute("dx")||a.getAttribute("dy"))a.removeAttribute("dx"), a.removeAttribute("dy");this.textPathWrapper=this.textPathWrapper.destroy()},fillSetter:function(a,b,c){"string"===typeof a?c.setAttribute(b,a):a&&this.complexColor(a,b,c)},visibilitySetter:function(a,b,c){"inherit"===a?c.removeAttribute(b):this[b]!==a&&c.setAttribute(b,a);this[b]=a},zIndexSetter:function(a,b){var c=this.renderer,e=this.parentGroup,r=(e||c).element||c.box,g=this.element,l=!1;c=r===c.box;var G=this.added;var m;A(a)?(g.setAttribute("data-z-index",a),a=+a,this[b]===a&&(G=!1)):A(this[b])&& g.removeAttribute("data-z-index");this[b]=a;if(G){(a=this.zIndex)&&e&&(e.handleZ=!0);b=r.childNodes;for(m=b.length-1;0<=m&&!l;m--){e=b[m];G=e.getAttribute("data-z-index");var d=!A(G);if(e!==g)if(0>a&&d&&!c&&!m)r.insertBefore(g,b[m]),l=!0;else if(E(G)<=a||d&&(!A(a)||0<=a))r.insertBefore(g,b[m+1]||null),l=!0}l||(r.insertBefore(g,b[c?3:0]||null),l=!0)}return l},_defaultSetter:function(a,b,c){c.setAttribute(b,a)}});O.prototype.yGetter=O.prototype.xGetter;O.prototype.translateXSetter=O.prototype.translateYSetter= O.prototype.rotationSetter=O.prototype.verticalAlignSetter=O.prototype.rotationOriginXSetter=O.prototype.rotationOriginYSetter=O.prototype.scaleXSetter=O.prototype.scaleYSetter=O.prototype.matrixSetter=function(a,b){this[b]=a;this.doTransform=!0};O.prototype["stroke-widthSetter"]=O.prototype.strokeSetter=function(a,b,c){this[b]=a;this.stroke&&this["stroke-width"]?(O.prototype.fillSetter.call(this,this.stroke,"stroke",c),c.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"=== b&&0===a&&this.hasStroke?(c.removeAttribute("stroke"),this.hasStroke=!1):this.renderer.styledMode&&this["stroke-width"]&&(c.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0)};f=d.SVGRenderer=function(){this.init.apply(this,arguments)};p(f.prototype,{Element:O,SVG_NS:U,init:function(a,b,c,r,G,m,d){var v=this.createElement("svg").attr({version:"1.1","class":"highcharts-root"});d||v.css(this.getStyle(r));r=v.element;a.appendChild(r);F(a,"dir","ltr");-1===a.innerHTML.indexOf("xmlns")&& F(r,"xmlns",this.SVG_NS);this.isSVG=!0;this.box=r;this.boxWrapper=v;this.alignedObjects=[];this.url=(l||B)&&C.getElementsByTagName("base").length?W.location.href.split("#")[0].replace(/<[^>]*>/g,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"";this.createElement("desc").add().element.appendChild(C.createTextNode("Created with Highcharts 8.0.0"));this.defs=this.createElement("defs").add();this.allowHTML=m;this.forExport=G;this.styledMode=d;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount= 0;this.setSize(b,c,!1);var q;l&&a.getBoundingClientRect&&(b=function(){g(a,{left:0,top:0});q=a.getBoundingClientRect();g(a,{left:Math.ceil(q.left)-q.left+"px",top:Math.ceil(q.top)-q.top+"px"})},b(),this.unSubPixelFix=e(W,"resize",b))},definition:function(a){function b(a,e){var r;h(a).forEach(function(a){var g=c.createElement(a.tagName),l={};k(a,function(a,b){"tagName"!==b&&"children"!==b&&"textContent"!==b&&(l[b]=a)});g.attr(l);g.add(e||c.defs);a.textContent&&g.element.appendChild(C.createTextNode(a.textContent)); b(a.children||[],g);r=g});return r}var c=this;return b(a)},getStyle:function(a){return this.style=p({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();D(this.gradients||{});this.gradients=null;a&&(this.defs=a.destroy());this.unSubPixelFix&& this.unSubPixelFix();return this.alignedObjects=null},createElement:function(a){var b=new this.Element;b.init(this,a);return b},draw:J,getRadialAttr:function(a,b){return{cx:a[0]-a[2]/2+b.cx*a[2],cy:a[1]-a[2]/2+b.cy*a[2],r:b.r*a[2]}},truncate:function(a,b,c,e,r,g,l){var G=this,m=a.rotation,d,v=e?1:0,q=(c||e).length,h=q,B=[],K=function(a){b.firstChild&&b.removeChild(b.firstChild);a&&b.appendChild(C.createTextNode(a))},z=function(g,m){m=m||g;if("undefined"===typeof B[m])if(b.getSubStringLength)try{B[m]= r+b.getSubStringLength(0,e?m+1:m)}catch(ea){""}else G.getSpanWidth&&(K(l(c||e,g)),B[m]=r+G.getSpanWidth(a,b));return B[m]},N;a.rotation=0;var k=z(b.textContent.length);if(N=r+k>g){for(;v<=q;)h=Math.ceil((v+q)/2),e&&(d=l(e,h)),k=z(h,d&&d.length-1),v===q?v=q+1:k>g?q=h-1:v=h;0===q?K(""):c&&q===c.length-1||K(d||l(c||e,h))}e&&e.splice(0,h);a.actualWidth=k;a.rotation=m;return N},escapes:{"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"},buildText:function(a){var b=a.element,c=this,e=c.forExport, r=n(a.textStr,"").toString(),l=-1!==r.indexOf("<"),G=b.childNodes,m,d=F(b,"x"),v=a.styles,q=a.textWidth,h=v&&v.lineHeight,B=v&&v.textOutline,z=v&&"ellipsis"===v.textOverflow,f=v&&"nowrap"===v.whiteSpace,I=v&&v.fontSize,J,P=G.length;v=q&&!a.added&&this.box;var t=function(a){var e;c.styledMode||(e=/(px|em)$/.test(a&&a.style.fontSize)?a.style.fontSize:I||c.style.fontSize||12);return h?E(h):c.fontMetrics(e,a.getAttribute("style")?a:b).h},p=function(a,b){k(c.escapes,function(c,e){b&&-1!==b.indexOf(c)|| (a=a.toString().replace(new RegExp(c,"g"),e))});return a},y=function(a,b){var c=a.indexOf("<");a=a.substring(c,a.indexOf(">")-c);c=a.indexOf(b+"=");if(-1!==c&&(c=c+b.length+1,b=a.charAt(c),'"'===b||"'"===b))return a=a.substring(c+1),a.substring(0,a.indexOf(b))},S=/<br.*?>/g;var x=[r,z,f,h,B,I,q].join();if(x!==a.textCache){for(a.textCache=x;P--;)b.removeChild(G[P]);l||B||z||q||-1!==r.indexOf(" ")&&(!f||S.test(r))?(v&&v.appendChild(b),l?(r=c.styledMode?r.replace(/<(b|strong)>/g,'<span class="highcharts-strong">').replace(/<(i|em)>/g, '<span class="highcharts-emphasized">'):r.replace(/<(b|strong)>/g,'<span style="font-weight:bold">').replace(/<(i|em)>/g,'<span style="font-style:italic">'),r=r.replace(/<a/g,"<span").replace(/<\/(b|strong|i|em|a)>/g,"</span>").split(S)):r=[r],r=r.filter(function(a){return""!==a}),r.forEach(function(r,l){var G=0,v=0;r=r.replace(/^\s+|\s+$/g,"").replace(/<span/g,"|||<span").replace(/<\/span>/g,"</span>|||");var h=r.split("|||");h.forEach(function(r){if(""!==r||1===h.length){var B={},K=C.createElementNS(c.SVG_NS, "tspan"),k,n;(k=y(r,"class"))&&F(K,"class",k);if(k=y(r,"style"))k=k.replace(/(;| |^)color([ :])/,"$1fill$2"),F(K,"style",k);(n=y(r,"href"))&&!e&&(F(K,"onclick",'location.href="'+n+'"'),F(K,"class","highcharts-anchor"),c.styledMode||g(K,{cursor:"pointer"}));r=p(r.replace(/<[a-zA-Z\/](.|\n)*?>/g,"")||" ");if(" "!==r){K.appendChild(C.createTextNode(r));G?B.dx=0:l&&null!==d&&(B.x=d);F(K,B);b.appendChild(K);!G&&J&&(!N&&e&&g(K,{display:"block"}),F(K,"dy",t(K)));if(q){var Q=r.replace(/([^\^])-/g,"$1- ").split(" "); B=!f&&(1<h.length||l||1<Q.length);n=0;var E=t(K);if(z)m=c.truncate(a,K,r,void 0,0,Math.max(0,q-parseInt(I||12,10)),function(a,b){return a.substring(0,b)+"\u2026"});else if(B)for(;Q.length;)Q.length&&!f&&0<n&&(K=C.createElementNS(U,"tspan"),F(K,{dy:E,x:d}),k&&F(K,"style",k),K.appendChild(C.createTextNode(Q.join(" ").replace(/- /g,"-"))),b.appendChild(K)),c.truncate(a,K,null,Q,0===n?v:0,q,function(a,b){return Q.slice(0,b).join(" ").replace(/- /g,"-")}),v=a.actualWidth,n++}G++}}});J=J||b.childNodes.length}), z&&m&&a.attr("title",p(a.textStr,["&lt;","&gt;"])),v&&v.removeChild(b),B&&a.applyTextOutline&&a.applyTextOutline(B)):b.appendChild(C.createTextNode(p(r)))}},getContrast:function(a){a=b(a).rgba;a[0]*=1;a[1]*=1.2;a[2]*=.5;return 459<a[0]+a[1]+a[2]?"#000000":"#FFFFFF"},button:function(a,b,c,r,g,l,G,m,d,q){var h=this.label(a,b,c,d,null,null,q,null,"button"),B=0,K=this.styledMode;h.attr(I({padding:8,r:2},g));if(!K){g=I({fill:"#f7f7f7",stroke:"#cccccc","stroke-width":1,style:{color:"#333333",cursor:"pointer", fontWeight:"normal"}},g);var z=g.style;delete g.style;l=I(g,{fill:"#e6e6e6"},l);var N=l.style;delete l.style;G=I(g,{fill:"#e6ebf5",style:{color:"#000000",fontWeight:"bold"}},G);var k=G.style;delete G.style;m=I(g,{style:{color:"#cccccc"}},m);var C=m.style;delete m.style}e(h.element,v?"mouseover":"mouseenter",function(){3!==B&&h.setState(1)});e(h.element,v?"mouseout":"mouseleave",function(){3!==B&&h.setState(B)});h.setState=function(a){1!==a&&(h.state=B=a);h.removeClass(/highcharts-button-(normal|hover|pressed|disabled)/).addClass("highcharts-button-"+ ["normal","hover","pressed","disabled"][a||0]);K||h.attr([g,l,G,m][a||0]).css([z,N,k,C][a||0])};K||h.attr(g).css(p({cursor:"default"},z));return h.on("click",function(a){3!==B&&r.call(h,a)})},crispLine:function(a,b){a[1]===a[4]&&(a[1]=a[4]=Math.round(a[1])-b%2/2);a[2]===a[5]&&(a[2]=a[5]=Math.round(a[2])+b%2/2);return a},path:function(a){var b=this.styledMode?{}:{fill:"none"};H(a)?b.d=a:t(a)&&p(b,a);return this.createElement("path").attr(b)},circle:function(a,b,c){a=t(a)?a:"undefined"===typeof a?{}: {x:a,y:b,r:c};b=this.createElement("circle");b.xSetter=b.ySetter=function(a,b,c){c.setAttribute("c"+b,a)};return b.attr(a)},arc:function(a,b,c,e,r,g){t(a)?(e=a,b=e.y,c=e.r,a=e.x):e={innerR:e,start:r,end:g};a=this.symbol("arc",a,b,c,c,e);a.r=c;return a},rect:function(a,b,c,e,r,g){r=t(a)?a.r:r;var l=this.createElement("rect");a=t(a)?a:"undefined"===typeof a?{}:{x:a,y:b,width:Math.max(c,0),height:Math.max(e,0)};this.styledMode||("undefined"!==typeof g&&(a.strokeWidth=g,a=l.crisp(a)),a.fill="none");r&& (a.r=r);l.rSetter=function(a,b,c){l.r=a;F(c,{rx:a,ry:a})};l.rGetter=function(){return l.r};return l.attr(a)},setSize:function(a,b,c){var e=this.alignedObjects,r=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:n(c,!0)?void 0:0});r--;)e[r].align()},g:function(a){var b=this.createElement("g");return a?b.attr({"class":"highcharts-"+a}):b},image:function(a,b,c,r,g,l){var G= {preserveAspectRatio:"none"},m=function(a,b){a.setAttributeNS?a.setAttributeNS("http://www.w3.org/1999/xlink","href",b):a.setAttribute("hc-svg-href",b)},d=function(b){m(v.element,a);l.call(v,b)};1<arguments.length&&p(G,{x:b,y:c,width:r,height:g});var v=this.createElement("image").attr(G);l?(m(v.element,"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="),G=new W.Image,e(G,"load",d),G.src=a,G.complete&&d({})):m(v.element,a);return v},symbol:function(b,c,e,r,l,G){var m=this, v=/^url\((.*?)\)$/,d=v.test(b),h=!d&&(this.symbols[b]?b:"circle"),B=h&&this.symbols[h],z=A(c)&&B&&B.call(this.symbols,Math.round(c),Math.round(e),r,l,G);if(B){var K=this.path(z);m.styledMode||K.attr("fill","none");p(K,{symbolName:h,x:c,y:e,width:r,height:l});G&&p(K,G)}else if(d){var N=b.match(v)[1];K=this.image(N);K.imgwidth=n(S[N]&&S[N].width,G&&G.width);K.imgheight=n(S[N]&&S[N].height,G&&G.height);var k=function(){K.attr({width:K.width,height:K.height})};["width","height"].forEach(function(a){K[a+ "Setter"]=function(a,b){var c={},e=this["img"+b],r="width"===b?"translateX":"translateY";this[b]=a;A(e)&&(G&&"within"===G.backgroundSize&&this.width&&this.height&&(e=Math.round(e*Math.min(this.width/this.imgwidth,this.height/this.imgheight))),this.element&&this.element.setAttribute(b,e),this.alignByTranslate||(c[r]=((this[b]||0)-e)/2,this.attr(c)))}});A(c)&&K.attr({x:c,y:e});K.isImg=!0;A(K.imgwidth)&&A(K.imgheight)?k():(K.attr({width:0,height:0}),q("img",{onload:function(){var b=a[m.chartIndex];0=== this.width&&(g(this,{position:"absolute",top:"-999em"}),C.body.appendChild(this));S[N]={width:this.width,height:this.height};K.imgwidth=this.width;K.imgheight=this.height;K.element&&k();this.parentNode&&this.parentNode.removeChild(this);m.imgCount--;if(!m.imgCount&&b&&b.onload)b.onload()},src:N}),this.imgCount++)}return K},symbols:{circle:function(a,b,c,e){return this.arc(a+c/2,b+e/2,c/2,e/2,{start:.5*Math.PI,end:2.5*Math.PI,open:!1})},square:function(a,b,c,e){return["M",a,b,"L",a+c,b,a+c,b+e,a,b+ e,"Z"]},triangle:function(a,b,c,e){return["M",a+c/2,b,"L",a+c,b+e,a,b+e,"Z"]},"triangle-down":function(a,b,c,e){return["M",a,b,"L",a+c,b,a+c/2,b+e,"Z"]},diamond:function(a,b,c,e){return["M",a+c/2,b,"L",a+c,b+e/2,a+c/2,b+e,a,b+e/2,"Z"]},arc:function(a,b,c,e,r){var g=r.start,l=r.r||c,G=r.r||e||c,m=r.end-.001;c=r.innerR;e=n(r.open,.001>Math.abs(r.end-r.start-2*Math.PI));var v=Math.cos(g),d=Math.sin(g),q=Math.cos(m);m=Math.sin(m);g=n(r.longArc,.001>r.end-g-Math.PI?0:1);l=["M",a+l*v,b+G*d,"A",l,G,0,g, n(r.clockwise,1),a+l*q,b+G*m];A(c)&&l.push(e?"M":"L",a+c*q,b+c*m,"A",c,c,0,g,A(r.clockwise)?1-r.clockwise:0,a+c*v,b+c*d);l.push(e?"":"Z");return l},callout:function(a,b,c,e,r){var g=Math.min(r&&r.r||0,c,e),l=g+6,G=r&&r.anchorX;r=r&&r.anchorY;var m=["M",a+g,b,"L",a+c-g,b,"C",a+c,b,a+c,b,a+c,b+g,"L",a+c,b+e-g,"C",a+c,b+e,a+c,b+e,a+c-g,b+e,"L",a+g,b+e,"C",a,b+e,a,b+e,a,b+e-g,"L",a,b+g,"C",a,b,a,b,a+g,b];G&&G>c?r>b+l&&r<b+e-l?m.splice(13,3,"L",a+c,r-6,a+c+6,r,a+c,r+6,a+c,b+e-g):m.splice(13,3,"L",a+c, e/2,G,r,a+c,e/2,a+c,b+e-g):G&&0>G?r>b+l&&r<b+e-l?m.splice(33,3,"L",a,r+6,a-6,r,a,r-6,a,b+g):m.splice(33,3,"L",a,e/2,G,r,a,e/2,a,b+g):r&&r>e&&G>a+l&&G<a+c-l?m.splice(23,3,"L",G+6,b+e,G,b+e+6,G-6,b+e,a+g,b+e):r&&0>r&&G>a+l&&G<a+c-l&&m.splice(3,3,"L",G-6,b,G,b-6,G+6,b,c-g,b);return m}},clipRect:function(a,b,c,e){var r=d.uniqueKey()+"-",g=this.createElement("clipPath").attr({id:r}).add(this.defs);a=this.rect(a,b,c,e,0).add(g);a.id=r;a.clipPath=g;a.count=0;return a},text:function(a,b,c,e){var r={};if(e&& (this.allowHTML||!this.forExport))return this.html(a,b,c);r.x=Math.round(b||0);c&&(r.y=Math.round(c));A(a)&&(r.text=a);a=this.createElement("text").attr(r);e||(a.xSetter=function(a,b,c){var e=c.getElementsByTagName("tspan"),r=c.getAttribute(b),g;for(g=0;g<e.length;g++){var l=e[g];l.getAttribute(b)===r&&l.setAttribute(b,a)}c.setAttribute(b,a)});return a},fontMetrics:function(a,b){a=!this.styledMode&&/px/.test(a)||!W.getComputedStyle?a||b&&b.style&&b.style.fontSize||this.style&&this.style.fontSize: b&&O.prototype.getStyle.call(b,"font-size");a=/px/.test(a)?E(a):12;b=24>a?a+3:Math.round(1.2*a);return{h:b,b:Math.round(.8*b),f:a}},rotCorr:function(a,b,c){var e=a;b&&c&&(e=Math.max(e*Math.cos(b*m),4));return{x:-a/3*Math.sin(b*m),y:e}},label:function(a,b,c,e,g,l,G,m,v){var d=this,q=d.styledMode,h=d.g("button"!==v&&"label"),B=h.text=d.text("",0,0,G).attr({zIndex:1}),z,N,k=0,C=3,n=0,K,f,U,J,E,Q={},t,y,S=/^url\((.*?)\)$/.test(e),x=q||S,W=function(){return q?z.strokeWidth()%2/2:(t?parseInt(t,10):0)%2/ 2};v&&h.addClass("highcharts-"+v);var H=function(){var a=B.element.style,b={};N=("undefined"===typeof K||"undefined"===typeof f||E)&&A(B.textStr)&&B.getBBox();h.width=(K||N.width||0)+2*C+n;h.height=(f||N.height||0)+2*C;y=C+Math.min(d.fontMetrics(a&&a.fontSize,B).b,N?N.height:Infinity);x&&(z||(h.box=z=d.symbols[e]||S?d.symbol(e):d.rect(),z.addClass(("button"===v?"":"highcharts-label-box")+(v?" highcharts-"+v+"-box":"")),z.add(h),a=W(),b.x=a,b.y=(m?-y:0)+a),b.width=Math.round(h.width),b.height=Math.round(h.height), z.attr(p(b,Q)),Q={})};var Y=function(){var a=n+C;var b=m?0:y;A(K)&&N&&("center"===E||"right"===E)&&(a+={center:.5,right:1}[E]*(K-N.width));if(a!==B.x||b!==B.y)B.attr("x",a),B.hasBoxWidthChanged&&(N=B.getBBox(!0),H()),"undefined"!==typeof b&&B.attr("y",b);B.x=a;B.y=b};var D=function(a,b){z?z.attr(a,b):Q[a]=b};h.onAdd=function(){B.add(h);h.attr({text:a||0===a?a:"",x:b,y:c});z&&A(g)&&h.attr({anchorX:g,anchorY:l})};h.widthSetter=function(a){K=u(a)?a:null};h.heightSetter=function(a){f=a};h["text-alignSetter"]= function(a){E=a};h.paddingSetter=function(a){A(a)&&a!==C&&(C=h.padding=a,Y())};h.paddingLeftSetter=function(a){A(a)&&a!==n&&(n=a,Y())};h.alignSetter=function(a){a={left:0,center:.5,right:1}[a];a!==k&&(k=a,N&&h.attr({x:U}))};h.textSetter=function(a){"undefined"!==typeof a&&B.attr({text:a});H();Y()};h["stroke-widthSetter"]=function(a,b){a&&(x=!0);t=this["stroke-width"]=a;D(b,a)};q?h.rSetter=function(a,b){D(b,a)}:h.strokeSetter=h.fillSetter=h.rSetter=function(a,b){"r"!==b&&("fill"===b&&a&&(x=!0),h[b]= a);D(b,a)};h.anchorXSetter=function(a,b){g=h.anchorX=a;D(b,Math.round(a)-W()-U)};h.anchorYSetter=function(a,b){l=h.anchorY=a;D(b,a-J)};h.xSetter=function(a){h.x=a;k&&(a-=k*((K||N.width)+2*C),h["forceAnimate:x"]=!0);U=Math.round(a);h.attr("translateX",U)};h.ySetter=function(a){J=h.y=Math.round(a);h.attr("translateY",J)};var P=h.css;G={css:function(a){if(a){var b={};a=I(a);h.textProps.forEach(function(c){"undefined"!==typeof a[c]&&(b[c]=a[c],delete a[c])});B.css(b);"width"in b&&H();"fontSize"in b&& (H(),Y())}return P.call(h,a)},getBBox:function(){return{width:N.width+2*C,height:N.height+2*C,x:N.x-C,y:N.y-C}},destroy:function(){r(h.element,"mouseenter");r(h.element,"mouseleave");B&&(B=B.destroy());z&&(z=z.destroy());O.prototype.destroy.call(h);h=d=H=Y=D=null}};q||(G.shadow=function(a){a&&(H(),z&&z.shadow(a));return h});return p(h,G)}});d.Renderer=f});M(w,"parts/Html.js",[w["parts/Globals.js"],w["parts/Utilities.js"]],function(d,f){var L=f.attr,F=f.defined,A=f.extend,D=f.pick,x=f.pInt,p=d.createElement, H=d.css,u=d.isFirefox,t=d.isMS,y=d.isWebKit,k=d.SVGElement;f=d.SVGRenderer;var n=d.win;A(k.prototype,{htmlCss:function(d){var h="SPAN"===this.element.tagName&&d&&"width"in d,e=D(h&&d.width,void 0);if(h){delete d.width;this.textWidth=e;var c=!0}d&&"ellipsis"===d.textOverflow&&(d.whiteSpace="nowrap",d.overflow="hidden");this.styles=A(this.styles,d);H(this.element,d);c&&this.htmlUpdateTransform();return this},htmlGetBBox:function(){var d=this.element;return{x:d.offsetLeft,y:d.offsetTop,width:d.offsetWidth, height:d.offsetHeight}},htmlUpdateTransform:function(){if(this.added){var d=this.renderer,h=this.element,e=this.translateX||0,c=this.translateY||0,a=this.x||0,b=this.y||0,g=this.textAlign||"left",q={left:0,center:.5,right:1}[g],m=this.styles,k=m&&m.whiteSpace;H(h,{marginLeft:e,marginTop:c});!d.styledMode&&this.shadows&&this.shadows.forEach(function(a){H(a,{marginLeft:e+1,marginTop:c+1})});this.inverted&&[].forEach.call(h.childNodes,function(a){d.invertChild(a,h)});if("SPAN"===h.tagName){m=this.rotation; var z=this.textWidth&&x(this.textWidth),l=[m,g,h.innerHTML,this.textWidth,this.textAlign].join(),v;(v=z!==this.oldTextWidth)&&!(v=z>this.oldTextWidth)&&((v=this.textPxLength)||(H(h,{width:"",whiteSpace:k||"nowrap"}),v=h.offsetWidth),v=v>z);v&&(/[ \-]/.test(h.textContent||h.innerText)||"ellipsis"===h.style.textOverflow)?(H(h,{width:z+"px",display:"block",whiteSpace:k||"normal"}),this.oldTextWidth=z,this.hasBoxWidthChanged=!0):this.hasBoxWidthChanged=!1;l!==this.cTT&&(k=d.fontMetrics(h.style.fontSize, h).b,!F(m)||m===(this.oldRotation||0)&&g===this.oldAlign||this.setSpanRotation(m,q,k),this.getSpanCorrection(!F(m)&&this.textPxLength||h.offsetWidth,k,q,m,g));H(h,{left:a+(this.xCorr||0)+"px",top:b+(this.yCorr||0)+"px"});this.cTT=l;this.oldRotation=m;this.oldAlign=g}}else this.alignOnAdd=!0},setSpanRotation:function(d,h,e){var c={},a=this.renderer.getTransformKey();c[a]=c.transform="rotate("+d+"deg)";c[a+(u?"Origin":"-origin")]=c.transformOrigin=100*h+"% "+e+"px";H(this.element,c)},getSpanCorrection:function(d, h,e){this.xCorr=-d*e;this.yCorr=-h}});A(f.prototype,{getTransformKey:function(){return t&&!/Edge/.test(n.navigator.userAgent)?"-ms-transform":y?"-webkit-transform":u?"MozTransform":n.opera?"-o-transform":""},html:function(d,h,e){var c=this.createElement("span"),a=c.element,b=c.renderer,g=b.isSVG,q=function(a,b){["opacity","visibility"].forEach(function(c){a[c+"Setter"]=function(e,g,m){var l=a.div?a.div.style:b;k.prototype[c+"Setter"].call(this,e,g,m);l&&(l[g]=e)}});a.addedSetters=!0};c.textSetter= function(b){b!==a.innerHTML&&(delete this.bBox,delete this.oldTextWidth);this.textStr=b;a.innerHTML=D(b,"");c.doTransform=!0};g&&q(c,c.element.style);c.xSetter=c.ySetter=c.alignSetter=c.rotationSetter=function(a,b){"align"===b&&(b="textAlign");c[b]=a;c.doTransform=!0};c.afterSetters=function(){this.do