d8e65293a27d428aa51c4ae3d97a717b6b00b776.svn-base 1.3 MB

123456789
  1. /*!
  2. * DevExtreme
  3. * Version: 14.1.9-pre
  4. * Build date: Nov 7, 2014
  5. *
  6. * Copyright (c) 2012 - 2014 Developer Express Inc. ALL RIGHTS RESERVED
  7. * EULA: https://www.devexpress.com/Support/EULAs/DevExtreme.xml
  8. */
  9. "use strict";window.DevExpress||(function(n,t,i){function u(t){function f(){while(r.length){u=!0;var e=r.shift(),t=e();if(t!==i&&t.then){n.when(t).always(f);return}}u=!1}function e(n,i){t?(r[0]&&i&&i(r[0]),r=[n]):r.push(n),u||f()}function o(){return u}var r=[],u=!1;return{add:e,busy:o}}var r,f;(function(n){if(n=n.split("."),n[0]<1||n[0]==1&&n[1]<10)throw Error("Your version of jQuery is too old. Please upgrade jQuery to 1.10.0 or later.");})(n.fn.jquery),r=function(){var r=function(n,t,i){return function(){var r=this.callBase;this.callBase=n[t];try{return i.apply(this,arguments)}finally{this.callBase=r}}},u=function(n){var t=function(){};return t.prototype=n.prototype,new t},i=function(){},f=function(t){var i=this,u;return t?(u=n.map(t,function(n,t){return t}),n.each(["toString","toLocaleString","valueOf"],function(){t[this]&&u.push(this)}),n.each(u,function(){var u=n.isFunction(i.prototype[this])&&n.isFunction(t[this]);i.prototype[this]=u?r(i.parent.prototype,this,t[this]):t[this]}),i):i},e=function(){var t=this;return n.each(arguments,function(){this.ctor&&t._includedCtors.push(this.ctor);for(var n in this)if(n!=="ctor"){if(n in t.prototype)throw Error("Member name collision: "+n);t.prototype[n]=this[n]}}),t},o=function(n){return this.parent===n?!0:!this.parent||!this.parent.subclassOf?!1:this.parent.subclassOf(n)};return i.inherit=function(i){var r=function(){if(!this||this===t||typeof this.constructor!="function")throw Error("A class must be instantiated using the 'new' keyword");var i=this,r=i.ctor;r&&r.apply(i,arguments),n.each(i.constructor._includedCtors,function(){this.call(i)})};return r.prototype=u(this),r.inherit=this.inherit,r.redefine=f,r.include=e,r.subclassOf=o,r.parent=this,r._includedCtors=this._includedCtors?this._includedCtors.slice(0):[],r.prototype.constructor=r,r.redefine(i),r},i}(),f=function(){var t=document.createElement("a"),i=["protocol","hostname","port","pathname","search","hash"],r=function(n){return n.charAt(0)!=="/"&&(n="/"+n),n};return function(u){t.href=u;var f={};return n.each(i,function(){f[this]=t[this]}),f.pathname=r(f.pathname),f}}(),t.DevExpress=t.DevExpress||{};var e=function(t){var i=n.Deferred();return setTimeout(function(){i.resolve(t())},60),i},o=function(){var t=[];return{add:function(i){var r=n.inArray(i,t);r===-1&&t.push(i)},remove:function(i){var r=n.inArray(i,t);r!==-1&&t.splice(r,1)},fire:function(){var n=t.pop(),i=!!n;return i&&n(),i},hasCallback:function(){return t.length>0}}}(),s=function(){var n="body";return function(t){return arguments.length&&(n=t),n}}();n.extend(t.DevExpress,{VERSION:"14.1.8",abstract:function(){throw Error("Not implemented");},Class:r,createQueue:u,enqueue:u().add,enqueueAsync:e,parseUrl:f,hideTopOverlayCallback:o,hardwareBackButton:n.Callbacks(),overlayTargetContainer:s,rtlEnabled:!1})}(jQuery,this),function(n,t,i){var e=function(n){return n===i||n===null?"":String(n)},r=function(n){return e(n).charAt(0).toUpperCase()+n.substr(1)},u=function(n){return e(n).replace(/([a-z\d])([A-Z])/g,"$1 $2").split(/[\s_-]+/)},f=function(t){return n.map(u(t),function(n){return n.toLowerCase()}).join("-")},o=function(n){return f(n).replace(/-/g,"_")},s=function(t,i){return n.map(u(t),function(n,t){return n=n.toLowerCase(),(i||t>0)&&(n=r(n)),n}).join("")},h=function(n){return r(f(n).replace(/-/g," "))},c=function(t){return n.map(u(t),function(n){return r(n.toLowerCase())}).join(" ")};t.inflector={dasherize:f,camelize:s,humanize:h,titleize:c,underscore:o}}(jQuery,DevExpress),function(n,t,i){function nt(t,i){var r=!1;return n.each(n(t).contents(),function(n,t){if(t.nodeType===3&&(t.textContent||t.nodeValue||"").toLowerCase().indexOf((i||"").toLowerCase())>-1)return r=!0,!1}),r}function f(t,r){var o,u,e;for(e in r)(o=t[e],u=r[e],t!==u)&&(!n.isPlainObject(u)||u instanceof n.Event?u!==i&&(t[e]=u):t[e]=f(n.isPlainObject(o)?o:{},u));return t}function tt(n){return t.support.hasKo?ko.utils.unwrapObservable(n):n}var e=function(n){return n!==null&&n!==i},o=function(t){return n.type(t)==="string"},r=function(t){return typeof t=="number"&&isFinite(t)||n.isNumeric(t)},s=function(t){return n.type(t)==="object"},h=function(t){return n.type(t)==="array"},c=function(t){return n.type(t)==="date"},l=function(t){return n.type(t)==="function"},a=function(n){return r(n)&&n.toString().indexOf("e")!==-1},v=function(n,t,i){var r,u;n=n||{};for(r in t)t.hasOwnProperty(r)&&(u=t[r],r in n&&!i||(n[r]=u));return n},y=function(){function n(){}return function(t){return n.prototype=t,new n}}(),p=function(t,i){var r=n.Deferred(),u=i||this;return setTimeout(function(){var i=t.call(u);i&&i.done&&n.isFunction(i.done)?i.done(function(){r.resolveWith(u)}):r.resolveWith(u)},0),r.promise()},w=function(){for(var t=arguments[0],i,n=0;n<arguments.length-1;n++)i=new RegExp("\\{"+n+"\\}","gm"),t=t.replace(i,arguments[n+1]);return t},b=function(t,r,u){var f=[],e=0;return n.each(r,function(r,o){var s=0,h=u?u(o):o;(n.each(t,function(n){var r=h[n];if(r!==i){if(r===t[n]){s++;return}return s=-1,!1}}),s<e)||(s>e&&(f.length=0,e=s),f.push(o))}),f},k=function(n){return(n+"").replace(/([\+\*\?\\\.\[\^\]\$\(\)\{\}\>\<\|\=\!\:])/g,"\\$1")},d=function(n,t,i){return n.replace(new RegExp("("+k(t)+")","gi"),i)},u=function(n){switch(typeof n){case"string":return n.split(/\s+/,2);case"object":return[n.x||n.h,n.y||n.v];case"number":return[n];default:return n}},g=function(n){var t=u(n),i=parseInt(t&&t[0],10),r=parseInt(t&&t[1],10);return isFinite(i)||(i=0),isFinite(r)||(r=i),{x:i,y:r}};n.expr[":"].dxicontains=n.expr.createPseudo(function(n){return function(t){return nt(t,n)}}),t.utils={isDefined:e,isString:o,isNumber:r,isObject:s,isArray:h,isDate:c,isFunction:l,isExponential:a,extendFromObject:v,clone:y,executeAsync:p,stringFormat:w,findBestMatches:b,replaceAll:d,deepExtendArraySafe:f,splitPair:u,stringPairToObject:g,unwrapObservable:tt}}(jQuery,DevExpress),function(n,t,i){var r=function(){function i(i){t&&n.isFunction(t.info)&&t.info(i)}function r(i){t&&n.isFunction(t.warn)&&t.warn(i)}function u(i){t&&n.isFunction(t.error)&&t.error(i)}var t=window.console;return{info:i,warn:r,error:u}}(),u=function(){function n(n,t){if(!n)throw new Error(t);}function t(t,r){n(t!==null&&t!==i,r)}return{assert:n,assertParam:t}}();n.extend(t.utils,{logger:r,debug:u})}(jQuery,DevExpress),function(n,t){var v=Math.PI,y=Math.LN10,p=Math.cos,w=Math.sin,u=Math.abs,b=Math.log,k=Math.floor,d=Math.ceil,g=Math.max,at=Math.min,f=window.isNaN,h=window.Number,nt=window.NaN,c=t.utils.isNumber,e=t.utils.isExponential,l=function(n){var u,f=n.toString(),o=f.indexOf("."),t,i;return e(n)?(i=r(n),i<0?Math.abs(i):0):o!==-1?(t=o+1,u=f.substring(t,t+20),u.length):0},tt=function(n,t){return n?Math.log(n)/Math.log(t):0},it=function(n,t){return Math.pow(t,n)},rt=function(n){return n===0?0:n/u(n)},ut=function(n){return(n%360+360)%360},ft=function(n){return 90-n},a=function(n){return v*n/180},et=function(n){var t=a(n);return{cos:p(t),sin:w(t)}},ot=1e-14,r=function(n){var t=u(n),i;return f(t)?nt:t>0?(t=b(t)/y,i=d(t),i-t<ot?i:k(t)):0},st=function(n,t,i){var o=g(r(n),r(t)),e=-r(u(t-n)/i),s;return!f(o)&&!f(e)?(u(o)<=4?(s="fixedPoint",e<0&&(e=0),e>4&&(e=4)):(s="exponential",e+=o-1,e>3&&(e=3)),{format:s,precision:e}):null},o=function(n){var t,i;return c(n)&&(t=n.toString(),i=t.indexOf("."),i>=0)?e(n)?t.substr(i+1,t.indexOf("e")-i-1):(t=n.toFixed(20),t.substr(i+1,t.length-i+1)):""},ht=function(n){var i=o(n),t;if(i)for(t=0;t<i.length;t++)if(i.charAt(t)!=="0")return t+1;return 0},ct=function(n){var i=o(n),r,t;if(i)for(t=1;t<=i.length;t++)if(r=s(n,t),r!==0&&i[t-2]&&i[t-1]&&i[t-2]===i[t-1])return r;return n},s=function(n,t){return t>20&&(t=20),c(n)?e(n)?h(n.toExponential(t)):h(n.toFixed(t)):void 0},lt=function(n,t,i){var r=l(n),u=l(t);return s(i,r<u?u:r)};n.extend(t.utils,{getLog:tt,raiseTo:it,sign:rt,normalizeAngle:ut,convertAngleToRendererSpace:ft,degreesToRadians:a,getCosAndSin:et,getDecimalOrder:r,getAppropriateFormat:st,getFraction:o,adjustValue:ct,roundValue:s,applyPrecisionByMinDelta:lt,getSignificantDigitPosition:ht})}(jQuery,DevExpress),function(n,t){function y(n){var t=new Date(0),u=n.replace("Z","").split("T"),r=String(u[0]).split("-"),i=String(u[1]).split(":"),f,e,o,s,h,c,l;return f=Number(r[0]),e=Number(r[1])-1,o=Number(r[2]),t.setDate(o),t.setMonth(e),t.setFullYear(f),i.length&&(s=Number(i[0]),h=Number(i[1]),c=Number(String(i[2]).split(".")[0]),l=Number(String(i[2]).split(".")[1])||0,t.setHours(s),t.setMinutes(h),t.setSeconds(c),t.setMilliseconds(l)),t}function p(n){function t(n){return n<10?"0".concat(n):String(n)}return[n.getFullYear(),"-",t(n.getMonth()+1),"-",t(n.getDate()),"T",t(n.getHours()),":",t(n.getMinutes()),":",t(n.getSeconds()),"Z"].join("")}var s=t.utils.isObject,o=t.utils.isString,v=t.utils.isDate,h=t.utils.isDefined,f=["millisecond","second","minute","hour","day","week","month","quarter","year"],r=function(n,t,i){return n+(i?-1:1)*t},u=function(n){switch(n){case"millisecond":return 1;case"second":return u("millisecond")*1e3;case"minute":return u("second")*60;case"hour":return u("minute")*60;case"day":return u("hour")*24;case"week":return u("day")*7;case"month":return u("day")*30;case"quarter":return u("month")*3;case"year":return u("day")*365;default:return 0}},w=function(n){for(var t,i,f=["millisecond","second","minute","hour","day","month","year"],o={},r=f.length-1;r>=0;r--)i=f[r],t=Math.floor(n/u(i)),t>0&&(o[i+"s"]=t,n-=e(i,t));return o},b=function(t){var i=0;return s(t)&&n.each(t,function(n,t){i+=e(n.substr(0,n.length-1),t)}),o(t)&&(i=e(t,1)),i},e=function(n,t){return u(n)*t},c=function(t){var r=-1,i;return o(t)?t:s(t)?(n.each(t,function(n,t){for(i=0;i<f.length;i++)t&&(n===f[i]+"s"||n===f[i])&&r<i&&(r=i)}),f[r]):""},k=function(n,i){var r,u,f=c(i);switch(f){case"second":n.setMilliseconds(0);break;case"minute":n.setSeconds(0,0);break;case"hour":n.setMinutes(0,0,0);break;case"year":n.setMonth(0);case"month":n.setDate(1);case"day":n.setHours(0,0,0,0);break;case"week":r=n.getDate(),n.getDay()!==0&&(r+=7-n.getDay()),n.setDate(r),n.setHours(0,0,0,0);break;case"quarter":u=t.formatHelper.getFirstQuarterMonth(n.getMonth()),n.getMonth()!==u&&n.setMonth(u),n.setDate(1),n.setHours(0,0,0,0)}},d=function(t,i){var r,u=0;return r={year:t.getFullYear()!==i.getFullYear(),month:t.getMonth()!==i.getMonth(),day:t.getDate()!==i.getDate(),hour:t.getHours()!==i.getHours(),minute:t.getMinutes()!==i.getMinutes(),second:t.getSeconds()!==i.getSeconds()},n.each(r,function(n,t){t&&u++}),r.count=u,r},g=function(n,t,i){var u=null,f;return v(n)?(f=o(t)?l(t.toLowerCase()):t,u=new Date(n.getTime()),f.years&&u.setFullYear(r(u.getFullYear(),f.years,i)),f.quarters&&u.setMonth(r(u.getMonth(),3*f.quarters,i)),f.months&&u.setMonth(r(u.getMonth(),f.months,i)),f.weeks&&u.setDate(r(u.getDate(),7*f.weeks,i)),f.days&&u.setDate(r(u.getDate(),f.days,i)),f.hours&&u.setHours(r(u.getHours(),f.hours,i)),f.minutes&&u.setMinutes(r(u.getMinutes(),f.minutes,i)),f.seconds&&u.setSeconds(r(u.getSeconds(),f.seconds,i)),f.milliseconds&&u.setMilliseconds(r(n.getMilliseconds(),f.milliseconds,i))):u=r(n,t,i),u},l=function(n){var t={};switch(n){case"year":t.years=1;break;case"month":t.months=1;break;case"quarter":t.months=3;break;case"week":t.days=7;break;case"day":t.days=1;break;case"hour":t.hours=1;break;case"minute":t.minutes=1;break;case"second":t.seconds=1;break;case"millisecond":t.milliseconds=1}return t},nt=function(n,t){return n&&t&&n.getFullYear()===t.getFullYear()&&n.getMonth()===t.getMonth()},tt=function(n){return new Date(n.getFullYear(),n.getMonth(),1)},it=function(n,t,i){return a(n,t,i)===n},a=function(n,t,i){var r=n;return h(t)&&n<t&&(r=t),h(i)&&n>i&&(r=i),r},rt=function(n){return n.toExponential().split("e")[1]};n.extend(t.utils,{dateUnitIntervals:f,parseIso8601Date:y,formatIso8601Date:p,convertMillisecondsToDateUnits:w,convertDateTickIntervalToMilliseconds:b,convertDateUnitToMilliseconds:e,getDateUnitInterval:c,getDatesDifferences:d,correctDateWithUnitBeginning:k,addInterval:g,getDateIntervalByString:l,sameMonthAndYear:nt,getFirstMonthDate:tt,dateInRange:it,normalizeDate:a,getPower:rt})}(jQuery,DevExpress),function(n,t){var f="20px",e=100,o=function(t){var i=n(window),r,u=function(){var n=i.width(),u=i.height();clearTimeout(r),r=setTimeout(function(){i.width()===n&&i.height()===u&&t()},e)};return u.stop=function(){return clearTimeout(r),this},u},r=function(){var u,t=n.Callbacks(),i=n(window),r=!1,o=t.add,s=t.remove,f=function(){return[i.width(),i.height()].join()},e=function(){var n=f();n!==u&&(u=n,setTimeout(t.fire))};return u=f(),t.add=function(){var n=o.apply(t,arguments);if(!r&&t.has()){i.on("resize",e);r=!0}return n},t.remove=function(){var n=s.apply(t,arguments);return!t.has()&&r&&(i.off("resize",e),r=!1),n},t}(),s=function(){var n=document.activeElement;n&&n!==document.body&&n.blur&&n.blur()},h=function(t){var i=n("<div />");return window.WinJS?WinJS.Utilities.setInnerHTMLUnsafe(i.get(0),t):i.append(t),i.contents()},c=function(i){var e,o,s,a,l;i=n.extend({},i);var v=t.devices.current(),u=t.devices.real(),h=i.allowZoom,c=i.allowPan,y="allowSelection"in i?i.allowSelection:v.platform=="desktop";if(t.overlayTargetContainer(".dx-viewport"),e="meta[name=viewport]",n(e).length||n("<meta />").attr("name","viewport").appendTo("head"),o=["width=device-width"],s=[],h?s.push("pinch-zoom"):o.push("initial-scale=1.0","maximum-scale=1.0, user-scalable=no"),c&&s.push("pan-x","pan-y"),c||h?n("html").css("-ms-overflow-style","-ms-autohiding-scrollbar"):n("html, body").css({"-ms-content-zooming":"none","-ms-user-select":"none",overflow:"hidden"}),!y){if(u.ios)n(document).on("selectstart",function(){return!1});n(".dx-viewport").css("user-select","none")}if(n(e).attr("content",o.join()),n("html").css("-ms-touch-action",s.join(" ")||"none"),t.support.touch)n(document).off(".dxInitMobileViewport").on("touchmove.dxInitMobileViewport",function(n){var t=n.originalEvent.touches.length,i=!h&&t>1,r=!c&&t===1&&!n.isScrollingEvent;(i||r)&&n.preventDefault()});if(u=t.devices.real(),u.ios)if(a=document.location.protocol==="file:",a){if(u.version[0]>6&&(n(".dx-viewport").css("position","relative"),n("body").css({"box-sizing":"border-box"}),n("body").css("padding-top",f),u.version[0]===7&&u.version[1]<1)){l=function(){var t="height=device-"+(Math.abs(window.orientation)===90?"width":"height");n(e).attr("content",o.join()+","+t)};n(window).on("orientationchange",l);l()}}else r.add(function(){var t=n(window).width();n("body").width(t)})},u=function(t){return function(i){n(i||"body").find(".dx-visibility-change-handler").each(function(){n(this).triggerHandler(t)})}};n.extend(t.utils,{createResizeHandler:o,windowResizeCallbacks:r,resetActiveElement:s,createMarkupFromString:h,triggerShownEvent:u("dxshown"),triggerHidingEvent:u("dxhiding"),initMobileViewport:c})}(jQuery,DevExpress),function(n,t){var r=t.utils.isFunction,u=/iphone|ipad/.test(navigator.userAgent.toLowerCase()),f=function(t,i){for(var l=r(t.customizeSeries)?t.customizeSeries:n.noop,e=t.nameField||"series",s={},h=[],f,u,o=0,c=i.length;o<c;o++)u=i[o],e in u&&(f=s[u[e]],f||(f=s[u[e]]={name:u[e],data:[]},h.push(f.name)),f.data.push(u));return n.map(h,function(t){var i=s[t],r=l.call(null,i.name);return n.extend(i,r)})},e=function(){var n=1;return function(){return"DevExpress_"+n++}}(),o=function(t){var r,i={left:0,top:0},f,o=t.getRoot(),e;return o&&(r=o.element,r.getScreenCTM&&!u?(e=r.getScreenCTM(),e?(f=r.createSVGPoint().matrixTransform(e),i.left=f.x+(document.body.scrollLeft||document.documentElement.scrollLeft),i.top=f.y+(document.body.scrollTop||document.documentElement.scrollTop)):(i.left=document.body.scrollLeft||document.documentElement.scrollLeft,i.top=document.body.scrollTop||document.documentElement.scrollTop)):i=n(r).offset()),i};n.extend(t.utils,{processSeriesTemplate:f,getNextDefsSvgId:e,getRootOffset:o})}(jQuery,DevExpress),function(n,t){var r=function(t){return n.isArray(t)?t:[t]},u=function(t,i){if(!n.isArray(t)||t.length===0)return[];if(!n.isArray(i)||i.length===0)return t.slice();var r=[];return n.each(t,function(t,u){var f=n.inArray(u,i);f===-1&&r.push(u)}),r};n.extend(t.utils,{wrapToArray:r,removeDublicates:u})}(jQuery,DevExpress),function(n,t,i){var u={iPhone:"iPhone",iPhone5:"iPhone 5",iPad:"iPad",iPadMini:"iPad Mini",androidPhone:"Android Mobile",androidTablet:"Android",win8:"MSAppHost",win8Phone:"Windows Phone 8",msSurface:"MSIE ARM Tablet PC",desktop:"desktop",tizen:"Tizen Mobile"},r={deviceType:"",platform:"",version:[],phone:!1,tablet:!1,android:!1,ios:!1,win8:!1,tizen:!1,generic:!1},f=n.extend(r,{platform:"generic",deviceType:"desktop",generic:!0}),e={win8:function(n){var t=/windows phone/i.test(n),r=!t&&/arm(.*)trident/i.test(n),f=!t&&!r&&/msapphost/i.test(n),i,u;if(t||r||f)return i=n.match(/windows phone (\d+).(\d+)/i)||n.match(/windows nt (\d+).(\d+)/i),u=i?[parseInt(i[1],10),parseInt(i[2],10)]:[],{deviceType:t?"phone":r?"tablet":"desktop",platform:"win8",version:u}},ios:function(n){if(/ip(hone|od|ad)/i.test(n)){var i=/ip(hone|od)/i.test(n),t=n.match(/os (\d+)_(\d+)_?(\d+)?/i),r=t?[parseInt(t[1],10),parseInt(t[2],10),parseInt(t[3]||0,10)]:[];return{deviceType:i?"phone":"tablet",platform:"ios",version:r}}},android:function(n){if(/android|htc_|silk/i.test(n)){var i=/mobile/i.test(n),t=n.match(/android (\d+)\.(\d+)\.?(\d+)?/i),r=t?[parseInt(t[1],10),parseInt(t[2],10),parseInt(t[3]||0,10)]:[];return{deviceType:i?"phone":"tablet",platform:"android",version:r}}},tizen:function(n){if(/tizen/i.test(n)){var i=/mobile/i.test(n),t=n.match(/tizen (\d+)\.(\d+)/i),r=t?[parseInt(t[1],10),parseInt(t[2],10)]:[];return{deviceType:i?"phone":"tablet",platform:"tizen",version:r}}}};t.Devices=t.Class.inherit({ctor:function(r){this._window=r&&r.window||window,this._realDevice=this._getDevice(),this._currentDevice=i,this._currentOrientation=i,this.orientationChanged=n.Callbacks(),this._recalculateOrientation(),t.utils.windowResizeCallbacks.add(n.proxy(this._recalculateOrientation,this))},current:function(n){if(n)this._currentDevice=this._getDevice(n),t.ui.themes.init({_autoInit:!0});else{if(!this._currentDevice){n=i;try{n=this._getDeviceOrNameFromWindowScope()}catch(r){n=this._getDeviceNameFromSessionStorage()}finally{n||(n=this._getDeviceNameFromSessionStorage())}this._currentDevice=this._getDevice(n)}return this._currentDevice}},real:function(){return n.extend({},this._realDevice)},orientation:function(){return this._currentOrientation},isRippleEmulator:function(){return!!this._window.tinyHippos},attachCssClasses:function(i,r){var u=this._realDevice,f=n(i);r=r||this.current(),r.deviceType&&f.addClass("dx-device-"+r.deviceType),f.addClass("dx-device-"+u.platform),u.version&&u.version.length&&f.addClass("dx-device-"+u.platform+"-"+u.version[0]),t.devices.isSimulator()&&f.addClass("dx-simulator"),t.rtlEnabled&&f.addClass("dx-rtl")},isSimulator:function(){try{return this._isSimulator||this._window.top!==this._window.self&&this._window.top["dx-force-device"]||this.isRippleEmulator()}catch(n){return!1}},forceSimulator:function(){this._isSimulator=!0},_getDevice:function(t){if(t==="genericPhone"&&(t={deviceType:"phone",platform:"generic",generic:!0}),n.isPlainObject(t))return this._fromConfig(t);var i;if(t){if(i=u[t],!i)throw Error("Unknown device");}else i=navigator.userAgent;return this._fromUA(i)},_getDeviceOrNameFromWindowScope:function(){var n;return(this._window.top["dx-force-device-object"]||this._window.top["dx-force-device"])&&(n=this._window.top["dx-force-device-object"]||this._window.top["dx-force-device"]),n},_getDeviceNameFromSessionStorage:function(){return this._window.sessionStorage&&(sessionStorage.getItem("dx-force-device")||sessionStorage.getItem("dx-simulator-device"))},_fromConfig:function(t){var i={phone:t.deviceType==="phone",tablet:t.deviceType==="tablet",android:t.platform==="android",ios:t.platform==="ios",win8:t.platform==="win8",tizen:t.platform==="tizen",generic:t.platform==="generic"};return n.extend({},r,this._currentDevice,i,t)},_fromUA:function(t){var i;return(n.each(e,function(n,r){return i=r(t),!i}),i)?this._fromConfig(i):f},_changeOrientation:function(){var i=n(this._window),t=i.height()>i.width()?"portrait":"landscape";this._currentOrientation!==t&&(this._currentOrientation=t,this.orientationChanged.fire({orientation:t}))},_recalculateOrientation:function(){var t=n(this._window).width();this._currentWidth!==t&&(this._currentWidth=t,this._changeOrientation())}}),t.devices=new t.Devices}(jQuery,DevExpress),function(n,t){var f=/(webkit)[ \/]([\w.]+)/,e=/(opera)(?:.*version)?[ \/]([\w.]+)/,o=/(msie) (\d{1,2}\.\d)/,s=/(trident).*rv:(\d{1,2}\.\d)/,h=/(mozilla)(?:.*? rv:([\w.]+))?/,u=navigator.userAgent.toLowerCase(),c=function(){var t={},i=f.exec(u)||e.exec(u)||o.exec(u)||s.exec(u)||u.indexOf("compatible")<0&&h.exec(u)||[],n=i[1],r=i[2];return n==="trident"&&(n="msie"),n&&(t[n]=!0,t.version=r),t}();t.browser=c}(jQuery,DevExpress,this),function(n,t,i){var f=["","Webkit","Moz","O","ms"],e=document.createElement("dx").style,o={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",msTransition:"MsTransitionEnd",transition:"transitionend"},u=function(n){var i,u,r;for(n=t.inflector.camelize(n,!0),i=0,u=f.length;i<u;i++)if(r=f[i]+n,r in e)return r},r=function(n){return!!u(n)},s=function(){var r=t.devices.real(),u=r.platform,f=r.version,e=f&&f[0]<4&&u==="android";return!e&&n.inArray(u,["ios","android","win8"])>-1};t.support={touch:"ontouchstart"in i||!!i.navigator.msMaxTouchPoints,pointer:i.navigator.pointerEnabled||i.navigator.msPointerEnabled,transform3d:r("transform"),transition:r("transition"),transitionEndEventName:o[u("transition")],animation:r("animation"),nativeScrolling:s(),winJS:"WinJS"in i,styleProp:u,supportProp:r,hasKo:!!i.ko,hasNg:!i.ko&&!!i.angular,inputType:function(n){if(n==="text")return!0;var t=document.createElement("input");try{return t.setAttribute("type",n),t.value="wrongValue",!t.value}catch(i){return!1}}}}(jQuery,DevExpress,this),function(n,t,i){var y=/left|right/,p=/top|bottom/,s=/fit|flip|none/,h=function(i){var r={h:"center",v:"center"},u=t.utils.splitPair(i);return u&&n.each(u,function(){var n=String(this).toLowerCase();y.test(n)?r.h=n:p.test(n)&&(r.v=n)}),r},c=function(n){var i=t.utils.stringPairToObject(n);return{h:i.x,v:i.y}},w=function(n){var i=t.utils.splitPair(n),r=String(i&&i[0]).toLowerCase(),u=String(i&&i[1]).toLowerCase();return s.test(r)||(r="none"),s.test(u)||(u=r),{h:r,v:u}},l=function(n){switch(n){case"center":return.5;case"right":case"bottom":return 1;default:return 0}},f=function(n){switch(n){case"left":return"right";case"right":return"left";case"top":return"bottom";case"bottom":return"top";default:return n}},e=function(n,t){var i=0;return n.myLocation<t.min&&(i+=t.min-n.myLocation),n.myLocation>t.max&&(i+=n.myLocation-t.max),i},o=function(n){n.myLocation=n.atLocation+l(n.atAlign)*n.atSize-l(n.myAlign)*n.mySize+n.offset},r={fit:function(n,t){var i=!1;return n.myLocation>t.max&&(n.myLocation=t.max,i=!0),n.myLocation<t.min&&(n.myLocation=t.min,i=!0),i},flip:function(t,i){if(t.myAlign==="center"&&t.atAlign==="center")return!1;if(t.myLocation<i.min||t.myLocation>i.max){var r=n.extend({},t,{myAlign:f(t.myAlign),atAlign:f(t.atAlign),offset:-t.offset});if(o(r),r.oversize=e(r,i),r.myLocation>=i.min&&r.myLocation<=i.max||r.myLocation>t.myLocation||r.oversize<t.oversize)return t.myLocation=r.myLocation,t.oversize=r.oversize,!0}return!1}},u,b={h:{location:0,flip:!1,fit:!1,oversize:0},v:{location:0,flip:!1,fit:!1,oversize:0}},a=function(f,s){var d=n(f),nt=d.offset(),p=n.extend(!0,{},b,{h:{location:nt.left},v:{location:nt.top}}),g,k;if(!s)return p;var tt=h(s.my),it=h(s.at),y=s.of||window,rt=c(s.offset),ut=w(s.collision),ft=c(s.boundaryOffset),l={mySize:d.outerWidth(),myAlign:tt.h,atAlign:it.h,offset:rt.h,collision:ut.h,boundaryOffset:ft.h},a={mySize:d.outerHeight(),myAlign:tt.v,atAlign:it.v,offset:rt.v,collision:ut.v,boundaryOffset:ft.v};return y.preventDefault?(l.atLocation=y.pageX,a.atLocation=y.pageY,l.atSize=0,a.atSize=0):(y=n(y),n.isWindow(y[0])?(l.atLocation=y.scrollLeft(),a.atLocation=y.scrollTop(),l.atSize=y.width(),a.atSize=y.height()):y[0].nodeType===9?(l.atLocation=0,a.atLocation=0,l.atSize=y.width(),a.atSize=y.height()):(g=y.offset(),l.atLocation=g.left,a.atLocation=g.top,l.atSize=y.outerWidth(),a.atSize=y.outerHeight())),o(l),o(a),k=function(){var r=n(window),f=r.width(),e=r.height(),o=r.scrollLeft(),s=r.scrollTop(),h=document.width>document.documentElement.clientWidth,c=document.height>document.documentElement.clientHeight,y=t.support.touch?document.documentElement.clientWidth/(c?f-u:f):1,p=t.support.touch?document.documentElement.clientHeight/(h?e-u:e):1;return u===i&&(u=v()),{h:{min:o+l.boundaryOffset,max:o+f/y-l.mySize-l.boundaryOffset},v:{min:s+a.boundaryOffset,max:s+e/p-a.mySize-a.boundaryOffset}}}(),l.oversize=e(l,k.h),a.oversize=e(a,k.v),r[l.collision]&&(p.h[l.collision]=r[l.collision](l,k.h)),r[a.collision]&&(p.v[a.collision]=r[a.collision](a,k.v)),n.extend(!0,p,{h:{location:Math.round(l.myLocation),oversize:Math.round(l.oversize)},v:{location:Math.round(a.myLocation),oversize:Math.round(a.oversize)}}),p},k=function(i,r){var u=n(i),e,f;return r?(t.translator.resetPosition(u),e=u.offset(),f=r.h&&r.v?r:a(u,r),t.translator.move(u,{left:Math.round(f.h.location-e.left),top:Math.round(f.v.location-e.top)}),f):u.offset()},v;n.extend(t,{calculatePosition:a,position:k,inverseAlign:f}),v=function(){var t=n("<div>").css({width:100,height:100,overflow:"scroll",position:"absolute",top:-9999}).appendTo(n("body")),i=t.get(0).offsetWidth-t.get(0).clientWidth;return t.remove(),i}}(jQuery,DevExpress),function(n,t){var r={},u=function(t,i){if(n.isPlainObject(t)){n.each(t,u);return}r[t]=i},e=function(){var i=n.makeArray(arguments);n.each(i,function(){delete r[this]})},f;u({func:{execute:function(t){n.isFunction(t.action)&&(t.result=t.action.apply(t.context,t.args),t.handled=!0)}},url:{execute:function(n){typeof n.action=="string"&&n.action.charAt(0)!=="#"&&(document.location=n.action)}},hash:{execute:function(n){typeof n.action=="string"&&n.action.charAt(0)==="#"&&(document.location.hash=n.action)}}}),f=t.Class.inherit({ctor:function(t,i){i=i||{},this._action=t||n.noop,this._context=i.context||window,this._beforeExecute=i.beforeExecute||n.noop,this._afterExecute=i.afterExecute||n.noop,this._component=i.component,this._excludeValidators=i.excludeValidators,this._validatingTargetName=i.validatingTargetName},execute:function(){var n={action:this._action,args:Array.prototype.slice.call(arguments),context:this._context,component:this._component,validatingTargetName:this._validatingTargetName,cancel:!1,handled:!1},t;if(this._validateAction(n))return(this._beforeExecute.call(this._context,n),n.cancel)?void 0:(t=this._executeAction(n),this._afterExecute.call(this._context,n),t)},_validateAction:function(t){var i=this._excludeValidators;return n.each(r,function(r,u){if(!i||!(n.inArray(r,i)>-1))return u.validate&&u.validate(t),t.cancel?!1:void 0}),!t.cancel},_executeAction:function(t){var i;return n.each(r,function(n,r){return r.execute&&r.execute(t),t.handled?(i=t.result,!1):void 0}),i}}),n.extend(t,{registerActionExecutor:u,unregisterActionExecutor:e,Action:f})}(jQuery,DevExpress),function(n,t,i){var s=t.support,f="dxTranslator",h=/matrix(3d)?\((.+?)\)/,c=/translate(?:3d)?\((.+?)\)/,l=function(n){var t,i,r,f,o,h;return s.transform3d?(f=e(n),t={left:f.x,top:f.y}):(o=n.css("top"),h=n.css("left"),i=n.position(),n.css({transform:"none",top:0,left:0}),u(n),r=n.position(),t={left:i.left-r.left||parseInt(h)||0,top:i.top-r.top||parseInt(o)||0},n.css({top:o,left:h})),t},a=function(n,t){if(!s.transform3d){n.css(t);return}var f=e(n),h=t.left,c=t.top;h!==i&&(f.x=h||0),c!==i&&(f.y=c||0),n.css({transform:o(f)}),(r(h)||r(c))&&u(n)},r=function(t){return n.type(t)==="string"&&t[t.length-1]==="%"},e=function(n){var i=n.data(f);if(!i){var r=n.css("transform")||o({x:0,y:0}),t=r.match(h),u=t&&t[1];t?(t=t[2].split(","),u==="3d"?t=t.slice(12,15):(t.push(0),t=t.slice(4,7))):t=[0,0,0],i={x:parseFloat(t[0]),y:parseFloat(t[1]),z:parseFloat(t[2])},v(n,i)}return i},v=function(n,t){n.data(f,t)},u=function(n){n.removeData(f)},y=function(n){n.css({left:0,top:0,transform:"none"}),u(n)},p=function(n){var t=n.match(c);if(t&&t[1])return t=t[1].split(","),t={x:parseFloat(t[0]),y:parseFloat(t[1]),z:parseFloat(t[2])}},o=function(n){n.x=n.x||0,n.y=n.y||0;var t=r(n.x)?n.x:n.x+"px",i=r(n.y)?n.y:n.y+"px";return"translate("+t+", "+i+")"};t.translator={move:a,locate:l,clearCache:u,parseTranslate:p,getTranslate:e,getTranslateCss:o,resetPosition:y}}(jQuery,DevExpress),function(n,t){var s=1e3/60,r=function(n){return this.setTimeout(n,s)},u=function(n){return this.clearTimeout(n)},f=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame,o=window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||window.oCancelAnimationFrame||window.msCancelAnimationFrame,e;f&&o&&(r=f,u=o),f&&!o&&(e={},r=function(n){var t=f.call(window,function(){try{if(t in e)return;n.apply(this,arguments)}finally{delete e[t]}});return t},u=function(n){e[n]=!0}),r=n.proxy(r,window),u=n.proxy(u,window),n.extend(t,{requestAnimationFrame:r,cancelAnimationFrame:u})}(jQuery,DevExpress),function(n,t){t.Animator=t.Class.inherit({ctor:function(){this._finished=!0,this._stopped=!1},start:function(){this._stopped=!1,this._finished=!1,this._stepCore()},stop:function(){this._stopped=!0},_stepCore:function(){if(this._isStopped()){this._stop();return}if(this._isFinished()){this._finished=!0,this._complete();return}this._step(),t.requestAnimationFrame.call(window,n.proxy(this._stepCore,this))},_step:t.abstract,_isFinished:n.noop,_stop:n.noop,_complete:n.noop,_isStopped:function(){return this._stopped},inProgress:function(){return!(this._stopped||this._finished)}})}(jQuery,DevExpress),function(n,t,i){var u=t.translator,e=t.support,h=e.transitionEndEventName+".dxFX",g=/cubic-bezier\((\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\)/,nt=/^([+-])=(.*)/i,f="dxAnimData",o="dxAnimQueue",r="transform",tt={animate:function(t,i){var u=this,r=n.Deferred();return i.transitionAnimation={finish:function(){u._cleanup(t,i),r.resolveWith(t,[i,t])}},this._startAnimation(t,i),this._completeAnimationCallback(t,i).done(function(){i.transitionAnimation.finish()}),i.duration||i.transitionAnimation.finish(),r.promise()},_completeAnimationCallback:function(t,i){var e=n.now()+i.delay,r=n.Deferred(),u=n.Deferred(),f=n.Deferred();t.one(h,function(){n.now()-e>=i.duration&&u.reject()});return i.transitionAnimation.simulatedEndEventTimer=setTimeout(function(){f.reject()},i.duration+i.delay),n.when(u,f).fail(n.proxy(function(){r.resolve()},this)),r.promise()},_startAnimation:function(n,t){n.css("transform"),n.css({transitionProperty:"all",transitionDelay:t.delay+"ms",transitionDuration:t.duration+"ms",transitionTimingFunction:t.easing}),d(n,t.to)},_cleanup:function(n,t){n.css("transition","none").off(h),clearTimeout(t.transitionAnimation.simulatedEndEventTimer)},stop:function(t,i,r){i&&(r?i.transitionAnimation.finish():(n.each(i.to,function(n){t.css(n,t.css(n))}),this._cleanup(t,i)))}},c={animate:function(t,f){var o=n.Deferred(),e=this;return f?(n.each(f.to,function(n){f.from[n]===i&&(f.from[n]=e._normalizeValue(t.css(n)))}),f.to[r]&&(f.from[r]=e._parseTransform(f.from[r]),f.to[r]=e._parseTransform(f.to[r])),f.frameAnimation={to:f.to,from:f.from,currentValue:f.from,easing:ut(f.easing),duration:f.duration,startTime:(new Date).valueOf(),finish:function(){this.currentValue=this.to,this.draw(),o.resolve()},draw:function(){var i=n.extend({},this.currentValue);i[r]&&(i[r]=n.map(i[r],function(n,t){return t==="translate"?u.getTranslateCss(n):t==="scale"?"scale("+n+")":t.substr(0,t.length-1)==="rotate"?t+"("+n+"deg)":void 0}).join(" ")),t.css(i)}},f.delay?(f.frameAnimation.startTime+=f.delay,f.frameAnimation.delayTimeout=setTimeout(function(){e._animationStep(t,f)},f.delay)):e._animationStep(t,f),o.promise()):o.reject().promise()},_parseTransform:function(t){var i={};return n.each(t.match(/(\w|\d)+\([^\)]*\)\s*/g),function(n,t){var e=u.parseTranslate(t),f=t.match(/scale\((.+?)\)/),r=t.match(/(rotate.)\((.+)deg\)/);e&&(i.translate=e),f&&f[1]&&(i.scale=parseFloat(f[1])),r&&r[1]&&(i[r[1]]=parseFloat(r[2]))}),i},stop:function(n,t,i){var r=t&&t.frameAnimation;r&&(clearTimeout(r.delayTimeout),i&&r.finish(),delete t.frameAnimation)},_animationStep:function(i,r){var u=r&&r.frameAnimation,f;if(u){if(f=(new Date).valueOf(),f>=u.startTime+u.duration){u.finish();return}u.currentValue=this._calcStepValue(u,f-u.startTime),u.draw(),t.requestAnimationFrame(n.proxy(function(){this._animationStep(i,r)},this))}},_calcStepValue:function(t,i){var r=function(u,f){var e=n.isArray(f)?[]:{},o=function(r){var e=i/t.duration,o=i,s=1*u[r],h=f[r]-u[r],c=t.duration;return n.easing[t.easing](e,o,s,h,c)};return n.each(f,function(n,t){if(typeof t=="string"&&parseFloat(t,10)===!1)return!0;e[n]=typeof t=="object"?r(u[n],t):o(n)}),e};return r(t.from,t.to)},_normalizeValue:function(n){var t=parseFloat(n,10);return t===!1?n:t}},it={transition:e.transition?tt:c,frame:c},l=function(n){return it[n&&n.strategy||"transition"]},rt={linear:"cubic-bezier(0, 0, 1, 1)",ease:"cubic-bezier(0.25, 0.1, 0.25, 1)","ease-in":"cubic-bezier(0.42, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.58, 1)","ease-in-out":"cubic-bezier(0.42, 0, 0.58, 1)"},ut=function(t){var i,r,u;return(t=rt[t]||t,i=t.match(g),!i)?"linear":(i=i.slice(1,5),n.each(i,function(n,t){i[n]=parseFloat(t)}),r="cubicbezier_"+i.join("_").replace(/\./g,"p"),n.isFunction(n.easing[r])||(u=function(n,t,i,r){var u=3*n,f=3*(i-n)-u,o=1-u-f,e=3*t,s=3*(r-t)-e,h=1-e-s,c=function(n){return n*(u+n*(f+n*o))},l=function(n){return n*(e+n*(s+n*h))},a=function(n){for(var t=n,r=0,i;r<14;){if(i=c(t)-n,Math.abs(i)<.001)break;t=t-i/v(t),r++}return t},v=function(n){return u+n*(2*f+n*3*o)};return function(n){return l(a(n))}},n.easing[r]=function(n,t,r,f,e){return f*u(i[0],i[1],i[2],i[3])(t/e)+r}),r)},a=function(t,i){n.each(["from","to"],function(){if(!n.isPlainObject(t[this]))throw Error("Animation with the '"+i+"' type requires '"+this+"' configuration as an plain object.");})},ft={setup:function(){}},et={validateConfig:function(n){a(n,"slide")},setup:function(n,t){var i=u.locate(n);this._setUpConfig(i,t.from),this._setUpConfig(i,t.to),u.clearCache(n),e.transform3d||n.css("position")!=="static"||n.css("position","relative")},_setUpConfig:function(n,t){t.left="left"in t?t.left:"+=0",t.top="top"in t?t.top:"+=0",this._initNewPosition(n,t)},_initNewPosition:function(n,t){var f={left:t.left,top:t.top},o,s;delete t.left,delete t.top,o=this._getRelativeValue(f.left),o!==i?f.left=o+n.left:t.left=0,o=this._getRelativeValue(f.top),o!==i?f.top=o+n.top:t.top=0,s={x:0,y:0},e.transform3d?s={x:f.left,y:f.top}:(t.left=f.left,t.top=f.top),t[r]=u.getTranslateCss(s)},_getRelativeValue:function(n){var t;if(typeof n=="string"&&(t=nt.exec(n)))return parseInt(t[1]+"1")*t[2]}},ot={setup:function(t,i){var r=i.from,u=n.isPlainObject(r)?t.css("opacity"):String(r),f=String(i.to);i.from={opacity:u},i.to={opacity:f}}},st={validateConfig:function(n){a(n,"pop")},setup:function(n,t){var i=t.from,f=t.to,o="opacity"in i?i.opacity:n.css("opacity"),s="opacity"in f?f.opacity:1,h="scale"in i?i.scale:0,c="scale"in f?f.scale:1,e;t.from={opacity:o},e=u.getTranslate(n),t.from[r]=this._getCssTransform(e,h),t.to={opacity:s},t.to[r]=this._getCssTransform(e,c)},_getCssTransform:function(n,t){return u.getTranslateCss(n)+"scale("+t+")"}},v={custom:ft,slide:et,fade:ot,pop:st},y=function(n){var t=v[n];if(!t)throw Error('Unknown animation type "'+n+'"');return t},ht={type:"custom",from:{},to:{},duration:400,start:n.noop,complete:n.noop,easing:"ease",delay:0},ct=function(t,i){var u=n(t),r;return(i=n.extend(!0,{},ht,i),!u.length)?n.Deferred().resolve().promise():(r=y(i.type),n.isFunction(r.validateConfig)&&r.validateConfig(i),lt(u,i))},lt=function(t,i){i.deferred=i.deferred||n.Deferred();var r=s(t);return at(t,r),r.push(i),w(t)||b(t,r),i.deferred.promise()},s=function(n){return n.data(o)||[]},at=function(n,t){n.data(o,t)},p=function(n){n.removeData(o)},w=function(n){return!!n.data(f)},b=function(n,t){var t=s(n),i;t.length&&(i=t.shift(),t.length===0&&p(n),vt(n,i).done(function(){b(n)}))},vt=function(n,i){k(n,i.from),k(n,i.to);var r=y(i.type);return r.setup(n,i),n.data(f,i),t.fx.off&&(i.duration=0),d(n,i.from),i.start.apply(this,[n,i]),l(i).animate(n,i).done(function(){n.removeData(f),i.complete.apply(this,[n,i]),i.deferred.resolveWith(this,[n,i])})},k=function(i,r){if(r.position){var u=t.calculatePosition(i,r.position),f=i.offset(),e=i.position();n.extend(r,{left:u.h.location-f.left+e.left,top:u.v.location-f.top+e.top}),delete r.position}},d=function(t,i){n.each(i,function(n,i){t.css(n,i)})},yt=function(t,i){var r=n(t),e=s(r),u;n.each(e,function(n,t){t.duration=0}),u=r.data(f),l(u).stop(r,u,i),r.removeData(f),p(r)};t.fx={off:!1,animationTypes:v,animate:ct,isAnimating:w,stop:yt}}(jQuery,DevExpress),function(n,t){function e(n){return/^(localhost$|127\.)/i.test(n)}var r=window.location,u="dxproxy.devexpress.com:8000",f=r.protocol==="ms-appx:",o=r.host===u,s=e(r.hostname),h=function(){return r.pathname.split("/")[1]},c=function(n){var i=t.parseUrl(n);return e(i.hostname)?"http://"+u+"/"+h()+"_"+i.port+i.pathname+i.search:n},l=t.EndpointSelector=function(n){this.config=n};l.prototype={urlFor:function(n){var t=this.config[n];if(!t)throw Error("Unknown endpoint key");return o?c(t.local):t.production&&(f&&!Debug.debuggerEnabled||!f&&!s)?t.production:t.local}}}(jQuery,DevExpress),function(n,t,i){var r=t.utils,f,u;t.NumericFormat={currency:"C",fixedpoint:"N",exponential:"",percent:"P",decimal:"D"},t.LargeNumberFormatPostfixes={1:"K",2:"M",3:"B",4:"T"},f=4,u=10,t.LargeNumberFormatPowers={largenumber:"auto",thousands:1,millions:2,billions:3,trillions:4},t.DateTimeFormat={longdate:"D",longtime:"T",monthandday:"M",monthandyear:"Y",quarterandyear:"qq",shortdate:"d",shorttime:"t",millisecond:"fff",second:"T",minute:"t",hour:"t",day:"dd",week:"dd",month:"MMMM",quarter:"qq",year:"yyyy",longdatelongtime:"D",shortdateshorttime:"d"},t.formatHelper={defaultQuarterFormat:"Q{0}",romanDigits:["I","II","III","IV"],_addFormatSeparator:function(n,t){var i=" ";return t?n+i+t:n},_getDateTimeFormatPattern:function(n){return Globalize.findClosestCulture().calendar.patterns[t.DateTimeFormat[n.toLowerCase()]]},_isDateFormatContains:function(i){var r=!1;return n.each(t.DateTimeFormat,function(n){return r=n===i.toLowerCase(),!r}),r},getQuarter:function(n){return Math.floor(n/3)},getFirstQuarterMonth:function(n){return this.getQuarter(n)*3},_getQuarterString:function(n,t){var i=this.getQuarter(n.getMonth());switch(t){case"q":return this.romanDigits[i];case"qq":return r.stringFormat(this.defaultQuarterFormat,this.romanDigits[i]);case"Q":return(i+1).toString();case"QQ":return r.stringFormat(this.defaultQuarterFormat,(i+1).toString())}return""},_formatCustomString:function(n,t){var f=/qq|q|QQ|Q/g,i,u="",r=0;for(f.lastIndex=0;r<t.length;)i=f.exec(t),(!i||i.index>r)&&(u+=Globalize.format(n,t.substring(r,i?i.index:t.length))),i?(u+=this._getQuarterString(n,i[0]),r=i.index+i[0].length):r=t.length;return u},_parseNumberFormatString:function(i){var u,r={};if(i&&typeof i=="string")return u=i.toLowerCase().split(" "),n.each(u,function(n,i){i in t.NumericFormat?r.formatType=i:i in t.LargeNumberFormatPowers&&(r.power=t.LargeNumberFormatPowers[i])}),r.power&&!r.formatType&&(r.formatType="fixedpoint"),r.formatType?r:void 0},_calculateNumberPower:function(n,t,r,u){var f=Math.abs(n),e=0;if(f>1)while(f&&f>=t&&(u===i||e<u))e++,f=f/t;else if(f>0&&f<1)while(f<1&&(r===i||e>r))e--,f=f*t;return e},_getNumberByPower:function(n,t,i){for(var r=n;t>0;)r=r/i,t--;while(t<0)r=r*i,t++;return r},_formatNumber:function(n,i,r){var u;return i.power==="auto"&&(i.power=this._calculateNumberPower(n,1e3,0,f)),i.power&&(n=this._getNumberByPower(n,i.power,1e3)),u=t.LargeNumberFormatPostfixes[i.power]||"",this._formatNumberCore(n,i.formatType,r)+u},_formatNumberExponential:function(n,t){var r=this._calculateNumberPower(n,u),f=this._getNumberByPower(n,r,u),e;return t=t===i?1:t,f.toFixed(t||0)>=u&&(r++,f=f/u),e=(r>=0?"+":"")+r.toString(),this._formatNumberCore(f,"fixedpoint",t)+"E"+e},_formatNumberCore:function(n,i,u){return i==="exponential"?this._formatNumberExponential(n,u):Globalize.format(n,t.NumericFormat[i]+(r.isNumber(u)?u:0))},_formatDate:function(n,i){var u=t.DateTimeFormat[i.toLowerCase()];return(i=i.toLowerCase(),i==="quarterandyear"&&(u=this._getQuarterString(n,u)+" yyyy"),i==="quarter")?this._getQuarterString(n,u):i==="longdatelongtime"?this._formatDate(n,"longdate")+" "+this._formatDate(n,"longtime"):i==="shortdateshorttime"?this._formatDate(n,"shortDate")+" "+this._formatDate(n,"shortTime"):Globalize.format(n,u)},format:function(n,t,i){if(t&&t.format){if(t.dateType)return this._formatDateEx(n,t);if(r.isNumber(n)&&isFinite(n))return this._formatNumberEx(n,t)}return this._format(n,t,i)},_format:function(n,t,i){var u;return!r.isString(t)||t===""||!r.isNumber(n)&&!r.isDate(n)?r.isDefined(n)?n.toString():"":(u=this._parseNumberFormatString(t),r.isNumber(n)&&u)?this._formatNumber(n,u,i):r.isDate(n)&&this._isDateFormatContains(t)?this._formatDate(n,t):!u&&!this._isDateFormatContains(t)?this._formatCustomString(n,t):void 0},_formatNumberEx:function(n,i){var l=this,p=t.NumericFormat[i.format.toLowerCase()],e=Globalize.culture().numberFormat,b=i.currencyCulture&&Globalize.cultures[i.currencyCulture]?Globalize.cultures[i.currencyCulture].numberFormat.currency:e.currency,k=e.percent,a=l._getUnitFormatSettings(n,i),d=a.unit,v=a.precision,tt=a.showTrailingZeros,it=a.includeGroupSeparator,rt=e[","],ut=e["."],u,y,s,f,g=/n|\$|-|%/g,o="",h,w,nt,c;if(!r.isDefined(n))return"";n=l._applyUnitToValue(n,d),u=Math.abs(n),y=n<0;switch(p){case t.NumericFormat.decimal:if(s="n",u=Math[y?"ceil":"floor"](u),v>0){for(h=""+u,w=h.length;w<v;w+=1)h="0"+h;u=h}y&&(u="-"+u);break;case t.NumericFormat.fixedpoint:f=e;case t.NumericFormat.currency:f=f||b;case t.NumericFormat.percent:f=f||k,s=y?f.pattern[0]:f.pattern[1]||"n",u=Globalize.format(u*(p===t.NumericFormat.percent?100:1),"N"+v),tt||(u=l._excludeTrailingZeros(u,ut)),it||(u=u.replace(new RegExp("\\"+rt,"g"),""));break;case t.NumericFormat.exponential:return l._formatNumberExponential(n,v);default:throw"Illegal numeric format: '"+p+"'";}for(;;)if(nt=g.lastIndex,c=g.exec(s),o+=s.slice(nt,c?c.index:s.length),c)switch(c[0]){case"-":/[1-9]/.test(u)&&(o+=e["-"]);break;case"$":o+=b.symbol;break;case"%":o+=k.symbol;break;case"n":o+=u+d}else break;return(i.plus&&n>0?"+":"")+o},_excludeTrailingZeros:function(n,t){var u=n.indexOf(t),r,i;if(u<0)return n;for(r=n.length,i=r-1;i>=u&&(n[i]==="0"||i===u);i--)r--;return n.substring(0,r)},_getUnitFormatSettings:function(n,t){var e=t.unit||"",u=t.precision||0,h=t.includeGroupSeparator||!1,s=t.showTrailingZeros===i?!0:t.showTrailingZeros,f=t.significantDigits||1,r,o;if(e.toLowerCase()==="auto")if(s=!1,r=Math.abs(n),f<1&&(f=1),r>=1e9?(e="B",r/=1e9):r>=1e6?(e="M",r/=1e6):r>=1e3?(e="K",r/=1e3):e="",r==0)u=0;else if(r<1)for(u=f,o=Math.pow(10,-f);r<o;)o/=10,u++;else u=r>=100?f-3:r>=10?f-2:f-1;return u<0&&(u=0),{unit:e,precision:u,showTrailingZeros:s,includeGroupSeparator:h}},_applyUnitToValue:function(n,t){return t=="B"?n.toFixed(1)/1e9:t=="M"?n/1e6:t=="K"?n/1e3:n},_formatDateEx:function(t,u){var e=this,l=u.format,f=u.dateType,c=Globalize.culture().calendars.standard,s=i,h,o;if(l=l.toLowerCase(),!r.isDefined(t))return"";if(f!=="num"||l==="dayofweek")switch(l){case"monthyear":return e._formatDate(t,"monthandyear");case"quarteryear":return e._getQuarterString(t,"QQ")+" "+t.getFullYear();case"daymonthyear":return e._formatDate(t,f+"Date");case"datehour":return s=new Date(t.getTime()),s.setMinutes(0),o=f==="timeOnly"?"":e._formatDate(t,f+"Date"),f==="timeOnly"?e._formatDate(s,"shorttime"):o+" "+e._formatDate(s,"shorttime");case"datehourminute":return o=f==="timeOnly"?"":e._formatDate(t,f+"Date"),f==="timeOnly"?e._formatDate(t,"shorttime"):o+" "+e._formatDate(t,"shorttime");case"datehourminutesecond":return o=f==="timeOnly"?"":e._formatDate(t,f+"Date"),f==="timeOnly"?e._formatDate(t,"longtime"):o+" "+e._formatDate(t,"longtime");case"year":return o=t.toString(),f==="abbr"?o.slice(2,4):o;case"quarter":return r.stringFormat(e.defaultQuarterFormat,t.toString());case"month":return h=t-1,f==="abbr"?c.months.namesAbbr[h]:c.months.names[h];case"hour":return f==="long"?(s=new Date,s.setHours(t),s.setMinutes(0),e._formatDate(s,"shorttime")):t.toString();case"dayofweek":return h=r.isString(t)?n.inArray(t,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]):t,f!=="num"?f==="abbr"?c.days.namesAbbr[h]:c.days.names[h]:((h-c.firstDay+1+7)%8).toString();default:return t.toString()}else return t.toString()},getTimeFormat:function(n){return n?this._getDateTimeFormatPattern("longtime"):this._getDateTimeFormatPattern("shorttime")},getDateFormatByDifferences:function(n){var i="";return(n.millisecond&&(i=t.DateTimeFormat.millisecond),(n.hour||n.minute||n.second)&&(i=this._addFormatSeparator(this.getTimeFormat(n.second),i)),n.year&&n.month&&n.day)?this._addFormatSeparator(this._getDateTimeFormatPattern("shortdate"),i):n.year&&n.month?t.DateTimeFormat.monthandyear:n.year?t.DateTimeFormat.year:n.month&&n.day?this._addFormatSeparator(this._getDateTimeFormatPattern("monthandday"),i):n.month?t.DateTimeFormat.month:n.day?this._addFormatSeparator("dddd, dd",i):i},getDateFormatByTicks:function(n){var f,t,u,i,e;if(n.length>1)for(t=r.getDatesDifferences(n[0],n[1]),i=1;i<n.length-1;i++)u=r.getDatesDifferences(n[i],n[i+1]),t.count<u.count&&(t=u);else t={year:!0,month:!0,day:!0,hour:n[0].getHours()>0,minute:n[0].getMinutes()>0,second:n[0].getSeconds()>0};return f=this.getDateFormatByDifferences(t)},getDateFormatByTickInterval:function(n,t,i){var e,u,f,s={quarter:"month",week:"day"},o=function(n,t,i){switch(t){case"year":n.month=i;case"quarter":case"month":n.day=i;case"week":case"day":n.hour=i;case"hour":n.minute=i;case"minute":n.second=i;case"second":n.millisecond=i}},h=function(n,t,i){!i.getMilliseconds()&&i.getSeconds()?i.getSeconds()-t.getSeconds()==1&&(n.millisecond=!0,n.second=!1):!i.getSeconds()&&i.getMinutes()?i.getMinutes()-t.getMinutes()==1&&(n.second=!0,n.minute=!1):!i.getMinutes()&&i.getHours()?i.getHours()-t.getHours()==1&&(n.minute=!0,n.hour=!1):!i.getHours()&&i.getDate()>1?i.getDate()-t.getDate()==1&&(n.hour=!0,n.day=!1):i.getDate()===1&&i.getMonth()?i.getMonth()-t.getMonth()==1&&(n.day=!0,n.month=!1):!i.getMonth()&&i.getFullYear()&&i.getFullYear()-t.getFullYear()==1&&(n.month=!0,n.year=!1)};return i=r.isString(i)?i.toLowerCase():i,u=r.getDatesDifferences(n,t),n!==t&&h(u,n>t?t:n,n>t?n:t),f=r.getDateUnitInterval(u),o(u,f,!0),f=r.getDateUnitInterval(i||"second"),o(u,f,!1),u[s[f]||f]=!0,e=this.getDateFormatByDifferences(u)}}}(jQuery,DevExpress),function(n){function u(n){this.baseColor=n;var t;n&&(t=String(n).toLowerCase().replace(/ /g,""),t=c[t]?"#"+c[t]:t,t=a(t)),t||(this.colorIsInvalid=!0),t=t||{},this.r=i(t[0]),this.g=i(t[1]),this.b=i(t[2]),this.a=i(t[3],1,1),this.hsv=t[4]?{h:t[4][0],s:t[4][1],v:t[4][2]}:y(this.r,this.g,this.b),this.hsl=t[5]?{h:t[5][0],s:t[5][1],l:t[5][2]}:w(this.r,this.g,this.b)}function a(n){if(n==="transparent")return[0,0,0,0];for(var u,t=0,r=e.length,i;t<r;++t)if(i=e[t].re.exec(n),i)return e[t].process(i);return null}function i(n,t,i){return t=t||0,i=i||255,n<0||isNaN(n)?t:n>i?i:n}function v(n,t,i){return"#"+(16777216|n<<16|t<<8|i).toString(16).slice(1)}function y(n,t,i){var u=Math.max(n,t,i),f=Math.min(n,t,i),e=u-f,r,o,s;if(s=u,o=u===0?0:1-f/u,u===f)r=0;else switch(u){case n:r=60*((t-i)/e),t<i&&(r=r+360);break;case t:r=60*((i-n)/e)+120;break;case i:r=60*((n-t)/e)+240}return o*=100,s*=100/255,{h:Math.round(r),s:Math.round(o),v:Math.round(s)}}function l(n,t,i){var o,s,r,c,h,u,f,e;c=Math.floor(n/60),r=(100-t)*i/100,h=(i-r)*(n%60/60),s=r+h,o=i-h;switch(c){case 0:u=i,f=s,e=r;break;case 1:u=o,f=i,e=r;break;case 2:u=r,f=i,e=s;break;case 3:u=r,f=o,e=i;break;case 4:u=s,f=r,e=i;break;case 5:u=i,f=r,e=o}return[Math.round(u*2.55),Math.round(f*2.55),Math.round(e*2.55)]}function p(n,t,i,r){var u=Math.max(n,t,i);switch(u){case n:return(t-i)/r+(t<i?6:0);case t:return(i-n)/r+2;case i:return(n-t)/r+4}}function w(n,t,i){var o;n=f(n,255),t=f(t,255),i=f(i,255);var s=Math.max(n,t,i),h=Math.min(n,t,i),c=s+h,u,e,l=c/2;return s===h?u=e=0:(o=s-h,e=l>.5?o/(2-c):o/c,u=p(n,t,i,o),u/=6),{h:r(u*360),s:r(e*100),l:r(l*100)}}function o(n,t){var i=t;return n==="r"&&(i=t+1/3),n==="b"&&(i=t-1/3),i}function b(n){return n<0&&(n+=1),n>1&&(n-=1),n}function s(n,t,i){return(i=b(i),i<1/6)?n+(t-n)*6*i:i<1/2?t:i<2/3?n+(t-n)*(2/3-i)*6:n}function k(n,t,i){var h,c,l,n=f(n,360),t=f(t,100),i=f(i,100),u,e;return t===0?h=c=l=i:(u=i<.5?i*(1+t):i+t-i*t,e=2*i-u,h=s(e,u,o("r",n)),c=s(e,u,o("g",n)),l=s(e,u,o("b",n))),[r(h*255),r(c*255),r(l*255)]}function f(n,t){return(n=Math.min(t,Math.max(0,parseFloat(n))),Math.abs(n-t)<1e-6)?1:n%t/parseFloat(t)}function h(n,t,i){return(t=t||0,i=i||255,n%1!=0||n<t||n>i||typeof n!="number"||isNaN(n))?!1:!0}var c={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},e=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,process:function(n){return[parseInt(n[1],10),parseInt(n[2],10),parseInt(n[3],10)]}},{re:/^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*(\d*\.*\d+)\)$/,process:function(n){return[parseInt(n[1],10),parseInt(n[2],10),parseInt(n[3],10),parseFloat(n[4])]}},{re:/^#(\w{2})(\w{2})(\w{2})$/,process:function(n){return[parseInt(n[1],16),parseInt(n[2],16),parseInt(n[3],16)]}},{re:/^#(\w{1})(\w{1})(\w{1})$/,process:function(n){return[parseInt(n[1]+n[1],16),parseInt(n[2]+n[2],16),parseInt(n[3]+n[3],16)]}},{re:/^hsv\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,process:function(n){var i=parseInt(n[1],10),r=parseInt(n[2],10),u=parseInt(n[3],10),t=l(i,r,u);return[t[0],t[1],t[2],1,[i,r,u]]}},{re:/^hsl\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,process:function(n){var i=parseInt(n[1],10),r=parseInt(n[2],10),u=parseInt(n[3],10),t=k(i,r,u);return[t[0],t[1],t[2],1,null,[i,r,u]]}}],r=Math.round;u.prototype={constructor:u,highlight:function(n){return n=n||10,this.alter(n).toHex()},darken:function(n){return n=n||10,this.alter(-n).toHex()},alter:function(n){var t=new u;return t.r=i(this.r+n),t.g=i(this.g+n),t.b=i(this.b+n),t},blend:function(n,t){var e=n instanceof u?n:new u(n),f=new u;return f.r=i(r(this.r*(1-t)+e.r*t)),f.g=i(r(this.g*(1-t)+e.g*t)),f.b=i(r(this.b*(1-t)+e.b*t)),f},toHex:function(){return v(this.r,this.g,this.b)},getPureColor:function(){var n=l(this.hsv.h,100,100);return new u("rgb("+n.join(",")+")")},isValidHex:function(n){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(n)},isValidRGB:function(n,t,i){return!h(n)||!h(t)||!h(i)?!1:!0},isValidAlpha:function(n){return isNaN(n)||n<0||n>1||typeof n!="number"?!1:!0},colorIsInvalid:!1},n.Color=u}(DevExpress),function(n,t){Globalize.localize=function(n,t){var i=(t||this.cultureSelector||"").substring(0,2);return this.findClosestCulture(t).messages[n]||this.findClosestCulture(i).messages[n]||this.cultures["default"].messages[n]};var r=function(){var i={};return{setup:function(n){this.localizeString=function(r){var u=new RegExp("(^|[^a-zA-Z_0-9"+n+"-]+)("+n+"{1,2})([a-zA-Z_0-9-]+)","g"),f=n+n;return r.replace(u,function(r,u,e,o){var s=u+n+o;return e!==f&&(Globalize.cultures["default"].messages[o]?s=u+Globalize.localize(o):i[o]=t.inflector.humanize(o)),s})}},localizeNode:function(t){var i=this;n(t).each(function(t,r){r.nodeType&&(r.nodeType===3?r.nodeValue=i.localizeString(r.nodeValue):(n.each(r.attributes||[],function(n,t){if(typeof t.value=="string"){var r=i.localizeString(t.value);t.value!==r&&(t.value=r)}}),n(r).contents().each(function(n,t){i.localizeNode(t)})))})},getDictionary:function(t){return t?i:n.extend({},i,Globalize.cultures["default"].messages)}}}();r.setup("@"),t.localization=r}(jQuery,DevExpress),Globalize.addCultureInfo("default",{messages:{Yes:"Yes",No:"No",Cancel:"Cancel",Clear:"Clear",Done:"Done",Loading:"Loading...",Select:"Select...",Search:"Search",Back:"Back",OK:"OK","dxLookup-searchPlaceholder":"Minimum character number: {0}","dxCollectionContainerWidget-noDataText":"No data to display","dxList-pullingDownText":"Pull down to refresh...","dxList-pulledDownText":"Release to refresh...","dxList-refreshingText":"Refreshing...","dxList-pageLoadingText":"Loading...","dxList-nextButtonText":"More","dxListEditDecorator-delete":"Delete","dxListEditDecorator-more":"More","dxScrollView-pullingDownText":"Pull down to refresh...","dxScrollView-pulledDownText":"Release to refresh...","dxScrollView-refreshingText":"Refreshing...","dxScrollView-reachBottomText":"Loading...","dxSwitch-onText":"ON","dxSwitch-offText":"OFF","dxDateBox-simulatedDataPickerTitleTime":"Select time","dxDateBox-simulatedDataPickerTitleDate":"Select date","dxDateBox-simulatedDataPickerTitleDateTime":"Select date and time","dxDataGrid-columnChooserTitle":"Column Chooser","dxDataGrid-columnChooserEmptyText":"Drag a column here to hide it","dxDataGrid-groupContinuesMessage":"Continues on the next page","dxDataGrid-groupContinuedMessage":"Continued from the previous page","dxDataGrid-editingEditRow":"Edit","dxDataGrid-editingSaveRowChanges":"Save","dxDataGrid-editingCancelRowChanges":"Cancel","dxDataGrid-editingDeleteRow":"Delete","dxDataGrid-editingUndeleteRow":"Undelete","dxDataGrid-editingConfirmDeleteMessage":"Are you sure you want to delete this record?","dxDataGrid-editingConfirmDeleteTitle":"","dxDataGrid-groupPanelEmptyText":"Drag a column header here to group by that column","dxDataGrid-noDataText":"No data","dxDataGrid-searchPanelPlaceholder":"Search...","dxDataGrid-filterRowShowAllText":"(All)","dxDataGrid-filterRowResetOperationText":"Reset","dxDataGrid-filterRowOperationEquals":"Equals","dxDataGrid-filterRowOperationNotEquals":"Does not equal","dxDataGrid-filterRowOperationLess":"Less than","dxDataGrid-filterRowOperationLessOrEquals":"Less than or equal to","dxDataGrid-filterRowOperationGreater":"Greater than","dxDataGrid-filterRowOperationGreaterOrEquals":"Greater than or equal to","dxDataGrid-filterRowOperationStartsWith":"Starts with","dxDataGrid-filterRowOperationContains":"Contains","dxDataGrid-filterRowOperationNotContains":"Does not contain","dxDataGrid-filterRowOperationEndsWith":"Ends with","dxDataGrid-trueText":"true","dxDataGrid-falseText":"false","dxDataGrid-sortingAscendingText":"Sort Ascending","dxDataGrid-sortingDescendingText":"Sort Descending","dxDataGrid-sortingClearText":"Clear Sorting"}}),function(n,t,i){var o=function(n){return n.replace(/\[/g,".").replace(/\]/g,"")},u=t.utils.unwrapObservable,s=function(n){return t.support.hasKo&&ko.isObservable(n)},h=function(n,t){return t==="this"?n:n[t]},c=function(n,t,i){if(t==="this")throw Error("Cannot assign to self");var r=n[t];s(r)?r(i):n[t]=i},f=function(t){if(arguments.length>1&&(t=n.makeArray(arguments)),!t||t==="this")return function(n){return n};if(n.isFunction(t))return t;if(n.isArray(t))return a(t);t=o(t);var i=t.split(".");return function(t,r){r=r||{};var f=u(t);return n.each(i,function(){if(!f)return!1;var t=u(f[this]);n.isFunction(t)&&!r.functionsAsIs&&(t=t.call(f)),f=t}),f}},a=function(t){var r={};return n.each(t,function(){r[this]=f(this)}),function(t,u){var f={};return n.each(r,function(n){var s=this(t,u),e,o,h,r;if(s!==i){for(e=f,o=n.split("."),h=o.length-1,r=0;r<h;r++)e=e[o[r]]={};e[o[r]]=s}}),f}},v=function(r){r=r||"this",r=o(r);var l=r.lastIndexOf("."),a=f(r.substr(0,l)),e=r.substr(1+l);return function(r,f,o){o=o||{};var v=a(r,{functionsAsIs:o.functionsAsIs}),l=h(v,e);o.functionsAsIs||!n.isFunction(l)||s(l)?(l=u(l),o.merge&&n.isPlainObject(f)&&(l===i||n.isPlainObject(l))&&!(f instanceof n.Event)?(l||c(v,e,{}),t.utils.deepExtendArraySafe(u(h(v,e)),f)):c(v,e,f)):v[e](f)}},y=function(n){return[n[0],n.length<3?"=":String(n[1]).toLowerCase(),n.length<2?!0:n[n.length-1]]},p=function(t){return n.isArray(t)||(t=[t]),n.map(t,function(t){return{selector:n.isFunction(t)||typeof t=="string"?t:t.getter||t.field||t.selector,desc:!!(t.desc||String(t.dir).charAt(0).toLowerCase()==="d")}})},l=t.Class.inherit({ctor:function(n){n&&(n=String(n)),this._value=this._normalize(n||this._generate())},_normalize:function(n){for(n=n.replace(/[^a-f0-9]/ig,"").toLowerCase();n.length<32;)n+="0";return[n.substr(0,8),n.substr(8,4),n.substr(12,4),n.substr(16,4),n.substr(20,12)].join("-")},_generate:function(){for(var t="",n=0;n<32;n++)t+=Math.round(Math.random()*15).toString(16);return t},toString:function(){return this._value},valueOf:function(){return this._value},toJSON:function(){return this._value}}),r=function(n,t){return n instanceof Date?n.getTime():n instanceof l?n.valueOf():!t&&typeof n=="string"?n.toLowerCase():n},w=function(t,i,u){var e,o,f;if(n.isArray(t)){for(e=n.map(i,function(n,t){return t}),f=0;f<e.length;f++)if(o=e[f],r(i[o],!0)!=r(u[o],!0))return!1;return!0}return r(i,!0)==r(u,!0)},b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",k=function(t){var r,i;for(n.isArray(t)||(t=d(String(t))),r="",i=0;i<t.length;i+=3){var e=t[i],u=t[i+1],f=t[i+2];r+=n.map([e>>2,(e&3)<<4|u>>4,isNaN(u)?64:(u&15)<<2|f>>6,isNaN(f)?64:f&63],function(n){return b.charAt(n)}).join("")}return r},d=function(n){for(var i=[],t,r=0;r<n.length;r++)t=n.charCodeAt(r),t<128?i.push(t):t<2048?i.push(192+(t>>6),128+(t&63)):t<65536?i.push(224+(t>>12),128+(t>>6&63),128+(t&63)):t<2097152&&i.push(240+(t>>18),128+(t>>12&63),128+(t>>6&63),128+(t&63));return i},g=function(){var n={timeout:"Network connection timeout",error:"Unspecified network error",parsererror:"Unexpected server response"},t=function(t){var i=n[t];return i?i:t};return function(n,i){return n.status<400?t(i):n.statusText}}(),e=t.data={utils:{compileGetter:f,compileSetter:v,normalizeBinaryCriterion:y,normalizeSortingInfo:p,toComparable:r,keysEqual:w,errorMessageFromXhr:g},Guid:l,base64_encode:k,queryImpl:{},queryAdapters:{},query:function(){var t=n.isArray(arguments[0])?"array":"remote";return e.queryImpl[t].apply(this,arguments)},errorHandler:null,_handleError:function(n){e.errorHandler&&e.errorHandler(n)}}}(jQuery,DevExpress),function(n,t,i){var v=t.Class,u=t.data,l=u.queryImpl,f=u.utils.compileGetter,r=u.utils.toComparable,e=v.inherit({toArray:function(){var n=[];for(this.reset();this.next();)n.push(this.current());return n},countable:function(){return!1}}),s=e.inherit({ctor:function(n){this.array=n,this.index=-1},next:function(){return this.index+1<this.array.length?(this.index++,!0):!1},current:function(){return this.array[this.index]},reset:function(){this.index=-1},toArray:function(){return this.array.slice(0)},countable:function(){return!0},count:function(){return this.array.length}}),o=e.inherit({ctor:function(n){this.iter=n},next:function(){return this.iter.next()},current:function(){return this.iter.current()},reset:function(){return this.iter.reset()}}),h=o.inherit({ctor:function(n,t){this.callBase(n),this.index=-1,this.mapper=t},current:function(){return this.mapper(this.callBase(),this.index)},next:function(){var n=this.callBase();return n&&this.index++,n}}),c=e.inherit({ctor:function(n,t,i){n instanceof h||(n=new h(n,this._wrap)),this.iter=n,this.rules=[{getter:t,desc:i}]},thenBy:function(n,t){var i=new c(this.sortedIter||this.iter,n,t);return this.sortedIter||(i.rules=this.rules.concat(i.rules)),i},next:function(){return this._ensureSorted(),this.sortedIter.next()},current:function(){return this._ensureSorted(),this.sortedIter.current()},reset:function(){delete this.sortedIter},countable:function(){return this.sortedIter||this.iter.countable()},count:function(){return this.sortedIter?this.sortedIter.count():this.iter.count()},_ensureSorted:function(){this.sortedIter||(n.each(this.rules,function(){this.getter=f(this.getter)}),this.sortedIter=new h(new s(this.iter.toArray().sort(n.proxy(this._compare,this))),this._unwrap))},_wrap:function(n,t){return{index:t,value:n}},_unwrap:function(n){return n.value},_compare:function(n,t){var s=n.index,h=t.index,i,c;if(n=n.value,t=t.value,n===t)return s-h;for(i=0,c=this.rules.length;i<c;i++){var e=this.rules[i],u=r(e.getter(n)),o=r(e.getter(t)),f=e.desc?-1:1;if(u<o)return-f;if(u>o)return f;if(u!==o)return u?f:-f}return s-h}}),a=function(){function o(n,t,i){return function(u){u=r(n(u));var f=c(t)?u===t:u==t;return i&&(f=!f),f}}function c(n){return n===""||n===0||n===null||n===!1||n===i}var s=function(t){var u=[],i=["return function(d) { return "],f=0,r=!1;return n.each(t,function(){n.isArray(this)||n.isFunction(this)?(r&&i.push(" && "),u.push(a(this)),i.push("op[",f,"](d)"),f++,r=!0):(i.push(/and|&/i.test(this)?" && ":" || "),r=!1)}),i.push(" }"),new Function("op",i.join(""))(u)},e=function(n){return t.utils.isDefined(n)?n.toString():""},h=function(n){n=u.utils.normalizeBinaryCriterion(n);var i=f(n[0]),s=n[1],t=n[2];t=r(t);switch(s.toLowerCase()){case"=":return o(i,t);case"<>":return o(i,t,!0);case">":return function(n){return r(i(n))>t};case"<":return function(n){return r(i(n))<t};case">=":return function(n){return r(i(n))>=t};case"<=":return function(n){return r(i(n))<=t};case"startswith":return function(n){return r(e(i(n))).indexOf(t)===0};case"endswith":return function(n){var u=r(e(i(n)));return u.lastIndexOf(t)===u.length-e(t).length};case"contains":return function(n){return r(e(i(n))).indexOf(t)>-1};case"notcontains":return function(n){return r(e(i(n))).indexOf(t)===-1}}throw Error("Unknown filter operation: "+s);};return function(t){return n.isFunction(t)?t:n.isArray(t[0])?s(t):h(t)}}(),y=o.inherit({ctor:function(n,t){this.callBase(n),this.criteria=a(t)},next:function(){while(this.iter.next())if(this.criteria(this.current()))return!0;return!1}}),p=e.inherit({ctor:function(n,t){this.iter=n,this.getter=t},next:function(){return this._ensureGrouped(),this.groupedIter.next()},current:function(){return this._ensureGrouped(),this.groupedIter.current()},reset:function(){delete this.groupedIter},countable:function(){return!!this.groupedIter},count:function(){return this.groupedIter.count()},_ensureGrouped:function(){var r,t;if(!this.groupedIter){var i={},e=[],u=this.iter,o=f(this.getter);for(u.reset();u.next();)r=u.current(),t=o(r),t in i?i[t].push(r):(i[t]=[r],e.push(t));this.groupedIter=new s(n.map(e,function(n){return{key:n,items:i[n]}}))}}}),w=o.inherit({ctor:function(n,t){this.callBase(n),this.getter=f(t)},current:function(){return this.getter(this.callBase())},countable:function(){return this.iter.countable()},count:function(){return this.iter.count()}}),b=o.inherit({ctor:function(n,t,i){this.callBase(n),this.skip=Math.max(0,t),this.take=Math.max(0,i),this.pos=0},next:function(){if(this.pos>=this.skip+this.take)return!1;while(this.pos<this.skip&&this.iter.next())this.pos++;return this.pos++,this.iter.next()},reset:function(){this.callBase(),this.pos=0},countable:function(){return this.iter.countable()},count:function(){return Math.min(this.iter.count()-this.skip,this.take)}});l.array=function(t,r){r=r||{},t instanceof e||(t=new s(t));var v=function(n){var t=r.errorHandler;t&&t(n),u._handleError(n)},o=function(r,u,f){var o=n.Deferred().fail(v),e;try{for(t.reset(),arguments.length<2&&(u=arguments[0],r=t.next()?t.current():i),e=r;t.next();)e=u(e,t.current());o.resolve(f?f(e):e)}catch(s){o.reject(s)}return o.promise()},k=function(i){return n.isFunction(i)||n.isArray(i)||(i=n.makeArray(arguments)),h(new w(t,i))},a=function(n){return k(f(n))},h=function(n){return l.array(n,r)};return{toArray:function(){return t.toArray()},enumerate:function(){var i=n.Deferred().fail(v);try{i.resolve(t.toArray())}catch(r){i.reject(r)}return i.promise()},sortBy:function(n,i){return h(new c(t,n,i))},thenBy:function(n,i){if(t instanceof c)return h(t.thenBy(n,i));throw Error();},filter:function(i){return n.isArray(i)||(i=n.makeArray(arguments)),h(new y(t,i))},slice:function(n,r){return r===i&&(r=Number.MAX_VALUE),h(new b(t,n,r))},select:k,groupBy:function(n){return h(new p(t,n))},aggregate:o,count:function(){if(t.countable()){var i=n.Deferred().fail(v);try{i.resolve(t.count())}catch(r){i.reject(r)}return i.promise()}return o(0,function(n){return 1+n})},sum:function(n){return n?a(n).sum():o(0,function(n,t){return n+t})},min:function(n){return n?a(n).min():o(function(n,t){return t<n?t:n})},max:function(n){return n?a(n).max():o(function(n,t){return t>n?t:n})},avg:function(n){if(n)return a(n).avg();var t=0;return o(0,function(n,i){return t++,n+i},function(n){return t?n/t:i})}}}}(jQuery,DevExpress),function(n,t){var r=t.data,u=r.queryImpl;u.remote=function(t,i,f){f=f||[],i=i||{};var o=function(n,t){return{name:n,args:t}},s=function(e){var o=n.Deferred(),h,c,s,l,a=function(n){var t=i.errorHandler;t&&t(n),r._handleError(n),o.reject(n)};try{for(h=i.adapter||"odata",n.isFunction(h)||(h=r.queryAdapters[h]),c=h(i),s=[].concat(f).concat(e);s.length;){if(l=s[0],String(l.name)!=="enumerate"&&(!c[l.name]||c[l.name].apply(c,l.args)===!1))break;s.shift()}c.exec(t).done(function(t,r){if(s.length){var f=u.array(t,{errorHandler:i.errorHandler});n.each(s,function(){f=f[this.name].apply(f,this.args)}),f.done(n.proxy(o.resolve,o)).fail(n.proxy(o.reject,o))}else o.resolve(t,r)}).fail(a)}catch(v){a(v)}return o.promise()},e={};return n.each(["sortBy","thenBy","filter","slice","select","groupBy"],function(){var n=this;e[n]=function(){return u.remote(t,i,f.concat(o(n,arguments)))}}),n.each(["count","min","max","sum","avg","aggregate","enumerate"],function(){var n=this;e[n]=function(){return s.call(this,o(n,arguments))}}),e}}(jQuery,DevExpress),function(n,t,i){function b(n){function t(n,t){return this[n]instanceof Date?f.formatIso8601Date(this[n]):t}return JSON.stringify(n,t)}var e=t.data,f=t.utils,o=e.Guid,v=/^(\{{0,1}([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}\}{0,1})$/,y=/^\/Date\((-?\d+)((\+|-)?(\d+)?)\)\/$/,p=/^(\d{4})(?:-?W(\d+)(?:-?(\d+)D?)?|(?:-(\d+))?-(\d+))(?:[T ](\d+):(\d+)(?::(\d+)(?:\.(\d+))?)?)?(?:Z(-?\d*))?$/,w=(new Date).getTimezoneOffset()*6e4,c="application/json;odata=verbose",k=function(t,i){var u;t=n.extend({method:"get",url:"",params:{},payload:null,headers:{}},t),i=i||{},u=i.beforeSend,u&&u(t);var o=(t.method||"get").toLowerCase(),r=o==="get",f=r&&i.jsonp,s=n.extend({},t.params),h=r?s:b(t.payload),l=!r&&n.param(s),e=t.url,a=!r&&c;return l&&(e+=(e.indexOf("?")>-1?"&":"?")+l),f&&(h.$format="json"),{url:e,data:h,dataType:f?"jsonp":"json",jsonp:f&&"$callback",type:o,timeout:3e4,headers:t.headers,contentType:a,accepts:{json:[c,"text/plain"].join()},xhrFields:{withCredentials:i.withCredentials}}},h=function(t,i){var r=n.Deferred();return n.ajax(k(t,i)).always(function(t,u){var f=nt(t,u),e=f.error,o=f.data,s=f.nextUrl,c;e?r.reject(e):i.countOnly?r.resolve(f.count):s?h({url:s},i).fail(n.proxy(r.reject,r)).done(function(n){r.resolve(o.concat(n))}):(isFinite(f.count)&&(c={totalCount:f.count}),r.resolve(o,c))}),r.promise()},d=function(n){var t,i=n;for(("message"in n)&&(t=n.message.value?n.message.value:n.message);i=i.innererror||i.internalexception;)if(t=i.message,i.internalexception&&t.indexOf("inner exception")===-1)break;return t},g=function(t,i){var u;if(i==="nocontent")return null;var r=200,f="Unknown error",o=t;if(i!=="success"){r=t.status,f=e.utils.errorMessageFromXhr(t,i);try{o=n.parseJSON(t.responseText)}catch(s){}}return(u=o&&(o.error||o["@odata.error"]),u)?(f=d(u)||f,r===200&&(r=500),u.code&&(r=Number(u.code)),n.extend(Error(f),{httpStatus:r,errorDetails:u})):r!==200?n.extend(Error(f),{httpStatus:r}):void 0},nt=function(t,i){var u=g(t,i),r;return u?{error:u}:n.isPlainObject(t)?(r="d"in t&&(f.isArray(t.d)||f.isObject(t.d))?tt(t,i):it(t,i),l(r),r):{data:t}},tt=function(n){var i=n.d;return i?(i=i.results||i,{data:i,nextUrl:n.d.__next,count:parseInt(n.d.__count,10)}):{error:Error("Malformed or unsupported JSON response received")}},it=function(n){var i=n.value||n;return i?{data:i,nextUrl:n["@odata.nextLink"],count:parseInt(n["@odata.count"],10)}:{error:Error("Malformed or unsupported JSON response received")}},r=t.Class.inherit({ctor:function(n){this._value=n},valueOf:function(){return this._value}}),l=function(t){n.each(t,function(n,i){i!==null&&typeof i=="object"?l(i):typeof i=="string"&&(v.test(i)?t[n]=new o(i):i.match(y)?t[n]=new Date(w+Number(RegExp.$1)+RegExp.$2*6e4):p.test(i)&&(t[n]=new Date(f.parseIso8601Date(t[n]).valueOf())))})},rt=function(){var n=function(n){return n=String(n),n.length<2&&(n="0"+n),n};return function(t){var i=["datetime'",t.getFullYear(),"-",n(t.getMonth()+1),"-",n(t.getDate())];return(t.getHours()||t.getMinutes()||t.getSeconds()||t.getMilliseconds())&&(i.push("T",n(t.getHours()),":",n(t.getMinutes()),":",n(t.getSeconds())),t.getMilliseconds()&&i.push(".",t.getMilliseconds())),i.push("'"),i.join("")}}(),ut=function(n){return"'"+n.replace(/</g,"%26lt").replace(/'/g,"''")+"'"},u=function(n){return n instanceof r?n.valueOf():n.replace(/\./g,"/")},ft=function(n){return n instanceof Date?f.formatIso8601Date(n):a(n)},a=function(n){return n instanceof Date?rt(n):n instanceof o?"guid'"+n+"'":n instanceof r?n.valueOf():typeof n=="string"?ut(n):String(n)},et=2,s=function(n,t){t=t||et;switch(t){case 2:case 3:return a(n);case 4:return ft(n);default:throw new Error("Unknown OData protocol version");}},ot=function(t,i){if(n.isPlainObject(t)){var r=[];return n.each(t,function(n,t){r.push(u(n)+"="+s(t,i))}),r.join()}return s(t)},st={String:function(n){return n+""},Int32:function(n){return Math.floor(n)},Int64:function(n){return n instanceof r?n:new r(n+"L")},Guid:function(n){return n instanceof o?n:new o(n)},Boolean:function(n){return!!n},Single:function(n){return n instanceof r?n:new r(n+"f")},Decimal:function(n){return n instanceof r?n:new r(n+"m")}},ht=function(){var t=function(n){return function(t,i,r){r.push(t," ",n," ",i)}},i=function(n,t){return function(i,r,u){t?u.push(n,"(",r,",",i,")"):u.push(n,"(",i,",",r,")")}},r={"=":t("eq"),"<>":t("ne"),">":t("gt"),">=":t("ge"),"<":t("lt"),"<=":t("le"),startswith:i("startswith"),endswith:i("endswith")},o=n.extend({},r,{contains:i("substringof",!0),notcontains:i("not substringof",!0)}),h=n.extend({},r,{contains:i("contains"),notcontains:i("not contains")}),c=function(n,t,i){n=e.utils.normalizeBinaryCriterion(n);var r=n[1],c=i===4?h:o,f=c[r.toLowerCase()];if(!f)throw Error("Unknown filter operation: "+r);f(u(n[0]),s(n[2],i),t)},l=function(t,i,r){var u=!1;n.each(t,function(){n.isArray(this)?(u&&i.push(" and "),i.push("("),f(this,i,r),i.push(")"),u=!0):(i.push(/and|&/i.test(this)?" and ":" or "),u=!1)})},f=function(t,i,r){n.isArray(t[0])?l(t,i,r):c(t,i,r)};return function(n,t){var i=[];return f(n,i,t),i.join("")}}(),ct=function(t){var o=[],r=[],f,s,c,e,l=function(){return s||c!==i},a=function(n,t,i){if(l()||typeof n!="string")return!1;i&&(o=[]);var r=u(n);t&&(r+=" desc"),o.push(r)},v=function(){var r={};return t.expand&&n.each(n.makeArray(t.expand),function(){r[u(this)]=1}),f&&n.each(f,function(){var n=this.split(".");n.length<2||(n.pop(),r[u(n.join("."))]=1)}),n.map(r,function(n,t){return t}).join()||i},y=function(){var n={};return e||(o.length&&(n.$orderby=o.join(",")),s&&(n.$skip=s),c!==i&&(n.$top=c),f&&(n.$select=u(f.join())),n.$expand=v()),r.length&&(n.$filter=ht(r.length<2?r[0]:r,t.version)),e&&(n.$top=0),(t.requireTotalCount||e)&&(t.version!==4?n.$inlinecount="allpages":n.$count="true"),n};return{exec:function(i){return h({url:i,params:n.extend(y(),t&&t.params)},{beforeSend:t.beforeSend,jsonp:t.jsonp,withCredentials:t.withCredentials,countOnly:e})},sortBy:function(n,t){return a(n,t,!0)},thenBy:function(n,t){return a(n,t,!1)},slice:function(n,t){if(l())return!1;s=n,c=t},filter:function(t){if(l()||n.isFunction(t))return!1;n.isArray(t)||(t=n.makeArray(arguments)),r.length&&r.push("and"),r.push(t)},select:function(t){if(f||n.isFunction(t))return!1;n.isArray(t)||(t=n.makeArray(arguments)),f=t},count:function(){e=!0}}};n.extend(!0,e,{EdmLiteral:r,utils:{odata:{sendRequest:h,serializePropName:u,serializeValue:s,serializeKey:ot,keyConverters:st}},queryAdapters:{odata:ct}})}(jQuery,DevExpress),function(n,t){function f(t,i){return t=t.groupBy(i[0].selector),i.length>1&&(t=t.select(function(t){return n.extend({},t,{items:f(r.query(t.items),i.slice(1)).toArray()})})),t}function h(t,i){var r=[];return n.each(t,function(t,u){var f=n.grep(i,function(n){return u.selector==n.selector});f.length<1&&r.push(u)}),r.concat(i)}var o=t.Class,u=t.abstract,r=t.data,e=r.utils.normalizeSortingInfo,s=["loading","loaded","modifying","modified","inserting","inserted","updating","updated","removing","removed"];r.utils.multiLevelGroup=f,r.Store=o.inherit({ctor:function(t){var i=this;t=t||{},n.each(s,function(){var r=i[this]=n.Callbacks();this in t&&r.add(t[this])}),this._key=t.key,this._errorHandler=t.errorHandler,this._useDefaultSearch=!0},_customLoadOptions:function(){return null},key:function(){return this._key},keyOf:function(n){return this._keyGetter||(this._keyGetter=r.utils.compileGetter(this.key())),this._keyGetter(n)},_requireKey:function(){if(!this.key())throw Error("Key expression is required for this operation");},load:function(n){var t=this;return n=n||{},this.loading.fire(n),this._loadImpl(n).done(function(n,i){t.loaded.fire(n,i)})},_loadImpl:function(t){var o=t.filter,u=t.sort,s=t.select,r=t.group,c=t.skip,l=t.take,i=this.createQuery(t);return o&&(i=i.filter(o)),r&&(r=e(r)),(u||r)&&(u=e(u||[]),r&&(u=h(r,u)),n.each(u,function(n){i=i[n?"thenBy":"sortBy"](this.selector,this.desc)})),s&&(i=i.select(s)),r&&(i=f(i,r)),(l||c)&&(i=i.slice(c||0,l)),i.enumerate()},createQuery:u,totalCount:function(n){return this._addFailHandlers(this._totalCountImpl(n))},_totalCountImpl:function(n){n=n||{};var t=this.createQuery(),i=n.group,r=n.filter;return r&&(t=t.filter(r)),i&&(i=e(i),t=f(t,i)),t.count()},byKey:function(n,t){return this._addFailHandlers(this._byKeyImpl(n,t))},_byKeyImpl:u,insert:function(n){var t=this;return t.modifying.fire(),t.inserting.fire(n),t._addFailHandlers(t._insertImpl(n).done(function(n,i){t.inserted.fire(n,i),t.modified.fire()}))},_insertImpl:u,update:function(n,t){var i=this;return i.modifying.fire(),i.updating.fire(n,t),i._addFailHandlers(i._updateImpl(n,t).done(function(n,t){i.updated.fire(n,t),i.modified.fire()}))},_updateImpl:u,remove:function(n){var t=this;return t.modifying.fire(),t.removing.fire(n),t._addFailHandlers(t._removeImpl(n).done(function(n){t.removed.fire(n),t.modified.fire()}))},_removeImpl:u,_addFailHandlers:function(n){return n.fail(this._errorHandler,r._handleError)}})}(jQuery,DevExpress),function(n,t,i){var r=t.data,e=r.Guid,u=function(){var i=n.Deferred();return i.resolve.apply(i,arguments).promise()},f=function(){var i=n.Deferred();return i.reject.apply(i,arguments).promise()};r.ArrayStore=r.Store.inherit({ctor:function(t){t=n.isArray(t)?{data:t}:t||{},this.callBase(t);var i=t.data;if(i&&!n.isArray(i))throw Error("Invalid 'data' option value");this._array=i||[]},createQuery:function(){return r.query(this._array,{errorHandler:this._errorHandler})},_byKeyImpl:function(n){return u(this._array[this._indexByKey(n)])},_insertImpl:function(t){var s=this.key(),r,o={};if(n.extend(o,t),s){if(r=this.keyOf(o),r===i||typeof r=="object"&&n.isEmptyObject(r)){if(n.isArray(s))throw Error("Compound keys cannot be auto-generated");r=o[s]=String(new e)}else if(this._array[this._indexByKey(r)]!==i)return f(Error("Attempt to insert an item with the duplicate key"))}else r=o;return this._array.push(o),u(t,r)},_updateImpl:function(n,i){var r,e;if(this.key()){if(e=this._indexByKey(n),e<0)return f(Error("Data item not found"));r=this._array[e]}else r=n;return t.utils.deepExtendArraySafe(r,i),u(n,i)},_removeImpl:function(n){var t=this._indexByKey(n);return t>-1&&this._array.splice(t,1),u(n)},_indexByKey:function(n){for(var t=0,i=this._array.length;t<i;t++)if(r.utils.keysEqual(this.key(),this.keyOf(this._array[t]),n))return t;return-1},clear:function(){this._array=[]}})}(jQuery,DevExpress),function(n,t){var f=t.Class,r=t.abstract,u=t.data,e=f.inherit({ctor:function(t,i){var u,f,r;if(this._store=t,this._dirty=!1,u=this._immediate=i.immediate,f=Math.max(100,i.flushInterval||1e4),!u){r=n.proxy(this.save,this),setInterval(r,f);n(window).on("beforeunload",r);window.cordova&&document.addEventListener("pause",r,!1)}},notifyChanged:function(){this._dirty=!0,this._immediate&&this.save()},load:function(){this._store._array=this._loadImpl(),this._dirty=!1},save:function(){this._dirty&&(this._saveImpl(this._store._array),this._dirty=!1)},_loadImpl:r,_saveImpl:r}),o=e.inherit({ctor:function(n,t){this.callBase(n,t);var i=t.name;if(!i)throw Error("Name is required");this._key="dx-data-localStore-"+i},_loadImpl:function(){var n=localStorage.getItem(this._key);return n?JSON.parse(n):[]},_saveImpl:function(n){n.length?localStorage.setItem(this._key,JSON.stringify(n)):localStorage.removeItem(this._key)}}),s={dom:o};u.LocalStore=u.ArrayStore.inherit({ctor:function(n){n=typeof n=="string"?{name:n}:n||{},this.callBase(n),this._backend=new s[n.backend||"dom"](this,n),this._backend.load()},clear:function(){this.callBase(),this._backend.notifyChanged()},_insertImpl:function(t){var i=this._backend;return this.callBase(t).done(n.proxy(i.notifyChanged,i))},_updateImpl:function(t,i){var r=this._backend;return this.callBase(t,i).done(n.proxy(r.notifyChanged,r))},_removeImpl:function(t){var i=this._backend;return this.callBase(t).done(n.proxy(i.notifyChanged,i))}})}(jQuery,DevExpress),function(n,t){var h=t.Class,r=t.data,c=t.utils,u=r.utils.odata,f=function(t,i){if(!t)return t;var r={};return n.each(t,function(n,t){r[n]=u.serializeValue(t,i)}),r},e=function(n,t){var i=u.keyConverters[n];if(!i)throw Error("Unknown key type: "+n);return i(t)},o={_extractServiceOptions:function(n){n=n||{},this._url=String(n.url).replace(/\/+$/,""),this._beforeSend=n.beforeSend,this._jsonp=n.jsonp,this._version=n.version,this._withCredentials=n.withCredentials},_sendRequest:function(n,t,i,r){return u.sendRequest({url:n,method:t,params:i||{},payload:r},{beforeSend:this._beforeSend,jsonp:this._jsonp,withCredentials:this._withCredentials})},version:function(){return this._version}},s=r.Store.inherit({ctor:function(n){this.callBase(n),this._extractServiceOptions(n),this._keyType=n.keyType},_customLoadOptions:function(){return["expand","customQueryParams"]},_byKeyImpl:function(t,i){var r={};return i&&i.expand&&(r.$expand=n.map(n.makeArray(i.expand),u.serializePropName).join()),this._sendRequest(this._byKeyUrl(t),"GET",r)},createQuery:function(n){return n=n||{},r.query(this._url,{beforeSend:this._beforeSend,errorHandler:this._errorHandler,jsonp:this._jsonp,version:this._version,withCredentials:this._withCredentials,params:f(n.customQueryParams,this._version),expand:n.expand,requireTotalCount:n.requireTotalCount})},_insertImpl:function(t){this._requireKey();var r=this,i=n.Deferred();return n.when(this._sendRequest(this._url,"POST",null,t)).done(function(n){i.resolve(t,r.keyOf(n))}).fail(n.proxy(i.reject,i)),i.promise()},_updateImpl:function(t,i){var r=n.Deferred();return n.when(this._sendRequest(this._byKeyUrl(t),"MERGE",null,i)).done(function(){r.resolve(t,i)}).fail(n.proxy(r.reject,r)),r.promise()},_removeImpl:function(t){var i=n.Deferred();return n.when(this._sendRequest(this._byKeyUrl(t),"DELETE")).done(function(){i.resolve(t)}).fail(n.proxy(i.reject,i)),i.promise()},_byKeyUrl:function(t){var i=this._keyType;return n.isPlainObject(i)?n.each(i,function(n,i){t[n]=e(i,t[n])}):i&&(t=e(i,t)),this._url+"("+encodeURIComponent(u.serializeKey(t,this._version))+")"}}).include(o),l=h.inherit({ctor:function(t){var i=this;i._extractServiceOptions(t),i._errorHandler=t.errorHandler,n.each(t.entities||[],function(r,u){i[r]=new s(n.extend({},t,{url:i._url+"/"+encodeURIComponent(u.name||r)},u))})},get:function(n,t){return this.invoke(n,t,"GET")},invoke:function(t,i,u){u=u||"POST";var e=n.Deferred();return n.when(this._sendRequest(this._url+"/"+encodeURIComponent(t),u,f(i,this._version))).done(function(n){n&&t in n&&(n=n[t]),e.resolve(n)}).fail([this._errorHandler,r._handleError,n.proxy(e.reject,e)]),e.promise()},objectLink:function(n,t){var i=this[n];if(!i)throw Error("Unknown entity name or alias: "+n);return c.isDefined(t)?{__metadata:{uri:i._byKeyUrl(t)}}:null}}).include(o);n.extend(r,{ODataStore:s,ODataContext:l})}(jQuery,DevExpress),function(n,t){function r(n){return function(t,i){t&&t.getResponseHeader?n.reject(Error(u.utils.errorMessageFromXhr(t,i))):n.reject.apply(n,arguments)}}function f(n){return"_customize"+t.inflector.camelize(n,!0)}function e(n){return"_"+n+"Path"}var u=t.data;u.RestStore=u.Store.inherit({ctor:function(t){var i=this;i.callBase(t),t=t||{},i._url=String(t.url).replace(/\/+$/,""),i._jsonp=t.jsonp,i._withCredentials=t.withCredentials,n.each(["Load","Insert","Update","Remove","ByKey","Operation"],function(){var n=t["customize"+this];n&&(i[f(this)]=n)}),n.each(["load","insert","update","remove","byKey"],function(){var n=t[this+"Path"];n&&(i[e(this)]=n)})},_loadImpl:function(t){var i=n.Deferred(),u={url:this._formatUrlNoKey("load"),type:"GET"};return n.when(this._createAjax(u,"load",t)).done(n.proxy(i.resolve,i)).fail(r(i)),this._addFailHandlers(i.promise())},createQuery:function(){throw Error("Not supported");},_insertImpl:function(t){var i=n.Deferred(),u=this,f={url:this._formatUrlNoKey("insert"),type:"POST",contentType:"application/json",data:JSON.stringify(t)};return n.when(this._createAjax(f,"insert")).done(function(n){i.resolve(t,u.key()&&u.keyOf(n))}).fail(r(i)),i.promise()},_updateImpl:function(t,i){var u=n.Deferred(),f={url:this._formatUrlWithKey("update",t),type:"PUT",contentType:"application/json",data:JSON.stringify(i)};return n.when(this._createAjax(f,"update")).done(function(){u.resolve(t,i)}).fail(r(u)),u.promise()},_removeImpl:function(t){var i=n.Deferred(),u={url:this._formatUrlWithKey("remove",t),type:"DELETE"};return n.when(this._createAjax(u,"remove")).done(function(){i.resolve(t)}).fail(r(i)),i.promise()},_byKeyImpl:function(t){var i=n.Deferred(),u={url:this._formatUrlWithKey("byKey",t),type:"GET"};return n.when(this._createAjax(u,"byKey")).done(function(n){i.resolve(n)}).fail(r(i)),i.promise()},_createAjax:function(t,i,r){function o(n){return"done"in n&&"fail"in n}var e,u;if(this._jsonp&&t.type==="GET"?t.dataType="jsonp":n.extend(!0,t,{xhrFields:{withCredentials:this._withCredentials}}),e=this[f("operation")],e&&(u=e(t,i,r),u)){if(o(u))return u;t=u}if(e=this[f(i)],e&&(u=e(t,r),u)){if(o(u))return u;t=u}return n.ajax(t)},_formatUrlNoKey:function(t){var r=this._url,i=this[e(t)];return i?n.isFunction(i)?i(r):r+"/"+i:r},_formatUrlWithKey:function(t,i){var u=this._url,r=this[e(t)];return r?n.isFunction(r)?r(u,i):u+"/"+r+"/"+encodeURIComponent(i):u+"/"+encodeURIComponent(i)}})}(jQuery,DevExpress),function(n,t,i){function u(t){return t&&n.isFunction(t.done)&&n.isFunction(t.fail)&&n.isFunction(t.promise)}function r(t){return n.Deferred().resolve(t).promise()}function f(t,i){if(!n.isFunction(i))throw Error(w+t);}function y(n){throw Error(b+n);}function e(n){function t(n){var t=n[0],i=n[1];return!t||!t.getResponseHeader?null:o.utils.errorMessageFromXhr(t,i)}return function(i){var r;r=i instanceof Error?i:Error(t(arguments)||i&&String(i)||"Unknown error"),n.reject(r)}}var o=t.data,p="CustomStore does not support creating queries",w="Required option is not specified or is not a function: ",b="Invalid return value: ",s="totalCount",h="load",c="byKey",l="insert",a="update",v="remove";o.CustomStore=o.Store.inherit({ctor:function(n){n=n||{},this.callBase(n),this._useDefaultSearch=!1,this._loadFunc=n[h],this._totalCountFunc=n[s],this._byKeyFunc=n[c]||n.lookup,this._insertFunc=n[l],this._updateFunc=n[a],this._removeFunc=n[v]},createQuery:function(){throw Error(p);},_totalCountImpl:function(t){var h=this._totalCountFunc,i,o=n.Deferred();return f(s,h),i=h(t),u(i)||(i=Number(i),isFinite(i)||y(s),i=r(i)),i.done(function(n){o.resolve(Number(n))}).fail(e(o)),o.promise()},_loadImpl:function(t){var c=this._loadFunc,o,s=n.Deferred();return f(h,c),o=c(t),n.isArray(o)?o=r(o):o===null||o===i?o=r([]):u(o)||y(h),o.done(function(n,t){s.resolve(n,t)}).fail(e(s)),this._addFailHandlers(s.promise())},_byKeyImpl:function(t){var s=this._byKeyFunc,i,o=n.Deferred();return f(c,s),i=s(t),u(i)||(i=r(i)),i.done(function(n){o.resolve(n)}).fail(e(o)),o.promise()},_insertImpl:function(t){var s=this._insertFunc,i,o=n.Deferred();return f(l,s),i=s(t),u(i)||(i=r(i)),i.done(function(n){o.resolve(t,n)}).fail(e(o)),o.promise()},_updateImpl:function(t,i){var h=this._updateFunc,o,s=n.Deferred();return f(a,h),o=h(t,i),u(o)||(o=r()),o.done(function(){s.resolve(t,i)}).fail(e(s)),s.promise()},_removeImpl:function(t){var s=this._removeFunc,i,o=n.Deferred();return f(v,s),i=s(t),u(i)||(i=r()),i.done(function(){o.resolve(t)}).fail(e(o)),o.promise()}})}(jQuery,DevExpress),function(n,t,i){function s(t){function f(){var i={};return n.each(["key","load","byKey","lookup","totalCount","insert","update","remove"],function(){i[this]=t[this],delete t[this]}),new e(i)}function s(n){var t=r[o[n.type]];return delete n.type,new t(n)}function h(t){return new e({load:function(){return n.getJSON(t)}})}var u;return typeof t=="string"&&(t=h(t)),t===i&&(t=[]),t=n.isArray(t)||t instanceof r.Store?{store:t}:n.extend({},t),t.store===i&&(t.store=[]),u=t.store,"load"in t?u=f():n.isArray(u)?u=new r.ArrayStore(u):n.isPlainObject(u)&&(u=s(n.extend({},u))),t.store=u,t}function h(t){switch(t.length){case 0:return i;case 1:return t[0]}return n.makeArray(t)}function u(n){return function(){var t=h(arguments);return t!==i&&(this._storeLoadOptions[n]=t),this._storeLoadOptions[n]}}function l(n,t){t.refresh=!n._paginate||n._pageIndex===0,t.searchValue!==null&&(t.searchString=t.searchValue)}var r=t.data,e=r.CustomStore,c=t.Class,o={jaydata:"JayDataStore",breeze:"BreezeStore",odata:"ODataStore",local:"LocalStore",array:"ArrayStore"},f=c.inherit({ctor:function(t){t=s(t),this._store=t.store,this._storeLoadOptions=this._extractLoadOptions(t),this._mapFunc=t.map,this._postProcessFunc=t.postProcess,this._pageIndex=0,this._pageSize=t.pageSize!==i?t.pageSize:20,this._items=[],this._totalCount=-1,this._isLoaded=!1,this._loadingCount=0,this._preferSync=t._preferSync,this._loadQueue=this._createLoadQueue(),this._searchValue="searchValue"in t?t.searchValue:null,this._searchOperation=t.searchOperation||"contains",this._searchExpr=t.searchExpr,this._paginate=t.paginate,this._paginate===i&&(this._paginate=!this.group()),this._isLastPage=!this._paginate,this._userData={},this.changed=n.Callbacks(),this.loadError=n.Callbacks(),this.loadingChanged=n.Callbacks()},dispose:function(){this.changed.empty(),this.loadError.empty(),this.loadingChanged.empty(),delete this._store,this._disposed=!0},_extractLoadOptions:function(t){var r={},i=["sort","filter","select","group","requireTotalCount"],u=this._store._customLoadOptions();return u&&(i=i.concat(u)),n.each(i,function(){r[this]=t[this]}),r},loadOptions:function(){return this._storeLoadOptions},items:function(){return this._items},pageIndex:function(n){return n!==i&&(this._pageIndex=n,this._isLastPage=!this._paginate),this._pageIndex},paginate:function(n){if(arguments.length<1)return this._paginate;n=!!n,this._paginate!==n&&(this._paginate=n,this.pageIndex(0))},isLastPage:function(){return this._isLastPage},sort:u("sort"),filter:function(){var n=h(arguments);return n!==i&&(this._storeLoadOptions.filter=n,this.pageIndex(0)),this._storeLoadOptions.filter},group:u("group"),select:u("select"),searchValue:function(n){return n!==i&&(this.pageIndex(0),this._searchValue=n),this._searchValue},searchOperation:function(n){return n!==i&&(this.pageIndex(0),this._searchOperation=n),this._searchOperation},searchExpr:function(t){var i=arguments.length;return i&&(i>1&&(t=n.makeArray(arguments)),this.pageIndex(0),this._searchExpr=t),this._searchExpr},store:function(){return this._store},key:function(){return this._store&&this._store.key()},totalCount:function(){return this._totalCount},isLoaded:function(){return this._isLoaded},isLoading:function(){return this._loadingCount>0},_createLoadQueue:function(){return t.createQueue()},_changeLoadingCount:function(n){var i=this.isLoading(),t;this._loadingCount+=n,t=this.isLoading(),i^t&&this.loadingChanged.fire(t)},_scheduleLoadCallbacks:function(n){var t=this;t._changeLoadingCount(1),n.always(function(){t._changeLoadingCount(-1)})},_scheduleChangedCallbacks:function(n){var t=this;n.done(function(){t.changed.fire()})},loadSingle:function(t,i){function s(n){f.resolve(h._transformLoadedData(n)[0])}var h=this,f=n.Deferred().fail(this.loadError.fire),o=this.key(),e=this._store,u=this._createStoreLoadOptions();return arguments.length<2&&(i=t,t=o),delete u.skip,delete u.group,delete u.refresh,delete u.pageIndex,delete u.searchString,t===o||e instanceof r.CustomStore?e.byKey(i,u).done(s).fail(f.reject):(u.take=1,u._preferSync=!0,u.filter=u.filter?[u.filter,[t,i]]:[t,i],e.load(u).done(s).fail(f.reject)),f.promise()},load:function(){function e(){return r._disposed?i:r._loadFromStore(f,t)}var r=this,t=n.Deferred(),u=this.loadError,f;return this._scheduleLoadCallbacks(t),this._scheduleChangedCallbacks(t),f=this._createStoreLoadOptions(),this._loadQueue.add(function(){return e(),t.promise()},function(){r._changeLoadingCount(-1)}),t.promise().fail(n.proxy(u.fire,u))},_addSearchOptions:function(n){this._disposed||(this.store()._useDefaultSearch?this._addSearchFilter(n):(n.searchValue=this._searchValue,n.searchExpr=this._searchExpr))},_createStoreLoadOptions:function(){var t=n.extend({},this._storeLoadOptions);return this._addSearchOptions(t),this._paginate&&(t.pageIndex=this._pageIndex,this._pageSize&&(t.skip=this._pageIndex*this._pageSize,t.take=this._pageSize)),t.userData=this._userData,l(this,t),t},_addSearchFilter:function(t){var u=this._searchValue,f=this._searchOperation,i=this._searchExpr,r=[];u&&(i||(i="this"),n.isArray(i)||(i=[i]),n.each(i,function(n,t){r.length&&r.push("or"),r.push([t,f,u])}),t.filter=t.filter?[r,t.filter]:r)},_loadFromStore:function(i,r){function f(n,f){function e(){u._processStoreLoadResult(n,f,i,r)}u._preferSync?e():t.utils.executeAsync(e)}var u=this;return this.store().load(i).done(f).fail(n.proxy(r.reject,r))},_processStoreLoadResult:function(t,i,r,u){function e(){return f._isLoaded=!0,f._totalCount=isFinite(i.totalCount)?i.totalCount:-1,u.resolve(t,i)}function o(){f.store().totalCount(r).done(function(n){i.totalCount=n,e()}).fail(function(){})}var f=this;f._disposed||(t=f._transformLoadedData(t),n.isPlainObject(i)||(i={}),f._items=t,(!t.length||!f._paginate||f._pageSize&&t.length<f._pageSize)&&(f._isLastPage=!0),r.requireTotalCount&&!isFinite(i.totalCount)?o():e())},_transformLoadedData:function(t){var i=n.makeArray(t);return this._mapFunc&&(i=n.map(i,this._mapFunc)),this._postProcessFunc&&(i=this._postProcessFunc(i)),i}});r.Store.redefine({toDataSource:function(t){return new f(n.extend({store:this},t))}}),n.extend(!0,r,{DataSource:f,createDataSource:function(n){return new f(n)},utils:{storeTypeRegistry:o,normalizeDataSourceOptions:s}})}(jQuery,DevExpress),function(n,t){if(t.support.hasKo){var r=window.ko;(function(n){if(n=n.split("."),n[0]<2||n[0]==2&&n[1]<3)throw Error("Your version of KnockoutJS is too old. Please upgrade KnockoutJS to 2.3.0 or later.");})(r.version)}}(jQuery,DevExpress),function(n,t){t.support.hasNg&&(t.ng={module:window.angular.module("dx",["ngSanitize"])})}(jQuery,DevExpress),function(n,t,i){var e=t.ui,u=t.utils,r=t.data.utils,f=t.Class.inherit({NAME:"Component",_deprecatedOptions:{},_optionAliases:{},_setDefaultOptions:function(){},_defaultOptionsRules:function(){return[]},_setOptionsByDevice:function(){var i=this._defaultOptionsRules(),r=t.devices.current(),f={},e;this._customRules&&(i=i.concat(this._customRules)),e=function(t,i){return i=n.makeArray(i),i.length===1&&n.isEmptyObject(i[0])||u.findBestMatches(t,i).length>0},n.each(i,function(t,i){var u=i.device||{},o;o=n.isFunction(u)?u(r):e(r,u),o&&n.extend(f,i.options)}),this.option(f)},_optionsByReference:function(){return{}},ctor:function(t){this._options={},this._updateLockCount=0,this.optionChanged=n.Callbacks(),this.beginUpdate();try{this._suppressDeprecatedWarnings(),this._setDefaultOptions(),this._setOptionsByDevice(),this._resumeDeprecatedWarnings(),this._initialOptions=n.extend({},this.option()),this._initOptions(t||{})}finally{this.endUpdate()}},_initOptions:function(n){this.option(n)},_optionValuesEqual:function(n,t,i){return(t=r.toComparable(t,!0),i=r.toComparable(i,!0),t&&i&&t.jquery&&i.jquery)?i.is(t):t===null||typeof t!="object"?t===i:!1},_init:n.noop,_optionChanged:n.noop,instance:function(){return this},beginUpdate:function(){this._updateLockCount++},endUpdate:function(){if(this._updateLockCount--,!this._updateLockCount&&!this._initializing&&!this._initialized){this._initializing=!0;try{this._init()}finally{this._initializing=!1,this._initialized=!0}}},_logWarningIfDeprecated:function(){},_suppressDeprecatedWarnings:function(){},_resumeDeprecatedWarnings:function(){},_getOptionAliases:function(t){return n.map(this._optionAliases,function(n,r){return t===n?r:i})},_notifyOptionChanged:function(t,i,r){var u=this,f;this._initialized&&(f=this._getOptionAliases(t),f.push(t),n.each(f,function(n,t){var f=t.split(/[.\[]/)[0];u.optionChanged.fireWith(u,[f,i,r]),u._optionChanged(f,i,r)}))},initialOption:function(n){var t=this._initialOptions;return t[n]},option:function(t){var i=this,u=t,f=arguments[1];if(arguments.length<2&&n.type(u)!=="object")return u&&(this._logWarningIfDeprecated(u),this._optionAliases[u]&&(u=this._optionAliases[u])),n.each(this._optionAliases,function(n,t){i._options[n]=r.compileGetter(t)(i._options,{functionsAsIs:!0})}),r.compileGetter(u)(i._options,{functionsAsIs:!0});typeof u=="string"&&(t={},t[u]=f),i.beginUpdate();try{n.each(t,function(n,t){i._logWarningIfDeprecated(n),i._optionAliases[n]&&(n=i._optionAliases[n]);var u=r.compileGetter(n)(i._options,{functionsAsIs:!0});i._optionValuesEqual(n,u,t)||(r.compileSetter(n)(i._options,t,{functionsAsIs:!0,merge:!i._optionsByReference()[n]}),i._notifyOptionChanged(n,t,u))})}finally{i.endUpdate()}}});n.extend(t,{Component:f})}(jQuery,DevExpress),function(n,t,i){var f=t.utils.windowResizeCallbacks,o="dx-rtl",r="dxComponents",s="dx-visibility-change-handler",u="dxVisibilityChange",h=t.Component.inherit({NAME:"DOMComponent",NAMESPACE:t,_setDefaultOptions:function(){this.callBase(),this.option({rtlEnabled:t.rtlEnabled})},ctor:function(t,i){this._$element=n(t),this._element().data(this.NAME,this),this._attachInstanceToElement(this._$element),this.disposing=n.Callbacks(),this.callBase(i)},_attachInstanceToElement:n.noop,_visibilityChanged:t.abstract,_dimensionChanged:t.abstract,_init:function(){this.callBase(),this._attachWindowResizeCallback()},_attachWindowResizeCallback:function(){if(this._isDimensionChangeSupported()){var t=this._windowResizeCallBack=n.proxy(this._dimensionChanged,this);f.add(t)}},_isDimensionChangeSupported:function(){return this._dimensionChanged!==t.abstract},_render:function(){this._toggleRTLDirection(this.option("rtlEnabled")),this._renderVisiblityChange()},_renderVisiblityChange:function(){this._isVisibilityChangeSupported()&&(this._element().addClass(s),this._attachVisiblityChangeHandlers())},_attachVisiblityChangeHandlers:function(){var n=this;n._element().off("."+u).on("dxhiding."+u,function(){n._visibilityChanged(!1)}).on("dxshown."+u,function(){n._visibilityChanged(!0)})},_isVisibilityChangeSupported:function(){return this._visibilityChanged!==t.abstract},_clean:n.noop,_modelByElement:n.noop,_invalidate:function(){this._requireRefresh=!0},_refresh:function(){this._clean(),this._render()},_dispose:function(){this._clean(),this._detachWindowResizeCallback(),this.optionChanged.empty(),this.disposing.fireWith(this).empty()},_detachWindowResizeCallback:function(){this._isDimensionChangeSupported()&&f.remove(this._windowResizeCallBack)},_toggleRTLDirection:function(n){this._element().toggleClass(o,n)},_createAction:function(i,r){var u=this,f,e,o;return r=n.extend({},r),f=r.element||u._element(),e=u._modelByElement(f),r.context=e||u,r.component=u,o=new t.Action(i,r),function(t){return arguments.length||(t={}),n.isPlainObject(t)||(t={actionValue:t}),o.execute.call(o,n.extend(t,{component:u,element:f,model:e}))}},_createActionByOption:function(n,t){if(typeof n!="string")throw Error("Option name type is unexpected");this._suppressDeprecatedWarnings();var i=this._createAction(this.option(n),t);return this._resumeDeprecatedWarnings(),i},_optionChanged:function(n){n==="rtlEnabled"&&this._invalidate()},_element:function(){return this._$element},endUpdate:function(){var n=!this._initializing&&!this._initialized;this.callBase.apply(this,arguments),this._updateLockCount||(n?this._render():this._requireRefresh&&(this._requireRefresh=!1,this._refresh()))}}),e=function(u,f){f.redefine({_attachInstanceToElement:function(n){n.data(u,this),n.data(r)||n.data(r,[]),n.data(r).push(u)}}),f.prototype.NAMESPACE[u]=f,f.prototype.NAME=u,f.defaultOptions=function(n){f.prototype._customRules=f.prototype._customRules||[],f.prototype._customRules.push(n)},n.fn[u]=function(r){var h=typeof r=="string",e,o,s;return h?(o=r,s=n.makeArray(arguments).slice(1),this.each(function(){var r=n(this).data(u),f,h;if(!r)throw Error(t.utils.stringFormat("Component {0} has not been initialized on this element",u));f=r[o],h=f.apply(r,s),e===i&&(e=h)})):(this.each(function(){var t=n(this).data(u);t?t.option(r):new f(this,r)}),e=this),e}},c=function(t){t=n(t);var i=t.data(r);return i?n.map(i,function(n){return t.data(n)}):[]},l=function(){n.each(c(this),function(){this._dispose()})},a=n.cleanData;n.cleanData=function(t){return n.each(t,l),a.apply(this,arguments)},e("DOMComponent",h),t.registerComponent=e}(jQuery,DevExpress),DevExpress.social={},function(n,t,i){function o(){}var ft=t.social,r=window.location,et=window.navigator,w=window.encodeURIComponent,ot=window.decodeURIComponent,s=et.standalone,h=!1,p;if(window.cordova)n(document).on("deviceready",function(){h=!0});var b="dx-facebook-access-token",c="dx-facebook-step1",l="dx-facebook-step2",u=null,k=null,d=n.Callbacks(),f,g=function(){return!!u},st=function(){return{accessToken:u,expiresIn:u?k:0}},a=ft.Facebook={loginRedirectUrl:"FacebookLoginCallback.html",connectionChanged:d,isConnected:g,getAccessTokenObject:st,jsonp:!1},ht=function(n,t){o(),t=t||{},f=h?"https://www.facebook.com/connect/login_success.html":ct();var u=(t.permissions||[]).join(),i="https://www.facebook.com/dialog/oauth?display=popup&client_id="+n+"&redirect_uri="+w(f)+"&scope="+w(u)+"&response_type=token";s&&e(c,r.href),h?at(i):lt(i)},ct=function(){var n=r.pathname.split(/\//g);return n.pop(),n.push(a.loginRedirectUrl),r.protocol+"//"+r.host+n.join("/")},lt=function(n){var t=512,i=320,r=(screen.width-t)/2,u=(screen.height-i)/2;window.open(n,null,"width="+t+",height="+i+",toolbar=0,scrollbars=0,status=0,resizable=0,menuBar=0,left="+r+",top="+u)},at=function(n){var t=window.open(n,"_blank");t.addEventListener("exit",function(){f=null}),t.addEventListener("loadstop",function(n){var i=unescape(n.url);i.indexOf(f)===0&&(t.close(),v(i))})},vt=function(){var n=window.opener;s?(e(l,r.href),r.href=y(c)):n&&n.DevExpress&&(n.DevExpress.social.Facebook._processLoginRedirectUrl(r.href),window.close())},v=function(n){var t=yt(n);k=t.expires_in,nt(t.access_token),f=null},yt=function(t){var r=t.split("#")[1],u,i;return r?(u=r.split(/&/g),i={},n.each(u,function(){var t=this.split("=");i[t[0]]=ot(t[1])}),i):{}},pt=function(){o(),nt(null)},nt=function(n){n!==u&&(u=n,e(b,n),d.fire(!!n))},tt=function(t,r,f){if(o(),!g())throw Error("Not connected");typeof r!="string"&&(f=r,r=i),r=(r||"get").toLowerCase();var e=n.Deferred(),s=arguments;return n.ajax({url:"https://graph.facebook.com/"+t,type:r,data:n.extend({access_token:u},f),dataType:a.jsonp&&r==="get"?"jsonp":"json"}).done(function(n){n=n||it(),n.error?e.reject(n.error):e.resolve(n)}).fail(function(i){var u,o;try{if(u=n.parseJSON(i.responseText),o=s[3]||0,o++<3&&u.error.code==190&&u.error.error_subcode==466){setTimeout(function(){tt(t,r,f,o).done(function(n){e.resolve(n)}).fail(function(n){e.reject(n)})},500);return}}catch(h){u=it()}e.reject(u.error)}),e.promise()},it=function(){return{error:{message:"Unknown error"}}},rt=function(){if(!ut())throw Error("HTML5 sessionStorage or jQuery.cookie plugin is required");},ut=function(){return!!(n.cookie||window.sessionStorage)},e=function(t,i){rt(),i=JSON.stringify(i),window.sessionStorage?i===null?sess.removeItem(t):sessionStorage.setItem(t,i):n.cookie(t,i)},y=function(t){rt();try{return JSON.parse(window.sessionStorage?sessionStorage.getItem(t):n.cookie(t))}catch(i){return null}};ut()&&(u=y(b)),s&&(p=y(l),p&&(v(p),e(c,null),e(l,null))),n.extend(a,{login:ht,logout:pt,handleLoginRedirect:vt,_processLoginRedirectUrl:v,api:tt})}(jQuery,DevExpress),function(n,t){var u=t.ui={},f=t.Class.inherit({getTemplateClass:function(){return r},supportDefaultTemplate:function(){return!1},getDefaultTemplate:function(){return null}}),r=t.Class.inherit({ctor:function(t,i){this._template=this._element=n(t).detach(),this._owner=i},render:function(n){var t=this._template.clone();return n.append(t),t},dispose:function(){this._owner=null},owner:function(){return this._owner}}),e="dxGestureLock";t.registerActionExecutor({designMode:{validate:function(n){t.designMode&&(n.cancel=!0)}},gesture:{validate:function(n){if(n.args.length)for(var i=n.args[0],t=i[n.validatingTargetName]||i.element;t&&t.length;){if(t.data(e)){n.cancel=!0;break}t=t.parent()}}},disabled:{validate:function(n){if(n.args.length){var t=n.args[0],i=t[n.validatingTargetName]||t.element;i&&i.is(".dx-state-disabled, .dx-state-disabled *")&&(n.cancel=!0)}}}}),n.extend(u,{TemplateProvider:f,Template:r,initViewport:function(){t.utils.initMobileViewport()}})}(jQuery,DevExpress),function(n,t){var u,s,h,c;if(t.support.hasKo){var r=window.ko,f=t.ui,e="dxKoLocks",l="dxKoCreation",a=function(){var n={},t=function(t){return n[t]||0};return{obtain:function(i){n[i]=t(i)+1},release:function(i){var r=t(i);r===1?delete n[i]:n[i]=r-1},locked:function(n){return t(n)>0}}},v=function(t){r.bindingHandlers[t]={init:function(i,u){var o=n(i),s={},h={},c=function(n,i){var f=o.data(t),u=o.data(e),c=r.utils.unwrapObservable(i);if(r.isWriteableObservable(i)&&(h[n]=i),f){if(u.locked(n))return;u.obtain(n);try{f.option(n,c)}finally{u.release(n)}}else s[n]=c},v=function(n,t){if(n in h){var r=this._$element,i=r.data(e);if(!i.locked(n)){i.obtain(n);try{h[n](t)}finally{i.release(n)}}}},y=function(){o.data(l,!0),o[t](s),s=null,o.data(e,new a),o.data(t).optionChanged.add(v)};return r.computed(function(){var f=o.data(t);f&&f.beginUpdate(),n.each(r.unwrap(u()),function(n,t){r.computed(function(){c(n,t)},null,{disposeWhenNodeIsRemoved:i})}),f?f.endUpdate():y()},null,{disposeWhenNodeIsRemoved:i}),{controlsDescendantBindings:f[t]&&f[t].subclassOf(f.Widget)}}}},y=t.DOMComponent.inherit({_modelByElement:function(n){if(n.length)return r.dataFor(n.get(0))}}),p=t.registerComponent,o=function(n,t){p(n,t),v(n)};r.bindingHandlers.dxAction={update:function(i,u,f,e){var h=n(i),o=r.utils.unwrapObservable(u()),c=o,s={context:i},l;o.execute&&(c=o.execute,n.extend(s,o)),l=new t.Action(c,s);h.off(".dxActionBinding").on("dxclick.dxActionBinding",function(n){l.execute({element:h,model:e,evaluate:function(n){var u=e,f;return n.length>0&&n[0]==="$"&&(u=r.contextFor(i)),f=t.data.utils.compileGetter(n),f(u)},jQueryEvent:n}),s.bubbling||n.stopPropagation()})}},u=function(n,t){var i=function(){r.cleanNode(this)};t?n.each(i):n.find("*").each(i)},s=n.fn.empty,n.fn.empty=function(){return u(this,!1),s.apply(this,arguments)},h=n.fn.remove,n.fn.remove=function(n,t){if(!t){var i=this;n&&(i=i.filter(n)),u(i,!0)}return h.call(this,n,t)},c=n.fn.html,n.fn.html=function(n){return typeof n=="string"&&u(this,!1),c.apply(this,arguments)},t.registerComponent=o,o("DOMComponent",y)}}(jQuery,DevExpress),function(n,t,i){if(t.support.hasNg){var r=t.ui,u=t.data.utils.compileSetter,f=t.data.utils.compileGetter,h="dxNgCreation",e="dxTemplates",c="dxNgCompiler",l="dxDefaultCompilerGetter",a="template",v=t.ng.module,y=t.Class.inherit({ctor:function(t){this._componentName=t.componentName,this._$element=t.$element,this._$templates=t.$templates,this._scope=t.scope,this._compile=t.compile,this._ngOptions=t.ngOptions,this._componentDisposing=n.Callbacks(),this._$element.data(h,!0),t.ngOptions.data&&this._initDataScope(t.ngOptions.data)},initDefaultCompilerGetter:function(){var n=this;n._$element.data(l,function(t){return n._compilerByTemplate(t)})},initTemplateCompilers:function(){var t=this;this._$templates&&this._$templates.each(function(i,r){n(r).data(c,t._compilerByTemplate(r))})},initComponentWithBindings:function(){this._initComponent(this._scope),this._initComponentBindings()},_initDataScope:function(t){if(typeof t=="string"){var r=t,i=this._scope;t=i.$eval(t),this._scope=i.$new(),this._synchronizeDataScopes(i,this._scope,t,r)}n.extend(this._scope,t)},_synchronizeDataScopes:function(t,i,r,u){var f=this;n.each(r,function(n){f._synchronizeScopeField({parentScope:t,childScope:i,fieldPath:n,parentPrefix:u})})},_initComponent:function(n){this._component=this._$element[this._componentName](this._evalOptions(n)).data(this._componentName)},_initComponentBindings:function(){var t=this,i={};t._ngOptions.bindingOptions&&n.each(t._ngOptions.bindingOptions,function(r,u){var s=r.search(/\[|\./),e=s>-1?r.substring(0,s):r,h,f,c,o;i[e]||(i[e]={}),i[e][r]=u,c=function(n,i){n!==i&&(t._component.option(r,n),o())},o=function(){var i=n.isArray(t._scope.$eval(u))?"$watchCollection":"$watch";h!==i&&(f&&f(),f=t._scope[i](u,c,!0),h=i)},o(),t._component.disposing.add(function(){f(),t._componentDisposing.fire()})}),t._component.optionChanged.add(function(r,e){t._scope.$root.$$phase!=="$digest"&&i&&i[r]&&o(function(t){n.each(i[r],function(n,i){var s=u(i),h=f(n),o={};o[r]=e,s(t,h(o))})},t._scope)})},_compilerByTemplate:function(t){var r=this,u=this._getScopeItemsPath();return function(f,e){var h=n(t).clone(),c,s;if(f!==i){c=f.$id,s=c?f:r._createScopeWithData(f);h.on("$destroy",function(){var n=!s.$parent;n||s.$destroy()})}else s=r._scope;return u&&r._synchronizeScopes(s,u,e),o(r._compile(h),s),h}},_getScopeItemsPath:function(){if(r[this._componentName].subclassOf(r.CollectionContainerWidget)&&this._ngOptions.bindingOptions)return this._ngOptions.bindingOptions.items},_createScopeWithData:function(t){var i=this._scope.$new(!0);return typeof t=="object"?n.extend(i,t):i.scopeValue=t,i},_synchronizeScopes:function(t,i,r){var e=this,u=f(i+"["+r+"]")(this._scope);n.isPlainObject(u)||(u={scopeValue:u}),n.each(u,function(n){e._synchronizeScopeField({parentScope:e._scope,childScope:t,fieldPath:n,parentPrefix:i,itemIndex:r})})},_synchronizeScopeField:function(n){var r=n.parentScope,c=n.childScope,t=n.fieldPath,l=n.parentPrefix,e=n.itemIndex,y=t==="scopeValue"?"":"."+t,a=e!==i,o=[l],s,v,h;a&&o.push("[",e,"]"),o.push(y),s=o.join(""),v=r.$watch(s,function(n,i){n!==i&&u(t)(c,n)}),h=c.$watch(t,function(n,t){if(n!==t){if(a&&!f(l)(r)[e]){h();return}u(s)(r,n)}}),this._componentDisposing.add([v,h])},_evalOptions:function(t){var i=n.extend({},this._ngOptions);return delete i.data,delete i.bindingOptions,this._ngOptions.bindingOptions&&n.each(this._ngOptions.bindingOptions,function(n,r){i[n]=t.$eval(r)}),i}}),o=function(n,t){t.$root.$$phase?n(t):t.$apply(function(){n(t)})},p=function(t,i){var u,f;return t.data(e)?t.data(e):(r[i]&&r[i].subclassOf(r.Widget)&&n.trim(t.html())&&(f=!t.children().first().attr("data-options"),u=f?n("<div/>").attr("data-options","dxTemplate: { name: '"+a+"' }").append(t.contents()):t.children().detach(),t.data(e,u)),u)},w=t.DOMComponent.inherit({_modelByElement:function(n){if(n.length)return n.scope()},_createAction:function(){var n=this.callBase.apply(this,arguments),t=this;return function(){var r=this,i=t._modelByElement(t._element()),u=arguments;return!i||i.$root.$$phase?n.apply(r,u):i.$apply(function(){return n.apply(r,u)})}}}),b=t.registerComponent,s=function(n,t){b(n,t),v.directive(n,["$compile",function(t){return{restrict:"A",compile:function(i){var r=p(i,n);return function(i,u,f){var e=new y({componentName:n,compile:t,$element:u,scope:i,ngOptions:f[n]?i.$eval(f[n]):{},$templates:r});e.initTemplateCompilers(),e.initDefaultCompilerGetter(),e.initComponentWithBindings()}}}}])};t.registerComponent=s,s("DOMComponent",w)}}(jQuery,DevExpress),function(n,t,i){if(t.support.hasKo){var f=window.ko,e=t.ui,c="dxKoCreation",o=e.Template.inherit({ctor:function(t){this.callBase.apply(this,arguments),this._template=n("<div>").append(t),this._registerKoTemplate()},_cleanTemplateElement:function(){this._element.each(function(){f.cleanNode(this)})},_registerKoTemplate:function(){var n=this._template.get(0);new f.templateSources.anonymousTemplate(n).nodes(n)},render:function(t,r){var e;r=r!==i?r:f.dataFor(t.get(0))||{};var o=f.contextFor(t[0]),s=o?o.createChildContext(r):r,u=n("<div />").appendTo(t);return f.renderTemplate(this._template.get(0),s,null,u.get(0)),e=u.contents(),t.append(e),u.remove(),e},dispose:function(){this.callBase(),this._template.remove()}}),l=e.TemplateProvider.inherit({getTemplateClass:function(n){return this._createdWithKo(n)?o:this.callBase(n)},supportDefaultTemplate:function(n){return this._createdWithKo(n)?!0:this.callBase(n)},getDefaultTemplate:function(n){if(this._createdWithKo(n))return s(n.NAME)},_createdWithKo:function(n){return!!n._element().data(c)}}),s=function(){var n={};return function(i){if(r[i]||(i="base"),!n[i]){var u=r[i](),f=t.utils.createMarkupFromString(u);n[i]=new o(f)}return n[i]}}(),u=function(t,r,u,f){u=u===i?!0:u;var e=n.map(r,function(n,t){return t+":"+n}).join(",");return f=f||"","<"+t+' data-bind="'+e+'" '+f+">"+(u?"<\/"+t+">":"")},h={css:"{ 'dx-state-disabled': $data.disabled, 'dx-state-invisible': !($data.visible === undefined || ko.unwrap($data.visible)) }"},r={base:function(){var n=[u("div",h,!1)],t=u("div",{html:"html"}),i=u("div",{text:"text"}),r=u("div",{text:"String($data)"});return n.push("<!-- ko if: $data.html && !$data.text -->",t,"<!-- /ko -->","<!-- ko if: !$data.html && $data.text -->",i,"<!-- /ko -->","<!-- ko ifnot: $.isPlainObject($data) -->",r,"<!-- /ko -->","<\/div>"),n.join("")}};r.dxPivotTabs=function(){var n=r.base(),t=u("span",{text:"title"}),i=n.indexOf(">")+1,f=n.length-6;return n=[n.substring(0,i),t,n.substring(f,n.length)],n.join("")},r.dxPanorama=function(){var n=r.base(),i=u("div",{text:"header"},!0,'class="dx-panorama-item-header"'),t=n.indexOf(">")+1;return n=[n.substring(0,t),"<!-- ko if: $data.header -->",i,"<!-- /ko -->",n.substring(t,n.length)],n.join("")},r.dxList=function(){var n=r.base(),t=u("div",{text:"key"});return n=[n.substring(0,n.length-6),"<!-- ko if: $data.key -->"+t+"<!-- /ko -->","<\/div>"],n.join("")},r.dxToolbar=function(){var i=r.base();return i=[i.substring(0,i.length-6),"<!-- ko if: $data.widget -->"],n.each(["button","tabs","dropDownMenu"],function(){var r=t.inflector.camelize(["dx","-",this].join("")),n={};n[r]="$data.options",i.push("<!-- ko if: $data.widget === '",this,"' -->",u("div",n),"<!-- /ko -->")}),i.push("<!-- /ko -->"),i.join("")},r.dxGallery=function(){var n=r.base(),t=u("div",{text:"String($data)"}),i=u("img",{attr:"{ src: String($data) }"},!1);return n=n.replace(t,i)},r.dxTabs=function(){var n=r.base(),t=u("div",{text:"text"}),i=u("span",{attr:"{ 'class': 'dx-icon-' + $data.icon }",css:"{ 'dx-icon': true }"}),f=u("img",{attr:"{ src: $data.iconSrc }",css:"{ 'dx-icon': true }"},!1),e="<!-- ko if: $data.icon -->"+i+"<!-- /ko --><!-- ko if: !$data.icon && $data.iconSrc -->"+f+'<!-- /ko --><span class="dx-tab-text" data-bind="text: $data.text"><\/span>';return n=n.replace("<!-- ko if: !$data.html && $data.text -->","<!-- ko if: !$data.html && ($data.text || $data.icon || $data.iconSrc) -->").replace(t,e)},r.dxActionSheet=function(){return u("div",{dxButton:"{ text: $data.text, clickAction: $data.clickAction, type: $data.type, disabled: !!ko.unwrap($data.disabled) }"})},r.dxNavBar=r.dxTabs,r.dxMenu=function(){var n=[u("div",h,!1)],t=u("span",{attr:"{ 'class': 'dx-icon-' + $data.icon }",css:"{ 'dx-icon': true }"}),i=u("img",{attr:"{ src: $data.iconSrc }",css:"{ 'dx-icon': true }"}),r=u("span",{text:"text",css:"{ 'dx-menu-item-text': true }"}),f=u("span",{text:"String($data)",css:"{ 'dx-menu-item-text': true }"}),e='<span class="dx-menu-item-popout-container"><div class="dx-menu-item-popout"><\/div><\/span>';return n.push('<div class="dx-menu-item-content">',"<!-- ko if: $data.icon -->",t,"<!-- /ko -->","<!-- ko if: !$data.icon && $data.iconSrc -->",i,"<!-- /ko -->","<!-- ko if: $.isPlainObject($data) -->",r,"<!-- /ko -->","<!-- ko ifnot: $.isPlainObject($data) -->",f,"<!-- /ko -->","<!-- ko if: $data.items -->",e,"<!-- /ko -->","<\/div>","<\/div>"),n.join("")},r.dxContextMenu=r.dxMenu,n.extend(e,{TemplateProvider:l,Template:o,defaultTemplate:s})}}(jQuery,DevExpress),function(n,t){if(t.support.hasNg){var f=t.ui,o="dxNgCreation",s="dxNgCompiler",h="dxDefaultCompilerGetter",e=f.Template.inherit({ctor:function(){this.callBase.apply(this,arguments),this._compiler=this._template.data(s)},render:function(t,i,r){var u=this._compiler,f=n.isFunction(u)?u(i,r):u;return t.append(f),f},setCompiler:function(n){this._compiler=n(this._element)}}),c=f.TemplateProvider.inherit({getTemplateClass:function(n){return this._createdWithNg(n)?e:this.callBase(n)},supportDefaultTemplate:function(n){return this._createdWithNg(n)?!0:this.callBase(n)},getDefaultTemplate:function(n){if(this._createdWithNg(n)){var i=n._element().data(h),t=l(n.NAME);return t.setCompiler(i),t}},_createdWithNg:function(n){return!!n._element().data(o)}}),l=function(){var n={};return function(t){return u[t]||(t="base"),n[t]||(n[t]=u[t]()),new e(n[t])}}(),r={container:function(){return n("<div>").attr("ng-class","{ 'dx-state-invisible': !visible && visible != undefined, 'dx-state-disabled': !!disabled }")},html:function(){return n("<div>").attr("ng-if","html").attr("ng-bind-html","html")},text:function(){return n("<div>").attr("ng-if","text").attr("ng-bind","text")},primitive:function(){return n("<div>").attr("ng-if","scopeValue").attr("ng-bind-html","'' + scopeValue")}},u={base:function(){return r.container().append(r.html()).append(r.text()).append(r.primitive())}};u.dxList=function(){return u.base().append(n("<div>").attr("ng-if","key").attr("ng-bind","key"))},u.dxToolbar=function(){var i=u.base();return n.each(["button","tabs","dropDownMenu"],function(r,u){var f="dx-"+t.inflector.dasherize(this);n("<div>").attr("ng-if","widget === '"+u+"'").attr(f,"options").appendTo(i)}),i},u.dxGallery=function(){return r.container().append(r.html()).append(r.text()).append(n("<img>").attr("ng-if","scopeValue").attr("ng-src","{{'' + scopeValue}}"))},u.dxTabs=function(){var t=r.container(),i=n("<span>").addClass("dx-tab-text").attr("ng-bind","text").attr("ng-if","text"),u=n("<span>").attr("ng-if","icon").addClass("dx-icon").attr("ng-class","'dx-icon-' + icon"),f=n("<img>").attr("ng-if","iconSrc").addClass("dx-icon").attr("ng-src","{{iconSrc}}");return t.append(r.html()).append(u).append(f).append(i).append(r.primitive())},u.dxMenu=function(){var t=r.container(),i=n("<div>").addClass("dx-menu-item-content"),u=n("<span>").attr("ng-if","text").addClass("dx-menu-item-text").attr("ng-bind","text"),f=n("<span>").attr("ng-if","icon").addClass("dx-icon").attr("ng-class","'dx-icon-' + icon"),e=n("<img>").attr("ng-if","iconSrc").addClass("dx-icon").attr("ng-src","{{iconSrc}}"),o=n("<span>").addClass("dx-menu-item-popout-container").attr("ng-if","items").append(n("<div>").addClass("dx-menu-item-popout"));return i.append(r.html()).append(f).append(e).append(u).append(o).append(r.primitive()).appendTo(t),t},u.dxActionSheet=function(){return n("<div>").attr("dx-button","{ bindingOptions: { text: 'text', clickAction: 'clickAction', type: 'type', disabled: 'disabled' } }")},u.dxNavBar=u.dxTabs,n.extend(f,{Template:e,TemplateProvider:c})}}(jQuery,DevExpress),function(n,t,i){function l(){var i=n("<div><\/div>",u).addClass("dx-theme-marker").appendTo(u.documentElement),t;try{return(t=i.css("font-family"),!t)?null:(t=t.replace(/["']/g,""),t.substr(0,s.length)!==s)?null:t.substr(s.length)}finally{i.remove()}}function b(t,i){function f(){e=null,i()}var r,u;e=t,a()?f():(u=n.now(),r=setInterval(function(){var t=a(),i=!t&&n.now()-u>15e3;(t||i)&&(clearInterval(r),f())},10))}function a(){return!e||l()===e}function k(){var i=n(c,u);i.length&&(f={},o=n(t.utils.createMarkupFromString("<link rel=stylesheet>"),u),i.each(function(){var t=n(this,u),i=t.attr(p),r=t.attr("href"),e=t.attr(w)==="true";f[i]={url:r,isActive:e}}),i.last().after(o),i.remove())}function d(t){var i=t.split("."),r=null;return f&&n.each(f,function(n,t){var u=n.split(".");if(u[0]===i[0])return i[1]&&i[1]!==u[1]?void 0:((!r||t.isActive)&&(r=n),t.isActive?!1:void 0)}),r}function g(n){try{n!==u&&(f=null)}catch(t){f=null}u=n}function v(n){n=n||{},g(n.context||document),k(),r=i,h(n)}function h(n){if(!arguments.length)return r||l();n=n||{},typeof n=="string"&&(n={theme:n});var u=n._autoInit,i=n.loadCallback,s;if(r=n.theme||r,u&&!r&&(r=nt(t.devices.current())),r=d(r),r&&(s=f[r]),s)o.removeAttr("href"),o.attr("href",f[r].url),i?b(r,i):e&&(e=r);else if(u)i&&i();else throw Error("Unknown theme: "+r);}function nt(n){var t=n.platform,i=n.version&&n.version[0];return t==="ios"&&(!i||i>6)&&(t+="7"),t}function y(n){n=n||h();var i=[],t=n&&n.split(".");return t&&(i.push("dx-theme-"+t[0],"dx-theme-"+t[0]+"-typography"),t.length>1&&i.push("dx-color-scheme-"+t[1])),i}function tt(t,i){n(t).addClass(y(i).join(" "))}function it(t,i){n(t).removeClass(y(i).join(" "))}var c="link[rel=dx-theme]",p="data-theme",w="data-active",u,o,f,r,e,s="dx.";n.holdReady(!0),v({_autoInit:!0,loadCallback:function(){n.holdReady(!1)}}),n(function(){if(n(c,u).length)throw Error("LINK[rel=dx-theme] tags must go before DevExpress included scripts");}),t.ui.themes={init:v,current:h,attachCssClasses:tt,detachCssClasses:it}}(jQuery,DevExpress),function(n,t){var l=t.ui,a=n.event,v=a.special,o={mouse:/(mouse|wheel|click)/i,wheel:/wheel/i,touch:/^touch/i,keyboard:/^key/i,pointer:/pointer/i},u=function(t){var i="other";return n.each(o,function(n){if(this.test(t.type))return i=n,!1}),i},f=function(n){return u(n)==="pointer"},e=function(n){return u(n)==="mouse"||f(n)&&n.pointerType==="mouse"},r=function(n){return u(n)==="touch"||f(n)&&n.pointerType==="touch"},s=function(n){return u(n)==="keyboard"},y=function(n){return o.wheel.test(n.type)},h=function(t,i){return typeof t=="string"?h(t.split(/\s+/g),i):(n.each(t,function(n,r){t[n]=r+"."+i}),t.join(" "))},p=function(n){var t;return f(n)&&r(n)?(t=(n.originalEvent.originalEvent||n.originalEvent).changedTouches[0],{x:t.pageX,y:t.pageY,time:n.timeStamp}):e(n)?{x:n.pageX,y:n.pageY,time:n.timeStamp}:r(n)?(t=(n.changedTouches||n.originalEvent.changedTouches)[0],{x:t.pageX,y:t.pageY,time:n.timeStamp}):void 0},w=function(n,t){return{x:t.x-n.x,y:t.y-n.y,time:t.time-n.time||1}},b=function(n){return r(n)?(n.originalEvent.touches||[]).length:0},k=function(t){var u=n(t.target),i=u.is("input, textarea, select");return y(t)&&i?!1:e(t)?i||t.which>1:r(t)?i&&u.is(":focus")||(t.originalEvent.changedTouches||t.originalEvent.originalEvent.changedTouches).length!==1:void 0},c=function(t,i){var u=n.Event(t),o=u.originalEvent,f=n.event.props.slice();return(e(t)||r(t))&&n.merge(f,n.event.mouseHooks.props),s(t)&&n.merge(f,n.event.keyHooks.props),o&&n.each(f,function(){u[this]=o[this]}),i&&n.extend(u,i),u},d=function(t){var i=c(t.originalEvent,t);return n.event.trigger(i,null,t.target||i.target),i},g=function(t,i){var r=n(t.target).data("dxGestureEvent");return!r||r===i?(n(t.target).data("dxGestureEvent",i),!0):!1},nt=function(t,i){var r={};"noBubble"in i&&(r.noBubble=i.noBubble),"bindType"in i&&(r.bindType=i.bindType),"delegateType"in i&&(r.delegateType=i.delegateType),n.each(["setup","teardown","add","remove","trigger","handle","_default","dispose"],function(t,u){i[u]&&(r[u]=function(){var t=n.makeArray(arguments);return t.unshift(this),i[u].apply(i,t)})}),v[t]=r};l.events={eventSource:u,isPointerEvent:f,isMouseEvent:e,isTouchEvent:r,isKeyboardEvent:s,addNamespace:h,hasTouches:b,eventData:p,eventDelta:w,needSkipEvent:k,createEvent:c,fireEvent:d,handleGestureEvent:g,registerEvent:nt}}(jQuery,DevExpress),function(n,t){if(t.support.hasKo){var u=window.ko,r=t.ui.events,f=r.registerEvent,e=function(t,i){f(t,i);var e=r.addNamespace(t,t+"Binding");u.bindingHandlers[t]={update:function(t,i,r,f){var s=n(t),o=u.utils.unwrapObservable(i()),h=o.execute?o.execute:o;s.off(e).on(e,n.isPlainObject(o)?o:{},function(n){h(f,n)})}}};n.extend(r,{registerEvent:e})}}(jQuery,DevExpress),function(n,t){if(t.support.hasNg){var r=t.ui.events,u=r.registerEvent,f=function(i,r){u(i,r);var f=i.slice(0,2)+i.charAt(2).toUpperCase()+i.slice(3);t.ng.module.directive(f,["$parse",function(t){return function(r,u,e){var h=n.trim(e[f]),o,s={};h.charAt(0)==="{"?(s=r.$eval(h),o=t(s.execute)):o=t(e[f]);u.on(i,s,function(n){r.$apply(function(){o(r,{$event:n})})})}}])};n.extend(r,{registerEvent:f})}}(jQuery,DevExpress),function(n,t,i){var r=t.ui,u=r.events;r.HierarchicalKeyDownProcessor=t.Class.inherit({_keydown:u.addNamespace("keydown","HierarchicalKeyDownProcessor"),codes:{"9":"tab","13":"enter","27":"escape","33":"pageUp","34":"pageDown","37":"leftArrow","38":"upArrow","39":"rightArrow","40":"downArrow","32":"space","70":"F","65":"A"},ctor:function(t){var i=this;if(t=t||{},t.element&&(this._element=n(t.element)),this._handler=t.handler,this._context=t.context,this._childProcessors=[],this._element)this._element.on(this._keydown,function(n){i.process(n)})},dispose:function(){this._element&&this._element.off(this._keydown),this._element=i,this._handler=i,this._context=i,this._childProcessors=i},attachChildProcessor:function(){var n=new r.HierarchicalKeyDownProcessor;return this._childProcessors.push(n),n},reinitialize:function(n,t){return this._context=t,this._handler=n,this},process:function(t){var i={key:this.codes[t.which],ctrl:t.ctrlKey,shift:t.shiftKey,originalEvent:t};this.codes[t.which]&&this._handler&&this._handler.call(this._context,i)&&n.each(this._childProcessors,function(n,i){i.process(t)})}})}(jQuery,DevExpress),function(n,t){var u=t.ui,e=t.utils,o={text:"OK",clickAction:function(){return!0}},r="dx-dialog",s=r+"-wrapper",h=r+"-root",c=r+"-content",l=r+"-message",a=r+"-buttons",v=r+"-button",y=t.Component.inherit({NAME:"dxDialog",ctor:function(n,t){this.callBase(t)},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:[{platform:"ios"},{platform:"ios7"}],options:{width:276}},{device:{platform:"android"},options:{lWidth:"60%",pWidth:"80%"}},{device:{platform:"win8",phone:!1},options:{width:function(){return n(window).width()}}},{device:{platform:"win8",phone:!0},options:{position:{my:"top center",at:"top center",of:window,offset:"0 0"}}}])}}),p=function(i){function rt(){return f.show(),e.resetActiveElement(),p.promise()}function d(n){f.hide().done(function(){f._element().remove()}),p.resolve(w||n)}var g=this,w,p,b;if(!u.dxPopup)throw new Error("DevExpress.ui.dxPopup required");p=n.Deferred(),b=(new y).option(),i=n.extend(b,i);var nt=n(t.overlayTargetContainer()),tt=n("<div>").addClass(r).appendTo(nt),it=n("<div>").addClass(l).html(String(i.message)),k=n("<div>").addClass(a),f=tt.dxPopup({title:i.title||g.title,height:"auto",width:function(){var u=n(window).height()>n(window).width(),r=(u?"p":"l")+"Width",t=i.hasOwnProperty(r)?i[r]:i.width;return n.isFunction(t)?t():t},contentReadyAction:function(){f.content().addClass(c).append(it).append(k)},animation:{show:{type:"pop",duration:400},hide:{type:"pop",duration:400,to:{opacity:0,scale:0},from:{opacity:1,scale:1}}},rtlEnabled:t.rtlEnabled}).data("dxPopup");return f._wrapper().addClass(s),i.position&&f.option("position",i.position),n.each(i.buttons||[o],function(){var i=n("<div>").addClass(v).appendTo(k),r=new t.Action(this.clickAction,{context:f});i.dxButton(n.extend(this,{clickAction:function(){w=r.execute(arguments),d()}}))}),f._wrapper().addClass(h),{show:rt,hide:d}},f=function(t,i){var r,f=n.isPlainObject(t)?t:{title:i,message:t};return r=u.dialog.custom(f),r.show()},w=function(t,i){var r,f=n.isPlainObject(t)?t:{title:i,message:t,buttons:[{text:Globalize.localize("Yes"),clickAction:function(){return!0}},{text:Globalize.localize("No"),clickAction:function(){return!1}}]};return r=u.dialog.custom(f),r.show()},b=function(i,r,e){var o=n.isPlainObject(i)?i:{message:i},s;if(!u.dxToast){f(o.message);return}s=o.hiddenAction,n.extend(o,{type:r,displayTime:e,hiddenAction:function(n){n.element.remove(),new t.Action(s,{context:n.model}).execute(arguments)}}),n("<div>").appendTo(t.overlayTargetContainer()).dxToast(o).dxToast("instance").show()};n.extend(u,{notify:b,dialog:{custom:p,alert:f,confirm:w}})}(jQuery,DevExpress),function(n,t){var r=t.data,u="_dataSourceOptions",f="_handleDataSourceChanged",e="_handleDataSourceLoadError",o="_handleDataSourceLoadingChanged";t.ui.DataHelperMixin={ctor:function(){this.disposing.add(function(){this._disposeDataSource()})},_refreshDataSource:function(){this._initDataSource(),this._loadDataSource()},_initDataSource:function(){var t=this.option("dataSource"),i,f;this._disposeDataSource(),t&&(t instanceof r.DataSource?(this._isSharedDataSource=!0,this._dataSource=t):(i=u in this?this[u]():{},f=this._dataSourceType?this._dataSourceType():r.DataSource,this._dataSource=new f(n.extend(!0,{},i,r.utils.normalizeDataSourceOptions(t)))),this._addDataSourceHandlers())},_addDataSourceHandlers:function(){f in this&&this._addDataSourceChangeHandler(),e in this&&this._addDataSourceLoadErrorHandler(),o in this&&this._addDataSourceLoadingChangedHandler()},_addDataSourceChangeHandler:function(){var t=this,n=this._dataSource;this._dataSourceChangedHandler=function(){t[f](n.items())},n.changed.add(this._dataSourceChangedHandler)},_addDataSourceLoadErrorHandler:function(){this._dataSourceLoadErrorHandler=n.proxy(this[e],this),this._dataSource.loadError.add(this._dataSourceLoadErrorHandler)},_addDataSourceLoadingChangedHandler:function(){this._dataSourceLoadingChangedHandler=n.proxy(this[o],this),this._dataSource.loadingChanged.add(this._dataSourceLoadingChangedHandler)},_loadDataSource:function(){if(this._dataSource){var n=this._dataSource;n.isLoaded()?this._dataSourceChangedHandler():n.load()}},_loadSingle:function(n,t){return n=n==="this"?this._dataSource.key()||"this":n,this._dataSource.loadSingle(n,t)},_disposeDataSource:function(){this._dataSource&&(this._isSharedDataSource?(delete this._isSharedDataSource,this._dataSource.changed.remove(this._dataSourceChangedHandler),this._dataSource.loadError.remove(this._dataSourceLoadErrorHandler),this._dataSource.loadingChanged.remove(this._dataSourceLoadingChangedHandler)):this._dataSource.dispose(),delete this._dataSource,delete this._dataSourceChangedHandler,delete this._dataSourceLoadErrorHandler,delete this._dataSourceLoadingChangedHandler)}}}(jQuery,DevExpress),function(n){var r={2:"touch",3:"pen",4:"mouse"},u={filter:function(t,i){var u=i.pointerType;return n.isNumeric(u)&&(t.pointerType=r[u]),t},props:n.event.mouseHooks.props.concat(["pointerId","originalTarget","namespace","width","height","pressure","result","tiltX","charCode","tiltY","detail","isPrimary","prevValue"])};n.each(["MSPointerDown","MSPointerMove","MSPointerUp","MSPointerCancel","MSPointerOver","MSPointerOut","MSPointerEnter","MSPointerLeave","pointerdown","pointermove","pointerup","pointercancel","pointerover","pointerout","pointerenter","pointerleave"],function(){n.event.fixHooks[this]=u})}(jQuery,DevExpress),function(n){var r={filter:function(t,i){return i.changedTouches.length&&n.each(["pageX","pageY","screenX","screenY","clientX","clientY"],function(){t[this]=i.changedTouches[0][this]}),t},props:n.event.mouseHooks.props.concat(["touches","changedTouches","targetTouches","detail","result","namespace","originalTarget","charCode","prevValue"])};n.each(["touchstart","touchmove","touchend","touchcancel"],function(){n.event.fixHooks[this]=r})}(jQuery,DevExpress),function(n,t){var c=t.ui,u=t.support,f=n.proxy(t.devices.real,t.devices),r=c.events,l="dxPointerEvents",e={dxpointerdown:"mousedown",dxpointermove:"mousemove",dxpointerup:"mouseup",dxpointercancel:""},a={dxpointerdown:"touchstart",dxpointermove:"touchmove",dxpointerup:"touchend",dxpointercancel:"touchcancel"},w={dxpointerdown:"pointerdown",dxpointermove:"pointermove",dxpointerup:"pointerup",dxpointercancel:"pointercancel"},o={dxpointerdown:"touchstart mousedown",dxpointermove:"touchmove mousemove",dxpointerup:"touchend mouseup",dxpointercancel:"touchcancel"},s=function(){return u.touch&&!(f().tablet||f().phone)?o:u.pointer?e:u.touch?a:e}(),v=function(n){return f().platform==="ios"&&(n==="dxpointerdown"||n==="dxpointerup")},h=t.Class.inherit({ctor:function(n,t){this._eventName=n,this._eventNamespace=[l,".",this._eventName].join(""),this._originalEvents=t,this._pointerId=0,this._handlerCount=0},_handler:function(t){if(this._eventName==="dxpointerdown"&&n(t.target).data("dxGestureEvent",null),r.isTouchEvent(t)&&v(this._eventName)){var i=t.changedTouches[0];if(this._pointerId===i.identifier&&this._pointerId!==0)return;this._pointerId=i.identifier}return r.fireEvent({type:this._eventName,pointerType:r.eventSource(t),originalEvent:t})},setup:function(){if(!(this._handlerCount>0))n(document).on(r.addNamespace(this._originalEvents,this._eventNamespace),n.proxy(this._handler,this))},add:function(){this._handlerCount++},remove:function(){this._handlerCount--},teardown:function(){this._handlerCount||n(document).off("."+this._eventNamespace)},dispose:function(){n(document).off("."+this._eventNamespace)}}),y=h.inherit({EVENT_LOCK_TIMEOUT:100,_handler:function(t){if(r.isTouchEvent(t)&&(this._skipNextEvents=!0),!r.isMouseEvent(t)||!this._mouseLocked){if(r.isMouseEvent(t)&&this._skipNextEvents){this._skipNextEvents=!1,this._mouseLocked=!0,clearTimeout(this._unlockMouseTimer),this._unlockMouseTimer=setTimeout(n.proxy(function(){this._mouseLocked=!1},this),this.EVENT_LOCK_TIMEOUT);return}return this.callBase(t)}},dispose:function(){this.callBase(),this._skipNextEvents=!1,this._mouseLocked=!1,clearTimeout(this._unlockMouseTimer)}}),p=function(){return s===o?y:h};n.each(s,function(n,t){var i=p();r.registerEvent(n,new i(n,t))})}(jQuery,DevExpress),function(n,t,i){var a=navigator.userAgent,h=i.screen,v=t.ui,c=t.utils,u=v.events,y=t.support,e=n.proxy(t.devices.real,t.devices),p="dxSpecialEvents",f="dxClick"+p,o="dxclick",s="dxClickScrollableParent",l="dxClickScrollableParentOffset",w=function(){var n=e().deviceType==="phone"&&h.height<=480,t=e().deviceType==="tablet"&&i.devicePixelRatio<2,r=e().platform==="ios"&&e().version[0]>6;return r&&(n||t)}(),b=function(){if(!y.touch)return!0;var t=a.match(/Chrome\/([0-9]+)/)||[],r=!!t[0],u=~~t[1],f=e().platform==="android";if(r)if(f){if(n("meta[name=viewport][content*='width=device-width']").length)return!1;if(u>31&&i.innerWidth<=h.width||n("meta[name=viewport][content*='user-scalable=no']").length)return!0}else return!0;return!1}(),k=t.Class.inherit({TOUCH_BOUNDARY:10,ctor:function(){this._startX=0,this._startY=0,this._handlerCount=0,this._target=null},_touchWasMoved:function(n){var t=this.TOUCH_BOUNDARY;return Math.abs(n.pageX-this._startX)>t||Math.abs(n.pageY-this._startY)>t},_getClosestScrollable:function(t){var r=n(),i;if(t.data(s))r=t.data(s);else for(i=t;i.length;){if(i[0].scrollHeight-i[0].offsetHeight>1){r=i,t.data(s,r);break}i=i.parent()}return r},_saveClosestScrollableOffset:function(n){var t=this._getClosestScrollable(n);t.length&&n.data(l,t.scrollTop())},_closestScrollableWasMoved:function(n){var t=n.data(s);return t&&t.scrollTop()!==n.data(l)},_hasClosestScrollable:function(n){var t=this._getClosestScrollable(n);return t.length?t.is("body")?!1:t===window?!1:t.css("overflow")==="hidden"?!1:!0:!1},_handleStart:function(t){(this._reset(),u.isMouseEvent(t)&&t.which!==1)||(this._saveClosestScrollableOffset(n(t.target)),this._target=t.target,this._startX=t.pageX,this._startY=t.pageY)},_handleEnd:function(t){var i=n(t.target),r;i.is(this._target)&&!this._touchWasMoved(t)&&(this._nativeClickShouldBeUsed(i)||this._closestScrollableWasMoved(i)||(r=i.is("input, textarea"),r||t.dxPreventBlur||c.resetActiveElement(),this._fireClickEvent(t)))},_handleCancel:function(){this._reset()},_reset:function(){this._target=null},_handleClick:function(t){var i=n(t.target);i.is(this._target)?this._nativeClickShouldBeUsed(i)&&this._fireClickEvent(t):i.is("input, textarea")&&c.resetActiveElement()},_nativeClickShouldBeUsed:function(n){return w&&this._hasClosestScrollable(n)},_fireClickEvent:function(n){u.handleGestureEvent(n,o)&&u.fireEvent({type:o,originalEvent:n})},_makeElementClickable:function(n){n.attr("onclick")||n.attr("onclick","void(0)")},setup:function(t){var i=n(t),r;(this._makeElementClickable(i),this._handlerCount>0)||(r=n(document).on(u.addNamespace("dxpointerdown",f),n.proxy(this._handleStart,this)).on(u.addNamespace("dxpointerup",f),n.proxy(this._handleEnd,this)).on(u.addNamespace("dxpointercancel",f),n.proxy(this._handleCancel,this)).on(u.addNamespace("click",f),n.proxy(this._handleClick,this)))},add:function(){this._handlerCount++},remove:function(){this._handlerCount--},teardown:function(t){this._handlerCount||(n(t).off("."+f),this.dispose())},dispose:function(){n(document).off("."+f)}}),d=t.Class.inherit({bindType:"click",delegateType:"click",handle:function(n,t){return t.type="dxclick",u.handleGestureEvent(t,o)?t.handleObj.handler.call(n,t):void 0}});u.registerEvent(o,new(b?d:k))}(jQuery,DevExpress,window),function(n,t){var o=t.ui,u=o.events,c=n.event.special,s="dxSpecialEvents",f="dxHold",e="dxhold",r=s+"HoldTimer",h=t.Class.inherit({HOLD_TIMEOUT:750,TOUCH_BOUNDARY:5,_startX:0,_startY:0,_touchWasMoved:function(n){var t=this.TOUCH_BOUNDARY;return Math.abs(n.pageX-this._startX)>t||Math.abs(n.pageY-this._startY)>t},setup:function(t,i){var o,s=!1,c=function(t){if(!s&&(o=n(t.target),s=!0,!o.data(r))){this._startX=t.pageX,this._startY=t.pageY;var f=i&&"timeout"in i?i.timeout:this.HOLD_TIMEOUT,h=setTimeout(function(){o.removeData(r),u.handleGestureEvent(t,e)&&u.fireEvent({type:e,originalEvent:t})},f);o.data(r,h)}},l=function(n){this._touchWasMoved(n)&&h()},h=function(){o&&(clearTimeout(o.data(r)),o.removeData(r),o=null,s=!1)};n(t).on(u.addNamespace("dxpointerdown",f),n.proxy(c,this)).on(u.addNamespace("dxpointermove",f),n.proxy(l,this)).on(u.addNamespace("dxpointerup",f),n.proxy(h,this))},teardown:function(t){t=n(t),clearTimeout(t.data(r)),t.removeData(r).off("."+f)}});u.registerEvent(e,new h)}(jQuery,DevExpress),function(n,t,i){var c=t.ui,r=c.events,u="dxSpecialEvents",e="dxhoverstart",o="dxhoverend",s="mouseenter",h="mouseleave",f="dxpointerdown",l=t.Class.inherit({ctor:function(){this._wasTouch=!1,this._selector=i},setup:function(t,e){var o=n(t);if(this._selector=e?e.selector:i,!o.data("dxHoverStart"))o.data("dxHoverStart",!0).on(r.addNamespace(s,u),this._selector,n.proxy(this._handleEnter,this)).on(r.addNamespace(f,u),n.proxy(this._handleTouchStart,this))},_handleEnter:function(n){this._wasTouch||r.fireEvent({type:e,originalEvent:n})},_handleTouchStart:function(n){this._wasTouch=r.isTouchEvent(n)},teardown:function(t){n(t).data("dxHoverStart",!1).off(r.addNamespace(s,u),this._selector).off(r.addNamespace(f,u))}}),a=t.Class.inherit({ctor:function(){this._wasTouch=!1,this._selector=i},setup:function(t,e){var o=n(t);if(this._selector=e?e.selector:i,!o.data("dxHoverEnd"))o.data("dxHoverEnd",!0).on(r.addNamespace(h,u),this._selector,n.proxy(this._handleLeave,this)).on(r.addNamespace(f,u),n.proxy(this._handleTouchStart,this))},_handleLeave:function(n){this._wasTouch||r.fireEvent({type:o,originalEvent:n})},_handleTouchStart:function(n){this._wasTouch=r.isTouchEvent(n)},teardown:function(t){n(t).data("dxHoverEnd",!1).off(r.addNamespace(h,u),this._selector).off(r.addNamespace(f,u))}});r.registerEvent(e,new l),r.registerEvent(o,new a)}(jQuery,DevExpress),function(n,t,i){var s=t.ui,u=s.events,f="dxmousewheel",e="dxWheel",h=10,o,r;n.event.fixHooks.wheel=n.event.mouseHooks,o=document.onmousewheel!==i?"mousewheel":"wheel",r={setup:function(t){var f=n(t);f.on(u.addNamespace(o,e),n.proxy(r._handleWheel,r))},teardown:function(t){var i=n(t);i.off("."+e)},_handleWheel:function(t){n(t.target).data("dxGestureEvent",null);var i=this._getWheelDelta(t.originalEvent);u.fireEvent({type:f,originalEvent:t,delta:i}),t.stopPropagation()},_getWheelDelta:function(n){return n.wheelDelta/60||-n.deltaY}},u.registerEvent(f,r)}(jQuery,DevExpress),function(n,t){var r=t.ui,u=r.events,f=t.Class.inherit({ctor:function(t){this._$element=n(t),this._cancelCallback=n.Callbacks()},getElement:function(){return this._$element},getDirection:function(){return this.direction},validate:function(n){return n.type!=="dxmousewheel"},configurate:function(t){n.extend(this,t)},addCancelCallback:function(n){this._cancelCallback.add(n)},removeCancelCallback:function(){this._cancelCallback.empty()},init:n.noop,start:n.noop,move:n.noop,end:n.noop,cancel:n.noop,wheel:n.noop,_fireEvent:function(t,i,r){var f={type:t,originalEvent:i,target:this.getElement().get(0)};return i=u.fireEvent(n.extend(f,r)),i.cancel&&this._cancel(i),i},_cancel:function(){this._cancelCallback.fire()}}),e=[];n.extend(r,{GestureEmitter:f,gestureEmitters:e})}(jQuery,DevExpress),function(n,t){var u=t.ui,r=u.events,f="dxscrollinit",e="dxscrollstart",o="dxscroll",s="dxscrollend",h="dxscrollstop",c="dxscrollcancel",l="dxscrollwheel",v=100,y=200,a=Math.round(1e3/60),p=u.GestureEmitter.inherit({ctor:function(n){this.callBase(n),this.direction="vertical"},init:function(n){this._savedEventData=this._prevEventData=r.eventData(n),this._fireEvent(f,n)},start:function(n){this._fireEvent(e,n,{delta:r.eventDelta(this._prevEventData,r.eventData(n))})},move:function(n){var t=r.eventData(n),i;this._fireEvent(o,n,{delta:r.eventDelta(this._prevEventData,t)}),i=r.eventDelta(this._savedEventData,t),i.time>y&&(this._savedEventData=this._prevEventData),this._prevEventData=t},end:function(n){var u=r.eventDelta(this._prevEventData,r.eventData(n)),i={x:0,y:0},t;u.time<v&&(t=r.eventDelta(this._savedEventData,this._prevEventData),i={x:t.x*a/t.time,y:t.y*a/t.time}),this._fireEvent(s,n,{velocity:i})},stop:function(n){this._fireEvent(h,n)},cancel:function(n){this._fireEvent(c,n)},wheel:function(n){this._fireEvent(l,n,{delta:n.delta})}});u.gestureEmitters.push({emitter:p,events:[f,e,o,s,h,c,l]})}(jQuery,DevExpress),function(n,t){var u=t.ui,a=t.utils,r=u.events,f="dxswipestart",e="dxswipe",o="dxswipeend",s={defaultItemSizeFunc:function(){return this.getElement().width()},getBounds:function(){return[this._maxLeftOffset,this._maxRightOffset]},calcOffsetRatio:function(n){var t=r.eventData(n);return(t.x-(this._startEventData&&this._startEventData.x||0))/this._itemSizeFunc().call(this,n)},isFastSwipe:function(n){var t=r.eventData(n);return this.FAST_SWIPE_SPEED_LIMIT*Math.abs(t.x-this._tickData.x)>=t.time-this._tickData.time}},h={defaultItemSizeFunc:function(){return this.getElement().height()},getBounds:function(){return[this._maxTopOffset,this._maxBottomOffset]},calcOffsetRatio:function(n){var t=r.eventData(n);return(t.y-(this._startEventData&&this._startEventData.y||0))/this._itemSizeFunc().call(this,n)},isFastSwipe:function(n){var t=r.eventData(n);return this.FAST_SWIPE_SPEED_LIMIT*Math.abs(t.y-this._tickData.y)>=t.time-this._tickData.time}},c={horizontal:s,vertical:h},l=u.GestureEmitter.inherit({TICK_INTERVAL:300,FAST_SWIPE_SPEED_LIMIT:5,ctor:function(n){this.callBase(n),this.direction="horizontal",this.elastic=!0},_getStrategy:function(){return c[this.direction]},_defaultItemSizeFunc:function(){return this._getStrategy().defaultItemSizeFunc.call(this)},_itemSizeFunc:function(){return this.itemSizeFunc||this._defaultItemSizeFunc},init:function(n){this._startEventData=r.eventData(n),this._tickData={time:0}},start:function(n){n=this._fireEvent(f,n),n.cancel||(this._maxLeftOffset=n.maxLeftOffset,this._maxRightOffset=n.maxRightOffset,this._maxTopOffset=n.maxTopOffset,this._maxBottomOffset=n.maxBottomOffset)},move:function(n){var u=this._getStrategy(),i=r.eventData(n),t=u.calcOffsetRatio.call(this,n);t=this._fitOffset(t,this.elastic),i.time-this._tickData.time>this.TICK_INTERVAL&&(this._tickData=i),this._fireEvent(e,n,{offset:t}),n.preventDefault()},end:function(n){var r=this._getStrategy(),u=r.calcOffsetRatio.call(this,n),f=r.isFastSwipe.call(this,n),t=u,i=this._calcTargetOffset(u,f);t=this._fitOffset(t,this.elastic),i=this._fitOffset(i,!1),this._fireEvent(o,n,{offset:t,targetOffset:i})},_fitOffset:function(n,t){var r=this._getStrategy(),i=r.getBounds.call(this);return n<-i[0]?t?(-2*i[0]+n)/3:-i[0]:n>i[1]?t?(2*i[1]+n)/3:i[1]:n},_calcTargetOffset:function(n,t){var i;return t?(i=Math.ceil(Math.abs(n)),n<0&&(i=-i)):i=Math.round(n),i}});u.gestureEmitters.push({emitter:l,events:[f,e,o]})}(jQuery,DevExpress),function(n,t){var f=t.ui,p=t.utils,r=f.events,w=p.wrapToArray,l="dxdragstart",a="dxdrag",v="dxdragend",e="dxdragenter",o="dxdragleave",s="dxdrop",u=[],h=[],c={setup:function(t,i){var r=n.inArray(t,u)!==-1;r||(u.push(t),h.push(i||{}))},teardown:function(t){var c=n._data(t,"events"),f=0,r;n.each([e,o,s],function(n,t){var i=c[t];i&&(f+=i.length)}),f||(r=n.inArray(t,u),u.splice(r,1),h.splice(r,1))}};r.registerEvent(e,c),r.registerEvent(o,c),r.registerEvent(s,c);var y=function(t){var i=n.inArray(t.get(0),u);return h[i]},b=function(n){var t=y(n);return t.itemPositionFunc?t.itemPositionFunc():n.offset()},k=function(n){var t=y(n);return t.itemSizeFunc?t.itemSizeFunc():{width:n.width(),height:n.height()}},d=f.GestureEmitter.inherit({ctor:function(n){this.callBase(n),this.direction="both"},init:function(n){var t=r.eventData(n);this._startEventData=t},start:function(t){t=this._fireEvent(l,t),this._maxLeftOffset=t.maxLeftOffset,this._maxRightOffset=t.maxRightOffset,this._maxTopOffset=t.maxTopOffset,this._maxBottomOffset=t.maxBottomOffset;var i=w(t.targetElements||u);this._$dropTargetElements=n.map(i,function(t){return n(t)})},move:function(n){var i=r.eventData(n),t=this._calculateOffset(i);this._fireEvent(a,n,{offset:t}),this._processDropTargets(n,t),n.preventDefault()},_calculateOffset:function(n){return{x:this._calculateXOffset(n),y:this._calculateYOffset(n)}},_calculateXOffset:function(n){if(this.direction!=="vertical"){var t=n.x-this._startEventData.x;return this._fitOffset(t,this._maxLeftOffset,this._maxRightOffset)}return 0},_calculateYOffset:function(n){if(this.direction!=="horizontal"){var t=n.y-this._startEventData.y;return this._fitOffset(t,this._maxTopOffset,this._maxBottomOffset)}return 0},_fitOffset:function(n,t,i){return t!=null&&(n=Math.max(n,-t)),i!=null&&(n=Math.min(n,i)),n},_processDropTargets:function(n){var i=this._findDropTarget(n),r=i===this._$currentDropTarget;r||(this._fireDropTargetEvent(n,o),this._$currentDropTarget=i,this._fireDropTargetEvent(n,e))},_fireDropTargetEvent:function(n,t){if(this._$currentDropTarget){var i={type:t,originalEvent:n,draggingElement:this._$element.get(0),target:this._$currentDropTarget.get(0)};r.fireEvent(i)}},_findDropTarget:function(t){var r=this,i;return n.each(this._$dropTargetElements,function(n,u){if(r._checkDropTarget(u,t))return i=u,!1}),i},_checkDropTarget:function(n,t){var u=n.get(0)===this._$element.get(0),i,r;return u?!1:(i=b(n),t.pageX<i.left)?!1:t.pageY<i.top?!1:(r=k(n),t.pageX>i.left+r.width)?!1:t.pageY>i.top+r.height?!1:n},end:function(n){var t=r.eventData(n);this._fireEvent(v,n,{offset:this._calculateOffset(t)}),this._fireDropTargetEvent(n,s),delete this._$currentDropTarget}});f.gestureEmitters.push({emitter:d,events:[l,a,v]})}(jQuery,DevExpress),function(n,t){var o=t.ui,r=o.events,y=t.utils,u=Math.abs,f="dxGesture",e="dxGestureEmitter",s="dxGestureLock",p=400,h=10,c="horizontal",l="vertical",a="both",w=t.Class.inherit({SLEEP:0,INITED:1,STARTED:2,ctor:function(){this._attachHandlers(),this.reset()},_attachHandlers:function(){n(document).on(r.addNamespace("dxpointerdown",f),n.proxy(this._handlePointerDown,this)).on(r.addNamespace("dxpointermove",f),n.proxy(this._handlePointerMove,this)).on(r.addNamespace("dxpointerup dxpointercancel",f),n.proxy(this._handlePointerUp,this)).on(r.addNamespace("dxmousewheel",f),n.proxy(this._handleMouseWheel,this))},_eachEmitter:function(t){n.each(this._activeEmitters||{},function(n,i){return t(i,n)})},_noEmitters:function(){return n.isEmptyObject(this._activeEmitters)},reset:function(){this._eachEmitter(function(n){n.removeCancelCallback()}),this._forgetGesture(),this._stage=this.SLEEP,this._activeEmitters={}},_handlePointerDown:function(n){r.needSkipEvent(n)||r.hasTouches(n)>1||(this.reset(),this._activeEmitters=this._closestEmitter(n),this._noEmitters())||(this._startEvent=n,this._startEventData=r.eventData(n),this._stage=this.INITED,this._applyToActive("init",n))},_applyToActive:function(t){var i=n.makeArray(arguments).slice(1);this._eachEmitter(function(n){t in n&&n[t].apply(n,i)})},_closestEmitter:function(t){for(var r={},o=!1,u=n(t.target),i,f;u.length&&!o;)i=u.data(e),i&&i.validate(t)&&(f=i.getDirection(t),f&&(i.addCancelCallback(n.proxy(this._handleCancel,this,i,t)),r[f]=r[f]||i)),o=r[c]&&r[l]||r[a],u=u.parent();return r},_handleCancel:function(n,t){var i;this._eachEmitter(function(t,r){t===n&&(i=r,t.removeCancelCallback())}),this._forgetGesture([n]),this._cancelEmitter(n,t),this._noEmitters()&&this.reset()},_handlePointerMove:function(n){this._stage===this.INITED&&this._directionDetected(n)&&this._handleStart(n),this._stage===this.STARTED&&this._handleMove(n)},_directionDetected:function(n){var t=r.eventDelta(this._startEventData,r.eventData(n));return t.x||t.y},_handleStart:function(n){(this._filterEmitters(n),this._noEmitters())||(this._resetActiveElement(),this._applyToActive("start",this._startEvent),this._stage=this.STARTED)},_resetActiveElement:function(){t.devices.real().platform==="ios"&&this._eachEmitter(function(t){n(":focus",t.getElement()).length&&y.resetActiveElement()})},_filterEmitters:function(n){this._filterByDirection(n),this._emitersAmount()>1&&this._takeFirstEmitter()},_emitersAmount:function(){var n=0;return this._eachEmitter(function(){n++}),n},_filterByDirection:function(n){var t=r.eventDelta(this._startEventData,r.eventData(n)),o=u(t.y)<u(t.x),s=u(t.y)>u(t.x),i=this._activeEmitters[c],f=this._activeEmitters[l],e=this._activeEmitters[a],h=i||e,v=f||e;o&&h?this._cancelEmitter(f,n):s&&v&&this._cancelEmitter(i,n)},_cancelEmitter:function(n,t){n&&(n.cancel(t),delete this._activeEmitters[n.getDirection(t)])},_takeFirstEmitter:function(){var n={};this._eachEmitter(function(t,i){return n[i]=t,!1}),this._activeEmitters=n},_prepareGesture:function(){this._gestureLocked=!0,clearTimeout(this._gestureEndTimer),this._eachEmitter(function(n){n.getElement().data(s,!0)}),o.feedback.reset()},_handleMove:function(n){if(!this._gestureLocked){var t=r.eventDelta(this._startEventData,r.eventData(n));(u(t.x)>h||u(t.y)>h)&&(r.handleGestureEvent(n,f),this._prepareGesture())}this._applyToActive("move",n)},_forgetGesture:function(t){(t=t||this._activeEmitters,this._noEmitters())||(this._gestureLocked=!1,this._gestureEndTimer=setTimeout(function(){n.each(t,function(n,t){t.getElement().data(s,!1)})},p))},_handlePointerUp:function(n){(t.devices.isRippleEmulator()||!r.hasTouches(n))&&(this._stage===this.STARTED?this._applyToActive("end",n):this._stage===this.INITED&&this._applyToActive("stop",n),this.reset())},_handleMouseWheel:function(n){(this._handlePointerDown(n),this._stage===this.INITED)&&(this._takeFirstEmitter(),this._eachEmitter(function(t,i){var r=i!=="horizontal"?"pageY":"pageX";n[r]+=n.delta}),this._handlePointerMove(n),this._handlePointerUp(n))},isActive:function(n){var t=!1;return this._eachEmitter(function(i){t=t||i.getElement().is(n)}),t}}),v=new w,b=function(t){var i=t.emitter;n.each(t.events,function(t,u){r.registerEvent(u,{noBubble:!0,setup:function(t,r){var u=n(t).data(e)||new i(t);u.configurate(r),n(t).data(e,u)},teardown:function(t){v.isActive(t)&&v.reset(),n(t).removeData(e)}})})};n.each(o.gestureEmitters,function(n,t){b(t)})}(jQuery,DevExpress),function(n,t,i){var u=t.ui,e="UIFeedback",o="dx-feedback",h="dx-state-active",c="dx-state-disabled",v="dx-state-invisible",y="dx-state-hover",p=30,w=400,b="dxhoverstart",k="dxhoverend",d="template",g="[data-options*='dxTemplate']",nt="dxTemplates",l=function(t){var i=n(t).data("options");return n.trim(i).charAt(0)!=="{"&&(i="{"+i+"}"),new Function("return "+i)().dxTemplate},r,f=u.events;u.feedback={reset:function(){a(!0)}},u.Widget=t.DOMComponent.inherit({NAME:"Widget",NAMESPACE:u,_setDefaultOptions:function(){this.callBase(),this.option({disabled:!1,visible:!0,activeStateEnabled:!0,width:i,height:i,contentReadyAction:null,hoverStateEnabled:!1})},_init:function(){this.callBase(),this._feedbackShowTimeout=p,this._feedbackHideTimeout=w,this._templatesSupported()&&(this._initTemplates(),this._initContentReadyAction())},_templatesSupported:function(){return this._renderContentImpl!==t.abstract},_initTemplates:function(){var i=this,r={},f=this._element().data(nt),e=f?f:this._element().contents().filter(g),t;this._templateProvider=new u.TemplateProvider,this._templateClass=this._templateProvider.getTemplateClass(this),e.length?(t={},e.each(function(){var n=l(this);if(n){if(!n.name)throw Error("Template name was not specified");t[n.name]=t[n.name]||[],t[n.name].push(this)}}),n.each(t,function(n,t){var u=i._findTemplateByDevice(t);u&&(r[n]=i._createTemplate(u))})):r[d]=i._createTemplate(i._element().contents()),this.option("_templates",r)},_getTemplateByOption:function(n){return this._getTemplate(this.option(n))},_getTemplate:function(n){var i=this._acquireTemplate.apply(this,arguments);if(!i&&this._templateProvider.supportDefaultTemplate(this)&&(i=this._templateProvider.getDefaultTemplate(this),!i))throw Error(t.utils.stringFormat('Template "{0}" was not found and no default template specified!',n));return i},_acquireTemplate:function(t){if(t==null||t instanceof this._templateClass)return t;if(t.nodeType||t.jquery)return t=n(t),t.is("script")&&(t=t.html()),this._createTemplate(t);if(typeof t=="string")return this.option("_templates")[t];if(n.isFunction(t)){var i=n.makeArray(arguments).slice(1);return this._acquireTemplate(t.apply(this,i))}return this._acquireTemplate(t.toString())},_createTemplate:function(n){return new this._templateClass(n,this)},_findTemplateByDevice:function(i){var r=t.utils.findBestMatches(t.devices.current(),i,function(n){return l(n)})[0];return n.each(i,function(t,i){i!==r&&n(i).remove()}),r},_cleanTemplates:function(){var t=this;n.each(this.option("_templates"),function(n,i){t===i.owner()&&i.dispose()})},_initContentReadyAction:function(){this._contentReadyAction=this._createActionByOption("contentReadyAction",{excludeValidators:["gesture","designMode","disabled"]})},_render:function(){this.callBase(),this._element().addClass("dx-widget"),this._toggleDisabledState(this.option("disabled")),this._toggleVisibility(this.option("visible")),this._refreshFeedback(),this._renderDimensions(),this._templatesSupported()&&this._renderContent(),this._attachHoverEvents()},_renderContent:function(){this._renderContentImpl(),this._fireContentReadyAction()},_renderContentImpl:t.abstract,_fireContentReadyAction:function(){this._contentReadyAction({excludeValidators:["disabled","gesture"]})},_dispose:function(){this._templatesSupported()&&this._cleanTemplates(),this._contentReadyAction=null,this._clearTimers(),r&&r.closest(this._element()).length&&(r=null),this.callBase()},_clean:function(){this.callBase(),this._element().empty()},_clearTimers:function(){clearTimeout(this._feedbackHideTimer),clearTimeout(this._feedbackShowTimer)},_toggleVisibility:function(n){this._element().toggleClass(v,!n)},_attachHoverEvents:function(){var r=this,i=r._activeStateUnit,u=f.addNamespace(b,e),o=f.addNamespace(k,e),s;if(r._element().off(u,i).off(o,i),this.option("hoverStateEnabled")){s=new t.Action(function(n){var t=n.element;r._refreshHoveredElement(t)});r._element().on(u,i,{selector:i},function(t){s.execute({element:n(t.target)})}).on(o,i,{selector:i},function(n){n.stopImmediatePropagation(),r._forgetHoveredElement()})}else this._toggleHoverClass(!1)},_refreshHoveredElement:function(n){var t=this._activeStateUnit||this._element();this._forgetHoveredElement(),this._hoveredElement=n.closest(t),this._toggleHoverClass(!0)},_forgetHoveredElement:function(){this._toggleHoverClass(!1),delete this._hoveredElement},_toggleHoverClass:function(n){this._hoveredElement&&this._hoveredElement.toggleClass(y,n&&this.option("hoverStateEnabled"))},_renderDimensions:function(){var n=this.option("width"),t=this.option("height");this._setDimension(n,"width"),this._setDimension(t,"height")},_setDimension:function(t,i){var r=this._element();t=n.isFunction(t)?t():t,n.isNumeric(t)&&(t=t+"px"),t||i!=="width"||(t=this._calculateWidth()),r.css(i,t)},_calculateWidth:function(){var t=this._element(),n=t[0].style.width,i;if(n[n.length-1]!=="%"||this.option("width"))i=n&&n!=="auto"&&n!=="inherit"?t.outerWidth():this.option("width");else return n;return i},_refreshFeedback:function(){this._feedbackDisabled()?(this._feedbackOff(!0),this._element().removeClass(o)):this._element().addClass(o)},_feedbackDisabled:function(){return!this.option("activeStateEnabled")||this.option("disabled")},_feedbackOn:function(t,i){this._feedbackDisabled()||(this._clearTimers(),i?this._feedbackShow(t):this._feedbackShowTimer=window.setTimeout(n.proxy(this._feedbackShow,this,t),this._feedbackShowTimeout),this._saveActiveElement())},_feedbackShow:function(t){var i=this._element();this._activeStateUnit&&(i=n(t).closest(this._activeStateUnit)),i.hasClass(c)||(i.addClass(h),this._toggleHoverClass(!1))},_saveActiveElement:function(){r=this._element()},_feedbackOff:function(t){this._clearTimers(),t?this._feedbackHide():this._feedbackHideTimer=window.setTimeout(n.proxy(this._feedbackHide,this),this._feedbackHideTimeout)},_feedbackHide:function(){var n=this._element();this._activeStateUnit&&(n=n.find(this._activeStateUnit)),n.removeClass(h),this._toggleHoverClass(!this.option("disabled")),this._clearActiveElement()},_clearActiveElement:function(){var i=this._element().get(0),t=r&&r.get(0);t&&(t===i||n.contains(i,t))&&(r=null)},_toggleDisabledState:function(n){this._element().toggleClass(c,Boolean(n)),this._toggleHoverClass(!n)},_optionChanged:function(n,t){switch(n){case"disabled":this._toggleDisabledState(t),this._refreshFeedback();break;case"activeStateEnabled":this._refreshFeedback();break;case"hoverStateEnabled":this._attachHoverEvents();break;case"visible":this._toggleVisibility(t);break;case"width":case"height":this._renderDimensions();break;case"contentReadyAction":this._initContentReadyAction();break;case"_templates":this._refresh();break;default:this.callBase.apply(this,arguments)}},repaint:function(){this._refresh()}});var tt=function(n,t){var h=n.jQueryEvent,e=n.element,i,u;if(!f.needSkipEvent(h)&&(r&&(i=s(r),i&&i._feedbackOff(!0)),u=e.closest("."+o),u.length)){if(i=s(u),!i)return;i._feedbackOn(e,t),t&&i._feedbackOff()}},a=function(n){if(r){var t=s(r);t&&t._feedbackOff(n)}},s=function(t){var i;return n.each(t.data("dxComponents")||[],function(n,r){if(u[r]&&u[r].subclassOf(u.Widget))return i=t.data(r),!1}),i};n(function(){var i=new t.Action(tt);n(document).on(f.addNamespace("dxpointerdown",e),function(t){i.execute({jQueryEvent:t,element:n(t.target)})}).on(f.addNamespace("dxpointerup dxpointercancel",e),function(t){var u=r&&n(t.target).closest("."+o).get(0)===r.get(0);u&&i.execute({jQueryEvent:t,element:n(t.target)},!0),a()})})}(jQuery,DevExpress),function(n,t,i){var r=t.ui;t.registerComponent("dxEditor",r.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({value:i,valueChangeAction:i})},_recreateValueChangeAction:function(){this._valueChangeAction=this._createActionByOption("valueChangeAction")},_suppressValueChangeAction:function(){this._valueChangeActionSuppressed=!0},_resumeValueChangeAction:function(){this._valueChangeActionSuppressed=!1},_render:function(){this._recreateValueChangeAction(),this.callBase()},_raiseValueChangeAction:function(t,i,r){var u={value:t,previousValue:i,jQueryEvent:this._valueChangeEventInstance};r&&(u=n.extend(u,r)),this._valueChangeAction(u)},_optionChanged:function(n,t,r){switch(n){case"valueChangeAction":this._recreateValueChangeAction();break;case"value":this._valueChangeActionSuppressed||this._raiseValueChangeAction(t,r),this._valueChangeEventInstance=i;break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var o=t.utils.isString,r,f=[],h=DevExpress.Class.inherit({_compile:function(n,t){return t},_render:function(n){return n},ctor:function(t){this._element=n(t),this._element.length===1&&(this._element[0].nodeName.toLowerCase()!=="script"&&(this._element=n("<div />").append(this._element)),this._template=this._compile(this._element.html()||"",this._element))},render:function(t,i){var r;if(this._template)return r=this._render(this._template,i),o(r)&&(r=n.parseHTML(r)),r=n(r),t&&t.append(r),r},owner:n.noop,dispose:n.noop}),s=function(n){if(n&&n.compile&&n.render)return h.inherit({allowRenderToDetachedContainer:n.allowRenderToDetachedContainer!==!1,_compile:n.compile,_render:n.render});throw Error("Template Engine must contains compile and render methods");},e,u;window.ko&&(e=function(){},e.prototype=ko.utils.extend(new ko.templateEngine,{renderTemplateSource:function(n,t){var u=n.data("precompiledTemplate");return u||(u=new r(n.domElement),n.data("precompiledTemplate",u)),u.render(null,t.$data)},allowTemplateRewriting:!1})),DevExpress.ui.setTemplateEngine=function(n){if(o(n)){if(r=f&&f[n],!r&&n!=="default")throw Error(t.utils.stringFormat('Template Engine "{0}" is not supported',n));}else r=s(n)||r;window.ko&&ko.setTemplateEngine(r?new e:new ko.nativeTemplateEngine)},DevExpress.ui.TemplateProvider=DevExpress.ui.TemplateProvider.inherit({getTemplateClass:function(){return r?r:this.callBase.apply(this,arguments)}}),u=function(n,t){f[n]=s(t)},u("jquery-tmpl",{compile:function(n,t){return t},render:function(n,t){return n.tmpl(t)}}),u("jsrender",{compile:function(t){return n.templates(t)},render:function(n,t){return n.render(t)}}),u("mustache",{compile:function(n){return Mustache.compile(n)},render:function(n,t){return n(t)}}),u("hogan",{compile:function(n){return Hogan.compile(n)},render:function(n,t){return n.render(t)}}),u("underscore",{compile:function(n){return _.template(n)},render:function(n,t){return n(t)}}),u("handlebars",{compile:function(n){return Handlebars.compile(n)},render:function(n,t){return n(t)}}),u("doT",{compile:function(n){return doT.template(n)},render:function(n,t){return n(t)}})}(jQuery,DevExpress),function(n,t,i){var r=t.ui,u=r.events,f=r.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({items:[],itemTemplate:"item",itemRender:null,itemRenderedAction:null,itemClickAction:null,itemHoldAction:null,itemHoldTimeout:750,noDataText:Globalize.localize("dxCollectionContainerWidget-noDataText"),dataSource:null,selectedIndex:-1,itemSelectAction:null,itemTemplateProperty:"template"})},_init:function(){this.callBase(),this._cleanRenderedItems(),this._refreshDataSource()},_dataSourceOptions:function(){var t={paginate:!1,_preferSync:!1};return n.isArray(this.option("dataSource"))&&(t._preferSync=!0),t},_cleanRenderedItems:function(){this._renderedItemsCount=0},_fireSelectItemEvent:function(n,t){this._selectionEnabled()&&(this._updateSelectedIndex(n,t),this._handleItemEvent(this._selectedItemElement(n),"itemSelectAction",{selectedIndex:n,previousIndex:t},{excludeValidators:["gesture","disabled"]}))},_optionChanged:function(n,t,i){switch(n){case"items":case"itemTemplateProperty":if(this._selectionEnabled()){var r=t&&t.length||0,u=Math.max(r-1,0);u<this.option("selectedIndex")&&this.option("selectedIndex",0)}this._cleanRenderedItems(),this._invalidate();break;case"dataSource":this._refreshDataSource(),this._dataSource||this.option("items",[]),this._renderEmptyMessage();break;case"noDataText":this._renderEmptyMessage();break;case"itemTemplate":this._invalidate();break;case"itemRender":this._itemRender=null,this._invalidate();break;case"itemRenderedAction":this._createItemRenderAction();break;case"itemClickAction":break;case"itemHoldAction":case"itemHoldTimeout":this._attachHoldEvent();break;case"selectedIndex":this._fireSelectItemEvent(t,i);break;case"itemSelectAction":break;default:this.callBase(n,t,i)}},_expectNextPageLoading:function(){this._startIndexForAppendedItems=0},_expectLastItemLoading:function(){this._startIndexForAppendedItems=-1},_forgetNextPageLoading:function(){this._startIndexForAppendedItems=null},_handleDataSourceChanged:function(n){var t=this.option("items");this._initialized&&t&&this._shouldAppendItems()?(this._renderedItemsCount=t.length,this._dataSource.isLastPage()&&this._startIndexForAppendedItems===-1||(this.option().items=t.concat(n.slice(this._startIndexForAppendedItems))),this._renderContent(),this._forgetNextPageLoading()):this.option("items",n)},_handleDataSourceLoadError:function(){this._forgetNextPageLoading()},_shouldAppendItems:function(){return this._startIndexForAppendedItems!=null&&this._allowDinamicItemsAppend()},_allowDinamicItemsAppend:function(){return!1},_clean:function(){this._itemContainer().empty()},_refresh:function(){this._cleanRenderedItems(),this.callBase.apply(this,arguments)},_itemContainer:function(){return this._element()},_itemClass:t.abstract,_itemSelector:function(){return"."+this._itemClass()},_itemDataKey:t.abstract,_itemElements:function(){return this._itemContainer().find(this._itemSelector())},_render:function(){this.callBase(),this._attachClickEvent(),this._attachHoldEvent(),this._selectionEnabled()&&(this._renderSelectedIndex(this.option("selectedIndex")),this._attachSelectedEvent())},_selectionEnabled:function(){return this._renderSelectedIndex!==t.abstract},_selectionByClickEnabled:function(){return!0},_renderSelectedIndex:t.abstract,_attachSelectedEvent:function(){if(this._selectionByClickEnabled()){var t=this._itemSelector(),r=this._createAction(n.proxy(function(n){this._handleItemSelect(n.jQueryEvent)},this),{validatingTargetName:"itemElement"}),i=u.addNamespace("dxclick",this.NAME);this._element().off(i,t).on(i,t,n.proxy(function(i){var u=n(i.target).closest(t);r({itemElement:u,jQueryEvent:i}),this._handleItemClick(i)},this))}},_handleItemSelect:function(t){if(!u.needSkipEvent(t)){var i=this.option("items"),r=n(t.currentTarget).data(this._itemDataKey()),f=n.inArray(r,i);this.option("selectedIndex",f)}},_updateSelectedIndex:function(){this._renderSelectedIndex.apply(this,arguments)},_selectedItemElement:function(n){return this._itemElements().eq(n)},_attachClickEvent:function(){if(!this._selectionEnabled()||!this._selectionByClickEnabled()){var t=this._itemSelector(),i=u.addNamespace("dxclick",this.NAME);this._itemContainer().off(i,t).on(i,t,n.proxy(this._handleItemClick,this))}},_handleItemClick:function(n){this._handleItemJQueryEvent(n,"itemClickAction")},_attachHoldEvent:function(){var t=this._itemContainer(),i=this._itemSelector(),r=u.addNamespace("dxhold",this.NAME);if(t.off(r,i),this._shouldAttachHoldEvent())t.on(r,i,{timeout:this.option("itemHoldTimeout")},n.proxy(this._handleItemHold,this))},_shouldAttachHoldEvent:function(){return this.option("itemHoldAction")},_handleItemHold:function(n){this._handleItemJQueryEvent(n,"itemHoldAction")},_renderContentImpl:function(){var n=this.option("items")||[];this._renderedItemsCount?this._renderItems(n.slice(this._renderedItemsCount)):this._renderItems(n)},_renderItems:function(t){t.length&&n.each(t,n.proxy(this._renderItem,this)),this._renderEmptyMessage()},_renderItem:function(n,t,i){var o;i=i||this._itemContainer();var f=this._getItemRenderer(),s=this._getItemTemplateName(t),e=this._getTemplate(s,n,t),r,u={index:n,item:t,container:i};return r=f?this._createItemByRenderer(f,u):e?this._createItemByTemplate(e,u):this._createItemByRenderer(this._itemRenderDefault,u),r.addClass(this._itemClass()).data(this._itemDataKey(),t),o={itemElement:r,itemData:t,itemIndex:n},this._postprocessRenderItem(o),this._getItemRenderAction()({itemElement:r,itemData:t}),r},_createItemRenderAction:function(){return this._itemRenderAction=this._createActionByOption("itemRenderedAction",{element:this._element(),excludeValidators:["gesture","designMode","disabled"]})},_getItemRenderAction:function(){return this._itemRenderAction||this._createItemRenderAction()},_getItemRenderer:function(){return this._itemRender=this._itemRender||this.option("itemRender")},_createItemByRenderer:function(t,i){var r=n("<div />").appendTo(i.container),u=t.call(this,i.item,i.index,r);return u!=null&&r[0]!==u[0]&&r.append(u),r},_getItemTemplateName:function(n){var t=this.option("itemTemplateProperty");return n&&n[t]||this.option("itemTemplate")},_createItemByTemplate:function(n,t){return n.render(t.container,t.item,t.index,"ignoreTarget")},_itemRenderDefault:function(t,r,u){n.isPlainObject(t)?(t.visible===i||t.visible||u.hide(),t.disabled&&u.addClass("dx-state-disabled"),t.text&&u.text(t.text),t.html&&u.html(t.html)):u.html(String(t))},_postprocessRenderItem:n.noop,_renderEmptyMessage:function(){if(!this._selectionEnabled()){var t=this.option("noDataText"),i=this.option("items"),u=this._dataSource&&this._dataSource.isLoading(),r=!t||i&&i.length||u;r&&this._$nodata&&(this._$nodata.remove(),this._$nodata=null),r||(this._$nodata=this._$nodata||n("<div />").addClass("dx-empty-message"),this._$nodata.appendTo(this._itemContainer()).text(t))}},_handleItemJQueryEvent:function(t,i,r,u){this._handleItemEvent(t.target,i,n.extend(r,{jQueryEvent:t}),u)},_handleItemEvent:function(t,i,r,u){var f=this._createActionByOption(i,n.extend({validatingTargetName:"itemElement"},u));return this._handleItemEventImpl(t,f,r)},_handleItemEventByHandler:function(t,i,r,u){var f=this._createAction(i,n.extend({validatingTargetName:"itemElement"},u));return this._handleItemEventImpl(t,f,r)},_handleItemEventImpl:function(t,i,r){var u=this._closestItemElement(n(t));return r=n.extend({itemElement:u,itemData:this._getItemData(u)},r),i(r)},_closestItemElement:function(t){return n(t).closest(this._itemSelector())},_getItemData:function(n){return n.data(this._itemDataKey())},itemElements:function(){return this._itemElements()},itemsContainer:function(){return this._itemContainer()}}).include(r.DataHelperMixin);r.CollectionContainerWidget=f}(jQuery,DevExpress),function(n,t){var r=null,f=function(i){i=n.extend({position:"top"},i);var r=i.content;return delete i.content,n("<div />").html(r).appendTo(t.overlayTargetContainer()).dxTooltip(i)},u=function(){r&&(r.remove(),r=null)},e={show:function(n){return u(),r=f(n),r.dxTooltip("show")},hide:function(){return r?r.dxTooltip("hide").done(u).promise():n.when()}};t.ui.tooltip=e}(jQuery,DevExpress));if(!DevExpress.MOD_WIDGETS_BASE){if(!window.DevExpress)throw Error("Required module is not referenced: core");(function(n,t){var o=t.ui,e=o.events,u="dxScrollable",h="dxScrollableStrategy",c="dx-scrollable",l="dx-scrollable-disabled",a="dx-scrollable-container",v="dx-scrollable-content",r="vertical",f="horizontal",s="both";t.registerComponent(u,t.DOMComponent.inherit({NAMESPACE:o,_setDefaultOptions:function(){this.callBase(),this.option({disabled:!1,scrollAction:null,direction:r,showScrollbar:!0,useNative:!0,updateAction:null,useSimulatedScrollbar:!1,useKeyboard:!0,inertiaEnabled:!0,bounceEnabled:!0,scrollByContent:!0,scrollByThumb:!1,startAction:null,endAction:null,bounceAction:null,stopAction:null})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(){return!t.support.nativeScrolling},options:{useNative:!1,useSimulatedScrollbar:!0}},{device:function(n){return!t.support.nativeScrolling&&!t.devices.isSimulator()&&t.devices.real().platform==="generic"&&n.platform==="generic"},options:{scrollByThumb:!0,scrollByContent:t.support.touch,showScrollbar:"onHover",bounceEnabled:!1}},{device:function(){return t.support.nativeScrolling&&t.devices.real().platform==="android"},options:{useSimulatedScrollbar:!0}}])},_init:function(){this.callBase(),this._initMarkup(),this._attachNativeScrollbarsCustomizationCss(),this._locked=!1},_visibilityChanged:function(n){n?(this.update(),this._savedScrollOffset&&this.scrollTo(this._savedScrollOffset)):this._savedScrollOffset=this.scrollOffset()},_initMarkup:function(){var t=this._element().addClass(c),i=this._$container=n("<div>").addClass(a),r=this._$content=n("<div>").addClass(v);r.append(t.contents()).appendTo(i),i.appendTo(t)},_dimensionChanged:function(){this.update()},_attachNativeScrollbarsCustomizationCss:function(){navigator.platform.indexOf("Mac")>-1&&DevExpress.browser.webkit||this._element().addClass("dx-scrollable-customizable-scrollbars")},_render:function(){this._renderDirection(),this._renderStrategy(),this._attachEventHandlers(),this._renderDisabledState(),this._createActions(),this.update(),this.callBase()},_toggleRTLDirection:function(n){this.callBase(n),n&&this.scrollTo({left:this.scrollWidth()-this.clientWidth()})},_attachEventHandlers:function(){var t=this._strategy,i={getDirection:n.proxy(t.getDirection,t),validate:n.proxy(this._validate,this)};this._$container.off("."+u).on(e.addNamespace("scroll",u),n.proxy(t.handleScroll,t)).on(e.addNamespace("dxscrollinit",u),i,n.proxy(t.handleInit,t)).on(e.addNamespace("dxscrollstart",u),n.proxy(t.handleStart,t)).on(e.addNamespace("dxscroll",u),n.proxy(t.handleMove,t)).on(e.addNamespace("dxscrollend",u),n.proxy(t.handleEnd,t)).on(e.addNamespace("dxscrollcancel",u),n.proxy(t.handleCancel,t)).on(e.addNamespace("dxscrollstop",u),n.proxy(t.handleStop,t))},_validate:function(n){return this.update(),this._strategy.validate(n)},_renderDisabledState:function(){this._element().toggleClass(l,this.option("disabled")),this.option("disabled")?this._lock():this._unlock()},_renderDirection:function(){this._element().removeClass("dx-scrollable-"+f).removeClass("dx-scrollable-"+r).removeClass("dx-scrollable-"+s).addClass("dx-scrollable-"+this.option("direction"))},_renderStrategy:function(){this._createStrategy(),this._strategy.render(),this._element().data(h,this._strategy)},_createStrategy:function(){this._strategy=this.option("useNative")?new o.NativeScrollableStrategy(this):new o.SimulatedScrollableStrategy(this)},_createActions:function(){this._strategy.createActions()},_clean:function(){this._strategy.dispose()},_optionChanged:function(n){switch(n){case"startAction":case"endAction":case"stopAction":case"updateAction":case"scrollAction":case"bounceAction":this._createActions();break;case"direction":this._resetInactiveDirection(),this._invalidate();break;case"inertiaEnabled":case"bounceEnabled":case"scrollByContent":case"scrollByThumb":case"bounceEnabled":case"useNative":case"useKeyboard":case"showScrollbar":case"useSimulatedScrollbar":this._invalidate();break;case"disabled":this._renderDisabledState();break;default:this.callBase.apply(this,arguments)}},_resetInactiveDirection:function(){var t=this._getInactiveProp(),n;t&&(n=this.scrollOffset(),n[t]=0,this.scrollTo(n))},_getInactiveProp:function(){var n=this.option("direction");return n===r?"left":n===f?"top":void 0},_location:function(){return this._strategy.location()},_normalizeLocation:function(t){var i=this.option("direction");return{left:n.isPlainObject(t)?-(t.left||t.x||0):i!==r?-t:0,top:n.isPlainObject(t)?-(t.top||t.y||0):i!==f?-t:0}},_isLocked:function(){return this._locked},_lock:function(){this._locked=!0},_unlock:function(){this._locked=!1},_isDirection:function(n){var t=this.option("direction");return n===r?t!==f:n===f?t!==r:t===n},_updateAllowedDirection:function(){var n=this._strategy._allowedDirections();this._allowedDirectionValue=this._isDirection(s)&&n.vertical&&n.horizontal?s:this._isDirection(f)&&n.horizontal?f:this._isDirection(r)&&n.vertical?r:null},_allowedDirection:function(){return this._allowedDirectionValue},content:function(){return this._$content},scrollOffset:function(){var n=this._location();return{top:-n.top,left:-n.left}},scrollTop:function(){return this.scrollOffset().top},scrollLeft:function(){return this.scrollOffset().left},clientHeight:function(){return this._$container.height()},scrollHeight:function(){return this.content().height()},clientWidth:function(){return this._$container.width()},scrollWidth:function(){return this.content().width()},update:function(){return this._strategy.update(),this._updateAllowedDirection(),n.Deferred().resolve().promise()},scrollBy:function(n){(n=this._normalizeLocation(n),n.top||n.left)&&this._strategy.scrollBy(n)},scrollTo:function(n){n=this._normalizeLocation(n);var t=this._location();this.scrollBy({left:t.left-n.left,top:t.top-n.top})},scrollToElement:function(t){var i=n(t),u,e;i.length&&this._element().find(i).length&&(u={top:0,left:0},e=this.option("direction"),e!==r&&(u.left=this._elementPosition(i,f)),e!==f&&(u.top=this._elementPosition(i,r)),this.scrollTo(u))},_elementPosition:function(n,t){var i=n.position()[t===r?"top":"left"],f=n[t===r?"outerHeight":"outerWidth"](),o=i+f,u=t===r?this.scrollTop():this.scrollLeft(),e=t===r?this.clientHeight():this.clientWidth(),s=u<=i&&o<=u+e,h=u>i;return s?u:i+(h?0:f-e)}}))})(jQuery,DevExpress),function(n,t){var e=t.ui,o=e.events,f="dxScrollbar",s="dx-scrollable-scrollbar",h=s+"-active",l="dx-scrollable-scroll",y="dx-scrollable-scrollbars-hidden",a="dx-scrollbar-hoverable",p="vertical",c="horizontal",v=15,r={onScroll:"onScroll",onHover:"onHover",always:"always",never:"never"},u;t.registerComponent(f,e.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({direction:null,visible:!1,activeStateEnabled:!1,visibilityMode:r.onScroll,containerSize:0,contentSize:0})},_init:function(){this.callBase(),this._isHovered=!1},_render:function(){this._renderThumb(),this.callBase(),this._renderDirection(),this._update(),this._attachPointerDownHandler(),this.option("hoverStateEnabled",this._isHoverMode()),this._element().toggleClass(a,this.option("hoverStateEnabled"))},_renderThumb:function(){this._$thumb=n("<div>").addClass(l),this._element().addClass(s).append(this._$thumb)},isThumb:function(n){return!!this._element().find(n).length},_isHoverMode:function(){return this.option("visibilityMode")===r.onHover},_renderDirection:function(){var n=this.option("direction");this._element().addClass("dx-scrollbar-"+n),this._dimension=n===c?"width":"height",this._prop=n===c?"left":"top"},_attachPointerDownHandler:function(){this._$thumb.on(o.addNamespace("dxpointerdown",f),n.proxy(this.feedbackOn,this))},feedbackOn:function(){this._element().addClass(h),u=this},feedbackOff:function(){this._element().removeClass(h),u=null},cursorEnter:function(){this._isHovered=!0,this.option("visible",!0)},cursorLeave:function(){this._isHovered=!1,this.option("visible",!1)},_renderDimensions:function(){this._$thumb.height(this.option("height")),this._$thumb.width(this.option("width"))},_toggleVisibility:function(n){n=this._adjustVisibility(n),this.option().visible=n,this._$thumb.toggleClass("dx-state-invisible",!n)},_adjustVisibility:function(n){if(this.containerToContentRatio()&&!this._needScrollbar())return!1;switch(this.option("visibilityMode")){case r.onHover:n=n||!!this._isHovered;break;case r.never:n=!1;break;case r.always:n=!0}return n},moveTo:function(i){if(!this._isHidden()){n.isPlainObject(i)&&(i=i[this._prop]||0);var r={};r[this._prop]=this._calculateScrollBarPosition(i),t.translator.move(this._$thumb,r)}},_calculateScrollBarPosition:function(n){return-n*this._thumbRatio},_update:function(){var n=this.option("containerSize"),i=this.option("contentSize"),t;this._containerToContentRatio=n/i,t=Math.round(Math.max(Math.round(n*this._containerToContentRatio),v)),this._thumbRatio=(n-t)/(i-n),this.option(this._dimension,t),this._element().toggle(this._needScrollbar())},_isHidden:function(){return this.option("visibilityMode")===r.never},_needScrollbar:function(){return!this._isHidden()&&this._containerToContentRatio<1},containerToContentRatio:function(){return this._containerToContentRatio},_normalizeSize:function(t){return n.isPlainObject(t)?t[this._dimension]||0:t},_clean:function(){this.callBase(),this===u&&(u=null),this._$thumb.off("."+f)},_optionChanged:function(n,t){if(!this._isHidden())switch(n){case"containerSize":case"contentSize":this.option()[n]=this._normalizeSize(t),this._update();break;case"visibilityMode":case"direction":this._invalidate();break;default:this.callBase.apply(this,arguments)}}})),u=null;n(document).on(o.addNamespace("dxpointerup",f),function(){u&&u.feedbackOff()})}(jQuery,DevExpress),function(n,t,i){var e=t.ui,y=e.events,p=t.utils,h=t.devices,w=Math.abs,o="dxNativeScrollable",f="dx-scrollable-native",c="dx-scrollable-scrollbar-simulated",l="dx-scrollable-scrollbars-hidden",r="vertical",u="horizontal",s="dxGestureLock",a=400,v=500;e.NativeScrollableStrategy=t.Class.inherit({ctor:function(n){this._init(n)},_init:function(t){this._component=t,this._$element=t._element(),this._$container=t._$container,this._$content=t._$content,this._direction=t.option("direction"),this._useSimulatedScrollbar=t.option("useSimulatedScrollbar"),this._showScrollbar=t.option("showScrollbar"),this.option=n.proxy(t.option,t),this._createActionByOption=n.proxy(t._createActionByOption,t),this._isLocked=n.proxy(t._isLocked,t),this._isDirection=n.proxy(t._isDirection,t),this._allowedDirection=n.proxy(t._allowedDirection,t)},render:function(){this._$element.addClass(f).addClass(f+"-"+h.real().platform).toggleClass(l,!this._showScrollbar),this._showScrollbar&&this._useSimulatedScrollbar&&this._renderScrollbars()},_renderScrollbars:function(){this._scrollbars={},this._hideScrollbarTimeout=0,this._$element.addClass(c),this._renderScrollbar(r),this._renderScrollbar(u)},_renderScrollbar:function(t){if(this._isDirection(t)){var i=n("<div>").dxScrollbar({direction:t}).appendTo(this._$element);this._scrollbars[t]=i.dxScrollbar("instance")}},handleInit:n.noop,handleStart:n.noop,handleMove:function(n){if(this._isLocked()){n.cancel=!0;return}this._allowedDirection()&&(n.originalEvent.originalEvent.isScrollingEvent=!0)},handleEnd:n.noop,handleStop:n.noop,_eachScrollbar:function(t){t=n.proxy(t,this),n.each(this._scrollbars||{},function(n,i){t(i,n)})},createActions:function(){var n={excludeValidators:["gesture"]};this._scrollAction=this._createActionByOption("scrollAction",n),this._updateAction=this._createActionByOption("updateAction",n)},_createActionArgs:function(){var n=this.location();return{jQueryEvent:this._eventForUserAction,scrollOffset:{top:-n.top,left:-n.left},reachedLeft:this._isDirection(u)?n.left>=0:i,reachedRight:this._isDirection(u)?n.left<=this._containerSize.width-this._componentContentSize.width:i,reachedTop:this._isDirection(r)?n.top>=0:i,reachedBottom:this._isDirection(r)?n.top<=this._containerSize.height-this._componentContentSize.height:i}},handleScroll:function(n){if(!this._isScrollLocationChanged()){n.stopImmediatePropagation();return}this._eventForUserAction=n,this._moveScrollbars(),this._scrollAction(this._createActionArgs()),this._treatNativeGesture(),this._lastLocation=this.location()},_isScrollLocationChanged:function(){var n=this.location(),t=this._lastLocation||{},i=t.top!==n.top,r=t.left!==n.left;return i||r},_moveScrollbars:function(){this._eachScrollbar(function(n){n.moveTo(this.location()),n.option("visible",!0)}),this._hideScrollbars()},_hideScrollbars:function(){clearTimeout(this._hideScrollbarTimeout),this._hideScrollbarTimeout=setTimeout(n.proxy(function(){this._eachScrollbar(function(n){n.option("visible",!1)})},this),v)},_treatNativeGesture:function(){this._prepareGesture(),this._forgetGesture()},_prepareGesture:function(){this._gestureEndTimer?(clearTimeout(this._gestureEndTimer),this._gestureEndTimer=null):this._$element.data(s,!0)},_forgetGesture:function(){this._gestureEndTimer=setTimeout(n.proxy(function(){this._$element.data(s,!1),this._gestureEndTimer=null},this),a)},location:function(){return{left:-this._$container.scrollLeft(),top:-this._$container.scrollTop()}},disabledChanged:n.noop,update:function(){this._update(),this._updateAction(this._createActionArgs())},_update:function(){this._updateDimensions(),this._updateScrollbars()},_updateDimensions:function(){this._containerSize={height:this._$container.height(),width:this._$container.width()},this._componentContentSize={height:this._component.content().height(),width:this._component.content().width()},this._contentSize={height:this._$content.height(),width:this._$content.width()}},_updateScrollbars:function(){this._eachScrollbar(function(n,t){var i=t===r?"height":"width";n.option({containerSize:this._containerSize[i],contentSize:this._componentContentSize[i]})})},_allowedDirections:function(){return{vertical:this._isDirection(r)&&this._contentSize.height>this._containerSize.height,horizontal:this._isDirection(u)&&this._contentSize.width>this._containerSize.width}},dispose:function(){this._$element.removeClass(function(n,t){var i=new RegExp(f+"\\S*","g");if(i.test(t))return t.match(i).join(" ")}),this._$element.off("."+o),this._$container.off("."+o),this._removeScrollbars(),clearTimeout(this._gestureEndTimer)},_removeScrollbars:function(){this._eachScrollbar(function(n){n._element().remove()})},scrollBy:function(n){var t=this.location();this._$container.scrollTop(-t.top-n.top),this._$container.scrollLeft(-t.left-n.left)},validate:function(){return!this.option("disabled")&&this._allowedDirection()},getDirection:function(){return this._allowedDirection()}})}(jQuery,DevExpress),function(n,t,i){var a=t.ui,v=a.events,o=Math,w=t.devices.real,b=w.platform==="win8"||w.platform==="android",k="dxSimulatedScrollable",it="dxScrollableStrategy",h=k+"Cursor",y=k+"Keyboard",p="dx-scrollable-simulated",rt="dx-scrollable-scrollbars-hidden",u="vertical",r="horizontal",c=b?.95:.92,d=.5,g=1,ut=o.round(1e3/60),nt=20,ft=g/5,et=b?300:400,ot=et/ut,st=(1-o.pow(c,ot))/(1-c),e={PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40},tt=t.Animator.inherit({ctor:function(n){this.callBase(),this.scroller=n},VELOCITY_LIMIT:g,_isFinished:function(){return o.abs(this.scroller._velocity)<=this.VELOCITY_LIMIT},_step:function(){this.scroller._scrollStep(this.scroller._velocity),this.scroller._velocity*=this._acceleration()},_acceleration:function(){return this.scroller._inBounds()?c:d},_complete:function(){this.scroller._scrollComplete()},_stop:function(){this.scroller._stopComplete()}}),ht=tt.inherit({VELOCITY_LIMIT:ft,_isFinished:function(){return this.scroller._crossBoundOnNextStep()||this.callBase()},_acceleration:function(){return c},_complete:function(){this.scroller._move(this.scroller._bounceLocation),this.callBase()}}),l=function(n){return n.type==="dxmousewheel"},ct=a.Scroller=t.Class.inherit({ctor:function(n){this._initOptions(n),this._initAnimators(),this._initScrollbar()},_initOptions:function(t){this._location=0,this._topReached=!1,this._bottomReached=!1,this._axis=t.direction===r?"x":"y",this._prop=t.direction===r?"left":"top",this._dimension=t.direction===r?"width":"height",this._scrollProp=t.direction===r?"scrollLeft":"scrollTop",n.each(t,n.proxy(function(n,t){this["_"+n]=t},this))},_initAnimators:function(){this._inertiaAnimator=new tt(this),this._bounceAnimator=new ht(this)},_initScrollbar:function(){this._$scrollbar=n("<div>").dxScrollbar({direction:this._direction,visible:this._scrollByThumb,visibilityMode:this._visibilityModeNormalize(this._scrollbarVisible),containerSize:this._containerSize(),contentSize:this._contentSize()}).appendTo(this._$container),this._scrollbar=this._$scrollbar.dxScrollbar("instance")},_visibilityModeNormalize:function(n){return n===!0?"onScroll":n===!1?"never":n},_scrollStep:function(n){var t=this._location;this._location+=n,this._suppressBounce(),this._move(),t!==this._location&&(this._scrollAction(),this._$element.triggerHandler("scroll"))},_suppressBounce:function(){this._bounceEnabled||this._inBounds(this._location)||(this._velocity=0,this._location=this._boundLocation())},_boundLocation:function(){var n=o.min(this._location,this._maxOffset);return o.max(n,this._minOffset)},_move:function(n){this._location=n!==i?n:this._location,this._moveContent(),this._moveScrollbar()},_moveContent:function(){var n={};n[this._prop]=this._location,t.translator.move(this._$content,n)},_moveScrollbar:function(){this._scrollbar.moveTo(this._location)},_scrollComplete:function(){this._inBounds()&&(this._hideScrollbar(),this._correctLocation(),this._completeDeferred&&this._completeDeferred.resolve()),this._scrollToBounds()},_correctLocation:function(){this._location=o.round(this._location),this._move()},_scrollToBounds:function(){this._inBounds()||(this._bounceAction(),this._setupBounce(),this._bounceAnimator.start())},_setupBounce:function(){var n=this._bounceLocation=this._boundLocation(),t=n-this._location;this._velocity=t/st},_inBounds:function(n){return n=n!==i?n:this._location,n>=this._minOffset&&n<=this._maxOffset},_crossBoundOnNextStep:function(){var n=this._location,t=n+this._velocity;return n<this._minOffset&&t>=this._minOffset||n>this._maxOffset&&t<=this._maxOffset},_handleInit:function(t){return this._stopDeferred=n.Deferred(),this._stopScrolling(),this._prepareThumbScrolling(t),this._stopDeferred.promise()},_stopScrolling:function(){this._hideScrollbar(),this._inertiaAnimator.stop(),this._bounceAnimator.stop()},_prepareThumbScrolling:function(t){if(!l(t.originalEvent)){var i=n(t.originalEvent.target),r=this._isScrollbar(i);r&&this._moveToMouseLocation(t),this._thumbScrolling=r||this._isThumb(i),this._thumbScrolling&&this._scrollbar.feedbackOn()}},_moveToMouseLocation:function(n){var t=n["page"+this._axis.toUpperCase()]-this._$element.offset()[this._prop],i=this._location+t/this._containerToContentRatio()-this._$container.height()/2;this._scrollStep(-i)},_stopComplete:function(){this._stopDeferred&&this._stopDeferred.resolve()},_handleStart:function(){this._showScrollbar()},_handleMove:function(n){n=n[this._axis],this._thumbScrolling&&(n=-n/this._containerToContentRatio()),this._inBounds()||(n*=d),this._scrollStep(n)},_containerToContentRatio:function(){return this._scrollbar.containerToContentRatio()},_handleEnd:function(t){return this._completeDeferred=n.Deferred(),this._velocity=t[this._axis],this._handleInertia(),this._resetThumbScrolling(),this._completeDeferred.promise()},_handleInertia:function(){this._suppressIntertia(),this._inertiaAnimator.start()},_suppressIntertia:function(){(!this._inertiaEnabled||this._thumbScrolling)&&(this._velocity=0)},_resetThumbScrolling:function(){this._thumbScrolling=!1},_handleStop:function(){this._resetThumbScrolling(),this._scrollToBounds()},_handleDispose:function(){this._stopScrolling(),this._$scrollbar.remove()},_handleUpdate:function(){this._update(),this._moveToBounds()},_update:function(){this._stopScrolling(),this._updateLocation(),this._updateBounds(),this._updateScrollbar(),this._moveScrollbar(),this._updateScrollbarVisibility()},_updateLocation:function(){this._location=t.translator.locate(this._$content)[this._prop]},_updateBounds:function(){this._maxOffset=0,this._minOffset=o.min(this._containerSize()-this._contentSize(),0)},_updateScrollbar:function(){this._scrollbar.option({containerSize:this._containerSize(),contentSize:this._contentSize()})},_updateScrollbarVisibility:function(){this._showScrollbar(),this._hideScrollbar()},_moveToBounds:function(){this._location=this._boundLocation(),this._move()},_handleCreateActions:function(n){this._scrollAction=n.scrollAction,this._bounceAction=n.bounceAction},_showScrollbar:function(){this._scrollbar.option("visible",!0)},_hideScrollbar:function(){this._scrollbar.option("visible",!1)},_containerSize:function(){return this._$container[this._dimension]()},_contentSize:function(){return this._$content[this._dimension]()},_validateEvent:function(t){var i=n(t.originalEvent.target);return this._isThumb(i)||this._isScrollbar(i)?(t.preventDefault(),!0):this._isContent(i)},_isThumb:function(n){return this._scrollByThumb&&this._scrollbar.isThumb(n)},_isScrollbar:function(n){return this._scrollByThumb&&n&&n.is(this._$scrollbar)},_isContent:function(n){return this._scrollByContent&&!!n.closest(this._$element).length},_reachedMin:function(){return this._location<=this._minOffset},_reachedMax:function(){return this._location>=this._maxOffset},_handleCursorEnter:function(){this._scrollbar.cursorEnter()},_handleCursorLeave:function(){this._scrollbar.cursorLeave()}}),f,s;a.SimulatedScrollableStrategy=t.Class.inherit({ctor:function(n){this._init(n)},_init:function(t){this._component=t,this._$element=t._element(),this._$container=t._$container.prop("tabindex",0),this._$content=t._$content,this.option=n.proxy(t.option,t),this._createActionByOption=n.proxy(t._createActionByOption,t),this._isLocked=n.proxy(t._isLocked,t),this._isDirection=n.proxy(t._isDirection,t),this._allowedDirection=n.proxy(t._allowedDirection,t)},render:function(){this._$element.addClass(p),this._createScrollers(),this._attachKeyboardHandler(),this._attachCursorHandlers()},_createScrollers:function(){this._scrollers={},this._isDirection(r)&&this._createScroller(r),this._isDirection(u)&&this._createScroller(u),this._$element.toggleClass(rt,!this.option("showScrollbar"))},_createScroller:function(n){this._scrollers[n]=new ct(this._scrollerOptions(n))},_scrollerOptions:function(n){return{direction:n,$content:this._$content,$container:this._$container,$element:this._$element,scrollByContent:this.option("scrollByContent"),scrollByThumb:this.option("scrollByThumb"),scrollbarVisible:this.option("showScrollbar"),bounceEnabled:this.option("bounceEnabled"),inertiaEnabled:this.option("inertiaEnabled")}},handleInit:function(n){this._supressDirections(n),this._eventForUserAction=n,this._handleEvent("Init",n).done(this._stopAction)},_supressDirections:function(n){if(l(n.originalEvent)){this._prepareDirections(!0);return}this._prepareDirections(),this._eachScroller(function(t,i){var r=t._validateEvent(n);this._validDirections[i]=r})},_prepareDirections:function(n){n=n||!1,this._validDirections={},this._validDirections[r]=n,this._validDirections[u]=n},_eachScroller:function(t){t=n.proxy(t,this),n.each(this._scrollers,function(n,i){t(i,n)})},handleStart:function(){this._saveActive(),this._handleEvent("Start").done(this._startAction)},_saveActive:function(){s=this},_resetActive:function(){s=null},_validateDirection:function(n){var t=!1;return this._eachScroller(function(i){t=t||i._validateDirection(n)}),t},handleMove:function(n){if(this._isLocked()){n.cancel=!0,this._resetActive();return}n.preventDefault&&n.preventDefault(),this._adjustDistance(n.delta),this._eventForUserAction=n,this._handleEvent("Move",n.delta)},_adjustDistance:function(n){n.x*=this._validDirections[r],n.y*=this._validDirections[u]},handleEnd:function(n){return this._resetActive(),this._refreshCursorState(n.originalEvent&&n.originalEvent.target),this._adjustDistance(n.velocity),this._eventForUserAction=n,this._handleEvent("End",n.velocity).done(this._endAction)},handleCancel:function(n){return this._resetActive(),this._eventForUserAction=n,this._handleEvent("End",{x:0,y:0})},handleStop:function(){this._resetActive(),this._handleEvent("Stop")},handleScroll:function(){var n={left:this._$container.scrollLeft(),top:this._$container.scrollTop()};this._$container.scrollLeft(-n.left),this._$container.scrollTop(-n.top),this.scrollBy(n)},_attachKeyboardHandler:function(){if(this._$element.off("."+y),!this.option("disabled")&&this.option("useKeyboard"))this._$element.on(v.addNamespace("keydown",y),n.proxy(this._handleKeyDown,this))},_handleKeyDown:function(n){if(this._$container.is(document.activeElement)){var t=!0;switch(n.keyCode){case e.DOWN:this._scrollByLine({y:1});break;case e.UP:this._scrollByLine({y:-1});break;case e.RIGHT:this._scrollByLine({x:1});break;case e.LEFT:this._scrollByLine({x:-1});break;case e.PAGE_DOWN:this._scrollByPage(1);break;case e.PAGE_UP:this._scrollByPage(-1);break;case e.HOME:this._scrollToHome();break;case e.END:this._scrollToEnd();break;default:t=!1}t&&(n.stopPropagation(),n.preventDefault())}},_scrollByLine:function(n){this.scrollBy({top:(n.y||0)*-nt,left:(n.x||0)*-nt})},_scrollByPage:function(n){var t=this._wheelProp(),r=this._dimensionByProp(t),i={};i[t]=n*-this._$container[r](),this.scrollBy(i)},_dimensionByProp:function(n){return n==="left"?"width":"height"},_scrollToHome:function(){var t=this._wheelProp(),n={};n[t]=0,this._component.scrollTo(n)},_scrollToEnd:function(){var n=this._wheelProp(),t=this._dimensionByProp(n),i={};i[n]=this._$content[t]()-this._$container[t](),this._component.scrollTo(i)},createActions:function(){this._startAction=this._createActionHandler("startAction"),this._stopAction=this._createActionHandler("stopAction"),this._endAction=this._createActionHandler("endAction"),this._updateAction=this._createActionHandler("updateAction"),this._createScrollerActions()},_createScrollerActions:function(){this._handleEvent("CreateActions",{scrollAction:this._createActionHandler("scrollAction"),bounceAction:this._createActionHandler("bounceAction")})},_createActionHandler:function(t){var i=this,r=i._createActionByOption(t,{excludeValidators:["gesture"]});return function(){r(n.extend(i._createActionArgs(),arguments))}},_createActionArgs:function(){var n=this._scrollers[r],t=this._scrollers[u];return{jQueryEvent:this._eventForUserAction,scrollOffset:{top:t&&-t._location,left:n&&-n._location},reachedLeft:n&&n._reachedMax(),reachedRight:n&&n._reachedMin(),reachedTop:t&&t._reachedMax(),reachedBottom:t&&t._reachedMin()}},_handleEvent:function(t){var i=n.makeArray(arguments).slice(1),r=n.map(this._scrollers,function(n){return n["_handle"+t].apply(n,i)});return n.when.apply(n,r).promise()},location:function(){return t.translator.locate(this._$content)},disabledChanged:function(){this._attachCursorHandlers()},_attachCursorHandlers:function(){if(this._$element.off("."+h),!this.option("disabled")&&this._isHoverMode())this._$element.on(v.addNamespace("mouseenter",h),n.proxy(this._handleCursorEnter,this)).on(v.addNamespace("mouseleave",h),n.proxy(this._handleCursorLeave,this))},_isHoverMode:function(){return this.option("showScrollbar")==="onHover"},_handleCursorEnter:function(n){(n=n||{},n.originalEvent=n.originalEvent||{},s||n.originalEvent._hoverHandled)||(f&&f._handleCursorLeave(),f=this,this._handleEvent("CursorEnter"),n.originalEvent._hoverHandled=!0)},_handleCursorLeave:function(n){f===this&&s!==f&&(this._handleEvent("CursorLeave"),f=null,this._refreshCursorState(n&&n.relatedTarget))},_refreshCursorState:function(t){if(this._isHoverMode()||t&&!s){var u=n(t),r=u.closest("."+p+":not(.dx-state-disabled)"),i=r.length&&r.data(it);f&&f!==i&&f._handleCursorLeave(),i&&i._handleCursorEnter()}},update:function(){return this._handleEvent("Update").done(this._updateAction)},_allowedDirections:function(){var n=this.option("bounceEnabled");return{vertical:this._isDirection(u)&&(this._scrollers[u]._minOffset<0||n),horizontal:this._isDirection(r)&&(this._scrollers[r]._minOffset<0||n)}},scrollBy:function(n){this._prepareDirections(!0),this._handleEvent("Start").done(this._startAction),this._handleEvent("Move",{x:n.left,y:n.top}),this._handleEvent("End",{x:0,y:0}).done(this._endAction)},validate:function(n){return this.option("disabled")?!1:this.option("bounceEnabled")?!0:l(n)?this._validateWheel(n):this._validateMove()},_validateWheel:function(n){var r=this._scrollers[this._wheelDirection()],t=r._reachedMin(),i=r._reachedMax(),u=!t||!i,f=!t&&!i,e=t&&n.delta>0,o=i&&n.delta<0;return u&&(f||e||o)},_validateMove:function(){return this._allowedDirection()},getDirection:function(n){return l(n)?this._wheelDirection():this._allowedDirection()},_wheelProp:function(){return this._wheelDirection()===r?"left":"top"},_wheelDirection:function(){switch(this.option("direction")){case r:return r;case u:return u;default:return this._scrollers[u]._containerToContentRatio()>=1?r:u}},dispose:function(){s===this&&(s=null),f===this&&(f=null),this._handleEvent("Dispose"),this._detachEventHandlers(),this._$element.removeClass(p),this._eventForUserAction=null,clearTimeout(this._gestureEndTimer)},_detachEventHandlers:function(){this._$element.off("."+h),this._$container.off("."+y)}})}(jQuery,DevExpress),function(n,t,i){var f=t.ui,r="dx-scrollview",o=r+"-content",s=r+"-top-pocket",h=r+"-bottom-pocket",u=r+"-pull-down",v=u+"-image",y=u+"-indicator",p=u+"-text",e=r+"-scrollbottom",c=e+"-indicator",l=e+"-text",a=r+"-loadpanel";t.registerComponent("dxScrollView",f.dxScrollable.inherit({_setDefaultOptions:function(){this.callBase(),this.option({pullingDownText:Globalize.localize("dxScrollView-pullingDownText"),pulledDownText:Globalize.localize("dxScrollView-pulledDownText"),refreshingText:Globalize.localize("dxScrollView-refreshingText"),reachBottomText:Globalize.localize("dxScrollView-reachBottomText"),pullDownAction:null,reachBottomAction:null,refreshStrategy:"pullDown"})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(){return DevExpress.devices.real().platform==="android"},options:{refreshStrategy:"swipeDown"}},{device:function(){return DevExpress.devices.real().platform==="win8"},options:{refreshStrategy:"slideDown"}}])},_init:function(){this.callBase(),this._loadingIndicatorEnabled=!0},_initMarkup:function(){this.callBase(),this._element().addClass(r),this._initContent(),this._initTopPocket(),this._initBottomPocket(),this._initLoadPanel()},_initContent:function(){var t=n("<div>").addClass(o);this._$content.wrapInner(t)},_initTopPocket:function(){var t=this._$topPocket=n("<div>").addClass(s),i=this._$pullDown=n("<div>").addClass(u);t.append(i),this._$content.prepend(t)},_initBottomPocket:function(){var t=this._$bottomPocket=n("<div>").addClass(h),i=this._$reachBottom=n("<div>").addClass(e),r=n("<div>").addClass(c),u=n("<div>").dxLoadIndicator(),f=this._$reachBottomText=n("<div>").addClass(l);this._updateReachBottomText(),i.append(r.append(u)).append(f),t.append(i),this._$content.append(t)},_initLoadPanel:function(){this._loadPanel=n("<div>").addClass(a).appendTo(this._element()).dxLoadPanel({shading:!1,delay:400,position:{of:this._element()}}).dxLoadPanel("instance")},_updateReachBottomText:function(){this._$reachBottomText.text(this.option("reachBottomText"))},_createStrategy:function(){var i=this.option("useNative")?this.option("refreshStrategy"):"simulated",t=f.scrollViewRefreshStrategies[i];if(!t)throw Error("Unknown dxScrollView refresh strategy "+this.option("refreshStrategy"));this._strategy=new t(this),this._strategy.pullDownCallbacks.add(n.proxy(this._handlePullDown,this)),this._strategy.releaseCallbacks.add(n.proxy(this._handleRelease,this)),this._strategy.reachBottomCallbacks.add(n.proxy(this._handleReachBottom,this))},_createActions:function(){this.callBase(),this._pullDownAction=this._createActionByOption("pullDownAction",{excludeValidators:["gesture"]}),this._reachBottomAction=this._createActionByOption("reachBottomAction",{excludeValidators:["gesture"]}),this._pullDownEnable(!!this.option("pullDownAction")&&!t.designMode),this._reachBottomEnable(!!this.option("reachBottomAction")&&!t.designMode)},_pullDownEnable:function(n){this._$pullDown.toggle(n),this._strategy.pullDownEnable(n)},_reachBottomEnable:function(n){this._$reachBottom.toggle(n),this._strategy.reachBottomEnable(n)},_handlePullDown:function(){this._loadingIndicator(!1),this._pullDownLoading()},_loadingIndicator:function(n){if(arguments.length<1)return this._loadingIndicatorEnabled;this._loadingIndicatorEnabled=n},_pullDownLoading:function(){this.startLoading(),this._pullDownAction()},_handleReachBottom:function(){this._loadingIndicator(!1),this._reachBottomLoading()},_reachBottomLoading:function(){this.startLoading(),this._reachBottomAction()},_handleRelease:function(){this.finishLoading(),this._loadingIndicator(!0)},_optionChanged:function(n){switch(n){case"pullDownAction":case"reachBottomAction":this._createActions();break;case"pullingDownText":case"pulledDownText":case"refreshingText":case"refreshStrategy":this._invalidate();break;case"reachBottomText":this._updateReachBottomText();break;default:this.callBase.apply(this,arguments)}},content:function(){return this._$content.children().eq(1)},release:function(n){return n!==i&&this.toggleLoading(!n),this._strategy.release()},toggleLoading:function(n){this._reachBottomEnable(n)},isFull:function(){return this.content().height()>=this._$container.height()},refresh:function(){this.option("pullDownAction")&&(this._strategy.pendingRelease(),this._pullDownLoading())},startLoading:function(){this._loadingIndicator()&&this._element().is(":visible")&&this._loadPanel.show(),this._lock()},finishLoading:function(){this._loadingIndicator()&&this._loadPanel.hide(),this._unlock()},_dispose:function(){this.callBase(),this._loadPanel&&this._loadPanel._element().remove()}})),f.scrollViewRefreshStrategies={}}(jQuery,DevExpress),function(n,t){var o=t.ui,p=Math,s="dx-scrollview-pull-down-loading",f="dx-scrollview-pull-down-ready",c="dx-scrollview-pull-down-image",l="dx-scrollview-pull-down-indicator",a="dx-scrollview-pull-down-text",e=0,r=1,u=2,h=3,v=2,y=o.NativeScrollableStrategy.inherit({_init:function(n){this.callBase(n),this._$topPocket=n._$topPocket,this._$pullDown=n._$pullDown,this._$bottomPocket=n._$bottomPocket,this._$refreshingText=n._$refreshingText,this._$scrollViewContent=n.content(),this._initCallbacks()},_initCallbacks:function(){this.pullDownCallbacks=n.Callbacks(),this.releaseCallbacks=n.Callbacks(),this.reachBottomCallbacks=n.Callbacks()},render:function(){this.callBase(),this._renderPullDown(),this._releaseState()},_renderPullDown:function(){var i=n("<div>").addClass(c),r=n("<div>").addClass(l),u=n("<div>").dxLoadIndicator(),t=this._$pullDownText=n("<div>").addClass(a);this._$pullingDownText=n("<div>").text(this.option("pullingDownText")).appendTo(t),this._$pulledDownText=n("<div>").text(this.option("pulledDownText")).appendTo(t),this._$refreshingText=n("<div>").text(this.option("refreshingText")).appendTo(t),this._$pullDown.empty().append(i).append(r.append(u)).append(t)},_releaseState:function(){this._state=e,this._refreshPullDownText()},_refreshPullDownText:function(){this._$pullingDownText.css("opacity",this._state===e?1:0),this._$pulledDownText.css("opacity",this._state===r?1:0),this._$refreshingText.css("opacity",this._state===u?1:0)},update:function(){this.callBase(),this._setTopPocketOffset()},_updateDimensions:function(){this.callBase(),this._topPocketSize=this._$topPocket.height(),this._bottomPocketSize=this._$bottomPocket.height(),this._scrollOffset=this._$container.height()-this._$content.height(),this._pushBackFromBoundary()},_allowedDirections:function(){var n=this.callBase();return n.vertical=n.vertical||this._pullDownEnabled,n},_setTopPocketOffset:function(){this._$topPocket.css({top:-this._topPocketSize})},handleEnd:function(){this._complete()},handleStop:function(){this._complete()},_complete:function(){this._state===r&&(this._setPullDownOffset(this._topPocketSize),clearTimeout(this._pullDownRefreshTimeout),this._pullDownRefreshTimeout=setTimeout(n.proxy(function(){this._pullDownRefreshing()},this),400))},_setPullDownOffset:function(n){t.translator.move(this._$topPocket,{top:n}),t.translator.move(this._$scrollViewContent,{top:n})},handleScroll:function(n){(this.callBase(n),this._pushBackFromBoundary(),this._state!==u)&&(this._location=this.location().top,this._isPullDown()?this._pullDownReady():this._isReachBottom()?this._reachBottom():this._stateReleased())},_pushBackFromBoundary:function(){var n=this._$container.scrollTop(),t=this._scrollOffset+n-v;n?t||this._$container.scrollTop(1-this._scrollOffset):this._$container.scrollTop(1)},_isPullDown:function(){return this._pullDownEnabled&&this._location>=this._topPocketSize},_isReachBottom:function(){return this._reachBottomEnabled&&this._location<=this._scrollOffset+this._bottomPocketSize},_reachBottom:function(){this._state!==h&&(this._state=h,this.reachBottomCallbacks.fire())},_pullDownReady:function(){this._state!==r&&(this._state=r,this._$pullDown.addClass(f),this._refreshPullDownText())},_stateReleased:function(){this._state!==e&&(this._$pullDown.removeClass(s).removeClass(f),this._releaseState())},_pullDownRefreshing:function(){this._state!==u&&(this._state=u,this._$pullDown.addClass(s).removeClass(f),this._refreshPullDownText(),this.pullDownCallbacks.fire())},pullDownEnable:function(n){this._pullDownEnabled=n},reachBottomEnable:function(n){this._reachBottomEnabled=n},pendingRelease:function(){this._state=r},release:function(){var t=n.Deferred();return this._updateDimensions(),clearTimeout(this._releaseTimeout),this._releaseTimeout=setTimeout(n.proxy(function(){this._setPullDownOffset(0),this._stateReleased(),this.releaseCallbacks.fire(),this._updateAction(),t.resolve()},this),400),t.promise()},location:function(){return{left:-this._$container.scrollLeft(),top:1-this._$container.scrollTop()}},scrollBy:function(n){var t=this.location();this._$container.scrollTop(-t.top-n.top+1),this._$container.scrollLeft(-t.left-n.left)},dispose:function(){clearTimeout(this._pullDownRefreshTimeout),clearTimeout(this._releaseTimeout),this.callBase()}});o.scrollViewRefreshStrategies.pullDown=y}(jQuery,DevExpress),function(n,t){var r=t.ui,s=r.events,h=Math,c="dx-scrollview-pull-down-loading",y="dx-scrollview-obsolete-android-browser",l=160,u=0,a=1,f=2,p=3,e=4,o=5,v=r.NativeScrollableStrategy.inherit({_init:function(n){this.callBase(n),this._$topPocket=n._$topPocket,this._$bottomPocket=n._$bottomPocket,this._$pullDown=n._$pullDown,this._$scrollViewContent=n.content(),this._initCallbacks(),this._releaseState(),this._location=0},_initCallbacks:function(){this.pullDownCallbacks=n.Callbacks(),this.releaseCallbacks=n.Callbacks(),this.reachBottomCallbacks=n.Callbacks()},render:function(){this.callBase(),this._renderPullDown()},_renderPullDown:function(){this._$pullDown.empty().append(n("<div class='dx-scrollview-pulldown-pointer1'>")).append(n("<div class='dx-scrollview-pulldown-pointer2'>")).append(n("<div class='dx-scrollview-pulldown-pointer3'>")).append(n("<div class='dx-scrollview-pulldown-pointer4'>"))},_releaseState:function(){this._state=u,this._$pullDown.css({width:"0%",opacity:0}),this._updateDimensions()},_updateDimensions:function(){this.callBase(),this._topPocketSize=this._$topPocket.height(),this._bottomPocketSize=this._$bottomPocket.height(),this._scrollOffset=this._$container.height()-this._$content.height()},_allowedDirections:function(){var n=this.callBase();return n.vertical=n.vertical||this._pullDownEnabled,n},handleInit:function(n){this.callBase(n),this._state===u&&this._location===0&&(this._startClientY=s.eventData(n.originalEvent).y,this._state=e)},handleMove:function(n){if(this.callBase(n),this._deltaY=s.eventData(n.originalEvent).y-this._startClientY,this._state===e&&(this._pullDownEnabled&&this._deltaY>0?(n.preventDefault(),this._state=o):this._complete()),this._state===o){if(this._deltaY<0){this._complete();return}this._$pullDown.css({opacity:1,width:h.min(h.abs(this._deltaY*100/l),100)+"%"}),this._isPullDown()&&this._pullDownRefreshing()}},_isPullDown:function(){return this._pullDownEnabled&&this._deltaY>=l},handleEnd:function(){this._complete()},handleStop:function(){this._complete()},_complete:function(){(this._state===e||this._state===o)&&this._releaseState()},handleScroll:function(n){if(this.callBase(n),this._state!==f){var t=this.location().top,i=this._location-t;this._location=t,i>0&&this._isReachBottom()?this._reachBottom():this._stateReleased()}},_isReachBottom:function(){return this._reachBottomEnabled&&this._location<=this._scrollOffset+this._bottomPocketSize},_reachBottom:function(){this.reachBottomCallbacks.fire()},_stateReleased:function(){this._state!==u&&(this._$pullDown.removeClass(c),this._releaseState())},_pullDownRefreshing:function(){this._state!==f&&(this._state=f,clearTimeout(this._pullDownRefreshTimeout),this._pullDownRefreshTimeout=setTimeout(n.proxy(function(){this._$pullDown.addClass(c),this.pullDownCallbacks.fire()},this),400))},pullDownEnable:function(n){this._$topPocket.toggle(n),this._pullDownEnabled=n},reachBottomEnable:function(n){this._reachBottomEnabled=n},pendingRelease:function(){this._state=a},release:function(){var t=n.Deferred();return this._updateDimensions(),clearTimeout(this._releaseTimeout),this._releaseTimeout=setTimeout(n.proxy(function(){this._stateReleased(),this.releaseCallbacks.fire(),this._updateAction(),t.resolve()},this),800),t.promise()},dispose:function(){clearTimeout(this._pullDownRefreshTimeout),clearTimeout(this._releaseTimeout),this.callBase()}});r.scrollViewRefreshStrategies.swipeDown=v}(jQuery,DevExpress),function(n,t){var u=t.ui,h="dxSlideDownNativeScrollViewStrategy",r=0,e=1,f=2,o=80,s=u.NativeScrollableStrategy.inherit({_init:function(n){this.callBase(n),this._$topPocket=n._$topPocket,this._$bottomPocket=n._$bottomPocket,this._initCallbacks()},_initCallbacks:function(){this.pullDownCallbacks=n.Callbacks(),this.releaseCallbacks=n.Callbacks(),this.reachBottomCallbacks=n.Callbacks()},render:function(){this.callBase(),this._renderPullDown(),this._renderBottom(),this._releaseState(),this._updateDimensions()},_renderPullDown:function(){this._$topPocket.empty()},_renderBottom:function(){this._$bottomPocket.empty().append("<progress>")},_releaseState:function(){this._state!==r&&(this._state=r)},_updateDimensions:function(){this._scrollOffset=this._$container.prop("scrollHeight")-this._$container.prop("clientHeight"),this._containerSize={height:this._$container.prop("clientHeight"),width:this._$container.prop("clientWidth")},this._contentSize=this._componentContentSize={height:this._$container.prop("scrollHeight"),width:this._$container.prop("scrollWidth")}},handleScroll:function(n){this.callBase(n),this._isReachBottom(this._lastLocation.top)&&this._reachBottom()},_isReachBottom:function(n){return this._scrollContent=this._$container.prop("scrollHeight")-this._$container.prop("clientHeight"),this._reachBottomEnabled&&n<-this._scrollContent+o},_reachBottom:function(){this._state!==f&&(this._state=f,this.reachBottomCallbacks.fire())},pullDownEnable:function(n){this._pullDownEnabled=n},reachBottomEnable:function(n){this._reachBottomEnabled=n,this._$bottomPocket.toggle(n)},pendingRelease:function(){this._state=e},release:function(){var t=n.Deferred();return this._state=r,this.releaseCallbacks.fire(),this.update(),t.resolve().promise()}});u.scrollViewRefreshStrategies.slideDown=s}(jQuery,DevExpress),function(n,t){var f=t.ui,h=Math,c="dx-scrollview-pull-down-loading",e="dx-scrollview-pull-down-ready",l="dx-scrollview-pull-down-image",a="dx-scrollview-pull-down-indicator",v="dx-scrollview-pull-down-text",r=0,u=1,o=2,s=3,y=f.ScrollViewScroller=f.Scroller.inherit({ctor:function(){this.callBase.apply(this,arguments),this._initCallbacks(),this._releaseState()},_releaseState:function(){this._state=r,this._refreshPullDownText()},_refreshPullDownText:function(){this._$pullingDownText.css("opacity",this._state===r?1:0),this._$pulledDownText.css("opacity",this._state===u?1:0),this._$refreshingText.css("opacity",this._state===o?1:0)},_initCallbacks:function(){this.pullDownCallbacks=n.Callbacks(),this.releaseCallbacks=n.Callbacks(),this.reachBottomCallbacks=n.Callbacks()},_updateBounds:function(){var n=this._direction!=="horizontal";this._topPocketSize=n?this._$topPocket[this._dimension]():0,this._bottomPocketSize=n?this._$bottomPocket[this._dimension]():0,this._updateOffsets()},_updateOffsets:function(){this._minOffset=h.min(this._containerSize()-this._contentSize()+this._bottomPocketSize,-this._topPocketSize),this._maxOffset=-this._topPocketSize,this._bottomBound=this._minOffset-this._bottomPocketSize},_updateScrollbar:function(){this._scrollbar.option({containerSize:this._containerSize(),contentSize:this._contentSize()-this._topPocketSize-this._bottomPocketSize})},_moveContent:function(){this.callBase(),this._isPullDown()?this._pullDownReady():this._isReachBottom()?this._reachBottomReady():this._state!==r&&this._stateReleased()},_moveScrollbar:function(){this._scrollbar.moveTo(this._topPocketSize+this._location)},_isPullDown:function(){return this._pullDownEnabled&&this._location>=0},_isReachBottom:function(){return this._reachBottomEnabled&&this._location<=this._bottomBound},_scrollComplete:function(){this._inBounds()&&this._state===u?this._pullDownRefreshing():this._inBounds()&&this._state===s?this._reachBottomLoading():this.callBase()},_reachBottomReady:function(){this._state!==s&&(this._state=s,this._minOffset=h.min(this._containerSize()-this._contentSize(),0))},_reachBottomLoading:function(){this.reachBottomCallbacks.fire()},_pullDownReady:function(){this._state!==u&&(this._state=u,this._maxOffset=0,this._$pullDown.addClass(e),this._refreshPullDownText())},_stateReleased:function(){this._state!==r&&(this._releaseState(),this._updateOffsets(),this._$pullDown.removeClass(c).removeClass(e),this.releaseCallbacks.fire())},_pullDownRefreshing:function(){this._state!==o&&(this._state=o,this._$pullDown.addClass(c).removeClass(e),this._refreshPullDownText(),this.pullDownCallbacks.fire())},_handleRelease:function(){return this._state===r&&this._moveToBounds(),this._update(),t.utils.executeAsync(n.proxy(this._release,this))},_release:function(){this._stateReleased(),this._scrollComplete()},_handleReachBottomEnabling:function(n){this._reachBottomEnabled!==n&&(this._reachBottomEnabled=n,this._updateBounds())},_handlePullDownEnabling:function(n){this._pullDownEnabled!==n&&(this._pullDownEnabled=n,this._considerTopPocketChange(),this._handleUpdate())},_considerTopPocketChange:function(){this._location-=this._$topPocket.height()||-this._topPocketSize,this._move()},_handlePendingRelease:function(){this._state=u}}),p=f.SimulatedScrollableStrategy.inherit({_init:function(n){this.callBase(n),this._$pullDown=n._$pullDown,this._$topPocket=n._$topPocket,this._$bottomPocket=n._$bottomPocket,this._initCallbacks()},_initCallbacks:function(){this.pullDownCallbacks=n.Callbacks(),this.releaseCallbacks=n.Callbacks(),this.reachBottomCallbacks=n.Callbacks()},render:function(){this._renderPullDown(),this.callBase()},_renderPullDown:function(){var i=n("<div>").addClass(l),r=n("<div>").addClass(a),u=n("<div>").dxLoadIndicator(),t=this._$pullDownText=n("<div>").addClass(v);this._$pullingDownText=n("<div>").text(this.option("pullingDownText")).appendTo(t),this._$pulledDownText=n("<div>").text(this.option("pulledDownText")).appendTo(t),this._$refreshingText=n("<div>").text(this.option("refreshingText")).appendTo(t),this._$pullDown.empty().append(i).append(r.append(u)).append(t)},pullDownEnable:function(n){this._handleEvent("PullDownEnabling",n)},reachBottomEnable:function(n){this._handleEvent("ReachBottomEnabling",n)},_createScroller:function(n){var t=this,i=t._scrollers[n]=new y(t._scrollerOptions(n));i.pullDownCallbacks.add(function(){t.pullDownCallbacks.fire()}),i.releaseCallbacks.add(function(){t.releaseCallbacks.fire()}),i.reachBottomCallbacks.add(function(){t.reachBottomCallbacks.fire()})},_scrollerOptions:function(t){return n.extend(this.callBase(t),{$topPocket:this._$topPocket,$bottomPocket:this._$bottomPocket,$pullDown:this._$pullDown,$pullDownText:this._$pullDownText,$pullingDownText:this._$pullingDownText,$pulledDownText:this._$pulledDownText,$refreshingText:this._$refreshingText})},pendingRelease:function(){this._handleEvent("PendingRelease")},release:function(){return this._handleEvent("Release").done(this._updateAction)}});f.scrollViewRefreshStrategies.simulated=p}(jQuery,DevExpress),function(n,t,i){var r=t.ui,o=r.events,f=t.utils,c=t.support.winJS,s=f.wrapToArray,u=f.removeDublicates,v=t.inflector.titleize,e;r.MapProvider=t.Class.inherit({_defaultRouteWeight:function(){return 5},_defaultRouteOpacity:function(){return.5},_defaultRouteColor:function(){return"#0000FF"},ctor:function(n,t){this._mapWidget=n,this._$container=t},load:n.noop,render:function(){var i=n.Deferred(),t=this;return this._renderImpl().done(function(){var r=t.addMarkers(t._option("markers")),u=t.addRoutes(t._option("routes"));n.when(r,u).done(function(){i.resolve(!0)})}),i.promise()},_renderImpl:t.abstract,updateDimensions:t.abstract,updateMapType:t.abstract,updateCenter:t.abstract,updateZoom:t.abstract,updateControls:t.abstract,updateMarkers:function(t,i){var r=n.Deferred(),u=this;return this.removeMarkers(t).done(function(){u.addMarkers(i).done(function(){r.resolve.apply(r,arguments)})}),r.promise()},addMarkers:t.abstract,removeMarkers:t.abstract,adjustViewport:t.abstract,updateRoutes:function(t,i){var r=n.Deferred(),u=this;return this.removeRoutes(t).done(function(){u.addRoutes(i).done(function(){r.resolve.apply(r,arguments)})}),r.promise()},addRoutes:t.abstract,removeRoutes:t.abstract,clean:t.abstract,cancelEvents:!1,map:function(){return this._map},mapRendered:function(){return!!this._map},_option:function(n,t){if(t===i)return this._mapWidget.option(n);this._mapWidget.setOptionSilent(n,t)},_keyOption:function(n){var t=this._option("key");return t[n]===i?t:t[n]},_parseTooltipOptions:function(n){return{text:n.text||n,visible:n.isShown||!1}},_addEventNamespace:function(n){return o.addNamespace(n,this._mapWidget.NAME)},_createAction:function(){var n=this._mapWidget;return n._createAction.apply(n,arguments)},_fireAction:function(n,t){var i=this._option(n);i&&this._createAction(i)(t)},_fireClickAction:function(n){this._fireAction("clickAction",n)},_fireMarkerAddedAction:function(n){this._fireAction("markerAddedAction",n)},_fireMarkerRemovedAction:function(n){this._fireAction("markerRemovedAction",n)},_fireRouteAddedAction:function(n){this._fireAction("routeAddedAction",n)},_fireRouteRemovedAction:function(n){this._fireAction("routeRemovedAction",n)}}),e={},r.registerMapProvider=function(n,t){e[n]=t};var l="dx-map",a="dx-map-container",h="dx-map-shield";t.registerComponent("dxMap",r.Widget.inherit({ctor:function(){this.callBase.apply(this,arguments),this.addMarker=n.proxy(this._addFunction,this,"markers"),this.removeMarker=n.proxy(this._removeFunction,this,"markers"),this.addRoute=n.proxy(this._addFunction,this,"routes"),this.removeRoute=n.proxy(this._removeFunction,this,"routes")},_addFunction:function(t,i){var u=n.Deferred(),e=this,f=n.Deferred(),r=this.option(t),o=s(i);return r.push.apply(r,o),this._notificationDeffered=f,this.option(t,r),f.done(function(n){u.resolveWith(e,n&&n.length>1?[n]:n)}),u.promise()},_removeFunction:function(t,i){var u=n.Deferred(),e=this,f=n.Deferred(),r=this.option(t),o=s(i);return n.each(o,function(t,i){var u=n.isNumeric(i)?i:n.inArray(i,r);u!==-1&&r.splice(u,1)}),this._notificationDeffered=f,this.option(t,r),f.done(function(){u.resolveWith(e)}),u.promise()},_deprecatedOptions:{location:{since:"14.1",message:"Use the 'center' option instead."}},_optionAliases:{center:"location"},_setDefaultOptions:function(){this.callBase(),this.option({center:{lat:0,lng:0},location:{lat:0,lng:0},width:300,height:300,zoom:1,type:"roadmap",provider:"google",autoAdjust:!0,markers:[],markerIconSrc:null,markerAddedAction:null,markerRemovedAction:null,routes:[],routeAddedAction:null,routeRemovedAction:null,key:{bing:"",google:"",googleStatic:""},controls:!1,readyAction:null,updateAction:null,clickAction:null})},_init:function(){this._checkMarkersOption(this.option("markers")),this._checkRoutesOption(this.option("routes")),this.callBase(),this._initContainer(),this._grabEvents(),this._initProvider(),this._cleanRenderedMarkers(),this._cleanRenderedRoutes()},_cleanRenderedMarkers:function(){this._renderedMarkers=[]},_cleanRenderedRoutes:function(){this._renderedRoutes=[]},_checkMarkersOption:function(t){if(!n.isArray(t))throw new Error("Markers option should be an array");},_checkRoutesOption:function(t){if(!n.isArray(t))throw new Error("Routes option should be an array");},_visibilityChanged:function(n){n&&this._dimensionChanged()},_dimensionChanged:function(){this._execAsyncProviderAction("updateDimensions")},_initContainer:function(){this._$container=n("<div />").addClass(a),this._element().append(this._$container)},_grabEvents:function(){var t=o.addNamespace("dxpointerdown",this.NAME);this._element().on(t,n.proxy(this._cancelEvent,this))},_cancelEvent:function(n){var i=this._provider.cancelEvents&&!this.option("disabled");!t.designMode&&i&&n.stopPropagation()},_initProvider:function(){var n=this.option("provider");if(c&&this.option("provider")==="google")throw new Error("Google provider cannot be used in winJS application");this._cleanProvider(),this._provider=new e[n](this,this._$container),this._mapLoader=this._provider.load()},_render:function(){this.callBase(),this._element().addClass(l),this._renderShield(),this._execAsyncProviderAction("render").done(n.proxy(function(){this._saveRenderedMarkers(),this._saveRenderedRoutes()},this))},_saveRenderedMarkers:function(n){n=n||this.option("markers"),this._renderedMarkers=n.slice()},_saveRenderedRoutes:function(n){n=n||this.option("routes"),this._renderedRoutes=n.slice()},_renderShield:function(){var i;t.designMode||this.option("disabled")?(i=n("<div/>").addClass(h),this._element().append(i)):(i=this._element().find("."+h),i.remove())},_clean:function(){this._cleanProvider(),this._cleanRenderedMarkers(),this._cleanRenderedRoutes()},_cleanProvider:function(){this._provider&&this._provider.clean()},_optionChanged:function(t,i,r){if(!this._cancelOptionChange){var e=this._notificationDeffered;delete this._notificationDeffered;switch(t){case"disabled":this._renderShield(),this.callBase.apply(this,arguments);break;case"width":case"height":this.callBase.apply(this,arguments),this._dimensionChanged();break;case"type":this._execAsyncProviderAction("updateMapType");break;case"center":this._execAsyncProviderAction("updateCenter");break;case"zoom":this._execAsyncProviderAction("updateZoom");break;case"controls":this._execAsyncProviderAction("updateControls");break;case"markers":this._checkMarkersOption(i),this._execAsyncProviderAction("updateMarkers",n.proxy(function(){return e?u(this._renderedMarkers,i):this._renderedMarkers},this),n.proxy(function(){return e?u(i,this._renderedMarkers):i},this)).done(n.proxy(function(){this._saveRenderedMarkers(i),e&&e.resolve.apply(e,arguments)},this));break;case"markerIconSrc":this._execAsyncProviderAction("updateMarkers",r,i);break;case"autoAdjust":this._execAsyncProviderAction("adjustViewport");break;case"routes":this._checkRoutesOption(i),this._execAsyncProviderAction("updateRoutes",n.proxy(function(){return e?u(this._renderedRoutes,i):this._renderedRoutes},this),n.proxy(function(){return e?u(i,this._renderedRoutes):i},this)).done(n.proxy(function(){this._saveRenderedRoutes(i),e&&e.resolve.apply(e,arguments)},this));break;case"key":f.logger.warn("Key option can not be modified after initialization");case"provider":this._initProvider(),this._invalidate();break;case"readyAction":case"updateAction":case"markerAddedAction":case"markerRemovedAction":case"routeAddedAction":case"routeRemovedAction":case"clickAction":break;default:this.callBase.apply(this,arguments)}}},_execAsyncProviderAction:function(t){if(!this._provider.mapRendered()&&!(t==="render"))return n.when(i).promise();var r=n.Deferred(),f=this,u=n.makeArray(arguments).slice(1);return n.when(this._mapLoader).done(function(){var i=f._provider;n.each(u,function(t,i){n.isFunction(i)&&(u[t]=i())}),i[t].apply(i,u).done(function(t){r.resolve.apply(r,n.makeArray(arguments).slice(1)),t&&f._triggerReadyAction()})}),r.promise()},_triggerReadyAction:function(){this._createActionByOption("readyAction")({originalMap:this._provider.map()})},_triggerUpdateAction:function(){this._createActionByOption("updateAction")()},setOptionSilent:function(n,t){this._cancelOptionChange=!0,this.option(n,t),this._cancelOptionChange=!1}}))}(jQuery,DevExpress),function(n,t,i){var f=t.ui,o=t.support.winJS,r="_bingScriptReady",s="https://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&s=1&onScriptLoad="+r,h="ms-appx:///Bing.Maps.JavaScript/js/veapicore.js",c="ms-appx:///Bing.Maps.JavaScript/js/veapiModules.js",l="AhuxC0dQ1DBTNo8L-H9ToVMQStmizZzBJdraTSgCzDSWPsA1Qd8uIvFSflzxdaLH",e=1e-16,u;f.registerMapProvider("bing",f.MapProvider.inherit({_mapType:function(n){var t={roadmap:Microsoft.Maps.MapTypeId.road,hybrid:Microsoft.Maps.MapTypeId.aerial};return t[n]||t.roadmap},_movementMode:function(n){var t={driving:Microsoft.Maps.Directions.RouteMode.driving,walking:Microsoft.Maps.Directions.RouteMode.walking};return t[n]||t.driving},_resolveLocation:function(t){var i=n.Deferred(),r,u;return typeof t=="string"?(r=new Microsoft.Maps.Search.SearchManager(this._map),u={where:t,count:1,callback:function(n){var t=n.results[0].location;i.resolve(new Microsoft.Maps.Location(t.latitude,t.longitude))}},r.geocode(u)):n.isPlainObject(t)&&n.isNumeric(t.lat)&&n.isNumeric(t.lng)?i.resolve(new Microsoft.Maps.Location(t.lat,t.lng)):n.isArray(t)&&i.resolve(new Microsoft.Maps.Location(t[0],t[1])),i.promise()},_normalizeLocation:function(n){return{lat:n.latitude,lng:n.longitude}},load:function(){return u||(u=n.Deferred(),window[r]=n.proxy(this._mapReady,this),o?n.when(n.getScript(h),n.getScript(c)).done(function(){Microsoft.Maps.loadModule("Microsoft.Maps.Map",{callback:window[r]})}):n.getScript(s)),this._markers=[],this._routes=[],u},_mapReady:function(){try{delete window[r]}catch(e){window[r]=i}var t=n.Deferred(),f=n.Deferred();Microsoft.Maps.loadModule("Microsoft.Maps.Search",{callback:n.proxy(t.resolve,t)}),Microsoft.Maps.loadModule("Microsoft.Maps.Directions",{callback:n.proxy(f.resolve,f)}),n.when(t,f).done(function(){u.resolve()})},_renderImpl:function(){var r=n.Deferred(),t=n.Deferred(),i=this._option("controls"),e={credentials:this._keyOption("bing")||l,mapTypeId:this._mapType(this._option("type")),zoom:this._option("zoom"),showDashboard:i,showMapTypeSelector:i,showScalebar:i},u,f;return this._map=new Microsoft.Maps.Map(this._$container[0],e),u=Microsoft.Maps.Events.addHandler(this._map,"tiledownloadcomplete",n.proxy(t.resolve,t)),this._viewChangeHandler=Microsoft.Maps.Events.addHandler(this._map,"viewchange",n.proxy(this._handleViewChange,this)),this._clickHandler=Microsoft.Maps.Events.addHandler(this._map,"click",n.proxy(this._handleClickAction,this)),f=this._renderCenter(),n.when(t,f).done(function(){Microsoft.Maps.Events.removeHandler(u),r.resolve()}),r.promise()},_handleViewChange:function(){var n=this._map.getCenter();this._option("center",this._normalizeLocation(n)),this._preventZoomChangeEvent||this._option("zoom",this._map.getZoom())},updateDimensions:function(){return this._map.setOptions({width:this._$container.width(),height:this._$container.height()}),n.Deferred().resolve().promise()},updateMapType:function(){return this._map.setView({mapTypeId:this._mapType(this._option("type"))}),n.Deferred().resolve().promise()},updateCenter:function(){return this._renderCenter()},_renderCenter:function(){var t=n.Deferred(),i=this;return this._resolveLocation(this._option("center")).done(function(n){i._map.setView({animate:!1,center:n}),t.resolve()}),t.promise()},updateZoom:function(){return this._map.setView({animate:!1,zoom:this._option("zoom")}),n.Deferred().resolve().promise()},updateControls:function(){return this.clean(),this.render()},addMarkers:function(t){var i=n.Deferred(),r=this,u=n.map(t,function(n){return r._addMarker(n)});return n.when.apply(n,u).done(function(){var t=n.map(n.makeArray(arguments),function(n){return n.pushpin});i.resolve(!1,t)}),i.promise()},_addMarker:function(t){var i=this;return this._renderMarker(t).done(function(r){i._markers.push(n.extend({options:t},r)),i._updateMarkersBounds(),i._fitBounds(),i._fireMarkerAddedAction({options:t,originalMarker:r.pushpin})})},_renderMarker:function(t){var r=n.Deferred(),i=this;return this._resolveLocation(t.location).done(function(u){var e=new Microsoft.Maps.Pushpin(u,{icon:t.iconSrc||i._option("markerIconSrc")}),f,o,s,h;i._map.entities.push(e),f=i._renderTooltip(u,t.tooltip),(t.clickAction||t.tooltip)&&(s=i._createAction(t.clickAction||n.noop),h=i._normalizeLocation(u),o=Microsoft.Maps.Events.addHandler(e,"click",function(){s({location:h}),f&&f.setOptions({visible:!0})})),r.resolve({location:u,pushpin:e,infobox:f,handler:o})}),r.promise()},_renderTooltip:function(n,t){if(t){t=this._parseTooltipOptions(t);var i=new Microsoft.Maps.Infobox(n,{description:t.text,offset:new Microsoft.Maps.Point(0,33),visible:t.visible});return this._map.entities.push(i,null),i}},removeMarkers:function(t){var i=this;return n.each(t,function(n,t){i._removeMarker(t)}),n.Deferred().resolve().promise()},_removeMarker:function(t){var i=this;n.each(this._markers,function(n,r){if(r.options!==t)return!0;var u=i._markers[n];return i._map.entities.remove(u.pushpin),u.infobox&&i._map.entities.remove(u.infobox),u.handler&&Microsoft.Maps.Events.removeHandler(u.handler),i._markers.splice(n,1),i._updateMarkersBounds(),i._fitBounds(),i._fireMarkerRemovedAction({options:t}),!1})},_updateMarkersBounds:function(){var t=this;this._clearBounds(),n.each(this._markers,function(n,i){t._extendBounds(i.location)})},_clearMarkers:function(){for(var n=0;this._markers.length>0;)this._removeMarker(this._markers[0].options)},adjustViewport:function(){return this._fitBounds()},_clearBounds:function(){this._bounds=null},_extendBounds:function(n){this._bounds=this._bounds?new Microsoft.Maps.LocationRect.fromLocations(this._bounds.getNorthwest(),this._bounds.getSoutheast(),n):new Microsoft.Maps.LocationRect(n,e,e)},_fitBounds:function(){var u=this._option("autoAdjust"),i,t,r;return this._bounds&&u&&(i=this._map.getZoom(),this._preventZoomChangeEvent=!0,t=this._bounds.clone(),t.height=t.height*1.1,t.width=t.width*1.1,this._map.setView({animate:!1,bounds:t}),r=this._map.getZoom(),i<r?this._map.setView({animate:!1,zoom:i}):this._option("zoom",r),delete this._preventZoomChangeEvent),n.Deferred().resolve().promise()},addRoutes:function(t){var i=n.Deferred(),r=this,u=n.map(t,function(n){return r._addRoute(n)});return n.when.apply(n,u).done(function(){i.resolve(!1,n.makeArray(arguments))}),i.promise()},_addRoute:function(n){var t=this;return this._renderRoute(n).done(function(i){t._routes.push({options:n,instance:i}),t._fireRouteAddedAction({options:n,originalRoute:i})})},_renderRoute:function(i){var u=n.Deferred(),r=this,f=n.map(i.locations,function(n){return r._resolveLocation(n)});return n.when.apply(n,f).done(function(){var s=n.makeArray(arguments),f=new Microsoft.Maps.Directions.DirectionsManager(r._map),h=new t.Color(i.color||r._defaultRouteColor()).toHex(),e=new Microsoft.Maps.Color.fromHex(h),o;e.a=(i.opacity||r._defaultRouteOpacity())*255,f.setRenderOptions({autoUpdateMapView:!1,displayRouteSelector:!1,waypointPushpinOptions:{visible:!1},drivingPolylineOptions:{strokeColor:e,strokeThickness:i.weight||r._defaultRouteWeight()},walkingPolylineOptions:{strokeColor:e,strokeThickness:i.weight||r._defaultRouteWeight()}}),f.setRequestOptions({routeMode:r._movementMode(i.mode),routeDraggable:!1}),n.each(s,function(n,t){var i=new Microsoft.Maps.Directions.Waypoint({location:t});f.addWaypoint(i)}),o=Microsoft.Maps.Events.addHandler(f,"directionsUpdated",function(){Microsoft.Maps.Events.removeHandler(o),u.resolve(f)}),f.calculateDirections()}),u.promise()},removeRoutes:function(t){var i=this;return n.each(t,function(n,t){i._removeRoute(t)}),n.Deferred().resolve().promise()},_removeRoute:function(t){var i=this;n.each(this._routes,function(n,r){return r.options!==t?!0:(i._routes[n].instance.dispose(),i._routes.splice(n,1),i._fireRouteRemovedAction({options:t}),!1)})},_clearRoutes:function(){for(var n=0;this._routes.length>0;)this._removeRoute(this._routes[0].options)},_handleClickAction:function(n){if(n.targetType=="map"){var t=new Microsoft.Maps.Point(n.getX(),n.getY()),i=n.target.tryPixelToLocation(t);this._fireClickAction({location:this._normalizeLocation(i)})}},clean:function(){this._map&&(Microsoft.Maps.Events.removeHandler(this._viewChangeHandler),Microsoft.Maps.Events.removeHandler(this._clickHandler),this._clearMarkers(),this._clearRoutes(),this._map.dispose())},cancelEvents:!0}))}(jQuery,DevExpress),function(n,t,i){var f=t.ui,r="_googleScriptReady",e="https://maps.google.com/maps/api/js?v=3.9&sensor=false&callback="+r,u;f.registerMapProvider("google",f.MapProvider.inherit({_mapType:function(n){var t={hybrid:google.maps.MapTypeId.HYBRID,roadmap:google.maps.MapTypeId.ROADMAP};return t[n]||t.hybrid},_movementMode:function(n){var t={driving:google.maps.TravelMode.DRIVING,walking:google.maps.TravelMode.WALKING};return t[n]||t.driving},_resolveLocation:function(t){var i=n.Deferred(),r;return typeof t=="string"?(r=new google.maps.Geocoder,r.geocode({address:t},function(n,t){t===google.maps.GeocoderStatus.OK&&i.resolve(n[0].geometry.location)})):n.isArray(t)?i.resolve(new google.maps.LatLng(t[0],t[1])):n.isPlainObject(t)&&n.isNumeric(t.lat)&&n.isNumeric(t.lng)&&i.resolve(new google.maps.LatLng(t.lat,t.lng)),i.promise()},_normalizeLocation:function(n){return{lat:n.lat(),lng:n.lng()}},load:function(){if(!u){u=n.Deferred();var t=this._keyOption("google");window[r]=n.proxy(this._mapReady,this),n.getScript(e+(t?"&key="+t:""))}return this._markers=[],this._routes=[],u.promise()},_mapReady:function(){try{delete window[r]}catch(n){window[r]=i}u.resolve()},_renderImpl:function(){var r=n.Deferred(),i=n.Deferred(),t=this._option("controls"),e={zoom:this._option("zoom"),center:new google.maps.LatLng(0,0),mapTypeId:this._mapType(this._option("type")),panControl:t,zoomControl:t,mapTypeControl:t,streetViewControl:t},u,f;return this._map=new google.maps.Map(this._$container[0],e),u=google.maps.event.addListener(this._map,"idle",n.proxy(i.resolve,i)),this._zoomChangeListener=google.maps.event.addListener(this._map,"zoom_changed",n.proxy(this._handleZoomChange,this)),this._centerChangeListener=google.maps.event.addListener(this._map,"center_changed",n.proxy(this._handleCenterChange,this)),this._clickListener=google.maps.event.addListener(this._map,"click",n.proxy(this._handleClickAction,this)),f=this._renderCenter(),n.when(i,f).done(function(){google.maps.event.removeListener(u),r.resolve()}),r.promise()},updateDimensions:function(){return google.maps.event.trigger(this._map,"resize"),n.Deferred().resolve().promise()},updateMapType:function(){return this._map.setMapTypeId(this._mapType(this._option("type"))),n.Deferred().resolve().promise()},updateCenter:function(){return this._renderCenter()},_handleCenterChange:function(){var n=this._map.getCenter();this._option("center",this._normalizeLocation(n))},_renderCenter:function(){var t=n.Deferred(),i=this;return this._resolveLocation(this._option("center")).done(function(n){i._map.setCenter(n),t.resolve()}),t.promise()},_handleZoomChange:function(){this._preventZoomChangeEvent||this._option("zoom",this._map.getZoom())},updateZoom:function(){return this._map.setZoom(this._option("zoom")),n.Deferred().resolve().promise()},updateControls:function(){var t=this._option("controls");return this._map.setOptions({panControl:t,zoomControl:t,mapTypeControl:t,streetViewControl:t}),n.Deferred().resolve().promise()},addMarkers:function(t){var i=n.Deferred(),r=this,u=n.map(t,function(n){return r._addMarker(n)});return n.when.apply(n,u).done(function(){var t=n.map(n.makeArray(arguments),function(n){return n.marker});i.resolve(!1,t)}),i.promise()},_addMarker:function(t){var i=this;return this._renderMarker(t).done(function(r){i._markers.push(n.extend({options:t},r)),i._updateMarkersBounds(),i._fitBounds(),i._fireMarkerAddedAction({options:t,originalMarker:r.marker})})},_renderMarker:function(t){var r=n.Deferred(),i=this;return this._resolveLocation(t.location).done(function(u){var f=new google.maps.Marker({position:u,map:i._map,icon:t.iconSrc||i._option("markerIconSrc")}),e,o=i._renderTooltip(f,t.tooltip),s,h;(t.clickAction||t.tooltip)&&(s=i._createAction(t.clickAction||n.noop),h=i._normalizeLocation(u),e=google.maps.event.addListener(f,"click",function(){s({location:h}),o&&o.open(i._map,f)})),r.resolve({location:u,marker:f,listner:e})}),r.promise()},_renderTooltip:function(n,t){if(t){t=this._parseTooltipOptions(t);var i=new google.maps.InfoWindow({content:t.text});return t.visible&&i.open(this._map,n),i}},removeMarkers:function(t){var i=this;return n.each(t,function(n,t){i._removeMarker(t)}),n.Deferred().resolve().promise()},_removeMarker:function(t){var i=this;n.each(this._markers,function(n,r){if(r.options!==t)return!0;var u=i._markers[n];return u.marker.setMap(null),u.listner&&google.maps.event.removeListener(u.listner),i._markers.splice(n,1),i._updateMarkersBounds(),i._fitBounds(),i._fireMarkerRemovedAction({options:r.options}),!1})},_updateMarkersBounds:function(){var t=this;this._clearBounds(),n.each(this._markers,function(n,i){t._extendBounds(i.location)})},_clearMarkers:function(){for(var n=0;this._markers.length>0;)this._removeMarker(this._markers[0].options)},adjustViewport:function(){return this._fitBounds()},_extendBounds:function(n){this._bounds?this._bounds.extend(n):(this._bounds=new google.maps.LatLngBounds,this._bounds.extend(n))},_fitBounds:function(){var r=this._option("autoAdjust"),t,i;return this._bounds&&r&&(t=this._map.getZoom(),this._preventZoomChangeEvent=!0,this._map.fitBounds(this._bounds),i=this._map.getZoom(),t<i?this._map.setZoom(t):this._option("zoom",i),delete this._preventZoomChangeEvent),n.Deferred().resolve().promise()},_clearBounds:function(){this._bounds=null},addRoutes:function(t){var i=n.Deferred(),r=this,u=n.map(t,function(n){return r._addRoute(n)});return n.when.apply(n,u).done(function(){i.resolve(!1,n.makeArray(arguments))}),i.promise()},_addRoute:function(n){var t=this;return this._renderRoute(n).done(function(i){t._routes.push({options:n,instance:i}),t._fireRouteAddedAction({options:n,originalRoute:i})})},_renderRoute:function(i){var u=n.Deferred(),r=this,f=new google.maps.DirectionsService,e=n.map(i.locations,function(n){return r._resolveLocation(n)});return n.when.apply(n,e).done(function(){var e=n.makeArray(arguments),o=e.shift(),s=e.pop(),h=n.map(e,function(n){return{location:n,stopover:!0}}),c={origin:o,destination:s,waypoints:h,optimizeWaypoints:!0,travelMode:r._movementMode(i.mode)};f.route(c,function(n,f){if(f===google.maps.DirectionsStatus.OK){var e=new t.Color(i.color||r._defaultRouteColor()).toHex(),o={directions:n,map:r._map,suppressMarkers:!0,preserveViewport:!0,polylineOptions:{strokeWeight:i.weight||r._defaultRouteWeight(),strokeOpacity:i.opacity||r._defaultRouteOpacity(),strokeColor:e}},s=new google.maps.DirectionsRenderer(o);u.resolve(s)}})}),u.promise()},removeRoutes:function(t){var i=this;return n.each(t,function(n,t){i._removeRoute(t)}),n.Deferred().resolve().promise()},_removeRoute:function(t){var i=this;n.each(this._routes,function(n,r){return r.options!==t?!0:(i._routes[n].instance.setMap(null),i._routes.splice(n,1),i._fireRouteRemovedAction({options:t}),!1)})},_clearRoutes:function(){for(var n=0;this._routes.length>0;)this._removeRoute(this._routes[0].options)},_handleClickAction:function(n){this._fireClickAction({location:this._normalizeLocation(n.latLng)})},clean:function(){this._map&&(google.maps.event.removeListener(this._zoomChangeListener),google.maps.event.removeListener(this._centerChangeListener),google.maps.event.removeListener(this._clickListener),this._clearMarkers(),this._clearRoutes(),delete this._map,this._$container.empty())},cancelEvents:!0}))}(jQuery,DevExpress),function(n,t){var r=t.ui,u="https://maps.google.com/maps/api/staticmap?";r.registerMapProvider("googleStatic",r.MapProvider.inherit({_locationToString:function(t){return n.isPlainObject(t)?t.lat+","+t.lng:t.toString().replace(/ /g,"+")},_renderImpl:function(){return this._updateMap()},updateDimensions:function(){return this._updateMap()},updateMapType:function(){return this._updateMap()},updateCenter:function(){return this._updateMap()},updateZoom:function(){return this._updateMap()},updateControls:function(){return n.Deferred().resolve().promise()},addMarkers:function(t){var i=this;return this._updateMap().done(function(){n.each(t,function(n,t){i._fireMarkerAddedAction({options:t})})})},removeMarkers:function(t){var i=this;return this._updateMap().done(function(){n.each(t,function(n,t){i._fireMarkerRemovedAction({options:t})})})},adjustViewport:function(){return n.Deferred().resolve().promise()},addRoutes:function(t){var i=this;return this._updateMap().done(function(){n.each(t,function(n,t){i._fireRouteAddedAction({options:t})})})},removeRoutes:function(t){var i=this;return this._updateMap().done(function(){n.each(t,function(n,t){i._fireRouteRemovedAction({options:t})})})},clean:function(){this._$container.css("background-image","none"),this._$container.off(this._addEventNamespace("dxclick"))},mapRendered:function(){return!0},_updateMap:function(){var i=this._keyOption("googleStatic"),t=["sensor=false","size="+this._option("width")+"x"+this._option("height"),"maptype="+this._option("type"),"center="+this._locationToString(this._option("center")),"zoom="+this._option("zoom"),this._markersSubstring()],r;return t.push.apply(t,this._routeSubstrings()),i&&t.push("key="+i),r=u+t.join("&"),this._$container.css("background",'url("'+r+'") no-repeat 0 0'),this._attachClickEvent(),n.Deferred().resolve(!0).promise()},_markersSubstring:function(){var r=this,t=[],i=this._option("markerIconSrc");return i&&t.push("icon:"+i),n.each(this._option("markers"),function(n,i){t.push(r._locationToString(i.location))}),"markers="+t.join("|")},_routeSubstrings:function(){var i=this,r=[];return n.each(this._option("routes"),function(u,f){var o=new t.Color(f.color||i._defaultRouteColor()).toHex().replace("#","0x"),s=Math.round((f.opacity||i._defaultRouteOpacity())*255).toString(16),h=f.weight||i._defaultRouteWeight(),e=[];n.each(f.locations,function(n,t){e.push(i._locationToString(t))}),r.push("path=color:"+o+s+"|weight:"+h+"|"+e.join("|"))}),r},_attachClickEvent:function(){var t=this,n=this._addEventNamespace("dxclick");this._$container.off(n).on(n,function(n){t._fireClickAction({jQueryEvent:n})})}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,f=r.events,u="dxSwipeable",e="dx-swipeable",o={startAction:"dxswipestart",updateAction:"dxswipe",endAction:"dxswipeend",cancelAction:"dxswipecancel"};t.registerComponent(u,t.DOMComponent.inherit({NAMESPACE:r,_setDefaultOptions:function(){this.callBase(),this.option({elastic:!0,direction:"horizontal",itemSizeFunc:null,startAction:null,updateAction:null,endAction:null,cancelAction:null})},_render:function(){this.callBase(),this._element().addClass(e),this._attachEventHandlers()},_attachEventHandlers:function(){if(this._detachEventHanlers(),!this.option("disabled")){var t=this.NAME;this._createEventData(),n.each(o,n.proxy(function(n,i){var r=this._createActionByOption(n,{context:this,excludeValidators:["gesture"]});i=f.addNamespace(i,t);this._element().on(i,this._eventData,function(n){return r({jQueryEvent:n})})},this))}},_createEventData:function(){this._eventData={elastic:this.option("elastic"),itemSizeFunc:this.option("itemSizeFunc"),direction:this.option("direction")}},_detachEventHanlers:function(){this._element().off("."+u)},_optionChanged:function(n){switch(n){case"disabled":case"startAction":case"updateAction":case"endAction":case"cancelAction":case"elastic":case"itemSizeFunc":case"direction":this._detachEventHanlers(),this._attachEventHandlers();break;case"rtlEnabled":break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,f=r.events,e="dx-button",o="dx-button-content",u=".dx-button-content",s="dx-button-text",h="dx-button-has-text",c="dx-button-has-icon",l=".dx-button-text",a="dx-button-back-arrow",v="dx-icon",y=".dx-icon",p=100;t.registerComponent("dxButton",r.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({clickAction:null,type:"normal",text:"",icon:"",iconSrc:"",hoverStateEnabled:!0})},_init:function(){this.callBase(),this._feedbackHideTimeout=p},_render:function(){this.callBase(),this._element().addClass(e).append(n("<div />").addClass(o)),this._renderClick(),this._renderIcon(),this._renderType(),this._renderText()},_renderClick:function(){var t=this,n=f.addNamespace("dxclick",this.NAME);this._clickAction=this._createActionByOption("clickAction");this._element().off(n).on(n,function(n){t._clickAction({jQueryEvent:n})})},_removeTypesCss:function(){var n=this._element().attr("class");n=n.replace(/\bdx-button-[-a-z0-9]+\b/gi,""),this._element().attr("class",n)},_renderIcon:function(){var f=this._element().find(u),i=f.find(y),t=this.option("icon"),r=this.option("iconSrc");(i.remove(),this.option("type")!=="back"||t||(t="back"),t||r)&&(t?i=n("<span />").addClass("dx-icon-"+t):r&&(i=n("<img />").attr("src",r)),f.prepend(i.addClass(v)),this._element().addClass(c))},_renderType:function(){var t=this.option("type");t&&this._element().addClass("dx-button-"+t),t==="back"&&this._element().prepend(n("<span />").addClass(a))},_renderText:function(){var r=this.option("text"),f=this._element().find(u),e=this.option("type")==="back",i=f.find(l);if(!r&&!e){i.remove();return}i.length||(i=n("<span />").addClass(s).appendTo(f)),i.text(r||t.localization.localizeString("@Back")),this._element().addClass(h)},_clean:function(){this.callBase(),this._removeTypesCss()},_optionChanged:function(n){switch(n){case"clickAction":this._renderClick();break;case"icon":case"iconSrc":this._renderIcon();break;case"text":this._renderText();break;case"type":this._invalidate();break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,f=r.events,e="dx-checkbox",o="dx-checkbox-icon",s="dx-checkbox-checked",h="dx-checkbox-indeterminate",c=100,u=f.addNamespace("dxclick","dxCheckBox");t.registerComponent("dxCheckBox",r.dxEditor.inherit({_deprecatedOptions:{checked:{since:"14.1",message:"Use the 'value' option instead."}},_optionAliases:{checked:"value"},_setDefaultOptions:function(){this.callBase(),this.option({value:i,valueChangeAction:null,hoverStateEnabled:!0})},_init:function(){this.callBase(),this._feedbackHideTimeout=c},_render:function(){this.callBase(),this._element().addClass(e),this._$iconContainer=n("<span />"),this._$iconContainer.addClass(o).appendTo(this._element()),this._renderValue(),this._renderClick(),this._updateContentSize()},_renderDimensions:function(){this.callBase(),this._updateContentSize()},_updateContentSize:function(){var r=this._element(),t=this.option("width"),i=this.option("height"),n;this._$iconContainer&&(t||i)&&(t=this._element().width(),i=this._element().height(),n=Math.min(i,t),this._$iconContainer.css({height:n,width:n,"margin-top":(i-n)/2,"margin-left":(t-n)/2}))},_renderClick:function(){var n=this._createAction(this._handleClick);this._element().off(u).on(u,function(t){n({jQueryEvent:t})})},_handleClick:function(n){var t=n.component;t._valueChangeEventInstance=n.jQueryEvent,t.option("value",!t.option("value"))},_renderValue:function(){var n=this._element(),t=this.option("value"),r=t===i;n.toggleClass(s,Boolean(t)),n.toggleClass(h,r)},_optionChanged:function(n){switch(n){case"value":this._renderValue();default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t,i){var e=t.ui,r=e.events,s="dx-texteditor",u="dx-texteditor-input",h="."+u,c="dx-texteditor-border",l="dx-placeholder",a="dx-show-clear-button",v="dx-icon-clear",y="dx-clear-button-area",p="dx-texteditor-empty",f="dx-state-focused",o=["focusIn","focusOut","keyDown","keyPress","keyUp","change","cut","copy","paste","input"],w=function(){return t.browser.msie&&t.browser.version>9||!t.browser.msie}();t.registerComponent("dxTextEditor",e.dxEditor.inherit({_deprecatedOptions:{valueUpdateEvent:{since:"14.1",message:"Use the 'valueChangeEvent' option instead."},valueUpdateAction:{since:"14.1",message:"Use the 'valueChangeAction' option instead."}},_optionAliases:{valueUpdateEvent:"valueChangeEvent"},_setDefaultOptions:function(){this.callBase(),this.option({value:"",showClearButton:!1,valueChangeEvent:"change",valueUpdateAction:null,placeholder:"",readOnly:!1,focusInAction:null,focusOutAction:null,keyDownAction:null,keyPressAction:null,keyUpAction:null,changeAction:null,inputAction:null,cutAction:null,copyAction:null,pasteAction:null,enterKeyAction:null,mode:"text",activeStateEnabled:!1,hoverStateEnabled:!0})},_input:function(){return this._element().find(h)},_render:function(){this._element().addClass(s),this._renderInput(),this._renderInputType(),this._renderValue(),this._renderProps(),this._renderPlaceholder(),this._renderEvents(),this._toggleClearButton(),this._renderEnterKeyAction(),this._renderEmptinessEvent(),this._renderFocusEvent(),this.callBase()},_renderInput:function(t){(t||this._element()).append(n("<div>").addClass(c).append(n("<input>").addClass(u)))},_renderValue:function(n){var t=n||this.option("value");this._input().val()!==t&&(this._input().val(t),this._toggleEmptinessEventHandler())},_isValueValid:function(){var n=this._input().get(0).validity;return n?n.valid:!0},_toggleEmptiness:function(n){this._element().toggleClass(p,n)},_togglePlaceholderVisibility:function(n){this._$placeholder&&(t.browser.msie?this._$placeholder.toggle(!this._input().is(":focus")&&n):this._$placeholder.toggle(n))},_renderProps:function(){this._input().prop({readOnly:this._readOnlyPropValue(),disabled:this.option("disabled")})},_readOnlyPropValue:function(){return this.option("readOnly")},_renderPlaceholder:function(){var i=this,u=i._input(),f=i.option("placeholder"),t=this._$placeholder=n("<div>").attr("data-dx_placeholder",f),e=r.addNamespace("dxclick",this.NAME);t.on(e,function(){u.focus()});t.appendTo(u.parent()),t.addClass(l)},_toggleClearButton:function(){if(w){var t=this._element(),n=this.option("showClearButton")&&!this.option("readOnly");t.toggleClass(a,n),n?this._renderClearButton():this._$clearButton&&this._$clearButton.remove()}},_renderClearButton:function(){var t=n("<span>").addClass(y).append(n("<span>").addClass(v)).on(r.addNamespace("dxpointerdown",this.NAME),function(){return!1}).on(r.addNamespace("dxpointerup",this.NAME),n.proxy(this._handleClearValue,this));this._element().append(t),this._$clearButton=t},_handleClearValue:function(){var n=this._input();this.option("value",""),n.is(":focus")?(n.val(""),this._toggleEmptinessEventHandler()):n.trigger("focus")},_renderEvents:function(){var t=this,i=t._input();t._renderValueUpdateEvent(),n.each(o,function(n,u){var f=r.addNamespace(u.toLowerCase(),t.NAME),e=t._createActionByOption(u+"Action");i.off(f).on(f,function(n){e({jQueryEvent:n})})})},_renderValueUpdateEvent:function(){var t=this.NAME+"ValueUpdate",i=r.addNamespace(this.option("valueChangeEvent"),t);this._input().off("."+t).on(i,n.proxy(this._handleValueChangeEvent,this));this._valueUpdateAction=this._createActionByOption("valueUpdateAction")},_renderFocusEvent:function(){var i=this._element();if(i.find("."+u).focusin(function(){i.addClass(f)}).focusout(function(){i.removeClass(f)}).filter(":focus").addClass(f),t.browser.msie)this._input().on("focus",n.proxy(function(){this._togglePlaceholderVisibility(!1)},this))},_renderEmptinessEvent:function(){var t=this._input();t.on("input blur",n.proxy(this._toggleEmptinessEventHandler,this));this._toggleEmptinessEventHandler()},_toggleEmptinessEventHandler:function(n){var n=this._input().val(),t=(n===""||n===null)&&this._isValueValid();this._toggleEmptiness(t),this._togglePlaceholderVisibility(t)},_handleValueChangeEvent:function(n,t){this._valueChangeEventInstance=n,this._suppressValueUpdateAction=!0,this.option("value",arguments.length>1?t:this._input().val()),this._suppressValueUpdateAction=!1,this._valueUpdateAction({value:this.option("value"),jQueryEvent:n})},_renderEnterKeyAction:function(){if(this.option("enterKeyAction")){this._enterKeyAction=this._createActionByOption("enterKeyAction");this._input().on("keyup.enterKey.dxTextEditor",n.proxy(this._handleEnterKeyUp,this))}else this._input().off("keyup.enterKey.dxTextEditor"),this._enterKeyAction=i},_handleEnterKeyUp:function(n){n.which===13&&this._enterKeyAction({jQueryEvent:n})},_toggleDisabledState:function(){this.callBase.apply(this,arguments),this._renderProps()},_updateValue:function(){this._renderValue(),this._suppressValueUpdateAction||this._valueUpdateAction({value:this.option("value")})},_suppressUpdateValue:function(){this._valueUpdateSuppressed=!0},_resumeUpdateValue:function(){this._valueUpdateSuppressed=!1},_optionChanged:function(t){if(n.inArray(t.replace("Action",""),o)>-1){this._renderEvents();return}switch(t){case"valueChangeEvent":case"valueUpdateAction":this._renderValueUpdateEvent();break;case"readOnly":this._renderProps(),this._toggleClearButton();break;case"mode":this._renderInputType();break;case"enterKeyAction":this._renderEnterKeyAction();break;case"placeholder":this._invalidate();break;case"showClearButton":this._toggleClearButton();break;case"value":this._valueUpdateSuppressed||this._updateValue();default:this.callBase.apply(this,arguments)}},_renderInputType:function(){this._setInputType(this.option("mode"))},_setInputType:function(n){var t=this._input();n==="search"&&(n="text");try{t.prop("type",n)}catch(i){t.prop("type","text")}},focus:function(){this._input().focus()},blur:function(){this._input().is(document.activeElement)&&t.utils.resetActiveElement()}}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,u=r.events,e=t.devices,o=window.navigator.userAgent,s=[8,9,13,33,34,35,36,37,38,39,40,46],h="dx-textbox",f="dx-searchbox",c="dx-icon-search";t.registerComponent("dxTextBox",r.dxTextEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({mode:"text",maxLength:null})},_render:function(){this.callBase(),this._element().addClass(h),this._renderMaxLengthHandlers(),this._renderSearchMode()},_renderMaxLengthHandlers:function(){if(this._isAndroid())this._input().on(u.addNamespace("keydown",this.NAME),n.proxy(this._onKeyDownAndroidHandler,this)).on(u.addNamespace("change",this.NAME),n.proxy(this._onChangeAndroidHandler,this))},_renderProps:function(){if(this.callBase(),!this._isAndroid()){var n=this.option("maxLength");n>0&&this._input().prop("maxLength",n)}},_renderSearchMode:function(){var n=this._$element;this.option("mode")==="search"&&(this._renderSearchIcon(),n.addClass(f),this._showClearButton=this.option("showClearButton"),this.option("showClearButton",!0)),this.option("mode")!=="search"&&(n.removeClass(f),this._$searchIcon&&this._$searchIcon.remove(),this.option("showClearButton",this._showClearButton===i?this.option("showClearButton"):this._showClearButton))},_renderSearchIcon:function(){var t=n("<div>").addClass(c);t.prependTo(this._input().parent()),this._$searchIcon=t},_optionChanged:function(n){switch(n){case"maxLength":this._renderProps(),this._renderMaxLengthHandlers();break;case"mode":this._renderSearchMode();default:this.callBase.apply(this,arguments)}},_onKeyDownAndroidHandler:function(t){var r=this.option("maxLength"),i,u;return r?(i=n(t.target),u=t.keyCode,this._cutOffExtraChar(i),i.val().length<r||n.inArray(u,s)!==-1||window.getSelection().toString()!==""):!0},_onChangeAndroidHandler:function(t){var i=n(t.target);this.option("maxLength")&&this._cutOffExtraChar(i)},_cutOffExtraChar:function(n){var t=this.option("maxLength"),i=n.val();i.length>t&&n.val(i.substr(0,t))},_isAndroid:function(){var n=e.real(),t=n.version.join(".");return n.platform==="android"&&t&&/^(2\.|4\.1)/.test(t)&&!/chrome/i.test(o)}}))}(jQuery,DevExpress),function(n,t,i){var e=t.ui,r=e.events,l="dx-dropdowneditor",o="dx-dropdowneditor-readonly",a="dx-dropdowneditor-input-wrapper",v="dx-dropdowneditor-button",y="dx-dropdowneditor-icon",p="dx-dropdowneditor-overlay",s="dx-dropdowneditor-active",h="dx-dropdowneditor-button-visible",u=r.addNamespace("dxclick","dxDropDownEditor"),f=r.addNamespace("mousedown","dxDropDownEditor"),c={upArrow:38,downArrow:40};t.registerComponent("dxDropDownEditor",e.dxTextBox.inherit({_setDefaultOptions:function(){this.callBase(),this.option({openAction:null,closeAction:null})},open:function(){this._showDropDown()},close:function(){this._hideDropDown()},_clean:function(){this.callBase(),this._dropDownContainer&&(this._dropDownContainer.remove(),this._dropDown=i)},_render:function(){this._dropDownContainerRendered=!1,this._element().addClass(l),this._renderButton(),this.callBase(),this._renderKeyboardEvents();var n=this;this._input().on("blur",function(){n._hideOnBlur()&&!n._needToPreventBlur&&n._hideDropDown(),n._needToPreventBlur=!1})},_renderInput:function(t){this._inputWrapper=t||n("<div>"),this._inputWrapper.addClass(a),this._element().prepend(this._inputWrapper),this.callBase(this._inputWrapper)},_renderButton:function(t){this._button=n("<div>").addClass(v),this._attachButtonEvents(),this._updateButtonReadonlyState(),this._buttonIcon=n("<div>").addClass(y).appendTo(this._button),this._button.appendTo(this._element()),t?(this._element().removeClass(h),this._button.hide()):this._element().addClass(h)},_attachButtonEvents:function(){var n=this,t,i;if(this._button.off(u).off(f),!this.option("readOnly")){t=this._createAction(function(){n._toggleDropDown(),n._dropDownClickHandler()}),i=this._createAction(function(t){n._mouseDownFocusKeeper(t.jQueryEvent)});this._button.on(u,function(n){t({jQueryEvent:n})}).on(f,function(n){i({jQueryEvent:n})})}},_updateButtonReadonlyState:function(){this._button.removeClass(o),this.option("readOnly")&&this._button.addClass(o)},_renderKeyboardEvents:function(){this._input().off(r.addNamespace("keydown","dxDropDownEditor")).on(r.addNamespace("keydown","dxDropDownEditor"),n.proxy(this._onKeyDownHandler,this))},_dropDownClickHandler:function(){this._deviceHasTouchScreen()||this._input().is(":focus")||this.focus(),this._needToPreventBlur=!1},_mouseDownFocusKeeper:function(n){this._needToPreventBlur=!0,n&&n.preventDefault&&n.preventDefault()},_deviceHasTouchScreen:function(){var n=DevExpress.devices.real();return n.phone||n.tablet},_hideOnBlur:function(){return!0},_renderDropDownContent:function(){return[]},_dropDownVisible:function(){return this._dropDown&&this._dropDown.option("visible")},_toggleDropDown:function(){this._dropDownVisible()?this._hideDropDown():this._showDropDown()},_showDropDown:function(){this._dropDownVisible()||(this._renderDropDownContainer(),this._dropDown.show(),this._element().addClass(s))},_hideDropDown:function(){this._dropDownVisible()&&(this._element().removeClass(s),this._dropDown.hide())},_renderDropDownContainer:function(){var i=this,t;this._dropDownContainerRendered||(this._dropDownContainer=n("<div>").addClass(p).addClass(i.option("customOverlayCssClass")),this._element().append(this._dropDownContainer),this._createDropDown(),t=this._renderDropDownContent(),n.isArray(t)||(t=[t]),n.each(t,function(n,t){t.off(f).on(f,function(n){i._mouseDownFocusKeeper(n)}).off(u).on(u,function(){i._dropDownClickHandler()});i._dropDownContainer.append(t)}),this._dropDownContainerRendered=!0)},_createDropDown:function(t){this._dropDown=this._dropDownContainer.dxOverlay(n.extend(!0,{position:{offset:"0 -1",my:"left top",at:"left bottom",of:this._element(),collision:"flip flip"},showTitle:!1,width:"auto",height:"auto",shading:!1,rtlEnabled:this.option("rtlEnabled"),closeOnTargetScroll:n.proxy(this._closeOnScrollHandler,this),closeOnOutsideClick:n.proxy(this._closeOutsideDropDownHandler,this),animation:{show:!1,hide:!1},shownAction:this.option("openAction"),hiddenAction:this.option("closeAction")},t)).dxOverlay("instance")},_closeOnScrollHandler:function(){return this._hideDropDown(),!0},_closeOutsideDropDownHandler:function(t,i){return t.target===this._input()[0]||t.target===this._button[0]||this._button.find(n(t.target)).length||i&&this._dropDown._container().find(n(t.target)).length||this._hideDropDown(),!1},_onKeyDownHandler:function(n){n.altKey&&(n.which===c.downArrow&&this._showDropDown(),n.which===c.upArrow&&this._hideDropDown())},_optionChanged:function(n,t){switch(n){case"rtlEnabled":this.callBase.apply(this,arguments),this._dropDownContainerRendered&&this._dropDown.option(n,t);break;case"openAction":this._dropDownContainerRendered&&this._dropDown.option("shownAction",t);break;case"closeAction":this._dropDownContainerRendered&&this._dropDown.option("hiddenAction",t);break;case"readOnly":this._attachButtonEvents(),this._updateButtonReadonlyState();default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var u=t.ui,r=u.events,f="dx-textarea",e="dx-texteditor-input",o="dx-texteditor-border";t.registerComponent("dxTextArea",u.dxTextBox.inherit({_setDefaultOptions:function(){this.callBase(),this.option({})},_render:function(){this.callBase(),this._element().addClass(f)},_renderInput:function(){this._element().append(n("<div />").addClass(o).append(n("<textarea />").addClass(e))),this._renderScrollHandler()},_renderScrollHandler:function(){var n=this._input(),t=0;n.on(r.addNamespace("dxpointerdown",this.NAME),function(n){t=r.eventData(n).y});n.on(r.addNamespace("dxpointermove",this.NAME),function(i){var u=n.scrollTop(),f=n.prop("scrollHeight")-n.prop("clientHeight")-u;if(u!==0||f!==0){var e=r.eventData(i).y,o=u===0&&t>=e,s=f===0&&t<=e,h=u>0&&f>0;(o||s||h)&&(i.originalEvent.isScrollingEvent=!0),t=e}})},_renderInputType:n.noop}))}(jQuery,DevExpress),function(n,t,i){var f=t.ui,e=Math,u=f.events,o="dx-numberbox",r=o+"-spin",s=r+"-container",h=r+"-up",c=r+"-down",l=r+"-button",y="."+h,p="."+c,a=150,v=["Del","Backspace","Left","Right","Home","End"];t.registerComponent("dxSpinButton",f.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({direction:"up",changeAction:null})},_render:function(){this.callBase();var e=this,f=this._element(),t=u.addNamespace("dxpointerdown",this.NAME),i=r+"-"+this.option("direction");f.addClass(l).addClass(i).off(t).on(t,n.proxy(this._handleSpinHold,this));this._spinIcon=n("<div>").addClass(i+"-icon").appendTo(this._element()),this._handleSpinChange=this._createActionByOption("changeAction")},_handleSpinHold:function(t){t.preventDefault();var i=u.addNamespace("dxpointerup",this.NAME),r=u.addNamespace("dxpointercancel",this.NAME);this._clearTimer();n(document).off(i).off(r).on(i,n.proxy(this._clearTimer,this)).on(r,n.proxy(this._clearTimer,this));this._handleSpinChange({jQueryEvent:t}),this._holdTimer=setInterval(this._handleSpinChange,a,{jQueryEvent:t})},_dispose:function(){this._clearTimer(),this.callBase()},_clearTimer:function(){this._holdTimer&&clearInterval(this._holdTimer)},_optionChanged:function(n,t,i){switch(n){case"changeAction":case"direction":this._invalidate();break;default:this.callBase(n,t,i)}}})),t.registerComponent("dxNumberBox",f.dxTextEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({value:0,min:i,max:i,mode:"number",showSpinButtons:!1,step:1})},_init:function(){this.callBase(),this._initSpinButtons()},_initSpinButtons:function(){var t=u.addNamespace("dxpointerdown",this.NAME);this._$spinContainer=n("<div>").addClass(s).off(t).on(t,n.proxy(this._handleSpinButtonsClick,this)),this._$spinUp=n("<div>").dxSpinButton({direction:"up",changeAction:n.proxy(this._handleSpinUpChange,this)}).appendTo(this._$spinContainer),this._$spinDown=n("<div>").dxSpinButton({direction:"down",changeAction:n.proxy(this._handleSpinDownChange,this)}).appendTo(this._$spinContainer)},_handleSpinButtonsClick:function(){var n=this._input();document.activeElement!==n[0]&&n.trigger("focus")},_render:function(){this.callBase(),this._element().addClass(o),this._renderSpinButtons(),this._handleKeyPressEvent()},_handleKeyPressEvent:function(){var t=this;this._input().keypress(function(i){var r=String.fromCharCode(i.which),u=/[\d.,eE\-+]/,f=u.test(r);if(!f&&!(i.key&&n.inArray(i.key,v)>=0))return i.preventDefault(),!1;t._isIncompleteValue=!1,t._isValueIncomplete(t._input().val()+r)&&(t._isIncompleteValue=!0)})},_isValueIncomplete:function(n){var t=/\d+e$/,i=/^-/;return t.test(n)||i.test(n)},_renderSpinButtons:function(){this._element().toggleClass(r,this.option("showSpinButtons")),this.option("showSpinButtons")?this._$spinContainer.appendTo(this._element()):this._$spinContainer.detach()},_handleSpinUpChange:function(){this._handleSpinChangeValue(1)},_handleSpinDownChange:function(){this._handleSpinChangeValue(-1)},_handleSpinChangeValue:function(n){this._input().trigger(this.option("valueChangeEvent"));var t=parseFloat(this.option().value||0),i=parseFloat(this.option().step);t=this._correctRounding(t,i*n),this.option("value",t)},_correctRounding:function(n,t){var i=/[,|.](.*)/,r=i.test(n),u=i.test(t);if(r||u){var f=r?i.exec(n)[0].length:0,e=u?i.exec(t)[0].length:0,o=Math.max(f,e);return n=this._round(n+t,o)}return n+t},_round:function(n,t){t=t||0;var i=Math.pow(10,t);return n*=i,n=Math.round(n)/i},_renderValue:function(){var t=this.option("value")?this.option("value").toString():this.option("value"),n;this._input().val()!==t&&(n=this._input().attr("type"),this._setInputType("text"),this._input().val(this.option("value")),this._setInputType(n),this._toggleEmptinessEventHandler())},_renderProps:function(){this.callBase(),this._input().prop({min:this.option("min"),max:this.option("max"),step:this.option("step")})},_trimInputValue:function(){var i=this._input(),t=n.trim(i.val());t[t.length-1]==="."&&(t=t.slice(0,-1)),this._forceRefreshInputValue(t)},_inputInvalidHandler:function(){var n=this._input(),t=n.val();this._oldValue?(this.option("value",this._oldValue),n.val(this._oldValue),this._oldValue=null):(this.option("value",""),n.val(""))},_forceRefreshInputValue:function(n){var t=this._input();t.val("").val(n)},_renderValueUpdateEvent:function(){this.callBase(),this._input().focusout(n.proxy(this._trimInputValue,this))},_handleValueChangeEvent:function(t){var r=this._input(),i=n.trim(r.val()),u=r.get(0);if(i=i.replace(",","."),this._valueChangeEventInstance=t,!this._isIncompleteValue&&!this._validateValue(i)){this._inputInvalidHandler();return}if(i!==""){if(this._isIncompleteValue)return;if(i=this._parseValue(i),!i&&i!==0)return;this.callBase(t,i),r.val()!=i&&r.val(i)}else this.option("value","")},_validateValue:function(n){var t=this._isValueValid(),i,r;return!n&&t?(this.option("value",""),!0):(i=/^-?\d*\.?\d*$/.test(n),r=/^-?\d+e[-+]?\d+$/.test(n),this._oldValue=this.option("value"),!i&&!r&&!t)?!1:!0},_parseValue:function(n){var t=parseFloat(n);return this.option("min")!==i&&(t=e.max(t,this.option("min"))),this.option("max")!==i&&(t=e.min(t,this.option("max"))),t},_setValue:function(t,i){if(!t&&t!==0){this.option("value","");return}if(n.type(t)==="string"&&(t=t.replace(",",".")),t=this._parseValue(t),!t&&t!==0){this.option("value",i);return}this.option("value",t)},_invalidate:function(){this._$spinContainer.detach(),this.callBase()},_dispose:function(){this._$spinContainer.remove(),this.callBase()},_optionChanged:function(n,t,i){switch(n){case"value":this._setValue(t,i),this.callBase.apply(this,arguments);break;case"step":case"min":case"max":this._renderProps();break;case"showSpinButtons":this._renderSpinButtons();break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,e=r.events,u="dxRadioButton",o="dx-radio-button",s="dx-radio-button-icon",h="dx-radio-button-checked",f=e.addNamespace("dxclick",u);t.registerComponent(u,r.dxEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({value:!1,hoverStateEnabled:!0})},_init:function(){this.callBase(),this._element().addClass(o)},_render:function(){this.callBase(),this._renderIcon(),this._renderCheckedState(this.option("value")),this._renderClick()},_renderIcon:function(){var t=n("<div />").addClass(s);this._element().append(t)},_renderCheckedState:function(n){this._element().toggleClass(h,n)},_renderClick:function(){var t=this._createAction(n.proxy(function(n){this._handleClick(n.jQueryEvent)},this));this._element().off(f).on(f,function(n){t({jQueryEvent:n})})},_handleClick:function(n){this._valueChangeEventInstance=n,this.option("value",!0)},_optionChanged:function(n,t){switch(n){case"value":this._renderCheckedState(t),this.callBase.apply(this,arguments);break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,v=r.events,e="dx-radio-group",o="dx-radio-group-vertical",s="dx-radio-group-horizontal",u="dx-radio-button",h="dx-radio-button-icon",c="dx-radio-value-container",f="dx-radio-button-checked",l="dxRadioButtonData",a=100;t.registerComponent("dxRadioGroup",r.CollectionContainerWidget.inherit({_activeStateUnit:"."+u,_setDefaultOptions:function(){this.callBase(),this.option({layout:"vertical",value:i,valueExpr:null,hoverStateEnabled:!0})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:{tablet:!0},options:{layout:"horizontal"}}])},_optionsByReference:function(){return n.extend(this.callBase(),{value:!0})},_itemClass:function(){return u},_itemDataKey:function(){return l},_itemContainer:function(){return this._element()},_init:function(){this.callBase(),this._dataSource||this._itemsToDataSource(),this._feedbackHideTimeout=a},_itemsToDataSource:function(){this._dataSource=new DevExpress.data.DataSource(this.option("items"))},_render:function(){this._element().addClass(e),this._compileValueGetter(),this.callBase(),this._renderLayout(),this._renderValue(),this._updateContentSize()},_renderDimensions:function(){this.callBase(),this._updateContentSize()},_updateContentSize:function(){if(this.option("layout")==="horizontal")this._itemElements().css("height","auto");else{var n=this.option("items").length;this._itemElements().css("height",100/n+"%")}},_compileValueGetter:function(){this._valueGetter=t.data.utils.compileGetter(this._valueGetterExpr())},_valueGetterExpr:function(){return this.option("valueExpr")||this._dataSource&&this._dataSource._store._key||"this"},_renderLayout:function(){var n=this.option("layout");this._element().toggleClass(o,n==="vertical"),this._element().toggleClass(s,n==="horizontal")},_renderValue:function(){var n=this.option("value");n!=null&&n!==i?this._setIndexByValue():this._setValueByIndex()},_setIndexByValue:function(n){var t=this;n=n===i?t.option("value"):n,t._searchValue(n).done(function(n){t._dataSource.isLoaded()?t._setIndexByItem(n):t._dataSource.load().done(function(){t._setIndexByItem(n)})})},_setIndexByItem:function(t){var i=-1;n.each(this.option("items"),n.proxy(function(n,r){if(this._valuesEqual(t,r))return i=n,!1},this)),this.option("selectedIndex",i)},_valuesEqual:function(n,i){var r=this._dataSource&&this._dataSource.key(),u=n===i,f,e;return r&&!u&&(f=t.utils.unwrapObservable(n[r]),e=t.utils.unwrapObservable(i[r]),u=f===e),u},_searchValue:function(i){var r=this,u=r._dataSource.store(),e=r._valueGetterExpr(),f=n.Deferred();return e===u.key()||u instanceof t.data.CustomStore?u.byKey(i).done(function(n){f.resolveWith(r,[n])}):u.load({filter:[e,i]}).done(function(n){f.resolveWith(r,n)}),f.promise()},_setValueByIndex:function(){var n=this.option("selectedIndex"),r=this._itemElements(),t,i;if(n<0||n>=r.length){this.option("value",null);return}t=this._selectedItemElement(n),i=this._getItemData(t),this.option("value",this._getItemValue(i))},_getItemValue:function(n){return!this._valueGetter?n.text:this._valueGetter(n)},_renderSelectedIndex:function(n){var t=this._itemElements();t.removeClass(f),n>=0&&n<t.length&&t.eq(n).addClass(f)},_createItemByRenderer:function(n,t){var i=this.callBase.apply(this,arguments);return this._renderInput(i,t.item),i},_createItemByTemplate:function(n,t){var i=this.callBase.apply(this,arguments);return this._renderInput(i,t.item),i},_renderInput:function(t,i){if(!i.html){var r=n("<div>").addClass(h),u=n("<div>").append(r).addClass(c);t.prepend(u)}},_optionChanged:function(n,t){switch(n){case"value":this._setIndexByValue(t);break;case"selectedIndex":this.callBase.apply(this,arguments),this._setValueByIndex();break;case"layout":this._renderLayout(),this._updateContentSize();break;case"valueExpr":this._compileValueGetter(),this._setValueByIndex();break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,y=r.events,o="dx-tabs",s="dx-indent-wrapper",h="dx-tab",c=".dx-tab",u="dx-tab-selected",l="dx-tab-text",f="dx-icon",a="dxTabData",v=100,e="dx-state-active";t.registerComponent("dxTabs",r.CollectionContainerWidget.inherit({_activeStateUnit:c,_setDefaultOptions:function(){this.callBase(),this.option({hoverStateEnabled:!0})},_init:function(){this.callBase(),this._feedbackHideTimeout=v},_itemClass:function(){return h},_itemDataKey:function(){return a},_itemRenderDefault:function(t,i,r){if(this.callBase(t,i,r),!t.html){var s=t.text,e=t.icon,o=t.iconSrc,u;s&&r.wrapInner(n("<span />").addClass(l)),e?u=n("<span />").addClass(f+"-"+e):o&&(u=n("<img />").attr("src",o)),u&&u.addClass(f).prependTo(r)}},_render:function(){this.callBase();var n=this._element();n.addClass(o),this._renderWrapper(),n.addClass(e).removeClass(e)},_renderWrapper:function(){this._element().wrapInner(n("<div />").addClass(s))},_renderSelectedIndex:function(n,t){var i=this._itemElements();t>=0&&i.eq(t).removeClass(u),n>=0&&i.eq(n).addClass(u)}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,u="dx-navbar",f="dx-nav-item",e="dx-nav-item-content",o="dx-navbar-item-badge";t.registerComponent("dxNavBar",r.dxTabs.inherit({_render:function(){this.callBase(),this._element().addClass(u)},_postprocessRenderItem:function(t){var i=t.itemElement,r=t.itemData,u=r.badge;u&&n("<div>").addClass(o).text(u).appendTo(i),i.addClass(f),i.wrapInner(n("<div>").addClass(e)),r.icon||r.iconSrc||i.addClass("dx-navbar-text-item")}}))}(jQuery,DevExpress),function(n,t){var o=t.ui,s=t.fx,r=t.utils,h=t.translator,c="dx-toolbar",l="dx-toolbar-bottom",a="dx-toolbar-mini",v="dx-toolbar-item",f="dx-toolbar-label",u="dx-toolbar-button",y="dx-toolbar-menu-container",p="dx-toolbar-menu-button",w="dx-toolbar-items-container",e="."+f,b="dxToolbarItemDataKey",k="easeOutCubic",d=200,g=400,nt=function(n,t,i){var r=i?g:d;s.animate(n,{type:"slide",to:{top:t},easing:k,duration:r})};t.registerComponent("dxToolbar",o.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({menuItemRender:null,menuItemTemplate:"item",submenuType:"dxDropDownMenu",renderAs:"topToolbar"})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:[{platform:"ios"},{platform:"ios7"}],options:{submenuType:"dxActionSheet"}},{device:{platform:"android"},options:{submenuType:"dxDropDownMenu"}},{device:{platform:"win8"},options:{submenuType:"dxList"}}])},_itemContainer:function(){return this._$toolbarItemsContainer.find(".dx-toolbar-before,.dx-toolbar-center,.dx-toolbar-after")},_itemClass:function(){return v},_itemDataKey:function(){return b},_itemRenderDefault:function(i,r,u){var f;if(this.callBase(i,r,u),f=i.widget,f){var e=n("<div>").appendTo(u),o=t.inflector.camelize("dx-"+f),s=i.options||{};e[o](s)}else i.text&&u.wrapInner("<div>")},_dimensionChanged:function(){this._menu&&this._toggleMenuVisibility(!1,!0),this._arrangeTitle()},_render:function(){this._renderToolbar(),this._renderSections(),this.callBase(),this._renderMenu(),this._arrangeTitle()},_renderToolbar:function(){this._element().addClass(c).toggleClass(l,this.option("renderAs")==="bottomToolbar"),this._$toolbarItemsContainer=n("<div>").appendTo(this._element()),this._$toolbarItemsContainer.addClass(w)},_renderSections:function(){var t=this._$toolbarItemsContainer,i=this;n.each(["before","center","after"],function(){var r="dx-toolbar-"+this,u=t.find("."+r);u.length||(i["_$"+this+"Section"]=u=n("<div>").addClass(r).appendTo(t))})},_arrangeTitle:function(){var r,u;if(this._$element.is(":hidden")){this._titleUpdateIsNeeded=!0;return}this._titleUpdateIsNeeded=!1;var h=this._$toolbarItemsContainer,t=this._$centerSection,i=t.children(e).eq(0);if(i.length!==0){var c=h.width(),f=this._$beforeSection.outerWidth(),o=this._$afterSection.outerWidth(),s=10;t.children().not(e).each(function(){s+=n(this).outerWidth()}),r=c-f-o-s,u=i.width()>r,t.css({marginLeft:u?f:"",marginRight:u?o:""}),i.css("max-width",r)}},_renderItem:function(n,t){var i,o,e;return t.align&&r.logger.warn("dxToolbar.items.align is deprecated. Please use dxToolbar.items.location instead."),i=t.location||t.align||"center",i==="left"?(i="before",r.logger.warn("dxToolbar.items.location: value 'left' is deprecated. Please use 'before' instead.")):i==="right"&&(i="after",r.logger.warn("dxToolbar.items.location: value 'right' is deprecated. Please use 'after' instead.")),o=this._$toolbarItemsContainer.find(".dx-toolbar-"+i),e=this.callBase(n,t,o),e.addClass(u),t.text&&e.addClass(f).removeClass(u),e},_hasVisibleMenuItems:function(){var i=this._getMenuItems(),t=!1,r=DevExpress.data.utils.compileGetter("visible");return n.each(i,function(n,i){var u=r(i,{functionsAsIs:!0});u!==!1&&(t=!0)}),t},_getToolbarItems:function(){return n.grep(this.option("items")||[],function(n){return n.location!=="menu"})},_getMenuItems:function(){return n.grep(this.option("items")||[],function(n){return n.location==="menu"})},_renderContentImpl:function(){var n=this._getToolbarItems();this._element().toggleClass(a,n.length===0),this._renderedItemsCount?this._renderItems(n.slice(this._renderedItemsCount)):this._renderItems(n)},_renderMenu:function(){var t=this,i=this._createActionByOption("itemClickAction"),n={itemRender:this.option("menuItemRender"),itemTemplate:this.option("menuItemTemplate"),itemClickAction:function(n){t._toggleMenuVisibility(!1,!0),i(n)},rtlEnabled:this.option("rtlEnabled")};this._menuType=this.option("submenuType"),this._menuType==="dxList"&&this.option("renderAs")==="topToolbar"&&(this._menuType="dxDropDownMenu");switch(this._menuType){case"dxActionSheet":this._renderActionSheet(n);break;case"dxDropDownMenu":this._renderDropDown(n);break;case"dxList":this._renderList(n)}},_renderMenuButton:function(t){var i=n.extend({clickAction:n.proxy(this._handleMenuButtonClick,this)},t);this._renderMenuButtonContainer(),this._$button=n("<div>").appendTo(this._$menuButtonContainer).addClass(p).dxButton(i)},_renderMenuButtonContainer:function(){var t=this._$afterSection;this._$menuButtonContainer=n("<div>").appendTo(t).addClass(u).addClass(y)},_renderDropDown:function(t){this._hasVisibleMenuItems()&&(this._renderMenuButtonContainer(),this._menu=n("<div>").appendTo(this._$menuButtonContainer).dxDropDownMenu(t).dxDropDownMenu("instance"),this._renderMenuItems())},_renderActionSheet:function(t){if(this._hasVisibleMenuItems()){this._renderMenuButton({icon:"overflow"});var i=n.extend({target:this._$button,showTitle:!1},t);this._menu=n("<div>").appendTo(this._element()).dxActionSheet(i).dxActionSheet("instance"),this._renderMenuItems()}},_renderList:function(t){this._renderMenuButton({activeStateEnabled:!1,text:"..."});var i=n.extend({width:"100%",indicateLoading:!1},t);this._renderListOverlay(),this._renderContainerSwipe(),this._hasVisibleMenuItems()&&(this._menu=n("<div>").appendTo(this._listOverlay.content()).dxList(i).dxList("instance"),this._renderMenuItems()),this._changeListVisible(this.option("visible"))},_renderMenuItems:function(){this._menu.option("items",this._getMenuItems())},_getListHeight:function(){var n=this._listOverlay.content().find(".dx-list").height(),t=this._$toolbarItemsContainer.height()-this._element().height();return n+t},_renderListOverlay:function(){var t=this._element();this._listOverlay=n("<div>").appendTo(t).dxOverlay({targetContainer:!1,deferRendering:!1,shading:!1,height:"auto",width:"100%",showTitle:!1,closeOnOutsideClick:n.proxy(this._handleListOutsideClick,this),position:null,animation:null,hideTopOverlayHandler:null}).dxOverlay("instance")},_hideTopOverlayHandler:function(){this._toggleMenuVisibility(!1,!0)},_toggleHideTopOverlayCallback:function(){this._closeCallback&&t.hideTopOverlayCallback.remove(this._closeCallback),this._menuShown&&(this._closeCallback=n.proxy(this._hideTopOverlayHandler,this),t.hideTopOverlayCallback.add(this._closeCallback))},_renderContainerSwipe:function(){this._$toolbarItemsContainer.appendTo(this._listOverlay.content()).dxSwipeable({elastic:!1,startAction:n.proxy(this._handleSwipeStart,this),updateAction:n.proxy(this._handleSwipeUpdate,this),endAction:n.proxy(this._handleSwipeEnd,this),itemSizeFunc:n.proxy(this._getListHeight,this),direction:"vertical"})},_handleListOutsideClick:function(t){n(t.target).closest(this._listOverlay.content()).length||this._toggleMenuVisibility(!1,!0)},_calculatePixelOffset:function(n){n=(n||0)-1;var t=this._getListHeight();return n*t},_handleSwipeStart:function(n){n.jQueryEvent.maxTopOffset=this._menuShown?0:1,n.jQueryEvent.maxBottomOffset=this._menuShown?1:0},_handleSwipeUpdate:function(n){var t=this._menuShown?n.jQueryEvent.offset:1+n.jQueryEvent.offset;this._renderMenuPosition(t,!1)},_handleSwipeEnd:function(n){var t=n.jQueryEvent.targetOffset;t-=this._menuShown-1,this._toggleMenuVisibility(t===0,!0)},_renderMenuPosition:function(n,t){var i=this._calculatePixelOffset(n),r=this._listOverlay.content();t?nt(r,i,this._menuShown):h.move(r,{top:i})},_handleMenuButtonClick:function(){this._toggleMenuVisibility(!this._menuShown,!0)},_toggleMenuVisibility:function(n,t){this._menuShown=n;switch(this._menuType){case"dxList":this._toggleHideTopOverlayCallback(),this._renderMenuPosition(this._menuShown?0:1,t);break;case"dxActionSheet":this._menu.toggle(this._menuShown),this._menuShown=!1}},_renderEmptyMessage:n.noop,_clean:function(){this._$toolbarItemsContainer.children().empty(),this._element().empty()},_changeMenuOption:function(n,t){this._menu&&this._menu.option(n,t)},_changeListVisible:function(n){this._listOverlay&&(this._listOverlay.option("visible",n),this._toggleMenuVisibility(!1,!1))},_visibilityChanged:function(n){n&&this._titleUpdateIsNeeded&&this._arrangeTitle()},_optionChanged:function(n,t){switch(n){case"renderAs":case"submenuType":this._invalidate();break;case"visible":this._changeListVisible(t),this.callBase.apply(this,arguments);break;case"menuItemRender":this._changeMenuOption("itemRender",t);break;case"menuItemTemplate":this._changeMenuOption("itemTemplate",t);break;case"itemClickAction":this._changeMenuOption(n,t),this.callBase.apply(this,arguments);break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,e=r.events,u=t.utils,o="dx-list",f="dx-list-item",s="."+f,h="dx-list-group",c="dx-list-group-header",l="dx-has-next",a="dx-list-next-button",v="dxListItemData",y=70;t.registerComponent("dxList",r.CollectionContainerWidget.inherit({_activeStateUnit:s,_setDefaultOptions:function(){this.callBase(),this.option({pullRefreshEnabled:!1,autoPagingEnabled:!0,scrollingEnabled:!0,showScrollbar:!0,useNativeScrolling:!0,pullingDownText:Globalize.localize("dxList-pullingDownText"),pulledDownText:Globalize.localize("dxList-pulledDownText"),refreshingText:Globalize.localize("dxList-refreshingText"),pageLoadingText:Globalize.localize("dxList-pageLoadingText"),scrollAction:null,pullRefreshAction:null,pageLoadingAction:null,showNextButton:!1,nextButtonText:Globalize.localize("dxList-nextButtonText"),itemSwipeAction:null,grouped:!1,groupTemplate:"group",groupRender:null,indicateLoading:!0,hoverStateEnabled:!0})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(){return!t.support.nativeScrolling},options:{useNativeScrolling:!1}},{device:function(n){return!t.support.nativeScrolling&&!t.devices.isSimulator()&&t.devices.real().platform==="generic"&&n.platform==="generic"},options:{showScrollbar:"onHover",showNextButton:!0,autoPagingEnabled:!1}}])},_itemClass:function(){return f},_itemDataKey:function(){return v},_itemContainer:function(){return this._$container},_allowDinamicItemsAppend:function(){return!0},_init:function(){this.callBase(),this._$container=this._element(),this._initScrollView(),this._feedbackShowTimeout=y},_dataSourceOptions:function(){return n.extend(this.callBase(),{paginate:!0})},_initScrollView:function(){var t=this.option("scrollingEnabled"),r=t&&this.option("pullRefreshEnabled"),i=t&&this.option("autoPagingEnabled")&&!!this._dataSource,u=this._element().dxScrollView({rtlEnabled:this.option("rtlEnabled"),disabled:this.option("disabled")||!t,scrollAction:n.proxy(this._handleScroll,this),pullDownAction:r?n.proxy(this._handlePullDown,this):null,reachBottomAction:i?n.proxy(this._handleScrollBottom,this):null,showScrollbar:this.option("showScrollbar"),useNative:this.option("useNativeScrolling"),pullingDownText:this.option("pullingDownText"),pulledDownText:this.option("pulledDownText"),refreshingText:this.option("refreshingText"),reachBottomText:this.option("pageLoadingText")});this._scrollView=u.dxScrollView("instance"),this._scrollView.toggleLoading(i),this._$container=this._scrollView.content(),this._createScrollViewActions(),this._afterItemsRendered()},_createScrollViewActions:function(){this._scrollAction=this._createActionByOption("scrollAction",{excludeValidators:["gesture"]}),this._pullRefreshAction=this._createActionByOption("pullRefreshAction",{excludeValidators:["gesture"]}),this._pageLoadingAction=this._createActionByOption("pageLoadingAction",{excludeValidators:["gesture"]})},_handleScroll:function(n){this._scrollAction(n)},_afterItemsRendered:function(n){var r=this._isLastPage(),t=!n||r,u=this.option("autoPagingEnabled"),i=!u||t,f=this._scrollViewIsFull();i||f?(this._scrollView.release(i),this._loadIndicationSuppressed=!1,this._shouldRenderNextButton()&&this._dataSource.isLoaded()&&this._toggleNextButton(!t)):this._infiniteDataLoading()},_shouldRenderNextButton:function(){return this.option("showNextButton")&&this._dataSource},_handleDataSourceLoadingChanged:function(t){this._loadIndicationSuppressed||(t&&this.option("indicateLoading")?this._showLoadingIndicatorTimer=setTimeout(n.proxy(function(){this._scrollView&&this._scrollView.startLoading()},this)):(clearTimeout(this._showLoadingIndicatorTimer),this._scrollView&&this._scrollView.finishLoading()))},_hideLoadingIfLoadIndicationOff:function(){this.option("indicateLoading")||this._handleDataSourceLoadingChanged(!1)},_suppressLoadingIndication:function(){this._loadIndicationSuppressed=!0},_isLastPage:function(){return!this._dataSource||this._dataSource.isLastPage()},_scrollViewIsFull:function(){return!this._scrollView||this._scrollView.isFull()},_handlePullDown:function(n){this._pullRefreshAction(n),this._dataSource&&!this._dataSource.isLoading()?(this._dataSource.pageIndex(0),this._dataSource.load()):this._afterItemsRendered()},_infiniteDataLoading:function(){var t=this._dataSource;this._scrollViewIsFull()||!t||t.isLoading()||this._isLastPage()||(this._loadNextPageTimer=setTimeout(n.proxy(this._loadNextPage,this)))},_handleScrollBottom:function(n){this._pageLoadingAction(n);var t=this._dataSource;t&&!t.isLoading()?this._loadNextPage():this._afterItemsRendered()},_loadNextPage:function(){var n=this._dataSource;return this._expectNextPageLoading(),n.pageIndex(1+n.pageIndex()),n.load()},_renderItems:function(t){this.option("grouped")?(n.each(t,n.proxy(this._renderGroup,this)),this._renderEmptyMessage()):this.callBase.apply(this,arguments),this._afterItemsRendered(!0)},_handleDataSourceLoadError:function(){this.callBase.apply(this,arguments),this._initialized&&this._afterItemsRendered()},_render:function(){this._element().addClass(o),this.callBase()},_postprocessRenderItem:function(t){this.option("itemSwipeAction")&&this._attachSwipeEvent(n(t.itemElement))},_attachSwipeEvent:function(t){var i=e.addNamespace("dxswipeend",this.NAME);t.on(i,n.proxy(this._handleItemSwipeEnd,this))},_handleItemSwipeEnd:function(n){this._handleItemJQueryEvent(n,"itemSwipeAction",{direction:n.offset<0?"left":"right"},{excludeValidators:["gesture"]})},_handleNextButton:function(){var n=this._dataSource;n&&!n.isLoading()&&(this._scrollView.toggleLoading(!0),this._$nextButton.detach(),this._suppressLoadingIndication(),this._loadNextPage())},_groupRenderDefault:function(n){return String(n.key||n)},_renderGroup:function(t,i){var r=this,e=n("<div>").addClass(h).appendTo(r._itemContainer()),o=r.option("groupRender"),l=r.option("groupTemplate"),s=r._getTemplate(i.template||l,t,i),u,f={index:t,group:i,container:e};u=o?r._createGroupByRenderer(o,f):s?r._createGroupByTemplate(s,f):r._createGroupByRenderer(r._groupRenderDefault,f),u.addClass(c),this._renderingGroupIndex=t,n.each(i.items||[],function(n,t){r._renderItem(n,t,e)})},_createGroupByRenderer:function(t,i){var r=n("<div>").appendTo(i.container),u=t(i.group,i.index,r);return u&&r[0]!==u[0]&&r.append(u),r},_createGroupByTemplate:function(n,t){return n.render(t.container,t.group)},_clean:function(){this._$nextButton&&(this._$nextButton.remove(),this._$nextButton=null),this.callBase.apply(this,arguments)},_dispose:function(){clearTimeout(this._holdTimer),clearTimeout(this._loadNextPageTimer),clearTimeout(this._showLoadingIndicatorTimer),this.callBase()},_toggleDisabledState:function(n){this.callBase(n),this._scrollView.option("disabled",n||!this.option("scrollingEnabled"))},_toggleNextButton:function(n){var t=this._dataSource,i=this._getNextButton();this._element().toggleClass(l,n),n&&t&&t.isLoaded()&&i.appendTo(this._itemContainer()),n||i.detach()},_getNextButton:function(){return this._$nextButton||(this._$nextButton=this._createNextButton()),this._$nextButton},_createNextButton:function(){var t=n("<div>").addClass(a);return t.append(n("<div>").dxButton({text:this.option("nextButtonText"),clickAction:n.proxy(this._handleNextButton,this)})),t},_optionChanged:function(n,t){switch(n){case"showNextButton":this._toggleNextButton(t);break;case"dataSource":this.callBase.apply(this,arguments),this._initScrollView();break;case"pullingDownText":case"pulledDownText":case"refreshingText":case"pageLoadingText":case"useNativeScrolling":case"showScrollbar":case"scrollingEnabled":case"pullRefreshEnabled":case"autoPagingEnabled":this._initScrollView();break;case"nextButtonText":case"itemSwipeAction":this._invalidate();break;case"scrollAction":case"pullRefreshAction":case"pageLoadingAction":this._createScrollViewActions(),this._invalidate();break;case"grouped":case"groupTemplate":case"groupRender":this._invalidate();break;case"items":this._invalidate();break;case"width":case"height":this.callBase.apply(this,arguments),this._scrollView.update();break;case"indicateLoading":this._hideLoadingIfLoadIndicationOff();break;case"visible":this.callBase.apply(this,arguments),this._scrollView.update();break;case"rtlEnabled":this._initScrollView(),this.callBase.apply(this,arguments);break;default:this.callBase.apply(this,arguments)}},update:function(){return u.logger.warn("'update' method is deprecated since 14.1. Use the 'updateDimensions' method instead."),this.updateDimensions.apply(this,arguments)},updateDimensions:function(){var t=this,i=n.Deferred();return t._scrollView?t._scrollView.update().done(function(){i.resolveWith(t)}):i.resolveWith(t),i.promise()},refresh:function(){return u.logger.warn("'refresh' method is deprecated since 14.1. Use the 'reload' method instead."),this.reload.apply(this,arguments)},reload:function(){this.scrollTo(0),this._handlePullDown()},scrollTop:function(){return this._scrollView.scrollOffset().top},clientHeight:function(){return this._scrollView.clientHeight()},scrollHeight:function(){return this._scrollView.scrollHeight()},scrollBy:function(n){this._scrollView.scrollBy(n)},scrollTo:function(n){this._scrollView.scrollTo(n)},scrollToItem:function(n){this._scrollView.scrollToElement(n)}}))}(jQuery,DevExpress),function(n,t){var f=t.ui,e=t.Class.inherit({ctor:function(n){this._list=n},getNormalizedIndex:function(n){return this._isNormalisedItemIndex(n)?n:this._isItemIndex(n)?this._normalizeItemIndex(n):this._getNormalizedItemIndex(n)},getIndex:function(n){return this._isNormalisedItemIndex(n)?this._denormalizeItemIndex(n):this._isItemIndex(n)?n:this._denormalizeItemIndex(this._getNormalizedItemIndex(n))},getItemElement:function(t){return this._isNormalisedItemIndex(t)?this._getItemByNormalizedIndex(t):this._isItemIndex(t)?this._getItemByNormalizedIndex(this._normalizeItemIndex(t)):n(t)},deleteItemAtIndex:t.abstract,updateSelectionAfterDelete:t.abstract,fetchSelectedItems:t.abstract,selectedItemIndecies:t.abstract,itemPlacementFunc:function(n,t){return this._itemsFromSameParent(n,t)&&n<t?"after":"before"},moveItemAtIndexToIndex:t.abstract,getSelectedItemsAfterReorderItem:function(){return this._list.option("selectedItems")},_isNormalisedItemIndex:function(t){return n.isNumeric(t)},_isItemIndex:t.abstract,_getNormalizedItemIndex:t.abstract,_normalizeItemIndex:t.abstract,_denormalizeItemIndex:t.abstract,_getItemByNormalizedIndex:t.abstract,_itemsFromSameParent:t.abstract});f.PlainListEditStrategy=e.inherit({deleteItemAtIndex:function(n){this._list.option("items").splice(n,1)},updateSelectionAfterDelete:function(t){var i=this._list._selectedItemIndices;n.each(i,function(n,r){r>t&&(i[n]-=1)})},fetchSelectedItems:function(t){t=t||this._list._selectedItemIndices;var r=this._list.option("items"),i=[];return n.each(t,function(n,t){i.push(r[t])}),i},selectedItemIndecies:function(){var t=[],i=this._list.option("items"),r=this._list.option("selectedItems");return n.each(r,function(r,u){var f=n.inArray(u,i);f!==-1&&t.push(f)}),t},moveItemAtIndexToIndex:function(n,t){var i=this._list.option("items"),r=i[n];i.splice(n,1),i.splice(t,0,r)},_isItemIndex:function(t){return n.isNumeric(t)},_getNormalizedItemIndex:function(n){return this._list._itemElements().index(n)},_normalizeItemIndex:function(n){return n},_denormalizeItemIndex:function(n){return n},_getItemByNormalizedIndex:function(n){return this._list._itemElements().eq(n)},_itemsFromSameParent:function(){return!0}});var c="dx-list-item",o="dx-list-group",s=20,l=2303,u=function(n){return(n.group<<s)+n.item},r=function(n){return{group:n>>s,item:n&l}},h=function(t,i){var u=t.items,r={key:t.key,items:[]};return n.each(i,function(n,t){r.items.push(u[t])}),r},a=function(n,t){for(var r=n.length,i=0;i<r;i++)if(n[i].key===t)return n[i]};f.GroupedListEditStrategy=e.inherit({_groupElements:function(){return this._list._itemContainer().find("."+o)},_groupItemElements:function(n){return n.find("."+c)},deleteItemAtIndex:function(n){var t=r(n),i=this._list.option("items")[t.group].items;i.splice(t.item,1)},updateSelectionAfterDelete:function(t){var i=r(t),u=this._list._selectedItemIndices;n.each(u,function(n,t){var f=r(t);f.group===i.group&&f.item>i.item&&(u[n]-=1)})},fetchSelectedItems:function(t){var e,f,u,i;return t=t||this._list._selectedItemIndices,e=this._list.option("items"),f=[],t.sort(function(n,t){return n-t}),u=0,i=[],n.each(t,function(n,t){var o=r(t);o.group!==u&&i.length&&(f.push(h(e[u],i)),i.length=0),u=o.group,i.push(o.item)}),i.length&&f.push(h(e[u],i)),f},selectedItemIndecies:function(){var t=[],i=this._list.option("items"),r=this._list.option("selectedItems");return n.each(r,function(r,f){var e=a(i,f.key),o=n.inArray(e,i);n.each(f.items,function(i,r){var f=n.inArray(r,e.items);f!==-1&&t.push(u({group:o,item:f}))})}),t},moveItemAtIndexToIndex:function(n,t){var u=this._list.option("items"),i=r(n),f=r(t),e=u[i.group].items,o=u[f.group].items,s=e[i.item];e.splice(i.item,1),o.splice(f.item,0,s)},getSelectedItemsAfterReorderItem:function(t,i){if(this._itemsFromSameParent(t,i)||n.inArray(t,this._list._selectedItemIndices))return this.callBase();var s=this._list.option("items"),u=this._list.option("selectedItems"),f=r(t),h=r(i),e=u[f.group].items,c=u[h.group].items,o=s[f.group].items[f.item],l=n.inArray(o,e);return e.splice(l,1),c.push(o),u},_isItemIndex:function(t){return n.isNumeric(t.group)&&n.isNumeric(t.item)},_getNormalizedItemIndex:function(t){var i=n(t),r=i.closest("."+o);return u({group:this._groupElements().index(r),item:this._groupItemElements(r).index(i)})},_normalizeItemIndex:function(n){return u(n)},_denormalizeItemIndex:function(n){return r(n)},_getItemByNormalizedIndex:function(n){var t=r(n),i=this._groupElements().eq(t.group);return this._groupItemElements(i).eq(t.item)},_itemsFromSameParent:function(n,t){return r(n).group===r(t).group}})}(jQuery,DevExpress),function(n,t,i){var s=t.ui,u=s.events,o=t.translator,r=t.fx,ot=t.support,v=t.utils,a,rt;s.ListEditDecoratorsRegistry={};var f=function(t,i,r){var u=s.ListEditDecoratorsRegistry,f={};f[t]=u[t]?u[t]:{},f[t][i]=r,u=n.extend(u,f)},st="dx-list-item-content",y="dx-list-item-bag-container",e="dxListEditDecorator",ht=u.addNamespace("dxswipestart",e),ct=u.addNamespace("dxswipe",e),lt=u.addNamespace("dxswipeend",e),at=u.addNamespace("dxdragstart",e),vt=u.addNamespace("dxdrag",e),yt=u.addNamespace("dxdragend",e),p=u.addNamespace("dxpointerdown",e),w=u.addNamespace("dxclick",e),h=t.Class.inherit({ctor:function(n){this._list=n,this._init()},_init:n.noop,_shouldHandleSwipe:!1,_attachSwipeEvent:function(t){var i={itemSizeFunc:n.proxy(function(){return this._clearSwipeCache&&(this._itemWidthCache=this._list._element().width(),this._clearSwipeCache=!1),this._itemWidthCache},this)};t.$itemElement.on(ht,i,n.proxy(this._handleItemSwipeStart,this)).on(ct,n.proxy(this._handleItemSwipeUpdate,this)).on(lt,n.proxy(this._handleItemSwipeEnd,this))},_handleItemSwipeStart:function(t){var i=n(t.currentTarget);if(i.is(".dx-state-disabled, .dx-state-disabled *")){t.cancel=!0;return}this._handleSwipeStart(i,t)},_handleItemSwipeUpdate:function(t){var i=n(t.currentTarget);this._handleSwipeUpdate(i,t)},_handleItemSwipeEnd:function(t){var i=n(t.currentTarget);this._handleSwipeEnd(i,t),this._clearSwipeCache=!0},beforeBag:n.noop,afterBag:n.noop,modifyElement:function(n){this._shouldHandleSwipe&&(this._attachSwipeEvent(n),this._clearSwipeCache=!0)},handleClick:n.noop,handleHold:n.noop,_handleSwipeStart:n.noop,_handleSwipeUpdate:n.noop,_handleSwipeEnd:n.noop,dispose:n.noop}),b="dx-list-menu-positioning",k=h.inherit({_menuEnabled:function(){return!!this._menuItems().length},_menuItems:function(){return this._list.option("editConfig.menuItems")},_deleteEnabled:function(){return this._list.option("editConfig.deleteEnabled")},_fireMenuAction:function(n,t){this._list._handleItemEventByHandler(n,t)}}),c="dx-list-switchable-delete-ready",pt="dx-list-switchable-delete-top-shield",wt="dx-list-switchable-delete-bottom-shield",bt="dx-list-switchable-delete-item-content-shield",d=k.inherit({_init:function(){this._$topShield=n("<div />").addClass(pt),this._$bottomShield=n("<div />").addClass(wt),this._$itemContentShield=n("<div />").addClass(bt);this._$topShield.on(p,n.proxy(this._cancelDeleteReadyItem,this));this._$bottomShield.on(p,n.proxy(this._cancelDeleteReadyItem,this));this._list._element().append(this._$topShield.toggle(!1)).append(this._$bottomShield.toggle(!1))},handleClick:function(){return this._cancelDeleteReadyItem()},_cancelDeleteReadyItem:function(){return this._$readyToDeleteItem?(this._cancelDelete(this._$readyToDeleteItem),!0):!1},_cancelDelete:function(n){this._toggleDeleteReady(n,!1)},_toggleDeleteReady:function(n,t){t===i&&(t=!this._isReadyToDelete(n)),this._toggleShields(n,t),this._toggleScrolling(t),this._cacheReadyToDeleteItem(n,t),this._animateToggleDelete(n,t)},_isReadyToDelete:function(n){return n.hasClass(c)},_toggleShields:function(n,t){this._$topShield.toggle(t),this._$bottomShield.toggle(t),t&&this._updateShieldsHeight(n),this._toggleContentShield(n,t)},_updateShieldsHeight:function(n){var t=this._list._element(),r=t.offset().top,u=t.outerHeight(),f=n.offset().top,e=n.outerHeight(),i=f-r,o=u-e-i;this._$topShield.height(Math.max(i,0)),this._$bottomShield.height(Math.max(o,0))},_toggleContentShield:function(n,t){t?n.find("."+st).append(this._$itemContentShield):this._$itemContentShield.detach()},_toggleScrolling:function(n){var t=this._list._element().dxScrollView("instance");n?(this._scrollViewDisabled=t.option("disabled"),t.option("disabled",!0)):t.option("disabled",this._scrollViewDisabled)},_cacheReadyToDeleteItem:function(n,t){t?this._$readyToDeleteItem=n:delete this._$readyToDeleteItem},_animateToggleDelete:function(t,i){i?(this._enablePositioning(t),this._prepareDeleteReady(t),this._animatePrepareDeleteReady(t)):(this._forgetDeleteReady(t),this._animateForgetDeleteReady(t).done(n.proxy(this._disablePositioning,this,t)))},_enablePositioning:function(n){n.addClass(b)},_disablePositioning:function(n){n.removeClass(b)},_prepareDeleteReady:function(n){n.addClass(c)},_forgetDeleteReady:function(n){n.removeClass(c)},_animatePrepareDeleteReady:t.abstract,_animateForgetDeleteReady:t.abstract,_deleteItem:function(n){(n=n||this._$readyToDeleteItem,n.is(".dx-state-disabled, .dx-state-disabled *"))||(this._cancelDelete(n),this._list.deleteItem(n))},_isRtlEnabled:function(){return this._list.option("rtlEnabled")},dispose:function(){this._$topShield&&this._$topShield.remove(),this._$bottomShield&&this._$bottomShield.remove(),this.callBase.apply(this,arguments)}}),kt="dx-list-switchable-delete-button-container",dt="dx-list-switchable-delete-button-wrapper",gt="dx-list-switchable-delete-button-inner-wrapper",ni="dx-list-switchable-delete-button",ki="dx-list-switchable-delete-menu",g=200,nt=d.inherit({_init:function(){this.callBase.apply(this,arguments);var t=n("<div >").addClass(kt),i=n("<div />").addClass(dt),r=n("<div />").addClass(gt),u=n("<div />").addClass(ni);u.dxButton({text:Globalize.localize("dxListEditDecorator-delete"),type:"danger",clickAction:n.proxy(function(n){this._deleteItem(),n.jQueryEvent.stopPropagation()},this)}),t.append(i),i.append(r),r.append(u),this._$buttonContainer=t},_enablePositioning:function(n){this.callBase.apply(this,arguments),r.stop(this._$buttonContainer,!0),this._$buttonContainer.appendTo(n)},_disablePositioning:function(){this.callBase.apply(this,arguments),this._$buttonContainer.detach()},_animatePrepareDeleteReady:function(){var n=this._isRtlEnabled(),t=this._list._element().width(),i=this._buttonWidth(),u=n?t:-i,f=n?t-i:0;return r.animate(this._$buttonContainer,{type:"custom",duration:g,from:{right:u},to:{right:f}})},_animateForgetDeleteReady:function(){var n=this._isRtlEnabled(),t=this._list._element().width(),i=this._buttonWidth(),u=n?t-i:0,f=n?t:-i;return r.animate(this._$buttonContainer,{type:"custom",duration:g,from:{right:u},to:{right:f}})},_buttonWidth:function(){return this._buttonContainerWidth||(this._buttonContainerWidth=this._$buttonContainer.outerWidth()),this._buttonContainerWidth},dispose:function(){this._$buttonContainer&&this._$buttonContainer.remove(),this.callBase.apply(this,arguments)}}),ti="dx-list-toggle-delete-switch-container",ii="dx-list-toggle-delete-switch";f("delete","toggle",nt.inherit({beforeBag:function(t){var r=t.$itemElement,i=t.$container,u=n("<div />").dxButton({icon:"toggle-delete",clickAction:n.proxy(function(n){this._toggleDeleteReady(r),n.jQueryEvent.stopPropagation()},this)}).addClass(ii);i.addClass(ti),i.append(u)}})),f("delete","slideButton",nt.inherit({_shouldHandleSwipe:!0,_handleSwipeEnd:function(n,t){return t.targetOffset!==0&&this._toggleDeleteReady(n),!0}}));var ri="dx-list-slide-menu-wrapper",l="dx-list-slide-menu-content",ui="dx-list-slide-menu-buttons-container",tt="dx-list-slide-menu-buttons",it="dx-list-slide-menu-button",fi="dx-list-slide-menu-button-menu",ei="dx-list-slide-menu-button-delete",oi="dx-list-slide-menu";f("menu","slide",d.inherit({_shouldHandleSwipe:!0,_init:function(){this.callBase.apply(this,arguments),this._$buttonsContainer=n("<div/>").addClass(ui),this._$buttons=n("<div/>").addClass(tt).appendTo(this._$buttonsContainer),this._renderMenu(),this._renderDeleteButton()},_renderMenu:function(){var t,r,i,u;this._menuEnabled()&&(t=this._menuItems(),t.length===1?(r=t[0],this._renderMenuButton(r.text,n.proxy(function(){this._fireAction(r)},this))):(i=n("<div />").addClass(oi),i.dxActionSheet({showTitle:!1,items:t,itemClickAction:n.proxy(function(n){this._fireAction(n.itemData)},this)}),i.appendTo(this._list._element()),this._menu=i.dxActionSheet("instance"),u=this._renderMenuButton(Globalize.localize("dxListEditDecorator-more"),n.proxy(this._menu.show,this._menu)),this._menu.option("target",u)))},_renderMenuButton:function(t,i){var r=n("<div/>").addClass(it).addClass(fi).text(t);this._$buttons.append(r);r.on(w,i);return r},_renderDeleteButton:function(){if(this._deleteEnabled()){var t=n("<div/>").addClass(it).addClass(ei).text(Globalize.localize("dxListEditDecorator-delete"));t.on(w,n.proxy(function(){this._deleteItem()},this));this._$buttons.append(t)}},_fireAction:function(t){this._fireMenuAction(n(this._cachedNode),t.action),this._cancelDeleteReadyItem()},modifyElement:function(t){var i,r;this.callBase.apply(this,arguments),i=t.$itemElement,i.addClass(ri).removeClass(y),r=n("<div/>").addClass(l).addClass(y),i.wrapInner(r)},handleClick:function(t,i){return n(i.target).closest("."+l).length?this.callBase.apply(this,arguments):!0},_handleSwipeStart:function(n){this._enablePositioning(n),this._cacheItemData(n)},_handleSwipeUpdate:function(n,t){var r=this._isRtlEnabled(),u=r?-1:1,f=this._cachedItemWidth*t.offset,e=this._isReadyToDelete(n)?-this._cachedButtonWidth*u:0,i=(f+e)*u,s=i<0?f+e:0,h=i<0?i:0;return o.move(this._$cachedContent,{left:s}),this._$buttonsContainer.css(r?"right":"left",Math.max(this._cachedItemWidth+h,this._minButtonContainerLeftOffset())),!0},_cacheItemData:function(n){n[0]!==this._cachedNode&&(this._$cachedContent=n.find("."+l),this._cachedItemWidth=n.outerWidth(),this._cachedButtonWidth=this._cachedButtonWidth||n.find("."+tt).outerWidth(),this._$cachedContent.length&&(this._cachedNode=n[0]))},_minButtonContainerLeftOffset:function(){return this._cachedItemWidth-this._cachedButtonWidth},_handleSwipeEnd:function(n,t){this._cacheItemData(n);var i=this._isRtlEnabled()?1:-1,r=this._cachedItemWidth*t.offset,u=!this._isReadyToDelete(n)&&r*i>this._cachedButtonWidth*.2,f=t.targetOffset===i||u;return this._toggleDeleteReady(n,f),!0},_enablePositioning:function(n){this.callBase.apply(this,arguments),this._$buttonsContainer.appendTo(n)},_disablePositioning:function(){this.callBase.apply(this,arguments),this._$buttonsContainer.detach()},_animatePrepareDeleteReady:function(){var t=this._isRtlEnabled(),f=t?1:-1,u;this._$buttonsContainer.css(t?"left":"right","0");var e=r.animate(this._$cachedContent,{to:{left:this._cachedButtonWidth*f},type:"slide",duration:200}),o=t?"right":"left",i={};return i[o]=this._minButtonContainerLeftOffset(),u=r.animate(this._$buttonsContainer,{to:i,duration:200}),n.when(e,u).promise()},_animateForgetDeleteReady:function(t){var i,e;this._cacheItemData(t),i=this._isRtlEnabled(),this._$buttonsContainer.css(i?"left":"right","0");var o=r.animate(this._$cachedContent,{to:{left:0},type:"slide",duration:200}),u=i?"right":"left",f={};return f[u]=this._cachedItemWidth,e=r.animate(this._$buttonsContainer,{to:f,duration:200,complete:n.proxy(function(){this._$buttonsContainer.css(u,"100%")},this)}),n.when(o,e).promise()},dispose:function(){this._menu&&this._menu._element().remove(),this._$buttonsContainer&&this._$buttonsContainer.remove(),this.callBase.apply(this,arguments)}})),f("delete","swipe",h.inherit({_shouldHandleSwipe:!0,_renderItemPosition:function(t,i,u){var f=n.Deferred(),e=i*this._itemElementWidth;return u?r.animate(t,{to:{left:e},type:"slide",complete:function(){f.resolve(t,i)}}):(o.move(t,{left:e}),f.resolve()),f.promise()},_handleSwipeStart:function(n){return this._itemElementWidth=n.width(),!0},_handleSwipeUpdate:function(n,t){return this._renderItemPosition(n,t.offset),!0},_handleSwipeEnd:function(t,i){var r=i.targetOffset;return this._renderItemPosition(t,r,!0).done(n.proxy(function(n,t){Math.abs(t)&&this._list.deleteItem(n)},this)),!0}})),a="dx-list-holddelete-menu",rt="dx-list-holddelete-menucontent",f("menu","hold",k.inherit({_init:function(){var t=n("<div/>").addClass(a);this._list._element().append(t),this._menu=this._renderOverlay(t)},_renderOverlay:function(t){return t.dxOverlay({shading:!1,deferRendering:!0,closeOnTargetScroll:!0,closeOnOutsideClick:function(t){return!n(t.target).closest("."+a).length},animation:{show:{type:"slide",duration:300,from:{height:0,opacity:1},to:{height:n.proxy(function(){return this._$menuList.outerHeight()},this),opacity:1}},hide:{type:"slide",duration:0,from:{opacity:1},to:{opacity:0}}},height:n.proxy(function(){return this._$menuList?this._$menuList.outerHeight():0},this),width:n.proxy(function(){return this._list._element().outerWidth()},this),contentReadyAction:n.proxy(this._renderMenuContent,this)}).dxOverlay("instance")},_renderMenuContent:function(t){var i=t.component.content(),r=this._menuItems().slice();this._deleteEnabled()&&r.push({text:Globalize.localize("dxListEditDecorator-delete"),action:n.proxy(this._deleteItem,this)}),this._$menuList=n("<div>").dxList({items:r,itemClickAction:n.proxy(this._handleMenuItemClick,this),height:"auto"}),i.addClass(rt),i.append(this._$menuList)},_handleMenuItemClick:function(n){this._menu.hide(),this._fireMenuAction(this._$itemWithMenu,n.itemData.action)},_deleteItem:function(){this._list.deleteItem(this._$itemWithMenu)},handleHold:function(n){return this._$itemWithMenu=n,this._menu.option({position:{my:"top",at:"bottom",of:n,collision:"flip"}}),this._menu.show(),!0},dispose:function(){this._menu&&this._menu._element().remove(),this.callBase.apply(this,arguments)}}));var si="dx-list-item-selected",ut="dx-list-select-decorator-enabled",hi="dx-list-select-checkbox-container",ci="dx-list-select-checkbox",li="dx-list-select-radio-button-container",ai="dx-list-select-radio-button";f("selection","control",h.inherit({_init:function(){this.callBase.apply(this,arguments);var n=this._list.option("selectionMode");this._singleStrategy=n==="single",this._containerClass=this._singleStrategy?li:hi,this._controlClass=this._singleStrategy?ai:ci,this._controlWidget=this._singleStrategy?"dxRadioButton":"dxCheckBox",this._list._element().addClass(ut)},beforeBag:function(t){var i=t.$itemElement,r=t.$container,u=n("<div />").addClass(this._controlClass);u[this._controlWidget]({value:this._isSelected(i),valueChangeAction:n.proxy(function(n){this._processCheckedState(i,n.value),n.jQueryEvent&&n.jQueryEvent.stopPropagation()},this)}),r.addClass(this._containerClass),r.append(u)},modifyElement:function(t){this.callBase.apply(this,arguments);var i=t.$itemElement,r=i.find("."+this._controlClass)[this._controlWidget]("instance");i.on("stateChanged",n.proxy(function(){r.option("value",this._isSelected(i))},this))},_isSelected:function(n){return n.hasClass(si)},_processCheckedState:function(n,t){t?this._list.selectItem(n):this._list.unselectItem(n)},dispose:function(){this._list._element().removeClass(ut),this.callBase.apply(this,arguments)}})),f("selection","item",s.ListEditDecoratorsRegistry.selection.control.inherit({handleClick:function(n){var t=!this._isSelected(n)||this._singleStrategy;return this._processCheckedState(n,t),!0}}));var vi="dx-list-reorder-handle-container",yi="dx-list-reorder-handle",ft="dx-list-item-reordering",pi="dx-list-item-ghost-reordering",wi="dx-list-reorder-compatibility-mode",et=function(n,t,i){return Math.min(Math.max(n,t),i)},bi=t.Animator.inherit({ctor:function(n){this.callBase(),this._strategy=n},_isFinished:function(){return this._strategy.scrollFinished()},_step:function(){this._strategy.scrollByStep()}});f("reorder","default",h.inherit({_init:function(){this._groupedEnabled=this._list.option("grouped"),this._initAnimator()},_initAnimator:function(){this._scrollAnimator=new bi(this)},_startAnimator:function(){this._scrollAnimator.inProgress()||this._scrollAnimator.start()},_stopAnimator:function(){this._scrollAnimator.stop()},afterBag:function(t){var r=t.$itemElement,u=t.$container,i=n("<div>").addClass(yi);i.on(at,{direction:"vertical"},n.proxy(this._handleDragStart,this,r));i.on(vt,n.proxy(this._handleDrag,this,r));i.on(yt,n.proxy(this._handleDragEnd,this,r));u.addClass(vi),u.append(i)},_handleDragStart:function(n,t){this._stopPreviousAnimation(),t.targetElements=[],this._cacheItemsPositions(),this._startPointerOffset=t.pageY-n.offset().top,this._elementHeight=n.outerHeight();var i=this._list.getFlatIndexByItemElement(n);this._startIndex=i,this._lastIndex=i,this._cacheScrollData(),this._createGhost(n),n.addClass(ft),this._toggleCompatibilityMode(!0)},_stopPreviousAnimation:function(){r.stop(this._$ghostItem,!0)},_toggleCompatibilityMode:function(n){this._list._element().toggleClass(wi,!ot.transform3d&&n)},_cacheItemsPositions:function(){this._itemPositions=[],n.each(this._list.itemElements(),n.proxy(function(t,i){this._itemPositions.push(n(i).position().top)},this))},_getDraggingElementPosition:function(){return this._itemPositions[this._startIndex]},_getLastElementPosition:function(){return this._itemPositions[this._lastIndex]},_cacheScrollData:function(){this._list.updateDimensions(),this._startScrollTop=this._list.scrollTop(),this._scrollOffset=0,this._scrollHeight=this._list.scrollHeight(),this._clientHeight=this._list.clientHeight()},_scrollTop:function(){return this._startScrollTop+this._scrollOffset},_createGhost:function(n){this._$ghostItem=n.clone(),this._$ghostItem.addClass(pi).appendTo(this._list.itemsContainer()),this._startGhostPosition=this._getDraggingElementPosition()-this._$ghostItem.position().top,o.move(this._$ghostItem,{top:this._startGhostPosition})},_handleDrag:function(n,t){this._topOffset=t.offset.y,this._updateItemPositions();var i=this._getPonterPosition();this._toggleScroll(i)},_getPonterPosition:function(){return this._getDraggingElementPosition()+this._startPointerOffset+this._scrollOffset+this._topOffset},_toggleScroll:function(n){if(!(this._scrollHeight<=this._clientHeight)){var t=this._elementHeight*.7,u=this._clientHeight-(n-this._scrollTop()),i=u/t,f=n-this._scrollTop(),r=f/t;i<1?(this._stepSize=this._adjustRationIntoRange(i),this._startAnimator()):r<1?(this._stepSize=-this._adjustRationIntoRange(r),this._startAnimator()):this._stopAnimator()}},_adjustRationIntoRange:function(n){return et(Math.round(Math.abs(n-1)*7),1,7)},_updateItemPositions:function(){this._updateGhostPosition(),this._updateOthersPositions()},_updateGhostPosition:function(){o.move(this._$ghostItem,{top:this._startGhostPosition+this._scrollOffset+this._topOffset})},_updateOthersPositions:function(){var n=this._findItemIndexByPosition(this._getPonterPosition()),t;if(this._lastIndex!==n&&(!this._groupedEnabled||this._sameParent(n))){var u=n-this._startIndex,f=v.sign(u),h=Math.min(n,this._lastIndex),c=Math.max(n,this._lastIndex);for(t=h;t<=c;t++)if(t!==this._startIndex){var i=this._list.getItemElementByFlatIndex(t),e=t-this._startIndex,l=v.sign(e),o=Math.abs(e)<=Math.abs(u),s=f===l,a=o&&s,y=!o||!s;r.stop(i),a&&r.animate(i,{type:"slide",to:{top:this._elementHeight*-f},duration:300}),y&&r.animate(i,{type:"slide",to:{top:0},duration:300})}this._lastIndex=n}},_sameParent:function(n){var t=this._list.getItemElementByFlatIndex(this._startIndex),i=this._list.getItemElementByFlatIndex(n);return i.parent().get(0)===t.parent().get(0)},scrollByStep:function(){this._scrollOffset+=this._stepSize,this._list.scrollBy(this._stepSize),this._updateItemPositions()},scrollFinished:function(){var n=this._scrollTop(),t=n<=0&&this._stepSize<0,i=n>=this._scrollHeight-this._clientHeight&&this._stepSize>0;return t||i},_handleDragEnd:function(t){this._scrollAnimator.stop(),r.animate(this._$ghostItem,{type:"slide",to:{top:this._startGhostPosition+this._getLastElementPosition()-this._getDraggingElementPosition()},duration:300}).done(n.proxy(function(){t.removeClass(ft),this._resetPositions(),this._list.reorderItem(t,this._list.getItemElementByFlatIndex(this._lastIndex)),this._deleteGhost(),this._toggleCompatibilityMode(!1)},this))},_deleteGhost:function(){this._$ghostItem.remove()},_resetPositions:function(){for(var i=Math.min(this._startIndex,this._lastIndex),r=Math.max(this._startIndex,this._lastIndex),t,n=i;n<=r;n++)t=this._list.getItemElementByFlatIndex(n),o.resetPosition(t)},_findItemIndexByPosition:function(n){for(var i=0,r=this._itemPositions.length-1,t,u;i<=r;)if(t=(i+r)/2|0,u=this._itemPositions[t],u<n)i=t+1;else if(u>n)r=t-1;else return t;return et(i,0,Math.max(r,0))}}))}(jQuery,DevExpress),function(n,t){var u=t.ui,v=u.events,y=t.utils,f=[],r=function(n,t,i){f.push({enabled:n,decoratorType:t,decoratorSubType:i})};r(function(n){return n.menuItems.length},function(){return"menu"},function(n){return n.menuType}),r(function(n){return!n.menuItems.length&&n.deleteEnabled},function(n,t){var i=n.deleteMode!==t.deleteMode?n.deleteMode:n.deleteType;return i==="toggle"||i==="slideButton"||i==="swipe"?"delete":"menu"},function(n,t){var i;return i=n.deleteMode!==t.deleteMode?n.deleteMode:n.deleteType,i==="slideItem"&&(i="slide"),i}),r(function(n){return n.selectionEnabled},function(){return"selection"},function(n,t){var i;return i=n.selectionMode!==t.selectionMode?n.selectionMode:n.selectionType}),r(function(n){return n.reorderEnabled},function(){return"reorder"},function(){return"default"});var e="dx-list-item-bag-container",o="dx-list-item-content",s="dx-list-item-before-bag",h="dx-list-item-after-bag",c="beforeBag",l="afterBag",a="modifyElement";u.ListEditProvider=t.Class.inherit({ctor:function(n,t,i){this._list=n,this._config=t,this._defaultConfig=i,this.isModifyingByDecorators()&&this._fetchRequiredDecorators()},dispose:function(){this._decorators&&this._decorators.length&&n.each(this._decorators,function(n,t){t.dispose()})},isModifyingByDecorators:function(n){return!(this.isRenderingByRenderer()||this.isRenderingByTemplate(n))},isRenderingByRenderer:function(){return!!this.getItemRenderer()},getItemRenderer:function(){return this._config.itemRender},isRenderingByTemplate:function(n){return!!this.getItemTemplateName(n)},getItemTemplateName:function(n){return n&&n.editTemplate||this._config.itemTemplate},_fetchRequiredDecorators:function(){this._decorators=[];var t=this._config,i=this._defaultConfig;n.each(f,n.proxy(function(n,r){var u=r.enabled(t,i);if(u){var f=r.decoratorType(t,i),e=r.decoratorSubType(t,i),o=this._createDecorator(f,e);this._decorators.push(o)}},this))},_createDecorator:function(n,t){var i=this._findDecorator(n,t);return new i(this._list)},_findDecorator:function(n,t){return u.ListEditDecoratorsRegistry[n][t]},modifyItemElement:function(t){var i=n(t.itemElement),r;i.addClass(e),this._wrapContent(i),r={$itemElement:i},this._prependBeforeBags(i,r),this._appendAfterBags(i,r),this._applyDecorators(a,r)},_wrapContent:function(t){var i=n("<div />").addClass(o);t.wrapInner(i)},_prependBeforeBags:function(n,t){var i=this._collectDecoratorsMarkup(c,t,s);n.prepend(i)},_appendAfterBags:function(n,t){var i=this._collectDecoratorsMarkup(l,t,h);n.append(i)},_collectDecoratorsMarkup:function(t,i,r){var u=n("<div />");return n.each(this._decorators,function(){var f=n("<div />").addClass(r);this[t](n.extend({$container:f},i)),f.children().length&&u.append(f)}),u.children()},_applyDecorators:function(t,i){n.each(this._decorators,function(){this[t](i)})},_handlerExists:function(t){var r,u,i;if(!this._decorators)return!1;for(r=this._decorators,u=r.length,i=0;i<u;i++)if(r[i][t]!==n.noop)return!0;return!1},_handleEvent:function(n,t,i){var r;if(!this._decorators)return!1;var u=!1,f=this._decorators,e=f.length;for(r=0;r<e;r++)if(u=f[r][n](t,i),u)break;return u},handleClick:function(n,t){return this._handleEvent("handleClick",n,t)},holdHandlerExists:function(){return this._handlerExists("handleHold")},handleHold:function(n,t){return this._handleEvent("handleHold",n,t)}})}(jQuery,DevExpress),function(n,t,i){var r=t.ui,o=t.utils,f=o.removeDublicates,s="dx-list-editing",u="dx-list-item-selected",e="dx-list-item-response-wait";t.registerComponent("dxList",r.dxList.inherit({_setDefaultOptions:function(){this.callBase(),this.option({editEnabled:!1,editConfig:{itemTemplate:null,itemRender:null,menuType:"hold",menuItems:[],deleteEnabled:!1,deleteMode:"toggle",deleteType:"toggle",selectionEnabled:!1,selectionMode:"item",selectionType:"item",reorderEnabled:!1},itemDeleteAction:null,selectionMode:"multi",selectedItems:[],itemSelectAction:null,itemUnselectAction:null,itemReorderAction:null})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:{platform:"ios"},options:{editConfig:{deleteType:"slideButton",deleteMode:"slideButton"}}},{device:{platform:"ios7"},options:{editConfig:{menuType:"slide",deleteType:"slideItem",deleteMode:"slideItem"}}},{device:{platform:"android"},options:{editConfig:{deleteType:"swipe",deleteMode:"swipe"}}},{device:{platform:"win8"},options:{editConfig:{deleteType:"hold",deleteMode:"hold"}}},{device:{platform:"generic"},options:{editConfig:{deleteType:"slideItem",deleteMode:"slideItem"}}}])},_init:function(){this.callBase(),this._initEditProvider(),this._initEditStrategy(this.option("grouped")),this._initSelectedItems()},_initEditProvider:function(){var n=this.initialOption("editConfig");this._editProvider=new r.ListEditProvider(this,this.option("editConfig"),n)},_disposeEditProvider:function(){this._editProvider&&this._editProvider.dispose()},_refreshEditProvider:function(){this._disposeEditProvider(),this._initEditProvider()},_initEditStrategy:function(n){var t=n?r.GroupedListEditStrategy:r.PlainListEditStrategy;this._editStrategy=new t(this)},_initSelectedItems:function(){this._selectedItemIndices=this._editStrategy.selectedItemIndecies(this.option("selectedItems"))},_clearSelectedItems:function(){this._selectedItemIndices=[],this.option("selectedItems",[])},_render:function(){this._renderEditing(),this.callBase(),this._normalizeSelectedItems()},_renderEditing:function(){this._element().toggleClass(s,this.option("editEnabled"))},_handleItemClick:function(t){var i=n(t.currentTarget),r;i.is(".dx-state-disabled, .dx-state-disabled *")||(r=this.option("editEnabled")&&this._editProvider.handleClick(i,t),r)||this.callBase.apply(this,arguments)},_shouldAttachHoldEvent:function(){return this.callBase.apply(this,arguments)||this._editProvider.holdHandlerExists()},_handleItemHold:function(t){var i=n(t.currentTarget),r;i.is(".dx-state-disabled, .dx-state-disabled *")||(r=this.option("editEnabled")&&this._editProvider.handleHold(i,t),r)||this.callBase.apply(this,arguments)},_getItemRenderer:function(){return this.option("editEnabled")&&this._editProvider.isRenderingByRenderer()?this._editProvider.getItemRenderer():this.callBase.apply(this,arguments)},_getItemTemplateName:function(n){return this.option("editEnabled")&&this._editProvider.isRenderingByTemplate(n)?this._editProvider.getItemTemplateName(n):this.callBase.apply(this,arguments)},_postprocessRenderItem:function(t){this.callBase.apply(this,arguments);var i=n(t.itemElement);this._isItemSelected(this._editStrategy.getNormalizedIndex(i))&&i.addClass(u),this.option("editEnabled")&&this._editProvider.isModifyingByDecorators(t.itemData)&&this._editProvider.modifyItemElement(t)},_dispose:function(){this._disposeEditProvider(),this.callBase.apply(this,arguments)},_optionChanged:function(n,t){switch(n){case"rtlEnabled":this._refreshEditProvider(),this.callBase.apply(this,arguments);break;case"items":this._clearSelectedItems(),this.callBase.apply(this,arguments);break;case"grouped":this._clearSelectedItems(),delete this._renderingGroupIndex,this._initEditStrategy(t),this.callBase.apply(this,arguments);break;case"editEnabled":this._clearSelectedItems(),this._refreshEditProvider(),this._invalidate();break;case"editConfig":this._refreshEditProvider(),this._invalidate();break;case"selectionMode":this._refreshEditProvider(),this._invalidate();break;case"selectedItems":this._normalizeSelectedItems();break;case"itemDeleteAction":case"itemSelectAction":case"itemUnselectAction":case"itemReorderAction":break;default:this.callBase.apply(this,arguments)}},_isItemSelected:function(t){return n.inArray(t,this._selectedItemIndices)>-1},_normalizeSelectedItems:function(){var n,t;this.option("selectionMode")==="single"?(n=this._editStrategy.selectedItemIndecies(this.option("selectedItems")),n.length>1?(t=[n[0]],this.option("selectedItems",this._editStrategy.fetchSelectedItems(t))):this._updateSelectedItems()):this._updateSelectedItems()},_updateSelectedItems:function(){var t=this,i=this._selectedItemIndices.slice(),r=this._editStrategy.selectedItemIndecies(),e=f(i,r),u;n.each(e,function(n,i){t._unselectItem(i)}),u=f(r,i),n.each(u,function(n,i){t._selectItem(i)})},_updateSelectionAfterDelete:function(t){var r=this,i=n.inArray(t,this._selectedItemIndices);i>-1&&this._selectedItemIndices.splice(i,1),this._editStrategy.updateSelectionAfterDelete(t),this.option("selectedItems",this._editStrategy.fetchSelectedItems())},_selectItem:function(n){var t=this._editStrategy.getItemElement(n);this.option("editEnabled")&&n>-1&&!this._isItemSelected(n)&&(t.addClass(u),this._selectedItemIndices.push(n),t.trigger("stateChanged"),this._handleItemEvent(t,"itemSelectAction",{},{excludeValidators:["gesture","disabled"]}))},_unselectItem:function(t){var i=this._editStrategy.getItemElement(t),r=n.inArray(t,this._selectedItemIndices);this.option("editEnabled")&&r>-1&&(i.removeClass(u),this._selectedItemIndices.splice(r,1),i.trigger("stateChanged"),this._handleItemEvent(i,"itemUnselectAction",{},{excludeValidators:["gesture","disabled"]}))},_deleteItemFromDS:function(t){var u=this,r=n.Deferred(),e=this.option("disabled"),f=this._dataSource.store();if(this.option("disabled",!0),!f.remove)throw new Error("You have to implement 'remove' method in dataStore used by dxList to be able to delete items");return f.remove(f.keyOf(this._getItemData(t))).done(function(n){n!==i?r.resolveWith(u):r.rejectWith(u)}).fail(function(){r.rejectWith(u)}),r.always(function(){u.option("disabled",e)}),r},_refreshLastPage:function(){return this._expectLastItemLoading(),this._dataSource.load()},getFlatIndexByItemElement:function(n){return this._itemElements().index(n)},getItemElementByFlatIndex:function(t){var i=this._itemElements();return t<0||t>=i.length?n():i.eq(t)},getItemByIndex:function(n){return this._getItemData(this._itemElements().eq(n))},deleteItem:function(t){var i=this,r=n.Deferred(),u=this._editStrategy.getItemElement(t),s=this._editStrategy.getNormalizedIndex(t),f,o;return(this.option("editEnabled")&&s>-1?(u.addClass(e),this._dataSource?(f="dataSource",r=this._deleteItemFromDS(u)):(f="items",r.resolveWith(this))):r.rejectWith(this),r.done(function(){u.detach(),i._editStrategy.deleteItemAtIndex(s),i.optionChanged.fireWith(i,[f,i.option(f)]),i._updateSelectionAfterDelete(s),i._handleItemEvent(u,"itemDeleteAction",{},{excludeValidators:["gesture","disabled"]}),i._renderEmptyMessage()}).fail(function(){u.removeClass(e)}),this._isLastPage()||this.option("grouped"))?r.promise():(o=n.Deferred(),r.done(function(){i._refreshLastPage().done(function(){o.resolveWith(i)})}).fail(function(){o.rejectWith(i)}),o.promise())},isItemSelected:function(n){return this._isItemSelected(this._editStrategy.getNormalizedIndex(n))},selectItem:function(t){var i,u,r;this.option("editEnabled")&&(i=this._editStrategy.getNormalizedIndex(t),i!==-1)&&(u=n.inArray(i,this._selectedItemIndices),u===-1)&&(this.option("selectionMode")==="single"?this.option("selectedItems",this._editStrategy.fetchSelectedItems([i])):(r=this._selectedItemIndices.slice(),r.push(i),this.option("selectedItems",this._editStrategy.fetchSelectedItems(r))))},unselectItem:function(t){var i,r,u;this.option("editEnabled")&&(i=this._editStrategy.getNormalizedIndex(t),i!==-1)&&(r=n.inArray(i,this._selectedItemIndices),r!==-1)&&(u=this._selectedItemIndices.slice(),u.splice(r,1),this.option("selectedItems",this._editStrategy.fetchSelectedItems(u)))},reorderItem:function(t,i){var o=n.Deferred(),u=this,r=this._editStrategy,h=r.getItemElement(t),c=r.getItemElement(i),f=r.getNormalizedIndex(t),e=r.getNormalizedIndex(i),s,l=f>-1&&e>-1&&f!==e;return this.option("editEnabled")&&l?this._dataSource?(s="dataSource",o.resolveWith(this)):(s="items",o.resolveWith(this)):o.rejectWith(this),o.promise().done(function(){c[r.itemPlacementFunc(f,e)](h);var n=r.getSelectedItemsAfterReorderItem(f,e);r.moveItemAtIndexToIndex(f,e),u._selectedItemIndices=r.selectedItemIndecies(n),u.option("selectedItems",r.fetchSelectedItems()),u.optionChanged.fireWith(u,[s,u.option(s)]),u._handleItemEvent(h,"itemReorderAction",{fromIndex:r.getIndex(f),toIndex:r.getIndex(e)},{excludeValidators:["gesture","disabled"]})})}}))}(jQuery,DevExpress),function(n,t){var o=t.ui,nt=t.utils,u=o.events,s=t.fx,c=t.translator,r="dx-gallery",b=r+"-wrapper",l="dx-gallery-loop",k=r+"-container",a=r+"-active",f=r+"-item",e=f+"-loop",d="."+f,v=f+"-selected",y=r+"-indicator",h=y+"-item",p="."+h,w=h+"-selected",g="dxGalleryItemData";t.registerComponent("dxGalleryNavButton",o.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({direction:"next",clickAction:null,hoverStateEnabled:!0})},_render:function(){this.callBase();var t=this,i=this._element(),n=u.addNamespace("dxclick",this.NAME);i.addClass(r+"-nav-button-"+this.option("direction")).off(n).on(n,function(n){t._createActionByOption("clickAction")({jQueryEvent:n})})},_optionChanged:function(n,t,i){switch(n){case"clickAction":case"direction":this._invalidate();break;default:this.callBase(n,t,i)}}})),t.registerComponent("dxGallery",o.CollectionContainerWidget.inherit({_activeStateUnit:d,_setDefaultOptions:function(){this.callBase(),this.option({activeStateEnabled:!1,animationDuration:400,loop:!1,swipeEnabled:!0,indicatorEnabled:!0,showIndicator:!0,selectedIndex:0,slideshowDelay:0,showNavButtons:!1})},_dataSourceOptions:function(){return{paginate:!1}},_itemContainer:function(){return this._$container},_itemClass:function(){return f},_itemDataKey:function(){return g},_itemWidth:function(){return this._itemWidthCache||(this._itemWidthCache=this._itemElements().first().outerWidth()),this._itemWidthCache},_clearItemWidthCache:function(){delete this._itemWidthCache},_itemsCount:function(){return(this.option("items")||[]).length},_offsetDirection:function(){return this.option("rtlEnabled")?-1:1},_itemRenderDefault:function(t,i,r){r.append(n("<img />").attr("src",String(t)))},_renderSelectedIndex:n.noop,_render:function(){this._element().addClass(r),this._element().toggleClass(l,this.option("loop")),this._renderDragHandler(),this._renderWrapper(),this._renderItemContainer(),this.callBase(),this._renderContainerPosition(),this._renderItemPositions(),this._renderIndicator(),this._renderSelectedIndicatorItem(),this._renderUserInteraction(),this._renderNavButtons(),this._setupSlideShow(),this._reviseDimensions()},_dimensionChanged:function(){this._clearItemWidthCache(),this._renderDuplicateItems(),this._renderItemPositions(),this._renderContainerPosition()},_renderDragHandler:function(){var n=u.addNamespace("dragstart",this.NAME);this._element().off(n).on(n,"img",function(){return!1})},_renderWrapper:function(){this._$wrapper||(this._$wrapper=n("<div />").addClass(b).appendTo(this._element()))},_renderItems:function(n){this.callBase(n),this._renderDuplicateItems()},_renderItemContainer:function(){this._$container||(this._$container=n("<div>").addClass(k).appendTo(this._$wrapper))},_renderDuplicateItems:function(){var t=this.option("items")||[],i=t.length,r,u,n;if(i){for(this._element().find("."+e).remove(),r=this._element().width()/this._itemWidth(),u=Math.min(r,i),n=0;n<u;n++)this._renderItem(0,t[n]).addClass(e);this._renderItem(0,t[this._itemsCount()-1]).addClass(e)}},_renderItemPositions:function(){var t=this._itemWidth(),i=this._element().find("."+e).length,r=this._itemsCount()+i-1,u=this._offsetDirection();this._itemElements().each(function(i){var f=i;i===r&&(f=-1),c.move(n(this),{left:u*f*t})})},_renderContainerPosition:function(t,i){t=t||0;var r=this,e=this._itemWidth(),o=this.option("selectedIndex"),s=t-o,f=this._offsetDirection()*s*e,u;return i?(r._startSwipe(),u=r._animate(f).done(n.proxy(r._endSwipe,r))):(c.move(this._$container,{left:f}),u=n.Deferred().resolveWith(r)),u.promise()},_startSwipe:function(){this._element().addClass(a)},_endSwipe:function(){this._element().removeClass(a)},_animate:function(t,i){var r=this,u=n.Deferred();return s.animate(this._$container,n.extend({type:"slide",to:{left:t},duration:r.option("animationDuration"),complete:function(){u.resolveWith(r)}},i||{})),u},_reviseDimensions:function(){var n=this,t=n._itemElements().first();t&&(n.option("height")||n.option("height",t.outerHeight()),n.option("width")||n.option("width",t.outerWidth()),this._dimensionChanged())},_renderIndicator:function(){if(!this.option("showIndicator")){this._cleanIndicators();return}var t=this._$indicator=n("<div>").addClass(y).appendTo(this._$wrapper);n.each(this.option("items")||[],function(){n("<div>").addClass(h).appendTo(t)})},_cleanIndicators:function(){this._$indicator&&this._$indicator.remove()},_renderSelectedIndicatorItem:function(){var n=this.option("selectedIndex");this._itemElements().removeClass(v).eq(n).addClass(v),this._element().find(p).removeClass(w).eq(n).addClass(w)},_renderUserInteraction:function(){var t=this,i=t._element(),r=t.option("swipeEnabled")&&this._itemsCount()>1,e=r?"pointer":"default",f;i.dxSwipeable({disabled:this.option("disabled")||!r,startAction:n.proxy(t._handleSwipeStart,t),updateAction:n.proxy(t._handleSwipeUpdate,t),endAction:n.proxy(t._handleSwipeEnd,t),itemSizeFunc:n.proxy(t._itemWidth,t)}),f=this._createAction(this._handleIndicatorSelect);i.find(p).off(u.addNamespace("dxclick",this.NAME)).on(u.addNamespace("dxclick",this.NAME),function(n){f({jQueryEvent:n})})},_handleIndicatorSelect:function(t){var f=t.jQueryEvent,i=t.component,r;u.needSkipEvent(f)||i.option("indicatorEnabled")&&(r=n(f.target).index(),i._renderContainerPosition(i.option("selectedIndex")-r,!0).done(function(){this._suppressRenderItemPositions=!0,i.option("selectedIndex",r)}))},_renderNavButtons:function(){var t=this;if(!t.option("showNavButtons")){t._cleanNavButtons();return}t._prevNavButton=n("<div />").dxGalleryNavButton({direction:"prev",clickAction:function(){t.prevItem(!0)}}).appendTo(this._$wrapper),t._nextNavButton=n("<div />").dxGalleryNavButton({direction:"next",clickAction:function(){t.nextItem(!0)}}).appendTo(this._$wrapper),this._renderNavButtonsVisibility()},_cleanNavButtons:function(){this._prevNavButton&&this._prevNavButton.remove(),this._prevNavButton&&this._nextNavButton.remove()},_renderNavButtonsVisibility:function(){var i,r;if(this.option("showNavButtons")){var t=this.option("selectedIndex"),u=this.option("loop"),n=this._itemsCount();(this._prevNavButton.show(),this._nextNavButton.show(),u)||(i=n<2||t===n-1,r=n<2||t===0,r&&this._prevNavButton.hide(),i&&this._nextNavButton.hide())}},_setupSlideShow:function(){var n=this,t=n.option("slideshowDelay");t&&(clearTimeout(n._slideshowTimer),n._slideshowTimer=setTimeout(function(){if(n._userInteraction){n._setupSlideShow();return}n.nextItem(!0).done(n._setupSlideShow)},t))},_handleSwipeStart:function(n){var t=this._itemsCount();if(!t){n.jQueryEvent.cancel=!0;return}if(this._stopItemAnimations(),this._startSwipe(),this._userInteraction=!0,!this.option("loop")){var i=this.option("selectedIndex"),r=t-i-1,u=i,f=this.option("rtlEnabled");n.jQueryEvent.maxLeftOffset=f?u:r,n.jQueryEvent.maxRightOffset=f?r:u}},_stopItemAnimations:function(){s.isAnimating(this._$container)&&s.stop(this._$container,!0)},_handleSwipeUpdate:function(n){this._renderContainerPosition(this._offsetDirection()*n.jQueryEvent.offset)},_handleSwipeEnd:function(n){var t=n.jQueryEvent.targetOffset*this._offsetDirection();this._renderContainerPosition(t,!0).done(function(){var n=this.option("selectedIndex"),i=this._fitIndex(n-t);this._suppressRenderItemPositions=!0,this.option("selectedIndex",i),this._renderContainerPosition(),this._userInteraction=!1,this._setupSlideShow()})},_flipIndex:function(n){if(!this.option("loop"))return n;var t=this._itemsCount();return n=n%t,n>(t+1)/2&&(n-=t),n<-(t-1)/2&&(n+=t),n},_fitIndex:function(n){if(!this.option("loop"))return n;var t=this._itemsCount();return n=n%t,n<0&&(n+=t),n},_clean:function(){this.callBase(),this._cleanIndicators(),this._cleanNavButtons()},_dispose:function(){clearTimeout(this._slideshowTimer),this.callBase()},_handleSelectedIndexChanged:function(){this._suppressRenderItemPositions||this._renderContainerPosition(),this._suppressRenderItemPositions=!1,this._renderSelectedIndicatorItem(),this._renderNavButtonsVisibility()},_visibilityChanged:function(n){n&&this._dimensionChanged()},_optionChanged:function(n,t){switch(n){case"width":this.callBase.apply(this,arguments),this._dimensionChanged();break;case"animationDuration":this._renderNavButtonsVisibility();break;case"loop":this._element().toggleClass(l,t),this._renderNavButtonsVisibility();return;case"selectedIndex":this._handleSelectedIndexChanged(),this.callBase.apply(this,arguments);return;case"showIndicator":this._renderIndicator();return;case"showNavButtons":this._renderNavButtons();return;case"slideshowDelay":this._setupSlideShow();return;case"swipeEnabled":case"indicatorEnabled":this._renderUserInteraction();return;default:this.callBase.apply(this,arguments)}},goToItem:function(t,i){var r=new n.Deferred,u=this.option("selectedIndex"),f=this._itemsCount();return(t=this._fitIndex(t),t>f-1||t<0)?r.resolveWith(this).promise():(this._renderContainerPosition(u-t,i).done(function(){this._suppressRenderItemPositions=!0,this.option("selectedIndex",t),r.resolveWith(this)}),r.promise())},prevItem:function(n){return this.goToItem(this.option("selectedIndex")-1,n)},nextItem:function(n){return this.goToItem(this.option("selectedIndex")+1,n)}}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,u=t.utils,f=r.events,e=t.fx,c=t.translator,l="dx-overlay",a="dx-overlay-wrapper",v="dx-overlay-content",y="dx-overlay-shader",p="dx-overlay-modal",w="dx-rtl",o=["showingAction","shownAction","hidingAction","hiddenAction","positioningAction","positionedAction"],b=1e3,k=[],d="dx-state-disabled",s=t.devices.real(),g=s.platform==="android"&&/^4\.0(\.\d)?/.test(s.version.join("."))&&navigator.userAgent.indexOf("Chrome")===-1,nt=function(n){if(n.width(),g){var t=n.parents(),i=t.is(".dx-scrollable-native");i||(t.css("backface-visibility","hidden"),t.css("backface-visibility"),t.css("backface-visibility","visible"))}},h=function(t){return n(t instanceof n.Event?t.target:t)};t.registerComponent("dxOverlay",r.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({activeStateEnabled:!1,visible:!1,deferRendering:!0,shading:!0,shadingColor:"",position:{my:"center",at:"center",of:window},width:function(){return n(window).width()*.8},height:function(){return n(window).height()*.8},animation:{show:{type:"pop",duration:400},hide:{type:"pop",duration:400,to:{opacity:0,scale:0},from:{opacity:1,scale:1}}},closeOnOutsideClick:!1,showingAction:null,shownAction:null,hidingAction:null,hiddenAction:null,contentTemplate:"template",targetContainer:i,hideTopOverlayHandler:i,closeOnTargetScroll:!1,positioningAction:null,positionedAction:null})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(){var r=t.devices.real(),u=r.platform,i=r.version;return u==="android"&&(i[0]<4||i[0]==4&&i[1]<=1)},options:{animation:{show:{type:"fade",duration:400},hide:{type:"fade",duration:400,to:{opacity:0},from:{opacity:1}}}}}])},_optionsByReference:function(){return n.extend(this.callBase(),{animation:!0})},_wrapper:function(){return this._$wrapper},_container:function(){return this._$container},_init:function(){this.callBase(),this._initActions(),this._initCloseOnOutsideClickHandler(),this._$wrapper=n("<div>").addClass(a),this._$container=n("<div>").addClass(v);var t=this._element();this._$wrapper.addClass(t.attr("class")),t.addClass(l);this._$wrapper.on("MSPointerDown",n.noop)},_clean:n.noop,_initOptions:function(n){this._initTargetContainer(n.targetContainer),this._initHideTopOverlayHandler(n.hideTopOverlayHandler),this.callBase(n)},_initTargetContainer:function(r){r=r===i?t.overlayTargetContainer():r;var f=this._element(),u=f.closest(r);u.length||(u=n(r).first()),this._$targetContainer=u.length?u:f.parent()},_targetContainer:function(){return this._$targetContainer},_initHideTopOverlayHandler:function(t){this._hideTopOverlayHandler=t!==i?t:n.proxy(this._defaultHideTopOverlayHandler,this)},_defaultHideTopOverlayHandler:function(){this.hide()},_initActions:function(){this._actions={},n.each(o,n.proxy(function(t,i){this._actions[i]=this._createActionByOption(i)||n.noop},this))},_visibilityChanged:function(n){n&&this._dimensionChanged()},_dimensionChanged:function(){this._renderGeometry()},_initCloseOnOutsideClickHandler:function(){this._documentDownHandler=n.proxy(function(){this._handleDocumentDown.apply(this,arguments)},this)},_handleDocumentDown:function(t){var i,r,u;this._isTopOverlay()&&(i=this.option("closeOnOutsideClick"),n.isFunction(i)&&(i=i(t)),i&&(r=this._$container,u=!r.is(t.target)&&!n.contains(r.get(0),t.target),u&&(t.preventDefault(),this.hide())))},_isTopOverlay:function(){var n=this._zIndexStack();return n[n.length-1]===this._zIndex},_zIndexStack:function(){return k},_zIndexInitValue:function(){return b},_renderVisibilityAnimate:function(){var t=this.option("visible");return t&&(this._showTimestamp=n.now()),this._stopAnimation(),t?this._makeVisible():this._makeHidden()},_updateRegistration:function(t){var i=this._zIndexStack(),r,u;t?this._zIndex||(r=i.length,this._zIndex=(r?i[r-1]:this._zIndexInitValue())+1,i.push(this._zIndex)):this._zIndex&&(u=n.inArray(this._zIndex,i),i.splice(u,1),delete this._zIndex)},_normalizePosition:function(){this._position=this.option("position")},_makeVisible:function(){this._normalizePosition();var r=this,i=n.Deferred(),u=r.option("animation")||{},t=u.show,f=t&&t.complete||n.noop;return this._updateRegistration(!0),t&&t.to&&(t=n.extend({type:"slide"},t),n.extend(t.to,{position:this._position})),this._isHidingActionCancelled?(delete this._isHidingActionCancelled,i.resolve()):(this._actions.showingAction(),this._$wrapper.css("z-index",this._zIndex),this._$container.css("z-index",this._zIndex),this._toggleVisibility(!0),this._animate(t,function(){f.apply(this,arguments),r._actions.shownAction(),i.resolve()})),i.promise()},_makeHidden:function(){var t=this,i=n.Deferred(),f=this.option("animation")||{},r=f.hide,e=r&&r.complete||n.noop,u={cancel:!1};return this._actions.hidingAction(u),u.cancel?(this._isHidingActionCancelled=!0,this.option("visible",!0),i.resolve()):(this._toggleShading(!1),this._animate(r,function(){t._toggleVisibility(!1),e.apply(this,arguments),t._updateRegistration(!1),t._actions.hiddenAction(),i.resolve()})),i.promise()},_animate:function(t,i){t?e.animate(this._$container,n.extend({},t,{complete:i})):i()},_stopAnimation:function(){e.stop(this._$container,!0)},_toggleVisibility:function(n){this._stopAnimation(),n||u.triggerHidingEvent(this.content()),this.callBase.apply(this,arguments),this._$container.toggle(n),this._toggleShading(n),n?(this._renderContent(),this._moveToTargetContainer(),this._renderGeometry(),u.triggerShownEvent(this.content())):this._moveFromTargetContainer(),this._toggleSubscriptions(n),this._updateRegistration(n)},_toggleShading:function(n){this._$wrapper.toggleClass(p,this.option("shading")&&!this.option("targetContainer")),this._$wrapper.toggleClass(y,n&&this.option("shading")),this._$wrapper.css("background-color",this.option("shading")?this.option("shadingColor"):"")},_toggleSubscriptions:function(n){this._toggleHideTopOverlayCallback(n),this._toggleDocumentDownHandler(n),this._toggleParentsScrollSubscription(n)},_toggleHideTopOverlayCallback:function(n){this._hideTopOverlayHandler&&(n?t.hideTopOverlayCallback.add(this._hideTopOverlayHandler):t.hideTopOverlayCallback.remove(this._hideTopOverlayHandler))},_toggleDocumentDownHandler:function(t){var r=this,i=f.addNamespace("dxpointerdown",r.NAME);if(t)n(document).on(i,this._documentDownHandler);else n(document).off(i,this._documentDownHandler)},_toggleParentsScrollSubscription:function(n){var i=this._position;if(i&&i.of){var t=this,r=t.option("closeOnTargetScroll"),u=f.addNamespace("scroll",t.NAME),e=h(i.of).parents().add(window);t._proxiedTargetScrollHandler=t._proxiedTargetScrollHandler||function(){return t._targetScrollHandler.apply(t,arguments)},e[n&&r?"on":"off"](u,t._proxiedTargetScrollHandler)}},_targetScrollHandler:function(t){var i=this.option("closeOnTargetScroll"),r=!1;n.isFunction(i)&&(r=i(t)),r||this.hide()},_renderContent:function(){this._contentAlreadyRendered||!this.option("visible")&&this.option("deferRendering")||(this._contentAlreadyRendered=!0,this.callBase())},_renderContentImpl:function(n){var t=this._element(),i=n||this._getTemplate(this.option("contentTemplate"));this._$container.append(t.contents()).appendTo(t),i&&i.render(this.content())},_fireContentReadyAction:function(){this.option("visible")&&this._moveToTargetContainer(),this.callBase.apply(this,arguments)},_moveFromTargetContainer:function(){this._$container.appendTo(this._element()),this._detachWrapperToTargetContainer()},_detachWrapperToTargetContainer:function(){this._$wrapper.detach()},_moveToTargetContainer:function(){this._attachWrapperToTargetContainer(),this._$container.appendTo(this._$wrapper)},_attachWrapperToTargetContainer:function(){var n=this._element();!this._$targetContainer||this._$targetContainer[0]===n.parent()[0]?this._$wrapper.appendTo(n):this._$wrapper.appendTo(this._$targetContainer)},_renderGeometry:function(){this.option("visible")&&this._renderGeometryImpl()},_renderGeometryImpl:function(){this._stopAnimation(),this._normalizePosition(),this._renderShading(),this._renderDimensions(),this._renderPosition()},_renderShading:function(){var n=this._$wrapper,t=this._getTargetContainer();n.css("position",t.get(0)===window?"fixed":"absolute"),this.option("shading")&&n.show(),this._renderShadingDimensions(),this._renderShadingPosition()},_renderShadingPosition:function(){if(this.option("shading")){var n=this._getTargetContainer();t.position(this._$wrapper,{my:"top left",at:"top left",of:n})}},_renderShadingDimensions:function(){if(this.option("shading")){var n=this._getTargetContainer();this._$wrapper.css({width:n.outerWidth(),height:n.outerHeight()})}},_getTargetContainer:function(){var n=this._position,t=this.option("targetContainer"),i=n?n.of:null;return h(t||i)},_renderDimensions:function(){this._$container.outerWidth(this.option("width")).outerHeight(this.option("height"))},_renderPosition:function(){var i,n,r;c.resetPosition(this._$container),i=this._position,n=t.calculatePosition(this._$container,i),this._actions.positioningAction({position:n}),r=t.position(this._$container,n),this._actions.positionedAction({position:r}),nt(this._$container)},_dispose:function(){this._stopAnimation(),this._toggleSubscriptions(!1),this._updateRegistration(!1),this._actions=null,this.callBase(),this._$wrapper.remove(),this._$container.remove()},_toggleDisabledState:function(n){this.callBase.apply(this,arguments),this._$container.toggleClass(d,n)},_toggleRTLDirection:function(n){this._$container.toggleClass(w,n)},_optionChanged:function(t,i){if(n.inArray(t,o)>-1){this._initActions();return}switch(t){case"shading":case"shadingColor":this._toggleShading(this.option("visible"));break;case"width":case"height":case"position":this._renderGeometry();break;case"visible":this._renderVisibilityAnimate(i).done(n.proxy(function(){this._animateDeferred&&(this._animateDeferred.resolveWith(this),delete this._animateDeferred)},this));break;case"targetContainer":this._initTargetContainer(i),this._invalidate();break;case"deferRendering":case"contentTemplate":this._invalidate();break;case"closeOnOutsideClick":this._toggleDocumentDownHandler(this.option("visible"));break;case"closeOnTargetScroll":this._toggleParentsScrollSubscription(this.option("visible"));break;case"animation":break;case"rtlEnabled":this._toggleRTLDirection(i);break;default:this.callBase.apply(this,arguments)}},toggle:function(t){if(t=t===i?!this.option("visible"):t,t===this.option("visible"))return n.Deferred().resolve().promise();var r=n.Deferred();return this._animateDeferred=r,this.option("visible",t),r.promise()},show:function(){return this.toggle(!0)},hide:function(){return this.toggle(!1)},content:function(){return this._$container},repaint:function(){this._renderGeometry()}}))}(jQuery,DevExpress),function(n,t){var f=t.ui,u="dx-toast",r=u+"-",e=r+"wrapper",o=r+"content",s=r+"message",h=r+"icon",c="dxToast",l=["info","warning","error","success"],a=[],v=9e3;t.registerComponent(c,f.dxOverlay.inherit({_setDefaultOptions:function(){this.callBase(),this.option({message:"",type:"info",displayTime:2e3,position:{my:"bottom center",at:"bottom center",of:window,offset:"0 -20"},animation:{show:{type:"fade",duration:400,from:0,to:1},hide:{type:"fade",duration:400,to:0}},shading:!1,height:"auto"})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:{platform:"win8"},options:{position:{my:"top center",at:"top center",of:window,offset:"0 0"},width:function(){return n(window).width()}}}])},_renderContentImpl:function(){this.option("message")&&(this._message=n("<div>").addClass(s).text(this.option("message")).appendTo(this.content())),n.inArray(this.option("type").toLowerCase(),l)>-1&&this.content().prepend(n("<div>").addClass(h)),this.callBase()},_render:function(){this.callBase(),this._element().addClass(u),this._wrapper().addClass(e),this._$container.addClass(r+String(this.option("type")).toLowerCase()),this.content().addClass(o)},_makeVisible:function(){return this.callBase.apply(this,arguments).done(n.proxy(function(){clearTimeout(this._hideTimeout),this._hideTimeout=setTimeout(n.proxy(function(){this.hide()},this),this.option("displayTime"))},this))},_zIndexStack:function(){return a},_zIndexInitValue:function(){return v},_dispose:function(){clearTimeout(this._hideTimeout),this.callBase()},_optionChanged:function(n,t,i){switch(n){case"type":this._$container.removeClass(r+i),this._$container.addClass(r+String(t).toLowerCase());break;case"message":this._message&&this._message.text(t);break;case"displayTime":break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var f=t.ui,o=f.events,r=t.translator,s="dx-popup",a="dx-popup-wrapper",h="dx-popup-fullscreen",v="dx-popup-content",y="dx-popup-draggable",c="dx-popup-title",l="."+c,p="dx-closebutton",w="dx-popup-title-has-button",u="dx-popup-bottom",b="dx-toolbar-before",k="dx-toolbar-after",g=".dx-overlay-content",e=40,d=function(i){var f=t.devices.current(i),r={cancel:{subclass:"dx-popup-cancel"},clear:{subclass:"dx-popup-clear"},done:{subclass:"dx-popup-done"}};return f.ios&&(n.extend(r.cancel,{parent:l,wraperClass:b}),n.extend(r.clear,{parent:l,wraperClass:k}),n.extend(r.done,{wraperClass:u})),(f.android||f.platform==="desktop"||f.win8||f.tizen||f.generic)&&(n.extend(r.cancel,{wraperClass:u}),n.extend(r.clear,{wraperClass:u}),n.extend(r.done,{wraperClass:u})),r};t.registerComponent("dxPopup",f.dxOverlay.inherit({_setDefaultOptions:function(){this.callBase(),this.option({title:"",showTitle:!0,fullScreen:!1,titleTemplate:"title",dragEnabled:!1,cancelButton:null,doneButton:null,clearButton:null,closeButton:null})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:{platform:"win8"},options:{width:function(){return n(window).width()}}},{device:{platform:"win8",phone:!0},options:{position:{my:"top center",at:"top center",of:window,offset:"0 0"}}},{device:[{platform:"ios"},{platform:"ios7"}],options:{animation:this._iosAnimation}},{device:function(n){return t.devices.real().platform==="generic"&&n.platform==="generic"},options:{dragEnabled:!0}}])},_iosAnimation:{show:{type:"slide",duration:400,from:{position:{my:"top",at:"bottom",of:window}},to:{position:{my:"center",at:"center",of:window}}},hide:{type:"slide",duration:400,from:{opacity:1,position:{my:"center",at:"center",of:window}},to:{opacity:1,position:{my:"top",at:"bottom",of:window}}}},_init:function(){this.callBase(),this._$content=this._container().wrapInner(n("<div />").addClass(v)).children().eq(0)},_render:function(){this._element().addClass(s),this._wrapper().addClass(a),this._container().toggleClass(y,this.option("dragEnabled")).toggleClass(h,this.option("fullScreen")),this.callBase()},_renderContentImpl:function(){this.callBase(this.option("_templates").content),this._renderTitle(),this._renderDrag(),this._renderButtons()},_renderTitle:function(){if(this.option("showTitle")){if(this._$title=this._$title||n("<div />").addClass(c),this._$title.empty(),this._element().append(this._$title),this.option("title"))this._defaultTitleRender();else{var t=this._getTemplateByOption("titleTemplate");t&&t.render(this._$title)}this._$title.prependTo(this._container())}else this._$title&&this._$title.detach()},_renderDrag:function(){if(this._$title){var t=o.addNamespace("dxdragstart",this.NAME),i=o.addNamespace("dxdrag",this.NAME);if(this._$title.off(t).off(i),this.option("dragEnabled"))this._$title.on(t,n.proxy(this._handleTitleDragStart,this)).on(i,n.proxy(this._handleTitleDragUpdate,this))}},_handleTitleDragStart:function(n){n.targetElements=[],this._prevOffset={x:0,y:0},this._dragHandled=!0;var t=r.locate(this._container()),i=this._allowedOffsets();n.maxLeftOffset=t.left+i.left,n.maxRightOffset=-t.left+i.right,n.maxTopOffset=t.top+i.top,n.maxBottomOffset=-t.top+i.bottom},_handleTitleDragUpdate:function(n){var i=r.locate(this._container()),t=n.offset,u=this._prevOffset;r.move(this._container(),{left:i.left+(t.x-u.x),top:i.top+(t.y-u.y)}),this._prevOffset=t},_allowedOffsets:function(){var t=this._container(),n=this._targetContainer(),i=t.outerWidth(),r=n.width(),u=n.height();return{top:0,bottom:u-e,left:i-e,right:r-e}},_renderButtons:function(){var n=t.devices.current().win8?["Close","Done","Clear","Cancel"]:["Close","Cancel","Clear","Done"],i;for(n.extractButtonName=this.option("rtlEnabled")?n.pop:n.shift;!!n.length;)i=n.extractButtonName(),this["_render"+i+"Button"]()},_defaultTitleRender:function(){this._$title.text(this.option("title"))},_renderCloseButton:function(){var t=!this.option("_templates").title&&!!this.option("closeButton")&&this.option("showTitle"),i;this._$title&&this._$title.toggleClass(w,t),t&&(i=this._createButtonAction(),n("<div/>").addClass(p).on(f.events.addNamespace("dxclick",this.NAME+"TitleCloseButton"),function(n){i({jQueryEvent:n})}).appendTo(this._$title))},_renderCancelButton:function(){this._renderSpecificButton(this.option("cancelButton"),{type:"cancel",text:Globalize.localize("Cancel")})},_renderClearButton:function(){this._renderSpecificButton(this.option("clearButton"),{type:"clear",text:Globalize.localize("Clear")})},_renderDoneButton:function(){this._renderSpecificButton(this.option("doneButton"),{type:"done",text:Globalize.localize("Done")})},_renderSpecificButton:function(n,t){var r=this._getRenderButtonParams(t.type),i;(this._removeButton(r),this._wrapper().toggleClass(s+"-"+t.type+"-visible",!!n),n)&&(i=this.option(t.type+"Button"),this._renderButton({text:i.text||t.text,clickAction:this._createButtonAction(i.clickAction)},r))},_createButtonAction:function(n){return this._createAction(n,{afterExecute:function(n){n.component.hide()}})},_getRenderButtonParams:function(t){return n.extend({},d()[t])},_renderButton:function(t,i){var f=n("<div/>").addClass(i.subclass).dxButton(t),e=i.parent?this._container().find(i.parent):this._container(),r=this._container().find("."+i.wraperClass);r.length||(r=n("<div/>").addClass(i.wraperClass).appendTo(e)),f.appendTo(r),this._container().find("."+u).addClass(i.subclass)},_removeButton:function(n){var t="."+(n.subclass||n.wraperClass);this.content()&&this.content().removeClass(n.subclass),this._container().find(t).remove()},_renderGeometryImpl:function(){this.callBase.apply(this,arguments),this._setContentHeight()},_renderDimensions:function(){this.option("fullScreen")?this._container().css({width:"100%",height:"100%"}):this.callBase.apply(this,arguments)},_renderShadingDimensions:function(){this.option("fullScreen")?this._wrapper().css({width:"100%",height:"100%"}):this.callBase.apply(this,arguments)},_renderPosition:function(){if(this.option("fullScreen"))r.move(this._container(),{top:0,left:0});else if(this._dragHandled){var t=this._container(),i=r.locate(t),n=this._allowedOffsets();r.move(t,{top:Math.min(Math.max(-n.top,i.top),n.bottom),left:Math.min(Math.max(-n.left,i.left),n.right)})}else this.callBase.apply(this,arguments)},_setContentHeight:function(){var t;if(this._$content){var n=this._$container.height(),i=this.option("cancelButton")||this.option("doneButton")||this.option("clearButton"),r=this._$wrapper.find(".dx-popup-bottom");this._$title&&(n-=this._$title.outerHeight(!0)||0),i&&(t=r.outerHeight(!0)||0,n-=t,this._$content.css("margin-bottom",t)),this.option("height")==="auto"?this._$content.css("height","auto"):n>0&&this._$content.css("height",n)}},_optionChanged:function(n,t){switch(n){case"visible":delete this._dragHandled,this.callBase.apply(this,arguments);break;case"showTitle":case"title":case"titleTemplate":this._renderTitle(),this._renderCloseButton(),this._setContentHeight();break;case"dragEnabled":this._renderDrag();break;case"cancelButton":this._renderCancelButton();break;case"clearButton":this._renderClearButton();break;case"doneButton":this._renderDoneButton();break;case"closeButton":this._renderCloseButton();break;case"height":this.callBase.apply(this,arguments),this._setContentHeight();break;case"fullScreen":this._container().toggleClass(h,t),this._refresh();break;default:this.callBase.apply(this,arguments)}},content:function(){return this._$content},container:function(){return this._$container}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,u=t.fx,f="dx-popover",e="dx-popover-wrapper",o="dx-popover-arrow",s="dx-popover-without-title",h={left:"right",top:"bottom",right:"left",bottom:"top"},c={top:{my:"bottom center",at:"top center"},bottom:{my:"top center",at:"bottom center"},right:{my:"left center",at:"right center"},left:{my:"right center",at:"left center"},topNone:{my:"bottom center",at:"top center",collision:"none"},bottomNone:{my:"top center",at:"bottom center",collision:"none"},rightNone:{my:"left center",at:"right center",collision:"none"},leftNone:{my:"right center",at:"left center",collision:"none"}},l="10 10";t.registerComponent("dxPopover",r.dxPopup.inherit({_setDefaultOptions:function(){this.callBase(),this.option({target:window,shading:!1,position:"bottom",closeOnOutsideClick:n.proxy(this._isOutsideClick,this),animation:{show:{type:"fade",from:0,to:1},hide:{type:"fade",to:0}},showTitle:!1,width:"auto",height:"auto",dragEnabled:!1,fullScreen:!1,closeOnTargetScroll:!0})},_defaultOptionsRules:function(){return[]},_render:function(){this._element().addClass(f),this._wrapper().addClass(e),this._renderArrow(),this.callBase()},_renderArrow:function(){this._$arrow=n("<div>").addClass(o).appendTo(this._wrapper())},_setContentHeight:function(n){n&&this.callBase()},_updateContentSize:function(n){var t,r,u,i;this._$content&&(t=this._position.at.split(" ")[0],n.h.oversize>0&&(t==="left"||t==="right")&&(r=this._$container.width()-n.h.oversize,this._$container.width(r)),n.v.oversize>0&&(t==="top"||t==="bottom")&&(u=this._$title?this._$title.outerHeight():0,i=this._$container.height()-n.v.oversize,this._$container.height(i),this._$content.outerHeight(i-u)))},_isOutsideClick:function(t){return!n(t.target).closest(this.option("target")).length},_animate:function(i){i&&t.fx.animate(this._$arrow,n.extend({},i,{complete:n.noop})),i&&i.to&&n.extend(i.to,{position:this._contentPosition}),this.callBase.apply(this,arguments)},_stopAnimation:function(){this.callBase.apply(this,arguments),u.stop(this._$arrow)},_renderTitle:function(){this._wrapper().toggleClass(s,!this.option("showTitle")),this.callBase()},_isPopoverLargerThanTarget:function(){var u=this._position.at.split(" ")[0],r=n(this._position.of),t,i;switch(u){case"top":case"bottom":t=this._$container.width(),i=r.outerWidth()+this._$arrow.width();break;case"left":case"right":t=this._$container.height(),i=r.outerHeight()+this._$arrow.height()}return t>i/2},_renderPosition:function(){this.callBase(),this._renderOverlayPosition(),this._renderArrowPosition()},_renderOverlayPosition:function(){var e;this._setContentHeight(!0),this._togglePositionClass("dx-position-"+this._positionAlias),t.translator.move(this._$arrow,{left:0,top:0}),t.translator.move(this._$container,{left:0,top:0});var i=n.extend({},this._position),o=n.extend({},i,{offset:this._$arrow.width()+" "+this._$arrow.height()}),r=t.calculatePosition(this._$container,o),u=r.v.flip,f=r.h.flip;this._updateContentSize(r),this._position.collision==="flip"&&(i.collision="fit"),e="dx-position-"+(u||f?h[this._positionAlias]:this._positionAlias),this._togglePositionClass(e),(u||f)&&n.extend(i,{my:i.at,at:i.my}),i.offset=this._updateContentOffset(u,f,i.offset),t.position(this._$container,i),this._contentPosition=i},_renderArrowPosition:function(){var f=this._isPopoverLargerThanTarget(),u=this._contentPosition.my.split(" ")[0],r=this._contentPosition.at.split(" ")[0],i;f?i={my:u,at:r,of:n(this.option("target"))}:(i=r,i={my:r,at:u,of:this._$container,offset:this._updateArrowOffset(i)}),i.my+=" center",i.at+=" center",t.position(this._$arrow,i)},_renderShadingPosition:function(){this.option("shading")&&this._$wrapper.css({top:0,left:0})},_renderShadingDimensions:function(){this.option("shading")&&this._$wrapper.css({width:"100%",height:"100%"})},_togglePositionClass:function(n){this._$wrapper.removeClass("dx-position-left dx-position-right dx-position-top dx-position-bottom"),this._$wrapper.addClass(n)},_normalizePosition:function(){var i=this.option("position");t.utils.isString(i)&&(i=n.extend({},c[i])),i.of||(i.of=this.option("target")),i.collision||(i.collision="flip"),i.boundaryOffset||(i.boundaryOffset=l),this._positionAlias=i.at.split(" ")[0],this._position=i},_getOffsetObject:function(n){var i=t.utils.stringPairToObject(n);return{h:i.x,v:i.y}},_updateContentOffset:function(n,t,i){var r=this._positionAlias,u=this._getOffsetObject(i),f=r==="top"&&!n||r==="bottom"&&n,e=r==="bottom"&&!n||r==="top"&&n,o=r==="left"&&!t||r==="right"&&t,s=r==="right"&&!t||r==="left"&&t;return f?u.h+" "+(u.v-(this._$arrow.height()-1)):e?u.h+" "+(u.v+(this._$arrow.height()-1)):o?u.h-(this._$arrow.width()-1)+" "+u.v:s?u.h+(this._$arrow.width()-1)+" "+u.v:void 0},_updateArrowOffset:function(n){switch(n){case"top":return"0 -1";case"bottom":return"0 1";case"left":return"-1 0";case"right":return"1 0"}},_optionChanged:function(n,t){switch(n){case"showTitle":case"title":case"titleTemplate":this.callBase.apply(this,arguments),this._normalizePosition(),this._renderPosition();break;case"target":this._normalizePosition(),this._renderPosition();break;case"fullScreen":t&&this.option("fullScreen",!1);break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t,i){var u=t.ui,r="dx-tooltip",f=r+"-wrapper";t.registerComponent("dxTooltip",u.dxPopover.inherit({_setDefaultOptions:function(){this.callBase(),this.option({showTitle:!1,title:i,titleTemplate:i})},_render:function(){this._element().addClass(r),this._wrapper().addClass(f),this.callBase()}}))}(jQuery,DevExpress),function(n,t,i){var u=t.ui,s=u.events,f=t.fx,g=t.utils,y=t.translator,h=t.support.transitionEndEventName,r="dx-slider",p=r+"-wrapper",c=r+"-handle",w="."+c,b=r+"-bar",l=r+"-range",k=l+"-visible",e=r+"-label",o=e+"-position-",a=r+"-tooltip",v=a+"-position-",d=a+"-on-hover-enabled";t.registerComponent("dxSliderHandle",u.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({activeStateEnabled:!1,hoverStateEnabled:!1,value:50,tooltipEnabled:!1,tooltipFormat:function(n){return n},tooltipPosition:"top",tooltipShowMode:"onHover",tooltipFitIn:null})},_render:function(){this.callBase(),this._element().addClass(c),this._renderTooltip()},_renderTooltip:function(){this.option("tooltipEnabled")?(this._$tooltip||(this._$tooltip=n("<div>").appendTo(this._element()).dxTooltip({visible:!0,height:i,target:this._element(),closeOnOutsideClick:!1,closeOnTargetScroll:!1,targetContainer:this._element(),hideTopOverlayHandler:null}),this._tooltip=this._$tooltip.dxTooltip("instance")),this._renderTooltipPosition(),this._renderTooltipShowMode(),this._renderValue()):this._removeTooltip()},_visibilityChanged:function(){this._dimensionChanged()},_dimensionChanged:function(){this._repaintTooltip()},_removeTooltip:function(){this._$tooltip&&(this._$tooltip.remove(),delete this._$tooltip,delete this._tooltip)},_renderTooltipPosition:function(){if(this._tooltip){var t=this.option("tooltipPosition");n.type(t)==="string"&&(t=t+"None"),this._tooltip.option("position",t)}},_repaintTooltip:function(){this._tooltip&&this._tooltip.repaint()},_renderValue:function(){if(this._tooltip){var n=this.option("tooltipFormat"),t=n(this.option("value"));this._tooltip.content().html(t),this._fitTooltipPosition()}},_renderTooltipShowMode:function(){this._element().toggleClass("dx-slider-tooltip-on-hover",/^onhover$/i.test(this.option("tooltipShowMode")))},_fitTooltipPosition:function(){if(this._$tooltip){var n=this._tooltip.content().parent(),o=n.outerWidth(),t=this.option("tooltipFitIn"),s=t.outerWidth(),i=t.offset().left,h=i+s,r=this._element(),u=r.outerWidth(),f=r.offset().left,c=f+u,e=Math.round(u/2-o/2),l=Math.ceil(i-f),a=Math.floor(h-c)+e*2,v=Math.min(Math.max(l,e),a);y.move(n,{left:v})}},_optionChanged:function(n){switch(n){case"tooltipFormat":this._renderValue();break;case"value":this._renderValue();break;case"tooltipEnabled":this._renderTooltip();break;case"tooltipPosition":this._renderTooltipPosition();break;case"tooltipShowMode":this._renderTooltipShowMode();break;case"tooltipFitIn":this._fitTooltipPosition();break;default:this.callBase.apply(this,arguments)}},fitTooltipPosition:function(){this._fitTooltipPosition()},repaint:function(){this._repaintTooltip(),this._renderTooltipPosition(),this._fitTooltipPosition()}})),t.registerComponent("dxSlider",u.dxEditor.inherit({_activeStateUnit:w,_setDefaultOptions:function(){this.callBase(),this.option({min:0,max:100,step:1,value:50,showRange:!0,tooltip:{enabled:!1,format:function(n){return n},position:"top",showMode:"onHover"},label:{visible:!1,position:"bottom",format:function(n){return n}}})},_render:function(){this._element().addClass(r),this._renderBar(),this._renderRange(),this._renderWrapper(),this._$wrapper.dxSwipeable({elastic:!1,startAction:n.proxy(this._handleSwipeStart,this),updateAction:n.proxy(this._handleSwipeUpdate,this),endAction:n.proxy(this._handleSwipeEnd,this),itemSizeFunc:n.proxy(this._itemWidthFunc,this)}),this._renderHandle(),this.callBase(),this._renderValue(),this._renderLabels(),this._renderStartHandler()},_visibilityChanged:function(){this.repaint()},_renderWrapper:function(){this._$wrapper=n("<div>").addClass(p).append(this._$bar).appendTo(this._element())},_renderBar:function(){this._$bar=n("<div>").addClass(b);this._$bar.off(h+"."+this.NAME).on(h,n.proxy(this._fitHandleTooltipPosition,this))},_renderRange:function(){this._$selectedRange=n("<div>").addClass(l).appendTo(this._$bar),this._renderRangeVisibility()},_renderRangeVisibility:function(){this._$selectedRange.toggleClass(k,Boolean(this.option("showRange")))},_renderHandle:function(){this._$handle=this._renderHandleImpl(this.option("value"),this._$handle)},_renderHandleImpl:function(i,r){var e=r||n("<div>").appendTo(this._$selectedRange),o=this._normalizeFormat(this.option("tooltip.format")),u=this.option("tooltip.enabled"),f=this.option("tooltip.position");return this._element().toggleClass(d,u&&t.devices.real().platform!=="ios").toggleClass(v+"bottom",u&&f==="bottom").toggleClass(v+"top",u&&f==="top"),e.dxSliderHandle({value:i,tooltipEnabled:u,tooltipPosition:f,tooltipFormat:o,tooltipShowMode:this.option("tooltip.showMode"),tooltipFitIn:this._element()})},_renderLabels:function(){if(this._element().removeClass(o+"bottom").removeClass(o+"top"),this.option("label.visible")){var i=this.option("min"),r=this.option("max"),u=this.option("label.position"),t=this._normalizeFormat(this.option("label.format"));this._$minLabel||(this._$minLabel=n("<div>").addClass(e).appendTo(this._$wrapper)),this._$minLabel.html(t(i)),this._$maxLabel||(this._$maxLabel=n("<div>").addClass(e).appendTo(this._$wrapper)),this._$maxLabel.html(t(r)),this._element().addClass(o+u)}else this._$minLabel&&(this._$minLabel.remove(),delete this._$minLabel),this._$maxLabel&&(this._$maxLabel.remove(),delete this._$maxLabel)},_normalizeFormat:function(t){var i=t;return i=typeof t=="string"?function(n){return Globalize.format(n,t)}:n.isFunction(t)?n.proxy(i,this):function(n){return n}},_renderDimensions:function(){if(this.callBase(),this._$bar){var n=this._$bar.outerWidth(!0)-this._$bar.outerWidth();this._$bar.width(this.option("width")-n)}},_renderStartHandler:function(){var t=s.addNamespace("dxpointerdown",this.NAME),i=this._createAction(n.proxy(this._handleStart,this),{excludeValidators:["gesture"]});this._element().off(t).on(t,function(n){n.preventDefault(),i({jQueryEvent:n})})},_itemWidthFunc:function(){return this._element().width()/this._swipePixelRatio()},_handleSwipeStart:function(n){var r=this.option("rtlEnabled"),t,i;this._startOffset=this._currentRatio,t=this._startOffset*this._swipePixelRatio(),i=(1-this._startOffset)*this._swipePixelRatio(),n.jQueryEvent.maxLeftOffset=r?i:t,n.jQueryEvent.maxRightOffset=r?t:i,this._swipeHandled=!0},_handleSwipeEnd:function(n){var t=this.option("rtlEnabled")?-1:1;delete this._swipeHandled,this._changeValueOnSwipe(this._startOffset+t*n.jQueryEvent.targetOffset/this._swipePixelRatio()),delete this._startOffset,this._renderValue()},_activeHandle:function(){return this._$handle},_handleSwipeUpdate:function(n){this._valueChangeEventInstance=n,this._updateHandlePosition(n)},_updateHandlePosition:function(n){var i=this.option("rtlEnabled")?-1:1,t=this._startOffset+i*n.jQueryEvent.offset/this._swipePixelRatio();this._$selectedRange.width(t*100+"%"),this._changeValueOnSwipe(t)},_swipePixelRatio:function(){var n=this.option("min"),t=this.option("max"),i=this._valueStep();return(t-n)/i},_valueStep:function(){var n=this.option("step");return(!n||isNaN(n))&&(n=1),n=parseFloat(n.toFixed(5)),n===0&&(n=1e-5),n},_changeValueOnSwipe:function(n){var t=this.option("min"),u=this.option("max"),r=this._valueStep(),o=n*(u-t),i=t+o,f,e;r<0||(i===u||i===t?this.option("value",i):(f=(r+"").split("."),e=f.length>1?f[1].length:e,i=Number((Math.round(o/r)*r+t).toFixed(e)),this.option("value",Math.max(Math.min(i,u),t))))},_handleStart:function(n){var t=n.jQueryEvent;s.needSkipEvent(t)||(this._feedbackOn(this._activeHandle(),!0),this._currentRatio=(u.events.eventData(t).x-this._$bar.offset().left)/this._$bar.width(),this.option("rtlEnabled")&&(this._currentRatio=1-this._currentRatio),this._valueChangeEventInstance=t,this._changeValueOnSwipe(this._currentRatio))},_renderValue:function(){var i=this.option("value"),n=this.option("min"),t=this.option("max"),r;if(!(n>t)){if(i<n){this.option("value",n),this._currentRatio=0;return}if(i>t){this.option("value",t),this._currentRatio=1;return}r=n===t?0:(i-n)/(t-n),this._animateRange({width:r*100+"%"}),this._currentRatio=r,this._activeHandle().dxSliderHandle("option","value",this.option("value"))}},_animateRange:function(t){f.stop(this._$selectedRange),this._swipeHandled||f.animate(this._$selectedRange,{type:"custom",duration:100,to:t,complete:n.proxy(this._fitHandleTooltipPosition,this)})},_fitHandleTooltipPosition:function(){this._activeHandle()&&this._activeHandle().dxSliderHandle("fitTooltipPosition")},_repaintHandle:function(){this._$handle.dxSliderHandle("repaint")},_optionChanged:function(n){switch(n){case"visible":this.callBase.apply(this,arguments),this._renderHandle(),this._repaintHandle();break;case"min":case"max":this._renderValue(),this._renderLabels();break;case"step":this._renderValue();break;case"value":this._renderValue(),this.callBase.apply(this,arguments);break;case"showRange":this._renderRangeVisibility();break;case"tooltip":this._renderHandle();break;case"label":this._renderLabels();break;case"rtlEnabled":this._toggleRTLDirection(),this._renderValue();break;default:this.callBase.apply(this,arguments)}},_dispose:function(){f.stop(this._$selectedRange),this.callBase.apply(this,arguments)},_refresh:function(){this._renderDimensions(),this._renderValue(),this._renderHandle()},_feedbackOff:function(n,t){(!n||t)&&this.callBase.apply(this,arguments)}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,f=r.events,o="dx-slider-handle",u="dx-range-slider",e=u+"-start-handle";t.registerComponent("dxRangeSlider",r.dxSlider.inherit({_setDefaultOptions:function(){this.callBase(),this.option({start:40,end:60,value:50})},_render:function(){this.callBase(),this._element().addClass(u)},_renderHandle:function(){this._$handleStart=this._renderHandleImpl(this.option("start"),this._$handleStart).addClass(e),this._$handleEnd=this._renderHandleImpl(this.option("end"),this._$handleEnd)},_handleStart:function(n){var i=n.jQueryEvent,t=this._$selectedRange,r=t.width(),u=f.eventData(i).x-this._$bar.offset().left,e=t.position().left,o=t.position().left+r,s=this.option("rtlEnabled"),h=(s?-1:1)*((e+o)/2-u)>0;this._feedbackOff(!0,!0),this._capturedHandle=h?this._$handleStart:this._$handleEnd,this.callBase(n)},_activeHandle:function(){return this._capturedHandle},_updateHandlePosition:function(n){var o=this.option("rtlEnabled"),s=o?-1:1,f=this.option("max"),i=this.option("min"),t=this._startOffset+s*n.jQueryEvent.offset/this._swipePixelRatio(),t=t.toPrecision(12),h=t*(f-i)+i,u,e,r;this._updateSelectedRangePosition(t,t),this._changeValueOnSwipe(t),u=this.option("start"),e=this.option("end"),u===e&&(r=h<u?this._$handleStart:this._$handleEnd,r&&r!==this._capturedHandle&&(this._updateSelectedRangePosition((u-i)/(f-i),(e-i)/(f-i)),this._feedbackOff(!0,!0),this._feedbackOn(r,!0),this._capturedHandle=r),this._updateSelectedRangePosition(t,t),this._changeValueOnSwipe(t))},_updateSelectedRangePosition:function(n,t){var i=this.option("rtlEnabled"),r=this._capturedHandle===this._$handleStart&&i||this._capturedHandle===this._$handleEnd&&!i,u=r?"right":"left";i^r?this._$selectedRange.css(u,100-t*100+"%"):this._$selectedRange.css(u,n*100+"%")},_changeValueOnSwipe:function(n){this._suppressValueChangeAction(),this.callBase(n),this._resumeValueChangeAction();var f=this._capturedHandle===this._$handleStart?"start":"end",t=this.option("start"),u=this.option("end"),r=this.option("value"),i=this.option("max"),e=this.option("min");t>i&&(t=i,this.option("start",i)),t<e&&(t=e,this.option("start",e)),u>i&&(u=i,this.option("end",i)),r>u&&f==="start"&&(r=u),r<t&&f==="end"&&(r=t),this.option(f,r)},_renderValue:function(){var i=this.option("start"),r=this.option("end"),n=this.option("min"),t=this.option("max"),u=this.option("rtlEnabled");i=Math.max(n,Math.min(i,t)),r=Math.max(i,Math.min(r,t)),this.option("start",i),this.option("end",r);var o=t===n?0:(i-n)/(t-n),s=t===n?0:(r-n)/(t-n),f=parseFloat((o*100).toPrecision(12))+"%",e=parseFloat(((1-s)*100).toPrecision(12))+"%";this._animateRange({right:u?f:e,left:u?e:f}),this._renderHandle()},_repaintHandle:function(){this._$handleStart.dxSliderHandle("repaint"),this._$handleEnd.dxSliderHandle("repaint")},_optionChanged:function(n){switch(n){case"start":case"end":this._renderValue(),this._createActionByOption("valueChangeAction")({start:this.option("start"),end:this.option("end")});break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t,i){var f=t.ui,e=t.fx,h=t.support,c=f.events,r=t.utils,y="dx-calendar",p="dx-calendar-body",w="dx-calendar-navigator",b="dx-calendar-other-month",k="dx-calendar-empty-cell",l="dx-calendar-disabled-navigator-link",d="dx-calendar-today",a="dx-calendar-selected-date",v="dx-calendar-contoured-date",g="dx-calendar-navigator-previous-year",nt="dx-calendar-navigator-previous-month",tt="dx-calendar-navigator-next-month",it="dx-calendar-navigator-next-year",o="dxCalendar.MonthView.ValueChanged",s="dxCalendar.MonthView.ContouredDateChanged",u=c.addNamespace("dxclick","dxCalendar"),rt=c.addNamespace("blur","dxCalendar"),ut=t.Class.inherit({ctor:function(n){this.date=n.date||new Date,this.rtl=n.rtl},render:function(n){this.rootElement=n,this.renderCore()},renderCore:n.noop}),ft={MonthView:ut.inherit({ctor:function(n){n=n||{},this.callBase(n),this.firstDayOfWeek=n.firstDayOfWeek||0,n.keyDownProcessor&&!n.disabled&&(this.keyDownProcessor=n.keyDownProcessor.reinitialize(this.keyDownHandler,this)),n.contouredDate&&(this.contouredDate=this.calculateContouredDate(n.contouredDate,n.value)),this.weeks=6,this.days=7,this.initialValue=n.value,this.keyboardNavigationUsed=n.keyboardNavigationUsed,this.min=n.min,this.max=n.max,this.disabled=n.disabled},dispose:function(){this.keyDownProcessor&&this.keyDownProcessor.dispose(),n(this.table).remove()},detachKeyDownProcessor:function(){var n=this.keyDownProcessor;return this.keyDownProcessor=i,n},renderCore:function(){var t=this;if(this.table=document.createElement("table"),this.renderHeader(),this.renderBody(),this.setValue(this.initialValue),!this.disabled)n(this.table).off(u).on(u,"td",function(n){t.cellClickHandler(n)});this.keyDownProcessor||this.disabled||(this.table.setAttribute("tabindex",-1),this.keyDownProcessor=new f.HierarchicalKeyDownProcessor({element:this.table,handler:this.keyDownHandler,context:this})),this.setContouredDate(this.contouredDate,!0),this.rootElement.appendChild(this.table)},renderHeader:function(){var t=this,r=this.table.createTHead(),u=r.insertRow(-1),n,i;this.iterateDays(function(r){n=document.createElement("th"),i=document.createTextNode(t.getDayCaption(t.firstDayOfWeek+r)),n.appendChild(i),u.appendChild(n)})},renderBody:function(){var i=this,f=document.createElement("tbody"),u,e,t,n,o,s=new Date;for(this.table.appendChild(f),u=0;u<this.weeks;++u)e=f.insertRow(-1),this.iterateDays(function(f){t=e.insertCell(-1),n=i.getDate(u,f),r.sameMonthAndYear(n,s)&&n.getDate()===s.getDate()&&t.setAttribute("class",d),r.dateInRange(n,i.min,i.max)?n.getMonth()!==i.date.getMonth()&&t.setAttribute("class",b):t.setAttribute("class",k),t.setAttribute("data-value",i.getShortDate(n)),o=document.createTextNode(n.getDate()),t.appendChild(o)})},getDayCaption:function(n){return n=n<7?n:Math.abs(n%7),Globalize.culture().calendar.days.namesShort[n]},getNavigatorCaption:function(){var n=Globalize.culture().calendar.months.names[this.date.getMonth()],t=this.date.getFullYear();return this.rtl?t+" "+n:n+" "+t},getDate:function(n,t){var i=r.getFirstMonthDate(this.date),f=i.getDay()-this.firstDayOfWeek,u=7*n-f;return u=f<0?u-7:u,i.setDate(i.getDate()+u+t),i},getShortDate:function(n){return n.getFullYear()+"/"+n.getMonth()+"/"+n.getDate()},getDateFromShortDate:function(n){var t=n.split("/");return new Date(t[0],t[1],t[2])},iterateDays:function(n){for(var t=this.rtl?this.days-1:0;this.rtl?t>=0:t<this.days;)n(t),this.rtl?--t:++t},cellClickHandler:function(t){var i=this.getDateFromShortDate(t.target.getAttribute("data-value"));r.dateInRange(i,this.min,this.max)&&(this.table.getAttribute("tabindex")&&this.table!==document.activeElement&&n(this.table).focus(),this.setValue(i,t.target))},keyDownHandler:function(n){var t,i;switch(n.key){case"leftArrow":this.keyboardNavigationUsed=!0,t=this.rtl?1:-1;break;case"rightArrow":this.keyboardNavigationUsed=!0,t=this.rtl?-1:1;break;case"upArrow":this.keyboardNavigationUsed=!0,t=-7;break;case"downArrow":this.keyboardNavigationUsed=!0,t=7;break;case"enter":this.keyboardNavigationUsed=!0,this.contouredDate&&this.setValue(this.contouredDate,this.tryGetCell(this.contouredDate));return;default:return}n.originalEvent.stopPropagation(),n.originalEvent.preventDefault(),i=this.calculateContouredDate(this.contouredDate,this.value),this.setContouredDate(new Date(i.getFullYear(),i.getMonth(),i.getDate()+t))},calculateContouredDate:function(n,t){var i;return r.sameMonthAndYear(n,this.date)&&(i=n),!i&&r.sameMonthAndYear(t,this.date)&&(i=t),i||r.getFirstMonthDate(this.date)},setContouredDate:function(t,i){if(this.keyboardNavigationUsed){t=r.normalizeDate(t,this.min,this.max);var u;this.contouredDate&&(u=this.tryGetCell(this.contouredDate),u&&u.removeClass(v)),this.contouredDate=t,u=this.tryGetCell(this.contouredDate),u&&u.addClass(v),i||n(this.table).trigger(s,t)}},setValue:function(n,t){if(this.value!==n){this.value=n;this.onValueChanged(n,t)}},tryGetCell:function(t){var r=t?n(this.table).find("td[data-value='"+this.getShortDate(t)+"']"):[];return r.length>0?r:i},onValueChanged:function(t,i){n(this.selectedCell).removeClass(a),this.selectedCell=i||this.tryGetCell(t),n(this.selectedCell).addClass(a),i&&(this.setContouredDate(t),n(this.rootElement).trigger(o,t))}})};t.registerComponent("dxCalendar",f.dxEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({monthViewType:ft.MonthView,firstDayOfWeek:1,min:i,max:i})},_initOptions:function(n){n.currentDate=r.normalizeDate(n.currentDate||n.value||new Date,n.min,n.max),this.callBase(n)},_clean:function(){!this.option("keyDownProcessor")&&this._keyDownProcessor&&this._keyDownProcessor.dispose(),this._view&&this._view.dispose(),this.callBase()},_refresh:function(){this._render()},_render:function(){var t=this,i;this.callBase(),this._element().addClass(y),this._initializeKeyDownProcessor(),this._oldView=this._view,i=this._oldView?this._oldView.detachKeyDownProcessor():this._keyDownProcessor.attachChildProcessor(),this._view=this._initializeMonthView(i),this._renderNavigator(),this._body||(this._body=n("<div />").addClass(p),this._element().append(this._body)),this._renderMonthView(),this._swipeable||(this._swipeable=this._element().dxSwipeable({elastic:!1,startAction:function(n){t._handleSwipeStart(n)},updateAction:n.noop,endAction:function(n){t._handleSwipeEnd(n)},itemWidthFunc:function(){return this._element().width()}}).dxSwipeable("instance"))},_initializeKeyDownProcessor:function(){var n=this;if(this._keyDownProcessor=this._keyDownProcessor||this.option("keyDownProcessor"),!this._keyDownProcessor){this._element().attr("tabindex",-1).on(u,function(){n._element().focus()}).on(rt,function(){n._view.setContouredDate(i)});this._keyDownProcessor=new f.HierarchicalKeyDownProcessor({element:this._element()})}this._keyDownProcessor.reinitialize(this._keyDownHandler,this)},_keyDownHandler:function(n){var t;switch(n.key){case"leftArrow":n.ctrl&&(t=this.option("rtlEnabled")?1:-1);break;case"rightArrow":n.ctrl&&(t=this.option("rtlEnabled")?-1:1);break;case"pageUp":t=-1;break;case"pageDown":t=1}if(t)n.originalEvent.stopPropagation(),n.originalEvent.preventDefault(),this._navigate(t);else return!0},_handleSwipeStart:function(){this._swipeInProgress=!0},_handleSwipeEnd:function(n){this._swipeInProgress&&(this._swipeInProgress=!1,n.jQueryEvent.targetOffset!==0&&this._navigate(this.option("rtlEnabled")?n.jQueryEvent.targetOffset:-n.jQueryEvent.targetOffset))},_initializeMonthView:function(n){var t=this.option("monthViewType");return new t({date:this.option("currentDate"),min:this.option("min"),max:this.option("max"),firstDayOfWeek:this.option("firstDayOfWeek"),value:this.option("value"),rtl:this.option("rtlEnabled"),disabled:this.option("disabled")||DevExpress.designMode,keyDownProcessor:n,contouredDate:this._oldView?this._oldView.contouredDate:i,keyboardNavigationUsed:this._oldView?this._oldView.keyboardNavigationUsed:i})},_renderNavigator:function(){var t=this,i=this.option("rtlEnabled")?12:-12,r=this.option("rtlEnabled")?1:-1,f=this.option("rtlEnabled")?-1:1,e=this.option("rtlEnabled")?-12:12;if(this._navigator)this._navigatorCaption.html(this._view.getNavigatorCaption());else{if(this._previousYearLink=n("<a href='javascript:void(0)'><\/a>").addClass(g),this._previousMonthLink=n("<a href='javascript:void(0)'><\/a>").addClass(nt),this._navigatorCaption=n("<span />").html(this._view.getNavigatorCaption()),this._nextMonthLink=n("<a href='javascript:void(0)'><\/a>").addClass(tt),this._nextYearLink=n("<a href='javascript:void(0)'><\/a>").addClass(it),!(this.option("disabled")||DevExpress.designMode)){this._previousYearLink.off(u).on(u,function(){t._navigate(i)});this._previousMonthLink.off(u).on(u,function(){t._navigate(r)});this._nextMonthLink.off(u).on(u,function(){t._navigate(f)});this._nextYearLink.off(u).on(u,function(){t._navigate(e)})}this._navigator=n("<div />").addClass(w).append(this._previousYearLink).append(this._previousMonthLink).append(this._navigatorCaption).append(this._nextMonthLink).append(this._nextYearLink),this._element().append(this._navigator)}this._applyNavigatorLinkVisibility(this._previousYearLink,i),this._applyNavigatorLinkVisibility(this._previousMonthLink,r),this._applyNavigatorLinkVisibility(this._nextMonthLink,f),this._applyNavigatorLinkVisibility(this._nextYearLink,e)},_applyNavigatorLinkVisibility:function(n,t){this._canNavigate(t)?n.removeClass(l):n.addClass(l)},_renderMonthView:function(){var t=this,i;this._view.render(this._body[0]);this._element().off(o).on(o,function(n,i){t.option("value",i)});this._element().off(s).on(s,function(n,i){i&&(r.sameMonthAndYear(t.option("currentDate"),i)||t.option("currentDate",r.getFirstMonthDate(i)))});this._oldView&&(this._initalizeViewDimensions(),this.animating=!0,i=this._getViewChangeAnimation(this._oldView,this._view,this._viewWidth,this.option("rtlEnabled")),i.oldView.then(i.newView).then(n.proxy(this._stopAnimationCallback,this)))},_initalizeViewDimensions:function(){this._viewWidth=this._viewWidth||this._body.width(),this._viewHeight=this._viewHeight||this._body.height()},_canNavigate:function(n){var t=this.option("currentDate"),i=n<0?new Date(t.getFullYear(),t.getMonth()+n+1,0):new Date(t.getFullYear(),t.getMonth()+n,1);return r.dateInRange(i,this.option("min"),this.option("max"))},_navigate:function(n){this._canNavigate(n)&&this.option("currentDate",new Date(this.option("currentDate").getFullYear(),this.option("currentDate").getMonth()+n,1))},_stopAnimationCallback:function(){this._forceStopAnimation(),this._oldView.dispose(),this._oldView=i},_forceStopAnimation:function(){this.animating&&(e.stop(n(this._oldView.table),!0),e.stop(n(this._view.table),!0),this.animating=!1)},_getViewChangeAnimation:function(t,i,r,u){var f=this._getViewChangeAnimationProperties(t,i,r,u);return{oldView:e.animate(n(t.table),f.oldViewAnimation),newView:e.animate(n(i.table),f.newViewAnimation)}},_getViewChangeAnimationProperties:function(n,t,r,u){var o="slide",s=n.date===t.date?0:300,c="cubic-bezier(.40, .80, .60, 1)",f={type:o,duration:s,easing:h.transition?c:i},e={type:o,duration:s,easing:h.transition?c:i};return t.date>n.date&&!u||t.date<n.date&&u?(f.from={left:0},f.to={left:-r},e.from={left:r},e.to={left:0}):(f.from={left:0},f.to={left:r},e.from={left:-r},e.to={left:0}),{oldViewAnimation:f,newViewAnimation:e}},_invalidate:function(){this._forceStopAnimation(),this.callBase()},_optionChanged:function(n,t){var u;switch(n){case"monthViewType":case"keyDownProcessor":break;case"currentDate":this._forceStopAnimation(),u=r.normalizeDate(t,this.option("min"),this.option("max")),this.option("currentDate",new Date(u.getFullYear(),u.getMonth(),1));case"min":case"max":case"firstDayOfWeek":case"rtlEnabled":this._invalidate();break;case"value":!t||r.sameMonthAndYear(this._view.date,t)?(u=r.normalizeDate(t,this.option("min"),this.option("max")),this._view.setValue(u),this.option("value",u)):this.option("currentDate",r.getFirstMonthDate(t));default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,h=t.utils,c=r.events,u="dx-calendar-picker",l=u+"-calendar-container",a=u+"-overlay",b=u+"-input-wrapper",e=u+"-input-wider-than-calendar-container",f=u+"-",v=c.addNamespace("dxpointerup","dxCalendarPicker"),o=function(n){for(var i=0,r=0,t=0;t<n.length;++t)n[t].length>r&&(i=t,r=n[t].length);return i},s=function(n){return n.length===1?Globalize.culture().calendar.patterns[n]:n},y=function(n){return s(n).indexOf("MMMM")!==-1},p=function(n){return s(n).indexOf("dddd")!==-1},w=function(n,t,i){var r=new Date(1888,y(n)?o(t):9,21,23,59,59,999);return p(n)&&r.setDate(r.getDate()-r.getDay()+o(i)),r};r.calculateMaximumDateFormatWidth=function(t,i,r){if(!r||n(r).is(":visible")){var f,e=2,u=n("<div>"+Globalize.format(w(t,Globalize.culture().calendar.months.names,Globalize.culture().calendar.days.names),t)+"<\/div>").css({visibility:"hidden","white-space":"nowrap",position:"absolute",float:"left"});return i&&u.css(i),u.appendTo(r?n(r):n("body")),f=u.width()+e,u.remove(),f}},r.dxCalendarPicker=r.dxDropDownEditor.inherit({NAME:"dxDateBox",_setDefaultOptions:function(){this.callBase(),this.option({valueChangeEvent:"keyup keydown keypress",formatString:Globalize.culture().calendar.patterns.d,formatWidthCalculator:r.calculateMaximumDateFormatWidth,closeOnValueChange:!0})},_formatWidthCalculator:function(){var n=this._element().find(".dx-texteditor-input"),r=this._button.outerWidth(),u=n.innerWidth()-n.width(),t=this.option("formatWidthCalculator"),i;return t&&(i=u+r+t(this.option("formatString"),{"font-style":n.css("font-style"),"font-variant":n.css("font-variant"),"font-weight":n.css("font-weight"),"font-size":n.css("font-size"),"font-family":n.css("font-family"),"letter-spacing":n.css("letter-spacing")},this._element())),i},_clean:function(){this._keyDownProcessor&&this._keyDownProcessor.dispose(),this._calendarKeyDownProcessor&&this._calendarKeyDownProcessor.dispose(),this._calendarContainer&&this._calendarContainer.remove(),this.callBase()},_render:function(){this.callBase(),this._element().addClass(u),this._keyDownProcessor=new r.HierarchicalKeyDownProcessor({element:this._input(),handler:this._keyDownHandler,context:this}),this._calendarKeyDownProcessor=this._keyDownProcessor.attachChildProcessor()},_calculateWidth:function(){return this.callBase()||this._formatWidthCalculator()},_keyDownHandler:function(t){switch(t.key){case"escape":t.originalEvent.preventDefault(),this._blur();return;default:return this._calendarContainer&&n(this._calendarContainer).is(":visible")?!0:void 0}},_applyDropDownDirectionClasses:function(n,t){this._element().width()>t?this._dropDown._wrapper().addClass(e):this._dropDown._wrapper().removeClass(e),this._cleanDirections(this._dropDown._wrapper()).addClass(n.horizontalClass+" "+n.verticalClass)},_cleanDirections:function(n){return n.removeClass(f+"left "+f+"right "+f+"top "+f+"bottom")},_createDropDown:function(){var r=this,n=this.option("rtlEnabled")?"right":"left",i="bottom";this.callBase({position:{my:n+" "+t.inverseAlign(i),at:n+" "+i},positioningAction:function(u){r._calendarContainer&&r._applyDropDownDirectionClasses({horizontalClass:f+(u.position.h.flip?n:t.inverseAlign(n)),verticalClass:f+(u.position.v.flip?t.inverseAlign(i):i)},r._calendarContainer.innerWidth())}})},_closeOutsideDropDownHandler:function(n){this.callBase(n,!0)},_renderDropDownContent:function(){var t=this;this._calendarContainer=n("<div />").addClass(l),this._calendar=this._calendarContainer.dxCalendar(n.extend(this.option("calendarOptions"),{value:this.option("value"),rtlEnabled:this.option("rtlEnabled"),keyDownProcessor:this._calendarKeyDownProcessor,min:this.option("min"),max:this.option("max")})).dxCalendar("instance");this._calendarContainer.on(v,function(n){t._calendarContainerPointerUpHandler(n)});return[this._calendarContainer]},_showDropDown:function(){if(!this._dropDownVisible()){var t=this._dropDownContainerRendered;this.callBase(),t||(this._calendar.optionChanged.add(n.proxy(this._calendarOptionChangedCallback,this)),this._dropDown._wrapper().addClass(a))}},_calendarContainerPointerUpHandler:function(n){n.dxPreventBlur=!0},_calendarOptionChangedCallback:function(n,t){switch(n){case"value":this.option("value",t)}},_optionValuesEqual:function(n,t,i){return n==="value"&&i===null?!1:this.callBase.apply(this,arguments)},_renderValue:function(){this.callBase(Globalize.format(this.option("value"),this.option("formatString")))},_handleValueChangeEvent:function(n){this._suppressUpdateValue();var i=Globalize.parseDate(this._input().val(),this.option("formatString"));this.callBase(n,i),this._resumeUpdateValue()},_blur:function(){this._input().blur()},_visibilityChanged:function(n){n&&this._renderDimensions()},_optionChanged:function(t,i){var u=this,f;switch(t){case"min":case"max":case"formatString":case"calendarOptions":this._invalidate();break;case"type":case"formatWidthCalculator":case"closeOnValueChange":break;case"value":i&&(f=h.normalizeDate(i,this.option("min"),this.option("max")),this.option("value",f),this._calendar&&this._calendar.option("value",i),this._dropDownVisible()&&this.option("closeOnValueChange")&&setTimeout(n.proxy(u._hideDropDown,u),50));default:this.callBase.apply(this,arguments)}}})}(jQuery,DevExpress),function(n,t,i){var r=t.ui,f=r.events,e="dx-calendar-picker-time-box",o="dx-texteditor-input-wrapper",u=f.addNamespace("dxclick","dxCalendarPickerTimeBox");t.registerComponent("dxCalendarPickerTimeBox",r.dxTextEditor.inherit({_processingKeyPress:i,_setDefaultOptions:function(){this.callBase(),this.option({valueChangeEvent:"keyup keydown keypress",formatString:Globalize.culture().calendar.patterns.t,formatWidthCalculator:r.calculateMaximumDateFormatWidth})},_formatWidthCalculator:function(){var t=this._element(),n=t.find(".dx-texteditor-input"),u=t.innerWidth()-t.width(),i=this.option("formatWidthCalculator"),r;return i&&(r=u+i(this.option("formatString"),{"font-style":n.css("font-style"),"font-variant":n.css("font-variant"),"font-weight":n.css("font-weight"),"font-size":n.css("font-size"),"font-family":n.css("font-family"),"letter-spacing":n.css("letter-spacing")})),r},_render:function(){var t=this,n=this._element();n.addClass(e),this.callBase();n.off(u).on(u,function(){t.focus()});this._repositionIcon(n.width())},_calculateWidth:function(){var t=this.callBase();return t||(t=this._formatWidthCalculator()),t},_renderValue:function(){this.callBase(Globalize.format(this.option("value"),this.option("formatString")))},_renderInput:function(){this.callBase(),this._element().addClass(o)},_repositionIcon:function(n){if(!this.option("rtlEnabled")){var r=t.browser.msie&&t.browser.version<9,i=r?[this._element().css("backgroundPositionX"),this._element().css("backgroundPositionY")]:this._element().css("background-position").split(" ");this._iconWidth=this._iconWidth||parseInt(i[0],10),r?(this._element().css("backgroundPositionX",n+this._iconWidth+"px"),this._element().css("backgroundPositionY",i[1])):this._element().css("background-position",n+this._iconWidth+"px "+i[1])}},_handleValueChangeEvent:function(n){this._suppressUpdateValue();var i=Globalize.parseDate(this._input().val(),this.option("formatString"));this.callBase(n,i),this._resumeUpdateValue()},_optionChanged:function(n){switch(n){case"formatWidthCalculator":break;case"formatString":this._invalidate();break;case"width":this.callBase.apply(this,arguments),this._repositionIcon(this._element().width());break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t,i){var s=t.ui,b=s.events,a=t.support,it=t.devices,e=Globalize,rt="dx-datebox",ut="dx-datepicker",ft="dx-datepicker-wrapper",et="dx-datepicker-rollers",k="dx-datepicker-roller",ot="dx-state-active",st="dx-datepicker-roller-current",v="dx-datepicker-item",ht="dx-datepicker-item-selected",ct="dx-datepicker-item-selected-frame",lt="dx-datepicker-item-selected-border",at="dx-datepicker-button-up",vt="dx-datepicker-button-down",yt="dx-datepicker-formatter-container",pt="dx-datepicker-value-formatter",wt="dx-datepicker-name-formatter",bt=["date","time","datetime"],kt=function(n){return n},d=function(t,i){var r=n("<div>").addClass(yt);return n("<span>").text(t).addClass(pt).appendTo(r),n("<span>").text(i).addClass(wt).appendTo(r),r},h="year",u="month",o="day",c="hours",l="minutes",y="seconds",g="milliseconds",nt=31536e7,r={};r[h]={getter:"getFullYear",setter:"setFullYear",possibleFormats:["yy","yyyy"],formatter:kt,startValue:i,endValue:i},r[o]={getter:"getDate",setter:"setDate",possibleFormats:["d","dd"],formatter:function(n,t,i){if(!t)return n;var r=new Date(i.getTime());return r.setDate(n),d(n,e.culture().calendar.days.names[r.getDay()])},startValue:1,endValue:i},r[u]={getter:"getMonth",setter:"setMonth",possibleFormats:["M","MM","MMM","MMMM"],formatter:function(n,t){var i=e.culture().calendar.months.names[n];return t?d(n+1,i):i},startValue:0,endValue:11},r[c]={getter:"getHours",setter:"setHours",possibleFormats:["H","HH","h","hh"],formatter:function(n){return e.format(new Date(0,0,0,n),"HH")},startValue:0,endValue:23},r[l]={getter:"getMinutes",setter:"setMinutes",possibleFormats:["m","mm"],formatter:function(n){return e.format(new Date(0,0,0,0,n),"mm")},startValue:0,endValue:59},r[y]={getter:"getSeconds",setter:"setSeconds",possibleFormats:["s","ss"],formatter:function(n){return e.format(new Date(0,0,0,0,0,n),"ss")},startValue:0,endValue:59},r[g]={getter:"getMilliseconds",setter:"setMilliseconds",possibleFormats:["f","ff","fff"],formatter:function(n){return e.format(new Date(0,0,0,0,0,0,n),"fff")},startValue:0,endValue:999};var p=function(){return[h,o,u,o]},f={date:{standardPattern:"yyyy-MM-dd",components:p()},time:{standardPattern:"HH:mm",components:[c,l]},datetime:{standardPattern:"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'",components:p().concat([c,l,y,g])},"datetime-local":{standardPattern:"yyyy'-'MM'-'dd'T'HH':'mm",components:p().concat([c,l,y])}},dt={date:"d",time:"t",datetime:"S","datetime-local":"f"},tt=function(n,t,i){i=i||f[t].standardPattern;var r=f[t].standardPattern;return Globalize.format(n,i)};(function(){var t="yyyy'-'MM'-'dd'T'HH':'mm'Z'",i=n("<input>").attr("type","datetime");i.val(tt(new Date,"datetime",t)),i.val()||(f.datetime.standardPattern=t)})();var gt=function(n){return Globalize.parseDate(n,f.datetime.standardPattern)||Globalize.parseDate(n,f["datetime-local"].standardPattern)||Globalize.parseDate(n,f.time.standardPattern)||Globalize.parseDate(n,f.date.standardPattern)||Date.parse&&Date.parse(n)&&new Date(Date.parse(n))},w=function(n,t){return new Date(n,t+1,0).getDate()},ni=function(t,u,e){if(!u)return i;isNaN(t.getTime())&&(t=new Date(0,0,0,0,0,0));var o=f[e];return n.each(o.components,function(){var n=r[this];t[n.setter](u[n.getter]())}),t};t.registerComponent("dxDatePickerRoller",s.dxScrollable.inherit({_setDefaultOptions:function(){this.callBase(),this.option({clickableItems:!1,showScrollbar:!1,useNative:!1,selectedIndex:0,items:[]})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:{platform:"win8"},options:{clickableItems:!0}},{device:{platform:"generic"},options:{scrollByContent:!0}}])},_init:function(){this.callBase(),this._renderSelectedItemFrame(),this._renderControlButtons()},_render:function(){this.callBase(),n.each(this._strategy._scrollers,function(t,i){i._correctLocation=n.noop}),this._element().addClass(k),this._renderItems(),this._renderSelectedValue(),this._renderItemsClick(),this._wrapAction("_endAction",n.proxy(this._handleEndAction,this))},_wrapAction:function(n,t){var i=this._strategy,r=i[n];i[n]=function(){return t.apply(this,arguments),r.apply(this,arguments)}},_renderItems:function(){var i=this.option("items")||[],t=n();this._$content.empty(),n.each(i,function(){t=t.add(n("<div>").addClass(v).append(this))}),this._$content.append(t),this._$items=t,this.update()},_renderSelectedItemFrame:function(){n("<div>").addClass(ct).append(n("<div>").addClass(lt)).appendTo(this._$container)},_renderControlButtons:function(){n("<div>").addClass(at).insertAfter(this._$container).dxButton({clickAction:n.proxy(this._handleUpButtonClick,this)}),n("<div>").addClass(vt).insertAfter(this._$container).dxButton({clickAction:n.proxy(this._handleDownButtonClick,this)})},_renderSelectedValue:function(n){n===i&&(n=this.option("selectedIndex")),n=this._fitIndex(n);var t=this._getItemPosition(n);this.option().selectedIndex=n,this._moveTo({top:t}),this._renderActiveStateItem()},_fitIndex:function(n){var i=this.option("items")||[],t=i.length;return n>=t?t-1:n<0?0:n},_renderItemsClick:function(){var t="."+v,i=b.addNamespace("dxclick",this.NAME);if(this._element().off(i,t),this.option("clickableItems"))this._element().on(i,t,n.proxy(this._handleItemClick,this))},_handleItemClick:function(n){this._renderSelectedValue(this._itemElementIndex(this._closestItemElement(n)))},_itemElementIndex:function(n){return this._itemElements().index(n)},_closestItemElement:function(n){return n.currentTarget},_itemElements:function(){return this._element().find("."+v)},_renderActiveStateItem:function(){var t=this.option("selectedIndex");n.each(this._$items,function(i){n(this).toggleClass(ht,t===i)})},_handleUpButtonClick:function(){this._animation=!0,this.option("selectedIndex",this.option("selectedIndex")-1)},_handleDownButtonClick:function(){this._animation=!0,this.option("selectedIndex",this.option("selectedIndex")+1)},_getItemPosition:function(n){return Math.round(this._itemHeight()*n)},_moveTo:function(n){n=this._normalizeLocation(n);var r=this._location(),i={x:-(r.left-n.left),y:-(r.top-n.top)};this._isVisible()&&(i.x||i.y)&&(this._strategy._prepareDirections(!0),this._animation?(t.fx.animate(this._$content,{duration:200,type:"slide",to:{top:n.top}}),delete this._animation):this._strategy.handleMove({delta:i}))},_handleEndAction:function(){if(this._changedByIndex){this._changedByIndex=!1,this._renderSelectedValue();return}var n=-this._location().top/this._itemHeight(),t=Math.round(n);this._animation=!0,this._renderSelectedValue(t)},_itemHeight:function(){var n=this._$items.first();return n.outerHeight()+parseFloat(n.css("margin-top")||0)},_toggleActive:function(n){this._element().toggleClass(ot,n)},_isVisible:function(){return this._$container.is(":visible")},_optionChanged:function(n){switch(n){case"selectedIndex":this._renderSelectedValue(),this._changedByIndex=!0,this._strategy.update(),this._strategy.handleEnd({velocity:{x:0,y:0}});break;case"items":this._renderItems(),this._renderSelectedValue();break;case"clickableItems":this._renderItemsClick();break;default:this.callBase.apply(this,arguments)}}})),t.registerComponent("dxDatePicker",s.dxPopup.inherit({_valueOption:function(){return new Date(this.option("value"))=="Invalid Date"?new Date:new Date(this.option("value"))},_setDefaultOptions:function(){this.callBase(),this.option({minDate:new Date(1),maxDate:new Date(n.now()+nt),format:"date",value:new Date,culture:Globalize.culture().name,showNames:!1,cancelButton:{icon:"close",clickAction:n.proxy(function(){this._value=this._valueOption()},this)},doneButton:{icon:"save",clickAction:n.proxy(function(){this.option("value",new Date(this._value)),this.hide()},this)}})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:{platform:"win8"},options:{showNames:!0}},{device:{platform:"win8",phone:!0},options:{fullScreen:!0}},{device:function(n){return n.platform!=="win8"},options:{width:333,height:331}},{device:function(n){return n.platform==="generic"},options:{width:"auto",height:"auto"}}])},_render:function(){this._value=this._valueOption(),this.callBase(),this._element().addClass(ut),this._wrapper().addClass(ft)},_renderContentImpl:function(){this.callBase(),this._renderRollers()},_renderRollers:function(){var t=this;t._$rollersContainer||(t._$rollersContainer=n("<div>").appendTo(t.content()).addClass(et)),t._$rollersContainer.empty(),t._createRollerConfigs(),t._rollers={},n.each(t._rollerConfigs,function(i){var r=n("<div>").appendTo(t._$rollersContainer).addClass(k+"-"+t._rollerConfigs[i].type).dxDatePickerRoller({items:t._rollerConfigs[i].displayItems,selectedIndex:t._rollerConfigs[i].selectedIndex,showScrollbar:!1,startAction:function(n){var r=n.component;r._toggleActive(!0),t._setActiveRoller(t._rollerConfigs[i],r.option("selectedIndex"))},endAction:function(n){var r=n.component;t._setRollerState(t._rollerConfigs[i],r.option("selectedIndex")),r._toggleActive(!1)}});t._rollers[t._rollerConfigs[i].type]=r.dxDatePickerRoller("instance")})},_setActiveRoller:function(t){var i=t&&this._rollers[t.type];n.each(this._rollers,function(){this._$element.toggleClass(st,this===i)})},_refreshRollers:function(){var t=this;n.each(this._rollers,function(n){var i=t._rollerConfigs[n].getIndex(t._value);this.update(),this._renderSelectedValue(i)})},_setRollerState:function(n,t){if(t!==n.selectedIndex){var r=n.valueItems[t],f=n.setValue,i=this._value.getDate();n.type===u?(i=Math.min(i,w(this._value.getFullYear(),r)),this._value.setDate(i)):n.type===h&&(i=Math.min(i,w(r,this._value.getMonth())),this._value.setDate(i)),this._value[f](r),n.selectedIndex=t}n.type===h&&(this._refreshMonthRoller(),this._refreshDayRoller()),n.type===u&&this._refreshDayRoller()},_refreshMonthRoller:function(){var t=this._rollers[u],n;t&&(this._createRollerConfig(u),n=this._rollerConfigs[u],this._deferredRenderMonthTimeout=window.setTimeout(function(){n.displayItems.length!==t.option("items").length&&t.option({items:n.displayItems,selectedIndex:n.selectedIndex})},100))},_refreshDayRoller:function(){var t=this._rollers[o],n;t&&(this._createRollerConfig(o),n=this._rollerConfigs[o],this._deferredRenderDayTimeout=window.setTimeout(function(){n.displayItems.length!==t.option("items").length&&t.option({items:n.displayItems,selectedIndex:n.selectedIndex})},100))},_createRollerConfigs:function(t){var i=this;t=t||i.option("format"),i._rollerConfigs={},n.each(i._getFormatPattern(t).split(/\W+/),function(t,u){n.each(r,function(t,r){n.inArray(u,r.possibleFormats)>-1&&i._createRollerConfig(t)})})},_getFormatPattern:function(n){var t=Globalize.culture(this.option("culture")),i="";return n==="date"?i=t.calendar.patterns.d:n==="time"?i=t.calendar.patterns.t:n==="datetime"&&(i=[t.calendar.patterns.d,t.calendar.patterns.t].join(" ")),i},_createRollerConfig:function(n){for(var u=r[n],f=this._calculateRollerConfigValueRange(n),e=f.startValue,o=f.endValue,s=u.formatter,h=this.option("showNames"),c=this._value,t={type:n,setValue:u.setter,valueItems:[],displayItems:[],getIndex:function(n){return n[u.getter]()-e}},i=e;i<=o;i++)t.valueItems.push(i),t.displayItems.push(s(i,h,c));t.selectedIndex=t.getIndex(this._value),this._rollerConfigs[n]=t},_calculateRollerConfigValueRange:function(n){var t=this._value,i=this.option("minDate"),f=this.option("maxDate"),l=t.getFullYear()===i.getFullYear(),v=l&&t.getMonth()===i.getMonth(),c=t.getFullYear()===f.getFullYear(),y=c&&t.getMonth()===f.getMonth(),a=r[n],s=a.startValue,e=a.endValue;return n===h&&(s=i.getFullYear(),e=f.getFullYear()),n===u&&(l&&(s=i.getMonth()),c&&(e=f.getMonth())),n===o&&(e=w(t.getFullYear(),t.getMonth()),v&&(s=i.getDate()),c&&(e=f.getDate())),{startValue:s,endValue:e}},_optionChanged:function(n,t,i){switch(n){case"showNames":case"minDate":case"maxDate":case"culture":case"format":this._renderRollers();break;case"visible":this.callBase(n,t,i),t&&(this._refreshRollers(),this._setActiveRoller());break;case"value":this._value=this._valueOption(),this._renderRollers();break;default:this.callBase(n,t,i)}},_dispose:function(){clearTimeout(this._deferredRenderDayTimeout),clearTimeout(this._deferredRenderMonthTimeout),this.callBase()}})),t.registerComponent("dxDateBox",s.dxTextEditor.inherit({ctor:function(n,t){t=t||{};var u=it.current().platform==="generic"&&(t.format==="date"||!t.format),r=t&&t.useCalendar;r===i&&(r=u),r?new s.dxCalendarPicker(n,t):this.callBase(n,t)},_setDefaultOptions:function(){this.callBase(),this.option({format:"date",value:new Date,min:new Date(1),max:new Date(n.now()+nt),useCalendar:!1,useNativePicker:!0})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(n){return n.win8||n.android&&(n.version[0]<4||n.version[0]==4&&n.version[1]<4)},options:{useNativePicker:!1}}])},_init:function(){this.callBase(),this._initFormat()},_render:function(){this.callBase(),this._element().addClass(rt),this._renderDatePicker()},_renderDatePicker:function(){var t,i;if(this._usingNativeDatePicker()||this.option("readOnly")){this._datePicker&&(this._datePicker._element().remove(),this._datePicker=null);return}if(t={value:this.option("value"),format:this.option("format"),title:this._getDataPickerTitle(),minDate:this.option("min"),maxDate:this.option("max")},this._datePicker)this._datePicker.option(t);else{this._datePicker=n("<div>").appendTo(this._element()).dxDatePicker(n.extend(t,{hidingAction:n.proxy(function(n){this.option("value",n.component.option("value"))},this)})).dxDatePicker("instance"),i=this._createAction(function(n){n.component._datePicker.show()});this._input().on(b.addNamespace("dxclick",this.NAME),function(n){return i({jQuery:n})})}},_renderFocusEvent:function(){this.callBase();this._input().on("focus",n.proxy(function(){this._togglePlaceholderVisibility(!1)},this))},_initFormat:function(){var t=this.option("format");n.inArray(t,bt)===-1?(t="date",this.option("format",t)):t!=="datetime"||a.inputType(t)||(t="datetime-local"),this.option("mode",t)},_usingNativeDatePicker:function(){return a.inputType(this.option("mode"))&&this.option("useNativePicker")},_readOnlyPropValue:function(){return this._usingNativeDatePicker()?this.callBase():!0},_handleValueChangeEvent:function(){var i=gt(this._input().val()),n=new Date(this.option("value")&&this.option("value").valueOf()),t=ni(n,i,this.option("mode"));this.option({value:t}),t!==n&&this._renderValue()},_renderValue:function(){var n=this.option("mode"),i=dt[n],r=a.inputType(n)?!1:e.culture().calendar.patterns[i],t=tt(this.option("value"),n,r);this._input().val(t),this._togglePlaceholderVisibility(t===""||t===null)},_renderProps:function(){this.callBase(),this._input().attr("autocomplete","off")},_getDataPickerTitle:function(){var n=this.option("placeholder"),t;return n||(t=this.option("format"),t==="time"?n=Globalize.localize("dxDateBox-simulatedDataPickerTitleTime"):t==="date"?n=Globalize.localize("dxDateBox-simulatedDataPickerTitleDate"):t==="datetime"&&(n=Globalize.localize("dxDateBox-simulatedDataPickerTitleDateTime"))),n},_optionChanged:function(n,t,i){switch(n){case"useCalendar":break;case"format":this._initFormat(),this._renderValue(),this._renderDatePicker();break;case"readOnly":this._invalidate();break;case"useNativePicker":this._renderDatePicker(),this._renderProps();break;case"placeholder":this._datePicker&&this._datePicker.option("title",this._getDataPickerTitle());break;case"type":throw new Error("type cannot be changed after instantiation");break;case"min":case"max":this._datePicker&&this._datePicker.option(n+"Date",t);break;case"value":this._renderValue(),this._renderDatePicker();default:this.callBase(n,t,i)}}}))}(jQuery,DevExpress),function(n,t){var u=t.ui,f="dx-loadindicator",e="dx-loadindicator-wrapper",o="dx-loadindicator-icon",r="dx-loadindicator-segment",s="dx-loadindicator-segment",h="dx-loadindicator-win8-segment",c="dx-loadindicator-win8-segment",l="dx-loadindicator-win8-inner-segment",a="dx-loadindicator-image";t.registerComponent("dxLoadIndicator",u.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({indicatorSrc:"",hoverStateEnabled:!1})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(){var n=DevExpress.devices.real(),t=n.platform==="android"&&!/chrome/i.test(navigator.userAgent);return DevExpress.browser.msie&&DevExpress.browser.version<10||t},options:{viaImage:!0}}])},_init:function(){this.callBase(),this._element().addClass(f)},_render:function(){this._renderWrapper(),this._renderMarkup(),this.callBase()},_renderWrapper:function(){this._$wrapper=n("<div>").addClass(e),this._element().append(this._$wrapper)},_renderMarkup:function(){!t.support.animation||this.option("viaImage")||this.option("indicatorSrc")?this._renderMarkupForImage():this._renderMarkupForAnimation()},_renderMarkupForAnimation:function(){var t,u,i;for(this._$indicator=n("<div>").addClass(o),t=15;t>=0;--t)i=n("<div>").addClass(r).addClass(s+t),this._$indicator.append(i);for(t=1;t<=5;++t)u=n("<div>").addClass(l),i=n("<div>").addClass(h).addClass(c+t),i.append(u),this._$indicator.append(i);this._$wrapper.append(this._$indicator)},_renderMarkupForImage:function(){var n=this.option("indicatorSrc");this._$wrapper.addClass(a),n&&this._$wrapper.css("background-image","url("+n+")")},_renderDimensions:function(){this.callBase(),this._updateContentSize()},_updateContentSize:function(){var u=this._element(),t=this.option("width"),i=this.option("height"),n;(t||i)&&(t=this._element().width(),i=this._element().height(),n=Math.min(i,t),this._$wrapper.css({height:n,width:n,"margin-top":(i-n)/2,"margin-left":(t-n)/2}),this._$indicator&&this._$indicator.find("."+r).css("border-width",.125*n))},_clean:function(){this.callBase(),this._removeMarkupForAnimation(),this._removeMarkupForImage()},_removeMarkupForAnimation:function(){this._$indicator&&this._$indicator.remove()},_removeMarkupForImage:function(){this._$wrapper.css("background-image","none")},_optionChanged:function(n){switch(n){case"indicatorSrc":this._invalidate();break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var f=t.ui,e="dx-loadpanel",o="dx-loadpanel-wrapper",r="dx-loadpanel-indicator",u="dx-loadpanel-message",s="dx-loadpanel-content",h="dx-loadpanel-content-wrapper",c="dx-loadpanel-pane-hidden";t.registerComponent("dxLoadPanel",f.dxOverlay.inherit({_setDefaultOptions:function(){this.callBase(),this.option({message:Globalize.localize("Loading"),width:222,height:90,animation:null,showIndicator:!0,indicatorSrc:"",showPane:!0,delay:0})},_init:function(){this.callBase.apply(this,arguments),this._$contentWrapper=n("<div>").addClass(h),this._$contentWrapper.appendTo(this._container())},_render:function(){this.callBase(),this._element().addClass(e),this._wrapper().addClass(o)},_renderContentImpl:function(){this.callBase(),this.content().addClass(s),this._togglePaneVisible(),this._cleanPreviousContent(),this._renderLoadIndicator(),this._renderMessage()},_makeVisible:function(){var i=this.option("delay"),t,r;return i?(t=n.Deferred(),r=n.proxy(this.callBase,this),this._clearShowTimeout(),this._showTimeout=setTimeout(function(){r().done(function(){t.resolve()})},i),t.promise()):this.callBase()},_makeHidden:function(){return this._clearShowTimeout(),this.callBase()},_clearShowTimeout:function(){clearTimeout(this._showTimeout)},_renderMessage:function(){var t=this.option("message"),i;t&&(i=n("<div>").addClass(u).text(t),this._$contentWrapper.append(i))},_renderLoadIndicator:function(){this.option("showIndicator")&&(this._$indicator=n("<div>").addClass(r).dxLoadIndicator({indicatorSrc:this.option("indicatorSrc")}).appendTo(this._$contentWrapper))},_cleanPreviousContent:function(){this.content().find("."+u).remove(),this.content().find("."+r).remove()},_togglePaneVisible:function(){this.content().toggleClass(c,!this.option("showPane"))},_optionChanged:function(n){switch(n){case"delay":break;case"message":case"showIndicator":this._cleanPreviousContent(),this._renderLoadIndicator(),this._renderMessage();break;case"showPane":this._togglePaneVisible();break;case"indicatorSrc":this._$indicator&&this._$indicator.dxLoadIndicator({indicatorSrc:this.option("indicatorSrc")});break;default:this.callBase.apply(this,arguments)}},_dispose:function(){this._clearShowTimeout(),this.callBase()},_defaultHideTopOverlayHandler:n.noop}))}(jQuery,DevExpress),function(n,t,i){var f=t.ui,e=t.utils,s=t.data.utils,h=f.events,r="dx-lookup",u=r+"-selected",v=r+"-search",y=r+"-search-wrapper",c=r+"-field",p=c+"-wrapper",o=r+"-popup",w=o+"-wrapper",l=o+"-search",b=r+"-popover-mode",k=r+"-empty",a=".dx-list-item",d="dxListItemData",g=200;t.registerComponent("dxLookup",f.dxEditor.inherit({_deprecatedOptions:{shownAction:{since:"14.1",message:"Use the 'openAction' option instead."},hiddenAction:{since:"14.1",message:"Use the 'closeAction' option instead."}},_optionAliases:{openAction:"shownAction",closeAction:"hiddenAction"},_setDefaultOptions:function(){this.callBase(),this.option({items:[],dataSource:null,value:i,displayValue:i,title:"",titleTemplate:"title",valueExpr:null,displayExpr:"this",placeholder:Globalize.localize("Select"),searchPlaceholder:Globalize.localize("Search"),searchEnabled:!0,noDataText:Globalize.localize("dxCollectionContainerWidget-noDataText"),searchTimeout:1e3,minFilterLength:0,fullScreen:!1,valueChangeAction:null,itemTemplate:"item",itemRender:null,showCancelButton:!0,cancelButtonText:Globalize.localize("Cancel"),showClearButton:!1,clearButtonText:Globalize.localize("Clear"),showDoneButton:!1,doneButtonText:Globalize.localize("Done"),contentReadyAction:null,shownAction:null,openAction:null,hiddenAction:null,closeAction:null,popupWidth:function(){return n(window).width()*.8},popupHeight:function(){return n(window).height()*.8},shading:!0,closeOnOutsideClick:!1,position:i,animation:i,pullRefreshEnabled:!1,autoPagingEnabled:!0,useNativeScrolling:!0,pullingDownText:Globalize.localize("dxList-pullingDownText"),pulledDownText:Globalize.localize("dxList-pulledDownText"),refreshingText:Globalize.localize("dxList-refreshingText"),pageLoadingText:Globalize.localize("dxList-pageLoadingText"),scrollAction:null,pullRefreshAction:null,pageLoadingAction:null,showNextButton:!1,nextButtonText:Globalize.localize("dxList-nextButtonText"),grouped:!1,groupTemplate:"group",groupRender:null,usePopover:!1})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:function(){return!t.support.nativeScrolling},options:{useNativeScrolling:!1}},{device:function(n){return!t.support.nativeScrolling&&!t.devices.isSimulator()&&t.devices.real().platform==="generic"&&n.platform==="generic"},options:{showNextButton:!0,autoPagingEnabled:!1}},{device:{platform:"win8",phone:!0},options:{showCancelButton:!1,fullScreen:!0}},{device:{platform:"win8",phone:!1},options:{popupWidth:function(){return n(window).width()}}},{device:[{platform:"ios",phone:!0},{platform:"ios7",phone:!0}],options:{fullScreen:!0}},{device:[{platform:"ios",tablet:!0},{platform:"ios7",tablet:!0}],options:{popupWidth:function(){return Math.min(n(window).width(),n(window).height())*.4},popupHeight:function(){return Math.min(n(window).width(),n(window).height())*.4},usePopover:!0}}])},_optionsByReference:function(){return n.extend(this.callBase(),{value:!0})},_init:function(){this.callBase(),this._initDataSource(),this._searchTimer=null,this._compileValueGetter(),this._compileDisplayGetter(),this._suppressValueChangeAction(),this._dataSource||this._itemsToDataSource()},_compileValueGetter:function(){this._valueGetter=s.compileGetter(this._valueGetterExpr())},_valueGetterExpr:function(){return this.option("valueExpr")||"this"},_compileDisplayGetter:function(){this._displayGetter=s.compileGetter(this.option("displayExpr"))},_itemsToDataSource:function(){this._dataSource=new DevExpress.data.DataSource(this.option("items"))},_render:function(){this.callBase(),this._element().addClass(r).toggleClass(b,this.option("usePopover")),this._renderField(),this._needRenderContent=!0,this._calcSelectedItem(n.proxy(this._setFieldText,this))},_renderContent:n.noop,_renderContentImpl:n.noop,_renderField:function(){var t=this,i=this._createAction(this._handleFieldClick);this._$fieldWrapper=n("<div>").addClass(p),this._$field=n("<div>").addClass(c).appendTo(this._$fieldWrapper).on(h.addNamespace("dxclick",this.NAME),function(n){t.option("readOnly")||i({jQueryEvent:n})}),this._$fieldWrapper.appendTo(this._element())},_handleFieldClick:function(n){var t=n.component;t._renderContentIfNeed(),t._setListDataSource(),t._refreshSelected(),t._popup.show(),t._lastSelectedItem=t._selectedItem},_renderContentIfNeed:function(){this._needRenderContent&&(this._renderPopup(),this._needRenderContent=!1)},_renderPopup:function(){var t=n("<div>").addClass(o).appendTo(this._element()),i={rtlEnabled:this.option("rtlEnabled"),showTitle:!0,title:this.option("title"),titleTemplate:this._getTemplateByOption("titleTemplate"),contentReadyAction:n.proxy(this._popupContentReadyAction,this),cancelButton:this._getCancelButtonConfig(),doneButton:this._getDoneButtonConfig(),clearButton:this._getClearButtonConfig(),shownAction:this._createActionByOption("shownAction"),hiddenAction:this._createActionByOption("hiddenAction")};this._popup=this.option("usePopover")&&!this.option("fullScreen")?this._createPopover(t,i):this._createPopup(t,i),this._setPopupOption("position","position"),this._setPopupOption("animation","animation"),this._setPopupOption("popupWidth","width"),this._setPopupOption("popupHeight","height"),this._popup._wrapper().addClass(w).toggleClass(l,this.option("searchEnabled"))},_setPopupOption:function(n,t){var n=this.option(n);n=n===i?this._popup.initialOption(t):n,this._popup.option(t,n)},_createPopover:function(t,i){return t.dxPopover(n.extend(i,{target:this._element()})).dxPopover("instance")},_createPopup:function(t,i){return t.dxPopup(n.extend(i,{fullScreen:this.option("fullScreen"),shading:this.option("shading"),closeOnOutsideClick:this.option("closeOnOutsideClick")})).dxPopup("instance")},_getCancelButtonConfig:function(){return this.option("showCancelButton")?{text:this.option("cancelButtonText")}:null},_getDoneButtonConfig:function(){return this.option("showDoneButton")?{text:this.option("doneButtonText"),clickAction:n.proxy(function(){this.option("value",this._valueGetter(this._lastSelectedItem))},this)}:null},_getClearButtonConfig:function(){return this.option("showClearButton")?{text:this.option("clearButtonText"),clickAction:n.proxy(function(){this.option("value",i)},this)}:null},_renderCancelButton:function(){this._popup&&this._popup.option("cancelButton",this._getCancelButtonConfig())},_renderDoneButton:function(){this._popup&&this._popup.option("doneButton",this._getDoneButtonConfig())},_renderClearButton:function(){this._popup&&this._popup.option("clearButton",this._getClearButtonConfig())},_popupContentReadyAction:function(){this._renderSearch(),this._renderList()},_renderSearch:function(){this._$search=n("<div>").addClass(v).dxTextBox({mode:"search",placeholder:this._getSearchPlaceholder(),valueChangeEvent:"change input",valueChangeAction:n.proxy(this._searchChangedHandler,this),rtlEnabled:this.option("rtlEnabled")}).appendTo(this._popup.content()).wrap(n("<div>").addClass(y).toggle(this.option("searchEnabled"))),this._search=this._$search.dxTextBox("instance")},_getSearchPlaceholder:function(){var n=this.option("minFilterLength"),t=this.option("searchPlaceholder");return n&&t===Globalize.localize("Search")?e.stringFormat(Globalize.localize("dxLookup-searchPlaceholder"),n):t},_renderList:function(){this._list=n("<div>").appendTo(this._popup.content()).dxList({_templates:this.option("_templates"),dataSource:null,itemClickAction:n.proxy(function(n){this._toggleSelectedClass(n.jQueryEvent),this._updateOptions(n)},this),itemRenderedAction:n.proxy(function(n){this._setSelectedClass(n.itemElement,n.itemData)},this),itemRender:this._getItemRender(),itemTemplate:this._getTemplateByOption("itemTemplate"),noDataText:this.option("noDataText"),pullRefreshEnabled:this.option("pullRefreshEnabled"),autoPagingEnabled:this.option("autoPagingEnabled"),useNativeScrolling:this.option("useNativeScrolling"),pullingDownText:this.option("pullingDownText"),pulledDownText:this.option("pulledDownText"),refreshingText:this.option("refreshingText"),pageLoadingText:this.option("pageLoadingText"),scrollAction:this.option("scrollAction"),pullRefreshAction:this.option("pullRefreshAction"),pageLoadingAction:this.option("pageLoadingAction"),showNextButton:this.option("showNextButton"),nextButtonText:this.option("nextButtonText"),grouped:this.option("grouped"),groupTemplate:this._getTemplateByOption("groupTemplate"),groupRender:this.option("groupRender"),rtlEnabled:this.option("rtlEnabled")}).data("dxList"),this._needSetItemRenderToList&&(this._updateListItemRender(),this._needSetItemRenderToList=!1),this._setListDataSource(),this._list.option("contentReadyAction",this.option("contentReadyAction")),this._list._fireContentReadyAction()},_setListDataSource:function(n){if(this._list){var t=this._search.option("value").length>=this.option("minFilterLength"),r=!!this._list.option("dataSource"),u=t===r;(n||!u)&&(this._list.option("dataSource",t?this._dataSource:null),t||this._list.option("items",i))}},_refreshSelected:function(){var t=this;t._list&&n.each(this._list._element().find(a),function(){var i=n(this);t._setSelectedClass(i,i.data(d))})},_calcSelectedItem:function(n){function o(t){e._selectedItem=t,n()}var t=this._dataSource,f,r,e=this,u=this._unwrapedValue();if(!t||u===i){this._selectedItem=i,n();return}f=t.store(),r=this._valueGetterExpr(),this._loadSingle(r,u).done(function(n){o(n)})},_unwrapedValue:function(){var t=this.option("value"),r=this._valueGetterExpr(),i;return!this._dataSource&&r!=="this"?t:(i=this._dataSource.store().key(),i&&typeof t=="object"&&(t=t[i]),n.isFunction(t)?t():t)},_setFieldText:function(n){arguments.length||(n=this._getDisplayText()),this._$field.text(n),this.option("displayValue",n),this._toggleEmptyClass()},_getDisplayText:function(){return this.option("value")===i||!this._dataSource?this.option("placeholder"):this._displayGetter(this._selectedItem)||this.option("placeholder")},_searchChangedHandler:function(){if(this._search){var t=this._search.option("value"),i=t.length>=this.option("minFilterLength");if(clearTimeout(this._searchTimer),this._search.option("placeholder",this._getSearchPlaceholder()),!i){this._setListDataSource();return}this.option("searchTimeout")?this._searchTimer=setTimeout(n.proxy(this._doSearch,this,t),this.option("searchTimeout")):this._doSearch(t)}},_doSearch:function(t){this._dataSource&&(arguments.length||(t=this.option("searchEnabled")?this._search.option("value"):""),this._filterStore(t).done(n.proxy(function(){this._dataSource.items().length&&this._setListDataSource()},this)))},_filterStore:function(n){return this._dataSource.searchExpr()||this._dataSource.searchExpr(this.option("displayExpr")),this._dataSource.searchValue(n),this._dataSource.pageIndex(0),this._dataSource.load()},_updateOptions:function(n){this._lastSelectedItem===n.itemData&&this._updateAndHidePopup(),this._lastSelectedItem=n.itemData,this.option("showDoneButton")||this._updateAndHidePopup()},_setSelectedClass:function(n,t){var o,s;t=this._valueGetter(t);var i=this.option("value"),r=this._dataSource&&this._dataSource.key(),f=this._optionValuesEqual("value",t,i);r&&!f&&i&&(o=e.unwrapObservable(i[r]),s=e.unwrapObservable(t[r])||t,f=o===s),n.toggleClass(u,f)},_getItemRender:function(){var t=this.option("itemTemplate");if(!t||!(t in this.option("_templates")))return this.option("itemRender")||n.proxy(this._displayGetter,this)},_toggleSelectedClass:function(t){var i=this._list._element().find("."+u);i.length&&i.removeClass(u),n(t.target).closest(a).addClass(u)},_toggleEmptyClass:function(){var n=!this._selectedItem;this._element().toggleClass(k,n)},_hidePopup:function(){this._popup.hide()},_updateAndHidePopup:function(){this.option("value",this._valueGetter(this._lastSelectedItem)),clearTimeout(this._hidePopupTimer),this._hidePopupTimer=setTimeout(n.proxy(this._hidePopup,this),g),this._setFieldText(this._displayGetter(this._lastSelectedItem))},_updateListItemRender:function(){this._list?this._list.option("itemRender",this._getItemRender()):this._needSetItemRenderToList=!0},_updateListItemTemplate:function(){this._list&&this._list.option("itemTemplate",this.option("itemTemplate"))},_clean:function(){this._popup&&this._popup._element().remove(),this._$field&&this._$field.remove(),this._$fieldWrapper&&this._$fieldWrapper.remove()},_dispose:function(){clearTimeout(this._searchTimer),clearTimeout(this._hidePopupTimer),n(window).off(h.addNamespace("popstate",this.NAME)),this.callBase()},_changeListOption:function(n,t){this._list&&this._list.option(n,t)},_changePopupOption:function(n,t){this._popup&&this._popup.option(n,t)},_optionChanged:function(t,i,r){switch(t){case"valueExpr":case"value":this._calcSelectedItem(n.proxy(function(){t==="value"&&this._raiseValueChangeAction(i,r,{selectedItem:this._selectedItem}),this._compileValueGetter(),this._compileDisplayGetter(),this._refreshSelected(),this._setFieldText()},this));break;case"displayExpr":this._compileDisplayGetter(),this._updateListItemRender(),this._refreshSelected(),this._setFieldText();break;case"displayValue":break;case"itemRender":this._updateListItemRender();case"itemTemplate":this._updateListItemTemplate();break;case"items":case"dataSource":t==="items"?this._itemsToDataSource():this._initDataSource(),this._setListDataSource(!0),this._compileValueGetter(),this._calcSelectedItem(n.proxy(this._setFieldText,this));break;case"searchEnabled":this._$search&&this._$search.toggle(i),this._popup&&this._popup._wrapper().toggleClass(l,i);break;case"minFilterLength":this._setListDataSource(),this._setFieldText(),this._searchChangedHandler();break;case"placeholder":this._setFieldText();break;case"searchPlaceholder":this._$search&&this._$search.dxTextBox("instance").option("placeholder",i);break;case"shownAction":case"hiddenAction":case"openAction":case"closeAction":case"animation":this._renderPopup();break;case"title":case"titleTemplate":this._changePopupOption(t,i);break;case"position":case"shading":case"closeOnOutsideClick":this.option("usePopover")||this._changePopupOption(t,i);break;case"fullScreen":this._popup&&(this.option("usePopover")?this._renderPopup():this._popup.option(t,i));break;case"clearButtonText":case"showClearButton":this._renderClearButton();break;case"cancelButtonText":case"showCancelButton":this._renderCancelButton();break;case"doneButtonText":case"showDoneButton":this._renderDoneButton();break;case"popupWidth":this._changePopupOption("width",i==="auto"?this.initialOption("popupWidth"):i);break;case"popupHeight":this._changePopupOption("height",i==="auto"?this.initialOption("popupHeight"):i);break;case"usePopover":this._invalidate();break;case"pullRefreshEnabled":case"autoPagingEnabled":case"useNativeScrolling":case"pullingDownText":case"pulledDownText":case"refreshingText":case"pageLoadingText":case"scrollAction":case"pullRefreshAction":case"pageLoadingAction":case"showNextButton":case"nextButtonText":case"grouped":case"groupRender":case"noDataText":case"contentReadyAction":this._changeListOption(t,i);break;case"groupTemplate":this._changeListOption(t,this._getTemplateByOption(t));case"searchTimeout":break;default:this.callBase.apply(this,arguments)}},open:function(){this._renderContentIfNeed(),this._popup.show()},close:function(){this._renderContentIfNeed(),this._popup.hide()}}).include(f.DataHelperMixin))}(jQuery,DevExpress),function(n,t){var u=t.ui,r=u.events,it=t.utils,f=40,e=38,o=13,c=27,l=39,s=9,a="dx-autocomplete",v="dx-autocomplete-popup-wrapper",h="dx-autocomplete-selected",y="."+h,p=".dx-list",w=".dx-list-item",b="dxListItemData",k=["startswith","contains","endwith","notcontains"],d=r.addNamespace("keydown","dxAutocomplete"),g=r.addNamespace("keyup","dxAutocomplete"),nt=r.addNamespace("focusin","dxAutocomplete"),tt=r.addNamespace("focusout","dxAutocomplete");t.registerComponent("dxAutocomplete",u.dxDropDownEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({value:"",items:[],dataSource:null,itemTemplate:"item",itemRender:null,minSearchLength:1,searchTimeout:0,searchMode:"contains",displayExpr:"this",valueChangeEvent:"change keyup",shouldActivateFocusOut:!0,maxLength:null})},_listElement:function(){return this._dropDown.content().find(p)},_listItemElement:function(){return this._dropDown.content().find(w)},_listSelectedItemElement:function(){return this._dropDown.content().find(this._getSelectedItemSelector())},_init:function(){this.callBase(),this._validateSearchMode(),this._compileDisplayGetter(),this._initDataSource(),this._fillDataSourceFromItemsIfNeeded()},_fillDataSourceFromItemsIfNeeded:function(){!this.option("dataSource")&&this.option("items")&&this._itemsToDataSource()},_validateSearchMode:function(){var i=this.option("searchMode"),r=i.toLowerCase();if(!(n.inArray(r,k)>-1))throw Error(t.utils.stringFormat('Search mode "{0}" is unavailable',i));},_compileDisplayGetter:function(){this._displayGetter=t.data.utils.compileGetter(this.option("displayExpr"))},_render:function(){this.callBase(),this._element().addClass(a),this._renderInputEvents()},_renderDimensions:function(){this.callBase(),this._dropDown&&this._dropDown.option("width",this.option("width"))},_renderContentImpl:function(){this._caretPosition={start:0,end:0},this._renderDropDownContainer()},_renderButton:function(n){this.callBase(n===!1?!1:!0)},_renderInputEvents:function(){this._input().on(d,n.proxy(this._handleInputKeyDown,this)).on(g,n.proxy(this._handleInputKeyUp,this)).on(nt,n.proxy(function(){this._setFocusSelection()},this)).on(tt,n.proxy(function(){this.option("shouldActivateFocusOut")&&this._hideDropDown(),this._toggleElementSelectedClass(!1)},this))},_setFocusSelection:function(){this._toggleElementSelectedClass(!0)},_hasUpdateEvent:function(n){return n&&this.option("valueUpdateEvent").indexOf(n)!==-1},_handleInputKeyDown:function(t){var r=this._listElement(),u=[s,e,f],i=t.which;r.is(":hidden")||(n.inArray(i,u)>-1?t.preventDefault():i!==o&&this._toggleElementSelectedClass(!0))},_handleInputKeyUp:function(n){var t=n.which;this._caretPosition={start:this._input().prop("selectionStart"),end:this._input().prop("selectionEnd")};switch(t){case f:this._handleInputDownKey();break;case e:this._handleInputUpKey();break;case o:this._handleInputEnterKey();break;case l:case s:this._handleInputCompleteKeys();break;case c:this._hideDropDown();break;default:return}},_handleInputDownKey:function(){var t=this._listSelectedItemElement(),n;t.length?(n=t.next(),n.length?n.addClass(this._getSelectedItemClass()):this._toggleElementSelectedClass(!0),t.removeClass(this._getSelectedItemClass()),this._list.scrollToItem(n)):(this._listItemElement().first().addClass(this._getSelectedItemClass()),this._list.scrollToItem(this._listItemElement().first()),this._toggleElementSelectedClass(!1))},_handleInputUpKey:function(){var t=this._listSelectedItemElement(),n,i=this._listElement();if(!i.is(":hidden")){if(!t.length){this._listItemElement().last().addClass(this._getSelectedItemClass()),this._list.scrollToItem(this._listItemElement().last()),this._toggleElementSelectedClass(!1);return}t.removeClass(this._getSelectedItemClass()),n=t.prev(),n.length?(n.addClass(this._getSelectedItemClass()),this._list.scrollToItem(n)):this._toggleElementSelectedClass(!0)}},_handleInputEnterKey:function(){var t=this._listSelectedItemElement(),n;if(!t.length){this._hideDropDown();return}n=this._selectedItemDataGetter(),this._caretPosition={start:n.length,end:n.length},this.option("value",n),this._hideDropDown(),this._input().blur()},_handleInputCompleteKeys:function(){var i=this._listElement(),n,t;i.is(":hidden")||(t=this._selectedItemDataGetter(),n=t.length?t:this._dataSource.items()[0],this._caretPosition={start:n.length,end:n.length},n=this._displayGetter(n),this.option("value",n),this._hideDropDown())},_toggleElementSelectedClass:function(n){this._element().toggleClass(this._getSelectedItemClass(),n)},_selectedItemDataGetter:function(){var n=this._listSelectedItemElement();return n.length?this._displayGetter(n.data(b)):[]},_createDropDown:function(){var r=this.option("width"),i=0,u=0;t.devices.current().win8?i=-6:(t.devices.current().platform==="generic"||t.devices.current().tizen)&&(i=-1),this._dropDown=n("<div>").appendTo(this._element()).dxPopup({rtlEnabled:this.option("rtlEnabled"),shading:!1,closeOnOutsideClick:!1,closeOnTargetScroll:!0,showTitle:!1,width:r,showingAction:n.proxy(this._dimensionChanged,this),deferRendering:!1,shownAction:this.option("openAction"),hiddenAction:this.option("closeAction"),position:{my:"left top",at:"left bottom",of:this._$element,offset:{h:u,v:i},collision:"flip"},animation:{show:{type:"pop",duration:400,from:{opacity:0,scale:1},to:{opacity:1,scale:1}},hide:{type:"fade",duration:400,from:1,to:0}}}).dxPopup("instance"),this._dropDown._wrapper().addClass(v),this._renderList()},_dimensionChanged:function(){this._calculatePopupDimensions()},_calculatePopupDimensions:function(){this._calculatePopupHeight(),this._calculatePopupWidth()},_calculatePopupHeight:function(){var t=this._dropDown,i;t.option("height","auto"),i=this._list,this._heightApplyingTimer=setTimeout(function(){var r=t.container().outerHeight(),u=n(window).height()*.5;t.option("height",Math.min(r,u)),i.updateDimensions()})},_calculatePopupWidth:function(){var n=this._element().outerWidth();this._dropDown.option("width",n)},_getSelectedItemClass:function(){return h},_getSelectedItemSelector:function(){return y},_renderList:function(){this._list=n("<div>").appendTo(this._dropDown.content()).dxList({_templates:this.option("_templates"),itemClickAction:n.proxy(this._handleListItemClick,this),itemTemplate:this._getTemplateByOption("itemTemplate"),itemRender:this._getItemRender(),noDataText:"",showNextButton:!1,autoPagingEnabled:!1,dataSource:this._dataSource,indicateLoading:!1}).dxList("instance")},_getItemRender:function(){var t=this.option("itemTemplate");if(!t||!(t in this.option("_templates")))return this.option("itemRender")||n.proxy(this._displayGetter,this)},_handleListItemClick:function(n){var t=this._displayGetter(n.itemData);this._caretPosition={start:t.length,end:t.length},this.option("value",t),this._hideDropDown(),this._input().blur()},_itemsToDataSource:function(){return this._dataSource=new DevExpress.data.DataSource(this.option("items"))},_filterDataSource:function(){this._reloadDataSource(this.option("value")),this._clearSearchTimer()},_reloadDataSource:function(n,t){var i=this,r=i._dataSource;r.searchExpr(i.option("displayExpr")),r.searchOperation(t||i.option("searchMode")),r.searchValue(n),i._dataSource.pageIndex(0),i._dataSource.load().done(function(){i._refreshVisibility()})},_refreshVisibility:function(){var i=this.option("value").length>=this.option("minSearchLength"),t=this._dataSource,n=t&&t.items(),r=n.length;i&&r?n.length===1&&this._displayGetter(n[0])===this.option("value")?this._hideDropDown():this._displayGetter(n[0]).length<this.option("value").length?this._hideDropDown():(this._dropDown._refresh(),this._dropDown.show(),this._calculatePopupHeight()):this._hideDropDown()},_closeOutsideDropDownHandler:function(n){this.callBase(n,!0)},_clean:function(){this.callBase(),delete this._dropDown},_dispose:function(){clearTimeout(this._heightApplyingTimer),this._clearSearchTimer(),this.callBase()},_optionChanged:function(n,t){switch(n){case"items":case"dataSource":n==="items"?this._itemsToDataSource():this._initDataSource();case"itemTemplate":case"itemRender":this._list.option(n,t);break;case"searchMode":this._validateSearchMode();break;case"displayExpr":this._compileDisplayGetter(),this._list.option("itemRender",this._getItemRender());break;case"minSearchLength":case"searchTimeout":break;case"shouldActivateFocusOut":this._invalidate();break;default:this.callBase.apply(this,arguments)}},_handleValueChangeEvent:function(){var n=this.option("value");this.callBase.apply(this,arguments),n!==this.option("value")&&this._applyFilter()},_applyFilter:function(){var t=this.option("value").length>=this.option("minSearchLength");if(!t){this._clearSearchTimer(),this._hideDropDown();return}this.option("searchTimeout")>0?this._searchTimer||(this._searchTimer=setTimeout(n.proxy(this._filterDataSource,this),this.option("searchTimeout"))):this._filterDataSource()},_clearSearchTimer:function(){clearTimeout(this._searchTimer),delete this._searchTimer}}).include(u.DataHelperMixin))}(jQuery,DevExpress),function(n,t,i){var f=t.ui,u=f.events,e="dx-selectbox",o="dx-selectbox-popup",r="dx-selectbox-selected",s="dx-selectbox-multiselect",h="dx-selectbox-container",b="dx-selectbox-arrow",k="dx-selectbox-arrow-container",c="dx-selectbox-tag-container",l="dx-selectbox-tag-item",a="dx-selectbox-tag-item-container",v="dx-selectbox-tag-item-close-button",y="dx-texteditor-empty",p="dxListItemData",w=".dx-list-item",d=".dx-texteditor-border";t.registerComponent("dxSelectBox",f.dxAutocomplete.inherit({_setDefaultOptions:function(){this.callBase(),this.option({items:[],value:i,valueChangeAction:null,placeholder:Globalize.localize("Select"),valueExpr:null,multiSelectEnabled:!1,values:[],valueChangeEvent:"",fieldTemplate:null,displayValue:i,tooltipEnabled:!1,shouldActivateFocusOut:!1})},_optionsByReference:function(){return n.extend(this.callBase(),{value:!0})},_init:function(){this.callBase(),this._dataSource||this._itemsToDataSource(),this._selectedItems=[]},_itemsToDataSource:function(){this._dataSource=new DevExpress.data.DataSource(this.option("items"))},_getValueWidth:function(t){var i=n("<div>").html(t).css({width:"auto",position:"fixed",top:"-3000px",left:"-3000px"}).appendTo("body");return i.width()},_setTooltip:function(n){this.option("tooltipEnabled")&&(this._$element.context.title=this._$element.context.scrollWidth<=this._getValueWidth(n)?n:"")},_render:function(){var t,i;this._compileValueGetter(),this.callBase(),t=this.option("value"),t?this._searchValue(t).done(n.proxy(this._updateTextBox,this)):this._updateTextBox(),i=this.option("multiSelectEnabled"),this._element().toggleClass(s,i),this._$placeholder=this._$container.find(".dx-placeholder").eq(0),i&&this._renderTags(),this._setWidgetClasses(),this._setTooltip(this.option("value")),this._shouldHide=!1},_renderTags:function(){var t=this;t._$tagContainer&&t._$tagContainer.remove(),t._$tagContainer=n("<div>").addClass(c);var i=t.option("values")||[],r=u.addNamespace("dxclick",t.NAME),f=[];t._selectedItems=[],n.each(i,function(i,u){var o,e=n("<div>").addClass(a),s=n("<div>").addClass(l).appendTo(e),h=n("<div>").addClass(v).appendTo(e);f.push(t._searchValue(u).done(function(n){o=t._displayGetter(n),s.append(o),t._selectedItems.push(n)}));h.off(r).on(r,n.proxy(t._deleteTag,t));e.appendTo(t._$tagContainer)}),t._$tagContainer.appendTo(t._$container),t._element().toggleClass(y,!i.length),t._input().val(i.length?" ":null),n.when.apply(n,f).done(function(){t._renderInputTemplate()}),i.length>0?t._$placeholder.hide():t._$placeholder.show()},_deleteTag:function(t){t.stopPropagation();var u=n(t.currentTarget.parentElement),i=u.index(),r=this.option("values");this.option().value=this.option("values")[i],r.splice(i,1),this.option("values",r)},_renderInput:function(t){this._$container=t||n("<div>"),this._$container.addClass(h),this._element().append(this._$container),this.callBase(this._$container)},_renderInputTemplate:function(){var n=this._getTemplateByOption("fieldTemplate"),i;this.option("fieldTemplate")&&n&&(this._$container.empty(),i=this.option("multiSelectEnabled")?this._selectedItems:this._selectedItem,n.render(this._$container,i),this._input().length||t.utils.logger.warn("A template should contain dxTextBox widget"))},_handleValueChangeEvent:function(n){var t=[n];this._input().val()||t.push(i),this.callBase.apply(this,t)},_renderButton:function(){this.callBase(!1)},_renderValue:function(){if(this.option("value")!==i){var r=n.proxy(this.callBase,this);this._searchValue(this.option("value")).done(n.proxy(function(n){n===i&&(n=this.option("value")),this._selectedItem=n,this.option("displayValue",this._displayGetter(n)),this._setTooltip(n),this.option("fieldTemaplte")?this._renderInputTemplate():r(this._displayGetter(n))},this))}else this._selectedItem=null,this.option("displayValue",null),this._setTooltip(null),this.callBase(null)},_readOnlyPropValue:function(){return!0},_createDropDown:function(){var r=this,i;this.callBase(),this._dropDown.beginUpdate(),t.devices.current().win8&&(i=this._dropDown.option("position"),n.extend(i,{at:"left top",offset:{h:0,v:0}}),this._dropDown.option("position",i)),this._dropDown.option("closeOnOutsideClick",n.proxy(this._closeOutsideDropDownHandler,this)),this._dropDown.endUpdate()},_setWidgetClasses:function(){var n=this._element(),t=this._dropDown._element();n.addClass(e),t.addClass(o)},_pointerDownHandler:function(){this._dropDown.option("visible")&&(this._shouldHide=!0)},_clickHandler:function(){this._dropDown.option("visible")||this._shouldHide?this._shouldHide=!1:this.option("readOnly")||this._showDropDown()},_applyFilter:n.noop,_updateTextBox:function(t){var i=this,r=u.addNamespace("dxclick",this.NAME),f=u.addNamespace("dxpointerdown",this.NAME);this._clickAction=this._createAction(function(){i._clickHandler()}),this._selectedItem=t,this._renderInputTemplate();this._$container.off(r).off(f).on(r,function(){i._clickAction()}).on(f,n.proxy(this._pointerDownHandler,this))},_compileValueGetter:function(){this._valueGetter=t.data.utils.compileGetter(this._valueGetterExpr())},_valueGetterExpr:function(){return this.option("valueExpr")||this._dataSource&&this._dataSource._store._key||"this"},_setSelectedClass:function(t,u){if(u=u,this.option("multiSelectEnabled"))n.each(this._getSelected(),function(){n(this).addClass(r)});else{if(t=t||this._getSelected(),t===null)return;var f=u!==i?this._optionValuesEqual("value",this._valueGetter(u),this.option("value")):!0;t.toggleClass(r,f)}},_getSelected:function(){var t=[],i=this._list._element(),r=this.option("multiSelectEnabled")?this.option("values"):[this.option("value")],u=this._valueGetter;return(n.each(this._list.option("items"),function(f,e){n.inArray(u(e),r)!==-1&&t.push(i.find(w).eq(f))}),!this.option("multiSelectEnabled"))?t[0]||null:t},_removeSelectedClass:function(){this._list._element().find("."+r).removeClass(r)},_updateSelectedItems:function(n,t){this._removeSelectedClass(),this._setSelectedClass(n,t)},_handleListItemClick:function(n){this._hideDropDown(),this._shouldHide=!1,this.option("multiSelectEnabled")?(this.option().value=this._valueGetter(n.itemData),this._addTagValue(this.option("value"))):this.option("value",this._valueGetter(n.itemData))},_handleInputEnterKey:function(){this.callBase(),this.option("multiSelectEnabled")&&this.option("value")&&this._addTagValue(this.option("value"))},_selectedItemDataGetter:function(){var n=this._listSelectedItemElement();return n.length?this._valueGetter(n.data(p)):[]},_addTagValue:function(t){var r=this.option("values")||[],i=[];n.inArray(t,r)===-1&&(i.push.apply(i,r),i.push(t),this.option("values",i))},_searchValue:function(n){var t=this._valueGetterExpr();return this._loadSingle(t,n)},_changeValueExpr:function(){this._compileValueGetter(),this.option("value",this._valueGetter(this._selectedItem))},_getSelectedItemClass:function(){return r},_getSelectedItemSelector:function(){return"."+r},_renderList:function(){this.callBase(),this._list.option({autoPagingEnabled:!0,itemRenderedAction:n.proxy(function(n){this._setSelectedClass(n.itemElement,n.itemData)},this)})},_hideOnBlur:function(){return!1},_handleClearValue:function(){this.option("multiSelectEnabled")&&this.option("values",[]),this.option("value",null)},_optionChanged:function(n,t,i){switch(n){case"value":this.callBase.apply(this,arguments),this._updateSelectedItems(),this._renderInputTemplate();break;case"displayValue":break;case"tooltipEnabled":this._setTooltip(this.option("value"));break;case"valueExpr":this._changeValueExpr();break;case"displayExpr":this._compileDisplayGetter(),this._refresh();break;case"fieldTemplate":this._renderInputTemplate();break;case"values":this.option("multiSelectEnabled")&&(this._renderTags(),this._updateSelectedItems(),this._raiseValueChangeAction(this.option("value"),i,{values:t}));break;case"multiSelectEnabled":this._refresh();break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var f=t.ui,w=f.events,e=t.utils,o=t.fx,s=t.translator,h="dx-multiview",c="dx-multiview-wrapper",l="dx-multiview-item-container",a="dx-multiview-item",v="dx-multiview-item-hidden",y="dxMultiViewItemData",p=function(n){return s.locate(n).left},r=function(n,t){s.move(n,{left:t})},u={moveTo:function(n,t,i){o.animate(n,{type:"slide",to:{left:t},duration:200,complete:i})},complete:function(n){o.stop(n,!0)}};t.registerComponent("dxMultiView",f.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({selectedIndex:0,swipeEnabled:!0,animationEnabled:!0,loop:!1})},_itemClass:function(){return a},_itemDataKey:function(){return y},_itemContainer:function(){return this._$itemContainer},_selectionByClickEnabled:function(){return!1},_itemWidth:function(){return this._itemWidthValue||(this._itemWidthValue=this._$wrapper.width()),this._itemWidthValue},_clearItemWidthCache:function(){delete this._itemWidthValue},_itemsCount:function(){return this.option("items").length},_normalizeIndex:function(n){var t=this._itemsCount();return n<0&&(n=n+t),n>=t&&(n=n-t),n},_init:function(){this.callBase.apply(this,arguments);var t=this._element();t.addClass(h),this._$wrapper=n("<div>").addClass(c),this._$wrapper.appendTo(t),this._$itemContainer=n("<div>").addClass(l),this._$itemContainer.appendTo(this._$wrapper),this._initSwipeable()},_dimensionChanged:function(){this._clearItemWidthCache()},_renderSelectedIndex:function(n){this._updateItems(n)},_updateItems:function(n,t){this._updateItemsPosition(n,t),this._updateItemsVisibility(n,t)},_updateItemsVisibility:function(t,i){var r=this._itemElements();r.each(function(r,u){var f=n(u),e=r!==t&&r!==i;f.toggleClass(v,e)})},_updateItemsPosition:function(n,t){var i=this._itemElements(),u=-this._animationDirection(t,n);r(i.eq(n),0),r(i.eq(t),u*100+"%")},_updateSelectedIndex:function(t,i){u.complete(this._$itemContainter),this._updateItems(i,t);var f=this._animationDirection(t,i);this._animateItemContainer(f*this._itemWidth(),n.proxy(function(){r(this._$itemContainer,0),this._updateItems(t),this._$itemContainer.width()},this))},_animateItemContainer:function(n,t){this.option("animationEnabled")?u.moveTo(this._$itemContainer,n,t):t()},_animationDirection:function(n,t){var i=p(this._$itemContainer),r=(t-n)*this._getRTLSignCorrection(),u=i!==0,f=u?i:r;return e.sign(f)},_initSwipeable:function(){this._element().dxSwipeable({disabled:!this.option("swipeEnabled"),elastic:!1,itemSizeFunc:n.proxy(this._itemWidth,this),startAction:n.proxy(function(n){this._handleSwipeStart(n.jQueryEvent)},this),updateAction:n.proxy(function(n){this._handleSwipeUpdate(n.jQueryEvent)},this),endAction:n.proxy(function(n){this._handleSwipeEnd(n.jQueryEvent)},this)})},_handleSwipeStart:function(n){u.complete(this._$itemContainer);var t=this.option("selectedIndex"),i=this.option("loop"),r=this._itemsCount()-1,f=this.option("rtlEnabled");n.maxLeftOffset=i||(f?t>0:t<r),n.maxRightOffset=i||(f?t<r:t>0)},_handleSwipeUpdate:function(n){var u=n.offset,t=e.sign(u)*this._getRTLSignCorrection(),i,f;r(this._$itemContainer,u*100+"%"),t!==this._swipeDirection&&(this._swipeDirection=t,i=this.option("selectedIndex"),f=this._normalizeIndex(i-t),this._updateItems(i,f))},_handleSwipeEnd:function(t){var i=t.targetOffset*this._getRTLSignCorrection();i?this.option("selectedIndex",this._normalizeIndex(this.option("selectedIndex")-i)):this._animateItemContainer(0,n.noop),delete this._swipeDirection},_getRTLSignCorrection:function(){return this.option("rtlEnabled")?-1:1},_visibilityChanged:function(n){n&&this._clearItemWidthCache()},_optionChanged:function(n,t){switch(n){case"loop":case"animationEnabled":break;case"swipeEnabled":this._element().dxSwipeable("option","disabled",!t);break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),DevExpress.MOD_WIDGETS_BASE=!0}if(!DevExpress.MOD_WIDGETS_MOBILE){if(!DevExpress.MOD_WIDGETS_BASE)throw Error("Required module is not referenced: widgets-base");(function(n,t){var u=t.ui,e=u.events,f=t.fx,r="dx-switch",o=r+"-wrapper",s=r+"-container",h=r+"-inner",c=r+"-handle",l=r+"-on-value",a=r+"-on",v=r+"-off",y=100;t.registerComponent("dxSwitch",u.dxEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({hoverStateEnabled:!0,onText:Globalize.localize("dxSwitch-onText"),offText:Globalize.localize("dxSwitch-offText"),value:!1})},_init:function(){this.callBase(),this._animating=!1,this._animationDuration=y},_recreateValueChangeAction:function(){this._valueChangeAction=this._createActionByOption("valueChangeAction",{excludeValidators:["gesture"]})},_render:function(){var t=this._element();this._$switchInner=n("<div>").addClass(h),this._$handle=n("<div>").addClass(c).appendTo(this._$switchInner),this._$labelOn=n("<div>").addClass(a).prependTo(this._$switchInner),this._$labelOff=n("<div>").addClass(v).appendTo(this._$switchInner),this._$switchContainer=n("<div>").addClass(s).append(this._$switchInner),this._$switchWrapper=n("<div>").addClass(o).append(this._$switchContainer),t.addClass(r).append(this._$switchWrapper),t.dxSwipeable({elastic:!1,startAction:n.proxy(this._handleSwipeStart,this),updateAction:n.proxy(this._handleSwipeUpdate,this),endAction:n.proxy(this._handleSwipeEnd,this)}),this._renderLabels(),this.callBase(),this._updateMarginBound(),this._renderValue(),this._renderClick()},_updateMarginBound:function(){this._marginBound=this._$switchContainer.outerWidth(!0)-this._$handle.outerWidth()},_marginDirection:function(){return this.option("rtlEnabled")?"Right":"Left"},_offsetDirection:function(){return this.option("rtlEnabled")?-1:1},_renderPosition:function(n,t){var r=n?1:0,i=this._marginDirection(),u=i==="Left"?"Right":"Left";this._$switchInner.css("margin"+i,this._marginBound*(r+t-1)),this._$switchInner.css("margin"+u,0)},_validateValue:function(){var n=this.option("value");typeof n!="boolean"&&(this._options.value=!!n)},_renderClick:function(){var t=e.addNamespace("dxclick",this.NAME),i=this._createAction(n.proxy(this._handleClick,this));this._element().off(t).on(t,function(n){i({jQueryEvent:n})})},_handleClick:function(n){var s=n.jQueryEvent;if(this._valueChangeEventInstance=s,!this._animating&&!this._swiping){this._animating=!0;var i=this,r=this.option("value"),u=!r,t=this._marginDirection(),h=t==="Left"?"Right":"Left",e={},o={};this._$switchInner.css("margin"+h,0),e["margin"+t]=(Number(r)-1)*this._marginBound,o["margin"+t]=(Number(u)-1)*this._marginBound,f.animate(this._$switchInner,{from:e,to:o,duration:this._animationDuration,complete:function(){i._animating=!1,i.option("value",u)}})}},_handleSwipeStart:function(n){var t=this.option("value"),i=this.option("rtlEnabled"),r=i?0:1,u=i?1:0;n.jQueryEvent.maxLeftOffset=t?r:u,n.jQueryEvent.maxRightOffset=t?u:r,this._swiping=!0,this._feedbackShow(this._element())},_handleSwipeUpdate:function(n){this._renderPosition(this.option("value"),this._offsetDirection()*n.jQueryEvent.offset)},_handleSwipeEnd:function(n){var t=this,i=this._offsetDirection(),r={};r["margin"+this._marginDirection()]=this._marginBound*(t.option("value")+i*n.jQueryEvent.targetOffset-1),f.animate(this._$switchInner,{to:r,duration:t._animationDuration,complete:function(){t._swiping=!1;var r=t.option("value")+i*n.jQueryEvent.targetOffset;t.option("value",Boolean(r)),t._feedbackOff()}})},_renderValue:function(){this._validateValue();var n=this.option("value");this._renderPosition(n,0),this._element().toggleClass(l,n)},_renderLabels:function(){this._$labelOn.text(this.option("onText")),this._$labelOff.text(this.option("offText"))},_visibilityChanged:function(n){n&&this.repaint()},_feedbackOff:function(){if(this._swiping){this._clearTimers();return}this.callBase.apply(this,arguments)},_optionChanged:function(n,t,i){switch(n){case"visible":case"width":this._refresh();break;case"onText":case"offText":this._renderLabels();break;case"value":this._renderValue(),this.callBase(n,t,i);break;default:this.callBase(n,t,i)}}}))})(jQuery,DevExpress),function(n,t,i){var c=t.ui,f=t.fx,p=t.utils,u=t.translator,e=c.events,v="dx-pivottabs",l="dx-pivottabs-tab",o="dx-pivottabs-tab-selected",a="dx-pivottabs-ghosttab",y="dxPivotTabData",s=200,h="cubic-bezier(.40, .80, .60, 1)",r={moveTo:function(n,t,i){return f.animate(n,{type:"slide",to:{left:t},duration:s,easing:h,complete:i})},slideAppear:function(n,t){return f.animate(n,{type:"slide",to:{left:t,opacity:1},duration:s,easing:h})},slideDisappear:function(n,t){return f.animate(n,{type:"slide",to:{left:t,opacity:0},duration:s,easing:h})},complete:function(t){t&&n.each(t,function(n,t){f.stop(t,!0)})},stop:function(t){t&&n.each(t,function(n,t){f.stop(t)})}};t.registerComponent("dxPivotTabs",c.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({selectedIndex:0,prepareAction:null,updatePositionAction:null,rollbackAction:null})},_itemClass:function(){return l},_itemDataKey:function(){return y},_itemContainer:function(){return this._element()},_elementWidth:function(){return this._elementWidthCache||(this._elementWidthCache=this._element().width()),this._elementWidthCache},_clearElementWidthCache:function(){delete this._elementWidthCache},_itemWidths:function(){if(!this._itemWidthsCache){var i=this._itemElements(),t=[];i.each(function(){t.push(n(this).outerWidth())}),this._itemWidthsCache=t}return this._itemWidthsCache},_init:function(){this.callBase(),this._initGhostTab(),this._initSwipeHandlers(),this._initActions()},_dimensionChanged:function(){this._clearElementWidthCache(),this._cleanPositionCache(),this._updateTabsPositions()},_initGhostTab:function(){this._$ghostTab=n("<div>").addClass(a)},_initActions:function(){var n={excludeValidators:["gesture"]};this._updatePositionAction=this._createActionByOption("updatePositionAction",n),this._rollbackAction=this._createActionByOption("rollbackAction",n),this._prepareAction=this._createActionByOption("prepareAction",n)},_render:function(){this._element().addClass(v),this.callBase(),this._renderGhostTab()},_renderGhostTab:function(){this._itemContainer().append(this._$ghostTab),this._toggleGhostTab(!1)},_toggleGhostTab:function(n){var t=this._$ghostTab;n?(this._updateGhostTabContent(),t.css("opacity",1)):t.css("opacity",0)},_isGhostTabVisible:function(){return this._$ghostTab.css("opacity")==1},_updateGhostTabContent:function(n){n=n===i?this._previousIndex():n;var t=this._$ghostTab,r=this._itemElements();t.html(r.eq(n).html())},_updateTabsPositions:function(n){var r=this._allTabElements(),n=this._applyOffsetBoundaries(n),t=this.option("rtlEnabled")^n>0&&n!==0,i=this._calculateTabPositions(t?"replace":"append");this._moveTabs(i,n),this._toggleGhostTab(t)},_moveTabs:function(t,i){i=i||0;var r=this._allTabElements();r.each(function(r){u.move(n(this),{left:t[r]+i})})},_applyOffsetBoundaries:function(n){n=n||0;var t=n>0?this._maxRightOffset:this._maxLeftOffset;return n*t},_animateRollback:function(){var u=this,t=this._itemElements(),i=this._calculateTabPositions("prepend");this._isGhostTabVisible()&&(this._swapGhostWithTab(t.eq(this._previousIndex())),r.moveTo(this._$ghostTab,i[this._indexBoundary()],function(){u._toggleGhostTab(!1)})),t.each(function(t){r.moveTo(n(this),i[t])})},_animateComplete:function(n,t){var f=this,i=this._itemElements(),r=this._isGhostTabVisible(),u;i.eq(t).removeClass(o),u=r?this._animateIndexDecreasing(n):this._animateIndexIncreasing(n),i.eq(n).addClass(o)},_animateIndexDecreasing:function(t){var f=this._itemElements(),u=this._calculateTabPositions("append",t),i=[];return f.each(function(t){i.push(r.moveTo(n(this),u[t]))}),i.push(r.slideDisappear(this._$ghostTab,u[this._indexBoundary()])),n.when.apply(n,i)},_animateIndexIncreasing:function(t){var s=this,f=this._itemElements(),o=this._calculateTabPositions("prepend",t),i=this._previousIndex(t),h=f.eq(i),c=u.locate(h).left,l=this.option("rtlEnabled"),a=l?this._elementWidth()-this._itemWidths()[i]:0,v=(c-a)*this._getRTLSignCorrection()<0,e=[];return v||this._moveTabs(this._calculateTabPositions("append",i)),this._updateGhostTabContent(i),this._swapGhostWithTab(f.eq(i)),f.each(function(t){var u=n(this),f=o[t];e.push(t===i?r.slideAppear(u,f):r.moveTo(u,f))}),e.push(r.moveTo(this._$ghostTab,o[this._indexBoundary()],function(){s._toggleGhostTab(!1)})),n.when.apply(n,e)},_swapGhostWithTab:function(n){var t=this._$ghostTab,i=u.locate(n).left,r=n.css("opacity");u.move(n,{left:u.locate(t).left}),n.css("opacity",t.css("opacity")),u.move(t,{left:i}),t.css("opacity",r)},_calculateTabPositions:function(n,t){t=t===i?this.option("selectedIndex"):t;var r=t+n;return this._calculetedPositionsMark!==r&&(this._calculetedPositions=this._calculateTabPositionsImpl(t,n),this._calculetedPositionsMark=r),this._calculetedPositions},_calculateTabPositionsImpl:function(t,i){var e=this._normalizeIndex(t-1),a=this._itemElements(),u=this._itemWidths(),f=this.option("rtlEnabled"),l=this._getRTLSignCorrection(),o=this._elementWidth(),s=f?o:0,r=[],h=function(n,t){var i=f*t;r.splice(n,0,s-i),s+=t*l},c;n.each(u.slice(t),h),n.each(u.slice(0,t),h);switch(i){case"replace":c=r[e],r.splice(e,1,f?o:-u[e]),r.push(c);break;case"prepend":r.push(f?o:-u[e]);break;case"append":r.push(s-u[t]*f)}return r},_allTabElements:function(){return this._itemContainer().find("."+l+", ."+a)},_initSwipeHandlers:function(){this._element().on(e.addNamespace("dxswipestart",this.NAME),{itemSizeFunc:n.proxy(this._elementWidth,this)},n.proxy(this._swipeStartHandler,this)).on(e.addNamespace("dxswipe",this.NAME),n.proxy(this._swipeUpdateHandler,this)).on(e.addNamespace("dxswipeend",this.NAME),n.proxy(this._swipeEndHandler,this))},_swipeStartHandler:function(n){this._prepareAnimation(),this._prepareAction(),n.maxLeftOffset=1,n.maxRightOffset=1,t.designMode||this.option("disabled")||this._indexBoundary()<=1?n.cancel=!0:this._swipeGestureRunning=!0},_prepareAnimation:function(){this._stopAnimation()},_stopAnimation:function(){r.complete(this._allTabElements())},_swipeUpdateHandler:function(n){var t=n.offset;this._updateTabsPositions(t),this._updatePositionAction({offset:t})},_swipeEndHandler:function(n){var t=n.targetOffset*this._getRTLSignCorrection(),i;t===0?(this._animateRollback(),this._rollbackAction()):(i=this._normalizeIndex(this.option("selectedIndex")-t),this.option("selectedIndex",i)),this._swipeGestureRunning=!1},_previousIndex:function(n){return n=n===i?this.option("selectedIndex"):n,this._normalizeIndex(n-1)},_normalizeIndex:function(n){var t=this._indexBoundary();return n<0&&(n=t+n),n>=t&&(n=n-t),n},_indexBoundary:function(){return this.option("items").length},_renderSelectedIndex:function(n){this._calculateMaxOffsets(n),this._updateTabsPositions(),this._itemElements().eq(n).addClass(o)},_updateSelectedIndex:function(n){this._calculateMaxOffsets(n)},_calculateMaxOffsets:function(n){var u=this._itemElements(),t=this._itemWidths()[n],i=this._itemWidths()[this._previousIndex(n)],r=this.option("rtlEnabled");this._maxLeftOffset=r?i:t,this._maxRightOffset=r?t:i},_itemRenderDefault:function(t,i,r){var u=n("<span>").text(t.title);r.html(u)},_getRTLSignCorrection:function(){return this.option("rtlEnabled")?-1:1},_visibilityChanged:function(n){n&&this._dimensionChanged()},_clean:function(){r.stop(this._allTabElements()),this._clearElementWidthCache(),this._cleanPositionCache(),this.callBase()},_cleanPositionCache:function(){delete this._itemWidthsCache,delete this._calculetedPositionsMark},_optionChanged:function(n,t,i){switch(n){case"selectedIndex":this._swipeGestureRunning||this._prepareAnimation(),this._itemElements().length&&this._animateComplete(t,i),this.callBase.apply(this,arguments);break;case"items":case"rtlEnabled":this._cleanPositionCache(),this.callBase.apply(this,arguments);break;case"prepareAction":case"updatePositionAction":case"rollbackAction":this._initActions();break;default:this.callBase.apply(this,arguments)}},prepare:function(){this._prepareAnimation()},updatePosition:function(n){this._updateTabsPositions(n)},rollback:function(){this._animateRollback()}}))}(jQuery,DevExpress),function(n,t){var s=t.ui,f=s.events,r=t.fx,e=t.translator,h="dx-pivot",c="dx-pivot-wrapper",l="dx-pivottabs-container",a="dx-pivot-itemcontainer",v="dx-pivot-itemwrapper",y="dx-pivot-item",o="dx-pivot-item-hidden",p="dxPivotItemData",w=200,b=50,k=250,d="cubic-bezier(.10, 1, 0, 1)",u={returnBack:function(n){r.animate(n,{type:"slide",to:{left:0},duration:w})},slideAway:function(n,t,i){r.animate(n,{type:"slide",to:{left:t},duration:b,complete:i})},slideBack:function(n){r.animate(n,{type:"slide",to:{left:0},easing:d,duration:k})},complete:function(n){r.stop(n,!0)},stop:function(n){r.stop(n)}};t.registerComponent("dxPivot",s.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({selectedIndex:0})},_itemClass:function(){return y},_itemDataKey:function(){return p},_itemContainer:function(){return this._$itemWrapper},_elementWidth:function(){return this._elementWidthCache||(this._elementWidthCache=this._element().width()),this._elementWidthCache},_clearElementWidthCache:function(){delete this._elementWidthCache},_init:function(){this.callBase(),this._initWrapper(),this._initTabs(),this._initItemContainer(),this._clearItemsCache(),this._initSwipeHandlers()},_dimensionChanged:function(){this._clearElementWidthCache()},_initWrapper:function(){this._$wrapper=n("<div>").addClass(c).appendTo(this._element())},_initItemContainer:function(){var t=n("<div>").addClass(a);this._$wrapper.append(t),this._$itemWrapper=n("<div>").addClass(v),t.append(this._$itemWrapper)},_clearItemsCache:function(){this._itemsCache=[]},_initTabs:function(){var t=this,i=n("<div>").addClass(l);this._$wrapper.append(i),i.dxPivotTabs({items:this.option("items"),selectedIndex:this.option("selectedIndex"),prepareAction:function(){t._prepareAnimation()},updatePositionAction:function(n){t._updateContentPosition(n.offset)},rollbackAction:function(){t._animateRollback()},itemSelectAction:function(n){t.option("selectedIndex",n.selectedIndex)}}),this._tabs=i.dxPivotTabs("instance")},_render:function(){this._element().addClass(h),this.callBase()},_renderCurrentContent:function(n,t){var i=this._itemsCache;i[t]=this._selectedItemElement(),i[t].addClass(o),i[n]?i[n].removeClass(o):this._renderContent(),this._fireSelectItemEvent(n,t)},_updateContentPosition:function(n){e.move(this._$itemWrapper,{left:this._calculatePixelOffset(n)})},_animateRollback:function(){u.returnBack(this._$itemWrapper)},_animateComplete:function(t,i){var r=this._$itemWrapper,o=this._getRTLSignCorrection(),f=this._elementWidth()*(this._isPrevSwipeHandled()?1:-1)*o;u.slideAway(r,f,n.proxy(function(){e.move(r,{left:-f}),this._renderCurrentContent(t,i)},this)),u.slideBack(r)},_calculatePixelOffset:function(n){return n=n||0,n*this._elementWidth()},_isPrevSwipeHandled:function(){var n=e.locate(this._$itemWrapper).left,t=this.option("rtlEnabled");return t^n>0&&n!==0},_initSwipeHandlers:function(){this._element().on(f.addNamespace("dxswipestart",this.NAME),{itemSizeFunc:n.proxy(this._elementWidth,this)},n.proxy(this._swipeStartHandler,this)).on(f.addNamespace("dxswipe",this.NAME),n.proxy(this._swipeUpdateHandler,this)).on(f.addNamespace("dxswipeend",this.NAME),n.proxy(this._swipeEndHandler,this))},_swipeStartHandler:function(n){this._prepareAnimation(),this._tabs.prepare(),t.designMode||this.option("disabled")||this._indexBoundary()<=1?n.cancel=!0:this._swipeGestureRunning=!0,n.maxLeftOffset=1,n.maxRightOffset=1},_prepareAnimation:function(){this._stopAnimation()},_stopAnimation:function(){u.complete(this._$itemWrapper)},_swipeUpdateHandler:function(n){var t=n.offset;this._updateContentPosition(t),this._tabs.updatePosition(t)},_swipeEndHandler:function(n){var t=n.targetOffset*this._getRTLSignCorrection(),i;t===0?(this._animateRollback(),this._tabs.rollback()):(i=this._normalizeIndex(this.option("selectedIndex")-t),this.option("selectedIndex",i)),this._swipeGestureRunning=!1},_renderSelectedIndex:n.noop,_normalizeIndex:function(n){var t=this._indexBoundary();return n<0&&(n=t+n),n>=t&&(n=n-t),n},_indexBoundary:function(){return this.option("items").length},_renderContentImpl:function(){var n=this.option("items"),t=this.option("selectedIndex");n.length&&this._renderItems([n[t]])},_selectedItemElement:function(){return this._$itemWrapper.children(":not(."+o+")")},_getRTLSignCorrection:function(){return this.option("rtlEnabled")?-1:1},_clean:function(){u.stop(this._$itemWrapper),this.callBase()},_refresh:function(){this._tabs._refresh(),this.callBase()},_optionChanged:function(n,t,i){switch(n){case"disabled":this._tabs.option("disabled",t),this.callBase.apply(this,arguments);break;case"selectedIndex":this._swipeGestureRunning||this._prepareAnimation(),this._animateComplete(t,i),this._tabs.option("selectedIndex",t);break;case"items":this._tabs.option("items",t),this._clearItemsCache(),this.callBase.apply(this,arguments);break;case"rtlEnabled":this._tabs.option("rtlEnabled",t),this._clearItemsCache(),this.callBase.apply(this,arguments);break;default:this.callBase.apply(this,arguments)}}}))}(jQuery,DevExpress),function(n,t){var u=t.ui,h=t.utils,f="dx-tileview",e="dx-tileview-wrapper",r="dx-tile",o="."+r,s="dxTileData";t.registerComponent("dxTileView",u.CollectionContainerWidget.inherit({_activeStateUnit:o,_deprecatedOptions:{listHeight:{since:"14.1",message:"Use the 'height' option instead"}},_optionAliases:{listHeight:"height"},_setDefaultOptions:function(){this.callBase(),this.option({hoverStateEnabled:!0,items:null,showScrollbar:!1,height:500,baseItemWidth:100,baseItemHeight:100,itemMargin:20,indicateLoading:!0})},_itemClass:function(){return r},_itemDataKey:function(){return s},_itemContainer:function(){return this._$container},_init:function(){this.callBase(),this._initScrollView()},_handleDataSourceLoadingChanged:function(n){var t=this._scrollView;t&&(n&&this.option("indicateLoading")?t.startLoading():t.finishLoading())},_hideLoadingIfLoadIndicationOff:function(){this.option("indicateLoading")||this._handleDataSourceLoadingChanged(!1)},_initScrollView:function(){this._scrollView=this._element().dxScrollView({direction:"horizontal",scrollByContent:!0}).dxScrollView("instance"),this._$container=this._scrollView.content(),this._$container.addClass(e),this._scrollView.option("updateAction",n.proxy(this._renderGeometry,this))},_render:function(){this.callBase(),this._element().addClass(f),this.cellsPerColumn=1,this._updateScrollView(),this._fireContentReadyAction()},_renderContent:function(){this._renderContentImpl()},_updateScrollView:function(){this._scrollView.option({rtlEnabled:this.option("rtlEnabled"),showScrollbar:this.option("showScrollbar"),disabled:this.option("disabled")}),this._scrollView.update(),this._indicateLoadingIfAlreadyStarted()},_indicateLoadingIfAlreadyStarted:function(){this._dataSource&&this._dataSource.isLoading()&&this._handleDataSourceLoadingChanged(!0)},_renderGeometry:function(){var t=this.option("items")||[],i=Math.max.apply(Math,n.map(t||[],function(n){return Math.round(n.heightRatio||1)}));this.cellsPerColumn=Math.floor(this._element().height()/(this.option("baseItemHeight")+this.option("itemMargin"))),this.cellsPerColumn=Math.max(this.cellsPerColumn,i),this.cells=[],this.cells.push(new Array(this.cellsPerColumn)),this._arrangeItems(t),this._$container.width(this.cells.length*this.option("baseItemWidth")+(this.cells.length+1)*this.option("itemMargin"))},_arrangeItems:function(t){var i=this,r=this.option("rtlEnabled")?this._$container.width():0;n.each(t,function(n,t){var u={},e,f;u.widthRatio=t.widthRatio||1,u.heightRatio=t.heightRatio||1,u.text=t.text||"",u.widthRatio=u.widthRatio<=0?0:Math.round(u.widthRatio),u.heightRatio=u.heightRatio<=0?0:Math.round(u.heightRatio),e=i._itemElements().eq(n),f=i._getItemPosition(u),f.x===-1&&(f.x=i.cells.push(new Array(i.cellsPerColumn))-1),i._occupyCells(u,f),i._arrangeItem(e,u,f,r)})},_getItemPosition:function(n){for(var r={x:-1,y:0},i,t=0;t<this.cells.length;t++){for(i=0;i<this.cellsPerColumn;i++)if(this._itemFit(t,i,n)){r.x=t,r.y=i;break}if(r.x>-1)break}return r},_itemFit:function(n,t,i){var f=!0,r,u;if(t+i.heightRatio>this.cellsPerColumn)return!1;for(r=n;r<n+i.widthRatio;r++)for(u=t;u<t+i.heightRatio;u++)if(this.cells.length-1<r)this.cells.push(new Array(this.cellsPerColumn));else if(this.cells[r][u]){f=!1;break}return f},_occupyCells:function(n,t){for(var r,i=t.x;i<t.x+n.widthRatio;i++)for(r=t.y;r<t.y+n.heightRatio;r++)this.cells[i][r]=!0},_arrangeItem:function(n,t,i,r){var o=this.option("baseItemHeight"),f=this.option("baseItemWidth"),u=this.option("itemMargin"),e;if(r){var s=i.x*f,h=f+u,c=h*t.widthRatio,l=i.x*u;e=r-(s+c+l)}else e=i.x*f+(i.x+1)*u;n.css({height:t.heightRatio*o+(t.heightRatio-1)*u,width:t.widthRatio*f+(t.widthRatio-1)*u,top:i.y*o+(i.y+1)*u,left:e,display:t.widthRatio<=0||t.heightRatio<=0?"none":""})},_optionChanged:function(n,t){switch(n){case"showScrollbar":this._initScrollView();break;case"disabled":this._scrollView.option("disabled",t);break;case"baseItemWidth":case"baseItemHeight":case"itemMargin":this._renderGeometry();break;case"height":this.callBase.apply(this,arguments),this._renderGeometry(),this._scrollView.update();break;case"indicateLoading":this._hideLoadingIfLoadIndicationOff();break;default:this.callBase.apply(this,arguments)}},scrollPosition:function(){return this._scrollView.scrollOffset().left}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,u="dx-action-sheet",f="dx-action-sheet-container",e="dx-action-sheet-popup-wrapper",o="dx-action-sheet-popover-wrapper",s="dx-action-sheet-cancel",h="dx-action-sheet-item",c="dxActionSheetItemData",l="dx-action-sheet-without-title";t.registerComponent("dxActionSheet",r.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({usePopover:!1,target:null,title:"",showTitle:!0,showCancelButton:!0,cancelText:Globalize.localize("Cancel"),cancelClickAction:null,visible:!1,noDataText:""})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:[{platform:"ios",tablet:!0},{platform:"ios7",tablet:!0}],options:{usePopover:!0}}])},_itemContainer:function(){return this._$itemContainer},_itemClass:function(){return h},_itemDataKey:function(){return c},_toggleVisibility:n.noop,_renderDimensions:n.noop,_render:function(){this._element().addClass(u),this._createItemContainer(),this._renderPopup()},_createItemContainer:function(){this._$itemContainer=n("<div>").addClass(f),this._renderDisabled()},_renderDisabled:function(){this._$itemContainer.toggleClass("dx-state-disabled",this.option("disabled"))},_renderPopup:function(){this._$popup=n("<div>").appendTo(this._element()),this._popup=this._isPopoverMode()?this._createPopover():this._createPopup(),this._renderPopupTitle(),this._mapPopupOption("visible")},_mapPopupOption:function(n){this._popup.option(n,this.option(n))},_isPopoverMode:function(){return this.option("usePopover")&&this.option("target")},_renderPopupTitle:function(){this._mapPopupOption("showTitle"),this._popup._wrapper().toggleClass(l,!this.option("showTitle"))},_clean:function(){this._$popup&&this._$popup.remove(),this.callBase()},_createPopover:function(){var t=this._$popup.dxPopover({_templates:this.option("_templates"),rtlEnabled:this.option("rtlEnabled"),showTitle:!0,title:this.option("title"),width:this.option("width")||200,height:this.option("height")||"auto",target:this.option("target"),hiddenAction:n.proxy(this.hide,this),contentReadyAction:n.proxy(this._popupContentReadyAction,this)}).dxPopover("instance");return t._wrapper().addClass(o),t},_createPopup:function(){var t=this._$popup.dxPopup({_templates:this.option("_templates"),rtlEnabled:this.option("rtlEnabled"),dragEnabled:!1,title:this.option("title"),width:this.option("width")||"100%",height:this.option("height")||"auto",contentReadyAction:n.proxy(this._popupContentReadyAction,this),position:{my:"bottom",at:"bottom",of:window},animation:{show:{type:"slide",duration:400,from:{position:{my:"top",at:"bottom",of:window}},to:{position:{my:"bottom",at:"bottom",of:window}}},hide:{type:"slide",duration:400,from:{position:{my:"bottom",at:"bottom",of:window}},to:{position:{my:"top",at:"bottom",of:window}}}}}).dxPopup("instance");return t.optionChanged.add(n.proxy(function(n,t){n==="visible"&&this.option("visible",t)},this)),t._wrapper().addClass(e),t},_popupContentReadyAction:function(){this._popup.content().append(this._$itemContainer),this._attachClickEvent(),this._attachHoldEvent(),this._renderContent(),this._renderCancelButton()},_renderCancelButton:function(){if(!this._isPopoverMode()&&(this._$cancelButton&&this._$cancelButton.remove(),this.option("showCancelButton"))){var i=new t.Action(n.proxy(this.hide,this),{beforeExecute:this.option("cancelClickAction")});this._$cancelButton=n("<div>").addClass(s).appendTo(this._popup.content()).dxButton({text:this.option("cancelText"),clickAction:function(n){i.execute(n)}})}},_handleItemClick:function(t){this.callBase(t),n(t.target).is(".dx-state-disabled, .dx-state-disabled *")||this.hide()},_handleItemHold:function(t){this.callBase(t),n(t.target).is(".dx-state-disabled, .dx-state-disabled *")||this.hide()},_itemRenderDefault:function(n,t,i){i.dxButton(n)},_optionChanged:function(n){switch(n){case"width":case"height":case"visible":case"title":this._mapPopupOption(n);break;case"disabled":this._renderDisabled();break;case"showTitle":this._renderPopupTitle();break;case"showCancelButton":case"cancelClickAction":case"cancelText":this._renderCancelButton();break;case"target":case"usePopover":case"items":this._invalidate();break;default:this.callBase.apply(this,arguments)}},toggle:function(t){var i=this,r=n.Deferred();return i._popup.toggle(t).done(function(){i.option("visible",t),r.resolveWith(i)}),r.promise()},show:function(){return this.toggle(!0)},hide:function(){return this.toggle(!1)}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,u=r.events,e="dx-dropdownmenu",f="dx-dropdownmenu-popup",o=f+"-wrapper",s="dx-dropdownmenu-list",h="dx-dropdownmenu-button";t.registerComponent("dxDropDownMenu",r.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({items:[],itemClickAction:null,dataSource:null,itemTemplate:"item",itemRender:null,buttonText:"",buttonIcon:"overflow",buttonIconSrc:null,buttonClickAction:null,usePopover:!1,hoverStateEnabled:!0})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:[{platform:"ios"},{platform:"ios7"}],options:{usePopover:!0}}])},_init:function(){this.callBase(),this._initDataSource(),this._initItemClickAction()},_initItemClickAction:function(){this._itemClickAction=this._createActionByOption("itemClickAction")},_render:function(){this._element().addClass(e),this._renderButton(),this._renderClick(),this.callBase()},_clean:function(){this._popup._element().remove()},_renderContentImpl:function(){this._renderPopup()},_renderButton:function(){var n=this.option("buttonIconSrc"),t=this.option("buttonIcon");this._button=this._element().addClass(h).dxButton({text:this.option("buttonText"),icon:t,iconSrc:n,clickAction:this.option("buttonClickAction")}).dxButton("instance")},_renderClick:function(){var t=this._createAction(this._handleButtonClick),n=u.addNamespace("dxclick",this.NAME);this._element().off(n).on(n,function(n){t({jQueryEvent:n})})},_handleButtonClick:function(n){n.component._popup.toggle()},_renderList:function(t){var r=t.content(),i=this,u;i._list=r.addClass(s).dxList({_templates:this.option("_templates"),autoPagingEnabled:!1,indicateLoading:!1,noDataText:"",itemRender:i.option("itemRender"),itemTemplate:i._getTemplateByOption("itemTemplate"),itemClickAction:function(n){i._popup.hide(),i._itemClickAction(n)}}).data("dxList"),i._setListDataSource(),i._attachListClick(),u=n(window).height()*.5,r.height()>u&&r.height(u)},_toggleVisibility:function(n){this.callBase(n),this._button.option("visible",n)},_attachListClick:function(){var n=this._createAction(this._handleListClick);this._list._element().off("."+this.NAME).on(u.addNamespace("dxclick",this.NAME),function(t){n({jQueryEvent:t})})},_handleListClick:function(n){n.component._popup.hide()},_renderPopup:function(){var t=this._$popup=n("<div>").appendTo(this._element()),i={contentReadyAction:n.proxy(this._popupContentReadyHandler,this),deferRendering:!1};this._popup=this._createPopover(t,i),this._popup._wrapper().addClass(o),this._popup._wrapper().toggleClass(f,!this.option("usePopover"))},_popupContentReadyHandler:function(){var n=this._$popup.dxPopover("instance");this._renderList(n)},_createPopover:function(t,i){return t.dxPopover(n.extend(i,{target:this._element(),rtlEnabled:this.option("rtlEnabled")})).dxPopover("instance")},_setListDataSource:function(){this._list&&this._list.option("dataSource",this._dataSource||this.option("items"))},_optionChanged:function(n,t){if(/^button/.test(n)){this._renderButton();return}switch(n){case"items":case"dataSource":this._refreshDataSource(),this._setListDataSource();break;case"itemRender":case"itemTemplate":this._list&&this._list.option(n,t);break;case"itemClickAction":this._initItemClickAction();break;case"usePopover":this._invalidate();break;default:this.callBase.apply(this,arguments)}}}).include(r.DataHelperMixin))}(jQuery,DevExpress),function(n,t){var h=t.ui,o=h.events,e=t.fx,c=t.translator,at=t.utils,p="dx-panorama",w="dx-panorama-wrapper",b="dx-panorama-title",k="dx-panorama-ghosttitle",d="dx-panorama-itemscontainer",l="dx-panorama-item",a="dx-panorama-ghostitem",g="dx-panorama-item-header",nt="dxPanoramaItemData",tt=.02,it=.02,rt=300,ut="cubic-bezier(.40, .80, .60, 1)",ft=300,et="cubic-bezier(.40, .80, .60, 1)",ot=300,st="cubic-bezier(.40, .80, .60, 1)",v=function(n,t){n.css("background-position",t+"px 0%")},f=function(n){return c.locate(n).left},r=function(n,t){c.move(n,{left:t})},u={backgroundMove:function(n,t,i){return e.animate(n,{to:{"background-position":t+"px 0%"},duration:rt,easing:ut,complete:i})},titleMove:function(n,t,i){return e.animate(n,{type:"slide",to:{left:t},duration:ft,easing:et,complete:i})},itemMove:function(n,t,i){return e.animate(n,{type:"slide",to:{left:t},duration:ot,easing:st,complete:i})}},y=function(t){t&&n.each(t,function(n,t){e.stop(t,!0)})},s=t.Class.inherit({ctor:function(n){this._panorama=n},init:n.noop,render:n.noop,allItemElements:function(){return this._panorama._itemElements()},updatePositions:t.abstract,animateRollback:t.abstract,detectBoundsTransition:t.abstract,animateComplete:t.abstract,_getRTLSignCorrection:function(){return this._panorama._getRTLSignCorrection()},_isRTLEnabled:function(){return this._panorama.option("rtlEnabled")},_itemMargin:function(){return this._containerWidth()*tt},_containerWidth:function(){return this._panorama._elementWidth()},_itemWidth:function(){return this._panorama._itemWidth()},_indexBoundary:function(){return this._panorama._indexBoundary()},_normalizeIndex:function(n){return this._panorama._normalizeIndex(n)},_startNextPosition:function(){return this._isRTLEnabled()?this._containerWidth()-(this._itemMargin()+this._itemWidth()):this._itemMargin()},_startPrevPosition:function(){return this._isRTLEnabled()?this._containerWidth():-this._itemWidth()}}),ht=s.inherit({updatePositions:function(){var t=this._panorama._itemElements(),i=this._startNextPosition();t.each(function(){r(n(this),i)})},animateRollback:n.noop,detectBoundsTransition:n.noop,animateComplete:n.noop}),ct=s.inherit({init:function(){this._initGhostItem()},render:function(){this._renderGhostItem()},_initGhostItem:function(){this._$ghostItem=n("<div>").addClass(a)},_renderGhostItem:function(){this._panorama._itemContainer().append(this._$ghostItem),this._toggleGhostItem(!1)},_toggleGhostItem:function(n){var t=this._$ghostItem;n?t.css("opacity",1):t.css("opacity",0)},_updateGhostItemContent:function(n){n!==!1&&n!==this._prevGhostIndex&&(this._$ghostItem.html(this._panorama._itemElements().eq(n).html()),this._prevGhostIndex=n)},_isGhostItemVisible:function(){return this._$ghostItem.css("opacity")==1},_swapGhostWithItem:function(n){var t=this._$ghostItem,i=f(n);r(n,f(t)),r(t,i)},allItemElements:function(){return this._panorama._itemContainer().find("."+l+", ."+a)},updatePositions:function(t){var o=this.allItemElements(),i=this._panorama.option("selectedIndex"),u=t*this._getRTLSignCorrection(),f=u>0&&i===0||u<0&&i===1,e=u<0&&i===0||u>0&&i===1,s=f&&"replaceLast"||e&&"replaceFirst",h=f&&1||e&&0,c=this._calculateItemPositions(i,s);this._updateGhostItemContent(h),this._toggleGhostItem(f||e),o.each(function(i){r(n(this),c[i]+t)})},animateRollback:function(t){var h=this,i=this._panorama._itemElements(),e=this._startNextPosition(),o=this._getRTLSignCorrection(),c=(f(i.eq(t))-e)*o,r=(f(this._$ghostItem)-e)*o,s=this._calculateItemPositions(t,r>0?"prepend":"append"),l=t===0&&c>0&&r>0||t===1&&r<0;l?this._swapGhostWithItem(i.eq(1)):this._swapGhostWithItem(i.eq(0)),i.each(function(t){u.itemMove(n(this),s[t])}),u.itemMove(this._$ghostItem,s[2],function(){h._toggleGhostItem(!1)})},detectBoundsTransition:function(n,t){var i=f(this._$ghostItem),r=this._startNextPosition(),u=this._isRTLEnabled();return n===0&&u^i<r?"left":t===0&&u^i>r?"right":void 0},animateComplete:function(t,i,r){var o=this,s=!t^!(r===0)?"prepend":"append",h=this._panorama._itemElements(),e=this._calculateItemPositions(i,s),f=[];return h.each(function(t){f.push(u.itemMove(n(this),e[t]))}),f.push(u.itemMove(this._$ghostItem,e[2],function(){o._toggleGhostItem(!1)})),n.when.apply(n,f)},_calculateItemPositions:function(n,t){var i=[],h=this._panorama._itemElements(),o=this._itemMargin(),s=this._itemWidth(),e=(s+o)*this._getRTLSignCorrection(),u=n===0,f=this._startPrevPosition(),r=this._startNextPosition();i.push(r),r+=e,u?i.push(r):i.splice(0,0,r),r+=e;switch(t){case"replaceFirst":i.push(i[0]),i[0]=u?r:f;break;case"replaceLast":u?i.splice(1,0,f):i.splice(1,0,r);break;case"prepend":i.push(f);break;case"append":i.push(r)}return i}}),lt=s.inherit({updatePositions:function(t){var i=this._panorama._itemElements(),u=t*this._getRTLSignCorrection()<0,f=this._calculateItemPositions(this._panorama.option("selectedIndex"),u);i.each(function(i){r(n(this),f[i]+t)})},animateRollback:function(t){var i=this._panorama._itemElements(),e=this._calculateItemPositions(t),o=[t,this._normalizeIndex(t+1)];this._isRTLEnabled()^f(i.eq(t))>this._startNextPosition()&&o.push(this._normalizeIndex(t-1)),i.each(function(t){var i=n(this);n.inArray(t,o)!==-1?u.itemMove(i,e[t]):r(i,e[t])})},detectBoundsTransition:function(n,t){var i=this._indexBoundary()-1;return t===i&&n===0?"left":t===0&&n===i?"right":void 0},animateComplete:function(t,i,f){var s=[],h=this._panorama._itemElements(),e=this._calculateItemPositions(i),o=this._normalizeIndex(f-1)===i,l=h.length===3&&o?this._normalizeIndex(f+1):null,a=e[this._indexBoundary()],c=[i,f],v=o?f:i;return o||c.push(this._normalizeIndex(v+1)),h.each(function(t){var i=n(this);if(n.inArray(t,c)===-1){r(i,e[t]);return}s.push(t!==l?u.itemMove(i,e[t]):u.itemMove(i,a,function(){r(i,e[t])}))}),n.when.apply(n,s)},_calculateItemPositions:function(n,t){for(var f=this._normalizeIndex(n-1),c=this._panorama._itemElements(),o=this._itemMargin(),s=this._itemWidth(),e=(s+o)*this._getRTLSignCorrection(),i=[],h=this._startPrevPosition(),r=this._startNextPosition(),u=n;u!==f;u=this._normalizeIndex(u+1))i[u]=r,r+=e;return t?(i[f]=r,r+=e):i[f]=h,i.push(r),i}});t.registerComponent("dxPanorama",h.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({selectedIndex:0,title:"panorama",backgroundImage:{url:null,width:0,height:0}})},_itemClass:function(){return l},_itemDataKey:function(){return nt},_itemContainer:function(){return this._$itemsContainer},_selectionByClickEnabled:function(){return!1},_itemWidth:function(){return this._itemWidthCache||(this._itemWidthCache=this._itemElements().eq(0).outerWidth()),this._itemWidthCache},_clearItemWidthCache:function(){delete this._itemWidthCache},_elementWidth:function(){return this._elementWidthCache||(this._elementWidthCache=this._element().width()),this._elementWidthCache},_clearElementWidthCache:function(){delete this._elementWidthCache},_titleWidth:function(){return this._titleWidthCache||(this._titleWidthCache=this._$title.outerWidth()),this._titleWidthCache},_clearTitleWidthCache:function(){delete this._titleWidthCache},_init:function(){this.callBase(),this._initItemsRenderStrategy(),this._initWrapper(),this._initTitle(),this._initItemsContainer(),this._initSwipeHandlers()},_dimensionChanged:function(){this._clearItemWidthCache(),this._clearElementWidthCache(),this._clearTitleWidthCache(),this._updatePositions()},_initWrapper:function(){this._$wrapper=n("<div>").addClass(w).appendTo(this._element())},_initItemsRenderStrategy:function(){var n;switch(this.option("items").length){case 0:case 1:n=ht;break;case 2:n=ct;break;default:n=lt}this._itemsRenderStrategy=new n(this),this._itemsRenderStrategy.init()},_initBackgroundImage:function(){var n=this.option("backgroundImage.url");n&&this._element().css("background-image","url("+n+")")},_initTitle:function(){this._$title=n("<div>").addClass(b),this._$ghostTitle=n("<div>").addClass(k),this._$wrapper.append(this._$title),this._$wrapper.append(this._$ghostTitle),this._updateTitle()},_updateTitle:function(){var n=this.option("title");this._$title.text(n),this._$ghostTitle.text(n),this._toggleGhostTitle(!1)},_toggleGhostTitle:function(n){var t=this._$ghostTitle;n?t.css("opacity",1):t.css("opacity",0)},_getRTLSignCorrection:function(){return this.option("rtlEnabled")?-1:1},_initItemsContainer:function(){this._$itemsContainer=n("<div>").addClass(d),this._$wrapper.append(this._$itemsContainer)},_render:function(){this._element().addClass(p),this.callBase(),this._initBackgroundImage(),this._itemsRenderStrategy.render()},_updatePositions:function(n){n=n||0,this._updateBackgroundPosition(n*this._calculateBackgroundStep()),this._updateTitlePosition(n*this._calculateTitleStep()),this._itemsRenderStrategy.updatePositions(n*this._elementWidth())},_updateBackgroundPosition:function(n){v(this._element(),this._calculateBackgroundPosition(this.option("selectedIndex"))+n)},_updateTitlePosition:function(n){r(this._$title,this._calculateTitlePosition(this.option("selectedIndex"))+n)},_animateRollback:function(n){this._animateBackgroundMove(n),this._animateTitleMove(n),this._itemsRenderStrategy.animateRollback(n)},_animateBackgroundMove:function(n){return u.backgroundMove(this._element(),this._calculateBackgroundPosition(n))},_animateTitleMove:function(n){return u.titleMove(this._$title,this._calculateTitlePosition(n))},_animateComplete:function(t,i){var r=this,u=this._itemsRenderStrategy.detectBoundsTransition(t,i),f=this._performBackgroundAnimation(u,t),e=this._performTitleAnimation(u,t),o=this._itemsRenderStrategy.animateComplete(u,t,i);n.when(f,e,o).done(function(){r._indexChangeOnAnimation=!0,r.option("selectedIndex",t),r._indexChangeOnAnimation=!1})},_performBackgroundAnimation:function(n,t){return n?this._animateBackgroundBoundsTransition(n,t):this._animateBackgroundMove(t)},_animateBackgroundBoundsTransition:function(n,t){var r=this,f=n==="left",i=this._calculateBackgroundPosition(t),e=f^this.option("rtlEnabled")?-this._calculateBackgroundScaledWidth():this._calculateBackgroundScaledWidth(),o=i+e;return u.backgroundMove(this._element(),o,function(){v(r._element(),i)})},_performTitleAnimation:function(n,t){return n?this._animateTitleBoundsTransition(n,t):this._animateTitleMove(t)},_animateTitleBoundsTransition:function(t,i){var a=this,e=this._$ghostTitle,o=this._titleWidth(),f=this._elementWidth(),s=t==="left",h=this.option("rtlEnabled"),v=s^h?f:-o,y=s^h?-(f+o):f,c,l;return r(e,v),this._toggleGhostTitle(!0),this._swapGhostWithTitle(),c=u.titleMove(e,y,function(){a._toggleGhostTitle(!1)}),l=u.titleMove(this._$title,this._calculateTitlePosition(i)),n.when(c,l)},_swapGhostWithTitle:function(){var n=this._$ghostTitle,t=this._$title,i=f(t);r(t,f(n)),r(n,i)},_calculateTitlePosition:function(n){var t=this._elementWidth(),r=this._titleWidth(),i=t*it,u=this.option("rtlEnabled")?t-i-r:i,f=n*this._calculateTitleStep()*this._getRTLSignCorrection();return u-f},_calculateTitleStep:function(){var i=this._elementWidth(),n=this._titleWidth(),t=this._indexBoundary()||1;return Math.max((n-i)/t,n/t)},_calculateBackgroundPosition:function(n){var t=this._elementWidth(),i=this._calculateBackgroundScaledWidth(),r=this.option("rtlEnabled")?t-i:0,u=n*this._calculateBackgroundStep()*this._getRTLSignCorrection();return r-u},_calculateBackgroundStep:function(){var n=this._itemWidth(),t=this._calculateBackgroundScaledWidth();return Math.max((t-n)/(this._indexBoundary()||1),0)},_calculateBackgroundScaledWidth:function(){return this._element().height()*this.option("backgroundImage.width")/(this.option("backgroundImage.height")||1)},_initSwipeHandlers:function(){this._element().on(o.addNamespace("dxswipestart",this.NAME),{itemSizeFunc:n.proxy(this._elementWidth,this)},n.proxy(this._swipeStartHandler,this)).on(o.addNamespace("dxswipe",this.NAME),n.proxy(this._swipeUpdateHandler,this)).on(o.addNamespace("dxswipeend",this.NAME),n.proxy(this._swipeEndHandler,this))},_swipeStartHandler:function(n){this._stopAnimations(),n.maxLeftOffset=1,n.maxRightOffset=1,(t.designMode||this.option("disabled")||this._indexBoundary()<=1)&&(n.cancel=!0)},_stopAnimations:function(){y([this._element(),this._$ghostTitle,this._$title]),y(this._itemsRenderStrategy.allItemElements())},_swipeUpdateHandler:function(n){this._updatePositions(n.offset)},_swipeEndHandler:function(n){var t=this.option("selectedIndex"),i=n.targetOffset*this._getRTLSignCorrection();i===0?this._animateRollback(t):this._animateComplete(this._normalizeIndex(t-i),t)},_renderSelectedIndex:function(){this._indexChangeOnAnimation||this._updatePositions()},_normalizeIndex:function(n){var t=this._indexBoundary();return n<0&&(n=t+n),n>=t&&(n=n-t),n},_indexBoundary:function(){return this.option("items").length},_visibilityChanged:function(n){n&&this._dimensionChanged()},_optionChanged:function(n){switch(n){case"width":this.callBase.apply(this,arguments),this._dimensionChanged();break;case"backgroundImage":this._invalidate();break;case"title":this._updateTitle();break;case"items":this._initItemsRenderStrategy(),this.callBase.apply(this,arguments);break;default:this.callBase.apply(this,arguments)}},_itemRenderDefault:function(t,i,r){if(this.callBase(t,i,r),t.header){var u=n("<div>").addClass(g).text(t.header);r.prepend(u)}}}))}(jQuery,DevExpress),function(n,t,i){var u=t.ui,w=u.events,f=t.fx,b=t.utils,o=t.translator,s="dx-slideout",h="dx-slideout-wrapper",c="dx-slideout-item-container",l="dx-slideout-menu",a="dx-slideout-shield",e="dx-slideout-item",v="dxSlideoutItemData",r="dx-state-invisible",y=45,p=400;t.registerComponent("dxSlideOut",u.CollectionContainerWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({activeStateEnabled:!1,menuItemRender:null,menuItemTemplate:"menuItem",swipeEnabled:!0,menuVisible:!1,menuGrouped:!1,menuGroupTemplate:"group",menuGroupRender:null})},_itemClass:function(){return e},_itemDataKey:function(){return v},_init:function(){this.callBase(),this._deferredAnimate=i},_render:function(){this._renderWrapper(),this._renderItemsContainer(),this._renderShield(),this._renderList(),this._initSwipeHandlers(),this._element().addClass(s),this.callBase(),this._renderPosition(this.option("menuVisible"),!1)},_renderWrapper:function(){this._wrapper=n("<div>").addClass(h),this._element().append(this._wrapper)},_renderShield:function(){this._$shield=n("<div>").addClass(a),this._$shield.appendTo(this._$container);this._$shield.on("dxclick",n.proxy(this.hideMenu,this));this._toggleShieldVisibility()},_dimensionChanged:function(){this._renderPosition(this.option("menuVisible"),!1),this._clearListWidthCache()},_renderItemsContainer:function(){this._$container=n("<div>").addClass(c).appendTo(this._wrapper);this._$container.on("MSPointerDown",function(){})},_selectedItemElement:function(){return this._itemElements().eq(0)},_renderContentImpl:function(){var r=this.option("items"),t=this.option("selectedIndex"),i;r.length&&t>-1&&(i=this._$list.dxList("instance").getItemByIndex(t),this._renderItems([i]))},_renderList:function(){this._$list=n("<div>").addClass(l).prependTo(this._wrapper),this._renderItemClickAction();var t=this._$list.dxList().dxList("instance");this._$list.dxList({_templates:this.option("_templates"),itemTemplateProperty:"menuTemplate",height:"100%",indicateLoading:!1,itemClickAction:n.proxy(this._handleListItemClick,this),items:this.option("items"),dataSource:this.option("dataSource"),itemRender:this.option("menuItemRender"),itemTemplate:this._getTemplateByOption("menuItemTemplate"),grouped:this.option("menuGrouped"),groupTemplate:this.option("menuGroupTemplate"),groupRender:this.option("menuGroupRender")})},_handleListItemClick:function(n){var t=this._$list.find(".dx-list-item").index(n.itemElement);this.option("selectedIndex",t),this._itemClickAction(n)},_handleItemClick:n.noop,_renderItemClickAction:function(){this._itemClickAction=this._createActionByOption("itemClickAction")},_renderItem:function(n,t){this._$container.find("."+e).remove(),this.callBase(n,t,this._$container)},_renderSelectedIndex:function(){this._renderContent()},_initSwipeHandlers:function(){this._$container.dxSwipeable({elastic:!1,itemSizeFunc:n.proxy(this._getListWidth,this),startAction:n.proxy(this.option("swipeEnabled")?this._handleSwipeStart:function(n){n.jQueryEvent.cancel=!0},this),updateAction:n.proxy(this._handleSwipeUpdate,this),endAction:n.proxy(this._handleSwipeEnd,this)})},_handleSwipeStart:function(n){this._$shield.addClass(r),f.stop(this._$container);var t=this.option("menuVisible"),i=this.option("rtlEnabled");n.jQueryEvent.maxLeftOffset=i?!t:t,n.jQueryEvent.maxRightOffset=i?t:!t},_handleSwipeUpdate:function(n){var t=this.option("menuVisible")?n.jQueryEvent.offset+1*this._getRTLSignCorrection():n.jQueryEvent.offset;t*=this._getRTLSignCorrection(),this._renderPosition(t,!1)},_handleSwipeEnd:function(n){var t=n.jQueryEvent.targetOffset*this._getRTLSignCorrection()+this.option("menuVisible"),i=t!==0;this.option("menuVisible")===i?this._renderPosition(this.option("menuVisible"),!0):this.option("menuVisible",t!==0)},_handleMenuButtonClick:function(){this.option("menuVisible",!this.option("menuVisible"))},_toggleMenuVisibility:function(n){this.option("menuVisible",n)},_renderPosition:function(t,i){var u=this._calculatePixelOffset(t)*this._getRTLSignCorrection();i?(this._$shield.addClass(r),f.animate(this._$container,{type:"slide",to:{left:u},duration:p,complete:n.proxy(this._handleAnimationComplete,this)})):o.move(this._$container,{left:u})},_calculatePixelOffset:function(n){var n=n||0,t=this._getListWidth();return n*t},_getListWidth:function(){if(!this._listWidth){var n=this._$list.width(),t=this._element().width()-y;this._listWidth=Math.min(t,n)}return this._listWidth},_clearListWidthCache:function(){delete this._listWidth},_getRTLSignCorrection:function(){return this.option("rtlEnabled")?-1:1},_changeMenuOption:function(n,t){this._$list.dxList("instance").option(n,t),this._clearListWidthCache()},_visibilityChanged:function(n){n&&this._dimensionChanged()},_optionChanged:function(n,t,i){switch(n){case"menuVisible":this._renderPosition(t,!0);break;case"swipeEnabled":this._initSwipeHandlers();break;case"menuItemRender":this._changeMenuOption("itemRender",t);break;case"menuItemTemplate":this._changeMenuOption("itemTemplate",t);break;case"items":case"dataSource":this._changeMenuOption(n,t);break;case"menuGrouped":this._changeMenuOption("grouped",t);break;case"menuGroupRender":this._changeMenuOption("groupRender",t);break;case"menuGroupTemplate":this._changeMenuOption("groupTemplate",t);break;case"itemClickAction":this._renderItemClickAction();break;case"rtlEnabled":this.callBase.apply(this,arguments),this._renderPosition(this.option("menuVisible"),!1);break;default:this.callBase(n,t,i)}},_toggleShieldVisibility:function(){this._$shield.toggleClass(r,!this.option("menuVisible"))},_handleAnimationComplete:function(){this._toggleShieldVisibility(),this._deferredAnimate&&this._deferredAnimate.resolveWith(this)},showMenu:function(){return this.toggleMenuVisibility(!0)},hideMenu:function(){return this.toggleMenuVisibility(!1)},toggleMenuVisibility:function(t){return t=t===i?!this.option("menuVisible"):t,this._deferredAnimate=n.Deferred(),this.option("menuVisible",t),this._deferredAnimate.promise()}}))}(jQuery,DevExpress),DevExpress.MOD_WIDGETS_MOBILE=!0}if(!DevExpress.MOD_WIDGETS_WEB){if(!DevExpress.MOD_WIDGETS_BASE)throw Error("Required module is not referenced: widgets-base");(function(n,t,i){var e=t.ui,r=t.utils,o=e.events,l=t.Class,u=4,a="dx-pager",s="dx-page",v="dx-pages",h="dx-selection",y="dx-separator",p="dx-page-sizes",c="dx-page-size",f=l.inherit({ctor:function(t,i){var r=this;r.index=i,r.element=n("<div />").text(t).addClass(s)},value:function(n){var i=this,t;if(r.isDefined(n))i.element.text(n);else return t=i.element.text(),r.isNumber(t)?parseInt(t):t},select:function(n){this.element.toggleClass(h,n)},render:function(n,t){t?this.element.prependTo(n):this.element.appendTo(n)}});t.registerComponent("dxPager",t.DOMComponent.inherit({NAMESPACE:e,_setDefaultOptions:function(){this.callBase(),this.option({visible:!0,pageIndex:1,maxPagesCount:10,pagesCount:10,pageSize:5,showPageSizes:!0,pageSizes:[5,10],hasKnownLastPage:!0,pageIndexChanged:n.noop,pageSizeChanged:n.noop})},_toggleVisibility:function(n){var t=this._element();t&&t.css("display",n?"":"none")},_getPages:function(n,t){var r=[],e=!this.option("hasKnownLastPage"),o,i;if(t>1||e)if(t<=this.option("maxPagesCount")){for(i=1;i<=t;i++)r.push(new f(i,i-1));e&&r.push(new f(">",i-1))}else{for(r.push(new f(1,0)),o=n?n.value()-n.index:1,i=1;i<=u;i++)r.push(new f(o+i,i));r.push(new f(t,u+1)),e&&r.push(new f(">",u+1))}return r},_getPageByValue:function(n){for(var r=this,i,t=0;t<r._pages.length;t++)if(i=r._pages[t],i.value()===n)return i},_processSelectedPage:function(t,i,e){var o=this,s=!1,h;o._pages&&(n.each(o._pages,function(n,t){i===t.value()&&(s=!0)}),s||(o.selectedPage=null)),r.isDefined(o.selectedPage)?i===e&&e>t&&o.selectedPage.index!==u+1&&(o.selectedPage.index=u+1):i>u&&i<e&&(h=e-u<i?u-(e-i)+1:2,o.selectedPage=new f(i,h))},_selectPageByValue:function(n){var u=this,f,t=u._getPageByValue(n),h=u._pages,o=h.length,s,e,c;if(r.isDefined(t)){if(s=u._pages[t.index-1],e=u._pages[t.index+1],e&&e.value()===">"&&(c=e,e=i,o--,h.pop()),u.selectedPage&&u.selectedPage.select(!1),t.select(!0),u.selectedPage=t,e&&e.value()-n>1)if(t.index!==0)for(s.value(n+1),u._pages.splice(t.index,1),u._pages.splice(t.index-1,0,t),u._pages[t.index].index=t.index,t.index=t.index-1,f=t.index-1;f>0;f--)u._pages[f].value(u._pages[f+1].value()-1);else for(f=0;f<o-1;f++)u._pages[f].value(f+1);if(s&&n-s.value()>1)if(t.index!==o-1)for(e.value(n-1),u._pages.splice(t.index,1),u._pages.splice(t.index+1,0,t),u._pages[t.index].index=t.index,t.index=t.index+1,f=t.index+1;f<o-1;f++)u._pages[f].value(u._pages[f-1].value()+1);else for(f=1;f<=o-2;f++)u._pages[o-1-f].value(u._pages[o-1].value()-f);c&&h.push(c)}},_renderPagesChooser:function(){var t=this,u,h=t.option("pageIndexChanged"),i,e=t._element(),f;if(e){if(t._clickPagesIndexAction=t._createAction(function(i){var f=i.jQueryEvent,r=n(f.target).text(),u=r===">"?t.option("pagesCount")+1:Number(r);t.option("pageIndex",u),h(u)}),r.isDefined(t.pagesChooserElement)?t.pagesChooserElement.empty():t.pagesChooserElement=n("<div />").addClass(v).on(o.addNamespace("dxclick",t.Name+"Pages"),"."+s,function(n){t._clickPagesIndexAction({jQueryEvent:n})}),t._pages.length===0){t.selectedPage=null;return}for(i=0;i<t._pages.length;i++)u=t._pages[i],u.render(t.pagesChooserElement,t.option("rtlEnabled")),t._pages[i+1]&&t._pages[i+1].value()-u.value()>1&&(f=n("<div>. . .<\/div>").addClass(y).attr("style","-webkit-user-select: none"),t.option("rtlEnabled")?f.prependTo(t.pagesChooserElement):f.appendTo(t.pagesChooserElement));r.isDefined(t.pagesChooserElement[0].parentElement)||t.pagesChooserElement.appendTo(e)}},_renderPagesSizeChooser:function(){var t=this,i,u,a=t.option("pageSize"),f=t.option("pageSizes"),v=t.option("showPageSizes"),e,s=f&&f.length,l=t._element();if(l&&(t._clickPagesSizeAction=t._createAction(function(i){var r=i.jQueryEvent;e=parseInt(n(r.target).text()),t.option("pageSize",e)}),r.isDefined(t.pagesSizeChooserElement)?t.pagesSizeChooserElement.empty():t.pagesSizeChooserElement=n("<div />").addClass(p).on(o.addNamespace("dxclick",t.Name+"PageSize"),"."+c,function(n){t._clickPagesSizeAction({jQueryEvent:n})}),v&&s)){for(i=0;i<s;i++)u=n("<div />").text(f[i]).addClass(c),a===f[i]&&u.addClass(h),t.option("rtlEnabled")?t.pagesSizeChooserElement.prepend(u):t.pagesSizeChooserElement.append(u);r.isDefined(t.pagesSizeChooserElement[0].parentElement)||t.pagesSizeChooserElement.appendTo(l)}},_render:function(){this._update(),this._element().addClass(a),this._toggleVisibility(this.option("visible")),this._renderPagesSizeChooser(),this._renderPagesChooser()},_update:function(){var n=this.option("pagesCount"),t=this.option("pageIndex");this._processSelectedPage(this.option("maxPagesCount"),t,n),this._pages=this._getPages(this.selectedPage,n),this._selectPageByValue(t)},_optionChanged:function(n,t){switch(n){case"visible":this._toggleVisibility(t);break;case"pageIndex":case"maxPagesCount":case"pagesCount":case"hasKnownLastPage":this._update(),this._renderPagesChooser();break;case"pageSize":var i=this.option("pageSizeChanged");i&&i(t);case"pageSizes":this._renderPagesSizeChooser();break;default:this._invalidate()}},getHeight:function(){return this.option("visible")?this._element().outerHeight():0}}))})(jQuery,DevExpress),function(n,t){var o=t.ui,f=o.events,ei=t.utils,a="dx-color-picker",v="dx-color-picker-input-container",y="dx-color-picker-input",p="dx-color-picker-color-result-preview",w="dx-color-picker-overlay",b="dx-color-picker-without-alpha-channel",k="dx-color-picker-container",u="dx-color-picker-container-row",d="dx-color-picker-container-cell",g="dx-color-picker-palette",s="dx-color-picker-palette-gradient",nt="dx-white",tt="dx-black",it="dx-color-picker-hue-scale",rt="dx-color-picker-hue-scale-handle",h="dx-hue-scale-wrapper",ut="dx-color-picker-controls-container",ft="dx-color-picker-buttons-container",et="dx-color-picker-apply-button",ot="dx-color-picker-cancel-button",st="dx-color-picker-color-chooser",ht="dx-color-picker-red-label",ct="dx-color-picker-green-label",lt="dx-color-picker-blue-label",at="dx-color-picker-hex-label",vt="dx-color-picker-red-input",yt="dx-color-picker-green-input",pt="dx-color-picker-blue-input",wt="dx-color-picker-hex-input",bt="dx-color-picker-alpha-scale-wrapper",kt="dx-color-picker-alpha-scale",dt="dx-color-picker-alpha-input",gt="dx-color-picker-alpha-label",ni="dx-color-picker-alpha-handle",c="dx-alpha-channel-cell",ti="dx-alpha-channel-border",ii="dx-color-picker-color-preview-container",ri="dx-color-picker-color-preview-container-inner",l="dx-color-preview",ui="dx-current-color",fi="dx-new-color",r,e;n.fn.colorPickerDrag=function(t){return this.each(function(i,r){var p=function(){var n,i,r,u,f=a-c,e=v-h;return t.enableStripHalfOfWidth?(i=0,n=a):(i=c,n=f),t.enableStripHalfOfHeight?(u=0,r=v):(u=h,r=e),{x:{min:i,max:n},y:{min:u,max:r}}},e=n(r),o=e.parent(),a=o.outerWidth(),v=o.outerHeight(),w=e.height(),b=e.width(),s=!1,h=w/2,c=b/2,u=p(),k={enableVerticalMotion:!0,enableHorizontalMotion:!0,moveByClick:!0,enableStripHalfOfWidth:!1,enableStripHalfOfHeight:!1,verticalMotionCallback:n.noop,horizontalMotionCallback:n.noop,_coordinatesUpdater:n.noop},l,y;t=n.extend(!0,k,t),l=function(n){var i=t._coordinatesUpdater(n).x,r=t._coordinatesUpdater(n).y;y(i,r)},y=function(n,i){t.enableVerticalMotion&&(i<u.y.min&&(i=u.y.min),i>u.y.max&&(i=u.y.max),e.css("top",i-h),t.verticalMotionCallback(i)),t.enableHorizontalMotion&&(n<u.x.min&&(n=u.x.min),n>u.x.max&&(n=u.x.max),e.css("right","auto"),e.css("left",n-c),t.horizontalMotionCallback(n))},t._coordinatesUpdater||(t._coordinatesUpdater=function(n){return{x:n.pageX-o.offset().left,y:n.pageY-o.offset().top}});e.on(f.addNamespace("dxpointerdown","dxColorPicker"),function(){s=!0});n("*").on(f.addNamespace("dxpointerup","dxColorPicker"),function(){s=!1});n("body").on(f.addNamespace("dxpointermove","dxColorPicker"),function(n){s&&(n.preventDefault(),n.stopPropagation(),l(n))});if(t.moveByClick)o.on(f.addNamespace("dxpointerdown","dxColorPicker"),function(n){s=!0,l(n)})})},r={createElement:function(i,r,u){var e=document.createElement(i),f=n(e);return t.utils.isArray(r)&&(r=r.join(" ")),r&&f.addClass(r),u?f.appendTo(u):f},createHtmlRows:function(n){for(var i=[],t=0;t<n;t++)i.push(this.createElement("div",u));return i},createHtmlCellInsideRow:function(n,i,r){var f,o=i.find("."+u),e;return t.utils.isNumber(n)?f=o.eq(n):t.utils.isString(n)&&(f=o[n]()),e=this.createElement("div",d,f),r&&e.addClass(r),e},createInputWithLabel:function(n,t,i){return this.createElement("label",t).text(n+":").append(this.createElement("input",i))}},e={makeCSSLinearGradient:function(n){var t=this._currentColor,i=[t.r,t.g,t.b].join(","),r=t.toHex().replace("#",""),u=function(n,t){var u=this.option("rtlEnabled"),i="rgba("+n+", "+(u?"1":"0")+")",r="rgba("+n+", "+(u?"0":"1")+")",f="'#"+(u?"00":"")+t+"'",e="'#"+(u?"":"00")+t+"'";return["background-image: -webkit-linear-gradient(180deg, "+i+", "+r+")","background-image: -moz-linear-gradient(-90deg, "+i+", "+r+")","background-image: -ms-linear-gradient(-90deg, "+i+", "+r+")","background-image: -o-linear-gradient(-90deg, "+i+", "+r+")","background-image: linear-gradient(-90deg, "+i+", "+r+")","filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr="+f+", endColorstr="+e+")","-ms-filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr="+f+", endColorstr="+e+")"].join(";")};n.attr("style",u.call(this,i,r))}},t.registerComponent("dxColorPicker",o.dxDropDownEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({_dragCoordinatesUpdater:null,_standAlone:!1,value:"#000000",editAlphaChannel:!1,applyButtonText:Globalize.localize("OK"),cancelButtonText:Globalize.localize("Cancel")})},_setCurrentColor:function(n){var i=new t.Color(n);i.colorIsInvalid?this.option("value",this._currentColor.baseColor):(this._currentColor=new t.Color(n),this._alpha=this._currentColor.a)},_initColorAndOpacity:function(){this._setCurrentColor(this.option("value"))},_init:function(){this.callBase(),this._initColorAndOpacity()},_render:function(){this.callBase(),this._element().addClass(a),this.option("_standAlone")&&(this._element().addClass("dx-standalone-colorpicker"),this._element().find(".dx-dropdowneditor-button").trigger("dxclick"))},_optionChanged:function(n,t){switch(n){case"value":this._input().val(t),this._setCurrentColor(t),this._makeTransparentBackground(this._$colorResultPreview),this.callBase.apply(this,arguments);break;case"applyButtonText":this._$applyButton.dxButton("instance").option("text",t);break;case"cancelButtonText":this._$cancelButton.dxButton("instance").option("text",t);break;case"editAlphaChannel":this._$colorPickerContainer&&(this._renderHtmlRows(),this._toggleContainerClass(),this._renderAlphaChannelElements());break;default:this.callBase.apply(this,arguments)}},_handleValueChangeEvent:function(n){this._dropDownVisible()&&(this._setCurrentColor(this._input().val()),this._refreshDropDown()),this.callBase(n)},_makeRgba:function(){return"rgba("+[this._currentColor.r,this._currentColor.g,this._currentColor.b,this._alpha].join(", ")+")"},_makeTransparentBackground:function(n){t.browser.msie&&t.browser.version==="8.0"?n.css({background:this._currentColor.toHex(),filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity="+this._alpha*100+")"}):n.css("backgroundColor",this._makeRgba())},_renderInput:function(){this._$colorPickerInputContainer=n("<div/>").addClass(v),this._$colorResultPreview=r.createElement("div",p,this._$colorPickerInputContainer),this._makeTransparentBackground(this._$colorResultPreview),this.callBase(this._$colorPickerInputContainer),this._input().addClass(y)},_renderValue:function(){this.callBase(this.option("editAlphaChannel")?this._makeRgba():this.option("value"))},_closeOutsideDropDownHandler:function(n){this.callBase(n,!0)},_hideOnBlur:function(){return!1},_createDropDown:function(){var n=this;this.callBase({height:"",width:"",contentReadyAction:function(){n._createColorPickerContainer()}})},_showDropDown:function(){this._dropDownVisible()||(this.callBase(),this._refreshDropDown())},_hideDropDown:function(){this._dropDownVisible()&&(this._initColorAndOpacity(),this.callBase())},_calculateRowsCount:function(){var n=this.option("editAlphaChannel")?3:2,t=this._$colorPickerContainer.find("."+u);return this.option("editAlphaChannel")&&t.length===2&&(n=1),this.option("editAlphaChannel")||t.length!==3||(n=0),n},_renderHtmlRows:function(){var i=this._$colorPickerContainer.find("."+u),n=this._calculateRowsCount(i),t;n?(t=r.createHtmlRows(n),n===1?this._$colorPickerContainer.find("."+u).eq(0).after(t):this._$colorPickerContainer.append(t)):i.eq(1).remove()},_toggleContainerClass:function(){this._$colorPickerContainer.toggleClass(b,!this.option("editAlphaChannel"))},_renderAlphaChannelElements:function(){this.option("editAlphaChannel")&&(this._renderAlphaChannelScale(),this._renderAlphaChannelInput())},_createColorPickerContainer:function(){var n=this._dropDown.content();this.option("_standAlone")?(this._dropDown.hide(),n=this._element()):this._dropDown.content().addClass(w),this._$colorPickerContainer=r.createElement("div",k,n),this._renderHtmlRows(),this._toggleContainerClass(),this._createPalette(),this._renderHueScale(),this._renderControlsContainer(),this._renderControls(),this._renderAlphaChannelElements(),this._renderButtons()},_createPalette:function(){var n=r.createHtmlCellInsideRow("first",this._$colorPickerContainer,"dx-palette-cell"),t=r.createElement("div",[s,nt]),i=r.createElement("div",[s,tt]);this._$palette=r.createElement("div",g,n).css("backgroundColor",this._currentColor.getPureColor().toHex()),this._createColorChooser(),this._$palette.append([t,i])},_updateColor:function(n){var i,r;n?r=this._validateHex("#"+this._$hexInput.val()):(i=this._validateRgb(),this._$alphaChannelInput?(i.push(this._$alphaChannelInput.val()),r="rgba("+i.join(", ")+")"):r="rgb("+i.join(", ")+")"),this._currentColor=new t.Color(r),this._refreshDropDown()},_refreshDropDown:function(){this._placeHueMarker(),this._placeColorChooser(),this._updateColorParamsAndColorPreview(),this._$palette.css("backgroundColor",this._currentColor.getPureColor().toHex()),this._$alphaChannelHandle&&(this._updateColorTransparence(this._currentColor.a),this._placeAlphaChannelHandle())},_validateHex:function(n){return this._currentColor.isValidHex(n)?n:this._currentColor.toHex()},_validateRgb:function(){var n=Number(this._$rgbInputs[0].val()),t=Number(this._$rgbInputs[1].val()),i=Number(this._$rgbInputs[2].val());return this._currentColor.isValidRGB(n,t,i)||(n=this._currentColor.r,t=this._currentColor.g,i=this._currentColor.b),[n,t,i]},_placeHueMarker:function(){var t=this._$hueScale.parent().outerHeight(),i=this._$hueScaleHandle.height(),n=t-t*this._currentColor.hsv.h/360-i/2;t<n+i&&(n=t-i),n<0&&(n=0),this._$hueScaleHandle.css("top",Math.round(n))},_updateColorSaturation:function(n){var t=this._currentColor.hsv.h,i=Math.round(n*100/this._$palette.width()),n=this._currentColor.hsv.v;this._updateColorFromHsv(t,i,n)},_updateColorValue:function(n){var t=this._currentColor.hsv.h,i=this._currentColor.hsv.s,n=100-Math.round(n*100/this._$palette.height());this._updateColorFromHsv(t,i,n)},_updateColorHue:function(n){var t=360-Math.round((n+this._$hueScaleHandle.outerHeight()/2)*360/this._$hueScale.height()),i=this._currentColor.hsv.s,n=this._currentColor.hsv.v;t=t<0?0:t,this._updateColorFromHsv(t,i,n),this._$palette.css("backgroundColor",this._currentColor.getPureColor().toHex())},_updateColorTransparence:function(n){this._$alphaChannelInput.val(n),this._alpha=n,this._makeTransparentBackground(this._$newColor)},_calculateColorTransparenceByScaleWidth:function(n){var r=this._$alphaChannelHandle.width()/2,u=this._$alphaChannelScale.width(),i=this.option("rtlEnabled"),t=n/this._$alphaChannelScale.width();t=i?t:1-t,r===n?t=i?0:1:n>=u-r?t=i?1:0:t<1&&(t=t.toFixed(2)),this._updateColorTransparence(t)},_updateColorFromHsv:function(n,i,r){this._currentColor=new t.Color("hsv("+[n,i,r].join(",")+")"),this._updateColorParamsAndColorPreview()},_updateColorParamsAndColorPreview:function(){this._$hexInput.val(this._currentColor.toHex().replace("#","")),this._$rgbInputs[0].val(this._currentColor.r),this._$rgbInputs[1].val(this._currentColor.g),this._$rgbInputs[2].val(this._currentColor.b),this._makeTransparentBackground(this._$newColor),this.option("editAlphaChannel")&&e.makeCSSLinearGradient.call(this,this._$alphaChannelScale)},_createColorChooser:function(){this._$colorChooser=r.createElement("div",st,this._$palette).colorPickerDrag({verticalMotionCallback:n.proxy(this._updateColorValue,this),horizontalMotionCallback:n.proxy(this._updateColorSaturation,this),enableStripHalfOfWidth:!0,enableStripHalfOfHeight:!0,_coordinatesUpdater:this.option("_dragCoordinatesUpdater")}),this._placeColorChooser()},_placeColorChooser:function(){var n=this._$palette.height(),t={x:Math.round(this._$palette.width()*this._currentColor.hsv.s/100-this._$colorChooser.width()/2),y:Math.round(n-n*this._currentColor.hsv.v/100-this._$colorChooser.height()/2)};this._$colorChooser.css({left:t.x,top:t.y})},_renderHueScale:function(){var n=r.createHtmlCellInsideRow("first",this._$colorPickerContainer,"dx-hue-scale-cell");this._$hueScale=r.createElement("div",it,n),this._$hueScale.wrap('<div class="'+h+'"/>'),this._renderHueScaleHandle()},_renderHueScaleHandle:function(){this._$hueScaleHandle=r.createElement("div",rt,this._$hueScale.closest("."+h)).colorPickerDrag({enableHorizontalMotion:!1,verticalMotionCallback:n.proxy(this._updateColorHue,this),_coordinatesUpdater:this.option("_dragCoordinatesUpdater")}),this._placeHueMarker()},_renderControlsContainer:function(){var n=r.createHtmlCellInsideRow("first",this._$colorPickerContainer);this._$controlsContainer=r.createElement("div",ut,n)},_renderControls:function(){this._renderColorsPreview(),this._renderRgbInputs(),this._renderHexInput()},_renderButtons:function(){var n=r.createHtmlCellInsideRow("last",this._$colorPickerContainer,"dx-buttons-cell");this._$buttonContainer=r.createElement("div",ft,n),this._renderApplyButton(),this._renderCancelButton()},_renderApplyButton:function(){this._$applyButton=r.createElement("div",et,this._$buttonContainer).dxButton({text:this.option("applyButtonText"),clickAction:n.proxy(this._applyColor,this)})},_applyColor:function(){var n=this.option("editAlphaChannel")?this._makeRgba():this._currentColor.toHex();this._input().val(n),this._makeTransparentBackground(this._$colorResultPreview),this._makeTransparentBackground(this._$currentColor),this.option("value",n),this._hideDropDown()},_cancelChanges:function(){this.option("_standAlone")?(this._initColorAndOpacity(),this._refreshDropDown()):this._hideDropDown()},_renderCancelButton:function(){this._$cancelButton=r.createElement("div",ot,this._$buttonContainer).dxButton({text:this.option("cancelButtonText"),clickAction:n.proxy(this._cancelChanges,this)})},_renderRgbInputs:function(){this._$rgbInputsWithLabels=[r.createInputWithLabel("R",ht,vt),r.createInputWithLabel("G",ct,yt),r.createInputWithLabel("B",lt,pt)],this._$rgbInputs=[this._$rgbInputsWithLabels[0].find("input").val(this._currentColor.r).on("change",n.proxy(this._updateColor,this,!1)),this._$rgbInputsWithLabels[1].find("input").val(this._currentColor.g).on("change",n.proxy(this._updateColor,this,!1)),this._$rgbInputsWithLabels[2].find("input").val(this._currentColor.b).on("change",n.proxy(this._updateColor,this,!1))],this._$controlsContainer.append(this._$rgbInputsWithLabels)},_renderHexInput:function(){var t=r.createInputWithLabel("#",at,wt).appendTo(this._$controlsContainer);this._$hexInput=t.find("input").val(this._currentColor.toHex().replace("#","")).on("change",n.proxy(this._updateColor,this,!0))},_renderColorsPreview:function(){var n=r.createElement("div",ii,this._$controlsContainer),t=r.createElement("div",ri,n);this._$currentColor=r.createElement("div",[l,ui]),this._$newColor=r.createElement("div",[l,fi]),this._makeTransparentBackground(this._$currentColor),this._makeTransparentBackground(this._$newColor),t.append([this._$currentColor,this._$newColor])},_renderAlphaChannelScale:function(){var n=r.createHtmlCellInsideRow(1,this._$colorPickerContainer,c),t=r.createElement("div",ti,n),i=r.createElement("div",bt,t);this._$alphaChannelScale=r.createElement("div",kt,i),e.makeCSSLinearGradient.call(this,this._$alphaChannelScale),this._renderAlphaChannelHandle(n)},_renderAlphaChannelInput:function(){var t=this,i=r.createHtmlCellInsideRow(1,this._$colorPickerContainer),u=r.createInputWithLabel("Alpha",gt,dt).appendTo(i);this._$alphaChannelInput=u.find("input").val(this._alpha).on("change",function(){var i=Number(n(this).val());i=t._currentColor.isValidAlpha(i)?i:t._alpha,t._updateColorTransparence(i),t._placeAlphaChannelHandle()})},_renderAlphaChannelHandle:function(t){this._$alphaChannelHandle=r.createElement("div",ni,t).colorPickerDrag({enableVerticalMotion:!1,horizontalMotionCallback:n.proxy(this._calculateColorTransparenceByScaleWidth,this),_coordinatesUpdater:this.option("_dragCoordinatesUpdater")}),this._placeAlphaChannelHandle()},_placeAlphaChannelHandle:function(){var t=this._$alphaChannelScale.closest("."+c).outerWidth(),i=this._$alphaChannelHandle.width(),n=t-t*this._alpha-i/2;n<0&&(n=0),t<n+i&&(n=t-i),this._$alphaChannelHandle.css(this.option("rtlEnabled")?"right":"left",n)}}))}(jQuery,DevExpress),function(n,t,i){var u=t.ui,f=t.utils,e=u.events,o="dx-menu",r=o+"-item",a="dx-state-hover",v=r+"-text",s=r+"-popout",y=s+"-container",p=r+"-disabled",h=r+"-selected",c=r+"-wrapper",w=o+"-rtl",l="dx-icon",b=u.CollectionContainerWidget.inherit({_itemRenderDefault:function(t,r,u){var e,o;f.isDefined(t)&&(t.visible===i||t.visible||u.hide(),t.disabled&&u.addClass(p),o=!!this.option("rtlEnabled"),o&&u.addClass(w),e=n("<div>").addClass("dx-menu-item-content").appendTo(u),this._renderImage(t,e),this._renderCaption(t,e),this._renderPopout(t,e))},_renderImage:function(t,i){var r,u;t.icon?r=n("<span>").addClass(l+"-"+t.icon).appendTo(i):t.iconSrc&&(r=n("<img>").attr("src",t.iconSrc).appendTo(i)),r&&r.addClass(l)},_renderPopout:function(t,i){var u,r;this._hasChildren(t)&&(r=n("<span>").addClass(y).appendTo(i),u=n("<div>").addClass(s).appendTo(r))},_renderCaption:function(t,i){var r;r=n("<span>").addClass(v),n.isPlainObject(t)?t.text&&r.text(t.text):r.html(String(t)),i.append(r)},_renderItemHotTrack:function(n,t){var i,r;(r=n.data(this._itemDataKey()),r==this.option("selectedItem")&&t)||!this.option("hoverStateEnabled")||(i=n.parents("."+c).eq(0),i.length&&i.toggleClass(a,t))},_itemDataKey:function(){return"dxMenuItemDataKey"},_itemClass:function(){return r},_itemWrapperSelector:function(){return"."+c},_attachItemHoverEvents:function(){var t=this._itemWrapperSelector(),i,r,u=this._createAction(n.proxy(function(n){this._handleItemMouseEnter(n.jQueryEvent)},this)),f=this._createAction(n.proxy(function(n){this._handleItemMouseLeave(n.jQueryEvent)},this));i=e.addNamespace("mouseenter",this.NAME),r=e.addNamespace("mouseleave",this.NAME);this._itemContainer().off(i,t).on(i,t,n.proxy(function(n){u({jQueryEvent:n})},this));this._itemContainer().off(r,t).on(r,t,n.proxy(function(n){f({jQueryEvent:n})},this))},_handleItemMouseMove:function(n){var t=this,i=t._getItemElementByEventArgs(n);t._itemX||(t._itemX=0),t._itemY||(t._itemY=0),(Math.abs(event.pageX-t._itemX)>4||Math.abs(event.pageY-t._itemY)>4)&&(t._itemX=event.pageX,t._itemY=event.pageY,t._handleItemMouseMoveCore(i))},_hasChildren:function(n){return n.items&&n.items.length>0},_addCustomCssClass:function(t){var i=n.trim(this.option("cssClass"));i&&t.addClass(i)},_init:function(){var n=this.option("items");(this.callBase(),this.selectedItem=this.option("selectedItem"),this.enableSelection=this.option("allowSelection"),f.isDefined(this.selectedItem)&&this.selectedItem!=null)||(this.selectedItem=this._getLastSelectedItem(n),this.selectedItem&&this._setOptionInternal("selectedItem",this.selectedItem))},_setOptionInternal:function(n,t){this._optionChangedInternalFlag=!0,this.option(n,t),this._optionChangedInternalFlag=!1},_getLastSelectedItem:function(t){var u=this,i=null,r;return n.each(t,function(n,t){t&&(t.selected&&t.selectable&&(i=t),f.isArray(t.items)&&(r=u._getLastSelectedItem(t.items),r&&(i=r)))}),i},_updateSelectedItemOnClick:function(n,t){var r=this.$selectedItemWrapper?this.$selectedItemWrapper.children(".dx-menu-item").eq(0).data(this._itemDataKey()):null,i={selectedItem:t,previousSelectedItem:r,itemElement:n,itemData:t},u=this._createActionByOption("itemSelectAction",i);this.option("allowSelectOnClick")&&t.selectable&&(this.$selectedItemWrapper&&(this.$selectedItemWrapper.removeClass(h),this.$selectedItemWrapper.children(".dx-menu-item").eq(0).data(this._itemDataKey())&&(this.$selectedItemWrapper.children(".dx-menu-item").eq(0).data(this._itemDataKey()).selected=!1)),this._setOptionInternal("selectedItem",null),this.$selectedItemWrapper=n.parents(".dx-menu-item-wrapper").eq(0),this.$selectedItemWrapper.addClass(h),this._setOptionInternal("selectedItem",t),t.selected=!0,u(i))},_handleItemClick:function(t){var i=this._createAction(n.proxy(this._updateOverlayVisibilityOnClick,this));this._handleItemJQueryEvent(t,"itemClickAction",{},{afterExecute:n.proxy(i,this)})},_getItemElementByEventArgs:function(t){return n(t.currentTarget).children(this._itemSelector()).first()}});u.dxMenuBase=b}(jQuery,DevExpress),function(n,t,i){var o=t.ui,l=t.utils,r=o.events,s=t.fx,g="dxContextMenu",f="dx-menu",e=f+"-item",nt=e+"-popout",a=e+"-selected",u="dx-state-hover",v="dx-menu-phone-overlay",y=f+"-items-container",h=e+"-wrapper",p="dx-submenu",w="dxSubMenuLevel",c="dx-context-menu",b="dx-widget",k=f+"-separator",d=c+"-content-delimiter";t.registerComponent("dxContextMenu",o.dxMenuBase.inherit({_deprecatedOptions:{direction:{since:"14.1",message:"Use the 'submenuDirection' option instead."},allowSelectItem:{since:"14.1",message:"Use the 'allowSelection' option instead."}},_optionAliases:{direction:"submenuDirection",allowSelectItem:"allowSelection"},_setDefaultOptions:function(){this.callBase(),this.option({items:[],showSubmenuMode:"onHover",cssClass:"",invokeOnlyFromCode:!1,position:{at:"top left",my:"top left"},hoverStateEnabled:!0,allowSelection:!0,allowSelectItem:!0,allowSelectOnClick:!0,selectedItem:null,itemSelectAction:null,animation:{show:{type:"fade",from:0,to:1,duration:100},hide:{type:"fade",from:1,to:0,duration:100}},showingAction:null,shownAction:null,hidingAction:null,hiddenAction:null,positioningAction:null,submenuDirection:"auto",direction:"auto",visible:!1,target:window})},_optionsByReference:function(){return n.extend(this.callBase(),{animation:!0,position:!0,selectedItem:!0})},_itemContainer:function(){return this._overlay.content()},_clean:function(){this._overlay&&(this._overlay._element().remove(),this._overlay=null),this._target.off(r.addNamespace("dxhold",this.NAME)),this._target.off(r.addNamespace("contextmenu",this.NAME))},_optionChanged:function(n,t){if(!this._optionChangedInternalFlag)switch(n){case"visible":this._toggleVisibility(t);break;case"disable":break;case"invokeOnlyFromCode":break;case"items":this._overlay.option("visible")&&this._overlay.toggle(!1),this.selectedItem=this._getLastSelectedItem(t),this._setOptionInternal("selectedItem",this.selectedItem),this.callBase.apply(this,arguments);break;case"selectedItem":this.selectedItem=t;break;default:this._overlay.option("visible")&&this._overlay.toggle(!1),this.callBase.apply(this,arguments)}},_toggleVisibility:function(n){n?this.show():this.hide()},_render:function(){this._target=n(this.option("target")),this.option("position"),this.callBase()},_renderContentImpl:function(){this._renderContextMenuOverlay(),this._renderAdditionGraphicsElements(),this._attachItemHoverEvents(),this._attachShowContextMenuEvents(),this._addCustomCssClass(this._element()),this.callBase()},_renderDimensions:function(){},_renderContextMenuOverlay:function(){var i,t,r=this._getOverlayOptions();i=n("<div>").appendTo(this._$element),i.dxOverlay(r),this._overlay=i.dxOverlay("instance"),t=this._overlay.content(),t.addClass(c).addClass(b),this._addCustomCssClass(t),this._addPlatformDependentClass(t),this.option("visible")&&this.show()},_addPlatformDependentClass:function(n){t.devices.current().phone&&n.addClass(v)},_renderAdditionGraphicsElements:function(){this.option("showAdditionalElements")&&(this.$contentDelimiter=n("<div>").appendTo(this._itemContainer()),this.$contentDelimiter.addClass(d),this.$contentDelimiter.css("position","absolute").css("display","none").css("z-index","2000"))},_attachShowContextMenuEvents:function(){var t=this,i=r.addNamespace("dxhold",this.NAME),u=r.addNamespace("contextmenu",this.NAME),f=this._createAction(n.proxy(function(n){t.option("invokeOnlyFromCode")||n.jQueryEvent.originalEvent&&n.jQueryEvent.originalEvent.pointerType!=="mouse"&&t.show(n.jQueryEvent)},this)),e=this._createAction(n.proxy(function(n){t.option("invokeOnlyFromCode")||t.show(n.jQueryEvent)&&(n.jQueryEvent.preventDefault(),n.jQueryEvent.originalEvent&&(n.jQueryEvent.originalEvent.returnValue=!1))},this));this._target.off(i).on(i,n.proxy(function(n){f({jQueryEvent:n})},this)).off(u).on(u,n.proxy(function(n){e({jQueryEvent:n})},this))},_renderItems:function(n){var t=1;this._renderSubMenu(n,this._itemContainer(),t)},_renderSubMenu:function(t,i,r){var u=this,e,f,o,s;t.length&&(e=n("<div>").appendTo(i),e.addClass(p),e.data(w,r),e.css("display",r===1?"block":"none"),f=n("<ul>").appendTo(e),f.addClass(y),r===1&&(u.option("width")&&f.css("min-width",u.option("width")),u.option("height")&&f.css("min-height",u.option("height"))),n.each(t,function(t,i){u._renderSeparator(i,t,f),o=n("<li>").appendTo(f),o.addClass(h),s=u._renderItem(t,i,o),u.option("allowSelection")&&i===u.option("selectedItem")&&(o.addClass(a),u.$selectedItemWrapper=o),u._hasChildren(i)&&u._renderSubMenu(i.items,s,++r)}))},_renderSeparator:function(t,i,r){var u;t.beginGroup&&i>0&&(u=n("<li>").appendTo(r),u.addClass(k))},_showAdditionalGraphicsElements:function(){var r=this._itemContainer().children(".dx-submenu").eq(0),i=this.option("position").of,u=this.option("position").at,f=this.option("position").my,n={of:r};this.$contentDelimiter&&(this.$contentDelimiter.css("display","block"),u==="left bottom"&&f==="left top"||u==="right bottom"&&f==="right top"?(this.$contentDelimiter.width(i.width()<r.width()?i.width()-2:r.width()-2),this._itemContainer().offset().top>i.offset().top?(this.$contentDelimiter.height(2),Math.round(this._itemContainer().offset().left)<Math.round(i.offset().left)?(n.offset="-1 -1",n.at="right top",n.my="right top"):(n.offset="1 -1",n.at="left top",n.my="left top")):(this.$contentDelimiter.height(3),Math.round(this._itemContainer().offset().left)<Math.round(i.offset().left)?(n.offset="-1 2",n.at="right bottom",n.my="right bottom"):(n.offset="1 2",n.at="left bottom",n.my="left bottom"))):(this.$contentDelimiter.width(2),this.$contentDelimiter.height(i.height()<r.height()?i.height()-2:r.height()-2),this._itemContainer().offset().top<i.offset().top?(n.offset=u==="right top"?"-1 -1":"1 -1",n.at=u==="right top"?"left bottom":"right bottom",n.my=n.at):(n.offset=u==="right top"?"-1 1":"1 1",n.at=f,n.my=f)),t.position(this.$contentDelimiter,n))},_getOverlayOptions:function(){var t=this,i=this.option("animation");return{animation:i,closeOnOutsideClick:n.proxy(t._closeOnOutsideClickHandler,t),closeOnTargetScroll:!0,deferRendering:!1,disabled:this.option("disabled"),position:{at:this.option("position").at,my:this.option("position").my,of:this._target},shading:!1,showTitle:!1,height:"auto",width:"auto",rtlEnabled:this.option("rtlEnabled"),showingAction:n.proxy(t._overlayShowingActionHandler,t),shownAction:n.proxy(t._overlayShownActionHandler,t),hidingAction:n.proxy(t._overlayHidingActionHandler,t),hiddenAction:n.proxy(t._overlayHiddenActionHandler,t),positionedAction:n.proxy(t._overlayPositionedActionHandler,t)}},_removeHoverClass:function(){var t=this,i=t._overlay._$container.find(".dx-state-hover");n.each(i,function(t,i){n(i).removeClass(u)})},_searchActiveItem:function(t){return n(t).closest(".dx-menu-item").get(0)},_closeOnOutsideClickHandler:function(t){var f=this,h=f._overlay._$container.find(".dx-state-hover"),r=i,o=!1,c=n.extend([],f._shownSubMenus),s,e;return t.target===document?(this._removeHoverClass(),!0):(r=this._searchActiveItem(t.target),r!==i?(n.each(h,function(t,i){r.parentElement.parentElement===i.parentElement&&(o=!0),o&&r.parentElement!==i&&n(i).removeClass(u)}),this.option("showSubmenuMode")==="onclick"&&(s=n(r).find(".dx-submenu"),s.length>0&&n.each(c,function(t,i){e=f._searchActiveItem(i.context).parentElement,e.parentElement===n(r)[0].parentElement.parentElement&&e!==n(r)[0].parentElement&&f._hideChildrenSubMenus(i)})),!1):(this._removeHoverClass(),!0))},_overlayShowingActionHandler:function(n){var t=this._createActionByOption("showingAction",{});t(n)},_overlayShownActionHandler:function(n){var t=this._createActionByOption("shownAction",{});t(n)},_overlayHidingActionHandler:function(n){var t=this._createActionByOption("hidingAction",{});t(n),this._hideAllShownSubMenus()},_overlayHiddenActionHandler:function(n){var t=this._createActionByOption("hiddenAction",{});t(n),this._setOptionInternal("visible",!1)},_overlayPositionedActionHandler:function(){this._showAdditionalGraphicsElements()},_handleItemMouseEnter:function(t){var i=this,c=r.addNamespace("mousemove",i.NAME),f=i._getItemElementByEventArgs(t),l=f.children(".dx-submenu"),a=i.option("showSubmenuMode"),y=n.extend([],i._shownSubMenus),o,e,p=f.parents("."+h).eq(0),v,s;if((n.each(y,function(r,f){o=i._getItemElementByEventArgs(t),e=n(f.context),s=!1,f.context.parentElement===o[0].parentElement.parentElement&&f.context!==o[0].parentElement&&(v=i._overlay._$container.find(".dx-state-hover"),n.each(v,function(t,i){i.parentElement===e.context.parentElement&&(s=!0),s&&i.parentElement!==e.context.parentElement&&n(i).removeClass(u)}),i._hideChildrenSubMenus(f),e.removeClass(u))}),!f.data(this._itemDataKey()).disabled)&&(i._renderItemHotTrack(f,!0),this.option("showSubmenuMode")!=="onclick"&&l.length>0&&(i._showSubMenuGroup(l,f),p.addClass(u),a&&a.toLowerCase()==="onhoverstay")))f.off(c).on(c,function(n){i._handleItemMouseMove(n)})},_handleItemMouseLeave:function(n){var i=this,t=i._getItemElementByEventArgs(n),r=t.children(".dx-submenu");t.data(this._itemDataKey()).disabled||r.is(":visible")||i._renderItemHotTrack(t,!1)},_handleItemMouseMoveCore:function(n){var t=n.children(".dx-submenu");this._showSubMenuGroup(t,n)},_hideSubMenuGroup:function(n){var t=this;this._isSubMenuVisible(n)&&t._hideSubMenuCore(n)},_showSubMenuGroup:function(n,t,i){var r=this;(i||!this._isSubMenuVisible(n))&&r._showSubMenuCore(n,r._getSubMenuPosition(t))},_getSubMenuPosition:function(n){var f,i,r,t,u;r=!!this.option("rtlEnabled"),i=this.option("submenuDirection").toLowerCase(),u=n.parent(".dx-menu-item-wrapper"),t={collision:"flip",of:u,offset:{h:0,v:-1}};switch(i){case"left":t.at="left top",t.my="right top";break;case"right":t.at="right top",t.my="left top";break;default:r?(t.at="left top",t.my="right top"):(t.at="right top",t.my="left top")}return t},_isSubMenuVisible:function(n){return n.css("display")!=="none"},_animate:function(n,t){s.animate(n,t)},_stopAnimate:function(n){s.stop(n,!0)},_showSubMenuCore:function(t,i){var r=this.option("animation")?this.option("animation").show:{};this._overlay&&this._overlay.option("visible")&&(l.isDefined(this._shownSubMenus)||(this._shownSubMenus=[]),n.inArray(t,this._shownSubMenus)&&this._shownSubMenus.push(t),t.css("display","block"),DevExpress.position(t,i),this._stopAnimate(t),this._animate(t,r))},_hideSubMenuCore:function(t){var i=n.inArray(t,this._shownSubMenus),r=this.option("animation")?this.option("animation").hide:{};i>=0&&this._shownSubMenus.splice(i,1),this._stopAnimate(t),this._animate(t,r.hide),t.css("display","none")},_updateOverlayVisibilityOnClick:function(t){var i,r,u;if(t.args.length&&t.args[0]){if(t.args[0].jQueryEvent.stopPropagation(),i=t.args[0].itemElement,r=i.children(".dx-submenu"),i.context===r.context&&r.is(":visible"))return;if(!i.data(this._itemDataKey())||i.data(this._itemDataKey()).disabled)return;this._updateSelectedItemOnClick(i,t.args[0].itemData),r.length===0?(u=n(i.parents(".dx-submenu")[0]),this._hideChildrenSubMenus(u),!t.canceled&&this._overlay&&this._overlay.option("visible")&&this.option("visible",!1)):(this._shownSubMenus&&this._shownSubMenus.length>0&&(this._shownSubMenus[0].is(r)||this._shownSubMenus[0].has(r).length===1?this._hideChildrenSubMenus(r):this._hideAllShownSubMenus()),this._showSubMenuGroup(r,i))}},_hideChildrenSubMenus:function(t){var i=this,r=n.extend([],i._shownSubMenus);n.each(r,function(n,r){(t.is(r)||t.has(r).length)&&i._hideSubMenuCore(r)})},_hideAllShownSubMenus:function(){var t=this,i=n.extend([],t._shownSubMenus);n.each(i,function(n,i){t._hideSubMenuCore(i)})},show:function(n){var t=this.option("position"),i,r;return n&&n.preventDefault&&(t={at:"top left",my:"top left",of:n}),t.of||(t.of=this._target),i={position:t,jQueryEvent:n},r=this._createActionByOption("positioningAction",i),r(i),!i.canceled&&this._overlay&&(t&&(this._overlay.option("position",null),this._overlay.option("position",t)),this._overlay.toggle(!0),this._setOptionInternal("visible",!0)),this.option("visible")},hide:function(){this._overlay&&(this._overlay.toggle(!1),this._setOptionInternal("visible",!1))}}))}(jQuery,DevExpress),function(n,t,i){var o=t.ui,c=t.utils,u=o.events,b=t.fx,k="<div />",d="<ul />",g="dxMenu",nt=50,r="dx-menu",l=r+"-vertical",a=r+"-horizontal",f=r+"-item",v=f+"-selected",y=r+"-items-container",s=f+"-with-submenu",p=f+"-wrapper",h="dx-context-menu",w=r+"-separator",e=h+"-container-border";t.registerComponent("dxMenu",o.dxMenuBase.inherit({_deprecatedOptions:{firstSubMenuDirection:{since:"14.1",message:"Use the 'submenuDirection' option instead."},showPopupMode:{since:"14.1",message:"Use the 'showFirstSubmenuMode' option instead."},allowSelectItem:{since:"14.1",message:"Use the 'allowSelection' option instead."}},_optionAliases:{firstSubMenuDirection:"submenuDirection",showPopupMode:"showFirstSubmenuMode",allowSelectItem:"allowSelection"},_setDefaultOptions:function(){this.callBase(),this.option({orientation:"horizontal",submenuDirection:"auto",firstSubMenuDirection:"auto",showFirstSubmenuMode:"onclick",showPopupMode:"onclick",showSubmenuMode:"auto",items:[],hoverStateEnabled:!0,allowSelection:!0,allowSelectItem:!0,allowSelectOnClick:!0,selectedItem:null,cssClass:"",animation:{show:{type:"fade",from:0,to:1,duration:100},hide:{type:"fade",from:1,to:0,duration:100}},submenuShowingAction:null,submenuShownAction:null,submenuHidingAction:null,submenuHiddenAction:null,itemSelectAction:null})},_optionsByReference:function(){return n.extend(this.callBase(),{animation:!0,selectedItem:!0})},_render:function(){this.callBase(),this._element().addClass(r),this._addCustomCssClass(this._element()),this._attachItemHoverEvents()},_renderItems:function(t){var i=this,e,u,r,f,o,s,h;t.length&&(e=i.option("orientation")==="vertical",u=n("<div>").appendTo(i._$element),u.addClass(e?l:a),r=n("<ul>").appendTo(u),r.addClass(y),r.css("min-height",this._getValueHeight(u)),n.each(t,function(t,u){i._renderSeparator(u,t,r),f=n("<li>").appendTo(r),f.addClass(p),o=i._renderItem(t,u,f),i._renderSelectedItem(u,f),i._renderChildrenItems(u,o)}))},_renderSeparator:function(t,i,r){var u;t.beginGroup&&i>0&&(u=n("<li>").appendTo(r),u.addClass(w))},_renderSelectedItem:function(n,t){this.option("allowSelection")&&n===this.option("selectedItem")&&(t.addClass(v),this.$selectedItemWrapper=t)},_renderChildrenItems:function(n,t){this._hasChildren(n)&&(this._createPopupMenu(n.items,t,this.option("selectedItem")).appendTo(t),this._renderBorderElement(t))},_renderBorderElement:function(t){var i=n("<div>").appendTo(t);i.addClass(e),i.css("display","none")},_getValueHeight:function(t){var i=n("<div>").html("Jj").css({width:"auto",position:"fixed",top:"-3000px",left:"-3000px"}).appendTo(t),r=i.height();return i.remove(),r},_handleItemMouseEnter:function(t){var i=this,h=300,e,r,f,o,s;if((r=i._getItemElementByEventArgs(t),!r.data(this._itemDataKey()).disabled)&&(i._renderItemHotTrack(r,!0),f=i._getPopupMenuByRootElement(r),o=i.option("showFirstSubmenuMode").toLowerCase(),o!=="onclick"&&f))if(clearTimeout(i._hidePopupMenuTimer),clearTimeout(i._showPopupMenuTimer),s=i.option("showFirstSubmenuMode")!=="onhover",s&&i.visiblePopupMenu==f&&!f._overlay.option("visible")){e=u.addNamespace("mousemove",i.NAME);r.off(e).on(e,n.proxy(i._handleItemMouseMove,i));i._showPopupMenuTimer=setTimeout(function(){i._showPopupMenu(f,r)},h)}else i._showPopupMenu(f,r)},_handleItemMouseLeave:function(n){var t=this,e=50,o=300,i,r,u,f;(u=t.option("showFirstSubmenuMode").toLowerCase(),f=t.option("showFirstSubmenuMode")!=="onhover"?o:e,i=t._getItemElementByEventArgs(n),i.data(this._itemDataKey()).disabled)||(t._renderItemHotTrack(i,!1),u!=="onclick"&&(clearTimeout(t._showPopupMenuTimer),clearTimeout(t._hidePopupMenuTimer),t._hidePopupMenuTimer=setTimeout(function(){r=t._getPopupMenuByRootElement(i),t._hidePopupMenu(r),t.visiblePopupMenu==r&&(t.visiblePopupMenu=null)},f)))},_handleItemMouseMoveCore:function(n){var t=this,r=300,i;t._showPopupMenuTimer&&(clearTimeout(t._hidePopupMenuTimer),clearTimeout(t._showPopupMenuTimer),i=t._getPopupMenuByRootElement(n),t._showPopupMenuTimer=setTimeout(function(){t._showPopupMenu(i,n)},r))},_updateOverlayVisibilityOnClick:function(n){var r=this,t,i;if(n.args.length&&n.args[0]){if(n.args[0].jQueryEvent.stopPropagation(),t=n.args[0].itemElement,t.data(this._itemDataKey()).disabled)return;i=r._getPopupMenuByRootElement(t),this._updateSelectedItemOnClick(t,n.args[0].itemData),i&&(i._overlay.option("visible")?r.option("showFirstSubmenuMode")==="onclick"&&r._hidePopupMenu(i):r._showPopupMenu(i,t))}},_createPopupMenu:function(t,i,r){var o=this,f,e=n("<div>"),a=n("<div>"),s,c,l;c=u.addNamespace("mouseenter",o.NAME+"_popupMenu"),l=u.addNamespace("mouseleave",o.NAME+"_popupMenu"),e.dxContextMenu({_templates:this.option("_templates"),target:a,items:t,position:o._getPopupMenuPosition(i),showAdditionalElements:!0,selectedItem:r,cssClass:this.option("cssClass"),animation:this.option("animation"),rtlEnabled:this.option("rtlEnabled"),disabled:this.option("disabled"),showSubmenuMode:this.option("showSubmenuMode")==="auto"?this.option("showFirstSubmenuMode"):this.option("showSubmenuMode"),itemSelectAction:n.proxy(this._nestedItemSelectActionHandler,this),itemClickAction:n.proxy(this._nestedItemClickActionHandler,this),showingAction:n.proxy(this._contextMenuShowingActionHandler,this,i,f),shownAction:n.proxy(this._contextMenuShownActionHandler,this,i,f),hidingAction:n.proxy(this._contextMenuHidingActionHandler,this,i,f),hiddenAction:n.proxy(this._contextMenuHiddenActionHandler,this,i,f)}),e.addClass(h),f=e.dxContextMenu("instance"),s=f._overlay.content();s.off(c).on(c,null,n.proxy(this._handlePopupMenuMouseEnter,this,i));s.off(l).on(l,null,n.proxy(this._handlePopupMenuMouseLeave,this,i));return e},_getPopupMenuPosition:function(n){var i,u,r,t;r=!!this.option("rtlEnabled"),i=this.option("orientation").toLowerCase()=="vertical",u=this.option("submenuDirection").toLowerCase(),t={collision:"flip",of:n};switch(u){case"leftOrTop":t.at=i?"left top":"left top",t.my=i?"right top":"left bottom";break;case"rightOrBottom":t.at=i?"right top":"left bottom",t.my=i?"left top":"left top";break;case"auto":default:i?(t.at=r?"left top":"right top",t.my=r?"right top":"left top"):(t.at=r?"right bottom":"left bottom",t.my=r?"right top":"left top")}return t},_nestedItemSelectActionHandler:function(n){this._updateSelectedItemOnClick(n.itemElement,n.itemData)},_nestedItemClickActionHandler:function(n){var t=this._createActionByOption("itemClickAction",{});t(n)},_contextMenuShowingActionHandler:function(n,r){var f,u,o;f=this._createActionByOption("submenuShowingAction",{}),f({rootItem:n,popupMenu:r}),u=n.children("."+e),this._options.width!==i&&(this._options.rtlEnabled?u.width(this._$element.width()-n.position().right):u.width(this._$element.width()-n.position().left)),u.css("display","block"),t.fx.stop(u,!0),o=this.option("animation")?this.option("animation").show:{},t.fx.animate(u,o),n.addClass(s)},_contextMenuShownActionHandler:function(n,t){var i=this._createActionByOption("submenuShownAction",{});i({rootItem:n,popupMenu:t})},_contextMenuHidingActionHandler:function(n,i){var u,r,f;u=this._createActionByOption("submenuHidingAction",{}),u({rootItem:n,popupMenu:i}),r=n.children("."+e),f=this.option("animation")?this.option("animation").hide:{},t.fx.animate(r,f),r.css("display","none"),n.removeClass(s)},_contextMenuHiddenActionHandler:function(n,t){var i=this._createActionByOption("submenuHiddenAction",{});i({rootItem:n,popupMenu:t})},_handlePopupMenuMouseEnter:function(n){this._hoveredPopupMenuContainer=n},_handlePopupMenuMouseLeave:function(n){var t=this,i,r=50;setTimeout(function(){t._hoveredPopupMenuContainer&&t._hoveredPopupMenuContainer.is(t._hoveredRootItem)||(i=t._getPopupMenuByRootElement(n),i&&i.hide()),t._hoveredPopupMenuContainer=null},r)},_showPopupMenu:function(n,t){c.isDefined(this.visiblePopupMenu)&&this.visiblePopupMenu!==n&&this.visiblePopupMenu.hide(),this._renderItemHotTrack(t,!1),n.show(),this.visiblePopupMenu=n,this._hoveredRootItem=t},_hidePopupMenu:function(n){this._hoveredRootItem&&this._hoveredRootItem.is(this._hoveredPopupMenuContainer)||n&&n.hide(),this._hoveredRootItem=null},_optionChanged:function(n,t){if(!this._optionChangedInternalFlag){this.visiblePopupMenu&&this.visiblePopupMenu.hide();switch(n){case"items":this.selectedItem=this._getLastSelectedItem(t),this._setOptionInternal("selectedItem",this.selectedItem),this.callBase.apply(this,arguments);break;case"selectedItem":this.selectedItem=t;break;default:this.callBase.apply(this,arguments)}}},_getPopupMenuByRootElement:function(n){var i=null,t;return n&&(t=n.children(".dx-context-menu"),t.length>0&&(i=t.dxContextMenu("instance"))),i},_containNode:function(t,i){var f=this,u=!1,r=!1;return n.each(t,function(n,t){t==i&&(r=!0),t.items&&(u=f._containNode(t.items,i),u?r=u:r)}),r}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,s=t.utils,h=".dx-row",c=t.Class.inherit({ctor:function(t){var i=this;i.component=t,i.disposing=t.disposing,i._actions={},n.each(this.callbackNames()||[],function(t,r){var u=i.callbackFlags(r);i[this]=n.Callbacks(u)})},callbackNames:function(){},callbackFlags:function(){},publicMethods:function(){},init:function(){},option:function(){return this.component.option.apply(this.component,arguments)},optionChanged:function(){},getController:function(n){return this.component._controllers[n]},getView:function(n){return this.component._views[n]},createAction:function(t,i){var r;if(s.isFunction(t))return r=this.component._createAction(n.proxy(t,this),i),function(n){r({jQueryEvent:n})};this._actions[t]=this.option(t)?this.component._createActionByOption(t,i):null},executeAction:function(n,t){var i=this._actions[n];return i&&i(t)},dispose:function(){var t=this;n.each(t.callbackNames()||[],function(){t[this].empty()})}}),i=c,u=i,f=u.inherit({_element:function(){return this._$element},_renderCore:function(){},_afterRender:function(){},_parentElement:function(){return this._$parent},ctor:function(t){this.callBase(t),this.renderCompleted=n.Callbacks(),this.resizeCompleted=n.Callbacks()},isVisible:function(){return!0},getTemplate:function(n){return this.component._getTemplate(n)},render:function(t,i){var r=this._$element,u=this.isVisible();this._$parent=t,r||(r=this._$element=n("<div />").appendTo(t)),r.toggle(u),u&&(this._renderCore(i),this._afterRender(t),this.renderCompleted.fire())},resize:function(){this.isResizing=!0,this.resizeCompleted.fire(),this.isResizing=!1},focus:function(){this._element().focus()}}),e=function(t,r){var u={},e={},o;t._controllers={},t._views={},n.each(r,function(){var r=this.controllers,t=this.name,o=this.views;r&&n.each(r,function(n,r){if(u[n])throw'Module "'+t+'". Controller "'+n+'" is already registered';else if(!(r&&r.subclassOf&&r.subclassOf(i))){r.subclassOf(i);throw'Module "'+t+'". Controller "'+n+'" must be inheritor of DevExpress.ui.dataGrid.Controller';}u[n]=r}),o&&n.each(o,function(n,i){if(e[n])throw'Module "'+t+'". View "'+n+'" is already registered';else if(!(i&&i.subclassOf&&i.subclassOf(f)))throw'Module "'+t+'". View "'+n+'" must be inheritor of DevExpress.ui.dataGrid.View';e[n]=i})}),n.each(r,function(){var t=this.extenders;t&&(t.controllers&&n.each(t.controllers,function(n,t){u[n]&&(u[n]=u[n].inherit(t))}),t.views&&n.each(t.views,function(n,t){e[n]&&(e[n]=e[n].inherit(t))}))}),o=function(t,i,r){var u=r.publicMethods();u&&n.each(u,function(n,u){if(r[u])if(t[u])throw'Public method "'+u+'" is already registered';else t[u]=function(){return r[u].apply(r,arguments)};else throw'Public method "'+i+"."+u+'" is not exists';})},n.each(u,function(n,i){var r=new i(t);r.name=n,o(t,n,r),t._controllers[n]=r}),n.each(e,function(n,i){var r=new i(t);r.name=n,o(t,n,r),t._views[n]=r})},o=r.dataGrid={__internals:{},modules:[],View:f,ViewController:u,Controller:i,registerModule:function(n,t){for(var r=this.modules,i=0;i<r.length;i++)if(r[i].name===n)return;t.name=n,r.push(t)},unregisterModule:function(t){this.modules=n.grep(this.modules,function(n){return n.name!==t})},processModules:e};t.registerComponent("dxDataGrid",r.Widget.inherit(function(){return{_activeStateUnit:h,_deprecatedOptions:{"editing.texts.recoverRow":{since:"14.1",message:"Use the 'undeleteRow' option instead."}},_optionAliases:{"editing.texts.recoverRow":"editing.texts.undeleteRow"},_setDefaultOptions:function(){var t=this;t.callBase(),n.each(o.modules,function(){n.isFunction(this.defaultOptions)&&t.option(this.defaultOptions())})},_defaultOptionsRules:function(){return this.callBase().slice(0).concat([{device:[{platform:"ios"},{platform:"ios7"}],options:{showRowLines:!0}},{device:function(){return DevExpress.browser.webkit},options:{loadPanel:{animation:{show:{easing:"cubic-bezier(1, 0, 1, 0)",duration:500,from:{opacity:0},to:{opacity:1}}}}}},{device:function(){return t.devices.real().ios},options:{loadingTimeout:30}}])},_init:function(){var t=this;t.callBase(),e(t,o.modules),n.each(t._controllers,function(){this.init()}),n.each(t._views,function(){this.init()}),t._gridView=t._views.gridView},_clean:n.noop,_optionChanged:function(t,i,r){var u=this;u.callBase(t,i,r),n.each(u._controllers,function(){this.optionChanged(t,i,r)}),n.each(u._views,function(){this.optionChanged(t,i,r)})},_dimensionChanged:function(){this.resize()},_visibilityChanged:function(){this.resize()},_renderContentImpl:function(){var n=this;n._gridView.render(n._element())},_renderContent:function(){this._renderContentImpl()},_getTemplate:function(t){var u,r,i;return this.option("_templates")[t]||(i=n(t),i.length===1&&(r=this._templateProvider.getTemplateClass(),this.option("_templates")[t]=new r(i))),this.callBase(t)},_dispose:function(){var t=this;t.callBase(),n.each(t._controllers,function(){this.dispose()}),n.each(t._views,function(){this.dispose()})},beginUpdate:function(){var t=this;t.callBase(),t._controllers&&n.each(t._controllers,function(){this.beginUpdate&&this.beginUpdate()}),t._views&&n.each(t._views,function(){this.beginUpdate&&this.beginUpdate()})},endUpdate:function(){var t=this;t._controllers&&n.each(t._controllers,function(){this.endUpdate&&this.endUpdate()}),t._views&&n.each(t._views,function(){this.endUpdate&&this.endUpdate()}),t.callBase()},getController:function(n){return this._controllers[n]},getView:function(n){return this._views[n]},resize:function(){this._gridView.resize()}}}()))}(jQuery,DevExpress),function(n,t){var i=t.data.utils.normalizeSortingInfo;t.ui.dataGrid.GroupingHelperBase=t.Class.inherit(function(){var r=function(n,i){for(var r=0;r<n.length;r++)if(t.data.utils.keysEqual(null,n[r].key,i))return n[r]},u=function(n,t){for(var i=0;i<n.length;i++)if(n[i].offset>t)break;return i},f=function(n){for(var t,r,i=0;i<n.length;i++)t=n[i],t.data&&t.data.offset!==t.offset&&(n.splice(i,1),t.offset=t.data.offset,r=u(n,t.offset),n.splice(r,0,t),r>i&&i--)},e=function(n,t,i){for(var r=0;r<n.length;r++)t+1>=i?n[r].children=[]:e(n[r].children,t+1,i)};return{ctor:function(n){this._dataSource=n,this.reset()},reset:function(){this._groupsInfo=[],this._totalCountCorrection=0},totalItemsCount:function(){var n=this,t=n._dataSource.totalCount();return t>0?t+n._totalCountCorrection:0},itemsCount:function(){return this._itemsCount||0},mergeLoadedData:function(n,t){var i=this.mergeLoadedDataCore(n,t);return this._itemsCount=this.calculateItemsCount(i),i},updateTotalItemsCount:function(n){this._totalCountCorrection=n||0},_isGroupItemCountable:function(n){return!this._isVirtualPaging()||!n.isContinuation},_isVirtualPaging:function(){var t=this._dataSource,n=t&&t._options,i=n&&n.scrolling&&n.scrolling.mode;return i==="virtual"||i==="infinite"},updateItemsCount:function(n,t){function i(n,t,r){var u,f=0;if(t)if(r)for(u=0;u<t.length;u++)n._isGroupItemCountable(t[u])&&f++,f+=i(n,t[u].items,r-1);else f=t.length;return f}this._itemsCount=i(this,n,t)},foreachGroups:function(t,i){function r(t,i,u,e){function c(n,t,i,r){var u=t&&n(t,i);return r.push(u),u}for(var h,s=[],o=0;o<t.length;o++){if((e.push(t[o].data),!u&&c(i,t[o].data,e,s)===!1)||(!t[o].data||t[o].data.isExpanded)&&(h=r(t[o].children,i,u,e),s.push(h),h===!1)||u&&c(i,t[o].data,e,s)===!1)return!1;e.pop()}return n.when.apply(n,s).always(function(){f(t)})}var u=this;return r(u._groupsInfo,t,i,[])},findGroupInfo:function(n){for(var f=this,e,t,u=f._groupsInfo,i=0;u&&i<n.length;i++)t=r(u,n[i]),u=t&&t.children;return t&&t.data},addGroupInfo:function(n){for(var h=this,s,t,o=n.path,e=h._groupsInfo,i=0;i<o.length;i++)t=r(e,o[i]),t||(t={key:o[i],offset:n.offset,children:[]},s=u(e,n.offset),e.splice(s,0,t)),i===o.length-1&&(t.data=n,f(e)),e=t.children},allowCollapseAll:function(){return!0},collapseAll:function(n){return this.allowCollapseAll()?this._collapseExpandAll(n,!1):(t.utils.logger.error("The collapseAll method cannot be called when using a remote data source"),!1)},expandAll:function(n){return this._collapseExpandAll(n,!0)},_collapseExpandAll:function(n,t){var e=this,o=e._dataSource,f=o.group(),u=i(f||[]),r;if(u.length){for(r=0;r<u.length;r++)n===undefined||n===r?u[r].isExpanded=t:f&&f[r]&&(u[r].isExpanded=f[r].isExpanded);o.group(u),e.foreachGroups(function(i,r){(n===undefined||n===r.length-1)&&(i.isExpanded=t)}),e.updateItemsCount()}return!0},processLoadOptions:function(n){this._group=n.group},refresh:function(n){var r=this,t,f=i(r._group||[]),o=i(n.group||[]),u=Math.min(f.length,o.length);for(r._group=n.group,t=0;t<u;t++)if(f[t].selector!==o[t].selector){u=t;break}u?e(r._groupsInfo,0,u):r.reset()}}}())}(jQuery,DevExpress),function(n,t){var f=t.utils,i=t.data.utils.normalizeSortingInfo,u=t.data.utils.keysEqual,r=function(t,i){var r=n.Deferred(),u=n.extend({skip:0,take:0,requireTotalCount:!0},i);return t.load(u).done(function(u,f){f&&isFinite(f.totalCount)?r.resolve(f.totalCount):t.totalCount(i).done(n.proxy(r.resolve,r)).fail(n.proxy(r.reject,r))}).fail(n.proxy(r.reject,r)),r};t.ui.dataGrid.GroupingHelper=t.ui.dataGrid.GroupingHelperBase.inherit(function(){var f=function(n,t){return n.foreachGroups(function(n){if(!n.isExpanded)return t(n)})},o=function(n,t){var i=0,r=t||0;return t&&(f(n,function(n){if(n.offset-i>=t)return!1;i+=n.count-1}),r+=i),r},s=function(n,t,i,r,u,f){for(var e,h,o=0,c=!1,a,l=0;l<t.length;l++)e=t[l],e.items!==undefined?(i.push(e.key),a=n.findGroupInfo(i),a&&!a.isExpanded?(e.items=null,r+=a.count,f--,f<0&&o++,u&&(c=!0)):e.items&&(h=s(n,e.items,i,r,u,f),u&&(h.offset-r>1?e.isContinuation=!0:c=!0),r=h.offset,f=h.take,f<0&&(e.items.length?e.isContinuationOnNextPage=!0:o++)),i.pop()):(u&&(c=!0),r++,f--,f<0&&o++),u=!1;return c&&t.splice(0,1),o&&t.splice(-o,o),{offset:r,take:f}},c=function(n,t){var i;if(n.length!==t.length)return!1;for(i=0;i<n.length;i++)if(!u(null,n[i],t[i]))return!1;return!0},e=function(n,t,i,r,u){for(var o,h=n._groupsInfo,f,s=0;s<t.length;s++)o=t[s],o.items!==undefined?(i.push(o.key),u&&c(u.path,i)&&(u.offset=r),f=n.findGroupInfo(i),f&&!f.isExpanded?(f.offset=r,r+=f.count):r=e(n,o.items,i,r,u),i.pop()):r++;return r},l=function(n){n.group&&(n.sort=i(n.group||[]).concat(i(n.sort||[])),delete n.group)},h=function(n,t){for(var f=i(t.group||[]),u=[],r=0;r<n.length;r++)u.push([f[r].selector,"=",n[r]]);return t.filter&&u.push(t.filter),u},a=function(n,t){for(var o=i(t.group||[]),r,e,u=[],f=0;f<n.length;f++){for(e=[],r=0;r<=f;r++)e.push([o[r].selector,f===r?o[r].desc?">":"<":"=",n[r]]);u.length&&u.push("or"),u.push(e)}return t.filter&&u.push(t.filter),u};return{processLoadOptions:function(t){var s=this,e,i,r=[],h=[],a=!1,v,y,c=t.group,u=[];return s.callBase(t),l(t),i=n.extend({},t),i.skip=o(s,t.skip),i.skip&&i.take&&c&&(i.skip--,i.take++,a=!0),i.take&&c&&(v=i.take,i.take++),y=i.skip||0,i.take?(f(s,function(t){if(t.offset>=i.skip+i.take)return!1;t.offset>=i.skip&&t.count&&(e=t.offset-i.skip,e>0&&(u.push(n.extend({},i,{skip:i.skip,take:e})),i.take-=e,h.push(r),r=[]),i.skip=t.offset+t.count,i.take--,r.push(t.path))}),(!u.length||i.take>0)&&u.push(i),r.length&&h.push(r)):u.push(i),{loads:u,data:{collapsedPathsByLoads:h,offset:y,skipFirstItem:a,take:v,group:c}}},updateTotalItemsCount:function(){var n=0;f(this,function(t){t.count&&(n-=t.count-1)}),this.callBase(n)},changeGroupExpand:function(t){var u=this,i=u._dataSource,c=i.basePageIndex&&i.basePageIndex()||i.pageIndex(),f=o(u,c*i.pageSize()),s;return s=r(i.store(),{filter:h(t,{filter:i.filter(),group:i.group()})}),n.when(s).done(function(n){var r;n=parseInt(n.length?n[0]:n),r=u.findGroupInfo(t),r?(e(u,i.items(),[],f),r.isExpanded=!r.isExpanded,r.count=n):(r={offset:-1,count:n,path:t,isExpanded:!1},e(u,i.items(),[],f,r),r.offset>=0&&u.addGroupInfo(r)),u.updateTotalItemsCount()}).fail(n.proxy(i.loadError.fire,i.loadError))},mergeLoadedData:function(n,r){function b(n){for(var r={},t,i=0;i<n.length;i++)t?(t.items.push({}),t=t.items[0]):t=r,t.key=n[i],t.items=[];return r}function c(n,t){var i=0;if(t)for(n.length&&t.length&&u(null,n[n.length-1].key,t[0].key)&&(c(n[n.length-1].items,t[0].items),i=1);i<t.length;)n.push(t[i]),i++}for(var l=this,e=[],h,a,v=r.collapsedPathsByLoads,o,y=i(r.group||[]),p=y.length,w=Math.max(n.length,v.length),f=0;f<w;f++){if(o=v[f],o&&o.length)for(h=0;h<o.length;h++)c(e,[b(o[h])]);n[f]&&(a=t.data.query(n[f]),t.data.utils.multiLevelGroup(a,y).enumerate().done(function(n){c(e,n)}))}return s(l,e,[],r.offset,r.skipFirstItem,r.take),l.updateItemsCount(e,p),e},allowCollapseAll:function(){return!1},refresh:function(t){var i=this,u=i._dataSource.store();return i.callBase(t),f(i,function(f){var e=r(u,{filter:h(f.path,t)}),o=r(u,{filter:a(f.path,t)});return n.when(o,e).done(function(n,t){n=parseInt(n.length?n[0]:n),t=parseInt(t.length?t[0]:t),f.offset=n,f.count!==t&&(f.count=t,i.updateTotalItemsCount())}).fail(n.proxy(i._dataSource.loadError.fire,i._dataSource.loadError))})}}}())}(jQuery,DevExpress),function(n,t){var r=t.utils,i=t.data.utils.normalizeSortingInfo,u=t.data.utils.keysEqual;t.ui.dataGrid.GroupingHelperWithNativeGrouping=t.ui.dataGrid.GroupingHelperBase.inherit(function(){var t=function(n,t){return n.foreachGroups(function(n,i){if(n.isExpanded)return t(n,i)},!0)},f=function(n,t,i,r){var e,u,o;if(r)for(e=0;e<t.length;e++)u=t[e],u.items!==undefined&&(i.push(u.key),o=n.findGroupInfo(i),o&&o.isExpanded?f(n,u.items,i,r-1):u.items=null,i.pop())},e=function(n,t){for(var u=!1,f=i(t||[]).length,r=0;r<f;r++)n._isGroupExpanded(r)&&(u=!0);return u},o=function(n,t,i,r){s(n,t,0,i,[],r)},s=function(n,t,i,r,u,f){var e,o,h;if(!(i>=r))for(o=0;o<t.length;o++)e=t[o],e&&(u.push(e.key),h=n.findGroupInfo(u),h?(h.count=e.items.length,h.offset=f+o):n.addGroupInfo({isExpanded:n._isGroupExpanded(i),path:u.slice(0),offset:f+o,count:e.items.length}),s(n,e.items,i+1,r,u,0),u.pop())},r=function(n,t){return n&&n.length&&n[t]&&!!n[t].isExpanded},h=function(n,t,i){for(var o=0,f,e=i,r=0;r<n.length;r++)f=n[r].offset+1,r>0&&(f+=n[r-1].childrenTotalCount,t&&(f+=u(e,t,f,r-1)*r)),e+=f;return e},u=function(n,t,i,r){if(r=r||0,t>1&&i>0){var u=n-Math.floor(n/t)*t||t;return u+=i-r-2,u<0&&(u+=t),Math.floor(u/(t-r-1))}return 0};return{updateTotalItemsCount:function(){var n=0,i=this._dataSource.pageSize(),r=this._isVirtualPaging();t(this,function(n){n.childrenTotalCount=0}),t(this,function(t,f){var o=h(f,r?0:i,n),e=t.count+t.childrenTotalCount,s;r||(e+=u(o,i,e,f.length-1)),f[f.length-2]?f[f.length-2].childrenTotalCount+=e:n+=e}),this.callBase(n)},_isGroupExpanded:function(n){var t=this._dataSource.group();return r(t,n)},processLoadOptions:function(r,f){var s=this,w=this._dataSource,y=s._isVirtualPaging(),c=w.pageSize(),b=i(r.group||[]),p=[],l=[],a=0,v=0,o=n.extend({},r);return s.callBase(r),e(s,b)&&!f?(delete o.skip,delete o.take):o.take&&(t(this,function(n){n.childrenTotalCount=0,n.skipChildrenTotalCount=0}),t(s,function(n,t){var r,e,b=0,k=0,f=h(t,y?0:c,v),d=0,s=0,i=n.count+n.childrenTotalCount,w=i;f<=o.skip+o.take&&i&&(r=o.skip-f,e=o.take,y||(d=u(f,c,i,t.length-1),i+=d*t.length,w+=d,c&&r>=0&&(b=t.length,k=t.length-1,s=Math.floor(r/c))),r>=0?(f+i>o.skip&&p.unshift(r-s*b-n.skipChildrenTotalCount),f+i>=o.skip+e&&l.unshift(e-b-n.childrenTotalCount+n.skipChildrenTotalCount)):f+i>=o.skip+e&&l.unshift(e+r-n.childrenTotalCount)),f<=o.skip&&(t[t.length-2]?t[t.length-2].skipChildrenTotalCount+=Math.min(w,r+1-s*k):a+=Math.min(w,r+1)),f<=o.skip+e&&(i=Math.min(w,r+e-(s+1)*k),t[t.length-2]?t[t.length-2].childrenTotalCount+=i:v+=i)}),o.skip-=a,o.take-=v-a),{loads:[o],data:{skip:o.skip,take:o.take,skips:p,takes:l,storeLoadOptions:r}}},changeGroupExpand:function(t){var r=this,i=r.findGroupInfo(t);return i?(i.isExpanded=!i.isExpanded,r.updateTotalItemsCount(),n.Deferred().resolve()):n.Deferred().reject()},mergeLoadedData:function(n,t){var c=this,s=n[0],y=i(t.storeLoadOptions.group||[]),l=y.length,v,a,u,h,r;for(o(c,s,l,t.skip||0),c.updateTotalItemsCount(),e(c,y)&&(t=c.processLoadOptions(t.storeLoadOptions,!0).data,t.skip&&(s=s.slice(t.skip)),t.take&&(s=s.slice(0,t.take))),v=t.skips,a=t.takes,r=s,u=0;r&&u<l;u++)h=r[0],r=h&&h.items,r&&v[u]!==undefined&&(h.isContinuation=!0,r=r.slice(v[u]),h.items=r);for(r=s,u=0;r&&u<l;u++)h=r[r.length-1],r=h&&h.items,r&&a[u]!==undefined&&r.length>a[u]&&(h.isContinuationOnNextPage=!0,r=r.slice(0,a[u]),h.items=r);return f(c,s,[],l),c.updateItemsCount(s,l),s},refresh:function(t){for(var u=this,s=i(u._group||[]),e=i(t.group||[]),f=0;f<s.length;f++)if(r(u._group,f)!==r(t.group,f)){u.reset();return}return u.callBase(t),u.foreachGroups(function(n){n.count=0}),e.length?u._dataSource.store().load(t).done(function(n){o(u,n,e.length,0)}).fail(n.proxy(u._dataSource.loadError.fire,u._dataSource.loadError)):void 0}}}())}(jQuery,DevExpress),function(n,t){var i=t.ui.dataGrid,r=t.utils;i.ScrollingDataSourceWrapper=t.Class.inherit(function(){var e=function(n){var t=n._options.scrolling;return t&&t.preloadEnabled?2:1},t=function(n){return n._options.scrolling&&n._options.scrolling.mode==="virtual"},r=function(n){return n._options.scrolling&&n._options.scrolling.mode==="infinite"},u=function(n){return n._cache[0]?n._cache[0].pageIndex:-1},f=function(n){var i=u(n),r=n._cache.length;t(n)&&(i<0||n._viewportItemIndex>=0&&(i*n.pageSize()>n._viewportItemIndex||i*n.pageSize()+n.itemsCount()<n._viewportItemIndex+n._viewportSize)&&n._dataSource.isLoading()?n._isLoading||(n._isLoading=!0,n.loadingChanged.fire(!0)):n._isLoading&&(n._isLoading=!1,n.loadingChanged.fire(!1)))};return{ctor:function(e){var o=this,s=new i.DataSource(e,o),h,c;o._dataSource=s,o.loadError=s.loadError,o.changed=n.Callbacks(),o.loadingChanged=n.Callbacks(),o._isLoading=!0,o._pageIndex=s.pageIndex(),o._lastPageIndex=o._pageIndex,o._viewportSize=0,o._viewportItemIndex=-1,o._userPageSize=e.pageSize,o._items=[],o._isLoaded=!0,s.loadingChanged.add(function(n){t(o)||(o._isLoading=n,o.loadingChanged.fire(n))}),h=function(n,t,i){var u=n._dataSource,r=u.items();t==="append"?n._items.push.apply(n._items,r):t==="prepend"?n._items.unshift.apply(n._items,r):n._items=r,f(n),n._lastPageIndex=n.pageIndex(),n._isDelayChanged=i,i||n.changed.fire(t&&{changeType:t,items:r})},c=function(n){n._isDelayChanged&&(n._isDelayChanged=!1,n.changed.fire())},s.changed.add(function(){var n,e=o._cache.length,i,f;t(o)?(n=u(o),n>=0&&(n+o._cache.length===s.pageIndex()||n-1===s.pageIndex()||(o._cache=[])),f={pageIndex:s.pageIndex(),itemsCount:s.itemsCount()},c(o),n===s.pageIndex()+1?(i="prepend",o._cache.unshift(f)):(i="append",o._cache.push(f)),h(o,o._cache.length>1?i:undefined,e===0),o.load().done(function(){c(o)})):h(o,r(o)&&s.pageIndex()!==0?"append":undefined)}),n.each(s,function(t,i){!o[t]&&n.isFunction(i)&&(o[t]=function(){return this._dataSource[t].apply(this._dataSource,arguments)})}),o._cache=[],o._options=e},items:function(){return this._items},itemsCount:function(){var i=0;return t(this)?n.each(this._cache,function(){i+=this.itemsCount}):i=this._dataSource.itemsCount(),i},virtualItemsCount:function(){var n=this,i,f=0,o,r,e;if(t(n))return i=u(n),i<0&&(i=0),r=i*n.pageSize(),f=n._cache.length*n.pageSize(),e=Math.max(0,n.totalItemsCount()-f-r),{begin:r,end:e}},setViewportItemIndex:function(n){var i=this,f=i.pageSize(),v=i._dataSource,e=i.pagesCount(),c=t(i),l=r(i),s=i.totalItemsCount(),o,a=i._viewportItemIndex<0,h,u;i._viewportItemIndex=n,f&&(c||l)&&(i._viewportSize&&n+i._viewportSize>=s?i.hasKnownLastPage()?(u=e-1,o=s%f,u>0&&o>0&&o<f/2&&u--):i.pageIndex()<e&&(u=e):(u=Math.floor(n/f),h=e-1,u=Math.max(u,0),u=Math.min(u,h)),(i.pageIndex()!==u||a)&&(i.pageIndex(u),i.load()))},setViewportSize:function(n){var i=this,u;i._viewportSize!==n&&(i._viewportSize=n,(t(i)||r(i))&&!i._userPageSize&&(u=Math.ceil(n/5)*10,u!==i.pageSize()&&(i.pageSize(u),i.reload())))},pageIndex:function(n){return t(this)||r(this)?(n!==undefined&&(this._pageIndex=n),this._pageIndex):this._dataSource.pageIndex(n)},basePageIndex:function(){var n=u(this);return n>0?n:0},load:function(){var i=u(this),o=-1,s=this._dataSource,h,c=function(n,t){var i=n._dataSource;if(t===n.pageIndex()||!i.isLoading()&&t<i.pagesCount()||!i.hasKnownLastPage()&&t===i.pagesCount())return i.pageIndex(t),i.load()};return t(this)?((i<0||!this._cache[this._pageIndex-i])&&(o=this._pageIndex),i>=0&&o<0&&this._viewportItemIndex>=0&&i+this._cache.length<=this._pageIndex+e(this)&&(o=i+this._cache.length),o>=0&&(h=c(this,o)),f(this)):r(this)?s.isLoaded()&&this.pageIndex()!==s.pagesCount()||(s.pageIndex(this.pageIndex()),h=s.load()):h=s.load(),h||this._lastPageIndex===this.pageIndex()||this.changed.fire({changeType:"pageIndex"}),h||n.Deferred().resolve()},isLoading:function(){return this._isLoading},isLoaded:function(){return this._dataSource.isLoaded()&&this._isLoaded},changeGroupExpand:function(n){this._cache=[],f(this),this._dataSource.changeGroupExpand(n)},reload:function(){var n=this,t=n._dataSource;return n._cache=[],n._isLoaded=!1,f(n),n._isLoaded=!0,r(n)?(n.pageIndex(0),t.pageIndex(0)):t.pageIndex(n.pageIndex()),t.reload()}}}())}(jQuery,DevExpress),function(n,t){var i=t.ui.dataGrid;i.DataSource=t.data.DataSource.inherit(function(){var r=function(n){return!!n._storeLoadOptions.group};return{ctor:function(n,r){var u=this;u.callBase(n),u._pageIndex=n.pageIndex||0,u._asyncLoadEnabled=!!n.asyncLoadEnabled,u._loadingTimeout=n.loadingTimeout,n.useNativeGrouping==="auto"&&(n.useNativeGrouping=u.store()instanceof t.data.ArrayStore),u._groupingHelper=n.useNativeGrouping?new i.GroupingHelperWithNativeGrouping(r||u):new i.GroupingHelper(r||u),u._hasLastPage=!1,u._currentTotalCount=0,u._options=n,u.map(u._mapFunc)},map:function(n){var r=this,i,u=r.store();if(n)if(u instanceof t.data.ArrayStore){for(i=0;i<u._array.length;i++)u._array[i]=n(u._array[i]);delete r._mapFunc}else r._mapFunc=n;else return r._mapFunc},pageSize:function(n){if(n===undefined)return this._paginate?this._pageSize:0;this._pageSize=n||20},totalCount:function(){return parseInt(this._currentTotalCount||this._totalCount)},totalItemsCount:function(){var n=this;return r(n)&&n._storeLoadOptions.requireTotalCount?n._groupingHelper.totalItemsCount():n.totalCount()},itemsCount:function(){var n=this;return r(n)?n._groupingHelper.itemsCount():n.items().length},collapseAll:function(n){return this._groupingHelper.collapseAll(n)},expandAll:function(n){return this._groupingHelper.expandAll(n)},pagesCount:function(){var n=this,t=n.totalItemsCount(),i=n.pageSize();return i&&t>0?Math.max(1,Math.ceil(t/i)):1},_reloadCore:function(){var n=this,t,i=n._userData;for(t in i)i.hasOwnProperty(t)&&delete i[t];return n._isLastPage=!n._paginate,n._currentTotalCount=0,n._totalCount=-1,n._hasLastPage=n._isLastPage,n._isLoaded=!1,n.load()},reload:function(){var t=this,i=n.Deferred(),r;return t.isLoading()?(r=function(){t.loadingChanged.remove(r),setTimeout(function(){t.reload().done(i.resolve).fail(i.reject)})},t.loadingChanged.add(r)):n.when(t._groupingHelper.refresh(t._createStoreLoadOptions())).always(function(){t._reloadCore().done(i.resolve).fail(i.reject)}),i},hasKnownLastPage:function(){return this._hasLastPage||this._totalCount>=0},changeGroupExpand:function(n){var t=this,i=t._groupingHelper;r(t)?(t._changeLoadingCount(1),i.changeGroupExpand(n).always(function(){t._changeLoadingCount(-1)}).done(function(){t.load()})):t.load()},_createLoadQueue:function(){return t.createQueue(!0)},_scheduleChangedCallbacks:function(n){var t=this,i=t.pageIndex();t._lastLoadDeferred=n,n.done(function(){var r,n=t.itemsCount();t._isLastPage=!n||!t._paginate||t._pageSize&&n<t._pageSize,t.isLastPage()&&(t._hasLastPage=!0),t._totalCount>=0?t._pageIndex>=t.pagesCount()&&(t.pageIndex(t.pagesCount()-1),t.load()):(r=t.pageIndex()*t.pageSize()+n,t._currentTotalCount=Math.max(t._currentTotalCount,r),n===0&&t.pageIndex()>=t.pagesCount()&&(t.pageIndex(t.pagesCount()-1),t.load())),i!==t.pageIndex()||t.isLoading()||t.changed.fire()})},_loadFromStore:function(t,i){var u=this,f=function(){var f,o,s,c=u._groupingHelper,e=[],h=[];if(!u._disposed){if(r(u))for(o=c.processLoadOptions(t),s=o.loads,f=0;f<s.length;f++)e.push(u.store().load(s[f])),function(n){e[n].done(function(t){h[n]=t})}(f);else e.push(u.store().load(t));n.when.apply(n,e).done(function(n,f){u._disposed||(r(u)&&(h.length>1&&(f=undefined),n=c.mergeLoadedData(h,o.data)),f=f||{totalCount:u._totalCount>=0?u._totalCount:undefined},u._processStoreLoadResult(n,f,t,i))}).fail(n.proxy(i.reject,i))}};u._asyncLoadEnabled?window.setTimeout(f,u._loadingTimeout):f()}}}())}(jQuery,DevExpress),function(n,t){var r=t.ui,u=t.utils,i=r.dataGrid;i.StateStoringController=i.ViewController.inherit(function(){var i=function(n){var t=n.type==="sessionStorage"?sessionStorage:localStorage;if(!t)throw new Error("State storing can not be provided due to the restrictions of your browser.");return t},r=function(n){return"dx_datagrid_"+(u.isDefined(n.storageKey)?n.storageKey:"storage")},f=function(n,t){var i;return typeof t=="string"&&(i=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(t),i)?new Date(Date.UTC(+i[1],+i[2]-1,+i[3],+i[4],+i[5],+i[6])):t},e=function(n,t){var u=t.allowedPageSizes,f=t.searchText,e=t.selectedRowKeys,r=n.getController("columns"),o=n.getController("selection"),i=n.getController("data"),s=n.getView("pagerView");r&&(r.setUserState(t.columns),r.columnsChanged.add(function(){n.state({columns:r.getUserState()}),n.save()})),e&&n.option("selectedRowKeys",e),o&&o.selectionChanged.add(function(t){n.state({selectedRowKeys:t}),n.save()}),i&&(u&&n.option("pager.allowedPageSizes")==="auto"&&u&&(n.option("pager").allowedPageSizes=u),f&&i.searchByText(f),i.changed.add(function(){n.state({searchText:i.getSearchText(),pageIndex:i.pageIndex(),pageSize:i.pageSize(),allowedPageSizes:s.getPageSizes()}),n.save()}))};return{_loadState:function(){var n=this.option("stateStoring");if(n.type==="custom")return n.customLoad&&n.customLoad();try{return JSON.parse(i(n).getItem(r(n)),f)}catch(u){t.utils.logger.error(u.message)}},_saveState:function(n){var t=this.option("stateStoring");if(t.type==="custom"){t.customSave&&t.customSave(n);return}try{i(t).setItem(r(t),JSON.stringify(n))}catch(u){}},publicMethods:function(){return["state"]},isEnabled:function(){var n=this.option("stateStoring");return n&&n.enabled},init:function(){var n=this;n._state={},n._isLoaded=!1,n._isLoading=!1},isLoaded:function(){return this._isLoaded},isLoading:function(){return this._isLoading},load:function(){var t=this,i;return t._isLoading=!0,i=t._loadState(),i&&n.isFunction(i.done)||(i=n.Deferred().resolve(i)),i.done(function(n){t._isLoaded=!0,t._isLoading=!1,t._state=n||{},e(t,t._state)}),i},state:function(t){var i=this;if(t===undefined)return i._state;n.extend(i._state,t)},save:function(){var n=this;clearTimeout(n._savingTimeoutID),n._savingTimeoutID=setTimeout(function(){n._saveState(n.state())},n.option("stateStoring.savingTimeout"))},dispose:function(){clearTimeout(this._savingTimeoutID)}}}()),i.registerModule("stateStoring",{defaultOptions:function(){return{stateStoring:{enabled:!1,storageKey:null,type:"localStorage",customLoad:null,customSave:null,savingTimeout:2e3}}},controllers:{stateStoring:r.dataGrid.StateStoringController},extenders:{controllers:{columns:{getVisibleColumns:function(){var n=this.callBase();return this.getController("stateStoring").isLoading()?[]:n}},data:{_refreshDataSource:function(){var n=this,i=n.callBase,t=n.getController("stateStoring");t.isEnabled()&&!t.isLoaded()?t.load().done(function(){i.call(n)}):i.call(n)},isLoading:function(){var n=this,t=n.getController("stateStoring");return this.callBase()||t.isLoading()},_dataSourceOptions:function(){var i=this,t=i.callBase(),r=i.getController("stateStoring"),n;return r.isEnabled()&&(n=r.state(),n.pageIndex!==undefined&&(t.pageIndex=n.pageIndex),n.pageSize!==undefined&&(t.pageSize=n.pageSize)),t}}}}})}(jQuery,DevExpress),function(n,t,i){var h=t.ui,o=h.dataGrid,u=t.utils,f=t.data.utils,e=f.normalizeSortingInfo,r=u.isDefined,c=["initialIndex","dataField","width","visible","sortOrder","sortIndex","groupIndex","filterValue","selectedFilterOperation"],l=/^(\{{0,1}([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}\}{0,1})$/,s;o.checkChanges=function(n,t){for(var r=0,i=0;i<t.length;i++)n[t[i]]&&r++;return n.length&&n.length===r},s=o.Controller.inherit(function(){var et={visible:!0},ot={number:["=","<>","<",">","<=",">="],date:["=","<>","<",">","<=",">="],string:["contains","notcontains","startswith","endswith","=","<>"]},st={allowResizing:!1,allowGrouping:!1,allowReordering:!1,allowSorting:!1,allowHiding:!1},ht=30,o="group",s="columnChooser",ct=function(n){for(var u=[],t,f=!1,i=!1,r=0;r<n.length;r++)t=n.charAt(r),i=t===t.toUpperCase()||t in["0","1","2","3","4","5","6","7","8","9"],t==="_"||t==="."?(t=" ",i=!0):r===0?(t=t.toUpperCase(),i=!0):!f&&i&&u.length>0&&u.push(" "),u.push(t),f=i;return u.join("")},p=function(t,i){var r,f;if(i)return u.isString(i)&&(i={dataField:i}),r=t.getCommonSettings(),f=t._createCalculatedColumnOptions(i),n.extend(!0,{},et,r,f,i)},w=function(t,r){var u=[];return r&&n.each(r,function(n,r){var f=p(t,r);f&&(f.initialIndex===i&&(f.initialIndex=n),u.push(f))}),u},nt=function(t){var r=n.type(t);return r==="string"?u.isNumber(t)?r="number":l.test(t)&&(r="guid"):r!=="boolean"&&r!=="number"&&r!=="date"&&(r=i),r},lt=function(n,t){switch(n){case"number":return"right";case"boolean":return"center";case"date":return"left";default:return t?"right":"left"}},at=function(n){switch(n){case"date":return"shortDate"}},vt=function(n){if(n==="boolean")return function(n){return n.value===!0?this.trueText||"true":n.value===!1?this.falseText||"false":n.valueText||""}},yt=function(t,i){for(var u=b(i),s,f={},o=0,e=[],r=0;r<u.length;r++)u[r]&&n.each(u[r],function(n){f[n]=!0});return n.each(f,function(n){if(n.indexOf("__")!==0){var i=p(t,n);i.initialIndex=o++,e.push(i)}}),e},v=function(t,i){var r;if(n.isArray(t)&&n.isArray(i)){if(t.length!==i.length)return!1;for(r=0;r<t.length;r++)if(t[r].selector!==i[r].selector||t[r].desc!==i[r].desc||!t[r].isExpanded!=!i[r].isExpanded)return!1;return!0}return(!t||!t.length)==(!i||!i.length)},b=function(n){var t,i=[],r=function(n,t){var i,u;if(!n||!t)return n;for(i=0;i<n.length;i++)if(u=r(n[i].items,t-1),u&&u.length)return u};return n&&n.items().length>0&&(t=e(n.group()||[]).length,i=r(n.items(),t)||[]),i},tt=function(t){n.each(t._columns,function(n,t){t.index=n})},it=function(t,i,u){var f=[],e=0;return n.each(t._columns,function(n,t){var n=t[i];r(n)&&(f[n]||(f[n]=[]),t===u?f[n].unshift(t):f[n].push(t),delete t[i])}),n.each(f,function(t,r){r&&n.each(r,function(){this[i]=e++})}),e},rt=function(t,i){var u="groupIndex",f=it(t,u,i);n.each(t._columns,function(n,t){!r(t[u])&&t.grouped&&(t[u]=f++),delete t.grouped})},ut=function(t,i){n.each(t._columns,function(n,t){r(t.sortIndex)&&!y(t.sortOrder)&&delete t.sortIndex});var u=it(t,"sortIndex",i);n.each(t._columns,function(n,t){r(t.sortIndex)||r(t.groupIndex)||!y(t.sortOrder)||(t.sortIndex=u++)})},pt=function(n){var t;return u.isDate(n)||(u.isNumber(n)?n=new Date(n):(t=Date.parse(n),t&&(n=new Date(t)))),n},wt=function(t,i){var f,h=t._columns,o=b(i)[0],r,c,l,a,p,v=[],y=[],s;if(i&&i.map){for(f=0;f<h.length;f++)if(r=h[f].dataField,r)switch(h[f].dataType){case"date":o&&u.isDate(o[r])||v.push(r);break;case"number":(!o||u.isString(o[r]))&&y.push(r)}if(s=function(t,i,r,f){var e,o;if(r&&u.isDefined(t.items))n.each(t.items,function(n,t){s(t,i,r-1,f)});else for(e=0;e<i.length;e++)o=t[i[e]],o&&(t[i[e]]=f(o))},v.length>0||y.length>0)return c=i.map(),l=function(n){var t;return n&&(t=e(i.group()||[]).length,s(n,v,t,pt),s(n,y,t,Number)),n},a=function(n){return n=c?c(n):n,l(n)},i.map(a),i.map()?n.each(i.items(),function(){l(this)}):(i.store().inserting.remove(t._insertingHandler),t._insertingHandler=function(n){a(n)},i.store().inserting.add(t._insertingHandler)),i.load()}},k=function(n,t,i){var f=i===o?n.getGroupColumns():i===s?n.getHiddenColumns():n.getVisibleColumns(),u=f[t];return u&&r(u.index)?u.index:-1},bt=function(n,t,i){var u=n.getGroupColumns(),r;if(i>=0)for(r=0;r<u.length;r++)u[r].groupIndex>=i&&u[r].groupIndex++;else for(i=0,r=0;r<u.length;r++)i=Math.max(i,u[r].groupIndex+1);t.groupIndex=i},ft=function(t){var u=t._columnsUserState,f=t._columns,e=[],o=[],r,i;if(u){if(f.length!==u.length)return;for(i=0;i<f.length;i++)o[f[i].initialIndex]=f[i];for(i=0;i<u.length;i++)if(r=o[u[i].initialIndex],r&&u[i].dataField===r.dataField)r=n.extend({},r),n.each(c,function(n,t){r[t]=u[i][t]}),e.push(r);else return;t._columns=e}},d=function(n,t){tt(n),rt(n,t),ut(n,t)},h=function(n,t,r,u){var f=n._columnChanges||{optionNames:{length:0},changeTypes:{length:0},columnIndex:u&&u.initialIndex,column:u},o=f.changeTypes,e;t&&!o[t]&&(o[t]=!0,o.length++),e=f.optionNames,r&&!e[r]&&(e[r]=!0,e.length++),(u===i||u!==f.column)&&(delete f.column,delete f.columnIndex),n._columnChanges=f,n._visibleColumns=i},a=function(n,t){t&&h(n,t),!n._updateLockCount&&n._columnChanges&&(n.columnsChanged.fire(n._columnChanges),n._columnChanges=i)},g=function(n,t,i,r){var e=f.compileGetter(i),u;if(arguments.length===3)return e(t,{functionsAsIs:!0});e(t,{functionsAsIs:!0})!==r&&(u=i==="groupIndex"?"grouping":i==="sortIndex"||i==="sortOrder"?"sorting":"columns",f.compileSetter(i)(t,r,{functionsAsIs:!0}),h(n,u,i,t))},y=function(n){return n==="asc"||n==="desc"};return{init:function(){var n=this,t=n.option("columns");n._columns=t?w(n,t):[],n._updateLockCount=n._updateLockCount||0,n._isColumnsFromOptions=!!t,n._isColumnsFromOptions?ft(n):n._columns=n._columnsUserState||n._columns,n._dataSourceApplied?n.applyDataSource(n._dataSource,!0):d(n)},callbackNames:function(){return["columnsChanged"]},optionChanged:function(n){switch(n){case"columns":case"commonColumnSettings":case"columnAutoWidth":case"allowColumnResizing":case"allowColumnReordering":case"grouping":case"groupPanel":case"regenerateColumnsByVisibleItems":case"customizeColumns":case"editing":case"rtlEnabled":this._columnsUserState=this.getUserState(),this.init()}},publicMethods:function(){return["addColumn","columnOption","columnCount"]},applyDataSource:function(n,t){var i=this,r=n&&n.isLoaded(),u;return i._dataSource=n,(!i._dataSourceApplied||i._dataSourceColumnsCount===0||t||i.option("regenerateColumnsByVisibleItems"))&&r?(i._isColumnsFromOptions||(i._columns=yt(i,n),i._dataSourceColumnsCount=i._columns.length,ft(i)),i.updateColumns(n)):void 0},reset:function(){this._dataSourceApplied=!1,this._dataSourceColumnsCount=i},isInitialized:function(){return!!this._columns.length},isDataSourceApplied:function(){return this._dataSourceApplied},beginUpdate:function(){this._updateLockCount++},endUpdate:function(){var n=this;n._updateLockCount--,n._updateLockCount||a(n)},getCommonSettings:function(){var r=this.option("commonColumnSettings")||{},t=this.option("grouping")||{},i=this.option("groupPanel")||{};return n.extend({allowResizing:this.option("allowColumnResizing"),allowReordering:this.option("allowColumnReordering"),autoExpandGroup:t.autoExpandAll,allowCollapsing:t.allowCollapsing,allowGrouping:i.allowColumnDragging&&i.visible},r)},isColumnOptionUsed:function(n){for(var t=0;t<this._columns.length;t++)if(this._columns[t][n])return!0},getColumns:function(){return n.extend(!0,[],this._columns)},getGroupColumns:function(){var t=[];return n.each(this._columns,function(){var n=this;r(n.groupIndex)&&(t[n.groupIndex]=n)}),t},getVisibleColumns:function(){var t=n.map(this.getGroupColumns(),function(t){return n.extend({},t,{width:ht},st)}),i=0;return n.each(this._columns,function(){var u=this;u.visible&&!r(u.groupIndex)&&(u=n.extend(!0,{},u),t.push(u),i++)}),!i&&this._columns.length&&t.push({command:"empty"}),t},getHiddenColumns:function(){var t=[];return n.each(this._columns,function(n,i){i.visible||t.push(i)}),t},allowMoveColumn:function(n,t,i,r){var f=this,e=k(f,n,i),u=f._columns[e];return u&&(u.allowReordering||u.allowGrouping||u.allowHiding)?i===r?i===s?!1:n!==t&&n+1!==t:i===o&&r!==s||r===o?u&&u.allowGrouping:i===s||r===s?u&&u.allowHiding:!0:!1},moveColumn:function(n,t,i,u){var f=this,c,h,l,y=i===o||u===o,e,v;c=k(f,n,i),h=k(f,t,u),c>=0&&(e=f._columns[c],l=h>=0?f._columns[h].groupIndex:-1,r(e.groupIndex)&&(l>e.groupIndex&&l--,delete e.groupIndex,delete e.sortOrder,rt(f)),u===o?bt(f,e,l):t>=0&&(f._columns.splice(c,1),h<0?f._columns.push(e):(v=h>c?h-1:h,f._columns.splice(v,0,e)),tt(f)),e.visible=u!==s,a(f,y?"grouping":"columns"))},changeSortOrder:function(t,i){var f=this,s=f.option("sorting"),o=s&&s.mode,h=o==="single"||!i,c=o==="single"||o==="multiple",u=f._columns[t],l=function(n){i==="ctrl"?(delete n.sortOrder,delete n.sortIndex):n.sortOrder=r(n.groupIndex)||r(n.sortIndex)?n.sortOrder==="desc"?"asc":"desc":"asc"},e=!1;c&&u&&u.allowSorting&&(h&&!r(u.groupIndex)&&n.each(f._columns,function(n){n!==t&&this.sortOrder&&!r(this.groupIndex)&&(delete this.sortOrder,delete this.sortIndex,e=!0)}),y(i)?u.sortOrder!==i&&(u.sortOrder=i,e=!0):i==="none"?u.sortOrder&&(delete u.sortIndex,delete u.sortOrder,e=!0):(l(u),e=!0)),e&&(ut(f),a(f,"sorting"))},getSortDataSourceParameters:function(){var u=this,i=[],t=[];return n.each(u._columns,function(){(this.dataField||this.calculateCellValue)&&this.visible&&r(this.sortIndex)&&!r(this.groupIndex)&&(i[this.sortIndex]=this)}),n.each(i,function(){var n=this&&this.sortOrder;y(n)&&t.push({selector:this.dataField||this.calculateCellValue,desc:this.sortOrder==="desc"})}),t.length>0?t:null},getGroupDataSourceParameters:function(){var t=[];return n.each(this.getGroupColumns(),function(){var n=this.dataField||this.calculateCellValue;n&&t.push({selector:n,desc:this.sortOrder==="desc",isExpanded:!!this.autoExpandGroup})}),t.length>0?t:null},refresh:function(t){var i=[];return n.each(this._columns,function(){var n=this.lookup;if(n){if(t&&n.valueMap)return;n.update&&i.push(n.update())}}),n.when.apply(n,i)},_updateColumnDataTypes:function(t){var i=b(t),u=this.option("rtlEnabled");n.each(this._columns,function(n,t){var o,s,e,f=t.lookup;if(t.dataField&&i.length)for(o=0;(!t.dataType||f&&!f.dataType)&&o<i.length;o++)s=t.calculateCellValue(i[o]),t.dataType=nt(s),f&&(f.dataType=nt(f.calculateCellValue(s)));e=f?f.dataType:t.dataType,e&&(t.alignment=t.alignment||lt(e,u),t.format=t.format||at(e),t.customizeText=t.customizeText||vt(e),r(t.filterOperations)||(t.filterOperations=!f&&ot[e]||[]),t.defaultFilterOperation=t.filterOperations&&t.filterOperations[0]||"=",t.defaultSelectedFilterOperation=t.selectedFilterOperation)})},updateColumns:function(t){var i=this,r=i.option("customizeColumns"),u,f;return i.updateSortingGrouping(t),!t||t.isLoaded()?(u=t?t.sort()||[]:i.getSortDataSourceParameters(),f=t?t.group()||[]:i.getGroupDataSourceParameters(),r&&(r(i._columns),i._columns=w(i,i._columns)),d(i),i._updateColumnDataTypes(t),n.when(i.refresh(!0),wt(i,t)).always(function(){t&&(i._updateColumnDataTypes(t),i._dataSourceApplied=!0),v(u,i.getSortDataSourceParameters())?v(f,i.getGroupDataSourceParameters())?h(i,"columns"):h(i,"grouping"):h(i,"sorting"),a(i)})):void 0},updateSortingGrouping:function(t){var i=this,r,u,f,o,s=function(t,i,r){var u;n.each(t,function(n,t){if(t.dataField&&(delete t[r],i&&i.length))for(u=0;u<i.length;u++)if(i[u].selector===t.dataField){t.sortOrder=t.sortOrder||(i[u].desc?"desc":"asc"),t[r]=u;break}})};t&&(r=e(t.sort()||[]),u=e(t.group()||[]),f=i.getGroupDataSourceParameters(),o=i.getSortDataSourceParameters(),i._columns.length||(n.each(u,function(n,t){i._columns.push(t.selector)}),n.each(r,function(n,t){i._columns.push(t.selector)}),i._columns=w(i,i._columns)),f||v(u,f)||s(i._columns,u,"groupIndex"),o||v(r,o)||s(i._columns,r,"sortIndex"))},columnCount:function(){return this._columns.length},columnOption:function(t,i,r){for(var o=this,s=o._columns,f,e=0;e<s.length;e++)if(s[e].initialIndex===t||s[e].dataField===t||s[e].caption===t){f=s[e];break}if(f){if(arguments.length===1)return n.extend({},f);if(u.isString(i)){if(arguments.length===2)return g(o,f,i);g(o,f,i,r)}else u.isObject(i)&&n.each(i,function(n,t){g(o,f,n,t)});d(o,f),a(o)}},getVisibleIndex:function(n){for(var i=this.getVisibleColumns(),t=0;t<i.length;t++)if(i[t].initialIndex===n)return t;return-1},addColumn:function(n){var t=this;t._columns.push(p(t,n)),t.updateColumns()},getUserState:function(){for(var r=this._columns,u=[],t=0;t<r.length;t++)u[t]={},n.each(c,function(n,f){r[t][f]!==i&&(u[t][f]=r[t][f])});return u},setUserState:function(n){this._columnsUserState=n,this.init()},_createCalculatedColumnOptions:function(r){var e={};return r.dataField?(e={caption:ct(r.dataField),calculateCellValue:f.compileGetter(r.dataField),validate:function(n){return typeof n=="string"?!n||!this.parseValue||this.parseValue(n)!==i:!0},parseValue:function(n){var i=this,t,r;return i.dataType==="number"?u.isString(n)?(r=Globalize.parseFloat(n),u.isNumber(r)&&(t=r)):u.isDefined(n)&&(t=Number(n)):i.dataType==="boolean"?n===i.trueText?t=!0:n===i.falseText&&(t=!1):i.dataType==="date"?(r=Globalize.parseDate(n),r&&(t=r)):i.dataType==="guid"?l.test(n)&&(t=n):t=n,t}},r.lookup&&(e.lookup={calculateCellValue:function(n){return this.valueMap&&this.valueMap[n]},updateValueMap:function(){var i,r,t,n;if(this.valueMap={},this.items)for(i=f.compileGetter(this.valueExpr),r=f.compileGetter(this.displayExpr),n=0;n<this.items.length;n++)t=this.items[n],this.valueMap[i(t)]=r(t)},update:function(){var i=this,r=i.dataSource;if(r){if(u.isObject(r)||u.isArray(r))return r=new t.data.DataSource(n.extend(!0,{paginate:!1,_preferSync:!0},f.normalizeDataSourceOptions(r))),r.load().done(function(n){i.items=n,i.updateValueMap&&i.updateValueMap()});t.utils.logger.error("Unexpected type of data source is provided for a lookup column. For the list of supported types, see http://js.devexpress.com/Documentation/ApiReference/UI_Widgets/dxDataGrid/Configuration/columns/lookup#dataSource")}else i.updateValueMap&&i.updateValueMap()}})):n.extend(!0,e,{calculateCellValue:function(){return null}}),e.resizedCallbacks=n.Callbacks(),r.resized&&e.resizedCallbacks.add(n.proxy(r.resized,r)),e}}}()),h.dataGrid.ColumnsController=s,o.registerModule("columns",{defaultOptions:function(){return{commonColumnSettings:{allowFiltering:!0,allowHiding:!0,allowSorting:!0,allowEditing:!0,encodeHtml:!0,trueText:Globalize.localize("dxDataGrid-trueText"),falseText:Globalize.localize("dxDataGrid-falseText")},grouping:{autoExpandAll:!0,allowCollapsing:!0,groupContinuesMessage:Globalize.localize("dxDataGrid-groupContinuesMessage"),groupContinuedMessage:Globalize.localize("dxDataGrid-groupContinuedMessage")},allowColumnReordering:!1,allowColumnResizing:!1,columns:i,regenerateColumnsByVisibleItems:!1,sorting:{mode:"single",ascendingText:Globalize.localize("dxDataGrid-sortingAscendingText"),descendingText:Globalize.localize("dxDataGrid-sortingDescendingText"),clearText:Globalize.localize("dxDataGrid-sortingClearText")},customizeColumns:null}},controllers:{columns:s}})}(jQuery,DevExpress),function(n,t){var r=t.ui.dataGrid,f=t.ui.events,i=t.utils,e="dx-editor-cell",o="dx-selection",s="dx-select-checkbox",h=500,c=3,u="selection.showCheckBoxesInMultipleMode";r.equalKeys=function(n,t,u){var f,e;if(u=u||0,u<c){if(i.isObject(n)&&i.isObject(t)){for(f in n)if(n.hasOwnProperty(f)&&!r.equalKeys(n[f],t[f],u+1))return!1;for(f in t)if(!(f in n))return!1;return!0}if(i.isArray(n)&&i.isArray(t)){if(n.length!==t.length)return!1;for(e=0;e<n.length;e++)if(!r.equalKeys(n[e],t[e],u+1))return!1;return!0}return i.isDate(n)&&i.isDate(t)?n.getTime()===t.getTime():n===t}return!0},r.SelectionController=r.Controller.inherit(function(){var o="selection.mode",y=function(n){return n==="single"||n==="multiple"},f=function(t,r,u){var f,e=u?t._unselectedItemKeys:t._selectedItemKeys;if(i.isObject(r)){for(f=0;f<e.length;f++)if(c(e[f],r))return f;return-1}return n.inArray(r,e)},l=function(n,t){var i=n.getController("data").keyOf(t),r;f(n,i)===-1&&(n._selectedItemKeys.push(i),n._addedItemKeys.push(i),n._selectedItems.push(t)),n._isSelectAll&&(r=f(n,i,!0),n._unselectedItemKeys.splice(r,1))},a=function(n,t){var i=f(n,t);i>=0&&(n._selectedItemKeys.splice(i,1),n._removedItemKeys.push(t),n._selectedItems.splice(i,1),n._isSelectAll&&f(n,t,!0)===-1&&n._unselectedItemKeys.push(t))},p=function(n){h(n,[],[])},h=function(t,i,r,u){var f,e=t._selectedItemKeys;for(t._selectedItemKeys=i,t._selectedItems=r,t._unselectedItemKeys=[],t._isSelectAll=!!u,f=0;f<e.length;f++)n.inArray(e[f],i)===-1&&t._removedItemKeys.push(e[f]);for(f=0;f<i.length;f++)n.inArray(i[f],e)===-1&&t._addedItemKeys.push(i[f])},c=r.equalKeys,v=function(n){delete n._shiftFocusedItemIndex},e=function(n){return n&&n.rowType==="data"},w=function(n,t,r){var f=!1,o,u,h=n.getController("data"),c=r[n._focusedItemIndex]&&n.isSelectedItem(h.keyOf(r[n._focusedItemIndex].data)),s=function(n,t,i){i?a(n,h.keyOf(t)):l(n,t)};if(i.isDefined(n._shiftFocusedItemIndex)||(n._shiftFocusedItemIndex=n._focusedItemIndex),n._shiftFocusedItemIndex!==n._focusedItemIndex)for(o=n._focusedItemIndex<n._shiftFocusedItemIndex?1:-1,u=n._focusedItemIndex;u!==n._shiftFocusedItemIndex;u+=o)e(r[u])&&(s(n,r[u].data,!0),f=!0);if(t!==n._shiftFocusedItemIndex)for(o=t<n._shiftFocusedItemIndex?1:-1,u=t;u!==n._shiftFocusedItemIndex;u+=o)e(r[u])&&(s(n,r[u].data,!1),f=!0);return e(r[n._focusedItemIndex])&&!c&&(s(n,r[n._focusedItemIndex].data,!1),f=!0),f},b=function(t,i,r){var o,f,e=t&&t.key(),u=[];return t&&(e?n.each(i,function(t,i){if(u.length>0&&u.push(r?"and":"or"),n.isArray(e)){for(o=[],f=0;f<e.length;f++)f>0&&o.push(r?"or":"and"),o.push([e[f],r?"<>":"=",i[e[f]]]);u.push(o)}else u.push([e,r?"<>":"=",i])}):u=function(n){for(var t=0;t<i.length;t++)if(c(i[t],n))return!r;return r}),u.length>0||n.isFunction(u)?u:void 0},s=function(t){var i=[],r=t.getController("data"),f,o;r&&(n.each(r.items(),function(n,u){var f=r.keyOf(u.data);e(u)&&u.isSelected!==t.isSelectedItem(f)&&i.push(n)}),t.option(u)==="onClick"&&(t._selectedItemKeys.length>1?t.startSelectionWithCheckboxes():t._selectedItemKeys.length===0&&i.length&&t.stopSelectionWithCheckboxes()),i.length&&r.updateItems({changeType:"updateSelection",itemIndexes:i}),f=t._addedItemKeys,o=t._removedItemKeys,(f.length||o.length)&&(t._selectedItemsInternalChange=!0,t.option("selectedRowKeys",t._selectedItemKeys.slice(0)),t._selectedItemsInternalChange=!1,t.selectionChanged.fire(t._selectedItemKeys),t.executeAction("selectionChanged",{selectedRowsData:t._selectedItems,selectedRowKeys:t._selectedItemKeys,currentSelectedRowKeys:f,currentDeselectedRowKeys:o})),t._addedItemKeys=[],t._removedItemKeys=[])};return{init:function(){var n=this;n._isSelectionWithCheckboxes=!1,n._focusedItemIndex=-1,n._selectedItemKeys=[],n._unselectedItemKeys=[],n._selectedItems=[],n._addedItemKeys=[],n._removedItemKeys=[],n._isSelectAll=!1,n.createAction("selectionChanged")},callbackNames:function(){return["selectionChanged"]},optionChanged:function(n,t){switch(n){case"selection":this.init(),this.getController("columns").updateColumns();break;case"selectedRowKeys":i.isArray(t)&&!this._selectedItemsInternalChange&&this.selectRows(t);break;case"selectionChanged":this.createAction("selectionChanged")}},publicMethods:function(){return["selectRows","selectRowsByIndexes","getSelectedRowKeys","getSelectedRowsData","clearSelection","selectAll","startSelectionWithCheckboxes","stopSelectionWithCheckboxes"]},isSelectedItem:function(n){var t=f(this,n);return t!==-1},isSelectColumnVisible:function(){var n=this.option(u);return this.option(o)==="multiple"&&(n==="always"||n==="onClick"||this._isSelectionWithCheckboxes)},isSelectAll:function(){return this._isSelectAll&&!this._unselectedItemKeys.length},selectAll:function(){return this.option(u)==="onClick"&&this.startSelectionWithCheckboxes(),this.selectedItemKeys([],!0)},clearSelection:function(){this.selectedItemKeys([])},refresh:function(){var n=this,t;return t=n.isSelectAll()?n.selectAll():n.selectedItemKeys(n.option("selectedRowKeys")||[]),t.done(function(){s(n)})},selectedItemKeys:function(r,u){var c=this,y,f,p,e,w=c.getController("data"),a=w.dataSource(),v=a&&a.store(),l,o;return i.isDefined(r)?(v&&(y=n.isArray(r)?n.extend(!0,[],r):[r],c._isSelectAll=u,(y.length||u)&&(f=b(a,y,u),p=n.isFunction(f),(f||u)&&(l=a.filter(),f&&!p&&l?(o=[],o.push(f),o.push(l)):l?o=l:f&&!p&&(o=f),e=n.Deferred(),w.setSelectionLoading(!0),v.load({filter:o}).done(function(n){new t.data.ArrayStore(n).load({filter:f}).done(function(n){e.resolve(n)})}).fail(n.proxy(e.reject,e)).always(function(){w.setSelectionLoading(!1)})))),e=e||n.Deferred().resolve([]),e.done(function(n){var t,i,r=[];if(v&&n.length>0)for(t=0;t<n.length;t++)i=v.keyOf(n[t]),r.push(i);h(c,r,n,u),s(c)}),e):c._selectedItemKeys},getSelectedRowKeys:function(){return this.selectedItemKeys()},selectRows:function(n){return this.selectedItemKeys(n)},selectRowsByIndexes:function(t){var u=this.getController("data").items(),f,r=[];return i.isArray(t)||(t=Array.prototype.slice.call(arguments,0)),n.each(t,function(){var n=u[this];n&&n.rowType==="data"&&r.push(n.key)}),this.selectRows(r)},getSelectedRowsData:function(){return this._selectedItems},changeItemSelection:function(n,t){var i=this,d=i.getController("data"),g=d.items(),f=g[n],b=f&&f.data,k=i.option(o),u,nt,r;return y(k)&&e(f)&&(r=d.keyOf(b),t=t||{},i.isSelectionWithCheckboxes()&&(t.control=!0),t.shift&&k==="multiple"&&i._focusedItemIndex>=0?u=w(i,n,g):t.control?(v(i),nt=i.isSelectedItem(r),k==="single"&&p(i),nt?a(i,r):l(i,b),u=!0):(v(i),i._selectedItemKeys.length===1&&c(i._selectedItemKeys[0],r)||(h(i,[r],[b]),u=!0)),u)?(i._focusedItemIndex=n,s(i),!0):!1},focusedItemIndex:function(n){var t=this;if(i.isDefined(n))t._focusedItemIndex=n;else return t._focusedItemIndex},isSelectionWithCheckboxes:function(){var n=this.option(o),t=this.option(u);return n==="multiple"&&(t==="always"||this._isSelectionWithCheckboxes)},startSelectionWithCheckboxes:function(){var n=this,t=n.isSelectColumnVisible();return n.option(o)==="multiple"&&!n.isSelectionWithCheckboxes()?(n._isSelectionWithCheckboxes=!0,t!==n.isSelectColumnVisible()?n.getController("columns").updateColumns():n.option(u)==="onClick"&&s(n),!0):!1},stopSelectionWithCheckboxes:function(){var n=this,t=n.isSelectColumnVisible();return n._isSelectionWithCheckboxes?(n._isSelectionWithCheckboxes=!1,t!==n.isSelectColumnVisible()&&n.getController("columns").updateColumns(),!0):!1}}}()),r.registerModule("selection",{defaultOptions:function(){return{selection:{mode:"none",showCheckBoxesInMultipleMode:"onClick",allowSelectAll:!0},selectionChanged:null,selectedRowKeys:[]}},controllers:{selection:r.SelectionController},extenders:{controllers:{data:{setDataSource:function(n){this.callBase(n),this.getController("selection").refresh()},setSelectionLoading:function(n){this._isSelectionLoading=n,this._fireLoadingChanged()},isLoading:function(){var n=this.callBase();return n||!!this._isSelectionLoading},pageIndex:function(n){var t=this,i=t._dataSource;return i&&n&&i.pageIndex()!==n&&t.getController("selection").focusedItemIndex(-1),t.callBase(n)},_processDataItem:function(){var i=this,t=i.getController("selection"),r=t.isSelectColumnVisible(),n=this.callBase.apply(this,arguments);return n.isSelected=t.isSelectedItem(n.key),r&&n.values&&(n.values[0]=n.isSelected),n},refresh:function(){this.callBase.apply(this,arguments),this.getController("selection").refresh()}},columns:{getVisibleColumns:function(){var i=this,r=i.getController("selection"),t=i.callBase();return t=n.grep(t,function(n){return n.command!=="select"}),r.isSelectColumnVisible()&&t.length&&t.unshift({visible:!0,command:"select",dataType:"boolean",alignment:"center",width:70}),t}}},views:{columnHeadersView:{_renderCore:function(n){var t=this;t.getController("selection").selectionChanged.remove(t._selectionChangedHandler),t.callBase(n)},_renderHeaderContent:function(t,i,r){var u=this,o,f=u.getController("selection"),s=function(n){if(n.isSelectAll()||n.getSelectedRowKeys().length===0)return n.isSelectAll()};if(i.command==="select"){t.addClass(e),o=n("<div />").appendTo(t),u.getController("editorFactory").createEditor(o,n.extend({},i,{parentType:"headerRow",value:s(f),setValue:function(n,t){t.jQueryEvent&&s(f)!==n&&((t.previousValue===undefined||t.previousValue)&&(f.clearSelection(),t.component.option("value",!1)),t.previousValue===!1&&(u.option("selection.allowSelectAll")?f.selectAll():t.component.option("value",!1)),t.jQueryEvent.preventDefault())}}));t.on("dxclick",u.createAction(function(t){var i=t.jQueryEvent;n(i.target).closest(".dx-checkbox").length||n(i.currentTarget).children().trigger("dxclick"),i.preventDefault()}));u._selectionChangedHandler=function(){o.dxCheckBox("instance").option("value",s(f))},f.selectionChanged.add(u._selectionChangedHandler)}else u.callBase(t,i,r)}},rowsView:{_getDefaultTemplate:function(t){var i=this,r;return t.command==="select"?function(u,f){u.addClass(e);u.on("dxclick",i.createAction(function(t){var r=i.getController("selection"),u=t.jQueryEvent,f=i.getRowIndex(n(u.currentTarget).closest(".dx-row"));f>=0&&(r.startSelectionWithCheckboxes(),r.changeItemSelection(f,{shift:u.shiftKey}))}));r=n("<div />").addClass(s).appendTo(u),i.getController("editorFactory").createEditor(r,n.extend({},t,{parentType:"dataRow",value:f.value}))}:i.callBase(t)},_update:function(t){var i=this;t.changeType==="updateSelection"?(i._tableElement.length>0&&n.each(t.itemIndexes||[],function(n,r){var u,f;t.items[r]&&(u=i._getRowElements().eq(r),f=!!t.items[r].isSelected,u.toggleClass(o,f),u.find(".dx-checkbox").dxCheckBox("option","value",f))}),i._updateCheckboxesClass()):i.callBase(t)},_createTable:function(){var t=this,i=t.callBase();return i.on(f.addNamespace("dxpointerdown","dxDataGridRowsView"),t.createAction(function(n){t._isTouchEvent=f.isTouchEvent(n.jQueryEvent)})).on(f.addNamespace("dxhold","dxDataGridRowsView"),{timeout:t.option("selection.longTapTime")||h},t.createAction(function(i){var r=t.getController("selection"),f=i.jQueryEvent;t.option(u)==="onLongTap"&&(r.isSelectionWithCheckboxes()?r.stopSelectionWithCheckboxes():r.startSelectionWithCheckboxes()),t.option(u)==="onClick"&&n(f.target).closest(".dx-row").find(s).parent().trigger("dxclick")})).on("mousedown selectstart",t.createAction(function(n){var t=n.jQueryEvent;t.shiftKey&&t.preventDefault()}))},_createRow:function(n){var t=this.callBase(n);return n&&t.toggleClass(o,!!n.isSelected),t},_rowClick:function(n,t){var i=this;i.getController("selection").changeItemSelection(n,{control:t.ctrlKey,shift:t.shiftKey}),i.callBase(n,t)},_renderCore:function(n){this.callBase(n),this._updateCheckboxesClass()},_updateCheckboxesClass:function(){var n=this.getController("selection");this._element().toggleClass("dx-select-checkboxes-hidden",n.isSelectColumnVisible()&&!n.isSelectionWithCheckboxes())}}}}})}(jQuery,DevExpress),function(n,t){var i=t.ui.dataGrid,e=t.ui.events.addNamespace,o=700,s="dx-datagrid-checkbox-size",h="dxDataGridEditorFactory",f=e("focusin dxpointerdown dxclick",h),c=13,l=9,r="dx-datagrid-focus-overlay",u="dx-focused",a="dx-datagrid-content";i.EditorFactoryController=i.Controller.inherit(function(){var e=function(n,i){n.dxDateBox({value:i.value,useCalendar:!0,customOverlayCssClass:"dx-datagrid",formatString:t.utils.isString(i.format)&&t.DateTimeFormat[i.format.toLowerCase()]||i.format,formatWidthCalculator:null,rtlEnabled:i.rtlEnabled,disabled:i.disabled}),n.dxDateBox("instance").optionChanged.add(function(n,t){n==="value"&&i.setValue(t)})},h=function(n,i){var r=function(n){return t.utils.isDefined(n)?n.toString():""},f=i.parentType==="filterRow",u=i.parentType==="searchPanel";n.dxTextBox({placeholder:i.placeholder,width:i.width,value:r(i.value),valueChangeAction:function(t){var u=function(n,t){var u;!i.validate||i.validate(n.value)?(u=i.parseValue?i.parseValue(n.value):n.value,i.setValue(u!==undefined?u:null,n)):t||n.component.option("value",r(n.previousValue))};window.clearTimeout(n._valueChangeTimeoutID),t.jQueryEvent&&t.jQueryEvent.type==="keyup"?n._valueChangeTimeoutID=window.setTimeout(function(){u(t,!0)},o):t.jQueryEvent&&t.jQueryEvent.type==="keydown"?(t.jQueryEvent.which===c||t.jQueryEvent.which===l)&&u(t):u(t)},mode:u?"search":"text",valueChangeEvent:"change keydown"+(f?" keyup":"")+(u?" keyup search":""),rtlEnabled:i.rtlEnabled,disabled:i.disabled})},v=function(t,r){r.parentType==="filterRow"?i(t,n.extend({lookup:{displayExpr:function(n){return n===!0?r.trueText||"true":n===!1?r.falseText||"false":void 0},items:[!0,!1],rtlEnabled:r.rtlEnabled,disabled:r.disabled}},r)):y(t,r)},i=function(n,i){var u=i.lookup,r,f,e=i.parentType==="filterRow";u&&(r=u.items,f=t.data.utils.compileGetter(u.displayExpr),e&&r&&(r=r.slice(0),r.unshift(null)),n.dxSelectBox({value:i.value||null,valueExpr:i.lookup.valueExpr,showClearButton:u.allowClearing&&!e,displayExpr:function(n){return n===null?i.showAllText:f(n)},items:r,valueChangeAction:function(n){i.setValue(n.value,n)},rtlEnabled:i.rtlEnabled,disabled:i.disabled}))},y=function(n,t){n.addClass(s).dxCheckBox({value:t.value,valueChangeAction:function(n){t.setValue&&t.setValue(n.value,n)},rtlEnabled:t.rtlEnabled})};return{_updateFocusCore:function(){var n=this._$focusedElement,t=this.component&&this.component._element();if(t&&(n=t.find("[tabindex]:focus, input:focus"),n.length&&(n=n.closest(".dx-editor-cell > *, .dx-row > td"),n.length))){this.focus(n);return}this.loseFocus()},_updateFocus:function(t){var i=this,u=t.jQueryEvent&&n(t.jQueryEvent.target).hasClass(r);i._isFocusOverlay=i._isFocusOverlay||u,clearTimeout(i._updateFocusTimeoutID),i._updateFocusTimeoutID=setTimeout(function(){delete i._updateFocusTimeoutID,i._isFocusOverlay||i._updateFocusCore(),i._isFocusOverlay=!1})},callbackNames:function(){return["focused"]},focus:function(i){var f=this;if(i===undefined)return f._$focusedElement;i&&setTimeout(function(){var e=f._$focusOverlay=f._$focusOverlay||n("<div>").addClass(r),o=!parseInt(i.css("border-left-width"))&&parseInt(i.css("border-right-width"))?"right bottom":"left top";e.show(),e.css("visibility","hidden"),e.appendTo(i.closest("."+a)),e.outerWidth(i.outerWidth()+1),e.outerHeight(i.outerHeight()+1),t.position(e,{my:o,at:o,of:i}),e.css("visibility","visible"),f._$focusedElement&&f._$focusedElement.removeClass(u),i.addClass(u),f._$focusedElement=i,f.focused.fire(i)})},loseFocus:function(){this._$focusedElement&&this._$focusedElement.removeClass(u),this._$focusedElement=null,this._$focusOverlay&&this._$focusOverlay.hide()},init:function(){var t=this,i=t.component&&t.component._element();n(document).on(f,this.createAction(n.proxy(this._updateFocus,this)));i&&i.on("dxclick","."+r,function(i){var r=n(i.target),u;r.hide(),u=document.elementFromPoint(i.pageX,i.pageY),r.show(),n(u).trigger("dxclick"),t._$focusedElement&&t._$focusedElement.find("input").focus()})},dispose:function(){n(document).off(f)},createEditor:function(n,t){var r=this.option("editorPreparing"),u=this.option("editorPrepared");if(t.rtlEnabled=this.option("rtlEnabled"),t.disabled=this.option("disabled"),t.cancel=!1,r&&r(n,t),!t.cancel){if(t.lookup)i(n,t);else switch(t.dataType){case"date":e(n,t);break;case"boolean":v(n,t);break;default:h(n,t)}u&&u(n,t)}}}}()),i.registerModule("editorFactory",{defaultOptions:function(){return{}},controllers:{editorFactory:i.EditorFactoryController}})}(jQuery,DevExpress),function(n,t){var f=t.ui,e=t.utils,i=f.dataGrid,o="dx-datagrid-column-chooser",r="dx-datagrid-column-chooser-button",s="column-chooser",u="dx-column-chooser-item",h="dx-column-chooser-message",c="dx-datagrid-action-cursor";i.ColumnChooserView=i.View.inherit({_updateItems:function(){var r=this._columnsController.getHiddenColumns(),u=this.option("columnChooser"),t=this._popupContainer.content();t.dxScrollable(i.createScrollableOptions(this)),this._renderColumnChooserItems(t,r),r.length||n("<span />").addClass(h).text(u?u.emptyPanelText:"").appendTo(t.dxScrollable("instance").content())},_initializePopupContainer:function(){var r=this,u=this._element().addClass(o),n=this.option("columnChooser"),t=DevExpress.ui.themes.current(),i=t&&t.indexOf("generic")>-1;e.isDefined(this._popupContainer)||(this._popupContainer=u.dxPopup({visible:!1,shading:!1,closeButton:i,cancelButton:!i,width:n.width,height:n.height,title:n.title,targetContainer:this._element().parent(),rtlEnabled:this.option("rtlEnabled")}).data("dxPopup"),this._popupContainer.optionChanged.add(function(n){n==="visible"&&r.renderCompleted.fire()}))},_renderCore:function(){this.option("columnChooser.enabled")&&this._initializePopupContainer(),this._popupContainer&&this._updateItems()},_renderColumnChooserItems:function(t,i){var r=t.dxScrollable("instance"),f=r.content(),e;f.empty(),n.each(i,function(t,i){e=n("<div />").addClass(i.cssClass).addClass(u).toggleClass(c,i.allowHiding).text(i.caption).appendTo(f)}),r.update()},init:function(){var n=this;n._columnsController=n.getController("columns"),n._columnsController.columnsChanged.add(function(t){i.checkChanges(t.optionNames,["width"])||n.render()})},renderShowColumnChooserButton:function(t){var i=this,f=i.option("columnChooser")||{},u=t.find("."+r);f.enabled?u.length?u.show():n("<div />").addClass(r).appendTo(t).dxButton({icon:s,clickAction:function(){i._popupContainer.toggle(!i._popupContainer.option("visible"))}}):u.hide()},getColumnElements:function(){var n=this._popupContainer&&this._popupContainer.content();return n&&n.find("."+u)},getName:function(){return"columnChooser"},getColumns:function(){return this._columnsController.getHiddenColumns()},allowDragging:function(n){var t=this._popupContainer;return t&&t.option("visible")&&n&&n.allowHiding},getBoundingRect:function(){var i=this,n=i._popupContainer&&i._popupContainer._container(),t;return n&&n.is(":visible")?(t=n.offset(),{left:t.left,top:t.top,right:t.left+n.outerWidth(),bottom:t.top+n.outerHeight()}):null},showColumnChooser:function(){this._popupContainer||(this._initializePopupContainer(),this.render()),this._popupContainer.show()},hideColumnChooser:function(){this._popupContainer&&this._popupContainer.hide()},publicMethods:function(){return["showColumnChooser","hideColumnChooser"]}}),i.registerModule("columnChooser",{defaultOptions:function(){return{columnChooser:{enabled:!1,width:250,height:260,title:Globalize.localize("dxDataGrid-columnChooserTitle"),emptyPanelText:Globalize.localize("dxDataGrid-columnChooserEmptyText")}}},views:{columnChooserView:i.ColumnChooserView},extenders:{views:{headerPanel:{_renderShowColumnChooserButton:function(){this.getView("columnChooserView").renderShowColumnChooserButton(this._element())},_renderCore:function(){this.callBase(),this._renderShowColumnChooserButton()},optionChanged:function(n,t,i){this.callBase(n,t,i);switch(n){case"columnChooser":this._renderShowColumnChooserButton()}},isVisible:function(){var n=this,t=n.getView("columnChooserView").option("columnChooser");return n.callBase()||t&&t.enabled}}}}})}(jQuery,DevExpress),function(n,t){var f=t.ui.dataGrid,l=t.ui.events,a=l.addNamespace,tt=t.utils,v="dx-link",y="dx-editor-cell",s="dx-selection",h="dx-edit-row",c="dx-edit-button",r="__DX_INSERT_INDEX__",p="dx-row-removed",w="dx-row-inserted",b="dx-row-modified",k="dx-cell-modified",d="dx-highlight-outline",g="dxDataGridEditing",nt="dx-datagrid-focus-overlay",u="batch",o="row",i=function(n){var t=n.option("editing.editMode");return t===u?t:o},e=function(t,i){var u=-1;return n.each(i,function(n,i){if(t&&t[r]&&t===i.key||f.equalKeys(t,i.key))return u=n,!1}),u};f.EditingController=f.ViewController.inherit(function(){var f=function(n){return n.getController("data")},s=function(t){return function(i,r){var u=n("<div/>").appendTo(i);t.getController("editorFactory").createEditor(u,n.extend({},r.column,{value:r.value,setValue:r.setValue,parentType:"dataRow",width:null}))}};return{init:function(){var t=this;if(t._insertIndex=1,t._editRowIndex=-1,t._editData=[],t._editColumnIndex=-1,t._columnsController=t.getController("columns"),!t._saveEditorHandler){t._saveEditorHandler=t.createAction(function(r){var f=r.jQueryEvent,s,h,c,e,l,o;i(t)===u&&t.isEditing()&&!t._editCellInProgress&&(h=n(f.target).closest(".dx-overlay-wrapper").length,c=n(f.target).hasClass(nt),o=n(f.target).closest(".dx-data-row").length,s=t._columnsController.getVisibleColumns(),e=n(f.target).closest("td"),l=e.length&&s[e[0].cellIndex].allowEditing,o&&(!o||l)||h||c||t.closeEditCell())});n(document).on("dxclick",t._saveEditorHandler)}t._updateEditButtons()},getEditMode:function(){return i(this)},hasChanges:function(){return this._editData.length},dispose:function(){this.callBase(),n(document).off("dxclick",this._saveEditorHandler)},optionChanged:function(){},publicMethods:function(){return["insertRow","editRow","editCell","closeEditCell","removeRow","saveEditData","recoverRow","undeleteRow","cancelEditData"]},refresh:function(){i(this)===u?(this._editRowIndex=-1,this._editColumnIndex=-1):this.init()},isEditing:function(){return this._editRowIndex>-1},isEditRow:function(n){return this._editRowIndex===n&&this._editColumnIndex===-1},isEditCell:function(n,t){return this._editRowIndex===n&&this._editColumnIndex===t},processItems:function(n){var u=this,f=u._editData,i,t;for(u.update(),i=0;i<f.length;i++)t=f[i].key,t&&t[r]&&t.pageIndex===u._pageIndex&&n.splice(t.rowIndex,0,t);return n},processDataItem:function(t,i,u){var h=this,s,f,o=t.data[r]?t.data:t.key;s=e(o,h._editData),s>=0&&(f=h._editData[s].data,o&&o[r]?(t.inserted=!0,t.key=o,t.data=f):f?(t.modified=!0,t.data=n.extend(!0,{},t.data,f),t.modifiedValues=u(f,i)):t.removed=!0)},insertRow:function(){var n=this,u=f(n),e=n.getView("rowsView"),s=n.option("initNewRow"),h={data:{}},t={pageIndex:u.pageIndex(),rowIndex:e?e.getTopVisibleItemIndex():0};n.refresh(),i(n)===o&&(n._editRowIndex=t.rowIndex),s&&s(h),t[r]=n._insertIndex++,n._editData.push({key:t,data:h.data}),u.updateItems()},editRow:function(n){var t=this,r=f(t),i=r.items()[n],e=t.option("editingStart"),u={data:i.data,key:i.key,cancel:!1};(i.inserted||(u.key=i.key),e&&e(u),u.cancel)||(t.init(),t._editRowIndex=n,t._pageIndex=r.pageIndex(),r.updateItems())},editCell:function(n,t){var r=this,c=r.getView("rowsView"),o=f(r),e=o.items()[n],h=r.option("editingStart"),s={data:e.data,cancel:!1,column:r._columnsController.getVisibleColumns()[t]};return e&&e.rowType==="data"&&!e.removed&&i(r)===u?(e.inserted||(s.key=e.key),h&&h(s),s.cancel)?void 0:(r._editRowIndex=n,r._editColumnIndex=t,r._pageIndex=o.pageIndex(),r._editCellInProgress=!0,o.updateItems(),setTimeout(function(){r._editCellInProgress=!1,c._focusEditor()}),!0):!1},removeRow:function(n){var i=this,o=i.option("editing"),s=o&&o.texts,p=s&&s.confirmDeleteTitle,l=o&&o.editMode===u,a=s&&s.confirmDeleteMessage,v=f(i),c,h=v.items()[n],y=h&&h.key;h&&(c=function(n){i.refresh();var t=e(n,i._editData);t>=0?n&&n[r]?i._editData.splice(t,1):i._editData[t].data=null:i._editData.push({key:n,oldData:h.data}),l?v.updateItems():i.saveEditData()},l||!a?c(y):t.ui.dialog.confirm(a,p).done(function(n){n&&c(y)}))},recoverRow:function(n){return t.utils.logger.warn("'recoverRow' method is deprecated since 14.1. Use the 'undeleteRow' method instead."),this.undeleteRow(n)},undeleteRow:function(n){var t=this,u=f(t),i=u.items()[n],o=i&&i.key,r;i&&(r=e(o,t._editData),r>=0&&(t._editData.splice(r,1),u.updateItems()))},saveEditData:function(){var n=this;n._editRowIndex=-1,n._editColumnIndex=-1,n._saveEditData()},_saveEditData:function(){var t=this,i=f(t),u=i.store(),b,k,h=t.option("rowInserting"),c=t.option("rowInserted"),l=t.option("rowUpdating"),a=t.option("rowUpdated"),v=t.option("rowRemoving"),y=t.option("rowRemoved"),o=[],s=[],p=n.extend({},t._editData),w=function(t,i){n.each(i,function(n,i){var r=e(i,t._editData);r>=0&&t._editData.splice(r,1)})};t._editData.length?(n.each(t._editData,function(t,i){var c=i.data,y=i.oldData,e=i.key,a,f;if(c)if(e&&e[r]){if(f={data:c,cancel:!1},h&&h(f),f.cancel)return;a=u.insert(c)}else{if(f={newData:n.extend({},y,c),oldData:y,key:e,cancel:!1},l&&l(f),f.cancel)return;a=u.update(e,c)}else{if(f={data:y,key:e,cancel:!1},v&&v(f),f.cancel)return;a=u.remove(e)}a.done(n.proxy(o.push,o,e)),s.push(a)}),s.length&&n.when.apply(n,s).always(function(u){var f=u&&u.name==="Error";f||w(t,o),n.when(i.refresh()).always(function(){n.each(p,function(t,i){var s=i.data,o=i.key,e={key:o,data:s};f&&(e.error=u),s?o&&o[r]?c&&c(e):a&&a(e):y&&y(n.extend({},e,{data:i.oldData}))})}),f&&i.dataErrorOccurred.fire(u)})):i.updateItems()},_updateEditButtons:function(){var n=this,t=n._saveChangesButton,i=n._cancelChangesButton,r=n.hasChanges();t&&t.option("disabled",!r),i&&i.option("disabled",!r)},cancelEditData:function(){var n=this,t=f(n);n.init(),t.updateItems()},closeEditCell:function(){var n=this,t=f(n);setTimeout(function(){n._editRowIndex=-1,n._editColumnIndex=-1,t.updateItems()})},update:function(){var n=this,t=f(n);n._pageIndex!==t.pageIndex()&&(n.refresh(),n._pageIndex=t.pageIndex()),n._updateEditButtons()},updateFieldValue:function(n){var t=this,r=n.key,u=n.column.dataField,f=n.column.serializeValue?n.column.serializeValue(n.value):n.value,i;r!==undefined&&(i=e(r,t._editData),i<0&&(i=t._editData.length,t._editData.push({data:{},key:r,oldData:n.data})),t._editData[i]&&(t._editData[i].data[u]=f),t._updateEditButtons())},getColumnTemplate:function(t){var r=this,f=t.column,h,c,e,u;return f.allowEditing&&f.dataField&&!f.command&&r._editRowIndex===t.rowIndex&&(r._editColumnIndex<0||r._editColumnIndex===t.columnIndex)&&t.rowType==="data"?(t.setValue=function(n){t.value=n,r.updateFieldValue(t)},h=f.editCellTemplate||s(r)):f.command==="edit"&&(h=function(t,f){var s=function(t,i,u,f){var e=n("<a />").addClass(v).text(i).on(a("dxclick",g),r.createAction(function(){setTimeout(function(){r[u](f.rowIndex)})}));f.rtlEnabled?t.prepend(e,"&nbsp;"):t.append(e,"&nbsp;")};c=i(r)===o,t.css("text-align","center"),f.rtlEnabled=r.option("rtlEnabled"),e=r.option("editing")||{},u=e.texts||{},r._editRowIndex===f.rowIndex&&c?(s(t,u.saveRowChanges,"saveEditData",f),s(t,u.cancelRowChanges,"cancelEditData",f)):(e.editEnabled&&c&&s(t,u.editRow,"editRow",f),e.removeEnabled&&(f.row.removed?s(t,u.undeleteRow,"undeleteRow",f):s(t,u.deleteRow,"removeRow",f)))}),h},renderEditButtons:function(t){var r=this,o=t.find("."+c),f=r.option("editing")||{},e=function(t,i,u){return n("<div />").addClass(c).addClass("dx-datagrid-"+i+"-button").appendTo(t).dxButton({icon:"edit-button-"+i,clickAction:n.proxy(r,u)}).dxButton("instance")};o.length&&o.remove(),(f.editEnabled||f.insertEnabled||f.removeEnabled)&&i(r)===u&&(r._cancelChangesButton=e(t,"cancel","cancelEditData"),r._saveChangesButton=e(t,"save","saveEditData"),r._updateEditButtons()),f.insertEnabled&&e(t,"addrow","insertRow")}}}()),f.registerModule("editing",{defaultOptions:function(){return{editing:{editMode:"row",insertEnabled:!1,editEnabled:!1,removeEnabled:!1,texts:{editRow:Globalize.localize("dxDataGrid-editingEditRow"),saveRowChanges:Globalize.localize("dxDataGrid-editingSaveRowChanges"),cancelRowChanges:Globalize.localize("dxDataGrid-editingCancelRowChanges"),deleteRow:Globalize.localize("dxDataGrid-editingDeleteRow"),recoverRow:Globalize.localize("dxDataGrid-editingUndeleteRow"),undeleteRow:Globalize.localize("dxDataGrid-editingUndeleteRow"),confirmDeleteMessage:Globalize.localize("dxDataGrid-editingConfirmDeleteMessage"),confirmDeleteTitle:Globalize.localize("dxDataGrid-editingConfirmDeleteTitle")}}}},controllers:{editing:f.EditingController},extenders:{controllers:{data:{init:function(){this._editingController=this.getController("editing"),this.callBase()},reload:function(){return this._editingController.refresh(),this.callBase()},_processItems:function(n){return n=this._editingController.processItems(n),this.callBase(n)},_processDataItem:function(n,t){return this._editingController.processDataItem(n,t,this._generateDataValues),this.callBase(n,t)}},columns:{getVisibleColumns:function(){var u=this,r=u.option("editing"),t=u.callBase();return t=n.grep(t,function(n){return n.command!=="edit"}),r&&((r.editEnabled||r.insertEnabled)&&i(u)===o||r.removeEnabled)&&t.length&&t.push({visible:!0,command:"edit",width:100}),t}}},views:{rowsView:{_getColumnTemplate:function(n){var t=this,i=t.getController("editing").getColumnTemplate(n);return i||t.callBase(n)},_createRow:function(n){var t=this.callBase(n),c,r,f,e,o;return n&&(c=this.getController("editing"),r=c.isEditRow(n.rowIndex),f=!!n.removed,e=!!n.inserted,o=!!n.modified,i(this)===u?t.toggleClass(p,f):t.toggleClass(h,r),t.toggleClass(w,e),t.toggleClass(b,o),(r||e||f||o)&&t.removeClass(s)),t},_rowClick:function(t,i){var r=this,f=r.getController("editing"),e=r.option("editing"),o=n(i.target).closest("td"),u=o.length?o[0].cellIndex:-1,s=r._columnsController.getVisibleColumns()[u],h=u>=0&&e&&e.editEnabled&&s&&s.allowEditing&&f.editCell(t,u);h||f.isEditRow(t)||r.callBase(t,i)},_cellPrepared:function(t,i){var u=i.row&&(i.row.inserted?i.row.values:i.row.modifiedValues),f=i.columnIndex,e=i.column.alignment,o=this.getController("editing"),r;i.isEditing=o.isEditCell(i.rowIndex,f)||o.isEditRow(i.rowIndex)&&i.column.allowEditing,i.isEditing&&(t.addClass(y),e&&t.find("input").first().css("text-align",e)),u&&i.column&&i.column.allowEditing&&u[f]!==undefined&&(i.isEditing||(t.addClass(k),r=t.contents(),n("<div>").addClass(d).append(!r.length||r.length===1&&!r.eq(0).text().length?"&nbsp;":r).appendTo(t))),this.callBase.apply(this,arguments)},_update:function(n){this.callBase(n),n.changeType==="updateSelection"&&this._element().find("."+h).removeClass(s)},_focusEditor:function(){this._tableElement.find("input").first().focus()}},headerPanel:{_renderCore:function(){this.callBase(),this.getController("editing").renderEditButtons(this._element())},isVisible:function(){var t=this,n=t.getController("editing").option("editing");return t.callBase()||n&&(n.insertEnabled||(n.editEnabled||n.removeEnabled)&&n.editMode===u)}}}}})}(jQuery,DevExpress),function(n,t){var u=t.ui,i=u.dataGrid,r=t.utils;i.DataController=i.Controller.inherit({}).include(u.DataHelperMixin).inherit(function(){var u=function(n,t,i){var r=n.option("scrolling.mode"),u=[],f=function(n,t,i,r,u,e){var s,h,o;if(i>=r)t.push.apply(t,n);else for(s=0;s<n.length;s++)o=n[s],o.items!==undefined?(u.push(o.key),h=!!o.items,(e||!o.isContinuation)&&t.push({rowType:"group",groupIndex:i,data:o,isExpanded:h,values:u.slice(0)}),h&&f(o.items,t,i+1,r,u,e),u.pop()):t.push(o)};return f(t,u,0,i,[],r!=="virtual"&&r!=="infinite"),u};return{init:function(){var t=this;t._items=[],t._columnsController=t.getController("columns"),t._columnsChangedHandler=function(n){var f=n.changeTypes,u=n.optionNames,e=function(){t._columnsController.columnsChanged.remove(e),t.updateItems()};f.sorting||f.grouping?t._dataSource&&(t._dataSource.group(t._columnsController.getGroupDataSourceParameters()),t._dataSource.sort(t._columnsController.getSortDataSourceParameters()),t.reload()):f.columns&&((u.filterValue||u.selectedFilterOperation)&&(!n.column||r.isDefined(n.column.filterValue)||!u.selectedFilterOperation||u.filterValue)&&t._applyFilter(),t._needApplyFilter||i.checkChanges(u,["width","filterValue","selectedFilterOperation"])||t._columnsController.columnsChanged.add(e))},t._gridDataSourceChangedHandler=function(i){var r=t._dataSource;r&&!t._isDataSourceApplying&&(t._isDataSourceApplying=!0,n.when(t._columnsController.applyDataSource(r)).done(function(){t._isDataSourceApplying=!1;var n=t._calculateAdditionalFilter(),r=t._needApplyFilter;t._needApplyFilter=!1,r&&n&&n.length?t._applyFilter():t.updateItems(i)}),t._needApplyFilter=!t._columnsController.isDataSourceApplied())},t._columnsController.columnsChanged.add(t._columnsChangedHandler),t._loadingChangedHandler=function(n){t._isLoading=n,t._fireLoadingChanged()},t._loadErrorHandler=function(n){t.dataErrorOccurred.fire(n)},t._viewportSize=20,t._isLoading=!1,t._isCustomLoading=!1,t._refreshDataSource(),t.createAction("dataErrorOccurred",{excludeValidators:["gesture"]}),t.dataErrorOccurred.add(function(n){return t.executeAction("dataErrorOccurred",n)})},callbackNames:function(){return["changed","loadingChanged","dataErrorOccurred"]},callbackFlags:function(n){if(n==="dataErrorOccurred")return"stopOnFalse"},publicMethods:function(){return["beginCustomLoading","endCustomLoading","refresh","filter","clearFilter","keyOf","byKey","getDataByKeys","collapseAll","expandAll","pageIndex","pageSize","pageCount","totalCount","_disposeDataSource"]},optionChanged:function(n){var r=this;switch(n){case"dataSource":case"grouping":case"scrolling":case"rtlEnabled":case"paging":case"columns":r._columnsController.reset(),r._refreshDataSource();break;case"dataErrorOccurred":r.createAction("dataErrorOccurred")}},_dataSourceType:function(){var n=this.option("scrolling");return n&&(n.mode==="virtual"||n.mode==="infinite")?i.ScrollingDataSourceWrapper:i.DataSource},_dataSourceOptions:function(){var i=this,n=i.option("paging"),t=i.option("scrolling"),u=!!(t&&t.mode==="virtual"),r=!!(t&&t.mode==="infinite");return{paginate:n&&n.enabled||u||r,loadingTimeout:i.option("loadingTimeout"),asyncLoadEnabled:!0,pageIndex:n&&n.pageIndex,pageSize:n&&n.pageSize,requireTotalCount:!r,useNativeGrouping:"auto",scrolling:t}},_initDataSource:function(){var i=this._columnsController,r,u,n;if(this.option("dataSource")instanceof t.data.DataSource){t.utils.logger.error("The dataSource option cannot take the DevExpress.data.DataSource instance directly. Assign a DataSource configuration object (see http://js.devexpress.com/Documentation/ApiReference/Data_Library/DataSource/Configuration) or a simple array instead.");return}this.callBase(),n=this._dataSource,n&&(i.updateSortingGrouping(n),r=i.getSortDataSourceParameters(),r&&n.sort(r),u=i.getGroupDataSourceParameters(),u&&n.group(u),this.setDataSource(n))},_processItems:function(t){var i=this,s=i._columnsController.getVisibleColumns(),f=i._columnsController.getGroupColumns(),e=[],o=0;return t.length>0&&i._columnsController.isInitialized()&&(f.length>0&&(t=u(i,t,f.length)),n.each(t,function(n,t){r.isDefined(t)&&(r.isDefined(t.groupIndex)?o=0:(t=i._generateDataItem(t),t=i._processDataItem(t,s),t.dataIndex=o++),e.push(t))})),e},_generateDataItem:function(n){return{rowType:"data",data:n,key:this.keyOf(n)}},_processDataItem:function(n,t){return n.values=this._generateDataValues(n.data,t),n},_generateDataValues:function(t,i){var u=[];return n.each(i,function(){var n=null;r.isDefined(this.groupIndex)?n=null:this.calculateCellValue?n=this.calculateCellValue(t):this.dataField&&(n=t[this.dataField]),u.push(n)}),u},_updateItemsCore:function(n){var t=this,i,r=t._dataSource,f=[],u=n.changeType;if(r){i=n.items||r.items(),i=t._processItems(i.slice(0)),n.items=i,n.changeType=u||"refresh";switch(u){case"prepend":t._items.unshift.apply(t._items,i);break;case"append":t._items.push.apply(t._items,i);break;default:t._items=i}}},updateItems:function(n){var t=this;n=n||{},t._dataSource&&t._columnsController.isDataSourceApplied()&&(t._updateItemsCore(n),t.changed.fire(n))},changeGroupExpand:function(n){this._dataSource&&this._dataSource.changeGroupExpand(n)},getGroupPathByRowIndex:function(n){var t=this.items()[n];if(t&&t.rowType==="group")return t.values},isLoading:function(){return this._isLoading||this._isCustomLoading},_fireLoadingChanged:function(n){this.loadingChanged.fire(this.isLoading(),n)},_calculateAdditionalFilter:function(){return null},_applyFilter:function(){var t=this,r=t._dataSource,i,n=t._filter;if(r)return i=t._calculateAdditionalFilter(),i&&(n=n?[i,"and",n]:i),r.filter(n&&n.length?n:null),r.pageIndex(0),t.reload()},filter:function(n){this._filter=arguments.length>1?Array.prototype.slice.call(arguments,0):n,this._applyFilter()},clearFilter:function(){this._filter=null,this._applyFilter()},setDataSource:function(n){var t=this;t._dataSource&&(t._dataSource.changed.remove(t._gridDataSourceChangedHandler),t._dataSource.loadingChanged.remove(t._loadingChangedHandler),t._dataSource.loadError.remove(t._loadErrorHandler)),t._dataSource=n,n&&(t._isLoading=!n.isLoaded(),t._filter=n.filter(),n.changed.add(t._gridDataSourceChangedHandler),n.loadingChanged.add(t._loadingChangedHandler),n.loadError.add(t._loadErrorHandler),t._needApplyFilter=!0,n.isLoaded()&&t._gridDataSourceChangedHandler())},items:function(){return this._items},virtualItemsCount:function(){var n=this._dataSource;return n&&n.virtualItemsCount&&n.virtualItemsCount()},setViewportSize:function(n){var t=this._dataSource;return t&&t.setViewportSize&&t.setViewportSize(n)},setViewportItemIndex:function(n){var t=this._dataSource;t&&t.setViewportItemIndex&&t.setViewportItemIndex(n)},collapseAll:function(n){var t=this._dataSource;t&&t.collapseAll(n)&&(t.pageIndex(0),t.reload())},expandAll:function(n){var t=this._dataSource;t&&t.expandAll(n)&&(t.pageIndex(0),t.reload())},totalItemsCount:function(){return this._dataSource?this._dataSource.totalItemsCount():0},hasKnownLastPage:function(){return this._dataSource?this._dataSource.hasKnownLastPage():!0},isLoaded:function(){return this._dataSource?this._dataSource.isLoaded():!1},totalCount:function(){return this._dataSource?this._dataSource.totalCount():0},pageCount:function(){return this._dataSource?this._dataSource.pagesCount():1},dataSource:function(){return this._dataSource},store:function(){var n=this._dataSource;return n&&n.store()},keyOf:function(n){var t=this.store();return t&&t.keyOf(n)},byKey:function(t){var i=this.store(),r;if(i)return n.each(this._items,function(i,u){if(u.key===t)return r=n.Deferred().resolve(u.data),!1}),r||i.byKey(t)},getDataByKeys:function(t){var f=this,i=n.Deferred(),r=[],u=[];return n.each(t,function(n,t){r.push(f.byKey(t).done(function(t){u[n]=t}))}),n.when.apply(n,r).always(function(){i.resolve(u)}),i},pageIndex:function(n){var i=this,t=i._dataSource;return t?n!==undefined&&t.pageIndex()!==n?(t.pageIndex(n),t.load()):t.pageIndex():0},pageSize:function(n){var i=this,t=i._dataSource;return n===undefined?t?t.pageSize():0:t?(t.pageIndex(0),t.pageSize(n),t.reload()):void 0},beginCustomLoading:function(n){this._isCustomLoading=!0,this._fireLoadingChanged(n)},endCustomLoading:function(){this._isCustomLoading=!1,this._fireLoadingChanged()},refresh:function(){var i=this,t=n.Deferred();return n.when(this._columnsController.refresh()).always(function(){n.when(i.reload()).done(t.resolve).fail(t.reject)}),t},reload:function(){var n=this._dataSource;return n&&n.reload()},dispose:function(){var n=this,t=n._dataSource;n.callBase(),t&&(t.changed.remove(n._gridDataSourceChangedHandler),t.loadingChanged.remove(n._loadingChangedHandler))}}}()),i.registerModule("data",{defaultOptions:function(){return{dataSource:null,dataErrorOccurred:null}},controllers:{data:u.dataGrid.DataController}})}(jQuery,DevExpress),function(n,t){var o=t.ui,s=t.utils,u=o.dataGrid,r="dx-sort",h="dx-sort-up",c="dx-sort-down",l="dx-sort-alignment-",a="dx-datagrid-text-content",f="dx-datagrid-table-content",v="dx-row",y="dx-group-row",e="dx-datagrid-table";u.ColumnsView=u.View.inherit({_applySorting:function(t,i,u){function a(n){return n==="right"?"left":"right"}var f,e,o;t.find("."+r).remove(),s.isDefined(i.sortOrder)&&(i.alignment==="center"&&(o=this.option("rtlEnabled")?"right":"left",n("<span />").addClass(r).css("float",o).prependTo(t)),e=i.alignment||"left",f=n("<span />").addClass(r).css("float",u?a(i.alignment):e).toggleClass(h,i.sortOrder==="asc").toggleClass(c,i.sortOrder==="desc"),this.option("showColumnLines")?f.prependTo(t):f.addClass(l+e).appendTo(t))},_updateSortIndicatorPositions:function(t){if(t){var i=t.find("."+r);n.each(i,function(){var t=n(this),i=t.parent(),r=i.find("."+a);t.height(r.height()||i.height())})}},_createRow:function(){return n("<tr />").addClass(v)},_createTable:function(){return n("<table />").toggleClass(e,!this.option("columnAutoWidth"))},init:function(){var n=this;n._columnsController=n.getController("columns")},getColumnWidths:function(){var r=this,u,f=[],t,i;return r._tableElement&&(u=r._tableElement.find("tr").filter(":not(."+y+")").first().find("td"),n.each(u,function(r,u){u.getBoundingClientRect?(i=u.getBoundingClientRect(),t=Math.floor(i.right-i.left)):t=n(u).outerWidth(!0),f.push(t)})),f},setColumnWidths:function(n){this._setColumnWidthsCore(this._tableElement,n)},_setColumnWidthsCore:function(t,i){var f,r,u;if(t)for(r=0;r<t.length;r++)if(t.eq(r).addClass(e),i)for(this._columnWidths=i,f=t.eq(r).find("colgroup").first(),f.empty(),u=0;u<i.length;u++)n("<col />").width(i[u]||"auto").appendTo(f)},resetColumnWidths:function(){for(var n=this,i,e=n._columnsController.getVisibleColumns(),o=[],u,t,s,h,r=0;r<e.length;r++)o.push(e[r].width);n.setColumnWidths(o),n._tableElement&&(u=n._tableElement.find(":focus"),t=u.get(0),t&&(s=t.selectionStart,h=t.selectionEnd),i=n._createTable(),i.append(n._tableElement.children()),i.toggleClass(f,n._tableElement.hasClass(f)),i.attr("style",n._tableElement.attr("style")),n._tableElement.replaceWith(i),n._tableElement=i,t&&t.setSelectionRange&&t.setSelectionRange(s,h),u.focus())},getColumnElements:function(){},getColumns:function(){},getCell:function(t,i){var r;if(this._tableElement&&this._tableElement.length===1)return r=this._tableElement[0].rows[i],r?n(r.cells[t]):null},getRowsCount:function(){return this._tableElement&&this._tableElement.length===1?this._tableElement[0].rows.length:0},getBoundingRect:function(){},getName:function(){}})}(jQuery,DevExpress),function(n,t){var f=t.ui,s=f.events,i=t.utils,r=f.dataGrid,e="dx-datagrid-text-content",h="dx-datagrid-action-cursor",o="dx-datagrid-headers-container",c="dx-datagrid-headers",u="dx-header-row",l="dx-datagrid-nowrap",a="dx-datagrid-group-space",v="dx-datagrid-content",y="dx-column-lines",p="context-menu-sort-asc",w="context-menu-sort-desc",b="context-menu-sort-none",k="dx-sort",d="dxDataGridColumnHeadersView";r.ColumnHeadersView=r.ColumnsView.inherit({_renderHeaderContent:function(t,r,u){var s=this,c=n("<div />"),f=r.headerCellTemplate,o,h;r.command==="empty"||r.command==="edit"?t.html("&nbsp;"):i.isDefined(r.groupIndex)?t.addClass(a):(s._applySorting(t,r,s.option("showColumnLines")),o=n("<div />").addClass(e),s.option("showColumnLines")?o.appendTo(t):o.css("float",r.alignment||"left").prependTo(t),h={column:r,columnIndex:u},n.isFunction(f)?f(o,h):i.isString(f)?(f=s.getTemplate(f),f&&f.render(o,h)):o.text(r.caption))},_renderHeader:function(t,r,u){var e=this,o=e.option("sorting"),s=o&&o.mode,f;f=n("<td />").css("text-align",r.alignment||"left").toggleClass(r.cssClass,!i.isDefined(r.groupIndex)),e._renderHeaderContent(f,r,u),((s==="single"||s==="multiple")&&r.allowSorting||r.allowReordering||r.allowHiding)&&!i.isDefined(r.groupIndex)&&f.addClass(h),f.appendTo(t)},_renderCore:function(){var t=this,a=t._element(),e=t._columnsController.getVisibleColumns(),p=t._scrollLeft,w=e.length,f,h;if(t._tableElement=t._createTable().attr("style","-webkit-user-select: none").append(r.createColGroup(e)),t.option("showColumnHeaders")){h=t._createRow().addClass(u).toggleClass(y,t.option("showColumnLines"));h.on(s.addNamespace("dxclick",d),"td",t.createAction(function(n){var u=null,r=n.jQueryEvent;r.stopPropagation(),setTimeout(function(){var n=e[r.currentTarget.cellIndex];r.shiftKey?u="shift":r.ctrlKey&&(u="ctrl"),n&&!i.isDefined(n.groupIndex)&&t._columnsController.changeSortOrder(n.index,u)})}));for(f=0;f<w;f++)t._renderHeader(h,e[f],f);t._tableElement.append(h)}a.addClass(c).addClass(v).toggleClass(l,!!t.option("columnAutoWidth")||!t.option("wordWrapEnabled")).empty(),n("<div/>").addClass(o).append(t._tableElement).appendTo(a),t._scrollLeft=0,t.scrollOffset(p)},setColumnWidths:function(n){var t=this,i=t._scrollLeft;t.callBase(n),t._scrollLeft=0,t.scrollOffset(i)},_afterRender:function(n){var t=this;n||t.setColumnWidths(t._columnWidths&&t._columnWidths.length===t._columnsController.getVisibleColumns().length?t._columnWidths:null),t._updateSortIndicatorPositions(t._element()),t.processSizeChanged()},_updateSortIndicatorPositions:function(t){var i=this,u=i.getColumnElements(),r,f;if(i.callBase(t),!i.option("showColumnLines")&&u)for(r=0;r<u.length;r++)f=n(u[r]),i._setColumnTextWidth(f,f.outerWidth())},_updateSortIndicators:function(){for(var t=this,r=t._columnsController.getVisibleColumns(),f=t._element(),e=f.find("."+u+" > td"),n=0;n<r.length;n++)i.isDefined(r[n].groupIndex)||t._applySorting(e.eq(n),r[n],t.option("showColumnLines"));t._updateSortIndicatorPositions(f)},_processColumnsChanged:function(t){var i;if(r.checkChanges(t.changeTypes,["sorting"])){this._updateSortIndicators();return}if(r.checkChanges(t.optionNames,["width"])){i=this._columnsController.getVisibleIndex(t.columnIndex),i!==-1&&(this._tableElement.find("col").eq(i).css("width",t.column.width),this._updateSortIndicatorPositions(this._element()),this.option("showColumnLines")||this._setColumnTextWidth(n(this._tableElement.find("."+u+" td")[i]),t.column.width)),this._columnWidths&&(this._columnWidths[i]=t.column.width);return}this.render()},_setColumnTextWidth:function(n,t){var i=n.find("."+k),r=i.outerWidth(),u=n.outerWidth()-n.width(),f=r+u;n.find("."+e).css("max-width",t-f)},_isElementVisible:function(n){return n&&n.visible},processSizeChanged:function(){var n=this,t=n._element();i.isDefined(n._headersHeight)&&n._headersHeight===t.height()||(n._headersHeight=t.height(),n.sizeChanged.fire())},getHeaderElement:function(n){var t=this.getColumnElements();return t&&t.eq(n)},getColumnElements:function(){var t=this,n;return t._tableElement&&(n=t._tableElement.find("."+u).find("td"),n.length)?n:null},allowDragging:function(n,t){for(var e=!1,r=this.getColumns(),u=0,f=function(n){return n.allowReordering||n.allowGrouping||n.allowHiding},i=0;i<r.length;i++)f(r[i])&&u++;if(u<=1)return!1;if(!t)return(this.option("allowColumnReordering")||this._columnsController.isColumnOptionUsed("allowReordering"))&&n&&n.allowReordering;for(i=0;i<t.length;i++)if(t[i].allowDragging(n))return!0;return!1},getColumns:function(){return this._columnsController.getVisibleColumns()},getBoundingRect:function(){var n=this,t;return n._tableElement.length>0&&n._tableElement[0].rows.length>0&&n._tableElement[0].rows[0].cells.length>0?(t=n._tableElement.offset(),{top:t.top}):null},getName:function(){return"headers"},getHeadersLength:function(){var n=this;return n._tableElement.length>0&&n._tableElement[0].rows.length>0?n._tableElement[0].rows[0].cells.length:0},tableElement:function(){return this._tableElement},init:function(){var t=this,i=t.getController("data");t.callBase(),t._columnsController.columnsChanged.add(function(n){var r=function(){i.changed.remove(r),t._processColumnsChanged(n)};n.changeTypes.grouping?i.changed.add(r):t._processColumnsChanged(n)}),t._scrollerWidth=0,t.sizeChanged=n.Callbacks()},isVisible:function(){return this.option("showColumnHeaders")},scrollOffset:function(n){var i=this,r=i._element(),t=r&&r.find("."+o);if(n===undefined)return t&&t.scrollLeft();i._scrollLeft!==n&&(i._scrollLeft=n,t&&t.scrollLeft(n))},setScrollerSpacing:function(n){var t=this,i=t._element(),r=t.option("rtlEnabled");t._scrollerWidth=n,i&&i.css(r?{paddingLeft:n}:{paddingRight:n})},optionChanged:function(n){var r=this;switch(n){case"showColumnHeaders":case"wordWrapEnabled":case"showColumnLines":r.render()}},resize:function(){this.callBase(),this._updateSortIndicatorPositions(this._element())},getHeight:function(){var t=this,n=t._element();return n?n.height():0},getContextMenuItems:function(n){var f=this,e,i,r,t;return n.closest("."+u).length&&(e=n.closest("td"),i=e.length&&f.getColumns()[e[0].cellIndex],t=f.option("sorting"),t&&t.mode!=="none"&&i&&i.allowSorting)?(r=function(n){setTimeout(function(){f._columnsController.changeSortOrder(i.index,n.itemData.value)})},[{text:t.ascendingText,value:"asc",icon:p,itemClickAction:r},{text:t.descendingText,value:"desc",icon:w,itemClickAction:r},{text:t.clearText,value:"none",icon:b,itemClickAction:r}]):[]}}),r.registerModule("columnHeaders",{defaultOptions:function(){return{showColumnHeaders:!0}},views:{columnHeadersView:r.ColumnHeadersView}})}(jQuery,DevExpress),function(n,t){var f=t.ui,w=f.events,i=t.utils,r=f.dataGrid,u={"=":"filter-operation-equals","<>":"filter-operation-not-equals","<":"filter-operation-less","<=":"filter-operation-less-equal",">":"filter-operation-greater",">=":"filter-operation-greater-equal","default":"filter-operation-default",notcontains:"filter-operation-not-contains",contains:"filter-operation-contains",startswith:"filter-operation-starts-with",endswith:"filter-operation-ends-with"},e="dx-datagrid-filter-row",h="dx-menu",b="dx-menu-image",k="dx-datagrid-text-content",c="dx-datagrid-group-space",l="dx-editor-with-menu",a="dx-editor-container",v="dx-column-lines",y="dx-editor-cell",o={_processColumnsChanged:function(n){var t=this,u,f,o,i;r.checkChanges(n.optionNames,["filterValue"])||(r.checkChanges(n.optionNames,["selectedFilterOperation"])?(u=t.getController("columns").getVisibleIndex(n.columnIndex),o=n.column,u>=0&&(i=t._element().find("."+e).children().eq(u).find("."+h),i.length&&(t._updateFilterOperationChooser(i,o),f=i.prev().children().data("dxTextBox"),f&&f.option("value",o.filterValue)))):t.callBase(n))},isFilterRowVisible:function(){return this._isElementVisible(this.option("filterRow"))},isVisible:function(){return this.callBase()||this.isFilterRowVisible()},_renderCore:function(){this.callBase();var n=this,r=n._columnsController.getVisibleColumns(),t,i;if(n.isFilterRowVisible())for(i=n._createRow().appendTo(n._tableElement),i.addClass(e).toggleClass(v,n.option("showColumnLines")),t=0;t<r.length;t++)n._renderFilterRowCell(i,r[t])},_updateFilterOperationChooser:function(n,t){var i=this;n.dxMenu({highlightActiveItem:!0,cssClass:"dx-datagrid dx-widget",showFirstSubmenuMode:"onhover",items:[{disabled:t.filterOperations&&t.filterOperations.length===0,icon:u[t.selectedFilterOperation||"default"],items:i._getFilterOperationMenuItems(t)}],itemClickAction:function(n){var r=n.itemData.name;n.itemData.items||(r?i._columnsController.columnOption(t.initialIndex,"selectedFilterOperation",r):i._columnsController.columnOption(t.initialIndex,{selectedFilterOperation:t.defaultSelectedFilterOperation||null,filterValue:null}))},rtlEnabled:i.option("rtlEnabled")})},_renderFilterOperationChooser:function(t,i){var r=this,u;r.option("filterRow.showOperationChooser")&&(t.addClass(l),u=n("<div />").appendTo(t),r._updateFilterOperationChooser(u,i))},_getFilterOperationMenuItems:function(t){var f=this,r=[{}],i=f.option("filterRow"),e=i&&i.operationDescriptions||{};return t.filterOperations&&t.filterOperations.length&&(r=n.map(t.filterOperations,function(n){return{name:n,selectable:!0,selected:(t.selectedFilterOperation||t.defaultFilterOperation)===n,text:e[n],icon:u[n]}}),r.push({name:null,text:i&&i.resetOperationText,allowSelectOnclick:!1,icon:u["default"]})),r},_renderFilterRowCell:function(t,r){var u=this,f=n("<td />").toggleClass(r.cssClass,!i.isDefined(r.groupIndex)).appendTo(t),o=u._columnsController,e,s,h,l=function(n,t,r){var u,f=r;(r===""&&(r=undefined),i.isDefined(t.filterValue)||i.isDefined(r))&&(t.filterValue=r,o.columnOption(t.initialIndex,"filterValue",r))};r.command==="empty"?f.html("&nbsp;"):i.isDefined(r.groupIndex)?f.addClass(c):r.allowFiltering&&(f.addClass(y),e=n("<div />").appendTo(f),s=n("<div />").addClass(a).appendTo(e),h=n("<div />").appendTo(s),u.getController("editorFactory").createEditor(h,n.extend({},r,{value:o.isDataSourceApplied()?r.filterValue:undefined,setValue:function(n){l(u,r,n)},parentType:"filterRow",showAllText:u.option("filterRow.showAllText"),width:null})),r.alignment&&f.find("input").first().css("text-align",r.alignment),r.filterOperations&&r.filterOperations.length&&u._renderFilterOperationChooser(e,r))},optionChanged:function(n){var r=this;switch(n){case"filterRow":case"showColumnLines":case"disabled":r.render();break;default:r.callBase(n)}}},s={_calculateAdditionalFilter:function(){var e=this,f=e.callBase(),r,u=[],t=[],o=e._columnsController.getVisibleColumns();if(n.each(o,function(){var t,n;this.allowFiltering&&this.calculateFilterExpression&&i.isDefined(this.filterValue)&&(n=this.calculateFilterExpression(this.filterValue,this.selectedFilterOperation||this.defaultFilterOperation),n&&u.push(n))}),u.length)for(f&&f.length&&u.unshift(f),r=0;r<u.length;r++)r>0&&t.push("and"),t.push(u[r]);else t=f;return t&&t.length?t:null}},p={_createCalculatedColumnOptions:function(t){var r=this.callBase(t);return t.dataField?n.extend(r,{calculateFilterExpression:function(n,t){var e=this,r=e.dataField,o=null,u,f;if(i.isDefined(n))if(e.dataType!=="string"||e.lookup)if(e.dataType==="date"){if(i.isDate(n)){u=new Date(n.getFullYear(),n.getMonth(),n.getDate()),f=new Date(n.getFullYear(),n.getMonth(),n.getDate()+1);switch(t){case"<":return[r,"<",u];case"<=":return[r,"<",f];case">":return[r,">=",f];case">=":return[r,">=",u];case"<>":return[[r,"<",u],"or",[r,">=",f]];default:return[[r,">=",u],"and",[r,"<",f]]}}}else o=[r,t||"=",n];else o=[r,t||"contains",n];return o},allowFiltering:!0}):n.extend(r,{allowFiltering:!!t.calculateFilterExpression}),r}};r.registerModule("filterRow",{defaultOptions:function(){return{filterRow:{visible:!1,showOperationChooser:!0,showAllText:Globalize.localize("dxDataGrid-filterRowShowAllText"),resetOperationText:Globalize.localize("dxDataGrid-filterRowResetOperationText"),operationDescriptions:{"=":Globalize.localize("dxDataGrid-filterRowOperationEquals"),"<>":Globalize.localize("dxDataGrid-filterRowOperationNotEquals"),"<":Globalize.localize("dxDataGrid-filterRowOperationLess"),"<=":Globalize.localize("dxDataGrid-filterRowOperationLessOrEquals"),">":Globalize.localize("dxDataGrid-filterRowOperationGreater"),">=":Globalize.localize("dxDataGrid-filterRowOperationGreaterOrEquals"),startswith:Globalize.localize("dxDataGrid-filterRowOperationStartsWith"),contains:Globalize.localize("dxDataGrid-filterRowOperationContains"),notcontains:Globalize.localize("dxDataGrid-filterRowOperationNotContains"),endswith:Globalize.localize("dxDataGrid-filterRowOperationEndsWith")}}}},extenders:{controllers:{data:s,columns:p},views:{columnHeadersView:o}}}),r.ColumnHeadersViewFilterRowExtender=o,r.DataControllerFilterRowExtender=s}(jQuery,DevExpress),function(n,t){var u=t.ui,e=u.events,i=u.dataGrid,o="dx-datagrid-header-panel",r="dx-datagrid-group-panel",s="dx-group-panel-message",f="dx-group-panel-item",h="dx-datagrid-action-cursor";i.HeaderPanel=i.ColumnsView.inherit({_renderGroupPanel:function(){var i=this,f=i._element(),u=i.option("groupPanel"),t,e=i.getController("columns").getGroupColumns();t=f.find("."+r),u&&u.visible?(t.length?t.show():t=n("<div />").addClass(r).prependTo(f),i._renderGroupPanelItems(t,e),u.allowColumnDragging&&!e.length&&n("<div />").addClass(s).text(u.emptyPanelText).appendTo(t)):t.hide()},_renderGroupPanelItems:function(t,i){var r=this,u;t.empty(),n.each(i,function(i,o){u=n("<div />").addClass(o.cssClass).addClass(f).toggleClass(h,o.allowSorting||o.allowReordering).appendTo(t).text(o.caption).on(e.addNamespace("dxclick","dxDataGridHeaderPanel"),r.createAction(function(){setTimeout(function(){r.getController("columns").changeSortOrder(o.index)})})),r._applySorting(u,{alignment:"left",sortOrder:o.sortOrder==="desc"?"desc":"asc"},!0)}),r._updateSortIndicatorPositions(t)},_renderCore:function(){var n=this;n._element().addClass(o),n._renderGroupPanel()},getHeaderPanel:function(){return this._element()},allowDragging:function(n){var t=this.option("groupPanel");return t&&t.visible&&t.allowColumnDragging&&n&&n.allowGrouping},getColumnElements:function(){var n=this._element();return n&&n.find("."+f)},getColumns:function(){return this.getController("columns").getGroupColumns()},getBoundingRect:function(){var i=this,n=i._element(),t;return n&&n.find("."+r).length?(t=n.offset(),{top:t.top,bottom:t.top+n.height()}):null},getName:function(){return"group"},init:function(){var n=this;n.callBase(),n.getController("columns").columnsChanged.add(function(t){i.checkChanges(t.optionNames,["width"])||n.render()})},isVisible:function(){var n=this.option("groupPanel");return n&&n.visible},getHeight:function(){var n=this._element();return n?n.outerHeight(!0):0},optionChanged:function(n){var r=this;switch(n){case"searchPanel":r._renderSearchPanel();break;case"groupPanel":r._renderGroupPanel();break;case"disabled":r.render()}},resize:function(){var n=this,t=n._element(),i=t&&t.find("."+r),u=n.option("groupPanel");n.callBase(),n._updateSortIndicatorPositions(i)}}),i.registerModule("headerPanel",{defaultOptions:function(){return{groupPanel:{visible:!1,emptyPanelText:Globalize.localize("dxDataGrid-groupPanelEmptyText"),allowColumnDragging:!0}}},views:{headerPanel:i.HeaderPanel}})}(jQuery,DevExpress),function(n,t){var i=t.ui,f=i.events,e=t.utils,r=i.dataGrid,u="dx-datagrid-search-panel",o=10;r.registerModule("search",{defaultOptions:function(){return{searchPanel:{visible:!1,width:160,placeholder:Globalize.localize("dxDataGrid-searchPanelPlaceholder"),highlightSearchText:!0}}},extenders:{controllers:{data:function(){var n=function(n,i){var o,r,h=n._columnsController.getColumns(),s,e,u,f=[];if(!i)return null;for(o=0;o<h.length;o++)s=null,r=h[o],r.allowFiltering&&r.calculateFilterExpression&&(u=r.lookup,u&&u.items?(e=r.parseValue.call(u,i),t.data.query(u.items).filter(r.calculateFilterExpression.call({dataField:u.displayExpr,dataType:u.dataType},e)).enumerate().done(function(n){for(var o=t.data.utils.compileGetter(u.valueExpr),e,i=0;i<n.length;i++)f.length>0&&f.push("or"),e=o(n[i]),f.push(r.calculateFilterExpression(e))})):(e=r.parseValue?r.parseValue(i):i,e!==undefined&&(s=r.calculateFilterExpression(e),s&&(f.length>0&&f.push("or"),f.push(s)))));return f};return{publicMethods:function(){return this.callBase().concat(["searchByText"])},_calculateAdditionalFilter:function(){var i=this,t=i.callBase(),r=n(i,i._searchText);return r&&(t=t?[t,"and",r]:r),t},searchByText:function(n){var t=this;t._searchText!==n&&(t._searchText=n,t._applyFilter())},getSearchText:function(){return this._searchText||""}}}()},views:{headerPanel:function(){var t=function(n){return n.option("searchPanel")};return{_renderSearchPanel:function(){var i=this,e=i._element(),f=i.getController("data"),r=t(i);r&&r.visible?(i._$searchPanel?i._$searchPanel.show():i._$searchPanel=n("<div/>").addClass(u).prependTo(e),i.getController("editorFactory").createEditor(i._$searchPanel,{width:r.width,placeholder:r.placeholder,parentType:"searchPanel",value:f.getSearchText(),setValue:function(n){f.searchByText(n)}}),i.resize()):i._$searchPanel&&i._$searchPanel.hide()},_renderCore:function(){this.callBase(),this._renderSearchPanel()},focus:function(){var n=this._$searchPanel.dxTextBox("instance");n&&n.focus()},isVisible:function(){var n=t(this);return this.callBase()||n&&n.visible}}}()}}})}(jQuery,DevExpress),function(n,t){var w=t.ui,i=t.utils,r=w.dataGrid,st="dx-datagrid-text-content",o="dx-group-row",s="dx-datagrid-search-text",h="dx-datagrid-rowsview",b="dx-datagrid-table-content",c="dx-datagrid-table",k="dx-row",d="dx-data-row",u="dx-freespace-row",l="dx-datagrid-bottom-load-panel",a="dx-datagrid-nodata",v="dx-datagrid-group-space",g="dx-datagrid-group-opened",nt="dx-datagrid-group-closed",y="dx-datagrid-content",tt="dx-datagrid-nowrap",it="dx-row-lines",f="dx-column-lines",rt="dx-row-alt",ut="dx-editor-cell",e=25e4,ft=200,et=function(n,i){var r={value:n,valueText:t.formatHelper.format(n,i.format,i.precision)||""};return i.customizeText?i.customizeText.call(i,r):r.valueText},ot={render:function(n,t){n.append(t)}},p=function(n){var i=n.option("scrolling.useNativeScrolling"),r={direction:"both",rtlEnabled:n.option("rtlEnabled")||t.rtlEnabled,disabled:n.option("disabled"),bounceEnabled:!1,useKeyboard:!1};return i===undefined&&(i=!0),i!=="auto"&&(r.useNative=!!i,r.useSimulatedScrollbar=!i),r};r.createScrollableOptions=p,r.RowsView=r.ColumnsView.inherit({_getDefaultTemplate:function(n){var t=this;switch(n.command){case"group":return function(n,r){if(!i.isDefined(r.value)||r.data&&r.data.isContinuation)n.addClass(v);else n.addClass(r.value?g:nt).on("dxclick",t.createAction(function(){t._dataController.changeGroupExpand(r.values)}))};case"empty":return function(n){n.html("&nbsp;")};default:return function(t,i){var r=!i.text&&i.rowType==="data",u=r?"&nbsp;":i.text;n.encodeHtml&&!r?t.text(u):t.html(u)}}},_getDefaultGroupTemplate:function(){var n=this;return function(t,i){var u=i.data,r=i.column.caption+": "+i.text;u&&(i.groupContinuedMessage&&i.groupContinuesMessage?r+=" ("+i.groupContinuedMessage+". "+i.groupContinuesMessage+")":i.groupContinuesMessage?r+=" ("+i.groupContinuesMessage+")":i.groupContinuedMessage&&(r+=" ("+i.groupContinuedMessage+")")),t.css("text-align",n.option("rtlEnabled")?"right":"left").text(r)}},_update:function(){},_createRow:function(n){var i=this.callBase(),r,t;return n&&(r=n.rowType==="group",t=n.rowType==="data",i.toggleClass(d,t).toggleClass(rt,t&&n.dataIndex%2==1&&this.option("rowAlternationEnabled")).toggleClass(it,t&&this.option("showRowLines")).toggleClass(f,this.option("showColumnLines")).toggleClass(o,r)),i},_highlightSearchText:function(t,i){var f=this,u,e,r=f._dataController.getSearchText();r&&f.option("searchPanel.highlightSearchText")&&(e=n("<div>").text(r).html(),u=t.parent(),u.length||(u=n("<div>").append(t)),n.each(u.find(":dxicontains('"+r+"')"),function(t,u){n.each(n(u).contents(),function(t,u){if(u.nodeType===3){var f=function(t,i){var e=n("<span />").addClass(s),r=t.text(),u=r.toLowerCase().indexOf(i.toLowerCase());if(u>=0)return t[0].textContent?t[0].textContent=r.substr(0,u):t[0].nodeValue=r.substr(0,u),t.after(e.text(r.substr(u,i.length))),t=n(document.createTextNode(r.substr(u+i.length))).insertAfter(e),f(t,i)};i?n(u).text().toLowerCase()===r.toLowerCase()&&n(this).replaceWith(n("<span />").addClass(s).text(n(u).text())):f(n(u),r)}})}))},_renderTemplate:function(t,r,u){var f=this;if(n.isFunction(r))return r(t,u),!0;if(i.isString(r)&&(f._templatesCache[r]||(f._templatesCache[r]=f.getTemplate(r)),r=f._templatesCache[r],r)){if(r.allowRenderToDetachedContainer)return r.render(t,u),!0;f._delayedTemplates.push({template:r,container:t,options:u})}return!1},_getColumnTemplate:function(n){var r=this,t=n.column,i;return i=t.groupIndex!==undefined?t.groupCellTemplate||r._getDefaultGroupTemplate():t.cellTemplate||r._getDefaultTemplate(t)},_updateCell:function(n,t){var r=this,i=t.column,u=i.dataType!=="string";i.allowFiltering&&r._highlightSearchText(n,u),t.rowType==="data"&&i.groupIndex===undefined&&r._cellPrepared(n,t)},_createCell:function(t,r,u,f,e){var h=this,a,c=h.option("grouping"),v=this.option("scrolling.mode"),o=r&&r.data,y=f.lookup?f.lookup.calculateCellValue(t):t,l=n("<td />").addClass(f.cssClass),s={value:t,displayValue:y,row:r,key:r&&r.key,data:o,rowType:r&&r.rowType,values:r&&r.values,text:et(y,f),rowIndex:u,columnIndex:e,column:f,resized:f.resizedCallbacks};return i.isDefined(f.groupIndex)&&v!=="virtual"&&v!=="infinite"&&(s.groupContinuesMessage=o&&o.isContinuationOnNextPage&&c&&c.groupContinuesMessage,s.groupContinuedMessage=o&&o.isContinuation&&c&&c.groupContinuedMessage),a=h._getColumnTemplate(s),h._renderTemplate(l,a,s)&&h._updateCell(l,s),l},_cellPrepared:function(t,r){var u=this,e=u.option("cellPrepared"),o=r.column.alignment,f=function(t){return{cellElement:n(t.target).closest("td"),jQueryEvent:t,eventType:t.type}};if(o&&(t[0].style.textAlign=o),u.option("cellClick"))t.on("dxclick",function(t){u.executeAction("cellClick",n.extend({},r,f(t)))});if(u.option("cellHoverChanged")){t.on("mouseover",function(t){u.executeAction("cellHoverChanged",n.extend({},r,f(t)))});t.on("mouseout",function(t){u.executeAction("cellHoverChanged",n.extend({},r,f(t)))})}i.isFunction(e)&&e(t,r)},_rowPrepared:function(n,t){var u=this,r=u.option("rowPrepared");i.isFunction(r)&&r(n,t)},_renderScrollable:function(n){var t=this,r=t._element();i.isDefined(t._tableElement)||(t._tableElement=n,r.children().length||r.append("<div />"),t._renderLoadPanel(r),t._renderScrollableCore(r),t._subscribeToWindowScrollEvents(r))},_renderScrollableCore:function(n){var t=this,i=p(t),r=function(n){var i=t._findContentElement();t._hasHeight&&t._rowHeight&&(t._scrollTop=n.scrollOffset.top,t._dataController.setViewportItemIndex(t._scrollTop/t._rowHeight)),t.scrollOffsetChanged.fire(n.scrollOffset)};i.scrollAction=r,i.stopAction=r,n.dxScrollable(i),t._scrollable=n.data("dxScrollable"),t._scrollableContainer=t._scrollable._$container},_renderLoadPanel:function(t){var r=this,i;t.dxLoadPanel&&(i=r.option("loadPanel"),i&&i.enabled?(i=n.extend({shading:!1,message:i.text,position:{of:t},targetContainer:t},i),r._loadPanel?r._loadPanel.option(i):r._loadPanel=n("<div />").appendTo(t.parent()).dxLoadPanel(i).dxLoadPanel("instance")):(r._loadPanel&&r._loadPanel._element().remove(),r._loadPanel=null))},_subscribeToWindowScrollEvents:function(t){var i=this,u=i.disposing,o=i.component._element(),r,f,e;if(o&&!i._windowScrollEvents)for(i._windowScrollEvents=!0,f=function(n,r){var u=function(){var f,u=n.scrollTop();!i._hasHeight&&i._rowHeight&&(u-=t.offset().top,u=u>0?u:0,i._scrollTop=u,i._dataController.setViewportItemIndex(u/i._rowHeight))};return r?function(n){u(n),r(n)}:u},e=function(t){var r=t.data("dxScrollable"),i,e;if(r)e=r.option("scrollAction"),i=f(t,e),r.option("scrollAction",i),u&&u.add(function(){r.option("scrollAction")===i&&r.option("scrollAction",e)});else if(t.is(document)||t.css("overflow-y")==="auto"){t.is(document)&&(t=n(window)),i=f(t);t.on("scroll",i);u&&u.add(function(){t.off("scroll",i)})}},r=i.component._element().parent();r.length;r=r.parent())e(r)},_renderContent:function(t,i){var r=this,t,f,u=r._dataController.virtualItemsCount();return r._tableElement=i,t.addClass(y),u?(i.addClass(b),t.children().length?t.children().first().replaceWith(i):t.append(i),t.children().length===1&&(t.append(r._createTable()),r._contentHeight=0)):t.replaceWith(n("<div>").addClass(y).append(i)),t},_updateContentPosition:function(){var n=this,r,i,f=n._rowHeight||20,u=n._dataController.virtualItemsCount();u&&(r=n._findContentElement(),t.translator.move(r.children().first(),{top:Math.floor(u.begin*f)}),i=(u.begin+u.end)*f+r.children().first().outerHeight(),(n._contentHeight!==i||i===0)&&(n._contentHeight=i,n._updateContainerHeight(r.children().eq(1),i)))},setColumnWidths:function(n){this._setColumnWidthsCore(this._findContentElement().children(),n)},_updateContent:function(n,t){var i=this,r=i._findContentElement(),f=i._rowHeight||20,u,e=i._dataController.virtualItemsCount();i.setColumnWidths(),t==="append"||t==="prepend"?(u=r.children().first(),n.find("tr")[t==="append"?"appendTo":"prependTo"](u)):i._renderContent(r,n),i._updateBottomLoading()},_renderFreeSpaceRow:function(n,t){var e=this,r,o=e._createRow().hide(),s;for(o.addClass(u).toggleClass(f,e.option("showColumnLines")),r=0;r<t.length;r++)s={command:i.isDefined(t[r].groupIndex)?"group":"",cssClass:i.isDefined(t[r].cssClass)?t[r].cssClass:""},o.append(e._createCell(null,null,null,s));e._appendRow(n,o),e._freeSpaceRowElement=o},_updateRowHeight:function(){var t=this,i,r=t._element(),u=t._dataController.items().length,f=t._rowHeight,e;r&&u>0&&(!f||t.option("scrolling.mode")==="infinite")&&(i=t._tableElement.outerHeight(),t._freeSpaceRowElement&&t._freeSpaceRowElement.is(":visible")&&(i-=t._freeSpaceRowElement.outerHeight()),t._rowHeight=i/u,!f&&t._rowHeight&&(t._updateContentPosition(),e=t._hasHeight?r.outerHeight():n(window).outerHeight(),t._dataController.setViewportSize(Math.round(e/t._rowHeight))))},_updateContainerHeight:function(n,t){for(var l=this,s=l._columnsController.getVisibleColumns(),h=n.find("colgroup").prop("outerHTML")||r.createColGroup(s).prop("outerHTML"),a="",p=l.option("showColumnLines")?f:"",y=function(n){return'<tr style="height:'+n+'px;" class="'+u+" "+k+" "+p+'" >'+a+"<\/tr>"},o=0;o<s.length;o++)a+=i.isDefined(s[o].groupIndex)?'<td class="'+v+'"/>':"<td />";while(t>e)h+=y(e),t-=e;h+=y(t),n.addClass(c),n.html(h)},_findContentElement:function(){var t=this._element(),n;if(t)return n=t.find(".dx-scrollable-content"),n||(n=t),n.children().first()},_findBottomLoadPanel:function(){var n=this._element().find("."+l);if(n.length)return n},_getRowElements:function(){return this._element().find(".dx-row:not(."+u+")")},_updateBottomLoading:function(){var i=this,r=i.option("scrolling"),u=r&&r.mode==="virtual",f=r&&r.mode==="infinite",e=!i._dataController.hasKnownLastPage()&&i._dataController.isLoaded()&&(u||f),t=i._findBottomLoadPanel();e?(t=t||n("<div />").addClass(l).append(n("<div />").dxLoadIndicator()),t.appendTo(i._findContentElement()),t.show()):t&&t.hide()},_appendRow:function(n,t){var i=this;i.option("rowTemplate")&&i._delayedTemplates.length&&t?i._delayedTemplates.push({container:n,template:ot,options:t}):n.append(t)},_updateNoDataText:function(){var t=this._element().find("."+a),u=!this._dataController.items().length,f=this._dataController.isLoading(),i=this.option("rtlEnabled"),r={};t.length||(t=n("<span>").addClass(a).hide().appendTo(this._element())),t.text(this.option("noDataText")),r={marginTop:-Math.floor(t.height()/2),marginRight:i?-Math.floor(t.width()/2):0,marginLeft:i?0:-Math.floor(t.width()/2)},t.css(r),u&&!f?t.show():t.hide()},_createTable:function(){var t=this;return t.callBase().on("dxclick",".dx-row",t.createAction(function(i){var r=i.jQueryEvent;n(r.target).closest("."+ut).length||n(r.target).closest("a").length||(t._rowClick(t.getRowIndex(r.currentTarget),r),r.preventDefault())}))},_rowClick:function(i,r){var u=this._dataController.items()[i]||{};this.executeAction("rowClick",n.extend({rowIndex:i,columns:this._columnsController.getVisibleColumns(),jQueryEvent:r,rowElement:n(r.target).closest(".dx-row"),evaluate:function(n){var i=t.data.utils.compileGetter(n);return i(u.data)}},u))},_renderTable:function(t){var f=this,k=t.length,u,c,v,p,w,e,s,a,h=[],b=0,o=f._columnsController.getVisibleColumns(),y=f.option("rowTemplate"),d=f.option("scrolling.mode"),l=f._createTable();for(l.append(r.createColGroup(o)),e=0;e<o.length;e++)if(o[e].groupIndex!==undefined){b=e;break}for(e=0;e<k;e++){if(u=t[e],u.rowIndex=e,h=[],u.groupIndex!==undefined){for(c=f._createRow(u),a=u.groupIndex+b,s=0;s<a;s++)h.push(f._createCell(null,u,e,{command:"group"}));o[a].allowCollapsing&&d!=="infinite"?h.push(f._createCell(!!u.isExpanded,u,e,{command:"group"})):h.push(f._createCell(null,u,e,{command:"group"})),v=f._createCell(u.values[u.groupIndex],u,e,o[a]),v.attr("colspan",o.length-a-1),h.push(v)}else if(y)f._renderTemplate(l,y,n.extend({columns:o},u));else for(p=u.values,w=o.length,c=f._createRow(u),s=0;s<w;s++)h.push(f._createCell(p[s],u,e,i.isDefined(o[s].groupIndex)?{command:"group"}:o[s],s));h.length&&c.append(h),c&&f._rowPrepared(c,n.extend({columns:o},u)),f._appendRow(l,c)}return y&&f._highlightSearchText(l),f._renderFreeSpaceRow(l,o),l},_renderCore:function(n){var t=this,f=n&&n.items||t._dataController.items(),e=n&&n.changeType,r=t._element(),u=r.parent(),i;r.addClass(h).toggleClass(tt,!t.option("wordWrapEnabled")),i=t._renderTable(f),t._renderScrollable(i),t._updateContent(i,e),(!u||u.parent().length)&&t.renderDelayedTemplates(),t._updateContentPosition(),t._lastColumnWidths=null},getRowIndex:function(n){return this._getRowElements().index(n)},getRow:function(t){var i=this._getRowElements();if(i.length>t)return n(i[t])},getCell:function(t,i){var u=this._getRowElements(),r;if(u.length>0&&i>=0&&(i=i<u.length?i:u.length-1,r=u[i].cells,r&&r.length>0))return n(r[r.length>t?t:r.length-1])},getTableFromCell:function(n){return n.closest("."+h+" ."+c)},updateFreeSpaceRowHeight:function(){var n=this,u,f=n._findContentElement(),e=0,t,i,r;n._freeSpaceRowElement&&f&&(n._freeSpaceRowElement.hide(),u=n._element().height(),e=f.outerHeight(),r=u-e-n.getScrollbarWidth(!0),n._dataController.items().length>0&&(r>0?(n._freeSpaceRowElement.height(r),n._freeSpaceRowElement.show()):n._hasHeight||(t=n._dataController.pageSize()-n._dataController.items().length,i=n.option("scrolling.mode"),t>0&&n._dataController.pageCount()>1&&i!=="virtual"&&i!=="infinite"&&(n._freeSpaceRowElement.height(t*n._rowHeight),n._freeSpaceRowElement.show()))))},ctor:function(t){this.callBase(t),this.scrollOffsetChanged=n.Callbacks()},init:function(){var t=this,i;t.callBase(),t._editorFactoryController=t.getController("editorFactory"),t._editorFactoryController&&t._editorFactoryController.focused.add(function(n){t._scrollable&&t._scrollable.scrollToElement(n)}),t._dataController=t.getController("data"),t._columnsController.columnsChanged.add(function(u){var f,e,o;r.checkChanges(u.optionNames,["width"])&&(e=u.column,i=t._columnsController.getVisibleIndex(u.columnIndex),i!==-1&&(o=t._findContentElement().children(),n.each(o,function(t,r){n(r).find("col").eq(i).css("width",e.width)}),u.column.resizedCallbacks&&u.column.resizedCallbacks.fire(e.width),f=t.getController("editorFactory"),f&&f.focus(f.focus())))}),t._rowHeight=0,t._scrollTop=0,t._hasHeight=!1,t._dataController.changed.add(function(n){switch(n.changeType){case"refresh":case"prepend":case"append":t.render(null,n);break;default:t._update(n)}}),t._dataController.loadingChanged.add(function(n,i){t.setLoading(n,i)}),t._delayedTemplates=[],t._templatesCache={},t.createAction("rowClick",{validatingTargetName:"rowElement"}),t.createAction("cellClick",{validatingTargetName:"cellElement"}),t.createAction("cellHoverChanged",{excludeValidators:["gesture"]})},publicMethods:function(){return["isScrollbarVisible","getTopVisibleRowData"]},renderDelayedTemplates:function(){for(var n,t=this._delayedTemplates;t.length;)n=t.shift(),n.template.render(n.container,n.options),n.options.column&&this._updateCell(n.container,n.options)},getScrollbarWidth:function(n){var t=this._scrollableContainer&&this._scrollableContainer.get(0),i=0;return t&&(i=n?t.offsetHeight-t.clientHeight:t.offsetWidth-t.clientWidth),i},resize:function(){for(var n=this,e=n._lastColumnWidths||[],u=n.getColumnWidths(),r=n._columnsController.getVisibleColumns(),f,t=0;t<r.length;t++)r[t].resizedCallbacks&&!i.isDefined(r[t].groupIndex)&&e[t]!==u[t]&&r[t].resizedCallbacks.fire(u[t]);n._lastColumnWidths=u,n._updateRowHeight(),n._updateNoDataText(),n.updateFreeSpaceRowHeight(),f=n._element().data("dxScrollable"),f&&f.update(),n.callBase()},scrollToPage:function(n){var t=this,r=t.option("scrolling.mode"),u=t._dataController,f=u?u.pageSize():0,i;i=r==="virtual"||r==="infinite"?n*t._rowHeight*f:0,t.scrollTo({y:i,x:0})},scrollTo:function(n){var t=this._element(),i=t&&t.data("dxScrollable");i&&i.scrollTo(n)},height:function(n){var r=this,t=this._element();if(i.isDefined(n))r._hasHeight=n!=="auto",t&&t.height(n),r._freeSpaceRowElement&&r._freeSpaceRowElement.hide();else return t?t.height():0},setLoading:function(n,t){var i=this,r=i._loadPanel,f=i._dataController,s=!!i._findBottomLoadPanel()&&f.isLoaded(),e=i.option("loadPanel")||{},h=f.isLoaded()?e.animation:null,o=s?!1:n,u;r&&(u={message:t||e.text,animation:h,visible:o},clearTimeout(i._hideLoadingTimeoutID),r.option("visible")&&!o?i._hideLoadingTimeoutID=setTimeout(function(){r.option(u)},ft):r.option(u),i._updateNoDataText())},isScrollbarVisible:function(){var n=this._element();return n?this._findContentElement().outerHeight()-n.height()>0:!1},setRowsOpacity:function(t,i){var r=this,u=r._getRowElements().not("."+o)||[];n.each(u,function(r,u){n(u).children().eq(t).css({opacity:i})})},getTopVisibleItemIndex:function(){for(var t=this,r=0,i=0,e=t._getRowElements(),u=t._scrollTop,o=t._findContentElement().offset().top,f=t._dataController.items(),n=0;n<f.length;n++)if(r=i,i=e.eq(n).offset().top-o,i>u){u*2<i+r&&n&&n--;break}return n&&n===f.length&&n--,n},getTopVisibleRowData:function(){var n=this.getTopVisibleItemIndex(),t=this._dataController.items();if(t[n])return t[n].data},optionChanged:function(n){var r=this;switch(n){case"wordWrapEnabled":case"hoverStateEnabled":case"showColumnLines":case"showRowLines":case"rowAlternationEnabled":case"rowTemplate":case"cellPrepared":case"rowPrepared":r.render(),r.component.resize();break;case"scrolling":case"rtlEnabled":r._rowHeight=null,r._tableElement=null;break;case"disabled":case"loadPanel":r._tableElement=null,r.render(),r.component.resize();break;case"noDataText":r._updateNoDataText();break;case"cellHoverChanged":r.createAction("cellHoverChanged",{excludeValidators:["gesture"]}),r.render(),r.component.resize();break;case"rowClick":r.createAction("rowClick",{validatingTargetName:"rowElement"});break;case"cellClick":r.createAction("cellClick",{validatingTargetName:"cellElement"})}},dispose:function(){clearTimeout(this._hideLoadingTimeoutID)}}),r.registerModule("rows",{defaultOptions:function(){return{hoverStateEnabled:!1,cellHoverChanged:null,scrolling:{mode:"standard",preloadEnabled:!1,useNativeScrolling:"auto"},loadPanel:{enabled:!0,text:Globalize.localize("Loading"),width:200,height:70,showIndicator:!0,indicatorSrc:"",showPane:!0},rowClick:null,cellClick:null,rowTemplate:null,columnAutoWidth:!1,noDataText:Globalize.localize("dxDataGrid-noDataText"),wordWrapEnabled:!1,showColumnLines:!0,showRowLines:!1,rowAlternationEnabled:!1,cellPrepared:null,rowPrepared:null,activeStateEnabled:!1}},views:{rowsView:r.RowsView},extenders:{controllers:{data:{_applyFilter:function(){var t=this,n=t.callBase();return n&&n.done&&n.done(function(){t.getView("rowsView").scrollToPage(0)}),n},pageIndex:function(n){var i=this,t=i.callBase(n);return t&&t.done&&t.done(function(){i.getView("rowsView").scrollToPage(i.pageIndex())}),t},pageSize:function(n){var i=this,t=i.callBase(n);return t&&t.done&&t.done(function(){i.getView("rowsView").scrollToPage(i.pageIndex())}),t},_refreshDataSource:function(){var n=this,t=function(){n.changed.remove(t),n.getView("rowsView").scrollToPage(0)};n.changed.add(t),n.callBase()}}}}})}(jQuery,DevExpress),function(n,t){var r=t.ui,o=r.events,u=t.utils,i=r.dataGrid,f="dx-datagrid-pager",e=10;i.PagerView=i.View.inherit({init:function(){var n=this,t=n.getController("data");n._isVisible=!1,t.changed.add(function(){n.render()})},_getPager:function(){var n=this._element();return n&&n.data("dxPager")},_renderCore:function(){var t=this,r=t._element().addClass(f),i=t.option("pager"),n=t.getController("data"),u=t.option("rtlEnabled");r.dxPager({maxPagesCount:e,pageIndex:n.pageIndex()+1,pagesCount:n.pageCount(),pageSize:n.pageSize(),showPageSizes:i&&i.showPageSizeSelector,pageSizes:t.getPageSizes(),rtlEnabled:u,hasKnownLastPage:n.hasKnownLastPage(),pageIndexChanged:function(t){window.setTimeout(function(){n.pageIndex(t-1)})},pageSizeChanged:function(t){window.setTimeout(function(){n.pageSize(t)})}})},getPageSizes:function(){var t=this,e=t.getController("data"),r=t.option("pager"),f=r&&r.allowedPageSizes,i=e.pageSize();return u.isDefined(t._pageSizes)&&n.inArray(i,t._pageSizes)!==-1||(t._pageSizes=[],r&&(n.isArray(f)?t._pageSizes=f:f&&i>1&&(t._pageSizes=[Math.floor(i/2),i,i*2]))),t._pageSizes},isVisible:function(){var n=this,i=n.getController("data"),u=n.option("pager"),t=u&&u.visible,r=n.option("scrolling");return n._isVisible?!0:(t==="auto"&&(t=r&&(r.mode==="virtual"||r.mode==="infinite")?!1:i.pageCount()>1||i.isLoaded()&&!i.hasKnownLastPage()),n._isVisible=t,t)},getHeight:function(){var n=this._getPager();return n&&this.isVisible()?n.getHeight():0},optionChanged:function(n){var r=this;switch(n){case"paging":case"pager":r._pageSizes=null;case"scrolling":r._isVisible=!1,r.render(),n==="pager"&&r.component&&r.component.resize()}}}),i.registerModule("pager",{defaultOptions:function(){return{paging:{enabled:!0,pageSize:undefined,pageIndex:undefined},pager:{visible:"auto",showPageSizeSelector:!1,allowedPageSizes:"auto"}}},views:{pagerView:i.PagerView}})}(jQuery,DevExpress),function(n,t){var i=t.ui.dataGrid,f=t.utils,e="dx-datagrid",o=100,s=50,r=["columnsSeparatorView","blockSeparatorView","trackerView","headerPanel","columnHeadersView","rowsView","columnChooserView","pagerView","draggingHeaderView","contextMenuView","errorView"],h=function(n,t){var r=[],i;if(n&&t&&n.length&&n.length===t.length)for(i=0;i<n.length;i++)r.push(n[i]>t[i]?n[i]:t[i]);return r},u=function(n){return f.isString(n)&&n.slice(-1)==="%"};i.createColGroup=function(t){for(var r=n("<colgroup />"),u=t.length,i=0;i<u;i++)n("<col />").width(t[i].width).appendTo(r);return r},i.GridView=i.View.inherit({_initResizeHandlers:function(){var n=this;n._refreshSizesHandler||(n._refreshSizesHandler=function(t){t&&t.changeType!=="refresh"&&t.changeType!=="append"||n.resize()},n._dataController.changed.add(n._refreshSizesHandler),n._columnHeadersView.sizeChanged.add(n._refreshSizesHandler))},_synchronizeColumns:function(){var t=this,o=t._rowsView.getColumnWidths(),s=t._columnHeadersView.getColumnWidths(),r={length:0},c=!1,l=!1,f=t.component._element(),a=t.option("width"),i=s?h(o,s):o,e;n.each(t._columnsController.getVisibleColumns(),function(n){this.width&&this.width!=="auto"||(c=!0),u(this.width)&&(l=!0),this.width&&this.width!=="auto"&&(i[n]=this.width,r[n]=!0,r.length++)}),f&&t._maxWidth&&(delete t._maxWidth,f.css("max-width","")),!c&&i.length&&(e=t._getTotalWidth(i,t._groupElement.width()-t._rowsView.getScrollbarWidth()),e<t._groupElement.width()-t._rowsView.getScrollbarWidth()&&(i[i.length-1]="auto",a&&a!=="auto"||l||(t._maxWidth=e,f.css("max-width",t._maxWidth)))),t.option("columnAutoWidth")&&i.length>0&&t._processStretch(i,t._groupElement.width()-t._rowsView.getScrollbarWidth(),r),t._rowsView.setColumnWidths(i),t._columnHeadersView.setColumnWidths(i)},_processStretch:function(n,t,i){var o=this._getTotalWidth(n,t),u,f,e,r;if(u=t-o,f=Math.floor(u/(n.length-i.length)),e=u-f*(n.length-i.length),u>=0)for(r=0;r<n.length;r++)i[r]||(n[r]+=f,r<e&&n[r]++)},_getTotalWidth:function(n,t){for(var f=0,i,r=0;r<n.length;r++)i=n[r],i&&(f+=u(i)?parseInt(i)*t/100:parseInt(i));return Math.round(f)},getView:function(n){return this.component._views[n]},getViews:function(){return this.component._views},resize:function(){var t=this,c=t._dataController,h=t._rootElement.height(),i=t.option("loadPanel"),u=t.option("height"),f,e;u&&t._hasHeight^u!=="auto"&&(e=n("<div>").height(u).appendTo(t._rootElement),t._hasHeight=!!e.height(),e.remove()),t._hasHeight&&h>0&&t.option("scrolling")?t._rowsView.height(h-t._headerPanel.getHeight()-t._columnHeadersView.getHeight()-t._pagerView.getHeight()):f=t._hasHeight||c.items().length!==0?"auto":i&&i.visible?i.height+s:o,t._rowsView.height(f),t._rowsView.resetColumnWidths(),t._columnHeadersView.resetColumnWidths(),t._columnHeadersView.setScrollerSpacing(t._rowsView.getScrollbarWidth()),t._synchronizeColumns(),n.each(r,function(n,i){var r=t.getView(i);r&&r.resize()})},optionChanged:function(n){switch(n){case"width":case"height":this.resize()}},init:function(){var n=this;n._dataController=n.getController("data"),n._columnsController=n.getController("columns"),n._columnHeadersView=n.getView("columnHeadersView"),n._headerPanel=n.getView("headerPanel"),n._rowsView=n.getView("rowsView"),n._pagerView=n.getView("pagerView"),n._rowsView.scrollOffsetChanged.add(function(t){n._columnHeadersView.scrollOffset(t.left)}),n._dataController.changed.add(function(){n.component._fireContentReadyAction()}),n._options={}},element:function(){return this._groupElement},render:function(t){var i=this,o,f,u=i._groupElement||n("<div />").addClass(e);i._rootElement=t||i._rootElement,o=!i._groupElement,i._groupElement=u,n.each(r,function(n,t){var r=i.getView(t);r&&r.render(u)}),o&&(i._hasHeight=!!i._rootElement.height(),i._groupElement=u,u.appendTo(i._rootElement),i._rowsView.renderDelayedTemplates()),i._initResizeHandlers(),i.resize(),f=i._dataController.isLoading(),f||i.component._fireContentReadyAction(),i._rowsView.setLoading(f)}}),i.registerModule("gridView",{views:{gridView:i.GridView}})}(jQuery,DevExpress),function(n,t){var s=t.ui,f=s.events,r=f.addNamespace,o=t.utils,i=s.dataGrid,h=t.fx,k="dx-datagrid-columns-separator",c="dx-datagrid-columns-separator-transparent",l="dx-datagrid-drag-header",d="dx-datagrid-text-content",g="dx-datagrid-action-cursor",a="dx-datagrid-tracker",v="dx-block-separator",y="dx-datagrid-drop-highlight",p="dx-header-row",nt="dx-widget",u="dxDataGridResizingReordering",tt=10,w=5,e=function(n){return n.option("allowColumnResizing")||n.getController("columns").isColumnOptionUsed("allowResizing")},b=function(n){return n.option("allowColumnReordering")||n.getController("columns").isColumnOptionUsed("allowReordering")};i.getPointsByColumns=function(n,t,i){for(var e=n.length,h=!1,o,u,f,c=[],l,s=0,r=0;r<=e;r++)r<e&&(u=n.eq(s),f=u.offset(),l=u.css("direction")==="rtl"),o={index:r,x:f?f.left+(!i&&l^r===e?u.outerWidth():0):0,y:f?f.top+(i&&r===e?u.outerHeight():0):0,columnIndex:s},t&&(h=t(o)),h||c.push(o),s++;return c},i.TrackerView=i.View.inherit({_renderCore:function(){this.callBase(),this._element().addClass(a),this.hide()},init:function(){var t=this,n;t.callBase(),t.getController("tablePosition").positionChanged.add(function(i){n=t._element(),n&&n.hasClass(a)&&(n.css({top:i.top}),n.height(i.height))})},isVisible:function(){return e(this)},show:function(){this._element().show()},hide:function(){this._element().hide()},setHeight:function(n){this._element().height(n)}}),i.ColumnsSeparatorView=i.View.inherit({_isShown:!0,_renderCore:function(n){this.callBase(n),this._element().addClass(k),this._isShown=!0,this.hide()},_subscribeToEvent:function(){var t=this,n;t.getController("tablePosition").positionChanged.add(function(i){n=t._element(),n&&(n.css({top:i.top}),n.height(i.height))})},isVisible:function(){return this.option("showColumnHeaders")&&(b(this)||e(this))},init:function(){this.callBase(),this._isTransparent=e(this),this.isVisible()&&this._subscribeToEvent()},show:function(n){var i=this,t=this._element(),r=function(n){h.stop(t,!0),h.animate(t,{type:"slide",from:{width:0,display:n.display},to:n,duration:300,easing:"swing"})};t&&!i._isShown&&(n==="group"?r({width:"50px",display:"inline-block"}):n==="columnChooser"?r({width:"100%",display:"block"}):i._isTransparent?t.removeClass(c):t.show()),i._isShown=!0},hide:function(){var n=this._element();n&&this._isShown&&(this._isTransparent?n.addClass(c):n.hide()),this._isShown=!1},height:function(n){var t=this._element();if(t)if(o.isDefined(n))t.height(n);else return t.height()},width:function(n){var t=this._element();if(t)if(o.isDefined(n))t.width(n);else return t.width()},moveByX:function(n){var t=this._element();t&&t.css("left",n-this._parentElement().offset().left)},changeCursor:function(n){n=o.isDefined(n)?n:"";var t=this._element();t&&t.css("cursor",n)}}),i.BlockSeparatorView=i.ColumnsSeparatorView.inherit({_subscribeToEvent:function(){},_renderCore:function(n){this._isTransparent=!1,this.callBase(n),this._element().addClass(v).html("&nbsp;")},hide:function(){var t=this,n=this._parentElement();t.callBase(),n&&!n.children("."+v).length&&n.prepend(t._element())},isVisible:function(){var n=this.option("groupPanel"),t=this.option("columnChooser");return n&&n.visible||t&&t.enabled}}),i.DraggingHeaderView=i.View.inherit({_isDragging:!1,_getDropOptions:function(){var n=this;if(n._dragOptions)return{sourceColumnIndex:n._dragOptions.columnIndex,sourceColumnElement:n._dragOptions.columnElement,sourceLocation:n._dragOptions.sourceLocation,targetColumnIndex:n._dropColumnIndex,targetLocation:n._dropLocation}},_dropHeader:function(n){var r=n.jQueryEvent,t=r.data.that,i=t._controller;t._element().hide(),i&&t._isDragging&&i.drop(t._getDropOptions()),t._element().appendTo(t._parentElement()),t._dragOptions=null,t._isDragging=!1,document.onselectstart=t._onSelectStart||null},_getDraggingPanelByPos:function(t){var r=this,i;return n.each(r._dragOptions.draggingPanels,function(n,r){if(r){var u=r.getBoundingRect();if(u&&(u.bottom===undefined||t.y<u.bottom)&&(u.top===undefined||t.y>u.top)&&(u.left===undefined||t.x>u.left)&&(u.right===undefined||t.x<u.right))return i=r,!1}}),i},_pointCreated:function(n,t,i,r){var u=t[n.columnIndex],f=t[n.columnIndex-1];switch(i){case"columnChooser":return!0;case"headers":return r&&!r.allowReordering||(!u||!u.allowReordering)&&(!f||!f.allowReordering);default:return t.length===0}},_moveHeader:function(n){var v=n.jQueryEvent,t=v.data.that,l,u,y,p,b,k,o=f.eventData(v),s,d=t._controller,r,e,h=t._dragOptions,g,a,c,nt;if(t._isDragging){if(b=Math.abs(o.x-h.columnElement.offset().left-h.deltaX),k=Math.abs(o.y-h.columnElement.offset().top-h.deltaY),(t._element().is(":visible")||b>w||k>w)&&(t._element().show(),y=o.x-h.deltaX,p=o.y-h.deltaY,t._element().offset({left:y,top:p}),s=t._getDraggingPanelByPos(o),s))if(nt=t.option("rtlEnabled"),g=s.getName()==="columnChooser",c=g?"y":"x",l=s.getColumnElements()||[],u=i.getPointsByColumns(l,function(n){return t._pointCreated(n,s.getColumns(),s.getName(),h.sourceColumn)},c==="y"),t._dropLocation=s.getName(),u.length>0){for(r=0;r<u.length;r++)if(a=u[r+1]&&(u[r][c]+u[r+1][c])/2,a===undefined||(nt&&c==="x"?o[c]>a:o[c]<a)){t._dropColumnIndex=u[r].columnIndex,e=t._getDropOptions(),l[r]?e.targetColumnElement=l.eq(r):(e.targetColumnElement=l.last(),e.isLast=!0),e.posX=u[r].x,d.dock(e);break}}else t._dropColumnIndex=-1,e=t._getDropOptions(),d.dock(e);v.preventDefault()}},_subscribeToEvents:function(t){var i=this;i._moveHeaderAction=this.createAction(this._moveHeader,{excludeValidators:["gesture"]}),i._dropHeaderAction=this.createAction(this._dropHeader,{excludeValidators:["gesture"]});n(document).on(r("dxpointermove",u),{that:i,rootElement:t},i._moveHeaderAction);i._element().on(r("dxpointerup",u),{that:i},i._dropHeaderAction);n(document).on(r("dxpointerup",u),{that:i},i._dropHeaderAction)},_renderCore:function(){this._element().addClass(l+" "+d+" "+nt).css("display","none")},_afterRender:function(n){this._unsubscribeFromEvents(),this._subscribeToEvents(n)},_unsubscribeFromEvents:function(){this._dropHeaderAction&&(this._element().off(r("dxpointerup",u),this._dropHeaderAction),n(document).off(r("dxpointerup",u),this._dropHeaderAction)),this._moveHeaderAction&&n(document).off(r("dxpointermove",u),this._moveHeaderAction)},dispose:function(){this._dragOptions=null,this._unsubscribeFromEvents(),this._element().parent().find("."+l).remove()},isVisible:function(){var t=this.getController("columns"),n=t.getCommonSettings();return this.option("showColumnHeaders")&&(b(this)||n.allowGrouping||n.allowHiding)},init:function(){this.callBase(),this._controller=this.getController("draggingHeader")},drag:function(t){var r=this,i=t.columnElement;r._dragOptions=t,r._isDragging=!0,r._dropColumnIndex=t.columnIndex,r._dropLocation=t.sourceLocation,r._onSelectStart=document.onselectstart,document.onselectstart=function(){return!1},r._element().css({textAlign:i&&i.css("text-align"),height:i&&i.height(),width:i&&i.width(),whiteSpace:i&&i.css("white-space")}).addClass(g).text(t.sourceColumn.caption),r._element().appendTo(n(document.body))}}),i.ColumnsResizerViewController=i.ViewController.inherit({_pointCreated:function(n,t,i){var r,u;return n.index>0&&n.index<t?(n.columnIndex-=1,r=i[n.columnIndex]||{},u=i[n.columnIndex+1]||{},!(r.allowResizing&&u.allowResizing)):!0},_getTargetPoint:function(n,t,i){if(n)for(var r=0;r<n.length;r++)if(n[r].x-i<=t&&t<=n[r].x+i)return n[r];return null},_moveSeparator:function(n){var r=n.jQueryEvent,t=r.data,s=t._pointsByColumns,u=t._columnsSeparatorView.width(),e=t._columnsSeparatorView._element().offset(),h=u/2,o=t._$parentContainer.offset().left,i=f.eventData(r);t._isResizing?o<=i.x&&i.x<=o+t._$parentContainer.width()&&t._updateColumnsWidthIfNeeded(t._targetPoint.columnIndex,i.x)&&(t._columnsSeparatorView.moveByX(t._targetPoint.x+(i.x-t._resizingInfo.startPosX)),t._tablePositionController.update(),r.preventDefault()):(t._targetPoint=t._getTargetPoint(s,i.x,u),t._isReadyResizing=!1,t._columnsSeparatorView.changeCursor(),t._targetPoint&&e.top<=i.y&&e.top+t._columnsSeparatorView.height()>=i.y&&(t._columnsSeparatorView.changeCursor("col-resize"),t._columnsSeparatorView.moveByX(t._targetPoint.x-h),t._isReadyResizing=!0,r.preventDefault()))},_endResizing:function(n){var i=n.jQueryEvent,t=i.data;t._isResizing&&(t._updatePointsByColumns(),t._resizingInfo=null,t._columnsSeparatorView.hide(),t._columnsSeparatorView.changeCursor(),t._trackerView.hide(),t._isReadyResizing=!1,t._isResizing=!1)},_setupResizingInfo:function(n){var t=this,i=t._columnHeadersView.getHeaderElement(t._targetPoint.columnIndex),r=t._columnHeadersView.getHeaderElement(t._targetPoint.columnIndex+1);t._resizingInfo={startPosX:n,currentColumnWidth:i&&i.length>0?i.outerWidth():0,nextColumnWidth:r&&r.length>0?r.outerWidth():0}},_startResizing:function(n){var i=n.jQueryEvent,t=i.data,r=f.eventData(i);f.isTouchEvent(i)&&(t._targetPoint=t._getTargetPoint(t._pointsByColumns,r.x,tt),t._targetPoint&&(t._columnsSeparatorView.moveByX(t._targetPoint.x-t._columnsSeparatorView.width()/2),t._isReadyResizing=!0)),t._isReadyResizing&&(t._targetPoint,t._setupResizingInfo(r.x),t._columnsSeparatorView.show(),t._trackerView.show(),t._isResizing=!0,i.preventDefault())},_generatePointsByColumns:function(){var n=this,u=n._columnsController?n._columnsController.getVisibleColumns():[],t=n._columnHeadersView.getColumnElements(),r=[];t&&t.length>0&&(r=i.getPointsByColumns(t,function(i){return n._pointCreated(i,t.length,u)})),n._pointsByColumns=r},_unsubscribeFromEvents:function(){this._moveSeparatorHandler&&this._$parentContainer.off(r("dxpointermove",u),this._moveSeparatorHandler),this._startResizingHandler&&this._columnsSeparatorView._element().off(r("dxpointerdown",u),this._startResizingHandler),this._endResizingHandler&&(this._columnsSeparatorView._element().off(r("dxpointerup",u),this._endResizingHandler),n(document).off(r("dxpointerup",u),this._endResizingHandler))},_subscribeToEvents:function(){this._moveSeparatorHandler=this.createAction(this._moveSeparator,{excludeValidators:["gesture"]}),this._startResizingHandler=this.createAction(this._startResizing),this._endResizingHandler=this.createAction(this._endResizing,{excludeValidators:["gesture"]});this._$parentContainer.on(r("dxpointermove",u),this,this._moveSeparatorHandler);this._$parentContainer.on(r("dxpointerdown",u),this,this._startResizingHandler);this._columnsSeparatorView._element().on(r("dxpointerup",u),this,this._endResizingHandler);n(document).on(r("dxpointerup",u),this,this._endResizingHandler)},_updateColumnsWidthIfNeeded:function(n,t){var i,u=!1,f,r=this._columnsController.getVisibleColumns(),o=this._columnsSeparatorView.width(),e;return i=t-this._resizingInfo.startPosX,this.option("rtlEnabled")&&(i=-i),e=this._resizingInfo.currentColumnWidth+i,f=this._resizingInfo.nextColumnWidth-i,u=!(e<=o||f<=o),u&&(r[n]&&this._columnsController.columnOption(r[n].initialIndex,"width",Math.floor(e)),r[n+1]&&this._columnsController.columnOption(r[n+1].initialIndex,"width",Math.floor(f))),u},_updatePointsByColumns:function(){for(var i,r=this.option("rtlEnabled"),n,t=0;t<this._pointsByColumns.length;t++)i=this._pointsByColumns[t],n=this._columnHeadersView.getHeaderElement(i.columnIndex+1),n&&n.length>0&&(i.x=n.offset().left+(r?n.outerWidth():0))},init:function(){var n=this,i,t,r=function(t){n._scrollLeft!==t.left&&(n._scrollLeft=t.left,n._generatePointsByColumns())},u=function(){n._generatePointsByColumns()};n.callBase(),e(n)&&(n._columnsSeparatorView=n.getView("columnsSeparatorView"),n._columnHeadersView=n.getView("columnHeadersView"),n._trackerView=n.getView("trackerView"),n._rowsView=n.getView("rowsView"),n._columnsController=n.getController("columns"),n._tablePositionController=n.getController("tablePosition"),n._$parentContainer=n._columnsSeparatorView.component._element(),n._columnHeadersView.renderCompleted.add(u),n._columnHeadersView.resizeCompleted.add(u),n._columnsSeparatorView.renderCompleted.add(function(){n._unsubscribeFromEvents(),n._subscribeToEvents()}),n._rowsView.renderCompleted.add(function(){n._rowsView.scrollOffsetChanged.remove(r),n._rowsView.scrollOffsetChanged.add(r)}),i=n.getView("gridView"),t=n._rowsView.getScrollbarWidth()!==0,n.getController("tablePosition").positionChanged.add(function(){if(n._isResizing&&!n._rowsView.isResizing){var r=n._rowsView.getScrollbarWidth()!==0;t!==r?(t=r,i.resize()):(n._rowsView.updateFreeSpaceRowHeight(),n._columnHeadersView.processSizeChanged())}}))},dispose:function(){this._unsubscribeFromEvents()}}),i.TablePositionViewController=i.ViewController.inherit({update:function(){var n=this._columnHeadersView._element(),t=this._columnHeadersView?this._columnHeadersView.getHeight():0,i=this._rowsView?this._rowsView.height()-this._rowsView.getScrollbarWidth(!0):0;this.positionChanged.fire({height:t+i,top:n&&n.length>0?Math.floor(n[0].offsetTop):0})},init:function(){var n=this;n.callBase(),n._columnHeadersView=this.getView("columnHeadersView"),n._rowsView=this.getView("rowsView"),n._pagerView=this.getView("pagerView"),n._rowsView.resizeCompleted.add(function(){n.update()})},ctor:function(t){this.callBase(t),this.positionChanged=n.Callbacks()}}),i.DraggingHeaderViewController=i.ViewController.inherit({_subscribeToEvent:function(t,i){var e=this;n.each(i,function(o,s){if(s){var c=s.getColumnElements()||[],l=s.getName(),h=s.getColumns()||[];n.each(c,function(o,c){if(n(c).off(r("dxpointerdown",u)),s.allowDragging(h[o],i))n(c).on(r("dxpointerdown",u),e.createAction(function(r){var u=r.jQueryEvent,e=f.eventData(u);u.preventDefault(),t.drag({deltaX:e.x-n(u.currentTarget).offset().left,deltaY:e.y-n(u.currentTarget).offset().top,sourceColumn:h[o],columnIndex:o,columnElement:n(c),sourceLocation:s.getName(),draggingPanels:i})}))})}})},_getSeparator:function(n){return n==="headers"?this._columnsSeparatorView:this._blockSeparatorView},hideSeparators:function(){var n=this._blockSeparatorView,t=this._columnsSeparatorView;this._animationColumnIndex=null,n&&n.hide(),t&&t.hide()},init:function(){var n=this,t;n.callBase(),n._columnsController=n.getController("columns"),n._columnHeadersView=n.getView("columnHeadersView"),n._columnsSeparatorView=n.getView("columnsSeparatorView"),n._draggingHeaderView=n.getView("draggingHeaderView"),n._rowsView=n.getView("rowsView"),n._blockSeparatorView=n.getView("blockSeparatorView"),n._headerPanelView=n.getView("headerPanel"),n._columnChooserView=n.getView("columnChooserView"),t=function(){n._draggingHeaderView&&n._subscribeToEvent(n._draggingHeaderView,[n._columnChooserView,n._columnHeadersView,n._headerPanelView])},n._columnHeadersView.renderCompleted.add(t),n._headerPanelView.renderCompleted.add(t),n._columnChooserView.renderCompleted.add(t)},allowDrop:function(n){return this._columnsController.allowMoveColumn(n.sourceColumnIndex,n.targetColumnIndex,n.sourceLocation,n.targetLocation)},allowDragColumn:function(n,t,i){var r=n[t],u,f=0,e=function(n){return n.allowReordering||n.allowGrouping||n.allowHiding};if(!r)return!1;switch(i){case"headers":for(u=0;u<n.length;u++)e(n[u])&&f++;return f>1&&e(r);case"group":return r.allowGrouping;case"columnChooser":return r.allowHiding}},dock:function(n){var t=this,u=n.targetColumnIndex,f=n.sourceLocation,s=n.sourceColumnIndex,e=n.sourceColumnElement,r=n.targetLocation,i=t._getSeparator(r),o=u>=0,h=function(){t._animationColumnIndex!==u&&(t.hideSeparators(),i._element()[n.isLast?"insertAfter":"insertBefore"](n.targetColumnElement),t._animationColumnIndex=u,i.show(r))};t._columnHeadersView._element().find("."+p).first().toggleClass(y,f!=="headers"&&r==="headers"&&!o),i&&(e&&(e.css({opacity:.5}),f==="headers"&&t._rowsView.setRowsOpacity(s,.5)),t.allowDrop(n)&&o?r==="group"||r==="columnChooser"?h():(t.hideSeparators(),i.moveByX(n.posX-i.width()),i.show()):t.hideSeparators())},drop:function(n){var i=n.sourceColumnElement,t;i&&(i.css({opacity:""}),this._rowsView.setRowsOpacity(n.sourceColumnIndex,""),this._columnHeadersView._element().find("."+p).first().removeClass(y)),this.allowDrop(n)&&(t=this._getSeparator(n.targetLocation),t&&t.hide(),this._columnsController.moveColumn(n.sourceColumnIndex,n.targetColumnIndex,n.sourceLocation,n.targetLocation))}}),i.registerModule("columnsResizingReordering",{views:{columnsSeparatorView:i.ColumnsSeparatorView,blockSeparatorView:i.BlockSeparatorView,draggingHeaderView:i.DraggingHeaderView,trackerView:i.TrackerView},controllers:{draggingHeader:i.DraggingHeaderViewController,tablePosition:i.TablePositionViewController,columnsResizer:i.ColumnsResizerViewController}})}(jQuery,DevExpress),function(n,t){var r=t.ui,e=t.utils,i=r.dataGrid,u="dx-datagrid",f="dx-context-menu";i.ContextMenuView=i.View.inherit({viewNames:function(){return["columnHeadersView"]},_renderCore:function(){var t=this;t._element().addClass(f).dxContextMenu({positioningAction:function(i){var u=i.jQueryEvent,f=n(u.target),e=i.component,r=[];n.each(t.viewNames(),function(n,i){var e=t.getView(i),u=e.getContextMenuItems(f);if(u.length)return r=u,!1}),r.length?e.option("items",r):i.canceled=!0},itemClickAction:function(n){n.itemData.itemClickAction&&n.itemData.itemClickAction(n)},rtlEnabled:t.option("rtlEnabled"),cssClass:u,target:t.component._element()})}}),i.registerModule("contextMenu",{views:{contextMenuView:i.ContextMenuView}})}(jQuery,DevExpress),function(n,t){var f=t.ui,e=t.utils,i=f.events,r=f.dataGrid,o="dx-row",s="dx-group-row",u="batch",h="dx-datagrid-rowsview",c=["rowsView"];r.KeyboardNavigationController=r.ViewController.inherit({_focusView:function(n,t){n.focus(),this._focusedViews.viewIndex=t,this._focusedView=n},_initFocusedViews:function(){var t=this,r,u,f=t.createAction(function(i){var r=i.jQueryEvent,u=n(r.currentTarget);t._editingController.isEditing()||(t._isCellValid(u)?(u.focus(),t._focusView(r.data.view,r.data.viewIndex),t._updateFocusedCellPosition(u)):t._resetFocusedCell(t))});t._focusedViews=[],n.each(c,function(n,i){var r=t.getView(i);r.isVisible()&&t._focusedViews.push(r)}),n.each(t._focusedViews,function(n,e){e&&e.renderCompleted.add(function(){var s=e._element();s.off(i.addNamespace("dxpointerdown","dxDataGridKeyboardNavigation"),f);s.on(i.addNamespace("dxpointerdown","dxDataGridKeyboardNavigation"),"."+o+" td",{viewIndex:n,view:e},f);t._initKeyDownProcessor(t,s,t._keyDownHandler),t._focusedView&&t._focusedView.name===e.name&&t._isKeyDown&&(r=t._getFocusedCell(),r&&r.length>0&&(t._focusView(e,n),t.getController("editorFactory").focus()&&t._focus(r),setTimeout(function(){t._editingController.isEditing()?(u=r.find("input").first(),u.focus()):(r.attr("tabindex",0),r.focus())})))})})},_initKeyDownProcessor:function(n,t,i){this._keyDownProcessor&&(this._keyDownProcessor.dispose(),this._keyDownProcessor=null),this._keyDownProcessor=new f.HierarchicalKeyDownProcessor({element:t,context:n,handler:i})},_focusCell:function(n){var t=this;n&&(t.getController("editorFactory").focus(n),t._updateFocusedCellPosition(n))},_focusGroupRow:function(n){n&&(this.getController("editorFactory").focus(n),this._focusedCellPosition.rowIndex=this._focusedView.getRowIndex(n))},_getFocusedCell:function(){if(this._focusedView&&this._focusedCellPosition)return this._focusedView.getCell(this._focusedCellPosition.columnIndex,this._focusedCellPosition.rowIndex)},_updateFocusedCellPosition:function(n){var t=this;n.length>0&&(this._focusedCellPosition={columnIndex:n[0].cellIndex,rowIndex:n.parent().length>0&&t._focusedView?t._focusedView.getRowIndex(n.parent()):null})},_isCellValid:function(n){var t=this._columnsController.getVisibleColumns(),i=n[0].cellIndex;return t.length>i&&!(t[i].command||e.isDefined(t[i].groupIndex))},_isGroupRow:function(n){return n&&n.hasClass(s)},_focus:function(n){var t=n&&n.parent();this._isGroupRow(t)?this._focusGroupRow(t):this._focusCell(n)},_keyDownHandler:function(t){var s=this.option("editing"),f=this._editingController.isEditing(),e=this._dataController.pageIndex(),c=this._dataController.pageCount(),r=this._focusedCellPosition?this._focusedCellPosition.rowIndex:null,h=this._focusedView&&this._focusedView.getRow(r),i,o;this._isKeyDown=!0;switch(t.key){case"leftArrow":case"rightArrow":f||this._isGroupRow(h)||(i=this._getNextCell(t.key),i&&this._isCellValid(i)&&this._focusCell(i),t.originalEvent.preventDefault());break;case"upArrow":case"downArrow":f||(r===0||r===this._focusedView.getRowsCount()-1,i=this._getNextCell(t.key),i&&this._isCellValid(i)&&this._focus(i),t.originalEvent.preventDefault());break;case"pageUp":e>0&&(this._dataController.pageIndex(e-1),t.originalEvent.preventDefault());break;case"pageDown":e<c-1&&(this._dataController.pageIndex(e+1),t.originalEvent.preventDefault());break;case"space":this.option("selection")&&this.option("selection").mode!=="none"&&!f&&this._selectionController.changeItemSelection(r,{shift:t.shift,control:t.ctrl});break;case"A":t.ctrl&&this.option("selection.mode")==="multiple"&&this.option("selection.allowSelectAll")&&(this._selectionController.selectAll(),t.originalEvent.preventDefault());break;case"tab":f&&this._editingController.getEditMode()===u&&t.originalEvent.target&&(this._updateFocusedCellPosition(n(t.originalEvent.target).closest("td")),i=this._getNextCell("rightArrow"),this._focusCell(i),this._editingController.editCell(this._focusedCellPosition.rowIndex,this._focusedCellPosition.columnIndex),t.originalEvent.preventDefault());break;case"enter":this._isGroupRow(h)?this.option("grouping")&&this.option("grouping").allowCollapsing&&(o=this._dataController.getGroupPathByRowIndex(r),o&&this._dataController.changeGroupExpand(o)):s.editEnabled&&(f?(this._updateFocusedCellPosition(n(t.originalEvent.target).closest("td")),this._editingController.getEditMode()===u?this._editingController.closeEditCell():setTimeout(n.proxy(this._editingController.saveEditData,this._editingController))):this._editingController.getEditMode()===u?this._editingController.editCell(r,this._focusedCellPosition.columnIndex):this._editingController.editRow(r));break;case"escape":s.editEnabled&&f&&(this._updateFocusedCellPosition(n(t.originalEvent.target).closest("td")),this._editingController.getEditMode()===u?this._editingController.closeEditCell():this._editingController.cancelEditData(),t.originalEvent.preventDefault());break;case"F":t.ctrl&&this.option("searchPanel")&&this.option("searchPanel").visible&&(this._headerPanel.focus(),t.originalEvent.preventDefault())}},_getNextCell:function(n){if(this._focusedView&&this._focusedCellPosition){var t=this._focusedCellPosition.columnIndex,r=this.getController("columns").getVisibleColumns().length,i=this._focusedCellPosition.rowIndex;switch(n){case"rightArrow":t=t<r-1?t+1:t;break;case"leftArrow":t=t>0?t-1:t;break;case"upArrow":i=i>0?i-1:i;break;case"downArrow":i=i<this._dataController.items().length-1?i+1:i}return this._focusedView.getCell(t,i)}return null},_resetFocusedCell:function(n){var t=n._getFocusedCell();t&&t.attr("tabindex",null),n._focusedCellPosition=null,n._isKeyDown=!1},init:function(){var t=this;if(t.option("useKeyboard")){t._dataController=t.getController("data"),t._selectionController=t.getController("selection"),t._editingController=t.getController("editing"),t._headerPanel=t.getView("headerPanel"),t._pagerView=t.getView("pagerView"),t._columnsController=t.getController("columns"),t._focusedCellPosition={columnIndex:0,rowIndex:0},t._dataController.changed.add(function(n){t._focusedCellPosition&&n&&n.changeType==="prepend"&&(t._focusedCellPosition.rowIndex+=n.items.length)}),t._initFocusedViews(),t._documentClickHandler=t.createAction(function(i){n(i.jQueryEvent.target).closest("."+h).length||t._resetFocusedCell(t)});n(document).on(i.addNamespace("dxpointerdown","dxDataGridKeyboardNavigation"),t._documentClickHandler)}},dispose:function(){this.callBase(),this._focusedView=null,this._focusedViews=null,this._keyDownProcessor&&this._keyDownProcessor.dispose(),n(document).off(i.addNamespace("dxpointerdown","dxDataGridKeyboardNavigation"),this._documentClickHandler)}}),r.registerModule("keyboardNavigation",{defaultOptions:function(){return{useKeyboard:!0}},controllers:{keyboardNavigation:r.KeyboardNavigationController}})}(jQuery,DevExpress),function(n,t){var r=t.ui,u=t.utils,i=r.dataGrid;i.ErrorView=i.View.inherit({_renderCore:function(){this.toast({type:"error",displayTime:1e6,position:{my:"center",at:"center"},contentReadyAction:function(n){this.content().on("dxclick",function(){n.component.hide()})}})},toast:function(n){return this._element().dxToast(n||"instance")},isVisible:function(){return this.option("dataErrorVisible")},init:function(){var n=this,t=n.getController("data");t.dataErrorOccurred.add(function(t){var i=t&&t.message||t;n.isVisible()&&(n.toast({message:i}),n.toast().show())})}}),i.registerModule("errorHandling",{views:{errorView:i.ErrorView}})}(jQuery,DevExpress),DevExpress.MOD_WIDGETS_WEB=!0}if(!DevExpress.MOD_FRAMEWORK){if(!window.DevExpress)throw Error("Required module is not referenced: core");(function(n,t,i){var u=function(n,t,i){for(var u=[],r=0,f=n.length;r<f;r++)i(n[r],t)||u.push(n[r]);return u.push.apply(u,t),u},f=function(){return function(t,i){return u(t,i,function(t,i){return n.grep(i,function(n){var i=t.option("id")===n.option("id")&&n.option("id")||t.option("behavior")===n.option("behavior")&&t.option("behavior");return i&&t._element().remove(),i}).length})}},r=function(n,t,r){var u=t?t[r]:i;return n.option(r)||u},e=function(n,t){var i=!!n.option("icon")||n.option("iconSrc"),u=r(n,t,"title");return t.showText||!i?u:""},o=function(n,t,u){var f=!!n.option("title"),e=r(n,t,u);return t.showIcon||!f?e:i},s=function(n,t){return r(n,t,"type")};t.framework={utils:{mergeCommands:f(),commandToContainer:{resolveTypeValue:s,resolveIconValue:o,resolveTextValue:e,resolvePropertyValue:r}}}})(jQuery,DevExpress),function(n,t){var i=encodeURIComponent("json:"),r=t.Class;t.framework.Route=r.inherit({_trimSeparators:function(n){return n.replace(/^[\/.]+|\/+$/g,"")},_escapeRe:function(n){return n.replace(/\W/g,"\\$1")},_checkConstraint:function(n,t){n=String(n),typeof t=="string"&&(t=new RegExp(t));var i=t.exec(n);return!i||i[0]!==n?!1:!0},_ensureReady:function(){var t=this;if(this._patternRe)return!1;this._pattern=this._trimSeparators(this._pattern),this._patternRe="",this._params=[],this._segments=[],this._separators=[],this._pattern.replace(/[^\/]+/g,function(n,i){t._segments.push(n),i&&t._separators.push(t._pattern.substr(i-1,1))}),n.each(this._segments,function(n){var u=!0,i=this,r=n?t._separators[n-1]:"";i.charAt(0)===":"?(u=!1,i=i.substr(1),t._params.push(i),t._patternRe+="(?:"+r+"([^/]*))",i in t._defaults&&(t._patternRe+="?")):t._patternRe+=r+t._escapeRe(i)}),this._patternRe=new RegExp("^"+this._patternRe+"$")},ctor:function(n,t,i){this._pattern=n||"",this._defaults=t||{},this._constraints=i||{}},parse:function(t){var u=this,i,r;return(this._ensureReady(),i=this._patternRe.exec(t),!i)?!1:(r=n.extend({},this._defaults),n.each(this._params,function(n){var t=n+1;i.length>=t&&i[t]&&(r[this]=u.parseSegment(i[t]))}),n.each(this._constraints,function(n){if(!u._checkConstraint(r[n],u._constraints[n]))return r=!1,!1}),r)},format:function(t){var r=this,u="",c,o;this._ensureReady();var f=n.extend({},this._defaults),s=0,i=[],h=[],e={};return(n.each(t,function(n,i){t[n]=r.formatSegment(i),n in f||(e[n]=!0)}),n.each(this._segments,function(n,u){if(i[n]=n?r._separators[n-1]:"",u.charAt(0)===":"){var o=u.substr(1);if(!(o in t)&&!(o in r._defaults)||o in r._constraints&&!r._checkConstraint(t[o],r._constraints[o]))return i=null,!1;o in t?(t[o]!==undefined&&(f[o]=t[o],i[n]+=t[o],s=n),delete e[o]):o in f&&(i[n]+=f[o],h.push(n))}else i[n]+=u,s=n}),n.each(f,function(u,f){if(!!f&&n.inArray(":"+u,r._segments)===-1&&t[u]!==f)return i=null,!1}),c=0,n.isEmptyObject(e)||(u="?",n.each(e,function(n){u+=n+"="+t[n]+"&",c++}),u=u.substr(0,u.length-1)),i===null)?!1:(h.length&&n.map(h,function(n){n>=s&&(i[n]="")}),o=i.join(""),o=o.replace(/\/+$/,""),{uri:o+u,unusedCount:c})},formatSegment:function(t){return n.isArray(t)||n.isPlainObject(t)?i+encodeURIComponent(JSON.stringify(t)):encodeURIComponent(t)},parseSegment:function(t){if(t.substr(0,i.length)===i)try{return n.parseJSON(decodeURIComponent(t.substr(i.length)))}catch(r){}return decodeURIComponent(t)}}),t.framework.MvcRouter=t.Class.inherit({ctor:function(){this._registry=[]},_trimSeparators:function(n){return n.replace(/^[\/.]+|\/+$/g,"")},_createRoute:function(n,i,r){return new t.framework.Route(n,i,r)},register:function(n,t,i){this._registry.push(this._createRoute(n,t,i))},_parseQuery:function(t){var i={},r=t.split("&");return n.each(r,function(n,t){var r=t.split("=");i[r[0]]=decodeURIComponent(r[1])}),i},parse:function(t){var f=this,i;t=this._trimSeparators(t);var r=t.split("?",2),e=r[0],u=r[1];return n.each(this._registry,function(){var t=this.parse(e);if(t!==!1)return i=t,u&&(i=n.extend(i,f._parseQuery(u))),!1}),i?i:!1},format:function(t){var i=!1,r=99999;return t=t||{},n.each(this._registry,function(){var f=n.extend(!0,{},t),u=this.format(f);u!==!1&&r>u.unusedCount&&(r=u.unusedCount,i=u.uri)}),i}})}(jQuery,DevExpress),function(n,t){var i=t.ui;t.framework.dxCommand=t.DOMComponent.inherit({ctor:function(t,i){n.isPlainObject(t)&&(i=t,t=n("<div />")),this.beforeExecute=n.Callbacks(),this.afterExecute=n.Callbacks(),this.callBase(t,i)},_setDefaultOptions:function(){this.callBase(),this.option({action:null,id:null,title:"",icon:"",iconSrc:"",visible:!0,disabled:!1})},execute:function(){var i=this._options.disabled;if(n.isFunction(i)&&(i=!!i.apply(this,arguments)),i)throw new Error(t.utils.stringFormat("Cannot execute command: {0}",this._options.id));this.beforeExecute.fire(arguments),this._createActionByOption("action",{excludeValidators:["gesture"]}).apply(this,arguments),this.afterExecute.fire(arguments)},_render:function(){this.callBase(),this._element().addClass("dx-command")},_renderDisabledState:n.noop,_dispose:function(){this.callBase(),this._element().removeData(this.NAME),this.beforeExecute.empty(),this.afterExecute.empty()}}),t.registerComponent("dxCommand",t.framework.dxCommand)}(jQuery,DevExpress),function(n,t){t.framework.CommandMapping=t.Class.inherit({ctor:function(){this._commandMappings={},this._containerDefaults={}},setDefaults:function(n,t){return this._containerDefaults[n]=t,this},mapCommands:function(t,i){var r=this;return n.each(i,function(i,u){typeof u=="string"&&(u={id:u});var e=u.id,f=r._commandMappings[t]||{};f[e]=n.extend({showIcon:!0,showText:!0},r._containerDefaults[t]||{},u),r._commandMappings[t]=f}),this._initExistingCommands(),this},unmapCommands:function(t,i){var r=this;n.each(i,function(n,i){var u=r._commandMappings[t]||{};u&&delete u[i]}),this._initExistingCommands()},getCommandMappingForContainer:function(n,t){return(this._commandMappings[t]||{})[n]},checkCommandsExist:function(t){var r=this,i=n.grep(t,function(i,u){return n.inArray(i,r._existingCommands)<0&&n.inArray(i,t)===u});if(i.length!==0)throw new Error("The '"+i.join("', '")+"' command"+(i.length===1?" is":"s are")+" not registred in the application's command mapping. See http://dxpr.es/1bTjfj1 for more details.");},load:function(t){if(t){var i=this;return n.each(t,function(n,t){i.setDefaults(n,t.defaults),i.mapCommands(n,t.commands)}),this}},_initExistingCommands:function(){var t=this;this._existingCommands=[],n.each(t._commandMappings,function(i,r){n.each(r,function(i,r){n.inArray(r.id,t._existingCommands)<0&&t._existingCommands.push(r.id)})})}}),t.framework.CommandMapping.defaultMapping={"global-navigation":{defaults:{showIcon:!0,showText:!0},commands:[]},"ios-header-toolbar":{defaults:{showIcon:!1,showText:!0,location:"after"},commands:["edit","save",{id:"back",location:"before"},{id:"cancel",location:"before"},{id:"create",showIcon:!0,showText:!1}]},"ios-action-sheet":{defaults:{showIcon:!1,showText:!0},commands:[]},"ios-view-footer":{defaults:{showIcon:!1,showText:!0},commands:[{id:"delete",type:"danger"}]},"android-header-toolbar":{defaults:{showIcon:!0,showText:!1,location:"after"},commands:[{id:"back",showIcon:!1,location:"before"},"create","edit","save",{id:"cancel",showText:!0,location:"menu"},{id:"delete",showText:!0,location:"menu"}]},"android-simple-toolbar":{defaults:{showIcon:!0,showText:!1,location:"after"},commands:[{id:"back",showIcon:!1,location:"before"},{id:"create"},{id:"save",showText:!0,location:"before"},{id:"edit",showText:!0,location:"menu"},{id:"cancel",showText:!0,location:"menu"},{id:"delete",showText:!0,location:"menu"}]},"android-footer-toolbar":{defaults:{location:"after"},commands:[{id:"create",showText:!1,location:"center"},{id:"edit",showText:!1,location:"before"},{id:"delete",location:"menu"},{id:"save",showIcon:!1,location:"before"}]},"tizen-header-toolbar":{defaults:{showIcon:!0,showText:!1,location:"after"},commands:[{id:"back",showIcon:!1,location:"before"},"create","edit","save",{id:"cancel",showText:!0,location:"menu"},{id:"delete",showText:!0,location:"menu"}]},"tizen-footer-toolbar":{defaults:{location:"after"},commands:[{id:"create",showText:!1},{id:"edit",showText:!1,location:"before"},{id:"delete",location:"menu"},{id:"save",showIcon:!1,location:"before"}]},"tizen-simple-toolbar":{defaults:{showIcon:!0,showText:!1,location:"after"},commands:[{id:"back",showIcon:!1,location:"before"},{id:"create"},{id:"save",showText:!0,location:"before"},{id:"edit",showText:!0,location:"menu"},{id:"cancel",showText:!0,location:"menu"},{id:"delete",showText:!0,location:"menu"}]},"generic-header-toolbar":{defaults:{showIcon:!1,showText:!0,location:"after"},commands:["edit","save",{id:"back",location:"before"},{id:"cancel",location:"before"},{id:"create",showIcon:!0,showText:!1}]},"generic-view-footer":{defaults:{showIcon:!1,showText:!0},commands:[{id:"delete",type:"danger"}]},"win8-appbar":{defaults:{location:"after"},commands:["edit","cancel","save","delete",{id:"create",location:"before"},{id:"refresh",location:"before"}]},"win8-toolbar":{defaults:{showText:!1,location:"before"},commands:[{id:"previousPage"}]},"win8-phone-appbar":{defaults:{location:"center"},commands:["create","edit","cancel","save","refresh",{id:"delete",location:"menu"}]},"win8-split-toolbar":{defaults:{showIcon:!0,showText:!1,location:"after"},commands:[{id:"back",showIcon:!1,location:"before"},{id:"create"},{id:"save",showText:!0,location:"before"},{id:"edit",showText:!0,location:"menu"},{id:"cancel",showText:!0,location:"menu"},{id:"delete",showText:!0,location:"menu"}]},"win8-master-detail-toolbar":{defaults:{showText:!1,location:"before"},commands:["back"]},"desktop-toolbar":{defaults:{showIcon:!1,showText:!0,location:"after"},commands:["cancel","create","edit","save",{id:"delete",type:"danger"}]}}}(jQuery,DevExpress),function(n,t){var r=t.Class,u;t.framework.ViewCache=r.inherit({ctor:function(){this._cache={},this.viewRemoved=n.Callbacks()},setView:function(n,t){this._cache[n]=t},getView:function(n){return this._cache[n]},removeView:function(n){var t=this._cache[n];return t&&(delete this._cache[n],this.viewRemoved.fire({viewInfo:t})),t},clear:function(){var t=this;n.each(this._cache,function(n){t.removeView(n)})},hasView:function(n){return n in this._cache}}),t.framework.NullViewCache=t.framework.ViewCache.inherit({setView:function(n,t){this.callBase(n,t),this.removeView(n)}}),t.framework.ConditionalViewCacheDecorator=r.inherit({ctor:function(n){this._filter=n.filter,this._viewCache=n.viewCache,this.viewRemoved=this._viewCache.viewRemoved},setView:function(n,t){this._viewCache.setView(n,t),this._filter(n,t)||this._viewCache.removeView(n)},getView:function(n){return this._viewCache.getView(n)},removeView:function(n){return this._viewCache.removeView(n)},clear:function(){return this._viewCache.clear()},hasView:function(n){return this._viewCache.hasView(n)}}),u=10,t.framework.CapacityViewCacheDecorator=r.inherit({ctor:function(n){this._keys=[],this._size=n.size||u,this._viewCache=n.viewCache,this.viewRemoved=this._viewCache.viewRemoved},setView:function(n,t){this.hasView(n)||(this._keys.length==this._size&&this.removeView(this._keys[0]),this._keys.push(n)),this._viewCache.setView(n,t)},getView:function(t){var i=n.inArray(t,this._keys);return i<0?null:(this._keys.push(t),this._keys.splice(i,1),this._viewCache.getView(t))},removeView:function(t){var i=n.inArray(t,this._keys);return i>-1&&this._keys.splice(i,1),this._viewCache.removeView(t)},clear:function(){return this._keys=[],this._viewCache.clear()},hasView:function(n){return this._viewCache.hasView(n)}}),t.framework.HistoryDependentViewCacheDecorator=r.inherit({ctor:function(i){this._viewCache=i.viewCache||new t.framework.ViewCache,this._navigationManager=i.navigationManager,this._navigationManager.itemRemoved.add(n.proxy(this._onNavigationItemRemoved,this)),this.viewRemoved=this._viewCache.viewRemoved},_onNavigationItemRemoved:function(n){this.removeView(n.key)},setView:function(n,t){this._viewCache.setView(n,t)},getView:function(n){return this._viewCache.getView(n)},removeView:function(n){return this._viewCache.removeView(n)},clear:function(){return this._viewCache.clear()},hasView:function(n){return this._viewCache.hasView(n)}})}(jQuery,DevExpress),function(n,t){var r=t.Class;t.framework.MemoryKeyValueStorage=r.inherit({ctor:function(){this.storage={}},getItem:function(n){return this.storage[n]},setItem:function(n,t){this.storage[n]=t},removeItem:function(n){delete this.storage[n]}}),t.framework.StateManager=r.inherit({ctor:function(n){n=n||{},this.storage=n.storage||new t.framework.MemoryKeyValueStorage,this.stateSources=n.stateSources||[]},addStateSource:function(n){this.stateSources.push(n)},removeStateSource:function(t){var i=n.inArray(t,this.stateSources);i>-1&&(this.stateSources.splice(i,1),t.removeState(this.storage))},saveState:function(){var t=this;n.each(this.stateSources,function(n,i){i.saveState(t.storage)})},restoreState:function(){var t=this;n.each(this.stateSources,function(n,i){i.restoreState(t.storage)})},clearState:function(){var t=this;n.each(this.stateSources,function(n,i){i.removeState(t.storage)})}})}(jQuery,DevExpress),function(n,t){var u=t.Class,r="__root__",f="__buffer__";t.framework.DefaultBrowserAdapter=u.inherit({ctor:function(i){i=i||{},this._window=i.window||window,this.popState=n.Callbacks();n(this._window).on("hashchange",n.proxy(this._onHashChange,this));this._tasks=t.createQueue(),this.canWorkInPureBrowser=!0},replaceState:function(n){var t=this;return this._addTask(function(){n=t._normalizeUri(n),t._window.history.replaceState(null,null,"#"+n),t._currentTask.resolve()})},pushState:function(n){var t=this;return this._addTask(function(){n=t._normalizeUri(n),t._window.history.pushState(null,null,"#"+n),t._currentTask.resolve()})},createRootPage:function(){return this.replaceState(r)},_onHashChange:function(){this._currentTask&&this._currentTask.resolve(),this.popState.fire()},back:function(){var n=this;return this._addTask(function(){n._window.history.back()})},getHash:function(){return this._normalizeUri(this._window.location.hash)},isRootPage:function(){return this.getHash()===r},_normalizeUri:function(n){return(n||"").replace(/^#+/,"")},_addTask:function(t){var r=this,i=n.Deferred();return this._tasks.add(function(){return r._currentTask=i,t(),i}),i.promise()}}),t.framework.OldBrowserAdapter=t.framework.DefaultBrowserAdapter.inherit({ctor:function(){this._innerEventCount=0,this.callBase.apply(this,arguments),this._skipNextEvent=!1},replaceState:function(t){var i=this;return(t=i._normalizeUri(t),i.getHash()!==t)?(i._addTask(function(){i._skipNextEvent=!0,i._window.history.back()}),i._addTask(function(){i._skipNextEvent=!0,i._window.location.hash=t})):n.Deferred().resolve().promise()},pushState:function(t){var i=this;return(t=this._normalizeUri(t),this.getHash()!==t)?i._addTask(function(){i._skipNextEvent=!0,i._window.location.hash=t}):n.Deferred().resolve().promise()},createRootPage:function(){return this.pushState(r)},_onHashChange:function(){var n=this._currentTask;this._currentTask=null,this._skipNextEvent?this._skipNextEvent=!1:this.popState.fire(),n&&n.resolve()}}),t.framework.BuggyAndroidBrowserAdapter=t.framework.OldBrowserAdapter.inherit({createRootPage:function(){return this.pushState(f),this.callBase()}}),t.framework.HistorylessBrowserAdapter=t.framework.DefaultBrowserAdapter.inherit({ctor:function(t){t=t||{},this._window=t.window||window,this.popState=n.Callbacks();n(this._window).on("dxback",n.proxy(this._onHashChange,this));this._currentHash=this._window.location.hash},replaceState:function(t){return this._currentHash=this._normalizeUri(t),n.Deferred().resolve().promise()},pushState:function(n){return this.replaceState(n)},createRootPage:function(){return this.replaceState(r)},getHash:function(){return this._normalizeUri(this._currentHash)},back:function(){return this.replaceState(r)},_onHashChange:function(){var n=this.back();return this.popState.fire(),n}}),t.framework.BuggyCordovaWP81BrowserAdapter=t.framework.DefaultBrowserAdapter.inherit({ctor:function(n){this.callBase(n),this.canWorkInPureBrowser=!1}})}(jQuery,DevExpress),function(n,t){var u=t.Class,r="dxPhoneJSApplication";t.framework.HistoryBasedNavigationDevice=u.inherit({ctor:function(t){t=t||{},this._browserAdapter=t.browserAdapter||this._createBrowserAdapter(t),this.uriChanged=n.Callbacks(),this._browserAdapter.popState.add(n.proxy(this._onPopState,this))},init:n.noop,getUri:function(){return this._browserAdapter.getHash()},setUri:function(n,t){return t?this._browserAdapter.replaceState(n):this._browserAdapter.pushState(n)},back:function(){return this._browserAdapter.back()},_onPopState:function(){this.uriChanged.fire(this.getUri())},_isBuggyAndroid2:function(){var i=t.devices.real(),n=i.version;return i.platform==="android"&&n.length>1&&(n[0]===2&&n[1]<4||n[0]<2)},_isBuggyAndroid4:function(){var i=t.devices.real(),n=i.version;return i.platform==="android"&&n.length>1&&n[0]===4&&n[1]===0},_isWindowsPhone8:function(){var n=t.devices.real();return n.platform==="win8"&&n.phone},_createBrowserAdapter:function(n){var r=n.window||window,u=r.history.replaceState&&r.history.pushState,i;return i=this._isWindowsPhone8()?new t.framework.BuggyCordovaWP81BrowserAdapter(n):r!==r.top?new t.framework.HistorylessBrowserAdapter(n):this._isBuggyAndroid4()?new t.framework.BuggyAndroidBrowserAdapter(n):this._isBuggyAndroid2()||!u?new t.framework.OldBrowserAdapter(n):new t.framework.DefaultBrowserAdapter(n)}}),t.framework.StackBasedNavigationDevice=t.framework.HistoryBasedNavigationDevice.inherit({ctor:function(t){this.callBase(t),this.backInitiated=n.Callbacks(),this._deferredNavigate=null;n(window).on("unload",this._saveBrowserState)},init:function(){var t=this;return t._browserAdapter.canWorkInPureBrowser?t._initRootPage().done(function(){t._browserAdapter.isRootPage()&&t._browserAdapter.pushState("")}):n.Deferred().resolve().promise()},setUri:function(n){return this.callBase(n,!this._browserAdapter.isRootPage())},_saveBrowserState:function(){window.sessionStorage&&sessionStorage.setItem(r,!0)},_initRootPage:function(){var t=this.getUri();return!window.sessionStorage||sessionStorage.getItem(r)?n.Deferred().resolve().promise():(sessionStorage.removeItem(r),this._browserAdapter.createRootPage(),this._browserAdapter.pushState(t))},_onPopState:function(){var t=this._deferredNavigate&&this._deferredNavigate.state()==="pending";this._browserAdapter.isRootPage()?t?this._deferredNavigate.resolve():this.backInitiated.fire():(t||(this._deferredNavigate=n.Deferred().done(n.proxy(this.callBase,this))),this.back())}})}(jQuery,DevExpress),function(n,t,i){var u=t.Class,r={current:"current",blank:"blank",back:"back"},f="__history";t.framework.HistoryBasedNavigationManager=u.inherit({ctor:function(t){t=t||{},this._currentItem=i,this._previousItem=i,this.navigating=n.Callbacks(),this.navigated=n.Callbacks(),this.navigationCanceled=n.Callbacks(),this.navigatingBack=n.Callbacks(),this.itemRemoved=n.Callbacks(),this._createNavigationDevice(t)},_createNavigationDevice:function(i){this._navigationDevice=i.navigationDevice||new t.framework.HistoryBasedNavigationDevice,this._navigationDevice.uriChanged.add(n.proxy(this._uriChangedHandler,this))},_uriChangedHandler:function(n){while(t.hideTopOverlayCallback.fire());this.navigate(n,{target:"none"})},_cancelNavigation:function(n){this.navigationCanceled.fire(n)},_getDefaultOptions:function(){return{direction:"none",target:r.blank}},_updateHistory:function(n,t){this._previousItem=this._currentItem,this._currentItem={uri:n,key:n},t.target!=="none"&&this._navigationDevice.setUri(n,t.target==="current")},navigate:function(r,u){u=u||{};var f=this,s=f._currentItem||{},c=u.item||{},o=s.uri,l=s.key,h=c.key,e;if(r===i&&(r=f._navigationDevice.getUri()),/^_back$/.test(r)){f.back();return}u=n.extend(f._getDefaultOptions(),u||{}),e={currentUri:o,uri:r,cancel:!1,navigateWhen:[],options:u},f.navigating.fire(e),r=e.uri,e.cancel||o===r&&(h===i||h===l)&&!f._forceNavigate?f._cancelNavigation(e):(f._forceNavigate=!1,n.when.apply(n,e.navigateWhen).done(function(){t.utils.executeAsync(function(){f._updateHistory(r,u),f.navigated.fire({uri:r,previousUri:o,options:u,item:f._currentItem})})}))},back:function(){return this._navigationDevice.back()},previousItem:function(){return this._previousItem},currentItem:function(){return this._currentItem},rootUri:function(){return this._currentItem&&this._currentItem.uri},canBack:function(){return!0},saveState:n.noop,restoreState:n.noop,removeState:n.noop}),t.framework.StackBasedNavigationManager=t.framework.HistoryBasedNavigationManager.inherit({ctor:function(i){i=i||{},this.callBase(i),this._createNavigationStacks(i),t.hardwareBackButton.add(n.proxy(this._deviceBackInitiated,this)),this._stateStorageKey=i.stateStorageKey||f},init:function(){return this._navigationDevice.init()},_createNavigationDevice:function(i){i.navigationDevice||(i.navigationDevice=new t.framework.StackBasedNavigationDevice),this.callBase(i),this._navigationDevice.backInitiated.add(n.proxy(this._deviceBackInitiated,this))},_uriChangedHandler:function(n){this.navigate(n)},_createNavigationStacks:function(n){this.navigationStacks={},this._keepPositionInStack=n.keepPositionInStack,this.currentStack=new t.framework.NavigationStack},_deviceBackInitiated:function(){t.hideTopOverlayCallback.fire()?this._restoreDevicePreviousUri():this.back({isHardwareButton:!0})},_restoreDevicePreviousUri:function(){var n=this._currentItem&&this._currentItem.uri;this._navigationDevice.setUri(n)},_cancelNavigation:function(n){this._restoreDevicePreviousUri(),this.callBase(n)},_getDefaultOptions:function(){return{target:r.blank}},_createNavigationStack:function(){var i=new t.framework.NavigationStack;return i.itemsRemoved.add(n.proxy(this._removeItems,this)),i},_setCurrentStack:function(n){n in this.navigationStacks||(this.navigationStacks[n]=this._createNavigationStack()),this.currentStack=this.navigationStacks[n],this.currentStackKey=n},_updateHistory:function(n,u){var f=u.root,o=f,s=!1,l=u.stack||(f?n:this.currentStackKey||n),a=this.currentStack,v=u.keepPositionInStack!==i?u.keepPositionInStack:this._keepPositionInStack,h,c,e;if(this._setCurrentStack(l),(f||!this.currentStack.items.length)&&(s=this.currentStack===a,o=!0),f&&this.currentStack.items.length)(!v||s)&&(this.currentStack.currentIndex=0,this.currentItem().uri!==n&&this.currentStack.navigate(n,!0));else{h=this.currentStack.currentIndex,c=this.currentItem()||{};switch(u.target){case r.blank:this.currentStack.navigate(n);break;case r.current:this.currentStack.navigate(n,!0);break;case r.back:this.currentStack.currentIndex>0?this.currentStack.back(n):this.currentStack.navigate(n,!0);break;default:throw Error(t.utils.stringFormat('Unknown navigation target: "{0}". Use the DevExpress.framework.StackBasedNavigationManager.NAVIGATION_TARGETS enumerable values',u.target));}u.direction===i&&(e=this.currentStack.currentIndex-h,u.direction=e<0?this.currentStack.currentItem().backDirection||"backward":e>0&&this.currentStack.currentIndex>0?"forward":"none"),c.backDirection=u.direction==="forward"?"backward":"none"}u.root=o,this._currentItem=this.currentStack.currentItem(),this._restoreDevicePreviousUri()},_removeItems:function(t){var i=this;n.each(t,function(n,t){i.itemRemoved.fire(t)})},back:function(t){var i,u;if(t=t||{},i=n.extend({cancel:!1},t),this.navigatingBack.fire(i),i.cancel){this._restoreDevicePreviousUri();return}u=this.previousItem(i.stack),u?this.navigate(u.uri,{stack:i.stack,target:r.back,item:u}):this.callBase()},rootUri:function(){return this.currentStack.items.length?this.currentStack.items[0].uri:this.callBase()},canBack:function(n){var t=n?this.navigationStacks[n]:this.currentStack;return t.canBack()},saveState:function(n){if(this.currentStack.items.length){var t={items:this.currentStack.items,currentIndex:this.currentStack.currentIndex,currentStackKey:this.currentStack.items[0].uri},i=JSON.stringify(t);n.setItem(this._stateStorageKey,i)}else this.removeState(n)},restoreState:function(n){var r,t,i;if(!this.disableRestoreState&&(r=n.getItem(this._stateStorageKey),r))try{if(t=JSON.parse(r),i=this._createNavigationStack(),!t.items[0].uri)throw Error("Error while application state restoring. State has been cleared. Refresh the page");i.items=t.items,i.currentIndex=t.currentIndex,this.navigationStacks[i.items[0].uri]=i,this.currentStackKey=t.currentStackKey,this.currentStack=this.navigationStacks[this.currentStackKey],this._currentItem=this.currentStack.currentItem(),this._navigationDevice.setUri(this.currentItem().uri),this._forceNavigate=!0}catch(u){this.removeState(n);throw u;}},removeState:function(n){n.removeItem(this._stateStorageKey)},currentIndex:function(){return this.currentStack.currentIndex},previousItem:function(n){var t=n?this.navigationStacks[n]:this.currentStack;return t.previousItem()},getItemByIndex:function(n){return this.currentStack.items[n]},clearHistory:function(){this.currentStack.clear()}}),t.framework.NavigationStack=u.inherit({ctor:function(t){t=t||{},this.itemsRemoved=n.Callbacks(),this.clear()},currentItem:function(){return this.items[this.currentIndex]},previousItem:function(){return this.items.length>1?this.items[this.currentIndex-1]:i},canBack:function(){return this.currentIndex>0},clear:function(){this._deleteItems(this.items),this.items=[],this.currentIndex=-1},back:function(n){if(this.currentIndex--,this.currentIndex<0)throw Error("Unable to go back");var t=this.currentItem();t.uri!==n&&this._updateItem(this.currentIndex,n)},forward:function(){if(this.currentIndex++,this.currentIndex>=this.items.length)throw Error("Unable to go forward");},navigate:function(n,t){if(!(this.currentIndex<this.items.length)||!(this.currentIndex>-1)||this.items[this.currentIndex].uri!==n){if(t&&this.currentIndex>-1&&this.currentIndex--,this.currentIndex+1<this.items.length&&this.items[this.currentIndex+1].uri===n)this.currentIndex++;else{var i=this.items.splice(this.currentIndex+1,this.items.length-this.currentIndex-1);this.items.push({}),this.currentIndex++,this._updateItem(this.currentIndex,n),this._deleteItems(i)}return this.currentItem()}},_updateItem:function(n,t){var i=this.items[n];i.uri=t,i.key=this.items[0].uri+"_"+n+"_"+t},_deleteItems:function(n){n&&this.itemsRemoved.fire(n)}})}(jQuery,DevExpress),function(n,t,i){t.framework.createActionExecutors=function(r){return{routing:{execute:function(t){var u=t.action,i,f,e;n.isPlainObject(u)&&(i=u.routeValues,i&&n.isPlainObject(i)?f=u.options:i=u,e=r.router.format(i),r.navigate(e,f),t.handled=!0)}},hash:{execute:function(u){var o;if(typeof u.action=="string"&&u.action.charAt(0)==="#"){var f=u.action.substr(1),s=u.args[0],e=f,h=function(n){var i=t.data.utils.compileGetter(n),r=u.args[0].model;return i(r)},c=s.evaluate||h;e=f.replace(/\{([^}]+)\}/g,function(r,u){u=n.trim(u),u.indexOf(",")>-1&&(u=n.map(u.split(","),n.trim));var f=c(u);return f===i&&(f=""),f=t.framework.Route.prototype.formatSegment(f)}),o=(u.component||{}).NAME==="dxCommand"?u.component.option():{},r.navigate(e,o),u.handled=!0}}}}}}(jQuery,DevExpress),function(n,t){var f=t.Class,i,e="InProgress",r="Inited",u=t.framework;t.framework.Application=f.inherit({ctor:function(r){r=r||{},this._options=r,this.namespace=r.namespace||r.ns||window,this._applicationMode=r.mode?r.mode:"mobileApp",this.components=[],i=t.localization.localizeString("@Back"),this.router=r.router||new t.framework.MvcRouter;var u={mobileApp:t.framework.StackBasedNavigationManager,webSite:t.framework.HistoryBasedNavigationManager};this.navigationManager=r.navigationManager||new u[this._applicationMode]({keepPositionInStack:r.navigateToRootViewMode==="keepHistory"}),this.navigationManager.navigating.add(n.proxy(this._onNavigating,this)),this.navigationManager.navigatingBack.add(n.proxy(this._onNavigatingBack,this)),this.navigationManager.navigated.add(n.proxy(this._onNavigated,this)),this.navigationManager.navigationCanceled.add(n.proxy(this._onNavigationCanceled,this)),this.stateManager=r.stateManager||new t.framework.StateManager({storage:r.stateStorage||sessionStorage}),this.stateManager.addStateSource(this.navigationManager),this.viewCache=this._createViewCache(r),this.commandMapping=this._createCommandMapping(r.commandMapping),this.createNavigation(r.navigation),this.beforeViewSetup=n.Callbacks(),this.afterViewSetup=n.Callbacks(),this.viewShowing=n.Callbacks(),this.viewShown=n.Callbacks(),this.viewHidden=n.Callbacks(),this.viewDisposing=n.Callbacks(),this.viewDisposed=n.Callbacks(),this.navigating=n.Callbacks(),this.navigatingBack=n.Callbacks(),this.initialized=n.Callbacks(),this._isNavigating=!1,this._viewLinksHash={},t.registerActionExecutor(t.framework.createActionExecutors(this)),t.overlayTargetContainer(".dx-viewport"),this.components.push(this.router),this.components.push(this.navigationManager)},_createViewCache:function(i){var r;return r=i.viewCache?i.viewCache:i.disableViewCache?new t.framework.NullViewCache:new t.framework.CapacityViewCacheDecorator({size:i.viewCacheSize,viewCache:new t.framework.ViewCache}),r.viewRemoved.add(n.proxy(function(n){this._releaseViewLink(n.viewInfo)},this)),r},_createCommandMapping:function(n){var i=n;return n instanceof t.framework.CommandMapping||(i=new t.framework.CommandMapping,i.load(t.framework.CommandMapping.defaultMapping||{}).load(n||{})),i},createNavigation:function(n){this.navigation=this._createNavigationCommands(n),this._mapNavigationCommands(this.navigation,this.commandMapping)},_createNavigationCommands:function(t){if(!t)return[];var r=this,i=0;return n.map(t,function(t){var r;return r=t instanceof u.dxCommand?t:new u.dxCommand(n.extend({root:!0},t)),r.option("id")||r.option("id","navigation_"+i++),r})},_mapNavigationCommands:function(t,i){var r=n.map(t,function(n){return n.option("id")});i.mapCommands("global-navigation",r)},_callComponentMethod:function(t,i){var r=[];return n.each(this.components,function(u,f){if(f[t]&&n.isFunction(f[t])){var e=f[t](i);e&&e.done&&r.push(e)}}),n.when.apply(n,r)},init:function(){var n=this;return n._initState=e,n._callComponentMethod("init").done(function(){n._initState=r,n._processEvent("initialized")})},_onNavigatingBack:function(n){this._processEvent("navigatingBack",n)},_onNavigating:function(n){var i=this,u,r;if(i._isNavigating){i._pendingNavigationArgs=n,n.cancel=!0;return}if(i._isNavigating=!0,delete i._pendingNavigationArgs,u=this.router.parse(n.uri),!u)throw new Error(t.utils.stringFormat('Routing rule is not found for the "{0}" url',n.uri));r=this.router.format(u),n.uri!==r&&r?(n.cancel=!0,t.utils.executeAsync(function(){i.navigate(r,n.options)})):i._processEvent("navigating",n)},_onNavigated:function(i){var r=this,e=i.options.direction,f=n.Deferred(),u=r._acquireViewInfo(i.item,i.options);r._isViewReadyToShow(u)?f.resolve():r._setViewLoadingState(u,e).done(function(){t.utils.executeAsync(function(){r._createViewModel(u),r._createViewCommands(u),f.resolve()})}).fail(function(){r._isNavigating=!1,f.reject()}),f.done(function(){r._highlightCurrentNavigationCommand(u),r._showView(u,e).always(function(){r._isNavigating=!1;var n=r._pendingNavigationArgs;n&&t.utils.executeAsync(function(){r.navigate(n.uri,n.options)})})})},_isViewReadyToShow:function(n){return!!n.model},_onNavigationCanceled:function(n){var i=this,r;i._pendingNavigationArgs&&i._pendingNavigationArgs.uri===n.uri||(r=i.navigationManager.currentItem(),r&&t.utils.executeAsync(function(){var t=i._acquireViewInfo(r,n.options);i._highlightCurrentNavigationCommand(t)}),i._isNavigating=!1)},_disposeRemovedViews:function(){var t=this,i;n.each(t._viewLinksHash,function(n,r){r.linkCount||(i={viewInfo:r.viewInfo},t._processEvent("viewDisposing",i,i.viewInfo.model),t._disposeView(r.viewInfo),t._processEvent("viewDisposed",i,i.viewInfo.model),delete t._viewLinksHash[n])})},_onViewHidden:function(n){var t={viewInfo:n};this._processEvent("viewHidden",t,t.viewInfo.model)},_disposeView:function(t){var i=t.commands||[];n.each(i,function(n,t){t._dispose()})},_acquireViewInfo:function(n,t){var i=this.viewCache.getView(n.key);return i||(i=this._createViewInfo(n,t),this._obtainViewLink(i),this.viewCache.setView(n.key,i)),i},_processEvent:function(n,t,i){this._callComponentMethod(n,t),this[n]&&this[n].fire&&this[n].fire(t);var r=(i||{})[n];r&&r.call(i,t)},_createViewInfo:function(n,t){var i=n.uri,r=this.router.parse(i);return{viewName:r.view,routeData:r,uri:i,key:n.key,canBack:this.canBack(),navigateOptions:t,previousViewInfo:this._getPreviousViewInfo(t)}},_createViewModel:function(n){this._processEvent("beforeViewSetup",{viewInfo:n}),n.model=n.model||this._callViewCodeBehind(n),this._processEvent("afterViewSetup",{viewInfo:n})},_createViewCommands:function(n){n.commands=n.model.commands||[],n.canBack&&this._applicationMode!=="webSite"&&this._appendBackCommand(n)},_callViewCodeBehind:function(t){var r=n.noop,i=t.routeData;return i.view in this.namespace&&(r=this.namespace[i.view]),r.call(this.namespace,i,t)||{}},_appendBackCommand:function(n){var r=n.commands,f=this,s=this.navigationManager.currentStackKey,u=i,e,o;f._options.useViewTitleAsBackText&&(u=((n.previousViewInfo||{}).model||{}).title||u),e=[new t.framework.dxCommand({id:"back",title:u,behavior:"back",action:function(){f.back({stack:s})},icon:"arrowleft",type:"back"})],o=t.framework.utils.mergeCommands(e,r),r.length=0,r.push.apply(r,o)},_showView:function(n,i){var r=this,u={viewInfo:n,direction:i};return r._processEvent("viewShowing",u,n.model),r._showViewImpl(u.viewInfo,u.direction).done(function(){t.utils.executeAsync(function(){r._processEvent("viewShown",u,n.model),r._disposeRemovedViews()})})},_highlightCurrentNavigationCommand:function(i){var f=this,r,e=i.uri,u=i.model&&i.model.currentNavigationItemId;u!==undefined&&n.each(this.navigation,function(n,t){if(t.option("id")===u)return r=t,!1}),r||n.each(this.navigation,function(n,i){var u=i.option("action");if(t.utils.isString(u)&&(u=u.replace(/^#+/,""),u===f.navigationManager.rootUri()))return r=i,!1}),n.each(this.navigation,function(n,t){t===r&&t.option("highlighted")&&t.optionChanged.fireWith(t,["highlighted",!0,!0]),t.option("highlighted",t===r)})},_setViewLoadingState:t.abstract,_showViewImpl:t.abstract,_obtainViewLink:function(n){var t=n.key;this._viewLinksHash[t]?this._viewLinksHash[t].linkCount++:this._viewLinksHash[t]={viewInfo:n,linkCount:1}},_releaseViewLink:function(n){this._viewLinksHash[n.key].linkCount--},navigate:function(t,i){var u=this;if(n.isPlainObject(t)&&(t=u.router.format(t),t===!1))throw new Error("The passed object cannot be formatted into a uri string by router. An appropriate route should be registered.");if(u._initState)if(u._initState===r)u.navigationManager.navigate(t,i);else throw new Error("Unable to navigate. Application is being initialized. Consider using the 'HtmlApplication.navigating' event to alter the navigation logic.");else u.init().done(function(){u.restoreState(),u.navigate(t,i)})},canBack:function(n){return this.navigationManager.canBack(n)},_getPreviousViewInfo:function(n){var t=this.navigationManager.previousItem(n.stack),i;return t&&(i=this.viewCache.getView(t.key)),i},back:function(n){this.navigationManager.back(n)},saveState:function(){this.stateManager.saveState()},restoreState:function(){this.stateManager.restoreState()},clearState:function(){this.stateManager.clearState()}})}(jQuery,DevExpress),function(n,t){t.framework.html={layoutControllers:[],layoutSets:{}}}(jQuery,DevExpress),function(n,t){var i=t.framework.utils.commandToContainer,o="dxCommandToWidgetAdapter",r=t.Class.inherit({ctor:function(t,i){this.command=t,this.containerOptions=i,this._createWidgetItem(t,i),this._commandChangedHandler=n.proxy(this._onCommandChanged,this),t.optionChanged.add(this._commandChangedHandler)},_createWidgetItem:function(t,i){this.widgetItem=n.extend({command:t,containerOptions:i},i,t.option()),this._updateItem()},_onCommandChanged:function(n,t,i){this.widgetItem[n]=t,this._updateItem(n,t,i)},_updateItem:function(){},dispose:function(){this.command&&this.command.optionChanged.remove(this._commandChangedHandler),delete this.command,delete this.containerOptions,delete this.widgetItem,delete this.updateItemHandler}}),u=t.Class.inherit({ctor:function(t){this.$widgetElement=t,this.$widgetElement.data(o,this),this.widget=this._getWidgetByElement(t),this._widgetDisposingHandler=n.proxy(this._onWidgetDisposing,this),this.widget.disposing.add(this._widgetDisposingHandler),this.itemWrappers=[]},addCommand:function(t,i){var r=this._createItemWrapper(t,i);this.itemWrappers.push(r),this._addItemToWidget(r),this.refresh(),this._commandChangedHandler=n.proxy(this._onCommandChanged,this),r.command.optionChanged.add(this._commandChangedHandler)},beginUpdate:function(){this.widget.beginUpdate()},endUpdate:function(){this.widget.endUpdate()},_onWidgetDisposing:function(){this.dispose(!0)},_onCommandChanged:function(){name!=="highlighted"&&this.refresh()},_addItemToWidget:function(n){var t=this.widget.option("items");t.push(n.widgetItem)},refresh:function(){var n=this.widget.option("items");this.widget.option("items",n)},clear:function(t){var i=this;n.each(i.itemWrappers,function(n,t){t.command.optionChanged.remove(i._commandChangedHandler),t.dispose()}),this.itemWrappers.length=0,t||this._clearWidgetItems()},_clearWidgetItems:function(){this.widget.option("items",[])},dispose:function(n){this.clear(n),this.widget&&(this.widget.disposing.remove(this._widgetDisposingHandler),this.$widgetElement.removeData(o),delete this.widget,delete this.$widgetElement)}}),f=t.Class.inherit({ctor:function(n){this.createAdapter=n},_getWidgetAdapter:function(n){var t=n.data(o);return t||(t=this.createAdapter(n)),t},addCommand:function(n,t,i){var r=this._getWidgetAdapter(n);r.addCommand(t,i)},clearContainer:function(n){var t=this._getWidgetAdapter(n);t.clear()},beginUpdate:function(n){var t=this._getWidgetAdapter(n);t.beginUpdate()},endUpdate:function(n){var t=this._getWidgetAdapter(n);t.endUpdate()}}),s=r.inherit({_updateItem:function(){var u=this.widgetItem,r=this.command,f=this.containerOptions,e=i.resolvePropertyValue(r,f,"location"),t;u.location=e,e==="menu"?t=u:(t=n.extend({},u),u.options=t,u.widget="button"),t.text=i.resolveTextValue(r,f),t.disabled=r.option("disabled"),t.icon=i.resolveIconValue(r,f,"icon"),t.iconSrc=i.resolveIconValue(r,f,"iconSrc"),t.type=i.resolveTypeValue(r,f)}}),h=u.inherit({ctor:function(t){this.callBase(t),this.widget.option("itemClickAction",n.proxy(this._onToolbarItemClick,this))},_onToolbarItemClick:function(n){n.itemData.command&&n.itemData.command.execute(n)},_getWidgetByElement:function(n){return n.dxToolbar("instance")},_createItemWrapper:function(n,t){return new s(n,t)},addCommand:function(n,t){this.callBase(n,t),this.widget.option("visible",!0)}}),c=r.inherit({_updateItem:function(){var n=this.widgetItem,t=this.command,r=this.containerOptions;n.text=i.resolveTextValue(t,r),n.icon=i.resolveIconValue(t,r,"icon"),n.iconSrc=i.resolveIconValue(t,r,"iconSrc")}}),l=u.inherit({_createItemWrapper:function(n,t){return new c(n,t)},_getWidgetByElement:function(n){return n.dxActionSheet("instance")}}),a=r.inherit({_createWidgetItem:function(t,i){this.callBase(t,i),this.widgetItem.clickAction=n.proxy(this._itemClick,this)},_updateItem:function(){var n=this.widgetItem,t=this.command,r=this.containerOptions;n.title=i.resolveTextValue(t,r),n.icon=i.resolveIconValue(t,r,"icon"),n.iconSrc=i.resolveIconValue(t,r,"iconSrc")},_itemClick:function(n){this.widgetItem.disabled||this.command.execute(n)}}),v=u.inherit({_createItemWrapper:function(n,t){return new a(n,t)},_getWidgetByElement:function(n){return n.dxList("instance")}}),y=r.inherit({_updateItem:function(n){var u=this.command,f=this.containerOptions;n!=="highlighted"&&(this.widgetItem.text=i.resolveTextValue(u,f),this.widgetItem.icon=i.resolveIconValue(u,f,"icon"),this.widgetItem.iconSrc=i.resolveIconValue(u,f,"iconSrc"))}}),p=u.inherit({ctor:function(t){this.callBase(t),this.widget.option("itemClickAction",n.proxy(this._onNavBarItemClick,this))},_onNavBarItemClick:function(n){for(var i=this.widget.option("items"),t=i.length;--t;)i[t].command.option("highlighted",!1);n.itemData.command.execute(n)},_getWidgetByElement:function(n){return n.dxNavBar("instance")},_createItemWrapper:function(n,t){return new y(n,t)},addCommand:function(n,t){this.callBase(n,t),this._updateSelectedIndex()},_onCommandChanged:function(n,t,i){(n!=="highlighted"||t)&&this._updateSelectedIndex(),this.callBase(n,t,i)},_updateSelectedIndex:function(){for(var t=this.widget.option("items"),n=0,i=t.length;n<i;n++)if(t[n].highlighted){this.widget.option("selectedIndex",n);break}}}),d=r.inherit({_updateItem:function(n){n==="title"&&(this.widgetItem.title=i.resolveTextValue(this.command,this.containerOptions))}}),w=u.inherit({ctor:function(t){this.callBase(t),this._highlighting=!1,this.widget.option("itemSelectAction",n.proxy(this._onPivotItemSelect,this))},_onPivotItemSelect:function(n){n.itemData&&n.itemData.command&&n.itemData.command.execute(n)},_getWidgetByElement:function(n){return n.dxPivot("instance")},_createItemWrapper:function(n,t){return new s(n,t)},addCommand:function(n,t){this.callBase(n,t),this._updateSelectedIndex()},_onCommandChanged:function(n,t){n==="visible"?this._rerenderPivot():(n!=="highlighted"||t)&&this._updateSelectedIndex()},_addItemToWidget:function(n){n.command.option("visible")&&this.callBase(n)},_updateSelectedIndex:function(){var i=this.widget,r=i.option("items")||[],n,u;for(t.fx.off=!0,n=0,u=r.length;n<u;n++)if(r[n].highlighted){this._highlighting&&i.option("selectedIndex")===n&&(this._highlighting=!1),i.option("selectedIndex",n);break}t.fx.off=!1},_rerenderPivot:function(){var t=this;t.widget.option("items",[]),n.each(t.itemWrappers,function(n,i){i.command.option("visible")&&t._addItemToWidget(i)}),t.refresh(),t._updateSelectedIndex()}}),b=r.inherit({_updateItem:function(){var u=this.widgetItem,f=this.command,e=this.containerOptions;name!=="highlighted"&&(u.title=i.resolveTextValue(f,e),u.icon=i.resolveIconValue(f,e,"icon"),u.iconSrc=i.resolveIconValue(f,e,"iconSrc"))}}),k=u.inherit({ctor:function(t){this.callBase(t),this.widget.option("itemClickAction",n.proxy(this._onSlideOutItemClick,this))},_onSlideOutItemClick:function(n){n.itemData.command.execute(n)},_getWidgetByElement:function(n){return n.dxSlideOut("instance")},_createItemWrapper:function(n,t){return new b(n,t)},_updateSelectedIndex:function(){for(var t=this.widget.option("items")||[],n=0,i=t.length;n<i;n++)if(t[n].highlighted){this.widget.option("selectedIndex",n);break}},addCommand:function(n,t){this.callBase(n,t),this._updateSelectedIndex()},_onCommandChanged:function(n,t,i){(n!=="highlighted"||t)&&this._updateSelectedIndex(),this.callBase(n,t,i)}}),e=t.framework.html.commandToDXWidgetAdapters={};e.dxToolbar=new f(function(n){return new h(n)}),e.dxActionSheet=new f(function(n){return new l(n)}),e.dxList=new f(function(n){return new v(n)}),e.dxNavBar=new f(function(n){return new p(n)}),e.dxPivot=new f(function(n){return new w(n)}),e.dxSlideOut=new f(function(n){return new k(n)})}(jQuery,DevExpress),function(n,t){var r=t.Class,u=DevExpress.ui;t.framework.dxCommandContainer=t.DOMComponent.inherit({ctor:function(t,i){n.isPlainObject(t)&&(i=t,t=n("<div />")),this.callBase(t,i)},_setDefaultOptions:function(){this.callBase(),this.option({id:null})},_render:function(){this.callBase(),this._element().addClass("dx-command-container")}}),t.registerComponent("dxCommandContainer",t.framework.dxCommandContainer),t.framework.html.CommandManager=r.inherit({ctor:function(n){n=n||{},this.defaultWidgetAdapter=n.defaultWidgetAdapter||this._getDefaultWidgetAdapter(),this.commandMapping=n.commandMapping||new t.framework.CommandMapping},_getDefaultWidgetAdapter:function(){return{addCommand:this._defaultAddCommand,clearContainer:n.noop}},_getContainerAdapter:function(n){var i=n.data("dxComponents"),u=t.framework.html.commandToDXWidgetAdapters,f,r;if(i)for(f in i)if(r=i[f],r in u)return u[r];return this.defaultWidgetAdapter},findCommands:function(t){return n.map(t.addBack().find(".dx-command"),function(t){return n(t).dxCommand("instance")})},findCommandContainers:function(t){return n.map(t.find(".dx-command-container"),function(t){return n(t).dxCommandContainer("instance")})},_checkCommandId:function(n,t){if(n===null)throw new Error("The command's 'id' option should be specified.\r\nProcessed markup: "+t._element().get(0).outerHTML);},renderCommandsToContainers:function(t,i){var r=this,u={},f=[];n.each(t,function(n,t){var i=t.option("id");r._checkCommandId(i,t),f.push(i),u[i]=t}),r.commandMapping.checkCommandsExist(f),n.each(i,function(t,i){var f=[];n.each(u,function(n,t){var e=n,u=r.commandMapping.getCommandMappingForContainer(e,i.option("id"));u&&f.push({command:t,options:u})}),f.length&&r._attachCommandsToContainer(i._element(),f)})},clearContainer:function(n){var t=n._element(),i=this._getContainerAdapter(t);i.clearContainer(t)},_arrangeCommandsToContainers:function(n,i){t.utils.logger.warn("The _arrangeCommandsToContainers function is deprecated. Use renderCommandsToContainers instead"),this.renderCommandsToContainers(n,i)},_attachCommandsToContainer:function(t,i){var r=this._getContainerAdapter(t);return r.beginUpdate&&r.beginUpdate(t),n.each(i,function(n,i){r.addCommand(t,i.command,i.options)}),r.endUpdate&&r.endUpdate(t),!0},_defaultAddCommand:function(n,t){var r=t._element();if(r){n.append(r);r.on("dxclick",function(){t.execute()})}}})}(jQuery,DevExpress),function(n,t){var e=t.Class,r="__hidden-bag",f=".dx-transition:not(.dx-transition .dx-transition)",o=function(n){return".dx-transition-"+n},u;t.framework.html.DefaultLayoutController=e.inherit({ctor:function(t){t=t||{},this.name=t.layoutTemplateName||t.name||"",this._disableViewLoadingState=t.disableViewLoadingState,this._layoutModel=t.layoutModel||{},this._defaultPaneName=t.defaultPaneName||"content",this.viewReleased=n.Callbacks(),this.viewRendered=n.Callbacks()},init:function(i){i=i||{},this._visibleViews={},this._$viewPort=i.$viewPort||n("body"),this._$hiddenBag=i.$hiddenBag||n(document.getElementById(r))||n("<div/>").hide().appendTo("body"),this._commandManager=i.commandManager,this._viewEngine=i.viewEngine,this._prepareTemplates(),this.DEFAULT_LOADING_TITLE=t.localization.localizeString("@Loading"),i.templateContext&&(this._templateContextChanged=i.templateContext.optionChanged,this._proxiedTemplateContextChangedHandler=n.proxy(this._templateContextChangedHandler,this))},activate:function(){var n=this._getRootElement();this._justActivated=!0,n.show(),this._moveToViewPort(n),this._attachRefreshViewRequiredHandler()},deactivate:function(){this._releaseVisibleViews(),this._moveToHiddenBag(this._getRootElement()),this._detachRefreshViewRequiredHandler()},_releaseVisibleViews:function(){var t=this;n.each(this._visibleViews,function(n,i){t._hideView(i),t._releaseView(i)}),this._visibleViews={}},_templateContextChangedHandler:function(){n.each(this._visibleViews,n.proxy(function(n,t){this.showView(t)},this))},_attachRefreshViewRequiredHandler:function(){this._templateContextChanged&&this._templateContextChanged.add(this._proxiedTemplateContextChangedHandler)},_detachRefreshViewRequiredHandler:function(){this._templateContextChanged&&this._templateContextChanged.remove(this._proxiedTemplateContextChangedHandler)},_getPreviousViewInfo:function(n){return this._visibleViews[this._getViewPaneName(n.viewTemplateInfo)]},_prepareTemplates:function(){var n=this,t=n._viewEngine.findLayoutTemplate(this._getLayoutTemplateName()).removeClass("dx-hidden");n._$layoutTemplate=t,n._$mainLayout=n._createEmptyLayout().show(),n._viewEngine._applyTemplate(n._$mainLayout,n._layoutModel),n._$navigationWidget=n._createNavigationWidget(),n._loadingStateViewInfo=n._createLoadingStateViewInfo(t)},renderNavigation:function(n){this._clearNavigationWidget(),this._renderNavigationImpl(n)},_renderNavigationImpl:function(n){this._renderCommands(this._$mainLayout,n)},_createNavigationWidget:function(){var t;return this._$mainLayout.find(".dx-command-container").each(function(){var i=n(this).dxCommandContainer("instance");i.option("id")==="global-navigation"&&(t=n(this))}),t},_clearNavigationWidget:function(){this._$navigationWidget&&this._commandManager.clearContainer(this._$navigationWidget.dxCommandContainer("instance"))},_getRootElement:function(){return this._$mainLayout},_getViewFrame:function(){return this._$mainLayout},_getLayoutTemplateName:function(){return this.name},_applyModelToTransitionElements:function(t,i){var r=this;this._getTransitionElements(t).each(function(t,u){r._viewEngine._applyTemplate(n(u).children(),i)})},_createLoadingStateViewInfo:function(t){var i=t.clone().addClass("dx-loading-state-view").appendTo(this._$hiddenBag),u={title:ko.observable()},r;return this._viewEngine._createComponents(i),this._applyModelToTransitionElements(i,u),r={model:u,renderResult:{$markup:i,$viewItems:n()},isLoadingStateView:!0},this._appendViewToLayout(r),r},_createViewLayoutTemplate:function(){var n=this,t=n._$layoutTemplate.clone().appendTo(n._$hiddenBag);return n._viewEngine._createComponents(t),t},_createEmptyLayout:function(){var n=this,t=n._$layoutTemplate.clone().appendTo(n._$hiddenBag);return n._viewEngine._createComponents(t),n._removeTransitionContent(t),t},_removeTransitionContent:function(n){var t=this._getTransitionElements(n);t.children().remove()},_getTransitionElements:function(n){return n.find(f).addBack(f)},setViewLoadingState:function(t,i){var r=this,u;return r._disableViewLoadingState?n.Deferred().resolve().promise():(u=n.extend({},t,r._loadingStateViewInfo),r._loadingStateViewInfo.model.title((t.viewTemplateInfo||{}).title||this.DEFAULT_LOADING_TITLE),r._showViewImpl(u,i))},showView:function(n,t){var i=this,r=i._getPreviousViewInfo(n);return r&&r.isLoadingStateView&&(t="none"),i._ensureViewRendered(n),this._showViewImpl(n,t).done(function(){i._onViewShown(n)})},disposeView:function(n){this._clearRenderResult(n)},_clearRenderResult:function(n){n.renderResult&&(n.renderResult.$markup.remove(),n.renderResult.$viewItems.remove(),delete n.renderResult)},_prepareViewTemplate:function(n){this._viewEngine._createComponents(n)},_renderViewImpl:function(t,i){var o=this,u=this._createViewLayoutTemplate(),f=t.children(),e=!0,r=n();if(this._applyModelToTransitionElements(u,i.model),this._viewEngine._applyLayoutCore(t,u),f.each(function(t,u){var f=n(u);o._viewEngine._applyTemplate(f,i.model),f.is(".dx-command,.dx-content,script")?e=!1:r=r.add(f)}),r.length&&!e)throw new Error("All the dxView element children should be either of the dxCommand or dxContent type.\r\nProcessed markup: "+r[0].outerHTML);i.renderResult=i.renderResult||{},i.renderResult.$viewItems=f,i.renderResult.$markup=u},_renderCommands:function(n,t){var i=this._findCommandContainers(n);this._commandManager.renderCommandsToContainers(t,i)},_applyViewCommands:function(n){var i=n.renderResult.$viewItems,r=n.renderResult.$markup,u=this._commandManager.findCommands(i);n.commands=t.framework.utils.mergeCommands(n.commands||[],u),this._renderCommands(r,n.commands)},_findCommandContainers:function(n){return this._viewEngine._createComponents(n,["dxCommandContainer"])},_ensureViewRendered:function(n){var r=n.$viewTemplate?n.$viewTemplate.dxView("instance"):this._viewEngine.findViewComponent(n.viewName),t=r.getId(),i=n.renderResult&&n.renderResult.markupCache[t];i?n.renderResult.$markup=i:(this._renderView(n),n.renderResult.markupCache=n.renderResult.markupCache||{},n.renderResult.markupCache[t]=n.renderResult.$markup)},_renderView:function(n){var t=n.$viewTemplate||this._viewEngine.findViewTemplate(n.viewName);this._prepareViewTemplate(t,n),this._renderViewImpl(t,n),this._applyViewCommands(n),this._appendViewToLayout(n),t.remove(),this._onRenderComplete(n),this.viewRendered.fire(n)},_appendViewToLayout:function(t){var i=this,f=i._getViewFrame(t),r=t.renderResult.$markup,u=n();n.each(r.find(".dx-content-placeholder"),function(t,i){var r=n(i).dxContentPlaceholder("instance");r.prepareTransition()}),n.each(i._getTransitionElements(f),function(t,f){var s=n(f),e=r.find(o(s.data("dx-transition-name"))).children();i._hideViewElements(e),s.append(e),u=u.add(e)}),i._$mainLayout.append(t.renderResult.$viewItems.filter(".dx-command")),r.remove(),t.renderResult.$markup=u},_onRenderComplete:function(){},_onViewShown:function(){n(document).trigger("dx.viewchanged")},_doTransition:function(t,i){var r=this,u=n.Deferred(),f=n.map(t.renderResult.$markup,function(t){var u=n(t),f=u.parent(),e=r._disableTransitions?"none":f.data("dx-transition-type");return{destination:f,source:u,type:e||"none",direction:i||"none"}});return r._executeTransitions(f).done(function(){u.resolve()}),u.promise()},_hideView:function(n){n.renderResult&&this._hideViewElements(n.renderResult.$markup)},_showViewImpl:function(t,i){var r=this,u=n.Deferred();return this._justActivated&&(this._justActivated=!1,i="none"),r._doTransition(t,i).done(function(){r._changeView(t)})},_releaseView:function(n){this.viewReleased.fireWith(this,[n])},_getViewPortElement:function(){return this._$viewPort},_getHiddenBagElement:function(){return this._$hiddenBag},_changeView:function(n){var i=this,t=i._getPreviousViewInfo(n);t&&t!==n&&(i._hideView(t),t.isLoadingStateView||this._releaseView(t)),this._visibleViews[this._getViewPaneName(n.viewTemplateInfo)]=n},_getViewPaneName:function(){return this._defaultPaneName},_hideViewElements:function(n){t.utils.triggerHidingEvent(n.filter(".dx-active-view")),this._patchIDs(n),this._disableInputs(n),n.removeClass("dx-active-view").addClass("dx-inactive-view")},_showViewElements:function(n){this._unpatchIDs(n),this._enableInputs(n),n.removeClass("dx-inactive-view").addClass("dx-active-view"),t.utils.triggerShownEvent(n.filter(".dx-active-view"))},_executeTransitions:function(i){var r=this,u=n.map(i,function(n){return r._showViewElements(n.source),n.source.children().length?t.framework.html.TransitionExecutor.create(n.destination,n):void 0}),f=n.map(u,function(n){return n.options.source.addClass("dx-transition-source"),n.exec()});return n.when.apply(n,f).done(function(){n.each(u,function(n,t){t.finalize(),r._hideViewElements(t.options.source.parent().find(".dx-active-view:not(.dx-transition-source)")),t.options.source.removeClass("dx-transition-source")})})},_patchIDs:function(n){this._processIDs(n,function(n){var t=n;return n.indexOf(r)===-1&&(t=r+"-"+n),t})},_unpatchIDs:function(n){this._processIDs(n,function(n){var t=n;return n.indexOf(r)===0&&(t=n.substr(r.length+1)),t})},_processIDs:function(t,i){var r=t.find("[id]");n.each(r,function(t,r){var u=n(r),f=u.attr("id");u.attr("id",i(f))})},_enableInputs:function(t){var i=t.find(":input[data-disabled=true]");n.each(i,function(t,i){n(i).removeAttr("disabled").removeAttr("data-disabled")})},_disableInputs:function(t){var i=t.find(":input:not([disabled], [disabled=true])");n.each(i,function(t,i){n(i).attr({disabled:!0,"data-disabled":!0})})},_moveToViewPort:function(t){t.appendTo(this._getViewPortElement()),t.find(".dx-visibility-change-handler").each(function(){n(this).triggerHandler("dxshown")})},_moveToHiddenBag:function(n){n.appendTo(this._getHiddenBagElement())}}),u=t.framework.html.layoutSets,u["default"]=u["default"]||[],u["default"].push({controller:new t.framework.html.DefaultLayoutController})}(jQuery,DevExpress),function(n,t){var r=t.Class;t.framework.html.KnockoutJSTemplateEngine=r.inherit({applyTemplate:function(t,i){ko.applyBindings(i,n(t).get(0))}})}(jQuery,DevExpress),function(n,t,i){var o=t.Class,h=t.ui,r="dxView",u="dxLayout",s=0,f,e;t.framework[r]=t.DOMComponent.inherit({_setDefaultOptions:function(){this.callBase(),this.option({name:null,title:null,layout:null})},ctor:function(){this.callBase.apply(this,arguments),this._id=++s},_render:function(){this.callBase(),this._element().addClass("dx-view")},getId:function(){return this._id}}),t.registerComponent(r,t.framework.dxView),t.framework[u]=t.DOMComponent.inherit({_setDefaultOptions:function(){this.callBase(),this.option({name:null})},_render:function(){this.callBase(),this._element().addClass("dx-layout")}}),t.registerComponent(u,t.framework.dxLayout),t.framework.dxViewPlaceholder=t.DOMComponent.inherit({_setDefaultOptions:function(){this.callBase(),this.option({viewName:null})},_render:function(){this.callBase(),this._element().addClass("dx-view-placeholder")}}),t.registerComponent("dxViewPlaceholder",t.framework.dxViewPlaceholder),f=function(n,t,i,r){r==="absolute"?n.addClass("dx-transition-absolute"):n.addClass("dx-transition-static"),n.addClass("dx-transition").addClass("dx-transition-"+i),n.data("dx-transition-type",t),n.data("dx-transition-name",i)},e=function(n){n.addClass("dx-transition-inner-wrapper")},t.framework.dxTransition=t.DOMComponent.inherit({_setDefaultOptions:function(){this.callBase(),this.option({name:null,type:"slide"})},_render:function(){this.callBase();var n=this._element();f(n,this.option("type"),this.option("name"),"absolute"),n.wrapInner("<div/>"),e(n.children())},_clean:function(){this.callBase(),this._element().empty()}}),t.registerComponent("dxTransition",t.framework.dxTransition),t.framework.dxContentPlaceholder=t.DOMComponent.inherit({_setDefaultOptions:function(){this.callBase(),this.option({name:null,transition:"none",contentCssPosition:"absolute"})},_render:function(){this.callBase();var n=this._element();n.addClass("dx-content-placeholder").addClass("dx-content-placeholder-"+this.option("name")),f(n,this.option("transition"),this.option("name"),this.option("contentCssPosition"))},prepareTransition:function(){var n=this._element();n.children(".dx-content").length===0&&(n.wrapInner("<div>"),n.children().dxContent({targetPlaceholder:this.option("name")}))}}),t.registerComponent("dxContentPlaceholder",t.framework.dxContentPlaceholder),t.framework.dxContent=t.DOMComponent.inherit({_setDefaultOptions:function(){this.callBase(),this.option({targetPlaceholder:null})},_optionChanged:function(){this._refresh()},_clean:function(){this.callBase(),this._element().removeClass(this._currentClass)},_render:function(){this.callBase();var n=this._element();n.addClass("dx-content"),this._currentClass="dx-content-"+this.option("targetPlaceholder"),n.addClass(this._currentClass),e(n)}}),t.registerComponent("dxContent",t.framework.dxContent),t.framework.html.ViewEngine=o.inherit({ctor:function(t){t=t||{},this.$root=t.$root,this.device=t.device||{},this.templateEngine=t.templateEngine,this.dataOptionsAttributeName=t.dataOptionsAttributeName||"data-options",this._templateMap={},this._pendingViewContainer=null,this.viewSelecting=n.Callbacks(),this.modelFromViewDataExtended=n.Callbacks(),this.layoutSelecting=n.Callbacks(),this._templateContext=t.templateContext},init:function(){var n=this;return this._initDefaultLayout(),this._loadExternalTemplates().done(function(){n._loadTemplatesFromMarkupCore(n.$root.children()),n._processTemplates()})},_enumerateTemplates:function(t){var i=this;n.each(i._templateMap,function(i,r){n.each(r,function(i,r){n.each(r,function(n,i){t(i)})})})},_findComponent:function(n,t){var i=(this._templateMap[n]||{})[t]||[],r=this._templateContext&&this._templateContext.option()||{};return i=this._filterTemplates(r,i),this._checkMatchedTemplates(i),i[0]},_findTemplate:function(n,t){var r=this._findComponent(n,t),u,i;if(!r)throw new Error("Error 404: Template not found. role: "+t+", name: "+n);return u=r._element(),i=u.clone(),this._createComponents(i,[t]),i},_extendModelFromViewData:function(n,i){t.utils.extendFromObject(i,n.data(r).option()),this.modelFromViewDataExtended.fire({view:n,model:i})},_createComponents:function(i,r){var u=this,f=[];return i.find("*").addBack().filter("["+u.dataOptionsAttributeName+"]").each(function(i,e){var s=n(e),c=s.attr(u.dataOptionsAttributeName),h,o;try{h=new Function("return {"+c+"}")()}catch(l){throw new Error(t.utils.stringFormat("Unable to parse options.\nMessage: {0};\nOptions value: {1}",l,c));}for(o in h)(!r||n.inArray(o,r)>-1)&&s[o]&&(s[o](h[o]),f.push(s[o]("instance")))}),f},_loadTemplatesFromMarkupCore:function(i){var f,e;if(i.find("[data-dx-role]").length)throw Error("View templates should be updated according to the 13.1 changes. Go to http://dxpr.es/15ikrJA for more details");f=this,i.appendTo(this.$root),t.localization.localizeNode(i),e=f._createComponents(i,[r,u]),n.each(e,function(n,t){var i=t._element();i.addClass("dx-hidden"),f._registerTemplateComponent(t),t._element().detach()})},_registerTemplateComponent:function(n){var i=n.NAME,u=n.option(),r=u.name,t=this._templateMap[r]||{};t[i]=t[i]||[],t[i].push(n),this._templateMap[r]=t},_applyPartialViews:function(t){var i=this;this._createComponents(t,["dxViewPlaceholder"]),n.each(t.find(".dx-view-placeholder"),function(){var u=n(this),f,t;u.children().length||(f=u.data("dxViewPlaceholder").option("viewName"),t=i._findTemplate(f,r),i._applyPartialViews(t),u.append(t),t.removeClass("dx-hidden"))})},_ajaxImpl:function(){return n.ajax.apply(n,arguments)},_loadTemplatesFromURL:function(i){var f=this,u=this._getLoadOptions(),r=n.Deferred();return this._ajaxImpl({url:u.winPhonePrefix+i,isLocal:u.isLocal,dataType:"html"}).done(function(n){f._loadTemplatesFromMarkupCore(t.utils.createMarkupFromString(n)),r.resolve()}).fail(function(n,u,f){var e=new Error(t.utils.stringFormat("Remote template cannot be loaded.\r\nUrl:{0}\r\nError:{1}.",i,f));r.reject(e)}),r.promise()},_getLoadOptions:function(){return location.protocol.indexOf("wmapp")>=0?{winPhonePrefix:location.protocol+"www/",isLocal:!0}:{winPhonePrefix:"",isLocal:i}},_loadExternalTemplates:function(){var t=[],i=this;return n("head").find("link[rel='dx-template']").each(function(r,u){var f=i._loadTemplatesFromURL(n(u).attr("href"));t.push(f)}),n.when.apply(n,t)},_processTemplates:function(){var t=this;n.each(t._templateMap,function(i,r){n.each(r,function(n,i){t._filterTemplatesByDevice(i)})}),t._enumerateTemplates(function(n){t._applyPartialViews(n._element())})},_filterTemplatesByDevice:function(t){var i=this._filterTemplates(this.device,t);n.each(t,function(t,r){n.inArray(r,i)<0&&(r._dispose(),r._element().remove())}),t.length=0,t.push.apply(t,i)},_filterTemplates:function(n,i){return t.utils.findBestMatches(n,i,function(n){return n.option()})},_checkMatchedTemplates:function(t){if(t.length>1){var i="Concurrent templates are found:\r\n";n.each(t,function(n,t){i+=t._element().attr("data-options")+"\r\n"}),i+="Target device:\r\n",i+=JSON.stringify(this.device);throw Error(i);}},_extendModelFormViewTemplate:function(n,t){this._extendModelFromViewData(n,t)},_ensureTemplates:function(n){this._ensureViewTemplate(n)},_ensureViewTemplate:function(n){return n.$viewTemplate=n.$viewTemplate||this.findViewTemplate(n.viewName)},_wrapViewDefaultContent:function(n){n.wrapInner('<div class="dx-full-height"><\/div>'),n.children().eq(0).dxContent({targetPlaceholder:"content"})},_initDefaultLayout:function(){this._$defaultLayoutTemplate=n('<div class="dx-full-height" data-options="dxLayout : { name: \'default\' } "> <div class="dx-full-height" data-options="dxContentPlaceholder : { name: \'content\' } " ><\/div> <\/div>')},_getDefaultLayoutTemplate:function(){var n=this._$defaultLayoutTemplate.clone();return this._createComponents(n),n},_applyTemplate:function(n,t){var i=this;n.each(function(n,r){i.templateEngine.applyTemplate(r,t)})},_applyLayoutCore:function(t,r){(r===i||r.length===0)&&(r=this._getDefaultLayoutTemplate()),t.children(".dx-content").length===0&&this._wrapViewDefaultContent(t);var u=n().add(r).add(t),f=u.find(".dx-content");return n.each(f,function(){var t=n(this),r=t.data("dxContent").option("targetPlaceholder"),i=u.find(".dx-content-placeholder-"+r);i.empty(),i.append(t)}),f.filter(":not(.dx-content-placeholder .dx-content)").remove(),r},findViewTemplate:function(t){var i={viewName:t};return this.viewSelecting.fire(i),i.view?n(i.view):this._findTemplate(t,r,!0)},findViewComponent:function(n){return this._findComponent(n,"dxView")},findLayoutTemplate:function(t){if(!t)return this._getDefaultLayoutTemplate();var i={layoutName:t};return this.layoutSelecting.fire(i),i.layout?n(i.layout):this._findTemplate(t,u)},loadTemplates:function(t){var i;return typeof t=="string"?i=this._loadTemplatesFromURL(t):(this._loadTemplatesFromMarkupCore(t),i=n.Deferred().resolve().promise()),i.done(n.proxy(this._processTemplates,this))}})}(jQuery,DevExpress),function(n,t){var f=t.framework,r=f.html,u="dx-viewport",e="__hidden-bag",o="dx-hidden-bag";r.HtmlApplication=f.Application.inherit({ctor:function(i){var u,f;i=i||{},this.callBase(i),this._$root=n(i.rootNode||document.body),this._initViewport(i.viewPort),this._applicationMode==="mobileApp"&&t.utils.initMobileViewport(i.viewPort),this.device=i.device||t.devices.current(),u=t.framework.html.layoutSets,this.commandManager=i.commandManager||new t.framework.html.CommandManager({commandMapping:this.commandMapping}),n.each(i.layoutControllers||t.framework.html.layoutControllers,function(n,t){var i=t.navigationType;u[i]=u[i]||[],u[i].push(t),delete t.navigationType}),f=i.navigationType||i.defaultLayout,f&&(i.layoutSet=u[f]),this._initHiddenBag(),this._initTemplateContext(),this.viewEngine=i.viewEngine||new r.ViewEngine({$root:this._$root,device:this.device,templateEngine:i.templateEngine||new r.KnockoutJSTemplateEngine({navigationManager:this.navigationManager}),templateContext:this._templateContext}),this.components.push(this.viewEngine),this.viewRendered=n.Callbacks(),this._layoutSet=i.layoutSet||(i.layoutControllers&&i.layoutControllers.length?i.layoutControllers:u["default"]),this._availableLayoutControllers=[],this.resolveLayoutController=n.Callbacks()},_createViewCache:function(n){var i=this.callBase(n);return n.viewCache||(i=new t.framework.ConditionalViewCacheDecorator({filter:function(n,t){return!t.viewTemplateInfo.disableCache},viewCache:i})),i},_initViewport:function(){this._$viewPort=this._getViewPort(),t.ui.themes.attachCssClasses(this._$viewPort),t.devices.attachCssClasses(this._$viewPort)},_getViewPort:function(){var t=n("."+u);return t.length||(t=n("<div>").addClass(u).appendTo(this._$root)),t},_initHiddenBag:function(){this._$hiddenBag=this._getHiddenBag(this._$root,this._$viewPort)},_getHiddenBag:function(t,i){var r=n("#"+e);return r.length||(r=n("<div/>").addClass(o).attr("id",e).appendTo(t)),r.addClass((i.attr("class")||"").replace(u,"")),r},_initTemplateContext:function(){this._templateContext=new t.Component({orientation:t.devices.orientation()}),t.devices.orientationChanged.add(n.proxy(function(n){this._templateContext.option("orientation",n.orientation)},this))},_showViewImpl:function(n,t){return this._activateLayoutController(n.layoutController),this._obtainViewLink(n),this._activeLayoutController.showView(n,t)},_setViewLoadingState:function(n,t){return this._activateLayoutController(n.layoutController),this._activeLayoutController.setViewLoadingState(n,t)},_resolveLayoutController:function(n){var t={viewInfo:n,layoutController:null,availableLayoutControllers:this._availableLayoutControllers};return this._processEvent("resolveLayoutController",t,n.model),t.layoutController||this._resolveLayoutControllerImpl(n)},_resolveLayoutControllerImpl:function(i){var u=n.extend({root:!i.canBack,customResolveRequired:!1,pane:(i.viewTemplateInfo||{}).pane},t.devices.current()),r=t.utils.findBestMatches(u,this._availableLayoutControllers);if(!r.length)throw Error("The layout controller cannot be resolved. There are no appropriate layout controllers for the current context. Make sure you have the corresponding *.js references in your main *.html file.");if(r.length>1)throw Error("The layout controller cannot be resolved. Two or more layout controllers suit the current context. Make the layout controllers registration more specific.");return r[0].controller},_activateLayoutController:function(n){var t=this;t._activeLayoutController!==n&&(t._activeLayoutController&&t._activeLayoutController.deactivate(),n.activate(),t._activeLayoutController=n)},init:function(){var n=this,t=this.callBase();return t.done(function(){n._initLayoutControllers(),n.renderNavigation()}),t},_disposeView:function(n){n.layoutController.disposeView&&n.layoutController.disposeView(n),this.callBase(n)},viewPort:function(){return this._$viewPort},_createViewInfo:function(){var i=this.callBase.apply(this,arguments),r=this.getViewTemplateInfo(i.viewName);if(!r)throw new Error("The '"+i.viewName+"' view template is not found. Make sure case is correct and the template fits the current context.");return i.viewTemplateInfo=r,i.layoutController=this._resolveLayoutController(i),i},_createViewModel:function(n){var i,r,t;this.callBase(n),i=n.viewTemplateInfo,r=n.model;for(t in i)t in r||(r[t]=i[t])},_initLayoutControllers:function(){var i=this;n.each(i._layoutSet,function(n,r){var u=r.controller,f=t.devices.current();t.utils.findBestMatches(f,[r]).length&&(i._availableLayoutControllers.push(r),u.init&&u.init({app:i,$viewPort:i._$viewPort,$hiddenBag:i._$hiddenBag,navigationManager:i.navigationManager,viewEngine:i.viewEngine,templateContext:i._templateContext,commandManager:i.commandManager}),u.viewReleased&&u.viewReleased.add(function(n){i._onViewReleased(n)}),u.viewRendered&&u.viewRendered.add(function(n){i._processEvent("viewRendered",{viewInfo:n},n.model)}))})},_onViewReleased:function(n){this._onViewHidden(n),this._releaseViewLink(n)},renderNavigation:function(){var t=this;n.each(t._availableLayoutControllers,function(n,i){var r=i.controller;r.renderNavigation&&r.renderNavigation(t.navigation)})},getViewTemplate:function(n){return this.viewEngine.findViewTemplate(n)},getViewTemplateInfo:function(n){var t=this.viewEngine.findViewComponent(n);return t&&t.option()},loadTemplates:function(n){return this.viewEngine.loadTemplates(n)},templateContext:function(){return this._templateContext}})}(jQuery,DevExpress),function(n,t){n.fn.extend({unwrapInner:function(t){return this.each(function(){var i=this,r=n(i).children(t);r.each(function(){var t=n(this);t.contents().appendTo(i),t.remove()})})}});var i=400,r=t.Class.inherit({ctor:function(n,t){this.container=n,this.options=t},exec:function(){var t=this,i=t.options,u=i.source,r=i.destination,f=u,o=r,e=t._getTransitionInnerElement(r);return this._finalize=function(){},t._animate(n.extend({},i,{source:f,destination:e}))},finalize:function(){if(!this._finalize)throw Error('The "exec" method should be called before the "finalize" one');this._finalize()},_getTransitionInnerElement:function(n){return n.children(".dx-active-view:not(.dx-transition-source)")},_animate:function(){return(new n.Deferred).resolve().promise()}}),u=r.inherit({_animate:function(i){var u=i.source,f=i.destination,r=this.container.width();return t.fx.animate(u,{type:"slide",from:{left:0},to:{left:0},duration:0}),t.fx.animate(f,{type:"slide",from:{left:-r},to:{left:-r},duration:0}),n.Deferred().resolve().promise()}}),f=r.inherit({_animate:function(r){if(r.direction==="none")return n.Deferred().resolve().promise();var f=r.source,e=r.destination,o=r.direction==="backward"?-1:1,s=t.rtlEnabled?-1:1,u=this.container.width()*o*s,h=t.fx.animate(f,{type:"slide",from:{left:u},to:{left:0},duration:i}),c=t.fx.animate(e,{type:"slide",from:{left:0},to:{left:-u},duration:i});return n.when(c,h)}}),e=r.inherit({_animate:function(r){var a,v;if(r.direction==="none")return n.Deferred().resolve().promise();var u=r.source,f=r.destination,y=t.rtlEnabled?-1:1,e=this.container.width()*y,l=e/5,o,s,h,c,p=u.css("z-index"),w=f.css("z-index");return r.direction==="backward"?(o=-l,s=0,h=0,c=e,u.css("z-index",1),f.css("z-index",2)):(o=e,s=0,h=0,c=-l,u.css("z-index",2),f.css("z-index",1)),a=t.fx.animate(u,{type:"slide",from:{left:o},to:{left:s},duration:i}),v=t.fx.animate(f,{type:"slide",from:{left:h},to:{left:c},duration:i}),n.when(v,a).done(function(){u.css("z-index",p),f.css("z-index",w)})}}),o=r.inherit({_animate:function(r){var s=r.source,o=r.destination,h=o.position().top,u=o.position().left,e=this.container.width(),f;return r.direction==="backward"&&(e=-e),f=[],r.direction==="forward"?f.push(t.fx.animate(s,{type:"slide",from:{top:h,left:e+u,"z-index":1},to:{left:u},duration:i})):(f.push(t.fx.animate(s,{type:"slide",from:{left:u,"z-index":1},to:{left:u},duration:i})),f.push(t.fx.animate(o,{type:"slide",from:{"z-index":2},to:{left:u-e},duration:i}))),n.when.apply(n,f)}}),s=r.inherit({_animate:function(t){var r=t.source,f=t.destination,u=new n.Deferred;return r.css({opacity:0}),f.animate({opacity:0},i),r.animate({opacity:1},i,function(){u.resolve()}),u.promise()}}),h=function(n){return n.type==="fade"?n.type:n.direction==="none"?"none":n.type};r.create=function(n,i){var r=t.devices.current();switch(h(i)){case"none":return new u(n,i);case"slide":return r.platform==="ios"&&r.version[0]===7?new e(n,i):new f(n,i);case"fade":return new s(n,i);case"overflow":return new o(n,i);default:throw Error(t.utils.formatString('Unknown transition type "{0}"',i.type));}},t.framework.html.TransitionExecutor=r}(jQuery,DevExpress),DevExpress.MOD_FRAMEWORK=!0}if(!DevExpress.MOD_VIZ_CORE){if(!window.DevExpress)throw Error("Required module is not referenced: core");(function(n){n.viz={}})(DevExpress),function(n){n.viz.core={}}(DevExpress),function(n){n.viz.core.errorsWarnings={E2001:"Invalid data source",E2002:"Axis type and data type are incompatible",E2003:'"{0}" data source field contains data of unsupported type',E2004:'"{0}" data source field is inconsistent',E2101:"Unknown series type was specified: {0}",E2102:"Ambiguity occurred between two value axes with the same name",E2103:'"{0}" option must be a function',E2104:"Invalid logarithm base",E2105:'Invalid value of a "{0}"',E2106:"Invalid visible range",E2201:"Invalid type of data source field",E2202:"Invalid scale {0} value",E2203:'The "{0}" field of the "selectedRange" configuration object is not valid',W2001:"{0} cannot be drawn because its container is invisible",W2002:"The {0} data field is absent",W2003:"Tick interval is too small",W2101:'"{0}" pane does not exist; "{1}" pane is used instead',W2102:'Value axis with the "{0}" name was created automatically',W2103:"Chart title was hidden due to container size",W2104:"Legend was hidden due to container size",W2105:'Title of "{0}" axis was hidden due to container size',W2106:'Labels of "{0}" axis were hidden due to container size',W2301:"Invalid value range"}}(DevExpress),function(n,t,i){var r=t.utils,f=Math,s=f.ceil,o=f.floor,e=f.abs,h=f.round,u=t.viz.core,c=2e3;u.outOfScreen={x:-1e3,y:-1e3},u.tickIntervalCalculator={_defaultNumberMultipliers:[1,2,3,5],_defaultGridSpacingFactor:30,_getCommonTickInterval:function(n,t){for(var r=0,f=!1,i,u=1;!f;u*=10)for(i=0;i<t.length;i++)if(r=t[i]*u,n<=r){f=!0;break}return r},_getNumericTickInterval:function(n,t){var f,i=0,e,o=!1,u;if(n>1)i=this._getCommonTickInterval(n,t);else if(n>0)for(i=1,f=.1;!o;f/=10)for(u=t.length-1;u>=0;u--){if(e=t[u]*f,n>e){o=!0;break}i=e}return r.adjustValue(i)},_getLogarithmicTickInterval:function(n,t){var i=0;return n!==0&&(i=this._getCommonTickInterval(n,t)),r.adjustValue(i)},_getDateTimeTickInterval:function(n,t){var e={millisecond:[1,2,5,10,25,100,250,300,500],second:[1,2,3,5,10,15,20,30],minute:[1,2,3,5,10,15,20,30],hour:[1,2,3,4,6,8,12],day:[1,2,3,5,7,10,14],month:[1,2,3,6]},h={},o,u,f,s,i;if(n>0&&n<1)return{milliseconds:1};if(n===0)return 0;for(u in e)if(e.hasOwnProperty(u))for(f=e[u],i=0;i<f.length;i++)if(n<=r.convertDateUnitToMilliseconds(u,f[i]))return h[u+"s"]=f[i],h;for(o=1;;o*=10)for(i=0;i<t.length;i++)if(s=o*t[i],n<=r.convertDateUnitToMilliseconds("year",s))return{years:s};return null},getTickInterval:function(n){var t=this,f=n.gridSpacingFactor||t._defaultGridSpacingFactor,i=n.numberMultipliers||t._defaultNumberMultipliers,e=n.businessDelta,r=n.screenDelta,u=r>0&&f<r?f*e/r:0;if(n.axisType==="logarithmic")return t._getLogarithmicTickInterval(u,i);switch(n.dataType){case"numeric":return t._getNumericTickInterval(u,i);case"datetime":return t._getDateTimeTickInterval(u,i)}return null}},u.minorTickIntervalCalculator={_defaultNumberMultipliers:[2,4,5,8,10],_defaultGridSpacingFactor:15,_getDateTimeTickInterval:function(n,t,i){for(var f,u=i.length-1;u>=0;u--)if(f=o(n/i[u]),t<=f)return r.convertMillisecondsToDateUnits(f);return 0},_getCommonTickInterval:function(n,t,i){for(var f,u=i.length-1;u>=0;u--)if(f=n/i[u],t<=f)return r.adjustValue(f);return 0},getTickInterval:function(n){var t=this,e=r.isDefined(n.gridSpacingFactor)?n.gridSpacingFactor:t._defaultGridSpacingFactor,u=n.numberMultipliers||t._defaultNumberMultipliers,i=n.businessDelta,f=e*i/n.screenDelta;if(n.axisType==="logarithmic")return t._getCommonTickInterval(i,f,u);switch(n.dataType){case"numeric":return t._getCommonTickInterval(i,f,u);case"datetime":return t._getDateTimeTickInterval(i,f,u)}return 0}},u.tickProvider={_appendFakeSVGElement:function(t,i,r){var f=n.extend({},r.textOptions,{rotate:0});return r.renderer.createText(i,u.outOfScreen.x+(r.translator.translate(t)||0),u.outOfScreen.y,f).append()},_getDistanceByAngle:function(n,t){return n/e(f.sin(t*(f.PI/180)))},_areDisplayValuesValid:function(n,t,i){var f=this,c=f._getTextFunc(i),l=i.textOptions&&r.isNumber(i.textOptions.rotate)?i.textOptions.rotate:0,a=f._appendFakeSVGElement(n,c(n),i),v=f._appendFakeSVGElement(t,c(t),i),u=a.getBBox(),o=v.getBBox(),s,h=i.translator;return s=l!==0?f._getDistanceByAngle(u.height,l)<=e(o.x-u.x):i.isHorizontal?h.getBusinessRange().invert?o.x+o.width<u.x:u.x+u.width<o.x:e(h.translate(n)-h.translate(t))>u.height,a.remove(),v.remove(),s},_removeInvalidDatesWithUnitBegining:function(n,t){n.length<=1||!t.setTicksAtUnitBeginning||!r.isDate(t.min)||this._areDisplayValuesValid(n[0],n[1],t)||n.splice(1,1)},_getValueSize:function(n,t){var e=this,i,o=t.textOptions?t.textOptions.rotate:0,h,u,c,l=e._getTextFunc(t),f;if(n.length===0)return 0;if(t.isRotate=r.isNumber(o)&&o!==0,t.isRotate||!t.isHorizontal)i=l(n[0]);else{for(i=[],f=0;f<n.length;f++)i.push(l(n[f]));i=i.join("\n")}return h=e._appendFakeSVGElement(i,i,t),u=h.getBBox(),c=t.isRotate?e._getDistanceByAngle(u.height,o):t.isHorizontal?u.width:u.height,h.remove(),s(c)},_adjustNumericTickValue:function(n,t,i){return r.isExponential(n)?r.adjustValue(n):r.applyPrecisionByMinDelta(i,t,n)},_generateStartTick:function(n,t){var e=this,c=0,h=t.min-t.max<0,i=t.min,s=r.isDate(t.min),u=s?r.convertDateTickIntervalToMilliseconds(n):n,f;for(t.axisType==="logarithmic"?i=r.raiseTo(o(r.adjustValue(r.getLog(t.min,t.base))/u*u),t.base):(i=o(t.min/u)*u,i=s?new Date(i):e._adjustNumericTickValue(i,u,t.min));h===i-t.min<0&&i!==t.min;)if(f=e._nextTick(i,n,t),f!==i)i=f;else return f;return i},_nextTick:function(n,t,i){var u,e,o=this;return i.axisType==="logarithmic"?(e=r.addInterval(r.adjustValue(r.getLog(n,i.base)),t,i.min>i.max),u=r.raiseTo(e,i.base),u=o._adjustNumericTickValue(u,t,f.min(i.min,i.max))):(u=r.addInterval(n,t,i.min>i.max),i.dataType==="numeric"&&(u=o._adjustNumericTickValue(u,t,i.min)),i.dataType==="datetime"&&i.setTicksAtUnitBeginning&&r.correctDateWithUnitBeginning(u,t)),u},_addMinorTicks:function(t,i,f,o,c){var d=this,v,w=o.dataType,y,l=[],b=0,p=o.minorTickCount+1,k,a;for(o.min=t,o.max=i,r.isDefined(o.tickInterval)||(o.businessDelta=y=e(o.max-o.min),o.screenDelta=y*o.deltaCoef,r.isDefined(o.minorTickCount)?((!f.majorTicks.autoArrangementStep||f.majorTicks.autoArrangementStep<=1)&&(k=o.minorTickCount+1,b=w==="datetime"?r.convertDateTickIntervalToMilliseconds(f.majorTickInterval):f.majorTickInterval,p=h(y/b*k)||1),a=w==="datetime"?r.convertMillisecondsToDateUnits(y/p):y/p,n.isNumeric(a)&&(a=r.adjustValue(a))):r.isDate(t)&&(a=u.minorTickIntervalCalculator.getTickInterval(o))),o=n.extend(!0,{},o,{tickInterval:a}),l=d.getTicks(o),c&&l.reverse(),l.length>0&&s(e(i-l[l.length-1])*o.deltaCoef)<2&&l.pop(),v=0;v<l.length;v++)f.minorTicks.push(l[v]),f.fullTicks.push(l[v])},_addLeftBoudedTicks:function(n,t,i){r.isDefined(t)&&n.majorTicks[0].valueOf()!==t.valueOf()&&(i.addMinMax.max=!0,this._addMinorTicks(n.majorTicks[0],t,n,i,!0),i.addMinMax.max=!1,i.showCustomBoundaryTicks&&(n.minorTicks.length>0&&n.minorTicks[0].valueOf()===t.valueOf()&&n.minorTicks.shift(t),n.customBoundaryTicks.push(t),n.fullTicks.unshift(t)))},_addRightBoudedTicks:function(n,t,i){var u=n.majorTicks[n.majorTicks.length-1];n.fullTicks.push(u),r.isDefined(t)&&u.valueOf()!==t.valueOf()&&(i.addMinMax.min=!1,i.addMinMax.max=!0,this._addMinorTicks(u,t,n,i),i.showCustomBoundaryTicks&&(n.minorTicks.length>0&&n.minorTicks[n.minorTicks.length-1].valueOf()===t.valueOf()&&n.minorTicks.pop(t),n.customBoundaryTicks.push(t),n.fullTicks.push(t)))},_correctBoundedTicks:function(t,i,r,u){u=n.extend({},{min:!0,max:!0},u),r.length>0&&(u.min||r[0].valueOf()!==t.valueOf()||r.shift(),u.max&&r[r.length-1].valueOf()===i.valueOf()||r.pop())},_initializeMinorTicksOptions:function(t,f,e,o,s){var h=this,c,l=r.isDefined(s.minorTickCount);n.extend(!0,s,{addMinMax:{min:!1,max:!1},deltaCoef:h._getDeltaCoef(e,f,t,s.axisType,s.base)},s),s.numberMultipliers=l?[s.minorTickCount+1]:s.numberMultipliers,s.gridSpacingFactor=l?0:s.gridSpacingFactor,!l&&o.majorTicks.length>1&&(s.businessDelta=c=h._getBusinessDelta(s.axisType,o.majorTicks[0],o.majorTicks[1],s.base),h.needTickIntervalCalculation(c,o.minorTickInterval,s.incidentOccured)&&(s.screenDelta=c*s.deltaCoef,o.minorTickInterval=u.minorTickIntervalCalculator.getTickInterval(s),s.tickInterval=r.isNumber(t)?o.minorTickInterval:i))},_getDataType:function(n){return r.isDate(n)?"datetime":"numeric"},_getBusinessDelta:function(n,t,i,u){return n==="logarithmic"?h(e(r.getLog(t,u)-r.getLog(i,u))):e(t-i)},_getDeltaCoef:function(n,t,i,r,u){return n/this._getBusinessDelta(r,i,t,u)},_initializeMajorTicksOptions:function(t,i,f,e,o){var s;o.screenDelta=f,n.extend(!0,o,{min:t,max:i,screenDelta:f,isHorizontal:!0}),r.isDefined(t)&&r.isDefined(i)&&(o.businessDelta=s=this._getBusinessDelta(o.axisType,t,i,o.base),this.needTickIntervalCalculation(s,e.majorTickInterval,o.incidentOccured)&&(o.isStartTickGenerated=!0,e.majorTickInterval=u.tickIntervalCalculator.getTickInterval(o),o.tickInterval=e.majorTickInterval))},_getTextFunc:function(n){return n.getText||function(n){return n.toString()}},_generateTicks:function(t){var s=this,f=[],e,c=t.max-t.min>0,l,a,o,h=t.isStartTickGenerated,v,y=t.useTicksAutoArrangement;if(t.dataType=t.dataType||s._getDataType(t.min),t.businessDelta=v=s._getBusinessDelta(t.axisType,t.min,t.max,t.base),!r.isDefined(t.min)||!r.isDefined(t.max)||isNaN(t.min)||isNaN(t.max))f=t.isHorizontal?["canvas_position_left","canvas_position_center","canvas_position_right"]:["canvas_position_bottom","canvas_position_middle","canvas_position_top"],y=!1,f.hideLabels=!0;else{if(o=n.isNumeric(t.min)&&n.isNumeric(t.max)&&!n.isNumeric(t.tickInterval)?i:t.tickInterval,this.needTickIntervalCalculation(v,o,t.incidentOccured)&&(h=r.isDefined(h)?h:!0,o=u.tickIntervalCalculator.getTickInterval(t)),f.tickInterval=o,o&&o.valueOf()!==0&&t.min.valueOf()!==t.max.valueOf()){e=h?s._generateStartTick(o,t):t.min;do{if(f.push(e),e=s._nextTick(e,o,t),f[f.length-1].valueOf()===e.valueOf())break;l=e-t.min>0,a=t.max-e>0}while(c===l&&c===a);f.push(e),s._correctBoundedTicks(t.min,t.max,f,t.addMinMax)}t.min.valueOf()===t.max.valueOf()&&(e=t.min,f.push(e))}return f},_getAutoArrangementStep:function(n,t){var u=this,i,r=t.isHorizontal?t.textSpacing:0;return t.getCustomAutoArrangementStep?t.getCustomAutoArrangementStep(n,t):t.maxDisplayValueSize>0?(i=o((t.screenDelta+t.textSpacing)/(t.maxDisplayValueSize+r)),s((t.ticksCount||n.length)/i)):1},_getAutoArrangementTicks:function(n,t,i){var f=this,r=n,u;if(i>1){for(r=[],u=0;u<n.length;u+=i)r.push(n[u]);r.tickInterval=n.tickInterval*i}return r},isOverlappedTicks:function(n,t){return t.maxDisplayValueSize=this._getValueSize(n,t),this._getAutoArrangementStep(n,t)>1},getCorrectedTicks:function(n,t){var i=Math.ceil(u.tickIntervalCalculator.getTickInterval({screenDelta:t.screenDelta*4,businessDelta:n.length,gridSpacingFactor:t.gridSpacingFactor,numberMultipliers:t.numberMultipliers,dataType:"numeric"}))||n.length;return this._getAutoArrangementTicks(n,t,i)},needTickIntervalCalculation:function(n,t,i){var u;if(r.isDefined(t)){if(!r.isNumber(t)&&(u=new Date,t=r.addInterval(u,t)-u,!t))return!0;if(r.isNumber(t))if(t>0&&n/t>c)i&&i("W2003");else return!1}return!0},getTickIntervals:function(n,t,i,u,f,e){var s=this,h,e=e||{},o={majorTickInterval:u.tickInterval,minorTickInterval:f.tickInterval,majorTicks:[]};return u.base=f.base=e.base,u.axisType=f.axisType=e.axisType,u.dataType=f.dataType=e.dataType,s._initializeMajorTicksOptions(n,t,i,o,u),r.isDefined(n)&&r.isDefined(t)&&(o.majorTicks.push(n),o.majorTicks.push(s._nextTick(n,o.majorTickInterval,{min:n,max:t,setTicksAtUnitBeginning:u.setTicksAtUnitBeginning,dataType:e.dataType,axisType:e.axisType,base:e.base})),s._initializeMinorTicksOptions(n,t,i,o,f)),o},getFullTicks:function(n,t,i,u,f,e){var s=this,h,e=e||{},o={customBoundaryTicks:[],fullTicks:[],majorTickInterval:u.tickInterval,majorTicks:[],minorTickInterval:f.tickInterval,minorTicks:[]};if(u.base=f.base=e.base,u.axisType=f.axisType=e.axisType,u.dataType=f.dataType=e.dataType||s._getDataType(n),s._initializeMajorTicksOptions(n,t,i,o,u),o.majorTicks=s.getTicks(u),r.isDefined(n)&&r.isDefined(t)&&o.majorTicks.length>0){for(o.majorTicks.autoArrangementStep&&o.majorTicks.autoArrangementStep>1&&!r.isDefined(f.tickInterval)&&!r.isDefined(f.minorTickCount)&&(f.tickInterval=o.minorTickInterval=u.tickInterval),s._initializeMinorTicksOptions(n,t,i,o,f),s._addLeftBoudedTicks(o,n,f),h=0;h<o.majorTicks.length-1;h++)o.fullTicks.push(o.majorTicks[h]),s._addMinorTicks(o.majorTicks[h],o.majorTicks[h+1],o,f);s._addRightBoudedTicks(o,t,f)}return o},getTicks:function(t){var u=this,f,e,i=t.customTicks?t.customTicks:u._generateTicks(t);return t.useTicksAutoArrangement&&(t.maxDisplayValueSize=u._getValueSize(i,t),f=u._getAutoArrangementStep(i,t),f>1&&(r.isDefined(t.tickInterval)||r.isDefined(t.customTicks)?(r.isDefined(t.customTicks)&&(i.tickInterval=t.tickInterval),i=u._getAutoArrangementTicks(i,t,f)):i=u._generateTicks(n.extend({},t,{gridSpacingFactor:t.maxDisplayValueSize})),i.autoArrangementStep=f),u._removeInvalidDatesWithUnitBegining(i,t)),i}}}(jQuery,DevExpress),function(n,t){var r=t.utils,f=r.isDefined,e=r.getPower,u=Math.round;t.viz.core.numericTranslatorFunctions={translate:function(n){var i=this,t=i._canvasOptions,r=t.rangeDoubleError,e=i.translateSpecialCase(n);return f(e)?e:isNaN(n)||n.valueOf()+r<t.rangeMin||n.valueOf()-r>t.rangeMax?null:u(i._calculateProjection((n-t.rangeMinVisible)*t.ratioOfCanvasRange))},untranslate:function(n){var t=this._canvasOptions,i=t.startPoint;return n<i||n>t.endPoint?null:this._calculateUnProjection((n-i)/t.ratioOfCanvasRange)},getInterval:function(){return u(this._canvasOptions.ratioOfCanvasRange*(this._businessRange.interval||Math.abs(this._canvasOptions.rangeMax-this._canvasOptions.rangeMin)))}}}(jQuery,DevExpress),function(n,t){var u=t.viz.core,r=u.numericTranslatorFunctions;u.datetimeTranslatorFunctions={translate:r.translate,untranslate:function(n){var t=r.untranslate.call(this,n);return t===null?t:new Date(t)},getInterval:r.getInterval}}(jQuery,DevExpress),function(n,t){function f(n){return r(r(n*10)/10)}var u=t.utils.isDefined,r=Math.round;t.viz.core.categoryTranslatorFunctions={translate:function(n){var t=this,f=t._canvasOptions,i=t._categoriesToPoints[n],e,o=t.translateSpecialCase(n);return u(o)?o:i?(e=t._businessRange.stick?i.index:i.index+.5,r(f.startPoint+f.interval*e)):0},untranslate:function(n){var i=this,r=i._canvasOptions,u=r.startPoint,e=i._categories.length,t=0;return n<u||n>r.endPoint?null:(t=f((n-u)/r.interval+(i._businessRange.stick?.5:0)-.5),e===t&&t--,r.invert&&(t=e-t-1),i._categories[t])},getInterval:function(){return this._canvasOptions.interval}}}(jQuery,DevExpress),function(n,t){var f=t.viz.core,r=f.numericTranslatorFunctions,u=t.utils,e=u.raiseTo,o=u.getLog;f.logarithmicTranslatorFunctions={translate:function(n){var t=this,i=t.translateSpecialCase(n);return u.isDefined(i)?i:r.translate.call(t,o(n,t._businessRange.base))},untranslate:function(n){var t=r.untranslate.call(this,n);return t===null?t:e(t,this._businessRange.base)},getInterval:r.getInterval}}(jQuery,DevExpress),function(n){function r(){this.setDomain(arguments[0],arguments[1]).setCodomain(arguments[2],arguments[3])}var i=Number;r.prototype={constructor:r,setDomain:function(n,t){var r=this;return r._domain1=i(n),r._domain2=i(t),r._domainDelta=r._domain2-r._domain1,r},setCodomain:function(n,t){var r=this;return r._codomain1=i(n),r._codomain2=i(t),r._codomainDelta=r._codomain2-r._codomain1,r},getDomain:function(){return[this._domain1,this._domain2]},getCodomain:function(){return[this._codomain1,this._codomain2]},getDomainStart:function(){return this._domain1},getDomainEnd:function(){return this._domain2},getCodomainStart:function(){return this._codomain1},getCodomainEnd:function(){return this._codomain2},getDomainRange:function(){return this._domainDelta},getCodomainRange:function(){return this._codomainDelta},translate:function(n){var t=(i(n)-this._domain1)/this._domainDelta;return 0<=t&&t<=1?this._codomain1+t*this._codomainDelta:NaN},adjust:function(n){var t=(i(n)-this._domain1)/this._domainDelta,r=NaN;return t<0?r=this._domain1:t>1?r=this._domain2:0<=t&&t<=1&&(r=i(n)),r}},n.viz.core.Translator1D=r}(DevExpress),function(n,t){var r=t.viz.core,u=t.utils,e=u.getLog,o=u.getPower,s=u.raiseTo,f=u.isDefined,h=["width","height","left","top","bottom","right"],c=1,l=6e4,a=function(t){return n.each(h,function(n,i){t[i]=parseInt(t[i])||0}),t},p=function(n,t,i){return s(Math.floor(e(n,t))+(i||0),t)},v=function(n,t){for(var u={},r,f=n.length,i=0;i<f;i++)r=n[i],u[r]={name:r,index:t?f-1-i:i};return u},y=function(n){function t(t,i){!f(n[t])&&f(n[i])&&(n[t]=n[i])}return t("minVisible","min"),t("maxVisible","max"),n};r.Translator2D=function(t,i,r){var u=this;u._options=n.extend(u._options||{},r),u._canvas=a(i),u.updateBusinessRange(t)},n.extend(r.Translator2D.prototype,{reinit:function(){var n=this,i=n._businessRange,f=i.categories||[],t={},u=n._prepareCanvasOptions(),e,o;switch(i.axisType){case"logarithmic":t=r.logarithmicTranslatorFunctions;break;case"discrete":t=r.categoryTranslatorFunctions,n._categories=f,o=f.length-(i.stick?1:0),e=o>0?u.canvasLength/o:u.canvasLength,u.interval=e,n._categoriesToPoints=v(f,u.invert);break;default:t=i.dataType==="datetime"?r.datetimeTranslatorFunctions:r.numericTranslatorFunctions}n.translate=t.translate,n.untranslate=t.untranslate,n.getInterval=t.getInterval},_getCanvasBounds:function(n){var t=n.min,i=n.max,r=n.minVisible,o=n.maxVisible,s,h,a=n.base,y=u.isDate(i)||u.isDate(t),v=y?l:c;return f(t)&&f(i)&&t.valueOf()===i.valueOf()&&(s=t.valueOf()-v,h=i.valueOf()+v,y?(t=new Date(s),i=new Date(h)):(t=t!==0?s:0,i=h)),f(r)&&f(o)&&r.valueOf()===o.valueOf()&&(s=r.valueOf()-v,h=o.valueOf()+v,y?(r=s<t.valueOf()?t:new Date(s),o=h>i.valueOf()?i:new Date(h)):(r!==0&&(r=s<t?t:s),o=h>i?i:h)),n.axisType==="logarithmic"&&(o=e(o,a),r=e(r,a),t=e(t,a),i=e(i,a)),{base:a,rangeMin:t,rangeMax:i,rangeMinVisible:r,rangeMaxVisible:o}},_prepareCanvasOptions:function(){var t=this,u,f,e,s,i=t._businessRange,n=t._canvasOptions=t._getCanvasBounds(i),r;return t._options.direction==="horizontal"?(n.startPoint=t._canvas.left,r=t._canvas.width,n.endPoint=t._canvas.width-t._canvas.right,n.invert=i.invert):(n.startPoint=t._canvas.top,r=t._canvas.height,n.endPoint=t._canvas.height-t._canvas.bottom,n.invert=!i.invert),t.canvasLength=n.canvasLength=n.endPoint-n.startPoint,n.rangeDoubleError=Math.pow(10,o(n.rangeMax-n.rangeMin)-o(r)-2),n.ratioOfCanvasRange=n.canvasLength/(n.rangeMaxVisible-n.rangeMinVisible),n},updateBusinessRange:function(n){this._businessRange=y(n),this.reinit()},getBusinessRange:function(){return this._businessRange},getCanvasVisibleArea:function(){return{min:this._canvasOptions.startPoint,max:this._canvasOptions.endPoint}},translateSpecialCase:function(n){var f=this,e=f._canvasOptions,i=e.startPoint,r=e.endPoint,u=f._businessRange,s=u.minVisible,h=u.maxVisible,o,t=null;switch(n){case"canvas_position_default":s<=0&&h>=0?t=f.translate(0):(o=u.invert^(s<=0&&h<=0),t=f._options.direction==="horizontal"?o?r:i:o?i:r);break;case"canvas_position_left":case"canvas_position_top":t=i;break;case"canvas_position_center":case"canvas_position_middle":t=i+e.canvasLength/2;break;case"canvas_position_right":case"canvas_position_bottom":t=r;break;case"canvas_position_start":t=u.invert?r:i;break;case"canvas_position_end":t=u.invert?i:r}return t},_calculateProjection:function(n){var t=this._canvasOptions;return t.invert?t.endPoint-n:t.startPoint+n},_calculateUnProjection:function(n){var t=this._canvasOptions;return t.invert?t.rangeMaxVisible.valueOf()-n:t.rangeMinVisible.valueOf()+n}})}(jQuery,DevExpress),function(n){var i=window.isFinite;n.viz.core.Rectangle=n.Class.inherit({ctor:function(n){var t=this;n=n||{},t.left=Number(n.left)||0,t.right=Number(n.right)||0,t.top=Number(n.top)||0,t.bottom=Number(n.bottom)||0},width:function(){return this.right-this.left},height:function(){return this.bottom-this.top},horizontalMiddle:function(){return(this.left+this.right)/2},verticalMiddle:function(){return(this.top+this.bottom)/2},raw:function(){var n=this;return{left:n.left,top:n.top,right:n.right,bottom:n.bottom}},clone:function(){return new this.constructor(this.raw())},move:function(n,t){var r=this.clone();return i(n)&&i(t)&&(r.left+=Number(n),r.right+=Number(n),r.top+=Number(t),r.bottom+=Number(t)),r},inflate:function(n,t){var r=this.clone();return i(n)&&i(t)&&(r.left-=Number(n),r.right+=Number(n),r.top-=Number(t),r.bottom+=Number(t)),r},scale:function(n){var t=this;return n>0?t.inflate(t.width()*(n-1)/2,t.height()*(n-1)/2):t.clone()}})}(DevExpress),function(n,t,i){var r=t.viz,u=r.core,e=0,f=function(n){for(var i=r.themes,t=0;t<i.length;t++)if(i[t].name===n)return t;return-1};u.findTheme=function(n){var t=f(n),i=r.themes;return t<0&&(t=e),i[t]},u.currentTheme=function(n,t,u){var o=-1,s=r.themes;if(n===i)return s[e].name;u&&t&&(o=f(n+":"+u+"-"+t)),o<0&&u&&(o=f(n+":"+u)),t&&o<0&&(o=f(n+"-"+t)),o<0&&(o=f(n)),e=o>=0?o:0},u.registerTheme=function(t,i){var f,e,o=r.themes;t&&t.name&&u.findTheme(t.name)&&(f=u.findTheme(i),f?(e=n.extend(!0,{},f,t),o.push(e)):o.push(t))}}(jQuery,DevExpress),function(n,t,i){function a(n){if(n===i)return s;n=String(n).toLowerCase(),s=n in r?n:"default"}function h(n,t){var i,f;if(u(n))i=n;else{if(t=t||{},f=t.type||"simpleSet",l(n)){var o=n.toLowerCase(),h=r[o],c=t.theme&&r[o+"_"+e(t.theme).toLowerCase()];i=c&&c[f]||h&&h[f]}i||(i=r[s][f])}return i?i.slice(0):null}function v(n,t,f){var s={},h;u(t)?s.simpleSet=t.slice(0):t&&(s.simpleSet=u(t.simpleSet)?t.simpleSet.slice(0):i,s.indicatingSet=u(t.indicatingSet)?t.indicatingSet.slice(0):i,s.gradientSet=u(t.gradientSet)?t.gradientSet.slice(0):i),(s.simpleSet||s.indicatingSet||s.gradientSet)&&(h=e(n).toLowerCase(),f&&(h=h+"_"+e(f).toLowerCase()),o(r[h]=r[h]||{},s))}function y(n){var t=0;this.next=function(){var i=n[t++];return t==n.length&&this.reset(),i},this.reset=function(){t=0}}function c(n,t){t=t||{},this._originalPalette=h(n,t);var i=t?t.stepHighlight||0:0;this._paletteSteps=new y([0,i,-i]),this._resetPalette()}function p(n,t){var i=new f(n).alter(t),r=w(i);return(r>200||r<55)&&(i=new f(n).alter(-t/2)),i.toHex()}function w(n){return n.r*.3+n.g*.59+n.b*.11}function b(n,t){var i=h(n,{type:"gradientSet"});i=t>0?k(i[0],i[1],t):[],this.getColor=function(n){return i[n]||null}}function k(n,t,i){var e=new f(n),o=new f(t);if(i===1)return[e.blend(o,.5).toHex()];var u=[],h=1/(i-1),r,s=i;for(u.push(0),r=1;r<s-1;++r)u.push(h*r);for(u.push(1),r=0;r<s;++r)u[r]=e.blend(o,u[r]).toHex();return u}var e=window.String,f=n.Color,u=n.utils.isArray,l=n.utils.isString,o=t.extend,r={"default":{simpleSet:["#5f8b95","#ba4d51","#af8a53","#955f71","#859666","#7e688c"],indicatingSet:["#a3b97c","#e1b676","#ec7f83"],gradientSet:["#5f8b95","#ba4d51"]},"harmony light":{simpleSet:["#fcb65e","#679ec5","#ad79ce","#7abd5c","#e18e92","#b6d623","#b7abea","#85dbd5"],indicatingSet:["#b6d623","#fcb65e","#e18e92"],gradientSet:["#7abd5c","#fcb65e"]},"soft pastel":{simpleSet:["#60a69f","#78b6d9","#6682bb","#a37182","#eeba69","#90ba58","#456c68","#7565a4"],indicatingSet:["#90ba58","#eeba69","#a37182"],gradientSet:["#78b6d9","#eeba69"]},pastel:{simpleSet:["#bb7862","#70b3a1","#bb626a","#057d85","#ab394b","#dac599","#153459","#b1d2c6"],indicatingSet:["#70b3a1","#dac599","#bb626a"],gradientSet:["#bb7862","#70b3a1"]},bright:{simpleSet:["#70c92f","#f8ca00","#bd1550","#e97f02","#9d419c","#7e4452","#9ab57e","#36a3a6"],indicatingSet:["#70c92f","#f8ca00","#bd1550"],gradientSet:["#e97f02","#f8ca00"]},soft:{simpleSet:["#cbc87b","#9ab57e","#e55253","#7e4452","#e8c267","#565077","#6babac","#ad6082"],indicatingSet:["#9ab57e","#e8c267","#e55253"],gradientSet:["#9ab57e","#e8c267"]},ocean:{simpleSet:["#75c099","#acc371","#378a8a","#5fa26a","#064970","#38c5d2","#00a7c6","#6f84bb"],indicatingSet:["#c8e394","#7bc59d","#397c8b"],gradientSet:["#acc371","#38c5d2"]},vintage:{simpleSet:["#dea484","#efc59c","#cb715e","#eb9692","#a85c4c","#f2c0b5","#c96374","#dd956c"],indicatingSet:["#ffe5c6","#f4bb9d","#e57660"],gradientSet:["#efc59c","#cb715e"]},violet:{simpleSet:["#d1a1d1","#eeacc5","#7b5685","#7e7cad","#a13d73","#5b41ab","#e287e2","#689cc1"],indicatingSet:["#d8e2f6","#d0b2da","#d56a8a"],gradientSet:["#eeacc5","#7b5685"]}},s="default";o(c.prototype,{dispose:function(){return this._originalPalette=this._palette=this._paletteSteps=null,this},getNextColor:function(){var n=this;return n._currentColor>=n._palette.length&&n._resetPalette(),n._palette[n._currentColor++]},_resetPalette:function(){var n=this,r,t;if(n._currentColor=0,r=n._paletteSteps.next(),t=n._originalPalette,r)for(var u=n._palette=[],i=0,f=t.length;i<f;++i)u[i]=p(t[i],r);else n._palette=t.slice(0)},reset:function(){return this._paletteSteps.reset(),this._resetPalette(),this}}),o(n.viz.core,{registerPalette:v,getPalette:h,Palette:c,GradientPalette:b,currentPalette:a})}(DevExpress,jQuery),function(n,t){var u=n.utils.isString,f=n.viz.core.findTheme,r=t.extend,e=t.each;n.viz.core.BaseThemeManager=n.Class.inherit({dispose:function(){return this._theme=this._font=null,this},setTheme:function(n){n=n||{};var t=this,i=f(u(n)?n:n.name);return t._themeName=i.name,t._font=r({},i.font,n.font),t._themeSection&&e(t._themeSection.split("."),function(n,u){i=r(!0,{},i[u],t._IE8?i[u+"IE8"]:{})}),t._theme=r(!0,{},i,u(n)?{}:n),t._initializeTheme(),t},theme:function(){return this._theme},themeName:function(){return this._themeName},_initializeTheme:function(){},_initializeFont:function(n){r(n,this._font,r({},n))}})}(DevExpress,jQuery),function(n){var i=Math.min;n.viz.core.TextCloud=n.Class.inherit(function(){var t={horMargin:8,verMargin:4,tailLength:10},n={};return n["right-bottom"]=n.rb=[0,-1,-1,0,0,1,1,0],n["bottom-right"]=n.br=[-1,0,0,-1,1,0,0,1],n["left-bottom"]=n.lb=[0,-1,1,0,0,1,-1,0],n["bottom-left"]=n.bl=[1,0,0,-1,-1,0,0,1],n["left-top"]=n.lt=[0,1,1,0,0,-1,-1,0],n["top-left"]=n.tl=[1,0,0,1,-1,0,0,-1],n["right-top"]=n.rt=[0,1,-1,0,0,-1,1,0],n["top-right"]=n.tr=[-1,0,0,1,1,0,0,-1],{setup:function(r){var e=this,f=$.extend({},t,r),h=f.x,c=f.y,u=n[f.type],o=f.textWidth+2*f.horMargin,s=f.textHeight+2*f.verMargin,l=f.tailLength,a=l,v=h,y=c;return u[0]&1?a=i(a,s/3):l=i(l,o/3),e._points=[h,c,h+=u[0]*(o+l),c+=u[1]*(s+a),h+=u[2]*o,c+=u[3]*s,h+=u[4]*o,c+=u[5]*s,h+=u[6]*(o-l),c+=u[7]*(s-a)],e._cx=v+u[0]*l+(u[0]+u[2])*o/2,e._cy=y+u[1]*a+(u[1]+u[3])*s/2,e._cloudWidth=o,e._cloudHeight=s,e._tailLength=f.tailLength,e},points:function(){return this._points.slice(0)},cx:function(){return this._cx},cy:function(){return this._cy},width:function(){return this._cloudWidth},height:function(){return this._cloudHeight},tailLength:function(){return this._tailLength}}}())}(DevExpress),function(n,t){var r=t.viz,u=r.core,f=t.Class,i=t.utils.isDefined,e=f.inherit({ctor:function(t){t=t||{},this._incidentOccured=n.isFunction(t.incidentOccured)?t.incidentOccured:n.noop},correctValueType:function(n){return n==="numeric"||n==="datetime"||n==="string"?n:""},_parsers:{string:function(n){return i(n)?""+n:n},numeric:function(n){if(!i(n))return n;var t=Number(n);return isNaN(t)&&(t=undefined),t},datetime:function(n){if(!i(n))return n;var t,r=Number(n);return t=isNaN(r)?new Date(n):new Date(r),isNaN(Number(t))&&(t=undefined),t}},getParser:function(t,i){var u=this,r,f="valueType is unknown.";return i&&(f='The type specified as the "valueType" field of the '+i+" configuration object is unknown."),t=u.correctValueType(t),r=u._parsers[t],r||this._incidentOccured.call(null,f),r||n.noop}});u.ParseUtils=e}(jQuery,DevExpress),function(n,t){var r=t.viz.core,i=Math;r.utils={decreaseGaps:function(t,r,u){var f,e,o;do f=n.map(r,function(n){return t[n]?t[n]:null}),o=i.ceil(u/f.length),f.push(o),e=i.min.apply(null,f),n.each(r,function(n,i){t[i]&&(t[i]-=e,u-=e)});while(u>0&&f.length>1);return u}}}(jQuery,DevExpress),function(n,t){var u=t.viz,f=u.core,e={easing:"linear",duration:150},i={x:-1e4,y:-1e4},r=function(n,t,i,r){var u=n.animation;u&&(u.options.complete=null,u.stop()),i?n.animate(t,{complete:r}):(n.applySettings(t),r&&r())};f.LoadIndicator=t.Class.inherit({ctor:function(t,i){var r=this;r._$widgetContainer=n(i),r._$container=n("<div>",{css:{position:"relative",height:0,padding:0,margin:0,border:0}}).appendTo(r._$widgetContainer),r._updateContainer(),r.applyOptions(t),r._endLoadingCompleteHandler=function(){r._endLoad=!1,r._externalComplete&&r._externalComplete(),r._externalComplete=null,r._onCompleteAction&&r[r._onCompleteAction](),r._onCompleteAction=null},r._$container.hide()},_updateRenderer:function(n,t,i){return this._renderer?this._renderer.recreateCanvas(n,t):this._$container.get(0)&&(this._renderer=new u.renderers.Renderer({width:n,height:t,animation:e}),this._renderer.draw(this._$container[0])),this._renderer&&this._renderer.getRoot().applySettings({style:{position:"absolute",top:i,left:0}}),this._renderer},applyOptions:function(n,t,i){var r=this._pane;r&&n&&(r.rect.applySettings({fill:n.backgroundColor}),r.text.applySettings({font:n.font,text:n.text})),this.isShown&&(t||i)&&this._updateContainer(t,i)},_draw:function(){var n,t=this._renderer;t&&(n=this._pane={},n.rect=t.createRect(0,0,0,0,0,{opacity:0}).append(),n.text=t.createText("",0,0,{align:"center",translateX:i.x,translateY:i.y}).append())},_updateContainer:function(n,t){var i=this,r=i._$widgetContainer,u;n=n||r.width(),t=t||r.height(),u=r.get(0)?r.offset().top-i._$container.offset().top:-t,i._updateRenderer(n,t,u),i._pane?(i._pane.rect.applySettings({width:n,height:t}),i._pane.text.move(n/2,t/2)):i._draw()},dispose:function(){this._$widgetContainer=null,this._$container.remove().detach(),this._$container=null,this._renderer.dispose(),this._renderer=null,this._pane=null},toForeground:function(){this._$container.appendTo(this._$widgetContainer)},show:function(n,t){if(this._endLoad){this._onCompleteAction="show";return}this._$container.show(),this._updateContainer(n,t),r(this._pane.rect,{opacity:.85},!0),this.isShown=!0},endLoading:function(n,t){(this._externalComplete=n,this._endLoad)||(this.isShown?(this._endLoad=!0,r(this._pane.rect,{opacity:1},!t,this._endLoadingCompleteHandler)):n&&n())},hide:function(){var n=this;if(this._endLoad){this._onCompleteAction="hide";return}this.isShown&&(this._pane.text.move(i.x,i.y),r(n._pane.rect,{opacity:0},!0,function(){n._$container.hide()}),this.isShown=!1)}})}(jQuery,DevExpress),function(n,t,i){var r=20,o=10,v=t.formatHelper,y=15,l=Math.max,p=Math.round,a=t.utils.isFunction,u=t.utils.isDefined,h=n.extend,w={argument:["argumentFormat","argumentPrecision"],percent:["percent","percentPrecision"],value:["format","precision"]},s={visibility:"visible"},c={visibility:"hidden"},f="left",e="right";t.viz.core.Tooltip=t.Class.inherit({ctor:function(t,i,r){this._state={},this._options={},this._renderer=r,this._group=i,this._cloud=r.createArea(),this._textGroup=r.createGroup(),n.isEmptyObject(t)||this.update(t),this._createTextContent()},dispose:function(){return this._shadow.dispose(),this._shadow=null,this._cloud=null,this._text=null,this._group=null,this._options=null,this._renderer=null,this._tooltipTextArray=null,this._textGroup=null,this},update:function(n){n=n||{};var t=this,u=t._group,r=n.shadow||{},f=t._shadow=t._shadow||t._renderer.createFilter("shadow").applySettings({width:"200%",height:"200%",color:r.color,opacity:r.opacity,dx:r.offsetX,dy:r.offsetY,blur:r.blur,x:"-50%",y:"-50%"}),i=n.border,e=h({opacity:n.opacity,filter:f.append().ref},i&&i.visible?{strokeWidth:i.width,stroke:i.color,strokeOpacity:i.opacity,dashStyle:i.dashStyle}:{strokeWidth:null,stroke:null}),o=h({},{align:"center",font:n.font},n.text);return t._options=n,t.setSize(n.canvasWidth,n.canvasHeight),t._customizeTooltip=a(n.customizeTooltip)?n.customizeTooltip:null,!t._customizeTooltip&&a(n.customizeText)&&(t._customizeTooltip=function(){return{text:n.customizeText.apply(this,arguments)}}),t._cloud.applySettings(e).append(u),t._text&&n.font&&t._text.applySettings({font:{size:n.font.size}}),t._textGroup.applySettings(o).append(u),t.hide(),t},formatValue:function(n,t){var i=w[t||"value"],r=i[0]in this._options?this._options[i[0]]:t;return v.format(n,r,this._options[i[1]]||0)},prepare:function(t,i,r){var e,f;return this._state=this._state||{},r=r||"valueText",e=t[r]||"",h(this._state,i),this._customizeTooltip?(f=this._customizeTooltip.call(t,t),f=n.isPlainObject(f)?f:{},"text"in f?this._state.text=u(f.text)?String(f.text):"":(n.isArray(e)&&(this._options._justify=!0,this._createTextContent(),e=e.join("<br/>")),this._state.text=e),this._state.color=f.color||this._options.color):(this._state.text=e,this._state.color=this._options.color),this._options._justify&&(this._state.text=this._state.text.split("<br/>")),this._state.visibility!=s||!this._state.text||this.show(),!!this._state.text},enabled:function(){return!!this._options.enabled},formatColorTooltip:function(n){return n._customizeTooltip&&n._customizeTooltip.call(this,this)},_getData:function(){var n=this,o=n._state.x,c=n._state.y,w=o,l=c,b="center",v=[],a=n._state.textBBox,s=n._options,y=s.paddingLeftRight,d=s.paddingTopBottom,h=s.arrowLength>0?s.arrowLength:0,p=s.cloudHorizontalPosition,k=s.cloudVerticalPosition,g=p!==i&&p!==null,nt=k!==i&&k!==null,r=a.width+y*2,t=a.height+d*2,u;return u=n._checkWidthText(r,t),u&&(n._state.textBBox=a=u.bbox,r=u.cloudWidth,t=u.cloudHeight,y=u.paddingLeftRight,d=u.paddingTopBottom),(g?p===e:r/2>o)?(v=n._setArrowLeft(r,t,h,o,c),b=f,w+=y):(g?p===f:o+r/2>n._canvasWidth)?(v=n._setArrowRight(r,t,h,o,c),b=e,w-=y):v=n._setArrowCenter(r,t,h,o,c),(nt?k==="top":t+h<c)?(l-=h+t/2-a.height/2+n._state.offset,n.tooltipInverted=!1):(l+=h+t/2+a.height/2+n._state.offset,n.tooltipInverted=!0),l=n._correctYTextContent(l),{points:v,text:{x:w,y:l,align:b}}},_updateTextContent:function(){this._options._justify?(this._textGroup.clear(),this._calculateTextContent(),this._locateTextContent(0,0,"center")):this._text.updateText(this._state.text),this._state.textBBox=this._textGroup.getBBox()},_correctYTextContent:function(n){var t;return this._options._justify?(this._locateTextContent(0,n,"center"),t=this._textGroup.getBBox()):(this._text.applySettings({y:n}),t=this._text.getBBox()),n-(t.y+t.height-n)},_adjustTextContent:function(n){this._options._justify?this._locateTextContent(n.text.x,n.text.y,n.text.align):this._text.applySettings({x:n.text.x,y:n.text.y,align:n.text.align})},_updateTooltip:function(){var n=this,t,r,i;r=n._getData(),n._cloud.applySettings({points:r.points,fill:n._state.color,"class":n._state.className}),n._adjustTextContent(r),t=n._group.getBBox(),t.y+t.height>n._canvasHeight?(i=(n._canvasHeight-t.y)/t.height,n._group.applySettings({scale:i,translateX:n._state.x*(1-i),translateY:n._state.y*(1-i)})):n._group.applySettings({scale:1,translateX:0,translateY:0})},_createTextContent:function(){var n=this,t=n._options,r;n._textGroup.clear(),n._text=null,t._justify||(r=t.font&&t.font.size,n._text=n._renderer.createText(i,0,0,{font:{size:r}}).append(n._textGroup))},_getTextContentParams:function(){var n=this,t,r,i,u=n._state.text,e=u.length,f={width:[],height:[]};for(n._tooltipTextArray=[],t=0;t<e;t++)r=n._renderer.createText(u[t],0,0,{}).append(this._textGroup),n._tooltipTextArray.push(r),i=r.getBBox(),f.width.push(i.width);return n._lineHeight=-2*i.y-i.height,f},_locateTextContent:function(n,t,i){var o=this,s=o._tooltipTextArray,c=o._textContentWidth,a=o._options.lineSpacing,v=(a>0?a:0)+o._lineHeight,r,l,u,h=o._options._rtl;for(r=i===f?n:i===e?n-c:p(n-c/2),l=r+c,u=s.length-1;u>=0;u-=2)s[u].applySettings({x:h?r:l,y:t,align:h?f:e}),s[u-1]&&s[u-1].applySettings({x:h?l:r,y:t,align:h?e:f}),t-=v},_calculateTextContent:function(){for(var i=this,f=i._state.text,e=f.length,r,u=[],t=i._getTextContentParams(),n=0;n<e;n+=2)r=t.width[n+1]?t.width[n]+y+t.width[n+1]:t.width[n],u.push(r);i._textContentWidth=l.apply(null,u)},setSize:function(n,t){return this._canvasWidth=u(n)?n:this._canvasWidth,this._canvasHeight=u(t)?t:this._canvasHeight,this},getBBox:function(){var r=this,t=r._options,u=t.paddingLeftRight||0,f=t.paddingTopBottom||0,i=t.border.visible&&t.border.width||0,n=r._textGroup.getBBox();return n.isEmpty?n:{x:n.x-u-i/2-o,y:n.y-f-i/2-o,height:n.height+2*f+i+o*2,width:n.width+2*u+i+o*2,isEmpty:!1}},show:function(){return this._state.visibility=s,this._updateTextContent(),this.move(this._state.x,this._state.y,this._state.offset),this._cloud.applySettings(s),this._textGroup.applySettings(s),this},hide:function(){return this._state.visibility=c,this._cloud.applySettings(c),this._textGroup.applySettings(c),this},move:function(n,t,i){return this._state.x=u(n)?n:this._state.x||0,this._state.y=u(t)?t:this._state.y||0,this._state.offset=u(i)?i:this._state.offset||0,this._updateTooltip(),this},_setArrowCenter:function(n,t,u,f,e){var s=this,h=s._options.cloudVerticalPosition,tt=h!==i&&h!==null,o=!(tt?h==="top":t+u<e),v=f,c=o?e+s._state.offset:e-s._state.offset,y=v+r/2,p=o?c+u:c-u,w=y+n/2-r/2,l=p,b=w,k=o?l+t:l-t,d=b-n,a=k,g=d,nt=o?a-t:a+t,it=g+n/2-r/2,rt=nt;return[v,c,y,p,w,l,b,k,d,a,g,nt,it,rt]},_setArrowLeft:function(n,t,u,f,e){var s=this,h=s._options.cloudVerticalPosition,g=h!==i&&h!==null,o=!(g?h==="top":t+u<e),v=f,c=o?e+s._state.offset:e-s._state.offset,y=v+r,p=o?c+u:c-u,w=y+n-r,l=p,b=w,k=o?l+t:l-t,d=b-n,a=k,nt=d,tt=o?a-t-u:a+t+u;return[v,c,y,p,w,l,b,k,d,a,nt,tt]},_setArrowRight:function(n,t,u,f,e){var s=this,h=s._options.cloudVerticalPosition,g=h!==i&&h!==null,o=!(g?h==="top":t+u<e),v=f,c=o?e+s._state.offset:e-s._state.offset,y=v,p=o?c+u+t:c-u-t,w=y-n,l=p,b=w,k=o?l-t:l+t,d=b+n-r,a=k,nt=d+r,tt=o?a-u:a+u;return[v,c,y,p,w,l,b,k,d,a,nt,tt]},_checkWidthText:function(n,t){if(!this._options._justify){var i=this._state.x,r=this._state.text,u,o=this._options.paddingLeftRight,s=this._options.paddingTopBottom,h,a,c,f,e=this._state.textBBox;if(n<i||i+n<this._canvasWidth||n/2<i&&i+n/2<this._canvasWidth)return!1;if(r.indexOf("<br/>")===-1&&r.indexOf(" ")!==-1){for(a=l(i,this._canvasWidth-i,2*Math.min(i,this._canvasWidth-i)),h=r.length*a/e.width,u=r.substr(0,~~h).lastIndexOf(" "),u===-1&&(u=r.substr(0).indexOf(" ")),c=r.substr(u+1).length,this._state.text=r.substr(0,u)+"<br/>";h<=c;)if(f=r.substr(u+1,~~h).lastIndexOf(" "),f===-1&&(f=r.substr(u+1).indexOf(" ")),f!==-1)this._state.text+=r.substr(u+1,f)+"<br/>",c=r.substr(u+1+f).length,u+=f+1;else break;this._state.text+=r.substr(u+1),this._text.updateText(this._state.text),e=this._text.getBBox(),n=e.width+o*2,t=e.height+s*2}return n>i&&i+n>this._canvasWidth&&(n/2>i||i+n/2>this._canvasWidth)&&(o=5,s=5,n=e.width+2*o,t=e.height+2*s),{bbox:e,cloudWidth:n,cloudHeight:t,paddingTopBottom:s,paddingLeftRight:o}}}})}(jQuery,DevExpress),function(n,t){function d(n,i,r,e){if(i){var o=i[r].hatching.direction,s,h=i[r].fill;return e=h===f?e:h,o=!o||o===f?u:o,s=t.extend({},i[r].hatching,{direction:o,step:nt,width:g}),n.createPattern(e,s).append().id}}function tt(n){var r=0,u=0,i;return t.each(n,function(n,t){i=t.getBBox(),i.width>r&&(r=i.width),i.height>u&&(u=i.height)}),{width:r,height:u}}var h=10,y=Math,r=y.round,c=y.ceil,p=y.floor,l="center",u="right",e="left",a="top",s="bottom",v="horizontal",w="vertical",b="inside",k="outside",f="none",o=DevExpress.viz.core.utils.decreaseGaps,g=2,nt=5;n.viz.core.Legend=n.Class.inherit({ctor:function(n,t,i,r){var u=this;u._renderer=i,u._legendGroup=r,u._markersPatternsIds=[],u._data=n,u._init(t)},_init:function(n){if(n){var i=this,r;i._parseMargins(n),i._parseAlignments(n),n.orientation=(n.orientation||"").toLowerCase(),n.orientation!==w&&n.orientation!==v&&(n.horizontalAlignment===l&&(n.orientation=v),(n.horizontalAlignment===u||n.horizontalAlignment===e)&&(n.orientation=w)),n.itemTextPosition=n.itemTextPosition?n.itemTextPosition:n.orientation===v?s:u,n.position=(n.position||"").toLowerCase(),n.position!==k&&n.position!==b&&(n.position=k),n.hoverMode=(n.hoverMode||"").toLowerCase(),n.customizeText=t.isFunction(n.customizeText)?n.customizeText:function(){return this.seriesName},i._options=n,i._trackerGroup||(i._trackerGroup=i._renderer.createGroup({"class":"dxc-legend-trackers",stroke:f,fill:"grey",opacity:.0001}))}},_parseMargins:function(n){n.margin>=0?(n.margin=Number(n.margin),n.margin={top:n.margin,bottom:n.margin,left:n.margin,right:n.margin}):n.margin={top:n.margin.top>=0?Number(n.margin.top):h,bottom:n.margin.bottom>=0?Number(n.margin.bottom):h,left:n.margin.left>=0?Number(n.margin.left):h,right:n.margin.right>=0?Number(n.margin.right):h}},_parseAlignments:function(n){n.horizontalAlignment=(n.horizontalAlignment||"").toLowerCase(),n.horizontalAlignment!==l&&n.horizontalAlignment!==u&&n.horizontalAlignment!==e&&(n.horizontalAlignment=u),n.verticalAlignment=(n.verticalAlignment||"").toLowerCase(),n.verticalAlignment!==a&&n.verticalAlignment!==s&&(n.horizontalAlignment===l&&(n.verticalAlignment=s),(n.horizontalAlignment===u||n.horizontalAlignment===e)&&(n.verticalAlignment=a))},update:function(n,t){return this._data=n,this.boundingRect={width:0,height:0,x:0,y:0},this._init(t),this},setSize:function(n){return this._size=n,this},draw:function(){if(!this._options)return this;var n=this,s=n._renderer,h=n._options,i=n._data,r=i.length,l=[],t,a,c,u,v=[],y,p=new Array(r),e,o=h.border,b=o.visible&&o.width&&o.color&&o.color!==f,w=new Array(r);if(!(h.visible&&i&&r))return n._disposeTrackers(),n;for(n._cleanLegendGroups(),y=n._insideLegendGroup=s.createGroup().append(n._legendGroup),n._createBackground(b),t=0;t<r;t++)u=s.createGroup({"class":"dxc-item"}).append(y),c=n._createMarker(i[t],u,t),e=i[t].id,a=n._createLabel(i[t],e,u),p[t]=e,n._locateLabelAndMarker(a,c),w[t]=c,v.push({rect:s.createRect(0,0,0,0,0,{stroke:f,fill:"grey",opacity:.0001,inh:!0}),id:e}),l.push(u);return n._seriesGroups=l,n._trackers=v,n.drawTrackers(),n._markers=w,n._markersId=p,n._locateElements(h),n},_locateElements:function(n){var t=this,i=n.border,r=i.visible&&i.width&&i.color&&i.color!==f;t._moveInInitialValues(),t._locateRowsColumns(t._seriesGroups,t._trackers,t._data.length,t._background,n),t._background&&t._adjustBackgroundSettings(t._background,r,n),t._setBoundingRect(n)},_moveInInitialValues:function(){var n=this;n._legendGroup&&n._legendGroup.move(0,0),n._trackerGroup&&n._trackerGroup.move(0,0),n._background&&n._background.applySettings({x:0,y:0,width:0,height:0})},_applyMarkerOptions:function(n,t){n&&n.applySettings(t)},applySelected:function(n){var t=this._getIndexById(n);return t!==null&&this._applyMarkerOptions(this._markers[t],{fill:this._markersPatternsIds[t].selectedPatternId}),this},applyHover:function(n){var t=this._getIndexById(n);return t!==null&&this._applyMarkerOptions(this._markers[t],{fill:this._markersPatternsIds[t].hoverPatternId}),this},resetItem:function(n){var t=this._getIndexById(n);t!==null&&this._applyMarkerOptions(this._markers[t],{fill:this._data[t].color||this._data[t].states.normal.fill})},_getIndexById:function(n){for(var i=this._markersId,r=i.length,t=0;t<r;t++)if(i[t]===n)return t;return null},drawTrackers:function(){if(this._options.visible&&this._insideLegendGroup){var n=this,i=n._trackerGroup.append(n._legendGroup);return t.each(n._trackers||[],function(t,r){var u=r.rect;u.data({itemIndex:r.id,mode:n._options.hoverMode}),u.append(i)}),n}},_disposeTrackers:function(){var n=this;t.each(n._trackers||[],function(n,t){t.rect.removeData()}),n._trackers=null},_createMarker:function(n,t,i){var r=this,u=r._renderer,s=r._markersPatternsIds,f=r._options.markerSize,e=n.states,o;return o=u.createRect(0,0,f,f,0,{fill:n.color}).append(t),s[i]={hoverPatternId:d(u,e,"hover",n.color),selectedPatternId:d(u,e,"selection",n.color)},o},_createLabel:function(n,t,i){var r=this,u=r._options,f=u.itemTextPosition,c=f===a||f===s?l:e,o,h,v={seriesName:n.text,seriesNumber:t,seriesColor:n.color};return o=r._formatLabel.call(v,u),h=r._renderer.createText(o,0,0,{font:u.font,align:c}).append(i)},_cleanLegendGroups:function(){var n=this,t=n._trackerGroup,i=n._legendGroup;i&&(i.clear(),n._insideLegendGroup&&n._insideLegendGroup.dispose(),n._insideLegendGroup=null),t&&t.clear()},_createBackground:function(n){var t=this,i=t._options,r=i.position===b,u=i.backgroundColor,e=u||(r?i.containerBackgroundColor:f);(r||u||n)&&(t._background=t._renderer.createRect(0,0,0,0,0,{fill:e,"class":"dxc-border"}).append(t._insideLegendGroup))},_formatLabel:function(n){return n.customizeText.call(this,this)},_locateLabelAndMarker:function(n,t){var c=this,l=7,k=4,d=2,f=0,o=0,v,y,i=n.getBBox(),h=c._options.markerSize,p=h,w=p/2-(i.y+i.height/2),b=h/2-(i.x+i.width/2);switch(c._options.itemTextPosition){case e:o=r(w),v=i.width+l;break;case u:f=h+l,o=r(w);break;case a:f=r(b),y=k;break;case s:f=r(b),o=p+d-i.y}n.applySettings({x:f,y:o}),t.applySettings({x:v,y:y})},_locateRowsColumns:function(n,t,i,r,u){function d(n,t){return(n>t||n<1)&&(n=t),n}var o=this,g=u.itemTextPosition,v=o._size,h,l=o._getRowsColumns(i),f=l.rows,e=l.columns,s=u.margin,nt=r?u.paddingLeftRight:0,it=r?u.paddingTopBottom:0,y=v.width-s.left-s.right-2*nt,w=v.height-s.top-s.bottom-2*it,b,rt,k=tt(n),a=function(i,r){b=o._getDataRowsColumns(n,r,i),o._moveItems(b,n,g,t,u)};a(f,e),h=o._insideLegendGroup?o._insideLegendGroup.getBBox():{},l.autoEdit&&(f===1?h.width>y&&e>1&&(e=p(y/(k.width+u.columnItemSpacing))||1,e=d(e,i),f=c(i/e),a(f,e)):e===1&&h.height>w&&f>1&&(f=p(w/(k.height+u.rowItemSpacing))||1,f=d(f,i),e=c(i/f),a(f,e))),o._rowsCountDrawed=f,o._columnsCountDrawed=e},_moveItems:function(n,t,i,r,f){var tt=this,w,v,k,d,y,p,o,s=0,h=0,c,l=f.columnItemSpacing,a=f.rowItemSpacing,it=f.equalColumnWidth,rt=tt._renderer,g=[],nt=0,b=0;for(k=n.rows,d=n.cols,b=n.maxHeightRow,nt=n.maxWidthColumn,g=n.maxWidthPerColumn,w=0;w<k;w++){for(v=0;v<d;v++){if(y=k<d?w*d+v:w+v*k,p=t[y],!p)break;o=p.getBBox(),c=it?nt:g[v],i===u?(p.move(s-o.x,h),r[y].rect.applySettings({x:s-l/2,y:h+o.y-a/2,height:b+a,width:c+l})):i===e?(p.move(o.x+c-o.width+s-l/2,h),r[y].rect.applySettings({x:o.x+c-o.width+s-l/2,y:h+o.y-a/2,height:b+a,width:c+l})):(p.move(s-o.x-o.width/2+c/2,h),r[y].rect.applySettings({x:s-l/2,y:h+o.y-a/2,height:b+a,width:c+l})),s=s+c+l}h=h+b+a,s=0}},_getDataRowsColumns:function(n,t,i){for(var c=this,u,l=c._options,a=l.equalColumnWidth,v=c.series||{},e=[],s=0,h=0,o,f,r=0;r<t;r++)e[r]=0;for(r=0;r<i;r++)for(u=0;u<t;u++){if(o=i<t?n[r*t+u]:n[r+u*i],!o)break;f=o.getBBox(),h<f.height&&(h=f.height),a?s<f.width&&(s=f.width):e[u]<f.width&&(e[u]=f.width)}return{rows:i,cols:t,maxWidthPerColumn:e,maxWidthColumn:s,maxHeightRow:h}},_getRowsColumns:function(n){var s=this,r=s._options,u=r.orientation===v,t=r.rowCount,f=c(n/t),i=r.columnCount,e=c(n/i),o;return i&&!t?t=e:!i&&t?i=f:i&&t?u&&i<f?i=f:!u&&t<e&&(t=e):(o=!0,u?(t=1,i=n):(i=1,t=n)),{rows:t,columns:i,autoEdit:o}},_adjustBackgroundSettings:function(n,t,i){var o=this,f=i.border,e=o._insideLegendGroup.getBBox(),u={x:r(e.x-i.paddingLeftRight),y:r(e.y-i.paddingTopBottom),width:r(e.width)+2*i.paddingLeftRight,height:r(e.height)+2*i.paddingTopBottom,opacity:i.backgroundOpacity};t&&(u.strokeWidth=f.width,u.stroke=f.color,u.strokeOpacity=f.opacity,u.dashStyle=f.dashStyle,u.rx=f.cornerRadius||0,u.ry=f.cornerRadius||0),n.applySettings(u)},_setBoundingRect:function(n){var r=this,t,i=n.margin;r._insideLegendGroup&&(t=r._insideLegendGroup.getBBox(),t.height+=i.top+i.bottom,t.width+=i.left+i.right,t.x-=i.left,t.y-=i.top,r.boundingRect=t)},changeSize:function(n){var i=this,r=t.extend(!0,{},i._options),u=r.margin;n.height>=0&&(n.height=o(u,["top","bottom"],n.height),r.border.visible&&(n.height=2*o(r,["paddingTopBottom"],n.height/2)),i._rowsCountDrawed-1&&(n.height=(i._rowsCountDrawed-1)*o(r,["rowItemSpacing"],n.height/(i._rowsCountDrawed-1)))),n.width>=0&&(n.width=o(u,["left","right"],n.width),r.border.visible&&(n.width=2*o(r,["paddingLeftRight"],n.width/2)),i._columnsCountDrawed-1&&(n.width=(i._columnsCountDrawed-1)*o(r,["columnItemSpacing"],n.width/(i._columnsCountDrawed-1)))),i._insideLegendGroup&&(n.height>0||n.width>0?(i._options._incidentOccured("W2104"),i._insideLegendGroup.remove(),i._insideLegendGroup=null,i._trackerGroup&&i._trackerGroup.clear()):i._locateElements(r))},getTrackerGroup:function(){return this._trackerGroup},getActionCallback:function(n){var i=this;return i._options.visible?function(t){var u=n.type,f=u?!0:!1,r=u||n.series.type;(f||r==="pie"||r==="doughnut"||r==="donut")&&i[t]&&i[t](n.index)}:t.noop},getLayoutOptions:function(){var n=this._options,t=this._insideLegendGroup?this.boundingRect:{width:0,height:0,x:0,y:0};return n?(t.verticalAlignment=n.verticalAlignment,t.horizontalAlignment=n.horizontalAlignment,t.cutLayoutSide=n.orientation==="horizontal"?n.verticalAlignment:n.horizontalAlignment==="center"?n.verticalAlignment:n.horizontalAlignment,t):null},shift:function(n,t){var i=this,r={},u=i.getLayoutOptions();r.translateX=n-u.x,r.translateY=t-u.y,i._insideLegendGroup&&i._insideLegendGroup.applySettings(r),i._trackerGroup&&i._trackerGroup.applySettings(r)},getPosition:function(){return this._options.position},dispose:function(){var n=this;return n._disposeTrackers(),n._legendGroup=null,n._trackerGroup=null,n._insideLegendGroup=null,n._renderer=null,n._options=null,n._data=null,n}})}(DevExpress,jQuery),function(n,t,i){var k=t.viz.core,s=t.utils,f=s.isDefined,a=s.isDate,h=s.getLog,d=s.raiseTo,rt=1,ut=6e4,r="min",u="max",e="minVisible",o="maxVisible",g="minValueMargin",nt="maxValueMargin",c="categories",v="keepValueMargins",p="base",w="axisType",b=function(n,t,i){return d(Math.floor(h(n,t))+(i||0),t)},l=function(n,t){return t<n},y=function(n,t){return t>n},tt=function(n,t,i,r){var u=f(t);f(n)?u&&r(n,t)&&i(t):u&&i(t)},it=function(n,t,i,r,u){return n=n.valueOf()+r*i*t,u?new Date(n):n};k.Range=function(t){t&&n.extend(this,t)},n.extend(k.Range.prototype,{dispose:function(){this[c]=null},addRange:function(n){var t=this,d=t[c],ot,h=n[c],a,it,ft,ut,et=function(i){var r=i+"Priority",u=(t[r]||0)-(n[r]||0);((t[i]||0)<n[i]&&u===0||u<0)&&(t[i]=n[i],t[r]=n[r])},b=function(i,r){tt(t[i],n[i],function(n){t[i]=n},r)},rt=function(n,i,r){tt(t[n],t[i],function(i){f(t[n])&&(t[n]=i)},r)},k=function(i){t[i]=t[i]||n[i]};if(s.isDefined(n.stick)&&(t.stick=n.stick),k("invert"),k(w),k("dataType"),k(v),t[w]==="logarithmic"?k(p):t[p]=i,b(r,l),b(u,y),b(e,l),b(o,y),b("interval",l),et(g),et(nt),rt(r,e,l),rt(r,o,l),rt(u,o,y),rt(u,e,y),d===i)t[c]=h;else if(ft=d.length,h&&h.length)for(a=0;a<h.length;a++){for(it=0,ut=!1;it<ft;it++)if(d[it].valueOf()===h[a].valueOf()){ut=!0;break}ut||d.push(h[a])}return this},isDefined:function(){return f(this[r])&&f(this[u])||f(this[c])},setStubData:function(n){var t=this,i=(new Date).getYear()-1,f=n==="datetime",e=t.axisType==="discrete";return e?t.categories=["0","1","2"]:(t[r]=f?new Date(i,0,1):0,t[u]=f?new Date(i,11,31):10),t.stubData=!0,t},applyValueMargins:function(){var n=this,t=n[p],i=a(n[u])||a(n[r]),s=function(t,r,u){var e=n[t],o=n[r],s=n[g],h=n[nt],c=!1,l=!1;!u||i||n[v]||(e<=0&&o<=0&&h>o/(e-o)&&(n[r]=0,l=!0),e>=0&&o>=0&&s>e/(o-e)&&(n[t]=0,c=!0)),f(o)&&!l&&h&&(n[r]=it(o,h,u,1,i)),f(e)&&!c&&s&&(n[t]=it(e,s,u,-1,i))},c=function(t,i){n[t]=f(n[t])?n[t]:n[i]},l=function(i){if(f(n[i])){var r=b(n[i],t);h(n[i]/r,t)<.1&&n.alwaysCorrectMin&&!n[v]?n[i]=b(n[i],t,-1):n.alwaysCorrectMin&&!n[v]?n[i]=r:h(n[i]/r,t)<.5&&(n[i]=r)}},y=function(i){if(f(n[i])){var r=b(n[i],t);h(n[i]/r,t)>.5&&(n[i]=d(Math.ceil(h(n[i],t)),t))}},k=function(t,i,r){(!f(n[t])||r)&&(n[t]=n[i])};return n[w]==="logarithmic"&&n[r]!==n[u]?(l(r),y(u),n.isValueRange&&n[e]!==n[o]&&(l(e),y(o)),k(e,r,n[e]<n[r]),k(o,u,n[o]>n[u])):(c(e,r),c(o,u),s(r,u,n[u]-n[r]),s(e,o,n[o]-n[e])),this},correctValueZeroLevel:function(){function t(t,i){n[t]<0&&n[i]<0&&(n[i]=0),n[t]>0&&n[i]>0&&(n[t]=0)}var n=this;return a(n[u])||a(n[r])?n:(t(r,u),t(e,o),n)}})}(jQuery,DevExpress),function(n){n.viz.core.series=n.viz.core.series||{},n.viz.core.series.helpers=n.viz.core.series.helpers||{},n.viz.core.series.helpers.consts={events:{mouseover:"mouseover",mouseout:"mouseout",mousemove:"mousemove",touchstart:"touchstart",touchmove:"touchmove",touchend:"touchend",mousedown:"mousedown",mouseup:"mouseup",click:"click",selectSeries:"selectseries",deselectSeries:"deselectseries",selectPoint:"selectpoint",deselectPoint:"deselectpoint",showPointTooltip:"showpointtooltip",hidePointTooltip:"hidepointtooltip"},states:{hover:"hover",normal:"normal",selected:"selected",normalMark:0,hoverMark:1,selectedMark:2},animations:{showDuration:{duration:400},hideGroup:{opacity:.0001},showGroup:{opacity:1}}}}(DevExpress),function(n,t){var e=t.utils,r=Math.round,u=Math.abs,f=Math.pow;t.viz.core.series.helpers.SeriesFamily=t.Class.inherit(function(){var y=function(t){var i=this,r=n.noop;n.extend(i,t),i.type=i.type.toLowerCase(),i.series=[];switch(i.type){case"bar":i.adjustSeriesDimensions=c,i.adjustSeriesValues=r,i.updateSeriesValues=d;break;case"rangebar":i.adjustSeriesDimensions=c,i.adjustSeriesValues=r,i.updateSeriesValues=r;break;case"fullstackedbar":i.fullStacked=!0,i.adjustSeriesDimensions=l,i.adjustSeriesValues=o,i.updateSeriesValues=v;break;case"stackedbar":i.adjustSeriesDimensions=l,i.adjustSeriesValues=o,i.updateSeriesValues=v;break;case"fullstackedarea":case"fullstackedline":i.fullStacked=!0,i.adjustSeriesDimensions=r,i.adjustSeriesValues=o,i.updateSeriesValues=r;break;case"stackedarea":case"stackedline":i.adjustSeriesDimensions=r,i.adjustSeriesValues=o,i.updateSeriesValues=r;break;case"candlestick":case"stock":i.adjustSeriesDimensions=g,i.adjustSeriesValues=r,i.updateSeriesValues=r;break;case"bubble":i.adjustSeriesDimensions=nt,i.adjustSeriesValues=r,i.updateSeriesValues=r;break;default:i.adjustSeriesDimensions=r,i.adjustSeriesValues=r,i.updateSeriesValues=r}},p=function(){this.series=null,this.translators=null},w=function(t){var u=this,r,i;for(n.isArray(t)||(t=[t]),i=0;i<t.length;i++)r=t[i],r.type.toLowerCase()===u.type&&u.series.push(r)},s=function(t,i,u,f,e){var o,s,g,c,h,a,d,nt,p,l,w={},v={},b,y,k;if(f)for(s=f.width&&f.width<0?0:f.width,o=f.spacing&&f.spacing<0?0:f.spacing,s&&!o?u>1?(o=r((i*.7-s*u)/(u-1)),o<1&&(o=1)):o=0:o&&!s?(s=r((i*.7-o*(u-1))/u),s<2&&(s=2)):o||s||(u>1?(o=r(i*.7/u*.2),o<1&&(o=1)):o=0,s=r((i*.7-o*(u-1))/u),s<2&&(s=2)),s*u+o*(u-1)>i&&(o=r((i*.7-s*u)/(u-1)),o<1&&(o=1,g=r((i*.7-o*(u-1))/u))),c=u/2,a=0;a<t.length;a++)h=e(a),nt=t[a].getPoints(),p=(h-c+.5)*(g||s)-(c-h-.5)*o,n.each(nt,function(n,t){t.correctCoordinates({width:s,offset:p})});else{n.each(t,function(n,t){l=t.getStackName&&t.getStackName(),l=l||n.toString(),v[l]||(v[l]=[]),v[l].push(t)}),n.each(t,function(t,i){n.each(i.getPoints(),function(n,t){var i=t.argument;w.hasOwnProperty(i)||(w[i.valueOf()]=1)})});for(k in w)w.hasOwnProperty(k)&&(b=[],n.each(v,function(t,i){n.each(i,function(n,i){return d=i.getPointByArg(k),d&&d.value?(b.push(t),!1):void 0})}),y=b.length,o=r(i*.7/y*.2),o<1&&(o=1),s=r((i*.7-o*(y-1))/y),s<2&&(s=2),c=y/2,n.each(v,function(t,i){(h=n.inArray(t,b),h!==-1)&&(p=(h-c+.5)*s-(c-h-.5)*o,n.each(i,function(n,t){var i=t.getPointByArg(k);i&&i.value&&i.correctCoordinates({width:s,offset:p})}))}))}},i=function(t){return n.map(t.series,function(n){return n.isVisible()?n:null})},c=function(n){var t=this,u=t.equalBarWidth,r=i(t);s(r,h(t,n),r.length,u,function(n){return n})},l=function(t){var r=this,c,u=i(r),f={},e=0,o=r.equalBarWidth;n.each(u,function(){var n=this.getStackName();f.hasOwnProperty(n)||(f[n]=e++)}),s(u,h(r,t),e,o,function(n){return f[u[n].getStackName()]})},o=function(){var r=this,u=i(r),t={positive:{},negative:{}};n.each(u,function(i,r){var u=r.getPoints();n.each(u,function(n,i){var o=i.initialValue,e=i.argument,s=r.getStackName?r.getStackName():"default",h=o>=0?"positive":"negative",f;t[h][s]=t[h][s]||{},f=t[h][s],f[e.valueOf()]?(u[n].correctValue(f[e.valueOf()]),f[e.valueOf()]+=o):(f[e.valueOf()]=o,u[n].resetCorrection())})}),b(u,t,r.fullStacked)},b=function(t,i,r){n.each(t,function(t,u){var f=u.getPoints();n.each(f,function(n,t){var h=t.value,e=u.getStackName?u.getStackName():"default",o=h>=0?"positive":"negative",s;i[o][e]=i[o][e]||{},s=i[o][e],f[n].setPercentValue(s[t.argument.valueOf()],r)})})},a=function(n,t,i){var e=n.rotated,r=e?t.x:t.y,f=r.getCanvasVisibleArea();if(i)return u(r.untranslate(f.min)-r.untranslate(f.min+i))},v=function(t){var r=this,o=i(r),f={positive:{},negative:{}};n.each(o,function(i,o){var s=o.getPoints(),h=o.getOptions().minBarSize;n.each(s,function(n,i){var y=i.value,p=i.minValue,w=i.argument,c,b,l,k=o.getStackName?o.getStackName():"default",d=y>=0?"positive":"negative",v;l=a(r,t,h),v=f[d][k]=f[d][k]||{},v[w.valueOf()]?(p=e.isNumber(p)?p:0,b=u(p-y),c=l&&b<l?l:y-p,s[n].minValue=v[w.valueOf()],s[n].value=v[w.valueOf()]+c,v[w.valueOf()]+=c):(b=y,c=l&&b<l?l:y,s[n].value=c,v[w.valueOf()]=c)})}),r.fullStacked&&k(o,f)},k=function(i,r){n.each(i,function(i,u){var e=u.getStackName?u.getStackName():"default",f=u.getPoints();n.each(f,function(n,i){var h=i.value,s=i.argument,u=h>=0?"positive":"negative",o;r[u][e]=r[u][e]||{},o=r[u][e],f[n].value=f[n].value/o[s.valueOf()]||0,t.utils.isNumber(f[n].minValue)&&(f[n].minValue=f[n].minValue/o[s.valueOf()]||0)})})},d=function(t){var i=this;n.each(i.series,function(r,f){var e=f.getPoints(),o=f.getOptions().minBarSize;n.each(e,function(n,r){var s=r.value,h,c,f;f=a(i,t,o),c=u(s),h=f&&c<f?s>=0?f:-f:s,e[n].value=h})})},g=function(n){var t=this,r=i(t);s(r,h(t,n),r.length,!0,function(n){return n})},h=function(n,t){var i=n.rotated?t.y:t.x;return n.interval=i.getInterval()},nt=function(t){for(var s=this,c=i(s),l,v=t.x.getCanvasVisibleArea(),y=t.y.getCanvasVisibleArea(),p=Math.min(v.max-v.min,y.max-y.min),w=f(s.minBubbleSize,2),nt=f(p*s.maxBubbleSize,2),tt=(p*s.maxBubbleSize+s.minBubbleSize)/2,e=Infinity,h=0,a,b,k,d,g,o=0;o<c.length;o++)l=c[o].getPoints(),n.each(l,function(n,t){h=h>t.size?h:t.size,e=e<t.size?e:t.size});for(d=h-e,g=u(nt-w),e=e<0?0:e,o=0;o<c.length;o++)l=c[o].getPoints(),n.each(l,function(n,t){h===e?a=r(tt):(k=u(t.size-e)/d,b=g*k+w,a=r(Math.sqrt(b))),t.correctCoordinates(a)})};return{ctor:y,dispose:p,add:w}}())}(jQuery,DevExpress),function(n,t){var u=t.viz,s=t.utils,w=s.isDefined,i=n.each,o=n.extend,v=n.isEmptyObject,e=n.Event,l=n.noop,h=2,c=1,b="none",r="includepoints",k="excludepoints",f="allseriespoints",y="applySelected",a="applyHover",p=function(){return{arg:{},val:{}}};u.core.series.mixins={chart:{},pieChart:{}},u.core.series.Series=t.Class.inherit({ctor:function(n,t){this.fullState=0,this._renderer=n,this._group=n.createGroup({"class":"dxc-series"}),this.updateOptions(t)},update:function(n,t){this.updateOptions(t),this.updateData(n)},_createLegendState:function(n,t){return{fill:n.color||t,hatching:n.hatching}},getLegendStyles:function(){return this._styles.legendStyles},_createStyles:function(n){var t=n.mainSeriesColor,i=this._getSpecialColor(t);this._styles={normal:this._parseStyle(n,t,t),hover:this._parseStyle(n.hoverStyle||{},i,t),selection:this._parseStyle(n.selectionStyle||{},i,t),legendStyles:{normal:this._createLegendState(n,t),hover:this._createLegendState(n.hoverStyle||{},i),selection:this._createLegendState(n.selectionStyle||{},i)}}},setAdjustSeriesLabels:function(n){i(this._points||[],function(t,i){i.setAdjustSeriesLabels(n)})},setClippingParams:function(n,t){this._paneClipRectID=n,this._forceClipping=t},getTagField:function(){return this._options.tagField||"tag"},getValueFields:l,getArgumentField:l,getPoints:function(){return this._points},_createPoint:function(n,t,i){if(n.index=i,this._checkData(n)){var r=t[i],f=this._customizePoint(n)||this._getCreatingPointOptions();return r?r.update(n,f):(r=u.core.CoreFactory.createPoint(n,f),t.push(r)),this.pointsByArgument[r.argument.valueOf()]=this.pointsByArgument[r.argument.valueOf()]||r,!0}},getRangeData:function(n,t){return this._visible?o(!0,{},this._getRangeData(n,t)):p()},_deleteElementsGroup:function(){this._elementsGroup&&(this._elementsGroup.detach(),this._elementsGroup=null)},_deleteBordersGroup:function(){this._bordersGroup&&(this._bordersGroup.detach(),this._bordersGroup=null)},_saveOldAnimationMethods:function(){this._oldClearingAnimation=this._clearingAnimation,this._oldUpdateElement=this._updateElement},_deleteOldAnimationMethods:function(){this._oldClearingAnimation=null,this._oldUpdateElement=null},updateOptions:function(n){var t=this,i=n.widgetType,r=t.type,u=n.type;if(t.type=u&&u.toString().toLowerCase(),!t._checkType(i)){t.dispose(),t.isUpdated=!1;return}r!==t.type&&(t._firstDrawing=!0,t._saveOldAnimationMethods(),t._resetType(r,i),t._setType(t.type,i)),t._options=n,t._pointOptions=null,t._deletePatterns(),t._patterns=[],t.name=n.name,t.pane=n.pane,t.axis=n.axis,t.tag=n.tag,t._createStyles(n),t._updateOptions(n),t._visible=n.visible,t.isUpdated=!0},_disposePoints:function(t){n.each(t||[],function(n,t){t.dispose()})},_correctPointsLength:function(n,t){this._disposePoints(this._oldPoints),this._oldPoints=t.splice(n,t.length)},_getTicksForAggregation:function(n,t,i,r){return u.core.tickProvider.getTicks({min:n,max:t,screenDelta:i,gridSpacingFactor:r})},updateDataType:function(n){var t=this;t.argumentType=n.argumentType,t.valueType=n.valueType,t.argumentAxisType=n.argumentAxisType,t.valueAxisType=n.valueAxisType},getValueCategories:function(){return this._options.valueCategories||[]},getOptions:function(){return this._options},getArgumentCategories:function(){return this._options.argumentCategories||[]},updateData:function(n){var t=this,r,u=0,e=t._options,f;t.pointsByArgument={},r=t._originalPoints||[],t._rangeData=p(),n&&n.length&&(t._canRenderCompleteHandle=!0),t._beginUpdateData(),i(n,function(n,i){f=t._getPointData(i,e),t._createPoint(f,r,u)&&(t._processRange(r[u],u>0?r[u-1]:null),u++)}),t._points=t._originalPoints=r,t._correctPointsLength(u,r),t._endUpdateData()},getTeamplatedFields:function(){var n=this,t=n.getValueFields(),r=[];return t.push(n.getTagField()),i(t,function(t,i){var u={};u.teamplateField=i+n.name,u.originalField=i,r.push(u)}),r},resamplePoints:function(n,t,r){var u=this,o=u.getAllPoints(),l=u._options.rotated?n.y:n.x,f,e,c,h;o.length&&(i(o,function(n,i){f=i.argument-t<=0?n:f,e||(e=i.argument-r>0?n:null)}),f=f?f:1,e=s.isDefined(e)?e:o.length-1,t=o[f-1].argument,r=o[e].argument,c=u._getPointSize(),h=u.argumentAxisType!=="discrete"&&u.valueAxisType!=="discrete"?u._getTicksForAggregation(t,r,l.canvasLength,c):l.canvasLength/c,u._points=u._resample(h,h.tickInterval))},_removeOldSegments:function(n){var t=this;i(t._graphics.splice(n,t._graphics.length)||[],function(n,i){t._removeElement(i)}),t._trackers&&i(t._trackers.splice(n,t._trackers.length)||[],function(n,t){t.remove()})},draw:function(n,t,i,r){var u=this,f;u._oldClearingAnimation&&t&&u._firstDrawing?(f=function(){u._draw(n,!0,i)},u._oldClearingAnimation(n,f)):u._draw(n,t,i,r)},_clearSeries:function(){this._deleteElementsGroup(),this._deleteBordersGroup(),this._deleteTrackers(),this._graphics=[],this._trackers=[]},_draw:function(n,t,r,u){var f=this,h=f._points||[],e=[],s=0,o=f._firstDrawing,c,l;if(f._graphics=f._graphics||[],f._graphics=f._graphics||[],f._prepareSeriesToDrawing(),f._visible)f._group.append(f._options.seriesGroup);else{t=!1,this._group.detach();return}f.translators=n,f._createGroups(t,undefined,o),f._segments=[],c=f._markersGroup,l=f._labelsGroup,f._drawedPoints=[],f._firstDrawing=h.length?!1:!0,i(this._patterns||[],function(n,t){t.append()}),i(h,function(i,r){r.translate(n),r.hasValue()?(f._drawPoint(r,c,l,t,o),e.push(r)):e.length&&(f._drawSegment(e,t,s++),e=[])}),e.length&&f._drawSegment(e,t,s++),f._removeOldSegments(s),f._defaultSegments=f._generateDefaultSegments(),f._adjustLabels(o),r&&f.hideLabels(),t&&f._animate(o),f.isSelected()?f._changeStyle(u,y):this.isHovered()&&this._changeStyle(u,a)},drawTrackers:function(){var n=this,t=n._trackers=n._trackers||[],r=n._trackersGroup=n._trackersGroup||n._renderer.createGroup(),u=n._markerTrackerGroup=n._markerTrackerGroup||n._renderer.createGroup();if(n.isVisible())r.append(n._options.trackersGroup),u.append(n._options.markerTrackerGroup);else{r.detach(),u.detach();return}i(n._segments||[],function(i,u){t[i]?n._updateTrackerElement(u,t[i]):(t[i]=n._drawTrackerElement(u).append(r),t[i].data({series:n}))}),i(n.getVisiblePoints(),function(t,i){i.drawTracker(n._renderer,u)}),n._applyTrackersClippings()},_checkType:function(n){return!!u.core.series.mixins[n][this.type]},_resetType:function(n,t){var r=this;n&&i(u.core.series.mixins[t][n],function(n){delete r[n]})},_setType:function(n,t){var r=this;i(u.core.series.mixins[t][n],function(n,t){r[n]=t})},_setSelectedState:function(n,t,i){this.lastSelectionMode=t=(t||this._options.selectionMode).toLowerCase(),n&&!this.isSelected()?(this.fullState=this.fullState|h,this._changeStyle(i,y)):!n&&this.isSelected()&&(this.fullState=this.fullState&~h,this.isHovered()?this._changeStyle(i,a):this._changeStyle(i,"resetItem"))},_setHoverState:function(n,t,i){this.lastHoverMode=t=(t||this._options.hoverMode).toLowerCase(),n&&!this.isHovered()?(this.fullState=this.fullState|c,this.isSelected()||this._changeStyle(i,a)):!n&&this.isHovered()&&(this.fullState=this.fullState&~c,this.isSelected()||this._changeStyle(i,"resetItem"))},setHoverState:function(n,t){this._setHoverState(!0,n,t)},releaseHoverState:function(n,t){this._setHoverState(!1,n,t)},setSelectedState:function(n,t){this._setSelectedState(!0,n,t)},releaseSelectedState:function(n,t){this._setSelectedState(!1,n,t)},isFullStackedSeries:function(){return this.type.indexOf("fullstacked")===0},isStackedSeries:function(){return this.type.indexOf("stacked")===0},isFinancialSeries:function(){return this.type==="stock"||this.type==="candlestick"},_changeStyle:function(n,t){var u=this._calcStyle(),e;u.mode!==b&&(n&&n(t),(u.mode===r||u.mode===f)&&(e=u.pointStyle,i(this._points||[],function(n,t){t.isSelected()||t.applyStyle(e)})),this._applyStyle(u.series))},_calcStyle:function(){var t=this._styles,i=!1,n;switch(this.fullState&3){case 0:n={pointStyle:"normal",mode:r,series:t.normal};break;case 1:n={pointStyle:"hover",mode:this.lastHoverMode,series:t.hover};break;case 2:n={pointStyle:"selection",mode:this.lastSelectionMode,series:t.selection};break;case 3:i=this.lastSelectionMode===k&&(this.lastHoverMode===r||this.lastHoverMode===f),n={pointStyle:i?"normal":"selection",mode:i?r:this.lastSelectionMode,series:t.selection}}return n},_getMainAxisName:function(){return this._options.rotated?"X":"Y"},areLabelsVisible:function(){return!w(this._options.maxLabelCount)||this._points.length<=this._options.maxLabelCount},getLabelVisibility:function(){return this.areLabelsVisible()&&this._options.label&&this._options.label.visible},_customizePoint:function(n){var t=this,l=t._options,s=t._options.customizePoint,i,u,r,f,h=t._options.customizeLabel,e,c;return h&&h.call&&(i=o({seriesName:t.name,series:t},n),r=h.call(i,i),e=r&&!v(r),r=e?o(!0,{},l.label,r):null),s&&s.call&&(i=i||o({seriesName:t.name,series:t},n),f=s.call(i,i),c=f&&!v(f)),(e||c)&&(u=t._parsePointOptions(t._preparePointOptions(f),r||l.label),u.styles.useLabelCustomOptions=e,u.styles.usePointCustomOptions=c),u},_getLabelOptions:function(t,i){var r=t||{},u=r.font||{},f=r.border||{},e=r.connector||{},o={align:r.alignment,font:{color:r.backgroundColor==="none"&&u.color.toLowerCase()==="#ffffff"&&r.position!=="inside"?i:u.color,family:u.family,weight:u.weight,size:u.size,opacity:u.opacity},style:r.style},s={fill:r.backgroundColor||i,strokeWidth:f.visible?f.width||0:0,stroke:f.visible&&f.width?f.color:"none",dashStyle:f.dashStyle},h={stroke:e.visible&&e.width?e.color||i:"none",strokeWidth:e.visible?e.width||0:0};return{format:r.format,argumentFormat:r.argumentFormat,precision:r.precision,argumentPrecision:r.argumentPrecision,percentPrecision:r.percentPrecision,customizeText:n.isFunction(r.customizeText)?r.customizeText:undefined,attributes:o,visible:u.size!==0?r.visible:!1,showForZeroValues:r.showForZeroValues,horizontalOffset:r.horizontalOffset,verticalOffset:r.verticalOffset,radialOffset:r.radialOffset,background:s,position:r.position,connector:h,rotationAngle:r.rotationAngle,resolveLabelsOverlapping:this._options.resolveLabelsOverlapping}},show:function(){this._visible||(this._visible=!0,this.hidePointTooltip(),this._options.visibilityChanged())},hide:function(){this._visible&&(this._visible=!1,this.hidePointTooltip(),this._options.visibilityChanged())},hideLabels:function(){i(this._points,function(n,t){t._label.hide()})},_parsePointOptions:function(n,t){var i=this._options,u=this._createPointStyles(n),r;return r=o(!0,{},n,{type:i.type,tag:this.tag,rotated:i.rotated,series:this,styles:u,visibilityChanged:i.visibilityChanged}),r.label=this._getLabelOptions(t,u.normal.fill),r},_resample:function(t,r){var u=this,e=[],h,f=0,o=0,s=u.getAllPoints(),c;return u.argumentAxisType==="discrete"||u.valueAxisType==="discrete"?(r=s.length/t,h=n.map(s,function(n,t){return Math.floor(f)<=t?(f+=r,n):(n.setInvisibility(),null)})):(u._aggregatedPoints=u._aggregatedPoints||[],i(s,function(n,i){switch(u._isInInterval(i.argument,t,f,r)){case!0:e.push(i);break;case"nextInterval":for(var s=u._fusionPoints(e,t[f],f);u._isInInterval(i.argument,t,f,r)==="nextInterval";)f++;e=[],u._isInInterval(i.argument,t,f,r)===!0&&e.push(i),u._createPoint(s,u._aggregatedPoints,o)&&o++}}),e.length&&(c=u._fusionPoints(e,t[f],f),u._createPoint(c,u._aggregatedPoints,o)&&o++),u._correctPointsLength(o,u._aggregatedPoints),u._endUpdateData(),u._aggregatedPoints)},_isInInterval:function(t,i,r,u){var f=i[r],o=i[r+1],e;return(u=n.isNumeric(u)?u:s.convertDateTickIntervalToMilliseconds(u),e=s.isDate(f)?new Date(f.getTime()+u):f+u,t>=f&&t<e)?!0:t<f||o===undefined?!1:"nextInterval"},canRenderCompleteHandle:function(){var n=this._canRenderCompleteHandle;return delete this._canRenderCompleteHandle,!!n},isHovered:function(){return!!(this.fullState&1)},isSelected:function(){return!!(this.fullState&2)},isVisible:function(){return this._visible},getAllPoints:function(){return(this._originalPoints||[]).slice()},getPointByPos:function(n){return(this._points||[])[n]},getVisiblePoints:function(){return(this._drawedPoints||[]).slice()},setPointHoverState:function(n,t){n.fullState=n.fullState|c,this.isSelected()&&(this.lastSelectionMode===f||this.lastSelectionMode===r)||n.isSelected()||(n.applyStyle("hover"),t&&t("applyHover"))},releasePointHoverState:function(n,t){n.fullState=n.fullState&~c,this.isSelected()&&(this.lastSelectionMode===f||this.lastSelectionMode===r)||n.isSelected()||this.isHovered()&&(this.lastHoverMode===f||this.lastHoverMode===r)||(n.applyStyle("normal"),t&&t("resetItem"))},setPointSelectedState:function(n,t){n.fullState=n.fullState|h,n.applyStyle("selection"),t&&t("applySelected")},releasePointSelectedState:function(n,t){n.fullState=n.fullState&~h,this.isHovered()&&(this.lastHoverMode===f||this.lastHoverMode===r)||n.isHovered()?(n.applyStyle("hover"),t&&t("applyHover")):this.isSelected()&&(this.lastSelectionMode===f||this.lastSelectionMode===r)?(n.applyStyle("selection"),t&&t("applySelected")):(n.applyStyle("normal"),t&&t("resetItem"))},selectPoint:function(n){this._options.seriesGroup&&this._options.seriesGroup.trigger(new e("selectpoint"),n)},deselectPoint:function(n){this._options.seriesGroup&&this._options.seriesGroup.trigger(new e("deselectpoint"),n)},showPointTooltip:function(n){this._options.seriesGroup&&this._options.seriesGroup.trigger(new e("showpointtooltip"),n)},hidePointTooltip:function(n){this._options.seriesGroup&&this._options.seriesGroup.trigger(new e("hidepointtooltip"),n)},select:function(){this._options.seriesGroup&&this._options.seriesGroup.trigger(new e("selectseries",{target:this}),this._options.selectionMode),this._group.toForeground(),this._trackersGroup&&this._trackersGroup.toBackground()},clearSelection:function(){this._options.seriesGroup&&this._options.seriesGroup.trigger(new e("deselectseries",{target:this}),this._options.selectionMode)},getPointByArg:function(n){return this.pointsByArgument[n.valueOf()]||null},_deletePoints:function(){this._disposePoints(this._originalPoints),this._disposePoints(this._aggregatedPoints),this._disposePoints(this._oldPoints),this._points=null,this._oldPoints=null,this._aggregatedPoints=null,this._originalPoints=null,this._drawedPoint=null},_deletePatterns:function(){i(this._patterns||[],function(n,t){t&&t.dispose()}),this._patterns=null},_deleteTrackers:function(){var n=this;i(n._trackers||[],function(n,t){t.remove()}),n._trackersGroup&&n._trackersGroup.detach(),n._markerTrackerGroup&&n._markerTrackerGroup.detach(),n._trackers=n._trackersGroup=n._markerTrackerGroup=null},dispose:function(){this._deletePoints(),this._group.detach(),this._labelsGroup&&this._labelsGroup.detach(),this._deletePatterns(),this._deleteTrackers(),this._group=null,this._markersGroup=null,this._elementsGroup=null,this._bordersGroup=null,this._labelsGroup=null,this._graphics=null,this._rangeData=null,this._renderer=null,this.translators=null,this._styles=null,this._options=null,this._pointOptions=null,this._drawedPoints=null,this._aggregatedPoints=null,this.pointsByArgument=null,this._segments=null},correctPosition:l,getColor:function(){return this.getLegendStyles().normal.fill},getStackName:function(){return this.type==="stackedbar"||this.type==="fullstackedbar"?this._stackName:null}})}(jQuery,DevExpress),function(n){var y=Math,w=y.abs,d=y.min,o=n.each,b=n.isEmptyObject,i=DevExpress.utils.isDefined,p=15,k=20,s=20,h=.3,c="categories",l="interval",a="minValueMargin",v="maxValueMargin",u="min",r="max",f="minVisible",e="maxVisible";DevExpress.viz.core.series.helpers.rangeDataCalculator=function(){var nt=function(n,t,r,u){var f=n[t],e=n[r];n[t]=u<f||!i(f)?u:n[t],n[r]=u>e||!i(e)?u:n[r]},et=function(n,t,i,r,u){var f=t[r],e=t[u],o=t.argument,s=i&&i[r],h=i&&i[u],c=i&&i.argument;t.hasValue()&&ot(n,f,e,s,h),d(n,"arg",o,c)},d=function(n,t,r,u,f){var h=t==="arg"?"argument":"value",e=n._rangeData[t],s=e[l],o;n[h+"AxisType"]==="discrete"?(e[c]=e[c]||[],e[c].push(r)):(nt(e,"min","max",r),t==="arg"&&(o=(i(u)?w(f?f(r,u):r-u):o)||s,e[l]=i(o)&&(o<s||!i(s))?o:s))},t=function(n,t){var r=n._rangeData.val,u=n.valueAxisType==="discrete";u?(r.visibleCategories=r.visibleCategories||[],r.visibleCategories.push(t)):((t<r.minVisible||!i(r.minVisible))&&(r.minVisible=t),(t>r.maxVisible||!i(r.maxVisible))&&(r.maxVisible=t))},ot=function(n,t,i){var o=n._rangeData.val,s,h=o[l];n.valueAxisType==="discrete"?(o.categories=o.categories||[],o.categories.push(t,i)):(nt(o,u,r,t),nt(o,u,r,i))},g=function(t){var i={};return n.map(t,function(n){var t=i[n]?null:n;return i[n]=!0,t})},tt=function(n,t){var i=n._rangeData.arg,r,u;r=t.minArg<t.maxArg?t.minArg:t.maxArg,u=t.maxArg>t.minArg?t.maxArg:t.minArg,i.min=r<i.min?r:i.min,i.max=u>i.max?u:i.max,i.minVisible=r,i.maxVisible=u},it=function(n,t){var r,u;i(t.minVal)&&i(t.maxVal)&&(r=t.minVal<t.maxVal?t.minVal:t.maxVal,u=t.maxVal>t.minVal?t.maxVal:t.minVal),i(t.minVal)&&(n._rangeData.val.min=r<n._rangeData.val.min?r:n._rangeData.val.min,n._rangeData.val.minVisible=r),i(t.maxVal)&&(n._rangeData.val.max=u>n._rangeData.val.max?u:n._rangeData.val.max,n._rangeData.val.maxVisible=u)},st=function(n,r){var s=r.adjustOnZoom,u=n._points||[],f,e=!1;o(u,function(i,r){var h=r.argument,o=i>0?u[i-1]:null;s&&h>=n._rangeData.arg.minVisible&&h<=n._rangeData.arg.maxVisible&&(e||(o&&o.hasValue()&&t(n,o.value),e=!0),r.hasValue()&&t(n,r.value),f=i)}),i(f)&&f<u.length-1&&u[f+1].hasValue()&&t(n,u[f+1].value),it(n,r)},ht=function(n,r,u,f){var c=r.adjustOnZoom,e=n._points||[],s,h=!1;o(e,function(i,r){var l=r.argument,o=i>0?e[i-1]:null;c&&l>=n._rangeData.arg.minVisible&&l<=n._rangeData.arg.maxVisible&&(h||(o&&o.hasValue()&&(t(n,o[u]),t(n,o[f])),h=!0),r.hasValue()&&(t(n,r[u]),t(n,r[f])),s=i)}),i(s)&&s<e.length-1&&e[s+1].hasValue()&&t(n,e[s+1].value),it(n,r)},rt=function(n,t){var r=n._rangeData,i=n._points||[],u=n.argumentAxisType==="discrete";delete r.arg.interval,o(i,function(r,f){var o=f.argument,e=r>0?i[r-1]:null,s=e&&e.argument;u||d(n,"arg",o,s,t)})},ut=function(n){var t=n._rangeData,i=n._getMainAxisName(),r=i==="X"?"Y":"X";t.arg.categories&&(t.arg.categories=g(t.arg.categories)),t.val.categories&&(t.val.categories=g(t.val.categories)),t.arg.visibleCategories&&(t.arg.visibleCategories=g(t.arg.visibleCategories)),t.val.visibleCategories&&(t.val.visibleCategories=g(t.val.visibleCategories)),t.arg.axisType=n.argumentAxisType,t.arg.dataType=n.argumentType,t.val.axisType=n.valueAxisType,t.val.dataType=n.valueType,t.val.isValueRange=!0},y=function(n,t,i,r){n[t]=i,n[t+"Priority"]=r},ft=function(n,t,i){t===0&&y(n,i,0,k)},ct=function(n,t){var i=n._rangeData.val,o=i[f],s=i[e];t=t||{},i&&(i.alwaysCorrectMin=!0,n._rangeData.arg.keepValueMargins=!0,n.valueAxisType!=="logarithmic"&&n.valueType!=="datetime"&&n.getOptions().showZero!==!1&&(i[f]=o>(t.minVal||0)?t.minVal||0:o,i[e]=s<(t.maxVal||0)?t.maxVal||0:s,i[u]=i[u]>0?0:i[u],ft(i,i[u],a),i[r]=i[r]<0?0:i[r],(i[r]===0||i[r]>0&&i[u]<0)&&(i[a]=i[v],i[a+"Priority"]=i[v+"Priority"]),ft(i,i[r],v)))},lt=function(n){var t=n._rangeData.val,i=b(t);y(t,"minValueMargin",0,p),y(t,"maxValueMargin",0,p),i||(t.min=0)},at=function(n,t,i){var r=t.value,u=t.argument,f=i&&i.value,e=i&&i.argument;t.hasValue()&&d(n,"val",r,f),d(n,"arg",u,e)},vt=function(n){var t=n.getOptions().label;n.areLabelsVisible()&&t&&t.visible&&t.position!=="inside"&&y(n._rangeData.val,"maxValueMargin",h,s)},yt=function(n){var t=n._rangeData.val;n.areLabelsVisible()&&n._options.label.visible&&n._options.label.position!=="inside"&&(y(t,"maxValueMargin",h,s),y(t,"minValueMargin",h,s))},pt=function(n,t,r){var u=n._rangeData.val;n.argumentAxisType!=="discrete"&&t&&i(t.minArg)&&i(t.maxArg)?(u[f]=t.minVal,u[e]=t.maxVal,tt(n,t),st(n,t)):!t&&r&&rt(n,r),ut(n)},wt=function(n,t,r,u,o){var s=n._rangeData.val;n.argumentAxisType!=="discrete"&&t&&i(t.minArg)&&i(t.maxArg)?(s[f]=t.minVal,s[e]=t.maxVal,tt(n,t),ht(n,t,u,o)):!t&&r&&rt(n),ut(n)};return{processRange:at,calculateRangeData:pt,calculateTwoValuesRangeData:wt,addLabelPaddings:vt,addRangeSeriesLabelPaddings:yt,processFullStackedRange:lt,calculateRangeMinValue:ct,processTwoValues:et}}}(jQuery,DevExpress),function(n,t){var o=t.viz,u=o.core.series,r=u.helpers.rangeDataCalculator(),s=n.each,f=n.extend,h=n.map,i=n.noop,e=t.utils.isDefined,c=Math.floor,l=2,a=20,v=400;u.mixins.chart.scatter={_defaultDuration:v,_defaultTrackerWidth:a,_applyStyle:i,_adjustLabels:i,_updateOptions:i,_parseStyle:i,_prepareSegment:i,_drawSegment:i,_generateDefaultSegments:i,_prepareSeriesToDrawing:function(){this._deleteOldAnimationMethods(),this._firstDrawing&&this._clearSeries(),this._disposePoints(this._oldPoints),this._oldPoints=null},_applyTrackersClippings:function(){this._markerTrackerGroup.applySettings({clipId:this._forceClipping?this._paneClipRectID:null})},updateTeamplateFieldNames:function(){var n=this,t=n._options;t.valueField=n.getValueFields()[0]+n.name,t.tagField=n.getTagField()+n.name},_applyElementsClipRect:function(n){n.clipId=this._paneClipRectID},_applyMarkerClipRect:function(n){n.clipId=this._forceClipping?this._paneClipRectID:null},_createGroup:function(n,t,i,r){var u=t[n];u?u.applySettings(r):t[n]=u=this._renderer.createGroup(r),u.append(i)},_applyClearingSettings:function(n){n.opacity=null,n.scale=null,this._options.rotated?n.translateX=null:n.translateY=null},_createMarkerGroup:function(){var n=this._getPointOptions().styles.normal;n["class"]="dxc-markers",n.opacity=1,this._applyMarkerClipRect(n),this._createGroup("_markersGroup",this,this._group,n)},_createLabelGroup:function(){var n={"class":"dxc-labels",visibility:this.getLabelVisibility()?"visible":"hidden"};this._applyElementsClipRect(n),this._applyClearingSettings(n),this._createGroup("_labelsGroup",this,this._options.labelsGroup,n)},_createGroups:function(n){this._createMarkerGroup(),this._createLabelGroup(),n&&this._labelsGroup&&this._labelsGroup.applySettings({opacity:.001})},_getCreatingPointOptions:function(){if(!this._predefinedPointOptions){var n=this._getPointOptions(),i=n.styles&&n.styles.normal&&n.styles.normal.r,r=n.styles&&n.styles.normal&&n.styles.normal.strokeWidth,t=f(!0,{},n);t.styles=t.styles||{},t.styles.normal={r:i,strokeWidth:r},this._predefinedPointOptions=t}return this._predefinedPointOptions},_getSpecialColor:function(n){return n},_getPointOptions:function(){return this._pointOptions||(this._pointOptions=this._parsePointOptions(this._preparePointOptions(),this._options.label))},_preparePointOptions:function(n){return n?f(!0,{},this._options.point,n):this._options.point},_parsePointStyle:function(n,t,i){var r=n.border||{};return{fill:n.color||t,stroke:r.color||i,strokeWidth:r.visible?r.width:0,r:n.size/2+(r.visible&&n.size!==0?~~(r.width/2)||0:0)}},_createPointStyles:function(n){var t=n.color||this._options.mainSeriesColor,i=this._options.containerBackgroundColor,r=this._parsePointStyle(n,t,t);return r.visibility=n.visible?"visible":"hidden",{normal:r,hover:this._parsePointStyle(n.hoverStyle,i,t),selection:this._parsePointStyle(n.selectionStyle,i,t)}},_checkData:function(n){return e(n.argument)&&n.value!==undefined},_processRange:function(n,t){r.processRange(this,n,t)},_getRangeData:function(n,t){return r.calculateRangeData(this,n,t),r.addLabelPaddings(this),this._rangeData},_getPointData:function(n,t){var i=t.argumentField||"arg",r=t.valueField||"val",u=t.tagField||"tag";return{value:n[r],argument:n[i],tag:n[u]}},_drawPoint:function(n,t,i,r,u){n.isInVisibleArea()?(n.clearVisibility(),n.draw(this._renderer,t,i,r,u),this._drawedPoints.push(n)):n.setInvisibility()},_clearingAnimation:function(n,t){var i=this,r={opacity:.001},u={duration:i._defaultDuration,partitionDuration:.5};i._labelsGroup&&i._labelsGroup.animate(r,u,function(){i._markersGroup&&i._markersGroup.animate(r,u,t)})},_animate:function(){var t=this,r=t._drawedPoints.length-1,u=function(){t._labelsGroup&&t._labelsGroup.animate({opacity:1},{duration:t._defaultDuration})},i;s(t._drawedPoints||[],function(n,t){i={translate:{x:t.x,y:t.y}},t.animate(n===r?u:undefined,i)})},_getPointSize:function(){return this._options.point.visible?this._options.point.size:l},_calcMedianValue:function(n,t){var r,i;return i=h(n,function(n){return n[t]}),i.sort(function(n,t){return n-t}),r=i[c(i.length/2)],e(r)?r:null},_fusionPoints:function(n,t,i){var r=this._calcMedianValue(n,"value");return{value:r,argument:t,tag:null,index:i,seriesName:this.name}},_endUpdateData:function(){delete this._predefinedPointOptions},getArgumentField:function(){return this._options.argumentField||"arg"},getValueFields:function(){return[this._options.valueField||"val"]},_beginUpdateData:n.noop}}(jQuery,DevExpress),function(n,t){var e=t.viz,i=e.core.series.mixins.chart,o=t.utils,f=i.scatter,r=n.extend,s=n.map,u=n.each;i.line=r({},f,{_createElementsGroup:function(n){var t=r({"class":"dxc-elements"},n);this._applyElementsClipRect(t),this._createGroup("_elementsGroup",this,this._group,t)},_createBordersGroup:function(n){var t=r({"class":"dxc-borders"},n);this._applyElementsClipRect(t),this._createGroup("_bordersGroup",this,this._group,t)},_applyTrackersClippings:function(){f._applyTrackersClippings.call(this),this._trackersGroup.applySettings({clipId:this._paneClipRectID})},_createGroups:function(n,t){var t=t||this._styles.normal;this._createElementsGroup(t.elements),this._areBordersVisible()&&this._createBordersGroup(t.border),f._createGroups.call(this,n,{}),n&&this._markersGroup&&this._markersGroup.applySettings({opacity:.001})},_areBordersVisible:function(){return!1},_getDefaultSegment:function(n){return{line:s(n.line||[],function(n){return n.getDefaultCoords()})}},_prepareSegment:function(n){return{line:n}},_parseLineOptions:function(n,t){return{stroke:n.color||t,strokeWidth:n.width,dashStyle:n.dashStyle||"solid"}},_parseStyle:function(n,t){return{elements:this._parseLineOptions(n,t)}},_applyStyle:function(n){this._elementsGroup&&this._elementsGroup.applySettings(n.elements),u(this._graphics||[],function(t,i){i.line&&i.line.applySettings({strokeWidth:n.elements.strokeWidth})})},_drawElement:function(n,t){return{line:this._createMainElement(n.line,{strokeWidth:this._styles.normal.elements.strokeWidth}).append(t)}},_removeElement:function(n){n.line.remove()},_generateDefaultSegments:function(){var n=this,t=[];return u(n._segments||[],function(i,r){t.push(n._getDefaultSegment(r))}),t},_updateElement:function(n,t,i,r,u){var f={points:t.line};i?n.line.animate(f,r,u):n.line.applySettings(f)},_clearingAnimation:function(n,t){var i=this,e=i._graphics.length-1,r={opacity:.001},f={duration:i._defaultDuration,partitionDuration:.5};i._labelsGroup&&i._labelsGroup.animate(r,f,function(){i._markersGroup&&i._markersGroup.animate(r,f,function(){u(i._defaultSegments||[],function(n,r){i._oldUpdateElement(i._graphics[n],r,!0,{partitionDuration:.5},n===e?t:undefined)})})})},_animate:function(){var n=this,t=n._graphics.length-1;u(n._graphics||[],function(i,r){n._updateElement(r,n._segments[i],!0,{complete:i===t?function(){n._labelsGroup&&n._labelsGroup.animate({opacity:1},{duration:n._defaultDuration}),n._markersGroup&&n._markersGroup.animate({opacity:1},{duration:n._defaultDuration})}:undefined})})},_drawPoint:function(n,t,i){f._drawPoint.call(this,n,t,i)},_createMainElement:function(n,t){return this._renderer.createPath(n,t)},_drawSegment:function(n,t,i){var r=this._prepareSegment(n,this._options.rotated);this._segments.push(r),this._graphics[i]?t||this._updateElement(this._graphics[i],r):this._graphics[i]=this._drawElement(t?this._getDefaultSegment(r):r,this._elementsGroup)},_getTrackerSettings:function(){return{strokeWidth:this._styles.normal.elements.strokeWidth>this._defaultTrackerWidth?this._styles.normal.elements.strokeWidth:this._defaultTrackerWidth,fill:"none"}},_getMainPointsFromSegment:function(n){return n.line},_drawTrackerElement:function(n){return this._createMainElement(this._getMainPointsFromSegment(n),this._getTrackerSettings(n))},_updateTrackerElement:function(n,t){var i=this._getTrackerSettings(n);i.points=this._getMainPointsFromSegment(n),t.applySettings(i)}}),i.stepline=r({},i.line,{_calculateStepLinePoints:function(n){var t=[];return u(n,function(n,i){var r,u;if(!n){t.push(i);return}r=t[t.length-1].y,r!==i.y&&(u=o.clone(i),u.y=r,t.push(u)),t.push(i)}),t},_prepareSegment:function(n){return i.line._prepareSegment(this._calculateStepLinePoints(n))}}),i.stackedline=r({},i.line,{}),i.fullstackedline=r({},i.line,{_getRangeData:function(n,t){var i=e.core.series.helpers.rangeDataCalculator();return i.calculateRangeData(this,n,t),i.addLabelPaddings(this),i.processFullStackedRange(this),this._rangeData}}),i.spline=r({},i.line,{_calculateBezierPoints:function(n,t){var i=[],r=n,f=function(n,t,i){return n>t&&i>n||n<t&&i<n?n:i},e=function(n,t,i){var r=o.clone(n);return r.x=t,r.y=i,r};return r.length!==1?u(r,function(n,u){var a,v,y,p,h,c,o,s,b,k,d,g,st,l=.5,ft,et,ot,it,rt,ut,nt,tt,w;if(!n){i.push(u),i.push(u);return}if(h=r[n-1],n<r.length-1)c=r[n+1],o=u.x,s=u.y,b=h.x,k=c.x,d=h.y,g=c.y,ft=!!(!t&&(s<=h.y&&s<=c.y||s>=h.y&&s>=c.y)||t&&(o<=h.x&&o<=c.x||o>=h.x&&o>=c.x)),ft?t?(y=a=o,p=(s+c.y)/2,v=(s+h.y)/2):(p=v=s,y=(o+c.x)/2,a=(o+h.x)/2):(it=g-d,rt=b-k,ut=d*k-b*g,t?(tt=s,nt=-1*(rt*tt+ut)/it,w=nt-o||0,b-=w,k-=w):(nt=o,tt=-1*(it*nt+ut)/rt,w=tt-s||0,d-=w,g-=w),y=(o+l*k)/(1+l),p=(s+l*g)/(1+l),a=(o+l*b)/(1+l),v=(s+l*d)/(1+l)),t?(a=f(h.x,o,a),y=f(c.x,o,y)):(v=f(h.y,s,v),p=f(c.y,s,p)),et=e(u,a,v),ot=e(u,y,p),i.push(et,u,ot);else{i.push(u,u);return}}):i.push(r[0]),i},_prepareSegment:function(n,t){return i.line._prepareSegment(this._calculateBezierPoints(n,t))},_createMainElement:function(n,t){return this._renderer.createBezierPath(n,t)}})}(jQuery,DevExpress),function(n,t){var f=t.viz,e=t.utils,i=f.core.series.mixins.chart,r=i.line,o=n.map,u=n.extend,s=20;i.area=u({},r,{_createBorderElement:r._createMainElement,_processSinglePointsAreaSegment:function(n,t){if(n.length==1){var i=n[0],r=e.clone(i),u=t?"y":"x";return r[u]+=1,[i,r]}return n},_prepareSegment:function(n,t){var i=this._processSinglePointsAreaSegment(n,t);return{line:i,area:o(i,function(n){return n.getCoords()}).concat(o(i.slice().reverse(),function(n){return n.getCoords(!0)})),singlePointSegment:i!==n}},_getSpecialColor:function(n){return this._options._IE8?new t.Color(n).highlight(s):n},_getRangeData:function(n,t){var i=f.core.series.helpers.rangeDataCalculator();return i.calculateRangeData(this,n,t),i.addLabelPaddings(this),i.calculateRangeMinValue(this,n),this._rangeData},_getDefaultSegment:function(n){var t=r._getDefaultSegment(n);return t.area=t.line.concat(t.line.slice().reverse()),t},_updateElement:function(n,t,i,r,u){var e={points:t.line},o={points:t.area},f=n.line;i?(f&&f.animate(e,r),n.area.animate(o,r,u)):(f&&f.applySettings(e),n.area.applySettings(o))},_removeElement:function(n){n.line&&n.line.remove(),n.area.remove()},_drawElement:function(n){return{line:this._bordersGroup&&this._createBorderElement(n.line,{strokeWidth:this._styles.normal.border.strokeWidth}).append(this._bordersGroup),area:this._createMainElement(n.area).append(this._elementsGroup)}},_applyStyle:function(t){this._elementsGroup&&this._elementsGroup.applySettings(t.elements),this._bordersGroup&&this._bordersGroup.applySettings(t.border),n.each(this._graphics||[],function(n,i){i.line&&i.line.applySettings({strokeWidth:t.border.strokeWidth})})},_createPattern:function(n,t){if(t&&e.isObject(t)){var i=this._renderer.createPattern(n,t);return this._patterns.push(i),i.id}return n},_parseStyle:function(n,t,i){var f=n.border||{},u=r._parseLineOptions(f,i);return u.strokeWidth=f.visible?u.strokeWidth:0,{border:u,elements:{stroke:"none",fill:this._createPattern(n.color||t,n.hatching),opacity:n.opacity}}},_areBordersVisible:function(){var n=this._options;return n.border.visible||n.hoverStyle.border.visible||n.selectionStyle.border.visible},_createMainElement:function(n,t){return this._renderer.createArea(n,t)},_getTrackerSettings:function(n){return{strokeWidth:n.singlePointSegment?this._defaultTrackerWidth:0}},_getMainPointsFromSegment:function(n){return n.area}}),i.steparea=u({},i.area,{_prepareSegment:function(n,t){return n=i.area._processSinglePointsAreaSegment(n,t),i.area._prepareSegment.call(this,i.stepline._calculateStepLinePoints(n))}}),i.splinearea=u({},i.area,{_areaPointsToSplineAreaPoints:function(n){var t=n[n.length/2-1],i=n[n.length/2];n.splice(n.length/2,0,{x:t.x,y:t.y},{x:i.x,y:i.y})},_prepareSegment:function(n,t){var u=i.area,f=u._processSinglePointsAreaSegment(n,t),r=u._prepareSegment.call(this,i.spline._calculateBezierPoints(f,t));return this._areaPointsToSplineAreaPoints(r.area),r.singlePointSegment=f!==n,r},_getDefaultSegment:function(n){var t=i.area._getDefaultSegment(n);return this._areaPointsToSplineAreaPoints(t.area),t},_createMainElement:function(n,t){return this._renderer.createBezierArea(n,t)},_createBorderElement:i.spline._createMainElement})}(jQuery,DevExpress),function(n,t){var e=t.viz,r=e.core.series.mixins.chart,i=r.scatter,u=r.area,f=n.extend,o=n.each,s=3;r.bar=f({},i,{_getSpecialColor:u._getSpecialColor,_createPattern:u._createPattern,_updateOptions:function(n){this._stackName="axis_"+(n.axis||"default")+"_stack_"+(n.stack||"default")},_getRangeData:function(){var i=u._getRangeData.apply(this,arguments);return i.arg.stick=!1,i},_parsePointStyle:function(n,t,r){var f=this._createPattern(n.color||t,n.hatching),u=i._parsePointStyle.call(this,n,f,r);return u.fill=f,u.dashStyle=n.border&&n.border.dashStyle||"solid",delete u.r,u},_applyMarkerClipRect:function(n){n.clipId=null},_applyTrackersClippings:function(){this._markerTrackerGroup.applySettings({clipId:this._paneClipRectID})},_clearingAnimation:function(n,t){var i=this,r;r=i._options.rotated?{scale:{x:.001,y:1},translate:{x:n.x.translate("canvas_position_default")}}:{scale:{x:1,y:.001},translate:{y:n.y.translate("canvas_position_default")}},i._labelsGroup&&i._labelsGroup.animate({opacity:.001},{duration:i._defaultDuration,partitionDuration:.5},function(){i._markersGroup.animate(r,{partitionDuration:.5},function(){i._markersGroup.applySettings({scale:null,translateX:0,translateY:0}),t()})})},_createGroups:function(n,t,r){var u={};i._createGroups.apply(this,arguments),n&&r?u=this._options.rotated?{scale:{x:.001,y:1},translateX:this.translators.x.translate("canvas_position_default")}:{scale:{x:1,y:.001},translateY:this.translators.y.translate("canvas_position_default")}:n||(u={scale:{x:1,y:1},translateX:0,translateY:0}),this._markersGroup.applySettings(u)},_drawPoint:function(n,t,r,u,f){i._drawPoint.call(this,n,t,r,u&&!f)},_getMainColor:function(){return this._options.mainSeriesColor},_createPointStyles:function(n){var t=n.color||this._getMainColor(),i=this._getSpecialColor(t);return{normal:this._parsePointStyle(n,t,t),hover:this._parsePointStyle(n.hoverStyle||{},i,t),selection:this._parsePointStyle(n.selectionStyle||{},i,t)}},_preparePointOptions:function(n){return n?f(!0,{},this._options,n):this._options},_animate:function(n){var t=this,i=function(){t._labelsGroup&&t._labelsGroup.animate({opacity:1},{duration:t._defaultDuration})},r;t._markersGroup.animate({scale:{x:1,y:1},translate:{y:0,x:0}},undefined,i),n||(r=t._drawedPoints.length-1,o(this._drawedPoints||[],function(n,t){t.animate(n===r?i:undefined,{x:t.x,y:t.y,height:t.height,width:t.width})}))},_getPointSize:function(){return s}})}(jQuery,DevExpress),function(n,t){var f=t.viz,i=f.core.series.mixins.chart,e=n.extend,s=t.utils.isDefined,h=n.map,u=f.core.series.helpers.rangeDataCalculator(),r=i.area,o={_checkData:function(n){return s(n.argument)&&n.value!==undefined&&n.minValue!==undefined},updateTeamplateFieldNames:function(){var n=this,t=n._options,r=n.getValueFields(),i=n.name;t.rangeValue1Field=r[0]+i,t.rangeValue2Field=r[1]+i,t.tagField=n.getTagField()+i},_processRange:function(n,t){u.processTwoValues(this,n,t,"value","minValue")},_getRangeData:function(n,t){return u.calculateTwoValuesRangeData(this,n,t,"value","minValue"),u.addRangeSeriesLabelPaddings(this),this._rangeData},_getPointData:function(n,t){var i=t.argumentField||"arg",r=t.tagField||"tag",u=t.rangeValue1Field||"val1",f=t.rangeValue2Field||"val2";return{tag:n[r],minValue:n[u],value:n[f],argument:n[i]}},_fusionPoints:function(n,t){var e=i.scatter,u=e._calcMedianValue.call(this,n,"value"),f=e._calcMedianValue.call(this,n,"minValue"),o;return(u===null||f===null)&&(u=f=null),o={minValue:f,value:u,argument:t,tag:null}},getValueFields:function(){return[this._options.rangeValue1Field||"val1",this._options.rangeValue2Field||"val2"]}};i.rangebar=e({},i.bar,o),i.rangearea=e({},r,{_drawPoint:function(n,t,i,r){n.isInVisibleArea()?(n.clearVisibility(),n.draw(this._renderer,t,i,r),this._drawedPoints.push(n),n.visibleTopMarker||n.hideMarker("top"),n.visibleBottomMarker||n.hideMarker("bottom")):n.setInvisibility()},_prepareSegment:function(t,i){var r=this._processSinglePointsAreaSegment(t,i),u=n.map(r,function(n){return n.getCoords(!0)});return{line:r,bottomLine:u,area:n.map(r,function(n){return n.getCoords()}).concat(u.slice().reverse()),singlePointSegment:r!==t}},_getDefaultSegment:function(n){var t=r._getDefaultSegment.call(this,n);return t.bottomLine=t.line,t},_removeElement:function(n){r._removeElement.call(this,n),n.bottomLine&&n.bottomLine.remove()},_drawElement:function(n,t){var i=r._drawElement.call(this,n,t);return i.bottomLine=this._bordersGroup&&this._createBorderElement(n.bottomLine,{strokeWidth:this._styles.normal.border.strokeWidth}).append(this._bordersGroup),i},_applyStyle:function(t){this._elementsGroup&&this._elementsGroup.applySettings(t.elements),this._bordersGroup&&this._bordersGroup.applySettings(t.border),n.each(this._graphics||[],function(n,i){i.line&&i.line.applySettings({strokeWidth:t.border.strokeWidth}),i.bottomLine&&i.bottomLine.applySettings({strokeWidth:t.border.strokeWidth})})},_updateElement:function(n,t,i,u,f){r._updateElement.call(this,n,t,i,u,f);var o={points:t.bottomLine},e=n.bottomLine;e&&(i?e.animate(o,u):e.applySettings(o))}},o)}(jQuery,DevExpress),function(n,t){var s=t.viz,r=s.core.series.mixins.chart,u=r.scatter,i=r.bar,e=t.utils.isDefined,f=n.extend,o=n.each;r.bubble=f({},u,{_applyTrackersClippings:i._applyTrackersClippings,_getMainColor:i._getMainColor,_createPointStyles:i._createPointStyles,_createPattern:i._createPattern,_preparePointOptions:i._preparePointOptions,_getSpecialColor:i._getSpecialColor,_applyMarkerClipRect:r.line._applyElementsClipRect,_parsePointStyle:function(n,t,r){var u=i._parsePointStyle.call(this,n,t,r);return u.opacity=n.opacity,u},_createMarkerGroup:function(){var n=this._getPointOptions().styles.normal,t;n["class"]="dxc-markers",this._applyMarkerClipRect(n),t=f({},n),delete t.opacity,this._createGroup("_markersGroup",this,this._group,t)},_getCreatingPointOptions:function(){if(!this._predefinedPointOptions){var i,n=this._getPointOptions(),r=n.styles&&n.styles.normal&&n.styles.normal.strokeWidth,u=n.styles&&n.styles.normal&&n.styles.normal.r,e=n.styles&&n.styles.normal&&n.styles.normal.opacity,t=f(!0,{},n);t.styles=i=t.styles||{},i.normal={strokeWidth:r,r:u,opacity:e},this._predefinedPointOptions=t}return this._predefinedPointOptions},_checkData:function(n){return e(n.argument)&&e(n.size)&&n.value!==undefined},_getPointData:function(n,t){var i=u._getPointData.call(this,n,t),r=t.sizeField||"size";return i.size=n[r],i},_fusionPoints:function(n,t){var r=u._calcMedianValue.call(this,n,"value"),f=u._calcMedianValue.call(this,n,"size");return{size:f,value:r,argument:t,tag:null}},getValueFields:function(){return[this._options.valueField||"val",this._options.sizeField||"size"]},updateTeamplateFieldNames:function(){var n=this,t=n._options,r=n.getValueFields(),i=n.name;t.valueField=r[0]+i,t.sizeField=r[1]+i,t.tagField=n.getTagField()+i},_clearingAnimation:function(n,t){var i=this,u={r:0},r=.5,f=i._drawedPoints.length-1;i._labelsGroup&&i._labelsGroup.animate({opacity:.001},{duration:i._defaultDuration,partitionDuration:r},function(){o(i._drawedPoints||[],function(n,i){i.animate(n===f?t:undefined,u,r)})})},_animate:function(){var t=this,i=t._drawedPoints.length-1,r=function(){t._labelsGroup&&t._labelsGroup.animate({opacity:1},{duration:t._defaultDuration})};o(t._drawedPoints||[],function(n,t){t.animate(n===i?r:undefined,{r:t.bubbleSize,translate:{x:t.x,y:t.y}})})}})}(jQuery,DevExpress),function(n,t){var h=t.viz,e=h.core.series.mixins,u=e.pieChart,c=t.utils,f=e.chart.scatter,o=e.chart.bar,l=n.extend,i=n.each,r=n.noop,s=n.map,a=isFinite,v=Math.max;u.pie=l({},o,{_createLabelGroup:f._createLabelGroup,_createGroups:f._createGroups,_drawPoint:function(n){f._drawPoint.apply(this,arguments),n.isVisible()||n.setInvisibility()},_applyTrackersClippings:r,_processRange:r,_applyElementsClipRect:r,_updateDataType:r,getColor:r,_prepareSeriesToDrawing:r,_endUpdateData:f._prepareSeriesToDrawing,resetLabelEllipsis:function(){i(this._points||[],function(n,t){t._label.setLabelEllipsis=!1})},_adjustLabels:function(n){var t=this,e=t._options,o=t.canvas,r=t._points||[],u=[],s=[],h=0,f,c,l,a;e.label.position!=="inside"?(i(r,function(n,t){t._label.hasText()&&u.push(t._label.getTextCoords().width)}),u.length&&(f=v.apply(null,u),i(r,function(n,t){t._label.hasText()&&(t._label.updatePosition(f),t._label.setLabelEllipsis=!0)}),t._firstDrawing=!t.redraw&&n,t.redraw=!0)):i(r,function(n,t){t._label.hasText()&&(t._label.setLabelEllipsis=!0,t._label.updatePosition())})},_getCreatingPointOptions:function(){return this._getPointOptions()},_updateOptions:function(n){this.labelSpace=0,this.innerRadius=this.type==="pie"?0:n.innerRadius,this.redraw=!1},_checkData:function(n){var t=o._checkData(n);return this._options.paintNullPoints?t:t&&n.value!==null},_createMarkerGroup:function(){this._markersGroup||(this._markersGroup=this._renderer.createGroup({"class":"dxc-markers"}).append(this._group))},_getMainColor:function(){return this._options.mainSeriesColor()},_getPointOptions:function(){return this._parsePointOptions(this._preparePointOptions(),this._options.label)},_getRangeData:function(){return this._rangeData},_getArrangeTotal:function(n){var t=0;return i(n,function(n,i){i.isVisible()&&(t+=i.initialValue)}),t},_createPointStyles:function(n){var t=n.color||this._getMainColor(),i=this._getSpecialColor(t);return{normal:this._parsePointStyle(n,t,t),hover:this._parsePointStyle(n.hoverStyle,i,t),selection:this._parsePointStyle(n.selectionStyle,i,t),legendStyles:{normal:this._createLegendState(n,t),hover:this._createLegendState(n.hoverStyle,i),selection:this._createLegendState(n.selectionStyle,i)}}},_getArrangeMinShownValue:function(n,t){var r=this._options.minSegmentSize,u=0,f=0;return t=t||n.length,i(n,function(n,i){i.isVisible()&&(i.initialValue<r*t/360?u+=r:f+=i.initialValue)}),u<360?r*f/(360-u):0},_applyArrangeCorrection:function(n,t,r){var u=this._options,s=u.segmentsDirection!=="anticlockwise",h=a(u.startAngle)?c.normalizeAngle(u.startAngle):0,l=u.minSegmentSize,o,f=0,e=0;r===0&&(r=n.length,e=1),i(s?n:n.concat([]).reverse(),function(n,i){var u=i.isVisible()?e||i.initialValue:0,s;l&&i.isVisible()&&u<t&&(s=t),o=u/r,i.correctValue(f,o,e+(s||0)),i.shiftedAngle=h,f=f+(s||u)}),this._rangeData={val:{min:0,max:f}}},arrangePoints:function(){var n=this,r=n._options.minSegmentSize,u,f=0,t,i=n._originalPoints=n._points=s(n._originalPoints||[],function(n){return n.value===null||n.value<0||n.value===0&&!r?(n.dispose(),null):(n.index=f++,n)});t=n._getArrangeTotal(i),r&&(u=this._getArrangeMinShownValue(i,t)),n._applyArrangeCorrection(i,u,t)},correctPosition:function(n){i(this._points,function(t,i){i.correctPosition(n)})},_animate:function(t){var r=this,u=0,e=.2,i=r._points,f=i&&i.length,h=1/(e*(f-1)+1),o=function(){i[u]&&i[u++].animate(u===f?s:undefined,h,c)},c=function(n,t){t>=e&&(this.step=null,o())},s=function(){r._labelsGroup&&r._labelsGroup.animate({opacity:1},{duration:400})};t?o():n.each(i,function(n,t){t.animate(n==f-1?s:undefined)})},getVisiblePoints:function(){return s(this._points,function(n){return n.isVisible()?n:null})},_beginUpdateData:function(){this._deletePatterns(),this._patterns=[]}}),u.doughnut=u.donut=u.pie}(jQuery,DevExpress),function(n,t){var e=t.viz,i=e.core.series.mixins.chart,o=i.scatter,u=i.bar,f=e.core.series.helpers.rangeDataCalculator(),s=t.utils.isDefined,r=n.extend,h=n.each,c=n.noop,l=10;i.stock=r({},o,{_animate:c,_applyMarkerClipRect:i.line._applyElementsClipRect,_applyTrackersClippings:u._applyTrackersClippings,_createPattern:u._createPattern,_preparePointOptions:u._preparePointOptions,_createMarkerGroup:function(){var n=this,t,i=n._getPointOptions().styles,r=i.normal,u=i.positive.normal,f=i.reduction.normal,e=i.reductionPositive.normal,o={"class":"dxc-markers"};n._applyMarkerClipRect(o),r["class"]="default-markers",u["class"]="default-positive-markers",f["class"]="reduction-markers",e["class"]="reduction-positive-markers",n._createGroup("_markersGroup",n,n._group,o),t=n._markersGroup,n._createGroup("defaultMarkersGroup",t,t,r),n._createGroup("reductionMarkersGroup",t,t,f),n._createGroup("defaultPositiveMarkersGroup",t,t,u),n._createGroup("reductionPositiveMarkersGroup",t,t,e)},_createGroups:function(){o._createGroups.call(this,!1)},_clearingAnimation:function(n,t){t()},_getCreatingPointOptions:function(){if(!this._predefinedPointOptions){var n,t=this._getPointOptions(),u=t.styles&&t.styles.normal&&t.styles.normal.strokeWidth,i=r(!0,{},t);i.styles=n=i.styles||{},n.normal=n.positive.normal=n.reduction.normal=n.reductionPositive.normal={strokeWidth:u},this._predefinedPointOptions=i}return this._predefinedPointOptions},_checkData:function(n){return s(n.argument)&&n.highValue!==undefined&&n.lowValue!==undefined&&n.openValue!==undefined&&n.closeValue!==undefined},_processRange:function(n,t){f.processTwoValues(this,n,t,"highValue","lowValue")},_getRangeData:function(n,t){return f.calculateTwoValuesRangeData(this,n,t,"highValue","lowValue"),f.addRangeSeriesLabelPaddings(this),this._rangeData},_getPointData:function(n,t){var r=this,i,h=t.argumentField||"date",c=t.tagField||"tag",f=t.openValueField||"open",e=t.closeValueField||"close",o=t.highValueField||"high",s=t.lowValueField||"low",u;r.level=t.reduction.level;switch((r.level||"").toLowerCase()){case"open":i=f;break;case"high":i=o;break;case"low":i=s;break;default:i=e,r.level="close"}return u=n[i],{argument:n[h],highValue:n[o],lowValue:n[s],closeValue:n[e],openValue:n[f],reductionValue:u,tag:n[c],isReduction:this._checkReduction(u)}},_parsePointStyle:function(n,t,i){return{stroke:n.color||t,strokeWidth:n.width,fill:n.color||i}},updateTeamplateFieldNames:function(){var i=this,n=i._options,r=i.getValueFields(),t=i.name;n.openValueField=r[0]+t,n.highValueField=r[1]+t,n.lowValueField=r[2]+t,n.closeValueField=r[3]+t,n.tagField=i.getTagField()+t},_getDefaultStyle:function(n){var t=n.color||this._options.mainSeriesColor;return{normal:this._parsePointStyle(n,t,t),hover:this._parsePointStyle(n.hoverStyle,t,t),selection:this._parsePointStyle(n.selectionStyle,t,t)}},_getReductionStyle:function(n){var t=n.reduction.color,i=this._parsePointStyle({color:t,width:n.width,hatching:n.hatching},t,t);return{normal:i,hover:this._parsePointStyle(n.hoverStyle,t,t),selection:this._parsePointStyle(n.selectionStyle,t,t)}},_createPointStyles:function(n){var f=this,o=f._options.innerColor,t=f._getDefaultStyle(n),i,e,u;return i=r(!0,{},t),e=f._getReductionStyle(n),u=r(!0,{},e),i.normal.fill=i.hover.fill=i.selection.fill=o,u.normal.fill=u.hover.fill=u.selection.fill=o,t.positive=i,t.reduction=e,t.reductionPositive=u,t},_endUpdateData:function(){delete this.prevLevelValue,delete this._predefinedPointOptions},_checkReduction:function(n){var t=!1;return n!=null&&(s(this.prevLevelValue)&&(t=n<this.prevLevelValue),this.prevLevelValue=n),t},_fusionPoints:function(n,t){var r={},u,e=-Infinity,o=+Infinity,f,s;if(!n.length)return{};h(n,function(n,t){t.hasValue()&&(e=Math.max(e,t.highValue),o=Math.min(o,t.lowValue),f=f!==undefined?f:t.openValue,s=t.closeValue!==undefined?t.closeValue:s)}),r.argument=t,r.openValue=f,r.closeValue=s,r.highValue=e,r.lowValue=o,r.tag=null;switch((this.level||"").toLowerCase()){case"open":u=f;break;case"high":u=e;break;case"low":u=o;break;default:u=s}return r.reductionValue=u,r.isReduction=this._checkReduction(u),r},_getPointSize:function(){return l},getValueFields:function(){var n=this._options;return[n.openValueField||"open",n.highValueField||"high",n.lowValueField||"low",n.closeValueField||"close"]},getArgumentField:function(){return this._options.argumentField||"date"}}),i.candlestick=r({},i.stock,{_parsePointStyle:function(n,t,r){var u=this._createPattern(n.color||r,n.hatching),f=i.stock._parsePointStyle.call(this,n,t,u);return f.fill=u,f}})}(jQuery,DevExpress),function(n,t){var o=t.viz,i=o.core.series.mixins.chart,s=i.area,h=i.bar,c=i.line,u=o.core.series.helpers.rangeDataCalculator(),r=n.extend,l=n.noop,f={_processRange:l,_processStackedRange:function(){var t=this,i;n.each(t.getAllPoints(),function(n,r){u.processRange(t,r,i),i=r})},_getRangeData:function(){return this._processStackedRange(),s._getRangeData.apply(this,arguments)}},e=r({},f,{_getRangeData:function(n,t){return this._processStackedRange(),u.calculateRangeData(this,n,t),u.addLabelPaddings(this),u.processFullStackedRange(this),u.calculateRangeMinValue(this,n),this._rangeData},isFullStackedSeries:function(){return!0}});i.stackedline=r({},c,f,{_getRangeData:function(){return this._processStackedRange(),c._getRangeData.apply(this,arguments)}}),i.fullstackedline=r({},c,e,{_getRangeData:function(n,t){this._processStackedRange();var i=o.core.series.helpers.rangeDataCalculator();return i.calculateRangeData(this,n,t),i.addLabelPaddings(this),i.processFullStackedRange(this),this._rangeData}}),i.stackedbar=r({},h,f,{_getRangeData:function(){return this._processStackedRange(),h._getRangeData.apply(this,arguments)}}),i.fullstackedbar=r({},h,e,{_getRangeData:function(){var i=e._getRangeData.apply(this,arguments);return i.arg.stick=!1,i}}),i.stackedarea=r({},s,f),i.fullstackedarea=r({},s,e)}(jQuery,DevExpress),function(n,t){var r=t.viz,f=r.core.series.helpers.consts.states,e=n.each,s=n.extend,o=t.utils.isDefined,i=n.noop,u={scatter:"symbolPoint",line:"symbolPoint",spline:"symbolPoint",stepline:"symbolPoint",stackedline:"symbolPoint",fullstackedline:"symbolPoint",area:"symbolPoint",splinearea:"symbolPoint",steparea:"symbolPoint",stackedarea:"symbolPoint",fullstackedarea:"symbolPoint",rangearea:"rangeSymbolPoint",bar:"barPoint",stackedbar:"barPoint",fullstackedbar:"barPoint",rangebar:"rangeBarPoint",bubble:"bubblePoint",pie:"piePoint",doughnut:"piePoint",donut:"piePoint",stock:"stockPoint",candlestick:"candlestickPoint"};r.core.series.points={},r.core.series.points.Point=t.Class.inherit({ctor:function(n,t){this.update(n,t),this._emptySettings={fill:null,stroke:null,dashStyle:null}},getColor:function(){return this._styles.normal.fill||this.series.getColor()},_getStyle:function(){var t=this._styles,n;return this.isSelected()?n=t.selection:this.isHovered()?n=t.hover:(this.fullState=f.normalMark,n=t.normal),n},update:function(n,t){this.updateOptions(t),this.updateData(n)},updateData:function(n){this._updateData(n),this.hasValue()?(this._updateLabelData(),this._fillStyle()):this.setInvisibility()},deleteMarker:function(){this.graphic&&this.graphic.detach(),this.graphic=null},deleteTrackerMarker:function(){this.trackerGraphic&&this.trackerGraphic.remove(),this.trackerGraphic=null},draw:function(n,t,i,r,u){this._needDeletingOnDraw&&(this.deleteMarker(),this.deleteTrackerMarker(),this._needDeletingOnDraw=!1),this._needClearingOnDraw&&(this.clearMarker(),this._needClearingOnDraw=!1),this._hasGraphic()?this._updateMarker(r,undefined,t):this._options.visible&&this._drawMarker(n,t,r,u),this._drawLabel(n,i)},applyStyle:function(n){this.graphic&&(n==="normal"?this.clearMarker():this.graphic.toForeground(),this._updateMarker(!0,this._styles[n]))},setHoverState:function(){this.series.setPointHoverState(this)},releaseHoverState:function(n){this.series.releasePointHoverState(this,n),this.graphic&&(this.isSelected()||this.graphic.toBackground())},setSelectedState:function(){this.series.setPointSelectedState(this)},releaseSelectedState:function(){this.series.releasePointSelectedState(this)},select:function(){this.series.selectPoint(this)},clearSelection:function(){this.series.deselectPoint(this)},showTooltip:function(){this.series.showPointTooltip(this)},hideTooltip:function(){this.series.hidePointTooltip(this)},_checkLabelsChanging:function(n,t){if(n){var i=~t.indexOf("range"),r=~n.indexOf("range");return r&&!i||!r&&i}return!1},updateOptions:function(n){if(o(n)){var t=this,i=t._options,f=i&&i.type,r=n.type;u[f]!==u[r]?(t._needDeletingOnDraw=!0,t._needClearingOnDraw=!1,t._checkLabelsChanging(f,r)&&t.deleteLabel(),t._resetType(f),t._setType(r)):(t._needDeletingOnDraw=t._checkSymbol(i,n),t._needClearingOnDraw=t._checkCustomize(i,n)),t.series=n.series,t._options=n,t._fillStyle(),t._updateLabelOptions(u[r])}},translate:function(n){this.translators=n||this.translators,this.translators&&this.hasValue()&&this._translate(this.translators)},drawTracker:function(n,t){this.trackerGraphic?this._updateTracker():this._drawTrackerMarker(n,t)},_checkCustomize:function(n,t){return n.styles.usePointCustomOptions&&!t.styles.usePointCustomOptions},_getCustomLabelVisibility:function(){if(this._styles.useLabelCustomOptions)return this._options.label.visible?"visible":"hidden"},_getGraphicSettings:function(){return{x:this.graphic.settings.x||0,y:this.graphic.settings.y||0,height:this.graphic.settings.height||0,width:this.graphic.settings.width||0}},_resetType:function(n){var t=this;n&&e(r.core.series.points.mixins[u[n]],function(n){delete t[n]})},_setType:function(n){var t=this;e(r.core.series.points.mixins[u[n]],function(n,i){t[n]=i})},_prepareStatesOptions:function(){var n=this;n._options.states&&n._options.states.normal&&n._populatePointShape(n._options.states.normal.r)},isInVisibleArea:function(){return this.inVisibleArea},isSelected:function(){return!!(this.fullState&f.selectedMark)},isHovered:function(){return!!(this.fullState&f.hoverMark)},getOptions:function(){return this._options},animate:function(n,t,i){if(!this.graphic){n&&n();return}this.graphic.animate(t,{partitionDuration:i},n)},getCoords:function(n){return n?this._options.rotated?{x:this.minX,y:this.y}:{x:this.x,y:this.minY}:{x:this.x,y:this.y}},getDefaultCoords:function(){return this._options.rotated?{x:this.defaultX,y:this.y}:{x:this.x,y:this.defaultY}},_calculateVisibility:function(n,t,i,r){var u=this,f,e,s=u._options.rotated;u.translators&&(f=u.translators.x.getCanvasVisibleArea(),e=u.translators.y.getCanvasVisibleArea(),u.inVisibleArea=f.min>n+(i||0)||f.max<n||e.min>t+(r||0)||e.max<t||s&&o(i)&&i!==0&&(f.min===n+i||f.max===n)||!s&&o(r)&&r!==0&&(e.min===t+r||e.max===t)?!1:!0)},correctPosition:i,hasValue:function(){return this.value!==null&&this.minValue!==null},_populatePointShape:i,_checkSymbol:i,hide:i,show:i,hideMarker:i,setInvisibility:i,clearVisibility:i,isVisible:i,resetCorrection:i,correctValue:i,setPercentValue:i,correctCoordinates:i,dispose:function(){this.deleteMarker(),this.deleteTrackerMarker(),this.deleteLabel(),this._options=null,this._styles=null,this.series=null,this.translators=null},getTooltipFormatObject:function(n){var t=this,i=t._getFormatObject(n),r=[],u=[];return t.stackPoints&&(e(t.stackPoints,function(t,i){if(i.isVisible()){var f=i._getFormatObject(n);u.push(i._getFormatObject(n)),r.push(f.seriesName+": "+f.valueText)}}),s(i,{points:u,valueText:r.join("\n"),stackName:t.stackPoints.stackName})),i}})}(jQuery,DevExpress),function(n,t){var f=t.utils.isDefined,u=n.extend,e=Math,i=e.round,r=e.floor,a=n.isEmptyObject,v=n.noop,o=8,s=4,h=10,c={symbolPoint:"_setPositionForSymbol",barPoint:"_setPositionForBar",bubblePoint:"_setPositionForBubble",rangeSymbolPoint:"_setPositionForSymbol",rangeBarPoint:"_setPositionForBar",stockPoint:"_setPositionForFinancial",candlestickPoint:"_setPositionForFinancial"},l={symbolPoint:"_checkPositionForSymbol",barPoint:"_checkPositionForBar",bubblePoint:"_checkPositionForSymbol",rangeSymbolPoint:"_checkPositionForSymbol",rangeBarPoint:"_checkPositionForBar",stockPoint:"_checkPositionForBar",candlestickPoint:"_checkPositionForBar"};t.viz.core.series.points.Label=t.Class.inherit({ctor:function(n,t){this._offset=h,this.updateData(n),this.setOptions(t)},clearVisibility:function(){this._group&&this._group.settings.visibility&&this._group.applySettings({visibility:null})},hide:function(){this._group&&this._group.settings.visibility!=="hidden"&&this._group.applySettings({visibility:"hidden"})},updateData:function(n){f(n)&&(this._data=n.formatObject,this._initialValue=n.initialValue)},updateOptions:function(n){this.setOptions(u(!0,{},{options:this._options},n))},setOptions:function(n){var t=this,i=t._options,n=n||{},r=n.type||"symbolPoint";t._options=n.options,t._rotated=n.rotated,t._isFullStacked=n.isFullStacked,t._isRange=n.isRange,t._setPosition=t[c[r]],t._checkPosition=t[l[r]],i&&(t._isBackgroundChanged(i.background,t._options.background)&&t._deleteBackground(),t._isConnectorChanged(i.connector,t._options.connector)&&t._deleteConnector())},setDataField:function(n,t){this._data=this._data||{},this._data[n]=t},getData:function(){return this._data},setCoords:function(n,t,i,r){this._coords=n,this._graphicBbox=t,this._visibleArea=r,this._location=i},hasText:function(){return!!this._text},getTextCoords:function(){return this._text&&this._text.getBBox()},getCoords:function(){var n={},t=this._insideGroup;return t&&(n=t.getBBox(),n.x=t.settings.translateX||0,n.y=t.settings.translateY||0),n},updatePosition:function(n,t){var r={},i=this._insideGroup;i.applySettings({translateX:n,translateY:t}),this._connector&&this._drawConnector()},_deleteElements:function(){this._deleteConnector(),this._deleteBackground(),this._deleteText(),this._deleteGroups()},dispose:function(){this._data=null,this._options=null,this._positioningFunction=null,this._graphicBbox=null,this._visibleArea=null,this._coords=null,this._deleteElements()},_deleteText:function(){this._text&&this._text.detach(),this._text=null},_deleteGroups:function(){this._insideGroup=null,this._group&&this._group.detach(),this._group=null},_drawGroups:function(n,t){this._group||(this._group=n.createGroup().append(t)),this._insideGroup||(this._insideGroup=n.createGroup().append(this._group))},_drawText:function(n,t){this._text?this._text.applySettings({text:t},this._options.attributes):this._text=n.createText(t,0,0,this._options.attributes).append(this._insideGroup)},_drawBackground:function(n){var t=this,f=t._options,r=f.background||{},i;t._checkBackground(r)&&(i=u(t._getBackgroundSettings(),r),t._background?t._background.applySettings(i):t._background=n.createRect(i.x,i.y,i.width,i.height,0,r).append(t._insideGroup),t._background.toBackground())},_drawConnector:function(n){var t=this,i=t._options.connector||{},r;t._checkConnector(i)&&(r=t._getConnectorPoints()||[],t._connector?t._connector.applySettings(u({points:r},i)):t._connector=n.createPath(r,i).append(t._group),t._connector.toBackground())},_setVisibility:function(n){this._group&&this._group.applySettings({visibility:n})},draw:function(n,t,i){var r=this,e=r._options,o=e.background,u=r._format();f(u)&&u!==""?(r._drawGroups(n,t),r._setVisibility(i),r._drawText(n,u),r._drawBackground(n),r._rotateLabel(),r._setPosition(),r._drawConnector(n)):r._setVisibility("hidden")},_deleteBackground:function(){this._background&&this._background.detach(),this._background=null},_isBackgroundChanged:function(n,t){return this._checkBackground(n||{})!==this._checkBackground(t||{})},_checkBackground:function(n){var t=n.fill&&n.fill!=="none",i=n.strokeWidth&&n.stroke&&n.stroke!=="none";return t||i},_getBackgroundSettings:function(){var n=this._text.getBBox();return{x:n.x-o,y:n.y-s,width:n.width+2*o,height:n.height+2*s}},_deleteConnector:function(){this._connector&&this._connector.detach(),this._connector=null},_isConnectorChanged:function(n,t){return this._checkConnector(n||{})!==this._checkConnector(t||{})},_checkConnector:function(n){return n&&n.strokeWidth},_getConnectorPoints:function(){var i=this,a=i._rotated,n=i._insideGroup.getBBox(),t=i._graphicBbox,s,h,c,l,u,f,e,o;if(n.x+=i._insideGroup.settings.translateX||0,n.y+=i._insideGroup.settings.translateY||0,s=i._background?n.y+n.height/2:null,h=i._background?n.x+n.width/2:null,c=n.x+n.width,l=n.y+n.height,u=r(n.x+n.width/2),f=r(t.x+t.width/2),l<t.y)e=s||l,o=t.y;else if(n.y>t.y+t.height)e=s||n.y,o=t.y+t.height;else{if(n.x>t.x+t.width)u=h||n.x,f=t.x+t.width;else if(c<t.x)u=h||c,f=t.x;else return;e=r(n.y+n.height/2),o=r(t.y+t.height/2)}return[{x:u,y:e},{x:f,y:o}]},_rotateLabel:function(){var n=this._insideGroup.getBBox();this._insideGroup.rotate(this._options.rotationAngle)},_format:function(){var u=this,n=u._data,i=u._options,r=t.formatHelper;return n.valueText=r.format(n.value,i.format,i.precision),n.argumentText=r.format(n.argument,i.argumentFormat,i.argumentPrecision),n.percent!==undefined&&(n.percentText=r.format(n.percent,"percent",i.percentPrecision)),n.total!==undefined&&(n.totalText=r.format(n.total,i.format,i.precision)),n.openValue!==undefined&&(n.openValueText=r.format(n.openValue,i.format,i.precision)),n.closeValue!==undefined&&(n.closeValueText=r.format(n.closeValue,i.format,i.precision)),n.lowValue!==undefined&&(n.lowValueText=r.format(n.lowValue,i.format,i.precision)),n.highValue!==undefined&&(n.highValueText=r.format(n.highValue,i.format,i.precision)),n.reductionValue!==undefined&&(n.reductionValueText=r.format(n.reductionValue,i.format,i.precision)),i.customizeText?i.customizeText.call(n,n):n.valueText},_getOutsideLabelCoords:function(n){var t=this._graphicBbox,i=0,r=0,u=this._location==="top";return this._rotated?(r+=t.y-n.y-n.height/2+t.height/2,i+=u?t.x+t.width-n.x+this._offset:t.x-n.x-n.width-this._offset):(i+=t.width/2+t.x,r+=u?t.y-n.y-n.height-this._offset:t.y+t.height-n.y+this._offset),{x:i,y:r}},_getInsideLabelCoords:function(n){var t=this._graphicBbox,u=this._location==="top",i=0,r=0;return this._isRange?this._rotated?(r+=t.y-n.y-n.height/2+t.height/2,i+=u?t.x+t.width-n.x-n.width-this._offset:t.x-n.x+this._offset):(i+=t.width/2+t.x,r+=u?t.y-n.y-n.height+this._offset+n.height:t.y+t.height-n.y-this._offset-n.height):this._rotated?(r+=t.y-n.y-n.height/2+t.height/2,i+=t.x-n.x-n.width/2+t.width/2):(i+=t.width/2+t.x,r+=t.y-n.y-n.height/2+t.height/2),{x:i,y:r}},_getFullstackedLabelCoords:function(n){var i=0,r=0,t=this._graphicBbox;return this._rotated?(r+=t.y-n.y-n.height/2+t.height/2,i+=this._coords.defaultX-n.x+this._offset):(i+=t.width/2+t.x,r+=this._coords.defaultY-n.y-n.height-this._offset),{x:i,y:r}},_setPositionForSymbol:function(){var t=this,r=t._offset,n=t._insideGroup.getBBox(),i=t._graphicBbox,s=t._location==="top",u=0,f=0,e=0,o=0;t._rotated?(u=i.y-n.y-n.height/2+i.height/2,f=s?i.width-n.x+r:-n.x-n.width-r,f+=i.x):(f=t._coords.x,u=s?-n.y-n.height-r:i.height-n.y+r,u+=i.y),e+=f+t._options.horizontalOffset,o+=u+t._options.verticalOffset,t._checkPosition({x:n.x+e,y:n.y+o,height:n.height,width:n.width},e,o)},_checkPositionForSymbol:function(n,t,r){var e=this,f=e._graphicBbox,u=e._visibleArea,o=e._offset;e._rotated?u.minY<=f.y+f.height&&u.maxY>=f.y&&(u.minX>n.x&&(t+=f.x+f.width-n.x+o),u.maxX<n.x+n.width&&(t-=n.x+n.width-f.x+o),u.minY>f.y&&e.adjustSeriesLabels&&(r+=u.minY-n.y),u.maxY<n.y+n.height&&e.adjustSeriesLabels&&(r-=n.y+n.height-u.maxY)):u.minX<=f.x+f.width&&u.maxX>=f.x&&(u.minX>n.x&&e.adjustSeriesLabels&&(t+=u.minX-n.x),u.maxX<n.x+n.width&&e.adjustSeriesLabels&&(t-=n.x+n.width-u.maxX),u.minY>n.y&&(r+=f.y+f.height-n.y+o),u.maxY<n.y+n.height&&(r-=n.y+n.height-f.y+o)),e._insideGroup.applySettings({translateX:i(t),translateY:i(r)})},_setPositionForBar:function(){var n=this,u=n._offset,r=n._options.position,i=n._insideGroup.getBBox(),t;t=n._initialValue===0&&n._isFullStacked?n._getFullstackedLabelCoords(i):r==="inside"?n._getInsideLabelCoords(i):n._getOutsideLabelCoords(i),t.x+=n._options.horizontalOffset,t.y+=n._options.verticalOffset,n._checkPosition({x:i.x+t.x,y:i.y+t.y,height:i.height,width:i.width},t.x,t.y)},_checkPositionForBar:function(n,t,r){var f=this,e=f._graphicBbox,u=f._visibleArea;if(u.minX<=e.x+e.width&&u.maxX>=e.x&&u.minY<=e.y+e.height&&u.maxY>=e.y&&(f._rotated?(u.minX>n.x&&(t+=u.minX-n.x),u.maxX<n.x+n.width&&(t-=n.x+n.width-u.maxX),u.minY>n.y&&f.adjustSeriesLabels&&(r+=u.minY-n.y),u.maxY<n.y+n.height&&f.adjustSeriesLabels&&(r-=n.y+n.height-u.maxY)):(u.minX>n.x&&f.adjustSeriesLabels&&(t+=u.minX-n.x),u.maxX<n.x+n.width&&f.adjustSeriesLabels&&(t-=n.x+n.width-u.maxX),u.minY>n.y&&(r+=u.minY-n.y),u.maxY<n.y+n.height&&(r-=n.y+n.height-u.maxY))),f._options.resolveLabelsOverlapping&&f._options.position==="inside")if(f._rotated){if(n.width>e.width||n.height>e.height){f.hide();return}}else if(n.height>e.height||n.width>e.width){f.hide();return}f._insideGroup.applySettings({translateX:i(t),translateY:i(r)})},_setPositionForBubble:function(){var n=this,t=n._insideGroup.getBBox(),u=n._graphicBbox,i=0,r=0;n._options.position==="inside"?(i=n._coords.x,r+=u.y+u.height/2-t.y-t.height/2,i+=n._options.horizontalOffset,r+=n._options.verticalOffset,n._checkPosition({x:t.x+i,y:t.y+r,height:t.height,width:t.width},i,r)):n._setPositionForSymbol()},_setPositionForFinancial:function(){var t=this,r=t._offset,i=t._insideGroup.getBBox(),n;n=t._getOutsideLabelCoords(i),n.x+=t._options.horizontalOffset,n.y+=t._options.verticalOffset,t._checkPosition({x:i.x+n.x,y:i.y+n.y,height:i.height,width:i.width},n.x,n.y)}})}(jQuery,DevExpress),function(n,t){var r=t.utils.getCosAndSin,c=n.extend,f=Math,i=f.round,o=f.max,s=n.inArray,e=t.utils.isDefined,h=30,u=20;t.viz.core.series.points.PieLabel=t.viz.core.series.points.Label.inherit({ctor:function(n,t){this.setLabelEllipsis=!1,this.indentFromPie=h,this.updateData(n),this.setOptions(t)},updateData:function(n){e(n)&&(this._data=n.formatObject)},setOptions:function(n){var t=this,i=t._options,n=n||{};t._options=n.options,t._borderWidth=n.borderWidth,i&&(t._isBackgroundChanged(i.background,t._options.background)&&t._deleteBackground(),t._isConnectorChanged(i.connector,t._options.connector)&&t._deleteConnector())},setCoords:function(n,t){this._middleAngle=n.middleAngle,this._radiusOuter=n.radiusOuter,this._centerX=n.centerX,this._centerY=n.centerY,this._canvas=t},updatePosition:function(n){this._setPosition(n),this._checkEllipsis(),this._drawBackground(),this._rotateLabel(),this._checkPosition(),this._connector&&this._drawConnector()},dispose:function(){this._data=null,this._options=null,this._canvas=null,this._deleteElements()},draw:function(n,t,i){var r=this,f=r._options,o=f.background,u=r._format();e(u)&&u!==""?(r._drawGroups(n,t),r._setVisibility(i),r._drawText(n,u),r._setPosition(),r._checkEllipsis(),r._drawBackground(n),r._rotateLabel(),r._checkPosition(),r._drawConnector(n)):r._setVisibility("hidden")},_getOutsideGroupLabelPosition:function(){return this._deleteConnector(),this._group&&this._group.getBBox()},_setPosition:function(n){var t=this,v=t._text.getBBox(),h=t._options,o=r(t._middleAngle),s="center",e=t._radiusOuter+h.radialOffset,c=t._canvas,l=c.width-c.right,a=c.left,f,y;h.position==="inside"?(e-=t.indentFromPie,f=t._centerX+e*o.cos):h.position==="columns"?(e+=u,o.cos>=0?(s="right",f=n?t._centerX+e+n:l,f=f>l?l:f):o.cos<0&&(s="left",f=n?t._centerX-e-n:a,f=f<a?a:f)):(e+=t.indentFromPie,o.cos>.1?s="left":o.cos<-.1&&(s="right"),f=t._centerX+e*o.cos),y=i(t._text.settings.y+t._centerY-e*o.sin-v.y-v.height/2),t._text.applySettings({x:f,y:y,align:s})},_getConnectorPoints:function(){var n=this,c=n._options,l=c.position,f,h=n._radiusOuter,t,e,o,s=[];return l!=="inside"&&(f=r(i(n._middleAngle)),s.push({x:i(n._centerX+(h-n._borderWidth)*f.cos),y:i(n._centerY-(h-n._borderWidth)*f.sin)}),e=i(n._centerX+(h+c.radialOffset+u)*f.cos),l==="columns"?(t=n._insideGroup.getBBox(),t.x=t.x+(n._insideGroup.settings.translateX||0),t.y=t.y+(n._insideGroup.settings.translateY||0),o=t.y+t.height/2,s.push({x:e,y:o}),n._background?e=t.x+t.width/2:f.cos<0?e=t.x+t.width:f.cos>0&&(e=t.x),s.push({x:e,y:o})):(o=i(n._centerY-(h+c.radialOffset+u)*f.sin),s.push({x:e,y:o}))),s},_rotateLabel:function(){var n=this,t=n._options,o=n._radiusOuter+t.radialOffset*2+u,s=r(n._middleAngle),f,e,i=n._insideGroup.getBBox();t.position==="inside"||t.position==="columns"?(f=i.x+i.width/2,e=i.y+i.height/2):(f=n._centerX+o*s.cos,e=n._centerY-o*s.sin),n._insideGroup.applySettings({x:f,y:e,rotate:t.rotationAngle})},_checkEllipsis:function(){var n=this,a,c=10,t,y,d=0,p=[],g=[],nt,h,w,f,v,e,l=r(n._options.rotationAngle),i=n._canvas,tt=n._options,b=r(n._middleAngle),k=n._centerX+(n._radiusOuter+u)*b.cos;if(n._text.tspans&&n.setLabelEllipsis){if(t=n._text.getBBox(),f=t.x+t.width<n._centerX?t.x+t.width:t.x,v=t.y+t.height/2,e=t.x+t.width<n._centerX?-t.width:t.width,v+e*l.sin>i.height-i.bottom+c||v+e*l.sin<i.top-c||f+e*l.cos<i.left-c||f+e*l.cos>i.width-i.right+c||tt.position==="columns"&&(b.cos<0&&k<f||b.cos>0&&k>f))for(a=0;a<n._text.tspans.length;a++)d+=n._text.tspans[a].element.getNumberOfChars(),(!n._text.tspans[a+1]||n._text.tspans[a+1].settings.dy>0)&&(p.push(d),g.push(a),d=0);while(v+e*l.sin>i.height-i.bottom+c||v+e*l.sin<i.top-c||f+e*l.cos<i.left-c||f+e*l.cos>i.width-i.right+c||tt.position==="columns"&&(b.cos<0&&k<f||b.cos>0&&k>f)){if(nt=o.apply(null,p),nt===0)break;w=s(nt,p),h=g[w],n._text.tspans[h].element.textContent==="..."?n._text.tspans[h].settings.dy>0||!n._text.tspans[h-1]?p[w]=0:n._text.tspans[h-1]&&(n._text.tspans[h].element.textContent="",g[w]-=1,n._text.tspans[h-1].element.textContent+="..."):(y=n._text.tspans[h].element.textContent,y=y.substr(0,y.length-4)+"...",n._text.tspans[h].element.textContent=y,p[w]-=1),t=n._text.getBBox(),f=t.x+t.width<n._centerX?t.x+t.width:t.x,v=t.y+t.height/2,e=t.x+t.width<n._centerX?-t.width:t.width}}},_checkPosition:function(){var u=this,f=u._insideGroup,n=f.getBBox(),t=u._canvas,i=0,r=0;n.y+n.height>t.height-t.bottom?r=t.height-n.y-n.height-t.bottom:n.y<t.top&&(r=t.top-n.y),n.x+n.width>t.width-t.right?i=t.width-t.right-n.x-n.width:n.x<t.left&&(i=t.left-n.x),f.applySettings({translateX:i,translateY:r})},setPosition:function(n){this._options.position=n},getPosition:function(){return this._options.position}})}(jQuery,DevExpress),function(n,t){var a=DevExpress.viz,l=a.core,f=l.series,r=n.extend,p=n.each,v=t.utils.isNumber,i=t.utils.isDefined,w=n.isEmptyObject,e=Math,u=e.round,y=e.floor,o=e.ceil,s=20,h=20,c="canvas_position_default";f.points.mixins=f.points.mixins||{},f.points.mixins.symbolPoint={deleteLabel:function(){this._label.dispose(),this._label=null},_hasGraphic:function(){return this.graphic},_clearTrackerVisibility:function(){this.trackerGraphic&&this.trackerGraphic.settings.visibility&&this.trackerGraphic.applySettings({visibility:null})},clearVisibility:function(){this.graphic&&this.graphic.settings.visibility&&this.graphic.applySettings({visibility:null}),this._clearTrackerVisibility(),this._label.clearVisibility()},isVisible:function(){return this.inVisibleArea&&this.series.isVisible()},_setTrackerInvisibility:function(){this.trackerGraphic&&this.trackerGraphic.settings.visibility!=="hidden"&&this.trackerGraphic.applySettings({visibility:"hidden"})},setInvisibility:function(){this.graphic&&this.graphic.settings.visibility!=="hidden"&&this.graphic.applySettings({visibility:"hidden"}),this._setTrackerInvisibility(),this._label.hide()},clearMarker:function(){this.graphic&&this.graphic.applySettings(this._emptySettings)},setAdjustSeriesLabels:function(n){this._label.adjustSeriesLabels=n},_getLabelOptions:function(n){var t=this._options;return{options:t.label,rotated:t.rotated,type:n,isFullStacked:t.series.isFullStackedSeries(),isRange:t.type.indexOf("range")!==-1}},_createLabel:function(){this._label=l.CoreFactory.createLabel(this._options.type)},_updateLabelData:function(){this._label.updateData({formatObject:this._getLabelFormatObject(),initialValue:this.initialValue})},_updateLabelOptions:function(n){this._label||this._createLabel(),this._label.setOptions(this._getLabelOptions(n))},_checkImage:function(n){return i(n)&&(typeof n=="string"||i(n.url))},_fillStyle:function(){this._styles=this._options.styles},_checkSymbol:function(n,t){var i=n.symbol,r=t.symbol,u=i==="circle"&&r!=="circle"||i!=="circle"&&r==="circle",f=this._checkImage(n.image)!==this._checkImage(t.image);return u||f?!0:!1},_getSquareMarkerCoords:function(n){return[{x:-n,y:-n},{x:n,y:-n},{x:n,y:n},{x:-n,y:n},{x:-n,y:-n}]},_getPolygonMarkerCoords:function(n){var t=o(n);return[{x:-t,y:0},{x:0,y:-t},{x:t,y:0},{x:0,y:t},{x:-t,y:0}]},_getTriangleMarkerCoords:function(n){return[{x:-n,y:-n},{x:n,y:-n},{x:0,y:n},{x:-n,y:-n}]},_getCrossMarkerCoords:function(n){var t=o(n),i=y(t/2),r=o(t/2);return[{x:-t,y:-i},{x:-i,y:-t},{x:0,y:-r},{x:i,y:-t},{x:t,y:-i},{x:r,y:0},{x:t,y:i},{x:i,y:t},{x:0,y:r},{x:-i,y:t},{x:-t,y:i},{x:-r,y:0}]},_populatePointShape:function(n,t){switch(n){case"square":return this._getSquareMarkerCoords(t);case"polygon":return this._getPolygonMarkerCoords(t);case"triangle":return this._getTriangleMarkerCoords(t);case"cross":return this._getCrossMarkerCoords(t)}},correctValue:function(n){this.hasValue()&&(this.value=this.initialValue+n,this.minValue=n,this.translate())},resetCorrection:function(){this.value=this.initialValue,this.minValue=c},_getTranslates:function(n){var t,i;return t=this.x,i=this.y,n&&(this._options.rotated?t=this.defaultX:i=this.defaultY),{x:t,y:i}},_createImageMarker:function(n,t,i){var e,r,f,c,o={location:"center",translateX:t.attr.translateX,translateY:t.attr.translateY,visibility:t.attr.visibility};return e=i.url?i.url.toString():i.toString(),r=i.width||s,f=i.height||h,n.createImage(-u(r*.5),-u(f*.5),r,f,e,o)},_createSymbolMarker:function(n,t){var r,u=this._options;switch(u.symbol){case"circle":r=n.createCircle(0,0,t.r,t.attr);break;case"square":case"polygon":case"triangle":case"cross":r=n.createArea(t.points,t.attr)}return r},_createMarker:function(n,t,i,r,u){var f=this._checkImage(i)?this._createImageMarker(n,r,i):this._createSymbolMarker(n,r,u);return f&&f.append(t),f},_getSymbolBbox:function(n,t,i){var r={};return r.x=n-i,r.y=t-i,r.width=r.height=i*2,r},_getImageBbox:function(n,t){var i={},r=this._options.image,f=r.width||s,e=r.height||h;return i.x=n-u(f/2),i.y=t-u(e/2),i.width=f,i.height=e,i},_getGraphicBbox:function(){var n=this._options,t=this.x,i=this.y,r;return r=n.visible?this._checkImage(n.image)?this._getImageBbox(t,i):this._getSymbolBbox(t,i,n.styles.normal.r):{x:t,y:i,width:0,height:0}},_drawLabel:function(n,t){var i=this,u=i._getCustomLabelVisibility(),f,r=i.translators;(i._options.series.getLabelVisibility()||u)&&i.hasValue()?(r&&(f={minX:r.x.getCanvasVisibleArea().min,maxX:r.x.getCanvasVisibleArea().max,minY:r.y.getCanvasVisibleArea().min,maxY:r.y.getCanvasVisibleArea().max}),i._label.setCoords({x:i.x,y:i.y},i._getGraphicBbox(),i._getLabelPosition(),f),i._label.draw(n,t,u)):i._label.hide()},_drawMarker:function(n,t,i){var u=this,e=u._options,o=u._getTranslates(i),s,f=u._getStyle(),h=r({translateX:o.x,translateY:o.y},f),c={attr:h,points:u._populatePointShape(e.symbol,f.r),r:f.r};s=u._createMarker(n,t,e.image,c,i),u.graphic=s},_drawTrackerMarker:function(n,t){var i=this._options.trackerR||this.storeTrackerR();this.trackerGraphic=n.createCircle(this.x,this.y,i).append(t),this.trackerGraphic.data({point:this})},getTooltipCoords:function(){var n;return n=this.graphic?{x:this.x,y:this.y,offset:this.graphic.getBBox().height/2}:{x:this.x,y:this.y,offset:0}},hasValue:function(){return this.value!==null&&this.minValue!==null},setPercentValue:function(n){var i=this.value/n||0,r=i,t=this.minValue/n||0;r-=v(this.minValue)?t:0,this._label.setDataField("percent",r),this._label.setDataField("total",n),this._options.series.isFullStackedSeries()&&this.hasValue()&&(this.value=i,this.minValue=t?t:this.minValue,this.translate())},storeTrackerR:function(){var n=window.navigator,i=this._options.styles.normal.r,t;return t="ontouchstart"in window||n.msPointerEnabled&&n.msMaxTouchPoints||n.pointerEnabled&&n.maxTouchPoints?20:6,this._options.trackerR=i<t?t:i},_translate:function(n){var t=this,i=t._options.rotated?"x":"y",u=i.toUpperCase(),r=n[i],f=t._options.rotated?"y":"x";t[i]=r.translate(t.value),t[f]=n[f].translate(t.argument),t["min"+u]=r.translate(t.minValue),t["default"+u]=r.translate(c),t._calculateVisibility(t.x,t.y),t._prepareStatesOptions()},_changeData:function(n){this.value=this.initialValue=this.originalValue=n.value,this.argument=this.initialArgument=this.originalArgument=n.argument,this.minValue=this.initialMinValue=this.originalMinValue=i(n.minValue)?n.minValue:c,this.tag=n.tag,this.index=n.index},_updateData:function(n){(this.argument!==n.argument||this.value!==n.value||this.tag!==n.tag)&&this._changeData(n)},_getImageSettings:function(n){return{href:n.url||n.toString(),width:n.width||s,height:n.height||h}},_updateMarker:function(n,t){var i=this,f=i._options,t=t||this._getStyle(),u,e=f.image;u=i._checkImage(e)?r({},{visibility:t.visibility},i._getImageSettings(e)):r({},t,{points:i._populatePointShape(f.symbol,t.r)}),n||(u.translateX=i.x,u.translateY=i.y),i.graphic.applySettings(u)},_updateTracker:function(){this.trackerGraphic.applySettings({cx:this.x,cy:this.y,r:this.storeTrackerR()})},_getLabelFormatObject:function(){return{argument:this.initialArgument,value:this.initialValue,originalArgument:this.originalArgument,originalValue:this.originalValue,seriesName:this._options.series.name,point:this}},_getLabelPosition:function(){return this._options.series.isFullStackedSeries()||this.initialValue>0?"top":"bottom"},_getFormatObject:function(n){var t=this._label.getData(),u={argumentText:n.formatValue(this.initialArgument,"argument"),valueText:n.formatValue(this.initialValue)},f=i(t.percent)?{percentText:n.formatValue(t.percent,"percent")}:{},e=i(t.total)?{totalText:n.formatValue(t.total)}:{};return r({},t,u,f,e)}}}(jQuery,DevExpress),function(n){var h=DevExpress.viz,u=h.core.series.points.mixins,f=n.extend,r=Math,c=r.round,e=r.abs,i=r.min,l="canvas_position_default",o=9,s=4;u.barPoint=f({},u.symbolPoint,{correctCoordinates:function(n){var i=n.offset-c(n.width/2),t=this._options.rotated,r=t?"height":"width",u=(t?"y":"x")+"Correction";this[r]=n.width,this[u]=i},_getGraphicBbox:function(){var n={};return n.x=this.x,n.y=this.y,n.width=this.width,n.height=this.height,n},_getLabelPosition:function(){var t,i=this.translators.x.getBusinessRange().invert,r=this.translators.y.getBusinessRange().invert,n=this.series.valueAxisType==="discrete",u=this.series.isFullStackedSeries(),f=!n&&(this.initialValue>=0&&!r||this.initialValue<0&&r)||n&&!r||u,e=!n&&(this.initialValue>=0&&!i||this.initialValue<0&&i)||n&&!i||u;return t=this._options.rotated?e?"top":"bottom":f?"top":"bottom"},_drawLabel:function(n,t){var i=this,u=i._options,f,s=u.series.getLabelVisibility(),e=i._getCustomLabelVisibility(),o,r=i.translators;i.hasValue()&&(u.label.showForZeroValues||i.initialValue)&&(e||s)?(f={x:i.x,y:i.y,defaultX:i.defaultX,defaultY:i.defaultY},r&&(o={minX:r.x.getCanvasVisibleArea().min,maxX:r.x.getCanvasVisibleArea().max,minY:r.y.getCanvasVisibleArea().min,maxY:r.y.getCanvasVisibleArea().max}),i._label.setCoords(f,i._getGraphicBbox(),i._getLabelPosition(),o),i._label.draw(n,t,e)):i._label.hide()},_drawMarker:function(n,t,i){var o=this._getStyle(),r=this.x,u=this.y,f=this.width,e=this.height;i&&(this._options.rotated?(f=0,r=this.defaultX):(e=0,u=this.defaultY)),this.graphic=n.createRect(r,u,f,e,this._options.cornerRadius,o).append(t)},_getSettingsForTracker:function(){var n=this,r=n.y,t=n.height,u=n.x,i=n.width;return n._options.rotated?i===1&&(i=o,u-=s):t===1&&(t=o,r-=s),{x:u,y:r,width:i,height:t}},_drawTrackerMarker:function(n,t){var i=this._getSettingsForTracker();this.trackerGraphic=n.createRect(i.x,i.y,i.width,i.height,this._options.cornerRadius).append(t),this.trackerGraphic.data({point:this})},getGraphicSettings:function(){return{x:this.graphic.settings.x||0,y:this.graphic.settings.y||0,height:this.graphic.settings.height||0,width:this.graphic.settings.width||0}},getTooltipCoords:function(){var n=this.x+this.width/2,t=this.y+this.height/2;return{x:n,y:t,offset:0}},_truncateCoord:function(n,t,i){return n<t?t:n>i?i:n},_translate:function(n){var t=this,o=t._options.rotated,s=o?"x":"y",r=o?"y":"x",w=o?"width":"height",c=o?"height":"width",b=n[r],a=n[s],h=b.getCanvasVisibleArea(),v=a.getCanvasVisibleArea(),y,p,f,u;y=p=b.translate(t.argument)+(t[r+"Correction"]||0),f=a.translate(t.value),u=a.translate(t.minValue),t[w]=e(f-u),t._calculateVisibility(o?i(f,u):i(y,p),o?i(y,p):i(f,u),t.width,t.height),f=t._truncateCoord(f,v.min,v.max),u=t._truncateCoord(u,v.min,v.max),t[r]=y,t["min"+r.toUpperCase()]=p,t[w]=e(f-u),t[s]=i(f,u)+(t[s+"Correction"]||0),t["min"+s.toUpperCase()]=u+(t[s+"Correction"]||0),t["default"+s.toUpperCase()]=a.translate(l),t.inVisibleArea&&(t[r]<h.min&&(t[c]=t[c]-(h.min-t[r]),t[r]=h.min,t["min"+r.toUpperCase()]=h.min),t[r]+t[c]>h.max&&(t[c]=h.max-t[r]))},_updateMarker:function(n,t){var t=t||this._getStyle(),i=f({},t);n?i.sharpEdges=!1:(i.x=this.x,i.y=this.y,i.width=this.width,i.height=this.height),this.graphic.applySettings(i)},_updateTracker:function(){this.trackerGraphic.applySettings(this._getSettingsForTracker())}})}(jQuery,DevExpress),function(n,t){var u=t.viz,i=u.core.series.points.mixins,r=n.extend,f=20;i.bubblePoint=r({},i.symbolPoint,{correctCoordinates:function(n){this.bubbleSize=n/2},_drawMarker:function(n,t,i){var u=this._getStyle(),f=r({translateX:this.x,translateY:this.y},u),e=n.createCircle(0,0,i?0:this.bubbleSize,f).append(t);this.graphic=e},_drawTrackerMarker:function(n,t){this.trackerGraphic=n.createCircle(this.x,this.y,this.bubbleSize).append(t),this.trackerGraphic.data({point:this})},getTooltipCoords:function(){if(this.graphic){var n=this.graphic.getBBox().height;return{x:this.x,y:this.y,offset:n<f?n/2:0}}},_getLabelFormatObject:function(){var t=i.symbolPoint,n=t._getLabelFormatObject.call(this);return n.size=this.initialSize,n},_updateData:function(n){var t=i.symbolPoint;(this.argument!==n.argument||this.value!==n.value||this.size!==n.size||this.tag!==n.tag)&&(t._changeData.call(this,n),this.size=this.initialSize=n.size)},_getGraphicBbox:function(){return this._getSymbolBbox(this.x,this.y,this.bubbleSize)},_updateMarker:function(t,i){var i=i||this._getStyle();t||(i=n.extend({r:this.bubbleSize,translateX:this.x,translateY:this.y},i)),this.graphic.applySettings(i)},_updateTracker:function(){this.trackerGraphic.applySettings({cx:this.x,cy:this.y,r:this.bubbleSize})},_getFormatObject:function(n){var r=i.symbolPoint,t=r._getFormatObject.call(this,n);return t.sizeText=n.formatValue(this.initialSize),t}})}(jQuery,DevExpress),function(n,t){var e=DevExpress.viz,i=e.core.series.points.mixins,r=n.extend,u=Math.round,f=t.utils.getCosAndSin;i.piePoint=r({},i.symbolPoint,{_populatePointShape:function(n,t){var i=f(point.middleAngle);n.x=point.centerX-~~(t*i.cos),n.y=point.centerY+~~(t*i.sin),n.outerRadius=this.radiusOuter+t,n.innerRadius=this.radiusInner,n.startAngle=this.toAngle,n.endAngle=this.fromAngle},_changeData:function(n){var t=this;t.value=t.initialValue=t.originalValue=n.value,t.argument=t.initialArgument=t.originalArgument=n.argument,t.minValue=t.initialMinValue=t.originalMinValue=DevExpress.utils.isDefined(n.minValue)?n.minValue:0,t.tag=n.tag,t._visible=!0,t.index=n.index},animate:function(n,t,i){this.graphic.animate({x:this.centerX,y:this.centerY,outerRadius:this.radiusOuter,innerRadius:this.radiusInner,startAngle:this.toAngle,endAngle:this.fromAngle},{partitionDuration:t,step:i},n)},correctPosition:function(n){this.radiusInner=n.radiusInner,this.radiusOuter=n.radiusOuter,this.centerX=n.centerX,this.centerY=n.centerY},correctValue:function(n,t,i){this.value=(i||this.initialValue)+n,this.minValue=n,this.percent=t,this._label.setDataField("percent",t)},_getLabelOptions:function(){var t=this._options,i=t.series,n=this._options.styles.normal,r=i._options.containerBackgroundColor===n.stroke?u(n.strokeWidth/2):u(-n.strokeWidth/2);return{options:t.label,borderWidth:r}},_updateLabelData:function(){this._label.updateData({formatObject:this._getLabelFormatObject()})},_updateLabelOptions:function(){this._label||this._createLabel(),this._label.setOptions(this._getLabelOptions())},_drawLabel:function(n,t){var r=this._options.series.getLabelVisibility(),i=this._getCustomLabelVisibility();(r||i)&&this.hasValue()?(this._label.setCoords({middleAngle:this.middleAngle,radiusOuter:this.radiusOuter,centerX:this.centerX,centerY:this.centerY},this._options.series.canvas),this._label.draw(n,t,i)):this._label.hide()},_drawMarker:function(n,t,i,r){var s=this._getStyle(),u=this.radiusOuter,f=this.radiusInner,e=this.fromAngle,o=this.toAngle;i&&(f=u=0,r||(e=o=this.shiftedAngle)),this.graphic=n.createArc(this.centerX,this.centerY,u,f,o,e,s).append(t)},_drawTrackerMarker:function(n,t){this.trackerGraphic=n.createArc(this.centerX,this.centerY,this.radiusOuter,this.radiusInner,this.toAngle,this.fromAngle).append(t),this.trackerGraphic.data({point:this})},getTooltipCoords:function(){var n=f(this.middleAngle);return{x:this.centerX+(this.radiusInner+(this.radiusOuter-this.radiusInner)/2)*n.cos,y:this.centerY-(this.radiusInner+(this.radiusOuter-this.radiusInner)/2)*n.sin,offset:0}},_translate:function(n){var t=this.shiftedAngle||0;this.fromAngle=n.translate(this.minValue)+t,this.toAngle=n.translate(this.value)+t,this.middleAngle=n.translate((this.value-this.minValue)/2+this.minValue)+t,this.isVisible()||(this.middleAngle=this.toAngle=this.fromAngle=this.fromAngle||t)},_updateMarker:function(n,t){t=t||this._getStyle(),n||(t=r({x:this.centerX,y:this.centerY,outerRadius:this.radiusOuter,innerRadius:this.radiusInner,startAngle:this.toAngle,endAngle:this.fromAngle},t)),this.graphic.applySettings(t)},_updateTracker:function(){this.trackerGraphic.applySettings({x:this.centerX,y:this.centerY,outerRadius:this.radiusOuter,innerRadius:this.radiusInner,startAngle:this.toAngle,endAngle:this.fromAngle})},getLegendStyles:function(){return this._styles.legendStyles},isInVisibleArea:function(){return!0},hide:function(){this._visible&&(this._visible=!1,this.hideTooltip(),this._options.visibilityChanged(this))},show:function(){this._visible||(this._visible=!0,this._options.visibilityChanged(this))},setInvisibility:function(){this._setTrackerInvisibility(),this._label.hide()},isVisible:function(){return this._visible},_getFormatObject:function(n){var r=i.symbolPoint,t=r._getFormatObject.call(this,n);return t.percent=this.percent,t.percentText=n.formatValue(this.percent,"percent"),t},getColor:function(){return this._styles.normal.fill}})}(jQuery,DevExpress),function(n,t){var e=DevExpress.viz,o=e.core.series.points.mixins,u=n.extend,h=t.utils.isDefined,f=Math,s=f.abs,i=f.min,r=f.max,c=f.round,l=20,a=20;o.rangeSymbolPoint=u({},o.symbolPoint,{deleteLabel:function(){this._topLabel.dispose(),this._topLabel=null,this._bottomLabel.dispose(),this._bottomLabel=null},hideMarker:function(n){var t=this.graphic&&this.graphic[n+"Marker"],i=this["_"+n+"Label"];t&&t.settings.visibility!=="hidden"&&t.applySettings({visibility:"hidden"}),i.hide()},setInvisibility:function(){this.hideMarker("top"),this.hideMarker("bottom"),this._setTrackerInvisibility()},clearVisibility:function(){var n=this.graphic;n&&(n.topMarker&&n.topMarker.settings.visibility&&n.topMarker.applySettings({visibility:null}),n.bottomMarker&&n.bottomMarker.settings.visibility&&n.bottomMarker.applySettings({visibility:null})),this._clearTrackerVisibility(),this._topLabel.clearVisibility(),this._bottomLabel.clearVisibility()},clearMarker:function(){this.graphic&&(this.graphic.topMarker&&this.graphic.topMarker.applySettings(this._emptySettings),this.graphic.bottomMarker&&this.graphic.bottomMarker.applySettings(this._emptySettings))},_getLabelPosition:function(n){var i,t=this._options.rotated,r=this.translators.y.getBusinessRange().invert,u=this.translators.x.getBusinessRange().invert,f=this._options.series._options.valueAxisType==="discrete",e=f&&(!r&&!t||u&&t)||!f&&this.value>this.minValue&&(!r&&!t||!u&&t);return i=n==="top"?e?"top":"bottom":e?"bottom":"top"},_getLabelMinFormatObject:function(){return{index:0,argument:this.initialArgument,value:this.initialMinValue,seriesName:this._options.series.name,originalValue:this.originalMinValue,originalArgument:this.originalArgument,point:this}},_updateLabelData:function(){var n=this._getLabelFormatObject();n.index=1,this._topLabel.updateData({formatObject:n,initialValue:this.initialValue}),this._bottomLabel.updateData({formatObject:this._getLabelMinFormatObject(),initialValue:this.initialMinValue})},_updateLabelOptions:function(n){var t=this._getLabelOptions(n);this._topLabel&&this._bottomLabel||this._createLabel(),this._topLabel.setOptions(t),this._bottomLabel.setOptions(t)},setAdjustSeriesLabels:function(n){this._topLabel.adjustSeriesLabels=n,this._bottomLabel.adjustSeriesLabels=n},_createLabel:function(){this._topLabel=e.core.CoreFactory.createLabel(),this._bottomLabel=e.core.CoreFactory.createLabel()},_getLabelCoords:function(n){var t={},u=n==="top";return this._options.rotated?(t.x=u?r(this.x,this.minX):i(this.x,this.minX),t.y=this.y):(t.x=this.x,t.y=u?i(this.y,this.minY):r(this.y,this.minY)),t},_getGraphicBbox:function(n){var f=this._options,h=f.rotated,e=n==="top",s=this._getImage(f.image),c=e?this._checkImage(s.top):this._checkImage(s.bottom),o,t,u;return h?(t=e?r(this.x,this.minX):i(this.x,this.minX),u=this.y):(t=this.x,u=e?i(this.y,this.minY):r(this.y,this.minY)),o=f.visible?c?this._getImageBbox(t,u):this._getSymbolBbox(t,u,f.styles.normal.r):{x:t,y:u,width:0,height:0}},_checkOverlay:function(n,t,i){return n<t+i},_getOverlayCorrections:function(n,t,i){var s=n==="vertical",u=s?"y":"x",o=s?"height":"width",h=this.translators[u].getCanvasVisibleArea(),l=h.min,a=h.max,r=c((t[u]+t[o]-i[u])/2),f=t[u]-r,e=i[u]+r;return f<l?(r=l-t[u],f+=r,e+=r):e+i[o]>a&&(r=-(i[u]+i[o]-a),f+=r,e+=r),{coord1:f,coord2:e}},_checkLabelsOverlay:function(n){var i=this,r=i._topLabel.getCoords(),u=i._bottomLabel.getCoords(),t={};i._options.rotated?n==="top"?this._checkOverlay(r.x,u.x,u.width)&&(t=this._getOverlayCorrections("horizontal",u,r),i._topLabel.updatePosition(t.coord2),i._bottomLabel.updatePosition(t.coord1)):this._checkOverlay(u.x,r.x,r.width)&&(t=this._getOverlayCorrections("horizontal",r,u),i._topLabel.updatePosition(t.coord1),i._bottomLabel.updatePosition(t.coord2)):n==="top"?this._checkOverlay(u.y,r.y,r.height)&&(t=this._getOverlayCorrections("vertical",r,u),i._topLabel.updatePosition(undefined,t.coord1),i._bottomLabel.updatePosition(undefined,t.coord2)):this._checkOverlay(r.y,u.y,u.height)&&(t=this._getOverlayCorrections("vertical",u,r),i._topLabel.updatePosition(undefined,t.coord2),i._bottomLabel.updatePosition(undefined,t.coord1))},_drawLabel:function(n,t){var l,a,v=this._options.rotated,i=this._getLabelPosition("top"),u=this._getLabelPosition("bottom"),o=this._options.label.position==="inside",s=o?u:i,h=o?i:u,r=this.translators,f,e=this._getCustomLabelVisibility(),c=this._options.series.getLabelVisibility();(c||e)&&this.hasValue()?(r&&(f={minX:r.x.getCanvasVisibleArea().min,maxX:r.x.getCanvasVisibleArea().max,minY:r.y.getCanvasVisibleArea().min,maxY:r.y.getCanvasVisibleArea().max}),this._topLabel.setCoords(this._getLabelCoords(i),this._getGraphicBbox(i),s,f),this._bottomLabel.setCoords(this._getLabelCoords(u),this._getGraphicBbox(u),h,f),this.visibleTopMarker&&this._topLabel.draw(n,t,e),this.visibleBottomMarker&&this._bottomLabel.draw(n,t,e),this._checkLabelsOverlay(i)):(this._topLabel.hide(),this._bottomLabel.hide())},_getImage:function(n){var t={};return h(n)&&(typeof n=="string"?t.top=t.bottom=n:(t.top={url:typeof n.url=="string"?n.url:n.url&&n.url.rangeMaxPoint,width:typeof n.width=="number"?n.width:n.width&&n.width.rangeMaxPoint,height:typeof n.height=="number"?n.height:n.height&&n.height.rangeMaxPoint},t.bottom={url:typeof n.url=="string"?n.url:n.url&&n.url.rangeMinPoint,width:typeof n.width=="number"?n.width:n.width&&n.width.rangeMinPoint,height:typeof n.height=="number"?n.height:n.height&&n.height.rangeMinPoint})),t},_checkSymbol:function(n,t){var i=n.symbol,r=t.symbol,e=i==="circle"&&r!=="circle"||i!=="circle"&&r==="circle",u=this._getImage(n.image),f=this._getImage(t.image),o=this._checkImage(u.top)!==this._checkImage(f.top),s=this._checkImage(u.bottom)!==this._checkImage(f.bottom);return e||o||s},_getSettingsForTwoMarkers:function(n){var t=this,r=t._options,f={},o=r.rotated?i(t.x,t.minX):t.x,s=r.rotated?t.y:i(t.y,t.minY),e=n.r,h=t._populatePointShape(r.symbol,e);return f.top={r:e,points:h,attr:u({translateX:o+t.width,translateY:s},n)},f.bottom={r:e,points:h,attr:u({translateX:o,translateY:s+t.height},n)},f},_hasGraphic:function(){return this.graphic&&this.graphic.topMarker&&this.graphic.bottomMarker},_drawOneMarker:function(n,t,i,r){this.graphic[t]?this._updateOneMarker(t,r):this.graphic[t]=this._createMarker(n,this.graphic,i,r)},_drawMarker:function(n,t,i,r){var u=this,r=r||u._getStyle(),f=u._getSettingsForTwoMarkers(r),e=u._getImage(u._options.image);u._checkImage(e.top)&&(f.top=u._getImageSettings(f.top,e.top)),u._checkImage(e.bottom)&&(f.bottom=u._getImageSettings(f.bottom,e.bottom)),u.graphic=u.graphic||n.createGroup().append(t),u.visibleTopMarker&&u._drawOneMarker(n,"topMarker",e.top,f.top),u.visibleBottomMarker&&u._drawOneMarker(n,"bottomMarker",e.bottom,f.bottom)},_getSettingsForTracker:function(n){var t=this,r=t._options,u=r.rotated?i(t.x,t.minX)-n:t.x-n,f=r.rotated?t.y-n:i(t.y,t.minY)-n,e=t.width+2*n,o=t.height+2*n;return{translateX:u,translateY:f,width:e,height:o}},_drawTrackerMarker:function(n,t){var i=this,u=i._options,f=u.trackerR||i.storeTrackerR(),r=i._getSettingsForTracker(f),e={translateX:r.translateX,translateY:r.translateY};i.trackerGraphic=n.createRect(0,0,r.width,r.height,0,e).append(t),i.trackerGraphic.data({point:i})},isInVisibleArea:function(){var n=this,f=i(n.minX,n.x)||n.x,e=r(n.minX,n.x)||n.x,o=r(n.minY,n.y)||n.y,s=i(n.minY,n.y)||n.y,a,v,y,p,h=!0,c=!0,l=!0,t,u;return n.translators&&(t=n.translators.x.getCanvasVisibleArea(),u=n.translators.y.getCanvasVisibleArea(),a=t.max<f&&t.max<e,v=t.min>f&&t.min>e,p=u.min>s&&u.min>o,y=u.max<s&&u.max<o,p||y||a||v?h=c=l=!1:n._options.rotated?(c=t.min<f&&t.max>f,h=t.min<e&&t.max>e):(h=u.min<s&&u.max>s,c=u.min<o&&u.max>o)),n.visibleTopMarker=h,n.visibleBottomMarker=c,n.visibleRangeArea=l,l},getTooltipCoords:function(){var n=this,o,s,r,u,t,f=n.translators.x.getCanvasVisibleArea(),e=n.translators.y.getCanvasVisibleArea();return n._options.rotated?(t=i(n.x,n.minX),s=n.y,r=f.min>t?f.min:t,u=f.max<t+n.width?f.max:t+n.width,o=r+(u-r)/2):(t=i(n.y,n.minY),o=n.x,r=e.min>t?e.min:t,u=e.max<t+n.height?e.max:t+n.height,s=r+(u-r)/2),{x:o,y:s,offset:0}},_translate:function(n){var t=o.symbolPoint;this.minX=this.minY=n.y.translate(this.minValue),t._translate.call(this,n),this.height=this._options.rotated?0:s(this.minY-this.y),this.width=this._options.rotated?s(this.x-this.minX):0},_updateData:function(n){(this.argument!==n.argument||this.value!==n.value||this.minValue!==n.minValue||this.tag!==n.tag)&&(this._changeData(n),this.minValue=this.initialMinValue=this.originalMinValue=n.minValue)},_getImageSettings:function(n,t){var i=n.attr.translateX,r=n.attr.translateY;return{href:t.url||t.toString(),width:t.width||l,height:t.height||a,attr:{translateX:i,translateY:r}}},_updateOneMarker:function(n,t){this.graphic&&this.graphic[n]&&this.graphic[n].applySettings(u({},t,t.attr))},_updateMarker:function(n,t){this._drawMarker(undefined,undefined,undefined,t)},_updateTracker:function(){var n=this.storeTrackerR(),t=this._getSettingsForTracker(n);this.trackerGraphic.applySettings(t)},_getFormatObject:function(n){var t=n.formatValue(this.initialMinValue),i=n.formatValue(this.initialValue);return{argument:this.initialArgument,argumentText:n.formatValue(this.initialArgument,"argument"),valueText:t+" - "+i,rangeValue1Text:t,rangeValue2Text:i,rangeValue1:this.initialMinValue,rangeValue2:this.initialValue,seriesName:this.series.name,point:this,originalMinValue:this.originalMinValue,originalValue:this.originalValue,originalArgument:this.originalArgument}}})}(jQuery,DevExpress),function(n,t){var u=DevExpress.viz,r=u.core.series.points.mixins,e=t.utils.isDefined,i=r.rangeSymbolPoint,f=n.extend;r.rangeBarPoint=f({},r.barPoint,{deleteLabel:i.deleteLabel,_getFormatObject:i._getFormatObject,setAdjustSeriesLabels:i.setAdjustSeriesLabels,clearVisibility:function(){this.graphic&&this.graphic.settings.visibility&&this.graphic.applySettings({visibility:null}),this._topLabel.clearVisibility(),this._bottomLabel.clearVisibility()},setInvisibility:function(){this.graphic&&this.graphic.settings.visibility!=="hidden"&&this.graphic.applySettings({visibility:"hidden"}),this._topLabel.hide(),this._bottomLabel.hide()},_translate:function(n){var t=r.barPoint;t._translate.call(this,n),this._options.rotated?this.width=this.width||1:this.height=this.height||1},_updateData:i._updateData,_getLabelPosition:i._getLabelPosition,_getLabelMinFormatObject:i._getLabelMinFormatObject,_updateLabelData:i._updateLabelData,_updateLabelOptions:i._updateLabelOptions,_createLabel:i._createLabel,_checkOverlay:i._checkOverlay,_getOverlayCorrections:i._getOverlayCorrections,_drawLabel:function(n,t){var l,a,v=this._options.rotated,e=this._getLabelPosition("top"),h=this._getLabelPosition("bottom"),o=this._getGraphicBbox(),s={x:this.x,y:this.y,defaultX:this.defaultX,defaultY:this.defaultY},r=this.translators,u,f=this._getCustomLabelVisibility(),c=this._options.series.getLabelVisibility();(f||c)&&this.hasValue()?(r&&(u={minX:r.x.getCanvasVisibleArea().min,maxX:r.x.getCanvasVisibleArea().max,minY:r.y.getCanvasVisibleArea().min,maxY:r.y.getCanvasVisibleArea().max}),this._topLabel.setCoords(s,o,e,u),this._bottomLabel.setCoords(s,o,h,u),this._topLabel.draw(n,t,f),this._bottomLabel.draw(n,t,f),i._checkLabelsOverlay.call(this,e)):(this._topLabel.hide(),this._bottomLabel.hide())}})}(jQuery,DevExpress),function(n){var l=DevExpress.viz,e=l.core.series.points.mixins,o=n.isNumeric,s=n.extend,r=Math,u=r.abs,i=r.min,h=r.max,c=r.round,f=2;e.candlestickPoint=s({},e.barPoint,{_getContinuousPoints:function(n,t){var u=this,i=u.x,r=u._options.rotated?function(n,t){return{x:t,y:n}}:function(n,t){return{x:n,y:t}},f=u.width,e=u[n],o=u[t],s;return s=e===o?[r(i,u.highY),r(i,u.lowY),r(i,u.closeY),r(i-f/2,u.closeY),r(i+f/2,u.closeY),r(i,u.closeY)]:[r(i,u.highY),r(i,o),r(i+f/2,o),r(i+f/2,e),r(i,e),r(i,u.lowY),r(i,e),r(i-f/2,e),r(i-f/2,o),r(i,o)]},_getCategoryPoints:function(n){var t=this,i=t.x,r=t._options.rotated?function(n,t){return{x:t,y:n}}:function(n,t){return{x:n,y:t}};return[r(i,t.highY),r(i,t.lowY),r(i,n),r(i-t.width/2,n),r(i+t.width/2,n),r(i,n)]},_getPoints:function(){var n=this,i,u,f,t=n.openValue,r=n.closeValue;return o(t)&&o(r)?(u=t>r?"closeY":"openY",f=t>r?"openY":"closeY",i=n._getContinuousPoints(u,f)):i=t===r?[{x:n.x,y:n.highY},{x:n.x,y:n.lowY}]:n._getCategoryPoints(o(t)?n.openY:n.closeY),i},getColor:function(){return this._isReduction?this._options.reduction.color:this._styles.normal.stroke||this.series.getColor()},_drawMarkerInGroup:function(n,t,i){this.graphic=i.createArea(this._getPoints(),t).append(n)},_fillStyle:function(){var n=this._options.styles;this._styles=this._isReduction&&this._isPositive?n.reductionPositive:this._isReduction?n.reduction:this._isPositive?n.positive:n},_getMinTrackerWidth:function(){return 1+2*this._styles.normal.strokeWidth},correctCoordinates:function(n){var t=this._getMinTrackerWidth(),i=10;this.width=n.width<t?t:n.width>i?i:n.width,this.xCorrection=n.offset},_getMarkerGroup:function(n){var t;return t=this._isReduction&&this._isPositive?n.reductionPositiveMarkersGroup:this._isReduction?n.reductionMarkersGroup:this._isPositive?n.defaultPositiveMarkersGroup:n.defaultMarkersGroup},_drawMarker:function(n,t){var i=this._getStyle(),u=this._options.rotated,r=this._getMarkerGroup(t);this._drawMarkerInGroup(r,i,n)},_getSettingsForTracker:function(){var n=this,t=n.highY,r=n.lowY,e=n._options.rotated,o,s,h,c;return t===r&&(t=e?t+f:t-f,r=e?r-f:r+f),e?(o=i(r,t),s=n.x-n.width/2,h=u(r-t),c=n.width):(o=n.x-n.width/2,s=i(r,t),h=n.width,c=u(r-t)),{x:o,y:s,width:h,height:c}},_drawTrackerMarker:function(n,t){var i=this._getSettingsForTracker();this.trackerGraphic=n.createRect(i.x,i.y,i.width,i.height,0).append(t),this.trackerGraphic.data({point:this})},_getGraphicBbox:function(){var n={},t=this._options.rotated;return n.x=t?this.lowY:this.x-c(this.width/2),n.y=t?this.x-c(this.width/2):this.highY,n.width=t?this.highY-this.lowY:this.width,n.height=t?this.width:this.lowY-this.highY,n},_drawLabel:function(n,t){var r,o=this._options.series.getLabelVisibility(),u=this._getCustomLabelVisibility(),f,e=this._options.reduction.color,i=this.translators;this.hasValue()&&(o||u)&&(f={minX:i.x.getCanvasVisibleArea().min,maxX:i.x.getCanvasVisibleArea().max,minY:i.y.getCanvasVisibleArea().min,maxY:i.y.getCanvasVisibleArea().max},this._isReduction&&this._label.updateOptions({options:{background:{fill:e},connector:{stroke:e}}}),r=this._options.rotated?{x:this.highY,y:this.x}:{x:this.x,y:this.highY},this._label.setCoords(r,this._getGraphicBbox(),"top",f),this._label.draw(n,t,u))},getTooltipCoords:function(){var n=this;if(n.graphic){var u,f,t,r,e=i(n.lowY,n.highY),o=h(n.lowY,n.highY),s=n.translators.x.getCanvasVisibleArea(),c=n.translators.y.getCanvasVisibleArea();return n._options.rotated?(t=h(s.min,e),r=i(s.max,o),f=n.x,u=t+(r-t)/2):(t=h(c.min,e),r=i(c.max,o),u=n.x,f=t+(r-t)/2),{x:u,y:f,offset:0}}},hasValue:function(){return this.highValue!==null&&this.lowValue!==null},_translate:function(){var t=this,r=t._options.rotated,o=r?t.translators.y:t.translators.x,f=r?t.translators.x:t.translators.y,e,s;t.x=o.translate(t.argument)+(t.xCorrection||0),t.openY=t.openValue!==null?f.translate(t.openValue):null,t.highY=f.translate(t.highValue),t.lowY=f.translate(t.lowValue),t.closeY=t.closeValue!==null?f.translate(t.closeValue):null,s=u(t.lowY-t.highY),e=i(t.lowY,t.highY)+u(t.lowY-t.highY)/2,t._calculateVisibility(r?e:t.x,r?t.x:e)},_updateData:function(n){var t=this;(t.argument!==n.argument||t.reductionValue!==n.reductionValue||t.highValue!==n.highValue||t.lowValue!==n.lowValue||t.openValue!==n.openValue||t.closeValue!==n.closeValue||t.tag!==n.tag)&&(t.value=t.initialValue=n.reductionValue,t.originalValue=n.value,t.argument=t.initialArgument=n.argument,t.originalArgument=n.argument,t.lowValue=n.lowValue,t.originalLowValue=n.lowValue,t.highValue=n.highValue,t.originalHighValue=n.highValue,t.openValue=n.openValue,t.originalOpenValue=n.openValue,t.closeValue=n.closeValue,t.originalCloseValue=n.closeValue,t.tag=n.tag,t.pointClassName=n.pointClassName,t._isPositive=n.openValue<n.closeValue,t._isReduction=n.isReduction)},_updateMarker:function(n,t,i){var t=t||this._getStyle();this.graphic.applySettings(s({points:this._getPoints()},t)),i&&this.graphic.append(this._getMarkerGroup(i))},_updateTracker:function(){this.trackerGraphic.applySettings(this._getSettingsForTracker())},_getLabelFormatObject:function(){return{openValue:this.openValue,highValue:this.highValue,lowValue:this.lowValue,closeValue:this.closeValue,reductionValue:this.initialValue,argument:this.initialArgument,value:this.initialValue,seriesName:this._options.series.name,originalOpenValue:this.originalOpenValue,originalCloseValue:this.originalCloseValue,originalLowValue:this.originalLowValue,originalHighValue:this.originalHighValue,originalArgument:this.originalArgument,point:this}},_getFormatObject:function(n){var r=n.formatValue(this.highValue),t=n.formatValue(this.openValue),i=n.formatValue(this.closeValue),u=n.formatValue(this.lowValue),f=e.symbolPoint,o=f._getFormatObject.call(this,n);return s({},o,{valueText:"h: "+r+(t!==""?" o: "+t:"")+(i!==""?" c: "+i:"")+" l: "+u,highValueText:r,openValueText:t,closeValueText:i,lowValueText:u})}})}(jQuery,DevExpress),function(n){var u=DevExpress.viz,i=u.core.series.points.mixins,f=n.extend,r=n.isNumeric;i.stockPoint=f({},i.candlestickPoint,{_getPoints:function(){var n=this,t=n._options.rotated?function(n,t){return{x:t,y:n}}:function(n,t){return{x:n,y:t}},u=r(n.openY),f=r(n.closeY),i=n.x,e=n.width;return[t(i,n.highY),u&&t(i,n.openY),u&&t(i-e/2,n.openY),u&&t(i,n.openY),f&&t(i,n.closeY),f&&t(i+e/2,n.closeY),f&&t(i,n.closeY),t(i,n.lowY)]},_drawMarkerInGroup:function(n,t,i){this.graphic=i.createPath(this._getPoints(),t).append(n)},_getMinTrackerWidth:function(){return 2+this._styles.normal.strokeWidth}})}(jQuery,DevExpress),function(n,t,i){t.viz.themes=t.viz.themes||[];var r="'Segoe UI', 'Helvetica Neue', 'Trebuchet MS', Verdana",e="'Segoe UI Light', 'Helvetica Neue Light', 'Segoe UI', 'Helvetica Neue', 'Trebuchet MS', Verdana",u={containerBackgroundColor:"#ffffff",animation:{enabled:!0,duration:1e3,easing:"easeOutCubic",maxPointCountSupported:300},commonSeriesSettings:{border:{visible:!1,width:2},showInLegend:!0,visible:!0,hoverMode:"excludePoints",selectionMode:"includePoints",hoverStyle:{hatching:{direction:"right",width:2,step:6,opacity:.75},border:{visible:!1,width:3}},selectionStyle:{hatching:{direction:"right",width:2,step:6,opacity:.5},border:{visible:!1,width:3}},label:{visible:!1,alignment:"center",rotationAngle:0,horizontalOffset:0,verticalOffset:0,radialOffset:0,format:"",argumentFormat:"",precision:0,argumentPrecision:0,percentPrecision:0,showForZeroValues:!0,customizeText:i,maxLabelCount:i,position:"outside",font:{color:"#ffffff"},border:{visible:!1,width:1,color:"#d3d3d3",dashStyle:"solid"},connector:{visible:!1,width:1}}},redrawOnResize:!0,margin:{left:0,top:0,right:0,bottom:0},seriesSelectionMode:"single",pointSelectionMode:"single",legend:{hoverMode:"includePoints",verticalAlignment:"top",horizontalAlignment:"right",position:"outside",visible:!0,customizeText:i,itemTextPosition:i,margin:10,equalColumnWidth:!1,markerSize:12,backgroundColor:i,backgroundOpacity:i,border:{visible:!1,width:1,color:"#d3d3d3",cornerRadius:0,dashStyle:"solid"},paddingLeftRight:20,paddingTopBottom:15,columnCount:0,rowCount:0,columnItemSpacing:20,rowItemSpacing:8},tooltip:{enabled:!1,border:{width:1,color:"#d3d3d3",dashStyle:"solid",visible:!0},font:{family:r,weight:400,size:12,color:"#232323"},color:"#ffffff",arrowLength:10,paddingLeftRight:18,paddingTopBottom:15,shared:!1,format:"",argumentFormat:"",precision:0,argumentPrecision:0,percentPrecision:0,customizeText:i,customizeTooltip:i,shadow:{opacity:.4,offsetX:0,offsetY:4,blur:2,color:"#000000"}},size:{width:i,height:i},loadingIndicator:{font:{},backgroundColor:"#ffffff",text:"Loading..."},dataPrepareSettings:{checkTypeForAllData:!1,convertToAxisDataType:!0,sortingMethod:!0},title:{font:{family:e,weight:200,color:"#232323",size:28},margin:10},adaptiveLayout:{width:80,height:80,keepLabels:!0},_rtl:{legend:{itemTextPosition:"left"}}},f={containerBackgroundColor:"#2b2b2b",commonSeriesSettings:{label:{border:{color:"#494949"}}},legend:{border:{color:"#494949"}},loadingIndicator:{backgroundColor:"#2b2b2b"},title:{font:{color:"#929292"}},tooltip:{color:"#2b2b2b",border:{color:"#494949"},font:{color:"#929292"}}};t.viz.themes.push({name:"desktop",font:{color:"#767676",family:r,weight:400,size:12,cursor:"default"},chart:n.extend(!0,{},u,{commonSeriesSettings:{type:"line",stack:"default",point:{visible:!0,symbol:"circle",size:12,border:{visible:!1,width:1},hoverMode:"onlyPoint",selectionMode:"onlyPoint",hoverStyle:{border:{visible:!0,width:4},size:12},selectionStyle:{border:{visible:!0,width:4},size:12}},scatter:{},line:{width:2,dashStyle:"solid",hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3}},stackedline:{width:2,dashStyle:"solid",hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3}},fullstackedline:{width:2,dashStyle:"solid",hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3}},stepline:{width:2,dashStyle:"solid",hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3}},area:{point:{visible:!1},opacity:.5},stackedarea:{point:{visible:!1},opacity:.5},fullstackedarea:{point:{visible:!1},opacity:.5},steparea:{border:{visible:!0,width:2},point:{visible:!1},hoverStyle:{border:{visible:!0,width:3}},selectionStyle:{border:{visible:!0,width:3}},opacity:.5},spline:{width:2,hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3}},splinearea:{point:{visible:!1},opacity:.5},bar:{cornerRadius:0,point:{hoverStyle:{border:{visible:!1}},selectionStyle:{border:{visible:!1}}}},stackedbar:{cornerRadius:0,point:{hoverStyle:{border:{visible:!1}},selectionStyle:{border:{visible:!1}}},label:{position:"inside"}},fullstackedbar:{cornerRadius:0,point:{hoverStyle:{border:{visible:!1}},selectionStyle:{border:{visible:!1}}},label:{position:"inside"}},rangebar:{cornerRadius:0,point:{hoverStyle:{border:{visible:!1}},selectionStyle:{border:{visible:!1}}}},rangearea:{point:{visible:!1},opacity:.5},rangesplinearea:{point:{visible:!1},opacity:.5},bubble:{opacity:.5,point:{hoverStyle:{border:{visible:!1}},selectionStyle:{border:{visible:!1}}}},candlestick:{width:1,innerColor:"#ffffff",reduction:{color:"#ff0000"},hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3},point:{border:{visible:!0}}},stock:{width:1,reduction:{color:"#ff0000"},hoverStyle:{width:3,hatching:{direction:"none"}},selectionStyle:{width:3},point:{border:{visible:!0}}}},crosshair:{enabled:!1,color:"#c6c6c6",width:1,dashStyle:"solid",verticalLine:{visible:!0},horizontalLine:{visible:!0}},commonAxisSettings:{tickInterval:i,setTicksAtUnitBeginning:!0,valueMarginsEnabled:!0,placeholderSize:null,logarithmBase:10,discreteAxisDivisionMode:"betweenLabels",visible:!1,color:"#d3d3d3",width:1,multipleAxesSpacing:5,label:{visible:!0,overlappingBehavior:{mode:"auto",rotationAngle:90,staggeringSpacing:5},precision:0,format:"",customizeText:i,indentFromAxis:10},grid:{visible:!1,color:"#d3d3d3",width:1},tick:{visible:!1,color:"#d3d3d3"},title:{font:{size:16},margin:10},stripStyle:{paddingLeftRight:10,paddingTopBottom:5},constantLineStyle:{paddingLeftRight:10,paddingTopBottom:10,width:1,color:"#000000",dashStyle:"solid",label:{visible:!0,position:"inside"}}},horizontalAxis:{isHorizontal:!0,position:"bottom",axisDivisionFactor:50,label:{alignment:"center"},stripStyle:{label:{horizontalAlignment:"center",verticalAlignment:"top"}},constantLineStyle:{label:{horizontalAlignment:"right",verticalAlignment:"top"}},constantLines:{}},verticalAxis:{isHorizontal:!1,position:"left",axisDivisionFactor:30,label:{alignment:"right",overlappingBehavior:{mode:"enlargeTickInterval"}},stripStyle:{label:{horizontalAlignment:"left",verticalAlignment:"center"}},constantLineStyle:{label:{horizontalAlignment:"left",verticalAlignment:"top"}},constantLines:{}},argumentAxis:{},valueAxis:{grid:{visible:!0}},commonPaneSettings:{backgroundColor:"none",border:{color:"#d3d3d3",width:1,visible:!1,top:!0,bottom:!0,left:!0,right:!0,dashStyle:"solid"}},useAggregation:!1,adjustOnZoom:!0,rotated:!1,synchronizeMultiAxes:!0,equalBarWidth:!0,minBubbleSize:12,maxBubbleSize:.2}),pie:n.extend(!0,{},u,{commonSeriesSettings:{type:"pie",pie:{border:{visible:!1,width:2,color:"#ffffff"},hoverStyle:{hatching:{direction:"right",width:4,step:10,opacity:.75},border:{visible:!1,width:2}},selectionStyle:{hatching:{direction:"right",width:4,step:10,opacity:.5},border:{visible:!1,width:2}}},doughnut:{innerRadius:.5,border:{visible:!1,width:2,color:"#ffffff"},hoverStyle:{hatching:{direction:"right",width:4,step:10,opacity:.75},border:{visible:!1,width:2}},selectionStyle:{hatching:{direction:"right",width:4,step:10,opacity:.5},border:{visible:!1,width:2}}},donut:{innerRadius:.5,border:{visible:!1,width:2,color:"#ffffff"},hoverStyle:{hatching:{direction:"right",width:4,step:10,opacity:.75},border:{visible:!1,width:2}},selectionStyle:{hatching:{direction:"right",width:4,step:10,opacity:.5},border:{visible:!1,width:2}}}},legend:{hoverMode:"markPoint"},adaptiveLayout:{keepLabels:!1}}),pieIE8:{commonSeriesSettings:{pie:{hoverStyle:{border:{visible:!0,color:"#ffffff"}},selectionStyle:{border:{visible:!0,color:"#ffffff"}}},donut:{hoverStyle:{border:{visible:!0,color:"#ffffff"}},selectionStyle:{border:{visible:!0,color:"#ffffff"}}},doughnut:{hoverStyle:{border:{visible:!0,color:"#ffffff"}},selectionStyle:{border:{visible:!0,color:"#ffffff"}}}}},gauge:{containerBackgroundColor:"#ffffff",scale:{majorTick:{visible:!0,length:5,width:2,showCalculatedTicks:!0,useTicksAutoArrangement:!0,color:"#ffffff"},minorTick:{visible:!1,length:3,width:1,showCalculatedTicks:!0,color:"#ffffff"},label:{visible:!0,font:{}}},rangeContainer:{offset:0,width:5,backgroundColor:"#808080"},valueIndicator:{_default:{color:"#c2c2c2"},rangebar:{space:2,size:10,color:"#cbc5cf",backgroundColor:"none",text:{indent:0,font:{size:14,color:null}}},twocolorneedle:{secondColor:"#e18e92"},twocolorrectangle:{secondColor:"#e18e92"}},subvalueIndicator:{_default:{color:"#8798a5"},trianglemarker:{space:2,length:14,width:13,color:"#8798a5"},triangle:{space:2,length:14,width:13,color:"#8798a5"},textcloud:{arrowLength:5,horizontalOffset:6,verticalOffset:3,color:"#679ec5",text:{font:{color:"#ffffff",size:18}}}},valueIndicators:{_default:{color:"#c2c2c2"},rangebar:{space:2,size:10,color:"#cbc5cf",backgroundColor:"none",text:{indent:0,font:{size:14,color:null}}},twocolorneedle:{secondColor:"#e18e92"},trianglemarker:{space:2,length:14,width:13,color:"#8798a5"},textcloud:{arrowLength:5,horizontalOffset:6,verticalOffset:3,color:"#679ec5",text:{font:{color:"#ffffff",size:18}}}},title:{layout:{horizontalAlignment:"center",verticalAlignment:"top",overlay:0},font:{size:16,color:"#232323",family:r,weight:400}},subtitle:{font:{size:14,color:"#232323",family:r,weight:400}},indicator:{hasPositiveMeaning:!0,layout:{horizontalAlignment:"center",verticalAlignment:"bottom",overlay:0},text:{font:{size:18}}},tooltip:{arrowLength:10,paddingLeftRight:18,paddingTopBottom:15,enabled:!1,border:{width:1,color:"#d3d3d3",dashStyle:"solid",visible:!0},color:"#ffffff",font:{color:"#232323",size:12,family:r,weight:400},shadow:{opacity:.4,offsetX:0,offsetY:4,blur:2,color:"#000000"}},loadingIndicator:{font:{},backgroundColor:"#ffffff",text:"Loading..."},_circular:{scale:{orientation:"outside",label:{indentFromTick:10}},rangeContainer:{orientation:"outside"},valueIndicator:{type:"rectangleneedle",_default:{offset:20,indentFromCenter:0,width:2,spindleSize:14,spindleGapSize:10},triangleneedle:{width:4},triangle:{width:4},twocolorneedle:{space:2,secondFraction:.4},twocolorrectangle:{space:2,secondFraction:.4},rangebar:{offset:30}},subvalueIndicator:{type:"trianglemarker",trianglemarker:{offset:6},triangle:{offset:6},textcloud:{offset:-6}},valueIndicators:{_type:"rectangleneedle",_default:{offset:20,indentFromCenter:0,width:2,spindleSize:14,spindleGapSize:10},triangleneedle:{width:4},twocolorneedle:{space:2,secondFraction:.4},rangebar:{offset:30},trianglemarker:{offset:6},textcloud:{offset:-6}}},_linear:{scale:{horizontalOrientation:"right",verticalOrientation:"bottom",label:{indentFromTick:-10}},rangeContainer:{horizontalOrientation:"right",verticalOrientation:"bottom"},valueIndicator:{type:"rangebar",_default:{offset:2.5,length:15,width:15},rectangle:{width:10},rangebar:{offset:10,horizontalOrientation:"right",verticalOrientation:"bottom"}},subvalueIndicator:{type:"trianglemarker",_default:{offset:-1,horizontalOrientation:"left",verticalOrientation:"top"}},valueIndicators:{_type:"rectangle",_default:{offset:2.5,length:15,width:15},rectangle:{width:10},rangebar:{offset:10,horizontalOrientation:"right",verticalOrientation:"bottom"},trianglemarker:{offset:-1,horizontalOrientation:"left",verticalOrientation:"top"},textcloud:{offset:-1,horizontalOrientation:"left",verticalOrientation:"top"}}}},barGauge:{backgroundColor:"#e0e0e0",relativeInnerRadius:.3,barSpacing:4,label:{indent:20,connectorWidth:2,font:{size:16}},title:{layout:{horizontalAlignment:"center",verticalAlignment:"top",overlay:0},font:{size:16,color:"#232323",family:r,weight:400}},subtitle:{font:{size:14,color:"#232323",family:r,weight:400}},indicator:{hasPositiveMeaning:!0,layout:{horizontalAlignment:"center",verticalAlignment:"bottom",overlay:0},text:{font:{size:18}}},tooltip:{arrowLength:10,paddingLeftRight:18,paddingTopBottom:15,enabled:!1,border:{width:1,color:"#d3d3d3",dashStyle:"solid",visible:!0},color:"#ffffff",font:{size:12,color:"#232323",family:r,weight:400},shadow:{opacity:.4,offsetX:0,offsetY:4,blur:2,color:"#000000"}},loadingIndicator:{font:{},backgroundColor:"#ffffff",text:"Loading..."}},rangeSelector:{containerBackgroundColor:"#ffffff",scale:{label:{topIndent:7,font:{size:11}},tick:{width:1,color:"#000000",opacity:.1},marker:{separatorHeight:33,topIndent:10,textLeftIndent:7,textTopIndent:11}},loadingIndicator:{font:{},backgroundColor:"#ffffff",text:"Loading..."},sliderMarker:{padding:7,pointerSize:6,color:"#9b9b9b",invalidRangeColor:"#ff0000",font:{color:"#ffffff",size:11}},sliderHandle:{width:1,color:"#000000",opacity:.2},shutter:{color:i,opacity:.75},background:{color:"#c0bae1"},chart:{containerBackgroundColor:i,commonSeriesSettings:{label:u.commonSeriesSettings.label,border:{visible:!1,width:1},visible:!0,type:"area",hoverMode:"none",hoverStyle:{border:{}},selectionStyle:{border:{}},point:{visible:!1,symbol:"circle",border:{visible:!1,width:1},size:12,hoverStyle:{border:{}},selectionStyle:{border:{}}},line:{width:2},stepline:{width:2},scatter:{point:{visible:!0}},stackedline:{width:2},fullstackedline:{width:2},area:{opacity:.5},stackedarea:{opacity:.5},fullstackedarea:{opacity:.5},spline:{width:2},splinearea:{opacity:.5},steparea:{border:{visible:!0,width:2},opacity:.5},bubble:{opacity:.5,point:{visible:!0}},bar:{cornerRadius:0,point:{visible:!0}},stackedbar:{cornerRadius:0,point:{visible:!0}},fullstackedbar:{cornerRadius:0,point:{visible:!0}},rangebar:{cornerRadius:0,point:{visible:!0}},rangearea:{opacity:.5},rangesplinearea:{opacity:.5},candlestick:{width:1,innerColor:"#ffffff",reduction:{color:"#ff0000"}},stock:{width:1,reduction:{color:"#ff0000"}}},dataPrepareSettings:{checkTypeForAllData:!1,convertToAxisDataType:!0,sortingMethod:!0},useAggregation:!1,equalBarWidth:!0,minBubbleSize:12,maxBubbleSize:.2,topIndent:.1,bottomIndent:0,valueAxis:{min:i,max:i,inverted:!1,logarithmBase:10}}},map:{background:{borderWidth:1,borderColor:"#cacaca",color:"#ffffff"},area:{borderWidth:1,borderColor:"#ffffff",color:"#d2d2d2",hoveredBorderColor:"#303030",selectedBorderWidth:2,selectedBorderColor:"#303030"},marker:{font:{color:"#2b2b2b",size:12},_dot:{borderWidth:2,borderColor:"#ffffff",color:"#ba4d51",size:8,selectedStep:2,backStep:18,backColor:"#ffffff",backOpacity:.32,shadow:!0},_bubble:{minSize:20,maxSize:50,color:"#ba4d51",hoveredBorderWidth:1,hoveredBorderColor:"#303030",selectedBorderWidth:2,selectedBorderColor:"#303030"},_pie:{size:50,hoveredBorderWidth:1,hoveredBorderColor:"#303030",selectedBorderWidth:2,selectedBorderColor:"#303030"},_image:{size:20}},controlBar:{borderColor:"#5d5d5d",borderWidth:3,color:"#ffffff"},tooltip:{borderWidth:1,borderColor:"#d7d7d7",arrowLength:10,paddingLeftRight:18,paddingTopBottom:15,border:{width:1,color:"#d3d3d3",dashStyle:"solid",visible:!0},color:"#ffffff",font:{color:"#232323",size:12,family:r,weight:400},shadow:{opacity:.4,offsetX:0,offsetY:4,blur:2,color:"#000000"}},legend:{verticalAlignment:"bottom",horizontalAlignment:"right",position:"inside",visible:!0,margin:10,equalColumnWidth:!1,markerSize:12,backgroundColor:"#ffffff",backgroundOpacity:.65,border:{visible:!0,width:1,color:"#cacaca",cornerRadius:0,dashStyle:"solid"},paddingLeftRight:16,paddingTopBottom:12,columnItemSpacing:20,rowItemSpacing:8,font:{color:"#2b2b2b",size:12}},loadingIndicator:{backgroundColor:"#ffffff",font:{},text:"Loading..."},_rtl:{legend:{itemTextPosition:"left"}}},sparkline:{lineColor:"#666666",lineWidth:2,areaOpacity:.2,minColor:"#e8c267",maxColor:"#e55253",barPositiveColor:"#a9a9a9",barNegativeColor:"#d7d7d7",winColor:"#a9a9a9",lossColor:"#d7d7d7",firstLastColor:"#666666",pointSymbol:"circle",pointColor:"#ffffff",pointSize:4,tooltip:{enabled:!0,allowContainerResizing:!0,verticalAlignment:"top",horizontalAlignment:"center",format:"",paddingLeftRight:18,paddingTopBottom:15,arrowLength:10,precision:0,color:"#ffffff",border:{width:1,color:"#d3d3d3",dashStyle:"solid",visible:!0},font:{color:"#232323",family:r,size:12,weight:400},shadow:{opacity:.4,offsetX:0,offsetY:4,blur:2,color:"#000000"}}},bullet:{color:"#e8c267",targetColor:"#666666",targetWidth:4,showTarget:!0,showZeroLevel:!0,tooltip:{enabled:!0,allowContainerResizing:!0,verticalAlignment:"top",horizontalAlignment:"center",format:"",precision:0,paddingLeftRight:18,paddingTopBottom:15,arrowLength:10,color:"#ffffff",border:{width:1,color:"#d3d3d3",dashStyle:"solid",visible:!0},font:{color:"#232323",family:r,size:12,weight:400},shadow:{opacity:.4,offsetX:0,offsetY:4,blur:2,color:"#000000"}}}}),t.viz.core.registerTheme({name:"desktop-dark",font:{color:"#808080"},chart:n.extend(!0,{},f,{commonSeriesSettings:{candlestick:{innerColor:"#2b2b2b"}},crosshair:{color:"#515151"},commonAxisSettings:{color:"#494949",grid:{color:"#494949"},tick:{color:"#494949"},constantLineStyle:{color:"#ffffff"}},commonPaneSettings:{border:{color:"#494949"}}}),pie:n.extend(!0,{},f),pieIE8:{commonSeriesSettings:{pie:{hoverStyle:{border:{color:"#2b2b2b"}},selectionStyle:{border:{color:"#2b2b2b"}}},donut:{hoverStyle:{border:{color:"#2b2b2b"}},selectionStyle:{border:{color:"#2b2b2b"}}},doughnut:{hoverStyle:{border:{color:"#2b2b2b"}},selectionStyle:{border:{color:"#2b2b2b"}}}}},gauge:{containerBackgroundColor:"#2b2b2b",scale:{majorTick:{color:"#303030"},minorTick:{color:"#303030"}},rangeContainer:{backgroundColor:"#b5b5b5"},valueIndicator:{_default:{color:"#b5b5b5"},rangebar:{color:"#84788b"},twocolorneedle:{secondColor:"#ba544d"},twocolorrectangle:{secondColor:"#ba544d"}},subvalueIndicator:{_default:{color:"#b7918f"}},valueIndicators:{_default:{color:"#b5b5b5"},rangebar:{color:"#84788b"},twocolorneedle:{secondColor:"#ba544d"},trianglemarker:{color:"#b7918f"},textcloud:{color:"#ba544d"}},title:{font:{color:"#929292"}},subtitle:{font:{color:"#929292"}},loadingIndicator:{backgroundColor:"#2b2b2b"},tooltip:{color:"#2b2b2b",border:{color:"#494949"},font:{color:"#929292"}}},barGauge:{title:{font:{color:"#929292"}},subtitle:{font:{color:"#929292"}},tooltip:{color:"#2b2b2b",border:{color:"#494949"},font:{color:"#929292"}},loadingIndicator:{backgroundColor:"#2b2b2b"}},rangeSelector:{containerBackgroundColor:"#2b2b2b",scale:{tick:{color:"#ffffff",opacity:.05}},loadingIndicator:{backgroundColor:"#2b2b2b"},sliderMarker:{color:"#b5b5b5",font:{color:"#303030"}},sliderHandle:{color:"#ffffff",opacity:.35},shutter:{color:"#2b2b2b",opacity:.9}},map:{background:{borderColor:"#3f3f3f",color:"#303030"},area:{borderColor:"#303030",color:"#686868",hoveredBorderColor:"#ffffff",selectedBorderColor:"#ffffff"},marker:{font:{color:"#ffffff"},_bubble:{hoveredBorderColor:"#ffffff",selectedBorderColor:"#ffffff"},_pie:{hoveredBorderColor:"#ffffff",selectedBorderColor:"#ffffff"}},controlBar:{borderColor:"#c7c7c7",color:"#303030"},legend:{border:{color:"#3f3f3f"},backgroundColor:"#303030",font:{color:"#ffffff"}},tooltip:{color:"#2b2b2b",border:{color:"#494949"},font:{color:"#929292"}},loadingIndicator:{backgroundColor:"#2b2b2b"}},sparkline:{lineColor:"#c7c7c7",firstLastColor:"#c7c7c7",barPositiveColor:"#b8b8b8",barNegativeColor:"#8e8e8e",winColor:"#b8b8b8",lossColor:"#8e8e8e",pointColor:"#303030",tooltip:{color:"#2b2b2b",border:{color:"#494949"},font:{color:"#929292"}}},bullet:{targetColor:"#8e8e8e",tooltip:{color:"#2b2b2b",border:{color:"#494949"},font:{color:"#929292"}}}},"desktop")}(jQuery,DevExpress),function(n,t){var r={containerBackgroundColor:"#050506",title:{font:{color:"#ffffff"}},commonSeriesSettings:{label:{border:{color:"#4c4c4c"}}},legend:{font:{color:"#ffffff",size:11},border:{color:"#4c4c4c"}},loadingIndicator:{backgroundColor:"#050506"},tooltip:{color:"#050506",border:{color:"#4c4c4c"},font:{color:"#ffffff"}}},u={containerBackgroundColor:"#e8e8e8",title:{font:{color:"#808080"}},legend:{font:{color:"#000000",size:11}},loadingIndicator:{backgroundColor:"#e8e8e8"},tooltip:{color:"#e8e8e8",font:{color:"#808080"}}};t.viz.core.registerTheme({name:"android",chart:n.extend(!0,{},r,{commonSeriesSettings:{candlestick:{innerColor:"#050506"}},commonAxisSettings:{color:"#4c4c4c",grid:{color:"#4c4c4c"},tick:{color:"#4c4c4c"},title:{font:{color:"#545455"}},label:{font:{color:"#ffffff",size:11}}},commonPaneSettings:{border:{color:"#4c4c4c"}}}),pie:n.extend(!0,{},r),pieIE8:{commonSeriesSettings:{pie:{hoverStyle:{border:{color:"#050506"}},selectionStyle:{border:{color:"#050506"}}},donut:{hoverStyle:{border:{color:"#050506"}},selectionStyle:{border:{color:"#050506"}}},doughnut:{hoverStyle:{border:{color:"#050506"}},selectionStyle:{border:{color:"#050506"}}}}},gauge:{containerBackgroundColor:"#050506",title:{font:{color:"#ffffff"}},subtitle:{font:{color:"#ffffff"}},loadingIndicator:{backgroundColor:"#050506"},tooltip:{color:"#050506",border:{color:"#4c4c4c"},font:{color:"#ffffff"}}},barGauge:{title:{font:{color:"#ffffff"}},subtitle:{font:{color:"#ffffff"}},tooltip:{color:"#050506",border:{color:"#4c4c4c"},font:{color:"#ffffff"}},loadingIndicator:{backgroundColor:"#050506"}},rangeSelector:{containerBackgroundColor:"#050506",loadingIndicator:{backgroundColor:"#050506"}},map:{loadingIndicator:{backgroundColor:"#050506"},tooltip:{color:"#050506",border:{color:"#4c4c4c"},font:{color:"#ffffff"}}},sparkline:{tooltip:{color:"#050506",border:{color:"#4c4c4c"},font:{color:"#ffffff"}}},bullet:{tooltip:{color:"#050506",border:{color:"#4c4c4c"},font:{color:"#ffffff"}}}},"desktop-dark"),t.viz.core.registerTheme({name:"android-holo-light",chart:n.extend(!0,{},u,{commonSeriesSettings:{candlestick:{innerColor:"#e8e8e8"}},commonAxisSettings:{title:{font:{color:"#939393"}},label:{font:{color:"#404040",size:11}}}}),pie:n.extend(!0,{},u),pieIE8:{commonSeriesSettings:{pie:{hoverStyle:{border:{color:"#e8e8e8"}},selectionStyle:{border:{color:"#e8e8e8"}}},donut:{hoverStyle:{border:{color:"#e8e8e8"}},selectionStyle:{border:{color:"#e8e8e8"}}},doughnut:{hoverStyle:{border:{color:"#e8e8e8"}},selectionStyle:{border:{color:"#e8e8e8"}}}}},gauge:{containerBackgroundColor:"#e8e8e8",title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},loadingIndicator:{backgroundColor:"#e8e8e8"},tooltip:{color:"#e8e8e8",font:{color:"#808080"}}},barGauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{color:"#e8e8e8",font:{color:"#808080"}},loadingIndicator:{backgroundColor:"#e8e8e8"}},rangeSelector:{containerBackgroundColor:"#e8e8e8",loadingIndicator:{backgroundColor:"#e8e8e8"}},map:{loadingIndicator:{backgroundColor:"#e8e8e8"},tooltip:{color:"#e8e8e8",font:{color:"#808080"}}},sparkline:{tooltip:{color:"#e8e8e8",font:{color:"#808080"}}},bullet:{tooltip:{color:"#e8e8e8",font:{color:"#808080"}}}},"desktop")}(jQuery,DevExpress),function(n,t){var r={containerBackgroundColor:"#cbd0da",title:{font:{color:"#808080"}},commonSeriesSettings:{label:{border:{color:"#b0b3ba"}}},legend:{font:{color:"#000000",size:11},border:{color:"#b0b3ba"}},loadingIndicator:{backgroundColor:"#cbd0da"},tooltip:{font:{color:"#808080"}}},u={containerBackgroundColor:"#ffffff",title:{font:{color:"#808080"}},commonSeriesSettings:{label:{border:{color:"#d3d3d3"}}},legend:{font:{color:"#000000",size:11},border:{color:"#d3d3d3"}},loadingIndicator:{backgroundColor:"#ffffff"},tooltip:{font:{color:"#808080"}}};t.viz.core.registerTheme({name:"ios",chart:n.extend(!0,{},r,{commonSeriesSettings:{candlestick:{innerColor:"#cbd0da"}},commonAxisSettings:{color:"#b0b3ba",grid:{color:"#b0b3ba"},tick:{color:"#b0b3ba"},title:{font:{color:"#939393"}},label:{font:{color:"#000000",size:11}}},commonPaneSettings:{border:{color:"#b0b3ba"}}}),pie:n.extend(!0,{},r),pieIE8:{commonSeriesSettings:{pie:{hoverStyle:{border:{color:"#cbd0da"}},selectionStyle:{border:{color:"#cbd0da"}}},donut:{hoverStyle:{border:{color:"#cbd0da"}},selectionStyle:{border:{color:"#cbd0da"}}},doughnut:{hoverStyle:{border:{color:"#cbd0da"}},selectionStyle:{border:{color:"#cbd0da"}}}}},gauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{font:{color:"#808080"}}},barGauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{font:{color:"#808080"}}},map:{tooltip:{font:{color:"#808080"}}},sparkline:{tooltip:{font:{color:"#808080"}}},bullet:{tooltip:{font:{color:"#808080"}}}},"desktop"),t.viz.core.registerTheme({name:"ios:7",chart:n.extend(!0,{},u,{commonAxisSettings:{color:"#d3d3d3",grid:{color:"#d3d3d3"},tick:{color:"#d3d3d3"},title:{font:{color:"#939393"}},label:{font:{color:"#000000",size:11}}},commonPaneSettings:{border:{color:"#d3d3d3"}}}),pie:n.extend(!0,{},u),gauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{font:{color:"#808080"}}},barGauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{font:{color:"#808080"}}},map:{tooltip:{font:{color:"#808080"}}},sparkline:{tooltip:{font:{color:"#808080"}}},bullet:{tooltip:{font:{color:"#808080"}}}},"desktop")}(jQuery,DevExpress),function(n,t){var i={containerBackgroundColor:"#000000",title:{font:{color:"#ffffff"}},commonSeriesSettings:{label:{border:{color:"#454545"}}},legend:{font:{color:"#ffffff",size:11},border:{color:"#454545"}},loadingIndicator:{backgroundColor:"#000000"},tooltip:{color:"#000000",font:{color:"#ffffff"}}},r={title:{font:{color:"#808080"}},legend:{font:{color:"#000000",size:11}},tooltip:{font:{color:"#808080"}}};t.viz.core.registerTheme({name:"win8",chart:n.extend(!0,{},i,{commonSeriesSettings:{candlestick:{innerColor:"#000000"}},commonAxisSettings:{color:"#454545",grid:{color:"#454545"},tick:{color:"#454545"},title:{font:{color:"#535353"}},label:{font:{color:"#ffffff",size:11}}},commonPaneSettings:{border:{color:"#454545"}}}),pie:n.extend(!0,{},i),pieIE8:{commonSeriesSettings:{pie:{hoverStyle:{border:{color:"#000000"}},selectionStyle:{border:{color:"#000000"}}},donut:{hoverStyle:{border:{color:"#000000"}},selectionStyle:{border:{color:"#000000"}}},doughnut:{hoverStyle:{border:{color:"#000000"}},selectionStyle:{border:{color:"#000000"}}}}},gauge:{containerBackgroundColor:"#000000",title:{font:{color:"#ffffff"}},subtitle:{font:{color:"#ffffff"}},loadingIndicator:{backgroundColor:"#000000"},tooltip:{color:"#000000",font:{color:"#ffffff"}}},barGauge:{title:{font:{color:"#ffffff"}},subtitle:{font:{color:"#ffffff"}},tooltip:{color:"#000000",font:{color:"#ffffff"}},loadingIndicator:{backgroundColor:"#000000"}},rangeSelector:{containerBackgroundColor:"#000000",loadingIndicator:{backgroundColor:"#000000"}},map:{loadingIndicator:{backgroundColor:"#000000"},tooltip:{color:"#000000",font:{color:"#ffffff"}}},sparkline:{tooltip:{color:"#000000",font:{color:"#ffffff"}}},bullet:{tooltip:{color:"#000000",font:{color:"#ffffff"}}}},"desktop-dark"),t.viz.core.registerTheme({name:"win8-white",chart:n.extend(!0,{},r,{commonAxisSettings:{title:{font:{color:"#939393"}},label:{font:{color:"#404040",size:11}}}}),pie:n.extend(!0,{},r),gauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{font:{color:"#808080"}}},barGauge:{title:{font:{color:"#808080"}},subtitle:{font:{color:"#808080"}},tooltip:{font:{color:"#808080"}}},map:{tooltip:{font:{color:"#808080"}}},sparkline:{tooltip:{font:{color:"#808080"}}},bullet:{tooltip:{font:{color:"#808080"}}}},"desktop")}(jQuery,DevExpress),function(n,t){t.viz.core.registerTheme({name:"generic"},"desktop"),t.viz.core.registerTheme({name:"generic-dark"},"desktop-dark"),t.viz.core.registerTheme({name:"tizen"},"desktop"),t.viz.core.registerTheme({name:"tizen-black"},"desktop-dark")}(jQuery,DevExpress),function(n){n.viz.renderers={}}(DevExpress),function(n,t){function o(n){return c.createElementNS("http://www.w3.org/2000/svg",n)}function l(n,t){return n!==null?"url("+(t?window.location.href:"")+"#"+n+")":null}function f(t,i){n.each(i,function(n,i){t.setAttribute(n,i)})}function ht(n){for(var i=0,r=n.length,t=[];i<r;)t.push("L",n[i++].toFixed(2),n[i++].toFixed(2));return r?(t[0]="M",t.push("Z"),t=t.join(" ")):t="",t}function ct(n,t,i,r){var u=i+~~r&1;return{cx:u?n+.5:n,cy:u?t+.5:t,r:i/2}}var s=t.viz.renderers,i=t.utils,v=t.Class,c=document,u=1e10,r=v.inherit({ctor:function(t,i,r){this.renderer=t,this.element=this.createElement(i),this.$element=n(this.element),this.applySettings(n.extend({},this.defaultSettings(),r))},defaultSettings:n.noop,createElement:function(n){return this._nodeName=n,o(n)},dispose:function(){this.off(),this.remove(),this.renderer=null,this.element=null,this.settings=null,this.$element=null,this.transformation=null},append:function(n){var t=n||this.renderer.getRoot();return t.element.appendChild(this.element),this},insertBefore:function(n){return n.element.parentNode.insertBefore(this.element,n.element),this},toBackground:function(){return this.element.parentNode&&this.element.parentNode.insertBefore(this.element,this.element.parentNode.firstChild),this},toForeground:function(){return this.element.parentNode&&this.element.parentNode.appendChild(this.element),this},addClass:function(t){var i=this.$element.attr("class"),r,u;return t&&(i?(u=i.split(" "),r=n.inArray(t,u),r===-1&&(i+=" "+t)):i=t,this.$element.attr("class",i)),this.$element},removeClass:function(t){var f=this.$element.attr("class"),r,u,e="",i;if(f&&t&&(r=f.split(" "),u=n.inArray(t,r),u!==-1)){for(i=0;i<r.length;i++)i!==u&&(e+=r[i]+" ");this.$element.attr("class",e.replace(/ $/,""))}return this.$element},applySettings:function(t){var i;return this.settings=n.extend(this.settings||{},t||{}),this.adjustSettings(),i=this._normalizeSettings(this.settings),this.applyStyle(this._style),this._applyAttributes(i),this},_applyAttributes:function(n){this.$element.attr(n)},adjustSettings:function(){},applyStyle:function(n){return this.$element.css(n||{}),this},trigger:function(n,t){this.$element.trigger(n,t)},on:function(){return this.$element.on.apply(this.$element,arguments),this},data:function(n,t){return this.$element.data(n,t),this},removeData:function(){return this.$element.removeData(),this},off:function(n){return this.$element.off(n),this},getBBox:function(){function t(t){var i={};try{if(n.isFunction(t.getBBox))i=t.getBBox();else throw{};}catch(r){i={x:0,y:0,width:t.offsetWidth||0,height:t.offsetHeight||0}}return i}var h=this,t,it=this.element,s=h.transformation,c=s.rotateAngle||0,f=s.rotateX||0,e=s.rotateY||0,o=Math.abs,l=Math.min;if(t=n.extend({},t(it)),c){var a=i.getCosAndSin(c),r=a.sin.toFixed(3),u=a.cos.toFixed(3),v=t.x-f,y=t.y-e,p=t.x+t.width-f,w=t.y-e,b=t.x-f,k=t.y+t.height-e,d=t.x+t.width-f,g=t.y+t.height-e,nt,tt;nt=o(t.height*r)+o(t.width*u),tt=o(t.height*u)+o(t.width*r),t.x=l(v*u-y*r+f,p*u-w*r+f,b*u-k*r+f,d*u-g*r+f),t.y=l(v*r+y*u+e,p*r+w*u+e,b*r+k*u+e,d*r+g*u+e),t.width=nt,t.height=tt}return h._normalizeBBox(t)},_normalizeBBox:function(t){var s=Math.ceil,h=Math.floor,o=n.isNumeric,i=h(t.x),r=h(t.y),c=s(t.width+t.x),l=s(t.height+t.y),f,e;return t.x=o(i)&&i<u&&i>-u?i:0,t.y=o(r)&&r<u&&r>-u?r:0,f=c-i,e=l-r,t.width=o(f)&&f<u&&f>-u?f:0,t.height=o(e)&&e<u&&e>-u?e:0,t.isEmpty=!t.x&&!t.y&&!t.width&&!t.height,t},clear:function(n){return n?this.$element.find(n).remove():this.$element.empty(),this},detach:function(){return this.$element.detach(),this},animate:function(t,r,u){r=r||{};var e=this,f={};u&&n.extend(r,{complete:u}),this.renderer.animOptions.enabled?(n.each(t,function(n,t){switch(n){case"scale":f.transform=f.transform||{};var r=e.transformation.scale||{};f.transform.scale={x:{from:i.isDefined(r.x)?r.x:1,to:i.isDefined(t.x)?t.x:1},y:{from:i.isDefined(r.y)?r.y:1,to:i.isDefined(t.y)?t.y:1}};break;case"rotate":f.transform=f.transform||{},f.transform.rotate={angle:{from:e.transformation.rotateAngle||0,to:t.angle},y:t.y||0,x:t.x||0};break;case"translate":f.transform=f.transform||{},f.transform.translate={x:{from:e.transformation.translateX||0,to:t.x||0},y:{from:e.transformation.translateY||0,to:t.y||0}};break;case"arc":case"points":f[n]=t;break;default:f[n]={from:e.settings[n]||0,to:t}}}),e.renderer.animateElement(e,f,n.extend({},this.renderer.animOptions,r))):(t.translate&&("x"in t.translate&&(t.translateX=t.translate.x),"y"in t.translate&&(t.translateY=t.translate.y),delete t.translate),r&&(r.step&&r.step.call(e,1,1),r.complete&&r.complete.call(e)),this.applySettings(t))},stopAnimation:function(n){var t=this;return t.animation&&t.animation.stop(!0,n),t},move:function(n,t,i,r){return n=n||0,t=t||0,r=r||{},i?this.animate({translate:{x:n,y:t}},r):this.applySettings({translateX:n,translateY:t}),this},rotate:function(n,t,i,r,u){n=n||0,t=t||0,i=i||0,u=u||{},r?this.animate({rotate:{angle:n,x:t,y:i}},u):this.applySettings({rotate:[n,t,i]})},remove:function(){this.$element.remove()},_normalizeSettings:function(i){var o,s,e,f,r,u,h={},a,c=this.renderer.rtl;for(o in i){if(r=o,u=i[r],r==="align")r="text-anchor",u={left:c?"end":"start",center:"middle",right:c?"start":"end"}[u];else if(r==="font"){if(s=this._style=this._style||{},!n.isPlainObject(u))continue;n.each(u,function(n){switch(n){case"color":f="fill";break;case"opacity":f="fillOpacity";break;case"cursor":f=n;break;default:e=n.charAt(0),f="font"+n.replace(e,e.toUpperCase())}s[f]=u[n]});continue}else if(r==="dashStyle")r="stroke-dasharray",u=(u||"none").toLowerCase(),u==="solid"||u==="none"?u=null:(u=u.replace(/longdash/g,"8,3,").replace(/dash/g,"4,3,").replace(/dot/g,"1,3,").replace(/,$/,"").split(","),u=n.map(u,function(n){return+n*(i.strokeWidth||1)}).join(","));else if(/^(linecap|linejoin)$/i.test(r))r="stroke-"+r;else if(/^(translateX|translateY|rotate|scale)$/i.test(r)){this["_"+r]=u;continue}else if(r==="clipId")r="clip-path",u=l(u,this.renderer.pathModified);else if(r==="style"){this._style=this._style||{},n.extend(!0,this._style,u);continue}else if(r==="sharpEdges")continue;else if(r==="text")continue;else if(r==="segments")continue;else r=t.inflector.dasherize(r);h[r]=u}return this._applyTransformation(h)},_applyTransformation:function(t){var o,s,h;this.transformation={translateX:this._translateX,translateY:this._translateY,rotateAngle:0,rotateX:0,rotateY:0};var r=this.transformation,u=this._rotate,f=this._scale,e=[];return(i.isDefined(r.translateX)||i.isDefined(r.translateY))&&e.push("translate("+(r.translateX||0)+","+(r.translateY||0)+")"),i.isDefined(u)&&(i.isNumber(u)?(r.rotateAngle=u,r.rotateX=t.x||0,r.rotateY=t.y||0):n.isArray(u)?(r.rotateAngle=u[0]||0,r.rotateX=u[1]||0,r.rotateY=u[2]||0):i.isObject(u)&&(r.rotateAngle=u.angle||0,r.rotateX=u.x||0,r.rotateY=u.y||0),e.push("rotate("+r.rotateAngle+","+r.rotateX+","+r.rotateY+")")),i.isNumber(f)?(o=i.isDefined(f)?f:1,e.push("scale("+o+","+o+")"),r.scale={x:o,y:o}):i.isObject(f)&&(s=i.isDefined(f.x)?f.x:1,h=i.isDefined(f.y)?f.y:1,e.push("scale("+s+","+h+")"),r.scale={x:s,y:h}),e.length&&(t.transform=e.join(" ")),t}}),y=r.inherit({defaultSettings:function(){return{width:0,height:0,style:{"-webkit-tap-highlight-color":"rgba(0, 0, 0, 0)",display:"block",overflow:"hidden"},xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",version:"1.1",stroke:"none",strokeWidth:0,fill:"none"}},ctor:function(n,t){this.callBase(n,"svg",t)}}),h={defaultSettings:function(){return{x:0,y:0,width:0,height:0}},adjustSettings:function(){(!i.isDefined(this.settings.sharpEdges)||this.settings.sharpEdges)&&(this.sharpEdges(),delete this.settings.sharpEdges)},prepareSettings:function(n){var f=this.settings?Number(this.settings.strokeWidth)||0:0,t,u,r=!1;i.isDefined(n.width)&&(this._realWidth=Number(n.width)),i.isDefined(n.height)&&(this._realHeight=Number(n.height)),i.isDefined(n.x)&&(this._realX=Number(n.x)),i.isDefined(n.y)&&(this._realY=Number(n.y)),i.isDefined(n.strokeWidth)&&(this._realStrokeWidth=Number(n.strokeWidth)),this._realStrokeWidth=this._realStrokeWidth||this.defaultSettings().strokeWidth||0,u=~~((this._realWidth<this._realHeight?this._realWidth:this._realHeight)/2),t=this._realStrokeWidth<u?this._realStrokeWidth:u,t!==f&&(r=!0,n.sharpEdges=!0,t>0&&(n.strokeWidth=t)),(i.isDefined(n.x)||r)&&(n.x=this._realX+t/2),(i.isDefined(n.y)||r)&&(n.y=this._realY+t/2),(i.isDefined(n.width)||r)&&(n.width=this._realWidth-t),(i.isDefined(n.height)||r)&&(n.height=this._realHeight-t)},applySettings:function(t){var t=n.extend(!0,{},t);return this.prepareSettings(t),this.callBase(t)},sharpEdges:function(){var t=Math.round(this.settings.strokeWidth||0),n=t%2/2;this.settings.x=Math.floor(this.settings.x-n||0)+n,this.settings.y=Math.floor(this.settings.y-n||0)+n,this.settings.width=Math.floor(this.settings.width||0),this.settings.height=Math.floor(this.settings.height||0),this.settings.strokeWidth>0&&(this.settings.strokeWidth=t)}},p=r.inherit(h).inherit({ctor:function(n,t,r,u){var f={full:"none",lefttop:"xMinYMin",leftcenter:"xMinYMid",leftbottom:"xMinYMax",centertop:"xMidYMin",center:"xMidYMid",centerbottom:"xMidYMax",righttop:"xMaxYMin",rightcenter:"xMaxYMid",rightbottom:"xMaxYMax"};this.href=i.isDefined(r)?r:"",this.preserveAspectRatio=f[(u||"").toLowerCase()],this.preserveAspectRatio=this.preserveAspectRatio||"none",this.callBase(n,"image",t)},adjustSettings:function(){this.callBase(),this.element.setAttributeNS("http://www.w3.org/1999/xlink","href",this.href),this.preserveAspectRatio&&this.element.setAttribute("preserveAspectRatio",this.preserveAspectRatio)}}),w=r.inherit(h).inherit({defaultSettings:function(){return{x:0,y:0,width:0,height:0,rx:0,ry:0}},ctor:function(n,t){this.callBase(n,"rect",t)}}),e=r.inherit({defaultSettings:function(){return{points:{x:0,y:0}}},getNodeName:function(){return"path"},getPathAttributeName:function(){return"d"},ctor:function(n,t){this.callBase(n,this.getNodeName(),t)},dispose:function(){this.segments=null,this.fromSegments=null,this.callBase()},adjustSettings:function(){this.prepareSegments(this.settings)},applySettings:function(n){var n=n||{};return this.settings&&n.strokeWidth&&this.settings.strokeWidth!==n.strokeWidth&&(n.sharpEdges=!0),this.callBase(n)},prepareSegments:function(t){if("points"in t){var u=t.points,e=u[0],o=this.closePath||t.closePath,f=[],r;if(i.isObject(e))f=n.map(u,function(n,t){return n?t?[["L",n.x,n.y]]:[["M",n.x,n.y]]:null});else if(i.isNumber(e))for(r=0;r<u.length;r+=2){if(!r){f=[["M",u[r]||0,u[r+1]||0]];continue}f.push(["L",u[r]||0,u[r+1]||0])}else f=[["M",0,0]];o&&f.push(["Z"]),this.segments=f,delete t.points,delete t.closePath,t.sharpEdges=!0}t.sharpEdges&&(this.sharpEdges(),this.combinePathParams(t),delete t.sharpEdges)},customizeSegments:function(n){return n},combinePathParams:function(t){var i;this.segments=this.customizeSegments(this.segments),this.segments&&(i=n.map(this.segments,function(n){return n.join(" ")}),i=i.join(" "),t[this.getPathAttributeName()]=i)},_prepareDifferrentPath:function(n,t){var i={},r;return t.length>n.length?this._makeEqualPath(n,t):(this.combinePathParams(i),this._makeEqualPath(t,n)),i.d},_prepareConstSegment:function(n){n[0]="L"},_makeEqualPath:function(n,t){var r=n[n.length-1].slice(),i;for(this._prepareConstSegment(r),i=n.length;i<t.length;i++)n[i]=r},animate:function(n,t,i){var r=this,u,f;if(!("points"in n)||!r.renderer.animOptions.enabled)return r.callBase(n,t,i);u=r.segments,r.prepareSegments(n),delete n.d,u.length===r.segments.length?n.points={from:u,to:r.segments}:f=r._prepareDifferrentPath(u,r.segments),n.points={from:u,to:r.segments,end:f},r.callBase(n,t,i)},sharpEdges:function(){var o=this,v=o.segments.length,i=0,n,t,s,h,l,a,r,u,f,e,y=Math.round(o.settings.strokeWidth||0),c=y%2/2;for(i;i<v-1;i++){n=o.segments[i],t=o.segments[i+1],t[0]==="Z"&&i&&(t=o.segments[0]);switch(n[0]){case"M":case"L":r=1,u=2;break;case"C":r=5,u=6;break;case"A":r=6,u=7;break;case"Z":continue}switch(t[0]){case"M":case"L":f=1,e=2;break;case"C":f=5,e=6;break;case"A":f=6,e=7;break;case"Z":continue}s=Math.floor(n[r]),h=Math.floor(n[u]),l=t[f]=Math.floor(t[f]),a=t[e]=Math.floor(t[e]),n[r]=i==0?s:n[r],n[u]=i==0?h:n[u],s==l&&(n[r]=s+c,t[f]=l+c),h==a&&(n[u]=h+c,t[e]=a+c)}}}),b=e.inherit(h).inherit({defaultSettings:function(){return n.extend(!0,{},this.callBase(),{segments:{top:!0,bottom:!0,left:!0,right:!0}})},prepareSegments:function(){var h=this,t=h.settings,i=t.x,u=i+t.width,r=t.y,f=r+t.height,e=[],o,s=0,c=0,l={top:[["M",i,r],["L",u,r]],right:[["M",u,r],["L",u,f]],bottom:[["M",u,f],["L",i,f]],left:[["M",i,f],["L",i,r]]};n.each(l,function(n){var i=!!h.settings.segments[n];s=s*2+~~i});switch(s){case 13:case 9:o=["left","top","right","bottom"];break;case 11:o=["bottom","left","top","right"];break;default:o=["top","right","bottom","left"]}n.each(o,function(t,i){var r=!!h.settings.segments[i];r&&n.each(l[i].slice(c),function(n,t){e.push(t)}),c=~~r}),s==15&&e.push(["Z"]),this.segments=e.length?e:[["M",0,0],["Z"]],this.combinePathParams(t)},adjustSettings:function(){this.callBase(),this.prepareSegments()},applySettings:function(t){var i=this.settings&&this.settings.segments||this.defaultSettings().segments;return t.segments=n.extend(!0,{},i||{},t.segments),this.callBase(t)}}),k={defaultSettings:function(){return{points:{x:0,y:0}}},ctor:function(n,t){this.closePath=!0,this.callBase(n,t)},_tailIndex:0,_makeEqualPath:function(n,t){var i,u,r,f,o,s=[],e;if((n.length-1)%2==0&&(t.length-1)%2==0){for(i=(n.length-1)/2-1,u=n.slice(i+1),r=n.slice(0,i+1),f=r[r.length-1],o=u[this._tailIndex],this._prepareConstSegment(f),e=i;e<(t.length-1)/2-1;e++)r.push(f),s.push(o);for(r=this._concatAnimationSegment(r,s,u),i=0;i<r.length;i++)n[i]=r[i]}},_concatAnimationSegment:function(n,t,i){return n.concat(t,i)}},d=e.inherit(k),a=e.inherit({defaultSettings:function(){return{points:{x:0,y:0}}},_prepareConstSegment:function(n){var t=n[n.length-2],i=n[n.length-1];n[0]="C",n[5]=n[3]=n[1]=t,n[6]=n[4]=n[2]=i},prepareSegments:function(n){if("points"in n){var o=n.points,s=o[0],h=this.closePath||n.closePath,u=[],t=[],r,f,e,c=0;if(i.isObject(s)){for(r=0;r<o.length;r++){if(f=o[r].x,e=o[r].y,!r){u=[["M",f,e]];continue}if((r-1)%3==0){t.length>0&&u.push(t),t=["C",f,e];continue}t.push(f),t.push(e)}t.length>0&&u.push(t)}else if(i.isNumber(s)){for(r=0;r<o.length;r+=2){if(f=o[r],e=o[r+1],!r){u=[["M",f,e||0]];continue}if((r-2)%6==0){t.length>0&&u.push(t),t=["C",f,e||0];continue}t.push(f),t.push(e||0)}t.length>0&&u.push(t)}else u=[["M",0,0]];h&&u.push(["Z"]),this.segments=u,delete n.points,delete n.closePath,this.combinePathParams(n)}}}),g=a.inherit(k).inherit({_concatAnimationSegment:function(n,t,i){var r=i.splice(0,1);return n.concat(r.concat(t),i)},_tailIndex:1}),nt=e.inherit({defaultSettings:function(){return{x:0,y:0,linejoin:"round"}},createArcSegments:function(n,t,i,r,u,f,e){var o=Math.floor(Math.abs(f-u)/Math.PI)%2?"1":"0",s=n+r*Math.cos(u),h=t-r*Math.sin(u),c=n+r*Math.cos(f),l=t-r*Math.sin(f),a=n+i*Math.cos(f),v=t-i*Math.sin(f),y=n+i*Math.cos(u),p=t-i*Math.sin(u);return[["M",s,h],["A",r,r,0,o,0,c,l],[e?"M":"L",a,v],["A",i,i,0,o,1,y,p],["Z"]]},prepareSegments:function(n){var o;if("x"in n||"y"in n||"outerRadius"in n||"innerRadius"in n||"startAngle"in n||"endAngle"in n){var s=i.isNumber(n.x)?Number(n.x):0,h=i.isNumber(n.y)?Number(n.y):0,u=i.isNumber(n.outerRadius)?Number(n.outerRadius):0,f=i.isNumber(n.innerRadius)?Number(n.innerRadius):0,t=i.isNumber(n.startAngle)?Number(n.startAngle):0,r=i.isNumber(n.endAngle)?Number(n.endAngle):360,e;this.segments=[["M",0,0],["Z"]],(u||f)&&(o=Math.min(u,f),u=Math.max(u,f),f=o,Math.round(t)!=Math.round(r)&&(Math.abs(r-t)%360==0&&(t=0,r=360,e=!0,r-=.0001),t>360&&(t=t%360),r>360&&(r=r%360),t>r&&(t-=360),t=t*Math.PI/180,r=r*Math.PI/180,this.segments=this.createArcSegments(s,h,f,u,t,r,e))),this.x=n.x,this.y=n.y,this.outerRadius=n.outerRadius,this.innerRadius=n.innerRadius,this.startAngle=n.startAngle,this.endAngle=n.endAngle,delete n.x,delete n.y,delete n.outerRadius,delete n.innerRadius,delete n.startAngle,delete n.endAngle,this.combinePathParams(n)}},animate:function(n){var i=this,t;"x"in n&&"y"in n&&"outerRadius"in n&&"innerRadius"in n&&"startAngle"in n&&"endAngle"in n&&this.renderer.animOptions.enabled&&(t=this.settings,n.arc={from:{x:this.x,y:this.y,outerRadius:this.outerRadius,innerRadius:this.innerRadius,startAngle:this.startAngle,endAngle:this.endAngle},to:{x:n.x,y:n.y,outerRadius:n.outerRadius,innerRadius:n.innerRadius,startAngle:n.startAngle,endAngle:n.endAngle}},delete n.d,delete n.x,delete n.y,delete n.outerRadius,delete n.innerRadius,delete n.startAngle,delete n.endAngle),this.callBase.apply(this,arguments)}}),tt=r.inherit({defaultSettings:function(){return{cx:0,cy:0,r:0}},ctor:function(n,t){this.callBase(n,"circle",t)}}),it=r.inherit({defaultSettings:function(){return{x:0,y:0}},ctor:function(n,t){this.tspans=[],this.callBase(n,"text",t)},dispose:function(){this.tspans=null,this.callBase()},updateText:function(n){i.isDefined(n)||(n=""),this.applySettings({text:n})},adjustSettings:function(){if(!("text"in this.settings)){this.changeX();return}this._createElementWithText(this.settings.text)},changeX:function(){for(var n=0;n<this.tspans.length;n++)this.tspans[n].settings.x!=undefined&&this.tspans[n].applySettings({x:this.settings.x})},_createElementWithText:function(n){var t,i;this.clear(),n=n.toString().replace(/\r/g,""),n=n.replace(/\n/g,"<br/>"),t=c.createElement("div"),t.innerHTML=n,t.params={style:{}},this._orderText(t)},clear:function(){this.callBase(),this.tspans=[]},_orderText:function(n){var i=[],f=(this.settings.font?this.settings.font.size:12)||12,u=function(n,t,i){var r={style:{}},i=i||[],f,o,e;if(t.params=t.params||{},t.parentNode&&t.nodeName!="#text"&&t.parentNode.params)for(f in t.parentNode.params)t.params[f]=t.parentNode.params[f];switch(t.tagName){case"B":t.params.fontWeight="bold";break;case"I":t.params.fontStyle="italic";break;case"U":t.params.textDecoration="underline";break;case"BR":n++}for(t.style&&(t.style.fontSize&&(t.params.fontSize=(parseInt(t.style.fontSize)||t.params.fontSize)+"px"),t.params.fill=t.style.color||t.params.fill,t.params.fontStyle=t.style.fontStyle||t.params.fontStyle,t.params.fontWeight=t.style.fontWeight||t.params.fontWeight,t.params.textDecoration=t.style.textDecoration||t.params.textDecoration),o=t.childNodes.length,e=0;e!=o;)n=u(n,t.childNodes[e++],i);return t.wholeText!=undefined&&(r.fill=t.parentNode.params.fill,r.text=t.wholeText,t.parentNode.params.fontSize&&(r.style.fontSize=t.parentNode.params.fontSize),t.parentNode.params.fontStyle&&(r.style.fontStyle=t.parentNode.params.fontStyle),t.parentNode.params.fontWeight&&(r.style.fontWeight=t.parentNode.params.fontWeight),t.parentNode.params.textDecoration&&(r.style.textDecoration=t.parentNode.params.textDecoration),i.push({params:r,line:n})),n},t,r;for(u(0,n,i),t=0;t<i.length;t++)t!=0?i[t].line!=i[t-1].line?(i[t].params.dy=i[t].params.style.fontSize||f,i[t].params.x=this.settings.x):(i[t].params.dy=0,i[t].params.dx=0):(i[t].params.x=this.settings.x,i[t].params.dy=0),r=new rt(this.renderer,i[t].params),r.append(this),this.tspans.push(r)}}),rt=r.inherit({ctor:function(n,t){var i=t.text||"";delete t.text,this.callBase(n,"tspan",t),this.element.appendChild(c.createTextNode(i))}}),ut=r.inherit({ctor:function(n,t){this.callBase(n,"g",t)},update:n.noop}),ft=r.inherit({ctor:function(n,t){var f=i.getNextDefsSvgId(),e=t.color,u=t.hatching,s=u.opacity,h=u.width||1,r=u.step||6,o=u.direction,c={strokeWidth:h,stroke:e};this.callBase(n,"pattern",{id:f,width:r,height:r}),this.element.setAttribute("patternUnits","userSpaceOnUse"),this._rect=n.createRect(0,0,r,r,0,{fill:e,opacity:s}).append(this),this._path=n.createPath(0,c).append(this),o==="right"?this._path.applySettings({d:"M "+r/2+" "+-r/2+" L "+-r/2+" "+r/2+"M 0 "+r+" L "+r+" 0 M "+r*1.5+" "+r/2+" L "+r/2+" "+r*1.5}):o==="left"&&this._path.applySettings({d:"M 0 0 L "+r+" "+r+" M "+-r/2+" "+r/2+" L "+r/2+" "+r*1.5+" M "+r/2+-r/2+" L "+r*1.5+" "+r/2}),this.id=l(f,n.pathModified)},append:function(){return this.callBase(this.renderer.getDefsSvg())},clear:function(){this.callBase(),this._path=null},dispose:function(){this._path=null,this.callBase()}}),et=r.inherit({ctor:function(n,t){var u=t.x,f=t.y,e=t.w,o=t.h,r=i.getNextDefsSvgId();delete t.x,delete t.y,delete t.w,delete t.h,this.callBase(n,"clipPath",{id:r}),this.id=r,this._rect=n.createRect(u,f,e,o,0,t),this._rect.append(this)},append:function(){return this.callBase(this.renderer.getDefsSvg())},updateRectangle:function(n){this._rect.applySettings(n)},dispose:function(){this._rect=null,this.callBase()}}),st=r.inherit({ctor:function(t){this.applySettings=n.noop,this.callBase(t,"filter"),delete this.applySettings,this.ref=null,this._create()},append:function(){return this.callBase(this.renderer.getDefsSvg())},dispose:function(){while(this.element.firstChild)this.element.removeChild(this.element.firstChild);return this.callBase(),this},applySettings:function(n){return n=n||{},n.id=i.getNextDefsSvgId(),this.$element.attr({id:n.id,x:n.x||null,y:n.y||null,width:n.width||null,height:n.height||null}),this.ref=n.id?l(n.id,this.renderer.pathModified):null,this._update(n),this}}),ot=st.inherit({_create:function(){var n=this,t=n._gaussianBlur=o("feGaussianBlur"),i=n._offset=o("feOffset"),r=n._flood=o("feFlood"),u=n._composite=o("feComposite"),e=o("feComposite");f(t,{"in":"SourceGraphic",result:"gaussianBlurResult"}),f(i,{"in":"gaussianBlurResult",result:"offsetResult"}),f(r,{result:"floodResult"}),f(u,{"in":"floodResult",in2:"offsetResult",operator:"in",result:"compositeResult"}),f(e,{"in":"SourceGraphic",in2:"compositeResult",operator:"over"}),n.element.appendChild(t),n.element.appendChild(i),n.element.appendChild(r),n.element.appendChild(u),n.element.appendChild(e)},_update:function(n){f(this._gaussianBlur,{stdDeviation:n.blur||0}),f(this._offset,{dx:n.dx||0,dy:n.dy||0}),f(this._flood,{"flood-color":n.color,"flood-opacity":n.opacity})}});s.SvgRenderer=v.inherit({ctor:function(n){var t=this;n=n||{},t._setAnimationOptions(n.animation||{}),t.animationController=new s.AnimationController,t.pathModified=n.pathModified,t.rtl=!!n.rtl,t.cssClass=n.cssClass||"",t.recreateCanvas(n.width,n.height)},dispose:function(){var n=this;n.detachContainer(),n.svgRoot&&(n.svgRoot.remove(),n.svgRoot=null),n.animationController.dispose(),n.animOptions=null,n.animationController=null},_setAnimationOptions:function(n){this.animOptions={enabled:!0,duration:1e3,easing:"easeOutCubic"},"enabled"in n&&(this.animOptions.enabled=n.enabled),"duration"in n&&(this.animOptions.duration=n.duration),"easing"in n&&(this.animOptions.easing=n.easing)},animationEnabled:function(){return!!this.animOptions.enabled},updateAnimationOptions:function(t){this._setAnimationOptions(n.extend(this.animOptions||{},t))},stopAllAnimations:function(n){n?this.animationController.lock():this.animationController.stop()},detachContainer:function(){var n=this;n.svgRoot&&n.svgRoot.detach(),n.defsSvg&&(n.defsSvg.remove(),n.defsSvg=null),n.drawn=null},recreateCanvas:function(n,t,i){n>=0&&t>=0&&(this.svgRoot?this.svgRoot.applySettings({width:n,height:t}):(this.cssClass=i||this.cssClass,this.svgRoot=new y(this,{width:n,height:t,"class":this.cssClass,direction:this.rtl?"rtl":"ltr"}),this.animationController.element=this.svgRoot.element),this.defsSvg&&this.defsSvg.clear("pattern"))},resize:function(n,t){var i=this.getRoot();i&&n>0&&t>0&&i.applySettings({width:n,height:t})},getRoot:function(){return this.svgRoot},isInitialized:function(){return!!this.svgRoot},draw:function(n){n&&!this.drawn&&(n.appendChild(this.getRoot().element),this.drawn=!0)},updateParams:function(n,t){t&&t.strokeWidth&&(n.strokeWidth=t.strokeWidth)},animateElement:function(n,t,i){this.animationController.animateElement(n,t,i)},createRect:function(t,i,r,u,f,e){var o={x:t,y:i,width:r,height:u,rx:f,ry:f};return e&&!e.inh&&n.extend(o,e),this.updateParams(o,e),new w(this,o)},createSegmentRect:function(t,i,r,u,f,e,o){var s=n.extend({},o||{},{x:t,y:i,width:r,height:u,rx:f,ry:f,segments:e});return new b(this,s)},createClipRect:function(n,t,i,r){var u={x:n,y:t,w:i,h:r,fill:"none",stroke:"none",strokeWidth:0};return new et(this,u)},createPattern:function(n,t){return(t=t||{},t.direction=(t.direction||"").toLowerCase(),t.direction!=="right"&&t.direction!=="left")?{id:n,append:function(){return this},clear:function(){},dispose:function(){}}:new ft(this,{hatching:t,color:n})},createImage:function(t,i,r,u,f,e){var o=n.extend({},e||{},{x:t,y:i,width:r,height:u});return new p(this,o,f,o.location)},createLine:function(t,i,r,u,f){var o={points:[t,i,r,u]};return f&&!f.inh&&n.extend(o,f),this.updateParams(o,f),new e(this,o)},createPath:function(t,i){var r={points:t};return i&&!i.inh&&n.extend(r,i),this.updateParams(r,i),new e(this,r)},createSimplePath:function(n){return new r(this,"path",n)},createBezierPath:function(t,i){var r={points:t};return i&&!i.inh&&n.extend(r,i),this.updateParams(r,i),new a(this,r)},createArea:function(t,i){var r={points:t};return i&&!i.inh&&n.extend(r,i),this.updateParams(r,i),new d(this,r)},createBezierArea:function(t,i){var r={points:t};return i&&!i.inh&&n.extend(r,i),this.updateParams(r,i),new g(this,r)},createCircle:function(t,i,r,u){var f={cx:t,cy:i,r:r};return u&&!u.inh&&n.extend(f,u),new tt(this,f)},createArc:function(t,i,r,u,f,e,o){var s={x:t,y:i,outerRadius:r,innerRadius:u,startAngle:f,endAngle:e};return o&&!o.inh&&n.extend(s,o),this.updateParams(s,o),new nt(this,s)},createText:function(t,i,r,u){var f={x:i,y:r,text:t};return u&&!u.inh&&n.extend(f,u),new it(this,f)},createGroup:function(n){return new ut(this,n)},createFilter:function(n){var t=n==="shadow"?ot:null;return t?new t(this):null},getDefsSvg:function(){return this.defsSvg=this.defsSvg||new r(this,"defs").append()},svg:function(){return this.svgRoot.$element.parent().html()}}),s._svgBuildPath=ht,s._svgProcessCircleSettings=ct,s._svgRendererInternals={BaseSvgElement:r,RootSvgElement:y,RectSvgElement:w,ImageSvgElement:p,PathSvgElement:e,AreaSvgElement:d,BezierSvgElement:a,BezierAreaSvgElement:g,CircleSvgElement:tt,TextSvgElement:it,TspanSvgElement:rt,GroupSvgElement:ut,ArcSvgElement:nt,RectSvgBaseElement:h,SegmentRectSvgElement:b,ClipRectSvgElement:et,PatternSvgElement:ft,ShadowFilterSvgElement:ot}}(jQuery,DevExpress),function(n,t){function d(n){var t=u.createElement(n);return k.appendChild(t)}function tt(n){return n>=.002?n:n===null?1:.002}function yt(n){for(var i=0,r=n.length,t=[];i<r;)t.push("l",n[i++].toFixed(0),n[i++].toFixed(0));return r?(t[0]="m",t.push("x e"),t=t.join(" ")):t="",t}function pt(n,t,i){return{cx:n,cy:t,r:i/2}}var o=t.viz.renderers,f=t.utils,u=document,i=o._svgRendererInternals,k=u.createDocumentFragment(),c,l=[],g=["position","display","visibility","filter","margin","marginTop","marginLeft","marginRight","marginBottom","whiteSpace","clip","overflow"],s=["stroke","fill","opacity","strokeWidth","align","dashStyle"],nt={x:0,y:0,width:1,height:1,position:"absolute",behavior:"url(#default#VML)",display:"inline-block",xmlns:"urn:schemas-microsoft-com:vml"},y="dx-vml-clip-rect",e=function(t,i){return n.extend(!0,i||{},nt,t)},a=function(t,i,r){var u;return f.isDefined(t)&&(f.isNumber(t)?u={angle:t,x:i||0,y:r||0}:n.isArray(t)?u={angle:t[0]||0,x:t[1]||0,y:t[2]||0}:f.isObject(t)&&(u={angle:t.angle||0,x:t.x||0,y:t.y||0})),u},it=function(n,t,i){var r=n.element,f,u=t[i];(i==="opacity"||i==="fillOpacity")&&r.fill&&(r.fill.opacity=tt(u)),i==="joinStyle"&&r.stroke&&(r.stroke.joinStyle=u),(i==="opacity"||i==="strokeOpacity")&&r.stroke&&(r.stroke.opacity=u>=.002?u:u===null?1:.002),i==="dashstyle"&&r.stroke&&(r.stroke.dashstyle=u)},p=function(n){var r,t,i,e=n.tagName.toLowerCase(),o,u,f;if(!n.className||n.className.indexOf(y)===-1){if(e==="div"){if(n.childNodes.length>0)for(t={},r=0;r<n.childNodes.length;r++)(i=p(n.childNodes[r]),i)&&(t.left=t.left===undefined||i.left<t.left?i.left:t.left,t.top=t.top===undefined||i.top<t.top?i.top:t.top,t.right=t.right===undefined||i.right>t.right?i.right:t.right,t.bottom=t.bottom===undefined||i.bottom>t.bottom?i.bottom:t.bottom)}else if(e==="shape"||e==="vml:shape"){for(o=(n.path.value||n.path).match(/[-0-9]+/g),t={},i=n.getBoundingClientRect(),r=0;r<o.length;r++)u=parseInt(o[r]),r%2?(t.top=t.top===undefined||u<t.top?u:t.top,t.bottom=t.bottom===undefined||u>t.bottom?u:t.bottom):(t.left=t.left===undefined||u<t.left?u:t.left,t.right=t.right===undefined||u>t.right?u:t.right);t.left=t.left||0,t.top=t.top||0,t.right=t.right||0,t.bottom=t.bottom||0,i.right-i.left<=1&&i.top-i.bottom<=1?(t.right=t.right+i.left,t.bottom=t.bottom+i.top,t.left=t.left+i.left,t.top=t.top+i.top):(t.right=t.right-t.left+i.left,t.bottom=t.bottom-t.top+i.top,t.left=i.left,t.top=i.top),f=Math.ceil(parseFloat(n.strokeweight)/2),f&&f>1&&(t.left-=f,t.top-=f,t.right+=f,t.bottom+=f)}else t=n.getBoundingClientRect();return t}},r={isVml:function(){return!0},dispose:function(){this.childElements=null,this._style=null,this._fullSettings=null,this.callBase()},defaultSettings:function(n){return e(n,this.callBase?this.callBase():{})},createElement:function(n){return this._nodeName=n,this.childElements=[],this._fullSettings={},this.isVml()?d("vml:"+n):u.createElement(n)},append:function(t){var i=t||this.renderer.getRoot();return i&&(i.element.appendChild(this.element),i.childElements.push(this),this.parentElement&&this.parentElement.childElements.splice(n.inArray(this,this.parentElement.childElements),1),this.parentElement=i),(i===this.renderer.getRoot()||i._isAppended)&&this.appendComplete(),this},insertBefore:function(t){var i=t.parentElement;return i.element.insertBefore(this.element,t.element),this.parentElement=i,i.childElements.splice(n.inArray(t,i.childElements),0,this),i._isAppended&&this.appendComplete(),this},remove:function(){return this.callBase.apply(this,arguments),this.parentElement&&(this.parentElement.childElements.splice(n.inArray(this,this.parentElement.childElements),1),this.parentElement=null),this},detach:function(){return this.callBase.apply(this,arguments),this._delayAttributes(["opacity"]),this._onDetach(),this.parentElement&&(this.parentElement.childElements.splice(n.inArray(this,this.parentElement.childElements),1),this.parentElement=null),this},clear:function(){return this.callBase.apply(this,arguments),n.each(this.childElements,function(n,t){t._delayAttributes(["opacity"]),t._onDetach(),t.parentElement=null}),this.childElements=[],this},applyStyle:function(n){if(this.callBase(n),n.opacity&&(this.element.style.opacity=n.opacity),n.clip)try{this.element.style.clip=n.clip}catch(t){}},_fillAttributesFromParentAndCurrentStyle:function(t){var u=this.element,e=this.parentElement,r,h={strokeWidth:"stroke-width"},i,o,f={};if(e)for(r=0;r<s.length;r++)i=s[r],!this.settings[i]&&e._fullSettings[i]&&(f[i]=e._fullSettings[i]);if(u.style&&u.currentStyle)for(r=0;r<s.length;r++)i=s[r],o=h[i]||i,u.currentStyle[o]&&(f[i]=u.currentStyle[o]);n.extend(this._fullSettings,this.settings,f),this.isVml()&&n.extend(t,this._normalizeSettings(f))},_applyAttributes:function(t){var i,r;if(t&&t.arcsize!==undefined){try{this.element.setAttribute("arcsize",t.arcsize)}catch(u){}delete t.arcsize}if(t&&t["class"]&&(this.element.className=t["class"],delete t["class"]),this._isAppended){if(t=t||this._delayedAttributes,t){if(this._fillAttributesFromParentAndCurrentStyle(t),this.isVml()){for(i in t)r=t[i],i==="opacity"||i==="fillOpacity"||i==="strokeOpacity"||i==="dashstyle"||i==="joinStyle"?it(this,t,i):this.element[i]=r;n.each(this.element.children,function(n,t){t.style.behavior="url(#default#VML)",t.style.display="inline-block",t.xmlns="urn:schemas-microsoft-com:vml"})}delete this._delayedAttributes}}else this._delayedAttributes=t},_onDetach:function(){this._isAppended=!1,n.each(this.childElements,function(n,t){t._onDetach()})},appendComplete:function(){this.renderer.isElementAppendedToPage(this)?(this._isAppended=!0,this._applyAttributes(),n.each(this.childElements,function(n,t){t.appendComplete()}),this.parentElement instanceof b&&this.parentElement._clipRect&&this.parentElement._clipRect!==this&&(this.parentElement._clipRect._isAppended?this.parentElement._clipRect.toForeground():this.parentElement._clipRect.append(this.parentElement))):(l.push(this),n(this.element).data("vmlNeedAppendComplete",!0),c===undefined&&(c=setTimeout(function(){c=undefined;var t=l;l=[],n.each(t,function(){n(this.element).data("vmlNeedAppendComplete")&&!this._isAppended&&this.appendComplete()})},200)))},_delayAttributes:function(t){var r,u,i,f=this.settings||{};for(t=t||[],this._delayedAttributes=this._delayedAttributes||{},i=0;i<t.length;i++)r=t[i],u=f[r],u&&(this._delayedAttributes[r]=u);n.each(this.childElements||[],function(n,i){i._delayAttributes(t)})},_normalizeSettings:function(t){var s,u={},f={},e,o,i,r;for(s in t)if(i=s,r=t[i],i==="x"||i==="translateX")o=t.x||0,t.translateX&&(o+=t.translateX),u.left=o+"px";else if(i==="y"||i==="translateY")o=t.y||0,t.translateY&&(o+=t.translateY),u.top=o+"px";else if(i==="width")u.width=r+"px";else if(i==="behavior")u[i]=r;else if(i==="height")u.height=r+"px";else if(i==="align")continue;else if(i==="scale")continue;else if(n.inArray(i,g)!=-1)u[i]=r!==null?r:"";else if(i==="font"){if(!n.isPlainObject(r))continue;n.each(r,function(n){var t,i;switch(n){case"color":t="fill";break;case"opacity":t="opacity";break;case"cursor":t=n;break;default:i=n.charAt(0),t="font"+n.replace(i,i.toUpperCase())}t&&(u[t]=r[n])})}else if(i==="style")n.extend(!0,u,r);else if(i==="rotate")this._rotate=r;else if(i==="clipId"){if(e=this.renderer.getClipRect(r,this),e){var a=e.width,v=e.height,h=e.x,c=e.y,y=a+h,p=v+c,l=this.renderer._getSize();u.width=l.width,u.height=l.height,u.clip="rect("+c+"px, "+y+"px, "+p+"px, "+h+"px)"}}else if(i==="segments")continue;else i==="fill"?(f.filled=r==="none"?"f":"t",f.fillcolor=r==="grey"?"#808080":r):i==="opacity"?f.opacity=r<.002?r:r:i==="stroke"?(f.stroked=r==="none"?"f":"t",f.strokecolor=r):i==="strokeWidth"?f.strokeweight=r+"px":i==="lineJoin"?f.joinStyle=r:i==="dashStyle"?(r=(r||"").toLowerCase(),f.dashstyle=r):f[i]=r;return this._style=u,f},_getBBox:function(){var u,f,n,e,i=0,r=0,t=this.element,o;try{n=p(t),u=n.right-n.left,f=n.bottom-n.top,o=this.element.parentNode||this.renderer.getRoot().element,e=o.getBoundingClientRect(),i=n.left-e.left,r=n.top-e.top,t.tagName.toLowerCase()==="div"&&(i=i-(parseInt(t.style.left,10)||0),r=r-(parseInt(t.style.top,10)||0))}catch(s){u=t.offsetWidth||0,f=t.offsetHeight||0}return{x:i,y:r,width:u,height:f,isEmpty:!i&&!r&&!u&&!f}},getBBox:function(){return this._getBBox()},sharpEdges:function(){}},rt=function(n){switch(n){case"M":return"m";case"L":return"l";case"Z":return"x e"}return n},h={defaultSettings:function(){return n.extend(this.callBase(),{coordsize:"1,1"})},getNodeName:function(){return"shape"},getPathAttributeName:function(){return"path"},customizeSegments:function(t){var i=t;return t&&(i=n.map(t,function(n){var i,r=[],u=rt(n[0]);for(r.push(u),i=1;i<n.length;i++)r.push(Math.floor(n[i]));return[r]})),i}},ut=i.BaseSvgElement.inherit(r).inherit({isVml:function(){return!1},defaultSettings:function(){return{width:0,height:0,position:"relative",display:"inline-block",overflow:"hidden",stroke:"none",strokeWidth:0,fill:"none"}},ctor:function(n,t){this.callBase(n,"div",t)}}),ft=i.BaseSvgElement.inherit(i.RectSvgBaseElement).inherit(r).inherit({ctor:function(n,t){this.callBase(n,"image",t)},defaultSettings:function(){return n.extend(this.callBase(),{strokeWidth:0,fill:"none",stroke:"none"})},adjustSettings:function(){var n=this.defaultSettings();this.callBase(),this.settings.href&&(this.settings.src=this.settings.href,delete this.settings.href),this.settings.fill=n.fill,this.settings.stroke=n.stroke,this.settings.strokeWidth=n.strokeWidth}}),et=i.BaseSvgElement.inherit(i.RectSvgBaseElement).inherit(r).inherit({defaultSettings:function(){return e({stroked:"f",strokeWidth:0,rx:0,ry:0})},recreateElement:function(t){var r,i;this._nodeName=t,r=this.$element.parent()[0],r?(i=this.$element,this.element=this.createElement(t),this.$element=n(this.element),this.$element.insertBefore(i),i.remove()):(this.element=this.createElement(t),this.$element=n(this.element)),this.applySettings()},_adjustArcSize:function(){var t=this.settings,f=t.rx||0,e=t.ry||0,o=t.width,s=t.height,r,u,i;(t.rx!==undefined||t.ry!==undefined)&&(r=Math.max(f,e),u=Math.max(o,s)/2,i=r/u,t.arcsize=i,n.isNumeric(i)&&i!=0?this._nodeName!=="roundrect"&&this.recreateElement("roundrect"):this._nodeName==="roundrect"&&this.recreateElement("rect"),delete t.rx,delete t.ry)},_adjustRotation:function(){var n=this.settings,v=this.settings.rotate,e,o,s,h,i,r,c,l,u,f,t;t=a(v,n.x,n.y),t&&(e=t.angle,i=t.x,r=t.y,o=e*Math.PI/180,s=Math.cos(o),h=Math.sin(o),u=n.x+(n.translateX||0)+n.width/2,f=n.y+(n.translateY||0)+n.height/2,l=(u-i)*s-(f-r)*h+i-u,c=(u-i)*h+(f-r)*s+r-f,this.settings.marginLeft=Math.round(l)+"px",this.settings.marginTop=Math.round(c)+"px",this.settings.rotation=e)},adjustSettings:function(){this.callBase(),this._adjustArcSize(),this._adjustRotation()},ctor:function(n,t){this.callBase(n,"rect",t)}}),v=i.PathSvgElement.inherit(r).inherit(h).inherit({prepareSegments:function(t){var i=this,w=t.rotate,l,u,f,v,e,o,s,h,c,y,p,r;this.callBase(t),v=i.segments,r=a(w,t.x,t.y),r&&(l=r.angle,u=r.x,f=r.y,i.segments&&(e=l*Math.PI/180,o=Math.cos(e),s=Math.sin(e),i.segments=n.map(i.segments,function(n){return n.length===3?(h=n[1],c=n[2],y=(h-u)*o-(c-f)*s+u,p=(h-u)*s+(c-f)*o+f,[[n[0],Math.floor(y),Math.floor(p)]]):[n]}),i.combinePathParams(t),i.segments=v))}}),ot=i.BaseSvgElement.inherit(r).inherit({ctor:function(n,t){this.callBase(n,"shape",t)},defaultSettings:function(){return e({coordsize:"1,1"})},adjustSettings:function(){var n=this.settings;n.d!==undefined&&(n.path=n.d,delete n.d)}}),st=v.inherit({defaultSettings:function(){var n=this.callBase();return e({points:{x:0,y:0}},n)},ctor:function(n,t){this.closePath=!0,this.callBase(n,t)}}),ht=i.SegmentRectSvgElement.inherit(r).inherit(h).inherit({defaultSettings:function(){var n=this.callBase();return n.lineJoin="miter",delete n.fill,delete n.stroke,delete n.strokecolor,delete n.stroked,n},prepareSegments:function(){this.callBase(),this.segments=this.customizeSegments(this.segments),this.settings.x=0,this.settings.y=0,this.settings.width=1,this.settings.height=1},applySettings:function(n){var t=n.x,i=n.y,r=n.width,u=n.height;return this.callBase(n),this.settings.x=t,this.settings.y=i,this.settings.width=r,this.settings.height=u,this}}),w=i.BezierSvgElement.inherit(r).inherit(h),ct=w.inherit({defaultSettings:function(){var n=this.callBase();return e({points:{x:0,y:0}},n)},ctor:function(n,t){this.closePath=!0,this.callBase(n,t)}}),lt=i.ArcSvgElement.inherit(r).inherit(h).inherit({createArcSegments:function(n,t,i,r,u,f,e){var o=n+r*Math.cos(u),s=t-r*Math.sin(u),h=n+r*Math.cos(f),c=t-r*Math.sin(f),l=n+i*Math.cos(f),a=t-i*Math.sin(f),v=n+i*Math.cos(u),y=t-i*Math.sin(u);return[["wr",n-i,t-i,n+i,t+i,l,a,v,y],[e?"wr":"at",n-r,t-r,n+r,t+r,o,s,h,c],["x e"]]}}),at=i.BaseSvgElement.inherit(r).inherit({defaultSettings:function(){return e({cx:0,cy:0,r:0})},applySettings:function(n){return n.cx=n.cx||n.x,n.cy=n.cy||n.y,this.callBase(n)},adjustSettings:function(){var n,t,i;(this.settings.cx!==undefined||this.settings.cy!==undefined||this.settings.r!==undefined)&&(n="r"in this.settings?this.settings.r:this.settings.width/2,t="cx"in this.settings?this.settings.cx:this.settings.x+this.settings.width/2,i="cy"in this.settings?this.settings.cy:this.settings.y+this.settings.width/2,this.settings.x=t-n,this.settings.y=i-n,this.settings.width=this.settings.height=n*2,delete this.settings.cx,delete this.settings.cy,delete this.settings.r)},ctor:function(n,t){this.callBase(n,"oval",t)}}),vt=i.BaseSvgElement.inherit(r).inherit({isVml:function(){return!1},defaultSettings:function(){return{x:0,y:0,position:"absolute",whiteSpace:"nowrap"}},ctor:function(n,t){this.callBase(n,"span",t)},adjustSettings:function(){var i,t=this.settings;t.font&&(t.fill=t.fill||t.font.color,t.opacity=t.opacity||t.font.opacity),"text"in t&&(i=f.isDefined(t.text)?t.text:"",i=i.toString().replace(/\r/g,""),i=i.replace(/\n/g,"<br/>"),n(this.element).html(i),delete t.text),this.renderer.rtl&&n(this.element).css("direction","rtl")},updateText:function(n){this.applySettings({text:f.isDefined(n)?n:""})},_applyAttributes:function(n){var tt,it;this.callBase(n),n=this._fullSettings;var rt=n.rotate,t=0,k,d,i=1,r=0,y=0,p=1,ft,w,h,g=n.y+(n.translateY||0),nt=n.x+(n.translateX||0),ut=n.align,f=this.getBBox(),l=this._style||{},s=0,c=0,o,b,v,u,e;this._oldRotate&&!f.isEmpty?(h=this._oldRotate.angle*Math.PI/180,y=Math.sin(h),p=Math.cos(h),(this._oldRotate.angle|0)%90!=0?(this._oldRotate.angle|0)%45==0?(u=f.width,e=f.height):(w=Math.abs(Math.tan(h)),tt=(f.width-f.height*w)/(1-w*w),it=f.width-tt,e=Math.abs(it/y),u=Math.abs(tt/p)):(e=Math.abs(f.height*p-f.width*y),u=Math.abs(f.width*p-f.height*y))):(u=f.width,e=f.height),(e||u)&&(v=a(rt,nt,g),this._oldRotate=v,v&&(t=v.angle,k=v.x,d=v.y,Math.abs(t)>360&&(t=t%360),t<0&&(t=t+360),t?(h=t*Math.PI/180,i=Math.cos(h),r=Math.sin(h),l.filter='progid:DXImageTransform.Microsoft.Matrix(sizingMethod="auto expand", M11 = '+i.toFixed(5)+", M12 = "+(-r).toFixed(5)+", M21 = "+r.toFixed(5)+", M22 = "+i.toFixed(5)+")"):(l.filter="",this._oldRotate=null),s=(nt-k)*(i-1)-(g-d)*r,c=(nt-k)*r+(g-d)*(i-1)),o=e*(.55+.45/2),t<90?(c-=o*i,s-=(e-o)*r):t<180?(c+=(e-o)*i,s+=u*i-(e-o)*r):t<270?(c+=(e-o)*i+u*r,s+=u*i+o*r):(c+=u*r-o*i,s+=o*r),t&&this.renderer.rtl&&(s-=u-(e*Math.abs(r)+u*Math.abs(i))),b={center:.5,right:1}[ut],b&&(s-=u*b*i,c-=u*b*r),l.marginLeft=Math.round(s)+"px",l.marginTop=Math.round(c)+"px"),n.fill&&n.fill!=="none"&&(l.color=n.fill),n.opacity&&(this.element.style.filter="alpha(opacity="+n.opacity*100+")"),this.applyStyle(l)}}),b=i.BaseSvgElement.inherit(r).inherit({isVml:function(){return!1},defaultSettings:function(){return{x:0,y:0,position:"absolute"}},ctor:function(n,t){this.callBase(n,"div",t)},adjustSettings:function(){if(this.settings.clipId||this._clipRect){var n=this.renderer.getClipRect(this.settings.clipId,this);this._clipRect?n?this._clipRect.applySettings({x:n.x,y:n.y,width:n.width,height:n.height}):(this._clipRect.remove(),this._clipRect=null):this._clipRect=this.renderer.createRect(n.x,n.y,n.width,n.height,0,{fill:"none",opacity:.002,"class":y}),this._clipRect&&this.childElements.length&&this._clipRect.append(this)}},applySettings:function(t){var i;return t=t||{},i=t.rotate,i&&(f.isNumber(i)&&(i=[i,t.x||0,t.y||0]),n.each(this.childElements,function(n,t){t.applySettings({rotate:i})})),delete t.rotate,delete t.x,delete t.y,this.callBase(t),n.each(this.childElements||[],function(n,t){t.applySettings({})}),this},getBBox:function(){return this._getBBox()},update:function(){if(this.settings.clipId){var n=this.getBBox();this.applyStyle({left:n.x+(this.settings.translateX||0),right:n.y+(this.settings.translateY||0),width:n.width,height:n.height})}}});o.VmlRenderer=o.SvgRenderer.inherit({ctor:function(n){if(n=n||{},n.animation={enabled:!1},u.namespaces&&!u.namespaces.vml){u.namespaces.add("vml","urn:schemas-microsoft-com:vml");var t="vml\\:fill, vml\\:path, vml\\:shape, vml\\:stroke, vml\\:rect, vml\\:oval{ behavior:url(#default#VML); display: inline-block; };";try{u.createStyleSheet().cssText=t}catch(i){u.styleSheets[0].cssText+=t}}this._clipRects={},this.cssClass=n.cssClass||"",this.callBase(n)},dispose:function(){this.callBase(),this._clipRects=null,this._size=null},updateAnimationOptions:n.noop,draw:function(n){var t=this.getRoot();this.callBase(n),t&&t.appendComplete()},recreateCanvas:function(n,t,i){n>=0&&t>=0&&(this._size={width:n,height:t},this.svgRoot?this.svgRoot.applySettings({width:n,height:t}):(this.cssClass=i||this.cssClass,this.svgRoot=new ut(this,{width:n,height:t,"class":this.cssClass})),this.defsSvg&&this.defsSvg.clear())},_getSize:function(){return this._size||{}},isElementAppendedToPage:function(t){return n(t.element).closest(u.documentElement).length},createRect:function(t,i,r,u,f,e){var o=n.extend(!0,{},e||{},{x:t,y:i,width:r,height:u,rx:f,ry:f});return new et(this,o)},createSegmentRect:function(t,i,r,u,f,e,o){var s=n.extend({},o||{},{x:t,y:i,width:r,height:u,rx:f,ry:f,segments:e});return new ht(this,s)},createClipRect:function(t,i,r,u){var e=f.getNextDefsSvgId(),o=[],s={id:e,x:t,y:i,width:r,height:u,addElement:function(t){var i=!1;n.each(o,function(){if(this===t)return i=!0,!1}),i||o.push(t)},append:function(){return this},remove:function(){},dispose:function(){},updateRectangle:function(t){return"x"in t&&(this.x=t.x),"translateX"in t&&(this.x+=t.translateX),"y"in t&&(this.y=t.y),"translateY"in t&&(this.y+=t.translateY),"width"in t&&(this.width=t.width),"height"in t&&(this.height=t.height),n.each(o,function(){this.applySettings({clipId:e})}),this}};return this._clipRects[e]=s,s},getClipRect:function(n,t){var i=this._clipRects[n];return i&&t&&i.addElement(t),this._clipRects[n]},createImage:function(t,i,r,u,f,e){var o=n.extend(!0,{},e&&!e.inh?e:{},{x:t,y:i,width:r,height:u,href:f});return new ft(this,o)},createLine:function(t,i,r,u,f){var e=n.extend(!0,{},f&&!f.inh?f:{},{points:[t,i,r,u]});return new v(this,e)},createPath:function(t,i){var r=n.extend(!0,{},i&&!i.inh?i:{},{points:t});return new v(this,r)},createSimplePath:function(n){return new ot(this,n)},createBezierPath:function(t,i){var r=n.extend(!0,{},i&&!i.inh?i:{},{points:t});return new w(this,r)},createArea:function(t,i){var r=n.extend(!0,{},i&&!i.inh?i:{},{points:t});return new st(this,r)},createBezierArea:function(t,i){var r=n.extend(!0,{},i&&!i.inh?i:{},{points:t});return new ct(this,r)},createCircle:function(t,i,r,u){var f=n.extend(!0,{},u&&!u.inh?u:{},{cx:t,cy:i,r:r});return new at(this,f)},createArc:function(t,i,r,u,f,e,o){var s=n.extend(!0,{},o&&!o.inh?o:{},{x:t,y:i,outerRadius:r,innerRadius:u,startAngle:f,endAngle:e});return new lt(this,s)},createText:function(t,i,r,u){var f=n.extend(!0,{},u&&!u.inh?u:{},{x:i,y:r,text:t});return new vt(this,f)},createGroup:function(n){return new b(this,n)},createPattern:function(n){return{id:n,append:function(){return this},clear:function(){},dispose:function(){}}},createFilter:function(n){return n==="shadow"?{ref:null,append:function(){return this},dispose:function(){return this},applySettings:function(){return this}}:null},svg:function(){return""}}),o._vmlBuildPath=yt,o._vmlProcessCircleSettings=pt}(jQuery,DevExpress),function(n,t){function u(){return!(r.msie&&r.version<9)||!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect}var i=t.viz.renderers,r=t.browser;u()?(i.Renderer=i.SvgRenderer,i.buildPath=i._svgBuildPath,i.processCircleSettings=i._svgProcessCircleSettings):(i.Renderer=i.VmlRenderer,i.buildPath=i._vmlBuildPath,i.processCircleSettings=i._vmlProcessCircleSettings),i.isSvg=u}(jQuery,DevExpress),function(n){var t=n.viz.renderers,u=n.Class,i=function(){},r={easeOutCubic:function(n,t,i){return n===1?i:(1-Math.pow(1-n,3))*(i-t)+ +t},linear:function(n,t,i){return n===1?i:n*(i-t)+ +t}},f;t.easingFunctions=r,t.animationSvgStep={points:function(n,t,i,r,u){for(var e=t.from,l=t.to,c=[],o,s,h,f=0;f<e.length;f++){if(s=[e[f][0]],e[f].length>1)for(o=1;o<e[f].length;o++)s.push(r(i,e[f][o],l[f][o]));c[f]=s.join(" ")}h=c.join(" "),u.d=t.end&&i===1?t.end:h,n.element.setAttribute("d",h)},arc:function(n,t,i,r){var f=t.from,o=t.to,e={},u;for(u in f)e[u]=r(i,f[u],o[u]);n.applySettings(e)},transform:function(n,t,i,r,u){var s=t.translate,e=t.rotate,h=t.scale,o=[],f=n.settings;s?(u.translateX=r(i,s.x.from,s.x.to),u.translateY=r(i,s.y.from,s.y.to),o.push("translate("+u.translateX+","+u.translateY+")")):(f.translateX||f.translateY)&&o.push("translate("+(f.translateX||0)+","+(f.translateY||0)+")"),e?(u.rotate={angle:r(i,e.angle.from,e.angle.to),x:e.x,y:e.y},o.push("rotate("+u.rotate.angle+","+e.x+","+e.y+")")):f.rotate&&o.push("rotate("+f.rotate.angle+","+(f.rotate.x||0)+","+(f.rotate.y||0)+")"),h?(u.scale={x:r(i,h.x.from,h.x.to),y:r(i,h.y.from,h.y.to)},o.push("scale("+u.scale.x+","+u.scale.y+")")):f.scale&&o.push("scale("+f.scale.x+","+f.scale.y+")"),n.element.setAttribute("transform",o.join())},base:function(n,t,i,r,u,f){u[f]=r(i,t.from,t.to),n.element.setAttribute(f,u[f])},_:i,complete:function(n,t){n.applySettings(t)}},f=u.inherit({ctor:function(n,i,u){var f=this;f._progress=0,f.element=n,f.params=i,f.options=u,f.duration=u.partitionDuration?u.duration*u.partitionDuration:u.duration,f._animateStep=u.animateStep||t.animationSvgStep,f._easing=r[u.easing]||r.easeOutCubic,f._currentParams={},f.tick=f._start},_calcProgress:function(n){return Math.min(1,(n-this._startTime)/this.duration)},_step:function(n){var t=this,r=t._animateStep,i,u;t._progress=t._calcProgress(n);for(i in t.params)t.params.hasOwnProperty(i)&&(u=r[i]||r.base,u(t.element,t.params[i],t._progress,t._easing,t._currentParams,i));return(t.options.step&&t.options.step(t._easing(t._progress,0,1),t._progress),t._progress===1)?t.stop():!0},_start:function(n){return this._startTime=n,this.tick=this._step,!0},_end:function(n){var t=this;t.stop=i,t.tick=i,t._animateStep.complete&&t._animateStep.complete(t.element,t._currentParams),t.options.complete&&!n&&t.options.complete()},tick:function(){return!0},stop:function(n,t){var i=this.options;if(!n&&i.repeatCount&&--i.repeatCount>0)return this.tick=this._start,!0;this._end(t)}}),t.AnimationController=u.inherit(function(){var n=1e3/60,t=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){setTimeout(t,n)};return{ctor:function(){var n=this;n.requestAnimationFrame=t,n._animationCount=0,n._timerId=null,n._animations={}},_loop:function(){var n=this,t=n._animations,r=0,u=+new Date,i;for(i in t)t.hasOwnProperty(i)&&(t[i].tick(u)||delete t[i],r++);if(r===0){n.stop();return}n._timerId=n.requestAnimationFrame.call(null,function(){n._loop()},n.element)},addAnimation:function(n){var t=this;t._animations[t._animationCount++]=n,t._timerId||(clearTimeout(t._startDelay),t._startDelay=setTimeout(function(){t._timerId=1,t._loop()},0))},animateElement:function(n,t,i){n&&t&&i&&(n.animation&&n.animation.stop(!0),this.addAnimation(n.animation=new f(n,t,i)))},dispose:function(){this.stop(),this.element=null},stop:function(){this._animations={},this._animationCount=0,clearTimeout(this._startDelay),this._timerId=null},lock:function(){var n=this._animations,t;for(t in n)n.hasOwnProperty(t)&&n[t].stop(!0,!0);this.stop()}}}())}(DevExpress),function(n){n.viz.charts={series:{}}}(DevExpress),function(n){n.viz.charts.consts={dataTypes:{STRING:"string",NUMERIC:"numeric",DATETIME:"datetime"},axisTypes:{DISCRETE:"discrete",CONTINUOUS:"continuous",LOGARITHMIC:"logarithmic"}}}(DevExpress),function(n,t){var o=t.viz,h=new o.core.ParseUtils,s=o.charts.consts,f=s.dataTypes,u=s.axisTypes,r=t.utils,e=n.each,i=r.isDefined,c=function(n,t){function i(n,t,r,u){if(t<r){var f=Math.floor((t+r)/2);i(n,t,f,u),i(n,f+1,r,u),l(n,t,f,r,u)}}var r=n.length;return i(n,0,r-1,t),n},l=function(n,t,r,u,f){for(var c=new Array(u-t+1),s=t,h=r+1,e,o=0;s<=r&&h<=u;)n[s][f]<=n[h][f]||!i(n[h][f])?(c[o]=n[s],s++):(c[o]=n[h],h++),o++;if(s>r)for(e=h;e<=u;e++,o++)c[o]=n[e];else for(e=s;e<=r;e++,o++)c[o]=n[e];for(e=0;e<=u-t;e++)n[e+t]=c[e];return n};o.charts.DataValidator=t.Class.inherit({ctor:function(t,i,r,u){var f=this;i=i||[[]],t||(f._nullData=!0),f.groups=i,f.data=t||[],f._parsers={},f._errorShowList={},f._skipFields={},f.options=u||{},f.incidentOccured=r,f.userArgumentCategories=f.groups.length&&f.groups[0].length&&f.groups[0][0].getArgumentCategories(),r||(f.incidentOccured=n.noop)},validate:function(){var t=this;return t._data=t.data,(!r.isArray(t.data)||t._nullData)&&t._incorrectDataMessage(),t.groups.argumentType=null,t.groups.argumentAxisType=null,n.each(t.groups,function(t,i){i.valueType=null,i.valueAxisType=null,n.each(i,function(n,t){t.updateDataType({})})}),t._checkType(),t._checkAxisType(),t.options.convertToAxisDataType&&(t._createParser(),t._parse()),t._groupData(),t._sort(),n.each(t._skipFields,function(n,i){i===t._data.length&&t.incidentOccured("W2002",[n])}),t._data},_checkType:function(){var t=this,i=[],u=[],f=function(i,r){return n.each(i,function(u,f){n.each(f.getValueFields(),function(n,u){i.valueType=t._getType(r[u],i.valueType)})}),i.valueType?!0:void 0},e=function(i,r){return n.each(i,function(n,i){t.groups.argumentType=t._getType(r[i.getArgumentField()],t.groups.argumentType)}),t.groups.argumentType?!0:void 0};n.each(t.groups,function(n,r){if(!r.length)return null;var f=r[0].getOptions(),e=f.valueType,o=f.argumentType;r.valueType=e,t.groups.argumentType=o,e?null:i.push(r),o?null:u.push(r)}),(i.length||u.length)&&n.each(t.data,function(o,s){var h=!0;if(r.isObject(s))return n.each(i,function(n,t){h=h&&f(t,s)}),n.each(u,function(n,t){h=h&&e(t,s)}),!t.options.checkTypeForAllData&&h?!1:void 0})},_checkAxisType:function(){var t=this;n.each(t.groups,function(i,r){n.each(r,function(n,i){var u={},f=i.getOptions();u.argumentAxisType=t._correctAxisType(t.groups.argumentType,f.argumentAxisType,!!t.userArgumentCategories.length),u.valueAxisType=t._correctAxisType(r.valueType,f.valueAxisType,!!i.getValueCategories().length),t.groups.argumentAxisType=t.groups.argumentAxisType||u.argumentAxisType,r.valueAxisType=r.valueAxisType||u.valueAxisType,u.argumentType=t.groups.argumentType,u.valueType=r.valueType,i.updateDataType(u)})})},_createParser:function(){var t=this;n.each(t.groups,function(i,r){n.each(r,function(i,f){t._parsers[f.getArgumentField()]=t._createParserUnit(t.groups.argumentType,t.groups.argumentAxisType===u.LOGARITHMIC?t._filterForLogAxis:null),n.each(f.getValueFields(),function(n,i){t._parsers[i]=t._createParserUnit(r.valueType,r.valueAxisType===u.LOGARITHMIC?t._filterForLogAxis:null,f.getOptions().ignoreEmptyPoints)}),f.getTagField()&&(t._parsers[f.getTagField()]=null)})})},_parse:function(){var t=this,i=[];n.each(t.data,function(u,f){var e={};if(!r.isObject(f)){f&&t._incorrectDataMessage();return}n.each(t._parsers,function(n,t){e[n]=t?t(f[n],n):f[n],e["original"+n]=f[n]}),i.push(e)}),this._data=i},_groupMinSlices:function(n,t,r){var h=this,r=r||{},f=r.mode,l=r.topCount,a=r.threshold,v=r.groupName||"others",u={},o=h._data.slice(),s,c=function(n){!i(n)||n<0||e(o.slice(n),function(n,r){i(r[t])&&(u[t]+=r[t],r[t]=undefined,r["original"+t]=undefined)})};f&&f!=="none"&&(u[n]=v+"",u[t]=0,o.sort(function(n,r){return i(r[t])&&i(n[t])?r[t]-n[t]:!i(r[t])&&n[t]?-1:!i(n[t])&&r[t]?1:void 0}),f==="smallValueThreshold"?(e(o,function(n,r){!i(s)&&i(r[t])&&a>r[t]&&(s=n)}),c(s)):f==="topN"&&c(l),u[t]&&h._data.push(u))},_groupData:function(){var t=this,n=t.groups,f=n.length&&n[0].length&&(n[0][0].type==="pie"||n[0][0].type==="doughnut"||n[0][0].type==="donut"),i,r;f&&e(n,function(f,o){e(o,function(f,e){i=e.getArgumentField(),r=e.getValueFields(),n.argumentAxisType===u.DISCRETE&&t._groupSameArguments(i,r),t._groupMinSlices(i,r[0],e.getOptions().smallValuesGrouping)})})},_groupSameArguments:function(n,t){var o=this,r,u={},f=o._data;e(f,function(o,s){if(i(s[n])&&i(s[t[0]]))if(r=s[n],i(u[r])){var h=f[u[r]];e(t,function(n,t){h[t]+=s[t],s[t]=undefined,s["original"+t]=undefined})}else u[r]=o})},_getType:function(n,t){return t===f.STRING||r.isString(n)?f.STRING:t===f.DATETIME||r.isDate(n)?f.DATETIME:r.isNumber(n)?f.NUMERIC:t},_correctAxisType:function(n,t,i){return(n===f.STRING&&(t===u.CONTINUOUS||t===u.LOGARITHMIC)&&this.incidentOccured("E2002"),t===u.LOGARITHMIC)?u.LOGARITHMIC:(t=(i||t===u.DISCRETE||n===f.STRING)&&u.DISCRETE,t||u.CONTINUOUS)},_filterForLogAxis:function(n,t){return n<=0?(this.incidentOccured("E2004",[t]),null):n},_createParserUnit:function(n,t,i){var r=this,u=n?h.getParser(n,undefined,!0):function(n){return n};return function(f,e){var o=u(f);return t&&(o=t.call(r,o,e)),o===null&&i&&(o=undefined),o===undefined&&(r._addSkipFields(e),r._validUnit(f,e,n)),o}},_validUnit:function(n,t){if(n){if(!r.isNumber(n)&&!r.isDate(n)&&!r.isString(n)){this.incidentOccured("E2003",[t]);return}this.incidentOccured("E2004",[t])}},_sort:function(){var t=this,i=t.groups,u={},e=i.length&&i[0].length&&i[0][0].getArgumentField();r.isFunction(t.options.sortingMethod)?t._data.sort(t.options.sortingMethod):t.userArgumentCategories.length?(n.each(t.userArgumentCategories,function(n,t){u[t]=n}),t._data.sort(function(n,t){return n=n[e],t=t[e],u[n]-u[t]})):t.options.sortingMethod===!0&&i.argumentType!==f.STRING&&c(t._data,e)},_addSkipFields:function(n){this._skipFields[n]=(this._skipFields[n]||0)+1},_incorrectDataMessage:function(){this._erorrDataSource!==!0&&(this._erorrDataSource=!0,this.incidentOccured("E2001"))}})}(jQuery,DevExpress),function(n,t,i){var u=t.viz,f=u.core.Palette,r=t.utils,e=20,o=50;u.charts.ThemeManager=u.core.BaseThemeManager.inherit(function(){var a=function(n,i){var r=this;n=n||{},r._userOptions=n,r._mergeAxisTitleOptions=[],i&&(r._themeSection=i),r._IE8=t.browser.msie&&t.browser.version<9,r.setTheme(n.theme),r.palette=new f(n.palette,{stepHighlight:o,theme:r._themeName})},v=function(){var n=this;n.palette.dispose(),n.palette=n._userOptions=n._mergedSettings=null,n.callBase()},y=function(n){var t=n._theme.commonSeriesSettings;t.point=t.point||{},t.label=t.label||{},n._initializeFont(t.label.font)},p=function(n){var t=n._theme.commonAxisSettings;t&&(t.label=t.label||{},t.grid=t.grid||{},t.ticks=t.ticks||{},t.line=t.line||{},t.title=t.title||{},t.label.font=t.label.font||{},n._initializeFont(t.label.font),t.title.font=t.title.font||{},n._initializeFont(t.title.font))},w=function(){this.palette.reset()},b=function(n){this.palette=new f(n||this._theme.defaultPalette,{stepHighlight:o,theme:this.themeName})},s=function(n){return r.isString(n)?{text:n}:n},h=function(t){if(t)return t=n.extend(!0,{},t),t.title=s(t.title),(t.type==="logarithmic"&&t.logarithmBase<=0||t.logarithmBase&&!n.isNumeric(t.logarithmBase))&&(t.logarithmBase=i,t.logarithmBaseError=!0),t.label&&(t.label.alignment&&(t.label.userAlignment=!0),t.label.overlappingBehavior||(t.label.staggered&&(t.label.overlappingBehavior={mode:"stagger",staggeringSpacing:t.label.staggeringSpacing}),t.label.rotationAngle&&(t.label.overlappingBehavior={mode:"rotate",rotationAngle:t.label.rotationAngle})),r.isString(t.label.overlappingBehavior)&&(t.label.overlappingBehavior={mode:t.label.overlappingBehavior}),t.label.overlappingBehavior&&t.label.overlappingBehavior.mode||(t.label.overlappingBehavior=t.label.overlappingBehavior||{})),t},c=function(t,i,r){var u=this._theme,f=r^t==="valueAxis"?"verticalAxis":"horizontalAxis",e=h(this._userOptions.commonAxisSettings,t);return n.extend(!0,{},u.commonAxisSettings,u[f],u[t],e,h(i,t))},u=function(t,i){i=i||this._userOptions[t];var f=this._theme[t],u=this._mergedSettings[t];return u?u:(u=n.isPlainObject(f)&&n.isPlainObject(i)?n.extend(!0,{},f,i):r.isDefined(i)?i:f,this._mergedSettings[t]=u,u)},l={base:u,argumentAxis:c,valueAxisRangeSelector:function(){return u.call(this,"valueAxis")},valueAxis:c,title:function(n){var t=s(this._userOptions[n]);return u.call(this,n,t)},series:function(t,i,r){var l=this._theme,f=this._userOptions.commonSeriesSettings||{},o=l.commonSeriesSettings,e=((i.type||f.type||o.type)+"").toLowerCase(),u,h=this.palette,a=~e.indexOf("bar"),v=~e.indexOf("bubble"),s,y=this.getOptions("containerBackgroundColor"),c;return(a||v)&&(i=n.extend(!0,{},f,f[e],i),c=i.visible,f={type:{}},n.extend(!0,i,i.point),i.visible=c),u=n.extend(!0,{},o,o[e],f,f[e],i),u.type=e,u.containerBackgroundColor=y,r?(u.widgetType="pieChart",s=function(){return h.getNextColor()}):(u.widgetType="chart",s=u.color||h.getNextColor()),u.mainSeriesColor=s,u._IE8=this._IE8,u},pieSegment:function(i,r,u){var f=n.extend(!0,{},r,u),o=new t.Color(f.color||this.palette.getNextColor());return f.color=o.toHex(),f.border.color=f.border.color||o.toHex(),f.hoverStyle.color=f.hoverStyle.color||this._IE8&&o.highlight(e)||o.toHex(),f.hoverStyle.border.color=f.hoverStyle.border.color||o.toHex(),f.selectionStyle.color=f.selectionStyle.color||this._IE8&&o.highlight(e)||o.toHex(),f.selectionStyle.border.color=f.selectionStyle.border.color||o.toHex(),f},animation:function(t){var i=this._userOptions[t];return i=n.isPlainObject(i)?i:r.isDefined(i)?{enabled:!!i}:{},u.call(this,t,i)}};return{_themeSection:"chart",ctor:a,dispose:v,_initializeTheme:function(){var t=this,n=this._theme;n.legend=n.legend||{},n.legend.font=n.legend.font||{},t._initializeFont(n.legend.font),y(t),p(t),n.title=n.title||{},n.title.font=n.title.font||{},t._initializeFont(n.title.font),n.tooltip=n.tooltip||{},n.tooltip.font=n.tooltip.font||{},t._initializeFont(n.tooltip.font),n.loadingIndicator=n.loadingIndicator||{},n.loadingIndicator.font=n.loadingIndicator.font||{},t._initializeFont(n.loadingIndicator.font)},resetPalette:w,getOptions:function(n){return(l[n]||l.base).apply(this,arguments)},setTheme:function(t){var i=this;i._mergedSettings={},i.callBase(t),i.getOptions("rtlEnabled")&&n.extend(!0,i._theme,i._theme._rtl)},resetOptions:function(n){this._mergedSettings[n]=null},update:function(n){this._userOptions=n},updatePalette:b}}())}(jQuery,DevExpress),function(n,t){var r=t.viz,i=r.charts,u=i.series;i.factory=function(){var n=function(n){return new u.SeriesFamily(n)},t=function(n,t){return new i.Axis(n,t)},r=function(n,t){return new i.ThemeManager(n,t)},f=function(n,t,r,u){return new i.DataValidator(n,t,r,u)},e=function(n){return new i.Tracker(n)},o=function(n,t,r,u){return new i.ChartTitle(n,t,r,u)},s=function(n){return new i.LayoutManager(n)};return{createSeriesFamily:n,createAxis:t,createThemeManager:r,createDataValidator:f,createTracker:e,createChartLayoutManager:s,createTitle:o}}()}(jQuery,DevExpress),function(n,t,i){var u=t.viz.core,r=t.utils;t.viz.core.BaseWidget=t.DOMComponent.inherit({NAMESPACE:t.ui,_init:function(){this._setRedrawOnResize(this._getOptionRedrawOnResize()),this._incidentOccured=this._createIncidentOccured(),this._renderVisiblityChange()},_optionChanged:function(n,t,i){var r=this;switch(n){case"redrawOnResize":r._setRedrawOnResize(r._getOptionRedrawOnResize());break;case"loadingIndicator":r._updateLoadIndicator(r._getLoadIndicatorOption());break;default:r._invalidate()}r.callBase(n,t,i)},_getOptionRedrawOnResize:function(){var n=this.option("redrawOnResize");return n=n!==i?!!n:!0},_getLoadIndicatorOption:function(){return this.option("loadingIndicator")},_dispose:function(){var n=this;n._resizeHandlerCallback&&n._removeResizeCallbacks(),n._incidentOccured=null,n.callBase()},_visibilityChanged:function(n){n&&this.render()},_setRedrawOnResize:function(n){var i=this;n?!i._resizeHandlerCallback&&r.isFunction(i._resize)&&(i._resizeHandlerCallback=t.utils.createResizeHandler(function(){i._resize()}),r.windowResizeCallbacks.add(i._resizeHandlerCallback)):i._removeResizeCallbacks()},_removeResizeCallbacks:function(){var n=this;n._resizeHandlerCallback&&n._resizeHandlerCallback.stop(),r.windowResizeCallbacks.remove(n._resizeHandlerCallback),delete n._resizeHandlerCallback},_showLoadIndicator:function(n,t){var r=this;r._loadIndicator=this._loadIndicator||u.CoreFactory.createLoadIndicator(n,r._element()),r._loadIndicator.show(t.width,t.height),r._initializing&&r._loadIndicator.endLoading(i,!0)},_updateLoadIndicator:function(n,t,i){this._loadIndicator&&this._loadIndicator.applyOptions(n,t,i)},_endLoading:function(n){this._loadIndicator?this._loadIndicator.endLoading(n):n&&n()},_reappendLoadIndicator:function(){this._loadIndicator&&this._loadIndicator.toForeground()},_disposeLoadIndicator:function(){this._loadIndicator&&this._loadIndicator.dispose(),this._loadIndicator=null},_setDefaultOptions:function(){this.callBase(),this.option({incidentOccured:function(n){var t=""+n.id+" - "+n.text,i=n.version.split(".").slice(0,2).join("_"),u="http://js.devexpress.com/error/"+i+"/"+n.id;r.logger.warn(t+"\n"+u)}})},_createIncidentOccured:function(){var n=this;return function(t,i){var s=t[0]==="E",h=s?"error":"warning",f=i?i.slice(0):[],e,o=n.option("incidentOccured");f.unshift(u.errorsWarnings[t]),e=r.stringFormat.apply(null,f),r.isFunction(o)&&setTimeout(function(){o({id:t,type:h,args:i,text:e,widget:n.NAME,version:DevExpress.VERSION})})}},_normalizeHtml:function(n){var i=/xmlns="[\s\S]*?"/gi,t=!0;return n=n.replace(i,function(n){return t?(t=!1,n):""}),n.replace(/xmlns:NS1="[\s\S]*?"/gi,"").replace(/NS1:xmlns:xlink="([\s\S]*?)"/gi,'xmlns:xlink="$1"')},_drawn:function(){var n=this,t=n.option("drawn");r.isFunction(t)&&setTimeout(function(){t(n)})},showLoadingIndicator:function(){this._showLoadIndicator(this.option("loadingIndicator"),this.canvas||{})},hideLoadingIndicator:function(){this._loadIndicator&&this._loadIndicator.hide()},endUpdate:function(){this._updateLockCount!==1||this._requireRefresh||this.hideLoadingIndicator(),this.callBase()},svg:function(){var n=this.renderer||this._renderer;return n?this._normalizeHtml(n.svg()):""}})}(jQuery,DevExpress),function(n){var r=n.viz.renderers,i=n.viz.core;n.viz.core.CoreFactory=function(){return{createSeries:function(n,t){return new i.series.Series(n,t)},createPoint:function(n,t){return new i.series.points.Point(n,t)},createLabel:function(n,t,r){return n==="pie"||n==="doughnut"||n==="donut"?new i.series.points.PieLabel(t,r):new i.series.points.Label(t,r)},createRenderer:function(n){return new r.Renderer(n)},createTranslator1D:function(n,t,r,u){return(new i.Translator1D).setDomain(n,t).setCodomain(r,u)},createTranslator2D:function(n,t,r){return new i.Translator2D(n,t,r)},getTickProvider:function(){return i.tickProvider},createTooltip:function(n,t,r){return new i.Tooltip(n,t,r)},createLoadIndicator:function(n,t){return new i.LoadIndicator(n,t)},createLegend:function(n,t,r,u){return new i.Legend(n,t,r,u)},createSeriesFamily:function(n){return new i.series.helpers.SeriesFamily(n)}}}()}(DevExpress),DevExpress.MOD_VIZ_CORE=!0}if(!DevExpress.MOD_VIZ_CHARTS){if(!DevExpress.MOD_VIZ_CORE)throw Error("Required module is not referenced: viz-core");(function(n,t){var r=t.utils.isDefined,e=function(n,t){return n.substr(n.length-t.length)===t},f=function(n,t){return n.indexOf(t)===0},o=DevExpress.viz.core.utils.decreaseGaps,u=10;t.viz.charts.ChartTitle=t.Class.inherit({ctor:function(n,t,i,r){var u=this;u._init(t,i),u.renderer=n,u.titleGroup=r},dispose:function(){var n=this;n.renderer=null,n.clipRect=null,n.title=null,n.innerTitleGroup=null,n.titleGroup=null,n.options=null},update:function(n,t){this._init(n,t)},_init:function(n,t){var i=this;n&&(i._parseAlignments(n),i.horizontalAlignment=n.horizontalAlignment,i.verticalAlignment=n.verticalAlignment,i._parseMargins(n),i.margin=n.margin,i.options=n),i.setSize({width:t})},_parseMargins:function(n){n.margin=r(n.margin)?n.margin:{},typeof n.margin=="number"?(n.margin=n.margin>=0?n.margin:u,n.margin={top:n.margin,bottom:n.margin,left:n.margin,right:n.margin}):(n.margin.top=n.margin.top>=0?n.margin.top:u,n.margin.bottom=n.margin.bottom>=0?n.margin.bottom:u,n.margin.left=n.margin.left>=0?n.margin.left:u,n.margin.right=n.margin.right>=0?n.margin.right:u)},_parseAlignments:function(n){if(r(n.position)&&!(r(n.verticalAlignment)&&r(n.horizontalAlignment))){n.position=n.position.toLowerCase(),n.verticalAlignment=e(n.position,"top")?"top":"bottom",n.horizontalAlignment=f(n.position,"left")?"left":f(n.position,"center")&&"center"||"right";return}n.verticalAlignment=(n.verticalAlignment||"").toLowerCase(),n.horizontalAlignment=(n.horizontalAlignment||"").toLowerCase(),n.verticalAlignment!=="top"&&n.verticalAlignment!=="bottom"&&(n.verticalAlignment="top"),n.horizontalAlignment!=="left"&&n.horizontalAlignment!=="center"&&n.horizontalAlignment!=="right"&&(n.horizontalAlignment="center")},_setBoundingRect:function(){var t=this,u=t.options,i=t.changedMargin||t.margin,n;t.innerTitleGroup&&(n=t.innerTitleGroup.getBBox(),n.height+=i.top+i.bottom,n.width+=i.left+i.right,n.x-=i.left,n.y-=i.top,r(u.placeholderSize)&&(n.height=u.placeholderSize),t.boundingRect=n)},draw:function(){var n=this,t=n.options,i=n.renderer,r;t.text&&(n.changedMargin=null,n.innerTitleGroup?n.innerTitleGroup.clear():(n.innerTitleGroup=i.createGroup(),n.clipRect=n.createClipRect(),n.titleGroup&&n.clipRect&&n.titleGroup.applySettings({clipId:n.clipRect.id})),n.innerTitleGroup.append(n.titleGroup),r={font:t.font,align:n.horizontalAlignment,style:t.fontStyle},n.title=i.createText(t.text,0,0,r).append(n.innerTitleGroup),n.title.text=t.text,n._correctTitleLength(),n._setClipRectSettings())},_correctTitleLength:function(){var n=this,t=n.title.text,r,u,i;(n.title.updateText(t),n._setBoundingRect(),i=n.getLayoutOptions(),n._width>i.width||t.indexOf("<br/>")!==-1)||(u=t.length*n._width/i.width,r=t.substr(0,~~u-4)+"...",n.title.updateText(r),n._setBoundingRect())},changeSize:function(t){var i=this,r=n.extend(!0,{},i.margin);r.top+r.bottom<t.height?(this.innerTitleGroup&&(i.options._incidentOccured("W2103"),this.innerTitleGroup.remove(),this.innerTitleGroup=null),i.clipRect&&(i.clipRect.remove(),i.clipRect=null)):t.height>0&&(o(r,["top","bottom"],t.height),t.height&&(i.changedMargin=r)),i._correctTitleLength(),i._setBoundingRect(),i._setClipRectSettings()},getLayoutOptions:function(){var t=this.options,n=this.innerTitleGroup?this.boundingRect:{width:0,height:0,x:0,y:0};return n.verticalAlignment=t.verticalAlignment,n.horizontalAlignment=t.horizontalAlignment,n.cutLayoutSide=t.verticalAlignment,n},setSize:function(n){this._width=n.width||this._width},shift:function(n,t){var i=this,r=i.getLayoutOptions();n-=r.x,t-=r.y,i.innerTitleGroup&&i.innerTitleGroup.move(n,t),i.clipRect&&i.clipRect.updateRectangle({translateX:n,translateY:t})},createClipRect:function(){if(r(this.options.placeholderSize))return this.renderer.createClipRect(0,0,0,0)},_setClipRectSettings:function(){var n=this.getLayoutOptions(),t=this.clipRect;t&&(t.append(),t.updateRectangle({x:n.x,y:n.y,width:n.width,height:n.height}))}})})(jQuery,DevExpress),function(n,t,i){var l=t.utils,o=l.isDefined,p=l.isDate,c=Math.abs,w=t.viz.core,b=100,g=5,k=2,d=4,h="canvas_position_",a="canvas_position_start",v="canvas_position_end",s="top",f="bottom",r="left",u="right",e="center",nt=function(n){var i=n.label,t=n.position;n.isHorizontal?t===f||t===s||(t=f):t===r||t===u||(t=r),n.position=t,t!==u||i.userAlignment||(i.alignment=r)},y=function(n,i,r){var u={value:n,valueText:t.formatHelper.format(n,i.format,i.precision)||""};return r&&(u.min=r.min,u.max=r.max),i.customizeText?i.customizeText.call(u,u):u.valueText},tt=function(n){switch(n){case"overlap":return"stagger";case"stagger":return"rotate";case"rotate":default:return"end"}};t.viz.charts.Axis=function(n,t){this.renderer=n,this._init(t)},n.extend(t.viz.charts.Axis.prototype,{dispose:function(){var t=this;t._axisElementsGroup&&t._axisElementsGroup.dispose(),n.each(t.labels||[],function(n,t){t.removeData()}),t.labels=null,t.title=null,t.stripLabels=null,t.stripRects=null,t.constantLineLabels=null,t.constantLines=null,t._axisStripGroup=null,t._axisConstantLineGroup=null,t._axisLableGroup=null,t._axisLineGroup=null,t._axisElementsGroup=null,t._axisGridGroup=null,t._axisGroup=null,t.axesContainerGroup=null,t.stripsGroup=null,t.constantLinesGroup=null,t._axisTitleGroup=null,t.renderer=null,t.translator=null,t.orthogonalTranslator=null,t.options=null,t.textOptions=null,t._tickValues=null,t._fullTickValues=null,t._fullTickPositions=null},_init:function(n){var i=this,r=n.categories,t=n.label;n.hoverMode=n.hoverMode?n.hoverMode.toLowerCase():"none",i.hasLabelFormat=t.format!==""&&o(t.format),i.options=n,i.staggered=t.staggered,t.minSpacing=o(t.minSpacing)?t.minSpacing:g,nt(n),r&&(i.labelsNumber=r.length,i.ticksNumber=i.labelsNumber),n.range={min:n.min,max:n.max,categories:n.categories&&n.categories.slice(0)},i.pane=n.pane,i.textOptions={align:t.alignment,font:t.font,opacity:t.opacity,style:t.style},n.type==="logarithmic"&&(n.logarithmBaseError&&(n.incidentOccured("E2104"),delete n.logarithmBaseError),i.calcInterval=function(t,i){return l.getLog(t/i,n.logarithmBase)})},updateSize:function(n){var t=this,i=t.options,r=i.isHorizontal?"horizontal":"vertical";t.title&&t._axisTitleGroup&&(i.incidentOccured("W2105",[r]),t._axisTitleGroup.remove(),t._axisTitleGroup=null),n&&t._axisElementsGroup&&t.labels&&(i.incidentOccured("W2106",[r]),t._axisElementsGroup.remove(),t._axisElementsGroup=null),t._setBoundingRect()},_updateTranslatorInterval:function(){var i=this,n,t,r=i.translator.getBusinessRange();if(r&&r.addRange&&!i.options.categories)for(t=i.getTickValues(),n=0;n<t.length-1;n++)r.addRange({interval:c(t[n]-t[n+1])})},setTranslator:function(n,t){var i=this;i.translator=n,t&&(i.orthogonalTranslator=t),i.resetTicks(),i._updateTranslatorInterval()},resetTicks:function(){var n=this;n._tickValues=n._tickPositions=n._fullTickValues=n._fullTickPositions=null},setRange:function(n){var t=this.options;t.min=n.minVisible,t.max=n.maxVisible,t.categories=n.categories,t.stubData=n.stubData,this.resetTicks()},_drawAxis:function(){var t=this,e=t.translator,n=t.options,s=!!n.categories,o=t.axisPosition,i,u,r,f;n.visible&&(i=e.translateSpecialCase(a),r=e.translateSpecialCase(v),n.isHorizontal?u=f=o:(u=i,f=r,i=r=o),t.renderer.createLine(i,u,r,f,{strokeWidth:n.width,stroke:n.color,strokeOpacity:n.opacity}).append(t._axisLineGroup))},_getOptimalRotationAngle:function(n,t,i){var r=this,f=r.options.isHorizontal?r.translator:r.orthogonalTranslator,e=r.renderer,u=w.outOfScreen,o=r.textOptions,s=e.createText(y(n,i),u.x+f.translate(n),u.y,o).append(),h=e.createText(y(t,i),u.x+f.translate(t),u.y,o).append(),c=s.getBBox(),a=h.getBBox(),l=Math.asin((c.height+i.minSpacing)/(a.x-c.x))*180/Math.PI;return s.remove(),h.remove(),isNaN(l)?90:Math.ceil(l)},_applyOptimalOverlappingBehavior:function(t,i){for(var f=this,o=f.overlappingBehavior,s=!1,u=null,h=null,e=n.extend({},i),r="overlap";r!=="end";){s=u&&u!==90?!1:f.options.tickProvider.isOverlappedTicks(t,e),r=tt(s?r:null);switch(r){case"stagger":e.screenDelta*=k,h=r;break;case"rotate":u=f._getOptimalRotationAngle(t[0],t[1],f.options.label),e.screenDelta=i.screenDelta,e.textOptions.rotate=u,h=r}}o.isOverlapped=s,o.mode=h,o.rotationAngle=u},_getTicksOptions:function(){var u=this,t=u.options,e=u.translator,s=c(e.translateSpecialCase(a)-e.translateSpecialCase(v)),r=t.min,f=t.max,h=l.getSignificantDigitPosition(c(f-r)/s),o,p=function(){return""};return l.isNumber(r)&&t.type!=="logarithmic"&&(r=l.roundValue(t.min,h),r<t.min&&(o=Math.pow(10,-h),r=l.applyPrecisionByMinDelta(r,o,r+o)),r>f&&(r=t.min)),t.stubData||(p=function(n){return y(n,t.label,{min:r,max:f})}),{min:r,max:f,base:t.type==="logarithmic"?t.logarithmBase:i,axisType:t.type,dataType:t.dataType,customTicks:n.isArray(t.categories)?t.categories:u._tickValues,useTicksAutoArrangement:!1,textOptions:u.textOptions,getText:p,renderer:u.renderer,textSpacing:t.label.minSpacing,translator:e,tickInterval:t.stubData?null:t.tickInterval,screenDelta:s,gridSpacingFactor:t.axisDivisionFactor,isHorizontal:t.isHorizontal,setTicksAtUnitBeginning:t.setTicksAtUnitBeginning,incidentOccured:t.incidentOccured}},getTickValues:function(){var i=this,o,e=i.options,s=e.tickProvider,f=e.label,h=e.categories,u=i._getTicksOptions();return(i._fullTickValues=i._tickValues=s.getTicks(u),(p(e.min)||p(h&&h[0]))&&!i.hasLabelFormat&&i._tickValues.length&&(f.format=t.formatHelper.getDateFormatByTicks(i._tickValues)),i.overlappingBehavior=f.overlappingBehavior?n.extend({},f.overlappingBehavior):null,i.overlappingBehavior&&(e.isHorizontal||i.overlappingBehavior.mode==="ignore"||(i.overlappingBehavior.mode="enlargeTickInterval"),u.useTicksAutoArrangement=i.overlappingBehavior.mode!=="ignore",u.useTicksAutoArrangement&&(i._fullTickValues=i._tickValues=s.getCorrectedTicks(i._fullTickValues,u)),i.overlappingBehavior.mode==="auto"&&(i.textOptions.rotate=0,i._applyOptimalOverlappingBehavior(i._fullTickValues,u),u.useTicksAutoArrangement=i.overlappingBehavior.isOverlapped),i.overlappingBehavior.mode==="rotate"?(i.textOptions.rotate=i.overlappingBehavior.rotationAngle,f.userAlignment||(i.textOptions.align=r)):f.userAlignment||(i.textOptions.align=f.alignment)),u.useTicksAutoArrangement&&(o=i._tickValues.length?i.translator.translate(i._tickValues[i._tickValues.length-1])-i.translator.translate(i._tickValues[0]):null,o?(u.screenDelta=c(o),u.ticksCount=i._tickValues.length-1):u.ticksCount=i._tickValues.length,i.overlappingBehavior&&i.overlappingBehavior.mode==="stagger"&&(u.screenDelta*=k),u.customTicks=i._tickValues,i._tickValues=s.getTicks(u)),i.options.stubData)?i._tickValues:(n.isArray(h)||(i._fullTickValues=i._tickValues),i._tickValues)},setTickValues:function(n){this.resetTicks(),this._fullTickValues=this._tickValues=n},_prepareLabelsToDraw:function(){var i=this,t=i.getTickValues(),r=[],n;for((t.hideLabels||i.options.stubData)&&(r.hideLabels=!0),n=0;n<t.length;n++)r.push({text:t[n],pos:i.translator.translate(t[n])});return r},_correctTicksPosition:function(n){var u=this,t=u.options,r=u.translator.getInterval()/2,i;if(t.categories&&(t.discreteAxisDivisionMode!=="crossLabels"||!t.discreteAxisDivisionMode))for(t.isHorizontal?t.valueMarginsEnabled||(n=n.slice(0,n.length-1)):(r=-r,t.valueMarginsEnabled||(n=n.slice(1,n.length))),i=0;i<n.length;i++)n[i].pos=n[i].pos+r;return n},_prepareFullTicksToDraw:function(){var n=this,t=n._fullTickValues,r=[],i;if(!n._fullTickPositions){for(t||(n.getTickValues(),t=n._fullTickValues||[]),i=0;i<t.length;i++)r.push({pos:n.translator.translate(t[i])});n._fullTickPositions=n._correctTicksPosition(r)}return n._fullTickPositions},_drawTicks:function(){var i=this,e=i.options,u=e.tick,n,o=i.axisPosition,s=o-4,h=o+4,t,r,f;if(u.visible)if(f=function(n,t,r,f){i.renderer.createLine(n,t,r,f,{strokeWidth:1,stroke:u.color,strokeOpacity:u.opacity}).append(i._axisLineGroup)},r=i._prepareFullTicksToDraw(),e.isHorizontal)for(n=0;n<r.length;n++)t=r[n],f(t.pos,s,t.pos,h);else for(n=0;n<r.length;n++)t=r[n],f(s,t.pos,h,t.pos)},setPercentLabelFormat:function(){var n=this.options.label;this.hasLabelFormat||(n.format="percent")},resetAutoLabelFormat:function(){var n=this.options.label;this.hasLabelFormat||delete n.format},_drawLabels:function(){var n=this,f,t=n.options,l=n.renderer,a=n.axisPosition,c=t.label,v=c.indentFromAxis,i,e,h,p=[],w=t.isHorizontal?l.createText:function(n,t,i,r){return this.createText(n,i,t,r)},b=/^\s+$/,k=t.position===s||t.position===r?a-v:a+v,u;if(c.visible&&n._axisElementsGroup){if(i=n._prepareLabelsToDraw(),i.length===0||i.hideLabels)return!0;for(f=0;f<i.length;f++)e=i[f],u=y(e.text,c,{min:t.min,max:t.max}),o(u)&&u!==""&&!b.test(u)&&(h=w.call(l,u,e.pos,k,n.textOptions),p.push(h),h.append(n._axisElementsGroup),h.data({argument:e.text}));n.labels=p}},getMultipleAxesSpacing:function(){return this.options.multipleAxesSpacing||0},_drawTitle:function(){var n=this,a,i=n.options,l=n.renderer,s=n.axisPosition,t=i.title,v,u={font:t.font,opacity:t.opacity,align:e,"class":"dx-chart-axis-title"},c=n.translator.translateSpecialCase(h+e),f,o;t.text&&n._axisTitleGroup&&(i.isHorizontal?(f=c,o=s):(u.rotate=i.position===r?270:90,f=s,o=c),n.title=l.createText(t.text,f,o,u).append(n._axisTitleGroup))},_drawGrid:function(n){var t=this,l,y=t.options,e=y.grid,o,p;if(e.visible)for(n=n||{visible:!1},p=function(){var l=t.translator,p=t.orthogonalTranslator,o=y.isHorizontal,w=o?r:s,b=o?u:f,k=p.translateSpecialCase(a),g=p.translateSpecialCase(v),nt=n.visible&&n[w]?l.translateSpecialCase(h+w):i,tt=n.visible&&n[b]?l.translateSpecialCase(h+b):i;return function(n){if(!(c(n.pos-nt)<d)&&!(c(n.pos-tt)<d)){var i=n.pos,r=k,u=n.pos,f=g;o||(i=k,r=f=n.pos,u=g),t.renderer.createLine(i,r,u,f,{strokeWidth:e.width,stroke:e.color,strokeOpacity:e.opacity}).append(t._axisGridGroup)}}}(),l=t._prepareFullTicksToDraw(),o=0;o<l.length;o++)p(l[o])},_drawConstantLine:function(){for(var t=this,h=t._axisConstantLineGroup,c=t.renderer,l=t.options,y=l.constantLines,r=t.translator,p=t.orthogonalTranslator,g=l.isHorizontal,e=[],u=[],w=p.translateSpecialCase(a),b=p.translateSpecialCase(v),k=r.translateSpecialCase(a),d=r.translateSpecialCase(v),s=r.getBusinessRange(),nt=function(i){var f=t.validateUnit(i,"E2105","constantLine"),u=r.translate(f),e=!!(s.minVisible||s.maxVisible);return!e&&n.inArray(i,s.categories||[])===-1||!o(u)||u<Math.min(k,d)||u>Math.max(k,d)?{}:{value:u,parsedValue:f}},tt=function(n){if(n.value!==i){var s=nt(n.value),f=n.label||{},r=s.value,l,a={stroke:n.color,strokeWidth:n.width,dashStyle:n.dashStyle};if(!o(r)){e.push(null),f.visible&&u.push(null);return}l=g?c.createLine(r,b,r,w,a):c.createLine(w,r,b,r,a),e.push(l.append(h)),f.visible?u.push(t._drawConstantLineLabels(s.parsedValue,f,r,h)):u.push(null)}},f=0;f<y.length;f++)tt(y[f]);t.constantLines=e,t.constantLineLabels=u},_checkAlignmentConstantLineLabels:function(n){var t=this.options;n.verticalAlignment=(n.verticalAlignment||"").toLowerCase(),n.horizontalAlignment=(n.horizontalAlignment||"").toLowerCase(),t.isHorizontal&&n.position==="outside"&&(n.verticalAlignment=n.verticalAlignment===f?f:s,n.horizontalAlignment=e),t.isHorizontal&&n.position==="inside"&&(n.verticalAlignment=n.verticalAlignment===e?e:n.verticalAlignment===f?f:s,n.horizontalAlignment=n.horizontalAlignment===r?r:u),t.isHorizontal||n.position!=="outside"||(n.verticalAlignment=e,n.horizontalAlignment=n.horizontalAlignment===r?r:u),t.isHorizontal||n.position!=="inside"||(n.verticalAlignment=n.verticalAlignment===f?f:s,n.horizontalAlignment=n.horizontalAlignment===u?u:n.horizontalAlignment===e?e:r)},_drawConstantLineLabels:function(t,i,f,s){var l=this,a=i.text,w=l.orthogonalTranslator,b=l.options,k=b.label,c={align:e,font:n.extend({},k.font,i.font)},v,p;if(l._checkAlignmentConstantLineLabels(i),a=o(a)?a:y(t,k),b.isHorizontal){v=f;switch(i.horizontalAlignment){case r:c.align=u;break;case u:c.align=r}p=w.translateSpecialCase(h+i.verticalAlignment)}else{p=f,v=w.translateSpecialCase(h+i.horizontalAlignment);switch(i.horizontalAlignment){case r:c.align=i.position==="inside"?r:u;break;case e:c.align=e;break;case u:c.align=i.position==="inside"?u:r}}return l.renderer.createText(a,v,p,c).append(s)},_adjustConstantLineLabels:function(){var p=this,k=p.options,d=k.isHorizontal,g=p.constantLines,b=p.constantLineLabels,w,nt,v,n,o,t,l,c,y,a=d?{top:0,bottom:0}:{left:0,right:0};if(b!==i||g!==i){for(y=0;y<b.length;y++)if(l=c=0,n=k.constantLines[y],o=n.label,w=b[y],w!==null){if(nt=g[y],t=w.getBBox(),v=nt.getBBox(),d)if(o.position==="inside"){switch(o.horizontalAlignment){case r:l-=n.paddingLeftRight;break;default:l+=n.paddingLeftRight}switch(o.verticalAlignment){case e:c+=v.y+v.height/2-t.y-t.height/2;break;case f:c-=n.paddingTopBottom;break;default:c+=n.paddingTopBottom+t.height}}else switch(o.verticalAlignment){case f:c+=t.height+n.paddingTopBottom-(t.y+t.height-p.orthogonalTranslator.translateSpecialCase(h+o.verticalAlignment)),a[f]<t.height+n.paddingTopBottom&&(a[f]=t.height+n.paddingTopBottom);break;default:c-=n.paddingTopBottom,a[s]<n.paddingTopBottom+t.height&&(a[s]=n.paddingTopBottom+t.height)}else if(o.position==="inside"){switch(o.horizontalAlignment){case e:l+=v.x+v.width/2-t.x-t.width/2;break;case u:l-=n.paddingLeftRight;break;default:l+=n.paddingLeftRight}switch(o.verticalAlignment){case f:c+=v.y-t.y+n.paddingTopBottom;break;default:c-=n.paddingTopBottom}}else{c+=v.y+v.height/2-t.y-t.height/2;switch(o.horizontalAlignment){case u:l+=n.paddingLeftRight,a[u]<n.paddingLeftRight+t.width&&(a[u]=n.paddingLeftRight+t.width);break;default:l-=n.paddingLeftRight,a[r]<n.paddingLeftRight+t.width&&(a[r]=n.paddingLeftRight+t.width)}}w.move(l,c)}p.padding=a}},_drawStrip:function(){var r=this,d=r.renderer,w=r.options,g=w.strips,f=r.translator,nt=r.orthogonalTranslator,h=f.getBusinessRange(),l,y=[],b=[],tt,rt=w.isHorizontal,u,e,s,t,p,k,it;if(!w.stubData){for(it=function(t,i){var s=!!(h.minVisible||h.maxVisible),c=h.categories||[],u=f.translate(r.validateUnit(t,"E2105","strip")),e=f.translate(r.validateUnit(i,"E2105","strip")),l=f.translateSpecialCase(a),y=f.translateSpecialCase(v),p=h.minVisible;return!s&&(n.inArray(t,c)===-1||n.inArray(i,c)===-1)?{stripFrom:0,stripTo:0}:(!o(u)&&s&&(u=t<p?l:y),!o(e)&&s&&(e=i<p?l:y),u<e?{stripFrom:u,stripTo:e}:{stripFrom:e,stripTo:u})},e=nt.translateSpecialCase(a),s=nt.translateSpecialCase(v),l=0;l<g.length;l++)if(u=g[l],p=u.label||{},k={fill:u.color},u.startValue!==i&&u.endValue!==i&&u.color!==i){if(t=it(u.startValue,u.endValue),t.stripTo-t.stripFrom==0||!t.stripTo&&t.stripTo!==0||!t.stripFrom&&t.stripFrom!==0){b.push(null),p.text&&y.push(null);continue}tt=rt?d.createRect(t.stripFrom,Math.min(e,s),t.stripTo-t.stripFrom,c(e-s),0,k):d.createRect(Math.min(e,s),t.stripFrom,c(e-s),t.stripTo-t.stripFrom,0,k),b.push(tt.append(r._axisStripGroup)),p.text?y.push(r._drawStripLabel(p,t.stripFrom,t.stripTo)):y.push(null)}r.stripLabels=y,r.stripRects=b}},_drawStripLabel:function(t,i,o){var v=this,y=v.orthogonalTranslator,p=v.options,w=p.isHorizontal,c={align:w?e:r,font:n.extend({},p.label.font,t.font)},l,a;return w?(t.horizontalAlignment===e?(l=i+(o-i)/2,c.align=e):t.horizontalAlignment===r?(l=i,c.align=r):t.horizontalAlignment===u&&(l=o,c.align=u),a=y.translateSpecialCase(h+t.verticalAlignment)):(l=y.translateSpecialCase(h+t.horizontalAlignment),c.align=t.horizontalAlignment,t.verticalAlignment===s?a=i:t.verticalAlignment===e?a=o+(i-o)/2:t.verticalAlignment===f&&(a=o)),v.renderer.createText(t.text,l,a,c).append(v._axisLableGroup)},_initAxisPositions:function(){var n=this,t=n.options.position,i=0;n.delta&&(i=n.delta[t]||0),n.axisPosition=n.orthogonalTranslator.translateSpecialCase(h+t)+i},_adjustLabels:function(){var o=this,w=o.options,y=w.isHorizontal,v=w.position,h=o.labels,i,l,b,k,t,a,c=o.padding&&o.padding[v]||0,p=o._axisElementsGroup&&o._axisElementsGroup.getBBox()||{},n;if(w.label.visible&&h&&h.length){for(t=0;t<h.length;t++)i=h[t],n=i.getBBox(),y&&v===f?i.applySettings({y:2*i.settings.y-n.y+c}):y?y&&v===s&&i.applySettings({y:2*i.settings.y-n.y-n.height-c}):(a=v===r?o.textOptions.align===u?n.x+n.width-c:o.textOptions.align===e?n.x+n.width/2-c-(p.width/2||0):n.x-c-(p.width||0):o.textOptions.align===e?n.x+n.width/2+(p.width/2||0)+c:o.textOptions.align===u?n.x+n.width+(p.width||0)+c:n.x+c,i.applySettings({x:a,y:i.settings.y+~~(i.settings.y-n.y-n.height/2)}));if(b=y&&o.overlappingBehavior&&o.overlappingBehavior.mode==="stagger",b){for(l=0,t=0;t<h.length;t=t+2)i=h[t],n=i.getBBox(),n.height>l&&(l=n.height);for(k=o.overlappingBehavior.staggeringSpacing,l=Math.round(l)+k,t=1;t<h.length;t=t+2)i=h[t],v===f?i.move(0,l):v===s&&i.move(0,-l);for(t=0;t<h.length;t++)h[t].rotate(0)}}},_adjustStripLabels:function(){var y=this,n,p=y.stripLabels,w=y.stripRects,c,t,l,a,o,v,h;if(p!==i||w!==i)for(t=0;t<p.length;t++)v=h=0,o=y.options.strips[t],n=o.label,c=p[t],c!==null&&(l=c.getBBox(),a=w[t].getBBox(),n.horizontalAlignment===r?v+=o.paddingLeftRight:n.horizontalAlignment===u&&(v-=o.paddingLeftRight),n.verticalAlignment===s?h+=a.y-l.y+o.paddingTopBottom:n.verticalAlignment===e?h+=a.y+a.height/2-l.y-l.height/2:n.verticalAlignment===f&&(h-=o.paddingTopBottom),c.move(v,h))},_adjustTitle:function(){var u=this,o=u.options,s=o.position,t=u.title,e=o.title.margin,n,h;t&&u._axisElementsGroup&&(h=t.getBBox(),n=u._axisElementsGroup.getBBox(),o.isHorizontal?s===f?t.applySettings({y:n.isEmpty?i:n.y+n.height,translateY:e+h.height}):t.applySettings({y:n.isEmpty?i:n.y,translateY:-e}):s===r?t.applySettings({x:n.isEmpty?i:n.x,translateX:-e}):t.applySettings({x:n.isEmpty?i:n.x+n.width,translateX:e}))},draw:function(n,t){var i=this,r=i.options,u=r.isHorizontal,f=u?"dxc-h-axis":"dxc-v-axis",e=u?"dxc-h-strips":"dxc-v-strips",o=u?"dxc-h-constant-lines":"dxc-v-constant-lines";n=n||{},i._axisGroup?(i._axisGroup.detach(),i._axisStripGroup.detach(),i._axisLableGroup.detach(),i._axisConstantLineGroup.detach(),i._axisTitleGroup?i._axisTitleGroup.clear():!t&&(i._axisTitleGroup=i.renderer.createGroup({"class":"dxc-title"}).append(i._axisGroup)),i._axisGridGroup.clear(),i._axisElementsGroup?i._axisElementsGroup.clear():!t&&(i._axisElementsGroup=i.renderer.createGroup({"class":"dxc-elements"}).append(i._axisGroup)),i._axisLineGroup.clear(),i._axisStripGroup.clear(),i._axisConstantLineGroup.clear(),i._axisLableGroup.clear()):(i._axisGroup=i.renderer.createGroup({"class":f,clipId:i.clipRectID}),i._axisStripGroup=i.renderer.createGroup({"class":e}),i._axisGridGroup=i.renderer.createGroup({"class":"dxc-grid"}).append(i._axisGroup),i._axisElementsGroup=i.renderer.createGroup({"class":"dxc-elements"}).append(i._axisGroup),i._axisLineGroup=i.renderer.createGroup({"class":"dxc-line"}).append(i._axisGroup),i._axisTitleGroup=i.renderer.createGroup({"class":"dxc-title"}).append(i._axisGroup),i._axisConstantLineGroup=i.renderer.createGroup({"class":o}),i._axisLableGroup=i.renderer.createGroup({"class":"dxc-axis-labels"})),i._initAxisPositions(),i._virtual||(i._drawAxis(),i._drawTicks(),i._drawLabels(),i._drawTitle()),r.strips&&i._drawStrip(),r.constantLines&&i._drawConstantLine(),i._drawGrid(n.borderOptions),i._axisStripGroup.append(i.stripsGroup),i._axisConstantLineGroup.append(i.constantLinesGroup),i._axisGroup.append(i.axesContainerGroup),i._axisLableGroup.append(i.labelAxesGroup),i._adjustConstantLineLabels(),i._adjustLabels(),i._adjustStripLabels(),i._adjustTitle(),i._setBoundingRect()},_setBoundingRect:function(){var n=this,s=n.options,t=n._axisElementsGroup?n._axisElementsGroup.getBBox():{x:0,y:0,width:0,height:0,isEmpty:!0},l=n._axisLineGroup.getBBox(),h=s.placeholderSize,e,c=s.isHorizontal,i=c&&"y"||"x",o=c&&"height"||"width",r=n.title&&n._axisTitleGroup?n._axisTitleGroup.getBBox():t;if(t.isEmpty&&r.isEmpty&&!h){n.boundingRect=t;return}e=l[i]||n.axisPosition,s.position===(c&&f||u)?(t[o]=h||r[i]+r[o]-e,t[i]=e):(t[o]=h||l[o]+e-r[i],t[i]=r.isEmpty?e:r[i]),n.boundingRect=t},getBoundingRect:function(){return this._axisElementsGroup?this.boundingRect:{x:0,y:0,width:0,height:0}},shift:function(n,t){var i={};n&&(i.translateX=n),t&&(i.translateY=t),this._axisGroup.applySettings(i)},applyClipRect:function(n){this._axisStripGroup.applySettings({clipId:n})},validate:function(n,t){var r=this,i=r.options,u=i.range,e=new w.ParseUtils,f=n?i.argumentType:i.valueType,o=f?e.getParser(f,"axis"):function(n){return n};r.parser=o,r.incidentOccured=t,i.dataType=f,i.min&&(i.min=r.validateUnit(i.min,"E2106")),i.max&&(i.max=r.validateUnit(i.max,"E2106")),u.min&&(u.min=r.validateUnit(u.min)),u.max&&(u.max=r.validateUnit(u.max))},validateUnit:function(n,t,r){var u=this,f=u.options.dataType;return n=u.parser(n),n===i&&t&&u.incidentOccured(t,[r]),n},adjustZoomValues:function(n,t){var r=this,i=r.options.range;return n=r.validateUnit(n),t=r.validateUnit(t),i&&o(i.min)&&(n=o(n)?i.min<n?n:i.min:n,t=o(t)?i.min<t?t:i.min:t),i&&o(i.max)&&(t=o(t)?i.max>t?t:i.max:t,n=o(n)?i.max>n?n:i.max:n),r.minRangeArg=n,r.maxRangeArg=t,{min:n,max:t}},getRangeData:function(){var r=this,i=r.options,t=i.range,n={},u,f,e=function(t){i.valueMarginsEnabled?o(i[t])&&(n[t]=i[t],n[t+"Priority"]=b):(n[t]=0,n[t+"Priority"]=b)};return o(t.min)&&o(t.max)?(u=t.min<t.max?t.min:t.max,f=t.max>t.min?t.max:t.min):(u=t.min,f=t.max),n.min=u,n.max=f,e("minValueMargin"),e("maxValueMargin"),n.stick=!i.valueMarginsEnabled,n.categories=t.categories,n.dataType=i.dataType,n.axisType=i.type,n.axisType==="logarithmic"&&(n.base=i.logarithmBase),i.isHorizontal?(n.minVisible=o(r.minRangeArg)?r.minRangeArg:t.min,n.maxVisible=o(r.maxRangeArg)?r.maxRangeArg:t.max,n.invert=i.inverted):(n.minVisible=t.min,n.maxVisible=t.max,n.invert=i.inverted||i.type==="discrete"&&i.oppositeDirectionYAxis),n}})}(jQuery,DevExpress),function(n,t,i){var f=t.ui,r=t.viz.charts,u=t.utils,s=1200,h={animate:!1,isResize:!0},o=["reinit","_reinitDataSource","_handleDataSourceChanged","force_render"],e=t.viz.core,c={asyncSeriesRendering:!0,asyncTrackersRendering:!0,trackerRenderingDelay:s};r.BaseChart=e.BaseWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({done:n.noop,drawn:n.noop,seriesClick:null,pointClick:null,legendClick:null,argumentAxisClick:null,seriesHover:null,pointHover:null,seriesSelected:null,pointSelected:null,seriesSelectionChanged:null,pointSelectionChanged:null,seriesHoverChanged:null,pointHoverChanged:null})},_createThemeManager:function(){return r.factory.createThemeManager(this.option())},_init:function(){var n=this;n.callBase(),n.themeManager=this._createThemeManager(),n._initRenderer(),n.canvasClipRect=n.renderer.createClipRect(),n._createHtmlStructure(),n._needHandleRenderComplete=!0,n.layoutManager=r.factory.createChartLayoutManager(n.themeManager.getOptions("adaptiveLayout")),n._reinit();n._element().css({webkitUserSelect:"none"}).on("contextmenu",function(n){(f.events.isTouchEvent(n)||f.events.isPointerEvent(n))&&n.preventDefault()}).on("MSHoldVisual",function(n){n.preventDefault()})},_reinit:function(){var n=this;n.layoutManager.update(n),n._createTracker(),n._reinitDataSource()},_createHtmlStructure:function(){var n=this,t=n.renderer;n._panesBackgroundGroup=t.createGroup({"class":"dxc-background"}),n._titleGroup=t.createGroup({"class":"dxc-title"}),n._legendGroup=t.createGroup({"class":"dxc-legend",clipId:n._getCanvasClipRectID()}),n._stripsGroup=t.createGroup({"class":"dxc-strips-group"}),n._constantLinesGroup=t.createGroup({"class":"dxc-constant-lines-group"}),n._axesGroup=t.createGroup({"class":"dxc-axes-group"}),n._panesBorderGroup=t.createGroup({"class":"dxc-border"}),n._labelAxesGroup=t.createGroup({"class":"dxc-strips-labels-group"}),n._seriesGroup=t.createGroup({"class":"dxc-series-group"}),n._labelsGroup=t.createGroup({"class":"dxc-labels-group"}),n._tooltipGroup=t.createGroup({"class":"dxc-tooltip"}),n._trackerGroup=t.createGroup({"class":"dxc-trackers",opacity:.0001,stroke:"gray",fill:"gray"}),n._crosshairTrackerGroup=t.createGroup({"class":"dxc-crosshair-trackers",stroke:"none",fill:"grey"}).append(n._trackerGroup),n._seriesTrackerGroup=t.createGroup({"class":"dxc-series-trackers"}).append(n._trackerGroup),n._markerTrackerGroup=t.createGroup({"class":"dxc-markers-trackers",stroke:"none",fill:"grey"}).append(n._trackerGroup),n._crossHairCursorGroup=t.createGroup({"class":"dxc-crosshair-cursor"})},_cleanHtmlStructure:function(){var n=this;n._panesBackgroundGroup&&n._panesBackgroundGroup.clear(),n._titleGroup&&n._titleGroup.clear(),n._legendGroup&&(n._legendGroup.detach(),n._legendGroup.clear()),n._stripsGroup&&(n._stripsGroup.detach(),n._stripsGroup.clear()),n._constantLinesGroup&&(n._constantLinesGroup.detach(),n._constantLinesGroup.clear()),n._axesGroup&&(n._axesGroup.detach(),n._axesGroup.clear()),n._labelAxesGroup&&(n._labelAxesGroup.detach(),n._labelAxesGroup.clear()),n._seriesGroup&&(n._seriesGroup.detach(),n._seriesGroup.clear()),n._labelsGroup&&(n._labelsGroup.detach(),n._labelsGroup.clear()),n._trackerGroup&&(n._trackerGroup.detach(),n._seriesTrackerGroup.clear(),n._markerTrackerGroup.clear(),n._crosshairTrackerGroup.clear()),n._panesBorderGroup&&n._panesBorderGroup.clear(),n._tooltipGroup&&n._tooltipGroup.clear(),n._crossHairCursorGroup&&(n._crossHairCursorGroup.clear(),n._crossHairCursorGroup.detach())},_disposeObjectsInArray:function(t,i){n.each(this[t]||[],function(t,r){i&&r?n.each(i,function(n,t){r[t]&&r[t].dispose()}):r&&r.dispose()}),this[t]=null},_dispose:function(){var t=this,n=function(n){t[n]&&t[n].dispose(),t[n]=null},i=function(n){t[n]&&t[n].detach()},r=this._disposeObjectsInArray;clearTimeout(t.delayedRedraw),t.callBase(),r.call(t,"businessRanges",["arg","val"]),t.translators=null,r.call(t,"series"),n("layoutManager"),n("themeManager"),n("renderer"),n("tracker"),n("tooltip"),n("chartTitle"),t.paneAxis=null,t._userOptions=null,t.dirtyCanvas=null,t.canvas=null,i("_legendGroup"),i("_stripsGroup"),i("_constantLinesGroup"),i("_axesGroup"),i("_labelAxesGroup"),i("_seriesGroup"),i("_labelsGroup"),i("_trackerGroup"),i("_crossHairCursorGroup"),n("canvasClipRect"),n("_panesBackgroundGroup"),n("_titleGroup"),n("_legendGroup"),n("_stripsGroup"),n("_constantLinesGroup"),n("_axesGroup"),n("_labelAxesGroup"),n("_panesBorderGroup"),n("_seriesGroup"),n("_labelsGroup"),n("_tooltipGroup"),n("_crossHairCursorGroup"),n("_seriesTrackerGroup"),n("_markerTrackerGroup"),n("_crosshairTrackerGroup"),n("_trackerGroup"),t._disposeLoadIndicator()},_clean:function(n){this.renderer&&this.renderer.stopAllAnimations(),n&&this.hideLoadingIndicator(),this._cleanHtmlStructure(),this.callBase(),this._saveDirtyCanvas()},_getAnimationOptions:function(){return n.extend({},c,this.themeManager.getOptions("animation"))},_initRenderer:function(){this.renderer||(this.renderer=e.CoreFactory.createRenderer({animation:this._getAnimationOptions(),cssClass:"dxc dxc-chart",pathModified:this.option("pathModified"),rtl:this.themeManager.getOptions("rtlEnabled")}))},_initSeries:function(){this.series=this.series||this._populateSeries()},_reinitDataSource:function(){this._refreshDataSource()},_saveDirtyCanvas:function(){this.dirtyCanvas=n.extend({},this.canvas)},_resize:function(){this._render(h)},_calculateCanvas:function(){var t=this.themeManager.getOptions("size"),i={},r=this._element();return i.width=u.isDefined(t.width)?t.width<0?0:t.width:r.width()||400,i.height=u.isDefined(t.height)?t.height<0?0:t.height:r.height()||400,n.extend({},i,this.themeManager.getOptions("margin"))},_createTracker:function(){var n=this,t=n.themeManager.getOptions("tooltip")||{};n.tracker&&n.tracker.dispose(),n.tracker=r.factory.createTracker({series:n.series,valueAxis:n._valueAxes,argumentAxis:n._argumentAxes,seriesSelectionMode:n.themeManager.getOptions("seriesSelectionMode"),pointSelectionMode:n.themeManager.getOptions("pointSelectionMode"),tooltipShown:n.option("tooltipShown"),tooltipHidden:n.option("tooltipHidden"),markerTrackerGroup:n._markerTrackerGroup,crossHairOptions:n._crossHairOptions,seriesTrackerGroup:n._seriesTrackerGroup,seriesGroup:n._seriesGroup,tooltipEnabled:t.enabled,renderer:n.renderer,events:{seriesClick:n.option("seriesClick"),pointClick:n.option("pointClick"),argumentAxisClick:n.option("argumentAxisClick"),seriesHover:n.option("seriesHover"),seriesSelected:n.option("seriesSelected"),pointHover:n.option("pointHover"),pointSelected:n.option("pointSelected"),legendClick:n.option("legendClick"),seriesSelectionChanged:n.option("seriesSelectionChanged"),pointSelectionChanged:n.option("pointSelectionChanged"),seriesHoverChanged:n.option("seriesHoverChanged"),pointHoverChanged:n.option("pointHoverChanged")}})},_updateTracker:function(){var t=this;t.tracker?t.tracker._reinit({series:t.series,valueAxis:t._valueAxes,argumentAxis:t._argumentAxes,legendGroup:t.legend.getTrackerGroup(),legendCallback:n.proxy(t.legend.getActionCallback,t.legend)}):t._createTracker()},_render:function(n){this._optionsInitializing=!1;var t=this,u=t.renderer,r=t.canvas,o=this._element(),e=t._calculateCanvas(),f=t.dirtyCanvas;if(n=n||{recreateCanvas:!0},n.recreateCanvas=n.recreateCanvas||!u.isInitialized(),!n.force&&f&&f.width===e.width&&f.height===e.height&&!t.hiddenContainer){t.stopRedraw=!0;return}if(clearTimeout(t.delayedRedraw),n.recreateCanvas&&(t.canvas=r=t._calculateCanvas()),r.width&&r.height&&o.is(":visible"))t.hiddenContainer=!1;else{t._incidentOccured("W2001",[t.NAME]),t.hiddenContainer=!0,t.stopRedraw=!0,u.detachContainer();return}n.recreateCanvas&&(u.recreateCanvas(t.canvas.width,t.canvas.height),u.draw(t._element()[0]),t._reappendLoadIndicator(),t._updateLoadIndicator(i,r.width,r.height),t._updateCanvasClipRect()),t.renderer.stopAllAnimations(!0),t.layoutManager.update(t),t._cleanGroups(n),t._saveDirtyCanvas()},_cleanGroups:function(n){var t=this;t._stripsGroup.detach(),t._constantLinesGroup.detach(),t._axesGroup.detach(),t._labelAxesGroup.detach(),t._labelsGroup.detach(),t._tooltipGroup.detach(),t._crossHairCursorGroup.detach(),(!n||n.drawLegend)&&(t._legendGroup.detach(),t._legendGroup.clear()),(!n||n.drawTitle)&&(t._titleGroup.detach(),t._titleGroup.clear()),t._stripsGroup.clear(),t._constantLinesGroup.clear(),t._axesGroup.clear(),t._labelAxesGroup.clear(),t._labelsGroup.clear(),t._tooltipGroup.clear(),t._crossHairCursorGroup.clear(),t._crosshairTrackerGroup.clear()},_drawTitle:function(){var n=this,t=n.themeManager.getOptions("title"),i=n.canvas.width-n.canvas.left-n.canvas.right;t._incidentOccured=n._incidentOccured,n.chartTitle?n.chartTitle.update(t,i):n.chartTitle=r.factory.createTitle(n.renderer,t,i,n._titleGroup)},_createTooltip:function(){var t=this,r=n.extend(!0,{canvasWidth:t.canvas.width,canvasHeight:t.canvas.height},t.themeManager.getOptions("tooltip")||{}),f,o=this.tracker.pointAtShownTooltip;!n.isFunction(r.customizeText)&&u.isDefined(r.customizeText)&&(t._incidentOccured("E2103",["customizeText"]),r.customizeText=i),t.tooltip?t.tooltip.update(r):t.tooltip=e.CoreFactory.createTooltip(r,t._tooltipGroup,t.renderer),t.tracker.setTooltip(t.tooltip),o&&(f=o.getTooltipCoords(),t.tooltip.move(~~f.x,~~f.y,f.offset),t.tooltip.show())},_prepareDrawOptions:function(t){var r=this._getAnimationOptions(),i;return i=n.extend({},{force:!1,adjustAxes:!0,drawLegend:!0,drawTitle:!0,adjustSeriesLabels:!0,animate:r.enabled,animationPointsLimit:r.maxPointCountSupported,asyncSeriesRendering:r.asyncSeriesRendering,asyncTrackersRendering:r.asyncTrackersRendering,trackerRenderingDelay:r.trackerRenderingDelay},t),u.isDefined(i.recreateCanvas)||(i.recreateCanvas=i.adjustAxes&&i.drawLegend&&i.drawTitle),i},_processRefreshData:function(t){var i=n.inArray(this._currentRefreshData,o),r=n.inArray(t,o);(!this._currentRefreshData||i>=0&&r<i)&&(this._currentRefreshData=t)},_disposeSeries:function(){var t=this;t.tracker._clean(),n.each(t.series||[],function(n,t){t.dispose()}),t.series=null,n.each(t.seriesFamilies||[],function(n,t){t.dispose()}),t.seriesFamilies=null},_optionChanged:function(n){var t=this,i=this.themeManager;if(i.resetOptions(n),i.update(t._options),n==="animation"){t.renderer.updateAnimationOptions(this._getAnimationOptions());return}clearTimeout(t.delayedRedraw);switch(n){case"dataSource":t._needHandleRenderComplete=!0,t._processRefreshData("_reinitDataSource");break;case"palette":t.themeManager.updatePalette(this.option(n)),t._disposeSeries(),t._needHandleRenderComplete=!0,t._processRefreshData("_handleDataSourceChanged");break;case"series":case"commonSeriesSettings":case"containerBackgroundColor":case"dataPrepareSettings":t._disposeSeries(),t._needHandleRenderComplete=!0,t._processRefreshData("_handleDataSourceChanged");break;case"legend":case"seriesTemplate":t._processRefreshData("_handleDataSourceChanged");break;case"title":t._processRefreshData("force_render");break;case"valueAxis":case"argumentAxis":case"commonAxisSettings":t._needHandleRenderComplete=!0,t._processRefreshData("reinit"),t._disposeSeries(),t.paneAxis={};break;case"panes":case"defaultPane":t._disposeSeries(),t.paneAxis={},t._needHandleRenderComplete=!0,t._processRefreshData("reinit");break;case"size":t._processRefreshData("force_render");break;case"rotated":case"equalBarWidth":case"customizePoint":case"customizeLabel":t._disposeSeries(),t._needHandleRenderComplete=!0,t._processRefreshData("reinit");break;case"theme":t._disposeSeries(),i.setTheme(t.option(n)),t._processRefreshData("reinit");break;default:t._processRefreshData("reinit")}t.callBase.apply(t,arguments)},_getLoadIndicatorOption:function(){return this.themeManager.getOptions("loadingIndicator")},_refresh:function(){var n=this;if(this.renderer.stopAllAnimations(!0),n._currentRefreshData){switch(n._currentRefreshData){case"force_render":n._render({force:!0});break;case"reinit":n._reinit(!0);break;default:n[n._currentRefreshData]&&n[n._currentRefreshData]()}delete n._currentRefreshData}else n._render({force:!0})},_dataSourceOptions:function(){return{paginate:!1,_preferSync:!0}},_updateCanvasClipRect:function(n){var t=this,i,r;n=n||t.canvas,i=Math.max(n.width-n.left-n.right,0),r=Math.max(n.height-n.top-n.bottom,0),t.canvasClipRect.updateRectangle({x:n.left,y:n.top,width:i,height:r}),t.canvasClipRect.append()},_getCanvasClipRectID:function(){return this.canvasClipRect.id},_handleDataSourceChanged:function(){clearTimeout(this.delayedRedraw),this._dataSpecificInit(!0)},_groupSeries:function(){this._groupedSeries=[this.series]},_dataSpecificInit:function(n){this._initSeries(),this._repopulateSeries(),this._handleSeriesPopulated(n)},_processSingleSeries:function(){},_repopulateSeries:function(){var t=this,f,i=t._dataSource&&t._dataSource.items(),o=t.themeManager.getOptions("dataPrepareSettings"),e=t.themeManager.getOptions("seriesTemplate");t._dataSource&&e&&(t._templatedSeries=u.processSeriesTemplate(e,t._dataSource.items()),t._populateSeries(),delete t._templatedSeries,i=t.teamplateData||i),t._groupSeries(),t._dataValidator=r.factory.createDataValidator(i,t._groupedSeries,t._incidentOccured,o),f=t._dataValidator.validate(),t.themeManager.resetPalette(),n.each(t.series,function(n,i){i.updateData(f),t._processSingleSeries(i)})},_handleRenderComplete:function(){var t=this,r=this.option("done"),i=!0;t._needHandleRenderComplete&&(n.each(t.series,function(n,t){i=i&&t.canRenderCompleteHandle()}),i&&(t._needHandleRenderComplete=!1,n.isFunction(r)&&r.call(t)))},_renderTitleAndLegend:function(n,t){var i=this,f=i.themeManager.getOptions("title"),u=f.text&&n.drawTitle,e=n.drawLegend&&i.legend&&!t,r=[];u&&(i._titleGroup.append(),i._drawTitle(),r.push(i.chartTitle)),e&&(i._legendGroup.append(),r.push(i.legend)),r.length&&i.layoutManager.drawElements(r,i.canvas),u&&i.layoutManager.correctSizeElement(i.chartTitle,i.canvas)},getAllSeries:function(){return this.series.slice()},getSeriesByName:function(t){var i=null;return n.each(this.series,function(n,r){if(r.name===t)return i=r,!1}),i},getSeriesByPos:function(n){return this.series[n]},getSelectedSeries:function(){return null},clearSelection:function(){this.tracker.clearSelection()},hideTooltip:function(){this.tracker._hideTooltip()},showLoadingIndicator:function(){this._showLoadIndicator(this.themeManager.getOptions("loadingIndicator"),this.canvas||{})},render:function(n){this._render(n)},getSize:function(){var n=this.canvas||{};return{width:n.width,height:n.height}}}).include(f.DataHelperMixin)}(jQuery,DevExpress),function(n,t,i){function h(t){return n.isArray(t)?t.length===0?[{}]:t:[t]}var f=t.viz.core,e=t.viz.charts,u=t.utils,c=5,s="default",l="defaultAxisName",o=.1,a=25,r=n.each;e.Chart=e.BaseChart.inherit({_setDefaultOptions:function(){this.callBase(),this.option({defaultPane:s,panes:[{name:s,border:{}}]})},_dispose:function(){var n=this,t=this._disposeObjectsInArray;n.callBase(),n.panes=null,n.legend&&(n.legend.dispose(),n.legend=null),t.call(n,"panesBackground"),t.call(n,"panesClipRects"),t.call(n,"financialPanesClipRects"),t.call(n,"_argumentAxes"),t.call(n,"_valueAxes"),t.call(n,"seriesFamilies"),r(n._paneTrackerGroups||[],function(n,t){t.paneSeriesGroup.dispose(),t.paneMarkerGroup.dispose()}),n._paneTrackerGroups=null},_init:function(){this.paneAxis={},this._crossHairOptions={},this.callBase()},_reinit:function(n){var t=this;t.translators={},t.panes=t._createPanes(),t._populateAxes(),t.callBase(),delete t._seriesInitializing,t.series?t._correctValueAxes():t._dataSpecificInit(),t._endLoading(function(){n&&t._render({force:!0})})},_correctBusinessRange:function(t,i,r){var f="min",o="max",e,s;return!i||!u.isDefined(t[f])||!u.isDefined(t[o])?!1:(e={},s=i,i=n.isNumeric(i)?i:u.convertDateTickIntervalToMilliseconds(i),i>=Math.abs(t[o]-t[f]))?(u.isDate(t[f])?(n.isNumeric(s)?(e[f]=new Date(t[f].valueOf()-i),e[o]=new Date(t[o].valueOf()+i)):(e[f]=u.addInterval(t[f],s,!0),e[o]=u.addInterval(t[o],s,!1)),r&&(u.correctDateWithUnitBeginning(e[o],s),u.correctDateWithUnitBeginning(e[f],s))):(e[f]=t[f]-i,e[o]=t[o]+i),t.addRange(e),!0):!1},_seriesVisibilityChanged:function(){this._processSeriesFamilies(),this._populateBusinessRange(),this.renderer.stopAllAnimations(!0),this._render({force:!0,asyncSeriesRendering:!1,asyncTrackersRendering:!1})},_populateBusinessRange:function(n){var t=this,h=[],c,a,v,s,y=t.themeManager,p=y.getOptions("rotated"),l,w=t._valueAxes,b={},k=t._argumentAxes,tt=y.getOptions("useAggregation"),d,g,it=t.paneAxis,rt=t._groupedSeries,e,nt;t._disposeObjectsInArray("businessRanges",["arg","val"]),e=new f.Range({rotated:!!p,minValueMargin:o,maxValueMargin:o}),r(w,function(n,t){b[t.name]=t}),r(it,function(y,b){r(b,function(b){var ut=[],et,ft,ot,it=new f.Range({isValueRange:!0,rotated:!!p,pane:y,axis:b,minValueMargin:o,maxValueMargin:o}),st,ht,ct;for(r(rt,function(n,t){t[0].pane===y&&t[0].axis===b&&(ut=t)}),r(w,function(n,t){if(t.pane===y&&t.name===b)return ot=t,!1}),et=ut&&ut.length?ut[0]:{},r(k,function(n,i){var r=i.options;r.type=et.argumentAxisType||r.type,r.argumentType=et.argumentType||r.argumentType,i.validate(!0,t._incidentOccured),e=e.addRange(i.getRangeData()),d=r.tickInterval,g=r.setTicksAtUnitBeginning,ht=i.calcInterval}),ft=ot.options,ft.type=et.valueAxisType||ft.type,ft.valueType=et.valueType||ft.valueType,ot.validate(!1,t._incidentOccured),ct=new f.Range(ot.getRangeData()),st=st||ft.valueType==="datetime"?"datetime":i,it=it.addRange(ct),a=it.min,v=it.max,s=0;s<ut.length;s++)n&&(n.minVal=a,n.maxVal=v,tt&&!n.adjustOnZoom&&(c=ut[s]._originalBusinessRange,n.minVal=u.isDefined(n.minVal)?n.minVal:c.val.min,n.maxVal=u.isDefined(n.maxVal)?n.maxVal:c.val.max)),l=ut[s].getRangeData(n,ht),it=it.addRange(l.val),e=e.addRange(l.arg);it.isDefined()||it.setStubData(st),h.push({val:it})})}),e.isDefined()||e.setStubData(k[0].options.argumentType),nt=t._correctBusinessRange(e,d,g),nt||e.applyValueMargins(),r(h,function(n,t){var i=t.val,r=b[i.axis];i.applyValueMargins(),r&&r.options.showZero&&i.correctValueZeroLevel(),t.arg=e}),t.businessRanges=h},_groupSeries:function(){var t=this,o=t.panes,u=t._valueAxes,s=n.map(o,function(n){return n.name}),f=t.series,i=t.paneAxis,h=t._groupedSeries=[],c=function(n,t){for(var r,i=0;i<n.length;i++)if(n[i].pane===t){r=n[i].name;break}return r||(r=u[0].name),r},e;r(f,function(n,t){t.axis=t.axis||c(u,t.pane),t.axis&&(i[t.pane]=i[t.pane]||{},i[t.pane][t.axis]=!0)}),r(u,function(t,r){r.name&&r.pane&&n.inArray(r.pane,s)!=-1&&(i[r.pane]=i[r.pane]||{},i[r.pane][r.name]=!0)}),t._correctValueAxes(),e=function(n){var f=[],i;r(u,function(t,i){i.pane===n&&f.push(i)}),f.length>1&&t.themeManager.getOptions("synchronizeMultiAxes")&&r(f,function(n,t){var r=t.options.grid;i&&r&&r.visible?r.visible=!1:i=i?i:r&&r.visible})},r(i,function(n,t){e(n),r(t,function(t){var u=[];r(f,function(i,r){r.pane===n&&r.axis===t&&u.push(r)}),u.length&&h.push(u)})})},_cleanPanesClipRects:function(n){var t=this,i=t[n];r(i||[],function(n,t){t&&t.remove()}),t[n]=[]},_createPanes:function(){var i=this,t=i.option("panes"),e=0,f;return(t&&u.isArray(t)&&!t.length||n.isEmptyObject(t))&&(t=i.initialOption("panes")),i._cleanPanesClipRects("panesClipRects"),i._cleanPanesClipRects("financialPanesClipRects"),i.defaultPane=i.option("defaultPane"),t=n.isArray(t)?t:t?[t]:[],r(t,function(n,t){t.name=u.isDefined(t.name)?t.name:s+e++}),!i._doesPaneExists(t,i.defaultPane)&&t.length>0&&(f=t[t.length-1].name,i._incidentOccured("W2101",[i.defaultPane,f]),i.defaultPane=f),t=i.themeManager.getOptions("rotated")?t.reverse():t},_doesPaneExists:function(n,t){var i=!1;return r(n,function(n,r){if(r.name===t)return i=!0,!1}),i},_populateSeries:function(){var i=this,o=i.themeManager,p=!!o.getOptions("seriesTemplate"),l=p?i._templatedSeries:i.option("series"),w=n.isArray(l)?l:l?[l]:[],a=i.option("argumentAxis"),s=i.option("valueAxis"),b,t,h,k=o.getOptions("rotated"),c,d=n.map(i.panes,function(n){return n.name}),v,y,e;for(i.teamplateData=[],r(i._paneTrackerGroups||[],function(n,t){t.paneSeriesGroup.remove(),t.paneMarkerGroup.remove()}),i._paneTrackerGroups=[],r(i.panes,function(){var r=i.renderer.createGroup({"class":"dxc-pane-tracker"}),u=i.renderer.createGroup({"class":"dxc-pane-tracker"});i._paneTrackerGroups.push({paneSeriesGroup:r,paneMarkerGroup:u})}),i._disposeSeries(),i.series=[],o.resetPalette(),c=0;c<w.length;c++)(t=n.extend(!0,{},w[c]),t.type&&!u.isString(t.type)&&(t.type=""),b=t.data,t.data=null,t.rotated=k,t.customizePoint=o.getOptions("customizePoint"),t.customizeLabel=o.getOptions("customizeLabel"),t.visibilityChanged=n.proxy(this._seriesVisibilityChanged,this),t.resolveLabelsOverlapping=o.getOptions("resolveLabelsOverlapping"),a&&(t.argumentCategories=a.categories,t.argumentAxisType=a.type,t.argumentType=a.argumentType),s&&(u.isArray(s)?r(s,function(n,i){(t.axis||n)&&t.axis!==i.name||(t.valueCategories=i.categories,t.valueAxisType=i.type,t.valueType=i.valueType,t.showZero=i.showZero)}):(t.valueCategories=s.categories,t.valueAxisType=s.type,t.valueType=s.valueType,t.showZero=s.showZero)),t.incidentOccured=i._incidentOccured,t.name||(t.name="Series "+(c+1).toString()),e=o.getOptions("series",t),e.pane=e.pane||i.defaultPane,v=e.pane,y=i._getPaneIndex(v),n.inArray(v,d)!==-1)&&(e.seriesGroup=i._seriesGroup,e.labelsGroup=i._labelsGroup,e.trackersGroup=i._paneTrackerGroups[y].paneSeriesGroup,e.markerTrackerGroup=i._paneTrackerGroups[y].paneMarkerGroup,h=f.CoreFactory.createSeries(i.renderer,e),h.isUpdated?(h.index=c,i.series.push(h)):i._incidentOccured("E2101",[e.type]),p&&(r(b,function(n,t){r(h.getTeamplatedFields(),function(n,i){t[i.teamplateField]=t[i.originalField]}),i.teamplateData.push(t)}),h.updateTeamplateFieldNames()));return i.series},_createValueAxis:function(t,i,u){var o=this,f;return t=o.themeManager.getOptions("valueAxis",n.extend({isHorizontal:i,tickProvider:u,incidentOccured:o._incidentOccured},t),i),t.strips&&r(t.strips,function(i){t.strips[i]=n.extend(!0,{},t.stripStyle,t.strips[i])}),t.constantLines&&r(t.constantLines,function(i,r){t.constantLines[i]=n.extend(!0,{},t.constantLineStyle,r)}),f=e.factory.createAxis(o.renderer,t),f.name=t.name,f.pane=f.pane||t.pane,f.priority=t.priority,f},_disposeAxes:function(){var n=this;r(n._valueAxes||[],function(n,t){t.dispose()}),r(n._argumentAxes||[],function(n,t){t.dispose()}),n._valueAxes=null,n._argumentAxes=null},_populateAxes:function(){var t=this,v=[],y=[],u=t.panes,k=t.themeManager,o=k.getOptions("rotated"),d=t.option("valueAxis")||{},g=t.option("argumentAxis")||{},c=h(g),nt=h(d),s,p=[],w=f.CoreFactory.getTickProvider(),a,b;t._disposeAxes(),b=function(i,u){return i=t.themeManager.getOptions("argumentAxis",n.extend(!0,{isHorizontal:!o,tickProvider:w,pane:t.defaultPane,incidentOccured:t._incidentOccured},i),o),i.strips&&r(i.strips,function(t){i.strips[t]=n.extend(!0,{},i.stripStyle,i.strips[t])}),i.constantLines&&r(i.constantLines,function(t,r){i.constantLines[t]=n.extend(!0,{},i.constantLineStyle,r)}),s=e.factory.createAxis(t.renderer,i),s._virtual=u,y.push(s),s},a=o?c[0].position==="right"?u[u.length-1].name:u[0].name:c[0].position==="top"?u[0].name:u[u.length-1].name,r(u,function(t,i){var r=i.name,u=r!=a,f=n.extend(!0,{},c[0],{pane:r});b(f,u)});var tt=0,it=function(){return l+tt++},rt=function(t){for(var r={},u=t.length,i=0;i<u;i++)r[t[i]]=!0;return n.map(r,function(n,t){return t})};r(nt,function(u,f){var e=[],s=f.name;if(s&&n.inArray(s,p)!=-1){t._incidentOccured("E2102");return}s&&p.push(s),f.pane&&e.push(f.pane),f.panes&&f.panes.length&&(e=e.concat(f.panes.slice(0))),e=rt(e),e.length||e.push(i),r(e,function(i,r){v.push(t._createValueAxis(n.extend(!0,{},f,{name:s||it(),pane:r,priority:u}),o,w))})}),t._valueAxes=v,t._argumentAxes=y},_correctValueAxes:function(){var i=this,v=i.themeManager.getOptions("rotated"),s=i.option("valueAxis")||{},h=n.isArray(s)?s:[s],y=f.CoreFactory.getTickProvider(),t=i._valueAxes||[],p=t[0].name,e=i.paneAxis||{},o=i.panes,u,c={},w=function(n){var t;return r(i.paneAxis,function(i,u){r(u,function(r){if(n==r)return t=i,!1})}),t},b=n.map(t,function(n){return n.pane?null:n}),l,a;for(r(b,function(n,t){t.pane=w(t.name),t.pane||(t.pane=i.defaultPane,e[t.pane]=e[t.pane]||{},e[t.pane][t.name]=!0),t.options.pane=t.pane}),u=0;u<o.length;u++)e[o[u].name]||(e[o[u].name]={},e[o[u].name][p]=!0);l=function(n){for(var u,r=0;r<h.length;r++)if(h[r].name==n){u=h[r],u.priority=r;break}if(!u)for(r=0;r<t.length;r++)if(t[r].name==n){u=t[r].options,u.priority=t[r].priority;break}return u||(i._incidentOccured("W2102",[n]),u={name:n,priority:t.length}),u},a=function(n,i){var r;for(u=0;u<t.length;u++)if(r=t[u],r.name===i&&r.pane===n)return r},r(i.paneAxis,function(u,f){r(f,function(r){if(c[r+"-"+u]=!0,!a(u,r)){var e=l(r);e&&t.push(i._createValueAxis(n.extend(!0,{},e,{pane:u,name:r}),v,y))}})}),t=n.grep(t,function(n){return!!c[n.name+"-"+n.pane]}),t.sort(function(n,t){return n.priority-t.priority}),i._valueAxes=t},_processSeriesFamilies:function(){var t=this,u=[],o=[],e,i=t.themeManager,s=i.getOptions("rotated");if(t.seriesFamilies&&t.seriesFamilies.length){r(t.seriesFamilies,function(n,t){t.adjustSeriesValues()});return}r(t.series,function(t,i){n.inArray(i.type,u)===-1&&u.push(i.type)}),r(t.panes,function(n,h){e=[],r(t.series,function(n,t){t.pane===h.name&&e.push(t)}),r(u,function(n,t){var r=f.CoreFactory.createSeriesFamily({type:t,pane:h.name,rotated:s,equalBarWidth:i.getOptions("equalBarWidth"),minBubbleSize:i.getOptions("minBubbleSize"),maxBubbleSize:i.getOptions("maxBubbleSize")});r.add(e),r.adjustSeriesValues(),o.push(r)})}),t.seriesFamilies=o},_createLegend:function(){var t=this,r=[],i=t.themeManager.getOptions("legend");r=n.map(t.series,function(n){if(n.getOptions().showInLegend)return{text:n.name,color:n.getColor(),id:n.index,states:n.getLegendStyles()}}),i.containerBackgroundColor=t.themeManager.getOptions("containerBackgroundColor"),i._incidentOccured=t._incidentOccured,t.legend?t.legend.update(r,i):t.legend=f.CoreFactory.createLegend(r,i,t.renderer,t._legendGroup)},_createTranslator:function(n,t,i){return f.CoreFactory.createTranslator2D(n,t,i)},_createPanesBorderOptions:function(){var i=this.themeManager.getOptions("commonPaneSettings").border,t={};return r(this.panes,function(r,u){var f=n.extend(!0,{},i,u.border);t[u.name]=f}),t},_render:function(i){var f=this,l=f.themeManager,o=l.getOptions("rotated"),s,h=f.layoutManager,v=f._createPanesBorderOptions(),y,c=f.legend&&f.legend.getPosition()==="inside",p=function(){function b(n){var t=f._getPaneIndex(n.pane);n.setClippingParams(n.isFinancialSeries()?f.financialPanesClipRects[t].id:f.panesClipRects[t].id,f._getPaneBorderVisibility(t))}function k(n,i){if(l.getOptions("tooltip").shared){var f=n.getPoints(),u=n.getStackName();r(f,function(n,f){var e=f.argument;i[e]||(i[e]={},i[e][null]=[]),u&&!t.utils.isArray(i[e][u])&&(i[e][u]=[],r(i[e][null],function(n,t){t.stackName||i[e][u].push(t)})),u?(i[e][u].push(f),i[e][null].push(f)):r(i[e],function(n,t){t.push(f)}),f.stackPoints=i[e][u],f.stackName=u})}}var u=f.panes,v=f.layoutManager.needMoreSpaceForPanesCanvas(f.panes,o)&&!f.themeManager.getOptions("adaptiveLayout").keepLabels,w={},s,h,a;r(f.seriesFamilies||[],function(n,t){var r=f._getTranslator(t.pane)||{},i={};i[o?"x":"y"]=r.val,i[o?"y":"x"]=r.arg,t.updateSeriesValues(i),t.adjustSeriesDimensions(i)}),f._createCrossHairCursor(),r(f.series,function(n,t){k(t,w),b(t),t.setAdjustSeriesLabels(i.adjustSeriesLabels);var u=f._getTranslator(t.pane,t.axis),r={};r[o?"x":"y"]=u.val,r[o?"y":"x"]=u.arg,t.draw(r,i.animate&&t.getPoints().length<=i.animationPointsLimit&&f.renderer.animationEnabled(),v,f.legend&&f.legend.getActionCallback(t))}),f._trackerGroup.append(),i.drawLegend&&f.legend&&c&&(s=n.extend({},u[0].canvas),h=e.factory.createChartLayoutManager(),s.right=u[u.length-1].canvas.right,s.bottom=u[u.length-1].canvas.bottom,f._legendGroup.append(),f._tooltipGroup.append(),h.drawElements([f.legend],s),h.placeDrawnElements(s)),y&&f.hideLoadingIndicator(),f._drawn(),a=function(){for(var n=0;n<f.series.length;n++)f.series[n].drawTrackers();f.legend&&(f.legend.drawTrackers(),c&&f._legendGroup.append(),c&&f._tooltipGroup.append()),f.tracker._prepare(),r(f._paneTrackerGroups,function(n,t){t.paneSeriesGroup.append(f._seriesTrackerGroup),t.paneMarkerGroup.append(f._markerTrackerGroup)}),f._handleRenderComplete()},f._createTooltip(),i.asyncTrackersRendering?f.delayedRedraw=setTimeout(a,i.trackerRenderingDelay):a()};if(i=f._prepareDrawOptions(i),f.callBase(i),f.stopRedraw){f.stopRedraw=!1;return}for(f._createPanesBackground(),f._stripsGroup.append(),f._axesGroup.append(),f._constantLinesGroup.append(),f._labelAxesGroup.append(),f._createTranslators(i),f._options.useAggregation&&r(f.series,function(n,t){t._originalBusinessRange=t._originalBusinessRange||t.getRangeData();var r=f._getTranslator(t.pane,t.axis),i={};i[o?"x":"y"]=r.val,i[o?"y":"x"]=r.arg,t.resamplePoints(i,f._zoomMinArg,f._zoomMaxArg)}),(u.isDefined(f._zoomMinArg)||u.isDefined(f._zoomMaxArg))&&f._populateBusinessRange({adjustOnZoom:l.getOptions("adjustOnZoom"),minArg:f._zoomMinArg,maxArg:f._zoomMaxArg}),(f._options.useAggregation||u.isDefined(f._zoomMinArg)||u.isDefined(f._zoomMaxArg))&&f._updateTranslators(),f._renderTitleAndLegend(i,c),i&&i.recreateCanvas&&h.updatePanesCanvases(f.panes,f.canvas,o),f._drawAxes(v,i),h.needMoreSpaceForPanesCanvas(f.panes,o)&&(h.updateDrawnElements(f._argumentAxes,f._valueAxes,f.canvas,f.dirtyCanvas,f.panes,o),f.chartTitle&&f.layoutManager.correctSizeElement(f.chartTitle,f.canvas),f._updateCanvasClipRect(f.dirtyCanvas),h.updatePanesCanvases(f.panes,f.canvas,o),f._drawAxes(v,i,!0)),h.placeDrawnElements(f.canvas),f._drawPanesBorders(v),f._createClipRectsForPanes(),s=0;s<f._argumentAxes.length;s++)f._argumentAxes[s].applyClipRect(f._getElementsClipRectID(f._argumentAxes[s].pane));for(s=0;s<f._valueAxes.length;s++)f._valueAxes[s].applyClipRect(f._getElementsClipRectID(f._valueAxes[s].pane));f._fillPanesBackground(),f._seriesGroup.append(),f._labelsGroup.append(),f._crossHairCursorGroup.append(),f._legendGroup.append(),f._tooltipGroup.append(),y=f._loadIndicator&&f._loadIndicator.isShown&&f._dataSource&&f._dataSource.isLoaded()&&!i.isResize,i.asyncSeriesRendering?f.delayedRedraw=setTimeout(p,a):p()},_createTranslators:function(n){var t=this,u=t.themeManager.getOptions("rotated"),i;n.recreateCanvas&&(t.translators=i={},t.layoutManager.updatePanesCanvases(t.panes,t.canvas,u),r(t.paneAxis,function(n,e){i[n]=i[n]||{},r(e,function(r){var o=t._createTranslator(new f.Range(t._getBusinessRange(n,r).val),t._getCanvasForPane(n),u?{direction:"horizontal"}:{});o.pane=n,o.axis=r,i[n][r]={val:o}})}),r(t._argumentAxes,function(n,e){var o=t._createTranslator(new f.Range(t._getBusinessRange(e.pane).arg),t._getCanvasForPane(e.pane),u?{}:{direction:"horizontal"});r(i[e.pane],function(n,t){t.arg=o})}))},_updateTranslators:function(){var n=this;r(n.translators,function(t,i){r(i,function(i,r){r.arg.updateBusinessRange(new f.Range(n._getBusinessRange(t).arg)),delete r.arg._originalBusinessRange,r.val.updateBusinessRange(new f.Range(n._getBusinessRange(t,i).val)),delete r.val._originalBusinessRange})})},_reinitTranslators:function(){var n=this;r(n._argumentAxes,function(t,i){var r=n._getTranslator(i.pane);r&&(r.arg.reinit(),i.setRange(r.arg.getBusinessRange()),i.setTranslator(r.arg,r.val))}),r(n._valueAxes,function(t,i){var r=n._getTranslator(i.pane,i.name);r&&(r.val.reinit(),i.setRange(r.val.getBusinessRange()),i.setTranslator(r.val,r.arg))})},_drawAxes:function(n,t,i){function a(t){r(t,function(t,r){r.clipRectID=u._getCanvasClipRectID(),r.stripsGroup=u._stripsGroup,r.labelAxesGroup=u._labelAxesGroup,r.constantLinesGroup=u._constantLinesGroup,r.axesContainerGroup=u._axesGroup,r.draw({borderOptions:n[r.pane]},i)})}var u=this,f=0,o=u.layoutManager,s=u.themeManager.getOptions("rotated"),l=u.translators,h=0,v=u.themeManager.getOptions("synchronizeMultiAxes");u._reinitTranslators();do{for(f=0;f<u._argumentAxes.length;f++)u._argumentAxes[f].resetTicks();for(f=0;f<u._valueAxes.length;f++)u._valueAxes[f].resetTicks();v&&e.multiAxesSynchronizer.synchronize(u._valueAxes),a(s?u._valueAxes:u._argumentAxes),o.requireAxesRedraw=!1,t.adjustAxes&&(o.applyHorizontalAxesLayout(s?u._valueAxes:u._argumentAxes),o.stopDrawAxes||r(l,function(n,t){r(t,function(n,t){t.arg.reinit(),t.val.reinit()})})),a(s?u._argumentAxes:u._valueAxes),t.adjustAxes&&!o.stopDrawAxes&&(o.applyVerticalAxesLayout(s?u._argumentAxes:u._valueAxes),o.stopDrawAxes||r(l,function(n,t){r(t,function(n,t){t.arg.reinit(),t.val.reinit()})})),h=h+1}while(!o.stopDrawAxes&&o.requireAxesRedraw&&h<c)},_createCrossHairCursor:function(){var u=this,e=u.renderer,o=u.panes,i,r,t=u.themeManager.getOptions("crosshair")||{},s,h,c,l,f;if(t&&t.enabled){for(c={stroke:t.horizontalLine.color||t.color,strokeWidth:t.horizontalLine.width||t.width,dashStyle:t.horizontalLine.dashStyle||t.dashStyle,visibility:"hidden",opacity:t.horizontalLine.opacity||t.opacity},l={stroke:t.verticalLine.color||t.color,strokeWidth:t.verticalLine.width||t.width,dashStyle:t.verticalLine.dashStyle||t.dashStyle,visibility:"hidden",opacity:t.verticalLine.opacity||t.opacity},f=0;f<o.length;f++)r=o[f].canvas,i?(i.right=r.right,i.bottom=r.bottom):i=n.extend({},r),e.createRect(r.left,r.top,r.width-r.right-r.left,r.height-r.bottom-r.top,0).append(this._crosshairTrackerGroup);t.horizontalLine&&t.horizontalLine.visible&&(s=e.createLine(i.left,i.top,i.width-i.right,i.top,c).append(u._crossHairCursorGroup)),t.verticalLine&&t.verticalLine.visible&&(h=e.createLine(i.left,i.top,i.left,i.height-i.bottom,l).append(u._crossHairCursorGroup)),u._crossHairOptions.horizontalLine=s,u._crossHairOptions.verticalLine=h,u._crossHairOptions.canvas=i}},_createPanesBackground:function(){var n=this,f=n.themeManager.getOptions("commonPaneSettings").backgroundColor,t,e=n.renderer,u,i,r=[];for(n._panesBackgroundGroup&&n._panesBackgroundGroup.clear(),i=0;i<n.panes.length;i++){if(t=n.panes[i].backgroundColor||f,!t||t==="none"){r.push(null);continue}u=e.createRect(0,0,0,0,0,{fill:t,strokeWidth:0}).append(n._panesBackgroundGroup),r.push(u)}n.panesBackground=r,n._panesBackgroundGroup.append()},_fillPanesBackground:function(){var t=this,n;r(t.panes,function(i,r){n=r.borderCoords,t.panesBackground[i]!=null&&t.panesBackground[i].applySettings({x:n.left,y:n.top,width:n.width,height:n.height})})},_calcPaneBorderCoords:function(n){var r=n.canvas,i=n.borderCoords=n.borderCoords||{};i.left=r.left,i.top=r.top,i.right=r.width-r.right,i.bottom=r.height-r.bottom,i.width=Math.max(i.right-i.left,0),i.height=Math.max(i.bottom-i.top,0)},_drawPanesBorders:function(n){var t=this,i=t.themeManager.getOptions("rotated");t._panesBorderGroup&&(t._panesBorderGroup.detach(),t._panesBorderGroup.clear()),r(t.panes,function(r,u){var e,f=n[u.name],o={fill:"none",stroke:f.color,strokeOpacity:f.opacity,strokeWidth:f.width,dashStyle:f.dashStyle};(t._calcPaneBorderCoords(u,i),f.visible)&&(e=u.borderCoords,t.renderer.createSegmentRect(e.left,e.top,e.width,e.height,0,f,o).append(t._panesBorderGroup))}),t._panesBorderGroup.append()},_createClipRect:function(n,t,i,r,u,f){var o=this,e=n[t];e?e.updateRectangle({x:i,y:r,width:u,height:f}):(e=o.renderer.createClipRect(i,r,u,f),n[t]=e),e.append()},_createClipRectsForPanes:function(){var n=this,t=n.canvas;r(n.panes,function(i,u){var c=!1,f=u.borderCoords,e=f.left,o=f.top,s=f.width,h=f.height;n._createClipRect(n.panesClipRects,i,e,o,s,h),r(n.series,function(n,t){t.pane===u.name&&t.isFinancialSeries()&&(c=!0)}),c?(n.themeManager.getOptions("rotated")?(o=0,h=t.height):(e=0,s=t.width),n._createClipRect(n.financialPanesClipRects,i,e,o,s,h)):n.financialPanesClipRects.push(null)})},_getPaneIndex:function(n){var t;return r(this.panes,function(i,r){if(r.name===n)return t=i,!1}),t},_getPaneBorderVisibility:function(n){var i=this.themeManager.getOptions("commonPaneSettings").border.visible,r=this.panes[n]||{},t=r.border||{};return"visible"in t?t.visible:i},_getElementsClipRectID:function(n){return this.panesClipRects[this._getPaneIndex(n)].id},_getTranslator:function(n,t){var u=this.translators[n],i=null;return u?(i=u[t],i||r(u,function(n,t){return i=t,!1}),i):i},_getCanvasForPane:function(n){for(var i=this.panes,r=i.length,t=0;t<r;t++)if(i[t].name===n)return i[t].canvas},_getBusinessRange:function(n,t){for(var r=this.businessRanges||[],f=r.length,u,i=0;i<f;i++)if(r[i].val.pane===n&&r[i].val.axis===t){u=r[i];break}if(!u)for(i=0;i<f;i++)if(r[i].val.pane===n){u=r[i];break}return u},_handleSeriesPopulated:function(n){var t=this;t._processSeriesFamilies(),t._createLegend(),t._populateBusinessRange(),t._processValueAxisFormat(),t._updateTracker(),t._endLoading(function(){n&&t._render({force:!0})})},_processValueAxisFormat:function(){var i=this,u=i._valueAxes,t=[];r(i.series,function(){this.isFullStackedSeries()&&n.inArray(this.axis,t)===-1&&t.push(this.axis)}),r(u,function(){n.inArray(this.name,t)!==-1?this.setPercentLabelFormat():this.resetAutoLabelFormat()})},zoomArgument:function(n,t){var i=this,r=i._argumentAxes[0].adjustZoomValues(n,t);i._zoomMinArg=r.min,i._zoomMaxArg=r.max,i._render({force:!0,drawTitle:!1,drawLegend:!1,adjustAxes:!1,animate:!1,adjustSeriesLabels:!1,asyncSeriesRendering:!1})}})}(jQuery,DevExpress),function(n,t){var r=t.viz.core,u=t.viz.charts,f=t.utils;u.PieChart=u.BaseChart.inherit({_createThemeManager:function(){return u.factory.createThemeManager(this.option(),"pie")},_reinit:function(n){var t=this;t.callBase(),t.series||t._dataSpecificInit(),t._endLoading(function(){n&&t._render({force:!0})})},_populateBusinessRange:function(){var i=[],f=this.series,t=f[0],n,u;this._disposeObjectsInArray("businessRanges"),t&&(n=new r.Range({series:t}),u=t.getRangeData(),n=n.addRange(u.val),n.isDefined()||n.setStubData(),i.push(n)),this.businessRanges=i},_seriesVisibilytyChanged:function(){this.series[0].arrangePoints(),this._populateBusinessRange(),this._refresh()},_createTranslator:function(n){return r.CoreFactory.createTranslator1D(n.min,n.max,360,0)},_populateSeries:function(){var t=this,l=t.renderer,e=t.themeManager,a=!!e.getOptions("seriesTemplate"),o=a?t._templatedSeries:t.option("series"),h=n.isArray(o)?o:o?[o]:[],c,u,s,i;return t._disposeSeries(),t.series=[],e.resetPalette(),h.length&&(u=n.extend(!0,{},h[0]),u.type&&!f.isString(u.type)&&(u.type=""),c=u.data,u.data=null,u.incidentOccured=t._incidentOccured,i=e.getOptions("series",u,!0),i.seriesGroup=t._seriesGroup,i.trackerGroup=t._trackerGroup,i.seriesLabelsGroup=t._labelsGroup,i.seriesTrackerGroup=t._seriesTrackerGroup,i.markerTrackerGroup=t._markerTrackerGroup,i.visibilityChanged=n.proxy(this._seriesVisibilytyChanged,this),i.customizePoint=e.getOptions("customizePoint"),i.customizeLabel=e.getOptions("customizeLabel"),s=r.CoreFactory.createSeries(l,i),s.isUpdated?(t._processSingleSeries(s),t.series.push(s)):t._incidentOccured("E2101",[i.type]),u.data=c),t.series},_processSingleSeries:function(n){n.arrangePoints()},_handleSeriesPopulated:function(n){var t=this;t._populateBusinessRange(),t._createLegend(),t._updateTracker(),t._endLoading(function(){n&&t._render({force:!0,recreateCanvas:!0})})},_createLegend:function(){var t=this,i=t.themeManager.getOptions("legend"),u=n.map(t.series[0]?t.series[0].getPoints():[],function(n){return{text:n.argument,color:n.getColor(),id:n.index,states:n.getLegendStyles()}});i._incidentOccured=t._incidentOccured,t.legend=r.CoreFactory.createLegend(u,i,t.renderer,t._legendGroup)},_render:function(n){var t=this,i=t.series&&t.series[0],r=t.layoutManager,u;if(n=t._prepareDrawOptions(n),t.callBase(n),t.stopRedraw){t.stopRedraw=!1;return}t._renderTitleAndLegend(n),r.needMoreSpaceForPanesCanvas([t])&&(r.updateDrawnElements([],[],t.canvas,t.dirtyCanvas,[t]),t.chartTitle&&t.layoutManager.correctSizeElement(t.chartTitle,t.canvas),t._updateCanvasClipRect(t.dirtyCanvas)),r.placeDrawnElements(t.canvas),i&&(u=r.needMoreSpaceForPanesCanvas([t])&&!t.themeManager.getOptions("adaptiveLayout").keepLabels,r.applyPieChartSeriesLayout(t.canvas,i,!0),t._seriesGroup.append(),t._labelsGroup.append(),i.canvas=t.canvas,i.resetLabelEllipsis(),i.draw(t._createTranslator(t.businessRanges[0],t.canvas),n.animate&&t.renderer.animationEnabled(),u),i.redraw&&(t.renderer.stopAllAnimations(!0),r.applyPieChartSeriesLayout(t.canvas,i,u),i.draw(t._createTranslator(t.businessRanges[0],t.canvas),n.animate&&t.renderer.animationEnabled(),u)),t._tooltipGroup.append(),t._trackerGroup.append(),t._createTooltip(),i.drawTrackers(),t.tracker._prepare("pieChart")),t._dataSource&&t._dataSource.isLoaded()&&!n.isResize&&t.hideLoadingIndicator(),t._drawn(),t._handleRenderComplete()},getSeries:function(){return this.series&&this.series[0]}})}(jQuery,DevExpress),function(n,t){var e=t.utils.isNumber,r=Math,f=DevExpress.viz.core.utils.decreaseGaps,o=10,u=r.round;t.viz.charts.LayoutManager=t.Class.inherit(function(){var h=function(n){this.verticalElements=[],this.horizontalElements=[],this._options=n},c=function(n){this.chart=n,t(n&&n.canvas)},l=function(){this.chart=null},t=function(n){n&&(n.originalTop=n.top,n.originalBottom=n.bottom,n.originalLeft=n.left,n.originalRight=n.right)},i=function(i,r){n.each(i,function(n,i){var e,o,f=i.getLayoutOptions(),h=s(f.cutLayoutSide);if(f.width){switch(f.horizontalAlignment){case"left":e=r.left;break;case"center":e=(r.width-r.left-r.right-f.width)/2+r.left;break;case"right":e=r.width-r.right-f.width}switch(f.verticalAlignment){case"top":o=r.top;break;case"bottom":o=r.height-r.bottom-f.height}i.shift(u(e),u(o)),r[f.cutLayoutSide]+=f[h],t(r)}})},a=function(i,r){var u=this,f=u.verticalElements=[],e=u.horizontalElements=[];n.each(i,function(n,i){var c=r.height-r.top-r.bottom,l=r.width-r.left-r.right,u,o,h;i.setSize({height:c,width:l}),i.draw(),u=i.getLayoutOptions(),o=s(u.cutLayoutSide),h=o==="width"?e:f,h.push(i),r[u.cutLayoutSide]+=u[o],t(r)})},s=function(n){var t="height";return(n==="left"||n==="right")&&(t="width"),t},v=function(i,r,f){function c(i,f,e,o){var c=0,l=(f-h*(i.length-1))/s;n.each(i,function(i,s){var a=u(s.weight*l);s.canvas=s.canvas||{},n.extend(s.canvas,{deltaLeft:0,deltaRight:0,deltaTop:0,deltaBottom:0},r),s.canvas[e]=r[e]+c,s.canvas[o]=r[o]+(f-a-c),c=c+a+h,t(s.canvas)})}for(var e,l=r.height-r.top-r.bottom,a=r.width-r.left-r.right,s=0,h=i.padding||10,o=0;o<i.length;o++)e=i[o],e.weight=e.weight||1,s=s+e.weight;f?c(i,a,"left","right"):c(i,l,"top","bottom")},y=function(t,i,u){function a(n,t,i){var r;return r=i<n?n:t<i?t:i}function p(n,t){return Math.sqrt(Math.pow(n-s,2)+Math.pow(t-h,2))}function w(){var t;return i.type==="pie"?t=0:(t=i.innerRadius,e(t)?(t=Number(t),t<.2&&(t=.2),t>.8&&(t=.8)):t=.5),t}var c=t.height-t.top-t.bottom,l=t.width-t.left-t.right,s=l/2+t.left,h=c/2+t.top,f=Math.min(l,c)/2,v=.7*f,y=w(i);u?n.each(i.getPoints(),function(n,t){if(i.getOptions().label.position==="inside")return!1;t._label.originalPosition=t._label.getPosition(),t._label.setPosition("outside")}):n.each(i.getPoints(),function(n,t){if(t._label.hasText()&&t.isVisible()){var i=t._label._getOutsideGroupLabelPosition(),r=a(i.x,i.x+i.width,s),u=a(i.y,i.y+i.height,h),e=Math.max(p(r,u)-o,v);f=Math.min(f,e)}t._label.setPosition(t._label.originalPosition)}),i.correctPosition({centerX:r.floor(s),centerY:r.floor(h),radiusInner:r.floor(f*y),radiusOuter:r.floor(f)})},p=function(n){return!!(n.x||n.y||n.width||n.height)},w=function(t,i){var e,o,r,u,f;return n.each(t,function(t,e){r=e.canvas,n.each(i,function(n,t){u="delta"+t,r[u]=Math.max(r[u]-(r[t.toLowerCase()]-r["original"+t]),0),r[u]>0&&(f=!0)})}),f},b=function(t,i){var r=i[0];return n.each(i,function(n,i){t===i.name&&(r=i)}),r},k=function(t,i,r){var h=this,u,d,s,g,e,o,f,v,c,l,y=[],k,a;for(n.each(i,function(t,i){n.extend(i.canvas,{deltaLeft:0,deltaRight:0,deltaTop:0,deltaBottom:0})}),a=0;a<t.length;a++)if(f=t[a],s=f.options.position||"left",f.delta={},e=f.getBoundingRect(),k=b(f.pane,i),u=k.canvas,p(e)){c="delta"+s.slice(0,1).toUpperCase()+s.slice(1);switch(s){case"right":l=1,u.deltaLeft+=f.padding?f.padding.left:0;break;case"left":l=-1,u.deltaRight+=f.padding?f.padding.right:0;break;case"top":l=-1,u.deltaBottom+=f.padding?f.padding.bottom:0;break;case"bottom":l=1,u.deltaTop+=f.padding?f.padding.top:0}switch(s){case"right":case"left":e.isEmpty||(o=e.y+e.height-(u.height-u.originalBottom),o>0&&(h.requireAxesRedraw=!0,u.deltaBottom+=o),o=u.originalTop-e.y,o>0&&(h.requireAxesRedraw=!0,u.deltaTop+=o)),v=e.width,y=["Left","Right"];break;case"top":case"bottom":e.isEmpty||(o=e.x+e.width-(u.width-u.originalRight),o>0&&(h.requireAxesRedraw=!0,u.deltaRight+=o),o=u.originalLeft-e.x,o>0&&(h.requireAxesRedraw=!0,u.deltaLeft+=o)),y=["Bottom","Top"],v=e.height}!f.delta[s]&&u[c]>0&&(u[c]+=f.getMultipleAxesSpacing()),f.delta[s]=f.delta[s]||0,f.delta[s]+=u[c]*l,u[c]+=v}h.requireAxesRedraw=w(i,y)||h.requireAxesRedraw,this.stopDrawAxes=ut(i,r)},d=function(n){var t=this.chart;this.applyAxesLayout(n,t.panes,t.option("rotated"))},g=function(n){var t=this.chart;n.reverse(),this.applyAxesLayout(n,t.panes,t.option("rotated")),n.reverse()},nt=function(t){function e(i,r){n.each(i,function(n,i){var u=i.getLayoutOptions(),f=u.cutLayoutSide;t[f]-=u[r]})}var r=this,u=r.horizontalElements,f=r.verticalElements;e(u,"width"),i(u,t),e(f,"height"),i(f,t)},tt=function(t,i){var f=this,r=0,u=0;return n.each(t,function(n,t){var e=t.canvas,o=f._options.width-(e.width-e.left-e.right),s=f._options.height-(e.height-e.top-e.bottom);i?(r+=o>0?o:0,u=Math.max(s>0?s:0,u)):(r=Math.max(o>0?o:0,r),u+=s>0?s:0)}),r>0||u>0?{width:r,height:u}:!1},it=function(t,i,r,u,e,o){function l(t,i){t&&s[i]>0&&(n.each(t,function(n,t){var r=t.getBoundingRect();t.updateSize(),s[i]-=r[i]-t.getBoundingRect()[i]}),s[i]>0&&n.each(t,function(n,t){t.updateSize(!0)}))}function a(t,i,f){n.each(t,function(n,t){var e=t.getLayoutOptions(),h=e.cutLayoutSide,c=u.width-u.left-u.right,l=u.height-u.top-u.bottom,o={};t.setSize({width:c,height:l}),o[f]=0,o[i]=s[i],t.changeSize(o),r[h]-=e[i]-t.getLayoutOptions()[i],s[i]-=e[i]-t.getLayoutOptions()[i]})}var c=this,s,h=n.extend({},u),v=o?t:i,y=o?i:t;(s=this.needMoreSpaceForPanesCanvas(e,o),s)&&(s.height=f(u,["top","bottom"],s.height),s.width=f(u,["left","right"],s.width),r.top-=h.top-u.top,r.bottom-=h.bottom-u.bottom,r.left-=h.left-u.left,r.right-=h.right-u.right,a(c.horizontalElements,"width","height"),a(c.verticalElements,"height","width"),l(v,"width"),l(y,"height"))},rt=function(n,t){n.setSize({width:t.width-t.right-t.left,height:t.width-t.right-t.left}),n.changeSize({width:0,height:0})},ut=function(t,i){var s,h,r,u=0,f=0,e=0,o=0,c=0;return n.each(t,function(n,t){u=Math.max(u,t.canvas.deltaLeft),f=Math.max(f,t.canvas.deltaRight),e=Math.max(e,t.canvas.deltaTop),o=Math.max(o,t.canvas.deltaBottom)}),i?n.each(t,function(n,t){t.canvas.top+=e,t.canvas.bottom+=o,t.canvas.right+=t.canvas.deltaRight,t.canvas.left+=t.canvas.deltaLeft}):n.each(t,function(n,t){t.canvas.top+=t.canvas.deltaTop,t.canvas.bottom+=t.canvas.deltaBottom,t.canvas.right+=f,t.canvas.left+=u}),n.each(t,function(n,t){t.canvas.top+t.canvas.bottom>t.canvas.height&&(r=!0),t.canvas.left+t.canvas.right>t.canvas.width&&(r=!0)}),r};return{ctor:h,update:c,drawElements:a,updatePanesCanvases:v,applyVerticalAxesLayout:d,applyHorizontalAxesLayout:g,applyAxesLayout:k,applyPieChartSeriesLayout:y,dispose:l,updateDrawnElements:it,placeDrawnElements:nt,needMoreSpaceForPanesCanvas:tt,correctSizeElement:rt}}())}(jQuery,DevExpress),function(n,t){var l=t.viz.core.Range,u=t.utils,h=u.adjustValue,a=u.applyPrecisionByMinDelta,f=u.isDefined,o=Math,s=o.floor,c=o.max,r=n.each,p=.1,w=function(n){var t={};return r(n,function(n,i){var r=i.pane;t[r]||(t[r]=[]),t[r].push(i)}),t},b=function(n){var t;n.translator._originalBusinessRange?(t=new l(n.translator._originalBusinessRange),n.translator.updateBusinessRange(t),n.setRange(t)):n.translator._originalBusinessRange=new l(n.translator.getBusinessRange())},k={transform:function(n,t){return u.getLog(n,t)},addInterval:function(n,t){return n+t},getInterval:function(n,t){return t},adjustValue:s},d={transform:function(n,t){return u.raiseTo(n,t)},addInterval:function(n,t){return n*t},getInterval:function(n,t){return o.pow(n,t)},adjustValue:h},v=function(n,t){if(n.isLogarithmic){var i=n.logarithmicBase,f=n.tickValues,r,u=[],e;for(n.minValue=t.transform(n.minValue,i),n.oldMinValue=t.transform(n.oldMinValue,i),n.maxValue=t.transform(n.maxValue,i),n.oldMaxValue=t.transform(n.oldMaxValue,i),n.tickInterval=o.round(n.tickInterval),n.tickInterval<1&&(n.tickInterval=1),e=t.getInterval(i,n.tickInterval),r=t.adjustValue(t.transform(f[0],i));u.length<f.length;r=t.addInterval(r,e))u.push(r);u.tickInterval=n.tickInterval,n.tickValues=u}},g=function(t){return n.map(t,function(n){b(n);var t=n.getTickValues(),s=n.options,e,o,i=null,r,h,c;return t&&t.length>0&&u.isNumber(t[0])&&s.type!=="discrete"&&(h=t.tickInterval,r=n.translator.getBusinessRange(),e=r.minVisible,o=r.maxVisible,c=s.synchronizedValue,e===o&&f(c)&&(e=t[0]-1,o=t[0]+1,h=1),i={axis:n,isLogarithmic:s.type==="logarithmic",logarithmicBase:r.base,tickValues:t,minValue:e,oldMinValue:e,maxValue:o,oldMaxValue:o,inverted:r.invert,tickInterval:h,synchronizedValue:c},r.stubData&&(i.stubData=!0,i.tickInterval=i.tickInterval||s.tickInterval,i.isLogarithmic=!1),v(i,k)),i})},nt=function(n){var t=0;r(n,function(n,i){t=c(t,i.tickValues.length)}),r(n,function(n,i){var e,o,h=0,c=i.synchronizedValue,r=i.tickValues,u=i.tickInterval;if(f(c))i.baseTickValue=i.invertedBaseTickValue=c,i.tickValues=[i.baseTickValue];else{if(r.length>1&&u){for(e=s((t+1)/r.length),o=e>1?s((t+1)/e):t,h=s((o-r.length)/2);h>0&&r[0]!==0;)r.unshift(a(r[0],u,r[0]-u)),h--;while(r.length<o)r.push(a(r[0],u,r[r.length-1]+u));i.tickInterval=u/e}i.baseTickValue=r[0],i.invertedBaseTickValue=r[r.length-1]}})},e=function(n){return n.maxValue-n.minValue||1},y=function(n){for(var t=0;t<n.length;t++)if(!n[t].stubData)return n[t];return null},tt=function(n){var t=y(n),i=t.tickInterval;r(n,function(n,r){var h,u,o,s;r!==t&&(i&&r.tickInterval&&(r.stubData&&f(r.synchronizedValue)&&(r.oldMinValue=r.minValue=r.baseTickValue-(t.baseTickValue-t.minValue)/i*r.tickInterval,r.oldMaxValue=r.maxValue=r.baseTickValue-(t.baseTickValue-t.maxValue)/i*r.tickInterval),h=i/e(t)/r.tickInterval*e(r),r.maxValue=r.minValue+e(r)/h),o=t.inverted&&!r.inverted||!t.inverted&&r.inverted?t.maxValue-t.invertedBaseTickValue:t.baseTickValue-t.minValue,s=e(r),u=(o/e(t)-(r.baseTickValue-r.minValue)/s)*s,r.minValue-=u,r.maxValue-=u)})},it=function(n){var t,i,u=0,f=0;return r(n,function(n,r){var o=r.inverted;t=r.minValue>r.oldMinValue?(r.minValue-r.oldMinValue)/e(r):0,i=r.maxValue<r.oldMaxValue?(r.oldMaxValue-r.maxValue)/e(r):0,u=c(u,o?i:t),f=c(f,o?t:i)}),{start:u,end:f}},rt=function(n,t){r(n,function(n,i){var r=e(i),u=i.inverted;i.minValue-=t[u?"end":"start"]*r,i.maxValue+=t[u?"start":"end"]*r,r>p&&(i.minValue=o.min(i.minValue,h(i.minValue)),i.maxValue=c(i.maxValue,h(i.maxValue)))})},ut=function(n){var t=!1;r(n,function(n,i){t=t||f(i.synchronizedValue)}),r(n,function(n,i){var f,e=i.tickInterval,r=i.tickValues,s=i.maxValue,o=i.minValue;if(t&&e){while(r[0]-e>=o)r.unshift(h(r[0]-e));for(f=r[r.length-1];(f=f+e)<=s;)r.push(u.isExponential(f)?h(f):u.applyPrecisionByMinDelta(o,e,f))}while(r[0]<o)r.shift();while(r[r.length-1]>s)r.pop()})},ft=function(n){r(n,function(n,t){var r=t.axis,i=r.translator.getBusinessRange();i.min===i.minVisible&&(i.min=t.minValue),i.max===i.maxVisible&&(i.max=t.maxValue),i.minVisible=t.minValue,i.maxVisible=t.maxValue,f(t.stubData)&&(i.stubData=t.stubData),i.min>i.minVisible&&(i.min=i.minVisible),i.max<i.maxVisible&&(i.max=i.maxVisible),r.translator.updateBusinessRange(i),r.setRange(i),r.setTickValues(t.tickValues)})},et=function(n){var u=[],t,i;(r(n,function(n,r){r.oldMaxValue-r.oldMinValue==0?u.push(r):f(t)||f(r.synchronizedValue)||(t=o.abs((r.maxValue-r.minValue)/(r.tickValues[s(r.tickValues.length/2)]||r.maxValue)),i=r)}),f(t))&&r(u,function(n,r){var u=r.tickValues[0],f=u*t,e=i.tickValues,o=e[s(e.length/2)];u>0?(r.maxValue=f,r.minValue=0):u<0?(r.minValue=f,r.maxValue=0):u===0&&(r.maxValue=i.maxValue-o,r.minValue=i.minValue-o)})};t.viz.charts.multiAxesSynchronizer={synchronize:function(n){r(w(n),function(n,t){var i,u;if(t.length>1){if(i=g(t),i.length===0||!y(i))return;nt(i),tt(i),u=it(i),rt(i,u),et(i),ut(i),r(i,function(){v(this,d)}),ft(i)}})}}}(jQuery,DevExpress),function(n,t){var y=t.viz.charts,u=t.viz.core.series.helpers.consts.events,e=t.utils,c=e.isFunction,o=e.isDefined,r="multiple",s="single",h="allargumentpoints",l="allseriespoints",i=window.navigator.msPointerEnabled&&window.navigator.msMaxTouchPoints||window.navigator.pointerEnabled&&window.navigator.maxTouchPoints||null,p=1e3,w=600,a=100,b=200,k=400,v="none",f=function(n){return(n+"").toLowerCase()};y.Tracker=t.Class.inherit({ctor:function(n){var t=this,i=n.events=n.events||{},f=function(n){return n&&n.call?function(){var t=this,i=arguments;setTimeout(function(){n.apply(t,i)})}:null};t._reinit(n),t.pointSelectionMode=t._prepareMode(n.pointSelectionMode),t.seriesSelectionMode=t._prepareMode(n.seriesSelectionMode),t.hoverStartDelay=0,t.sensitivity=7,t.pointSelectionMode===r?(t._releaseSelectedPoint=t._releaseSelectedPointMultiMode,t.selectedPoint=[]):t._releaseSelectedPoint=t._releaseSelectedPointSingleMode,t.seriesSelectionMode===r?(t._releaseSelectedSeries=t._releaseSelectedSeriesMultiMode,t.selectedSeries=[]):t._releaseSelectedSeries=t._releaseSelectedSeriesSingleMode,t.tooltipEnabled=n.tooltipEnabled,t.tooltipShown=n.tooltipShown,t.tooltipHidden=n.tooltipHidden,t.seriesClick=f(i.seriesClick),t.pointClick=f(i.pointClick),t.legendClick=f(i.legendClick),t.argumentAxisClick=f(i.argumentAxisClick),t.seriesHover=f(i.seriesHover),t.seriesSelected=f(i.seriesSelected),t.pointHover=f(i.pointHover),t.seriesSelectionChanged=f(i.seriesSelectionChanged),t.pointSelectionChanged=f(i.pointSelectionChanged),t.seriesHoverChanged=f(i.seriesHoverChanged),t.pointHoverChanged=f(i.pointHoverChanged),t.pointSelected=f(i.pointSelected),t.renderer=n.renderer,t.seriesTrackerGroup=n.seriesTrackerGroup,t.markerTrackerGroup=n.markerTrackerGroup,t.seriesGroup=n.seriesGroup;t.seriesGroup.on(u.selectSeries,{tracker:t},t._selectSeries);t.seriesGroup.on(u.deselectSeries,{tracker:t},t._deselectSeries);t.seriesGroup.on(u.selectPoint,{tracker:t},t._selectPoint);t.seriesGroup.on(u.deselectPoint,{tracker:t},t._deselectPoint);t.seriesGroup.on(u.showPointTooltip,{tracker:t},t._showPointTooltip);t.seriesGroup.on(u.hidePointTooltip,{tracker:t},t._hidePointTooltip);t.crossHairOptions=n.crossHairOptions},_clean:function(){var n=this;n.selectedPoint=n.pointSelectionMode===r?[]:null,n.selectedSeries=n.seriesSelectionMode===r?[]:null,n.hoveredPoint=null,n.hoveredSeries=null,n._hideTooltip(n.pointAtShownTooltip),n._clearTimeouts()},_reinit:function(t){var i=this;t=t||{},i.storedSeries!==t.series?(i.storedSeries=t.series||[],i._clean()):o(i.storedSeries)&&(i._clearPointSelection(),i._clearHover(i),i._clearTimeouts()),i.argumentAxis=t.argumentAxis||[],i.legendGroup=t.legendGroup,i.legendCallback=t.legendCallback||n.noop},_clearTimeouts:function(){var n=this,t=clearTimeout;t(n.tooltipHoldTimeout),t(n.cmpCoordTimeout),t(n.hoverStartTimeOut),t(n.hoverHoldTimeOut)},dispose:function(){var t=this;t._clearTimeouts(),clearTimeout(t.unlockMouseTimer),clearTimeout(t.lockClickTimer),n.each(t.argumentAxis,function(n,t){t._axisElementsGroup&&t._axisElementsGroup.off()}),t.seriesTrackerGroup.off(),t.markerTrackerGroup.off(),t.legendGroup&&t.legendGroup.off(),t.seriesGroup.off(),t.rootTracker&&t.rootTracker.off(),t.argumentAxis=null,t.seriesTrackerGroup=null,t.markerTrackerGroup=null,t.legendGroup=null,t.legendCallback=null,t.seriesGroup=null,t.crossHairOptions=null,t.selectedPoint=null,t.selectedSeries=null,t.hoveredSeries=null,t.hoveredPoint=null,t.storedSeries=null,t.argumentAxis=null,t.hoveredObject=null,t.pointAtShownTooltip=null},_prepareMode:function(n){return n=(n||"").toLowerCase(),n=n!==s&&n!==r?s:n},_prepare:function(t){var i=this;i.rootTracker=i.renderer.getRoot(),n.each(i.argumentAxis,function(n,t){t._axisElementsGroup&&i._eventHandler(t._axisElementsGroup,{parser:i._getOptionsAxis,condition:i._axisCondition,execute:i._axisEvent},{tracker:i,axis:t})}),i._eventHandler(i.seriesTrackerGroup,{parser:i._getOptionsPointSeries,condition:i._seriesCondition,execute:i._seriesEvent},{tracker:i}),i._eventHandler(i.markerTrackerGroup,{parser:i._getOptionsPointSeries,condition:i._pointCondition,execute:i._pointEvent},{tracker:i}),i.legendGroup&&i._eventHandler(i.legendGroup,{parser:i._getLegendData(t),condition:i._seriesCondition,execute:i._getLegendEvent(t)},{tracker:i}),i._eventHandler(i.rootTracker,{parser:i._getOptionsCrossHair,execute:i._crossHairEvent},{tracker:i})},_getLegendData:function(t){return function(i){var f=n(i.target),u=f.data("itemIndex"),r=i.data.tracker,o=e.isNumber(u)&&f.data("mode");return i.type==="mousemove"?[r,i.pageX,i.pageY,i.offsetX,i.offsetY]:e.isNumber(u)?t==="pieChart"?[r,r.storedSeries[0].getPoints()[u],o,i]:[r,r.storedSeries[u],o,i]:null}},_getLegendEvent:function(t){var r=this,i;return i=t==="pieChart"?n.extend({},this._pointEvent,{touchend:function(n,t,i,r){n.showHoldTooltip||n._legendClick(n,t,!0,r)||n._pointClick(n,t,!0,r),clearTimeout(n.tooltipHoldTimeout),n._clickLock(n),n._clearHover(n)},click:function(n,t,i,r){n._legendClick(n,t,!1,r)||n._pointClick(n,t,!1,r)}}):n.extend({},this._seriesEvent,{click:function(n,t,i,r){n._legendClick(n,t,!1,r)||n._seriesClick(n,t,!1,r)},touchend:function(n,t,i,r){n._legendClick(n,t,!0,r)||n._seriesClick(n,t,!0,r),n._clickLock(n)}})},_eventHandler:function(n,t,i){var r=this._designerHandlers(t);n.off(".dxc-tracker");n.on(r,i)},_designerHandlers:function(t){var r={},u=t.parser,i=t.condition,f=t.execute,e=function(n,t){i&&i[n]===null||(r[n+".dxc-tracker"]=function(r){var f=u?u(r):r;f&&(i&&i[n]&&i[n].call?i[n].apply(null,f.concat([t])):t.apply(null,f))})};return n.each(f,e),r},_getOptionsCrossHair:function(n){var t=n.data.tracker,i=e.getRootOffset(t.renderer),r=n.pageX-i.left,u=n.pageY-i.top;return[t,r,u]},_getOptionsPointSeries:function(t){var i=n(t.target).data("point")||n(t.target).data("series"),r=t.data.tracker,u=i&&f(n(t.target).data("mode")||i.getOptions().hoverMode);return t.type==="mousemove"?[r,t.pageX,t.pageY,t.offsetX,t.offsetY]:i?[r,i,u,t]:null},_getOptionsAxis:function(t){var u=t.data.tracker,i=t.data.axis,f=i.options.hoverMode,r;return(r=t.target.tagName==="tspan"?n(t.target).parent().data("argument"):n(t.target).data("argument"),t.type==="mousemove")?[u,t.pageX,t.pageY]:i?[u,i,f,r,t]:null},_pointEvent:{mouseover:function(n,t,i){n.mouseLocked||(n._setHoveredPoint(t,i),n.tooltipEnabled&&t&&t.getOptions()&&n._compareCoords(n,function(){n._showTooltip(n.tooltip,t)}))},mouseout:function(n){n.mouseLocked||n._clearHover(n)},touchmove:function(n){clearTimeout(n.tooltipHoldTimeout),n.tooltipHoldTimeout=null,n.showHoldTooltip=!0},mousemove:function(n,t,i){n._setCurCoords(n,t,i)},touchstart:function(n,t){n.showHoldTooltip=!1,n._mouseLock(n),n.tooltipEnabled&&(n.tooltipHoldTimeout=setTimeout(function(){n.showHoldTooltip=!0,n._showTooltip(n.tooltip,t)},k))},touchend:function(n,t,i,r){n.showHoldTooltip||n._pointClick(n,t,!0,r),clearTimeout(n.tooltipHoldTimeout),n._clickLock(n),n._clearHover(n)},click:function(n,t,i,r){n._pointClick(n,t,!1,r)},mousedown:function(n,t,i){n._pointEvent.touchstart(n,t,i)},mouseup:function(n,t,i,r){n._pointEvent.touchend(n,t,i,r)}},_pointCondition:{mouseover:function(n,t,i,r,u){if(i===h&&n.hoveredPoint&&n.hoveredPoint.argument===t.argument){n.hoverHoldTimeOut=clearTimeout(n.hoverHoldTimeOut),n.hoveredObject=t,u(n,t,i);return}n._setHover(n,t,i,u)},mouseout:function(n,t,i,r,u){n._releaseHover(n,t,i,u)},touchstart:!i,touchend:!i,mousedown:i,mouseup:i},_seriesEvent:{mouseover:function(n,t,i){n.mouseLocked||n._setHoveredSeries(t,i)},mouseout:function(n){n._clearHover(n)},mousemove:function(n,t,i){n._setCurCoords(n,t,i)},touchstart:function(n){n._mouseLock(n)},touchend:function(n,t,i,r){n._seriesClick(n,t,!0,r),n._clickLock(n)},click:function(n,t,i,r){n._seriesClick(n,t,!1,r)},mousedown:function(n,t,i){n._seriesEvent.touchstart(n,t,i)},mouseup:function(n,t,i){n._seriesEvent.touchend(n,t,i)}},_crossHairEvent:{mousemove:function(n,t,i){if(n.eventType){if(n.eventType==="touch")return;n.eventType==="mouse"&&(n._moveCrossHair(n,t,i),n.eventType=null)}else{n.eventType="mouse";return}},mouseout:function(n){n._hideCrossHair(n),n.eventType=null},touchstart:function(n){n.eventType="touch"},touchend:function(n){n.eventType=null},mousedown:function(n,t,i){n._crossHairEvent.touchstart(n,t,i)},mouseup:function(n,t,i){n._crossHairEvent.touchend(n,t,i)}},_hideCrossHair:function(n){if(n.crossHairOptions){var t=n.crossHairOptions.horizontalLine,i=n.crossHairOptions.verticalLine;t&&t.applySettings({visibility:"hidden"}),i&&i.applySettings({visibility:"hidden"})}},_moveCrossHair:function(n,t,i){if(n.crossHairOptions){var u=n.crossHairOptions.horizontalLine,f=n.crossHairOptions.verticalLine,r=n.crossHairOptions.canvas||{};t>r.left&&t<r.width-r.right&&i>r.top&&i<r.height-r.bottom?(u&&u.applySettings({visibility:"visible"}),f&&f.applySettings({visibility:"visible"}),u&&u.applySettings({translateY:i-r.top}),f&&f.applySettings({translateX:t-r.left})):(u&&u.applySettings({visibility:"hidden"}),f&&f.applySettings({visibility:"hidden"}))}},_seriesCondition:{mouseover:function(n,t,i,r,u){n.hoverStartDelay=0,n._setHover(n,t,i,u)},mouseout:function(n,t,i,r,u){n.hoverStartDelay=a,n._releaseHover(n,t,i,u)},touchstart:!i,touchend:!i,mousedown:i,mouseup:i},_axisEvent:{mouseover:function(n,t,i){n.mouseLocked||o(n.hoveredArgument)&&n.hoveredArgument===i||(n._clearHover(n),o(n.hoveredArgument)&&n._toAllArgumentPoints(n.hoveredArgument,"releasePointHoverState"),n._toAllArgumentPoints(i,"setPointHoverState"),n.hoveredArgument=i)},mouseout:function(n){!n.mouseLocked&&o(n.hoveredArgument)&&(n._toAllArgumentPoints(n.hoveredArgument,"releasePointHoverState"),n.hoveredArgument=null)},mousemove:function(n,t,i){n._setCurCoords(n,t,i)},touchstart:function(n){n._mouseLock(n)},touchend:function(n,t,i,r,u){n._argumentAxisClick(n,t,r,!0,u),n._clearHover(n),n._clickLock(n)},click:function(n,t,i,r,u){n._clearHover(n),n._argumentAxisClick(n,t,r,!1,u)},mousedown:function(n){n._axisEvent.touchstart(n)},mouseup:function(n,t,i,r,u){n._axisEvent.touchend(n,t,i,r,u)}},_axisCondition:{mouseover:function(n,t,i,r,u,f){n._hideCrossHair(n),i===h&&n._setHover(n,t,r,f)},mouseout:function(n,t,i,r,u,f){n._releaseHover(n,t,r,f)},touchstart:!i,touchend:!i,mousedown:i,mouseup:i},_setHover:function(n,t,i,r){(t!==n.hoveredObject||(n.hoverHoldTimeOut=clearTimeout(n.hoverHoldTimeOut),i!==t.lastHoverMode))&&(n.mouseLocked||(clearTimeout(n.cmpCoordTimeout),clearTimeout(n.hoverStartTimeOut),n.hoverStartTimeOut=setTimeout(function(){clearTimeout(n.hoverHoldTimeOut),n.hoveredObject=t,r(n,t,i)},n.hoverStartDelay)))},_releaseHover:function(n,t,i,r){n.mouseLocked||(clearTimeout(n.cmpCoordTimeout),clearTimeout(n.hoverStartTimeOut),t===n.hoveredObject&&(n.hoverHoldTimeOut=setTimeout(function(){n.hoveredObject=null,r(n,t,i),n.hoverStartDelay=0},b)))},_compareCoords:function(n,t){if(clearTimeout(n.cmpCoordTimeout),Math.abs(n.pX-n.cX)+Math.abs(n.pY-n.cY)<n.sensitivity){if(n.mouseLocked)return;t()}else n.pX=n.cX,n.pY=n.cY,n.cmpCoordTimeout=setTimeout(function(){n._compareCoords(n,t)},n.hoverStartDelay===0?a:0)},_seriesClick:function(n,t,i,r){(!n.lockClick||i)&&n.seriesClick&&n.seriesClick.call(t,t,r)},_legendClick:function(n,t,i,r){var u=n.legendClick;return n.lockClick&&!i?!0:u?(u.call(t,t,r),!0):!1},_pointClick:function(n,t,i,r){var u=t.series;if(!n.lockClick||i){if(n.pointClick){n.pointClick.call(t,t,r);return}n.seriesClick&&n.seriesClick.call(u,u,r);return}},_argumentAxisClick:function(n,t,i,r,u){(!n.lockClick||r)&&n.argumentAxisClick&&n.argumentAxisClick.call(t,t,i,u)},_selectSeries:function(n,t){n.data.tracker._setSelectedSeries(n.target,t)},_deselectSeries:function(n,t){n.data.tracker._releaseSelectedSeries(n.target,t)},_selectPoint:function(n,t){n.data.tracker._setSelectedPoint(t)},_deselectPoint:function(n,t){n.data.tracker._releaseSelectedPoint(t)},_showPointTooltip:function(n,t){var i=n.data.tracker;i._showTooltip(i.tooltip,t)},_hidePointTooltip:function(n,t){n.data.tracker._hideTooltip(t)},_hideTooltip:function(n){var t=this&&this.tooltip;t&&(!n||this.pointAtShownTooltip===n)&&(n=n||this.pointAtShownTooltip,t.hide(),this.pointAtShownTooltip&&(this.pointAtShownTooltip=null,c(this.tooltipHidden)&&this.tooltipHidden.call(n,n)))},_showTooltip:function(n,t){var r=t.getTooltipFormatObject(n),i;if((o(r.valueText)||r.points)&&t.isVisible()&&(this.pointAtShownTooltip&&this._hideTooltip(this.pointAtShownTooltip),t&&t.getOptions())){if(i=t.getTooltipCoords(),!n.prepare(r,{x:i.x,y:i.y,offset:i.offset}))return;n.show(),!this.pointAtShownTooltip&&c(this.tooltipShown)&&this.tooltipShown.call(t,t),this.pointAtShownTooltip=t}},_setHoveredSeries:function(n,t){var i=this;(t!==v&&i.hoveredSeries!==n||n.lastHoverMode!==t)&&(i._clearHover(i),i.hoveredSeries=n,n.setHoverState(t,i.legendCallback(n)),i.seriesHover&&i.seriesHover.call(n,n),i.seriesHoverChanged&&i.seriesHoverChanged.call(n,n))},_setSelectedSeries:function(t,i){var u=this,f=!1;this.seriesSelectionMode===r?n.each(u.selectedSeries,function(n,i){if(i==t)return f=!0,!1}):u.selectedSeries==t&&(f=!0),f&&t.lastSelectionMode===i||(u.seriesSelectionMode===s?(this._releaseSelectedSeries(),u.selectedSeries=t):u.selectedSeries.push(t),t.setSelectedState(i,u.legendCallback(t)),u.seriesSelected&&u.seriesSelected.call(t,t),u.seriesSelectionChanged&&u.seriesSelectionChanged.call(t,t))},_setHoveredPoint:function(n,t){var i=this;(i.hoveredPoint!==n||n.series)&&(i._clearHover(i),i.hoveredPoint=n,n&&n.getOptions()&&i._setHoverStylePointWithMode(n,"setPointHoverState",t||f(n.getOptions().hoverMode),i.pointHoverChanged,i.legendCallback(n)),i.pointHover&&i.pointHover.call(n,n))},_toAllArgumentPoints:function(t,i,r){var u=this;n.each(u.storedSeries,function(n,u){var f=u.getPointByArg(t);f&&(u[i](f),r&&r.call(f,f))})},_setHoverStylePointWithMode:function(t,i,r,u,f){var e=this;switch(r){case h:this._toAllArgumentPoints(t.argument,i,u);break;case l:n.each(t.series.getPoints(),function(n,t){t.series[i](t),u&&u.call(t,t)});break;case v:break;default:t.series[i](t,f),u&&u.call(t,t)}},_setSelectedPoint:function(t){var i=this,u=!1;this.pointSelectionMode===r?(n.each(i.selectedPoint,function(n,i){if(i==t)return u=!0,!1}),u||i.selectedPoint.push(t)):i.selectedPoint!==t?(this._releaseSelectedPoint(),i.selectedPoint=t):u=!0,u||(i._setHoverStylePointWithMode(t,"setPointSelectedState",f(t.getOptions().selectionMode),i.pointSelectionChanged,i.legendCallback(t)),i.pointSelected&&i.pointSelected.call(t,t))},_releaseHoveredSeries:function(){var n=this;n.hoveredSeries&&(n.hoveredSeries.releaseHoverState(undefined,n.legendCallback(n.hoveredSeries)),n.seriesHoverChanged&&n.seriesHoverChanged.call(n.hoveredSeries,n.hoveredSeries),n.hoveredSeries=null)},_releaseSelectedSeriesMultiMode:function(t){var i=this;i.selectedSeries&&(t.releaseSelectedState(undefined,i.legendCallback(t)),i.seriesSelectionChanged&&i.seriesSelectionChanged.call(t,t),i.selectedSeries=n.map(i.selectedSeries,function(n){if(n!==t)return n}))},_releaseSelectedSeriesSingleMode:function(){var t=this,n=this.selectedSeries;n&&(n.releaseSelectedState(undefined,t.legendCallback(n)),t.seriesSelectionChanged&&t.seriesSelectionChanged.call(n,n),t.selectedSeries=null)},_releaseHoveredPoint:function(){var t=this,i=t.hoveredPoint,r;i&&i.getOptions()&&(r=f(i.getOptions().hoverMode),r===l?n.each(i.series.getPoints(),function(n,i){i.series.releasePointHoverState(i),t.pointHoverChanged&&t.pointHoverChanged.call(i,i)}):r===h?t._toAllArgumentPoints(i.argument,"releasePointHoverState",t.pointHoverChanged):(i.releaseHoverState(t.legendCallback(i)),t.pointHoverChanged&&t.pointHoverChanged.call(i,i)),t.tooltipEnabled&&!t.showHoldTooltip&&t._hideTooltip(i),t.hoveredPoint=null)},_releaseSelectedPointMultiMode:function(t){var i=this,r=i.selectedPoint;r&&(i._setHoverStylePointWithMode(t,"releasePointSelectedState",f(t.getOptions().selectionMode),i.pointSelectionChanged,i.legendCallback(t)),this.selectedPoint=n.map(this.selectedPoint,function(n){if(n!==t)return n}))},_releaseSelectedPointSingleMode:function(){var n=this,t=n.selectedPoint;t&&(n._setHoverStylePointWithMode(t,"releasePointSelectedState",f(t.getOptions().selectionMode),n.pointSelectionChanged,n.legendCallback(t)),this.selectedPoint=null)},_clearPointSelection:function(){var t=this;t.pointSelectionMode===s?t._releaseSelectedPoint():n.each(t.selectedPoint||[],function(n,i){t._releaseSelectedPoint(i)})},clearSelection:function(){var t=this;t._clearPointSelection(),t.seriesSelectionMode===s?t._releaseSelectedSeries():n.each(t.selectedSeries,function(n,i){t._releaseSelectedSeries(i)})},setTooltip:function(n){this.tooltip=n},_mouseLock:function(n){n.unlockMouseTimer&&clearTimeout(n.unlockMouseTimer),n.mouseLocked=!0,n.unlockMouseTimer=setTimeout(function(){n.mouseLocked=!1},p)},_clickLock:function(n){n.lockClick=!0,n.lockClickTimer&&clearTimeout(n.lockClickTimer),n.lockClickTimer=setTimeout(function(){n.lockClick=!1},w)},_setCurCoords:function(n,t,i){n.cX=t,n.cY=i},_clearHover:function(n){n._releaseHoveredSeries(),n._releaseHoveredPoint()}})}(jQuery,DevExpress),function(n,t){var u=t.ui,r=t.viz;t.registerComponent("dxChart",r.charts.Chart)}(jQuery,DevExpress),function(n,t){var u=t.ui,r=t.viz;t.registerComponent("dxPieChart",r.charts.PieChart)}(jQuery,DevExpress),DevExpress.MOD_VIZ_CHARTS=!0}if(!DevExpress.MOD_VIZ_GAUGES){if(!DevExpress.MOD_VIZ_CORE)throw Error("Required module is not referenced: viz-core");(function(n){n.viz.gauges={__internals:{circularNeedles:{},circularMarkers:{},linearNeedles:{},linearMarkers:{}}}})(DevExpress),function(n,t,i){var r=n.viz.gauges.__internals,f=r.circularNeedles,o=r.circularMarkers,e=r.linearNeedles,s=r.linearMarkers,u=window.String,a=n.utils.isString;n.viz.gauges.__factory={createCircularValueIndicator:function(n){var t=f.RectangleNeedle;switch(u(n).toLowerCase()){case"rectangleneedle":case"rectangle":t=f.RectangleNeedle;break;case"triangleneedle":case"triangle":t=f.TriangleNeedle;break;case"twocolorneedle":case"twocolorrectangle":t=f.TwoColorRectangleNeedle;break;case"rangebar":t=r.CircularRangeBar}return new t},createLinearValueIndicator:function(n){var t=r.LinearRangeBar;switch(u(n).toLowerCase()){case"rectangle":t=e.RectangleNeedle;break;case"rhombus":t=e.RhombusNeedle;break;case"circle":t=e.CircleNeedle;break;case"rangebar":t=r.LinearRangeBar}return new t},createCircularSubvalueIndicator:function(n){var t=o.TriangleMarker;switch(u(n).toLowerCase()){case"trianglemarker":case"triangle":t=o.TriangleMarker;break;case"textcloud":t=o.TextCloudMarker}return new t},createLinearSubvalueIndicator:function(n){var t=s.TriangleMarker;switch(u(n).toLowerCase()){case"trianglemarker":case"triangle":t=s.TriangleMarker;break;case"textcloud":t=s.TextCloudMarker}return new t},createCircularValueIndicatorInHardMode:function(n){var t=null;switch(u(n).toLowerCase()){case"rectangleneedle":t=f.RectangleNeedle;break;case"triangleneedle":t=f.TriangleNeedle;break;case"twocolorneedle":t=f.TwoColorRectangleNeedle;break;case"rangebar":t=r.CircularRangeBar;break;case"trianglemarker":t=o.TriangleMarker;break;case"textcloud":t=o.TextCloudMarker}return t?new t:null},createLinearValueIndicatorInHardMode:function(n){var t=null;switch(u(n).toLowerCase()){case"rectangle":t=e.RectangleNeedle;break;case"rhombus":t=e.RhombusNeedle;break;case"circle":t=e.CircleNeedle;break;case"rangebar":t=r.LinearRangeBar;break;case"trianglemarker":t=s.TriangleMarker;break;case"textcloud":t=s.TextCloudMarker}return t?new t:null},createCircularNeedle:function(n){switch(u(n).toLowerCase()){case"rectangleneedle":case"rectangle":return new f.RectangleNeedle;case"twocolorneedle":case"twocolorrectangle":return new f.TwoColorRectangleNeedle;case"triangleneedle":case"triangle":return new f.TriangleNeedle;case"rangebar":return new r.CircularRangeBar}return i},createLinearNeedle:function(n){switch(u(n).toLowerCase()){case"rectangle":return new e.RectangleNeedle;case"rhombus":return new e.RhombusNeedle;case"circle":return new e.CircleNeedle;case"rangebar":return new r.LinearRangeBar}return i},createCircularMarker:function(n){switch(u(n).toLowerCase()){case"trianglemarker":case"triangle":return new o.TriangleMarker;case"textcloud":return new o.TextCloudMarker}return i},createLinearMarker:function(n){switch(u(n).toLowerCase()){case"trianglemarker":case"triangle":return new s.TriangleMarker;case"textcloud":return new s.TextCloudMarker}return i},createCircularRangeBar:function(n){return new r.CircularRangeBar(n)},createLinearRangeBar:function(n){return new r.LinearRangeBar(n)},createCircularScale:function(n){return new r.CircularScale(n)},createLinearScale:function(n){return new r.LinearScale(n)},createCircularRangeContainer:function(n){return new r.CircularRangeContainer(n)},createLinearRangeContainer:function(n){return new r.LinearRangeContainer(n)},createTitle:function(n){return new r.Title(n)},createIndicator:function(){return r.Indicator&&new r.Indicator||null},createLayoutManager:function(){return new r.LayoutManager},createThemeManager:function(n){return new r.ThemeManager(n)},createTracker:function(n){return new r.Tracker(n)}};var h=n.utils.isFunction,u=window.String,c=t.extend,l=n.formatHelper;r.formatValue=function(n,t,i){var r,f;return(t=t||{},r=l.format(n,t.format,t.precision),h(t.customizeText))?(f=c({value:n,valueText:r},i),u(t.customizeText.call(f,f))):r},r.getSampleText=function(n,t){var i=r.formatValue(n.getDomainStart(),t),u=r.formatValue(n.getDomainEnd(),t);return i.length>=u.length?i:u}}(DevExpress,jQuery),function(n,t,i){function h(n,t){var i=0,r=t.length-1,e=t[i]-t[r]<0,u,f=-1;for(t[i]===n&&(f=i),t[r]===n&&(f=r);f<0&&i<=r;)u=~~((i+r)/2),t[u]===n?f=u:t[u]-n<0===e?i=u+1:r=u-1;return f}function tt(n,t){return n-t}function it(n,t){return t-n}function rt(n,t){var i,r,f;return n>t&&(f=t,t=n,n=f),i=0<=n&&n<=180?u(90-n):u(270-n),i=n<90&&90<t||n<270&&270<t?0:i,r=0<t&&t<180?u(90-t):u(270-t),i<r?i:r}var r=Number,y=String,p=isFinite,o=Math.min,f=Math.max,u=Math.abs,w=Math.atan,b=Math.acos,c=Math.ceil,k=n.utils.isFunction,d=n.utils.isArray,l=n.utils.getCosAndSin,a=n.utils.normalizeAngle,g=n.utils.convertAngleToRendererSpace,e=t.map,nt=n.formatHelper,v=n.viz.core.tickProvider,s=Math.PI/180;n.viz.gauges.__internals.BaseScale=n.Class.inherit({ctor:function(n){var t=this;t._renderer=n.renderer,t._container=n.container,t._translator=n.translator,t._root=t._renderer.createGroup({"class":"dxg-scale"}),t._majorTicks=t._renderer.createGroup({"class":"dxg-major-ticks"}),t._minorTicks=t._renderer.createGroup({"class":"dxg-minor-ticks"}),t._labels=t._renderer.createGroup({"class":"dxg-labels"})},dispose:function(){var n=this;return n._renderer=n._container=n._renderer=n._root=n._majorTicks=n._minorTicks=n._labels=null,n},clean:function(){var n=this;return n._root.detach(),n._majorTicks.detach().clear(),n._minorTicks.detach().clear(),n._labels.detach().clear(),n._majorTicksEnabled=n._minorTicksEnabled=n._labelsEnabled=n._options=n.enabled=null,n},render:function(n){var t=this;return t._options=n,t._processOptions(n),(t._majorTicksEnabled||t._minorTicksEnabled||t._labelsEnabled)&&(t.enabled=!0,t._root.append(t._container),t._majorTicksEnabled&&t._majorTicks.append(t._root),t._minorTicksEnabled&&t._minorTicks.append(t._root),t._labelsEnabled&&(t._labels.append(t._root),t._measureText())),t},_processOptions:function(n){var t=this;t._majorTicksEnabled=n.majorTick.visible&&n.majorTick.length>0&&n.majorTick.width>0,t._minorTicksEnabled=n.minorTick.visible&&n.minorTick.length>0&&n.minorTick.width>0,t._labelsEnabled=n.label.visible&&r(n.label.indentFromTick)!==0,t._setupOrientation()},_getSampleText:function(){for(var n=this,f=n._translator.getDomain(),c=[],t,e=0,o="",s=v.getTicks({min:f[0],max:f[1],tickInterval:n._options.majorTick.tickInterval>0?r(n._options.majorTick.tickInterval):i,screenDelta:n._options.approximateScreenDelta,gridSpacingFactor:n._getGridSpacingFactor().majorTicks}),u=0,h=s.length;u<h;++u)t=n._formatValue(s[u]),t.length>e&&(o=t)&&(e=t.length);return o},_measureText:function(){var n=this,i=n._getSampleText(),r=n._renderer.createText(i,0,0,{font:n._options.label.font}).append(n._labels),t=r.getBBox();r.remove(),n._textVerticalOffset=-t.y-t.height/2,n._textWidth=t.width,n._textHeight=t.height,n._textLength=i.length},_formatValue:function(n){var i=this._options.label,t=nt.format(n,i.format,i.precision);return k(i.customizeText)&&(t={value:n,valueText:t},t=y(i.customizeText.call(t,t))),t},_setupOrientation:null,_getCustomValues:function(n,t){var u=this._translator,i=[];return d(n)&&(i=e(n,function(n){return p(u.translate(n))?r(n):null}).sort(t),i=e(i,function(n,t){return n!==i[t-1]?n:null})),i},_generateTicks:function(n){var t=this,u={tickInterval:t._options.majorTick.tickInterval>0?r(t._options.majorTick.tickInterval):i,gridSpacingFactor:t._getGridSpacingFactor().majorTicks,numberMultipliers:[1,2,5]},f={tickInterval:t._options.minorTick.tickInterval>0?r(t._options.minorTick.tickInterval):i,gridSpacingFactor:t._getGridSpacingFactor().minorTicks,numberMultipliers:[1,2,5]};return t._options.majorTick.useTicksAutoArrangement&&(u.useTicksAutoArrangement=!0,u.renderer=t._renderer,u.translator=t._translator,u.getCustomAutoArrangementStep=function(i){return t._getCuttingFactor(i.length,{width:t._textWidth,height:t._textHeight},n)}),v.getFullTicks(t._translator.getDomain()[0],t._translator.getDomain()[1],t._getScreenDelta(n),u,f)},_getTicks:function(n){var t=this,f=t._translator.getDomain()[0]<t._translator.getDomain()[1]?tt:it,s=t._generateTicks(n),o=t._options.majorTick.showCalculatedTicks?s.majorTicks:[],i=t._getCustomValues(t._options.majorTick.customTickValues,f),r,u,c;return i=e(i,function(n){return h(n,o)===-1?n:null}),r=t._options.minorTick.showCalculatedTicks?s.minorTicks:[],r=e(r,function(n){return h(n,i)===-1?n:null}),u=t._getCustomValues(t._options.minorTick.customTickValues,f),c=o.concat(r,i).sort(f),u=e(u,function(n){return h(n,c)===-1?n:null}),{major:e(o.concat(i),function(n){return{value:n,position:t._translator.translate(n)}}),minor:e(r.concat(u),function(n){return{value:n,position:t._translator.translate(n)}})}},_createMajorTicks:function(n,t){var i=this,f,u,e,o;if(i._majorTicks.clear().applySettings({fill:i._options.majorTick.color}),f=i._getTickPoints(r(i._options.majorTick.length),r(i._options.majorTick.width),t),f)for(u=0,e=n.length,i._options.hideFirstTick&&++u,i._options.hideLastTick&&--e;u<e;++u)o=i._renderer.createArea(f),i._moveTick(o,n[u],t),o.append(i._majorTicks)},_createMinorTicks:function(n,t){var i=this,f,u,o,e;if(i._minorTicks.clear().applySettings({fill:i._options.minorTick.color}),f=i._getTickPoints(r(i._options.minorTick.length),r(i._options.minorTick.width),t),f)for(u=0,o=n.length;u<o;++u)e=i._renderer.createArea(f),i._moveTick(e,n[u],t),e.append(i._minorTicks)},_createLabels:function(n,t){var i=this,f=r(i._options.label.indentFromTick),e,u,o,s,h;if(i._labels.clear().applySettings({align:i._getLabelAlign(f),font:i._options.label.font}),e=i._getLabelPosition(i._majorTicksEnabled?r(i._options.majorTick.length):0,f,t),e)for(u=0,o=n.length,i._options.hideFirstLabel&&++u,i._options.hideLastLabel&&--o;u<o;++u)h=i._formatValue(n[u].value),s=i._getLabelOptions(h,e,f,n[u],t),i._renderer.createText(h,s.x,s.y+i._textVerticalOffset).append(i._labels)},resize:function(n){var t=this,i=t._getTicks(n);return t._majorTicksEnabled&&t._createMajorTicks(i.major,n),t._minorTicksEnabled&&t._createMinorTicks(i.minor,n),t._labelsEnabled&&t._createLabels(i.major,n),t}}),n.viz.gauges.__internals.CircularScale=n.viz.gauges.__internals.BaseScale.inherit({_getGridSpacingFactor:function(){return{majorTicks:17,minorTicks:5}},_getScreenDelta:function(n){return(this._translator.getCodomainStart()-this._translator.getCodomainEnd())*n.radius*s},_getCuttingFactor:function(n,t,i){var e=this,ft=e._options,g=e._translator.getCodomainStart(),nt=e._translator.getCodomainEnd(),h=e._getLabelPosition(e._majorTicksEnabled?r(e._options.majorTick.length):0,r(e._options.label.indentFromTick),i),v=rt(a(g),a(nt)),y=l(v),tt=(g-nt)/n,p,k,it,d,o,ut=1;return it=(y.sin*h+t.width)/(y.cos*h),k=u(v-w(it)/s),o=y.cos-t.height/h,d=-1>o||o>1?90:u(v-b(o)/s),p=k<d?k:d,tt<p&&(ut=c(p/tt)),f(1,ut)},_setupOrientation:function(){var n=this;n._inner=n._outer=0;switch(n._options.orientation){case"inside":n._inner=1;break;case"center":n._inner=n._outer=.5;break;default:n._outer=1}},_getTickPoints:function(n,t,i){var f=i.x-t/2,e=i.x+t/2,r=i.y-i.radius-n*this._outer,u=i.y-i.radius+n*this._inner;return r>0&&u>0?[f,r,e,r,e,u,f,u]:null},_moveTick:function(n,t,i){n.rotate(g(t.position),i.x,i.y)},_getLabelPosition:function(n,t,i){var r=i.radius+n*(t>=0?this._outer:-this._inner)+t;return r>0?r:null},_getLabelAlign:function(){return"center"},_getLabelOptions:function(n,t,i,r,u){var f=l(r.position),e=u.x+f.cos*t,o=u.y-f.sin*t,s=f.cos*(n.length/this._textLength)*this._textWidth/2,h=f.sin*this._textHeight/2;return i>0?(e+=s,o-=h):(e-=s,o+=h),{x:e,y:o}},measure:function(n){var t=this,i={min:n.radius,max:n.radius};return t._majorTicksEnabled&&(i.min=o(i.min,n.radius-t._inner*t._options.majorTick.length),i.max=f(i.max,n.radius+t._outer*t._options.majorTick.length)),t._minorTicksEnabled&&(i.min=o(i.min,n.radius-t._inner*t._options.minorTick.length),i.max=f(i.max,n.radius+t._outer*t._options.minorTick.length)),t._labelsEnabled&&(t._options.label.indentFromTick>0?(i.horizontalOffset=r(t._options.label.indentFromTick)+t._textWidth,i.verticalOffset=r(t._options.label.indentFromTick)+t._textHeight):(i.horizontalOffset=i.verticalOffset=0,i.min-=-r(t._options.label.indentFromTick)+f(t._textWidth,t._textHeight)),i.inverseHorizontalOffset=t._textWidth/2,i.inverseVerticalOffset=t._textHeight/2),i}}),n.viz.gauges.__internals.LinearScale=n.viz.gauges.__internals.BaseScale.inherit({_getGridSpacingFactor:function(){return{majorTicks:25,minorTicks:5}},_getScreenDelta:function(){return u(this._translator.getCodomainEnd()-this._translator.getCodomainStart())},_getCuttingFactor:function(n,t){var r=this,e=r.vertical?t.height:t.width,o=u(r._translator.getCodomainEnd()-r._translator.getCodomainStart());return f(1,c(n*e/(o+e)))},_setupOrientation:function(){var n=this;if(n.vertical=n._options.vertical,n._inner=n._outer=0,n.vertical)switch(n._options.horizontalOrientation){case"left":n._inner=1;break;case"center":n._inner=n._outer=.5;break;default:n._outer=1}else switch(n._options.verticalOrientation){case"top":n._inner=1;break;case"middle":n._inner=n._outer=.5;break;default:n._outer=1}},_getTickPoints:function(n,t,i){var r=this,u,f,e,o;return r.vertical?(u=i.x-n*r._inner,f=i.x+n*r._outer,e=-t/2,o=+t/2):(u=-t/2,f=+t/2,e=i.y-n*r._inner,o=i.y+n*r._outer),[u,e,f,e,f,o,u,o]},_moveTick:function(n,t){var r=0,u=0;this.vertical?u=t.position:r=t.position,n.move(r,u)},_getLabelPosition:function(n,t,i){var r=n*(t>=0?this._outer:-this._inner)+t;return r+=this.vertical?i.x:i.y+(t>=0?1:-1)*this._textVerticalOffset},_getLabelAlign:function(n){return this.vertical?n>0?"left":"right":"center"},_getLabelOptions:function(n,t,i,r){var f,e;return this.vertical?(f=t,e=r.position):(f=r.position,e=t),{x:f,y:e}},measure:function(n){var t=this,u=n[t.vertical?"x":"y"],i={min:u,max:u};return t._majorTicksEnabled&&(i.min=o(i.min,u-t._inner*t._options.majorTick.length),i.max=f(i.max,u+t._outer*t._options.majorTick.length)),t._minorTicksEnabled&&(i.min=o(i.min,u-t._inner*t._options.minorTick.length),i.max=f(i.max,u+t._outer*t._options.minorTick.length)),t._labelsEnabled&&(t._options.label.indentFromTick>0?i.max+=+r(t._options.label.indentFromTick)+t[t.vertical?"_textWidth":"_textHeight"]:i.min-=-r(t._options.label.indentFromTick)+t[t.vertical?"_textWidth":"_textHeight"],i.indent=t[t.vertical?"_textHeight":"_textWidth"]/2),i}})}(DevExpress,jQuery),function(n,t,i){var r=isFinite,u=Number,f=t.extend;n.viz.gauges.__internals.BaseIndicator=n.Class.inherit({setup:function(n){var t=this;return t._renderer=n.renderer,t._translator=n.translator,t._owner=n.owner,t._tracker=n.tracker,t._className=n.className,t._options={},t._rootElement=t._createRoot(),t._trackerElement=t._createTracker(),t},dispose:function(){var n=this;return n._renderer=n._owner=n._translator=n._tracker=n._options=n._rootElement=n._trackerElement=null,n},_setupAnimation:function(){var n=this;n._options.animation&&(n._animation={step:function(t){n._actualValue=n._animation.start+n._animation.delta*t,n._actualPosition=n._translator.translate(n._actualValue),n._move()},duration:n._options.animation.duration>0?u(n._options.animation.duration):0,easing:n._options.animation.easing})},_runAnimation:function(n){var i=this,t=i._animation;t.start=i._actualValue,t.delta=n-i._actualValue,i._rootElement.animate({_:0},{step:t.step,duration:t.duration,easing:t.easing})},_createRoot:function(){return this._renderer.createGroup({"class":this._className})},_createTracker:function(){return this._renderer.createArea()},_getTrackerSettings:function(){},clean:function(){var n=this;return n._animation&&n._rootElement.stopAnimation(),n._rootElement.detach(),n._rootElement.clear(),n._clear(),n._tracker.detach(n._trackerElement),n._options=n.enabled=n._animation=null,n},render:function(n){var t=this;return t.type=n.type,t._options=n,t._actualValue=t._currentValue=t._translator.adjust(t._options.currentValue),t.enabled=t._isEnabled(),t.enabled&&(t._setupAnimation(),t._rootElement.applySettings({fill:t._options.color}).append(t._owner),t._tracker.attach(t._trackerElement,t,t._trackerInfo)),t},resize:function(n){var t=this;return t._rootElement.clear(),t._clear(),t.visible=t._isVisible(n),t.visible&&(f(t._options,n),t._actualPosition=t._translator.translate(t._actualValue),t._render(),t._trackerElement.applySettings(t._getTrackerSettings()),t._move()),t},value:function(n,t){var u=this,f;return n!==i?(f=u._translator.adjust(n),u._currentValue!==f&&r(f)&&(u._currentValue=f,u.visible&&(u._animation&&!t?u._runAnimation(f):(u._actualValue=f,u._actualPosition=u._translator.translate(f),u._move()))),u):u._currentValue},_isEnabled:null,_isVisible:null,_render:null,_clear:null,_move:null})}(DevExpress,jQuery),function(n){var i=n.viz.core.TextCloud,r=n.viz.gauges.__internals.formatValue,u=n.viz.gauges.__internals.getSampleText;n.viz.gauges.__internals.BaseTextCloudMarker=n.viz.gauges.__internals.BaseIndicator.inherit({_move:function(){var n=this,u,t=new i,f=n._getTextCloudOptions();n._text.applySettings({text:r(n._actualValue,n._options.text)}),u=n._text.getBBox(),t.setup({x:f.x,y:f.y,textWidth:u.width,textHeight:u.height,horMargin:n._options.horizontalOffset,verMargin:n._options.verticalOffset,tailLength:n._options.arrowLength,type:f.type}),n._text.applySettings({x:t.cx(),y:t.cy()+n._textVerticalOffset}),n._cloud.applySettings({points:t.points()}),n._trackerElement&&n._trackerElement.applySettings({points:t.points()})},_measureText:function(){var n=this,i,r,t;n._textVerticalOffset||(i=n._createRoot().append(n._owner),r=n._renderer.createText(u(n._translator,n._options.text),0,0,{align:"center",font:n._options.text.font}).append(i),t=r.getBBox(),i.remove(),n._textVerticalOffset=-t.y-t.height/2,n._textWidth=t.width,n._textHeight=t.height,n._textFullWidth=n._textWidth+2*n._options.horizontalOffset,n._textFullHeight=n._textHeight+2*n._options.verticalOffset)},_render:function(){var n=this;n._measureText(),n._cloud=n._cloud||n._renderer.createArea().append(n._rootElement),n._text=n._text||n._renderer.createText().append(n._rootElement),n._text.applySettings({align:"center",font:n._options.text.font})},_clear:function(){delete this._cloud,delete this._text},getTooltipParameters:function(){var n=this._getTextCloudOptions();return{x:n.x,y:n.y,value:this._currentValue,color:this._options.color}}})}(DevExpress),function(n,t){var r=t.extend,u=n.viz.gauges.__internals.formatValue,f=n.viz.gauges.__internals.getSampleText;n.viz.gauges.__internals.BaseRangeBar=n.viz.gauges.__internals.BaseIndicator.inherit({_measureText:function(){var n=this,i,r,t;n._hasText=n._isTextVisible(),n._hasText&&!n._textVerticalOffset&&(i=n._createRoot().append(n._owner),r=n._renderer.createText(f(n._translator,n._options.text),0,0,{"class":"dxg-text",align:"center",font:n._options.text.font}).append(i),t=r.getBBox(),i.remove(),n._textVerticalOffset=-t.y-t.height/2,n._textWidth=t.width,n._textHeight=t.height)},_move:function(){var n=this;n._updateBarItemsPositions(),n._hasText&&(n._text.applySettings({text:u(n._actualValue,n._options.text)}),n._updateTextPosition(),n._updateLinePosition())},_updateBarItems:function(){var n=this,r=n._options,t,i;n._setBarSides(),n._startPosition=n._translator.translate(n._translator.getDomainStart()),n._endPosition=n._translator.translate(n._translator.getDomainEnd()),n._basePosition=n._translator.translate(r.baseValue),n._space=n._getSpace(),t=r.backgroundColor||"none",t!=="none"&&n._space>0?i=r.containerBackgroundColor||"none":(n._space=0,i="none"),n._backItem1.applySettings({fill:t}),n._backItem2.applySettings({fill:t}),n._spaceItem1.applySettings({fill:i}),n._spaceItem2.applySettings({fill:i})},_getSpace:function(){return 0},_updateTextItems:function(){var n=this;n._hasText?(n._line=n._line||n._renderer.createPath([],{"class":"dxg-main-bar"}).append(n._rootElement),n._text=n._text||n._renderer.createText("",0,0,{"class":"dxg-text"}).append(n._rootElement),n._text.applySettings({align:n._getTextAlign(),font:n._getFontOptions()}),n._setTextItemsSides()):(n._line&&(n._line.remove(),delete n._line),n._text&&(n._text.remove(),delete n._text))},_isTextVisible:function(){return!1},_getTextAlign:function(){return"center"},_getFontOptions:function(){var t=this._options,n=t.text.font;return n&&n.color||(n=r({},n,{color:t.color})),n},_updateBarItemsPositions:function(){var n=this,t=n._getPositions();n._backItem1.applySettings(n._buildItemSettings(t.start,t.back1)),n._backItem2.applySettings(n._buildItemSettings(t.back2,t.end)),n._spaceItem1.applySettings(n._buildItemSettings(t.back1,t.main1)),n._spaceItem2.applySettings(n._buildItemSettings(t.main2,t.back2)),n._mainItem.applySettings(n._buildItemSettings(t.main1,t.main2)),n._trackerElement&&n._trackerElement.applySettings(n._buildItemSettings(t.main1,t.main2))},_render:function(){var n=this;n._measureText(),n._backItem1||(n._backItem1=n._createBarItem(),n._backItem1.applySettings({"class":"dxg-back-bar"})),n._backItem2||(n._backItem2=n._createBarItem(),n._backItem2.applySettings({"class":"dxg-back-bar"})),n._spaceItem1||(n._spaceItem1=n._createBarItem(),n._spaceItem1.applySettings({"class":"dxg-space-bar"})),n._spaceItem2||(n._spaceItem2=n._createBarItem(),n._spaceItem2.applySettings({"class":"dxg-space-bar"})),n._mainItem||(n._mainItem=n._createBarItem(),n._mainItem.applySettings({"class":"dxg-main-bar"})),n._updateBarItems(),n._updateTextItems()},_clear:function(){var n=this;delete n._backItem1,delete n._backItem2,delete n._spaceItem1,delete n._spaceItem2,delete n._mainItem,delete n._hasText,delete n._line,delete n._text},getTooltipParameters:function(){var n=this._getTooltipPosition();return{x:n.x,y:n.y,value:this._currentValue,color:this._options.color,offset:0}}})}(DevExpress,jQuery),function(n){var r=n.viz.gauges.__internals.circularNeedles,i=Number;r.SimpleIndicator=n.viz.gauges.__internals.BaseIndicator.inherit({_move:function(){var t=this,i=t._options,r=n.utils.convertAngleToRendererSpace(t._actualPosition);t._rootElement.rotate(r,i.x,i.y),t._trackerElement&&t._trackerElement.rotate(r,i.x,i.y)},_isEnabled:function(){return this._options.width>0},_isVisible:function(n){return n.radius-i(this._options.indentFromCenter)>0},_getTrackerSettings:function(){var n=this._options,u=n.x,f=n.y-(n.radius+i(n.indentFromCenter))/2,t=n.width/2,r=(n.radius-i(n.indentFromCenter))/2;return t>10||(t=10),r>10||(r=10),{points:[u-t,f-r,u-t,f+r,u+t,f+r,u+t,f-r]}},_renderSpindle:function(){var n=this,t=n._options,r;t.spindleSize>0&&(r=i(t.spindleGapSize)||0,r>0&&(r=r<=t.spindleSize?r:i(t.spindleSize)),n._spindleOuter=n._spindleOuter||n._renderer.createCircle().append(n._rootElement),n._spindleInner=n._spindleInner||n._renderer.createCircle().append(n._rootElement),n._spindleOuter.applySettings({"class":"dxg-spindle-border",cx:t.x,cy:t.y,r:t.spindleSize/2}),n._spindleInner.applySettings({"class":"dxg-spindle-hole",cx:t.x,cy:t.y,r:r/2,fill:t.containerBackgroundColor}))},_render:function(){var n=this;n._renderPointer(),n._renderSpindle()},_clearSpindle:function(){delete this._spindleOuter,delete this._spindleInner},_clearPointer:function(){delete this._element},_clear:function(){this._clearPointer(),this._clearSpindle()},measure:function(n){var t={max:n.radius};return this._options.indentFromCenter<0&&(t.inverseHorizontalOffset=t.inverseVerticalOffset=-i(this._options.indentFromCenter)),t},getTooltipParameters:function(){var t=this._options,r=n.utils.getCosAndSin(this._actualPosition),u=(t.radius+i(t.indentFromCenter))/2;return{x:t.x+r.cos*u,y:t.y-r.sin*u,value:this._currentValue,color:t.color,offset:t.width/2}}}),r.RectangleNeedle=r.SimpleIndicator.inherit({_renderPointer:function(){var t=this,n=t._options,u=n.y-n.radius,f=n.y-i(n.indentFromCenter),r=n.x-n.width/2,e=r+i(n.width);t._element=t._element||t._renderer.createArea().append(t._rootElement),t._element.applySettings({points:[r,f,r,u,e,u,e,f]})}}),r.TriangleNeedle=r.SimpleIndicator.inherit({_renderPointer:function(){var t=this,n=t._options,u=n.y-n.radius,r=n.y-i(n.indentFromCenter),f=n.x-n.width/2,e=n.x+n.width/2;t._element=t._element||t._renderer.createArea().append(t._rootElement),t._element.applySettings({points:[f,r,n.x,u,e,r]})}}),r.TwoColorRectangleNeedle=r.SimpleIndicator.inherit({_renderPointer:function(){var n=this,t=n._options,f=t.x-t.width/2,e=t.x+t.width/2,o=t.y-t.radius,s=t.y-i(t.indentFromCenter),h=i(t.secondFraction)||0,r,u;h>=1?r=u=s:h<=0?r=u=r:(u=o+(s-o)*h,r=u+t.space),n._firstElement=n._firstElement||n._renderer.createArea().append(n._rootElement),n._spaceElement=n._spaceElement||n._renderer.createArea().append(n._rootElement),n._secondElement=n._secondElement||n._renderer.createArea().append(n._rootElement),n._firstElement.applySettings({points:[f,s,f,r,e,r,e,s]}),n._spaceElement.applySettings({points:[f,r,f,u,e,u,e,r],"class":"dxg-hole",fill:t.containerBackgroundColor}),n._secondElement.applySettings({points:[f,u,f,o,e,o,e,u],"class":"dxg-part",fill:t.secondColor})},_clearPointer:function(){delete this._firstElement,delete this._secondElement,delete this._spaceElement}})}(DevExpress),function(n){var i=n.viz.gauges.__internals.linearNeedles,r=Number;i.SimpleIndicator=n.viz.gauges.__internals.BaseIndicator.inherit({_move:function(){var n=this,t=n._actualPosition-n._zeroPosition;n._rootElement.move(n.vertical?0:t,n.vertical?t:0),n._trackerElement&&n._trackerElement.move(n.vertical?0:t,n.vertical?t:0)},_isEnabled:function(){return this.vertical=this._options.vertical,this._options.length>0&&this._options.width>0},_isVisible:function(){return!0},_getTrackerSettings:function(){var n=this._options,r,u,f,e,t=n.width/2,i=n.length/2,o=this._zeroPosition;return t>10||(t=10),i>10||(i=10),this.vertical?(r=n.x-i,u=n.x+i,f=o+t,e=o-t):(r=o-t,u=o+t,f=n.y+i,e=n.y-i),{points:[r,f,r,e,u,e,u,f]}},_render:function(){var n=this;n._zeroPosition=n._translator.getCodomainStart()},_clear:function(){delete this._element},measure:function(n){var t=this.vertical?n.x:n.y;return{min:t-this._options.length/2,max:t+this._options.length/2}},getTooltipParameters:function(){var n=this,t=n._options,r=n._actualPosition,i={x:r,y:r,value:n._currentValue,color:t.color,offset:t.width/2};return n.vertical?i.x=t.x:i.y=t.y,i}}),i.RectangleNeedle=i.SimpleIndicator.inherit({_render:function(){var t=this,n=t._options,i,r,u,f,e;t.callBase(),i=t._zeroPosition,t.vertical?(r=n.x-n.length/2,u=n.x+n.length/2,f=i+n.width/2,e=i-n.width/2):(r=i-n.width/2,u=i+n.width/2,f=n.y+n.length/2,e=n.y-n.length/2),t._element=t._element||t._renderer.createArea().append(t._rootElement),t._element.applySettings({points:[r,f,r,e,u,e,u,f]})}}),i.RhombusNeedle=i.SimpleIndicator.inherit({_render:function(){var n=this,t=n._options,i,r,u,f;n.callBase(),n.vertical?(i=t.x,r=n._zeroPosition,u=t.length/2||0,f=t.width/2||0):(i=n._zeroPosition,r=t.y,u=t.width/2||0,f=t.length/2||0),n._element=n._element||n._renderer.createArea().append(n._rootElement),n._element.applySettings({points:[i-u,r,i,r-f,i+u,r,i,r+f]})}}),i.CircleNeedle=i.SimpleIndicator.inherit({_render:function(){var n=this,t=n._options,i,r,u;n.callBase(),n.vertical?(i=t.x,r=n._zeroPosition):(i=n._zeroPosition,r=t.y),u=t.length/2||0,n._element=n._element||n._renderer.createCircle().append(n._rootElement),n._element.applySettings({cx:i,cy:r,r:u})}})}(DevExpress),function(n){var r=n.viz.gauges.__internals.circularMarkers,i=Number;r.TriangleMarker=n.viz.gauges.__internals.circularNeedles.SimpleIndicator.inherit({_isEnabled:function(){return this._options.length>0&&this._options.width>0},_isVisible:function(n){return n.radius>0},_render:function(){var t=this,n=t._options,u=n.x,f=n.y-n.radius,e=n.width/2||0,o=f-i(n.length),r;t._element=t._element||t._renderer.createArea().append(t._rootElement),r={points:[u,f,u-e,o,u+e,o],stroke:"none",strokeWidth:0},n.space>0&&(r.strokeWidth=Math.min(n.space,n.width/4)||0,r.stroke=r.strokeWidth>0?n.containerBackgroundColor||"none":"none"),t._element.applySettings(r)},_clear:function(){delete this._element},_getTrackerSettings:function(){var n=this._options,r=n.x,u=n.y-n.radius-n.length/2,t=n.width/2,i=n.length/2;return t>10||(t=10),i>10||(i=10),{points:[r-t,u-i,r-t,u+i,r+t,u+i,r+t,u-i]}},measure:function(n){return{min:n.radius,max:n.radius+i(this._options.length)}},getTooltipParameters:function(){var t=this._options,r=n.utils.getCosAndSin(this._actualPosition),u=t.radius+t.length/2,i=this.callBase();return i.x=t.x+r.cos*u,i.y=t.y-r.sin*u,i.offset=t.length/2,i}}),r.TextCloudMarker=n.viz.gauges.__internals.BaseTextCloudMarker.inherit({_isEnabled:function(){return!0},_isVisible:function(n){return n.radius>0},_getTextCloudOptions:function(){var t=this,r=n.utils.getCosAndSin(t._actualPosition),i=n.utils.normalizeAngle(t._actualPosition);return{x:t._options.x+r.cos*t._options.radius,y:t._options.y-r.sin*t._options.radius,type:i>270?"left-top":i>180?"top-right":i>90?"right-bottom":"bottom-left"}},measure:function(n){var t=this;return t._measureText(),{min:n.radius,max:n.radius,horizontalOffset:t._textFullWidth+(i(t._options.arrowLength)||0),verticalOffset:t._textFullHeight+(i(t._options.arrowLength)||0)}}})}(DevExpress),function(n){var u=n.viz.gauges.__internals.linearMarkers,i=Number,r=String;u.TriangleMarker=n.viz.gauges.__internals.linearNeedles.SimpleIndicator.inherit({_isEnabled:function(){var n=this;return n.vertical=n._options.vertical,n._inverted=n.vertical?r(n._options.horizontalOrientation).toLowerCase()==="right":r(n._options.verticalOrientation).toLowerCase()==="bottom",n._options.length>0&&n._options.width>0},_isVisible:function(){return!0},_render:function(){var t=this,n=t._options,r,e,u,o,f={stroke:"none",strokeWidth:0};t.callBase(),t.vertical?(r=n.x,u=t._zeroPosition,e=r+i(t._inverted?n.length:-n.length),f.points=[r,u,e,u-n.width/2,e,u+n.width/2]):(u=n.y,r=t._zeroPosition,o=u+i(t._inverted?n.length:-n.length),f.points=[r,u,r-n.width/2,o,r+n.width/2,o]),n.space>0&&(f.strokeWidth=Math.min(n.space,n.width/4)||0,f.stroke=f.strokeWidth>0?n.containerBackgroundColor||"none":"none"),t._element=t._element||t._renderer.createArea().append(t._rootElement),t._element.applySettings(f)},_getTrackerSettings:function(){var n=this,s=n._options,f=s.width/2,e=i(s.length),t,r,u,o,h;return f>10||(f=10),e>20||(e=20),n.vertical?(t=r=s.x,r=t+(n._inverted?e:-e),u=n._zeroPosition+f,o=n._zeroPosition-f,h=[t,u,r,u,r,o,t,o]):(u=s.y,o=u+(n._inverted?e:-e),t=n._zeroPosition-f,r=n._zeroPosition+f,h=[t,u,t,o,r,o,r,u]),{points:h}},measure:function(n){var u=this,f=i(u._options.length),t,r;return u.vertical?(t=r=n.x,u._inverted?r=t+f:t=r-f):(t=r=n.y,u._inverted?r=t+f:t=r-f),{min:t,max:r,indent:u._options.width/2}},getTooltipParameters:function(){var n=this,i=n._options,r=(n._inverted?i.length:-i.length)/2,t=n.callBase();return n.vertical?t.x+=r:t.y+=r,t.offset=i.length/2,t}}),u.TextCloudMarker=n.viz.gauges.__internals.BaseTextCloudMarker.inherit({_isEnabled:function(){var n=this;return n.vertical=n._options.vertical,n._inverted=n.vertical?r(n._options.horizontalOrientation).toLowerCase()==="right":r(n._options.verticalOrientation).toLowerCase()==="bottom",!0},_isVisible:function(){return!0},_getTextCloudOptions:function(){var n=this,i=n._actualPosition,r=n._actualPosition,t;return n.vertical?(i=n._options.x,t=n._inverted?"top-left":"top-right"):(r=n._options.y,t=n._inverted?"right-top":"right-bottom"),{x:i,y:r,type:t}},measure:function(n){var t=this,r,u,f=i(t._options.arrowLength)||0,e;return t._measureText(),t.vertical?(e=t._textFullHeight,t._inverted?(r=n.x,u=n.x+f+t._textFullWidth):(r=n.x-f-t._textFullWidth,u=n.x)):(e=t._textFullWidth,t._inverted?(r=n.y,u=n.y+f+t._textFullHeight):(r=n.y-f-t._textFullHeight,u=n.y)),{min:r,max:u,indent:e}}})}(DevExpress),function(n){var i=Number,r=n.utils.getCosAndSin,u=n.utils.convertAngleToRendererSpace,f=Math.max,e=Math.min;n.viz.gauges.__internals.CircularRangeBar=n.viz.gauges.__internals.BaseRangeBar.inherit({_isEnabled:function(){return this._options.size>0},_isVisible:function(n){return n.radius-i(this._options.size)>0},_createBarItem:function(){return this._renderer.createArc().append(this._rootElement)},_createTracker:function(){return this._renderer.createArc()},_setBarSides:function(){var n=this;n._maxSide=n._options.radius,n._minSide=n._maxSide-i(n._options.size)},_getSpace:function(){var n=this._options;return n.space>0?n.space*180/n.radius/Math.PI:0},_isTextVisible:function(){var n=this._options.text||{};return n.indent>0},_setTextItemsSides:function(){var n=this,t=n._options;n._lineFrom=t.y-t.radius,n._lineTo=n._lineFrom-i(t.text.indent),n._textRadius=t.radius+i(t.text.indent)},_getPositions:function(){var n=this,r=n._basePosition,u=n._actualPosition,t,i;return r>=u?(t=r,i=u):(t=u,i=r),{start:n._startPosition,end:n._endPosition,main1:t,main2:i,back1:e(t+n._space,n._startPosition),back2:f(i-n._space,n._endPosition)}},_buildItemSettings:function(n,t){var i=this;return{x:i._options.x,y:i._options.y,innerRadius:i._minSide,outerRadius:i._maxSide,startAngle:t,endAngle:n}},_updateTextPosition:function(){var n=this,t=r(n._actualPosition),i=n._options.x+n._textRadius*t.cos,u=n._options.y-n._textRadius*t.sin;i+=t.cos*n._textWidth*.6,u-=t.sin*n._textHeight*.6,n._text.applySettings({x:i,y:u+n._textVerticalOffset})},_updateLinePosition:function(){var n=this,t=n._options.x,i,r;n._basePosition>n._actualPosition?(i=t-2,r=t):n._basePosition<n._actualPosition?(i=t,r=t+2):(i=t-1,r=t+1),n._line.applySettings({points:[i,n._lineFrom,i,n._lineTo,r,n._lineTo,r,n._lineFrom]}),n._line.rotate(u(n._actualPosition),t,n._options.y)},_getTooltipPosition:function(){var n=this,t=r((n._basePosition+n._actualPosition)/2),i=(n._minSide+n._maxSide)/2;return{x:n._options.x+t.cos*i,y:n._options.y-t.sin*i}},measure:function(n){var t=this,r={min:n.radius-i(t._options.size),max:n.radius};return t._measureText(),t._hasText&&(r.max+=i(t._options.text.indent),r.horizontalOffset=t._textWidth,r.verticalOffset=t._textHeight),r}})}(DevExpress),function(n){var i=Number,r=String;n.viz.gauges.__internals.LinearRangeBar=n.viz.gauges.__internals.BaseRangeBar.inherit({_isEnabled:function(){var n=this;return n.vertical=n._options.vertical,n._inverted=n.vertical?r(n._options.horizontalOrientation).toLowerCase()==="right":r(n._options.verticalOrientation).toLowerCase()==="bottom",n._options.size>0},_isVisible:function(){return!0},_createBarItem:function(){return this._renderer.createArea().append(this._rootElement)},_createTracker:function(){return this._renderer.createArea()},_setBarSides:function(){var t=this,n=t._options,f=i(n.size),r,u;t.vertical?t._inverted?(r=n.x,u=n.x+f):(r=n.x-f,u=n.x):t._inverted?(r=n.y,u=n.y+f):(r=n.y-f,u=n.y),t._minSide=r,t._maxSide=u,t._minBound=r,t._maxBound=u},_getSpace:function(){var n=this._options;return n.space>0?i(n.space):0},_isTextVisible:function(){var n=this._options.text||{};return n.indent>0||n.indent<0},_getTextAlign:function(){return this.vertical?this._options.text.indent>0?"left":"right":"center"},_setTextItemsSides:function(){var n=this,t=i(n._options.text.indent);t>0?(n._lineStart=n._maxSide,n._lineEnd=n._maxSide+t,n._textPosition=n._lineEnd+(n.vertical?2:n._textHeight/2),n._maxBound=n._textPosition+(n.vertical?n._textWidth:n._textHeight/2)):t<0&&(n._lineStart=n._minSide,n._lineEnd=n._minSide+t,n._textPosition=n._lineEnd-(n.vertical?2:n._textHeight/2),n._minBound=n._textPosition-(n.vertical?n._textWidth:n._textHeight/2))},_getPositions:function(){var i=this,c=i._options,s=i._startPosition,h=i._endPosition,f=i._space,r=i._basePosition,u=i._actualPosition,n,t,e,o;return s<h?(r<u?(n=r,t=u):(n=u,t=r),e=n-f,o=t+f):(r>u?(n=r,t=u):(n=u,t=r),e=n+f,o=t-f),{start:s,end:h,main1:n,main2:t,back1:e,back2:o}},_buildItemSettings:function(n,t){var u=this,i=u._minSide,r=u._maxSide,f=u.vertical?[i,n,i,t,r,t,r,n]:[n,i,n,r,t,r,t,i];return{points:f}},_updateTextPosition:function(){var n=this;n._text.applySettings(n.vertical?{x:n._textPosition,y:n._actualPosition+n._textVerticalOffset}:{x:n._actualPosition,y:n._textPosition+n._textVerticalOffset})},_updateLinePosition:function(){var n=this,t=n._actualPosition,i,r,u;n.vertical?(n._basePosition>=t?(i=t,r=t+2):(i=t-2,r=t),u=[n._lineStart,i,n._lineStart,r,n._lineEnd,r,n._lineEnd,i]):(n._basePosition<=t?(i=t-2,r=t):(i=t,r=t+2),u=[i,n._lineStart,i,n._lineEnd,r,n._lineEnd,r,n._lineStart]),n._line.applySettings({points:u})},_getTooltipPosition:function(){var n=this,i=(n._minSide+n._maxSide)/2,r=(n._basePosition+n._actualPosition)/2,t={};return t=n.vertical?{x:i,y:r}:{x:r,y:i}},measure:function(n){var t=this,e=i(t._options.size),f=i(t._options.text.indent),r,u,o;return t._measureText(),t.vertical?(r=u=n.x,t._inverted?u=u+e:r=r-e,t._hasText&&(o=t._textHeight/2,f>0&&(u+=f+t._textWidth),f<0&&(r+=f-t._textWidth))):(r=u=n.y,t._inverted?u=u+e:r=r-e,t._hasText&&(o=t._textWidth/2,f>0&&(u+=f+t._textHeight),f<0&&(r+=f-t._textHeight))),{min:r,max:u,indent:o}}})}(DevExpress),function(n,t,i){function v(n,t,i,r){var u;return i>n&&r<t?u=[{start:n,end:i},{start:r,end:t}]:i>=t||r<=n?u=[{start:n,end:t}]:i<=n&&r>=t?u=[]:i>n?u=[{start:n,end:i}]:r<t&&(u=[{start:r,end:t}]),u}function y(n,t,i,r){var u;return i<n&&r>t?u=[{start:n,end:i},{start:r,end:t}]:i<=t||r>=n?u=[{start:n,end:t}]:i>=n&&r<=t?u=[]:i<n?u=[{start:n,end:i}]:r>t&&(u=[{start:r,end:t}]),u}function p(n,t,i){return t-n>=i}function w(n,t,i){return n-t>=i}var r=Number,f=String,e=Math.max,c=Math.abs,o=n.utils.isString,s=n.utils.isArray,h=isFinite,u=t.each,l=t.map,a=n.viz.core.Palette;n.viz.gauges.__internals.BaseRangeContainer=n.Class.inherit({ctor:function(n){var t=this;t._renderer=n.renderer,t._container=n.container,t._translator=n.translator,t._root=t._renderer.createGroup({"class":"dxg-range-container"})},dispose:function(){var n=this;n._renderer=n._container=n._translator=n._root=null},clean:function(){return this._root.detach().clear(),this._options=this.enabled=null,this},_getRanges:function(){var it=this,n=it._options,k=it._translator,d=k.getDomain()[0],rt=k.getDomain()[1],e=rt-d,et=e>=0?p:w,ut=e>=0?v:y,nt=[],t=[],g=[{start:d,end:rt}],ot=c(e)/1e4,st=new a(n.palette,{type:"indicatingSet",theme:n.themeName}),ht=o(n.backgroundColor)?n.backgroundColor:"none",f=n.width||{},b=r(f>0?f:f.start),tt=r(f>0?f:f.end),ft=tt-b;return n.ranges!==i&&!s(n.ranges)?null:b>=0&&tt>=0&&b+tt>0?(nt=l(s(n.ranges)?n.ranges:[],function(n,t){n=n||{};var i=k.adjust(n.startValue),r=k.adjust(n.endValue);return h(i)&&h(r)&&et(i,r,ot)?{start:i,end:r,color:n.color,classIndex:t}:null}),u(nt,function(n,t){var i=st.getNextColor();t.color=o(t.color)&&t.color||i||"none",t.className="dxg-range dxg-range-"+t.classIndex,delete t.classIndex}),u(nt,function(n,i){for(var r,e,u,o=[],h=[],f=0,s=t.length;f<s;++f)u=t[f],e=ut(u.start,u.end,i.start,i.end),(r=e[0])&&(r.color=u.color)&&(r.className=u.className)&&o.push(r),(r=e[1])&&(r.color=u.color)&&(r.className=u.className)&&o.push(r);for(o.push(i),t=o,f=0,s=g.length;f<s;++f)u=g[f],e=ut(u.start,u.end,i.start,i.end),(r=e[0])&&h.push(r),(r=e[1])&&h.push(r);g=h}),u(g,function(n,i){i.color=ht,i.className="dxg-range dxg-background-range",t.push(i)}),u(t,function(n,t){t.startWidth=(t.start-d)/e*ft+b,t.endWidth=(t.end-d)/e*ft+b}),t):null},render:function(n){var t=this;return t._options=n,t._processOptions(),t._ranges=t._getRanges(),t._ranges&&(t.enabled=!0,t._root.append(t._container)),t},resize:function(n){var t=this;return t._root.clear(),t._isVisible(n)&&u(t._ranges,function(i,r){t._createRange(r,n).applySettings({fill:r.color,"class":r.className}).append(t._root)}),t},_processOptions:null,_isVisible:null,_createRange:null}),n.viz.gauges.__internals.CircularRangeContainer=n.viz.gauges.__internals.BaseRangeContainer.inherit({_processOptions:function(){var n=this;n._inner=n._outer=0;switch(f(n._options.orientation).toLowerCase()){case"inside":n._inner=1;break;case"center":n._inner=n._outer=.5;break;default:n._outer=1}},_isVisible:function(n){var t=this._options.width;return t=r(t)||e(r(t.start),r(t.end)),n.radius-this._inner*t>0},_createRange:function(n,t){var i=this,r=(n.startWidth+n.endWidth)/2;return i._renderer.createArc(t.x,t.y,t.radius+i._outer*r,t.radius-i._inner*r,i._translator.translate(n.end),i._translator.translate(n.start))},measure:function(n){var t=this._options.width;return t=r(t)||e(r(t.start),r(t.end)),{min:n.radius-this._inner*t,max:n.radius+this._outer*t}}}),n.viz.gauges.__internals.LinearRangeContainer=n.viz.gauges.__internals.BaseRangeContainer.inherit({_processOptions:function(){var n=this;if(n.vertical=n._options.vertical,n._inner=n._outer=0,n.vertical)switch(f(n._options.horizontalOrientation).toLowerCase()){case"left":n._inner=1;break;case"center":n._inner=n._outer=.5;break;default:n._outer=1}else switch(f(n._options.verticalOrientation).toLowerCase()){case"top":n._inner=1;break;case"middle":n._inner=n._outer=.5;break;default:n._outer=1}},_isVisible:function(){return!0},_createRange:function(n,t){var i=this,r=i._inner,u=i._outer,f=i._translator.translate(n.start),e=i._translator.translate(n.end),o;return o=i.vertical?[t.x-n.startWidth*r,f,t.x-n.endWidth*r,e,t.x+n.endWidth*u,e,t.x+n.startWidth*u,f]:[f,t.y+n.startWidth*u,f,t.y-n.startWidth*r,e,t.y-n.endWidth*r,e,t.y+n.endWidth*u],i._renderer.createArea(o)},measure:function(n){var i={},t;return i.min=i.max=n[this.vertical?"x":"y"],t=this._options.width,t=r(t)||e(r(t.start),r(t.end)),i.min-=this._inner*t,i.max+=this._outer*t,i}})}(DevExpress,jQuery),function(n,t){var r=n.utils.isString,u=Math.max,f=t.extend;n.viz.gauges.__internals.Title=n.Class.inherit({ctor:function(n){this._renderer=n.renderer,this._container=n.container},dispose:function(){return this._renderer=this._container=null,this},clean:function(){var n=this;return n._root&&(n._root.detach().clear(),n._root=n._layout=null),n},render:function(n,t){var i=this,l=r(n.text)&&n.text.length>0,a=r(t.text)&&t.text.length>0;if(!l&&!a)return i;i._root=i._renderer.createGroup({"class":"dxg-title"}).append(i._container);var e=l?i._renderer.createText(n.text,0,0,{align:"center",font:n.font}).append(i._root):null,o=a?i._renderer.createText(t.text,0,0,{align:"center",font:t.font}).append(i._root):null,s=e?e.getBBox():{},h=o?o.getBBox():{},c=0;return e&&(c+=-s.y,e.applySettings({x:0,y:c})),o&&(c+=-h.y,o.applySettings({x:0,y:c})),i._layout=f({position:n.position,width:u(s.width||0,h.width||0),height:e&&o?-s.y+h.height:s.height||h.height},n.layout),i},getLayoutOptions:function(){return this._layout},locate:function(n,t){return this._root.applySettings({translateX:n+this._layout.width/2,translateY:t}),this}})}(DevExpress,jQuery),function(n,t){var r=t.extend;n.viz.gauges.__internals.Tooltip=n.viz.core.Tooltip.inherit({ctor:function(n){var t=this;t._container=n.container,t._tracker=n.tracker,t._root=n.renderer.createGroup({"class":"dxg-tooltip"}),t.callBase(null,t._root,n.renderer),t._setTrackerCallbacks()},dispose:function(){var n=this;return n._container=n._tracker=n._root=null,n._shadow?n.callBase.apply(n,arguments):n},_setTrackerCallbacks:function(){function t(t,i){var u=t.getTooltipParameters(),f=r({value:u.value,valueText:n.formatValue(u.value),color:u.color},i);return n.prepare(f,{x:u.x,y:u.y,offset:u.offset})}function i(){return n.show()}function u(){return n.hide()}var n=this;n._tracker.setCallbacks({"tooltip-prepare":t,"tooltip-show":i,"tooltip-hide":u})},clean:function(){return this._root.detach(),this},render:function(n,t){var i=this;return n.canvasWidth=t.width,n.canvasHeight=t.height,n.text={"class":"dxg-text"},i.update(n),i._tracker.setTooltipState(i.enabled()),i.enabled()&&i._root.append(i._container),i}})}(DevExpress,jQuery),function(n,t){function o(n){if(n.position){var t=r(n.position).toLowerCase().split("-");n.verticalAlignment=t[0],n.horizontalAlignment=t[1]}}var f=Number,r=String,s=Math.min,u=Math.max,e=t.each;n.viz.gauges.__internals.LayoutManager=n.Class.inherit({setRect:function(n){return this._currentRect=n.clone(),this},getRect:function(){return this._currentRect.clone()},beginLayout:function(n){return this._rootRect=n.clone(),this._currentRect=n.clone(),this._cache=[],this},applyLayout:function(n){var t=n.getLayoutOptions(),i,e;if(!t)return this;i=this._currentRect,e=f(t.overlay)||0,o(t);switch(r(t.verticalAlignment).toLowerCase()){case"bottom":i.bottom-=u(t.height-e,0);break;default:i.top+=u(t.height-e,0)}return this._cache.push({target:n,options:t}),this},endLayout:function(){var n=this,i=n._rootRect,t=n._currentRect;return e(n._cache,function(n,e){var o=e.options,s,c,h=f(o.overlay)||0;switch(r(o.verticalAlignment).toLowerCase()){case"bottom":c=t.bottom-h,t.bottom+=u(o.height-h,0);break;default:c=t.top-o.height+h,t.top-=u(o.height-h,0)}switch(r(o.horizontalAlignment).toLowerCase()){case"left":s=i.left;break;case"right":s=i.right-o.width;break;default:s=i.horizontalMiddle()-o.width/2}e.target.locate(s,c)}),n._cache=null,n},selectRectByAspectRatio:function(n,t){var i=this._currentRect.clone(),f,r=0,u=0;return t=t||{},n>0&&(i.left+=t.left||0,i.right-=t.right||0,i.top+=t.top||0,i.bottom-=t.bottom||0,i.width()>0&&i.height()>0?(f=i.height()/i.width(),f>1?n<f?r=i.width():u=i.height():n>f?u=i.height():r=i.width(),r>0||(r=u/n),u>0||(u=r*n),r=(i.width()-r)/2,u=(i.height()-u)/2,i.left+=r,i.right-=r,i.top+=u,i.bottom-=u):(i.left=i.right=i.horizontalMiddle(),i.top=i.bottom=i.verticalMiddle())),i},selectRectBySizes:function(n,t){var i=this._currentRect.clone(),r;return t=t||{},n&&(i.left+=t.left||0,i.right-=t.right||0,i.top+=t.top||0,i.bottom-=t.bottom||0,n.width>0&&(r=(i.width()-n.width)/2,r>0&&(i.left+=r,i.right-=r)),n.height>0&&(r=(i.height()-n.height)/2,r>0&&(i.top+=r,i.bottom-=r))),i}})}(DevExpress,jQuery),function(n,t){var r=t.extend;n.viz.gauges.__internals.ThemeManager=n.viz.core.BaseThemeManager.inherit({_themeSection:"gauge",_initializeTheme:function(){var n=this,t;n._subTheme&&(t=r(!0,{},n._theme[n._subTheme],n._theme),r(!0,n._theme,t)),n._initializeFont(n._theme.scale.label.font),n._initializeFont(n._theme.valueIndicator.rangebar.text.font),n._initializeFont(n._theme.subvalueIndicator.textcloud.text.font),n._initializeFont(n._theme.valueIndicators.rangebar.text.font),n._initializeFont(n._theme.valueIndicators.textcloud.text.font),n._initializeFont(n._theme.title.font),n._initializeFont(n._theme.subtitle.font),n._initializeFont(n._theme.tooltip.font),n._initializeFont(n._theme.indicator.text.font),n._initializeFont(n._theme.loadingIndicator.font)}})}(DevExpress,jQuery),function(n,t,i){function u(n){return e(n)?{text:n}:n||{}}var f=Number,h=n.utils.isNumber,e=n.utils.isString,o=n.utils.getAppropriateFormat,r=t.extend,s=t.each;n.viz.gauges.__internals.BaseGauge=n.viz.core.BaseWidget.inherit({_init:function(){var n=this;n.callBase.apply(n,arguments),n._renderer=n._factory.createRenderer({width:1,height:1,pathModified:n.option("pathModified"),rtl:n.option("rtlEnabled")}),n._root=n._renderer.getRoot(),n._root.applySettings({"class":"dxg "+n._rootClass}),n._translator=n._factory.createTranslator(),n._themeManager=n._factory.createThemeManager(),n._tracker=n._factory.createTracker({renderer:n._renderer,container:n._root}),n._layoutManager=n._factory.createLayoutManager(),n._tooltip=n._factory.createTooltip({renderer:n._renderer,container:n._root,tracker:n._tracker}),n._title=n._factory.createTitle({renderer:n._renderer,container:n._root}),n._deltaIndicator=n._factory.createDeltaIndicator({renderer:n._renderer,container:n._root}),n._setupDomain(),n._themeManager.setTheme(n.option("theme"))},_dispose:function(){var n=this;n.callBase.apply(n,arguments),n._renderer.dispose(),n._themeManager.dispose(),n._tracker.dispose(),n._title.dispose(),n._deltaIndicator&&n._deltaIndicator.dispose(),n._tooltip.dispose(),n._disposeLoadIndicator(),n._renderer=n._root=n._translator=n._themeManager=n._tracker=n._layoutManager=n._title=n._tooltip=null},_refresh:function(){var n=this,t=n.callBase;n._endLoading(function(){t.call(n)})},_clean:function(){this._cleanCore()},_render:function(){var n=this;n._setupCodomain(),n._setupAnimationSettings(),n._calculateSize()&&n._checkDomain()&&(n._renderer.draw(n._element()[0]),n._setupDefaultFormat(),n._renderCore()),n._drawn()},_cleanCore:function(){var n=this;n._tooltip.clean(),n._title.clean(),n._deltaIndicator&&n._deltaIndicator.clean(),n._tracker.deactivate(),n._cleanContent()},_renderCore:function(){var n=this;n._title.render(r(!0,{},n._themeManager.theme().title,u(n.option("title"))),r(!0,{},n._themeManager.theme().subtitle,u(n.option("subtitle")))),n._deltaIndicator&&n._deltaIndicator.render(r(!0,{},n._themeManager.theme().indicator,n.option("indicator"))),n._layoutManager.beginLayout(n._rootRect),s([n._deltaIndicator,n._title],function(t,i){i&&n._layoutManager.applyLayout(i)}),n._mainRect=n._layoutManager.getRect(),n._renderContent(),n._layoutManager.endLayout(),n._tooltip.render(r(!0,{},n._themeManager.theme().tooltip,n.option("tooltip")),{width:n._width,height:n._height}),n._tracker.activate(),n._updateLoadIndicator(i,n._width,n._height),n._noAnimation=null},_resize:function(){var n=this;n._calculateSize()&&(n._resizing=n._noAnimation=!0,n._cleanCore(),n._renderCore(),n._resizing=null)},render:function(n){return n&&n.animate!==i&&!n.animate&&(this._noAnimation=!0),this._refresh(),this},showLoadingIndicator:function(){this._showLoadIndicator(this._getLoadIndicatorOption(),{width:this._width,height:this._height})},_getLoadIndicatorOption:function(){return r(!0,{},this._themeManager.theme().loadingIndicator,this.option("loadingIndicator"))},_optionChanged:function(n,t){var r=this;switch(n){case"theme":r._themeManager.setTheme(t),r._invalidate();break;case"startValue":case"endValue":r._setupDomain(),r._invalidate();break;default:r.callBase.apply(r,arguments)}},_calculateSize:function(){var n=this;return n._calculateSizeCore(),n._width!==0&&n._height!==0&&n._element().is(":visible")?(n._renderer.resize(n._width,n._height),!0):(n._incidentOccured("W2001",[n.NAME]),!1)},_checkDomain:function(){var n=this,t=n._translator.getDomain(),i=isFinite(1/(t[1]-t[0]));return i||n._incidentOccured("W2301"),i},_setupAnimationSettings:function(){var t=this,n=t.option("animation");t._animationSettings=null,(n===i||n)&&(n===i&&(n={enabled:t.option("animationEnabled"),duration:t.option("animationDuration")}),n=r({enabled:!0,duration:1e3,easing:"easeOutCubic"},n),n.enabled&&n.duration>0&&(t._animationSettings={duration:f(n.duration),easing:n.easing})),t._containerBackgroundColor=t.option("containerBackgroundColor")||t._themeManager.theme().containerBackgroundColor},_setupDefaultFormat:function(){var n=this._translator.getDomain();this._defaultFormatOptions=o(n[0],n[1],this._getApproximateScreenRange())},_setupDomain:null,_calculateSizeCore:null,_cleanContent:null,_renderContent:null,_setupCodomain:null,_getApproximateScreenRange:null,_factory:{createRenderer:n.viz.core.CoreFactory.createRenderer,createTranslator:function(){return new n.viz.core.Translator1D},createTracker:function(t){return new n.viz.gauges.__internals.Tracker(t)},createLayoutManager:function(){return new n.viz.gauges.__internals.LayoutManager},createTitle:function(t){return new n.viz.gauges.__internals.Title(t)},createDeltaIndicator:function(t){return n.viz.gauges.__internals.DeltaIndicator?new n.viz.gauges.__internals.DeltaIndicator(t):null},createTooltip:function(t){return new n.viz.gauges.__internals.Tooltip(t)}}})}(DevExpress,jQuery),function(n,t,i){function v(n){return n.value}function o(n,t,i){for(var o=n[t],u=e(i)?s(i,v):[],r=0,h=u.length,f=[];r<h;++r)f.push(n._processValue(u[r],o[r]));n[t]=f}function d(n){n.value=n.subvalues=k,n._setupValue=n._setupSubvalues=n._updateValueIndicator=n._updateSubvalueIndicators=null}function tt(n){n._needleValues=s(n.option("needles")||[],v),n._markerValues=s(n.option("markers")||[],v),n._rangeBarValues=s(n.option("rangeBars")||[],v),n._needles=[],n._markers=[],n._rangeBars=[],n._setupValueState=function(){var n=this;o(n,"_needleValues",n.option("needles")),o(n,"_markerValues",n.option("markers")),o(n,"_rangeBarValues",n.option("rangeBars"))},n._handleValueChanged=function(n,t){var u=this,r=!1;switch(n){case"needles":o(u,"_needleValues",t),r=!0;break;case"markers":o(u,"_markerValues",t),r=!0;break;case"rangeBars":o(u,"_rangeBarValues",t),r=!0}return r&&u._invalidate(),r},n._updateActiveElements=function(){var n=this;r(n._needles,function(t,i){i.value(n._needleValues[i._index],n._noAnimation)}),r(n._markers,function(t,i){i.value(n._markerValues[i._index],n._noAnimation)}),r(n._rangeBars,function(t,i){i.value(n._rangeBarValues[i._index],n._noAnimation)}),n._resizing||n.hideLoadingIndicator()},n._prepareValueIndicators=function(){return ut(this)},n._disposeValueIndicators=function(){var n=this;r([].concat(n._needles,n._markers,n._rangeBars),function(n,t){t.dispose()}),n._needles=n._markers=n._rangeBars=null},n._cleanValueIndicators=function(){r([].concat(this._needles,this._markers,this._rangeBars),function(n,t){t.clean()})},n.needleValue=function(n,t){return y(this,this._needles,this._needleValues,n,t)},n.markerValue=function(n,t){return y(this,this._markers,this._markerValues,n,t)},n.rangeBarValue=function(n,t){return y(this,this._rangeBars,this._rangeBarValues,n,t)}}function it(n){n._indicatorValues=[],n._valueIndicators=[],n._setupValueState=function(){o(this,"_indicatorValues",this.option("valueIndicators"))},n._handleValueChagned=function(n,t){return n==="valueIndicators"?(o(this,"_indicatorValues",t),this._invalidate(),!0):!1},n._updateActiveElements=function(){var n=this;r(n._valueIndicators,function(t,i){i.value(n._indicatorValues[i._index],n._noAnimation)}),n._resizing||n.hideLoadingIndicator()},n._prepareValueIndicators=function(){return rt(this)},n._disposeValueIndicators=function(){r(this._valueIndicators,function(n,t){t.dispose()}),this._valueIndicators=null},n._cleanValueIndicators=function(){r(this._valueIndicators,function(n,t){t.clean()})},n.indicatorValue=function(n,t){return y(this,this._valueIndicators,this._indicatorValues,n,t)}}function rt(n){for(var h=n._valueIndicators||[],u=n.option("valueIndicators"),o=[],t=0,i=e(u)?u.length:0;t<i;++t)o.push(u[t]);for(i=h.length;t<i;++t)o.push(null);var s=n._themeManager.theme().valueIndicators,l={renderer:n._renderer,owner:n._root,translator:n._translator,tracker:n._tracker},c=[];return r(o,function(t,i){var r=h[t],u,e;if(!i){r&&r.dispose();return}u=a(i.type||s._type).toLowerCase(),r&&u!==r.type&&(r.dispose(),r=null),r||(r=n._createValueIndicatorInHardMode(u),r&&r.setup(l)),r&&(e=f(!0,{},s._default,s[u],i,{type:u,animation:n._animationSettings,containerBackgroundColor:n._containerBackgroundColor}),n._updateIndicatorSettings(e),r.render(e),r._index=t,r._trackerInfo={index:t},c.push(r))}),n._valueIndicators=c}function ut(n){var t=w(n,"_rangeBars","_createRangeBar",{user:n.option("rangeBars"),common:n.option("commonRangeBarSettings"),theme:n._themeManager.theme().valueIndicator,preset:{},type:"rangebar",className:"dxg-value-indicator"}),i=w(n,"_needles","_createNeedle",{user:n.option("needles"),common:n.option("commonNeedleSettings"),theme:n._themeManager.theme().valueIndicator,preset:n._getPreset().commonNeedleSettings,className:"dxg-value-indicator"}),r=w(n,"_markers","_createMarker",{user:n.option("markers"),common:n.option("commonMarkerSettings"),theme:n._themeManager.theme().subvalueIndicator,preset:n._getPreset().commonMarkerSettings,className:"dxg-subvalue-indicator"}),u=n._prepareObsoleteSpindle&&n._prepareObsoleteSpindle();return[].concat(t,i,r,[u])}function w(n,t,i,u){for(var v=n[t],h=[],o=0,s=e(u.user)?u.user.length:0;o<s;++o)h.push(u.user[o]);for(s=v.length;o<s;++o)h.push(null);var c=u.theme,p=u.preset,y=u.common||{},w={renderer:n._renderer,owner:n._root,translator:n._translator,tracker:n._tracker,className:u.className},l=[];return r(h,function(t,r){var e=v[t],o,s;if(!r){e&&e.dispose();return}o=a(r.type||y.type||p.type||c.type).toLowerCase(),e&&e.type!==o&&(e.dispose(),e=null),e||(e=n[i](o),e.setup(w)),e&&(o=u.type||o,s=f(!0,{},c._default,c[o],y,r),s.spindleSize=null,s.animation=n._animationSettings,s.containerBackgroundColor=n._containerBackgroundColor,n._updateIndicatorSettings(s),e.render(s),e._index=t,e._trackerInfo={index:t},l.push(e))}),n[t]=l,l}function y(n,t,r,u,f){return f!==i?(r[u]!==i&&(r[u]=n._processValue(f,r[u]),t[u]&&t[u].value(r[u]),n._resizing||n.hideLoadingIndicator()),n):r[u]}function ft(n,t){if(n===t)return!0;if(e(n)&&e(t)&&n.length===t.length){for(var i=0,r=n.length;i<r;++i)if(nt(n[i]-t[i])>1e-8)return!1;return!0}return!1}var b=n.viz.core.Rectangle,g=n.utils.isDefined,e=n.utils.isArray,h=n.utils.isNumber,p=isFinite,u=Number,a=String,nt=Math.abs,f=t.extend,r=t.each,s=t.map,k=t.noop,c="value",l="subvalues";n.viz.gauges.Gauge=n.viz.gauges.__internals.BaseGauge.inherit({_init:function(){var n=this;n.__value=n.option(c),n.__subvalues=n.option(l),e(n.__subvalues)||(n.__subvalues=h(n.__subvalues)?[n.__subvalues]:null),n._selectMode(),n.callBase.apply(n,arguments),n._scale=n._createScale({renderer:n._renderer,container:n._root,translator:n._translator}),n._rangeContainer=n._createRangeContainer({renderer:n._renderer,container:n._root,translator:n._translator})},_dispose:function(){var n=this;n.callBase.apply(n,arguments),n._scale.dispose(),n._rangeContainer.dispose(),n._disposeValueIndicators(),n._scale=n._rangeContainer=null},_disposeValueIndicators:function(){var n=this;n._valueIndicator&&n._valueIndicator.dispose(),n._subvalueIndicatorsSet&&n._subvalueIndicatorsSet.dispose(),n._valueIndicator=n._subvalueIndicatorsSet=null},_selectMode:function(){var n=this;n.option(c)===i&&n.option(l)===i&&(n.option("needles")!==i||n.option("markers")!==i||n.option("rangeBars")!==i?(d(n),tt(n)):n.option("valueIndicators")!==i&&(d(n),it(n)))},_setupDomain:function(){var n=this,r=n.option("scale")||{},t=n.option("startValue"),i=n.option("endValue");t=h(t)?u(t):h(r.startValue)?u(r.startValue):0,i=h(i)?u(i):h(r.endValue)?u(r.endValue):100,n._baseValue=t<i?t:i,n._translator.setDomain(t,i),n._setupValueState()},_setupValueState:function(){this._setupValue(),this.__subvalues!==null&&this._setupSubvalues()},_calculateSizeCore:function(){var n=this,i=n.option("size")||{},t=n.option("margin")||{};if(u(i.width)===0||u(i.height)===0)n._width=n._height=0,n._rootRect=new b;else{var r=i.width>0?u(i.width):n._element().width()||n._getDefaultContainerSize().width,f=i.height>0?u(i.height):n._element().height()||n._getDefaultContainerSize().height,e=t.left>0?u(t.left):0,o=t.right>0?u(t.right):0,s=t.top>0?u(t.top):0,h=t.bottom>0?u(t.bottom):0;e+o>=r&&(e=o=0),s+h>=f&&(s=h=0),n._width=r,n._height=f,n._rootRect=new b({left:e,top:s,right:r-o,bottom:f-h})}},_cleanContent:function(){var n=this;n._rangeContainer.clean(),n._scale.clean(),n._cleanValueIndicators()},_renderContent:function(){var n=this,t;n._rangeContainer.render(f(!0,{},n._themeManager.theme().rangeContainer,n.option("rangeContainer"),{themeName:n._themeManager.themeName(),vertical:n._area.vertical})),n._scale.render(f(!0,{},n._themeManager.theme().scale,n.option("scale"),{approximateScreenDelta:n._getApproximateScreenRange(),offset:0,vertical:n._area.vertical})),t=n._prepareValueIndicators(),t=s([n._scale,n._rangeContainer].concat(t),function(n){return n&&n.enabled?n:null}),n._applyMainLayout(t),r(t,function(t,i){n._updateElementPosition(i)}),n._updateActiveElements()},_updateIndicatorSettings:function(n){var t=this;n.currentValue=n.baseValue=p(t._translator.translate(n.baseValue))?u(n.baseValue):t._baseValue,n.vertical=t._area.vertical,!n.text||n.text.format||n.text.precision||(n.text.format=t._defaultFormatOptions.format,n.text.precision=t._defaultFormatOptions.precision)},_prepareValueIndicatorSettings:function(){var n=this,i=n.option("valueIndicator")||{},t=f(!0,{},n._themeManager.theme().valueIndicator),r=a(i.type||t.type).toLowerCase();n._valueIndicatorSettings=f(!0,t._default,t[r],i,{type:r,animation:n._animationSettings,containerBackgroundColor:n._containerBackgroundColor}),n._updateIndicatorSettings(n._valueIndicatorSettings)},_prepareSubvalueIndicatorSettings:function(){var n=this,i=n.option("subvalueIndicator")||{},t=f(!0,{},n._themeManager.theme().subvalueIndicator),r=a(i.type||t.type).toLowerCase();n._subvalueIndicatorSettings=f(!0,t._default,t[r],i,{type:r,animation:n._animationSettings,containerBackgroundColor:n._containerBackgroundColor}),n._updateIndicatorSettings(n._subvalueIndicatorSettings)},_cleanValueIndicators:function(){this._valueIndicator&&this._valueIndicator.clean(),this._subvalueIndicatorsSet&&this._subvalueIndicatorsSet.clean()},_prepareValueIndicators:function(){var n=this;return n._prepareValueIndicator(),n.__subvalues!==null&&n._prepareSubvalueIndicators(),[n._valueIndicator,n._subvalueIndicatorsSet]},_updateActiveElements:function(){this._updateValueIndicator(),this._updateSubvalueIndicators()},_prepareValueIndicator:function(){var n=this,t=n._valueIndicator,i;n._prepareValueIndicatorSettings(),t&&n._valueIndicatorType!==n._valueIndicatorSettings.type&&t.dispose()&&(t=null),n._valueIndicatorType=n._valueIndicatorSettings.type,t||(t=n._valueIndicator=n._createValueIndicator(n._valueIndicatorType),t&&(t.setup({renderer:n._renderer,translator:n._translator,owner:n._root,tracker:n._tracker,className:"dxg-value-indicator"}),t._trackerInfo={type:"value-indicator"})),t.render(n._valueIndicatorSettings)},_prepareSubvalueIndicators:function(){var t=this,i=t._subvalueIndicatorsSet,r;i||(i=t._subvalueIndicatorsSet=new n.viz.gauges.__internals.ValueIndicatorsSet({renderer:t._renderer,translator:t._translator,owner:t._root,tracker:t._tracker,className:"dxg-subvalue-indicators",indicatorClassName:"dxg-subvalue-indicator",trackerType:"subvalue-indicator",createIndicator:function(){return t._createSubvalueIndicator(t._subvalueIndicatorType)}})),t._prepareSubvalueIndicatorSettings(),r=t._subvalueIndicatorSettings.type!==t._subvalueIndicatorType,t._subvalueIndicatorType=t._subvalueIndicatorSettings.type,t._createSubvalueIndicator(t._subvalueIndicatorType)&&i.render(t._subvalueIndicatorSettings,r)},_processValue:function(n,t){var r=this._translator.adjust(n!==i?n:this.__value);return p(r)?r:t},_setupValue:function(n){this.__value=this._processValue(n,this.__value)},_setupSubvalues:function(n){var r=n===i?this.__subvalues:e(n)?n:h(n)?[n]:null;if(r!==null){for(var t=0,f=r.length,u=[];t<f;++t)u.push(this._processValue(r[t],this.__subvalues[t]));this.__subvalues=u}},_updateValueIndicator:function(){var n=this;n._valueIndicator&&n._valueIndicator.value(n.__value,n._noAnimation),n._resizing||n.hideLoadingIndicator()},_updateSubvalueIndicators:function(){var n=this;n._subvalueIndicatorsSet&&n._subvalueIndicatorsSet.values(n.__subvalues,n._noAnimation),n._resizing||n.hideLoadingIndicator()},value:function(n){var t=this;return n!==i?(t._setupValue(n),t._updateValueIndicator(),t.option(c,t.__value),t):t.__value},subvalues:function(n){var t=this;return n!==i?(t.__subvalues!==null&&(t._setupSubvalues(n),t._updateSubvalueIndicators(),t.option(l,t.__subvalues)),t):t.__subvalues!==null?t.__subvalues.slice():i},_handleValueChanged:function(n,t){var r=this;switch(n){case c:return r._setupValue(t),r._updateValueIndicator(),r.option(c,r.__value),!0;case l:return r.__subvalues!==null?(r._setupSubvalues(t),r._updateSubvalueIndicators(),r.option(l,r.__subvalues),!0):!1;default:return!1}},_optionChanged:function(n,t,i){var r=this;if(!r._handleValueChanged(n,t,i))switch(n){case"scale":r._setupDomain(),r._invalidate();break;default:r.callBase.apply(r,arguments)}},_optionValuesEqual:function(n,t,i){switch(n){case c:return t===i;case l:return ft(t,i);default:return this.callBase.apply(this,arguments)}},_getDefaultContainerSize:null,_applyMainLayout:null,_updateElementPosition:null,_createScale:null,_createRangeContainer:null,_createValueIndicator:null,_createSubvalueIndicator:null,_getApproximateScreenRange:null}),n.viz.gauges.Gauge.prototype._factory=n.utils.clone(n.viz.gauges.__internals.BaseGauge.prototype._factory),n.viz.gauges.Gauge.prototype._factory.createThemeManager=function(){return new n.viz.gauges.__internals.ThemeManager},n.viz.gauges.__internals.ValueIndicatorsSet=n.Class.inherit({ctor:function(n){var t=this;t._parameters=n,t._createIndicator=t._parameters.createIndicator||k,t._root=t._parameters.renderer.createGroup({"class":t._parameters.className}),t._indicatorParameters=t._indicatorParameters||{renderer:t._parameters.renderer,translator:t._parameters.translator,owner:t._root,tracker:t._parameters.tracker,className:t._parameters.indicatorClassName},t._indicators=[]},dispose:function(){var n=this;return r(n._indicators,function(n,t){t.dispose()}),n._parameters=n._createIndicator=n._root=n._options=n._indicators=n._colorPalette=n._palette=null,n},clean:function(){var n=this;return n._root.detach(),n._sample&&n._sample.clean().dispose(),r(n._indicators,function(n,t){t.clean()}),n._sample=n._options=n._palette=null,n},render:function(t,i){var r=this;return r._options=t,r._sample=r._createIndicator(),r._sample&&r._sample.setup(r._indicatorParameters).render(t),r.enabled=r._sample&&r._sample.enabled,r._palette=g(t.palette)?new n.viz.core.Palette(t.palette):null,r.enabled&&(r._root.append(r._parameters.owner),r._generatePalette(r._indicators.length),r._indicators=s(r._indicators,function(n,t){return i&&(n.dispose(),n=r._createIndicator(),n.setup(r._indicatorParameters),n._trackerInfo={type:r._parameters.trackerType,index:t}),n.render(r._getIndicatorOptions(t)),n})),r},resize:function(n){var t=this;return t._layout=n,r(t._indicators,function(t,i){i.resize(n)}),t},measure:function(n){return this._sample.measure(n)},_getIndicatorOptions:function(n){var t=this._options;return this._colorPalette&&(t=f({},t,{color:this._colorPalette[n]})),t},_generatePalette:function(n){var t=this,i=null,r;if(t._palette)for(i=[],t._palette.reset(),r=0;r<n;++r)i.push(t._palette.getNextColor());t._colorPalette=i},_adjustIndicatorsCount:function(n){var t=this,r=t._indicators,i,f,o,u,e=r.length,s=t._parameters.palette;if(e>n){for(i=n,f=e;i<f;++i)r[i].clean().dispose();t._indicators=r.slice(0,n),t._generatePalette(r.length)}else if(e<n)for(t._generatePalette(n),i=e,f=n;i<f;++i)u=t._createIndicator(),u.setup(t._indicatorParameters),u._trackerInfo={type:t._parameters.trackerType,index:i},u.render(t._getIndicatorOptions(i)).resize(t._layout),r.push(u)},values:function(n,t){var u=this;if(u.enabled)return n!==i?(e(n)||(n=p(n)?[Number(n)]:null),n&&(u._adjustIndicatorsCount(n.length),r(u._indicators,function(i,r){r.value(n[i],t)})),u):s(u._indicators,function(n){return n.value()})}})}(DevExpress,jQuery),function(n,t,i){function y(n,t){var s=c(n),h=c(t),i=s.cos,u=s.sin,e=h.cos,o=h.sin;return{left:u<=0&&o>=0||u<=0&&o<=0&&i<=e||u>=0&&o>=0&&i>=e?-1:f(i,e,0),right:u>=0&&o<=0||u>=0&&o>=0&&i>=e||u<=0&&o<=0&&i<=e?1:r(i,e,0),up:i<=0&&e>=0||i<=0&&e<=0&&u>=o||i>=0&&e>=0&&u<=o?-1:-r(u,o,0),down:i>=0&&e<=0||i>=0&&e>=0&&u<=o||i<=0&&e<=0&&u>=o?1:-f(u,o,0)}}var u=n.viz.gauges.__factory,s=window.isFinite,e=window.Number,h=n.utils.normalizeAngle,c=n.utils.getCosAndSin,l=Math.abs,r=Math.max,f=Math.min,o=Math.round,p=Array.prototype.slice,w=t.extend,a=t.each,v=Math.PI;n.viz.gauges.CircularGauge=n.viz.gauges.Gauge.inherit({_rootClass:"dxg-circular-gauge",_selectMode:function(){this.callBase.apply(this,arguments),typeof this.indicatorValue=="function"&&(this._createValueIndicatorInHardMode=function(n){return u.createCircularValueIndicatorInHardMode(n)})},_setupCodomain:function(){var u=this,r=u.option("geometry")||{},t=r.startAngle,n=r.endAngle,f;t=s(t)?h(t):225,n=s(n)?h(n):-45,l(t-n)<1?(n-=360,f={left:-1,up:-1,right:1,down:1}):(t<n&&(n-=360),f=y(t,n)),u._area={x:0,y:0,radius:100,startCoord:t,endCoord:n,scaleRadius:r.scaleRadius>0?e(r.scaleRadius):i,sides:f},u._translator.setCodomain(t,n)},_measureMainElements:function(n){var c=this,t=0,o=Infinity,i=0,u=0,s=0,h=0;return a(n,function(n,l){var a=l.measure({radius:c._area.radius-(e(l._options.offset)||0)});a.min>0&&(o=f(o,a.min)),a.max>0&&(t=r(t,a.max)),a.horizontalOffset>0&&(i=r(i,a.max+a.horizontalOffset)),a.verticalOffset>0&&(u=r(u,a.max+a.verticalOffset)),a.inverseHorizontalOffset>0&&(s=r(s,a.inverseHorizontalOffset)),a.inverseVerticalOffset>0&&(h=r(h,a.inverseVerticalOffset))}),i=r(i-t,0),u=r(u-t,0),{minRadius:o,maxRadius:t,horizontalMargin:i,verticalMargin:u,inverseHorizontalMargin:s,inverseVerticalMargin:h}},_applyMainLayout:function(n){var h=this,r=h._measureMainElements(n),u=h._area,t=u.sides,e={left:(t.left<-.1?r.horizontalMargin:r.inverseHorizontalMargin)||0,right:(t.right>.1?r.horizontalMargin:r.inverseHorizontalMargin)||0,top:(t.up<-.1?r.verticalMargin:r.inverseVerticalMargin)||0,bottom:(t.down>.1?r.verticalMargin:r.inverseVerticalMargin)||0},i=h._layoutManager.selectRectByAspectRatio((t.down-t.up)/(t.right-t.left),e),s=f(i.width()/(t.right-t.left),i.height()/(t.down-t.up)),l,a,c=(r.maxRadius-u.radius+u.scaleRadius)/s;0<c&&c<1&&(i=i.scale(c),s*=c),s=s-r.maxRadius+u.radius,l=i.left-i.width()*t.left/(t.right-t.left),a=i.top-i.height()*t.up/(t.down-t.up),u.x=o(l),u.y=o(a),u.radius=s,i.left-=e.left,i.right+=e.right,i.top-=e.top,i.bottom+=e.bottom,h._layoutManager.setRect(i)},_updateElementPosition:function(n){n.resize({x:this._area.x,y:this._area.y,radius:o(this._area.radius-(e(n._options.offset)||0))})},_createScale:function(n){return u.createCircularScale(n)},_createRangeContainer:function(n){return u.createCircularRangeContainer(n)},_createValueIndicator:function(n){return u.createCircularValueIndicator(n)},_createSubvalueIndicator:function(n){return u.createCircularSubvalueIndicator(n)},_getApproximateScreenRange:function(){var i=this,n=i._area,t=f(i._width/(n.sides.right-n.sides.left),i._height/(n.sides.down-n.sides.up));return t>n.totalRadius&&(t=n.totalRadius),t=.8*t,-i._translator.getCodomainRange()*t*v/180},_getDefaultContainerSize:function(){return{width:300,height:300}},_getPreset:function(){var t=this.option("preset"),n;return n=t==="preset2"?{commonNeedleSettings:{type:"twocolorrectangle"},commonMarkerSettings:{type:"triangle"}}:t==="preset3"?{commonNeedleSettings:{type:"rectangle"},commonMarkerSettings:{type:"triangle"}}:{commonNeedleSettings:{type:"rectangle"},commonMarkerSettings:{type:"textcloud"}}},_createNeedle:function(n){return u.createCircularNeedle(n)},_createMarker:function(n){return u.createCircularMarker(n)},_createRangeBar:function(){return u.createCircularRangeBar()},_prepareObsoleteSpindle:function(){var n=this,t=n.option("spindle")||{},f=n._needles&&("visible"in t?!!t.visible:!0),u,i,r,e;return f&&(u=n._themeManager.theme().valueIndicator._default,i=t.size||u.spindleSize,f=i>0),f?(r=t.gapSize||u.spindleGapSize,e=t.color||u.color,r=r<=i?r:i,n._spindle=n._spindle||n._renderer.createGroup({"class":"dxg-value-indicator"}),n._spindle.append(n._root),n._spindleOuter=n._spindleOuter||n._renderer.createCircle(0,0,0,{"class":"dxg-spindle-border",stroke:"none",strokeWidth:0}).append(n._spindle),n._spindleInner=n._spindleInner||n._renderer.createCircle(0,0,0,{"class":"dxg-spindle-hole",stroke:"none",strokeWidth:0}).append(n._spindle),n._spindleOuter.applySettings({cx:n._area.x,cy:n._area.y,r:i/2,fill:e}),n._spindleInner.applySettings({cx:n._area.x,cy:n._area.y,r:r/2,fill:n._containerBackgroundColor}),{enabled:!0,_options:{offset:0},measure:function(){return{}},resize:function(t){return n._spindleOuter.applySettings({cx:t.x,cy:t.y}),n._spindleInner.applySettings({cx:t.x,cy:t.y}),n}}):(n._spindle&&n._spindle.remove(),delete n._spindle,delete n._spindleOuter,delete n._spindleInner,null)}}),n.viz.gauges.CircularGauge.prototype._factory=n.utils.clone(n.viz.gauges.__internals.BaseGauge.prototype._factory),n.viz.gauges.CircularGauge.prototype._factory.createThemeManager=function(){var t=new n.viz.gauges.__internals.ThemeManager;return t._subTheme="_circular",t}}(DevExpress,jQuery),function(n,t,i){var r=n.viz.gauges.__factory,o=String,u=Number,e=Math.max,s=Math.min,f=Math.round,c=Array.prototype.slice,l=t.extend,h=t.each;n.viz.gauges.LinearGauge=n.viz.gauges.Gauge.inherit({_rootClass:"dxg-linear-gauge",_selectMode:function(){this.callBase.apply(this,arguments),typeof this.indicatorValue=="function"&&(this._createValueIndicatorInHardMode=function(n){return r.createLinearValueIndicatorInHardMode(n)})},_setupCodomain:function(){var n=this,t=n.option("geometry")||{},r=o(t.orientation).toLowerCase()==="vertical";n._area={vertical:r,x:0,y:0,startCoord:-100,endCoord:100,scaleSize:t.scaleSize>0?u(t.scaleSize):i},n._scale.vertical=r,n._rangeContainer.vertical=r},_measureMainElements:function(n){var f=this,t=1e3,i=0,r=0;return h(n,function(n,o){var h=o.measure({x:f._area.x+(u(o._options.offset)||0),y:f._area.y+(u(o._options.offset)||0)});i=e(i,h.max),t=s(t,h.min),h.indent>0&&(r=e(r,h.indent))}),{minBound:t,maxBound:i,indent:r}},_applyMainLayout:function(n){var u=this,t=u._measureMainElements(n),i=u._area,r,e,o=i.scaleSize+2*t.indent;i.vertical?(r=u._layoutManager.selectRectBySizes({width:t.maxBound-t.minBound,height:o}),e=r.horizontalMiddle()-(t.minBound+t.maxBound)/2,i.startCoord=r.bottom-t.indent,i.endCoord=r.top+t.indent,i.x=f(i.x+e)):(r=u._layoutManager.selectRectBySizes({height:t.maxBound-t.minBound,width:o}),e=r.verticalMiddle()-(t.minBound+t.maxBound)/2,i.startCoord=r.left+t.indent,i.endCoord=r.right-t.indent,i.y=f(i.y+e)),u._translator.setCodomain(i.startCoord,i.endCoord),u._layoutManager.setRect(r)},_updateElementPosition:function(n){n.resize({x:f(this._area.x+(u(n._options.offset)||0)),y:f(this._area.y+(u(n._options.offset)||0))})},_createScale:function(n){return r.createLinearScale(n)},_createRangeContainer:function(n){return r.createLinearRangeContainer(n)},_createValueIndicator:function(n){return r.createLinearValueIndicator(n)},_createSubvalueIndicator:function(n){return r.createLinearSubvalueIndicator(n)},_getApproximateScreenRange:function(){var t=this,i=t._area,n=i.vertical?t._height:t._width;return n>i.totalSize&&(n=i.totalSize),n=n*.8},_getDefaultContainerSize:function(){var n=this.option("geometry")||{};return n.orientation==="vertical"?{width:100,height:300}:{width:300,height:100}},_getPreset:function(){var t=this.option("preset"),n;return n=t==="preset2"?{commonNeedleSettings:{type:"rhombus"},commonMarkerSettings:{type:"triangle"}}:{commonNeedleSettings:{type:"circle"},commonMarkerSettings:{type:"textcloud"}}},_createNeedle:function(n){return r.createLinearNeedle(n)},_createMarker:function(n){return r.createLinearMarker(n)},_createRangeBar:function(){return r.createLinearRangeBar()}}),n.viz.gauges.LinearGauge.prototype._factory=n.utils.clone(n.viz.gauges.__internals.BaseGauge.prototype._factory),n.viz.gauges.LinearGauge.prototype._factory.createThemeManager=function(){var t=new n.viz.gauges.__internals.ThemeManager;return t._subTheme="_linear",t}}(DevExpress,jQuery),function(n,t,i){function y(n,t){var i=this;i._context=t,i._background=t.renderer.createArc().append(t.group),i._background.applySettings({fill:t.backgroundColor}),i._bar=t.renderer.createArc().append(t.group),t.textEnabled&&(i._line=t.renderer.createPath([],{strokeWidth:t.lineWidth}).append(t.group),i._text=t.renderer.createText("",0,0,t.textOptions).append(t.group)),i._tracker=t.renderer.createArc(),t.tracker.attach(i._tracker,i,{index:n}),i._index=n,i._angle=t.baseAngle,i._settings={x:t.x,y:t.y,startAngle:t.baseAngle,endAngle:t.baseAngle}}function p(n,t,i){n.startAngle=t<i?t:i,n.endAngle=t<i?i:t}function h(n,t){return b(n-t)<.0001}function rt(n,t){if(n===t)return!0;if(s(n)&&s(t)&&n.length===t.length){for(var i=0,r=n.length;i<r;++i)if(!h(n[i],t[i]))return!1;return!0}return!1}var w=Math.PI,r=window.Number,f=window.isFinite,b=Math.abs,e=Math.round,k=Math.floor,o=Math.min,c=Math.max,s=n.utils.isArray,d=n.utils.convertAngleToRendererSpace,l=n.utils.getCosAndSin,g=t.noop,u=t.extend,nt=n.viz.gauges.__internals.getSampleText,tt=n.viz.gauges.__internals.formatValue,a=n.viz.core.Rectangle,it=n.viz.core.Palette,v;n.viz.gauges.BarGauge=n.viz.gauges.__internals.BaseGauge.inherit({_rootClass:"dxbg-bar-gauge",_init:function(){var n=this;n.callBase.apply(n,arguments),n._barsGroup=n._renderer.createGroup({"class":"dxbg-bars"}),n._values=[],n._context={renderer:n._renderer,translator:n._translator,tracker:n._tracker,group:n._barsGroup},n._animateStep=function(t){for(var r=n._bars,i=0,u=r.length;i<u;++i)r[i].animate(t)},n._animateComplete=function(){for(var i=n._bars,t=0,r=i.length;t<r;++t)i[t].endAnimation()}},_dispose:function(){var n=this;n.callBase.apply(n,arguments),n._barsGroup=n._values=n._context=n._animateStep=n._animateComplete=null},_setupDomain:function(){var n=this,t=n.option("startValue"),i=n.option("endValue");f(t)||(t=0),f(i)||(i=100),n._translator.setDomain(t,i),n._baseValue=n._translator.adjust(n.option("baseValue")),f(n._baseValue)||(n._baseValue=t<i?t:i)},_calculateSizeCore:function(){var n=this,t=n.option("size")||{};r(t.width)===0||r(t.height)===0?(n._width=n._height=0,n._rootRect=new a):(n._width=t.width>0?r(t.width):n._element().width()||300,n._height=t.height>0?r(t.height):n._element().height()||300,n._rootRect=new a({left:0,top:0,right:n._width,bottom:n._height}))},_setupCodomain:n.viz.gauges.CircularGauge.prototype._setupCodomain,_getApproximateScreenRange:function(){var n=this,t=n._area.sides,i=n._width/(t.right-t.left),r=n._height/(t.down-t.up),u=i<r?i:r;return-n._translator.getCodomainRange()*u*w/180},_setupAnimationSettings:function(){this.callBase(),this._animationSettings&&u(this._animationSettings,{step:this._animateStep,complete:this._animateComplete})},_cleanContent:function(){var n=this,t,i;for(n._barsGroup.detach(),n._animationSettings&&n._barsGroup.stopAnimation(),t=0,i=n._bars?n._bars.length:0;t<i;++t)n._bars[t].dispose();n._palette=n._bars=null},_renderContent:function(){var t=this,f=t.option("label"),o,e;t._barsGroup.append(t._root),t._context.textEnabled=f===i||f&&(!("visible"in f)||f.visible),t._context.textEnabled&&(t._context.textColor=f&&f.font&&f.font.color||null,f=u(!0,{},t._themeManager.theme().label,f),t._context.formatOptions={format:f.format!==i||f.precision!==i?f.format:t._defaultFormatOptions.format,precision:f.format!==i||f.precision!==i?f.precision:t._defaultFormatOptions.precision,customizeText:f.customizeText},t._context.textOptions={font:u({},t._themeManager.theme().label.font,f.font,{color:null}),align:"center"},t._textIndent=f.indent>0?r(f.indent):0,t._context.lineWidth=f.connectorWidth>0?r(f.connectorWidth):0,t._context.lineColor=f.connectorColor||null,o=t._renderer.createText(nt(t._translator,t._context.formatOptions),0,0,t._context.textOptions).append(t._barsGroup),e=o.getBBox(),o.detach(),t._context.textVerticalOffset=-e.y-e.height/2,t._context.textWidth=e.width,t._context.textHeight=e.height),n.viz.gauges.CircularGauge.prototype._applyMainLayout.call(t),t._renderBars()},_measureMainElements:function(){var n={maxRadius:this._area.radius};return this._context.textEnabled&&(n.horizontalMargin=this._context.textWidth,n.verticalMargin=this._context.textHeight),n},_renderBars:function(){var n=this,t=u({},n._themeManager.theme(),n.option()),f,i;n._palette=new it(t.palette,{stepHighlight:50,theme:n._themeManager.themeName()}),f=t.relativeInnerRadius>0&&t.relativeInnerRadius<1?r(t.relativeInnerRadius):.1,i=n._area.radius,n._context.textEnabled&&(n._textIndent=e(o(n._textIndent,i/2)),i-=n._textIndent),n._outerRadius=e(i),n._innerRadius=e(i*f),n._barSpacing=t.barSpacing>0?r(t.barSpacing):0,u(n._context,{backgroundColor:t.backgroundColor,x:n._area.x,y:n._area.y,startAngle:n._area.startCoord,endAngle:n._area.endCoord,baseAngle:n._translator.translate(n._baseValue)}),n._bars=[],n._updateValues(n.option("values"))},_arrangeBars:function(n){var t=this,i=t._outerRadius-t._innerRadius,u,f,e,r;for(t._context.barSize=n>0?c((i-(n-1)*t._barSpacing)/n,1):0,u=n>1?c(o((i-n*t._context.barSize)/(n-1),t._barSpacing),0):0,f=o(k((i+u)/t._context.barSize),n),t._setBarsCount(f),i=t._outerRadius,t._context.textRadius=i+t._textIndent,t._palette.reset(),e=t._context.barSize+u,r=0;r<f;++r,i-=e)t._bars[r].arrange({radius:i,color:t._palette.getNextColor()})},_setBarsCount:function(n){var t=this,i,r;if(t._bars.length>n){for(i=n,r=t._bars.length;i<r;++i)t._bars[i].dispose();t._bars.splice(n,r-n)}else if(t._bars.length<n)for(i=t._bars.length,r=n;i<r;++i)t._bars.push(new y(i,t._context));t._bars.length>0?t._dummyBackground&&(t._dummyBackground.detach(),t._dummyBackground=null):(t._dummyBackground||(t._dummyBackground=t._renderer.createArc().append(t._barsGroup)),t._dummyBackground.applySettings({x:t._context.x,y:t._context.y,outerRadius:t._outerRadius,innerRadius:t._innerRadius,startAngle:t._context.endAngle,endAngle:t._context.startAngle,fill:t._context.backgroundColor}))},_updateBars:function(){for(var t=this,n=0,i=t._bars.length;n<i;++n)t._bars[n].setValue(t._values[n])},_animateBars:function(){var n=this,t=0,i=n._bars.length;if(i>0){for(;t<i;++t)n._bars[t].beginAnimation(n._values[t]);n._barsGroup.animate({_:0},n._animationSettings)}},_updateValues:function(n){var i=this,e=s(n)&&n||f(n)&&[n]||[],r=0,o=e.length,u;for(i._values=[];r<o;++r)u=i._translator.adjust(e[r]),f(u)&&i._values.push(u);i._animationSettings&&i._barsGroup.stopAnimation(),i._bars&&(i._arrangeBars(i._values.length),i._animationSettings&&!i._noAnimation?i._animateBars():i._updateBars()),i._resizing||(i.option("values",i._values),i.hideLoadingIndicator())},values:function(n){return n!==i?(this._updateValues(n),this):this._values.slice(0)},_optionChanged:function(n,t){switch(n){case"values":this._updateValues(t);break;default:this.callBase.apply(this,arguments)}},_optionValuesEqual:function(n,t,i){switch(n){case"values":return rt(t,i);default:return this.callBase.apply(this,arguments)}}}),v=n.viz.gauges.__internals.ThemeManager.inherit({_themeSection:"barGauge",_initializeTheme:function(){var n=this;n._initializeFont(n._theme.label.font),n._initializeFont(n._theme.title.font),n._initializeFont(n._theme.tooltip.font),n._initializeFont(n._theme.loadingIndicator.font)}}),n.viz.gauges.BarGauge.prototype._factory=n.utils.clone(n.viz.gauges.__internals.BaseGauge.prototype._factory),n.viz.gauges.BarGauge.prototype._factory.createThemeManager=function(){return new v},u(y.prototype,{dispose:function(){var n=this;return n._background.detach(),n._bar.detach(),n._context.textEnabled&&(n._line.detach(),n._text.detach()),n._context.tracker.detach(n._tracker),n._context=n._settings=n._background=n._bar=n._line=n._text=n._tracker=null,n},arrange:function(n){var t=this;return t._settings.outerRadius=n.radius,t._settings.innerRadius=n.radius-t._context.barSize,t._background.applySettings(u({},t._settings,{startAngle:t._context.endAngle,endAngle:t._context.startAngle})),t._bar.applySettings(t._settings),t._tracker.applySettings(t._settings),t._color=n.color,t._bar.applySettings({fill:n.color}),t._context.textEnabled&&(t._line.applySettings({points:[t._context.x,t._context.y-t._settings.innerRadius,t._context.x,t._context.y-t._context.textRadius],stroke:t._context.lineColor||n.color}),t._text.applySettings({font:{color:t._context.textColor||n.color}})),t},getTooltipParameters:function(){var n=this,t=l((n._angle+n._context.baseAngle)/2);return{x:e(n._context.x+(n._settings.outerRadius+n._settings.innerRadius)/2*t.cos),y:e(n._context.y-(n._settings.outerRadius+n._settings.innerRadius)/2*t.sin),offset:0,color:n._color,value:n._value}},setAngle:function(n){var t=this,i;return t._angle=n,p(t._settings,t._context.baseAngle,t._angle),t._bar.applySettings(t._settings),t._tracker.applySettings(t._settings),t._context.textEnabled&&(t._line.rotate(d(t._angle),t._context.x,t._context.y),i=l(t._angle),t._text.applySettings({text:tt(t._value,t._context.formatOptions,{index:t._index}),x:t._context.x+(t._context.textRadius+t._context.textWidth*.6)*i.cos,y:t._context.y-(t._context.textRadius+t._context.textHeight*.6)*i.sin+t._context.textVerticalOffset})),t},setValue:function(n){return this._value=n,this.setAngle(this._context.translator.translate(n))},beginAnimation:function(n){var t=this,i;t._value=n,i=t._context.translator.translate(n),h(t._angle,i)?t.animate=g:(t._start=t._angle,t._delta=i-t._angle,t._tracker.applySettings({visibility:"hidden"}),t._context.textEnabled&&(t._line.applySettings({visibility:"hidden"}),t._text.applySettings({visibility:"hidden"})))},animate:function(n){var t=this;t._angle=t._start+t._delta*n,p(t._settings,t._context.baseAngle,t._angle),t._bar.applySettings(t._settings)},endAnimation:function(){var n=this;n._delta!==i?h(n._angle,n._start+n._delta)&&(n._tracker.applySettings({visibility:null}),n._context.textEnabled&&(n._line.applySettings({visibility:null}),n._text.applySettings({visibility:null})),n.setAngle(n._angle)):delete n.animate,delete n._start,delete n._delta}}),n.registerComponent("dxBarGauge",n.viz.gauges.BarGauge)}(DevExpress,jQuery),function(n,t){function y(n){var t=n.data.tracker;t._x=n.pageX,t._y=n.pageY;t._element.off(e).on(e,n.data);t._showTooltip(n,h)}function p(n){var t=n.data.tracker;(t._showTooltipTimeout&&s(n.pageX-t._x)>4||s(n.pageY-t._y)>4)&&(t._x=n.pageX,t._y=n.pageY,t._showTooltip(n,h))}function w(n){var t=n.data.tracker;t._element.off(e),t._hideTooltip(a)}function b(n){n.preventDefault();var t=r;t&&t!==n.data.tracker&&t._hideTooltip(f),t=r=n.data.tracker,t._showTooltip(n,v),t._touch=!0}function k(){var t=r;t&&(t._touch||(t._hideTooltip(f),r=null),t._touch=null)}function d(){var t=r;t&&t._showTooltipTimeout&&(t._hideTooltip(f),r=null)}var o=window.setTimeout,u=window.clearTimeout,g=t.extend,s=Math.abs,h=300,a=300,v=400,f=300,r;n.viz.gauges.__internals.Tracker=n.Class.inherit({ctor:function(n){var t=this;t._container=n.container,t._element=n.renderer.createGroup({"class":"dxg-tracker",stroke:"none",strokeWidth:0,fill:"#000000",opacity:.0001}),t._showTooltipCallback=function(){t._showTooltipTimeout=null;var n=t._tooltipEvent.target;t._targetEvent=null,t._tooltipTarget!==n&&(t._tooltipTarget=n,t._callbacks["tooltip-show"]())},t._hideTooltipCallback=function(){t._hideTooltipTimeout=null,t._targetEvent=null,t._tooltipTarget&&(t._callbacks["tooltip-hide"](),t._tooltipTarget=null)},t._dispose=function(){t._showTooltipCallback=t._hideTooltipCallback=t._dispose=null}},dispose:function(){var n=this;return n._dispose(),n.deactivate(),n._element.off(),n._container=n._element=n._context=n._callbacks=null,n},activate:function(){return this._element.append(this._container),this},deactivate:function(){return this._element.detach(),this._element.clear(),this},attach:function(n,t,i){return n.data({target:t,info:i}),n.append(this._element),this},detach:function(n){return n.detach(),n.removeData(),this},setTooltipState:function(n){var t=this,i;if(t._element.off(c).off(l),n){i={tracker:t};t._element.on(c,i).on(l,i)}return t},setCallbacks:function(n){return this._callbacks=n,this},_showTooltip:function(n,i){var r=this,f=t(n.target).data();(r._tooltipTarget===n.target||r._callbacks["tooltip-prepare"](f.target,f.info))&&(u(r._hideTooltipTimeout),r._hideTooltipTimeout=null,u(r._showTooltipTimeout),r._tooltipEvent=n,r._showTooltipTimeout=o(r._showTooltipCallback,i))},_hideTooltip:function(n){var t=this;u(t._showTooltipTimeout),t._showTooltipTimeout=null,u(t._hideTooltipTimeout),t._hideTooltipTimeout=o(t._hideTooltipCallback,n)}});var c={"mouseover.gauge-tooltip":y,"mouseout.gauge-tooltip":w},e={"mousemove.gauge-tooltip":p},l={"touchstart.gauge-tooltip":b};r=null;t(window.document).on({"touchstart.gauge-tooltip":k,"touchend.gauge-tooltip":d})}(DevExpress,jQuery),function(n){n.registerComponent("dxCircularGauge",n.viz.gauges.CircularGauge)}(DevExpress),function(n){n.registerComponent("dxLinearGauge",n.viz.gauges.LinearGauge)}(DevExpress),DevExpress.MOD_VIZ_GAUGES=!0}if(!DevExpress.MOD_VIZ_RANGESELECTOR){if(!DevExpress.MOD_VIZ_CORE)throw Error("Required module is not referenced: viz-core");(function(n){n.viz.rangeSelector={utils:{}}})(DevExpress),function(n,t){var o=t.viz.rangeSelector,r=o.utils,u=t.utils,e=-1e3,f=function(n,t){var u;if(!n||n.length===0)return-1;for(var r=0,i=n.length-1,u=0;i-r>1;)u=r+i>>1,n[u]>t?i=u:r=u;return n[i]<=t?i:r},s=function(n,t){var i=f(n,t);return n&&i>=0&&i<n.length?n[i]:t},h=function(n,t){var i=f(n,t);return n&&i>=0&&i<n.length?(i+1<n.length&&(u.isDate(t)?n[i+1].getTime()-t.getTime()<t.getTime()-n[i].getTime()&&i++:n[i+1]-t<t-n[i]&&i++),n[i]):t},c=function(n,t){var i=f(n,t);return n&&i>=0&&i<n.length?(n[i]<t&&i+1<n.length&&i++,n[i]):t},l=function(n,t,i){var r,f,e,o,s;return u.isDate(n)?i==="year"||i==="quarter"||i==="month"?{months:t.getFullYear()*12+t.getMonth()-n.getFullYear()*12-n.getMonth()}:{milliseconds:t.valueOf()-n.valueOf()}:t-n},a=function(n){return u.getRootOffset(n).left||0},v=function(n){var t=0;return n.pageX?t=n.pageX:n.originalEvent&&n.originalEvent.pageX&&(t=n.originalEvent.pageX),n.originalEvent&&n.originalEvent.touches&&(n.originalEvent.touches.length>0?t=n.originalEvent.touches[0].pageX:n.originalEvent.changedTouches.length>0&&(t=n.originalEvent.changedTouches[0].pageX)),t},y=function(n,t,i){var r=n.createText(t,e,e,{font:i}).append(),u=r.getBBox();return r.remove(),u};r.findLessOrEqualValue=s,r.findNearValue=h,r.findGreaterOrEqualValue=c,r.getInterval=l,r.getRootOffsetLeft=a,r.getEventPageX=v,r.getTextBBox=y}(jQuery,DevExpress),function(n){DevExpress.viz.rangeSelector.BaseVisualElement=n.Class.inherit({ctor:function(n){this._renderer=n,this._isDrawn=!1},applyOptions:function(n){this._options=n||{},this._applyOptions(this._options)},_applyOptions:function(){},redraw:function(n){var t=this;t._isDrawn?t._update(n||t._group):(t._isDrawn=!(t._draw(n||t._group)===!1),n&&(t._group=n))},isDrawn:function(){return!!this._isDrawn},isInitialized:function(){return!!this._options},_draw:function(){},_update:function(n){n.clear(),this._draw(n)}})}(DevExpress),function(n,t,i){var f=t.viz.rangeSelector,u=t.utils,c=t.data.utils,s=f.utils,l=t.viz.core.ParseUtils,h=t.formatHelper,e=t.viz.core,o=Math.max,r=u.isDefined;f.consts={fontHeightRatio:.55,emptySliderMarkerText:". . ."},f.formatValue=function(n,t){var i={value:n,valueText:h.format(n,t.format,t.precision)};return String(u.isFunction(t.customizeText)?t.customizeText.call(i,i):i.valueText)},f.RangeSelector=e.BaseWidget.inherit(function(){var k=5,t={size:i,margin:{left:0,top:0,right:0,bottom:0},scale:{showCustomBoundaryTicks:!0,showMinorTicks:!0,startValue:i,endValue:i,minorTickCount:i,minorTickInterval:i,majorTickInterval:i,useTicksAutoArrangement:!0,setTicksAtUnitBeginning:!0,minRange:i,maxRange:i,placeholderHeight:i,valueType:i,label:{visible:!0,format:i,precision:i,customizeText:i},marker:{visible:!0,label:{format:i,precision:i,customizeText:i}},logarithmBase:10},selectedRange:i,sliderMarker:{visible:!0,format:i,precision:i,customizeText:i,placeholderSize:i},behavior:{snapToTicks:!0,animationEnabled:!0,moveSelectedRangeByClick:!0,manualRangeSelectionEnabled:!0,allowSlidersSwap:!0,callSelectedRangeChanged:"onMovingComplete"},background:{color:"#C0BAE1",visible:!0,image:{url:i,location:"full"}},dataSource:i,dataSourceField:"arg",redrawOnResize:!0,theme:i,selectedRangeChanged:null},a=function(n,t,r){var e=t===i?f.consts.emptySliderMarkerText:f.formatValue(t,r),u=s.getTextBBox(n,e,r.font);return{width:Math.ceil(u.width)+2*r.padding,height:Math.ceil(u.height*f.consts.fontHeightRatio)+2*r.padding+r.pointerSize}},v=function(n,t,i){var r=f.formatValue(t,i.label),u=s.getTextBBox(n,r,i.label.font);return Math.ceil(u.width/2)},d=function(n,t,i){var r={left:t.left+i.left,top:t.top+i.top,width:n.width-t.left-t.right-i.left-i.right,height:n.height-t.top-t.bottom-i.top-i.bottom};return r.width<=0&&(r.width=1),r},g=function(n){var t,i,r;return u.isNumber(n)?t=i=r=n:n&&(u.isNumber(n.height)&&(r=n.height),u.isNumber(n.width)?t=i=n.width:n.width&&(u.isNumber(n.width.left)&&(t=n.width.left),u.isNumber(n.width.right)&&(i=n.width.right))),{widthLeft:t,widthRight:i,height:r}},nt=function(n,t,i,r){var h,y=0,p=0,c,u=0,f=0,e=0,s,l;return s=g(r.placeholderSize),u=s.widthLeft||0,f=s.widthRight||0,e=s.height||0,r.visible&&(h=a(n,i.startValue,r),c=a(n,i.endValue,r),l=o(h.width,c.width),u||(u=l),f||(f=l),e||(e=o(h.height,c.height))),i.label.visible&&(y=v(n,i.startValue,i),p=v(n,i.endValue,i)),u=o(u,y),f=o(f,p),{left:u,right:f,top:e,bottom:0}},tt=function(n){n&&n.empty()},it=function(n){return n._element()},rt=function(n){return f.rangeSelectorFactory.createRangeContainer(n)},ut=function(n,t){return{x:e.CoreFactory.createTranslator2D(n.arg,t,{direction:"horizontal"}),y:e.CoreFactory.createTranslator2D(n.val,t)}},ft=function(n,t,i){return{left:t.left,top:t.top,right:n.width-t.width-t.left,bottom:n.height-t.height-t.top+i,width:n.width,height:n.height}},et=function(n){var t=n.option("renderer");return t?t:e.CoreFactory.createRenderer({pathModified:n.option("pathModified"),rtl:n.option("rtlEnabled")})},ot=function(n){return f.rangeSelectorFactory.createThemeManager(n)},y=function(t,i){var r=[n.type(t),n.type(i)];return n.inArray(),n.inArray("date",r)!=-1?"datetime":n.inArray("number",r)!=-1?"numeric":""},st=function(n){var i,e=n._dataSource&&n._dataSource.items(),t=n.option("scale"),r=n.option("chart")||{},u=t.valueType;return u||(u=y(t.startValue,t.endValue)),(e||r.series)&&(i=new f.SeriesDataSource({renderer:n.renderer,dataSource:e,valueType:(u||"").toLowerCase(),axisType:t.type,chart:r,dataSourceField:n.option("dataSourceField"),backgroundColor:n._userBackgroundColor,incidentOccured:n._incidentOccured}),p(r.valueAxis,i.themeManager.theme().valueAxis.logarithmBase,n._incidentOccured)),i},ht=function(n,t,i){var s,f,o,h=!1,c;return r(i.startValue)&&r(i.endValue)?(h=i.inverted=i.startValue>i.endValue,f=h?i.endValue:i.startValue,o=h?i.startValue:i.endValue):(r(i.startValue)||r(i.endValue))&&(f=i.startValue,o=i.endValue),s=t?t.getBoundRange():{arg:new e.Range,val:new e.Range({isValueRange:!0})},c=u.isDate(f)&&u.isDate(o)&&f.getTime()===o.getTime(),f===o||c||s.arg.addRange({invert:h,min:f,max:o,minVisible:f,maxVisible:o,dataType:i.valueType}),s.arg.addRange({base:i.logarithmBase,axisType:i.type}),s.arg.isDefined()||(c&&(i.valueType="numeric"),s.arg.setStubData(i.valueType)),s},ct=function(n,t,i){var r,u=t.label.visible;return t.placeholderHeight?t.placeholderHeight:(r=s.getTextBBox(n,"0",t.label.font),(u?t.label.topIndent+r.height:0)+(i?t.marker.topIndent+t.marker.separatorHeight:0))},lt=function(n,t,i,u){var o=t.isEmpty,v=e.CoreFactory.getTickProvider(),s,h,c,l,a=i.x.getBusinessRange();return s={tickInterval:o?0:n.option("scale").minorTickInterval,showCustomBoundaryTicks:t.showCustomBoundaryTicks,minorTickCount:t.minorTickCount},h={textOptions:{align:"center",font:t.label.font},renderer:n.renderer,getText:function(n){return f.formatValue(n,t.label)},translator:i.x,isStartTickGenerated:!r(n.option("scale").majorTickInterval),tickInterval:t.majorTickInterval,textSpacing:k,setTicksAtUnitBeginning:t.setTicksAtUnitBeginning,useTicksAutoArrangement:t.useTicksAutoArrangement,hideLabels:o},c=o?a.min:t.startValue,l=o?a.max:t.endValue,v.getFullTicks(c,l,u,h,s,{axisType:t.type,dataType:t.valueType,base:t.logarithmBase})},at=function(n,t,i){var u=e.CoreFactory.getTickProvider(),r=u.getTickIntervals(n.startValue,n.endValue,t,{tickInterval:n.majorTickInterval,incidentOccured:i},{tickInterval:n.minorTickInterval,incidentOccured:i},{axisType:n.type,dataType:n.valueType,base:n.logarithmBase});n.minorTickInterval=r.minorTickInterval,n.majorTickInterval=r.majorTickInterval},vt=function(n,t,f,e,o){var s=r(f.arg.minVisible)?f.arg.minVisible:f.arg.min,c=r(f.arg.maxVisible)?f.arg.maxVisible:f.arg.max,l;t&&!t.isEmpty()&&(o.startValue=o.inverted?c:s,o.endValue=o.inverted?s:c),l=u.isDate(o.startValue)&&u.isDate(o.endValue)&&o.startValue.getTime()===o.endValue.getTime()||o.startValue===o.endValue,o.isEmpty=!r(o.startValue)||!r(o.endValue)||l||o.valueType==="string",o.isEmpty?o.startValue=o.endValue=i:(at(o,e,n._incidentOccured),o.valueType!=="datetime"||r(o.label.format)||(o.label.format=o.marker.visible?u.getDateUnitInterval(o.majorTickInterval):h.getDateFormatByTickInterval(o.startValue,o.endValue,o.majorTickInterval)))},yt=function(t,i,f){var e=n.extend(!0,{},t.option("sliderMarker")),o;return e.format||(!t.option("behavior").snapToTicks&&u.isNumber(i.startValue)&&(o=Math.abs(i.endValue-i.startValue),e.format="fixedPoint",e.precision=u.getSignificantDigitPosition(o/f)),i.valueType==="datetime"&&(i.marker.visible?e.format=u.getDateUnitInterval(r(i.minorTickInterval)&&i.minorTickInterval!==0?i.minorTickInterval:i.majorTickInterval):r(i.startValue)&&r(i.endValue)&&(e.format=h.getDateFormatByTickInterval(i.startValue,i.endValue,i.minorTickInterval!==0?i.minorTickInterval:i.majorTickInterval)))),e},pt=function(n){return n.valueType=="datetime"&&n.marker.visible},wt=function(n,t){var i=t.minorTickInterval||t.majorTickInterval;n=n.arg.addRange({interval:i})},p=function(t,r,u){t&&(t.type==="logarithmic"&&t.logarithmBase<=0||t.logarithmBase&&!n.isNumeric(t.logarithmBase)?(t.logarithmBase=r,u("E2104")):t.type!=="logarithmic"&&(t.logarithmBase=i))},bt=function(u,f){var e=n.extend(!0,{},u.option("scale")),a=u._incidentOccured,o=0,c=new l({incidentOccured:a}),s=c.correctValueType((e.valueType||"").toLowerCase()),h;return(f&&(s=f.getCalculatedValueType()||s),s||(s=y(e.startValue,e.endValue)||"numeric"),e.valueType=s,e.valueType==="string")?(u._incidentOccured("E2201"),e):(h=c.getParser(s,"scale"),r(e.startValue)&&(o=h(e.startValue),r(o)?e.startValue=o:(e.startValue=i,u._incidentOccured("E2202",["start"]))),r(e.endValue)&&(o=h(e.endValue),r(o)?e.endValue=o:(e.endValue=i,u._incidentOccured("E2202",["end"]))),p(e,t.scale.logarithmBase,u._incidentOccured),e.type||(e.type="continuous"),e.parser=h,e)},kt=function(n,t,i){var r=n.option("size")||{};t.height||r.height===0||(t.height=i.valueType==="datetime"&&i.marker.visible!==!1?160:120),t.width||r.width===0||(t.width=400)},dt=function(n){var u,r,f,e,t,o,s,h,c=n.container;if(n._isUpdating=!0,t=b(n),n._actualSize=t,r=st(n),n._scaleOptions=bt(n,r),kt(n,t,n._scaleOptions),t.width&&t.height&&c.is(":visible"))n.stopRedraw=!1;else{n.stopRedraw=!0,n._incidentOccured("W2001",[n.NAME]);return}gt(n,t),n._updateLoadIndicator(i,n.canvas.width,n.canvas.height),f=ht(n,r,n._scaleOptions),vt(n,r,f,t.width,n._scaleOptions),wt(f,n._scaleOptions),s=yt(n,n._scaleOptions,t.width),h=ti(n,n._scaleOptions),o=nt(n.renderer,t,n._scaleOptions,s),u=d(t,n.option("margin"),o),e=ct(n.renderer,n._scaleOptions,pt(n._scaleOptions)),n.translators=ut(f,ft(t,u,e)),n._scaleOptions.ticksInfo=lt(n,n._scaleOptions,n.translators,u.width),r&&r.adjustSeriesDimensions(n.translators),n.rangeContainer.applyOptions({canvas:u,scaleLabelsAreaHeight:e,sliderMarkerSpacing:o,translators:n.translators,selectedRange:h,scale:n._scaleOptions,behavior:n.option("behavior"),background:n.option("background"),chart:n.option("chart"),seriesDataSource:r,sliderMarker:s,sliderHandle:n.option("sliderHandle"),shutter:n.option("shutter"),selectedRangeChanged:w(n),setSelectedRange:function(t){n.setSelectedRange(t)}}),n._isUpdating=!1},w=function(n){return function(t,i){var r=n.option("selectedRangeChanged");n.option("selectedRange",t),r&&!i&&setTimeout(function(){r.call(null,t)})}},b=function(n){var i=n.container,r=n.option("size")||{},t={width:r.width,height:r.height};return i&&(t.width||(t.width=i.width()),t.height||(t.height=i.height())),n.canvas=t,t},gt=function(n,t){var i=n.renderer;i.isInitialized()?i.getRoot().applySettings({width:t.width,height:t.height}):(i.recreateCanvas(t.width,t.height),i.draw(n.container[0]))},ni=function(n,t){var i,r=n.option("chart")||{};!r.theme&&t&&t.theme&&(i=t.theme,i&&(typeof i=="object"&&(i=i.chart||{},i.name=t.theme.name),r.theme=i))},ti=function(n,t){var f=n.option("selectedRange"),i,u,o=t.parser||function(){return null},e=function(i,u){var f,e=t[u];return r(i)&&(f=o(i)),r(f)?e=f:n._incidentOccured("E2203",[u]),e};return f?(i=e(f.startValue,"startValue"),i=n.rangeContainer.slidersContainer.truncateSelectedRange(i,t),u=e(f.endValue,"endValue"),u=n.rangeContainer.slidersContainer.truncateSelectedRange(u,t),{startValue:i,endValue:u}):{startValue:t.startValue,endValue:t.endValue}},ii=function(n){var t=n._actualSize,i=b(n);return t&&(t.width!==i.width||t.height!==i.height)};return{_setDefaultOptions:function(){this.callBase(),this.option(t)},_dataSourceOptions:function(){return{paginate:!1,_preferSync:!0}},_init:function(){var n=this;n.container=it(n),tt(n.container),n.renderer=et(n),n.rangeContainer=rt(n.renderer),n.callBase(),n._reinitDataSource()},_reinitDataSource:function(){this._refreshDataSource()},_dispose:function(){var n=this,t=function(t){n[t]&&n[t].dispose(),n[t]=null};n.callBase(),t("renderer"),n.translators=null,t("rangeContainer")},_initOptions:function(t){var i=this,r;i._optionsInitializing=!0,t=t||{},i._userOptions=n.extend(!0,{},t),r=ot(t.theme),r.setBackgroundColor(t.containerBackgroundColor),i.option(r.applyRangeSelectorTheme(t)),ni(i,t),t.background&&(i._userBackgroundColor=t.background.color)},_refresh:function(){var n=this,t=n.callBase;n._endLoading(function(){t.call(n)})},_render:function(n){var t=this,r,i;t._optionsInitializing=!1,dt(t),t.stopRedraw||(n?(i=t.option("behavior"),r=i.animationEnabled,i.animationEnabled=!1,t.rangeContainer.redraw(),i.animationEnabled=r):t.rangeContainer.redraw(),!n&&(!t._dataSource||t._dataSource&&t._dataSource.isLoaded())&&t.hideLoadingIndicator()),t._drawn()},_optionChanged:function(n,t,i){var r=this;r._optionsInitializing||c.compileSetter(n)(r._userOptions,t,{functionsAsIs:!0,merge:!0}),n==="dataSource"?(r._reinitDataSource(),r._invalidate()):n==="selectedRange"?r.setSelectedRange(r.option("selectedRange")):n==="selectedRangeChanged"?r.rangeContainer.slidersContainer.selectedRangeChanged=w(r):n==="containerBackgroundColor"||n==="theme"?(r._initOptions(r._userOptions),r._invalidate()):r.callBase(n,t,i)},_resize:function(){ii(this)&&this._render(!0)},_handleDataSourceChanged:function(){var n=this;n._endLoading(function(){n.renderer.isInitialized()&&n._render()})},getSelectedRange:function(){var t=this,n=t.rangeContainer.slidersContainer.getSelectedRange();return{startValue:n.startValue,endValue:n.endValue}},setSelectedRange:function(n){var i=this,t;!i._isUpdating&&n&&((t=i.rangeContainer.slidersContainer.getSelectedRange(),t&&t.startValue===n.startValue&&t.endValue===n.endValue)||i.rangeContainer.slidersContainer.setSelectedRange(n))},resetSelectedRange:function(n){var t=this;t.setSelectedRange({startValue:t._scaleOptions.startValue,endValue:t._scaleOptions.endValue,blockSelectedRangeChanged:n})},render:function(n){return this._render(n),this}}}()).include(t.ui.DataHelperMixin)}(jQuery,DevExpress),function(n,t){var r=t.viz.rangeSelector;r.RangeContainer=r.BaseVisualElement.inherit(function(){var t=function(n){this.callBase(n),this.slidersContainer=u(n),this.rangeView=e(n),this.scale=f(n)},i=function(n){var t=this,i=n.scale.isEmpty,r={left:n.canvas.left,top:n.canvas.top,width:n.canvas.width,height:n.canvas.height>=n.scaleLabelsAreaHeight?n.canvas.height-n.scaleLabelsAreaHeight:0};t._viewCanvas=r,t.slidersContainer.applyOptions({canvas:r,translator:n.translators.x,scale:n.scale,selectedRange:n.selectedRange,sliderMarker:n.sliderMarker,sliderHandle:n.sliderHandle,shutter:n.shutter,behavior:n.behavior,selectedRangeChanged:n.selectedRangeChanged,isEmpty:i}),t.rangeView.applyOptions({canvas:r,translators:n.translators,background:n.background,chart:n.chart,seriesDataSource:n.seriesDataSource,behavior:n.behavior,isEmpty:i}),t.scale.applyOptions({canvas:n.canvas,translator:n.translators.x,scale:n.scale,hideLabels:i,scaleLabelsAreaHeight:n.scaleLabelsAreaHeight,setSelectedRange:n.setSelectedRange})},u=function(n){return r.rangeSelectorFactory.createSlidersContainer(n)},f=function(n){return r.rangeSelectorFactory.createScale(n)},e=function(n){return r.rangeSelectorFactory.createRangeView(n)},n=function(n,t){return{left:n.left-t.left,top:n.top-t.top,width:n.width+t.right+t.left,height:n.height+t.bottom+t.top}},o=function(){var t=this,i,e,o,s,r,u=n(t._options.canvas,t._options.sliderMarkerSpacing),f=t._viewCanvas;t._clipRect=t._renderer.createClipRect(u.left,u.top,u.width,u.height).append(),i=t._renderer.createGroup({"class":"rangeContainer",clipId:t._clipRect.id}).append(),t._viewClipRect=t._renderer.createClipRect(f.left,f.top,f.width,f.height).append(),e=t._renderer.createGroup({"class":"view",clipId:t._viewClipRect.id}),e.append(i),t.rangeView.redraw(e),o=t._renderer.createGroup({"class":"slidersContainer"}),o.append(i),t.slidersContainer.redraw(o),s=t._renderer.createGroup({"class":"scale"}),s.append(i),t.scale.redraw(s),r=t._renderer.createGroup({"class":"trackers"}),r.append(i),t._trackersGroup=r,t.slidersContainer.appendTrackers(r)},s=function(){var t=this,i=n(t._options.canvas,t._options.sliderMarkerSpacing),r=t._viewCanvas;t._clipRect.updateRectangle({x:i.left,y:i.top,width:i.width,height:i.height}),t._viewClipRect.updateRectangle({x:r.left,y:r.top,width:r.width,height:r.height}),t.rangeView.redraw(),t.slidersContainer.redraw(),t.slidersContainer.appendTrackers(t._trackersGroup),t.scale.redraw()},h=function(){this.slidersContainer.dispose(),this.slidersContainer=null};return{ctor:t,dispose:h,_applyOptions:i,_draw:o,_update:s}}())}(jQuery,DevExpress),function(n,t,i){var u=t.viz.rangeSelector,f=t.formatHelper,r=t.utils,e=5;u.Scale=u.BaseVisualElement.inherit({_setupDateUnitInterval:function(t){var u,o=function(t){var i=0;return n.each(t,function(){return++i<2}),i===1},e,i=t.ticksInfo.majorTickInterval,f=t.ticksInfo.majorTicks;if(t.valueType==="datetime"){if(r.isObject(i)&&!o(i)&&r.logger.warn('More than one field is specified within the object assigned to the "tickInterval" option. Assign an object with a single field specified (days, hours or a similar one).'),f&&f.autoArrangementStep>1){r.isString(i)&&(i=r.getDateIntervalByString(i));for(u in i)i.hasOwnProperty(u)&&(i[u]*=f.autoArrangementStep,e=r.convertDateTickIntervalToMilliseconds(i));i=r.convertMillisecondsToDateUnits(e)}this.dateUnitInterval=r.getDateUnitInterval(i)}},_prepareDatesDifferences:function(n,t){var i=t,u,f;if(i==="week"&&(i="day"),i==="quarter"&&(i="month"),n[i])for(f=0;f<r.dateUnitIntervals.length;f++)if(u=r.dateUnitIntervals[f],n[u]&&(n[u]=!1,n.count--),u===i)break},_getMarkerDate:function(n,t){var i=new Date(n.getTime()),r=0;switch(t){case"quarter":r=f.getFirstQuarterMonth(n.getMonth());case"month":i.setMonth(r);case"week":case"day":i.setDate(1);case"hour":i.setHours(0,0,0,0);break;case"millisecond":i.setMilliseconds(0);break;case"second":i.setSeconds(0,0);break;case"minute":i.setMinutes(0,0,0)}return i},_drawDateMarker:function(n,t){var r,u,f,i,e;if(t.x!==null)return i=this._options.scale,this.lineOptions["class"]="dx-range-selector-date-marker",this._renderer.createLine(t.x,t.y,t.x,t.y+i.marker.separatorHeight,this.lineOptions).append(t.group),f=this._getLabel(n,t.label),r=t.x+i.tick.width+i.marker.textLeftIndent,u=t.y+i.marker.textTopIndent+i.label.font.size,this.textOptions.align="left",e=this._renderer.createText(f,r,u,this.textOptions).append(t.group),r+e.getBBox().width},_drawDateMarkers:function(n,t){var c,i,e,o,u,h=-1,s;if(this._options.scale.valueType==="datetime"&&this.visibleMarkers&&(s=[],n.length>1)){for(i=1;i<n.length;i++)e=r.getDatesDifferences(n[i-1],n[i]),this._prepareDatesDifferences(e,this.dateUnitInterval),e.count>0&&(o=this._getMarkerDate(n[i],this.dateUnitInterval),u=this.translator.translate(o),u>h&&(u!==null&&s.push({date:o,posX:u}),h=this._drawDateMarker(o,{group:t,y:this._options.canvas.top+this._options.canvas.height-this.markersAreaHeight+this._options.scale.marker.topIndent,x:u,label:this._getLabelFormatOptions(f.getDateFormatByDifferences(e))})));this._initializeMarkersEvents(s,t)}},_getLabelFormatOptions:function(t){return r.isDefined(this._options.scale.marker.label.format)?this._options.scale.marker.label:n.extend({},this._options.scale.marker.label,{format:t})},_calculateRangeByMarkerPosition:function(n,t,i){for(var r={},u,f=0;f<t.length;f++)u=t[f],i.inverted?n<u.posX?r.endValue=u.date:r.startValue||(r.startValue=u.date):n>=u.posX?r.startValue=u.date:r.endValue||(r.endValue=u.date);return r.startValue=r.startValue||i.startValue,r.endValue=r.endValue||i.endValue,r},_initializeMarkersEvents:function(n,t){var i=this,s=this._options.canvas.top+this._options.canvas.height-this.markersAreaHeight+this._options.scale.marker.topIndent,r,f,h,e,o;if(n.length>0){r=i._renderer.createRect(i._options.canvas.left,s,i._options.canvas.width,i._options.scale.marker.separatorHeight,0,{fill:"grey",stroke:"grey",opacity:.0001}),r.append(t);r.on(u.events.start,function(t){f=u.utils.getRootOffsetLeft(i._renderer),e=u.utils.getEventPageX(t)-f,o=i._calculateRangeByMarkerPosition(e,n,i._options.scale),i._options.setSelectedRange(o)});i._markersTracker=r}},_getLabel:function(n,t){var i={value:n,valueText:f.format(n,t.format,t.precision)};return String(r.isFunction(t.customizeText)?t.customizeText.call(i,i):i.valueText)},_drawLabel:function(n,t){var i=this._options.canvas.top+this._options.canvas.height-this.markersAreaHeight,r=this._renderer.createText(this._getLabel(n,this._options.scale.label),this.translator.translate(n),i,this.textOptions);r.append(t)},_drawTick:function(n,t){this.lineOptions["class"]="dx-range-selector-tick";var r=this._options.canvas.top+this._options.canvas.height-this.scaleLabelsAreaHeight,i=this.translator.translate(n),u=this._renderer.createLine(i,this._options.canvas.top,i,r,this.lineOptions).append(t)},_redraw:function(n){for(var r=this,u=r._options.scale,e=r._renderer.createGroup(),o=r._renderer.createGroup().append(n),f=u.ticksInfo.majorTicks,s=u.ticksInfo.minorTicks,h=u.ticksInfo.customBoundaryTicks,c=r._options.hideLabels||f.hideLabels||!u.label.visible,i=0;i<f.length;i++)c||r._drawLabel(f[i],o),r._drawTick(f[i],e);if(u.showMinorTicks)for(i=0;i<s.length;i++)r._drawTick(s[i],e);for(i=0;i<h.length;i++)r._drawTick(h[i],e);e.append(n),r._drawDateMarkers(f,o)},_applyOptions:function(n){var t=n.scale,r;this.textOptions={align:"center","class":"dx-range-selector-scale",font:t.label.font,style:{"-webkit-user-select":"none"}},this.lineOptions={strokeWidth:t.tick.width,stroke:t.tick.color,strokeOpacity:t.tick.opacity},this._setupDateUnitInterval(t),this.visibleMarkers=t.marker.visible===i?!0:t.marker.visible,r=t.label.visible?t.label.topIndent+t.label.font.size:0,this.scaleLabelsAreaHeight=n.scaleLabelsAreaHeight,this.markersAreaHeight=this.scaleLabelsAreaHeight-r,this.translator=n.translator},_draw:function(n){this._redraw(n,!1)},_update:function(n){var t=this.callBase;this._markersTracker&&this._markersTracker.off(u.events.start,"**"),this.callBase=t,this.callBase(n)}})}(jQuery,DevExpress),function(n,t){var r=t.viz.rangeSelector,u=t.viz.renderers;r.rangeSelectorFactory=function(){return{createRangeContainer:function(n){return new r.RangeContainer(n)},createSlidersContainer:function(n){return new r.SlidersContainer(n)},createScale:function(n){return new r.Scale(n)},createSliderMarker:function(n){return new r.SliderMarker(n)},createRangeView:function(n){return new r.RangeView(n)},createThemeManager:function(n){return new r.ThemeManager(n)},createSlider:function(n,t){return new r.Slider(n,t)},createSlidersEventsManager:function(n,t,i){return new r.SlidersEventsManager(n,t,i)},createSlidersController:function(n){return new r.SlidersController(n)}}}()}(jQuery,DevExpress),function(n,t){var r=t.viz.rangeSelector,h=t.utils,e=window.navigator.msPointerEnabled||window.navigator.pointerEnabled,u=t.utils.isNumber,f=t.utils.isDate,o=0,s=1;r.SlidersContainer=r.BaseVisualElement.inherit(function(){return{_drawAreaTracker:function(n){var t=this,i,r;i=t._renderer.createRect(t._options.canvas.left,t._options.canvas.top,t._options.canvas.width,t._options.canvas.height,0,{fill:"grey",stroke:"grey",opacity:.0001}),i.append(n),r=t._renderer.createRect(t._options.canvas.left,t._options.canvas.top,t._options.canvas.width,t._options.canvas.height,0,{fill:"grey",stroke:"grey",opacity:.0001,style:{cursor:"pointer"}}),r.append(n),t._controller.setAreaTrackers(i,r)},dispose:function(){this._eventsManager.dispose(),this._eventManager=null},_processSelectionChanged:function(n,t){var i=this,u=function(n){return n&&i._lastSelectedRange.startValue===n.startValue&&i._lastSelectedRange.endValue===n.endValue},r=i.getSelectedRange();n&&(i._options.behavior.callSelectedRangeChanged||"").toLowerCase()!=="onmoving"||!i._options.selectedRangeChanged||u(r)||(i._updateLastSelectedRange(r),typeof i._options.selectedRangeChanged=="function"&&i._options.selectedRangeChanged.call(null,r,t),n||u(r)||i.setSelectedRange(r))},_updateLastSelectedRange:function(n){n=n||this._options.selectedRange,this._lastSelectedRange={startValue:n.startValue,endValue:n.endValue}},_createSlider:function(n){return r.rangeSelectorFactory.createSlider(this._renderer,n)},_createSlidersController:function(n){return r.rangeSelectorFactory.createSlidersController(n)},_createSlidersEventsManager:function(n){var t=this;return r.rangeSelectorFactory.createSlidersEventsManager(t._renderer,n,function(n){t._processSelectionChanged(n)})},ctor:function(n){var t=this,i;t.callBase(n),i=[t._createSlider(o),t._createSlider(s)],t._controller=t._createSlidersController(i),t._eventsManager=t._createSlidersEventsManager(t._controller),t._lastSelectedRange={}},getSelectedRange:function(){return this._controller.getSelectedRange()},truncateSelectedRange:function(n,t){var i=t.startValue>t.endValue?t.endValue:t.startValue,r=t.startValue>t.endValue?t.startValue:t.endValue;return n<i&&(n=i),n>r&&(n=r),n},setSelectedRange:function(n){var t=this,r=t._options.scale,e,o,i=t._options.selectedRange;n&&(e=n.startValue,o=n.endValue),(u(r.startValue)&&u(e)||f(r.startValue)&&f(e))&&(i.startValue=e),(u(r.endValue)&&u(o)||f(r.endValue)&&f(o))&&(i.endValue=o),i.startValue=t.truncateSelectedRange(i.startValue,r),i.endValue=t.truncateSelectedRange(i.endValue,r),t._controller.applySelectedRange(i),t._controller.applyPosition(),t._processSelectionChanged(!1,n&&n.blockSelectedRangeChanged)},appendTrackers:function(n){this._controller.appendTrackers(n)},_applyOptions:function(n){var t=this;t._controller.applyOptions({translator:n.translator,canvas:n.canvas,sliderMarker:n.sliderMarker,sliderHandle:n.sliderHandle,shutter:n.shutter,scale:n.scale,behavior:n.behavior}),t._eventsManager.applyOptions({behavior:n.behavior})},_draw:function(n){var t=this,i;e&&(i=t._renderer.getRoot(),i&&(i.element.style.msTouchAction="pinch-zoom")),t._controller.redraw(n),t._drawAreaTracker(n),t._eventsManager.initialize(),t._update()},_update:function(){var n=this,t=n._options.isEmpty;n._eventsManager.setEnabled(!t),n._controller.applySelectedRange(t?{}:n._options.selectedRange),n._controller.applyPosition(n.isDrawn()),n._updateLastSelectedRange(),n._controller.redraw()}}}())}(jQuery,DevExpress),function(n,t,i){var f=t.viz.rangeSelector,e=t.utils,r=0,u=1;f.SlidersController=t.Class.inherit(function(){return{ctor:function(n){this._sliders=n,n[r].setAnotherSlider(n[u]),n[u].setAnotherSlider(n[r])},setAreaTrackers:function(n,t){this._areaTracker=n,this._selectedAreaTracker=t},applyOptions:function(n){var i=this,t=null;i._options=n,i.getSlider(r).applyOptions(n),i.getSlider(u).applyOptions(n),n.behavior.snapToTicks&&(t=n.scale.ticksInfo.fullTicks,t.length>1&&t[0]>t[t.length-1]&&(t=t.reverse())),i.getSlider(r).setAvailableValues(t),i.getSlider(u).setAvailableValues(t)},processDocking:function(n){var t=this;n!==i?t.getSlider(n).processDocking():(t.getSlider(r).processDocking(),t.getSlider(u).processDocking()),t.setTrackersCursorStyle("default"),t.applyAreaTrackersPosition()},getSelectedRangeInterval:function(){var n=this,s=n._options.scale.type,t=n._options.scale.logarithmBase,i=n.getSlider(r).getValue(),o=n.getSlider(u).getValue();return s==="logarithmic"?f.utils.getInterval(e.getLog(i,t),e.getLog(o,t)):f.utils.getInterval(i,o)},moveSliders:function(n,t){var i=this;i.getSlider(r).setPosition(i.getSlider(r).getPosition()+n,!1,t),i.applyPosition(!0)},moveSlider:function(n,t,i,u,f,e){var o=this,s=o.getSlider(n),h=s.getAnotherSlider(),l=h.getIndex(),c;s.canSwap()&&(n===r?i>h.getPosition():i<h.getPosition())&&(c=t,t||Math.abs(u)>=Math.abs(f)&&u*f<0&&(c=!0,i+=2*f,e(-f)),c&&(o.swapSliders(),h.applyPosition(!0))),s.setPosition(i,!0),s.applyPosition(!0),o.applyAreaTrackersPosition(),o.setTrackersCursorStyle("w-resize")},applySelectedAreaCenterPosition:function(n){var t=this,i=(t.getSlider(u).getPosition()-t.getSlider(r).getPosition())/2,f=t.getSelectedRangeInterval();t.getSlider(r).setPosition(n-i,!1,f),t.applyPosition(),t.processDocking()},processManualSelection:function(n,t,i){var e=this,o,f,s=[Math.min(n,t),Math.max(n,t)];o=n<t?r:u,f=n<t?u:r,e.getSlider(f).setPosition(s[f]),e.getSlider(o).setPosition(s[o]),e.getSlider(f).setPosition(s[f],!0),e.getSlider(f).startEventHandler(i),e.getSlider(o).processDocking(),e.getSlider(f).applyPosition(!0)},applySelectedRange:function(n){var t=this,i=t._options.scale.inverted;!i&&n.startValue>n.endValue||i&&n.startValue<n.endValue?(t.getSlider(r).setValue(n.endValue),t.getSlider(u).setValue(n.startValue)):(t.getSlider(r).setValue(n.startValue),t.getSlider(u).setValue(n.endValue))},getSelectedRange:function(){var n=this;return{startValue:n.getSlider(r).getValue(),endValue:n.getSlider(u).getValue()}},swapSliders:function(){var n=this;n._sliders.reverse(),n.getSlider(r).changeLocation(),n.getSlider(u).changeLocation()},applyAreaTrackersPosition:function(){var n=this,t=n.getSelectedRange(),i=n._options.scale,f=n.getSlider(u).getPosition()-n.getSlider(r).getPosition(),e={x:n.getSlider(r).getPosition(),width:f<0?0:f,y:n._options.canvas.top,height:n._options.canvas.height,style:{cursor:i.endValue-i.startValue==t.endValue-t.startValue?"default":"pointer"}};n._selectedAreaTracker.applySettings(e),n._areaTracker.applySettings({x:n._options.canvas.left,width:n._options.canvas.width,y:n._options.canvas.top,height:n._options.canvas.height})},applyPosition:function(n){var t=this;t.getSlider(r).applyPosition(n),t.getSlider(u).applyPosition(n),t.applyAreaTrackersPosition()},redraw:function(n){var t=this;t.getSlider(r).redraw(n),t.getSlider(u).redraw(n)},appendTrackers:function(n){var t=this;t._areaTracker&&t._selectedAreaTracker&&(t._areaTracker.append(n),t._selectedAreaTracker.append(n)),t.getSlider(r).appendTrackers(n),t.getSlider(u).appendTrackers(n)},getSlider:function(n){return this._sliders[n]},getAreaTracker:function(){return this._areaTracker},getSelectedAreaTracker:function(){return this._selectedAreaTracker},setTrackersCursorStyle:function(n){var t=this;t._selectedAreaTracker.applySettings({style:{cursor:n}}),t._areaTracker.applySettings({style:{cursor:n}})}}}())}(jQuery,DevExpress),function(n,t,i){var e=t.viz.rangeSelector,p=t.utils,l=10,s=0,a=1,h=t.ui.events.addNamespace,v=function(){var n=window,t="ontouchstart"in n,i=n.navigator.msPointerEnabled,r=n.navigator.pointerEnabled;e.events={start:r?"pointerdown":i?"MSPointerDown":t?"touchstart mousedown":"mousedown",move:r?"pointermove":i?"MSPointerMove":t?"touchmove mousemove":"mousemove",end:r?"pointerup pointercancel":i?"MSPointerUp MSPointerCancel":t?"touchend mouseup":"mouseup"}},c,r=e.utils.getEventPageX,y=0;v();var u=function(n){var r=n||window.event,t=r.originalEvent,f=r.touches,u=t?t.pointerType:!1,e=t?t.touches:!1,o=r.which===i&&r.button===1,s=t&&u!==i&&(u===(t.MSPOINTER_TYPE_TOUCH||"touch")||u===(t.MSPOINTER_TYPE_MOUSE||"mouse")&&t.buttons===1),h=o||r.which===1,c=f&&f.length>0||e&&e.length>0;return h||s||c},o=function(n){var t=n.originalEvent,i=n.touches,r=t?t.touches:!1;return i&&i.length>1||r&&r.length>1||null},f=function(n){return n&&n.type&&n.type.indexOf("touch")===0};c=e.SlidersEventsManager=function(n,t,i){var r=this,u=r._uniqueNS="dx-range-selector_"+y++,f=e.events;r._renderer=n,r._slidersController=t,r._processSelectionChanged=i,r._enabled=!0,r._eventsNames={start:h(f.start,u),move:h(f.move,u),end:h(f.end,u)}},c.prototype={constructor:c,_getRootOffsetLeft:function(){return e.utils.getRootOffsetLeft(this._renderer)},_initializeSliderEvents:function(t){var e=this,b=e._renderer,v,h=e._slidersController,l=e._processSelectionChanged,i=h.getSlider(t),k=i.getAnotherSlider(),y,c,s,p=function(){s&&(s=!1,h.processDocking(),l(!1))},w=function(n){var k,t,a,p=e._getRootOffsetLeft(),w,b=i.getIndex();v===f(n)&&(!u(n,!0)&&s?(s=!1,h.processDocking(),l(!1)):s&&(o(n)||n.preventDefault(),t=r(n),w=t-c-p,a=t-i.getPosition()-p,h.moveSlider(b,y,w,a,c,function(n){c=n}),l(!0)))},a=e._eventsNames;i.startEventHandler=function(n){e._enabled&&u(n)&&!s&&(y=this===i.getSliderTracker().element,s=!0,v=f(n),c=r(n)-i.getPosition()-e._getRootOffsetLeft(),o(n)||(n.stopPropagation(),n.preventDefault()))};i.on(a.start,i.startEventHandler);n(document).on(a.end,p).on(a.move,w)},_initializeAreaEvents:function(){var t=this,p=t._renderer,c,o=t._slidersController,s=t._processSelectionChanged,a=o.getAreaTracker(),i=!1,w=!1,e,v=function(n){var u;i&&(u=r(n),t._options.behavior.moveSelectedRangeByClick&&Math.abs(e-u)<l&&o.applySelectedAreaCenterPosition(u-t._getRootOffsetLeft()),i=!1,s(!1))},y=function(n){var h,a,v,y=t._getRootOffsetLeft();c===f(n)&&(i&&!u(n)&&(i=!1,s(!1)),i&&(h=r(n),t._options.behavior.manualRangeSelectionEnabled&&Math.abs(e-h)>=l&&(a=e-y,v=h-y,o.processManualSelection(a,v,n),i=!1,s(!0))))},h=t._eventsNames;a.on(h.start,function(n){t._enabled&&u(n)&&!i&&(i=!0,c=f(n),e=r(n))});n(document).on(h.end,v).on(h.move,y)},_initializeSelectedAreaEvents:function(){var e=this,b=e._renderer,l,t=e._slidersController,h=e._processSelectionChanged,y=t.getSelectedAreaTracker(),i=!1,a,v,p=function(){i&&(i=!1,t.processDocking(),h(!1))},w=function(n){var e,c;l===f(n)&&(i&&!u(n)&&(i=!1,t.processDocking(),h(!1)),i&&(o(n)||n.preventDefault(),c=r(n),e=c-t.getSlider(s).getPosition()-a,t.moveSliders(e,v),h(!0)))},c=e._eventsNames;y.on(c.start,function(n){e._enabled&&u(n)&&!i&&(i=!0,l=f(n),a=r(n)-t.getSlider(s).getPosition(),v=t.getSelectedRangeInterval(),o(n)||(n.stopPropagation(),n.preventDefault()))});n(document).on(c.end,p).on(c.move,w)},applyOptions:function(n){this._options=n},dispose:function(){n(document).off("."+this._uniqueNS)},initialize:function(){var n=this;n._renderer.isInitialized()&&(n._initializeSelectedAreaEvents(n),n._initializeAreaEvents(),n._initializeSliderEvents(s),n._initializeSliderEvents(a))},setEnabled:function(n){this._enabled=n}}}(jQuery,DevExpress),function(n,t,i){var f=t.viz.rangeSelector,r=t.utils,h="ontouchstart"in window,c=window.navigator.msPointerEnabled||window.navigator.pointerEnabled,o={duration:250},s=8,l=20,u=0,e=1;f.Slider=f.BaseVisualElement.inherit(function(){return{_createSlider:function(){var n=this,i,t,r=n._options.sliderHandle;return t=n._renderer.createGroup({"class":"slider"}),t.applySettings({translateX:n._options.canvas.left,translateY:n._options.canvas.top}),i=n._renderer.createLine(0,0,0,n._options.canvas.height,{"class":"dx-range-selector-slider",strokeWidth:r.width,stroke:r.color,strokeOpacity:r.opacity}),i.append(t),t.setValid=function(t){i.applySettings({stroke:t?n._options.sliderHandle.color:n._options.sliderMarker.invalidRangeColor})},t.updateHeight=function(){i.applySettings({points:[0,0,0,n._options.canvas.height]})},t.applyOptions=function(n){i.applySettings(n)},t},_createSliderTracker:function(){var n=this,r=n._options.sliderHandle.width,f=s<r?r:s,u=h||c?l:f,i,t;return i=n._renderer.createRect(-u/2,0,u,n._options.canvas.height,0,{fill:"grey",stroke:"grey",opacity:.0001,style:{cursor:"w-resize"}}),t=n._renderer.createGroup({"class":"sliderTracker"}),t.applySettings({translateX:0,translateY:n._options.canvas.top}),i.append(t),t.updateHeight=function(){i.applySettings({height:n._options.canvas.height})},t},_drawSliderTracker:function(n){var i=this,t=i._createSliderTracker();t&&(t.append(n),i._sliderTracker=t)},_createSliderMarker:function(n){return f.rangeSelectorFactory.createSliderMarker(n)},_setPosition:function(n,t){var i=this,r=i._correctPosition(n),u=i._options.translator.untranslate(r);i.setValue(u,t,!1),i._position=r},_setPositionForBothSliders:function(n,t){var u=this,s,f,e,h,a=u._options.scale.type,l=u._options.scale.logarithmBase,c=u._options.scale.inverted,o=function(n,i){var u;return a==="logarithmic"?(u=r.addInterval(r.adjustValue(r.getLog(n,l)),t,i),r.raiseTo(u,l)):r.addInterval(n,t,i)};s=u.getAnotherSlider(),n=u._correctBounds(n),f=u._options.translator.untranslate(n),e=o(f),!c&&e>u._options.scale.endValue||c&&e<u._options.scale.endValue?(e=u._options.scale.endValue,h=u._options.canvas.left+u._options.canvas.width,f=o(e,!0),n=u._options.translator.translate(f)):h=u._options.translator.translate(e),u._values&&((c?f>u._values[u._values.length-1]:f<u._values[0])?(f=u._correctBusinessValueByAvailableValues(f,!1),e=o(f)):(e=u._correctBusinessValueByAvailableValues(e,!1),f=o(e,!0))),s.setValue(e,i,!1),u.setValue(f,i,!1),u._position=n,s._position=h},_correctPosition:function(n){var i=this,t=i._correctInversion(n);return t=i._correctBounds(t)},_correctInversion:function(n){var i=this,r=n,t=i.getAnotherSlider().getPosition(),f=i.getIndex()===u?n>t:n<t;return f&&(r=t),r},_correctBounds:function(n){var r=this,i=n,t=r._options.canvas;return n<t.left&&(i=t.left),n>t.left+t.width&&(i=t.left+t.width),i},_correctBusinessValue:function(n,t,i){var u=this,r=u._correctBusinessValueByAvailableValues(n,i);return t&&(r=u._correctBusinessValueByMinMaxRangeFromAnotherSlider(r)),r=u._correctBusinessValueByMinRangeFromStartEndValues(r)},_correctBusinessValueByAvailableValues:function(n,t){var i=this._values;return!t&&i?f.utils.findNearValue(i,n):n},_correctBusinessValueByMinMaxRangeFromAnotherSlider:function(n){var r=this,h=n,t=r._options.scale,c=r._values,v=r.getIndex(),l=r.getAnotherSlider().getValue(),a=!0,o,s;return!t.inverted&&v===u||t.inverted&&v===e?(t.maxRange&&(o=r._addInterval(l,t.maxRange,!0)),t.minRange&&(s=r._addInterval(l,t.minRange,!0))):(t.maxRange&&(s=r._addInterval(l,t.maxRange)),t.minRange&&(o=r._addInterval(l,t.minRange))),s!==i&&h>s?(h=c?f.utils.findLessOrEqualValue(c,s):s,a=!1):o!==i&&h<o&&(h=c?f.utils.findGreaterOrEqualValue(c,o):o,a=!1),r._setValid(a),h},_addInterval:function(n,t,i){var u,o=this._options.scale.type,f=o==="logarithmic"&&this._options.scale.logarithmBase,e;return f?(e=r.addInterval(r.getLog(n,f),t,i),u=Math.pow(f,e)):u=r.addInterval(n,t,i),u},_correctBusinessValueByMinRangeFromStartEndValues:function(n){var r=this,s=r._values,f,o,h=!0,t=r._options.scale,i=n;return t.minRange&&(r.getIndex()===e?(f=r._addInterval(t.startValue,t.minRange,t.inverted),(!t.inverted&&i<f||t.inverted&&i>f)&&(i=f)):r.getIndex()===u&&(o=r._addInterval(t.endValue,t.minRange,!t.inverted),(!t.inverted&&i>o||t.inverted&&i<o)&&(i=o))),i},_applySliderPosition:function(n,t){var i=this,f=i._options.behavior.animationEnabled&&!t,r=i._options.canvas.top,u=i._slider;f||u.inAnimation?(u.inAnimation=!0,u.animate({translate:{x:n,y:r}},f?o:{duration:0},function(){u.inAnimation=!1}),i._sliderTracker.animate({translate:{x:n,y:r}},f?o:{duration:0})):(i._slider.applySettings({translateX:n,translateY:r}),i._sliderTracker.applySettings({translateX:n,translateY:r})),i._sliderTracker.updateHeight(),i._slider.updateHeight()},_applyShutterPosition:function(n,t){var i=this,r,f=i._shutter,s=i._options.behavior.animationEnabled&&!t,h=i.getIndex();h==u?r={x:i._options.canvas.left,y:i._options.canvas.top,width:n-i._options.canvas.left,height:i._options.canvas.height}:h==e&&(r={x:n+1,y:i._options.canvas.top,width:i._options.canvas.left+i._options.canvas.width-n,height:i._options.canvas.height}),r&&(s||f.inAnimation?(f.inAnimation=!0,f.animate(r,s?o:{duration:0},function(){f.inAnimation=!1})):f.applySettings(r))},_setValid:function(n){var t=this;t._marker&&t._marker.setValid(n),t._slider.setValid(n)},_setText:function(n){var t=this;t._marker&&t._marker.setText(n)},ctor:function(n,t){var i=this;i.callBase(n),i._index=t},getIndex:function(){return this._index},setAvailableValues:function(n){this._values=n},setAnotherSlider:function(n){this._anotherSlider=n},getAnotherSlider:function(){return this._anotherSlider},appendTrackers:function(n){var t=this;t._sliderTracker&&t._sliderTracker.append(n)},getSliderTracker:function(){return this._sliderTracker},changeLocation:function(){var n=this;n._marker&&n._marker.changeLocation(),n._index=this._index===u?e:u,n._lastPosition=null},setPosition:function(n,t,r){var f=this,e;r!==i?(e=f.getIndex()===u?f:f.getAnotherSlider(),e._setPositionForBothSliders(n,r)):f._setPosition(n,t)},getPosition:function(){return this._position},_applyOptions:function(){this._lastPosition=null},setValue:function(n,t,e){var o=this;n===i?(o._value=i,o._valuePosition=o._position=o.getIndex()===u?o._options.canvas.left:o._options.canvas.left+o._options.canvas.width,o._setText(f.consts.emptySliderMarkerText)):(o._value=o._correctBusinessValue(n,t,r.isDefined(e)?!!e:!0),o._valuePosition=o._position=o._options.translator.translate(o._value),o._setText(f.formatValue(o._value,o._options.sliderMarker)))},getValue:function(){return this._value},canSwap:function(){var i=this,n=i._options.scale,f,e,t;if(i._options.behavior.allowSlidersSwap){if(n.minRange)if(t=i.getAnotherSlider().getValue(),i.getIndex()===u){if(e=r.addInterval(n.endValue,n.minRange,!n.inverted),!n.inverted&&t>e||n.inverted&&t<e)return!1}else if(f=r.addInterval(n.startValue,n.minRange,n.inverted),!n.inverted&&t<f||n.inverted&&t>f)return!1;return!0}return!1},processDocking:function(){var n=this;n._position=n._valuePosition,n.applyPosition(!1),n._setValid(!0)},applyPosition:function(n){var t=this,i=t.getPosition();t._lastPosition!==i&&(t._applySliderPosition(i,n),t._applyShutterPosition(i,n),t._lastPosition=i)},on:function(n,t){var i=this;i._sliderTracker.on(n,t);if(i._marker)i._marker.getTracker().on(n,t)},_update:function(){var n=this;n._marker&&n._marker.applyOptions(n._options.sliderMarker),n._shutter&&n._shutter.applySettings({fill:n._options.shutter.color,fillOpacity:n._options.shutter.opacity}),n._slider&&n._slider.applyOptions({strokeWidth:n._options.sliderHandle.width,stroke:n._options.sliderHandle.color,strokeOpacity:n._options.sliderHandle.opacity})},_draw:function(n){var t=this,i,o,f,r,h,c,s=t.getIndex();f=t._renderer.createGroup({"class":"sliderArea"}),f.append(n),s===u?r=t._renderer.createRect(t._options.canvas.left,t._options.canvas.top,0,t._options.canvas.height,0):s===e&&(r=t._renderer.createRect(t._options.canvas.left,t._options.canvas.top,t._options.canvas.width,t._options.canvas.height,0)),r&&(r.append(f),i=t._createSlider(),i&&i.append(f),t._options.sliderMarker.visible&&(o=t._createSliderMarker({renderer:t._renderer,isLeftPointer:s===e,sliderMarkerOptions:t._options.sliderMarker}),o.draw(i)),t._shutter=r,t._slider=i,t._marker=o),t._drawSliderTracker(n)}}}())}(jQuery,DevExpress),function(n,t){var f=t.viz.rangeSelector,r;r=f.SliderMarker=function(n){var t=this;t._renderer=n.renderer,t._text=n.text,t._isLeftPointer=n.isLeftPointer,t._options=n.sliderMarkerOptions,t._isValid=!0,e(t,{width:10,height:10})};var s=function(n){this._options=n,this.update()},u=function(n,t){return{width:Math.round(2*n._options.padding+t.width),height:Math.round(2*n._options.padding+t.height*f.consts.fontHeightRatio)}},e=function(n,t){var i=u(n,t);n._points=[],n._isLeftPointer?(n._points.push({x:0,y:0}),n._points.push({x:i.width,y:0}),n._points.push({x:i.width,y:i.height}),n._points.push({x:n._options.pointerSize,y:i.height}),n._points.push({x:0,y:i.height+n._options.pointerSize})):(n._points.push({x:0,y:0}),n._points.push({x:i.width,y:0}),n._points.push({x:i.width,y:i.height+n._options.pointerSize}),n._points.push({x:i.width-n._options.pointerSize,y:i.height}),n._points.push({x:0,y:i.height}))},h=function(n,t){var i=u(n,t);return n._isLeftPointer?{x:0,y:i.height+n._options.pointerSize}:{x:i.width-1,y:i.height+n._options.pointerSize}},c=function(n){var t=this,i=t._options.padding;t._sliderMarkerGroup=t._renderer.createGroup({"class":"sliderMarker"}),t._sliderMarkerGroup.append(n),t._area=t._renderer.createArea(t.points,{fill:t._options.color}),t._area.append(t._sliderMarkerGroup),t._label=t._renderer.createText(t._text,i,i,{font:t._options.font,align:"left",style:{"-webkit-user-select":"none"}}),t._label.append(t._sliderMarkerGroup),t._tracker=t._renderer.createRect(0,0,2*i,2*i+t._options.pointerSize,0,{fill:"grey",stroke:"grey",opacity:.0001,style:{cursor:"pointer"}}),t._tracker.append(t._sliderMarkerGroup),t._drawn=!0,t.update()},l=function(n){var t=n._label.getBBox();return!n._textHeight&&isFinite(t.height)&&(n._textHeight=t.height),{width:t.width,height:n._textHeight}},o=function(n){var t=this,i,r,f;(t._interval&&clearInterval(t._interval),delete t._interval,t._drawn)&&(t._label.updateText(t._text),i=l(t),n?delete t._textSize:(t._textSize=t._textSize||i,t._textSize=i.width>t._textSize.width||i.height>t._textSize.height?i:t._textSize,i=t._textSize,t._interval=setInterval(function(){o.call(t,[!0])},75)),r=u(t,i),f=h(t,i),t._sliderMarkerGroup.applySettings({translateX:-f.x,translateY:-f.y}),e(t,i),t._area.applySettings({points:t._points,fill:t._isValid?t._options.color:t._options.invalidRangeColor}),t._tracker.applySettings({width:r.width,height:r.height+t._options.pointerSize}),t._label.applySettings({x:t._options.padding,y:r.height-t._options.padding}))},a=function(){var n=this;return n._text},v=function(n){var t=this;t._text!==n&&(t._text=n,t.update())},y=function(n){var t=this;t._isValid=n,t.update()},p=function(){var n=this;n._isLeftPointer=!n._isLeftPointer,n.update()},w=function(){var n=this;return n._tracker};r.prototype={constructor:r,draw:c,update:o,getText:a,setText:v,changeLocation:p,applyOptions:s,getTracker:w,setValid:y}}(jQuery,DevExpress),function(n,t){var r=t.viz.rangeSelector;r.RangeView=r.BaseVisualElement.inherit(function(){return{_draw:function(n){var u=this,h,c,f,e,r,o,i,t=u._options,s,l=t.isEmpty;if(o=t.seriesDataSource&&t.seriesDataSource.isShowChart()&&!l,i=t.canvas,o?f=t.seriesDataSource.getBackgroundColor():!l&&t.background.visible&&(f=t.background.color),t.background.visible&&f&&(h=u._renderer.createRect(i.left,i.top,i.width+1,i.height,0,{fill:f,"class":"dx-range-selector-background"}),h.append(n)),t.background.visible&&t.background.image&&t.background.image.url&&(c=u._renderer.createImage(i.left,i.top,i.width+1,i.height,t.background.image.url,{location:t.background.image.location}),c.append(n)),o)for(e=t.seriesDataSource.getSeries(),t.seriesDataSource.adjustSeriesDimensions(t.translators,t.chart.useAggregation),r=0;r<e.length;r++)s=e[r].getOptions(),s.seriesGroup=n,s.labelsGroup=n,e[r].draw(t.translators,t.behavior&&t.behavior.animationEnabled&&u._renderer.animationEnabled())}}}())}(jQuery,DevExpress),function(n,t,i){var o=t.viz.rangeSelector,f=t.viz.charts,u=t.viz.core,e=u.CoreFactory,r=t.utils;o.SeriesDataSource=t.Class.inherit(function(){var t=function(n){return f.factory.createThemeManager(n,"rangeSelector.chart")},o=function(t){return n.isArray(t)&&t.length>0&&(r.isNumber(t[0])||r.isDate(t[0]))},s=function(t){return n.map(t,function(n,t){return{arg:n,val:t}})},h=function(t,r,u){var a=[],v,y,l,d,p=t.themeManager,k=!!p.getOptions("seriesTemplate"),h=k?u:r.chart.series,nt=r.chart.valueAxis&&r.chart.valueAxis.valueType,w,c,b,g;for(t.teamplateData=[],r.dataSource&&!h&&(o(r.dataSource)&&(r.dataSource=s(r.dataSource)),w=r.dataSourceField||"arg",h={argumentField:w,valueField:w},t._hideChart=!0),h=n.isArray(h)?h:h?[h]:[],t._backgroundColor=r.backgroundColor!==i?r.backgroundColor:p.getOptions("backgroundColor"),c=0;c<h.length;c++)v=n.extend(!0,{argumentType:r.valueType,argumentAxisType:r.axisType,valueType:w?r.valueType:nt,incidentOccured:r.incidentOccured},h[c]),v.rotated=!1,l=v.data||r.dataSource,y=p.getOptions("series",v),y.argumentField=y.argumentField||r.dataSourceField,l&&l.length>0&&(b=e.createSeries(r.renderer,y),a.push(b)),k&&(n.each(l,function(i,r){n.each(b.getTeamplatedFields(),function(n,t){r[t.teamplateField]=r[t.originalField]}),t.teamplateData.push(r)}),b.updateTeamplateFieldNames());for(l=k?t.teamplateData:l,t._dataValidator=f.factory.createDataValidator(l,[a],r.incidentOccured,p.getOptions("dataPrepareSettings")),d=t._dataValidator.validate(),c=0;c<a.length;c++)g=a[c],g.updateData(d);return a},c=function(t,i,r,u){var o=[],f=[];return n.each(t,function(t,i){n.inArray(i.type,f)===-1&&f.push(i.type)}),n.each(f,function(n,f){var s=new e.createSeriesFamily({type:f,equalBarWidth:i,minBubbleSize:r,maxBubbleSize:u});s.add(t),s.adjustSeriesValues(),o.push(s)}),o};return{ctor:function(n){var i=this,s,f,u=i.themeManager=t(n.chart),e=u.getOptions("topIndent"),o=u.getOptions("bottomIndent");i._indent={top:e>=0&&e<1?e:0,bottom:o>=0&&o<1?o:0},i._valueAxis=u.getOptions("valueAxisRangeSelector")||{},i._hideChart=!1,f=u.getOptions("seriesTemplate"),n.dataSource&&f&&(s=r.processSeriesTemplate(f,n.dataSource)),i._series=h(i,n,s),i._seriesFamilies=c(i._series,u.getOptions("equalBarWidth"),u.getOptions("minBubbleSize"),u.getOptions("maxBubbleSize"))},adjustSeriesDimensions:function(t,i){var r=this;i&&n.each(r._series||[],function(n,i){i.resamplePoints(t)}),n.each(r._seriesFamilies,function(){this.adjustSeriesDimensions(t)})},getBoundRange:function(){for(var f=this,l,v=f._valueAxis.min,y=f._valueAxis.max,t=new u.Range({isValueRange:!0,min:v,minVisible:v,max:y,maxVisible:y,axisType:f._valueAxis.type,base:f._valueAxis.logarithmBase}),a=new u.Range({}),e,o,s,h,c=0;c<f._series.length;c++)l=f._series[c].getRangeData(),t.addRange(l.val),a.addRange(l.arg);return t.isDefined()&&a.isDefined()&&(s=f._valueAxis.inverted?f._indent.top:f._indent.bottom,h=f._valueAxis.inverted?f._indent.bottom:f._indent.top,e=t.max-t.min,o=(n.isNumeric(t.maxVisible)?t.maxVisible:t.max)-(n.isNumeric(t.minVisible)?t.minVisible:t.min),r.isDate(t.min)?t.min=new Date(t.min.valueOf()-e*s):t.min-=e*s,r.isDate(t.max)?t.max=new Date(t.max.valueOf()+e*h):t.max+=e*h,n.isNumeric(o)&&(t.maxVisible=t.maxVisible?t.maxVisible+o*h:i,t.minVisible=t.minVisible?t.minVisible-o*s:i),t.invert=f._valueAxis.inverted),{arg:a,val:t}},getSeries:function(){var n=this;return n._series},getBackgroundColor:function(){var n=this;return n._backgroundColor},isEmpty:function(){var n=this;return n.getSeries().length===0},isShowChart:function(){var n=this;return!n.isEmpty()&&!n._hideChart},getCalculatedValueType:function(){var n=this,t;return n._series.length&&(t=n._series[0].argumentType),t}}}())}(jQuery,DevExpress),function(n,t){t.viz.rangeSelector=t.viz.rangeSelector,t.viz.rangeSelector.ThemeManager=t.viz.core.BaseThemeManager.inherit({_themeSection:"rangeSelector",ctor:function(n){this.setTheme(n)},_initializeTheme:function(){this._initializeFont(this._theme.scale.label.font),this._initializeFont(this._theme.sliderMarker.font),this._initializeFont(this._theme.loadingIndicator.font)},applyRangeSelectorTheme:function(t){var u=this,r=t.chart,f=t.dataSource,i;return delete t.dataSource,delete t.chart,i=n.extend(!0,{},u._theme,t),i.dataSource=f,r&&(i.chart=r),i},setBackgroundColor:function(n){var t=this._theme;n&&(t.containerBackgroundColor=n),t.shutter.color=t.shutter.color||t.containerBackgroundColor}})}(jQuery,DevExpress),function(n,t){var u=t.ui,r=t.viz;t.registerComponent("dxRangeSelector",r.rangeSelector.RangeSelector)}(jQuery,DevExpress),DevExpress.MOD_VIZ_RANGESELECTOR=!0}if(!DevExpress.MOD_VIZ_VECTORMAP){if(!DevExpress.MOD_VIZ_CORE)throw Error("Required module is not referenced: viz-core");(function(n,t,i){function l(){var t=this._projection,i,n;t.snapCenter().snapZoom().setCenter(null).setZoom(null),i=t.isCenterChanged(),n=t.isZoomChanged(),(i||n)&&this._applyTransform(n,!0),i&&this._raiseCenterChanged(),n&&this._raiseZoomFactorChanged()}function a(){this._projection.snapCenter()}function v(){this._projection.isCenterChanged()&&this._raiseCenterChanged()}function y(n,t){this._projection.moveCenter(n,t),this._applyTranslate()}function p(n,t,r){var f=this,o=t!==i&&r!==i,s,e;o&&(e=u(f._renderer),e=[t-e.left,r-e.top],s=f._projection.fromScreenPoint(e[0],e[1])),f._projection.snapZoom().setScaledZoom(n),f._projection.isZoomChanged()&&(o&&f._projection.snapCenter().setCenterByPoint(s,e),f._applyTransform(!0,!0),f._raiseZoomFactorChanged(),o&&f._projection.isCenterChanged()&&f._raiseCenterChanged())}var e,o;n.viz.map={};var r=window.Number,f=n.utils.isFunction,u=n.utils.getRootOffset,s=800,h=400,c=n.viz.map.__DATA_KEY="vectormap-data";n.viz.map.Map=n.viz.core.BaseWidget.inherit({_init:function(){var n=this;n.callBase.apply(n,arguments),n.renderer=n._renderer=n._factory.createRenderer({width:1,height:1,pathModified:n.option("pathModified"),rtl:n.option("rtlEnabled")}),n.renderer.draw(n._element().get(0)),n._root=n._renderer.getRoot(),n._root.applySettings({"class":"dxm",stroke:"none",strokeWidth:0,fill:"none",align:"center",cursor:"default",style:{overflow:"hidden"}}),n._themeManager=n._factory.createThemeManager(),n._projection=n._factory.createProjection(),n._tracker=n._factory.createTracker({root:n._root}),n._background=n._renderer.createRect(0,0,0,0,0,{"class":"dxm-background"}).data(c,{type:"background"}),n._areasManager=n._factory.createAreasManager({container:n._root,renderer:n._renderer,projection:n._projection,themeManager:n._themeManager,tracker:n._tracker,ready:function(){n.hideLoadingIndicator()}}),n._areasManager.setData(n.option("mapData")),n._markersManager=n._factory.createMarkersManager({container:n._root,renderer:n._renderer,projection:n._projection,themeManager:n._themeManager,tracker:n._tracker}),n._markersManager.setData(n.option("markers")),n._controlBar=n._factory.createControlBar({container:n._root,renderer:n._renderer,context:n,resetCallback:l,beginMoveCallback:a,endMoveCallback:v,moveCallback:y,zoomCallback:p}),n._legend=n._factory.createLegend({container:n._root,renderer:n._renderer,themeManager:n._themeManager}),n._tooltip=n._factory.createTooltip({container:n._root,renderer:n._renderer,tracker:n._tracker}),n._projection.setBounds(n.option("bounds")).setMaxZoom(n.option("maxZoomFactor")).setZoom(n.option("zoomFactor")).setCenter(n.option("center")),n._themeManager.setTheme(n.option("theme")),n._themeManager.patchRtlSettings(n.option("rtlEnabled")),n._setClickCallback(n.option("click")),n._setCenterChangedCallback(n.option("centerChanged")),n._setZoomFactorChangedCallback(n.option("zoomFactorChanged")),n._setTrackerCallbacks()},_dispose:function(){var n=this;n.callBase.apply(n,arguments),n._resetTrackerCallbacks(),n._themeManager.dispose(),n._tracker.dispose(),n._areasManager.dispose(),n._markersManager.dispose(),n._controlBar.dispose(),n._legend.dispose(),n._tooltip.dispose(),n._renderer.dispose(),n._disposeLoadIndicator(),n._renderer=n._themeManager=n._projection=n._tracker=n._root=n._background=n._areasManager=n._markersManager=n._controlBar=n._legend=n._tooltip=n._centerChangedCallback=n._zoomFactorChangedCallback=null},_setTrackerCallbacks:function(){var n=this,e=n._renderer,t={area:n._areasManager,marker:n._markersManager},o=n._projection,r=n._controlBar,i=n._tooltip,s,h,f=!1;n._tracker.setCallbacks({click:function(i){var f=u(e),r;i.$event.x=i.x-f.left,i.$event.y=i.y-f.top,r=t[i.data.type],r&&r.raiseClick(i.data.index,i.$event),(r||i.data.type==="background")&&n._raiseClick(i.$event)},start:function(n){f=n.data.type==="control-bar",f?(n.data=n.data.index,r.processStart(n)):(s=n.x,h=n.y,o.snapCenter())},move:function(t){f?(t.data=t.data.index,r.processMove(t)):(o.moveCenter(s-t.x,h-t.y),s=t.x,h=t.y,n._applyTranslate())},end:function(t){f?(t.data=t.data.index,r.processEnd(t)):o.isCenterChanged()&&n._raiseCenterChanged(),f=!1},zoom:function(n){r.processZoom(n)},"hover-on":function(n){var i=t[n.data.type];i&&i.hoverItem(n.data.index,!0)},"hover-off":function(n){var i=t[n.data.type];i&&i.hoverItem(n.data.index,!1)},"focus-on":function(n,r){var s=!1,f,o;i.enabled()&&(f=t[n.data.type]?t[n.data.type].getProxyItem(n.data.index):null,!!f&&i.prepare(f,{offset:12})&&(o=u(e),i.show().move(n.x-o.left,n.y-o.top),s=!0)),r(s)},"focus-move":function(n){var t=u(e);i.move(n.x-t.left,n.y-t.top)},"focus-off":function(){i.hide()}}),n._resetTrackerCallbacks=function(){n._resetTrackerCallbacks=n=e=t=o=r=i=null}},_adjustSize:function(n){var t=this,e=t.option("size")||{},u=e.width>=0?r(e.width):t._element().width(),f=e.height>=0?r(e.height):t._element().height(),o=!1,c;return(u===0&&(r(e.width)===0?o=!0:u=s),f===0&&(r(e.height)===0?o=!0:f=h),o||!t._element().is(":visible"))?(t._incidentOccured("W2001",[t.NAME]),t._width=t._height=0,!1):(c=t._width!==u||t._height!==f||n,c&&(t._width=u,t._height=f,t._renderer.resize(u,f),t._projection.setSize(u,f),t._legend.applyLayout(u,f),t._tooltip.setSize(u,f),t._background.applySettings({x:0,y:0,width:u,height:f}),t._applyTranslate(),t._updateLoadIndicator(i,u,f)),c)},_clean:function(){var n=this;n._tracker.clean(),n._background.detach(),n._areasManager.clean(),n._markersManager.clean(),n._controlBar.clean(),n._legend.clean(),n._tooltip.clean()},_render:function(){var n=this;n._adjustSize(!0)&&(n._tooltip.update(n._themeManager.getTooltipSettings(n.option("tooltip"))),n._tracker.setOptions(n.option("interaction")||{}),n._controlBar.setZoomPartition(n._projection.getZoomScalePartition()).setZoom(n._projection.getScaledZoom()).setOptions(n._themeManager.getControlBarSettings(n.option("controlBar")),n.option("interaction")),n._background.applySettings(n._themeManager.getBackgroundSettings(n.option("background"))),n._background.append(n._root),n._areasManager.render(n.option("areaSettings")),n._markersManager.render(n.option("markerSettings")),n._controlBar.render(),n._legend.render(n._themeManager.getLegendSettings(n.option("legend"))),n._tooltip.render(),n._tracker.render(),n._drawn())},_optionChanged:function(n,t){var i=this;switch(n){case"theme":i._themeManager.setTheme(t),i._themeManager.patchRtlSettings(i.option("rtlEnabled")),i._invalidate();break;case"click":i._setClickCallback(t);break;case"centerChanged":i._setCenterChangedCallback(t);break;case"zoomFactorChanged":i._setZoomFactorChangedCallback(t);break;case"mapData":i._areasManager.setData(t);break;case"markers":i._markersManager.setData(t);break;case"bounds":i._projection.setBounds(t),i._invalidate();break;case"maxZoomFactor":i._projection.setMaxZoom(t),i._invalidate();break;case"zoomFactor":i._updateZoomFactor(t);break;case"center":i._updateCenter(t);break;default:i.callBase.apply(i,arguments)}},_getLoadIndicatorOption:function(){return this._themeManager.getLoadIndicatorSettings(this.option("loadingIndicator"))},_setClickCallback:function(n){this._clickCallback=f(n)?n:null},_setCenterChangedCallback:function(n){var t=this;t._centerChangedCallback=f(n)?function(){t._centerChangedCallback&&n.call(t,t._projection.getCenter())}:null},_setZoomFactorChangedCallback:function(n){var t=this;t._zoomFactorChangedCallback=f(n)?function(){t._zoomFactorChangedCallback&&n.call(t,t._projection.getZoom())}:null},_raiseClick:function(n){var t=this;t._clickCallback&&setTimeout(function(){t._clickCallback&&t._clickCallback.call(t,n)},0)},_raiseCenterChanged:function(){this._centerChangedCallback&&setTimeout(this._centerChangedCallback,0)},_raiseZoomFactorChanged:function(){this._zoomFactorChangedCallback&&setTimeout(this._zoomFactorChangedCallback,0)},_updateCenter:function(n,t){this._projection.snapCenter().setCenter(n),this._projection.isCenterChanged()&&(this._applyTransform(),t||this._raiseCenterChanged())},_updateZoomFactor:function(n,t){var i=this;i._projection.snapZoom().setZoom(n),i._projection.isZoomChanged()&&(i._controlBar.setZoom(i._projection.getScaledZoom()),i._applyTransform(!0),t||i._raiseZoomFactorChanged())},_updateViewport:function(n,t){var i=this;i._projection.snapCenter().snapZoom().setViewport(n),i._applyTransform(i._projection.isZoomChanged()),i._projection.isCenterChanged()&&(t||i._raiseCenterChanged()),i._projection.isZoomChanged()&&(i._controlBar.setZoom(i._projection.getScaledZoom()),t||i._raiseZoomFactorChanged())},_resize:function(){this._adjustSize()&&this._applyTransform(!0)},_applyTranslate:function(){var n=this._projection.getTransform();this._areasManager.transform(n),this._markersManager.transform(n)},_applyTransform:function(n,t){t||this._tracker.reset(),this._applyTranslate(),n&&(this._areasManager.redraw(),this._markersManager.redraw())},_refresh:function(){var n=this,t=n.callBase;n._endLoading(function(){t.call(n)})},render:function(){var n=this;return n._width===0&&n._height===0?n._refresh():n._resize(),n},getAreas:function(){return this._areasManager.getProxyItems()},getMarkers:function(){return this._markersManager.getProxyItems()},clearAreaSelection:function(n){return this._areasManager.clearSelection(n),this},clearMarkerSelection:function(n){return this._markersManager.clearSelection(n),this},clearSelection:function(n){return this.clearAreaSelection(n).clearMarkerSelection(n)},center:function(n,t){return n===i?this._projection.getCenter():(this._updateCenter(n,t),this)},zoomFactor:function(n,t){return n===i?this._projection.getZoom():(this._updateZoomFactor(n,t),this)},viewport:function(n,t){return n===i?this._projection.getViewport():(this._updateViewport(n,t),this)},convertCoordinates:function(n,t){return this._projection.fromScreenPointStrict(n,t)},showLoadingIndicator:function(){this._showLoadIndicator(this._themeManager.getLoadIndicatorSettings(this.option("loadingIndicator")),{width:this._width,height:this._height})},_factory:{createRenderer:function(t){return new n.viz.renderers.Renderer(t)},createTooltip:function(n){return new e(n)},createLegend:function(n){return new o(n)}}}),e=n.viz.core.Tooltip.inherit({ctor:function(n){var t=this;t._container=n.container,t._root=n.renderer.createGroup({"class":"dxm-tooltip"}),t.callBase(null,t._root,n.renderer),t._tracker=n.tracker,t._enabled=!1},dispose:function(){var n=this;return n._container=n._root=n._tracker=null,n.callBase.apply(n,arguments)},clean:function(){return this._root.detach(),this},render:function(){return this._root.append(this._container),this}}),o=n.viz.core.Legend.inherit({ctor:function(n){var t=this;t._container=n.container,t._root=n.renderer.createGroup({"class":"dxm-legend"}),t._themeManager=n.themeManager,t.callBase(null,null,n.renderer,t._root)},dispose:function(){var n=this;return n._container=n._root=n._themeManager=null,n.callBase.apply(n,arguments)},clean:function(){return this._root.detach(),this},render:function(n){for(var t=this,r=[],i=0,u=n.items?n.items.length:0;i<u;++i)r.push(t._themeManager.getLegendItemSettings(n.items[i]||{}));return t.update(r,n),t._root.append(t._container),t.applyLayout(t._size.width,t._size.height)},applyLayout:function(n,t){var r=this,i,u,f;return r.setSize({width:n,height:t}),r.draw(),i=r.getLayoutOptions(),i&&(u=i.horizontalAlignment==="left"?0:i.horizontalAlignment==="center"?n/2-i.width/2:n-i.width,f=i.verticalAlignment==="top"?0:t-i.height,r.shift(u,f)),r}}),n.registerComponent("dxVectorMap",n.viz.map.Map),n.viz.map._internal={},n.viz.map.sources={}})(DevExpress,jQuery),function(n){function ct(n,t,i){var f=(n[0]+t[0])/2-i/2,e=(n[1]+t[1])/2-i/2,u=2/i;return{project:function(n){var t=r.project(n);return[-1+(t[0]-f)*u,-1+(t[1]-e)*u]},unproject:function(n){var t=[f+(n[0]+1)/u,e+(n[1]+1)/u];return r.unproject(t)}}}function v(n,t){return l(n-t)<1e-8}function u(n,t,i,r){var u=p(n);return u<t?u=t:u>i?u=i:t<=u&&u<=i||(u=r),u}function it(n,t,i){return{lt:[u(n[0],t[0],i[0],t[0]),u(n[1],t[1],i[1],t[1])],rb:[u(n[2],t[0],i[0],i[0]),u(n[3],t[1],i[1],i[1])]}}function lt(n){var i=r.unproject([-1,-1]),u=r.unproject([1,1]),o=[f(i[0],u[0]),f(i[1],u[1])],s=[e(i[0],u[0]),e(i[1],u[1])],t=n;return t&&t.minLon&&(t=[t.minLon,t.minLat,t.maxLon,t.maxLat]),t&&(t=it(t,o,s)),{minBase:o,maxBase:s,min:t?[f(t.lt[0],t.rb[0]),f(t.lt[1],t.rb[1])]:o,max:t?[e(t.lt[0],t.rb[0]),e(t.lt[1],t.rb[1])]:s}}function rt(n,t,i,r){var u;return u=n>-1&&t>=1?i:n<=-1&&t<1?r:(i+r)/2}function y(){this.setBounds(null)}var p=Number,at=isFinite,f=Math.min,e=Math.max,l=Math.abs,ut=Math.tan,ft=Math.atan,et=Math.exp,o=Math.round,s=Math.log,ot=Math.pow,h=n.utils.isArray,st=n.viz.renderers.buildPath,c=Math.PI,w=c/4,b=c/360,ht=2/Math.LN2,a=1,k=256,d=-180,g=180,nt=-85.0511,tt=85.0511,r={aspectRatio:1,project:function(n){var t=n[0],i=n[1];return[t<=d?-1:t>=g?1:t/180,i<=nt?1:i>=tt?-1:-s(ut(w+i*b))/c]},unproject:function(n){var t=n[0],i=n[1];return[t<=-1?d:t>=1?g:180*t,i<=-1?tt:i>=1?nt:(ft(et(-c*n[1]))-w)/b]}};y.prototype={constructor:y,_minZoom:a,_maxZoom:k,_zoom:a,setSize:function(n,t){var i=this;return i._x0=n/2,i._y0=t/2,n/t<=r.aspectRatio?(i._xradius=n/2,i._yradius=n/2/r.aspectRatio):(i._xradius=t/2*r.aspectRatio,i._yradius=t/2),i},setBounds:function(n){var t=this,i=lt(n),o,s;t._minBase=i.minBase,t._maxBase=i.maxBase,t._minBound=i.min,t._maxBound=i.max;var h=r.project(i.min),c=r.project(i.max),a=f(u(l(c[0]-h[0]),.1,2,2),u(l(c[1]-h[1]),.1,2,2)),v=a<2?ct(h,c,a):r;return t._project=v.project,t._unproject=v.unproject,o=t._project(i.minBase),s=t._project(i.maxBase),t._minv=[f(o[0],s[0]),f(o[1],s[1])],t._maxv=[e(o[0],s[0]),e(o[1],s[1])],t._defaultCenter=t._unproject([0,0]),t.setCenter(t._defaultCenter)},_toScreen:function(n){return[this._x0+this._xradius*n[0],this._y0+this._yradius*n[1]]},_fromScreen:function(n){return[(n[0]-this._x0)/this._xradius,(n[1]-this._y0)/this._yradius]},_toTransformed:function(n){return[n[0]*this._zoom+this._dxcenter,n[1]*this._zoom+this._dycenter,]},_toTransformedFast:function(n){return[n[0]*this._zoom,n[1]*this._zoom]},_fromTransformed:function(n){return[(n[0]-this._dxcenter)/this._zoom,(n[1]-this._dycenter)/this._zoom]},_adjustCenter:function(){var n=this,t=n._project(n._center);n._dxcenter=-t[0]*n._zoom,n._dycenter=-t[1]*n._zoom},projectArea:function(n){for(var r=0,o=h(n)?n.length:0,t,i,f,u,e=[];r<o;++r){for(t=n[r],u=[],i=0,f=h(t)?t.length:0;i<f;++i)u.push(this._project(t[i]));e.push(u)}return e},projectPoint:function(n){return n?this._project(n):[]},getAreaCoordinates:function(n){for(var i=0,s=n.length,r,t,e,o=[],u,f;i<s;++i){for(r=n[i],u=[],t=0,e=r.length;t<e;++t)f=this._toScreen(this._toTransformedFast(r[t])),u.push(f[0],f[1]);o.push(st(u))}return o.join(" ")},getPointCoordinates:function(n){var t=this._toScreen(this._toTransformedFast(n));return{x:o(t[0]),y:o(t[1])}},getZoom:function(){return this._zoom},setZoom:function(n){var t=this;return t._zoom=u(n,t._minZoom,t._maxZoom,t._minZoom),t._adjustCenter(),t},getScaledZoom:function(){return o((this._scale.length-1)*s(this._zoom)/s(this._maxZoom))},setScaledZoom:function(n){return this.setZoom(this._scale[o(n)])},getZoomScalePartition:function(){return this._scale.length-1},_setupScaling:function(){var n=this,t=o(ht*s(n._maxZoom));t=t>4?t:4;var u=ot(n._maxZoom,1/t),i=n._minZoom,r=1;for(n._scale=[i];r<=t;++r)n._scale.push(i*=u)},setMaxZoom:function(n){var t=this;return t._minZoom=a,t._maxZoom=u(n,t._minZoom,p.MAX_VALUE,k),t._setupScaling(),t._zoom>t._maxZoom&&t.setZoom(t._maxZoom),t},getMinZoom:function(){return this._minZoom},getMaxZoom:function(){return this._maxZoom},getCenter:function(){return[this._center[0],this._center[1]]},setCenter:function(n){var i=h(n)?n:null,t;return i=i||n&&(n.lon||n.lat)&&[n.lon,n.lat]||[],t=this,t._center=[u(i[0],t._minBound[0],t._maxBound[0],t._defaultCenter[0]),u(i[1],t._minBound[1],t._maxBound[1],t._defaultCenter[1])],t._adjustCenter(),t},setCenterByPoint:function(n,t){var i=this,r=i._project(n),u=i._fromScreen(t);return i.setCenter(i._unproject([-u[0]/i._zoom+r[0],-u[1]/i._zoom+r[1]]))},moveCenter:function(n,t){var i=this,r=i._toScreen(i._toTransformed(i._project(i._center))),u=i._unproject(i._fromTransformed(i._fromScreen([r[0]+n,r[1]+t])));return i.setCenter(u)},getViewport:function(){var n=this._unproject(this._fromTransformed([-1,-1])),t=this._unproject(this._fromTransformed([1,1]));return[n[0],n[1],t[0],t[1]]},setViewport:function(n){var t=this;if(!h(n))return t.setZoom(t._minZoom).setCenter(t._defaultCenter);var a=it(n,t._minBase,t._maxBase),r=t._project(a.lt),u=t._project(a.rb),o=f(r[0],u[0]),s=f(r[1],u[1]),c=e(r[0],u[0]),l=e(r[1],u[1]),i=2/e(c-o,l-s),v=rt(o,c,-1-i*o,1-i*c),y=rt(s,l,-1-i*s,1-i*l);return t.setZoom(i).setCenter(t._unproject([-v/i,-y/i]))},getTransform:function(){return{translateX:this._dxcenter*this._xradius,translateY:this._dycenter*this._yradius}},fromScreenPoint:function(n,t){return this._unproject(this._fromTransformed(this._fromScreen([n,t])))},fromScreenPointStrict:function(n,t){var i=this,r=i._fromTransformed(i._fromScreen([n,t])),u=i._unproject(r);return[r[0]>=i._minv[0]&&r[0]<=i._maxv[0]?u[0]:NaN,r[1]>=i._minv[1]&&r[1]<=i._maxv[1]?u[1]:NaN]},snapCenter:function(){return this._snappedCenter=this.getCenter(),this},isCenterChanged:function(){var n=this.getCenter();return!v(this._snappedCenter[0],n[0])||!v(this._snappedCenter[1],n[1])},snapZoom:function(){return this._snappedZoom=this.getZoom(),this},isZoomChanged:function(){return!v(this._snappedZoom,this.getZoom())}},n.viz.map.Map.prototype._factory.createProjection=function(){return new y}}(DevExpress,jQuery),function(n,t){function f(n){delete n._owner,n.update=function(){},n.finish=function(){}}function v(n,t){this._owner=n,this._command=t.data}function y(n,t){function u(){n._move(i,r),f=b(u,e)}this._command=t.data;var f=null,e=100,i=0,r=0;switch(this._command){case s:r=-10;break;case h:i=10;break;case c:r=10;break;case l:i=-10}this._stop=function(){return k(f),n._endMove(),this._stop=n=u=null,this},t=null,n._beginMove(),u()}function p(n,t){function i(){n._adjustZoom(n._zoomFactor+f),r=b(i,u)}this._owner=n,this._command=t.data;var r=null,u=150,f=this._command===a?1:-1;this._stop=function(){return k(r),this._stop=n=i=null,this},t=null,i()}function w(n,t){this._owner=n,this._zoomFactor=n._zoomFactor,this._pos=t.y}var e=n.viz.renderers.buildPath,b=setTimeout,k=clearTimeout,o=Math.round,it=Math.pow,rt=Math.log,ut=Math.LN2,d="command-reset",s="command-move-up",h="command-move-right",c="command-move-down",l="command-move-left",a="command-zoom-in",g="command-zoom-out",nt="command-zoom-drag",r=n.viz.map.__DATA_KEY,u="control-bar",i={},tt;i[d]=v,i[s]=i[h]=i[c]=i[l]=y,i[a]=i[g]=p,i[nt]=w,tt=n.Class.inherit({ctor:function(n){var t=this;t._container=n.container,t._createElements(n.renderer);var i=n.context,r=n.resetCallback,e=n.beginMoveCallback,o=n.endMoveCallback,u=n.moveCallback,f=n.zoomCallback;n=null,t._reset=function(){r.call(i)},t._beginMove=function(){e.call(i)},t._endMove=function(){o.call(i)},t._move=function(n,t){u.call(i,n,t)},t._zoom=function(n,t,r){f.call(i,n,t,r)},t._dispose=function(){this._reset=this._move=this._zoom=this._dispose=i=r=u=f=null}},_createElements:function(n){var t=this,i;t._root=n.createGroup({"class":"dxm-control-bar"}),t._buttonsGroup=n.createGroup({"class":"dxm-control-buttons"}).append(t._root),t._trackersGroup=n.createGroup({stroke:"none",strokeWidth:0,fill:"#000000",opacity:.0001,cursor:"pointer"}).append(t._root),i={bigCircleSize:58,smallCircleSize:28,buttonSize:10,arrowButtonOffset:20,incdecButtonSize:11,incButtonOffset:66,decButtonOffset:227,sliderLineStartOffset:88.5,sliderLineEndOffset:205.5,sliderLength:20,sliderWidth:8,trackerGap:4},t._createButtons(n,i),t._createTrackers(n,i),t._root.applySettings({translateX:50.5,translateY:50.5})},_createButtons:function(n,t){var i=this._buttonsGroup,r=t.buttonSize/2,u=t.arrowButtonOffset-r,o=t.arrowButtonOffset,f=t.incdecButtonSize/2;n.createCircle(0,0,t.bigCircleSize/2).append(i),n.createCircle(0,0,r).append(i),n.createPath([-r,-u,0,-o,r,-u]).append(i),n.createPath([u,-r,o,0,u,r]).append(i),n.createPath([r,u,0,o,-r,u]).append(i),n.createPath([-u,r,-o,0,-u,-r]).append(i),n.createCircle(0,t.incButtonOffset,t.smallCircleSize/2).append(i),n.createSimplePath({d:e([-f,t.incButtonOffset,f,t.incButtonOffset])+" "+e([0,t.incButtonOffset-f,0,t.incButtonOffset+f])}).append(i),n.createCircle(0,t.decButtonOffset,t.smallCircleSize/2).append(i),n.createSimplePath({d:e([-f,t.decButtonOffset,f,t.decButtonOffset])}).append(i),n.createSimplePath({d:e([0,t.sliderLineStartOffset,0,t.sliderLineEndOffset])}).append(i),this._zoomDrag=n.createRect(-t.sliderLength/2,t.sliderLineEndOffset-t.sliderWidth/2,t.sliderLength,t.sliderWidth).append(i),this._sliderLineLength=t.sliderLineEndOffset-t.sliderLineStartOffset},_createTrackers:function(n,t){var f=this._trackersGroup,i=o((t.arrowButtonOffset-t.trackerGap)/2),v=t.arrowButtonOffset-i,y=o(it(t.bigCircleSize*t.bigCircleSize/4-i*i,.5)),e=y-v,p;n.createRect(-i,-i,i*2,i*2).append(f).data(r,{index:d,type:u}),n.createRect(-i,-y,i*2,e).append(f).data(r,{index:s,type:u}),n.createRect(v,-i,e,i*2).append(f).data(r,{index:h,type:u}),n.createRect(-i,v,i*2,e).append(f).data(r,{index:c,type:u}),n.createRect(-y,-i,e,i*2).append(f).data(r,{index:l,type:u}),n.createCircle(0,t.incButtonOffset,t.smallCircleSize/2).append(f).data(r,{index:a,type:u}),n.createCircle(0,t.decButtonOffset,t.smallCircleSize/2).append(f).data(r,{index:g,type:u}),this._zoomDragCover=n.createRect(-t.sliderLength/2,t.sliderLineEndOffset-t.sliderWidth/2,t.sliderLength,t.sliderWidth).append(f).data(r,{index:nt,type:u})},dispose:function(){var n=this;return delete n._container,n._dispose(),n._root.clear(),delete n._root,delete n._buttonsGroup,delete n._zoomDrag,delete n._zoomDragCover,n},setZoomPartition:function(n){return this._zoomPartition=n,this._sliderUnitLength=this._sliderLineLength/n,this},setZoom:function(n){return this._adjustZoom(n),this},setOptions:function(n,i){return n=n||{},i=i||{},this._dragAndZoomEnabled=i.dragAndZoomEnabled!==t?!!i.dragAndZoomEnabled:!0,this._enabled=this._dragAndZoomEnabled&&(n.enabled!==t?!!n.enabled:!0),this._buttonsGroup.applySettings(n.shape),this},clean:function(){return this._enabled&&this._root.detach(),this},render:function(){return this._enabled&&this._root.append(this._container),this},_adjustZoom:function(n){var t=this,i;t._zoomFactor=o(n),t._zoomFactor>=0||(t._zoomFactor=0),t._zoomFactor<=t._zoomPartition||(t._zoomFactor=t._zoomPartition),i={translateY:-t._zoomFactor*t._sliderUnitLength},t._zoomDrag.applySettings(i),t._zoomDragCover.applySettings(i)},_applyZoom:function(n,t){this._zoom(this._zoomFactor,n,t)},processStart:function(n){if(this._dragAndZoomEnabled){var t=i[n.data];this._command=new t(this,n)}return this},processMove:function(n){return this._dragAndZoomEnabled&&this._command.update(n),this},processEnd:function(n){return this._dragAndZoomEnabled&&this._command.finish(n),this},processZoom:function(n){var t=this,i;return t._dragAndZoomEnabled&&(n.delta?i=n.delta:n.ratio&&(i=rt(n.ratio)/ut),t._adjustZoom(t._zoomFactor+i),t._applyZoom(n.x,n.y)),t}}),v.prototype.update=function(n){n.data!==this._command&&f(this)},v.prototype.finish=function(){this._owner._reset(),this._owner._adjustZoom(0),f(this)},y.prototype.update=function(n){this._command!==n.data&&this.finish()},y.prototype.finish=function(){f(this._stop())},p.prototype.update=function(n){this._command!==n.data&&this.finish()},p.prototype.finish=function(){this._owner._applyZoom(),f(this._stop())},w.prototype.update=function(n){var t=this._owner;t._adjustZoom(this._zoomFactor+t._zoomPartition*(this._pos-n.y)/t._sliderLineLength)},w.prototype.finish=function(){this._owner._applyZoom(),f(this)},n.viz.map.Map.prototype._factory.createControlBar=function(n){return new tt(n)}}(DevExpress),function(n,t,i){function it(n){this._root=n.root,this._callbacks={},this._createEventHandlers(),this._focus=new rt(this._callbacks)}function rt(n){this._callbacks=n,this.disabled=!0}function ut(n,t,i,r){return et((n-i)*(n-i)+(t-r)*(t-r))}function u(n){var t=n.originalEvent.type,i=n.originalEvent.pointerType;return/^touch/.test(t)||/^MSPointer/.test(t)&&i!==4||/^pointer/.test(t)&&i!=="mouse"}function s(n,t){for(var i=0,u=n.length,r;i<u;++i)if(n[i]){r=t[i];break}return h(r||t[i],c)}function ni(){var n=[navigator.pointerEnabled,navigator.msPointerEnabled,"ontouchstart"in window];r={start:s(n,["pointerdown","MSPointerDown","touchstart mousedown","mousedown"]),move:s(n,["pointermove","MSPointerMove","touchmove mousemove","mousemove"]),end:s(n,["pointerup","MSPointerUp","touchend mouseup","mouseup"]),over:s(n,["pointerover","MSPointerOver","mouseover","mouseover"]),out:s(n,["pointerout","MSPointerOut","mouseout","mouseout"]),wheel:s([],["mousewheel DOMMouseScroll"])}}function e(n){var t=n.originalEvent,i=t.touches&&t.touches[0]||{};return{x:i.pageX||t.pageX||n.pageX,y:i.pageY||t.pageY||n.pageY}}function ft(n){return n.originalEvent.pointerId}function l(n,t){var r=n.originalEvent;return r=r.pointerId!==i?r.pointerId===t?r:null:r.touches[t],r?{x:r.pageX||n.pageX,y:r.pageY||n.pageY}:null}var h=n.ui.events.addNamespace,o=Math.abs,et=Math.sqrt,p=Math.round,ot=Math.max,st=Math.min,w=t.now,a=t.extend,c=n.viz.map.Map.prototype.NAME,f=n.viz.map.__DATA_KEY,b=t(document),r={};ni();var ht="start",ct="move",lt="end",k="zoom",at="hover-on",vt="hover-off",yt="click",pt="focus-on",wt="focus-move",d="focus-off",bt=500,g=5,kt=5,dt=10,v=300,nt=300,gt=300,y=400,tt=5;a(it.prototype,{dispose:function(){var n=this;return n._focus.dispose(),n._root=n._callbacks=n._focus=n._rootClickEvents=n._$docClickEvents=n._rootZoomEvents=n._$docZoomEvents=n._rootHoverEvents=n._$docHoverEvents=n._rootFocusEvents=n._$docFocusEvents=null,n},_createEventHandlers:function(){var n=this;n._rootClickEvents={},n._rootClickEvents[r.start]=function(t){var r=u(t),i;(!r||n._isTouchEnabled)&&(t.preventDefault(),i=e(t),n._clickState={x:i.x,y:i.y,time:w()})},n._$docClickEvents={},n._$docClickEvents[r.end]=function(i){var s=n._clickState,h,r;s&&(h=u(i),!h||n._isTouchEnabled)&&(w()-s.time<=bt&&(r=e(i),o(r.x-s.x)<=g&&o(r.y-s.y)<=g&&n._callbacks[yt]({data:t(i.target).data(f)||{},x:r.x,y:r.y,$event:i})),n._clickState=null)},n._rootDragEvents={},n._rootDragEvents[r.start]=function(i){var o=u(i),r;(!o||n._isTouchEnabled)&&(r=e(i),n._dragState={x:r.x,y:r.y,data:t(i.target).data(f)||{}},n._isDragEnabled&&n._callbacks[ht]({data:n._dragState.data,x:r.x,y:r.y}))},n._$docDragEvents={},n._$docDragEvents[r.move]=function(i){var r=n._dragState,h,s,c;r&&(h=u(i),!h||n._isTouchEnabled)&&(s=e(i),c=h?dt:kt,(r.active||o(s.x-r.x)>c||o(s.y-r.y)>c)&&(r.x=s.x,r.y=s.y,r.active=!0,r.data=t(i.target).data(f)||{},n._isDragEnabled&&n._callbacks[ct]({data:r.data,x:s.x,y:s.y})))},n._$docDragEvents[r.end]=function(t){var r=n._dragState,i;r&&(i=u(t),!i||n._isTouchEnabled)&&n._endDragging()},n._rootZoomEvents={},n._rootZoomEvents[r.wheel]=function(t){var i,r;n._isWheelEnabled&&((t.preventDefault(),n._zoomState)||(i=t.originalEvent.wheelDelta/120||t.originalEvent.detail/-3||0,i!==0)&&(i=i>0?st(p(i)||1,4):ot(p(i)||-1,-4),r=e(t),n._isZoomEnabled&&n._callbacks[k]({delta:i,x:r.x,y:r.y}),n._zoomState=setTimeout(function(){n._zoomState=null},50)))},n._rootZoomEvents[r.start]=function(t){var o=u(t),r,f,e;o&&n._isTouchEnabled&&((r=n._zoomState=n._zoomState||{},r.pointer1&&r.pointer2)||(r.pointer1===i&&(r.pointer1=ft(t)||0,f=l(t,r.pointer1),r.x1=r.x1_0=f.x,r.y1=r.y1_0=f.y),r.pointer2===i&&(e=ft(t)||1,e!==r.pointer1&&(f=l(t,e),f&&(r.x2=r.x2_0=f.x,r.y2=r.y2_0=f.y,r.pointer2=e,r.ready=!0,n._endDragging())))))},n._$docZoomEvents={},n._$docZoomEvents[r.move]=function(t){var r=n._zoomState,e,f;r&&(e=u(t),e&&n._isTouchEnabled)&&(r.pointer1!==i&&(f=l(t,r.pointer1),f&&(r.x1=f.x,r.y1=f.y)),r.pointer2!==i&&(f=l(t,r.pointer2),f&&(r.x2=f.x,r.y2=f.y)))},n._$docZoomEvents[r.end]=function(t){var i=n._zoomState,r,f,e;i&&(r=u(t),r&&n._isTouchEnabled)&&(i.ready&&(f=ut(i.x1_0,i.y1_0,i.x2_0,i.y2_0),e=ut(i.x1,i.y1,i.x2,i.y2),n._isZoomEnabled&&n._callbacks[k]({ratio:e/f,x:(i.x1_0+i.x2_0)/2,y:(i.y1_0+i.y2_0)/2})),n._zoomState=null)},n._rootHoverEvents={},n._rootHoverEvents[r.over]=function(i){var e,r;n._hoverTarget!==i.target&&((e=u(i),e)||(r=t(i.target).data(f),r)&&(n._hoverTarget&&n._endHovering(),n._hoverTarget=i.target,n._hoverState={data:r},n._callbacks[at]({data:r})))},n._$docHoverEvents={},n._$docHoverEvents[r.out]=function(i){var o=n._hoverState,r,e;o&&((r=u(i),r)||(e=t(i.target).data(f),e)&&n._endHovering())},n._rootFocusEvents={},n._rootFocusEvents[r.start]=function(i){var o=u(i),r;o&&n._isTouchEnabled&&(r=t(i.target).data(f),r)&&(n._focus.turnOff(y),n._focus.turnOn(i.target,r,e(i),gt),n._skip$docEvent=!0)},n._rootFocusEvents[r.over]=function(i){var s,r,o;n._focusTarget!==i.target&&((n._focusTarget=i.target,s=u(i),s)||(r=t(i.target).data(f),r)&&(n._focusTarget&&n._focus.turnOff(nt),o=e(i),n._focus.active?n._focus.move(i.target,r,o):n._focus.turnOn(i.target,r,o,v)))},n._$docFocusEvents={},n._$docFocusEvents[r.start]=function(t){n._focusTarget=t.target;var i=u(t);i&&n._isTouchEnabled&&(n._skip$docEvent||n._focus.turnOff(y),n._skip$docEvent=null)},n._$docFocusEvents[r.move]=function(i){var h,s,r;n._focus.disabled||n._focusTarget===i.target&&(h=u(i),!h||n._isTouchEnabled)&&(s=t(i.target).data(f),s)&&(r=e(i),h?(n._dragState&&n._dragState.active||n._zoomState&&n._zoomState.ready)&&n._focus.cancel():n._focus.active?n._dragState&&n._dragState.active?(n._focus.cancel(),n._focus.turnOn(i.target,s,r,v*4)):n._focus.move(i.target,s,r):(o(r.x-n._focus.x)>tt||o(r.y-n._focus.y)>tt)&&n._focus.turnOn(i.target,s,r,v))},n._$docFocusEvents[r.end]=function(t){if(!n._focus.disabled){var i=u(t);i&&n._isTouchEnabled&&(n._focusTarget=null,n._focus.active?n._focus.changing&&n._focus.cancel():n._focus.turnOff(y))}},n._$docFocusEvents[r.out]=function(i){var r,e;n._focus.disabled||(r=u(i),r)||(n._focusTarget=null,e=t(i.target).data(f),e)&&n._focus.turnOff(nt)}},_endDragging:function(){var n=this,t=n._dragState;n._dragState=null,t&&n._isDragEnabled&&n._callbacks[lt]({data:t.data,x:t.x,y:t.y})},_endHovering:function(){var n=this,t=n._hoverState;n._hoverState=n._hoverTarget=null,t&&n._callbacks[vt]({data:t.data})},reset:function(){var n=this;return n._clickState=null,n._endDragging(),n._endHovering(),n._focus.cancel(),n._focusTarget=null,n},setCallbacks:function(n){return a(this._callbacks,n),this},setOptions:function(n){return this._isTouchEnabled=n.touchEnabled===i||!!n.touchEnabled,this._isWheelEnabled=n.wheelEnabled===i||!!n.wheelEnabled,this._isDragEnabled=n.dragAndZoomEnabled===i||!!n.dragAndZoomEnabled,this._isZoomEnabled=n.dragAndZoomEnabled===i||!!n.dragAndZoomEnabled,this},clean:function(){var n=this;return n._isTouchEnabled&&(n._root.applySettings({style:{"touch-action":"","-ms-touch-action":"","-webkit-user-select":""}}),n._root.off(h("MSHoldVisual",c)).off(h("contextmenu",c))),n._detachEventHandlers(),n.reset(),n},render:function(){var n=this;if(n._isTouchEnabled){n._root.applySettings({style:{"touch-action":"none","-ms-touch-action":"none","-webkit-user-select":"none"}});n._root.on(h("MSHoldVisual",c),function(n){n.preventDefault()}).on(h("contextmenu",c),function(n){u(n)&&n.preventDefault()})}return n._attachEventHandlers(),n},_attachEventHandlers:function(){var n=this;n._root.on(n._rootClickEvents).on(n._rootDragEvents).on(n._rootZoomEvents).on(n._rootHoverEvents).on(n._rootFocusEvents);b.on(n._$docClickEvents).on(n._$docDragEvents).on(n._$docZoomEvents).on(n._$docHoverEvents).on(n._$docFocusEvents)},_detachEventHandlers:function(){var n=this;n._root.off(n._rootClickEvents).off(n._rootDragEvents).off(n._rootZoomEvents).off(n._rootHoverEvents).off(n._rootFocusEvents),b.off(n._$docClickEvents).off(n._$docDragEvents).off(n._$docZoomEvents).off(n._$docHoverEvents).off(n._$docFocusEvents)}}),a(rt.prototype,{dispose:function(){var n=this;clearTimeout(n._onTimer),clearTimeout(n._offTimer),n._callbacks=n._onTimer=n._offTimer=n.active=n._data=null},_createCallback:function(n,t,i){function u(i){r.changing=null,r.disabled=!i,i&&(r._data=t,r.active=n,clearTimeout(r._offTimer),r._offTimer=null)}var r=this;return function(){r.active===n?(r._callbacks[wt]({data:r._data,x:i.x,y:i.y}),u(!0)):r._callbacks[pt]({data:t,x:i.x,y:i.y},u)}},turnOn:function(n,t,i,r){var u=this;u.disabled=!1,u.x=i.x,u.y=i.y,clearTimeout(u._onTimer),u.changing=!0,u._onTimer=setTimeout(u._createCallback(n,t,i),r)},move:function(n,t,i){this.x=i.x,this.y=i.y,this._createCallback(n,t,i)()},turnOff:function(n){var t=this;t.active?t._offTimer=t._offTimer||setTimeout(function(){t._offTimer=null,t._callbacks[d]({data:t._data}),t._data=t.active=null,t.disabled=!0},n):(clearTimeout(t._onTimer),t._onTimer=null,t.disabled=!0)},cancel:function(){var n=this;n.active&&n._callbacks[d]({data:n._data}),clearTimeout(n._onTimer),clearTimeout(n._offTimer),n._data=n.active=n._onTimer=n._offTimer=null,n.disabled=!0}}),n.viz.map.Map.prototype._factory.createTracker=function(n){return new it(n)}}(DevExpress,jQuery),function(n,t,i){var u=Number,r=t.extend,f=t.each,e=n.viz.core.BaseThemeManager.inherit({_themeSection:"map",_initializeTheme:function(){var n=this;n._initializeFont(n._theme.marker.font),n._initializeFont(n._theme.tooltip.font),n._initializeFont(n._theme.legend.font),n._initializeFont(n._theme.loadingIndicator.font)},dispose:function(){var n=this;return n.callBase.apply(n,arguments),n._areasPalette=n._markersPalette=null,n},getBackgroundSettings:function(n){var i=this._theme.background,t=r({},i,n);return{strokeWidth:t.borderWidth,stroke:t.borderColor,fill:t.color}},getCommonAreaSettings:function(t){var i=r({},this._theme.area,t);return this._areasPalette=new n.viz.core.GradientPalette(i.palette,i.paletteSize),i},getAreaSettings:function(n,t){t=t||{};var f=r({},n,t);return f.borderWidth=u(f.borderWidth)||0,f.borderColor=f.borderColor||null,t.color===i&&t.paletteIndex>=0&&(f.color=this._areasPalette.getColor(t.paletteIndex)),f.color=f.color||null,f.hoveredBorderWidth=u(f.hoveredBorderWidth)||f.borderWidth,f.hoveredBorderColor=f.hoveredBorderColor||f.borderColor,f.hoveredColor=f.hoveredColor||f.color,f.selectedBorderWidth=u(f.selectedBorderWidth)||f.borderWidth,f.selectedBorderColor=f.selectedBorderColor||f.borderColor,f.selectedColor=f.selectedColor||f.color,f},getCommonMarkerSettings:function(t){t=t||{};var i=this._theme.marker,u={};return f(i,function(n){if(n[0]==="_"){var f=i[n]||{},e=t[n]||{},o=r({},i,f,t,e);o.font=r({},i.font,f.font,t.font,e.font),u[n.substr(1)]=o}}),this._markersPalette=new n.viz.core.Palette(t.palette||i.palette,{stepHighlight:50,theme:this.themeName()}),u},getMarkerSettings:function(n,t,i){t=t||{};var e=n[i],f=r({},e,t);return f.font=r({},e.font,t.font),f.borderWidth=u(f.borderWidth)||0,f.borderColor=f.borderColor||null,f.color=f.color||null,f.opacity=f.opacity||null,f.hoveredBorderWidth=u(f.hoveredBorderWidth)||f.borderWidth,f.hoveredBorderColor=f.hoveredBorderColor||f.borderColor,f.hoveredColor=f.hoveredColor||f.color,f.hoveredOpacity=f.hoveredOpacity||f.opacity,f.selectedBorderWidth=u(f.selectedBorderWidth)||f.borderWidth,f.selectedBorderColor=f.selectedBorderColor||f.borderColor,f.selectedColor=f.selectedColor||f.color,f.selectedOpacity=f.selectedOpacity||f.opacity,f},getMarkerColors:function(n){for(var t=0,i=[];t<n;++t)i.push(this._markersPalette.getNextColor());return this._markersPalette.reset(),i},getControlBarSettings:function(n){var i=this._theme.controlBar,t=r({},i,n);return r({},n,{shape:{strokeWidth:t.borderWidth,stroke:t.borderColor,fill:t.color}})},getLoadIndicatorSettings:function(n){var t=this._theme.loadingIndicator;return r(!0,{},t,n)},getTooltipSettings:function(n){var i=this._theme.tooltip,t=r({},i,n),u=r({},i.border,n&&n.border,n&&!n.border&&{color:n.borderColor});return r({},n,{color:t.color,border:u,text:{strokeWidth:0,stroke:"none",fill:"none",font:r({},i.font,t.font),"class":"dxm-tooltip-text"},arrowLength:t.arrowLength,paddingLeftRight:t.paddingLeftRight,paddingTopBottom:t.paddingTopBottom,opacity:t.opacity,shadow:r({},i.shadow,t.shadow)})},getLegendSettings:function(n){return r(!0,{},this._theme.legend,n)},getLegendItemSettings:function(n){var t=n.color;return t===i&&n.paletteIndex>=0&&(t=this._areasPalette.getColor(n.paletteIndex)),{text:n.text,color:t}},patchRtlSettings:function(n){var i=this._theme;(n||i.rtlEnabled&&n!==!1)&&t.extend(!0,i,i._rtl)}});n.viz.map.Map.prototype._factory.createThemeManager=function(){return new e}}(DevExpress,jQuery),function(n,t,i){function p(n,t,r){return t=t||{},{attribute:function(n){return n!==i?t[n]:a({},t)},selected:function(t,u){return t!==i?(n.selected!==!!t&&r(n._data.index,!!t,u),this):n.selected}}}function s(n){r(n,function(t){n[t]=null})}var h=String,c=n.utils.isString,l=n.utils.isArray,e=n.utils.isFunction,a=t.extend,r=t.each,v=t.map,f="none",u="single",o="multiple",y=n.Class.inherit({_rootClass:null,ctor:function(n){var t=this;t._container=n.container,t._renderer=n.renderer,t._projection=n.projection,t._themeManager=n.themeManager,t._tracker=n.tracker,t._ready=n.ready,t._root=t._renderer.createGroup({"class":t._rootClass}),t._items=[],t._context={renderer:t._renderer,root:t._root,projection:t._projection,selectItem:function(n,i,r){t.selectItem(n,i,r)}}},dispose:function(){var n=this;return n._container=n._renderer=n._projection=n._themeManager=n._tracker=n._ready=n._root=n._source=n._context=null,n},clean:function(){var n=this;return n._rendered=!1,n._root.detach(),n._customizeCallback=n._clickCallback=n._selectionChangedCallback=null,n._destroyItems(),n},render:function(n){var t,i;return n=n||{},t=this,t._rendered=!0,t._customizeCallback=e(n.customize)?n.customize:null,t._clickCallback=e(n.click)?n.click:null,t._selectionChangedCallback=e(n.selectionChanged)?n.selectionChanged:null,t._hoverEnabled="hoverEnabled"in n?!!n.hoverEnabled:!0,i=h(n.selectionMode).toLowerCase(),t._selectionMode=i===f||i===u||i===o?i:u,t._root.append(t._container),t._source!==null&&t._createItems(),t},_destroyItems:function(){var n=this;n._root.clear(),r(n._items,function(n,t){t.clean().dispose()}),n._items=[],n._selectedItems=null},_getItemSettings:null,_createItem:null,_isItemSelected:null,_arrangeItems:null,_createItems:function(){var n=this,t;n._selectedItems=n._selectionMode===o?{}:null,t=[],r(l(n._source)?n._source:[],function(i,r){var u,f,e;r=r||{},u=n._customizeCallback&&n._customizeCallback.call(r,r)||{},f={item:r,coords:n._getItemCoordinates(r),attrs:n._getItemAttributes(r)},u=n._getItemSettings(f,u),e=n._createItem(u),e.init(n._context,f,i).render(u).locate(),n._items.push(e),n._isItemSelected(f,u)&&t.push(i)}),n._selectionMode!==f&&t.length>0&&(n._selectionMode===u&&(t=[t[t.length-1]]),r(t,function(t,i){n.selectItem(i,!0,!0)})),n._arrangeItems(),n._ready&&n._ready()},_processSource:null,setData:function(n){function r(n){i._source=i._processSource(n)||0,i._rendered&&(i._tracker.reset(),i._destroyItems(),i._createItems())}var i=this;return i._source=null,c(n)?t.getJSON(n).done(r).fail(function(){r(null)}):r(n),i},transform:function(n){return this._root.applySettings(n),this},redraw:function(){return r(this._items,function(n,t){t.locate()}),this},hoverItem:function(n,t){return this._hoverEnabled&&this._items[n].setHovered(!!t),this},_raiseSelectionChanged:function(n){var t=this;t._selectionChangedCallback&&setTimeout(function(){t._selectionChangedCallback&&t._selectionChangedCallback.call(n.proxy,n.proxy)},0)},selectItem:function(n,t,i){var r=this,e,o;return r._selectionMode===f?r:(e=r._items[n],o=e.selected,e.setSelected(!!t),e.selected===o)?r:(i||r._raiseSelectionChanged(e),e.selected&&r._selectionMode===u&&r._selectedItems&&(r._selectedItems.setSelected(!1),i||r._raiseSelectionChanged(r._selectedItems),r._selectedItems=null),r._selectionMode===u?r._selectedItems=e.selected?e:null:e.selected?r._selectedItems[n]=e:delete r._selectedItems[n],r)},clearSelection:function(){var n=this;return n._selectionMode===f?n:(n._selectionMode===u?n._selectedItems&&(n._selectedItems.setSelected(!1),n._raiseSelectionChanged(n._selectedItems),n._selectedItems=null):r(n._selectedItems,function(t,i){i.setSelected(!1),n._raiseSelectionChanged(i),delete n._selectedItems[t]}),n)},raiseClick:function(n,t){var i=this,r=i._items[n];return i._clickCallback&&setTimeout(function(){i._clickCallback&&i._clickCallback.call(r.proxy,r.proxy,t)},0),i},getProxyItems:function(){return v(this._items,function(n){return n.proxy})},getProxyItem:function(n){return this._items[n].proxy}});n.viz.map._internal.mapItemBehavior={init:function(n,t,i){var r=this;return r._ctx=n,r._src=t,r._coords=r._project(n.projection,t.coords),r._data={index:i,type:r._type},r.hovered=r.selected=!1,r.proxy=p(r,t.attrs,n.selectItem),r.proxy.type=r._type,r._init(),r},dispose:function(){return s(this.proxy),s(this),this},locate:function(){var n=this;return n._locate(n._transform(n._ctx.projection,n._coords)),n},clean:function(){return this._root.detach(),this},render:function(n){var t=this;return t._root=t._createRoot().append(t._ctx.root),t._render(n),t},setHovered:function(n){var t=this;return t.hovered=!!n,t._onHover(),t.selected||(t.hovered?t._setHoveredState():t._setDefaultState()),t},setSelected:function(n){var t=this;return t.selected=!!n,t.selected?t._setSelectedState():t.setHovered(t.hovered),t}},n.viz.map.Map.prototype._factory.MapItemsManager=y}(DevExpress,jQuery),function(n,t,i){function e(n){return n.coordinates}function o(n){var t,r;return n.geometry&&(r=n.geometry.type,t=n.geometry.coordinates,t&&(r==="Polygon"||r==="MultiPolygon")?r==="MultiPolygon"&&(t=[].concat.apply([],t)):t=i),t}function s(n){return n.attributes}function h(n){return n.properties}function r(){}var u=n.viz.map.__DATA_KEY,f=n.viz.map.Map.prototype._factory.MapItemsManager.inherit({_rootClass:"dxm-areas",_processSource:function(n){var t=n&&n.type==="FeatureCollection";return this._getItemCoordinates=t?o:e,this._getItemAttributes=t?h:s,t?n.features:n},clean:function(){return this._commonSettings=null,this.callBase.apply(this,arguments)},render:function(n){return this._commonSettings=this._themeManager.getCommonAreaSettings(n||{}),this.callBase.apply(this,arguments)},_getItemSettings:function(n,t){return this._themeManager.getAreaSettings(this._commonSettings,t)},_createItem:function(){return new r},_isItemSelected:function(n,t){return n.attrs.isSelected||t.isSelected},_arrangeItems:t.noop});t.extend(r.prototype,n.viz.map._internal.mapItemBehavior,{_type:"area",_project:function(n,t){return n.projectArea(t)},_init:t.noop,_createRoot:function(){return this._ctx.renderer.createSimplePath()},_render:function(n){var t=this;return t._styles={normal:{"class":"dxm-area",stroke:n.borderColor,strokeWidth:n.borderWidth,fill:n.color},hovered:{"class":"dxm-area dxm-area-hovered",stroke:n.hoveredBorderColor,strokeWidth:n.hoveredBorderWidth,fill:n.hoveredColor},selected:{"class":"dxm-area dxm-area-selected",stroke:n.selectedBorderColor,strokeWidth:n.selectedBorderWidth,fill:n.selectedColor}},t._root.applySettings(t._styles.normal).data(u,t._data),t},_transform:function(n,t){return n.getAreaCoordinates(t)},_locate:function(n){this._root.applySettings({d:n})},_onHover:t.noop,_setDefaultState:function(){this._root.applySettings(this._styles.normal).toBackground()},_setHoveredState:function(){this._root.applySettings(this._styles.hovered).toForeground()},_setSelectedState:function(){this._root.applySettings(this._styles.selected).toForeground()}}),n.viz.map.Map.prototype._factory.createAreasManager=function(n){return new f(n)}}(DevExpress,jQuery),function(n,t){function ut(n){return function(){return[r(n[0]),r(n[1])]}}function v(){}function y(){}function p(){}function w(){}function b(n,t){return e[n]&&n||t||it}var r=Number,ft=String,h=isFinite,c=Math.round,k=Math.max,d=Math.min,u=t.extend,g=n.utils.isArray,s=n.viz.renderers.processCircleSettings,l="dxm-marker",nt="dxm-marker dxm-marker-hovered",tt="dxm-marker dxm-marker-selected",a={stroke:"none",strokeWidth:0,fill:"#000000",opacity:.0001},f=n.viz.map.__DATA_KEY,it="dot",e={},rt=n.viz.map.Map.prototype._factory.MapItemsManager.inherit({_rootClass:"dxm-markers",ctor:function(){var n=this;n.callBase.apply(n,arguments),n._context.getColors=function(t){return n._themeManager.getMarkerColors(t)},n._filter=n._renderer.createFilter("shadow").applySettings({x:"-40%",y:"-40%",width:"180%",height:"200%",color:"#000000",opacity:.2,dx:0,dy:1,blur:1}).append()},dispose:function(){return this._filter.dispose(),this._filter=null,this.callBase.apply(this,arguments)},_getItemCoordinates:function(n){return n.coordinates},_getItemAttributes:function(n){return n.attributes},_processSource:function(n){return n},clean:function(){var n=this;return n._commonSettings=null,n.callBase.apply(n,arguments)},render:function(n){var t=this;return t._commonSettings=t._themeManager.getCommonMarkerSettings(n),t._commonSettings._filter=t._filter.ref,t._commonType=b(n&&n.type),t.callBase.apply(t,arguments)},_arrangeBubbles:function(){for(var f=this._items,i=[],r=f.length,n,u=[],t=0;t<r;++t)n=f[t],n.type==="bubble"&&(i.push(n),n.value!==null&&u.push(n.value));var e=d.apply(null,u),o=k.apply(null,u),s=o-e||1;for(t=0,r=i.length;t<r;++t)n=i[t],n.setSize(n.value!==null?(n.value-e)/s:0)},_getItemSettings:function(n,t){var r=b(n.item.type,this._commonType),i=u(n.item.style,t);return i=this._themeManager.getMarkerSettings(this._commonSettings,i,r),u(n.item,{text:n.item.text||i.text}),i._type=r,i},_createItem:function(n){return new e[n._type]},_isItemSelected:function(n,t){return n.item.isSelected||t.isSelected},_arrangeItems:function(){this._arrangeBubbles()},addMarker:function(n){var t=this,i=t._items.length,r=t._createItem(n,i);return t._items.push(r),r._selected&&t.selectItem(i,!0,!0),t._arrangeItems(),t}}),o=u({},n.viz.map._internal.mapItemBehavior,{_type:"marker",_project:function(n,t){return n.projectPoint(t)},_init:function(){this.proxy.coordinates=ut(this._src.coords),this.proxy.text=this._src.item.text},_createRoot:function(){return this._ctx.renderer.createGroup()},_render:function(n){var t=this;return t._root.applySettings({"class":l}),t._create(n,t._ctx.renderer,t._root),t._createText(n,t._ctx.renderer,t._root),t},_createText:function(n,t,i){var u=this;if(u._src.item.text){var h=u._root.getBBox(),e=t.createText(u._src.item.text,0,0,{align:"center",font:n.font}).append(i),r=e.getBBox(),o=c(-r.x+h.width/2)+2,s=c(-r.y-r.height/2)-1;e.applySettings({x:o,y:s}),t.createRect(o+r.x-1,s+r.y-1,r.width+2,r.height+2,0,a).data(f,u._data).append(i)}},_transform:function(n,t){return n.getPointCoordinates(t)},_locate:function(n){this._root.applySettings({translateX:n.x,translateY:n.y})},_onHover:function(){this.hovered&&this._root.toForeground()},_setDefaultState:function(){this._root.applySettings({"class":l}).toBackground(),this._applyDefault()},_setHoveredState:function(){this._root.applySettings({"class":nt}),this._applyHovered()},_setSelectedState:function(){this._root.applySettings({"class":tt}).toForeground(),this._applySelected()}});u(v.prototype,o,{type:"dot",_create:function(n,t,i){var e=this,o=n.size>0?r(n.size):0,h=o,c=o+(n.selectedStep>0?r(n.selectedStep):0),l=h+(n.backStep>0?r(n.backStep):0),a=c+(n.backStep>0?r(n.backStep):0),u=s(0,0,o,n.borderWidth);e._dotDefault={cx:u.cx,cy:u.cy,r:u.r,stroke:n.borderColor,strokeWidth:n.borderWidth,fill:n.color,filter:n.shadow?n._filter:null},e._dotHovered={cx:u.cx,cy:u.cy,r:h/2,stroke:n.hoveredBorderColor,strokeWidth:n.hoveredBorderWidth,fill:n.hoveredColor},e._dotSelected={cx:u.cx,cy:u.cy,r:c/2,stroke:n.selectedBorderColor,strokeWidth:n.selectedBorderWidth,fill:n.selectedColor},e._backDefault={cx:u.cx,cy:u.cy,r:u.r,stroke:"none",strokeWidth:0,fill:n.backColor,opacity:n.backOpacity},e._backHovered={cx:u.cx,cy:u.cy,r:l/2,stroke:"none",strokeWidth:0,fill:n.backColor,opacity:n.backOpacity},e._backSelected={cx:u.cx,cy:u.cy,r:a/2,stroke:"none",strokeWidth:0,fill:n.backColor,opacity:n.backOpacity},e._back=t.createCircle().applySettings(e._backDefault).data(f,e._data).append(i),e._dot=t.createCircle().applySettings(e._dotDefault).data(f,e._data).append(i)},_destroy:function(){this._back=this._dot=null},_applyDefault:function(){this._back.applySettings(this._backDefault),this._dot.applySettings(this._dotDefault)},_applyHovered:function(){this._back.applySettings(this._backHovered),this._dot.applySettings(this._dotHovered)},_applySelected:function(){this._back.applySettings(this._backSelected),this._dot.applySettings(this._dotSelected)}}),u(y.prototype,o,{type:"bubble",_create:function(n,t,i){var u=this;u._minSize=n.minSize>0?r(n.minSize):0,u._maxSize=n.maxSize>u._minSize?r(n.maxSize):u._minSize,u.value=h(u._src.item.value)?r(u._src.item.value):null,u._default={stroke:n.borderColor,strokeWidth:n.borderWidth,fill:n.color,opacity:n.opacity},u._hovered={stroke:n.hoveredBorderColor,strokeWidth:n.hoveredBorderWidth,fill:n.hoveredColor,opacity:n.hoveredOpacity},u._selected={stroke:n.selectedBorderColor,strokeWidth:n.selectedBorderWidth,fill:n.selectedColor,opacity:n.selectedOpacity},u._bubble=t.createCircle(0,0,n.maxSize/2).applySettings(u._default).data(f,u._data).append(i)},_destroy:function(){this._bubble=null},_applyDefault:function(){this._bubble.applySettings(this._default)},_applyHovered:function(){this._bubble.applySettings(this._hovered)},_applySelected:function(){this._bubble.applySettings(this._selected)},setSize:function(n){var t=this,i=s(0,0,t._minSize+n*(t._maxSize-t._minSize),t._default.strokeWidth);return t._default.cx=t._hovered.cx=t._selected.cx=i.cx,t._default.cy=t._hovered.cy=t._selected.cy=i.cy,t._default.r=t._hovered.r=t._selected.r=i.r,t._bubble.applySettings(i),t}}),u(p.prototype,o,{type:"pie",_create:function(t,i,u){var e=this,l=s(0,0,t.size>0?r(t.size):0,t.borderWidth);e._pieDefault={opacity:t.opacity},e._pieHovered={opacity:t.hoveredOpacity},e._pieSelected={opacity:t.selectedOpacity},e._borderDefault={stroke:t.borderColor,strokeWidth:t.borderWidth},e._borderHovered={stroke:t.hoveredBorderColor,strokeWidth:t.hoveredBorderWidth},e._borderSelected={stroke:t.selectedBorderColor,strokeWidth:t.selectedBorderWidth};for(var v=e._src.item.values,o=0,y=g(v)?v.length:0,a=[],c,w=0;o<y;++o)c=r(v[o]),h(c)&&(a.push(c),w+=c);e._pie=i.createGroup(e._pieDefault);var b=new n.viz.core.Translator1D(0,w,90,450),k=b.translate(0),p,d=e._ctx.getColors(a.length);for(c=0,o=0,y=a.length;o<y;++o)c+=a[o],p=b.translate(c),i.createArc(l.cx,l.cy,l.r,0,k,p,{fill:d[o]}).data(f,e._data).append(e._pie),k=p;e._pie.append(u),e._border=i.createCircle(l.cx,l.cy,l.r,e._borderDefault).data(f,e._data).append(u)},_destroy:function(){this._pie=this._border=null},_applyDefault:function(){this._pie.applySettings(this._pieDefault),this._border.applySettings(this._borderDefault)},_applyHovered:function(){this._pie.applySettings(this._pieHovered),this._border.applySettings(this._borderHovered)},_applySelected:function(){this._pie.applySettings(this._pieSelected),this._border.applySettings(this._borderSelected)}}),u(w.prototype,o,{type:"image",_create:function(n,t,i){var u=this,e=n.size>0?r(n.size):0,o=e+(n.hoveredStep>0?r(n.hoveredStep):0),s=e+(n.selectedStep>0?r(n.selectedStep):0);u._default={x:-e/2,y:-e/2,width:e,height:e},u._hovered={x:-o/2,y:-o/2,width:o,height:o},u._selected={x:-s/2,y:-s/2,width:s,height:s},u._image=t.createImage().applySettings(u._default).applySettings({href:u._src.item.url,location:"center"}).append(i),u._tracker=t.createRect().applySettings(u._default).applySettings(a).data(f,u._data).append(i)},_destroy:function(){this._image=this._tracker=null},_applyDefault:function(){this._image.applySettings(this._default),this._tracker.applySettings(this._default)},_applyHovered:function(){this._image.applySettings(this._hovered),this._tracker.applySettings(this._hovered)},_applySelected:function(){this._image.applySettings(this._selected),this._tracker.applySettings(this._selected)}}),e.dot=v,e.bubble=y,e.pie=p,e.image=w,n.viz.map.Map.prototype._factory.createMarkersManager=function(n){return new rt(n)}}(DevExpress,jQuery),DevExpress.MOD_VIZ_VECTORMAP=!0}if(!DevExpress.MOD_VIZ_SPARKLINES){if(!DevExpress.MOD_VIZ_CORE)throw Error("Required module is not referenced: viz-core");(function(n,t){function d(n){return{text:n.valueText.join("<br/>")}}var o=100,w=10,b=6,r=200,k=1e3,l=n.extend,a=Math.abs,i=Number,u=Math.round,e=t.viz.core,s=e.CoreFactory;t.viz.sparklines={},t.viz.sparklines.BaseSparkline=e.BaseWidget.inherit({render:function(){return this._refresh(),this},_rendererType:t.viz.renderers.Renderer,_clean:function(){this._tooltipShown&&(this._tooltip.dispose(),this._tooltip=null,this._tooltipShown=null,this._tooltipGroup.clear()),this._tooltipContainer.detach(),this._cleanWidgetElements()},_optionChanged:function(n,t){if(n==="size"&&this._allOptions){if(this._clean(),this._canvas=this._calculateCanvas(),this._renderer.resize(this._canvas.width,this._canvas.height),!this._isContainerVisible())return;this._allOptions.size=t,this._redrawWidgetElements(),this._prepareTooltipContainer()}else n==="dataSource"&&this._allOptions?this._refreshDataSource():this.callBase.apply(this,arguments)},_init:function(){this.callBase(),this._canvas=this._calculateCanvas(),this._renderer=new this._rendererType({cssClass:this._widgetClass+" "+this._widgetClass+"-"+this._widgetType,pathModified:this.option("pathModified"),rtl:this.option("rtlEnabled")}),this._renderer.recreateCanvas(this._canvas.width,this._canvas.height),this._createHtmlElements(),this._createTooltipGroups(),this._initTooltipEvents(),this._drawContainer()},_dispose:function(){var n=this;n.callBase(),n._disposeWidgetElements(),n._disposeTooltipEvents(),n._renderer.dispose(),n._tooltipRenderer.dispose(),n._translatorX=null,n._translatorY=null,delete n._renderer,delete n._tooltipRenderer,delete n._tooltipTrackerGroup,delete n._tooltipGroup,delete n._tooltipContainer},_render:function(){var n=this;if(n._canvas=n._calculateCanvas(),n._renderer.resize(n._canvas.width,n._canvas.height),!n._isContainerVisible()){n._incidentOccured("W2001",[n.NAME]);return}n._prepareOptions(),n._createWidgetElements(),n._drawWidgetElements(),n._drawn()},_isContainerVisible:function(){var t=this,n=t._canvas,i=n.width-n.left-n.right>0,r=n.height-n.top-n.bottom>0;return n.height&&n.width&&r&&i},_createWidgetElements:function(){this._createRange(),this._createTranslator()},_prepareOptions:function(n){var u=this,f=u.option()||{},t,r,i;return r=e.findTheme("default"),r=r[this._widgetType],t=l(!0,{},n,f),typeof t.theme=="string"?(i=e.findTheme(t.theme),i=i[this._widgetType]):i=t.theme,l(!0,{},r,i,t)},_calculateCanvas:function(){var r=this,s={},n=r.option("size")||{},u=r.option("margin")||{},t=r._defaultSize,o=r._element(),f=n.width>=0?i(n.width):o.width(),e=n.height>=0?i(n.height):o.height();return f||i(n.width)===0||(f=t.width),e||i(n.height)===0||(e=t.height),{width:f,height:e,top:i(u.top)||t.top,bottom:i(u.bottom)||t.bottom,left:i(u.left)||t.left,right:i(u.right)||t.right}},_createTooltipGroups:function(){var t=this,i,u,r=t._widgetClass;t._tooltipRenderer=i=new t._rendererType({cssClass:r+" "+r+"-tooltip",pathModified:this.option("pathModified"),rtl:this.option("rtlEnabled")}),i.recreateCanvas(1,1),t._tooltipContainer=n('<div style="position: relative">'),i.draw(t._tooltipContainer[0]),u=i.getRoot(),t._tooltipGroup=i.createGroup({"class":r+"-tooltip-group",style:{"z-index":"1"}}).append(u),t._tooltipTrackerGroup=i.createGroup({"class":r+"-tooltip-tracker-group"}).append(u),t._tooltipTracker=t._createTooltipTracker().append(t._tooltipTrackerGroup)},_createTooltipTracker:function(){return this._tooltipRenderer.createRect(0,0,0,0,0,{fill:"grey",opacity:0})},_initTooltipEvents:function(){var n=this,t={widget:n,container:n._tooltipTracker};n._showTooltipCallback=function(){n._showTooltipTimeout=null,n._tooltipShown||(n._tooltipShown=!0,n._showTooltip())},n._hideTooltipCallback=function(){n._hideTooltipTimeout=null,n._tooltipShown&&(n._tooltipShown=!1,n._hideTooltip())},n._disposeCallbacks=function(){n=n._showTooltipCallback=n._hideTooltipCallback=n._disposeCallbacks=null};n._tooltipTracker.on(nt,t).on(tt,t);n._tooltipTracker.on(g)},_disposeTooltipEvents:function(){clearTimeout(this._showTooltipTimeout),clearTimeout(this._hideTooltipTimeout),this._showTooltipTimeout=this._showTooltipTimeout=null,this._tooltipTracker.off(),this._disposeCallbacks()},_drawContainer:function(){this._renderer.draw(this._element()[0])},_createTranslator:function(){this._translatorX=s.createTranslator2D(this._ranges.arg,this._canvas,{direction:"horizontal"}),this._translatorY=s.createTranslator2D(this._ranges.val,this._canvas)},_prepareTooltipOptions:function(){var t=this,o=t._canvas,i=t._allOptions.tooltip,r=t._getTooltipSize(!0),e={canvasWidth:r.width,canvasHeight:r.height,paddingLeftRight:i.paddingLeftRight,paddingTopBottom:i.paddingTopBottom,arrowLength:i.arrowLength,cloudHorizontalPosition:i.horizontalAlignment,cloudVerticalPosition:i.verticalAlignment,lineSpacing:i.font.lineSpacing!==undefined&&i.font.lineSpacing!==null?i.font.lineSpacing:b},u=!n.isFunction(t._allOptions.tooltip.customizeText)&&!n.isFunction(t._allOptions.tooltip.customizeTooltip),f=n.extend(e,t._allOptions.tooltip,{customizeTooltip:u?d:t._allOptions.tooltip.customizeTooltip,_justify:t._allOptions.tooltip._justify||u,_rtl:t.option("rtlEnabled")});return t._tooltipOptions={size:r,options:f},f},_prepareTooltipContainer:function(){var n=this,t=n._canvas,i=t.width,r=t.height,u=n._tooltipRenderer;n._updateTooltipSizeToNormal(),n._tooltipTracker.applySettings({width:i,height:r}),n._tooltipContainer.appendTo(n._element()),n._tooltipInitializated=!1,n._canShowTooltip=n._allOptions.tooltip.enabled},_isTooltipVisible:function(){return this._tooltip.enabled()&&this._tooltip.prepare(this._getTooltipData(),{offset:0})},_createTooltip:function(){var n=this;n._tooltip=s.createTooltip(n._prepareTooltipOptions(),n._tooltipGroup,n._tooltipRenderer),n._isTooltipVisible()?(n._tooltip.show(),n._updateTooltipSizeToWide(),n._checkTooltipSize(),n._updateTooltipSizeToNormal()):n._canShowTooltip=!1},_doShowTooltip:function(n){var t=this;t._canShowTooltip&&(clearTimeout(t._hideTooltipTimeout),t._hideTooltipTimeout=null,clearTimeout(t._showTooltipTimeout),t._showTooltipTimeout=setTimeout(t._showTooltipCallback,n))},_doHideTooltip:function(n){var t=this;t._canShowTooltip&&(clearTimeout(t._showTooltipTimeout),t._showTooltipTimeout=null,clearTimeout(t._hideTooltipTimeout),t._hideTooltipTimeout=setTimeout(t._hideTooltipCallback,n))},_getNormalTooltipSize:function(){var n={};return n.width=this._canvas.width,n.left=0,n.tooltipLeft=u(n.width/2),n},_getWideTooltipSize:function(n,t){var f=this,r=f._canvas,e=f._allOptions.tooltip.horizontalAlignment,o=n+t,i={};return i.width=r.width+o,i.left=-n,i.tooltipLeft=e==="right"?u(r.width/2):e==="left"?u(r.width/2)+o:u(i.width/2),i},_getTooltipSize:function(n,t,i,r){var e=this,s=e._canvas,h=!(e._allOptions.tooltip.verticalAlignment==="bottom"),f=!n&&(t||i)?e._getWideTooltipSize(t,i):e._getNormalTooltipSize(),c=r>0?r+o:o;return f.height=s.height+c,f.top=h?-f.height:-s.height,f.trackerY=h?c:0,f.tooltipY=h?u(s.height/2)+c-w:u(s.height/2),f},_checkTooltipSize:function(){var n=this,i=n._tooltip,h=n._tooltipOptions.options,t=i.getBBox(),s=n._allOptions.tooltip.allowContainerResizing,r=-t.x,u=t.x+t.width-n._canvas.width,f=t.height-o,e;(r>0||u>0||f>0)&&(s?(n._tooltipOptions.size=e=n._getTooltipSize(!1,r>0?r:0,u>0?u:0,f>0?f:0),i.setSize(e.width,e.height),n._updateTooltipSizeToWide()):(n._canShowTooltip=!1,i.hide()))},_updateTooltipSizeToWide:function(){var t=this,n=t._tooltipOptions.size,i=t._tooltipRenderer;i.resize(n.width,n.height),i.getRoot().applySettings({style:{left:n.left,top:n.top,position:"absolute",overflow:"hidden"}}),t._tooltipTracker.applySettings({y:n.trackerY,x:-n.left}),t._tooltip.move(n.tooltipLeft,n.tooltipY)},_updateTooltipSizeToNormal:function(){var n=this,i=n._tooltipRenderer,t=n._canvas;i.resize(t.width,t.height),i.getRoot().applySettings({style:{left:0,top:-t.height,position:"absolute"}}),n._tooltipTracker.applySettings({y:0,x:0})},_showTooltip:function(){(this._tooltipInitializated||(this._createTooltip(),this._tooltipInitializated=!0,this._canShowTooltip))&&(this._updateTooltipSizeToWide(),this._tooltip.show())},_hideTooltip:function(){this._updateTooltipSizeToNormal(),this._tooltip.hide()},showLoadingIndicator:n.noop});var g={"contextmenu.sparkline-tooltip":function(n){(t.ui.events.isTouchEvent(n)||t.ui.events.isPointerEvent(n))&&n.preventDefault()},"MSHoldVisual.sparkline-tooltip":function(n){n.preventDefault()}},nt={"mouseover.sparkline-tooltip":function(n){c=!1;var t=n.data.widget;t._x=n.pageX,t._y=n.pageY;t._tooltipTracker.off(h).on(h,n.data);t._doShowTooltip(r)},"mouseout.sparkline-tooltip":function(n){if(!c){var t=n.data.widget;t._tooltipTracker.off(h),t._doHideTooltip(r)}}},h={"mousemove.sparkline-tooltip":function(n){var t=n.data.widget;t._showTooltipTimeout&&(a(t._x-n.pageX)>3||a(t._y-n.pageY)>3)&&(t._x=n.pageX,t._y=n.pageY,t._doShowTooltip(r))}},f=null,v=function(n){n.preventDefault();var t=f;t&&t!==n.data.widget&&t._doHideTooltip(r),t=f=n.data.widget,t._doShowTooltip(k),t._touch=!0},y=function(){var n=f;n&&(n._touch||(n._doHideTooltip(r),f=null),n._touch=null)},p=function(){var n=f;n&&n._showTooltipTimeout&&(n._doHideTooltip(r),f=null)},c=!1,tt={"pointerdown.sparkline-tooltip":function(n){v(n)},"touchstart.sparkline-tooltip":function(n){v(n)}};n(document).on({"pointerdown.sparkline-tooltip":function(){c=!0,y()},"touchstart.sparkline-tooltip":function(){y()},"pointerup.sparkline-tooltip":function(){p()},"touchend.sparkline-tooltip":function(){p()}})})(jQuery,DevExpress),function(n,t){var i=t.viz,c=i.charts,r=i.core,u=1,f=50,l=4,a=250,v=30,e=5,o=3,y={disabled:!1,theme:"default",dataSource:[],size:{},margin:{},type:"line",argumentField:"arg",valueField:"val",winlossThreshold:0,showFirstLast:!0,showMinMax:!1,redrawOnResize:!1},p={line:!0,spline:!0,stepline:!0,area:!0,steparea:!0,splinearea:!0,bar:!0,winloss:!0},s=n.map,w=n.extend,b=Math.abs,k=Math.round,d=isFinite,g=Number,h=String;i.sparklines.Sparkline=i.sparklines.BaseSparkline.inherit({_widgetType:"sparkline",_widgetClass:"dxsl",_defaultSize:{width:a,height:v,left:e,right:e,top:o,bottom:o},_init:function(){this.callBase(),this._refreshDataSource()},_handleDataSourceChanged:function(){this._initialized&&(this._clean(),this._createWidgetElements(),this._drawWidgetElements())},_dataSourceOptions:function(){return{paginate:!1,_preferSync:!0}},_redrawWidgetElements:function(){this._createTranslator(),this._correctPoints(),this._series.draw({x:this._translatorX,y:this._translatorY}),this._seriesGroup.append(this._renderer.getRoot())},_disposeWidgetElements:function(){delete this._seriesGroup,delete this._seriesLabelGroup},_cleanWidgetElements:function(){this._seriesGroup.detach(),this._seriesLabelGroup.detach(),this._seriesGroup.clear(),this._seriesLabelGroup.clear()},_createWidgetElements:function(){this._createSeries(),this.callBase()},_drawWidgetElements:function(){this._dataSource&&this._dataSource.isLoaded()&&this._drawSeries()},_prepareOptions:function(){this._allOptions=this.callBase(y),this._allOptions.type=h(this._allOptions.type).toLowerCase(),p[this._allOptions.type]||(this._allOptions.type="line")},_createHtmlElements:function(){this._seriesGroup=this._renderer.createGroup({"class":"dxsl-series"}),this._seriesLabelGroup=this._renderer.createGroup({"class":"dxsl-series-labels"})},_createSeries:function(){var n=this,i=n._renderer,t;n._prepareDataSource(),n._prepareSeriesOptions(),n._series=r.CoreFactory.createSeries(i,n._seriesOptions),t=c.factory.createDataValidator(n._simpleDataSource,[[n._series]],n._incidentOccured,{checkTypeForAllData:!1,convertToAxisDataType:!0,sortingMethod:!0}),n._simpleDataSource=t.validate(),n._series._options.customizePoint=n._getCustomizeFunction(),n._series.updateData(n._simpleDataSource)},_parseNumericDataSource:function(n,t,i){var r=this.option("ignoreEmptyPoints");return s(n,function(n,u){var f=null,o,e;return n!==undefined&&(f={},o=d(n),f[t]=o?h(u):n[t],e=o?n:n[i],f[i]=e===null?r?undefined:e:g(e),f=f[t]!==undefined&&f[i]!==undefined?f:null),f})},_parseWinlossDataSource:function(n,t,i){var u=-1,f=0,e=1,o=.0001,r=this._allOptions.winlossThreshold;return s(n,function(n){var s={};return s[t]=n[t],s[i]=b(n[i]-r)<o?f:n[i]>r?e:u,s})},_prepareDataSource:function(){var n=this,t=n._allOptions,r=t.argumentField,u=t.valueField,f=n._dataSource?n._dataSource.items():[],i=n._parseNumericDataSource(f,r,u);t.type==="winloss"?(n._winlossDataSource=i,n._simpleDataSource=n._parseWinlossDataSource(i,r,u)):n._simpleDataSource=i},_prepareSeriesOptions:function(){var n=this,t=n._allOptions,i={border:{},hoverStyle:{border:{}},selectionStyle:{border:{}}},r={size:t.pointSize,symbol:t.pointSymbol,border:{visible:!0,width:2},color:t.pointColor};n._seriesOptions={visible:!0,argumentField:t.argumentField,valueField:t.valueField,color:t.lineColor,width:t.lineWidth,widgetType:"chart"},n._seriesOptions.border={color:n._seriesOptions.color,width:n._seriesOptions.width,visible:!0},n._seriesOptions.type=t.type==="winloss"?"bar":t.type,(t.type==="winloss"||t.type==="bar")&&(n._seriesOptions.argumentAxisType="discrete",n._seriesOptions.border.visible=!1),~~t.type.indexOf("area")!=-1&&(n._seriesOptions.opacity=n._allOptions.areaOpacity),n._seriesOptions.seriesGroup=n._seriesGroup,n._seriesOptions.seriesLabelsGroup=n._seriesLabelGroup,n._seriesOptions.point=w(i,r),n._seriesOptions.point.visible=!1},_createBarCustomizeFunction:function(n){var i=this,t=i._allOptions,r=i._winlossDataSource;return function(){var u=this.index,f=t.type==="winloss",e=f?t.winlossThreshold:0,o=f?r[u][t.valueField]:this.value,s=f?t.winColor:t.barPositiveColor,h=f?t.lossColor:t.barNegativeColor,i;return i=o>=e?s:h,(u===n.first||u===n.last)&&(i=t.firstLastColor),u===n.min&&(i=t.minColor),u===n.max&&(i=t.maxColor),{color:i}}},_createLineCustomizeFunction:function(n){var i=this,t=i._allOptions;return function(){var i,r=this.index;return(r===n.first||r===n.last)&&(i=t.firstLastColor),r===n.min&&(i=t.minColor),r===n.max&&(i=t.maxColor),i?{visible:!0,border:{color:i}}:{}}},_getCustomizeFunction:function(){var n=this,i=n._allOptions,u=n._winlossDataSource||n._simpleDataSource,r=n._getExtremumPointsIndexes(u),t;return t=i.type==="winloss"||i.type==="bar"?n._createBarCustomizeFunction(r):n._createLineCustomizeFunction(r)},_getExtremumPointsIndexes:function(n){var t=this,r=t._allOptions,u=n.length-1,i={};return t._minMaxIndexes=t._findMinMax(n),r.showFirstLast&&(i.first=0,i.last=u),r.showMinMax&&(i.min=t._minMaxIndexes.minIndex,i.max=t._minMaxIndexes.maxIndex),i},_findMinMax:function(n){for(var h=this,r=h._allOptions.valueField,c=n[0]||{},u=c[r]||0,f=u,e=u,o=0,s=0,l=n.length,i,t=1;t<l;t++)i=n[t][r],i<f&&(f=i,o=t),i>e&&(e=i,s=t);return{minIndex:o,maxIndex:s}},_createRange:function(){var n=this,t=n._series,i=t.type==="bar",u=.15,f=i?.1:0,e=t.getRangeData();n._ranges={arg:new r.Range({stick:!i&&t.getPoints().length>1,minValueMargin:f,maxValueMargin:f}),val:new r.Range({isValueRange:!0,keepValueMargins:!0,minValueMargin:u,maxValueMargin:u})},n._ranges.arg.addRange(e.arg),n._ranges.val.addRange(e.val),n._ranges.arg.applyValueMargins(),n._ranges.val.applyValueMargins()},_getBarWidth:function(n){var r=this,i=r._canvas,e=n*l,o=i.width-i.left-i.right-e,t=k(o/n);return t<u&&(t=u),t>f&&(t=f),t},_correctPoints:function(){var t=this,i=t._allOptions.type,r=t._series.getPoints(),u=r.length,f,n;if(i==="bar"||i==="winloss")for(f=t._getBarWidth(u),n=0;n<u;n++)r[n].correctCoordinates({width:f,offset:0})},_drawSeries:function(){var n=this;n._simpleDataSource.length!==0&&(n._correctPoints(),n._series.draw({x:n._translatorX,y:n._translatorY}),n._seriesGroup.append(n._renderer.getRoot()),n._prepareTooltipContainer())},_isTooltipVisible:function(){return this.callBase()&&this._dataSource.length!==0},_getTooltipData:function(){var t=this,r=t._allOptions,n=t._winlossDataSource||t._simpleDataSource,i=t._tooltip;if(n.length===0)return{};var e=t._minMaxIndexes,u=r.valueField,o=n[0][u],s=n[n.length-1][u],h=n[e.minIndex][u],c=n[e.maxIndex][u],l=i.formatValue(o),a=i.formatValue(s),v=i.formatValue(h),y=i.formatValue(c),f={firstValue:l,lastValue:a,minValue:v,maxValue:y,originalFirstValue:o,originalLastValue:s,originalMinValue:h,originalMaxValue:c,valueText:["Start:",l,"End:",a,"Min:",v,"Max:",y]};return r.type==="winloss"&&(f.originalThresholdValue=r.winlossThreshold,f.thresholdValue=i.formatValue(r.winlossThreshold)),f}}).include(t.ui.DataHelperMixin)}(jQuery,DevExpress),function(n,t){var y=t.viz.charts,f=.02,e=.98,h=.1,c=.9,l=300,a=30,o=1,s=2,v={disabled:!1,theme:"default",size:{},margin:{}},p=String,i=Number,r=Math.round,u=isFinite;t.viz.sparklines.Bullet=t.viz.sparklines.BaseSparkline.inherit({_widgetType:"bullet",_widgetClass:"dxb",_defaultSize:{width:l,height:a,left:o,right:o,top:s,bottom:s},_disposeWidgetElements:function(){delete this._zeroLevelPath,delete this._targetPath,delete this._barValuePath},_redrawWidgetElements:function(){this._createTranslator(),this._drawBarValue(),this._drawTarget(),this._drawZeroLevel()},_cleanWidgetElements:function(){this._zeroLevelPath.detach(),this._targetPath.detach(),this._barValuePath.detach()},_drawWidgetElements:function(){this._drawBullet()},_createHtmlElements:function(){var n=this._renderer;this._zeroLevelPath=n.createPath(undefined,{"class":"dxb-zero-level"}),this._targetPath=n.createPath(undefined,{"class":"dxb-target"}),this._barValuePath=n.createPath(undefined,{"class":"dxb-bar-value"})},_prepareOptions:function(){var n=this,t,f,e,o,r,u;n._allOptions=t=n.callBase(v),n._allOptions.value===undefined&&(n._allOptions.value=0),n._allOptions.target===undefined&&(n._allOptions.target=0),t.value=r=i(t.value),t.target=u=i(t.target),n._allOptions.startScaleValue===undefined&&(n._allOptions.startScaleValue=u<r?u:r,n._allOptions.startScaleValue=n._allOptions.startScaleValue<0?n._allOptions.startScaleValue:0),n._allOptions.endScaleValue===undefined&&(n._allOptions.endScaleValue=u>r?u:r),t.startScaleValue=f=i(t.startScaleValue),t.endScaleValue=e=i(t.endScaleValue),e<f&&(o=e,n._allOptions.endScaleValue=f,n._allOptions.startScaleValue=o,n._allOptions.inverted=!0)},_createRange:function(){var t=this,n=t._allOptions;t._ranges={arg:{invert:n.inverted,min:n.startScaleValue,max:n.endScaleValue,axisType:"continuous",dataType:"numeric"},val:{min:0,max:1,axisType:"continuous",dataType:"numeric"}}},_drawBullet:function(){var t=this,n=t._allOptions,i=n.startScaleValue!==n.endScaleValue,r=u(n.startScaleValue),f=u(n.endScaleValue),e=u(n.value),o=u(n.target);i&&f&&r&&o&&e&&(this._drawBarValue(),this._drawTarget(),this._drawZeroLevel(),this._prepareTooltipContainer())},_getTargetParams:function(){var n=this,t=n._allOptions,u=n._translatorX,i=n._translatorY,o=i.translate(f),s=i.translate(e),r=u.translate(t.target),h=[{x:r,y:o},{x:r,y:s}];return{points:h,stroke:t.targetColor,strokeWidth:t.targetWidth}},_getBarValueParams:function(){var e=this,r=e._allOptions,o=e._translatorX,s=e._translatorY,u=r.startScaleValue,f=r.endScaleValue,i=r.value,l=s.translate(h),a=s.translate(c),n,t;return i>0?(n=u<=0?0:u,t=i>=f?f:i):(n=f>=0?0:f,t=i>=u?i:u),n=o.translate(n),t=o.translate(t),{points:[{x:n,y:a},{x:t,y:a},{x:t,y:l},{x:n,y:l}],fill:r.color}},_getZeroLevelParams:function(){var n=this,r=n._allOptions,u=n._translatorX,t=n._translatorY,o=t.translate(f),s=t.translate(e),i=u.translate(0);return{points:[{x:i,y:o},{x:i,y:s}],stroke:r.targetColor,strokeWidth:1}},_drawZeroLevel:function(){var n=this,t=n._allOptions,i;0>t.endScaleValue||0<t.startScaleValue||!t.showZeroLevel||(i=n._getZeroLevelParams(),n._zeroLevelPath.applySettings(i),n._zeroLevelPath.append(n._renderer.getRoot()))},_drawTarget:function(){var n=this,t=n._allOptions,i=t.target,u=t.startScaleValue,f=t.endScaleValue,r;i>f||i<u||!t.showTarget||(r=n._getTargetParams(),n._targetPath.applySettings(r),n._targetPath.append(n._renderer.getRoot()))},_drawBarValue:function(){var n=this,t=n._getBarValueParams();n._barValuePath.applySettings(t),n._barValuePath.append(n._renderer.getRoot())},_getTooltipData:function(){var i=this,r=i._tooltip,u=i._allOptions,n=u.value,t=u.target;return{originalValue:n,originalTarget:t,value:r.formatValue(n),target:r.formatValue(t),valueText:["Actual Value:",n,"Target Value:",t]}},_getNormalTooltipSize:function(){var n={},t=this._barValuePath.getBBox();return n.width=this._canvas.width,n.left=0,n.tooltipLeft=t.x+r(t.width/2),n},_getWideTooltipSize:function(n,t){var f=this,i=f._barValuePath.getBBox(),e=f._allOptions.tooltip.horizontalAlignment,u={};return u.width=n+t+f._canvas.width,u.left=-n,u.tooltipLeft=e==="right"?i.x+r(i.width/2):e==="left"?r(i.width/2)+n+t+i.x:r(i.width/2)+i.x+n,u}})}(jQuery,DevExpress),function(n,t){var u=t.ui,r=t.viz;t.registerComponent("dxSparkline",r.sparklines.Sparkline)}(jQuery,DevExpress),function(n,t){var u=t.ui,r=t.viz;t.registerComponent("dxBullet",r.sparklines.Bullet)}(jQuery,DevExpress),DevExpress.MOD_VIZ_SPARKLINES=!0}