/*! For license information please see main.26d6a124.js.LICENSE.txt */ (()=>{var e={8047:(e,t)=>{var n;!function(){function i(e,t){e.prototype=function(e){function t(){}return t.prototype=e,new t}(t.prototype),e.prototype.constructor=e,e.base=t.prototype}function r(e,t,n){return"millisecond"===n?e.setMilliseconds(e.getMilliseconds()+1*t):"second"===n?e.setSeconds(e.getSeconds()+1*t):"minute"===n?e.setMinutes(e.getMinutes()+1*t):"hour"===n?e.setHours(e.getHours()+1*t):"day"===n?e.setDate(e.getDate()+1*t):"week"===n?e.setDate(e.getDate()+7*t):"month"===n?e.setMonth(e.getMonth()+1*t):"year"===n&&e.setFullYear(e.getFullYear()+1*t),e}function a(e,t){var n=!1;for(0>e&&(n=!0,e*=-1),e=""+e,t=t||1;e.length>16).toString(16),n=((65280&e)>>8).toString(16);return e=((255&e)>>0).toString(16),"#"+(t=2>t.length?"0"+t:t)+(n=2>n.length?"0"+n:n)+(e=2>e.length?"0"+e:e)}function u(e,t){var n,i=this.length>>>0;for(0>(n=0>(n=Number(t)||0)?Math.ceil(n):Math.floor(n))&&(n+=i);nn;n++)if(e[n]!==e[n+4]|e[n]!==e[n+8]|e[n]!==e[n+12]){t=!1;break}return t?e[0]<<16|e[1]<<8|e[2]:0}function y(e,t,n){return e in t?t[e]:n[e]}function x(e,t,n,i){W&&ue?(i=!d(i)&&i?e.getContext("2d",{willReadFrequently:!0}):e.getContext("2d"),he=i.webkitBackingStorePixelRatio||i.mozBackingStorePixelRatio||i.msBackingStorePixelRatio||i.oBackingStorePixelRatio||i.backingStorePixelRatio||1,pe=de/he,e.width=t*pe,e.height=n*pe,de!==he&&(e.style.width=t+"px",e.style.height=n+"px",i.scale(pe,pe))):(e.width=t,e.height=n)}function b(e){if(!ge){var t=!1,n=!1;"undefined"===typeof H.Chart.creditHref?(e.creditHref=me("iuuqr;..b`ow`rkr/bnl."),e.creditText=me("B`ow`rKR/bnl")):(t=e.updateOption("creditText"),n=e.updateOption("creditHref")),e.creditHref&&e.creditText&&(e._creditLink||(e._creditLink=document.createElement("a"),e._creditLink.setAttribute("class","canvasjs-chart-credit"),e._creditLink.setAttribute("title","JavaScript Charts"),S(e._creditLink,{outline:"none",margin:"0px",position:"absolute",right:"2px",top:e.height-14+"px",color:"dimgrey",textDecoration:"none",fontSize:"11px",fontFamily:"Calibri, Lucida Grande, Lucida Sans Unicode, Arial, sans-serif"}),e._creditLink.setAttribute("tabIndex",-1),e._creditLink.setAttribute("target","_blank")),(0===e.renderCount||t||n)&&(e._creditLink.setAttribute("href",e.creditHref),e._creditLink.innerHTML=e.creditText),e._creditLink&&e.creditHref&&e.creditText?(e._creditLink.parentElement||e._canvasJSContainer.appendChild(e._creditLink),e._creditLink.style.top=e.height-14+"px"):e._creditLink.parentElement&&e._canvasJSContainer.removeChild(e._creditLink))}}function w(e,t,n){U&&(this.canvasCount|=0,window.console.log(++this.canvasCount));var i=document.createElement("canvas");return i.setAttribute("class","canvasjs-chart-canvas"),x(i,e,t,n),W||"undefined"===typeof G_vmlCanvasManager||G_vmlCanvasManager.initElement(i),i}function S(e,t){for(var n in t)e.style[n]=t[n]}function _(e){return e.currentStyle?e.currentStyle:window&&window.getComputedStyle?window.getComputedStyle(e,null):e.style}function C(e,t,n){t.getAttribute("state")||(t.style.backgroundColor=e.toolbar.itemBackgroundColor,t.style.color=e.toolbar.fontColor,t.style.border="none",S(t,{WebkitUserSelect:"none",MozUserSelect:"none",msUserSelect:"none",userSelect:"none"})),t.getAttribute("state")!==n&&(t.setAttribute("state",n),t.setAttribute("type","button"),S(t,{padding:"5px 12px",cursor:"pointer",float:"left",width:"40px",height:"25px",outline:"0px",verticalAlign:"baseline",lineHeight:"0"}),t.innerHTML=""+e._cultureInfo[n+"Text"]+"",S(t.childNodes[0],{height:"95%",pointerEvents:"none"})),t.setAttribute("title",e._cultureInfo[n+"Text"])}function T(){for(var e=null,t=0;tb?"a":"p";case"tt":return 12>b?"am":"pm";case"T":return 12>b?"A":"P";case"TT":return 12>b?"AM":"PM";case"K":return m?"UTC":(String(l).match(o)||[""]).pop().replace(s,"");case"z":return(0(e=Number(e));i&&(e*=-1);var r=n?n.decimalSeparator:".",o=n?n.digitGroupSeparator:",",s="";t=String(t);s=1;var l=n="",c=-1,u=[],d=[],h=0,p=0,f=0,m=!1,g=0;l=t.match(/"[^"]*"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\u2030|./g);t=null;for(var v=0;l&&vc)c=v;else{if("%"===t)s*=100;else{if("\u2030"===t){s*=1e3;continue}if(","===t[0]&&"."===t[t.length-1]){s/=Math.pow(1e3,t.length-1),c=v+t.length-1;continue}"E"!==t[0]&&"e"!==t[0]||"0"!==t[t.length-1]||(m=!0)}0>c?(u.push(t),"#"===t||"0"===t?h++:","===t&&f++):(d.push(t),"#"!==t&&"0"!==t||p++)}for(m&&(t=Math.floor(e),l=-Math.floor(Math.log(e)/Math.LN10+1),g=0===e?0:0===t?-(h+l):function(e){var t=0>e;if(1>Math.abs(e)){var n=parseInt(e.toString().split("e-")[1]);n&&(e=(t?-1*e:e)*Math.pow(10,n-1),e="0."+Array(n).join("0")+e.toString().substring(2),e=t?"-"+e:e)}else 20<(n=parseInt(e.toString().split("+")[1]))&&(n-=20,e=(e/=Math.pow(10,n)).toString()+Array(n+1).join("0"));return String(e)}(t).length-h,s/=Math.pow(10,g)),0>c&&(c=v),t=(s=(e*s).toFixed(p)).split("."),s=(t[0]+"").split(""),e=(t[1]+"").split(""),s&&"0"===s[0]&&s.shift(),m=l=v=p=c=0;0g?t.replace("+","").replace("-",""):t.replace("-","")).replace(/[0]+/,(function(e){return a(g,e.length)}));for(o="",u=!1;0g?t.replace("+","").replace("-",""):t.replace("-","")).replace(/[0]+/,(function(e){return a(g,e.length)}));return n+=(u?r:"")+o,i?"-"+n:n},ce=function(e){var t=0,n=0;return(e=e||window.event).offsetX||0===e.offsetX?(t=e.offsetX,n=e.offsetY):e.layerX||0==e.layerX?(t=e.layerX,n=e.layerY):(t=e.pageX-e.target.offsetLeft,n=e.pageY-e.target.offsetTop),{x:t,y:n}},ue=!0,de=window.devicePixelRatio||1,he=1,pe=ue?de/he:1,fe=function(e,t,n,i,r,a,o,s,l,c,u,d,h){"undefined"===typeof h&&(h=1),o=o||0,s=s||"black";var p=15t))break;r=a-1}}return n>t&&1a&&(i-=(s=t.pop()).height,r=l)}this._wrappedText={lines:t,width:r,height:i},this.width=r+(this.leftPadding+this.rightPadding),this.height=i+(this.topPadding+this.bottomPadding),this.ctx.font=n},P.prototype._getFontString=function(){var e;e=this.fontStyle?this.fontStyle+" ":"",e+=this.fontWeight?this.fontWeight+" ":"",e+=this.fontSize?this.fontSize+"px ":"";var t=this.fontFamily?this.fontFamily+"":"";return!W&&t&&("'"!==(t=t.split(",")[0])[0]&&'"'!==t[0]&&(t="'"+t+"'")),e+t},i(D,A),i(I,A),I.prototype.setLayout=function(){if(this.text){var e,t=this.dockInsidePlotArea?this.chart.plotArea:this.chart,n=t.layoutManager.getFreeSpace(),i=n.x1,r=n.y1,a=0;r=0,i=this.chart._menuButton&&this.chart.exportEnabled&&"top"===this.verticalAlign?40:0;this.textAlign=d(this.options.textAlign)?this.horizontalAlign:this.textAlign,"center"===this.verticalAlign?"left"===this.horizontalAlign||"right"===this.horizontalAlign?(null===this.maxWidth&&(this.maxWidth=n.height-4),r=.5*n.width-this.margin-2):(null===this.maxWidth&&(this.maxWidth=n.width-4),r=.5*n.height-4):(null===this.maxWidth&&(this.maxWidth=n.width-4-i*("center"===this.horizontalAlign?2:1)),r=.5*n.height-this.margin-2,a=0),d(this.padding)||"number"!==typeof this.padding?d(this.padding)||"object"!==typeof this.padding||(e=this.padding.top?this.padding.top:this.padding.bottom?this.padding.bottom:0,e+=this.padding.bottom?this.padding.bottom:this.padding.top?this.padding.top:0):e=2*this.padding,this.wrap||(r=Math.min(r,1.5*this.fontSize+e));var o=new P(this.ctx,{fontSize:this.fontSize,fontFamily:this.fontFamily,fontColor:this.fontColor,fontStyle:this.fontStyle,fontWeight:this.fontWeight,textAlign:this.textAlign,verticalAlign:this.verticalAlign,borderColor:this.borderColor,borderThickness:this.borderThickness,backgroundColor:this.backgroundColor,maxWidth:this.maxWidth,maxHeight:r,cornerRadius:this.cornerRadius,text:this.text,padding:this.padding,textBaseline:"middle"}),s=o.measureText();"center"===this.verticalAlign?("left"===this.horizontalAlign?(i=n.x1+2+o._lineHeight/2,r=n.y2-2-(this.maxWidth/2-s.width/2),a=-90,e="left",this.width=s.height,this.height=s.width):"right"===this.horizontalAlign?(i=n.x2-2-o._lineHeight/2,r=n.y1+2+(this.maxWidth/2-s.width/2),a=90,e="right",this.width=s.height,this.height=s.width):(r=n.y1+2+(n.height/2-s.height/2)+o._lineHeight/2,i=n.x1+2+(n.width/2-s.width/2),e="center",this.width=s.width,this.height=s.height),n="center"):("bottom"===this.verticalAlign?(r=n.y2-2-s.height+o._lineHeight/2,e="bottom"):(r=n.y1+2+o._lineHeight/2,e="top"),i="left"===this.horizontalAlign?n.x1+2:"right"===this.horizontalAlign?n.x2-2-s.width-i:n.x1+n.width/2-s.width/2,n=this.horizontalAlign,this.width=s.width,this.height=s.height),o.x=i,o.y=r,o.angle=a,o.horizontalAlign=n,this._textBlock=o,t.layoutManager.registerSpace(e,{width:this.width+("left"===e||"right"===e?this.margin+2:0),height:this.height+("top"===e||"bottom"===e?this.margin+2:0)}),this.bounds={x1:i,y1:r-o._lineHeight/2,x2:i+this.width,y2:r+this.height-o._lineHeight/2},"center"===this.verticalAlign&&("left"===this.horizontalAlign&&(this.bounds={x1:i-o._lineHeight/2,y1:r-this.height,x2:i+this.width-o._lineHeight/2,y2:r}),"right"===this.horizontalAlign&&(this.bounds={x1:i-o._lineHeight/2,y1:r,x2:i+this.width-o._lineHeight/2,y2:r+this.height})),this.ctx.textBaseline="top"}},I.prototype.render=function(){this._textBlock&&this._textBlock.render(!0)},i(O,A),O.prototype.setLayout=I.prototype.setLayout,O.prototype.render=I.prototype.render,R.prototype.get=function(e,t){var n=null;return 0e[a].x&&0l?{x:e[s].x+l/3,y:e[s].y+n/3}:{x:e[s].x,y:e[s].y+(1===i.length?0:n/9)},a=0===(s=r)?0:s-1,o=s===e.length-1?s:s+1,n=Math.abs((e[o].x-e[a].x)/(0===e[s].x-e[a].x?.01:e[s].x-e[a].x))*(t-1)/2+1,l=(e[o].x-e[a].x)/n,n=(e[o].y-e[a].y)/n,i[i.length]=e[s].x>e[a].x&&0l?{x:e[s].x-l/3,y:e[s].y-n/3}:{x:e[s].x,y:e[s].y-n/9},i[i.length]=e[r]}return i}function a(e,t,n,i,r,a,o,s,l,c){var u=0;c?(o.color=a,s.color=a):c=1,u=l?Math.abs(r-n):Math.abs(i-t),u=0this.labelAngle?this.labelAngle-=180:270<=this.labelAngle&&360>=this.labelAngle&&(this.labelAngle-=360),this.options.scaleBreaks&&(this.scaleBreaks=new F(this.chart,this.options.scaleBreaks,++this.chart._eventManager.lastObjectId,this)),this.stripLines=[],this.options.stripLines&&0=this._appliedBreaks[e+1].startValue&&(this._appliedBreaks[e].endValue=Math.max(this._appliedBreaks[e].endValue,this._appliedBreaks[e+1].endValue),window.console&&window.console.log("CanvasJS Error: Breaks "+e+" and "+(e+1)+" are overlapping."),this._appliedBreaks.splice(e,2),e--)}}function B(e,t,n,i,r,a){B.base.constructor.call(this,"Break",t,n,i,a),this.id=r,this.chart=e,this.ctx=this.chart.ctx,this.scaleBreaks=a,this.optionsName=t,this.isOptionsInArray=!0,this.type=n.type?this.type:a.type,this.fillOpacity=d(n.fillOpacity)?a.fillOpacity:this.fillOpacity,this.lineThickness=d(n.lineThickness)?a.lineThickness:this.lineThickness,this.color=n.color?this.color:a.color,this.lineColor=n.lineColor?this.lineColor:a.lineColor,this.lineDashType=n.lineDashType?this.lineDashType:a.lineDashType,!d(this.startValue)&&this.startValue.getTime&&(this.startValue=this.startValue.getTime()),!d(this.endValue)&&this.endValue.getTime&&(this.endValue=this.endValue.getTime()),"number"===typeof this.startValue&&"number"===typeof this.endValue&&this.endValue=navigator.userAgent.search("MSIE")&&this._zoomButton.childNodes[0]&&S(this._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});else{var n=!1;M(this._zoomButton=document.createElement("button")),C(this,this._zoomButton,"pan"),this._toolBar.appendChild(this._zoomButton),this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,g(this._zoomButton,"touchstart",(function(e){n=!0}),this.allDOMEventHandlers),g(this._zoomButton,"click",(function(){e.zoomEnabled?(e.zoomEnabled=!1,e.panEnabled=!0,C(e,e._zoomButton,"zoom")):(e.zoomEnabled=!0,e.panEnabled=!1,C(e,e._zoomButton,"pan")),e.render()}),this.allDOMEventHandlers),g(this._zoomButton,"mousemove",(function(){n?n=!1:(S(e._zoomButton,{backgroundColor:e.toolbar.itemBackgroundColorOnHover,color:e.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&S(e._zoomButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))}),this.allDOMEventHandlers),g(this._zoomButton,"mouseout",(function(){n||(S(e._zoomButton,{backgroundColor:e.toolbar.itemBackgroundColor,color:e.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&S(e._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))}),this.allDOMEventHandlers)}this._resetButton?(S(this._resetButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:e.toolbar.itemBackgroundColor,color:e.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&this._resetButton.childNodes[0]&&S(this._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}),this._resetButton.title=this._cultureInfo.resetText):(n=!1,M(this._resetButton=document.createElement("button")),C(this,this._resetButton,"reset"),this._resetButton.style.borderRight=(this.exportEnabled?this.toolbar.buttonBorderThickness:0)+"px solid "+this.toolbar.buttonBorderColor,this._toolBar.appendChild(this._resetButton),g(this._resetButton,"touchstart",(function(e){n=!0}),this.allDOMEventHandlers),g(this._resetButton,"click",(function(){if(e.toolTip.hide(),e.toolTip&&e.toolTip.enabled&&e.toolTip.dispatchEvent("hidden",{chart:e,toolTip:e.toolTip},e.toolTip),e.zoomEnabled||e.panEnabled?(e.zoomEnabled=!0,e.panEnabled=!1,C(e,e._zoomButton,"pan"),e._defaultCursor="default",e.overlaidCanvas.style.cursor=e._defaultCursor):(e.zoomEnabled=!1,e.panEnabled=!1),e.sessionVariables.axisX)for(var t=0;t=navigator.userAgent.search("MSIE")&&S(e._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}),M(e._zoomButton,e._resetButton),e.stockChart&&(e.stockChart._rangeEventParameter={stockChart:e.stockChart,source:"chart",index:e.stockChart.charts.indexOf(e),minimum:null,maximum:null}),e._dispatchRangeEvent("rangeChanging","reset"),e.stockChart&&(e.stockChart._rangeEventParameter.type="rangeChanging",e.stockChart.dispatchEvent("rangeChanging",e.stockChart._rangeEventParameter,e.stockChart)),e.render(),e.syncCharts&&e.stockChart&&(e.stockChart.rangeUpdatedBy=!e.stockChart.navigator.slider||d(e.stockChart.navigator.slider.options.minimum)&&d(e.stockChart.navigator.slider.options.maximum)?!e.stockChart.rangeSelector.enabled||!e.stockChart.rangeSelector.inputFields.enabled||d(e.stockChart.rangeSelector.inputFields.options.startValue)&&d(e.stockChart.rangeSelector.inputFields.options.endValue)?null:"inputFields":"navigator",d(e.stockChart._selectedRangeButtonIndex)||(e.stockChart.rangeUpdatedBy="rangeButton"),e.syncCharts(null,null),e.stockChart.rangeSelector&&e.stockChart.rangeSelector.enabled&&e.stockChart.rangeSelector.render(),"rangeButton"===e.stockChart.rangeUpdatedBy&&e.stockChart.rangeSelector.selectedRangeButtonIndex=navigator.userAgent.search("MSIE")&&S(e._resetButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))}),this.allDOMEventHandlers),g(this._resetButton,"mouseout",(function(){n||(S(e._resetButton,{backgroundColor:e.toolbar.itemBackgroundColor,color:e.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&S(e._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))}),this.allDOMEventHandlers),this.overlaidCanvas.style.cursor=e._defaultCursor),this.zoomEnabled||this.panEnabled||(this._zoomButton?(e._zoomButton.getAttribute("state")===e._cultureInfo.zoomText?(this.panEnabled=!0,this.zoomEnabled=!1):(this.zoomEnabled=!0,this.panEnabled=!1),T(e._zoomButton,e._resetButton)):(this.zoomEnabled=!0,this.panEnabled=!1))}else this.panEnabled=this.zoomEnabled=!1;for(t in function(e){if(e._menuButton)e.exportEnabled?(S(e._menuButton,{backgroundColor:e.toolbar.itemBackgroundColor,color:e.toolbar.fontColor}),T(e._menuButton),C(e,e._menuButton,"menu"),0>=navigator.userAgent.search("MSIE")&&e._menuButton.childNodes[0]&&S(e._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"})):M(e._menuButton);else if(e.exportEnabled&&W){var t=!1;e._menuButton=document.createElement("button"),C(e,e._menuButton,"menu"),e._toolBar.appendChild(e._menuButton),g(e._menuButton,"touchstart",(function(e){t=!0}),e.allDOMEventHandlers),g(e._menuButton,"click",(function(){"none"!==e._dropdownMenu.style.display||e._dropDownCloseTime&&500>=(new Date).getTime()-e._dropDownCloseTime.getTime()||(e._dropdownMenu.style.display="block",e._menuButton.blur(),e._dropdownMenu.focus())}),e.allDOMEventHandlers,!0),g(e._menuButton,"mousemove",(function(){t||(S(e._menuButton,{backgroundColor:e.toolbar.itemBackgroundColorOnHover,color:e.toolbar.fontColorOnHover}),0>=navigator.userAgent.search("MSIE")&&S(e._menuButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))}),e.allDOMEventHandlers,!0),g(e._menuButton,"mouseout",(function(){t||(S(e._menuButton,{backgroundColor:e.toolbar.itemBackgroundColor,color:e.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&S(e._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))}),e.allDOMEventHandlers,!0)}if(e.exportEnabled&&e._dropdownMenu){var n=e.theme&&-1!==e.theme.indexOf("dark")?"black":"#888888";S(e._dropdownMenu,{backgroundColor:e.toolbar.itemBackgroundColor,color:e.toolbar.fontColor,boxShadow:"2px 2px 10px "+n}),n=e._dropdownMenu.childNodes;for(var i=[e._cultureInfo.printText,e._cultureInfo.saveJPGText,e._cultureInfo.savePNGText],r=0;ra.linkedDataSeriesIndex||a.linkedDataSeriesIndex>=this.options.data.length||"number"!==typeof a.linkedDataSeriesIndex||"error"===this.options.data[a.linkedDataSeriesIndex].type)&&(a.linkedDataSeriesIndex=null),null===a.name&&(a.name="DataSeries "+n),null===a.color?1e&&"undefined"!==typeof c.startTimePercent?e>=c.startTimePercent&&c.animationCallback(c.easingFunction(e-c.startTimePercent,0,1,1-c.startTimePercent),c):c.animationCallback(c.easingFunction(e,0,1,1),c);h.dispatchEvent("dataAnimationIterationEnd",{chart:h})}),(function(){n=[];for(var e=0;ee.dataSeriesIndexes.length))for(var t,n,i=e.axisY.dataInfo,r=e.axisX.dataInfo,a=!1,o=0;or.max&&(r.max=t),ni.max&&"number"===typeof n&&(i.max=n),0f&&(f=1/f),r.minDiff>f&&1!==f&&(r.minDiff=f)}else 0>(f=t-l.dataPoints[c-1].x)&&(f*=-1),r.minDiff>f&&0!==f&&(r.minDiff=f);null!==n&&null!==l.dataPoints[c-1].y&&(e.axisY.logarithmic?(1>(f=n/l.dataPoints[c-1].y)&&(f=1/f),i.minDiff>f&&1!==f&&(i.minDiff=f)):(0>(f=n-l.dataPoints[c-1].y)&&(f*=-1),i.minDiff>f&&0!==f&&(i.minDiff=f)))}if(tp&&!d)d=!0;else if(t>p&&d)continue;l.dataPoints[c].label&&(e.axisX.labels[t]=l.dataPoints[c].label),tr.viewPortMax&&(r.viewPortMax=t),null===n?r.viewPortMin===t&&si.viewPortMax&&"number"===typeof n&&(i.viewPortMax=n))}}l.axisX.valueType=l.xValueType=a?"dateTime":"number"}},t.prototype._processStackedPlotUnit=function(e){if(e.dataSeriesIndexes&&!(1>e.dataSeriesIndexes.length)){for(var t,n,i=e.axisY.dataInfo,r=e.axisX.dataInfo,a=!1,o=[],s=[],l=1/0,c=-1/0,u={},h=0;hr.max&&(r.max=t),0b&&(b=1/b),r.minDiff>b&&1!==b&&(r.minDiff=b)}else 0>(b=t-f.dataPoints[m-1].x)&&(b*=-1),r.minDiff>b&&0!==b&&(r.minDiff=b);null!==n&&null!==f.dataPoints[m-1].y&&(e.axisY.logarithmic?0(b=n/f.dataPoints[m-1].y)&&(b=1/b),i.minDiff>b&&1!==b&&(i.minDiff=b)):(0>(b=n-f.dataPoints[m-1].y)&&(b*=-1),i.minDiff>b&&0!==b&&(i.minDiff=b)))}if(tx&&!v)v=!0;else if(t>x&&v)continue;f.dataPoints[m].label&&(e.axisX.labels[t]=f.dataPoints[m].label),tr.viewPortMax&&(r.viewPortMax=t),null===f.dataPoints[m].y?r.viewPortMin===t&&pi.max&&(i.max=e),mr.viewPortMax||(ei.viewPortMax&&(i.viewPortMax=e)));for(m in s)s.hasOwnProperty(m)&&!isNaN(m)&&((e=s[m])i.max&&(i.max=Math.max(e,c)),mr.viewPortMax||(ei.viewPortMax&&(i.viewPortMax=Math.max(e,c))))}},t.prototype._processStacked100PlotUnit=function(e){if(e.dataSeriesIndexes&&!(1>e.dataSeriesIndexes.length)){for(var t,n,i=e.axisY.dataInfo,r=e.axisX.dataInfo,a=!1,o=!1,s=!1,l={},c=[],u=0;ur.max&&(r.max=t),0x&&(x=1/x),r.minDiff>x&&1!==x&&(r.minDiff=x)}else 0>(x=t-p.dataPoints[f-1].x)&&(x*=-1),r.minDiff>x&&0!==x&&(r.minDiff=x);d(n)||null===p.dataPoints[f-1].y||(e.axisY.logarithmic?0(x=n/p.dataPoints[f-1].y)&&(x=1/x),i.minDiff>x&&1!==x&&(i.minDiff=x)):(0>(x=n-p.dataPoints[f-1].y)&&(x*=-1),i.minDiff>x&&0!==x&&(i.minDiff=x)))}if(ty&&!g)g=!0;else if(t>y&&g)continue;p.dataPoints[f].label&&(e.axisX.labels[t]=p.dataPoints[f].label),tr.viewPortMax&&(r.viewPortMax=t),null===n?r.viewPortMin===t&&hn&&(s=!0),c[t]=c[t]?c[t]+Math.abs(n):Math.abs(n))}}p.axisX.valueType=p.xValueType=a?"dateTime":"number"}e.axisY.logarithmic?(i.max=d(i.viewPortMax)?99*Math.pow(e.axisY.logarithmBase,-.05):Math.max(i.viewPortMax,99*Math.pow(e.axisY.logarithmBase,-.05)),i.min=d(i.viewPortMin)?1:Math.min(i.viewPortMin,1)):o&&!s?(i.max=d(i.viewPortMax)?99:Math.max(i.viewPortMax,99),i.min=d(i.viewPortMin)?1:Math.min(i.viewPortMin,1)):o&&s?(i.max=d(i.viewPortMax)?99:Math.max(i.viewPortMax,99),i.min=d(i.viewPortMin)?-99:Math.min(i.viewPortMin,-99)):!o&&s&&(i.max=d(i.viewPortMax)?-1:Math.max(i.viewPortMax,-1),i.min=d(i.viewPortMin)?-99:Math.min(i.viewPortMin,-99)),i.viewPortMin=i.min,i.viewPortMax=i.max,e.dataPointYSums=c}},t.prototype._processMultiYPlotUnit=function(e){if(e.dataSeriesIndexes&&!(1>e.dataSeriesIndexes.length))for(var t,n,i,r,a=e.axisY.dataInfo,o=e.axisX.dataInfo,s=!1,l=0;lo.max&&(o.max=t),ia.max&&(a.max=r),0(u=t/h.dataPoints[p-1].x)&&(u=1/u),o.minDiff>u&&1!==u&&(o.minDiff=u)):(0>(u=t-h.dataPoints[p-1].x)&&(u*=-1),o.minDiff>u&&0!==u&&(o.minDiff=u)),n&&null!==n[0]&&h.dataPoints[p-1].y&&null!==h.dataPoints[p-1].y[0]&&(e.axisY.logarithmic?(1>(u=n[0]/h.dataPoints[p-1].y[0])&&(u=1/u),a.minDiff>u&&1!==u&&(a.minDiff=u)):(0>(u=n[0]-h.dataPoints[p-1].y[0])&&(u*=-1),a.minDiff>u&&0!==u&&(a.minDiff=u)))),!(tv&&!m)m=!0;else if(t>v&&m)continue;if(h.dataPoints[p].label&&(e.axisX.labels[t]=h.dataPoints[p].label),to.viewPortMax&&(o.viewPortMax=t),o.viewPortMin===t&&n)for(y=0;ya.viewPortMax&&(a.viewPortMax=r))}}h.axisX.valueType=h.xValueType=s?"dateTime":"number"}},t.prototype._processSpecificPlotUnit=function(e){if("waterfall"===e.type&&e.dataSeriesIndexes&&!(1>e.dataSeriesIndexes.length))for(var t,n,i=e.axisY.dataInfo,r=e.axisX.dataInfo,a=!1,o=0;or.max&&(r.max=t),s.dataPointEOs[l].cumulativeSumi.max&&(i.max=s.dataPointEOs[l].cumulativeSum),0(d=t/s.dataPoints[l-1].x)&&(d=1/d),r.minDiff>d&&1!==d&&(r.minDiff=d)):(0>(d=t-s.dataPoints[l-1].x)&&(d*=-1),r.minDiff>d&&0!==d&&(r.minDiff=d)),null!==n&&null!==s.dataPoints[l-1].y&&(e.axisY.logarithmic?(1>(n=s.dataPointEOs[l].cumulativeSum/s.dataPointEOs[l-1].cumulativeSum)&&(n=1/n),i.minDiff>n&&1!==n&&(i.minDiff=n)):(0>(n=s.dataPointEOs[l].cumulativeSum-s.dataPointEOs[l-1].cumulativeSum)&&(n*=-1),i.minDiff>n&&0!==n&&(i.minDiff=n)))),!(tp&&!u)u=!0;else if(t>p&&u)continue;s.dataPoints[l].label&&(e.axisX.labels[t]=s.dataPoints[l].label),tr.viewPortMax&&(r.viewPortMax=t),0i.viewPortMax&&(i.viewPortMax=s.dataPointEOs[l-1].cumulativeSum)),s.dataPointEOs[l].cumulativeSumi.viewPortMax&&(i.viewPortMax=s.dataPointEOs[l].cumulativeSum)}s.axisX.valueType=s.xValueType=a?"dateTime":"number"}},t.prototype.calculateAutoBreaks=function(){function e(e,t,n,i){return i?(1>=(n=Math.pow(Math.min(n*e/t,t/e),.2))&&(n=Math.pow(1>e?1/e:Math.min(t/e,e),.25)),{startValue:e*n,endValue:t/n}):(0>=(n=.2*Math.min(n-t+e,t-e))&&(n=.25*(0e.dataSeriesIndexes.length)){var t=e.axisX.scaleBreaks&&e.axisX.scaleBreaks.autoCalculate&&1<=e.axisX.scaleBreaks.maxNumberOfAutoBreaks,n=e.axisY.scaleBreaks&&e.axisY.scaleBreaks.autoCalculate&&1<=e.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(t||n)for(var i,a,o=e.axisY.dataInfo,s=(h=e.axisX.dataInfo).min,l=h.max,c=o.min,u=o.max,h=h._dataRanges,p=(o=o._dataRanges,0),f=0;fm.dataPoints.length))for(p=0;ph[a].max&&(h[a].max=i)),n){var g=(u+1-c)*Math.max(parseFloat(e.axisY.scaleBreaks.collapsibleThreshold)||10,10)/100;if((i="waterfall"===e.type?m.dataPointEOs[p].cumulativeSum:m.dataPoints[p].y)&&i.length)for(var v=0;vo[a].max&&(o[a].max=i[v]);else d(i)||(io[a].max&&(o[a].max=i))}}}}function n(e){if(e.dataSeriesIndexes&&!(1>e.dataSeriesIndexes.length)&&e.axisX.scaleBreaks&&e.axisX.scaleBreaks.autoCalculate&&1<=e.axisX.scaleBreaks.maxNumberOfAutoBreaks)for(var t,n=e.axisX.dataInfo,i=n.min,a=n.max,o=n._dataRanges,s=0,l=0;lc.dataPoints.length))for(s=0;so[t].max&&(o[t].max=n)}}for(var i,r=this,a=!1,o=0;oc[f].max&&(c[f].max=u)}delete this._axes[o].dataInfo.dataPointYPositiveSums}if(this._axes[o].dataInfo.dataPointYNegativeSums){for(s in c=h,p=this._axes[o].dataInfo.dataPointYNegativeSums)p.hasOwnProperty(s)&&!isNaN(s)&&(d(u=-1*p[s])||(uc[f].max&&(c[f].max=u)));delete this._axes[o].dataInfo.dataPointYNegativeSums}for(s=0;si&&a.push({diff:u,start:c,end:l});break}s++}if(this._axes[o].scaleBreaks.customBreaks)for(s=0;sthis.plotArea.x1&&this.sessionVariables.mouseXthis.plotArea.y1&&this.sessionVariables.mouseYthis.plotArea.x1&&this.sessionVariables.mouseXthis.plotArea.y1&&this.sessionVariables.mouseYthis.plotArea.x1&&this.sessionVariables.mouseXthis.plotArea.y1&&this.sessionVariables.mouseYthis.plotArea.x1&&this.sessionVariables.mouseXthis.plotArea.y1&&this.sessionVariables.mouseY=r.x1&&e<=r.x2&&t>=r.y1&&t<=r.y2&&(i=r.id)}return i},t.prototype.getAutoFontSize=oe,t.prototype.resetOverlayedCanvas=function(){this.overlaidCanvasCtx.clearRect(0,0,this.width,this.height)},t.prototype.clearCanvas=re,t.prototype.attachEvent=function(e){this._events.push(e)},t.prototype._touchEventHandler=function(e){if(e.changedTouches&&this.interactivityEnabled){var t=[],n=e.changedTouches,i=n?n[0]:e,r=null;switch(e.type){case"touchstart":case"MSPointerDown":t=["mousemove","mousedown"],this._lastTouchData=ce(i),this._lastTouchData.time=new Date;break;case"touchmove":case"MSPointerMove":t=["mousemove"];break;case"touchend":case"MSPointerUp":var a=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0;t="touchstart"===this._lastTouchEventType||"MSPointerDown"===this._lastTouchEventType||300>a?["mouseup","click"]:["mouseup"];break;default:return}if(!(n&&1a)&&(this._lastTouchData.scroll=!0,this.stockChart&&(this.stockChart._chartScroll=!0))}catch(s){}if(this._lastTouchEventType=e.type,this._lastTouchData.scroll&&this.zoomEnabled)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(n=0;n=s.x1&&a.x<=s.x2&&a.y>=s.y1&&a.y<=s.y2){i[o].call(i.context,a.x,a.y),"mousedown"===o&&!0===i.capture?(t.capturedEventParam=i,this.overlaidCanvas.setCapture?this.overlaidCanvas.setCapture():document.documentElement.addEventListener("mouseup",this._mouseEventHandler,!1)):"mouseup"===o&&(i.chart.overlaidCanvas.releaseCapture?i.chart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",this._mouseEventHandler,!1));break}i=null}e.target.style.cursor=i&&i.cursor?i.cursor:this._defaultCursor}if(r=this.plotArea,a.xr.x2||a.yr.y2){for(this.toolTip&&this.toolTip.enabled?(this.toolTip.hide(),this.toolTip.dispatchEvent("hidden",{chart:this,toolTip:this.toolTip},this.toolTip)):this.resetOverlayedCanvas(),r=0;rn.maximum&&(a=n.viewportMaximum/n.maximum,n.sessionVariables.newViewportMinimum=n.viewportMinimum/a,n.sessionVariables.newViewportMaximum=n.viewportMaximum/a,o=!0):n.viewportMinimumn.maximum&&(a=n.viewportMaximum-n.maximum,n.sessionVariables.newViewportMinimum=n.viewportMinimum-a,n.sessionVariables.newViewportMaximum=n.viewportMaximum-a,o=!0);else if((!r||2Math.abs(n)&&(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 s=0;s(p=d.convertPixelToValue({x:n,y:i})))var h=p,p=f,f=h;if(d.scaleBreaks)for(h=0;!a&&h=p;if(isFinite(d.dataInfo.minDiff))if(h=d.getApparentDifference(f,p,null,!0),a||!(this.panEnabled&&d.scaleBreaks&&d.scaleBreaks._appliedBreaks.length)&&(d.logarithmic&&hd.maximum){if(!r){s=!1;break}}else l.push(d),u.push({val1:f,val2:p}),s=!0}return{isValid:s,axesWithValidRange:l,axesRanges:u}},t.prototype.preparePlotArea=function(){var e=this.plotArea;if(!W&&(0n.lineCoordinates.x2?t.x2:n.lineCoordinates.x2,e.y2=t.y1>n.lineCoordinates.y2?t.y1:n.lineCoordinates.y2,e.width=e.x2-e.x1,e.height=e.y2-e.y1}this.axisY2&&0n.lineCoordinates.x2?t.x2:n.lineCoordinates.x2,e.y2=t.y2>n.lineCoordinates.y2?t.y2:n.lineCoordinates.y2,e.width=e.x2-e.x1,e.height=e.y2-e.y1)}else t=this.layoutManager.getFreeSpace(),e.x1=t.x1,e.x2=t.x2,e.y1=t.y1,e.y2=t.y2,e.width=t.width,e.height=t.height;W||(e.canvas.width=e.width,e.canvas.height=e.height,e.canvas.style.left=e.x1+"px",e.canvas.style.top=e.y1+"px",(0n.x2||p.point.yn.y2+1)continue}else if("rangearea"===f||"rangesplinearea"===f){if(p.dataPoint.xA.viewportMaximum||Math.max.apply(null,p.dataPoint.y)E.viewportMaximum)continue}else if(0<=f.indexOf("line")||0<=f.indexOf("area")||0<=f.indexOf("bubble")||0<=f.indexOf("scatter")){if(p.dataPoint.xA.viewportMaximum||p.dataPoint.yE.viewportMaximum)continue}else if(0<=f.indexOf("column")){if(p.dataPoint.xA.viewportMaximum||(0E.viewportMaximum)continue}else if("waterfall"===f||"error"===f&&!p.axisSwapped){if(p.dataPoint.xA.viewportMaximum||p.bounds.y1>n.y2||p.bounds.y2A.viewportMaximum||p.bounds.x1>n.x2||p.bounds.x2A.viewportMaximum||Math.max.apply(null,p.dataPoint.y)E.viewportMaximum)continue}else if(p.dataPoint.xA.viewportMaximum)continue;o=s=2,"horizontal"===C?(l=v.width,c=v.height):(c=v.width,l=v.height),"normal"===this.plotInfo.axisPlacement?(0<=f.indexOf("line")||0<=f.indexOf("area")?(_="auto",s=4):0<=f.indexOf("stacked")?"auto"===_&&(_="inside"):"bubble"!==f&&"scatter"!==f||(_="inside"),u=p.point.x-l/2+("horizontal"===C?0:v._lineHeight/2),"inside"!==_?(r=n.y1,a=n.y2,0p.point.y)||0<=f.indexOf("line")||0<=f.indexOf("area")||(h-=i)):(h=p.point.y+v._lineHeight/2+s+i)>a-c+v._lineHeight/2-s&&(!(D=(h="auto"===_?Math.min(p.point.y,a)+v._lineHeight/2-c-s-i:a+v._lineHeight/2-c-s-i)-("horizontal"===C?v._lineHeight/2:c)p.bounds.y2-p.bounds.y1&&(h-=c/2+s),0>h-v._lineHeight/2&&(h+=Math.abs(h-v._lineHeight/2)<=(p.bounds.y2-p.bounds.y1)/2+s?Math.abs(h-v._lineHeight/2):(p.bounds.y2-p.bounds.y1)/2+s))):(h=Math.min(p.point.y,i))>a-c-s&&("bubble"===f||"scatter"===f)&&(h=Math.min(p.point.y+s,n.y2-c-s)),h=Math.min(h,a))):(0<=f.indexOf("line")||0<=f.indexOf("area")||0<=f.indexOf("scatter")?(_="auto",o=4):0<=f.indexOf("stacked")?"auto"===_&&(_="inside"):"bubble"===f&&(_="inside"),h=p.point.y+v._lineHeight/2-c/2,"inside"!==_?(a=n.x1,r=n.x2,0>k?(u=p.point.x-l+("horizontal"===C?0:v._lineHeight/2)-o-i,("horizontal"===C?u:u-v._lineHeight/2)p.point.x)&&(u-=i))):(u=p.point.x+("horizontal"===C?0:v._lineHeight/2)+o+i,("horizontal"===C?u:u-v._lineHeight/2)>r-l-o-i&&((D=(u="auto"===_?Math.min(p.point.x,r)-("horizontal"===C?l:l-v._lineHeight/2)-o-i:r-l-o+("horizontal"===C?0:v._lineHeight/2))-("horizontal"===C?0:v._lineHeight/2)k?Math.max(p.bounds.x1,n.x1):Math.min(p.bounds.x2,n.x2)-l-o+("horizontal"===C?0:v._lineHeight/2):(Math.max(p.bounds.x1,n.x1)+Math.min(p.bounds.x2,n.x2))/2-l/2+("horizontal"===C?0:v._lineHeight/2),u=0>k?i:Math.min(p.point.x,i),u=Math.max(u,a+("horizontal"===C?0:v._lineHeight/2+s)))),"vertical"===C&&(h+=c-v._lineHeight/2,0<="ohlc candlestick boxandwhisker column rangecolumn stackedcolumn stackedcolumn100 error".split(" ").indexOf(f)&&(D=0p.point.y:h-("horizontal"===C?v._lineHeight/2:c)f.indexOf("bar")&&("error"!==f||!p.axisSwapped)&&p.point.x>n.x1&&p.point.xn.y1&&p.point.yk&&h-c>p.point.y?h-c:p.point.y:0k&&h-v._lineHeight/2>p.point.y?h-v._lineHeight/2:p.point.y):t.lineTo(u+l/2-("horizontal"===C?0:v._lineHeight/2),h+("vertical"===C?h-c=e.dataSeriesIndexes.length)){var i=this._eventManager.ghostCtx;n.save();var r=this.plotArea;n.beginPath(),n.rect(r.x1,r.y1,r.width,r.height),n.clip();for(var a,o=[],s=0;se.axisX.dataInfo.viewPortMax&&(!u.connectNullData||!S)))if("number"!==typeof d[w].y)0d[w].y===e.axisY.reversed?1:-1,color:g})}n.stroke(),W&&i.stroke()}}return J.drawMarkers(o),W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(r.x1,r.y1,r.width,r.height),i.beginPath()),n.restore(),n.beginPath(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderStepLine=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i=this._eventManager.ghostCtx;n.save();var r=this.plotArea;n.beginPath(),n.rect(r.x1,r.y1,r.width,r.height),n.clip();for(var a,o=[],s=0;se.axisX.dataInfo.viewPortMax&&(!u.connectNullData||!S)))if("number"!==typeof d[w].y)0d[w].y===e.axisY.reversed?1:-1,color:g})}n.stroke(),W&&i.stroke()}}return J.drawMarkers(o),W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(r.x1,r.y1,r.width,r.height),i.beginPath()),n.restore(),n.beginPath(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderSpline=function(e){function t(e){if(0<(e=n(e,2)).length){r.beginPath(),W&&a.beginPath(),r.moveTo(e[0].x,e[0].y),e[0].newStrokeStyle&&(r.strokeStyle=e[0].newStrokeStyle),e[0].newLineDashArray&&r.setLineDash(e[0].newLineDashArray),W&&a.moveTo(e[0].x,e[0].y);for(var t=0;t=e.dataSeriesIndexes.length)){var a=this._eventManager.ghostCtx;r.save();var o=this.plotArea;r.beginPath(),r.rect(o.x1,o.y1,o.width,o.height),r.clip();for(var s=[],l=0;le.axisX.dataInfo.viewPortMax&&(!d.connectNullData||!b)))if("number"!==typeof h[w].y)0h[w].y===e.axisY.reversed?1:-1,color:v}),b=!1}t(S)}return J.drawMarkers(s),W&&(i.drawImage(this._preRenderCanvas,0,0,this.width,this.height),r.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&r.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&r.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),r.clearRect(o.x1,o.y1,o.width,o.height),a.beginPath()),r.restore(),r.beginPath(),{source:i,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderColumn=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a,o=null,s=this.plotArea,l=0,u=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),d=(l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(.15*this.width,this.plotArea.width/e.plotType.totalDataSeries*.9)<<0),h=e.axisX.dataInfo.minDiff;for(isFinite(h)||(h=.3*Math.abs(e.axisX.range)),h=this.dataPointWidth=this.options.dataPointWidth?this.dataPointWidth:s.width*(e.axisX.logarithmic?Math.log(h)/Math.log(e.axisX.range):Math.abs(h)/Math.abs(e.axisX.range))/e.plotType.totalDataSeries*.9<<0,this.dataPointMaxWidth&&l>d&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,d)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&dd&&(h=d),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(s.x1,s.y1,s.width,s.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.clip()),d=0;de.axisX.dataInfo.viewPortMax)&&"number"===typeof m[l].y){i=e.axisX.convertValueToPixel(a),r=e.axisY.convertValueToPixel(m[l].y),i=e.axisX.reversed?i+e.plotType.totalDataSeries*h/2-(e.previousDataSeriesCount+d)*h<<0:i-e.plotType.totalDataSeries*h/2+(e.previousDataSeriesCount+d)*h<<0;var v,y=e.axisX.reversed?i-h<<0:i+h<<0;0<=m[l].y?v=u:(v=r,r=u),r>v&&(o=r,r=v,v=o),o=m[l].color?m[l].color:f._colorSet[l%f._colorSet.length],fe(n,e.axisX.reversed?y:i,r,e.axisX.reversed?i:y,v,o,0,null,g&&(e.axisY.reversed?0>m[l].y:0<=m[l].y),(e.axisY.reversed?0<=m[l].y:0>m[l].y)&&g,!1,!1,f.fillOpacity),o=f.dataPointIds[l],this._eventManager.objectMap[o]={id:o,objectType:"dataPoint",dataSeriesIndex:p,dataPointIndex:l,x1:i,y1:r,x2:y,y2:v},o=c(o),W&&fe(this._eventManager.ghostCtx,e.axisX.reversed?y:i,r,e.axisX.reversed?i:y,v,o,0,null,!1,!1,!1,!1),(m[l].indexLabel||f.indexLabel||m[l].indexLabelFormatter||f.indexLabelFormatter)&&this._indexLabels.push({chartType:"column",dataPoint:m[l],dataSeries:f,point:{x:i+(y-i)/2,y:0>m[l].y===e.axisY.reversed?r:v},direction:0>m[l].y===e.axisY.reversed?1:-1,bounds:{x1:i,y1:Math.min(r,v),x2:y,y2:Math.max(r,v)},color:o})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.yScaleAnimation,easingFunction:Z.easing.easeOutQuart,animationBase:ue.axisY.bounds.y2?e.axisY.bounds.y2:u}}},t.prototype.renderStackedColumn=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a=null,o=this.plotArea,s=[],l=[],u=[],d=[],h=0,p=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),f=(h=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.15*this.width<<0),m=e.axisX.dataInfo.minDiff;for(isFinite(m)||(m=.3*Math.abs(e.axisX.range)),m=this.options.dataPointWidth?this.dataPointWidth:o.width*(e.axisX.logarithmic?Math.log(m)/Math.log(e.axisX.range):Math.abs(m)/Math.abs(e.axisX.range))/e.plotType.plotUnits.length*.9<<0,this.dataPointMaxWidth&&h>f&&(h=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,f)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&ff&&(m=f),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(o.x1,o.y1,o.width,o.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.clip()),f=0;fe.axisX.dataInfo.viewPortMax)&&"number"===typeof y[h].y){var b,w=(i=(i=e.axisX.convertValueToPixel(a))-e.plotType.plotUnits.length*m/2+e.index*m<<0)+m<<0;if(e.axisY.logarithmic||e.axisY.scaleBreaks&&0=y[h].y)d[a]=y[h].y+(d[a]?d[a]:0),b=e.axisY.convertValueToPixel(d[a]),r="undefined"!==typeof l[a]?l[a]:p,l[a]=b;else if(r=e.axisY.convertValueToPixel(y[h].y),0<=y[h].y){var S="undefined"!==typeof s[a]?s[a]:0;r-=S,b=p-S,s[a]=S+(b-r)}else b=r+(S=l[a]?l[a]:0),r=p+S,l[a]=S+(b-r);a=y[h].color?y[h].color:v._colorSet[h%v._colorSet.length],fe(n,i,e.axisY.reversed?b:r,w,e.axisY.reversed?r:b,a,0,null,x&&(e.axisY.reversed?0>y[h].y:0<=y[h].y),(e.axisY.reversed?0<=y[h].y:0>y[h].y)&&x,!1,!1,v.fillOpacity),a=v.dataPointIds[h],this._eventManager.objectMap[a]={id:a,objectType:"dataPoint",dataSeriesIndex:g,dataPointIndex:h,x1:i,y1:r,x2:w,y2:b},a=c(a),W&&fe(this._eventManager.ghostCtx,i,r,w,b,a,0,null,!1,!1,!1,!1),(y[h].indexLabel||v.indexLabel||y[h].indexLabelFormatter||v.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn",dataPoint:y[h],dataSeries:v,point:{x:i+(w-i)/2,y:0<=y[h].y?r:b},direction:0>y[h].y===e.axisY.reversed?1:-1,bounds:{x1:i,y1:Math.min(r,b),x2:w,y2:Math.max(r,b)},color:a,cumulativeY:v.dataPointEOs[h].cumulativeY})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.yScaleAnimation,easingFunction:Z.easing.easeOutQuart,animationBase:pe.axisY.bounds.y2?e.axisY.bounds.y2:p}}},t.prototype.renderStackedColumn100=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a,o=null,s=this.plotArea,l=[],u=[],d=[],h=[],p=0,f=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0);p=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;a=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.15*this.width<<0;var m=e.axisX.dataInfo.minDiff;isFinite(m)||(m=.3*Math.abs(e.axisX.range)),m=this.options.dataPointWidth?this.dataPointWidth:s.width*(e.axisX.logarithmic?Math.log(m)/Math.log(e.axisX.range):Math.abs(m)/Math.abs(e.axisX.range))/e.plotType.plotUnits.length*.9<<0,this.dataPointMaxWidth&&p>a&&(p=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,a)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&aa&&(m=a),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(s.x1,s.y1,s.width,s.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.clip());for(var g=0;ge.axisX.dataInfo.viewPortMax)&&"number"===typeof x[p].y){i=e.axisX.convertValueToPixel(a),r=0!==e.dataPointYSums[a]?x[p].y/e.dataPointYSums[a]*100:0;var w,S=(i=i-e.plotType.plotUnits.length*m/2+e.index*m<<0)+m<<0;if(e.axisY.logarithmic||e.axisY.scaleBreaks&&0=d[a])continue;r=e.axisY.convertValueToPixel(d[a]),w=l[a]?l[a]:f,l[a]=r}else e.axisY.scaleBreaks&&0=x[p].y?(h[a]=r+("undefined"!==typeof h[a]?h[a]:0),w=e.axisY.convertValueToPixel(h[a]),r=u[a]?u[a]:f,u[a]=w):(r=e.axisY.convertValueToPixel(r),0<=x[p].y?(r-=o="undefined"!==typeof l[a]?l[a]:0,w=f-o,e.dataSeriesIndexes.length-1===g&&1>=Math.abs(s.y1-r)&&(r=s.y1),l[a]=o+(w-r)):(w=r+(o="undefined"!==typeof u[a]?u[a]:0),r=f+o,e.dataSeriesIndexes.length-1===g&&1>=Math.abs(s.y2-w)&&(w=s.y2),u[a]=o+(w-r)));o=x[p].color?x[p].color:y._colorSet[p%y._colorSet.length],fe(n,i,e.axisY.reversed?w:r,S,e.axisY.reversed?r:w,o,0,null,b&&(e.axisY.reversed?0>x[p].y:0<=x[p].y),(e.axisY.reversed?0<=x[p].y:0>x[p].y)&&b,!1,!1,y.fillOpacity),o=y.dataPointIds[p],this._eventManager.objectMap[o]={id:o,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:p,x1:i,y1:r,x2:S,y2:w},o=c(o),W&&fe(this._eventManager.ghostCtx,i,r,S,w,o,0,null,!1,!1,!1,!1),(x[p].indexLabel||y.indexLabel||x[p].indexLabelFormatter||y.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn100",dataPoint:x[p],dataSeries:y,point:{x:i+(S-i)/2,y:0<=x[p].y?r:w},direction:0>x[p].y===e.axisY.reversed?1:-1,bounds:{x1:i,y1:Math.min(r,w),x2:S,y2:Math.max(r,w)},color:o,yCumulative:y.dataPointEOs[p].cumulativeY/e.dataPointYSums[a]*100})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.yScaleAnimation,easingFunction:Z.easing.easeOutQuart,animationBase:fe.axisY.bounds.y2?e.axisY.bounds.y2:f}}},t.prototype.renderBar=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a,o=null,s=this.plotArea,l=0,u=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),d=(l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(.15*this.height,this.plotArea.height/e.plotType.totalDataSeries*.9)<<0),h=e.axisX.dataInfo.minDiff;for(isFinite(h)||(h=.3*Math.abs(e.axisX.range)),h=this.options.dataPointWidth?this.dataPointWidth:s.height*(e.axisX.logarithmic?Math.log(h)/Math.log(e.axisX.range):Math.abs(h)/Math.abs(e.axisX.range))/e.plotType.totalDataSeries*.9<<0,this.dataPointMaxWidth&&l>d&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,d)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&dd&&(h=d),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(s.x1,s.y1,s.width,s.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.clip()),d=0;de.axisX.dataInfo.viewPortMax)&&"number"===typeof m[l].y){r=e.axisX.convertValueToPixel(a),i=e.axisY.convertValueToPixel(m[l].y),r=e.axisX.reversed?r+e.plotType.totalDataSeries*h/2-(e.previousDataSeriesCount+d)*h<<0:r-e.plotType.totalDataSeries*h/2+(e.previousDataSeriesCount+d)*h<<0;var v,y=e.axisX.reversed?r-h<<0:r+h<<0;0<=m[l].y?v=u:(v=i,i=u),o=m[l].color?m[l].color:f._colorSet[l%f._colorSet.length],fe(n,e.axisY.reversed?i:v,e.axisX.reversed?y:r,e.axisY.reversed?v:i,e.axisX.reversed?r:y,o,0,null,g,!1,!1,!1,f.fillOpacity),o=f.dataPointIds[l],this._eventManager.objectMap[o]={id:o,objectType:"dataPoint",dataSeriesIndex:p,dataPointIndex:l,x1:v,y1:r,x2:i,y2:y},o=c(o),W&&fe(this._eventManager.ghostCtx,v,e.axisX.reversed?y:r,i,e.axisX.reversed?r:y,o,0,null,!1,!1,!1,!1),(m[l].indexLabel||f.indexLabel||m[l].indexLabelFormatter||f.indexLabelFormatter)&&this._indexLabels.push({chartType:"bar",dataPoint:m[l],dataSeries:f,point:{x:0<=m[l].y?i:v,y:r+(y-r)/2},direction:0>m[l].y===e.axisY.reversed?1:-1,bounds:{x1:Math.min(v,i),y1:r,x2:Math.max(v,i),y2:y},color:o})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.xScaleAnimation,easingFunction:Z.easing.easeOutQuart,animationBase:ue.axisY.bounds.x2?e.axisY.bounds.x2:u}}},t.prototype.renderStackedBar=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a=null,o=this.plotArea,s=[],l=[],u=[],d=[],h=0,p=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),f=(h=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.15*this.height<<0),m=e.axisX.dataInfo.minDiff;for(isFinite(m)||(m=.3*Math.abs(e.axisX.range)),m=this.options.dataPointWidth?this.dataPointWidth:o.height*(e.axisX.logarithmic?Math.log(m)/Math.log(e.axisX.range):Math.abs(m)/Math.abs(e.axisX.range))/e.plotType.plotUnits.length*.9<<0,this.dataPointMaxWidth&&h>f&&(h=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,f)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&ff&&(m=f),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(o.x1,o.y1,o.width,o.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.clip()),f=0;fe.axisX.dataInfo.viewPortMax)&&"number"===typeof y[h].y){var b,w=(r=(r=e.axisX.convertValueToPixel(a))-e.plotType.plotUnits.length*m/2+e.index*m<<0)+m<<0;if(e.axisY.logarithmic||e.axisY.scaleBreaks&&0=y[h].y)d[a]=y[h].y+(d[a]?d[a]:0),i=l[a]?l[a]:p,l[a]=b=e.axisY.convertValueToPixel(d[a]);else if(i=e.axisY.convertValueToPixel(y[h].y),0<=y[h].y){var S=s[a]?s[a]:0;b=p+S,i+=S,s[a]=S+(i-b)}else b=i-(S=l[a]?l[a]:0),i=p-S,l[a]=S+(i-b);a=y[h].color?y[h].color:v._colorSet[h%v._colorSet.length],fe(n,e.axisY.reversed?i:b,r,e.axisY.reversed?b:i,w,a,0,null,x,!1,!1,!1,v.fillOpacity),a=v.dataPointIds[h],this._eventManager.objectMap[a]={id:a,objectType:"dataPoint",dataSeriesIndex:g,dataPointIndex:h,x1:b,y1:r,x2:i,y2:w},a=c(a),W&&fe(this._eventManager.ghostCtx,b,r,i,w,a,0,null,!1,!1,!1,!1),(y[h].indexLabel||v.indexLabel||y[h].indexLabelFormatter||v.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar",dataPoint:y[h],dataSeries:v,point:{x:0<=y[h].y?i:b,y:r+(w-r)/2},direction:0>y[h].y===e.axisY.reversed?1:-1,bounds:{x1:Math.min(b,i),y1:r,x2:Math.max(b,i),y2:w},color:a})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.xScaleAnimation,easingFunction:Z.easing.easeOutQuart,animationBase:pe.axisY.bounds.x2?e.axisY.bounds.x2:p}}},t.prototype.renderStackedBar100=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a=null,o=this.plotArea,s=[],l=[],u=[],d=[],h=0,p=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),f=(h=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.15*this.height<<0),m=e.axisX.dataInfo.minDiff;for(isFinite(m)||(m=.3*Math.abs(e.axisX.range)),m=this.options.dataPointWidth?this.dataPointWidth:o.height*(e.axisX.logarithmic?Math.log(m)/Math.log(e.axisX.range):Math.abs(m)/Math.abs(e.axisX.range))/e.plotType.plotUnits.length*.9<<0,this.dataPointMaxWidth&&h>f&&(h=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,f)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&ff&&(m=f),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(o.x1,o.y1,o.width,o.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.clip()),f=0;fe.axisX.dataInfo.viewPortMax)&&"number"===typeof y[h].y){var b;r=e.axisX.convertValueToPixel(a),b=0!==e.dataPointYSums[a]?y[h].y/e.dataPointYSums[a]*100:0;var w=(r=r-e.plotType.plotUnits.length*m/2+e.index*m<<0)+m<<0;if(e.axisY.logarithmic||e.axisY.scaleBreaks&&0=u[a])continue;b=s[a]?s[a]:p,s[a]=i=e.axisY.convertValueToPixel(u[a])}else if(e.axisY.scaleBreaks&&0=y[h].y)d[a]=b+(d[a]?d[a]:0),i=l[a]?l[a]:p,l[a]=b=e.axisY.convertValueToPixel(d[a]);else if(i=e.axisY.convertValueToPixel(b),0<=y[h].y){var S=s[a]?s[a]:0;b=p+S,i+=S,e.dataSeriesIndexes.length-1===f&&1>=Math.abs(o.x2-i)&&(i=o.x2),s[a]=S+(i-b)}else b=i-(S=l[a]?l[a]:0),i=p-S,e.dataSeriesIndexes.length-1===f&&1>=Math.abs(o.x1-b)&&(b=o.x1),l[a]=S+(i-b);a=y[h].color?y[h].color:v._colorSet[h%v._colorSet.length],fe(n,e.axisY.reversed?i:b,r,e.axisY.reversed?b:i,w,a,0,null,x,!1,!1,!1,v.fillOpacity),a=v.dataPointIds[h],this._eventManager.objectMap[a]={id:a,objectType:"dataPoint",dataSeriesIndex:g,dataPointIndex:h,x1:b,y1:r,x2:i,y2:w},a=c(a),W&&fe(this._eventManager.ghostCtx,b,r,i,w,a,0,null,!1,!1,!1,!1),(y[h].indexLabel||v.indexLabel||y[h].indexLabelFormatter||v.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar100",dataPoint:y[h],dataSeries:v,point:{x:0<=y[h].y?i:b,y:r+(w-r)/2},direction:0>y[h].y===e.axisY.reversed?1:-1,bounds:{x1:Math.min(b,i),y1:r,x2:Math.max(b,i),y2:w},color:a})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.xScaleAnimation,easingFunction:Z.easing.easeOutQuart,animationBase:pe.axisY.bounds.x2?e.axisY.bounds.x2:p}}},t.prototype.renderArea=function(e){var t,n;function i(){_&&(0=e.axisY.viewportMinimum&&0<=e.axisY.viewportMaximum?b=S:0>e.axisY.viewportMaximum?b=l.y1:0=e.dataSeriesIndexes.length)){var o,s=this._eventManager.ghostCtx,l=e.axisY.lineCoordinates,u=[],d=this.plotArea;a.save(),W&&s.save(),a.beginPath(),a.rect(d.x1,d.y1,d.width,d.height),a.clip(),W&&(s.beginPath(),s.rect(d.x1,d.y1,d.width,d.height),s.clip());for(var h=0;he.axisX.dataInfo.viewPortMax&&(!f.connectNullData||!E)))if("number"!==typeof g[w].y)f.connectNullData||E||t||i(),E=!0;else{v=e.axisX.convertValueToPixel(x),y=e.axisY.convertValueToPixel(g[w].y),t||E?(!t&&f.connectNullData?(a.setLineDash&&(f.options.nullDataLineDashType||n===f.lineDashType&&f.lineDashType!==f.nullDataLineDashType)&&(t=v,n=y,v=o.x,y=o.y,i(),a.moveTo(o.x,o.y),v=t,y=n,_=o,n=f.nullDataLineDashType,a.setLineDash(k)),a.lineTo(v,y),W&&s.lineTo(v,y)):(a.beginPath(),a.moveTo(v,y),W&&(s.beginPath(),s.moveTo(v,y)),_={x:v,y:y}),E=t=!1):(a.lineTo(v,y),W&&s.lineTo(v,y),0==w%250&&i()),o={x:v,y:y},wg[w].y===e.axisY.reversed?1:-1,color:C})}i(),J.drawMarkers(u)}}return W&&(r.drawImage(this._preRenderCanvas,0,0,this.width,this.height),a.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&a.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&a.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),a.clearRect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.restore()),a.restore(),{source:r,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderSplineArea=function(e){function t(){var t=n(w,2);if(0=e.axisY.viewportMinimum&&0<=e.axisY.viewportMaximum?v=x:0>e.axisY.viewportMaximum?v=o.y1:0=e.dataSeriesIndexes.length)){var a=this._eventManager.ghostCtx,o=e.axisY.lineCoordinates,s=[],l=this.plotArea;r.save(),W&&a.save(),r.beginPath(),r.rect(l.x1,l.y1,l.width,l.height),r.clip(),W&&(a.beginPath(),a.rect(l.x1,l.y1,l.width,l.height),a.clip());for(var u=0;ue.axisX.dataInfo.viewPortMax&&(!h.connectNullData||!g)))if("number"!==typeof p[y].y)0p[y].y===e.axisY.reversed?1:-1,color:S}),g=!1}t(),J.drawMarkers(s)}}return W&&(i.drawImage(this._preRenderCanvas,0,0,this.width,this.height),r.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&r.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&r.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),r.clearRect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.restore()),r.restore(),{source:i,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderStepArea=function(e){var t,n;function i(){_&&(0=e.axisY.viewportMinimum&&0<=e.axisY.viewportMaximum?b=S:0>e.axisY.viewportMaximum?b=l.y1:0=e.dataSeriesIndexes.length)){var o,s=this._eventManager.ghostCtx,l=e.axisY.lineCoordinates,u=[],d=this.plotArea;a.save(),W&&s.save(),a.beginPath(),a.rect(d.x1,d.y1,d.width,d.height),a.clip(),W&&(s.beginPath(),s.rect(d.x1,d.y1,d.width,d.height),s.clip());for(var h=0;he.axisX.dataInfo.viewPortMax&&(!f.connectNullData||!n))){var P=y;"number"!==typeof g[w].y?(f.connectNullData||n||t||i(),n=!0):(v=e.axisX.convertValueToPixel(x),y=e.axisY.convertValueToPixel(g[w].y),t||n?(!t&&f.connectNullData?(a.setLineDash&&(f.options.nullDataLineDashType||k===f.lineDashType&&f.lineDashType!==f.nullDataLineDashType)&&(t=v,n=y,v=o.x,y=o.y,i(),a.moveTo(o.x,o.y),v=t,y=n,_=o,k=f.nullDataLineDashType,a.setLineDash(A)),a.lineTo(v,P),a.lineTo(v,y),W&&(s.lineTo(v,P),s.lineTo(v,y))):(a.beginPath(),a.moveTo(v,y),W&&(s.beginPath(),s.moveTo(v,y)),_={x:v,y:y}),n=t=!1):(a.lineTo(v,P),W&&s.lineTo(v,P),a.lineTo(v,y),W&&s.lineTo(v,y),0==w%250&&i()),o={x:v,y:y},wg[w].y===e.axisY.reversed?1:-1,color:C}))}i(),J.drawMarkers(u)}}return W&&(r.drawImage(this._preRenderCanvas,0,0,this.width,this.height),a.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&a.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&a.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),a.clearRect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.restore()),a.restore(),{source:r,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderStackedArea=function(e){function t(){if(!(1>v.length)){for(0=e.dataSeriesIndexes.length)){var r,a,o,s,u,d=null,h=null,p=[],f=this.plotArea,g=[],v=[],y=[],x=[],b=0,w=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),S=this._eventManager.ghostCtx;W&&S.beginPath(),i.save(),W&&S.save(),i.beginPath(),i.rect(f.x1,f.y1,f.width,f.height),i.clip(),W&&(S.beginPath(),S.rect(f.x1,f.y1,f.width,f.height),S.clip());d=[];for(var _=0;_e.axisX.dataInfo.viewPortMax&&(!T.connectNullData||!D)))if("number"!==typeof I.y)T.connectNullData||D||s||t(),D=!0;else{r=e.axisX.convertValueToPixel(h);var O=g[h]?g[h]:0;if(e.axisY.logarithmic||e.axisY.scaleBreaks&&0=x[h]&&e.axisY.logarithmic)continue;a=e.axisY.convertValueToPixel(x[h])}else a=e.axisY.convertValueToPixel(I.y),a-=O;if(v.push({x:r,y:w-O}),g[h]=w-a,s||D?(!s&&T.connectNullData?(i.setLineDash&&(T.options.nullDataLineDashType||u===T.lineDashType&&T.lineDashType!==T.nullDataLineDashType)&&(s=v.pop(),u=v[v.length-1],t(),i.moveTo(o.x,o.y),v.push(u),v.push(s),u=T.nullDataLineDashType,i.setLineDash(E)),i.lineTo(r,a),W&&S.lineTo(r,a)):(i.beginPath(),i.moveTo(r,a),W&&(S.beginPath(),S.moveTo(r,a))),D=s=!1):(i.lineTo(r,a),W&&S.lineTo(r,a),0==b%250&&(t(),i.moveTo(r,a),W&&S.moveTo(r,a),v.push({x:r,y:w-O}))),o={x:r,y:a},bI.y===e.axisY.reversed?1:-1,color:d})}}t(),i.moveTo(r,a),W&&S.moveTo(r,a)}delete T.dataPointIndexes}return J.drawMarkers(p),W&&(n.drawImage(this._preRenderCanvas,0,0,this.width,this.height),i.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&i.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&i.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),i.clearRect(f.x1,f.y1,f.width,f.height),S.restore()),i.restore(),{source:n,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderStackedArea100=function(e){function t(){for(0=e.dataSeriesIndexes.length)){var r,a,o,s,u,d=null,h=null,p=this.plotArea,f=[],g=[],v=[],y=[],x=[],b=0,w=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0),S=this._eventManager.ghostCtx;i.save(),W&&S.save(),i.beginPath(),i.rect(p.x1,p.y1,p.width,p.height),i.clip(),W&&(S.beginPath(),S.rect(p.x1,p.y1,p.width,p.height),S.clip());d=[];for(var _=0;_e.axisX.dataInfo.viewPortMax&&(!T.connectNullData||!D)))if("number"!==typeof I.y)T.connectNullData||D||s||t(),D=!0;else{var O;O=0!==e.dataPointYSums[h]?I.y/e.dataPointYSums[h]*100:0,r=e.axisX.convertValueToPixel(h);var R=g[h]?g[h]:0;if(e.axisY.logarithmic||e.axisY.scaleBreaks&&0=x[h]&&e.axisY.logarithmic)continue;a=e.axisY.convertValueToPixel(x[h])}else a=e.axisY.convertValueToPixel(O),a-=R;if(v.push({x:r,y:w-R}),g[h]=w-a,s||D?(!s&&T.connectNullData?(i.setLineDash&&(T.options.nullDataLineDashType||u===T.lineDashType&&T.lineDashType!==T.nullDataLineDashType)&&(s=v.pop(),u=v[v.length-1],t(),i.moveTo(o.x,o.y),v.push(u),v.push(s),u=T.nullDataLineDashType,i.setLineDash(E)),i.lineTo(r,a),W&&S.lineTo(r,a)):(i.beginPath(),i.moveTo(r,a),W&&(S.beginPath(),S.moveTo(r,a))),D=s=!1):(i.lineTo(r,a),W&&S.lineTo(r,a),0==b%250&&(t(),i.moveTo(r,a),W&&S.moveTo(r,a),v.push({x:r,y:w-R}))),o={x:r,y:a},bI.y===e.axisY.reversed?1:-1,color:d})}}t(),i.moveTo(r,a),W&&S.moveTo(r,a)}delete T.dataPointIndexes}return J.drawMarkers(f),W&&(n.drawImage(this._preRenderCanvas,0,0,this.width,this.height),i.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&i.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&i.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),i.clearRect(p.x1,p.y1,p.width,p.height),S.restore()),i.restore(),{source:n,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderBubble=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a=this.plotArea,o=0;n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(a.x1,a.y1,a.width,a.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(a.x1,a.y1,a.width,a.height),this._eventManager.ghostCtx.clip());for(var s=-1/0,l=1/0,u=0;ue.axisX.dataInfo.viewPortMax||"undefined"===typeof p[o].z||((f=p[o].z)>s&&(s=f),fe.axisX.dataInfo.viewPortMax)&&"number"===typeof p[o].y){i=e.axisX.convertValueToPixel(i),r=e.axisY.convertValueToPixel(p[o].y);f=p[o].z;var v=2*Math.max(Math.sqrt((s===l?g/2:m+(g-m)/(s-l)*(f-l))/Math.PI)<<0,1);(f=h.getMarkerProperties(o,n)).size=v,n.globalAlpha=h.fillOpacity,J.drawMarker(i,r,n,f.type,f.size,f.color,f.borderColor,f.borderThickness),n.globalAlpha=1;var y=h.dataPointIds[o];this._eventManager.objectMap[y]={id:y,objectType:"dataPoint",dataSeriesIndex:d,dataPointIndex:o,x1:i,y1:r,size:v},v=c(y),W&&J.drawMarker(i,r,this._eventManager.ghostCtx,f.type,f.size,v,v,f.borderThickness),(p[o].indexLabel||h.indexLabel||p[o].indexLabelFormatter||h.indexLabelFormatter)&&this._indexLabels.push({chartType:"bubble",dataPoint:p[o],dataSeries:h,point:{x:i,y:r},direction:1,bounds:{x1:i-f.size/2,y1:r-f.size/2,x2:i+f.size/2,y2:r+f.size/2},color:null})}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(a.x1,a.y1,a.width,a.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}},t.prototype.renderScatter=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a=this.plotArea,o=0;n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(a.x1,a.y1,a.width,a.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(a.x1,a.y1,a.width,a.height),this._eventManager.ghostCtx.clip());for(var s=0;se.axisX.dataInfo.viewPortMax)&&"number"===typeof d[o].y){i=e.axisX.convertValueToPixel(i),r=e.axisY.convertValueToPixel(d[o].y);var f=u.getMarkerProperties(o,i,r,n);n.globalAlpha=u.fillOpacity,J.drawMarker(f.x,f.y,f.ctx,f.type,f.size,f.color,f.borderColor,f.borderThickness),n.globalAlpha=1,Math.sqrt((h-i)*(h-i)+(p-r)*(p-r))Math.min(this.plotArea.width,this.plotArea.height)||(h=u.dataPointIds[o],this._eventManager.objectMap[h]={id:h,objectType:"dataPoint",dataSeriesIndex:l,dataPointIndex:o,x1:i,y1:r},h=c(h),W&&J.drawMarker(f.x,f.y,this._eventManager.ghostCtx,f.type,f.size,h,h,f.borderThickness),(d[o].indexLabel||u.indexLabel||d[o].indexLabelFormatter||u.indexLabelFormatter)&&this._indexLabels.push({chartType:"scatter",dataPoint:d[o],dataSeries:u,point:{x:i,y:r},direction:1,bounds:{x1:i-f.size/2,y1:r-f.size/2,x2:i+f.size/2,y2:r+f.size/2},color:null}),h=i,p=r)}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(a.x1,a.y1,a.width,a.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}},t.prototype.renderCandlestick=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t,i=this._eventManager.ghostCtx;if(!(0>=e.dataSeriesIndexes.length)){var r,a,o,s,l,u,h=null,p=null,f=this.plotArea,m=0,g=(h=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,p=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.015*this.width,e.axisX.dataInfo.minDiff);isFinite(g)||(g=.3*Math.abs(e.axisX.range)),g=this.options.dataPointWidth?this.dataPointWidth:.7*f.width*(e.axisX.logarithmic?Math.log(g)/Math.log(e.axisX.range):Math.abs(g)/Math.abs(e.axisX.range))<<0,this.dataPointMaxWidth&&h>p&&(h=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,p)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&pp&&(g=p),n.save(),W&&i.save(),n.beginPath(),n.rect(f.x1,f.y1,f.width,f.height),n.clip(),W&&(i.beginPath(),i.rect(f.x1,f.y1,f.width,f.height),i.clip());for(var v=0;ve.axisX.dataInfo.viewPortMax)&&!d(b[m].y)&&b[m].y.length&&"number"===typeof b[m].y[0]&&"number"===typeof b[m].y[1]&&"number"===typeof b[m].y[2]&&"number"===typeof b[m].y[3]){r=e.axisX.convertValueToPixel(u),a=e.axisY.convertValueToPixel(b[m].y[0]),o=e.axisY.convertValueToPixel(b[m].y[1]),s=e.axisY.convertValueToPixel(b[m].y[2]),l=e.axisY.convertValueToPixel(b[m].y[3]);var S=r-g/2<<0,_=S+g<<0,C=(p=x.options.fallingColor?x.fallingColor:x._colorSet[0],h=b[m].color?b[m].color:x._colorSet[0],Math.round(Math.max(1,.15*g))),T=0===C%2?0:.5,M=x.dataPointIds[m];this._eventManager.objectMap[M]={id:M,objectType:"dataPoint",dataSeriesIndex:y,dataPointIndex:m,x1:S,y1:a,x2:_,y2:o,x3:r,y3:s,x4:r,y4:l,borderThickness:C,color:h},n.strokeStyle=h,n.beginPath(),n.lineWidth=C,i.lineWidth=Math.max(C,4),"candlestick"===x.type?(n.moveTo(r-T,o),n.lineTo(r-T,Math.min(a,l)),n.stroke(),n.moveTo(r-T,Math.max(a,l)),n.lineTo(r-T,s),n.stroke(),fe(n,S,Math.min(a,l),_,Math.max(a,l),b[m].y[0]<=b[m].y[3]?x.risingColor:p,C,h,w,w,!1,!1,x.fillOpacity),W&&(h=c(M),i.strokeStyle=h,i.moveTo(r-T,o),i.lineTo(r-T,Math.min(a,l)),i.stroke(),i.moveTo(r-T,Math.max(a,l)),i.lineTo(r-T,s),i.stroke(),fe(i,S,Math.min(a,l),_,Math.max(a,l),h,0,null,!1,!1,!1,!1))):"ohlc"===x.type&&(n.moveTo(r-T,o),n.lineTo(r-T,s),n.stroke(),n.beginPath(),n.moveTo(r,a),n.lineTo(S,a),n.stroke(),n.beginPath(),n.moveTo(r,l),n.lineTo(_,l),n.stroke(),W&&(h=c(M),i.strokeStyle=h,i.moveTo(r-T,o),i.lineTo(r-T,s),i.stroke(),i.beginPath(),i.moveTo(r,a),i.lineTo(S,a),i.stroke(),i.beginPath(),i.moveTo(r,l),i.lineTo(_,l),i.stroke())),(b[m].indexLabel||x.indexLabel||b[m].indexLabelFormatter||x.indexLabelFormatter)&&this._indexLabels.push({chartType:x.type,dataPoint:b[m],dataSeries:x,point:{x:S+(_-S)/2,y:e.axisY.reversed?s:o},direction:1,bounds:{x1:S,y1:Math.min(o,s),x2:_,y2:Math.max(o,s)},color:h})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(f.x1,f.y1,f.width,f.height),i.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}},t.prototype.renderBoxAndWhisker=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t,i=this._eventManager.ghostCtx;if(!(0>=e.dataSeriesIndexes.length)){var r,a,o,s,l,u,h,p=null,f=this.plotArea,g=0,v=(p=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.015*this.width,e.axisX.dataInfo.minDiff);isFinite(v)||(v=.3*Math.abs(e.axisX.range)),v=this.options.dataPointWidth?this.dataPointWidth:.7*f.width*(e.axisX.logarithmic?Math.log(v)/Math.log(e.axisX.range):Math.abs(v)/Math.abs(e.axisX.range))<<0,this.dataPointMaxWidth&&p>g&&(p=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,g)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&gg&&(v=g),n.save(),W&&i.save(),n.beginPath(),n.rect(f.x1,f.y1,f.width,f.height),n.clip(),W&&(i.beginPath(),i.rect(f.x1,f.y1,f.width,f.height),i.clip());for(var y=!!e.axisY.reversed,x=0;xe.axisX.dataInfo.viewPortMax)&&!d(S[g].y)&&S[g].y.length&&"number"===typeof S[g].y[0]&&"number"===typeof S[g].y[1]&&"number"===typeof S[g].y[2]&&"number"===typeof S[g].y[3]&&"number"===typeof S[g].y[4]&&5===S[g].y.length){r=e.axisX.convertValueToPixel(h),a=e.axisY.convertValueToPixel(S[g].y[0]),o=e.axisY.convertValueToPixel(S[g].y[1]),s=e.axisY.convertValueToPixel(S[g].y[2]),l=e.axisY.convertValueToPixel(S[g].y[3]),u=e.axisY.convertValueToPixel(S[g].y[4]);var C=r-v/2<<0,T=r+v/2<<0,M=(p=S[g].color?S[g].color:w._colorSet[0],Math.round(Math.max(1,.15*v))),k=0===M%2?0:.5,A=S[g].whiskerColor?S[g].whiskerColor:S[g].color?w.whiskerColor?w.whiskerColor:S[g].color:w.whiskerColor?w.whiskerColor:p,E="number"===typeof S[g].whiskerThickness?S[g].whiskerThickness:"number"===typeof w.options.whiskerThickness?w.whiskerThickness:M,P=S[g].whiskerDashType?S[g].whiskerDashType:w.whiskerDashType,D="number"===typeof(D=d(S[g].whiskerLength)?d(w.options.whiskerLength)?v:w.whiskerLength:S[g].whiskerLength)?0>=D?0:D>=v?v:D:"string"===typeof D?parseInt(D)*v/100>v?v:parseInt(D)*v/100:v,I=1===Math.round(E)%2?.5:0,O=S[g].stemColor?S[g].stemColor:S[g].color?w.stemColor?w.stemColor:S[g].color:w.stemColor?w.stemColor:p,R="number"===typeof S[g].stemThickness?S[g].stemThickness:"number"===typeof w.options.stemThickness?w.stemThickness:M,N=1===Math.round(R)%2?.5:0,j=S[g].stemDashType?S[g].stemDashType:w.stemDashType,L=S[g].lineColor?S[g].lineColor:S[g].color?w.lineColor?w.lineColor:S[g].color:w.lineColor?w.lineColor:p,F="number"===typeof S[g].lineThickness?S[g].lineThickness:"number"===typeof w.options.lineThickness?w.lineThickness:M,B=S[g].lineDashType?S[g].lineDashType:w.lineDashType,z=1===Math.round(F)%2?.5:0,U=w.upperBoxColor,V=w.lowerBoxColor,H=d(w.options.fillOpacity)?1:w.fillOpacity,X=w.dataPointIds[g];this._eventManager.objectMap[X]={id:X,objectType:"dataPoint",dataSeriesIndex:b,dataPointIndex:g,x1:C,y1:a,x2:T,y2:o,x3:r,y3:s,x4:r,y4:l,y5:u,borderThickness:M,color:p,stemThickness:R,stemColor:O,whiskerThickness:E,whiskerLength:D,whiskerColor:A,lineThickness:F,lineColor:L},n.save(),0=e.dataSeriesIndexes.length)){var i,r,a,o=null,s=this.plotArea,l=0;l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;i=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:.03*this.width;var u=e.axisX.dataInfo.minDiff;isFinite(u)||(u=.3*Math.abs(e.axisX.range)),u=this.options.dataPointWidth?this.dataPointWidth:s.width*(e.axisX.logarithmic?Math.log(u)/Math.log(e.axisX.range):Math.abs(u)/Math.abs(e.axisX.range))/e.plotType.totalDataSeries*.9<<0,this.dataPointMaxWidth&&l>i&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,i)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&ii&&(u=i),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(s.x1,s.y1,s.width,s.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.clip());for(var h=0;he.axisX.dataInfo.viewPortMax)&&!d(m[l].y)&&m[l].y.length&&"number"===typeof m[l].y[0]&&"number"===typeof m[l].y[1]){o=e.axisX.convertValueToPixel(a),i=e.axisY.convertValueToPixel(m[l].y[0]),r=e.axisY.convertValueToPixel(m[l].y[1]);var v=e.axisX.reversed?o+e.plotType.totalDataSeries*u/2-(e.previousDataSeriesCount+h)*u<<0:o-e.plotType.totalDataSeries*u/2+(e.previousDataSeriesCount+h)*u<<0,y=e.axisX.reversed?v-u<<0:v+u<<0;o=m[l].color?m[l].color:f._colorSet[l%f._colorSet.length];if(i>r){var x=i;i=r,r=x}x=f.dataPointIds[l],this._eventManager.objectMap[x]={id:x,objectType:"dataPoint",dataSeriesIndex:p,dataPointIndex:l,x1:v,y1:i,x2:y,y2:r},fe(n,e.axisX.reversed?y:v,i,e.axisX.reversed?v:y,r,o,0,o,g,g,!1,!1,f.fillOpacity),o=c(x),W&&fe(this._eventManager.ghostCtx,e.axisX.reversed?y:v,i,e.axisX.reversed?v:y,r,o,0,null,!1,!1,!1,!1),(m[l].indexLabel||f.indexLabel||m[l].indexLabelFormatter||f.indexLabelFormatter)&&(this._indexLabels.push({chartType:"rangeColumn",dataPoint:m[l],dataSeries:f,indexKeyword:0,point:{x:v+(y-v)/2,y:m[l].y[1]>=m[l].y[0]?r:i},direction:m[l].y[1]>=m[l].y[0]?-1:1,bounds:{x1:v,y1:Math.min(i,r),x2:y,y2:Math.max(i,r)},color:o}),this._indexLabels.push({chartType:"rangeColumn",dataPoint:m[l],dataSeries:f,indexKeyword:1,point:{x:v+(y-v)/2,y:m[l].y[1]>=m[l].y[0]?i:r},direction:m[l].y[1]>=m[l].y[0]?1:-1,bounds:{x1:v,y1:Math.min(i,r),x2:y,y2:Math.max(i,r)},color:o}))}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(s.x1,s.y1,s.width,s.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}},t.prototype.renderError=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t,i=!!e.axisY._position&&("left"!==e.axisY._position&&"right"!==e.axisY._position);if(!(0>=e.dataSeriesIndexes.length)){var r,o,s,l,c,u,h,p=null,f=!1,m=this.plotArea,g=0,v=e.axisX.dataInfo.minDiff;isFinite(v)||(v=.3*Math.abs(e.axisX.range)),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(m.x1,m.y1,m.width,m.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.clip());for(var y=0,x=0;xg&&(p=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,g)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&gg&&(x=g),0<_.length){var M=S._colorSet;for(g=0;g<_.length;g++){p=S.lineColor=S.options.color?S.options.color:M[0];var k={color:_[g].whiskerColor?_[g].whiskerColor:_[g].color?S.whiskerColor?S.whiskerColor:_[g].color:S.whiskerColor?S.whiskerColor:p,thickness:d(_[g].whiskerThickness)?S.whiskerThickness:_[g].whiskerThickness,dashType:_[g].whiskerDashType?_[g].whiskerDashType:S.whiskerDashType,length:d(_[g].whiskerLength)?d(S.options.whiskerLength)?x:S.options.whiskerLength:_[g].whiskerLength,trimLength:d(_[g].whiskerLength)&&d(S.options.whiskerLength)?50:0};k.length="number"===typeof k.length?0>=k.length?0:k.length>=x?x:k.length:"string"===typeof k.length?parseInt(k.length)*x/100>x?x:parseInt(k.length)*x/100>x:x,k.thickness="number"===typeof k.thickness?0>k.thickness?0:Math.round(k.thickness):2;var A={color:_[g].stemColor?_[g].stemColor:_[g].color?S.stemColor?S.stemColor:_[g].color:S.stemColor?S.stemColor:p,thickness:_[g].stemThickness?_[g].stemThickness:S.stemThickness,dashType:_[g].stemDashType?_[g].stemDashType:S.stemDashType};if(A.thickness="number"===typeof A.thickness?0>A.thickness?0:Math.round(A.thickness):2,!((h=_[g].getTime?_[g].x.getTime():_[g].x)e.axisX.dataInfo.viewPortMax)&&!d(_[g].y)&&_[g].y.length&&"number"===typeof _[g].y[0]&&"number"===typeof _[g].y[1]){var E=e.axisX.convertValueToPixel(h);i?o=E:r=E,E=e.axisY.convertValueToPixel(_[g].y[0]),i?s=E:c=E,E=e.axisY.convertValueToPixel(_[g].y[1]),i?l=E:u=E,i?(c=e.axisX.reversed?o+(C?y:1)*x/2-(C?T-1:0)*x<<0:o-(C?y:1)*x/2+(C?T-1:0)*x<<0,u=e.axisX.reversed?c-x<<0:c+x<<0):(s=e.axisX.reversed?r+(C?y:1)*x/2-(C?T-1:0)*x<<0:r-(C?y:1)*x/2+(C?T-1:0)*x<<0,l=e.axisX.reversed?s-x<<0:s+x<<0),!i&&c>u&&(E=c,c=u,u=E),i&&s>l&&(E=s,s=l,l=E),E=S.dataPointIds[g],this._eventManager.objectMap[E]={id:E,objectType:"dataPoint",dataSeriesIndex:w,dataPointIndex:g,x1:Math.min(s,l),y1:Math.min(c,u),x2:Math.max(l,s),y2:Math.max(u,c),isXYSwapped:i,stemProperties:A,whiskerProperties:k},a(n,Math.min(s,l),Math.min(c,u),Math.max(l,s),Math.max(u,c),p,k,A,i),W&&a(this._eventManager.ghostCtx,s,c,l,u,p,k,A,i),(_[g].indexLabel||S.indexLabel||_[g].indexLabelFormatter||S.indexLabelFormatter)&&(this._indexLabels.push({chartType:"error",dataPoint:_[g],dataSeries:S,indexKeyword:0,point:{x:i?_[g].y[1]>=_[g].y[0]?s:l:s+(l-s)/2,y:i?c+(u-c)/2:_[g].y[1]>=_[g].y[0]?u:c},direction:_[g].y[1]>=_[g].y[0]?-1:1,bounds:{x1:i?Math.min(s,l):s,y1:i?c:Math.min(c,u),x2:i?Math.max(s,l):l,y2:i?u:Math.max(c,u)},color:p,axisSwapped:i}),this._indexLabels.push({chartType:"error",dataPoint:_[g],dataSeries:S,indexKeyword:1,point:{x:i?_[g].y[1]>=_[g].y[0]?l:s:s+(l-s)/2,y:i?c+(u-c)/2:_[g].y[1]>=_[g].y[0]?c:u},direction:_[g].y[1]>=_[g].y[0]?1:-1,bounds:{x1:i?Math.min(s,l):s,y1:i?c:Math.min(c,u),x2:i?Math.max(s,l):l,y2:i?u:Math.max(c,u)},color:p,axisSwapped:i}))}}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}},t.prototype.renderRangeBar=function(e){var t=e.targetCanvasCtx||this.plotArea.ctx,n=W?this._preRenderCtx:t;if(!(0>=e.dataSeriesIndexes.length)){var i,r,a,o,s=null,l=this.plotArea,u=0;u=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;i=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(.15*this.height,this.plotArea.height/e.plotType.totalDataSeries*.9)<<0;var h=e.axisX.dataInfo.minDiff;isFinite(h)||(h=.3*Math.abs(e.axisX.range)),h=this.options.dataPointWidth?this.dataPointWidth:l.height*(e.axisX.logarithmic?Math.log(h)/Math.log(e.axisX.range):Math.abs(h)/Math.abs(e.axisX.range))/e.plotType.totalDataSeries*.9<<0,this.dataPointMaxWidth&&u>i&&(u=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,i)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&ii&&(h=i),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(l.x1,l.y1,l.width,l.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.clip());for(var p=0;pe.axisX.dataInfo.viewPortMax)&&!d(g[u].y)&&g[u].y.length&&"number"===typeof g[u].y[0]&&"number"===typeof g[u].y[1]){i=e.axisY.convertValueToPixel(g[u].y[0]),r=e.axisY.convertValueToPixel(g[u].y[1]),a=e.axisX.convertValueToPixel(o),a=e.axisX.reversed?a+e.plotType.totalDataSeries*h/2-(e.previousDataSeriesCount+p)*h<<0:a-e.plotType.totalDataSeries*h/2+(e.previousDataSeriesCount+p)*h<<0;var y=e.axisX.reversed?a-h<<0:a+h<<0;i>r&&(s=i,i=r,r=s),s=g[u].color?g[u].color:m._colorSet[u%m._colorSet.length],fe(n,i,e.axisX.reversed?y:a,r,e.axisX.reversed?a:y,s,0,null,v,!1,!1,!1,m.fillOpacity),s=m.dataPointIds[u],this._eventManager.objectMap[s]={id:s,objectType:"dataPoint",dataSeriesIndex:f,dataPointIndex:u,x1:i,y1:a,x2:r,y2:y},s=c(s),W&&fe(this._eventManager.ghostCtx,i,e.axisX.reversed?y:a,r,e.axisX.reversed?a:y,s,0,null,!1,!1,!1,!1),(g[u].indexLabel||m.indexLabel||g[u].indexLabelFormatter||m.indexLabelFormatter)&&(this._indexLabels.push({chartType:"rangeBar",dataPoint:g[u],dataSeries:m,indexKeyword:0,point:{x:g[u].y[1]>=g[u].y[0]?i:r,y:a+(y-a)/2},direction:g[u].y[1]>=g[u].y[0]?-1:1,bounds:{x1:Math.min(i,r),y1:a,x2:Math.max(i,r),y2:y},color:s}),this._indexLabels.push({chartType:"rangeBar",dataPoint:g[u],dataSeries:m,indexKeyword:1,point:{x:g[u].y[1]>=g[u].y[0]?r:i,y:a+(y-a)/2},direction:g[u].y[1]>=g[u].y[0]?1:-1,bounds:{x1:Math.min(i,r),y1:a,x2:Math.max(i,r),y2:y},color:s}))}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}},t.prototype.renderRangeArea=function(e){function t(){if(b){for(var e=null,t=l.length-1;0<=t;t--)e=l[t],i.lineTo(e.x,e.y2),r.lineTo(e.x,e.y2);if(i.closePath(),i.globalAlpha=d.fillOpacity,i.fill(),i.globalAlpha=1,r.fill(),0=e.dataSeriesIndexes.length)){var r=this._eventManager.ghostCtx,a=[],o=this.plotArea;i.save(),W&&r.save(),i.beginPath(),i.rect(o.x1,o.y1,o.width,o.height),i.clip(),W&&(r.beginPath(),r.rect(o.x1,o.y1,o.width,o.height),r.clip());for(var s=0;se.axisX.dataInfo.viewPortMax&&(!d.connectNullData||!k)))if(null!==h[x].y&&h[x].y.length&&"number"===typeof h[x].y[0]&&"number"===typeof h[x].y[1]){if(p=e.axisX.convertValueToPixel(v),f=e.axisY.convertValueToPixel(h[x].y[0]),g=e.axisY.convertValueToPixel(h[x].y[1]),y||k?(d.connectNullData&&!y?(i.setLineDash&&(d.options.nullDataLineDashType||C===d.lineDashType&&d.lineDashType!==d.nullDataLineDashType)&&(l[l.length-1].newLineDashArray=M,C=d.nullDataLineDashType,i.setLineDash(T)),i.lineTo(p,f),W&&r.lineTo(p,f),l.push({x:p,y1:f,y2:g})):(i.beginPath(),i.moveTo(p,f),b={x:p,y:f},(l=[]).push({x:p,y1:f,y2:g}),W&&(r.beginPath(),r.moveTo(p,f))),k=y=!1):(i.lineTo(p,f),l.push({x:p,y1:f,y2:g}),W&&r.lineTo(p,f),0==x%250&&t()),v=d.dataPointIds[x],this._eventManager.objectMap[v]={id:v,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:x,x1:p,y1:f,y2:g},xh[x].y[1]===e.axisY.reversed?-1:1,color:w}),this._indexLabels.push({chartType:"rangeArea",dataPoint:h[x],dataSeries:d,indexKeyword:1,point:{x:p,y:g},direction:h[x].y[0]>h[x].y[1]===e.axisY.reversed?1:-1,color:w}))}else k||y||t(),k=!0;t(),J.drawMarkers(a)}}return W&&(n.drawImage(this._preRenderCanvas,0,0,this.width,this.height),i.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&i.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&i.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),i.clearRect(o.x1,o.y1,o.width,o.height),this._eventManager.ghostCtx.restore()),i.restore(),{source:n,dest:this.plotArea.ctx,animationCallback:Z.xClipAnimation,easingFunction:Z.easing.linear,animationBase:0}}},t.prototype.renderRangeSplineArea=function(e){function t(e,t){var i=n(y,2);if(0=e.dataSeriesIndexes.length)){var a=this._eventManager.ghostCtx,o=[],s=this.plotArea;r.save(),W&&a.save(),r.beginPath(),r.rect(s.x1,s.y1,s.width,s.height),r.clip(),W&&(a.beginPath(),a.rect(s.x1,s.y1,s.width,s.height),a.clip());for(var l=0;le.axisX.dataInfo.viewPortMax&&(!d.connectNullData||!f)))if(null!==h[v].y&&h[v].y.length&&"number"===typeof h[v].y[0]&&"number"===typeof h[v].y[1]){p=e.axisX.convertValueToPixel(p),f=e.axisY.convertValueToPixel(h[v].y[0]),g=e.axisY.convertValueToPixel(h[v].y[1]);var M=d.dataPointIds[v];if(this._eventManager.objectMap[M]={id:M,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:v,x1:p,y1:f,y2:g},y[y.length]={x:p,y:f},x[x.length]={x:p,y:g},v=e.dataSeriesIndexes.length)){var i,r,a,o,s=this._eventManager.ghostCtx,l=null,u=this.plotArea,d=0,h=e.axisY.convertValueToPixel(e.axisY.logarithmic?e.axisY.viewportMinimum:0);d=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;r=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(.15*this.width,this.plotArea.width/e.plotType.totalDataSeries*.9)<<0;var p=e.axisX.dataInfo.minDiff;isFinite(p)||(p=.3*Math.abs(e.axisX.range)),p=this.options.dataPointWidth?this.dataPointWidth:u.width*(e.axisX.logarithmic?Math.log(p)/Math.log(e.axisX.range):Math.abs(p)/Math.abs(e.axisX.range))/e.plotType.totalDataSeries*.6<<0,this.dataPointMaxWidth&&d>r&&(d=Math.min(this.options.dataPointWidth?this.dataPointWidth:1/0,r)),!this.dataPointMaxWidth&&this.dataPointMinWidth&&rr&&(p=r),n.save(),W&&this._eventManager.ghostCtx.save(),n.beginPath(),n.rect(u.x1,u.y1,u.width,u.height),n.clip(),W&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(u.x1,u.y1,u.width,u.height),this._eventManager.ghostCtx.clip());for(var f=0;fa&&(l=r,r=a,a=l),e.axisY.reversed&&(l=r,r=a,a=l),l=v.dataPointIds[d],this._eventManager.objectMap[l]={id:l,objectType:"dataPoint",dataSeriesIndex:g,dataPointIndex:d,x1:i,y1:r,x2:M,y2:a};var k=y[d].color?y[d].color:0y[d].y===e.axisY.reversed?1:-1,bounds:{x1:i,y1:Math.min(r,a),x2:M,y2:Math.max(r,a)},color:l})}}}return W&&(t.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.globalCompositeOperation="source-atop",e.axisX.maskCanvas&&n.drawImage(e.axisX.maskCanvas,0,0,this.width,this.height),e.axisY.maskCanvas&&n.drawImage(e.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),n.clearRect(u.x1,u.y1,u.width,u.height),this._eventManager.ghostCtx.restore()),n.restore(),{source:t,dest:this.plotArea.ctx,animationCallback:Z.fadeInAnimation,easingFunction:Z.easing.easeInQuad,animationBase:0}}};var K=function(e,t,n,i,r,a,o,s,l){if(!(0>n)){if("undefined"===typeof s&&(s=1),!W){var c=Number((o%(2*Math.PI)).toFixed(8));Number((a%(2*Math.PI)).toFixed(8))===c&&(o-=1e-4)}e.save(),e.globalAlpha=s,"pie"===r?(e.beginPath(),e.moveTo(t.x,t.y),e.arc(t.x,t.y,n,a,o,!1),e.fillStyle=i,e.strokeStyle="white",e.lineWidth=2,e.closePath(),e.fill()):"doughnut"===r&&(e.beginPath(),e.arc(t.x,t.y,n,a,o,!1),0<=l&&e.arc(t.x,t.y,l*n,o,a,!0),e.closePath(),e.fillStyle=i,e.strokeStyle="white",e.lineWidth=2,e.fill()),e.globalAlpha=1,e.restore()}};t.prototype.renderPie=function(e){function t(e,t){var n=s.plotArea.ctx;for(n.clearRect(p.x1,p.y1,p.width,p.height),n.fillStyle=s.backgroundColor,n.fillRect(p.x1,p.y1,p.width,p.height),n=0;ni){var a=.07*_*Math.cos(f[n].midAngle),o=.07*_*Math.sin(f[n].midAngle),l=!1;u[n].exploded?(1e-9e.indexLabelTextBlock.y?r-i:n-a}function i(e){for(var t=null,i=1;in(f[t],f[e])||("right"===f[e].hemisphere?f[t].indexLabelTextBlock.y>=f[e].indexLabelTextBlock.y:f[t].indexLabelTextBlock.y<=f[e].indexLabelTextBlock.y)))break;t=null}return t}function r(e,t,a){if(1e3<(a=(a||0)+1))return 0;t=t||0;var o=0,s=b.y-1*l,c=b.y+1*l;if(0<=e&&et&&d.indexLabelTextBlock.yc)return 0;var h=0,p=0;p=h=h=0;for(0>t?d.indexLabelTextBlock.y-d.indexLabelTextBlock.height/2>s&&d.indexLabelTextBlock.y-d.indexLabelTextBlock.height/2+tc&&(t=d.indexLabelTextBlock.y+d.indexLabelTextBlock.height/2+t-c),t=d.indexLabelTextBlock.y+t,s=0,s="right"===d.hemisphere?b.x+Math.sqrt(Math.pow(l,2)-Math.pow(t-b.y,2)):b.x-Math.sqrt(Math.pow(l,2)-Math.pow(t-b.y,2)),p=b.x+_*Math.cos(d.midAngle),h=b.y+_*Math.sin(d.midAngle),h=Math.sqrt(Math.pow(s-p,2)+Math.pow(t-h,2)),p=Math.acos(_/l),t=(h=Math.acos((l*l+_*_-h*h)/(2*_*l)))n(f[s],f[e])||("right"===f[e].hemisphere?f[s].indexLabelTextBlock.y<=f[e].indexLabelTextBlock.y:f[s].indexLabelTextBlock.y>=f[e].indexLabelTextBlock.y)))break;s=null}p=s,h=i(e),c=s=0,0>t?(o=t,null!==(c="right"===d.hemisphere?p:h)&&(p=-t,(t=d.indexLabelTextBlock.y-d.indexLabelTextBlock.height/2-(f[c].indexLabelTextBlock.y+f[c].indexLabelTextBlock.height/2))-p+s.toFixed(x)&&(o=t>g?-(t-g):-(p-(c-s)))))):0g?t-g:p-(s-c))))),o&&(a=d.indexLabelTextBlock.y+o,t=0,t="right"===d.hemisphere?b.x+Math.sqrt(Math.pow(l,2)-Math.pow(a-b.y,2)):b.x-Math.sqrt(Math.pow(l,2)-Math.pow(a-b.y,2)),d.midAngle>Math.PI/2-y&&d.midAngles.indexLabelTextBlock.x?t=s.indexLabelTextBlock.x-15:"right"===d.hemisphere&&"left"===e.hemisphere&&t3*Math.PI/2-y&&d.midAngle<3*Math.PI/2+y&&(s=(e-1+f.length)%f.length,s=f[s],e=f[(e+1+f.length)%f.length],"right"===d.hemisphere&&"left"===s.hemisphere&&te.indexLabelTextBlock.x&&(t=e.indexLabelTextBlock.x-15)),d.indexLabelTextBlock.y=a,d.indexLabelTextBlock.x=t,d.indexLabelAngle=Math.atan2(d.indexLabelTextBlock.y-b.y,d.indexLabelTextBlock.x-b.x))}return o}function a(){(m=s.plotArea.ctx).fillStyle="grey",m.strokeStyle="grey",m.font="16px Arial",m.textBaseline="middle";var e=m=0,t=0,a=!0;for(e=0;10>e&&(1>e||0(S=n(o,d)-g)){for(var M=d=0,k=0;kd?y.indexLabelText="":y.indexLabelTextBlock.maxWidth=.85*d,.3*y.indexLabelTextBlock.maxWidtht&&(t=w)),w=w=0,0t&&(t=w))));var E=function(e,t,n){for(var i=[],r=0;i.push(f[t]),t!==n;t=(t+1+u.length)%u.length);for(i.sort((function(e,t){return e.y-t.y})),t=0;t(S=n(o,d))){c=o.indexLabelTextBlock.x;var p=o.indexLabelTextBlock.y-o.indexLabelTextBlock.height/2,m=o.indexLabelTextBlock.y+o.indexLabelTextBlock.height/2,g=d.indexLabelTextBlock.y-d.indexLabelTextBlock.height/2,v=d.indexLabelTextBlock.x+d.indexLabelTextBlock.width,y=d.indexLabelTextBlock.y+d.indexLabelTextBlock.height/2;c=!(o.indexLabelTextBlock.x+o.indexLabelTextBlock.widthv+h||p>y+h||me&&(e=s),l!==e&&(t=l,r+=-S),0===s%Math.max(u.length/10,3)&&(a=!0)):a=!0,a&&0=e.dataSeriesIndexes.length)){var l,c=this.data[e.dataSeriesIndexes[0]],u=c.dataPoints,h=10,p=this.plotArea,f=c.dataPointEOs,g=2,v=1.3,y=20/180*Math.PI,x=6,b={x:(p.x2+p.x1)/2,y:(p.y2+p.y1)/2},w=0;e=!1;for(var S=0;SMath.PI/2-y&&l.midAnglel.midAngle)&&(n=r),e++):l.midAngle>3*Math.PI/2-y&&l.midAngle<3*Math.PI/2+y&&((0===t||f[i].midAngle>l.midAngle)&&(i=r),t++),l.hemisphere=a>Math.PI/2&&a<=3*Math.PI/2?"left":"right",l.indexLabelTextBlock=new P(s.plotArea.ctx,{fontSize:l.indexLabelFontSize,fontFamily:l.indexLabelFontFamily,fontColor:l.indexLabelFontColor,fontStyle:l.indexLabelFontStyle,fontWeight:l.indexLabelFontWeight,textAlign:l.indexLabelTextAlign,backgroundColor:l.indexLabelBackgroundColor,borderColor:l.indexLabelBorderColor,borderThickness:l.indexLabelBorderThickness,maxWidth:l.indexLabelMaxWidth,maxHeight:l.indexLabelWrap?5*l.indexLabelFontSize:1.5*l.indexLabelFontSize,text:l.indexLabelText,padding:l.indexLabelPadding,textBaseline:"middle"}),l.indexLabelTextBlock.measureText()}for(o=a=0,h=!1,r=0;rMath.PI/2-y&&l.midAngle3*Math.PI/2-y&&l.midAngle<3*Math.PI/2+y&&(o<=t/2&&!h?(l.hemisphere="left",o++):(l.hemisphere="right",h=!0))}}(),a(),a(),a(),a(),this.disableToolTip=!0,this._animator.animate(0,this.animatedRender?this.animationDuration:0,(function(e){(t=s.plotArea.ctx).clearRect(p.x1,p.y1,p.width,p.height),t.fillStyle=s.backgroundColor,t.fillRect(p.x1,p.y1,p.width,p.height);for(var t=f[0].startAngle+2*Math.PI*e,n=0;nt&&(r=t,a=!0);var l=u[n].color?u[n].color:c._colorSet[n%c._colorSet.length];if(r>i&&K(s.plotArea.ctx,f[n].center,f[n].radius,l,c.type,i,r,c.fillOpacity,f[n].percentInnerRadius),a)break}o(),s.dispatchEvent("dataAnimationIterationEnd",{chart:s}),1<=e&&s.dispatchEvent("dataAnimationEnd",{chart:s})}),(function(){s.disableToolTip=!1,s._animator.animate(0,s.animatedRender?500:0,(function(e){t(e,!1),o(),s.dispatchEvent("dataAnimationIterationEnd",{chart:s})})),s.dispatchEvent("dataAnimationEnd",{chart:s})})),c.radius=_,"doughnut"===c.type&&(c.innerRadius=C)}}};var Q=function(e,t,n,i){"undefined"===typeof n&&(n=1),0>=Math.round(t.y4-t.y1)||(e.save(),e.globalAlpha=n,e.beginPath(),e.moveTo(Math.round(t.x1),Math.round(t.y1)),e.lineTo(Math.round(t.x2),Math.round(t.y2)),e.lineTo(Math.round(t.x3),Math.round(t.y3)),e.lineTo(Math.round(t.x4),Math.round(t.y4)),"undefined"!==t.x5&&(e.lineTo(Math.round(t.x5),Math.round(t.y5)),e.lineTo(Math.round(t.x6),Math.round(t.y6))),e.closePath(),e.fillStyle=i||t.color,e.fill(),e.globalAplha=1,e.restore())};t.prototype.renderFunnel=function(e){function t(){var e,t,n,i;if("inside"!==f.indexLabelPlacement)for(var r=0;rF?l(n).x2+1:(e.x2+e.x3)/2+1:"undefined"!==typeof e.x5?nN+y&&(q[r].textBlock.y=N+y-q[r].height),q[r].textBlock.yB+y&&(q[r].textBlock.y=B+y-q[r].height)));else for(r=0;r=n?(t=r!=z?(e.x4+e.x3)/2-i/2:(e.x5+e.x4)/2-i/2,n=r!=z?(e.y1+e.y3)/2-n/2:(e.y1+e.y4)/2-n/2,q[r].textBlock.x=t,q[r].textBlock.y=n):q[r].isDirty=!0)}function n(e,t){return(te?f.reversed?B-y:N-y:q[e].textBlock.y+q[e].height+Y)}function i(e,n,i){var a,o,s,l=[],d=y,h=[];if(-1!==n&&(0<=J.indexOf(n)?(o=J.indexOf(n),J.splice(o,1)):(J.push(n),J=J.sort((function(e,t){return e-t})))),0===J.length)l=$;else{o=y*(1!=J.length||0!=J[0]&&J[0]!=U.length-1?2:1)/function(){for(var e=0,t=0;th&&(h*=-1),n.y1+=t-h[i],n.y2+=t-h[i],n.y3+=t-h[i],n.y4+=t-h[i],n.y5&&(n.y5+=t-h[i],n.y6+=t-h[i]),h[i]=t};e._animator.animate(0,i,(function(i){var a=e.plotArea.ctx||e.ctx;K=!0,a.clearRect(v.x1,v.y1,v.x2-v.x1,v.y2-v.y1),a.fillStyle=e.backgroundColor,a.fillRect(v.x1,v.y1,v.width,v.height),m(i,n);var o={};for(o.dataSeries=f,o.dataPoint=f.reversed?f.dataPoints[g.length-1-n]:f.dataPoints[n],o.index=f.reversed?g.length-1-n:n,e.toolTip.highlightObjects([o]),o=0;oe){t=U[n];break}return t?{x1:e=t.y6&&e>t.y6?t.x3+(t.x4-t.x3)/(t.y4-t.y3)*(e-t.y3):t.x2+(t.x3-t.x2)/(t.y3-t.y2)*(e-t.y2),x2:e}:-1}function c(e){for(var t=0;t=e.dataSeriesIndexes.length)){for(var f=this.data[e.dataSeriesIndexes[0]],g=f.dataPoints,v=this.plotArea,y=.025*v.width,x=.01*v.width,b=0,w=v.height-2*y-4,S=Math.min(v.width-2*x,2.8*v.height),_=!1,C=0;Cw?E=w:0>=E&&(E=0),D>e?D=e-.5:0>=D&&(D=0)):"pyramid"===f.type&&(D=E=0,f.reversed=!f.reversed);x=C+e/2;var O=C,R=C+e,N=f.reversed?k:M,j=x-D/2,L=x+D/2,F=f.reversed?M+E:k-E,B=f.reversed?M:k;D=f.valueRepresents=f.valueRepresents?f.valueRepresents:"height",C=[],e=[];var z,U=[],H=(x=[],M),X=(F-N)/(j-O),G=-X;S="area"===D?function(){var e,t,n=O,i=R,r=j,a=L;e=M,t=k-E,a=Math.abs((t-e)*(i-n+(a-r))/2),e=t-e,t=(r=L-j)*(t-k),t=a+(t=Math.abs(t)),a=[];for(var o=0,s=0;s(c=X*X*i*i-4*Math.abs(X)*n)?(n-=u=(i+(c=r))*(e-d)/2,l=e-d,d+=e-d,l+=0==c?0:n/c,d+=n/c,u=!0):(c=i-2*(l=(Math.abs(X)*i-Math.sqrt(c))/2)/Math.abs(X),(d+=l)>e&&(u=(i+(c=r))*(e-(d-=l))/2,l=e-d,d+=e-d,l+=(n-=u)/c,d+=n/c,u=!0),i=c),a.push(l);return a}():function(){for(var e=0,t=[],n=0;nC[D]&&(C[D]=D!==z&&f.reversed?U[D].x3-U[D].x4:U[D].x2-U[D].x1,C[D]/=2)),((w=t.indexLabelMaxWidth?t.indexLabelMaxWidth:f.options.indexLabelMaxWidth?f.indexLabelMaxWidth:C[D])>C[D]||0>w)&&(w=C[D]),M[D]="inside"===f.indexLabelPlacement&&(b?Math.max(U[D].height,u):1.5*u+("object"===typeof o?(o.top||0)+(o.bottom||0):2*o)),k=p.getPercentAndTotal(f,t),(f.indexLabelFormatter||t.indexLabelFormatter)&&(E={chart:p.options,dataSeries:f,dataPoint:t,total:k.total,percent:k.percent}),t=t.indexLabelFormatter?t.indexLabelFormatter(E):t.indexLabel?p.replaceKeywordsWithValue(t.indexLabel,t,f,D):f.indexLabelFormatter?f.indexLabelFormatter(E):f.indexLabel?p.replaceKeywordsWithValue(f.indexLabel,t,f,D):t.label?t.label:"",0>=y&&(y=0),1e3>w&&1e3-w<_&&(w+=1e3-w),d(f.options.indexLabelMaxWidth)&&(f.indexLabelMaxWidth=d(f.indexLabelMaxWidth)?w:Math.max(w,f.indexLabelMaxWidth)),A.roundRect||s(A),(n=new P(A,{fontSize:u,fontFamily:m,fontColor:c,fontStyle:h,fontWeight:v,horizontalAlign:n,textAlign:S,backgroundColor:i,borderColor:r,borderThickness:a,maxWidth:w,maxHeight:!1===M[D]?(b?4.28571429*u:1.5*u)+("object"===typeof o?(o.top||0)+(o.bottom||0):2*o):M[D],text:t,padding:o,textBaseline:"middle"})).measureText(),n.height=n.height===2*n.padding?0:n.height,n.width=n.width===2*n.padding?0:n.width,q.push({textBlock:n,id:f.reversed?O:D,isDirty:!1,lineColor:e,lineThickness:y,lineDashType:x,height:n.heightl?l:f.indexLabelMaxWidth:l,q.length-1);0<=c;c--)s=g[q[c].id],i=(n=q[c]).textBlock,t=(e=o(c)t.y&&(r=!0),((n=s.indexLabelMaxWidth||l)>l||0>n)&&(n=l),a.push(n);if(r)for(c=q.length-1;0<=c;c--)e=U[c],q[c].textBlock.maxWidth=a[a.length-(c+1)],q[c].textBlock.measureText(),q[c].textBlock.height=q[c].textBlock.height===2*q[c].textBlock.padding?0:q[c].textBlock.height,q[c].textBlock.width=q[c].textBlock.width===2*q[c].textBlock.padding?0:q[c].textBlock.width,q[c].textBlock.x=T-l,n=q[c].textBlock.heightN+y&&(q[c].textBlock.y=N+y-q[c].height),q[c].textBlock.yB+y&&(q[c].textBlock.y=B+y-q[c].height))}(),function(){function e(t,i){var r;if(0>t||t>=q.length)return 0;var s,l=q[t].textBlock;return 0>i?(i*=-1,(r=n(s=a(t),t))>=i?(l.y-=i,i):0==t?(0=i?(l.y+=i,i):t==U.length-1?(0n&&!((c=o(d))>=q.length-1)&&q[d].textBlock.y+q[d].height+Y>q[c].textBlock.y&&(q[d].textBlock.y=q[d].textBlock.y+q[d].height-n>n-q[d].textBlock.y?n+1:n-q[d].height-1)}for(c=U.length-1;0(n=a(c))&&q[n=0].isDirty)break;if(q[c].textBlock.y=(r=n)){s+=q[r=0].height;break}if(0>(n=a(r))){s+=q[r=0].height;break}}if(r!=c){l=i(e=s-(e-=l=q[r].textBlock.y),t,r);break}}}return l}function i(e,t,n){var i=[],r=0,a=0;for(e=Math.abs(e);n<=t;n++)i.push(U[n]);for(i.sort((function(e,t){return e.height-t.height})),n=0;n+d.y.toFixed(6)&&(r=c.y+r+Y-d.y,s=e(f,-r),se&&(b=e));for(D=0;D
Please right click on the image and save it to your device
"),t.document.close()}}},t.prototype.print=function(){var e=this.exportChart({toDataURL:!0}),t=document.createElement("iframe");t.setAttribute("class","canvasjs-chart-print-frame"),S(t,{position:"absolute",width:"100%",border:"0px",margin:"0px 0px 0px 0px",padding:"0px 0px 0px 0px"}),t.style.height=this.height+"px",this._canvasJSContainer.appendChild(t);var n=this,i=t.contentWindow||t.contentDocument.document||t.contentDocument;i.document.open(),i.document.write('\n'),i.document.body&&i.document.body.style&&(i.document.body.style.margin="0px 0px 0px 0px",i.document.body.style.padding="0px 0px 0px 0px"),i.document.close(),setTimeout((function(){i.focus(),i.print(),setTimeout((function(){n._canvasJSContainer.removeChild(t)}),1e3)}),500)},t.prototype.getPercentAndTotal=function(e,t){var n=null,i=null,r=n=null;if(0<=e.type.indexOf("stacked"))i=0,(n=t.x.getTime?t.x.getTime():t.x)in e.plotUnit.yTotals&&(i=e.plotUnit.yTotals[n],n=e.plotUnit.yAbsTotals[n],r=isNaN(t.y)||0===n?0:t.y/n*100);else if("pie"===e.type||"doughnut"===e.type||"funnel"===e.type||"pyramid"===e.type){for(n=i=0;n=o||"undefined"===typeof o||0>=m||"undefined"===typeof m||("horizontal"===this.orientation?(p.textBlock=new P(this.ctx,{x:0,y:0,maxWidth:m,maxHeight:this.itemWrap?o:this.lineHeight,angle:0,text:p.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),p.textBlock.measureText(),null!==this.itemWidth&&(p.textBlock.width=this.itemWidth-(g+s+("line"===p.chartType||"spline"===p.chartType||"stepLine"===p.chartType?.2*this.lineHeight:0))),(!h||h.width+Math.round(p.textBlock.width+g+s+(0===h.width?0:this.horizontalSpacing)+("line"===p.chartType||"spline"===p.chartType||"stepLine"===p.chartType?.2*this.lineHeight:0))>a)&&(h={items:[],width:0},c.push(h),this.height+=f,f=0),f=Math.max(f,p.textBlock.height?p.textBlock.height:this.lineHeight),p.textBlock.x=h.width,p.textBlock.y=0,h.width+=Math.round(p.textBlock.width+g+s+(0===h.width?0:this.horizontalSpacing)+("line"===p.chartType||"spline"===p.chartType||"stepLine"===p.chartType?.2*this.lineHeight:0)),h.items.push(p),this.width=Math.max(h.width,this.width)):(p.textBlock=new P(this.ctx,{x:0,y:0,maxWidth:b,maxHeight:!0===this.itemWrap?o:1.5*this.fontSize,angle:0,text:p.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),p.textBlock.measureText(),null!==this.itemWidth&&(p.textBlock.width=this.itemWidth-(g+s+("line"===p.chartType||"spline"===p.chartType||"stepLine"===p.chartType?.2*this.lineHeight:0))),this.height>0,0),this.dataPoints.length):0:h=0<(h=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x)?Math.min(Math.max((this.dataPoints.length-1)/h*(e-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0);;){if(0<=(o=0e?r.x/e:e/r.x:Math.abs(r.x-e);if(ph-a&&h+a>=this.dataPoints.length)break;-1===s?(a++,s=1):s=-1}return t||(i.dataPoint.x.getTime?i.dataPoint.x.getTime():i.dataPoint.x)!==(e.getTime?e.getTime():e)?t&&null!==i.dataPoint?i:null:i},j.prototype.getDataPointAtXY=function(e,t,n){if(!this.dataPoints||0===this.dataPoints.length||ethis.chart.plotArea.x2||tthis.chart.plotArea.y2)return null;n=n||!1;var i=[],r=0,a=0,o=1,s=!1,l=1/0,c=0,u=0,h=0;if("none"!==this.chart.plotInfo.axisPlacement)if(h=(this.chart.axisX[0]?this.chart.axisX[0]:this.chart.axisX2[0]).getXValueAt({x:e,y:t}),this.axisX.logarithmic)h=1<(p=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x))?Math.min(Math.max((this.dataPoints.length-1)/p*Math.log(h/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;else h=0<(p=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x)?Math.min(Math.max((this.dataPoints.length-1)/p*(h-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;for(;;){if(0<=(a=0=p.x1&&e<=p.x2&&t>=p.y1&&t<=p.y2&&(i.push({dataPoint:f,dataPointIndex:a,dataSeries:this,distance:Math.min(Math.abs(p.x1-e),Math.abs(p.x2-e),Math.abs(p.y1-t),Math.abs(p.y2-t))}),s=!0);break;case"line":case"stepLine":case"spline":case"area":case"stepArea":case"stackedArea":case"stackedArea100":case"splineArea":case"scatter":var g=y("markerSize",f,this)||4,v=n?20:g;(m=Math.sqrt(Math.pow(p.x1-e,2)+Math.pow(p.y1-t,2)))<=v&&i.push({dataPoint:f,dataPointIndex:a,dataSeries:this,distance:m}),(p=Math.abs(p.x1-e))<=l?l=p:0v&&(0>(m=Math.atan2(t-g.y,e-g.x))&&(m+=2*Math.PI),m=Number(((m/Math.PI*180%360+360)%360).toFixed(12)),g=Number(((p.startAngle/Math.PI*180%360+360)%360).toFixed(12)),0===(v=Number(((p.endAngle/Math.PI*180%360+360)%360).toFixed(12)))&&1=v&&0!==f.y&&!d(f.y)&&(v+=360,mg&&m(m=p.funnelSection).y1&&tm.y6?(a=m.x6+(m.x5-m.x6)/(m.y5-m.y6)*(t-m.y6),m=m.x3+(m.x4-m.x3)/(m.y4-m.y3)*(t-m.y3)):(a=m.x1+(m.x6-m.x1)/(m.y6-m.y1)*(t-m.y1),m=m.x2+(m.x3-m.x2)/(m.y3-m.y2)*(t-m.y2)):(a=m.x1+(m.x4-m.x1)/(m.y4-m.y1)*(t-m.y1),m=m.x2+(m.x3-m.x2)/(m.y3-m.y2)*(t-m.y2)),e>a&&e=p.x1-p.borderThickness/2&&e<=p.x2+p.borderThickness/2&&t>=p.y4-p.borderThickness/2&&t<=p.y1+p.borderThickness/2||Math.abs(p.x2-e+p.x1-e)=p.y1&&t<=p.y4)&&(i.push({dataPoint:f,dataPointIndex:a,dataSeries:this,distance:Math.min(Math.abs(p.x1-e),Math.abs(p.x2-e),Math.abs(p.y2-t),Math.abs(p.y3-t))}),s=!0);break;case"candlestick":(e>=p.x1-p.borderThickness/2&&e<=p.x2+p.borderThickness/2&&t>=p.y2-p.borderThickness/2&&t<=p.y3+p.borderThickness/2||Math.abs(p.x2-e+p.x1-e)=p.y1&&t<=p.y4)&&(i.push({dataPoint:f,dataPointIndex:a,dataSeries:this,distance:Math.min(Math.abs(p.x1-e),Math.abs(p.x2-e),Math.abs(p.y2-t),Math.abs(p.y3-t))}),s=!0);break;case"ohlc":(Math.abs(p.x2-e+p.x1-e)=p.y2&&t<=p.y3||e>=p.x1&&e<=(p.x2+p.x1)/2&&t>=p.y1-p.borderThickness/2&&t<=p.y1+p.borderThickness/2||e>=(p.x1+p.x2)/2&&e<=p.x2&&t>=p.y4-p.borderThickness/2&&t<=p.y4+p.borderThickness/2)&&(i.push({dataPoint:f,dataPointIndex:a,dataSeries:this,distance:Math.min(Math.abs(p.x1-e),Math.abs(p.x2-e),Math.abs(p.y2-t),Math.abs(p.y3-t))}),s=!0)}if(s||1e3h-r&&h+r>=this.dataPoints.length)break;-1===o?(r++,o=1):o=-1}for(e=null,t=0;tp[m].endValue;m++);a=o,(e=m=p[m].startValue&&o<=p[m].endValue)||(e=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:a,label:this.labels[a]?this.labels[a]:null}):"axisX"===this.type&&this.labels[a]?this.labels[a]:le(a,this.valueFormatString,this.chart._cultureInfo),e=new P(this.ctx,{x:0,y:0,maxWidth:l,maxHeight:c,angle:this.labelAngle,text:this.prefix+e+this.suffix,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,cornerRadius:this.labelCornerRadius,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",borderThickness:this.labelBorderThickness,padding:this.labelPadding}),this._labels.push({position:a,textBlock:e,effectiveHeight:null}))}for(m=f,o=this.intervalStartPosition;o<=n;o=parseFloat(1e-12>this.interval?this.logarithmic&&this.equidistantInterval?o*Math.pow(this.logarithmBase,this.interval):o+this.interval:(this.logarithmic&&this.equidistantInterval?o*Math.pow(this.logarithmBase,this.interval):o+this.interval).toFixed(12))){for(;mp[m].endValue;m++);a=o,(e=m=p[m].startValue&&o<=p[m].endValue)||(e=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:a,label:this.labels[a]?this.labels[a]:null}):"axisX"===this.type&&this.labels[a]?this.labels[a]:le(a,this.valueFormatString,this.chart._cultureInfo),e=new P(this.ctx,{x:0,y:0,maxWidth:l,maxHeight:c,angle:this.labelAngle,text:this.prefix+e+this.suffix,textAlign:this.labelTextAlign,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",padding:this.labelPadding}),this._labels.push({position:a,textBlock:e,effectiveHeight:null}))}}else for(this.intervalStartPosition=this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval),n=r(new Date(this.viewportMaximum),this.interval,this.intervalType),m=f,o=this.intervalStartPosition;op[m].endValue;m++);a=e,(e=m=p[m].startValue&&e<=p[m].endValue)||(e=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:new Date(a),label:this.labels[a]?this.labels[a]:null}):"axisX"===this.type&&this.labels[a]?this.labels[a]:se(a,this.valueFormatString,this.chart._cultureInfo),e=new P(this.ctx,{x:0,y:0,maxWidth:l,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxHeight:c,angle:this.labelAngle,text:this.prefix+e+this.suffix,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",padding:this.labelPadding}),this._labels.push({position:a,textBlock:e,effectiveHeight:null,breaksLabelType:void 0}))}for("bottom"===this._position||"top"===this._position?(u=this.logarithmic&&!this.equidistantInterval&&2<=this._labels.length?this.lineCoordinates.width*Math.log(Math.min(this._labels[this._labels.length-1].position/this._labels[this._labels.length-2].position,this._labels[1].position/this._labels[0].position))/Math.log(this.range):this.lineCoordinates.width/(this.logarithmic&&this.equidistantInterval?Math.log(this.range)/Math.log(this.logarithmBase):Math.abs(this.range))*ee[this.intervalType+"Duration"]*this.interval,l="undefined"===typeof this.options.labelMaxWidth?.5*this.chart.width>>0:this.options.labelMaxWidth,this.chart.panEnabled||(c="undefined"===typeof this.options.labelWrap||this.labelWrap?.8*this.chart.height>>0:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||0):2*this.labelPadding))):"left"!==this._position&&"right"!==this._position||(u=this.logarithmic&&!this.equidistantInterval&&2<=this._labels.length?this.lineCoordinates.height*Math.log(Math.min(this._labels[this._labels.length-1].position/this._labels[this._labels.length-2].position,this._labels[1].position/this._labels[0].position))/Math.log(this.range):this.lineCoordinates.height/(this.logarithmic&&this.equidistantInterval?Math.log(this.range)/Math.log(this.logarithmBase):Math.abs(this.range))*ee[this.intervalType+"Duration"]*this.interval,this.chart.panEnabled||(l="undefined"===typeof this.options.labelMaxWidth?.3*this.chart.width>>0:this.options.labelMaxWidth),c="undefined"===typeof this.options.labelWrap||this.labelWrap?.3*this.chart.height>>0:1.5*this.labelFontSize),s=0;sthis.labelAngle?this.labelAngle-=180:270<=this.labelAngle&&360>=this.labelAngle&&(this.labelAngle-=360)),"bottom"===this._position||"top"===this._position)if(l=Math.floor(.9*u),f=0,!this.chart.panEnabled&&1<=this._labels.length){for(this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelMaxWidth=l,this.sessionVariables.labelMaxHeight=c,this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelWrap=this.labelWrap,o=0;of&&(v=o,f=a.width)}for(o=0,o=this.intervalStartPosition>0,m=this.labelFontSize,fp&&(p=s-2*l,s>=2*l&&s<2.2*l?(this.sessionVariables.labelMaxWidth=l,d(this.options.labelFontSize)&&12=2.2*l&&s<2.8*l?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=a,this.sessionVariables.labelFontSize=m):s>=2.8*l&&s<3.2*l?(this.sessionVariables.labelMaxWidth=Math.max(l,f),this.sessionVariables.labelWrap=!0,d(this.options.labelFontSize)&&12=3.2*l&&s<3.6*l?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=a,this.sessionVariables.labelFontSize=this.labelFontSize):s>3.6*l&&s<5*l?(d(this.options.labelFontSize)&&125*l&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=l,this.sessionVariables.labelFontSize=m,this.sessionVariables.labelMaxHeight=c,this.sessionVariables.labelAngle=this.labelAngle));else if(v===o&&(0===v&&f+this._labels[v+1].textBlock.measureText().width-2*l>p||v===this._labels.length-1&&f+this._labels[v-1].textBlock.measureText().width-2*l>p||0p&&f+this._labels[v-1].textBlock.measureText().width-2*l>p))p=0===v?f+this._labels[v+1].textBlock.measureText().width-2*l:f+this._labels[v-1].textBlock.measureText().width-2*l,this.sessionVariables.labelFontSize=d(this.options.labelFontSize)?m:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=a;else if(0===p)for(this.sessionVariables.labelFontSize=d(this.options.labelFontSize)?m:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,s=0;s>0>2*l&&(this.sessionVariables.labelAngle=-25))}else this.options.labelMaxWidth>0>2*l&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>l?-25:this.sessionVariables.labelAngle):d(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=c,this.sessionVariables.labelMaxWidth=l,t&&g.width+t.width>>0>2*l&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=a)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>l?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=c,this.sessionVariables.labelWrap=this.labelWrap);else this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?c:Math.min((s-l*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),s),a=0!=this.labelAngle?(h-(i+e.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):l,this.sessionVariables.labelMaxHeight=this.labelWrap?(h-a*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):1.5*this.labelFontSize,d(this.options.labelWrap)?d(this.options.labelWrap)&&(this.labelWrap&&!d(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:a,this.sessionVariables.labelMaxHeight=c):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=a,this.sessionVariables.labelMaxHeight=Math.max(s,.9*u),this.sessionVariables.labelWrap=this.labelWrap)):(this.options.labelWrap?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:a):(d(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:a,this.sessionVariables.labelWrap=this.labelWrap),this.sessionVariables.labelMaxHeight=c)}for(this.sessionVariables.labelMaxHeight=Math.max(this.sessionVariables.labelMaxHeight,1.5*this.labelFontSize),s=0;s>0:this.options.labelMaxWidth,c="undefined"===typeof this.options.labelWrap||this.labelWrap?.3*this.chart.height>>0:1.5*this.labelFontSize,!this.chart.panEnabled&&1<=this._labels.length){for(this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelMaxWidth=l,this.sessionVariables.labelMaxHeight=c,this.sessionVariables.labelAngle=d(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle,this.sessionVariables.labelWrap=this.labelWrap,o=0;o>0)-2*c>f&&(f=u-2*c,u>=2*c&&u<2.4*c?(d(this.options.labelFontSize)&&12=2.4*c&&u<2.8*c?(this.sessionVariables.labelMaxHeight=s,this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelWrap=!0):u>=2.8*c&&u<3.2*c?(this.sessionVariables.labelMaxHeight=c,this.sessionVariables.labelWrap=!0,d(this.options.labelFontSize)&&12=3.2*c&&u<3.6*c?(this.sessionVariables.labelMaxHeight=s,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelFontSize=this.labelFontSize):u>3.6*c&&u<10*c?(d(this.options.labelFontSize)&&1210*c&&u<50*c&&(d(this.options.labelFontSize)&&12>0:1.5*l.labelFontSize+("object"===typeof l.labelPadding?(l.labelPadding.top||0)+(l.labelPadding.bottom||0):2*l.labelPadding)),"left"!==this._position&&"right"!==this._position||(d(l.options.labelWrap)&&!d(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=y=l.labelWrap?.8*this.chart.width>>0:1.5*l.labelFontSize+("object"===typeof l.labelPadding?(l.labelPadding.top||0)+(l.labelPadding.bottom||0):2*l.labelPadding)),d(l.labelBackgroundColor)&&(l.labelBackgroundColor="#EEEEEE")):(c="bottom"===this._position||"top"===this._position?.9*this.chart.width>>0:.9*this.chart.height>>0,y=d(l.options.labelWrap)||l.labelWrap?"bottom"===this._position||"top"===this._position?.8*this.chart.width>>0:.8*this.chart.height>>0:1.5*l.labelFontSize+("object"===typeof l.labelPadding?(l.labelPadding.top||0)+(l.labelPadding.bottom||0):2*l.labelPadding),d(l.labelBackgroundColor)&&(d(l.startValue)&&0!==l.startValue?l.labelBackgroundColor=W?"transparent":null:l.labelBackgroundColor="#EEEEEE")),e=new P(this.ctx,{x:0,y:0,backgroundColor:l.labelBackgroundColor,borderColor:l.labelBorderColor,borderThickness:l.labelBorderThickness,cornerRadius:l.labelCornerRadius,maxWidth:l.options.labelMaxWidth?l.options.labelMaxWidth:c,maxHeight:y,angle:this.labelAngle,text:l.labelFormatter?l.labelFormatter({chart:this.chart,axis:this,stripLine:l}):l.label,textAlign:l.labelTextAlign,fontSize:l.labelFontSize,fontFamily:l.labelFontFamily,fontWeight:l.labelFontWeight,fontColor:l.labelFontColor||l.color,fontStyle:l.labelFontStyle,textBaseline:"middle",padding:l.labelPadding}),this._stripLineLabels.push({position:l.value,textBlock:e,effectiveHeight:null,stripLine:l})}},L.prototype.createLabelsAndCalculateWidth=function(){var e=0,t=0;this._labels=[],this._stripLineLabels=[];var n=this.chart.isNavigator?0:5;if(this.labelEffectiveWidth=d(this.labelEffectiveWidth)?0:this.labelEffectiveWidth,"left"===this._position||"right"===this._position){for(this.createLabels(),t=0;t=this.viewportMinimum&&this._stripLineLabels[t].stripLine.value<=this.viewportMaximum&&(i=(i=this._stripLineLabels[t].textBlock).measureText(),r=0===this.labelAngle?i.width:i.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+i.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle)),"inside"===this.tickPlacement&&(r+=this.tickLength),"inside"===this.labelPlacement&&(e+=r+n),e<=r&&(e=r),this.stripLineLabelEffectiveWidth=this._stripLineLabels[t].effectiveWidth=r)}return(this.title?this._titleTextBlock.measureText().height+2:0)+e+this.tickLength+n},L.prototype.createLabelsAndCalculateHeight=function(){var e=0;this._labels=[],this._stripLineLabels=[];var t,n=0,i=this.chart.isNavigator?0:5;if(this.labelEffectiveHeight=d(this.labelEffectiveHeight)?0:this.labelEffectiveHeight,"bottom"===this._position||"top"===this._position){for(this.createLabels(),n=0;n=this.viewportMinimum&&this._stripLineLabels[n].stripLine.value<=this.viewportMaximum&&(t=(t=this._stripLineLabels[n].textBlock).measureText(),r=0===this.labelAngle?t.height:t.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+t.height*Math.cos(Math.PI/180*Math.abs(this.labelAngle)),"inside"===this.tickPlacement&&(r+=this.tickLength),"inside"===this.labelPlacement&&(e+=r+i),e<=r&&(e=r),this.stripLineLabelEffectiveHeight=this._stripLineLabels[n].effectiveHeight=r)}return(this.title?this._titleTextBlock.measureText().height+2:0)+e+this.tickLength+i},L.setLayout=function(e,t,n,i,r,a){var o,s,l,c,u=e[0]?e[0].chart:t[0].chart,h=u.isNavigator?0:10,p=u._axes;if(e&&0p[f].viewportMaximum);g++)m[g].endValue=p[f].viewPortMinimum&&(p[f].scaleBreaks.lastBreakIndex=g));var v,y,x,b,w,S=g=0,_=0,C=0,T=0,M=0,k=0,A=s=0;for(m=x=b=w=!1,f=0;fg;){var N=0,j=0,L=0,F=0,B=E=r=0,z=s=0,U=0,V=o=0;if(n&&0l&&e[f].convertPixelToValue(y)>=e[f].viewportMinimum&&e[f].convertPixelToValue(y)<=e[f].viewportMaximum&&(s+=y+c-l-V):0>e[f].labelAngle?v-Sl&&e[f].convertPixelToValue(y)>=e[f].viewportMinimum&&e[f].convertPixelToValue(y)<=e[f].viewportMaximum&&(s=y+_/2-l-V),v-Se[f].labelAngle&&0g;){if(z=F=L=s=B=E=r=R=O=N=U=0,e&&0n[f].labelAngle?Math.max(o,C):0===n[f].labelAngle?Math.max(o,C/2):o),0n[f].chart.height?n[f].chart.height:a.y2),n[f].lineCoordinates.y1=s-(h[f]+n[f].margin+U),n[f].lineCoordinates.y2=s-(h[f]+n[f].margin+U),"inside"===n[f].labelPlacement&&(n[f].lineCoordinates.y1=n[f].lineCoordinates.y1+n[f].labelEffectiveHeight+(u.isNavigator?0:5),n[f].lineCoordinates.y2=n[f].lineCoordinates.y1+n[f].lineThickness/2),"inside"===n[f].tickPlacement&&(n[f].lineCoordinates.y1+=n[f].tickLength,n[f].lineCoordinates.y2=n[f].lineCoordinates.y1+n[f].lineThickness/2),n[f].bounds={x1:o,y1:s-(h[f]+U+n[f].margin),x2:l,y2:c-(U+n[f].margin),width:l-o,height:h[f]},n[f].title&&(n[f]._titleTextBlock.maxWidth=0u.height-Math.max(B,10)?u.height-Math.max(B,10):a.y2-L):a.y2>u.height-Math.max(B,10)?u.height-Math.max(B,10):a.y2,n&&0n[W].labelAngle||0===n[W].labelAngle?l-F:o);if(i&&0u.height-Math.max(B,10)?u.height-Math.max(B,10):a.y2-L):a.y2>u.height-Math.max(B,10)?u.height-Math.max(B,10):a.y2,n&&0n[W].labelAngle||0===n[W].labelAngle?o+z:o);if(i&&0n[a].spacing?0:Math.abs(n[a].spacing/i),this.logarithmic&&(n[a].size=Math.pow(this.logarithmBase,n[a].size))},L.prototype.calculateBreaksInPixels=function(){if(!(this.scaleBreaks&&0>=this.scaleBreaks._appliedBreaks.length)){var e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];e.length&&(this.scaleBreaks.firstBreakIndex=this.scaleBreaks.lastBreakIndex=null);for(var t=0;tthis.conversionParameters.maximum);t++)e[t].endValue=this.conversionParameters.minimum&&(e[t].startPixel=this.convertValueToPixel(e[t].startValue),this.scaleBreaks.lastBreakIndex=t),e[t].endValue<=this.conversionParameters.maximum&&(e[t].endPixel=this.convertValueToPixel(e[t].endValue)))}},L.prototype.renderLabelsTicksAndTitle=function(){var e=this,t=!1,n=0,i=0,r=1,a=0;if(0!==this.labelAngle&&360!==this.labelAngle&&(r=1.2),"undefined"===typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){n=[],r=0!==this.labelAngle&&360!==this.labelAngle?1:1.2;for(var o,s=this.viewportMaximum,l=this.lineCoordinates.width/Math.log(this.range),c=this._labels.length-1;0<=c&&!((d=this._labels[c]).positionthis.viewportMaximum||!(c===this._labels.length-1||othis.lineCoordinates.width*r&&this.labelAutoFit&&(t=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){var u;for(n=[],s=this.viewportMaximum,l=this.lineCoordinates.height/Math.log(this.range),c=this._labels.length-1;0<=c&&!((d=this._labels[c]).positionthis.viewportMaximum||!(c===this._labels.length-1||uthis.lineCoordinates.height*r&&this.labelAutoFit&&(t=!0)}}this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit&&this._labels.sort((function(e,t){return e.position-t.position}));var d,h;c=0;if("bottom"===this._position){for(c=0;cthis.viewportMaximum||(h=this.getPixelCoordinatesOnAxis(d.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,i=1===this.ctx.lineWidth%2?.5+(h.x<<0):h.x<<0,this.ctx.beginPath(),this.ctx.moveTo(i,h.y<<0),this.ctx.lineTo(i,h.y+this.tickLength<<0),this.ctx.stroke()),t&&0!==a++%2&&this.labelAutoFit||(0===d.textBlock.angle?(h.x-=d.textBlock.width/2,h.y="inside"===this.labelPlacement?h.y-(("inside"===this.tickPlacement?this.tickLength:0)+d.textBlock.height-d.textBlock._lineHeight/2+5):h.y+("inside"===this.tickPlacement?0:this.tickLength)+d.textBlock._lineHeight/2+5):0>this.labelAngle?(h.x=h.x-("inside"===this.labelPlacement?0:d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+d.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),h.y="inside"===this.labelPlacement?h.y-("inside"===this.tickPlacement?this.tickLength:0)-5-(d.textBlock.height-d.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):h.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-d.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))):(h.x=h.x-("inside"===this.labelPlacement?d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+d.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),h.y="inside"===this.labelPlacement?h.y-("inside"===this.tickPlacement?this.tickLength:0)-5-d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-(d.textBlock.height-d.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):h.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(d.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))),d.textBlock.x=h.x,d.textBlock.y=h.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",(function(){for(c=0;ce.viewportMaximum)&&(h=e.getPixelCoordinatesOnAxis(d.position),e.tickThickness)){e.ctx.lineWidth=e.tickThickness,e.ctx.strokeStyle=e.tickColor;var t=1===e.ctx.lineWidth%2?.5+(h.x<<0):h.x<<0;e.ctx.save(),e.ctx.beginPath(),e.ctx.moveTo(t,h.y<<0),e.ctx.lineTo(t,h.y-e.tickLength<<0),e.ctx.stroke(),e.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.y2-this._titleTextBlock.height+this._titleTextBlock._lineHeight/2-1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("top"===this._position){for(c=0;cthis.viewportMaximum||(h=this.getPixelCoordinatesOnAxis(d.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,i=1===this.ctx.lineWidth%2?.5+(h.x<<0):h.x<<0,this.ctx.beginPath(),this.ctx.moveTo(i,h.y<<0),this.ctx.lineTo(i,h.y-this.tickLength<<0),this.ctx.stroke()),t&&0!==a++%2&&this.labelAutoFit||(0===d.textBlock.angle?(h.x-=d.textBlock.width/2,h.y="inside"===this.labelPlacement?h.y+d.textBlock._lineHeight/2+("inside"===this.tickPlacement?this.tickLength:0)+5:h.y-(("inside"===this.tickPlacement?0:this.tickLength)+d.textBlock.height-d.textBlock._lineHeight/2)-5):0>this.labelAngle?(h.x=h.x-("inside"===this.labelPlacement?d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+d.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),h.y="inside"===this.labelPlacement?h.y+("inside"===this.tickPlacement?this.tickLength:0)+5-d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+d.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):h.y-("inside"===this.tickPlacement?0:this.tickLength)-5-(d.textBlock.height-d.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)):(h.x=h.x-("inside"===this.labelPlacement?0:d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+d.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),h.y="inside"===this.labelPlacement?h.y+("inside"===this.tickPlacement?this.tickLength:0)+5+d.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):h.y-("inside"===this.tickPlacement?0:this.tickLength)-5-((d.textBlock.height-d.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)+d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),d.textBlock.x=h.x,d.textBlock.y=h.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",(function(){for(c=0;ce.viewportMaximum)&&(h=e.getPixelCoordinatesOnAxis(d.position),e.tickThickness)){e.ctx.lineWidth=e.tickThickness,e.ctx.strokeStyle=e.tickColor;var t=1===e.ctx.lineWidth%2?.5+(h.x<<0):h.x<<0;e.ctx.save(),e.ctx.beginPath(),e.ctx.moveTo(t,h.y<<0),e.ctx.lineTo(t,h.y+e.tickLength<<0),e.ctx.stroke(),e.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=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("left"===this._position){for(c=0;cthis.viewportMaximum||(h=this.getPixelCoordinatesOnAxis(d.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,i=1===this.ctx.lineWidth%2?.5+(h.y<<0):h.y<<0,this.ctx.beginPath(),this.ctx.moveTo(h.x<<0,i),this.ctx.lineTo(h.x-this.tickLength<<0,i),this.ctx.stroke()),t&&0!==a++%2&&this.labelAutoFit||(0===this.labelAngle?(d.textBlock.y=h.y-d.textBlock.topPadding,d.textBlock.x="inside"===this.labelPlacement?h.x+("inside"===this.tickPlacement?this.tickLength:0)+5:h.x-d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):0>this.labelAngle?(d.textBlock.y=("inside"===this.labelPlacement?h.y:h.y-d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-d.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),d.textBlock.x="inside"===this.labelPlacement?h.x-d.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:h.x-d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(d.textBlock.height-d.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):(d.textBlock.y=("inside"===this.labelPlacement?h.y:h.y-d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-d.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),d.textBlock.x="inside"===this.labelPlacement?h.x+(d.textBlock.height-d.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:h.x-d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-d.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(c=0;ce.viewportMaximum)&&(h=e.getPixelCoordinatesOnAxis(d.position),e.tickThickness)){e.ctx.lineWidth=e.tickThickness,e.ctx.strokeStyle=e.tickColor;var t=1===e.ctx.lineWidth%2?.5+(h.y<<0):h.y<<0;e.ctx.save(),e.ctx.beginPath(),e.ctx.moveTo(h.x<<0,t),e.ctx.lineTo(h.x+e.tickLength<<0,t),e.ctx.stroke(),e.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(c=0;cthis.viewportMaximum||(h=this.getPixelCoordinatesOnAxis(d.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,i=1===this.ctx.lineWidth%2?.5+(h.y<<0):h.y<<0,this.ctx.beginPath(),this.ctx.moveTo(h.x<<0,i),this.ctx.lineTo(h.x+this.tickLength<<0,i),this.ctx.stroke()),t&&0!==a++%2&&this.labelAutoFit||(0===this.labelAngle?(d.textBlock.y=h.y-d.textBlock.topPadding,d.textBlock.x="inside"===this.labelPlacement?h.x-d.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:h.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(d.textBlock.y=("inside"===this.labelPlacement?h.y-d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):h.y)-d.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),d.textBlock.x="inside"===this.labelPlacement?h.x-d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(d.textBlock.height-d.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:h.x-d.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(d.textBlock.y=("inside"===this.labelPlacement?h.y-d.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):h.y)-d.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),d.textBlock.x="inside"===this.labelPlacement?h.x-d.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-d.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:h.x+(d.textBlock.height-d.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(c=0;ce.viewportMaximum)&&(h=e.getPixelCoordinatesOnAxis(d.position),e.tickThickness)){e.ctx.lineWidth=e.tickThickness,e.ctx.strokeStyle=e.tickColor;var t=1===e.ctx.lineWidth%2?.5+(h.y<<0):h.y<<0;e.ctx.save(),e.ctx.beginPath(),e.ctx.moveTo(h.x<<0,t),e.ctx.lineTo(h.x-e.tickLength<<0,t),e.ctx.stroke(),e.ctx.restore()}}),this),this.title&&(this._titleTextBlock.measureText(),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))}if(a=0,"inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",(function(){for(c=0;ce.viewportMaximum||t&&0!==a++%2&&e.labelAutoFit||(e.ctx.save(),e.ctx.beginPath(),d.textBlock.render(!0),e.ctx.restore())}),this);else for(c=0;cthis.viewportMaximum||t&&0!==a++%2&&this.labelAutoFit||d.textBlock.render(!0)},L.prototype.renderInterlacedColors=function(){var e,t,n=this.chart.plotArea.ctx,i=this.chart.plotArea,r=0;if(e=!0,"bottom"!==this._position&&"top"!==this._position||!this.interlacedColor){if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(n.fillStyle=this.interlacedColor,r=0;rthis._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[r+1].position),n.fillRect(i.x1,Math.min(t.y,e.y),Math.abs(i.x1-i.x2),Math.abs(e.y-t.y)),e=!1):e=!0}else for(n.fillStyle=this.interlacedColor,r=0;rthis._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[r+1].position),n.fillRect(Math.min(t.x,e.x),i.y1,Math.abs(t.x-e.x),Math.abs(i.y1-i.y2)),e=!1):e=!0;n.beginPath()},L.prototype.renderStripLinesOfThicknessType=function(e){if(this.stripLines&&0this.viewportMaximum||d(h.value)||isNaN(this.range))||"value"===e&&(h.startValue<=this.viewportMinimum&&h.endValue<=this.viewportMinimum||h.startValue>=this.viewportMaximum&&h.endValue>=this.viewportMaximum||d(h.startValue)||d(h.endValue)||isNaN(this.range))||l.push(h))}for(r=0;rthis.viewportMaximum||isNaN(this.range)))if(n=this.getPixelCoordinatesOnAxis(t.position),"outside"===t.stripLine.labelPlacement){if(h&&(this.ctx.strokeStyle=h.color,this.ctx.lineWidth="pixel"===h._thicknessType?h.thickness:this.tickThickness,d(h.opacity)||"pixel"!==h._thicknessType||(s=h.ctx.globalAlpha,h.ctx.globalAlpha=h.opacity)),"bottom"===this._position){var p=1===this.ctx.lineWidth%2?.5+(n.x<<0):n.x<<0;this.ctx.beginPath(),this.ctx.moveTo(p,n.y<<0),this.ctx.lineTo(p,n.y+this.tickLength<<0),this.ctx.stroke(),0===this.labelAngle?(n.x-=t.textBlock.width/2,n.y+=this.tickLength+t.textBlock.fontSize/2+5):(n.x-=(0>this.labelAngle?t.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)-t.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),n.y+=this.tickLength+5+(0>this.labelAngle?Math.abs(t.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-t.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle)):Math.abs(t.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle))))}else"top"===this._position?(p=1===this.ctx.lineWidth%2?.5+(n.x<<0):n.x<<0,this.ctx.beginPath(),this.ctx.moveTo(p,n.y<<0),this.ctx.lineTo(p,n.y-this.tickLength<<0),this.ctx.stroke(),0===this.labelAngle?(n.x-=t.textBlock.width/2,n.y-=this.tickLength+t.textBlock.height-t.textBlock.fontSize/2):(n.x-=(0this.chart.plotArea.x1?d(h.startValue)?n.x-=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.x-=t.textBlock.height/2-t.textBlock.fontSize/2:(t.textBlock.angle=90,d(h.startValue)?n.x+=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.x+=t.textBlock.height/2-t.textBlock.fontSize/2),n.y=-90===t.textBlock.angle?"near"===t.stripLine.labelAlign?this.chart.plotArea.y2-3:"center"===t.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+t.textBlock.width)/2:this.chart.plotArea.y1+t.textBlock.width+3:"near"===t.stripLine.labelAlign?this.chart.plotArea.y2-t.textBlock.width-3:"center"===t.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-t.textBlock.width)/2:this.chart.plotArea.y1+3):"top"===this._position?(t.textBlock.maxWidth=this.options.stripLines[r].labelMaxWidth?this.options.stripLines[r].labelMaxWidth:this.chart.plotArea.height-3,t.textBlock.measureText(),n.x-t.textBlock.height-h.thickness/2>this.chart.plotArea.x1?d(h.startValue)?n.x-=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.x-=t.textBlock.height/2-t.textBlock.fontSize/2:(t.textBlock.angle=90,d(h.startValue)?n.x+=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.x+=t.textBlock.height/2-t.textBlock.fontSize/2),n.y=-90===t.textBlock.angle?"near"===t.stripLine.labelAlign?this.chart.plotArea.y1+t.textBlock.width+3:"center"===t.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+t.textBlock.width)/2:this.chart.plotArea.y2-3:"near"===t.stripLine.labelAlign?this.chart.plotArea.y1+3:"center"===t.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-t.textBlock.width)/2:this.chart.plotArea.y2-t.textBlock.width-3):"left"===this._position?(t.textBlock.maxWidth=this.options.stripLines[r].labelMaxWidth?this.options.stripLines[r].labelMaxWidth:this.chart.plotArea.width-3,t.textBlock.angle=0,t.textBlock.measureText(),n.y-t.textBlock.height-h.thickness/2>this.chart.plotArea.y1?d(h.startValue)?n.y-=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.y-=t.textBlock.height/2-t.textBlock.fontSize/2:d(h.startValue)?n.y+=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.y+=t.textBlock.height/2-t.textBlock.fontSize+3,n.x="near"===t.stripLine.labelAlign?this.chart.plotArea.x1+3:"center"===t.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-t.textBlock.width/2:this.chart.plotArea.x2-t.textBlock.width-3):"right"===this._position&&(t.textBlock.maxWidth=this.options.stripLines[r].labelMaxWidth?this.options.stripLines[r].labelMaxWidth:this.chart.plotArea.width-3,t.textBlock.angle=0,t.textBlock.measureText(),n.y-t.textBlock.height-h.thickness/2>this.chart.plotArea.y1?d(h.startValue)?n.y-=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.y-=t.textBlock.height/2-t.textBlock.fontSize/2:d(h.startValue)?n.y+=t.textBlock.height-t.textBlock.fontSize/2+h.thickness/2:n.y-=t.textBlock.height/2-t.textBlock.fontSize/2+3,n.x="near"===t.stripLine.labelAlign?this.chart.plotArea.x2-t.textBlock.width-3:"center"===t.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-t.textBlock.width/2:this.chart.plotArea.x1+3),t.textBlock.x=n.x,t.textBlock.y=n.y,c.push(t));if(!u){for(n=!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(),r=0;rthis.viewportMaximum||isNaN(this.range)||e[t].render(this.maskCtx);this.maskCtx.restore()}},L.prototype.renderCrosshair=function(e,t){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(e,t)},L.prototype.showCrosshair=function(e){d(e)||ethis.viewportMaximum||("top"===this._position||"bottom"===this._position?this.crosshair.render(this.convertValueToPixel(e),null,e):this.crosshair.render(null,this.convertValueToPixel(e),e))},L.prototype.renderGrid=function(){if(this.gridThickness&&0this.viewportMaximum||this._labels[i].breaksLabelType||(e.beginPath(),t=this.getPixelCoordinatesOnAxis(this._labels[i].position),t=1===e.lineWidth%2?.5+(t.x<<0):t.x<<0,e.moveTo(t,n.y1<<0),e.lineTo(t,n.y2<<0),e.stroke());else if("left"===this._position||"right"===this._position)for(var i=0;ithis.viewportMaximum||this._labels[i].breaksLabelType||(e.beginPath(),t=this.getPixelCoordinatesOnAxis(this._labels[i].position),t=1===e.lineWidth%2?.5+(t.y<<0):t.y<<0,e.moveTo(n.x1<<0,t),e.lineTo(n.x2<<0,t),e.stroke());e.restore()}},L.prototype.renderAxisLine=function(){var e,t,n=this.chart.ctx,i=W?this.chart._preRenderCtx:n,r=Math.ceil(this.tickThickness/(this.reversed?-2:2)),a=Math.ceil(this.tickThickness/(this.reversed?2:-2));if(i.save(),"bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(e=this.lineCoordinates.x2,t=this.lineCoordinates.x1):(e=this.lineCoordinates.x1,t=this.lineCoordinates.x2),i.lineWidth=this.lineThickness,i.strokeStyle=this.lineColor?this.lineColor:"black",i.setLineDash&&i.setLineDash(m(this.lineDashType,this.lineThickness));var o=1===this.lineThickness%2?.5+(this.lineCoordinates.y1<<0):this.lineCoordinates.y1<<0;if(i.beginPath(),this.scaleBreaks&&!d(this.scaleBreaks.firstBreakIndex))if(d(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+a;else for(var s=this.scaleBreaks.firstBreakIndex;s<=this.scaleBreaks.lastBreakIndex;s++)i.moveTo(e,o),i.lineTo(this.scaleBreaks._appliedBreaks[s].startPixel+r,o),e=this.scaleBreaks._appliedBreaks[s].endPixel+a;e&&(i.moveTo(e,o),i.lineTo(t,o)),i.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){if(this.reversed?(e=this.lineCoordinates.y1,t=this.lineCoordinates.y2):(e=this.lineCoordinates.y2,t=this.lineCoordinates.y1),i.lineWidth=this.lineThickness,i.strokeStyle=this.lineColor,i.setLineDash&&i.setLineDash(m(this.lineDashType,this.lineThickness)),o=1===this.lineThickness%2?.5+(this.lineCoordinates.x1<<0):this.lineCoordinates.x1<<0,i.beginPath(),this.scaleBreaks&&!d(this.scaleBreaks.firstBreakIndex))if(d(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+r;else for(s=this.scaleBreaks.firstBreakIndex;s<=this.scaleBreaks.lastBreakIndex;s++)i.moveTo(o,e),i.lineTo(o,this.scaleBreaks._appliedBreaks[s].startPixel+a),e=this.scaleBreaks._appliedBreaks[s].endPixel+r;e&&(i.moveTo(o,e),i.lineTo(o,t)),i.stroke()}W&&(n.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),i.clearRect(0,0,this.chart.width,this.chart.height)),i.restore()},L.prototype.getPixelCoordinatesOnAxis=function(e){var t={};return"bottom"!==this._position&&"top"!==this._position||(t.x=this.convertValueToPixel(e),t.y=this.lineCoordinates.y1),"left"!==this._position&&"right"!==this._position||(t.y=this.convertValueToPixel(e),t.x=this.lineCoordinates.x2),t},L.prototype.convertPixelToValue=function(e){if("undefined"===typeof e)return null;var t,n=0,i=0,r=(n=!0,this.scaleBreaks?this.scaleBreaks._appliedBreaks:[]);i="number"===typeof e?e:"left"===this._position||"right"===this._position?e.y:e.x;if(this.logarithmic){if(e=t=Math.pow(this.logarithmBase,(i-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit),i<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed){for(i=0;ir[i].startValue/this.conversionParameters.minimum))break;if((t/=r[i].startValue/this.conversionParameters.minimum)r[i].startValue/r[i-1].endValue))break;if((t/=r[i].startValue/r[i-1].endValue)this.conversionParameters.minimum))if(n)if(r[i].endValue>this.conversionParameters.minimum){if(1r[i].startValue){e=Math.pow(r[i].endValue/r[i].startValue,Math.log(t)/Math.log(r[i].size));break}e*=r[i].startValue/this.conversionParameters.minimum*Math.pow(r[i].size,Math.log(r[i].startValue/this.conversionParameters.minimum)/Math.log(r[i].endValue/r[i].startValue))*t,t*=Math.pow(r[i].size,Math.log(this.conversionParameters.minimum/r[i].startValue)/Math.log(r[i].endValue/r[i].startValue)),n=!1}else{if(!(t1/r[i].size){e*=Math.pow(r[i].endValue/r[i].startValue,1>=r[i].size?1:Math.log(t)/Math.log(r[i].size))*t;break}e/=r[i].endValue/r[i].startValue/r[i].size,t*=r[i].size,n=!1}else{if(!(t1/r[i].size){e*=Math.pow(r[i].endValue/r[i].startValue,1>=r[i].size?1:Math.log(t)/Math.log(r[i].size))*t;break}e/=r[i].endValue/r[i].startValue/r[i].size,t*=r[i].size}n=e*this.viewportMinimum}else{if(e=t=(i-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit,i<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed){for(i=0;i=r[i].size?0:t*(r[i].endValue-r[i].startValue)/r[i].size;break}e+=r[i].endValue-this.conversionParameters.minimum-r[i].size*(r[i].endValue-this.conversionParameters.minimum)/(r[i].endValue-r[i].startValue),t-=r[i].size*(r[i].endValue-this.conversionParameters.minimum)/(r[i].endValue-r[i].startValue),n=!1}else{if(!(t>r[i].startValue-this.conversionParameters.minimum))break;if((t-=r[i].startValue-this.conversionParameters.minimum)r[i].startValue-r[i-1].endValue))break;if((t-=r[i].startValue-r[i-1].endValue)this.conversionParameters.minimum))if(n)if(r[i].endValue>this.conversionParameters.minimum){if(r[i].size&&this.conversionParameters.minimum+t*(r[i].endValue-r[i].startValue)/r[i].size>r[i].startValue){e=0>=r[i].size?0:t*(r[i].endValue-r[i].startValue)/r[i].size;break}e+=r[i].startValue-this.conversionParameters.minimum+r[i].size*(this.conversionParameters.minimum-r[i].startValue)/(r[i].endValue-r[i].startValue),t+=r[i].size*(this.conversionParameters.minimum-r[i].startValue)/(r[i].endValue-r[i].startValue),n=!1}else{if(!(t-1*r[i].size){e+=(r[i].endValue-r[i].startValue)*(0===r[i].size?1:t/r[i].size)+t;break}e-=r[i].endValue-r[i].startValue-r[i].size,t+=r[i].size,n=!1}else{if(!(t-1*r[i].size){e+=(r[i].endValue-r[i].startValue)*(0===r[i].size?1:t/r[i].size)+t;break}e-=r[i].endValue-r[i].startValue-r[i].size,t+=r[i].size}n=this.conversionParameters.minimum+e}return n},L.prototype.convertValueToPixel=function(e){return e=this.getApparentDifference(this.conversionParameters.minimum,e,e),this.logarithmic?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*Math.log(e/this.conversionParameters.minimum)/this.conversionParameters.lnLogarithmBase+.5<<0:"axisX"===this.type?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(e-this.conversionParameters.minimum)+.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(e-this.conversionParameters.minimum)+.5},L.prototype.getApparentDifference=function(e,t,n,i){var r=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];if(this.logarithmic){n=d(n)?t/e:n;for(var a=0;ar[a].endValue||(e<=r[a].startValue&&t>=r[a].endValue?n=n/r[a].endValue*r[a].startValue*r[a].size:e>=r[a].startValue&&t>=r[a].endValue?n=n/r[a].endValue*e*Math.pow(r[a].size,Math.log(r[a].endValue/e)/Math.log(r[a].endValue/r[a].startValue)):e<=r[a].startValue&&t<=r[a].endValue?n=n/t*r[a].startValue*Math.pow(r[a].size,Math.log(t/r[a].startValue)/Math.log(r[a].endValue/r[a].startValue)):!i&&e>r[a].startValue&&tr[a].endValue||(e<=r[a].startValue&&t>=r[a].endValue?n=n-r[a].endValue+r[a].startValue+r[a].size:e>r[a].startValue&&t>=r[a].endValue?n=n-r[a].endValue+e+r[a].size*(r[a].endValue-e)/(r[a].endValue-r[a].startValue):e<=r[a].startValue&&tr[a].startValue&&te[r].endValue||(this.viewportMinimum>=e[r].startValue&&this.viewportMaximum<=e[r].endValue?n=0:this.viewportMinimum<=e[r].startValue&&this.viewportMaximum>=e[r].endValue?(i=i/e[r].endValue*e[r].startValue,n=0e[r].startValue&&this.viewportMaximum>=e[r].endValue?(i=i/e[r].endValue*this.viewportMinimum,n=0e[r].endValue||(this.viewportMinimum>=e[r].startValue&&this.viewportMaximum<=e[r].endValue?n=0:this.viewportMinimum<=e[r].startValue&&this.viewportMaximum>=e[r].endValue?(i=i-e[r].endValue+e[r].startValue,n=0e[r].startValue&&this.viewportMaximum>=e[r].endValue?(i=i-e[r].endValue+this.viewportMinimum,n=0this.maxWidth?8:6);var r,a,o;e=Math.max(i,Math.floor(this.maxWidth/e)),i=0;if(!d(this.options.viewportMinimum)&&!d(this.options.viewportMaximum)&&this.options.viewportMinimum>=this.options.viewportMaximum&&(this.viewportMinimum=this.viewportMaximum=null),!d(this.options.viewportMinimum)||d(this.sessionVariables.newViewportMinimum)||isNaN(this.sessionVariables.newViewportMinimum)?(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&(this.viewportMinimum=this.minimum):this.viewportMinimum=this.sessionVariables.newViewportMinimum,!d(this.options.viewportMaximum)||d(this.sessionVariables.newViewportMaximum)||isNaN(this.sessionVariables.newViewportMaximum)?(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&(this.viewportMaximum=this.maximum):this.viewportMaximum=this.sessionVariables.newViewportMaximum,this.scaleBreaks)for(i=0;i=this.scaleBreaks._appliedBreaks[i].startValue||!d(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[i].startValue||!d(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[i].startValue)&&(!d(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[i].endValue||!d(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[i].endValue||!d(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[i].endValue)){this.scaleBreaks._appliedBreaks.splice(i,1);break}if("axisX"===this.type){if(this.dataSeries&&0a?(i=Math.min(.01*Math.abs(this.getApparentDifference(a,r,null,!0)),5),0<=a?r=a-i:a=isFinite(r)?r+i:0):(i=Math.min(.01*Math.abs(this.getApparentDifference(r,a,null,!0)),.05),0!==a&&(a+=i),0!==r&&(r-=i)),o=1/0!==this.dataInfo.minDiff?this.dataInfo.minDiff:1a&&(a=0));i=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?r:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?a:this.viewportMaximum,null,!0),"axisX"===this.type&&n?(this.valueType="dateTime",this.intervalType||(i/1<=e?(this.interval=1,this.intervalType="millisecond"):i/2<=e?(this.interval=2,this.intervalType="millisecond"):i/5<=e?(this.interval=5,this.intervalType="millisecond"):i/10<=e?(this.interval=10,this.intervalType="millisecond"):i/20<=e?(this.interval=20,this.intervalType="millisecond"):i/50<=e?(this.interval=50,this.intervalType="millisecond"):i/100<=e?(this.interval=100,this.intervalType="millisecond"):i/200<=e?(this.interval=200,this.intervalType="millisecond"):i/250<=e?(this.interval=250,this.intervalType="millisecond"):i/300<=e?(this.interval=300,this.intervalType="millisecond"):i/400<=e?(this.interval=400,this.intervalType="millisecond"):i/500<=e?(this.interval=500,this.intervalType="millisecond"):i/(1*ee.secondDuration)<=e?(this.interval=1,this.intervalType="second"):i/(2*ee.secondDuration)<=e?(this.interval=2,this.intervalType="second"):i/(5*ee.secondDuration)<=e?(this.interval=5,this.intervalType="second"):i/(10*ee.secondDuration)<=e?(this.interval=10,this.intervalType="second"):i/(15*ee.secondDuration)<=e?(this.interval=15,this.intervalType="second"):i/(20*ee.secondDuration)<=e?(this.interval=20,this.intervalType="second"):i/(30*ee.secondDuration)<=e?(this.interval=30,this.intervalType="second"):i/(1*ee.minuteDuration)<=e?(this.interval=1,this.intervalType="minute"):i/(2*ee.minuteDuration)<=e?(this.interval=2,this.intervalType="minute"):i/(5*ee.minuteDuration)<=e?(this.interval=5,this.intervalType="minute"):i/(10*ee.minuteDuration)<=e?(this.interval=10,this.intervalType="minute"):i/(15*ee.minuteDuration)<=e?(this.interval=15,this.intervalType="minute"):i/(20*ee.minuteDuration)<=e?(this.interval=20,this.intervalType="minute"):i/(30*ee.minuteDuration)<=e?(this.interval=30,this.intervalType="minute"):i/(1*ee.hourDuration)<=e?(this.interval=1,this.intervalType="hour"):i/(2*ee.hourDuration)<=e?(this.interval=2,this.intervalType="hour"):i/(3*ee.hourDuration)<=e?(this.interval=3,this.intervalType="hour"):i/(6*ee.hourDuration)<=e?(this.interval=6,this.intervalType="hour"):i/(1*ee.dayDuration)<=e?(this.interval=1,this.intervalType="day"):i/(2*ee.dayDuration)<=e?(this.interval=2,this.intervalType="day"):i/(4*ee.dayDuration)<=e?(this.interval=4,this.intervalType="day"):i/(1*ee.weekDuration)<=e?(this.interval=1,this.intervalType="week"):i/(2*ee.weekDuration)<=e?(this.interval=2,this.intervalType="week"):i/(3*ee.weekDuration)<=e?(this.interval=3,this.intervalType="week"):i/(1*ee.monthDuration)<=e?(this.interval=1,this.intervalType="month"):i/(2*ee.monthDuration)<=e?(this.interval=2,this.intervalType="month"):i/(3*ee.monthDuration)<=e?(this.interval=3,this.intervalType="month"):i/(6*ee.monthDuration)<=e?(this.interval=6,this.intervalType="month"):(this.interval=i/(1*ee.yearDuration)<=e?1:i/(2*ee.yearDuration)<=e?2:i/(4*ee.yearDuration)<=e?4:Math.floor(L.getNiceNumber(i/(e-1),!0)/ee.yearDuration),this.intervalType="year")),(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&(this.viewportMinimum=r-o/2),(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&(this.viewportMaximum=a+o/2),t?this.autoValueFormatString="MMM DD YYYY HH:mm":"year"===this.intervalType?this.autoValueFormatString="YYYY":"month"===this.intervalType?this.autoValueFormatString="MMM YYYY":"week"===this.intervalType||"day"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"hour"===this.intervalType||"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)):(this.intervalType="number",i=L.getNiceNumber(i,!1),this.interval=this.options&&0a?(i=Math.min(.01*Math.abs(this.getApparentDifference(a,r,null,!0)),5),0<=a?r=a-i:a=isFinite(r)?r+i:0):(i=Math.min(.01*Math.abs(this.getApparentDifference(r,a,null,!0)),.05),0!==a&&(a+=i),0!==r&&(r-=i)):(a="undefined"===typeof this.options.interval?-1/0:this.options.interval,r="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:1/0),o=1/0!==this.dataInfo.minDiff?this.dataInfo.minDiff:1a&&(a=0)),Math.abs(this.getApparentDifference(r,a,null,!0)),"axisX"===this.type&&n?(this.valueType="dateTime",(null===this.minimum||isNaN(this.minimum))&&(this.minimum=r-o/2,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?1/0:this.sessionVariables.viewportMinimum)),(null===this.maximum||isNaN(this.maximum))&&(this.maximum=a+o/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-1/0:this.sessionVariables.viewportMaximum))):(this.intervalType=this.valueType="number",null===this.minimum&&(this.minimum="axisX"===this.type?r-o/2:Math.floor(r/this.interval)*this.interval,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?1/0:this.sessionVariables.viewportMinimum)),null===this.maximum&&(this.maximum="axisX"===this.type?a+o/2:Math.ceil(a/this.interval)*this.interval,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-1/0:this.sessionVariables.viewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?this.maximum+=10:0===this.options.maximum&&(this.minimum-=10)))),d(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum)),d(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum)),this.range=this.viewportMaximum-this.viewportMinimum,this.intervalStartPosition="axisX"===this.type&&n?this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval):Math.floor((this.viewportMinimum+.2*this.interval)/this.interval)*this.interval,this.valueFormatString||(this.valueFormatString=L.generateValueFormatString(this.range,2))}},L.prototype.calculateLogarithmicAxisParameters=function(){var e,t=this.chart.layoutManager.getFreeSpace(),n=Math.log(this.logarithmBase);"bottom"===this._position||"top"===this._position?(this.maxWidth=t.width,this.maxHeight=t.height):(this.maxWidth=t.height,this.maxHeight=t.width);var i,r,a,o;t="axisX"===this.type?500>this.maxWidth?7:Math.max(7,Math.floor(this.maxWidth/100)):Math.max(Math.floor(this.maxWidth/50),3);if(o=1,(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&(this.viewportMinimum=this.minimum),(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&(this.viewportMaximum=this.maximum),this.scaleBreaks)for(o=0;o=this.scaleBreaks._appliedBreaks[o].startValue||!d(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[o].startValue||!d(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[o].startValue)&&(!d(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[o].endValue||!d(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[o].endValue||!d(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[o].endValue)){this.scaleBreaks._appliedBreaks.splice(o,1);break}"axisX"===this.type?(i=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,1===(r=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax)/i&&(r*=o=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?.4:this.options.interval),i/=o),a=1/0!==this.dataInfo.minDiff?this.dataInfo.minDiff:r/i>this.logarithmBase?r/i*Math.pow(this.logarithmBase,.5):this.logarithmBase):"axisY"===this.type&&(i=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,r=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=i&&!isFinite(r)?(r="undefined"===typeof this.options.interval?0:this.options.interval,i=1):0>=i?i=r:isFinite(r)||(r=i),1===i&&1===r?(r*=this.logarithmBase-1/this.logarithmBase,i=1):1===r/i?(r*=o=Math.min(r*Math.pow(this.logarithmBase,.01),Math.pow(this.logarithmBase,5)),i/=o):i>r?(o=Math.min(i/r*Math.pow(this.logarithmBase,.01),Math.pow(this.logarithmBase,5)),1<=r?i=r/o:r=i*o):(o=Math.min(r/i*Math.pow(this.logarithmBase,.01),Math.pow(this.logarithmBase,.04)),1!==r&&(r*=o),1!==i&&(i/=o)),a=1/0!==this.dataInfo.minDiff?this.dataInfo.minDiff:r/i>this.logarithmBase?r/i*Math.pow(this.logarithmBase,.5):this.logarithmBase,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&1r&&(r=1)),o=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?r:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===this.viewportMinimum?i:this.viewportMinimum);var s=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?r:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?i:this.viewportMinimum);if(this.intervalType="number",o=Math.pow(this.logarithmBase,L.getNiceNumber(Math.abs(Math.log(o)/n),!1)),this.options&&0this.logarithmBase?r/i*Math.pow(this.logarithmBase,.5):this.logarithmBase):"axisY"===this.type&&(i=null!==this.minimum?this.minimum:this.dataInfo.min,r=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(i)||isFinite(r)?1===i&&1===r?(r*=this.logarithmBase,i/=this.logarithmBase):1===r/i?(r*=o=Math.pow(this.logarithmBase,this.interval),i/=o):i>r?(o=Math.min(i/r*.01,5),1<=r?i=r/o:r=i*o):(o=Math.min(r/i*Math.pow(this.logarithmBase,.01),Math.pow(this.logarithmBase,.04)),1!==r&&(r*=o),1!==i&&(i/=o)):(r="undefined"===typeof this.options.interval?0:this.options.interval,i=1),a=1/0!==this.dataInfo.minDiff?this.dataInfo.minDiff:r/i>this.logarithmBase?r/i*Math.pow(this.logarithmBase,.5):this.logarithmBase,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&1r&&(r=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?i/Math.sqrt(a):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(i)/n/this.interval)),d(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?1/0: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?1/0:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum="axisX"===this.type?r*Math.sqrt(a):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(r)/n/this.interval)),d(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?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||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),i=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(n*this.interval)+.2)*this.interval),this.range=this.viewportMaximum/this.viewportMinimum,this.noTicks=t,!this.options.interval&&this.rangethis.viewportMaximum||3>t?2:3)){for(n=Math.floor(this.viewportMinimum/e+.5)*e;nthis.interval&&(this.interval=e,i=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(n*this.interval)+.2)*this.interval))),this.equidistantInterval=!0,this.intervalStartPosition=i;if(!this.valueFormatString&&(this.valueFormatString="#,##0.##",1>this.viewportMinimum)&&(n=Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2,!isNaN(n)&&isFinite(n)||(n=2),2e&&(i+=Math.floor(Math.abs(Math.log(e)/Math.LN10)),isNaN(i)||!isFinite(i))&&(i=t);for(var r=0;rn?1>=i?1:5>=i?5:10:Math.max(Math.floor(i),1);return Number(-20>n?i*Math.pow(10,n):(i*Math.pow(10,n)).toFixed(20))},L.getNiceNumber=function(e,t){var n=Math.floor(Math.log(e)/Math.LN10),i=e/Math.pow(10,n);i=t?1.5>i?1:3>i?2:7>i?5:10:1>=i?1:2>=i?2:5>=i?5:10;return Number(-20>n?i*Math.pow(10,n):(i*Math.pow(10,n)).toFixed(20))},L.prototype.getLabelStartPoint=function(){var e=ee[this.intervalType+"Duration"]*this.interval;e=new Date(Math.floor(this.viewportMinimum/e)*e);return"millisecond"!==this.intervalType&&("second"===this.intervalType?0=e||"bottom"===this.scaleBreaks.parent._position&&0<=e)this.ctx.lineTo(u,a),this.ctx.lineTo(r,a),this.ctx.lineTo(r,d);else if("wavy"===this.type){o=u,i=.5,l=(a-(s=d))/e/3;for(var p=0;p=e||"right"===this.scaleBreaks.parent._position&&0<=e)this.ctx.lineTo(r,d),this.ctx.lineTo(r,a),this.ctx.lineTo(u,a);else if("wavy"===this.type){for(s=d,i=.5,l=(r-(o=u))/e/3,p=0;p=t.axisY[i].viewportMinimum&&e<=t.axisY[i].viewportMaximum?e:null);else if("top"===this.parent._position)for(i=0;i=t.axisY2[i].viewportMinimum&&e<=t.axisY2[i].viewportMaximum?e:null);else if("left"===this.parent._position)for(i=0;i=t.axisX[i].viewportMinimum&&e<=t.axisX[i].viewportMaximum?e:null);else if("right"===this.parent._position)for(i=0;i=t.axisX2[i].viewportMinimum&&e<=t.axisX2[i].viewportMaximum?e:null)}else if("bottom"===this.parent._position)for(i=0;i=t.axisX[i].viewportMinimum&&e<=t.axisX[i].viewportMaximum?e:null);else if("top"===this.parent._position)for(i=0;i=t.axisX2[i].viewportMinimum&&e<=t.axisX2[i].viewportMaximum?e:null);else if("left"===this.parent._position)for(i=0;i=t.axisY[i].viewportMinimum&&e<=t.axisY[i].viewportMaximum?e:null);else if("right"===this.parent._position)for(i=0;i=t.axisY2[i].viewportMinimum&&e<=t.axisY2[i].viewportMaximum?e:null);for(i=0;i=t.axisX[i].viewportMinimum&&e<=t.axisX[i].viewportMaximum?(t.axisX[i].showCrosshair(e),t.axisX[i].sessionVariables.crosshairValue=t.axisX[i].crosshair._updatedValue=e,this===t.axisX[i].crosshair&&(n=!0)):void 0!==e&&(t.axisX[i].sessionVariables.crosshairValue=t.axisX[i].crosshair._updatedValue=null));for(i=0;i=t.axisX2[i].viewportMinimum&&e<=t.axisX2[i].viewportMaximum?(t.axisX2[i].showCrosshair(e),t.axisX2[i].sessionVariables.crosshairValue=t.axisX2[i].crosshair._updatedValue=e,this===t.axisX2[i].crosshair&&(n=!0)):void 0!==e&&(t.axisX2[i].sessionVariables.crosshairValue=t.axisX2[i].crosshair._updatedValue=null));for(i=0;i=t.axisY[i].viewportMinimum&&e<=t.axisY[i].viewportMaximum?(t.axisY[i].showCrosshair(e),t.axisY[i].sessionVariables.crosshairValue=t.axisY[i].crosshair._updatedValue=e,this===t.axisY[i].crosshair&&(n=!0)):void 0!==e&&(t.axisY[i].sessionVariables.crosshairValue=t.axisY[i].crosshair._updatedValue=null));for(i=0;i=t.axisY2[i].viewportMinimum&&e<=t.axisY2[i].viewportMaximum?(t.axisY2[i].showCrosshair(e),t.axisY2[i].sessionVariables.crosshairValue=t.axisY2[i].crosshair._updatedValue=e,this===t.axisY2[i].crosshair&&(n=!0)):void 0!==e&&(t.axisY2[i].sessionVariables.crosshairValue=t.axisY2[i].crosshair._updatedValue=null));return this.chart.toolTip&&this.chart.toolTip._entries&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries),t.sessionVariables.crosshairShownByPixel=!1,n},H.prototype.hide=function(){this.chart.resetOverlayedCanvas(),this.chart.renderCrosshairs(this.parent),this._hidden=!0},H.prototype.render=function(e,t,n){var i,r,a,o,s=null,l=null,c=null,u="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(c=0,c="xySwapped"===this.chart.plotInfo.axisPlacement?50this.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):50this.parent.range?2:10>this.parent.range?1:0),this.valueFormatString=L.generateValueFormatString(this.parent.range,c)));var h=null===this.opacity?1:this.opacity,p=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*this.thickness),f=this.chart.overlaidCanvasCtx,g=f.globalAlpha;if(f.beginPath(),f.strokeStyle=this.color,f.lineWidth=p,f.save(),this.labelFontSize=Math.abs(d(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize),this.labelMaxWidth=d(this.options.labelMaxWidth)?.3*this.chart.width:this.labelMaxWidth,this.labelMaxHeight=d(this.options.labelWrap)||this.labelWrap?.3*this.chart.height:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||0):2*this.labelPadding),0this.chart.bounds.x2?c.x=this.chart.bounds.x2-c.width:c.xthis.chart.bounds.y2?c.y=this.chart.bounds.y2-c.height:c.ythis.chart.bounds.y2&&(c.y=this.chart.bounds.y2-c.measureText().height+c.fontSize/2),"left"===this.parent._position?c.x=this.parent.lineCoordinates.x2-c.measureText().width:"right"===this.parent._position&&(c.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){for(v=this.parent.convertPixelToValue({x:e}),x=0;xthis.chart.bounds.x2&&(c.x=this.chart.bounds.x2-c.width),c.xthis.chart.bounds.y2&&(c.y=this.chart.bounds.y2-c.measureText().height+c.fontSize/2),"left"===this.parent._position?c.x=this.parent.lineCoordinates.x2-c.measureText().width:"right"===this.parent._position&&(c.x=this.parent.lineCoordinates.x2)}u=null,f.globalAlpha=h,"bottom"!==this.parent._position&&"top"!==this.parent._position||("top"===this.parent._position&&c.y-c.fontSize/2this.chart.bounds.y2&&(c.y=this.chart.bounds.y2-c.height+c.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0this.chart.bounds.x2&&(c.x=this.chart.bounds.x2-c.measureText().width),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0this.chart.bounds.y2&&(c.y=this.chart.bounds.y2-c.measureText().height+c.fontSize/2),"left"===this.parent._position?c.x=this.parent.lineCoordinates.x1-c.measureText().width:"right"===this.parent._position&&(c.x=this.parent.lineCoordinates.x2)}else"bottom"!==this.parent._position&&"top"!==this.parent._position||(c.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:d(n)?this.parent.convertPixelToValue(e):n}):d(this.options.label)?le(d(n)?this.parent.convertPixelToValue(e):n,this.valueFormatString,this.chart._cultureInfo):this.label,c.x=i-c.measureText().width/2,c.x+c.width>this.chart.bounds.x2&&(c.x=this.chart.bounds.x2-c.width),c.xthis.chart.bounds.x2&&(c.x=this.chart.bounds.x2-c.width),c.xthis.chart.bounds.y2&&(c.y=this.chart.bounds.y2-c.measureText().height+c.fontSize/2),"left"===this.parent._position?c.x=this.parent.lineCoordinates.x2-c.measureText().width:"right"===this.parent._position&&(c.x=this.parent.lineCoordinates.x2));"left"===this.parent._position&&c.xthis.chart.bounds.x2?c.x=this.chart.bounds.x2-c.measureText().width:"top"===this.parent._position&&c.y-c.fontSize/2this.chart.bounds.y2&&(c.y=this.chart.bounds.y2-c.height+c.fontSize/2+2),f.globalAlpha=h,0=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&(d(this._textBlock)||d(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0(new Date).getTime()-this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(e,t),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))},X.prototype._updateToolTip=function(e,t,n){if(n="undefined"===typeof n||n,this._updateOptions(),this.container||this._initialize(),this.enabled||this.hide(),!this.chart.disableToolTip){if("undefined"===typeof e||"undefined"===typeof t){if(isNaN(this._prevX)||isNaN(this._prevY))return;e=this._prevX,t=this._prevY}else this._prevX=e,this._prevY=t;var i=null,r=null,a=[],o=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var s=[];if(this.chart.axisX)for(var l=0;lc.dataSeries.axisY.viewportMaximum&&n++;n-c.dataPoint.y.length&&a.push(c)}else"column"===r.type||"bar"===r.type?0>c.dataPoint.y?0>c.dataSeries.axisY.viewportMinimum&&c.dataSeries.axisY.viewportMaximum>=c.dataPoint.y&&a.push(c):c.dataSeries.axisY.viewportMinimum<=c.dataPoint.y&&0<=c.dataSeries.axisY.viewportMaximum&&a.push(c):"bubble"===r.type?(n=this.chart._eventManager.objectMap[r.dataPointIds[c.index]].size/2,c.dataPoint.y>=c.dataSeries.axisY.viewportMinimum-n&&c.dataPoint.y<=c.dataSeries.axisY.viewportMaximum+n&&a.push(c)):"waterfall"===r.type?(n=0,c.cumulativeSumYStartValuec.dataSeries.axisY.viewportMaximum&&n++,c.cumulativeSumc.dataSeries.axisY.viewportMaximum&&n++,2>n&&-2=c.dataSeries.axisY.viewportMinimum&&c.dataPoint.y<=c.dataSeries.axisY.viewportMaximum)&&a.push(c);else a.push(c)}}if(0e&&(e=Math.max(0,e+this.container.clientWidth+20)),e+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(e=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth)),0<(t=10-(t=1!==a.length||this.shared||"line"!==a[0].dataSeries.type&&"stepLine"!==a[0].dataSeries.type&&"spline"!==a[0].dataSeries.type&&"area"!==a[0].dataSeries.type&&"stepArea"!==a[0].dataSeries.type&&"splineArea"!==a[0].dataSeries.type?"bar"===a[0].dataSeries.type||"rangeBar"===a[0].dataSeries.type||"stackedBar"===a[0].dataSeries.type||"stackedBar100"===a[0].dataSeries.type?a[0].dataSeries.axisX.convertValueToPixel(a[0].dataPoint.x):t:a[0].dataSeries.axisY.convertValueToPixel(a[0].dataPoint.y)))+this.container.clientHeight+5&&(t-=t+this.container.clientHeight+5-0),this.fixMozTransitionDelay(e,t),!this.animationEnabled||o?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition),this.positionLeft=e,this.positionBottom=t,this.container.style.left=e+"px",this.container.style.bottom=t+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);for(t=[],i=0;i":"X:{axisXIndex}
":""),a+=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"{name}:  {y}",s=n.axisXIndex):"bubble"===n.type?(this.chart.axisX&&1":"X:{axisXIndex}
":""),a+=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"{name}:  {y},   {z}"):"rangeColumn"===n.type||"rangeBar"===n.type||"rangeArea"===n.type||"rangeSplineArea"===n.type||"error"===n.type?(this.chart.axisX&&1":"X:{axisXIndex}
":""),a+=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"{name}:  {y[0]}, {y[1]}"):"candlestick"===n.type||"ohlc"===n.type?(this.chart.axisX&&1":"X:{axisXIndex}
":""),a+=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"{name}:
Open:   {y[0]}
High:    {y[1]}
Low:   {y[2]}
Close:   {y[3]}"):"boxAndWhisker"===n.type&&(this.chart.axisX&&1":"X:{axisXIndex}
":""),a+=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"{name}:
Minimum:  {y[0]}
Q1:            {y[1]}
Q2:            {y[4]}
Q3:            {y[2]}
Maximum:  {y[3]}"),null===t&&(t=""),n.visible&&(!0===this.reversed?(t=this.chart.replaceKeywordsWithValue(a,i,n,r)+t,o"+t)):(t+=this.chart.replaceKeywordsWithValue(a,i,n,r),o"))))}null!==t&&(t=l+t)}else{if(n=e[0].dataSeries,i=e[0].dataPoint,r=e[0].index,null===i.toolTipContent||"undefined"===typeof i.toolTipContent&&null===n.options.toolTipContent)return null;"line"===n.type||"stepLine"===n.type||"spline"===n.type||"area"===n.type||"stepArea"===n.type||"splineArea"===n.type||"column"===n.type||"bar"===n.type||"scatter"===n.type||"stackedColumn"===n.type||"stackedColumn100"===n.type||"stackedBar"===n.type||"stackedBar100"===n.type||"stackedArea"===n.type||"stackedArea100"===n.type||"waterfall"===n.type?a=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:""+(i.label?"{label}":"{x}")+":  {y}":"bubble"===n.type?a=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:""+(i.label?"{label}":"{x}")+":  {y},   {z}":"pie"===n.type||"doughnut"===n.type||"funnel"===n.type||"pyramid"===n.type?a=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:""+(i.name?"{name}:  ":i.label?"{label}:  ":"")+"{y}":"rangeColumn"===n.type||"rangeBar"===n.type||"rangeArea"===n.type||"rangeSplineArea"===n.type||"error"===n.type?a=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:""+(i.label?"{label}":"{x}")+" :  {y[0]},  {y[1]}":"candlestick"===n.type||"ohlc"===n.type?a=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:""+(i.label?"{label}":"{x}")+"
Open:   {y[0]}
High:    {y[1]}
Low:     {y[2]}
Close:   {y[3]}":"boxAndWhisker"===n.type&&(a=i.toolTipContent?i.toolTipContent:n.toolTipContent?n.toolTipContent:this.content&&"function"!==typeof this.content?this.content:""+(i.label?"{label}":"{x}")+"
Minimum:  {y[0]}
Q1:            {y[1]}
Q2:            {y[4]}
Q3:            {y[2]}
Maximum:  {y[3]}"),null===t&&(t=""),t+=this.chart.replaceKeywordsWithValue(a,i,n,r)}return t},X.prototype.enableAnimation=function(){if(!this.container.style.WebkitTransition){var e=this.getContainerTransition(this.containerTransitionDuration);this.container.style.WebkitTransition=e,this.container.style.MsTransition=e,this.container.style.transition=e,this.container.style.MozTransition=this.mozContainerTransition}},X.prototype.disableAnimation=function(){this.container.style.WebkitTransition&&(this.container.style.WebkitTransition="",this.container.style.MozTransition="",this.container.style.MsTransition="",this.container.style.transition="")},X.prototype.hide=function(e){this.container&&(this.container.style.display="none",this.currentSeriesIndex=-1,this._entries=this._dataSeriesIndex=this._xValue=null,this._prevY=this._prevX=NaN,this._updatedEventParameters=null,("undefined"===typeof e||e)&&this.chart.resetOverlayedCanvas())},X.prototype.show=function(e,t,n){this._updateToolTip(e,t,"undefined"!==typeof n&&n)},X.prototype.showAtIndex=function(e,t){},X.prototype.showAtX=function(e,t){if(!this.enabled)return!1;!d(this.chart.clearedOverlayedCanvas)&&this.chart.clearedOverlayedCanvas.indexOf("axis")&&(this.chart.clearedOverlayedCanvas=null),this._updateOptions();var i,r,a,o=[];if(a=!1,t=!d(t)&&0<=t&&t=r.dataSeries.axisX.viewportMinimum&&r.dataPoint.x<=r.dataSeries.axisX.viewportMaximum){a=!1;break}if(!(r.dataSeries.axisX&&r.dataSeries.axisY&&(r.dataPoint.xr.dataSeries.axisX.viewportMaximum||r.dataPoint.yr.dataSeries.axisY.viewportMaximum))){a=!1;break}a=!0}if(a)return this.hide(),!1;if(this.highlightObjects(o),this._entries=o,s="",null===(s=this.getToolTipInnerHTML({entries:o})))return this.hide(!1),!1;if(this.contentDiv.innerHTML=s,this.isToolTipDefinedInData&&d(this.options.content)&&d(this.options.contentFormatter))for(r=this.contentDiv.getElementsByTagName("span"),s=0;si&&(i+=this.container.clientWidth+20),i+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(i=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth)),1!==o.length||this.shared||"line"!==o[0].dataSeries.type&&"stepLine"!==o[0].dataSeries.type&&"spline"!==o[0].dataSeries.type&&"area"!==o[0].dataSeries.type&&"stepArea"!==o[0].dataSeries.type&&"splineArea"!==o[0].dataSeries.type?"pie"===o[0].dataSeries.type||"doughnut"===o[0].dataSeries.type?(r=o[0].dataSeries.dataPointEOs[o[0].index].center.y+o[0].dataSeries.radius*Math.sin(o[0].dataSeries.dataPointEOs[o[0].index].midAngle))i&&e.push(t),t.animationCallback(i),1<=i&&t.onComplete&&t.onComplete();this.animations=e,0i;i++)for(var r=0;3>r;r++){for(var a=0,o=0;3>o;o++)a+=e[i][o]*t[o][r];n[i][r]=a}return n}function o(e,t){t.fillStyle=e.fillStyle,t.lineCap=e.lineCap,t.lineJoin=e.lineJoin,t.lineWidth=e.lineWidth,t.miterLimit=e.miterLimit,t.shadowBlur=e.shadowBlur,t.shadowColor=e.shadowColor,t.shadowOffsetX=e.shadowOffsetX,t.shadowOffsetY=e.shadowOffsetY,t.strokeStyle=e.strokeStyle,t.globalAlpha=e.globalAlpha,t.font=e.font,t.textAlign=e.textAlign,t.textBaseline=e.textBaseline,t.arcScaleX_=e.arcScaleX_,t.arcScaleY_=e.arcScaleY_,t.lineScale_=e.lineScale_}function s(e){var t=e.indexOf("(",3),n=e.indexOf(")",t+1);return 4==(t=e.substring(t+1,n).split(",")).length&&"a"==e.charAt(3)||(t[3]=1),t}function l(e,t,n){return Math.min(n,Math.max(t,e))}function c(e,t,n){return 0>n&&n++,16*n?e+6*(t-e)*n:1>2*n?t:2>3*n?e+6*(t-e)*(2/3-n):e}function u(e){if(e in R)return R[e];var t,n=1;if("#"==(e=String(e)).charAt(0))t=e;else if(/^rgb/.test(e)){n=s(e),t="#";for(var i,r=0;3>r;r++)i=-1!=n[r].indexOf("%")?Math.floor(parseFloat(n[r])/100*255):+n[r],t+=P[l(i,0,255)];n=+n[3]}else if(/^hsl/.test(e)){if(r=n=s(e),0>(t=parseFloat(r[0])/360%360)&&t++,i=l(parseFloat(r[1])/100,0,1),r=l(parseFloat(r[2])/100,0,1),0==i)i=r=t=r;else{var a=.5>r?r*(1+i):r+i-r*i,o=2*r-a;i=c(o,a,t+1/3),r=c(o,a,t),t=c(o,a,t-1/3)}t="#"+P[Math.floor(255*i)]+P[Math.floor(255*r)]+P[Math.floor(255*t)],n=n[3]}else t=O[e]||e;return R[e]={color:t,alpha:n}}function d(e){this.m_=[[1,0,0],[0,1,0],[0,0,1]],this.mStack_=[],this.aStack_=[],this.currentPath_=[],this.fillStyle=this.strokeStyle="#000",this.lineWidth=1,this.lineJoin="miter",this.lineCap="butt",this.miterLimit=1*M,this.globalAlpha=1,this.font="10px sans-serif",this.textAlign="left",this.textBaseline="alphabetic",this.canvas=e;var t="width:"+e.clientWidth+"px;height:"+e.clientHeight+"px;overflow:hidden;position:absolute",n=e.ownerDocument.createElement("div");n.style.cssText=t,e.appendChild(n),(t=n.cloneNode(!1)).style.backgroundColor="red",t.style.filter="alpha(opacity=0)",e.appendChild(t),this.element_=n,this.lineScale_=this.arcScaleY_=this.arcScaleX_=1}function h(e,t,n,i){e.currentPath_.push({type:"bezierCurveTo",cp1x:t.x,cp1y:t.y,cp2x:n.x,cp2y:n.y,x:i.x,y:i.y}),e.currentX_=i.x,e.currentY_=i.y}function p(e,t){var n=(i=u(e.strokeStyle)).color,i=i.alpha*e.globalAlpha,r=e.lineScale_*e.lineWidth;1>r&&(i*=r),t.push("')}function f(e,t,n,i){var r=e.fillStyle,a=e.arcScaleX_,o=e.arcScaleY_,s=i.x-n.x,l=i.y-n.y;if(r instanceof v){var c=0,d=i=0,h=0,p=1;if("gradient"==r.type_){c=r.x1_/a,n=r.y1_/o;var f=m(e,r.x0_/a,r.y0_/o);c=m(e,c,n);0>(c=180*Math.atan2(c.x-f.x,c.y-f.y)/Math.PI)&&(c+=360),1e-6>c&&(c=0)}else i=((f=m(e,r.x0_,r.y0_)).x-n.x)/s,d=(f.y-n.y)/l,s/=a*M,l/=o*M,p=b.max(s,l),h=2*r.r0_/p,p=2*r.r1_/p-h;(a=r.colors_).sort((function(e,t){return e.offset-t.offset})),o=a.length,f=a[0].color,n=a[o-1].color,s=a[0].alpha*e.globalAlpha,e=a[o-1].alpha*e.globalAlpha;l=[];for(var g=0;g')}else r instanceof y?s&&l&&t.push("'):(r=u(e.fillStyle),t.push(''))}function m(e,t,n){return e=e.m_,{x:M*(t*e[0][0]+n*e[1][0]+e[2][0])-k,y:M*(t*e[0][1]+n*e[1][1]+e[2][1])-k}}function g(e,t,n){isFinite(t[0][0])&&isFinite(t[0][1])&&isFinite(t[1][0])&&isFinite(t[1][1])&&isFinite(t[2][0])&&isFinite(t[2][1])&&(e.m_=t,n&&(e.lineScale_=T(C(t[0][0]*t[1][1]-t[0][1]*t[1][0]))))}function v(e){this.type_=e,this.r1_=this.y1_=this.x1_=this.r0_=this.y0_=this.x0_=0,this.colors_=[]}function y(e,t){if(!e||1!=e.nodeType||"IMG"!=e.tagName)throw new x("TYPE_MISMATCH_ERR");if("complete"!=e.readyState)throw new x("INVALID_STATE_ERR");switch(t){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=t;break;default:throw new x("SYNTAX_ERR")}this.src_=e.src,this.width_=e.width,this.height_=e.height}function x(e){this.code=this[e],this.message=e+": DOM Exception "+this.code}var b=Math,w=b.round,S=b.sin,_=b.cos,C=b.abs,T=b.sqrt,M=10,k=M/2;navigator.userAgent.match(/MSIE ([\d.]+)?/);var A=Array.prototype.slice;n(document);var E={init:function(e){(e=e||document).createElement("canvas"),e.attachEvent("onreadystatechange",function(e,t,n){var i=A.call(arguments,2);return function(){return e.apply(t,i.concat(A.call(arguments)))}}(this.init_,this,e))},init_:function(e){e=e.getElementsByTagName("canvas");for(var t=0;tD;D++)for(var I=0;16>I;I++)P[16*D+I]=D.toString(16)+I.toString(16);var O={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",grey:"#808080",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",oldlace:"#FDF5E6",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",whitesmoke:"#F5F5F5",yellowgreen:"#9ACD32"},R={},N={},j={butt:"flat",round:"round"};(D=d.prototype).clearRect=function(){this.textMeasureEl_&&(this.textMeasureEl_.removeNode(!0),this.textMeasureEl_=null),this.element_.innerHTML=""},D.beginPath=function(){this.currentPath_=[]},D.moveTo=function(e,t){var n=m(this,e,t);this.currentPath_.push({type:"moveTo",x:n.x,y:n.y}),this.currentX_=n.x,this.currentY_=n.y},D.lineTo=function(e,t){var n=m(this,e,t);this.currentPath_.push({type:"lineTo",x:n.x,y:n.y}),this.currentX_=n.x,this.currentY_=n.y},D.bezierCurveTo=function(e,t,n,i,r,a){r=m(this,r,a),h(this,e=m(this,e,t),n=m(this,n,i),r)},D.quadraticCurveTo=function(e,t,n,i){e=m(this,e,t),n=m(this,n,i),h(this,i={x:this.currentX_+2/3*(e.x-this.currentX_),y:this.currentY_+2/3*(e.y-this.currentY_)},{x:i.x+(n.x-this.currentX_)/3,y:i.y+(n.y-this.currentY_)/3},n)},D.arc=function(e,t,n,i,r,a){n*=M;var o=a?"at":"wa",s=e+_(i)*n-k,l=t+S(i)*n-k;i=e+_(r)*n-k,r=t+S(r)*n-k,s!=i||a||(s+=.125),e=m(this,e,t),s=m(this,s,l),i=m(this,i,r),this.currentPath_.push({type:o,x:e.x,y:e.y,radius:n,xStart:s.x,yStart:s.y,xEnd:i.x,yEnd:i.y})},D.rect=function(e,t,n,i){this.moveTo(e,t),this.lineTo(e+n,t),this.lineTo(e+n,t+i),this.lineTo(e,t+i),this.closePath()},D.strokeRect=function(e,t,n,i){var r=this.currentPath_;this.beginPath(),this.moveTo(e,t),this.lineTo(e+n,t),this.lineTo(e+n,t+i),this.lineTo(e,t+i),this.closePath(),this.stroke(),this.currentPath_=r},D.fillRect=function(e,t,n,i){var r=this.currentPath_;this.beginPath(),this.moveTo(e,t),this.lineTo(e+n,t),this.lineTo(e+n,t+i),this.lineTo(e,t+i),this.closePath(),this.fill(),this.currentPath_=r},D.createLinearGradient=function(e,t,n,i){var r=new v("gradient");return r.x0_=e,r.y0_=t,r.x1_=n,r.y1_=i,r},D.createRadialGradient=function(e,t,n,i,r,a){var o=new v("gradientradial");return o.x0_=e,o.y0_=t,o.r0_=n,o.x1_=i,o.y1_=r,o.r1_=a,o},D.drawImage=function(e,t){var n,i,r,a,o,s,l,c;r=e.runtimeStyle.width,a=e.runtimeStyle.height,e.runtimeStyle.width="auto",e.runtimeStyle.height="auto";var u=e.width,d=e.height;if(e.runtimeStyle.width=r,e.runtimeStyle.height=a,3==arguments.length)n=arguments[1],i=arguments[2],o=s=0,l=r=u,c=a=d;else if(5==arguments.length)n=arguments[1],i=arguments[2],r=arguments[3],a=arguments[4],o=s=0,l=u,c=d;else{if(9!=arguments.length)throw Error("Invalid number of arguments");o=arguments[1],s=arguments[2],l=arguments[3],c=arguments[4],n=arguments[5],i=arguments[6],r=arguments[7],a=arguments[8]}var h=m(this,n,i),p=[];if(p.push(" ','",""),this.element_.insertAdjacentHTML("BeforeEnd",p.join(""))},D.stroke=function(e){var t=[];t.push("i.x)&&(i.x=a.x),(null==n.y||a.yi.y)&&(i.y=a.y))}t.push(' ">'),e?f(this,t,n,i):p(this,t),t.push(""),this.element_.insertAdjacentHTML("beforeEnd",t.join(""))},D.fill=function(){this.stroke(!0)},D.closePath=function(){this.currentPath_.push({type:"close"})},D.save=function(){var e={};o(this,e),this.aStack_.push(e),this.mStack_.push(this.m_),this.m_=a([[1,0,0],[0,1,0],[0,0,1]],this.m_)},D.restore=function(){this.aStack_.length&&(o(this.aStack_.pop(),this),this.m_=this.mStack_.pop())},D.translate=function(e,t){g(this,a([[1,0,0],[0,1,0],[e,t,1]],this.m_),!1)},D.rotate=function(e){var t=_(e);g(this,a([[t,e=S(e),0],[-e,t,0],[0,0,1]],this.m_),!1)},D.scale=function(e,t){this.arcScaleX_*=e,this.arcScaleY_*=t,g(this,a([[e,0,0],[0,t,0],[0,0,1]],this.m_),!0)},D.transform=function(e,t,n,i,r,o){g(this,a([[e,t,0],[n,i,0],[r,o,1]],this.m_),!0)},D.setTransform=function(e,t,n,i,r,a){g(this,[[e,t,0],[n,i,0],[r,a,1]],!0)},D.drawText_=function(e,n,i,r,a){var o=this.m_;r=0;var s,l=1e3,c=0,u=[];if(s=this.font,N[s])s=N[s];else{var d=document.createElement("div").style;try{d.font=s}catch(v){}s=N[s]={style:d.fontStyle||"normal",variant:d.fontVariant||"normal",weight:d.fontWeight||"normal",size:d.fontSize||10,family:d.fontFamily||"sans-serif"}}d=s;var h=this.element_;for(var g in s={},d)s[g]=d[g];switch(g=parseFloat(h.currentStyle.fontSize),h=parseFloat(d.size),"number"==typeof d.size?s.size=d.size:-1!=d.size.indexOf("px")?s.size=h:-1!=d.size.indexOf("em")?s.size=g*h:-1!=d.size.indexOf("%")?s.size=g/100*h:-1!=d.size.indexOf("pt")?s.size=h/.75:s.size=g,s.size*=.981,g=s.style+" "+s.variant+" "+s.weight+" "+s.size+"px "+s.family,h=this.element_.currentStyle,d=this.textAlign.toLowerCase()){case"left":case"center":case"right":break;case"end":d="ltr"==h.direction?"right":"left";break;case"start":d="rtl"==h.direction?"right":"left";break;default:d="left"}switch(this.textBaseline){case"hanging":case"top":c=s.size/1.75;break;case"middle":break;default:c=-s.size/2.25}switch(d){case"right":r=1e3,l=.05;break;case"center":r=l=500}n=m(this,n+0,i+c),u.push(''),a?p(this,u):f(this,u,{x:-r,y:0},{x:l,y:s.size}),a=o[0][0].toFixed(3)+","+o[1][0].toFixed(3)+","+o[0][1].toFixed(3)+","+o[1][1].toFixed(3)+",0,0",n=w(n.x/M)+","+w(n.y/M),u.push('','',''),this.element_.insertAdjacentHTML("beforeEnd",u.join(""))},D.fillText=function(e,t,n,i){this.drawText_(e,t,n,i,!1)},D.strokeText=function(e,t,n,i){this.drawText_(e,t,n,i,!0)},D.measureText=function(e){this.textMeasureEl_||(this.element_.insertAdjacentHTML("beforeEnd",''),this.textMeasureEl_=this.element_.lastChild);var t=this.element_.ownerDocument;return this.textMeasureEl_.innerHTML="",this.textMeasureEl_.style.font=this.font,this.textMeasureEl_.appendChild(t.createTextNode(e)),{width:this.textMeasureEl_.offsetWidth}},D.clip=function(){},D.arcTo=function(){},D.createPattern=function(e,t){return new y(e,t)},v.prototype.addColorStop=function(e,t){t=u(t),this.colors_.push({offset:e,color:t.color,alpha:t.alpha})},(D=x.prototype=Error()).INDEX_SIZE_ERR=1,D.DOMSTRING_SIZE_ERR=2,D.HIERARCHY_REQUEST_ERR=3,D.WRONG_DOCUMENT_ERR=4,D.INVALID_CHARACTER_ERR=5,D.NO_DATA_ALLOWED_ERR=6,D.NO_MODIFICATION_ALLOWED_ERR=7,D.NOT_FOUND_ERR=8,D.NOT_SUPPORTED_ERR=9,D.INUSE_ATTRIBUTE_ERR=10,D.INVALID_STATE_ERR=11,D.SYNTAX_ERR=12,D.INVALID_MODIFICATION_ERR=13,D.NAMESPACE_ERR=14,D.INVALID_ACCESS_ERR=15,D.VALIDATION_ERR=16,D.TYPE_MISMATCH_ERR=17,G_vmlCanvasManager=E,CanvasRenderingContext2D=d,CanvasGradient=v,CanvasPattern=y,DOMException=x}()},4234:function(e,t,n){var i;!function(r){"use strict";var a,o=1e9,s={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},l=!0,c="[DecimalError] ",u=c+"Invalid argument: ",d=c+"Exponent out of range: ",h=Math.floor,p=Math.pow,f=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,m=1e7,g=7,v=9007199254740991,y=h(v/g),x={};function b(e,t){var n,i,r,a,o,s,c,u,d=e.constructor,h=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),l?P(t,h):t;if(c=e.d,u=t.d,o=e.e,r=t.e,c=c.slice(),a=o-r){for(a<0?(i=c,a=-a,s=u.length):(i=u,r=o,s=c.length),a>(s=(o=Math.ceil(h/g))>s?o+1:s+1)&&(a=s,i.length=1),i.reverse();a--;)i.push(0);i.reverse()}for((s=c.length)-(a=u.length)<0&&(a=s,i=u,u=c,c=i),n=0;a;)n=(c[--a]=c[a]+u[a]+n)/m|0,c[a]%=m;for(n&&(c.unshift(n),++r),s=c.length;0==c[--s];)c.pop();return t.d=c,t.e=r,l?P(t,h):t}function w(e,t,n){if(e!==~~e||en)throw Error(u+e)}function S(e){var t,n,i,r=e.length-1,a="",o=e[0];if(r>0){for(a+=o,t=1;te.e^a.s<0?1:-1;for(t=0,n=(i=a.d.length)<(r=e.d.length)?i:r;te.d[t]^a.s<0?1:-1;return i===r?0:i>r^a.s<0?1:-1},x.decimalPlaces=x.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*g;if(t=e.d[t])for(;t%10==0;t/=10)n--;return n<0?0:n},x.dividedBy=x.div=function(e){return _(this,new this.constructor(e))},x.dividedToIntegerBy=x.idiv=function(e){var t=this.constructor;return P(_(this,new t(e),0,1),t.precision)},x.equals=x.eq=function(e){return!this.cmp(e)},x.exponent=function(){return T(this)},x.greaterThan=x.gt=function(e){return this.cmp(e)>0},x.greaterThanOrEqualTo=x.gte=function(e){return this.cmp(e)>=0},x.isInteger=x.isint=function(){return this.e>this.d.length-2},x.isNegative=x.isneg=function(){return this.s<0},x.isPositive=x.ispos=function(){return this.s>0},x.isZero=function(){return 0===this.s},x.lessThan=x.lt=function(e){return this.cmp(e)<0},x.lessThanOrEqualTo=x.lte=function(e){return this.cmp(e)<1},x.logarithm=x.log=function(e){var t,n=this,i=n.constructor,r=i.precision,o=r+5;if(void 0===e)e=new i(10);else if((e=new i(e)).s<1||e.eq(a))throw Error(c+"NaN");if(n.s<1)throw Error(c+(n.s?"NaN":"-Infinity"));return n.eq(a)?new i(0):(l=!1,t=_(A(n,o),A(e,o),o),l=!0,P(t,r))},x.minus=x.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?D(t,e):b(t,(e.s=-e.s,e))},x.modulo=x.mod=function(e){var t,n=this,i=n.constructor,r=i.precision;if(!(e=new i(e)).s)throw Error(c+"NaN");return n.s?(l=!1,t=_(n,e,0,1).times(e),l=!0,n.minus(t)):P(new i(n),r)},x.naturalExponential=x.exp=function(){return C(this)},x.naturalLogarithm=x.ln=function(){return A(this)},x.negated=x.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},x.plus=x.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?b(t,e):D(t,(e.s=-e.s,e))},x.precision=x.sd=function(e){var t,n,i,r=this;if(void 0!==e&&e!==!!e&&1!==e&&0!==e)throw Error(u+e);if(t=T(r)+1,n=(i=r.d.length-1)*g+1,i=r.d[i]){for(;i%10==0;i/=10)n--;for(i=r.d[0];i>=10;i/=10)n++}return e&&t>n?t:n},x.squareRoot=x.sqrt=function(){var e,t,n,i,r,a,o,s=this,u=s.constructor;if(s.s<1){if(!s.s)return new u(0);throw Error(c+"NaN")}for(e=T(s),l=!1,0==(r=Math.sqrt(+s))||r==1/0?(((t=S(s.d)).length+e)%2==0&&(t+="0"),r=Math.sqrt(t),e=h((e+1)/2)-(e<0||e%2),i=new u(t=r==1/0?"5e"+e:(t=r.toExponential()).slice(0,t.indexOf("e")+1)+e)):i=new u(r.toString()),r=o=(n=u.precision)+3;;)if(i=(a=i).plus(_(s,a,o+2)).times(.5),S(a.d).slice(0,o)===(t=S(i.d)).slice(0,o)){if(t=t.slice(o-3,o+1),r==o&&"4999"==t){if(P(a,n+1,0),a.times(a).eq(s)){i=a;break}}else if("9999"!=t)break;o+=4}return l=!0,P(i,n)},x.times=x.mul=function(e){var t,n,i,r,a,o,s,c,u,d=this,h=d.constructor,p=d.d,f=(e=new h(e)).d;if(!d.s||!e.s)return new h(0);for(e.s*=d.s,n=d.e+e.e,(c=p.length)<(u=f.length)&&(a=p,p=f,f=a,o=c,c=u,u=o),a=[],i=o=c+u;i--;)a.push(0);for(i=u;--i>=0;){for(t=0,r=c+i;r>i;)s=a[r]+f[i]*p[r-i-1]+t,a[r--]=s%m|0,t=s/m|0;a[r]=(a[r]+t)%m|0}for(;!a[--o];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,l?P(e,h.precision):e},x.toDecimalPlaces=x.todp=function(e,t){var n=this,i=n.constructor;return n=new i(n),void 0===e?n:(w(e,0,o),void 0===t?t=i.rounding:w(t,0,8),P(n,e+T(n)+1,t))},x.toExponential=function(e,t){var n,i=this,r=i.constructor;return void 0===e?n=I(i,!0):(w(e,0,o),void 0===t?t=r.rounding:w(t,0,8),n=I(i=P(new r(i),e+1,t),!0,e+1)),n},x.toFixed=function(e,t){var n,i,r=this,a=r.constructor;return void 0===e?I(r):(w(e,0,o),void 0===t?t=a.rounding:w(t,0,8),n=I((i=P(new a(r),e+T(r)+1,t)).abs(),!1,e+T(i)+1),r.isneg()&&!r.isZero()?"-"+n:n)},x.toInteger=x.toint=function(){var e=this,t=e.constructor;return P(new t(e),T(e)+1,t.rounding)},x.toNumber=function(){return+this},x.toPower=x.pow=function(e){var t,n,i,r,o,s,u=this,d=u.constructor,p=+(e=new d(e));if(!e.s)return new d(a);if(!(u=new d(u)).s){if(e.s<1)throw Error(c+"Infinity");return u}if(u.eq(a))return u;if(i=d.precision,e.eq(a))return P(u,i);if(s=(t=e.e)>=(n=e.d.length-1),o=u.s,s){if((n=p<0?-p:p)<=v){for(r=new d(a),t=Math.ceil(i/g+4),l=!1;n%2&&O((r=r.times(u)).d,t),0!==(n=h(n/2));)O((u=u.times(u)).d,t);return l=!0,e.s<0?new d(a).div(r):P(r,i)}}else if(o<0)throw Error(c+"NaN");return o=o<0&&1&e.d[Math.max(t,n)]?-1:1,u.s=1,l=!1,r=e.times(A(u,i+12)),l=!0,(r=C(r)).s=o,r},x.toPrecision=function(e,t){var n,i,r=this,a=r.constructor;return void 0===e?i=I(r,(n=T(r))<=a.toExpNeg||n>=a.toExpPos):(w(e,1,o),void 0===t?t=a.rounding:w(t,0,8),i=I(r=P(new a(r),e,t),e<=(n=T(r))||n<=a.toExpNeg,e)),i},x.toSignificantDigits=x.tosd=function(e,t){var n=this.constructor;return void 0===e?(e=n.precision,t=n.rounding):(w(e,1,o),void 0===t?t=n.rounding:w(t,0,8)),P(new n(this),e,t)},x.toString=x.valueOf=x.val=x.toJSON=function(){var e=this,t=T(e),n=e.constructor;return I(e,t<=n.toExpNeg||t>=n.toExpPos)};var _=function(){function e(e,t){var n,i=0,r=e.length;for(e=e.slice();r--;)n=e[r]*t+i,e[r]=n%m|0,i=n/m|0;return i&&e.unshift(i),e}function t(e,t,n,i){var r,a;if(n!=i)a=n>i?1:-1;else for(r=a=0;rt[r]?1:-1;break}return a}function n(e,t,n){for(var i=0;n--;)e[n]-=i,i=e[n]1;)e.shift()}return function(i,r,a,o){var s,l,u,d,h,p,f,v,y,x,b,w,S,_,C,M,k,A,E=i.constructor,D=i.s==r.s?1:-1,I=i.d,O=r.d;if(!i.s)return new E(i);if(!r.s)throw Error(c+"Division by zero");for(l=i.e-r.e,k=O.length,C=I.length,v=(f=new E(D)).d=[],u=0;O[u]==(I[u]||0);)++u;if(O[u]>(I[u]||0)&&--l,(w=null==a?a=E.precision:o?a+(T(i)-T(r))+1:a)<0)return new E(0);if(w=w/g+2|0,u=0,1==k)for(d=0,O=O[0],w++;(u1&&(O=e(O,d),I=e(I,d),k=O.length,C=I.length),_=k,x=(y=I.slice(0,k)).length;x=m/2&&++M;do{d=0,(s=t(O,y,k,x))<0?(b=y[0],k!=x&&(b=b*m+(y[1]||0)),(d=b/M|0)>1?(d>=m&&(d=m-1),1==(s=t(h=e(O,d),y,p=h.length,x=y.length))&&(d--,n(h,k16)throw Error(d+T(e));if(!e.s)return new h(a);for(null==t?(l=!1,s=f):s=t,o=new h(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(s+=Math.log(p(2,u))/Math.LN10*2+5|0,n=i=r=new h(a),h.precision=s;;){if(i=P(i.times(e),s),n=n.times(++c),S((o=r.plus(_(i,n,s))).d).slice(0,s)===S(r.d).slice(0,s)){for(;u--;)r=P(r.times(r),s);return h.precision=f,null==t?(l=!0,P(r,f)):r}r=o}}function T(e){for(var t=e.e*g,n=e.d[0];n>=10;n/=10)t++;return t}function M(e,t,n){if(t>e.LN10.sd())throw l=!0,n&&(e.precision=n),Error(c+"LN10 precision limit exceeded");return P(new e(e.LN10),t)}function k(e){for(var t="";e--;)t+="0";return t}function A(e,t){var n,i,r,o,s,u,d,h,p,f=1,m=e,g=m.d,v=m.constructor,y=v.precision;if(m.s<1)throw Error(c+(m.s?"NaN":"-Infinity"));if(m.eq(a))return new v(0);if(null==t?(l=!1,h=y):h=t,m.eq(10))return null==t&&(l=!0),M(v,h);if(h+=10,v.precision=h,i=(n=S(g)).charAt(0),o=T(m),!(Math.abs(o)<15e14))return d=M(v,h+2,y).times(o+""),m=A(new v(i+"."+n.slice(1)),h-10).plus(d),v.precision=y,null==t?(l=!0,P(m,y)):m;for(;i<7&&1!=i||1==i&&n.charAt(1)>3;)i=(n=S((m=m.times(e)).d)).charAt(0),f++;for(o=T(m),i>1?(m=new v("0."+n),o++):m=new v(i+"."+n.slice(1)),u=s=m=_(m.minus(a),m.plus(a),h),p=P(m.times(m),h),r=3;;){if(s=P(s.times(p),h),S((d=u.plus(_(s,new v(r),h))).d).slice(0,h)===S(u.d).slice(0,h))return u=u.times(2),0!==o&&(u=u.plus(M(v,h+2,y).times(o+""))),u=_(u,new v(f),h),v.precision=y,null==t?(l=!0,P(u,y)):u;u=d,r+=2}}function E(e,t){var n,i,r;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(i=t.search(/e/i))>0?(n<0&&(n=i),n+=+t.slice(i+1),t=t.substring(0,i)):n<0&&(n=t.length),i=0;48===t.charCodeAt(i);)++i;for(r=t.length;48===t.charCodeAt(r-1);)--r;if(t=t.slice(i,r)){if(r-=i,n=n-i-1,e.e=h(n/g),e.d=[],i=(n+1)%g,n<0&&(i+=g),iy||e.e<-y))throw Error(d+n)}else e.s=0,e.e=0,e.d=[0];return e}function P(e,t,n){var i,r,a,o,s,c,u,f,v=e.d;for(o=1,a=v[0];a>=10;a/=10)o++;if((i=t-o)<0)i+=g,r=t,u=v[f=0];else{if((f=Math.ceil((i+1)/g))>=(a=v.length))return e;for(u=a=v[f],o=1;a>=10;a/=10)o++;r=(i%=g)-g+o}if(void 0!==n&&(s=u/(a=p(10,o-r-1))%10|0,c=t<0||void 0!==v[f+1]||u%a,c=n<4?(s||c)&&(0==n||n==(e.s<0?3:2)):s>5||5==s&&(4==n||c||6==n&&(i>0?r>0?u/p(10,o-r):0:v[f-1])%10&1||n==(e.s<0?8:7))),t<1||!v[0])return c?(a=T(e),v.length=1,t=t-a-1,v[0]=p(10,(g-t%g)%g),e.e=h(-t/g)||0):(v.length=1,v[0]=e.e=e.s=0),e;if(0==i?(v.length=f,a=1,f--):(v.length=f+1,a=p(10,g-i),v[f]=r>0?(u/p(10,o-r)%p(10,r)|0)*a:0),c)for(;;){if(0==f){(v[0]+=a)==m&&(v[0]=1,++e.e);break}if(v[f]+=a,v[f]!=m)break;v[f--]=0,a=1}for(i=v.length;0===v[--i];)v.pop();if(l&&(e.e>y||e.e<-y))throw Error(d+T(e));return e}function D(e,t){var n,i,r,a,o,s,c,u,d,h,p=e.constructor,f=p.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new p(e),l?P(t,f):t;if(c=e.d,h=t.d,i=t.e,u=e.e,c=c.slice(),o=u-i){for((d=o<0)?(n=c,o=-o,s=h.length):(n=h,i=u,s=c.length),o>(r=Math.max(Math.ceil(f/g),s)+2)&&(o=r,n.length=1),n.reverse(),r=o;r--;)n.push(0);n.reverse()}else{for((d=(r=c.length)<(s=h.length))&&(s=r),r=0;r0;--r)c[s++]=0;for(r=h.length;r>o;){if(c[--r]0?a=a.charAt(0)+"."+a.slice(1)+k(i):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(r<0?"e":"e+")+r):r<0?(a="0."+k(-r-1)+a,n&&(i=n-o)>0&&(a+=k(i))):r>=o?(a+=k(r+1-o),n&&(i=n-r-1)>0&&(a=a+"."+k(i))):((i=r+1)0&&(r+1===o&&(a+="."),a+=k(i))),e.s<0?"-"+a:a}function O(e,t){if(e.length>t)return e.length=t,!0}function R(e){if(!e||"object"!==typeof e)throw Error(c+"Object expected");var t,n,i,r=["precision",1,o,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t=r[t+1]&&i<=r[t+2]))throw Error(u+n+": "+i);this[n]=i}if(void 0!==(i=e[n="LN10"])){if(i!=Math.LN10)throw Error(u+n+": "+i);this[n]=new this(i)}return this}s=function e(t){var n,i,r;function a(e){var t=this;if(!(t instanceof a))return new a(e);if(t.constructor=a,e instanceof a)return t.s=e.s,t.e=e.e,void(t.d=(e=e.d)?e.slice():e);if("number"===typeof e){if(0*e!==0)throw Error(u+e);if(e>0)t.s=1;else{if(!(e<0))return t.s=0,t.e=0,void(t.d=[0]);e=-e,t.s=-1}return e===~~e&&e<1e7?(t.e=0,void(t.d=[e])):E(t,e.toString())}if("string"!==typeof e)throw Error(u+e);if(45===e.charCodeAt(0)?(e=e.slice(1),t.s=-1):t.s=1,!f.test(e))throw Error(u+e);E(t,e)}if(a.prototype=x,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=e,a.config=a.set=R,void 0===t&&(t={}),t)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],n=0;n{"use strict";var t=Object.prototype.hasOwnProperty,n="~";function i(){}function r(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function a(e,t,i,a,o){if("function"!==typeof i)throw new TypeError("The listener must be a function");var s=new r(i,a||e,o),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],s]:e._events[l].push(s):(e._events[l]=s,e._eventsCount++),e}function o(e,t){0===--e._eventsCount?e._events=new i:delete e._events[t]}function s(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(n=!1)),s.prototype.eventNames=function(){var e,i,r=[];if(0===this._eventsCount)return r;for(i in e=this._events)t.call(e,i)&&r.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},s.prototype.listeners=function(e){var t=n?n+e:e,i=this._events[t];if(!i)return[];if(i.fn)return[i.fn];for(var r=0,a=i.length,o=new Array(a);r{var i=n(8136)(n(7009),"DataView");e.exports=i},9676:(e,t,n)=>{var i=n(5403),r=n(2747),a=n(6037),o=n(4154),s=n(7728);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var i=n(3894),r=n(8699),a=n(4957),o=n(7184),s=n(7109);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var i=n(8136)(n(7009),"Map");e.exports=i},8059:(e,t,n)=>{var i=n(4086),r=n(9255),a=n(9186),o=n(3423),s=n(3739);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var i=n(8136)(n(7009),"Promise");e.exports=i},3924:(e,t,n)=>{var i=n(8136)(n(7009),"Set");e.exports=i},692:(e,t,n)=>{var i=n(8059),r=n(5774),a=n(1596);function o(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new i;++t{var i=n(8384),r=n(511),a=n(835),o=n(707),s=n(8832),l=n(5077);function c(e){var t=this.__data__=new i(e);this.size=t.size}c.prototype.clear=r,c.prototype.delete=a,c.prototype.get=o,c.prototype.has=s,c.prototype.set=l,e.exports=c},7197:(e,t,n)=>{var i=n(7009).Symbol;e.exports=i},6219:(e,t,n)=>{var i=n(7009).Uint8Array;e.exports=i},7091:(e,t,n)=>{var i=n(8136)(n(7009),"WeakMap");e.exports=i},3665:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},4277:e=>{e.exports=function(e,t){for(var n=-1,i=null==e?0:e.length;++n{e.exports=function(e,t){for(var n=-1,i=null==e?0:e.length,r=0,a=[];++n{var i=n(4842);e.exports=function(e,t){return!!(null==e?0:e.length)&&i(e,t,0)>-1}},2683:e=>{e.exports=function(e,t,n){for(var i=-1,r=null==e?0:e.length;++i{var i=n(6478),r=n(4963),a=n(3629),o=n(5174),s=n(6800),l=n(9102),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=a(e),u=!n&&r(e),d=!n&&!u&&o(e),h=!n&&!u&&!d&&l(e),p=n||u||d||h,f=p?i(e.length,String):[],m=f.length;for(var g in e)!t&&!c.call(e,g)||p&&("length"==g||d&&("offset"==g||"parent"==g)||h&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,m))||f.push(g);return f}},8950:e=>{e.exports=function(e,t){for(var n=-1,i=null==e?0:e.length,r=Array(i);++n{e.exports=function(e,t){for(var n=-1,i=t.length,r=e.length;++n{e.exports=function(e,t){for(var n=-1,i=null==e?0:e.length;++n{e.exports=function(e){return e.split("")}},7112:(e,t,n)=>{var i=n(9231);e.exports=function(e,t){for(var n=e.length;n--;)if(i(e[n][0],t))return n;return-1}},2526:(e,t,n)=>{var i=n(8528);e.exports=function(e,t,n){"__proto__"==t&&i?i(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},7927:(e,t,n)=>{var i=n(5358),r=n(7056)(i);e.exports=r},9863:(e,t,n)=>{var i=n(7927);e.exports=function(e,t){var n=!0;return i(e,(function(e,i,r){return n=!!t(e,i,r)})),n}},3079:(e,t,n)=>{var i=n(152);e.exports=function(e,t,n){for(var r=-1,a=e.length;++r{e.exports=function(e,t,n,i){for(var r=e.length,a=n+(i?1:-1);i?a--:++a{var i=n(1705),r=n(3529);e.exports=function e(t,n,a,o,s){var l=-1,c=t.length;for(a||(a=r),s||(s=[]);++l0&&a(u)?n>1?e(u,n-1,a,o,s):i(s,u):o||(s[s.length]=u)}return s}},5099:(e,t,n)=>{var i=n(372)();e.exports=i},5358:(e,t,n)=>{var i=n(5099),r=n(2742);e.exports=function(e,t){return e&&i(e,t,r)}},8667:(e,t,n)=>{var i=n(3082),r=n(9793);e.exports=function(e,t){for(var n=0,a=(t=i(t,e)).length;null!=e&&n{var i=n(1705),r=n(3629);e.exports=function(e,t,n){var a=t(e);return r(e)?a:i(a,n(e))}},9066:(e,t,n)=>{var i=n(7197),r=n(1587),a=n(3581),o=i?i.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":o&&o in Object(e)?r(e):a(e)}},1954:e=>{e.exports=function(e,t){return e>t}},529:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},4842:(e,t,n)=>{var i=n(2045),r=n(505),a=n(7167);e.exports=function(e,t,n){return t===t?a(e,t,n):i(e,r,n)}},4906:(e,t,n)=>{var i=n(9066),r=n(3141);e.exports=function(e){return r(e)&&"[object Arguments]"==i(e)}},1848:(e,t,n)=>{var i=n(3355),r=n(3141);e.exports=function e(t,n,a,o,s){return t===n||(null==t||null==n||!r(t)&&!r(n)?t!==t&&n!==n:i(t,n,a,o,e,s))}},3355:(e,t,n)=>{var i=n(9424),r=n(5305),a=n(2206),o=n(8078),s=n(8383),l=n(3629),c=n(5174),u=n(9102),d="[object Arguments]",h="[object Array]",p="[object Object]",f=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,m,g,v){var y=l(e),x=l(t),b=y?h:s(e),w=x?h:s(t),S=(b=b==d?p:b)==p,_=(w=w==d?p:w)==p,C=b==w;if(C&&c(e)){if(!c(t))return!1;y=!0,S=!1}if(C&&!S)return v||(v=new i),y||u(e)?r(e,t,n,m,g,v):a(e,t,b,n,m,g,v);if(!(1&n)){var T=S&&f.call(e,"__wrapped__"),M=_&&f.call(t,"__wrapped__");if(T||M){var k=T?e.value():e,A=M?t.value():t;return v||(v=new i),g(k,A,n,m,v)}}return!!C&&(v||(v=new i),o(e,t,n,m,g,v))}},8856:(e,t,n)=>{var i=n(9424),r=n(1848);e.exports=function(e,t,n,a){var o=n.length,s=o,l=!a;if(null==e)return!s;for(e=Object(e);o--;){var c=n[o];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++o{e.exports=function(e){return e!==e}},6703:(e,t,n)=>{var i=n(4786),r=n(257),a=n(8092),o=n(7907),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,d=c.hasOwnProperty,h=RegExp("^"+u.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!a(e)||r(e))&&(i(e)?h:s).test(o(e))}},8150:(e,t,n)=>{var i=n(9066),r=n(4635),a=n(3141),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,e.exports=function(e){return a(e)&&r(e.length)&&!!o[i(e)]}},6025:(e,t,n)=>{var i=n(7080),r=n(4322),a=n(2100),o=n(3629),s=n(38);e.exports=function(e){return"function"==typeof e?e:null==e?a:"object"==typeof e?o(e)?r(e[0],e[1]):i(e):s(e)}},3654:(e,t,n)=>{var i=n(2936),r=n(8836),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!i(e))return r(e);var t=[];for(var n in Object(e))a.call(e,n)&&"constructor"!=n&&t.push(n);return t}},2580:e=>{e.exports=function(e,t){return e{var i=n(7927),r=n(1473);e.exports=function(e,t){var n=-1,a=r(e)?Array(e.length):[];return i(e,(function(e,i,r){a[++n]=t(e,i,r)})),a}},7080:(e,t,n)=>{var i=n(8856),r=n(9091),a=n(284);e.exports=function(e){var t=r(e);return 1==t.length&&t[0][2]?a(t[0][0],t[0][1]):function(n){return n===e||i(n,e,t)}}},4322:(e,t,n)=>{var i=n(1848),r=n(6181),a=n(5658),o=n(5823),s=n(5072),l=n(284),c=n(9793);e.exports=function(e,t){return o(e)&&s(t)?l(c(e),t):function(n){var o=r(n,e);return void 0===o&&o===t?a(n,e):i(t,o,3)}}},3226:(e,t,n)=>{var i=n(8950),r=n(8667),a=n(6025),o=n(3849),s=n(9179),l=n(6194),c=n(4480),u=n(2100),d=n(3629);e.exports=function(e,t,n){t=t.length?i(t,(function(e){return d(e)?function(t){return r(t,1===e.length?e[0]:e)}:e})):[u];var h=-1;t=i(t,l(a));var p=o(e,(function(e,n,r){return{criteria:i(t,(function(t){return t(e)})),index:++h,value:e}}));return s(p,(function(e,t){return c(e,t,n)}))}},9586:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},4084:(e,t,n)=>{var i=n(8667);e.exports=function(e){return function(t){return i(t,e)}}},7255:e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,i,r,a){for(var o=-1,s=n(t((i-e)/(r||1)),0),l=Array(s);s--;)l[a?s:++o]=e,e+=r;return l}},8794:(e,t,n)=>{var i=n(2100),r=n(4262),a=n(9156);e.exports=function(e,t){return a(r(e,t,i),e+"")}},7532:(e,t,n)=>{var i=n(1547),r=n(8528),a=n(2100),o=r?function(e,t){return r(e,"toString",{configurable:!0,enumerable:!1,value:i(t),writable:!0})}:a;e.exports=o},2646:e=>{e.exports=function(e,t,n){var i=-1,r=e.length;t<0&&(t=-t>r?0:r+t),(n=n>r?r:n)<0&&(n+=r),r=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(r);++i{var i=n(7927);e.exports=function(e,t){var n;return i(e,(function(e,i,r){return!(n=t(e,i,r))})),!!n}},9179:e=>{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},6478:e=>{e.exports=function(e,t){for(var n=-1,i=Array(e);++n{var i=n(7197),r=n(8950),a=n(3629),o=n(152),s=i?i.prototype:void 0,l=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(a(t))return r(t,e)+"";if(o(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-Infinity?"-0":n}},821:(e,t,n)=>{var i=n(6050),r=/^\s+/;e.exports=function(e){return e?e.slice(0,i(e)+1).replace(r,""):e}},6194:e=>{e.exports=function(e){return function(t){return e(t)}}},9602:(e,t,n)=>{var i=n(692),r=n(9055),a=n(2683),o=n(75),s=n(7730),l=n(2230);e.exports=function(e,t,n){var c=-1,u=r,d=e.length,h=!0,p=[],f=p;if(n)h=!1,u=a;else if(d>=200){var m=t?null:s(e);if(m)return l(m);h=!1,u=o,f=new i}else f=t?[]:p;e:for(;++c{e.exports=function(e,t){return e.has(t)}},3082:(e,t,n)=>{var i=n(3629),r=n(5823),a=n(170),o=n(3518);e.exports=function(e,t){return i(e)?e:r(e,t)?[e]:a(o(e))}},9813:(e,t,n)=>{var i=n(2646);e.exports=function(e,t,n){var r=e.length;return n=void 0===n?r:n,!t&&n>=r?e:i(e,t,n)}},8558:(e,t,n)=>{var i=n(152);e.exports=function(e,t){if(e!==t){var n=void 0!==e,r=null===e,a=e===e,o=i(e),s=void 0!==t,l=null===t,c=t===t,u=i(t);if(!l&&!u&&!o&&e>t||o&&s&&c&&!l&&!u||r&&s&&c||!n&&c||!a)return 1;if(!r&&!o&&!u&&e{var i=n(8558);e.exports=function(e,t,n){for(var r=-1,a=e.criteria,o=t.criteria,s=a.length,l=n.length;++r=l?c:c*("desc"==n[r]?-1:1)}return e.index-t.index}},5525:(e,t,n)=>{var i=n(7009)["__core-js_shared__"];e.exports=i},7056:(e,t,n)=>{var i=n(1473);e.exports=function(e,t){return function(n,r){if(null==n)return n;if(!i(n))return e(n,r);for(var a=n.length,o=t?a:-1,s=Object(n);(t?o--:++o{e.exports=function(e){return function(t,n,i){for(var r=-1,a=Object(t),o=i(t),s=o.length;s--;){var l=o[e?s:++r];if(!1===n(a[l],l,a))break}return t}}},322:(e,t,n)=>{var i=n(9813),r=n(7302),a=n(7580),o=n(3518);e.exports=function(e){return function(t){t=o(t);var n=r(t)?a(t):void 0,s=n?n[0]:t.charAt(0),l=n?i(n,1).join(""):t.slice(1);return s[e]()+l}}},5481:(e,t,n)=>{var i=n(6025),r=n(1473),a=n(2742);e.exports=function(e){return function(t,n,o){var s=Object(t);if(!r(t)){var l=i(n,3);t=a(t),n=function(e){return l(s[e],e,s)}}var c=e(t,n,o);return c>-1?s[l?t[c]:c]:void 0}}},6381:(e,t,n)=>{var i=n(7255),r=n(3195),a=n(1495);e.exports=function(e){return function(t,n,o){return o&&"number"!=typeof o&&r(t,n,o)&&(n=o=void 0),t=a(t),void 0===n?(n=t,t=0):n=a(n),o=void 0===o?t{var i=n(3924),r=n(9694),a=n(2230),o=i&&1/a(new i([,-0]))[1]==1/0?function(e){return new i(e)}:r;e.exports=o},8528:(e,t,n)=>{var i=n(8136),r=function(){try{var e=i(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=r},5305:(e,t,n)=>{var i=n(692),r=n(7897),a=n(75);e.exports=function(e,t,n,o,s,l){var c=1&n,u=e.length,d=t.length;if(u!=d&&!(c&&d>u))return!1;var h=l.get(e),p=l.get(t);if(h&&p)return h==t&&p==e;var f=-1,m=!0,g=2&n?new i:void 0;for(l.set(e,t),l.set(t,e);++f{var i=n(7197),r=n(6219),a=n(9231),o=n(5305),s=n(234),l=n(2230),c=i?i.prototype:void 0,u=c?c.valueOf:void 0;e.exports=function(e,t,n,i,c,d,h){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!d(new r(e),new r(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var p=s;case"[object Set]":var f=1&i;if(p||(p=l),e.size!=t.size&&!f)return!1;var m=h.get(e);if(m)return m==t;i|=2,h.set(e,t);var g=o(p(e),p(t),i,c,d,h);return h.delete(e),g;case"[object Symbol]":if(u)return u.call(e)==u.call(t)}return!1}},8078:(e,t,n)=>{var i=n(8248),r=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,o,s){var l=1&n,c=i(e),u=c.length;if(u!=i(t).length&&!l)return!1;for(var d=u;d--;){var h=c[d];if(!(l?h in t:r.call(t,h)))return!1}var p=s.get(e),f=s.get(t);if(p&&f)return p==t&&f==e;var m=!0;s.set(e,t),s.set(t,e);for(var g=l;++d{var i="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=i},8248:(e,t,n)=>{var i=n(1986),r=n(5918),a=n(2742);e.exports=function(e){return i(e,a,r)}},2799:(e,t,n)=>{var i=n(5964);e.exports=function(e,t){var n=e.__data__;return i(t)?n["string"==typeof t?"string":"hash"]:n.map}},9091:(e,t,n)=>{var i=n(5072),r=n(2742);e.exports=function(e){for(var t=r(e),n=t.length;n--;){var a=t[n],o=e[a];t[n]=[a,o,i(o)]}return t}},8136:(e,t,n)=>{var i=n(6703),r=n(40);e.exports=function(e,t){var n=r(e,t);return i(n)?n:void 0}},1137:(e,t,n)=>{var i=n(2709)(Object.getPrototypeOf,Object);e.exports=i},1587:(e,t,n)=>{var i=n(7197),r=Object.prototype,a=r.hasOwnProperty,o=r.toString,s=i?i.toStringTag:void 0;e.exports=function(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var i=!0}catch(l){}var r=o.call(e);return i&&(t?e[s]=n:delete e[s]),r}},5918:(e,t,n)=>{var i=n(4903),r=n(8174),a=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(e){return null==e?[]:(e=Object(e),i(o(e),(function(t){return a.call(e,t)})))}:r;e.exports=s},8383:(e,t,n)=>{var i=n(908),r=n(5797),a=n(8319),o=n(3924),s=n(7091),l=n(9066),c=n(7907),u="[object Map]",d="[object Promise]",h="[object Set]",p="[object WeakMap]",f="[object DataView]",m=c(i),g=c(r),v=c(a),y=c(o),x=c(s),b=l;(i&&b(new i(new ArrayBuffer(1)))!=f||r&&b(new r)!=u||a&&b(a.resolve())!=d||o&&b(new o)!=h||s&&b(new s)!=p)&&(b=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,i=n?c(n):"";if(i)switch(i){case m:return f;case g:return u;case v:return d;case y:return h;case x:return p}return t}),e.exports=b},40:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},6417:(e,t,n)=>{var i=n(3082),r=n(4963),a=n(3629),o=n(6800),s=n(4635),l=n(9793);e.exports=function(e,t,n){for(var c=-1,u=(t=i(t,e)).length,d=!1;++c{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},5403:(e,t,n)=>{var i=n(9620);e.exports=function(){this.__data__=i?i(null):{},this.size=0}},2747:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},6037:(e,t,n)=>{var i=n(9620),r=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(i){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return r.call(t,e)?t[e]:void 0}},4154:(e,t,n)=>{var i=n(9620),r=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return i?void 0!==t[e]:r.call(t,e)}},7728:(e,t,n)=>{var i=n(9620);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=i&&void 0===t?"__lodash_hash_undefined__":t,this}},3529:(e,t,n)=>{var i=n(7197),r=n(4963),a=n(3629),o=i?i.isConcatSpreadable:void 0;e.exports=function(e){return a(e)||r(e)||!!(o&&e&&e[o])}},6800:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var i=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==i||"symbol"!=i&&t.test(e))&&e>-1&&e%1==0&&e{var i=n(9231),r=n(1473),a=n(6800),o=n(8092);e.exports=function(e,t,n){if(!o(n))return!1;var s=typeof t;return!!("number"==s?r(n)&&a(t,n.length):"string"==s&&t in n)&&i(n[t],e)}},5823:(e,t,n)=>{var i=n(3629),r=n(152),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/;e.exports=function(e,t){if(i(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!r(e))||(o.test(e)||!a.test(e)||null!=t&&e in Object(t))}},5964:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},257:(e,t,n)=>{var i=n(5525),r=function(){var e=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();e.exports=function(e){return!!r&&r in e}},2936:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},5072:(e,t,n)=>{var i=n(8092);e.exports=function(e){return e===e&&!i(e)}},3894:e=>{e.exports=function(){this.__data__=[],this.size=0}},8699:(e,t,n)=>{var i=n(7112),r=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=i(t,e);return!(n<0)&&(n==t.length-1?t.pop():r.call(t,n,1),--this.size,!0)}},4957:(e,t,n)=>{var i=n(7112);e.exports=function(e){var t=this.__data__,n=i(t,e);return n<0?void 0:t[n][1]}},7184:(e,t,n)=>{var i=n(7112);e.exports=function(e){return i(this.__data__,e)>-1}},7109:(e,t,n)=>{var i=n(7112);e.exports=function(e,t){var n=this.__data__,r=i(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}},4086:(e,t,n)=>{var i=n(9676),r=n(8384),a=n(5797);e.exports=function(){this.size=0,this.__data__={hash:new i,map:new(a||r),string:new i}}},9255:(e,t,n)=>{var i=n(2799);e.exports=function(e){var t=i(this,e).delete(e);return this.size-=t?1:0,t}},9186:(e,t,n)=>{var i=n(2799);e.exports=function(e){return i(this,e).get(e)}},3423:(e,t,n)=>{var i=n(2799);e.exports=function(e){return i(this,e).has(e)}},3739:(e,t,n)=>{var i=n(2799);e.exports=function(e,t){var n=i(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}},234:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,i){n[++t]=[i,e]})),n}},284:e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},4634:(e,t,n)=>{var i=n(9151);e.exports=function(e){var t=i(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},9620:(e,t,n)=>{var i=n(8136)(Object,"create");e.exports=i},8836:(e,t,n)=>{var i=n(2709)(Object.keys,Object);e.exports=i},9494:(e,t,n)=>{e=n.nmd(e);var i=n(1032),r=t&&!t.nodeType&&t,a=r&&e&&!e.nodeType&&e,o=a&&a.exports===r&&i.process,s=function(){try{var e=a&&a.require&&a.require("util").types;return e||o&&o.binding&&o.binding("util")}catch(t){}}();e.exports=s},3581:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},2709:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},4262:(e,t,n)=>{var i=n(3665),r=Math.max;e.exports=function(e,t,n){return t=r(void 0===t?e.length-1:t,0),function(){for(var a=arguments,o=-1,s=r(a.length-t,0),l=Array(s);++o{var i=n(1032),r="object"==typeof self&&self&&self.Object===Object&&self,a=i||r||Function("return this")();e.exports=a},5774:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},1596:e=>{e.exports=function(e){return this.__data__.has(e)}},2230:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},9156:(e,t,n)=>{var i=n(7532),r=n(3197)(i);e.exports=r},3197:e=>{var t=Date.now;e.exports=function(e){var n=0,i=0;return function(){var r=t(),a=16-(r-i);if(i=r,a>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},511:(e,t,n)=>{var i=n(8384);e.exports=function(){this.__data__=new i,this.size=0}},835:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},707:e=>{e.exports=function(e){return this.__data__.get(e)}},8832:e=>{e.exports=function(e){return this.__data__.has(e)}},5077:(e,t,n)=>{var i=n(8384),r=n(5797),a=n(8059);e.exports=function(e,t){var n=this.__data__;if(n instanceof i){var o=n.__data__;if(!r||o.length<199)return o.push([e,t]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(e,t),this.size=n.size,this}},7167:e=>{e.exports=function(e,t,n){for(var i=n-1,r=e.length;++i{var i=n(4622),r=n(7302),a=n(2110);e.exports=function(e){return r(e)?a(e):i(e)}},170:(e,t,n)=>{var i=n(4634),r=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=i((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(r,(function(e,n,i,r){t.push(i?r.replace(a,"$1"):n||e)})),t}));e.exports=o},9793:(e,t,n)=>{var i=n(152);e.exports=function(e){if("string"==typeof e||i(e))return e;var t=e+"";return"0"==t&&1/e==-Infinity?"-0":t}},7907:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},6050:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},2110:e=>{var t="\\ud800-\\udfff",n="["+t+"]",i="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",r="\\ud83c[\\udffb-\\udfff]",a="[^"+t+"]",o="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+i+"|"+r+")"+"?",c="[\\ufe0e\\ufe0f]?",u=c+l+("(?:\\u200d(?:"+[a,o,s].join("|")+")"+c+l+")*"),d="(?:"+[a+i+"?",i,o,s,n].join("|")+")",h=RegExp(r+"(?="+r+")|"+d+u,"g");e.exports=function(e){return e.match(h)||[]}},1547:e=>{e.exports=function(e){return function(){return e}}},8573:(e,t,n)=>{var i=n(8092),r=n(72),a=n(2582),o=Math.max,s=Math.min;e.exports=function(e,t,n){var l,c,u,d,h,p,f=0,m=!1,g=!1,v=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function y(t){var n=l,i=c;return l=c=void 0,f=t,d=e.apply(i,n)}function x(e){var n=e-p;return void 0===p||n>=t||n<0||g&&e-f>=u}function b(){var e=r();if(x(e))return w(e);h=setTimeout(b,function(e){var n=t-(e-p);return g?s(n,u-(e-f)):n}(e))}function w(e){return h=void 0,v&&l?y(e):(l=c=void 0,d)}function S(){var e=r(),n=x(e);if(l=arguments,c=this,p=e,n){if(void 0===h)return function(e){return f=e,h=setTimeout(b,t),m?y(e):d}(p);if(g)return clearTimeout(h),h=setTimeout(b,t),y(p)}return void 0===h&&(h=setTimeout(b,t)),d}return t=a(t)||0,i(n)&&(m=!!n.leading,u=(g="maxWait"in n)?o(a(n.maxWait)||0,t):u,v="trailing"in n?!!n.trailing:v),S.cancel=function(){void 0!==h&&clearTimeout(h),f=0,l=p=c=h=void 0},S.flush=function(){return void 0===h?d:w(r())},S}},9231:e=>{e.exports=function(e,t){return e===t||e!==e&&t!==t}},2730:(e,t,n)=>{var i=n(4277),r=n(9863),a=n(6025),o=n(3629),s=n(3195);e.exports=function(e,t,n){var l=o(e)?i:r;return n&&s(e,t,n)&&(t=void 0),l(e,a(t,3))}},1211:(e,t,n)=>{var i=n(5481)(n(1475));e.exports=i},1475:(e,t,n)=>{var i=n(2045),r=n(6025),a=n(9753),o=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var l=null==n?0:a(n);return l<0&&(l=o(s+l,0)),i(e,r(t,3),l)}},5008:(e,t,n)=>{var i=n(5182),r=n(2034);e.exports=function(e,t){return i(r(e,t),1)}},6181:(e,t,n)=>{var i=n(8667);e.exports=function(e,t,n){var r=null==e?void 0:i(e,t);return void 0===r?n:r}},5658:(e,t,n)=>{var i=n(529),r=n(6417);e.exports=function(e,t){return null!=e&&r(e,t,i)}},2100:e=>{e.exports=function(e){return e}},4963:(e,t,n)=>{var i=n(4906),r=n(3141),a=Object.prototype,o=a.hasOwnProperty,s=a.propertyIsEnumerable,l=i(function(){return arguments}())?i:function(e){return r(e)&&o.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},3629:e=>{var t=Array.isArray;e.exports=t},1473:(e,t,n)=>{var i=n(4786),r=n(4635);e.exports=function(e){return null!=e&&r(e.length)&&!i(e)}},5127:(e,t,n)=>{var i=n(9066),r=n(3141);e.exports=function(e){return!0===e||!1===e||r(e)&&"[object Boolean]"==i(e)}},5174:(e,t,n)=>{e=n.nmd(e);var i=n(7009),r=n(9488),a=t&&!t.nodeType&&t,o=a&&e&&!e.nodeType&&e,s=o&&o.exports===a?i.Buffer:void 0,l=(s?s.isBuffer:void 0)||r;e.exports=l},8111:(e,t,n)=>{var i=n(1848);e.exports=function(e,t){return i(e,t)}},4786:(e,t,n)=>{var i=n(9066),r=n(8092);e.exports=function(e){if(!r(e))return!1;var t=i(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},4635:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},2066:(e,t,n)=>{var i=n(5690);e.exports=function(e){return i(e)&&e!=+e}},2854:e=>{e.exports=function(e){return null==e}},5690:(e,t,n)=>{var i=n(9066),r=n(3141);e.exports=function(e){return"number"==typeof e||r(e)&&"[object Number]"==i(e)}},8092:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},3141:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},3977:(e,t,n)=>{var i=n(9066),r=n(1137),a=n(3141),o=Function.prototype,s=Object.prototype,l=o.toString,c=s.hasOwnProperty,u=l.call(Object);e.exports=function(e){if(!a(e)||"[object Object]"!=i(e))return!1;var t=r(e);if(null===t)return!0;var n=c.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==u}},6769:(e,t,n)=>{var i=n(9066),r=n(3629),a=n(3141);e.exports=function(e){return"string"==typeof e||!r(e)&&a(e)&&"[object String]"==i(e)}},152:(e,t,n)=>{var i=n(9066),r=n(3141);e.exports=function(e){return"symbol"==typeof e||r(e)&&"[object Symbol]"==i(e)}},9102:(e,t,n)=>{var i=n(8150),r=n(6194),a=n(9494),o=a&&a.isTypedArray,s=o?r(o):i;e.exports=s},2742:(e,t,n)=>{var i=n(7538),r=n(3654),a=n(1473);e.exports=function(e){return a(e)?i(e):r(e)}},5727:e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},2034:(e,t,n)=>{var i=n(8950),r=n(6025),a=n(3849),o=n(3629);e.exports=function(e,t){return(o(e)?i:a)(e,r(t,3))}},7702:(e,t,n)=>{var i=n(2526),r=n(5358),a=n(6025);e.exports=function(e,t){var n={};return t=a(t,3),r(e,(function(e,r,a){i(n,r,t(e,r,a))})),n}},9627:(e,t,n)=>{var i=n(3079),r=n(1954),a=n(2100);e.exports=function(e){return e&&e.length?i(e,a,r):void 0}},9151:(e,t,n)=>{var i=n(8059);function r(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var i=arguments,r=t?t.apply(this,i):i[0],a=n.cache;if(a.has(r))return a.get(r);var o=e.apply(this,i);return n.cache=a.set(r,o)||a,o};return n.cache=new(r.Cache||i),n}r.Cache=i,e.exports=r},6452:(e,t,n)=>{var i=n(3079),r=n(2580),a=n(2100);e.exports=function(e){return e&&e.length?i(e,a,r):void 0}},9694:e=>{e.exports=function(){}},72:(e,t,n)=>{var i=n(7009);e.exports=function(){return i.Date.now()}},38:(e,t,n)=>{var i=n(9586),r=n(4084),a=n(5823),o=n(9793);e.exports=function(e){return a(e)?i(o(e)):r(e)}},6222:(e,t,n)=>{var i=n(6381)();e.exports=i},4064:(e,t,n)=>{var i=n(7897),r=n(6025),a=n(9204),o=n(3629),s=n(3195);e.exports=function(e,t,n){var l=o(e)?i:a;return n&&s(e,t,n)&&(t=void 0),l(e,r(t,3))}},4286:(e,t,n)=>{var i=n(5182),r=n(3226),a=n(8794),o=n(3195),s=a((function(e,t){if(null==e)return[];var n=t.length;return n>1&&o(e,t[0],t[1])?t=[]:n>2&&o(t[0],t[1],t[2])&&(t=[t[0]]),r(e,i(t,1),[])}));e.exports=s},8174:e=>{e.exports=function(){return[]}},9488:e=>{e.exports=function(){return!1}},3038:(e,t,n)=>{var i=n(8573),r=n(8092);e.exports=function(e,t,n){var a=!0,o=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return r(n)&&(a="leading"in n?!!n.leading:a,o="trailing"in n?!!n.trailing:o),i(e,t,{leading:a,maxWait:t,trailing:o})}},1495:(e,t,n)=>{var i=n(2582),r=1/0;e.exports=function(e){return e?(e=i(e))===r||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}},9753:(e,t,n)=>{var i=n(1495);e.exports=function(e){var t=i(e),n=t%1;return t===t?n?t-n:t:0}},2582:(e,t,n)=>{var i=n(821),r=n(8092),a=n(152),o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(r(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=r(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=i(e);var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):o.test(e)?NaN:+e}},3518:(e,t,n)=>{var i=n(2446);e.exports=function(e){return null==e?"":i(e)}},6339:(e,t,n)=>{var i=n(6025),r=n(9602);e.exports=function(e,t){return e&&e.length?r(e,i(t,2)):[]}},2085:(e,t,n)=>{var i=n(322)("toUpperCase");e.exports=i},7288:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function o(e){try{l(i.next(e))}catch(t){a(t)}}function s(e){try{l(i.throw(e))}catch(t){a(t)}}function l(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,s)}l((i=i.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(n(121));function o(e){let t,n,r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"maxAge";const s=()=>i(this,void 0,void 0,(function*(){if(void 0!==t)return;const s=s=>i(this,void 0,void 0,(function*(){r=a.default();const i=s[1][o]-Date.now();return i<=0?(e.delete(s[0]),void r.resolve()):(t=s[0],n=setTimeout((()=>{e.delete(s[0]),r&&r.resolve()}),i),"function"===typeof n.unref&&n.unref(),r.promise)}));try{for(const t of e)yield s(t)}catch(l){}t=void 0})),l=e.set.bind(e);return e.set=(i,a)=>{e.has(i)&&e.delete(i);const o=l(i,a);return t&&t===i&&(t=void 0,void 0!==n&&(clearTimeout(n),n=void 0),void 0!==r&&(r.reject(void 0),r=void 0)),s(),o},s(),e}t.default=o,e.exports=o,e.exports.default=o},5438:(e,t,n)=>{"use strict";const i=n(65),r=n(7288),a=new WeakMap,o=new WeakMap,s=function(e){let{cacheKey:t,cache:n=new Map,maxAge:a}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"number"===typeof a&&r(n);const s=function(){for(var i=arguments.length,r=new Array(i),o=0;o0&&void 0!==arguments[0]?arguments[0]:{};return(t,n,i)=>{const r=t[n];if("function"!==typeof r)throw new TypeError("The decorated value must be a function");delete i.value,delete i.writable,i.get=function(){if(!a.has(this)){const t=s(r,e);return a.set(this,t),t}return a.get(this)}}},s.clear=e=>{const t=o.get(e);if(!t)throw new TypeError("Can't clear a function that was not memoized!");if("function"!==typeof t.clear)throw new TypeError("The cache Map can't be cleared!");t.clear()},e.exports=s},65:e=>{"use strict";const t=(e,t,i,r)=>{if("length"===i||"prototype"===i)return;if("arguments"===i||"caller"===i)return;const a=Object.getOwnPropertyDescriptor(e,i),o=Object.getOwnPropertyDescriptor(t,i);!n(a,o)&&r||Object.defineProperty(e,i,o)},n=function(e,t){return void 0===e||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},i=(e,t)=>"/* Wrapped ".concat(e,"*/\n").concat(t),r=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),a=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name");e.exports=function(e,n){let{ignoreNonConfigurable:o=!1}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{name:s}=e;for(const i of Reflect.ownKeys(n))t(e,n,i,o);return((e,t)=>{const n=Object.getPrototypeOf(t);n!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,n)})(e,n),((e,t,n)=>{const o=""===n?"":"with ".concat(n.trim(),"() "),s=i.bind(null,o,t.toString());Object.defineProperty(s,"name",a),Object.defineProperty(e,"toString",{...r,value:s})})(e,n,s),e}},121:e=>{"use strict";e.exports=()=>{const e={};return e.promise=new Promise(((t,n)=>{e.resolve=t,e.reject=n})),e}},888:(e,t,n)=>{"use strict";var i=n(9047);function r(){}function a(){}a.resetWarningCache=r,e.exports=function(){function e(e,t,n,r,a,o){if(o!==i){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:r};return n.PropTypes=n,n}},2007:(e,t,n)=>{e.exports=n(888)()},9047:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},3841:function(e,t,n){e=n.nmd(e),function(n,i){var r=function(){var e=null,t={};m();var n=[],i=function(t){if(void 0!==(t=t||{}).seed&&null!==t.seed&&t.seed===parseInt(t.seed,10))e=t.seed;else if("string"===typeof t.seed)e=x(t.seed);else{if(void 0!==t.seed&&null!==t.seed)throw new TypeError("The seed value must be an integer or string");e=null}var l,c;if(null!==t.count&&void 0!==t.count){for(var u=t.count,d=[],h=0;hd.length;){var p=i(t);null!==e&&(t.seed=e),d.push(p)}return t.count=u,d}return s([l=r(t),c=a(l,t),o(l,c,t)],t)};function r(e){if(n.length>0){var t=h(a=b(e.hue)),i=(a[1]-a[0])/n.length,r=parseInt((t-a[0])/i);return!0===n[r]?r=(r+2)%n.length:n[r]=!0,(t=h(a=[(a[0]+r*i)%359,(a[0]+(r+1)*i)%359]))<0&&(t=360+t),t}var a;return(t=h(a=c(e.hue)))<0&&(t=360+t),t}function a(e,t){if("monochrome"===t.hue)return 0;if("random"===t.luminosity)return h([0,100]);var n=u(e),i=n[0],r=n[1];switch(t.luminosity){case"bright":i=55;break;case"dark":i=r-10;break;case"light":r=55}return h([i,r])}function o(e,t,n){var i=l(e,t),r=100;switch(n.luminosity){case"dark":r=i+20;break;case"light":i=(r+i)/2;break;case"random":i=0,r=100}return h([i,r])}function s(e,t){switch(t.format){case"hsvArray":return e;case"hslArray":return y(e);case"hsl":var n=y(e);return"hsl("+n[0]+", "+n[1]+"%, "+n[2]+"%)";case"hsla":var i=y(e),r=t.alpha||Math.random();return"hsla("+i[0]+", "+i[1]+"%, "+i[2]+"%, "+r+")";case"rgbArray":return g(e);case"rgb":return"rgb("+g(e).join(", ")+")";case"rgba":var a=g(e);r=t.alpha||Math.random();return"rgba("+a.join(", ")+", "+r+")";default:return p(e)}}function l(e,t){for(var n=d(e).lowerBounds,i=0;i=r&&t<=o){var l=(s-a)/(o-r);return l*t+(a-l*r)}}return 0}function c(e){if("number"===typeof parseInt(e)){var n=parseInt(e);if(n<360&&n>0)return[n,n]}if("string"===typeof e)if(t[e]){var i=t[e];if(i.hueRange)return i.hueRange}else if(e.match(/^#?([0-9A-F]{3}|[0-9A-F]{6})$/i)){var r=v(e)[0];return[r,r]}return[0,360]}function u(e){return d(e).saturationRange}function d(e){for(var n in e>=334&&e<=360&&(e-=360),t){var i=t[n];if(i.hueRange&&e>=i.hueRange[0]&&e<=i.hueRange[1])return t[n]}return"Color not found"}function h(t){if(null===e){var n=.618033988749895,i=Math.random();return i+=n,i%=1,Math.floor(t[0]+i*(t[1]+1-t[0]))}var r=t[1]||1,a=t[0]||0,o=(e=(9301*e+49297)%233280)/233280;return Math.floor(a+o*(r-a))}function p(e){var t=g(e);function n(e){var t=e.toString(16);return 1==t.length?"0"+t:t}return"#"+n(t[0])+n(t[1])+n(t[2])}function f(e,n,i){var r=i[0][0],a=i[i.length-1][0],o=i[i.length-1][1],s=i[0][1];t[e]={hueRange:n,lowerBounds:i,saturationRange:[r,a],brightnessRange:[o,s]}}function m(){f("monochrome",null,[[0,0],[100,0]]),f("red",[-26,18],[[20,100],[30,92],[40,89],[50,85],[60,78],[70,70],[80,60],[90,55],[100,50]]),f("orange",[18,46],[[20,100],[30,93],[40,88],[50,86],[60,85],[70,70],[100,70]]),f("yellow",[46,62],[[25,100],[40,94],[50,89],[60,86],[70,84],[80,82],[90,80],[100,75]]),f("green",[62,178],[[30,100],[40,90],[50,85],[60,81],[70,74],[80,64],[90,50],[100,40]]),f("blue",[178,257],[[20,100],[30,86],[40,80],[50,74],[60,60],[70,52],[80,44],[90,39],[100,35]]),f("purple",[257,282],[[20,100],[30,87],[40,79],[50,70],[60,65],[70,59],[80,52],[90,45],[100,42]]),f("pink",[282,334],[[20,100],[30,90],[40,86],[60,84],[80,80],[90,75],[100,73]])}function g(e){var t=e[0];0===t&&(t=1),360===t&&(t=359),t/=360;var n=e[1]/100,i=e[2]/100,r=Math.floor(6*t),a=6*t-r,o=i*(1-n),s=i*(1-a*n),l=i*(1-(1-a)*n),c=256,u=256,d=256;switch(r){case 0:c=i,u=l,d=o;break;case 1:c=s,u=i,d=o;break;case 2:c=o,u=i,d=l;break;case 3:c=o,u=s,d=i;break;case 4:c=l,u=o,d=i;break;case 5:c=i,u=o,d=s}return[Math.floor(255*c),Math.floor(255*u),Math.floor(255*d)]}function v(e){e=3===(e=e.replace(/^#/,"")).length?e.replace(/(.)/g,"$1$1"):e;var t=parseInt(e.substr(0,2),16)/255,n=parseInt(e.substr(2,2),16)/255,i=parseInt(e.substr(4,2),16)/255,r=Math.max(t,n,i),a=r-Math.min(t,n,i),o=r?a/r:0;switch(r){case t:return[(n-i)/a%6*60||0,o,r];case n:return[60*((i-t)/a+2)||0,o,r];case i:return[60*((t-n)/a+4)||0,o,r]}}function y(e){var t=e[0],n=e[1]/100,i=e[2]/100,r=(2-n)*i;return[t,Math.round(n*i/(r<1?r:2-r)*1e4)/100,r/2*100]}function x(e){for(var t=0,n=0;n!==e.length&&!(t>=Number.MAX_SAFE_INTEGER);n++)t+=e.charCodeAt(n);return t}function b(e){if(isNaN(e)){if("string"===typeof e)if(t[e]){var n=t[e];if(n.hueRange)return n.hueRange}else if(e.match(/^#?([0-9A-F]{3}|[0-9A-F]{6})$/i)){return d(v(e)[0]).hueRange}}else{var i=parseInt(e);if(i<360&&i>0)return d(e).hueRange}return[0,360]}return i}();e&&e.exports&&(t=e.exports=r),t.randomColor=r}()},4463:(e,t,n)=>{"use strict";var i=n(2791),r=n(5296);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n