@canvasjs/charts 3.16.0-beta.1 → 3.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/LICENSE +1 -1
  2. package/canvasjs.min.js +250 -249
  3. package/package.json +1 -1
package/canvasjs.min.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- CanvasJS Chart - v3.16.0 Beta 1 - https://canvasjs.com/
2
+ CanvasJS Chart - v3.16.0 GA - https://canvasjs.com/
3
3
  Copyright 2026 fenopix
4
4
 
5
5
  --------------------- License Information --------------------
@@ -754,254 +754,255 @@ Math.sin(Math.PI/180*this.labelAngle)+m.textBlock._lineHeight/2*Math.cos(Math.PI
754
754
  2*Math.cos(Math.PI/180*this.labelAngle):q.y-("inside"===this.tickPlacement?0:this.tickLength)-2-((m.textBlock.height-m.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)+m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),m.textBlock.x=q.x,m.textBlock.y=q.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),
755
755
  a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,q.y<<0);a.ctx.lineTo(b,q.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y1+this._titleTextBlock._lineHeight/2+1,this.titleMaxWidth=
756
756
  this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("left"===this._position){for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x-this.tickLength<<
757
- 0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(m.textBlock.y=q.y-m.textBlock.topPadding,m.textBlock.x="inside"===this.labelPlacement?q.x+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):0>this.labelAngle?(m.textBlock.y=("inside"===this.labelPlacement?q.y:q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-m.textBlock.topPadding*Math.cos(Math.PI/
758
- 180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):(m.textBlock.y=("inside"===this.labelPlacement?q.y:q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-m.textBlock.topPadding*
759
- Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=
760
- 0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.x+a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x1+this._titleTextBlock._lineHeight/
761
- 2,this._titleTextBlock.y=this.lineCoordinates.height/2+this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("right"===this._position){for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,
762
- b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x+this.tickLength<<0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(m.textBlock.y=q.y-m.textBlock.topPadding,m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(m.textBlock.y=("inside"===this.labelPlacement?q.y-m.textBlock.width*
763
- Math.sin(Math.PI/180*this.labelAngle):q.y)-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(m.textBlock.y=("inside"===this.labelPlacement?
764
- q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):q.y)-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5)));"inside"===this.tickPlacement&&
765
- this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.x-a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),
766
- this._titleTextBlock.x=this.bounds.x2-this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2-this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}f=0;if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)m=a._labels[k],m.position<a.viewportMinimum||(m.position>a.viewportMaximum||e&&0!==f++%2&&a.labelAutoFit)||
767
- (a.ctx.save(),a.ctx.beginPath(),m.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||(m.position>this.viewportMaximum||e&&0!==f++%2&&this.labelAutoFit)||m.textBlock.render(!0)};A.prototype.renderInterlacedColors=function(){var a=this.chart.plotArea.ctx,e,c,b=this.chart.plotArea,d=0;e=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?
768
- (e=this.getPixelCoordinatesOnAxis(this._labels[d].position),c=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(Math.min(c.x,e.x),b.y1,Math.abs(c.x-e.x),Math.abs(b.y1-b.y2)),e=!1):e=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(c=this.getPixelCoordinatesOnAxis(this._labels[d].position),e=d+1>
769
- this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(b.x1,Math.min(c.y,e.y),Math.abs(b.x1-b.x2),Math.abs(e.y-c.y)),e=!1):e=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&0<this.stripLines.length&&a){var e=this,c,b,d=0,f=0,h=!1;b=!1;for(var s=[],r=[],k=!1,p,d=0;d<this.stripLines.length;d++){var m=this.stripLines[d];m._thicknessType===a&&("pixel"===a&&(m.value<this.viewportMinimum||
770
- m.value>this.viewportMaximum||l(m.value)||isNaN(this.range))||"value"===a&&(m.startValue<=this.viewportMinimum&&m.endValue<=this.viewportMinimum||m.startValue>=this.viewportMaximum&&m.endValue>=this.viewportMaximum||l(m.startValue)||l(m.endValue)||isNaN(this.range))||s.push(m))}for(d=0;d<this._stripLineLabels.length;d++)if(m=this.stripLines[d],c=this._stripLineLabels[d],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),
771
- "outside"===c.stripLine.labelPlacement){m&&(this.ctx.strokeStyle=m.tickColor?m.tickColor:m.color,this.ctx.lineWidth=m.tickThickness=l(m.tickThickness)?"pixel"===m._thicknessType?m.thickness:this.thickness:m.tickThickness,l(m.opacity)||"pixel"!==m._thicknessType||(p=m.ctx.globalAlpha,m.ctx.globalAlpha=m.opacity),l(m.opacity)&&(m.opacity=m.ctx.globalAlpha));if("bottom"===this._position){var q=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<
772
- 0),this.ctx.lineTo(q,b.y+m.tickLength<<0),this.ctx.stroke());0===m.labelAngle?(b.x-=c.textBlock.width/2,b.y+=m.tickLength+c.textBlock.fontSize/2+5):(b.x-=(0>m.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*m.labelAngle),b.y+=m.tickLength+5+(0>m.labelAngle?Math.abs(c.textBlock.width*Math.sin(Math.PI/180*m.labelAngle)-c.textBlock.fontSize/2*Math.cos(Math.PI/180*m.labelAngle)):Math.abs(c.textBlock.fontSize/2*Math.cos(Math.PI/180*m.labelAngle))))}else"top"===
773
- this._position?(q=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<0),this.ctx.lineTo(q,b.y-m.tickLength<<0),this.ctx.stroke()),0===m.labelAngle?(b.x-=c.textBlock.width/2,b.y-=m.tickLength+c.textBlock.height-c.textBlock.fontSize/2):(b.x-=(0<m.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*m.labelAngle),b.y-=m.tickLength+2+(0<m.labelAngle?(c.textBlock.height-c.textBlock.fontSize/
774
- 2)*Math.cos(Math.PI/180*m.labelAngle)+c.textBlock.width*Math.sin(Math.PI/180*m.labelAngle):(c.textBlock.height-c.textBlock.fontSize/2)*Math.cos(Math.PI/180*m.labelAngle)))):"left"===this._position?(q=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,q),this.ctx.lineTo(b.x-m.tickLength<<0,q),this.ctx.stroke()),0===m.labelAngle?(b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.tickLength-5,b.y-=c.textBlock.topPadding):(b.y-=
775
- c.textBlock.width*Math.sin(Math.PI/180*m.labelAngle)+c.textBlock.topPadding*Math.cos(Math.PI/180*m.labelAngle),b.x-=m.tickLength+5+(0<m.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle)+c.textBlock.fontSize/2*Math.sin(Math.PI/180*m.labelAngle):c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle)-(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*m.labelAngle)))):"right"===this._position&&(q=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,0<m.tickThickness&&(this.ctx.beginPath(),
776
- this.ctx.moveTo(b.x<<0,q),this.ctx.lineTo(b.x+m.tickLength<<0,q),this.ctx.stroke()),0===m.labelAngle?(b.x=b.x+m.tickLength+5,b.y-=c.textBlock.topPadding):(b.y-=c.textBlock.topPadding*Math.cos(Math.PI/180*m.labelAngle),b.x=m.tickLength+5+(0<m.labelAngle?b.x+(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*m.labelAngle):b.x-c.textBlock.fontSize/2*Math.sin(Math.PI/180*m.labelAngle))));p&&(m.ctx.globalAlpha=p);c.textBlock.x=b.x;c.textBlock.y=b.y;r.push(c)}else m._thicknessType===a&&(l(m.opacity)&&
777
- (m.opacity=m.ctx.globalAlpha),c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-m.thickness/2>this.chart.plotArea.x1?l(m.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,l(m.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/
778
- 2+m.thickness/2:b.x+=c.textBlock.height/2-c.textBlock.fontSize/2),b.y=-90===c.textBlock.angle?"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y1+c.textBlock.width+3:"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-c.textBlock.width-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y1+3):"top"===
779
- this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-m.thickness/2>this.chart.plotArea.x1?l(m.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,l(m.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x+=c.textBlock.height/2-c.textBlock.fontSize/
780
- 2),b.y=-90===c.textBlock.angle?"near"===c.stripLine.labelAlign?this.chart.plotArea.y1+c.textBlock.width+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y2-3:"near"===c.stripLine.labelAlign?this.chart.plotArea.y1+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y2-c.textBlock.width-3):"left"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?
781
- this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-m.thickness/2>this.chart.plotArea.y1?l(m.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:l(m.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y+=c.textBlock.height/2-c.textBlock.fontSize+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x1+3:"center"===c.stripLine.labelAlign?
782
- (this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x2-c.textBlock.width-3):"right"===this._position&&(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-m.thickness/2>this.chart.plotArea.y1?l(m.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/
783
- 2:l(m.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x2-c.textBlock.width-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x1+3),c.textBlock.x=b.x,c.textBlock.y=b.y,r.push(c));if(!k){b=!1;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,
784
- this.chart.plotArea.height);this.ctx.clip();for(d=0;d<s.length;d++)m=s[d],m.showOnTop?h||(h=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(f=0;f<s.length;f++)m=s[f],m.showOnTop&&m.render();this.ctx.restore()},m)):m.render();for(d=0;d<r.length;d++)c=r[d],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",
785
- function(){for(f=0;f<r.length;f++)c=r[f],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(e.ctx.save(),e.ctx.beginPath(),e.ctx.rect(e.chart.plotArea.x1,e.chart.plotArea.y1,e.chart.plotArea.width,e.chart.plotArea.height),e.ctx.clip(),c.textBlock.render(!0),e.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();k=!0}if(k)for(b=!1,d=0;d<r.length;d++)c=r[d],"outside"===c.stripLine.labelPlacement&&c.textBlock.render(!0)}};A.prototype.renderBreaksBackground=
786
- function(){this.chart._breaksCanvas&&(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length&&this.maskCanvas)&&(this.chart._breaksCanvasCtx.save(),this.chart._breaksCanvasCtx.beginPath(),this.chart._breaksCanvasCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height),this.chart._breaksCanvasCtx.clip(),this.chart._breaksCanvasCtx.drawImage(this.maskCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx.restore())};A.prototype.createMask=
787
- function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;t?(this.maskCanvas=xa(this.chart.width,this.chart.height),this.maskCtx=this.maskCanvas.getContext("2d")):(this.maskCanvas=this.chart.plotArea.canvas,this.maskCtx=this.chart.plotArea.ctx);this.maskCtx.save();this.maskCtx.beginPath();this.maskCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.maskCtx.clip();for(var e=0;e<a.length;e++)a[e].endValue<
788
- this.viewportMinimum||(a[e].startValue>this.viewportMaximum||isNaN(this.range))||a[e].render(this.maskCtx);this.maskCtx.restore()}};A.prototype.renderCrosshair=function(a,e){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(a,e)};A.prototype.showCrosshair=function(a){l(a)||(a<this.viewportMinimum||a>this.viewportMaximum)||("top"===this._position||"bottom"===this._position?this.crosshair.render(this.convertValueToPixel(a),null,a):this.crosshair.render(null,this.convertValueToPixel(a),
789
- a))};A.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var e,c=this.chart.plotArea;a.lineWidth=this.gridThickness;a.strokeStyle=this.gridColor;a.setLineDash&&a.setLineDash(J(this.gridDashType,this.gridThickness));if("bottom"===this._position||"top"===this._position)for(b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),
790
- e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.x<<0)+0.5:e.x<<0,a.moveTo(e,c.y1<<0),a.lineTo(e,c.y2<<0),a.stroke());else if("left"===this._position||"right"===this._position)for(var b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.y<<0)+0.5:e.y<<0,a.moveTo(c.x1<<
791
- 0,e),a.lineTo(c.x2<<0,e),a.stroke());a.restore()}};A.prototype.renderAxisLine=function(){var a=this.chart.ctx,e=t?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),d,f;e.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(d=this.lineCoordinates.x2,f=this.lineCoordinates.x1):(d=this.lineCoordinates.x1,f=this.lineCoordinates.x2);e.lineWidth=this.lineThickness;e.strokeStyle=
792
- this.lineColor?this.lineColor:"black";e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));var h=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<0;e.beginPath();if(this.scaleBreaks&&!l(this.scaleBreaks.firstBreakIndex))if(l(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var s=this.scaleBreaks.firstBreakIndex;s<=this.scaleBreaks.lastBreakIndex;s++)e.moveTo(d,h),e.lineTo(this.scaleBreaks._appliedBreaks[s].startPixel+
793
- c,h),d=this.scaleBreaks._appliedBreaks[s].endPixel+b;d&&(e.moveTo(d,h),e.lineTo(f,h));e.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){this.reversed?(d=this.lineCoordinates.y1,f=this.lineCoordinates.y2):(d=this.lineCoordinates.y2,f=this.lineCoordinates.y1);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor;e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));h=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<
794
- 0;e.beginPath();if(this.scaleBreaks&&!l(this.scaleBreaks.firstBreakIndex))if(l(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+c;else for(s=this.scaleBreaks.firstBreakIndex;s<=this.scaleBreaks.lastBreakIndex;s++)e.moveTo(h,d),e.lineTo(h,this.scaleBreaks._appliedBreaks[s].startPixel+b),d=this.scaleBreaks._appliedBreaks[s].endPixel+c;d&&(e.moveTo(h,d),e.lineTo(h,f));e.stroke()}t&&(a.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,
795
- this.chart.height),this.chart._breaksCanvasCtx&&this.chart._breaksCanvasCtx.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),e.clearRect(0,0,this.chart.width,this.chart.height));e.restore()};A.prototype.getPixelCoordinatesOnAxis=function(a){var e={};if("bottom"===this._position||"top"===this._position)e.x=this.convertValueToPixel(a),e.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)e.y=this.convertValueToPixel(a),e.x=this.lineCoordinates.x2;
796
- return e};A.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var e=0,c=0,b,e=!0,d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?a:"left"===this._position||"right"===this._position?a.y:a.x;if(this.logarithmic){a=b=Math.pow(this.logarithmBase,(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit);if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<
797
- d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size))<d[c].endValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].endValue/this.conversionParameters.minimum/Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue)),
798
- b/=Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b>d[c].startValue/this.conversionParameters.minimum){b/=d[c].startValue/this.conversionParameters.minimum;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/d[c].size;b/=d[c].size;e=!1}else break;else if(b>d[c].startValue/d[c-1].endValue){b/=d[c].startValue/d[c-1].endValue;
799
- if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/d[c].size;b/=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size))>d[c].startValue){a=Math.pow(d[c].endValue/d[c].startValue,
800
- Math.log(b)/Math.log(d[c].size));break}else a*=d[c].startValue/this.conversionParameters.minimum*Math.pow(d[c].size,Math.log(d[c].startValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue))*b,b*=Math.pow(d[c].size,Math.log(this.conversionParameters.minimum/d[c].startValue)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b<d[c].endValue/this.conversionParameters.minimum){b/=d[c].endValue/this.conversionParameters.minimum;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/
801
- d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size;e=!1}else break;else if(b<d[c].endValue/d[c+1].startValue){b/=d[c].endValue/d[c+1].startValue;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size}else break;e=a*this.viewportMinimum}else{a=b=(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit;
802
- if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-d[c].startValue)/d[c].size<d[c].endValue){a=0>=d[c].size?0:b*(d[c].endValue-d[c].startValue)/d[c].size;break}else a+=d[c].endValue-this.conversionParameters.minimum-d[c].size*(d[c].endValue-
803
- this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue),b-=d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue);e=!1}else if(b>d[c].startValue-this.conversionParameters.minimum){b-=d[c].startValue-this.conversionParameters.minimum;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-d[c].startValue-d[c].size;b-=d[c].size;e=!1}else break;else if(b>d[c].startValue-d[c-1].endValue){b-=d[c].startValue-
804
- d[c-1].endValue;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-d[c].startValue-d[c].size;b-=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum)if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-d[c].startValue)/d[c].size>d[c].startValue){a=0>=d[c].size?0:b*(d[c].endValue-d[c].startValue)/d[c].size;break}else a+=
805
- d[c].startValue-this.conversionParameters.minimum+d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),b+=d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),e=!1;else if(b<d[c].endValue-this.conversionParameters.minimum){b-=d[c].endValue-this.conversionParameters.minimum;if(b>-1*d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size;
806
- e=!1}else break;else if(b<d[c].endValue-d[c+1].startValue){b-=d[c].endValue-d[c+1].startValue;if(b>-1*d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size}else break;e=this.conversionParameters.minimum+a}return e};A.prototype.convertValueToPixel=function(a){a=this.getApparentDifference(this.conversionParameters.minimum,a,a);return this.logarithmic?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*
807
- Math.log(a/this.conversionParameters.minimum)/this.conversionParameters.lnLogarithmBase+0.5<<0:"axisX"===this.type?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5};A.prototype.getApparentDifference=function(a,e,c,b){var d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];if(this.logarithmic){c=l(c)?e/a:c;for(var f=
808
- 0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*d[f].startValue*d[f].size:a>=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*a*Math.pow(d[f].size,Math.log(d[f].endValue/a)/Math.log(d[f].endValue/d[f].startValue)):a<=d[f].startValue&&e<=d[f].endValue?c=c/e*d[f].startValue*Math.pow(d[f].size,Math.log(e/d[f].startValue)/Math.log(d[f].endValue/d[f].startValue)):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a*Math.pow(d[f].size,Math.log(e/
809
- a)/Math.log(d[f].endValue/d[f].startValue))))}else for(c=l(c)?Math.abs(e-a):c,f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+d[f].startValue+d[f].size:a>d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+a+d[f].size*(d[f].endValue-a)/(d[f].endValue-d[f].startValue):a<=d[f].startValue&&e<d[f].endValue?c=c-e+d[f].startValue+d[f].size*(e-d[f].startValue)/(d[f].endValue-d[f].startValue):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a+
810
- d[f].size*(e-a)/(d[f].endValue-d[f].startValue)));return c};A.prototype.setViewPortRange=function(a,e){for(var c=!1,b=0;b<this.dataSeries.length;b++)if(this.dataSeries[b].visible){c=!0;break}this.sessionVariables.newViewportMinimum=this.viewportMinimum=c?Math.min(a,e):null;this.sessionVariables.newViewportMaximum=this.viewportMaximum=c?Math.max(a,e):null};A.prototype.getXValueAt=function(a){if(!a)return null;var e=null;"left"===this._position?e=this.convertPixelToValue(a.y):"bottom"===this._position&&
811
- (e=this.convertPixelToValue(a.x));return e};A.prototype.calculateValueToPixelConversionParameters=function(a){a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];var e={pixelPerUnit:null,minimum:null,reference:null},c=this.lineCoordinates.width,b=this.lineCoordinates.height,c="bottom"===this._position||"top"===this._position?c:b,b=Math.abs(this.range);if(this.logarithmic)for(var d=0;d<a.length&&!(this.viewportMaximum<a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=
812
- a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*Math.log(a[d].endValue/this.viewportMinimum)/
813
- Math.log(a[d].endValue/a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b/this.viewportMaximum*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*Math.log(this.viewportMaximum/a[d].startValue)/
814
- Math.log(a[d].endValue/a[d].startValue)));else for(d=0;d<a.length&&!(this.viewportMaximum<a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=
815
- a[d].endValue?(b=b-a[d].endValue+this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b-this.viewportMaximum+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*(this.viewportMaximum-
816
- a[d].startValue)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)));e.minimum=this.viewportMinimum;e.maximum=this.viewportMaximum;e.range=b;if("bottom"===this._position||"top"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?-1:1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?-1:1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.x2:
817
- this.lineCoordinates.x1;if("left"===this._position||"right"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?1:-1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?1:-1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.y1:this.lineCoordinates.y2;this.conversionParameters=e};A.prototype.calculateAxisParameters=function(){if(this.logarithmic)this.calculateLogarithmicAxisParameters();else{var a=this.chart.layoutManager.getFreeSpace(),
818
- e=!1,c=!1;"bottom"===this._position||"top"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?"xySwapped"===this.chart.plotInfo.axisPlacement?62:70:"xySwapped"===this.chart.plotInfo.axisPlacement?50:40,b=4;"axisX"===this.type&&(b=600>this.maxWidth?8:6);var a=Math.max(b,Math.floor(this.maxWidth/a)),d,f,h,b=0;!l(this.minimum)&&(!l(this.maximum)&&this.minimum>this.maximum)&&(this.minimum=this.maximum=null);!l(this.viewportMinimum)&&
819
- (!l(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(l(this.options.viewportMinimum)&&!l(this.sessionVariables.newViewportMinimum)&&!isNaN(this.sessionVariables.newViewportMinimum))this.viewportMinimum=this.sessionVariables.newViewportMinimum;else if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(l(this.options.viewportMaximum)&&!l(this.sessionVariables.newViewportMaximum)&&!isNaN(this.sessionVariables.newViewportMaximum))this.viewportMaximum=
820
- this.sessionVariables.newViewportMaximum;else if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;!l(this.minimum)&&this.viewportMinimum<this.minimum&&(this.viewportMinimum=this.minimum);!l(this.maximum)&&this.viewportMaximum>this.maximum&&(this.viewportMaximum=this.maximum);if(this.scaleBreaks)for(b=0;b<this.scaleBreaks._appliedBreaks.length;b++)if((!l(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue||
821
- !l(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[b].startValue||!l(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue)&&(!l(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue||!l(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[b].endValue||!l(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue)){this.scaleBreaks._appliedBreaks.splice(b,
822
- 1);break}if("axisX"===this.type){if(this.dataSeries&&0<this.dataSeries.length)for(d=0;d<this.dataSeries.length;d++)"dateTime"===this.dataSeries[d].xValueType&&(c=!0);d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin;f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax;0===f-d&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,f+=b,d-=b);Infinity!==this.dataInfo.minDiff?h=this.dataInfo.minDiff:1<f-d?h=0.5*Math.abs(f-d):(h=this.dataInfo.min===
823
- this.dataInfo.max?1:Math.abs(this.dataInfo.max-this.dataInfo.min),c&&(e=!0))}else"axisY"===this.type&&(d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,h=Math.pow(2,50),isFinite(d)||isFinite(f)?isFinite(d)?isFinite(f)||(f=d):d=f:(f="undefined"===typeof this.options.interval?-Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),
824
- 0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(d>=h||f>=h||d<=-h||f<=-h)&&10>f-d?f+=9:(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&0<d&&(d=
825
- 0),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&0>f&&(f=0));b=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?d:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?f:this.viewportMaximum,null,!0);if("axisX"===this.type&&c){this.valueType="dateTime";this.intervalType||(b/1<=a?(this.interval=1,this.intervalType="millisecond"):b/2<=a?(this.interval=2,this.intervalType="millisecond"):b/5<=a?(this.interval=5,
826
- this.intervalType="millisecond"):b/10<=a?(this.interval=10,this.intervalType="millisecond"):b/20<=a?(this.interval=20,this.intervalType="millisecond"):b/50<=a?(this.interval=50,this.intervalType="millisecond"):b/100<=a?(this.interval=100,this.intervalType="millisecond"):b/200<=a?(this.interval=200,this.intervalType="millisecond"):b/250<=a?(this.interval=250,this.intervalType="millisecond"):b/300<=a?(this.interval=300,this.intervalType="millisecond"):b/400<=a?(this.interval=400,this.intervalType="millisecond"):
827
- b/500<=a?(this.interval=500,this.intervalType="millisecond"):b/(1*R.secondDuration)<=a?(this.interval=1,this.intervalType="second"):b/(2*R.secondDuration)<=a?(this.interval=2,this.intervalType="second"):b/(5*R.secondDuration)<=a?(this.interval=5,this.intervalType="second"):b/(10*R.secondDuration)<=a?(this.interval=10,this.intervalType="second"):b/(15*R.secondDuration)<=a?(this.interval=15,this.intervalType="second"):b/(20*R.secondDuration)<=a?(this.interval=20,this.intervalType="second"):b/(30*R.secondDuration)<=
828
- a?(this.interval=30,this.intervalType="second"):b/(1*R.minuteDuration)<=a?(this.interval=1,this.intervalType="minute"):b/(2*R.minuteDuration)<=a?(this.interval=2,this.intervalType="minute"):b/(5*R.minuteDuration)<=a?(this.interval=5,this.intervalType="minute"):b/(10*R.minuteDuration)<=a?(this.interval=10,this.intervalType="minute"):b/(15*R.minuteDuration)<=a?(this.interval=15,this.intervalType="minute"):b/(20*R.minuteDuration)<=a?(this.interval=20,this.intervalType="minute"):b/(30*R.minuteDuration)<=
829
- a?(this.interval=30,this.intervalType="minute"):b/(1*R.hourDuration)<=a?(this.interval=1,this.intervalType="hour"):b/(2*R.hourDuration)<=a?(this.interval=2,this.intervalType="hour"):b/(3*R.hourDuration)<=a?(this.interval=3,this.intervalType="hour"):b/(6*R.hourDuration)<=a?(this.interval=6,this.intervalType="hour"):b/(1*R.dayDuration)<=a?(this.interval=1,this.intervalType="day"):b/(2*R.dayDuration)<=a?(this.interval=2,this.intervalType="day"):b/(4*R.dayDuration)<=a?(this.interval=4,this.intervalType=
830
- "day"):b/(1*R.weekDuration)<=a?(this.interval=1,this.intervalType="week"):b/(2*R.weekDuration)<=a?(this.interval=2,this.intervalType="week"):b/(3*R.weekDuration)<=a?(this.interval=3,this.intervalType="week"):b/(1*R.monthDuration)<=a?(this.interval=1,this.intervalType="month"):b/(2*R.monthDuration)<=a?(this.interval=2,this.intervalType="month"):b/(3*R.monthDuration)<=a?(this.interval=3,this.intervalType="month"):b/(6*R.monthDuration)<=a?(this.interval=6,this.intervalType="month"):(this.interval=b/
831
- (1*R.yearDuration)<=a?1:b/(2*R.yearDuration)<=a?2:b/(4*R.yearDuration)<=a?4:Math.floor(A.getNiceNumber(b/(a-1),!0)/R.yearDuration),this.intervalType="year"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=d-h/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=f+h/2;e?this.autoValueFormatString="MMM DD YYYY HH:mm":"year"===this.intervalType?this.autoValueFormatString="YYYY":"month"===this.intervalType?this.autoValueFormatString="MMM YYYY":
832
- "week"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"day"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"hour"===this.intervalType?this.autoValueFormatString="hh:mm TT":"minute"===this.intervalType?this.autoValueFormatString="hh:mm TT":"second"===this.intervalType?this.autoValueFormatString="hh:mm:ss TT":"millisecond"===this.intervalType&&(this.autoValueFormatString="fff'ms'");this.valueFormatString||(this.valueFormatString=this.autoValueFormatString)}else{this.intervalType=
833
- "number";b=A.getNiceNumber(b,!1);this.interval=this.options&&0<this.options.interval?this.options.interval:A.getNiceNumber(b/(a-1),!0);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?d-h/2:Math.floor(d/this.interval)*this.interval;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?f+h/2:Math.ceil(f/this.interval)*this.interval;0===this.viewportMaximum&&0===this.viewportMinimum&&(0===this.options.viewportMinimum?
834
- this.viewportMaximum+=10:0===this.options.viewportMaximum&&(this.viewportMinimum-=10),this.options&&"undefined"===typeof this.options.interval&&(this.interval=A.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)))}if(null===this.minimum||null===this.maximum)if("axisX"===this.type?(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:this.dataInfo.max,0===f-d&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,f+=b,d-=b),h=Infinity!==
835
- this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1):"axisY"===this.type&&(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(d)||isFinite(f)?0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),
836
- 0!==d&&(d-=b)):(f="undefined"===typeof this.options.interval?-Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&0<d&&(d=0),this.includeZero&&(null===this.maximum||isNaN(this.maximum))&&0>f&&(f=0)),Math.abs(this.getApparentDifference(d,f,null,!0)),"axisX"===this.type&&c){this.valueType=
837
- "dateTime";if(null===this.minimum||isNaN(this.minimum))this.minimum=d-h/2,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum);if(null===this.maximum||isNaN(this.maximum))this.maximum=f+h/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)}else this.intervalType=
838
- this.valueType="number",null===this.minimum&&(this.minimum="axisX"===this.type?d-h/2:Math.floor(d/this.interval)*this.interval,this.minimum=Math.min(this.minimum,l(this.sessionVariables.newViewportMinimum)||isNaN(this.sessionVariables.newViewportMinimum)?l(this.sessionVariables.viewportMinimum)||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum:this.sessionVariables.newViewportMinimum)),null===this.maximum&&(this.maximum="axisX"===this.type?f+h/2:Math.ceil(f/
839
- this.interval)*this.interval,this.maximum=Math.max(this.maximum,l(this.sessionVariables.newViewportMaximum)||isNaN(this.sessionVariables.newViewportMaximum)?l(this.sessionVariables.viewportMaximum)||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum:this.sessionVariables.newViewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?this.maximum+=10:0===this.options.maximum&&(this.minimum-=10));l(this.sessionVariables.newViewportMinimum)&&
840
- (this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));l(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum));this.range=this.viewportMaximum-this.viewportMinimum;this.intervalStartPosition="axisX"===this.type&&c?this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval):Math.floor((this.viewportMinimum+0.2*this.interval)/this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=A.generateValueFormatString(this.range,
841
- 2))}};A.prototype.calculateLogarithmicAxisParameters=function(){var a=this.chart.layoutManager.getFreeSpace(),e=Math.log(this.logarithmBase),c;"bottom"===this._position||"top"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?500>this.maxWidth?7:Math.max(7,Math.floor(this.maxWidth/100)):Math.max(Math.floor(this.maxWidth/50),3),b,d,f,h;h=1;!l(this.minimum)&&(!l(this.maximum)&&this.minimum>this.maximum)&&(this.minimum=
842
- this.maximum=null);!l(this.viewportMinimum)&&(!l(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;if(this.scaleBreaks)for(h=0;h<this.scaleBreaks._appliedBreaks.length;h++)if((!l(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=
843
- this.scaleBreaks._appliedBreaks[h].startValue||!l(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[h].startValue||!l(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[h].startValue)&&(!l(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[h].endValue||!l(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[h].endValue||!l(this.options.viewportMaximum)&&
844
- this.viewportMaximum<=this.scaleBreaks._appliedBreaks[h].endValue)){this.scaleBreaks._appliedBreaks.splice(h,1);break}"axisX"===this.type?(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===d/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),d*=h,b/=h),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,
845
- 0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(d)?(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1):0>=b?b=d:isFinite(d)||(d=b),1===b&&1===d?(d*=this.logarithmBase-1/this.logarithmBase,b=1):1===d/b?(h=Math.min(d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),d*=h,b/=h):b>d?(h=Math.min(b/
846
- d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=d?b=d/h:d=b*h):(h=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=h),1!==b&&(b/=h)),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&1<b&&(b=1),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&
847
- 1>d&&(d=1));h=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);var s=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType="number";h=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(h)/e),!1));this.options&&0<this.options.interval?this.interval=
848
- this.options.interval:(this.interval=A.getNiceExponent(Math.log(h)/e/(a-1),!0),c=A.getNiceNumber(s/(a-1),!0));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval));if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?d*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval));
849
- 1===this.viewportMaximum&&1===this.viewportMinimum&&(1===this.options.viewportMinimum?this.viewportMaximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.viewportMaximum&&(this.viewportMinimum/=this.logarithmBase-1/this.logarithmBase),this.options&&"undefined"===typeof this.options.interval&&(this.interval=A.getNiceExponent(Math.ceil(Math.log(h)/e)/(a-1)),c=A.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)));if(null===this.minimum||null===this.maximum)"axisX"===this.type?
850
- (b=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,1===d/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),d*=h,b/=h),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(b)||
851
- isFinite(d)?1===b&&1===d?(d*=this.logarithmBase,b/=this.logarithmBase):1===d/b?(h=Math.pow(this.logarithmBase,this.interval),d*=h,b/=h):b>d?(h=Math.min(0.01*(b/d),5),1<=d?b=d/h:d=b*h):(h=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=h),1!==b&&(b/=h)):(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,
852
- this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&1<b&&(b=1),this.includeZero&&(null===this.maximum||isNaN(this.maximum))&&1>d&&(d=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval)),l(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:
853
- this.sessionVariables.viewportMinimum)||(this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum="axisX"===this.type?d*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval)),l(null===this.sessionVariables.viewportMaximum||
854
- isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum)||(this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum))),1===this.maximum&&1===this.minimum&&(1===
855
- this.options.minimum?this.maximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.maximum&&(this.minimum/=this.logarithmBase-1/this.logarithmBase));this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum);this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum);this.viewportMinimum>this.viewportMaximum&&(!this.options.viewportMinimum&&!this.options.minimum||this.options.viewportMaximum||this.options.maximum?this.options.viewportMinimum||this.options.minimum||!this.options.viewportMaximum&&
856
- !this.options.maximum||(this.viewportMinimum=this.minimum=(this.options.viewportMaximum||this.options.maximum)/Math.pow(this.logarithmBase,2*Math.ceil(this.interval))):this.viewportMaximum=this.maximum=this.options.viewportMinimum||this.options.minimum);b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(e*this.interval)+0.2)*this.interval);this.range=this.viewportMaximum/this.viewportMinimum;this.noTicks=a;if(!this.options.interval&&this.range<Math.pow(this.logarithmBase,8>this.viewportMaximum||
857
- 3>a?2:3)){for(e=Math.floor(this.viewportMinimum/c+0.5)*c;e<this.viewportMinimum;)e+=c;this.equidistantInterval=!1;this.intervalStartPosition=e;this.interval=c}else this.options.interval||(c=Math.ceil(this.interval),this.range>this.interval&&(this.interval=c,b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(e*this.interval)+0.2)*this.interval))),this.equidistantInterval=!0,this.intervalStartPosition=b;if(!this.valueFormatString&&(this.valueFormatString="#,##0.##",1>this.viewportMinimum)){e=
858
- Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2;if(isNaN(e)||!isFinite(e))e=2;if(2<e)for(h=0;h<e-2;h++)this.valueFormatString+="#"}};A.generateValueFormatString=function(a,e){var c="#,##0.",b=e;1>a&&(b+=Math.floor(Math.abs(Math.log(a)/Math.LN10)),isNaN(b)||!isFinite(b))&&(b=e);for(var d=0;d<b;d++)c+="#";return c};A.getNiceExponent=function(a,e){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=0>c?1>=b?1:5>=b?5:10:Math.max(Math.floor(b),1);return-20>c?Number(b*Math.pow(10,
859
- c)):Number((b*Math.pow(10,c)).toFixed(20))};A.getNiceNumber=function(a,e){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=e?1.5>b?1:3>b?2:7>b?5:10:1>=b?1:2>=b?2:5>=b?5:10;return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};A.prototype.getLabelStartPoint=function(){var a=R[this.intervalType+"Duration"]*this.interval,a=new Date(Math.floor(this.viewportMinimum/a)*a);if("millisecond"!==this.intervalType)if("second"===this.intervalType)0<a.getMilliseconds()&&(a.setSeconds(a.getSeconds()+
860
- 1),a.setMilliseconds(0));else if("minute"===this.intervalType){if(0<a.getSeconds()||0<a.getMilliseconds())a.setMinutes(a.getMinutes()+1),a.setSeconds(0),a.setMilliseconds(0)}else if("hour"===this.intervalType){if(0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setHours(a.getHours()+1),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("day"===this.intervalType){if(0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setDate(a.getDate()+1),a.setHours(0),
861
- a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("week"===this.intervalType){if(0<a.getDay()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setDate(a.getDate()+(7-a.getDay())),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("month"===this.intervalType){if(1<a.getDate()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setMonth(a.getMonth()+1),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else"year"===
862
- this.intervalType&&(0<a.getMonth()||1<a.getDate()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())&&(a.setFullYear(a.getFullYear()+1),a.setMonth(0),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0));return a};ra(ga,T);ra(ca,T);ca.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent[this.optionsName]),
863
- e=this.parent.options[this.optionsName].indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][e]=this.options}};ca.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var e=this.ctx,c=this.ctx.globalAlpha;this.ctx=a||this.ctx;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,
864
- this.chart.plotArea.height);this.ctx.clip();var b=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.startValue),d=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;X(this.id);var f,h,l,r,k,p;a=Math.max(this.spacing,3);var m=Math.max(0,this.lineThickness);this.ctx.lineWidth=m;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,m));if("bottom"===this.scaleBreaks.parent._position||
865
- "top"===this.scaleBreaks.parent._position)if(b=1===m%2?(b.x<<0)+0.5:b.x<<0,h=1===m%2?(d.x<<0)+0.5:d.x<<0,"top"===this.scaleBreaks.parent._position?(d=this.chart.plotArea.y1,l=this.chart.plotArea.y2+m/2+0.5<<0):(d=this.chart.plotArea.y2,l=this.chart.plotArea.y1-m/2+0.5<<0,a*=-1),this.bounds={x1:b-m/2,y1:d,x2:h+m/2,y2:l},this.ctx.moveTo(b,d),"straight"===this.type||"top"===this.scaleBreaks.parent._position&&0>=a||"bottom"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(b,l),this.ctx.lineTo(h,
866
- l),this.ctx.lineTo(h,d);else if("wavy"===this.type){r=b;k=d;f=0.5;p=(l-k)/a/3;for(var q=0;q<p;q++)this.ctx.bezierCurveTo(r+f*a,k+a,r+f*a,k+2*a,r,k+3*a),k+=3*a,f*=-1;this.ctx.bezierCurveTo(r+f*a,k+a,r+f*a,k+2*a,r,k+3*a);r=h;f*=-1;this.ctx.lineTo(r,k);for(q=0;q<p;q++)this.ctx.bezierCurveTo(r+f*a,k-a,r+f*a,k-2*a,r,k-3*a),k-=3*a,f*=-1}else{if("zigzag"===this.type){f=-1;k=d+a;r=b+a;p=(l-k)/a/2;for(q=0;q<p;q++)this.ctx.lineTo(r,k),r+=2*f*a,k+=2*a,f*=-1;this.ctx.lineTo(r,k);r+=h-b;for(q=0;q<p+1;q++)this.ctx.lineTo(r,
867
- k),r+=2*f*a,k-=2*a,f*=-1;this.ctx.lineTo(r+f*a,k+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===this.scaleBreaks.parent._position)if(d=1===m%2?(d.y<<0)+0.5:d.y<<0,l=1===m%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,h=this.chart.plotArea.x2+m/2+0.5<<0):(b=this.chart.plotArea.x2,h=this.chart.plotArea.x1-m/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:d-m/2,x2:h,y2:l+m/2},this.ctx.moveTo(b,d),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&
868
- 0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(h,d),this.ctx.lineTo(h,l),this.ctx.lineTo(b,l);else if("wavy"===this.type){r=b;k=d;f=0.5;p=(h-r)/a/3;for(q=0;q<p;q++)this.ctx.bezierCurveTo(r+a,k+f*a,r+2*a,k+f*a,r+3*a,k),r+=3*a,f*=-1;this.ctx.bezierCurveTo(r+a,k+f*a,r+2*a,k+f*a,r+3*a,k);k=l;f*=-1;this.ctx.lineTo(r,k);for(q=0;q<p;q++)this.ctx.bezierCurveTo(r-a,k+f*a,r-2*a,k+f*a,r-3*a,k),r-=3*a,f*=-1}else if("zigzag"===this.type){f=1;k=d-a;r=b+a;p=(h-r)/a/2;for(q=0;q<p;q++)this.ctx.lineTo(r,
869
- k),k+=2*f*a,r+=2*a,f*=-1;this.ctx.lineTo(r,k);k+=l-d;for(q=0;q<p+1;q++)this.ctx.lineTo(r,k),k+=2*f*a,r-=2*a,f*=-1;this.ctx.lineTo(r+a,k+f*a)}0<m&&this.ctx.stroke();this.ctx.closePath();this.ctx.globalAlpha=this.fillOpacity;this.ctx.globalCompositeOperation="destination-over";this.ctx.fill();this.ctx.restore();this.ctx.globalAlpha=c;this.ctx=e}};ra(ia,T);ia.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();
870
- this.options._isPlaceholder||(Ba(this.parent.stripLines),e=this.parent.options.stripLines.indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[e]=this.options}};ia.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),e=Math.abs("pixel"===this._thicknessType?this.thickness:Math.abs(this.parent.convertValueToPixel(this.endValue)-this.parent.convertValueToPixel(this.startValue)));if(0<e){var c=null===this.opacity?
871
- 1:this.opacity;this.ctx.strokeStyle=this.color;this.ctx.beginPath();var b=this.ctx.globalAlpha;this.ctx.globalAlpha=c;X(this.id);var d,f,h,l;this.ctx.lineWidth=e;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,e));if("bottom"===this.parent._position||"top"===this.parent._position)a="pixel"===this._thicknessType?a.x:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,d=f=1===this.ctx.lineWidth%2?(a<<0)+0.5:a<<0,h=this.chart.plotArea.y1,
872
- l=this.chart.plotArea.y2,this.bounds={x1:d-e/2,y1:h,x2:f+e/2,y2:l};else if("left"===this.parent._position||"right"===this.parent._position)a="pixel"===this._thicknessType?a.y:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,h=l=1===this.ctx.lineWidth%2?(a<<0)+0.5:a<<0,d=this.chart.plotArea.x1,f=this.chart.plotArea.x2,this.bounds={x1:d,y1:h-e/2,x2:f,y2:l+e/2};this.ctx.moveTo(d,h);this.ctx.lineTo(f,l);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};
873
- ra(ea,T);ea.prototype.showAt=function(a){if(!this.enabled)return!1;var e=this.chart,c=!1;e.resetOverlayedCanvas();e.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent,!1);var b,d="xySwapped"===e.plotInfo.axisPlacement;"bottom"===this.parent._position?b=d?e.axisY:e.axisX:"top"===this.parent._position?b=d?e.axisY2:e.axisX2:"left"===this.parent._position?b=d?e.axisX:e.axisY:"right"===this.parent._position&&(b=d?e.axisX2:e.axisY2);if(b)for(d=0;d<b.length;d++)this.parent===
874
- b[d]&&(b[d]._crosshairValue=a>=b[d].viewportMinimum&&a<=b[d].viewportMaximum?a:null);b=["axisX","axisX2","axisY","axisY2"];for(d=0;d<b.length;d++)for(var f=b[d],h=0;h<e[f].length;h++){var s=e[f][h],r=s._crosshairValue;s.crosshair&&s.crosshair.enabled&&(this.parent===s&&(s.sessionVariables.crosshairShownByPixel=!1,s.sessionVariables.crosshairValue=s.crosshair._updatedValue=r||a),!l(r)&&r>=s.viewportMinimum&&r<=s.viewportMaximum?(s.showCrosshair(r),this===s.crosshair&&(c=!0)):void 0!==r&&(s.sessionVariables.crosshairValue=
875
- null,s.crosshair._updatedValue=null))}this.chart.toolTip&&(this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};ea.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.toolTip&&(this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);this.chart.renderCrosshairs(this.parent,!1);this.parent.sessionVariables._crosshairHidden=
876
- this._hidden=!0};ea.prototype.render=function(a,e,c){var b,d,f,h,s=null,r=null,k=null,p="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(k=0,k="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?0:500<this.chart.width&&25>this.parent.range?2:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0):50<this.parent.range?0:Math.floor(Math.abs(Math.log(this.parent.range)/
877
- Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0),this.valueFormatString=A.generateValueFormatString(this.parent.range,k)));var m=null===this.opacity?1:this.opacity,q=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*this.thickness),g=this.chart.overlaidCanvasCtx,t=g.globalAlpha;g.beginPath();g.strokeStyle=this.color;g.lineWidth=q;g.save();this.labelFontSize=Math.abs(l(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);
878
- this.labelMaxWidth=l(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=l(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||0):2*this.labelPadding);k=new ma(g,{x:0,y:0,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxWidth:this.labelMaxWidth,
879
- maxHeight:this.labelMaxHeight,angle:this.labelAngle,text:p,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});if(this.snapToDataPoint){var x=0,p=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var y=null;if("bottom"===this.parent._position||"top"===this.parent._position)x=this.parent.dataSeries[0].axisX.convertPixelToValue({y:this.parent.sessionVariables.crosshairShownByPixel?
880
- this.chart.sessionVariables.mouseY:e});else if("left"===this.parent._position||"right"===this.parent._position)x=this.parent.convertPixelToValue({y:e});for(var u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[u],null!==y.dataPoint.y&&y.dataSeries.visible&&p.push(y));y=null;if(0===p.length)return;p.sort(function(a,b){return a.distance-b.distance});var w=y=0;yPercent=cumulativeY=0;for(var x=Infinity,v,u=
881
- 0;u<p.length;u++){if("rangeBar"===p[u].dataSeries.type||"error"===p[u].dataSeries.type){if(p[u].dataPoint.y)for(var C=0;C<p[u].dataPoint.y.length;C++)w=Math.abs(a-this.parent.convertValueToPixel(p[u].dataPoint.y[C])),w<=x&&(x=w,y=u)}else"stackedBar"===p[u].dataSeries.type?(cumulativeY=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=Math.abs(a-this.parent.convertValueToPixel(cumulativeY)),w<=x&&(x=w,y=u)):"stackedBar100"===p[u].dataSeries.type?(w=p[0].dataPoint.x.getTime?p[0].dataPoint.x.getTime():
882
- p[0].dataPoint.x,l(v)&&(v=Math.abs(a-this.parent.convertValueToPixel(100*(p[0].dataSeries.dataPointEOs[p[0].index].cumulativeY/p[0].dataSeries.plotUnit.dataPointYSums[w])))),cumulativeY=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=p[u].dataPoint.x.getTime?p[u].dataPoint.x.getTime():p[u].dataPoint.x,yPercent=100*(cumulativeY/p[u].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(a-this.parent.convertValueToPixel(yPercent)),w<=v&&(v=w,y=u)):(w=Math.abs(a-this.parent.convertValueToPixel(p[u].dataPoint.y)),
883
- w<=x&&(x=w,y=u));l(v)||(x=Math.min(x,v))}v=p[y];u=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===v.dataSeries.type||"error"===v.dataSeries.type){x=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(p=0;p<v.dataPoint.y.length;p++)w=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[p])),w<x&&(x=w,u=p);s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[u])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[u])<<0;this.value=
884
- v.dataPoint.y[u];0!==v.dataPoint.y[u]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y[u]}):l(this.options.label)?fa(v.dataPoint.y[u],this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===
885
- v.dataSeries.type?(x=Math.abs(a-this.parent.convertValueToPixel(p[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<0,this.value=cumulativeY,0!==cumulativeY%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
886
- 1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:cumulativeY}):l(this.options.label)?fa(cumulativeY,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===v.dataSeries.type?(x=Math.abs(a-this.parent.convertValueToPixel(p[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,yPercent=100*(cumulativeY/v.dataSeries.plotUnit.dataPointYSums[w]),
887
- s=1===g.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,0!==yPercent%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:yPercent}):l(this.options.label)?
888
- fa(yPercent,this.valueFormatString,this.chart._cultureInfo):this.label):(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,this.value=v.dataPoint.y,0!==v.dataPoint.y%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
889
- axis:this.parent,crosshair:this.options,value:v.dataPoint.y}):l(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label);b=d=s;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-q/2,y1:f,x2:d+q/2,y2:h};k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-k.width:k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);k.y=this.parent.lineCoordinates.y2+("top"===this.parent._position?-k.height+this.parent.tickLength:
890
- k.fontSize/2)+2;k.y+k.height>this.chart.bounds.y2?k.y=this.chart.bounds.y2-k.height:k.y<this.chart.bounds.y1&&(k.y=this.chart.bounds.y1)}else if("left"===this.parent._position||"right"===this.parent._position){f=h=r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-q/2,x2:d,y2:h+q/2};u=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<
891
- this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?
892
- (0!==v.dataPoint.x%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
893
- axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.x;k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:
894
- "right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){x=this.parent.convertPixelToValue({x:a});for(u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[u],null!==y.dataPoint.y&&y.dataSeries.visible&&p.push(y));if(0===p.length)return;p.sort(function(a,b){return a.distance-b.distance});v=p[0];b=d=s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<
895
- 0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-q/2,y1:f,x2:d+q/2,y2:h};u=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=
896
- this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?(0!==v%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
897
- axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.x;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-
898
- k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&(k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!l(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(x=this.parent.dataSeries[0].axisX.convertPixelToValue({x:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseX:
899
- a}));for(u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[u],null!==y.dataPoint.y&&y.dataSeries.visible&&p.push(y));if(0===p.length)return;p.sort(function(a,b){return a.distance-b.distance});w=y=0;x=Infinity;for(u=0;u<p.length;u++){if("rangeColumn"===p[u].dataSeries.type||"rangeArea"===p[u].dataSeries.type||"error"===p[u].dataSeries.type||"rangeSplineArea"===p[u].dataSeries.type||"candlestick"===p[u].dataSeries.type||
900
- "ohlc"===p[u].dataSeries.type||"boxAndWhisker"===p[u].dataSeries.type){if(p[u].dataPoint.y)for(C=0;C<p[u].dataPoint.y.length;C++)w=Math.abs(e-this.parent.convertValueToPixel(p[u].dataPoint.y[C])),w<=x&&(x=w,y=u)}else"stackedColumn"===p[u].dataSeries.type?(a=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=x&&(x=w,y=u)):"stackedArea"===p[u].dataSeries.type?(a=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),
901
- w<=x&&(x=w,y=u)):"stackedColumn100"===p[u].dataSeries.type||"stackedArea100"===p[u].dataSeries.type?(w=p[0].dataPoint.x.getTime?p[0].dataPoint.x.getTime():p[0].dataPoint.x,l(v)&&(v=Math.abs(e-this.parent.convertValueToPixel(100*(p[0].dataSeries.dataPointEOs[p[0].index].cumulativeY/p[0].dataSeries.plotUnit.dataPointYSums[w])))),"stackedColumn100"===p[u].dataSeries.type?(r=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=p[u].dataPoint.x.getTime?p[u].dataPoint.x.getTime():p[u].dataPoint.x,a=100*
902
- (r/p[u].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=u)):"stackedArea100"===p[u].dataSeries.type&&(r=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=p[u].dataPoint.x.getTime?p[u].dataPoint.x.getTime():p[u].dataPoint.x,a=100*(r/p[u].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=u))):"waterfall"===p[u].dataSeries.type?(w=Math.abs(e-this.parent.convertValueToPixel(p[u].dataSeries.dataPointEOs[p[u].index].cumulativeSum)),
903
- w<=x&&(v=x=w,y=u)):(w=Math.abs(e-this.parent.convertValueToPixel(p[u].dataPoint.y)),w<=x&&(x=w,y=u));l(v)||(x=Math.min(x,v))}v=p[y];u=0;if("rangeColumn"===v.dataSeries.type||"rangeArea"===v.dataSeries.type||"error"===v.dataSeries.type||"rangeSplineArea"===v.dataSeries.type||"candlestick"===v.dataSeries.type||"ohlc"===v.dataSeries.type||"boxAndWhisker"===v.dataSeries.type){x=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(p=0;p<v.dataPoint.y.length;p++)w=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[p])),
904
- w<x&&(x=w,u=p);r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[u])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[u])<<0;0!==v.dataPoint.y[u]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y[u]}):
905
- l(this.options.label)?fa(v.dataPoint.y[u],this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.y[u]}else"stackedColumn"===v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?
906
- 2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea"===v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,
907
- Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedColumn100"===v.dataSeries.type?(r=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(r/v.dataSeries.plotUnit.dataPointYSums[w]),
908
- r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):
909
- this.label,this.value=a):"stackedArea100"===v.dataSeries.type?(r=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(r/v.dataSeries.plotUnit.dataPointYSums[w]),r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>
910
- this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"waterfall"===v.dataSeries.type?(r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0,0!==v.dataSeries.dataPointEOs[v.index].cumulativeSum%
911
- 1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataSeries.dataPointEOs[v.index].cumulativeSum}):l(this.options.label)?fa(v.dataSeries.dataPointEOs[v.index].cumulativeSum,this.valueFormatString,this.chart._cultureInfo):
912
- this.label,this.value=v.dataSeries.dataPointEOs[v.index].cumulativeSum):(r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,0!==v.dataPoint.y%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
913
- axis:this.parent,crosshair:this.options,value:v.dataPoint.y}):l(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=v.dataPoint.y);f=h=r;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-q/2,x2:d,y2:h+q/2};k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+
914
- k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}p=null;g.globalAlpha=m;0<q&&g.setLineDash&&g.setLineDash(J(this.lineDashType,q));if("bottom"===this.parent._position||"top"===this.parent._position)"top"===this.parent._position&&k.y-k.fontSize/2<this.chart.bounds.y1&&(k.y=this.chart.bounds.y1+k.fontSize/2),"bottom"===this.parent._position&&this.parent.lineCoordinates.y2+k.measureText().height>
915
- this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1),"right"===
916
- this.parent._position&&k.x+k.measureText().width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.measureText().width),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=d=s=1===g.lineWidth%2?(a<<0)+0.5:a<<0,f=this.chart.plotArea.y1,
917
- h=this.chart.plotArea.y2,this.bounds={x1:b-q/2,y1:f,x2:d+q/2,y2:h};else if("left"===this.parent._position||"right"===this.parent._position)f=h=r=1===g.lineWidth%2?(e<<0)+0.5:e<<0,b=this.chart.plotArea.x1,d=this.chart.plotArea.x2,this.bounds={x1:b,y1:f-q/2,x2:d,y2:h+q/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){u=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=
918
- !0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?y.dataPoint.label:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?
919
- this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(e):c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(e):c}):l(this.options.label)?Ea(l(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):
920
- this.label;k.y=e+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x1-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)k.text=this.labelFormatter?
921
- this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.x=b-k.measureText().width/2,k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width),k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1),"bottom"===this.parent._position?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&
922
- (k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("bottom"===this.parent._position||"top"===this.parent._position){u=!1;p="";if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?
923
- this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?l(c)?y.dataPoint.label:c:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?0<this.parent.dataSeries.length?this.parent.convertPixelToValue(a):"":c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(a):
924
- c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?Ea(l(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?
925
- k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&(k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(e):c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.y=e+
926
- k.fontSize/2-k.measureText().height/2+2,k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2),"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2);"left"===this.parent._position&&k.x<this.chart.bounds.x1?k.x=this.chart.bounds.x1:"right"===this.parent._position&&
927
- k.x+k.measureText().width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-k.measureText().width:"top"===this.parent._position&&k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2:"bottom"===this.parent._position&&this.parent.lineCoordinates.y2+k.measureText().height>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2);g.globalAlpha=m;0<q&&("bottom"!==this.parent._position||d<=this.parent.lineCoordinates.x2)&&(g.setLineDash&&g.setLineDash(J(this.lineDashType,
928
- q)),g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1);this.value="bottom"===this.parent._position||"top"===this.parent._position?this.parent.convertPixelToValue(a):this.parent.convertPixelToValue(e)}if("bottom"===this.parent._position||"top"===this.parent._position)this.parent.sessionVariables.crosshairValue=this._updatedValue=this.parent.convertPixelToValue(s);if("left"===this.parent._position||"right"===this.parent._position)this.parent.sessionVariables.crosshairValue=
929
- this._updatedValue=this.parent.convertPixelToValue(r);this._textBlock=k;this._label=c;l(c)||this.renderLabel();g.restore();g.globalAlpha=t};ea.prototype.renderLabel=function(){this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&(l(this._textBlock)||(l(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0<this._textBlock.text.length)||this._hidden)||this._textBlock.render(!0),
930
- l(this._label)&&this.dispatchEvent("updated",{chart:this.chart,crosshair:this.options,axis:this.parent,value:this.value},this.parent))};ra(oa,T);oa.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("shared");this.updateOption("animationEnabled");this.updateOption("content");this.updateOption("contentFormatter");this.updateOption("reversed");this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("cornerRadius");
931
- this.updateOption("fontSize");this.updateOption("fontColor");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("fontStyle")};oa.prototype._initialize=function(){this.updateOption("updated");this.updateOption("hidden");if(this.enabled){this.container=document.createElement("div");this.container.setAttribute("class","canvasjs-chart-tooltip");this.container.style.position="absolute";this.container.style.height="auto";this.container.style.boxShadow="1px 1px 2px 2px rgba(0,0,0,0.1)";
932
- this.container.style.zIndex="1000";this.container.style.pointerEvents="none";this.container.style.display="none";var a=document.createElement("div");a.style.width="auto";a.style.height="auto";a.style.minWidth="50px";a.style.lineHeight="normal";a.style.margin="0px 0px 0px 0px";a.style.padding="5px";a.style.fontFamily="Calibri, Arial, Georgia, serif";a.style.fontWeight="normal";a.style.fontStyle=t?"italic":"normal";a.style.fontSize="14px";a.style.color="#000000";a.style.textShadow="1px 1px 1px rgba(0, 0, 0, 0.1)";
933
- a.style.textAlign="left";a.style.border="2px solid gray";a.style.background=t?"rgba(255,255,255,.9)":"rgb(255,255,255)";a.style.textIndent="0px";a.style.whiteSpace="nowrap";a.style.borderRadius="5px";a.style.MozUserSelect="none";a.style.WebkitUserSelect="none";a.style.msUserSelect="none";a.style.userSelect="none";t||(a.style.filter="alpha(opacity = 90)",a.style.filter="progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#666666')");a.innerText="Sample Tooltip";this.container.appendChild(a);
934
- this.contentDiv=this.container.firstChild;this.container.style.borderRadius=this.contentDiv.style.borderRadius;this.chart._canvasJSContainer.appendChild(this.container)}};oa.prototype.mouseMoveHandler=function(a,e){this._lastUpdated&&4>(new Date).getTime()-this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(a,e),this.enabled&&this._updatedEventParameters&&!isNaN(this._prevX)&&!isNaN(this._prevY)&&this.container&&this.container.style&&this.dispatchEvent("none"===
935
- this.container.style.display?"hidden":"updated",this._updatedEventParameters,this))};oa.prototype._updateToolTip=function(a,e,c){c="undefined"===typeof c?!0:c;this._updateOptions();this.container||this._initialize();this.enabled||this.hide();if(!this.chart.disableToolTip){if("undefined"===typeof a||"undefined"===typeof e){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;e=this._prevY}else this._prevX=a,this._prevY=e;var b=null,d=null,f=[],h=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var s=
936
- [];if(this.chart.axisX)for(var r=0;r<this.chart.axisX.length;r++){for(var h="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[r].convertPixelToValue({y:e}):this.chart.axisX[r].convertPixelToValue({x:a}),k=null,b=0;b<this.chart.axisX[r].dataSeries.length;b++)(k=this.chart.axisX[r].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX[r].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&s.push(k));k=null}if(this.chart.axisX2)for(r=0;r<this.chart.axisX2.length;r++){h=
937
- "xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[r].convertPixelToValue({y:e}):this.chart.axisX2[r].convertPixelToValue({x:a});k=null;for(b=0;b<this.chart.axisX2[r].dataSeries.length;b++)(k=this.chart.axisX2[r].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX2[r].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&s.push(k));k=null}if(0===s.length)return;s.sort(function(a,b){return a.dataSeries.axisX.logarithmic||b.dataSeries.axisX.logarithmic?
938
- a.distance-b.distance:a.distance/a.dataSeries.axisX.range-b.distance/b.dataSeries.axisX.range});c=s[0];for(b=0;b<s.length;b++)s[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&f.push(s[b]);s=null}else{if(b=this.chart.getDataPointAtXY(a,e,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(t)if(b=bb(a,e,this.chart._eventManager.ghostCtx),0<b&&"undefined"!==typeof this.chart._eventManager.objectMap[b]){b=this.chart._eventManager.objectMap[b];if("legendItem"===
939
- b.objectType)return;this.currentSeriesIndex=b.dataSeriesIndex;this.currentDataPointIndex=0<=b.dataPointIndex?b.dataPointIndex:-1}else this.currentDataPointIndex=-1;else this.currentDataPointIndex=-1;if(0<=this.currentSeriesIndex){d=this.chart.data[this.currentSeriesIndex];k={};if(0<=this.currentDataPointIndex)b=d.dataPoints[this.currentDataPointIndex],k.dataSeries=d,k.dataPoint=b,k.index=this.currentDataPointIndex,k.distance=Math.abs(b.x-h),"waterfall"===d.type&&(k.cumulativeSumYStartValue=d.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue,
940
- k.cumulativeSum=d.dataPointEOs[this.currentDataPointIndex].cumulativeSum);else if(this.enabled&&d&&("line"===d.type||"stepLine"===d.type||"spline"===d.type||"area"===d.type||"stepArea"===d.type||"splineArea"===d.type||"stackedArea"===d.type||"stackedArea100"===d.type||"rangeArea"===d.type||"rangeSplineArea"===d.type||"candlestick"===d.type||"ohlc"===d.type||"boxAndWhisker"===d.type))h=d.axisX.convertPixelToValue({x:a}),k=d.getDataPointAtX(h,c,!0),l(k)||(k.dataSeries=d,this.currentDataPointIndex=k.index,
941
- b=k.dataPoint);else{"toolTip"===this.chart.clearedOverlayedCanvas&&(this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=null,this.chart.sessionVariables._dataHighlighted=!1,this.container&&(this.container.style.display="none"));return}if(!l(k)&&!l(k.dataPoint)&&!l(k.dataPoint.y))if(k.dataSeries.axisY)if(0<k.dataPoint.y.length){for(b=c=0;b<k.dataPoint.y.length;b++)k.dataPoint.y[b]<k.dataSeries.axisY.viewportMinimum?c--:k.dataPoint.y[b]>k.dataSeries.axisY.viewportMaximum&&c++;c<k.dataPoint.y.length&&
942
- c>-k.dataPoint.y.length&&f.push(k)}else"column"===d.type||"bar"===d.type?0>k.dataPoint.y?0>k.dataSeries.axisY.viewportMinimum&&k.dataSeries.axisY.viewportMaximum>=k.dataPoint.y&&f.push(k):k.dataSeries.axisY.viewportMinimum<=k.dataPoint.y&&0<=k.dataSeries.axisY.viewportMaximum&&f.push(k):"bubble"===d.type?(c=this.chart._eventManager.objectMap[d.dataPointIds[k.index]].size/2,k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum-c&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum+c&&f.push(k)):"waterfall"===
943
- d.type?(c=0,k.cumulativeSumYStartValue<k.dataSeries.axisY.viewportMinimum?c--:k.cumulativeSumYStartValue>k.dataSeries.axisY.viewportMaximum&&c++,k.cumulativeSum<k.dataSeries.axisY.viewportMinimum?c--:k.cumulativeSum>k.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&f.push(k)):(0<=k.dataSeries.type.indexOf("100")||"stackedColumn"===d.type||"stackedBar"===d.type||"stackedArea"===d.type||k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum)&&f.push(k);
944
- else f.push(k)}}if(0<f.length){if(this._entries=f,this.highlightObjects(f),this.enabled){c="";c=this.getToolTipInnerHTML({entries:f});if(null!==c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&l(this.options.content)&&l(this.options.contentFormatter))for(h=this.contentDiv.getElementsByTagName("span"),b=0;b<h.length;b++)h[b]&&(h[b].style.color=h[b].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=
945
- this.backgroundColor?this.backgroundColor:t?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=
946
- this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[d.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],
947
- this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:
948
- "Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:t?"italic":"normal"}catch(p){}"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type||"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type||"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?a=a-10-this.container.clientWidth:
949
- (a=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-this.container.clientWidth<<0,a-=10);0>a&&(a=Math.max(0,a+this.container.clientWidth+20));a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));e=1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&
950
- "stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):e:f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);e=-e+10;0<e+this.container.clientHeight+5&&(e-=e+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,e);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),
951
- this.container.style.MozTransition=this.mozContainerTransition);this.positionLeft=a;this.positionBottom=e;this.container.style.left=a+"px";this.container.style.bottom=e+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);e=[];for(b=0;b<f.length;b++)e.push({xValue:f[b].dataPoint.x,dataPoint:f[b].dataPoint,dataSeries:f[b].dataSeries,dataPointIndex:f[b].index,dataSeriesIndex:f[b].dataSeries._index});this._updatedEventParameters={chart:this.chart,toolTip:this.options,
952
- content:c,entries:e}}}else this.hide(),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);this._dataSeriesIndex=this._xValue=null}};oa.prototype.highlightObjects=function(a){var e=this.chart.overlaidCanvasCtx;l(this.chart.clearedOverlayedCanvas)||"toolTip"===this.chart.clearedOverlayedCanvas?(this.chart.resetOverlayedCanvas(),e.clearRect(0,0,this.chart.width,this.chart.height),this.chart.clearedOverlayedCanvas="toolTip",this.chart.sessionVariables._dataHighlighted=!1):
953
- this.chart.clearedOverlayedCanvas=null;e.save();var c=this.chart.plotArea,b=0;e.beginPath();e.rect(c.x1,c.y1,c.x2-c.x1,c.y2-c.y1);e.clip();for(c=0;c<a.length;c++){var d=a[c];if((d=this.chart._eventManager.objectMap[d.dataSeries.dataPointIds[d.index]])&&d.objectType&&"dataPoint"===d.objectType){var b=this.chart.data[d.dataSeriesIndex],f=b.dataPoints[d.dataPointIndex],h=d.dataPointIndex;!1===f.highlightEnabled||!0!==b.highlightEnabled&&!0!==f.highlightEnabled||("line"===b.type||"stepLine"===b.type||
954
- "spline"===b.type||"scatter"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=Math.max(1.5*f.size<<0,10),f.borderColor=f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f]),"undefined"!==typeof d.y2&&(f=b.getMarkerProperties(h,d.x1,d.y2,this.chart.overlaidCanvasCtx),
955
- f.size=Math.max(1.5*f.size<<0,10),f.borderColor=f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f])),this.chart.sessionVariables._dataHighlighted=!0):"bubble"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=d.size,f.color="white",f.borderColor="white",e.globalAlpha=0.3,Y.drawMarkers([f]),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"column"===b.type||"stackedColumn"===b.type||"stackedColumn100"===
956
- b.type||"bar"===b.type||"rangeBar"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"rangeColumn"===b.type||"waterfall"===b.type?(aa(e,d.x1,d.y1,d.x2,d.y2,"white",0,null,!1,!1,!1,!1,0.3),this.chart.sessionVariables._dataHighlighted=!0):"pie"===b.type||"doughnut"===b.type?(sa(e,d.center,d.radius,"white",b.type,d.startAngle,d.endAngle,0.3,d.percentInnerRadius),this.chart.sessionVariables._dataHighlighted=!0):"funnel"===b.type||"pyramid"===b.type?(ta(e,d.funnelSection,0.3,"white"),this.chart.sessionVariables._dataHighlighted=
957
- !0):"candlestick"===b.type?(e.globalAlpha=1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,Math.min(d.y2,d.y3)),e.lineTo(d.x3-b,Math.min(d.y1,d.y4)),e.stroke(),e.beginPath(),e.moveTo(d.x3-b,Math.max(d.y1,d.y4)),e.lineTo(d.x3-b,Math.max(d.y2,d.y3)),e.stroke(),aa(e,d.x1,Math.min(d.y1,d.y4),d.x2,Math.max(d.y1,d.y4),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"ohlc"===
958
- b.type?(e.globalAlpha=1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,d.y2),e.lineTo(d.x3-b,d.y3),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y1),e.lineTo(d.x1,d.y1),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4),e.lineTo(d.x2,d.y4),e.stroke(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"boxAndWhisker"===b.type?(e.save(),e.globalAlpha=1,e.strokeStyle=d.stemColor,e.lineWidth=2*d.stemThickness,0<d.stemThickness&&(e.beginPath(),
959
- e.moveTo(d.x3,d.y2+d.borderThickness/2),e.lineTo(d.x3,d.y1+d.whiskerThickness/2),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4-d.whiskerThickness/2),e.lineTo(d.x3,d.y3-d.borderThickness/2),e.stroke()),e.beginPath(),aa(e,d.x1,Math.max(d.y2,d.y3),d.x2,Math.min(d.y2,d.y3),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,e.strokeStyle=d.whiskerColor,e.lineWidth=2*d.whiskerThickness,0<d.whiskerThickness&&(e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y4),e.lineTo(Math.ceil(d.x3+
960
- d.whiskerLength/2),d.y4),e.stroke(),e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y1),e.lineTo(Math.ceil(d.x3+d.whiskerLength/2),d.y1),e.stroke()),e.globalAlpha=1,e.strokeStyle=d.lineColor,e.lineWidth=2*d.lineThickness,0<d.lineThickness&&(e.beginPath(),e.moveTo(d.x1,d.y5),e.lineTo(d.x2,d.y5),e.stroke()),e.restore(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"error"===b.type&&(C(e,d.x1,d.y1,d.x2,d.y2,"white",d.whiskerProperties,d.stemProperties,d.isXYSwapped,0.3),
961
- this.chart.sessionVariables._dataHighlighted=!0))}}e.restore();e.globalAlpha=1;e.beginPath()};oa.prototype.getToolTipInnerHTML=function(a){var e=a.entries,c=null,b=null,d=null,f=0;a="";this.isToolTipDefinedInData=!0;for(var h=0;h<e.length;h++)if(e[h].dataSeries.toolTipContent||e[h].dataPoint.toolTipContent){this.isToolTipDefinedInData=!1;break}if(this.isToolTipDefinedInData&&(this.content&&"function"===typeof this.content||this.contentFormatter))e={chart:this.chart,toolTip:this.options,entries:e},
962
- c=this.contentFormatter?this.contentFormatter(e):this.content(e);else if(this.shared&&"none"!==this.chart.plotInfo.axisPlacement){for(var l=null,r="",h=0;h<e.length;h++){b=e[h].dataSeries;d=e[h].dataPoint;f=e[h].index;a="";if(0===h&&this.isToolTipDefinedInData&&!this.content){this.chart.axisX&&0<this.chart.axisX.length?r+="undefined"!==typeof this.chart.axisX[0].labels[d.x]?this.chart.axisX[0].labels[d.x]:"{x}":this.chart.axisX2&&0<this.chart.axisX2.length&&(r+="undefined"!==typeof this.chart.axisX2[0].labels[d.x]?
963
- this.chart.axisX2[0].labels[d.x]:"{x}");r+="</br>";if(!b.visible)continue;r=this.chart.replaceKeywordsWithValue(r,d,b,f)}null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent||("line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||"scatter"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===
964
- b.type||"stackedArea100"===b.type||"waterfall"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}",l=b.axisXIndex):"bubble"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=
965
- b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}"):"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?
966
- b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y[0]},&nbsp;{y[1]}"):"candlestick"===b.type||"ohlc"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:
967
- b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low:&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}"):"boxAndWhisker"===b.type&&(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?
968
- b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}"),null===c&&(c=""),b.visible&&(!0===
969
- this.reversed?(c=this.chart.replaceKeywordsWithValue(a,d,b,f)+c,h<e.length-1&&(c="</br>"+c)):(c+=this.chart.replaceKeywordsWithValue(a,d,b,f),h<e.length-1&&(c+="</br>"))))}null!==c&&(c=r+c)}else{b=e[0].dataSeries;d=e[0].dataPoint;f=e[0].index;if(null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent)return null;"line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||
970
- "scatter"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"waterfall"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}":"bubble"===b.type?a=d.toolTipContent?d.toolTipContent:
971
- b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}":"pie"===b.type||"doughnut"===b.type||"funnel"===b.type||"pyramid"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+
972
- "\"'>"+(d.name?"{name}:</span>&nbsp;&nbsp;":d.label?"{label}:</span>&nbsp;&nbsp;":"</span>")+"{y}":"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+" :</span>&nbsp;&nbsp;{y[0]}, &nbsp;{y[1]}":"candlestick"===b.type||
973
- "ohlc"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low: &nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}":"boxAndWhisker"===b.type&&(a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==
974
- typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}");null===c&&(c="");c+=this.chart.replaceKeywordsWithValue(a,
975
- d,b,f)}this.content=a;return c};oa.prototype.enableAnimation=function(){if(!this.container.style.WebkitTransition){var a=this.getContainerTransition(this.containerTransitionDuration);this.container.style.WebkitTransition=a;this.container.style.MsTransition=a;this.container.style.transition=a;this.container.style.MozTransition=this.mozContainerTransition}};oa.prototype.disableAnimation=function(){this.container.style.WebkitTransition&&(this.container.style.WebkitTransition="",this.container.style.MozTransition=
976
- "",this.container.style.MsTransition="",this.container.style.transition="")};oa.prototype.hide=function(a){if(this.container){var e="undefined"===typeof a||-1!==this.chart.clearedOverlayedCanvas.indexOf("axis");this.chart.sessionVariables._dataHighlighted=!1;this.container.style.display="none";this.currentSeriesIndex=-1;this._entries=this._dataSeriesIndex=this._xValue=null;this._prevY=this._prevX=NaN;this._updatedEventParameters=null;if("undefined"===typeof a||a)this.chart.resetOverlayedCanvas(),
977
- e&&this.chart.renderCrosshairs(null,!1)}};oa.prototype.show=function(a,e,c){this._updateToolTip(a,e,"undefined"===typeof c?!1:c)};oa.prototype.showAtIndex=function(a,e){};oa.prototype.showAtX=function(a,e){if(!this.enabled)return!1;!l(this.chart.clearedOverlayedCanvas)&&this.chart.clearedOverlayedCanvas.indexOf("axis")&&(this.chart.clearedOverlayedCanvas=null);this._updateOptions();var c,b,d,f=[];d=!1;e=!l(e)&&0<=e&&e<this.chart.data.length?e:0;if(this.shared)for(var h=0;h<this.chart.data.length;h++)c=
978
- this.chart.data[h],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!l(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,this.chart.data[e].axisX.convertValueToPixel(a)===c.axisX.convertValueToPixel(b.dataPoint.x)&&f.push(b));else this.chart.data&&0<this.chart.data.length&&(c=this.chart.data[e],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!l(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,f.push(b)));if(0<f.length){for(h=0;h<f.length;h++)if(b=f[h],d=0<=b.dataSeries.type.indexOf("stacked")?b.dataSeries.dataPointEOs[b.index].cumulativeY:
979
- b.dataPoint.y,(this.shared||0<=b.dataSeries.type.indexOf("100"))&&b.dataSeries.axisX&&b.dataPoint.x>=b.dataSeries.axisX.viewportMinimum&&b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){d=!1;break}else if(b.dataSeries.axisX&&b.dataSeries.axisY&&(b.dataPoint.x<b.dataSeries.axisX.viewportMinimum||b.dataPoint.x>b.dataSeries.axisX.viewportMaximum||d<b.dataSeries.axisY.viewportMinimum||d>b.dataSeries.axisY.viewportMaximum))d=!0;else{d=!1;break}if(d)return this.hide(),!1;this.highlightObjects(f);"toolTip"===
980
- this.chart.clearedOverlayedCanvas&&this.chart.renderCrosshairs(null,!1);this._entries=f;h="";h=this.getToolTipInnerHTML({entries:f});if(null!==h){this.contentDiv.innerHTML=h;if(this.isToolTipDefinedInData&&l(this.options.content)&&l(this.options.contentFormatter))for(d=this.contentDiv.getElementsByTagName("span"),h=0;h<d.length;h++)d[h]&&(d[h].style.color=d[h].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=
981
- this.backgroundColor?this.backgroundColor:t?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=
982
- this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[c.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],
983
- this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:
984
- "Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:t?"italic":"normal"}catch(r){}if("pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type)c=f[0].dataSeries.dataPointEOs[f[0].index].center.x+f[0].dataSeries.radius*Math.cos(f[0].dataSeries.dataPointEOs[f[0].index].midAngle)+-("left"===f[0].dataSeries.dataPointEOs[f[0].index].hemisphere?0:this.container.clientWidth);else if("funnel"===
985
- f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type)d=f[0].dataSeries.dataPointEOs[f[0].index].sectionsofFunnel,c=(d.x1+d.x2-this.container.clientWidth)/2;else{if("bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type){var x=f[0].dataPoint.x;d=f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y;d="stackedBar100"===f[0].dataSeries.type?100*
986
- (d/f[0].dataSeries.plotUnit.dataPointYSums[x]):f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y;c=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:d)-this.container.clientWidth<<0}else c=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-this.container.clientWidth<<0;c-=10}0>c&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>Math.max(this.chart.container.clientWidth,
987
- this.chart.width)&&(c=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&"stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].index].center.y+f[0].dataSeries.radius*Math.sin(f[0].dataSeries.dataPointEOs[f[0].index].midAngle),
988
- b<f[0].dataSeries.dataPointEOs[f[0].index].center.y&&(b+=this.container.clientHeight)):"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type?(d=f[0].dataSeries.dataPointEOs[f[0].dataSeries.reversed?f[0].dataSeries.dataPointEOs.length-1-f[0].index:f[0].index].sectionsofFunnel,b="undefined"!==typeof d.x5?(d.y2+d.y4)/2:(d.y2+d.y3)/2+this.container.clientHeight/2):"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?
989
- b=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):(x=f[0].dataPoint.x,d=f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y,d=0<=b.dataSeries.type.indexOf("100")?100*(d/f[0].dataSeries.plotUnit.dataPointYSums[x]):f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y,b=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-
990
- 1]:d)):b=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);b=-b+10;0<b+this.container.clientHeight+5&&(b-=b+this.container.clientHeight+5-0);this.fixMozTransitionDelay(c,b);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.container.style.left=c+"px";this.container.style.bottom=b+"px"}else return this.hide(!1),!1}else return this.hide(),!1;this._xValue=a;this._dataSeriesIndex=e;this._prevY=this._prevX=
991
- NaN;return!0};oa.prototype.fixMozTransitionDelay=function(a,e){if(20<this.chart._eventManager.lastObjectId)this.mozContainerTransition=this.getContainerTransition(0);else{var c=parseFloat(this.container.style.left),c=isNaN(c)?0:c,b=parseFloat(this.container.style.bottom),b=isNaN(b)?0:b;10<Math.sqrt(Math.pow(c-a,2)+Math.pow(b-e,2))?this.mozContainerTransition=this.getContainerTransition(0.1):this.mozContainerTransition=this.getContainerTransition(0)}};oa.prototype.getContainerTransition=function(a){return"left "+
992
- a+"s ease-out 0s, bottom "+a+"s ease-out 0s"};ja.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.previousDataPointEventObject=null;this.eventObjects=[];t&&(this.ghostCtx.clearRect(0,0,this.chart.width,this.chart.height),this.ghostCtx.beginPath())};ja.prototype.getNewObjectTrackingId=function(){return++this.lastObjectId};ja.prototype.mouseEventHandler=function(a){if("mousemove"===a.type||"click"===a.type){var e=[],c=Ra(a),b=null;if((b=
993
- this.chart.getObjectAtXY(c.x,c.y,!1))&&"undefined"!==typeof this.objectMap[b])if(b=this.objectMap[b],"dataPoint"===b.objectType){var d=this.chart.data[b.dataSeriesIndex],f=d.dataPoints[b.dataPointIndex],h=b.dataPointIndex;b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,chart:this.chart};b.eventContext={context:f,userContext:f,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(b);b=this.objectMap[d.id];b.eventParameter=
994
- {x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,chart:this.chart};b.eventContext={context:d,userContext:d.options,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(this.objectMap[d.id])}else"legendItem"===b.objectType&&(d=this.chart.data[b.dataSeriesIndex],f=null!==b.dataPointIndex?d.dataPoints[b.dataPointIndex]:null,b.eventParameter={x:c.x,y:c.y,dataSeries:d.options,dataPoint:f,dataPointIndex:b.dataPointIndex,dataSeriesIndex:b.dataSeriesIndex,
995
- chart:this.chart},b.eventContext={context:this.chart.legend,userContext:this.chart.legend.options,mouseover:"itemmouseover",mousemove:"itemmousemove",mouseout:"itemmouseout",click:"itemclick"},e.push(b));d=[];for(c=0;c<this.mouseoveredObjectMaps.length;c++){f=!0;for(b=0;b<e.length;b++)if(e[b].id===this.mouseoveredObjectMaps[c].id){f=!1;break}f?this.fireEvent(this.mouseoveredObjectMaps[c],"mouseout",a):d.push(this.mouseoveredObjectMaps[c])}this.mouseoveredObjectMaps=d;for(c=0;c<e.length;c++){d=!1;
996
- for(b=0;b<this.mouseoveredObjectMaps.length;b++)if(e[c].id===this.mouseoveredObjectMaps[b].id){d=!0;break}d||(this.fireEvent(e[c],"mouseover",a),this.mouseoveredObjectMaps.push(e[c]));"click"===a.type?this.fireEvent(e[c],"click",a):"mousemove"===a.type&&this.fireEvent(e[c],"mousemove",a)}}};ja.prototype.fireEvent=function(a,e,c){if(a&&e){var b=a.eventParameter,d=a.eventContext,f=a.eventContext.userContext;f&&(d&&f[d[e]])&&f[d[e]].call(f,b);"mouseout"!==e?f.cursor&&f.cursor!==c.target.style.cursor&&
997
- (c.target.style.cursor=f.cursor):(c.target.style.cursor=this.chart.panEnabled?"itemmouseout"!==d.mouseout||f.dockInsidePlotArea?"move":this.chart._defaultCursor:this.chart._defaultCursor,delete a.eventParameter,delete a.eventContext);"click"===e&&("dataPoint"===a.objectType&&this.chart.pieDoughnutClickHandler)&&this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex],b);"click"===e&&("dataPoint"===a.objectType&&this.chart.funnelPyramidClickHandler)&&this.chart.funnelPyramidClickHandler.call(this.chart.data[a.dataSeriesIndex],
998
- b)}};na.prototype.animate=function(a,e,c,b,d){var f=this;this.chart.isAnimating=!0;d=d||M.easing.linear;c&&this.animations.push({startTime:(new Date).getTime()+(a?a:0),duration:e,animationCallback:c,onComplete:b});for(a=[];0<this.animations.length;)if(e=this.animations.shift(),c=(new Date).getTime(),b=0,e.startTime<=c&&(b=d(Math.min(c-e.startTime,e.duration),0,1,e.duration),b=Math.min(b,1),isNaN(b)||!isFinite(b))&&(b=1),1>b&&a.push(e),e.animationCallback(b),1<=b&&e.onComplete)e.onComplete();this.animations=
999
- a;0<this.animations.length?this.animationRequestId=this.chart.requestAnimFrame.call(window,function(){f.animate.call(f)}):this.chart.isAnimating=!1};na.prototype.cancelAllAnimations=function(){this.animations=[];this.animationRequestId&&this.chart.cancelRequestAnimFrame.call(window,this.animationRequestId);this.animationRequestId=null;this.chart.isAnimating=!1};var M={yScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,0,d-d*
1000
- a,c.canvas.width/la,a*c.canvas.height/la)}},xScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,d-d*a,0,a*c.canvas.width/la,c.canvas.height/la)}},xClipAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/la,b.height/la);c.restore()}},fadeInAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,
1001
- b.height,0,0,c.canvas.width/la,c.canvas.height/la);c.restore()}},easing:{linear:function(a,e,c,b){return c*a/b+e},easeOutQuad:function(a,e,c,b){return-c*(a/=b)*(a-2)+e},easeOutQuart:function(a,e,c,b){return-c*((a=a/b-1)*a*a*a-1)+e},easeInQuad:function(a,e,c,b){return c*(a/=b)*a+e},easeInQuart:function(a,e,c,b){return c*(a/=b)*a*a*a+e}}},Y={drawMarker:function(a,e,c,b,d,f,h,l){if(c){var r=1;c.fillStyle=f?f:"#000000";c.strokeStyle=h?h:"#000000";c.lineWidth=l?l:0;c.setLineDash&&c.setLineDash(J("solid",
1002
- l));"circle"===b?(c.moveTo(a,e),c.beginPath(),c.arc(a,e,d/2,0,2*Math.PI,!1),f&&c.fill(),l&&(h?c.stroke():(r=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=r))):"square"===b?(c.beginPath(),c.rect(a-d/2,e-d/2,d,d),f&&c.fill(),l&&(h?c.stroke():(r=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=r))):"triangle"===b?(c.beginPath(),c.moveTo(a-d/2,e+d/2),c.lineTo(a+d/2,e+d/2),c.lineTo(a,e-d/2),c.closePath(),f&&c.fill(),l&&(h?c.stroke():(r=c.globalAlpha,
1003
- c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=r)),c.beginPath()):"cross"===b&&(c.strokeStyle=f,c.lineWidth=d/4,c.beginPath(),c.moveTo(a-d/2,e-d/2),c.lineTo(a+d/2,e+d/2),c.stroke(),c.moveTo(a+d/2,e-d/2),c.lineTo(a-d/2,e+d/2),c.stroke())}},drawMarkers:function(a){for(var e=0;e<a.length;e++){var c=a[e];Y.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return r}();r.version="v3.16.0 Beta 1";window.CanvasJS&&(r&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=
1004
- r)})();
757
+ 0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(m.textBlock.y=q.y-m.textBlock.topPadding,m.textBlock.x="inside"===this.labelPlacement?q.x+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):0>this.labelAngle?(m.textBlock.y=0===this.labelAngle%90&&0!==this.labelAngle%180?q.y-m.textBlock.width/2*Math.sin(Math.PI/180*this.labelAngle):("inside"===this.labelPlacement?
758
+ q.y:q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):(m.textBlock.y=0===
759
+ this.labelAngle%90&&0!==this.labelAngle%180?q.y-m.textBlock.width/2*Math.sin(Math.PI/180*this.labelAngle):("inside"===this.labelPlacement?q.y:q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-
760
+ m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();
761
+ a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.x+a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x1+this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2+this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("right"===this._position){for(k=0;k<this._labels.length;k++)m=this._labels[k],
762
+ m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x+this.tickLength<<0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(m.textBlock.y=q.y-m.textBlock.topPadding,m.textBlock.x=
763
+ "inside"===this.labelPlacement?q.x-m.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(m.textBlock.y=0===this.labelAngle%90&&0!==this.labelAngle%180?q.y-m.textBlock.width/2*Math.sin(Math.PI/180*this.labelAngle):("inside"===this.labelPlacement?q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):q.y)-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?
764
+ q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(m.textBlock.y=0===this.labelAngle%90&&0!==this.labelAngle%180?q.y-m.textBlock.width/2*Math.sin(Math.PI/180*this.labelAngle):("inside"===this.labelPlacement?q.y-m.textBlock.width*Math.sin(Math.PI/
765
+ 180*this.labelAngle):q.y)-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",
766
+ function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.x-a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x2-
767
+ this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2-this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}f=0;if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)m=a._labels[k],m.position<a.viewportMinimum||(m.position>a.viewportMaximum||e&&0!==f++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),m.textBlock.render(!0),
768
+ a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||(m.position>this.viewportMaximum||e&&0!==f++%2&&this.labelAutoFit)||m.textBlock.render(!0)};A.prototype.renderInterlacedColors=function(){var a=this.chart.plotArea.ctx,e,c,b=this.chart.plotArea,d=0;e=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(e=this.getPixelCoordinatesOnAxis(this._labels[d].position),
769
+ c=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(Math.min(c.x,e.x),b.y1,Math.abs(c.x-e.x),Math.abs(b.y1-b.y2)),e=!1):e=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(c=this.getPixelCoordinatesOnAxis(this._labels[d].position),e=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):
770
+ this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(b.x1,Math.min(c.y,e.y),Math.abs(b.x1-b.x2),Math.abs(e.y-c.y)),e=!1):e=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&0<this.stripLines.length&&a){var e=this,c,b,d=0,f=0,h=!1;b=!1;for(var s=[],r=[],k=!1,p,d=0;d<this.stripLines.length;d++){var m=this.stripLines[d];m._thicknessType===a&&("pixel"===a&&(m.value<this.viewportMinimum||m.value>this.viewportMaximum||l(m.value)||isNaN(this.range))||
771
+ "value"===a&&(m.startValue<=this.viewportMinimum&&m.endValue<=this.viewportMinimum||m.startValue>=this.viewportMaximum&&m.endValue>=this.viewportMaximum||l(m.startValue)||l(m.endValue)||isNaN(this.range))||s.push(m))}for(d=0;d<this._stripLineLabels.length;d++)if(m=this.stripLines[d],c=this._stripLineLabels[d],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){m&&(this.ctx.strokeStyle=
772
+ m.tickColor?m.tickColor:m.color,this.ctx.lineWidth=m.tickThickness=l(m.tickThickness)?"pixel"===m._thicknessType?m.thickness:this.tickThickness:m.tickThickness,l(m.opacity)||"pixel"!==m._thicknessType||(p=m.ctx.globalAlpha,m.ctx.globalAlpha=m.opacity),l(m.opacity)&&(m.opacity=m.ctx.globalAlpha));if("bottom"===this._position){var q=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<0),this.ctx.lineTo(q,b.y+m.tickLength<<0),this.ctx.stroke());
773
+ 0===m.labelAngle?(b.x-=c.textBlock.width/2,b.y+=m.tickLength+c.textBlock.fontSize/2+5):(b.x-=(0>m.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*m.labelAngle),b.y+=m.tickLength+5+(0>m.labelAngle?Math.abs(c.textBlock.width*Math.sin(Math.PI/180*m.labelAngle)-c.textBlock.fontSize/2*Math.cos(Math.PI/180*m.labelAngle)):Math.abs(c.textBlock.fontSize/2*Math.cos(Math.PI/180*m.labelAngle))))}else"top"===this._position?(q=1===this.ctx.lineWidth%
774
+ 2?(b.x<<0)+0.5:b.x<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<0),this.ctx.lineTo(q,b.y-m.tickLength<<0),this.ctx.stroke()),0===m.labelAngle?(b.x-=c.textBlock.width/2,b.y-=m.tickLength+c.textBlock.height-c.textBlock.fontSize/2):(b.x-=(0<m.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*m.labelAngle),b.y-=m.tickLength+2+(0<m.labelAngle?(c.textBlock.height-c.textBlock.fontSize/2)*Math.cos(Math.PI/180*m.labelAngle)+
775
+ c.textBlock.width*Math.sin(Math.PI/180*m.labelAngle):(c.textBlock.height-c.textBlock.fontSize/2)*Math.cos(Math.PI/180*m.labelAngle)))):"left"===this._position?(q=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,q),this.ctx.lineTo(b.x-m.tickLength<<0,q),this.ctx.stroke()),0===m.labelAngle?(b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.tickLength-5,b.y-=c.textBlock.topPadding):(b.y-=(0===m.labelAngle%90&&0!==m.labelAngle%
776
+ 180?c.textBlock.width/2*Math.sin(Math.PI/180*m.labelAngle):c.textBlock.width*Math.sin(Math.PI/180*m.labelAngle))+c.textBlock.topPadding*Math.cos(Math.PI/180*m.labelAngle),b.x-=m.tickLength+5+(0<m.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle)+c.textBlock.fontSize/2*Math.sin(Math.PI/180*m.labelAngle):c.textBlock.width*Math.cos(Math.PI/180*m.labelAngle)-(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*m.labelAngle)))):"right"===this._position&&(q=1===this.ctx.lineWidth%
777
+ 2?(b.y<<0)+0.5:b.y<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,q),this.ctx.lineTo(b.x+m.tickLength<<0,q),this.ctx.stroke()),0===m.labelAngle?(b.x=b.x+m.tickLength+5,b.y-=c.textBlock.topPadding):(b.y-=0===m.labelAngle%90&&0!==m.labelAngle%180?c.textBlock.width/2*Math.sin(Math.PI/180*m.labelAngle):0+c.textBlock.topPadding*Math.cos(Math.PI/180*m.labelAngle),b.x=m.tickLength+5+(0<m.labelAngle?b.x+(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*m.labelAngle):b.x-
778
+ c.textBlock.fontSize/2*Math.sin(Math.PI/180*m.labelAngle))));p&&(m.ctx.globalAlpha=p);c.textBlock.x=b.x;c.textBlock.y=b.y;r.push(c)}else m._thicknessType===a&&(l(m.opacity)&&(m.opacity=m.ctx.globalAlpha),c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-m.thickness/2>this.chart.plotArea.x1?l(m.startValue)?b.x-=c.textBlock.height-
779
+ c.textBlock.fontSize/2+m.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,l(m.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x+=c.textBlock.height/2-c.textBlock.fontSize/2),b.y=-90===c.textBlock.angle?"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y1+c.textBlock.width+3:"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-
780
+ c.textBlock.width-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y1+3):"top"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-m.thickness/2>this.chart.plotArea.x1?l(m.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/
781
+ 2:(c.textBlock.angle=90,l(m.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x+=c.textBlock.height/2-c.textBlock.fontSize/2),b.y=-90===c.textBlock.angle?"near"===c.stripLine.labelAlign?this.chart.plotArea.y1+c.textBlock.width+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y2-3:"near"===c.stripLine.labelAlign?this.chart.plotArea.y1+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-
782
+ c.textBlock.width)/2:this.chart.plotArea.y2-c.textBlock.width-3):"left"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-m.thickness/2>this.chart.plotArea.y1?l(m.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:l(m.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/
783
+ 2+m.thickness/2:b.y+=c.textBlock.height/2-c.textBlock.fontSize+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x1+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x2-c.textBlock.width-3):"right"===this._position&&(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-
784
+ m.thickness/2>this.chart.plotArea.y1?l(m.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:l(m.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x2-c.textBlock.width-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x1+3),c.textBlock.x=
785
+ b.x,c.textBlock.y=b.y,r.push(c));if(!k){b=!1;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(d=0;d<s.length;d++)m=s[d],m.showOnTop?h||(h=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(f=
786
+ 0;f<s.length;f++)m=s[f],m.showOnTop&&m.render();this.ctx.restore()},m)):m.render();for(d=0;d<r.length;d++)c=r[d],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(f=0;f<r.length;f++)c=r[f],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(e.ctx.save(),e.ctx.beginPath(),e.ctx.rect(e.chart.plotArea.x1,e.chart.plotArea.y1,e.chart.plotArea.width,e.chart.plotArea.height),e.ctx.clip(),c.textBlock.render(!0),e.ctx.restore())},c.textBlock)):
787
+ "inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();k=!0}if(k)for(b=!1,d=0;d<r.length;d++)c=r[d],"outside"===c.stripLine.labelPlacement&&c.textBlock.render(!0)}};A.prototype.renderBreaksBackground=function(){this.chart._breaksCanvas&&(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length&&this.maskCanvas)&&(this.chart._breaksCanvasCtx.save(),this.chart._breaksCanvasCtx.beginPath(),this.chart._breaksCanvasCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,
788
+ this.chart.plotArea.height),this.chart._breaksCanvasCtx.clip(),this.chart._breaksCanvasCtx.drawImage(this.maskCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx.restore())};A.prototype.createMask=function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;t?(this.maskCanvas=xa(this.chart.width,this.chart.height),this.maskCtx=this.maskCanvas.getContext("2d")):(this.maskCanvas=this.chart.plotArea.canvas,this.maskCtx=this.chart.plotArea.ctx);
789
+ this.maskCtx.save();this.maskCtx.beginPath();this.maskCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.maskCtx.clip();for(var e=0;e<a.length;e++)a[e].endValue<this.viewportMinimum||(a[e].startValue>this.viewportMaximum||isNaN(this.range))||a[e].render(this.maskCtx);this.maskCtx.restore()}};A.prototype.renderCrosshair=function(a,e){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(a,e)};A.prototype.showCrosshair=function(a){l(a)||
790
+ (a<this.viewportMinimum||a>this.viewportMaximum)||("top"===this._position||"bottom"===this._position?this.crosshair.render(this.convertValueToPixel(a),null,a):this.crosshair.render(null,this.convertValueToPixel(a),a))};A.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var e,c=this.chart.plotArea;a.lineWidth=this.gridThickness;a.strokeStyle=this.gridColor;a.setLineDash&&a.setLineDash(J(this.gridDashType,this.gridThickness));if("bottom"===this._position||
791
+ "top"===this._position)for(b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.x<<0)+0.5:e.x<<0,a.moveTo(e,c.y1<<0),a.lineTo(e,c.y2<<0),a.stroke());else if("left"===this._position||"right"===this._position)for(var b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>
792
+ this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.y<<0)+0.5:e.y<<0,a.moveTo(c.x1<<0,e),a.lineTo(c.x2<<0,e),a.stroke());a.restore()}};A.prototype.renderAxisLine=function(){var a=this.chart.ctx,e=t?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),d,f;e.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?
793
+ (d=this.lineCoordinates.x2,f=this.lineCoordinates.x1):(d=this.lineCoordinates.x1,f=this.lineCoordinates.x2);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor?this.lineColor:"black";e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));var h=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<0;e.beginPath();if(this.scaleBreaks&&!l(this.scaleBreaks.firstBreakIndex))if(l(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+
794
+ b;else for(var s=this.scaleBreaks.firstBreakIndex;s<=this.scaleBreaks.lastBreakIndex;s++)e.moveTo(d,h),e.lineTo(this.scaleBreaks._appliedBreaks[s].startPixel+c,h),d=this.scaleBreaks._appliedBreaks[s].endPixel+b;d&&(e.moveTo(d,h),e.lineTo(f,h));e.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){this.reversed?(d=this.lineCoordinates.y1,f=this.lineCoordinates.y2):(d=this.lineCoordinates.y2,f=this.lineCoordinates.y1);e.lineWidth=this.lineThickness;e.strokeStyle=
795
+ this.lineColor;e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));h=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;e.beginPath();if(this.scaleBreaks&&!l(this.scaleBreaks.firstBreakIndex))if(l(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+c;else for(s=this.scaleBreaks.firstBreakIndex;s<=this.scaleBreaks.lastBreakIndex;s++)e.moveTo(h,d),e.lineTo(h,this.scaleBreaks._appliedBreaks[s].startPixel+
796
+ b),d=this.scaleBreaks._appliedBreaks[s].endPixel+c;d&&(e.moveTo(h,d),e.lineTo(h,f));e.stroke()}t&&(a.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx&&this.chart._breaksCanvasCtx.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),e.clearRect(0,0,this.chart.width,this.chart.height));e.restore()};A.prototype.getPixelCoordinatesOnAxis=function(a){var e={};if("bottom"===this._position||"top"===this._position)e.x=this.convertValueToPixel(a),
797
+ e.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)e.y=this.convertValueToPixel(a),e.x=this.lineCoordinates.x2;return e};A.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var e=0,c=0,b,e=!0,d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?a:"left"===this._position||"right"===this._position?a.y:a.x;if(this.logarithmic){a=b=Math.pow(this.logarithmBase,(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit);
798
+ if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size))<d[c].endValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].endValue/this.conversionParameters.minimum/
799
+ Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue)),b/=Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b>d[c].startValue/this.conversionParameters.minimum){b/=d[c].startValue/this.conversionParameters.minimum;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/
800
+ d[c].size;b/=d[c].size;e=!1}else break;else if(b>d[c].startValue/d[c-1].endValue){b/=d[c].startValue/d[c-1].endValue;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/d[c].size;b/=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/
801
+ d[c].startValue,Math.log(b)/Math.log(d[c].size))>d[c].startValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].startValue/this.conversionParameters.minimum*Math.pow(d[c].size,Math.log(d[c].startValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue))*b,b*=Math.pow(d[c].size,Math.log(this.conversionParameters.minimum/d[c].startValue)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b<d[c].endValue/this.conversionParameters.minimum){b/=
802
+ d[c].endValue/this.conversionParameters.minimum;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size;e=!1}else break;else if(b<d[c].endValue/d[c+1].startValue){b/=d[c].endValue/d[c+1].startValue;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size}else break;
803
+ e=a*this.viewportMinimum}else{a=b=(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit;if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-d[c].startValue)/d[c].size<d[c].endValue){a=0>=d[c].size?0:b*(d[c].endValue-
804
+ d[c].startValue)/d[c].size;break}else a+=d[c].endValue-this.conversionParameters.minimum-d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue),b-=d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue);e=!1}else if(b>d[c].startValue-this.conversionParameters.minimum){b-=d[c].startValue-this.conversionParameters.minimum;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-
805
+ d[c].startValue-d[c].size;b-=d[c].size;e=!1}else break;else if(b>d[c].startValue-d[c-1].endValue){b-=d[c].startValue-d[c-1].endValue;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-d[c].startValue-d[c].size;b-=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum)if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-
806
+ d[c].startValue)/d[c].size>d[c].startValue){a=0>=d[c].size?0:b*(d[c].endValue-d[c].startValue)/d[c].size;break}else a+=d[c].startValue-this.conversionParameters.minimum+d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),b+=d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),e=!1;else if(b<d[c].endValue-this.conversionParameters.minimum){b-=d[c].endValue-this.conversionParameters.minimum;if(b>-1*d[c].size){a+=(d[c].endValue-
807
+ d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size;e=!1}else break;else if(b<d[c].endValue-d[c+1].startValue){b-=d[c].endValue-d[c+1].startValue;if(b>-1*d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size}else break;e=this.conversionParameters.minimum+a}return e};A.prototype.convertValueToPixel=function(a){a=this.getApparentDifference(this.conversionParameters.minimum,
808
+ a,a);return this.logarithmic?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*Math.log(a/this.conversionParameters.minimum)/this.conversionParameters.lnLogarithmBase+0.5<<0:"axisX"===this.type?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5};A.prototype.getApparentDifference=function(a,
809
+ e,c,b){var d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];if(this.logarithmic){c=l(c)?e/a:c;for(var f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*d[f].startValue*d[f].size:a>=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*a*Math.pow(d[f].size,Math.log(d[f].endValue/a)/Math.log(d[f].endValue/d[f].startValue)):a<=d[f].startValue&&e<=d[f].endValue?c=c/e*d[f].startValue*Math.pow(d[f].size,Math.log(e/d[f].startValue)/Math.log(d[f].endValue/
810
+ d[f].startValue)):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a*Math.pow(d[f].size,Math.log(e/a)/Math.log(d[f].endValue/d[f].startValue))))}else for(c=l(c)?Math.abs(e-a):c,f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+d[f].startValue+d[f].size:a>d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+a+d[f].size*(d[f].endValue-a)/(d[f].endValue-d[f].startValue):a<=d[f].startValue&&e<d[f].endValue?c=c-e+d[f].startValue+d[f].size*(e-d[f].startValue)/
811
+ (d[f].endValue-d[f].startValue):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a+d[f].size*(e-a)/(d[f].endValue-d[f].startValue)));return c};A.prototype.setViewPortRange=function(a,e){for(var c=!1,b=0;b<this.dataSeries.length;b++)if(this.dataSeries[b].visible){c=!0;break}this.sessionVariables.newViewportMinimum=this.viewportMinimum=c?Math.min(a,e):null;this.sessionVariables.newViewportMaximum=this.viewportMaximum=c?Math.max(a,e):null};A.prototype.getXValueAt=function(a){if(!a)return null;var e=null;
812
+ "left"===this._position?e=this.convertPixelToValue(a.y):"bottom"===this._position&&(e=this.convertPixelToValue(a.x));return e};A.prototype.calculateValueToPixelConversionParameters=function(a){a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];var e={pixelPerUnit:null,minimum:null,reference:null},c=this.lineCoordinates.width,b=this.lineCoordinates.height,c="bottom"===this._position||"top"===this._position?c:b,b=Math.abs(this.range);if(this.logarithmic)for(var d=0;d<a.length&&!(this.viewportMaximum<
813
+ a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?
814
+ c*(1-parseFloat(a[d].spacing)/100*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b/this.viewportMaximum*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)):
815
+ c-Math.min(a[d].spacing,0.1*c)*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)));else for(d=0;d<a.length&&!(this.viewportMaximum<a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,
816
+ 0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b-this.viewportMaximum+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?
817
+ c*(1-parseFloat(a[d].spacing)/100*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)));e.minimum=this.viewportMinimum;e.maximum=this.viewportMaximum;e.range=b;if("bottom"===this._position||"top"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?-1:1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?
818
+ -1:1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.x2:this.lineCoordinates.x1;if("left"===this._position||"right"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?1:-1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?1:-1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.y1:this.lineCoordinates.y2;this.conversionParameters=e};A.prototype.calculateAxisParameters=function(){if(this.logarithmic)this.calculateLogarithmicAxisParameters();
819
+ else{var a=this.chart.layoutManager.getFreeSpace(),e=!1,c=!1;"bottom"===this._position||"top"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?"xySwapped"===this.chart.plotInfo.axisPlacement?62:70:"xySwapped"===this.chart.plotInfo.axisPlacement?50:40,b=4;"axisX"===this.type&&(b=600>this.maxWidth?8:6);var a=Math.max(b,Math.floor(this.maxWidth/a)),d,f,h,b=0;!l(this.minimum)&&(!l(this.maximum)&&this.minimum>this.maximum)&&
820
+ (this.minimum=this.maximum=null);!l(this.viewportMinimum)&&(!l(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(l(this.options.viewportMinimum)&&!l(this.sessionVariables.newViewportMinimum)&&!isNaN(this.sessionVariables.newViewportMinimum))this.viewportMinimum=this.sessionVariables.newViewportMinimum;else if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(l(this.options.viewportMaximum)&&
821
+ !l(this.sessionVariables.newViewportMaximum)&&!isNaN(this.sessionVariables.newViewportMaximum))this.viewportMaximum=this.sessionVariables.newViewportMaximum;else if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;!l(this.minimum)&&this.viewportMinimum<this.minimum&&(this.viewportMinimum=this.minimum);!l(this.maximum)&&this.viewportMaximum>this.maximum&&(this.viewportMaximum=this.maximum);if(this.scaleBreaks)for(b=0;b<this.scaleBreaks._appliedBreaks.length;b++)if((!l(this.sessionVariables.newViewportMinimum)&&
822
+ this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue||!l(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[b].startValue||!l(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue)&&(!l(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue||!l(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[b].endValue||
823
+ !l(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue)){this.scaleBreaks._appliedBreaks.splice(b,1);break}if("axisX"===this.type){if(this.dataSeries&&0<this.dataSeries.length)for(d=0;d<this.dataSeries.length;d++)"dateTime"===this.dataSeries[d].xValueType&&(c=!0);d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin;f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax;0===f-d&&(b="undefined"===typeof this.options.interval?
824
+ 0.4:this.options.interval,f+=b,d-=b);Infinity!==this.dataInfo.minDiff?h=this.dataInfo.minDiff:1<f-d?h=0.5*Math.abs(f-d):(h=this.dataInfo.min===this.dataInfo.max?1:Math.abs(this.dataInfo.max-this.dataInfo.min),c&&(e=!0))}else"axisY"===this.type&&(d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,h=Math.pow(2,50),isFinite(d)||isFinite(f)?isFinite(d)?isFinite(f)||(f=d):d=f:(f="undefined"===typeof this.options.interval?
825
+ -Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(d>=h||f>=h||d<=-h||f<=-h)&&10>f-d?f+=9:(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:
826
+ 1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&0<d&&(d=0),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&0>f&&(f=0));b=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?d:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?f:this.viewportMaximum,null,!0);if("axisX"===this.type&&c){this.valueType="dateTime";this.intervalType||(b/1<=a?(this.interval=1,this.intervalType=
827
+ "millisecond"):b/2<=a?(this.interval=2,this.intervalType="millisecond"):b/5<=a?(this.interval=5,this.intervalType="millisecond"):b/10<=a?(this.interval=10,this.intervalType="millisecond"):b/20<=a?(this.interval=20,this.intervalType="millisecond"):b/50<=a?(this.interval=50,this.intervalType="millisecond"):b/100<=a?(this.interval=100,this.intervalType="millisecond"):b/200<=a?(this.interval=200,this.intervalType="millisecond"):b/250<=a?(this.interval=250,this.intervalType="millisecond"):b/300<=a?(this.interval=
828
+ 300,this.intervalType="millisecond"):b/400<=a?(this.interval=400,this.intervalType="millisecond"):b/500<=a?(this.interval=500,this.intervalType="millisecond"):b/(1*R.secondDuration)<=a?(this.interval=1,this.intervalType="second"):b/(2*R.secondDuration)<=a?(this.interval=2,this.intervalType="second"):b/(5*R.secondDuration)<=a?(this.interval=5,this.intervalType="second"):b/(10*R.secondDuration)<=a?(this.interval=10,this.intervalType="second"):b/(15*R.secondDuration)<=a?(this.interval=15,this.intervalType=
829
+ "second"):b/(20*R.secondDuration)<=a?(this.interval=20,this.intervalType="second"):b/(30*R.secondDuration)<=a?(this.interval=30,this.intervalType="second"):b/(1*R.minuteDuration)<=a?(this.interval=1,this.intervalType="minute"):b/(2*R.minuteDuration)<=a?(this.interval=2,this.intervalType="minute"):b/(5*R.minuteDuration)<=a?(this.interval=5,this.intervalType="minute"):b/(10*R.minuteDuration)<=a?(this.interval=10,this.intervalType="minute"):b/(15*R.minuteDuration)<=a?(this.interval=15,this.intervalType=
830
+ "minute"):b/(20*R.minuteDuration)<=a?(this.interval=20,this.intervalType="minute"):b/(30*R.minuteDuration)<=a?(this.interval=30,this.intervalType="minute"):b/(1*R.hourDuration)<=a?(this.interval=1,this.intervalType="hour"):b/(2*R.hourDuration)<=a?(this.interval=2,this.intervalType="hour"):b/(3*R.hourDuration)<=a?(this.interval=3,this.intervalType="hour"):b/(6*R.hourDuration)<=a?(this.interval=6,this.intervalType="hour"):b/(1*R.dayDuration)<=a?(this.interval=1,this.intervalType="day"):b/(2*R.dayDuration)<=
831
+ a?(this.interval=2,this.intervalType="day"):b/(4*R.dayDuration)<=a?(this.interval=4,this.intervalType="day"):b/(1*R.weekDuration)<=a?(this.interval=1,this.intervalType="week"):b/(2*R.weekDuration)<=a?(this.interval=2,this.intervalType="week"):b/(3*R.weekDuration)<=a?(this.interval=3,this.intervalType="week"):b/(1*R.monthDuration)<=a?(this.interval=1,this.intervalType="month"):b/(2*R.monthDuration)<=a?(this.interval=2,this.intervalType="month"):b/(3*R.monthDuration)<=a?(this.interval=3,this.intervalType=
832
+ "month"):b/(6*R.monthDuration)<=a?(this.interval=6,this.intervalType="month"):(this.interval=b/(1*R.yearDuration)<=a?1:b/(2*R.yearDuration)<=a?2:b/(4*R.yearDuration)<=a?4:Math.floor(A.getNiceNumber(b/(a-1),!0)/R.yearDuration),this.intervalType="year"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=d-h/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=f+h/2;e?this.autoValueFormatString="MMM DD YYYY HH:mm":"year"===this.intervalType?
833
+ this.autoValueFormatString="YYYY":"month"===this.intervalType?this.autoValueFormatString="MMM YYYY":"week"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"day"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"hour"===this.intervalType?this.autoValueFormatString="hh:mm TT":"minute"===this.intervalType?this.autoValueFormatString="hh:mm TT":"second"===this.intervalType?this.autoValueFormatString="hh:mm:ss TT":"millisecond"===this.intervalType&&(this.autoValueFormatString="fff'ms'");
834
+ this.valueFormatString||(this.valueFormatString=this.autoValueFormatString)}else{this.intervalType="number";b=A.getNiceNumber(b,!1);this.interval=this.options&&0<this.options.interval?this.options.interval:A.getNiceNumber(b/(a-1),!0);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?d-h/2:Math.floor(d/this.interval)*this.interval;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?f+h/2:Math.ceil(f/
835
+ this.interval)*this.interval;0===this.viewportMaximum&&0===this.viewportMinimum&&(0===this.options.viewportMinimum?this.viewportMaximum+=10:0===this.options.viewportMaximum&&(this.viewportMinimum-=10),this.options&&"undefined"===typeof this.options.interval&&(this.interval=A.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)))}if(null===this.minimum||null===this.maximum)if("axisX"===this.type?(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:
836
+ this.dataInfo.max,0===f-d&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,f+=b,d-=b),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1):"axisY"===this.type&&(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(d)||isFinite(f)?0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),
837
+ 5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)):(f="undefined"===typeof this.options.interval?-Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&0<d&&(d=0),this.includeZero&&(null===this.maximum||
838
+ isNaN(this.maximum))&&0>f&&(f=0)),Math.abs(this.getApparentDifference(d,f,null,!0)),"axisX"===this.type&&c){this.valueType="dateTime";if(null===this.minimum||isNaN(this.minimum))this.minimum=d-h/2,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum);if(null===this.maximum||isNaN(this.maximum))this.maximum=f+h/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||
839
+ isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)}else this.intervalType=this.valueType="number",null===this.minimum&&(this.minimum="axisX"===this.type?d-h/2:Math.floor(d/this.interval)*this.interval,this.minimum=Math.min(this.minimum,l(this.sessionVariables.newViewportMinimum)||isNaN(this.sessionVariables.newViewportMinimum)?l(this.sessionVariables.viewportMinimum)||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum:
840
+ this.sessionVariables.newViewportMinimum)),null===this.maximum&&(this.maximum="axisX"===this.type?f+h/2:Math.ceil(f/this.interval)*this.interval,this.maximum=Math.max(this.maximum,l(this.sessionVariables.newViewportMaximum)||isNaN(this.sessionVariables.newViewportMaximum)?l(this.sessionVariables.viewportMaximum)||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum:this.sessionVariables.newViewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?
841
+ this.maximum+=10:0===this.options.maximum&&(this.minimum-=10));l(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));l(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum));this.range=this.viewportMaximum-this.viewportMinimum;this.intervalStartPosition="axisX"===this.type&&c?this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval):Math.floor((this.viewportMinimum+
842
+ 0.2*this.interval)/this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=A.generateValueFormatString(this.range,2))}};A.prototype.calculateLogarithmicAxisParameters=function(){var a=this.chart.layoutManager.getFreeSpace(),e=Math.log(this.logarithmBase),c;"bottom"===this._position||"top"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?500>this.maxWidth?7:Math.max(7,Math.floor(this.maxWidth/
843
+ 100)):Math.max(Math.floor(this.maxWidth/50),3),b,d,f,h;h=1;!l(this.minimum)&&(!l(this.maximum)&&this.minimum>this.maximum)&&(this.minimum=this.maximum=null);!l(this.viewportMinimum)&&(!l(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;if(this.scaleBreaks)for(h=
844
+ 0;h<this.scaleBreaks._appliedBreaks.length;h++)if((!l(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[h].startValue||!l(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[h].startValue||!l(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[h].startValue)&&(!l(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[h].endValue||
845
+ !l(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[h].endValue||!l(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[h].endValue)){this.scaleBreaks._appliedBreaks.splice(h,1);break}"axisX"===this.type?(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===d/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?
846
+ 0.4:this.options.interval),d*=h,b/=h),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(d)?(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1):0>=b?b=d:isFinite(d)||(d=b),1===b&&1===d?(d*=this.logarithmBase-
847
+ 1/this.logarithmBase,b=1):1===d/b?(h=Math.min(d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),d*=h,b/=h):b>d?(h=Math.min(b/d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=d?b=d/h:d=b*h):(h=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=h),1!==b&&(b/=h)),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===
848
+ this.viewportMinimum||isNaN(this.viewportMinimum))&&1<b&&(b=1),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&1>d&&(d=1));h=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);var s=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType=
849
+ "number";h=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(h)/e),!1));this.options&&0<this.options.interval?this.interval=this.options.interval:(this.interval=A.getNiceExponent(Math.log(h)/e/(a-1),!0),c=A.getNiceNumber(s/(a-1),!0));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval));if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=
850
+ "axisX"===this.type?d*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval));1===this.viewportMaximum&&1===this.viewportMinimum&&(1===this.options.viewportMinimum?this.viewportMaximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.viewportMaximum&&(this.viewportMinimum/=this.logarithmBase-1/this.logarithmBase),this.options&&"undefined"===typeof this.options.interval&&(this.interval=A.getNiceExponent(Math.ceil(Math.log(h)/e)/(a-1)),c=A.getNiceNumber((this.viewportMaximum-
851
+ this.viewportMinimum)/(a-1),!0)));if(null===this.minimum||null===this.maximum)"axisX"===this.type?(b=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,1===d/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),d*=h,b/=h),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.minimum?
852
+ this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(b)||isFinite(d)?1===b&&1===d?(d*=this.logarithmBase,b/=this.logarithmBase):1===d/b?(h=Math.pow(this.logarithmBase,this.interval),d*=h,b/=h):b>d?(h=Math.min(0.01*(b/d),5),1<=d?b=d/h:d=b*h):(h=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=h),1!==b&&(b/=h)):(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1),f=Infinity!==this.dataInfo.minDiff?
853
+ this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&1<b&&(b=1),this.includeZero&&(null===this.maximum||isNaN(this.maximum))&&1>d&&(d=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval)),l(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?
854
+ "undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum)||(this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum="axisX"===this.type?d*Math.sqrt(f):
855
+ Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval)),l(null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum)||(this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?
856
+ 0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum))),1===this.maximum&&1===this.minimum&&(1===this.options.minimum?this.maximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.maximum&&(this.minimum/=this.logarithmBase-1/this.logarithmBase));this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum);this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum);this.viewportMinimum>this.viewportMaximum&&(!this.options.viewportMinimum&&!this.options.minimum||
857
+ this.options.viewportMaximum||this.options.maximum?this.options.viewportMinimum||this.options.minimum||!this.options.viewportMaximum&&!this.options.maximum||(this.viewportMinimum=this.minimum=(this.options.viewportMaximum||this.options.maximum)/Math.pow(this.logarithmBase,2*Math.ceil(this.interval))):this.viewportMaximum=this.maximum=this.options.viewportMinimum||this.options.minimum);b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(e*this.interval)+0.2)*this.interval);this.range=
858
+ this.viewportMaximum/this.viewportMinimum;this.noTicks=a;if(!this.options.interval&&this.range<Math.pow(this.logarithmBase,8>this.viewportMaximum||3>a?2:3)){for(e=Math.floor(this.viewportMinimum/c+0.5)*c;e<this.viewportMinimum;)e+=c;this.equidistantInterval=!1;this.intervalStartPosition=e;this.interval=c}else this.options.interval||(c=Math.ceil(this.interval),this.range>this.interval&&(this.interval=c,b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(e*this.interval)+0.2)*this.interval))),
859
+ this.equidistantInterval=!0,this.intervalStartPosition=b;if(!this.valueFormatString&&(this.valueFormatString="#,##0.##",1>this.viewportMinimum)){e=Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2;if(isNaN(e)||!isFinite(e))e=2;if(2<e)for(h=0;h<e-2;h++)this.valueFormatString+="#"}};A.generateValueFormatString=function(a,e){var c="#,##0.",b=e;1>a&&(b+=Math.floor(Math.abs(Math.log(a)/Math.LN10)),isNaN(b)||!isFinite(b))&&(b=e);for(var d=0;d<b;d++)c+="#";return c};A.getNiceExponent=function(a,
860
+ e){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=0>c?1>=b?1:5>=b?5:10:Math.max(Math.floor(b),1);return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};A.getNiceNumber=function(a,e){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=e?1.5>b?1:3>b?2:7>b?5:10:1>=b?1:2>=b?2:5>=b?5:10;return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};A.prototype.getLabelStartPoint=function(){var a=R[this.intervalType+"Duration"]*this.interval,a=
861
+ new Date(Math.floor(this.viewportMinimum/a)*a);if("millisecond"!==this.intervalType)if("second"===this.intervalType)0<a.getMilliseconds()&&(a.setSeconds(a.getSeconds()+1),a.setMilliseconds(0));else if("minute"===this.intervalType){if(0<a.getSeconds()||0<a.getMilliseconds())a.setMinutes(a.getMinutes()+1),a.setSeconds(0),a.setMilliseconds(0)}else if("hour"===this.intervalType){if(0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setHours(a.getHours()+1),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("day"===
862
+ this.intervalType){if(0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setDate(a.getDate()+1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("week"===this.intervalType){if(0<a.getDay()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setDate(a.getDate()+(7-a.getDay())),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("month"===this.intervalType){if(1<a.getDate()||0<a.getHours()||0<a.getMinutes()||
863
+ 0<a.getSeconds()||0<a.getMilliseconds())a.setMonth(a.getMonth()+1),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else"year"===this.intervalType&&(0<a.getMonth()||1<a.getDate()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())&&(a.setFullYear(a.getFullYear()+1),a.setMonth(0),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0));return a};ra(ga,T);ra(ca,T);ca.prototype.createUserOptions=function(a){if("undefined"!==
864
+ typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent[this.optionsName]),e=this.parent.options[this.optionsName].indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][e]=this.options}};ca.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var e=
865
+ this.ctx,c=this.ctx.globalAlpha;this.ctx=a||this.ctx;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();var b=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.startValue),d=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;X(this.id);var f,h,l,r,k,p;a=Math.max(this.spacing,
866
+ 3);var m=Math.max(0,this.lineThickness);this.ctx.lineWidth=m;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,m));if("bottom"===this.scaleBreaks.parent._position||"top"===this.scaleBreaks.parent._position)if(b=1===m%2?(b.x<<0)+0.5:b.x<<0,h=1===m%2?(d.x<<0)+0.5:d.x<<0,"top"===this.scaleBreaks.parent._position?(d=this.chart.plotArea.y1,l=this.chart.plotArea.y2+m/2+0.5<<0):(d=this.chart.plotArea.y2,l=this.chart.plotArea.y1-m/2+0.5<<0,a*=-1),this.bounds={x1:b-m/2,y1:d,x2:h+m/2,y2:l},this.ctx.moveTo(b,
867
+ d),"straight"===this.type||"top"===this.scaleBreaks.parent._position&&0>=a||"bottom"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(b,l),this.ctx.lineTo(h,l),this.ctx.lineTo(h,d);else if("wavy"===this.type){r=b;k=d;f=0.5;p=(l-k)/a/3;for(var q=0;q<p;q++)this.ctx.bezierCurveTo(r+f*a,k+a,r+f*a,k+2*a,r,k+3*a),k+=3*a,f*=-1;this.ctx.bezierCurveTo(r+f*a,k+a,r+f*a,k+2*a,r,k+3*a);r=h;f*=-1;this.ctx.lineTo(r,k);for(q=0;q<p;q++)this.ctx.bezierCurveTo(r+f*a,k-a,r+f*a,k-2*a,r,k-3*a),k-=3*a,f*=-1}else{if("zigzag"===
868
+ this.type){f=-1;k=d+a;r=b+a;p=(l-k)/a/2;for(q=0;q<p;q++)this.ctx.lineTo(r,k),r+=2*f*a,k+=2*a,f*=-1;this.ctx.lineTo(r,k);r+=h-b;for(q=0;q<p+1;q++)this.ctx.lineTo(r,k),r+=2*f*a,k-=2*a,f*=-1;this.ctx.lineTo(r+f*a,k+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===this.scaleBreaks.parent._position)if(d=1===m%2?(d.y<<0)+0.5:d.y<<0,l=1===m%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,h=this.chart.plotArea.x2+m/2+0.5<<0):(b=this.chart.plotArea.x2,
869
+ h=this.chart.plotArea.x1-m/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:d-m/2,x2:h,y2:l+m/2},this.ctx.moveTo(b,d),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(h,d),this.ctx.lineTo(h,l),this.ctx.lineTo(b,l);else if("wavy"===this.type){r=b;k=d;f=0.5;p=(h-r)/a/3;for(q=0;q<p;q++)this.ctx.bezierCurveTo(r+a,k+f*a,r+2*a,k+f*a,r+3*a,k),r+=3*a,f*=-1;this.ctx.bezierCurveTo(r+a,k+f*a,r+2*a,k+f*a,r+3*a,k);k=l;f*=-1;this.ctx.lineTo(r,
870
+ k);for(q=0;q<p;q++)this.ctx.bezierCurveTo(r-a,k+f*a,r-2*a,k+f*a,r-3*a,k),r-=3*a,f*=-1}else if("zigzag"===this.type){f=1;k=d-a;r=b+a;p=(h-r)/a/2;for(q=0;q<p;q++)this.ctx.lineTo(r,k),k+=2*f*a,r+=2*a,f*=-1;this.ctx.lineTo(r,k);k+=l-d;for(q=0;q<p+1;q++)this.ctx.lineTo(r,k),k+=2*f*a,r-=2*a,f*=-1;this.ctx.lineTo(r+a,k+f*a)}0<m&&this.ctx.stroke();this.ctx.closePath();this.ctx.globalAlpha=this.fillOpacity;this.ctx.globalCompositeOperation="destination-over";this.ctx.fill();this.ctx.restore();this.ctx.globalAlpha=
871
+ c;this.ctx=e}};ra(ia,T);ia.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent.stripLines),e=this.parent.options.stripLines.indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[e]=this.options}};ia.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),
872
+ e=Math.abs("pixel"===this._thicknessType?this.thickness:Math.abs(this.parent.convertValueToPixel(this.endValue)-this.parent.convertValueToPixel(this.startValue)));if(0<e){var c=null===this.opacity?1:this.opacity;this.ctx.strokeStyle=this.color;this.ctx.beginPath();var b=this.ctx.globalAlpha;this.ctx.globalAlpha=c;X(this.id);var d,f,h,l;this.ctx.lineWidth=e;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,e));if("bottom"===this.parent._position||"top"===this.parent._position)a="pixel"===
873
+ this._thicknessType?a.x:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,d=f=1===this.ctx.lineWidth%2?(a<<0)+0.5:a<<0,h=this.chart.plotArea.y1,l=this.chart.plotArea.y2,this.bounds={x1:d-e/2,y1:h,x2:f+e/2,y2:l};else if("left"===this.parent._position||"right"===this.parent._position)a="pixel"===this._thicknessType?a.y:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,h=l=1===this.ctx.lineWidth%2?(a<<
874
+ 0)+0.5:a<<0,d=this.chart.plotArea.x1,f=this.chart.plotArea.x2,this.bounds={x1:d,y1:h-e/2,x2:f,y2:l+e/2};this.ctx.moveTo(d,h);this.ctx.lineTo(f,l);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};ra(ea,T);ea.prototype.showAt=function(a){if(!this.enabled)return!1;var e=this.chart,c=!1;e.resetOverlayedCanvas();e.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent,!1);var b,d="xySwapped"===e.plotInfo.axisPlacement;"bottom"===this.parent._position?b=d?e.axisY:e.axisX:
875
+ "top"===this.parent._position?b=d?e.axisY2:e.axisX2:"left"===this.parent._position?b=d?e.axisX:e.axisY:"right"===this.parent._position&&(b=d?e.axisX2:e.axisY2);if(b)for(d=0;d<b.length;d++)this.parent===b[d]&&(b[d]._crosshairValue=a>=b[d].viewportMinimum&&a<=b[d].viewportMaximum?a:null);b=["axisX","axisX2","axisY","axisY2"];for(d=0;d<b.length;d++)for(var f=b[d],h=0;h<e[f].length;h++){var s=e[f][h],r=s._crosshairValue;s.crosshair&&s.crosshair.enabled&&(this.parent===s&&(s.sessionVariables.crosshairShownByPixel=
876
+ !1,s.sessionVariables.crosshairValue=s.crosshair._updatedValue=r||a),!l(r)&&r>=s.viewportMinimum&&r<=s.viewportMaximum?(s.showCrosshair(r),this===s.crosshair&&(c=!0)):void 0!==r&&(s.sessionVariables.crosshairValue=null,s.crosshair._updatedValue=null))}this.chart.toolTip&&(this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};ea.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.toolTip&&
877
+ (this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);this.chart.renderCrosshairs(this.parent,!1);this.parent.sessionVariables._crosshairHidden=this._hidden=!0};ea.prototype.render=function(a,e,c){var b,d,f,h,s=null,r=null,k=null,p="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(k=0,k="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?
878
+ 0:500<this.chart.width&&25>this.parent.range?2:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0):50<this.parent.range?0:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0),this.valueFormatString=A.generateValueFormatString(this.parent.range,k)));var m=null===this.opacity?1:this.opacity,q=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*
879
+ this.thickness),g=this.chart.overlaidCanvasCtx,t=g.globalAlpha;g.beginPath();g.strokeStyle=this.color;g.lineWidth=q;g.save();this.labelFontSize=Math.abs(l(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=l(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=l(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||
880
+ 0):2*this.labelPadding);k=new ma(g,{x:0,y:0,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxWidth:this.labelMaxWidth,maxHeight:this.labelMaxHeight,angle:this.labelAngle,text:p,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});
881
+ if(this.snapToDataPoint){var x=0,p=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var y=null;if("bottom"===this.parent._position||"top"===this.parent._position)x=this.parent.dataSeries[0].axisX.convertPixelToValue({y:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseY:e});else if("left"===this.parent._position||"right"===this.parent._position)x=this.parent.convertPixelToValue({y:e});for(var u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,
882
+ !0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[u],null!==y.dataPoint.y&&y.dataSeries.visible&&p.push(y));y=null;if(0===p.length)return;p.sort(function(a,b){return a.distance-b.distance});var w=y=0;yPercent=cumulativeY=0;for(var x=Infinity,v,u=0;u<p.length;u++){if("rangeBar"===p[u].dataSeries.type||"error"===p[u].dataSeries.type){if(p[u].dataPoint.y)for(var C=0;C<p[u].dataPoint.y.length;C++)w=Math.abs(a-this.parent.convertValueToPixel(p[u].dataPoint.y[C])),w<=x&&(x=w,y=u)}else"stackedBar"===
883
+ p[u].dataSeries.type?(cumulativeY=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=Math.abs(a-this.parent.convertValueToPixel(cumulativeY)),w<=x&&(x=w,y=u)):"stackedBar100"===p[u].dataSeries.type?(w=p[0].dataPoint.x.getTime?p[0].dataPoint.x.getTime():p[0].dataPoint.x,l(v)&&(v=Math.abs(a-this.parent.convertValueToPixel(100*(p[0].dataSeries.dataPointEOs[p[0].index].cumulativeY/p[0].dataSeries.plotUnit.dataPointYSums[w])))),cumulativeY=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=p[u].dataPoint.x.getTime?
884
+ p[u].dataPoint.x.getTime():p[u].dataPoint.x,yPercent=100*(cumulativeY/p[u].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(a-this.parent.convertValueToPixel(yPercent)),w<=v&&(v=w,y=u)):(w=Math.abs(a-this.parent.convertValueToPixel(p[u].dataPoint.y)),w<=x&&(x=w,y=u));l(v)||(x=Math.min(x,v))}v=p[y];u=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===v.dataSeries.type||"error"===v.dataSeries.type){x=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(p=
885
+ 0;p<v.dataPoint.y.length;p++)w=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[p])),w<x&&(x=w,u=p);s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[u])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[u])<<0;this.value=v.dataPoint.y[u];0!==v.dataPoint.y[u]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
886
+ 1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y[u]}):l(this.options.label)?fa(v.dataPoint.y[u],this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===v.dataSeries.type?(x=Math.abs(a-this.parent.convertValueToPixel(p[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<
887
+ 0,this.value=cumulativeY,0!==cumulativeY%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:cumulativeY}):l(this.options.label)?fa(cumulativeY,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===v.dataSeries.type?
888
+ (x=Math.abs(a-this.parent.convertValueToPixel(p[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,yPercent=100*(cumulativeY/v.dataSeries.plotUnit.dataPointYSums[w]),s=1===g.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,0!==yPercent%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,
889
+ Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:yPercent}):l(this.options.label)?fa(yPercent,this.valueFormatString,this.chart._cultureInfo):this.label):(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,this.value=v.dataPoint.y,0!==v.dataPoint.y%1&&l(this.options.valueFormatString)&&
890
+ (this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y}):l(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label);b=d=s;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-q/2,y1:f,x2:d+q/2,y2:h};
891
+ k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-k.width:k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);k.y=this.parent.lineCoordinates.y2+("top"===this.parent._position?-k.height+this.parent.tickLength:k.fontSize/2)+2;k.y+k.height>this.chart.bounds.y2?k.y=this.chart.bounds.y2-k.height:k.y<this.chart.bounds.y1&&(k.y=this.chart.bounds.y1)}else if("left"===this.parent._position||"right"===this.parent._position){f=h=r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<
892
+ 0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-q/2,x2:d,y2:h+q/2};u=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=
893
+ this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?(0!==v.dataPoint.x%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?
894
+ this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.x;k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/
895
+ 2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){x=this.parent.convertPixelToValue({x:a});for(u=0;u<this.parent.dataSeries.length;u++)(y=
896
+ this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[u],null!==y.dataPoint.y&&y.dataSeries.visible&&p.push(y));if(0===p.length)return;p.sort(function(a,b){return a.distance-b.distance});v=p[0];b=d=s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-q/2,y1:f,x2:d+q/2,y2:h};u=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),
897
+ p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||
898
+ this.parent.logarithmic?(0!==v%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?
899
+ this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):l(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.x;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&(k.y=this.parent.lineCoordinates.y1-
900
+ k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!l(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(x=this.parent.dataSeries[0].axisX.convertPixelToValue({x:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseX:a}));for(u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[u],null!==y.dataPoint.y&&y.dataSeries.visible&&
901
+ p.push(y));if(0===p.length)return;p.sort(function(a,b){return a.distance-b.distance});w=y=0;x=Infinity;for(u=0;u<p.length;u++){if("rangeColumn"===p[u].dataSeries.type||"rangeArea"===p[u].dataSeries.type||"error"===p[u].dataSeries.type||"rangeSplineArea"===p[u].dataSeries.type||"candlestick"===p[u].dataSeries.type||"ohlc"===p[u].dataSeries.type||"boxAndWhisker"===p[u].dataSeries.type){if(p[u].dataPoint.y)for(C=0;C<p[u].dataPoint.y.length;C++)w=Math.abs(e-this.parent.convertValueToPixel(p[u].dataPoint.y[C])),
902
+ w<=x&&(x=w,y=u)}else"stackedColumn"===p[u].dataSeries.type?(a=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=x&&(x=w,y=u)):"stackedArea"===p[u].dataSeries.type?(a=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=x&&(x=w,y=u)):"stackedColumn100"===p[u].dataSeries.type||"stackedArea100"===p[u].dataSeries.type?(w=p[0].dataPoint.x.getTime?p[0].dataPoint.x.getTime():p[0].dataPoint.x,l(v)&&
903
+ (v=Math.abs(e-this.parent.convertValueToPixel(100*(p[0].dataSeries.dataPointEOs[p[0].index].cumulativeY/p[0].dataSeries.plotUnit.dataPointYSums[w])))),"stackedColumn100"===p[u].dataSeries.type?(r=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,w=p[u].dataPoint.x.getTime?p[u].dataPoint.x.getTime():p[u].dataPoint.x,a=100*(r/p[u].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=u)):"stackedArea100"===p[u].dataSeries.type&&(r=p[u].dataSeries.dataPointEOs[p[u].index].cumulativeY,
904
+ w=p[u].dataPoint.x.getTime?p[u].dataPoint.x.getTime():p[u].dataPoint.x,a=100*(r/p[u].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=u))):"waterfall"===p[u].dataSeries.type?(w=Math.abs(e-this.parent.convertValueToPixel(p[u].dataSeries.dataPointEOs[p[u].index].cumulativeSum)),w<=x&&(v=x=w,y=u)):(w=Math.abs(e-this.parent.convertValueToPixel(p[u].dataPoint.y)),w<=x&&(x=w,y=u));l(v)||(x=Math.min(x,v))}v=p[y];u=0;if("rangeColumn"===v.dataSeries.type||
905
+ "rangeArea"===v.dataSeries.type||"error"===v.dataSeries.type||"rangeSplineArea"===v.dataSeries.type||"candlestick"===v.dataSeries.type||"ohlc"===v.dataSeries.type||"boxAndWhisker"===v.dataSeries.type){x=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(p=0;p<v.dataPoint.y.length;p++)w=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[p])),w<x&&(x=w,u=p);r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[u])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[u])<<
906
+ 0;0!==v.dataPoint.y[u]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y[u]}):l(this.options.label)?fa(v.dataPoint.y[u],this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.y[u]}else"stackedColumn"===
907
+ v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):
908
+ l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea"===v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
909
+ 1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedColumn100"===v.dataSeries.type?(r=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(r/v.dataSeries.plotUnit.dataPointYSums[w]),r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<
910
+ 0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea100"===v.dataSeries.type?(r=v.dataSeries.dataPointEOs[v.index].cumulativeY,
911
+ w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(r/v.dataSeries.plotUnit.dataPointYSums[w]),r=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
912
+ axis:this.parent,crosshair:this.options,value:a}):l(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"waterfall"===v.dataSeries.type?(r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0,0!==v.dataSeries.dataPointEOs[v.index].cumulativeSum%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,
913
+ Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataSeries.dataPointEOs[v.index].cumulativeSum}):l(this.options.label)?fa(v.dataSeries.dataPointEOs[v.index].cumulativeSum,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=v.dataSeries.dataPointEOs[v.index].cumulativeSum):(r=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<
914
+ 0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,0!==v.dataPoint.y%1&&l(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y}):l(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):
915
+ this.label,this.value=v.dataPoint.y);f=h=r;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-q/2,x2:d,y2:h+q/2};k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&
916
+ (k.x=this.parent.lineCoordinates.x2)}p=null;g.globalAlpha=m;0<q&&g.setLineDash&&g.setLineDash(J(this.lineDashType,q));if("bottom"===this.parent._position||"top"===this.parent._position)"top"===this.parent._position&&k.y-k.fontSize/2<this.chart.bounds.y1&&(k.y=this.chart.bounds.y1+k.fontSize/2),"bottom"===this.parent._position&&this.parent.lineCoordinates.y2+k.measureText().height>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,
917
+ this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1),"right"===this.parent._position&&k.x+k.measureText().width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.measureText().width),this.value>=
918
+ Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=d=s=1===g.lineWidth%2?(a<<0)+0.5:a<<0,f=this.chart.plotArea.y1,h=this.chart.plotArea.y2,this.bounds={x1:b-q/2,y1:f,x2:d+q/2,y2:h};else if("left"===this.parent._position||"right"===
919
+ this.parent._position)f=h=r=1===g.lineWidth%2?(e<<0)+0.5:e<<0,b=this.chart.plotArea.x1,d=this.chart.plotArea.x2,this.bounds={x1:b,y1:f-q/2,x2:d,y2:h+q/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){u=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),
920
+ y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?y.dataPoint.label:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?
921
+ this.parent.convertPixelToValue(e):c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(e):c}):l(this.options.label)?Ea(l(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label;k.y=e+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<
922
+ this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x1-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,
923
+ value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.x=b-k.measureText().width/2,k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width),k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1),"bottom"===this.parent._position?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&(k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("bottom"===
924
+ this.parent._position||"top"===this.parent._position){u=!1;p="";if(this.parent.labels)for(x=Math.ceil(this.parent.interval),p=0;p<this.parent.viewportMaximum;p+=x)if(this.parent.labels[p])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,u=0;u<this.parent.dataSeries.length;u++)(y=this.parent.dataSeries[u].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,
925
+ value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?l(c)?y.dataPoint.label:c:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?0<this.parent.dataSeries.length?this.parent.convertPixelToValue(a):"":c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?
926
+ this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(a):c}):l(this.options.label)?Ea(l(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&
927
+ (k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:l(c)?this.parent.convertPixelToValue(e):c}):l(this.options.label)?fa(l(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.y=e+k.fontSize/2-k.measureText().height/2+2,k.y-k.fontSize/2<this.chart.bounds.y1?k.y=
928
+ this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2),"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2);"left"===this.parent._position&&k.x<this.chart.bounds.x1?k.x=this.chart.bounds.x1:"right"===this.parent._position&&k.x+k.measureText().width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-
929
+ k.measureText().width:"top"===this.parent._position&&k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2:"bottom"===this.parent._position&&this.parent.lineCoordinates.y2+k.measureText().height>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2);g.globalAlpha=m;0<q&&("bottom"!==this.parent._position||d<=this.parent.lineCoordinates.x2)&&(g.setLineDash&&g.setLineDash(J(this.lineDashType,q)),g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=
930
+ this._hidden=!1);this.value="bottom"===this.parent._position||"top"===this.parent._position?this.parent.convertPixelToValue(a):this.parent.convertPixelToValue(e)}if("bottom"===this.parent._position||"top"===this.parent._position)this.parent.sessionVariables.crosshairValue=this._updatedValue=this.parent.convertPixelToValue(s);if("left"===this.parent._position||"right"===this.parent._position)this.parent.sessionVariables.crosshairValue=this._updatedValue=this.parent.convertPixelToValue(r);this._textBlock=
931
+ k;this._label=c;l(c)||this.renderLabel();g.restore();g.globalAlpha=t};ea.prototype.renderLabel=function(){this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&(l(this._textBlock)||(l(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0<this._textBlock.text.length)||this._hidden)||this._textBlock.render(!0),l(this._label)&&this.dispatchEvent("updated",{chart:this.chart,crosshair:this.options,
932
+ axis:this.parent,value:this.value},this.parent))};ra(oa,T);oa.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("shared");this.updateOption("animationEnabled");this.updateOption("content");this.updateOption("contentFormatter");this.updateOption("reversed");this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("cornerRadius");this.updateOption("fontSize");this.updateOption("fontColor");this.updateOption("fontFamily");
933
+ this.updateOption("fontWeight");this.updateOption("fontStyle")};oa.prototype._initialize=function(){this.updateOption("updated");this.updateOption("hidden");if(this.enabled){this.container=document.createElement("div");this.container.setAttribute("class","canvasjs-chart-tooltip");this.container.style.position="absolute";this.container.style.height="auto";this.container.style.boxShadow="1px 1px 2px 2px rgba(0,0,0,0.1)";this.container.style.zIndex="1000";this.container.style.pointerEvents="none";this.container.style.display=
934
+ "none";var a=document.createElement("div");a.style.width="auto";a.style.height="auto";a.style.minWidth="50px";a.style.lineHeight="normal";a.style.margin="0px 0px 0px 0px";a.style.padding="5px";a.style.fontFamily="Calibri, Arial, Georgia, serif";a.style.fontWeight="normal";a.style.fontStyle=t?"italic":"normal";a.style.fontSize="14px";a.style.color="#000000";a.style.textShadow="1px 1px 1px rgba(0, 0, 0, 0.1)";a.style.textAlign="left";a.style.border="2px solid gray";a.style.background=t?"rgba(255,255,255,.9)":
935
+ "rgb(255,255,255)";a.style.textIndent="0px";a.style.whiteSpace="nowrap";a.style.borderRadius="5px";a.style.MozUserSelect="none";a.style.WebkitUserSelect="none";a.style.msUserSelect="none";a.style.userSelect="none";t||(a.style.filter="alpha(opacity = 90)",a.style.filter="progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#666666')");a.innerText="Sample Tooltip";this.container.appendChild(a);this.contentDiv=this.container.firstChild;this.container.style.borderRadius=this.contentDiv.style.borderRadius;
936
+ this.chart._canvasJSContainer.appendChild(this.container)}};oa.prototype.mouseMoveHandler=function(a,e){this._lastUpdated&&4>(new Date).getTime()-this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(a,e),this.enabled&&this._updatedEventParameters&&!isNaN(this._prevX)&&!isNaN(this._prevY)&&this.container&&this.container.style&&this.dispatchEvent("none"===this.container.style.display?"hidden":"updated",this._updatedEventParameters,this))};
937
+ oa.prototype._updateToolTip=function(a,e,c){c="undefined"===typeof c?!0:c;this._updateOptions();this.container||this._initialize();this.enabled||this.hide();if(!this.chart.disableToolTip){if("undefined"===typeof a||"undefined"===typeof e){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;e=this._prevY}else this._prevX=a,this._prevY=e;var b=null,d=null,f=[],h=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var s=[];if(this.chart.axisX)for(var r=0;r<this.chart.axisX.length;r++){for(var h=
938
+ "xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[r].convertPixelToValue({y:e}):this.chart.axisX[r].convertPixelToValue({x:a}),k=null,b=0;b<this.chart.axisX[r].dataSeries.length;b++)(k=this.chart.axisX[r].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX[r].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&s.push(k));k=null}if(this.chart.axisX2)for(r=0;r<this.chart.axisX2.length;r++){h="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[r].convertPixelToValue({y:e}):
939
+ this.chart.axisX2[r].convertPixelToValue({x:a});k=null;for(b=0;b<this.chart.axisX2[r].dataSeries.length;b++)(k=this.chart.axisX2[r].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX2[r].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&s.push(k));k=null}if(0===s.length)return;s.sort(function(a,b){return a.dataSeries.axisX.logarithmic||b.dataSeries.axisX.logarithmic?a.distance-b.distance:a.distance/a.dataSeries.axisX.range-b.distance/b.dataSeries.axisX.range});
940
+ c=s[0];for(b=0;b<s.length;b++)s[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&f.push(s[b]);s=null}else{if(b=this.chart.getDataPointAtXY(a,e,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(t)if(b=bb(a,e,this.chart._eventManager.ghostCtx),0<b&&"undefined"!==typeof this.chart._eventManager.objectMap[b]){b=this.chart._eventManager.objectMap[b];if("legendItem"===b.objectType)return;this.currentSeriesIndex=b.dataSeriesIndex;this.currentDataPointIndex=
941
+ 0<=b.dataPointIndex?b.dataPointIndex:-1}else this.currentDataPointIndex=-1;else this.currentDataPointIndex=-1;if(0<=this.currentSeriesIndex){d=this.chart.data[this.currentSeriesIndex];k={};if(0<=this.currentDataPointIndex)b=d.dataPoints[this.currentDataPointIndex],k.dataSeries=d,k.dataPoint=b,k.index=this.currentDataPointIndex,k.distance=Math.abs(b.x-h),"waterfall"===d.type&&(k.cumulativeSumYStartValue=d.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue,k.cumulativeSum=d.dataPointEOs[this.currentDataPointIndex].cumulativeSum);
942
+ else if(this.enabled&&d&&("line"===d.type||"stepLine"===d.type||"spline"===d.type||"area"===d.type||"stepArea"===d.type||"splineArea"===d.type||"stackedArea"===d.type||"stackedArea100"===d.type||"rangeArea"===d.type||"rangeSplineArea"===d.type||"candlestick"===d.type||"ohlc"===d.type||"boxAndWhisker"===d.type))h=d.axisX.convertPixelToValue({x:a}),k=d.getDataPointAtX(h,c,!0),l(k)||(k.dataSeries=d,this.currentDataPointIndex=k.index,b=k.dataPoint);else{"toolTip"===this.chart.clearedOverlayedCanvas&&
943
+ (this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=null,this.chart.sessionVariables._dataHighlighted=!1,this.container&&(this.container.style.display="none"));return}if(!l(k)&&!l(k.dataPoint)&&!l(k.dataPoint.y))if(k.dataSeries.axisY)if(0<k.dataPoint.y.length){for(b=c=0;b<k.dataPoint.y.length;b++)k.dataPoint.y[b]<k.dataSeries.axisY.viewportMinimum?c--:k.dataPoint.y[b]>k.dataSeries.axisY.viewportMaximum&&c++;c<k.dataPoint.y.length&&c>-k.dataPoint.y.length&&f.push(k)}else"column"===
944
+ d.type||"bar"===d.type?0>k.dataPoint.y?0>k.dataSeries.axisY.viewportMinimum&&k.dataSeries.axisY.viewportMaximum>=k.dataPoint.y&&f.push(k):k.dataSeries.axisY.viewportMinimum<=k.dataPoint.y&&0<=k.dataSeries.axisY.viewportMaximum&&f.push(k):"bubble"===d.type?(c=this.chart._eventManager.objectMap[d.dataPointIds[k.index]].size/2,k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum-c&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum+c&&f.push(k)):"waterfall"===d.type?(c=0,k.cumulativeSumYStartValue<k.dataSeries.axisY.viewportMinimum?
945
+ c--:k.cumulativeSumYStartValue>k.dataSeries.axisY.viewportMaximum&&c++,k.cumulativeSum<k.dataSeries.axisY.viewportMinimum?c--:k.cumulativeSum>k.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&f.push(k)):(0<=k.dataSeries.type.indexOf("100")||"stackedColumn"===d.type||"stackedBar"===d.type||"stackedArea"===d.type||k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum)&&f.push(k);else f.push(k)}}if(0<f.length){if(this._entries=f,this.highlightObjects(f),
946
+ this.enabled){c="";c=this.getToolTipInnerHTML({entries:f});if(null!==c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&l(this.options.content)&&l(this.options.contentFormatter))for(h=this.contentDiv.getElementsByTagName("span"),b=0;b<h.length;b++)h[b]&&(h[b].style.color=h[b].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:t?"rgba(255,255,255,.9)":
947
+ "rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?
948
+ this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[d.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||
949
+ 0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=
950
+ this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:t?"italic":"normal"}catch(p){}"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type||"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type||"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?a=a-10-this.container.clientWidth:(a=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-
951
+ this.container.clientWidth<<0,a-=10);0>a&&(a=Math.max(0,a+this.container.clientWidth+20));a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));e=1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&"stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?
952
+ "bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):e:f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);e=-e+10;0<e+this.container.clientHeight+5&&(e-=e+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,e);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);
953
+ this.positionLeft=a;this.positionBottom=e;this.container.style.left=a+"px";this.container.style.bottom=e+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);e=[];for(b=0;b<f.length;b++)e.push({xValue:f[b].dataPoint.x,dataPoint:f[b].dataPoint,dataSeries:f[b].dataSeries,dataPointIndex:f[b].index,dataSeriesIndex:f[b].dataSeries._index});this._updatedEventParameters={chart:this.chart,toolTip:this.options,content:c,entries:e}}}else this.hide(),this.enabled&&
954
+ this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);this._dataSeriesIndex=this._xValue=null}};oa.prototype.highlightObjects=function(a){var e=this.chart.overlaidCanvasCtx;l(this.chart.clearedOverlayedCanvas)||"toolTip"===this.chart.clearedOverlayedCanvas?(this.chart.resetOverlayedCanvas(),e.clearRect(0,0,this.chart.width,this.chart.height),this.chart.clearedOverlayedCanvas="toolTip",this.chart.sessionVariables._dataHighlighted=!1):this.chart.clearedOverlayedCanvas=null;e.save();var c=
955
+ this.chart.plotArea,b=0;e.beginPath();e.rect(c.x1,c.y1,c.x2-c.x1,c.y2-c.y1);e.clip();for(c=0;c<a.length;c++){var d=a[c];if((d=this.chart._eventManager.objectMap[d.dataSeries.dataPointIds[d.index]])&&d.objectType&&"dataPoint"===d.objectType){var b=this.chart.data[d.dataSeriesIndex],f=b.dataPoints[d.dataPointIndex],h=d.dataPointIndex;!1===f.highlightEnabled||!0!==b.highlightEnabled&&!0!==f.highlightEnabled||("line"===b.type||"stepLine"===b.type||"spline"===b.type||"scatter"===b.type||"area"===b.type||
956
+ "stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=Math.max(1.5*f.size<<0,10),f.borderColor=f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f]),"undefined"!==typeof d.y2&&(f=b.getMarkerProperties(h,d.x1,d.y2,this.chart.overlaidCanvasCtx),f.size=Math.max(1.5*f.size<<0,10),f.borderColor=
957
+ f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f])),this.chart.sessionVariables._dataHighlighted=!0):"bubble"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=d.size,f.color="white",f.borderColor="white",e.globalAlpha=0.3,Y.drawMarkers([f]),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"column"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"bar"===b.type||"rangeBar"===b.type||
958
+ "stackedBar"===b.type||"stackedBar100"===b.type||"rangeColumn"===b.type||"waterfall"===b.type?(aa(e,d.x1,d.y1,d.x2,d.y2,"white",0,null,!1,!1,!1,!1,0.3),this.chart.sessionVariables._dataHighlighted=!0):"pie"===b.type||"doughnut"===b.type?(sa(e,d.center,d.radius,"white",b.type,d.startAngle,d.endAngle,0.3,d.percentInnerRadius),this.chart.sessionVariables._dataHighlighted=!0):"funnel"===b.type||"pyramid"===b.type?(ta(e,d.funnelSection,0.3,"white"),this.chart.sessionVariables._dataHighlighted=!0):"candlestick"===
959
+ b.type?(e.globalAlpha=1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,Math.min(d.y2,d.y3)),e.lineTo(d.x3-b,Math.min(d.y1,d.y4)),e.stroke(),e.beginPath(),e.moveTo(d.x3-b,Math.max(d.y1,d.y4)),e.lineTo(d.x3-b,Math.max(d.y2,d.y3)),e.stroke(),aa(e,d.x1,Math.min(d.y1,d.y4),d.x2,Math.max(d.y1,d.y4),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"ohlc"===b.type?(e.globalAlpha=
960
+ 1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,d.y2),e.lineTo(d.x3-b,d.y3),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y1),e.lineTo(d.x1,d.y1),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4),e.lineTo(d.x2,d.y4),e.stroke(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"boxAndWhisker"===b.type?(e.save(),e.globalAlpha=1,e.strokeStyle=d.stemColor,e.lineWidth=2*d.stemThickness,0<d.stemThickness&&(e.beginPath(),e.moveTo(d.x3,
961
+ d.y2+d.borderThickness/2),e.lineTo(d.x3,d.y1+d.whiskerThickness/2),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4-d.whiskerThickness/2),e.lineTo(d.x3,d.y3-d.borderThickness/2),e.stroke()),e.beginPath(),aa(e,d.x1,Math.max(d.y2,d.y3),d.x2,Math.min(d.y2,d.y3),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,e.strokeStyle=d.whiskerColor,e.lineWidth=2*d.whiskerThickness,0<d.whiskerThickness&&(e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y4),e.lineTo(Math.ceil(d.x3+d.whiskerLength/
962
+ 2),d.y4),e.stroke(),e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y1),e.lineTo(Math.ceil(d.x3+d.whiskerLength/2),d.y1),e.stroke()),e.globalAlpha=1,e.strokeStyle=d.lineColor,e.lineWidth=2*d.lineThickness,0<d.lineThickness&&(e.beginPath(),e.moveTo(d.x1,d.y5),e.lineTo(d.x2,d.y5),e.stroke()),e.restore(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"error"===b.type&&(C(e,d.x1,d.y1,d.x2,d.y2,"white",d.whiskerProperties,d.stemProperties,d.isXYSwapped,0.3),this.chart.sessionVariables._dataHighlighted=
963
+ !0))}}e.restore();e.globalAlpha=1;e.beginPath()};oa.prototype.getToolTipInnerHTML=function(a){var e=a.entries,c=null,b=null,d=null,f=0;a="";this.isToolTipDefinedInData=!0;for(var h=0;h<e.length;h++)if(e[h].dataSeries.toolTipContent||e[h].dataPoint.toolTipContent){this.isToolTipDefinedInData=!1;break}if(this.isToolTipDefinedInData&&(this.content&&"function"===typeof this.content||this.contentFormatter))e={chart:this.chart,toolTip:this.options,entries:e},c=this.contentFormatter?this.contentFormatter(e):
964
+ this.content(e);else if(this.shared&&"none"!==this.chart.plotInfo.axisPlacement){for(var l=null,r="",h=0;h<e.length;h++){b=e[h].dataSeries;d=e[h].dataPoint;f=e[h].index;a="";if(0===h&&this.isToolTipDefinedInData&&!this.content){this.chart.axisX&&0<this.chart.axisX.length?r+="undefined"!==typeof this.chart.axisX[0].labels[d.x]?this.chart.axisX[0].labels[d.x]:"{x}":this.chart.axisX2&&0<this.chart.axisX2.length&&(r+="undefined"!==typeof this.chart.axisX2[0].labels[d.x]?this.chart.axisX2[0].labels[d.x]:
965
+ "{x}");r+="</br>";if(!b.visible)continue;r=this.chart.replaceKeywordsWithValue(r,d,b,f)}null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent||("line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||"scatter"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===b.type||"stackedArea100"===
966
+ b.type||"waterfall"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}",l=b.axisXIndex):"bubble"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?
967
+ b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}"):"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+
968
+ "<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y[0]},&nbsp;{y[1]}"):"candlestick"===b.type||"ohlc"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?
969
+ b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low:&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}"):"boxAndWhisker"===b.type&&(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:
970
+ this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}"),null===c&&(c=""),b.visible&&(!0===this.reversed?
971
+ (c=this.chart.replaceKeywordsWithValue(a,d,b,f)+c,h<e.length-1&&(c="</br>"+c)):(c+=this.chart.replaceKeywordsWithValue(a,d,b,f),h<e.length-1&&(c+="</br>"))))}null!==c&&(c=r+c)}else{b=e[0].dataSeries;d=e[0].dataPoint;f=e[0].index;if(null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent)return null;"line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||"scatter"===
972
+ b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"waterfall"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}":"bubble"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?
973
+ b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}":"pie"===b.type||"doughnut"===b.type||"funnel"===b.type||"pyramid"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.name?"{name}:</span>&nbsp;&nbsp;":
974
+ d.label?"{label}:</span>&nbsp;&nbsp;":"</span>")+"{y}":"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+" :</span>&nbsp;&nbsp;{y[0]}, &nbsp;{y[1]}":"candlestick"===b.type||"ohlc"===b.type?a=d.toolTipContent?d.toolTipContent:
975
+ b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low: &nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}":"boxAndWhisker"===b.type&&(a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+
976
+ (this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}");null===c&&(c="");c+=this.chart.replaceKeywordsWithValue(a,d,b,f)}this.content=a;return c};oa.prototype.enableAnimation=
977
+ function(){if(!this.container.style.WebkitTransition){var a=this.getContainerTransition(this.containerTransitionDuration);this.container.style.WebkitTransition=a;this.container.style.MsTransition=a;this.container.style.transition=a;this.container.style.MozTransition=this.mozContainerTransition}};oa.prototype.disableAnimation=function(){this.container.style.WebkitTransition&&(this.container.style.WebkitTransition="",this.container.style.MozTransition="",this.container.style.MsTransition="",this.container.style.transition=
978
+ "")};oa.prototype.hide=function(a){if(this.container){var e="undefined"===typeof a||-1!==this.chart.clearedOverlayedCanvas.indexOf("axis");this.chart.sessionVariables._dataHighlighted=!1;this.container.style.display="none";this.currentSeriesIndex=-1;this._entries=this._dataSeriesIndex=this._xValue=null;this._prevY=this._prevX=NaN;this._updatedEventParameters=null;if("undefined"===typeof a||a)this.chart.resetOverlayedCanvas(),e&&this.chart.renderCrosshairs(null,!1)}};oa.prototype.show=function(a,e,
979
+ c){this._updateToolTip(a,e,"undefined"===typeof c?!1:c)};oa.prototype.showAtIndex=function(a,e){};oa.prototype.showAtX=function(a,e){if(!this.enabled)return!1;!l(this.chart.clearedOverlayedCanvas)&&this.chart.clearedOverlayedCanvas.indexOf("axis")&&(this.chart.clearedOverlayedCanvas=null);this._updateOptions();var c,b,d,f=[];d=!1;e=!l(e)&&0<=e&&e<this.chart.data.length?e:0;if(this.shared)for(var h=0;h<this.chart.data.length;h++)c=this.chart.data[h],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!l(b.dataPoint.y)&&
980
+ c.visible)&&(b.dataSeries=c,this.chart.data[e].axisX.convertValueToPixel(a)===c.axisX.convertValueToPixel(b.dataPoint.x)&&f.push(b));else this.chart.data&&0<this.chart.data.length&&(c=this.chart.data[e],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!l(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,f.push(b)));if(0<f.length){for(h=0;h<f.length;h++)if(b=f[h],d=0<=b.dataSeries.type.indexOf("stacked")?b.dataSeries.dataPointEOs[b.index].cumulativeY:b.dataPoint.y,(this.shared||0<=b.dataSeries.type.indexOf("100"))&&
981
+ b.dataSeries.axisX&&b.dataPoint.x>=b.dataSeries.axisX.viewportMinimum&&b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){d=!1;break}else if(b.dataSeries.axisX&&b.dataSeries.axisY&&(b.dataPoint.x<b.dataSeries.axisX.viewportMinimum||b.dataPoint.x>b.dataSeries.axisX.viewportMaximum||d<b.dataSeries.axisY.viewportMinimum||d>b.dataSeries.axisY.viewportMaximum))d=!0;else{d=!1;break}if(d)return this.hide(),!1;this.highlightObjects(f);"toolTip"===this.chart.clearedOverlayedCanvas&&this.chart.renderCrosshairs(null,
982
+ !1);this._entries=f;h="";h=this.getToolTipInnerHTML({entries:f});if(null!==h){this.contentDiv.innerHTML=h;if(this.isToolTipDefinedInData&&l(this.options.content)&&l(this.options.contentFormatter))for(d=this.contentDiv.getElementsByTagName("span"),h=0;h<d.length;h++)d[h]&&(d[h].style.color=d[h].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:t?"rgba(255,255,255,.9)":
983
+ "rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?
984
+ this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[c.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||
985
+ 0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=
986
+ this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:t?"italic":"normal"}catch(r){}if("pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type)c=f[0].dataSeries.dataPointEOs[f[0].index].center.x+f[0].dataSeries.radius*Math.cos(f[0].dataSeries.dataPointEOs[f[0].index].midAngle)+-("left"===f[0].dataSeries.dataPointEOs[f[0].index].hemisphere?0:this.container.clientWidth);else if("funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type)d=
987
+ f[0].dataSeries.dataPointEOs[f[0].index].sectionsofFunnel,c=(d.x1+d.x2-this.container.clientWidth)/2;else{if("bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type){var x=f[0].dataPoint.x;d=f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y;d="stackedBar100"===f[0].dataSeries.type?100*(d/f[0].dataSeries.plotUnit.dataPointYSums[x]):f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?
988
+ f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y;c=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:d)-this.container.clientWidth<<0}else c=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-this.container.clientWidth<<0;c-=10}0>c&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(c=Math.max(0,Math.max(this.chart.container.clientWidth,
989
+ this.chart.width)-this.container.clientWidth));1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&"stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].index].center.y+f[0].dataSeries.radius*Math.sin(f[0].dataSeries.dataPointEOs[f[0].index].midAngle),b<f[0].dataSeries.dataPointEOs[f[0].index].center.y&&
990
+ (b+=this.container.clientHeight)):"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type?(d=f[0].dataSeries.dataPointEOs[f[0].dataSeries.reversed?f[0].dataSeries.dataPointEOs.length-1-f[0].index:f[0].index].sectionsofFunnel,b="undefined"!==typeof d.x5?(d.y2+d.y4)/2:(d.y2+d.y3)/2+this.container.clientHeight/2):"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?b=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):
991
+ (x=f[0].dataPoint.x,d=f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y,d=0<=b.dataSeries.type.indexOf("100")?100*(d/f[0].dataSeries.plotUnit.dataPointYSums[x]):f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY?f[0].dataSeries.dataPointEOs[f[0].index].cumulativeY:f[0].dataPoint.y,b=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:d)):b=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);
992
+ b=-b+10;0<b+this.container.clientHeight+5&&(b-=b+this.container.clientHeight+5-0);this.fixMozTransitionDelay(c,b);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.container.style.left=c+"px";this.container.style.bottom=b+"px"}else return this.hide(!1),!1}else return this.hide(),!1;this._xValue=a;this._dataSeriesIndex=e;this._prevY=this._prevX=NaN;return!0};oa.prototype.fixMozTransitionDelay=function(a,e){if(20<
993
+ this.chart._eventManager.lastObjectId)this.mozContainerTransition=this.getContainerTransition(0);else{var c=parseFloat(this.container.style.left),c=isNaN(c)?0:c,b=parseFloat(this.container.style.bottom),b=isNaN(b)?0:b;10<Math.sqrt(Math.pow(c-a,2)+Math.pow(b-e,2))?this.mozContainerTransition=this.getContainerTransition(0.1):this.mozContainerTransition=this.getContainerTransition(0)}};oa.prototype.getContainerTransition=function(a){return"left "+a+"s ease-out 0s, bottom "+a+"s ease-out 0s"};ja.prototype.reset=
994
+ function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.previousDataPointEventObject=null;this.eventObjects=[];t&&(this.ghostCtx.clearRect(0,0,this.chart.width,this.chart.height),this.ghostCtx.beginPath())};ja.prototype.getNewObjectTrackingId=function(){return++this.lastObjectId};ja.prototype.mouseEventHandler=function(a){if("mousemove"===a.type||"click"===a.type){var e=[],c=Ra(a),b=null;if((b=this.chart.getObjectAtXY(c.x,c.y,!1))&&"undefined"!==typeof this.objectMap[b])if(b=
995
+ this.objectMap[b],"dataPoint"===b.objectType){var d=this.chart.data[b.dataSeriesIndex],f=d.dataPoints[b.dataPointIndex],h=b.dataPointIndex;b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,chart:this.chart};b.eventContext={context:f,userContext:f,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(b);b=this.objectMap[d.id];b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,
996
+ chart:this.chart};b.eventContext={context:d,userContext:d.options,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(this.objectMap[d.id])}else"legendItem"===b.objectType&&(d=this.chart.data[b.dataSeriesIndex],f=null!==b.dataPointIndex?d.dataPoints[b.dataPointIndex]:null,b.eventParameter={x:c.x,y:c.y,dataSeries:d.options,dataPoint:f,dataPointIndex:b.dataPointIndex,dataSeriesIndex:b.dataSeriesIndex,chart:this.chart},b.eventContext={context:this.chart.legend,userContext:this.chart.legend.options,
997
+ mouseover:"itemmouseover",mousemove:"itemmousemove",mouseout:"itemmouseout",click:"itemclick"},e.push(b));d=[];for(c=0;c<this.mouseoveredObjectMaps.length;c++){f=!0;for(b=0;b<e.length;b++)if(e[b].id===this.mouseoveredObjectMaps[c].id){f=!1;break}f?this.fireEvent(this.mouseoveredObjectMaps[c],"mouseout",a):d.push(this.mouseoveredObjectMaps[c])}this.mouseoveredObjectMaps=d;for(c=0;c<e.length;c++){d=!1;for(b=0;b<this.mouseoveredObjectMaps.length;b++)if(e[c].id===this.mouseoveredObjectMaps[b].id){d=!0;
998
+ break}d||(this.fireEvent(e[c],"mouseover",a),this.mouseoveredObjectMaps.push(e[c]));"click"===a.type?this.fireEvent(e[c],"click",a):"mousemove"===a.type&&this.fireEvent(e[c],"mousemove",a)}}};ja.prototype.fireEvent=function(a,e,c){if(a&&e){var b=a.eventParameter,d=a.eventContext,f=a.eventContext.userContext;f&&(d&&f[d[e]])&&f[d[e]].call(f,b);"mouseout"!==e?f.cursor&&f.cursor!==c.target.style.cursor&&(c.target.style.cursor=f.cursor):(c.target.style.cursor=this.chart.panEnabled?"itemmouseout"!==d.mouseout||
999
+ f.dockInsidePlotArea?"move":this.chart._defaultCursor:this.chart._defaultCursor,delete a.eventParameter,delete a.eventContext);"click"===e&&("dataPoint"===a.objectType&&this.chart.pieDoughnutClickHandler)&&this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex],b);"click"===e&&("dataPoint"===a.objectType&&this.chart.funnelPyramidClickHandler)&&this.chart.funnelPyramidClickHandler.call(this.chart.data[a.dataSeriesIndex],b)}};na.prototype.animate=function(a,e,c,b,d){var f=this;this.chart.isAnimating=
1000
+ !0;d=d||M.easing.linear;c&&this.animations.push({startTime:(new Date).getTime()+(a?a:0),duration:e,animationCallback:c,onComplete:b});for(a=[];0<this.animations.length;)if(e=this.animations.shift(),c=(new Date).getTime(),b=0,e.startTime<=c&&(b=d(Math.min(c-e.startTime,e.duration),0,1,e.duration),b=Math.min(b,1),isNaN(b)||!isFinite(b))&&(b=1),1>b&&a.push(e),e.animationCallback(b),1<=b&&e.onComplete)e.onComplete();this.animations=a;0<this.animations.length?this.animationRequestId=this.chart.requestAnimFrame.call(window,
1001
+ function(){f.animate.call(f)}):this.chart.isAnimating=!1};na.prototype.cancelAllAnimations=function(){this.animations=[];this.animationRequestId&&this.chart.cancelRequestAnimFrame.call(window,this.animationRequestId);this.animationRequestId=null;this.chart.isAnimating=!1};var M={yScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,0,d-d*a,c.canvas.width/la,a*c.canvas.height/la)}},xScaleAnimation:function(a,e){if(0!==a){var c=e.dest,
1002
+ b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,d-d*a,0,a*c.canvas.width/la,c.canvas.height/la)}},xClipAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/la,b.height/la);c.restore()}},fadeInAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,b.height,0,0,c.canvas.width/la,c.canvas.height/la);c.restore()}},easing:{linear:function(a,e,
1003
+ c,b){return c*a/b+e},easeOutQuad:function(a,e,c,b){return-c*(a/=b)*(a-2)+e},easeOutQuart:function(a,e,c,b){return-c*((a=a/b-1)*a*a*a-1)+e},easeInQuad:function(a,e,c,b){return c*(a/=b)*a+e},easeInQuart:function(a,e,c,b){return c*(a/=b)*a*a*a+e}}},Y={drawMarker:function(a,e,c,b,d,f,h,l){if(c){var r=1;c.fillStyle=f?f:"#000000";c.strokeStyle=h?h:"#000000";c.lineWidth=l?l:0;c.setLineDash&&c.setLineDash(J("solid",l));"circle"===b?(c.moveTo(a,e),c.beginPath(),c.arc(a,e,d/2,0,2*Math.PI,!1),f&&c.fill(),l&&
1004
+ (h?c.stroke():(r=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=r))):"square"===b?(c.beginPath(),c.rect(a-d/2,e-d/2,d,d),f&&c.fill(),l&&(h?c.stroke():(r=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=r))):"triangle"===b?(c.beginPath(),c.moveTo(a-d/2,e+d/2),c.lineTo(a+d/2,e+d/2),c.lineTo(a,e-d/2),c.closePath(),f&&c.fill(),l&&(h?c.stroke():(r=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=r)),c.beginPath()):
1005
+ "cross"===b&&(c.strokeStyle=f,c.lineWidth=d/4,c.beginPath(),c.moveTo(a-d/2,e-d/2),c.lineTo(a+d/2,e+d/2),c.stroke(),c.moveTo(a+d/2,e-d/2),c.lineTo(a-d/2,e+d/2),c.stroke())}},drawMarkers:function(a){for(var e=0;e<a.length;e++){var c=a[e];Y.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return r}();r.version="v3.16.0 GA";window.CanvasJS&&(r&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=r)})();
1005
1006
 
1006
1007
  /*
1007
1008
  excanvas is used to support IE678 which do not implement HTML5 Canvas Element. You can safely remove the following excanvas code if you don't need to support older browsers.