/*! * DevExtreme * Version: 15.1.4 * Build date: Jun 22, 2015 * * Copyright (c) 2012 - 2015 Developer Express Inc. ALL RIGHTS RESERVED * EULA: https://www.devexpress.com/Support/EULAs/DevExtreme.xml */ "use strict";window.DevExpress||(function(n,t){t.DevExpress=t.DevExpress||{},n.extend(t.DevExpress,{VERSION:"15.1.4",abstract:function(){throw t.DevExpress.Error("E0001");},stringFormat:function(){for(var r=arguments[0],u,f,t,i=0;i=0&&(u="$".replace("$","$$").length,t=t.replace("$",u===1?"$$$$":"$$")),r=r.replace(f,t);return r},parseUrl: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}}(),processHardwareBackButton:function(){this.hardwareBackButton.fire()},hardwareBackButton:n.Callbacks(),viewPort:function(){var t;return function(i){if(!arguments.length)return t;var r=n(i),u=!!r.length,f=this.viewPort();t=u?r:n("body"),this.viewPortChanged.fire(u?this.viewPort():n(),f)}}(),viewPortChanged:n.Callbacks(),hideTopOverlayCallback: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}}}(),compareVersions:function(n,t,i){function o(n){return typeof n=="string"?n.split("."):typeof n=="number"?[n]:n}var u,r,f,e;for(n=o(n),t=o(t),u=Math.max(n.length,t.length),isFinite(i)&&(u=Math.min(u,i)),r=0;re)return 1}return 0},rtlEnabled:!1}),n(function(){DevExpress.viewPort(".dx-viewport")})}(jQuery,this),function(n,t){var u={E0001:"Method is not implemented",E0002:"Member name collision: {0}",E0003:"A class must be instantiated using the 'new' keyword",E0004:"The NAME property of the component is not specified",E0005:"Unknown device",E0006:"Unknown endpoint key is requested",E0007:"'Invalidate' method is called outside the update transaction",E0008:"Type of the option name is not appropriate to create an action",E0009:"Component '{0}' has not been initialized for an element",E0010:"Animation configuration with the '{0}' type requires '{1}' configuration as {2}",E0011:"Unknown animation type '{0}'",E0012:"jQuery version is too old. Please upgrade jQuery to 1.10.0 or later",E0013:"KnockoutJS version is too old. Please upgrade KnockoutJS to 2.3.0 or later",E0014:"The 'release' method shouldn't be called for an unlocked Lock object",E0015:"Queued task returned an unexpected result",E0017:"Event namespace is not defined",E0018:"DevExpress.ui.dxPopup widget is required",E0020:"Template engine '{0}' is not supported",E0021:"Unknown theme is set: {0}",E0022:"LINK[rel=dx-theme] tags must go before DevExpress included scripts",E0023:"Template name is not specified",E0100:"Unknown validation type is detected",E0101:"Misconfigured range validation rule is detected",E0102:"Misconfigured comparison validation rule is detected",E0110:"Unknown validation group is detected",E0120:"Adapter for a dxValidator component cannot be configured",W0000:"'{0}' is deprecated in {1}. {2}",W0001:"{0} - '{1}' option is deprecated in {2}. {3}",W0002:"{0} - '{1}' method is deprecated in {2}. {3}",W0003:"{0} - '{1}' property is deprecated in {2}. {3}",W0004:"Timeout for theme loading is over: {0}",W0005:"'{0}' event is deprecated in {1}. {2}"},f="http://js.devexpress.com/error/"+t.VERSION.split(".").slice(0,2).join("_")+"/",e=function(n){var t=n[0];return n=n.slice(1),r(t,i(t,n))},i=function(n,i){return i=[t.ERROR_MESSAGES[n]].concat(i),t.stringFormat.apply(this,i).replace(/\.*\s*?$/,"")},r=function(n,i){return t.stringFormat.apply(this,["{0} - {1}. See:\n{2}",n,i,f+n])},o=function(t){var u,f,e;return u=t[0],t=t.slice(1),f=i(u,t),e=r(u,f),n.extend(new Error(e),{__id:u,__details:f})};n.extend(t,{Error:function(){return o(n.makeArray(arguments))},log:function(i){var r="log",u=t.utils.logger;/^E\d+$/.test(i)?r="error":/^W\d+$/.test(i)&&(r="warn"),u[r](r==="log"?i:e(n.makeArray(arguments)))},ERROR_MESSAGES:u})}(jQuery,DevExpress),function(n,t,i){i.Class=function(){var u=function(n,t,i){return function(){var r=this.callBase;this.callBase=n[t];try{return i.apply(this,arguments)}finally{this.callBase=r}}},f=function(n){var t=function(){};return t.prototype=n.prototype,new t},r=function(){},e=function(t){var i=this,r;return t?(r=n.map(t,function(n,t){return t}),n.each(["toString","toLocaleString","valueOf"],function(){t[this]&&r.push(this)}),n.each(r,function(){var r=n.isFunction(i.prototype[this])&&n.isFunction(t[this]);i.prototype[this]=r?u(i.parent.prototype,this,t[this]):t[this]}),i):i},o=function(){var t=this;return n.each(arguments,function(){this.ctor&&t._includedCtors.push(this.ctor),this.postCtor&&t._includedPostCtors.push(this.postCtor);for(var n in this)if(n!=="ctor"&&n!=="postCtor"){if(n in t.prototype)throw i.Error("E0002",n);t.prototype[n]=this[n]}}),t},s=function(n){return this.parent===n?!0:!this.parent||!this.parent.subclassOf?!1:this.parent.subclassOf(n)};return r.inherit=function(r){var u=function(){if(!this||this===t||typeof this.constructor!="function")throw i.Error("E0003");var r=this,u=r.ctor;n.each(r.constructor._includedCtors,function(){this.call(r)}),u&&u.apply(r,arguments),n.each(r.constructor._includedPostCtors,function(){this.call(r)})};return u.prototype=f(this),u.inherit=this.inherit,u.redefine=e,u.include=o,u.subclassOf=s,u.parent=this,u._includedCtors=this._includedCtors?this._includedCtors.slice(0):[],u._includedPostCtors=this._includedPostCtors?this._includedPostCtors.slice(0):[],u.prototype.constructor=u,u.redefine(r),u},r}()}(jQuery,this,DevExpress),function(n,t,i){function r(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 u=t.DevExpress;n.extend(t.DevExpress,{createQueue:r,enqueue:r().add})}(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){var r={ctor:function(){this._events={}},fireEvent:function(n,t){var i=this._events[n];return i&&i.fireWith(this,t),this},on:function(t,i){if(n.isPlainObject(t))n.each(t,n.proxy(function(n,t){this.on(n,t)},this));else{var r=this._events[t],u;r||(r=n.Callbacks(),this._events[t]=r),u=r.originalAdd||r.add,u.call(r,i)}return this},off:function(t,i){var r=this._events[t];return r&&(n.isFunction(i)?r.remove(i):r.empty()),this},_disposeEvents:function(){n.each(this._events,function(){this.empty()})},_callbacksToEvents:function(r,u){var f=this;n.each(u,function(n,u){var e=f[u],o;e!==i&&(o=e.add,e.originalAdd=o,e.add=function(){return t.log("W0003",r,u,"14.2","Use the '"+u+"' event instead"),o.apply(f,arguments)},f._events[u]=e)})}};n.extend(t,{EventsMixin:r})}(jQuery,DevExpress),function(n,t){if(t.compareVersions(n.fn.jquery,[1,10])<0)throw t.Error("E0012");}(jQuery,DevExpress),function(n){var t=function(n,t){var u=n.nodeName.toLowerCase(),f=!isNaN(t),e=i(n),o=n.disabled,s=/^(input|select|textarea|button|object)$/.test(u),h=u==="a",r=!0;return r=s?!o:h?n.href||f:f,e?r:!1},i=function(t){var i=n(t);return i.is(":visible")&&i.css("visibility")!=="hidden"&&i.parents().css("visibility")!=="hidden"};n.extend(jQuery.expr[":"],{"dx-focusable":function(i){return t(i,n.attr(i,"tabindex"))},"dx-tabbable":function(i){var r=n.attr(i,"tabindex");return(isNaN(r)||r>=0)&&t(i,r)}})}(jQuery),function(n,t,i){function rt(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 s(t,r){var e,u,f;for(f in r)(e=t[f],u=r[f],t!==u)&&(!n.isPlainObject(u)||u instanceof n.Event?u!==i&&(t[f]=u):t[f]=s(n.isPlainObject(e)?e:{},u));return t}function ut(n){return t.support.hasKo?ko.utils.unwrapObservable(n):n}function ft(t,i,u,f){var e={},s=0;return n.each(t,function(n,t){n=t[i],r(n)&&(e[n]=e[n]||[],t===u?e[n].unshift(t):e[n].push(t),delete t[i])}),o(e,function(t,r){n.each(r,function(){t>=0&&(this[i]=s++)})}),n.each(t,function(){r(this[i])||f&&!f(this)||(this[i]=s++)}),s}var r=function(n){return n!==null&&n!==i},h=function(t){return n.type(t)==="string"},u=function(t){return typeof t=="number"&&isFinite(t)||n.isNumeric(t)},c=function(t){return n.type(t)==="object"},l=function(t){return n.type(t)==="array"},a=function(t){return n.type(t)==="date"},v=function(t){return n.type(t)==="function"},y=function(n){return u(n)&&n.toString().indexOf("e")!==-1},p=function(n,t){return r(n)?n:t},f=function(n){return r(n)?/^fa fa-|^fa-.* fa/.test(n)?"faIcon":/^ion-.*|ion.*ion-.*/.test(n)?"ionIcon":/^glyphicon glyphicon-|^glyphicon-.* glyphicon/.test(n)?"glyphIcon":/data:.*base64|\.|\//.test(n)?"image":/^[\w-_]+$/.test(n)?"dxIcon":!1:!1},w=function(t){var u=f(t),i="dx-icon",r;switch(u){case"image":return n("",{src:t}).addClass(i);case"faIcon":case"glyphIcon":return n("",{"class":i+" "+t});case"ionIcon":return r=n("",{"class":i+" "+t}),r.hasClass("ion")||r.hasClass("ionicons")||r.addClass("ion"),r;case"dxIcon":return n("",{"class":i+" "+i+"-"+t});default:return null}},b=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},k=function(){function n(){}return function(t){return n.prototype=t,new n}}(),d=function(t,i){var r=n.Deferred(),u=i||this,f,e={promise:r.promise(),abort:function(){clearTimeout(f),r.rejectWith(u)}},o=function(){var i=t.call(u);i&&i.done&&n.isFunction(i.done)?i.done(function(){r.resolveWith(u)}):r.resolveWith(u)};return f=(arguments[2]||setTimeout)(o,0),e},g=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}}),se&&(f.length=0,e=s),f.push(o))}),f},nt=function(n){return(n+"").replace(/([\+\*\?\\\.\[\^\]\$\(\)\{\}\><\|\=\!\:])/g,"\\$1")},tt=function(n,t,i){return n.replace(new RegExp("("+nt(t)+")","gi"),i)},e=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}},it=function(n){var t=e(n),i=parseInt(t&&t[0],10),r=parseInt(t&&t[1],10);return isFinite(i)||(i=0),isFinite(r)||(r=i),{h:i,v:r}},o=function(n,i){var u=[],r,f;for(r in n)u.push(r);for(u.sort(function(n,i){var r=t.utils.isNumber(n),u=t.utils.isNumber(i);return r&&u?n-i:r&&!u?-1:!r&&u?1:ni?1:0}),f=0;f0?(t=k(t)/p,i=g(t),i-t4&&(e=4)):(s="exponential",e+=o-1,e>3&&(e=3)),{format:s,precision:e}):null},o=function(n){var t,i;return l(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)):""},ct=function(n){var i=o(n),t;if(i)for(t=0;t20&&(t=20),l(n)?e(n)?h(n.toExponential(t)):h(n.toFixed(t)):void 0},at=function(n,t,i){var r=a(n),u=a(t);return s(i,r=0;r--)i=f[r],t=Math.floor(n/u(i)),t>0&&(e[i+"s"]=t,n-=o(i,t));return e},nt=function(t){var i=0;return l(t)&&n.each(t,function(n,t){i+=o(n.substr(0,n.length-1),t)}),s(t)&&(i=o(t,1)),i},o=function(n,t){return u(n)*t},a=function(t){var r=-1,i;return s(t)?t:l(t)?(n.each(t,function(n,t){for(i=0;ii&&(r=i),r},k=function(n,i){if(t.utils.isDefined(n)){var r=i.getHours()-n.getHours(),u,f;r!==0&&(u=r===1||r===-23?-1:1,f=new Date(i.getTime()+u*36e5),(u>0||f.getDate()===i.getDate())&&i.setTime(f.getTime()))}},kt=function(n){return n instanceof Date||(n=new Date(n)),n};n.extend(t.utils,{dateUnitIntervals:e,convertMillisecondsToDateUnits:g,dateToMilliseconds:nt,convertDateUnitToMilliseconds:o,getDateUnitInterval:a,getDatesDifferences:it,correctDateWithUnitBeginning:tt,addInterval:rt,getDateIntervalByString:v,sameMonthAndYear:y,sameMonth:y,sameYear:lt,sameDecade:at,sameCentury:vt,sameView:et,getDifferenceInMonth:ht,getDifferenceInMonthForCells:ct,getFirstYearInDecade:c,getFirstDecadeInCentury:h,getShortDate:yt,getFirstDateView:ut,getLastDateView:ft,getViewDown:st,getViewUp:ot,getLastMonthDate:pt,getFirstMonthDate:w,getFirstWeekDate:wt,getLastDayOfMonth:p,dateInRange:bt,normalizeDate:b,fixTimezoneGap:k,makeDate:kt})}(jQuery,DevExpress),function(n,t){var r=t.utils,s={secondly:"seconds",minutely:"minutes",hourly:"hours",daily:"days",weekly:"weeks",monthly:"months",yearly:"years"},u={bysecond:function(n,t){n.setSeconds(t)},byminute:function(n,t){n.setMinutes(t)},byhour:function(n,t){n.setHours(t)},bymonth:function(n,t){n.setMonth(t)},bymonthday:function(n,t){n.setDate(t)},byday:function(n,t){n.setDate(n.getDate()-n.getDay()+t)}},h={bysecond:"getSeconds",byminute:"getMinutes",byhour:"getHours",bymonth:"getMonth",bymonthday:"getDate",byday:"getDay"},c=function(n,t,i,r){var u=[];return n&&(u=f(n,t,i,r)),!!u.length},l=function(n,t){var i={},r=s[n.toLowerCase()];return i[r]=t,i},f=function(n,t,i,u){var v,f,k;if(!n)return[];if(v=[],f=e(n),!f.freq)return v;f.interval=l(f.freq,f.interval),u=r.normalizeDate(u,i,f.until);var b=0,y=0,p=w(f),h=o(p,t),s=h[0],c=new Date(t);for(r.correctDateWithUnitBeginning(c,f.interval),k=a(t,c);s<=u&&f.count!==b;)nt(s,p)&&(s>=i&&(i=new Date(s),i.setMilliseconds(i.getMilliseconds()+1),v.push(new Date(s))),b++),y++,s=h[y%h.length],y/h.length>=1&&(y=0,c=r.addInterval(c,f.interval),h=o(p,r.addInterval(c,k)),s=h[0]);return v},a=function(n,t){return{years:n.getFullYear()-t.getFullYear(),months:n.getMonth()-t.getMonth(),days:n.getDate()-t.getDate(),hours:n.getHours()-t.getHours(),minutes:n.getMinutes()-t.getMinutes(),seconds:n.getSeconds()-t.getSeconds()}},e=function(n){var i,r,t,u;if(!n)return{};for(i={},r=n.split(";"),t=0,u=r.length;t");return window.WinJS?WinJS.Utilities.setInnerHTMLUnsafe(i.get(0),t):i.append(t),i.contents()},h=function(i){var s,u,c;i=n.extend({},i);var l=t.devices.current(),f=t.devices.real(),e=i.allowZoom,o=i.allowPan,a="allowSelection"in i?i.allowSelection:l.platform==="generic",h="meta[name=viewport]";if(n(h).length||n("").attr("name","viewport").appendTo("head"),s=["width=device-width"],u=[],e?u.push("pinch-zoom"):s.push("initial-scale=1.0","maximum-scale=1.0, user-scalable=no"),o&&u.push("pan-x","pan-y"),o||e?n("html").css("-ms-overflow-style","-ms-autohiding-scrollbar"):n("html, body").css({"-ms-content-zooming":"none","-ms-user-select":"none",overflow:"hidden"}),!a&&t.support.supportProp("user-select")&&n(".dx-viewport").css(t.support.styleProp("user-select"),"none"),n(h).attr("content",s.join()),n("html").css("-ms-touch-action",u.join(" ")||"none"),t.support.touch)n(document).off(".dxInitMobileViewport").on("dxpointermove.dxInitMobileViewport",function(n){var t=n.pointers.length,i=n.pointerType==="touch",r=!e&&t>1,u=!o&&t===1&&!n.isScrollingEvent;i&&(r||u)&&n.preventDefault()});f=t.devices.real(),f.ios&&(c=document.location.protocol==="file:",c||r.add(function(){var t=n(window).width();n("body").width(t)})),f.android&&r.add(function(){document.activeElement.scrollIntoViewIfNeeded()})},u=function(t){var i=".dx-visibility-change-handler";return function(r){var u=n(r||"body"),f=u.find(i).add(u.filter(i));f.each(function(){n(this).triggerHandler(t)})}},c=function(){var n=0;return function(t){return(t||"")+n++}}();t.dataOptionsAttributeName="data-options";var f=function(i){var r=n(i).attr(t.dataOptionsAttributeName),u;n.trim(r).charAt(0)!=="{"&&(r="{"+r+"}");try{u=new Function("return "+r)()}catch(f){throw t.Error("E3018",f,r);}return u},l=function(i,r){var u=[],e="["+t.dataOptionsAttributeName+"]";return i.find(e).addBack(e).each(function(t,i){var o=n(i),s=f(i),e;for(e in s)(!r||n.inArray(e,r)>-1)&&o[e]&&(o[e](s[e]),u.push(o[e]("instance")))}),u},e=function(i){var r=t.utils.isDefined(i)&&(i.nodeType||i.jquery)?n(i):n("
").html(i).contents();return r.length===1&&r.is("script")&&(r=e(i.html())),r},a=function(){window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty()},v=function(t,i){for(var u=n(t).parents().addBack(),f=n(i).parents().addBack(),e=Math.min(u.length,f.length)-1,r=e;r>=0;r--)if(u.eq(r).is(f.eq(r)))return u.get(r)},y=function(n,t,i){i?n.attr(t,i):n.removeAttr(t)},p=function(n,t){var i=n.originalEvent&&n.originalEvent.clipboardData||window.clipboardData;if(arguments.length===1)return i&&i.getData("Text");i&&i.setData("Text",t)};n.extend(t.utils,{windowResizeCallbacks:r,resetActiveElement:o,createMarkupFromString:s,triggerShownEvent:u("dxshown"),triggerHidingEvent:u("dxhiding"),initMobileViewport:h,getElementOptions:f,createComponents:l,normalizeTemplateElement:e,clearSelection:a,uniqueId:c,closestCommonParent:v,clipboardText:p,toggleAttr:y})}(jQuery,DevExpress),function(n,t){var u=function(n){return r(n)?e(n):{start:n.selectionStart,end:n.selectionEnd}},f=function(t,i){if(r(t)){o(t,i);return}n.contains(document,t)&&(t.selectionStart=i.start,t.selectionEnd=i.end)},r=function(n){return!n.setSelectionRange},e=function(n){var t=document.selection.createRange(),i=t.duplicate();return t.move("character",-n.value.length),t.setEndPoint("EndToStart",i),{start:t.text.length,end:t.text.length+i.text.length}},o=function(n,t){var i=n.createTextRange();i.collapse(!0),i.moveStart("character",t.start),i.moveEnd("character",t.end-t.start),i.select()},s=function(i,r){if(i=n(i).get(0),!t.utils.isDefined(r))return u(i);f(i,r)};n.extend(t.utils,{caret:s})}(jQuery,DevExpress),function(n,t){var u=t.utils,e=u.isFunction,f=n.inArray,r=u.isDefined,o=function(t,i){for(var l=e(t.customizeSeries)?t.customizeSeries:n.noop,f=t.nameField||"series",s={},h=[],u,r,o=0,c=i.length;o0))return{};i=r(i)?i:t[0],u=r(u)?u:t[t.length-1];var a=n.map(t,function(n){return n&&n.valueOf()}),s=[],e=r(i)?f(i.valueOf(),a):0,o=r(u)?f(u.valueOf(),a):t.length-1,v,h,c=!1,l;return e<0&&(e=0),o<0&&(o=t.length-1),o0,{categories:h?s:null,start:h?s[c?l-1:0]:null,end:h?s[c?0:l-1]:null,inverted:c}};n.extend(u,{processSeriesTemplate:o,getCategoriesInfo:s})}(jQuery,DevExpress),function(n,t){var r=function(t){return n.isArray(t)&&!t.length},u=function(t){return n.isArray(t)?t:[t]},f=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,{isEmptyArray:r,wrapToArray:u,removeDublicates:f})}(jQuery,DevExpress),function(n,t,i){var f={iPhone:"iPhone",iPhone5:"iPhone",iPhone6:"iPhone",iPhone6plus:"iPhone",iPad:"iPad",iPadMini:"iPad Mini",androidPhone:"Android Mobile",androidTablet:"Android",win8:"MSAppHost",win8Phone:"Windows Phone 8",msSurface:"MSIE ARM Tablet PC",desktop:"desktop"},r={deviceType:"",platform:"",version:[],phone:!1,tablet:!1,android:!1,ios:!1,win8:!1,generic:!1,grade:"A",mac:!1},u;n.extend(r,{platform:"generic",deviceType:"desktop",generic:!0}),u={win8:function(n){var t=/windows phone/i.test(n)||n.match(/WPDesktop/),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,grade:"A"}},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)]:[],u=window.screen.height===480,f=u?"B":"A";return{deviceType:i?"phone":"tablet",platform:"ios",version:r,grade:f}}},android:function(n){if(/android|htc_|silk/i.test(n)){var r=/mobile/i.test(n),i=n.match(/android (\d+)\.(\d+)\.?(\d+)?/i),t=i?[parseInt(i[1],10),parseInt(i[2],10),parseInt(i[3]||0,10)]:[],u=t.length>1&&(t[0]<4||t[0]===4&&t[1]<4),f=u?"B":"A";return{deviceType:r?"phone":"tablet",platform:"android",version:t,grade:f}}}},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._callbacksToEvents("Devices",["orientationChanged"]),this._recalculateOrientation(),t.utils.windowResizeCallbacks.add(n.proxy(this._recalculateOrientation,this))},current:function(n){if(n)this._currentDevice=this._getDevice(n),this._forced=!0,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()),n&&(this._forced=!0)}this._currentDevice=this._getDevice(n)}return this._currentDevice}},real:function(){return n.extend({},this._realDevice)},orientation:function(){return this._currentOrientation},isForced:function(){return this._forced},isRippleEmulator:function(){return!!this._window.tinyHippos},_getCssClasses:function(n){var i=[],r=this._realDevice;return n=n||this.current(),n.deviceType&&(i.push("dx-device-"+n.deviceType),n.deviceType!=="desktop"&&i.push("dx-device-mobile")),i.push("dx-device-"+r.platform),r.version&&r.version.length&&i.push("dx-device-"+r.platform+"-"+r.version[0]),t.devices.isSimulator()&&i.push("dx-simulator"),t.rtlEnabled&&i.push("dx-rtl"),i},attachCssClasses:function(t,i){this._deviceClasses=this._getCssClasses(i).join(" "),n(t).addClass(this._deviceClasses)},detachCssClasses:function(t){n(t).removeClass(this._deviceClasses)},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(i){if(i==="genericPhone"&&(i={deviceType:"phone",platform:"generic",generic:!0}),n.isPlainObject(i))return this._fromConfig(i);var r;if(i){if(r=f[i],!r)throw t.Error("E0005");}else r=navigator.userAgent;return this._fromUA(r)},_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(){var t,i;try{t=this._window.sessionStorage}catch(r){}if(t){i=t.getItem("dx-force-device");try{return n.parseJSON(i)}catch(u){return i}}},_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",generic:t.platform==="generic"};return n.extend({},r,this._currentDevice,i,t)},_fromUA:function(t){var i,e,f;return(n.each(u,function(n,r){return i=r(t),!i}),i)?this._fromConfig(i):(e=/(mac os)/.test(t.toLowerCase()),f=r,f.mac=e,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())}}).include(t.EventsMixin),t.devices=new t.Devices,t.viewPortChanged.add(function(n,i){t.devices.detachCssClasses(i),t.devices.attachCssClasses(n)})}(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"],s={"":"",Webkit:"-webkit-",Moz:"-moz-",O:"-o-",ms:"-ms-"},e=document.createElement("dx").style,h={webkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",msTransition:"MsTransitionEnd",transition:"transitionend"},o=function(n,i){var r,u,o;for(n=t.inflector.camelize(n,!0),u=0,o=f.length;u-1||i.mac};t.support={touchEvents:"ontouchstart"in i,touch:"ontouchstart"in i||!!i.navigator.msMaxTouchPoints,pointer:i.navigator.pointerEnabled||i.navigator.msPointerEnabled,transform:r("transform"),transition:r("transition"),transitionEndEventName:h[u("transition")],animation:r("animation"),nativeScrolling:l(),winJS:"WinJS"in i,styleProp:u,stylePropPrefix:c,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/,h=/fit|flip|none/,f=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){return t.utils.stringPairToObject(n)},w=function(n){var i=t.utils.splitPair(n),r=String(i&&i[0]).toLowerCase(),u=String(i&&i[1]).toLowerCase();return h.test(r)||(r="none"),h.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}},e=function(n){switch(n){case"left":return"right";case"right":return"left";case"top":return"bottom";case"bottom":return"top";default:return n}},o=function(n,t){var i=0;return n.myLocationt.max&&(i+=n.myLocation-t.max),i},s=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.myLocationi.max){var r=n.extend({},t,{myAlign:e(t.myAlign),atAlign:e(t.atAlign),offset:-t.offset});if(s(r),r.oversize=o(r,i),r.myLocation>=i.min&&r.myLocation<=i.max||r.myLocation>t.myLocation||r.oversizedocument.documentElement.clientWidth,b=document.height>document.documentElement.clientHeight,k=t.support.touch?document.documentElement.clientWidth/(b?e-u:e):1,d=t.support.touch?document.documentElement.clientHeight/(w?o-u:o):1,c,y,f,p;return u===i&&(u=v()),c=e,y=o,et&&(f=n(et),p=f.offset(),s=p.left,h=p.top,c=f.width(),y=f.height()),{h:{min:s+l.boundaryOffset,max:s+c/k-l.mySize-l.boundaryOffset},v:{min:h+a.boundaryOffset,max:h+y/d-a.mySize-a.boundaryOffset}}}(),l.oversize=o(l,k.h),a.oversize=o(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)),d=function(n){return h.precise?n:Math.round(n)},n.extend(!0,p,{h:{location:d(l.myLocation),oversize:d(l.oversize)},v:{location:d(a.myLocation),oversize:d(a.oversize)},precise:h.precise}),p},k=function(i,r){var u=n(i);if(!r)return u.offset();t.translator.resetPosition(u);var e=u.offset(),f=r.h&&r.v?r:a(u,r),o=function(n){return r.precise?n:Math.round(n)};return t.translator.move(u,{left:f.h.location-o(e.left),top:f.v.location-o(e.top)}),f},v;n.extend(t,{calculatePosition:a,position:k}),n.extend(t.position,{inverseAlign:e,normalizeAlign:f}),v=function(){var t=n("
").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 t=n.makeArray(arguments);n.each(t,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=s.transform?e(n):v(n);return{left:t.x,top:t.y}},a=function(n,t){if(!s.transform){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]==="%"},v=function(n){var t,i;try{var r=n.css("top"),f=n.css("left"),e=n.position();n.css({transform:"none",top:0,left:0}),u(n),i=n.position(),t={x:e.left-i.left||parseInt(f)||0,y:e.top-i.top||parseInt(r)||0},n.css({top:r,left:f})}catch(o){t={x:0,y:0}}return t},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])},y(n,i)}return i},y=function(n,t){n.data(f,t)},u=function(n){n.removeData(f)},p=function(n){n.css({left:0,top:0,transform:"none"}),u(n)},w=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:w,getTranslate:e,getTranslateCss:o,resetPosition:p}}(jQuery,DevExpress),function(n,t){var s=1e3/60,r=function(n){return this.setTimeout(n,s)},u=function(n){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,this._proxiedStepCore=n.proxy(this._stepCore,this)},start:function(){this._stopped=!1,this._finished=!1,this._stepCore()},stop:function(){this._stopped=!0,t.cancelAnimationFrame(this._stepAnimationFrame)},_stepCore:function(){if(this._isStopped()){this._stop();return}if(this._isFinished()){this._finished=!0,this._complete();return}this._step(),this._stepAnimationFrame=t.requestAnimationFrame.call(window,this._proxiedStepCore)},_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,f=t.support,p=f.transitionEndEventName+".dxFX",w="dxremove.dxFX",it=/cubic-bezier\((\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\)/,rt=/^([+-])=(.*)/i,e="dxAnimData",o="dxAnimQueue",r="transform",ut={initAnimation:function(n,t){n.css({transitionProperty:"none"}),typeof t.from=="string"?n.addClass(t.from):y(n,t.from)},animate:function(t,i){var r=this,u=n.Deferred(),f=i.cleanupWhen;return i.transitionAnimation={finish:function(){r._finishTransition(t,i),f?n.when(u,f).always(function(){r._cleanup(t,i)}):r._cleanup(t,i),u.resolveWith(t,[i,t])}},this._startAnimation(t,i),this._completeAnimationCallback(t,i).done(function(){i.transitionAnimation.finish()}),i.duration||i.transitionAnimation.finish(),u.promise()},_completeAnimationCallback:function(i,r){var h=n.now()+r.delay,u=n.Deferred(),f=n.Deferred(),e=n.Deferred(),o,s;r.transitionAnimation.cleanup=function(){clearTimeout(o),clearTimeout(s)};i.one(p,function(){n.now()-h>=r.duration&&f.reject()}).off(w).on(w,function(){r.transitionAnimation.cleanup()});return s=setTimeout(function(){o=setTimeout(function(){e.reject()},r.duration+r.delay+t.fx._simulatedTransitionEndDelay),n.when(f,e).fail(n.proxy(function(){u.resolve()},this))}),u.promise()},_startAnimation:function(n,t){n.css("transform"),n.css({transitionProperty:"all",transitionDelay:t.delay+"ms",transitionDuration:t.duration+"ms",transitionTimingFunction:t.easing}),typeof t.to=="string"?n.addClass(t.to):t.to&&y(n,t.to)},_finishTransition:function(n){n.css("transition","none")},_cleanup:function(n,t){n.off(p),t.transitionAnimation.cleanup(),typeof t.from=="string"&&(n.removeClass(t.from),n.removeClass(t.to))},stop:function(t,i,r){i&&(r?i.transitionAnimation.finish():(n.isPlainObject(i.to)&&n.each(i.to,function(n){t.css(n,t.css(n))}),this._finishTransition(t,i),this._cleanup(t,i)))}},b={initAnimation:function(n,t){y(n,t.from)},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:ht(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}},ft={initAnimation:function(){},animate:function(){return n.Deferred().resolve().promise()}},et={transition:f.transition?ut:b,frame:b,noAnimation:ft},ot=function(n){n=n||{};var t=n.strategy||"transition";return n.type!=="css"||f.transition||(t="noAnimation"),et[t]},st={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)"},ht=function(t){var i,r,u;return(t=st[t]||t,i=t.match(it),!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)},k=function(i,r,u,f){n.each(["from","to"],function(){if(!u(i[this]))throw t.Error("E0010",r,this,f);})},d=function(t,i){return k(t,i,function(t){return n.isPlainObject(t)},"a plain object")},ct=function(n,t){return k(n,t,function(n){return typeof n=="string"},"a string")},lt={setup:function(){}},at={validateConfig:function(n){ct(n,"css")},setup:function(){}},vt={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"}},s={validateConfig:function(n){d(n,"slide")},setup:function(t,i){var e=u.locate(t),r;i.type!=="slide"&&(r=i.type==="slideIn"?i.from:i.to,r.position=n.extend({of:window},vt[i.direction]),v(t,r)),this._setUpConfig(e,i.from),this._setUpConfig(e,i.to),u.clearCache(t),f.transform||t.css("position")!=="static"||t.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 e={left:t.left,top:t.top},o,s;delete t.left,delete t.top,o=this._getRelativeValue(e.left),o!==i?e.left=o+n.left:t.left=0,o=this._getRelativeValue(e.top),o!==i?e.top=o+n.top:t.top=0,s={x:0,y:0},f.transform?s={x:e.left,y:e.top}:(t.left=e.left,t.top=e.top),t[r]=u.getTranslateCss(s)},_getRelativeValue:function(n){var t;if(typeof n=="string"&&(t=rt.exec(n)))return parseInt(t[1]+"1")*t[2]}},h={setup:function(t,i){var u=i.from,f=n.isPlainObject(u)?i.skipElementInitialStyles?0:t.css("opacity"):String(u),r;switch(i.type){case"fadeIn":r=1;break;case"fadeOut":r=0;break;default:r=String(i.to)}i.from={visibility:"visible",opacity:f},i.to={opacity:r}}},yt={validateConfig:function(n){d(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+")"}},g={custom:lt,slide:s,slideIn:s,slideOut:s,fade:h,fadeIn:h,fadeOut:h,pop:yt,css:at},pt=function(n){var i=g[n.type];if(!i)throw t.Error("E0011",n.type);return i},wt={type:"custom",from:{},to:{},duration:400,start:n.noop,complete:n.noop,easing:"ease",delay:0},bt={duration:400,easing:"ease",delay:0},kt=function(){var r=this,i=r.$element,n=r.config;v(i,n.from),v(i,n.to),r.configurator.setup(i,n),i.data(e,r),t.fx.off&&(n.duration=0),r.strategy.initAnimation(i,n),n.start&&n.start.apply(this,[i,n])},dt=function(){var t=this,i=t.$element,n=t.config;return t.strategy.animate(i,n).done(function(){i.removeData(e),n.complete&&n.complete.apply(this,[i,n]),t.deferred.resolveWith(this,[i,n])})},nt=function(t,i){var f=i.type==="css"?bt:wt,r=n.extend(!0,{},f,i),u=pt(r),e=ot(r),o={$element:t,config:r,configurator:u,strategy:e,setup:kt,start:dt,deferred:n.Deferred()};return n.isFunction(u.validateConfig)&&u.validateConfig(r),o},gt=function(t,i){var r=n(t),u;return r.length?(u=nt(r,i),ni(r,u),u.deferred.promise()):n.Deferred().resolve().promise()},ni=function(n,t){var i=c(n);ti(n,i),i.push(t),l(n)||a(n,i)},c=function(n){return n.data(o)||[]},ti=function(n,t){n.data(o,t)},tt=function(n){n.removeData(o)},l=function(n){return!!n.data(e)},a=function(n,t){if(t=c(n),t.length){var i=t.shift();t.length===0&&tt(n),ii(i).done(function(){a(n)})}},ii=function(n){return n.setup(),n.start()},v=function(i,r){if(r&&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}},y=function(t,i){n.each(i,function(n,i){t.css(n,i)})},ri=function(t,i){var r=n(t),f=c(r),u;n.each(f,function(n,t){t.config.duration=0}),l(r)||a(r,f),u=r.data(e),u&&u.strategy.stop(r,u.config,i),r.removeData(e),tt(r)};t.fx={off:!1,animationTypes:g,animate:gt,createAnimation:nt,isAnimating:l,stop:ri,_simulatedTransitionEndDelay:100}}(jQuery,DevExpress),function(n,t){var f=window.location,u="dxproxy.devexpress.com:8000",e=f.host===u,r={},o=function(){return f.pathname.split("/")[1]},s={isProxyUsed:function(){return e},formatProxyUrl:function(n){var i=t.parseUrl(n),f,e;return/^(localhost$|127\.)/i.test(i.hostname)?(f=u+"/"+o()+"_"+i.port,r[f]=i.hostname+":"+i.port,e="http://"+f+i.pathname+i.search):n},formatLocalUrl:function(n){var i,t;if(n.indexOf(u)<0)return n;i=n;for(t in r)if(r.hasOwnProperty(t)&&n.indexOf(t)>=0){i=n.replace(t,r[t]);break}return i}};t._proxyUrlFormatter=s}(jQuery,DevExpress),function(n,t){function e(n){return/^(localhost$|127\.)/i.test(n)}var r=window.location,u=r.protocol==="ms-appx:",f=e(r.hostname),o=t.EndpointSelector=function(n){this.config=n};o.prototype={urlFor:function(n){var i=this.config[n];if(!i)throw t.Error("E0006");return t._proxyUrlFormatter.isProxyUsed()?t._proxyUrlFormatter.formatProxyUrl(i.local):i.production&&(u&&!Debug.debuggerEnabled||!u&&!f)?i.production:i.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",shortyear:"yy"},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;rr)&&(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||e0&&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 r=t.DateTimeFormat[i.toLowerCase()];return(i=i.toLowerCase(),i==="quarterandyear"&&(r=this._getQuarterString(n,r)+" yyyy"),i==="quarter")?this._getQuarterString(n,r):i==="longdatelongtime"?this._formatDate(n,"longdate")+" "+this._formatDate(n,"longtime"):i==="shortdateshorttime"?this._formatDate(n,"shortDate")+" "+this._formatDate(n,"shortTime"):Globalize.format(n,r)},format:function(t,i,u){if(n.isPlainObject(i)&&i.format){if(i.dateType)return this._formatDateEx(t,i);if(r.isNumber(t)&&isFinite(t))return this._formatNumberEx(t,i)}return this._format(t,i,u)},_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;w0?"+":"")+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=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,i){var f=this,c=i.format,u=i.dateType,h=Globalize.culture().calendars.standard,o,s,e;if(c=c.toLowerCase(),!r.isDefined(t))return"";if(u!=="num"||c==="dayofweek")switch(c){case"monthyear":return f._formatDate(t,"monthandyear");case"quarteryear":return f._getQuarterString(t,"QQ")+" "+t.getFullYear();case"daymonthyear":return f._formatDate(t,u+"Date");case"datehour":return o=new Date(t.getTime()),o.setMinutes(0),e=u==="timeOnly"?"":f._formatDate(t,u+"Date"),u==="timeOnly"?f._formatDate(o,"shorttime"):e+" "+f._formatDate(o,"shorttime");case"datehourminute":return e=u==="timeOnly"?"":f._formatDate(t,u+"Date"),u==="timeOnly"?f._formatDate(t,"shorttime"):e+" "+f._formatDate(t,"shorttime");case"datehourminutesecond":return e=u==="timeOnly"?"":f._formatDate(t,u+"Date"),u==="timeOnly"?f._formatDate(t,"longtime"):e+" "+f._formatDate(t,"longtime");case"year":return e=t.toString(),u==="abbr"?e.slice(2,4):e;case"dateyear":return u==="abbr"?f._formatDate(t,"shortyear"):f._formatDate(t,"year");case"quarter":return r.stringFormat(f.defaultQuarterFormat,t.toString());case"month":return s=t-1,u==="abbr"?h.months.namesAbbr[s]:h.months.names[s];case"hour":return u==="long"?(o=new Date,o.setHours(t),o.setMinutes(0),f._formatDate(o,"shorttime")):t.toString();case"dayofweek":return(s=r.isString(t)?n.inArray(t,["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]):t,u!=="num")?u==="abbr"?h.days.namesAbbr[s]:h.days.names[s]:((s-h.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;if(n.length>1)for(t=r.getDatesDifferences(n[0],n[1]),i=1;i0,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 t=0,r=e.length,i;ti?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.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,u,e;return n=f(n,360),t=f(t,100),i=f(i,100),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||ni||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:/^#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})$/,process:function(n){return[parseInt(n[1],16),parseInt(n[2],16),parseInt(n[3],16)]}},{re:/^#([a-f0-9]{1})([a-f0-9]{1})([a-f0-9]{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(r).is("iframe")||(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","dxCollectionWidget-noDataText":"No data to display","validation-required":"Required","validation-required-formatted":"{0} is required","validation-numeric":"Value must be a number","validation-numeric-formatted":"{0} must be a number","validation-range":"Value is out of range","validation-range-formatted":"{0} is out of range","validation-stringLength":"The length of the value is not correct","validation-stringLength-formatted":"The length of {0} is not correct","validation-custom":"Value is invalid","validation-custom-formatted":"{0} is invalid","validation-compare":"Values do not match","validation-compare-formatted":"{0} does not match","validation-pattern":"Value does not match pattern","validation-pattern-formatted":"{0} does not match pattern","validation-email":"Email is invalid","validation-email-formatted":"{0} is invalid","validation-mask":"Value is invalid"}}),Globalize.addCultureInfo("default",{messages:{"dxLookup-searchPlaceholder":"Minimum character number: {0}","dxList-pullingDownText":"Pull down to refresh...","dxList-pulledDownText":"Release to refresh...","dxList-refreshingText":"Refreshing...","dxList-pageLoadingText":"Loading...","dxList-nextButtonText":"More","dxList-selectAll":"Select All","dxListEditDecorator-delete":"Delete","dxListEditDecorator-more":"More","dxScrollView-pullingDownText":"Pull down to refresh...","dxScrollView-pulledDownText":"Release to refresh...","dxScrollView-refreshingText":"Refreshing...","dxScrollView-reachBottomText":"Loading...","dxDateBox-simulatedDataPickerTitleTime":"Select time","dxDateBox-simulatedDataPickerTitleDate":"Select date","dxDateBox-simulatedDataPickerTitleDateTime":"Select date and time","dxDateBox-validation-datetime":"Value must be a date or time","dxFileUploader-selectFile":"Select file","dxFileUploader-dropFile":"or Drop file here","dxFileUploader-bytes":"bytes","dxFileUploader-kb":"kb","dxFileUploader-Mb":"Mb","dxFileUploader-Gb":"Gb","dxFileUploader-upload":"Upload","dxFileUploader-uploaded":"Uploaded","dxFileUploader-readyToUpload":"Ready to upload","dxFileUploader-uploadFailedMessage":"Upload failed","dxRangeSlider-ariaFrom":"From {0}","dxRangeSlider-ariaTill":"Till {0}","dxSwitch-onText":"ON","dxSwitch-offText":"OFF"}}),Globalize.addCultureInfo("default",{messages:{"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-applyFilterText":"Apply filter","dxDataGrid-trueText":"true","dxDataGrid-falseText":"false","dxDataGrid-sortingAscendingText":"Sort Ascending","dxDataGrid-sortingDescendingText":"Sort Descending","dxDataGrid-sortingClearText":"Clear Sorting","dxDataGrid-editingSaveAllChanges":"Save changes","dxDataGrid-editingCancelAllChanges":"Discard changes","dxDataGrid-editingAddRow":"Add a row","dxDataGrid-summaryMin":"Min: {0}","dxDataGrid-summaryMinOtherColumn":"Min of {1} is {0}","dxDataGrid-summaryMax":"Max: {0}","dxDataGrid-summaryMaxOtherColumn":"Max of {1} is {0}","dxDataGrid-summaryAvg":"Avg: {0}","dxDataGrid-summaryAvgOtherColumn":"Avg of {1} is {0}","dxDataGrid-summarySum":"Sum: {0}","dxDataGrid-summarySumOtherColumn":"Sum of {1} is {0}","dxDataGrid-summaryCount":"Count: {0}","dxDataGrid-columnFixingFix":"Fix","dxDataGrid-columnFixingUnfix":"Unfix","dxDataGrid-columnFixingLeftPosition":"To the left","dxDataGrid-columnFixingRightPosition":"To the right","dxDataGrid-exportTo":"Export to","dxDataGrid-exportToExcel":"Export to Excel file","dxDataGrid-excelFormat":"Excel file","dxDataGrid-selectedRows":"Selected rows","dxDataGrid-headerFilterEmptyValue":"(Blanks)","dxDataGrid-headerFilterOK":"OK","dxDataGrid-headerFilterCancel":"Cancel","dxDataGrid-ariaColumn":"Column","dxDataGrid-ariaValue":"Value","dxDataGrid-ariaFilterCell":"Filter cell","dxDataGrid-ariaCollapse":"Collapse","dxDataGrid-ariaExpand":"Expand","dxDataGrid-ariaDataGrid":"Data grid","dxDataGrid-ariaSearchInGrid":"Search in data grid","dxDataGrid-ariaSelectAll":"Select all","dxDataGrid-ariaSelectRow":"Select row","dxPager-infoText":"Page {0} of {1}","dxPivotGrid-grandTotal":"Grand Total","dxPivotGrid-total":"{0} Total","dxPivotGrid-fieldChooserTitle":"Field Chooser","dxPivotGrid-showFieldChooser":"Show Field Chooser","dxPivotGrid-expandAll":"Expand All","dxPivotGrid-collapseAll":"Collapse All","dxPivotGrid-sortColumnBySummary":'Sort "{0}" by This Column',"dxPivotGrid-sortRowBySummary":'Sort "{0}" by This Row',"dxPivotGrid-removeAllSorting":"Remove All Sorting","dxPivotGrid-rowFields":"Row Fields","dxPivotGrid-columnFields":"Column Fields","dxPivotGrid-dataFields":"Data Fields","dxPivotGrid-filterFields":"Filter Fields","dxPivotGrid-allFields":"All Fields","dxScheduler-editorLabelTitle":"Subject","dxScheduler-editorLabelStartDate":"Start Date","dxScheduler-editorLabelEndDate":"End Date","dxScheduler-editorLabelDescription":"Description","dxScheduler-editorLabelRecurrence":"Repeat","dxScheduler-openAppointment":"Open appointment","dxScheduler-recurrenceNever":"Never","dxScheduler-recurrenceDaily":"Daily","dxScheduler-recurrenceWeekly":"Weekly","dxScheduler-recurrenceMonthly":"Monthly","dxScheduler-recurrenceYearly":"Yearly","dxScheduler-recurrenceEvery":"Every","dxScheduler-recurrenceEnd":"End repeat","dxScheduler-recurrenceAfter":"After","dxScheduler-recurrenceOn":"On","dxScheduler-recurrenceRepeatDaily":"day(s)","dxScheduler-recurrenceRepeatWeekly":"week(s)","dxScheduler-recurrenceRepeatMonthly":"month(s)","dxScheduler-recurrenceRepeatYearly":"year(s)","dxScheduler-switcherDay":"Day","dxScheduler-switcherWeek":"Week","dxScheduler-switcherWorkWeek":"Work week","dxScheduler-switcherMonth":"Month","dxScheduler-recurrenceRepeatOnDate":"on date","dxScheduler-recurrenceRepeatCount":"occurrence(s)","dxScheduler-allDay":"All day","dxCalendar-todayButtonText":"Today","dxCalendar-ariaWidgetName":"Calendar","dxColorView-ariaRed":"Red","dxColorView-ariaGreen":"Green","dxColorView-ariaBlue":"Blue","dxColorView-ariaAlpha":"Transparency","dxColorView-ariaHex":"Color code"}}),function(n,t){var r=t.utils,u={required:{validate:function(t,i){return r.isDefined(t)?t===!1?!1:(t=String(t),(i.trim||!r.isDefined(i.trim))&&(t=n.trim(t)),t!==""):!1},defaultMessage:function(){return Globalize.localize("validation-required")},defaultFormattedMessage:function(){return Globalize.localize("validation-required-formatted")}},numeric:{validate:function(t,i){return u.required.validate(t,{})?i.useCultureSettings&&r.isString(t)?!isNaN(Globalize.parseFloat(t)):n.isNumeric(t):!0},defaultMessage:function(){return Globalize.localize("validation-numeric")},defaultFormattedMessage:function(){return Globalize.localize("validation-numeric-formatted")}},range:{validate:function(n,i){if(!u.required.validate(n,{}))return!0;var s=u.numeric.validate(n,i),h=r.isDefined(n),f=s?parseFloat(n):h&&n.valueOf(),o=i.min,e=i.max;if(!(s||r.isDate(n))&&!h)return!1;if(r.isDefined(o))return r.isDefined(e)?f>=o&&f<=e:f>=o;if(r.isDefined(e))return f<=e;throw t.Error("E0101");return!1},defaultMessage:function(){return Globalize.localize("validation-range")},defaultFormattedMessage:function(){return Globalize.localize("validation-range-formatted")}},stringLength:{validate:function(t,i){return t=String(t),(i.trim||!r.isDefined(i.trim))&&(t=n.trim(t)),u.range.validate(t.length,n.extend({},i))},defaultMessage:function(){return Globalize.localize("validation-stringLength")},defaultFormattedMessage:function(){return Globalize.localize("validation-stringLength-formatted")}},custom:{validate:function(n,t){return t.validationCallback({value:n,validator:t.validator,rule:t})},defaultMessage:function(){return Globalize.localize("validation-custom")},defaultFormattedMessage:function(){return Globalize.localize("validation-custom-formatted")}},compare:{validate:function(i,r){if(!r.comparisonTarget)throw t.Error("E0102");n.extend(r,{reevaluate:!0});var u=r.comparisonTarget(),f=r.comparisonType||"==";switch(f){case"==":return i==u;case"!=":return i!=u;case"===":return i===u;case"!==":return i!==u;case">":return i>u;case">=":return i>=u;case"<":return i-1&&this.groups.splice(r,1),i},_setDefaultMessage:function(n,t,i){r.isDefined(n.message)||(n.message=t.defaultFormattedMessage&&r.isDefined(i)?t.defaultFormattedMessage().replace(/\{0\}/,i):t.defaultMessage())},validate:function(i,f,e){var o={name:e,value:i,brokenRule:null,isValid:!0,validationRules:f},s=this;return n.each(f||[],function(n,f){var h=u[f.type],c;if(h){if(r.isDefined(f.isValid)&&f.value===i&&!f.reevaluate)return f.isValid?!0:(o.isValid=!1,o.brokenRule=f,!1);if(f.value=i,c=h.validate(i,f),f.isValid=c,c||(o.isValid=!1,s._setDefaultMessage(f,h,e),o.brokenRule=f),!f.isValid)return!1}else throw t.Error("E0100");}),o},registerValidatorInGroup:function(i,r){var u=t.validationEngine.addGroup(i);n.inArray(r,u.validators)<0&&u.validators.push(r)},removeRegistredValidator:function(i,r){var u=t.validationEngine.getGroupConfig(i),f=u&&u.validators,e=n.inArray(r,f);e>-1&&f.splice(e,1)},validateGroup:function(n){var i=t.validationEngine.getGroupConfig(n);if(!i)throw t.Error("E0110");return i.validate()},resetGroup:function(n){var i=t.validationEngine.getGroupConfig(n);if(!i)throw t.Error("E0110");return i.reset()}},t.validationEngine.initGroups()}(jQuery,DevExpress),function(n,t){n.extend(t.ERROR_MESSAGES,{E4000:"[DevExpress.data]: {0}",E4001:"Unknown aggregating function is detected: '{0}'",E4002:"Unsupported OData protocol version is used",E4003:"Unknown filter operation is used: {0}",E4004:"The thenby() method is called before the sortby() method",E4005:"Store requires a key expression for this operation",E4006:"ArrayStore 'data' option must be an array",E4007:"Compound keys cannot be auto-generated",E4008:"Attempt to insert an item with the a duplicated key",E4009:"Data item with specified key value cannot be found",E4010:"CustomStore does not support creating queries",E4011:"Custom Store method is not implemented or is not a function: {0}",E4012:"Custom Store method returns an invalid value: {0}",E4013:"Local Store requires the 'name' configuration option is specified",E4014:"Unknown key type is detected: {0}",E4015:"Unknown entity name or alias is used: {0}",E4016:"The compileSetter(expr) method is called with 'self' passed as a parameter",E4017:"Keys cannot be modified"})}(jQuery,DevExpress),function(n,t,i){function v(i){function s(t){var i,o=r(t);return e(o)?(i={},u(i,v({data:o,criteria:f,itemsGetter:r,itemsSetter:u})),n.extend({},t,i)):t}function h(n){return e(r(n))}function e(t){return n.isArray(t)&&t.length>0}var r=i.itemsGetter,u=i.itemsSetter,f=i.criteria,o=i.data;return t.data.query(o).select(s).filter([[h],"or",f]).toArray()}var o=function(n){return n.replace(/\[/g,".").replace(/\]/g,"")},y=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,i,r,u){if(i==="this")throw new t.Error("E4016");var f=n[i];u.unwrapObservables&&s(f)?f(r):n[i]=r},l=function(n){return n=n||{},n.unwrapObservables=n.unwrapObservables!==i?n.unwrapObservables:!0,n},u=function(n,t){return t.unwrapObservables?y(n):n},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 p(t);t=o(t);var i=t.split(".");return function(t,r){r=l(r);var f=u(t,r);return n.each(i,function(){if(!f)return!1;var t=u(f[this],r);n.isFunction(t)&&!r.functionsAsIs&&(t=t.call(f)),f=t}),f}},p=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>2,(e&3)<<4|u>>4,isNaN(u)?64:(u&15)<<2|f>>6,isNaN(f)?64:f&63],o).join("")}return r},tt=function(n){for(var i=[],t,r=0;r>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},it=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}}(),rt={count:{seed:0,step:function(n){return 1+n}},sum:{seed:0,step:function(n,t){return n+t}},min:{step:function(n,t){return tn?t:n}},avg:{seed:[0,0],step:function(n,t){return[n[0]+t,n[1]+1]},finalize:function(n){return n[1]?n[0]/n[1]:NaN}}},e=t.data={utils:{compileGetter:f,compileSetter:w,normalizeBinaryCriterion:b,normalizeSortingInfo:k,toComparable:r,keysEqual:d,errorMessageFromXhr:it,aggregators:rt,multiLevelSearch:v},Guid:a,base64_encode:nt,queryImpl:{},queryAdapters:{},query:function(){var t=n.isArray(arguments[0])?"array":"remote";return e.queryImpl[t].apply(this,arguments)},errorHandler:null,_errorHandler:function(n){e.errorHandler&&e.errorHandler(n)}}}(jQuery,DevExpress),function(n,t){function e(n){return n===u.aggregators.count}function f(n){var f=u.compileGetter(n.selector),i=n.aggregator;if(typeof i=="string"&&(i=r.utils.aggregators[i],!i))throw t.Error("E4001",n.aggregator);return{selector:f,aggregator:i}}var r=t.data,u=r.utils;r.AggregateCalculator=t.Class.inherit({ctor:function(t){this._data=t.data,this._groupLevel=t.groupLevel||0,this._totalAggregates=n.map(t.totalAggregates||[],f),this._groupAggregates=n.map(t.groupAggregates||[],f),this._totals=[]},calculate:function(){this._totalAggregates.length&&this._calculateTotals(0,{items:this._data}),this._groupAggregates.length&&this._groupLevel>0&&this._calculateGroups(0,{items:this._data})},totalAggregates:function(){return this._totals},_aggregate:function(n,t,i){for(var u,r=0;r0&&(i=i||this._seed(this._groupAggregates),this._calculateGroups(n+1,t.items[r],i))},_seed:function(t){return n.map(t,function(t){var r=t.aggregator,i="seed"in r?r.seed:NaN;return n.isArray(i)?[i]:i})},_accumulate:function(n,t,i,r){var u=t.selector(r),f=t.aggregator;i[n]=i[n]!==i[n]?u:f.step(i[n],u)},_finalize:function(t,i){return n.map(t,function(n,t){var r=n.aggregator.finalize;return r?r(i[t]):i[t]})}})}(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+1o)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 s=f(n[0]),h=n[1],i=n[2];i=r(i);switch(h.toLowerCase()){case"=":return o(s,i);case"<>":return o(s,i,!0);case">":return function(n){return r(s(n))>i};case"<":return function(n){return r(s(n))=":return function(n){return r(s(n))>=i};case"<=":return function(n){return r(s(n))<=i};case"startswith":return function(n){return r(e(s(n))).indexOf(i)===0};case"endswith":return function(n){var t=r(e(s(n))),u=e(i);return t.length-1};case"notcontains":return function(n){return r(e(s(n))).indexOf(i)===-1}}throw t.Error("E4003",h);};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-1?"&":"?")+y),o&&(v.$format="json"),{url:s,data:v,dataType:o?"jsonp":"json",jsonp:o&&"$callback",type:h,timeout:r.timeout,headers:r.headers,contentType:p,accepts:{json:[a,"text/plain"].join()},xhrFields:{withCredentials:u.withCredentials}}},l=function(t,i,r){var u=n.Deferred(),f=tt(t,i,r);return n.ajax(f).always(function(n,i){var e=ut(n,i),s=e.error,h=e.data,o=e.nextUrl,c;s?u.reject(s):r.countOnly?u.resolve(e.count):o?(g(o)||(o=nt(f.url,o)),l(t,{url:o},r).fail(u.reject).done(function(n){u.resolve(h.concat(n))})):(isFinite(e.count)&&(c={totalCount:e.count}),u.resolve(h,c))}),u.promise()},it=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},rt=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=it(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},ut=function(t,i){var u=rt(t,i),r;return u?{error:u}:n.isPlainObject(t)?(r="d"in t&&(s.isArray(t.d)||s.isObject(t.d))?ft(t,i):et(t,i),v(r),r):{data:t}},ft=function(n){var t=n.d;return h(t)?(t=t,h(t.results)&&(t=t.results),{data:t,nextUrl:n.d.__next,count:parseInt(n.d.__count,10)}):{error:Error("Malformed or unsupported JSON response received")}},et=function(n){var t=n;return h(t.value)&&(t=t.value),{data:t,nextUrl:n["@odata.nextLink"],count:parseInt(n["@odata.count"],10)}},r=t.Class.inherit({ctor:function(n){this._value=n},valueOf:function(){return this._value}}),v=function(t){n.each(t,function(n,i){if(i!==null&&typeof i=="object")"results"in i&&(t[n]=i.results),v(t[n]);else if(typeof i=="string")if(w.test(i))t[n]=new f(i);else if(i.match(b)){var r=new Date(Number(RegExp.$1)+RegExp.$2*6e4);t[n]=new Date(r.valueOf()+r.getTimezoneOffset()*6e4)}else k.test(i)&&(t[n]=new Date(d(t[n]).valueOf()))})},ot=function(n){return"datetime'"+c(n,!0,!0)+"'"},st=function(n){return"'"+n.replace(/'/g,"''")+"'"},u=function(n){return n instanceof r?n.valueOf():n.replace(/\./g,"/")},ht=function(n){return n instanceof Date?c(n,!1,!1):n instanceof f?n.valueOf():y(n)},y=function(n){return n instanceof Date?ot(n):n instanceof f?"guid'"+n+"'":n instanceof r?n.valueOf():typeof n=="string"?st(n):String(n)},o=function(n,i){switch(i){case 2:case 3:return y(n);case 4:return ht(n);default:throw t.Error("E4002");}},ct=function(t,i){if(n.isPlainObject(t)){var r=[];return n.each(t,function(n,t){r.push(u(n)+"="+o(t,i))}),r.join()}return o(t,i)},lt={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 f?n:new f(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")}},at=function(){var i=function(n){return function(t,i,r){r.push(t," ",n," ",i)}},r=function(n,t){return function(i,r,u){t?u.push(n,"(",r,",",i,")"):u.push(n,"(",i,",",r,")")}},f={"=":i("eq"),"<>":i("ne"),">":i("gt"),">=":i("ge"),"<":i("lt"),"<=":i("le"),startswith:r("startswith"),endswith:r("endswith")},h=n.extend({},f,{contains:r("substringof",!0),notcontains:r("not substringof",!0)}),c=n.extend({},f,{contains:r("contains"),notcontains:r("not contains")}),l=function(n,i,r){n=e.utils.normalizeBinaryCriterion(n);var f=n[1],l=r===4?c:h,s=l[f.toLowerCase()];if(!s)throw t.Error("E4003",f);s(u(n[0]),o(n[2],r),i)},a=function(t,i,r){var u=!1;n.each(t,function(){n.isArray(this)?(u&&i.push(" and "),i.push("("),s(this,i,r),i.push(")"),u=!0):(i.push(/and|&/i.test(this)?" and ":" or "),u=!1)})},s=function(t,i,r){n.isArray(t[0])?a(t,i,r):l(t,i,r)};return function(n,t){var i=[];return s(n,i,t),i.join("")}}(),vt=function(t){var h=[],r=[],f,o,s,e,c=function(){return o||s!==i},a=function(t){for(var i=0;i1&&(t=t.select(function(t){return n.extend({},t,{items:f(r.query(t.items),i.slice(1)).toArray()})})),t}function o(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 s=t.Class,u=t.abstract,r=t.data,e=r.utils.normalizeSortingInfo,h=["loading","loaded","modifying","modified","inserting","inserted","updating","updated","removing","removed"];r.utils.multiLevelGroup=f,r.utils.arrangeSortingInfo=o,r.Store=s.inherit({ctor:function(i){var r=this;i=i||{},n.each(h,function(){var u=this,f=r[u]=n.Callbacks(),o=f.add,e;if(f.add=function(){return t.log("W0003","Store",u,"14.2","Use the '"+u+"' event instead"),o.apply(u,arguments)},u in i&&f.add(i[u]),e="on"+u.charAt(0).toUpperCase()+u.slice(1),e in i)r.on(u,i[e])}),this._key=i.key,this._errorHandler=i.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 t.Error("E4005");},load:function(n){var t=this;return n=n||{},this.fireEvent("loading",[n]),this.loading.fire(n),this._loadImpl(n).done(function(i,r){t.fireEvent("loaded",[i,n]),t.loaded.fire(i,r)})},_loadImpl:function(t){var s=t.filter,u=t.sort,h=t.select,r=t.group,c=t.skip,l=t.take,i=this.createQuery(t);return s&&(i=i.filter(s)),r&&(r=e(r)),(u||r)&&(u=e(u||[]),r&&(u=o(r,u)),n.each(u,function(n){i=i[n?"thenBy":"sortBy"](this.selector,this.desc)})),h&&(i=i.select(h)),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.fireEvent("modifying"),t.fireEvent("inserting",[n]),t.modifying.fire(),t.inserting.fire(n),t._addFailHandlers(t._insertImpl(n).done(function(n,i){t.fireEvent("inserted",[n,i]),t.fireEvent("modified"),t.inserted.fire(n,i),t.modified.fire()}))},_insertImpl:u,update:function(n,t){var i=this;return i.fireEvent("modifying"),i.fireEvent("updating",[n,t]),i.modifying.fire(),i.updating.fire(n,t),i._addFailHandlers(i._updateImpl(n,t).done(function(n,t){i.fireEvent("updated",[n,t]),i.fireEvent("modified"),i.updated.fire(n,t),i.modified.fire()}))},_updateImpl:u,remove:function(n){var t=this;return t.fireEvent("modifying"),t.fireEvent("removing",[n]),t.modifying.fire(),t.removing.fire(n),t._addFailHandlers(t._removeImpl(n).done(function(n){t.fireEvent("removed",[n]),t.fireEvent("modified"),t.removed.fire(n),t.modified.fire()}))},_removeImpl:u,_addFailHandlers:function(n){return n.fail(this._errorHandler,r._errorHandler)}}).include(t.EventsMixin)}(jQuery,DevExpress),function(n,t,i){var r=t.data,e=r.Guid,u=function(){var t=n.Deferred();return t.resolve.apply(t,arguments).promise()},f=function(){var t=n.Deferred();return t.reject.apply(t,arguments).promise()};r.ArrayStore=r.Store.inherit({ctor:function(i){i=n.isArray(i)?{data:i}:i||{},this.callBase(i);var r=i.data;if(r&&!n.isArray(r))throw t.Error("E4006");this._array=r||[]},createQuery:function(){return r.query(this._array,{errorHandler:this._errorHandler})},_byKeyImpl:function(n){var i=this._indexByKey(n);return i===-1?f(t.Error("E4009")):u(this._array[i])},_insertImpl:function(r){var h=this.key(),o,s;if(s=n.isPlainObject(r)?n.extend({},r):r,h){if(o=this.keyOf(s),o===i||typeof o=="object"&&n.isEmptyObject(o)){if(n.isArray(h))throw t.Error("E4007");o=s[h]=String(new e)}else if(this._array[this._indexByKey(o)]!==i)return f(t.Error("E4008"))}else o=s;return this._array.push(s),u(r,o)},_updateImpl:function(n,i){var e,o;if(this.key()){if(this.keyOf(i)&&!r.utils.keysEqual(this.key(),n,this.keyOf(i)))return f(t.Error("E4017"));if(o=this._indexByKey(n),o<0)return f(t.Error("E4009"));e=this._array[o]}else e=n;return t.utils.deepExtendArraySafe(e,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;t1&&(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.fireEvent("loadingChanged",[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.fireEvent("changed"),t.changed.fire()})},loadSingle:function(t,i){function h(t){t===null||typeof t=="undefined"||n.isArray(t)&&t.length<1?f.reject():f.resolve(e._transformLoadedData(t)[0])}var e=this,f=n.Deferred().fail(function(){e.fireEvent("loadError",arguments),e.loadError.fire.apply(e,arguments)}),s=this.key(),o=this._store,u=this._createStoreLoadOptions();return arguments.length<2&&(i=t,t=s),delete u.skip,delete u.group,delete u.refresh,delete u.pageIndex,delete u.searchString,t===s||o instanceof r.CustomStore?o.byKey(i,u).done(h).fail(f.reject):(u.take=1,u.filter=u.filter?[u.filter,[t,i]]:[t,i],o.load(u).done(h).fail(f.reject)),f.promise()},load:function(){function s(){arguments[0]!=="canceled"&&(e.fireEvent("loadError",arguments),e.loadError.fire.apply(e.loadError,arguments))}function o(){return e._disposed?i:e._loadFromStore(f,r)}var e=this,r=n.Deferred(),f;return(this._scheduleLoadCallbacks(r),this._scheduleChangedCallbacks(r),f=this._createLoadOptions(),this.fireEvent("customizeStoreLoadOptions",[f]),!u(f.operationId,r))?r.promise():(this._loadQueue.add(function(){return typeof f.delay=="number"?e._delayedLoadTask=t.utils.executeAsync(o,f.delay):o(),r.promise()}),r.promise({loadOperationId:f.operationId}).fail(s))},reload:function(){var n,t=this._userData;for(n in t)t.hasOwnProperty(n)&&delete t[n];return this._totalCount=-1,this._isLoaded=!1,this.load()},cancel:function(n){e.add(n)},_addSearchOptions:function(n){this._disposed||(this.store()._useDefaultSearch?this._addSearchFilter(n):(n.searchOperation=this._searchOperation,n.searchValue=this._searchValue,n.searchExpr=this._searchExpr))},_createStoreLoadOptions:function(){var t=n.extend({},this._storeLoadOptions);return this._addSearchOptions(t),this._paginate&&this._pageSize&&(t.skip=this._pageIndex*this._pageSize,t.take=this._pageSize),t.userData=this._userData,t},_createLoadOptions:function(){return{operationId:a(),storeLoadOptions:this._createStoreLoadOptions()}},_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(t,i){function f(f,e){function o(){var o;o=n.extend({data:f,extra:e},t),r.fireEvent("customizeLoadResult",[o]),u(t.operationId,i)&&r._processStoreLoadResult(o,i)}r._disposed||o()}var r=this;return u(t.operationId,i)?this.store().load(t.storeLoadOptions).done(f).fail(i.reject):i.promise()},_processStoreLoadResult:function(t,i){function s(){return u(t.operationId,i)?(r._isLoaded=!0,r._totalCount=isFinite(f.totalCount)?f.totalCount:-1,i.resolve(e,f)):i}function h(){r.store().totalCount(o).done(function(n){f.totalCount=n,s()}).fail(function(){})}var r=this,e=t.data,f=t.extra,o=t.storeLoadOptions;r._disposed||(e=r._transformLoadedData(e),n.isPlainObject(f)||(f={}),r._items=e,(!e.length||!r._paginate||r._pageSize&&e.length0};return n.each(i,function(t,i){var u=i.device||{},o;o=n.isFunction(u)?u(f):e(f,u),o&&n.extend(r,i.options)}),r},_isInitialOptionValue:function(n){var t=this._customRules&&this._convertRulesToOptions(this._customRules).hasOwnProperty(n),i=this.option(n)===this._initialOptions[n];return!t&&i},_setOptionsByReference:function(){this._optionsByReference={}},_getOptionsByReference:function(){return this._optionsByReference},ctor:function(i){i=i||{},this._options={},this._cachedGetters={},this._updateLockCount=0,this._optionChangedCallbacks=i._optionChangedCallbacks||n.Callbacks(),this._disposingCallbacks=i._disposingCallbacks||n.Callbacks(),this.optionChanged=n.Callbacks(),this.disposing=n.Callbacks(),n.each(["optionChanged","disposing"],n.proxy(function(n,i){var r=this,u=this[i].add;this[i].add=function(){return t.log("W0003",r.NAME,i,"14.2","Use the '"+i+"' event instead"),u.apply(this,arguments)}},this)),this.beginUpdate();try{this._suppressDeprecatedWarnings(),this._setOptionsByReference(),this._setDeprecatedOptions(),this._setOptionAliases(),this._setDefaultOptions(),this._setOptionsByDevice(i.defaultOptionsRules),this._resumeDeprecatedWarnings(),this._initialOptions=n.extend({},this.option()),this._initOptions(i)}finally{this.endUpdate()}},_initOptions:function(n){this.option(n)},_optionValuesEqual:function(n,t,i){if(t=r.toComparable(t,!0),i=r.toComparable(i,!0),t&&i&&t.jquery&&i.jquery)return i.is(t);var u=t!==t,f=i!==i;return u&&f?!0:t===null||typeof t!="object"?t===i:!1},_init:function(){this._createOptionChangedAction(),this._createDisposingAction();this.on("optionChanged",function(n){this._optionChangedCallbacks.fireWith(this,[n])});this.on("disposing",function(n){this._disposingCallbacks.fireWith(this,[n])})},_createOptionChangedAction:function(){this._optionChangedAction=this._createActionByOption("onOptionChanged",{excludeValidators:["disabled","readOnly"]})},_createDisposingAction:function(){this._disposingAction=this._createActionByOption("onDisposing",{excludeValidators:["disabled","readOnly"]})},_optionChanged:function(n){switch(n.name){case"onOptionChanged":this._createOptionChangedAction();break;case"onDisposing":this._createDisposingAction()}},_dispose:function(){this.optionChanged.empty(),this.disposing.fireWith(this).empty(),this._disposingAction(),this._disposeEvents(),this._disposed=!0},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,this._createActionByOption("onInitialized")()}}},_logWarningIfDeprecated:function(){},_suppressDeprecatedWarnings:function(){},_resumeDeprecatedWarnings:function(){},_notifyOptionChanged:function(t,i,r){var u=this;this._initialized&&n.each(u._getOptionAliasesByName(t).concat([t]),function(t,f){var e={name:f.split(/[.\[]/)[0],fullName:f,value:i,previousValue:r};u.optionChanged.fireWith(u,[e.name,i,r]),u._optionChangedAction(n.extend({},e)),u._disposed||u._optionChanged(e)})},initialOption:function(n){var t=this._initialOptions;return t[n]},_defaultActionConfig:function(){return{context:this,component:this}},_defaultActionArgs:function(){return{component:this}},_createAction:function(i,r){var u=this,f=new t.Action(i,n.extend(r,u._defaultActionConfig()));return function(t){return arguments.length||(t={}),n.isPlainObject(t)||(t={actionValue:t}),f.execute.call(f,n.extend(t,u._defaultActionArgs()))}},_createActionByOption:function(i,r){var u,e;if(r=r||{},typeof i!="string")throw t.Error("E0008");if(u=/^on(\w+)/.exec(i),u){var o=f.camelize(u[1]),s=r.afterExecute||n.noop,h=this;r.afterExecute=function(n){return h.fireEvent(o,n.args),s.apply(this,arguments)}}return this._suppressDeprecatedWarnings(),e=this._createAction(this.option(i),r),this._resumeDeprecatedWarnings(),e},option:function(t){var i=this,u=t,s=arguments[1],f=this._getOptionAliases(),e=function(n){return n&&(i._logWarningIfDeprecated(n),f[n]&&(n=f[n])),n},o=function(n,t){return i._cachedGetters[n]||(i._cachedGetters[n]=r.compileGetter(n)),i._cachedGetters[n](i._options,{functionsAsIs:!0,unwrapObservables:t})};if(arguments.length<2&&n.type(u)!=="object")return u=e(u),o(u);typeof u=="string"&&(t={},t[u]=s),i.beginUpdate();try{n.each(t,function(n,t){n=e(n);var u=o(n,!1);i._optionValuesEqual(n,u,t)||(r.compileSetter(n)(i._options,t,{functionsAsIs:!0,merge:!i._getOptionsByReference()[n],unwrapObservables:!1}),i._notifyOptionChanged(n,t,u))})}finally{i.endUpdate()}}}).include(t.EventsMixin);n.extend(t,{Component:e})}(jQuery,DevExpress),function(n,t){var f={forward:" dx-forward",backward:" dx-backward",none:" dx-no-direction",undefined:" dx-no-direction"},i=function(t,i,r,u){i.each(function(){var i=e(r,u);i&&t.push({$element:n(this),animationConfig:i})})},e=function(i,r){var u,e,f,o;return typeof i=="string"&&(e=i,i=t.animationPresets.getPreset(e)),i?n.isFunction(i[r])?u=i[r]:(f="dx-"+r,u=n.extend({skipElementInitialStyles:!0},i),u.type&&u.type!=="css"||(o=u.extraCssClasses?" "+u.extraCssClasses:"",u.type="css",u.from=u.from||f+o,u.to=u.to||f+"-active")):u=undefined,u},r=function(i,r){var u=[];return n.each(i,function(i,f){var o=f.animationConfig,c=f.$element,h,e;n.isPlainObject(o)?(e=s(o,r),e.staggerDelay=e.staggerDelay||0,e.delay=i*e.staggerDelay+e.delay,h=t.fx.createAnimation(c,e)):n.isFunction(o)&&(h=o(c,r)),h.setup(),u.push({$element:c,animationInstance:h})}),u},o=function(n){for(var t=0;t").append(s.render(this._compiledTemplate,t)).contents()}}),a=function(n){if(g(n)){if(s=l[n],!s)throw t.Error("E0020",n);}else s=n},u=function(n,t){l[n]=t},e=function(t){return t=n(t),t.length&&t[0].nodeName.toLowerCase()==="script"||(t=n("
").append(t)),t.html()},y,b,k,d,c;u("default",{compile:function(n){return t.utils.normalizeTemplateElement(n)},render:function(n){return n.clone()}}),u("jquery-tmpl",{compile:function(i){return n("
").append(t.utils.normalizeTemplateElement(i))},render:function(n,t){return n.tmpl(t)}}),u("jsrender",{compile:function(t){return n.templates(e(t))},render:function(n,t){return n.render(t)}}),u("mustache",{compile:function(n){return Mustache.compile(e(n))},render:function(n,t){return n(t)}}),u("hogan",{compile:function(n){return Hogan.compile(e(n))},render:function(n,t){return n.render(t)}}),u("underscore",{compile:function(n){return _.template(e(n))},render:function(n,t){return n(t)}}),u("handlebars",{compile:function(n){return Handlebars.compile(e(n))},render:function(n,t){return n(t)}}),u("doT",{compile:function(n){return doT.template(e(n))},render:function(n,t){return n(t)}}),a("default");var tt=f.TemplateBase.inherit({ctor:function(t,i){this.callBase(n("
"),i),this._render=t},_renderCore:function(n,i,r){return t.utils.normalizeTemplateElement(this._render(n,i,r))}}),v=new(f.TemplateProviderBase.inherit({createTemplate:function(n,t){return new f.Template(n,t)},_templatesForWidget:function(t){var u=r[t]||{},i={};return n.each(u,function(n,t){i[n]=new f.DefaultTemplate(function(){var i=t.apply(this,arguments);return n!=="itemFrame"&&(i=i.contents()),i},v)}),i}})),r={},h=function(){return n()},it="dx-item-content-placeholder";r.CollectionWidget={item:function(t){var i=n("
");return n.isPlainObject(t)?(t.text&&i.text(t.text),t.html&&i.html(t.html)):i.html(String(t)),i},itemFrame:function(t){var r=n("
"),u;return r.toggleClass("dx-state-invisible",t.visible!==i&&!t.visible),r.toggleClass("dx-state-disabled",!!t.disabled),u=n("
").addClass(it),r.append(u),r}},y="dx-button-text",r.dxButton={content:function(t){var r=n("
"),u=o.getImageContainer(t.icon),f=t.text?n("").text(t.text).addClass(y):i;return r.append(u).append(f),r}};var rt="dx-list-item-badge-container",ut="dx-list-item-badge",p="dx-badge",ft="dx-list-item-chevron-container",et="dx-list-item-chevron";r.dxList={item:function(t){var i=r.CollectionWidget.item(t),u;return t.key&&(u=n("
").text(t.key),u.appendTo(i)),i},itemFrame:function(t){var i=r.CollectionWidget.itemFrame(t),f,u,e,o;return t.badge&&(f=n("
").addClass(rt),u=n("
").addClass(ut).addClass(p),u.text(t.badge),f.append(u).appendTo(i)),t.showChevron&&(e=n("
").addClass(ft),o=n("
").addClass(et),e.append(o).appendTo(i)),i},group:function(t){var i=n("
");return n.isPlainObject(t)?t.key&&i.text(t.key):i.html(String(t)),i}},r.dxDropDownMenu={item:r.dxList.item},r.dxDropDownList={item:r.dxList.item},r.dxRadioGroup={item:r.CollectionWidget.item},r.dxScheduler={item:function(i){var u=r.CollectionWidget.item(i),f=n("
").addClass("dx-scheduler-appointment-content-details");return i.startDate&&n("").text(Globalize.format(t.utils.makeDate(i.startDate),"t")).appendTo(f),i.endDate&&n("").text(" - "+Globalize.format(t.utils.makeDate(i.endDate),"t")).appendTo(f),f.appendTo(u),i.recurrenceRule&&n("").addClass("dx-scheduler-appointment-recurrence-icon").appendTo(u),u}},r.dxOverlay={content:h},r.dxSlideOutView={menu:h,content:h},r.dxSlideOut={menuItem:r.dxList.item,menuGroup:r.dxList.group,content:h},r.dxAccordion={title:function(t){var i=n("
"),u=t.icon,f=t.iconSrc,r=o.getImageContainer(u||f);return n.isPlainObject(t)?t.title&&i.text(t.title):i.html(String(t)),r&&r.prependTo(i),i},item:r.CollectionWidget.item},r.dxActionSheet={item:function(t){return n("
").append(n("
").dxButton(n.extend({onClick:t.click},t)))}},r.dxGallery={item:function(t){var i=n("
");return t.imageSrc?n("").attr("src",t.imageSrc).appendTo(i):n("").attr("src",String(t)).appendTo(i),i}};var w="dx-menu-item-text",ot="dx-menu-item-popout",st="dx-menu-item-popout-container";r.dxMenuBase={item:function(t){var i=n("
"),e=t.icon,s=t.iconSrc,u=o.getImageContainer(e||s),r,h,f;return u&&u.appendTo(i),n.isPlainObject(t)&&t.text?r=n("").addClass(w).text(t.text):n.isPlainObject(t)||(r=n("").addClass(w).html(String(t))),i.append(r),t.items&&t.items.length>0&&(f=n("").addClass(st).appendTo(i),h=n("
").addClass(ot).appendTo(f)),i}},b="dx-panorama-item-title",r.dxPanorama={itemFrame:function(t){var i=r.CollectionWidget.itemFrame(t),u;return t.title&&(u=n("
").addClass(b).text(t.title),i.prepend(u)),i}},r.dxPivotTabs={item:function(t){var r=n("
"),i;return i=n.isPlainObject(t)?n("").text(t.title):n("").text(String(t)),r.html(i),r}},r.dxPivot={title:r.dxPivotTabs.item,content:h},k="dx-tab-text",r.dxTabs={item:function(t){var i=r.CollectionWidget.item(t);if(t.html)return i;var f=t.icon,e=t.iconSrc,u=o.getImageContainer(f||e);return t.html||i.wrapInner(n("").addClass(k)),u&&u.prependTo(i),i},itemFrame:function(t){var i=n(),u=r.CollectionWidget.itemFrame(t);return t.badge&&(i=n("
",{"class":"dx-tabs-item-badge dx-badge"}).text(t.badge)),u.append(i),u}},r.dxTabPanel={item:r.CollectionWidget.item,title:function(t){var i=t,u;return n.isPlainObject(t)&&(i=n.extend({},t,{text:t.title})),u=r.dxTabs.item(i)}},d="dx-navbar-item-badge",r.dxNavBar={itemFrame:function(t){var u=r.CollectionWidget.itemFrame(t),i;return t.badge&&(i=n("
").addClass(d).addClass(p),i.text(t.badge),i.appendTo(u)),u}},r.dxToolbar={item:function(i){var u=r.CollectionWidget.item(i),f=i.widget;if(f){var e=n("
").appendTo(u),o=t.inflector.camelize("dx-"+f),s=i.options||{};e[o](s)}else i.text&&u.wrapInner("
");return u},menuItem:r.dxList.item,actionSheetItem:r.dxActionSheet.item},r.dxTreeView={item:function(t){var i=n("
"),u=t.icon,f=t.iconSrc,r=o.getImageContainer(u||f);return t.html?i.html(t.html):(r&&r.appendTo(i),n("").text(t.text).appendTo(i)),i}},c=function(t){return n("
").append(n("
").dxToolbar({items:t}))},r.dxPopup={title:c,bottom:c},r.dxLookup={title:r.dxPopup.title,group:r.dxList.group},r.dxTagBox={tag:function(t){return n("
").append(n("").text(t))}},r.dxCalendar={cell:function(t){return n("
").text(t.text||String(t))}},n.extend(f,{TemplateProvider:v,Template:nt,DefaultTemplate:tt,setTemplateEngine:a})}(jQuery,DevExpress),function(n,t,i){var s,h,u,c,l,a;if(t.support.hasKo){var r=window.ko,f=t.ui,e="dxKoLocks",y="dxKoCreation",p=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}}},o=[],w=function(t,i){i.subclassOf(f.Editor)&&o.push(t),r.bindingHandlers[t]={init:function(u,o){var s=n(u),l=n.Callbacks(),h={templateProvider:f.KoTemplateProvider,_optionChangedCallbacks:l},c={},v=function(n,i){var f=s.data(t),u=s.data(e),o=r.unwrap(i);if(r.isWriteableObservable(i)&&(c[n]=i),f){if(u.locked(n))return;u.obtain(n);try{f.option(n,o)}finally{u.release(n)}}else h[n]=o},w=function(n){var t=n.fullName,u=n.value,r,i;if(t in c&&(r=this._$element,i=r.data(e),!i.locked(t))){i.obtain(t);try{c[t](u)}finally{i.release(t)}}},b=function(){l.add(w),s.data(y,!0).data(e,new p)[t](h),h=null},a=function(t,i){var f;r.computed(function(){v(t,i),f=r.unwrap(i)},null,{disposeWhenNodeIsRemoved:u}),n.isPlainObject(f)&&n.each(f,function(n,i){a(t+"."+n,i)})};return r.computed(function(){var i=s.data(t);i&&i.beginUpdate(),n.each(r.unwrap(o()),function(n,t){a(n,t)}),i?i.endUpdate():b()},null,{disposeWhenNodeIsRemoved:u}),{controlsDescendantBindings:i.subclassOf(f.Widget)}}},t==="dxValidator"&&(r.bindingHandlers.dxValidator.after=o)};t.DOMComponent.redefine({_modelByElement:function(n){if(n.length)return r.dataFor(n.get(0))}}),s=t.registerComponent,h=function(n,t,i){i=i||t,s.apply(this,arguments),w(n,i)},t.registerComponent=h,u=function(n,t){var i=function(){r.cleanNode(this)};t?n.each(i):n.find("*").each(i)},c=n.fn.empty,n.fn.empty=function(){return u(this,!1),c.apply(this,arguments)},l=n.fn.remove,n.fn.remove=function(n,t){if(!t){var i=this;n&&(i=i.filter(n)),u(i,!0)}return l.call(this,n,t)},a=n.fn.html,n.fn.html=function(n){return typeof n=="string"&&u(this,!1),a.apply(this,arguments)},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()})}},r.bindingHandlers.dxControlsDescendantBindings={init:function(n,t){return{controlsDescendantBindings:r.unwrap(t())}}};var b=function(i,r,u,f){var e=n.Deferred();return i.removeClass("dx-pending-rendering-manual"),i.addClass("dx-pending-rendering-active"),r.showLoadIndicator&&r.showLoadIndicatorImmediately!==!0&&v(i),t.utils.executeAsync(function(){d(i,r,u,f).done(function(){var n={element:i};r.onShown&&r.onShown.apply(u,[n]),e.resolve(n)}).fail(function(){e.rejectWith(e,arguments)})}),e.promise()},v=function(t){var i=n("
").dxLoadIndicator({visible:!0}).addClass("dx-defered-rendering-load-indicator");t.append(i)},k=function(n){var t=n.getBoundingClientRect();return t.bottom>=0&&t.right>=0&&t.top<=(window.innerHeight||document.documentElement.clientHeight)&&t.left<=(window.innerWidth||document.documentElement.clientWidth)},d=function(i,u,f,e){var o,c=e.createChildContext(f),h={element:i},s;return i.find(".dx-defered-rendering-load-indicator").remove(),r.applyBindingsToDescendants(c,i[0]),u._renderedDeferred.resolve(h),u.onRendered&&u.onRendered.apply(f,[h]),i.children().removeClass("dx-invisible-while-pending-rendering"),t.utils.triggerShownEvent(i.children()),i.removeClass("dx-pending-rendering"),i.removeClass("dx-pending-rendering-active"),u.animation?(s=new t.TransitionExecutor,u.staggerItemSelector?(i.find(u.staggerItemSelector).each(function(){k(this)&&s.enter(n(this),u.animation)}),o=n.when(o,s.start())):(s.enter(i,u.animation||"content-rendered"),o=s.start())):o=n.Deferred().resolve().promise(),o},g=function(n,t){n.addClass("dx-defer-rendering dx-pending-rendering dx-loadindicator-container"),n.data("dx-rendered-promise",t._renderedDeferred.promise()),t.hiddenUntilRendered&&n.children().addClass("dx-invisible-while-pending-rendering"),t.showLoadIndicator&&t.showLoadIndicatorImmediately&&v(n)},nt=function(n,t,i,r){var u=function(){return b(n,t,i,r)};t.renderWhen?t.renderWhen.done(u):(n.data("dx-render-delegate",u),n.addClass("dx-pending-rendering-manual"))};r.bindingHandlers.dxDeferRendering={init:function(t,u,f,e,o){var h=n(t),s=r.unwrap(u()),c=r.unwrap(s.showLoadIndicatorImmediately),l=r.unwrap(s.hiddenUntilRendered),a={showLoadIndicator:r.unwrap(s.showLoadIndicator)||!1,showLoadIndicatorImmediately:c!==i?c:!0,hiddenUntilRendered:l!==i?l:!0,renderWhen:r.unwrap(s.renderWhen),animation:r.unwrap(s.animation),staggerItemSelector:r.unwrap(s.staggerItemSelector),onRendered:r.unwrap(s.onRendered),onShown:r.unwrap(s.onShown),_renderedDeferred:n.Deferred()};return g(h,a),nt(h,a,e,o),{controlsDescendantBindings:!0}}},r.bindingHandlers.dxIcon={init:function(n,t){var o=r.utils.unwrapObservable(t())||{},e=DevExpress.utils.getImageContainer(o);r.virtualElements.emptyNode(n),e&&r.virtualElements.prepend(n,e.get(0))},update:function(n,t){var o=r.utils.unwrapObservable(t())||{},e=DevExpress.utils.getImageContainer(o);r.virtualElements.emptyNode(n),e&&r.virtualElements.prepend(n,e.get(0))}},r.virtualElements.allowedBindings.dxIcon=!0}}(jQuery,DevExpress),function(n,t,i){if(t.support.hasNg){var r=t.ui,s=t.data.utils.compileSetter,u=t.data.utils.compileGetter,a="dxItemAlias",h="scopeValue",v=["rendering"],f=t.ng.module,c=function(n,t){t.$root.$$phase?n(t):t.$apply(function(){n(t)})},e=t.Class.inherit({ctor:function(t){this._$element=t.$element,this._$templates=t.$templates,this._componentClass=t.componentClass,this._scope=t.scope,this._parse=t.parse,this._compile=t.compile,this._ngOptions=this._normalizeOptions(t.ngOptions),this._itemAlias=t.itemAlias,this._componentDisposing=n.Callbacks(),t.ngOptions.data&&this._initDataScope(t.ngOptions.data)},_normalizeOptions:function(t){var i=n.extend({},t);return t.bindingOptions&&n.each(t.bindingOptions,function(t,r){n.type(r)==="string"&&(i.bindingOptions[t]={dataPath:r})}),i},initComponentWithBindings:function(){this._initComponentBindings(),this._initComponent(this._scope),this._shownEventTimer=setTimeout(n.proxy(function(){t.utils.triggerShownEvent(this._$element)},this))},_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=new this._componentClass(this._$element,this._evalOptions(n))},_initComponentBindings:function(){var t=this,r={};t._disposingCallbacks=n.Callbacks(),t._ngOptions.bindingOptions&&n.each(t._ngOptions.bindingOptions,function(u,f){var c=u.search(/\[|\./),o=c>-1?u.substring(0,c):u,l,e,s=f.dataPath,a=!0,v=!1,y,h;f.deep!==i&&(v=a=!!f.deep),r[o]||(r[o]={}),r[o][u]=s,y=function(n,i){n!==i&&(t._component.option(u,n),h())},h=function(){var i=n.isArray(t._scope.$eval(s))&&!v?"$watchCollection":"$watch";l!==i&&(e&&e(),e=t._scope[i](s,y,a),l=i)},h(),t._disposingCallbacks.add(function(){e(),t._componentDisposing.fire()})}),t._optionChangedCallbacks=n.Callbacks().add(function(i){var f=i.name,e=i.value;t._scope.$root.$$phase!=="$digest"&&r&&r[f]&&c(function(){n.each(r[f],function(n,i){var o=u(n),r={};r[f]=e,t._parse(i).assign(t._scope,o(r))})},t._scope)}),t._disposingCallbacks.add(function(){clearTimeout(t._shownEventTimer)})},_compilerByTemplate:function(t){var r=this,u=this._getScopeItemsPath();return function(f,e){var s=n(t).clone(),o,h;if(f!==i){h=f.$id,o=h?f:r._createScopeWithData(f);s.on("$destroy",function(){var n=!o.$parent;n||o.$destroy()})}else o=r._scope;return u&&r._synchronizeScopes(o,u,e),c(r._compile(s),o),s}},_getScopeItemsPath:function(){if(this._componentClass.subclassOf(r.CollectionWidget)&&this._ngOptions.bindingOptions&&this._ngOptions.bindingOptions.items)return this._ngOptions.bindingOptions.items.dataPath},_createScopeWithData:function(t){var i=this._scope.$new(!0);return t=this._enshureDataIsPlainObject(t),n.extend(i,t),i},_synchronizeScopes:function(t,i,r){var f=this,e=u(i+"["+r+"]")(this._scope);e=f._enshureDataIsPlainObject(e),n.each(e,function(n){f._synchronizeScopeField({parentScope:f._scope,childScope:t,fieldPath:n,parentPrefix:i,itemIndex:r})})},_synchronizeScopeField:function(n){var r=n.parentScope,l=n.childScope,t=n.fieldPath,a=n.parentPrefix,f=n.itemIndex,p=t===(this._itemAlias||h)?"":"."+t,v=f!==i,e=[a],o,y,c;v&&e.push("[",f,"]"),e.push(p),o=e.join(""),y=r.$watch(o,function(n,i){n!==i&&s(t)(l,n)}),c=l.$watch(t,function(n,t){if(n!==t){if(v&&!u(a)(r)[f]){c();return}s(o)(r,n)}}),this._componentDisposing.add([y,c])},_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.dataPath)}),i._optionChangedCallbacks=this._optionChangedCallbacks,i._disposingCallbacks=this._disposingCallbacks,i.templateProvider=r.NgTemplateProvider,i.templateCompiler=n.proxy(function(n){return this._compilerByTemplate(n)},this),i},_enshureDataIsPlainObject:function(t){var i;return n.isPlainObject(t)?i=t:(i={},i[h]=t),this._itemAlias&&(i[this._itemAlias]=t),i}});e=e.inherit({ctor:function(n){this.callBase.apply(this,arguments),this._componentName=n.componentName,this._ngModel=n.ngModel,this._ngModelController=n.ngModelController},_isNgModelRequired:function(){return this._componentClass.subclassOf(r.Editor)&&this._ngModel},_initComponentBindings:function(){this.callBase.apply(this,arguments),this._initNgModelBinding()},_initNgModelBinding:function(){if(this._isNgModelRequired()){var n=this,t=this._scope.$watch(this._ngModel,function(t,i){t!==i&&n._component.option(n._ngModelOption(),t)});n._optionChangedCallbacks.add(function(t){t.name===n._ngModelOption()&&n._ngModelController.$setViewValue(t.value)}),this._disposingCallbacks.add(function(){t()})}},_ngModelOption:function(){return n.inArray(this._componentName,["dxFileUploader","dxTagBox"])>-1?"values":"value"},_evalOptions:function(){if(!this._isNgModelRequired())return this.callBase.apply(this,arguments);var n=this.callBase.apply(this,arguments);return n[this._ngModelOption()]=this._parse(this._ngModel)(this._scope),n}});var y=t.DOMComponent.inherit({_modelByElement:function(n){if(n.length)return n.scope()},_createActionByOption:function(t,i){var r=this.callBase.apply(this,arguments),u,f;return i&&n.inArray(i.category,v)>-1?r:(u=this,f=function(){var t=this,n=u._modelByElement(u.element()),i=arguments;return!n||!n.$root||n.$root.$$phase?r.apply(t,i):n.$apply(function(){return r.apply(t,i)})},f)},_createComponent:function(t,i,r){return this.callBase(t,i,n.extend({templateCompiler:this.option("templateCompiler")},r))}}),o={},p=t.registerComponent,l=function(n,t,i){i=i||t,p.apply(this,arguments),o[n]||w(n),o[n]=i},w=function(n){var t=n!=="dxValidator"?1:10;f.directive(n,["$compile","$parse",function(i,u){return{restrict:"A",require:"^?ngModel",priority:t,compile:function(t){var f=o[n],s=f.subclassOf(r.Widget)?t.contents().detach():null;return function(t,r,o,h){r.append(s);var c=new e({componentClass:f,componentName:n,compile:i,parse:u,$element:r,scope:t,ngOptions:o[n]?t.$eval(o[n]):{},ngModel:o.ngModel,ngModelController:h,itemAlias:o[a]});c.initComponentWithBindings()}}}}])};f.filter("dxGlobalize",function(){return function(n,t){return Globalize.format(n,t)}}),f.directive("dxIcon",["$compile",function(n){return{restrict:"E",link:function(i,r){var f=t.utils.getImageContainer(i.icon||i.iconSrc),e;f&&(e=n(f.get(0))(i),r.replaceWith(e))}}}]),t.registerComponent=l,l("DOMComponent",y)}}(jQuery,DevExpress),function(n,t,i){var a,y,p,h;if(t.support.hasKo){var f=window.ko,o=t.ui,s=o.TemplateBase.inherit({ctor:function(i){this.callBase.apply(this,arguments),this._template=n("
").append(t.utils.normalizeTemplateElement(i)),this._registerKoTemplate()},_registerKoTemplate:function(){var n=this._template.get(0);new f.templateSources.anonymousTemplate(n).nodes(n)},_prepareDataForContainer:function(n,t){var u=n,e,r;return t.length&&(e=t.get(0),n=n!==i?n:f.dataFor(e)||{},r=f.contextFor(e),u=r?n===r.$data?r:r.createChildContext(n):n),u},_renderCore:function(t){var i=n("
"),r;return f.renderTemplate(this._template.get(0),t,null,i.get(0)),r=i.contents().detach(),i.remove(),r},dispose:function(){this.callBase(),this._template.remove()}}),c=new(o.TemplateProviderBase.inherit({createTemplate:function(n,t){return new s(n,t)},applyTemplate:function(n,t){f.applyBindings(t,n)},_templatesForWidget:function(i){var f=r[i]||{},u={};return n.each(f,function(n,i){var r=t.utils.createMarkupFromString(i());n!=="itemFrame"&&(r=r.contents()),u[n]=new s(r,c)}),u}})),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+">":"")},l={css:"{ 'dx-state-disabled': $data.disabled, 'dx-state-invisible': !($data.visible === undefined || ko.unwrap($data.visible)) }"},r={},e=function(){return""};r.CollectionWidget={itemFrame:function(){var n=[u("div",l,!1),"
<\/div>","<\/div>"];return n.join("")},item:function(){var n=u("div",{html:"html"}),t=u("div",{text:"text"}),i=u("div",{text:"String($data)"}),r=["
","",n,"","",t,"","",i,"","<\/div>"];return r.join("")}},a="dx-button-text",r.dxButton={content:function(){var n=u("span",{text:"$data.text",css:"{ '"+a+"' : !!$data.text }"}),t=["
","",n,"<\/div>"];return t.join("")}};var w="dx-list-item-badge-container",b="dx-list-item-badge",v="dx-badge",k="dx-list-item-chevron-container",d="dx-list-item-chevron";r.dxList={item:function(){var n=r.CollectionWidget.item(),t=u("div",{text:"key"});return n=[n.substring(0,n.length-6),""+t+"","<\/div>"],n.join("")},itemFrame:function(){var n=r.CollectionWidget.itemFrame(),t=u("div",{text:"badge"},!0,'class="'+b+" "+v+'"'),i=[n.substring(0,n.length-6),"",'
',t,"<\/div>","","",'
','
<\/div>',"<\/div>","","<\/div>"];return i.join("")},group:function(){var n=u("div",{text:"key"}),t=u("div",{text:"String($data)"}),i=["
","",n,"","",t,"","<\/div>"];return i.join("")}},r.dxDropDownMenu={item:r.dxList.item},r.dxDropDownList={item:r.dxList.item},r.dxRadioGroup={item:r.CollectionWidget.item},r.dxScheduler={item:function(){var n=r.CollectionWidget.item(),t=u("strong",{text:"Globalize.format(DevExpress.utils.makeDate($data.startDate), 't')"}),i=u("strong",{text:"' - ' + Globalize.format(DevExpress.utils.makeDate($data.endDate), 't')"});return n=[n.substring(0,n.length-6),"
",""+t+"",""+i+"","<\/div>","<\/span>","<\/div>"],n.join("")}},r.dxOverlay={content:e},r.dxSlideOutView={menu:e,content:e},r.dxSlideOut={menuItem:r.dxList.item,menuGroup:r.dxList.group,content:e},r.dxAccordion={title:function(){var n=u("span",{text:"$.isPlainObject($data) ? $data.title : String($data)"}),t=["
","",n,"<\/div>"];return t.join("")},item:r.CollectionWidget.item},r.dxResponsiveBox={item:r.CollectionWidget.item},r.dxPivotTabs={item:function(){var n=u("span",{text:"title"}),t=u("div",{text:"String($data)"}),i=["
","",n,"","",t,"","<\/div>"];return i.join("")}},r.dxPivot={title:r.dxPivotTabs.item,content:e},y="dx-panorama-item-title",r.dxPanorama={itemFrame:function(){var n=r.CollectionWidget.itemFrame(),i=u("div",{text:"title"},!0,'class="'+y+'"'),t=n.indexOf(">")+1;return n=[n.substring(0,t),"",i,"",n.substring(t,n.length)],n.join("")}},r.dxActionSheet={item:function(){return["
",u("div",{dxButton:"{ text: $data.text, onClick: $data.clickAction || $data.onClick, type: $data.type, disabled: !!ko.unwrap($data.disabled) }"}),"<\/div>"].join("")}},r.dxToolbar={item:function(){var i=r.CollectionWidget.item();return i=[i.substring(0,i.length-6),""],n.each(["button","tabs","dropDownMenu"],function(){var r=t.inflector.camelize(["dx","-",this].join("")),n={};n[r]="$data.options",i.push("",u("div",n),"")}),i.push(""),i.join("")},menuItem:r.dxList.item,actionSheetItem:r.dxActionSheet.item},r.dxGallery={item:function(){var n=r.CollectionWidget.item(),t=u("div",{text:"String($data)"}),i=u("img",{attr:"{ src: String($data) }"},!1);return n=[n.substring(0,n.length-6).replace(t,i),"",u("img",{attr:"{ src: $data.imageSrc }"},!1),""].join("")}},r.dxTabs={item:function(){var n=r.CollectionWidget.item(),t=u("div",{text:"String($data)"}),i='<\/span>',f=u("div",{text:"text"}),e='<\/span>';return n=n.replace("","").replace(t,i).replace(f,e)},itemFrame:function(){var n=r.CollectionWidget.itemFrame(),t=u("div",{attr:"{ 'class': 'dx-tabs-item-badge dx-badge' }",text:"badge"}),i=[n.substring(0,n.length-6),"",t,"","<\/div>"];return i.join("")}},r.dxTabPanel={item:r.CollectionWidget.item,title:function(){var n=r.dxTabs.item();return n.replace(/\$data\.text/g,"$data.title")}},p="dx-navbar-item-badge",r.dxNavBar={itemFrame:function(){var n=r.CollectionWidget.itemFrame(),t=u("div",{text:"badge"},!0,'class="'+p+" "+v+'"'),i=[n.substring(0,n.length-6),"",t,"","<\/div>"];return i.join("")}},r.dxMenuBase={item:function(){var n=[u("div",l,!1)],t=u("span",{text:"text",css:"{ 'dx-menu-item-text': true }"}),i=u("span",{text:"String($data)",css:"{ 'dx-menu-item-text': true }"}),r="
<\/div><\/span>";return n.push("","",t,"","",i,"","",r,"","<\/div>"),n.join("")}},r.dxTreeView={item:function(){var n=[],t=u("span",{text:"text"},!0),i=u("div",{html:"html"});return n.push("
","",i,"","",""+t+"","<\/div>"),n.join("")}},r.dxCalendar={cell:function(){var n=u("span",{text:"text"}),t=u("span",{text:"String($data)"}),i=["
","",n,"","",t,"","<\/div>"];return i.join("")}},h=function(){return["
",u("div",{dxToolbar:"{ items: $data }"}),"<\/div>"].join("")},r.dxPopup={title:h,bottom:h},r.dxLookup={title:r.dxPopup.title,group:r.dxList.group},r.dxTagBox={tag:function(){return["
",u("span",{text:"$data"})].join("")}},n.extend(o,{KoTemplateProvider:c,KoTemplate:s})}}(jQuery,DevExpress),function(n,t){var l,v,s,y,h;if(t.support.hasNg){var e=t.ui,p="dx-template-wrapper",o=e.TemplateBase.inherit({ctor:function(){this.callBase.apply(this,arguments),this.setCompiler(this._getParentTemplateCompiler())},_getParentTemplateCompiler:function(){for(var i=null,t=this.owner();!i&&t;)i=n.isFunction(t.option)?t.option("templateCompiler"):null,t=n.isFunction(t.owner)?t.owner():null;return i},_renderCore:function(t,i,r){var u=this._compiledTemplate;return n.isFunction(u)?u(t,i,r):u},setCompiler:function(n){n&&(this._compiledTemplate=n(t.utils.normalizeTemplateElement(this._element)))}}),c=new(e.TemplateProviderBase.inherit({createTemplate:function(n,t){return new o(n,t)},getTemplates:function(t){var r=t.option("templateCompiler"),i=this.callBase.apply(this,arguments);return n.each(i,function(n,t){t.setCompiler(r)}),i},_templatesForWidget:function(i){var f=r[i]||{},u={};return n.each(f,function(n,i){var r=t.utils.createMarkupFromString(i());u[n]=new o(r.wrap(),c)}),u}})),u={container:function(){return n("
").addClass(p)},html:function(){return n("
").attr("ng-if","html").attr("ng-bind-html","html")},text:function(){return n("
").attr("ng-if","text").attr("ng-bind","text")},primitive:function(){return n("
").attr("ng-if","scopeValue").attr("ng-bind-html","'' + scopeValue")}},r={},f=function(){return n()};r.CollectionWidget={item:function(){return u.container().append(u.html()).append(u.text()).append(u.primitive())},itemFrame:function(){var t=n("
").attr("ng-class","{ 'dx-state-invisible': !visible && visible != undefined, 'dx-state-disabled': !!disabled }"),i=n("
").addClass("dx-item-content-placeholder");return t.append(i),t}},l="dx-button-text",r.dxButton={content:function(){var t=n("").attr("ng-bind","text").attr("ng-class","{ '"+l+"' : !!text }"),i=n("");return u.container().append(i).append(t).append(u.primitive())}};var w="dx-list-item-badge-container",b="dx-list-item-badge",a="dx-badge",k="dx-list-item-chevron-container",d="dx-list-item-chevron";r.dxList={item:function(){return r.CollectionWidget.item().append(n("
").attr("ng-if","key").attr("ng-bind","key"))},itemFrame:function(){var t=n("
").addClass(w).attr("ng-if","badge"),i=n("
").addClass(b).addClass(a).attr("ng-bind","badge"),u=n("
").addClass(k).attr("ng-if","showChevron"),f=n("
").addClass(d);return r.CollectionWidget.itemFrame().append(t.append(i)).append(u.append(f))},group:function(){var t=n("
").attr("ng-if","key").attr("ng-bind","key");return u.container().append(t).append(u.primitive())}},r.dxDropDownMenu={item:r.dxList.item},r.dxDropDownList={item:r.dxList.item},r.dxRadioGroup={item:r.CollectionWidget.item},r.dxScheduler={item:function(){var t=r.CollectionWidget.item(),i=n("
").addClass("dx-scheduler-appointment-content-details");return n("").attr("ng-if","startDate").text("{{startDate | date : 'shortTime' }}").appendTo(i),n("").attr("ng-if","endDate").text(" - {{endDate | date : 'shortTime' }}").appendTo(i),i.appendTo(t),n("").attr("ng-if","recurrenceRule").addClass("dx-scheduler-appointment-recurrence-icon").appendTo(t),t}},r.dxOverlay={content:f},r.dxSlideOutView={menu:f,content:f},r.dxSlideOut={menuItem:r.dxList.item,menuGroup:r.dxList.group,content:f},r.dxAccordion={title:function(){var t=n("").attr("ng-if","title").attr("ng-bind","title"),i=n("");return u.container().append(i).append(t).append(u.primitive())},content:r.CollectionWidget.item},r.dxPivotTabs={item:function(){return u.container().append(n("").attr("ng-if","title").attr("ng-bind","title")).append(u.primitive())}},r.dxPivot={title:r.dxPivotTabs.item,content:f},v="dx-panorama-item-title",r.dxPanorama={itemFrame:function(){return r.CollectionWidget.itemFrame().prepend(n("
").addClass(v).attr("ng-if","title").attr("ng-bind","title"))}},r.dxActionSheet={item:function(){return u.container().append(n("
").attr("dx-button","{ bindingOptions: { text: 'text', onClick: 'onClick', type: 'type', disabled: 'disabled' } }"))}},r.dxToolbar={item:function(){var i=r.CollectionWidget.item();return n.each(["button","tabs","dropDownMenu"],function(r,u){var f="dx-"+t.inflector.dasherize(this);n("
").attr("ng-if","widget === '"+u+"'").attr(f,"options").appendTo(i)}),i},menuItem:r.dxList.item,actionSheetItem:r.dxActionSheet.item},r.dxGallery={item:function(){return u.container().append(u.html()).append(u.text()).append(n("").attr("ng-if","scopeValue").attr("ng-src","{{'' + scopeValue}}")).append(n("").attr("ng-if","imageSrc").attr("ng-src","{{imageSrc}}"))}},s="dx-tab-text",r.dxTabs={item:function(){var t=u.container(),i=n("").addClass(s).attr("ng-bind","text").attr("ng-if","text"),r=n("");return t.append(u.html()).append(r).append(i).append(u.primitive().addClass(s))},itemFrame:function(){var t=n("
").addClass("dx-tabs-item-badge dx-badge").attr("ng-bind","badge").attr("ng-if","badge");return r.CollectionWidget.itemFrame().append(t)}},y="dx-navbar-item-badge",r.dxNavBar={itemFrame:function(){var t=n("
").addClass(y).addClass(a).attr("ng-if","badge").attr("ng-bind","badge");return r.CollectionWidget.itemFrame().append(t)}},r.dxMenuBase={item:function(){var t=u.container(),i=n("").attr("ng-if","text").addClass("dx-menu-item-text").attr("ng-bind","text"),r=n(""),f=n("").addClass("dx-menu-item-popout-container").attr("ng-if","items").append(n("
").addClass("dx-menu-item-popout"));return t.append(u.html()).append(r).append(i).append(f).append(u.primitive()).appendTo(t),t}},r.dxTreeView={item:function(){var t=u.container(),i=n("").attr("ng-bind","text"),r=n("");return t.append(u.html()).append(r).append(i).append(u.primitive()),t}},r.dxTabPanel={item:r.CollectionWidget.item,title:function(){var n=r.dxTabs.item();return n.find(".dx-tab-text").eq(0).attr("ng-bind","title").attr("ng-if","title"),n}},h=function(){return n("
").attr("dx-toolbar","{ bindingOptions: { items: 'scopeValue' } }")},r.dxPopup={title:h,bottom:h},r.dxLookup={title:r.dxPopup.title,group:r.dxList.group},r.dxTagBox={tag:function(){return n("
").append(n("").attr("ng-bind","scopeValue"))}},r.dxCalendar={cell:function(){var t=n("").attr("ng-if","text").attr("ng-bind","text");return u.container().append(t).append(u.primitive())}},n.extend(e,{NgTemplate:o,NgTemplateProvider:c})}}(jQuery,DevExpress),function(n,t){if(t.support.hasKo){var r=window.ko,u=t.Class.inherit({ctor:function(t,i){var u=this;u.target=t,u.validationRules=i.validationRules,u.name=i.name,u.isValid=r.observable(!0),u.validationError=r.observable(),n.each(this.validationRules,function(n,t){t.validator=u})},validate:function(){var n=DevExpress.validationEngine.validate(this.target(),this.validationRules,this.name);return this._applyValidationResult(n),n},reset:function(){this.target(null);var n={isValid:!0,brokenRule:null};return this._applyValidationResult(n),n},_applyValidationResult:function(n){n.validator=this,this.target.dxValidator.isValid(n.isValid),this.target.dxValidator.validationError(n.brokenRule),this.fireEvent("validated",[n])}}).include(t.EventsMixin);r.extenders.dxValidator=function(t,i){return t.dxValidator=new u(t,i),t.subscribe(n.proxy(t.dxValidator.validate,t.dxValidator)),t},DevExpress.validationEngine.registerModelForValidation=function(t){n.each(t,function(n,i){r.isObservable(i)&&i.dxValidator&&DevExpress.validationEngine.registerValidatorInGroup(t,i.dxValidator)})},DevExpress.validationEngine.validateModel=DevExpress.validationEngine.validateGroup}}(jQuery,DevExpress),function(n,t,i){function y(){var i=n("
<\/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 d(t,i){function f(){e=null,i()}var r,u;e=t,p()?f():(u=n.now(),r=setInterval(function(){var t=p(),i=!t&&n.now()-u>15e3;(t||i)&&(clearInterval(r),f())},10))}function p(){return!e||y()===e}function g(){var i=n(v,u);i.length&&(f={},o=n(t.utils.createMarkupFromString(""),u),i.each(function(){var t=n(this,u),i=t.attr(b),r=t.attr("href"),e=t.attr(k)==="true";f[i]={url:r,isActive:e}}),i.last().after(o),i.remove())}function nt(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:i[2]&&i[2]!==u[2]?void 0:((!r||t.isActive)&&(r=n),t.isActive?!1:void 0)}),r}function tt(n){try{n!==u&&(f=null)}catch(t){f=null}u=n}function w(n){n=n||{},tt(n.context||document),g(),r=i,h(n)}function h(n){if(!arguments.length)return r||y();a(t.viewPort(),r),n=n||{},typeof n=="string"&&(n={theme:n});var u=n._autoInit,i=n.loadCallback,s;if(r=n.theme||r,u&&!r&&(r=it(t.devices.current())),r=nt(r),r&&(s=f[r]),s)o.attr("href",f[r].url),i?d(r,i):e&&(e=r);else if(u)i&&i();else throw t.Error("E0021",r);l(t.viewPort(),r)}function it(n){var t=n.platform;return t==="ios"&&(t+="7"),t==="android"&&(t+="5"),t}function rt(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 l(t,i){c=rt(i).join(" "),n(t).addClass(c)}function a(t){n(t).removeClass(c)}var v="link[rel=dx-theme]",b="data-theme",k="data-active",u,o,f,r,e,s="dx.",c;n.holdReady(!0),w({_autoInit:!0,loadCallback:function(){n.holdReady(!1)}}),n(function(){if(n(v,u).length)throw t.Error("E0022");}),t.viewPortChanged.add(function(n,t){a(t),l(n)}),t.ui.themes={init:w,current:h,attachCssClasses:l,detachCssClasses:a}}(jQuery,DevExpress),function(n,t){var v=t.ui,r=n.event,o=r.fixHooks,y=r.special,p={dx:/^dx/i,mouse:/(mouse|wheel)/i,touch:/^touch/i,keyboard:/^key/i,pointer:/^(ms)?pointer/i},u=function(t){var i="other";return n.each(p,function(n){if(this.test(t.type))return i=n,!1}),i},f=function(n){return u(n)==="dx"},w=function(n){return u(n)==="mouse"},s=function(n){return u(n)==="touch"},e=function(n){return u(n)==="pointer"},h=function(n){return w(n)||(e(n)||f(n))&&n.pointerType==="mouse"},c=function(n){return s(n)||(e(n)||f(n))&&n.pointerType==="touch"},b=function(n){return u(n)==="keyboard"},k=function(n){return{x:n.pageX,y:n.pageY,time:n.timeStamp}},d=function(n,t){return{x:t.x-n.x,y:t.y-n.y,time:t.time-n.time||1}},g=function(n){return s(n)?(n.originalEvent.touches||[]).length:f(n)?(n.pointers||[]).length:0},nt=function(t){var i=n(t.target),r=i.is("input, textarea, select");return t.type==="dxmousewheel"?i.is("input[type='number'], textarea, select")&&i.is(":focus"):h(t)?r||t.which>1:c(t)?r&&i.is(":focus"):void 0},l=function(t,i){for(var u=n.Event(t),f=o[t.type]||r.mouseHooks,s=f.props?r.props.concat(f.props):r.props,h=s.length,e;h--;)e=s[h],u[e]=t[e];return i&&n.extend(u,i),f.filter?f.filter(u,t):u},tt=function(n){var t=l(n.originalEvent,n);return r.trigger(t,null,n.delegateTarget||t.target),t},a=function(t,i){return typeof t=="string"?a(t.split(/\s+/g),i):(n.each(t,function(n,r){t[n]=r+"."+i}),t.join(" "))},it={props:r.mouseHooks.props.concat(["pointerType","pointerId","pointers"])},rt=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)})}),o[t]=it,y[t]=r};v.events={eventSource:u,isPointerEvent:e,isMouseEvent:h,isTouchEvent:c,isKeyboardEvent:b,hasTouches:g,eventData:k,eventDelta:d,needSkipEvent:nt,createEvent:l,fireEvent:tt,addNamespace:a,registerEvent:rt}}(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.call(f,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.KeyboardProcessor=t.Class.inherit({_keydown:u.addNamespace("keydown","KeyboardProcessor"),codes:{"8":"backspace","9":"tab","13":"enter","27":"escape","33":"pageUp","34":"pageDown","35":"end","36":"home","37":"leftArrow","38":"upArrow","39":"rightArrow","40":"downArrow","46":"del","32":"space","70":"F","65":"A","106":"asterisk","109":"minus"},ctor:function(t){var i=this;if(t=t||{},t.element&&(this._element=n(t.element)),t.focusTarget&&(this._focusTarget=t.focusTarget),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},clearChildren:function(){this._childProcessors=[]},push:function(n){return this._childProcessors||this.clearChildren(),this._childProcessors.push(n),n},attachChildProcessor:function(){var n=new r.KeyboardProcessor;return this._childProcessors.push(n),n},reinitialize:function(n,t){return this._context=t,this._handler=n,this},process:function(t){if(this._focusTarget&&this._focusTarget!==t.target&&n.inArray(t.target,this._focusTarget)<0)return!1;var i={key:this.codes[t.which]||t.which,ctrl:t.ctrlKey,shift:t.shiftKey,alt:t.altKey,originalEvent:t},r=this._handler&&this._handler.call(this._context,i);r&&this._childProcessors&&n.each(this._childProcessors,function(n,i){i.process(t)})}})}(jQuery,DevExpress),function(n,t,i){var u=t.ui,o=t.utils,s={text:"OK",onClick:function(){return!0}},r="dx-dialog",h=r+"-wrapper",c=r+"-root",l=r+"-content",a=r+"-message",v=r+"-buttons",y=r+"-button",p=t.Component.inherit({NAME:"dxDialog",ctor:function(n,t){this.callBase(t)},_defaultOptionsRules:function(){return this.callBase().concat([{device:{platform:"ios"},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"}}}])}}),w=function(f){function tt(){return e.show(),o.resetActiveElement(),w.promise()}function d(n){e.hide().done(function(){e.element().remove()}),w.resolve(n)}var w,b,e;if(!u.dxPopup)throw t.Error("E0018");w=n.Deferred(),b=(new p).option(),f=n.extend(b,f);var g=n("
").addClass(r).appendTo(t.viewPort()),nt=n("
").addClass(a).html(String(f.message)),k=[];return n.each(f.buttons||[s],function(){this.clickAction&&(t.log("W0001","Dialog","clickAction","14.2","Use 'onClick' option instead"),this.onClick=this.clickAction);var n=new t.Action(this.onClick||this.clickAction,{context:e});k.push({toolbar:"bottom",location:"center",widget:"button",options:{text:this.text,onClick:function(){var t=n.execute(arguments);d(t)}}})}),e=g.dxPopup({title:f.title||this.title,showTitle:function(){return f.showTitle===i?!0:f.showTitle}(),height:"auto",width:function(){var r=n(window).height()>n(window).width(),i=(r?"p":"l")+"Width",t=f.hasOwnProperty(i)?f[i]:f.width;return n.isFunction(t)?t():t},showCloseButton:!1,focusStateEnabled:!1,onContentReady:function(n){n.component.content().addClass(l).append(nt)},onShowing:function(n){n.component.bottomToolbar().addClass(v).find(".dx-button").addClass(y).first().focus()},buttons: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,boundaryOffset:{h:10,v:0}}).dxPopup("instance"),e._wrapper().addClass(h),f.position&&e.option("position",f.position),e._wrapper().addClass(c),{show:tt,hide:d}},f=function(t,i,r){var f,e=n.isPlainObject(t)?t:{title:i,message:t,showTitle:r};return f=u.dialog.custom(e),f.show()},b=function(t,i,r){var f,e=n.isPlainObject(t)?t:{title:i,message:t,showTitle:r,buttons:[{text:Globalize.localize("Yes"),onClick:function(){return!0}},{text:Globalize.localize("No"),onClick:function(){return!1}}]};return f=u.dialog.custom(e),f.show()},e=null,k=function(i,r,o){var s=n.isPlainObject(i)?i:{message:i},h;if(!u.dxToast){f(s.message);return}s.hiddenAction&&(t.log("W0001","Dialog","hiddenAction","14.2","Use 'onHidden' option instead"),s.onHidden=s.hiddenAction),h=s.onHidden,n.extend(s,{type:r,displayTime:o,onHidden:function(n){n.element.remove(),new t.Action(h,{context:n.model}).execute(arguments)}}),e=n("
").appendTo(t.viewPort()).dxToast(s),e.dxToast("instance").show()};n.extend(u,{notify:k,dialog:{custom:w,alert:f,confirm:b}})}(jQuery,DevExpress),function(n,t){var r=t.data,u="_dataSourceOptions",f="_dataSourceChangedHandler",e="_dataSourceLoadErrorHandler",o="_dataSourceLoadingChangedHandler";t.ui.DataHelperMixin={postCtor:function(){this.on("disposing",function(){this._disposeDataSource()})},_isDataSourceReady:function(){return!this._dataSource||this._dataSource.isLoaded()},_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(),this._addReadyWatcher()},_addReadyWatcher:function(){this._dataSource.on("loadingChanged",n.proxy(function(n){this._ready&&this._ready(!n)},this))},_addDataSourceChangeHandler:function(){var t=this._dataSource;this._proxiedDataSourceChangedHandler=n.proxy(function(){this[f](t.items())},this);t.on("changed",this._proxiedDataSourceChangedHandler)},_addDataSourceLoadErrorHandler:function(){this._proxiedDataSourceLoadErrorHandler=n.proxy(this[e],this);this._dataSource.on("loadError",this._proxiedDataSourceLoadErrorHandler)},_addDataSourceLoadingChangedHandler:function(){this._proxiedDataSourceLoadingChangedHandler=n.proxy(this[o],this);this._dataSource.on("loadingChanged",this._proxiedDataSourceLoadingChangedHandler)},_loadDataSource:function(){if(this._dataSource){var n=this._dataSource;n.isLoaded()?this._proxiedDataSourceChangedHandler&&this._proxiedDataSourceChangedHandler():n.load()}},_loadSingle:function(n,t){return n=n==="this"?this._dataSource.key()||"this":n,this._dataSource.loadSingle(n,t)},_isLastPage:function(){return!this._dataSource||this._dataSource.isLastPage()||!this._dataSource._pageSize},_isDataSourceLoading:function(){return this._dataSource&&this._dataSource.isLoading()},_disposeDataSource:function(){this._dataSource&&(this._isSharedDataSource?(delete this._isSharedDataSource,this._proxiedDataSourceChangedHandler&&this._dataSource.off("changed",this._proxiedDataSourceChangedHandler),this._proxiedDataSourceLoadErrorHandler&&this._dataSource.off("loadError",this._proxiedDataSourceLoadErrorHandler),this._proxiedDataSourceLoadingChangedHandler&&this._dataSource.off("loadingChanged",this._proxiedDataSourceLoadingChangedHandler)):this._dataSource.dispose(),delete this._dataSource,delete this._proxiedDataSourceChangedHandler,delete this._proxiedDataSourceLoadErrorHandler,delete this._proxiedDataSourceLoadingChangedHandler)}}}(jQuery,DevExpress),function(n,t,i){var f=t.ui,r=t.utils,u=t.data.utils;f.DataExpressionMixin=n.extend(f.DataHelperMixin,{_dataExpressionDeprecatedOptions:function(){return{itemRender:{since:"14.2",alias:"itemTemplate"}}},_dataExpressionDefaultOptions:function(){return{items:[],dataSource:null,itemTemplate:"item",value:null,valueExpr:"this",displayExpr:i}},_initDataExpressions:function(){this._compileValueGetter(),this._compileDisplayGetter(),this._initDynamicTemplates(),this._initDataSource(),this._itemsToDataSource()},_itemsToDataSource:function(){this.option("dataSource")||(this._dataSource=new DevExpress.data.DataSource({store:new DevExpress.data.ArrayStore(this.option("items")),pageSize:0}))},_compileDisplayGetter:function(){this._displayGetter=u.compileGetter(this._displayGetterExpr())},_displayGetterExpr:function(){return this.option("displayExpr")},_compileValueGetter:function(){this._valueGetter=u.compileGetter(this._valueGetterExpr())},_valueGetterExpr:function(){return this.option("valueExpr")||"this"},_loadValue:function(t){var i=n.Deferred();return(t=this._unwrappedValue(t),!r.isDefined(t))?i.reject().promise():(this._loadSingle(this._valueGetterExpr(),t).done(n.proxy(function(n){this._isValueEquals(this._valueGetter(n),t)?i.resolve(n):i.reject()},this)).fail(function(){i.reject()}),i.promise())},_unwrappedValue:function(n){if(n=t.utils.isDefined(n)?n:this.option("value"),n&&this._dataSource&&this._valueGetterExpr()==="this"){var i=this._dataSource.key();i&&typeof n=="object"&&(n=n[i])}return r.unwrapObservable(n)},_isValueEquals:function(n,t){var f=r.isDefined,e=r.ensureDefined,o=r.unwrapObservable,i=this._dataSource&&this._dataSource.key(),u=this._compareValues(n,t),s,h;return!u&&f(n)&&f(t)&&i&&(s=e(o(n[i]),n),h=e(o(t[i]),t),u=this._compareValues(s,h)),u},_compareValues:function(n,t){return u.toComparable(n)===u.toComparable(t)},_initDynamicTemplates:function(){this._displayGetterExpr()?this._dynamicTemplates.item=new f.DefaultTemplate(n.proxy(function(n){return this._displayGetter(n)},this)):delete this._dynamicTemplates.item},_setCollectionWidgetItemTemplate:function(){this._initDynamicTemplates(),this._setCollectionWidgetOption("itemTemplate",this._getTemplateByOption("itemTemplate"))},_dataExpressionOptionChanged:function(n){switch(n.name){case"items":this._itemsToDataSource(),this._setCollectionWidgetOption("items");break;case"dataSource":this._initDataSource();break;case"itemTemplate":this._setCollectionWidgetItemTemplate();break;case"valueExpr":this._compileValueGetter();break;case"displayExpr":this._compileDisplayGetter(),this._setCollectionWidgetItemTemplate()}}})}(jQuery,DevExpress),function(n){var r={filter:function(t,i){var r=i.touches.length?i.touches:i.changedTouches;return n.each(["pageX","pageY","screenX","screenY","clientX","clientY"],function(){t[this]=r[0][this]}),t},props:n.event.mouseHooks.props.concat(["touches","changedTouches","targetTouches","detail","result","originalTarget","charCode","prevValue"])};n.each(["touchstart","touchmove","touchend","touchcancel"],function(){n.event.fixHooks[this]=r})}(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","pointerType","originalTarget","width","height","pressure","result","tiltX","charCode","tiltY","detail","isPrimary","prevValue"])};n.each(["MSPointerDown","MSPointerMove","MSPointerUp","MSPointerCancel","MSPointerOver","MSPointerOut","mouseenter","mouseleave","pointerdown","pointermove","pointerup","pointercancel","pointerover","pointerout","pointerenter","pointerleave"],function(){n.event.fixHooks[this]=u})}(jQuery,DevExpress),function(n,t){var u=t.ui,r=u.events,f="dxPointerEvents",e=t.Class.inherit({ctor:function(n,t){this._eventName=n,this._eventNamespace=[f,".",this._eventName].join(""),this._originalEvents=t,this._handlerCount=0,this.noBubble=this._isNoBubble()},_isNoBubble:function(){var n=this._eventName;return n==="dxpointerenter"||n==="dxpointerleave"},_handler:function(n){var t=this._getDelegateTarget(n);return this._fireEvent({type:this._eventName,pointerType:n.pointerType||r.eventSource(n),originalEvent:n,delegateTarget:t})},_getDelegateTarget:function(n){var t;return this.noBubble&&(t=n.delegateTarget),t},_fireEvent:function(n){return r.fireEvent(n)},setup:function(){return!0},add:function(t,i){if(this._handlerCount<=0||this.noBubble){this._selector=i.selector,t=this.noBubble?t:document;n(t).on(r.addNamespace(this._originalEvents,this._eventNamespace),this._selector,n.proxy(this._handler,this))}this.noBubble||this._handlerCount++},remove:function(){this.noBubble||this._handlerCount--},teardown:function(t){(!this._handlerCount||this.noBubble)&&(t=this.noBubble?t:document,n(t).off("."+this._eventNamespace,this._selector))},dispose:function(t){t=this.noBubble?t:document,n(t).off("."+this._eventNamespace)}});r.pointer={},r.pointer.BaseStrategy=e}(jQuery,DevExpress),function(n,t){var f=t.ui,e=f.events,r=e.pointer,o={dxpointerdown:"mousedown",dxpointermove:"mousemove",dxpointerup:"mouseup",dxpointercancel:"",dxpointerover:"mouseover",dxpointerout:"mouseout",dxpointerenter:"mouseenter",dxpointerleave:"mouseleave"},u=function(n){var t=[];return n.pointerId=1,n.type!=="mouseup"&&t.push(n),{pointers:t,pointerId:1}},s=r.BaseStrategy.inherit({_fireEvent:function(t){return this.callBase(n.extend(u(t.originalEvent),t))}});r.mouse={strategy:s,map:o,normalize:u}}(jQuery,DevExpress),function(n,t){var f=t.ui,e=n.proxy(t.devices.real,t.devices),o=f.events,r=o.pointer,s={dxpointerdown:"touchstart",dxpointermove:"touchmove",dxpointerup:"touchend",dxpointercancel:"touchcancel"},u=function(t){var i=[];return n.each(t.touches,function(t,r){i.push(n.extend({pointerId:r.identifier},r))}),{pointers:i,pointerId:t.changedTouches[0].identifier}},h=function(n){return e().platform==="ios"&&(n==="dxpointerdown"||n==="dxpointerup")},c=r.BaseStrategy.inherit({ctor:function(){this.callBase.apply(this,arguments),this._pointerId=0},_handler:function(n){if(h(this._eventName)){var t=n.changedTouches[0];if(this._pointerId===t.identifier&&this._pointerId!==0)return;this._pointerId=t.identifier}return this.callBase.apply(this,arguments)},_fireEvent:function(t){return this.callBase(n.extend(u(t.originalEvent),t))}});r.touch={strategy:c,map:s,normalize:u}}(jQuery,DevExpress),function(n,t){var f=t.ui,u=f.events,r=u.pointer,e={dxpointerdown:"touchstart mousedown",dxpointermove:"touchmove mousemove",dxpointerup:"touchend mouseup",dxpointercancel:"touchcancel",dxpointerover:"mouseover",dxpointerout:"mouseout",dxpointerenter:"mouseenter",dxpointerleave:"mouseleave"},o=r.BaseStrategy.inherit({EVENT_LOCK_TIMEOUT:100,_handler:function(t){var i=u.isMouseEvent(t);if(i||(this._skipNextEvents=!0),!i||!this._mouseLocked){if(i&&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)}},_fireEvent:function(t){var i=u.isMouseEvent(t.originalEvent),f=i?r.mouse.normalize:r.touch.normalize;return this.callBase(n.extend(f(t.originalEvent),t))},dispose:function(){this.callBase(),this._skipNextEvents=!1,this._mouseLocked=!1,clearTimeout(this._unlockMouseTimer)}});r.mouseAndTouch={strategy:o,map:e}}(jQuery,DevExpress),function(n,t){var c=t.ui,l=c.events,e=l.pointer,o={dxpointerdown:"MSPointerDown pointerdown",dxpointermove:"MSPointerMove pointermove",dxpointerup:"MSPointerUp pointerup",dxpointercancel:"MSPointerCancel pointercancel",dxpointerover:"MSPointerOver pointerover",dxpointerout:"MSPointerOut pointerout",dxpointerenter:"mouseenter",dxpointerleave:"mouseleave"},r=[],f=function(t){var i=-1;return n.each(r,function(n,r){if(t.pointerId===r.pointerId)return i=n,!0}),i},a=function(n){f(n)===-1&&r.push(n)},s=function(n){r.splice(f(n),1)},v=function(n){r[f(n)]=n},u=function(t,i){t=t.split(" "),n.each(t,function(n,t){document.addEventListener(t,i,!0)})},h=function(){var t=o;u(t.dxpointerdown,a),u(t.dxpointermove,v),u(t.dxpointerup,s),u(t.dxpointercancel,s),h=n.noop},y=e.BaseStrategy.inherit({ctor:function(){this.callBase.apply(this,arguments),h()},_fireEvent:function(t){return this.callBase(n.extend({pointers:r,pointerId:t.originalEvent.pointerId},t))}});e.msPointer={strategy:y,map:o}}(jQuery,DevExpress),function(n,t){var s=t.ui,u=t.support,f=n.proxy(t.devices.real,t.devices),e=s.events,r=e.pointer,o=function(){return u.pointer?r.msPointer:u.touch&&!(f().tablet||f().phone)?r.mouseAndTouch:u.touch?r.touch:r.mouse}();n.each(o.map,function(n,t){e.registerEvent(n,new o.strategy(n,t))})}(jQuery,DevExpress),function(n,t,i){var s=t.ui,u=s.events,f="dxmousewheel",e="dxWheel",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._wheelHandler,r))},teardown:function(t){var i=n(t);i.off("."+e)},_wheelHandler:function(n){var t=this._getWheelDelta(n.originalEvent);u.fireEvent({type:f,originalEvent:n,delta:t,pointerType:"mouse"}),n.stopPropagation()},_getWheelDelta:function(n){return n.wheelDelta?n.wheelDelta:-n.deltaY*30}},u.registerEvent(f,r)}(jQuery,DevExpress),function(n,t){var h=t.ui,r=h.events,u="dxHoverStart",f="dxhoverstart",c=r.addNamespace("dxpointerenter",u),l=r.addNamespace("dxpointerdown",u),a=r.addNamespace("dxpointerup",u),e="dxHoverEnd",o="dxhoverend",v=r.addNamespace("dxpointerleave",e),s=t.Class.inherit({noBubble:!0,add:function(t,i){var r=n(t);r.off("."+this._namespace).on(this._originalEventName,i.selector,n.proxy(this._handler,this))},_handler:function(n){r.isTouchEvent(n)||r.fireEvent({type:this._eventName,originalEvent:n,delegateTarget:n.delegateTarget})},teardown:function(t){n(t).off("."+this._namespace)}}),y=s.inherit({ctor:function(){this._eventName=f,this._originalEventName=c,this._namespace=u,this._isMouseDown=!1,this._eventsAttached=0},_handler:function(){this._isMouseDown||this.callBase.apply(this,arguments)},setup:function(){n(document).off("."+u).on(l,n.proxy(function(){this._isMouseDown=!0},this)).on(a,n.proxy(function(){this._isMouseDown=!1},this));this._eventsAttached++},teardown:function(){this._eventsAttached--,this._eventsAttached===0&&n(document).off("."+u)}}),p=s.inherit({ctor:function(){this._eventName=o,this._originalEventName=v,this._namespace=e}});r.registerEvent(f,new y),r.registerEvent(o,new p)}(jQuery,DevExpress),function(n,t){var s=t.ui,r=s.events,f="dxEventManager",u="dxEmitter",h=t.Class.inherit({ctor:function(){this._attachHandlers(),this.reset(),this._proxiedCancelHandler=n.proxy(this._cancelHandler,this),this._proxiedAcceptHandler=n.proxy(this._acceptHandler,this)},_attachHandlers:function(){n(document).on(r.addNamespace("dxpointerdown",f),n.proxy(this._pointerDownHandler,this)).on(r.addNamespace("dxpointermove",f),n.proxy(this._pointerMoveHandler,this)).on(r.addNamespace("dxpointerup dxpointercancel",f),n.proxy(this._pointerUpHandler,this)).on(r.addNamespace("dxmousewheel",f),n.proxy(this._mouseWheelHandler,this))},_eachEmitter:function(n){for(var i=this._activeEmitters||[],t=0,r;i.length>t;){if(r=i[t],n(r)===!1)break;i[t]===r&&t++}},_applyToEmitters:function(n,t){this._eachEmitter(function(i){i[n].call(i,t)})},reset:function(){this._eachEmitter(this._proxiedCancelHandler),this._activeEmitters=[]},resetEmitter:function(n){this._proxiedCancelHandler(n)},_pointerDownHandler:function(n){r.isMouseEvent(n)&&n.which>1||this._updateEmitters(n)},_updateEmitters:function(n){this._isSetChanged(n)&&(this._cleanEmitters(n),this._fetchEmitters(n))},_isSetChanged:function(t){var r=this._closestEmitter(t),u=this._emittersSet||[],i=r.length!==u.length;return n.each(r,function(n,t){return i=i||u[n]!==t,!i}),this._emittersSet=r,i},_closestEmitter:function(t){function o(n,i){!!i&&i.validatePointers(t)&&i.validate(t)&&(i.addCancelCallback(r._proxiedCancelHandler),i.addAcceptCallback(r._proxiedAcceptHandler),f.push(i))}for(var r=this,f=[],i=n(t.target),e;i.length;)e=n.data(i.get(0),u)||[],n.each(e,o),i=i.parent();return f},_acceptHandler:function(n,t){var i=this;this._eachEmitter(function(r){r!==n&&i._cancelEmitter(r,t)})},_cancelHandler:function(n,t){this._cancelEmitter(n,t)},_cancelEmitter:function(t,i){var u=this._activeEmitters,r;i?t.cancel(i):t.reset(),t.removeCancelCallback(),t.removeAcceptCallback(),r=n.inArray(t,u),r>-1&&u.splice(r,1)},_cleanEmitters:function(n){this._applyToEmitters("end",n),this.reset(n)},_fetchEmitters:function(n){this._activeEmitters=this._emittersSet.slice(),this._applyToEmitters("start",n)},_pointerMoveHandler:function(n){this._applyToEmitters("move",n)},_pointerUpHandler:function(n){this._updateEmitters(n)},_mouseWheelHandler:function(n){var t=!0;(this._eachEmitter(function(n){return t=n.allowInterruptionByMousewheel()&&t}),t)&&(n.pointers=[null],this._pointerDownHandler(n),this._eachEmitter(function(t){var i=t.getDirection?t.getDirection(n):"",r=i!=="horizontal"?"pageY":"pageX";return i&&(n[r]+=n.delta),!i}),this._pointerMoveHandler(n),n.pointers=[],this._pointerUpHandler(n))},isActive:function(n){var t=!1;return this._eachEmitter(function(i){t=t||i.getElement().is(n)}),t}}),o=new h,e="dxEmitterSubscription",c=function(t){var s=t.emitter,i=t.events[0],f=t.events;n.each(f,function(h,c){r.registerEvent(c,{noBubble:!t.bubble,setup:function(t){var o=n.data(t,e)||{},f=n.data(t,u)||{},h=f[i]||new s(t);o[c]=!0,f[i]=h,n.data(t,u,f),n.data(t,e,o)},add:function(t,r){var f=n.data(t,u),e=f[i];e.configurate(n.extend({delegateSelector:r.selector},r.data),r.type)},teardown:function(t){var h=n.data(t,e),l=n.data(t,u),s=l[i],r;delete h[c],r=!0,n.each(f,function(n,t){return r=r&&!h[t]}),r&&(o.isActive(t)&&o.resetEmitter(s),s&&s.dispose(),delete l[i])}})})};n.extend(r,{registerEmitter:c})}(jQuery,DevExpress),function(n,t){var u=t.ui,r=u.events,f=t.Class.inherit({ctor:function(t){this._$element=n(t),this._cancelCallback=n.Callbacks(),this._acceptCallback=n.Callbacks()},getElement:function(){return this._$element},validate:function(n){return n.type!=="dxmousewheel"},validatePointers:function(n){return r.hasTouches(n)===1},allowInterruptionByMousewheel:function(){return!0},configurate:function(t){n.extend(this,t)},addCancelCallback:function(n){this._cancelCallback.add(n)},removeCancelCallback:function(){this._cancelCallback.empty()},_cancel:function(n){this._cancelCallback.fire(this,n)},addAcceptCallback:function(n){this._acceptCallback.add(n)},removeAcceptCallback:function(){this._acceptCallback.empty()},_accept:function(n){this._acceptCallback.fire(this,n)},_requestAccept:function(n){this._acceptRequestEvent=n},_forgetAccept:function(){this._accept(this._acceptRequestEvent),this._acceptRequestEvent=null},start:n.noop,move:n.noop,end:n.noop,cancel:n.noop,reset:function(){this._acceptRequestEvent&&this._accept(this._acceptRequestEvent)},_fireEvent:function(t,i,u){var f=n.extend({type:t,originalEvent:i,target:this._getEmitterTarget(i),delegateTarget:this.getElement().get(0)},u);return i=r.fireEvent(f),i.cancel&&this._cancel(i),i},_getEmitterTarget:function(t){return(this.delegateSelector?n(t.target).closest(this.delegateSelector):this.getElement()).get(0)},dispose:n.noop});n.extend(r,{Emitter:f})}(jQuery,DevExpress),function(n,t){var u=t.ui,o=u.events,f="dxactive",e="dxinactive",s=30,h=400,r,c=o.Emitter.inherit({configurate:function(n,t){switch(t){case f:n.activeTimeout=n.timeout;break;case e:n.inactiveTimeout=n.timeout}this.callBase(n)},start:function(t){var u=this.getElement().get(0),f=r&&r.getElement().get(0),e=n.contains(u,f),o=r&&r._activeTimer!==null,i;e&&o?this._cancel():(r&&r._forceInactiveTimer(),r=this,i=this._getEmitterTarget(t),this._forceActiveTimer=n.proxy(this._fireActive,this,t,i),this._forceInactiveTimer=n.proxy(this._fireInctive,this,t,i),this._startActiveTimer(t))},cancel:function(n){this.end(n)},end:function(n){var t=n.type!=="dxpointerup";t?this._stopActiveTimer():this._forceActiveTimer(),this._startInactiveTimer(n),t&&this._forceInactiveTimer()},dispose:function(){this._stopActiveTimer(),this._stopInactiveTimer(),this.callBase()},_startActiveTimer:function(){var t="activeTimeout"in this?this.activeTimeout:s;this._activeTimer=window.setTimeout(this._forceActiveTimer,t)},_fireActive:function(n,t){this._stopActiveTimer(),this._fireEvent(f,n,{target:t})},_stopActiveTimer:function(){clearTimeout(this._activeTimer),this._activeTimer=null},_forceActiveTimer:n.noop,_startInactiveTimer:function(){var t="inactiveTimeout"in this?this.inactiveTimeout:h;this._inactiveTimer=window.setTimeout(this._forceInactiveTimer,t)},_fireInctive:function(n,t){this._stopInactiveTimer(),r=null,this._fireEvent(e,n,{target:t})},_stopInactiveTimer:function(){clearTimeout(this._inactiveTimer),this._inactiveTimer=null},_forceInactiveTimer:n.noop,lockInactive:function(){return this._forceActiveTimer(),this._stopInactiveTimer(),r=null,this._cancel(),this._forceInactiveTimer}});u.events=n.extend(u.events,{lockFeedback:function(t){var i=r?r.lockInactive():n.noop;n.when(t).always(i)}}),o.registerEmitter({emitter:c,events:[f,e]})}(jQuery,DevExpress),function(n,t){var l=t.ui,e=t.utils,u=l.events,s=Math.abs,o="dxclick",h=10,c=function(t){return n(t).is("input, textarea, select, button ,:focus, :focus *")},a={requestAnimationFrame:t.requestAnimationFrame},f=u.Emitter.inherit({ctor:function(t){this.callBase(t),this._makeElementClickable(n(t))},_makeElementClickable:function(n){n.attr("onclick")||n.attr("onclick","void(0)")},start:function(n){this._blurPrevented=n.dxPreventBlur,this._startTarget=n.target,this._startEventData=u.eventData(n)},end:function(t){if(this._eventOutOfElement(t,this.getElement().get(0))||t.type==="dxpointercancel"){this._cancel(t);return}c(t.target)||this._blurPrevented||e.resetActiveElement(),this._accept(t),a.requestAnimationFrame(n.proxy(function(){this._fireClickEvent(t)},this))},_eventOutOfElement:function(t,i){var r=t.target,e=!n.contains(i,r)&&i!==r,f=u.eventDelta(u.eventData(t),this._startEventData),o=s(f.x)>h||s(f.y)>h;return e||o},_fireClickEvent:function(n){this._fireEvent(o,n,{target:e.closestCommonParent(this._startTarget,n.target)})}});(function(){var e=t.devices.real().generic,i,r;if(e){i=null,f=f.inherit({start:function(){i=null},end:n.noop,cancel:function(){i=!0}}),r=function(n){n.which&&n.which!==1||i||u.fireEvent({type:o,originalEvent:n})};n(document).on(u.addNamespace("click","NATIVE_DXCLICK_STRATEGY"),r)}})(),function(){var r=t.devices.real().ios,i;r&&(i="dxGestureLock",f=f.inherit({_fireClickEvent:function(t){for(var r=n(t.target);r.length;){if(n.data(r.get(0),i))return;r=r.parent()}this.callBase.apply(this,arguments)}}))}(),function(){var o=t.devices.real().generic;if(!o){var i=null,r=!1,s=function(n){i=n.target,r=n.dxPreventBlur},h=function(t){var u=n(t.target);r||!i||u.is(i)||n(i).is("label")||!c(u)||e.resetActiveElement(),i=null,r=!1},f="NATIVE_CLICK_FIXER";n(document).on(u.addNamespace("dxpointerdown",f),s).on(u.addNamespace("click",f),h)}}(),u.registerEmitter({emitter:f,bubble:!0,events:[o]})}(jQuery,DevExpress,window),function(n,t){var o=t.ui,r=o.events,u=Math.abs,f="dxhold",s=750,e=5,h=r.Emitter.inherit({start:function(n){this._startEventData=r.eventData(n),this._startTimer(n)},_startTimer:function(t){var i="timeout"in this?this.timeout:s;this._holdTimer=setTimeout(n.proxy(function(){this._requestAccept(t),this._fireEvent(f,t,{target:t.target}),this._forgetAccept()},this),i)},move:function(n){this._touchWasMoved(n)&&this._cancel(n)},_touchWasMoved:function(n){var t=r.eventDelta(this._startEventData,r.eventData(n));return u(t.x)>e||u(t.y)>e},end:function(){this._stopTimer()},_stopTimer:function(){clearTimeout(this._holdTimer)},cancel:function(){this._stopTimer()}});r.registerEmitter({emitter:h,bubble:!0,events:[f]})}(jQuery,DevExpress),function(n,t){var a=t.ui,f=t.utils,r=a.events,h=t.devices,c=t.support,l=Math.abs,e=0,o=1,u=2,v=10,y=0,p=180,s=function(n){return n&&n.type==="dxmousewheel"},w=r.Emitter.inherit({configurate:function(n){this.getElement().css("msTouchAction",n.immediate?"pinch-zoom":""),this.callBase(n)},allowInterruptionByMousewheel:function(){return this._stage!==u},getDirection:function(){return this.direction},_cancel:function(){this.callBase.apply(this,arguments),this._togglePointerAddons(!0),this._stage=e},start:function(n){if(r.needSkipEvent(n)){this._cancel(n);return}this._startEvent=r.createEvent(n),this._startEventData=r.eventData(n),this._prevEventData=this._startEventData,this._stage=o,this._init(n),this._setupImmediateTimer()},_setupImmediateTimer:function(){(clearTimeout(this._immediateTimer),this._immedeateAccepted=!1,this.immediate)&&(this._immediateTimer=setTimeout(n.proxy(function(){this._immedeateAccepted=!0},this),p))},move:function(n){if(this._stage===o&&this._directionConfirmed(n)){if(this._stage=u,this._resetActiveElement(),this._togglePointerAddons(!1,n),this._clearSelection(n),this._adjustStartEvent(n),this._start(this._startEvent),this._prevEventData=r.eventData(this._startEvent),this._stage===e)return;this._requestAccept(n),this._move(n),this._forgetAccept()}else this._stage===u&&this._move(n);this._prevEventData=r.eventData(n)},_directionConfirmed:function(n){var i=this._getTouchBoundary(n),u=r.eventDelta(this._startEventData,r.eventData(n)),f=l(u.x),e=l(u.y),o=this._validateMove(i,f,e),s=this._validateMove(i,e,f),t=this.getDirection(n),h=t==="both"&&(o||s),c=t==="horizontal"&&o,a=t==="vertical"&&s;return h||c||a||this._immedeateAccepted},_validateMove:function(n,t,i){return t&&t>=n&&(this.immediate?t>=i:!0)},_getTouchBoundary:function(n){return this.immediate||s(n)?y:v},_adjustStartEvent:function(n){var t=this._getTouchBoundary(n),i=r.eventDelta(this._startEventData,r.eventData(n));this._startEvent.pageX+=f.sign(i.x)*t,this._startEvent.pageY+=f.sign(i.y)*t},_resetActiveElement:function(){h.real().platform==="ios"&&n(":focus",this.getElement()).length&&f.resetActiveElement()},_togglePointerAddons:function(n,t){var i=this._stage===u;i&&(this._togglePointerInteration(n),s(t)||this._togglePointerCursor(n))},_togglePointerInteration:function(t){var i=h.real().platform==="generic";i&&(n("body").css("pointer-events",t?"":"none"),c.supportProp("user-select")&&n("body").css(c.styleProp("user-select"),t?"":"none"))},_togglePointerCursor:function(t){t?n("html").css("cursor",this._originalCursor):(this._originalCursor=n("html").css("cursor"),n("html").css("cursor",this.getElement().css("cursor")))},_clearSelection:function(n){s(n)||r.isTouchEvent(n)||f.clearSelection()},end:function(n){this._togglePointerAddons(!0,n),this._stage===u?this._end(n):this._stage===o&&this._stop(n),this._stage=e},dispose:function(){clearTimeout(this._immediateTimer),this.callBase.apply(this,arguments),this._togglePointerAddons(!0)},_init:n.noop,_start:n.noop,_move:n.noop,_stop:n.noop,_end:n.noop});n.extend(r,{GestureEmitter:w})}(jQuery,DevExpress),function(n,t){var v=t.ui,r=v.events,f="dxscrollinit",e="dxscrollstart",o="dxscroll",s="dxscrollend",h="dxscrollstop",c="dxscrollcancel",y=100,p=200,l=Math.round(1e3/60),u="dxGestureLock",w=200,a=r.addNamespace("scroll","dxScrollEmitter"),b=r.GestureEmitter.inherit({ctor:function(t){this.callBase.apply(this,arguments),this.direction="both",n.data(t,"scroll",n.proxy(this._treatScroll,this));n(t).on(a,n.proxy(this._treatScroll,this))},validate:function(){return!0},_domElement:function(){return this.getElement().get(0)},_treatScroll:function(){this._prepareGesture(),this._forgetGesture()},_prepareGesture:function(){this._gestureEndTimer?this._clearGestureTimer():n.data(this._domElement(),u,!0)},_forgetGesture:function(){var t=this;this._gestureEndTimer=setTimeout(function(){n.data(t._domElement(),u,!1),t._gestureEndTimer=null},w)},_init:function(t){n.data(this._domElement(),u)&&this._accept(t),this._fireEvent(f,t)},move:function(n){this.callBase.apply(this,arguments),n.isScrollingEvent=this.isNative||n.isScrollingEvent},_start:function(n){this._savedEventData=r.eventData(n),this._fireEvent(e,n,{delta:r.eventDelta(this._savedEventData,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>p&&(this._savedEventData=this._prevEventData)},_end:function(n){var f=r.eventDelta(this._prevEventData,r.eventData(n)),i={x:0,y:0},u=n.type==="dxmousewheel",t;f.time=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._savedEventData&&this._savedEventData.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=r.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},_start:function(n){this._savedEventData=r.eventData(n),this._tickData={time:0},n=this._fireEvent(u,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(f,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(e,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}});r.registerEmitter({emitter:l,events:[u,f,e]})}(jQuery,DevExpress),function(n,t,i){var y=t.ui,p=t.utils,u=y.events,w=p.wrapToArray,l="dxdragstart",a="dxdrag",v="dxdragend",e="dxdragenter",o="dxdragleave",s="dxdrop",r=[],f=[],h=[],c={setup:function(t,i){var u=n.inArray(t,r)!==-1;u||(r.push(t),f.push([]),h.push(i||{}))},add:function(t,i){var u=n.inArray(t,r),e=i.selector;n.inArray(e,f[u])===-1&&f[u].push(e)},teardown:function(t){var l=n._data(t,"events"),c=0,u;n.each([e,o,s],function(n,t){var i=l[t];i&&(c+=i.length)}),c||(u=n.inArray(t,r),r.splice(u,1),f.splice(u,1),h.splice(u,1))}};u.registerEvent(e,c),u.registerEvent(o,c),u.registerEvent(s,c);var b=function(t){var o=n.inArray(t.get(0),r),e=f[o],u=t.find(e.join(", "));return n.inArray(i,e)!==-1&&(u=u.addBack()),u},k=function(t){var i=n.inArray(t.get(0),r);return h[i]},d=function(n,t){return n.itemPositionFunc?n.itemPositionFunc(t):t.offset()},g=function(n,t){return n.itemSizeFunc?n.itemSizeFunc(t):{width:t.width(),height:t.height()}},nt=u.GestureEmitter.inherit({ctor:function(n){this.callBase(n),this.direction="both"},_init:function(n){this._initEvent=n},_start:function(t){t=this._fireEvent(l,this._initEvent),this._maxLeftOffset=t.maxLeftOffset,this._maxRightOffset=t.maxRightOffset,this._maxTopOffset=t.maxTopOffset,this._maxBottomOffset=t.maxBottomOffset;var i=w(t.targetElements||(t.targetElements===null?[]:r));this._dropTargets=n.map(i,function(t){return n(t).get(0)})},_move:function(n){var i=u.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};u.fireEvent(i)}},_findDropTarget:function(t){var i=this,u;return n.each(r,function(r,f){if(i._checkDropTargetActive(f)){var e=n(f);n.each(b(e),function(r,f){var o=n(f);i._checkDropTarget(k(e),o,t)&&(u=f)})}}),u},_checkDropTargetActive:function(t){var i=!1;return n.each(this._dropTargets,function(r,u){return i=i||u===t||n.contains(u,t),!i}),i},_checkDropTarget:function(n,t,i){var f=t.get(0)===this._$element.get(0),r,u;return f?!1:(r=d(n,t),i.pageXr.left+u.width)?!1:i.pageY>r.top+u.height?!1:t},_end:function(n){var t=u.eventData(n);this._fireEvent(v,n,{offset:this._calculateOffset(t)}),this._fireDropTargetEvent(n,s),delete this._currentDropTarget}});u.registerEmitter({emitter:nt,events:[l,a,v]})}(jQuery,DevExpress),function(n,t){var k=t.ui,s=t.utils,f=k.events,d=s.fitIntoRange,h="dx",g="transform",nt="translate",e="zoom",c="pinch",tt="rotate",l="start",a="",v="end",o=[],r=function(n,t){o.push({name:n,args:t})};r(g,{scale:!0,deltaScale:!0,rotation:!0,deltaRotation:!0,translation:!0,deltaTranslation:!0}),r(nt,{translation:!0,deltaTranslation:!0}),r(e,{scale:!0,deltaScale:!0}),r(c,{scale:!0,deltaScale:!0}),r(tt,{rotation:!0,deltaRotation:!0});var it=function(n,t){return{x:t.pageX-n.pageX,y:-t.pageY+n.pageY,centerX:(t.pageX+n.pageX)*.5,centerY:(t.pageY+n.pageY)*.5}},y=function(n){var t=n.pointers;return it(t[0],t[1])},u=function(n){return Math.sqrt(n.x*n.x+n.y*n.y)},p=function(n,t){return u(n)/u(t)},w=function(n,t){var e=n.x*t.x+n.y*t.y,i=u(n)*u(t),r,f;return i===0?0:(r=s.sign(n.x*t.y-t.x*n.y),f=Math.acos(d(e/i,-1,1)),r*f)},b=function(n,t){return{x:n.centerX-t.centerX,y:n.centerY-t.centerY}},rt=f.Emitter.inherit({configurate:function(n,i){i.indexOf(e)>-1&&t.log("W0005",i,"15.1","Use '"+i.replace(e,c)+"' event instead"),this.callBase(n)},validatePointers:function(n){return f.hasTouches(n)>1},start:function(n){this._accept(n);var t=y(n);this._startVector=t,this._prevVector=t,this._fireEventAliases(l,n)},move:function(n){var t=y(n),i=this._getEventArgs(t);this._fireEventAliases(a,n,i),this._prevVector=t},end:function(n){var t=this._getEventArgs(this._prevVector);this._fireEventAliases(v,n,t)},_getEventArgs:function(n){return{scale:p(n,this._startVector),deltaScale:p(n,this._prevVector),rotation:w(n,this._startVector),deltaRotation:w(n,this._prevVector),translation:b(n,this._startVector),deltaTranslation:b(n,this._prevVector)}},_fireEventAliases:function(t,i,r){r=r||{},n.each(o,n.proxy(function(u,f){var e={};n.each(f.args,function(n){n in r&&(e[n]=r[n])}),this._fireEvent(h+f.name+t,i,e)},this))}});f.registerEmitter({emitter:rt,events:n.map(o,function(t){var i=[];return n.each([l,a,v],function(n,r){i.push(h+t.name+r)}),i})})}(jQuery,DevExpress),function(n,t){var o=t.ui,r=o.events,s=t.utils,u="dxdblclick",h="dxDblClick",f=r.addNamespace("dxclick",h),e=300,c=t.Class.inherit({ctor:function(){this._handlerCount=0,this._forgetLastClick()},_forgetLastClick:function(){this._firstClickTarget=null,this._lastClickTimeStamp=-e},add:function(){if(this._handlerCount<=0)n(document).on(f,n.proxy(this._clickHandler,this));this._handlerCount++},_clickHandler:function(t){var i=t.timeStamp||n.now();i-this._lastClickTimeStamp",{"class":e}).text(u.message).appendTo(t),this._createComponent(this._$validationMessage,"dxTooltip",{target:t,container:t,position:this._getValidationTooltipPosition("below"),closeOnOutsideClick:!1,closeOnTargetScroll:!1,animation:null,visible:!0}),this._$validationMessage.toggleClass(o,h==="auto").toggleClass(s,h==="always"))},_getValidationTooltipPosition:function(n){var i=this.option("rtlEnabled"),r=i?"right":"left",u=this.option("validationTooltipOffset"),t={h:u.h,v:u.v},f=n==="below"?[" top"," bottom"]:[" bottom"," top"];return i&&(t.h=-t.h),n!=="below"&&(t.v=-t.v),{offset:t,my:r+f[0],at:r+f[1],collision:"none"}},_toggleReadOnlyState:function(){this.element().toggleClass(u,this.option("readOnly")),this.setAria("readonly",this.option("readOnly")||i)},_optionChanged:function(n){switch(n.name){case"onValueChanged":this._createValueChangeAction();break;case"isValid":case"validationError":case"validationMessageMode":this._renderValidationState();break;case"readOnly":this._toggleReadOnlyState(),this._refreshFocusState();break;case"value":this._valueChangeActionSuppressed||(this._raiseValueChangeAction(n.value,n.previousValue),this._saveValueChangeEvent(i)),n.value!=n.previousValue&&this.validationRequest.fire({value:n.value,editor:this});break;default:this.callBase(n)}},reset:function(){this.option("value",null)}})}(jQuery,DevExpress),function(n,t,i){var r=t.ui,h=t.utils,u=r.events,w="dx-collection",f="dx-item",c="-content",l="dx-item-content-placeholder",b="dxItemData",k="tmpl-",d="[data-options*='dxItem']",g="dx-item-selected",e="dx-state-focused",nt="dx-item-response-wait",tt="dx-empty-collection",it="dx-template-wrapper",o="up",s="down",a="left",v="right",rt="pageup",ut="pagedown",y="last",p="first",ft=r.Widget.inherit({NAME:"CollectionWidget",_activeStateUnit:"."+f,_supportedKeys:function(){var i=function(n){var t=this.option("focusedElement");t&&(n.target=t,n.currentTarget=t,this._itemClickHandler(n))},t=function(n,t){t.preventDefault(),t.stopPropagation(),this._moveFocus(n,t)};return n.extend(this.callBase(),{space:i,enter:i,leftArrow:n.proxy(t,this,a),rightArrow:n.proxy(t,this,v),upArrow:n.proxy(t,this,o),downArrow:n.proxy(t,this,s),pageUp:n.proxy(t,this,o),pageDown:n.proxy(t,this,s),home:n.proxy(t,this,p),end:n.proxy(t,this,y)})},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{itemClickAction:{since:"14.2",alias:"onItemClick"},itemHoldAction:{since:"14.2",alias:"onItemHold"},itemRenderedAction:{since:"14.2",alias:"onItemRendered"},itemRender:{since:"14.2",alias:"itemTemplate"}})},_setDefaultOptions:function(){this.callBase(),this.option({selectOnFocus:!1,loopItemFocus:!0,items:[],itemTemplate:"item",onItemRendered:null,onItemClick:null,onItemHold:null,itemHoldTimeout:750,onItemContextMenu:null,onFocusedItemChanged:null,noDataText:Globalize.localize("dxCollectionWidget-noDataText"),dataSource:null,_itemAttributes:{},itemTemplateProperty:"template",focusOnSelectedItem:!0,focusedElement:null})},_getAnonimousTemplateName:function(){return"item"},_init:function(){this.callBase(),this._cleanRenderedItems(),this._refreshDataSource()},_initTemplates:function(){this._initItemsFromMarkup(),this.callBase()},_initItemsFromMarkup:function(){var t=this.element().contents().filter(d),i;t.length&&!this.option("items").length&&(i=n.map(t,n.proxy(function(t){var i=n(t),r=h.getElementOptions(t).dxItem,u=n.trim(i.html())&&!r.template;return u?r.template=this._prepareItemTemplate(i):i.remove(),r},this)),this.option("items",i))},_prepareItemTemplate:function(n){var i=k+new t.data.Guid,r='dxTemplate: { name: "'+i+'" }';return n.attr("data-options",r).data("options",r),i},_dataSourceOptions:function(){return{paginate:!1}},_cleanRenderedItems:function(){this._renderedItemsCount=0},_focusTarget:function(){return this.element()},_focusInHandler:function(){var t,i;this.callBase.apply(this,arguments),t=this.option("focusedElement"),t&&t.length?this._setFocusedItem(t):(i=this._getActiveItem(),this.option("focusedElement",i))},_focusOutHandler:function(){this.callBase.apply(this,arguments);var t=this.option("focusedElement");t&&t.removeClass(e)},_getActiveItem:function(n){var t=this.option("focusedElement");if(t&&t.length)return t;var i=this.option("focusOnSelectedItem")?this.option("selectedIndex"):0,r=this._getActiveElement(),u=r.length-1;return i<0&&(i=n?u:0),r.eq(i)},_renderFocusTarget:function(){this.callBase.apply(this,arguments),this._refreshActiveDescendant()},_moveFocus:function(n){var t=this._itemElements().filter(":visible").not(".dx-state-disabled"),i;switch(n){case rt:case o:i=this._prevItem(t);break;case ut:case s:i=this._nextItem(t);break;case v:i=this.option("rtlEnabled")?this._prevItem(t):this._nextItem(t);break;case a:i=this.option("rtlEnabled")?this._nextItem(t):this._prevItem(t);break;case p:i=t.first();break;case y:i=t.last();break;default:return!1}i.length!==0&&this.option("focusedElement",i)},_prevItem:function(t){var r=this._getActiveItem(),u=t.index(r),f=t.last(),i=n(t[u-1]),e=this.option("loopItemFocus");return i.length===0&&e&&(i=f),i},_nextItem:function(t){var r=this._getActiveItem(!0),u=t.index(r),f=t.first(),i=n(t[u+1]),e=this.option("loopItemFocus");return i.length===0&&e&&(i=f),i},_selectFocusedItem:function(n){this.selectItem(n)},_removeFocusedItem:function(n){n&&n.length&&(n.removeClass(e),n.removeAttr("id"))},_refreshActiveDescendant:function(){this.setAria("activedescendant",""),this.setAria("activedescendant",this.getFocusedItemId())},_setFocusedItem:function(n){if(n&&n.length){n.attr("id",this.getFocusedItemId()),n.addClass(e);this.onFocusedItemChanged(this.getFocusedItemId());this._refreshActiveDescendant(),this.option("selectOnFocus")&&this._selectFocusedItem(n)}},_optionChanged:function(n){switch(n.name){case"items":case"_itemAttributes":case"itemTemplateProperty":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"onItemRendered":this._createItemRenderAction();break;case"onItemClick":break;case"onItemHold":case"itemHoldTimeout":this._attachHoldEvent();break;case"onItemContextMenu":this._attachContextMenuEvent();break;case"onFocusedItemChanged":this.onFocusedItemChanged=this._createActionByOption("onFocusedItemChanged");break;case"selectOnFocus":case"loopItemFocus":case"focusOnSelectedItem":break;case"focusedElement":this._removeFocusedItem(n.previousValue),this._setFocusedItem(n.value);break;default:this.callBase(n)}},_loadNextPage:function(){var n=this._dataSource;return this._expectNextPageLoading(),n.pageIndex(1+n.pageIndex()),n.load()},_expectNextPageLoading:function(){this._startIndexForAppendedItems=0},_expectLastItemLoading:function(){this._startIndexForAppendedItems=-1},_forgetNextPageLoading:function(){this._startIndexForAppendedItems=null},_dataSourceChangedHandler:function(n){var t=this.option("items");this._initialized&&t&&this._shouldAppendItems()?(this._renderedItemsCount=t.length,this._isLastPage()&&this._startIndexForAppendedItems===-1||(this.option().items=t.concat(n.slice(this._startIndexForAppendedItems))),this._forgetNextPageLoading(),this._renderContent(),this._renderFocusTarget()):this.option("items",n)},_dataSourceLoadErrorHandler:function(){this._forgetNextPageLoading(),this.option("items",this.option("items"))},_shouldAppendItems:function(){return this._startIndexForAppendedItems!=null&&this._allowDinamicItemsAppend()},_allowDinamicItemsAppend:function(){return!1},_clean:function(){this._cleanFocusState(),this._cleanItemContainer()},_cleanItemContainer:function(){this._itemContainer().empty()},_refresh:function(){this._cleanRenderedItems(),this.callBase.apply(this,arguments)},_itemContainer:function(){return this.element()},_itemClass:function(){return f},_itemContentClass:function(){return this._itemClass()+c},_selectedItemClass:function(){return g},_itemResponseWaitClass:function(){return nt},_itemSelector:function(){return"."+this._itemClass()},_itemDataKey:function(){return b},_itemElements:function(){return this._itemContainer().find(this._itemSelector())},_render:function(){this.callBase(),this.element().addClass(w),this._attachClickEvent(),this._attachHoldEvent(),this._attachContextMenuEvent(),this.onFocusedItemChanged=this._createActionByOption("onFocusedItemChanged")},_attachClickEvent:function(){var i=this._itemSelector(),r=u.addNamespace("dxclick",this.NAME),f=u.addNamespace("dxpointerdown",this.NAME),e=this,o=new t.Action(function(n){var t=n.event;e._itemPointerDownHandler(t)});this._itemContainer().off(r,i).off(f,i).on(r,i,n.proxy(this._itemClickHandler,this)).on(f,i,function(t){o.execute({element:n(t.target),event:t})})},_itemClickHandler:function(n){this._itemJQueryEventHandler(n,"onItemClick")},_itemPointerDownHandler:function(t){if(this.option("focusStateEnabled")){var i=this._itemClass(),r=n(t.target).closest("."+i);r.hasClass(i)&&this.option("focusedElement",r)}},_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._getHoldTimeout()},n.proxy(this._itemHoldHandler,this))},_getHoldTimeout:function(){return this.option("itemHoldTimeout")},_shouldAttachHoldEvent:function(){return this.option("onItemHold")},_itemHoldHandler:function(n){this._itemJQueryEventHandler(n,"onItemHold")},_attachContextMenuEvent:function(){var t=this._itemContainer(),i=this._itemSelector(),r=u.addNamespace("dxcontextmenu",this.NAME);if(t.off(r,i),this._shouldAttachContextMenuEvent())t.on(r,i,n.proxy(this._itemContextMenuHandler,this))},_shouldAttachContextMenuEvent:function(){return this.option("onItemContextMenu")},_itemContextMenuHandler:function(n){this._itemJQueryEventHandler(n,"onItemContextMenu")},_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 r,u;return i=i||this._itemContainer(),r=this._renderItemFrame(n,t,i),this._setElementData(r,t),u=r.find("."+l),u.removeClass(l),u=this._renderItemContent(n,t,u),this._postprocessRenderItem({itemElement:r,itemContent:u,itemData:t,itemIndex:n}),this._executeItemRenderAction(n,t,r),this._attachItemClickEvent(t,r),r.attr(this.option("_itemAttributes"))},_attachItemClickEvent:function(t,i){if(t&&t.onClick)i.on("dxclick",n.proxy(function(n){this._itemEventHandlerByHandler(i,t.onClick,{jQueryEvent:n})},this))},_renderItemContent:function(n,t,i){var u=t&&t.node,f=this._getItemTemplateName(t),e=this._getTemplate(f,t,n,i),o={index:n,item:t,container:i},r;return u?(i.replaceWith(u),i=u,this._addItemContentClasses(i,t)):(this._addItemContentClasses(i,t),r=this._createItemByTemplate(e,o),r.hasClass(it)&&(i.replaceWith(r),i=r,this._addItemContentClasses(i,t))),i},_addItemContentClasses:function(n){n.addClass([f+c,this._itemContentClass()].join(" "))},_renderItemFrame:function(n,t,i){var u=this.option("templateProvider").getTemplates(this).itemFrame,r=u.render(h.isDefined(t)?t:{},i,n);return r.appendTo(i),r},_postprocessRenderItem:n.noop,_executeItemRenderAction:function(n,t,i){this._getItemRenderAction()({itemElement:i,itemIndex:n,itemData:t})},_setElementData:function(n,t){n.addClass([f,this._itemClass()].join(" ")).data(this._itemDataKey(),t)},_createItemRenderAction:function(){return this._itemRenderAction=this._createActionByOption("onItemRendered",{element:this.element(),excludeValidators:["designMode","disabled","readOnly"],category:"rendering"})},_getItemRenderAction:function(){return this._itemRenderAction||this._createItemRenderAction()},_getItemTemplateName:function(n){var t=this.option("itemTemplateProperty");return n&&n[t]||this.option("itemTemplate")},_createItemByTemplate:function(n,t){return n.render(t.item,t.container,t.index,"ignoreTarget")},_renderEmptyMessage:function(){var t=this.option("noDataText"),u=this.option("items"),r=!t||u&&u.length||this._isDataSourceLoading();r&&this._$nodata&&(this._$nodata.remove(),this._$nodata=null,this.setAria("label",i)),r||(this._$nodata=this._$nodata||n("
").addClass("dx-empty-message"),this._$nodata.appendTo(this._itemContainer()).html(t),this.setAria("label",t)),this.element().toggleClass(tt,!r)},_itemJQueryEventHandler:function(t,i,r,u){this._itemEventHandler(t.target,i,n.extend(r,{jQueryEvent:t}),u)},_itemEventHandler:function(t,i,r,u){var f=this._createActionByOption(i,n.extend({validatingTargetName:"itemElement"},u));return this._itemEventHandlerImpl(t,f,r)},_itemEventHandlerByHandler:function(t,i,r,u){var f=this._createAction(i,n.extend({validatingTargetName:"itemElement"},u));return this._itemEventHandlerImpl(t,f,r)},_itemEventHandlerImpl:function(t,i,r){var u=this._closestItemElement(n(t));return i(n.extend(this._extendActionArgs(u),r))},_extendActionArgs:function(n){return{itemElement:n,itemIndex:n.index(this._itemSelector()),itemData:this._getItemData(n)}},_closestItemElement:function(t){return n(t).closest(this._itemSelector())},_getItemData:function(t){return n(t).data(this._itemDataKey())},getFocusedItemId:function(){return this._focusedItemId||(this._focusedItemId=new DevExpress.data.Guid),this._focusedItemId},itemElements:function(){return this._itemElements()},itemsContainer:function(){return this._itemContainer()}}).include(r.DataHelperMixin);r.CollectionWidget=ft}(jQuery,DevExpress),function(n,t,i){var u=t.ui,r=t.utils,f="dxItemDeleting",e=u.CollectionWidget.inherit({_setOptionsByReference:function(){this.callBase(),n.extend(this._optionsByReference,{selectedItem:!0})},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{itemSelectAction:{since:"14.2",message:"Use the 'onSelectionChanged' option instead"}})},_setDefaultOptions:function(){this.callBase(),this.option({selectionMode:"none",selectionRequired:!1,selectionByClick:!0,selectedItems:[],selectedIndex:-1,selectedItem:null,onSelectionChanged:null,onItemReordered:null,onItemDeleting:null,onItemDeleted:null})},_init:function(){this.callBase(),this._initEditStrategy(),this._selectedItemIndices=[]},_initEditStrategy:function(){var n=u.CollectionWidget.PlainEditStrategy;this._editStrategy=new n(this)},_render:function(){this._syncSelectionOptions(),this._normalizeSelectedItems(),this._initSelectedItems(),this.callBase(),this._renderSelection(this._selectedItemIndices,[])},_syncSelectionOptions:function(n){n=n||this._chooseSelectOption();var t,i;switch(n){case"selectedIndex":t=this._editStrategy.getItemDataByIndex(this.option("selectedIndex")),r.isDefined(t)?(this._setOptionSilent("selectedItems",[t]),this._setOptionSilent("selectedItem",t)):(this._setOptionSilent("selectedItems",[]),this._setOptionSilent("selectedItem",null));break;case"selectedItems":i=this.option("selectedItems")||[],this._setOptionSilent("selectedItem",i[0]),this._setOptionSilent("selectedIndex",this._editStrategy.getIndexByItemData(i[0]));break;case"selectedItem":t=this.option("selectedItem"),r.isDefined(t)?(this._setOptionSilent("selectedItems",[t]),this._setOptionSilent("selectedIndex",this._editStrategy.getIndexByItemData(t))):(this._setOptionSilent("selectedItems",[]),this._setOptionSilent("selectedIndex",-1))}},_chooseSelectOption:function(){var n="selectedIndex";return this.option("selectedItems").length?n="selectedItems":r.isDefined(this.option("selectedItem"))&&(n="selectedItem"),n},_normalizeSelectedItems:function(){var n,t;this.option("selectionMode")==="none"?(this._setOptionSilent("selectedItems",[]),this._syncSelectionOptions("selectedItems")):this.option("selectionMode")==="single"&&(n=this._editStrategy.selectedItemIndices(this.option("selectedItems")),(n.length>1||!n.length&&this.option("selectionRequired")&&this.option("items")&&this.option("items").length)&&(t=[n[0]||this._selectedItemIndices[0]||0],this._setOptionSilent("selectedItems",this._editStrategy.fetchSelectedItems(t)),this._syncSelectionOptions("selectedItems")))},_initSelectedItems:function(){this._selectedItemIndices=this._editStrategy.selectedItemIndices(this.option("selectedItems"))},_renderSelection:n.noop,_itemClickHandler:function(t){this._createAction(n.proxy(function(n){this._itemSelectHandler(n.jQueryEvent)},this),{validatingTargetName:"itemElement"})({itemElement:n(t.currentTarget),jQueryEvent:t}),this.callBase.apply(this,arguments)},_itemSelectHandler:function(n){if(this.option("selectionByClick")){var t=n.currentTarget;this.isItemSelected(t)?this.unselectItem(n.currentTarget):this.selectItem(n.currentTarget)}},_selectedItemElement:function(n){return this._itemElements().eq(n)},_postprocessRenderItem:function(t){var i=n(t.itemElement);this._isItemSelected(this._editStrategy.getNormalizedIndex(i))?(i.addClass(this._selectedItemClass()),this._setAriaSelected(i,"true")):this._setAriaSelected(i,"false")},_updateSelectedItems:function(){var u=this._selectedItemIndices.slice(),f=this._editStrategy.selectedItemIndices(),t=r.removeDublicates(f,u),i=r.removeDublicates(u,f),e;n.each(i,n.proxy(function(n,t){this._removeSelection(t)},this)),n.each(t,n.proxy(function(n,t){this._addSelection(t)},this)),(i.length||t.length)&&(e=this._selectionChangePromise,this._updateSelection(t,i),n.when(e).done(n.proxy(function(){this._fireSelectItemEvent(t,i),this._fireSelectionChangeEvent(t,i)},this)))},_fireSelectionChangeEvent:function(n,t){this._createActionByOption("onSelectionChanged",{excludeValidators:["disabled","readOnly"]})({addedItems:this._editStrategy.fetchSelectedItems(n),removedItems:this._editStrategy.fetchSelectedItems(t)})},_fireSelectItemEvent:function(n,t){(this.NAME!=="dxList"||this.option("selectionMode")==="single")&&this._itemEventHandler(this._selectedItemElement(n[0]),"itemSelectAction",{selectedIndex:n[0],previousIndex:t[0]},{excludeValidators:["disabled","readOnly"]})},_updateSelection:function(){this._renderSelection.apply(this,arguments)},_setAriaSelected:function(n,t){this.setAria("selected",t,n)},_removeSelection:function(t){var i=this._editStrategy.getItemElement(t),r=n.inArray(t,this._selectedItemIndices);r>-1&&(i.removeClass(this._selectedItemClass()),this._setAriaSelected(i,"false"),this._selectedItemIndices.splice(r,1),i.triggerHandler("stateChanged"),this.NAME==="dxList"&&this._itemEventHandler(i,"itemUnselectAction",{},{excludeValidators:["disabled","readOnly"]}))},_addSelection:function(n){var t=this._editStrategy.getItemElement(n);n>-1&&!this._isItemSelected(n)&&(t.addClass(this._selectedItemClass()),this._setAriaSelected(t,"true"),this._selectedItemIndices.push(n),t.triggerHandler("stateChanged"),this.NAME==="dxList"&&this._itemEventHandler(t,"itemSelectAction",{},{excludeValidators:["disabled","readOnly"]}))},_isItemSelected:function(t){return n.inArray(t,this._selectedItemIndices)>-1},_optionChanged:function(n){if(!this._cancelOptionChange)switch(n.name){case"items":n.previousValue&&n.previousValue.length>0&&this._clearSelectedItems(),this.callBase(n);break;case"selectionMode":this._invalidate();break;case"selectedIndex":case"selectedItem":case"selectedItems":this._syncSelectionOptions(n.name),this._normalizeSelectedItems(),this._updateSelectedItems();break;case"selectionRequired":this._normalizeSelectedItems(),this._updateSelectedItems();break;case"selectionByClick":case"onSelectionChanged":case"onItemDeleting":case"onItemDeleted":case"onItemReordered":case"itemSelectAction":case"itemUnselectAction":break;default:this.callBase(n)}},_clearSelectedItems:function(){this._selectedItemIndices=[],this.option("selectedItems",[])},_setOptionSilent:function(n,t){this._cancelOptionChange=!0,this.option(n,t),this._cancelOptionChange=!1},_waitDeletingPrepare:function(t){if(t.data(f))return n.Deferred().resolve().promise();t.data(f,!0);var i=n.Deferred(),r=this._itemEventHandler(t,"onItemDeleting",{},{excludeValidators:["disabled","readOnly"]});return n.when(r).always(n.proxy(function(n){var u=!r,e=!u&&r.state()==="resolved",o=!!arguments.length,s=u||e&&!o||e&&n;t.data(f,!1),s?i.resolve():i.reject()},this)),i.promise()},_deleteItemFromDS:function(r){if(!this._dataSource)return n.Deferred().resolve().promise();var u=n.Deferred(),e=this.option("disabled"),f=this._dataSource.store();if(this.option("disabled",!0),!f.remove)throw t.Error("E1011");return f.remove(f.keyOf(this._getItemData(r))).done(function(n){n!==i?u.resolve():u.reject()}).fail(function(){u.reject()}),u.always(n.proxy(function(){this.option("disabled",e)},this)),u},_tryRefreshLastPage:function(){var t=n.Deferred();return this._isLastPage()||this.option("grouped")?t.resolve():this._refreshLastPage().done(function(){t.resolve()}),t.promise()},_refreshLastPage:function(){return this._expectLastItemLoading(),this._dataSource.load()},_updateSelectionAfterDelete:function(t){var i=n.inArray(t,this._selectedItemIndices);i>-1&&this._selectedItemIndices.splice(i,1),this._editStrategy.updateSelectionAfterDelete(t),this.option("selectedItems",this._editStrategy.fetchSelectedItems())},_simulateOptionChange:function(n){var i=this.option(n);i instanceof t.data.DataSource||this.fireEvent("optionChanged",[{name:n,fullName:n,value:i}])},isItemSelected:function(n){return this._isItemSelected(this._editStrategy.getNormalizedIndex(n))},selectItem:function(t){var i=this._editStrategy.getNormalizedIndex(t),u,r;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 u=this._editStrategy.getNormalizedIndex(t),r,i;u!==-1&&(r=n.inArray(u,this._selectedItemIndices),r!==-1)&&((i=this._selectedItemIndices.slice(),i.splice(r,1),this.option("selectionRequired")&&i.length===0)||this.option("selectedItems",this._editStrategy.fetchSelectedItems(i)))},deleteItem:function(t){var i=this,u=n.Deferred(),r=this._editStrategy.getItemElement(t),f=this._editStrategy.getNormalizedIndex(t),o=this._dataSource?"dataSource":"items",e=this._itemResponseWaitClass();return f>-1?this._waitDeletingPrepare(r).done(function(){r.addClass(e),i._deleteItemFromDS(r).done(function(){i._editStrategy.deleteItemAtIndex(f),i._simulateOptionChange(o),i._updateSelectionAfterDelete(f),i._itemEventHandler(r,"onItemDeleted",{},{beforeExecute:function(){r.detach()},excludeValidators:["disabled","readOnly"]}),i._renderEmptyMessage(),i._tryRefreshLastPage().done(function(){u.resolveWith(i)})}).fail(function(){r.removeClass(e),u.rejectWith(i)})}).fail(function(){u.rejectWith(i)}):u.rejectWith(i),u.promise()},reorderItem:function(t,i){var e=n.Deferred(),o=this,r=this._editStrategy,h=r.getItemElement(t),c=r.getItemElement(i),u=r.getNormalizedIndex(t),f=r.getNormalizedIndex(i),s,l=u>-1&&f>-1&&u!==f;return l?this._dataSource?(s="dataSource",e.resolveWith(this)):(s="items",e.resolveWith(this)):e.rejectWith(this),e.promise().done(function(){c[r.itemPlacementFunc(u,f)](h);var n=r.getSelectedItemsAfterReorderItem(u,f);r.moveItemAtIndexToIndex(u,f),o._selectedItemIndices=r.selectedItemIndices(n),o.option("selectedItems",r.fetchSelectedItems()),o._simulateOptionChange(s),o._itemEventHandler(h,"onItemReordered",{fromIndex:r.getIndex(u),toIndex:r.getIndex(f)},{excludeValidators:["disabled","readOnly"]})})}});u.CollectionWidget=e}(jQuery,DevExpress),function(n,t){var r=t.ui;r.CollectionWidget.EditStrategy=t.Class.inherit({ctor:function(n){this._collectionWidget=n},getIndexByItemData:t.abstract,getItemDataByIndex:t.abstract,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,selectedItemIndices:t.abstract,itemPlacementFunc:function(n,t){return this._itemsFromSameParent(n,t)&&nt&&(i[n]-=1)})},fetchSelectedItems:function(t){t=t||this._collectionWidget._selectedItemIndices;var r=this._getPlainItems(),i=[];return n.each(t,function(n,t){i.push(r[t])}),i},selectedItemIndices:function(){var t=[],i=this._getPlainItems(),r=this._collectionWidget.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._getPlainItems(),r=i[n];i.splice(n,1),i.splice(t,0,r)},_isItemIndex:function(t){return n.isNumeric(t)},_getNormalizedItemIndex:function(n){return this._collectionWidget._itemElements().index(n)},_normalizeItemIndex:function(n){return n},_denormalizeItemIndex:function(n){return n},_getItemByNormalizedIndex:function(n){return this._collectionWidget._itemElements().eq(n)},_itemsFromSameParent:function(){return!0}})}(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("
").html(r).appendTo(t.viewPort()).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){n.extend(t.ERROR_MESSAGES,{E1001:"Module '{0}'. Controller '{1}' is already registered",E1002:"Module '{0}'. Controller '{1}' must be inheritor of DevExpress.ui.dxDataGrid.Controller",E1003:"Module '{0}'. View '{1}' is already registered",E1004:"Module '{0}'. View '{1}' must be inheritor of DevExpress.ui.dxDataGrid.View",E1005:"Public method '{0}' is already registered",E1006:"Public method '{0}.{1}' is not exists",E1007:"State storing can not be provided due to the restrictions of your browser",E1010:"A template should contain dxTextBox widget",E1011:"You have to implement 'remove' method in dataStore used by dxList to be able to delete items",E1012:"Editing type '{0}' with name '{1}' not supported",E1016:"Unexpected type of data source is provided for a lookup column",E1018:"The 'collapseAll' method cannot be called when using a remote data source",E1019:"Search mode '{0}' is unavailable",E1020:"Type can not be changed after initialization",E1021:"{0} '{1}' you are trying to remove does not exist",E1022:"Markers option should be an array",E1023:"Routes option should be an array",E1024:"Google provider cannot be used in WinJS application",E1025:"This layout is too complex to render",E1026:"The 'custom' value is set to a summary item's summaryType option, but a function for calculating the custom summary is not assigned to the grid's calculateCustomSummary option",E1030:"Unknown dxScrollView refresh strategy: '{0}'",E1031:"Unknown subscription is detected in the dxScheduler widget: '{0}'",E1032:"Unknown start date is detected in an appointment of the dxScheduler widget: '{0}'",E1033:"Unknown step is specified for the scheduler's navigator: '{0}'",E1034:"The current browser does not implement an API required for saving files",W1001:"Key option can not be modified after initialization",W1002:"Item '{0}' you are trying to select does not exist",W1003:"Group with key '{0}' in which you are trying to select items does not exist",W1004:"Item '{0}' you are trying to select in group '{1}' does not exist",W1005:"Due to column data types being unspecified, data has been loaded twice in order to apply initial filter settings. To resolve this issue, specify data types for all grid columns."})})(jQuery,DevExpress),function(n,t){var o=t.ui,e=o.events,u="dxScrollable",a="dxScrollableStrategy",h="dx-scrollable",v="dx-scrollable-disabled",y="dx-scrollable-container",c="dx-scrollable-content",r="vertical",f="horizontal",s="both",l=function(){return[{device:function(){return!t.support.nativeScrolling},options:{useNative:!1}},{device:function(n){return!t.support.nativeScrolling&&!t.devices.isSimulator()&&t.devices.real().platform==="generic"&&n.platform==="generic"},options:{bounceEnabled:!1,scrollByThumb:!0,scrollByContent:t.support.touch,showScrollbar:"onHover"}}]};t.registerComponent(u,o,t.DOMComponent.inherit({_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{updateAction:{since:"14.2",alias:"onUpdated"},scrollAction:{since:"14.2",alias:"onScroll"},startAction:{since:"14.2",alias:"onStart"},stopAction:{since:"14.2",alias:"onStop"},endAction:{since:"14.2",alias:"onEnd"}})},_setDefaultOptions:function(){this.callBase(),this.option({disabled:!1,onScroll:null,direction:r,showScrollbar:"onScroll",useNative:!0,bounceEnabled:!0,scrollByContent:!0,scrollByThumb:!1,onUpdated:null,onStart:null,onEnd:null,onBounce:null,onStop:null,useSimulatedScrollbar:!1,useKeyboard:!0,inertiaEnabled:!0,pushBackValue:0})},_defaultOptionsRules:function(){return this.callBase().concat(l(),[{device:function(){return t.support.nativeScrolling&&t.devices.real().platform==="android"},options:{useSimulatedScrollbar:!0}},{device:function(){return t.devices.real().platform==="ios"},options:{pushBackValue:1}}])},_initOptions:function(n){this.callBase(n),"useSimulatedScrollbar"in n||this._setUseSimulatedScrollbar()},_setUseSimulatedScrollbar:function(){this._initialOptions.useSimulatedScrollbar||this.option("useSimulatedScrollbar",!this.option("useNative"))},_init:function(){this.callBase(),this._initMarkup(),this._attachNativeScrollbarsCustomizationCss(),this._locked=!1},_visibilityChanged:function(n){this.element().is(":hidden")||(n?(this.update(),this._toggleRTLDirection(this.option("rtlEnabled")),this._savedScrollOffset&&this.scrollTo(this._savedScrollOffset)):this._savedScrollOffset=this.scrollOffset())},_initMarkup:function(){var t=this.element().addClass(h),i=this._$container=n("
").addClass(y),r=this._$content=n("
").addClass(c);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._renderPushBackOffset(),this._renderDirection(),this._renderStrategy(),this._attachEventHandlers(),this._renderDisabledState(),this._createActions(),this.update(),this.callBase()},_renderPushBackOffset:function(){var n=this.option("pushBackValue");this._$content.css({paddingTop:n,paddingBottom:n})},_toggleRTLDirection:function(n){this.callBase(n),n&&this.option("direction")!==r&&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),isNative:this.option("useNative")};this._$container.off("."+u).on(e.addNamespace("scroll",u),n.proxy(t.handleScroll,t)).on(e.addNamespace("dxscrollinit",u),i,n.proxy(this._initHandler,this)).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._isLocked()?!1:(this.update(),this._strategy.validate(n))},_initHandler:function(){var n=this._strategy;n.handleInit.apply(n,arguments)},_renderDisabledState:function(){this.element().toggleClass(v,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(a,this._strategy)},_createStrategy:function(){this._strategy=this.option("useNative")?new o.dxScrollable.NativeStrategy(this):new o.dxScrollable.SimulatedStrategy(this)},_createActions:function(){this._strategy.createActions()},_clean:function(){this._strategy.dispose()},_optionChanged:function(n){switch(n.name){case"onStart":case"onEnd":case"onStop":case"onUpdated":case"onScroll":case"onBounce":this._createActions();break;case"direction":this._resetInactiveDirection(),this._invalidate();break;case"useNative":this._setUseSimulatedScrollbar(),this._invalidate();break;case"inertiaEnabled":case"bounceEnabled":case"scrollByContent":case"scrollByThumb":case"bounceEnabled":case"useKeyboard":case"showScrollbar":case"useSimulatedScrollbar":case"pushBackValue":this._invalidate();break;case"disabled":this._renderDisabledState();break;default:this.callBase(n)}},_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.when().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,i){var e,o;i=i||{};var u=n(t),s=this.content().find(t).length,l=u.parents("."+h).length-u.parents("."+c).length==0;s&&l&&(e={top:0,left:0},o=this.option("direction"),o!==r&&(e.left=this._scrollToElementPosition(u,f,i)),o!==f&&(e.top=this._scrollToElementPosition(u,r,i)),this.scrollTo(e))},_scrollToElementPosition:function(n,t,i){var u=t===r,o=(u?i.top:i.left)||0,v=(u?i.bottom:i.right)||0,y=u?this.option("pushBackValue"):0,s=this._elementPositionRelativeToContent(n,u?"top":"left"),e=s-y,h=n[u?"outerHeight":"outerWidth"](),c=s+h,f=(u?this.scrollTop():this.scrollLeft())-o,l=(u?this.clientHeight():this.clientWidth())-o-v,a=f+l,p=f<=e&&a>=c,w=f>=e&&a<=c,b=p||w,k=f>e;return b?f:e-(k?0:l-h)},_elementPositionRelativeToContent:function(n,t){for(var i=0;this._hasScrollContent(n);)i+=n.position()[t],n=n.offsetParent();return i},_hasScrollContent:function(n){var t=this.content();return n.closest(t).length&&!n.is(t)}})),o.dxScrollable.deviceDependentOptions=l}(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",a="dx-scrollable-scroll-content",v="dx-scrollbar-hoverable",c="horizontal",y=15,r={onScroll:"onScroll",onHover:"onHover",always:"always",never:"never"},u;t.registerComponent(f,e.dxScrollable,e.Widget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({direction:null,visible:!1,activeStateEnabled:!1,visibilityMode:r.onScroll,containerSize:0,contentSize:0,expandable:!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(v,this.option("hoverStateEnabled"))},_renderThumb:function(){this._$thumb=n("
").addClass(l),n("
").addClass(a).appendTo(this._$thumb),this.element().addClass(s).append(this._$thumb)},isThumb:function(n){return!!this.element().find(n).length},_isHoverMode:function(){return this.option("visibilityMode")===r.onHover&&this.option("expandable")},_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.outerHeight(this.option("height")),this._$thumb.outerWidth(this.option("width"))},_toggleVisibility:function(n){this.option("visibilityMode")===r.onScroll&&this._$thumb.css("opacity"),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),y)),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){if(!this._isHidden())switch(n.name){case"containerSize":case"contentSize":this.option()[n.name]=this._normalizeSize(n.value),this._update();break;case"visibilityMode":case"direction":this._invalidate();break;default:this.callBase.apply(this,arguments)}},update:function(){this._adjustVisibility()&&this.option("visible",!0)}})),u=null;n(document).on(o.addNamespace("dxpointerup",f),function(){u&&u.feedbackOff()})}(jQuery,DevExpress),function(n,t,i){var o=t.ui,s=t.devices,e="dxNativeScrollable",f="dx-scrollable-native",h="dx-scrollable-scrollbar-simulated",c="dx-scrollable-scrollbars-hidden",r="vertical",u="horizontal",l=500;o.dxScrollable.NativeStrategy=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(){var n=s.real(),t=n.platform;this._$element.addClass(f).addClass(f+"-"+t).toggleClass(c,!this._showScrollbar),this._showScrollbar&&this._useSimulatedScrollbar&&this._renderScrollbars()},_renderScrollbars:function(){this._scrollbars={},this._hideScrollbarTimeout=0,this._$element.addClass(h),this._renderScrollbar(r),this._renderScrollbar(u)},_renderScrollbar:function(t){if(this._isDirection(t)){var i=n("
").dxScrollbar({direction:t,expandable:this._component.option("scrollByThumb")}).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.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(){this._scrollAction=this._createActionByOption("onScroll"),this._updateAction=this._createActionByOption("onUpdated")},_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._lastLocation=this.location(),this._pushBackFromBoundary()},_pushBackFromBoundary:function(){var n=this.option("pushBackValue");if(n){var t=this._containerSize.height-this._contentSize.height,i=this._$container.scrollTop(),r=t+i-n*2;i?r||this._$container.scrollTop(n-t):this._$container.scrollTop(n)}},_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),l)},location:function(){return{left:-this._$container.scrollLeft(),top:this.option("pushBackValue")-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()},this._pushBackFromBoundary()},_updateScrollbars:function(){this._eachScrollbar(function(n,t){var i=t===r?"height":"width";n.option({containerSize:this._containerSize[i],contentSize:this._componentContentSize[i]}),n.update()})},_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("."+e),this._$container.off("."+e),this._removeScrollbars(),clearTimeout(this._gestureEndTimer),clearTimeout(this._hideScrollbarTimeout)},_removeScrollbars:function(){this._eachScrollbar(function(n){n.element().remove()})},scrollBy:function(n){var t=this.location();this._$container.scrollTop(-t.top-n.top+this.option("pushBackValue")),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 v=t.ui,h=v.events,o=Math,y=t.translator,k=t.devices.real,d=k.platform==="win8"||k.platform==="android",g="dxSimulatedScrollable",p="dxScrollableStrategy",c=g+"Cursor",w=g+"Keyboard",b="dx-scrollable-simulated",ft="dx-scrollable-scrollbars-hidden",et="dx-scrollable-scrollbar",u="vertical",r="horizontal",l=d?.95:.92,nt=.5,tt=1,ot=o.round(1e3/60),it=20,st=tt/5,ht=d?300:400,ct=ht/ot,lt=(1-o.pow(l,ct))/(1-l),e={PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40},rt=function(){var r=n.Callbacks(),u=50,t=null,i;n(window).on(h.addNamespace("focus",p),function(){t=n.now()});n(document).on(h.addNamespace("dxpointerdown",p),function(){t=n.now()});return i=function(i){var f=n.now()-t>u,e=i.target===document.activeElement;f&&e&&r.fire(i.target)},window.addEventListener?window.addEventListener("focus",i,!0):window.attachEvent("onfocusin",i),r}(),ut=t.Animator.inherit({ctor:function(n){this.callBase(),this.scroller=n},VELOCITY_LIMIT:tt,_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()?l:nt},_complete:function(){this.scroller._scrollComplete()},_stop:function(){this.scroller._stopComplete()}}),at=ut.inherit({VELOCITY_LIMIT:st,_isFinished:function(){return this.scroller._crossBoundOnNextStep()||this.callBase()},_acceleration:function(){return l},_complete:function(){this.scroller._move(this.scroller._bounceLocation),this.callBase()}}),a=function(n){return n.type==="dxmousewheel"},vt=v.dxScrollable.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 ut(this),this._bounceAnimator=new at(this)},_initScrollbar:function(){this._$scrollbar=n("
").dxScrollbar({direction:this._direction,visible:this._scrollByThumb,visibilityMode:this._visibilityModeNormalize(this._scrollbarVisible),containerSize:this._containerSize(),contentSize:this._contentSize(),expandable:this._scrollByThumb}).appendTo(this._$container),this._scrollbar=this._$scrollbar.dxScrollbar("instance")},_visibilityModeNormalize:function(n){return n===!0?"onScroll":n===!1?"never":n},_scrollStep:function(t){var i=this._location;this._location+=t,this._suppressBounce(),this._move(),i!==this._location&&(this._scrollAction(),n.data(this._$container.get(0),"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,y.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/lt},_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||n>this._maxOffset&&t<=this._maxOffset},_initHandler: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(!a(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()},_startHandler:function(){this._showScrollbar()},_moveHandler:function(n){n=n[this._axis],this._thumbScrolling&&(n=-n/this._containerToContentRatio()),this._inBounds()||(n*=nt),this._scrollStep(n)},_containerToContentRatio:function(){return this._scrollbar.containerToContentRatio()},_endHandler:function(t){return this._completeDeferred=n.Deferred(),this._velocity=t[this._axis],this._inertiaHandler(),this._resetThumbScrolling(),this._completeDeferred.promise()},_inertiaHandler:function(){this._suppressIntertia(),this._inertiaAnimator.start()},_suppressIntertia:function(){(!this._inertiaEnabled||this._thumbScrolling)&&(this._velocity=0)},_resetThumbScrolling:function(){this._thumbScrolling=!1},_stopHandler:function(){this._resetThumbScrolling(),this._scrollToBounds()},_disposeHandler:function(){this._stopScrolling(),this._$scrollbar.remove()},_updateHandler:function(){this._update(),this._moveToBounds()},_update:function(){this._stopScrolling(),this._updateLocation(),this._updateBounds(),this._updateScrollbar(),this._moveScrollbar(),this._scrollbar.update()},_updateLocation:function(){this._location=y.locate(this._$content)[this._prop]},_updateBounds:function(){this._maxOffset=this._getMaxOffset(),this._minOffset=this._getMinOffset()},_getMaxOffset:function(){return 0},_getMinOffset:function(){return o.min(this._containerSize()-this._contentSize(),0)},_updateScrollbar:function(){this._scrollbar.option({containerSize:this._containerSize(),contentSize:this._contentSize()})},_moveToBounds:function(){this._location=this._boundLocation(),this._move()},_createActionsHandler:function(n){this._scrollAction=n.scroll,this._bounceAction=n.bounce},_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},_cursorEnterHandler:function(){this._scrollbar.cursorEnter()},_cursorLeaveHandler:function(){this._scrollbar.cursorLeave()},dispose:n.noop}),f,s;v.dxScrollable.SimulatedStrategy=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.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),this._proxiedActiveElementChangeHandler=n.proxy(this._activeElementChangeHandler,this),rt.add(this._proxiedActiveElementChangeHandler)},_activeElementChangeHandler:function(n){this._component.scrollToElement(n)},render:function(){this._$element.addClass(b),this._createScrollers(),this.option("useKeyboard")&&this._$container.prop("tabindex",0),this._attachKeyboardHandler(),this._attachCursorHandlers()},_createScrollers:function(){this._scrollers={},this._isDirection(r)&&this._createScroller(r),this._isDirection(u)&&this._createScroller(u),this._$element.toggleClass(ft,!this.option("showScrollbar"))},_createScroller:function(n){this._scrollers[n]=new vt(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._eventHandler("init",n).done(this._stopAction)},_supressDirections:function(n){if(a(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._eventHandler("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._eventHandler("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._eventHandler("end",n.velocity).done(this._endAction)},handleCancel:function(n){return this._resetActive(),this._eventForUserAction=n,this._eventHandler("end",{x:0,y:0})},handleStop:function(){this._resetActive(),this._eventHandler("stop")},handleScroll:function(){var n={left:this.option("direction")!==u?-this._$container.scrollLeft():0,top:this.option("direction")!==r?-this._$container.scrollTop():0};(n.left||n.top)&&(this._$container.scrollLeft(0),this._$container.scrollTop(0),this.scrollBy(n))},_attachKeyboardHandler:function(){if(this._$element.off("."+w),!this.option("disabled")&&this.option("useKeyboard"))this._$element.on(h.addNamespace("keydown",w),n.proxy(this._keyDownHandler,this))},_keyDownHandler: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)*-it,left:(n.x||0)*-it})},_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("onStart"),this._stopAction=this._createActionHandler("onStop"),this._endAction=this._createActionHandler("onEnd"),this._updateAction=this._createActionHandler("onUpdated"),this._createScrollerActions()},_createScrollerActions:function(){this._eventHandler("createActions",{scroll:this._createActionHandler("onScroll"),bounce:this._createActionHandler("onBounce")})},_createActionHandler:function(t){var i=this,r=i._createActionByOption(t);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()}},_eventHandler:function(t){var i=n.makeArray(arguments).slice(1),r=n.map(this._scrollers,function(n){return n["_"+t+"Handler"].apply(n,i)});return n.when.apply(n,r).promise()},location:function(){return y.locate(this._$content)},disabledChanged:function(){this._attachCursorHandlers()},_attachCursorHandlers:function(){if(this._$element.off("."+c),!this.option("disabled")&&this._isHoverMode())this._$element.on(h.addNamespace("mouseenter",c),n.proxy(this._cursorEnterHandler,this)).on(h.addNamespace("mouseleave",c),n.proxy(this._cursorLeaveHandler,this))},_isHoverMode:function(){return this.option("showScrollbar")==="onHover"},_cursorEnterHandler:function(n){(n=n||{},n.originalEvent=n.originalEvent||{},s||n.originalEvent._hoverHandled)||(f&&f._cursorLeaveHandler(),f=this,this._eventHandler("cursorEnter"),n.originalEvent._hoverHandled=!0)},_cursorLeaveHandler:function(n){f===this&&s!==f&&(this._eventHandler("cursorLeave"),f=null,this._refreshCursorState(n&&n.relatedTarget))},_refreshCursorState:function(t){if(this._isHoverMode()||t&&!s){var u=n(t),r=u.closest("."+b+":not(.dx-state-disabled)"),i=r.length&&r.data(p);f&&f!==i&&f._cursorLeaveHandler(),i&&i._cursorEnterHandler()}},update:function(){return this._eventHandler("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._eventHandler("start").done(this._startAction),this._eventHandler("move",{x:n.left,y:n.top}),this._eventHandler("end",{x:0,y:0}).done(this._endAction)},validate:function(n){return this.option("disabled")?!1:this.option("bounceEnabled")?!0:a(n)?this._validateWheel(n):this._validateMove(n)},_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(t){return!this.option("scrollByContent")&&!n(t.target).closest("."+et).length?!1:this._allowedDirection()},getDirection:function(n){return a(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(){rt.remove(this._proxiedActiveElementChangeHandler),s===this&&(s=null),f===this&&(f=null),this._eventHandler("dispose"),this._detachEventHandlers(),this._$element.removeClass(b),this._eventForUserAction=null,clearTimeout(this._gestureEndTimer)},_detachEventHandlers:function(){this._$element.off("."+c),this._$container.off("."+w)}})}(jQuery,DevExpress),function(n,t,i){var u=t.ui,r="dx-scrollview",e=r+"-content",o=r+"-top-pocket",s=r+"-bottom-pocket",h=r+"-pull-down",f=r+"-scrollbottom",c=f+"-indicator",l=f+"-text",a=r+"-loadpanel";t.registerComponent("dxScrollView",u,u.dxScrollable.inherit({_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{pullDownAction:{since:"14.2",alias:"onPullDown"},reachBottomAction:{since:"14.2",alias:"onReachBottom"}})},_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"),onPullDown:null,onReachBottom:null,refreshStrategy:"pullDown"})},_defaultOptionsRules:function(){return this.callBase().concat([{device:function(){var t=DevExpress.devices.real();return t.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("
").addClass(e);this._$content.wrapInner(t)},_initTopPocket:function(){var t=this._$topPocket=n("
").addClass(o),i=this._$pullDown=n("
").addClass(h);t.append(i),this._$content.prepend(t)},_initBottomPocket:function(){var t=this._$bottomPocket=n("
").addClass(s),i=this._$reachBottom=n("
").addClass(f),r=n("
").addClass(c),u=n("
").dxLoadIndicator(),e=this._$reachBottomText=n("
").addClass(l);this._updateReachBottomText(),i.append(r.append(u)).append(e),t.append(i),this._$content.append(t)},_initLoadPanel:function(){this._loadPanel=this._createComponent(n("
").addClass(a).appendTo(this.element()),"dxLoadPanel",{shading:!1,delay:400,message:this.option("refreshingText"),position:{of:this.element()}})},_updateReachBottomText:function(){this._$reachBottomText.text(this.option("reachBottomText"))},_createStrategy:function(){var i=this.option("useNative")?this.option("refreshStrategy"):"simulated",t=u.dxScrollView.refreshStrategies[i];if(!t)throw Error("E1030",this.option("refreshStrategy"));this._strategy=new t(this),this._strategy.pullDownCallbacks.add(n.proxy(this._pullDownHandler,this)),this._strategy.releaseCallbacks.add(n.proxy(this._releaseHandler,this)),this._strategy.reachBottomCallbacks.add(n.proxy(this._reachBottomHandler,this))},_createActions:function(){this.callBase(),this._pullDownAction=this._createActionByOption("onPullDown"),this._reachBottomAction=this._createActionByOption("onReachBottom"),this._pullDownEnable(!!this.option("onPullDown")&&!t.designMode),this._reachBottomEnable(!!this.option("onReachBottom")&&!t.designMode)},_pullDownEnable:function(n){if(arguments.length===0)return this._pullDownEnabled;this._$pullDown.toggle(n),this._strategy.pullDownEnable(n),this._pullDownEnabled=n},_reachBottomEnable:function(n){if(arguments.length===0)return this._reachBottomEnabled;this._$reachBottom.toggle(n),this._strategy.reachBottomEnable(n),this._reachBottomEnabled=n},_pullDownHandler: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()},_reachBottomHandler:function(){this._loadingIndicator(!1),this._reachBottomLoading()},_reachBottomLoading:function(){this.startLoading(),this._reachBottomAction()},_releaseHandler:function(){this.finishLoading(),this._loadingIndicator(!0)},_optionChanged:function(n){switch(n.name){case"onPullDown":case"onReachBottom":this._createActions();break;case"pullingDownText":case"pulledDownText":case"refreshingText":case"refreshStrategy":this._invalidate();break;case"reachBottomText":this._updateReachBottomText();break;default:this.callBase(n)}},isEmpty:function(){return!this.content().children().length},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("onPullDown")&&(this._strategy.pendingRelease(),this._pullDownLoading())},startLoading:function(){this._loadingIndicator()&&this.element().is(":visible")&&this._loadPanel.show(),this._lock()},finishLoading:function(){this._loadPanel.hide(),this._unlock()},_dispose:function(){this._strategy.dispose(),this.callBase(),this._loadPanel&&this._loadPanel.element().remove()}})),u.dxScrollView.refreshStrategies={}}(jQuery,DevExpress),function(n,t){var o=t.ui,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=o.dxScrollable.NativeStrategy.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("
").addClass(c),r=n("
").addClass(l),u=n("
").dxLoadIndicator(),t=this._$pullDownText=n("
").addClass(a);this._$pullingDownText=n("
").text(this.option("pullingDownText")).appendTo(t),this._$pulledDownText=n("
").text(this.option("pulledDownText")).appendTo(t),this._$refreshingText=n("
").text(this.option("refreshingText")).appendTo(t),this._$pullDown.empty().append(i).append(r.append(u)).append(t)},_releaseState:function(){this._state=e,this._refreshPullDownText()},_pushBackFromBoundary:function(){this._isLocked()||this._component.isEmpty()||this.callBase()},_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()},_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._state!==u)&&(this._location=this.location().top,this._isPullDown()?this._pullDownReady():this._isReachBottom()?this._reachBottom():this._stateReleased())},_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()},dispose:function(){clearTimeout(this._pullDownRefreshTimeout),clearTimeout(this._releaseTimeout),this.callBase()}});o.dxScrollView.refreshStrategies.pullDown=v}(jQuery,DevExpress),function(n,t){var r=t.ui,o=r.events,s="dx-scrollview-pull-down-loading",c="dx-scrollview-pull-down-indicator",l="dx-scrollview-pull-down-refreshing",a="dx-icon-pulldown",u=0,v=1,h=2,f=4,e=5,y=r.dxScrollable.NativeStrategy.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._location=0},_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 t=n("
").addClass(c),i=n("
").dxLoadIndicator({});this._$icon=n("
").addClass(a),this._$pullDown.empty().append(this._$icon).append(t.append(i))},_releaseState:function(){this._state=u,this._releasePullDown(),this._updateDimensions()},_releasePullDown:function(){this._$pullDown.css({opacity:0})},_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=o.eventData(n.originalEvent).y,this._state=f)},handleMove:function(n){this.callBase(n),this._deltaY=o.eventData(n.originalEvent).y-this._startClientY,this._state===f&&(this._pullDownEnabled&&this._deltaY>0?this._state=e:this._complete()),this._state===e&&(n.preventDefault(),this._movePullDown())},_movePullDown:function(){var n=this._getPullDownHeight(),i=Math.min(n*3,this._deltaY+this._getPullDownStartPosition()),r=180*i/n/3;this._$pullDown.css({opacity:1}).toggleClass(l,i=this._getPullDownHeight()-this._getPullDownStartPosition()},_getPullDownHeight:function(){return Math.round(this._$element.outerHeight()*.05)},_getPullDownStartPosition:function(){return-Math.round(this._$pullDown.outerHeight()*1.5)},handleEnd:function(){this._isPullDown()&&this._pullDownRefreshing(),this._complete()},handleStop:function(){this._complete()},_complete:function(){(this._state===f||this._state===e)&&this._releaseState()},handleScroll:function(n){if(this.callBase(n),this._state!==h){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(s),this._releaseState())},_pullDownRefreshing:function(){this._state=h,this._pullDownRefreshHandler()},_pullDownRefreshHandler:function(){this._refreshPullDown(),this.pullDownCallbacks.fire()},_refreshPullDown:function(){this._$pullDown.addClass(s),t.translator.move(this._$pullDown,{top:this._getPullDownHeight()})},pullDownEnable:function(n){this._$topPocket.toggle(n),this._pullDownEnabled=n},reachBottomEnable:function(n){this._reachBottomEnabled=n},pendingRelease:function(){this._state=v},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.dxScrollView.refreshStrategies.swipeDown=y}(jQuery,DevExpress),function(n,t){var u=t.ui,r=0,e=1,f=2,o=80,s=u.dxScrollable.NativeStrategy.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("")},_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.dxScrollView.refreshStrategies.slideDown=s}(jQuery,DevExpress),function(n,t){var f=t.ui,c=Math,h="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.dxScrollView.Scroller=f.dxScrollable.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.callBase(),this._bottomBound=this._minOffset},_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=this._getMinOffset())},_getMaxOffset:function(){return-this._topPocketSize},_getMinOffset:function(){return c.min(this.callBase(),-this._topPocketSize)},_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._updateBounds(),this._$pullDown.removeClass(h).removeClass(e),this.releaseCallbacks.fire())},_pullDownRefreshing:function(){this._state!==o&&(this._state=o,this._$pullDown.addClass(h).removeClass(e),this._refreshPullDownText(),this.pullDownCallbacks.fire())},_releaseHandler:function(){return this._state===r&&this._moveToBounds(),this._update(),this._releaseTask&&this._releaseTask.abort(),this._releaseTask=t.utils.executeAsync(n.proxy(this._release,this)),this._releaseTask.promise},_release:function(){this._stateReleased(),this._scrollComplete()},_reachBottomEnablingHandler:function(n){this._reachBottomEnabled!==n&&(this._reachBottomEnabled=n,this._updateBounds())},_pullDownEnablingHandler:function(n){this._pullDownEnabled!==n&&(this._pullDownEnabled=n,this._considerTopPocketChange(),this._updateHandler())},_considerTopPocketChange:function(){this._location-=this._$topPocket.height()||-this._topPocketSize,this._move()},_pendingReleaseHandler:function(){this._state=u},dispose:function(){this._releaseTask&&this._releaseTask.abort(),this.callBase()}}),p=f.dxScrollable.SimulatedStrategy.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("
").addClass(l),r=n("
").addClass(a),u=n("
").dxLoadIndicator(),t=this._$pullDownText=n("
").addClass(v);this._$pullingDownText=n("
").text(this.option("pullingDownText")).appendTo(t),this._$pulledDownText=n("
").text(this.option("pulledDownText")).appendTo(t),this._$refreshingText=n("
").text(this.option("refreshingText")).appendTo(t),this._$pullDown.empty().append(i).append(r.append(u)).append(t)},pullDownEnable:function(n){this._eventHandler("pullDownEnabling",n)},reachBottomEnable:function(n){this._eventHandler("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._eventHandler("pendingRelease")},release:function(){return this._eventHandler("release").done(this._updateAction)},location:function(){var n=this.callBase();return n.top+=this._$topPocket.height(),n},dispose:function(){n.each(this._scrollers,function(){this.dispose()}),this.callBase()}});f.dxScrollView.refreshStrategies.simulated=p}(jQuery,DevExpress),function(n,t){var r=t.ui,h=r.events,e=t.utils,c=t.support.winJS,o=e.wrapToArray,u=e.removeDublicates,l=t.inflector.titleize,a="dx-map",v="dx-map-container",s="dx-map-shield",f;t.registerComponent("dxMap",r,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),s=o(i);return r.push.apply(r,s),this._notificationDeffered=f,this.option(t,r),f.done(function(n){u.resolveWith(e,n&&n.length>1?[n]:n)}),u.promise()},_removeFunction:function(i,r){var f=n.Deferred(),s=this,e=n.Deferred(),u=this.option(i),h=o(r);return n.each(h,function(r,f){var e=n.isNumeric(f)?f:n.inArray(f,u);if(e!==-1)u.splice(e,1);else throw t.log("E1021",l(i.substring(0,i.length-1)),f);}),this._notificationDeffered=e,this.option(i,u),e.done(function(){f.resolveWith(s)}),f.promise()},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{markerAddedAction:{since:"14.2",alias:"onMarkerAdded"},markerRemovedAction:{since:"14.2",alias:"onMarkerRemoved"},readyAction:{since:"14.2",alias:"onReady"},routeAddedAction:{since:"14.2",alias:"onRouteAdded"},routeRemovedAction:{since:"14.2",alias:"onRouteRemoved"},clickAction:{since:"14.2",alias:"onClick"}})},_setDefaultOptions:function(){this.callBase(),this.option({bounds:{northEast:null,southWest:null},center:{lat:0,lng:0},zoom:1,width:300,height:300,type:"roadmap",provider:"google",autoAdjust:!0,markers:[],markerIconSrc:null,onMarkerAdded:null,onMarkerRemoved:null,routes:[],onRouteAdded:null,onRouteRemoved:null,key:{bing:"",google:"",googleStatic:""},controls:!1,onReady:null,onUpdated:null,onClick:null})},_defaultOptionsRules:function(){return this.callBase().concat([{device:function(){return t.devices.real().generic&&!t.devices.isSimulator()},options:{focusStateEnabled:!0}}])},_init:function(){this.callBase(),this._asyncQueue=[],this._checkProvider(),this._checkMarkersOption(this.option("markers")),this._checkRoutesOption(this.option("routes")),this._initContainer(),this._grabEvents(),this._cleanRenderedMarkers(),this._cleanRenderedRoutes()},_checkProvider:function(){if(c&&this.option("provider")==="google")throw t.Error("E1024");},_checkMarkersOption:function(i){if(!n.isArray(i))throw t.Error("E1022");},_checkRoutesOption:function(i){if(!n.isArray(i))throw t.Error("E1023");},_initContainer:function(){this._$container=n("
").addClass(v),this.element().append(this._$container)},_grabEvents:function(){var t=h.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()},_cleanRenderedMarkers:function(){this._renderedMarkers=[]},_cleanRenderedRoutes:function(){this._renderedRoutes=[]},_render:function(){this.callBase(),this.element().addClass(a),this._renderShield(),this._queueAsyncAction("render",this.option("markers"),this.option("routes")),this._saveRenderedMarkers(),this._saveRenderedRoutes()},_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("
").addClass(s),this.element().append(i)):(i=this.element().find("."+s),i.remove())},_clean:function(){(this._cleanFocusState(),this._provider)&&(this._queueAsyncAction("clean"),this._cleanRenderedMarkers(),this._cleanRenderedRoutes())},_optionChanged:function(i){var f=i.value,r;if(!this._cancelOptionChange){r=this._notificationDeffered,delete this._notificationDeffered;switch(i.name){case"disabled":this._renderShield(),this.callBase(i);break;case"width":case"height":this.callBase(i),this._dimensionChanged();break;case"provider":this._invalidate();break;case"key":t.log("W1001");break;case"bounds":this._queueAsyncAction("updateBounds");break;case"center":this._queueAsyncAction("updateCenter");break;case"zoom":this._queueAsyncAction("updateZoom");break;case"type":this._queueAsyncAction("updateMapType");break;case"controls":this._queueAsyncAction("updateControls",this.option("markers"),this.option("routes"));break;case"autoAdjust":this._queueAsyncAction("adjustViewport");break;case"markers":this._checkMarkersOption(f),this._queueAsyncAction("updateMarkers",r?u(this._renderedMarkers,f):this._renderedMarkers,r?u(f,this._renderedMarkers):f).done(n.proxy(function(){r&&r.resolve.apply(r,arguments)},this)),this._saveRenderedMarkers(f);break;case"markerIconSrc":this._queueAsyncAction("updateMarkers",this._renderedMarkers,this._renderedMarkers);break;case"routes":this._checkRoutesOption(f),this._queueAsyncAction("updateRoutes",r?u(this._renderedRoutes,f):this._renderedRoutes,r?u(f,this._renderedRoutes):f).done(n.proxy(function(){r&&r.resolve.apply(r,arguments)},this)),this._saveRenderedRoutes(f);break;case"onReady":case"onUpdated":case"onMarkerAdded":case"onMarkerRemoved":case"onRouteAdded":case"onRouteRemoved":case"onClick":break;default:this.callBase.apply(this,arguments)}}},_visibilityChanged:function(n){n&&this._dimensionChanged()},_dimensionChanged:function(){this._queueAsyncAction("updateDimensions")},_queueAsyncAction:function(t){var i=n.Deferred(),r=!this._asyncQueue.length;return this._asyncQueue.push({name:t,options:n.makeArray(arguments).slice(1),deferred:i}),r&&this._enqueueAsyncAction(),i.promise()},_enqueueAsyncAction:function(){var t=!this._asyncQueue.length;t||this._execAsyncAction(this._asyncQueue[0]).done(n.proxy(function(){this._asyncQueue.shift(),this._enqueueAsyncAction()},this))},_execAsyncAction:function(t){var i=n.Deferred(),r=t.name,e=t.options,u=t.deferred,f=this._getProvider(r);return f[r].apply(f,e).done(n.proxy(function(t){u.resolve.apply(u,n.makeArray(arguments).slice(1)),t&&this._triggerReadyAction(),i.resolve()},this)),i.promise()},_getProvider:function(n){var t=this.option("provider");return n!=="clean"&&this._usedProvider!==t&&(this._provider=new f[t](this,this._$container),this._usedProvider=t),this._provider},_triggerReadyAction:function(){this._createActionByOption("onReady")({originalMap:this._provider.map()})},_triggerUpdateAction:function(){this._createActionByOption("onUpdated")()},setOptionSilent:function(n,t){this._cancelOptionChange=!0,this.option(n,t),this._cancelOptionChange=!1}})),f={},r.dxMap.registerProvider=function(n,t){f[n]=t}}(jQuery,DevExpress),function(n,t,i){var r=t.ui,u=r.events;r.dxMap.Provider=t.Class.inherit({_defaultRouteWeight:function(){return 5},_defaultRouteOpacity:function(){return.5},_defaultRouteColor:function(){return"#0000FF"},cancelEvents:!1,ctor:function(n,t){this._mapWidget=n,this._$container=t},render:function(t,i){var r=n.Deferred();return this._renderImpl().done(n.proxy(function(){var u=this.addMarkers(t),f=this.addRoutes(i);n.when(u,f).done(function(){r.resolve(!0)})},this)),r.promise()},_renderImpl:t.abstract,updateDimensions:t.abstract,updateMapType:t.abstract,updateBounds: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,map: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}},_getLatLng:function(t){if(typeof t=="string"){var i=n.map(t.split(","),n.trim),r=/[-+]?[0-9]*\.?[0-9]*/;if(i.length===2&&i[0].match(r)&&i[1].match(r))return{lat:parseFloat(i[0]),lng:parseFloat(i[1])}}else{if(n.isArray(t)&&t.length===2)return{lat:t[0],lng:t[1]};if(n.isPlainObject(t)&&n.isNumeric(t.lat)&&n.isNumeric(t.lng))return t}return null},_isBoundsSetted:function(){return this._option("bounds.northEast")&&this._option("bounds.southWest")},_addEventNamespace:function(n){return u.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("onClick",n)},_fireMarkerAddedAction:function(n){this._fireAction("onMarkerAdded",n)},_fireMarkerRemovedAction:function(n){this._fireAction("onMarkerRemoved",n)},_fireRouteAddedAction:function(n){this._fireAction("onRouteAdded",n)},_fireRouteRemovedAction:function(n){this._fireAction("onRouteRemoved",n)}})}(jQuery,DevExpress),function(n,t){var r=t.ui,u="https://maps.google.com/maps/api/staticmap?";r.dxMap.registerProvider("googleStatic",r.dxMap.Provider.inherit({_locationToString:function(n){var t=this._getLatLng(n);return t?t.lat+","+t.lng:n.toString().replace(/ /g,"+")},_renderImpl:function(){return this._updateMap()},updateDimensions:function(){return this._updateMap()},updateMapType:function(){return this._updateMap()},updateBounds:function(){return n.Deferred().resolve().promise()},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(){return this._$container.css("background-image","none"),this._$container.off(this._addEventNamespace("dxclick")),n.Deferred().resolve().promise()},mapRendered:function(){return!0},_updateMap:function(){var i=this._keyOption("googleStatic"),r=this._$container,t=["sensor=false","size="+r.width()+"x"+r.height(),"maptype="+this._option("type"),"center="+this._locationToString(this._option("center")),"zoom="+this._option("zoom"),this._markersSubstring()],f;return t.push.apply(t,this._routeSubstrings()),i&&t.push("key="+i),f=u+t.join("&"),this._$container.css("background",'url("'+f+'") 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;r.dxMap.DynamicProvider=r.dxMap.Provider.inherit({cancelEvents:!0,_renderImpl:function(){var r=n.Deferred();return this._load().done(n.proxy(function(){this._init().done(n.proxy(function(){var t=this.updateMapType(),i=this._isBoundsSetted()?this.updateBounds():this.updateCenter();n.when(t,i).done(n.proxy(function(){this._attachHandlers(),setTimeout(function(){r.resolve()})},this))},this))},this)),r.promise()},_load:function(){return this._mapsLoader||(this._mapsLoader=n.Deferred(),this._loadImpl().done(n.proxy(function(){this._mapsLoader.resolve()},this))),this._markers=[],this._routes=[],this._mapsLoader.promise()},_loadImpl:t.abstract,_init:t.abstract,_attachHandlers:t.abstract,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._fitBounds(),i._fireMarkerAddedAction({options:t,originalMarker:r.marker})})},_renderMarker:t.abstract,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){return r.options!==t?!0:(i._destroyMarker(r),i._markers.splice(n,1),i._fireMarkerRemovedAction({options:r.options}),!1)})},_destroyMarker:t.abstract,_clearMarkers:function(){while(this._markers.length>0)this._removeMarker(this._markers[0].options)},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(){var t=n.map(n.makeArray(arguments),function(n){return n.instance});i.resolve(!1,t)}),i.promise()},_addRoute:function(t){var i=this;return this._renderRoute(t).done(function(r){i._routes.push(n.extend({options:t},r)),i._fitBounds(),i._fireRouteAddedAction({options:t,originalRoute:r.instance})})},_renderRoute:t.abstract,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._destroyRoute(r),i._routes.splice(n,1),i._fireRouteRemovedAction({options:t}),!1)})},_destroyRoute:t.abstract,_clearRoutes:function(){while(this._routes.length>0)this._removeRoute(this._routes[0].options)},adjustViewport:function(){return this._fitBounds()},_fitBounds:t.abstract,_updateBounds:function(){var t=this;this._clearBounds(),n.each(this._markers,function(n,i){t._extendBounds(i.location)}),n.each(this._routes,function(n,i){t._extendBounds(i.northEast),t._extendBounds(i.southWest)})},_clearBounds:function(){this._bounds=null},_extendBounds:t.abstract})}(jQuery,DevExpress),function(n,t,i){var f=t.ui,s=t.support.winJS,u="_bingScriptReady",h="https://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&s=1&onScriptLoad="+u,c="ms-appx:///Bing.Maps.JavaScript/js/veapicore.js",l="ms-appx:///Bing.Maps.JavaScript/js/veapiModules.js",a="AhuxC0dQ1DBTNo8L-H9ToVMQStmizZzBJdraTSgCzDSWPsA1Qd8uIvFSflzxdaLH",e=1e-16,o=function(){return window.Microsoft&&window.Microsoft.Maps},r;f.dxMap.registerProvider("bing",f.dxMap.DynamicProvider.inherit({_mapType:function(n){var t={roadmap:Microsoft.Maps.MapTypeId.road,hybrid:Microsoft.Maps.MapTypeId.aerial,satellite:Microsoft.Maps.MapTypeId.aerial};return t[n]||t.road},_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=this._getLatLng(t),u,f;return r?i.resolve(new Microsoft.Maps.Location(r.lat,r.lng)):(u=new Microsoft.Maps.Search.SearchManager(this._map),f={where:t,count:1,callback:function(n){var t=n.results[0].location;i.resolve(new Microsoft.Maps.Location(t.latitude,t.longitude))}},u.geocode(f)),i.promise()},_normalizeLocation:function(n){return{lat:n.latitude,lng:n.longitude}},_normalizeLocationRect:function(n){var t=this._normalizeLocation(n.getNorthwest()),i=this._normalizeLocation(n.getSoutheast());return{northEast:{lat:t.lat,lng:i.lng},southWest:{lat:i.lat,lng:t.lng}}},_loadImpl:function(){return this._msMapsLoader=n.Deferred(),o()?this._mapReady():(r&&(r.state()!=="resolved"||o())||(r=n.Deferred(),window[u]=n.proxy(r.resolve,r),s?n.when(n.getScript(c),n.getScript(l)).done(function(){Microsoft.Maps.loadModule("Microsoft.Maps.Map",{callback:window[u]})}):n.getScript(h)),r.done(n.proxy(this._mapReady,this))),this._msMapsLoader.promise()},_mapReady:function(){try{delete window[u]}catch(f){window[u]=i}var t=n.Deferred(),r=n.Deferred();Microsoft.Maps.loadModule("Microsoft.Maps.Search",{callback:n.proxy(t.resolve,t)}),Microsoft.Maps.loadModule("Microsoft.Maps.Directions",{callback:n.proxy(r.resolve,r)}),n.when(t,r).done(n.proxy(function(){this._msMapsLoader.resolve()},this))},_init:function(){var r=n.Deferred(),t=n.Deferred(),i=this._option("controls"),u;return this._map=new Microsoft.Maps.Map(this._$container[0],{credentials:this._keyOption("bing")||a,zoom:this._option("zoom"),showDashboard:i,showMapTypeSelector:i,showScalebar:i}),u=Microsoft.Maps.Events.addHandler(this._map,"tiledownloadcomplete",n.proxy(t.resolve,t)),n.when(t).done(n.proxy(function(){Microsoft.Maps.Events.removeHandler(u),r.resolve()},this)),r.promise()},_attachHandlers:function(){this._providerViewChangeHandler=Microsoft.Maps.Events.addHandler(this._map,"viewchange",n.proxy(this._viewChangeHandler,this)),this._providerClickHandler=Microsoft.Maps.Events.addHandler(this._map,"click",n.proxy(this._clickActionHandler,this))},_viewChangeHandler:function(){var t=this._map.getBounds(),n;this._option("bounds",this._normalizeLocationRect(t)),n=this._map.getCenter(),this._option("center",this._normalizeLocation(n)),this._preventZoomChangeEvent||this._option("zoom",this._map.getZoom())},_clickActionHandler: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)})}},updateDimensions:function(){var t=this._$container;return this._map.setOptions({width:t.width(),height:t.height()}),n.Deferred().resolve().promise()},updateMapType:function(){var t=this._option("type"),i=Microsoft.Maps.LabelOverlay;return this._map.setView({animate:!1,mapTypeId:this._mapType(t),labelOverlay:t==="satellite"?i.hidden:i.visible}),n.Deferred().resolve().promise()},updateBounds:function(){var t=n.Deferred(),i=this,r=this._resolveLocation(this._option("bounds.northEast")),u=this._resolveLocation(this._option("bounds.southWest"));return n.when(r,u).done(function(n,r){var u=new Microsoft.Maps.LocationRect.fromLocations(n,r);i._map.setView({animate:!1,bounds:u}),t.resolve()}),t.promise()},updateCenter: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.apply(this,arguments)},_renderMarker:function(i){var u=n.Deferred(),r=this;return this._resolveLocation(i.location).done(function(f){var h={icon:i.iconSrc||r._option("markerIconSrc")},e,o,s,c,l,a;i.html&&(n.extend(h,{htmlContent:i.html,width:null,height:null}),e=i.htmlOffset,e&&(h.anchor=new Microsoft.Maps.Point(-e.left,-e.top))),o=new Microsoft.Maps.Pushpin(f,h),r._map.entities.push(o),s=r._renderTooltip(f,i.tooltip),i.clickAction&&(t.log("W0001","dxMap","marker.clickAction","14.2","Use 'onClick' option instead"),i.onClick=i.clickAction),(i.onClick||i.tooltip)&&(l=r._createAction(i.onClick||n.noop),a=r._normalizeLocation(f),c=Microsoft.Maps.Events.addHandler(o,"click",function(){l({location:a}),s&&s.setOptions({visible:!0})})),u.resolve({location:f,marker:o,infobox:s,handler:c})}),u.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}},_destroyMarker:function(n){this._map.entities.remove(n.marker),n.infobox&&this._map.entities.remove(n.infobox),n.handler&&Microsoft.Maps.Events.removeHandler(n.handler)},_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(n){Microsoft.Maps.Events.removeHandler(o);var t=n.routeSummary[0];u.resolve({instance:f,northEast:t.northEast,southWest:t.southWest})}),f.calculateDirections()}),u.promise()},_destroyRoute:function(n){n.instance.dispose()},_fitBounds:function(){var i,t,r;return this._updateBounds(),this._bounds&&this._option("autoAdjust")&&(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,zoom:i}),r=this._map.getZoom(),i").css({position:"absolute",display:"none",cursor:"pointer"}).append(t.html),this.setMap(t.map)},r.prototype=new google.maps.OverlayView,r.prototype.onAdd=function(){var t=n(this.getPanes().overlayMouseTarget);t.append(this._$overlayContainer),this._clickListner=google.maps.event.addDomListener(this._$overlayContainer.get(0),"click",n.proxy(function(n){google.maps.event.trigger(this,"click"),n.preventDefault()},this)),this.draw()},r.prototype.onRemove=function(){google.maps.event.removeListener(this._clickListner),this._$overlayContainer.remove()},r.prototype.draw=function(){var n=this.getProjection().fromLatLngToDivPixel(this._position);this._$overlayContainer.css({left:n.x+this._offset.left,top:n.y+this._offset.top,display:"block"})}},o=function(){return window.google&&window.google.maps},u;e.dxMap.registerProvider("google",e.dxMap.DynamicProvider.inherit({_mapType:function(n){var t={hybrid:google.maps.MapTypeId.HYBRID,roadmap:google.maps.MapTypeId.ROADMAP,satellite:google.maps.MapTypeId.SATELLITE};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=this._getLatLng(t),u;return r?i.resolve(new google.maps.LatLng(r.lat,r.lng)):(u=new google.maps.Geocoder,u.geocode({address:t},function(n,t){t===google.maps.GeocoderStatus.OK&&i.resolve(n[0].geometry.location)})),i.promise()},_normalizeLocation:function(n){return{lat:n.lat(),lng:n.lng()}},_normalizeLocationRect:function(n){return{northEast:this._normalizeLocation(n.getNorthEast()),southWest:this._normalizeLocation(n.getSouthWest())}},_loadImpl:function(){if(this._googleMapsLoader=n.Deferred(),o())this._mapReady();else{if(!u||u.state()==="resolved"&&!o()){u=n.Deferred();var t=this._keyOption("google");window[f]=n.proxy(u.resolve,u),n.getScript(s+(t?"&key="+t:""))}u.done(n.proxy(this._mapReady,this))}return this._googleMapsLoader.promise()},_mapReady:function(){try{delete window[f]}catch(n){window[f]=i}h(),this._googleMapsLoader.resolve()},_init:function(){var r=n.Deferred(),i=n.Deferred(),t=this._option("controls"),u;return this._map=new google.maps.Map(this._$container[0],{zoom:this._option("zoom"),panControl:t,zoomControl:t,mapTypeControl:t,streetViewControl:t}),u=google.maps.event.addListener(this._map,"idle",n.proxy(i.resolve,i)),n.when(i).done(n.proxy(function(){google.maps.event.removeListener(u),r.resolve()},this)),r.promise()},_attachHandlers:function(){this._boundsChangeListener=google.maps.event.addListener(this._map,"bounds_changed",n.proxy(this._boundsChangeHandler,this)),this._clickListener=google.maps.event.addListener(this._map,"click",n.proxy(this._clickActionHandler,this))},_boundsChangeHandler:function(){var t=this._map.getBounds(),n;this._option("bounds",this._normalizeLocationRect(t)),n=this._map.getCenter(),this._option("center",this._normalizeLocation(n)),this._preventZoomChangeEvent||this._option("zoom",this._map.getZoom())},_clickActionHandler:function(n){this._fireClickAction({location:this._normalizeLocation(n.latLng)})},updateDimensions:function(){var n=this._option("center");return google.maps.event.trigger(this._map,"resize"),this._option("center",n),this.updateCenter()},updateMapType:function(){return this._map.setMapTypeId(this._mapType(this._option("type"))),n.Deferred().resolve().promise()},updateBounds:function(){var t=n.Deferred(),i=this,r=this._resolveLocation(this._option("bounds.northEast")),u=this._resolveLocation(this._option("bounds.southWest"));return n.when(r,u).done(function(n,r){var u=new google.maps.LatLngBounds;u.extend(n),u.extend(r),i._map.fitBounds(u),t.resolve()}),t.promise()},updateCenter:function(){var i=n.Deferred(),t=this;return this._resolveLocation(this._option("center")).done(function(n){t._map.setCenter(n),t._option("center",t._normalizeLocation(n)),i.resolve()}),i.promise()},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()},_renderMarker:function(i){var f=n.Deferred(),u=this;return this._resolveLocation(i.location).done(function(e){var o,s,h,c,l;o=i.html?new r({map:u._map,position:e,html:i.html,offset:n.extend({top:0,left:0},i.htmlOffset)}):new google.maps.Marker({position:e,map:u._map,icon:i.iconSrc||u._option("markerIconSrc")}),s=u._renderTooltip(o,i.tooltip),i.clickAction&&(t.log("W0001","dxMap","marker.clickAction","14.2","Use 'onClick' option instead"),i.onClick=i.clickAction),(i.onClick||i.tooltip)&&(c=u._createAction(i.onClick||n.noop),l=u._normalizeLocation(e),h=google.maps.event.addListener(o,"click",function(){c({location:l}),s&&s.open(u._map,o)})),f.resolve({location:e,marker:o,listner:h})}),f.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}},_destroyMarker:function(n){n.marker.setMap(null),n.listner&&google.maps.event.removeListener(n.listner)},_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 o=new t.Color(i.color||r._defaultRouteColor()).toHex(),s={directions:n,map:r._map,suppressMarkers:!0,preserveViewport:!0,polylineOptions:{strokeWeight:i.weight||r._defaultRouteWeight(),strokeOpacity:i.opacity||r._defaultRouteOpacity(),strokeColor:o}},h=new google.maps.DirectionsRenderer(s),e=n.routes[0].bounds;u.resolve({instance:h,northEast:e.getNorthEast(),southWest:e.getSouthWest()})}})}),u.promise()},_destroyRoute:function(n){n.instance.setMap(null)},_fitBounds:function(){var t,i;return this._updateBounds(),this._bounds&&this._option("autoAdjust")&&(t=this._map.getZoom(),this._preventZoomChangeEvent=!0,this._map.fitBounds(this._bounds),i=this._map.getZoom(),t"),i;r.addClass(f).addClass(f+"-"+t).appendTo(u),i={},i[p]=n.proxy(this._dragStartHandler,this),i[w]=n.proxy(this._dragHandler,this),i[b]=n.proxy(this._dragEndHandler,this);r.on(i,{direction:this._dragEventDirection(t),immediate:!0})},_dragEventDirection:function(n){switch(n){case"right":case"left":return"horizontal";case"top":case"bottom":return"vertical";default:return"both"}},_dragStartHandler:function(n){this._toggleResizingClass(!0),this._movingSides=this._getMovingSides(n);var i=this.element();this._elementLocation=t.translator.locate(i),this._elementSize={width:i.outerWidth(),height:i.outerHeight()},this._renderDragOffsets(n),this._resizeStartAction({jQueryEvent:n,width:this._elementSize.width,height:this._elementSize.height,handles:this._movingSides}),n.targetElements=null},_toggleResizingClass:function(n){this.element().toggleClass(c,n)},_renderDragOffsets:function(t){var i=this._getArea(),e=n(t.target).closest("."+f);if(i.length){var o=i.innerWidth(),s=i.innerHeight(),h=e.outerWidth(),c=e.outerHeight(),u=e.offset(),r=i.offset()||{top:0,left:0};r.left+=this._getBorderWidth(i,"left")+this._getBorderWidth(this.element(),"left"),r.top+=this._getBorderWidth(i,"top")+this._getBorderWidth(this.element(),"top"),o-=this.element().outerWidth()-this.element().innerWidth(),s-=this.element().outerHeight()-this.element().innerHeight(),t.maxLeftOffset=u.left-r.left,t.maxRightOffset=r.left+o-u.left-h,t.maxTopOffset=u.top-r.top,t.maxBottomOffset=r.top+s-u.top-c}},_getBorderWidth:function(n,t){var i=n.css("border-"+t+"-width");return parseInt(i)||0},_dragHandler:function(n){var c=this.element(),i=this._getOffset(n),r=this._movingSides,e=this._elementLocation,o=this._elementSize,u=o.width+i.x*(r.left?-1:1),f=o.height+i.y*(r.top?-1:1),s,h;this._renderSize(u,f),s=i.y-(this.option("height")-f),h=i.x-(this.option("width")-u),t.translator.move(c,{top:e.top+(r.top?s:0),left:e.left+(r.left?h:0)}),this._resizeAction({jQueryEvent:n,width:u,height:f,handles:this._movingSides})},_getOffset:function(n){var i=n.offset,r=t.utils.stringPairToObject(this.option("step"));return{x:i.x-i.x%r.h,y:i.y-i.y%r.v}},_getMovingSides:function(t){var i=n(t.target);return{top:i.hasClass(l)||i.hasClass(r+"-top-left")||i.hasClass(r+"-top-right"),left:i.hasClass(v)||i.hasClass(r+"-top-left")||i.hasClass(r+"-bottom-left"),bottom:i.hasClass(a)||i.hasClass(r+"-bottom-left")||i.hasClass(r+"-bottom-right"),right:i.hasClass(y)||i.hasClass(r+"-top-right")||i.hasClass(r+"-bottom-right")}},_getArea:function(){var t=this.option("area");return n.isFunction(t)&&(t=t.call(this)),n(t)},_dragEndHandler:function(n){var t=this.element();this._resizeEndAction({jQueryEvent:n,width:t.outerWidth(),height:t.outerHeight(),handles:this._movingSides}),this._toggleResizingClass(!1)},_renderSize:function(n,t){this.option("width",s.fitIntoRange(n,this.option("minWidth"),this.option("maxWidth"))),this.option("height",s.fitIntoRange(t,this.option("minHeight"),this.option("maxHeight")))},_optionChanged:function(n){switch(n.name){case"handles":this._invalidate();break;case"minWidth":case"maxWidth":case"minHeight":case"maxHeight":this._renderSize(this.element().outerWidth(),this.element().outerHeight());break;case"onResize":case"onResizeStart":case"onResizeEnd":this._renderActions();break;case"gridStepHorizontal":case"gridStepVertical":case"area":case"step":break;default:this.callBase(n)}},_clean:function(){this.element().find("."+f).remove()}}))}(jQuery,DevExpress),function(n,t){var a=DevExpress.ui,o=t.utils,v="dx-box",y=".dx-box",tt="dx-box-item",r="dxBoxItemData",p=t.support.styleProp("flexGrow"),it=t.support.styleProp("flexShrink"),rt=t.support.stylePropPrefix("flexDirection"),w={row:"minWidth",col:"minHeight"},b={row:"maxWidth",col:"maxHeight"},s=1,k={start:"flex-start",end:"flex-end",center:"center","space-between":"space-between","space-around":"space-around"},d={start:"flex-start",end:"flex-end",center:"center",stretch:"stretch"},ut={row:"row",col:"column"},ft=t.Class.inherit({ctor:function(n,t){this._$element=n,this._option=t},renderBox:function(){this._$element.css({display:t.support.stylePropPrefix("flexDirection")+"flex",flexDirection:ut[this._option("direction")]})},renderAlign:function(){this._$element.css({justifyContent:this._normalizedAlign()})},_normalizedAlign:function(){var n=this._option("align");return n in k?k[n]:n},renderCrossAlign:function(){this._$element.css({alignItems:this._normalizedCrossAlign()})},_normalizedCrossAlign:function(){var n=this._option("crossAlign");return n in d?d[n]:n},renderItems:function(i){var u=this._option("direction");n.each(i,function(){var f=n(this),i=f.data(r),e;f.css({display:rt+"flex",flexBasis:i.baseSize||0}).css(b[u],i.maxSize||"none").css(w[u],i.minSize||"0"),e=f.get(0).style,e[p]=i.ratio,e[it]=o.isDefined(i.shrink)?i.shrink:s,f.children().each(function(i,r){n(r).css({width:"auto",height:"auto",display:t.support.stylePropPrefix("flexDirection")+"flex",flexDirection:f.children().css("flexDirection")||"column"}),r.style[p]=1})})},update:n.noop}),et="dxBox",h="dxupdate."+et,g="dx-box-fallback-item",ot={row:"nowrap",col:"normal"},u={row:"width",col:"height"},f={row:"height",col:"width"},e={row:"marginLeft",col:"marginTop"},c={row:"marginRight",col:"marginBottom"},l={row:"marginTop",col:"marginLeft"},nt={row:"marginBottom",col:"marginRight"},st={marginLeft:"marginRight",marginRight:"marginLeft"},ht=t.Class.inherit({ctor:function(n,t){this._$element=n,this._option=t},renderBox:function(){this._$element.css({fontSize:0,whiteSpace:ot[this._option("direction")],verticalAlign:"top"});this._$element.off(h).on(h,n.proxy(this.update,this))},renderAlign:function(){var n=this._$items;if(n){var f=this._option("align"),t=0,o=this.totalItemSize,i=this._option("direction"),s=this._$element[u[i]](),r=s-o;this._setItemsMargins(n,i,0);switch(f){case"end":t=r,n.first().css(this._chooseMarginSide(e[i]),t);break;case"center":t=.5*r,n.first().css(this._chooseMarginSide(e[i]),t),n.last().css(this._chooseMarginSide(c[i]),t);break;case"space-between":t=.5*r/(n.length-1),this._setItemsMargins(n,i,t),n.first().css(this._chooseMarginSide(e[i]),0),n.last().css(this._chooseMarginSide(c[i]),0);break;case"space-around":t=.5*r/n.length,this._setItemsMargins(n,i,t)}}},_setItemsMargins:function(n,t,i){n.css(this._chooseMarginSide(e[t]),i).css(this._chooseMarginSide(c[t]),i)},renderCrossAlign:function(){var r=this._$items;if(r){var e=this._option("crossAlign"),t=this._option("direction"),u=this._$element[f[t]](),i=this;switch(e){case"end":n.each(r,function(){var r=n(this),e=r[f[t]](),o=u-e;r.css(i._chooseMarginSide(l[t]),o)});break;case"center":n.each(r,function(){var r=n(this),o=r[f[t]](),e=.5*(u-o);r.css(i._chooseMarginSide(l[t]),e).css(i._chooseMarginSide(nt[t]),e)});break;case"stretch":r.css(i._chooseMarginSide(l[t]),0).css(i._chooseMarginSide(nt[t]),0).css(f[t],"100%")}}},_chooseMarginSide:function(n){return this._option("rtlEnabled")?st[n]||n:n},renderItems:function(t){this._$items=t;var i=this._option("direction"),e=0,h=0,c=0;n.each(t,n.proxy(function(t,f){var l=n(f);l.css({display:"inline-block",verticalAlign:"top"}),l[u[i]]("auto"),l.removeClass(g);var a=l.data(r),y=a.ratio||0,v=this._baseSize(l),p=o.isDefined(a.shrink)?a.shrink:s;e+=y,h+=p*v,c+=v},this));var f=this._boxSize()-c,a=n.proxy(function(n){var t=n.data(r),i=this._baseSize(n),c=f>=0?t.ratio||0:(o.isDefined(t.shrink)?t.shrink:s)*i,u=f>=0?e:h,l=u?Math.round(f*c/u):0;return i+l},this),l=0;n.each(t,function(t,f){var e=n(f),o=n(f).data(r),s=a(e);l+=s,e.css(b[i],o.maxSize||"none").css(w[i],o.minSize||"0").css(u[i],s),e.addClass(g)}),this.totalItemSize=l},_baseSize:function(t){var i=n(t).data(r);return i.baseSize==null?0:i.baseSize==="auto"?this._contentSize(t):this._parseSize(i.baseSize)},_contentSize:function(t){return n(t)[u[this._option("direction")]]()},_parseSize:function(n){return String(n).match(/.+%$/)?.01*parseFloat(n)*this._boxSize():n},_boxSize:function(){return this._$element[u[this._option("direction")]]()},_totalBaseSize:function(){var t=0;return n.each(this._$items,n.proxy(function(n,i){t+=this._baseSize(i)},this)),t},update:function(){if(this._$items&&!this._$element.is(":hidden")){this.renderItems(this._$items),this.renderAlign(),this.renderCrossAlign();var t=this._$element.get(0);this._$items.find(y).each(function(){t===n(this).parent().closest(y).get(0)&&n(this).triggerHandler(h)})}}});t.registerComponent("dxBox",a,a.CollectionWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({direction:"row",align:"start",crossAlign:"stretch",activeStateEnabled:!1,focusStateEnabled:!1,_layoutStrategy:"flex"})},_defaultOptionsRules:function(){return this.callBase().concat([{device:function(){var n=t.devices.real(),i=n.platform==="android"&&(n.version[0]<4||n.version[0]===4&&n.version[1]<4),r=n.platform==="ios"&&n.version[0]<7;return n.platform==="win8"||t.browser.msie||i||r},options:{_layoutStrategy:"fallback"}}])},_itemClass:function(){return tt},_itemDataKey:function(){return r},_itemElements:function(){return this._itemContainer().children(this._itemSelector())},_init:function(){this.callBase(),this.element().addClass(v+"-"+this.option("_layoutStrategy")),this._initLayout()},_initLayout:function(){this._layout=this.option("_layoutStrategy")==="fallback"?new ht(this.element(),n.proxy(this.option,this)):new ft(this.element(),n.proxy(this.option,this))},_render:function(){this.callBase(),this.element().addClass(v),this._renderBox()},_renderBox:function(){this._layout.renderBox(),this._layout.renderAlign(),this._layout.renderCrossAlign()},_renderItems:function(t){this.callBase(t),this._layout.renderItems(this._itemElements()),clearTimeout(this._updateTimer),this._updateTimer=setTimeout(n.proxy(function(){this._isUpdated||this._layout.update(),this._isUpdated=!1},this))},_postprocessRenderItem:function(t){var i=t.itemData.box;i&&this._createComponent(t.itemContent,"dxBox",n.extend({itemTemplate:this.option("itemTemplate"),itemHoldTimeout:this.option("itemHoldTimeout"),onItemHold:this.option("onItemHold"),onItemClick:this.option("onItemClick"),onItemContextMenu:this.option("onItemContextMenu"),onItemRendered:this.option("onItemRendered")},i))},_createItemByTemplate:function(n,t){return t.item.box?n.source():this.callBase(n,t)},_visibilityChanged:function(n){n&&this._dimensionChanged()},_dimensionChanged:function(){this._isUpdated=!0,this._layout.update()},_dispose:function(){clearTimeout(this._updateTimer),this.callBase.apply(this,arguments)},_optionChanged:function(n){switch(n.name){case"_layoutStrategy":case"direction":this._invalidate();break;case"align":this._layout.renderAlign();break;case"crossAlign":this._layout.renderCrossAlign();break;default:this.callBase(n)}},repaint:function(){this._dimensionChanged()}}))}(jQuery,DevExpress),function(n,t){var r=t.ui,f="dx-responsivebox",e="dx-box-item",u="dxBoxItemData",o=function(n){return n<768?"xs":n<992?"sm":n<1200?"md":"lg"};t.registerComponent("dxResponsiveBox",r,r.CollectionWidget.inherit({_setDefaultOptions:function(){this.callBase(),this.option({rows:[],cols:[],screenByWidth:o,singleColumnScreen:"xs",activeStateEnabled:!1,focusStateEnabled:!1})},_initOptions:function(n){n.screenByWidth&&this.option("singleColumnScreen",n.screenByWidth(0)),this.callBase(n)},_itemClass:function(){return e},_itemDataKey:function(){return u},_render:function(){this.callBase(),this.element().addClass(f),this._updateRootBox()},_updateRootBox:function(){clearTimeout(this._updateTimer),this._updateTimer=setTimeout(n.proxy(function(){this._$root&&this._$root.trigger("dxupdate")},this))},_renderItems:function(){this._screenItems=this._itemsByScreen(),this._prepareGrid(),this._spreadItems(),this._layoutItems(),this._linkNodeToItem()},_prepareGrid:function(){var t=this._grid=[];this._prepareRowsAndCols(),n.each(this._rows,n.proxy(function(){var i=[];t.push(i),n.each(this._cols,n.proxy(function(){i.push(this._createEmptyCell())},this))},this))},_prepareRowsAndCols:function(){this._isSingleColumnScreen()?(this._prepareSingleColumnScreenItems(),this._rows=this._defaultSizeConfig(this._screenItems.length),this._cols=this._defaultSizeConfig(1)):(this._rows=this._sizesByScreen(this.option("rows")),this._cols=this._sizesByScreen(this.option("cols")))},_isSingleColumnScreen:function(){return this._screenRegExp().test(this.option("singleColumnScreen"))||!this.option("rows").length||!this.option("cols").length},_prepareSingleColumnScreenItems:function(){this._screenItems.sort(function(n,t){return n.location.row-t.location.row||n.location.col-t.location.col}),n.each(this._screenItems,function(t,i){n.extend(i.location,{row:t,col:0,rowspan:1,colspan:1})})},_sizesByScreen:function(t){return n.map(this._filterByScreen(t),n.proxy(function(t){return n.extend(this._defaultSizeConfig(),t)},this))},_defaultSizeConfig:function(n){var r={ratio:1,baseSize:0,minSize:0,maxSize:0},t,i;if(!arguments.length)return r;for(t=[],i=0;i").appendTo(this._itemContainer()),this._createComponent(this._$root,"dxBox",r))},_rootBoxConfig:function(){return{width:"100%",height:"100%",itemTemplate:this.option("itemTemplate"),itemHoldTimeout:this.option("itemHoldTimeout"),onItemHold:this.option("onItemHold"),onItemClick:this.option("onItemClick"),onItemContextMenu:this.option("onItemContextMenu"),onItemRendered:this.option("onItemRendered")}},_prepareBoxConfig:function(t){return n.extend(t||{},{crossAlign:"stretch"})},_layoutBlock:function(n){return this._isSingleItem(n)?this._itemByCell(n.row.start,n.col.start):this._layoutDirection(n)},_isSingleItem:function(n){var t=this._grid[n.row.start][n.col.start].location,i=n.row.end-n.row.start==t.rowspan-1,r=n.col.end-n.col.start==t.colspan-1;return i&&r},_itemByCell:function(n,t){var i=this._grid[n][t];return i.spanningCell?null:i.item},_layoutDirection:function(i){for(var e=[],o=i.direction,u=this._crossDirection(o),r,f;r=this._nextBlock(i);){if(this._isBlockIndivisible(i.prevBlockOptions,r))throw t.Error("E1025");f=this._layoutBlock({direction:u,row:r.row,col:r.col,prevBlockOptions:i}),f&&(n.extend(f,this._blockSize(r,u)),e.push(f)),i[u].start=r[u].end+1}return{box:this._prepareBoxConfig({direction:o,items:e})}},_isBlockIndivisible:function(n,t){return n&&n.col.start===t.col.start&&n.col.end===t.col.end&&n.row.start===t.row.start&&n.row.end===t.row.end},_crossDirection:function(n){return n==="col"?"row":"col"},_nextBlock:function(n){var i=n.direction,f=this._crossDirection(i),l=n[i].start,a=n[i].end,t=n[f].start,r,u,e,o,v,h,c,s;if(t>n[f].end)return null;for(r=1,u=t;uc&&(r+=h-c)}return s={},s[i]={start:l,end:a},s[f]={start:t,end:t+r-1},s},_cellByDirection:function(n,t,i){return n==="col"?this._grid[i][t]:this._grid[t][i]},_blockSize:function(n,t){for(var f=t==="row"?this._rows:this._cols,i={ratio:0,baseSize:0,minSize:0,maxSize:0},r,u=n[t].start;u<=n[t].end;u++)r=f[u],i.ratio+=r.ratio,i.baseSize+=r.baseSize,i.minSize+=r.minSize,i.maxSize+=r.maxSize;return i.minSize=i.minSize?i.minSize:"auto",i.maxSize=i.maxSize?i.maxSize:"auto",this._isSingleColumnScreen()&&(i.baseSize="auto"),i},_update:function(){var n=this._$root;this._renderItems(),n.remove()},_dispose:function(){clearTimeout(this._updateTimer),this.callBase.apply(this,arguments)},_optionChanged:function(n){switch(n.name){case"rows":case"cols":case"screenByWidth":case"singleColumnScreen":this._invalidate();break;case"width":case"height":this.callBase(n),this._update();break;default:this.callBase(n)}},_dimensionChanged:function(){this._update()},repaint:function(){this._update()}}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,f=r.events,e=t.utils,o="dx-button",u="dx-button-content",s="dx-button-has-text",h="dx-button-has-icon",c="dx-template-wrapper",l=100;t.registerComponent("dxButton",r,r.Widget.inherit({_supportedKeys:function(){var i=this,t=function(n){n.preventDefault(),i._executeClickAction(n)};return n.extend(this.callBase(),{space:t,enter:t})},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{clickAction:{since:"14.2",alias:"onClick"},iconSrc:{since:"15.1",alias:"icon"}})},_setDefaultOptions:function(){this.callBase(),this.option({onClick:null,type:"normal",text:"",icon:"",validationGroup:i,activeStateEnabled:!0,template:"content"})},_defaultOptionsRules:function(){return this.callBase().concat([{device:function(){return t.devices.real().generic&&!t.devices.isSimulator()},options:{hoverStateEnabled:!0,focusStateEnabled:!0}}])},_init:function(){this.callBase(),this._feedbackHideTimeout=l},_render:function(){this.callBase(),this.element().addClass(o),this._renderType(),this._renderClick(),this.setAria("role","button"),this._updateAriaLabel()},_renderContentImpl:function(){var t=n("
").addClass(u),r=this._getContentData(),f,i;this.element().empty(),this.element().append(t),this.element().toggleClass(h,!!r.icon),this.element().toggleClass(s,!!r.text),f=this._getTemplateByOption("template"),i=f.render(r,t),i.hasClass(c)&&(t.replaceWith(i),t=i,t.addClass(u))},_getContentData:function(){var n=this.option("icon"),i=this.option("text"),r=this.option("type")==="back";return r&&!n&&(n="back"),r&&!i&&(i=t.localization.localizeString("@Back")),{icon:n,text:i}},_renderClick:function(){var t=this,n=f.addNamespace("dxclick",this.NAME);this._clickAction=this._createActionByOption("onClick");this.element().off(n).on(n,function(n){t._executeClickAction(n)})},_executeClickAction:function(n){this._clickAction({jQueryEvent:n,validationGroup:t.validationEngine.getGroupConfig(this._findGroup())})},_updateAriaLabel:function(){var t=this.option("icon"),r=this.option("text"),i;t=e.getImageSourceType(t)==="image"?t.replace(/.+\/([^\.]+)\..+$/,"$1"):t,i=r||t,this.setAria("label",n.trim(i))},_renderType:function(){var n=this.option("type");n&&this.element().addClass("dx-button-"+n)},_refreshType:function(n){var t=this.option("type");n&&this.element().removeClass("dx-button-"+n).addClass("dx-button-"+t),this.element().hasClass("dx-button-has-icon")||t!=="back"||this._renderContentImpl()},_optionChanged:function(n){switch(n.name){case"onClick":this._renderClick();break;case"icon":case"text":this._renderContentImpl(),this._updateAriaLabel();break;case"type":this._refreshType(n.previousValue),this._updateAriaLabel();break;case"template":this._renderContentImpl();break;default:this.callBase(n)}},_findGroup:t.ui.validation.findGroup}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,e=r.events,o="dx-checkbox",s="dx-checkbox-icon",h="dx-checkbox-checked",c="dx-checkbox-container",l=".dx-checkbox-container",a="dx-checkbox-text",v=".dx-checkbox-text",u="dx-checkbox-has-text",y="dx-checkbox-indeterminate",p=100,f=e.addNamespace("dxclick","dxCheckBox");t.registerComponent("dxCheckBox",r,r.Editor.inherit({_supportedKeys:function(){var t=function(n){n.preventDefault(),this._clickAction({jQueryEvent:n})};return n.extend(this.callBase(),{space:t})},_setDefaultOptions:function(){this.callBase(),this.option({value:!1,text:""})},_defaultOptionsRules:function(){return this.callBase().concat([{device:function(){return t.devices.real().generic&&!t.devices.isSimulator()},options:{hoverStateEnabled:!0,focusStateEnabled:!0}}])},_init:function(){this.callBase(),this._feedbackHideTimeout=p},_render:function(){this.callBase(),this.element().addClass(o).append(n("
").addClass(c)),this.setAria("role","checkbox"),this._$container=this.element().find(l),this._renderClick(),this._renderValue(),this._renderIcon(),this._renderText()},_renderDimensions:function(){this.callBase()},_renderIcon:function(){this._$icon=n("").addClass(s).prependTo(this._$container)},_renderText:function(){if(this._$text=this._$container.find(v),!this.option("text")){this._$text&&(this._$text.remove(),this.element().removeClass(u));return}this._$text.length||(this._$text=n("").addClass(a)),this._$text.text(this.option("text")),this._$container.append(this._$text),this.element().addClass(u)},_renderClick:function(){this._clickAction=this._createAction(this._clickHandler);this.element().off(f).on(f,n.proxy(function(n){this._clickAction({jQueryEvent:n})},this))},_clickHandler:function(n){var t=n.component;t._saveValueChangeEvent(n.jQueryEvent),t.option("value",!t.option("value"))},_renderValue:function(){var t=this.element(),n=this.option("value"),r=n===i;t.toggleClass(h,Boolean(n)),t.toggleClass(y,r),this.setAria("checked",r?"mixed":n||"false")},_optionChanged:function(n){switch(n.name){case"value":this._renderValue(),this.callBase(n);break;case"text":this._renderText(),this._renderDimensions();break;default:this.callBase(n)}}}))}(jQuery,DevExpress),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,u.Editor.inherit({_supportedKeys:function(){var t=this.option("rtlEnabled"),i=function(n){n.preventDefault(),this._clickAction({jQueryEvent:n})},r=function(n,t){t.preventDefault(),t.stopPropagation(),this._animateValue(n)};return n.extend(this.callBase(),{space:i,enter:i,leftArrow:n.proxy(r,this,t?!0:!1),rightArrow:n.proxy(r,this,t?!1:!0)})},_setDefaultOptions:function(){this.callBase(),this.option({onText:Globalize.localize("dxSwitch-onText"),offText:Globalize.localize("dxSwitch-offText"),value:!1})},_defaultOptionsRules:function(){return this.callBase().concat([{device:function(){return t.devices.real().generic&&!t.devices.isSimulator()},options:{hoverStateEnabled:!0,focusStateEnabled:!0}}])},_init:function(){this.callBase(),this._animating=!1,this._animationDuration=y},_render:function(){var t=this.element();this._$switchInner=n("
").addClass(h),this._$handle=n("
").addClass(c).appendTo(this._$switchInner),this._$labelOn=n("
").addClass(a).prependTo(this._$switchInner),this._$labelOff=n("
").addClass(v).appendTo(this._$switchInner),this._$switchContainer=n("
").addClass(s).append(this._$switchInner),this._$switchWrapper=n("
").addClass(o).append(this._$switchContainer),t.addClass(r).append(this._$switchWrapper),this.setAria("role","button"),this._createComponent(t,"dxSwipeable",{elastic:!1,immediate:!0,onStart:n.proxy(this._swipeStartHandler,this),onUpdated:n.proxy(this._swipeUpdateHandler,this),onEnd:n.proxy(this._swipeEndHandler,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);this._clickAction=this._createAction(n.proxy(this._clickHandler,this));this.element().off(t).on(t,n.proxy(function(n){this._clickAction({jQueryEvent:n})},this))},_clickHandler:function(n){var t=n.jQueryEvent;(this._saveValueChangeEvent(t),this._animating||this._swiping)||this._animateValue(!this.option("value"))},_animateValue:function(n){var r=this.option("value"),t=n;if(r!==t){this._animating=!0;var u=this,i=this._marginDirection(),s=i==="Left"?"Right":"Left",e={},o={};this._$switchInner.css("margin"+s,0),e["margin"+i]=(Number(r)-1)*this._marginBound,o["margin"+i]=(Number(t)-1)*this._marginBound,f.animate(this._$switchInner,{from:e,to:o,duration:this._animationDuration,complete:function(){u._animating=!1,u.option("value",t)}})}},_swipeStartHandler: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._toggleActiveState(this.element(),!0)},_swipeUpdateHandler:function(n){this._renderPosition(this.option("value"),this._offsetDirection()*n.jQueryEvent.offset)},_swipeEndHandler: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._toggleActiveState(t.element(),!1)}})},_renderValue:function(){this._validateValue();var n=this.option("value");this._renderPosition(n,0),this.element().toggleClass(l,n),this.setAria({pressed:n,label:n?this.option("onText"):this.option("offText")})},_renderLabels:function(){this._$labelOn.text(this.option("onText")),this._$labelOff.text(this.option("offText"))},_visibilityChanged:function(n){n&&this.repaint()},_optionChanged:function(n){switch(n.name){case"visible":case"width":this._refresh();break;case"onText":case"offText":this._renderLabels();break;case"value":this._renderValue(),this.callBase(n);break;default:this.callBase(n)}}}))}(jQuery,DevExpress),function(n,t,i){var u=t.ui,r=u.events,f=t.inflector,c="dx-texteditor",e="dx-texteditor-input",l="."+e,a="dx-texteditor-container",o="dx-texteditor-buttons-container",v="dx-placeholder",y="dx-show-clear-button",p="dx-icon",w="dx-icon-clear",b="dx-clear-button-area",k="dx-texteditor-empty",s="dx-state-focused",h=["keyDown","keyPress","keyUp","change","cut","copy","paste","input"];t.registerComponent("dxTextEditor",u,u.Editor.inherit({_supportedKeys:function(){var n=function(n){n.stopPropagation()};return{space:n,enter:n,leftArrow:n,rightArrow:n}},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{keyDownAction:{since:"14.2",alias:"onKeyDown"},keyPressAction:{since:"14.2",alias:"onKeyPress"},keyUpAction:{since:"14.2",alias:"onKeyUp"},cutAction:{since:"14.2",alias:"onCut"},copyAction:{since:"14.2",alias:"onCopy"},pasteAction:{since:"14.2",alias:"onPaste"},changeAction:{since:"14.2",alias:"onChange"},inputAction:{since:"14.2",alias:"onInput"},focusInAction:{since:"14.2",alias:"onFocusIn"},focusOutAction:{since:"14.2",alias:"onFocusOut"},enterKeyAction:{since:"14.2",alias:"onEnterKey"}})},_setDefaultOptions:function(){this.callBase(),this.option({value:"",spellcheck:!1,showClearButton:!1,valueChangeEvent:"change",placeholder:"",attr:{},onFocusIn:null,onFocusOut:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onChange:null,onInput:null,onCut:null,onCopy:null,onPaste:null,onEnterKey:null,mode:"text",hoverStateEnabled:!0,focusStateEnabled:!0,text:i,valueFormat:function(n){return n}})},_input:function(){return this.element().find(l).first()},_inputWrapper:function(){return this.element()},_buttonsContainer:function(){return this._inputWrapper().find("."+o)},_render:function(){this.element().addClass(c),this._renderInput(),this._renderInputType(),this._renderValue(),this._renderProps(),this._renderPlaceholder(),this._renderEvents(),this._renderEnterKeyAction(),this._renderEmptinessEvent(),this.callBase()},_renderInput:function(){n("
").addClass(a).append(this._createInput()).append(n("
").addClass(o)).appendTo(this.element())},_createInput:function(){return n("").addClass(e).attr("autocomplete","off").attr(this.option("attr"))},_renderValue:function(){this._renderInputValue(),this._renderInputAddons()},_renderInputValue:function(){var n=this.option("text"),f=this.option("value"),r=this.option("displayValue"),u=this.option("valueFormat");r!==i?n=u(r):t.utils.isDefined(n)||(n=u(f)),this._input().val()!==(t.utils.isDefined(n)?n:"")&&this._renderDisplayText(n)},_renderDisplayText:function(n){this._input().val(n),this._toggleEmptinessEventHandler()},_isValueValid:function(){var n=this._input().get(0).validity;return n?n.valid:!0},_toggleEmptiness:function(n){this.element().toggleClass(k,n),this._togglePlaceholder(n)},_togglePlaceholder:function(n){this._$placeholder&&(t.browser.msie?this._$placeholder.toggle(!this._input().is(":focus")&&n):this._$placeholder.toggle(n))},_renderProps:function(){this._toggleDisabledState(this.option("disabled")),this._toggleReadOnlyState(this._readOnlyPropValue()),this._toggleSpellcheckState()},_toggleDisabledState:function(){this.callBase.apply(this,arguments);var n=this._input();this.option("disabled")?n.attr("disabled",!0).attr("tabindex",-1):n.removeAttr("disabled").removeAttr("tabindex")},_toggleReadOnlyState:function(n){this._input().prop("readOnly",n),this.callBase()},_readOnlyPropValue:function(){return this.option("readOnly")},_toggleSpellcheckState:function(){this._input().prop("spellcheck",this.option("spellcheck"))},_renderPlaceholder:function(){this._$placeholder&&(this._$placeholder.remove(),this._$placeholder=null);var i=this,u=i._input(),f=i.option("placeholder"),t=this._$placeholder=n("
").attr("data-dx_placeholder",f),e=r.addNamespace("dxpointerup",this.NAME);t.on(e,function(){u.focus()});t.insertAfter(u),t.addClass(v)},_placeholder:function(){return this._$placeholder||n()},_renderInputAddons:function(){this._renderClearButton()},_checkIfClearButtonShouldBeRendered:function(){return this.option("showClearButton")&&!this.option("readOnly")},_renderClearButton:function(){var n=this._checkIfClearButtonShouldBeRendered();if(this.element().toggleClass(y,n),!n){this._$clearButton&&this._$clearButton.remove(),this._$clearButton=null;return}this._$clearButton||(this._$clearButton=this._createClearButton())},_createClearButton:function(){return n("").addClass(b).append(n("").addClass(p).addClass(w)).prependTo(this._buttonsContainer()).on(r.addNamespace("dxpointerdown",this.NAME),function(n){n.preventDefault(),n.dxPreventBlur=!0}).on(r.addNamespace("dxclick",this.NAME),n.proxy(this._clearValueHandler,this))},_clearValueHandler:function(n){var t=this._input();n.stopPropagation(),this.reset(),t.is(":focus")?(t.val(""),this._toggleEmptinessEventHandler()):t.focus()},_renderEvents:function(){var t=this,i=t._input();t._renderValueChangeEvent(),t._attachFocusEvents(),n.each(h,function(n,u){var e=r.addNamespace(u.toLowerCase(),t.NAME),o=t._createActionByOption("on"+f.camelize(u,!0),{excludeValidators:["readOnly"]});i.off(e).on(e,function(n){o({jQueryEvent:n})})})},_keyUpHandler:function(){this.option("text",this._input().val())},_renderValueChangeEvent:function(){var t=this.NAME+"ValueChange",i=r.addNamespace(this._renderValueEventName(),this.NAME+"TextChange"),u;this._input().off(i).on(i,n.proxy(this._keyUpHandler,this));u=r.addNamespace(this.option("valueChangeEvent"),t);this._input().off("."+t).on(u,n.proxy(this._valueChangeEventHandler,this)).on("paste",n.proxy(this._pasteHandler,this))},_renderValueEventName:function(){return"input change keyup"},_focusTarget:function(){return this._input()},_pasteHandler:function(t){clearTimeout(this._pasteTimer),this._pasteTimer=setTimeout(n.proxy(this._valueChangeEventHandler,this,t))},_focusInHandler:function(n){n.stopPropagation(),this.element().addClass(s)},_focusOutHandler:function(n){n.stopPropagation(),this.element().removeClass(s)},_renderEmptinessEvent:function(){var t=this._input();t.on("input blur",n.proxy(this._toggleEmptinessEventHandler,this));this._toggleEmptinessEventHandler()},_toggleEmptinessEventHandler:function(){var t=this._input().val(),i=(t===""||t===null)&&this._isValueValid();this._toggleEmptiness(i)},_valueChangeEventHandler:function(n,t){this._saveValueChangeEvent(n),this.option("value",arguments.length>1?t:this._input().val())},_renderEnterKeyAction:function(){if(this.option("onEnterKey")){this._enterKeyAction=this._createActionByOption("onEnterKey",{excludeValidators:["readOnly"]});this._input().on("keyup.onEnterKey.dxTextEditor",n.proxy(this._enterKeyHandlerUp,this))}else this._input().off("keyup.onEnterKey.dxTextEditor"),this._enterKeyAction=i},_enterKeyHandlerUp:function(n){n.which===13&&this._enterKeyAction({jQueryEvent:n})},_updateValue:function(){this.option("text",i),this._renderValue()},_clean:function(){this._$placeholder&&(this._$placeholder.remove(),delete this._$placeholder),delete this._$clearButton,this.callBase()},_dispose:function(){clearTimeout(this._pasteTimer),this.callBase()},_optionChanged:function(t){var i=t.name;if(n.inArray(f.camelize(i.replace("on","")),h)>-1){this._renderEvents();return}switch(i){case"valueChangeEvent":this._renderValueChangeEvent();break;case"onValueChanged":this._createValueChangeAction();break;case"readOnly":this._toggleReadOnlyState(t.value),this.callBase(t),this._renderInputAddons();break;case"spellcheck":this._toggleSpellcheckState();break;case"mode":this._renderInputType();break;case"onEnterKey":this._renderEnterKeyAction();break;case"placeholder":this._invalidate();break;case"showClearButton":this._renderInputAddons();break;case"text":break;case"value":this._updateValue(),this.callBase(t);break;case"attr":this._input().attr(t.value);break;case"valueFormat":this._invalidate();break;default:this.callBase(t)}},_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()},reset:function(){this.option("value","")}}))}(jQuery,DevExpress),function(n,t){var f=t.ui,r=f.events,e=t.utils,s=" ",h=32,c="dx-texteditor-masked",u="dxMask",o="forward",l="backward",a={"0":/[0-9]/,"9":/[0-9\s]/,"#":/[-+0-9\s]/,L:/[a-zA-Z]/,l:/[a-zA-Z\s]/,C:/\S/,c:/./,A:/[0-9a-zA-Z]/,a:/[0-9a-zA-Z\s]/},v={35:"end",36:"home",37:"leftArrow",38:"upArrow",39:"rightArrow",40:"downArrow"};t.registerComponent("dxTextEditor",f,f.dxTextEditor.inherit({_setDefaultOptions:function(){this.callBase(),this.option({mask:"",maskChar:"_",maskRules:{},maskInvalidMessage:Globalize.localize("validation-mask")})},_supportedKeys:function(){var t=this,r={backspace:t._maskBackspaceHandler,del:t._maskDelHandler,enter:t._changeHandler},i=t.callBase();return n.each(r,function(n,r){var u=i[n];i[n]=function(n){t.option("mask")&&r.call(t,n),u&&u(n)}}),i},_render:function(){this.callBase(),this._renderMask()},_renderMask:function(){(this.element().removeClass(c),this._maskRulesChain=null,this.option("mask"))&&(this.element().addClass(c),this._attachMaskEventHandlers(),this._parseMask(),this._renderMaskedValue())},_attachMaskEventHandlers:function(){this._input().off("."+u).on(r.addNamespace("focus",u),n.proxy(this._maskFocusHandler,this)).on(r.addNamespace("keypress",u),n.proxy(this._maskKeyPressHandler,this)).on(r.addNamespace("paste",u),n.proxy(this._maskPasteHandler,this)).on(r.addNamespace("cut",u),n.proxy(this._maskCutHandler,this)).on(r.addNamespace("drop",u),n.proxy(this._maskDragHandler,this));this._attachChangeEventHandlers()},_attachChangeEventHandlers:function(){if(n.inArray("change",this.option("valueChangeEvent").split(" "))!==-1)this._input().on(r.addNamespace("blur",u),n.proxy(this._changeHandler,this))},_changeHandler:function(n){this._valueChangeEventHandler(r.createEvent(n,{type:"change"}))},_parseMask:function(){this._maskRules=n.extend({},a,this.option("maskRules")),this._maskRulesChain=this._parseMaskRule(0)},_parseMaskRule:function(n){var i=this.option("mask"),t;return n>=i.length?new f.dxTextEditor.EmptyMaskRule:(t=this._getMaskRule(i[n]),t.next(this._parseMaskRule(n+1)),t)},_getMaskRule:function(t){var i;return n.each(this._maskRules,function(n,r){if(n===t)return i={pattern:n,allowedChars:r},!1}),e.isDefined(i)?new f.dxTextEditor.MaskRule(n.extend({maskChar:this.option("maskChar")},i)):new f.dxTextEditor.StubMaskRule({maskChar:t})},_renderMaskedValue:function(){if(this._maskRulesChain){var n=this.option("value");this._maskRulesChain.clear(),this._handleChain({value:n,length:n.length}),this._displayMask()}},_displayMask:function(){var n=this._caret();this._renderValue(),this._caret(n)},_renderValue:function(){this._maskRulesChain&&this.option("text",this._maskRulesChain.text()),this.callBase()},_valueChangeEventHandler:function(n){if(this._maskRulesChain){this._saveValueChangeEvent(n),this.option("value",(this._value||"").replace(/\s+$/,""));return}this.callBase.apply(this,arguments)},_maskFocusHandler:function(){this._direction(o),this._adjustCaret()},_maskKeyPressHandler:function(n){this._isControlKeyFired(n)||this._maskKeyHandler(n,function(){return this._handleKey(n.which),!0})},_isControlKeyFired:function(n){return v[n.keyCode]&&!n.which||n.metaKey},_maskBackspaceHandler:function(n){this._maskKeyHandler(n,function(){return this._hasSelection()?!0:this._tryMoveCaretBackward()?!1:(this._handleKey(h,l),!0)})},_maskDelHandler:function(n){this._maskKeyHandler(n,function(){return this._hasSelection()||this._handleKey(h),!0})},_maskPasteHandler:function(n){var t=this._caret();this._maskKeyHandler(n,function(){var r=e.clipboardText(n),u=this._maskRulesChain.text().substring(t.end),f=this._handleChain({text:r,start:t.start,length:r.length}),i=t.start+f;return this._handleChain({text:u,start:i,length:u.length}),this._caret({start:i,end:i}),!0})},_handleChain:function(n){var t=this._maskRulesChain.handle(n);return this._value=this._maskRulesChain.value(),t},_maskCutHandler:function(n){var t=this._caret(),i=this._input().val().substring(t.start,t.end);this._maskKeyHandler(n,function(){return e.clipboardText(n,i),!0})},_maskDragHandler:function(){this._clearDragTimer(),this._dragTimer=setTimeout(n.proxy(function(){this.option("value",this._convertToValue(this._input().val()))},this))},_convertToValue:function(n){return n.replace(new RegExp(this.option("maskChar"),"g"),s)},_maskKeyHandler:function(n,t){(this._direction(o),n.preventDefault(),this._handleSelection(),t.call(this))&&(this._direction(o),this._adjustCaret(),this._displayMask(),this._maskRulesChain.reset())},_handleKey:function(n,t){var i=String.fromCharCode(n);this._direction(t||o),this._adjustCaret(i),this._handleKeyChain(i),this._moveCaret()},_handleSelection:function(){if(this._hasSelection()){var n=this._caret(),t=new Array(n.end-n.start+1).join(s);this._handleKeyChain(t)}},_handleKeyChain:function(n){var t=this._caret(),i=this._isForwardDirection()?t.start:t.start-1,r=this._isForwardDirection()?t.end:t.end-1,u=i===r?1:r-i;this._handleChain({text:n,start:i,length:u})},_tryMoveCaretBackward:function(){this._direction(l);var n=this._caret().start;return this._adjustCaret(),!n||n!==this._caret().start},_adjustCaret:function(n){var t=this._maskRulesChain.adjustedCaret(this._caret().start,this._isForwardDirection(),n);this._caret({start:t,end:t})},_moveCaret:function(){var n=this._caret().start,i=n+(this._isForwardDirection()?0:-1),t=this._maskRulesChain.isAccepted(i)?n+(this._isForwardDirection()?1:-1):n;this._caret({start:t,end:t})},_caret:function(n){if(!arguments.length)return e.caret(this._input());e.caret(this._input(),n)},_hasSelection:function(){var n=this._caret();return n.start!==n.end},_direction:function(n){if(!arguments.length)return this._typingDirection;this._typingDirection=n},_isForwardDirection:function(){return this._direction()===o},_clearDragTimer:function(){clearTimeout(this._dragTimer)},_clean:function(){this._clearDragTimer(),this.callBase()},_validateMask:function(){if(this._maskRulesChain){var n=this._maskRulesChain.isValid();this.option({isValid:n,validationError:n?null:{editorSpecific:!0,message:this.option("maskInvalidMessage")}})}},_optionChanged:function(n){switch(n.name){case"mask":case"maskChar":case"maskRules":this._renderMask(),this._validateMask();break;case"value":this._renderMaskedValue(),this._validateMask(),this.callBase(n);break;case"maskInvalidMessage":break;default:this.callBase(n)}}}))}(jQuery,DevExpress),function(n,t){var e=t.ui,r=" ",u=t.Class.inherit({ctor:function(t){this._value=r,n.extend(this,t)},next:function(n){if(!arguments.length)return this._next;this._next=n},text:n.noop,value:n.noop,rawValue:n.noop,handle:n.noop,_prepareHandlingArgs:function(n,i){var r=n.hasOwnProperty("value")?"value":"text";return n[r]=t.utils.isDefined(i.str)?i.str:n[r],n.start=t.utils.isDefined(i.start)?i.start:n.start,n.length=t.utils.isDefined(i.length)?i.length:n.length,n},reset:n.noop,clear:n.noop,isAccepted:function(){return!1},adjustedCaret:function(n,t,i){return t?this._adjustedForward(n,0,i):this._adjustedBackward(n,0,i)},_adjustedForward:n.noop,_adjustedBackward:n.noop,isValid:n.noop}),o=u.inherit({next:n.noop,handle:function(){return 0},text:function(){return""},value:function(){return""},rawValue:function(){return""},adjustedCaret:function(){return 0},isValid:function(){return!0}}),f=u.inherit({text:function(){return(this._value!==r?this._value:this.maskChar)+this.next().text()},value:function(){return this._value+this.next().value()},rawValue:function(){return this._value+this.next().rawValue()},handle:function(n){var t=n.hasOwnProperty("value")?n.value:n.text,r,i;return!t.length||!n.length?0:n.start?this.next().handle(this._prepareHandlingArgs(n,{start:n.start-1})):(r=t[0],i=t.substring(1),this._tryAcceptChar(r),this._accepted()?this.next().handle(this._prepareHandlingArgs(n,{str:i,length:n.length-1}))+1:this.handle(this._prepareHandlingArgs(n,{str:i,length:n.length-1})))},clear:function(){this._tryAcceptChar(r),this.next().clear()},reset:function(){this._accepted(!1),this.next().reset()},_tryAcceptChar:function(n){(this._accepted(!1),this._isAllowed(n))&&(this._accepted(!0),this._value=n)},_accepted:function(n){if(!arguments.length)return!!this._isAccepted;this._isAccepted=!!n},_isAllowed:function(n){return n===r?!0:this._isValid(n)},_isValid:function(t){var i=this.allowedChars;return i instanceof RegExp?i.test(t):n.isFunction(i)?i(t):n.isArray(i)?n.inArray(t,i)>-1:i===t},isAccepted:function(n){return n===0?this._accepted():this.next().isAccepted(n-1)},_adjustedForward:function(n,t,i){return t>=n?t:this.next()._adjustedForward(n,t+1,i)||t+1},_adjustedBackward:function(n,t){return t>=n-1?n:this.next()._adjustedBackward(n,t+1)||t+1},isValid:function(){return this._isValid(this._value)&&this.next().isValid()}}),s=f.inherit({value:function(){return this.next().value()},handle:function(n){var r=n.hasOwnProperty("value"),t=r?n.value:n.text,i,u,f;return!t.length||!n.length?0:n.start||r?this.next().handle(this._prepareHandlingArgs(n,{start:n.start&&n.start-1})):(i=t[0],u=t.substring(1),this._tryAcceptChar(i),f=this._isAllowed(i)?this._prepareHandlingArgs(n,{str:u,length:n.length-1}):n,this.next().handle(f)+1)},clear:function(){this._accepted(!1),this.next().clear()},_tryAcceptChar:function(n){this._accepted(this._isValid(n))},_isValid:function(n){return n===this.maskChar},_adjustedForward:function(n,t,i){return t>=n&&i===this.maskChar?t:n===t+1&&this._accepted()?n:this.next()._adjustedForward(n,t+1,i)},_adjustedBackward:function(n,t){return t>=n-1?0:this.next()._adjustedBackward(n,t+1)},isValid:function(){return this.next().isValid()}});n.extend(e.dxTextEditor,{MaskRule:f,StubMaskRule:s,EmptyMaskRule:o})}(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",l="dx-icon-search";t.registerComponent("dxTextBox",r,r.dxTextEditor.inherit({ctor:function(n,t){t&&(this._showClearButton=t.showClearButton),this.callBase.apply(this,arguments)},_setDefaultOptions:function(){this.callBase(),this.option({mode:"text",maxLength:null})},_render:function(){this.callBase(),this.element().addClass(h),this.setAria("role","textbox"),this._renderMaxLengthHandlers()},_renderInputType:function(){this.callBase(),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))},_getAriaTarget:function(){return this._input()},_renderProps:function(){this.callBase(),this._toggleMaxLengthProp()},_toggleMaxLengthProp:function(){if(!this._isAndroid()){var n=this.option("maxLength");n>0?this._input().attr("maxLength",n):this._input().removeAttr("maxLength")}},_renderSearchMode:function(){var n=this._$element;this.option("mode")==="search"?(n.addClass(f),this._renderSearchIcon(),this._showClearButton===i&&(this._showClearButton=this.option("showClearButton"),this.option("showClearButton",!0))):(n.removeClass(f),this._$searchIcon&&this._$searchIcon.remove(),this.option("showClearButton",this._showClearButton===i?this.option("showClearButton"):this._showClearButton),delete this._showClearButton)},_renderSearchIcon:function(){var t=n("
").addClass(c).addClass(l);t.prependTo(this._input().parent()),this._$searchIcon=t},_optionChanged:function(n){switch(n.name){case"maxLength":this._toggleMaxLengthProp(),this._renderMaxLengthHandlers();break;default:this.callBase(n)}},_onKeyDownAndroidHandler:function(t){var r=this.option("maxLength"),i,u;return r?(i=n(t.target),u=t.keyCode,this._cutOffExtraChar(i),i.val().lengtht&&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){var r=t.ui,u=r.events,s="dx-dropdowneditor",w="dx-dropdowneditor-readonly",f="dx-dropdowneditor-input-wrapper",h="dx-dropdowneditor-button",c="dx-dropdowneditor-icon",l="dx-dropdowneditor-overlay",a="dx-dropdowneditor-overlay-flipped",v="dx-dropdowneditor-active",y="dx-dropdowneditor-button-visible",p="dx-dropdowneditor-field-clickable",e="dxDropDownEditor",o=u.addNamespace("dxclick",e);t.registerComponent(e,r,r.dxTextBox.inherit({_supportedKeys:function(){return n.extend(this.callBase(),{escape:function(n){this.option("opened")&&n.preventDefault(),this.close()},upArrow:function(n){return(n.preventDefault(),n.stopPropagation(),n.altKey)?(this.close(),!1):!0},downArrow:function(n){return(n.preventDefault(),n.stopPropagation(),n.altKey)?(this._validatedOpening(),!1):!0},enter:function(n){return this.option("opened")&&(n.preventDefault(),this._valueChangeEventHandler(n)),!0}})},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,{openAction:{since:"14.2",alias:"onOpened"},closeAction:{since:"14.2",alias:"onClosed"},shownAction:{since:"14.2",alias:"onOpened"},hiddenAction:{since:"14.2",alias:"onClosed"},editEnabled:{since:"14.2",alias:"fieldEditEnabled"}})},_setDefaultOptions:function(){this.callBase(),this.option({value:null,onOpened:null,onClosed:null,opened:!1,fieldEditEnabled:!0,applyValueMode:"instantly",fieldTemplate:null,contentTemplate:null,openOnFieldClick:!1,deferRendering:!0,showDropButton:!0,dropPosition:this._getDefaultDropPosition(),applyButtonText:Globalize.localize("OK"),cancelButtonText:Globalize.localize("Cancel"),buttonsLocation:"default",showPopupTitle:!1})},_getDefaultDropPosition:function(){var n=this.option("rtlEnabled")?"right":"left";return{offset:{h:0,v:-1},my:n+" top",at:n+" bottom",collision:"flip flip"}},_defaultOptionsRules:function(){return this.callBase().concat([{device:{platform:"generic"},options:{dropPosition:{offset:{v:0}}}}])},_inputWrapper:function(){return this.element().find("."+f)},_init:function(){this.callBase(),this._initVisibilityActions()},_initVisibilityActions:function(){this._openAction=this._createActionByOption("onOpened"),this._closeAction=this._createActionByOption("onClosed")},_render:function(){this.callBase(),this._renderOpenHandler(),this.element().addClass(s),this._renderOpenedState(),this.setAria("role","combobox")},_renderContentImpl:function(){this.option("deferRendering")||this._createPopup()},_renderInput:function(){this.callBase(),this.element().wrapInner(n("
").addClass(f)),this._$container=this.element().children().eq(0),this.setAria({haspopup:"true",autocomplete:"list"})},_readOnlyPropValue:function(){return!this.option("fieldEditEnabled")||this.callBase()},_renderField:function(){var r=this._getTemplateByOption("fieldTemplate"),n,i,u;if(r&&this.option("fieldTemplate")){if(n=this._input().is(":focus"),n&&this._input().focusout(),this._cleanFocusState(),i=this._$container,u=this._fieldRenderData(),i.empty(),this._$dropButton=null,this._$clearButton=null,r.render(u,i),!this._input().length)throw t.Error("E1010");this._renderFocusState(),n&&this._input().focus()}},_fieldRenderData:function(){return this.option("value")},_renderInputAddons:function(){this._renderField(),this.callBase(),this._renderDropButton()},_renderDropButton:function(){var t=this.option("showDropButton");if(this.element().toggleClass(y,t),!t){this._$dropButton&&this._$dropButton.remove(),this._$dropButton=null;return}this._$dropButton||(this._$dropButton=this._createDropButton().addClass(h)),this._$dropButton.prependTo(this._buttonsContainer())},_createDropButton:function(){var t=n("
"),i;this._createComponent(t,"dxButton",{focusStateEnabled:!1,disabled:this.option("readOnly"),_templates:{}}),i=n("
").addClass(c);t.append(i).removeClass("dx-button").on("mousedown",function(n){n.preventDefault()});return t.find(".dx-button-content").remove(),t},_renderOpenHandler:function(){var i=this.element().find(".dx-dropdowneditor-input-wrapper"),r;if(i.off(o),r=this.option("openOnFieldClick"),this.element().toggleClass(p,r),r){i.on(u.addNamespace("mousedown",this.NAME),function(n){t.devices.real().platform!=="generic"&&n.preventDefault()});i.on(o,n.proxy(this._openHandler,this));return}this.option("showDropButton")&&this._$dropButton.dxButton("option","onClick",n.proxy(this._openHandler,this))},_openHandler:function(){this._toggleOpenState()},_keyboardEventBindingTarget:function(){return this._input()},_toggleOpenState:function(n){this.option("disabled")||(this._input().focus(),this.option("readOnly")||(n=arguments.length?n:!this.option("opened"),this.option("opened",n)))},_renderOpenedState:function(){var n=this.option("opened");n&&this._createPopup(),this.element().toggleClass(v,n),this._setPopupOption("visible",n),this.setAria("expanded",n)},_createPopup:function(){this._$popup||(this._$popup=n("
").addClass(l).addClass(this.option("customOverlayCssClass")).appendTo(this.element()),this._renderPopup(),this._renderPopupContent())},_renderPopup:function(){this._popup=this._createComponent(this._$popup,"dxPopup",this._popupConfig());this._popup.on({showing:n.proxy(this._popupShowingHandler,this),shown:n.proxy(this._popupShownHandler,this),hiding:n.proxy(this._popupHidingHandler,this),hidden:n.proxy(this._popupHiddenHandler,this)});this._popup.option("onContentReady",n.proxy(this._contentReadyHandler,this)),this._contentReadyHandler()},_contentReadyHandler:n.noop,_popupConfig:function(){return{position:n.extend(this.option("dropPosition"),{of:this.element()}),showTitle:this.option("showPopupTitle"),width:"auto",height:"auto",shading:!1,closeOnTargetScroll:!0,closeOnOutsideClick:n.proxy(this._closeOutsideDropDownHandler,this),animation:{show:{type:"fade",duration:0,from:0,to:1},hide:{type:"fade",duration:400,from:1,to:0}},deferRendering:!1,focusStateEnabled:!1,showCloseButton:!1,buttons:this._getPopupButtons(),onPositioned:n.proxy(this._popupPositionedHandler,this)}},_popupPositionedHandler:function(n){this._popup.overlayContent().toggleClass(a,n.position.v.flip)},_popupShowingHandler:n.noop,_popupHidingHandler:function(){this.option("opened",!1)},_popupShownHandler:function(){this._openAction(),this._$validationMessage&&this._$validationMessage.dxTooltip("option","position",this._getValidationTooltipPosition())},_popupHiddenHandler:function(){this._closeAction(),this._$validationMessage&&this._$validationMessage.dxTooltip("option","position",this._getValidationTooltipPosition())},_getValidationTooltipPosition:function(){var n="below",i,r;return this._popup&&this._popup.option("visible")&&(i=t.position(this.element()).top,r=t.position(this._popup.content()).top,n=i+this.option("dropPosition").offset.v>r?"below":"above"),this.callBase(n)},_renderPopupContent:function(){var t=this._getTemplateByOption("contentTemplate"),n;t&&this.option("contentTemplate")&&(n=this._popup.content(),n.empty(),t.render(n))},_closeOutsideDropDownHandler:function(t){var i=n(t.target),r=!!i.closest(this.element()).length,u=!!i.closest(this._$dropButton).length;return!r&&!u},_clean:function(){delete this._$dropButton,this._$popup&&(this._$popup.remove(),delete this._$popup,delete this._popup),this.callBase()},_setPopupOption:function(){this._setWidgetOption("_popup",arguments)},_validatedOpening:function(){this.option("readOnly")||this._toggleOpenState(!0)},_getAriaTarget:function(){return this._input()},_getPopupButtons:function(){return this.option("applyValueMode")==="useButtons"?this._popupButtonsConfig():[]},_popupButtonsConfig:function(){var t=[{shortcut:"done",options:{onClick:n.proxy(this._applyButtonHandler,this),text:this.option("applyButtonText")}},{shortcut:"cancel",options:{onClick:n.proxy(this._cancelButtonHandler,this),text:this.option("cancelButtonText")}}];return this._applyButtonsLocation(t)},_applyButtonsLocation:function(i){var u=this.option("buttonsLocation"),f=i,r;return u!=="default"&&(r=t.utils.splitPair(u),n.each(f,function(t,i){n.extend(i,{toolbar:r[0],location:r[1]})})),f},_applyButtonHandler:function(){this.close(),this.option("focusStateEnabled")&&this.focus()},_cancelButtonHandler:function(){this.close(),this.option("focusStateEnabled")&&this.focus()},_optionChanged:function(n){switch(n.name){case"opened":this._renderOpenedState();break;case"onOpened":case"onClosed":this._initVisibilityActions();break;case"fieldTemplate":case"fieldRender":this._renderInputAddons();break;case"showDropButton":case"contentTemplate":case"contentRender":case"fieldEditEnabled":case"openOnFieldClick":this._invalidate();break;case"dropPosition":case"deferRendering":break;case"applyValueMode":case"applyButtonText":case"cancelButtonText":case"buttonsLocation":this._setPopupOption("buttons",this._getPopupButtons());break;case"showPopupTitle":this._setPopupOption("showTitle",n.value);break;default:this.callBase(n)}},open:function(){this.option("opened",!0)},close:function(){this.option("opened",!1)},reset:function(){this.option("value",null)},field:function(){return this._input()},content:function(){return this._popup?this._popup.content():null}}))}(jQuery,DevExpress),function(n,t,i){var r=t.ui,f=t.utils,e=".dx-list-item",u="dxListItemData",o="dx-dropdownlist-selected",s="dx-dropdownlist-popup-wrapper",h=["startswith","contains","endwith","notcontains"];t.registerComponent("dxDropDownList",r,r.dxDropDownEditor.inherit({_supportedKeys:function(){return n.extend(this.callBase(),{tab:function(){var t,i;this.option("opened")===!0?(t=this._list.option("focusedElement"),t&&(i=this._listSelectedItemElements(),this._changeSelectedItem(i,t),this.option("value",this._selectedItemValue())),this.close()):this._focusTarget().focusout()},space:n.noop,home:n.noop,end:n.noop})},_setDeprecatedOptions:function(){this.callBase(),n.extend(this._deprecatedOptions,this._dataExpressionDeprecatedOptions(),{pagingEnabled:{since:"15.1",message:"Use the 'dataSource.paginate' option instead"}})},_setDefaultOptions:function(){this.callBase(),this.option(n.extend(this._dataExpressionDefaultOptions(),{displayValue:i,searchEnabled:!1,searchMode:"contains",searchTimeout:500,minSearchLength:0,searchExpr:null,valueChangeEvent:"change keyup",selectedItem:null,pagingEnabled:i,noDataText:Globalize.localize("dxCollectionWidget-noDataText"),onSelectionChanged:null,onItemClick:n.noop,dropPosition:{my:"left top",at:"left bottom",offset:{h:0,v:0},collision:"flip"},popupWidthExtension:0}))},_defaultOptionsRules:function(){return this.callBase().concat([{device:{platform:"win8"},options:{dropPosition:{offset:{v:-6}}}},{device:function(n){return n.platform==="android"},options:{popupWidthExtension:32}}])},_setOptionsByReference:function(){this.callBase(),n.extend(this._optionsByReference,{value:!0,selectedItem:!0,displayValue:!0})},_init:function(){this.callBase(),this._initDataExpressions(),this._initActions(),this._setListDataSource(),this._validateSearchMode(),this._clearSelectedItem()},_initActions:function(){this._initContentReadyAction(),this._initSelectionChangedAction(),this._initItemClickAction()},_initContentReadyAction:function(){this._contentReadyAction=this._createActionByOption("onContentReady")},_initSelectionChangedAction:function(){this._selectionChangedAction=this._createActionByOption("onSelectionChanged",{excludeValidators:["disabled","readOnly"]})},_initItemClickAction:function(){this._itemClickAction=this._createActionByOption("onItemClick")},_renderContentImpl:function(){this.callBase(),this.option("deferRendering")&&this._loadDataSource()},_renderField:function(){this.callBase();this._input().on("input",n.proxy(this._setFocusPolicy,this))},_preventFocusOnPopup:function(n){this._list&&this._list.initialOption("focusStateEnabled")&&n.preventDefault()},_createPopup:function(){this.callBase(),this._popup._wrapper().addClass(this._popupWrapperClass());this._popup.content().off("mousedown").on("mousedown",n.proxy(this._preventFocusOnPopup,this))},_popupWrapperClass:function(){return s},_renderInputValue:function(){var t=n.proxy(this.callBase,this);return this._loadItem(this.option("value")).always(n.proxy(function(n){this._setSelectedItem(n),this._refreshSelected(),t()},this))},_loadItem:function(t){var r=n.grep(this.option("items")||[],n.proxy(function(n){return this._isValueEquals(this._valueGetter(n),t)},this))[0];return r!==i?n.Deferred().resolve(r).promise():this._loadValue(t)},_setSelectedItem:function(n){var t=this._displayValue(n);this.option("selectedItem",n),this.option("displayValue",t)},_displayValue:function(n){return this._displayGetter(n)},_refreshSelected:function(){this._listItemElements().each(n.proxy(function(t,i){var r=n(i),e=this._valueGetter(r.data(u)),f=this._isSelectedValue(e);r.toggleClass(this._selectedItemClass(),f),f?this._list.selectItem(r):this._list.unselectItem(r)},this))},_popupShownHandler:function(){this.callBase(),this._setFocusPolicy()},_setFocusPolicy:function(){this.option("focusStateEnabled")&&this._list&&this._list.option("focusedElement",null)},_isSelectedValue:function(n){return this._isValueEquals(n,this.option("value"))},_validateSearchMode:function(){var i=this.option("searchMode"),r=i.toLowerCase();if(n.inArray(r,h)<0)throw t.Error("E1019",i);},_clearSelectedItem:function(){this.option("selectedItem",null)},_processDataSourceChanging:function(){this._setListDataSource(),this._renderInputValue().fail(n.proxy(this.reset,this))},reset:function(){this.option("value",null),this._clearSelectedItem()},_selectedItemClass:function(){return o},_listItemElements:function(){return this._$list?this._$list.find(e):n()},_listSelectedItemElements:function(){return this._$list?this._$list.find("."+this._selectedItemClass()):n()},_popupConfig:function(){return n.extend(this.callBase(),{width:this.option("width")})},_renderPopupContent:function(){this._renderList()},_attachChildKeyboardEvents:function(){this._childKeyboardProcessor=this._keyboardProcessor.attachChildProcessor(),this._setListOption("_keyboardProcessor",this._childKeyboardProcessor)},_fireContentReadyAction:n.noop,_renderList:function(){var t=(new DevExpress.data.Guid)._value,i=this._$list=n("
",{id:t}).appendTo(this._popup.content());this._list=this._createComponent(i,"dxList",this._listConfig()),this.setAria({activedescendant:this._list.getFocusedItemId(),owns:t}),this._refreshList()},_refreshList:function(){this._list&&this._shouldRefreshDataSource()&&this._setListDataSource()},_shouldRefreshDataSource:function(){var n=!!this._list.option("dataSource");return n!==this._isMinFilterLengthExceeded()},_refreshActiveDescendant:function(){this.setAria("activedescendant",""),this.setAria("activedescendant",this._list.getFocusedItemId())},_listConfig:function(){return{_templates:this.option("_templates"),templateProvider:this.option("templateProvider"),noDataText:this.option("noDataText"),onContentReady:n.proxy(this._listContentReadyHandler,this),itemTemplate:this._getTemplateByOption("itemTemplate"),indicateLoading:!1,tabIndex:-1,onItemClick:n.proxy(this._listItemClickAction,this),dataSource:this._isMinFilterLengthExceeded()?this._dataSource:null,_keyboardProcessor:this._childKeyboardProcessor,onOptionChanged:n.proxy(function(n){n.name==="focusedElement"&&this._refreshActiveDescendant()},this)}},_dataSourceOptions:function(){this._suppressDeprecatedWarnings();var n=this.option("pagingEnabled");return this._resumeDeprecatedWarnings(),{paginate:f.ensureDefined(n,!1)}},_listContentReadyHandler:function(){this._list=this._list||this._$list.dxList("instance"),this.option().items=this._list.option("items"),this._refreshSelected(),this._dimensionChanged(),this._contentReadyAction()},_setListOption:function(){this._setWidgetOption("_list",arguments)},_listItemClickAction:function(n){this._listItemClickHandler(n),this._itemClickAction(n)},_listItemClickHandler:n.noop,_setListDataSource:function(){if(this._list){var n=this._isMinFilterLengthExceeded();this._setListOption("dataSource",n?this._dataSource:null),n||this._setListOption("items",[])}},_isMinFilterLengthExceeded:function(){return this._searchValue().toString().length>=this.option("minSearchLength")},_searchValue:function(){return this._input().val()||""},_search:function(){if(!this._isMinFilterLengthExceeded()){this._searchCanceled();return}var t=this.option("searchTimeout");t?this._searchTimer||(this._searchTimer=setTimeout(n.proxy(this._searchDataSource,this),t)):this._searchDataSource()},_searchCanceled:function(){this._clearSearchTimer(),this._refreshList()},_searchDataSource:function(){this._filterDataSource(this._searchValue())},_filterDataSource:function(t){var i=this._dataSource;return i.searchExpr(this.option("searchExpr")||this._displayGetterExpr()),i.searchOperation(this.option("searchMode")),i.searchValue(t),i.pageIndex(0),i.load().done(n.proxy(this._dataSourceFiltered,this))},_clearFilter:function(){this._dataSource.searchValue("")},_dataSourceFiltered:function(){this._clearSearchTimer(),this._refreshList(),this._refreshPopupVisibility()},_refreshPopupVisibility:function(){this.option("opened",this._hasItemsToShow()),this.option("opened")&&this._dimensionChanged()},_hasItemsToShow:function(){var n=this._dataSource&&this._dataSource.items()||[],t=n.length,i=this._isMinFilterLengthExceeded();return i&&t&&this.element().hasClass("dx-state-focused")},_clearSearchTimer:function(){clearTimeout(this._searchTimer),delete this._searchTimer},_popupShowingHandler:function(){this._dimensionChanged()},_dimensionChanged:function(){this._popup&&this._updatePopupDimensions()},_updatePopupDimensions:function(){this._updatePopupWidth(),this._updatePopupHeight()},_updatePopupWidth:function(){this._setPopupOption("width",this.element().outerWidth()+this.option("popupWidthExtension"))},_updatePopupHeight:function(){var n=this._popup.overlayContent().outerHeight()-this._popup.content().height(),t=this._list?this._list.element().outerHeight()-this._list.clientHeight():0,i=this._list?this._list.scrollHeight()+t:0,r=Math.min(i+n,this._getMaxHeight());this._setPopupOption("height",r),this._list&&this._list.updateDimensions()},_getMaxHeight:function(){var t=this.element(),i=t.offset(),r=n(window).height(),u=Math.max(i.top,r-i.top-t.outerHeight());return Math.min(r*.5,u)},_changeSelectedItem:function(n,t){var i=this._selectedItemClass();n.removeClass(i),t.addClass(i)},_selectedItemValue:function(){var n=this._listSelectedItemElements();return this._valueGetter(n.data(u))},_valueChangeArgs:function(){return n.extend(this.callBase.apply(this,arguments),{selectedItem:this.option("selectedItem"),itemData:this.option("selectedItem")})},_clean:function(){this._list&&delete this._list,this.callBase()},_dispose:function(){this._clearSearchTimer(),this.callBase()},_setCollectionWidgetOption:function(){this._setListOption.apply(this,arguments)},_optionChanged:function(n){this._dataExpressionOptionChanged(n);switch(n.name){case"items":this.option("dataSource")||this._processDataSourceChanging();break;case"dataSource":this._processDataSourceChanging();break;case"valueExpr":case"displayExpr":this._renderValue();break;case"searchMode":this._validateSearchMode();break;case"minSearchLength":this._refreshList();break;case"searchEnabled":case"searchExpr":case"pagingEnabled":this._invalidate();break;case"onContentReady":this._initContentReadyAction();break;case"onSelectionChanged":this._initSelectionChangedAction();break;case"onItemClick":this._initItemClickAction();break;case"noDataText":this._setListOption("noDataText");break;case"displayValue":this.option("text",n.value);break;case"itemTemplate":case"searchTimeout":case"popupWidthExtension":break;case"selectedItem":this._selectionChangedAction({selectedItem:n.value});break;default:this.callBase(n)}}}).include(r.DataExpressionMixin))}(jQuery,DevExpress),function(n,t){var u=t.ui,r=u.events,f="dx-textarea",e="dx-texteditor-input";t.registerComponent("dxTextArea",u,u.dxTextBox.inherit({_setDefaultOptions:function(){this.callBase(),this.option({spellcheck:!0})},_render:function(){this.callBase(),this.element().addClass(f),this.setAria("multiline","true")},_renderInput:function(){this.callBase(),this._renderScrollHandler()},_createInput:function(){return n("