/* Highstock JS v9.1.0 (2021-05-03) Highcharts Stock as a plugin for Highcharts (c) 2010-2021 Torstein Honsi License: www.highcharts.com/license */ (function(b){"object"===typeof module&&module.exports?(b["default"]=b,module.exports=b):"function"===typeof define&&define.amd?define("highcharts/modules/stock",["highcharts"],function(I){b(I);b.Highcharts=I;return b}):b("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(b){function I(b,w,m,x){b.hasOwnProperty(w)||(b[w]=x.apply(null,m))}b=b?b._modules:{};I(b,"Core/Axis/NavigatorAxis.js",[b["Core/Globals.js"],b["Core/Utilities.js"]],function(b,w){var m=b.isTouchDevice,x=w.addEvent,t=w.correctFloat, F=w.defined,B=w.isNumber,D=w.pick,g=function(){function a(a){this.axis=a}a.prototype.destroy=function(){this.axis=void 0};a.prototype.toFixedRange=function(a,g,c,y){var p=this.axis,n=p.chart;n=n&&n.fixedRange;var O=(p.pointRange||0)/2;a=D(c,p.translate(a,!0,!p.horiz));g=D(y,p.translate(g,!0,!p.horiz));p=n&&(g-a)/n;F(c)||(a=t(a+O));F(y)||(g=t(g-O));.7p&&(y?a=g-n:g=a+n);B(a)&&B(g)||(a=g=void 0);return{min:a,max:g}};return a}();return function(){function a(){}a.compose=function(a){a.keepProps.push("navigatorAxis"); x(a,"init",function(){this.navigatorAxis||(this.navigatorAxis=new g(this))});x(a,"zoom",function(a){var c=this.chart.options,g=c.navigator,p=this.navigatorAxis,n=c.chart.pinchType,O=c.rangeSelector;c=c.chart.zoomType;this.isXAxis&&(g&&g.enabled||O&&O.enabled)&&("y"===c?a.zoomed=!1:(!m&&"xy"===c||m&&"xy"===n)&&this.options.range&&(g=p.previousZoom,F(a.newMin)?p.previousZoom=[this.min,this.max]:g&&(a.newMin=g[0],a.newMax=g[1],p.previousZoom=void 0)));"undefined"!==typeof a.zoomed&&a.preventDefault()})}; a.AdditionsClass=g;return a}()});I(b,"Core/Axis/ScrollbarAxis.js",[b["Core/Utilities.js"]],function(b){var w=b.addEvent,m=b.defined,x=b.pick;return function(){function b(){}b.compose=function(b,B){var D=function(g){var a=x(g.options&&g.options.min,g.min),b=x(g.options&&g.options.max,g.max);return{axisMin:a,axisMax:b,scrollMin:m(g.dataMin)?Math.min(a,g.min,g.dataMin,x(g.threshold,Infinity)):a,scrollMax:m(g.dataMax)?Math.max(b,g.max,g.dataMax,x(g.threshold,-Infinity)):b}};w(b,"afterInit",function(){var g= this;g.options&&g.options.scrollbar&&g.options.scrollbar.enabled&&(g.options.scrollbar.vertical=!g.horiz,g.options.startOnTick=g.options.endOnTick=!1,g.scrollbar=new B(g.chart.renderer,g.options.scrollbar,g.chart),w(g.scrollbar,"changed",function(a){var b=D(g),r=b.axisMax,c=b.scrollMin,y=b.scrollMax-c;m(b.axisMin)&&m(r)&&(g.horiz&&!g.reversed||!g.horiz&&g.reversed?(b=c+y*this.to,c+=y*this.from):(b=c+y*(1-this.from),c+=y*(1-this.to)),this.shouldUpdateExtremes(a.DOMType)?g.setExtremes(c,b,!0,"mousemove"!== a.DOMType&&"touchmove"!==a.DOMType,a):this.setRange(this.from,this.to))}))});w(b,"afterRender",function(){var g=D(this),a=g.scrollMin,b=g.scrollMax;g=this.scrollbar;var r=this.axisTitleMargin+(this.titleOffset||0),c=this.chart.scrollbarsOffsets,y=this.options.margin||0;g&&(this.horiz?(this.opposite||(c[1]+=r),g.position(this.left,this.top+this.height+2+c[1]-(this.opposite?y:0),this.width,this.height),this.opposite||(c[1]+=y),r=1):(this.opposite&&(c[0]+=r),g.position(this.left+this.width+2+c[0]-(this.opposite? 0:y),this.top,this.width,this.height),this.opposite&&(c[0]+=y),r=0),c[r]+=g.size+g.options.margin,isNaN(a)||isNaN(b)||!m(this.min)||!m(this.max)||this.min===this.max?g.setRange(0,1):(c=(this.min-a)/(b-a),a=(this.max-a)/(b-a),this.horiz&&!this.reversed||!this.horiz&&this.reversed?g.setRange(c,a):g.setRange(1-a,1-c)))});w(b,"afterGetOffset",function(){var g=this.horiz?2:1,a=this.scrollbar;a&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[g]+=a.size+a.options.margin)})};return b}()});I(b, "Core/Scrollbar.js",[b["Core/Axis/Axis.js"],b["Core/Globals.js"],b["Core/Color/Palette.js"],b["Core/Axis/ScrollbarAxis.js"],b["Core/Utilities.js"],b["Core/Options.js"]],function(b,w,m,x,t,F){var B=t.addEvent,D=t.correctFloat,g=t.defined,a=t.destroyObjectProperties,v=t.fireEvent,r=t.merge,c=t.pick,y=t.removeEvent;t=F.defaultOptions;var p=w.isTouchDevice,n=w.swapXY=function(a,e){e&&a.forEach(function(e){for(var l=e.length,q,a=0;athis.calculatedWidth?q.minWidth:0;return{chartX:(e.chartX-this.x-this.xOffset)/(this.barWidth-q),chartY:(e.chartY-this.y-this.yOffset)/(this.barWidth-q)}};b.prototype.destroy=function(){var e=this.chart.scroller;this.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(e){this[e]&&this[e].destroy&&(this[e]=this[e].destroy())},this);e&&this===e.scrollbar&&(e.scrollbar=null, a(e.scrollbarButtons))};b.prototype.drawScrollbarButton=function(e){var a=this.renderer,l=this.scrollbarButtons,G=this.options,b=this.size;var c=a.g().add(this.group);l.push(c);c=a.rect().addClass("highcharts-scrollbar-button").add(c);this.chart.styledMode||c.attr({stroke:G.buttonBorderColor,"stroke-width":G.buttonBorderWidth,fill:G.buttonBackgroundColor});c.attr(c.crisp({x:-.5,y:-.5,width:b+1,height:b+1,r:G.buttonBorderRadius},c.strokeWidth()));c=a.path(n([["M",b/2+(e?-1:1),b/2-3],["L",b/2+(e?-1: 1),b/2+3],["L",b/2+(e?2:-2),b/2]],G.vertical)).addClass("highcharts-scrollbar-arrow").add(l[e]);this.chart.styledMode||c.attr({fill:G.buttonArrowColor})};b.prototype.init=function(e,a,l){this.scrollbarButtons=[];this.renderer=e;this.userOptions=a;this.options=r(b.defaultOptions,a);this.chart=l;this.size=c(this.options.size,this.options.height);a.enabled&&(this.render(),this.addEvents())};b.prototype.mouseDownHandler=function(e){e=this.chart.pointer.normalize(e);e=this.cursorToScrollbarPosition(e); this.chartX=e.chartX;this.chartY=e.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};b.prototype.mouseMoveHandler=function(e){var a=this.chart.pointer.normalize(e),l=this.options.vertical?"chartY":"chartX",b=this.initPositions||[];!this.grabbedCenter||e.touches&&0===e.touches[0][l]||(a=this.cursorToScrollbarPosition(a)[l],l=this[l],l=a-l,this.hasDragged=!0,this.updatePosition(b[0]+l,b[1]+l),this.hasDragged&&v(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:e.type, DOMEvent:e}))};b.prototype.mouseUpHandler=function(e){this.hasDragged&&v(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:e.type,DOMEvent:e});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};b.prototype.position=function(e,a,l,b){var q=this.options.vertical,n=0,c=this.rendered?"animate":"attr";this.x=e;this.y=a+this.trackBorderWidth;this.width=l;this.xOffset=this.height=b;this.yOffset=n;q?(this.width=this.yOffset=l=n=this.size,this.xOffset=a=0,this.barWidth=b- 2*l,this.x=e+=this.options.margin):(this.height=this.xOffset=b=a=this.size,this.barWidth=l-2*b,this.y+=this.options.margin);this.group[c]({translateX:e,translateY:this.y});this.track[c]({width:l,height:b});this.scrollbarButtons[1][c]({translateX:q?0:l-a,translateY:q?b-n:0})};b.prototype.removeEvents=function(){this._events.forEach(function(e){y.apply(null,e)});this._events.length=0};b.prototype.render=function(){var e=this.renderer,a=this.options,l=this.size,b=this.chart.styledMode,c;this.group=c= e.g("scrollbar").attr({zIndex:a.zIndex,translateY:-99999}).add();this.track=e.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:a.trackBorderRadius||0,height:l,width:l}).add(c);b||this.track.attr({fill:a.trackBackgroundColor,stroke:a.trackBorderColor,"stroke-width":a.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=e.g().add(c);this.scrollbar=e.rect().addClass("highcharts-scrollbar-thumb").attr({height:l, width:l,r:a.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=e.path(n([["M",-3,l/4],["L",-3,2*l/3],["M",0,l/4],["L",0,2*l/3],["M",3,l/4],["L",3,2*l/3]],a.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);b||(this.scrollbar.attr({fill:a.barBackgroundColor,stroke:a.barBorderColor,"stroke-width":a.barBorderWidth}),this.scrollbarRifles.attr({stroke:a.rifleColor,"stroke-width":1}));this.scrollbarStrokeWidth=this.scrollbar.strokeWidth();this.scrollbarGroup.translate(-this.scrollbarStrokeWidth% 2/2,-this.scrollbarStrokeWidth%2/2);this.drawScrollbarButton(0);this.drawScrollbarButton(1)};b.prototype.setRange=function(e,a){var l=this.options,b=l.vertical,c=l.minWidth,n=this.barWidth,q,p=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(g(n)){e=Math.max(e,0);var y=Math.ceil(n*e);this.calculatedWidth=q=D(n*Math.min(a,1)-y);q=q?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===l.showFull&&(0>=e&&1<=a?this.group.hide():this.group.show());this.rendered=!0}};b.prototype.shouldUpdateExtremes=function(e){return c(this.options.liveRedraw,w.svg&&!w.isTouchDevice&& !this.chart.isBoosting)||"mouseup"===e||"touchend"===e||!g(e)};b.prototype.trackClick=function(e){var a=this.chart.pointer.normalize(e),l=this.to-this.from,b=this.y+this.scrollbarTop,c=this.x+this.scrollbarLeft;this.options.vertical&&a.chartY>b||!this.options.vertical&&a.chartX>c?this.updatePosition(this.from+l,this.to+l):this.updatePosition(this.from-l,this.to-l);v(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:e})};b.prototype.update=function(e){this.destroy();this.init(this.chart.renderer, r(!0,this.options,e),this.chart)};b.prototype.updatePosition=function(e,a){1e&&(a=D(a-e),e=0);this.from=e;this.to=a};b.defaultOptions={height:p?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,margin:10,minWidth:6,step:.2,zIndex:3,barBackgroundColor:m.neutralColor20,barBorderWidth:1,barBorderColor:m.neutralColor20,buttonArrowColor:m.neutralColor80,buttonBackgroundColor:m.neutralColor10,buttonBorderColor:m.neutralColor20,buttonBorderWidth:1,rifleColor:m.neutralColor80, trackBackgroundColor:m.neutralColor5,trackBorderColor:m.neutralColor5,trackBorderWidth:1};return b}();w.Scrollbar||(t.scrollbar=r(!0,F.defaultOptions,t.scrollbar),w.Scrollbar=F,x.compose(b,F));return w.Scrollbar});I(b,"Core/Navigator.js",[b["Core/Axis/Axis.js"],b["Core/Chart/Chart.js"],b["Core/Color/Color.js"],b["Core/Globals.js"],b["Core/Axis/NavigatorAxis.js"],b["Core/Options.js"],b["Core/Color/Palette.js"],b["Core/Scrollbar.js"],b["Core/Series/Series.js"],b["Core/Series/SeriesRegistry.js"],b["Core/Utilities.js"]], function(b,w,m,x,t,F,B,D,g,a,v){m=m.parse;var r=x.hasTouch,c=x.isTouchDevice,y=F.defaultOptions,p=v.addEvent,n=v.clamp,O=v.correctFloat,e=v.defined,q=v.destroyObjectProperties,l=v.erase,G=v.extend,M=v.find,K=v.isArray,H=v.isNumber,L=v.merge,E=v.pick,P=v.removeEvent,A=v.splat,u=function(h){for(var d=[],f=1;fG&&(this.grabbedLeft?z=u.toPixels(f-G-b,!0):this.grabbedRight&&(h=u.toPixels(d+G+b,!0)));this.zoomedMax= n(Math.max(z,h),0,q);this.zoomedMin=n(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(z,h),0,q);this.range=this.zoomedMax-this.zoomedMin;q=Math.round(this.zoomedMax);z=Math.round(this.zoomedMin);c&&(this.navigatorGroup.attr({visibility:"visible"}),A=A&&!this.hasDragged?"animate":"attr",this.drawMasks(z,q,g,A),this.drawOutline(z,q,g,A),this.navigatorOptions.handles.enabled&&(this.drawHandle(z,0,g,A),this.drawHandle(q,1,g,A)));this.scrollbar&&(g?(g=this.top-C,l=this.left-C+(c||!l.opposite?0: (l.titleOffset||0)+l.axisTitleMargin),C=a+2*C):(g=this.top+(c?this.height:-C),l=this.left-C),this.scrollbar.position(l,g,k,C),this.scrollbar.setRange(this.zoomedMin/(a||1),this.zoomedMax/(a||1)));this.rendered=!0}};h.prototype.addMouseEvents=function(){var d=this,f=d.chart,h=f.container,k=[],a,e;d.mouseMoveHandler=a=function(f){d.onMouseMove(f)};d.mouseUpHandler=e=function(f){d.onMouseUp(f)};k=d.getPartsEvents("mousedown");k.push(p(f.renderTo,"mousemove",a),p(h.ownerDocument,"mouseup",e));r&&(k.push(p(f.renderTo, "touchmove",a),p(h.ownerDocument,"touchend",e)),k.concat(d.getPartsEvents("touchstart")));d.eventsToUnbind=k;d.series&&d.series[0]&&k.push(p(d.series[0].xAxis,"foundExtremes",function(){f.navigator.modifyNavigatorAxisExtremes()}))};h.prototype.getPartsEvents=function(d){var f=this,h=[];["shades","handles"].forEach(function(z){f[z].forEach(function(k,C){h.push(p(k.element,d,function(d){f[z+"Mousedown"](d,C)}))})});return h};h.prototype.shadesMousedown=function(d,f){d=this.chart.pointer.normalize(d); var h=this.chart,k=this.xAxis,a=this.zoomedMin,u=this.left,b=this.size,l=this.range,c=d.chartX;h.inverted&&(c=d.chartY,u=this.top);if(1===f)this.grabbedCenter=c,this.fixedWidth=l,this.dragOffset=c-a;else{d=c-u-l/2;if(0===f)d=Math.max(0,d);else if(2===f&&d+l>=b)if(d=b-l,this.reversedExtremes){d-=l;var n=this.getUnionExtremes().dataMin}else var q=this.getUnionExtremes().dataMax;d!==a&&(this.fixedWidth=l,f=k.navigatorAxis.toFixedRange(d,d+l,n,q),e(f.min)&&h.xAxis[0].setExtremes(Math.min(f.min,f.max), Math.max(f.min,f.max),!0,null,{trigger:"navigator"}))}};h.prototype.handlesMousedown=function(d,f){this.chart.pointer.normalize(d);d=this.chart;var h=d.xAxis[0],k=this.reversedExtremes;0===f?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=k?h.min:h.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=k?h.max:h.min);d.fixedRange=null};h.prototype.onMouseMove=function(d){var f=this,h=f.chart,k=f.left,a=f.navigatorSize,e=f.range,u=f.dragOffset,l=h.inverted; d.touches&&0===d.touches[0].pageX||(d=h.pointer.normalize(d),h=d.chartX,l&&(k=f.top,h=d.chartY),f.grabbedLeft?(f.hasDragged=!0,f.render(0,0,h-k,f.otherHandlePos)):f.grabbedRight?(f.hasDragged=!0,f.render(0,0,f.otherHandlePos,h-k)):f.grabbedCenter&&(f.hasDragged=!0,ha+u-e&&(h=a+u-e),f.render(0,0,h-u,h-u+e)),f.hasDragged&&f.scrollbar&&E(f.scrollbar.options.liveRedraw,x.svg&&!c&&!this.chart.isBoosting)&&(d.DOMType=d.type,setTimeout(function(){f.onMouseUp(d)},0)))};h.prototype.onMouseUp=function(d){var f= this.chart,h=this.xAxis,k=this.scrollbar,a=d.DOMEvent||d,u=f.inverted,l=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!k||!k.hasDragged)||"scrollbar"===d.trigger){k=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var b=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var c=this.fixedExtreme;this.zoomedMax===this.size&&(c=this.reversedExtremes?k.dataMin:k.dataMax);0===this.zoomedMin&&(b=this.reversedExtremes?k.dataMax:k.dataMin);h=h.navigatorAxis.toFixedRange(this.zoomedMin, this.zoomedMax,b,c);e(h.min)&&f.xAxis[0].setExtremes(Math.min(h.min,h.max),Math.max(h.min,h.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:a})}"mousemove"!==d.DOMType&&"touchmove"!==d.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null);this.navigatorEnabled&&H(this.zoomedMin)&&H(this.zoomedMax)&&(f=Math.round(this.zoomedMin),d=Math.round(this.zoomedMax), this.shades&&this.drawMasks(f,d,u,l),this.outline&&this.drawOutline(f,d,u,l),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(f,0,u,l),this.drawHandle(d,1,u,l)))};h.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(d){d()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};h.prototype.removeBaseSeriesEvents=function(){var d=this.baseSeries||[];this.navigatorEnabled&&d[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&& d.forEach(function(d){P(d,"updatedData",this.updatedDataHandler)},this),d[0].xAxis&&P(d[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};h.prototype.init=function(d){var f=d.options,h=f.navigator,k=h.enabled,a=f.scrollbar,e=a.enabled;f=k?h.height:0;var l=e?a.height:0;this.handles=[];this.shades=[];this.chart=d;this.setBaseSeries();this.height=f;this.scrollbarHeight=l;this.scrollbarEnabled=e;this.navigatorEnabled=k;this.navigatorOptions=h;this.scrollbarOptions=a;this.outlineHeight=f+l;this.opposite= E(h.opposite,!(k||!d.inverted));var c=this;k=c.baseSeries;a=d.xAxis.length;e=d.yAxis.length;var n=k&&k[0]&&k[0].xAxis||d.xAxis[0]||{options:{}};d.isDirtyBox=!0;c.navigatorEnabled?(c.xAxis=new b(d,L({breaks:n.options.breaks,ordinal:n.options.ordinal},h.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:a,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},d.inverted?{offsets:[l,0,-l,0],width:f}:{offsets:[0, -l,0,l],height:f})),c.yAxis=new b(d,L(h.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:e,isInternal:!0,reversed:E(h.yAxis&&h.yAxis.reversed,d.yAxis[0]&&d.yAxis[0].reversed,!1),zoomEnabled:!1},d.inverted?{width:f}:{height:f})),k||h.series.data?c.updateNavigatorSeries(!1):0===d.series.length&&(c.unbindRedraw=p(d,"beforeRedraw",function(){0a.indexOf(f)?(f&&(P(f,"updatedData",h.updatedDataHandler),delete f.navigatorSeries), d.chart&&d.destroy(),!1):!0});a&&a.length&&a.forEach(function(d){var z=d.navigatorSeries,C=G({color:d.color,visible:d.visible},K(c)?y.navigator.series:c);z&&!1===h.navigatorOptions.adaptToUpdatedData||(b.name="Navigator "+a.length,e=d.options||{},l=e.navigatorOptions||{},C.dataLabels=A(C.dataLabels),u=L(e,b,C,l),u.pointRange=E(C.pointRange,l.pointRange,y.plotOptions[u.type||"line"].pointRange),C=l.data||C.data,h.hasNavigatorData=h.hasNavigatorData||!!C,u.data=C||e.data&&e.data.slice(0),z&&z.options? z.update(u,f):(d.navigatorSeries=k.initSeries(u),d.navigatorSeries.baseSeries=d,n.push(d.navigatorSeries)))});if(c.data&&(!a||!a.length)||K(c))h.hasNavigatorData=!1,c=A(c),c.forEach(function(d,f){b.name="Navigator "+(n.length+1);u=L(y.navigator.series,{color:k.series[f]&&!k.series[f].options.isInternal&&k.series[f].color||k.options.colors[f]||k.options.colors[0]},b,d);u.data=d.data;u.data&&(h.hasNavigatorData=!0,n.push(k.initSeries(u)))});d&&this.addBaseSeriesEvents()};h.prototype.addBaseSeriesEvents= function(){var d=this,f=d.baseSeries||[];f[0]&&f[0].xAxis&&f[0].eventsToUnbind.push(p(f[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes));f.forEach(function(f){f.eventsToUnbind.push(p(f,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)}));f.eventsToUnbind.push(p(f,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)}));!1!==this.navigatorOptions.adaptToUpdatedData&&f.xAxis&&f.eventsToUnbind.push(p(f,"updatedData",this.updatedDataHandler)); f.eventsToUnbind.push(p(f,"remove",function(){this.navigatorSeries&&(l(d.series,this.navigatorSeries),e(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))},this)};h.prototype.getBaseSeriesMin=function(d){return this.baseSeries.reduce(function(d,h){return Math.min(d,h.xData?h.xData[0]:d)},d)};h.prototype.modifyNavigatorAxisExtremes=function(){var d=this.xAxis,f;"undefined"!==typeof d.getExtremes&&(!(f=this.getUnionExtremes(!0))||f.dataMin===d.min&&f.dataMax=== d.max||(d.min=f.dataMin,d.max=f.dataMax))};h.prototype.modifyBaseAxisExtremes=function(){var d=this.chart.navigator,f=this.getExtremes(),h=f.dataMin,k=f.dataMax;f=f.max-f.min;var a=d.stickToMin,e=d.stickToMax,u=E(this.options.overscroll,0),c=d.series&&d.series[0],l=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(a){var b=h;var n=b+f}e&&(n=k+u,a||(b=Math.max(h,n-f,d.getBaseSeriesMin(c&&c.xData?c.xData[0]:-Number.MAX_VALUE))));l&&(a||e)&&H(b)&&(this.min=this.userMin= b,this.max=this.userMax=n)}d.stickToMin=d.stickToMax=null};h.prototype.updatedDataHandler=function(){var d=this.chart.navigator,f=this.navigatorSeries,h=d.getBaseSeriesMin(this.xData[0]);d.stickToMax=d.reversedExtremes?0===Math.round(d.zoomedMin):Math.round(d.zoomedMax)>=Math.round(d.size);d.stickToMin=H(this.xAxis.min)&&this.xAxis.min<=h&&(!this.chart.fixedRange||!d.stickToMax);f&&!d.hasNavigatorData&&(f.options.pointStart=this.xData[0],f.setData(this.options.data,!1,null,!1))};h.prototype.addChartEvents= function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(p(this.chart,"redraw",function(){var d=this.navigator,f=d&&(d.baseSeries&&d.baseSeries[0]&&d.baseSeries[0].xAxis||this.xAxis[0]);f&&d.render(f.min,f.max)}),p(this.chart,"getMargins",function(){var d=this.navigator,f=d.opposite?"plotTop":"marginBottom";this.inverted&&(f=d.opposite?"marginRight":"plotLeft");this[f]=(this[f]||0)+(d.navigatorEnabled||!this.inverted?d.outlineHeight:0)+d.navigatorOptions.margin}))};h.prototype.destroy= function(){this.removeEvents();this.xAxis&&(l(this.chart.xAxis,this.xAxis),l(this.chart.axes,this.xAxis));this.yAxis&&(l(this.chart.yAxis,this.yAxis),l(this.chart.axes,this.yAxis));(this.series||[]).forEach(function(d){d.destroy&&d.destroy()});"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(d){this[d]&&this[d].destroy&&this[d].destroy();this[d]=null},this);[this.handles].forEach(function(d){q(d)},this)}; return h}();x.Navigator||(x.Navigator=k,t.compose(b),p(w,"beforeShowResetZoom",function(){var h=this.options,d=h.navigator,f=h.rangeSelector;if((d&&d.enabled||f&&f.enabled)&&(!c&&"x"===h.chart.zoomType||c&&"x"===h.chart.pinchType))return!1}),p(w,"beforeRender",function(){var h=this.options;if(h.navigator.enabled||h.scrollbar.enabled)this.scroller=this.navigator=new k(this)}),p(w,"afterSetChartSize",function(){var h=this.legend,d=this.navigator;if(d){var f=h&&h.options;var k=d.xAxis;var a=d.yAxis; var e=d.scrollbarHeight;this.inverted?(d.left=d.opposite?this.chartWidth-e-d.height:this.spacing[3]+e,d.top=this.plotTop+e):(d.left=this.plotLeft+e,d.top=d.navigatorOptions.top||this.chartHeight-d.height-e-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(f&&"bottom"===f.verticalAlign&&"proximate"!==f.layout&&f.enabled&&!f.floating?h.legendHeight+E(f.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0));k&&a&&(this.inverted?k.options.left=a.options.left= d.left:k.options.top=a.options.top=d.top,k.setAxisSize(),a.setAxisSize())}}),p(w,"update",function(h){var d=h.options.navigator||{},f=h.options.scrollbar||{};this.navigator||this.scroller||!d.enabled&&!f.enabled||(L(!0,this.options.navigator,d),L(!0,this.options.scrollbar,f),delete h.options.navigator,delete h.options.scrollbar)}),p(w,"afterUpdate",function(h){this.navigator||this.scroller||!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new k(this), E(h.redraw,!0)&&this.redraw(h.animation))}),p(w,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),p(g,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),w.prototype.callbacks.push(function(h){var d=h.navigator;d&&h.xAxis[0]&&(h=h.xAxis[0].getExtremes(),d.render(h.min,h.max))}));x.Navigator=k;return x.Navigator});I(b,"Core/Axis/OrdinalAxis.js",[b["Core/Axis/Axis.js"],b["Core/Globals.js"],b["Core/Series/Series.js"], b["Core/Utilities.js"],b["Core/Chart/Chart.js"]],function(b,w,m,x,t){var F=x.addEvent,B=x.css,D=x.defined,g=x.error,a=x.pick,v=x.timeUnits,r;(function(c){var b=function(){function c(a){this.index={};this.axis=a}c.prototype.beforeSetTickPositions=function(){var c=this.axis,b=c.ordinal,e=[],q,l=!1,g=c.getExtremes(),p=g.min,y=g.max,r,v=c.isXAxis&&!!c.options.breaks;g=c.options.ordinal;var E=Number.MAX_VALUE,B=c.chart.options.chart.ignoreHiddenSeries,A;if(g||v){c.series.forEach(function(h,d){q=[];if(!(B&& !1===h.visible||!1===h.takeOrdinalPosition&&!v)&&(e=e.concat(h.processedXData),u=e.length,e.sort(function(d,h){return d-h}),E=Math.min(E,a(h.closestPointRange,E)),u)){for(d=0;dk||y-e[e.length-1]>k)&&(l=!0)}else c.options.overscroll&&(2===u?E=e[1]-e[0]:1===u?(E=c.options.overscroll, e=[e[0],e[0]+E]):E=b.overscrollPointsRange);l||c.forceOrdinal?(c.options.overscroll&&(b.overscrollPointsRange=E,e=e.concat(b.getOverscrollPositions())),b.positions=e,k=c.ordinal2lin(Math.max(p,e[0]),!0),r=Math.max(c.ordinal2lin(Math.min(y,e[e.length-1]),!0),1),b.slope=y=(y-p)/(r-k),b.offset=p-k*y):(b.overscrollPointsRange=a(c.closestPointRange,b.overscrollPointsRange),b.positions=c.ordinal.slope=b.offset=void 0)}c.isOrdinal=g&&l;b.groupIntervalFactor=null};c.prototype.getExtendedPositions=function(){var a= this,c=a.axis,e=c.constructor.prototype,b=c.chart,l=c.series[0].currentDataGrouping,g=a.index,p=l?l.count+l.unitName:"raw",y=c.options.overscroll,r=c.getExtremes(),v;g||(g=a.index={});if(!g[p]){var E={series:[],chart:b,forceOrdinal:!1,getExtremes:function(){return{min:r.dataMin,max:r.dataMax+y}},getGroupPixelWidth:e.getGroupPixelWidth,getTimeTicks:e.getTimeTicks,options:{ordinal:!0},ordinal:{getGroupIntervalFactor:this.getGroupIntervalFactor},ordinal2lin:e.ordinal2lin,val2lin:e.val2lin};E.ordinal.axis= E;c.series.forEach(function(c){v={xAxis:E,xData:c.xData.slice(),chart:b,destroyGroupedData:w.noop,getProcessedData:m.prototype.getProcessedData};v.xData=v.xData.concat(a.getOverscrollPositions());v.options={dataGrouping:l?{enabled:!0,forced:!0,approximation:"open",units:[[l.unitName,[l.count]]]}:{enabled:!1}};E.series.push(v);c.processData.apply(v);v.closestPointRange!==v.basePointRange&&v.currentDataGrouping&&(E.forceOrdinal=!0)});c.ordinal.beforeSetTickPositions.apply({axis:E});g[p]=E.ordinal.positions}return g[p]}; c.prototype.getGroupIntervalFactor=function(a,c,e){e=e.processedXData;var b=e.length,l=[];var g=this.groupIntervalFactor;if(!g){for(g=0;gn.length||"undefined"===typeof c)return f.getTimeTicks.apply(f, arguments);var C=n.length;for(q=0;qe;n[q]5*p||G){if(n[q]>h){for(A=f.getTimeTicks(a,n[l],n[q],b);A.length&&A[0]<=h;)A.shift();A.length&&(h=A[A.length-1]);z.push(k.length);k=k.concat(A)}l=q+1}if(G)break}if(A){A=A.info;if(y&&A.unitRange<=v.hour){q=k.length-1;for(l=1;le?A-1:A;for(f=void 0;l--;)q=r[l],A=Math.abs(f-q),f&&A<.8*d&&(null===z||A<.8*z)?(u[k[l]]&&!u[k[l+1]]?(A=l+1,f=q):A=l,k.splice(A,1)):f=q}return k};e.lin2val=function(a,c){var e=this.ordinal,b=e.positions;if(b){var l=e.slope,g=e.offset;e=b.length-1;var n=void 0;if(c)0>a?a=b[0]:a>e?a=b[e]:(e=Math.floor(a),n=a-e);else for(;e--;)if(c=l*e+g,a>=c){l=l* (e+1)+g;n=(a-c)/(l-c);break}return"undefined"!==typeof n&&"undefined"!==typeof b[e]?b[e]+(n?n*(b[e+1]-b[e]):0):a}return a};e.val2lin=function(a,c){var e=this.ordinal,b=e.positions;if(b){var l=b.length,g,n=void 0;for(g=l;g--;)if(b[g]===a){n=g;break}for(g=l-1;g--;)if(a>b[g]||0===g){a=(a-b[g])/(b[g+1]-b[g]);n=g+a;break}c=c?n:e.slope*(n||0)+e.offset}else c=a;return c};e.ordinal2lin=e.val2lin;F(a,"afterInit",function(){this.ordinal||(this.ordinal=new c.Composition(this))});F(a,"foundExtremes",function(){this.isXAxis&& D(this.options.overscroll)&&this.max===this.dataMax&&(!this.chart.mouseIsDown||this.isInternal)&&(!this.eventArgs||this.eventArgs&&"navigator"!==this.eventArgs.trigger)&&(this.max+=this.options.overscroll,!this.isInternal&&D(this.userMin)&&(this.min+=this.options.overscroll))});F(a,"afterSetScale",function(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)});F(a,"initialAxisTranslation",function(){this.ordinal&&(this.ordinal.beforeSetTickPositions(), this.tickInterval=this.ordinal.postProcessTickInterval(this.tickInterval))});F(b,"pan",function(a){var c=this.xAxis[0],e=c.options.overscroll,b=a.originalEvent.chartX,g=this.options.chart.panning,n=!1;if(g&&"y"!==g.type&&c.options.ordinal&&c.series.length){var q=this.mouseDownX,p=c.getExtremes(),y=p.dataMax,A=p.min,u=p.max,k=void 0;k=this.hoverPoints;var h=c.closestPointRange||c.ordinal&&c.ordinal.overscrollPointsRange;q=(q-b)/(c.translationSlope*(c.ordinal.slope||h));h={ordinal:{positions:c.ordinal.getExtendedPositions()}}; var d=void 0,f=void 0,z=c.lin2val,C=c.val2lin,r=void 0;h.ordinal.positions?1q?(f=h,r=c.ordinal.positions?c:h):(f=c.ordinal.positions?c:h,r=h),d=r.ordinal.positions,y>d[d.length-1]&&d.push(y),this.fixedRange=u-A,k=c.navigatorAxis.toFixedRange(null,null,z.apply(f,[C.apply(f,[A,!0])+q,!0]),z.apply(r,[C.apply(r,[u,!0])+q,!0])),k.min>=Math.min(p.dataMin,A)&&k.max<=Math.max(y,u)+e&&c.setExtremes(k.min,k.max,!0,!1,{trigger:"pan"}),this.mouseDownX= b,B(this.container,{cursor:"move"})):n=!0}else n=!0;n||g&&/y/.test(g.type)?e&&(c.max=c.dataMax+e):a.preventDefault()});F(y,"updatedData",function(){var a=this.xAxis;a&&a.options.ordinal&&delete a.ordinal.index})}})(r||(r={}));r.compose(b,t,m);return r});I(b,"Core/Axis/BrokenAxis.js",[b["Core/Axis/Axis.js"],b["Core/Series/Series.js"],b["Extensions/Stacking.js"],b["Core/Utilities.js"]],function(b,w,m,x){var t=x.addEvent,F=x.find,B=x.fireEvent,D=x.isArray,g=x.isNumber,a=x.pick,v=function(){function r(a){this.hasBreaks= !1;this.axis=a}r.isInBreak=function(a,b){var c=a.repeat||Infinity,g=a.from,r=a.to-a.from;b=b>=g?(b-g)%c:c-(g-b)%c;return a.inclusive?b<=r:b=a)break;else n.to=a)break;else if(r.isInBreak(v,a)){b-=a-v.from;break}}return b};r.prototype.findBreakAt=function(a,b){return F(b,function(c){return c.fromD;)A-=v;for(;Aa.to||p>a.from&&va.from&&va.from&&v>a.to&&va&&c>=this.basePointRange&&(a=c),p=void 0;g--;)p&&!1!==p.visible||(p=b[g+1]),c=b[g],!1!==p.visible&&!1!==c.visible&&(p.x-c.x>a&&(p=(c.x+p.x)/2,b.splice(g+1,0,{isNull:!0,x:p}), l.stacking&&this.options.stacking&&(p=l.stacking.stacks[this.stackKey][p]=new m(l,l.options.stackLabels,!1,p,this.stack),p.total=0)),p=c);return this.getGraphPath(b)};t(c,"init",function(){this.brokenAxis||(this.brokenAxis=new v(this))});t(c,"afterInit",function(){"undefined"!==typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)});t(c,"afterSetTickPositions",function(){var a=this.brokenAxis;if(a&&a.hasBreaks){var c=this.tickPositions,b=this.tickPositions.info,g=[],l;for(l=0;l< c.length;l++)a.isInAnyBreak(c[l])||g.push(c[l]);this.tickPositions=g;this.tickPositions.info=b}});t(c,"afterSetOptions",function(){this.brokenAxis&&this.brokenAxis.hasBreaks&&(this.options.ordinal=!1)});t(b,"afterGeneratePoints",function(){var a=this.options.connectNulls,c=this.points,b=this.xAxis,g=this.yAxis;if(this.isDirty)for(var l=c.length;l--;){var p=c[l],v=!(null===p.y&&!1===a)&&(b&&b.brokenAxis&&b.brokenAxis.isInAnyBreak(p.x,!0)||g&&g.brokenAxis&&g.brokenAxis.isInAnyBreak(p.y,!0));p.visible= v?!1:!1!==p.options.visible}});t(b,"afterRender",function(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,a(this.pointArrayMap,["y"]))})};return b}();x.compose(b,w);return x});I(b,"masters/modules/broken-axis.src.js",[],function(){});I(b,"Extensions/DataGrouping.js",[b["Core/Axis/Axis.js"],b["Core/Axis/DateTimeAxis.js"],b["Core/FormatUtilities.js"],b["Core/Globals.js"],b["Core/Series/Point.js"],b["Core/Series/Series.js"],b["Core/Tooltip.js"],b["Core/Options.js"],b["Core/Utilities.js"]], function(b,w,m,x,t,F,B,D,g){var a=m.format,v=F.prototype;m=g.addEvent;var r=g.arrayMax,c=g.arrayMin,y=g.correctFloat,p=g.defined,n=g.error,N=g.extend,e=g.isNumber,q=g.merge,l=g.pick;"";var G=x.approximations={sum:function(a){var c=a.length;if(!c&&a.hasNulls)var k=null;else if(c)for(k=0;c--;)k+=a[c];return k},average:function(a){var c=a.length;a=G.sum(a);e(a)&&c&&(a=y(a/c));return a},averages:function(){var a=[];[].forEach.call(arguments,function(c){a.push(G.average(c))});return"undefined"===typeof a[0]? void 0:a},open:function(a){return a.length?a[0]:a.hasNulls?null:void 0},high:function(a){return a.length?r(a):a.hasNulls?null:void 0},low:function(a){return a.length?c(a):a.hasNulls?null:void 0},close:function(a){return a.length?a[a.length-1]:a.hasNulls?null:void 0},ohlc:function(a,c,k,h){a=G.open(a);c=G.high(c);k=G.low(k);h=G.close(h);if(e(a)||e(c)||e(k)||e(h))return[a,c,k,h]},range:function(a,c){a=G.low(a);c=G.high(c);if(e(a)||e(c))return[a,c];if(null===a&&null===c)return null}};g=function(a,c, k,h){var d=this,f=d.data,b=d.options&&d.options.data,l=[],g=[],u=[],n=a.length,v=!!c,r=[],y=d.pointArrayMap,A=y&&y.length,D=["x"].concat(y||["y"]),B=this.options.dataGrouping&&this.options.dataGrouping.groupAll,m=0,x=0,t;h="function"===typeof h?h:G[h]?G[h]:G[d.getDGApproximation&&d.getDGApproximation()||"average"];A?y.forEach(function(){r.push([])}):r.push([]);var E=A||1;for(t=0;t<=n&&!(a[t]>=k[0]);t++);for(t;t<=n;t++){for(;"undefined"!==typeof k[m+1]&&a[t]>=k[m+1]||t===n;){var w=k[m];d.dataGroupInfo= {start:B?x:d.cropStart+x,length:r[0].length};var F=h.apply(d,r);d.pointClass&&!p(d.dataGroupInfo.options)&&(d.dataGroupInfo.options=q(d.pointClass.prototype.optionsToObject.call({series:d},d.options.data[d.cropStart+x])),D.forEach(function(a){delete d.dataGroupInfo.options[a]}));"undefined"!==typeof F&&(l.push(w),g.push(F),u.push(d.dataGroupInfo));x=t;for(w=0;w=a[0]){t=this.groupMap[0].start;G=this.groupMap[0].length;var E=void 0;e(t)&&e(G)&&(E=t+(G-1));a[0]={middle:a[0]+.5*m,end:a[0]+m,firstPoint:this.xData[0],lastPoint:E&&this.xData[E]}[x]}D&& "start"!==D&&m&&a[B]>=J-m&&(J=this.groupMap[this.groupMap.length-1].start,a[B]={middle:a[B]+.5*m,end:a[B]+m,firstPoint:J&&this.xData[J],lastPoint:this.xData[this.xData.length-1]}[D])}for(J=1;Jb.max){if(!p(b.options.max)&&e(b.dataMax)&&b.max>=b.dataMax||b.max===b.dataMax)b.max=Math.max(h[h.length-1],b.max);b.dataMax=Math.max(h[h.length-1],b.dataMax)}}c.groupAll&&(c=this.cropData(g,r,b.min,b.max,1),g=c.xData,r=c.yData,this.cropStart=c.start);this.processedXData=g;this.processedYData=r}else this.groupMap=null;this.hasGroupedData=d;this.currentDataGrouping=J;this.preventGraphAnimation= (f&&f.totalRange)!==(J&&J.totalRange)}};v.destroyGroupedData=function(){this.groupedData&&(this.groupedData.forEach(function(a,c){a&&(this.groupedData[c]=a.destroy?a.destroy():null)},this),this.groupedData.length=0)};v.generatePoints=function(){H.apply(this);this.destroyGroupedData();this.groupedData=this.hasGroupedData?this.points:null};m(t,"update",function(){if(this.dataGroup)return n(24,!1,this.series.chart),!1});m(B,"headerFormatter",function(c){var b=this.chart,k=b.time,h=c.labelConfig,d=h.series, f=d.tooltipOptions,z=d.options.dataGrouping,g=f.xDateFormat,l=d.xAxis,p=f[(c.isFooter?"footer":"header")+"Format"];if(l&&"datetime"===l.options.type&&z&&e(h.key)){var n=d.currentDataGrouping;z=z.dateTimeLabelFormats||L.dateTimeLabelFormats;if(n)if(f=z[n.unitName],1===n.count)g=f[0];else{g=f[1];var r=f[2]}else!g&&z&&(g=this.getXDateFormat(h,f,l));g=k.dateFormat(g,h.key);r&&(g+=k.dateFormat(r,h.key+n.totalRange-1));d.chart.styledMode&&(p=this.styledModeFormat(p));c.text=a(p,{point:N(h.point,{key:g}), series:d},b);c.preventDefault()}});m(F,"destroy",v.destroyGroupedData);m(F,"afterSetOptions",function(a){a=a.options;var c=this.type,k=this.chart.options.plotOptions,h=D.defaultOptions.plotOptions[c].dataGrouping,d=this.useCommonDataGrouping&&L;if(E[c]||d){h||(h=q(L,E[c]));var f=this.chart.rangeSelector;a.dataGrouping=q(d,h,k.series&&k.series.dataGrouping,k[c].dataGrouping,this.userOptions.dataGrouping,!a.isInternal&&f&&e(f.selected)&&f.buttonOptions[f.selected].dataGrouping)}});m(b,"afterSetScale", function(){this.series.forEach(function(a){a.hasProcessed=!1})});b.prototype.getGroupPixelWidth=function(){var a=this.series,c=a.length,k,h=0,d=!1,f;for(k=c;k--;)(f=a[k].options.dataGrouping)&&(h=Math.max(h,l(f.groupPixelWidth,L.groupPixelWidth)));for(k=c;k--;)(f=a[k].options.dataGrouping)&&a[k].hasProcessed&&(c=(a[k].processedXData||a[k].data).length,a[k].groupPixelWidth||c>this.chart.plotSizeX/h||c&&f.forced)&&(d=!0);return d?h:0};b.prototype.setDataGrouping=function(a,c){var k;c=l(c,!0);a||(a= {forced:!1,units:null});if(this instanceof b)for(k=this.series.length;k--;)this.series[k].update({dataGrouping:a},!1);else this.chart.options.series.forEach(function(h){h.dataGrouping=a},!1);this.ordinal&&(this.ordinal.slope=void 0);c&&this.chart.redraw()};x.dataGrouping=M;"";return M});I(b,"Series/OHLC/OHLCPoint.js",[b["Core/Series/SeriesRegistry.js"]],function(b){var w=this&&this.__extends||function(){var b=function(m,t){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,t){b.__proto__= t}||function(b,t){for(var m in t)t.hasOwnProperty(m)&&(b[m]=t[m])};return b(m,t)};return function(m,t){function w(){this.constructor=m}b(m,t);m.prototype=null===t?Object.create(t):(w.prototype=t.prototype,new w)}}();return function(b){function m(){var m=null!==b&&b.apply(this,arguments)||this;m.close=void 0;m.high=void 0;m.low=void 0;m.open=void 0;m.options=void 0;m.plotClose=void 0;m.plotOpen=void 0;m.series=void 0;return m}w(m,b);m.prototype.getClassName=function(){return b.prototype.getClassName.call(this)+ (this.open\u25cf {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
'},threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0});return g}(t);F(m.prototype,{animate:null,directTouch:!1,pointArrayMap:["open","high", "low","close"],pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},pointValKey:"close"});m.prototype.pointClass=b;w.registerSeriesType("ohlc",m);"";return m});I(b,"Series/Candlestick/CandlestickSeries.js",[b["Core/Options.js"],b["Core/Color/Palette.js"],b["Core/Series/SeriesRegistry.js"],b["Core/Utilities.js"]],function(b,w,m,x){var t=this&&this.__extends||function(){var a=function(b,g){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var c in b)b.hasOwnProperty(c)&& (a[c]=b[c])};return a(b,g)};return function(b,g){function c(){this.constructor=b}a(b,g);b.prototype=null===g?Object.create(g):(c.prototype=g.prototype,new c)}}(),F=b.defaultOptions;b=m.seriesTypes;var B=b.column,D=b.ohlc,g=x.merge;x=function(a){function b(){var b=null!==a&&a.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}t(b,a);b.prototype.pointAttribs=function(a,b){var c=B.prototype.pointAttribs.call(this,a,b),g=this.options,n=a.openr)break}}}m.forEach(function(a,g){a.plotX+=G;if("undefined"===typeof a.plotY||e)0<=a.plotX&&a.plotX<=q.len?e?(a.plotY=q.translate(a.x,0,1,0,1),a.plotX=F(a.y)?l.translate(a.y,0,0,0,1):0):a.plotY=(q.opposite?0:b.yAxis.len)+q.offset:a.shapeArgs={};if((c=m[g-1])&&c.plotX===a.plotX){"undefined"=== typeof c.stackIndex&&(c.stackIndex=0);var n=c.stackIndex+1}a.stackIndex=n});this.onSeries=t}}});I(b,"Series/Flags/FlagsSymbols.js",[b["Core/Globals.js"],b["Core/Renderer/SVG/SVGRenderer.js"]],function(b,w){function m(b){F[b+"pin"]=function(m,g,a,t,r){var c=r&&r.anchorX;r=r&&r.anchorY;"circle"===b&&t>a&&(m-=Math.round((t-a)/2),a=t);var v=F[b](m,g,a,t);if(c&&r){var p=c;"circle"===b?p=m+a/2:(m=v[0],a=v[1],"M"===m[0]&&"L"===a[0]&&(p=(m[1]+a[1])/2));v.push(["M",p,g>r?g:g+t],["L",c,r]);v=v.concat(F.circle(c- 1,r-1,2,2))}return v}}var x=b.Renderer,t=b.VMLRenderer,F=w.prototype.symbols;F.flag=function(b,m,g,a,t){var r=t&&t.anchorX||b;t=t&&t.anchorY||m;var c=F.circle(r-1,t-1,2,2);c.push(["M",r,t],["L",b,m+a],["L",b,m],["L",b+g,m],["L",b+g,m+a],["L",b,m+a],["Z"]);return c};m("circle");m("square");x===t&&["circlepin","flag","squarepin"].forEach(function(b){t.prototype.symbols[b]=F[b]});return F});I(b,"Series/Flags/FlagsSeries.js",[b["Series/Flags/FlagsPoint.js"],b["Core/Globals.js"],b["Mixins/OnSeries.js"], b["Core/Color/Palette.js"],b["Core/Series/SeriesRegistry.js"],b["Core/Renderer/SVG/SVGElement.js"],b["Core/Utilities.js"]],function(b,w,m,x,t,F,B){var D=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])};return a(b,c)};return function(b,c){function e(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(e.prototype=c.prototype,new e)}}(), g=w.noop,a=t.series,v=t.seriesTypes.column,r=B.addEvent,c=B.defined,y=B.extend,p=B.merge,n=B.objectEach,N=B.wrap;B=function(b){function e(){var a=null!==b&&b.apply(this,arguments)||this;a.data=void 0;a.options=void 0;a.points=void 0;return a}D(e,b);e.prototype.animate=function(a){a&&this.setClip()};e.prototype.drawPoints=function(){var a=this.points,b=this.chart,e=b.renderer,g=b.inverted,m=this.options,r=m.y,q,t=this.yAxis,v={},u=[];for(q=a.length;q--;){var k=a[q];var h=(g?k.plotY:k.plotX)>this.xAxis.len; var d=k.plotX;var f=k.stackIndex;var z=k.options.shape||m.shape;var C=k.plotY;"undefined"!==typeof C&&(C=k.plotY+r-("undefined"!==typeof f&&f*m.stackDistance));k.anchorX=f?void 0:k.plotX;var Q=f?void 0:k.plotY;var y="flag"!==z;f=k.graphic;"undefined"!==typeof C&&0<=d&&!h?(f&&k.hasNewShapeType()&&(f=f.destroy()),f||(f=k.graphic=e.label("",null,null,z,null,null,m.useHTML).addClass("highcharts-point").add(this.markerGroup),k.graphic.div&&(k.graphic.div.point=k),f.isNew=!0),f.attr({align:y?"center":"left", width:m.width,height:m.height,"text-align":m.textAlign}),b.styledMode||f.attr(this.pointAttribs(k)).css(p(m.style,k.style)).shadow(m.shadow),0m-l,Q=k=864E5*{month:28,year:365}[e]*z-w&&c-36E5<=864E5*{month:31,year:366}[e]*z+w?k=!0:"ytd"===e?(k=n-u+w===c,y=!b):"all"===e&&(k=f.max-f.min>=m-l,x=!b&&r&&k);e=!t&&(J||Q||x||g);z=b&&k||k&&!r&&!y||b&&a.frozenStates;e?q=3:z&&(r=!0,q=2);C.state!==q&&(C.setState(q),d&&(d.options[h+1].disabled=e,2===q&&(d.selectedIndex=h+1)),0===q&&p===h&&a.setSelected())})};u.prototype.computeButtonRange=function(a){var b=a.type,d=a.count||1,c={millisecond:1,second:1E3,minute:6E4, hour:36E5,day:864E5,week:6048E5};if(c[b])a._range=c[b]*d;else if("month"===b||"year"===b)a._range=864E5*{month:30,year:365}[b]*d;a._offsetMin=K(a.offsetMin,0);a._offsetMax=K(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};u.prototype.getInputValue=function(a){a="min"===a?this.minInput:this.maxInput;var b=this.chart.options.rangeSelector,d=this.chart.time;return a?("text"===a.type&&b.inputDateParser||this.defaultInputDateParser)(a.value,d.useUTC,d):0};u.prototype.setInputValue=function(a,b){var d= this.options,f=this.chart.time,h="min"===a?this.minInput:this.maxInput;a="min"===a?this.minDateBox:this.maxDateBox;if(h){var k=h.getAttribute("data-hc-time");k=c(k)?Number(k):void 0;c(b)&&(c(k)&&h.setAttribute("data-hc-time-previous",k),h.setAttribute("data-hc-time",b),k=b);h.value=f.dateFormat(this.inputTypeFormats[h.type]||d.inputEditDateFormat,k);a&&a.attr({text:f.dateFormat(d.inputDateFormat,k)})}};u.prototype.setInputExtremes=function(a,b,d){if(a="min"===a?this.minInput:this.maxInput){var c= this.inputTypeFormats[a.type],h=this.chart.time;c&&(b=h.dateFormat(c,b),a.min!==b&&(a.min=b),d=h.dateFormat(c,d),a.max!==d&&(a.max=d))}};u.prototype.showInput=function(a){var b="min"===a?this.minDateBox:this.maxDateBox;if((a="min"===a?this.minInput:this.maxInput)&&b&&this.inputGroup){var d="text"===a.type,c=this.inputGroup,k=c.translateX;c=c.translateY;var e=this.options.inputBoxWidth;r(a,{width:d?b.width+(e?-2:20)+"px":"auto",height:d?b.height-2+"px":"auto",border:"2px solid silver"});d&&e?r(a,{left:k+ b.x+"px",top:c+"px"}):r(a,{left:Math.min(Math.round(b.x+k-(a.offsetWidth-b.width)/2),this.chart.chartWidth-a.offsetWidth)+"px",top:c-1-(a.offsetHeight-b.height)/2+"px"})}};u.prototype.hideInput=function(a){(a="min"===a?this.minInput:this.maxInput)&&r(a,{top:"-9999em",border:0,width:"1px",height:"1px"})};u.prototype.defaultInputDateParser=function(a,b,d){var c=a.split("/").join("-").split(" ").join("T");-1===c.indexOf("T")&&(c+="T00:00");if(b)c+="Z";else{var h;if(h=m.isSafari)h=c,h=!(6=h?"+"+I(-h)+":00":"-"+I(h)+":00")}c=Date.parse(c);q(c)||(a=a.split("-"),c=Date.UTC(H(a[0]),H(a[1])-1,H(a[2])));d&&b&&q(c)&&(c+=d.getTimezoneOffset(c));return c};u.prototype.drawInput=function(a){function b(){var b=e.getInputValue(a),d=c.xAxis[0],f=c.scroller&&c.scroller.xAxis?c.scroller.xAxis:d,h=f.dataMin;f=f.dataMax;var k=e.maxInput,g=e.minInput;b!==Number(x.getAttribute("data-hc-time-previous"))&&q(b)&& (x.setAttribute("data-hc-time-previous",b),J&&k&&q(h)?b>Number(k.getAttribute("data-hc-time"))?b=void 0:bf&&(b=f)),"undefined"!==typeof b&&d.setExtremes(J?b:d.min,J?d.max:b,void 0,void 0,{trigger:"rangeSelectorInput"}))}var c=this.chart,f=this.div,k=this.inputGroup,e=this,u=c.renderer.style||{},p=c.renderer,w=c.options.rangeSelector,J="min"===a,y=g.lang[J?"rangeSelectorFrom":"rangeSelectorTo"];y=p.label(y,0).addClass("highcharts-range-label").attr({padding:y? 2:0}).add(k);p=p.label("",0).addClass("highcharts-range-input").attr({padding:2,width:w.inputBoxWidth,height:w.inputBoxHeight,"text-align":"center"}).on("click",function(){e.showInput(a);e[a+"Input"].focus()});c.styledMode||p.attr({stroke:w.inputBoxBorderColor,"stroke-width":1});p.add(k);var x=v("input",{name:a,className:"highcharts-range-selector"},void 0,f);x.setAttribute("type",D(w.inputDateFormat||"%b %e, %Y"));c.styledMode||(y.css(l(u,w.labelStyle)),p.css(l({color:t.neutralColor80},u,w.inputStyle)), r(x,n({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:u.fontSize,fontFamily:u.fontFamily,top:"-9999em"},w.inputStyle)));x.onfocus=function(){e.showInput(a)};x.onblur=function(){x===m.doc.activeElement&&b();e.hideInput(a);e.setInputValue(a);x.blur()};var A=!1;x.onchange=function(){A||(b(),e.hideInput(a),x.blur())};x.onkeypress=function(a){13===a.keyCode&&b()};x.onkeydown=function(a){A=!0;38!==a.keyCode&&40!==a.keyCode|| b()};x.onkeyup=function(){A=!1};return{dateBox:p,input:x,label:y}};u.prototype.getPosition=function(){var a=this.chart,b=a.options.rangeSelector;a="top"===b.verticalAlign?a.plotTop-a.axisOffset[0]:0;return{buttonTop:a+b.buttonPosition.y,inputTop:a+b.inputPosition.y-10}};u.prototype.getYTDExtremes=function(a,b,c){var d=this.chart.time,h=new d.Date(a),k=d.get("FullYear",h);c=c?d.Date.UTC(k,0,1):+new d.Date(k,0,1);b=Math.max(b,c);h=h.getTime();return{max:Math.min(a||h,h),min:b}};u.prototype.render=function(a, b){var d=this.chart,f=d.renderer,h=d.container,k=d.options,e=k.rangeSelector,g=K(k.chart.style&&k.chart.style.zIndex,0)+1;k=e.inputEnabled;if(!1!==e.enabled){this.rendered||(this.group=f.g("range-selector-group").attr({zIndex:7}).add(),this.div=v("div",void 0,{position:"relative",height:0,zIndex:g}),this.buttonOptions.length&&this.renderButtons(),h.parentNode&&h.parentNode.insertBefore(this.div,h),k&&(this.inputGroup=f.g("input-group").add(this.group),f=this.drawInput("min"),this.minDateBox=f.dateBox, this.minLabel=f.label,this.minInput=f.input,f=this.drawInput("max"),this.maxDateBox=f.dateBox,this.maxLabel=f.label,this.maxInput=f.input));if(k&&(this.setInputValue("min",a),this.setInputValue("max",b),a=d.scroller&&d.scroller.getUnionExtremes()||d.xAxis[0]||{},c(a.dataMin)&&c(a.dataMax)&&(d=d.xAxis[0].minRange||0,this.setInputExtremes("min",a.dataMin,Math.min(a.dataMax,this.getInputValue("max"))-d),this.setInputExtremes("max",Math.max(a.dataMin,this.getInputValue("min"))+d,a.dataMax)),this.inputGroup)){var l= 0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(a){if(a){var b=a.getBBox().width;b&&(a.attr({x:l}),l+=b+e.inputSpacing)}})}this.alignElements();this.rendered=!0}};u.prototype.renderButtons=function(){var b=this,c=this.buttons,d=this.options,f=g.lang,z=this.chart.renderer,u=l(d.buttonTheme),n=u&&u.states,p=u.width||28;delete u.width;delete u.states;this.buttonGroup=z.g("range-selector-buttons").add(this.group);var r=this.dropdown=v("select",void 0,{position:"absolute", width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:.0001},this.div);a(r,"touchstart",function(){r.style.fontSize="16px"});[[m.isMS?"mouseover":"mouseenter"],[m.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(d){var f=d[0],h=d[1];a(r,f,function(){var a=c[b.currentButtonIndex()];a&&e(a.element,h||f)})});this.zoomText=z.text(f.rangeSelectorZoom,0,15).add(this.buttonGroup);this.chart.styledMode||(this.zoomText.css(d.labelStyle),u["stroke-width"]=K(u["stroke-width"], 0));v("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,r);this.buttonOptions.forEach(function(a,d){v("option",{textContent:a.title||a.text},void 0,r);c[d]=z.button(a.text,0,0,function(c){var f=a.events&&a.events.click,h;f&&(h=f.call(a,c));!1!==h&&b.clickButton(d);b.isActive=!0},u,n&&n.hover,n&&n.select,n&&n.disabled).attr({"text-align":"center",width:p}).add(b.buttonGroup);a.title&&c[d].attr("title",a.title)})};u.prototype.alignElements=function(){var a=this,b=this.buttonGroup,c=this.buttons, f=this.chart,e=this.group,g=this.inputGroup,l=this.options,u=this.zoomText,m=f.options,n=m.exporting&&!1!==m.exporting.enabled&&m.navigation&&m.navigation.buttonOptions;m=l.buttonPosition;var p=l.inputPosition,r=l.verticalAlign,q=function(b,c){return n&&a.titleCollision(f)&&"top"===r&&"right"===c.align&&c.y-b.getBBox().height-12<(n.y||0)+(n.height||0)+f.spacing[0]?-40:0},t=f.plotLeft;if(e&&m&&p){var v=m.x-f.spacing[3];if(b){this.positionButtons();if(!this.initialButtonGroupWidth){var w=0;u&&(w+=u.getBBox().width+ 5);c.forEach(function(a,b){w+=a.width;b!==c.length-1&&(w+=l.buttonSpacing)});this.initialButtonGroupWidth=w}t-=f.spacing[3];this.updateButtonStates();u=q(b,m);this.alignButtonGroup(u);e.placed=b.placed=f.hasLoaded}b=0;g&&(b=q(g,p),"left"===p.align?v=t:"right"===p.align&&(v=-Math.max(f.axisOffset[1],-b)),g.align({y:p.y,width:g.getBBox().width,align:p.align,x:p.x+v-2},!0,f.spacingBox),g.placed=f.hasLoaded);this.handleCollision(b);e.align({verticalAlign:r},!0,f.spacingBox);g=e.alignAttr.translateY;b= e.getBBox().height+20;q=0;"bottom"===r&&(q=(q=f.legend&&f.legend.options)&&"bottom"===q.verticalAlign&&q.enabled&&!q.floating?f.legend.legendHeight+K(q.margin,10):0,b=b+q-20,q=g-b-(l.floating?0:l.y)-(f.titleOffset?f.titleOffset[2]:0)-10);if("top"===r)l.floating&&(q=0),f.titleOffset&&f.titleOffset[0]&&(q=f.titleOffset[0]),q+=f.margin[0]-f.spacing[0]||0;else if("middle"===r)if(p.y===m.y)q=g;else if(p.y||m.y)q=0>p.y||0>m.y?q-Math.min(p.y,m.y):g-b;e.translate(l.x,l.y+Math.floor(q));m=this.minInput;p= this.maxInput;g=this.dropdown;l.inputEnabled&&m&&p&&(m.style.marginTop=e.translateY+"px",p.style.marginTop=e.translateY+"px");g&&(g.style.marginTop=e.translateY+"px")}};u.prototype.alignButtonGroup=function(a,b){var c=this.chart,f=this.buttonGroup,h=this.options.buttonPosition,k=c.plotLeft-c.spacing[3],e=h.x-c.spacing[3];"right"===h.align?e+=a-k:"center"===h.align&&(e-=k/2);f&&f.align({y:h.y,width:K(b,this.initialButtonGroupWidth),align:h.align,x:e},!0,c.spacingBox)};u.prototype.positionButtons=function(){var a= this.buttons,b=this.chart,c=this.options,f=this.zoomText,e=b.hasLoaded?"animate":"attr",g=c.buttonPosition,l=b.plotLeft,m=l;f&&"hidden"!==f.visibility&&(f[e]({x:K(l+g.x,l)}),m+=g.x+f.getBBox().width+5);this.buttonOptions.forEach(function(b,d){if("hidden"!==a[d].visibility)a[d][e]({x:m}),m+=a[d].width+c.buttonSpacing;else a[d][e]({x:l})})};u.prototype.handleCollision=function(a){var b=this,c=this.chart,f=this.buttonGroup,e=this.inputGroup,k=this.options,g=k.buttonPosition,l=k.dropdown,m=k.inputPosition; k=function(){var a=0;b.buttons.forEach(function(b){b=b.getBBox();b.width>a&&(a=b.width)});return a};var u=function(b){if(e&&f){var c=e.alignAttr.translateX+e.alignOptions.x-a+e.getBBox().x+2,d=e.alignOptions.width,h=f.alignAttr.translateX+f.getBBox().x;return h+b>c&&c+d>h&&g.y=-a?0:-a),translateY:e.alignAttr.translateY+f.getBBox().height+10})};if(f){if("always"===l){this.collapseButtons(a); u(k())&&n();return}"never"===l&&this.expandButtons()}e&&f?m.align===g.align||u(this.initialButtonGroupWidth+20)?"responsive"===l?(this.collapseButtons(a),u(k())&&n()):n():"responsive"===l&&this.expandButtons():f&&"responsive"===l&&(this.initialButtonGroupWidth>c.plotWidth?this.collapseButtons(a):this.expandButtons())};u.prototype.collapseButtons=function(a){var b=this.buttons,c=this.buttonOptions,f=this.dropdown,e=this.options,k=this.zoomText,g=function(a){return{text:a?a+" \u25be":"\u25be",width:"auto", paddingLeft:8,paddingRight:8}};k&&k.hide();var l=!1;c.forEach(function(a,c){c=b[c];2!==c.state?c.hide():(c.show(),c.attr(g(a.text)),l=!0)});l||(f&&(f.selectedIndex=0),b[0].show(),b[0].attr(g(this.zoomText&&this.zoomText.textStr)));c=e.buttonPosition.align;this.positionButtons();"right"!==c&&"center"!==c||this.alignButtonGroup(a,b[this.currentButtonIndex()].getBBox().width);this.showDropdown()};u.prototype.expandButtons=function(){var a=this.buttons,b=this.buttonOptions,c=this.options,f=this.zoomText; this.hideDropdown();f&&f.show();b.forEach(function(b,d){d=a[d];d.show();d.attr({text:b.text,width:c.buttonTheme.width||28,paddingLeft:"unset",paddingRight:"unset"});2>d.state&&d.setState(0)});this.positionButtons()};u.prototype.currentButtonIndex=function(){var a=this.dropdown;return a&&0e&&0>f||0k+c.width)&&(x?m=p=M(m,k,k+c.width):b=!0);b||r.push(["M",m,n],["L",p,q])}):A.forEach(function(a){var b;m=a.pos;p=m+a.len;n=q=Math.round(l+c.height-B);"pass"!==x&&(nl+c.height)&&(x?n=q=M(n,l,l+c.height):b=!0);b||r.push(["M",m,n],["L",p,q])}));a.path=0A&&t=c&&(x=-(q.translateX+g.width-c));q.attr({x:h+x,y:n,anchorX:k?h:this.opposite?0:e.chartWidth,anchorY:k?this.opposite?e.chartHeight:0:n+g.height/2})}});D.prototype.init=function(){e.apply(this,arguments);this.initCompare(this.options.compare)};D.prototype.setCompare=function(a){this.initCompare(a);this.userOptions.compare=a};D.prototype.initCompare=function(a){this.modifyValue="value"===a||"percent"===a?function(b,c){var d=this.compareValue;return"undefined"!== typeof b&&"undefined"!==typeof d?(b="value"===a?b-d:b/d*100-(100===this.options.compareBase?0:100),c&&(c.change=b),b):0}:null;this.chart.hasRendered&&(this.isDirty=!0)};D.prototype.processData=function(a){var b,c=-1,e=!0===this.options.compareStart?0:1;q.apply(this,arguments);if(this.xAxis&&this.processedYData){var g=this.processedXData;var h=this.processedYData;var k=h.length;this.pointArrayMap&&(c=this.pointArrayMap.indexOf(this.options.pointValKey||this.pointValKey||"y"));for(b=0;b=this.xAxis.min&&0!==l){this.compareValue=l;break}}}};b(D,"afterGetExtremes",function(a){a=a.dataExtremes;if(this.modifyValue&&a){var b=[this.modifyValue(a.dataMin),this.modifyValue(a.dataMax)];a.dataMin=G(b);a.dataMax=l(b)}});w.prototype.setCompare=function(a,b){this.isXAxis||(this.series.forEach(function(b){b.setCompare(a)}),u(b,!0)&&this.chart.redraw())};B.prototype.tooltipFormatter=function(a){var b=this.series.chart.numberFormatter;a=a.replace("{point.change}", (0