Files
jube-fork/Jube.App/wwwroot/kendo/js/kendo.dataviz.chart.min.js
2022-11-04 13:24:24 +02:00

33 lines
196 KiB
JavaScript
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* Kendo UI v2021.1.224 (http://www.telerik.com/kendo-ui)
* Copyright 2021 Progress Software Corporation and/or one of its subsidiaries or affiliates. 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(t,define){define("util/text-metrics.min",["kendo.core.min"],t)}(function(){!function(t){function e(t){return(t+"").replace(a,h)}function i(t){var e,i=[];for(e in t)i.push(e+t[e]);return i.sort().join("")}function n(t){var e,i=2166136261;for(e=0;e<t.length;++e)i+=(i<<1)+(i<<4)+(i<<7)+(i<<8)+(i<<24),i^=t.charCodeAt(e);return i>>>0}function s(){return{width:0,height:0,baseline:0}}function o(t,e,i){return u.current.measure(t,e,i)}var r,a,h,l,c,u;window.kendo.util=window.kendo.util||{},r=kendo.Class.extend({init:function(t){this._size=t,this._length=0,this._map={}},put:function(t,e){var i=this._map,n={key:t,value:e};i[t]=n,this._head?(this._tail.newer=n,n.older=this._tail,this._tail=n):this._head=this._tail=n,this._length>=this._size?(i[this._head.key]=null,this._head=this._head.newer,this._head.older=null):this._length++},get:function(t){var e=this._map[t];if(e)return e===this._head&&e!==this._tail&&(this._head=e.newer,this._head.older=null),e!==this._tail&&(e.older&&(e.older.newer=e.newer,e.newer.older=e.older),e.older=this._tail,e.newer=null,this._tail.newer=e,this._tail=e),e.value}}),a=/\r?\n|\r|\t/g,h=" ",l={baselineMarkerSize:1},"undefined"!=typeof document&&(c=document.createElement("div"),c.style.cssText="position: absolute !important; top: -4000px !important; width: auto !important; height: auto !important;padding: 0 !important; margin: 0 !important; border: 0 !important;line-height: normal !important; visibility: hidden !important; white-space: pre!important;"),u=kendo.Class.extend({init:function(e){this._cache=new r(1e3),this.options=t.extend({},l,e)},measure:function(t,o,r){var a,h,l,u,p,d,g,f,v;if(void 0===r&&(r={}),!t)return s();if(a=i(o),h=n(t+a),l=this._cache.get(h))return l;u=s(),p=r.box||c,d=this._baselineMarker().cloneNode(!1);for(g in o)f=o[g],void 0!==f&&(p.style[g]=f);return v=r.normalizeText!==!1?e(t):t+"",p.textContent=v,p.appendChild(d),document.body.appendChild(p),v.length&&(u.width=p.offsetWidth-this.options.baselineMarkerSize,u.height=p.offsetHeight,u.baseline=d.offsetTop+this.options.baselineMarkerSize),u.width>0&&u.height>0&&this._cache.put(h,u),p.parentNode.removeChild(p),u},_baselineMarker:function(){var t=document.createElement("div");return t.style.cssText="display: inline-block; vertical-align: baseline;width: "+this.options.baselineMarkerSize+"px; height: "+this.options.baselineMarkerSize+"px;overflow: hidden;",t}}),u.current=new u,kendo.deepExtend(kendo.util,{LRUCache:r,TextMetrics:u,measureText:o,objectKey:i,hashKey:n,normalizeText:e})}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("dataviz/chart/kendo-chart.min",["kendo.core.min","kendo.color.min","kendo.drawing.min","kendo.dataviz.core.min"],t)}(function(){!function(t){function e(t,e){for(var i=0;i<e.length;i++)if(e[i].options.name===t)return e[i].prepareUserOptions(),new ue(e[i])}function i(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],nt(i)&&s++;return s}function n(t,e){if(null===e)return e;var i=bt(t,!0);return i(e)}function s(t,e,i,n){var o,r,a,h,l;if(void 0===i&&(i={}),void 0===n&&(n=!1),o=i.defaults=i.defaults||{},r=i.depth=i.depth||0,a=!1,i.excluded=i.excluded||[],r>Ji)return null;for(h in t)!Et(h,i.excluded)&&t.hasOwnProperty(h)&&(l=t[h],It(l)?(a=!0,n||(t[h]=Rt(l(e),o[h]))):Vt(l)&&(n||(i.defaults=o[h]),i.depth++,a=s(l,e,i,n)||a,i.depth--));return a}function o(t){var e,i=t.length,n=0;for(e=0;e<i;e++)n=Math.max(n,t[e].data.length);return n}function r(t,e,i,n,s){var o=t.box,r=new le;return r[e]=o[e+i],r[n]=o[n+s],r}function a(t){for(var e=0;e<t.length;e++)if(wt(t[e].zIndex))return!0}function h(t){var e=t.overlay;return e&&e.gradient&&"none"!==e.gradient}function l(t,e){t.forEach(e)}function c(t,e){var i,n=t.length;for(i=n-1;i>=0;i--)e(t[i],i-n-1)}function u(t){return i(t)===t.length}function p(t){return wt(t)&&null!==t}function d(t){var e,i,n,s=t.series;for(e=0;e<s.length;e++)i=s[e],n=i.data,!n||At(n[0])||Vt(n[0])||(i.data=[n])}function g(){return"pane"+Nn++}function f(t,e){null!==e&&t.push(e)}function v(t,e,i){var n,s=e.visible;return wt(s)?s:(n=t.pointVisibility,n?n[i]:void 0)}function x(t){var e,i,n,s=t.data,o=[],r=0,a=0;for(e=0;e<s.length;e++)i=fe.current.bindPoint(t,e),n=i.valueFields.value,Gt(n)&&(n=parseFloat(n)),nt(n)?(i.visible=v(t,i.fields,e)!==!1,i.value=Math.abs(n),o.push(i),i.visible&&(r+=i.value),0!==n&&a++):o.push(null);return{total:r,points:o,count:a}}function m(t,e){return t&&e?t.toLowerCase()===e.toLowerCase():t===e}function y(t,e){var i,n,s=[],o=[].concat(e);for(i=0;i<t.length;i++)n=t[i],Et(n.type,o)&&s.push(n);return s}function _(t,e,i){var n,s;return null===e?e:(n="_date_"+t,s=e[n],s||(s=qt(i,bt(t,!0)(e)),e[n]=s),s)}function w(t,e){var i=t.type,n=e instanceof Date;return!i&&n||m(i,mt)}function b(t){return 1===t.length?t[0]:t}function A(t){return t.missingValues?t.missingValues:Gn.test(t.type)||t.stack?Me:Be}function S(t,e){var i,n=fe.current.bindPoint(t,null,e),s=n.valueFields;for(i in s)if(et.convertableToNumber(s[i]))return!0}function C(t){var e,i,n=t.start,s=t.dir,o=t.min,r=t.max,a=t.getter,h=t.hasItem,l=t.series,c=n;do c+=s,h(c)&&(i=a(c),e=S(l,i.item));while(o<=c&&c<=r&&!e);if(e)return i}function k(t,e,i,n,s){var o,r,a,h,l,c=e.min,u=e.max,p=c>0&&c<i,d=u+1<i;(p||d)&&(o=A(t),o!==Be?(p&&(r=n(c-1)),d&&(a=n(u+1))):(p&&(h=n(c-1),l=S(t,h.item),r=l?h:C({start:c,dir:-1,min:0,max:i-1,getter:n,hasItem:s,series:t})),d&&(h=n(u+1),l=S(t,h.item),a=l?h:C({start:u,dir:1,min:0,max:i-1,getter:n,hasItem:s,series:t}))),r&&(t._outOfRangeMinPoint=r),a&&(t._outOfRangeMaxPoint=a))}function P(t){return!t.pane.axes.some(function(e){return e.options.vertical===t.options.vertical&&e!==t&&e.options.visible!==!1})}function T(t){var e,i,n,s,o,r=t.length;for(i=0;i<r;i++)n=t[i],s=n.options.visible!==!1,(s||P(n))&&(o=s?n.contentBox():n.lineBox(),e?e.wrap(o):e=o.clone());return e||new kt}function E(t,e){var i,n;for(i=0;i<t.length;i++)if(n=t[i],n&&n.pane===e)return n}function I(t){return""===t||null===t||"none"===t||"transparent"===t||!wt(t)}function R(t,e,i){var n,s=e,o=t;if(t.indexOf(".")>-1){for(n=t.split(".");n.length>1;)o=n.shift(),wt(s[o])||(s[o]={}),s=s[o];o=n.shift()}s[o]=i}function V(t,e,i){var n=[].concat(e instanceof Ut?t.categoryAxis:t.valueAxis);Ot(n[e.axisIndex],i)}function O(t,e,i){return jt(t,function(t){return 0===i&&!t.categoryAxis||t.categoryAxis===e})}function L(){this._defaultPrevented=!0}function M(t,e){var i=(e||"").toLowerCase(),n=t.event,s="none"===i&&!(n.ctrlKey||n.shiftKey||n.altKey)||n[i+"Key"];return s}function B(t){var e,i,n={};for(e=0;e<t.length;e++)i=t[e],i.axis.options.name&&(n[i.axis.options.name]={min:i.range.min,max:i.range.max});return n}function H(t){var e=document.createElement("div");return t&&(e.className=t),e}function z(t){for(var e=t;e&&!Qt(e,"k-handle");)e=e.parentNode;return e}function D(t,e,i,n){var s=[].concat(i?t.yAxis:t.xAxis)[e];Ot(s,n)}function F(t){var e,i,n=et.rad(t),s=Zt(Math.sin(n),yt),o=Zt(Math.cos(n),yt);return e=Math.abs(s)>Bs?ht:o<0?vt:ut,i=Math.abs(s)<Ms?ht:s<0?ct:lt,{horizontal:e,vertical:i}}function N(t,e,i,n){var s,o,r=(n.x-i.x)*(t.y-i.y)-(n.y-i.y)*(t.x-i.x),a=(n.y-i.y)*(e.x-t.x)-(n.x-i.x)*(e.y-t.y);return 0!==a&&(o=r/a,s=new Ct(t.x+o*(e.x-t.x),t.y+o*(e.y-t.y))),s}function G(t,e){return t.value.x-e.value.x}function q(t){var e,i,n=[];for(e=0;e<t.length;e++)i=t[e],n[i.seriesIx]=n[i.seriesIx]||[],n[i.seriesIx].push(i);return n}function W(t){var e,i,n=_o;for(e=0;e<n.length;e++)i=n[e]+"Axes",t[i]&&(t[n[e]+"Axis"]=t[i],delete t[i])}function U(t,e){if(t)for(var i=0;i<t.length;i++)if(t[i].category===e)return[t[i]]}function X(t,e){function i(t){var e=(t||{}).color||s.color,i=Ot({},a,a[n],s,s[n],{line:{color:e},labels:{color:e},title:{color:e}},t);return delete i[n],i}var n,s,o,r,a=(e||{}).axisDefaults||{};for(r=0;r<_o.length;r++)n=_o[r]+"Axis",s=t.axisDefaults||{},o=[].concat(t[n]),o=o.map(i),t[n]=o.length>1?o:o[0]}function Z(t,e){var i,n,s,o=t.series,r=o.length,a=t.seriesDefaults,h=Ot({},t.seriesDefaults),l=e?Ot({},e.seriesDefaults):{},c=Ot({},l);for(Y(h),Y(c),i=0;i<r;i++)n=o[i].type||t.seriesDefaults.type,s=Ot({data:[]},c,l[n],{tooltip:t.tooltip},h,a[n]),o[i]._defaults=s,o[i]=Ot({},s,o[i]),o[i].data=o[i].data||[]}function Y(t){delete t.bar,delete t.column,delete t.rangeColumn,delete t.line,delete t.verticalLine,delete t.pie,delete t.donut,delete t.area,delete t.verticalArea,delete t.scatter,delete t.scatterLine,delete t.bubble,delete t.candlestick,delete t.ohlc,delete t.boxPlot,delete t.bullet,delete t.verticalBullet,delete t.polarArea,delete t.polarLine,delete t.radarArea,delete t.radarLine,delete t.waterfall}function j(t){var e,i,n,s={};for(e=0;e<t.length;e++)i=t[e],n=i.options.name,n&&(s[n]=i.range());return s}function K(t,e){void 0===e&&(e=et.dateComparer);for(var i=1,n=t.length;i<n;i++)if(e(t[i],t[i-1])<0){t.sort(e);break}return t}function Q(t,e){var i,n,s,o;for(void 0===e&&(e=et.dateComparer),i=K(t,e),n=i.length,s=n>0?[i[0]]:[],o=1;o<n;o++)0!==e(i[o],Lt(s))&&s.push(i[o]);return s}function $(t){var e,i,n,s,o=t.length,r=[];for(e=0;e<o;e++)for(i=t[e],n=i.length,s=0;s<n;s++)r[s]=r[s]||[],r[s].push(i[s]);return r}function J(t,e){var i,n,s,o;for(i in e)!Et(i,ko)&&e.hasOwnProperty(i)&&(n=e[i],s=t[i],wt(s)&&(o=null===n,o||!wt(n)?(delete t[i],o&&delete e[i]):s&&Vt(n)&&Vt(s)&&J(s,n)))}function tt(t){for(var e=0;e<t.length;e++)t[e].notifyRender()}var et,it,nt,st,ot,rt,at,ht,lt,ct,ut,pt,dt,gt,ft,vt,xt,mt,yt,_t,wt,bt,At,St,Ct,kt,Pt,Tt,Et,It,Rt,Vt,Ot,Lt,Mt,Bt,Ht,zt,Dt,Ft,Nt,Gt,qt,Wt,Ut,Xt,Zt,Yt,jt,Kt,Qt,$t,Jt,te,ee,ie,ne,se,oe,re,ae,he,le,ce,ue,pe,de,ge,fe,ve,xe,me,ye,_e,we,be,Ae,Se,Ce,ke,Pe,Te,Ee,Ie,Re,Ve,Oe,Le,Me,Be,He,ze,De,Fe,Ne,Ge,qe,We,Ue,Xe,Ze,Ye,je,Ke,Qe,$e,Je,ti,ei,ii,ni,si,oi,ri,ai,hi,li,ci,ui,pi,di,gi,fi,vi,xi,mi,yi,_i,wi,bi,Ai,Si,Ci,ki,Pi,Ti,Ei,Ii,Ri,Vi,Oi,Li,Mi,Bi,Hi,zi,Di,Fi,Ni,Gi,qi,Wi,Ui,Xi,Zi,Yi,ji,Ki,Qi,$i,Ji,tn,en,nn,sn,on,rn,an,hn,ln,cn,un,pn,dn,gn,fn,vn,xn,mn,yn,_n,wn,bn,An,Sn,Cn,kn,Pn,Tn,En,In,Rn,Vn,On,Ln,Mn,Bn,Hn,zn,Dn,Fn,Nn,Gn,qn,Wn,Un,Xn,Zn,Yn,jn,Kn,Qn,$n,Jn,ts,es,is,ns,ss,os,rs,as,hs,ls,cs,us,ps,ds,gs,fs,vs,xs,ms,ys,_s,ws,bs,As,Ss,Cs,ks,Ps,Ts,Es,Is,Rs,Vs,Os,Ls,Ms,Bs,Hs,zs,Ds,Fs,Ns,Gs,qs,Ws,Us,Xs,Zs,Ys,js,Ks,Qs,$s,Js,to,eo,io,no,so,oo,ro,ao,ho,lo,co,uo,po,go,fo,vo,xo,mo,yo,_o,wo,bo,Ao,So,Co,ko;window.kendo.dataviz=window.kendo.dataviz||{},et=kendo.dataviz,it=et.Class,nt=et.isNumber,st=et.constants,ot=st.MAX_VALUE,rt=st.MIN_VALUE,at=st.VALUE,ht=st.CENTER,lt=st.TOP,ct=st.BOTTOM,ut=st.LEFT,pt=st.WHITE,dt=st.CIRCLE,gt=st.X,ft=st.Y,vt=st.RIGHT,xt=st.BLACK,mt=st.DATE,yt=st.DEFAULT_PRECISION,_t=st.ARC,wt=et.defined,bt=et.getter,At=et.isArray,St=et.ChartElement,Ct=et.Point,kt=et.Box,Pt=et.alignPathToPixel,Tt=et.setDefaultOptions,Et=et.inArray,It=et.isFunction,Rt=et.valueOrDefault,Vt=et.isObject,Ot=et.deepExtend,Lt=et.last,Mt=et.eventElement,Bt=et.getTemplate,Ht=et.TextBox,zt=et.ShapeElement,Dt=et.getSpacing,Ft=et.CurveProcessor,Nt=et.append,Gt=et.isString,qt=et.parseDate,Wt=et.styleValue,Ut=et.CategoryAxis,Xt=et.BoxElement,Zt=et.round,Yt=et.limitValue,jt=et.grep,Kt=et.elementStyles,Qt=et.hasClasses,$t=et.bindEvents,Jt=et.services,te=et.unbindEvents,ee=kendo.support,ie=kendo.drawing,ne=ie.Path,se=ie.Animation,oe=ie.AnimationFactory,re=ie.Group,ae=kendo.Color,he=kendo.geometry,le=he.Point,ce=he.transform,ue=it.extend({init:function(t){this._axis=t,this.options=t.options},value:function(t){var e=this._axis,i=e.getCategory?e.getCategory(t):e.getValue(t);return i},slot:function(t,e,i){return void 0===i&&(i=!0),this._axis.slot(t,e,i)},range:function(){return this._axis.range()},valueRange:function(){return this._axis.valueRange()}}),pe=kendo.Class.extend({init:function(t){this.visual=t.visual,this.chartsVisual=t.chartContainer.visual,this._pane=t},findAxisByName:function(t){return e(t,this._pane.axes)}}),de=it.extend({init:function(t){this._plotArea=t,this.visual=t.visual,this.backgroundVisual=t._bgVisual}}),ge={min:function(t){var e,i,n=t.length,s=ot;for(e=0;e<n;e++)i=t[e],nt(i)&&(s=Math.min(s,i));return s===ot?t[0]:s},max:function(t){var e,i,n=t.length,s=rt;for(e=0;e<n;e++)i=t[e],nt(i)&&(s=Math.max(s,i));return s===rt?t[0]:s},sum:function(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],nt(i)&&(s+=i);return s},sumOrNull:function(t){var e=null;return i(t)&&(e=ge.sum(t)),e},count:function(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],null!==i&&wt(i)&&s++;return s},avg:function(t){var e=i(t),n=t[0];return e>0&&(n=ge.sum(t)/e),n},first:function(t){var e,i,n=t.length;for(e=0;e<n;e++)if(i=t[e],null!==i&&wt(i))return i;return t[0]}},fe=it.extend({init:function(){this._valueFields={},this._otherFields={},this._nullValue={},this._undefinedValue={}},register:function(t,e,i){var n,s,o=this;for(void 0===e&&(e=[at]),void 0===i&&(i={}),n=0;n<t.length;n++)s=t[n],o._valueFields[s]=e,o._otherFields[s]=i,o._nullValue[s]=o._makeValue(e,null),o._undefinedValue[s]=o._makeValue(e,void 0)},canonicalFields:function(t){return this.valueFields(t).concat(this.otherFields(t))},valueFields:function(t){return this._valueFields[t.type]||[at]},otherFields:function(t){return this._otherFields[t.type]||[at]},bindPoint:function(t,e,i){var n,s,o,r,a,h=t.data,l=wt(i)?i:h[e],c={valueFields:{value:l}},u=this.valueFields(t),p=this._otherFields[t.type];return null===l?s=this._nullValue[t.type]:wt(l)?Array.isArray(l)?(o=l.slice(u.length),s=this._bindFromArray(l,u),n=this._bindFromArray(o,p)):"object"==typeof l&&(r=this.sourceFields(t,u),a=this.sourceFields(t,p),s=this._bindFromObject(l,u,r),n=this._bindFromObject(l,p,a)):s=this._undefinedValue[t.type],wt(s)&&(1===u.length?c.valueFields.value=s[u[0]]:c.valueFields=s),c.fields=n||{},c},_makeValue:function(t,e){var i,n,s={},o=t.length;for(i=0;i<o;i++)n=t[i],s[n]=e;return s},_bindFromArray:function(t,e){var i,n,s={};if(e)for(i=Math.min(e.length,t.length),n=0;n<i;n++)s[e[n]]=t[n];return s},_bindFromObject:function(t,e,i){var s,o,r,a,h;if(void 0===i&&(i=e),s={},e)for(o=e.length,r=0;r<o;r++)a=e[r],h=i[r],null!==h&&(s[a]=n(h,t));return s},sourceFields:function(t,e){var i,n,s,o,r=[];if(e)for(i=e.length,n=0;n<i;n++)s=e[n],o=s===at?"field":s+"Field",r.push(null!==t[o]?t[o]||s:null);return r}}),fe.current=new fe,ve="stderr",xe="stddev",me=/percent(?:\w*)\((\d+)\)/,ye=RegExp("^"+xe+"(?:\\((\\d+(?:\\.\\d+)?)\\))?$"),_e=it.extend({init:function(t,e,i){this.initGlobalRanges(t,e,i)},initGlobalRanges:function(t,e,i){var n,s,o,r,a,h=e.data,l=ye.exec(t);l?(this.valueGetter=this.createValueGetter(e,i),n=this.getAverage(h),s=this.getStandardDeviation(h,n,!1),o=l[1]?parseFloat(l[1]):1,r={low:n.value-s*o,high:n.value+s*o},this.globalRange=function(){return r}):t.indexOf&&t.indexOf(ve)>=0&&(this.valueGetter=this.createValueGetter(e,i),a=this.getStandardError(h,this.getAverage(h)),this.globalRange=function(t){return{low:t-a,high:t+a}})},createValueGetter:function(t,e){var i,n,s,o=t.data,r=fe.current,a=r.valueFields(t),h=wt(o[0])?o[0]:{};return At(h)?(n=e?a.indexOf(e):0,i=bt("["+n+"]")):nt(h)?i=bt():typeof h===st.OBJECT&&(s=r.sourceFields(t,a),i=bt(s[a.indexOf(e)])),i},getErrorRange:function(t,e){var i,n,s,o;if(!wt(e))return null;if(this.globalRange)return this.globalRange(t);if(At(e))i=t-e[0],n=t+e[1];else if(nt(s=parseFloat(e)))i=t-s,n=t+s;else{if(!(s=me.exec(e)))throw Error("Invalid ErrorBar value: "+e);o=t*(parseFloat(s[1])/100),i=t-Math.abs(o),n=t+Math.abs(o)}return{low:i,high:n}},getStandardError:function(t,e){return this.getStandardDeviation(t,e,!0)/Math.sqrt(e.count)},getStandardDeviation:function(t,e,i){var n,s,o=this,r=t.length,a=i?e.count-1:e.count,h=0;for(n=0;n<r;n++)s=o.valueGetter(t[n]),nt(s)&&(h+=Math.pow(s-e.value,2));return Math.sqrt(h/a)},getAverage:function(t){var e,i,n=this,s=t.length,o=0,r=0;for(e=0;e<s;e++)i=n.valueGetter(t[e]),nt(i)&&(o+=i,r++);return{value:o/r,count:r}}}),we=ee.browser||{},be=600,Ae="fadeIn",Se="glass",Ce=.8,ke=5,Pe=we.msie?.001:0,Te="errorLow",Ee="errorHigh",Ie="xErrorLow",Re="xErrorHigh",Ve="yErrorLow",Oe="yErrorHigh",Le=8,Me="zero",Be="interpolate",He="gap",ze="above",De="below",Fe="smooth",Ne="step",Ge="area",qe="bar",We="boxPlot",Ue="bubble",Xe="bullet",Ze="candlestick",Ye="column",je="donut",Ke="funnel",Qe="horizontalWaterfall",$e="line",Je="ohlc",ti="pie",ei="polarArea",ii="polarLine",ni="polarScatter",si="radarArea",oi="radarColumn",ri="radarLine",ai="rangeArea",hi="rangeBar",li="rangeColumn",ci="scatter",ui="scatterLine",pi="verticalArea",di="verticalBoxPlot",gi="verticalBullet",fi="verticalLine",vi="verticalRangeArea",xi="waterfall",mi=[qe,Ye,Je,Ze,We,di,Xe,li,hi,xi,Qe],yi="legendItemClick",_i="legendItemHover",wi="legendItemLeave",bi="seriesClick",Ai="seriesHover",Si="seriesOver",Ci="seriesLeave",ki="plotAreaClick",Pi="plotAreaHover",Ti="plotAreaLeave",Ei="drag",Ii="dragEnd",Ri="dragStart",Vi="zoomStart",Oi="zoom",Li="zoomEnd",Mi="selectStart",Bi="select",Hi="selectEnd",zi="render",Di="showTooltip",Fi="hideTooltip",Ni="paneRender",Gi="log",qi="category",Wi="insideEnd",Ui="insideBase",Xi="outsideEnd",Zi="DOMMouseScroll mousewheel",Yi=150,ji={INITIAL_ANIMATION_DURATION:be,FADEIN:Ae,LEGEND_ITEM_CLICK:yi,LEGEND_ITEM_HOVER:_i,LEGEND_ITEM_LEAVE:wi,SERIES_CLICK:bi,SERIES_HOVER:Ai,SERIES_OVER:Si,SERIES_LEAVE:Ci,GLASS:Se,BORDER_BRIGHTNESS:Ce,TOOLTIP_OFFSET:ke,START_SCALE:Pe,ERROR_LOW_FIELD:Te,ERROR_HIGH_FIELD:Ee,X_ERROR_LOW_FIELD:Ie,X_ERROR_HIGH_FIELD:Re,Y_ERROR_LOW_FIELD:Ve,Y_ERROR_HIGH_FIELD:Oe,LINE_MARKER_SIZE:Le,INTERPOLATE:Be,ZERO:Me,SMOOTH:Fe,STEP:Ne,CATEGORY:qi,FUNNEL:Ke,BAR:qe,CANDLESTICK:Ze,PIE:ti,COLUMN:Ye,AREA:Ge,VERTICAL_BULLET:gi,BOX_PLOT:We,OHLC:Je,WATERFALL:xi,LINE:$e,BULLET:Xe,VERTICAL_LINE:fi,VERTICAL_AREA:pi,RANGE_AREA:ai,VERTICAL_RANGE_AREA:vi,RANGE_COLUMN:li,VERTICAL_BOX_PLOT:di,RANGE_BAR:hi,HORIZONTAL_WATERFALL:Qe,SCATTER:ci,SCATTER_LINE:ui,BUBBLE:Ue,RADAR_AREA:si,RADAR_LINE:ri,RADAR_COLUMN:oi,POLAR_LINE:ii,POLAR_AREA:ei,POLAR_SCATTER:ni,RENDER:zi,PLOT_AREA_CLICK:ki,PLOT_AREA_HOVER:Pi,PLOT_AREA_LEAVE:Ti,LOGARITHMIC:Gi,DRAG:Ei,DRAG_START:Ri,DRAG_END:Ii,ZOOM_START:Vi,ZOOM:Oi,ZOOM_END:Li,SELECT_START:Mi,SELECT:Bi,SELECT_END:Hi,PANE_RENDER:Ni,GAP:He,DONUT:je,INSIDE_END:Wi,INSIDE_BASE:Ui,OUTSIDE_END:Xi,MOUSEWHEEL:Zi,MOUSEWHEEL_DELAY:Yi,SHOW_TOOLTIP:Di,HIDE_TOOLTIP:Fi,EQUALLY_SPACED_SERIES:mi,ABOVE:ze,BELOW:De},Ki=4,Qi=St.extend({init:function(t,e,i,n,s,o){St.fn.init.call(this,o),this.low=t,this.high=e,this.isVertical=i,this.chart=n,this.series=s},reflow:function(t){var e,i=this.options.endCaps,n=this.isVertical,s=this.getAxis(),o=s.getSlot(this.low,this.high),r=t.center(),a=this.getCapsWidth(t,n),h=n?r.x:r.y,l=h-a,c=h+a;n?(e=[new Ct(r.x,o.y1),new Ct(r.x,o.y2)],i&&e.push(new Ct(l,o.y1),new Ct(c,o.y1),new Ct(l,o.y2),new Ct(c,o.y2)),this.box=new kt(l,o.y1,c,o.y2)):(e=[new Ct(o.x1,r.y),new Ct(o.x2,r.y)],i&&e.push(new Ct(o.x1,l),new Ct(o.x1,c),new Ct(o.x2,l),new Ct(o.x2,c)),this.box=new kt(o.x1,l,o.x2,c)),this.linePoints=e},getCapsWidth:function(t,e){var i=e?t.width():t.height(),n=Math.min(Math.floor(i/2),Ki)||Ki;return n},createVisual:function(){var t=this,e=this.options,i=e.visual;i?this.visual=i({low:this.low,high:this.high,rect:this.box.toRect(),sender:this.getSender(),options:{endCaps:e.endCaps,color:e.color,line:e.line},createVisual:function(){t.createDefaultVisual();var e=t.visual;return delete t.visual,e}}):this.createDefaultVisual()},createDefaultVisual:function(){var t,e,i=this,n=this,s=n.options,o=n.linePoints,r={stroke:{color:s.color,width:s.line.width,dashType:s.line.dashType}};for(St.fn.createVisual.call(this),t=0;t<o.length;t+=2)e=new ne(r).moveTo(o[t].x,o[t].y).lineTo(o[t+1].x,o[t+1].y),Pt(e),i.visual.append(e)}}),Tt(Qi,{animation:{type:Ae,delay:be},endCaps:!0,line:{width:2},zIndex:1}),$i=Qi.extend({getAxis:function(){var t=this.chart.seriesValueAxis(this.series);return t}}),Ji=5,tn=St.extend({init:function(t,e){St.fn.init.call(this,e),this.plotArea=t,this.chartService=t.chartService,this.categoryAxis=t.seriesCategoryAxis(e.series[0]),this.valueAxisRanges={},this.points=[],this.categoryPoints=[],this.seriesPoints=[],this.seriesOptions=[],this._evalSeries=[],this.render()},render:function(){this.traverseDataPoints(this.addValue.bind(this))},pointOptions:function(t,e){var i,n=this.seriesOptions[e];return n||(i=this.pointType().prototype.defaults,this.seriesOptions[e]=n=Ot({},i,{vertical:!this.options.invertAxes},t)),n},plotValue:function(t){var e,i,n,s,o,r,a,h;if(!t)return 0;if(this.options.isStacked100&&nt(t.value)){for(e=t.categoryIx,i=this.categoryPoints[e],n=[],s=0,o=0;o<i.length;o++)if(r=i[o]){if(a=t.series.stack,h=r.series.stack,a&&h&&a.group!==h.group)continue;nt(r.value)&&(s+=Math.abs(r.value),n.push(Math.abs(r.value)))}if(s>0)return t.value/s}return t.value},plotRange:function(t,e){var i,n,s,o,r,a,h,l,c,u,p,d,g,f=this;if(void 0===e&&(e=0),i=this.categoryPoints[t.categoryIx],this.options.isStacked){for(n=this.plotValue(t),s=n>=0,o=e,r=!1,a=0;a<i.length&&(h=i[a],t!==h);a++){if(l=t.series.stack,c=h.series.stack,l&&c){if(typeof l===st.STRING&&l!==c)continue;if(l.group&&l.group!==c.group)continue}u=f.plotValue(h),(u>=0&&s||u<0&&!s)&&(o+=u,n+=u,r=!0,f.options.isStacked100&&(n=Math.min(n,1)))}return r&&(o-=e),[o,n]}return p=t.series,d=this.seriesValueAxis(p),g=this.categoryAxisCrossingValue(d),[g,et.convertableToNumber(t.value)?t.value:g]},stackLimits:function(t,e){var i,n,s,o,r,a=this,h=ot,l=rt;for(i=0;i<this.categoryPoints.length;i++)if(n=a.categoryPoints[i])for(s=0;s<n.length;s++)o=n[s],o&&(o.series.stack!==e&&o.series.axis!==t||(r=a.plotRange(o,0)[1],wt(r)&&isFinite(r)&&(l=Math.max(l,r),h=Math.min(h,r))));return{min:h,max:l}},updateStackRange:function(){var t,e,i,n,s,o,r=this,a=this.options,h=a.isStacked,l=a.series,c={};if(h)for(t=0;t<l.length;t++)e=l[t],i=e.axis,n=i+e.stack,s=c[n],s||(s=r.stackLimits(i,e.stack),o=r.errorTotals,o&&(o.negative.length&&(s.min=Math.min(s.min,et.sparseArrayLimits(o.negative).min)),o.positive.length&&(s.max=Math.max(s.max,et.sparseArrayLimits(o.positive).max))),s.min!==ot||s.max!==rt?c[n]=s:s=null),s&&(r.valueAxisRanges[i]=s)},addErrorBar:function(t,e,i){var n,s=t.value,o=t.series,r=t.seriesIx,a=t.options.errorBars,h=e.fields[Te],l=e.fields[Ee];nt(h)&&nt(l)?n={low:h,high:l}:a&&wt(a.value)&&(this.seriesErrorRanges=this.seriesErrorRanges||[],this.seriesErrorRanges[r]=this.seriesErrorRanges[r]||new _e(a.value,o,at),n=this.seriesErrorRanges[r].getErrorRange(s,a.value)),n&&(t.low=n.low,t.high=n.high,this.addPointErrorBar(t,i))},addPointErrorBar:function(t,e){var i,n,s,o=!this.options.invertAxes,r=t.options.errorBars,a=t.series,h=t.low,l=t.high;this.options.isStacked?(i=this.stackedErrorRange(t,e),h=i.low,l=i.high):(n={categoryIx:e,series:a},this.updateRange({value:h},n),this.updateRange({value:l},n)),s=new $i(h,l,o,this,a,r),t.errorBars=[s],t.append(s)},stackedErrorRange:function(t,e){var i=this.plotRange(t,0)[1]-t.value,n=t.low+i,s=t.high+i;return this.errorTotals=this.errorTotals||{positive:[],negative:[]},n<0&&(this.errorTotals.negative[e]=Math.min(this.errorTotals.negative[e]||0,n)),s>0&&(this.errorTotals.positive[e]=Math.max(this.errorTotals.positive[e]||0,s)),{low:n,high:s}},addValue:function(e,i){var n,s,o=i.categoryIx,r=i.series,a=i.seriesIx,h=this.categoryPoints[o];h||(this.categoryPoints[o]=h=[]),n=this.seriesPoints[a],n||(this.seriesPoints[a]=n=[]),s=this.createPoint(e,i),s&&(t.extend(s,i),s.owner=this,s.noteText=e.fields.noteText,wt(s.dataItem)||(s.dataItem=r.data[o]),this.addErrorBar(s,e,o)),this.points.push(s),n.push(s),h.push(s),this.updateRange(e.valueFields,i)},evalPointOptions:function(t,e,i,n,o,r){var a,h={defaults:o._defaults,excluded:["data","aggregate","_events","tooltip","content","template","visual","toggle","_outOfRangeMinPoint","_outOfRangeMaxPoint"]},l=this._evalSeries[r];return wt(l)||(this._evalSeries[r]=l=s(t,{},h,!0)),a=t,l&&(a=Ot({},a),s(a,{value:e,category:i,index:n,series:o,dataItem:o.data[n]},h)),a},updateRange:function(t,e){var i=e.series.axis,n=t.value,s=this.valueAxisRanges[i];isFinite(n)&&null!==n&&(s=this.valueAxisRanges[i]=s||{min:ot,max:rt},s.min=Math.min(s.min,n),s.max=Math.max(s.max,n))},seriesValueAxis:function(t){var e=this.plotArea,i=t.axis,n=i?e.namedValueAxes[i]:e.valueAxis;if(!n)throw Error("Unable to locate value axis with name "+i);return n},reflow:function(t){var e=this,i=this.categorySlots=[],n=this.points,s=this.categoryAxis,o=0;this.traverseDataPoints(function(t,r){var a,h,l,c=r.categoryIx,u=r.series,p=e.seriesValueAxis(u),d=n[o++],g=i[c];g||(i[c]=g=e.categorySlot(s,c,p)),d&&(a=e.plotRange(d,p.startValue()),h=e.valueSlot(p,a),h?(l=e.pointSlot(g,h),d.aboveAxis=e.aboveAxis(d,p),d.stackValue=a[1],e.options.isStacked100&&(d.percentage=e.plotValue(d)),e.reflowPoint(d,l)):d.visible=!1)}),this.reflowCategories(i),!this.options.clip&&this.options.limitPoints&&this.points.length&&this.limitPoints(),this.box=t},valueSlot:function(t,e){return t.getSlot(e[0],e[1],!this.options.clip)},limitPoints:function(){var t,e=this,i=this.categoryPoints,n=i[0].concat(Lt(i));for(t=0;t<n.length;t++)n[t]&&e.limitPoint(n[t])},limitPoint:function(t){var e=this.categoryAxis.limitSlot(t.box);e.equals(t.box)||t.reflow(e)},aboveAxis:function(t,e){var i=this.categoryAxisCrossingValue(e),n=t.value;return e.options.reverse?n<i:n>=i},categoryAxisCrossingValue:function(t){var e=this.categoryAxis,i=t.options,n=[].concat(i.axisCrossingValues||i.axisCrossingValue);return n[e.axisIndex||0]||0},reflowPoint:function(t,e){t.reflow(e)},reflowCategories:function(){},pointSlot:function(t,e){var i=this.options,n=i.invertAxes,s=n?e:t,o=n?t:e;return new kt(s.x1,o.y1,s.x2,o.y2)},categorySlot:function(t,e){return t.getSlot(e)},traverseDataPoints:function(t){var e,i,n,s,r,a,h,l=this,c=this.options.series,u=o(c),p=c.length;for(e=0;e<p;e++)l._outOfRangeCallback(c[e],"_outOfRangeMinPoint",e,t);for(i=0;i<u;i++)for(n=0;n<p;n++)s=c[n],r=l.categoryAxis.categoryAt(i),a=l._bindPoint(s,n,i),t(a,{category:r,categoryIx:i,categoriesCount:u,series:s,seriesIx:n});for(h=0;h<p;h++)l._outOfRangeCallback(c[h],"_outOfRangeMaxPoint",h,t)},_outOfRangeCallback:function(t,e,i,n){var s,o,r=t[e];r&&(s=r.categoryIx,o=this._bindPoint(t,i,s,r.item),n(o,{category:r.category,categoryIx:s,series:t,seriesIx:i,dataItem:r.item}))},_bindPoint:function(t,e,i,n){var s,o;return this._bindCache||(this._bindCache=[]),s=this._bindCache[e],s||(s=this._bindCache[e]=[]),o=s[i],o||(o=s[i]=fe.current.bindPoint(t,i,n)),o},formatPointValue:function(t,e){return null===t.value?"":this.chartService.format.auto(e,t.value)},pointValue:function(t){return t.valueFields.value}}),Tt(tn,{series:[],invertAxes:!1,isStacked:!1,clip:!0,limitPoints:!0}),en={click:function(t,e){return t.trigger(bi,this.eventArgs(e))},hover:function(t,e){return t.trigger(Ai,this.eventArgs(e))},over:function(t,e){return t.trigger(Si,this.eventArgs(e))},out:function(t,e){return t.trigger(Ci,this.eventArgs(e))},eventArgs:function(t){return{value:this.value,percentage:this.percentage,stackValue:this.stackValue,category:this.category,series:this.series,dataItem:this.dataItem,runningTotal:this.runningTotal,total:this.total,element:Mt(t),originalEvent:t,point:this}}},nn={createNote:function(){var t=this.options.notes,e=this.noteText||t.label.text;t.visible!==!1&&wt(e)&&null!==e&&(this.note=new et.Note({value:this.value,text:e,dataItem:this.dataItem,category:this.category,series:this.series},this.options.notes,this.owner.chartService),this.append(this.note))}},sn=St.extend({init:function(t,e){St.fn.init.call(this),this.value=t,this.options=e,this.aboveAxis=Rt(this.options.aboveAxis,!0),this.tooltipTracking=!0},render:function(){var t,e,i,n=this.options,s=n.markers,o=n.labels;this._rendered||(this._rendered=!0,s.visible&&s.size&&(this.marker=this.createMarker(),this.append(this.marker)),o.visible&&(t=Bt(o),e=this.pointData(),i=this.value,t?i=t(e):o.format&&(i=this.formatValue(o.format)),this.label=new Ht(i,Ot({align:ht,vAlign:ht,margin:{left:5,right:5},zIndex:Rt(o.zIndex,this.series.zIndex)},o),e),this.append(this.label)),this.createNote(),this.errorBar&&this.append(this.errorBar))},markerBorder:function(){var t=this.options.markers,e=t.background,i=Ot({color:this.color},t.border);return wt(i.color)||(i.color=new ae(e).brightness(Ce).toHex()),i},createVisual:function(){},createMarker:function(){var t=this.options.markers,e=new zt({type:t.type,width:t.size,height:t.size,rotation:t.rotation,background:t.background,border:this.markerBorder(),opacity:this.series.opacity||t.opacity,zIndex:Rt(t.zIndex,this.series.zIndex),animation:t.animation,visual:t.visual},{dataItem:this.dataItem,value:this.value,series:this.series,category:this.category});return e},markerBox:function(){return this.marker||(this.marker=this.createMarker(),this.marker.reflow(this._childBox)),this.marker.box},reflow:function(t){var e,i,n,s,o=this,r=this,a=r.options,h=r.aboveAxis,l=a.vertical;if(this.render(),this.box=t,e=t.clone(),l?h?e.y1-=e.height():e.y2+=e.height():h?e.x1+=e.width():e.x2-=e.width(),this._childBox=e,this.marker&&this.marker.reflow(e),this.reflowLabel(e),this.errorBars)for(i=0;i<this.errorBars.length;i++)o.errorBars[i].reflow(e);this.note&&(n=this.markerBox(),a.markers.visible&&a.markers.size||(s=n.center(),n=new kt(s.x,s.y,s.x,s.y)),this.note.reflow(n))},reflowLabel:function(t){var e=this,i=e.options,n=e.label,s=i.labels.position;n&&(s=s===ze?lt:s,s=s===De?ct:s,n.reflow(t),n.box.alignTo(this.markerBox(),s),n.reflow(n.box))},createHighlight:function(){var t=this.options.highlight.markers,e=this.markerBorder().color,i=this.options.markers,n=i.size+(i.border.width||0)+(t.border.width||0),s=new zt({type:i.type,width:n,height:n,rotation:i.rotation,background:t.color||e,border:{color:t.border.color,width:t.border.width,opacity:Rt(t.border.opacity,1)},opacity:Rt(t.opacity,1)});return s.reflow(this._childBox),s.getElement()},highlightVisual:function(){return(this.marker||{}).visual},highlightVisualArgs:function(){var t,e,i,n,s,o=this.marker;return o?(e=o.paddingBox.toRect(),t=o.visual):(i=this.options.markers.size,n=i/2,s=this.box.center(),e=new he.Rect([s.x-n,s.y-n],[i,i])),{options:this.options,rect:e,visual:t}},tooltipAnchor:function(){var t,e,i,n,s=this.markerBox(),o=this.owner.pane.clipBox(),r=!o||o.overlaps(s);if(r)return t=s.x2+ke,e=ut,this.aboveAxis?(i=s.y1,n=ct):(i=s.y2,n=lt),{point:new Ct(t,i),align:{horizontal:e,vertical:n}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){var e=this.markerBox();return e.overlaps(t)},unclipElements:function(){this.label&&(this.label.options.noclip=!0),this.note&&(this.note.options.noclip=!0)},pointData:function(){return{dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,stackValue:this.stackValue,series:this.series}}}),sn.prototype.defaults={vertical:!0,markers:{visible:!0,background:pt,size:Le,type:dt,border:{width:2},opacity:1},labels:{visible:!1,position:ze,margin:Dt(3),padding:Dt(4),animation:{type:Ae,delay:be}},notes:{label:{}},highlight:{markers:{border:{color:"#fff",width:2}},zIndex:st.HIGHLIGHT_ZINDEX},errorBars:{line:{width:1}}},Ot(sn.prototype,en),Ot(sn.prototype,nn),on=St.extend({init:function(t,e,i){St.fn.init.call(this),this.linePoints=t,this.series=e,this.seriesIx=i},points:function(){return this.toGeometryPoints(this.linePoints)},toGeometryPoints:function(t){var e,i,n=[];for(e=0,i=t.length;e<i;e++)t[e]&&t[e].visible!==!1&&n.push(t[e]._childBox.toRect().center());return n},createVisual:function(){var t=this,e=this.series.visual;e?(this.visual=e({points:this.toGeometryPoints(this.linePoints),series:this.series,sender:this.getSender(),createVisual:function(){return t.segmentVisual(),t.visual}}),this.visual&&!wt(this.visual.options.zIndex)&&(this.visual.options.zIndex=this.series.zIndex)):this.segmentVisual()},segmentVisual:function(){var t,e=this,i=e.options,n=e.series,s=n.color,o=n._defaults;It(s)&&o&&(s=o.color),t=ne.fromPoints(this.points(),{stroke:{color:s,width:n.width,opacity:n.opacity,dashType:n.dashType},zIndex:n.zIndex}),i.closed&&t.close(),this.visual=t},aliasFor:function(t,e){return this.parent.getNearestPoint(e.x,e.y,this.seriesIx)}}),Tt(on,{closed:!1}),rn={calculateStepPoints:function(t){var e,i,n,s=this.parent.plotArea.seriesCategoryAxis(this.series),o=s.options,a=o.justified,h=o.vertical,l=o.reverse,c=h?gt:ft,u=h?ft:gt,p=l?2:1,d=p,g=r(t[0],c,p,u,d),f=[g];
for(e=1;e<t.length;e++)i=r(t[e],c,p,u,d),g[c]!==i[c]&&(n=new le,n[c]=g[c],n[u]=i[u],f.push(n,i)),g=i;return a?g!==Lt(f)&&f.push(g):f.push(r(Lt(t),c,p,u,l?1:2)),f}},an=on.extend({points:function(){return this.calculateStepPoints(this.linePoints)}}),Ot(an.prototype,rn),hn=on.extend({segmentVisual:function(){var t,e,i,n=this.series,s=n._defaults,o=n.color;It(o)&&s&&(o=s.color),t=new Ft(this.options.closed),e=t.process(this.points()),i=new ne({stroke:{color:o,width:n.width,opacity:n.opacity,dashType:n.dashType},zIndex:n.zIndex}),i.segments.push.apply(i.segments,e),this.visual=i}}),ln={renderSegments:function(){var t,e,i,n,s,o,r,a,h=this,l=this,c=l.options,u=l.seriesPoints,p=c.series,d=u.length;for(this._segments=[],e=0;e<d;e++){for(i=p[e],n=h.sortPoints(u[e]),s=n.length,o=[],r=0;r<s;r++)a=n[r],a?o.push(a):h.seriesMissingValues(i)!==Be&&(o.length>1&&(t=h.createSegment(o,i,e,t),h._addSegment(t)),o=[]);o.length>1&&(t=h.createSegment(o,i,e,t),h._addSegment(t))}this.children.unshift.apply(this.children,this._segments)},_addSegment:function(t){this._segments.push(t),t.parent=this},sortPoints:function(t){return t},seriesMissingValues:function(t){var e=t.missingValues,i=!e&&this.options.isStacked;return i?Me:e||Be},getNearestPoint:function(t,e,i){var n,s,o,r,a,h=new Ct(t,e),l=this.seriesPoints[i],c=ot;for(s=0;s<l.length;s++)o=l[s],o&&wt(o.value)&&null!==o.value&&o.visible!==!1&&(r=o.box,a=r.center().distanceTo(h),a<c&&(n=o,c=a));return n}},cn=se.extend({setup:function(){this._setEnd(this.options.box.x1)},step:function(t){var e=this.options.box;this._setEnd(et.interpolateValue(e.x1,e.x2,t))},_setEnd:function(t){var e=this.element,i=e.segments,n=i[1].anchor(),s=i[2].anchor();e.suspend(),n.setX(t),e.resume(),s.setX(t)}}),Tt(cn,{duration:be}),oe.current.register("clip",cn),un={createAnimation:function(){var t,e,i=this.getRoot();i&&(i.options||{}).transitions!==!1&&(t=i.size(),e=ne.fromRect(t.toRect()),this.visual.clip(e),this.animation=new cn(e,{box:t}),a(this.options.series)&&this._setChildrenAnimation(e))},_setChildrenAnimation:function(t){var e,i,n=this.animationPoints();for(e=0;e<n.length;e++)i=n[e],i&&i.visual&&wt(i.visual.options.zIndex)&&i.visual.clip(t)}},pn=tn.extend({render:function(){tn.fn.render.call(this),this.updateStackRange(),this.renderSegments()},pointType:function(){return sn},createPoint:function(t,e){var i,n,s,o=e.categoryIx,r=e.category,a=e.series,h=e.seriesIx,l=this.seriesMissingValues(a),c=t.valueFields.value;if(!wt(c)||null===c){if(l!==Me)return null;c=0}return i=this.pointOptions(a,h),i=this.evalPointOptions(i,c,r,o,a,h),n=t.fields.color||a.color,It(a.color)&&(n=i.color),s=new sn(c,i),s.color=n,this.append(s),s},plotRange:function(t){var e,i,n,s,o=this,r=this.plotValue(t);if(this.options.isStacked)for(e=t.categoryIx,i=this.categoryPoints[e],n=0;n<i.length&&(s=i[n],t!==s);n++)r+=o.plotValue(s),o.options.isStacked100&&(r=Math.min(r,1));return[r,r]},createSegment:function(t,e,i){var n,s=e.style;return new(n=s===Ne?an:s===Fe?hn:on)(t,e,i)},animationPoints:function(){var t,e=this.points,i=[];for(t=0;t<e.length;t++)i.push((e[t]||{}).marker);return i.concat(this._segments)}}),Ot(pn.prototype,ln,un),dn=on.extend({init:function(t,e,i,n,s){on.fn.init.call(this,t,e,i),this.prevSegment=n,this.stackPoints=s},createVisual:function(){var t=this.series,e=t._defaults,i=t.line||{},n=t.color;It(n)&&e&&(n=e.color),this.visual=new re({zIndex:t.zIndex}),this.createFill({fill:{color:n,opacity:t.opacity},stroke:null}),i.width>0&&i.visible!==!1&&this.createStroke({stroke:Ot({color:n,opacity:t.opacity,lineCap:"butt"},i)})},strokeSegments:function(){var t=this._strokeSegments;return t||(t=this._strokeSegments=this.createStrokeSegments()),t},createStrokeSegments:function(){return this.segmentsFromPoints(this.points())},stackSegments:function(){return this.prevSegment?this.prevSegment.createStackSegments(this.stackPoints):this.createStackSegments(this.stackPoints)},createStackSegments:function(t){return this.segmentsFromPoints(this.toGeometryPoints(t)).reverse()},segmentsFromPoints:function(t){return t.map(function(t){return new he.Segment(t)})},createStroke:function(t){var e=new ne(t);e.segments.push.apply(e.segments,this.strokeSegments()),this.visual.append(e)},hasStackSegment:function(){return this.prevSegment||this.stackPoints&&this.stackPoints.length},createFill:function(t){var e,i,n=this.strokeSegments(),s=n.slice(0),o=this.hasStackSegment();o&&(e=this.stackSegments(),Nt(s,e)),i=new ne(t),i.segments.push.apply(i.segments,s),!o&&n.length>1&&this.fillToAxes(i),this.visual.append(i)},fillToAxes:function(t){var e=this.parent,i=e.options.invertAxes,n=e.seriesValueAxis(this.series),s=e.categoryAxisCrossingValue(n),o=n.getSlot(s,s,!0),r=this.strokeSegments(),a=r[0].anchor(),h=Lt(r).anchor(),l=i?o.x1:o.y1;i?t.lineTo(l,h.y).lineTo(l,a.y):t.lineTo(h.x,l).lineTo(a.x,l)}}),gn=dn.extend({createStrokeSegments:function(){return this.segmentsFromPoints(this.calculateStepPoints(this.linePoints))},createStackSegments:function(t){return this.segmentsFromPoints(this.calculateStepPoints(t)).reverse()}}),Ot(gn.prototype,rn),fn=dn.extend({createStrokeSegments:function(){var t=new Ft(this.options.closed),e=this.points();return t.process(e)},createStackSegments:function(){var t,e,i=this.strokeSegments(),n=[];for(t=i.length-1;t>=0;t--)e=i[t],n.push(new he.Segment(e.anchor(),e.controlOut(),e.controlIn()));return n}}),vn=pn.extend({createSegment:function(t,e,i,n){var s,o,r,a,h=this.options.isStacked,l=(e.line||{}).style;return h&&i>0&&n&&(r=this.seriesMissingValues(e),"gap"!==r?(o=n.linePoints,s=n):o=this._gapStackPoints(t,i,l)),new(a=l===Ne?gn:l===Fe?fn:dn)(t,e,i,s,o)},reflow:function(t){var e,i,n,s,o=this;if(pn.fn.reflow.call(this,t),e=this._stackPoints)for(i=0;i<e.length;i++)n=e[i],s=o.categoryAxis.getSlot(n.categoryIx),n.reflow(s)},_gapStackPoints:function(t,e,i){var n,s,o,r,a,h,l,c,u=this,p=this.seriesPoints,d=t[0].categoryIx,g=t.length;for(d<0&&(d=0,g--),n=d+g,s=this.seriesOptions[0]._outOfRangeMinPoint?1:0,o=[],this._stackPoints=this._stackPoints||[],r=d;r<n;r++){a=r+s,h=e,l=void 0;do h--,l=p[h][a];while(h>0&&!l);l?(i!==Ne&&r>d&&!p[h][a-1]&&o.push(u._previousSegmentPoint(r,a,a-1,h)),o.push(l),i!==Ne&&r+1<n&&!p[h][a+1]&&o.push(u._previousSegmentPoint(r,a,a+1,h))):(c=u._createGapStackPoint(r),u._stackPoints.push(c),o.push(c))}return o},_previousSegmentPoint:function(t,e,i,n){for(var s,o=this.seriesPoints,r=n;r>0&&!s;)r--,s=o[r][i];return s?s=o[r][e]:(s=this._createGapStackPoint(t),this._stackPoints.push(s)),s},_createGapStackPoint:function(t){var e=this.pointOptions({},0),i=new sn(0,e);return i.categoryIx=t,i.series={},i},seriesMissingValues:function(t){return t.missingValues||Me},supportsPointInactiveOpacity:function(){return!1}}),xn=it.extend({init:function(){this.axisRanges={}},update:function(t){var e,i,n,s=this.axisRanges;for(e in t)i=t[e],n=s[e],s[e]=n=n||{min:ot,max:rt},n.min=Math.min(n.min,i.min),n.max=Math.max(n.max,i.max)},reset:function(t){this.axisRanges[t]=void 0},query:function(t){return this.axisRanges[t]}}),mn=St.extend({init:function(t,e,i){St.fn.init.call(this,e),this.textBox=new Ht(t,this.options,i),this.append(this.textBox)},createVisual:function(){this.textBox.options.noclip=this.options.noclip},reflow:function(t){var e=this.options,i=e.vertical,n=e.aboveAxis,s=this.children[0],o=s.options,r=s.box,a=s.options.padding,h=t;o.align=i?ht:ut,o.vAlign=i?lt:ht,e.position===Wi?i?(o.vAlign=lt,!n&&r.height()<t.height()&&(o.vAlign=ct)):o.align=n?vt:ut:e.position===ht?(o.vAlign=ht,o.align=ht):e.position===Ui?i?o.vAlign=n?ct:lt:o.align=n?ut:vt:e.position===Xi&&(i?h=n?new kt(t.x1,t.y1-r.height(),t.x2,t.y1):new kt(t.x1,t.y2,t.x2,t.y2+r.height()):(o.align=ht,h=n?new kt(t.x2,t.y1,t.x2+r.width(),t.y2):new kt(t.x1-r.width(),t.y1,t.x1,t.y2))),e.rotation||(i?a.left=a.right=(h.width()-s.contentBox.width())/2:a.top=a.bottom=(h.height()-s.contentBox.height())/2),s.reflow(h)},alignToClipBox:function(t){var e,i=this.options.vertical,n=i?ft:gt,s=n+"1",o=n+"2",r=this.children[0],a=this.parent.box;(a[s]<t[s]||t[o]<a[o])&&(e=r.paddingBox.clone(),e[s]=Math.max(a[s],t[s]),e[o]=Math.min(a[o],t[o]),this.reflow(e))}}),Tt(mn,{position:Xi,margin:Dt(3),padding:Dt(4),color:xt,background:"",border:{width:1,color:""},aboveAxis:!0,vertical:!1,animation:{type:Ae,delay:be},zIndex:2}),yn=6,_n=St.extend({init:function(t,e){St.fn.init.call(this),this.options=e,this.color=e.color||pt,this.aboveAxis=Rt(this.options.aboveAxis,!0),this.value=t},render:function(){this._rendered||(this._rendered=!0,this.createLabel(),this.createNote(),this.errorBar&&this.append(this.errorBar))},createLabel:function(){var t,e,i,n=this.options,s=n.labels;s.visible&&(t=this.pointData(),e=Bt(s),i=e?e(t):this.formatValue(s.format),this.label=new mn(i,Ot({vertical:n.vertical},s),t),this.append(this.label))},formatValue:function(t){return this.owner.formatPointValue(this,t)},reflow:function(t){var e,i,n=this;if(this.render(),e=this.label,this.box=t,e&&(e.options.aboveAxis=this.aboveAxis,e.reflow(t)),this.note&&this.note.reflow(t),this.errorBars)for(i=0;i<this.errorBars.length;i++)n.errorBars[i].reflow(t)},createVisual:function(){var t,e=this,i=this,n=i.box,s=i.options,o=s.visual;this.visible!==!1&&(St.fn.createVisual.call(this),o?(t=this.rectVisual=o({category:this.category,dataItem:this.dataItem,value:this.value,sender:this.getSender(),series:this.series,percentage:this.percentage,stackValue:this.stackValue,runningTotal:this.runningTotal,total:this.total,rect:n.toRect(),createVisual:function(){var t=new re;return e.createRect(t),t},options:s}),t&&this.visual.append(t)):n.width()>0&&n.height()>0&&this.createRect(this.visual))},createRect:function(t){var e,i,n,s,o,r=this.options,a=r.border,l=wt(a.opacity)?a.opacity:r.opacity,c=this.box.toRect();c.size.width=Math.round(c.size.width),e=this.rectVisual=ne.fromRect(c,{fill:{color:this.color,opacity:r.opacity},stroke:{color:this.getBorderColor(),width:a.width,opacity:l,dashType:a.dashType}}),i=this.box.width(),n=this.box.height(),s=r.vertical?i:n,s>yn&&(Pt(e),(i<1||n<1)&&(e.options.stroke.lineJoin="round")),t.append(e),h(r)&&(o=this.createGradientOverlay(e,{baseColor:this.color},Ot({end:r.vertical?void 0:[0,1]},r.overlay)),t.append(o))},createHighlight:function(t){var e=ne.fromRect(this.box.toRect(),t);return Pt(e)},highlightVisual:function(){return this.rectVisual},highlightVisualArgs:function(){return{options:this.options,rect:this.box.toRect(),visual:this.rectVisual}},getBorderColor:function(){var t=this.color,e=this.options.border,i=e._brightness||Ce,n=e.color;return wt(n)||(n=new ae(t).brightness(i).toHex()),n},tooltipAnchor:function(){var t,e,i,n,s=this,o=s.options,r=s.box,a=s.aboveAxis,h=this.owner.pane.clipBox()||r,l=ut,c=lt;return o.vertical?(t=Math.min(r.x2,h.x2)+ke,a?e=Math.max(r.y1,h.y1):(e=Math.min(r.y2,h.y2),c=ct)):(i=Math.max(r.x1,h.x1),n=Math.min(r.x2,h.x2),o.isStacked?(c=ct,a?(l=vt,t=n):t=i,e=Math.max(r.y1,h.y1)-ke):(a?t=n+ke:(t=i-ke,l=vt),e=Math.max(r.y1,h.y1))),{point:new Ct(t,e),align:{horizontal:l,vertical:c}}},overlapsBox:function(t){return this.box.overlaps(t)},pointData:function(){return{dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,stackValue:this.stackValue,runningTotal:this.runningTotal,total:this.total,series:this.series}}}),Ot(_n.prototype,en),Ot(_n.prototype,nn),_n.prototype.defaults={border:{width:1},vertical:!0,overlay:{gradient:"glass"},labels:{visible:!1,format:"{0}"},opacity:1,notes:{label:{}}},wn=St.extend({init:function(t){St.fn.init.call(this,t),this.forEach=t.rtl?c:l},reflow:function(t){var e=this.options,i=e.vertical,n=e.gap,s=e.spacing,o=this.children,r=o.length,a=i?ft:gt,h=r+n+s*(r-1),l=(i?t.height():t.width())/h,c=t[a+1]+l*(n/2);this.forEach(o,function(e,i){var n=(e.box||t).clone();n[a+1]=c,n[a+2]=c+l,e.reflow(n),i<r-1&&(c+=l*s),c+=l})}}),Tt(wn,{vertical:!1,gap:0,spacing:0}),bn=St.extend({reflow:function(t){var e,i,n,s=this,o=this.options.vertical?gt:ft,r=this.children,a=r.length,h=this.box=new kt;for(e=0;e<a;e++)i=r[e],i.visible!==!1&&(n=i.box.clone(),n.snapTo(t,o),0===e&&(h=s.box=n.clone()),i.reflow(n),h.wrap(n))}}),Tt(bn,{vertical:!0}),An=tn.extend({render:function(){tn.fn.render.call(this),this.updateStackRange()},pointType:function(){return _n},clusterType:function(){return wn},stackType:function(){return bn},stackLimits:function(t,e){var i=tn.fn.stackLimits.call(this,t,e);return i},createPoint:function(t,e){var i,n,s,o,r,a,h=e.categoryIx,l=e.category,c=e.series,u=e.seriesIx,p=this,d=p.options,g=p.children,f=d.isStacked,v=this.pointValue(t),x=this.pointOptions(c,u),m=x.labels;return f&&m.position===Xi&&(m.position=Wi),x.isStacked=f,i=t.fields.color||c.color,v<0&&x.negativeColor&&(i=x.negativeColor),x=this.evalPointOptions(x,v,l,h,c,u),It(c.color)&&(i=x.color),n=this.pointType(),s=new n(v,x),s.color=i,o=g[h],o||(r=this.clusterType(),o=new r({vertical:d.invertAxes,gap:d.gap,spacing:d.spacing,rtl:!d.invertAxes&&(this.chartService||{}).rtl}),this.append(o)),f?(a=this.getStackWrap(c,o),a.append(s)):o.append(s),s},getStackWrap:function(t,e){var i,n,s,o=t.stack,r=o?o.group||o:o,a=e.children;if(typeof r===st.STRING){for(n=0;n<a.length;n++)if(a[n]._stackGroup===r){i=a[n];break}}else i=a[0];return i||(s=this.stackType(),i=new s({vertical:!this.options.invertAxes}),i._stackGroup=r,e.append(i)),i},categorySlot:function(t,e,i){var n,s,o=this.options,r=t.getSlot(e),a=i.startValue();return o.isStacked&&(n=i.getSlot(a,a,!0),s=o.invertAxes?gt:ft,r[s+1]=r[s+2]=n[s+1]),r},reflowCategories:function(t){var e,i=this.children,n=i.length;for(e=0;e<n;e++)i[e].reflow(t[e])},createAnimation:function(){this._setAnimationOptions(),tn.fn.createAnimation.call(this),a(this.options.series)&&this._setChildrenAnimation()},_setChildrenAnimation:function(){var t,e,i,n=this,s=this.points;for(t=0;t<s.length;t++)e=s[t],i=e.visual,i&&wt(i.options.zIndex)&&(e.options.animation=n.options.animation,e.createAnimation())},_setAnimationOptions:function(){var t,e,i=this.options,n=i.animation||{};i.isStacked?(e=this.seriesValueAxis(i.series[0]),t=e.getSlot(e.startValue())):t=this.categoryAxis.getSlot(0),n.origin=new le(t.x1,t.y1),n.vertical=!i.invertAxes}}),Tt(An,{animation:{type:qe}}),Sn=St.extend({init:function(t,e){St.fn.init.call(this,e),this.value=t},reflow:function(t){var e,i,n=this,s=n.options,o=n.value,r=n.owner,a=r.seriesValueAxis(s),h=a.getSlot(o.open,o.close),l=a.getSlot(o.low,o.high);h.x1=l.x1=t.x1,h.x2=l.x2=t.x2,this.realBody=h,e=l.center().x,i=[],i.push([[e,l.y1],[e,h.y1]]),i.push([[e,h.y2],[e,l.y2]]),this.lines=i,this.box=l.clone().wrap(h),this._rendered||(this._rendered=!0,this.createNote()),this.reflowNote()},reflowNote:function(){this.note&&this.note.reflow(this.box)},createVisual:function(){St.fn.createVisual.call(this),this._mainVisual=this.mainVisual(this.options),this.visual.append(this._mainVisual),this.createOverlay()},mainVisual:function(t){var e=new re;return this.createBody(e,t),this.createLines(e,t),e},createBody:function(t,e){var i=ne.fromRect(this.realBody.toRect(),{fill:{color:this.color,opacity:e.opacity},stroke:null});e.border.width>0&&i.options.set("stroke",{color:this.getBorderColor(),width:e.border.width,dashType:e.border.dashType,opacity:Rt(e.border.opacity,e.opacity)}),Pt(i),t.append(i),h(e)&&t.append(this.createGradientOverlay(i,{baseColor:this.color},Ot({end:e.vertical?void 0:[0,1]},e.overlay)))},createLines:function(t,e){this.drawLines(t,e,this.lines,e.line)},drawLines:function(t,e,i,n){var s,o,r;if(i)for(s={stroke:{color:n.color||this.color,opacity:Rt(n.opacity,e.opacity),width:n.width,dashType:n.dashType,lineCap:"butt"}},o=0;o<i.length;o++)r=ne.fromPoints(i[o],s),Pt(r),t.append(r)},getBorderColor:function(){var t=this.options.border,e=t.color;return wt(e)||(e=new ae(this.color).brightness(t._brightness).toHex()),e},createOverlay:function(){var t=ne.fromRect(this.box.toRect(),{fill:{color:pt,opacity:0},stroke:null});this.visual.append(t)},createHighlight:function(){var t,e=this.options.highlight,i=this.color;return this.color=e.color||this.color,t=this.mainVisual(Ot({},this.options,{line:{color:this.getBorderColor()}},e)),this.color=i,t},highlightVisual:function(){return this._mainVisual},highlightVisualArgs:function(){return{options:this.options,rect:this.box.toRect(),visual:this._mainVisual}},tooltipAnchor:function(){var t=this.box,e=this.owner.pane.clipBox()||t;return{point:new Ct(t.x2+ke,Math.max(t.y1,e.y1)+ke),align:{horizontal:ut,vertical:lt}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){return this.box.overlaps(t)}}),Tt(Sn,{vertical:!0,border:{_brightness:.8},line:{width:2},overlay:{gradient:"glass"},tooltip:{format:"<table><tr><th colspan='2'>{4:d}</th></tr><tr><td>Open:</td><td>{0:C}</td></tr><tr><td>High:</td><td>{1:C}</td></tr><tr><td>Low:</td><td>{2:C}</td></tr><tr><td>Close:</td><td>{3:C}</td></tr></table>"},highlight:{opacity:1,border:{width:1,opacity:1},line:{width:1,opacity:1}},notes:{visible:!0,label:{}}}),Ot(Sn.prototype,en),Ot(Sn.prototype,nn),Cn=tn.extend({reflowCategories:function(t){var e,i=this.children,n=i.length;for(e=0;e<n;e++)i[e].reflow(t[e])},addValue:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,a=e.seriesIx,h=this,l=h.children,c=h.options,p=t.valueFields,d=this.splitValue(p),g=u(d),f=r.data[s],v=this.categoryPoints[s];v||(this.categoryPoints[s]=v=[]),g&&(i=this.createPoint(t,e)),n=l[s],n||(n=new wn({vertical:c.invertAxes,gap:c.gap,spacing:c.spacing,rtl:!c.invertAxes&&(this.chartService||{}).rtl}),this.append(n)),i&&(this.updateRange(p,e),n.append(i),i.categoryIx=s,i.category=o,i.series=r,i.seriesIx=a,i.owner=this,i.dataItem=f,i.noteText=t.fields.noteText),this.points.push(i),v.push(i)},pointType:function(){return Sn},createPoint:function(t,e){var i,n=e.categoryIx,s=e.category,o=e.series,r=e.seriesIx,a=this.pointType(),h=t.valueFields,l=Ot({},o),c=t.fields.color||o.color;return l=this.evalPointOptions(l,h,s,n,o,r),o.type===Ze&&h.open>h.close&&(c=t.fields.downColor||o.downColor||o.color),It(o.color)&&(c=l.color),l.vertical=!this.options.invertAxes,i=new a(h,l),i.color=c,i},splitValue:function(t){return[t.low,t.open,t.close,t.high]},updateRange:function(t,e){var i=e.series.axis,n=this.splitValue(t),s=this.valueAxisRanges[i];s=this.valueAxisRanges[i]=s||{min:ot,max:rt},s=this.valueAxisRanges[i]={min:Math.min.apply(Math,n.concat([s.min])),max:Math.max.apply(Math,n.concat([s.max]))}},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.open,i.high,i.low,i.close,t.category)},animationPoints:function(){return this.points}}),Ot(Cn.prototype,un),kn=Sn.extend({init:function(t,e){Sn.fn.init.call(this,t,e),this.createNote()},reflow:function(t){var e,i,n,s,o=this,r=o.options,a=o.value,h=o.owner,l=h.seriesValueAxis(r);this.boxSlot=i=l.getSlot(a.q1,a.q3),this.realBody=i,this.reflowBoxSlot(t),this.whiskerSlot=e=l.getSlot(a.lower,a.upper),this.reflowWhiskerSlot(t),n=l.getSlot(a.median),a.mean&&(s=l.getSlot(a.mean),this.meanPoints=this.calcMeanPoints(t,s)),this.whiskerPoints=this.calcWhiskerPoints(i,e),this.medianPoints=this.calcMedianPoints(t,n),this.box=e.clone().wrap(i),this.reflowNote()},reflowBoxSlot:function(t){this.boxSlot.x1=t.x1,this.boxSlot.x2=t.x2},reflowWhiskerSlot:function(t){this.whiskerSlot.x1=t.x1,this.whiskerSlot.x2=t.x2},calcMeanPoints:function(t,e){return[[[t.x1,e.y1],[t.x2,e.y1]]]},calcWhiskerPoints:function(t,e){var i=e.center().x;return[[[i-5,e.y1],[i+5,e.y1],[i,e.y1],[i,t.y1]],[[i-5,e.y2],[i+5,e.y2],[i,e.y2],[i,t.y2]]]},calcMedianPoints:function(t,e){return[[[t.x1,e.y1],[t.x2,e.y1]]]},renderOutliers:function(t){var e,i,n,s,o=this,r=this.value,a=r.outliers||[],h=3*Math.abs(r.q3-r.q1),l=[],c=t.markers||{};for(e=0;e<a.length;e++)i=a[e],c=i<r.q3+h&&i>r.q1-h?t.outliers:t.extremes,n=Ot({},c.border),wt(n.color)||(n.color=wt(o.color)?o.color:new ae(c.background).brightness(Ce).toHex()),s=new zt({type:c.type,width:c.size,height:c.size,rotation:c.rotation,background:c.background,border:n,opacity:c.opacity}),s.value=i,l.push(s);return this.reflowOutliers(l),l},reflowOutliers:function(t){var e,i,n,s=this,o=this.owner.seriesValueAxis(this.options),r=this.box.center();for(e=0;e<t.length;e++)i=t[e].value,n=o.getSlot(i),s.options.vertical?n.move(r.x):n.move(void 0,r.y),s.box=s.box.wrap(n),t[e].reflow(n)},mainVisual:function(t){var e,i,n=Sn.fn.mainVisual.call(this,t),s=this.renderOutliers(t);for(e=0;e<s.length;e++)i=s[e].getElement(),i&&n.append(i);return n},createLines:function(t,e){this.drawLines(t,e,this.whiskerPoints,e.whiskers),this.drawLines(t,e,this.medianPoints,e.median),this.drawLines(t,e,this.meanPoints,e.mean)},getBorderColor:function(){return(this.options.border||{}).color?this.options.border.color:this.color?this.color:Sn.fn.getBorderColor.call(this)}}),Tt(kn,{border:{_brightness:.8},line:{width:2},median:{color:"#f6f6f6"},mean:{width:2,dashType:"dash",color:"#f6f6f6"},overlay:{gradient:"glass"},tooltip:{format:"<table><tr><th colspan='2'>{6:d}</th></tr><tr><td>Lower:</td><td>{0:C}</td></tr><tr><td>Q1:</td><td>{1:C}</td></tr><tr><td>Median:</td><td>{2:C}</td></tr><tr><td>Mean:</td><td>{5:C}</td></tr><tr><td>Q3:</td><td>{3:C}</td></tr><tr><td>Upper:</td><td>{4:C}</td></tr></table>"},highlight:{opacity:1,border:{width:1,opacity:1},line:{width:1,opacity:1}},notes:{visible:!0,label:{}},outliers:{visible:!0,size:Le,type:st.CROSS,background:pt,border:{width:2,opacity:1},opacity:0},extremes:{visible:!0,size:Le,type:dt,background:pt,border:{width:2,opacity:1},opacity:0}}),Ot(kn.prototype,en),Pn=kn.extend({reflowBoxSlot:function(t){this.boxSlot.y1=t.y1,this.boxSlot.y2=t.y2},reflowWhiskerSlot:function(t){this.whiskerSlot.y1=t.y1,this.whiskerSlot.y2=t.y2},calcMeanPoints:function(t,e){return[[[e.x1,t.y1],[e.x1,t.y2]]]},calcWhiskerPoints:function(t,e){var i=e.center().y;return[[[e.x1,i-5],[e.x1,i+5],[e.x1,i],[t.x1,i]],[[e.x2,i-5],[e.x2,i+5],[e.x2,i],[t.x2,i]]]},calcMedianPoints:function(t,e){return[[[e.x1,t.y1],[e.x1,t.y2]]]}}),Tn=Cn.extend({addValue:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,a=e.seriesIx,h=this,l=h.children,c=h.options,p=t.valueFields,d=this.splitValue(p),g=u(d),f=r.data[s],v=this.categoryPoints[s];v||(this.categoryPoints[s]=v=[]),g&&(i=this.createPoint(t,e)),n=l[s],n||(n=new wn({vertical:c.invertAxes,gap:c.gap,spacing:c.spacing,rtl:!c.invertAxes&&(this.chartService||{}).rtl}),this.append(n)),i&&(this.updateRange(p,e),n.append(i),i.categoryIx=s,i.category=o,i.series=r,i.seriesIx=a,i.owner=this,i.dataItem=f),this.points.push(i),v.push(i)},pointType:function(){return this.options.invertAxes?Pn:kn},splitValue:function(t){return[t.lower,t.q1,t.median,t.q3,t.upper]},updateRange:function(t,e){var i=e.series.axis,n=this.valueAxisRanges[i],s=this.splitValue(t).concat(this.filterOutliers(t.outliers));wt(t.mean)&&(s=s.concat(t.mean)),n=this.valueAxisRanges[i]=n||{min:ot,max:rt},n=this.valueAxisRanges[i]={min:Math.min.apply(Math,s.concat([n.min])),max:Math.max.apply(Math,s.concat([n.max]))}},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.lower,i.q1,i.median,i.q3,i.upper,i.mean,t.category)},filterOutliers:function(t){var e,i,n=(t||[]).length,s=[];for(e=0;e<n;e++)i=t[e],wt(i)&&null!==i&&s.push(i);return s},supportsPointInactiveOpacity:function(){return!1}}),En=Qi.extend({getAxis:function(){var t=this.chart.seriesAxes(this.series),e=this.isVertical?t.y:t.x;return e}}),In=St.extend({init:function(t,e){St.fn.init.call(this,e),this.plotArea=t,this.chartService=t.chartService,this._initFields(),this.render()},_initFields:function(){this.xAxisRanges={},this.yAxisRanges={},this.points=[],this.seriesPoints=[],this.seriesOptions=[],this._evalSeries=[]},render:function(){this.traverseDataPoints(this.addValue.bind(this))},addErrorBar:function(t,e,i){var n,s=t.value[e],o=e+"Value",r=e+"ErrorLow",a=e+"ErrorHigh",h=i.seriesIx,l=i.series,c=t.options.errorBars,u=i[r],p=i[a];nt(s)&&(nt(u)&&nt(p)&&(n={low:u,high:p}),c&&wt(c[o])&&(this.seriesErrorRanges=this.seriesErrorRanges||{x:[],y:[]},this.seriesErrorRanges[e][h]=this.seriesErrorRanges[e][h]||new _e(c[o],l,e),n=this.seriesErrorRanges[e][h].getErrorRange(s,c[o])),n&&this.addPointErrorBar(n,t,e))},addPointErrorBar:function(t,e,i){var n,s=t.low,o=t.high,r=e.series,a=e.options.errorBars,h=i===ft,l={};e[i+"Low"]=s,e[i+"High"]=o,e.errorBars=e.errorBars||[],n=new En(s,o,h,this,r,a),e.errorBars.push(n),e.append(n),l[i]=s,this.updateRange(l,r),l[i]=o,this.updateRange(l,r)},addValue:function(e,i){var n,s=e.x,o=e.y,r=i.seriesIx,a=this.options.series[r],h=this.seriesMissingValues(a),l=this.seriesPoints[r],c=e;p(s)&&p(o)||(c=this.createMissingValue(c,h)),c&&(n=this.createPoint(c,i),n&&(t.extend(n,i),this.addErrorBar(n,gt,i),this.addErrorBar(n,ft,i)),this.updateRange(c,i.series)),this.points.push(n),l.push(n)},seriesMissingValues:function(t){return t.missingValues},createMissingValue:function(){},updateRange:function(t,e){var i=this.chartService.intl,n=e.xAxis,s=e.yAxis,o=t.x,r=t.y,a=this.xAxisRanges[n],h=this.yAxisRanges[s];p(o)&&(a=this.xAxisRanges[n]=a||{min:ot,max:rt},Gt(o)&&(o=qt(i,o)),a.min=Math.min(a.min,o),a.max=Math.max(a.max,o)),p(r)&&(h=this.yAxisRanges[s]=h||{min:ot,max:rt},Gt(r)&&(r=qt(i,r)),h.min=Math.min(h.min,r),h.max=Math.max(h.max,r))},evalPointOptions:function(t,e,i){var n,o=i.series,r=i.seriesIx,a={defaults:o._defaults,excluded:["data","tooltip","content","template","visual","toggle","_outOfRangeMinPoint","_outOfRangeMaxPoint"]},h=this._evalSeries[r];return wt(h)||(this._evalSeries[r]=h=s(t,{},a,!0)),n=t,h&&(n=Ot({},t),s(n,{value:e,series:o,dataItem:i.dataItem},a)),n},pointType:function(){return sn},pointOptions:function(t,e){var i,n=this.seriesOptions[e];return n||(i=this.pointType().prototype.defaults,this.seriesOptions[e]=n=Ot({},i,{markers:{opacity:t.opacity},tooltip:{format:this.options.tooltip.format},labels:{format:this.options.labels.format}},t)),n},createPoint:function(t,e){var i,n=e.series,s=this.pointOptions(n,e.seriesIx),o=e.color||n.color;return s=this.evalPointOptions(s,t,e),It(n.color)&&(o=s.color),i=new sn(t,s),i.color=o,this.append(i),i},seriesAxes:function(t){var e=t.xAxis,i=t.yAxis,n=this.plotArea,s=e?n.namedXAxes[e]:n.axisX,o=i?n.namedYAxes[i]:n.axisY;if(!s)throw Error("Unable to locate X axis with name "+e);if(!o)throw Error("Unable to locate Y axis with name "+i);return{x:s,y:o}},reflow:function(t){var e=this,i=this.points,n=!this.options.clip,s=0;this.traverseDataPoints(function(t,o){var r,a=i[s++],h=e.seriesAxes(o.series),l=h.x.getSlot(t.x,t.x,n),c=h.y.getSlot(t.y,t.y,n);a&&(l&&c?(r=e.pointSlot(l,c),a.reflow(r)):a.visible=!1)}),this.box=t},pointSlot:function(t,e){return new kt(t.x1,e.y1,t.x2,e.y2)},traverseDataPoints:function(t){var e,i,n,s,o,r,a,h=this,l=this,c=l.options.series,u=l.seriesPoints;for(e=0;e<c.length;e++)for(i=c[e],n=u[e],n||(u[e]=[]),s=0;s<i.data.length;s++)o=h._bindPoint(i,e,s),r=o.valueFields,a=o.fields,t(r,Ot({pointIx:s,series:i,seriesIx:e,dataItem:i.data[s],owner:h},a))},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.x,i.y)},animationPoints:function(){var t,e=this.points,i=[];for(t=0;t<e.length;t++)i.push((e[t]||{}).marker);return i}}),Tt(In,{series:[],tooltip:{format:"{0}, {1}"},labels:{format:"{0}, {1}"},clip:!0}),Ot(In.prototype,un,{_bindPoint:tn.prototype._bindPoint}),Rn=sn.extend({init:function(t,e){sn.fn.init.call(this,t,e),this.category=t.category},createHighlight:function(){var t=this.options.highlight,e=t.border,i=this.options.markers,n=this.box.center(),s=(i.size+i.border.width+e.width)/2,o=new re,r=new ie.Circle(new he.Circle([n.x,n.y+s/5+e.width/2],s+e.width/2),{stroke:{color:"none"},fill:this.createGradient({gradient:"bubbleShadow",color:i.background,stops:[{offset:0,color:i.background,opacity:.3},{offset:1,color:i.background,opacity:0}]})}),a=new ie.Circle(new he.Circle([n.x,n.y],s),{stroke:{color:e.color||new ae(i.background).brightness(Ce).toHex(),width:e.width,opacity:e.opacity},fill:{color:i.background,opacity:t.opacity}});return o.append(r,a),o}}),Rn.prototype.defaults=Ot({},Rn.prototype.defaults,{labels:{position:ht},highlight:{opacity:1,border:{color:"#fff",width:2,opacity:1}}}),Rn.prototype.defaults.highlight.zIndex=void 0,Vn=In.extend({_initFields:function(){this._maxSize=rt,In.fn._initFields.call(this)},addValue:function(t,e){null!==t.size&&(t.size>0||t.size<0&&e.series.negativeValues.visible)?(this._maxSize=Math.max(this._maxSize,Math.abs(t.size)),In.fn.addValue.call(this,t,e)):(this.points.push(null),this.seriesPoints[e.seriesIx].push(null))},reflow:function(t){this.updateBubblesSize(t),In.fn.reflow.call(this,t)},pointType:function(){return Rn},createPoint:function(t,e){var i,n,s=e.series,o=s.data.length,r=e.pointIx*(be/o),a={delay:r,duration:be-r,type:Ue},h=e.color||s.color;return t.size<0&&s.negativeValues.visible&&(h=Rt(s.negativeValues.color,h)),i=Ot({labels:{animation:{delay:r,duration:be-r}}},this.pointOptions(s,e.seriesIx),{markers:{type:dt,border:s.border,opacity:s.opacity,animation:a}}),i=this.evalPointOptions(i,t,e),It(s.color)&&(h=i.color),i.markers.background=h,n=new Rn(t,i),n.color=h,this.append(n),n},updateBubblesSize:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m=this,y=this,_=y.options.series,w=Math.min(t.width(),t.height());for(e=0;e<_.length;e++)for(i=_[e],n=m.seriesPoints[e],s=i.minSize||Math.max(.02*w,10),o=i.maxSize||.2*w,r=s/2,a=o/2,h=Math.PI*r*r,l=Math.PI*a*a,c=l-h,u=c/m._maxSize,p=0;p<n.length;p++)d=n[p],d&&(g=Math.abs(d.value.size)*u,f=Math.sqrt((h+g)/Math.PI),v=Rt(d.options.zIndex,0),x=v+(1-f/a),Ot(d.options,{zIndex:x,markers:{size:2*f,zIndex:x},labels:{zIndex:x+1}}))},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.x,i.y,i.size,t.category)},createAnimation:function(){},createVisual:function(){}}),Tt(Vn,{tooltip:{format:"{3}"},labels:{format:"{3}"}}),On=zt.extend({}),Ot(On.prototype,en),Ln=St.extend({init:function(t,e){St.fn.init.call(this,e),this.aboveAxis=this.options.aboveAxis,this.color=e.color||pt,this.value=t},render:function(){var t=this.options;this._rendered||(this._rendered=!0,wt(this.value.target)&&(this.target=new On({type:t.target.shape,background:t.target.color||this.color,opacity:t.opacity,zIndex:t.zIndex,border:t.target.border,vAlign:lt,align:vt}),this.target.value=this.value,this.target.dataItem=this.dataItem,this.target.series=this.series,this.append(this.target)),this.createNote())},reflow:function(t){var e,i,n,s,o,r,a,h,l,c,u;this.render(),e=this,i=e.options,n=e.target,s=e.owner,o=i.invertAxes,r=s.seriesValueAxis(this.options),a=s.categorySlot(s.categoryAxis,i.categoryIx,r),h=r.getSlot(this.value.target),l=o?h:a,c=o?a:h,n&&(u=new kt(l.x1,c.y1,l.x2,c.y2),n.options.height=o?u.height():i.target.line.width,n.options.width=o?i.target.line.width:u.width(),n.reflow(u)),this.note&&this.note.reflow(t),this.box=t},createVisual:function(){var t,e;St.fn.createVisual.call(this),t=this.options,e=ne.fromRect(this.box.toRect(),{fill:{color:this.color,opacity:t.opacity},stroke:null}),t.border.width>0&&e.options.set("stroke",{color:t.border.color||this.color,width:t.border.width,dashType:t.border.dashType,opacity:Rt(t.border.opacity,t.opacity)}),this.bodyVisual=e,Pt(e),this.visual.append(e)},createAnimation:function(){this.bodyVisual&&(this.animation=se.create(this.bodyVisual,this.options.animation))},createHighlight:function(t){return ne.fromRect(this.box.toRect(),t)},highlightVisual:function(){return this.bodyVisual},highlightVisualArgs:function(){return{rect:this.box.toRect(),visual:this.bodyVisual,options:this.options}},formatValue:function(t){return this.owner.formatPointValue(this,t)}}),Ln.prototype.tooltipAnchor=_n.prototype.tooltipAnchor,Tt(Ln,{border:{width:1},vertical:!1,opacity:1,target:{shape:"",border:{width:0,color:"green"},line:{width:2}},tooltip:{format:"Current: {0}<br />Target: {1}"}}),Ot(Ln.prototype,en),Ot(Ln.prototype,nn),Mn=tn.extend({init:function(t,e){d(e),tn.fn.init.call(this,t,e)},reflowCategories:function(t){var e,i=this.children,n=i.length;for(e=0;e<n;e++)i[e].reflow(t[e])},plotRange:function(t){var e=t.series,i=this.seriesValueAxis(e),n=this.categoryAxisCrossingValue(i);
return[n,t.value.current||n]},createPoint:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,a=e.seriesIx,h=this,l=h.options,c=h.children,u=t.valueFields,p=Ot({vertical:!l.invertAxes,overlay:r.overlay,categoryIx:s,invertAxes:l.invertAxes},r),d=t.fields.color||r.color;return p=this.evalPointOptions(p,u,o,s,r,a),It(r.color)&&(d=p.color),i=new Ln(u,p),i.color=d,n=c[s],n||(n=new wn({vertical:l.invertAxes,gap:l.gap,spacing:l.spacing,rtl:!l.invertAxes&&(this.chartService||{}).rtl}),this.append(n)),n.append(i),i},updateRange:function(t,e){var i=t.current,n=t.target,s=e.series.axis,o=this.valueAxisRanges[s];wt(i)&&!isNaN(i)&&wt(n&&!isNaN(n))&&(o=this.valueAxisRanges[s]=o||{min:ot,max:rt},o.min=Math.min(o.min,i,n),o.max=Math.max(o.max,i,n))},formatPointValue:function(t,e){return this.chartService.format.auto(e,t.value.current,t.value.target)},pointValue:function(t){return t.valueFields.current},aboveAxis:function(t){var e=t.value.current;return e>0},createAnimation:function(){var t,e,i=this,n=this.points;for(this._setAnimationOptions(),t=0;t<n.length;t++)e=n[t],e.options.animation=i.options.animation,e.createAnimation()}}),Mn.prototype._setAnimationOptions=An.prototype._setAnimationOptions,Tt(Mn,{animation:{type:qe}}),Bn=it.extend({init:function(t,e){this.chartService=t,this.options=Ot({},this.options,e)},getStyle:function(t,e){var i,n,s=t.background,o=t.border.color;return e&&(i=e.color||e.options.color,s=Rt(s,i),o=Rt(o,i)),n=Dt(t.padding||{},"auto"),{backgroundColor:s,borderColor:o,font:t.font,color:t.color,opacity:t.opacity,borderWidth:Wt(t.border.width),paddingTop:Wt(n.top),paddingBottom:Wt(n.bottom),paddingLeft:Wt(n.left),paddingRight:Wt(n.right)}},show:function(t,e,i){t.format=e.format;var n=this.getStyle(e,i);t.style=n,!wt(e.color)&&new ae(n.backgroundColor).percBrightness()>180&&(t.className="k-chart-tooltip-inverse"),this.chartService.notify(Di,t),this.visible=!0},hide:function(){this.chartService&&this.chartService.notify(Fi),this.visible=!1},destroy:function(){delete this.chartService}}),Tt(Bn,{border:{width:1},opacity:1}),Hn=Bn.extend({init:function(t,e,i){Bn.fn.init.call(this,t,i),this.crosshair=e,this.formatService=t.format,this.initAxisName()},initAxisName:function(){var t,e=this.crosshair.axis,i=e.plotArea;t=i.categoryAxis?e.getCategory?"categoryAxis":"valueAxis":e.options.vertical?"yAxis":"xAxis",this.axisName=t},showAt:function(t){var e=this,i=e.crosshair.axis,n=e.options,s=i[n.stickyMode?"getCategory":"getValue"](t),o=s;n.format?o=this.formatService.auto(n.format,s):i.options.type===mt&&(o=this.formatService.auto(i.options.labels.dateFormats[i.options.baseUnit],s)),this.show({point:t,anchor:this.getAnchor(),crosshair:this.crosshair,value:o,axisName:this.axisName,axisIndex:this.crosshair.axis.axisIndex},this.options)},hide:function(){this.chartService.notify(Fi,{crosshair:this.crosshair,axisName:this.axisName,axisIndex:this.crosshair.axis.axisIndex})},getAnchor:function(){var t,e,i,n=this,s=n.crosshair,o=n.options,r=o.position,a=o.padding,h=!s.axis.options.vertical,l=s.line.bbox();return h?(t=ht,r===ct?(e=lt,i=l.bottomLeft().translate(0,a)):(e=ct,i=l.topLeft().translate(0,-a))):(e=ht,r===ut?(t=vt,i=l.topLeft().translate(-a,0)):(t=ut,i=l.topRight().translate(a,0))),{point:i,align:{horizontal:t,vertical:e}}}}),Tt(Hn,{padding:10}),zn=St.extend({init:function(t,e,i){St.fn.init.call(this,i),this.axis=e,this.stickyMode=e instanceof Ut;var n=this.options.tooltip;n.visible&&(this.tooltip=new Hn(t,this,Ot({},n,{stickyMode:this.stickyMode})))},showAt:function(t){this.point=t,this.moveLine(),this.line.visible(!0),this.tooltip&&this.tooltip.showAt(t)},hide:function(){this.line.visible(!1),this.tooltip&&this.tooltip.hide()},moveLine:function(){var t,e,i=this,n=i.axis,s=i.point,o=n.options.vertical,r=this.getBox(),a=o?ft:gt,h=new le(r.x1,r.y1);t=o?new le(r.x2,r.y1):new le(r.x1,r.y2),s&&(this.stickyMode?(e=n.getSlot(n.pointCategoryIndex(s)),h[a]=t[a]=e.center()[a]):h[a]=t[a]=s[a]),this.box=r,this.line.moveTo(h).lineTo(t)},getBox:function(){var t,e,i,n=this.axis,s=n.pane.axes,o=s.length,r=n.options.vertical,a=n.lineBox().clone(),h=r?gt:ft;for(e=0;e<o;e++)i=s[e],i.options.vertical!==r&&(t?t.wrap(i.lineBox()):t=i.lineBox().clone());return a[h+1]=t[h+1],a[h+2]=t[h+2],a},createVisual:function(){St.fn.createVisual.call(this);var t=this.options;this.line=new ne({stroke:{color:t.color,width:t.width,opacity:t.opacity,dashType:t.dashType},visible:!1}),this.moveLine(),this.visual.append(this.line)},destroy:function(){this.tooltip&&this.tooltip.destroy(),St.fn.destroy.call(this)}}),Tt(zn,{color:xt,width:2,zIndex:-1,tooltip:{visible:!1}}),Dn=St.extend({init:function(t,e){St.fn.init.call(this,t),this.pane=e},shouldClip:function(){var t,e=this.children,i=e.length;for(t=0;t<i;t++)if(e[t].options.clip===!0)return!0;return!1},_clipBox:function(){return this.pane.chartsBox()},createVisual:function(){var t,e,i;this.visual=new re({zIndex:0}),this.shouldClip()&&(t=this.clipBox=this._clipBox(),e=t.toRect(),i=ne.fromRect(e),Pt(i),this.visual.clip(i),this.unclipLabels())},stackRoot:function(){return this},unclipLabels:function(){var t,e,i,n,s,o,r,a=this,h=a.children,l=a.clipBox;for(t=0;t<h.length;t++)for(e=h[t].points||{},i=e.length,n=0;n<i;n++)s=e[n],s&&s.visible!==!1&&s.overlapsBox&&s.overlapsBox(l)&&(s.unclipElements?s.unclipElements():(o=s.label,r=s.note,o&&o.options.visible&&(o.alignToClipBox&&o.alignToClipBox(l),o.options.noclip=!0),r&&r.options.visible&&(r.options.noclip=!0)))},destroy:function(){St.fn.destroy.call(this),delete this.parent}}),Dn.prototype.isStackRoot=!0,Fn=Xt.extend({init:function(t){Xt.fn.init.call(this,t),this.id=g(),this.createTitle(),this.content=new St,this.chartContainer=new Dn({},this),this.append(this.content),this.axes=[],this.charts=[]},createTitle:function(){var t=this.options.title;Vt(t)&&(t=Ot({},t,{align:t.position,position:lt})),this.title=et.Title.buildTitle(t,this,Fn.prototype.options.title)},appendAxis:function(t){this.content.append(t),this.axes.push(t),t.pane=this},appendAxisAt:function(t,e){this.content.append(t),this.axes.splice(e,0,t),t.pane=this},appendChart:function(t){this.chartContainer.parent!==this.content&&this.content.append(this.chartContainer),this.charts.push(t),this.chartContainer.append(t),t.pane=this},empty:function(){var t,e,i=this,n=this.parent;if(n){for(t=0;t<this.axes.length;t++)n.removeAxis(i.axes[t]);for(e=0;e<this.charts.length;e++)n.removeChart(i.charts[e])}this.axes=[],this.charts=[],this.content.destroy(),this.content.children=[],this.chartContainer.children=[]},reflow:function(t){var e;Lt(this.children)===this.content&&(e=this.children.pop()),Xt.fn.reflow.call(this,t),e&&this.children.push(e),this.title&&(this.contentBox.y1+=this.title.box.height())},visualStyle:function(){var t=Xt.fn.visualStyle.call(this);return t.zIndex=-10,t},renderComplete:function(){this.options.visible&&this.createGridLines()},stackRoot:function(){return this},clipRoot:function(){return this},createGridLines:function(){var t,e,i,n,s,o,r=this.axes,a=r.concat(this.parent.axes),h=[],l=[];for(t=0;t<r.length;t++)for(e=r[t],i=e.options.vertical,n=i?h:l,s=0;s<a.length;s++)0===n.length&&(o=a[s],i!==o.options.vertical&&Nt(n,e.createGridLines(o)))},refresh:function(){this.visual.clear(),this.content.parent=null,this.content.createGradient=this.createGradient.bind(this),this.content.renderVisual(),this.content.parent=this,this.title&&this.visual.append(this.title.visual),this.visual.append(this.content.visual),this.renderComplete(),this.notifyRender()},chartsBox:function(){var t,e,i,n,s,o,r,a,h,l=this.axes,c=l.length,u=new kt;for(t=0;t<c;t++)e=l[t],i=e.options.vertical?ft:gt,n=e.lineBox(),u[i+1]=n[i+1],u[i+2]=n[i+2];if(0===u.x2)for(s=this.parent.axes,o=s.length,r=0;r<o;r++)a=s[r],a.options.vertical||(h=a.lineBox(),u.x1=h.x1,u.x2=h.x2);return u},clipBox:function(){return this.chartContainer.clipBox},notifyRender:function(){var t=this.getService();t&&t.notify(Ni,{pane:new pe(this),index:this.paneIndex,name:this.options.name})}}),Nn=1,Fn.prototype.isStackRoot=!0,Tt(Fn,{zIndex:-1,shrinkToFit:!0,title:{align:ut},visible:!0}),Gn=/area/i,qn=St.extend({init:function(t,e,i){St.fn.init.call(this,e),this.initFields(t,e),this.series=t,this.initSeries(),this.charts=[],this.options.legend=this.options.legend||{},this.options.legend.items=[],this.axes=[],this.crosshairs=[],this.chartService=i,this.originalOptions=e,this.createPanes(),this.render(),this.createCrosshairs()},initFields:function(){},initSeries:function(){var t,e=this.series;for(t=0;t<e.length;t++)e[t].index=t},createPanes:function(){function t(t,e){Gt(t.title)&&(t.title={text:t.title}),t.title=Ot({},e.title,t.title)}var e,i,n,s=this,o={title:{color:(this.options.title||{}).color}},r=[],a=this.options.panes||[],h=Math.max(a.length,1);for(e=0;e<h;e++)i=a[e]||{},t(i,o),n=new Fn(i),n.paneIndex=e,r.push(n),s.append(n);this.panes=r},createCrosshairs:function(t){var e,i,n,s,o,r=this;for(void 0===t&&(t=this.panes),e=0;e<t.length;e++)for(i=t[e],n=0;n<i.axes.length;n++)s=i.axes[n],s.options.crosshair&&s.options.crosshair.visible&&(o=new zn(r.chartService,s,s.options.crosshair),r.crosshairs.push(o),i.content.append(o))},removeCrosshairs:function(t){var e,i,n=this.crosshairs,s=t.axes;for(e=n.length-1;e>=0;e--)for(i=0;i<s.length;i++)if(n[e].axis===s[i]){n.splice(e,1);break}},hideCrosshairs:function(){var t,e=this.crosshairs;for(t=0;t<e.length;t++)e[t].hide()},findPane:function(t){var e,i,n=this.panes;for(i=0;i<n.length;i++)if(n[i].options.name===t){e=n[i];break}return e||n[0]},findPointPane:function(t){var e,i,n=this.panes;for(i=0;i<n.length;i++)if(n[i].box.containsPoint(t)){e=n[i];break}return e},appendAxis:function(t){var e=this.findPane(t.options.pane);e.appendAxis(t),this.axes.push(t),t.plotArea=this},removeAxis:function(t){var e,i,n=this,s=[];for(e=0;e<this.axes.length;e++)i=n.axes[e],t!==i?s.push(i):i.destroy();this.axes=s},appendChart:function(t,e){this.charts.push(t),e?e.appendChart(t):this.append(t)},removeChart:function(t){var e,i,n=this,s=[];for(e=0;e<this.charts.length;e++)i=n.charts[e],i!==t?s.push(i):i.destroy();this.charts=s},addToLegend:function(t){var e,i,n,s,o,r,a,h,l,c=t.length,u=this.options.legend,d=u.labels||{},g=u.inactiveItems||{},f=g.labels||{},v=[];for(e=0;e<c;e++)i=t[e],n=i.visible!==!1,i.visibleInLegend!==!1&&(s=i.name,o=n?Bt(d):Bt(f)||Bt(d),o&&(s=o({text:p(s)?s:"",series:i})),r=i._defaults,a=i.color,It(a)&&r&&(a=r.color),h=void 0,l=void 0,n?(h={},l=a):(h={color:f.color,font:f.font},l=g.markers.color),p(s)&&""!==s&&v.push({text:s,labels:h,markerColor:l,series:i,active:n}));Nt(u.items,v)},groupAxes:function(t){var e,i,n,s,o=[],r=[];for(e=0;e<t.length;e++)for(i=t[e].axes,n=0;n<i.length;n++)s=i[n],s.options.vertical?r.push(s):o.push(s);return{x:o,y:r,any:o.concat(r)}},groupSeriesByPane:function(){var t,e,i,n=this,s=this.series,o={};for(t=0;t<s.length;t++)e=s[t],i=n.seriesPaneName(e),o[i]?o[i].push(e):o[i]=[e];return o},filterVisibleSeries:function(t){var e,i,n=[];for(e=0;e<t.length;e++)i=t[e],i.visible!==!1&&n.push(i);return n},reflow:function(t){var e=this.options.plotArea,i=this.panes,n=Dt(e.margin);this.box=t.clone().unpad(n),this.reflowPanes(),this.detachLabels(),this.reflowAxes(i),this.reflowCharts(i)},redraw:function(t){var e,i,n,s=this,o=[].concat(t);for(this.initSeries(),e=this.getRoot(),e&&e.cleanGradients(),i=0;i<o.length;i++)s.removeCrosshairs(o[i]),o[i].empty();for(this.render(o),this.detachLabels(),this.reflowAxes(this.panes),this.reflowCharts(o),this.createCrosshairs(o),n=0;n<o.length;n++)o[n].refresh()},axisCrossingValues:function(t,e){var i,n=t.options,s=[].concat(n.axisCrossingValues||n.axisCrossingValue),o=e.length-s.length,r=s[0]||0;for(i=0;i<o;i++)s.push(r);return s},alignAxisTo:function(t,e,i,n){var s=t.getSlot(i,i,!0),o=t.options.reverse?2:1,r=e.getSlot(n,n,!0),a=e.options.reverse?2:1,h=t.box.translate(r[gt+a]-s[gt+o],r[ft+a]-s[ft+o]);t.pane!==e.pane&&h.translate(0,t.pane.box.y1-e.pane.box.y1),t.reflow(h)},alignAxes:function(t,e){var i,n,s,o,r,a,h,l,c,u,p,d,g,f,v=this,x=t[0],m=e[0],y=this.axisCrossingValues(x,e),_=this.axisCrossingValues(m,t),w={},b={},A={},S={};for(i=0;i<e.length;i++)n=e[i],s=n.pane,o=s.id,r=n.options.visible!==!1,a=E(t,s)||x,h=y,a!==x&&(h=v.axisCrossingValues(a,e)),v.alignAxisTo(n,a,_[i],h[i]),n.options._overlap||(Zt(n.lineBox().x1)===Zt(a.lineBox().x1)&&(w[o]&&n.reflow(n.box.alignTo(w[o].box,ut).translate(-n.options.margin,0)),r&&(w[o]=n)),Zt(n.lineBox().x2)===Zt(a.lineBox().x2)&&(n._mirrored||(n.options.labels.mirror=!n.options.labels.mirror,n._mirrored=!0),v.alignAxisTo(n,a,_[i],h[i]),b[o]&&n.reflow(n.box.alignTo(b[o].box,vt).translate(n.options.margin,0)),r&&(b[o]=n)),0!==i&&m.pane===n.pane&&(n.alignTo(m),n.reflow(n.box)));for(l=0;l<t.length;l++)c=t[l],u=c.pane,p=u.id,d=c.options.visible!==!1,g=E(e,u)||m,f=_,g!==m&&(f=v.axisCrossingValues(g,t)),v.alignAxisTo(c,g,y[l],f[l]),c.options._overlap||(Zt(c.lineBox().y1)===Zt(g.lineBox().y1)&&(c._mirrored||(c.options.labels.mirror=!c.options.labels.mirror,c._mirrored=!0),v.alignAxisTo(c,g,y[l],f[l]),A[p]&&c.reflow(c.box.alignTo(A[p].box,lt).translate(0,-c.options.margin)),d&&(A[p]=c)),Zt(c.lineBox().y2,st.COORD_PRECISION)===Zt(g.lineBox().y2,st.COORD_PRECISION)&&(S[p]&&c.reflow(c.box.alignTo(S[p].box,ct).translate(0,c.options.margin)),d&&(S[p]=c)),0!==l&&(c.alignTo(x),c.reflow(c.box)))},shrinkAxisWidth:function(t){var e,i,n,s,o=this.groupAxes(t).any,r=T(o),a=0;for(e=0;e<t.length;e++)i=t[e],i.axes.length>0&&(a=Math.max(a,r.width()-i.contentBox.width()));if(0!==a)for(n=0;n<o.length;n++)s=o[n],s.options.vertical||s.reflow(s.box.shrink(a,0))},shrinkAxisHeight:function(t){var e,i,n,s,o,r,a;for(i=0;i<t.length;i++)if(n=t[i],s=n.axes,o=Math.max(0,T(s).height()-n.contentBox.height()),0!==o){for(r=0;r<s.length;r++)a=s[r],a.options.vertical&&a.reflow(a.box.shrink(0,o));e=!0}return e},fitAxes:function(t){var e,i,n,s,o,r,a,h,l,c,u=this.groupAxes(t).any,p=0;for(e=0;e<t.length;e++)if(i=t[e],n=i.axes,s=i.contentBox,n.length>0)for(o=T(n),r=Math.max(s.y1-o.y1,s.y2-o.y2),p=Math.max(p,s.x1-o.x1),a=0;a<n.length;a++)h=n[a],h.reflow(h.box.translate(0,r));for(l=0;l<u.length;l++)c=u[l],c.reflow(c.box.translate(p,0))},reflowAxes:function(t){var e,i=this,n=this.groupAxes(t);for(e=0;e<t.length;e++)i.reflowPaneAxes(t[e]);n.x.length>0&&n.y.length>0&&(this.alignAxes(n.x,n.y),this.shrinkAxisWidth(t),this.autoRotateAxisLabels(n),this.alignAxes(n.x,n.y),this.shrinkAxisWidth(t)&&this.alignAxes(n.x,n.y),this.shrinkAxisHeight(t),this.alignAxes(n.x,n.y),this.shrinkAxisHeight(t)&&this.alignAxes(n.x,n.y),this.fitAxes(t))},autoRotateAxisLabels:function(t){var e,i,n,s,o=this,r=this,a=r.panes,h=Wn(a);for(i=0;i<h.length;i++)n=h[i],n.autoRotateLabels()&&(e=!0);if(e){for(s=0;s<a.length;s++)o.reflowPaneAxes(a[s]);t.x.length>0&&t.y.length>0&&(this.alignAxes(t.x,t.y),this.shrinkAxisWidth(a))}},reflowPaneAxes:function(t){var e,i=t.axes,n=i.length;if(n>0)for(e=0;e<n;e++)i[e].reflow(t.contentBox)},reflowCharts:function(t){var e,i,n=this.charts,s=n.length,o=this.box;for(e=0;e<s;e++)i=n[e].pane,i&&!Et(i,t)||n[e].reflow(o)},reflowPanes:function(){var t,e,i,n,s,o,r,a,h,l=this,c=l.box,u=l.panes,p=u.length,d=c.height(),g=p,f=0,v=c.y1;for(t=0;t<p;t++)e=u[t],i=e.options.height,e.options.width=c.width(),e.options.height?(i.indexOf&&i.indexOf("%")&&(n=parseInt(i,10)/100,e.options.height=n*c.height()),e.reflow(c.clone()),d-=e.options.height):f++;for(s=0;s<p;s++)o=u[s],o.options.height||(o.options.height=d/f);for(r=0;r<p;r++)a=u[r],h=c.clone().move(c.x1,v),a.reflow(h),g--,v+=a.options.height},backgroundBox:function(){var t,e,i,n,s,o,r=this.axes,a=r.length;for(e=0;e<a;e++)for(i=r[e],n=0;n<a;n++)s=r[n],i.options.vertical!==s.options.vertical&&(o=i.lineBox().clone().wrap(s.lineBox()),t=t?t.wrap(o):o);return t||this.box},chartsBoxes:function(){var t,e=this.panes,i=[];for(t=0;t<e.length;t++)i.push(e[t].chartsBox());return i},addBackgroundPaths:function(t){var e,i=this.chartsBoxes();for(e=0;e<i.length;e++)t.paths.push(ne.fromRect(i[e].toRect()))},backgroundContainsPoint:function(t){var e,i=this.chartsBoxes();for(e=0;e<i.length;e++)if(i[e].containsPoint(t))return!0},createVisual:function(){var t,e,i,n,s;St.fn.createVisual.call(this),t=this.options.plotArea,e=t.opacity,i=t.background,n=t.border,void 0===n&&(n={}),I(i)&&(i=pt,e=0),s=this._bgVisual=new ie.MultiPath({fill:{color:i,opacity:e},stroke:{color:n.width?n.color:"",width:n.width,dashType:n.dashType},zIndex:-1}),this.addBackgroundPaths(s),this.appendVisual(s)},pointsByCategoryIndex:function(t){var e,i,n,s,o,r=this.charts,a=[];if(null!==t)for(e=0;e<r.length;e++)if(i=r[e],"_navigator"!==i.pane.options.name&&(n=r[e].categoryPoints[t],n&&n.length))for(s=0;s<n.length;s++)o=n[s],o&&wt(o.value)&&null!==o.value&&a.push(o);return a},pointsBySeriesIndex:function(t){return this.filterPoints(function(e){return e.series.index===t})},pointsBySeriesName:function(t){return this.filterPoints(function(e){return e.series.name===t})},filterPoints:function(t){var e,i,n,s,o,r=this.charts,a=[];for(e=0;e<r.length;e++)for(i=r[e],n=i.points,s=0;s<n.length;s++)o=n[s],o&&o.visible!==!1&&t(o)&&a.push(o);return a},findPoint:function(t){var e,i,n,s,o,r=this.charts;for(e=0;e<r.length;e++)for(i=r[e],n=i.points,s=0;s<n.length;s++)if(o=n[s],o&&o.visible!==!1&&t(o))return o},paneByPoint:function(t){var e,i,n=this.panes;for(e=0;e<n.length;e++)if(i=n[e],i.box.containsPoint(t))return i},detachLabels:function(){var t=this.groupAxes(this.panes),e=t.x,i=t.y;this.detachAxisGroupLabels(i,e),this.detachAxisGroupLabels(e,i)},detachAxisGroupLabels:function(t,e){var i,n,s,o,r,a,h,l=this,c=0;for(i=0;i<t.length;i++)n=t[i],s=n.pane,o=E(e,s)||e[0],r=i+c,a=l.createLabelAxis(n,r,o),a&&(c++,h=s.axes.indexOf(n)+c,s.appendAxisAt(a,h))},createLabelAxis:function(t,e,i){var n,s,o,r,a,h,l,c,u=t.options.labels,p=u.position,d=p!==st.END&&p!==st.START,g=u.visible;return d||g===!1?null:(n=this.groupAxes(this.panes),s=i.options.vertical?n.x:n.y,o=this.axisCrossingValues(i,s),r=p===st.END,a=i.range(),h=r?a.max:a.min,l=Yt(o[e],a.min,a.max),l-h===0?null:(o.splice(e+1,0,h),i.options.axisCrossingValues=o,c=t.clone(),t.clear(),c.options.name=void 0,c.options.line.visible=!1,c.options.crosshair=void 0,c.options.notes=void 0,c.options.plotBands=void 0,c))}}),Wn=function(t){return t.reduce(function(t,e){return t.concat(e.axes)},[])},Tt(qn,{series:[],plotArea:{margin:{}},background:"",border:{color:xt,width:0},legend:{inactiveItems:{labels:{color:"#919191"},markers:{color:"#919191"}}}}),Un={hover:function(t,e){this._dispatchEvent(t,e,Pi)},click:function(t,e){this._dispatchEvent(t,e,ki)}},Xn=it.extend({init:function(t,e,i){var n,s,o,r=e.canonicalFields(t),a=e.valueFields(t),h=e.sourceFields(t,r),l=this._seriesFields=[],c=i.query(t.type),u=t.aggregate||c;for(this._series=t,this._binder=e,n=0;n<r.length;n++){if(s=r[n],o=void 0,Vt(u))o=u[s];else{if(0!==n&&!Et(s,a))break;o=u}o&&l.push({canonicalName:s,name:h[n],transform:It(o)?o:ge[o]})}},aggregatePoints:function(t,e){var i,n,s,o,r,a=this,h=this,l=h._series,c=h._seriesFields,u=this._bindPoints(t||[]),p=u.dataItems[0],d={};for(!p||nt(p)||At(p)||(i=function(){},i.prototype=p,d=new i),n=0;n<c.length;n++){if(s=c[n],o=a._bindField(u.values,s.canonicalName),r=s.transform(o,l,u.dataItems,e),!(null===r||!Vt(r)||wt(r.length)||r instanceof Date)){d=r;break}wt(r)&&R(s.name,d,r)}return d},_bindPoints:function(t){var e,i,n=this,s=n._binder,o=n._series,r=[],a=[];for(e=0;e<t.length;e++)i=t[e],r.push(s.bindPoint(o,i)),a.push(o.data[i]);return{values:r,dataItems:a}},_bindField:function(t,e){var i,n,s,o,r=[],a=t.length;for(i=0;i<a;i++)n=t[i],s=n.valueFields,o=void 0,o=wt(s[e])?s[e]:n.fields[e],r.push(o);return r}}),Zn=it.extend({init:function(){this._defaults={}},register:function(t,e){var i,n=this;for(i=0;i<t.length;i++)n._defaults[t[i]]=e},query:function(t){return this._defaults[t]}}),Zn.current=new Zn,Yn=_n.extend({createLabel:function(){var t=this.options.labels,e=Ot({},t,t.from),i=Ot({},t,t.to);e.visible&&(this.labelFrom=this._createLabel(e),this.append(this.labelFrom)),i.visible&&(this.labelTo=this._createLabel(i),this.append(this.labelTo))},_createLabel:function(t){var e,i=Bt(t),n=this.pointData();return e=i?i(n):this.formatValue(t.format),new mn(e,Ot({vertical:this.options.vertical},t),n)},reflow:function(t){var e,i,n,s;this.render(),e=this,i=e.labelFrom,n=e.labelTo,s=e.value,this.box=t,i&&(i.options.aboveAxis=s.from>s.to,i.reflow(t)),n&&(n.options.aboveAxis=s.to>s.from,n.reflow(t)),this.note&&this.note.reflow(t)}}),Yn.prototype.defaults=Ot({},Yn.prototype.defaults,{labels:{format:"{0} - {1}"},tooltip:{format:"{1}"}}),jn=An.extend({pointType:function(){return Yn},pointValue:function(t){return t.valueFields},formatPointValue:function(t,e){return null===t.value.from&&null===t.value.to?"":this.chartService.format.auto(e,t.value.from,t.value.to)},plotRange:function(t){return t?[t.value.from,t.value.to]:0},updateRange:function(t,e){var i=e.series.axis,n=t.from,s=t.to,o=this.valueAxisRanges[i];null!==t&&nt(n)&&nt(s)&&(o=this.valueAxisRanges[i]=o||{min:ot,max:rt},o.min=Math.min(o.min,n),o.max=Math.max(o.max,n),o.min=Math.min(o.min,s),o.max=Math.max(o.max,s))},aboveAxis:function(t){var e=t.value;return e.from<e.to}}),jn.prototype.plotLimits=tn.prototype.plotLimits,Kn=sn.extend({aliasFor:function(){return this.parent}}),Qn="auto",$n="{0}",Jn="{1}",ts=St.extend({init:function(t,e){St.fn.init.call(this),this.value=t,this.options=e,this.aboveAxis=Rt(this.options.aboveAxis,!0),this.tooltipTracking=!0,this.initLabelsFormat()},render:function(){var t,e,i,n,s,o;this._rendered||(this._rendered=!0,t=this.options,e=t.markers,i=t.labels,n=this.value,s=this.fromPoint=new Kn(n,Ot({},this.options,{labels:i.from,markers:e.from})),o=this.toPoint=new Kn(n,Ot({},this.options,{labels:i.to,markers:e.to})),this.copyFields(s),this.copyFields(o),this.append(s),this.append(o))},reflow:function(t){var e,i;this.render(),e=t.from,i=t.to,this.positionLabels(e,i),this.fromPoint.reflow(e),this.toPoint.reflow(i),this.box=this.fromPoint.markerBox().clone().wrap(this.toPoint.markerBox())},createHighlight:function(){var t=new re;return t.append(this.fromPoint.createHighlight()),t.append(this.toPoint.createHighlight()),t},highlightVisual:function(){return this.visual},highlightVisualArgs:function(){return{options:this.options,from:this.fromPoint.highlightVisualArgs(),to:this.toPoint.highlightVisualArgs()}},tooltipAnchor:function(){var t,e,i,n,s,o,r=this.owner.pane.clipBox(),a=!r||r.overlaps(this.box);if(a)return t=this.box,e=t.center(),i=ut,this.options.vertical?(n=e.x,s=t.y1-ke,o=ct):(n=t.x2+ke,s=e.y,o=ht),{point:new Ct(n,s),align:{horizontal:i,vertical:o}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){return this.box.overlaps(t)},unclipElements:function(){this.fromPoint.unclipElements(),this.toPoint.unclipElements()},initLabelsFormat:function(){var e=this.options.labels;e.format||(e.from&&e.from.format||(e.from=t.extend({},e.from,{format:$n})),e.to&&e.to.format||(e.to=t.extend({},e.to,{format:Jn})))},positionLabels:function(t,e){var i,n,s=this.options,o=s.labels,r=s.vertical;o.position===Qn&&(r?e.y1<=t.y1?(n=ze,i=De):(n=De,i=ze):e.x1<=t.x1?(n=ut,i=vt):(n=vt,i=ut),o.from&&o.from.position||(this.fromPoint.options.labels.position=i),o.to&&o.to.position||(this.toPoint.options.labels.position=n))},copyFields:function(t){t.dataItem=this.dataItem,t.category=this.category,t.series=this.series,t.color=this.color,t.owner=this.owner}}),Ot(ts.prototype,en),Ot(ts.prototype,nn),ts.prototype.defaults={markers:{visible:!1,background:pt,size:Le,type:dt,border:{width:2},opacity:1},labels:{visible:!1,margin:Dt(3),padding:Dt(4),animation:{type:Ae,delay:be},position:Qn},notes:{label:{}},highlight:{markers:{border:{color:pt,width:2}},zIndex:st.HIGHLIGHT_ZINDEX},tooltip:{format:"{0} - {1}"}},es=dn.extend({createStrokeSegments:function(){return this.segmentsFromPoints(this.toGeometryPoints(this.toPoints()))},stackSegments:function(){var t=this.fromSegments;return this.fromSegments||(t=this.fromSegments=this.segmentsFromPoints(this.toGeometryPoints(this.fromPoints().reverse()))),t},createStroke:function(t){var e=new ne(t),i=new ne(t);e.segments.push.apply(e.segments,this.strokeSegments()),i.segments.push.apply(i.segments,this.stackSegments()),this.visual.append(e),this.visual.append(i)},hasStackSegment:function(){return!0},fromPoints:function(){return this.linePoints.map(function(t){return t.fromPoint})},toPoints:function(){return this.linePoints.map(function(t){return t.toPoint})}}),is=es.extend({createStrokeSegments:function(){return this.createCurveSegments(this.toPoints())},stackSegments:function(){var t=this.fromSegments;return this.fromSegments||(t=this.fromSegments=this.createCurveSegments(this.fromPoints().reverse())),t},createCurveSegments:function(t){var e=new Ft;return e.process(this.toGeometryPoints(t))}}),ns=es.extend({createStrokeSegments:function(){return this.segmentsFromPoints(this.calculateStepPoints(this.toPoints()))},stackSegments:function(){var t=this.fromSegments;return this.fromSegments||(t=this.fromSegments=this.segmentsFromPoints(this.calculateStepPoints(this.fromPoints())),t.reverse()),t}}),Ot(ns.prototype,rn),ss=tn.extend({render:function(){tn.fn.render.call(this),this.renderSegments()},pointType:function(){return ts},createPoint:function(t,e){var i,n,s,o=e.categoryIx,r=e.category,a=e.series,h=e.seriesIx,l=t.valueFields;if(!p(l.from)&&!p(l.to)){if(this.seriesMissingValues(a)!==Me)return null;l={from:0,to:0}}return i=this.pointOptions(a,h),i=this.evalPointOptions(i,l,r,o,a,h),n=t.fields.color||a.color,It(a.color)&&(n=i.color),s=new ts(l,i),s.color=n,this.append(s),s},createSegment:function(t,e,i){var n,s=(e.line||{}).style;return new(n="smooth"===s?is:"step"===s?ns:es)(t,e,i)},plotRange:function(t,e){return t?[t.value.from,t.value.to]:[e,e]},valueSlot:function(t,e){var i=t.getSlot(e[0],e[0],!this.options.clip),n=t.getSlot(e[1],e[1],!this.options.clip);if(i&&n)return{from:i,to:n}},pointSlot:function(t,e){var i,n,s=e.from,o=e.to;return this.options.invertAxes?(i=new kt(s.x1,t.y1,s.x2,t.y2),n=new kt(o.x1,t.y1,o.x2,t.y2)):(i=new kt(t.x1,s.y1,t.x2,s.y2),n=new kt(t.x1,o.y1,t.x2,o.y2)),{from:i,to:n}},addValue:function(t,e){var i=t.valueFields;nt(i.from)||(i.from=i.to),nt(i.to)||(i.to=i.from),tn.fn.addValue.call(this,t,e)},updateRange:function(t,e){var i,n,s,o;null!==t&&nt(t.from)&&nt(t.to)&&(i=e.series.axis,n=this.valueAxisRanges[i]=this.valueAxisRanges[i]||{min:ot,max:rt},s=t.from,o=t.to,n.min=Math.min(n.min,s,o),n.max=Math.max(n.max,s,o))},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.from,i.to)},animationPoints:function(){var t,e,i=this.points,n=[];for(t=0;t<i.length;t++)e=i[t],e&&(n.push((e.fromPoint||{}).marker),n.push((e.toPoint||{}).marker));return n.concat(this._segments)}}),Ot(ss.prototype,ln,un),os=Sn.extend({reflow:function(t){var e,i=this,n=i.options,s=i.value,o=i.owner,r=o.seriesValueAxis(n),a=[],h=[],l=[],c=r.getSlot(s.low,s.high),u=r.getSlot(s.open,s.open),p=r.getSlot(s.close,s.close);u.x1=p.x1=c.x1=t.x1,u.x2=p.x2=c.x2=t.x2,e=c.center().x,a.push([u.x1,u.y1]),a.push([e,u.y1]),h.push([e,p.y1]),h.push([p.x2,p.y1]),l.push([e,c.y1]),l.push([e,c.y2]),this.lines=[a,h,l],this.box=c.clone().wrap(u.clone().wrap(p)),this.reflowNote()},createBody:function(){}}),rs=Cn.extend({pointType:function(){return os}}),as=St.extend({init:function(t,e,i){St.fn.init.call(this),this.from=t,this.to=e,this.series=i},linePoints:function(){var t,e,i=this.from,n=this,s=n.from.box,o=n.to.box,r=[];return i.isVertical?(t=i.aboveAxis?s.y1:s.y2,r.push([s.x1,t],[o.x2,t])):(e=i.aboveAxis?s.x2:s.x1,r.push([e,s.y1],[e,o.y2])),r},createVisual:function(){var t,e;St.fn.createVisual.call(this),t=this.series.line||{},e=ne.fromPoints(this.linePoints(),{stroke:{color:t.color,width:t.width,opacity:t.opacity,dashType:t.dashType}}),Pt(e),this.visual.append(e)}}),Tt(as,{animation:{type:Ae,delay:be}}),hs=An.extend({render:function(){An.fn.render.call(this),this.createSegments()},traverseDataPoints:function(t){var e,i,n,s,r,a,h,l,c,u,p=this,d=this.options.series,g=o(d),f=!this.options.invertAxes;for(e=0;e<d.length;e++)for(i=d[e],n=0,s=0,r=0;r<g;r++)a=fe.current.bindPoint(i,r),h=a.valueFields.value,l=a.fields.summary,c=n,u=void 0,l?"total"===l.toLowerCase()?(a.valueFields.value=n,c=0,u=n):(a.valueFields.value=s,u=c-s,s=0):nt(h)&&(s+=h,n+=h,u=n),t(a,{category:p.categoryAxis.categoryAt(r),categoryIx:r,series:i,seriesIx:e,total:n,runningTotal:s,from:c,to:u,isVertical:f})},updateRange:function(t,e){An.fn.updateRange.call(this,{value:e.to},e)},aboveAxis:function(t){return t.value>=0},plotRange:function(t){return[t.from,t.to]},createSegments:function(){var t,e,i,n,s,o,r,a=this,h=this.options.series,l=this.seriesPoints,c=this.segments=[];for(t=0;t<h.length;t++)if(e=h[t],i=l[t])for(n=void 0,s=0;s<i.length;s++)o=i[s],o&&n&&(r=new as(n,o,e),c.push(r),a.append(r)),n=o}}),ls=[Ge,pi,ai,vi],cs=[$e,fi].concat(ls),us=qn.extend({initFields:function(t){var e,i,n=this;if(this.namedCategoryAxes={},this.namedValueAxes={},this.valueAxisRangeTracker=new xn,t.length>0)for(this.invertAxes=Et(t[0].type,[qe,Xe,fi,pi,vi,hi,Qe,di]),e=0;e<t.length;e++)if(i=t[e].stack,i&&"100%"===i.type){n.stack100=!0;break}},render:function(t){void 0===t&&(t=this.panes),this.createCategoryAxes(t),this.aggregateCategories(t),this.createCategoryAxesLabels(t),this.createCharts(t),this.createValueAxes(t)},removeAxis:function(t){var e=t.options.name;qn.fn.removeAxis.call(this,t),t instanceof Ut?delete this.namedCategoryAxes[e]:(this.valueAxisRangeTracker.reset(e),delete this.namedValueAxes[e]),t===this.categoryAxis&&delete this.categoryAxis,t===this.valueAxis&&delete this.valueAxis},createCharts:function(t){var e,i,n,s,o,r,a=this,h=this.groupSeriesByPane();for(e=0;e<t.length;e++)if(i=t[e],n=h[i.options.name||"default"]||[],a.addToLegend(n),s=a.filterVisibleSeries(n))for(o=a.groupSeriesByCategoryAxis(s),r=0;r<o.length;r++)a.createChartGroup(o[r],i)},createChartGroup:function(t,e){this.createAreaChart(y(t,[Ge,pi]),e),this.createRangeAreaChart(y(t,[ai,vi]),e),this.createBarChart(y(t,[Ye,qe]),e),this.createRangeBarChart(y(t,[li,hi]),e),this.createBulletChart(y(t,[Xe,gi]),e),this.createCandlestickChart(y(t,Ze),e),this.createBoxPlotChart(y(t,[We,di]),e),this.createOHLCChart(y(t,Je),e),this.createWaterfallChart(y(t,[xi,Qe]),e),this.createLineChart(y(t,[$e,fi]),e)},aggregateCategories:function(t){var e,i,n,s,o,r=this,a=this.srcSeries||this.series,h=[];for(this._currentPointsCache={},this._seriesPointsCache=this._seriesPointsCache||{},e=0;e<a.length;e++)i=a[e],n=r.seriesCategoryAxis(i),s=r.findPane(n.options.pane),o=m(n.options.type,mt),i=(o||i.categoryField)&&Et(s,t)?r.aggregateSeries(i,n):r.filterSeries(i,n),h.push(i);this._seriesPointsCache=this._currentPointsCache,this._currentPointsCache=null,this.srcSeries=a,this.series=h},filterSeries:function(t,e){var i,n,s,o=(t.data||{}).length;return e._seriesMax=Math.max(e._seriesMax||0,o),nt(e.options.min)||nt(e.options.max)?(i=e.currentRangeIndices(),n=Et(t.type,cs),s=Ot({},t),s.data=(s.data||[]).slice(i.min,i.max+1),n&&k(s,i,o,function(n){return{item:t.data[n],category:e.categoryAt(n,!0),categoryIx:n-i.min}},function(e){return wt(t.data[e])}),s):t},clearSeriesPointsCache:function(){this._seriesPointsCache={}},seriesSourcePoints:function(t,e){var i,s,o,r,a,h,l,c,u,p=this,d=t.index+";"+e.categoriesHash();if(this._seriesPointsCache[d])return this._currentPointsCache[d]=this._seriesPointsCache[d],this._seriesPointsCache[d];for(i=e.options,s=i.srcCategories,o=m(i.type,mt),r=t.data,a=o?_:n,h=[],o||e.mapCategories(),l=0;l<r.length;l++)c=void 0,c=t.categoryField?a(t.categoryField,r[l],p.chartService.intl):s[l],wt(c)&&null!==c&&(u=e.totalIndex(c),h[u]=h[u]||{items:[],category:c},h[u].items.push(l));return this._currentPointsCache[d]=h,h},aggregateSeries:function(t,e){var i,n,s,o,r,a,h,l,c,u=t.data;if(!u.length)return t;for(i=this.seriesSourcePoints(t,e),n=Ot({},t),s=new Xn(Ot({},t),fe.current,Zn.current),o=n.data=[],r=e.options.dataItems||[],a=e.currentRangeIndices(),h=function(t){var n,o=t-a.min,r=i[t];
return r||(r=i[t]={}),r.categoryIx=o,r.item||(n=e.categoryAt(t,!0),r.category=n,r.item=s.aggregatePoints(r.items,n)),r},l=a.min;l<=a.max;l++)c=h(l),o[c.categoryIx]=c.item,c.items&&c.items.length&&(r[c.categoryIx]=c.item);return Et(n.type,cs)&&k(n,a,e.totalCount(),h,function(t){return i[t]}),e.options.dataItems=r,n},appendChart:function(t,e){var i=t.options.series,n=this.seriesCategoryAxis(i[0]),s=n.options.categories,r=Math.max(0,o(i)-s.length);if(r>0)for(s=n.options.categories=n.options.categories.slice(0);r--;)s.push("");this.valueAxisRangeTracker.update(t.valueAxisRanges),qn.fn.appendChart.call(this,t,e)},seriesPaneName:function(t){var e=this.options,i=t.axis,n=[].concat(e.valueAxis),s=jt(n,function(t){return t.name===i})[0],o=e.panes||[{}],r=(o[0]||{}).name||"default",a=(s||{}).pane||r;return a},seriesCategoryAxis:function(t){var e=t.categoryAxis,i=e?this.namedCategoryAxes[e]:this.categoryAxis;if(!i)throw Error("Unable to locate category axis with name "+e);return i},stackableChartOptions:function(t,e){var i=t.stack,n=i&&"100%"===i.type,s=e.options.clip;return{isStacked:i,isStacked100:n,clip:s}},groupSeriesByCategoryAxis:function(t){var e,i,n,s,o,r,a=[],h={};for(e=0;e<t.length;e++)i=t[e].categoryAxis||"$$default$$",h.hasOwnProperty(i)||(h[i]=!0,a.push(i));for(n=[],s=0;s<a.length;s++)o=a[s],r=O(t,o,s),0!==r.length&&n.push(r);return n},createBarChart:function(e,i){var n,s;0!==e.length&&(n=e[0],s=new An(this,t.extend({series:e,invertAxes:this.invertAxes,gap:n.gap,spacing:n.spacing},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createRangeBarChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new jn(this,{series:t,invertAxes:this.invertAxes,gap:i.gap,spacing:i.spacing}),this.appendChart(n,e))},createBulletChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new Mn(this,{series:t,invertAxes:this.invertAxes,gap:i.gap,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createLineChart:function(e,i){var n,s;0!==e.length&&(n=e[0],s=new pn(this,t.extend({invertAxes:this.invertAxes,series:e},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createAreaChart:function(e,i){var n,s;0!==e.length&&(n=e[0],s=new vn(this,t.extend({invertAxes:this.invertAxes,series:e},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createRangeAreaChart:function(t,e){if(0!==t.length){var i=new ss(this,{invertAxes:this.invertAxes,series:t,clip:e.options.clip});this.appendChart(i,e)}},createOHLCChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new rs(this,{invertAxes:this.invertAxes,gap:i.gap,series:t,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createCandlestickChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new Cn(this,{invertAxes:this.invertAxes,gap:i.gap,series:t,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createBoxPlotChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new Tn(this,{invertAxes:this.invertAxes,gap:i.gap,series:t,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createWaterfallChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new hs(this,{series:t,invertAxes:this.invertAxes,gap:i.gap,spacing:i.spacing}),this.appendChart(n,e))},axisRequiresRounding:function(t,e){var i,n,s,o,r,a=this,h=y(this.series,mi);for(i=0;i<this.series.length;i++)n=a.series[i],Et(n.type,ls)&&(s=n.line,s&&s.style===Ne&&h.push(n));for(o=0;o<h.length;o++)if(r=h[o].categoryAxis||"",r===t||!r&&0===e)return!0},aggregatedAxis:function(t,e){var i,n,s=this.series;for(i=0;i<s.length;i++)if(n=s[i].categoryAxis||"",(n===t||!n&&0===e)&&s[i].categoryField)return!0},createCategoryAxesLabels:function(){var t,e=this.axes;for(t=0;t<e.length;t++)e[t]instanceof Ut&&e[t].createLabels()},createCategoryAxes:function(t){var e,i,n,s,o,r,a,h=this,l=this.invertAxes,c=[].concat(this.options.categoryAxis),u=[];for(e=0;e<c.length;e++)if(i=c[e],n=h.findPane(i.pane),Et(n,t)){if(s=i.name,o=i.categories,void 0===o&&(o=[]),i=Ot({vertical:l,reverse:!l&&h.chartService.rtl,axisCrossingValue:l?ot:0},i),wt(i.justified)||(i.justified=h.isJustified()),h.axisRequiresRounding(s,e)&&(i.justified=!1),r=void 0,r=w(i,o[0])?new et.DateCategoryAxis(i,h.chartService):new Ut(i,h.chartService),c[e].categories=r.options.srcCategories,s){if(h.namedCategoryAxes[s])throw Error("Category axis with name "+s+" is already defined");h.namedCategoryAxes[s]=r}r.axisIndex=e,u.push(r),h.appendAxis(r)}a=this.categoryAxis||u[0],this.categoryAxis=a,l?this.axisY=a:this.axisX=a},isJustified:function(){var t,e,i=this.series;for(t=0;t<i.length;t++)if(e=i[t],!Et(e.type,ls))return!1;return!0},createValueAxes:function(t){var e,i,n,s,o,r,a,h,l,c=this,u=this.valueAxisRangeTracker,p=u.query(),d=[].concat(this.options.valueAxis),g=this.invertAxes,f={vertical:!g,reverse:g&&this.chartService.rtl},v=[];for(this.stack100&&(f.roundToMajorUnit=!1,f.labels={format:"P0"}),e=0;e<d.length;e++)if(i=d[e],n=c.findPane(i.pane),Et(n,t)){if(s=i.name,o=m(i.type,Gi)?{min:.1,max:1}:{min:0,max:1},r=u.query(s)||p||o,0===e&&r&&p&&(r.min=Math.min(r.min,p.min),r.max=Math.max(r.max,p.max)),a=void 0,a=m(i.type,Gi)?et.LogarithmicAxis:et.NumericAxis,h=new a(r.min,r.max,Ot({},f,i),c.chartService),s){if(c.namedValueAxes[s])throw Error("Value axis with name "+s+" is already defined");c.namedValueAxes[s]=h}h.axisIndex=e,v.push(h),c.appendAxis(h)}l=this.valueAxis||v[0],this.valueAxis=l,g?this.axisX=l:this.axisY=l},_dispatchEvent:function(t,e,i){var n,s,o,r=t._eventCoordinates(e),a=new Ct(r.x,r.y),h=this.pointPane(a),l=[],c=[];if(h){for(n=h.axes,s=0;s<n.length;s++)o=n[s],o.getValue?f(c,o.getValue(a)):f(l,o.getCategory(a));0===l.length&&f(l,this.categoryAxis.getCategory(a)),l.length>0&&c.length>0&&t.trigger(i,{element:Mt(e),originalEvent:e,category:b(l),value:b(c)})}},pointPane:function(t){var e,i,n=this.panes;for(e=0;e<n.length;e++)if(i=n[e],i.contentBox.containsPoint(t))return i},updateAxisOptions:function(t,e){V(this.options,t,e),V(this.originalOptions,t,e)}}),Tt(us,{categoryAxis:{},valueAxis:{}}),Ot(us.prototype,Un),ps=it.extend({init:function(){this._points=[]},destroy:function(){this._points=[]},show:function(t,e){var i,n,s=this,o=[].concat(t);for(this.hide(),i=0;i<o.length;i++)n=o[i],n&&n.toggleHighlight&&n.hasHighlight()&&(s.togglePointHighlight(n,!0,e),s._points.push(n))},togglePointHighlight:function(t,e,i){var n,s=(t.options.highlight||{}).toggle;s?(n={category:t.category,series:t.series,dataItem:t.dataItem,value:t.value,stackValue:t.stackValue,preventDefault:L,visual:t.highlightVisual(),show:e},s(n),n._defaultPrevented||t.toggleHighlight(e,i)):t.toggleHighlight(e,i)},hide:function(){for(var t=this,e=this._points;e.length;)t.togglePointHighlight(e.pop(),!1)},isHighlighted:function(t){var e,i,n=this._points;for(e=0;e<n.length;e++)if(i=n[e],t===i)return!0;return!1}}),ds=it.extend({init:function(t,e){this.plotArea=t,this.options=Ot({},this.options,e)},start:function(t){return this._active=M(t,this.options.key)},move:function(t){if(this._active){var e=this.axisRanges=this._panAxes(t,gt).concat(this._panAxes(t,ft));if(e.length)return this.axisRanges=e,B(e)}},end:function(){var t=this._active;return this._active=!1,t},pan:function(){var t,e,i=this,n=i.plotArea,s=i.axisRanges;if(s.length){for(t=0;t<s.length;t++)e=s[t],n.updateAxisOptions(e.axis,e.range);n.redraw(n.panes)}},destroy:function(){delete this.plotArea},_panAxes:function(t,e){var i,n,s,o,r=this.plotArea,a=-t[e].delta,h=(this.options.lock||"").toLowerCase(),l=[];if(0!==a&&(h||"").toLowerCase()!==e)for(i=r.axes,n=0;n<i.length;n++)s=i[n],(e===gt&&!s.options.vertical||e===ft&&s.options.vertical)&&(o=s.pan(a),o&&(o.limitRange=!0,l.push({axis:s,range:o})));return l}}),ds.prototype.options={key:"none",lock:"none"},gs=it.extend({init:function(t,e){this.chart=t,this.options=Ot({},this.options,e),this.createElement()},createElement:function(){var t,e=this._marquee=document.createElement("div");e.className="k-marquee",t=document.createElement("div"),t.className="k-marquee-color",e.appendChild(t)},removeElement:function(){this._marquee.parentNode&&this._marquee.parentNode.removeChild(this._marquee)},setStyles:function(t){Kt(this._marquee,t)},start:function(t){var e,i,n,s,o;return!!(M(t,this.options.key)&&(e=this.chart,i=e._eventCoordinates(t),n=this._zoomPane=e._plotArea.paneByPoint(i),s=n?n.chartsBox().clone():null,n&&s))&&(o=this._elementOffset(),s.translate(o.left,o.top),this._zoomPaneClipBox=s,document.body.appendChild(this._marquee),this.setStyles({left:t.pageX+1,top:t.pageY+1,width:0,height:0}),!0)},_elementOffset:function(){var t=this.chart.element,e=Kt(t,["paddingLeft","paddingTop"]),i=e.paddingLeft,n=e.paddingTop,s=et.elementOffset(t);return{left:i+s.left,top:n+s.top}},move:function(t){var e=this._zoomPane;e&&this.setStyles(this._selectionPosition(t))},end:function(t){var e,i,n,s,o=this._zoomPane;if(o)return e=this._elementOffset(),i=this._selectionPosition(t),i.left-=e.left,i.top-=e.top,n={x:i.left,y:i.top},s={x:i.left+i.width,y:i.top+i.height},this._updateAxisRanges(n,s),this.removeElement(),delete this._zoomPane,B(this.axisRanges)},zoom:function(){var t,e,i,n=this.axisRanges;if(n&&n.length){for(t=this.chart._plotArea,e=0;e<n.length;e++)i=n[e],t.updateAxisOptions(i.axis,i.range);t.redraw(t.panes)}},destroy:function(){this.removeElement(),delete this._marquee,delete this.chart},_updateAxisRanges:function(t,e){var i,n,s,o,r=(this.options.lock||"").toLowerCase(),a=[],h=this._zoomPane.axes;for(i=0;i<h.length;i++)n=h[i],s=n.options.vertical,r===gt&&!s||r===ft&&s||!wt(n.axisIndex)||(o=n.pointsRange(t,e),o&&a.push({axis:n,range:o}));this.axisRanges=a},_selectionPosition:function(t){var e=this._zoomPaneClipBox,i={x:t.x.startLocation,y:t.y.startLocation},n=t.x.location,s=t.y.location,o=(this.options.lock||"").toLowerCase(),r=Math.min(i.x,n),a=Math.min(i.y,s),h=Math.abs(i.x-n),l=Math.abs(i.y-s);return o===gt&&(r=e.x1,h=e.width()),o===ft&&(a=e.y1,l=e.height()),n>e.x2&&(h=e.x2-i.x),n<e.x1&&(h=i.x-e.x1),s>e.y2&&(l=e.y2-i.y),s<e.y1&&(l=i.y-e.y1),{left:Math.max(r,e.x1),top:Math.max(a,e.y1),width:h,height:l}}}),gs.prototype.options={key:"shift",lock:"none"},fs=it.extend({init:function(t,e){this.chart=t,this.options=Ot({},this.options,e)},updateRanges:function(t){var e,i,n,s,o=(this.options.lock||"").toLowerCase(),r=[],a=this.chart._plotArea.axes;for(e=0;e<a.length;e++)i=a[e],n=i.options.vertical,o===gt&&!n||o===ft&&n||!i.zoomRange||(s=i.zoomRange(-t),s&&r.push({axis:i,range:s}));return this.axisRanges=r,B(r)},zoom:function(){var t,e,i=this.axisRanges,n=this.chart._plotArea;if(i&&i.length&&n.updateAxisOptions){for(t=0;t<i.length;t++)e=i[t],n.updateAxisOptions(e.axis,e.range);n.redraw(n.panes)}},destroy:function(){delete this.chart}}),vs=St.extend({init:function(t,e){St.fn.init.call(this,t),this.chartService=e},render:function(){var t,e,i=this,n=i.children,s=i.options,o=s.vertical;for(this.visual=new ie.Layout(null,{spacing:o?0:s.spacing,lineSpacing:o?s.spacing:0,orientation:o?"vertical":"horizontal",reverse:s.rtl,alignItems:o?"start":"center"}),t=0;t<n.length;t++)e=n[t],e.reflow(new kt),e.renderVisual()},reflow:function(t){this.visual.rect(t.toRect()),this.visual.reflow();var e=this.visual.clippedBBox();this.box=e?et.rectToBox(e):new kt},renderVisual:function(){this.addVisual()},createVisual:function(){}}),xs=Xt.extend({init:function(t){Xt.fn.init.call(this,t),this.createContainer(),t.rtl?(this.createLabel(),this.createMarker()):(this.createMarker(),this.createLabel())},createContainer:function(){this.container=new et.FloatElement({vertical:!1,wrap:!1,align:ht,spacing:this.options.spacing}),this.append(this.container)},createMarker:function(){this.container.append(new zt(this.markerOptions()))},markerOptions:function(){var t=this.options,e=t.markerColor;return Ot({},t.markers,{background:e,border:{color:e}})},createLabel:function(){var t=this.options,e=Ot({},t.labels);this.container.append(new Ht(t.text,e))},renderComplete:function(){var t,e;Xt.fn.renderComplete.call(this),t=this.options.cursor||{},e=this._itemOverlay=ne.fromRect(this.container.box.toRect(),{fill:{color:pt,opacity:0},stroke:null,cursor:t.style||t}),this.appendVisual(e)},click:function(t,e){var i=this.eventArgs(e);!t.trigger(yi,i)&&e&&"contextmenu"===e.type&&e.preventDefault()},over:function(t,e){var i=this.eventArgs(e);return t.trigger(_i,i)||t._legendItemHover(i.seriesIndex,i.pointIndex),!0},out:function(t,e){t._unsetActivePoint(),t.trigger(wi,this.eventArgs(e))},eventArgs:function(t){var e=this.options;return{element:Mt(t),text:e.text,series:e.series,seriesIndex:e.series.index,pointIndex:e.pointIndex}},renderVisual:function(){var t=this,e=this.options,i=e.visual;i?(this.visual=i({active:e.active,series:e.series,sender:this.getSender(),pointIndex:e.pointIndex,options:{markers:this.markerOptions(),labels:e.labels},createVisual:function(){t.createVisual(),t.renderChildren(),t.renderComplete();var e=t.visual;return delete t.visual,e}}),this.addVisual()):Xt.fn.renderVisual.call(this)}}),ms="horizontal",ys="pointer",_s="custom",ws=St.extend({init:function(t,e){void 0===e&&(e={}),St.fn.init.call(this,t),this.chartService=e,Et(this.options.position,[lt,vt,ct,ut,_s])||(this.options.position=vt),this.createContainers(),this.createLegendTitle(t.title),this.createItems()},createContainers:function(){var t=this.options,e=t.position,i=t.align,n=e,s=ht;e===_s?n=ut:Et(e,[lt,ct])?(n="start"===i?ut:"end"===i?vt:ht,s=e):i&&("start"===i?s=lt:"end"===i&&(s=ct)),this.container=new Xt({margin:t.margin,padding:t.padding,background:t.background,border:t.border,vAlign:s,align:n,zIndex:t.zIndex,shrinkToFit:!0}),this.itemsContainer=this.hasTitle()?new Xt({vAlign:s,align:n,zIndex:t.zIndex,shrinkToFit:!0}):this.container,this.append(this.container)},createItems:function(){var t,e,i,n=this.getService(),s=this.options,o=this.isVertical(),r=new vs({vertical:o,spacing:s.spacing,rtl:n.rtl},n),a=s.items;for(s.reverse&&(a=a.slice(0).reverse()),t=a.length,e=0;e<t;e++)i=a[e],r.append(new xs(Ot({},{markers:s.markers,labels:s.labels,rtl:n.rtl},s.item,i)));r.render(),this.itemsContainer.append(r)},isVertical:function(){var t=this.options,e=t.orientation,i=t.position,n=i===_s&&e!==ms||(wt(e)?e!==ms:Et(i,[ut,vt]));return n},hasItems:function(){return this.container.children[0].children.length>0},reflow:function(t){var e=this.options,i=t.clone();return this.hasItems()?(e.position===_s?(this.containerCustomReflow(i),this.box=i):this.containerReflow(i),void(this.hasTitle()&&this.title.reflow(new kt(this.container.box.x1,this.title.box.y1,this.container.box.x2,this.title.box.y2)))):void(this.box=i)},containerReflow:function(t){var e,i=this,n=i.options,s=i.container,o=n.position,r=n.width,a=n.height,h=o===lt||o===ct?gt:ft,l=this.isVertical(),c=t.clone(),u=t.clone();o!==ut&&o!==vt||(u.y1=c.y1=0),l&&a?(u.y2=u.y1+a,u.align(c,ft,s.options.vAlign)):!l&&r&&(u.x2=u.x1+r,u.align(c,gt,s.options.align)),s.reflow(u),u=s.box,e=u.clone(),(n.offsetX||n.offsetY)&&(u.translate(n.offsetX,n.offsetY),s.reflow(u)),e[h+1]=t[h+1],e[h+2]=t[h+2],this.box=e},containerCustomReflow:function(t){var e=this,i=e.options,n=e.container,s=i.offsetX,o=i.offsetY,r=i.width,a=i.height,h=this.isVertical(),l=t.clone();h&&a?l.y2=l.y1+a:!h&&r&&(l.x2=l.x1+r),n.reflow(l),l=n.box,n.reflow(new kt(s,o,s+l.width(),o+l.height()))},renderVisual:function(){this.hasItems()&&St.fn.renderVisual.call(this)},createLegendTitle:function(t){var e,i=Ot({},{color:xt,position:lt,align:ht},t),n=i.text;t&&t.visible!==!1&&(wt(i)&&i.visible&&(e=Bt(i),e?n=e({text:n}):i.format&&(n=this.chartService.format.auto(i.format,n))),this.title=new Ht(n,i),this.createTitleLayout(),this.appendTitleLayoutContent())},createTitleLayout:function(){this.layout=new et.FloatElement({vertical:!0,wrap:!1}),this.container.append(this.layout)},hasTitle:function(){return!(!this.options.title||this.options.title.visible===!1)},appendTitleLayoutContent:function(){var t=this.options;t.title.position===ct?(this.layout.append(this.itemsContainer),this.layout.append(this.title)):(this.layout.append(this.title),this.layout.append(this.itemsContainer))}}),Tt(ws,{position:vt,items:[],offsetX:0,offsetY:0,margin:Dt(5),padding:Dt(5),border:{color:xt,width:0},item:{cursor:ys,spacing:6},spacing:6,background:"",zIndex:1,markers:{border:{width:0},width:15,height:3,type:"rect",align:ut,vAlign:ht}}),bs=it.extend({init:function(){this._registry=[]},register:function(t,e){this._registry.push({type:t,seriesTypes:e})},create:function(t,e,i){var n,s,o,r=this._registry,a=r[0];for(s=0;s<r.length;s++)if(o=r[s],n=y(t,o.seriesTypes),n.length>0){a=o;break}return new a.type(n,e,i)}}),bs.current=new bs,As=3,Ss=.1,Cs=it.extend({init:function(t,e,i,n){var s=t.element;this.options=Ot({},this.options,i),this.chart=t,this.observer=n,this.chartElement=s,this.categoryAxis=e,this._dateAxis=this.categoryAxis instanceof et.DateCategoryAxis,this.initOptions(),this.visible=this.options.visible&&s.offsetHeight,this.visible&&(this.createElements(),this.set(this._index(this.options.from),this._index(this.options.to)),this.bindEvents())},onPane:function(t){return this.categoryAxis.pane===t},createElements:function(){var t,e,i,n,s,o,r=this.options,a=this.wrapper=H("k-selector");Kt(a,{top:r.offset.top,left:r.offset.left,width:r.width,height:r.height,direction:"ltr"}),t=this.selection=H("k-selection"),this.leftMask=H("k-mask"),this.rightMask=H("k-mask"),a.appendChild(this.leftMask),a.appendChild(this.rightMask),a.appendChild(t),t.appendChild(H("k-selection-bg")),e=this.leftHandle=H("k-handle k-left-handle"),i=this.rightHandle=H("k-handle k-right-handle"),e.appendChild(H()),i.appendChild(H()),t.appendChild(e),t.appendChild(i),this.chartElement.appendChild(a),n=Kt(t,["borderLeftWidth","borderRightWidth","height"]),s=Kt(e,"height").height,o=Kt(i,"height").height,r.selection={border:{left:n.borderLeftWidth,right:n.borderRightWidth}},Kt(e,{top:(n.height-s)/2}),Kt(i,{top:(n.height-o)/2}),a.style.cssText=a.style.cssText},bindEvents:function(){if(this.options.mousewheel!==!1){this._mousewheelHandler=this._mousewheel.bind(this);var t;$t(this.wrapper,(t={},t[Zi]=this._mousewheelHandler,t))}this._domEvents=Jt.DomEventsBuilder.create(this.wrapper,{stopPropagation:!0,start:this._start.bind(this),move:this._move.bind(this),end:this._end.bind(this),tap:this._tap.bind(this),press:this._press.bind(this),gesturestart:this._gesturestart.bind(this),gesturechange:this._gesturechange.bind(this),gestureend:this._gestureend.bind(this)})},initOptions:function(){var t,e,i,n=this,s=n.options,o=n.categoryAxis,r=o.pane.chartsBox(),a=this.chart.chartService.intl;this._dateAxis&&Ot(s,{min:qt(a,s.min),max:qt(a,s.max),from:qt(a,s.from),to:qt(a,s.to)}),t=Kt(this.chartElement,["paddingLeft","paddingTop"]),e=t.paddingLeft,i=t.paddingTop,this.options=Ot({},{width:r.width(),height:r.height()+Ss,padding:{left:e,top:i},offset:{left:r.x1+e,top:r.y1+i},from:s.min,to:s.max},s)},destroy:function(){if(this._domEvents&&(this._domEvents.destroy(),delete this._domEvents),clearTimeout(this._mwTimeout),this._state=null,this.wrapper){if(this._mousewheelHandler){var t;te(this.wrapper,(t={},t[Zi]=this._mousewheelHandler,t)),this._mousewheelHandler=null}this.chartElement.removeChild(this.wrapper),this.wrapper=null}},_rangeEventArgs:function(t){return{axis:this.categoryAxis.options,from:this._value(t.from),to:this._value(t.to)}},_start:function(t){var e,i=this.options,n=Mt(t);!this._state&&n&&(this.chart._unsetActivePoint(),this._state={moveTarget:z(n)||n,startLocation:t.x?t.x.location:0,range:{from:this._index(i.from),to:this._index(i.to)}},e=this._rangeEventArgs({from:this._index(i.from),to:this._index(i.to)}),this.trigger(Mi,e)&&(this._state=null))},_press:function(t){var e;e=this._state?this._state.moveTarget:z(Mt(t)),e&&et.addClass(e,"k-handle-active")},_move:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m;this._state&&(e=this,i=e._state,n=e.options,s=e.categoryAxis,o=i.range,r=i.moveTarget,a=s.options.reverse,h=this._index(n.from),l=this._index(n.to),c=this._index(n.min),u=this._index(n.max),p=i.startLocation-t.x.location,d={from:o.from,to:o.to},g=o.to-o.from,f=Kt(this.wrapper,"width").width/(s.categoriesCount()-1),v=Math.round(p/f)*(a?-1:1),r&&(x=Qt(r,"k-left-handle"),m=Qt(r,"k-right-handle"),Qt(r,"k-selection k-selection-bg")?(o.from=Math.min(Math.max(c,h-v),u-g),o.to=Math.min(o.from+g,u)):x&&!a||m&&a?(o.from=Math.min(Math.max(c,h-v),u-1),o.to=Math.max(o.from+1,o.to)):(x&&a||m&&!a)&&(o.to=Math.min(Math.max(c+1,l-v),u),o.from=Math.min(o.to-1,o.from)),o.from===d.from&&o.to===d.to||(this.move(o.from,o.to),this.trigger(Bi,this._rangeEventArgs(o)))))},_end:function(){var t,e;this._state&&(t=this._state.moveTarget,t&&et.removeClass(t,"k-handle-active"),e=this._state.range,this.set(e.from,e.to),this.trigger(Hi,this._rangeEventArgs(e)),delete this._state)},_tap:function(t){var e=this,i=e.options,n=e.categoryAxis,s=this.chart._eventCoordinates(t),o=n.pointCategoryIndex(new Ct(s.x,n.box.y1)),r=this._index(i.from),a=this._index(i.to),h=this._index(i.min),l=this._index(i.max),c=a-r,u=r+c/2,p={},d=3===t.event.which,g=Math.round(u-o);this._state||d||(this.chart._unsetActivePoint(),n.options.justified||g--,p.from=Math.min(Math.max(h,r-g),l-c),p.to=Math.min(p.from+c,l),this._start(t),this._state&&(this._state.range=p,this.trigger(Bi,this._rangeEventArgs(p)),this._end()))},_mousewheel:function(t){var e,i=this,n=et.mousewheelDelta(t);this._start({target:this.selection}),this._state&&(e=this._state.range,t.preventDefault(),t.stopPropagation(),Math.abs(n)>1&&(n*=As),this.options.mousewheel.reverse&&(n*=-1),this.expand(n)&&this.trigger(Bi,{axis:this.categoryAxis.options,delta:n,originalEvent:t,from:this._value(e.from),to:this._value(e.to)}),this._mwTimeout&&clearTimeout(this._mwTimeout),this._mwTimeout=setTimeout(function(){i._end()},Yi))},_gesturestart:function(t){var e,i=this.options;this._state={range:{from:this._index(i.from),to:this._index(i.to)}},e=this._rangeEventArgs(this._state.range),this.trigger(Mi,e)?this._state=null:t.preventDefault()},_gestureend:function(){this._state&&(this.trigger(Hi,this._rangeEventArgs(this._state.range)),delete this._state)},_gesturechange:function(t){var e=this,i=e.chart,n=e._state,s=e.options,o=e.categoryAxis,r=n.range,a=i._toModelCoordinates(t.touches[0].x.location).x,h=i._toModelCoordinates(t.touches[1].x.location).x,l=Math.min(a,h),c=Math.max(a,h);t.preventDefault(),r.from=o.pointCategoryIndex(new Ct(l))||s.min,r.to=o.pointCategoryIndex(new Ct(c))||s.max,this.move(r.from,r.to),this.trigger(Bi,this._rangeEventArgs(r))},_index:function(t){var e=t;return t instanceof Date&&(e=this.categoryAxis.categoryIndex(t)),e},_value:function(t){var e=t;return this._dateAxis&&(e=this.categoryAxis.categoryAt(t),e>this.options.max&&(e=this.options.max)),e},_slot:function(t){var e=this.categoryAxis,i=this._index(t);return e.getSlot(i,i,!0)},move:function(t,e){var i,n,s=this.options,o=this.categoryAxis.options.reverse,r=s.offset,a=s.padding,h=s.selection.border,l=o?e:t,c=o?t:e,u="x"+(o?2:1),p=this._slot(l),d=Zt(p[u]-r.left+a.left);Kt(this.leftMask,{width:d}),Kt(this.selection,{left:d}),p=this._slot(c),i=Zt(s.width-(p[u]-r.left+a.left)),Kt(this.rightMask,{width:i}),n=s.width-i,n!==s.width&&(n+=h.right),Kt(this.rightMask,{left:n}),Kt(this.selection,{width:Math.max(s.width-(d+i)-h.right,0)})},set:function(t,e){var i=this.options,n=this._index(i.min),s=this._index(i.max),o=Yt(this._index(t),n,s),r=Yt(this._index(e),o+1,s);i.visible&&this.move(o,r),i.from=this._value(o),i.to=this._value(r)},expand:function(t){var e=this.options,i=this._index(e.min),n=this._index(e.max),s=e.mousewheel.zoom,o=this._index(e.from),r=this._index(e.to),a={from:o,to:r},h=Ot({},a);if(this._state&&(a=this._state.range),s!==vt&&(a.from=Yt(Yt(o-t,0,r-1),i,n)),s!==ut&&(a.to=Yt(Yt(r+t,a.from+1,n),i,n)),a.from!==h.from||a.to!==h.to)return this.set(a.from,a.to),!0},trigger:function(t,e){return(this.observer||this.chart).trigger(t,e)}}),Tt(Cs,{visible:!0,mousewheel:{zoom:"both"},min:rt,max:ot}),ks=Bn.extend({show:function(t){var e,i;!t||!t.tooltipAnchor||this._current&&this._current===t||(e=Ot({},this.options,t.options.tooltip),i=t.tooltipAnchor(),i?(this._current=t,Bn.fn.show.call(this,{point:t,anchor:i},e,t)):this.hide())},hide:function(){delete this._current,Bn.fn.hide.call(this)}}),Ps=Bn.extend({init:function(t,e){Bn.fn.init.call(this,t.chartService,e),this.plotArea=t,this.formatService=t.chartService.format},showAt:function(t,e){var i,n,s,o=jt(t,function(t){var e=t.series.tooltip,i=e&&e.visible===!1;return!i});o.length>0&&(i=o[0],n=this.plotArea.categoryAxis.getSlot(i.categoryIx),s=e?this._slotAnchor(e,n):this._defaultAnchor(i,n),this.show({anchor:s,shared:!0,points:t,category:i.category,categoryText:this.formatService.auto(this.options.categoryFormat,i.category),series:this.plotArea.series},this.options))},_slotAnchor:function(t,e){var i=this.plotArea.categoryAxis,n={horizontal:"left",vertical:"center"};return i.options.vertical||(t.x=e.center().x),{point:t,align:n}},_defaultAnchor:function(t,e){var i,n=t.owner.pane.chartsBox(),s=this.plotArea.categoryAxis.options.vertical,o=n.center(),r=e.center(),a={horizontal:"center",vertical:"center"};return i=s?new Ct(o.x,r.y):new Ct(r.x,o.y),{point:i,align:a}}}),Tt(Ps,{categoryFormat:"{0:d}"}),Ts=se.extend({setup:function(){var t,e,i=this,n=i.element,s=i.options,o=n.bbox();o?(this.origin=s.origin,t=s.vertical?ft:gt,e=this.fromScale=new le(1,1),e[t]=Pe,n.transform(ce().scale(e.x,e.y))):this.abort()},step:function(t){var e=et.interpolateValue(this.fromScale.x,1,t),i=et.interpolateValue(this.fromScale.y,1,t);this.element.transform(ce().scale(e,i,this.origin))},abort:function(){se.fn.abort.call(this),this.element.transform(null)}}),Tt(Ts,{duration:be}),oe.current.register(qe,Ts),Es=se.extend({setup:function(){var t=this.center=this.element.bbox().center();this.element.transform(ce().scale(Pe,Pe,t))},step:function(t){this.element.transform(ce().scale(t,t,this.center))}}),Tt(Es,{easing:"easeOutElastic"}),oe.current.register(Ue,Es),Is=se.extend({setup:function(){this.fadeTo=this.element.opacity(),this.element.opacity(0)},step:function(t){this.element.opacity(t*this.fadeTo)}}),Tt(Is,{duration:200,easing:"linear"}),oe.current.register(Ae,Is),Rs=se.extend({setup:function(){this.element.transform(ce().scale(Pe,Pe,this.options.center))},step:function(t){this.element.transform(ce().scale(t,t,this.options.center))}}),Tt(Rs,{easing:"easeOutElastic",duration:be}),oe.current.register(ti,Rs),Vs=In.extend({render:function(){In.fn.render.call(this),this.renderSegments()},createSegment:function(t,e,i){var n,s=e.style;return new(n=s===Fe?hn:on)(t,e,i)},animationPoints:function(){var t=In.fn.animationPoints.call(this);return t.concat(this._segments)},createMissingValue:function(t,e){if(e===Me){var i={x:t.x,y:t.y};return p(i.x)||(i.x=0),p(i.y)||(i.y=0),i}}}),Ot(Vs.prototype,ln),Os=qn.extend({initFields:function(){this.namedXAxes={},this.namedYAxes={},this.xAxisRangeTracker=new xn,this.yAxisRangeTracker=new xn},render:function(t){var e,i,n,s,o,r=this;for(void 0===t&&(t=this.panes),e=this.groupSeriesByPane(),i=0;i<t.length;i++)n=t[i],s=e[n.options.name||"default"]||[],r.addToLegend(s),o=r.filterVisibleSeries(s),o&&(r.createScatterChart(y(o,ci),n),r.createScatterLineChart(y(o,ui),n),r.createBubbleChart(y(o,Ue),n));this.createAxes(t)},appendChart:function(t,e){this.xAxisRangeTracker.update(t.xAxisRanges),this.yAxisRangeTracker.update(t.yAxisRanges),qn.fn.appendChart.call(this,t,e)},removeAxis:function(t){var e=t.options.name;qn.fn.removeAxis.call(this,t),t.options.vertical?(this.yAxisRangeTracker.reset(e),delete this.namedYAxes[e]):(this.xAxisRangeTracker.reset(e),delete this.namedXAxes[e]),t===this.axisX&&delete this.axisX,t===this.axisY&&delete this.axisY},seriesPaneName:function(t){var e=this.options,i=t.xAxis,n=[].concat(e.xAxis),s=jt(n,function(t){return t.name===i})[0],o=t.yAxis,r=[].concat(e.yAxis),a=jt(r,function(t){return t.name===o})[0],h=e.panes||[{}],l=h[0].name||"default",c=(s||{}).pane||(a||{}).pane||l;return c},createScatterChart:function(t,e){t.length>0&&this.appendChart(new In(this,{series:t,clip:e.options.clip}),e)},createScatterLineChart:function(t,e){t.length>0&&this.appendChart(new Vs(this,{series:t,clip:e.options.clip}),e)},createBubbleChart:function(t,e){t.length>0&&this.appendChart(new Vn(this,{series:t,clip:e.options.clip}),e)},createXYAxis:function(t,e,i){var n,s,o,r,a,h,l,c,u=t.name,p=e?this.namedYAxes:this.namedXAxes,d=e?this.yAxisRangeTracker:this.xAxisRangeTracker,g=Ot({reverse:!e&&this.chartService.rtl},t,{vertical:e}),f=m(g.type,Gi),v=d.query(),x=f?{min:.1,max:1}:{min:0,max:1},y=d.query(u)||v||x,_=[g.min,g.max],w=this.series;for(n=0;n<w.length;n++)if(s=w[n],o=s[e?"yAxis":"xAxis"],o===g.name||0===i&&!o){r=fe.current.bindPoint(s,0).valueFields,_.push(r[e?"y":"x"]);break}for(0===i&&v&&(y.min=Math.min(y.min,v.min),y.max=Math.max(y.max,v.max)),h=0;h<_.length;h++)if(_[h]instanceof Date){a=!0;break}if(l=m(g.type,mt)||!g.type&&a?et.DateValueAxis:f?et.LogarithmicAxis:et.NumericAxis,c=new l(y.min,y.max,g,this.chartService),c.axisIndex=i,u){if(p[u])throw Error((e?"Y":"X")+" axis with name "+u+" is already defined");p[u]=c}return this.appendAxis(c),c},createAxes:function(t){var e,i,n,s,o=this,r=this.options,a=[].concat(r.xAxis),h=[],l=[].concat(r.yAxis),c=[];for(e=0;e<a.length;e++)i=o.findPane(a[e].pane),Et(i,t)&&h.push(o.createXYAxis(a[e],!1,e));for(n=0;n<l.length;n++)s=o.findPane(l[n].pane),Et(s,t)&&c.push(o.createXYAxis(l[n],!0,n));this.axisX=this.axisX||h[0],this.axisY=this.axisY||c[0]},_dispatchEvent:function(t,e,i){var n,s,o,r,a=t._eventCoordinates(e),h=new Ct(a.x,a.y),l=this.axes,c=l.length,u=[],p=[];for(n=0;n<c;n++)s=l[n],o=s.options.vertical?p:u,r=s.getValue(h),null!==r&&o.push(r);u.length>0&&p.length>0&&t.trigger(i,{element:Mt(e),originalEvent:e,x:b(u),y:b(p)})},updateAxisOptions:function(t,e){var i=t.options.vertical,n=this.groupAxes(this.panes),s=(i?n.y:n.x).indexOf(t);D(this.options,s,i,e),D(this.originalOptions,s,i,e)}}),Tt(Os,{xAxis:{},yAxis:{}}),Ot(Os.prototype,Un),Ls=St.extend({init:function(t,e,i){St.fn.init.call(this,i),this.value=t,this.sector=e},render:function(){var t,e,i,n,s=this.options.labels,o=this.owner.chartService,r=this.value;this._rendered||this.visible===!1||(this._rendered=!0,t=Bt(s),e=this.pointData(),t?r=t(e):s.format&&(r=o.format.auto(s.format,r)),s.visible&&(r||0===r)&&(s.position===ht||s.position===Wi?(s.color||(i=new ae(this.options.color).percBrightness(),s.color=i>180?xt:pt),s.background||(s.background=this.options.color)):(n=o.theme.seriesDefaults.labels,s.color=s.color||n.color,s.background=s.background||n.background),this.label=new Ht(r,Ot({},s,{align:ht,vAlign:"",animation:{type:Ae,delay:this.animationDelay}}),e),this.append(this.label)))},reflow:function(t){this.render(),this.box=t,this.reflowLabel()},reflowLabel:function(){var t,e,i,n,s=this,o=s.options.labels,r=s.label,a=this.sector.clone(),h=o.distance,l=a.middle();r&&(t=r.box.height(),e=r.box.width(),o.position===ht?(a.radius=Math.abs((a.radius-t)/2)+t,i=a.point(l),r.reflow(new kt(i.x,i.y-t/2,i.x,i.y))):o.position===Wi?(a.radius=a.radius-t/2,i=a.point(l),r.reflow(new kt(i.x,i.y-t/2,i.x,i.y))):(i=a.clone().expand(h).point(l),i.x>=a.center.x?(n=i.x+e,r.orientation=vt):(n=i.x-e,r.orientation=ut),r.reflow(new kt(n,i.y-t,i.x,i.y))))},createVisual:function(){var t,e,i=this,n=this,s=n.sector,o=n.options;St.fn.createVisual.call(this),this.value&&(o.visual?(t=(s.startAngle+180)%360,e=o.visual({category:this.category,dataItem:this.dataItem,value:this.value,series:this.series,percentage:this.percentage,center:new le(s.center.x,s.center.y),radius:s.radius,innerRadius:s.innerRadius,startAngle:t,endAngle:t+s.angle,options:o,sender:this.getSender(),createVisual:function(){var t=new re;return i.createSegmentVisual(t),t}}),e&&this.visual.append(e)):this.createSegmentVisual(this.visual))},createSegmentVisual:function(t){var e=this,i=e.sector,n=e.options,s=n.border||{},o=s.width>0?{stroke:{color:s.color,width:s.width,opacity:s.opacity,dashType:s.dashType}}:{},r=n.color,a={color:r,opacity:n.opacity},l=this.createSegment(i,Ot({fill:a,stroke:{opacity:n.opacity},zIndex:n.zIndex
},o));t.append(l),h(n)&&t.append(this.createGradientOverlay(l,{baseColor:r,fallbackFill:a},Ot({center:[i.center.x,i.center.y],innerRadius:i.innerRadius,radius:i.radius,userSpace:!0},n.overlay)))},createSegment:function(t,e){return e.singleSegment?new ie.Circle(new he.Circle(new le(t.center.x,t.center.y),t.radius),e):et.ShapeBuilder.current.createRing(t,e)},createAnimation:function(){var t=this,e=t.options,i=t.sector.center;Ot(e,{animation:{center:[i.x,i.y],delay:this.animationDelay}}),St.fn.createAnimation.call(this)},createHighlight:function(t){var e=this.options.highlight||{},i=e.border||{};return this.createSegment(this.sector,Ot({},t,{fill:{color:e.color,opacity:e.opacity},stroke:{opacity:i.opacity,width:i.width,color:i.color}}))},highlightVisual:function(){return this.visual.children[0]},highlightVisualArgs:function(){var t=this.sector;return{options:this.options,radius:t.radius,innerRadius:t.innerRadius,center:new le(t.center.x,t.center.y),startAngle:t.startAngle,endAngle:t.angle+t.startAngle,visual:this.visual}},tooltipAnchor:function(){var t=this.sector.clone().expand(ke),e=t.middle(),i=t.point(e);return{point:i,align:F(e+180)}},formatValue:function(t){return this.owner.formatPointValue(this,t)},pointData:function(){return{dataItem:this.dataItem,category:this.category,value:this.value,series:this.series,percentage:this.percentage}}}),Ms=Zt(et.rad(30),yt),Bs=Zt(et.rad(60),yt),Tt(Ls,{color:pt,overlay:{gradient:"roundedBevel"},border:{width:.5},labels:{visible:!1,distance:35,font:st.DEFAULT_FONT,margin:Dt(.5),align:dt,zIndex:1,position:Xi},animation:{type:ti},highlight:{visible:!0,border:{width:1}},visible:!0}),Ot(Ls.prototype,en),Hs={createLegendItem:function(t,e,i){var n,s,o,r,a,h=this.options.legend||{},l=h.labels||{},c=h.inactiveItems||{},u=c.labels||{};i&&i.visibleInLegend!==!1&&(n=i.visible!==!1,s=n?Bt(l):Bt(u)||Bt(l),o=i.category,s&&(o=s({text:o,series:i.series,dataItem:i.dataItem,percentage:i.percentage,value:t})),n?(r={},a=e.color):(r={color:u.color,font:u.font},a=(c.markers||{}).color),p(o)&&""!==o&&this.legendItems.push({active:n,pointIndex:i.index,text:o,series:i.series,markerColor:a,labels:r}))}},zs=70,Ds=St.extend({init:function(t,e){St.fn.init.call(this,e),this.plotArea=t,this.chartService=t.chartService,this.points=[],this.legendItems=[],this.render()},render:function(){this.traverseDataPoints(this.addValue.bind(this))},traverseDataPoints:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,m,y,_,w,b=this,A=this,S=A.options,C=A.plotArea.options.seriesColors;for(void 0===C&&(C=[]),e=C.length,i=S.series,n=i.length,s=0;s<n;s++)for(o=i[s],r=o.data,a=x(o),h=a.total,l=a.points,c=a.count,u=360/h,p=void 0,isFinite(u)||(p=360/c),d=void 0,d=wt(o.startAngle)?o.startAngle:S.startAngle,s!==n-1&&o.labels.position===Xi&&(o.labels.position=ht),g=0;g<l.length;g++)f=l[g],f&&(v=f.fields,m=f.value,y=f.visible,_=0!==m?p||m*u:0,w=1!==r.length&&!!v.explode,It(o.color)||(o.color=v.color||C[g%e]),t(f.valueFields.value,new et.Ring(null,0,0,d,_),{owner:b,category:wt(v.category)?v.category:"",index:g,series:o,seriesIx:s,dataItem:r[g],percentage:0!==h?m/h:0,explode:w,visibleInLegend:v.visibleInLegend,visible:y,zIndex:n-s,animationDelay:b.animationDelay(g,s,n)}),y!==!1&&(d+=_))},evalSegmentOptions:function(t,e,i){var n=i.series;s(t,{value:e,series:n,dataItem:i.dataItem,category:i.category,percentage:i.percentage},{defaults:n._defaults,excluded:["data","content","template","visual","toggle"]})},addValue:function(e,i,n){var s,o=Ot({},n.series,{index:n.index});this.evalSegmentOptions(o,e,n),this.createLegendItem(e,o,n),n.visible!==!1&&(s=new Ls(e,i,o),t.extend(s,n),this.append(s),this.points.push(s))},reflow:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m,y,_,w,b=this,A=b.options,S=b.points,C=b.seriesConfigs;for(void 0===C&&(C=[]),e=S.length,i=t.clone(),n=5,s=Math.min(i.width(),i.height()),o=s/2,r=s-.85*s,a=new kt(i.x1,i.y1,i.x1+s,i.y1+s),h=a.center(),l=i.center(),c=A.series.length,u=[],p=[],d=Rt(A.padding,r),this.targetBox=t,d=d>o-n?o-n:d,a.translate(l.x-h.x,l.y-h.y),g=o-d,f=new Ct(g+a.x1+d,g+a.y1+d),v=0;v<e;v++)x=S[v],m=x.sector,y=x.seriesIx,m.radius=g,m.center=f,C.length&&(_=C[y],m.innerRadius=_.innerRadius,m.radius=_.radius),y===c-1&&x.explode&&(m.center=m.clone().setRadius(.15*m.radius).point(m.middle())),x.reflow(a),w=x.label,w&&w.options.position===Xi&&y===c-1&&(w.orientation===vt?p.push(w):u.push(w));u.length>0&&(u.sort(this.labelComparator(!0)),this.leftLabelsReflow(u)),p.length>0&&(p.sort(this.labelComparator(!1)),this.rightLabelsReflow(p)),this.box=a},leftLabelsReflow:function(t){var e=this.distanceBetweenLabels(t);this.distributeLabels(e,t)},rightLabelsReflow:function(t){var e=this.distanceBetweenLabels(t);this.distributeLabels(e,t)},distanceBetweenLabels:function(t){var e,i,n=Lt(this.points),s=n.sector,o=t.length-1,r=s.radius+n.options.labels.distance,a=[],h=t[0].box,l=Zt(h.y1-(s.center.y-r-h.height()-h.height()/2));for(a.push(l),e=0;e<o;e++)i=t[e+1].box,h=t[e].box,l=Zt(i.y1-h.y2),a.push(l);return l=Zt(s.center.y+r-t[o].box.y2-t[o].box.height()/2),a.push(l),a},distributeLabels:function(t,e){var i,n,s,o,r=this,a=t.length;for(o=0;o<a;o++)for(s=-t[o],i=n=o;s>0&&(i>=0||n<a);)s=r._takeDistance(t,o,--i,s),s=r._takeDistance(t,o,++n,s);this.reflowLabels(t,e)},_takeDistance:function(t,e,i,n){var s,o=n;return t[i]>0&&(s=Math.min(t[i],o),o-=s,t[i]-=s,t[e]+=s),o},reflowLabels:function(t,e){var i,n,s,o,r=this,a=Lt(this.points),h=a.sector,l=a.options.labels,c=e.length,u=l.distance,p=h.center.y-(h.radius+u)-e[0].box.height();for(t[0]+=2,n=0;n<c;n++)s=e[n],o=s.box,p+=t[n],i=r.hAlignLabel(o.x2,h.clone().expand(u),p,p+o.height(),s.orientation===vt),s.orientation===vt?(l.align!==dt&&(i=h.radius+h.center.x+u),s.reflow(new kt(i+o.width(),p,i,p))):(l.align!==dt&&(i=h.center.x-h.radius-u),s.reflow(new kt(i-o.width(),p,i,p))),p+=o.height()},createVisual:function(){var t,e,i,n,s,o,r,a,h,l,c,u,p,d,g=this,f=this,v=f.options.connectors,x=f.points,m=x.length,y=4;for(St.fn.createVisual.call(this),this._connectorLines=[],t=0;t<m;t++)e=x[t],i=e.sector,n=e.label,s=i.middle(),o=(e.options.connectors||{}).color||v.color,n&&(r=new ne({stroke:{color:o,width:v.width},animation:{type:Ae,delay:e.animationDelay}}),n.options.position===Xi&&(a=n.box,h=i.center,l=i.point(s),c=new Ct(a.x1,a.center().y),u=void 0,p=void 0,d=void 0,l=i.clone().expand(v.padding).point(s),r.moveTo(l.x,l.y),n.orientation===vt?(p=new Ct(a.x1-v.padding,a.center().y),d=N(h,l,c,p),c=new Ct(p.x-y,p.y),d=d||c,d.x=Math.min(d.x,c.x),g.pointInCircle(d,i.center,i.radius+y)||d.x<i.center.x?(u=i.center.x+i.radius+y,e.options.labels.align!==Ye?u<c.x?r.lineTo(u,l.y):r.lineTo(l.x+2*y,l.y):r.lineTo(u,l.y),r.lineTo(c.x,p.y)):(d.y=p.y,r.lineTo(d.x,d.y))):(p=new Ct(a.x2+v.padding,a.center().y),d=N(h,l,c,p),c=new Ct(p.x+y,p.y),d=d||c,d.x=Math.max(d.x,c.x),g.pointInCircle(d,i.center,i.radius+y)||d.x>i.center.x?(u=i.center.x-i.radius-y,e.options.labels.align!==Ye?u>c.x?r.lineTo(u,l.y):r.lineTo(l.x-2*y,l.y):r.lineTo(u,l.y),r.lineTo(c.x,p.y)):(d.y=p.y,r.lineTo(d.x,d.y))),r.lineTo(p.x,p.y),g._connectorLines.push(r),g.visual.append(r)))},renderVisual:function(){var t,e,i,n,s;if(St.fn.renderVisual.call(this),et.find(this.options.series,function(t){return t.autoFit})){if(t=this.targetBox,e=this.box.center(),i=this.visual.bbox(),!i)return;n=i.bottomRight(),s=Math.min((e.y-t.y1)/(e.y-i.origin.y),(t.y2-e.y)/(n.y-e.y),(e.x-t.x1)/(e.x-i.origin.x),(t.x2-e.x)/(n.x-e.x)),s<1&&this.visual.transform(ce().scale(s,s,[e.x,e.y]))}},labelComparator:function(t){var e=t?-1:1;return function(t,i){var n=(t.parent.sector.middle()+270)%360,s=(i.parent.sector.middle()+270)%360;return(n-s)*e}},hAlignLabel:function(t,e,i,n,s){var o=e.radius,r=e.center,a=r.x,h=r.y,l=Math.min(Math.abs(h-i),Math.abs(h-n));return l>o?t:a+Math.sqrt(o*o-l*l)*(s?1:-1)},pointInCircle:function(t,e,i){return Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)<Math.pow(i,2)},formatPointValue:function(t,e){return this.chartService.format.auto(e,t.value)},animationDelay:function(t){return t*zs},stackRoot:function(){return this}}),Tt(Ds,{startAngle:90,connectors:{width:2,color:"#939393",padding:8},inactiveItems:{markers:{},labels:{}}}),Ot(Ds.prototype,Hs),Ds.prototype.isStackRoot=!0,Fs=qn.extend({render:function(){this.createPieChart(this.series)},createPieChart:function(t){var e=t[0],i=new Ds(this,{series:t,padding:e.padding,startAngle:e.startAngle,connectors:e.connectors,legend:this.options.legend});this.appendChart(i)},appendChart:function(t,e){qn.fn.appendChart.call(this,t,e),Nt(this.options.legend.items,t.legendItems)}}),Ns=Ls.extend({reflowLabel:function(){var t,e,i=this,n=i.options.labels,s=i.label,o=this.sector.clone(),r=o.middle();s&&(t=s.box.height(),n.position===ht?(o.radius-=(o.radius-o.innerRadius)/2,e=o.point(r),s.reflow(new kt(e.x,e.y-t/2,e.x,e.y))):Ls.fn.reflowLabel.call(this))},createSegment:function(t,e){return et.ShapeBuilder.current.createRing(t,e)}}),Tt(Ns,{overlay:{gradient:"roundedGlass"},labels:{position:ht},animation:{type:ti}}),Ot(Ns.prototype,en),Gs=50,qs=Ds.extend({addValue:function(e,i,n){var s,o=Ot({},n.series,{index:n.index});this.evalSegmentOptions(o,e,n),this.createLegendItem(e,o,n),e&&n.visible!==!1&&(s=new Ns(e,i,o),t.extend(s,n),this.append(s),this.points.push(s))},reflow:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d=this,g=this.options,f=t.clone(),v=5,x=Math.min(f.width(),f.height()),m=x/2,y=x-.85*x,_=g.series,w=_.length,b=Rt(g.padding,y);for(b=b>m-v?m-v:b,e=m-b,i=0,s=0;s<w;s++)o=_[s],0===s&&wt(o.holeSize)&&(n=o.holeSize,e-=o.holeSize),wt(o.size)?e-=o.size:i++,wt(o.margin)&&s!==w-1&&(e-=o.margin);for(wt(n)||(r=(m-b)/(w+.75),n=.75*r,e-=n),a=n,h=0,this.seriesConfigs=[],u=0;u<w;u++)p=_[u],l=Rt(p.size,e/i),a+=h,c=a+l,d.seriesConfigs.push({innerRadius:a,radius:c}),h=p.margin||0,a=c;Ds.fn.reflow.call(this,t)},animationDelay:function(t,e,i){return t*Gs+be*(e+1)/(i+1)}}),Tt(qs,{startAngle:90,connectors:{width:2,color:"#939393",padding:8}}),Ws=Fs.extend({render:function(){this.createDonutChart(this.series)},createDonutChart:function(t){var e=t[0],i=new qs(this,{series:t,padding:e.padding,connectors:e.connectors,legend:this.options.legend});this.appendChart(i)}}),Us=.15,Xs=qn.extend({initFields:function(){this.valueAxisRangeTracker=new xn},render:function(){this.addToLegend(this.series),this.createPolarAxis(),this.createCharts(),this.createValueAxis()},alignAxes:function(){var t=this.valueAxis,e=t.range(),i=t.options.reverse?e.max:e.min,n=t.getSlot(i),s=this.polarAxis.getSlot(0).center,o=t.box.translate(s.x-n.x1,s.y-n.y1);t.reflow(o)},createValueAxis:function(){var t,e,i,n,s=this.valueAxisRangeTracker,o=s.query(),r=this.valueAxisOptions({roundToMajorUnit:!1,zIndex:-1});r.type===Gi?(t=et.RadarLogarithmicAxis,e={min:.1,max:1}):(t=et.RadarNumericAxis,e={min:0,max:1}),i=s.query(name)||o||e,i&&o&&(i.min=Math.min(i.min,o.min),i.max=Math.max(i.max,o.max)),n=new t(i.min,i.max,r,this.chartService),this.valueAxis=n,this.appendAxis(n)},reflowAxes:function(){var t,e,i=this,n=i.options.plotArea,s=i.valueAxis,o=i.polarAxis,r=i.box,a=Math.min(r.width(),r.height())*Us,h=Dt(n.padding||{},a),l=r.clone().unpad(h),c=l.clone();c.y2=c.y1+Math.min(c.width(),c.height()),c.align(l,ft,ht),t=c.clone().shrink(0,c.height()/2),o.reflow(c),s.reflow(t),e=s.lineBox().height()-s.box.height(),s.reflow(s.box.unpad({top:e})),this.axisBox=c,this.alignAxes(c)},backgroundBox:function(){return this.box},detachLabels:function(){}}),Zs=In.extend({pointSlot:function(t,e){var i=t.center.y-e.y1,n=Ct.onCircle(t.center,t.startAngle,i);return new kt(n.x,n.y,n.x,n.y)}}),Tt(Zs,{clip:!1}),Ys=Vs.extend({}),Ys.prototype.pointSlot=Zs.prototype.pointSlot,Tt(Ys,{clip:!1}),js=fn.extend({fillToAxes:function(t){var e=this._polarAxisCenter();t.lineTo(e.x,e.y)},_polarAxisCenter:function(){var t=this.parent.plotArea.polarAxis,e=t.box.center();return e},strokeSegments:function(){var t,e,i,n=this._strokeSegments;return n||(t=this._polarAxisCenter(),e=new Ft((!1)),i=this.points(),i.push(t),n=this._strokeSegments=e.process(i),n.pop()),n}}),Ks=dn.extend({fillToAxes:function(t){var e=this.parent.plotArea.polarAxis,i=e.box.center(),n=new he.Segment([i.x,i.y]);t.segments.unshift(n),t.segments.push(n)}}),Qs=Ys.extend({createSegment:function(t,e,i){var n,s=(e.line||{}).style;return n=s===Fe?new js(t,e,i):new Ks(t,e,i)},createMissingValue:function(t,e){var i;return p(t.x)&&e!==Be&&(i={x:t.x,y:t.y},e===Me&&(i.y=0)),i},seriesMissingValues:function(t){return t.missingValues||Me},_hasMissingValuesGap:function(){var t,e=this,i=this.options.series;for(t=0;t<i.length;t++)if(e.seriesMissingValues(i[t])===He)return!0},sortPoints:function(t){var e,i,n,s=this;if(t.sort(G),this._hasMissingValuesGap())for(e=0;e<t.length;e++)i=t[e],i&&(n=i.value,p(n.y)||s.seriesMissingValues(i.series)!==He||delete t[e]);return t}}),$s=Xs.extend({createPolarAxis:function(){var t=new et.PolarAxis(this.options.xAxis,this.chartService);this.polarAxis=t,this.axisX=t,this.appendAxis(t)},valueAxisOptions:function(t){return Ot(t,{majorGridLines:{type:_t},minorGridLines:{type:_t}},this.options.yAxis)},createValueAxis:function(){Xs.fn.createValueAxis.call(this),this.axisY=this.valueAxis},appendChart:function(t,e){this.valueAxisRangeTracker.update(t.yAxisRanges),qn.prototype.appendChart.call(this,t,e)},createCharts:function(){var t=this.filterVisibleSeries(this.series),e=this.panes[0];this.createLineChart(y(t,[ii]),e),this.createScatterChart(y(t,[ni]),e),this.createAreaChart(y(t,[ei]),e)},createLineChart:function(t,e){if(0!==t.length){var i=new Ys(this,{series:t});this.appendChart(i,e)}},createScatterChart:function(t,e){if(0!==t.length){var i=new Zs(this,{series:t});this.appendChart(i,e)}},createAreaChart:function(t,e){if(0!==t.length){var i=new Qs(this,{series:t});this.appendChart(i,e)}},_dispatchEvent:function(t,e,i){var n=t._eventCoordinates(e),s=new Ct(n.x,n.y),o=this.axisX.getValue(s),r=this.axisY.getValue(s);null!==o&&null!==r&&t.trigger(i,{element:Mt(e),x:o,y:r})},createCrosshairs:function(){}}),Tt($s,{xAxis:{},yAxis:{}}),Ot($s.prototype,Un),Js=pn.extend({pointSlot:function(t,e){var i=t.center.y-e.y1,n=Ct.onCircle(t.center,t.middle(),i);return new kt(n.x,n.y,n.x,n.y)},renderSegments:function(){var t,e,i,n,s,o,r,a;if(pn.fn.renderSegments.call(this),this._segments&&this._segments.length>1)for(t=q(this._segments),e=0;e<t.length;e++)i=t[e],i&&i.length>1&&(n=i[0].linePoints[0],s=Lt(i),o=Lt(s.linePoints),r=0===n.categoryIx,a=o.categoryIx===o.categoriesCount-1,r&&a&&Lt(i).linePoints.push(n))},createSegment:function(t,e,i){var n,s,o,r=e.style;return n=r===Fe?hn:on,s=new n(t,e,i),o=this.seriesMissingValues(e),t.length!==e.data.length&&o!==Be||(s.options.closed=!0),s}}),Tt(Js,{clip:!1,limitPoints:!1}),to=fn.extend({fillToAxes:function(){}}),eo=dn.extend({fillToAxes:function(){}}),io=Js.extend({createSegment:function(t,e,i,n){var s,o,r,a=this.options.isStacked,h=(e.line||{}).style;return a&&i>0&&n&&(o=n.linePoints.slice(0),s=n),h===Fe?(r=new to(t,e,i,s,o),r.options.closed=!0):(t.push(t[0]),r=new eo(t,e,i,s,o)),r},seriesMissingValues:function(t){return t.missingValues||Me}}),no=Ns.extend({init:function(t,e){Ns.fn.init.call(this,t,null,e)}}),Tt(no,{overlay:{gradient:"none"},labels:{distance:10}}),so=St.extend({init:function(t){St.fn.init.call(this,t),this.forEach=t.rtl?c:l},reflow:function(t){var e=this,i=e.options,n=e.children,s=i.gap,o=i.spacing,r=n.length,a=r+s+o*(r-1),h=t.angle/a,l=t.startAngle+h*(s/2);this.forEach(n,function(e){var i=t.clone();i.startAngle=l,i.angle=h,e.sector&&(i.radius=e.sector.radius),e.reflow(i),e.sector=i,l+=h+h*o})}}),Tt(so,{gap:1,spacing:0}),oo=St.extend({reflow:function(t){var e,i,n=this,s=n.options.reverse,o=n.children,r=o.length,a=s?r-1:0,h=s?-1:1;for(this.box=new kt,e=a;e>=0&&e<r;e+=h)i=o[e].sector,i.startAngle=t.startAngle,i.angle=t.angle}}),ro=An.extend({pointType:function(){return no},clusterType:function(){return so},stackType:function(){return oo},categorySlot:function(t,e){return t.getSlot(e)},pointSlot:function(t,e){var i=t.clone(),n=t.center.y;return i.radius=n-e.y1,i.innerRadius=n-e.y2,i},reflowPoint:function(t,e){t.sector=e,t.reflow()},createAnimation:function(){this.options.animation.center=this.box.toRect().center(),An.fn.createAnimation.call(this)}}),ro.prototype.reflow=tn.prototype.reflow,Tt(ro,{clip:!1,limitPoints:!1,animation:{type:"pie"}}),ao=Xs.extend({createPolarAxis:function(){var t=new et.RadarCategoryAxis(this.options.categoryAxis,this.chartService);this.polarAxis=t,this.categoryAxis=t,this.appendAxis(t),this.aggregateCategories(),this.createCategoryAxesLabels()},valueAxisOptions:function(t){return this._hasBarCharts&&Ot(t,{majorGridLines:{type:_t},minorGridLines:{type:_t}}),this._isStacked100&&Ot(t,{roundToMajorUnit:!1,labels:{format:"P0"}}),Ot(t,this.options.valueAxis)},aggregateCategories:function(){us.prototype.aggregateCategories.call(this,this.panes)},createCategoryAxesLabels:function(){us.prototype.createCategoryAxesLabels.call(this,this.panes)},filterSeries:function(t){return t},createCharts:function(){var t=this.filterVisibleSeries(this.series),e=this.panes[0];this.createAreaChart(y(t,[si]),e),this.createLineChart(y(t,[ri]),e),this.createBarChart(y(t,[oi]),e)},chartOptions:function(t){var e,i,n={series:t},s=t[0];return s&&(e=this.filterVisibleSeries(t),i=s.stack,n.isStacked=i&&e.length>1,n.isStacked100=i&&"100%"===i.type&&e.length>1,n.isStacked100&&(this._isStacked100=!0)),n},createAreaChart:function(t,e){if(0!==t.length){var i=new io(this,this.chartOptions(t));this.appendChart(i,e)}},createLineChart:function(t,e){if(0!==t.length){var i=new Js(this,this.chartOptions(t));this.appendChart(i,e)}},createBarChart:function(t,e){var i,n,s;0!==t.length&&(i=t[0],n=this.chartOptions(t),n.gap=i.gap,n.spacing=i.spacing,s=new ro(this,n),this.appendChart(s,e),this._hasBarCharts=!0)},seriesCategoryAxis:function(){return this.categoryAxis},_dispatchEvent:function(t,e,i){var n=t._eventCoordinates(e),s=new Ct(n.x,n.y),o=this.categoryAxis.getCategory(s),r=this.valueAxis.getValue(s);null!==o&&null!==r&&t.trigger(i,{element:Mt(e),category:o,value:r})},createCrosshairs:function(){}}),Ot(ao.prototype,Un,{appendChart:us.prototype.appendChart,aggregateSeries:us.prototype.aggregateSeries,seriesSourcePoints:us.prototype.seriesSourcePoints}),Tt(ao,{categoryAxis:{categories:[]},valueAxis:{}}),ho=St.extend({init:function(t,e,i){St.fn.init.call(this,e),this.value=t,this.options.index=i.index},reflow:function(t){var e=this.points,i=this.children[0];this.box=new kt(e[0].x,e[0].y,e[1].x,e[2].y),i&&i.reflow(new kt(t.x1,e[0].y,t.x2,e[2].y))},createVisual:function(){var t,e=this,i=this.options;St.fn.createVisual.call(this),t=i.visual?i.visual({category:this.category,dataItem:this.dataItem,value:this.value,series:this.series,percentage:this.percentage,points:this.points,options:i,sender:this.getSender(),createVisual:function(){return e.createPath()}}):this.createPath(),t&&this.visual.append(t)},createPath:function(){var t=this.options,e=t.border,i=ne.fromPoints(this.points,{fill:{color:t.color,opacity:t.opacity},stroke:{color:e.color,opacity:e.opacity,width:e.width}}).close();return i},createHighlight:function(t){return ne.fromPoints(this.points,t)},highlightVisual:function(){return this.visual.children[0]},highlightVisualArgs:function(){var t=ne.fromPoints(this.points).close();return{options:this.options,path:t}},tooltipAnchor:function(){var t=this.box;return{point:new Ct(t.center().x,t.y1),align:{horizontal:"center",vertical:"top"}}},formatValue:function(t){var e=this;return e.owner.formatPointValue(e,t)}}),Tt(ho,{color:pt,border:{width:1}}),Ot(ho.prototype,en),lo=St.extend({init:function(t,e){St.fn.init.call(this,e),this.plotArea=t,this.points=[],this.labels=[],this.legendItems=[],this.render()},formatPointValue:function(t,e){return this.chartService.format.auto(e,t.value)},render:function(){var t,e,i,n,s,o,r,a,h,l,c,u=this,p=this,d=p.options,g=p.plotArea.options.seriesColors;if(void 0===g&&(g=[]),t=d.series[0],e=t.data)for(i=x(t),n=i.total,s=i.points,o=0;o<s.length;o++)r=s[o],r&&(a=r.fields,It(t.color)||(t.color=a.color||g[o%g.length]),a=Ot({index:o,owner:u,series:t,dataItem:e[o],percentage:r.value/n},a,{visible:r.visible}),h=r.valueFields.value,l=u.createSegment(h,a),c=u.createLabel(h,a),l&&c&&l.append(c))},evalSegmentOptions:function(t,e,i){var n=i.series;s(t,{value:e,series:n,dataItem:i.dataItem,index:i.index},{defaults:n._defaults,excluded:["data","content","template","toggle","visual"]})},createSegment:function(e,i){var n,s=Ot({},i.series);if(this.evalSegmentOptions(s,e,i),this.createLegendItem(e,s,i),i.visible!==!1)return n=new ho(e,s,i),t.extend(n,i),this.append(n),this.points.push(n),n},createLabel:function(t,e){var i,n,s,o,r=e.series,a=e.dataItem,h=Ot({},this.options.labels,r.labels),l=t;if(h.visible)return i=Bt(h),n={dataItem:a,value:t,percentage:e.percentage,category:e.category,series:r},i?l=i(n):h.format&&(l=this.plotArea.chartService.format.auto(h.format,l)),h.color||(s=new ae(r.color).percBrightness(),h.color=s>180?xt:pt,h.background||(h.background=r.color)),this.evalSegmentOptions(h,t,e),o=new Ht(l,Ot({vAlign:h.position},h),n),this.labels.push(o),o},labelPadding:function(){var t,e,i,n,s=this.labels,o={left:0,right:0};for(t=0;t<s.length;t++)e=s[t],i=e.options.align,i!==ht&&(n=s[t].box.width(),i===ut?o.left=Math.max(o.left,n):o.right=Math.max(o.right,n));return o},dynamicSlopeReflow:function(t,e,i){var n,s,o,r,a,h,l,c,u,p,d,g=this,f=g.options,v=g.points,x=v.length,m=v[0],y=m;for(n=0;n<v.length;n++)v[n].percentage>y.percentage&&(y=v[n]);for(s=m.percentage/y.percentage*e,o=(e-s)/2,r=0,a=0;a<x;a++)h=v[a].percentage,l=v[a+1],c=l?l.percentage:h,u=v[a].points=[],p=f.dynamicHeight?i*h:i/x,d=void 0,d=h?(e-s*(c/h))/2:c?0:e/2,d=Yt(d,0,e),u.push(new le(t.x1+o,t.y1+r)),u.push(new le(t.x1+e-o,t.y1+r)),u.push(new le(t.x1+e-d,t.y1+p+r)),u.push(new le(t.x1+d,t.y1+p+r)),o=d,r+=p+f.segmentSpacing,s=Yt(e-2*d,0,e)},constantSlopeReflow:function(t,e,i){var n,s,o,r,a,h=this,l=h.options,c=h.points,u=c.length,p=l.neckRatio<=1,d=p?l.neckRatio*e:e,g=p?0:(e-e/l.neckRatio)/2,f=p?e:e-2*g,v=(f-d)/2,x=0;for(n=0;n<u;n++)s=c[n].points=[],o=c[n].percentage,r=l.dynamicHeight?v*o:v/u,a=l.dynamicHeight?i*o:i/u,s.push(new le(t.x1+g,t.y1+x)),s.push(new le(t.x1+e-g,t.y1+x)),s.push(new le(t.x1+e-g-r,t.y1+a+x)),s.push(new le(t.x1+g+r,t.y1+a+x)),g+=r,x+=a+l.segmentSpacing},reflow:function(t){var e,i,n,s,o,r=this.points,a=r.length;if(a)for(e=this.options,i=t.clone().unpad(this.labelPadding()),n=i.height()-e.segmentSpacing*(a-1),s=i.width(),e.dynamicSlope?this.dynamicSlopeReflow(i,s,n):this.constantSlopeReflow(i,s,n),o=0;o<a;o++)r[o].reflow(t)}}),Tt(lo,{neckRatio:.3,width:300,dynamicSlope:!1,dynamicHeight:!0,segmentSpacing:0,labels:{visible:!1,align:ht,position:ht,zIndex:1}}),Ot(lo.prototype,Hs),co=qn.extend({render:function(){this.createFunnelChart(this.series)},createFunnelChart:function(t){var e=t[0],i=new lo(this,{series:t,legend:this.options.legend,neckRatio:e.neckRatio,dynamicHeight:e.dynamicHeight,dynamicSlope:e.dynamicSlope,segmentSpacing:e.segmentSpacing,highlight:e.highlight});this.appendChart(i)},appendChart:function(t,e){qn.fn.appendChart.call(this,t,e),Nt(this.options.legend.items,t.legendItems)}}),uo="color",po="first",go="from",fo="max",vo="min",xo="noteText",mo="summary",yo="to",bs.current.register(us,[qe,Ye,$e,fi,Ge,pi,Ze,Je,Xe,gi,We,di,li,hi,xi,Qe,ai,vi]),bs.current.register(Os,[ci,ui,Ue]),bs.current.register(Fs,[ti]),bs.current.register(Ws,[je]),bs.current.register(co,[Ke]),bs.current.register($s,[ei,ii,ni]),bs.current.register(ao,[si,oi,ri]),fe.current.register([qe,Ye,$e,fi,Ge,pi],[at],[qi,uo,xo,Te,Ee]),fe.current.register([li,hi,ai,vi],[go,yo],[qi,uo,xo]),fe.current.register([xi,Qe],[at],[qi,uo,xo,mo]),fe.current.register([ei,ii,ni],[gt,ft],[uo]),fe.current.register([si,oi,ri],[at],[uo]),fe.current.register([Ke],[at],[qi,uo,"visibleInLegend","visible"]),Zn.current.register([qe,Ye,$e,fi,Ge,pi,xi,Qe],{value:fo,color:po,noteText:po,errorLow:vo,errorHigh:fo}),Zn.current.register([li,hi,ai,vi],{from:vo,to:fo,color:po,noteText:po}),Zn.current.register([si,oi,ri],{value:fo,color:po}),fe.current.register([ci,ui,Ue],[gt,ft],[uo,xo,Ie,Re,Ve,Oe]),fe.current.register([Ue],[gt,ft,"size"],[uo,qi,xo]),fe.current.register([Ze,Je],["open","high","low","close"],[qi,uo,"downColor",xo]),Zn.current.register([Ze,Je],{open:fo,high:fo,low:vo,close:fo,color:po,downColor:po,noteText:po}),fe.current.register([We,di],["lower","q1","median","q3","upper","mean","outliers"],[qi,uo,xo]),Zn.current.register([We,di],{lower:fo,q1:fo,median:fo,q3:fo,upper:fo,mean:fo,outliers:po,color:po,noteText:po}),fe.current.register([Xe,gi],["current","target"],[qi,uo,"visibleInLegend",xo]),Zn.current.register([Xe,gi],{current:fo,target:fo,color:po,noteText:po}),fe.current.register([ti,je],[at],[qi,uo,"explode","visibleInLegend","visible"]),_o=[qi,at,gt,ft],wo="mousemove",bo="contextmenu",Ao="mouseleave",So=20,Co=it.extend({init:function(t,e,i,n){var s,o=this;void 0===n&&(n={}),this.observers=[],this.addObserver(n.observer),this.chartService=new Jt.ChartService(this,n),this.chartService.theme=i,this._initElement(t),s=Ot({},this.options,e),this._originalOptions=Ot({},s),this._theme=i,this._initTheme(s,i),this._initHandlers(),this._initSurface(),this.bindCategories(),et.FontLoader.preloadFonts(e,function(){o.fontLoaded=!0,o._destroyed||(o.trigger("init"),o._redraw(),o._attachEvents())})},_initElement:function(t){for(this._setElementClass(t),t.style.position="relative";t.firstChild;)t.removeChild(t.firstChild);this.element=t},_setElementClass:function(t){et.addClass(t,"k-chart")},_initTheme:function(e,i){var n,s=[],o=e.series||[];for(n=0;n<o.length;n++)s.push(t.extend({},o[n]));e.series=s,W(e),this.applyDefaults(e,i),null===e.seriesColors&&delete e.seriesColors,this.options=Ot({},i,e),this.applySeriesColors()},getSize:function(){var t=this.options.chartArea||{},e=t.width?parseInt(t.width,10):Math.floor(this.element.offsetWidth),i=t.height?parseInt(t.height,10):Math.floor(this.element.offsetHeight);return{width:e,height:i}},resize:function(t){var e=this.getSize(),i=this._size,n=e.width>0||e.height>0;t||n&&(!i||e.width!==i.width||e.height!==i.height)?(this._size=e,this._resize(e,t),this.trigger("resize",e)):n&&this._selections&&et.find(this._selections,function(t){return!t.visible})&&(this._destroySelections(),this._setupSelection())},_resize:function(){this._noTransitionsRedraw()},redraw:function(t){var e,i;this.applyDefaults(this.options),this.applySeriesColors(),t?(e=this._model._plotArea,i=e.findPane(t),e.redraw(i)):this._redraw()},getAxis:function(t){return e(t,this._plotArea.axes)},findAxisByName:function(t){return this.getAxis(t)},findPaneByName:function(t){var e,i=this._plotArea.panes;for(e=0;e<i.length;e++)if(i[e].options.name===t)return new pe(i[e])},findPaneByIndex:function(t){var e=this._plotArea.panes;if(e[t])return new pe(e[t])},plotArea:function(){return new de(this._plotArea)},toggleHighlight:function(t,e){var i,n,s,o=this._plotArea,r=(o.srcSeries||o.series||[])[0];It(e)?i=o.filterPoints(e):(Vt(e)?(n=e.series,s=e.category):n=s=e,i=r.type===je?U(o.pointsBySeriesName(n),s):r.type===ti||r.type===Ke?U((o.charts[0]||{}).points,s):o.pointsBySeriesName(n)),i&&this.togglePointsHighlight(t,i)},togglePointsHighlight:function(t,e){var i,n=this._highlight;for(i=0;i<e.length;i++)n.togglePointHighlight(e[i],t)},showTooltip:function(t){var e,i,n,s=this._sharedTooltip(),o=this,r=o._tooltip,a=o._plotArea;It(t)?(e=a.findPoint(t),e&&s&&(i=e.categoryIx)):s&&wt(t)&&(i=a.categoryAxis.categoryIndex(t)),s?i>=0&&(n=this._plotArea.pointsByCategoryIndex(i),r.showAt(n)):e&&r.show(e)},hideTooltip:function(){this._tooltip.hide()},_initSurface:function(){var t=this.surface,e=this._surfaceWrap(),i=this.options.chartArea||{};i.width&&et.elementSize(e,{width:i.width}),i.height&&et.elementSize(e,{height:i.height}),t&&t.options.type===this.options.renderAs?(this.surface.clear(),this.surface.resize()):(this._destroySurface(),this.surface=ie.Surface.create(e,{type:this.options.renderAs}),this.surface.bind("mouseenter",this._surfaceMouseenterHandler),this.surface.bind("mouseleave",this._surfaceMouseleaveHandler))},_surfaceWrap:function(){return this.element},_redraw:function(){var t=this._getModel();this._size={width:t.options.width,height:t.options.height},this._destroyView(),this._model=t,this._plotArea=t._plotArea,t.renderVisual(),this.options.transitions!==!1&&t.traverse(function(t){t.animation&&t.animation.setup()}),this._initSurface(),this.surface.draw(t.visual),this.options.transitions!==!1&&t.traverse(function(t){t.animation&&t.animation.play()}),this._tooltip=this._createTooltip(),this._highlight=new ps,this._setupSelection(),this._createPannable(),this._createZoomSelection(),this._createMousewheelZoom(),this.trigger(zi),tt(this._plotArea.panes),this._navState||this._cancelDomEvents()},exportVisual:function(t){var e,i,n,s;return t&&(t.width||t.height||t.options)?(i=this.options,n=Ot({},t.options,{chartArea:{width:t.width,height:t.height}}),J(this._originalOptions,n),this.options=Ot({},this._originalOptions,n),this._initTheme(this.options,this._theme),this.bindCategories(),s=this._getModel(),s.renderVisual(),tt(s._plotArea.panes),e=s.visual,this.options=i):e=this.surface.exportVisual(),e},_sharedTooltip:function(){return this._plotArea instanceof us&&this.options.tooltip&&this.options.tooltip.shared},_createPannable:function(){var t=this.options;t.pannable!==!1&&(this._pannable=new ds(this._plotArea,t.pannable))},_createZoomSelection:function(){var t=this.options.zoomable,e=(t||{}).selection;t!==!1&&e!==!1&&(this._zoomSelection=new gs(this,e))},_createMousewheelZoom:function(){var t=this.options.zoomable,e=(t||{}).mousewheel;t!==!1&&e!==!1&&(this._mousewheelZoom=new fs(this,e))},_toggleDragZoomEvents:function(){var t=this.options.pannable,e=this.options.zoomable,i=(e||{}).selection,n=(e||{}).mousewheel,s=!(t||e!==!1&&i!==!1||this.requiresHandlers([Ri,Ei,Ii])),o=(e===!1||n===!1)&&!this.requiresHandlers([Vi,Oi,Li]),r=this.element;this._dragZoomEnabled&&s&&o?(r.style.touchAction=this._touchAction||"",this._dragZoomEnabled=!1):this._dragZoomEnabled||s&&o||(r.style.touchAction="none",this._dragZoomEnabled=!0),this._toggleDomEvents(!s,!o)},_toggleDomEvents:function(t,e){var i=this.domEvents;i&&(i.toggleDrag&&i.toggleDrag(t),i.toggleZoom&&i.toggleZoom(e))},_createTooltip:function(){var t,e=this,i=e.options.tooltip;return t=this._sharedTooltip()?this._createSharedTooltip(i):new ks(this.chartService,i)},_createSharedTooltip:function(t){return new Ps(this._plotArea,t)},applyDefaults:function(t,e){X(t,e),Z(t,e)},applySeriesColors:function(){var t,e,i,n,s=this.options,o=s.series,r=s.seriesColors||[];for(t=0;t<o.length;t++)e=o[t],i=r[t%r.length],n=e._defaults,e.color=e.color||i,n&&(n.color=n.color||i)},_getModel:function(){var t=this.options,e=this._createPlotArea(),i=new et.RootElement(this._modelOptions());return i.chart=this,i._plotArea=e,et.Title.buildTitle(t.title,i),t.legend&&t.legend.visible&&i.append(new ws(e.options.legend,this.chartService)),i.append(e),i.reflow(),i},_modelOptions:function(){var t=this.options,e=this.getSize();return Ot({transitions:t.transitions,width:e.width||st.DEFAULT_WIDTH,height:e.height||st.DEFAULT_HEIGHT},t.chartArea)},_createPlotArea:function(t){var e=this.options,i=bs.current.create(t?[]:e.series,e,this.chartService);return i},_setupSelection:function(){var t,e,i,n,s,o=this,r=this,a=r._plotArea.axes,h=this._selections=[];for(t=0;t<a.length;t++)e=a[t],i=e.options,e instanceof Ut&&i.select&&!i.vertical&&(n=e.range(),s=new Cs(o,e,Ot({min:n.min,max:n.max},i.select)),h.push(s))},_selectStart:function(t){return this.trigger(Mi,t)},_select:function(t){return this.trigger(Bi,t)},_selectEnd:function(t){return this.trigger(Hi,t)},_initHandlers:function(){this._clickHandler=this._click.bind(this),this._mousewheelHandler=this._mousewheel.bind(this),this._mouseleaveHandler=this._mouseleave.bind(this),this._surfaceMouseenterHandler=this._mouseover.bind(this),this._surfaceMouseleaveHandler=this._mouseout.bind(this),this._mousemove=kendo.throttle(this._mousemove.bind(this),So)},
addObserver:function(t){t&&this.observers.push(t)},removeObserver:function(t){var e=this.observers.indexOf(t);e>=0&&this.observers.splice(e,1)},requiresHandlers:function(t){var e,i=this.observers;for(e=0;e<i.length;e++)if(i[e].requiresHandlers(t))return!0},trigger:function(t,e){var i,n,s;for(void 0===e&&(e={}),t===Di&&(e.anchor.point=this._toDocumentCoordinates(e.anchor.point)),e.sender=this,i=this.observers,n=!1,s=0;s<i.length;s++)i[s].trigger(t,e)&&(n=!0);return n},_attachEvents:function(){var t,e,i=this.element;this._touchAction=i.style.touchAction,$t(i,(t={},t[bo]=this._clickHandler,t[Zi]=this._mousewheelHandler,t[Ao]=this._mouseleaveHandler,t)),this._shouldAttachMouseMove()&&$t(i,(e={},e[wo]=this._mousemove,e)),this.domEvents=Jt.DomEventsBuilder.create(this.element,{start:this._start.bind(this),move:this._move.bind(this),end:this._end.bind(this),tap:this._tap.bind(this),gesturestart:this._gesturestart.bind(this),gesturechange:this._gesturechange.bind(this),gestureend:this._gestureend.bind(this)}),this._toggleDragZoomEvents()},_mouseleave:function(t){this._hoveredPoint&&(this._hoveredPoint.out(this,t),this._hoveredPoint=null),this._plotArea.hovered&&(this.trigger(Ti),this._plotArea.hovered=!1)},_cancelDomEvents:function(){this.domEvents&&this.domEvents.cancel&&this.domEvents.cancel()},_gesturestart:function(t){this._mousewheelZoom&&!this._stopChartHandlers(t)&&(this._gestureDistance=t.distance,this._unsetActivePoint(),this.surface.suspendTracking())},_gestureend:function(t){this._zooming&&!this._stopChartHandlers(t)&&(this.surface&&this.surface.resumeTracking(),this._zooming=!1,this.trigger(Li,{}))},_gesturechange:function(t){var e,i,n,s,o=this._mousewheelZoom;o&&!this._stopChartHandlers(t)&&(t.preventDefault(),e=this._gestureDistance,i=-t.distance/e+1,Math.abs(i)>=.1&&(i=Math.round(10*i),this._gestureDistance=t.distance,n={delta:i,axisRanges:j(this._plotArea.axes),originalEvent:t},!this._zooming&&this.trigger(Vi,n)||(this._zooming||(this._zooming=!0),s=n.axisRanges=o.updateRanges(i),s&&!this.trigger(Oi,n)&&o.zoom())))},_mouseout:function(t){if(t.element){var e=this._drawingChartElement(t.element,t);e&&e.leave&&e.leave(this,t.originalEvent)}},_start:function(t){var e=this._eventCoordinates(t);!this._stopChartHandlers(t)&&this._plotArea.backgroundContainsPoint(e)&&(this.requiresHandlers([Ri,Ei,Ii])&&this._startNavigation(t,e,Ri),this._pannable&&this._pannable.start(t)&&(this.surface.suspendTracking(),this._unsetActivePoint(),this._suppressHover=!0,this.chartService.panning=!0),this._zoomSelection&&this._zoomSelection.start(t)&&this.trigger(Vi,{axisRanges:j(this._plotArea.axes),originalEvent:t}))},_move:function(t){var e,i,n,s,o,r,a,h,l=this,c=l._navState,u=l._pannable;if(!this._stopChartHandlers(t)){if(u)e=u.move(t),e&&!this.trigger(Ei,{axisRanges:e,originalEvent:t})&&u.pan();else if(c){for(i={},n=c.axes,s=0;s<n.length;s++)o=n[s],r=o.options.name,r&&(a=o.options.vertical?t.y:t.x,h=a.startLocation-a.location,0!==h&&(i[o.options.name]=o.translateRange(h)));c.axisRanges=i,this.trigger(Ei,{axisRanges:i,originalEvent:t})}this._zoomSelection&&this._zoomSelection.move(t)}},_end:function(t){var e,i;this._stopChartHandlers(t)||(e=this._pannable,e&&e.end(t)?(this.surface.resumeTracking(),this.trigger(Ii,{axisRanges:j(this._plotArea.axes),originalEvent:t}),this._suppressHover=!1,this.chartService.panning=!1):this._endNavigation(t,Ii),this._zoomSelection&&(i=this._zoomSelection.end(t),i&&!this.trigger(Oi,{axisRanges:i,originalEvent:t})&&(this._zoomSelection.zoom(),this.trigger(Li,{axisRanges:i,originalEvent:t}))))},_stopChartHandlers:function(t){var e,i,n,s=this._selections||[];if(!s.length)return!1;if(e=this._eventCoordinates(t),i=this._plotArea.paneByPoint(e))for(n=0;n<s.length;n++)if(s[n].onPane(i))return!0},_mousewheel:function(t){var e,i,n,s,o,r,a,h,l,c=this,u=et.mousewheelDelta(t),p=this._mousewheelZoom,d=this._eventCoordinates(t);if(!this._stopChartHandlers(t)&&this._plotArea.backgroundContainsPoint(d))if(p)e={delta:u,axisRanges:j(this._plotArea.axes),originalEvent:t},!this._zooming&&this.trigger(Vi,e)||(t.preventDefault(),this._zooming||(this._unsetActivePoint(),this.surface.suspendTracking(),this._zooming=!0),this._mwTimeout&&clearTimeout(this._mwTimeout),e.axisRanges=p.updateRanges(u),e.axisRanges&&!this.trigger(Oi,e)&&p.zoom(),this._mwTimeout=setTimeout(function(){c.trigger(Li,e),c._zooming=!1,c.surface&&c.surface.resumeTracking()},Yi));else if(i=this._navState,i||(n=this._startNavigation(t,d,Vi),n||(i=this._navState)),i){for(s=i.totalDelta||u,i.totalDelta=s+u,o=this._navState.axes,r={},a=0;a<o.length;a++)h=o[a],l=h.options.name,l&&(r[l]=h.scaleRange(-s));this.trigger(Oi,{delta:u,axisRanges:r,originalEvent:t}),this._mwTimeout&&clearTimeout(this._mwTimeout),this._mwTimeout=setTimeout(function(){c._endNavigation(t,Li)},Yi)}},_startNavigation:function(t,e,i){var n,s,o=this._model._plotArea,r=o.findPointPane(e),a=o.axes.slice(0);r&&(n=j(a),s=this.trigger(i,{axisRanges:n,originalEvent:t}),s?this._cancelDomEvents():(this._suppressHover=!0,this._unsetActivePoint(),this._navState={axisRanges:n,pane:r,axes:a}))},_endNavigation:function(t,e){this._navState&&(this.trigger(e,{axisRanges:this._navState.axisRanges,originalEvent:t}),this._suppressHover=!1,this._navState=null)},_getChartElement:function(t,e){var i=this.surface.eventTarget(t);if(i)return this._drawingChartElement(i,t,e)},_drawingChartElement:function(t,e,i){for(var n,s=t;s&&!n;)n=s.chartElement,s=s.parent;if(n)return n.aliasFor&&(n=n.aliasFor(e,this._eventCoordinates(e))),i&&(n=n.closest(i),n&&n.aliasFor&&(n=n.aliasFor())),n},_eventCoordinates:function(t){var e=et.eventCoordinates(t);return this._toModelCoordinates(e.x,e.y)},_elementPadding:function(){var t,e,i;return this._padding||(t=Kt(this.element,["paddingLeft","paddingTop"]),e=t.paddingLeft,i=t.paddingTop,this._padding={top:i,left:e}),this._padding},_toDocumentCoordinates:function(t){var e=this._elementPadding(),i=et.elementOffset(this.element);return{left:Zt(t.x+e.left+i.left),top:Zt(t.y+e.top+i.top)}},_toModelCoordinates:function(t,e){var i=this.element,n=et.elementOffset(i),s=this._elementPadding(),o=et.elementScale(i).invert(),r=new le(t-n.left-s.left,e-n.top-s.top).transform(o);return new Ct(r.x,r.y)},_tap:function(t){var e=this,i=this.surface.eventTarget(t),n=this._drawingChartElement(i,t),s=this._sharedTooltip();this._startHover(i,t)||s||this._unsetActivePoint(),s&&this._trackSharedTooltip(this._eventCoordinates(t),t,!0),this._propagateClick(n,t),this.handlingTap=!0,setTimeout(function(){e.handlingTap=!1},0)},_click:function(t){var e=this._getChartElement(t);this._propagateClick(e,t)},_propagateClick:function(t,e){for(var i=this,n=t;n;)n.click&&n.click(i,e),n=n.parent},_startHover:function(t,e){var i,n,s,o;return!this._suppressHover&&(i=this._drawingChartElement(t,e,function(t){return(t.hover||t.over)&&!(t instanceof qn)}),n=this._activePoint,s=this._plotArea.series.length>1,o=this._hasInactiveOpacity(),this._updateHoveredPoint(i,e),i&&n!==i&&i.hover?(this._activePoint=i,this._sharedTooltip()||i.hover(this,e)||(this._displayTooltip(i),o?this._displayInactiveOpacity(i,s):this._highlight.show(i))):!i&&o&&(s&&this._activеChartInstance&&(this._updateSeriesOpacity(i,!0),this._applySeriesOpacity(this._activеChartInstance.children,null,!0),this._activеChartInstance=null),this._highlight&&this._highlight.hide(),this._activePoint=null),i)},_displayTooltip:function(t){var e=Ot({},this.options.tooltip,t.options.tooltip);e.visible&&this._tooltip.show(t)},_displayInactiveOpacity:function(t,e,i){var n,s=this._activеChartInstance=this._chartInstanceFromPoint(t);if(e)this._updateSeriesOpacity(t),this._applySeriesOpacity(s.children,null,!0),this._applySeriesOpacity(s.children,t.series),this._highlight.show(i||t);else{if(!s.supportsPointInactiveOpacity())return void this._highlight.show(t);n=this._getInactivePoints(t,s),n&&n.length&&this._highlight.show(n,1-this._getInactiveOpacityForSeries(t.series))}},_getInactivePoints:function(t,e){var i=this._getAllPointsOfType(e,t.constructor);return i.filter(function(e){return e!==t})},_getAllPointsOfType:function(t,e){var i,n,s=this,o=[];for(i=0;i<t.children.length;i++)n=t.children[i],n.constructor===e?o.push(n):n.children&&n.children.length&&(o=o.concat(s._getAllPointsOfType(n,e)));return o},_updateHoveredPoint:function(t,e){var i=this._hoveredPoint;i&&i!==t&&(i.out(this,e),this._hoveredPoint=null),t&&i!==t&&t.over&&(this._hoveredPoint=t,t.over(this,e))},_updateSeriesOpacity:function(t,e){var i,n,s,o,r=this,a=this._plotArea,h=a.series.length;for(i=0;i<h;i++)n=a.series[i],s=r._getDefaultOpacityForSeries(n),o=r._getInactiveOpacityForSeries(n),e||n===t.series?(n.opacity=s,n.line&&(n.line.opacity=s)):(n.defaultOpacity=s,n.opacity=o,n.line&&(n.line.opacity=o))},_applySeriesOpacity:function(t,e,i,n){var s,o,r,a,h=this;for(s=0;s<t.length;s++)o=t[s],r=o.series||n,r&&o.visual&&(a=n?n.opacity:o.series.opacity,(r!==e||i)&&o.visual.opacity(i?1:a)),o.children&&o.children.length&&h._applySeriesOpacity(o.children,e,i,o.series)},_chartInstanceFromPoint:function(t){for(var e=t.parent;e&&!e.plotArea;)e=e.parent;return e},_hasInactiveOpacity:function(){var t=void 0!==this.options.seriesDefaults.highlight.inactiveOpacity,e=this.options.series.filter(function(t){return void 0!==t.highlight.inactiveOpacity}).length>0;return t||e},_getInactiveOpacityForSeries:function(t){var e=this.options.seriesDefaults.highlight.inactiveOpacity,i=t.highlight.inactiveOpacity;return i||e||t.opacity||st.DEFAULT_SERIES_OPACITY},_getDefaultOpacityForSeries:function(t){return t.defaultOpacity||t.opacity||st.DEFAULT_SERIES_OPACITY},_mouseover:function(t){var e,i=this._startHover(t.element,t.originalEvent);i&&i.tooltipTracking&&!this._mouseMoveTrackHandler&&!this._sharedTooltip()&&(this._mouseMoveTrackHandler=this._mouseMoveTracking.bind(this),$t(document,(e={},e[wo]=this._mouseMoveTrackHandler,e)))},_mouseMoveTracking:function(t){var e,i,n,s=this,o=s.options,r=s._tooltip,a=s._highlight,h=s._activePoint,l=this._eventCoordinates(t);this._plotArea.box.containsPoint(l)?h&&h.tooltipTracking&&h.series&&h.parent.getNearestPoint&&(e=h.parent.getNearestPoint(l.x,l.y,h.seriesIx),e&&e!==h&&(this._activePoint=e,e.hover(this,t)||(i=Ot({},o.tooltip,e.options.tooltip),i.visible&&r.show(e),a.show(e)))):(te(document,(n={},n[wo]=this._mouseMoveTrackHandler,n)),this._unsetActivePoint(),this._mouseMoveTrackHandler=null)},_mousemove:function(t){var e,i=this._eventCoordinates(t),n=this._plotArea;this._trackCrosshairs(i),n.hover&&(e=n.backgroundContainsPoint(i),e?(n.hovered=!0,this._plotArea.hover(this,t)):n.hovered&&!e&&(this.trigger(Ti),n.hovered=!1)),this._sharedTooltip()&&this._trackSharedTooltip(i,t)},_trackCrosshairs:function(t){var e,i,n=this._plotArea.crosshairs;for(e=0;e<n.length;e++)i=n[e],i.box.containsPoint(t)?i.showAt(t):i.hide()},_trackSharedTooltip:function(t,e,i){var n,s,o,r,a,h,l,c,u,p;this._suppressHover||(n=this,s=n.options.tooltip,o=n._plotArea,r=n._plotArea.categoryAxis,a=n._tooltip,h=n._highlight,o.backgroundContainsPoint(t)?(l=r.pointCategoryIndex(t),l!==this._tooltipCategoryIx||!this._sharedHighlight&&i?(c=o.pointsByCategoryIndex(l),u=c.map(function(t){return t.eventArgs(e)}),p=u[0]||{},p.categoryPoints=u,c.length>0&&!this.trigger(Ai,p)?(s.visible&&a.showAt(c,t),h.show(c),this._sharedHighlight=!0):a.hide(),this._tooltipCategoryIx=l):i&&this._sharedHighlight&&(h.hide(),a.hide(),this._sharedHighlight=!1)):this._sharedHighlight&&(h.hide(),a.hide(),this._tooltipCategoryIx=null,this._sharedHighlight=!1))},hideElements:function(t){var e=this._plotArea;this._mousemove.cancel(),e.hideCrosshairs(),this._unsetActivePoint(t)},_unsetActivePoint:function(t){var e=this,i=e._tooltip,n=e._highlight;this._activePoint=null,this._hoveredPoint=null,!i||t&&t.keepTooltipOpen||i.hide(),this._tooltipCategoryIx=null,this._sharedHighlight=!1,n&&n.hide()},_deferRedraw:function(){this._redraw()},_clearRedrawTimeout:function(){this._redrawTimeout&&(clearInterval(this._redrawTimeout),this._redrawTimeout=null)},bindCategories:function(){var t,e,i=this,n=this.options,s=[].concat(n.categoryAxis);for(t=0;t<s.length;t++)e=s[t],e.autoBind!==!1&&i.bindCategoryAxisFromSeries(e,t)},bindCategoryAxisFromSeries:function(t,e){var i,s,o,r,a,h,l,c,u,p,d,g,f=this,v=this.options.series,x=v.length,m=new et.HashMap,y=[],b=!1;for(s=0;s<x;s++)if(o=v[s],r=o.categoryAxis===t.name||!o.categoryAxis&&0===e,a=o.data,h=a.length,l=o.categoryField&&r,b=l||b,l&&h>0)for(i=w(t,n(o.categoryField,a[0])),c=i?_:n,u=0;u<h;u++)p=a[u],d=c(o.categoryField,p,f.chartService.intl),!i&&m.get(d)||(y.push([d,p]),i||m.set(d,!0));y.length>0?(i&&(y=Q(y,function(t,e){return et.dateComparer(t[0],e[0])})),g=$(y),t.categories=g[0]):b&&(t.categories=[])},_isBindable:function(t){var e,i,n=fe.current.valueFields(t),s=!0;for(e=0;e<n.length;e++)if(i=n[e],i===at?i="field":i+="Field",!wt(t[i])){s=!1;break}return s},_noTransitionsRedraw:function(){var t,e=this.options;e.transitions!==!1&&(e.transitions=!1,t=!0),this._redraw(),t&&(e.transitions=!0)},_legendItemHover:function(t,e){var i,n,s,o=this,r=o._plotArea,a=o._highlight,h=(r.srcSeries||r.series)[t];i=Et(h.type,[ti,je,Ke])?r.findPoint(function(i){return i.series.index===t&&i.index===e}):r.pointsBySeriesIndex(t),this._hasInactiveOpacity()&&h.visible&&i?(n=r.series.length>1,s=i.length?i[0]:i,this._displayInactiveOpacity(s,n,i)):a.show(i)},_shouldAttachMouseMove:function(){return this._plotArea.crosshairs.length||this._tooltip&&this._sharedTooltip()||this.requiresHandlers([Pi,Ti])},updateMouseMoveHandler:function(){var t,e;te(this.element,(t={},t[wo]=this._mousemove,t)),this._shouldAttachMouseMove()&&$t(this.element,(e={},e[wo]=this._mousemove,e))},applyOptions:function(t,e){J(this._originalOptions,t),this._originalOptions=Ot(this._originalOptions,t),this.options=Ot({},this._originalOptions),e&&(this._theme=e,this.chartService.theme=e),this._initTheme(this.options,this._theme),this._toggleDragZoomEvents()},setOptions:function(t,e){this.applyOptions(t,e),this.bindCategories(),this.redraw(),this.updateMouseMoveHandler()},setDirection:function(t){this.chartService.rtl=!!t,this.surface&&"svg"===this.surface.type&&this._destroySurface()},setIntlService:function(t){this.chartService.intl=t},noTransitionsRedraw:function(){this._noTransitionsRedraw()},destroy:function(){var t,e;this._destroyed=!0,te(this.element,(t={},t[bo]=this._clickHandler,t[Zi]=this._mousewheelHandler,t[wo]=this._mousemove,t[Ao]=this._mouseleaveHandler,t)),this.domEvents&&(this.domEvents.destroy(),delete this.domEvents),this._mouseMoveTrackHandler&&te(document,(e={},e[wo]=this._mouseMoveTrackHandler,e)),this._destroyView(),this._destroySurface(),this._clearRedrawTimeout()},_destroySurface:function(){var t=this.surface;t&&(t.unbind("mouseenter",this._surfaceMouseenterHandler),t.unbind("mouseleave",this._surfaceMouseleaveHandler),t.destroy(),this.surface=null)},_destroySelections:function(){var t=this._selections;if(t)for(;t.length>0;)t.shift().destroy()},_destroyView:function(){var t=this._model;t&&(t.destroy(),this._model=null),this._unsetActivePoint(),this._destroySelections(),this._tooltip&&this._tooltip.destroy(),this._highlight&&this._highlight.destroy(),this._zoomSelection&&(this._zoomSelection.destroy(),delete this._zoomSelection),this._pannable&&(this._pannable.destroy(),delete this._pannable),this._mousewheelZoom&&(this._mousewheelZoom.destroy(),delete this._mousewheelZoom)}}),ko=["data","categories"],Tt(Co,{renderAs:"",chartArea:{},legend:{visible:!0,labels:{}},categoryAxis:{},seriesDefaults:{type:Ye,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}),kendo.deepExtend(kendo.dataviz,{constants:ji,Aggregates:ge,AreaChart:vn,AreaSegment:dn,AxisGroupRangeTracker:xn,Bar:_n,BarChart:An,BarLabel:mn,BoxPlotChart:Tn,BoxPlot:kn,BubbleChart:Vn,Bullet:Ln,BulletChart:Mn,CandlestickChart:Cn,Candlestick:Sn,CategoricalChart:tn,CategoricalErrorBar:$i,CategoricalPlotArea:us,Chart:Co,ChartContainer:Dn,ClipAnimation:cn,ClusterLayout:wn,Crosshair:zn,CrosshairTooltip:Hn,DefaultAggregates:Zn,DonutChart:qs,DonutPlotArea:Ws,DonutSegment:Ns,ErrorBarBase:Qi,ErrorRangeCalculator:_e,Highlight:ps,SharedTooltip:Ps,Legend:ws,LegendItem:xs,LegendLayout:vs,LineChart:pn,LinePoint:sn,LineSegment:on,Pane:Fn,PieAnimation:Rs,PieChart:Ds,PieChartMixin:Hs,PiePlotArea:Fs,PieSegment:Ls,PlotAreaBase:qn,PlotAreaEventsMixin:Un,PlotAreaFactory:bs,PointEventsMixin:en,RangeBar:Yn,RangeBarChart:jn,RangeAreaPoint:ts,RangeAreaChart:ss,ScatterChart:In,ScatterErrorBar:En,ScatterLineChart:Vs,Selection:Cs,SeriesAggregator:Xn,SeriesBinder:fe,SplineSegment:hn,SplineAreaSegment:fn,StackWrap:bn,Tooltip:ks,OHLCChart:rs,OHLCPoint:os,WaterfallChart:hs,WaterfallSegment:as,XYPlotArea:Os,MousewheelZoom:fs,ZoomSelection:gs,Pannable:ds,ChartAxis:ue,ChartPane:pe,ChartPlotArea:de,findAxisByName:e,anyHasZIndex:a,appendIfNotNull:f,areNumbers:u,bindSegments:x,categoriesCount:o,countNumbers:i,equalsIgnoreCase:m,evalOptions:s,filterSeriesByType:y,getDateField:_,getField:n,hasGradientOverlay:h,hasValue:p,isDateAxis:w,segmentVisible:v,singleItemOrArray:b,createOutOfRangePoints:k})}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("dataviz/chart/chart.min",["dataviz/chart/kendo-chart.min","kendo.data.min","kendo.dataviz.core.min","kendo.dataviz.themes.min","kendo.drawing.min","kendo.userevents.min"],t)}(function(){return function(t,e){function i(t){a.fn[t]=function(){var e=this._instance;if(e)return e[t].apply(e,arguments)}}function n(t,i){var n,s,o,r=[],a=t.groupNameTemplate,h=i.length;if(0===h)return o=P({},t),o.visibleInLegend=!1,[o];for(T(a)?(x.logToConsole("'groupNameTemplate' is obsolete and will be removed in future versions. Specify the group name template as 'series.name'"),a&&(n=B(a))):(n=B(t.name||""),0===n._slotCount&&(n=B(T(t.name)?"#= group.value #: #= series.name #":"#= group.value #"))),s=0;s<h;s++)o=P({},t),x.isFunction(o.color)||(o.color=e),o._groupIx=s,o._groupValue=i[s].value,r.push(o),n&&(o.name=n({series:o,group:i[s]}));return r}function s(t){for(var i in t)t[i]===e&&(t[i]="");return t}function o(t){for(var e=0;e<t.length;e++)t[e].notifyRender()}var r,a,h,l,c,u,p,d,g,f,v=".kendoChart",x=window.kendo,m=x.Class,y=x._outerWidth,_=x._outerHeight,w=x.dataviz,b=w.constants,A=w.Chart,S=w.SeriesBinder,C=x.ui.Widget,k=x.data.DataSource,P=x.deepExtend,T=w.defined,E=w.getField,I=w.InstanceObserver,R=w.inArray,V=w.services,O=t.proxy,L=t.isArray,M=t.extend,B=x.template,H="mouseleave"+v,z=b.AXIS_LABEL_CLICK,D=b.LEGEND_ITEM_CLICK,F=b.LEGEND_ITEM_HOVER,N=b.LEGEND_ITEM_LEAVE,G=b.SERIES_CLICK,q=b.SERIES_HOVER,W=b.SERIES_OVER,U=b.SERIES_LEAVE,X=b.PANE_RENDER,Z=b.PLOT_AREA_CLICK,Y=b.PLOT_AREA_HOVER,j=b.PLOT_AREA_LEAVE,K=b.DRAG,Q=b.DRAG_END,$=b.DRAG_START,J=b.ZOOM_START,tt=b.ZOOM,et=b.ZOOM_END,it=b.SELECT_START,nt=b.SELECT,st=b.SELECT_END,ot=b.RENDER,rt=b.NOTE_CLICK,at=b.NOTE_HOVER,ht=b.NOTE_LEAVE,lt=t(document.documentElement),ct="change",ut="dataBound",pt="leave",dt="down",gt=b.VALUE,ft=b.PIE,vt=b.DONUT,xt=b.FUNNEL,mt=x.Observable,yt=150,_t=100,wt="k-chart-tooltip-inverse",bt="k-chart-shared-tooltip",At="rtl";for(V.DomEventsBuilder.register({create:function(t,e){return new x.UserEvents(t,P({global:!0,multiTouch:!0,fastTap:!0},e))}}),r=I.extend({handlerMap:{showTooltip:"_showTooltip",hideTooltip:"_hideTooltip",legendItemClick:"_onLegendItemClick",render:"_onRender",init:"_onInit"}}),a=C.extend({init:function(t,e){var i;x.destroy(t),C.fn.init.call(this,t),e&&(i=e.dataSource,delete e.dataSource),this.options=P({},this.options,e),this.wrapper=this.element,this._attachEvents(),e&&(e.dataSource=i),this._seriesVisibility=new c,this.bind(this.events,this.options),this._initDataSource(e),x.notify(this,w.ui)},events:[ut,G,q,W,U,z,D,F,N,X,Z,Y,j,$,K,Q,J,tt,et,it,nt,st,rt,at,ht,ot],options:{name:"Chart",renderAs:"",theme:"default",axisDefaults:{},chartArea:{},legend:{},categoryAxis:{},autoBind:!0,seriesDefaults:{},series:[],seriesColors:null,tooltip:{},transitions:!0,valueAxis:{},plotArea:{},title:{},xAxis:{},yAxis:{},panes:[{}],pannable:!1,zoomable:!1},items:function(){return t()},refresh:function(){var t=this,e=t._instance;e.applyDefaults(t.options),e.applySeriesColors(),t._bindSeries(),t._bindCategories(),t.trigger(ut),t._redraw()},getSize:function(){return x.dimensions(this.element)},redraw:function(t){this._size=null,this._instance.redraw(t)},setOptions:function(t){var e=this,i=t.dataSource;delete t.dataSource,C.fn._setEvents.call(e,t),this._instance.applyOptions(t,this._getThemeOptions(t)),this.options=this._instance.options,this._tooltip.setOptions(this.options.tooltip),this._seriesVisibility.setOptions(this.options),this._sourceSeries=null,i&&e.setDataSource(i),e._hasDataSource?e._onDataChanged():(e._bindCategories(),e.redraw()),e._instance.updateMouseMoveHandler()},setDataSource:function(t){var e=this;e.dataSource.unbind(ct,e._dataChangeHandler),e.dataSource=t=k.create(t),e._hasDataSource=!0,e._hasData=!1,t.bind(ct,e._dataChangeHandler),e.options.autoBind&&t.fetch()},destroy:function(){var t=this,e=t.dataSource;t.element.off(v),e&&e.unbind(ct,t._dataChangeHandler),t._instance&&(t._instance.destroy(),delete this._instance),this._tooltip&&(this._tooltip.destroy(),delete this._tooltip),this._destroyCrosshairTooltips(),C.fn.destroy.call(t)},findPaneByName:function(t){var e,i=this._plotArea.panes;for(e=0;e<i.length;e++)if(i[e].options.name===t)return new g(this,i[e])},findPaneByIndex:function(t){var e=this._plotArea.panes;if(e[t])return new g(this,e[t])},findSeries:function(t){var e,i=this._plotArea,n=i.srcSeries||i.series;for(e=0;e<n.length;e++)if(t(n[e]))return new f(this,n[e])},findSeriesByName:function(t){return this._createSeries({name:t})},findSeriesByIndex:function(t){return this._createSeries({index:t})},exportVisual:function(t){var e,i,n,s,r=this._instance;if(r)return t&&(t.width||t.height)?(i=r.options.chartArea,n=r._originalOptions.chartArea,P(i,t),s=r._getModel(),i.width=n.width,i.height=n.height,s.renderVisual(),o(s._plotArea.panes),e=s.visual):e=r.exportVisual(),e},_createSeries:function(t){var e=this._seriesOptions(t);if(e)return new f(this,e)},_seriesOptions:function(t){var e,i,n=this._plotArea,s=n.srcSeries||n.series;if(T(t.index))e=s[t.index];else if(T(t.name))for(i=0;i<s.length;i++)if(s[i].name===t.name){e=s[i];break}return e},_attachEvents:function(){this.element.on(H,O(this._mouseleave,this))},_mouseleave:function(e){var i=this._instance,n=this._tooltip,s=e.relatedTarget;s&&t(s).closest(n.element).length||!i||i.handlingTap||i.hideElements({keepTooltipOpen:!n.options.autoHide})},_getThemeOptions:function(t){var i,n,s=(t||{}).theme;return s&&w.SASS_THEMES.indexOf(s.toLowerCase())!==-1?w.autoTheme().chart:T(s)?(i=w.ui.themes||{},n=i[s]||i[s.toLowerCase()]||{},n.chart||{}):e},_initChart:function(){this._createChart(this.options,this._getThemeOptions(this.options)),this.options=this._instance.options,this._seriesVisibility.setOptions(this.options)},_createChart:function(t,e){this._instance=new A(this.element[0],t,e,{observer:new r(this),sender:this,rtl:this._isRtl()})},_onInit:function(t){this._instance=t.sender},_initDataSource:function(t){var e=this,i=(t||{}).dataSource;e._dataChangeHandler=O(e._onDataChanged,e),e.dataSource=k.create(i).bind("change",e._dataChangeHandler),e._bindCategories(),i&&(e._hasDataSource=!0),this._initChart(),this._initTooltip(),i&&e.options.autoBind&&e.dataSource.fetch()},_destroyCrosshairTooltips:function(){var t,e=this._crosshairTooltips;if(e)for(t in e)e[t].destroy();this._crosshairTooltips={}},_getCrosshairTooltip:function(t,e){var i=this._crosshairTooltips=this._crosshairTooltips||{},n=t+e,s=i[n];return s||(s=i[n]=new d(this.element)),s},_showTooltip:function(t){if(t.crosshair){var e=this._getCrosshairTooltip(t.axisName,t.axisIndex);e.show(t)}else this._tooltip&&this._tooltip.show(t)},_hideTooltip:function(t){if(t.crosshair){var e=this._getCrosshairTooltip(t.axisName,t.axisIndex);e.hide()}else this._tooltip&&this._tooltip.hide()},_onRender:function(t){this._destroyCrosshairTooltips(),this._copyMembers(t.sender),this._hasDataSource&&!this._hasData&&this.options.autoBind||this.trigger(ot)},_copyMembers:function(t){this.options=t.options,this._originalOptions=t._originalOptions,this.surface=t.surface,this._plotArea=t._plotArea,this._model=t._model,this._highlight=t._highlight,this._selections=t._selections,this._pannable=t._pannable,this._zoomSelection=t._zoomSelection,this._mousewheelZoom=t._mousewheelZoom},requiresHandlers:function(t){var e,i=this._events;for(e=0;e<t.length;e++)if(T(i[t[e]]))return!0},_initTooltip:function(){this._tooltip=this._createTooltip(),this._tooltip.bind(pt,O(this._tooltipleave,this))},_onLegendItemClick:function(t){this.trigger(D,t)||this._legendItemClick(t.seriesIndex,t.pointIndex)},_legendItemClick:function(e,i){var n,s,o,r=this._instance,a=r._plotArea,h=(a.srcSeries||a.series)[e];r._hasInactiveOpacity()&&r._activеChartInstance&&(r._updateSeriesOpacity(null,!0),r._applySeriesOpacity(r._activеChartInstance.children,null,!0),r._activеChartInstance=null),t.inArray(h.type,[ft,vt,xt])>=0?(n=h.data[i],n&&T(n.visible)?n.visible=!n.visible:(s=h.pointVisibility=h.pointVisibility||{},o=s[i],s[i]=!!T(o)&&!o)):(h.visible=!h.visible,this._seriesVisibility.save(h)),r._noTransitionsRedraw()},_createTooltip:function(){return new p(this.element,M({},this.options.tooltip,{rtl:this._isRtl()}))},_tooltipleave:function(){this._instance&&this._instance.hideElements()},_bindData:function(t){var e,i,s,o=this,r=o.options,a=o._sourceSeries||r.series,h=a.length,l=o.dataSource.view(),c=(o.dataSource.group()||[]).length>0,u=[],p=this._seriesVisibility;for(p.read(),e=0;e<h;e++)i=a[e],o._isBindable(i)&&c?(s=n(i,l),u=u.concat(s),p.applyByGroup(s,t)):(i=M({},i),u.push(i),p.applyByIndex(i,t));o._sourceSeries=a,r.series=u,this._instance.applySeriesColors(),o._bindSeries(),o._bindCategories(),this._hasData=!0},_onDataChanged:function(t){this._bindData(t),this.trigger(ut),this._instance&&this._instance.fontLoaded&&this._redraw()},_bindSeries:function(){var t,e,i,n,s=this,o=s.dataSource.view(),r=s.options.series,a=r.length;for(t=0;t<a;t++)e=r[t],s._isBindable(e)&&(i=e._groupIx,n=T(i)?(o[i]||{}).items:o,e.autoBind!==!1&&(e.data=n))},_bindCategories:function(){var t,e,i=this,n=i.dataSource.view()||[],s=(i.dataSource.group()||[]).length>0,o=n,r=i.options,a=[].concat(r.categoryAxis);for(s&&n.length&&(o=n[0].items),t=0;t<a.length;t++)e=a[t],e.autoBind!==!1&&i._bindCategoryAxis(e,o,t)},_bindCategoryAxis:function(t,e,i){var n,s,o,r=(e||[]).length;if(t.field)for(t.categories=[],n=0;n<r;n++)o=e[n],s=E(t.field,o),0===n?(t.categories=[s],t.dataItems=[o]):(t.categories.push(s),t.dataItems.push(o));else this._instance&&this._instance.bindCategoryAxisFromSeries(t,i)},_isBindable:function(t){var e,i,n=S.current.valueFields(t),s=!0;for(i=0;i<n.length;i++)if(e=n[i],e===gt?e="field":e+="Field",!T(t[e])){s=!1;break}return s},_isRtl:function(){return x.support.isRtl(this.element)&&this.element.css("direction")===At}}),h=["getAxis","findAxisByName","plotArea","toggleHighlight","showTooltip","hideTooltip","_resize","_redraw","_noTransitionsRedraw","_legendItemHover","_eventCoordinates"],l=0;l<h.length;l++)i(h[l]);w.ExportMixin.extend(a.fn),x.PDFMixin&&x.PDFMixin.extend(a.fn),w.ui.plugin(a),c=m.extend({init:function(){this.groups={},this.index={},this.options={}},applyByGroup:function(t,e){if(e&&e.action||this.options.persistSeriesVisibility)for(var i=0;i<t.length;i++)this.groups[t[i]._groupValue]===!1&&(t[i].visible=!1);else this.groups={}},applyByIndex:function(t,e){e&&e.action||this.options.persistSeriesVisibility?this.index[t.index]===!1&&(t.visible=!1):this.index={}},save:function(t){t&&(this.options.persistSeriesVisibility?this.options.series[t.index].visible=t.visible:this.saveState(t))},setOptions:function(t){this.options=t,this.groups={},this.index={}},read:function(){var t,e,i=this.options;if(i.persistSeriesVisibility)for(t=i.series,e=0;e<t.length;e++)this.saveState(t[e])},saveState:function(t){T(t._groupValue)?this.groups[t._groupValue]=t.visible:this.index[t.index]=t.visible}}),u=x.geometry,p=mt.extend({init:function(e,i){var n,s=this;mt.fn.init.call(s),this.setOptions(i),s.chartElement=e,s.template=p.template,s.template||(s.template=p.template=x.template('<div class=\'k-tooltip #if (!d.autoHide) {# k-tooltip-closable#}# k-chart-tooltip#= d.rtl ? " k-rtl" : ""#\' style=\'display:none; position: absolute; font: #= d.font #;#if (d.border) {# border: #= d.border.width #px solid; #}#opacity: #= d.opacity #; filter: alpha(opacity=#= d.opacity * 100 #);\'><div class="k-tooltip-content"></div>#if (!d.autoHide) {# <div class="k-tooltip-button"><a href="\\#" class="k-icon k-i-close" title="Close"></a></div> #}#</div>',{useWithBlock:!1,paramName:"d"})),s.element=t(s.template(s.options)),s.move=O(s.move,s),s._mouseleave=O(s._mouseleave,s),n=x.format("[{0}='content'],[{0}='scroller']",x.attr("role")),s._mobileScroller=e.closest(n).data("kendoMobileScroller"),s.downEvent=x.applyEventMap(dt,x.guid()),s._closeTooltipHandler=O(s._closeTooltip,s)},destroy:function(){var t=this;this._clearShowTimeout(),lt.off(t.downEvent,t._closeTooltipHandler),this.element&&(this.element.off(H).remove(),this.element=null)},setOptions:function(t){this.options=P({},this.options,t)},options:{opacity:1,animation:{duration:yt},sharedTemplate:"<table><th colspan='#= colspan #'>#= categoryText #</th># for(var i = 0; i < points.length; i++) { ## var point = points[i]; #<tr># if(colorMarker) { # <td><span class='k-chart-shared-tooltip-marker' style='background-color:#:point.series.color#'></span></td># } ## if(nameColumn) { # <td> #if (point.series.name) {# #: point.series.name #: #} else {# &nbsp; #}#</td># } #<td>#= content(point) #</td></tr># } #</table>",categoryFormat:"{0:d}",autoHide:!0},move:function(){var t,e=this,i=e.options,n=e.element;e.anchor&&e.element&&(t=e._offset(),e.visible||n.css({top:t.top,left:t.left}),e.visible=!0,e._ensureElement(document.body),n.stop(!0,!0).show().animate({left:t.left,top:t.top},i.animation.duration))},_clearShowTimeout:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)},getAnchor:function(t){var e=this.anchor,i=e.point,n=e.align,s=i.left,o=i.top;return"center"===n.horizontal?s-=t.width/2:"right"===n.horizontal&&(s-=t.width),"center"===n.vertical?o-=t.height/2:"bottom"===n.vertical&&(o-=t.height),{x:s,y:o}},_offset:function(){var e,i,n=this,s=n._measure(),o=n.getAnchor(s),r=o.y,a=o.x,h=x.support.zoomLevel(),l=t(window),c=window.pageYOffset||document.documentElement.scrollTop||0,p=window.pageXOffset||document.documentElement.scrollLeft||0,d=(this._mobileScroller||{}).movable;return d&&1!==d.scale?(e=u.transform().scale(d.scale,d.scale,[d.x,d.y]),i=new u.Point(a,r).transform(e),a=i.x,r=i.y):(r+=n._fit(r-c,s.height,_(l)/h),a+=n._fit(a-p,s.width,y(l)/h)),{top:r,left:a}},show:function(t){var e,i=this;this.anchor=t.anchor,this.element.css(s(t.style)),this.element.toggleClass(wt,!!t.className),this.element.toggleClass(bt,!!t.shared),e=t.shared?this._sharedContent(t):this._pointContent(t.point),this.element.find(".k-tooltip-content").html(e),i.options.autoHide||(i.element.off("click"+v).on("click"+v,".k-tooltip-button",i._closeTooltipHandler),lt.off(i.downEvent,i._closeTooltipHandler).on(i.downEvent,i._closeTooltipHandler)),this._clearShowTimeout(),this.showTimeout=setTimeout(this.move,_t)},hide:function(t){var e=this;(e.options.autoHide||t)&&(clearTimeout(e.showTimeout),e._hideElement(),e.visible&&(e.point=null,e.visible=!1,e.index=null,lt.off(e.downEvent,e._closeTooltipHandler)))},_closeTooltip:function(e){var i=t(e.target);i.is(".k-chart-tooltip, .k-tooltip-content")||(e.preventDefault(),this.chartElement.data("kendoChart")._instance.hideElements(),this.hide(!0))},_sharedContent:function(t){var e,i,n=t.points,s=w.grep(n,function(t){return T(t.series.name)}).length,o=t.series.length>1,r=1;
return s&&r++,o&&r++,e=x.template(this.options.sharedTemplate),i=e({points:n,category:t.category,categoryText:t.categoryText,content:this._pointContent,colorMarker:o,nameColumn:s,colspan:r})},_measure:function(){this._ensureElement();var t={width:y(this.element),height:_(this.element)};return t},_ensureElement:function(){this.element&&this.element.appendTo(document.body).on(H,this._mouseleave)},_mouseleave:function(e){var i=e.relatedTarget,n=this.chartElement[0];i&&i!==n&&!t.contains(n,i)&&this.trigger(pt)},_hideElement:function(){var t=this,e=this.element;e&&e.fadeOut({always:function(){t.visible||e.off(H).remove()}})},_pointContent:function(t){var e,i,n=this,s=P({},n.options,t.options.tooltip);return T(t.value)&&(e=""+t.value),s.template?(i=B(s.template),e=i({value:t.value,category:t.category,series:t.series,dataItem:t.dataItem,percentage:t.percentage,runningTotal:t.runningTotal,total:t.total,low:t.low,high:t.high,xLow:t.xLow,xHigh:t.xHigh,yLow:t.yLow,yHigh:t.yHigh})):s.format&&(e=t.formatValue(s.format)),e},_fit:function(t,e,i){var n=0;return t+e>i&&(n=i-(t+e)),t<0&&(n=-t),n}}),d=p.extend({init:function(t,e){p.fn.init.call(this,t,e),this.element.addClass("k-chart-crosshair-tooltip")},show:function(t){var e=this.element;e&&(this.anchor=t.anchor,this.element.css(t.style),this.element.html(this.content(t)),this.move())},move:function(){var t=this,e=t.element,i=t._offset();t._ensureElement(),e.css({top:i.top,left:i.left}).show()},content:function(t){var e=t.value,i=t.crosshair.options.tooltip;return i.template&&(e=B(i.template)({value:e})),e},hide:function(){this.element.hide()}}),g=m.extend({init:function(t,e){this._chart=t,this._pane=e,this.visual=e.visual,this.chartsVisual=e.chartContainer.visual,this.name=e.options.name},series:function(){var t,e=this._chart,i=e._plotArea.groupSeriesByPane(),n=i[this.name||"default"],s=[];if(n)for(t=0;t<n.length;t++)s.push(new f(e,n[t]));return s}}),f=m.extend({init:function(t,e){this._chart=t,this._options=e},points:function(t){var e,i,n=this._points;return n||(e=this._seriesOptions(),i=this._chart._plotArea,this._points=n=i.pointsBySeriesIndex(e.index)),x.isFunction(t)&&(n=this._filterPoints(n,t)),n},data:function(t){var e,i,n,s,o=this._seriesOptions();return t&&(e=this._chart,i=e._plotArea,o.data=t,o.categoryField&&(n=i.seriesCategoryAxis(o),s=[].concat(e.options.categoryAxis),e._instance.bindCategoryAxisFromSeries(s[n.axisIndex],n.axisIndex)),e._noTransitionsRedraw(),this._clearFields()),o.data},findPoint:function(t){var e,i=this.points();for(e=0;e<i.length;e++)if(t(i[e]))return i[e]},toggleHighlight:function(t,e){e=e?x.isFunction(e)?this.points(e):L(e)?e:[e]:this.points(),this._chart._instance.togglePointsHighlight(t,e)},toggleVisibility:function(t,e){var i,n,s=this._chart,o=this._seriesOptions(),r=x.isFunction(e);if(r)if(R(o.type,[ft,vt,xt]))for(i=this._filterData(e),n=0;n<i.length;n++)i[n].visible=t;else o.visible=function(i){return!e(i.dataItem)||t};else o.visible=t,s._seriesVisibility.save(o);s._noTransitionsRedraw(),this._clearFields()},_filterData:function(t){var e,i=this._seriesOptions().data,n=i.length,s=[];for(e=0;e<n;e++)t(i[e])&&s.push(i[e]);return s},_filterPoints:function(t,e){var i,n=[],s=t.length;for(i=0;i<s;i++)e(t[i])&&n.push(t[i]);return n},_seriesOptions:function(){var t=this._series;return t||(t=this._series=this._chart._seriesOptions(this._options)),t},_clearFields:function(){delete this._points,delete this._series}}),w.Tooltip=p,w.CrosshairTooltip=d,w.ChartInstanceObserver=r,w.ChartPane=g,w.ChartSeries=f}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dataviz.chart.min",["dataviz/chart/kendo-chart.min","dataviz/chart/chart.min"],t)}(function(){return window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()});
//# sourceMappingURL=kendo.dataviz.chart.min.js.map