\n Click on the continue button to change your current password\n
\n\n {{ dsaLoginErrorMsg }}\n
\n\r\n 1. Please allow camera access.\r\n
\r\n\r\n 2. Please allow MediaRecorder\r\n option in Safari Advanced settings.\r\n
\r\n \r\n\r\n 1. Make sure there is sufficient light\r\n
\r\n \r\n\r\n 2. Please follow the following instructions while capturing your live photo.
\r\n 3. Move your face and Blink your eyes as instructed during photo capturing.
\r\n
Turn your head RIGHT and back straight
\r\nBlink once
\r\nTurn your head LEFT and back straight
\r\n\r\n The test will begin in\r\n
\r\n\r\n Please wait while your video
is being uploaded.\r\n
\r\n You have successfully passed the Liveliness test.\r\n
\r\n\r\n Please proceed by clicking Next.\r\n
\r\nBLINK ONCE
\r\nTURN LEFT
\r\nTURN RIGHT
\r\nYou will receive a 6 digit code to the registered mail/ mobile number for verification
\r\n \r\nSuccess
Success
\r\n {{ pwdUpdateStatusmsg }}\r\n
\r\n\r\n \r\n Liveliness Check\r\n | \r\n \r\n | \r\n
\r\n \r\n Facial Match\r\n | \r\n \r\n | \r\n
\r\n \r\n Facial Match Percentage:\r\n\r\n | \r\n \r\n\r\n {{ facematchPercentage }} %\r\n | \r\n
\r\n {{ successMessage1 }}
\r\n {{ successMessage2 }}
\r\n {{ successMessage }}\r\n\r\n
g&&!n)n=!0;else if(b>g&&n)continue;u.dataPoints[C].label&&\r\n(a.axisX.labels[b]=u.dataPoints[C].label);bc.viewPortMax&&(c.viewPortMax=b);null===e?c.viewPortMin===b&&pd.viewPortMax&&\"number\"===typeof e&&(d.viewPortMax=e))}}u.axisX.valueType=u.xValueType=f?\"dateTime\":\"number\"}};l.prototype._processStackedPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,m=[],u=[],\r\nC=Infinity,k=-Infinity,n=0;n c.max&&(c.max=b);if(0 l&&(l=1/l);c.minDiff>l&&1!==l&&(c.minDiff=l)}else l=b-p.dataPoints[q-1].x,0>l&&(l*=-1),c.minDiff>l&&0!==l&&(c.minDiff=l);null!==e&&null!==p.dataPoints[q-1].y&&(a.axisY.logarithmic?0l&&(l=1/l),d.minDiff>l&&1!==l&&(d.minDiff=l)):(l=e-p.dataPoints[q-1].y,0>l&&(l*=-1),d.minDiff>l&&0!==l&&(d.minDiff=l)))}if(b t&&\r\n!s)s=!0;else if(b>t&&s)continue;p.dataPoints[q].label&&(a.axisX.labels[b]=p.dataPoints[q].label);b c.viewPortMax&&(c.viewPortMax=b);null===p.dataPoints[q].y?c.viewPortMin===b&&hd.max&&(d.max=a),q c.viewPortMax||(a d.viewPortMax&&(d.viewPortMax=a)));for(q in u)u.hasOwnProperty(q)&&\r\n!isNaN(q)&&(a=u[q],a d.max&&(d.max=Math.max(a,k)),q c.viewPortMax||(a d.viewPortMax&&(d.viewPortMax=Math.max(a,k))))}};l.prototype._processStacked100PlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,m=!1,u=!1,C=[],k=0;k c.max&&(c.max=b);if(0 t&&(t=1/t);c.minDiff>t&&1!==t&&(c.minDiff=t)}else t=b-n.dataPoints[p-\r\n1].x,0>t&&(t*=-1),c.minDiff>t&&0!==t&&(c.minDiff=t);r(e)||null===n.dataPoints[p-1].y||(a.axisY.logarithmic?0
t&&(t=1/t),d.minDiff>t&&1!==t&&(d.minDiff=t)):(t=e-n.dataPoints[p-1].y,0>t&&(t*=-1),d.minDiff>t&&0!==t&&(d.minDiff=t)))}if(b l&&!g)g=!0;else if(b>l&&g)continue;n.dataPoints[p].label&&(a.axisX.labels[b]=n.dataPoints[p].label);b c.viewPortMax&&(c.viewPortMax=b);null===\r\ne?c.viewPortMin===b&&se&&(u=!0),C[b]=C[b]?C[b]+Math.abs(e):Math.abs(e))}}n.axisX.valueType=n.xValueType=f?\"dateTime\":\"number\"}a.axisY.logarithmic?(d.max=r(d.viewPortMax)?99*Math.pow(a.axisY.logarithmBase,-0.05):Math.max(d.viewPortMax,99*Math.pow(a.axisY.logarithmBase,-0.05)),d.min=r(d.viewPortMin)?1:Math.min(d.viewPortMin,1)):m&&!u?(d.max=r(d.viewPortMax)?\r\n99:Math.max(d.viewPortMax,99),d.min=r(d.viewPortMin)?1:Math.min(d.viewPortMin,1)):m&&u?(d.max=r(d.viewPortMax)?99:Math.max(d.viewPortMax,99),d.min=r(d.viewPortMin)?-99:Math.min(d.viewPortMin,-99)):!m&&u&&(d.max=r(d.viewPortMax)?-1:Math.max(d.viewPortMax,-1),d.min=r(d.viewPortMin)?-99:Math.min(d.viewPortMin,-99));d.viewPortMin=d.min;d.viewPortMax=d.max;a.dataPointYSums=C}};l.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var d=a.axisY.dataInfo,\r\nc=a.axisX.dataInfo,b,e,f,m,u=!1,C=0;C c.max&&(c.max=b);f d.max&&(d.max=m);0 s&&(s=1/s),c.minDiff>s&&1!==s&&(c.minDiff=s)):(s=b-k.dataPoints[n-1].x,0>s&&(s*=-1),c.minDiff>s&&0!==s&&(c.minDiff=s)),e&&(null!==e[0]&&k.dataPoints[n-1].y&&null!==k.dataPoints[n-1].y[0])&&(a.axisY.logarithmic?(s=e[0]/k.dataPoints[n-1].y[0],1>\r\ns&&(s=1/s),d.minDiff>s&&1!==s&&(d.minDiff=s)):(s=e[0]-k.dataPoints[n-1].y[0],0>s&&(s*=-1),d.minDiff>s&&0!==s&&(d.minDiff=s))));if(!(b t&&!q)q=!0;else if(b>t&&q)continue;k.dataPoints[n].label&&(a.axisX.labels[b]=k.dataPoints[n].label);b c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&e)for(r=0;r d.viewPortMax&&(d.viewPortMax=m))}}k.axisX.valueType=k.xValueType=u?\"dateTime\":\"number\"}};l.prototype._processSpecificPlotUnit=function(a){if(\"waterfall\"===a.type&&a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var d=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,f=!1,m=0;m c.max&&(c.max=b),u.dataPointEOs[C].cumulativeSum d.max&&(d.max=u.dataPointEOs[C].cumulativeSum),0 p&&(p=1/p),c.minDiff>p&&1!==p&&(c.minDiff=p)):(p=b-u.dataPoints[C-1].x,0>p&&(p*=-1),c.minDiff>p&&0!==p&&(c.minDiff=p)),null!==e&&null!==u.dataPoints[C-1].y&&(a.axisY.logarithmic?(e=\r\nu.dataPointEOs[C].cumulativeSum/u.dataPointEOs[C-1].cumulativeSum,1>e&&(e=1/e),d.minDiff>e&&1!==e&&(d.minDiff=e)):(e=u.dataPointEOs[C].cumulativeSum-u.dataPointEOs[C-1].cumulativeSum,0>e&&(e*=-1),d.minDiff>e&&0!==e&&(d.minDiff=e)))),!(b g&&!n)n=!0;else if(b>g&&n)continue;u.dataPoints[C].label&&(a.axisX.labels[b]=u.dataPoints[C].label);bc.viewPortMax&&(c.viewPortMax=b);0 d.viewPortMax&&(d.viewPortMax=u.dataPointEOs[C-1].cumulativeSum));u.dataPointEOs[C].cumulativeSum d.viewPortMax&&(d.viewPortMax=u.dataPointEOs[C].cumulativeSum)}u.axisX.valueType=u.xValueType=f?\"dateTime\":\"number\"}};l.prototype.calculateAutoBreaks=function(){function a(a,b,c,e){if(e)return c=Math.pow(Math.min(c*a/b,b/a),\r\n0.2),1>=c&&(c=Math.pow(1>a?1/a:Math.min(b/a,a),0.25)),{startValue:a*c,endValue:b/c};c=0.2*Math.min(c-b+a,b-a);0>=c&&(c=0.25*Math.min(b-a,Math.abs(a)));return{startValue:a+c,endValue:b-c}}function d(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){var b=a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks,c=a.axisY.scaleBreaks&&a.axisY.scaleBreaks.autoCalculate&&1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(b||c)for(var d=a.axisY.dataInfo,\r\nf=a.axisX.dataInfo,g,m=f.min,k=f.max,n=d.min,p=d.max,f=f._dataRanges,d=d._dataRanges,q,u=0,C=0;C h.dataPoints.length))for(u=0;u f[q].max&&(f[q].max=g)),c){var l=(p+1-n)*Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold)||\r\n10,10)/100;if((g=\"waterfall\"===a.type?h.dataPointEOs[u].cumulativeSum:h.dataPoints[u].y)&&g.length)for(var w=0;w d[q].max&&(d[q].max=g[w]);else r(g)||(q=Math.floor((g-n)/l),g d[q].max&&(d[q].max=g))}}}}function c(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)&&a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks)for(var b=a.axisX.dataInfo,c=\r\nb.min,d=b.max,f=b._dataRanges,g,m=0,k=0;k n.dataPoints.length))for(m=0;m f[g].max&&(f[g].max=b)}}for(var b,e=this,f=!1,m=0;m n[g].max&&(n[g].max=p)}delete this._axes[m].dataInfo.dataPointYPositiveSums}if(this._axes[m].dataInfo.dataPointYNegativeSums){q=this._axes[m].dataInfo.dataPointYNegativeSums;n=k;for(u in q)q.hasOwnProperty(u)&&!isNaN(u)&&\r\n(p=-1*q[u],r(p)||(g=Math.floor((p-C)/b),p n[g].max&&(n[g].max=p)));delete this._axes[m].dataInfo.dataPointYNegativeSums}for(u=0;u b&&f.push({diff:p,start:n,end:C});break}else u++;if(this._axes[m].scaleBreaks.customBreaks)for(u=0;u =e.x1&&(a<=e.x2&&d>=e.y1&&d<=e.y2)&&(b=e.id)}return b};l.prototype.getAutoFontSize=ob;l.prototype.resetOverlayedCanvas=\r\nfunction(){this.overlaidCanvasCtx.clearRect(0,0,this.width,this.height)};l.prototype.clearCanvas=nb;l.prototype.attachEvent=function(a){this._events.push(a)};l.prototype._touchEventHandler=function(a){if(a.changedTouches&&this.interactivityEnabled){var d=[],c=a.changedTouches,b=c?c[0]:a,e=null;switch(a.type){case \"touchstart\":case \"MSPointerDown\":d=[\"mousemove\",\"mousedown\"];this._lastTouchData=Qa(b);this._lastTouchData.time=new Date;break;case \"touchmove\":case \"MSPointerMove\":d=[\"mousemove\"];break;\r\ncase \"touchend\":case \"MSPointerUp\":var f=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0,d=\"touchstart\"===this._lastTouchEventType||\"MSPointerDown\"===this._lastTouchEventType||300>f?[\"mouseup\",\"click\"]:[\"mouseup\"];break;default:return}if(!(c&&1 f)this._lastTouchData.scroll=!0}catch(u){}this._lastTouchEventType=\r\na.type;if(this._lastTouchData.scroll&&this.zoomEnabled)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(c=0;c =e.x1&&d.x<=e.x2&&d.y>=e.y1&&d.y<=e.y2){b[c].call(b.context,d.x,d.y);\"mousedown\"===c&&!0===b.capture?(l.capturedEventParam=b,this.overlaidCanvas.setCapture?this.overlaidCanvas.setCapture():document.documentElement.addEventListener(\"mouseup\",this._mouseEventHandler,!1)):\"mouseup\"===c&&(b.chart.overlaidCanvas.releaseCapture?\r\nb.chart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener(\"mouseup\",this._mouseEventHandler,!1));break}else b=null;a.target.style.cursor=b&&b.cursor?b.cursor:this._defaultCursor}c=this.plotArea;if(d.x c.x2||d.y c.y2){this.toolTip&&this.toolTip.enabled?(this.toolTip.hide(),this.toolTip.dispatchEvent(\"hidden\",{chart:this,toolTip:this.toolTip},this.toolTip)):this.resetOverlayedCanvas();for(f=0;f c.maximum&&(f=c.viewportMaximum/c.maximum,c.sessionVariables.newViewportMinimum=c.viewportMinimum/f,c.sessionVariables.newViewportMaximum=c.viewportMaximum/f,m=!0):c.viewportMinimum c.maximum&&(f=c.viewportMaximum-c.maximum,c.sessionVariables.newViewportMinimum=c.viewportMinimum-f,c.sessionVariables.newViewportMaximum=c.viewportMaximum-f,m=!0);else if((!e||2 Math.abs(c)&&(this.panEnabled||this.zoomEnabled)){this.toolTip.hide();this.toolTip&&this.toolTip.enabled&&this.toolTip.dispatchEvent(\"hidden\",{chart:this,toolTip:this.toolTip},this.toolTip);for(var u=0;u g)var s=g,g=q,q=s;if(p.scaleBreaks)for(s=0;!f&&s =g;if(isFinite(p.dataInfo.minDiff))if(s=p.getApparentDifference(q,g,null,!0),!(f||!(this.panEnabled&&p.scaleBreaks&&p.scaleBreaks._appliedBreaks.length)&&\r\n(p.logarithmic&&s p.maximum))C.push(p),n.push({val1:q,val2:g}),u=!0;else if(!e){u=!1;break}}return{isValid:u,axesWithValidRange:C,axesRanges:n}};l.prototype.preparePlotArea=function(){var a=this.plotArea;!w&&(0 c.lineCoordinates.x2?d.x2:c.lineCoordinates.x2;a.y2=d.y2>d.y1?d.y2:c.lineCoordinates.y2;a.width=a.x2-a.x1;a.height=a.y2-a.y1}this.axisY2&&0 c.lineCoordinates.x2?\r\nd.x2:c.lineCoordinates.x2,a.y2=d.y2>d.y1?d.y2:c.lineCoordinates.y2,a.width=a.x2-a.x1,a.height=a.y2-a.y1)}else d=this.layoutManager.getFreeSpace(),a.x1=d.x1,a.x2=d.x2,a.y1=d.y1,a.y2=d.y2,a.width=d.width,a.height=d.height;w||(a.canvas.width=a.width,a.canvas.height=a.height,a.canvas.style.left=a.x1+\"px\",a.canvas.style.top=a.y1+\"px\",(0 c.x2||n.point.y c.y2+1)continue}else if(\"rangearea\"===p||\"rangesplinearea\"===p){if(n.dataPoint.x e.viewportMaximum||Math.max.apply(null,n.dataPoint.y) \r\nf.viewportMaximum)continue}else if(0<=p.indexOf(\"line\")||0<=p.indexOf(\"area\")||0<=p.indexOf(\"bubble\")||0<=p.indexOf(\"scatter\")){if(n.dataPoint.x e.viewportMaximum||n.dataPoint.y f.viewportMaximum)continue}else if(0<=p.indexOf(\"column\")||\"waterfall\"===p||\"error\"===p&&!n.axisSwapped){if(n.dataPoint.x e.viewportMaximum||n.bounds.y1>c.y2||n.bounds.y2 e.viewportMaximum||n.bounds.x1>c.x2||n.bounds.x2 e.viewportMaximum||Math.max.apply(null,n.dataPoint.y) f.viewportMaximum)continue}else if(n.dataPoint.x e.viewportMaximum)continue;m=u=2;\"horizontal\"===z?(C=h.width,k=h.height):(k=h.width,C=h.height);if(\"normal\"===\r\nthis.plotInfo.axisPlacement){if(0<=p.indexOf(\"line\")||0<=p.indexOf(\"area\"))y=\"auto\",u=4;else if(0<=p.indexOf(\"stacked\"))\"auto\"===y&&(y=\"inside\");else if(\"bubble\"===p||\"scatter\"===p)y=\"inside\";q=n.point.x-(\"horizontal\"===z?C/2:C/2-s/2);\"inside\"!==y?(e=c.y1,f=c.y2,0 n.point.y)):(g=n.point.y+s/2+u+b,g>f-k&&(g=\"auto\"===y?Math.min(n.point.y,f)+s/2-k-u:f+s/2-k,x=g f-k-u&&(\"bubble\"===p||\"scatter\"===p)&&(g=Math.min(n.point.y+u,c.y2-k-u))),g=Math.min(g,f))}else 0<=p.indexOf(\"line\")||0<=p.indexOf(\"area\")||\r\n0<=p.indexOf(\"scatter\")?(y=\"auto\",m=4):0<=p.indexOf(\"stacked\")?\"auto\"===y&&(y=\"inside\"):\"bubble\"===p&&(y=\"inside\"),g=n.point.y+s/2-k/2+u,\"inside\"!==y?(e=c.x1,f=c.x2,0>v?(q=n.point.x-(\"horizontal\"===z?C:C-s/2)-m-b,q n.point.x)):(q=n.point.x+(\"horizontal\"===z?0:s/2)+m+b,q>f-C-m-b&&(q=\"auto\"===y?Math.min(n.point.x,f)-(\"horizontal\"===z?C:C/2)-m:f-C-m,x=q v?Math.max(n.bounds.x1,c.x1)+s/2+m:Math.min(n.bounds.x2,c.x2)-C/2-m+(\"horizontal\"===z?0:s/2):(Math.max(n.bounds.x1,c.x1)+Math.min(n.bounds.x2,c.x2))/2+(\"horizontal\"===z?0:s/2),q=0>v?Math.max(n.point.x,b)-(\"horizontal\"===z?C/2:0):Math.min(n.point.x,b)-C/2,q=Math.max(q,e));\"vertical\"===z&&(g+=k-s/2);h.x=q;h.y=g;h.render(!0);A&&(\"inside\"!==y&&(0>p.indexOf(\"bar\")&&(\"error\"!==p||!n.axisSwapped)&&n.point.x>c.x1&&n.point.x p.indexOf(\"column\")&&(\"error\"!==p||n.axisSwapped)&&n.point.y>c.y1&&\r\nn.point.y =a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var f=[],m,u=0;u a.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!z)))if(\"number\"!==typeof n[t].y)0 n[t].y===a.axisY.reversed?1:-1,color:s})}c.stroke();w&&b.stroke()}}$.drawMarkers(f);w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\r\n\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();return{source:d,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderStepLine=\r\nfunction(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var f=[],m,u=0;u a.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!z)))if(\"number\"!==typeof n[t].y)0<\r\nt&&!(k.connectNullData||z||l)&&(c.stroke(),w&&b.stroke()),z=!0;else{var F=y;r=a.axisX.convertValueToPixel(r);y=a.axisY.convertValueToPixel(n[t].y);var B=k.dataPointIds[t];this._eventManager.objectMap[B]={id:B,objectType:\"dataPoint\",dataSeriesIndex:C,dataPointIndex:t,x1:r,y1:y};l||z?(!l&&k.connectNullData?(c.setLineDash&&(k.options.nullDataLineDashType||p===k.lineDashType&&k.lineDashType!==k.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(m.x,m.y),p=k.nullDataLineDashType,c.setLineDash(q)),\r\nc.lineTo(r,F),c.lineTo(r,y),w&&(b.lineTo(r,F),b.lineTo(r,y))):(c.beginPath(),c.moveTo(r,y),w&&(b.beginPath(),b.moveTo(r,y))),z=l=!1):(c.lineTo(r,F),w&&b.lineTo(r,F),c.lineTo(r,y),w&&b.lineTo(r,y),0==t%500&&(c.stroke(),c.beginPath(),c.moveTo(r,y),w&&(b.stroke(),b.beginPath(),b.moveTo(r,y))));m={x:r,y:y};t n[t].y===a.axisY.reversed?\r\n1:-1,color:s})}c.stroke();w&&b.stroke()}}$.drawMarkers(f);w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();\r\nreturn{source:d,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderSpline=function(a){function d(a){a=v(a,2);if(0 =a.dataSeriesIndexes.length)){var e=\r\nthis._eventManager.ghostCtx;b.save();var f=this.plotArea;b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();for(var m=[],u=0;u a.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!r)))if(\"number\"!==typeof n[l].y)0 n[l].y===a.axisY.reversed?\r\n1:-1,color:s});r=!1}d(y)}$.drawMarkers(m);w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),e.beginPath());b.restore();b.beginPath();return{source:c,\r\ndest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderColumn=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,m,u,C,k=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,n=this.options.dataPointMaxWidth?\r\nthis.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.dataPointWidth=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>n&&(f=Math.min(this.options.dataPointWidth?\r\nthis.dataPointWidth:Infinity,n));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&n n&&(p=n);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(n=0;n a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof s[f].y){m=a.axisX.convertValueToPixel(C);u=a.axisY.convertValueToPixel(s[f].y);m=a.axisX.reversed?m+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+n)*p<<0:m-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+n)*p<<0;var l=a.axisX.reversed?m-p<<0:m+p<<0,t;\r\n0<=s[f].y?t=k:(t=u,u=k);u>t&&(b=u,u=t,t=b);b=s[f].color?s[f].color:g._colorSet[f%g._colorSet.length];ea(c,a.axisX.reversed?l:m,u,a.axisX.reversed?m:l,t,b,0,null,h&&(a.axisY.reversed?0>s[f].y:0<=s[f].y),(a.axisY.reversed?0<=s[f].y:0>s[f].y)&&h,!1,!1,g.fillOpacity);b=g.dataPointIds[f];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:q,dataPointIndex:f,x1:m,y1:u,x2:l,y2:t};b=S(b);w&&ea(this._eventManager.ghostCtx,a.axisX.reversed?l:m,u,a.axisX.reversed?m:l,t,b,0,null,!1,!1,\r\n!1,!1);(s[f].indexLabel||g.indexLabel||s[f].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:\"column\",dataPoint:s[f],dataSeries:g,point:{x:m+(l-m)/2,y:0>s[f].y===a.axisY.reversed?u:t},direction:0>s[f].y===a.axisY.reversed?1:-1,bounds:{x1:m,y1:Math.min(u,t),x2:l,y2:Math.max(u,t)},color:b})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),\r\na.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.yScaleAnimation,easingFunction:O.easing.easeOutQuart,animationBase:k a.axisY.bounds.y2?a.axisY.bounds.y2:k}}};l.prototype.renderStackedColumn=\r\nfunction(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=[],m=[],u=[],C=[],k=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.width<<0,s=a.axisX.dataInfo.minDiff;\r\nisFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g g&&(s=g);c.save();w&&this._eventManager.ghostCtx.save();\r\nc.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g a.axisX.dataInfo.viewPortMax)&&\r\n\"number\"===typeof t[k].y){n=a.axisX.convertValueToPixel(b);n=n-a.plotType.plotUnits.length*s/2+a.index*s<<0;var y=n+s<<0,z;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0 =t[k].y)C[b]=t[k].y+(C[b]?C[b]:0),z=a.axisY.convertValueToPixel(C[b]),p=\"undefined\"!==typeof m[b]?\r\nm[b]:q,m[b]=z;else if(p=a.axisY.convertValueToPixel(t[k].y),0<=t[k].y){var F=\"undefined\"!==typeof f[b]?f[b]:0;p-=F;z=q-F;f[b]=F+(z-p)}else F=m[b]?m[b]:0,z=p+F,p=q+F,m[b]=F+(z-p);b=t[k].color?t[k].color:l._colorSet[k%l._colorSet.length];ea(c,n,a.axisY.reversed?z:p,y,a.axisY.reversed?p:z,b,0,null,r&&(a.axisY.reversed?0>t[k].y:0<=t[k].y),(a.axisY.reversed?0<=t[k].y:0>t[k].y)&&r,!1,!1,l.fillOpacity);b=l.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,\r\nx1:n,y1:p,x2:y,y2:z};b=S(b);w&&ea(this._eventManager.ghostCtx,n,p,y,z,b,0,null,!1,!1,!1,!1);(t[k].indexLabel||l.indexLabel||t[k].indexLabelFormatter||l.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedColumn\",dataPoint:t[k],dataSeries:l,point:{x:n+(y-n)/2,y:0<=t[k].y?p:z},direction:0>t[k].y===a.axisY.reversed?1:-1,bounds:{x1:n,y1:Math.min(p,z),x2:y,y2:Math.max(p,z)},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",\r\na.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.yScaleAnimation,easingFunction:O.easing.easeOutQuart,animationBase:q a.axisY.bounds.y2?a.axisY.bounds.y2:q}}};l.prototype.renderStackedColumn100=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=[],m=[],u=[],C=[],k=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?\r\nthis.dataPointWidth:0.15*this.width<<0,s=a.axisX.dataInfo.minDiff;isFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g g&&(s=g);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof t[k].y){n=a.axisX.convertValueToPixel(b);p=0!==a.dataPointYSums[b]?100*(t[k].y/a.dataPointYSums[b]):0;n=n-a.plotType.plotUnits.length*s/2+a.index*s<<0;var y=n+s<<0,z;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0 =u[b])continue;p=a.axisY.convertValueToPixel(u[b]);z=f[b]?f[b]:q;f[b]=p}else if(a.axisY.scaleBreaks&&0 =t[k].y)C[b]=p+(\"undefined\"!==typeof C[b]?C[b]:0),z=a.axisY.convertValueToPixel(C[b]),p=m[b]?m[b]:q,m[b]=z;else if(p=a.axisY.convertValueToPixel(p),0<=t[k].y){var F=\"undefined\"!==typeof f[b]?f[b]:0;p-=F;z=q-F;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y1-p)&&(p=e.y1);f[b]=F+(z-p)}else F=\"undefined\"!==typeof m[b]?m[b]:0,z=p+F,p=q+F,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y2-z)&&(z=e.y2),m[b]=F+(z-p);b=t[k].color?t[k].color:l._colorSet[k%l._colorSet.length];ea(c,n,a.axisY.reversed?z:\r\np,y,a.axisY.reversed?p:z,b,0,null,r&&(a.axisY.reversed?0>t[k].y:0<=t[k].y),(a.axisY.reversed?0<=t[k].y:0>t[k].y)&&r,!1,!1,l.fillOpacity);b=l.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:n,y1:p,x2:y,y2:z};b=S(b);w&&ea(this._eventManager.ghostCtx,n,p,y,z,b,0,null,!1,!1,!1,!1);(t[k].indexLabel||l.indexLabel||t[k].indexLabelFormatter||l.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedColumn100\",dataPoint:t[k],dataSeries:l,\r\npoint:{x:n+(y-n)/2,y:0<=t[k].y?p:z},direction:0>t[k].y===a.axisY.reversed?1:-1,bounds:{x1:n,y1:Math.min(p,z),x2:y,y2:Math.max(p,z)},color:b})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),\r\nc.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.yScaleAnimation,easingFunction:O.easing.easeOutQuart,animationBase:q a.axisY.bounds.y2?a.axisY.bounds.y2:q}}};l.prototype.renderBar=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,m,u,C,k=a.axisY.convertValueToPixel(a.axisY.logarithmic?\r\na.axisY.viewportMinimum:0),f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,n=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):\r\nMath.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>n&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,n));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&n n&&(p=n);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,\r\ne.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(n=0;n a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof s[f].y){u=a.axisX.convertValueToPixel(C);m=a.axisY.convertValueToPixel(s[f].y);u=a.axisX.reversed?u+a.plotType.totalDataSeries*\r\np/2-(a.previousDataSeriesCount+n)*p<<0:u-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+n)*p<<0;var l=a.axisX.reversed?u-p<<0:u+p<<0,t;0<=s[f].y?t=k:(t=m,m=k);b=s[f].color?s[f].color:g._colorSet[f%g._colorSet.length];ea(c,a.axisY.reversed?m:t,a.axisX.reversed?l:u,a.axisY.reversed?t:m,a.axisX.reversed?u:l,b,0,null,h,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[f];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:q,dataPointIndex:f,x1:t,y1:u,x2:m,y2:l};b=S(b);w&&ea(this._eventManager.ghostCtx,\r\nt,a.axisX.reversed?l:u,m,a.axisX.reversed?u:l,b,0,null,!1,!1,!1,!1);(s[f].indexLabel||g.indexLabel||s[f].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:\"bar\",dataPoint:s[f],dataSeries:g,point:{x:0<=s[f].y?m:t,y:u+(l-u)/2},direction:0>s[f].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(t,m),y1:u,x2:Math.max(t,m),y2:l},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,\r\n0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.xScaleAnimation,easingFunction:O.easing.easeOutQuart,animationBase:k a.axisY.bounds.x2?a.axisY.bounds.x2:\r\nk}}};l.prototype.renderStackedBar=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=[],m=[],u=[],C=[],k=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<\r\n0,s=a.axisX.dataInfo.minDiff;isFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g g&&(s=g);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof t[k].y){p=a.axisX.convertValueToPixel(b);p=p-a.plotType.plotUnits.length*s/2+a.index*s<<0;var y=p+s<<0,z;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0 =t[k].y)C[b]=t[k].y+(C[b]?C[b]:0),n=m[b]?m[b]:\r\nq,m[b]=z=a.axisY.convertValueToPixel(C[b]);else if(n=a.axisY.convertValueToPixel(t[k].y),0<=t[k].y){var F=f[b]?f[b]:0;z=q+F;n+=F;f[b]=F+(n-z)}else F=m[b]?m[b]:0,z=n-F,n=q-F,m[b]=F+(n-z);b=t[k].color?t[k].color:l._colorSet[k%l._colorSet.length];ea(c,a.axisY.reversed?n:z,p,a.axisY.reversed?z:n,y,b,0,null,r,!1,!1,!1,l.fillOpacity);b=l.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:z,y1:p,x2:n,y2:y};b=S(b);w&&ea(this._eventManager.ghostCtx,\r\nz,p,n,y,b,0,null,!1,!1,!1,!1);(t[k].indexLabel||l.indexLabel||t[k].indexLabelFormatter||l.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedBar\",dataPoint:t[k],dataSeries:l,point:{x:0<=t[k].y?n:z,y:p+(y-p)/2},direction:0>t[k].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(z,n),y1:p,x2:Math.max(z,n),y2:y},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,\r\nthis.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.xScaleAnimation,easingFunction:O.easing.easeOutQuart,animationBase:q a.axisY.bounds.x2?a.axisY.bounds.x2:q}}};l.prototype.renderStackedBar100=\r\nfunction(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=[],m=[],u=[],C=[],k=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<0,s=a.axisX.dataInfo.minDiff;\r\nisFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&k>g&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g g&&(s=g);c.save();w&&\r\nthis._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof t[k].y){p=a.axisX.convertValueToPixel(b);var y;y=0!==a.dataPointYSums[b]?100*(t[k].y/a.dataPointYSums[b]):0;p=p-a.plotType.plotUnits.length*s/2+a.index*s<<0;var z=p+s<<0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0 =u[b])continue;y=f[b]?f[b]:q;f[b]=n=a.axisY.convertValueToPixel(u[b])}else if(a.axisY.scaleBreaks&&0 =t[k].y)C[b]=\r\ny+(C[b]?C[b]:0),n=m[b]?m[b]:q,m[b]=y=a.axisY.convertValueToPixel(C[b]);else if(n=a.axisY.convertValueToPixel(y),0<=t[k].y){var F=f[b]?f[b]:0;y=q+F;n+=F;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x2-n)&&(n=e.x2);f[b]=F+(n-y)}else F=m[b]?m[b]:0,y=n-F,n=q-F,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x1-y)&&(y=e.x1),m[b]=F+(n-y);b=t[k].color?t[k].color:l._colorSet[k%l._colorSet.length];ea(c,a.axisY.reversed?n:y,p,a.axisY.reversed?y:n,z,b,0,null,r,!1,!1,!1,l.fillOpacity);b=l.dataPointIds[k];\r\nthis._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:k,x1:y,y1:p,x2:n,y2:z};b=S(b);w&&ea(this._eventManager.ghostCtx,y,p,n,z,b,0,null,!1,!1,!1,!1);(t[k].indexLabel||l.indexLabel||t[k].indexLabelFormatter||l.indexLabelFormatter)&&this._indexLabels.push({chartType:\"stackedBar100\",dataPoint:t[k],dataSeries:l,point:{x:0<=t[k].y?n:y,y:p+(z-p)/2},direction:0>t[k].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(y,n),y1:p,x2:Math.max(y,n),y2:z},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,\r\n0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.xScaleAnimation,easingFunction:O.easing.easeOutQuart,\r\nanimationBase:q a.axisY.bounds.x2?a.axisY.bounds.x2:q}}};l.prototype.renderArea=function(a){var d,c;function b(){F&&(0 =a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?z=y:0>a.axisY.viewportMaximum?z=u.y1:0 =a.dataSeriesIndexes.length)){var m=this._eventManager.ghostCtx,u=a.axisY.lineCoordinates,C=[],k=this.plotArea,n;f.save();w&&m.save();f.beginPath();f.rect(k.x1,k.y1,k.width,k.height);f.clip();w&&(m.beginPath(),m.rect(k.x1,k.y1,k.width,k.height),m.clip());for(var p=0;p a.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!fa)))if(\"number\"!==typeof s[h].y)g.connectNullData||(fa||d)||b(),fa=!0;else{l=a.axisX.convertValueToPixel(r);t=a.axisY.convertValueToPixel(s[h].y);d||fa?(!d&&g.connectNullData?(f.setLineDash&&(g.options.nullDataLineDashType||c===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(d=l,c=t,l=n.x,t=n.y,b(),f.moveTo(n.x,n.y),l=d,t=c,F=n,c=g.nullDataLineDashType,f.setLineDash(N)),f.lineTo(l,\r\nt),w&&m.lineTo(l,t)):(f.beginPath(),f.moveTo(l,t),w&&(m.beginPath(),m.moveTo(l,t)),F={x:l,y:t}),fa=d=!1):(f.lineTo(l,t),w&&m.lineTo(l,t),0==h%250&&b());n={x:l,y:t};h s[h].y===a.axisY.reversed?1:-1,color:B})}b();$.drawMarkers(C)}}w&&\r\n(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&f.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&f.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.clearRect(k.x1,k.y1,k.width,k.height),this._eventManager.ghostCtx.restore());f.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,\r\neasingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderSplineArea=function(a){function d(){var c=v(A,2);if(0 =a.axisY.viewportMinimum&&\r\n0<=a.axisY.viewportMaximum?r=l:0>a.axisY.viewportMaximum?r=f.y1:0 =a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,f=a.axisY.lineCoordinates,m=[],u=this.plotArea;b.save();w&&\r\ne.save();b.beginPath();b.rect(u.x1,u.y1,u.width,u.height);b.clip();w&&(e.beginPath(),e.rect(u.x1,u.y1,u.width,u.height),e.clip());for(var h=0;h a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!s)))if(\"number\"!==typeof p[q].y)0 p[q].y===a.axisY.reversed?1:-1,color:y});s=!1}d();$.drawMarkers(m)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(u.x1,u.y1,u.width,u.height),\r\nthis._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderStepArea=function(a){var d,c;function b(){F&&(0=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?z=y:0>a.axisY.viewportMaximum?z=u.y1:0 =a.dataSeriesIndexes.length)){var m=this._eventManager.ghostCtx,u=a.axisY.lineCoordinates,h=[],k=this.plotArea,n;f.save();w&&m.save();f.beginPath();f.rect(k.x1,k.y1,k.width,k.height);f.clip();w&&(m.beginPath(),m.rect(k.x1,k.y1,k.width,k.height),m.clip());for(var p=0;p a.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!c))){var aa=t;\"number\"!==typeof s[l].y?(g.connectNullData||(c||d)||b(),c=!0):(r=a.axisX.convertValueToPixel(A),t=a.axisY.convertValueToPixel(s[l].y),d||c?(!d&&g.connectNullData?(f.setLineDash&&(g.options.nullDataLineDashType||N===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(d=r,\r\nc=t,r=n.x,t=n.y,b(),f.moveTo(n.x,n.y),r=d,t=c,F=n,N=g.nullDataLineDashType,f.setLineDash(Q)),f.lineTo(r,aa),f.lineTo(r,t),w&&(m.lineTo(r,aa),m.lineTo(r,t))):(f.beginPath(),f.moveTo(r,t),w&&(m.beginPath(),m.moveTo(r,t)),F={x:r,y:t}),c=d=!1):(f.lineTo(r,aa),w&&m.lineTo(r,aa),f.lineTo(r,t),w&&m.lineTo(r,t),0==l%250&&b()),n={x:r,y:t},l s[l].y===a.axisY.reversed?1:-1,color:B}))}b();$.drawMarkers(h)}}w&&(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),f.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&f.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&f.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\r\n0,0,this.width,this.height),f.clearRect(k.x1,k.y1,k.width,k.height),this._eventManager.ghostCtx.restore());f.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderStackedArea=function(a){function d(){if(!(1>k.length)){for(0 =a.dataSeriesIndexes.length)){var e=null,f=null,m=[],u=this.plotArea,h=[],k=[],n=[],p=[],q=0,g,s,l=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),r=this._eventManager.ghostCtx,t,A,y;w&&r.beginPath();b.save();w&&r.save();b.beginPath();b.rect(u.x1,u.y1,u.width,u.height);b.clip();w&&(r.beginPath(),r.rect(u.x1,u.y1,u.width,u.height),r.clip());for(var e=[],z=0;z a.axisX.dataInfo.viewPortMax&&(!B.connectNullData||!aa)))if(\"number\"!==typeof ga.y)B.connectNullData||(aa||A)||d(),aa=!0;else{g=a.axisX.convertValueToPixel(f);var ma=\r\nh[f]?h[f]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0 =p[f]&&a.axisY.logarithmic)continue;s=a.axisY.convertValueToPixel(p[f])}else s=a.axisY.convertValueToPixel(ga.y),s-=ma;k.push({x:g,y:l-ma});h[f]=l-s;A||aa?(!A&&B.connectNullData?(b.setLineDash&&(B.options.nullDataLineDashType||y===B.lineDashType&&B.lineDashType!==B.nullDataLineDashType)&&(A=k.pop(),y=k[k.length-1],d(),b.moveTo(t.x,t.y),k.push(y),k.push(A),y=B.nullDataLineDashType,\r\nb.setLineDash(Q)),b.lineTo(g,s),w&&r.lineTo(g,s)):(b.beginPath(),b.moveTo(g,s),w&&(r.beginPath(),r.moveTo(g,s))),aa=A=!1):(b.lineTo(g,s),w&&r.lineTo(g,s),0==q%250&&(d(),b.moveTo(g,s),w&&r.moveTo(g,s),k.push({x:g,y:l-ma})));t={x:g,y:s};q v[q].y===a.axisY.reversed?1:-1,color:e})}}d();b.moveTo(g,s);w&&r.moveTo(g,s)}delete B.dataPointIndexes}$.drawMarkers(m);w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,\r\n0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(u.x1,u.y1,u.width,u.height),r.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderStackedArea100=function(a){function d(){for(0 =a.dataSeriesIndexes.length)){var e=null,f=null,m=this.plotArea,u=[],h=[],k=[],n=[],p=[],q=0,g,s,l,r,t,A=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),y=this._eventManager.ghostCtx;b.save();w&&y.save();b.beginPath();b.rect(m.x1,m.y1,m.width,m.height);b.clip();w&&(y.beginPath(),y.rect(m.x1,m.y1,m.width,\r\nm.height),y.clip());for(var e=[],z=0;z a.axisX.dataInfo.viewPortMax&&(!B.connectNullData||!aa)))if(\"number\"!==typeof ga.y)B.connectNullData||\r\n(aa||r)||d(),aa=!0;else{var ma;ma=0!==a.dataPointYSums[f]?100*(ga.y/a.dataPointYSums[f]):0;g=a.axisX.convertValueToPixel(f);var ba=h[f]?h[f]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0 =p[f]&&a.axisY.logarithmic)continue;s=a.axisY.convertValueToPixel(p[f])}else s=a.axisY.convertValueToPixel(ma),s-=ba;k.push({x:g,y:A-ba});h[f]=A-s;r||aa?(!r&&B.connectNullData?(b.setLineDash&&(B.options.nullDataLineDashType||t===B.lineDashType&&\r\nB.lineDashType!==B.nullDataLineDashType)&&(r=k.pop(),t=k[k.length-1],d(),b.moveTo(l.x,l.y),k.push(t),k.push(r),t=B.nullDataLineDashType,b.setLineDash(Q)),b.lineTo(g,s),w&&y.lineTo(g,s)):(b.beginPath(),b.moveTo(g,s),w&&(y.beginPath(),y.moveTo(g,s))),aa=r=!1):(b.lineTo(g,s),w&&y.lineTo(g,s),0==q%250&&(d(),b.moveTo(g,s),w&&y.moveTo(g,s),k.push({x:g,y:A-ba})));l={x:g,y:s};q x[q].y===a.axisY.reversed?1:-1,color:e})}}d();b.moveTo(g,s);w&&y.moveTo(g,s)}delete B.dataPointIndexes}$.drawMarkers(u);w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\r\n\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(m.x1,m.y1,m.width,m.height),y.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderBubble=function(a){var d=\r\na.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,e=0,f,m;c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.clip());for(var u=-Infinity,h=Infinity,k=0;k a.axisX.dataInfo.viewPortMax||\"undefined\"===typeof q[e].z||(g=q[e].z,g>u&&(u=g),g a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof q[e].y){f=a.axisX.convertValueToPixel(f);m=a.axisY.convertValueToPixel(q[e].y);var g=q[e].z,r=2*Math.max(Math.sqrt((u===h?l/2:s+(l-s)/(u-h)*(g-h))/Math.PI)<<0,1),g=p.getMarkerProperties(e,c);g.size=r;c.globalAlpha=p.fillOpacity;$.drawMarker(f,m,c,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;var t=p.dataPointIds[e];this._eventManager.objectMap[t]={id:t,objectType:\"dataPoint\",dataSeriesIndex:n,dataPointIndex:e,x1:f,y1:m,size:r};\r\nr=S(t);w&&$.drawMarker(f,m,this._eventManager.ghostCtx,g.type,g.size,r,r,g.borderThickness);(q[e].indexLabel||p.indexLabel||q[e].indexLabelFormatter||p.indexLabelFormatter)&&this._indexLabels.push({chartType:\"bubble\",dataPoint:q[e],dataSeries:p,point:{x:f,y:m},direction:1,bounds:{x1:f-g.size/2,y1:m-g.size/2,x2:f+g.size/2,y2:m+g.size/2},color:null})}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,\r\n0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,animationBase:0}}};l.prototype.renderScatter=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,\r\nc=w?this._preRenderCtx:d;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,e=0,f,m;c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.clip());for(var u=0;u a.axisX.dataInfo.viewPortMax)&&\"number\"===typeof n[e].y){f=a.axisX.convertValueToPixel(f);m=a.axisY.convertValueToPixel(n[e].y);var g=k.getMarkerProperties(e,f,m,c);c.globalAlpha=k.fillOpacity;$.drawMarker(g.x,g.y,g.ctx,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;Math.sqrt((p-f)*(p-f)+(q-m)*(q-m)) Math.min(this.plotArea.width,\r\nthis.plotArea.height)||(p=k.dataPointIds[e],this._eventManager.objectMap[p]={id:p,objectType:\"dataPoint\",dataSeriesIndex:h,dataPointIndex:e,x1:f,y1:m},p=S(p),w&&$.drawMarker(g.x,g.y,this._eventManager.ghostCtx,g.type,g.size,p,p,g.borderThickness),(n[e].indexLabel||k.indexLabel||n[e].indexLabelFormatter||k.indexLabelFormatter)&&this._indexLabels.push({chartType:\"scatter\",dataPoint:n[e],dataSeries:k,point:{x:f,y:m},direction:1,bounds:{x1:f-g.size/2,y1:m-g.size/2,x2:f+g.size/2,y2:m+g.size/2},color:null}),\r\np=f,q=m)}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,\r\nanimationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,animationBase:0}}};l.prototype.renderCandlestick=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,f=null,m=this.plotArea,u=0,h,k,n,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,f=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?\r\nthis.dataPointWidth:0.015*this.width,s=a.axisX.dataInfo.minDiff;isFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.7*m.width*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&e>f&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,f));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&f f&&(s=f);c.save();w&&b.save();c.beginPath();c.rect(m.x1,m.y1,m.width,m.height);c.clip();w&&(b.beginPath(),b.rect(m.x1,m.y1,m.width,m.height),b.clip());for(var l=0;l a.axisX.dataInfo.viewPortMax)&&!r(A[u].y)&&A[u].y.length&&\"number\"===typeof A[u].y[0]&&\r\n\"number\"===typeof A[u].y[1]&&\"number\"===typeof A[u].y[2]&&\"number\"===typeof A[u].y[3]){h=a.axisX.convertValueToPixel(g);k=a.axisY.convertValueToPixel(A[u].y[0]);n=a.axisY.convertValueToPixel(A[u].y[1]);p=a.axisY.convertValueToPixel(A[u].y[2]);q=a.axisY.convertValueToPixel(A[u].y[3]);var z=h-s/2<<0,v=z+s<<0,f=t.options.fallingColor?t.fallingColor:t._colorSet[0],e=A[u].color?A[u].color:t._colorSet[0],B=Math.round(Math.max(1,0.15*s)),x=0===B%2?0:0.5,D=t.dataPointIds[u];this._eventManager.objectMap[D]=\r\n{id:D,objectType:\"dataPoint\",dataSeriesIndex:Aa,dataPointIndex:u,x1:z,y1:k,x2:v,y2:n,x3:h,y3:p,x4:h,y4:q,borderThickness:B,color:e};c.strokeStyle=e;c.beginPath();c.lineWidth=B;b.lineWidth=Math.max(B,4);\"candlestick\"===t.type?(c.moveTo(h-x,n),c.lineTo(h-x,Math.min(k,q)),c.stroke(),c.moveTo(h-x,Math.max(k,q)),c.lineTo(h-x,p),c.stroke(),ea(c,z,Math.min(k,q),v,Math.max(k,q),A[u].y[0]<=A[u].y[3]?t.risingColor:f,B,e,y,y,!1,!1,t.fillOpacity),w&&(e=S(D),b.strokeStyle=e,b.moveTo(h-x,n),b.lineTo(h-x,Math.min(k,\r\nq)),b.stroke(),b.moveTo(h-x,Math.max(k,q)),b.lineTo(h-x,p),b.stroke(),ea(b,z,Math.min(k,q),v,Math.max(k,q),e,0,null,!1,!1,!1,!1))):\"ohlc\"===t.type&&(c.moveTo(h-x,n),c.lineTo(h-x,p),c.stroke(),c.beginPath(),c.moveTo(h,k),c.lineTo(z,k),c.stroke(),c.beginPath(),c.moveTo(h,q),c.lineTo(v,q),c.stroke(),w&&(e=S(D),b.strokeStyle=e,b.moveTo(h-x,n),b.lineTo(h-x,p),b.stroke(),b.beginPath(),b.moveTo(h,k),b.lineTo(z,k),b.stroke(),b.beginPath(),b.moveTo(h,q),b.lineTo(v,q),b.stroke()));(A[u].indexLabel||t.indexLabel||\r\nA[u].indexLabelFormatter||t.indexLabelFormatter)&&this._indexLabels.push({chartType:t.type,dataPoint:A[u],dataSeries:t,point:{x:z+(v-z)/2,y:a.axisY.reversed?p:n},direction:1,bounds:{x1:z,y1:Math.min(n,p),x2:v,y2:Math.max(n,p)},color:e})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),\r\nthis._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(m.x1,m.y1,m.width,m.height),b.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,animationBase:0}}};l.prototype.renderBoxAndWhisker=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,f=this.plotArea,\r\nm=0,u,h,k,n,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,m=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,s=a.axisX.dataInfo.minDiff;isFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.7*f.width*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&e>\r\nm&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,m));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&m m&&(s=m);c.save();w&&b.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(b.beginPath(),b.rect(f.x1,f.y1,f.width,f.height),b.clip());for(var l=!1,l=!!a.axisY.reversed,Aa=0;Aa a.axisX.dataInfo.viewPortMax)&&!r(y[m].y)&&y[m].y.length&&\"number\"===typeof y[m].y[0]&&\"number\"===typeof y[m].y[1]&&\"number\"===typeof y[m].y[2]&&\"number\"===typeof y[m].y[3]&&\"number\"===typeof y[m].y[4]&&5===y[m].y.length){u=a.axisX.convertValueToPixel(g);h=a.axisY.convertValueToPixel(y[m].y[0]);k=a.axisY.convertValueToPixel(y[m].y[1]);n=a.axisY.convertValueToPixel(y[m].y[2]);\r\np=a.axisY.convertValueToPixel(y[m].y[3]);q=a.axisY.convertValueToPixel(y[m].y[4]);var v=u-s/2<<0,B=u+s/2<<0,e=y[m].color?y[m].color:A._colorSet[0],x=Math.round(Math.max(1,0.15*s)),D=0===x%2?0:0.5,N=y[m].whiskerColor?y[m].whiskerColor:y[m].color?A.whiskerColor?A.whiskerColor:y[m].color:A.whiskerColor?A.whiskerColor:e,Q=\"number\"===typeof y[m].whiskerThickness?y[m].whiskerThickness:\"number\"===typeof A.options.whiskerThickness?A.whiskerThickness:x,E=y[m].whiskerDashType?y[m].whiskerDashType:A.whiskerDashType,\r\naa=r(y[m].whiskerLength)?r(A.options.whiskerLength)?s:A.whiskerLength:y[m].whiskerLength,aa=\"number\"===typeof aa?0>=aa?0:aa>=s?s:aa:\"string\"===typeof aa?parseInt(aa)*s/100>s?s:parseInt(aa)*s/100:s,ga=1===Math.round(Q)%2?0.5:0,ma=y[m].stemColor?y[m].stemColor:y[m].color?A.stemColor?A.stemColor:y[m].color:A.stemColor?A.stemColor:e,ba=\"number\"===typeof y[m].stemThickness?y[m].stemThickness:\"number\"===typeof A.options.stemThickness?A.stemThickness:x,G=1===Math.round(ba)%2?0.5:0,J=y[m].stemDashType?y[m].stemDashType:\r\nA.stemDashType,K=y[m].lineColor?y[m].lineColor:y[m].color?A.lineColor?A.lineColor:y[m].color:A.lineColor?A.lineColor:e,L=\"number\"===typeof y[m].lineThickness?y[m].lineThickness:\"number\"===typeof A.options.lineThickness?A.lineThickness:x,P=y[m].lineDashType?y[m].lineDashType:A.lineDashType,M=1===Math.round(L)%2?0.5:0,Y=A.upperBoxColor,ya=A.lowerBoxColor,sa=r(A.options.fillOpacity)?1:A.fillOpacity,R=A.dataPointIds[m];this._eventManager.objectMap[R]={id:R,objectType:\"dataPoint\",dataSeriesIndex:t,dataPointIndex:m,\r\nx1:v,y1:h,x2:B,y2:k,x3:u,y3:n,x4:u,y4:p,y5:q,borderThickness:x,color:e,stemThickness:ba,stemColor:ma,whiskerThickness:Q,whiskerLength:aa,whiskerColor:N,lineThickness:L,lineColor:K};c.save();0 =a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,m,u,h,f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:\r\n1;m=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.03*this.width;var k=a.axisX.dataInfo.minDiff;isFinite(k)||(k=0.3*Math.abs(a.axisX.range));k=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(k)/Math.log(a.axisX.range):Math.abs(k)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>m&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,m));!this.dataPointMaxWidth&&\r\n(this.dataPointMinWidth&&m m&&(k=m);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var n=0;n a.axisX.dataInfo.viewPortMax)&&!r(g[f].y)&&g[f].y.length&&\"number\"===typeof g[f].y[0]&&\"number\"===typeof g[f].y[1]){b=a.axisX.convertValueToPixel(h);m=a.axisY.convertValueToPixel(g[f].y[0]);u=a.axisY.convertValueToPixel(g[f].y[1]);var l=a.axisX.reversed?b+a.plotType.totalDataSeries*k/2-(a.previousDataSeriesCount+n)*k<<0:b-a.plotType.totalDataSeries*k/2+(a.previousDataSeriesCount+\r\nn)*k<<0,v=a.axisX.reversed?l-k<<0:l+k<<0,b=g[f].color?g[f].color:q._colorSet[f%q._colorSet.length];if(m>u){var t=m;m=u;u=t}t=q.dataPointIds[f];this._eventManager.objectMap[t]={id:t,objectType:\"dataPoint\",dataSeriesIndex:p,dataPointIndex:f,x1:l,y1:m,x2:v,y2:u};ea(c,a.axisX.reversed?v:l,m,a.axisX.reversed?l:v,u,b,0,b,s,s,!1,!1,q.fillOpacity);b=S(t);w&&ea(this._eventManager.ghostCtx,a.axisX.reversed?v:l,m,a.axisX.reversed?l:v,u,b,0,null,!1,!1,!1,!1);if(g[f].indexLabel||q.indexLabel||g[f].indexLabelFormatter||\r\nq.indexLabelFormatter)this._indexLabels.push({chartType:\"rangeColumn\",dataPoint:g[f],dataSeries:q,indexKeyword:0,point:{x:l+(v-l)/2,y:g[f].y[1]>=g[f].y[0]?u:m},direction:g[f].y[1]>=g[f].y[0]?-1:1,bounds:{x1:l,y1:Math.min(m,u),x2:v,y2:Math.max(m,u)},color:b}),this._indexLabels.push({chartType:\"rangeColumn\",dataPoint:g[f],dataSeries:q,indexKeyword:1,point:{x:l+(v-l)/2,y:g[f].y[1]>=g[f].y[0]?m:u},direction:g[f].y[1]>=g[f].y[0]?1:-1,bounds:{x1:l,y1:Math.min(m,u),x2:v,y2:Math.max(m,u)},color:b})}}w&&(d.drawImage(this._preRenderCanvas,\r\n0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,\r\nanimationBase:0}}};l.prototype.renderError=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:d,b=a.axisY._position?\"left\"===a.axisY._position||\"right\"===a.axisY._position?!1:!0:!1;if(!(0>=a.dataSeriesIndexes.length)){var e=null,f=!1,m=this.plotArea,u=0,h,k,n,p,q,g,s,l=a.axisX.dataInfo.minDiff;isFinite(l)||(l=0.3*Math.abs(a.axisX.range));c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(m.x1,m.y1,m.width,m.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),\r\nthis._eventManager.ghostCtx.rect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.clip());for(var v=0,t=0;t u&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,u));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&u u&&(t=u);if(0 =N.length?0:N.length>=t?t:N.length:\"string\"===typeof N.length?parseInt(N.length)*t/100>t?t:parseInt(N.length)*t/100>t:t;N.thickness=\"number\"===typeof N.thickness?0>N.thickness?0:Math.round(N.thickness):2;var Q={color:F[u].stemColor?F[u].stemColor:F[u].color?z.stemColor?z.stemColor:F[u].color:z.stemColor?z.stemColor:e,thickness:F[u].stemThickness?F[u].stemThickness:z.stemThickness,dashType:F[u].stemDashType?\r\nF[u].stemDashType:z.stemDashType};Q.thickness=\"number\"===typeof Q.thickness?0>Q.thickness?0:Math.round(Q.thickness):2;F[u].getTime?s=F[u].x.getTime():s=F[u].x;if(!(s a.axisX.dataInfo.viewPortMax)&&!r(F[u].y)&&F[u].y.length&&\"number\"===typeof F[u].y[0]&&\"number\"===typeof F[u].y[1]){var fa=a.axisX.convertValueToPixel(s);b?k=fa:h=fa;fa=a.axisY.convertValueToPixel(F[u].y[0]);b?n=fa:q=fa;fa=a.axisY.convertValueToPixel(F[u].y[1]);b?p=fa:g=fa;b?(q=a.axisX.reversed?k+(B?v:\r\n1)*t/2-(B?D-1:0)*t<<0:k-(B?v:1)*t/2+(B?D-1:0)*t<<0,g=a.axisX.reversed?q-t<<0:q+t<<0):(n=a.axisX.reversed?h+(B?v:1)*t/2-(B?D-1:0)*t<<0:h-(B?v:1)*t/2+(B?D-1:0)*t<<0,p=a.axisX.reversed?n-t<<0:n+t<<0);!b&&q>g&&(fa=q,q=g,g=fa);b&&n>p&&(fa=n,n=p,p=fa);fa=z.dataPointIds[u];this._eventManager.objectMap[fa]={id:fa,objectType:\"dataPoint\",dataSeriesIndex:y,dataPointIndex:u,x1:Math.min(n,p),y1:Math.min(q,g),x2:Math.max(p,n),y2:Math.max(g,q),isXYSwapped:b,stemProperties:Q,whiskerProperties:N};x(c,Math.min(n,p),\r\nMath.min(q,g),Math.max(p,n),Math.max(g,q),e,N,Q,b);w&&x(this._eventManager.ghostCtx,n,q,p,g,e,N,Q,b);if(F[u].indexLabel||z.indexLabel||F[u].indexLabelFormatter||z.indexLabelFormatter)this._indexLabels.push({chartType:\"error\",dataPoint:F[u],dataSeries:z,indexKeyword:0,point:{x:b?F[u].y[1]>=F[u].y[0]?n:p:n+(p-n)/2,y:b?q+(g-q)/2:F[u].y[1]>=F[u].y[0]?g:q},direction:F[u].y[1]>=F[u].y[0]?-1:1,bounds:{x1:b?Math.min(n,p):n,y1:b?q:Math.min(q,g),x2:b?Math.max(n,p):p,y2:b?g:Math.max(q,g)},color:e,axisSwapped:b}),\r\nthis._indexLabels.push({chartType:\"error\",dataPoint:F[u],dataSeries:z,indexKeyword:1,point:{x:b?F[u].y[1]>=F[u].y[0]?p:n:n+(p-n)/2,y:b?q+(g-q)/2:F[u].y[1]>=F[u].y[0]?q:g},direction:F[u].y[1]>=F[u].y[0]?1:-1,bounds:{x1:b?Math.min(n,p):n,y1:b?q:Math.min(q,g),x2:b?Math.max(n,p):p,y2:b?g:Math.max(q,g)},color:e,axisSwapped:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),\r\na.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,animationBase:0}}};l.prototype.renderRangeBar=function(a){var d=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:\r\nd;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,f=0,m,u,h,k,f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;m=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0;var n=a.axisX.dataInfo.minDiff;isFinite(n)||(n=0.3*Math.abs(a.axisX.range));n=this.options.dataPointWidth?this.dataPointWidth:0.9*\r\n(e.height*(a.axisX.logarithmic?Math.log(n)/Math.log(a.axisX.range):Math.abs(n)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>m&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,m));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&m m&&(n=m);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),\r\nthis._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var p=0;p a.axisX.dataInfo.viewPortMax)&&!r(s[f].y)&&s[f].y.length&&\"number\"===typeof s[f].y[0]&&\"number\"===typeof s[f].y[1]){m=a.axisY.convertValueToPixel(s[f].y[0]);\r\nu=a.axisY.convertValueToPixel(s[f].y[1]);h=a.axisX.convertValueToPixel(k);h=a.axisX.reversed?h+a.plotType.totalDataSeries*n/2-(a.previousDataSeriesCount+p)*n<<0:h-a.plotType.totalDataSeries*n/2+(a.previousDataSeriesCount+p)*n<<0;var v=a.axisX.reversed?h-n<<0:h+n<<0;m>u&&(b=m,m=u,u=b);b=s[f].color?s[f].color:g._colorSet[f%g._colorSet.length];ea(c,m,a.axisX.reversed?v:h,u,a.axisX.reversed?h:v,b,0,null,l,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[f];this._eventManager.objectMap[b]={id:b,objectType:\"dataPoint\",\r\ndataSeriesIndex:q,dataPointIndex:f,x1:m,y1:h,x2:u,y2:v};b=S(b);w&&ea(this._eventManager.ghostCtx,m,a.axisX.reversed?v:h,u,a.axisX.reversed?h:v,b,0,null,!1,!1,!1,!1);if(s[f].indexLabel||g.indexLabel||s[f].indexLabelFormatter||g.indexLabelFormatter)this._indexLabels.push({chartType:\"rangeBar\",dataPoint:s[f],dataSeries:g,indexKeyword:0,point:{x:s[f].y[1]>=s[f].y[0]?m:u,y:h+(v-h)/2},direction:s[f].y[1]>=s[f].y[0]?-1:1,bounds:{x1:Math.min(m,u),y1:h,x2:Math.max(m,u),y2:v},color:b}),this._indexLabels.push({chartType:\"rangeBar\",\r\ndataPoint:s[f],dataSeries:g,indexKeyword:1,point:{x:s[f].y[1]>=s[f].y[0]?u:m,y:h+(v-h)/2},direction:s[f].y[1]>=s[f].y[0]?1:-1,bounds:{x1:Math.min(m,u),y1:h,x2:Math.max(m,u),y2:v},color:b})}}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,\r\n0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,animationBase:0}}};l.prototype.renderRangeArea=function(a){function d(){if(A){for(var a=null,c=h.length-1;0<=c;c--)a=h[c],b.lineTo(a.x,a.y2),e.lineTo(a.x,a.y2);b.closePath();b.globalAlpha=n.fillOpacity;b.fill();b.globalAlpha=1;e.fill();if(0 =a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,f=[],m=this.plotArea;b.save();w&&e.save();b.beginPath();b.rect(m.x1,m.y1,m.width,m.height);b.clip();w&&(e.beginPath(),\r\ne.rect(m.x1,m.y1,m.width,m.height),e.clip());for(var u=0;u a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!N)))if(null!==p[g].y&&p[g].y.length&&\"number\"===typeof p[g].y[0]&&\"number\"===typeof p[g].y[1]){s=a.axisX.convertValueToPixel(t);l=a.axisY.convertValueToPixel(p[g].y[0]);r=a.axisY.convertValueToPixel(p[g].y[1]);q||N?(n.connectNullData&&!q?(b.setLineDash&&(n.options.nullDataLineDashType||\r\nB===n.lineDashType&&n.lineDashType!==n.nullDataLineDashType)&&(h[h.length-1].newLineDashArray=E,B=n.nullDataLineDashType,b.setLineDash(D)),b.lineTo(s,l),w&&e.lineTo(s,l),h.push({x:s,y1:l,y2:r})):(b.beginPath(),b.moveTo(s,l),A={x:s,y:l},h=[],h.push({x:s,y1:l,y2:r}),w&&(e.beginPath(),e.moveTo(s,l))),N=q=!1):(b.lineTo(s,l),h.push({x:s,y1:l,y2:r}),w&&e.lineTo(s,l),0==g%250&&d());t=n.dataPointIds[g];this._eventManager.objectMap[t]={id:t,objectType:\"dataPoint\",dataSeriesIndex:k,dataPointIndex:g,x1:s,y1:l,\r\ny2:r};g p[g].y[1]===a.axisY.reversed?\r\n-1:1,color:y}),this._indexLabels.push({chartType:\"rangeArea\",dataPoint:p[g],dataSeries:n,indexKeyword:1,point:{x:s,y:r},direction:p[g].y[0]>p[g].y[1]===a.axisY.reversed?1:-1,color:y})}else N||q||d(),N=!0;d();$.drawMarkers(f)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&\r\nthis._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:O.xClipAnimation,easingFunction:O.easing.linear,animationBase:0}}};l.prototype.renderRangeSplineArea=function(a){function d(a,c){var d=v(r,2);if(0 =a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,f=[],m=this.plotArea;b.save();w&&e.save();b.beginPath();b.rect(m.x1,m.y1,m.width,m.height);b.clip();w&&(e.beginPath(),e.rect(m.x1,m.y1,m.width,m.height),e.clip());for(var h=0;h a.axisX.dataInfo.viewPortMax&&(!k.connectNullData||!g)))if(null!==n[p].y&&n[p].y.length&&\"number\"===typeof n[p].y[0]&&\"number\"===typeof n[p].y[1]){q=a.axisX.convertValueToPixel(q);g=a.axisY.convertValueToPixel(n[p].y[0]);s=a.axisY.convertValueToPixel(n[p].y[1]);var D=k.dataPointIds[p];this._eventManager.objectMap[D]={id:D,objectType:\"dataPoint\",dataSeriesIndex:l,dataPointIndex:p,x1:q,y1:g,y2:s};r[r.length]={x:q,y:g};x[x.length]={x:q,y:s};p =a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx,\r\ne=null,f=this.plotArea,m=0,h,l,k,n,p=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),m=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0;var q=a.axisX.dataInfo.minDiff;isFinite(q)||(q=0.3*Math.abs(a.axisX.range));q=this.options.dataPointWidth?\r\nthis.dataPointWidth:0.6*(f.width*(a.axisX.logarithmic?Math.log(q)/Math.log(a.axisX.range):Math.abs(q)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&m>l&&(m=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&l l&&(q=l);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);\r\nc.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(var g=0;g k&&(e=l,l=k,k=e);a.axisY.reversed&&(e=l,l=k,k=e);e=r.dataPointIds[m];this._eventManager.objectMap[e]={id:e,objectType:\"dataPoint\",dataSeriesIndex:s,dataPointIndex:m,x1:h,y1:l,x2:E,y2:k};var N=v[m].color?v[m].color:0 v[m].y===a.axisY.reversed?1:-1,bounds:{x1:h,y1:Math.min(l,k),x2:E,y2:Math.max(l,k)},color:e})}}w&&(d.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation=\"source-atop\",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,\r\nf.height),this._eventManager.ghostCtx.restore());c.restore();return{source:d,dest:this.plotArea.ctx,animationCallback:O.fadeInAnimation,easingFunction:O.easing.easeInQuad,animationBase:0}}};var ia=function(a,d,c,b,e,f,m,h,l){if(!(0>c)){\"undefined\"===typeof h&&(h=1);if(!w){var k=Number((m%(2*Math.PI)).toFixed(8));Number((f%(2*Math.PI)).toFixed(8))===k&&(m-=1E-4)}a.save();a.globalAlpha=h;\"pie\"===e?(a.beginPath(),a.moveTo(d.x,d.y),a.arc(d.x,d.y,c,f,m,!1),a.fillStyle=b,a.strokeStyle=\"white\",a.lineWidth=\r\n2,a.closePath(),a.fill()):\"doughnut\"===e&&(a.beginPath(),a.arc(d.x,d.y,c,f,m,!1),0<=l&&a.arc(d.x,d.y,l*c,m,f,!0),a.closePath(),a.fillStyle=b,a.strokeStyle=\"white\",a.lineWidth=2,a.fill());a.globalAlpha=1;a.restore()}};l.prototype.renderPie=function(a){function d(){if(k&&n){for(var a=0,b=0,c=0,d=0,e=0;e Math.PI/2-t&&h.midAngle h.midAngle)c=e;a++}else if(h.midAngle>3*Math.PI/2-t&&h.midAngle<3*Math.PI/2+t){if(0===b||g[d].midAngle>h.midAngle)d=e;b++}h.hemisphere=f>Math.PI/2&&f<=3*Math.PI/2?\"left\":\"right\";h.indexLabelTextBlock=new ja(l.plotArea.ctx,{fontSize:h.indexLabelFontSize,fontFamily:h.indexLabelFontFamily,fontColor:h.indexLabelFontColor,fontStyle:h.indexLabelFontStyle,fontWeight:h.indexLabelFontWeight,\r\ntextAlign:h.indexLabelTextAlign,backgroundColor:h.indexLabelBackgroundColor,maxWidth:h.indexLabelMaxWidth,maxHeight:h.indexLabelWrap?5*h.indexLabelFontSize:1.5*h.indexLabelFontSize,text:h.indexLabelText,padding:0,textBaseline:\"top\"});h.indexLabelTextBlock.measureText()}m=f=0;p=!1;for(e=0;e Math.PI/2-t&&h.midAngle \r\n3*Math.PI/2-t&&h.midAngle<3*Math.PI/2+t)&&(m<=b/2&&!p?(h.hemisphere=\"left\",m++):(h.hemisphere=\"right\",p=!0))}}function c(a){var b=l.plotArea.ctx;b.clearRect(q.x1,q.y1,q.width,q.height);b.fillStyle=l.backgroundColor;b.fillRect(q.x1,q.y1,q.width,q.height);for(b=0;b c){var e=0.07*B*Math.cos(g[b].midAngle),f=0.07*B*Math.sin(g[b].midAngle),m=!1;if(n[b].exploded){if(1E-9 a.indexLabelTextBlock.y?e-d:c-f}function e(a){for(var c=null,d=1;d b(g[c],g[a])||(\"right\"===g[a].hemisphere?g[c].indexLabelTextBlock.y>=g[a].indexLabelTextBlock.y:g[c].indexLabelTextBlock.y<=\r\ng[a].indexLabelTextBlock.y)))break;else c=null;return c}function f(a,c,d){d=(d||0)+1;if(1E3 c&&p.indexLabelTextBlock.y h)return 0;var q=0,l=0,l=q=q=0;0>c?p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2>k&&p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2+c h&&(c=p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2+c-h);c=p.indexLabelTextBlock.y+c;k=0;k=\"right\"===p.hemisphere?y.x+Math.sqrt(Math.pow(w,2)-Math.pow(c-y.y,2)):y.x-Math.sqrt(Math.pow(w,2)-Math.pow(c-y.y,2));l=y.x+B*Math.cos(p.midAngle);q=y.y+B*Math.sin(p.midAngle);q=Math.sqrt(Math.pow(k-l,2)+Math.pow(c-q,2));l=Math.acos(B/w);q=Math.acos((w*w+B*B-q*q)/(2*B*w));c=q b(g[k],g[a])||(\"right\"===g[a].hemisphere?g[k].indexLabelTextBlock.y<=g[a].indexLabelTextBlock.y:g[k].indexLabelTextBlock.y>=g[a].indexLabelTextBlock.y)))break;else k=null;l=k;q=e(a);h=k=0;0>c?(h=\"right\"===p.hemisphere?l:q,m=c,null!==h&&(l=-c,c=p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2-(g[h].indexLabelTextBlock.y+g[h].indexLabelTextBlock.height/\r\n2),c-l +k.toFixed(A)&&(m=c>s?-(c-s):-(l-(h-k)))))):0s?c-s:l-(k-h)))));m&&(d=p.indexLabelTextBlock.y+m,c=0,c=\"right\"===p.hemisphere?y.x+Math.sqrt(Math.pow(w,2)-Math.pow(d-y.y,2)):y.x-Math.sqrt(Math.pow(w,2)-Math.pow(d-y.y,2)),p.midAngle>\r\nMath.PI/2-t&&p.midAngle k.indexLabelTextBlock.x?c=k.indexLabelTextBlock.x-15:\"right\"===p.hemisphere&&(\"left\"===a.hemisphere&&c 3*Math.PI/2-t&&p.midAngle<3*Math.PI/2+t&&(k=(a-1+g.length)%g.length,k=g[k],a=g[(a+1+g.length)%g.length],\"right\"===p.hemisphere&&\"left\"===k.hemisphere&&c a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x-15)),p.indexLabelTextBlock.y=d,p.indexLabelTextBlock.x=c,p.indexLabelAngle=Math.atan2(p.indexLabelTextBlock.y-y.y,p.indexLabelTextBlock.x-y.x))}return m}function m(){var a=l.plotArea.ctx;a.fillStyle=\"grey\";a.strokeStyle=\"grey\";a.font=\"16px Arial\";a.textBaseline=\"middle\";for(var c=a=0,d=0,m=!0,c=0;10>c&&(1>c||0 z){for(var x=r=0,F=0;F r?h.indexLabelText=\"\":h.indexLabelTextBlock.maxWidth=0.85*r,0.3*h.indexLabelTextBlock.maxWidth d&&(d=t)),t=t=0,0 d&&(d=t)));var M=function(a,b,c){for(var d=[],e=0;d.push(g[b]),b!==c;b=(b+1+n.length)%n.length);d.sort(function(a,b){return a.y-b.y});for(b=0;b z){q=u.indexLabelTextBlock.x;var l=u.indexLabelTextBlock.y-u.indexLabelTextBlock.height/2,s=u.indexLabelTextBlock.y+u.indexLabelTextBlock.height/2,r=h.indexLabelTextBlock.y-h.indexLabelTextBlock.height/2,t=h.indexLabelTextBlock.x+h.indexLabelTextBlock.width,C=h.indexLabelTextBlock.y+h.indexLabelTextBlock.height/2;q=u.indexLabelTextBlock.x+u.indexLabelTextBlock.width t+p||l>C+p||s a&&(a=k),m!==a&&(c=m,d+=-z),0===k%Math.max(n.length/\r\n10,3)&&(f=!0)):f=!0;f&&(0 =a.dataSeriesIndexes.length)){var k=this.data[a.dataSeriesIndexes[0]],n=k.dataPoints,p=10,q=this.plotArea,g=k.dataPointEOs,s=2,w,v=1.3,t=20/180*Math.PI,A=6,y={x:(q.x2+q.x1)/2,y:(q.y2+q.y1)/2},z=0;a=!1;for(var x=0;x b&&(e=b,f=!0);var m=n[c].color?n[c].color:k._colorSet[c%k._colorSet.length];e>d&&ia(l.plotArea.ctx,g[c].center,g[c].radius,m,k.type,d,e,k.fillOpacity,g[c].percentInnerRadius);if(f)break}h();l.dispatchEvent(\"dataAnimationIterationEnd\",{chart:l});1<=a&&l.dispatchEvent(\"dataAnimationEnd\",{chart:l})},function(){l.disableToolTip=!1;l._animator.animate(0,\r\nl.animatedRender?500:0,function(a){c(a);h();l.dispatchEvent(\"dataAnimationIterationEnd\",{chart:l})});l.dispatchEvent(\"dataAnimationEnd\",{chart:l})})}}};var pa=function(a,d,c,b){\"undefined\"===typeof c&&(c=1);0>=Math.round(d.y4-d.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(d.x1),Math.round(d.y1)),a.lineTo(Math.round(d.x2),Math.round(d.y2)),a.lineTo(Math.round(d.x3),Math.round(d.y3)),a.lineTo(Math.round(d.x4),Math.round(d.y4)),\"undefined\"!==d.x5&&(a.lineTo(Math.round(d.x5),Math.round(d.y5)),\r\na.lineTo(Math.round(d.x6),Math.round(d.y6))),a.closePath(),a.fillStyle=b?b:d.color,a.fill(),a.globalAplha=1,a.restore())};l.prototype.renderFunnel=function(a){function d(){for(var a=0,b=[],c=0;c p?(p=c,m=(b+p)*(e-h)/2,a-=m,n=e-h,h+=e-h,n+=0==p?0:a/p,h+=a/p,m=!0):(n=(Math.abs(V)*b-Math.sqrt(p))/2,p=b-2*n/Math.abs(V),h+=n,h>e&&(h-=n,p=c,m=(b+p)*(e-h)/2,a-=m,n=e-h,h+=e-h,n+=a/p,h+=a/p,m=!0),b=\r\np)),d.push(n);return d}function b(){if(t&&A){for(var a,b,c,d,e,f,k,m,h,n,p,q,l,u,s,C=[],y=[],v={percent:null,total:null},z=null,B=0;B C[B]&&(C[B]=B!==ca?t.reversed?R[B].x3-R[B].x4:R[B].x2-R[B].x1:R[B].x2-R[B].x1,C[B]/=2));l=b.indexLabelMaxWidth?b.indexLabelMaxWidth:t.options.indexLabelMaxWidth?t.indexLabelMaxWidth:C[B];if(l>C[B]||0>l)l=C[B];y[B]=\"inside\"===t.indexLabelPlacement?R[B].height:!1;v=x.getPercentAndTotal(t,b);if(t.indexLabelFormatter||b.indexLabelFormatter)z={chart:x.options,dataSeries:t,dataPoint:b,total:v.total,percent:v.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(z):b.indexLabel?\r\nx.replaceKeywordsWithValue(b.indexLabel,b,t,B):t.indexLabelFormatter?t.indexLabelFormatter(z):t.indexLabel?x.replaceKeywordsWithValue(t.indexLabel,b,t,B):b.label?b.label:\"\";0>=n&&(n=0);1E3>l&&1E3-l k?k:t.indexLabelMaxWidth:k,m=H.length-1;0<=m;m--){g=A[H[m].id];c=H[m];d=c.textBlock;b=(a=q(m)b.y&&(e=!0);c=g.indexLabelMaxWidth||k;if(c>k||0>c)c=k;f.push(c)}if(e)for(m=H.length-1;0<=m;m--)a=R[m],H[m].textBlock.maxWidth=\r\nf[f.length-(m+1)],H[m].textBlock.measureText(),H[m].textBlock.x=K-k,c=H[m].textBlock.height na+z&&(H[m].textBlock.y=na+z-H[m].height),H[m].textBlock.y sa+z&&(H[m].textBlock.y=sa+z-H[m].height))}function f(){var a,b,c,d;if(\"inside\"!==t.indexLabelPlacement)for(var e=0;e ya?g(c).x2+1:(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:\"undefined\"!==typeof a.x5?c na+z&&(H[e].textBlock.y=na+z-H[e].height),H[e].textBlock.y sa+z&&(H[e].textBlock.y=sa+z-H[e].height)));else for(e=0;e =c?(b=e!=ca?(a.x4+a.x3)/2-d/2:(a.x5+a.x4)/2-d/2,c=e!=ca?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,H[e].textBlock.x=b,\r\nH[e].textBlock.y=c):H[e].isDirty=!0)}function m(){function a(b,c){var d;if(0>b||b>=H.length)return 0;var e,f=H[b].textBlock;if(0>c){c*=-1;e=p(b);d=h(e,b);if(d>=c)return f.y-=c,c;if(0==b)return 0 =c)return f.y+=c,c;if(b==R.length-1)return 0 e)&&(k=q(l),!(k>=H.length-1)&&H[l].textBlock.y+H[l].height+da>H[k].textBlock.y&&(H[l].textBlock.y=H[l].textBlock.y+H[l].height-e>e-H[l].textBlock.y?e+1:e-H[l].height-1))}for(k=R.length-1;0 e&&(e=0,H[e].isDirty))break;if(H[k].textBlock.y =f){f=0;m+=H[f].height;break}e=p(f);\r\nif(0>e){f=0;m+=H[f].height;break}}if(f!=k){g=H[f].textBlock.y;a-=g;a=m-a;g=c(a,d,f);break}}}return g}function c(a,b,d){var e=[],f=0,g=0;for(a=Math.abs(a);d<=b;d++)e.push(R[d]);e.sort(function(a,b){return a.height-b.height});for(d=0;d +k.y.toFixed(6))&&(d=g.y+d+da-k.y,e=a(s,-d),e a?t.reversed?sa-z:na-z:H[a].textBlock.y+H[a].height+da)}function l(a,b,c){var d,e,g,m=[],h=z,p=[];-1!==b&&(0<=X.indexOf(b)?(e=X.indexOf(b),X.splice(e,1)):(X.push(b),X=X.sort(function(a,b){return a-b})));if(0===X.length)m=\r\nia;else{e=z*(1!=X.length||0!=X[0]&&X[0]!=R.length-1?2:1)/k();for(var q=0;q p&&(p*=-1),c.y1+=b-p[d],c.y2+=b-p[d],c.y3+=b-p[d],c.y4+=b-p[d],c.y5&&(c.y5+=b-p[d],c.y6+=b-p[d]),p[d]=b}};a._animator.animate(0,c,function(c){var d=a.plotArea.ctx||a.ctx;ha=!0;d.clearRect(y.x1,y.y1,y.x2-y.x1,y.y2-y.y1);d.fillStyle=a.backgroundColor;d.fillRect(y.x1,y.y1,y.width,y.height);u.changeSection(c,b);var e={};e.dataSeries=t;e.dataPoint=t.reversed?t.dataPoints[A.length-1-b]:t.dataPoints[b];e.index=t.reversed?A.length-1-b:b;a.toolTip.highlightObjects([e]);\r\nfor(e=0;e a){b=R[c];break}return b?(a=b.y6?a>b.y6?b.x3+(b.x4-b.x3)/(b.y4-b.y3)*(a-b.y3):b.x2+(b.x3-b.x2)/(b.y3-b.y2)*(a-b.y2):b.x2+(b.x3-b.x2)/(b.y3-b.y2)*(a-b.y2),\r\n{x1:a,x2:a}):-1}function s(a){for(var b=0;b =a.dataSeriesIndexes.length)){for(var t=this.data[a.dataSeriesIndexes[0]],A=t.dataPoints,y=this.plotArea,z=0.025*y.width,D=0.01*y.width,B=0,E=y.height-2*z,J=Math.min(y.width-2*D,2.8*y.height),N=!1,Q=0;Q E?ba=E:0>=ba&&(ba=0),G>a?G=a-0.5:0>=G&&(G=0)):\"pyramid\"===t.type&&(G=ba=0,t.reversed=t.reversed?!1:!0);var D=Q+a/2,W=Q,U=Q+a,na=t.reversed?P:L,M=D-G/2,$=D+G/2,ya=t.reversed?\r\nL+ba:P-ba,sa=t.reversed?L:P;a=[];var D=[],R=[],J=[],Z=L,ca,V=(ya-na)/(M-W),ea=-V,Q=\"area\"===(t.valueRepresents?t.valueRepresents:\"height\")?c():d();if(-1!==Q){if(t.reversed)for(J.push(Z),G=Q.length-1;0 a&&(B=a));for(G=0;G ');b.document.body&&b.document.body.style&&(b.document.body.style.margin=\"0px 0px 0px 0px\",b.document.body.style.padding=\"0px 0px 0px 0px\");b.document.close();setTimeout(function(){b.focus();b.print();setTimeout(function(){c._canvasJSContainer.removeChild(d)},1E3)},500)};l.prototype.getPercentAndTotal=function(a,d){var c=null,b=null,e=c=null;if(0<=a.type.indexOf(\"stacked\"))b=0,c=d.x.getTime?d.x.getTime():d.x,c in a.plotUnit.yTotals&&(b=a.plotUnit.yTotals[c],c=a.plotUnit.yAbsTotals[c],\r\ne=isNaN(d.y)?0:0===c?0:100*(d.y/c));else if(\"pie\"===a.type||\"doughnut\"===a.type||\"funnel\"===a.type||\"pyramid\"===a.type){for(c=b=0;c Please right click on the image and save it to your device\"),\r\nd.document.close()}}};l.prototype.print=function(){var a=this.exportChart({toDataURL:!0}),d=document.createElement(\"iframe\");d.setAttribute(\"class\",\"canvasjs-chart-print-frame\");T(d,{position:\"absolute\",width:\"100%\",border:\"0px\",margin:\"0px 0px 0px 0px\",padding:\"0px 0px 0px 0px\"});d.style.height=this.height+\"px\";this._canvasJSContainer.appendChild(d);var c=this,b=d.contentWindow||d.contentDocument.document||d.contentDocument;b.document.open();b.document.write('\\n=m||\"undefined\"===typeof m||0>=v||\"undefined\"===typeof v)){if(\"horizontal\"===this.orientation){q.textBlock=new ja(this.ctx,{x:0,y:0,maxWidth:v,maxHeight:this.itemWrap?m:this.lineHeight,\r\nangle:0,text:q.text,horizontalAlign:\"left\",fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:\"middle\"});q.textBlock.measureText();null!==this.itemWidth&&(q.textBlock.width=this.itemWidth-(w+h+(\"line\"===q.chartType||\"spline\"===q.chartType||\"stepLine\"===q.chartType?2*0.1*this.lineHeight:0)));if(!p||p.width+Math.round(q.textBlock.width+w+h+(0===p.width?0:this.horizontalSpacing)+(\"line\"===q.chartType||\"spline\"===\r\nq.chartType||\"stepLine\"===q.chartType?2*0.1*this.lineHeight:0))>f)p={items:[],width:0},k.push(p),this.height+=g,g=0;g=Math.max(g,q.textBlock.height)}else q.textBlock=new ja(this.ctx,{x:0,y:0,maxWidth:y,maxHeight:!0===this.itemWrap?m:1.5*this.fontSize,angle:0,text:q.text,horizontalAlign:\"left\",fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:\"middle\"}),q.textBlock.measureText(),null!==this.itemWidth&&(q.textBlock.width=\r\nthis.itemWidth-(w+h+(\"line\"===q.chartType||\"spline\"===q.chartType||\"stepLine\"===q.chartType?2*0.1*this.lineHeight:0))),this.height >\r\n0,0),this.dataPoints.length):0):(n=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,n=0 >0,0),this.dataPoints.length):0));for(;;){f=0 a?b.x/a:a/b.x:Math.abs(b.x-a);p n-e&&n+e>=this.dataPoints.length)break;\r\n-1===m?(e++,m=1):m=-1}return d||(c.dataPoint.x.getTime?c.dataPoint.x.getTime():c.dataPoint.x)!==(a.getTime?a.getTime():a)?d&&null!==c.dataPoint?c:null:c};L.prototype.getDataPointAtXY=function(a,d,c){if(!this.dataPoints||0===this.dataPoints.length||a this.chart.plotArea.x2||d this.chart.plotArea.y2)return null;c=c||!1;var b=[],e=0,f=0,m=1,h=!1,l=Infinity,k=0,n=0,p=0;if(\"none\"!==this.chart.plotInfo.axisPlacement)if(p=(this.chart.axisX[0]?this.chart.axisX[0]:\r\nthis.chart.axisX2[0]).getXValueAt({x:a,y:d}),this.axisX.logarithmic)var q=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1 >0,0),this.dataPoints.length):0;else q=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0>0,0),this.dataPoints.length):0;for(;;){f=0