UNPKG

highcharts-fork-vermorxt

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