/** * Kendo UI v2016.1.112 (http://www.telerik.com/kendo-ui) * Copyright 2016 Telerik AD. All rights reserved. * * Kendo UI commercial licenses may be obtained at * http://www.telerik.com/purchase/license-agreement/kendo-ui-complete * If you do not own a commercial license, this file shall be governed by the trial license terms. */ !function(e,define){define("util/main.min",["kendo.core.min"],e)}(function(){return function(){function e(e){return typeof e!==F}function t(e,t){var n=i(t);return B.round(e*n)/n}function i(e){return e?B.pow(10,e):1}function n(e,t,i){return B.max(B.min(e,i),t)}function o(e){return e*E}function r(e){return e/E}function a(e){return"number"==typeof e&&!isNaN(e)}function s(t,i){return e(t)?t:i}function l(e){return e*e}function c(e){var t,i=[];for(t in e)i.push(t+e[t]);return i.sort().join("")}function u(e){var t,i=2166136261;for(t=0;e.length>t;++t)i+=(i<<1)+(i<<4)+(i<<7)+(i<<8)+(i<<24),i^=e.charCodeAt(t);return i>>>0}function h(e){return u(c(e))}function p(e){var t,i=e.length,n=O,o=z;for(t=0;i>t;t++)o=B.max(o,e[t]),n=B.min(n,e[t]);return{min:n,max:o}}function d(e){return p(e).min}function g(e){return p(e).max}function f(e){return x(e).min}function m(e){return x(e).max}function x(e){var t,i,n,o=O,r=z;for(t=0,i=e.length;i>t;t++)n=e[t],null!==n&&isFinite(n)&&(o=B.min(o,n),r=B.max(r,n));return{min:o===O?void 0:o,max:r===z?void 0:r}}function v(e){return e?e[e.length-1]:void 0}function y(e,t){return e.push.apply(e,t),e}function b(e){return L.template(e,{useWithBlock:!1,paramName:"d"})}function w(t,i){return e(i)&&null!==i?" "+t+"='"+i+"' ":""}function _(e){var t,i="";for(t=0;e.length>t;t++)i+=w(e[t][0],e[t][1]);return i}function A(t){var i,n,o="";for(i=0;t.length>i;i++)n=t[i][1],e(n)&&(o+=t[i][0]+":"+n+";");return""!==o?o:void 0}function C(e){return"string"!=typeof e&&(e+="px"),e}function k(e){var t,i,n=[];if(e)for(t=L.toHyphens(e).split("-"),i=0;t.length>i;i++)n.push("k-pos-"+t[i]);return n.join(" ")}function S(t){return""===t||null===t||"none"===t||"transparent"===t||!e(t)}function P(e){for(var t={1:"i",10:"x",100:"c",2:"ii",20:"xx",200:"cc",3:"iii",30:"xxx",300:"ccc",4:"iv",40:"xl",400:"cd",5:"v",50:"l",500:"d",6:"vi",60:"lx",600:"dc",7:"vii",70:"lxx",700:"dcc",8:"viii",80:"lxxx",800:"dccc",9:"ix",90:"xc",900:"cm",1e3:"m"},i=[1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],n="";e>0;)i[0]>e?i.shift():(n+=t[i[0]],e-=i[0]);return n}function T(e){var t,i,n,o,r;for(e=e.toLowerCase(),t={i:1,v:5,x:10,l:50,c:100,d:500,m:1e3},i=0,n=0,o=0;e.length>o;++o){if(r=t[e.charAt(o)],!r)return null;i+=r,r>n&&(i-=2*n),n=r}return i}function I(e){var t=Object.create(null);return function(){var i,n="";for(i=arguments.length;--i>=0;)n+=":"+arguments[i];return n in t?t[n]:e.apply(this,arguments)}}function R(e){for(var t,i,n=[],o=0,r=e.length;r>o;)t=e.charCodeAt(o++),t>=55296&&56319>=t&&r>o?(i=e.charCodeAt(o++),56320==(64512&i)?n.push(((1023&t)<<10)+(1023&i)+65536):(n.push(t),o--)):n.push(t);return n}function V(e){return e.map(function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+=String.fromCharCode(e)}).join("")}var B=Math,L=window.kendo,D=L.deepExtend,E=B.PI/180,O=Number.MAX_VALUE,z=-Number.MAX_VALUE,F="undefined",M=Date.now;M||(M=function(){return(new Date).getTime()}),D(L,{util:{MAX_NUM:O,MIN_NUM:z,append:y,arrayLimits:p,arrayMin:d,arrayMax:g,defined:e,deg:r,hashKey:u,hashObject:h,isNumber:a,isTransparent:S,last:v,limitValue:n,now:M,objectKey:c,round:t,rad:o,renderAttr:w,renderAllAttr:_,renderPos:k,renderSize:C,renderStyle:A,renderTemplate:b,sparseArrayLimits:x,sparseArrayMin:f,sparseArrayMax:m,sqr:l,valueOrDefault:s,romanToArabic:T,arabicToRoman:P,memoize:I,ucs2encode:V,ucs2decode:R}}),L.drawing.util=L.util,L.dataviz.util=L.util}(),window.kendo},"function"==typeof define&&define.amd?define:function(e,t,i){(i||t)()}),function(e,define){define("util/text-metrics",["kendo.core","util/main"],e)}(function(){!function(e){function t(e,t,i){return c.current.measure(e,t,i)}var i=document,n=window.kendo,o=n.Class,r=n.util,a=r.defined,s=o.extend({init:function(e){this._size=e,this._length=0,this._map={}},put:function(e,t){var i=this,n=i._map,o={key:e,value:t};n[e]=o,i._head?(i._tail.newer=o,o.older=i._tail,i._tail=o):i._head=i._tail=o,i._length>=i._size?(n[i._head.key]=null,i._head=i._head.newer,i._head.older=null):i._length++},get:function(e){var t=this,i=t._map[e];return i?(i===t._head&&i!==t._tail&&(t._head=i.newer,t._head.older=null),i!==t._tail&&(i.older&&(i.older.newer=i.newer,i.newer.older=i.older),i.older=t._tail,i.newer=null,t._tail.newer=i,t._tail=i),i.value):void 0}}),l=e("
")[0],c=o.extend({init:function(e){this._cache=new s(1e3),this._initOptions(e)},options:{baselineMarkerSize:1},measure:function(t,n,o){var s,c,u,h,p,d=r.objectKey(n),g=r.hashKey(t+d),f=this._cache.get(g);if(f)return f;s={width:0,height:0,baseline:0},c=o?o:l,u=this._baselineMarker().cloneNode(!1);for(h in n)p=n[h],a(p)&&(c.style[h]=p);return e(c).text(t),c.appendChild(u),i.body.appendChild(c),(t+"").length&&(s.width=c.offsetWidth-this.options.baselineMarkerSize,s.height=c.offsetHeight,s.baseline=u.offsetTop+this.options.baselineMarkerSize),s.width>0&&s.height>0&&this._cache.put(g,s),c.parentNode.removeChild(c),s},_baselineMarker:function(){return e("
")[0]}});c.current=new c,n.util.TextMetrics=c,n.util.LRUCache=s,n.util.measureText=t}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(e,t,i){(i||t)()}),function(e,define){define("util/base64.min",["util/main.min"],e)}(function(){return function(){function e(e){var i,n,o,a,s,l,c,u="",h=0;for(e=t(e);e.length>h;)i=e.charCodeAt(h++),n=e.charCodeAt(h++),o=e.charCodeAt(h++),a=i>>2,s=(3&i)<<4|n>>4,l=(15&n)<<2|o>>6,c=63&o,isNaN(n)?l=c=64:isNaN(o)&&(c=64),u=u+r.charAt(a)+r.charAt(s)+r.charAt(l)+r.charAt(c);return u}function t(e){var t,i,n="";for(t=0;e.length>t;t++)i=e.charCodeAt(t),128>i?n+=o(i):2048>i?(n+=o(192|i>>>6),n+=o(128|63&i)):65536>i&&(n+=o(224|i>>>12),n+=o(128|i>>>6&63),n+=o(128|63&i));return n}var i=window.kendo,n=i.deepExtend,o=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n(i.util,{encodeBase64:e,encodeUTF8:t})}(),window.kendo},"function"==typeof define&&define.amd?define:function(e,t,i){(i||t)()}),function(e,define){define("mixins/observers.min",["kendo.core.min"],e)}(function(){return function(e){var t=Math,i=window.kendo,n=i.deepExtend,o=e.inArray,r={observers:function(){return this._observers=this._observers||[]},addObserver:function(e){return this._observers?this._observers.push(e):this._observers=[e],this},removeObserver:function(e){var t=this.observers(),i=o(e,t);return-1!=i&&t.splice(i,1),this},trigger:function(e,t){var i,n,o=this._observers;if(o&&!this._suspended)for(n=0;o.length>n;n++)i=o[n],i[e]&&i[e](t);return this},optionsChange:function(e){this.trigger("optionsChange",e)},geometryChange:function(e){this.trigger("geometryChange",e)},suspend:function(){return this._suspended=(this._suspended||0)+1,this},resume:function(){return this._suspended=t.max((this._suspended||0)-1,0),this},_observerField:function(e,t){this[e]&&this[e].removeObserver(this),this[e]=t,t.addObserver(this)}};n(i,{mixins:{ObserversMixin:r}})}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(e,t,i){(i||t)()}),function(e,define){define("kendo.dataviz.chart.min",["kendo.data.min","kendo.userevents.min","kendo.dataviz.core.min","kendo.drawing.min","kendo.dataviz.themes.min"],e)}(function(){return function(e,t){function i(){return this}function n(){this._defaults={}}function o(e,t,i,n){var o,r,a=(n.x-i.x)*(e.y-i.y)-(n.y-i.y)*(e.x-i.x),s=(n.y-i.y)*(t.x-e.x)-(n.x-i.x)*(t.y-e.y);return 0!==s&&(r=a/s,o=new ei(e.x+r*(t.x-e.x),e.y+r*(t.y-e.y))),o}function r(e,t){var i,n,o,r=e.series,s=r.length,l=e.seriesDefaults,c=Ft({},e.seriesDefaults),u=t?Ft({},t.seriesDefaults):{},h=Ft({},u);for(a(c),a(h),i=0;s>i;i++)n=r[i].type||e.seriesDefaults.type,o=Ft({data:[]},h,u[n],{tooltip:e.tooltip},c,l[n]),r[i]._defaults=o,r[i]=Ft({},o,r[i])}function a(e){delete e.bar,delete e.column,delete e.rangeColumn,delete e.line,delete e.verticalLine,delete e.pie,delete e.donut,delete e.area,delete e.verticalArea,delete e.scatter,delete e.scatterLine,delete e.bubble,delete e.candlestick,delete e.ohlc,delete e.boxPlot,delete e.bullet,delete e.verticalBullet,delete e.polarArea,delete e.polarLine,delete e.radarArea,delete e.radarLine,delete e.waterfall}function s(e){var t,i,n,o,r=e.series,a=e.seriesColors||[];for(t=0;r.length>t;t++)i=r[t],n=a[t%a.length],i.color=i.color||n,o=i._defaults,o&&(o.color=o.color||n)}function l(e){var t;kt([Gi,Qo,nr,or],function(){t=this+"Axes",e[t]&&(e[this+"Axis"]=e[t],delete e[t])})}function c(t,i){var n=(i||{}).axisDefaults||{};kt([Gi,Qo,nr,or],function(){var i=this+"Axis",o=[].concat(t[i]),r=t.axisDefaults||{};o=e.map(o,function(e){var t=(e||{}).color,o=Ft({},n,n[i],r,r[i],{line:{color:t},labels:{color:t},title:{color:t}},e);return delete o[i],o}),t[i]=o.length>1?o:o[0]})}function u(e){var t,i=e.length,n=0;for(t=0;i>t;t++)n=It.max(n,e[t].data.length);return n}function h(e){return e*e}function p(e,t){if(null===t)return t;var i=Mt(e,!0);return i(t)}function d(e,t){if(null===t)return t;var i="_date_"+e,n=t[i];return n||(n=g(Mt(e,!0)(t)),t[i]=n),n}function g(e){var t,i;if(e instanceof Date)t=e;else if(typeof e===Lo)t=Lt.parseDate(e)||new Date(e);else if(e)if(St(e))for(t=[],i=0;e.length>i;i++)t.push(g(e[i]));else t=new Date(e);return t}function f(e){return St(e)?Tt(e,f):e?g(e).getTime():t}function m(e,t,i,n){var o,r=e;return e&&(e=g(e),o=e.getHours(),i===rr?(r=new Date(e.getFullYear()+t,0,1),Lt.date.adjustDST(r,0)):i===Wn?(r=new Date(e.getFullYear(),e.getMonth()+t,1),Lt.date.adjustDST(r,o)):i===tr?(r=m(x(e,n),7*t,rn),Lt.date.adjustDST(r,o)):i===rn?(r=new Date(e.getFullYear(),e.getMonth(),e.getDate()+t),Lt.date.adjustDST(r,o)):i===In?r=_(new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours()),t*zo):i===Xn?(r=_(e,t*Oo),r.getSeconds()>0&&r.setSeconds(0)):i===_o&&(r=_(e,t*Eo)),r.getMilliseconds()>0&&r.setMilliseconds(0)),r}function x(e,t){var i=e.getDay(),n=0;if(!isNaN(i))for(t=t||0;i!==t;)0===i?i=6:i--,n++;return _(e,-n*Fo)}function v(e,t,i){return e=g(e),m(e,0,t,i)}function y(e,t,i){return e=g(e),e&&v(e,t,i).getTime()===e.getTime()?e:m(e,1,t,i)}function b(e,t){var i=e.getTime()-t,n=e.getTimezoneOffset()-t.getTimezoneOffset();return i-(n*i>0?n*Oo:0)}function w(e,t){var i=e.getTime()-t,n=e.getTimezoneOffset()-t.getTimezoneOffset();return i-n*Oo}function _(e,t){var i=e.getTimezoneOffset(),n=new Date(e.getTime()+t),o=n.getTimezoneOffset()-i;return new Date(n.getTime()+(t*o>0?o*Oo:0))}function A(e,t,i){var n;return n=i===rr?t.getFullYear()-e.getFullYear():i===Wn?12*A(e,t,rr)+t.getMonth()-e.getMonth():It.floor(i===rn?b(t,e)/Fo:b(t,e)/No[i])}function C(e,t,i,n){var o,r=g(e),a=g(t);return o=i==Wn?r.getMonth()-a.getMonth()+12*(r.getFullYear()-a.getFullYear())+k(r,new Date(r.getFullYear(),r.getMonth()),rn)/new Date(r.getFullYear(),r.getMonth()+1,0).getDate():i===rr?r.getFullYear()-a.getFullYear()+C(r,new Date(r.getFullYear(),0),Wn,1)/12:k(r,a,i),o/n}function k(e,t,i){return b(e,t)/No[i]}function S(e){return 1===e.length?e[0]:e}function P(e){var t,i,n,o=e.length;if(o>0)for(i=0;o>i;i++)n=e[i].contentBox(),t?t.wrap(n):t=n.clone();return t||Yt()}function T(e,t){return e&&t?e.toLowerCase()===t.toLowerCase():e===t}function I(e,t){return e&&t?f(e)===f(t):e===t}function R(e,t){null!==t&&e.push(t)}function V(e,t){for(var i,n,o=0,r=t.length-1;r>=o;)if(i=It.floor((o+r)/2),n=t[i],e>n)o=i+1;else{if(!(n>e)){for(;I(t[i-1],e);)i--;return i}r=i-1}return e>=t[i]?i:i-1}function B(e){return"number"==typeof e&&!isNaN(e)}function L(e){var t,i,n=e.length,o=0;for(t=0;n>t;t++)i=e[t],B(i)&&o++;return o}function D(e){return L(e)===e.length}function E(e){var t,i,n,o={};for(t=0;e.length>t;t++)i=e[t],n=i.options.name,n&&(o[n]=i.range());return o}function O(e,t,i,n){var o,r,a,s,l,c=!1;if(i=i||{},a=i.excluded=i.excluded||[],s=i.defaults=i.defaults||{},l=i.depth=i.depth||0,!(l>jn)){for(o in e)!hi(o,i.excluded)&&e.hasOwnProperty(o)&&(r=e[o],Ut(r)?(c=!0,n||(e[o]=Ci(r(t),s[o]))):typeof r===ao&&(i.defaults=s[o],i.depth++,c=O(r,t,i,n)||c,i.depth--));return c}}function z(e,i){var n,o,r,a=[],s=e.groupNameTemplate,l=i.length;if(0===l)return r=Ft({},e),r.visibleInLegend=!1,[r];for(xi(s)?(Lt.logToConsole("'groupNameTemplate' is obsolete and will be removed in future versions. Specify the group name template as 'series.name'"),s&&(n=Ht(s))):(n=Ht(e.name||""),0===n._slotCount&&(n=Ht(xi(e.name)?"#= group.value #: #= series.name #":"#= group.value #"))),o=0;l>o;o++)r=Ft({},e),Ut(r.color)||(r.color=t),r._groupIx=o,a.push(r),n&&(r.name=n({series:r,group:i[o]}));return a}function F(e,t){var i,n,o=[];for(t=[].concat(t),i=0;e.length>i;i++)n=e[i],hi(n.type,t)&&o.push(n);return o}function M(t,i){if(t instanceof Date){for(var n=0,o=i.length;o>n;n++)if(I(i[n],t))return n;return-1}return e.inArray(t,i)}function U(e,t){t=t||ci;for(var i=1,n=e.length;n>i;i++)if(t(e[i],e[i-1])<0){e.sort(t);break}return e}function H(e,t){var i,n=U(e,t),o=n.length,r=o>0?[n[0]]:[];for(t=t||ci,i=1;o>i;i++)0!==t(n[i],vi(r))&&r.push(n[i]);return r}function N(e,t){var i=e.type,n=t instanceof Date;return!i&&n||T(i,on)}function j(e){var t,i,n,o,r=[],a=e.length;for(t=0;a>t;t++)for(i=e[t],o=i.length,n=0;o>n;n++)r[n]=r[n]||[],r[n].push(i[n]);return r}function G(e,t){if(e.indexOf(".")>-1)for(var i,n=e.split("."),o="";n.length>1;)o+=n.shift(),i=Lt.getter(o)(t)||{},Lt.setter(o)(t,i),o+="."}function Y(e){var t,i,n,o=e.data,r=0;for(t=0;o.length>t;t++)i=ee.current.bindPoint(e,t),n=i.valueFields.value,typeof n===Lo&&(n=parseFloat(n)),B(n)&&i.fields.visible!==!1&&(r+=It.abs(n));return r}function q(e){var t=e.overlay;return t&&t.gradient&&"none"!=t.gradient}function X(e){for(var t=0;e.length>t;t++)if(xi(e[t].zIndex))return!0}function W(){this._defaultPrevented=!0}function K(e,t){if(e)for(var i=0;e.length>i;i++)if(e[i].category===t)return[e[i]]}function Q(e){return xi(e)&&null!==e}function Z(e){var t,i,n={};for(i=0;e.length>i;i++)t=e[i],t.axis.options.name&&(n[t.axis.options.name]={min:t.range.min,max:t.range.max});return n}function $(e,t){var i=(t||"").toLowerCase(),n="none"==i&&!(e.ctrlKey||e.shiftKey||e.altKey)||e[i+"Key"];return n}var J,ee,te,ie,ne,oe,re,ae,se,le,ce,ue,he,pe,de,ge,fe,me,xe,ve,ye,be,we,_e,Ae,Ce,ke,Se,Pe,Te,Ie,Re,Ve,Be,Le,De,Ee,Oe,ze,Fe,Me,Ue,He,Ne,je,Ge,Ye,qe,Xe,We,Ke,Qe,Ze,$e,Je,et,tt,it,nt,ot,rt,at,st,lt,ct,ut,ht,pt,dt,gt,ft,mt,xt,vt,yt,bt,wt,_t,At,Ct,kt=e.each,St=e.isArray,Pt=e.isPlainObject,Tt=e.map,It=Math,Rt=e.noop,Vt=e.extend,Bt=e.proxy,Lt=window.kendo,Dt=Lt.Class,Et=Lt.Observable,Ot=Lt.data.DataSource,zt=Lt.ui.Widget,Ft=Lt.deepExtend,Mt=Lt.getter,Ut=Lt.isFunction,Ht=Lt.template,Nt=Lt.dataviz,jt=Nt.Axis,Gt=Nt.AxisLabel,Yt=Nt.Box2D,qt=Nt.BoxElement,Xt=Nt.ChartElement,Wt=Lt.drawing.Color,Kt=Nt.CurveProcessor,Qt=Nt.FloatElement,Zt=Nt.Note,$t=Nt.LogarithmicAxis,Jt=Nt.NumericAxis,ei=Nt.Point2D,ti=Nt.RootElement,ii=Nt.Ring,ni=Nt.ShapeElement,oi=Nt.ShapeBuilder,ri=Nt.TextBox,ai=Nt.Title,si=Nt.alignPathToPixel,li=Nt.autoFormat,ci=Nt.dateComparer,ui=Nt.getSpacing,hi=Nt.inArray,pi=Nt.interpolateValue,di=Nt.mwDelta,gi=Nt.round,fi=Lt.util,mi=fi.append,xi=fi.defined,vi=fi.last,yi=fi.limitValue,bi=fi.sparseArrayLimits,wi=fi.sparseArrayMin,_i=fi.sparseArrayMax,Ai=fi.renderTemplate,Ci=fi.valueOrDefault,ki=Nt.geometry,Si=Nt.drawing,Pi=".kendoChart",Ti="above",Ii="area",Ri="auto",Vi="fit",Bi=Nt.AXIS_LABEL_CLICK,Li="bar",Di=6,Ei=.8,Oi="below",zi="#000",Fi="both",Mi="bottom",Ui="boxPlot",Hi="bubble",Ni="bullet",ji="candlestick",Gi="category",Yi="center",qi="change",Xi="circle",Wi="contextmenu"+Pi,Ki=Nt.CLIP,Qi="color",Zi="column",$i=Nt.COORD_PRECISION,Ji="cross",en="k-",tn="custom",nn="dataBound",on="date",rn="days",an=Nt.DEFAULT_FONT,sn=Nt.DEFAULT_HEIGHT,ln=Nt.DEFAULT_PRECISION,cn=Nt.DEFAULT_WIDTH,un=4,hn="donut",pn=50,dn="drag",gn="dragEnd",fn="dragStart",mn="errorLow",xn="errorHigh",vn="xErrorLow",yn="xErrorHigh",bn="yErrorLow",wn="yErrorHigh",_n="fadeIn",An="first",Cn="from",kn="funnel",Sn="glass",Pn="horizontal",Tn="horizontalWaterfall",In="hours",Rn=Nt.INITIAL_ANIMATION_DURATION,Vn="insideBase",Bn="insideEnd",Ln="interpolate",Dn="leave",En="left",On="legendItemClick",zn="legendItemHover",Fn="line",Mn=8,Un="linear",Hn="log",Nn="max",jn=5,Gn=Number.MAX_VALUE,Yn="min",qn=-Number.MAX_VALUE,Xn="minutes",Wn="months",Kn="mouseleave"+Pi,Qn="mousemove.tracking",Zn="mouseover"+Pi,$n="mouseout"+Pi,Jn="mousemove"+Pi,eo=20,to=150,io="DOMMouseScroll"+Pi+" mousewheel"+Pi,no=Nt.NOTE_CLICK,oo=Nt.NOTE_HOVER,ro="noteText",ao="object",so="ohlc",lo="outsideEnd",co="pie",uo=70,ho="plotAreaClick",po="pointer",go="rangeBar",fo="rangeColumn",mo="render",xo="right",vo="roundedBevel",yo="roundedGlass",bo="scatter",wo="scatterLine",_o="seconds",Ao="selectStart",Co="select",ko="selectEnd",So="seriesClick",Po="seriesHover",To=.001,Io="step",Ro="smooth",Vo="stderr",Bo="stddev",Lo="string",Do="summary",Eo=1e3,Oo=60*Eo,zo=60*Oo,Fo=24*zo,Mo=7*Fo,Uo=31*Fo,Ho=365*Fo,No={years:Ho,months:Uo,weeks:Mo,days:Fo,hours:zo,minutes:Oo,seconds:Eo},jo="to",Go="top",Yo=150,qo=5,Xo=100,Wo=100,Ko="chart-tooltip-inverse",Qo="value",Zo="verticalArea",$o="verticalBullet",Jo="verticalLine",er="waterfall",tr="weeks",ir="#fff",nr="x",or="y",rr="years",ar="zero",sr=3,lr="zoomStart",cr="zoom",ur="zoomEnd",hr=[_o,Xn,In,rn,tr,Wn,rr],pr=[Li,Zi,so,ji,Ui,Ni,fo,go,er,Tn],dr={seconds:"HH:mm:ss",minutes:"HH:mm",hours:"HH:mm",days:"M/d",weeks:"M/d",months:"MMM 'yy",years:"yyyy"},gr=zt.extend({init:function(e,i){var n,o,r=this;Lt.destroy(e),zt.fn.init.call(r,e),r.element.addClass(en+this.options.name.toLowerCase()).css("position","relative"),i&&(o=i.dataSource,i.dataSource=t),n=Ft({},r.options,i),r._originalOptions=Ft({},n),r._initTheme(n),r._initSurface(),r.bind(r.events,r.options),r.wrapper=r.element,i&&(i.dataSource=o),r._initDataSource(i),Lt.notify(r,Nt.ui)},_initTheme:function(i){var n,o=this,r=Nt.ui.themes||{},a=i.theme,c=r[a]||r[a.toLowerCase()],u=a&&c?c.chart:{},h=[],p=i.series||[];for(n=0;p.length>n;n++)h.push(e.extend({},p[n]));i.series=h,l(i),o._applyDefaults(i,u),null===i.seriesColors&&(i.seriesColors=t),o.options=Ft({},u,i),s(o.options)},_initDataSource:function(e){var t=this,i=(e||{}).dataSource;t._dataChangeHandler=Bt(t._onDataChanged,t),t.dataSource=Ot.create(i).bind(qi,t._dataChangeHandler),t._bindCategories(),i&&(t._hasDataSource=!0),t._redraw(),t._attachEvents(),i&&t.options.autoBind&&t.dataSource.fetch()},setDataSource:function(e){var t=this;t.dataSource.unbind(qi,t._dataChangeHandler),t.dataSource=e=Ot.create(e),t._hasDataSource=!0,t._hasData=!1,e.bind(qi,t._dataChangeHandler),t.options.autoBind&&e.fetch()},events:[nn,So,Po,Bi,On,zn,ho,fn,dn,gn,lr,cr,ur,Ao,Co,ko,no,oo,mo],items:function(){return e()},options:{name:"Chart",renderAs:"",theme:"default",chartArea:{},legend:{visible:!0,labels:{}},categoryAxis:{},autoBind:!0,seriesDefaults:{type:Zi,data:[],highlight:{visible:!0},labels:{},negativeValues:{visible:!1}},series:[],seriesColors:null,tooltip:{visible:!1},transitions:!0,valueAxis:{},plotArea:{},title:{},xAxis:{},yAxis:{},panes:[{}],pannable:!1,zoomable:!1},refresh:function(){var e=this;e._applyDefaults(e.options),s(e.options),e._bindSeries(),e._bindCategories(),e.trigger(nn),e._redraw()},getSize:function(){return Lt.dimensions(this.element)},_resize:function(){var e=this.options.transitions;this.options.transitions=!1,this._redraw(),this.options.transitions=e},redraw:function(e){var t,i,n=this;n._applyDefaults(n.options),s(n.options),e?(i=n._model._plotArea,t=i.findPane(e),i.redraw(t)):n._redraw()},getAxis:function(e){var t,i=this._plotArea.axes;for(t=0;i.length>t;t++)if(i[t].options.name===e)return new Ct(i[t])},toggleHighlight:function(e,t){var i,n,o,r,a=this._plotArea,s=this._highlight,l=(a.srcSeries||a.series||[])[0];if(Pt(t)?(i=t.series,n=t.category):i=n=t,o=l.type===hn?K(a.pointsBySeriesName(i),n):l.type===co||l.type===kn?K((a.charts[0]||{}).points,n):a.pointsBySeriesName(i))for(r=0;o.length>r;r++)s.togglePointHighlight(o[r],e)},_initSurface:function(){var e=this.surface,t=this._surfaceWrap(),i=this.options.chartArea;i.width&&t.css("width",i.width),i.height&&t.css("height",i.height),e&&e.options.type===this.options.renderAs?(this.surface.clear(),this.surface.resize()):(e&&e.destroy(),this.surface=Si.Surface.create(t,{type:this.options.renderAs}))},_surfaceWrap:function(){return this.element},_redraw:function(){var e,t=this,i=t._getModel();t._destroyView(),t._model=i,t._plotArea=i._plotArea,i.renderVisual(),this.options.transitions!==!1&&i.traverse(function(e){e.animation&&e.animation.setup()}),t._initSurface(),t.surface.draw(i.visual),this.options.transitions!==!1&&i.traverse(function(e){e.animation&&e.animation.play()}),t._tooltip=t._createTooltip(),t._highlight=new pt(e),t._setupSelection(),t._createPannable(),t._createZoomSelection(),t._createMousewheelZoom(),t._hasDataSource&&!t._hasData&&t.options.autoBind||t.trigger(mo)},exportVisual:function(e){var t,i,n,o;return e&&(e.width||e.height)?(i=this.options.chartArea,n=this._originalOptions.chartArea,Ft(i,e),o=this._getModel(),i.width=n.width,i.height=n.height,o.renderVisual(),t=o.visual):t=this.surface.exportVisual(),t},_sharedTooltip:function(){var e=this,t=e.options;return e._plotArea instanceof rt&&t.tooltip.shared},_createPannable:function(){var e=this.options;e.pannable!==!1&&(this._pannable=new bt(this._plotArea,e.pannable))},_createZoomSelection:function(){var e=this.options.zoomable,t=(e||{}).selection;e!==!1&&t!==!1&&(this._zoomSelection=new wt(this,t))},_createMousewheelZoom:function(){var e=this.options.zoomable,t=(e||{}).mousewheel;e!==!1&&t!==!1&&(this._mousewheelZoom=new _t(this,t))},_createTooltip:function(){var e,t=this,i=t.options,n=t.element;return e=t._sharedTooltip()?new ft(n,t._plotArea,i.tooltip):new gt(n,i.tooltip),e.bind(Dn,Bt(t._tooltipleave,t)),e},_tooltipleave:function(){var e=this,t=e._plotArea,i=e._highlight;t.hideCrosshairs(),i.hide()},_applyDefaults:function(e,t){c(e,t),r(e,t)},_getModel:function(){var e,t=this,i=t.options,n=new ti(t._modelOptions());return n.chart=t,ai.buildTitle(i.title,n),e=n._plotArea=t._createPlotArea(),i.legend.visible&&n.append(new oe(e.options.legend)),n.append(e),n.reflow(),n},_modelOptions:function(){var e=this,t=e.options,i=e.element,n=It.floor(i.height()),o=It.floor(i.width());return e._size=null,Ft({width:o||cn,height:n||sn,transitions:t.transitions},t.chartArea)},_createPlotArea:function(e){var t=this,i=t.options;return J.current.create(e?[]:i.series,i)},_setupSelection:function(){var e,t,i,n,o,r,a=this,s=a._plotArea,l=s.axes,c=a._selections=[];for(a._selectStartHandler||(a._selectStartHandler=Bt(a._selectStart,a),a._selectHandler=Bt(a._select,a),a._selectEndHandler=Bt(a._selectEnd,a)),t=0;l.length>t;t++)i=l[t],r=i.options,i instanceof re&&r.select&&!r.vertical&&(n=0,o=r.categories.length-1,i instanceof ae&&(n=r.categories[n],o=r.categories[o]),r.justified||(i instanceof ae?o=m(o,1,r.baseUnit,r.weekStartDay):o++),e=new yt(a,i,Ft({min:n,max:o},r.select)),e.bind(Ao,a._selectStartHandler),e.bind(Co,a._selectHandler),e.bind(ko,a._selectEndHandler),c.push(e))},_selectStart:function(e){return this.trigger(Ao,e)},_select:function(e){return this.trigger(Co,e)},_selectEnd:function(e){return this.trigger(ko,e)},_attachEvents:function(){var e=this,t=e.element;t.on(Wi,Bt(e._click,e)),t.on(Zn,Bt(e._mouseover,e)),t.on($n,Bt(e._mouseout,e)),t.on(io,Bt(e._mousewheel,e)),t.on(Kn,Bt(e._mouseleave,e)),e._mousemove=Lt.throttle(Bt(e._mousemove,e),eo),e._shouldAttachMouseMove()&&t.on(Jn,e._mousemove),Lt.UserEvents&&(e._userEvents=new Lt.UserEvents(t,{global:!0,filter:":not(.k-selector)",multiTouch:!1,fastTap:!0,tap:Bt(e._tap,e),start:Bt(e._start,e),move:Bt(e._move,e),end:Bt(e._end,e)}))},_mouseout:function(e){var t=this,i=t._getChartElement(e);i&&i.leave&&i.leave(t,e)},_start:function(e){var t=this,i=t._events;xi(i[fn]||i[dn]||i[gn])&&t._startNavigation(e,fn),t._pannable&&t._pannable.start(e),t._zoomSelection&&t._zoomSelection.start(e)},_move:function(e){var t,i,n,o,r,a,s=this,l=s._navState,c=s._pannable,u={};if(c)e.preventDefault(),u=c.move(e),u&&!s.trigger(dn,{axisRanges:u,originalEvent:e})&&c.pan();else if(l){for(e.preventDefault(),t=l.axes,i=0;t.length>i;i++)n=t[i],o=n.options.name,o&&(r=n.options.vertical?e.y:e.x,a=r.startLocation-r.location,0!==a&&(u[n.options.name]=n.translateRange(a)));l.axisRanges=u,s.trigger(dn,{axisRanges:u,originalEvent:e})}s._zoomSelection&&s._zoomSelection.move(e)},_end:function(e){if(this._endNavigation(e,gn),this._zoomSelection){var t=this._zoomSelection.end(e);t&&!this.trigger(cr,{axisRanges:t,originalEvent:e})&&this._zoomSelection.zoom()}this._pannable&&this._pannable.end(e)},_mousewheel:function(e){var t,i,n,o,r,a,s=this,l=e.originalEvent,c=di(e),u=s._navState,h={},p=s._mousewheelZoom;if(p)e.preventDefault(),h=p.updateRanges(c),h&&!s.trigger(cr,{delta:c,axisRanges:h,originalEvent:e})&&p.zoom();else if(u||(t=s._startNavigation(l,lr),t||(u=s._navState)),u){for(i=u.totalDelta||c,u.totalDelta=i+c,n=s._navState.axes,o=0;n.length>o;o++)r=n[o],a=r.options.name,a&&(h[a]=r.scaleRange(-i));s.trigger(cr,{delta:c,axisRanges:h,originalEvent:e}),s._mwTimeout&&clearTimeout(s._mwTimeout),s._mwTimeout=setTimeout(function(){s._endNavigation(e,ur)},to)}},_startNavigation:function(e,t){var i,n,o,r=this,a=r._eventCoordinates(e),s=r._model._plotArea,l=s.findPointPane(a),c=s.axes.slice(0),u=!1;if(l){for(i=0;c.length>i;i++)if(n=c[i],n.box.containsPoint(a)){u=!0;break}!u&&s.backgroundBox().containsPoint(a)&&(o=r.trigger(t,{axisRanges:E(c),originalEvent:e}),o?r._userEvents.cancel():(r._suppressHover=!0,r._unsetActivePoint(),r._navState={pane:l,axes:c}))}},_endNavigation:function(e,t){var i=this;i._navState&&(i.trigger(t,{axisRanges:i._navState.axisRanges,originalEvent:e}),i._suppressHover=!1,i._navState=null)},_getChartElement:function(e,i){var n,o=this.surface.eventTarget(e);if(o){for(;o&&!n;)n=o.chartElement,o=o.parent;return n?(n.aliasFor&&(n=n.aliasFor(e,this._eventCoordinates(e))),i&&(n=n.closest(i)),n):t}},_eventCoordinates:function(e){var t=this,i=xi((e.x||{}).client),n=i?e.x.client:e.clientX,o=i?e.y.client:e.clientY;return t._toModelCoordinates(n,o)},_toModelCoordinates:function(t,i){var n=this.element,o=n.offset(),r=parseInt(n.css("paddingLeft"),10),a=parseInt(n.css("paddingTop"),10),s=e(window);return new ei(t-o.left-r+s.scrollLeft(),i-o.top-a+s.scrollTop())},_tap:function(e){var t=this,i=t._getChartElement(e);t._activePoint===i?t._click(e):(t._startHover(e)||t._unsetActivePoint(),t._click(e))},_click:function(e){for(var t=this,i=t._getChartElement(e);i;)i.click&&i.click(t,e),i=i.parent},_startHover:function(e){var i,n=this,o=n._getChartElement(e),r=n._tooltip,a=n._highlight,s=n.options.tooltip;if(!n._suppressHover&&a&&!a.isHighlighted(o)&&!n._sharedTooltip())return i=n._getChartElement(e,function(e){return e.hover}),i&&!i.hover(n,e)?(n._activePoint=i,s=Ft({},s,i.options.tooltip),s.visible&&r.show(i),a.show(i),i.tooltipTracking):t},_mouseover:function(t){var i=this;i._startHover(t)&&e(document).on(Qn,Bt(i._mouseMoveTracking,i))},_mouseMoveTracking:function(t){var i,n,o=this,r=o.options,a=o._tooltip,s=o._highlight,l=o._eventCoordinates(t),c=o._activePoint;o._plotArea.box.containsPoint(l)?c&&c.tooltipTracking&&c.series&&c.parent.getNearestPoint&&(n=c.parent.getNearestPoint(l.x,l.y,c.seriesIx),n&&n!=c&&(n.hover(o,t),o._activePoint=n,i=Ft({},r.tooltip,c.options.tooltip),i.visible&&a.show(n),s.show(n))):(e(document).off(Qn),o._unsetActivePoint())},_mousemove:function(e){var t=this._eventCoordinates(e);this._trackCrosshairs(t),this._sharedTooltip()&&this._trackSharedTooltip(t,e)},_trackCrosshairs:function(e){var t,i,n=this._plotArea.crosshairs;for(t=0;n.length>t;t++)i=n[t],i.box.containsPoint(e)?i.showAt(e):i.hide()},_trackSharedTooltip:function(t,i){var n,o,r,a,s=this,l=s.options,c=s._plotArea,u=c.categoryAxis,h=s._tooltip,p=l.tooltip,d=s._highlight;c.box.containsPoint(t)&&(n=u.pointCategoryIndex(t),n!==s._tooltipCategoryIx&&(o=c.pointsByCategoryIndex(n),r=e.map(o,function(e){return e.eventArgs(i)}),a=r[0]||{},a.categoryPoints=r,o.length>0&&!this.trigger(Po,a)?(p.visible&&h.showAt(o,t),d.show(o)):h.hide(),s._tooltipCategoryIx=n))},_mouseleave:function(t){var i=this,n=i._plotArea,o=i._tooltip,r=i._highlight,a=t.relatedTarget;a&&e(a).closest(o.element).length||(i._mousemove.cancel(),n.hideCrosshairs(),r.hide(),setTimeout(Bt(o.hide,o),Wo),i._tooltipCategoryIx=null)},_unsetActivePoint:function(){var e=this,t=e._tooltip,i=e._highlight;e._activePoint=null,t&&t.hide(),i&&i.hide()},_onDataChanged:function(){var e,t,i=this,n=i.options,o=i._sourceSeries||n.series,r=o.length,a=i.dataSource.view(),l=(i.dataSource.group()||[]).length>0,c=[];for(e=0;r>e;e++)t=o[e],i._isBindable(t)&&l?mi(c,z(t,a)):c.push(t||[]);i._sourceSeries=o,n.series=c,s(i.options),i._bindSeries(),i._bindCategories(),i._hasData=!0,i._deferRedraw()},_deferRedraw:function(){var e=this;Lt.support.vml?(e._clearRedrawTimeout(),e._redrawTimeout=setTimeout(function(){e.surface&&(e.trigger(nn),e._redraw())},0)):(e.trigger(nn),e._redraw())},_clearRedrawTimeout:function(){this._redrawTimeout&&(clearInterval(this._redrawTimeout),this._redrawTimeout=null)},_bindSeries:function(){var e,t,i,n,o=this,r=o.dataSource.view(),a=o.options.series,s=a.length;for(e=0;s>e;e++)t=a[e],o._isBindable(t)&&(i=t._groupIx,n=xi(i)?(r[i]||{}).items:r,t.autoBind!==!1&&(t.data=n))},_bindCategories:function(){var e,t,i=this,n=i.dataSource.view()||[],o=(i.dataSource.group()||[]).length>0,r=n,a=i.options,s=[].concat(a.categoryAxis);for(o&&n.length&&(r=n[0].items),e=0;s.length>e;e++)t=s[e],t.autoBind!==!1&&i._bindCategoryAxis(t,r,e)},_bindCategoryAxis:function(e,t,i){var n,o,r,a=(t||[]).length;if(e.field)for(e.categories=[],n=0;a>n;n++)r=t[n],o=p(e.field,r),0===n?(e.categories=[o],e.dataItems=[r]):(e.categories.push(o),e.dataItems.push(r));else this._bindCategoryAxisFromSeries(e,i)},_bindCategoryAxisFromSeries:function(e,t){var i,n,o,r,a,s,l,c,u,h,g,f=this,m=[],x=f.options.series,v=x.length,y={};for(n=0;v>n;n++)if(o=x[n],r=o.categoryAxis===e.name||!o.categoryAxis&&0===t,a=o.data,l=a.length,o.categoryField&&r&&l>0)for(g=N(e,p(o.categoryField,a[0])),h=g?d:p,s=0;l>s;s++)c=a[s],u=h(o.categoryField,c),(g||!y[u])&&(m.push([u,c]),g||(y[u]=!0));m.length>0&&(g&&(m=H(m,function(e,t){return ci(e[0],t[0])})),i=j(m),e.categories=i[0],e.dataItems=i[1])},_isBindable:function(e){var t,i,n=ee.current.valueFields(e),o=!0;for(i=0;n.length>i;i++)if(t=n[i],t===Qo?t="field":t+="Field",!xi(e[t])){o=!1;break}return o},_legendItemClick:function(e,t){var i,n,o,r=this,a=r._plotArea,s=(a.srcSeries||a.series)[e],l=(r._sourceSeries||[])[e]||s;hi(s.type,[co,hn,kn])?(o=l.data[t],n=xi(o.visible)?!o.visible:!1,o.visible=n):(n=!l.visible,l.visible=n,s.visible=n),r.options.transitions&&(r.options.transitions=!1,i=!0),r.redraw(),i&&(r.options.transitions=!0)},_legendItemHover:function(e,t){var i,n,o=this,r=o._plotArea,a=o._highlight,s=(r.srcSeries||r.series)[e];i=hi(s.type,[co,hn,kn])?t:e,n=r.pointsBySeriesIndex(i),a.show(n)},_shouldAttachMouseMove:function(){var e=this;return e._plotArea.crosshairs.length||e._tooltip&&e._sharedTooltip()},setOptions:function(i){var n=this,o=i.dataSource;i.dataSource=t,n._originalOptions=Ft(n._originalOptions,i),n.options=Ft({},n._originalOptions),n._sourceSeries=null,e(document).off(Jn),zt.fn._setEvents.call(n,i),n._initTheme(n.options),o&&n.setDataSource(o),n._hasDataSource?n._onDataChanged():(n._bindCategories(),n.redraw()),n._shouldAttachMouseMove()&&n.element.on(Jn,n._mousemove)},destroy:function(){var t=this,i=t.dataSource;t.element.off(Pi),i.unbind(qi,t._dataChangeHandler),e(document).off(Qn),t._userEvents&&t._userEvents.destroy(),t._destroyView(),t.surface.destroy(),t.surface=null,t._clearRedrawTimeout(),zt.fn.destroy.call(t)},_destroyView:function(){var e=this,t=e._model,i=e._selections;if(t&&(t.destroy(), e._model=null),i)for(;i.length>0;)i.shift().destroy();e._unsetActivePoint(),e._tooltip&&e._tooltip.destroy(),e._highlight&&e._highlight.destroy(),e._zoomSelection&&e._zoomSelection.destroy()}});Nt.ExportMixin.extend(gr.fn),Lt.PDFMixin&&Lt.PDFMixin.extend(gr.fn),J=Dt.extend({init:function(){this._registry=[]},register:function(e,t){this._registry.push({type:e,seriesTypes:t})},create:function(e,t){var i,n,o,r=this._registry,a=r[0];for(i=0;r.length>i;i++)if(n=r[i],o=F(e,n.seriesTypes),o.length>0){a=n;break}return new a.type(o,t)}}),J.current=new J,ee=Dt.extend({init:function(){this._valueFields={},this._otherFields={},this._nullValue={},this._undefinedValue={}},register:function(e,i,n){var o,r,a=this;for(i=i||[Qo],o=0;e.length>o;o++)r=e[o],a._valueFields[r]=i,a._otherFields[r]=n,a._nullValue[r]=a._makeValue(i,null),a._undefinedValue[r]=a._makeValue(i,t)},canonicalFields:function(e){return this.valueFields(e).concat(this.otherFields(e))},valueFields:function(e){return this._valueFields[e.type]||[Qo]},otherFields:function(e){return this._otherFields[e.type]||[Qo]},bindPoint:function(e,t,i){var n,o,r,a,s,l=this,c=e.data,u=xi(i)?i:c[t],h={valueFields:{value:u}},p=l.valueFields(e),d=l._otherFields[e.type];return null===u?s=l._nullValue[e.type]:xi(u)?St(u)?(o=u.slice(p.length),s=l._bindFromArray(u,p),n=l._bindFromArray(o,d)):typeof u===ao&&(r=l.sourceFields(e,p),a=l.sourceFields(e,d),s=l._bindFromObject(u,p,r),n=l._bindFromObject(u,d,a)):s=l._undefinedValue[e.type],xi(s)&&(1===p.length?h.valueFields.value=s[p[0]]:h.valueFields=s),h.fields=n||{},h},_makeValue:function(e,t){var i,n,o={},r=e.length;for(i=0;r>i;i++)n=e[i],o[n]=t;return o},_bindFromArray:function(e,t){var i,n,o={};if(t)for(n=It.min(t.length,e.length),i=0;n>i;i++)o[t[i]]=e[i];return o},_bindFromObject:function(e,t,i){var n,o,r,a,s={};if(t)for(o=t.length,i=i||t,n=0;o>n;n++)r=t[n],a=i[n],s[r]=p(a,e);return s},sourceFields:function(e,t){var i,n,o,r,a;if(t)for(n=t.length,r=[],i=0;n>i;i++)o=t[i],a=o===Qo?"field":o+"Field",r.push(e[a]||o);return r}}),ee.current=new ee,te=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),this.textBox=new ri(e,i.options),i.append(this.textBox)},options:{position:lo,margin:ui(3),padding:ui(4),color:zi,background:"",border:{width:1,color:""},aboveAxis:!0,vertical:!1,animation:{type:_n,delay:Rn},zIndex:2},createVisual:function(){this.textBox.options.noclip=this.options.noclip},reflow:function(e){var t=this,i=t.options,n=i.vertical,o=i.aboveAxis,r=t.children[0],a=r.box,s=r.options.padding;r.options.align=n?Yi:En,r.options.vAlign=n?Go:Yi,i.position==Bn?n?(r.options.vAlign=Go,!o&&a.height()l[r]||l[a]>e[a])&&(t=s.paddingBox.clone(),t[r]=It.max(l[r],e[r]),t[a]=It.min(l[a],e[a]),this.reflow(t))}}),ie=qt.extend({init:function(e){var t=this;qt.fn.init.call(t,e),t.createContainer(),t.createMarker(),t.createLabel()},createContainer:function(){var e=this;e.container=new Qt({vertical:!1,wrap:!1,align:Yi}),e.append(e.container)},createMarker:function(){this.container.append(new ni(this.markerOptions()))},markerOptions:function(){var e=this.options,t=e.markerColor;return Ft({},e.markers,{background:t,border:{color:t}})},createLabel:function(){var e=this,t=e.options,i=Ft({},t.labels);e.container.append(new ri(t.text,i))},renderComplete:function(){var e,t;Xt.fn.renderComplete.call(this),e=this.options.cursor||{},t=this._itemOverlay=Si.Path.fromRect(this.container.box.toRect(),{fill:{color:ir,opacity:0},stroke:null,cursor:e.style||e}),this.appendVisual(t)},click:function(e,t){var i=this.eventArgs(t);e.trigger(On,i)||(t.preventDefault(),e._legendItemClick(i.seriesIndex,i.pointIndex))},hover:function(e,t){var i=this.eventArgs(t);return e.trigger(zn,i)||(t.preventDefault(),e._legendItemHover(i.seriesIndex,i.pointIndex)),!0},leave:function(e){e._unsetActivePoint()},eventArgs:function(t){var i=this.options;return{element:e(t.target),text:i.text,series:i.series,seriesIndex:i.series.index,pointIndex:i.pointIndex}},renderVisual:function(){var e=this,t=e.options,i=t.visual;i?(e.visual=i({active:t.active,series:t.series,pointIndex:t.pointIndex,options:{markers:e.markerOptions(),labels:t.labels},createVisual:function(){e.createVisual(),e.renderChildren(),e.renderComplete();var t=e.visual;return delete e.visual,t}}),this.addVisual()):Xt.fn.renderVisual.call(e)}}),ne=Xt.extend({render:function(){var e,t,i=this.children,n=this.options,o=n.vertical;for(this.visual=new Si.Layout(null,{spacing:o?0:n.spacing,lineSpacing:o?n.spacing:0,orientation:o?"vertical":"horizontal"}),t=0;i.length>t;t++)e=i[t],e.reflow(new Yt),e.renderVisual()},reflow:function(e){this.visual.rect(e.toRect()),this.visual.reflow();var t=this.visual.clippedBBox();this.box=t?Nt.rectToBox(t):new Yt},renderVisual:function(){this.addVisual()},createVisual:Rt}),oe=Xt.extend({init:function(e){var t=this;Xt.fn.init.call(t,e),hi(t.options.position,[Go,xo,Mi,En,tn])||(t.options.position=xo),t.createContainer(),t.createItems()},options:{position:xo,items:[],labels:{margin:{left:6}},offsetX:0,offsetY:0,margin:ui(5),padding:ui(5),border:{color:zi,width:0},item:{cursor:po},spacing:6,background:"",zIndex:1,markers:{border:{width:1},width:7,height:7,type:"rect",align:En,vAlign:Yi}},createContainer:function(){var e=this,t=e.options,i=t.align,n=t.position,o=n,r=Yi;n==tn?o=En:hi(n,[Go,Mi])?(o="start"==i?En:"end"==i?xo:Yi,r=n):i&&("start"==i?r=Go:"end"==i&&(r=Mi)),e.container=new qt({margin:t.margin,padding:t.padding,background:t.background,border:t.border,vAlign:r,align:o,zIndex:t.zIndex,shrinkToFit:!0}),e.append(e.container)},createItems:function(){var e,t,i,n=this,o=n.options,r=o.items,a=r.length,s=n.isVertical();for(e=new ne({vertical:s,spacing:o.spacing}),o.reverse&&(r=r.slice(0).reverse()),t=0;a>t;t++)i=r[t],e.append(new ie(Ft({},{markers:o.markers,labels:o.labels},o.item,i)));e.render(),n.container.append(e)},isVertical:function(){var e=this,t=e.options,i=t.orientation,n=t.position,o=n==tn&&i!=Pn||(xi(i)?i!=Pn:hi(n,[En,xo]));return o},hasItems:function(){return this.container.children[0].children.length>0},reflow:function(e){var i=this,n=i.options;return e=e.clone(),i.hasItems()?(n.position===tn?(i.containerCustomReflow(e),i.box=e):i.containerReflow(e),t):(i.box=e,t)},containerReflow:function(e){var t,i=this,n=i.options,o=n.position,r=o==Go||o==Mi?nr:or,a=e.clone(),s=i.container,l=n.width,c=n.height,u=i.isVertical(),h=e.clone();(o==En||o==xo)&&(a.y1=h.y1=0),u&&c?(a.y2=a.y1+c,a.align(h,or,s.options.vAlign)):!u&&l&&(a.x2=a.x1+l,a.align(h,nr,s.options.align)),s.reflow(a),a=s.box,t=a.clone(),(n.offsetX||n.offsetY)&&(a.translate(n.offsetX,n.offsetY),i.container.reflow(a)),t[r+1]=e[r+1],t[r+2]=e[r+2],i.box=t},containerCustomReflow:function(e){var t=this,i=t.options,n=i.offsetX,o=i.offsetY,r=t.container,a=i.width,s=i.height,l=t.isVertical(),c=e.clone();l&&s?c.y2=c.y1+s:!l&&a&&(c.x2=c.x1+a),r.reflow(c),c=r.box,r.reflow(Yt(n,o,n+c.width(),o+c.height()))},renderVisual:function(){this.hasItems()&&Xt.fn.renderVisual.call(this)}}),re=jt.extend({init:function(e){var t=this;e=e||{},this._initFields(),this._initCategories(e),jt.fn.init.call(t,e)},_initFields:function(){this._ticks={},this.outOfRangeMin=0,this.outOfRangeMax=0},_initCategories:function(e){var t,i,n=(e.categories||[]).slice(0),o=xi(e.min),r=xi(e.max);e.categories=n,(o||r)&&n.length&&(e.srcCategories=e.categories,t=o?It.floor(e.min):0,i=r?e.justified?It.floor(e.max)+1:It.ceil(e.max):n.length,e.categories=e.categories.slice(t,i))},options:{type:Gi,categories:[],vertical:!1,majorGridLines:{visible:!1,width:1,color:zi},labels:{zIndex:1},justified:!1},rangeIndices:function(){var e,t=this.options,i=t.categories.length||1,n=B(t.min)?t.min%1:0;return e=B(t.max)&&t.max%1!==0&&t.max=u;)p.push(h+gi(a*(u-l),$i)),u+=e;return p},getLabelsTickPositions:function(){var e=this.getMajorTickPositions().slice(0),t=this.rangeIndices(),i=this.getScale(),n=this.lineBox(),o=this.options,r=o.vertical?or:nr,a=o.reverse?2:1,s=o.reverse?1:2;return t.min%1!==0&&e.unshift(n[r+a]-i*(t.min%1)),t.max%1!==0&&e.push(n[r+s]+i*(1-t.max%1)),e},labelTickIndex:function(e){var t=e.index,i=this.rangeIndices();return i.min>0&&(t-=It.floor(i.min)),t},arrangeLabels:function(){jt.fn.arrangeLabels.call(this),this.hideOutOfRangeLabels()},hideOutOfRangeLabels:function(){var e=this.box,t=this.labels,i=this.options.vertical?or:nr,n=e[i+1],o=e[i+2],r=t[0],a=vi(t);t.length&&((r.box[i+1]>o||n>r.box[i+2])&&(r.options.visible=!1),(a.box[i+1]>o||n>a.box[i+2])&&(a.options.visible=!1))},getMajorTickPositions:function(){return this.getTicks().majorTicks},getMinorTickPositions:function(){return this.getTicks().minorTicks},getTicks:function(){var e,t=this,i=t._ticks,n=t.options,o=t.rangeIndices(),r=n.reverse,a=n.justified,s=t.lineBox();return e=s.getHash()+o.min+","+o.max+r+a,i._hash!==e&&(i._hash=e,i.majorTicks=t.getTickPositions(1),i.minorTicks=t.getTickPositions(.5)),i},getSlot:function(e,t,i){var n,o,r=this,a=r.options,s=a.reverse,l=a.justified,c=a.vertical?or:nr,u=r.lineBox(),h=r.rangeIndices(),p=h.min,d=this.getScale(),g=u[c+(s?2:1)],f=u.clone(),m=!xi(t);return e=Ci(e,0),t=Ci(t,e),t=It.max(t-1,e),t=It.max(e,t),n=g+(e-p)*d,o=g+(t+1-p)*d,m&&l&&(o=n),i&&(n=yi(n,u[c+1],u[c+2]),o=yi(o,u[c+1],u[c+2])),f[c+1]=s?o:n,f[c+2]=s?n:o,f},pointCategoryIndex:function(e){var t,i,n,o=this,r=o.options,a=r.reverse,s=r.justified,l=r.vertical?or:nr,c=o.lineBox(),u=o.rangeIndices(),h=a?u.max:u.min,p=this.getScale(),d=c[l+1],g=c[l+2],f=e[l];return d>f||f>g?null:(t=f-d,i=t/p,i=h+i,n=i%1,s?i=It.round(i):0===n&&i>0&&i--,It.floor(i))},getCategory:function(e){var t=this.pointCategoryIndex(e);return null===t?null:this.options.categories[t]},categoryIndex:function(e){var t=this.options,i=M(e,t.srcCategories||t.categories);return i-It.floor(t.min||0)},translateRange:function(e){var t=this,i=t.options,n=t.lineBox(),o=i.vertical?n.height():n.width(),r=i.categories.length,a=o/r,s=gi(e/a,ln);return{min:s,max:r+s}},zoomRange:function(e){var i=this.totalRangeIndices(),n=this.totalRange(),o=n.max,r=n.min,a=yi(i.min+e,r,o),s=yi(i.max-e,r,o);return s-a>0?{min:a,max:s}:t},scaleRange:function(e){var t=this,i=t.options,n=i.categories.length,o=e*n;return{min:-o,max:n+o}},labelsCount:function(){var e=this.labelsRange();return e.max-e.min},labelsRange:function(){var e,t=this.options,i=t.labels,n=t.justified,o=this.totalRangeIndices(!0),r=o.min,a=o.max,s=It.floor(r);return n?(r=It.ceil(r),a=It.floor(a)):(r=It.floor(r),a=It.ceil(a)),e=r>i.skip?i.skip+i.step*It.ceil((r-i.skip)/i.step):i.skip,{min:e-s,max:(t.categories.length?a+(n?1:0):0)-s}},createAxisLabel:function(e,t){var i=this,n=i.options,o=n.dataItems?n.dataItems[e]:null,r=Ci(n.categories[e],""),a=i.axisLabelText(r,o,t);return new Gt(r,a,e,o,t)},shouldRenderNote:function(e){var t=this.options.categories;return t.length&&t.length>e&&e>=0},pan:function(e){var t=this.totalRangeIndices(!0),i=this.getScale(),n=gi(e/i,ln),o=this.totalRange(),r=t.min+n,a=t.max+n;return this.limitRange(r,a,0,o.max,n)},pointsRange:function(e,t){var i=this,n=i.options,o=n.reverse,r=n.vertical?or:nr,a=i.lineBox(),s=i.totalRangeIndices(!0),l=this.getScale(),c=a[r+(o?2:1)],u=e[r]-c,h=t[r]-c,p=s.min+u/l,d=s.min+h/l;return{min:It.min(p,d),max:It.max(p,d)}}}),ae=re.extend({init:function(e){var t,i,n=this;e=e||{},e=Ft({roundToBaseUnit:!0},e,{categories:g(e.categories),min:g(e.min),max:g(e.max)}),e.userSetBaseUnit=e.userSetBaseUnit||e.baseUnit,e.userSetBaseUnitStep=e.userSetBaseUnitStep||e.baseUnitStep,e.categories&&e.categories.length>0?(t=(e.baseUnit||"").toLowerCase(),i=t!==Vi&&!hi(t,hr),i&&(e.baseUnit=n.defaultBaseUnit(e)),(t===Vi||e.baseUnitStep===Ri)&&n.autoBaseUnit(e),this._groupsStart=m(e.categories[0],0,e.baseUnit,e.weekStartDay),n.groupCategories(e)):e.baseUnit=e.baseUnit||rn,this._initFields(),jt.fn.init.call(n,e)},options:{type:on,labels:{dateFormats:dr},autoBaseUnitSteps:{seconds:[1,2,5,15,30],minutes:[1,2,5,15,30],hours:[1,2,3],days:[1,2,3],weeks:[1,2],months:[1,2,3,6],years:[1,2,3,5,10,25,50]},maxDateGroups:10},shouldRenderNote:function(e){var t=this,i=t.range(),n=t.options.categories||[];return ci(e,i.min)>=0&&ci(e,i.max)<=0&&n.length},parseNoteValue:function(e){return g(e)},translateRange:function(e){var t,i,n=this,o=n.options,r=o.baseUnit,a=o.weekStartDay,s=n.lineBox(),l=o.vertical?s.height():s.width(),c=n.range(),u=l/(c.max-c.min),h=gi(e/u,ln);return c.min&&c.max&&(t=_(o.min||c.min,h),i=_(o.max||c.max,h),c={min:m(t,0,r,a),max:m(i,0,r,a)}),c},scaleRange:function(e){var t,i=this,n=It.abs(e),o=i.range(),r=o.min,a=o.max;if(o.min&&o.max){for(;n--;)o=b(r,a),t=It.round(.1*o),0>e?(r=_(r,t),a=_(a,-t)):(r=_(r,-t),a=_(a,t));o={min:r,max:a}}return o},defaultBaseUnit:function(e){var t,i,n,o,r,a=e.categories,s=xi(a)?a.length:0,l=Gn;for(t=0;s>t;t++)i=a[t],i&&o&&(n=w(i,o),n>0&&(l=It.min(l,n),r=l>=Ho?rr:l>=Uo-3*Fo?Wn:l>=Mo?tr:l>=Fo?rn:l>=zo?In:l>=Oo?Xn:_o)),o=i;return r||rn},_categoryRange:function(e){var t=e._range;return t||(t=e._range=bi(e)),t},totalRange:function(){return{min:0,max:this.options.categories.length}},rangeIndices:function(){var e=this.options,t=e.baseUnit,i=e.baseUnitStep||1,n=e.categories,o=this.categoriesRange(),r=g(e.min||o.min),a=g(e.max||o.max),s=0,l=0;return n.length&&(s=C(r,n[0],t,i),l=C(a,n[0],t,i),e.roundToBaseUnit&&(s=It.floor(s),l=e.justified?It.floor(l):It.ceil(l))),{min:s,max:l}},labelsRange:function(){var e=this.options,t=e.labels,i=this.rangeIndices(),n=It.floor(i.min),o=It.ceil(i.max);return{min:n+t.skip,max:e.categories.length?o+(e.justified?1:0):0}},categoriesRange:function(){var e=this.options,t=this._categoryRange(e.srcCategories||e.categories),i=g(t.max);return!e.justified&&I(i,this._roundToTotalStep(i,e,!1))&&(i=this._roundToTotalStep(i,e,!0,!0)),{min:g(t.min),max:i}},currentRange:function(){var e=this.options,t=e.roundToBaseUnit!==!1,i=this.categoriesRange(),n=e.min,o=e.max;return n||(n=t?this._roundToTotalStep(i.min,e,!1):i.min),o||(o=t?this._roundToTotalStep(i.max,e,!e.justified):i.max),{min:n,max:o}},datesRange:function(){var e=this._categoryRange(this.options.srcCategories||this.options.categories);return{min:g(e.min),max:g(e.max)}},pan:function(e){var i,n,o,r=this,a=r.options,s=a.baseUnit,l=r.lineBox(),c=a.vertical?l.height():l.width(),u=this.currentRange(),h=this.totalLimits(),p=u.min,d=u.max,m=c/(d-p),x=gi(e/m,ln);return n=_(p,x),o=_(d,x),i=this.limitRange(f(n),f(o),f(h.min),f(h.max),x),i?(i.min=g(i.min),i.max=g(i.max),i.baseUnit=s,i.baseUnitStep=a.baseUnitStep||1,i.userSetBaseUnit=a.userSetBaseUnit,i.userSetBaseUnitStep=a.userSetBaseUnitStep,i):t},pointsRange:function(e,t){var i=re.fn.pointsRange.call(this,e,t),n=this.currentRange(),o=this.rangeIndices(),r=b(n.max,n.min)/(o.max-o.min),a=this.options,s=_(n.min,i.min*r),l=_(n.min,i.max*r);return{min:s,max:l,baseUnit:a.userSetBaseUnit,baseUnitStep:a.userSetBaseUnitStep}},zoomRange:function(e){var i,n,o,r,a,s,l,c,u,h=this.options,p=this.totalLimits(),d=this.currentRange(),f=h.baseUnit,x=h.baseUnitStep||1,v=h.weekStartDay,y=d.max,w=d.min,A=m(w,e*x,f,v),C=m(y,-e*x,f,v);if(h.userSetBaseUnit==Vi)if(i=h.autoBaseUnitSteps,n=h.maxDateGroups,o=M(f,hr),a=b(C,A),s=vi(i[f])*n*No[f],l=b(y,w),No[f]>a&&f!==_o)f=hr[o-1],r=vi(i[f]),c=(l-(n-1)*r*No[f])/2,A=_(w,c),C=_(y,-c);else if(a>s&&f!==rr){u=0;do{o++,f=hr[o],u=0,c=2*No[f];do r=i[f][u],u++;while(i[f].length>u&&l>c*r)}while(f!==rr&&l>c*r);c=(c*r-l)/2,c>0&&(A=_(w,-c),C=_(y,c),A=_(A,yi(C,p.min,p.max)-C),C=_(C,yi(A,p.min,p.max)-A))}return A=g(yi(A,p.min,p.max)),C=g(yi(C,p.min,p.max)),b(C,A)>0?{min:A,max:C,baseUnit:h.userSetBaseUnit,baseUnitStep:h.userSetBaseUnitStep}:t},totalLimits:function(){var e=this.options,t=this.datesRange(),i=this._roundToTotalStep(g(t.min),e,!1),n=t.max;return e.justified||(n=this._roundToTotalStep(n,e,!0,I(n,this._roundToTotalStep(n,e,!1)))),{min:i,max:n}},range:function(e){e=e||this.options;var t=e.categories,i=e.baseUnit===Vi,n=i?hr[0]:e.baseUnit,o=e.baseUnitStep||1,r={baseUnit:n,baseUnitStep:o,weekStartDay:e.weekStartDay},a=this._categoryRange(t),s=g(e.min||a.min),l=g(e.max||a.max);return{min:this._roundToTotalStep(s,r,!1),max:this._roundToTotalStep(l,r,!0,!0)}},autoBaseUnit:function(e){for(var t,i,n,o=this,r=this._categoryRange(e.categories),a=g(e.min||r.min),s=g(e.max||r.max),l=e.baseUnit===Vi,c=0,u=l?hr[c++]:e.baseUnit,h=s-a,p=h/No[u],d=p,f=e.maxDateGroups||o.options.maxDateGroups,m=Ft({},o.options.autoBaseUnitSteps,e.autoBaseUnitSteps);!i||p>=f;)if(t=t||m[u].slice(0),n=t.shift())i=n,p=d/i;else{if(u===vi(hr)){i=It.ceil(d/f);break}if(!l){p>f&&(i=It.ceil(d/f));break}u=hr[c++]||vi(hr),d=h/No[u],t=null}e.baseUnitStep=i,e.baseUnit=u},_timeScale:function(){var e,t,i,n=this,o=n.range(),r=n.options,a=n.lineBox(),s=r.vertical,l=s?a.height():a.width();return r.justified&&r._collapse!==!1?(t=this._categoryRange(r.categories),i=f(t.max),e=g(i)-o.min):e=o.max-o.min,l/e},groupCategories:function(e){var t,i,n=this,o=e.categories,r=g(_i(o)),a=e.baseUnit,s=e.baseUnitStep||1,l=n.range(e),c=l.max,u=[];for(t=l.min;c>t&&(u.push(t),i=m(t,s,a,e.weekStartDay),!(i>r)||e.max);t=i);e.srcCategories=o,e.categories=u},_roundToTotalStep:function(e,t,i,n){var o,r,a,s,l;return t=t||this.options,o=t.baseUnit,r=t.baseUnitStep||1,a=this._groupsStart,a?(s=C(e,a,o,r),l=i?It.ceil(s):It.floor(s),n&&l++,m(a,l*r,o,t.weekStartDay)):m(e,i?r:0,o,t.weekStartDay)},createAxisLabel:function(e,i){var n,o,r=this.options,a=r.dataItems?r.dataItems[e]:null,s=r.categories[e],l=r.baseUnit,c=!0,u=i.dateFormats[l];return r.justified?(n=v(s,l,r.weekStartDay),c=I(n,s)):r.roundToBaseUnit||(c=!I(this.range().max,s)),c&&(i.format=i.format||u,o=this.axisLabelText(s,a,i))?new Gt(s,o,e,a,i):t},categoryIndex:function(e){var t=this,i=t.options,n=i.categories,o=-1;return n.length&&(o=It.floor(C(g(e),n[0],i.baseUnit,i.baseUnitStep||1))),o},getSlot:function(e,t,i){var n=this;return typeof e===ao&&(e=n.categoryIndex(e)),typeof t===ao&&(t=n.categoryIndex(t)),re.fn.getSlot.call(n,e,t,i)}}),se=jt.extend({init:function(e,t,i){var n=this;i=i||{},Ft(i,{min:g(i.min),max:g(i.max),axisCrossingValue:g(i.axisCrossingValues||i.axisCrossingValue)}),i=n.applyDefaults(g(e),g(t),i),jt.fn.init.call(n,i)},options:{type:on,majorGridLines:{visible:!0,width:1,color:zi},labels:{dateFormats:dr}},applyDefaults:function(e,i,n){var o=this,r=n.min||e,a=n.max||i,s=n.baseUnit||(a&&r?o.timeUnits(w(a,r)):In),l=No[s],c=v(f(r)-1,s)||g(a),u=y(f(a)+1,s),h=n.majorUnit?n.majorUnit:t,p=h||Nt.ceil(Nt.autoMajorUnit(c.getTime(),u.getTime()),l)/l,d=A(c,u,s),x=Nt.ceil(d,p),b=x-d,_=It.floor(b/2),C=b-_;return n.baseUnit||delete n.baseUnit,n.baseUnit=n.baseUnit||s,n.min=n.min||m(c,-_,s),n.max=n.max||m(u,C,s),n.minorUnit=n.minorUnit||p/5,n.majorUnit=p,this.totalMin=f(v(f(e)-1,s)),this.totalMax=f(y(f(i)+1,s)),n},range:function(){var e=this.options;return{min:e.min,max:e.max}},getDivisions:function(e){var t=this.options;return It.floor(A(t.min,t.max,t.baseUnit)/e+1)},getTickPositions:function(e){var t,i,n,o=this.options,r=o.vertical,a=o.reverse,s=this.lineBox(),l=(r?-1:1)*(a?-1:1),c=1===l?1:2,u=s[(r?or:nr)+c],h=this.getDivisions(e),p=b(o.max,o.min),d=r?s.height():s.width(),g=d/p,f=[u];for(t=1;h>t;t++)i=m(o.min,t*o.majorUnit,o.baseUnit),n=u+b(i,o.min)*g*l,f.push(gi(n,$i));return f},getMajorTickPositions:function(){var e=this;return e.getTickPositions(e.options.majorUnit)},getMinorTickPositions:function(){var e=this;return e.getTickPositions(e.options.minorUnit)},getSlot:function(e,t,i){return Jt.fn.getSlot.call(this,g(e),g(t),i)},getValue:function(e){var t=Jt.fn.getValue.call(this,e);return null!==t?g(t):null},labelsCount:function(){return this.getDivisions(this.options.majorUnit)},createAxisLabel:function(e,t){var i,n,o=this.options,r=e*o.majorUnit,a=o.min;return r>0&&(a=m(a,r,o.baseUnit)),i=t.dateFormats[o.baseUnit],t.format=t.format||i,n=this.axisLabelText(a,null,t),new Gt(a,n,e,null,t)},timeUnits:function(e){var t=In;return e>=Ho?t=rr:e>=Uo?t=Wn:e>=Mo?t=tr:e>=Fo&&(t=rn),t},translateRange:function(e,t){var i=this,n=i.options,o=n.baseUnit,r=n.weekStartDay,a=i.lineBox(),s=n.vertical?a.height():a.width(),l=i.range(),c=s/b(l.max,l.min),u=gi(e/c,ln),h=_(n.min,u),p=_(n.max,u);return t||(h=m(h,0,o,r),p=m(p,0,o,r)),{min:h,max:p}},scaleRange:function(e){for(var t,i,n=this,o=n.options,r=It.abs(e),a=o.min,s=o.max;r--;)t=b(a,s),i=It.round(.1*t),0>e?(a=_(a,i),s=_(s,-i)):(a=_(a,-i),s=_(s,i));return{min:a,max:s}},shouldRenderNote:function(e){var t=this.range();return ci(e,t.min)>=0&&ci(e,t.max)<=0},pan:function(e){var i=this.translateRange(e,!0),n=this.limitRange(f(i.min),f(i.max),this.totalMin,this.totalMax);return n?{min:g(n.min),max:g(n.max)}:t},pointsRange:function(e,t){var i=this.getValue(e),n=this.getValue(t),o=It.min(i,n),r=It.max(i,n);return{min:g(o),max:g(r)}},zoomRange:function(e){var t=this.scaleRange(e),i=g(yi(f(t.min),this.totalMin,this.totalMax)),n=g(yi(f(t.max),this.totalMin,this.totalMax));return{min:i,max:n}}}),le=Xt.extend({options:{vertical:!1,gap:0,spacing:0},reflow:function(e){var t,i,n=this,o=n.options,r=o.vertical,a=r?or:nr,s=n.children,l=o.gap,c=o.spacing,u=s.length,h=u+l+c*(u-1),p=(r?e.height():e.width())/h,d=e[a+1]+p*(l/2);for(i=0;u>i;i++)t=(s[i].box||e).clone(),t[a+1]=d,t[a+2]=d+p,s[i].reflow(t),u-1>i&&(d+=p*c),d+=p}}),ce=Xt.extend({options:{vertical:!0},reflow:function(e){var t,i,n,o=this.options,r=o.vertical,a=r?nr:or,s=this.children,l=this.box=new Yt,c=s.length;for(t=0;c>t;t++)i=s[t],i.visible!==!1&&(n=i.box.clone(),n.snapTo(e,a),0===t&&(l=this.box=n.clone()),i.reflow(n),l.wrap(n))}}),ue={click:function(e,t){return e.trigger(So,this.eventArgs(t))},hover:function(e,t){return e.trigger(Po,this.eventArgs(t))},eventArgs:function(t){return{value:this.value,percentage:this.percentage,category:this.category,series:this.series,dataItem:this.dataItem,runningTotal:this.runningTotal,total:this.total,element:e((t||{}).target),originalEvent:t,point:this}}},he={createNote:function(){var e=this,t=e.options.notes,i=e.noteText||t.label.text;t.visible!==!1&&xi(i)&&null!==i&&(e.note=new Zt(e.value,i,e.dataItem,e.category,e.series,e.options.notes),e.append(e.note))}},pe=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i),i.options=t,i.color=t.color||ir,i.aboveAxis=Ci(i.options.aboveAxis,!0),i.value=e},defaults:{border:{width:1},vertical:!0,overlay:{gradient:Sn},labels:{visible:!1,format:"{0}"},opacity:1,notes:{label:{}}},render:function(){this._rendered||(this._rendered=!0,this.createLabel(),this.createNote(),this.errorBar&&this.append(this.errorBar))},createLabel:function(){var e,t,i=this.options,n=i.labels;n.visible&&(n.template?(t=Ht(n.template),e=t({dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,runningTotal:this.runningTotal,total:this.total,series:this.series})):e=this.formatValue(n.format),this.label=new te(e,Ft({vertical:i.vertical},i.labels)),this.append(this.label))},formatValue:function(e){return this.owner.formatPointValue(this,e)},reflow:function(e){var t,i,n;if(this.render(),t=this,i=t.label,t.box=e,i&&(i.options.aboveAxis=t.aboveAxis,i.reflow(e)),t.note&&t.note.reflow(e),t.errorBars)for(n=0;t.errorBars.length>n;n++)t.errorBars[n].reflow(e)},createVisual:function(){var e,t=this,i=t.box,n=t.options,o=n.visual;t.visible!==!1&&(Xt.fn.createVisual.call(t),o?(e=this.rectVisual=o({category:t.category,dataItem:t.dataItem,value:t.value,sender:t.getChart(),series:t.series,percentage:t.percentage,runningTotal:t.runningTotal,total:t.total,rect:i.toRect(),createVisual:function(){var e=new Si.Group;return t.createRect(e),e},options:n}),e&&t.visual.append(e)):i.width()>0&&i.height()>0&&t.createRect(t.visual))},createRect:function(e){var i,n,o,r,a=this.options,s=a.border,l=xi(s.opacity)?s.opacity:a.opacity,c=this.box.toRect();c.size.width=Math.round(c.size.width),i=this.rectVisual=Si.Path.fromRect(c,{fill:{color:this.color,opacity:a.opacity},stroke:{color:this.getBorderColor(),width:s.width,opacity:l,dashType:s.dashType}}),n=this.box.width(),o=this.box.height(),r=a.vertical?n:o,r>Di&&(si(i),(1>n||1>o)&&(i.options.stroke.lineJoin="round")),e.append(i),q(a)&&e.append(this.createGradientOverlay(i,{baseColor:this.color},Ft({end:a.vertical?t:[0,1]},a.overlay)))},createHighlight:function(e){var t=Si.Path.fromRect(this.box.toRect(),e);return si(t)},highlightVisual:function(){return this.rectVisual},highlightVisualArgs:function(){return{options:this.options,rect:this.box.toRect(),visual:this.rectVisual}},getBorderColor:function(){var e=this,t=e.options,i=e.color,n=t.border,o=n.color,r=n._brightness||Ei;return xi(o)||(o=new Wt(i).brightness(r).toHex()),o},tooltipAnchor:function(e,t){var i,n,o,r,a=this,s=a.options,l=a.box,c=s.vertical,u=a.aboveAxis,h=a.owner.pane.clipBox()||l;return c?(i=l.x2+qo,n=u?It.max(l.y1,h.y1):It.min(l.y2,h.y2)-t):(o=It.max(l.x1,h.x1),r=It.min(l.x2,h.x2),s.isStacked?(i=u?r-e:o,n=l.y1-t-qo):(i=u?r+qo:o-e-qo,n=l.y1)),new ei(i,n)},overlapsBox:function(e){return this.box.overlaps(e)}}),Ft(pe.fn,ue),Ft(pe.fn,he),de=Si.Animation.extend({options:{duration:Rn},setup:function(){var e,t,i=this.element,n=this.options,o=i.bbox();o?(this.origin=n.origin,e=n.vertical?or:nr,t=this.fromScale=new ki.Point(1,1),t[e]=To,i.transform(ki.transform().scale(t.x,t.y))):this.abort()},step:function(e){var t=pi(this.fromScale.x,1,e),i=pi(this.fromScale.y,1,e);this.element.transform(ki.transform().scale(t,i,this.origin))},abort:function(){Si.Animation.fn.abort.call(this),this.element.transform(null)}}),Si.AnimationFactory.current.register(Li,de),ge=Si.Animation.extend({options:{duration:200,easing:Un},setup:function(){this.fadeTo=this.element.opacity(),this.element.opacity(0)},step:function(e){this.element.opacity(e*this.fadeTo)}}),Si.AnimationFactory.current.register(_n,ge),fe=function(e,t,i){var n=this;n.initGlobalRanges(e,t,i)},fe.prototype=fe.fn={percentRegex:/percent(?:\w*)\((\d+)\)/,standardDeviationRegex:RegExp("^"+Bo+"(?:\\((\\d+(?:\\.\\d+)?)\\))?$"),initGlobalRanges:function(e,t,i){var n,o,r,a,s,l=this,c=t.data,u=l.standardDeviationRegex.exec(e);u?(l.valueGetter=l.createValueGetter(t,i),n=l.getAverage(c),o=l.getStandardDeviation(c,n,!1),r=u[1]?parseFloat(u[1]):1,a={low:n.value-o*r,high:n.value+o*r},l.globalRange=function(){return a}):e.indexOf&&e.indexOf(Vo)>=0&&(l.valueGetter=l.createValueGetter(t,i),s=l.getStandardError(c,l.getAverage(c)),l.globalRange=function(e){return{low:e-s,high:e+s}})},createValueGetter:function(e,t){var i,n,o,r=e.data,a=ee.current,s=a.valueFields(e),l=xi(r[0])?r[0]:{};return St(l)?(i=t?M(t,s):0,o=Mt("["+i+"]")):B(l)?o=Mt():typeof l===ao&&(n=a.sourceFields(e,s),o=Mt(n[M(t,s)])),o},getErrorRange:function(e,t){var i,n,o,r,a=this;if(xi(t)){if(a.globalRange)return a.globalRange(e);if(St(t))i=e-t[0],n=e+t[1];else if(B(o=parseFloat(t)))i=e-o,n=e+o;else{if(!(o=a.percentRegex.exec(t)))throw Error("Invalid ErrorBar value: "+t);r=e*(parseFloat(o[1])/100),i=e-It.abs(r),n=e+It.abs(r)}return{low:i,high:n}}},getStandardError:function(e,t){return this.getStandardDeviation(e,t,!0)/It.sqrt(t.count)},getStandardDeviation:function(e,t,i){var n,o,r=0,a=e.length,s=i?t.count-1:t.count;for(o=0;a>o;o++)n=this.valueGetter(e[o]),B(n)&&(r+=It.pow(n-t.value,2));return It.sqrt(r/s)},getAverage:function(e){var t,i,n=0,o=0,r=e.length;for(i=0;r>i;i++)t=this.valueGetter(e[i]),B(t)&&(n+=t,o++);return{value:n/o,count:o}}},me=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),i.plotArea=e,i.categoryAxis=e.seriesCategoryAxis(t.series[0]),i.valueAxisRanges={},i.points=[],i.categoryPoints=[],i.seriesPoints=[],i.seriesOptions=[],i._evalSeries=[],i.render()},options:{series:[],invertAxes:!1,isStacked:!1,clip:!0},render:function(){var e=this;e.traverseDataPoints(Bt(e.addValue,e))},pointOptions:function(e,t){var i,n=this.seriesOptions[t];return n||(i=this.pointType().fn.defaults,this.seriesOptions[t]=n=Ft({},i,{vertical:!this.options.invertAxes},e)),n},plotValue:function(e){var t,i,n,o,r,a,s,l;if(!e)return 0;if(this.options.isStacked100&&B(e.value)){for(t=e.categoryIx,i=this.categoryPoints[t],n=0,o=[],r=0;i.length>r;r++)if(a=i[r]){if(s=e.series.stack,l=a.series.stack,s&&l&&s.group!==l.group)continue;B(a.value)&&(n+=It.abs(a.value),o.push(It.abs(a.value)))}if(n>0)return e.value/n}return e.value},plotRange:function(e,t){var i,n,o,r,a,s,l,c,u,h,p,d,g=e.categoryIx,f=this.categoryPoints[g];if(this.options.isStacked){for(t=t||0,i=this.plotValue(e),n=i>=0,o=t,r=!1,a=0;f.length>a&&(s=f[a],e!==s);a++){if(l=e.series.stack,c=s.series.stack,l&&c){if(typeof l===Lo&&l!==c)continue;if(l.group&&l.group!==c.group)continue}u=this.plotValue(s),(u>=0&&n||0>u&&!n)&&(o+=u,i+=u,r=!0,this.options.isStacked100&&(i=It.min(i,1)))}return r&&(o-=t),[o,i]}return h=e.series,p=this.seriesValueAxis(h),d=this.categoryAxisCrossingValue(p),[d,e.value||d]},stackLimits:function(e,t){var i,n,o,r,a,s=Gn,l=qn;for(i=0;this.categoryPoints.length>i;i++)for(n=this.categoryPoints[i],o=0;n.length>o;o++)r=n[o],r&&(r.series.stack===t||r.series.axis===e)&&(a=this.plotRange(r,0)[1],xi(a)&&isFinite(a)&&(l=It.max(l,a),s=It.min(s,a)));return{min:s,max:l}},updateStackRange:function(){var e,t,i,n,o,r,a=this,s=a.options.series,l=a.options.isStacked,c={};if(l)for(t=0;s.length>t;t++)i=s[t],n=i.axis,o=n+i.stack,e=c[o],e||(e=a.stackLimits(n,i.stack),r=a.errorTotals,r&&(r.negative.length&&(e.min=It.min(e.min,wi(r.negative))),r.positive.length&&(e.max=It.max(e.max,_i(r.positive)))),e.min!==Gn||e.max!==qn?c[o]=e:e=null),e&&(a.valueAxisRanges[n]=e)},addErrorBar:function(e,t,i){var n,o=this,r=e.value,a=e.series,s=e.seriesIx,l=e.options.errorBars,c=t.fields[mn],u=t.fields[xn];B(c)&&B(u)?n={low:c,high:u}:l&&xi(l.value)&&(o.seriesErrorRanges=o.seriesErrorRanges||[],o.seriesErrorRanges[s]=o.seriesErrorRanges[s]||new fe(l.value,a,Qo),n=o.seriesErrorRanges[s].getErrorRange(r,l.value)),n&&(e.low=n.low,e.high=n.high,o.addPointErrorBar(e,i))},addPointErrorBar:function(e,t){var i,n,o,r=this,a=e.series,s=e.low,l=e.high,c=!r.options.invertAxes,u=e.options.errorBars;r.options.isStacked?(n=r.stackedErrorRange(e,t),s=n.low,l=n.high):(o={categoryIx:t,series:a},r.updateRange({value:s},o),r.updateRange({value:l},o)),i=new Ce(s,l,c,r,a,u),e.errorBars=[i],e.append(i)},stackedErrorRange:function(e,t){var i=this,n=i.plotRange(e,0)[1]-e.value,o=e.low+n,r=e.high+n;return i.errorTotals=i.errorTotals||{positive:[],negative:[]},0>o&&(i.errorTotals.negative[t]=It.min(i.errorTotals.negative[t]||0,o)),r>0&&(i.errorTotals.positive[t]=It.max(i.errorTotals.positive[t]||0,r)),{low:o,high:r}},addValue:function(t,i){var n,o,r=this,a=i.categoryIx,s=i.series,l=i.seriesIx,c=r.categoryPoints[a];c||(r.categoryPoints[a]=c=[]),n=r.seriesPoints[l],n||(r.seriesPoints[l]=n=[]), o=r.createPoint(t,i),o&&(e.extend(o,i),o.owner=r,o.dataItem=s.data[a],o.noteText=t.fields.noteText,r.addErrorBar(o,t,a)),r.points.push(o),n.push(o),c.push(o),r.updateRange(t.valueFields,i)},evalPointOptions:function(e,t,i,n,o,r){var a={defaults:o._defaults,excluded:["data","aggregate","_events","tooltip","template","visual","toggle","_outOfRangeMinPoint","_outOfRangeMaxPoint"]},s=this._evalSeries[r];return xi(s)||(this._evalSeries[r]=s=O(e,{},a,!0)),s&&(e=Ft({},e),O(e,{value:t,category:i,index:n,series:o,dataItem:o.data[n]},a)),e},updateRange:function(e,t){var i=this,n=t.series.axis,o=e.value,r=i.valueAxisRanges[n];isFinite(o)&&null!==o&&(r=i.valueAxisRanges[n]=r||{min:Gn,max:qn},r.min=It.min(r.min,o),r.max=It.max(r.max,o))},seriesValueAxis:function(e){var t=this.plotArea,i=e.axis,n=i?t.namedValueAxes[i]:t.valueAxis;if(!n)throw Error("Unable to locate value axis with name "+i);return n},reflow:function(e){var t,i,n,o=this,r=0,a=o.categorySlots=[],s=o.points,l=o.categoryAxis;o.traverseDataPoints(function(e,c){var u,h,p,d,g=c.categoryIx,f=c.series;t=o.pointValue(e),i=o.seriesValueAxis(f),n=s[r++],u=a[g],u||(a[g]=u=o.categorySlot(l,g,i)),n&&(h=o.plotRange(n,i.startValue()),p=i.getSlot(h[0],h[1],!o.options.clip),p?(d=o.pointSlot(u,p),n.aboveAxis=o.aboveAxis(n,i),o.options.isStacked100&&(n.percentage=o.plotValue(n)),o.reflowPoint(n,d)):n.visible=!1)}),o.reflowCategories(a),o.box=e},aboveAxis:function(e,t){var i=this.categoryAxisCrossingValue(t),n=e.value;return t.options.reverse?i>n:n>=i},categoryAxisCrossingValue:function(e){var t=this.categoryAxis,i=e.options,n=[].concat(i.axisCrossingValues||i.axisCrossingValue);return n[t.axisIndex||0]||0},reflowPoint:function(e,t){e.reflow(t)},reflowCategories:function(){},pointSlot:function(e,t){var i=this,n=i.options,o=n.invertAxes,r=o?t:e,a=o?e:t;return new Yt(r.x1,a.y1,r.x2,a.y2)},categorySlot:function(e,t){return e.getSlot(t)},traverseDataPoints:function(e){var t,i,n,o,r,a=this,s=a.options,l=s.series,c=a.categoryAxis.options.categories||[],h=u(l),p=l.length;for(i=0;p>i;i++)this._outOfRangeCallback(l[i],"_outOfRangeMinPoint",i,e);for(t=0;h>t;t++)for(i=0;p>i;i++)r=l[i],o=c[t],n=this._bindPoint(r,i,t),e(n,{category:o,categoryIx:t,series:r,seriesIx:i});for(i=0;p>i;i++)this._outOfRangeCallback(l[i],"_outOfRangeMaxPoint",i,e)},_outOfRangeCallback:function(e,t,i,n){var o,r,a=e[t];a&&(o=a.categoryIx,r=this._bindPoint(e,i,o,a.item),n(r,{category:a.category,categoryIx:o,series:e,seriesIx:i}))},_bindPoint:function(e,t,i,n){var o,r;return this._bindCache||(this._bindCache=[]),o=this._bindCache[t],o||(o=this._bindCache[t]=[]),r=o[i],r||(r=o[i]=ee.current.bindPoint(e,i,n)),r},formatPointValue:function(e,t){return null===e.value?"":li(t,e.value)},pointValue:function(e){return e.valueFields.value}}),xe=me.extend({options:{animation:{type:Li}},render:function(){var e=this;me.fn.render.apply(e),e.updateStackRange()},pointType:function(){return pe},clusterType:function(){return le},stackType:function(){return ce},stackLimits:function(e,t){var i=me.fn.stackLimits.call(this,e,t);return i},createPoint:function(e,t){var i,n,o,r,a=this,s=t.categoryIx,l=t.category,c=t.series,u=t.seriesIx,h=a.pointValue(e),p=a.options,d=a.children,g=a.options.isStacked,f=a.pointType(),m=a.clusterType(),x=this.pointOptions(c,u),v=x.labels;return g&&v.position==lo&&(v.position=Bn),x.isStacked=g,o=e.fields.color||c.color,0>h&&x.negativeColor&&(o=x.negativeColor),x=a.evalPointOptions(x,h,l,s,c,u),Lt.isFunction(c.color)&&(o=x.color),i=new f(h,x),i.color=o,n=d[s],n||(n=new m({vertical:p.invertAxes,gap:p.gap,spacing:p.spacing}),a.append(n)),g?(r=a.getStackWrap(c,n),r.append(i)):n.append(i),i},getStackWrap:function(e,t){var i,n,o,r=e.stack,a=r?r.group||r:r,s=t.children;if(typeof a===Lo){for(n=0;s.length>n;n++)if(s[n]._stackGroup===a){i=s[n];break}}else i=s[0];return i||(o=this.stackType(),i=new o({vertical:!this.options.invertAxes}),i._stackGroup=a,t.append(i)),i},categorySlot:function(e,t,i){var n,o,r=this,a=r.options,s=e.getSlot(t),l=i.startValue();return a.isStacked&&(o=i.getSlot(l,l,!0),n=a.invertAxes?nr:or,s[n+1]=s[n+2]=o[n+1]),s},reflowCategories:function(e){var t,i=this,n=i.children,o=n.length;for(t=0;o>t;t++)n[t].reflow(e[t])},createAnimation:function(){this._setAnimationOptions(),Xt.fn.createAnimation.call(this),X(this.options.series)&&this._setChildrenAnimation()},_setChildrenAnimation:function(){var e,t,i,n=this.points;for(i=0;n.length>i;i++)e=n[i],t=e.visual,t&&xi(t.options.zIndex)&&(e.options.animation=this.options.animation,e.createAnimation())},_setAnimationOptions:function(){var e,t,i=this.options,n=i.animation||{};this.options.isStacked?(t=this.seriesValueAxis(i.series[0]),e=t.getSlot(t.startValue())):e=this.categoryAxis.getSlot(0),n.origin=new ki.Point(e.x1,e.y1),n.vertical=!i.invertAxes}}),ve=pe.extend({defaults:{labels:{format:"{0} - {1}"},tooltip:{format:"{1}"}},createLabel:function(){var e=this.options.labels,t=Ft({},e,e.from),i=Ft({},e,e.to);t.visible&&(this.labelFrom=this._createLabel(t),this.append(this.labelFrom)),i.visible&&(this.labelTo=this._createLabel(i),this.append(this.labelTo))},_createLabel:function(e){var t,i;return e.template?(i=Ht(e.template),t=i({dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,runningTotal:this.runningTotal,total:this.total,series:this.series})):t=this.formatValue(e.format),new te(t,Ft({vertical:this.options.vertical},e))},reflow:function(e){this.render();var t=this,i=t.labelFrom,n=t.labelTo;t.box=e,i&&(i.options.aboveAxis=t.value.from>t.value.to,i.reflow(e)),n&&(n.options.aboveAxis=t.value.to>t.value.from,n.reflow(e)),t.note&&t.note.reflow(e)}}),ye=xe.extend({pointType:function(){return ve},pointValue:function(e){return e.valueFields},formatPointValue:function(e,t){return null===e.value.from&&null===e.value.to?"":li(t,e.value.from,e.value.to)},plotLimits:me.fn.plotLimits,plotRange:function(e){return e?[e.value.from,e.value.to]:0},updateRange:function(e,t){var i=this,n=t.series.axis,o=e.from,r=e.to,a=i.valueAxisRanges[n];null!==e&&B(o)&&B(r)&&(a=i.valueAxisRanges[n]=a||{min:Gn,max:qn},a.min=It.min(a.min,o),a.max=It.max(a.max,o),a.min=It.min(a.min,r),a.max=It.max(a.max,r))},aboveAxis:function(e){var t=e.value;return t.to>t.from}}),be=me.extend({init:function(e,t){var i=this;i.wrapData(t),me.fn.init.call(i,e,t)},options:{animation:{type:Li}},wrapData:function(e){var t,i,n,o=e.series;for(t=0;o.length>t;t++)n=o[t],i=n.data,i&&!St(i[0])&&typeof i[0]!=ao&&(n.data=[i])},reflowCategories:function(e){var t,i=this,n=i.children,o=n.length;for(t=0;o>t;t++)n[t].reflow(e[t])},plotRange:function(e){var t=e.series,i=this.seriesValueAxis(t),n=this.categoryAxisCrossingValue(i);return[n,e.value.current||n]},createPoint:function(e,t){var i,n,o=this,r=t.categoryIx,a=t.category,s=t.series,l=t.seriesIx,c=e.valueFields,u=o.options,h=o.children,p=Ft({vertical:!u.invertAxes,overlay:s.overlay,categoryIx:r,invertAxes:u.invertAxes},s),d=e.fields.color||s.color;return p=o.evalPointOptions(p,c,a,r,s,l),Lt.isFunction(s.color)&&(d=p.color),i=new we(c,p),i.color=d,n=h[r],n||(n=new le({vertical:u.invertAxes,gap:u.gap,spacing:u.spacing}),o.append(n)),n.append(i),i},updateRange:function(e,t){var i=this,n=t.series.axis,o=e.current,r=e.target,a=i.valueAxisRanges[n];xi(o)&&!isNaN(o)&&xi(r&&!isNaN(r))&&(a=i.valueAxisRanges[n]=a||{min:Gn,max:qn},a.min=It.min.apply(It,[a.min,o,r]),a.max=It.max.apply(It,[a.max,o,r]))},formatPointValue:function(e,t){return li(t,e.value.current,e.value.target)},pointValue:function(e){return e.valueFields.current},aboveAxis:function(e){var t=e.value.current;return t>0},createAnimation:function(){var e,t,i=this.points;for(this._setAnimationOptions(),t=0;i.length>t;t++)e=i[t],e.options.animation=this.options.animation,e.createAnimation()},_setAnimationOptions:xe.fn._setAnimationOptions}),we=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),i.aboveAxis=i.options.aboveAxis,i.color=t.color||ir,i.value=e},options:{border:{width:1},vertical:!1,opacity:1,target:{shape:"",border:{width:0,color:"green"},line:{width:2}},tooltip:{format:"Current: {0}
Target: {1}"}},render:function(){var e=this,t=e.options;e._rendered||(e._rendered=!0,xi(e.value.target)&&(e.target=new _e({type:t.target.shape,background:t.target.color||e.color,opacity:t.opacity,zIndex:t.zIndex,border:t.target.border,vAlign:Go,align:xo}),e.append(e.target)),e.createNote())},reflow:function(e){this.render();var t,i=this,n=i.options,o=i.owner,r=i.target,a=n.invertAxes,s=o.seriesValueAxis(i.options),l=o.categorySlot(o.categoryAxis,n.categoryIx,s),c=s.getSlot(i.value.target),u=a?c:l,h=a?l:c;r&&(t=new Yt(u.x1,h.y1,u.x2,h.y2),r.options.height=a?t.height():n.target.line.width,r.options.width=a?n.target.line.width:t.width(),r.reflow(t)),i.note&&i.note.reflow(e),i.box=e},createVisual:function(){var e,t;Xt.fn.createVisual.call(this),e=this.options,t=Si.Path.fromRect(this.box.toRect(),{fill:{color:this.color,opacity:e.opacity},stroke:null}),e.border.width>0&&t.options.set("stroke",{color:e.border.color||this.color,width:e.border.width,dashType:e.border.dashType,opacity:Ci(e.border.opacity,e.opacity)}),this.bodyVisual=t,si(t),this.visual.append(t)},createAnimation:function(){this.bodyVisual&&(this.animation=Si.Animation.create(this.bodyVisual,this.options.animation))},tooltipAnchor:function(e,t){var i,n,o,r,a=this,s=a.options,l=a.box,c=s.vertical,u=a.aboveAxis,h=a.owner.pane.clipBox()||l;return c?(i=l.x2+qo,n=u?It.max(l.y1,h.y1):It.min(l.y2,h.y2)-t):(o=It.max(l.x1,h.x1),r=It.min(l.x2,h.x2),s.isStacked?(i=u?r-e:o,n=l.y1-t-qo):(i=u?r+qo:o-e-qo,n=l.y1)),new ei(i,n)},createHighlight:function(e){return Si.Path.fromRect(this.box.toRect(),e)},highlightVisual:function(){return this.bodyVisual},highlightVisualArgs:function(){return{rect:this.box.toRect(),visual:this.bodyVisual,options:this.options}},formatValue:function(e){var t=this;return t.owner.formatPointValue(t,e)}}),Ft(we.fn,ue),Ft(we.fn,he),_e=ni.extend(),Ft(_e.fn,ue),Ae=Xt.extend({init:function(e,t,i,n,o,r){var a=this;a.low=e,a.high=t,a.isVertical=i,a.chart=n,a.series=o,Xt.fn.init.call(a,r)},options:{animation:{type:_n,delay:Rn},endCaps:!0,line:{width:1},zIndex:1},getAxis:function(){},reflow:function(e){var t,i=this,n=i.options.endCaps,o=i.isVertical,r=i.getAxis(),a=r.getSlot(i.low,i.high),s=e.center(),l=i.getCapsWidth(e,o),c=o?s.x:s.y,u=c-l,h=c+l;o?(t=[ei(s.x,a.y1),ei(s.x,a.y2)],n&&t.push(ei(u,a.y1),ei(h,a.y1),ei(u,a.y2),ei(h,a.y2)),i.box=Yt(u,a.y1,h,a.y2)):(t=[ei(a.x1,s.y),ei(a.x2,s.y)],n&&t.push(ei(a.x1,u),ei(a.x1,h),ei(a.x2,u),ei(a.x2,h)),i.box=Yt(a.x1,u,a.x2,h)),i.linePoints=t},getCapsWidth:function(e,t){var i=t?e.width():e.height(),n=It.min(It.floor(i/2),un)||un;return n},createVisual:function(){var e=this,t=e.options,i=t.visual;i?e.visual=i({low:e.low,high:e.high,rect:e.box.toRect(),sender:e.getChart(),options:{endCaps:t.endCaps,color:t.color,line:t.line},createVisual:function(){e.createDefaultVisual();var t=e.visual;return delete e.visual,t}}):e.createDefaultVisual()},createDefaultVisual:function(){var e,t,i=this,n=i.options,o={stroke:{color:n.color,width:n.line.width,dashType:n.line.dashType}},r=i.linePoints;for(Xt.fn.createVisual.call(this),e=0;r.length>e;e+=2)t=new Si.Path(o).moveTo(r[e].x,r[e].y).lineTo(r[e+1].x,r[e+1].y),this.visual.append(t)}}),Ce=Ae.extend({getAxis:function(){var e=this,t=e.chart,i=e.series,n=t.seriesValueAxis(i);return n}}),ke=Ae.extend({getAxis:function(){var e=this,t=e.chart,i=e.series,n=t.seriesAxes(i),o=e.isVertical?n.y:n.x;return o}}),Se=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i),i.value=e,i.options=t,i.aboveAxis=Ci(i.options.aboveAxis,!0),i.tooltipTracking=!0},defaults:{vertical:!0,markers:{visible:!0,background:ir,size:Mn,type:Xi,border:{width:2},opacity:1},labels:{visible:!1,position:Ti,margin:ui(3),padding:ui(4),animation:{type:_n,delay:Rn}},notes:{label:{}},highlight:{markers:{border:{}}}},render:function(){var e,t=this,i=t.options,n=i.markers,o=i.labels,r=t.value;t._rendered||(t._rendered=!0,n.visible&&n.size&&(t.marker=t.createMarker(),t.append(t.marker)),o.visible&&(o.template?(e=Ht(o.template),r=e({dataItem:t.dataItem,category:t.category,value:t.value,percentage:t.percentage,series:t.series})):o.format&&(r=t.formatValue(o.format)),t.label=new ri(r,Ft({align:Yi,vAlign:Yi,margin:{left:5,right:5},zIndex:Ci(o.zIndex,this.series.zIndex)},o)),t.append(t.label)),t.createNote(),t.errorBar&&t.append(t.errorBar))},markerBorder:function(){var e=this.options.markers,t=e.background,i=Ft({color:this.color},e.border);return xi(i.color)||(i.color=new Wt(t).brightness(Ei).toHex()),i},createVisual:Rt,createMarker:function(){var e=this.options.markers,t=new ni({type:e.type,width:e.size,height:e.size,rotation:e.rotation,background:e.background,border:this.markerBorder(),opacity:e.opacity,zIndex:Ci(e.zIndex,this.series.zIndex),animation:e.animation,visual:e.visual},{dataItem:this.dataItem,value:this.value,series:this.series,category:this.category});return t},markerBox:function(){return this.marker||(this.marker=this.createMarker(),this.marker.reflow(this._childBox)),this.marker.box},reflow:function(e){var t,i,n,o,r=this,a=r.options,s=a.vertical,l=r.aboveAxis;if(r.render(),r.box=e,t=e.clone(),s?l?t.y1-=t.height():t.y2+=t.height():l?t.x1+=t.width():t.x2-=t.width(),r._childBox=t,r.marker&&r.marker.reflow(t),r.reflowLabel(t),r.errorBars)for(n=0;r.errorBars.length>n;n++)r.errorBars[n].reflow(t);r.note&&(o=r.markerBox(),r.marker||(i=o.center(),o=Yt(i.x,i.y,i.x,i.y)),r.note.reflow(o))},reflowLabel:function(e){var t=this,i=t.options,n=t.label,o=i.labels.position;n&&(o=o===Ti?Go:o,o=o===Oi?Mi:o,n.reflow(e),n.box.alignTo(t.markerBox(),o),n.reflow(n.box))},createHighlight:function(){var e=this.options.highlight,t=e.markers,i=this.markerBorder().color,n=this.options.markers,o=new ni({type:n.type,width:n.size,height:n.size,rotation:n.rotation,background:t.color||i,border:{color:t.border.color,width:t.border.width,opacity:Ci(t.border.opacity,1)},opacity:Ci(t.opacity,1)});return o.reflow(this._childBox),o.getElement()},highlightVisual:function(){return(this.marker||{}).visual},highlightVisualArgs:function(){var e,t,i,n,o,r=this.marker;return r?(t=r.paddingBox.toRect(),e=r.visual):(i=this.options.markers.size,n=i/2,o=this.box.center(),t=new ki.Rect([o.x-n,o.y-n],[i,i])),{options:this.options,rect:t,visual:e}},tooltipAnchor:function(e,i){var n=this,o=n.markerBox(),r=n.aboveAxis,a=o.x2+qo,s=r?o.y1-i:o.y2,l=n.owner.pane.clipBox(),c=!l||l.overlaps(o);return c?ei(a,s):t},formatValue:function(e){var t=this;return t.owner.formatPointValue(t,e)},overlapsBox:function(e){var t=this.markerBox();return t.overlaps(e)}}),Ft(Se.fn,ue),Ft(Se.fn,he),Pe=Se.extend({init:function(e,t){var i=this;Se.fn.init.call(i,e,t),i.category=e.category},defaults:{labels:{position:Yi},highlight:{opacity:1,border:{width:1,opacity:1}}},createHighlight:function(){var e=this.options.highlight,t=e.border,i=this.options.markers,n=this.box.center(),o=i.size/2-t.width/2,r=new Si.Circle(new ki.Circle([n.x,n.y],o),{stroke:{color:t.color||new Wt(i.background).brightness(Ei).toHex(),width:t.width,opacity:t.opacity},fill:{color:i.background,opacity:e.opacity}});return r}}),Te=Xt.extend({init:function(e,t,i){var n=this;Xt.fn.init.call(n),n.linePoints=e,n.series=t,n.seriesIx=i},options:{closed:!1},points:function(e){var t,i,n=this,o=n.linePoints.concat(e||[]),r=[];for(t=0,i=o.length;i>t;t++)o[t].visible!==!1&&r.push(o[t]._childBox.toRect().center());return r},createVisual:function(){var e,t=this.options,i=this.series,n=i._defaults,o=i.color;Ut(o)&&n&&(o=n.color),e=Si.Path.fromPoints(this.points(),{stroke:{color:o,width:i.width,opacity:i.opacity,dashType:i.dashType},zIndex:i.zIndex}),t.closed&&e.close(),this.visual=e},aliasFor:function(e,t){var i=this,n=i.seriesIx;return i.parent.getNearestPoint(t.x,t.y,n)}}),Ie={renderSegments:function(){var e,t,i,n,o,r,a,s,l=this,c=l.options,u=c.series,h=l.seriesPoints,p=h.length;for(this._segments=[],t=0;p>t;t++){for(e=u[t],i=l.sortPoints(h[t]),a=i.length,n=[],r=0;a>r;r++)o=i[r],o?n.push(o):l.seriesMissingValues(e)!==Ln&&(n.length>1&&(s=l.createSegment(n,e,t,s),this._addSegment(s)),n=[]);n.length>1&&(s=l.createSegment(n,e,t,s),this._addSegment(s))}this.children.unshift.apply(this.children,this._segments)},_addSegment:function(e){this._segments.push(e),e.parent=this},sortPoints:function(e){return e},seriesMissingValues:function(e){var t=e.missingValues,i=!t&&this.options.isStacked;return i?ar:t||Ln},getNearestPoint:function(e,t,i){var n,o,r,a,s,l=new ei(e,t),c=this.seriesPoints[i],u=Gn;for(o=0;c.length>o;o++)r=c[o],r&&xi(r.value)&&null!==r.value&&r.visible!==!1&&(a=r.box,s=a.center().distanceTo(l),u>s&&(n=r,u=s));return n}},Re={createAnimation:function(){var e,t,i=this.getRoot();i&&(i.options||{}).transitions!==!1&&(e=i.box,t=Si.Path.fromRect(e.toRect()),this.visual.clip(t),this.animation=new Be(t,{box:e}),X(this.options.series)&&this._setChildrenAnimation(t))},_setChildrenAnimation:function(e){var t,i,n=this.animationPoints();for(i=0;n.length>i;i++)t=n[i],t&&t.visual&&xi(t.visual.options.zIndex)&&t.visual.clip(e)}},Ve=me.extend({render:function(){var e=this;me.fn.render.apply(e),e.updateStackRange(),e.renderSegments()},pointType:function(){return Se},createPoint:function(e,t){var i,n,o,r=this,a=t.categoryIx,s=t.category,l=t.series,c=t.seriesIx,u=e.valueFields.value,h=r.seriesMissingValues(l);if(!xi(u)||null===u){if(h!==ar)return null;u=0}return n=this.pointOptions(l,c),n=r.evalPointOptions(n,u,s,a,l,c),o=e.fields.color||l.color,Lt.isFunction(l.color)&&(o=n.color),i=new Se(u,n),i.color=o,r.append(i),i},plotRange:function(e){var t,i,n,o,r=this.plotValue(e);if(this.options.isStacked)for(t=e.categoryIx,i=this.categoryPoints[t],n=0;i.length>n&&(o=i[n],e!==o);n++)r+=this.plotValue(o);return[r,r]},createSegment:function(e,t,i){var n,o=t.style;return new(n=o===Io?Le:o===Ro?De:Te)(e,t,i)},animationPoints:function(){var e,t=this.points,i=[];for(e=0;t.length>e;e++)i.push((t[e]||{}).marker);return i.concat(this._segments)}}),Ft(Ve.fn,Ie,Re),Be=Si.Animation.extend({options:{duration:Rn},setup:function(){this._setEnd(this.options.box.x1)},step:function(e){var t=this.options.box;this._setEnd(pi(t.x1,t.x2,e))},_setEnd:function(e){var t=this.element,i=t.segments,n=i[1].anchor(),o=i[2].anchor();t.suspend(),n.setX(e),t.resume(),o.setX(e)}}),Si.AnimationFactory.current.register(Ki,Be),Le=Te.extend({points:function(e){var t,i=this;return t=i.calculateStepPoints(i.linePoints),e&&e.length&&(t=t.concat(i.calculateStepPoints(e).reverse())),t},calculateStepPoints:function(e){var t,i,n,o,r,a=this,s=a.parent,l=s.plotArea,c=l.seriesCategoryAxis(a.series),u=s.seriesMissingValues(a.series)===Ln,h=e.length,p=c.options.reverse,d=c.options.vertical,g=p?2:1,f=p?1:2,m=[];for(n=1;h>n;n++)t=e[n-1],i=e[n],o=t.markerBox().center(),r=i.markerBox().center(),c.options.justified?(m.push(new ki.Point(o.x,o.y)),m.push(d?new ki.Point(o.x,r.y):new ki.Point(r.x,o.y)),m.push(new ki.Point(r.x,r.y))):d?(m.push(new ki.Point(o.x,t.box[or+g])),m.push(new ki.Point(o.x,t.box[or+f])),u&&m.push(new ki.Point(o.x,i.box[or+g])),m.push(new ki.Point(r.x,i.box[or+g])),m.push(new ki.Point(r.x,i.box[or+f]))):(m.push(new ki.Point(t.box[nr+g],o.y)),m.push(new ki.Point(t.box[nr+f],o.y)),u&&m.push(new ki.Point(i.box[nr+g],o.y)),m.push(new ki.Point(i.box[nr+g],r.y)),m.push(new ki.Point(i.box[nr+f],r.y)));return m||[]}}),De=Te.extend({createVisual:function(){var e,t,i,n=this.series,o=n._defaults,r=n.color;Ut(r)&&o&&(r=o.color),e=new Kt(this.options.closed),t=e.process(this.points()),i=new Si.Path({stroke:{color:r,width:n.width,opacity:n.opacity,dashType:n.dashType},zIndex:n.zIndex}),i.segments.push.apply(i.segments,t),this.visual=i}}),Ee={points:function(){var e,t,i=this,n=i.parent,o=n.plotArea,r=n.options.invertAxes,a=n.seriesValueAxis(i.series),s=a.lineBox(),l=o.seriesCategoryAxis(i.series),c=l.lineBox(),u=r?c.x1:c.y1,h=i.stackPoints,p=i._linePoints(h),d=r?nr:or;return u=yi(u,s[d+1],s[d+2]),!i.stackPoints&&p.length>1&&(e=p[0],t=vi(p),r?(p.unshift(new ki.Point(u,e.y)),p.push(new ki.Point(u,t.y))):(p.unshift(new ki.Point(e.x,u)),p.push(new ki.Point(t.x,u)))),p},createVisual:function(){var e=this.series,t=e._defaults,i=e.color;Ut(i)&&t&&(i=t.color),this.visual=new Si.Group({zIndex:e.zIndex}),this.createArea(i),this.createLine(i)},createLine:function(e){var t,i=this.series,n=Ft({color:e,opacity:i.opacity},i.line);n.visible!==!1&&n.width>0&&(t=Si.Path.fromPoints(this._linePoints(),{stroke:{color:n.color,width:n.width,opacity:n.opacity,dashType:n.dashType,lineCap:"butt"}}),this.visual.append(t))},createArea:function(e){var t=this.series,i=Si.Path.fromPoints(this.points(),{fill:{color:e,opacity:t.opacity},stroke:null});this.visual.append(i)}},Oe=Te.extend({init:function(e,t,i,n){var o=this;o.stackPoints=t,Te.fn.init.call(o,e,i,n)},_linePoints:Te.fn.points}),Ft(Oe.fn,Ee),ze=Ve.extend({createSegment:function(e,t,i,n){var o,r,a,s=this,l=s.options,c=l.isStacked,u=(t.line||{}).style;return c&&i>0&&n&&(a=this.seriesMissingValues(t),o="gap"!=a?n.linePoints:this._gapStackPoints(e,i,u),u!==Io&&(o=o.slice(0).reverse())),u===Ro?new Fe(e,n,c,t,i):new(r=u===Io?Me:Oe)(e,o,t,i)},reflow:function(e){var t,i,n,o;if(Ve.fn.reflow.call(this,e),t=this._stackPoints)for(o=0;t.length>o;o++)i=t[o],n=this.categoryAxis.getSlot(i.categoryIx),i.reflow(n)},_gapStackPoints:function(e,t,i){var n,o,r,a,s=this.seriesPoints,l=e[0].categoryIx,c=l+e.length,u=[];for(this._stackPoints=this._stackPoints||[],a=l;c>a;a++){n=t;do n--,o=s[n][a];while(n>0&&!o);o?(i!==Io&&a>l&&!s[n][a-1]&&u.push(this._previousSegmentPoint(a,a-1,n)),u.push(o),i!==Io&&c>a+1&&!s[n][a+1]&&u.push(this._previousSegmentPoint(a,a+1,n))):(r=this._createGapStackPoint(a),this._stackPoints.push(r),u.push(r))}return u},_previousSegmentPoint:function(e,t,i){for(var n,o=this.seriesPoints;i>0&&!n;)i--,n=o[i][t];return n?n=o[i][e]:(n=this._createGapStackPoint(e),this._stackPoints.push(n)),n},_createGapStackPoint:function(e){var t=this.pointOptions({},0),i=new Se(0,t);return i.categoryIx=e,i.series={},i},seriesMissingValues:function(e){return e.missingValues||ar}}),Fe=Oe.extend({init:function(e,t,i,n,o){var r=this;r.prevSegment=t,r.isStacked=i,Te.fn.init.call(r,e,n,o)},strokeSegments:function(){var e,t,i=this._strokeSegments;return i||(e=new Kt(this.options.closed),t=Te.fn.points.call(this),i=this._strokeSegments=e.process(t)),i},createVisual:function(){var e=this.series,t=e._defaults,i=e.color;Ut(i)&&t&&(i=t.color),this.visual=new Si.Group({zIndex:e.zIndex}),this.createFill({fill:{color:i,opacity:e.opacity},stroke:null}),this.createStroke({stroke:Ft({color:i,opacity:e.opacity,lineCap:"butt"},e.line)})},createFill:function(t){var i,n,o,r,a,s=this.strokeSegments(),l=s.slice(0),c=this.prevSegment;this.isStacked&&c&&(i=c.strokeSegments(),n=vi(i).anchor(),l.push(new Si.Segment(n,n,vi(s).anchor())),o=e.map(i,function(e){return new Si.Segment(e.anchor(),e.controlOut(),e.controlIn())}).reverse(),mi(l,o),r=l[0].anchor(),l.push(new Si.Segment(r,r,vi(o).anchor()))),a=new Si.Path(t),a.segments.push.apply(a.segments,l),this.closeFill(a),this.visual.append(a)},closeFill:function(e){var t=this,i=t.parent,n=t.prevSegment,o=i.plotArea,r=i.options.invertAxes,a=i.seriesValueAxis(t.series),s=a.lineBox(),l=o.seriesCategoryAxis(t.series),c=l.lineBox(),u=r?c.x1:c.y1,h=r?nr:or,p=t.strokeSegments(),d=p[0].anchor(),g=vi(p).anchor();u=yi(u,s[h+1],s[h+2]),i.options.isStacked&&n||!(p.length>1)||(r?e.lineTo(u,g.y).lineTo(u,d.y):e.lineTo(g.x,u).lineTo(d.x,u))},createStroke:function(e){if(e.stroke.width>0){var t=new Si.Path(e);t.segments.push.apply(t.segments,this.strokeSegments()),this.visual.append(t)}}}),Me=Le.extend({init:function(e,t,i,n){var o=this;o.stackPoints=t,Le.fn.init.call(o,e,i,n)},_linePoints:Le.fn.points}),Ft(Me.fn,Ee),Ue=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),i.plotArea=e,i.xAxisRanges={},i.yAxisRanges={},i.points=[],i.seriesPoints=[],i.seriesOptions=[],i._evalSeries=[],i.render()},options:{series:[],tooltip:{format:"{0}, {1}"},labels:{format:"{0}, {1}"},clip:!0},render:function(){var e=this;e.traverseDataPoints(Bt(e.addValue,e))},addErrorBar:function(e,t,i){var n,o=this,r=e.value[t],a=t+"Value",s=t+"ErrorLow",l=t+"ErrorHigh",c=i.seriesIx,u=i.series,h=e.options.errorBars,p=i[s],d=i[l];B(r)&&(B(p)&&B(d)&&(n={low:p,high:d}),h&&xi(h[a])&&(o.seriesErrorRanges=o.seriesErrorRanges||{x:[],y:[]},o.seriesErrorRanges[t][c]=o.seriesErrorRanges[t][c]||new fe(h[a],u,t),n=o.seriesErrorRanges[t][c].getErrorRange(r,h[a])),n&&o.addPointErrorBar(n,e,t))},addPointErrorBar:function(e,t,i){var n,o=this,r=e.low,a=e.high,s=t.series,l=i===or,c=t.options.errorBars,u={};t[i+"Low"]=r,t[i+"High"]=a,t.errorBars=t.errorBars||[],n=new ke(r,a,l,o,s,c),t.errorBars.push(n),t.append(n),u[i]=r,o.updateRange(u,s),u[i]=a,o.updateRange(u,s)},addValue:function(e,t){var i,n=this,o=e.x,r=e.y,a=t.seriesIx,s=this.options.series[a],l=this.seriesMissingValues(s),c=n.seriesPoints[a];Q(o)&&Q(r)||(e=this.createMissingValue(e,l)),e&&(i=n.createPoint(e,t),i&&(Vt(i,t),n.addErrorBar(i,nr,t),n.addErrorBar(i,or,t)),n.updateRange(e,t.series)),n.points.push(i),c.push(i)},seriesMissingValues:function(e){return e.missingValues},createMissingValue:Rt,updateRange:function(e,t){var i=this,n=e.x,o=e.y,r=t.xAxis,a=t.yAxis,s=i.xAxisRanges[r],l=i.yAxisRanges[a];Q(n)&&(s=i.xAxisRanges[r]=s||{min:Gn,max:qn},typeof n===Lo&&(n=g(n)),s.min=It.min(s.min,n),s.max=It.max(s.max,n)),Q(o)&&(l=i.yAxisRanges[a]=l||{min:Gn,max:qn},typeof o===Lo&&(o=g(o)),l.min=It.min(l.min,o),l.max=It.max(l.max,o))},evalPointOptions:function(e,t,i){var n=i.series,o=i.seriesIx,r={defaults:n._defaults,excluded:["data","tooltip","tempate","visual","toggle","_outOfRangeMinPoint","_outOfRangeMaxPoint"]},a=this._evalSeries[o];return xi(a)||(this._evalSeries[o]=a=O(e,{},r,!0)),a&&(e=Ft({},e),O(e,{value:t,series:n,dataItem:i.dataItem},r)),e},pointType:function(){return Se},pointOptions:function(e,t){var i,n=this.seriesOptions[t];return n||(i=this.pointType().fn.defaults,this.seriesOptions[t]=n=Ft({},i,{markers:{opacity:e.opacity},tooltip:{format:this.options.tooltip.format},labels:{format:this.options.labels.format}},e)),n},createPoint:function(e,t){var i,n=this,o=t.series,r=this.pointOptions(o,t.seriesIx),a=t.color||o.color;return r=n.evalPointOptions(r,e,t),Lt.isFunction(o.color)&&(a=r.color),i=new Se(e,r),i.color=a,n.append(i),i},seriesAxes:function(e){var t=this.plotArea,i=e.xAxis,n=i?t.namedXAxes[i]:t.axisX,o=e.yAxis,r=o?t.namedYAxes[o]:t.axisY;if(!n)throw Error("Unable to locate X axis with name "+i);if(!r)throw Error("Unable to locate Y axis with name "+o);return{x:n,y:r}},reflow:function(e){var t,i,n=this,o=n.points,r=0,a=!n.options.clip;n.traverseDataPoints(function(e,s){t=o[r++],i=n.seriesAxes(s.series);var l,c=i.x.getSlot(e.x,e.x,a),u=i.y.getSlot(e.y,e.y,a);t&&(c&&u?(l=n.pointSlot(c,u),t.reflow(l)):t.visible=!1)}),n.box=e},pointSlot:function(e,t){return new Yt(e.x1,t.y1,e.x2,t.y2)},traverseDataPoints:function(e){var t,i,n,o,r,a,s,l=this,c=l.options,u=c.series,h=l.seriesPoints;for(i=0;u.length>i;i++)for(n=u[i],o=h[i],o||(h[i]=[]),t=0;n.data.length>t;t++)r=this._bindPoint(n,i,t),a=r.valueFields,s=r.fields,e(a,Ft({pointIx:t,series:n,seriesIx:i,dataItem:n.data[t],owner:l},s))},_bindPoint:me.fn._bindPoint,formatPointValue:function(e,t){var i=e.value;return li(t,i.x,i.y)},animationPoints:function(){var e,t=this.points,i=[];for(e=0;t.length>e;e++)i.push((t[e]||{}).marker);return i}}),Ft(Ue.fn,Re),He=Ue.extend({render:function(){var e=this;Ue.fn.render.call(e),e.renderSegments()},createSegment:function(e,t,i){var n,o=t.style;return new(n=o===Ro?De:Te)(e,t,i)},animationPoints:function(){var e=Ue.fn.animationPoints.call(this);return e.concat(this._segments)},createMissingValue:function(e,t){if(t===ar){var i={x:e.x,y:e.y};return Q(i.x)||(i.x=0),Q(i.y)||(i.y=0),i}}}),Ft(He.fn,Ie),Ne=Ue.extend({init:function(e,t){this._maxSize=qn,Ue.fn.init.call(this,e,t)},options:{tooltip:{format:"{3}"},labels:{format:"{3}"}},addValue:function(e,t){null!==e.size&&(e.size>0||0>e.size&&t.series.negativeValues.visible)?(this._maxSize=It.max(this._maxSize,It.abs(e.size)),Ue.fn.addValue.call(this,e,t)):(this.points.push(null),this.seriesPoints[t.seriesIx].push(null))},reflow:function(e){var t=this;t.updateBubblesSize(e),Ue.fn.reflow.call(t,e)},pointType:function(){return Pe},createPoint:function(e,t){var i,n,o=this,r=t.series,a=r.data.length,s=t.pointIx*(Rn/a),l={delay:s,duration:Rn-s,type:Hi},c=t.color||r.color;return 0>e.size&&r.negativeValues.visible&&(c=Ci(r.negativeValues.color,c)),n=Ft({labels:{animation:{delay:s,duration:Rn-s}}},this.pointOptions(r,t.seriesIx),{markers:{type:Xi,border:r.border,opacity:r.opacity,animation:l}}),n=o.evalPointOptions(n,e,t),Lt.isFunction(r.color)&&(c=n.color),n.markers.background=c,i=new Pe(e,n),i.color=c,o.append(i),i},updateBubblesSize:function(e){var t,i,n,o,r,a,s,l,c,u,h,p,d,g,f,m,x,v=this,y=v.options,b=y.series,w=It.min(e.width(),e.height());for(t=0;b.length>t;t++)for(n=b[t],o=v.seriesPoints[t],r=n.minSize||It.max(.02*w,10),a=n.maxSize||.2*w,s=r/2,l=a/2,c=It.PI*s*s,u=It.PI*l*l,h=u-c,p=h/v._maxSize,i=0;o.length>i;i++)d=o[i],d&&(g=It.abs(d.value.size)*p,f=It.sqrt((c+g)/It.PI),m=Ci(d.options.zIndex,0),x=m+(1-f/l),Ft(d.options,{zIndex:x,markers:{size:2*f,zIndex:x},labels:{zIndex:x+1}}))},formatPointValue:function(e,t){var i=e.value;return li(t,i.x,i.y,i.size,e.category)},createAnimation:Rt,createVisual:Rt}),je=Xt.extend({init:function(e,t){Xt.fn.init.call(this,t),this.value=e},options:{border:{_brightness:.8},line:{width:2},overlay:{gradient:Sn},tooltip:{format:"
{4:d}
Open:{0:C}
High:{1:C}
Low:{2:C}
Close:{3:C}
"},highlight:{opacity:1,border:{width:1,opacity:1},line:{width:1,opacity:1}},notes:{visible:!0,label:{}}},reflow:function(e){var t,i,n,o=this,r=o.options,a=o.owner,s=o.value,l=a.seriesValueAxis(r),c=[];i=l.getSlot(s.open,s.close),n=l.getSlot(s.low,s.high),i.x1=n.x1=e.x1,i.x2=n.x2=e.x2,o.realBody=i,t=n.center().x,c.push([[t,n.y1],[t,i.y1]]),c.push([[t,i.y2],[t,n.y2]]),o.lines=c,o.box=n.clone().wrap(i),o._rendered||(o._rendered=!0,o.createNote()),o.reflowNote()},reflowNote:function(){var e=this;e.note&&e.note.reflow(e.box)},createVisual:function(){Xt.fn.createVisual.call(this),this._mainVisual=this.mainVisual(this.options),this.visual.append(this._mainVisual),this.createOverlay()},mainVisual:function(e){var t=new Si.Group;return this.createBody(t,e),this.createLines(t,e),t},createBody:function(e,t){var i=Si.Path.fromRect(this.realBody.toRect(),{fill:{color:this.color,opacity:t.opacity},stroke:null});t.border.width>0&&i.options.set("stroke",{color:this.getBorderColor(),width:t.border.width,dashType:t.border.dashType,opacity:Ci(t.border.opacity,t.opacity)}),si(i),e.append(i),q(t)&&e.append(this.createGradientOverlay(i,{baseColor:this.color},Ft({},t.overlay)))},createLines:function(e,t){this.drawLines(e,t,this.lines,t.line)},drawLines:function(e,t,i,n){var o,r,a;if(i)for(o={stroke:{color:n.color||this.color,opacity:Ci(n.opacity,t.opacity),width:n.width,dashType:n.dashType,lineCap:"butt"}},r=0;i.length>r;r++)a=Si.Path.fromPoints(i[r],o),si(a),e.append(a)},getBorderColor:function(){var e=this,t=e.options,i=t.border,n=i.color;return xi(n)||(n=new Wt(e.color).brightness(i._brightness).toHex()),n},createOverlay:function(){var e=Si.Path.fromRect(this.box.toRect(),{fill:{color:ir,opacity:0},stroke:null});this.visual.append(e)},createHighlight:function(){var e,t=this.options.highlight,i=this.color;return this.color=t.color||this.color,e=this.mainVisual(Ft({},this.options,{line:{color:this.getBorderColor()}},t)),this.color=i,e},highlightVisual:function(){return this._mainVisual},highlightVisualArgs:function(){return{options:this.options,rect:this.box.toRect(),visual:this._mainVisual}},tooltipAnchor:function(){var e=this,t=e.box,i=e.owner.pane.clipBox()||t;return new ei(t.x2+qo,It.max(t.y1,i.y1)+qo)},formatValue:function(e){var t=this;return t.owner.formatPointValue(t,e); },overlapsBox:function(e){return this.box.overlaps(e)}}),Ft(je.fn,ue),Ft(je.fn,he),Ge=me.extend({options:{},reflowCategories:function(e){var t,i=this,n=i.children,o=n.length;for(t=0;o>t;t++)n[t].reflow(e[t])},addValue:function(e,t){var i,n,o=this,r=t.categoryIx,a=t.category,s=t.series,l=t.seriesIx,c=o.options,u=e.valueFields,h=o.children,p=o.splitValue(u),d=D(p),g=o.categoryPoints[r],f=s.data[r];g||(o.categoryPoints[r]=g=[]),d&&(i=o.createPoint(e,t)),n=h[r],n||(n=new le({vertical:c.invertAxes,gap:c.gap,spacing:c.spacing}),o.append(n)),i&&(o.updateRange(u,t),n.append(i),i.categoryIx=r,i.category=a,i.series=s,i.seriesIx=l,i.owner=o,i.dataItem=f,i.noteText=e.fields.noteText),o.points.push(i),g.push(i)},pointType:function(){return je},createPoint:function(e,t){var i,n=this,o=t.categoryIx,r=t.category,a=t.series,s=t.seriesIx,l=e.valueFields,c=Ft({},a),u=n.pointType(),h=e.fields.color||a.color;return c=n.evalPointOptions(c,l,r,o,a,s),a.type==ji&&l.open>l.close&&(h=e.fields.downColor||a.downColor||a.color),Lt.isFunction(a.color)&&(h=c.color),i=new u(l,c),i.color=h,i},splitValue:function(e){return[e.low,e.open,e.close,e.high]},updateRange:function(e,t){var i=this,n=t.series.axis,o=i.valueAxisRanges[n],r=i.splitValue(e);o=i.valueAxisRanges[n]=o||{min:Gn,max:qn},o=i.valueAxisRanges[n]={min:It.min.apply(It,r.concat([o.min])),max:It.max.apply(It,r.concat([o.max]))}},formatPointValue:function(e,t){var i=e.value;return li(t,i.open,i.high,i.low,i.close,e.category)},animationPoints:function(){return this.points}}),Ft(Ge.fn,Re),Ye=je.extend({reflow:function(e){var t,i,n,o,r=this,a=r.options,s=r.owner,l=r.value,c=s.seriesValueAxis(a),u=[],h=[],p=[];o=c.getSlot(l.low,l.high),i=c.getSlot(l.open,l.open),n=c.getSlot(l.close,l.close),i.x1=n.x1=o.x1=e.x1,i.x2=n.x2=o.x2=e.x2,t=o.center().x,u.push([i.x1,i.y1]),u.push([t,i.y1]),h.push([t,n.y1]),h.push([n.x2,n.y1]),p.push([t,o.y1]),p.push([t,o.y2]),r.lines=[u,h,p],r.box=o.clone().wrap(i.clone().wrap(n)),r.reflowNote()},createBody:e.noop}),qe=Ge.extend({pointType:function(){return Ye}}),Xe=Ge.extend({addValue:function(e,t){var i,n,o=this,r=t.categoryIx,a=t.category,s=t.series,l=t.seriesIx,c=o.options,u=o.children,h=e.valueFields,p=o.splitValue(h),d=D(p),g=o.categoryPoints[r],f=s.data[r];g||(o.categoryPoints[r]=g=[]),d&&(i=o.createPoint(e,t)),n=u[r],n||(n=new le({vertical:c.invertAxes,gap:c.gap,spacing:c.spacing}),o.append(n)),i&&(o.updateRange(h,t),n.append(i),i.categoryIx=r,i.category=a,i.series=s,i.seriesIx=l,i.owner=o,i.dataItem=f),o.points.push(i),g.push(i)},pointType:function(){return We},splitValue:function(e){return[e.lower,e.q1,e.median,e.q3,e.upper]},updateRange:function(e,t){var i=this,n=t.series.axis,o=i.valueAxisRanges[n],r=i.splitValue(e).concat(i.filterOutliers(e.outliers));xi(e.mean)&&(r=r.concat(e.mean)),o=i.valueAxisRanges[n]=o||{min:Gn,max:qn},o=i.valueAxisRanges[n]={min:It.min.apply(It,r.concat([o.min])),max:It.max.apply(It,r.concat([o.max]))}},formatPointValue:function(e,t){var i=e.value;return li(t,i.lower,i.q1,i.median,i.q3,i.upper,i.mean,e.category)},filterOutliers:function(e){var t,i,n=(e||[]).length,o=[];for(t=0;n>t;t++)i=e[t],xi(i)&&R(o,i);return o}}),We=je.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),i.value=e,i.createNote()},options:{border:{_brightness:.8},line:{width:2},mean:{width:2,dashType:"dash"},overlay:{gradient:Sn},tooltip:{format:"
{6:d}
Lower:{0:C}
Q1:{1:C}
Median:{2:C}
Mean:{5:C}
Q3:{3:C}
Upper:{4:C}
"},highlight:{opacity:1,border:{width:1,opacity:1},line:{width:1,opacity:1}},notes:{visible:!0,label:{}},outliers:{visible:!0,size:Mn,type:Ji,background:ir,border:{width:2,opacity:1},opacity:0},extremes:{visible:!0,size:Mn,type:Xi,background:ir,border:{width:2,opacity:1},opacity:0}},reflow:function(e){var t,i,n,o,r,a=this,s=a.options,l=a.owner,c=a.value,u=l.seriesValueAxis(s);n=u.getSlot(c.q1,c.q3),a.boxSlot=n,i=u.getSlot(c.lower,c.upper),o=u.getSlot(c.median),n.x1=i.x1=e.x1,n.x2=i.x2=e.x2,a.realBody=n,c.mean&&(r=u.getSlot(c.mean),a.meanPoints=[[[e.x1,r.y1],[e.x2,r.y1]]]),t=i.center().x,a.whiskerPoints=[[[t-5,i.y1],[t+5,i.y1],[t,i.y1],[t,n.y1]],[[t-5,i.y2],[t+5,i.y2],[t,i.y2],[t,n.y2]]],a.medianPoints=[[[e.x1,o.y1],[e.x2,o.y1]]],a.box=i.clone().wrap(n),a.reflowNote()},renderOutliers:function(e){var t,i,n,o,r=this,a=e.markers||{},s=r.value,l=s.outliers||[],c=3*It.abs(s.q3-s.q1),u=[];for(o=0;l.length>o;o++)n=l[o],a=s.q3+c>n&&n>s.q1-c?e.outliers:e.extremes,t=Ft({},a.border),xi(t.color)||(t.color=xi(r.color)?r.color:new Wt(a.background).brightness(Ei).toHex()),i=new ni({type:a.type,width:a.size,height:a.size,rotation:a.rotation,background:a.background,border:t,opacity:a.opacity}),i.value=n,u.push(i);return this.reflowOutliers(u),u},reflowOutliers:function(e){var t,i,n,o=this.owner.seriesValueAxis(this.options),r=this.box.center().x;for(t=0;e.length>t;t++)i=e[t].value,n=o.getSlot(i).move(r),this.box=this.box.wrap(n),e[t].reflow(n)},mainVisual:function(e){var t,i,n=je.fn.mainVisual.call(this,e),o=this.renderOutliers(e);for(t=0;o.length>t;t++)i=o[t].getElement(),i&&n.append(i);return n},createLines:function(e,t){this.drawLines(e,t,this.whiskerPoints,t.line),this.drawLines(e,t,this.medianPoints,t.median),this.drawLines(e,t,this.meanPoints,t.mean)},getBorderColor:function(){return this.color?this.color:je.getBorderColor.call(this)}}),Ft(We.fn,ue),Ke=Xt.extend({init:function(e,t,i){var n=this;n.value=e,n.sector=t,Xt.fn.init.call(n,i)},options:{color:ir,overlay:{gradient:vo},border:{width:.5},labels:{visible:!1,distance:35,font:an,margin:ui(.5),align:Xi,zIndex:1,position:lo},animation:{type:co},highlight:{visible:!0,border:{width:1}},visible:!0},render:function(){var e,t=this,i=t.options,n=i.labels,o=t.value;t._rendered||t.visible===!1||(t._rendered=!0,n.template?(e=Ht(n.template),o=e({dataItem:t.dataItem,category:t.category,value:t.value,series:t.series,percentage:t.percentage})):n.format&&(o=li(n.format,o)),n.visible&&o&&(t.label=new ri(o,Ft({},n,{align:Yi,vAlign:"",animation:{type:_n,delay:t.animationDelay}})),t.append(t.label)))},reflow:function(e){var t=this;t.render(),t.box=e,t.reflowLabel()},reflowLabel:function(){var e,t,i,n,o=this,r=o.sector.clone(),a=o.options,s=o.label,l=a.labels,c=l.distance,u=r.middle();s&&(n=s.box.height(),i=s.box.width(),l.position==Yi?(r.r=It.abs((r.r-n)/2)+n,e=r.point(u),s.reflow(Yt(e.x,e.y-n/2,e.x,e.y))):l.position==Bn?(r.r=r.r-n/2,e=r.point(u),s.reflow(Yt(e.x,e.y-n/2,e.x,e.y))):(e=r.clone().expand(c).point(u),e.x>=r.c.x?(t=e.x+i,s.orientation=xo):(t=e.x-i,s.orientation=En),s.reflow(Yt(t,e.y-n,e.x,e.y))))},createVisual:function(){var e,t,i=this,n=i.sector,o=i.options;Xt.fn.createVisual.call(this),i.value&&(o.visual?(e=(n.startAngle+180)%360,t=o.visual({category:i.category,dataItem:i.dataItem,value:i.value,series:i.series,percentage:i.percentage,center:new ki.Point(n.c.x,n.c.y),radius:n.r,innerRadius:n.ir,startAngle:e,endAngle:e+n.angle,options:o,createVisual:function(){var e=new Si.Group;return i.createSegmentVisual(e),e}}),t&&i.visual.append(t)):i.createSegmentVisual(i.visual))},createSegmentVisual:function(e){var t,i=this,n=i.sector,o=i.options,r=o.border||{},a=r.width>0?{stroke:{color:r.color,width:r.width,opacity:r.opacity,dashType:r.dashType}}:{},s=o.color,l={color:s,opacity:o.opacity};t=i.createSegment(n,Ft({fill:l,stroke:{opacity:o.opacity},zIndex:o.zIndex},a)),e.append(t),q(o)&&e.append(this.createGradientOverlay(t,{baseColor:s,fallbackFill:l},Ft({center:[n.c.x,n.c.y],innerRadius:n.ir,radius:n.r,userSpace:!0},o.overlay)))},createSegment:function(e,t){return t.singleSegment?new Si.Circle(new ki.Circle(new ki.Point(e.c.x,e.c.y),e.r),t):oi.current.createRing(e,t)},createAnimation:function(){var e=this.options,t=this.sector.c;Ft(e,{animation:{center:[t.x,t.y],delay:this.animationDelay}}),Xt.fn.createAnimation.call(this)},createHighlight:function(e){var t=this,i=t.options.highlight||{},n=i.border||{};return t.createSegment(t.sector,Ft({},e,{fill:{color:i.color,opacity:i.opacity},stroke:{opacity:n.opacity,width:n.width,color:n.color}}))},highlightVisual:function(){return this.visual.children[0]},highlightVisualArgs:function(){var e=this.sector;return{options:this.options,radius:e.r,innerRadius:e.ir,center:new ki.Point(e.c.x,e.c.y),startAngle:e.startAngle,endAngle:e.angle+e.startAngle,visual:this.visual}},tooltipAnchor:function(e,t){var i=this,n=i.sector.adjacentBox(qo,e,t);return new ei(n.x1,n.y1)},formatValue:function(e){var t=this;return t.owner.formatPointValue(t,e)}}),Ft(Ke.fn,ue),Qe={createLegendItem:function(e,t,i){var n,o,r,a,s,l=this,c=l.options.legend||{},u=c.labels||{},h=c.inactiveItems||{},p=h.labels||{};i&&i.visibleInLegend!==!1&&(s=i.visible!==!1,n=i.category||"",o=s?u.template:p.template||u.template,o&&(n=Ht(o)({text:n,series:i.series,dataItem:i.dataItem,percentage:i.percentage,value:e})),s?(a={},r=t.color):(a={color:p.color,font:p.font},r=(h.markers||{}).color),n&&l.legendItems.push({pointIndex:i.index,text:n,series:i.series,markerColor:r,labels:a}))}},Ze=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),i.plotArea=e,i.points=[],i.legendItems=[],i.render()},options:{startAngle:90,connectors:{width:1,color:"#939393",padding:4},inactiveItems:{markers:{},labels:{}}},render:function(){var e=this;e.traverseDataPoints(Bt(e.addValue,e))},traverseDataPoints:function(e){var t,i,n,o,r,a,s,l,c,u,h,p,d,g=this,f=g.options,m=g.plotArea.options.seriesColors||[],x=m.length,v=f.series,y=v.length,b=0;for(o=0;y>o;o++){for(t=v[o],a=t.data,h=Y(t),s=360/h,p=xi(t.startAngle)?t.startAngle:f.startAngle,o!=y-1&&t.labels.position==lo&&(t.labels.position=Yi),d=0;a.length>d;d++)i=ee.current.bindPoint(t,d),l=i.valueFields.value,c=It.abs(l),n=i.fields,r=c*s,u=1!=a.length&&!!n.explode,Ut(t.color)||(t.color=n.color||m[d%x]),e(l,new ii(null,0,0,p,r),{owner:g,category:n.category||"",index:b,series:t,seriesIx:o,dataItem:a[d],percentage:0!==h?c/h:0,explode:u,visibleInLegend:n.visibleInLegend,visible:n.visible,zIndex:y-o,animationDelay:g.animationDelay(d,o,y)}),i.fields.visible!==!1&&(p+=r),b++;b=0}},evalSegmentOptions:function(e,t,i){var n=i.series;O(e,{value:t,series:n,dataItem:i.dataItem,category:i.category,percentage:i.percentage},{defaults:n._defaults,excluded:["data","template","visual","toggle"]})},addValue:function(e,t,i){var n,o=this,r=Ft({},i.series,{index:i.index});o.evalSegmentOptions(r,e,i),o.createLegendItem(e,r,i),i.visible!==!1&&(n=new Ke(e,t,r),Vt(n,i),o.append(n),o.points.push(n))},reflow:function(e){var t,i,n,o,r,a,s,l,c=this,u=c.options,h=e.clone(),p=5,d=It.min(h.width(),h.height()),g=d/2,f=d-.85*d,m=Ci(u.padding,f),x=Yt(h.x1,h.y1,h.x1+d,h.y1+d),v=x.center(),y=c.seriesConfigs||[],b=h.center(),w=c.points,_=w.length,A=u.series.length,C=[],k=[];for(m=m>g-p?g-p:m,x.translate(b.x-v.x,b.y-v.y),a=g-m,l=ei(a+x.x1+m,a+x.y1+m),s=0;_>s;s++)o=w[s],r=o.sector,r.r=a,r.c=l,i=o.seriesIx,y.length&&(t=y[i],r.ir=t.ir,r.r=t.r),i==A-1&&o.explode&&(r.c=r.clone().radius(.15*r.r).point(r.middle())),o.reflow(x),n=o.label,n&&n.options.position===lo&&i==A-1&&(n.orientation===xo?k.push(n):C.push(n));C.length>0&&(C.sort(c.labelComparator(!0)),c.leftLabelsReflow(C)),k.length>0&&(k.sort(c.labelComparator(!1)),c.rightLabelsReflow(k)),c.box=x},leftLabelsReflow:function(e){var t=this,i=t.distanceBetweenLabels(e);t.distributeLabels(i,e)},rightLabelsReflow:function(e){var t=this,i=t.distanceBetweenLabels(e);t.distributeLabels(i,e)},distanceBetweenLabels:function(e){var t,i,n,o=this,r=o.points,a=r[r.length-1],s=a.sector,l=e[0].box,c=e.length-1,u=s.r+a.options.labels.distance,h=[];for(i=gi(l.y1-(s.c.y-u-l.height()-l.height()/2)),h.push(i),n=0;c>n;n++)l=e[n].box,t=e[n+1].box,i=gi(t.y1-l.y2),h.push(i);return i=gi(s.c.y+u-e[c].box.y2-e[c].box.height()/2),h.push(i),h},distributeLabels:function(e,t){var i,n,o,r,a=this,s=e.length;for(r=0;s>r;r++)for(n=o=r,i=-e[r];i>0&&(n>=0||s>o);)i=a._takeDistance(e,r,--n,i),i=a._takeDistance(e,r,++o,i);a.reflowLabels(e,t)},_takeDistance:function(e,t,i,n){if(e[i]>0){var o=It.min(e[i],n);n-=o,e[i]-=o,e[t]+=o}return n},reflowLabels:function(e,t){var i,n,o,r,a=this,s=a.points,l=s[s.length-1],c=l.sector,u=t.length,h=l.options.labels,p=h.distance,d=c.c.y-(c.r+p)-t[0].box.height();for(e[0]+=2,r=0;u>r;r++)i=t[r],d+=e[r],o=i.box,n=a.hAlignLabel(o.x2,c.clone().expand(p),d,d+o.height(),i.orientation==xo),i.orientation==xo?(h.align!==Xi&&(n=c.r+c.c.x+p),i.reflow(Yt(n+o.width(),d,n,d))):(h.align!==Xi&&(n=c.c.x-c.r-p),i.reflow(Yt(n-o.width(),d,n,d))),d+=o.height()},createVisual:function(){var e,t,i,n,r,a,s,l,c,u,h,p,d,g,f=this,m=f.options,x=m.connectors,v=f.points,y=v.length,b=4;for(Xt.fn.createVisual.call(this),this._connectorLines=[],s=0;y>s;s++)n=v[s],t=n.sector,i=t.middle(),a=n.label,r={seriesId:n.seriesIx},a&&(e=new Si.Path({stroke:{color:x.color,width:x.width},animation:{type:_n,delay:n.animationDelay}}),a.options.position===lo&&0!==n.value&&(l=a.box,c=t.c,u=t.point(i),h=ei(l.x1,l.center().y),u=t.clone().expand(x.padding).point(i),e.moveTo(u.x,u.y),a.orientation==xo?(d=ei(l.x1-x.padding,l.center().y),g=o(c,u,h,d),h=ei(d.x-b,d.y),g=g||h,g.x=It.min(g.x,h.x),f.pointInCircle(g,t.c,t.r+b)||t.c.x>g.x?(p=t.c.x+t.r+b,n.options.labels.align!==Zi?h.x>p?e.lineTo(p,u.y):e.lineTo(u.x+2*b,u.y):e.lineTo(p,u.y),e.lineTo(h.x,d.y)):(g.y=d.y,e.lineTo(g.x,g.y))):(d=ei(l.x2+x.padding,l.center().y),g=o(c,u,h,d),h=ei(d.x+b,d.y),g=g||h,g.x=It.max(g.x,h.x),f.pointInCircle(g,t.c,t.r+b)||g.x>t.c.x?(p=t.c.x-t.r-b,n.options.labels.align!==Zi?p>h.x?e.lineTo(p,u.y):e.lineTo(u.x-2*b,u.y):e.lineTo(p,u.y),e.lineTo(h.x,d.y)):(g.y=d.y,e.lineTo(g.x,g.y))),e.lineTo(d.x,d.y),this._connectorLines.push(e),this.visual.append(e)))},labelComparator:function(e){return e=e?-1:1,function(t,i){return t=(t.parent.sector.middle()+270)%360,i=(i.parent.sector.middle()+270)%360,(t-i)*e}},hAlignLabel:function(e,t,i,n,o){var r=t.c.x,a=t.c.y,s=t.r,l=It.min(It.abs(a-i),It.abs(a-n));return l>s?e:r+It.sqrt(s*s-l*l)*(o?1:-1)},pointInCircle:function(e,t,i){return h(t.x-e.x)+h(t.y-e.y)p-u?p-u:g,n=p-g,r=0;m>r;r++)t=f[r],0===r&&xi(t.holeSize)&&(i=t.holeSize,n-=t.holeSize),xi(t.size)?n-=t.size:x++,xi(t.margin)&&r!=m-1&&(n-=t.margin);for(xi(i)||(b=(p-g)/(m+.75),i=.75*b,n-=i),y=i,r=0;m>r;r++)t=f[r],o=Ci(t.size,n/x),y+=v,a=y+o,s.seriesConfigs.push({ir:y,r:a}),v=t.margin||0,y=a;Ze.fn.reflow.call(s,e)},animationDelay:function(e,t,i){return e*pn+Rn*(t+1)/(i+1)}}),et=xe.extend({render:function(){xe.fn.render.call(this),this.createSegments()},traverseDataPoints:function(e){var t,i,n,o,r,a,s,l,c,h,p=this.options.series,d=this.categoryAxis.options.categories||[],g=u(p),f=!this.options.invertAxes;for(t=0;p.length>t;t++)for(i=p[t],n=0,o=0,r=0;g>r;r++)a=ee.current.bindPoint(i,r),s=a.valueFields.value,l=a.fields.summary,c=n,l?"total"===l.toLowerCase()?(a.valueFields.value=n,c=0,h=n):(a.valueFields.value=o,h=c-o,o=0):B(s)&&(o+=s,n+=s,h=n),e(a,{category:d[r],categoryIx:r,series:i,seriesIx:t,total:n,runningTotal:o,from:c,to:h,isVertical:f})},updateRange:function(e,t){xe.fn.updateRange.call(this,{value:t.to},t)},aboveAxis:function(e){return e.value>=0},plotRange:function(e){return[e.from,e.to]},createSegments:function(){var e,t,i,n,o,r,a,s=this.options.series,l=this.seriesPoints,c=this.segments=[];for(e=0;s.length>e;e++)if(t=s[e],i=l[e])for(o=0;i.length>o;o++)r=i[o],r&&n&&(a=new tt(n,r,t),c.push(a),this.append(a)),n=r}}),tt=Xt.extend({init:function(e,t,i){var n=this;Xt.fn.init.call(n),n.from=e,n.to=t,n.series=i},options:{animation:{type:_n,delay:Rn}},linePoints:function(){var e,t,i=[],n=this.from,o=n.box,r=this.to.box;return n.isVertical?(e=n.aboveAxis?o.y1:o.y2,i.push([o.x1,e],[r.x2,e])):(t=n.aboveAxis?o.x2:o.x1,i.push([t,o.y1],[t,r.y2])),i},createVisual:function(){var e,t;Xt.fn.createVisual.call(this),e=this.series.line||{},t=Si.Path.fromPoints(this.linePoints(),{stroke:{color:e.color,width:e.width,opacity:e.opacity,dashType:e.dashType}}),si(t),this.visual.append(t)}}),it=qt.extend({init:function(e){var t=this;qt.fn.init.call(t,e),e=t.options,t.id=Lt.guid(),t.createTitle(),t.content=new Xt,t.chartContainer=new nt({},t),t.append(t.content),t.axes=[],t.charts=[]},options:{zIndex:-1,shrinkToFit:!0,title:{align:En},visible:!0},createTitle:function(){var e=this,t=e.options.title;typeof t===ao&&(t=Ft({},t,{align:t.position,position:Go})),e.title=ai.buildTitle(t,e,it.fn.options.title)},appendAxis:function(e){var t=this;t.content.append(e),t.axes.push(e),e.pane=t},appendChart:function(e){var t=this;t.chartContainer.parent!==t.content&&t.content.append(t.chartContainer),t.charts.push(e),t.chartContainer.append(e),e.pane=t},empty:function(){var e,t=this,i=t.parent;if(i){for(e=0;t.axes.length>e;e++)i.removeAxis(t.axes[e]);for(e=0;t.charts.length>e;e++)i.removeChart(t.charts[e])}t.axes=[],t.charts=[],t.content.destroy(),t.content.children=[],t.chartContainer.children=[]},reflow:function(e){var t,i=this;vi(i.children)===i.content&&(t=i.children.pop()),qt.fn.reflow.call(i,e),t&&i.children.push(t),i.title&&(i.contentBox.y1+=i.title.box.height())},visualStyle:function(){var e=qt.fn.visualStyle.call(this);return e.zIndex=-10,e},renderComplete:function(){this.options.visible&&this.createGridLines()},stackRoot:i,clipRoot:i,createGridLines:function(){var e,t,i,n,o,r,a=this,s=a.axes,l=s.concat(a.parent.axes),c=[],u=[];for(t=0;s.length>t;t++)for(n=s[t],o=n.options.vertical,e=o?c:u,i=0;l.length>i;i++)0===e.length&&(r=l[i],o!==r.options.vertical&&mi(e,n.createGridLines(r)))},refresh:function(){this.visual.clear(),this.content.parent=null,this.content.createGradient=e.proxy(this.createGradient,this),this.content.renderVisual(),this.content.parent=this,this.title&&this.visual.append(this.title.visual),this.visual.append(this.content.visual),this.renderComplete()},clipBox:function(){return this.chartContainer.clipBox}}),nt=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,e),i.pane=t},shouldClip:function(){var e,t=this,i=t.children,n=i.length;for(e=0;n>e;e++)if(i[e].options.clip===!0)return!0;return!1},_clipBox:function(){var e,t,i,n,o=this,r=o.pane,a=r.axes,s=a.length,l=r.box.clone();for(t=0;s>t;t++)n=a[t],e=n.options.vertical?or:nr,i=n.lineBox(),l[e+1]=i[e+1],l[e+2]=i[e+2];return l},createVisual:function(){var e,t,i;this.visual=new Si.Group({zIndex:0}),this.shouldClip()&&(e=this.clipBox=this._clipBox(),t=e.toRect(),i=Si.Path.fromRect(t),this.visual.clip(i),this.unclipLabels())},stackRoot:i,unclipLabels:function(){var e,t,i,n,o,r=this,a=r.children,s=r.clipBox;for(i=0;a.length>i;i++)for(e=a[i].points||{},o=e.length,n=0;o>n;n++)t=e[n],t&&t.label&&t.label.options.visible&&t.overlapsBox(s)&&(t.label.alignToClipBox&&t.label.alignToClipBox(s),t.label.options.noclip=!0)},destroy:function(){Xt.fn.destroy.call(this),delete this.parent}}),ot=Xt.extend({init:function(e,t){var i=this;Xt.fn.init.call(i,t),i.series=e,i.initSeries(),i.charts=[],i.options.legend.items=[],i.axes=[],i.crosshairs=[],i.createPanes(),i.render(),i.createCrosshairs()},options:{series:[],plotArea:{margin:{}},background:"",border:{color:zi,width:0},legend:{inactiveItems:{labels:{color:"#919191"},markers:{color:"#919191"}}}},initSeries:function(){var e,t,i=this.series;for(e=0;i.length>e;e++)t=i[e],t.index=e},createPanes:function(){var e,t,i=this,n=[],o=i.options.panes||[],r=It.max(o.length,1);for(e=0;r>e;e++)t=new it(o[e]),t.paneIndex=e,n.push(t),i.append(t);i.panes=n},createCrosshairs:function(e){var t,i,n,o,r,a=this;for(e=e||a.panes,t=0;e.length>t;t++)for(n=e[t],i=0;n.axes.length>i;i++)o=n.axes[i],o.options.crosshair&&o.options.crosshair.visible&&(r=new mt(o,o.options.crosshair),a.crosshairs.push(r),n.content.append(r))},removeCrosshairs:function(e){var t,i,n=this,o=n.crosshairs,r=e.axes;for(t=o.length-1;t>=0;t--)for(i=0;r.length>i;i++)if(o[t].axis===r[i]){o.splice(t,1);break}},hideCrosshairs:function(){var e,t=this.crosshairs;for(e=0;t.length>e;e++)t[e].hide()},findPane:function(e){var t,i,n=this,o=n.panes;for(t=0;o.length>t;t++)if(o[t].options.name===e){i=o[t];break}return i||o[0]},findPointPane:function(e){var t,i,n=this,o=n.panes;for(t=0;o.length>t;t++)if(o[t].box.containsPoint(e)){i=o[t];break}return i},appendAxis:function(e){var t=this,i=t.findPane(e.options.pane);i.appendAxis(e),t.axes.push(e),e.plotArea=t},removeAxis:function(e){var t,i,n=this,o=[];for(t=0;n.axes.length>t;t++)i=n.axes[t],e!==i?o.push(i):i.destroy();n.axes=o},appendChart:function(e,t){var i=this;i.charts.push(e),t?t.appendChart(e):i.append(e)},removeChart:function(e){var t,i,n=this,o=[];for(t=0;n.charts.length>t;t++)i=n.charts[t],i!==e?o.push(i):i.destroy();n.charts=o},addToLegend:function(e){var t,i,n,o,r,a,s,l,c,u=e.length,h=[],p=this.options.legend,d=p.labels||{},g=p.inactiveItems||{},f=g.labels||{};for(t=0;u>t;t++)i=e[t],l=i.visible!==!1,i.visibleInLegend!==!1&&(n=i.name||"",c=l?d.template:f.template||d.template,c&&(n=Ht(c)({text:n,series:i})),o=i.color,s=i._defaults,Ut(o)&&s&&(o=s.color),l?(r={},a=o):(r={color:f.color,font:f.font},a=g.markers.color),n&&h.push({text:n,labels:r,markerColor:a,series:i,active:l}));mi(p.items,h)},groupAxes:function(e){var t,i,n,o,r=[],a=[];for(n=0;e.length>n;n++)for(t=e[n].axes,o=0;t.length>o;o++)i=t[o],i.options.vertical?a.push(i):r.push(i);return{x:r,y:a,any:r.concat(a)}},groupSeriesByPane:function(){var e,t,i,n=this,o=n.series,r={};for(e=0;o.length>e;e++)i=o[e],t=n.seriesPaneName(i),r[t]?r[t].push(i):r[t]=[i];return r},filterVisibleSeries:function(e){var t,i,n=[];for(t=0;e.length>t;t++)i=e[t],i.visible!==!1&&n.push(i);return n},reflow:function(e){var t=this,i=t.options.plotArea,n=t.panes,o=ui(i.margin);t.box=e.clone().unpad(o),t.reflowPanes(),t.reflowAxes(n),t.reflowCharts(n)},redraw:function(e){var t,i=this;for(e=[].concat(e),this.initSeries(),t=0;e.length>t;t++)i.removeCrosshairs(e[t]),e[t].empty();for(i.render(e),i.reflowAxes(i.panes),i.reflowCharts(e),i.createCrosshairs(e),t=0;e.length>t;t++)e[t].refresh()},axisCrossingValues:function(e,t){var i,n=e.options,o=[].concat(n.axisCrossingValues||n.axisCrossingValue),r=t.length-o.length,a=o[0]||0;for(i=0;r>i;i++)o.push(a);return o},alignAxisTo:function(e,t,i,n){var o=e.getSlot(i,i,!0),r=e.options.reverse?2:1,a=t.getSlot(n,n,!0),s=t.options.reverse?2:1,l=e.box.translate(a[nr+s]-o[nr+r],a[or+s]-o[or+r]);e.pane!==t.pane&&l.translate(0,e.pane.box.y1-t.pane.box.y1),e.reflow(l)},alignAxes:function(e,t){var i,n,o,r,a=this,s=e[0],l=t[0],c=a.axisCrossingValues(s,t),u=a.axisCrossingValues(l,e),h={},p={},d={},g={};for(r=0;t.length>r;r++)o=t[r],i=o.pane,n=i.id,a.alignAxisTo(o,s,u[r],c[r]),o.options._overlap||(gi(o.lineBox().x1)===gi(s.lineBox().x1)&&(h[n]&&o.reflow(o.box.alignTo(h[n].box,En).translate(-o.options.margin,0)),h[n]=o),gi(o.lineBox().x2)===gi(s.lineBox().x2)&&(o._mirrored||(o.options.labels.mirror=!o.options.labels.mirror,o._mirrored=!0),a.alignAxisTo(o,s,u[r],c[r]),p[n]&&o.reflow(o.box.alignTo(p[n].box,xo).translate(o.options.margin,0)),p[n]=o),0!==r&&l.pane===o.pane&&(o.alignTo(l),o.reflow(o.box)));for(r=0;e.length>r;r++)o=e[r],i=o.pane,n=i.id,a.alignAxisTo(o,l,c[r],u[r]),o.options._overlap||(gi(o.lineBox().y1)===gi(l.lineBox().y1)&&(o._mirrored||(o.options.labels.mirror=!o.options.labels.mirror,o._mirrored=!0),a.alignAxisTo(o,l,c[r],u[r]),d[n]&&o.reflow(o.box.alignTo(d[n].box,Go).translate(0,-o.options.margin)),d[n]=o),gi(o.lineBox().y2,$i)===gi(l.lineBox().y2,$i)&&(g[n]&&o.reflow(o.box.alignTo(g[n].box,Mi).translate(0,o.options.margin)),g[n]=o),0!==r&&(o.alignTo(s),o.reflow(o.box)))},shrinkAxisWidth:function(e){var t,i,n,o=this,r=o.groupAxes(e).any,a=P(r),s=0;for(t=0;e.length>t;t++)i=e[t],i.axes.length>0&&(s=It.max(s,a.width()-i.contentBox.width()));if(0!==s)for(t=0;r.length>t;t++)n=r[t],n.options.vertical||n.reflow(n.box.shrink(s,0))},shrinkAxisHeight:function(e){var t,i,n,o,r,a,s;for(t=0;e.length>t;t++)if(i=e[t],n=i.axes,o=It.max(0,P(n).height()-i.contentBox.height()),0!==o){for(r=0;n.length>r;r++)a=n[r],a.options.vertical&&a.reflow(a.box.shrink(0,o));s=!0}return s},fitAxes:function(e){var t,i,n,o,r,a,s,l,c=this,u=c.groupAxes(e).any,h=0;for(s=0;e.length>s;s++)if(r=e[s],t=r.axes,i=r.contentBox,t.length>0)for(n=P(t),h=It.max(h,i.x1-n.x1),o=It.max(i.y1-n.y1,i.y2-n.y2),l=0;t.length>l;l++)a=t[l],a.reflow(a.box.translate(0,o));for(s=0;u.length>s;s++)a=u[s],a.reflow(a.box.translate(h,0))},reflowAxes:function(e){var t,i=this,n=i.groupAxes(e);for(t=0;e.length>t;t++)i.reflowPaneAxes(e[t]);n.x.length>0&&n.y.length>0&&(i.alignAxes(n.x,n.y),i.shrinkAxisWidth(e),i.autoRotateAxisLabels(n),i.alignAxes(n.x,n.y),i.shrinkAxisWidth(e)&&i.alignAxes(n.x,n.y),i.shrinkAxisHeight(e),i.alignAxes(n.x,n.y),i.shrinkAxisHeight(e)&&i.alignAxes(n.x,n.y),i.fitAxes(e))},autoRotateAxisLabels:function(e){var t,i,n,o=this.axes,r=this.panes;for(i=0;o.length>i;i++)t=o[i],t.autoRotateLabels()&&(n=!0);if(n){for(i=0;r.length>i;i++)this.reflowPaneAxes(r[i]);e.x.length>0&&e.y.length>0&&(this.alignAxes(e.x,e.y),this.shrinkAxisWidth(r))}},reflowPaneAxes:function(e){var t,i=e.axes,n=i.length;if(n>0)for(t=0;n>t;t++)i[t].reflow(e.contentBox)},reflowCharts:function(e){var t,i,n=this,o=n.charts,r=o.length,a=n.box;for(i=0;r>i;i++)t=o[i].pane,(!t||hi(t,e))&&o[i].reflow(a)},reflowPanes:function(){var e,t,i,n,o,r=this,a=r.box,s=r.panes,l=s.length,c=a.height(),u=l,h=0,p=a.y1;for(e=0;l>e;e++)t=s[e],n=t.options.height,t.options.width=a.width(),t.options.height?(n.indexOf&&n.indexOf("%")&&(o=parseInt(n,10)/100,t.options.height=o*a.height()),t.reflow(a.clone()),c-=t.options.height):h++;for(e=0;l>e;e++)t=s[e],t.options.height||(t.options.height=c/h);for(e=0;l>e;e++)t=s[e],i=a.clone().move(a.x1,p),t.reflow(i),u--,p+=t.options.height},backgroundBox:function(){var e,t,i,n,o,r,a=this,s=a.axes,l=s.length;for(i=0;l>i;i++)for(o=s[i],n=0;l>n;n++)r=s[n],o.options.vertical!==r.options.vertical&&(e=o.lineBox().clone().wrap(r.lineBox()),t=t?t.wrap(e):e);return t||a.box},createVisual:function(){var e,t,i,n,o,r;Xt.fn.createVisual.call(this),e=this.backgroundBox(),t=this.options.plotArea,i=t.border||{},n=t.background,o=t.opacity,fi.isTransparent(n)&&(n=ir,o=0),r=this._bgVisual=Si.Path.fromRect(e.toRect(),{fill:{color:n,opacity:o},stroke:{color:i.width?i.color:"",width:i.width,dashType:i.dashType},zIndex:-1}),this.appendVisual(r)},pointsByCategoryIndex:function(e){var t,i,n,o,r,a=this.charts,s=[];if(null!==e)for(t=0;a.length>t;t++)if(r=a[t],"_navigator"!==r.pane.options.name&&(n=a[t].categoryPoints[e],n&&n.length))for(i=0;n.length>i;i++)o=n[i],o&&xi(o.value)&&null!==o.value&&s.push(o);return s},pointsBySeriesIndex:function(e){var t,i,n,o,r,a=this.charts,s=[];for(n=0;a.length>n;n++)for(r=a[n],t=r.points,o=0;t.length>o;o++)i=t[o],i&&i.options.index===e&&s.push(i);return s},pointsBySeriesName:function(e){var t,i,n,o,r,a=this.charts,s=[];for(n=0;a.length>n;n++)for(r=a[n],t=r.points,o=0;t.length>o;o++)i=t[o],i&&i.series.name===e&&s.push(i);return s},paneByPoint:function(e){var t,i,n=this,o=n.panes;for(i=0;o.length>i;i++)if(t=o[i],t.box.containsPoint(e))return t}}),rt=ot.extend({init:function(e,t){var i,n,o=this;if(o.namedCategoryAxes={},o.namedValueAxes={},o.valueAxisRangeTracker=new at,e.length>0)for(o.invertAxes=hi(e[0].type,[Li,Ni,Jo,Zo,go,Tn]),i=0;e.length>i;i++)if(n=e[i].stack,n&&"100%"===n.type){o.stack100=!0;break}ot.fn.init.call(o,e,t)},options:{categoryAxis:{categories:[]},valueAxis:{}},render:function(e){var t=this;e=e||t.panes,t.createCategoryAxes(e),t.aggregateCategories(e),t.createCategoryAxesLabels(e),t.createCharts(e),t.createValueAxes(e)},removeAxis:function(e){var t=this,i=e.options.name;ot.fn.removeAxis.call(t,e),e instanceof re?delete t.namedCategoryAxes[i]:(t.valueAxisRangeTracker.reset(i),delete t.namedValueAxes[i]),e===t.categoryAxis&&delete t.categoryAxis,e===t.valueAxis&&delete t.valueAxis},createCharts:function(e){var t,i,n,o,r,a,s=this.groupSeriesByPane();for(t=0;e.length>t;t++)if(i=e[t],n=s[i.options.name||"default"]||[],this.addToLegend(n),o=this.filterVisibleSeries(n))for(r=this.groupSeriesByCategoryAxis(o),a=0;r.length>a;a++)this.createChartGroup(r[a],i)},createChartGroup:function(e,t){this.createAreaChart(F(e,[Ii,Zo]),t),this.createBarChart(F(e,[Zi,Li]),t),this.createRangeBarChart(F(e,[fo,go]),t),this.createBulletChart(F(e,[Ni,$o]),t),this.createCandlestickChart(F(e,ji),t),this.createBoxPlotChart(F(e,Ui),t),this.createOHLCChart(F(e,so),t),this.createWaterfallChart(F(e,[er,Tn]),t),this.createLineChart(F(e,[Fn,Jo]),t)},aggregateCategories:function(e){var t,i,n,o,r,a=this,s=a.srcSeries||a.series,l=[];for(t=0;s.length>t;t++)i=s[t],n=a.seriesCategoryAxis(i),o=a.findPane(n.options.pane),r=T(n.options.type,on),(r||i.categoryField)&&hi(o,e)?i=a.aggregateSeries(i,n):(B(n.options.min)||B(n.options.max))&&(i=a.filterSeries(i,n)),l.push(i);a.srcSeries=s,a.series=l},filterSeries:function(e,t){var i,n=t.totalRangeIndices(),o=t.options.justified,r=hi(e.type,[Fn,Jo,Ii,Zo]);return n.min=B(t.options.min)?It.floor(n.min):0,n.max=B(t.options.max)?o?It.floor(n.max)+1:It.ceil(n.max):e.data.length,e=Ft({},e),r&&(n.min-1>=0&&(i=n.min-1,e._outOfRangeMinPoint={item:e.data[i],category:t.options.srcCategories[i],categoryIx:-1}),e.data.length>n.max&&(i=n.max,e._outOfRangeMaxPoint={item:e.data[i],category:t.options.srcCategories[i],categoryIx:n.max-n.min})),t._seriesMax=It.max(t._seriesMax||0,e.data.length),e.data=(e.data||[]).slice(n.min,n.max),e},aggregateSeries:function(e,t){var i,o,r,a,s,l,c,u=t.options,h=T(t.options.type,on),g=u.categories,f=u.srcCategories||g,m=e.data,x=[],v=Ft({},e),y=Ft({},e),b=u.dataItems||[],w=p,_=fi.MIN_NUM,A=fi.MAX_NUM,C=hi(e.type,[Fn,Jo,Ii,Zo]);for(v.data=a=[],h&&(w=d),i=0;m.length>i;i++)o=e.categoryField?w(e.categoryField,m[i]):f[i],xi(o)&&(r=t.categoryIndex(o),r>=0&&g.length>r?(x[r]=x[r]||[],x[r].push(i)):C&&(0>r?r==_?l.points.push(i):r>_&&(_=r,l={category:o,points:[i]}):r>=g.length&&(r==A?c.points.push(i):A>r&&(A=r,c={category:o,points:[i]}))));for(s=new At(y,ee.current,n.current),i=0;g.length>i;i++)a[i]=s.aggregatePoints(x[i],g[i]),x[i]&&(b[i]=a[i]);return l&&a.length&&(v._outOfRangeMinPoint={item:s.aggregatePoints(l.points,l.category),categoryIx:_,category:l.category}),c&&a.length&&(v._outOfRangeMaxPoint={item:s.aggregatePoints(c.points,c.category),categoryIx:A,category:c.category}),t.options.dataItems=b,v},appendChart:function(e,t){for(var i=this,n=e.options.series,o=i.seriesCategoryAxis(n[0]),r=o.options.categories,a=It.max(0,u(n)-r.length);a--;)r.push("");i.valueAxisRangeTracker.update(e.valueAxisRanges),ot.fn.appendChart.call(i,e,t)},seriesPaneName:function(t){var i=this,n=i.options,o=t.axis,r=[].concat(n.valueAxis),a=e.grep(r,function(e){return e.name===o})[0],s=n.panes||[{}],l=(s[0]||{}).name||"default",c=(a||{}).pane||l;return c},seriesCategoryAxis:function(e){var t=this,i=e.categoryAxis,n=i?t.namedCategoryAxes[i]:t.categoryAxis;if(!n)throw Error("Unable to locate category axis with name "+i);return n},stackableChartOptions:function(e,t){var i,n=e.stack,o=n&&"100%"===n.type;return xi(t.options.clip)?i=t.options.clip:o&&(i=!1),{isStacked:n,isStacked100:o,clip:i}},groupSeriesByCategoryAxis:function(i){function n(t,n){ return e.grep(i,function(e){return 0===n&&!e.categoryAxis||e.categoryAxis==t})}var o,r,a,s={},l=e.map(i,function(e){var i=e.categoryAxis||"$$default$$";return s.hasOwnProperty(i)?t:(s[i]=!0,i)}),c=[];for(o=0;l.length>o;o++)r=l[o],a=n(r,o),0!==a.length&&c.push(a);return c},createBarChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new xe(i,Vt({series:e,invertAxes:i.invertAxes,gap:n.gap,spacing:n.spacing},i.stackableChartOptions(n,t)));i.appendChart(o,t)}},createRangeBarChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new ye(i,{series:e,invertAxes:i.invertAxes,gap:n.gap,spacing:n.spacing});i.appendChart(o,t)}},createBulletChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new be(i,{series:e,invertAxes:i.invertAxes,gap:n.gap,spacing:n.spacing,clip:t.options.clip});i.appendChart(o,t)}},createLineChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new Ve(i,Vt({invertAxes:i.invertAxes,series:e},i.stackableChartOptions(n,t)));i.appendChart(o,t)}},createAreaChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new ze(i,Vt({invertAxes:i.invertAxes,series:e},i.stackableChartOptions(n,t)));i.appendChart(o,t)}},createOHLCChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new qe(i,{invertAxes:i.invertAxes,gap:n.gap,series:e,spacing:n.spacing,clip:t.options.clip});i.appendChart(o,t)}},createCandlestickChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new Ge(i,{invertAxes:i.invertAxes,gap:n.gap,series:e,spacing:n.spacing,clip:t.options.clip});i.appendChart(o,t)}},createBoxPlotChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new Xe(i,{invertAxes:i.invertAxes,gap:n.gap,series:e,spacing:n.spacing,clip:t.options.clip});i.appendChart(o,t)}},createWaterfallChart:function(e,t){if(0!==e.length){var i=this,n=e[0],o=new et(i,{series:e,invertAxes:i.invertAxes,gap:n.gap,spacing:n.spacing});i.appendChart(o,t)}},axisRequiresRounding:function(e,t){var i,n,o,r,a=this,s=F(a.series,pr);for(i=0;a.series.length>i;i++)o=a.series[i],(o.type===Fn||o.type===Ii)&&(r=o.line,r&&r.style===Io&&s.push(o));for(i=0;s.length>i;i++)if(n=s[i].categoryAxis||"",n===e||!n&&0===t)return!0},aggregatedAxis:function(e,t){var i,n,o=this,r=o.series;for(i=0;r.length>i;i++)if(n=r[i].categoryAxis||"",(n===e||!n&&0===t)&&r[i].categoryField)return!0},createCategoryAxesLabels:function(){var e,t=this.axes;for(e=0;t.length>e;e++)t[e]instanceof re&&t[e].createLabels()},createCategoryAxes:function(e){var t,i,n,o,r,a,s,l,c=this,u=c.invertAxes,h=[].concat(c.options.categoryAxis),p=[];for(t=0;h.length>t;t++)if(i=h[t],n=c.findPane(i.pane),hi(n,e)){if(a=i.name,o=i.categories||[],r=i.type||"",i=Ft({vertical:u,axisCrossingValue:u?Gn:0,_deferLabels:!0},i),xi(i.justified)||(i.justified=c.isJustified()),c.axisRequiresRounding(a,t)&&(i.justified=!1),s=N(i,o[0])?new ae(i):new re(i),a){if(c.namedCategoryAxes[a])throw Error("Category axis with name "+a+" is already defined");c.namedCategoryAxes[a]=s}s.axisIndex=t,p.push(s),c.appendAxis(s)}l=c.categoryAxis||p[0],c.categoryAxis=l,u?c.axisY=l:c.axisX=l},isJustified:function(){var e,t,i=this,n=i.series;for(e=0;n.length>e;e++)if(t=n[e],!hi(t.type,[Ii,Zo]))return!1;return!0},createValueAxes:function(e){var t,i,n,o,r,a,s,l,c,u=this,h=u.valueAxisRangeTracker,p=h.query(),d=[].concat(u.options.valueAxis),g=u.invertAxes,f={vertical:!g},m=[];for(u.stack100&&(f.roundToMajorUnit=!1,f.labels={format:"P0"}),c=0;d.length>c;c++)if(t=d[c],i=u.findPane(t.pane),hi(i,e)){if(l=t.name,s=T(t.type,Hn)?{min:.1,max:1}:{min:0,max:1},r=h.query(l)||p||s,0===c&&r&&p&&(r.min=It.min(r.min,p.min),r.max=It.max(r.max,p.max)),a=T(t.type,Hn)?$t:Jt,n=new a(r.min,r.max,Ft({},f,t)),l){if(u.namedValueAxes[l])throw Error("Value axis with name "+l+" is already defined");u.namedValueAxes[l]=n}n.axisIndex=c,m.push(n),u.appendAxis(n)}o=u.valueAxis||m[0],u.valueAxis=o,g?u.axisX=o:u.axisY=o},click:function(t,i){var n,o,r,a=this,s=t._eventCoordinates(i),l=new ei(s.x,s.y),c=a.pointPane(l),u=[],h=[];if(c){for(n=c.axes,o=0;n.length>o;o++)r=n[o],r.getValue?R(h,r.getValue(l)):R(u,r.getCategory(l));0===u.length&&R(u,a.categoryAxis.getCategory(l)),u.length>0&&h.length>0&&t.trigger(ho,{element:e(i.target),originalEvent:i,category:S(u),value:S(h)})}},pointPane:function(e){var t,i,n=this,o=n.panes;for(i=0;o.length>i;i++)if(t=o[i],t.contentBox.containsPoint(e))return t},updateAxisOptions:function(e,t){var i=[].concat(e instanceof re?this.options.categoryAxis:this.options.valueAxis);Ft(i[e.axisIndex],t)}}),at=Dt.extend({init:function(){var e=this;e.axisRanges={}},update:function(e){var t,i,n,o=this,r=o.axisRanges;for(n in e)t=r[n],i=e[n],r[n]=t=t||{min:Gn,max:qn},t.min=It.min(t.min,i.min),t.max=It.max(t.max,i.max)},reset:function(e){this.axisRanges[e]=t},query:function(e){return this.axisRanges[e]}}),st=ot.extend({init:function(e,t){var i=this;i.namedXAxes={},i.namedYAxes={},i.xAxisRangeTracker=new at,i.yAxisRangeTracker=new at,ot.fn.init.call(i,e,t)},options:{xAxis:{},yAxis:{}},render:function(e){var t,i,n,o,r=this,a=r.groupSeriesByPane();for(e=e||r.panes,t=0;e.length>t;t++)i=e[t],n=a[i.options.name||"default"]||[],r.addToLegend(n),o=r.filterVisibleSeries(n),o&&(r.createScatterChart(F(o,bo),i),r.createScatterLineChart(F(o,wo),i),r.createBubbleChart(F(o,Hi),i));r.createAxes(e)},appendChart:function(e,t){var i=this;i.xAxisRangeTracker.update(e.xAxisRanges),i.yAxisRangeTracker.update(e.yAxisRanges),ot.fn.appendChart.call(i,e,t)},removeAxis:function(e){var t=this,i=e.options.name;ot.fn.removeAxis.call(t,e),e.options.vertical?(t.yAxisRangeTracker.reset(i),delete t.namedYAxes[i]):(t.xAxisRangeTracker.reset(i),delete t.namedXAxes[i]),e===t.axisX&&delete t.axisX,e===t.axisY&&delete t.axisY},seriesPaneName:function(t){var i=this,n=i.options,o=t.xAxis,r=[].concat(n.xAxis),a=e.grep(r,function(e){return e.name===o})[0],s=t.yAxis,l=[].concat(n.yAxis),c=e.grep(l,function(e){return e.name===s})[0],u=n.panes||[{}],h=u[0].name||"default",p=(a||{}).pane||(c||{}).pane||h;return p},createScatterChart:function(e,t){var i=this;e.length>0&&i.appendChart(new Ue(i,{series:e,clip:t.options.clip}),t)},createScatterLineChart:function(e,t){var i=this;e.length>0&&i.appendChart(new He(i,{series:e,clip:t.options.clip}),t)},createBubbleChart:function(e,t){var i=this;e.length>0&&i.appendChart(new Ne(i,{series:e,clip:t.options.clip}),t)},createXYAxis:function(e,t,i){var n,o,r,a,s,l,c,u,h=this,p=e.name,d=t?h.namedYAxes:h.namedXAxes,g=t?h.yAxisRangeTracker:h.xAxisRangeTracker,f=Ft({},e,{vertical:t}),m=T(f.type,Hn),x=g.query(),v=m?{min:.1,max:1}:{min:0,max:1},y=g.query(p)||x||v,b=h.series,w=[f.min,f.max];for(r=0;b.length>r;r++)if(a=b[r],s=a[t?"yAxis":"xAxis"],s==f.name||0===i&&!s){l=ee.current.bindPoint(a,0).valueFields,w.push(l[t?"y":"x"]);break}for(0===i&&x&&(y.min=It.min(y.min,x.min),y.max=It.max(y.max,x.max)),u=0;w.length>u;u++)if(w[u]instanceof Date){c=!0;break}if(o=T(f.type,on)||!f.type&&c?se:m?$t:Jt,n=new o(y.min,y.max,f),p){if(d[p])throw Error((t?"Y":"X")+" axis with name "+p+" is already defined");d[p]=n}return h.appendAxis(n),n},createAxes:function(e){var t,i=this,n=i.options,o=[].concat(n.xAxis),r=[],a=[].concat(n.yAxis),s=[];kt(o,function(n){t=i.findPane(this.pane),hi(t,e)&&r.push(i.createXYAxis(this,!1,n))}),kt(a,function(n){t=i.findPane(this.pane),hi(t,e)&&s.push(i.createXYAxis(this,!0,n))}),i.axisX=i.axisX||r[0],i.axisY=i.axisY||s[0]},click:function(t,i){var n,o,r,a,s=this,l=t._eventCoordinates(i),c=new ei(l.x,l.y),u=s.axes,h=u.length,p=[],d=[];for(n=0;h>n;n++)o=u[n],a=o.options.vertical?d:p,r=o.getValue(c),null!==r&&a.push(r);p.length>0&&d.length>0&&t.trigger(ho,{element:e(i.target),originalEvent:i,x:S(p),y:S(d)})},updateAxisOptions:function(e,t){var i=e.options.vertical,n=M(e,[].concat(i?this.axisY:this.axisX)),o=[].concat(i?this.options.yAxis:this.options.xAxis)[n];Ft(o,t)}}),lt=ot.extend({render:function(){var e=this,t=e.series;e.createPieChart(t)},createPieChart:function(e){var t=this,i=e[0],n=new Ze(t,{series:e,padding:i.padding,startAngle:i.startAngle,connectors:i.connectors,legend:t.options.legend});t.appendChart(n)},appendChart:function(e,t){ot.fn.appendChart.call(this,e,t),mi(this.options.legend.items,e.legendItems)}}),ct=lt.extend({render:function(){var e=this,t=e.series;e.createDonutChart(t)},createDonutChart:function(e){var t=this,i=e[0],n=new Je(t,{series:e,padding:i.padding,connectors:i.connectors,legend:t.options.legend});t.appendChart(n)}}),ut=Si.Animation.extend({options:{easing:"easeOutElastic",duration:Rn},setup:function(){this.element.transform(ki.transform().scale(To,To,this.options.center))},step:function(e){this.element.transform(ki.transform().scale(e,e,this.options.center))}}),Si.AnimationFactory.current.register(co,ut),ht=Si.Animation.extend({options:{easing:"easeOutElastic"},setup:function(){var e=this.center=this.element.bbox().center();this.element.transform(ki.transform().scale(To,To,e))},step:function(e){this.element.transform(ki.transform().scale(e,e,this.center))}}),Si.AnimationFactory.current.register(Hi,ht),pt=Dt.extend({init:function(){this._points=[]},destroy:function(){this._points=[]},show:function(e){var t,i;for(e=[].concat(e),this.hide(),t=0;e.length>t;t++)i=e[t],i&&i.toggleHighlight&&i.hasHighlight()&&(this.togglePointHighlight(i,!0),this._points.push(i))},togglePointHighlight:function(e,t){var i,n=(e.options.highlight||{}).toggle;n?(i={category:e.category,series:e.series,dataItem:e.dataItem,value:e.value,preventDefault:W,visual:e.highlightVisual(),show:t},n(i),i._defaultPrevented||e.toggleHighlight(t)):e.toggleHighlight(t)},hide:function(){for(var e=this._points;e.length;)this.togglePointHighlight(e.pop(),!1)},isHighlighted:function(e){var t,i,n=this._points;for(t=0;n.length>t;t++)if(i=n[t],e==i)return!0;return!1}}),dt=Et.extend({init:function(t,i){var n,o,r=this;Et.fn.init.call(r),r.options=Ft({},r.options,i),r.chartElement=t,r.template=dt.template,r.template||(r.template=dt.template=Ai("")),n=ui(r.options.padding||{},"auto"),r.element=e(r.template(r.options)).css({"padding-top":n.top,"padding-right":n.right,"padding-bottom":n.bottom,"padding-left":n.left}),r.move=Bt(r.move,r),r._mouseleave=Bt(r._mouseleave,r),o=Lt.format("[{0}='content'],[{0}='scroller']",Lt.attr("role")),r._mobileScroller=t.closest(o).data("kendoMobileScroller")},destroy:function(){this._clearShowTimeout(),this.element&&(this.element.off(Kn).remove(),this.element=null)},options:{border:{width:1},opacity:1,animation:{duration:Yo}},move:function(){var e,t=this,i=t.options,n=t.element;t.anchor&&t.element&&(e=t._offset(),t.visible||n.css({top:e.top,left:e.left}),t.visible=!0,t._ensureElement(document.body),n.stop(!0,!0).show().animate({left:e.left,top:e.top},i.animation.duration))},_clearShowTimeout:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)},_padding:function(){if(!this._chartPadding){var e=this.chartElement;this._chartPadding={top:parseInt(e.css("paddingTop"),10),left:parseInt(e.css("paddingLeft"),10)}}return this._chartPadding},_offset:function(){var t,i,n=this,o=n._measure(),r=n.anchor,a=n._padding(),s=n.chartElement.offset(),l=gi(r.y+a.top+s.top),c=gi(r.x+a.left+s.left),u=Lt.support.zoomLevel(),h=e(window),p=window.pageYOffset||document.documentElement.scrollTop||0,d=window.pageXOffset||document.documentElement.scrollLeft||0,g=(this._mobileScroller||{}).movable;return g&&1!==g.scale?(t=ki.transform().scale(g.scale,g.scale,[g.x,g.y]),i=new ki.Point(c,l).transform(t),c=i.x,l=i.y):(l+=n._fit(l-p,o.height,h.outerHeight()/u),c+=n._fit(c-d,o.width,h.outerWidth()/u)),{top:l,left:c}},setStyle:function(e,t){var i,n,o=e.background,r=e.border.color;t&&(i=t.color||t.options.color,o=Ci(o,i),r=Ci(r,i)),xi(e.color)||(n=new Wt(o).percBrightness(),this.element.toggleClass(en+Ko,n>180)),this.element.css({backgroundColor:o,borderColor:r,font:e.font,color:e.color,opacity:e.opacity,borderWidth:e.border.width})},show:function(){this._clearShowTimeout(),this.showTimeout=setTimeout(this.move,Xo)},hide:function(){var e=this;clearTimeout(e.showTimeout),e._hideElement(),e.visible&&(e.point=null,e.visible=!1,e.index=null)},_measure:function(){this._ensureElement();var e={width:this.element.outerWidth(),height:this.element.outerHeight()};return e},_ensureElement:function(){this.element&&this.element.appendTo(document.body).on(Kn,this._mouseleave)},_mouseleave:function(t){var i=t.relatedTarget,n=this.chartElement[0];i&&i!==n&&!e.contains(n,i)&&(this.trigger(Dn),this.hide())},_hideElement:function(){var e=this,t=this.element;t&&t.fadeOut({always:function(){e.visible||t.off(Kn).remove()}})},_pointContent:function(e){var t,i,n=this,o=Ft({},n.options,e.options.tooltip);return xi(e.value)&&(t=""+e.value),o.template?(i=Ht(o.template),t=i({value:e.value,category:e.category,series:e.series,dataItem:e.dataItem,percentage:e.percentage,runningTotal:e.runningTotal,total:e.total,low:e.low,high:e.high,xLow:e.xLow,xHigh:e.xHigh,yLow:e.yLow,yHigh:e.yHigh})):o.format&&(t=e.formatValue(o.format)),t},_pointAnchor:function(e){var t=this._measure();return e.tooltipAnchor(t.width,t.height)},_fit:function(e,t,i){var n=0;return e+t>i&&(n=i-(e+t)),0>e&&(n=-e),n}}),gt=dt.extend({show:function(e){var t=this,i=Ft({},t.options,e.options.tooltip);e&&e.tooltipAnchor&&t.element&&(t.element.html(t._pointContent(e)),t.anchor=t._pointAnchor(e),t.anchor?(t.setStyle(i,e),dt.fn.show.call(t,e)):t.hide())}}),ft=dt.extend({init:function(e,t,i){var n=this;dt.fn.init.call(n,e,i),n.plotArea=t},options:{sharedTemplate:"# for(var i = 0; i < points.length; i++) { ## var point = points[i]; ## if(point.series.name) { # # } ## } #
#= categoryText #
#= point.series.name #:#= content(point) #
",categoryFormat:"{0:d}"},showAt:function(t,i){var n,o=this,r=o.options,a=o.plotArea,s=a.categoryAxis,l=s.pointCategoryIndex(i),c=s.getCategory(i),u=s.getSlot(l);t=e.grep(t,function(e){var t=e.series.tooltip,i=t&&t.visible===!1;return!i}),t.length>0&&(n=o._content(t,c),o.element.html(n),o.anchor=o._slotAnchor(i,u),o.setStyle(r,t[0]),dt.fn.show.call(o))},_slotAnchor:function(e,t){var i,n=this,o=n.plotArea,r=o.categoryAxis,a=this._measure(),s=e.y-a.height/2;return i=r.options.vertical?ei(e.x,s):ei(t.center().x,s)},_content:function(e,t){var i,n,o=this;return i=Lt.template(o.options.sharedTemplate),n=i({points:e,category:t,categoryText:li(o.options.categoryFormat,t),content:o._pointContent})}}),mt=Xt.extend({init:function(e,t){Xt.fn.init.call(this,t),this.axis=e,this.stickyMode=e instanceof re},options:{color:zi,width:1,zIndex:-1,tooltip:{visible:!1}},showAt:function(e){this.point=e,this.moveLine(),this.line.visible(!0);var t=this.options.tooltip;t.visible&&(this.tooltip||(this.tooltip=new xt(this,Ft({},t,{stickyMode:this.stickyMode}))),this.tooltip.showAt(e))},hide:function(){this.line.visible(!1),this.tooltip&&this.tooltip.hide()},moveLine:function(){var e,t,i,n=this,o=n.axis,r=o.options.vertical,a=n.getBox(),s=n.point,l=r?or:nr;t=new ki.Point(a.x1,a.y1),i=r?new ki.Point(a.x2,a.y1):new ki.Point(a.x1,a.y2),s&&(n.stickyMode?(e=o.getSlot(o.pointCategoryIndex(s)),t[l]=i[l]=e.center()[l]):t[l]=i[l]=s[l]),n.box=a,this.line.moveTo(t).lineTo(i)},getBox:function(){var e,t,i,n=this,o=n.axis,r=o.pane.axes,a=r.length,s=o.options.vertical,l=o.lineBox().clone(),c=s?nr:or;for(i=0;a>i;i++)t=r[i],t.options.vertical!=s&&(e?e.wrap(t.lineBox()):e=t.lineBox().clone());return l[c+1]=e[c+1],l[c+2]=e[c+2],l},createVisual:function(){Xt.fn.createVisual.call(this);var e=this.options;this.line=new Si.Path({stroke:{color:e.color,width:e.width,opacity:e.opacity,dashType:e.dashType},visible:!1}),this.moveLine(),this.visual.append(this.line)},destroy:function(){var e=this;e.tooltip&&e.tooltip.destroy(),Xt.fn.destroy.call(e)}}),xt=dt.extend({init:function(e,t){var i=this,n=e.axis.getRoot().chart.element;i.crosshair=e,dt.fn.init.call(i,n,Ft({},i.options,{background:e.axis.plotArea.options.seriesColors[0]},t)),i.setStyle(i.options)},options:{padding:10},showAt:function(e){var t=this,i=t.element;i&&(t.point=e,t.element.html(t.content(e)),t.anchor=t.getAnchor(),t.move())},move:function(){var e=this,t=e.element,i=e._offset();e._ensureElement(),t.css({top:i.top,left:i.left}).show()},content:function(e){var t,i,n,o=this,r=o.options,a=o.crosshair.axis,s=a.options;return i=t=a[r.stickyMode?"getCategory":"getValue"](e),r.template?(n=Ht(r.template),t=n({value:i})):r.format?t=li(r.format,i):s.type===on&&(t=li(s.labels.dateFormats[s.baseUnit],i)),t},getAnchor:function(){var e,t=this,i=t.options,n=i.position,o=this.crosshair,r=!o.axis.options.vertical,a=o.line.bbox(),s=this._measure(),l=s.width/2,c=s.height/2,u=i.padding;return e=r?n===Mi?a.bottomLeft().translate(-l,u):a.topLeft().translate(-l,-s.height-u):n===En?a.topLeft().translate(-s.width-u,-c):a.topRight().translate(u,-c)},hide:function(){this.element.hide(),this.point=null},destroy:function(){dt.fn.destroy.call(this),this.point=null}}),vt={min:function(e){var t,i,n=Gn,o=e.length;for(t=0;o>t;t++)i=e[t],B(i)&&(n=It.min(n,i));return n===Gn?e[0]:n},max:function(e){var t,i,n=qn,o=e.length;for(t=0;o>t;t++)i=e[t],B(i)&&(n=It.max(n,i));return n===qn?e[0]:n},sum:function(e){var t,i,n=e.length,o=0;for(t=0;n>t;t++)i=e[t],B(i)&&(o+=i);return o},sumOrNull:function(e){var t=null;return L(e)&&(t=vt.sum(e)),t},count:function(e){var t,i,n=e.length,o=0;for(t=0;n>t;t++)i=e[t],null!==i&&xi(i)&&o++;return o},avg:function(e){var t=e[0],i=L(e);return i>0&&(t=vt.sum(e)/i),t},first:function(e){var t,i,n=e.length;for(t=0;n>t;t++)if(i=e[t],null!==i&&xi(i))return i;return e[0]}},n.prototype={register:function(e,t){for(var i=0;e.length>i;i++)this._defaults[e[i]]=t},query:function(e){return this._defaults[e]}},n.current=new n,yt=Et.extend({init:function(t,i,n){var o,r,a=this,s=t.element,l=i.lineBox(),c=a.getValueAxis(i),u=c.lineBox(),h="."+en;Et.fn.init.call(a),a.options=Ft({},a.options,n),n=a.options,a.chart=t,a.chartElement=s,a.categoryAxis=i,a._dateAxis=a.categoryAxis instanceof ae,a.valueAxis=c,a._dateAxis&&Ft(n,{min:g(n.min),max:g(n.max),from:g(n.from),to:g(n.to)}),a.template=yt.template,a.template||(a.template=yt.template=Ai("
")),r={left:parseInt(s.css("paddingLeft"),10),right:parseInt(s.css("paddingTop"),10)},a.options=Ft({},{width:l.width(),height:u.height(),padding:r,offset:{left:u.x2+r.left,top:u.y1+r.right},from:n.min,to:n.max},n),a.options.visible&&(a.wrapper=o=e(a.template(a.options)).appendTo(s),a.selection=o.find(h+"selection"),a.leftMask=o.find(h+"mask").first(),a.rightMask=o.find(h+"mask").last(),a.leftHandle=o.find(h+"leftHandle"),a.rightHandle=o.find(h+"rightHandle"),a.options.selection={border:{left:parseFloat(a.selection.css("border-left-width"),10),right:parseFloat(a.selection.css("border-right-width"),10)}},a.leftHandle.css("top",(a.selection.height()-a.leftHandle.height())/2),a.rightHandle.css("top",(a.selection.height()-a.rightHandle.height())/2),a.set(a._index(n.from),a._index(n.to)),a.bind(a.events,a.options),a.wrapper[0].style.cssText=a.wrapper[0].style.cssText,a.wrapper.on(io,Bt(a._mousewheel,a)),Lt.UserEvents?a.userEvents=new Lt.UserEvents(a.wrapper,{global:!0,stopPropagation:!0,multiTouch:!0,fastTap:!0,start:Bt(a._start,a),move:Bt(a._move,a),end:Bt(a._end,a),tap:Bt(a._tap,a),gesturestart:Bt(a._gesturechange,a),gesturechange:Bt(a._gesturechange,a)}):a.leftHandle.add(a.rightHandle).removeClass(en+"handle"))},events:[Ao,Co,ko],options:{visible:!0,mousewheel:{zoom:Fi},min:qn,max:Gn},destroy:function(){var e=this,t=e.userEvents;t&&t.destroy(),clearTimeout(e._mwTimeout),e._state=null,e.wrapper.remove()},_rangeEventArgs:function(e){var t=this;return{axis:t.categoryAxis.options,from:t._value(e.from),to:t._value(e.to)}},_start:function(t){var i,n=this,o=n.options,r=e(t.event.target);!n._state&&r&&(n.chart._unsetActivePoint(),n._state={moveTarget:r.parents(".k-handle").add(r).first(),startLocation:t.x?t.x.location:0,range:{from:n._index(o.from),to:n._index(o.to)}},i=n._rangeEventArgs({from:n._index(o.from),to:n._index(o.to)}),n.trigger(Ao,i)&&(n.userEvents.cancel(),n._state=null))},_move:function(e){if(this._state){var t=this,i=t._state,n=t.options,o=t.categoryAxis.options.categories,r=t._index(n.from),a=t._index(n.to),s=t._index(n.min),l=t._index(n.max),c=i.startLocation-e.x.location,u=i.range,h={from:u.from,to:u.to},p=u.to-u.from,d=i.moveTarget,g=t.wrapper.width()/(o.length-1),f=It.round(c/g);d&&(e.preventDefault(),d.is(".k-selection, .k-selection-bg")?(u.from=It.min(It.max(s,r-f),l-p),u.to=It.min(u.from+p,l)):d.is(".k-leftHandle")?(u.from=It.min(It.max(s,r-f),l-1),u.to=It.max(u.from+1,u.to)):d.is(".k-rightHandle")&&(u.to=It.min(It.max(s+1,a-f),l),u.from=It.min(u.to-1,u.from)),(u.from!==h.from||u.to!==h.to)&&(t.move(u.from,u.to),t.trigger(Co,t._rangeEventArgs(u))))}},_end:function(){var e=this,t=e._state.range;delete e._state,e.set(t.from,t.to),e.trigger(ko,e._rangeEventArgs(t))},_gesturechange:function(e){if(this._state){var t=this,i=t.chart,n=t._state,o=t.options,r=t.categoryAxis,a=n.range,s=i._toModelCoordinates(e.touches[0].x.location).x,l=i._toModelCoordinates(e.touches[1].x.location).x,c=It.min(s,l),u=It.max(s,l);e.preventDefault(),n.moveTarget=null,a.from=r.pointCategoryIndex(new Nt.Point2D(c))||o.min,a.to=r.pointCategoryIndex(new Nt.Point2D(u))||o.max,t.move(a.from,a.to)}},_tap:function(e){var t=this,i=t.options,n=t.chart._eventCoordinates(e),o=t.categoryAxis,r=o.pointCategoryIndex(new Nt.Point2D(n.x,o.box.y1)),a=t._index(i.from),s=t._index(i.to),l=t._index(i.min),c=t._index(i.max),u=s-a,h=a+u/2,p=It.round(h-r),d={},g=3===e.event.which;t._state||g||(e.preventDefault(),t.chart._unsetActivePoint(),o.options.justified||p--,d.from=It.min(It.max(l,a-p),c-u),d.to=It.min(d.from+u,c),t._start(e),t._state&&(t._state.range=d,t.trigger(Co,t._rangeEventArgs(d)),t._end()))},_mousewheel:function(e){var t,i=this,n=i.options,o=di(e);i._start({event:{target:i.selection}}),i._state&&(t=i._state.range,e.preventDefault(),e.stopPropagation(),It.abs(o)>1&&(o*=sr),n.mousewheel.reverse&&(o*=-1),i.expand(o)&&i.trigger(Co,{axis:i.categoryAxis.options,delta:o,originalEvent:e,from:i._value(t.from),to:i._value(t.to)}),i._mwTimeout&&clearTimeout(i._mwTimeout),i._mwTimeout=setTimeout(function(){i._end()},to))},_index:function(e){var t=this,i=t.categoryAxis,n=i.options.categories,o=e;return e instanceof Date&&(o=V(e,n),!i.options.justified&&e>vi(n)&&(o+=1)),o},_value:function(e){var t=this,i=this.categoryAxis,n=i.options.categories,o=e;return t._dateAxis&&(o=e>n.length-1?t.options.max:n[e]),o},_slot:function(e){var t=this,i=this.categoryAxis;return i.getSlot(t._index(e))},move:function(e,t){var i,n,o,r,a=this,s=a.options,l=s.offset,c=s.padding,u=s.selection.border;o=a._slot(e),i=gi(o.x1-l.left+c.left),a.leftMask.width(i),a.selection.css("left",i),o=a._slot(t),n=gi(s.width-(o.x1-l.left+c.left)),a.rightMask.width(n),r=s.width-n,r!=s.width&&(r+=u.right),a.rightMask.css("left",r),a.selection.width(It.max(s.width-(i+n)-u.right,0))},set:function(e,t){var i=this,n=i.options,o=i._index(n.min),r=i._index(n.max);e=yi(i._index(e),o,r),t=yi(i._index(t),e+1,r),n.visible&&i.move(e,t),n.from=i._value(e),n.to=i._value(t)},expand:function(e){var i=this,n=i.options,o=i._index(n.min),r=i._index(n.max),a=n.mousewheel.zoom,s=i._index(n.from),l=i._index(n.to),c={from:s,to:l},u=Ft({},c);return i._state&&(c=i._state.range),a!==xo&&(c.from=yi(yi(s-e,0,l-1),o,r)),a!==En&&(c.to=yi(yi(l+e,c.from+1,r),o,r)),c.from!==u.from||c.to!==u.to?(i.set(c.from,c.to),!0):t},getValueAxis:function(e){var t,i,n=e.pane.axes,o=n.length;for(t=0;o>t;t++)if(i=n[t],i.options.vertical!==e.options.vertical)return i}}),bt=Dt.extend({init:function(e,t){this.plotArea=e,this.options=Ft({},this.options,t)},options:{key:"none",lock:"none"},start:function(e){this._active=$(e.event,this.options.key)},move:function(e){if(this._active){var t=this.axisRanges=this._panAxes(e,nr).concat(this._panAxes(e,or));if(t.length)return this.axisRanges=t,Z(t)}},end:function(){this._active=!1},pan:function(){var e,t,i=this.plotArea,n=this.axisRanges;if(n.length){for(t=0;n.length>t;t++)e=n[t],i.updateAxisOptions(e.axis,e.range);i.redraw(i.panes)}},_panAxes:function(e,t){var i,n,o,r,a=this.plotArea,s=-e[t].delta,l=(this.options.lock||"").toLowerCase(),c=[];if(0!==s&&(l||"").toLowerCase()!=t)for(i=a.axes,r=0;i.length>r;r++)n=i[r],(t==nr&&!n.options.vertical||t==or&&n.options.vertical)&&(o=n.pan(s),o&&(o.limitRange=!0,c.push({axis:n,range:o})));return c}}),wt=Dt.extend({init:function(t,i){this.chart=t,this.options=Ft({},this.options,i),this._marquee=e("
")},options:{key:"shift",lock:"none"},start:function(e){var t,i,n,o,r;$(e.event,this.options.key)&&(t=this.chart,i=t._toModelCoordinates(e.x.client,e.y.client),n=this._zoomPane=t._plotArea.paneByPoint(i),n&&(o=n.clipBox().clone(),r=this._elementOffset(),o.translate(r.left,r.top),this._zoomPaneClipBox=o,this._marquee.appendTo(document.body).css({left:e.x.client+1,top:e.y.client+1,width:0,height:0})))},_elementOffset:function(){var e=this.chart.element,t=e.offset();return{left:parseInt(e.css("paddingTop"),10)+t.left,top:parseInt(e.css("paddingLeft"),10)+t.top}},move:function(e){var t,i=this._zoomPane;i&&(t=this._selectionPosition(e),this._marquee.css(t))},end:function(e){var i,n,o,r,a=this._zoomPane;return a?(i=this._elementOffset(),n=this._selectionPosition(e),n.left-=i.left,n.top-=i.top,o={x:n.left,y:n.top},r={x:n.left+n.width,y:n.top+n.height},this._updateAxisRanges(o,r),this._marquee.remove(),delete this._zoomPane,Z(this.axisRanges)):t},zoom:function(){var e,t,i,n=this.axisRanges;if(n&&n.length){for(e=this.chart._plotArea,i=0;n.length>i;i++)t=n[i],e.updateAxisOptions(t.axis,t.range);e.redraw(e.panes)}},destroy:function(){this._marquee.remove(),delete this._marquee},_updateAxisRanges:function(e,t){var i,n,o,r,a=(this.options.lock||"").toLowerCase(),s=[],l=this._zoomPane.axes;for(o=0;l.length>o;o++)i=l[o],n=i.options.vertical,a==nr&&!n||a===or&&n||(r=i.pointsRange(e,t),s.push({axis:i,range:r}));this.axisRanges=s},_selectionPosition:function(e){var t=(this.options.lock||"").toLowerCase(),i=It.min(e.x.startLocation,e.x.location),n=It.min(e.y.startLocation,e.y.location),o=It.abs(e.x.initialDelta),r=It.abs(e.y.initialDelta),a=this._zoomPaneClipBox;return t==nr&&(i=a.x1,o=a.width()),t==or&&(n=a.y1,r=a.height()),e.x.location>a.x2&&(o=a.x2-e.x.startLocation),a.x1>e.x.location&&(o=e.x.startLocation-a.x1),e.y.location>a.y2&&(r=a.y2-e.y.startLocation),a.y1>e.y.location&&(r=e.y.startLocation-a.y1),{left:It.max(i,a.x1),top:It.max(n,a.y1),width:o,height:r}}}),_t=Dt.extend({init:function(e,t){this.chart=e,this.options=Ft({},this.options,t)},updateRanges:function(e){var t,i,n,o,r=(this.options.lock||"").toLowerCase(),a=[],s=this.chart._plotArea.axes;for(n=0;s.length>n;n++)t=s[n],i=t.options.vertical,r==nr&&!i||r===or&&i||(o=t.zoomRange(-e),o&&a.push({axis:t,range:o}));return this.axisRanges=a,Z(a)},zoom:function(){var e,t,i,n=this.axisRanges;if(n&&n.length){for(e=this.chart._plotArea,i=0;n.length>i;i++)t=n[i],e.updateAxisOptions(t.axis,t.range);e.redraw(e.panes)}}}),At=function(e,t,i){var n,o,r,a=this,s=t.canonicalFields(e),l=t.valueFields(e),c=t.sourceFields(e,s),u=a._seriesFields=[],h=i.query(e.type),p=e.aggregate||h;for(a._series=e,a._binder=t,n=0;s.length>n;n++){if(o=s[n],typeof p===ao)r=p[o];else{if(0!==n&&!hi(o,l))break;r=p}r&&u.push({canonicalName:o,name:c[n],transform:Ut(r)?r:vt[r]})}},At.prototype={aggregatePoints:function(e,t){var i,n,o,r,a,s=this,l=s._bindPoints(e||[]),c=s._series,u=s._seriesFields,h=l.dataItems[0],p={};for(!h||B(h)||St(h)||(a=function(){},a.prototype=h,p=new a),i=0;u.length>i;i++){if(n=u[i],o=s._bindField(l.values,n.canonicalName),r=n.transform(o,c,l.dataItems,t),!(null===r||typeof r!==ao||xi(r.length)||r instanceof Date)){p=r;break}xi(r)&&(G(n.name,p),Lt.setter(n.name)(p,r))}return p},_bindPoints:function(e){var t,i,n=this,o=n._binder,r=n._series,a=[],s=[];for(t=0;e.length>t;t++)i=e[t],a.push(o.bindPoint(r,i)),s.push(r.data[i]);return{values:a,dataItems:s}},_bindField:function(e,t){var i,n,o,r,a=[],s=e.length;for(i=0;s>i;i++)n=e[i],r=n.valueFields,o=xi(r[t])?r[t]:n.fields[t],a.push(o);return a}},Ct=Dt.extend({init:function(e){this._axis=e},slot:function(e,t){return this._axis.slot(e,t)},range:function(){return this._axis.range()}}),Vt(e.easing,{easeOutElastic:function(e,t,i,n){var o=1.70158,r=0,a=n;return 0===e?i:1===e?i+n:(r||(r=.5),a