text: var Ext=Ext||{};if(!Ext.app){Ext.app={}}if(!Ext.app.domain){Ext.app.domain={}}if(!Ext.app.route){Ext.app.route={}}if(!Ext.behavior){Ext.behavior={}}if(!Ext.button){Ext.button={}}if(!Ext.carousel){Ext.carousel={}}if(!Ext.chart){Ext.chart={}}if(!Ext.chart.axis){Ext.chart.axis={}}if(!Ext.chart.axis.layout){Ext.chart.axis.layout={}}if(!Ext.chart.axis.segmenter){Ext.chart.axis.segmenter={}}if(!Ext.chart.axis.sprite){Ext.chart.axis.sprite={}}if(!Ext.chart.grid){Ext.chart.grid={}}if(!Ext.chart.interactions){Ext.chart.interactions={}}if(!Ext.chart.label){Ext.chart.label={}}if(!Ext.chart.overrides){Ext.chart.overrides={}}if(!Ext.chart.series){Ext.chart.series={}}if(!Ext.chart.series.sprite){Ext.chart.series.sprite={}}if(!Ext.chart.theme){Ext.chart.theme={}}if(!Ext.container){Ext.container={}}if(!Ext.core){Ext.core={}}if(!Ext.data){Ext.data={}}if(!Ext.data.field){Ext.data.field={}}if(!Ext.data.flash){Ext.data.flash={}}if(!Ext.data.identifier){Ext.data.identifier={}}if(!Ext.data.matrix){Ext.data.matrix={}}if(!Ext.data.operation){Ext.data.operation={}}if(!Ext.data.proxy){Ext.data.proxy={}}if(!Ext.data.reader){Ext.data.reader={}}if(!Ext.data.request){Ext.data.request={}}if(!Ext.data.schema){Ext.data.schema={}}if(!Ext.data.session){Ext.data.session={}}if(!Ext.data.validator){Ext.data.validator={}}if(!Ext.data.writer){Ext.data.writer={}}if(!Ext.dataview){Ext.dataview={}}if(!Ext.dataview.component){Ext.dataview.component={}}if(!Ext.dataview.element){Ext.dataview.element={}}if(!Ext.dom){Ext.dom={}}if(!Ext.dom.Element){Ext.dom.Element={}}if(!Ext.draw){Ext.draw={}}if(!Ext.draw.engine){Ext.draw.engine={}}if(!Ext.draw.engine.SvgContext){Ext.draw.engine.SvgContext={}}if(!Ext.draw.gradient){Ext.draw.gradient={}}if(!Ext.draw.modifier){Ext.draw.modifier={}}if(!Ext.draw.overrides){Ext.draw.overrides={}}if(!Ext.draw.overrides.sprite){Ext.draw.overrides.sprite={}}if(!Ext.draw.sprite){Ext.draw.sprite={}}if(!Ext.event){Ext.event={}}if(!Ext.event.gesture){Ext.event.gesture={}}if(!Ext.event.publisher){Ext.event.publisher={}}if(!Ext.fx){Ext.fx={}}if(!Ext.fx.animation){Ext.fx.animation={}}if(!Ext.fx.easing){Ext.fx.easing={}}if(!Ext.fx.layout){Ext.fx.layout={}}if(!Ext.fx.layout.card){Ext.fx.layout.card={}}if(!Ext.fx.runner){Ext.fx.runner={}}if(!Ext.layout){Ext.layout={}}if(!Ext.layout.wrapper){Ext.layout.wrapper={}}if(!Ext.lib){Ext.lib={}}if(!Ext.mixin){Ext.mixin={}}if(!Ext.overrides){Ext.overrides={}}if(!Ext.overrides.app){Ext.overrides.app={}}if(!Ext.overrides.scroll){Ext.overrides.scroll={}}if(!Ext.panel){Ext.panel={}}if(!Ext.promise){Ext.promise={}}if(!Ext.scroll){Ext.scroll={}}if(!Ext.tab){Ext.tab={}}if(!Ext.theme){Ext.theme={}}if(!Ext.theme.neptune){Ext.theme.neptune={}}if(!Ext.tip){Ext.tip={}}if(!Ext.util){Ext.util={}}if(!Ext.util.paintmonitor){Ext.util.paintmonitor={}}if(!Ext.util.sizemonitor){Ext.util.sizemonitor={}}if(!Ext.util.translatable){Ext.util.translatable={}}if(!Ext.viewport){Ext.viewport={}}var States=States||{};if(!States.controller){States.controller={}}if(!States.store){States.store={}}if(!States.view){States.view={}}(function(H){var K,A=["constructor","toString","valueOf","toLocaleString"],G={},w={},I=0,z,C,u,E,L,F,y,J,D,v=function(){var a,b;C=Ext.Base;u=Ext.ClassManager;for(a=A.length;a-->0;){b=(1<<a);w[G[b]=A[a]]=b}for(a in w){I|=w[a]}I=~I;Function.prototype.$isFunction=1;D=!!(u&&u.addAlias);E=Ext.Class.getPreprocessor("config").fn;L=Ext.Class.getPreprocessor("cachedConfig")&&Ext.Class.getPreprocessor("cachedConfig").fn;F=Ext.Class.getPreprocessor("platformConfig")&&Ext.Class.getPreprocessor("platformConfig").fn;J=Ext.Class.getPreprocessor("privates")&&Ext.Class.getPreprocessor("privates").fn;y=Ext.ClassManager.postprocessors.deprecated&&Ext.ClassManager.postprocessors.deprecated.fn;K=C.$staticMembers;if(!K){K=[];for(z in C){if(C.hasOwnProperty(z)){K.push(z)}}}H.derive=B;return B.apply(this,arguments)},t=function(a,e,b){var h=b.enumerableMembers,d=a.prototype,f,c,g,i,j;if(!e){return}if(D){a.addMembers(e)}else{for(f in e){i=e[f];if(i&&i.$isFunction&&!i.$isClass&&i!==Ext.emptyFn&&i!==Ext.identityFn){j=d.hasOwnProperty(f)&&d[f];if(j){i.$previous=j}d[f]=c=i;c.$owner=a;c.$name=f}else{d[f]=i}}for(g=1;h;g<<=1){if(h&g){h&=~g;f=G[g];d[f]=c=e[f];c.$owner=a;c.$name=f}}}},x=function(a){var e=function b(){return a.apply(this,arguments)||null},c,d;e.prototype=Ext.Object.chain(a.prototype);for(c=K.length;c-->0;){d=K[c];e[d]=C[d]}return e},B=function(s,am,d,aj,an,p,q,g,ad,n,ag){var ah=function ai(){return this.constructor.apply(this,arguments)||null},e=ah,af={enumerableMembers:aj&I,onCreated:ag,onBeforeCreated:t,aliases:g},ab=d.alternateClassName||[],i=Ext.global,m,j,h,ac,k,a,b,aa,l,ak,f,o,ae,c,r=u.alternateToName||u.maps.alternateToName,al=u.nameToAlternates||u.maps.nameToAlternates;for(h=K.length;h-->0;){b=K[h];ah[b]=C[b]}if(d.$isFunction){d=d(ah)}af.data=d;ak=d.statics;delete d.statics;d.$className=s;if("$className" in d){ah.$className=d.$className}ah.extend(am);l=ah.prototype;ah.xtype=d.xtype=an[0];if(an){l.xtypes=an}l.xtypesChain=p;l.xtypesMap=q;d.alias=g;e.triggerExtended(ah,d,af);if(d.onClassExtended){ah.onExtended(d.onClassExtended,ah);delete d.onClassExtended}if(d.privates&&J){J.call(Ext.Class,ah,d)}if(ak){if(D){ah.addStatics(ak)}else{for(f in ak){if(ak.hasOwnProperty(f)){c=ak[f];if(c&&c.$isFunction&&!c.$isClass&&c!==Ext.emptyFn&&c!==Ext.identityFn){ah[f]=ae=c;ae.$owner=ah;ae.$name=f}ah[f]=c}}}}if(d.inheritableStatics){ah.addInheritableStatics(d.inheritableStatics);delete d.inheritableStatics}if(l.onClassExtended){e.onExtended(l.onClassExtended,e);delete l.onClassExtended}if(d.config){E.call(Ext.Class,ah,d)}if(d.cachedConfig&&L){L.call(Ext.Class,ah,d);delete d.cachedConfig}if(d.platformConfig&&F){F.call(Ext.Class,ah,d);delete d.platformConfig}if(d.deprecated&&y){y.call(Ext.ClassManager,s,ah,d)}af.onBeforeCreated(ah,af.data,af);for(h=0,k=ad&&ad.length;h<k;++h){ah.mixin.apply(ah,ad[h])}for(h=0,k=g.length;h<k;h++){m=g[h];u.setAlias?u.setAlias(ah,m):u.addAlias(ah,m)}if(d.singleton){e=new ah()}if(!(ab instanceof Array)){ab=[ab]}o=u.getName(e);for(h=0,ac=ab.length;h<ac;h++){j=ab[h];u.classes[j]=e;if(D){u.addAlternate(ah,j)}else{if(o){r[j]=o;ab=al[o]||(al[o]=[]);ab.push(j)}}}for(h=0,k=n.length;h<k;h+=2){a=n[h];if(!a){a=i}a[n[h+1]]=e}u.classes[s]=e;if(!D){if(o&&o!==s){r[s]=o;ab=al[o]||(al[o]=[]);ab.push(s)}}delete l.alternateClassName;if(af.onCreated){af.onCreated.call(e,e)}if(s){u.triggerCreated(s)}return e};H.derive=v}(Ext.cmd={}));var Ext=Ext||{};(function(){var y=this,t=Object.prototype,x=t.toString,i=["valueOf","toLocaleString","toString","constructor"],q=function(){},u=function(){},s=function(a){return a},o=function(){var a=o.caller.caller;return a.$owner.prototype[a.$name].apply(this,arguments)},z=Ext.manifest||{},r,w=/\[object\s*(?:Array|Arguments|\w*Collection|\w*List|HTML\s+document\.all\s+class)\]/,v=/^\\?\/Date\(([-+])?(\d+)(?:[+-]\d{4})?\)\\?\/$/;Ext.global=y;Ext.now=Date.now||(Date.now=function(){return +new Date()});Ext.ticks=(y.performance&&y.performance.now)?function(){return performance.now()}:Ext.now;Ext._startTime=Ext.ticks();q.$nullFn=s.$nullFn=q.$emptyFn=s.$identityFn=u.$nullFn=true;u.$privacy="framework";Ext.suspendLayouts=Ext.resumeLayouts=q;for(r in {toString:1}){i=null}Ext.enumerables=i;Ext.apply=function(c,d,a){if(a){Ext.apply(c,a)}if(c&&d&&typeof d==="object"){var b,e,f;for(b in d){c[b]=d[b]}if(i){for(e=i.length;e--;){f=i[e];if(d.hasOwnProperty(f)){c[f]=d[f]}}}}return c};function p(c,a,b){var e,d;for(e in b){if(b.hasOwnProperty(e)){d=b[e];if(typeof d==="function"){d.$name=e;d.$owner=a;d.$previous=c.hasOwnProperty(e)?c[e]:o}c[e]=d}}}Ext.buildSettings=Ext.apply({baseCSSPrefix:"x-"},Ext.buildSettings||{});Ext.apply(Ext,{idSeed:0,idPrefix:"ext-",isSecure:/^https/i.test(window.location.protocol),enableGarbageCollector:false,enableListenerCollection:true,name:Ext.sandboxName||"Ext",privateFn:u,emptyFn:q,identityFn:s,frameStartTime:Ext.now(),manifest:z,enableAria:true,enableAriaButtons:true,enableAriaPanels:true,startsWithHashRe:/^#/,validIdRe:/^[a-z_][a-z0-9\-_]*$/i,BLANK_IMAGE_URL:"data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==",makeIdSelector:function(a){return"#"+a},id:function(c,a){if(c&&c.id){return c.id}var b=(a||Ext.idPrefix)+(++Ext.idSeed);if(c){c.id=b}return b},returnId:function(a){return a.getId()},returnTrue:function(){return true},emptyString:new String(),baseCSSPrefix:Ext.buildSettings.baseCSSPrefix,$eventNameMap:{},$vendorEventRe:/^(Moz.+|MS.+|webkit.+)/,canonicalEventName:function(a){return Ext.$eventNameMap[a]||(Ext.$eventNameMap[a]=(Ext.$vendorEventRe.test(a)?a:a.toLowerCase()))},applyIf:function(c,a){var b;if(c){for(b in a){if(c[b]===undefined){c[b]=a[b]}}}return c},destroy:function(){var a=arguments.length,b,c;for(b=0;b<a;b++){c=arguments[b];if(c){if(Ext.isArray(c)){this.destroy.apply(this,c)}else{if(Ext.isFunction(c.destroy)){c.destroy()}}}}return null},destroyMembers:function(c){for(var a,d,b=1,e=arguments,f=e.length;b<f;b++){a=c[d=e[b]];if(a!=null){c[d]=Ext.destroy(a)}}},override:function(c,b){if(c.$isClass){c.override(b)}else{if(typeof c==="function"){Ext.apply(c.prototype,b)}else{var a=c.self,d;if(a&&a.$isClass){d=b.privates;if(d){b=Ext.apply({},b);delete b.privates;p(c,a,d)}p(c,a,b)}else{Ext.apply(c,b)}}}return c},valueFrom:function(b,a,c){return Ext.isEmpty(b,c)?a:b},isEmpty:function(a,b){return(a==null)||(!b?a==="":false)||(Ext.isArray(a)&&a.length===0)},isArray:("isArray" in Array)?Array.isArray:function(a){return x.call(a)==="[object Array]"},isDate:function(a){return x.call(a)==="[object Date]"},isMSDate:function(a){if(!Ext.isString(a)){return false}return v.test(a)},isObject:(x.call(null)==="[object Object]")?function(a){return a!==null&&a!==undefined&&x.call(a)==="[object Object]"&&a.ownerDocument===undefined}:function(a){return x.call(a)==="[object Object]"},isSimpleObject:function(a){return a instanceof Object&&a.constructor===Object},isPrimitive:function(b){var a=typeof b;return a==="string"||a==="number"||a==="boolean"},isFunction:(typeof document!=="undefined"&&typeof document.getElementsByTagName("body")==="function")?function(a){return !!a&&x.call(a)==="[object Function]"}:function(a){return !!a&&typeof a==="function"},isNumber:function(a){return typeof a==="number"&&isFinite(a)},isNumeric:function(a){return !isNaN(parseFloat(a))&&isFinite(a)},isString:function(a){return typeof a==="string"},isBoolean:function(a){return typeof a==="boolean"},isElement:function(a){return a?a.nodeType===1:false},isTextNode:function(a){return a?a.nodeName==="#text":false},isDefined:function(a){return typeof a!=="undefined"},isIterable:function(a){if(!a||typeof a.length!=="number"||typeof a==="string"||Ext.isFunction(a)){return false}if(!a.propertyIsEnumerable){return !!a.item}if(a.hasOwnProperty("length")&&!a.propertyIsEnumerable("length")){return true}return w.test(x.call(a))},isDebugEnabled:q,clone:function(b){if(b===null||b===undefined){return b}if(b.nodeType&&b.cloneNode){return b.cloneNode(true)}var c=x.call(b),d,f,g,a,e;if(c==="[object Date]"){return new Date(b.getTime())}if(c==="[object Array]"){d=b.length;a=[];while(d--){a[d]=Ext.clone(b[d])}}else{if(c==="[object Object]"&&b.constructor===Object){a={};for(e in b){a[e]=Ext.clone(b[e])}if(i){for(f=i.length;f--;){g=i[f];if(b.hasOwnProperty(g)){a[g]=b[g]}}}}}return a||b},getUniqueGlobalNamespace:function(){var a=this.uniqueGlobalNamespace,b;if(a===undefined){b=0;do{a="ExtBox"+(++b)}while(y[a]!==undefined);y[a]=Ext;this.uniqueGlobalNamespace=a}return a},functionFactoryCache:{},cacheableFunctionFactory:function(){var b=this,e=Array.prototype.slice.call(arguments),f=b.functionFactoryCache,a,d,c;if(Ext.isSandboxed){c=e.length;if(c>0){c--;e[c]="var Ext=window."+Ext.name+";"+e[c]}}a=e.join("");d=f[a];if(!d){d=Function.prototype.constructor.apply(Function.prototype,e);f[a]=d}return d},functionFactory:function(){var a=Array.prototype.slice.call(arguments),b;if(Ext.isSandboxed){b=a.length;if(b>0){b--;a[b]="var Ext=window."+Ext.name+";"+a[b]}}return Function.prototype.constructor.apply(Function.prototype,a)},Logger:{verbose:q,log:q,info:q,warn:q,error:function(a){throw new Error(a)},deprecate:q},getElementById:function(a){return document.getElementById(a)},splitAndUnescape:(function(){var a={};return function(e,f){if(!e){return[]}else{if(!f){return[e]}}var c=a[f]||(a[f]=new RegExp("\\\\"+f,"g")),g=[],b,d;b=e.split(f);while((d=b.shift())!==undefined){while(d.charAt(d.length-1)==="\\"&&b.length>0){d=d+f+b.shift()}d=d.replace(c,f);g.push(d)}return g}})()});Ext.returnTrue.$nullFn=Ext.returnId.$nullFn=true}());Ext.platformTags.classic=!(Ext.platformTags.modern=Ext.isModern=true);(function(){function b(){var h=this,a=h.sourceClass,f=h.sourceMethod,g=h.msg;if(f){if(g){f+="(): ";f+=g}else{f+="()"}}if(a){f=f?(a+"."+f):a}return f||g||""}Ext.Error=function(d){if(Ext.isString(d)){d={msg:d}}var a=new Error();Ext.apply(a,d);a.message=a.message||a.msg;a.toString=b;return a};Ext.apply(Ext.Error,{ignore:false,raise:function(i){i=i||{};if(Ext.isString(i)){i={msg:i}}var j=this,g=j.raise.caller,h,a;if(g===Ext.raise){g=g.caller}if(g){if(!i.sourceMethod&&(a=g.$name)){i.sourceMethod=a}if(!i.sourceClass&&(a=g.$owner)&&(a=a.$className)){i.sourceClass=a}}if(j.handle(i)!==true){h=b.call(i);throw new Ext.Error(i)}},handle:function(){return this.ignore}})})();Ext.deprecated=function(b){return Ext.emptyFn};Ext.raise=function(){Ext.Error.raise.apply(Ext.Error,arguments)};Ext.Array=(function(){var H=Array.prototype,A=H.slice,y=(function(){var a=[],c,b=20;if(!a.splice){return false}while(b--){a.push("A")}a.splice(15,0,"F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F","F");c=a.length;a.splice(13,0,"XXX");if(c+1!==a.length){return false}return true}()),z="indexOf" in H,E=true;function B(a,d){var f=a.length,b=new Array(f),c;for(c=0;c<f;c++){b[c]=c}b.sort(function(h,g){return d(a[h],a[g])||(h-g)});for(c=0;c<f;c++){b[c]=a[b[c]]}for(c=0;c<f;c++){a[c]=b[c]}return a}try{if(typeof document!=="undefined"){A.call(document.getElementsByTagName("body"))}}catch(w){E=false}var C=function(a,b){return(b<0)?Math.max(0,a.length+b):Math.min(a.length,b)},e=function(d,g,m,a){var n=a?a.length:0,k=d.length,c=C(d,g);if(c===k){if(n){d.push.apply(d,a)}}else{var h=Math.min(m,k-c),b=c+h,l=b+n-h,f=k-b,j=k-h,i;if(l<b){for(i=0;i<f;++i){d[l+i]=d[b+i]}}else{if(l>b){for(i=f;i--;){d[l+i]=d[b+i]}}}if(n&&c===j){d.length=j;d.push.apply(d,a)}else{d.length=j+n;for(i=0;i<n;++i){d[c+i]=a[i]}}}return d},F=function(a,d,b,c){if(c&&c.length){if(d===0&&!b){a.unshift.apply(a,c)}else{if(d<a.length){a.splice.apply(a,[d,b].concat(c))}else{a.push.apply(a,c)}}}else{a.splice(d,b)}return a},I=function(a,c,b){return e(a,c,b)},x=function(a,c,b){a.splice(c,b);return a},D=function(a,f,c){var b=C(a,f),d=a.slice(f,C(a,b+c));if(arguments.length<4){e(a,b,c)}else{e(a,b,c,A.call(arguments,3))}return d},G=function(a){return a.splice.apply(a,A.call(arguments,1))},t=y?x:I,v=y?F:e,u=y?G:D,J={binarySearch:function(h,b,d,g,i){var c=h.length,f,a;if(d instanceof Function){i=d;d=0;g=c}else{if(g instanceof Function){i=g;g=c}else{if(d===undefined){d=0}if(g===undefined){g=c}i=i||J.lexicalCompare}}--g;while(d<=g){f=(d+g)>>1;a=i(b,h[f]);if(a>=0){d=f+1}else{if(a<0){g=f-1}}}return d},defaultCompare:function(b,a){return(b<a)?-1:((b>a)?1:0)},lexicalCompare:function(b,a){b=String(b);a=String(a);return(b<a)?-1:((b>a)?1:0)},each:function(a,c,d,g){a=J.from(a);var f,b=a.length;if(g!==true){for(f=0;f<b;f++){if(c.call(d||a[f],a[f],f,a)===false){return f}}}else{for(f=b-1;f>-1;f--){if(c.call(d||a[f],a[f],f,a)===false){return f}}}return true},forEach:("forEach" in H)?function(a,b,c){return a.forEach(b,c)}:function(a,c,d){for(var f=0,b=a.length;f<b;f++){c.call(d,a[f],f,a)}},indexOf:z?function(a,c,b){return H.indexOf.call(a,c,b)}:function(a,c,b){var f,d=a.length;for(f=(b<0)?Math.max(0,d+b):b||0;f<d;f++){if(a[f]===c){return f}}return -1},contains:z?function(a,b){return H.indexOf.call(a,b)!==-1}:function(a,b){var d,c;for(d=0,c=a.length;d<c;d++){if(a[d]===b){return true}}return false},toArray:function(c,a,f){if(!c||!c.length){return[]}if(typeof c==="string"){c=c.split("")}if(E){return A.call(c,a||0,f||c.length)}var b=[],d;a=a||0;f=f?((f<0)?c.length+f:f):c.length;for(d=a;d<f;d++){b.push(c[d])}return b},pluck:function(a,g){var f=[],d,b,c;for(d=0,b=a.length;d<b;d++){c=a[d];f.push(c[g])}return f},map:("map" in H)?function(a,b,c){return a.map(b,c)}:function(a,b,c){var d=[],g=a.length,f;for(f=0;f<g;f++){d[f]=b.call(c,a[f],f,a)}return d},every:("every" in H)?function(a,b,c){return a.every(b,c)}:function(a,c,d){var f=0,b=a.length;for(;f<b;++f){if(!c.call(d,a[f],f,a)){return false}}return true},some:("some" in H)?function(a,b,c){return a.some(b,c)}:function(a,c,d){var f=0,b=a.length;for(;f<b;++f){if(c.call(d,a[f],f,a)){return true}}return false},equals:function(a,b){var d=a.length,f=b.length,c;if(a===b){return true}if(d!==f){return false}for(c=0;c<d;++c){if(a[c]!==b[c]){return false}}return true},clean:function(a){var d=[],f=0,b=a.length,c;for(;f<b;f++){c=a[f];if(!Ext.isEmpty(c)){d.push(c)}}return d},unique:function(a){var b=[],f=0,c=a.length,d;for(;f<c;f++){d=a[f];if(J.indexOf(b,d)===-1){b.push(d)}}return b},filter:("filter" in H)?function(a,b,c){return a.filter(b,c)}:function(a,c,d){var f=[],g=0,b=a.length;for(;g<b;g++){if(c.call(d,a[g],g,a)){f.push(a[g])}}return f},findBy:function(a,b,c){var d=0,f=a.length;for(;d<f;d++){if(b.call(c||a,a[d],d)){return a[d]}}return null},from:function(a,b){if(a===undefined||a===null){return[]}if(Ext.isArray(a)){return(b)?A.call(a):a}var c=typeof a;if(a&&a.length!==undefined&&c!=="string"&&(c!=="function"||!a.apply)){return J.toArray(a)}return[a]},remove:function(a,b){var c=J.indexOf(a,b);if(c!==-1){t(a,c,1)}return a},removeAt:function(a,c,b){var d=a.length;if(c>=0&&c<d){b=b||1;b=Math.min(b,d-c);t(a,c,b)}return a},include:function(a,b){if(!J.contains(a,b)){a.push(b)}},clone:function(a){return A.call(a)},merge:function(){var d=A.call(arguments),a=[],c,b;for(c=0,b=d.length;c<b;c++){a=a.concat(d[c])}return J.unique(a)},intersect:function(){var f=[],m=A.call(arguments),o,a,g,b,l,k,n,c,p,j,d,h,i;if(!m.length){return f}o=m.length;for(d=l=0;d<o;d++){k=m[d];if(!b||k.length<b.length){b=k;l=d}}b=J.unique(b);t(m,l,1);n=b.length;o=m.length;for(d=0;d<n;d++){c=b[d];j=0;for(h=0;h<o;h++){a=m[h];g=a.length;for(i=0;i<g;i++){p=a[i];if(c===p){j++;break}}}if(j===o){f.push(c)}}return f},difference:function(f,g){var h=A.call(f),b=h.length,c,d,a;for(c=0,a=g.length;c<a;c++){for(d=0;d<b;d++){if(h[d]===g[c]){t(h,d,1);d--;b--}}}return h},reduce:Array.prototype.reduce?function(a,b,c){if(arguments.length===3){return Array.prototype.reduce.call(a,b,c)}return Array.prototype.reduce.call(a,b)}:function(a,b,g){a=Object(a);var d=0,c=a.length>>>0,f=g;if(arguments.length<3){while(true){if(d in a){f=a[d++];break}if(++d>=c){throw new TypeError("Reduce of empty array with no initial value")}}}for(;d<c;++d){if(d in a){f=b(f,a[d],d,a)}}return f},slice:([1,2].slice(1,undefined).length?function(a,b,c){return A.call(a,b,c)}:function(a,b,c){if(typeof b==="undefined"){return A.call(a)}if(typeof c==="undefined"){return A.call(a,b)}return A.call(a,b,c)}),sort:function(a,b){return B(a,b||J.lexicalCompare)},flatten:function(a){var b=[];function c(f){var h,g,d;for(h=0,g=f.length;h<g;h++){d=f[h];if(Ext.isArray(d)){c(d)}else{b.push(d)}}return b}return c(a)},min:function(a,b){var f=a[0],g,c,d;for(g=0,c=a.length;g<c;g++){d=a[g];if(b){if(b(f,d)===1){f=d}}else{if(d<f){f=d}}}return f},max:function(a,b){var g=a[0],f,c,d;for(f=0,c=a.length;f<c;f++){d=a[f];if(b){if(b(g,d)===-1){g=d}}else{if(d>g){g=d}}}return g},mean:function(a){return a.length>0?J.sum(a)/a.length:undefined},sum:function(a){var d=0,f,b,c;for(f=0,b=a.length;f<b;f++){c=a[f];d+=c}return d},toMap:function(a,f,c){var b={},d=a.length;if(!f){while(d--){b[a[d]]=d+1}}else{if(typeof f==="string"){while(d--){b[a[d][f]]=d+1}}else{while(d--){b[f.call(c,a[d])]=d+1}}}return b},toValueMap:function(h,k,a,i){var f={},l=h.length,m,j,c,g,b,d;if(!k){while(l--){d=h[l];f[d]=d}}else{if(!(g=(typeof k!=="string"))){i=a}j=i===1;m=i===2;while(l--){d=h[l];b=g?k.call(a,d):d[k];if(j){if(b in f){f[b].push(d)}else{f[b]=[d]}}else{if(m&&(b in f)){if((c=f[b]) instanceof Array){c.push(d)}else{f[b]=[c,d]}}else{f[b]=d}}}}return f},erase:t,insert:function(a,b,c){return v(a,b,0,c)},move:function(a,f,c){if(c===f){return}var d=a[f],b=c>f?1:-1,g;for(g=f;g!=c;g+=b){a[g]=a[g+b]}a[c]=d},replace:v,splice:u,push:function(a){var d=arguments.length,b=1,c;if(a===undefined){a=[]}else{if(!Ext.isArray(a)){a=[a]}}for(;b<d;b++){c=arguments[b];Array.prototype.push[Ext.isIterable(c)?"apply":"call"](a,c)}return a},numericSortFn:function(a,b){return a-b}};Ext.each=J.each;J.union=J.merge;Ext.min=J.min;Ext.max=J.max;Ext.sum=J.sum;Ext.mean=J.mean;Ext.flatten=J.flatten;Ext.clean=J.clean;Ext.unique=J.unique;Ext.pluck=J.pluck;Ext.toArray=function(){return J.toArray.apply(J,arguments)};return J}());Ext.String=(function(){var u=/^[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000]+|[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000]+$/g,q=/('|\\)/g,A=/([-.*+?\^${}()|\[\]\/\\])/g,o=/^\s+|\s+$/g,t=/\s+/,r=/(^[^a-z]*|[^\w])/gi,x,B,v,y,w=function(a,b){return x[b]},s=function(a,b){return(b in B)?B[b]:String.fromCharCode(parseInt(b.substr(2),10))},z=function(a,b){if(a===null||a===undefined||b===null||b===undefined){return false}return b.length<=a.length},p;return p={insert:function(b,a,c){if(!b){return a}if(!a){return b}var d=b.length;if(!c&&c!==0){c=d}if(c<0){c*=-1;if(c>=d){c=0}else{c=d-c}}if(c===0){b=a+b}else{if(c>=b.length){b+=a}else{b=b.substr(0,c)+a+b.substr(c)}}return b},startsWith:function(b,a,c){var d=z(b,a);if(d){if(c){b=b.toLowerCase();a=a.toLowerCase()}d=b.lastIndexOf(a,0)===0}return d},endsWith:function(a,c,b){var d=z(a,c);if(d){if(b){a=a.toLowerCase();c=c.toLowerCase()}d=a.indexOf(c,a.length-c.length)!==-1}return d},createVarName:function(a){return a.replace(r,"")},htmlEncode:function(a){return(!a)?a:String(a).replace(v,w)},htmlDecode:function(a){return(!a)?a:String(a).replace(y,s)},hasHtmlCharacters:function(a){return v.test(a)},addCharacterEntities:function(d){var e=[],a=[],c,b;for(c in d){b=d[c];B[c]=b;x[b]=c;e.push(b);a.push(c)}v=new RegExp("("+e.join("|")+")","g");y=new RegExp("("+a.join("|")+"|&#[0-9]{1,5};)","g")},resetCharacterEntities:function(){x={};B={};this.addCharacterEntities({"&amp;":"&","&gt;":">","&lt;":"<","&quot;":'"',"&#39;":"'"})},urlAppend:function(a,b){if(!Ext.isEmpty(b)){return a+(a.indexOf("?")===-1?"?":"&")+b}return a},trim:function(a){if(a){a=a.replace(u,"")}return a||""},capitalize:function(a){if(a){a=a.charAt(0).toUpperCase()+a.substr(1)}return a||""},uncapitalize:function(a){if(a){a=a.charAt(0).toLowerCase()+a.substr(1)}return a||""},ellipsis:function(c,d,b){if(c&&c.length>d){if(b){var a=c.substr(0,d-2),e=Math.max(a.lastIndexOf(" "),a.lastIndexOf("."),a.lastIndexOf("!"),a.lastIndexOf("?"));if(e!==-1&&e>=(d-15)){return a.substr(0,e)+"..."}}return c.substr(0,d-3)+"..."}return c},escapeRegex:function(a){return a.replace(A,"\\$1")},createRegex:function(a,b,d,e){var c=a;if(a!=null&&!a.exec){c=p.escapeRegex(String(a));if(b!==false){c="^"+c}if(d!==false){c+="$"}c=new RegExp(c,(e!==false)?"i":"")}return c},escape:function(a){return a.replace(q,"\\$1")},toggle:function(b,a,c){return b===a?c:a},leftPad:function(c,b,a){var d=String(c);a=a||" ";while(d.length<b){d=a+d}return d},repeat:function(a,b,d){if(b<1){b=0}for(var e=[],c=b;c--;){e.push(a)}return e.join(d||"")},splitWords:function(a){if(a&&typeof a=="string"){return a.replace(o,"").split(t)}return a||[]}}}());Ext.String.resetCharacterEntities();Ext.htmlEncode=Ext.String.htmlEncode;Ext.htmlDecode=Ext.String.htmlDecode;Ext.urlAppend=Ext.String.urlAppend;Ext.Date=(function(){var q,r=Date,l=/(\\.)/g,v=/([gGhHisucUOPZ]|MS)/,p=/([djzmnYycU]|MS)/,m=/\\/gi,t=/\{(\d+)\}/g,o=new RegExp("\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/"),s=Ext.String.leftPad,u=["var me = this, dt, y, m, d, h, i, s, ms, o, O, z, zz, u, v, W, year, jan4, week1monday, daysInMonth, dayMatched,","def = me.defaults,","from = Ext.Number.from,","results = String(input).match(me.parseRegexes[{0}]);","if(results){","{1}","if(u != null){","v = new Date(u * 1000);","}else{","dt = me.clearTime(new Date);","y = from(y, from(def.y, dt.getFullYear()));","m = from(m, from(def.m - 1, dt.getMonth()));","dayMatched = d !== undefined;","d = from(d, from(def.d, dt.getDate()));","if (!dayMatched) {","dt.setDate(1);","dt.setMonth(m);","dt.setFullYear(y);","daysInMonth = me.getDaysInMonth(dt);","if (d > daysInMonth) {","d = daysInMonth;","}","}","h  = from(h, from(def.h, dt.getHours()));","i  = from(i, from(def.i, dt.getMinutes()));","s  = from(s, from(def.s, dt.getSeconds()));","ms = from(ms, from(def.ms, dt.getMilliseconds()));","if(z >= 0 && y >= 0){","v = me.add(new Date(y < 100 ? 100 : y, 0, 1, h, i, s, ms), me.YEAR, y < 100 ? y - 100 : 0);","v = !strict? v : (strict === true && (z <= 364 || (me.isLeapYear(v) && z <= 365))? me.add(v, me.DAY, z) : null);","}else if(strict === true && !me.isValid(y, m + 1, d, h, i, s, ms)){","v = null;","}else{","if (W) {","year = y || (new Date()).getFullYear();","jan4 = new Date(year, 0, 4, 0, 0, 0);","d = jan4.getDay();","week1monday = new Date(jan4.getTime() - ((d === 0 ? 6 : d - 1) * 86400000));","v = Ext.Date.clearTime(new Date(week1monday.getTime() + ((W - 1) * 604800000 + 43200000)));","} else {","v = me.add(new Date(y < 100 ? 100 : y, m, d, h, i, s, ms), me.YEAR, y < 100 ? y - 100 : 0);","}","}","}","}","if(v){","if(zz != null){","v = me.add(v, me.SECOND, -v.getTimezoneOffset() * 60 - zz);","}else if(o){","v = me.add(v, me.MINUTE, -v.getTimezoneOffset() + (sn == '+'? -1 : 1) * (hr * 60 + mn));","}","}","return (v != null) ? v : null;"].join("\n");if(!Date.prototype.toISOString){Date.prototype.toISOString=function(){var a=this;return s(a.getUTCFullYear(),4,"0")+"-"+s(a.getUTCMonth()+1,2,"0")+"-"+s(a.getUTCDate(),2,"0")+"T"+s(a.getUTCHours(),2,"0")+":"+s(a.getUTCMinutes(),2,"0")+":"+s(a.getUTCSeconds(),2,"0")+"."+s(a.getUTCMilliseconds(),3,"0")+"Z"}}function n(a){var b=Array.prototype.slice.call(arguments,1);return a.replace(t,function(d,c){return b[c]})}return q={now:r.now,toString:function(a){if(!a){a=new r()}return a.getFullYear()+"-"+s(a.getMonth()+1,2,"0")+"-"+s(a.getDate(),2,"0")+"T"+s(a.getHours(),2,"0")+":"+s(a.getMinutes(),2,"0")+":"+s(a.getSeconds(),2,"0")},getElapsed:function(a,b){return Math.abs(a-(b||q.now()))},useStrict:false,formatCodeToRegex:function(a,b){var c=q.parseCodes[a];if(c){c=typeof c==="function"?c():c;q.parseCodes[a]=c}return c?Ext.applyIf({c:c.c?n(c.c,b||"{0}"):c.c},c):{g:0,c:null,s:Ext.String.escapeRegex(a)}},parseFunctions:{MS:function(a,b){var c=(a||"").match(o);return c?new r(((c[1]||"")+c[2])*1):null},time:function(a,b){var c=parseInt(a,10);if(c||c===0){return new r(c)}return null},timestamp:function(a,b){var c=parseInt(a,10);if(c||c===0){return new r(c*1000)}return null}},parseRegexes:[],formatFunctions:{MS:function(){return"\\/Date("+this.getTime()+")\\/"},time:function(){return this.getTime().toString()},timestamp:function(){return q.format(this,"U")}},y2kYear:50,MILLI:"ms",SECOND:"s",MINUTE:"mi",HOUR:"h",DAY:"d",MONTH:"mo",YEAR:"y",defaults:{},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNumbers:{January:0,Jan:0,February:1,Feb:1,March:2,Mar:2,April:3,Apr:3,May:4,June:5,Jun:5,July:6,Jul:6,August:7,Aug:7,September:8,Sep:8,October:9,Oct:9,November:10,Nov:10,December:11,Dec:11},defaultFormat:"m/d/Y",getShortMonthName:function(a){return q.monthNames[a].substring(0,3)},getShortDayName:function(a){return q.dayNames[a].substring(0,3)},getMonthNumber:function(a){return q.monthNumbers[a.substring(0,1).toUpperCase()+a.substring(1,3).toLowerCase()]},formatContainsHourInfo:function(a){return v.test(a.replace(l,""))},formatContainsDateInfo:function(a){return p.test(a.replace(l,""))},unescapeFormat:function(a){return a.replace(m,"")},formatCodes:{d:"Ext.String.leftPad(m.getDate(), 2, '0')",D:"Ext.Date.getShortDayName(m.getDay())",j:"m.getDate()",l:"Ext.Date.dayNames[m.getDay()]",N:"(m.getDay() ? m.getDay() : 7)",S:"Ext.Date.getSuffix(m)",w:"m.getDay()",z:"Ext.Date.getDayOfYear(m)",W:"Ext.String.leftPad(Ext.Date.getWeekOfYear(m), 2, '0')",F:"Ext.Date.monthNames[m.getMonth()]",m:"Ext.String.leftPad(m.getMonth() + 1, 2, '0')",M:"Ext.Date.getShortMonthName(m.getMonth())",n:"(m.getMonth() + 1)",t:"Ext.Date.getDaysInMonth(m)",L:"(Ext.Date.isLeapYear(m) ? 1 : 0)",o:"(m.getFullYear() + (Ext.Date.getWeekOfYear(m) == 1 && m.getMonth() > 0 ? +1 : (Ext.Date.getWeekOfYear(m) >= 52 && m.getMonth() < 11 ? -1 : 0)))",Y:"Ext.String.leftPad(m.getFullYear(), 4, '0')",y:"('' + m.getFullYear()).substring(2, 4)",a:"(m.getHours() < 12 ? 'am' : 'pm')",A:"(m.getHours() < 12 ? 'AM' : 'PM')",g:"((m.getHours() % 12) ? m.getHours() % 12 : 12)",G:"m.getHours()",h:"Ext.String.leftPad((m.getHours() % 12) ? m.getHours() % 12 : 12, 2, '0')",H:"Ext.String.leftPad(m.getHours(), 2, '0')",i:"Ext.String.leftPad(m.getMinutes(), 2, '0')",s:"Ext.String.leftPad(m.getSeconds(), 2, '0')",u:"Ext.String.leftPad(m.getMilliseconds(), 3, '0')",O:"Ext.Date.getGMTOffset(m)",P:"Ext.Date.getGMTOffset(m, true)",T:"Ext.Date.getTimezone(m)",Z:"(m.getTimezoneOffset() * -60)",c:function(){var b="Y-m-dTH:i:sP",d=[],e,a=b.length,c;for(e=0;e<a;++e){c=b.charAt(e);d.push(c==="T"?"'T'":q.getFormatCode(c))}return d.join(" + ")},C:function(){return"m.toISOString()"},U:"Math.round(m.getTime() / 1000)"},isValid:function(b,a,c,e,g,f,h){e=e||0;g=g||0;f=f||0;h=h||0;var d=q.add(new r(b<100?100:b,a-1,c,e,g,f,h),q.YEAR,b<100?b-100:0);return b===d.getFullYear()&&a===d.getMonth()+1&&c===d.getDate()&&e===d.getHours()&&g===d.getMinutes()&&f===d.getSeconds()&&h===d.getMilliseconds()},parse:function(a,c,b){var d=q.parseFunctions;if(d[c]==null){q.createParser(c)}return d[c].call(q,a,Ext.isDefined(b)?b:q.useStrict)},parseDate:function(a,c,b){return q.parse(a,c,b)},getFormatCode:function(a){var b=q.formatCodes[a];if(b){b=typeof b==="function"?b():b;q.formatCodes[a]=b}return b||("'"+Ext.String.escape(a)+"'")},createFormat:function(c){var d=[],b=false,e="",a;for(a=0;a<c.length;++a){e=c.charAt(a);if(!b&&e==="\\"){b=true}else{if(b){b=false;d.push("'"+Ext.String.escape(e)+"'")}else{if(e==="\n"){d.push("'\\n'")}else{d.push(q.getFormatCode(e))}}}}q.formatFunctions[c]=Ext.functionFactory("var m=this;return "+d.join("+"))},createParser:function(i){var f=q.parseRegexes.length,h=1,e=[],j=[],a=false,g="",c=0,b=i.length,k=[],d;for(;c<b;++c){g=i.charAt(c);if(!a&&g==="\\"){a=true}else{if(a){a=false;j.push(Ext.String.escape(g))}else{d=q.formatCodeToRegex(g,h);h+=d.g;j.push(d.s);if(d.g&&d.c){if(d.calcAtEnd){k.push(d.c)}else{e.push(d.c)}}}}}e=e.concat(k);q.parseRegexes[f]=new RegExp("^"+j.join("")+"$","i");q.parseFunctions[i]=Ext.functionFactory("input","strict",n(u,f,e.join("")))},parseCodes:{d:{g:1,c:"d = parseInt(results[{0}], 10);\n",s:"(3[0-1]|[1-2][0-9]|0[1-9])"},j:{g:1,c:"d = parseInt(results[{0}], 10);\n",s:"(3[0-1]|[1-2][0-9]|[1-9])"},D:function(){for(var b=[],a=0;a<7;b.push(q.getShortDayName(a)),++a){}return{g:0,c:null,s:"(?:"+b.join("|")+")"}},l:function(){return{g:0,c:null,s:"(?:"+q.dayNames.join("|")+")"}},N:{g:0,c:null,s:"[1-7]"},S:{g:0,c:null,s:"(?:st|nd|rd|th)"},w:{g:0,c:null,s:"[0-6]"},z:{g:1,c:"z = parseInt(results[{0}], 10);\n",s:"(\\d{1,3})"},W:{g:1,c:"W = parseInt(results[{0}], 10);\n",s:"(\\d{2})"},F:function(){return{g:1,c:"m = parseInt(me.getMonthNumber(results[{0}]), 10);\n",s:"("+q.monthNames.join("|")+")"}},M:function(){for(var b=[],a=0;a<12;b.push(q.getShortMonthName(a)),++a){}return Ext.applyIf({s:"("+b.join("|")+")"},q.formatCodeToRegex("F"))},m:{g:1,c:"m = parseInt(results[{0}], 10) - 1;\n",s:"(1[0-2]|0[1-9])"},n:{g:1,c:"m = parseInt(results[{0}], 10) - 1;\n",s:"(1[0-2]|[1-9])"},t:{g:0,c:null,s:"(?:\\d{2})"},L:{g:0,c:null,s:"(?:1|0)"},o:{g:1,c:"y = parseInt(results[{0}], 10);\n",s:"(\\d{4})"},Y:{g:1,c:"y = parseInt(results[{0}], 10);\n",s:"(\\d{4})"},y:{g:1,c:"var ty = parseInt(results[{0}], 10);\ny = ty > me.y2kYear ? 1900 + ty : 2000 + ty;\n",s:"(\\d{2})"},a:{g:1,c:"if (/(am)/i.test(results[{0}])) {\nif (!h || h == 12) { h = 0; }\n} else { if (!h || h < 12) { h = (h || 0) + 12; }}",s:"(am|pm|AM|PM)",calcAtEnd:true},A:{g:1,c:"if (/(am)/i.test(results[{0}])) {\nif (!h || h == 12) { h = 0; }\n} else { if (!h || h < 12) { h = (h || 0) + 12; }}",s:"(AM|PM|am|pm)",calcAtEnd:true},g:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(1[0-2]|[0-9])"},G:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(2[0-3]|1[0-9]|[0-9])"},h:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(1[0-2]|0[1-9])"},H:{g:1,c:"h = parseInt(results[{0}], 10);\n",s:"(2[0-3]|[0-1][0-9])"},i:{g:1,c:"i = parseInt(results[{0}], 10);\n",s:"([0-5][0-9])"},s:{g:1,c:"s = parseInt(results[{0}], 10);\n",s:"([0-5][0-9])"},u:{g:1,c:"ms = results[{0}]; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n",s:"(\\d+)"},O:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1),","hr = o.substring(1,3)*1 + Math.floor(o.substring(3,5) / 60),","mn = o.substring(3,5) % 60;","o = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + Ext.String.leftPad(hr, 2, '0') + Ext.String.leftPad(mn, 2, '0')) : null;\n"].join("\n"),s:"([+-]\\d{4})"},P:{g:1,c:["o = results[{0}];","var sn = o.substring(0,1),","hr = o.substring(1,3)*1 + Math.floor(o.substring(4,6) / 60),","mn = o.substring(4,6) % 60;","o = ((-12 <= (hr*60 + mn)/60) && ((hr*60 + mn)/60 <= 14))? (sn + Ext.String.leftPad(hr, 2, '0') + Ext.String.leftPad(mn, 2, '0')) : null;\n"].join("\n"),s:"([+-]\\d{2}:\\d{2})"},T:{g:0,c:null,s:"[A-Z]{1,5}"},Z:{g:1,c:"zz = results[{0}] * 1;\nzz = (-43200 <= zz && zz <= 50400)? zz : null;\n",s:"([+-]?\\d{1,5})"},c:function(){var c=[],a=[q.formatCodeToRegex("Y",1),q.formatCodeToRegex("m",2),q.formatCodeToRegex("d",3),q.formatCodeToRegex("H",4),q.formatCodeToRegex("i",5),q.formatCodeToRegex("s",6),{c:"ms = results[7] || '0'; ms = parseInt(ms, 10)/Math.pow(10, ms.length - 3);\n"},{c:["if(results[8]) {","if(results[8] == 'Z'){","zz = 0;","}else if (results[8].indexOf(':') > -1){",q.formatCodeToRegex("P",8).c,"}else{",q.formatCodeToRegex("O",8).c,"}","}"].join("\n")}],b,d;for(b=0,d=a.length;b<d;++b){c.push(a[b].c)}return{g:1,c:c.join(""),s:[a[0].s,"(?:","-",a[1].s,"(?:","-",a[2].s,"(?:","(?:T| )?",a[3].s,":",a[4].s,"(?::",a[5].s,")?","(?:(?:\\.|,)(\\d+))?","(Z|(?:[-+]\\d{2}(?::)?\\d{2}))?",")?",")?",")?"].join("")}},U:{g:1,c:"u = parseInt(results[{0}], 10);\n",s:"(-?\\d+)"}},dateFormat:function(b,a){return q.format(b,a)},isEqual:function(a,b){if(a&&b){return(a.getTime()===b.getTime())}return !(a||b)},format:function(a,c){var b=q.formatFunctions;if(!Ext.isDate(a)){return""}if(b[c]==null){q.createFormat(c)}return b[c].call(a)+""},getTimezone:function(a){return a.toString().replace(/^.* (?:\((.*)\)|([A-Z]{1,5})(?:[\-+][0-9]{4})?(?: -?\d+)?)$/,"$1$2").replace(/[^A-Z]/g,"")},getGMTOffset:function(b,a){var c=b.getTimezoneOffset();return(c>0?"-":"+")+Ext.String.leftPad(Math.floor(Math.abs(c)/60),2,"0")+(a?":":"")+Ext.String.leftPad(Math.abs(c%60),2,"0")},getDayOfYear:function(d){var e=0,b=q.clone(d),a=d.getMonth(),c;for(c=0,b.setDate(1),b.setMonth(0);c<a;b.setMonth(++c)){e+=q.getDaysInMonth(b)}return e+d.getDate()-1},getWeekOfYear:(function(){var b=86400000,a=7*b;return function(e){var d=r.UTC(e.getFullYear(),e.getMonth(),e.getDate()+3)/b,f=Math.floor(d/7),c=new r(f*a).getUTCFullYear();return f-Math.floor(r.UTC(c,0,7)/a)+1}}()),isLeapYear:function(b){var a=b.getFullYear();return !!((a&3)===0&&(a%100||(a%400===0&&a)))},getFirstDayOfMonth:function(a){var b=(a.getDay()-(a.getDate()-1))%7;return(b<0)?(b+7):b},getLastDayOfMonth:function(a){return q.getLastDateOfMonth(a).getDay()},getFirstDateOfMonth:function(a){return new r(a.getFullYear(),a.getMonth(),1)},getLastDateOfMonth:function(a){return new r(a.getFullYear(),a.getMonth(),q.getDaysInMonth(a))},getDaysInMonth:(function(){var a=[31,28,31,30,31,30,31,31,30,31,30,31];return function(b){var c=b.getMonth();return c===1&&q.isLeapYear(b)?29:a[c]}}()),getSuffix:function(a){switch(a.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}},clone:function(a){return new r(a.getTime())},isDST:function(a){return new r(a.getFullYear(),0,1).getTimezoneOffset()!==a.getTimezoneOffset()},clearTime:function(b,c){if(isNaN(b.getTime())){return b}if(c){return q.clearTime(q.clone(b))}var e=b.getDate(),a,d;b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0);if(b.getDate()!==e){for(a=1,d=q.add(b,q.HOUR,a);d.getDate()!==e;a++,d=q.add(b,q.HOUR,a)){}b.setDate(e);b.setHours(d.getHours())}return b},add:function(g,a,d){var c=q.clone(g),b,e,f=0;if(!a||d===0){return c}e=d-parseInt(d,10);d=parseInt(d,10);if(d){switch(a.toLowerCase()){case q.MILLI:c.setTime(c.getTime()+d);break;case q.SECOND:c.setTime(c.getTime()+d*1000);break;case q.MINUTE:c.setTime(c.getTime()+d*60*1000);break;case q.HOUR:c.setTime(c.getTime()+d*60*60*1000);break;case q.DAY:c.setDate(c.getDate()+d);break;case q.MONTH:b=g.getDate();if(b>28){b=Math.min(b,q.getLastDateOfMonth(q.add(q.getFirstDateOfMonth(g),q.MONTH,d)).getDate())}c.setDate(b);c.setMonth(g.getMonth()+d);break;case q.YEAR:b=g.getDate();if(b>28){b=Math.min(b,q.getLastDateOfMonth(q.add(q.getFirstDateOfMonth(g),q.YEAR,d)).getDate())}c.setDate(b);c.setFullYear(g.getFullYear()+d);break}}if(e){switch(a.toLowerCase()){case q.MILLI:f=1;break;case q.SECOND:f=1000;break;case q.MINUTE:f=1000*60;break;case q.HOUR:f=1000*60*60;break;case q.DAY:f=1000*60*60*24;break;case q.MONTH:b=q.getDaysInMonth(c);f=1000*60*60*24*b;break;case q.YEAR:b=(q.isLeapYear(c)?366:365);f=1000*60*60*24*b;break}if(f){c.setTime(c.getTime()+f*e)}}return c},subtract:function(a,b,c){return q.add(a,b,-c)},between:function(a,c,b){var d=a.getTime();return c.getTime()<=d&&d<=b.getTime()},compat:function(){var d,c=["useStrict","formatCodeToRegex","parseFunctions","parseRegexes","formatFunctions","y2kYear","MILLI","SECOND","MINUTE","HOUR","DAY","MONTH","YEAR","defaults","dayNames","monthNames","monthNumbers","getShortMonthName","getShortDayName","getMonthNumber","formatCodes","isValid","parseDate","getFormatCode","createFormat","createParser","parseCodes"],e=["dateFormat","format","getTimezone","getGMTOffset","getDayOfYear","getWeekOfYear","isLeapYear","getFirstDayOfMonth","getLastDayOfMonth","getDaysInMonth","getSuffix","clone","isDST","clearTime","add","between"],a=c.length,b=e.length,g,f,h;for(h=0;h<a;h++){g=c[h];r[g]=q[g]}for(d=0;d<b;d++){f=e[d];r.prototype[f]=function(){var i=Array.prototype.slice.call(arguments);i.unshift(this);return q[f].apply(q,i)}}},diff:function(a,b,d){var e,c=+b-a;switch(d){case q.MILLI:return c;case q.SECOND:return Math.floor(c/1000);case q.MINUTE:return Math.floor(c/60000);case q.HOUR:return Math.floor(c/3600000);case q.DAY:return Math.floor(c/86400000);case"w":return Math.floor(c/604800000);case q.MONTH:e=(b.getFullYear()*12+b.getMonth())-(a.getFullYear()*12+a.getMonth());if(q.add(a,d,e)>b){return e-1}return e;case q.YEAR:e=b.getFullYear()-a.getFullYear();if(q.add(a,d,e)>b){return e-1}else{return e}}},align:function(a,c,d){var b=new r(+a);switch(c.toLowerCase()){case q.MILLI:return b;case q.SECOND:b.setUTCSeconds(b.getUTCSeconds()-b.getUTCSeconds()%d);b.setUTCMilliseconds(0);return b;case q.MINUTE:b.setUTCMinutes(b.getUTCMinutes()-b.getUTCMinutes()%d);b.setUTCSeconds(0);b.setUTCMilliseconds(0);return b;case q.HOUR:b.setUTCHours(b.getUTCHours()-b.getUTCHours()%d);b.setUTCMinutes(0);b.setUTCSeconds(0);b.setUTCMilliseconds(0);return b;case q.DAY:if(d===7||d===14){b.setUTCDate(b.getUTCDate()-b.getUTCDay()+1)}b.setUTCHours(0);b.setUTCMinutes(0);b.setUTCSeconds(0);b.setUTCMilliseconds(0);return b;case q.MONTH:b.setUTCMonth(b.getUTCMonth()-(b.getUTCMonth()-1)%d,1);b.setUTCHours(0);b.setUTCMinutes(0);b.setUTCSeconds(0);b.setUTCMilliseconds(0);return b;case q.YEAR:b.setUTCFullYear(b.getUTCFullYear()-b.getUTCFullYear()%d,1,1);b.setUTCHours(0);b.setUTCMinutes(0);b.setUTCSeconds(0);b.setUTCMilliseconds(0);return a}}}}());Ext.Function=(function(){var y=0,o,v=[],n=[],s=0,r={},t=window,w=Ext.global,u=!!(w.setImmediate&&w.clearImmediate),p=t.requestAnimationFrame||t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame||t.oRequestAnimationFrame||function(a){var d=Ext.now(),c=Math.max(0,16-(d-y)),b=t.setTimeout(function(){a(d+c)},c);y=d+c;return b},x=function(){var d=v.length,a,c,b;o=null;for(c=0;c<d;c++){b=v[c];a=b[3];if(r[a]){b[0].apply(b[1]||w,b[2]||n);delete r[a]}}v=v.slice(d)},z=function(){Ext.elevateFunction(x)},q={flexSetter:function(a){return function(d,b){var e,c;if(d!==null){if(typeof d!=="string"){for(e in d){if(d.hasOwnProperty(e)){a.call(this,e,d[e])}}if(Ext.enumerables){for(c=Ext.enumerables.length;c--;){e=Ext.enumerables[c];if(d.hasOwnProperty(e)){a.call(this,e,d[e])}}}}else{a.call(this,d,b)}}return this}},bind:function(c,d,e,f){if(arguments.length===2){return function(){return c.apply(d,arguments)}}var a=c,b=Array.prototype.slice;return function(){var g=e||arguments;if(f===true){g=b.call(arguments,0);g=g.concat(e)}else{if(typeof f==="number"){g=b.call(arguments,0);Ext.Array.insert(g,f,e)}}return a.apply(d||w,g)}},bindCallback:function(a,b,c,d,e){return function(){var f=Ext.Array.slice(arguments);return Ext.callback(a,b,c?c.concat(f):f,d,e)}},pass:function(a,c,b){if(!Ext.isArray(c)){if(Ext.isIterable(c)){c=Ext.Array.clone(c)}else{c=c!==undefined?[c]:[]}}return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(b||this,d)}},alias:function(a,b){return function(){return a[b].apply(a,arguments)}},clone:function(a){return function(){return a.apply(this,arguments)}},createInterceptor:function(a,b,c,d){if(!Ext.isFunction(b)){return a}else{d=Ext.isDefined(d)?d:null;return function(){var e=this,f=arguments;return(b.apply(c||e||w,f)!==false)?a.apply(e||w,f):d}}},createDelayed:function(a,c,b,d,e){if(b||d){a=Ext.Function.bind(a,b,d,e)}return function(){var f=this,g=Array.prototype.slice.call(arguments);setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(a,f,g)}else{a.apply(f,g)}},c)}},defer:function(a,c,b,d,e){a=Ext.Function.bind(a,b,d,e);if(c>0){return setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(a)}else{a()}},c)}a();return 0},interval:function(a,c,b,d,e){a=Ext.Function.bind(a,b,d,e);return setInterval(function(){if(Ext.elevateFunction){Ext.elevateFunction(a)}else{a()}},c)},createSequence:function(b,a,c){if(!a){return b}else{return function(){var d=b.apply(this,arguments);a.apply(c||this,arguments);return d}}},createBuffered:function(a,d,b,c){var e;return function(){var f=c||Array.prototype.slice.call(arguments,0),g=b||this;if(e){clearTimeout(e)}e=setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(a,g,f)}else{a.apply(g,f)}},d)}},createAnimationFrame:function(b,c,d,a){var e;a=a||3;return function(){var f=d||Array.prototype.slice.call(arguments,0);c=c||this;if(a===3&&e){q.cancelAnimationFrame(e)}if((a&1)||!e){e=q.requestAnimationFrame(function(){e=null;b.apply(c,f)})}}},requestAnimationFrame:function(b,c,e){var a=++s,d=Array.prototype.slice.call(arguments,0);d[3]=a;r[a]=1;v.push(d);if(!o){o=p(Ext.elevateFunction?z:x)}return a},cancelAnimationFrame:function(a){delete r[a]},createThrottled:function(d,g,e){var c=0,h,f,a,b=function(){if(Ext.elevateFunction){Ext.elevateFunction(d,e,f)}else{d.apply(e,f)}c=Ext.now();a=null};return function(){if(!e){e=this}h=Ext.now()-c;f=arguments;if(h>=g){clearTimeout(a);b()}else{if(!a){a=Ext.defer(b,g-h)}}}},createBarrier:function(a,b,c){return function(){if(!--a){b.apply(c,arguments)}}},interceptBefore:function(d,e,b,c){var a=d[e]||Ext.emptyFn;return(d[e]=function(){var f=b.apply(c||this,arguments);a.apply(this,arguments);return f})},interceptAfter:function(d,e,b,c){var a=d[e]||Ext.emptyFn;return(d[e]=function(){a.apply(this,arguments);return b.apply(c||this,arguments)})},makeCallback:function(a,b){return function(){return b[a].apply(b,arguments)}},memoize:function(b,c,e){var d={},a=e&&Ext.isFunction(e);return function(f){var g=a?e.apply(c,arguments):f;if(!(g in d)){d[g]=b.apply(c,arguments)}return d[g]}}};Ext.asap=u?function(b,c,a){if(c!=null||a!=null){b=q.bind(b,c,a)}return setImmediate(function(){if(Ext.elevateFunction){Ext.elevateFunction(b)}else{b()}})}:function(b,c,a){if(c!=null||a!=null){b=q.bind(b,c,a)}return setTimeout(function(){if(Ext.elevateFunction){Ext.elevateFunction(b)}else{b()}},0,true)},Ext.asapCancel=u?function(a){clearImmediate(a)}:function(a){clearTimeout(a)};Ext.defer=q.defer;Ext.interval=q.interval;Ext.pass=q.pass;Ext.bind=q.bind;Ext.deferCallback=q.requestAnimationFrame;return q})();Ext.Number=(new function(){var g=this,h=(0.9).toFixed()!=="1",e=Math,f={count:false,inclusive:false,wrap:true};Ext.apply(g,{Clip:{DEFAULT:f,COUNT:Ext.applyIf({count:true},f),INCLUSIVE:Ext.applyIf({inclusive:true},f),NOWRAP:Ext.applyIf({wrap:false},f)},clipIndices:function(b,a,n){n=n||f;var o=0,c=n.wrap,d,p,i;a=a||[];for(i=0;i<2;++i){d=p;p=a[i];if(p==null){p=o}else{if(i&&n.count){p+=d;p=(p>b)?b:p}else{if(c){p=(p<0)?(b+p):p}if(i&&n.inclusive){++p}p=(p<0)?0:((p>b)?b:p)}}o=b}a[0]=d;a[1]=(p<d)?d:p;return a},constrain:function(a,b,c){var d=parseFloat(a);if(b===null){b=a}if(c===null){c=a}return(d<b)?b:((d>c)?c:d)},snap:function(b,d,c,a){var j;if(b===undefined||b<c){return c||0}if(d){j=b%d;if(j!==0){b-=j;if(j*2>=d){b+=d}else{if(j*2<-d){b-=d}}}}return g.constrain(b,c,a)},snapInRange:function(b,j,c,a){var d;c=(c||0);if(b===undefined||b<c){return c}if(j&&(d=((b-c)%j))){b-=d;d*=2;if(d>=j){b+=j}}if(a!==undefined){if(b>(a=g.snapInRange(a,j,c))){b=a}}return b},sign:function(a){a=+a;if(a===0||isNaN(a)){return a}return(a>0)?1:-1},toFixed:h?function(a,c){c=c||0;var b=e.pow(10,c);return(e.round(a*b)/b).toFixed(c)}:function(a,b){return a.toFixed(b)},from:function(a,b){if(isFinite(a)){a=parseFloat(a)}return !isNaN(a)?a:b},randomInt:function(a,b){return e.floor(e.random()*(b-a+1)+a)},correctFloat:function(a){return parseFloat(a.toPrecision(14))}});Ext.num=function(){return g.from.apply(this,arguments)}}());(function(){var k=function(){},g=/^\?/,l=/(\[):?([^\]]*)\]/g,h=/^([^\[]+)/,i=/\+/g,j=Ext.Object={chain:Object.create||function(a){k.prototype=a;var b=new k();k.prototype=null;return b},clear:function(b){for(var a in b){delete b[a]}return b},freeze:Object.freeze?function(a,c){if(a&&typeof a==="object"&&!Object.isFrozen(a)){Object.freeze(a);if(c){for(var b in a){j.freeze(a[b],c)}}}return a}:Ext.identityFn,toQueryObjects:function(d,o,e){var f=j.toQueryObjects,a=[],c,b;if(Ext.isArray(o)){for(c=0,b=o.length;c<b;c++){if(e){a=a.concat(f(d+"["+c+"]",o[c],true))}else{a.push({name:d,value:o[c]})}}}else{if(Ext.isObject(o)){for(c in o){if(o.hasOwnProperty(c)){if(e){a=a.concat(f(d+"["+c+"]",o[c],true))}else{a.push({name:d,value:o[c]})}}}}else{a.push({name:d,value:o})}}return a},toQueryString:function(f,s){var e=[],r=[],c,d,b,t,a;for(c in f){if(f.hasOwnProperty(c)){e=e.concat(j.toQueryObjects(c,f[c],s))}}for(d=0,b=e.length;d<b;d++){t=e[d];a=t.value;if(Ext.isEmpty(a)){a=""}else{if(Ext.isDate(a)){a=Ext.Date.toString(a)}}r.push(encodeURIComponent(t.name)+"="+encodeURIComponent(String(a)))}return r.join("&")},fromQueryString:function(K,f){var E=K.replace(g,"").split("&"),c={},e,G,a,D,A,I,C,B,L,H,d,F,b,J;for(A=0,I=E.length;A<I;A++){C=E[A];if(C.length>0){G=C.split("=");a=G[0];a=a.replace(i,"%20");a=decodeURIComponent(a);D=G[1];if(D!==undefined){D=D.replace(i,"%20");D=decodeURIComponent(D)}else{D=""}if(!f){if(c.hasOwnProperty(a)){if(!Ext.isArray(c[a])){c[a]=[c[a]]}c[a].push(D)}else{c[a]=D}}else{H=a.match(l);d=a.match(h);a=d[0];F=[];if(H===null){c[a]=D;continue}for(B=0,L=H.length;B<L;B++){b=H[B];b=(b.length===2)?"":b.substring(1,b.length-1);F.push(b)}F.unshift(a);e=c;for(B=0,L=F.length;B<L;B++){b=F[B];if(B===L-1){if(Ext.isArray(e)&&b===""){e.push(D)}else{e[b]=D}}else{if(e[b]===undefined||typeof e[b]==="string"){J=F[B+1];e[b]=(Ext.isNumeric(J)||J==="")?[]:{}}e=e[b]}}}}}return c},each:function(e,b,c){var f=Ext.enumerables,d,a;if(e){c=c||e;for(a in e){if(e.hasOwnProperty(a)){if(b.call(c,a,e[a],e)===false){return}}}if(f){for(d=f.length;d--;){if(e.hasOwnProperty(a=f[d])){if(b.call(c,a,e[a],e)===false){return}}}}}},eachValue:function(e,b,c){var f=Ext.enumerables,d,a;c=c||e;for(a in e){if(e.hasOwnProperty(a)){if(b.call(c,e[a])===false){return}}}if(f){for(d=f.length;d--;){if(e.hasOwnProperty(a=f[d])){if(b.call(c,e[a])===false){return}}}}},merge:function(c){var e=1,d=arguments.length,s=j.merge,q=Ext.clone,f,a,b,r;for(;e<d;e++){f=arguments[e];for(a in f){b=f[a];if(b&&b.constructor===Object){r=c[a];if(r&&r.constructor===Object){s(r,b)}else{c[a]=q(b)}}else{c[a]=b}}}return c},mergeIf:function(f){var b=1,a=arguments.length,d=Ext.clone,e,c,o;for(;b<a;b++){e=arguments[b];for(c in e){if(!(c in f)){o=e[c];if(o&&o.constructor===Object){f[c]=d(o)}else{f[c]=o}}}}return f},getAllKeys:function(c){var b=[],a;for(a in c){b.push(a)}return b},getKey:function(c,a){for(var b in c){if(c.hasOwnProperty(b)&&c[b]===a){return b}}return null},getValues:function(b){var c=[],a;for(a in b){if(b.hasOwnProperty(a)){c.push(b[a])}}return c},getKeys:(typeof Object.keys=="function")?function(a){if(!a){return[]}return Object.keys(a)}:function(c){var b=[],a;for(a in c){if(c.hasOwnProperty(a)){b.push(a)}}return b},getSize:function(c){var b=0,a;for(a in c){if(c.hasOwnProperty(a)){b++}}return b},isEmpty:function(b){for(var a in b){if(b.hasOwnProperty(a)){return false}}return true},equals:(function(){var a=function(b,c){var d;for(d in b){if(b.hasOwnProperty(d)){if(b[d]!==c[d]){return false}}}return true};return function(b,c){if(b===c){return true}if(b&&c){return a(b,c)&&a(c,b)}else{if(!b&&!c){return b===c}else{return false}}}})(),fork:function(a){var d,c,b;if(a&&a.constructor===Object){d=j.chain(a);for(c in a){b=a[c];if(b){if(b.constructor===Object){d[c]=j.fork(b)}else{if(b instanceof Array){d[c]=Ext.Array.clone(b)}}}}}else{d=a}return d},defineProperty:("defineProperty" in Object)?Object.defineProperty:function(b,c,a){if(!Object.prototype.__defineGetter__){return}if(a.get){b.__defineGetter__(c,a.get)}if(a.set){b.__defineSetter__(c,a.set)}},classify:function(d){var e=d,b=[],f={},n=function(){var r=0,q=b.length,m;for(;r<q;r++){m=b[r];this[m]=new f[m]()}},c,a;for(c in d){if(d.hasOwnProperty(c)){a=d[c];if(a&&a.constructor===Object){b.push(c);f[c]=j.classify(a)}}}n.prototype=e;return n}};Ext.merge=Ext.Object.merge;Ext.mergeIf=Ext.Object.mergeIf}());Ext.apply(Ext,{_namedScopes:{"this":{isThis:1},controller:{isController:1},self:{isSelf:1},"self.controller":{isSelf:1,isController:1}},escapeId:(function(){var j=/^[a-zA-Z_][a-zA-Z0-9_\-]*$/i,i=/([\W]{1})/g,f=/^(\d)/g,g=function(a,b){return"\\"+b},h=function(a,b){return"\\00"+b.charCodeAt(0).toString(16)+" "};return function(a){return j.test(a)?a:a.replace(i,g).replace(f,h)}}()),callback:function(k,m,o,p,i,l){if(!k){return}var n=(m in Ext._namedScopes);if(k.charAt){if((!m||n)&&i){m=i.resolveListenerScope(n?m:l)}k=m[k]}else{if(n){m=l||i}else{if(!m){m=i}}}var j;if(k&&Ext.isFunction(k)){m=m||Ext.global;if(p){Ext.defer(k,p,m,o)}else{if(Ext.elevateFunction){j=Ext.elevateFunction(k,m,o)}else{if(o){j=k.apply(m,o)}else{j=k.call(m)}}}}return j},coerce:function(h,i){var j=Ext.typeOf(h),f=Ext.typeOf(i),g=typeof h==="string";if(j!==f){switch(f){case"string":return String(h);case"number":return Number(h);case"boolean":return g&&(!h||h==="false")?false:Boolean(h);case"null":return g&&(!h||h==="null")?null:h;case"undefined":return g&&(!h||h==="undefined")?undefined:h;case"date":return g&&isNaN(h)?Ext.Date.parse(h,Ext.Date.defaultFormat):Date(Number(h))}}return h},copyTo:function(h,m,k,l){if(typeof k==="string"){k=k.split(Ext.propertyNameSplitRe)}for(var i,n=0,j=k?k.length:0;n<j;n++){i=k[n];if(l||m.hasOwnProperty(i)){h[i]=m[i]}}return h},copy:function(h,m,k,l){if(typeof k==="string"){k=k.split(Ext.propertyNameSplitRe)}for(var i,n=0,j=k?k.length:0;n<j;n++){i=k[n];if(m.hasOwnProperty(i)||(l&&i in m)){h[i]=m[i]}}return h},propertyNameSplitRe:/[,;\s]+/,copyToIf:function(h,k,j){if(typeof j==="string"){j=j.split(Ext.propertyNameSplitRe)}for(var g,l=0,i=j?j.length:0;l<i;l++){g=j[l];if(h[g]===undefined){h[g]=k[g]}}return h},copyIf:function(h,k,j){if(typeof j==="string"){j=j.split(Ext.propertyNameSplitRe)}for(var g,l=0,i=j?j.length:0;l<i;l++){g=j[l];if(!(g in h)&&(g in k)){h[g]=k[g]}}return h},extend:(function(){var d=Object.prototype.constructor,c=function(a){for(var b in a){if(!a.hasOwnProperty(b)){continue}this[b]=a[b]}};return function(l,a,i){if(Ext.isObject(a)){i=a;a=l;l=i.constructor!==d?i.constructor:function(){a.apply(this,arguments)}}var j=function(){},k,b=a.prototype;j.prototype=b;k=l.prototype=new j();k.constructor=l;l.superclass=b;if(b.constructor===d){b.constructor=a}l.override=function(e){Ext.override(l,e)};k.override=c;k.proto=k;l.override(i);l.extend=function(e){return Ext.extend(l,e)};return l}}()),iterate:function(e,f,d){if(Ext.isEmpty(e)){return}if(d===undefined){d=e}if(Ext.isIterable(e)){Ext.Array.each.call(Ext.Array,e,f,d)}else{Ext.Object.each.call(Ext.Object,e,f,d)}},_resourcePoolRe:/^[<]([^<>@:]*)(?:[@]([^<>@:]+))?[>](.+)$/,resolveResource:function(f){var d=f,e;if(f&&f.charAt(0)==="<"){e=Ext._resourcePoolRe.exec(f);if(e){d=Ext.getResourcePath(e[3],e[1],e[2])}}return d},urlEncode:function(){var d=Ext.Array.from(arguments),c="";if(Ext.isString(d[1])){c=d[1]+"&";d[1]=false}return c+Ext.Object.toQueryString.apply(Ext.Object,d)},urlDecode:function(){return Ext.Object.fromQueryString.apply(Ext.Object,arguments)},getScrollbarSize:function(h){var e=Ext._scrollbarSize;if(h||!e){var f=document.body,g=document.createElement("div");g.style.width=g.style.height="100px";g.style.overflow="scroll";g.style.position="absolute";f.appendChild(g);Ext._scrollbarSize=e={width:g.offsetWidth-g.clientWidth,height:g.offsetHeight-g.clientHeight};f.removeChild(g)}return e},typeOf:(function(){var f=/\S/,h=Object.prototype.toString,g={number:1,string:1,"boolean":1,"undefined":1},e={"[object Array]":"array","[object Date]":"date","[object Boolean]":"boolean","[object Number]":"number","[object RegExp]":"regexp"};return function(b){if(b===null){return"null"}var c=typeof b,d,a;if(g[c]){return c}d=e[a=h.call(b)];if(d){return d}if(c==="function"){return"function"}if(c==="object"){if(b.nodeType!==undefined){if(b.nodeType===3){return f.test(b.nodeValue)?"textnode":"whitespace"}else{return"element"}}return"object"}return a}}()),factory:function(g,j,h,i){var k=Ext.ClassManager,l;if(!g||g.isInstance){if(h&&h!==g){h.destroy()}return g}if(i){if(typeof g==="string"){return k.instantiateByAlias(i+"."+g)}else{if(Ext.isObject(g)&&"type" in g){return k.instantiateByAlias(i+"."+g.type,g)}}}if(g===true){return h||Ext.create(j)}if("xtype" in g){l=k.instantiateByAlias("widget."+g.xtype,g)}else{if("xclass" in g){l=Ext.create(g.xclass,g)}}if(l){if(h){h.destroy()}return l}if(h){return h.setConfig(g)}return Ext.create(j,g)},log:(function(){var b=function(){};b.info=b.warn=b.error=Ext.emptyFn;return b}())});(function(){var o=[""],k=/([^\d\.])/,i=/[^\d]/g,j=/[\-+]/g,l=/\s/g,p=/_/g,m={classic:1,modern:1},n;Ext.Version=n=function(a,e){var w=this,g=w.padModes,u,c,f,d,v,h,b;if(a.isVersion){a=a.version}w.version=b=String(a).toLowerCase().replace(p,".").replace(j,"");u=b.charAt(0);if(u in g){b=b.substring(1);f=g[u]}else{f=e?g[e]:0}w.pad=f;h=b.search(k);w.shortVersion=b;if(h!==-1){w.release=v=b.substr(h,a.length);w.shortVersion=b.substr(0,h);v=n.releaseValueMap[v]||v}w.releaseValue=v||f;w.shortVersion=w.shortVersion.replace(i,"");w.parts=d=b.split(".");for(c=d.length;c--;){d[c]=parseInt(d[c],10)}if(f===Infinity){d.push(f)}w.major=d[0]||f;w.minor=d[1]||f;w.patch=d[2]||f;w.build=d[3]||f;return w};n.prototype={isVersion:true,padModes:{"~":NaN,"^":Infinity},release:"",compareTo:function(z){var y=this,e=y.pad,a=y.parts,x=a.length,f=z.isVersion?z:new n(z),h=f.pad,b=f.parts,c=b.length,w=Math.max(x,c),d,g,A;for(d=0;d<w;d++){g=(d<x)?a[d]:e;A=(d<c)?b[d]:h;if(g<A){return -1}if(g>A){return 1}}g=y.releaseValue;A=f.releaseValue;if(g<A){return -1}if(g>A){return 1}return 0},toString:function(){return this.version},valueOf:function(){return this.version},getMajor:function(){return this.major},getMinor:function(){return this.minor},getPatch:function(){return this.patch},getBuild:function(){return this.build},getRelease:function(){return this.release},getReleaseValue:function(){return this.releaseValue},isGreaterThan:function(a){return this.compareTo(a)>0},isGreaterThanOrEqual:function(a){return this.compareTo(a)>=0},isLessThan:function(a){return this.compareTo(a)<0},isLessThanOrEqual:function(a){return this.compareTo(a)<=0},equals:function(a){return this.compareTo(a)===0},match:function(a){a=String(a);return this.version.substr(0,a.length)===a},toArray:function(){var a=this;return[a.getMajor(),a.getMinor(),a.getPatch(),a.getBuild(),a.getRelease()]},getShortVersion:function(){return this.shortVersion},gt:function(a){return this.compareTo(a)>0},lt:function(a){return this.compareTo(a)<0},gtEq:function(a){return this.compareTo(a)>=0},ltEq:function(a){return this.compareTo(a)<=0}};Ext.apply(n,{aliases:{from:{extjs:"ext",core:"core",touch:"modern"},to:{ext:["extjs"],core:["core"],modern:["touch"]}},releaseValueMap:{dev:-6,alpha:-5,a:-5,beta:-4,b:-4,rc:-3,"#":-2,p:-1,pl:-1},getComponentValue:function(a){return !a?0:(isNaN(a)?this.releaseValueMap[a]||a:parseInt(a,10))},compare:function(a,b){var c=a.isVersion?a:new n(a);return c.compareTo(b)},set:function(e,a,b){var c=n.aliases.to[a],d=b.isVersion?b:new n(b),f;e[a]=d;if(c){for(f=c.length;f-->0;){e[c[f]]=d}}return d}});Ext.apply(Ext,{compatVersions:{},versions:{},lastRegisteredVersion:null,getCompatVersion:function(b){var c=Ext.compatVersions,a;if(!b){a=c.ext||c.touch||c.core}else{a=c[n.aliases.from[b]||b]}return a||Ext.getVersion(b)},setCompatVersion:function(a,b){n.set(Ext.compatVersions,a,b)},setVersion:function(a,b){if(a in m){Ext.toolkit=a}Ext.lastRegisteredVersion=n.set(Ext.versions,a,b);return this},getVersion:function(a){var b=Ext.versions;if(!a){return b.ext||b.touch||b.core}return b[n.aliases.from[a]||a]},checkVersion:function(c,D){var H=Ext.isArray(c),g=n.aliases.from,C=H?c:o,h=C.length,f=Ext.versions,E=f.ext||f.touch,b,F,I,e,d,A,B,a,G;if(!H){o[0]=c}for(b=0;b<h;++b){if(!Ext.isString(B=C[b])){I=Ext.checkVersion(B.and||B.or,!B.or);if(B.not){I=!I}}else{if(B.indexOf(" ")>=0){B=B.replace(l,"")}F=B.indexOf("@");if(F<0){a=B;G=E}else{A=B.substring(0,F);if(!(G=f[g[A]||A])){if(D){return false}continue}a=B.substring(F+1)}F=a.indexOf("-");if(F<0){if(a.charAt(F=a.length-1)==="+"){e=a.substring(0,F);d=null}else{e=d=a}}else{if(F>0){e=a.substring(0,F);d=a.substring(F+1)}else{e=null;d=a.substring(F+1)}}I=true;if(e){e=new n(e,"~");I=e.ltEq(G)}if(I&&d){d=new n(d,"~");I=d.gtEq(G)}}if(I){if(!D){return true}}else{if(D){return false}}}return !!D},deprecate:function(d,b,a,c){if(n.compare(Ext.getVersion(d),b)<1){a.call(c)}}})}());(function(i){var h=(i&&i.packages)||{},j=i&&i.compatibility,f,g;for(f in h){g=h[f];Ext.setVersion(f,g.version)}if(j){if(Ext.isString(j)){Ext.setCompatVersion("core",j)}else{for(f in j){Ext.setCompatVersion(f,j[f])}}}if(!h.ext&&!h.touch){Ext.setVersion("ext","6.0.1.250");Ext.setVersion("core","6.0.1.250")}})(Ext.manifest);Ext.Config=function(d){var f=this,e=d.charAt(0).toUpperCase()+d.substr(1);f.name=d;f.names={internal:"_"+d,initializing:"is"+e+"Initializing",apply:"apply"+e,update:"update"+e,get:"get"+e,set:"set"+e,initGet:"initGet"+e,changeEvent:d.toLowerCase()+"change"};f.root=f};Ext.Config.map={};Ext.Config.get=function(d){var f=Ext.Config.map,e=f[d]||(f[d]=new Ext.Config(d));return e};Ext.Config.prototype={self:Ext.Config,isConfig:true,getGetter:function(){return this.getter||(this.root.getter=this.makeGetter())},getInitGetter:function(){return this.initGetter||(this.root.initGetter=this.makeInitGetter())},getSetter:function(){return this.setter||(this.root.setter=this.makeSetter())},getEventedSetter:function(){return this.eventedSetter||(this.root.eventedSetter=this.makeEventedSetter())},getInternalName:function(b){return b.$configPrefixed?this.names.internal:this.name},mergeNew:function(i,g,j,k){var h,l;if(!g){h=i}else{if(!i){h=g}else{h=Ext.Object.chain(g);for(l in i){if(!k||!(l in h)){h[l]=i[l]}}}}return h},mergeSets:function(j,l,h){var g=l?Ext.Object.chain(l):{},k,i;if(j instanceof Array){for(k=j.length;k--;){i=j[k];if(!h||!(i in g)){g[i]=true}}}else{if(j){if(j.constructor===Object){for(k in j){i=j[k];if(!h||!(k in g)){g[k]=i}}}else{if(!h||!(j in g)){g[j]=true}}}}return g},makeGetter:function(){var d=this.name,c=this.names.internal;return function(){var a=this.$configPrefixed?c:d;return this[a]}},makeInitGetter:function(){var g=this.name,h=this.names,i=h.set,f=h.get,j=h.initializing;return function(){var a=this;a[j]=true;delete a[f];a[i](a.config[g]);delete a[j];return a[f].apply(a,arguments)}},makeSetter:function(){var i=this.name,l=this.names,n=l.internal,m=l.get,h=l.apply,j=l.update,k;k=function(a){var b=this,c=b.$configPrefixed?n:i,d=b[c];delete b[m];if(!b[h]||(a=b[h](a,d))!==undefined){if(a!==(d=b[c])){b[c]=a;if(b[j]){b[j](a,d)}}}return b};k.$isDefault=true;return k},makeEventedSetter:function(){var q=this.name,l=this.names,j=l.internal,r=l.get,k=l.apply,o=l.update,m=l.changeEvent,n=function(b,a,d,c){b[c]=a;if(b[o]){b[o](a,d)}},p;p=function(a){var b=this,c=b.$configPrefixed?j:q,d=b[c];delete b[r];if(!b[k]||(a=b[k](a,d))!==undefined){if(a!==(d=b[c])){if(b.isConfiguring){b[c]=a;if(b[o]){b[o](a,d)}}else{b.fireEventedAction(m,[b,a,d],n,b,[b,a,d,c])}}}return b};p.$isDefault=true;return p}};(function(){var d=Ext.Config,f=d.map,e=Ext.Object;Ext.Configurator=function(h){var b=this,c=h.prototype,a=h.superclass?h.superclass.self.$config:null;b.cls=h;b.superCfg=a;if(a){b.configs=e.chain(a.configs);b.cachedConfigs=e.chain(a.cachedConfigs);b.initMap=e.chain(a.initMap);b.values=e.chain(a.values);b.needsFork=a.needsFork}else{b.configs={};b.cachedConfigs={};b.initMap={};b.values={}}c.config=c.defaultConfig=b.values;h.$config=b};Ext.Configurator.prototype={self:Ext.Configurator,needsFork:false,initList:null,add:function(y,N){var s=this,J=s.cls,G=s.configs,c=s.cachedConfigs,E=s.initMap,B=J.prototype,b=N&&N.$config.configs,M=s.values,H,F,z,L,K,I,a,C,D,A;for(a in y){A=y[a];H=A&&A.constructor===Object;F=H&&"$value" in A?A:null;if(F){z=!!F.cached;A=F.$value;H=A&&A.constructor===Object}L=F&&F.merge;K=G[a];if(K){if(N){L=K.merge;if(!L){continue}F=null}else{L=L||K.merge}I=M[a];if(L){A=L.call(K,A,I,J,N)}else{if(H){if(I&&I.constructor===Object){A=e.merge({},I,A)}}}}else{if(b){K=b[a];F=null}else{K=d.get(a)}G[a]=K;if(K.cached||z){c[a]=true}C=K.names;if(!B[D=C.get]){B[D]=K.getter||K.getGetter()}if(!B[D=C.set]){B[D]=(F&&F.evented)?(K.eventedSetter||K.getEventedSetter()):(K.setter||K.getSetter())}}if(F){if(K.owner!==J){G[a]=K=Ext.Object.chain(K);K.owner=J}Ext.apply(K,F);delete K.$value}if(!s.needsFork&&A&&(A.constructor===Object||A instanceof Array)){s.needsFork=true}if(A!==null){E[a]=true}else{if(B.$configPrefixed){B[G[a].names.internal]=null}else{B[G[a].name]=null}if(a in E){E[a]=false}}M[a]=A}},configure:function(c,O){var a=this,P=a.configs,N=a.initMap,L=a.initListMap,C=a.initList,K=a.cls.prototype,U=a.values,I=0,F=!C,T,S,R,H,D,E,Q,M,J,G,b,i,V;U=a.needsFork?e.fork(U):e.chain(U);c.isConfiguring=true;if(F){a.initList=C=[];a.initListMap=L={};c.isFirstInstance=true;for(J in N){H=N[J];S=P[J];b=S.cached;if(H){M=S.names;G=U[J];if(!K[M.set].$isDefault||K[M.apply]||K[M.update]||typeof G==="object"){if(b){(T||(T=[])).push(S)}else{C.push(S);L[J]=true}c[M.get]=S.initGetter||S.getInitGetter()}else{K[S.getInternalName(K)]=G}}else{if(b){K[S.getInternalName(K)]=undefined}}}}Q=T&&T.length;if(Q){for(D=0;D<Q;++D){E=T[D].getInternalName(K);c[E]=null}for(D=0;D<Q;++D){M=(S=T[D]).names;R=M.get;if(c.hasOwnProperty(R)){c[M.set](U[S.name]);delete c[R]}}for(D=0;D<Q;++D){E=T[D].getInternalName(K);K[E]=c[E];delete c[E]}}if(O&&O.platformConfig){O=a.resolvePlatformConfig(c,O)}if(F){if(c.afterCachedConfig&&!c.afterCachedConfig.$nullFn){c.afterCachedConfig(O)}}c.config=U;for(D=0,Q=C.length;D<Q;++D){S=C[D];c[S.names.get]=S.initGetter||S.getInitGetter()}if(c.transformInstanceConfig){O=c.transformInstanceConfig(O)}if(O){for(J in O){G=O[J];S=P[J];if(!S){c[J]=G}else{if(!S.lazy){++I}if(!L[J]){c[S.names.get]=S.initGetter||S.getInitGetter()}if(S.merge){G=S.merge(G,U[J],c)}else{if(G&&G.constructor===Object){i=U[J];if(i&&i.constructor===Object){G=e.merge(U[J],G)}else{G=Ext.clone(G)}}}}U[J]=G}}if(c.beforeInitConfig&&!c.beforeInitConfig.$nullFn){if(c.beforeInitConfig(O)===false){return}}if(O){for(J in O){if(!I){break}S=P[J];if(S&&!S.lazy){--I;M=S.names;R=M.get;if(c.hasOwnProperty(R)){c[M.set](U[J]);delete c[M.get]}}}}for(D=0,Q=C.length;D<Q;++D){S=C[D];M=S.names;R=M.get;if(!S.lazy&&c.hasOwnProperty(R)){c[M.set](U[S.name]);delete c[R]}}delete c.isConfiguring},getCurrentConfig:function(c){var h=c.defaultConfig,a={},b;for(b in h){a[b]=c[f[b].names.get]()}return a},merge:function(p,c,m){var a=this.configs,n,b,l,o;for(n in m){b=m[n];o=a[n];if(o){if(o.merge){b=o.merge(b,c[n],p)}else{if(b&&b.constructor===Object){l=c[n];if(l&&l.constructor===Object){b=Ext.Object.merge(l,b)}else{b=Ext.clone(b)}}}}c[n]=b}return c},reconfigure:function(a,u,D){var y=a.config,x=[],b=a.$configStrict&&!(D&&D.strict===false),t=this.configs,A=D&&D.defaults,v,c,z,w,B,i,C;for(B in u){if(A&&a.hasOwnProperty(B)){continue}y[B]=u[B];v=t[B];if(v){a[v.names.get]=v.initGetter||v.getInitGetter()}else{C=a.self.prototype[B];if(b){if((typeof C==="function")&&!C.$nullFn){continue}}}x.push(B)}for(z=0,w=x.length;z<w;z++){B=x[z];v=t[B];if(v){i=v.names;c=i.get;if(a.hasOwnProperty(c)){a[i.set](u[B]);delete a[c]}}else{v=f[B]||Ext.Config.get(B);i=v.names;if(a[i.set]){a[i.set](u[B])}else{a[B]=u[B]}}}},resolvePlatformConfig:function(n,a){var c=a&&a.platformConfig,m=a,l,i,b;if(c){i=Ext.getPlatformConfigKeys(c);b=i.length;if(b){m=Ext.merge({},m);for(l=0,b=i.length;l<b;++l){this.merge(n,m,c[i[l]])}}}return m}}}());Ext.Base=(function(v){var w=[],p,n=[],m=function(d,e){var b=this,f,a,c;if(d){a=Ext.Config.map[d];c=a.names.get;if(e&&b.hasOwnProperty(c)){f=b.config[d]}else{f=b[c]()}}else{f=b.getCurrentConfig()}return f},s=function(a){return function(){return this[a].apply(this,arguments)}},x=Ext.Version,q=/^\d/,o={},t={},r=function(){},u=r.prototype;Ext.apply(r,{$className:"Ext.Base",$isClass:true,create:function(){return Ext.create.apply(Ext,[this].concat(Array.prototype.slice.call(arguments,0)))},addDeprecations:function(h){var l=this,I=[],G=Ext.getCompatVersion(h.name),F,d,k,c,j,f,a,g,b,i,e,J,E,H;for(d in h){if(q.test(d)){H=new Ext.Version(d);H.deprecations=h[d];I.push(H)}}I.sort(x.compare);for(k=I.length;k--;){F=(H=I[k]).deprecations;j=l.prototype;E=F.statics;f=G&&G.lt(H);if(!f){break}while(F){b=F.methods;if(b){for(i in b){J=b[i];g=null;if(!J){}else{if(Ext.isString(J)){if(f){g=s(J)}}else{c="";if(J.message||J.fn){J=J.fn}a=j.hasOwnProperty(i)&&j[i];if(f&&J){J.$owner=l;J.$name=i;if(a){J.$previous=a}g=J}}}if(g){j[i]=g}}}F=E;E=null;j=l}}},extend:function(e){var c=this,a=e.prototype,g,f,d,h,b;g=c.prototype=Ext.Object.chain(a);g.self=c;c.superclass=g.superclass=a;if(!e.$isClass){for(f in u){if(f in g){g[f]=u[f]}}}b=a.$inheritableStatics;if(b){for(f=0,d=b.length;f<d;f++){h=b[f];if(!c.hasOwnProperty(h)){c[h]=e[h]}}}if(e.$onExtended){c.$onExtended=e.$onExtended.slice()}c.getConfigurator()},$onExtended:[],triggerExtended:function(){var c=this.$onExtended,d=c.length,a,b;if(d>0){for(a=0;a<d;a++){b=c[a];b.fn.apply(b.scope||this,arguments)}}},onExtended:function(b,a){this.$onExtended.push({fn:b,scope:a});return this},addStatics:function(a){this.addMembers(a,true);return this},addInheritableStatics:function(f){var c,a,d=this.prototype,e,b;c=d.$inheritableStatics;a=d.$hasInheritableStatics;if(!c){c=d.$inheritableStatics=[];a=d.$hasInheritableStatics={}}for(e in f){if(f.hasOwnProperty(e)){b=f[e];this[e]=b;if(!a[e]){a[e]=true;c.push(e)}}}return this},addMembers:function(b,d,g){var i=this,D=Ext.Function.clone,k=d?i:i.prototype,a=!d&&k.defaultConfig,f=Ext.enumerables,C=b.privates,l,E,j,F,h,e,c;if(C){delete b.privates;if(!d){c=C.statics;delete C.statics}i.addMembers(C,d,e);if(c){i.addMembers(c,true,e)}}for(h in b){if(b.hasOwnProperty(h)){F=b[h];if(typeof F==="function"&&!F.$isClass&&!F.$nullFn){if(F.$owner){F=D(F)}if(k.hasOwnProperty(h)){F.$previous=k[h]}F.$owner=i;F.$name=h}else{if(a&&(h in a)&&!k.config.hasOwnProperty(h)){(l||(l={}))[h]=F;continue}}k[h]=F}}if(l){i.addConfig(l)}if(f){for(E=0,j=f.length;E<j;++E){if(b.hasOwnProperty(h=f[E])){F=b[h];if(F&&!F.$nullFn){if(F.$owner){F=D(F)}F.$owner=i;F.$name=h;if(k.hasOwnProperty(h)){F.$previous=k[h]}}k[h]=F}}}return this},addMember:function(a,b){o[a]=b;this.addMembers(o);delete o[a];return this},borrow:function(b,a){var f=b.prototype,d={},e,c,g;a=Ext.Array.from(a);for(e=0,c=a.length;e<c;e++){g=a[e];d[g]=f[g]}return this.addMembers(d)},override:function(g){var e=this,b=g.statics,c=g.inheritableStatics,f=g.config,a=g.mixins,d=g.cachedConfig;if(b||c||f){g=Ext.apply({},g)}if(b){e.addMembers(b,true);delete g.statics}if(c){e.addInheritableStatics(c);delete g.inheritableStatics}if(f){e.addConfig(f);delete g.config}if(d){e.addCachedConfig(d);delete g.cachedConfig}delete g.mixins;e.addMembers(g);if(a){e.mixin(a)}return e},callParent:function(a){var b;return(b=this.callParent.caller)&&(b.$previous||((b=b.$owner?b:b.caller)&&b.$owner.superclass.self[b.$name])).apply(this,a||w)},callSuper:function(a){var b;return(b=this.callSuper.caller)&&((b=b.$owner?b:b.caller)&&b.$owner.superclass.self[b.$name]).apply(this,a||w)},mixin:function(f,e){var z=this,g,k,h,l,d,a,i,j,b;if(typeof f!=="string"){b=f;if(b instanceof Array){for(d=0,a=b.length;d<a;d++){g=b[d];z.mixin(g.prototype.mixinId||g.$className,g)}}else{for(var c in b){z.mixin(c,b[c])}}return}g=e.prototype;k=z.prototype;if(g.onClassMixedIn){g.onClassMixedIn.call(e,z)}if(!k.hasOwnProperty("mixins")){if("mixins" in k){k.mixins=Ext.Object.chain(k.mixins)}else{k.mixins={}}}for(h in g){j=g[h];if(h==="mixins"){Ext.applyIf(k.mixins,j)}else{if(!(h==="mixinId"||h==="config")&&(k[h]===undefined)){k[h]=j}}}l=g.$inheritableStatics;if(l){for(d=0,a=l.length;d<a;d++){i=l[d];if(!z.hasOwnProperty(i)){z[i]=e[i]}}}if("config" in g){z.addConfig(g.config,e)}k.mixins[f]=g;if(g.afterClassMixedIn){g.afterClassMixedIn.call(e,z)}return z},addConfig:function(c,b){var a=this.$config||this.getConfigurator();a.add(c,b)},addCachedConfig:function(a,c){var b={},d;for(d in a){b[d]={cached:true,$value:a[d]}}this.addConfig(b,c)},getConfigurator:function(){return this.$config||new Ext.Configurator(this)},getName:function(){return Ext.getClassName(this)},createAlias:v(function(b,a){t[b]=function(){return this[a].apply(this,arguments)};this.override(t);delete t[b]})});for(p in r){if(r.hasOwnProperty(p)){n.push(p)}}r.$staticMembers=n;r.getConfigurator();r.addMembers({$className:"Ext.Base",isInstance:true,$configPrefixed:true,$configStrict:true,isConfiguring:false,isFirstInstance:false,destroyed:false,statics:function(){var b=this.statics.caller,a=this.self;if(!b){return a}return b.$owner},callParent:function(c){var b,a=(b=this.callParent.caller)&&(b.$previous||((b=b.$owner?b:b.caller)&&b.$owner.superclass[b.$name]));return a.apply(this,c||w)},callSuper:function(c){var b,a=(b=this.callSuper.caller)&&((b=b.$owner?b:b.caller)&&b.$owner.superclass[b.$name]);return a.apply(this,c||w)},self:r,constructor:function(){return this},getConfigurator:function(){return this.$config||this.self.getConfigurator()},initConfig:function(b){var c=this,a=c.getConfigurator();c.initConfig=Ext.emptyFn;c.initialConfig=b||{};a.configure(c,b);return c},beforeInitConfig:Ext.emptyFn,getConfig:m,setConfig:function(d,b,e){var c=this,a;if(d){if(typeof d==="string"){a={};a[d]=b}else{a=d}c.getConfigurator().reconfigure(c,a,e)}return c},getCurrentConfig:function(){var a=this.getConfigurator();return a.getCurrentConfig(this)},hasConfig:function(a){return a in this.defaultConfig},getInitialConfig:function(b){var a=this.config;if(!b){return a}return a[b]},$links:null,link:function(d,b){var c=this,a=c.$links||(c.$links={});a[d]=true;c[d]=b;return b},unlink:function(b){var d=this,a,e,f,c;for(a=0,e=b.length;a<e;a++){f=b[a];c=d[f];if(c){if(c.isInstance&&!c.destroyed){c.destroy()}else{if(c.parentNode&&"nodeType" in c){c.parentNode.removeChild(c)}}}d[f]=null}return d},destroy:function(){var b=this,a=b.$links;b.initialConfig=b.config=null;b.destroy=Ext.emptyFn;b.isDestroyed=b.destroyed=true;if(a){b.$links=null;b.unlink(Ext.Object.getKeys(a))}}});u.callOverridden=u.callParent;return r}(Ext.Function.flexSetter));(function(c,d){(Ext.util||(Ext.util={})).Cache=c=function(f){var a=this,b;if(f){Ext.apply(a,f)}a.head=b={key:null,value:null};a.map={};b.next=b.prev=b};c.prototype=d={maxSize:100,count:0,clear:function(){var a=this,f=a.head,b=f.next;f.next=f.prev=f;if(!a.evict.$nullFn){for(;b!==f;b=b.next){a.evict(b.key,b.value)}}a.count=0},each:function(b,g){g=g||this;for(var h=this.head,a=h.next;a!==h;a=a.next){if(b.call(g,a.key,a.value)){break}}},get:function(i){var b=this,j=b.head,a=b.map,h=a[i];if(h){if(h.prev!==j){b.unlinkEntry(h);b.linkEntry(h)}}else{a[i]=h={key:i,value:b.miss.apply(b,arguments)};b.linkEntry(h);++b.count;while(b.count>b.maxSize){b.unlinkEntry(j.prev,true);--b.count}}return h.value},evict:Ext.emptyFn,linkEntry:function(b){var f=this.head,a=f.next;b.next=a;b.prev=f;f.next=b;a.prev=b},unlinkEntry:function(b,a){var h=b.next,g=b.prev;g.next=h;h.prev=g;if(a){this.evict(b.key,b.value)}}};d.destroy=d.clear}());(function(){var i,j=Ext.Base,h=j.$staticMembers,f=function(a,b){return(a.length-b.length)||((a<b)?-1:((a>b)?1:0))};function g(a){function b(){return this.constructor.apply(this,arguments)||null}return b}Ext.Class=i=function(b,a,c){if(typeof b!="function"){c=a;a=b;b=null}if(!a){a={}}b=i.create(b,a);i.process(b,a,c);return b};Ext.apply(i,{makeCtor:g,onBeforeCreated:function(b,a,c){b.addMembers(a);c.onCreated.call(b,b)},create:function(d,a){var b=h.length,c;if(!d){d=g()}while(b--){c=h[b];d[c]=j[c]}return d},process:function(A,e,y){var z=e.preprocessors||i.defaultPreprocessors,b=this.preprocessors,C={onBeforeCreated:this.onBeforeCreated},D=[],B,v,w,a,x,c,d;delete e.preprocessors;A._classHooks=C;for(w=0,a=z.length;w<a;w++){B=z[w];if(typeof B=="string"){B=b[B];v=B.properties;if(v===true){D.push(B.fn)}else{if(v){for(x=0,c=v.length;x<c;x++){d=v[x];if(e.hasOwnProperty(d)){D.push(B.fn);break}}}}}else{D.push(B)}}C.onCreated=y?y:Ext.emptyFn;C.preprocessors=D;this.doProcess(A,e,C)},doProcess:function(m,b,n){var c=this,a=n.preprocessors,e=a.shift(),d=c.doProcess;for(;e;e=a.shift()){if(e.call(c,m,b,n,d)===false){return}}n.onBeforeCreated.apply(c,arguments)},preprocessors:{},registerPreprocessor:function(d,a,c,e,b){if(!e){e="last"}if(!c){c=[d]}this.preprocessors[d]={name:d,properties:c||false,fn:a};this.setDefaultPreprocessorPosition(d,e,b);return this},getPreprocessor:function(a){return this.preprocessors[a]},getPreprocessors:function(){return this.preprocessors},defaultPreprocessors:[],getDefaultPreprocessors:function(){return this.defaultPreprocessors},setDefaultPreprocessors:function(a){this.defaultPreprocessors=Ext.Array.from(a);return this},setDefaultPreprocessorPosition:function(c,a,b){var e=this.defaultPreprocessors,d;if(typeof a=="string"){if(a==="first"){e.unshift(c);return this}else{if(a==="last"){e.push(c);return this}}a=(a==="after")?1:-1}d=Ext.Array.indexOf(e,b);if(d!==-1){Ext.Array.splice(e,Math.max(0,d+a),0,c)}return this}});i.registerPreprocessor("extend",function(r,p,a){var e=Ext.Base,d=e.prototype,c=p.extend,s,b,q;delete p.extend;if(c&&c!==Object){s=c}else{s=e}b=s.prototype;if(!s.$isClass){for(q in d){if(!b[q]){b[q]=d[q]}}}r.extend(s);r.triggerExtended.apply(r,arguments);if(p.onClassExtended){r.onExtended(p.onClassExtended,r);delete p.onClassExtended}},true);i.registerPreprocessor("privates",function(e,b){var c=b.privates,a=c.statics,d=c.privacy||true;delete b.privates;delete c.statics;e.addMembers(c,false,d);if(a){e.addMembers(a,true,d)}});i.registerPreprocessor("statics",function(b,a){b.addStatics(a.statics);delete a.statics});i.registerPreprocessor("inheritableStatics",function(b,a){b.addInheritableStatics(a.inheritableStatics);delete a.inheritableStatics});Ext.createRuleFn=function(a){return new Function("$c","with($c) { return ("+a+"); }")};Ext.expressionCache=new Ext.util.Cache({miss:Ext.createRuleFn});Ext.ruleKeySortFn=f;Ext.getPlatformConfigKeys=function(b){var c=[],d,a;for(d in b){a=Ext.expressionCache.get(d);if(a(Ext.platformTags)){c.push(d)}}c.sort(f);return c};i.registerPreprocessor("platformConfig",function(z,v,D){var e=v.platformConfig,y=v.config,a,d,c,x,A,C,B,E,w,b;delete v.platformConfig;x=z.getConfigurator();d=x.configs;C=Ext.getPlatformConfigKeys(e);for(w=0,b=C.length;w<b;++w){c=e[C[w]];A=a=null;for(B in c){E=c[B];if(y&&B in y){(a||(a={}))[B]=E;(A||(A={}))[B]=y[B];delete y[B]}else{if(B in d){(a||(a={}))[B]=E}else{v[B]=E}}}if(A){x.add(A)}if(a){x.add(a)}}});i.registerPreprocessor("config",function(b,a){if(a.hasOwnProperty("$configPrefixed")){b.prototype.$configPrefixed=a.$configPrefixed}b.addConfig(a.config);delete a.config});i.registerPreprocessor("cachedConfig",function(b,a){if(a.hasOwnProperty("$configPrefixed")){b.prototype.$configPrefixed=a.$configPrefixed}b.addCachedConfig(a.cachedConfig);delete a.cachedConfig});i.registerPreprocessor("mixins",function(b,a,e){var c=a.mixins,d=e.onCreated;delete a.mixins;e.onCreated=function(){e.onCreated=d;b.mixin(c);return e.onCreated.apply(this,arguments)}});Ext.extend=function(b,a,c){if(arguments.length===2&&Ext.isObject(a)){c=a;a=b;b=null}var d;if(!a){throw new Error("[Ext.extend] Attempting to extend from a class which has not been loaded on the page.")}c.extend=a;c.preprocessors=["extend","statics","inheritableStatics","mixins","platformConfig","config"];if(b){d=new i(b,c);d.prototype.constructor=b}else{d=new i(c)}d.prototype.override=function(e){for(var l in e){if(e.hasOwnProperty(l)){this[l]=e[l]}}};return d}}());Ext.Inventory=function(){var b=this;b.names=[];b.paths={};b.alternateToName={};b.aliasToName={};b.nameToAliases={};b.nameToAlternates={}};Ext.Inventory.prototype={_array1:[0],prefixes:null,dotRe:/\./g,wildcardRe:/\*/g,addAlias:function(d,e,f){return this.addMapping(d,e,this.aliasToName,this.nameToAliases,f)},addAlternate:function(d,c){return this.addMapping(d,c,this.alternateToName,this.nameToAlternates)},addMapping:function(s,y,x,i,w){var B=s.$className||s,u=B,t=this._array1,q,z,a,v,A,r;if(Ext.isString(B)){u={};u[B]=y}for(a in u){z=u[a];if(Ext.isString(z)){t[0]=z;z=t}A=z.length;r=i[a]||(i[a]=[]);for(v=0;v<A;++v){if(!(q=z[v])){continue}if(x[q]!==a){x[q]=a;r.push(q)}}}},getAliasesByName:function(b){return this.nameToAliases[b]||null},getAlternatesByName:function(b){return this.nameToAlternates[b]||null},getNameByAlias:function(b){return this.aliasToName[b]||""},getNameByAlternate:function(b){return this.alternateToName[b]||""},getNamesByExpression:function(D,N,G){var n=this,y=n.aliasToName,B=n.alternateToName,M=n.nameToAliases,K=n.nameToAlternates,w=G?N:{},E=[],x=Ext.isString(D)?[D]:D,H=x.length,J=n.wildcardRe,L,A,z,F,C,i,I;for(A=0;A<H;++A){if((L=x[A]).indexOf("*")<0){if(!(i=y[L])){if(!(i=B[L])){i=L}}if(!(i in w)&&!(N&&(i in N))){w[i]=1;E.push(i)}}else{I=new RegExp("^"+L.replace(J,"(.*?)")+"$");for(i in M){if(!(i in w)&&!(N&&(i in N))){if(!(F=I.test(i))){C=(z=M[i]).length;while(!F&&C-->0){F=I.test(z[C])}z=K[i];if(z&&!F){C=z.length;while(!F&&C-->0){F=I.test(z[C])}}}if(F){w[i]=1;E.push(i)}}}}}return E},getPath:function(f){var j=this,h=j.paths,g="",i;if(f in h){g=h[f]}else{i=j.getPrefix(f);if(i){f=f.substring(i.length+1);g=h[i];if(g){g+="/"}}g+=f.replace(j.dotRe,"/")+".js"}return g},getPrefix:function(f){if(f in this.paths){return f}var h=this.getPrefixes(),g=h.length,j,i;while(g-->0){j=(i=h[g]).length;if(j<f.length&&f.charAt(j)==="."&&i===f.substring(0,j)){return i}}return""},getPrefixes:function(){var d=this,c=d.prefixes;if(!c){d.prefixes=c=d.names.slice(0);c.sort(d._compareNames)}return c},removeName:function(t){var p=this,m=p.aliasToName,a=p.alternateToName,i=p.nameToAliases,q=p.nameToAlternates,s=i[t],o=q[t],r,n;delete i[t];delete q[t];if(s){for(r=s.length;r--;){if(t===(n=s[r])){delete m[n]}}}if(o){for(r=o.length;r--;){if(t===(n=o[r])){delete a[n]}}}},resolveName:function(e){var d=this,f;if(!(e in d.nameToAliases)){if(!(f=d.aliasToName[e])){f=d.alternateToName[e]}}return f||e},select:function(j,l){var k=this,i={},g={excludes:i,exclude:function(){k.getNamesByExpression(arguments,i,true);return this}},h;for(h in j){g[h]=k.selectMethod(i,j[h],l||j)}return g},selectMethod:function(g,e,f){var h=this;return function(b){var a=Ext.Array.slice(arguments,1);a.unshift(h.getNamesByExpression(b,g));return e.apply(f,a)}},setPath:Ext.Function.flexSetter(function(e,f){var d=this;d.paths[e]=f;d.names.push(e);d.prefixes=null;return d}),_compareNames:function(e,f){var d=e.length-f.length;if(!d){d=(e<f)?-1:1}return d}};Ext.ClassManager=(function(w,B,u,H,y){var K=Ext.Class.makeCtor,F=[],E={Ext:{name:"Ext",value:Ext}},J=Ext.apply(new Ext.Inventory(),{classes:{},classState:{},existCache:{},instantiators:[],isCreated:function(a){if(J.classes[a]||J.existCache[a]){return true}if(!J.lookupName(a,false)){return false}J.triggerCreated(a);return true},createdListeners:[],nameCreatedListeners:{},existsListeners:[],nameExistsListeners:{},overrideMap:{},triggerCreated:function(b,a){J.existCache[b]=a||1;J.classState[b]+=40;J.notify(b,J.createdListeners,J.nameCreatedListeners)},onCreated:function(a,b,c){J.addListener(a,b,c,J.createdListeners,J.nameCreatedListeners)},notify:function(c,a,i){var h=J.getAlternatesByName(c),b=[c],f,d,g,e,j,k;for(f=0,d=a.length;f<d;f++){j=a[f];j.fn.call(j.scope,c)}while(b){for(f=0,d=b.length;f<d;f++){k=b[f];a=i[k];if(a){for(g=0,e=a.length;g<e;g++){j=a[g];j.fn.call(j.scope,k)}delete i[k]}}b=h;h=null}},addListener:function(g,a,b,c,d){if(Ext.isArray(b)){g=Ext.Function.createBarrier(b.length,g,a);for(e=0;e<b.length;e++){this.addListener(g,null,b[e],c,d)}return}var e,f={fn:g,scope:a};if(b){if(this.isCreated(b)){g.call(a,b);return}if(!d[b]){d[b]=[]}d[b].push(f)}else{c.push(f)}},$namespaceCache:E,addRootNamespaces:function(a){for(var b in a){E[b]={name:b,value:a[b]}}},clearNamespaceCache:function(){F.length=0;for(var a in E){if(!E[a].value){delete E[a]}}},getNamespaceEntry:function(b){if(typeof b!=="string"){return b}var a=E[b],c;if(!a){c=b.lastIndexOf(".");if(c<0){a={name:b}}else{a={name:b.substring(c+1),parent:J.getNamespaceEntry(b.substring(0,c))}}E[b]=a}return a},lookupName:function(b,g){var a=J.getNamespaceEntry(b),c=Ext.global,e=0,f,d;for(f=a;f;f=f.parent){F[e++]=f}while(c&&e-->0){f=F[e];d=c;c=f.value||c[f.name];if(!c&&g){d[f.name]=c={}}}return c},setNamespace:function(c,a){var b=J.getNamespaceEntry(c),d=Ext.global;if(b.parent){d=J.lookupName(b.parent,true)}d[b.name]=a;return a},setXType:function(f,b){var d=f.$className,g=d?f:J.get(d=f),c=g.prototype,a=c.xtypes,e=c.xtypesChain,h=c.xtypesMap;if(!c.hasOwnProperty("xtypes")){c.xtypes=a=[];c.xtypesChain=e=e?e.slice(0):[];c.xtypesMap=h=Ext.apply({},h)}J.addAlias(d,"widget."+b,true);a.push(b);e.push(b);h[b]=true},set:function(c,a){var b=J.getName(a);J.classes[c]=J.setNamespace(c,a);if(b&&b!==c){J.addAlternate(b,c)}return J},get:function(a){return J.classes[a]||J.lookupName(a,false)},addNameAliasMappings:function(a){J.addAlias(a)},addNameAlternateMappings:function(a){J.addAlternate(a)},getByAlias:function(a){return J.get(J.getNameByAlias(a))},getByConfig:function(c,b){var a=c.xclass,d;if(a){d=a}else{d=c.xtype;if(d){b="widget."}else{d=c.type}d=J.getNameByAlias(b+d)}return J.get(d)},getName:function(a){return a&&a.$className||""},getClass:function(a){return a&&a.self||null},create:function(c,a,d){var b=K(c);if(typeof a==="function"){a=a(b)}a.$className=c;return new w(b,a,function(){var k=a.postprocessors||J.defaultPostprocessors,n=J.postprocessors,m=[],e,i,f,j,g,h,l;delete a.postprocessors;for(i=0,f=k.length;i<f;i++){e=k[i];if(typeof e==="string"){e=n[e];h=e.properties;if(h===true){m.push(e.fn)}else{if(h){for(j=0,g=h.length;j<g;j++){l=h[j];if(a.hasOwnProperty(l)){m.push(e.fn);break}}}}}else{m.push(e)}}a.postprocessors=m;a.createdFn=d;J.processCreate(c,this,a)})},processCreate:function(b,d,f){var a=this,e=f.postprocessors.shift(),c=f.createdFn;if(!e){if(b){a.set(b,d)}delete d._classHooks;if(c){c.call(d,d)}if(b){a.triggerCreated(b)}return}if(e.call(a,b,d,f,a.processCreate)!==false){a.processCreate(b,d,f)}},createOverride:function(e,g,i){var c=this,b=g.override,l=g.requires,h=g.uses,f=g.mixins,k,a=1,d,j=function(){var q,m,n,o,p;if(!d){m=l?l.slice(0):[];if(f){if(!(k=f instanceof Array)){for(o in f){if(Ext.isString(q=f[o])){m.push(q)}}}else{for(n=0,p=f.length;n<p;++n){if(Ext.isString(q=f[n])){m.push(q)}}}}d=true;if(m.length){Ext.require(m,j);return}}if(k){for(n=0,p=f.length;n<p;++n){if(Ext.isString(q=f[n])){f[n]=Ext.ClassManager.get(q)}}}else{if(f){for(o in f){if(Ext.isString(q=f[o])){f[o]=Ext.ClassManager.get(q)}}}}q=c.get(b);delete g.override;delete g.compatibility;delete g.requires;delete g.uses;Ext.override(q,g);Ext.Loader.history.push(e);if(h){Ext.Loader.addUsedClasses(h)}if(i){i.call(q,q)}};J.overrideMap[e]=true;if("compatibility" in g&&Ext.isString(a=g.compatibility)){a=Ext.checkVersion(a)}if(a){c.onCreated(j,c,b)}c.triggerCreated(e,2);return c},instantiateByAlias:function(){var b=arguments[0],c=u.call(arguments),a=this.getNameByAlias(b);c[0]=a;return Ext.create.apply(Ext,c)},instantiate:function(){return Ext.create.apply(Ext,arguments)},dynInstantiate:function(a,b){b=H(b,true);b.unshift(a);return Ext.create.apply(Ext,b)},getInstantiator:function(b){var c=this.instantiators,a,d,e;a=c[b];if(!a){d=b;e=[];for(d=0;d<b;d++){e.push("a["+d+"]")}a=c[b]=new Function("c","a","return new c("+e.join(",")+")")}return a},postprocessors:{},defaultPostprocessors:[],registerPostprocessor:function(d,a,c,e,b){if(!e){e="last"}if(!c){c=[d]}this.postprocessors[d]={name:d,properties:c||false,fn:a};this.setDefaultPostprocessorPosition(d,e,b);return this},setDefaultPostprocessors:function(a){this.defaultPostprocessors=H(a);return this},setDefaultPostprocessorPosition:function(d,a,b){var c=this.defaultPostprocessors,e;if(typeof a==="string"){if(a==="first"){c.unshift(d);return this}else{if(a==="last"){c.push(d);return this}}a=(a==="after")?1:-1}e=Ext.Array.indexOf(c,b);if(e!==-1){Ext.Array.splice(c,Math.max(0,e+a),0,d)}return this}});J.registerPostprocessor("alias",function(c,d,f){var e=Ext.Array.from(f.alias),b,a;for(b=0,a=e.length;b<a;b++){B=e[b];this.addAlias(d,B)}},["xtype","alias"]);J.registerPostprocessor("singleton",function(c,d,a,b){if(a.singleton){b.call(this,c,new d(),a)}else{return true}return false});J.registerPostprocessor("alternateClassName",function(d,e,g){var b=g.alternateClassName,c,a,f;if(!(b instanceof Array)){b=[b]}for(c=0,a=b.length;c<a;c++){f=b[c];this.set(f,e)}});J.registerPostprocessor("debugHooks",function(c,d,b){var a=d.isInstance?d.self:d;delete a.prototype.debugHooks});J.registerPostprocessor("deprecated",function(c,d,b){var a=d.isInstance?d.self:d;a.addDeprecations(b.deprecated);delete a.prototype.deprecated});Ext.apply(Ext,{create:function(){var b=arguments[0],a=typeof b,c=u.call(arguments,1),d;if(a==="function"){d=b}else{if(a!=="string"&&c.length===0){c=[b];if(!(b=b.xclass)){b=c[0].xtype;if(b){b="widget."+b}}}b=J.resolveName(b);d=J.get(b)}if(!d){Ext.syncRequire(b);d=J.get(b)}return J.getInstantiator(c.length)(d,c)},widget:function(c,d){var f=c,b,a,e;if(typeof f!=="string"){d=c;f=d.xtype;a=d.xclass}else{d=d||{}}if(d.isComponent){return d}if(!a){b="widget."+f;a=J.getNameByAlias(b)}if(a){e=J.get(a)}if(!e){return Ext.create(a||b,d)}return new e(d)},createByAlias:B(J,"instantiateByAlias"),define:function(b,a,c){if(a.override){J.classState[b]=20;return J.createOverride.apply(J,arguments)}J.classState[b]=10;return J.create.apply(J,arguments)},undefine:function(c){var e=J.classes;delete e[c];delete J.existCache[c];delete J.classState[c];J.removeName(c);var b=J.getNamespaceEntry(c),d=b.parent?J.lookupName(b.parent,false):Ext.global;if(d){try{delete d[b.name]}catch(a){d[b.name]=undefined}}},getClassName:B(J,"getName"),getDisplayName:function(a){if(a){if(a.displayName){return a.displayName}if(a.$name&&a.$class){return Ext.getClassName(a.$class)+"#"+a.$name}if(a.$className){return a.$className}}return"Anonymous"},getClass:B(J,"getClass"),namespace:function(){var b=y,a;for(a=arguments.length;a-->0;){b=J.lookupName(arguments[a],true)}return b}});Ext.addRootNamespaces=J.addRootNamespaces;Ext.createWidget=Ext.widget;Ext.ns=Ext.namespace;w.registerPreprocessor("className",function(b,a){if("$className" in a){b.$className=a.$className}},true,"first");w.registerPreprocessor("alias",function(m,f){var b=m.prototype,i=H(f.xtype),l=H(f.alias),k="widget.",a=k.length,e=Array.prototype.slice.call(b.xtypesChain||[]),h=Ext.merge({},b.xtypesMap||{}),g,c,d,j;for(g=0,c=l.length;g<c;g++){d=l[g];if(d.substring(0,a)===k){j=d.substring(a);Ext.Array.include(i,j)}}m.xtype=f.xtype=i[0];f.xtypes=i;for(g=0,c=i.length;g<c;g++){j=i[g];if(!h[j]){h[j]=true;e.push(j)}}f.xtypesChain=e;f.xtypesMap=h;Ext.Function.interceptAfter(f,"onClassCreated",function(){var p=b.mixins,n,o;for(n in p){if(p.hasOwnProperty(n)){o=p[n];i=o.xtypes;if(i){for(g=0,c=i.length;g<c;g++){j=i[g];if(!h[j]){h[j]=true;e.push(j)}}}}}});for(g=0,c=i.length;g<c;g++){j=i[g];Ext.Array.include(l,k+j)}f.alias=l},["xtype","alias"]);if(Ext.manifest){var G=Ext.manifest,v=G.classes,z=G.paths,x={},D={},I,C,t,A,L;if(z){if(G.bootRelative){L=Ext.Boot.baseUrl;for(A in z){if(z.hasOwnProperty(A)){z[A]=L+z[A]}}}J.setPath(z)}if(v){for(I in v){D[I]=[];x[I]=[];C=v[I];if(C.alias){x[I]=C.alias}if(C.alternates){D[I]=C.alternates}}}J.addAlias(x);J.addAlternate(D)}return J}(Ext.Class,Ext.Function.alias,Array.prototype.slice,Ext.Array.from,Ext.global));(Ext.env||(Ext.env={})).Browser=function(x,D){var w=this,P=Ext.Boot.browserPrefixes,N=Ext.Boot.browserNames,O=w.enginePrefixes,H=w.engineNames,A=x.match(new RegExp("((?:"+Ext.Object.getValues(P).join(")|(?:")+"))([\\w\\._]+)")),J=x.match(new RegExp("((?:"+Ext.Object.getValues(O).join(")|(?:")+"))([\\w\\._]+)")),B=N.other,y=H.other,F="",K="",M="",I=false,C,E,G,i,z;w.userAgent=x;if(/Edge\//.test(x)){A=x.match(/(Edge\/)([\w.]+)/)}if(A){B=N[Ext.Object.getKey(P,A[1])];if(B==="Safari"&&/^Opera/.test(x)){B="Opera"}F=new Ext.Version(A[2])}if(J){y=H[Ext.Object.getKey(O,J[1])];K=new Ext.Version(J[2])}if(y==="Trident"&&B!=="IE"){B="IE";var L=x.match(/.*rv:(\d+.\d+)/);if(L&&L.length){L=L[1];F=new Ext.Version(L)}}if(B&&F){Ext.setVersion(B,F)}if(x.match(/FB/)&&B==="Other"){B=N.safari;y=H.webkit}if(x.match(/Android.*Chrome/g)){B="ChromeMobile"}if(x.match(/OPR/)){B="Opera";A=x.match(/OPR\/(\d+.\d+)/);F=new Ext.Version(A[1])}Ext.apply(this,{engineName:y,engineVersion:K,name:B,version:F});this.setFlag(B,true,D);if(F){M=F.getMajor()||"";if(w.is.IE){M=parseInt(M,10);G=document.documentMode;if(G===7||(M===7&&G!==8&&G!==9&&G!==10)){M=7}else{if(G===8||(M===8&&G!==8&&G!==9&&G!==10)){M=8}else{if(G===9||(M===9&&G!==7&&G!==8&&G!==10)){M=9}else{if(G===10||(M===10&&G!==7&&G!==8&&G!==9)){M=10}else{if(G===11||(M===11&&G!==7&&G!==8&&G!==9&&G!==10)){M=11}}}}}z=Math.max(M,Ext.Boot.maxIEVersion);for(C=7;C<=z;++C){E="isIE"+C;if(M<=C){Ext[E+"m"]=true}if(M===C){Ext[E]=true}if(M>=C){Ext[E+"p"]=true}}}if(w.is.Opera&&parseInt(M,10)<=12){Ext.isOpera12m=true}Ext.chromeVersion=Ext.isChrome?M:0;Ext.firefoxVersion=Ext.isFirefox?M:0;Ext.ieVersion=Ext.isIE?M:0;Ext.operaVersion=Ext.isOpera?M:0;Ext.safariVersion=Ext.isSafari?M:0;Ext.webKitVersion=Ext.isWebKit?M:0;this.setFlag(B+M,true,D);this.setFlag(B+F.getShortVersion())}for(C in N){if(N.hasOwnProperty(C)){i=N[C];this.setFlag(i,B===i)}}this.setFlag(i);if(K){this.setFlag(y+(K.getMajor()||""));this.setFlag(y+K.getShortVersion())}for(C in H){if(H.hasOwnProperty(C)){i=H[C];this.setFlag(i,y===i,D)}}this.setFlag("Standalone",!!navigator.standalone);this.setFlag("Ripple",!!document.getElementById("tinyhippos-injected")&&!Ext.isEmpty(window.top.ripple));this.setFlag("WebWorks",!!window.blackberry);if(window.PhoneGap!==undefined||window.Cordova!==undefined||window.cordova!==undefined){I=true;this.setFlag("PhoneGap");this.setFlag("Cordova")}if(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)(?!.*FBAN)/i.test(x)){I=true}this.setFlag("WebView",I);this.isStrict=Ext.isStrict=document.compatMode==="CSS1Compat";this.isSecure=Ext.isSecure;this.identity=B+M+(this.isStrict?"Strict":"Quirks")};Ext.env.Browser.prototype={constructor:Ext.env.Browser,engineNames:{webkit:"WebKit",gecko:"Gecko",presto:"Presto",trident:"Trident",other:"Other"},enginePrefixes:{webkit:"AppleWebKit/",gecko:"Gecko/",presto:"Presto/",trident:"Trident/"},styleDashPrefixes:{WebKit:"-webkit-",Gecko:"-moz-",Trident:"-ms-",Presto:"-o-",Other:""},stylePrefixes:{WebKit:"Webkit",Gecko:"Moz",Trident:"ms",Presto:"O",Other:""},propertyPrefixes:{WebKit:"webkit",Gecko:"moz",Trident:"ms",Presto:"o",Other:""},is:function(b){return !!this.is[b]},name:null,version:null,engineName:null,engineVersion:null,setFlag:function(e,f,d){if(f===undefined){f=true}this.is[e]=f;this.is[e.toLowerCase()]=f;if(d){Ext["is"+e]=f}return this},getStyleDashPrefix:function(){return this.styleDashPrefixes[this.engineName]},getStylePrefix:function(){return this.stylePrefixes[this.engineName]},getVendorProperyName:function(d){var c=this.propertyPrefixes[this.engineName];if(c.length>0){return c+Ext.String.capitalize(d)}return d},getPreferredTranslationMethod:function(b){if(typeof b==="object"&&"translationMethod" in b&&b.translationMethod!=="auto"){return b.translationMethod}else{return"csstransform"}}};(function(b){Ext.browser=new Ext.env.Browser(b,true);Ext.userAgent=b.toLowerCase();Ext.SSL_SECURE_URL=Ext.isSecure&&Ext.isIE?"javascript:''":"about:blank"}(Ext.global.navigator.userAgent));Ext.env.OS=function(i,A,r){var s=this,t=Ext.Boot.osNames,y=Ext.Boot.osPrefixes,B,u="",w=s.is,z,v,x,p,q;r=r||Ext.browser;for(z in y){if(y.hasOwnProperty(z)){v=y[z];x=i.match(new RegExp("(?:"+v+")([^\\s;]+)"));if(x){B=t[z];q=x[1];if(q&&q==="HTC_"){u=new Ext.Version("2.3")}else{if(q&&q==="Silk/"){u=new Ext.Version("2.3")}else{u=new Ext.Version(x[x.length-1])}}break}}}if(!B){B=t[(i.toLowerCase().match(/mac|win|linux/)||["other"])[0]];u=new Ext.Version("")}this.name=B;this.version=u;if(A){this.setFlag(A.replace(/ simulator$/i,""))}this.setFlag(B);if(u){this.setFlag(B+(u.getMajor()||""));this.setFlag(B+u.getShortVersion())}for(z in t){if(t.hasOwnProperty(z)){p=t[z];if(!w.hasOwnProperty(B)){this.setFlag(p,(B===p))}}}if(this.name==="iOS"&&window.screen.height===568){this.setFlag("iPhone5")}if(r.is.Safari||r.is.Silk){if(this.is.Android2||this.is.Android3||r.version.shortVersion===501){r.setFlag("AndroidStock")}if(this.is.Android4){r.setFlag("AndroidStock");r.setFlag("AndroidStock4")}}};Ext.env.OS.prototype={constructor:Ext.env.OS,is:function(b){return !!this[b]},name:null,version:null,setFlag:function(d,c){if(c===undefined){c=true}if(this.flags){this.flags[d]=c}this.is[d]=c;this.is[d.toLowerCase()]=c;return this}};(function(){var r=Ext.global.navigator,l=r.userAgent,m=Ext.env.OS,n=(Ext.is||(Ext.is={})),k,o,q;m.prototype.flags=n;Ext.os=k=new m(l,r.platform);o=k.name;Ext["is"+o]=true;Ext.isMac=n.Mac=n.MacOS;var j=window.location.search.match(/deviceType=(Tablet|Phone)/),p=window.deviceType;if(j&&j[1]){q=j[1]}else{if(p==="iPhone"){q="Phone"}else{if(p==="iPad"){q="Tablet"}else{if(!k.is.Android&&!k.is.iOS&&!k.is.WindowsPhone&&/Windows|Linux|MacOS/.test(o)){q="Desktop";Ext.browser.is.WebView=!!Ext.browser.is.Ripple}else{if(k.is.iPad||k.is.RIMTablet||k.is.Android3||Ext.browser.is.Silk||(k.is.Android&&l.search(/mobile/i)===-1)){q="Tablet"}else{q="Phone"}}}}}k.setFlag(q,true);k.deviceType=q;delete m.prototype.flags}());Ext.feature={has:function(b){return !!this.has[b]},testElements:{},getTestElement:function(d,c){if(d===undefined){d="div"}else{if(typeof d!=="string"){return d}}if(c){return document.createElement(d)}if(!this.testElements[d]){this.testElements[d]=document.createElement(d)}return this.testElements[d]},isStyleSupported:function(h,e){var g=this.getTestElement(e).style,f=Ext.String.capitalize(h);if(typeof g[h]!=="undefined"||typeof g[Ext.browser.getStylePrefix(h)+f]!=="undefined"){return true}return false},isStyleSupportedWithoutPrefix:function(d,e){var f=this.getTestElement(e).style;if(typeof f[d]!=="undefined"){return true}return false},isEventSupported:function(j,g){if(g===undefined){g=window}var h=this.getTestElement(g),f="on"+j.toLowerCase(),i=(f in h);if(!i){if(h.setAttribute&&h.removeAttribute){h.setAttribute(f,"");i=typeof h[f]==="function";if(typeof h[f]!=="undefined"){h[f]=undefined}h.removeAttribute(f)}}return i},getStyle:function(h,e){var f=h.ownerDocument.defaultView,g=(f?f.getComputedStyle(h,null):h.currentStyle);return(g||h.style)[e]},getSupportedPropertyName:function(d,e){var f=Ext.browser.getVendorProperyName(e);if(f in d){return f}else{if(e in d){return e}}return null},detect:function(t){var s=this,q=document,w=s.toRun||s.tests,x=w.length,A=q.createElement("div"),z=[],n=Ext.supports,p=s.has,B,u,v,y,r;A.innerHTML='<div style="height:30px;width:50px;"><div style="height:20px;width:20px;"></div></div><div style="width: 200px; height: 200px; position: relative; padding: 5px;"><div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></div></div><div style="position: absolute; left: 10%; top: 10%;"></div><div style="float:left; background-color:transparent;"></div>';if(t){q.body.appendChild(A)}y=s.preDetected[Ext.browser.identity]||[];while(x--){v=w[x];r=y[x];B=v.name;u=v.names;if(r===undefined){if(!t&&v.ready){z.push(v);continue}r=v.fn.call(s,q,A)}if(B){n[B]=p[B]=r}else{if(u){while(u.length){B=u.pop();n[B]=p[B]=r}}}}if(t){q.body.removeChild(A)}s.toRun=z},report:function(){var d=[],e=this.tests.length,f;for(f=0;f<e;++f){d.push(this.has[this.tests[f].name]?1:0)}Ext.log(Ext.browser.identity+": ["+d.join(",")+"]")},preDetected:{},tests:[{name:"CloneNodeCopiesExpando",fn:function(){var b=document.createElement("div");b.expandoProp={};return b.cloneNode().expandoProp===b.expandoProp}},{name:"CSSPointerEvents",fn:function(b){return"pointerEvents" in b.documentElement.style}},{name:"CSS3BoxShadow",fn:function(b){return"boxShadow" in b.documentElement.style||"WebkitBoxShadow" in b.documentElement.style||"MozBoxShadow" in b.documentElement.style}},{name:"CSS3NegationSelector",fn:function(c){try{c.querySelectorAll("foo:not(bar)")}catch(d){return false}return true}},{name:"ClassList",fn:function(b){return !!b.documentElement.classList}},{name:"Canvas",fn:function(){var b=this.getTestElement("canvas");return !!(b&&b.getContext&&b.getContext("2d"))}},{name:"Svg",fn:function(b){return !!(b.createElementNS&&!!b.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect)}},{name:"Vml",fn:function(){var c=this.getTestElement(),d=false;c.innerHTML="<!--[if vml]><br><![endif]-->";d=(c.childNodes.length===1);c.innerHTML="";return d}},{name:"touchScroll",fn:function(){var b=0;if(Ext.os.is.Desktop&&(navigator.maxTouchPoints||navigator.msMaxTouchPoints)){b=1}else{if(Ext.supports.Touch){b=2}}return b}},{name:"Touch",fn:function(){var b=navigator.msMaxTouchPoints||navigator.maxTouchPoints;if(Ext.browser.is.Chrome&&Ext.browser.version.isLessThanOrEqual(39)){return(Ext.supports.TouchEvents&&b!==1)||b>1}else{return Ext.supports.TouchEvents||b>0}}},{name:"TouchEvents",fn:function(){return this.isEventSupported("touchend")}},{name:"PointerEvents",fn:function(){return navigator.pointerEnabled}},{name:"MSPointerEvents",fn:function(){return navigator.msPointerEnabled}},{name:"Orientation",fn:function(){return("orientation" in window)&&this.isEventSupported("orientationchange")}},{name:"OrientationChange",fn:function(){return this.isEventSupported("orientationchange")}},{name:"DeviceMotion",fn:function(){return this.isEventSupported("devicemotion")}},{names:["Geolocation","GeoLocation"],fn:function(){return"geolocation" in window.navigator}},{name:"SqlDatabase",fn:function(){return"openDatabase" in window}},{name:"WebSockets",fn:function(){return"WebSocket" in window}},{name:"Range",fn:function(){return !!document.createRange}},{name:"CreateContextualFragment",fn:function(){var b=!!document.createRange?document.createRange():false;return b&&!!b.createContextualFragment}},{name:"History",fn:function(){return("history" in window&&"pushState" in window.history)}},{name:"Css3dTransforms",fn:function(){return this.has("CssTransforms")&&this.isStyleSupported("perspective")}},{name:"CssTransforms",fn:function(){return this.isStyleSupported("transform")}},{name:"CssTransformNoPrefix",fn:function(){return this.isStyleSupportedWithoutPrefix("transform")}},{name:"CssAnimations",fn:function(){return this.isStyleSupported("animationName")}},{names:["CssTransitions","Transitions"],fn:function(){return this.isStyleSupported("transitionProperty")}},{names:["Audio","AudioTag"],fn:function(){return !!this.getTestElement("audio").canPlayType}},{name:"Video",fn:function(){return !!this.getTestElement("video").canPlayType}},{name:"LocalStorage",fn:function(){try{if("localStorage" in window&&window.localStorage!==null){localStorage.setItem("sencha-localstorage-test","test success");localStorage.removeItem("sencha-localstorage-test");return true}}catch(b){}return false}},{name:"XHR2",fn:function(){return window.ProgressEvent&&window.FormData&&window.XMLHttpRequest&&("withCredentials" in new XMLHttpRequest())}},{name:"XHRUploadProgress",fn:function(){if(window.XMLHttpRequest&&!Ext.browser.is.AndroidStock){var b=new XMLHttpRequest();return b&&("upload" in b)&&("onprogress" in b.upload)}return false}},{name:"NumericInputPlaceHolder",fn:function(){return !(Ext.browser.is.AndroidStock4&&Ext.os.version.getMinor()<2)}},{name:"matchesSelector",fn:function(){var f=document.documentElement,h="matches",i="webkitMatchesSelector",g="msMatchesSelector",j="mozMatchesSelector";return f[h]?h:f[i]?i:f[g]?g:f[j]?j:null}},{name:"RightMargin",ready:true,fn:function(d,f){var e=d.defaultView;return !(e&&e.getComputedStyle(f.firstChild.firstChild,null).marginRight!=="0px")}},{name:"DisplayChangeInputSelectionBug",fn:function(){var b=Ext.webKitVersion;return 0<b&&b<533}},{name:"DisplayChangeTextAreaSelectionBug",fn:function(){var b=Ext.webKitVersion;return 0<b&&b<534.24}},{name:"TransparentColor",ready:true,fn:function(d,f,e){e=d.defaultView;return !(e&&e.getComputedStyle(f.lastChild,null).backgroundColor!=="transparent")}},{name:"ComputedStyle",ready:true,fn:function(d,f,e){e=d.defaultView;return e&&e.getComputedStyle}},{name:"Float",fn:function(b){return"cssFloat" in b.documentElement.style}},{name:"CSS3BorderRadius",ready:true,fn:function(g){var e=["borderRadius","BorderRadius","MozBorderRadius","WebkitBorderRadius","OBorderRadius","KhtmlBorderRadius"],h=false,f;for(f=0;f<e.length;f++){if(g.documentElement.style[e[f]]!==undefined){h=true}}return h&&!Ext.isIE9}},{name:"CSS3LinearGradient",fn:function(m,r){var k="background-image:",l="-webkit-gradient(linear, left top, right bottom, from(black), to(white))",n="linear-gradient(left top, black, white)",o="-moz-"+n,q="-ms-"+n,p="-o-"+n,j=[k+l,k+n,k+o,k+q,k+p];r.style.cssText=j.join(";");return((""+r.style.backgroundImage).indexOf("gradient")!==-1)&&!Ext.isIE9}},{name:"MouseEnterLeave",fn:function(b){return("onmouseenter" in b.documentElement&&"onmouseleave" in b.documentElement)}},{name:"MouseWheel",fn:function(b){return("onmousewheel" in b.documentElement)}},{name:"Opacity",fn:function(d,c){if(Ext.isIE8){return false}c.firstChild.style.cssText="opacity:0.73";return c.firstChild.style.opacity=="0.73"}},{name:"Placeholder",fn:function(b){return"placeholder" in b.createElement("input")}},{name:"Direct2DBug",fn:function(b){return Ext.isString(b.documentElement.style.msTransformOrigin)&&Ext.isIE9m}},{name:"BoundingClientRect",fn:function(b){return"getBoundingClientRect" in b.documentElement}},{name:"RotatedBoundingClientRect",ready:true,fn:function(h){var g=h.body,f=false,i=h.createElement("div"),j=i.style;if(i.getBoundingClientRect){j.position="absolute";j.top="0";j.WebkitTransform=j.MozTransform=j.msTransform=j.OTransform=j.transform="rotate(90deg)";j.width="100px";j.height="30px";g.appendChild(i);f=i.getBoundingClientRect().height!==100;g.removeChild(i)}return f}},{name:"ChildContentClearedWhenSettingInnerHTML",ready:true,fn:function(){var d=this.getTestElement(),c;d.innerHTML="<div>a</div>";c=d.firstChild;d.innerHTML="<div>b</div>";return c.innerHTML!=="a"}},{name:"IncludePaddingInWidthCalculation",ready:true,fn:function(d,c){return c.childNodes[1].firstChild.offsetWidth===210}},{name:"IncludePaddingInHeightCalculation",ready:true,fn:function(d,c){return c.childNodes[1].firstChild.offsetHeight===210}},{name:"TextAreaMaxLength",fn:function(b){return("maxlength" in b.createElement("textarea"))}},{name:"GetPositionPercentage",ready:true,fn:function(d,c){return Ext.feature.getStyle(c.childNodes[2],"left")==="10%"}},{name:"PercentageHeightOverflowBug",ready:true,fn:function(g){var f=false,h,e;if(Ext.getScrollbarSize().height){e=this.getTestElement();h=e.style;h.height="50px";h.width="50px";h.overflow="auto";h.position="absolute";e.innerHTML=['<div style="display:table;height:100%;">','<div style="width:51px;"></div>',"</div>"].join("");g.body.appendChild(e);if(e.firstChild.offsetHeight===50){f=true}g.body.removeChild(e)}return f}},{name:"xOriginBug",ready:true,fn:function(i,h){h.innerHTML='<div id="b1" style="height:100px;width:100px;direction:rtl;position:relative;overflow:scroll"><div id="b2" style="position:relative;width:100%;height:20px;"></div><div id="b3" style="position:absolute;width:20px;height:20px;top:0px;right:0px"></div></div>';var j=document.getElementById("b1").getBoundingClientRect(),f=document.getElementById("b2").getBoundingClientRect(),g=document.getElementById("b3").getBoundingClientRect();return(f.left!==j.left&&g.right!==j.right)}},{name:"ScrollWidthInlinePaddingBug",ready:true,fn:function(g){var f=false,h,e;e=g.createElement("div");h=e.style;h.height="50px";h.width="50px";h.padding="10px";h.overflow="hidden";h.position="absolute";e.innerHTML='<span style="display:inline-block;zoom:1;height:60px;width:60px;"></span>';g.body.appendChild(e);if(e.scrollWidth===70){f=true}g.body.removeChild(e);return f}},{name:"rtlVertScrollbarOnRight",ready:true,fn:function(h,g){g.innerHTML='<div style="height:100px;width:100px;direction:rtl;overflow:scroll"><div style="width:20px;height:200px;"></div></div>';var e=g.firstChild,f=e.firstChild;return(f.offsetLeft+f.offsetWidth!==e.offsetLeft+e.offsetWidth)}},{name:"rtlVertScrollbarOverflowBug",ready:true,fn:function(d,f){f.innerHTML='<div style="height:100px;width:100px;direction:rtl;overflow:auto"><div style="width:95px;height:200px;"></div></div>';var e=f.firstChild;return e.clientHeight===e.offsetHeight}},{identity:"defineProperty",fn:function(){if(Ext.isIE8m){Ext.Object.defineProperty=Ext.emptyFn;return false}return true}},{identify:"nativeXhr",fn:function(){if(typeof XMLHttpRequest!=="undefined"){return true}XMLHttpRequest=function(){try{return new ActiveXObject("MSXML2.XMLHTTP.3.0")}catch(b){return null}};return false}},{name:"SpecialKeyDownRepeat",fn:function(){return Ext.isWebKit?parseInt(navigator.userAgent.match(/AppleWebKit\/(\d+)/)[1],10)>=525:!((Ext.isGecko&&!Ext.isWindows)||(Ext.isOpera&&Ext.operaVersion<12))}},{name:"EmulatedMouseOver",fn:function(){return Ext.os.is.iOS}},{name:"Hashchange",fn:function(){var b=document.documentMode;return"onhashchange" in window&&(b===undefined||b>7)}},{name:"FixedTableWidthBug",ready:true,fn:function(){if(Ext.isIE8){return false}var d=document.createElement("div"),e=document.createElement("div"),f;d.setAttribute("style","display:table;table-layout:fixed;");e.setAttribute("style","display:table-cell;min-width:50px;");d.appendChild(e);document.body.appendChild(d);d.offsetWidth;d.style.width="25px";f=d.offsetWidth;document.body.removeChild(d);return f===50}},{name:"FocusinFocusoutEvents",fn:function(){return !Ext.isGecko}},{name:"AsyncFocusEvents",fn:function(){return Ext.asyncFocus=!!Ext.isIE}},{name:"accessibility",ready:true,fn:function(l){var j=l.body,k,o,n,i,p;function m(e){var d=[],b=0,f,c;if(e.indexOf("rgb(")!==-1){d=e.replace("rgb(","").replace(")","").split(", ")}else{if(e.indexOf("#")!==-1){f=e.length===7?/^#(\S\S)(\S\S)(\S\S)$/:/^#(\S)(\S)(\S)$/;c=e.match(f);if(c){d=["0x"+c[1],"0x"+c[2],"0x"+c[3]]}}}for(var a=0;a<d.length;a++){b+=parseInt(d[a])}return b}k=l.createElement("div");o=l.createElement("img");n=k.style;Ext.apply(n,{width:"2px",position:"absolute",clip:"rect(1px,1px,1px,1px)",borderWidth:"1px",borderStyle:"solid",borderTopTolor:"#f00",borderRightColor:"#ff0",backgroundColor:"#fff",backgroundImage:"url("+Ext.BLANK_IMAGE_URL+")"});o.alt="";o.src=Ext.BLANK_IMAGE_URL;k.appendChild(o);j.appendChild(k);n=k.currentStyle||k.style;p=n.backgroundImage;i={Images:o.offsetWidth===1&&o.readyState!=="uninitialized",BackgroundImages:!(p!==null&&(p==="none"||p==="url(invalid-url:)")),BorderColors:n.borderTopColor!==n.borderRightColor,LightOnDark:m(n.color)-m(n.backgroundColor)>0};Ext.supports.HighContrastMode=!i.BackgroundImages;j.removeChild(k);k=o=null;return i}},0]};Ext.feature.tests.pop();Ext.supports={};Ext.feature.detect();Ext.env.Ready={blocks:(location.search||"").indexOf("ext-pauseReadyFire")>0?1:0,bound:0,delay:1,firing:false,generation:0,listeners:[],nextId:0,sortGeneration:0,state:0,timer:null,bind:function(){var d=Ext.env.Ready,c=document;if(!d.bound){if(c.readyState==="complete"){d.onReadyEvent({type:c.readyState||"body"})}else{d.bound=1;if(Ext.browser.is.PhoneGap&&!Ext.os.is.Desktop){d.bound=2;c.addEventListener("deviceready",d.onReadyEvent,false)}c.addEventListener("DOMContentLoaded",d.onReadyEvent,false);window.addEventListener("load",d.onReadyEvent,false)}}},block:function(){++this.blocks;Ext.isReady=false},fireReady:function(){var b=Ext.env.Ready;if(!b.state){Ext._readyTime=Ext.ticks();Ext.isDomReady=true;b.state=1;Ext.feature.detect(true);if(!b.delay){b.handleReady()}else{if(navigator.standalone){b.timer=Ext.defer(function(){b.timer=null;b.handleReadySoon()},1)}else{b.handleReadySoon()}}}},handleReady:function(){var b=this;if(b.state===1){b.state=2;Ext._beforeReadyTime=Ext.ticks();b.invokeAll();Ext._afterReadyTime=Ext.ticks()}},handleReadySoon:function(d){var c=this;if(!c.timer){c.timer=Ext.defer(function(){c.timer=null;c.handleReady()},d||c.delay)}},invoke:function(c){var d=c.delay;if(d){Ext.defer(c.fn,d,c.scope)}else{if(Ext.elevateFunction){Ext.elevateFunction(c.fn,c.scope)}else{c.fn.call(c.scope)}}},invokeAll:function(){if(Ext.elevateFunction){Ext.elevateFunction(this.doInvokeAll,this)}else{this.doInvokeAll()}},doInvokeAll:function(){var d=this,e=d.listeners,f;if(!d.blocks){Ext.isReady=true}d.firing=true;while(e.length){if(d.sortGeneration!==d.generation){d.sortGeneration=d.generation;e.sort(d.sortFn)}f=e.pop();if(d.blocks&&!f.dom){e.push(f);break}d.invoke(f)}d.firing=false},makeListener:function(g,h,e){var f={fn:g,id:++this.nextId,scope:h,dom:false,priority:0};if(e){Ext.apply(f,e)}f.phase=f.dom?0:1;return f},on:function(j,f,g){var i=Ext.env.Ready,h=i.makeListener(j,f,g);if(i.state===2&&!i.firing&&(h.dom||!i.blocks)){i.invoke(h)}else{i.listeners.push(h);++i.generation;if(!i.bound){i.bind()}}},onReadyEvent:function(c){var d=Ext.env.Ready;if(Ext.elevateFunction){Ext.elevateFunction(d.doReadyEvent,d,arguments)}else{d.doReadyEvent(c)}},doReadyEvent:function(c){var d=this;if(d.bound>0){d.unbind();d.bound=-1}if(!d.state){d.fireReady()}},sortFn:function(a,b){return -((a.phase-b.phase)||(b.priority-a.priority)||(a.id-b.id))},unblock:function(){var b=this;if(b.blocks){if(!--b.blocks){if(b.state===2&&!b.firing){b.invokeAll()}}}},unbind:function(){var d=this,c=document;if(d.bound>1){c.removeEventListener("deviceready",d.onReadyEvent,false)}c.removeEventListener("DOMContentLoaded",d.onReadyEvent,false);window.removeEventListener("load",d.onReadyEvent,false)}};(function(){var b=Ext.env.Ready;if(Ext.isIE9m){Ext.apply(b,{scrollTimer:null,readyStatesRe:/complete/i,pollScroll:function(){var a=true;try{document.documentElement.doScroll("left")}catch(d){a=false}if(a&&document.body){b.onReadyEvent({type:"doScroll"})}else{b.scrollTimer=Ext.defer(b.pollScroll,20)}return a},bind:function(){if(b.bound){return}var e=document,a;try{a=window.frameElement===undefined}catch(f){}if(!a||!e.documentElement.doScroll){b.pollScroll=Ext.emptyFn}else{if(b.pollScroll()){return}}if(e.readyState==="complete"){b.onReadyEvent({type:"already "+(e.readyState||"body")})}else{e.attachEvent("onreadystatechange",b.onReadyStateChange);window.attachEvent("onload",b.onReadyEvent);b.bound=1}},unbind:function(){document.detachEvent("onreadystatechange",b.onReadyStateChange);window.detachEvent("onload",b.onReadyEvent);if(Ext.isNumber(b.scrollTimer)){clearTimeout(b.scrollTimer);b.scrollTimer=null}},onReadyStateChange:function(){var a=document.readyState;if(b.readyStatesRe.test(a)){b.onReadyEvent({type:a})}}})}Ext.onDocumentReady=function(f,g,a){var h={dom:true};if(a){Ext.apply(h,a)}b.on(f,g,h)};Ext.onReady=function(e,f,a){b.on(e,f,a)};Ext.onInternalReady=function(e,f,a){b.on(e,f,Ext.apply({priority:1000},a))};b.bind()}());Ext.Loader=(new function(){var B=this,D=Ext.ClassManager,x=Ext.Boot,A=Ext.Class,v=Ext.env.Ready,w=Ext.Function.alias,y=["extend","mixins","requires"],r={},u=[],C=[],z=[],q={},s={},t={enabled:true,scriptChainDelay:false,disableCaching:true,disableCachingParam:"_dc",paths:D.paths,preserveScripts:true,scriptCharset:undefined},p={disableCaching:true,disableCachingParam:true,preserveScripts:true,scriptChainDelay:"loadDelay"};Ext.apply(B,{isInHistory:r,isLoading:false,history:u,config:t,readyListeners:C,optionalRequires:z,requiresMap:q,hasFileLoadError:false,scriptsLoading:0,syncModeEnabled:false,missingQueue:s,init:function(){var i=document.getElementsByTagName("script"),c=i[i.length-1].src,d=c.substring(0,c.lastIndexOf("/")+1),f=Ext._classPathMetadata,e=Ext.Microloader,a=Ext.manifest,k,h,g,j,b;if(!D.getPath("Ext")){D.setPath("Ext",d+"src")}if(f){Ext._classPathMetadata=null;B.addClassPathMappings(f)}if(a){k=a.loadOrder;h=Ext.Boot.baseUrl;if(k&&a.bootRelative){for(g=k.length,j=0;j<g;j++){b=k[j];b.path=h+b.path}}}if(e){v.block();e.onMicroloaderReady(function(){v.unblock()})}},setConfig:Ext.Function.flexSetter(function(c,b){if(c==="paths"){B.setPath(b)}else{t[c]=b;var a=p[c];if(a){x.setConfig((a===true)?c:a,b)}}return B}),getConfig:function(a){return a?t[a]:t},setPath:function(){D.setPath.apply(D,arguments);return B},addClassPathMappings:function(a){D.setPath(a);return B},addBaseUrlClassPathMappings:function(b){for(var a in b){b[a]=x.baseUrl+b[a]}Ext.Loader.addClassPathMappings(b)},getPath:function(a){return D.getPath(a)},require:function(c,d,e,a){if(a){return B.exclude(a).require(c,d,e)}var b=D.getNamesByExpression(c);return B.load(b,d,e)},syncRequire:function(){var a=B.syncModeEnabled;B.syncModeEnabled=true;var b=B.require.apply(B,arguments);B.syncModeEnabled=a;return b},exclude:function(a){var b=D.select({require:function(c,d,e){return B.load(c,d,e)},syncRequire:function(c,e,f){var d=B.syncModeEnabled;B.syncModeEnabled=true;var g=B.load(c,e,f);B.syncModeEnabled=d;return g}});b.exclude(a);return b},load:function(c,e,d){if(e){if(e.length){e=B.makeLoadCallback(c,e)}e=e.bind(d||Ext.global)}var j=[],a=c.length,g,h,i,f=[],b=D.classState;for(h=0;h<a;++h){g=D.resolveName(c[h]);if(!D.isCreated(g)){j.push(g);s[g]=B.getPath(g);if(!b[g]){f.push(s[g])}}}i=j.length;if(i){B.missingCount+=i;D.onCreated(function(){if(e){Ext.callback(e,d,arguments)}B.checkReady()},B,j);if(!t.enabled){Ext.raise("Ext.Loader is not enabled, so dependencies cannot be resolved dynamically. Missing required class"+((j.length>1)?"es":"")+": "+j.join(", "))}if(f.length){B.loadScripts({url:f,_classNames:j})}else{B.checkReady()}}else{if(e){e.call(d)}B.checkReady()}if(B.syncModeEnabled){if(a===1){return D.get(c[0])}}return B},makeLoadCallback:function(b,a){return function(){var c=[],d=b.length;while(d-->0){c[d]=D.get(b[d])}return a.apply(this,c)}},onLoadFailure:function(){var b=this,a=b.onError;B.hasFileLoadError=true;--B.scriptsLoading;if(a){a.call(b.userScope,b)}B.checkReady()},onLoadSuccess:function(){var b=this,a=b.onLoad;--B.scriptsLoading;if(a){a.call(b.userScope,b)}B.checkReady()},onReady:function(c,d,a,e){if(a){v.on(c,d,e)}else{var b=v.makeListener(c,d,e);if(B.isLoading){C.push(b)}else{v.invoke(b)}}},addUsedClasses:function(b){var d,c,a;if(b){b=(typeof b==="string")?[b]:b;for(c=0,a=b.length;c<a;c++){d=b[c];if(typeof d==="string"&&!Ext.Array.contains(z,d)){z.push(d)}}}return B},triggerReady:function(){var b,a=z;if(B.isLoading&&a.length){z=[];B.require(a)}else{B.isLoading=false;C.sort(v.sortFn);while(C.length&&!B.isLoading){b=C.pop();v.invoke(b)}v.unblock()}},historyPush:function(a){if(a&&!r[a]&&!D.overrideMap[a]){r[a]=true;u.push(a)}return B},loadScripts:function(a){var b=Ext.manifest,e=b&&b.loadOrder,d=b&&b.loadOrderMap,c;++B.scriptsLoading;if(e&&!d){b.loadOrderMap=d=x.createLoadOrderMap(e)}B.checkReady();c=Ext.apply({loadOrder:e,loadOrderMap:d,charset:t.scriptCharset,success:B.onLoadSuccess,failure:B.onLoadFailure,sync:B.syncModeEnabled,_classNames:[]},a);c.userScope=c.scope;c.scope=c;x.load(c)},loadScriptsSync:function(a){var b=B.syncModeEnabled;B.syncModeEnabled=true;B.loadScripts({url:a});B.syncModeEnabled=b},loadScriptsSyncBasePrefix:function(a){var b=B.syncModeEnabled;B.syncModeEnabled=true;B.loadScripts({url:a,prependBaseUrl:true});B.syncModeEnabled=b},loadScript:function(d){var b=typeof d==="string",h=d instanceof Array,e=!h&&!b,c=e?d.url:d,i=e&&d.onError,g=e&&d.onLoad,f=e&&d.scope,a={url:c,scope:f,onLoad:g,onError:i,_classNames:[]};B.loadScripts(a)},flushMissingQueue:function(){var d,a,b=0,c=0;for(d in s){b++;a=s[d];if(D.isCreated(d)){delete s[d]}else{if(D.existCache[d]===2){delete s[d]}else{++c}}}this.missingCount=c},checkReady:function(){var a=B.isLoading,b;B.flushMissingQueue();b=B.missingCount+B.scriptsLoading;if(b&&!a){v.block();B.isLoading=!!b}else{if(!b&&a){B.triggerReady()}}}});Ext.require=w(B,"require");Ext.syncRequire=w(B,"syncRequire");Ext.exclude=w(B,"exclude");A.registerPreprocessor("loader",function(F,n,b,d){var h=this,j=[],f,i=D.getName(F),o,a,k,l,e,m,c,g;for(o=0,k=y.length;o<k;o++){m=y[o];if(n.hasOwnProperty(m)){c=n[m];if(typeof c==="string"){j.push(c)}else{if(c instanceof Array){for(a=0,l=c.length;a<l;a++){e=c[a];if(typeof e==="string"){j.push(e)}}}else{if(typeof c!=="function"){for(a in c){if(c.hasOwnProperty(a)){e=c[a];if(typeof e==="string"){j.push(e)}}}}}}}}if(j.length===0){return}if(i){q[i]=j}(i?B.exclude(i):B).require(j,function(){for(o=0,k=y.length;o<k;o++){m=y[o];if(n.hasOwnProperty(m)){c=n[m];if(typeof c==="string"){n[m]=D.get(c)}else{if(c instanceof Array){for(a=0,l=c.length;a<l;a++){e=c[a];if(typeof e==="string"){n[m][a]=D.get(e)}}}else{if(typeof c!=="function"){for(var E in c){if(c.hasOwnProperty(E)){e=c[E];if(typeof e==="string"){n[m][E]=D.get(e)}}}}}}}}d.call(h,F,n,b)});return false},true,"after","className");D.registerPostprocessor("uses",function(b,d,i){var c=Ext.manifest,a=c&&c.loadOrder,l=c&&c.classes,k,g,e,h,j,f;if(a){g=l[b];if(g&&!isNaN(j=g.idx)){e=a[j];k=e.uses;f={};for(h=k.length,j=0;j<h;j++){f[k[j]]=true}k=Ext.Boot.getPathsFromIndexes(f,a,true);if(k.length>0){B.loadScripts({url:k,sequential:true})}}}if(i.uses){k=i.uses;B.addUsedClasses(k)}});D.onCreated(B.historyPush);B.init()}());Ext._endTime=Ext.ticks();if(Ext._beforereadyhandler){Ext._beforereadyhandler()}(Ext.cmd.derive("Ext.Mixin",Ext.Base,function(b){return{statics:{addHook:function(i,l,n,m){var j=Ext.isFunction(i),k=function(){var d=arguments,c=j?i:m[i],e=this.callParent(d);c.apply(this,d);return e},a=l.hasOwnProperty(n)&&l[n];if(j){i.$previous=Ext.emptyFn}k.$name=n;k.$owner=l.self;if(a){k.$previous=a.$previous;a.$previous=k}else{l[n]=k}}},onClassExtended:function(a,r){var p=r.mixinConfig,m=r.xhooks,n=a.superclass,q=r.onClassMixedIn,t,o,l,s;if(m){delete r.xhooks;(p||(r.mixinConfig=p={})).on=m}if(p){t=n.mixinConfig;if(t){r.mixinConfig=p=Ext.merge({},t,p)}r.mixinId=p.id;o=p.before;l=p.after;m=p.on;s=p.extended}if(o||l||m||s){r.onClassMixedIn=function(e){var d=this.prototype,f=e.prototype,c;if(o){Ext.Object.each(o,function(h,g){e.addMember(h,function(){if(d[g].apply(this,arguments)!==false){return this.callParent(arguments)}})})}if(l){Ext.Object.each(l,function(h,g){e.addMember(h,function(){var i=this.callParent(arguments);d[g].apply(this,arguments);return i})})}if(m){for(c in m){b.addHook(m[c],f,c,d)}}if(s){e.onExtended(function(){var g=Ext.Array.slice(arguments,0);g.unshift(e);return s.apply(this,g)},this)}if(q){q.apply(this,arguments)}}}}}},0,0,0,0,0,0,[Ext,"Mixin"],0));Ext.util=Ext.util||{};Ext.util.DelayedTask=function(n,o,i,k,l){var m=this,j,p=function(){var a=Ext.GlobalEvents;clearInterval(m.id);m.id=null;n.apply(o,i||[]);if(l!==false&&a.hasListeners.idle){a.fireEvent("idle")}};k=typeof k==="boolean"?k:true;m.id=null;m.delay=function(c,a,b,d){if(k){m.cancel()}if(typeof c==="number"){j=c}n=a||n;o=b||o;i=d||i;if(!m.id){m.id=Ext.interval(p,j)}};m.cancel=function(){if(m.id){clearInterval(m.id);m.id=null}}};(Ext.cmd.derive("Ext.util.Event",Ext.Base,function(){var g=Array.prototype.slice,f=Ext.Array.insert,h=Ext.Array.toArray,e={};return{isEvent:true,suspended:0,noOptions:{},constructor:function(a,b){this.name=b;this.observable=a;this.listeners=[]},addListener:function(E,L,K,i,B){var b=this,G=false,C=b.observable,H=b.name,A,I,c,y,a,z,J,F,d,D;if(b.findListener(E,L)===-1){I=b.createListener(E,L,K,i,B);if(b.firing){b.listeners=b.listeners.slice(0)}A=b.listeners;F=J=A.length;c=K&&K.priority;a=b._highestNegativePriorityIndex;z=a!==undefined;if(c){y=(c<0);if(!y||z){for(d=(y?a:0);d<J;d++){D=A[d].o?A[d].o.priority||0:0;if(D<c){F=d;break}}}else{b._highestNegativePriorityIndex=F}}else{if(z){F=a}}if(!y&&F<=a){b._highestNegativePriorityIndex++}if(F===J){A[J]=I}else{f(A,F,[I])}if(C.isElement){C._getPublisher(H).subscribe(C,H,K.delegated!==false,K.capture)}G=true}return G},createListener:function(c,a,v,u,s){var o=this,d=Ext._namedScopes[a],t={fn:c,scope:a,ev:o,caller:u,manager:s,namedScope:d,defaultScope:d?(a||o.observable):undefined,lateBound:typeof c==="string"},b=c,q=false,r;if(v){t.o=v;if(v.single){b=o.createSingle(b,t,v,a);q=true}if(v.target){b=o.createTargeted(b,t,v,a,q);q=true}if(v.delay){b=o.createDelayed(b,t,v,a,q);q=true}if(v.buffer){b=o.createBuffered(b,t,v,a,q);q=true}if(o.observable.isElement){r=v.type;if(r){t.type=r}}}t.fireFn=b;t.wrapped=q;return t},findListener:function(b,c){var d=this.listeners,i=d.length,a;while(i--){a=d[i];if(a){if(a.fn===b&&a.scope==c){return i}}}return -1},removeListener:function(b,D,d){var c=this,i=false,A=c.observable,k=c.name,y,B,C,w,x,a,z,v;d=d||c.findListener(b,D);if(d!=-1){y=c.listeners[d];C=y.o;B=c._highestNegativePriorityIndex;if(c.firing){c.listeners=c.listeners.slice(0)}if(y.task){y.task.cancel();delete y.task}w=y.tasks&&y.tasks.length;if(w){while(w--){y.tasks[w].cancel()}delete y.tasks}c.listeners.splice(d,1);x=y.manager;if(x){a=x.managedListeners;if(a){for(v=a.length;v--;){z=a[v];if(z.item===c.observable&&z.ename===k&&z.fn===b&&z.scope===D){a.splice(v,1)}}}}if(B){if(d<B){c._highestNegativePriorityIndex--}else{if(d===B&&d===c.listeners.length){delete c._highestNegativePriorityIndex}}}if(A.isElement){A._getPublisher(k).unsubscribe(A,k,C.delegated!==false,C.capture)}i=true}return i},clearListeners:function(){var b=this.listeners,c=b.length,a;while(c--){a=b[c];this.removeListener(a.fn,a.scope)}},suspend:function(){++this.suspended},resume:function(){if(this.suspended){--this.suspended}},isSuspended:function(){return this.suspended>0},fireDelegated:function(a,b){this.firingObservable=a;return this.fire.apply(this,b)},fire:function(){var I=this,F=I.listeners,N=F.length,K=I.observable,E=K.isElement,a=K.isComponent,c=I.firingObservable,R,d,J,C,S,P,i,D,H,Q,L,O,b,G,M;if(!I.suspended&&N>0){I.firing=true;S=arguments.length?g.call(arguments,0):[];i=S.length;if(E){b=S[0]}for(C=0;C<N;C++){P=F[C];R=P.o;if(E){if(H){b.setCurrentTarget(H)}Q=P.type;if(Q){L=b;b=S[0]=L.chain({type:Q})}Ext.EventObject=b}O=S;if(R){d=R.delegate;if(d){if(E){D=b.getTarget("#"+b.currentTarget.id+" "+d);if(D){S[1]=D;H=b.currentTarget;b.setCurrentTarget(D)}else{continue}}else{if(a&&!c.is("#"+K.id+" "+R.delegate)){continue}}}if(E){if(R.preventDefault){b.preventDefault()}if(R.stopPropagation){b.stopPropagation()}if(R.stopEvent){b.stopEvent()}}S[i]=R;if(R.args){O=R.args.concat(S)}}J=I.getFireInfo(P);G=J.fn;M=J.scope;J.fn=J.scope=null;if(G.apply(M,O)===false){Ext.EventObject=null;return(I.firing=false)}if(L){b=S[0]=L;L=null}Ext.EventObject=null}}I.firing=false;return true},getFireInfo:function(b,c){var a=this.observable,n=b.fireFn,d=b.scope,m=b.namedScope,l;if(!c&&b.wrapped){e.fn=n;return e}l=c?b.fn:n;if(b.lateBound){if(!d||m){d=(b.caller||a).resolveListenerScope(b.defaultScope)}l=d[l]}else{if(m&&m.isController){d=(b.caller||a).resolveListenerScope(b.defaultScope)}else{if(!d||m){d=a}}}e.fn=l;e.scope=d;return e},createTargeted:function(c,b,a,d,j){return function(){if(a.target===arguments[0]){var i;if(!j){i=b.ev.getFireInfo(b,true);c=i.fn;d=i.scope;i.fn=i.scope=null}return c.apply(d,arguments)}}},createBuffered:function(c,b,a,d,j){b.task=new Ext.util.DelayedTask();return function(){var i;if(!j){i=b.ev.getFireInfo(b,true);c=i.fn;d=i.scope;i.fn=i.scope=null}b.task.delay(a.buffer,c,d,h(arguments))}},createDelayed:function(c,b,a,d,j){return function(){var l=new Ext.util.DelayedTask(),i;if(!j){i=b.ev.getFireInfo(b,true);c=i.fn;d=i.scope;i.fn=i.scope=null}if(!b.tasks){b.tasks=[]}b.tasks.push(l);l.delay(a.delay||10,c,d,h(arguments))}},createSingle:function(c,b,a,d,j){return function(){var l=b.ev,i;if(l.removeListener(b.fn,d)&&l.observable){l.observable.hasListeners[l.name]--}if(!j){i=l.getFireInfo(b,true);c=i.fn;d=i.scope;i.fn=i.scope=null}return c.apply(d,arguments)}}}},1,0,0,0,0,0,[Ext.util,"Event"],0));(Ext.cmd.derive("Ext.mixin.Identifiable",Ext.Base,{statics:{uniqueIds:{}},isIdentifiable:true,mixinId:"identifiable",idCleanRegex:/\.|[^\w\-]/g,defaultIdPrefix:"ext-",defaultIdSeparator:"-",getOptimizedId:function(){return this.id},getUniqueId:function(){var i=this.id,g,k,j,h,l;if(!(i||i===0)){g=this.self.prototype;k=this.defaultIdSeparator;h=Ext.mixin.Identifiable.uniqueIds;if(!g.hasOwnProperty("identifiablePrefix")){j=this.xtype;if(j){l=this.defaultIdPrefix+j.replace(this.idCleanRegex,k)+k}else{if(!(l=g.$className)){l=this.defaultIdPrefix+"anonymous"+k}else{l=l.replace(this.idCleanRegex,k).toLowerCase()+k}}g.identifiablePrefix=l}l=this.identifiablePrefix;if(!h.hasOwnProperty(l)){h[l]=0}i=this.id=this.id=l+(++h[l])}this.getUniqueId=this.getOptimizedId;return i},setId:function(b){this.id=this.id=b},getId:function(){var b=this.id;if(!b){b=this.getUniqueId()}this.getId=this.getOptimizedId;return b}},0,0,0,0,0,0,[Ext.mixin,"Identifiable"],0));(Ext.cmd.derive("Ext.mixin.Observable",Ext.Mixin,function(h){var k=Ext.emptyFn,l=[],j=Array.prototype,i=j.slice,g=function(a){if(a instanceof g){return a}this.observable=a;if(arguments[1].isObservable){this.managedListeners=true}this.args=i.call(arguments,1)};g.prototype.destroy=function(){this.destroy=Ext.emptyFn;var a=this.observable;a[this.managedListeners?"mun":"un"].apply(a,this.args)};return{mixinConfig:{id:"observable",after:{destroy:"clearListeners"}},statics:{releaseCapture:function(a){a.fireEventArgs=this.prototype.fireEventArgs},capture:function(a,c,d){var b=function(f,e){return c.apply(d,[f].concat(e))};this.captureArgs(a,b,d)},captureArgs:function(a,b,c){a.fireEventArgs=Ext.Function.createInterceptor(a.fireEventArgs,b,c)},observe:function(b,a){if(b){if(!b.isObservable){Ext.applyIf(b,new this());this.captureArgs(b.prototype,b.fireEventArgs,b)}if(Ext.isObject(a)){b.on(a)}}return b},prepareClass:function(t,b,s){var c=t.listeners=[],e=s||t.prototype,x=e.listeners,u=b?b.listeners:t.superclass.self.listeners,w,a,d;if(u){c.push(u)}if(x){a=x.scope;if(!a){x.scope="self"}else{d=Ext._namedScopes[a];if(d&&d.isController){x.scope="self.controller"}}c.push(x);e.listeners=null}if(!t.HasListeners){var f=function(){},v=t.superclass.HasListeners||(b&&b.HasListeners)||h.HasListeners;t.prototype.HasListeners=t.HasListeners=f;f.prototype=t.hasListeners=new v()}}},isObservable:true,eventsSuspended:0,constructor:function(c){var q=this,d=q.self,e,a,p,f,b;if(q.$observableInitialized){return}q.$observableInitialized=true;q.hasListeners=new q.HasListeners();q.eventedBeforeEventNames={};q.events=q.events||{};e=d.listeners;if(e&&!q._addDeclaredListeners(e)){d.listeners=null}a=(c&&c.listeners)||q.listeners;if(a){if(a instanceof Array){for(b=0,f=a.length;b<f;++b){q.addListener(a[b])}}else{q.addListener(a)}}p=(c&&c.bubbleEvents)||q.bubbleEvents;if(p){q.enableBubble(p)}if(q.$applyConfigs){if(c){Ext.apply(q,c)}}else{q.initConfig(c)}if(a){q.listeners=null}},onClassExtended:function(b,a){if(!b.HasListeners){h.prepareClass(b,b.prototype.$observableMixedIn?undefined:a)}},$eventOptions:{scope:1,delay:1,buffer:1,onFrame:1,single:1,args:1,destroyable:1,priority:1,order:1},$orderToPriority:{before:100,current:0,after:-100},_addDeclaredListeners:function(b){var a=this;if(b instanceof Array){Ext.each(b,a._addDeclaredListeners,a)}else{a._addedDeclaredListeners=true;a.addListener(b)}return a._addedDeclaredListeners},addManagedListener:function(c,q,e,b,a,r){var f=this,d=f.managedListeners=f.managedListeners||[],s,t;if(typeof q!=="string"){t=arguments.length>4?a:q;a=q;for(q in a){if(a.hasOwnProperty(q)){s=a[q];if(!c.$eventOptions[q]){f.addManagedListener(c,q,s.fn||s,s.scope||a.scope||b,s.fn?s:t,true)}}}if(a&&a.destroyable){return new g(f,c,a)}}else{if(e!==k){c.doAddListener(q,e,b,a,null,f,f);if(!r&&a&&a.destroyable){return new g(f,c,q,e,b)}}}},removeManagedListener:function(c,s,e,b){var f=this,a,t,d,u,r;if(typeof s!=="string"){a=s;for(s in a){if(a.hasOwnProperty(s)){t=a[s];if(!c.$eventOptions[s]){f.removeManagedListener(c,s,t.fn||t,t.scope||a.scope||b)}}}}else{d=f.managedListeners?f.managedListeners.slice():[];s=Ext.canonicalEventName(s);for(r=0,u=d.length;r<u;r++){f.removeManagedListenerItem(false,d[r],c,s,e,b)}}},fireEvent:function(a){return this.fireEventArgs(a,i.call(arguments,1))},resolveListenerScope:function(a){var b=Ext._namedScopes[a];if(b){if(b.isSelf||b.isThis){a=null}}return a||this},fireEventArgs:function(f,d){f=Ext.canonicalEventName(f);var a=this,c=a.events,b=c&&c[f],e=true;if(a.hasListeners[f]){e=a.doFireEvent(f,d||l,b?b.bubble:false)}return e},fireAction:function(e,c,a,b,d,f){if(typeof a==="string"&&!b){a=this[a]}d=d?Ext.Object.chain(d):{};d.single=true;d.priority=((f==="after")?-99.5:99.5);this.doAddListener(e,a,b,d);this.fireEventArgs(e,c)},$eventedController:{_paused:1,pause:function(){++this._paused},resume:function(){var b=this,c=b.fn,d=b.scope,a=b.fnArgs,n=b.owner,e,f;if(!--b._paused){if(c){e=Ext.Array.slice(a||b.args);if(a===false){e.shift()}b.fn=null;e.push(b);if(Ext.isFunction(c)){f=c.apply(d,e)}else{if(d&&Ext.isString(c)&&Ext.isFunction(d[c])){f=d[c].apply(d,e)}}if(f===false){return false}}if(!b._paused){return b.owner.fireEventArgs(b.eventName,b.args)}}}},fireEventedAction:function(s,q,d,a,e){var f=this,b=f.eventedBeforeEventNames,r=b[s]||(b[s]="before"+s),t=Ext.apply({owner:f,eventName:s,fn:d,scope:a,fnArgs:e,args:q},f.$eventedController),c;q.push(t);c=f.fireEventArgs(r,q);q.pop();if(c===false){return false}return t.resume()},doFireEvent:function(e,c,f){var a=this,n,b,d=true;do{if(a.eventsSuspended){if((n=a.eventQueue)){n.push([e,c])}return d}else{b=a.events&&a.events[e];if(b&&b!==true){if((d=b.fire.apply(b,c))===false){break}}}}while(f&&(a=a.getBubbleParent()));return d},getBubbleParent:function(){var a=this,b=a.getBubbleTarget&&a.getBubbleTarget();if(b&&b.isObservable){return b}return null},addListener:function(u,b,a,z,w,y){var c=this,t=Ext._namedScopes,x,d,f,e,v;if(typeof u!=="string"){z=u;a=z.scope;d=a&&t[a];f=d&&d.isSelf;v=((c.isComponent||c.isWidget)&&z.element)?c.$elementEventOptions:c.$eventOptions;for(u in z){x=z[u];if(!v[u]){e=x.scope;if(e&&f){d=t[e];if(d&&d.isController){e="self.controller"}}c.doAddListener(u,x.fn||x,e||a,x.fn?x:z,w,y)}}if(z&&z.destroyable){return new g(c,z)}}else{c.doAddListener(u,b,a,z,w,y);if(z&&z.destroyable){return new g(c,u,b,a,z)}}return c},removeListener:function(d,b,c,n){var a=this,e,f;if(typeof d!=="string"){f=d;n=n||a.$eventOptions;for(d in f){if(f.hasOwnProperty(d)){e=f[d];if(!a.$eventOptions[d]){a.doRemoveListener(d,e.fn||e,e.scope||f.scope)}}}}else{a.doRemoveListener(d,b,c)}return a},onBefore:function(d,a,b,c){return this.addListener(d,a,b,c,"before")},onAfter:function(d,a,b,c){return this.addListener(d,a,b,c,"after")},unBefore:function(d,a,b,c){return this.removeListener(d,a,b,c,"before")},unAfter:function(d,a,b,c){return this.removeListener(d,a,b,c,"after")},addBeforeListener:function(){return this.onBefore.apply(this,arguments)},addAfterListener:function(){return this.onAfter.apply(this,arguments)},removeBeforeListener:function(){return this.unBefore.apply(this,arguments)},removeAfterListener:function(){return this.unAfter.apply(this,arguments)},clearListeners:function(){var a=this,c=a.events,e=a.hasListeners,b,d;if(c){for(d in c){if(c.hasOwnProperty(d)){b=c[d];if(b.isEvent){delete e[d];b.clearListeners()}}}a.events=null}a.clearManagedListeners()},clearManagedListeners:function(){var a=this,c=a.managedListeners?a.managedListeners.slice():[],b=0,d=c.length;for(;b<d;b++){a.removeManagedListenerItem(true,c[b])}a.managedListeners=[]},removeManagedListenerItem:function(e,f,a,d,b,c){if(e||(f.item===a&&f.ename===d&&(!b||f.fn===b)&&(!c||f.scope===c))){f.item.doRemoveListener(f.ename,f.fn,f.scope,f.options);if(!e){Ext.Array.remove(this.managedListeners,f)}}},hasListener:function(a){a=Ext.canonicalEventName(a);return !!this.hasListeners[a]},isSuspended:function(a){var b=this.eventsSuspended>0,c=this.events;if(!b&&a&&c){a=c[a];if(a&&a.isEvent){return a.isSuspended()}}return b},suspendEvents:function(a){++this.eventsSuspended;if(a&&!this.eventQueue){this.eventQueue=[]}},suspendEvent:function(){var a=this,c=a.events,f=arguments.length,d,b,e;for(d=0;d<f;d++){e=arguments[d];e=Ext.canonicalEventName(e);b=c[e];if(!b||!b.isEvent){b=a._initEvent(e)}b.suspend()}},resumeEvent:function(){var b=this.events||0,d=b&&arguments.length,c,a;for(c=0;c<d;c++){a=b[arguments[c]];if(a&&a.resume){a.resume()}}},resumeEvents:function(e){var d=this,a=d.eventQueue,b,c;if(d.eventsSuspended&&!--d.eventsSuspended){delete d.eventQueue;if(!e&&a){b=a.length;for(c=0;c<b;c++){d.fireEventArgs.apply(d,a[c])}}}},relayEvents:function(b,a,q){var c=this,f=a.length,r=0,s,e,d={};if(Ext.isObject(a)){for(r in a){e=a[r];d[r]=c.createRelayer(e)}}else{for(;r<f;r++){s=a[r];d[s]=c.createRelayer(q?q+s:s)}}c.mon(b,d,null,null,undefined);return new g(c,b,d)},createRelayer:function(c,b){var a=this;return function(){return a.fireEventArgs.call(a,c,b?i.apply(arguments,b):arguments)}},enableBubble:function(p){if(p){var a=this,q=(typeof p=="string")?arguments:p,d=a.events,b=d&&q.length,e,c,f;for(f=0;f<b;++f){e=q[f];e=Ext.canonicalEventName(e);c=d[e];if(!c||!c.isEvent){c=a._initEvent(e)}a.hasListeners._incr_(e);c.bubble=true}}},destroy:function(){this.clearListeners();this.callParent()},privates:{doAddListener:function(s,e,b,a,t,u,r){var f=this,v,c,d;t=t||(a&&a.order);if(t){d=(a&&a.priority);if(!d){a=a?Ext.Object.chain(a):{};a.priority=f.$orderToPriority[t]}}s=Ext.canonicalEventName(s);if(!r&&(b&&b.isObservable&&(b!==f))){r=b}if(r){c=r.managedListeners=r.managedListeners||[];c.push({item:f,ename:s,fn:e,scope:b,options:a})}v=(f.events||(f.events={}))[s];if(!v||!v.isEvent){v=f._initEvent(s)}if(e!==k){if(v.addListener(e,b,a,u,r)){f.hasListeners._incr_(s)}}},doRemoveListener:function(e,c,d){var a=this,f=a.events,b;e=Ext.canonicalEventName(e);b=f&&f[e];if(b&&b.isEvent){if(b.removeListener(c,d)){a.hasListeners._decr_(e)}}},_initEvent:function(a){return(this.events[a]=new Ext.util.Event(this,a))}},deprecated:{"5.0":{methods:{addEvents:null}}}}},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.mixin,"Observable"],function(){var g=this,j=g.prototype,l=function(){},i=function(b){if(!b.HasListeners){var a=b.prototype;a.$observableMixedIn=1;g.prepareClass(b,this);b.onExtended(function(d,c){g.prepareClass(d,null,c)});if(a.onClassMixedIn){Ext.override(b,{onClassMixedIn:function(c){i.call(this,c);this.callParent(arguments)}})}else{a.onClassMixedIn=function(c){i.call(this,c)}}}h.call(this,b)},h=j.onClassMixedIn;l.prototype={_decr_:function(a,b){if(b==null){b=1}if(!(this[a]-=b)){delete this[a]}},_incr_:function(a){if(this.hasOwnProperty(a)){++this[a]}else{this[a]=1}}};j.HasListeners=g.HasListeners=l;g.createAlias({on:"addListener",un:"removeListener",mon:"addManagedListener",mun:"removeManagedListener",setListeners:"addListener"});g.observeClass=g.observe;function k(a){var b=(this.methodEvents=this.methodEvents||{})[a],e,f,d,c=this,n;if(!b){this.methodEvents[a]=b={};b.originalFn=this[a];b.methodName=a;b.before=[];b.after=[];n=function(m,q,r){if((f=m.apply(q||c,r))!==undefined){if(typeof f=="object"){if(f.returnValue!==undefined){e=f.returnValue}else{e=f}d=!!f.cancel}else{if(f===false){d=true}else{e=f}}}};this[a]=function(){var r=Array.prototype.slice.call(arguments,0),s,m,t;e=f=undefined;d=false;for(m=0,t=b.before.length;m<t;m++){s=b.before[m];n(s.fn,s.scope,r);if(d){return e}}if((f=b.originalFn.apply(c,r))!==undefined){e=f}for(m=0,t=b.after.length;m<t;m++){s=b.after[m];n(s.fn,s.scope,r);if(d){return e}}return e}}return b}Ext.apply(j,{onClassMixedIn:i,beforeMethod:function(a,b,c){k.call(this,a).before.push({fn:b,scope:c})},afterMethod:function(a,b,c){k.call(this,a).after.push({fn:b,scope:c})},removeMethodListener:function(a,c,d){var b=this.getMethodEvent(a),e,f;for(e=0,f=b.before.length;e<f;e++){if(b.before[e].fn==c&&b.before[e].scope==d){Ext.Array.erase(b.before,e,1);return}}for(e=0,f=b.after.length;e<f;e++){if(b.after[e].fn==c&&b.after[e].scope==d){Ext.Array.erase(b.after,e,1);return}}},toggleEventLogging:function(a){Ext.util.Observable[a?"capture":"releaseCapture"](this,function(b){if(Ext.isDefined(Ext.global.console)){Ext.global.console.log(b,arguments)}})}})}));(Ext.cmd.derive("Ext.util.HashMap",Ext.Base,{generation:0,config:{keyFn:null},constructor:function(e){var f=this,d;f.mixins.observable.constructor.call(f,e);f.clear(true);d=f.getKeyFn();if(d){f.getKey=d}},getCount:function(){return this.length},getData:function(d,c){if(c===undefined){c=d;d=this.getKey(c)}return[d,c]},getKey:function(b){return b.id},add:function(e,f){var d=this;if(arguments.length===1){f=e;e=d.getKey(f)}if(d.containsKey(e)){return d.replace(e,f)}d.map[e]=f;++d.length;d.generation++;if(d.hasListeners.add){d.fireEvent("add",d,e,f)}return f},replace:function(f,i){var j=this,h=j.map,g;if(arguments.length===1){i=f;f=j.getKey(i)}if(!j.containsKey(f)){j.add(f,i)}g=h[f];h[f]=i;j.generation++;if(j.hasListeners.replace){j.fireEvent("replace",j,f,i,g)}return i},remove:function(c){var d=this.findKey(c);if(d!==undefined){return this.removeAtKey(d)}return false},removeAtKey:function(e){var d=this,f;if(d.containsKey(e)){f=d.map[e];delete d.map[e];--d.length;d.generation++;if(d.hasListeners.remove){d.fireEvent("remove",d,e,f)}return true}return false},get:function(d){var c=this.map;return c.hasOwnProperty(d)?c[d]:undefined},clear:function(d){var c=this;if(d||c.generation){c.map={};c.length=0;c.generation=d?0:c.generation+1}if(d!==true&&c.hasListeners.clear){c.fireEvent("clear",c)}return c},containsKey:function(d){var c=this.map;return c.hasOwnProperty(d)&&c[d]!==undefined},contains:function(b){return this.containsKey(this.findKey(b))},getKeys:function(){return this.getArray(true)},getValues:function(){return this.getArray(false)},getArray:function(g){var f=[],e,h=this.map;for(e in h){if(h.hasOwnProperty(e)){f.push(g?e:h[e])}}return f},each:function(i,j){var g=Ext.apply({},this.map),f,h=this.length;j=j||this;for(f in g){if(g.hasOwnProperty(f)){if(i.call(j,f,g[f],h)===false){break}}}return this},clone:function(){var f=new this.self(this.initialConfig),d=this.map,e;f.suspendEvents();for(e in d){if(d.hasOwnProperty(e)){f.add(e,d[e])}}f.resumeEvents();return f},findKey:function(d){var e,f=this.map;for(e in f){if(f.hasOwnProperty(e)&&f[e]===d){return e}}return undefined},destroy:function(){this.callParent();this.map=null}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.util,"HashMap"],function(c){var d=c.prototype;d.removeByKey=d.removeAtKey}));(Ext.cmd.derive("Ext.promise.Consequence",Ext.Base,function(b){return{promise:null,deferred:null,onFulfilled:null,onRejected:null,onProgress:null,constructor:function(f,a,g){var h=this;h.onFulfilled=f;h.onRejected=a;h.onProgress=g;h.deferred=new Ext.promise.Deferred();h.promise=h.deferred.promise},trigger:function(f,g){var h=this,a=h.deferred;switch(f){case"fulfill":h.propagate(g,h.onFulfilled,a,a.resolve);break;case"reject":h.propagate(g,h.onRejected,a,a.reject);break}},update:function(a){if(Ext.isFunction(this.onProgress)){a=this.onProgress(a)}this.deferred.update(a)},propagate:function(g,f,a,h){if(Ext.isFunction(f)){this.schedule(function(){try{a.resolve(f(g))}catch(c){a.reject(c)}})}else{h.call(this.deferred,g)}},schedule:function(d){var a=b.queueSize++;b.queue[a]=d;if(!a){Ext.asap(b.dispatch)}},statics:{queue:new Array(10000),queueSize:0,dispatch:function(){var a=b.queue,e,f;for(f=0;f<b.queueSize;++f){e=a[f];a[f]=null;e()}b.queueSize=0}}}},1,0,0,0,0,0,[Ext.promise,"Consequence"],0));(Ext.cmd.derive("Ext.promise.Deferred",Ext.Base,{promise:null,consequences:[],completed:false,completionAction:null,completionValue:null,constructor:function(){var b=this;b.promise=new Ext.promise.Promise(b);b.consequences=[];b.completed=false;b.completionAction=null;b.completionValue=null},then:function(h,g,i){var j=this,f=new Ext.promise.Consequence(h,g,i);if(j.completed){f.trigger(j.completionAction,j.completionValue)}else{j.consequences.push(f)}return f.promise},resolve:function(i){var j=this,g,e;if(j.completed){return}try{if(i===j.promise){throw new TypeError("A Promise cannot be resolved with itself.")}if((Ext.isObject(i)||Ext.isFunction(i))&&Ext.isFunction(e=i.then)){g=false;try{e.call(i,function(a){if(!g){g=true;j.resolve(a)}},function(a){if(!g){g=true;j.reject(a)}})}catch(h){if(!g){j.reject(h)}}}else{j.complete("fulfill",i)}}catch(h){j.reject(h)}},reject:function(b){if(this.completed){return}this.complete("reject",b)},update:function(f){var h=this.consequences,i,j,g;if(this.completed){return}for(j=0,g=h.length;j<g;j++){i=h[j];i.update(f)}},complete:function(k,l){var m=this,j=m.consequences,n,h,i;m.completionAction=k;m.completionValue=l;m.completed=true;for(h=0,i=j.length;h<i;h++){n=j[h];n.trigger(m.completionAction,m.completionValue)}m.consequences=null}},1,0,0,0,0,0,[Ext.promise,"Deferred"],0));(Ext.cmd.derive("Ext.promise.Promise",Ext.Base,function(c){var d;return{statics:{CancellationError:Ext.global.CancellationError||Error,_ready:function(){d=Ext.promise.Deferred},all:function(a){return c.when(a).then(function(s){var b=new d(),p=s.length,r=new Array(p),n,t,i,q,o;if(!p){b.resolve(r)}else{i=function(f,e){return c.when(f).then(function(g){r[e]=g;if(!--p){b.resolve(r)}return g},function(g){return b.reject(g)})};for(n=q=0,o=s.length;q<o;n=++q){t=s[n];if(n in s){i(t,n)}else{p--}}}return b.promise})},is:function(a){return(Ext.isObject(a)||Ext.isFunction(a))&&Ext.isFunction(a.then)},rethrowError:function(a){Ext.asap(function(){throw a})},when:function(a){var b=new Ext.promise.Deferred();b.resolve(a);return b.promise}},owner:null,constructor:function(a){this.owner=a},then:function(a,j,b,i){var h;if(arguments.length===1&&Ext.isObject(arguments[0])){h=arguments[0];a=h.success;j=h.failure;b=h.progress;i=h.scope}if(i){if(a){a=Ext.Function.bind(a,i)}if(j){j=Ext.Function.bind(j,i)}if(b){b=Ext.Function.bind(b,i)}}return this.owner.then(a,j,b)},otherwise:function(f,b){var a;if(arguments.length===1&&Ext.isObject(arguments[0])){a=arguments[0];f=a.fn;b=a.scope}if(b!=null){f=Ext.Function.bind(f,b)}return this.owner.then(null,f)},always:function(f,b){var a;if(arguments.length===1&&Ext.isObject(arguments[0])){a=arguments[0];f=a.fn;b=a.scope}if(b!=null){f=Ext.Function.bind(f,b)}return this.owner.then(function(h){try{f()}catch(e){c.rethrowError(e)}return h},function(e){try{f()}catch(h){c.rethrowError(h)}throw e})},done:function(){this.owner.then(null,c.rethrowError)},cancel:function(a){if(a==null){a=null}this.owner.reject(new this.self.CancellationError(a))},log:function(a){if(a==null){a=""}return this._owner.then(function(b){Ext.log(""+(a||"Promise")+" resolved with value: "+b);return b},function(b){Ext.log(""+(a||"Promise")+" rejected with reason: "+b);throw b})}}},1,0,0,0,0,0,[Ext.promise,"Promise"],function(b){b._ready()}));(Ext.cmd.derive("Ext.Promise",Ext.Base,function(){var b;return{statics:{_ready:function(){b=Ext.promise.Promise},all:function(){return b.all.apply(b,arguments)},race:function(){},reject:function(d){var a=new Ext.promise.Deferred();a.reject(d);return a.promise},resolve:function(d){var a=new Ext.promise.Deferred();a.resolve(d);return a.promise}},constructor:function(d){var a=new Ext.promise.Deferred();d(a.resolve.bind(a),a.reject.bind(a));return a.promise}}},1,0,0,0,0,0,[Ext,"Promise"],function(d){var c=Ext.global.Promise;if(c&&c.resolve){Ext.Promise=c}else{d._ready()}}));(Ext.cmd.derive("Ext.Deferred",Ext.promise.Deferred,function(d){var f,e;return{statics:{_ready:function(){f=Ext.promise.Promise;e=Ext.Promise.resolve},all:function(){return f.all.apply(f,arguments)},any:function(a){return d.some(a,1).then(function(b){return b[0]},function(b){if(b instanceof Error&&b.message==="Too few Promises were resolved."){Ext.raise("No Promises were resolved.")}else{throw b}})},delay:function(c,a){var b;if(arguments.length===1){a=c;c=undefined}a=Math.max(a,0);b=new d();setTimeout(function(){b.resolve(c)},a);return b.promise},map:function(b,a){return d.resolved(b).then(function(u){var c,p,v,r,i,t,s,q;r=u.length;t=new Array(u.length);c=new d();if(!r){c.resolve(t)}else{i=function(h,g){return d.resolved(h).then(function(j){return a(j,g,t)}).then(function(j){t[g]=j;if(!--r){c.resolve(t)}return j},function(j){return c.reject(j)})};for(p=s=0,q=u.length;s<q;p=++s){v=u[p];if(p in u){i(v,p)}else{r--}}}return c.promise})},memoize:function(a,b,h){var c=Ext.Function.memoize(a,b,h);return function(){return d.all(Ext.Array.slice(arguments)).then(function(g){return c.apply(b,g)})}},parallel:function(b,a){if(a==null){a=null}var c=Ext.Array.slice(arguments,2);return d.map(b,function(h){if(!Ext.isFunction(h)){throw new Error("Invalid parameter: expected a function.")}return h.apply(a,c)})},pipeline:function(b,c,a){if(a==null){a=null}return d.reduce(b,function(i,j){if(!Ext.isFunction(j)){throw new Error("Invalid parameter: expected a function.")}return j.call(a,i)},c)},reduce:function(c,b,h){var a=arguments.length===3;return d.resolved(c).then(function(g){var j=[g,function(m,i,n){return d.resolved(m).then(function(k){return d.resolved(i).then(function(l){return b(k,l,n,g)})})}];if(a){j.push(h)}return Ext.Array.reduce.apply(Ext.Array,j)})},rejected:function(a){var b=new Ext.Deferred();b.reject(a);return b.promise},resolved:function(a){var b=new Ext.Deferred();b.resolve(a);return b.promise},sequence:function(b,a){if(a==null){a=null}var c=Ext.Array.slice(arguments,2);return d.reduce(b,function(j,i){if(!Ext.isFunction(i)){throw new Error("Invalid parameter: expected a function.")}return d.resolved(i.apply(a,c)).then(function(g){j.push(g);return j})},[])},some:function(a,b){return d.resolved(a).then(function(x){var c,t,r,i,y,z,v,s,w,u;s=[];v=b;z=(x.length-v)+1;c=new d();if(x.length<b){c.reject(new Error("Too few Promises were resolved."))}else{i=function(g){if(v>0){s.push(g)}v--;if(v===0){c.resolve(s)}return g};r=function(g){z--;if(z===0){c.reject(new Error("Too few Promises were resolved."))}return g};for(t=w=0,u=x.length;w<u;t=++w){y=x[t];if(t in x){d.resolved(y).then(i,r)}}}return c.promise})},timeout:function(h,b){var c=new d(),a;a=setTimeout(function(){if(a){c.reject(new Error("Promise timed out."))}},b);d.resolved(h).then(function(g){clearTimeout(a);a=null;c.resolve(g)},function(g){clearTimeout(a);a=null;c.reject(g)});return c.promise}}}},0,0,0,0,0,0,[Ext,"Deferred"],function(b){b._ready()}));Ext.Factory=function(d){var c=this;c.aliasPrefix=d+".";c.cache={};c.name=d.replace(c.fixNameRe,c.fixNameFn);c.type=d};Ext.Factory.prototype={defaultProperty:"type",instanceProp:"isInstance",create:function(p,n){var k=this,r=Ext.ClassManager,q=k.cache,o,l,m,j;if(p){if(p[k.instanceProp]){return p}if(typeof p==="string"){j=p;p={};p[k.defaultProperty]=j}l=p.xclass;j=p.type}if(l){if(!(m=r.get(l))){return r.instantiate(l,p)}}else{if(!(j=j||n||k.defaultType)){m=k.defaultClass}if(!m&&!(m=q[j])){o=k.aliasPrefix+j;l=r.getNameByAlias(o);if(!(m=l&&r.get(l))){return r.instantiateByAlias(o,p)}q[j]=m}}return m.isInstance?m:new m(p)},fixNameRe:/\.[a-z]/ig,fixNameFn:function(b){return b.substring(1).toUpperCase()},clearCache:function(){this.cache={}}};Ext.Factory.define=function(i,k){var h=Ext.Factory,g,l,j;if(i.constructor===Object){Ext.Object.each(i,h.define,h)}else{l=new Ext.Factory(i);if(k){if(k.constructor===Object){Ext.apply(l,k);if(typeof(g=l.xclass)==="string"){l.defaultClass=Ext.ClassManager.get(g)}}else{l.defaultType=k}}h[l.name]=j=l.create.bind(l);j.instance=l}return j};(Ext.cmd.derive("Ext.mixin.Factoryable",Ext.Base,{mixinId:"factoryable",onClassMixedIn:function(k){var l=k.prototype,j=l.factoryConfig,m=l.alias,n={},h,i;m=m&&m.length&&m[0];if(m&&(h=m.lastIndexOf("."))>0){n.type=m.substring(0,h);n.defaultType=m.substring(h+1)}if(j){delete l.factoryConfig;Ext.apply(n,j)}i=Ext.Factory.define(n.type,n);if(k.create===Ext.Base.create){k.create=i}}},0,0,0,0,0,0,[Ext.mixin,"Factoryable"],0));(Ext.cmd.derive("Ext.data.request.Base",Ext.Base,{factoryConfig:{type:"request",defaultType:"ajax"},result:null,success:null,timer:null,constructor:function(d){var c=this;Ext.apply(c,d.options||{},d.ownerConfig);c.id=++Ext.data.Connection.requestId;c.owner=d.owner;c.options=d.options;c.requestOptions=d.requestOptions},start:function(){var d=this,c=d.getTimeout();if(c&&d.async){d.timer=Ext.defer(d.onTimeout,c,d)}},abort:function(){var b=this;b.clearTimer();if(!b.timedout){b.aborted=true}b.abort=Ext.emptyFn},createDeferred:function(){return(this.deferred=new Ext.Deferred())},getDeferred:function(){return this.deferred||this.createDeferred()},getPromise:function(){return this.getDeferred().promise},then:function(){var b=this.getPromise();return b.then.apply(b,arguments)},onComplete:function(){var f=this,d=f.deferred,e=f.result;f.clearTimer();if(d){if(f.success){d.resolve(e)}else{d.reject(e)}}},onTimeout:function(){var b=this;b.timedout=true;b.timer=null;b.abort(true)},getTimeout:function(){return this.timeout},clearTimer:function(){var b=this.timer;if(b){clearTimeout(b);this.timer=null}},destroy:function(){var b=this;b.abort();b.owner=b.options=b.requestOptions=b.result=null;b.callParent()},privates:{createException:function(){var c=this,d;d={request:c,requestId:c.id,status:c.aborted?-1:0,statusText:c.aborted?"transaction aborted":"communication failure",getResponseHeader:c._getHeader,getAllResponseHeaders:c._getHeaders};if(c.aborted){d.aborted=true}if(c.timedout){d.timedout=true}return d},_getHeader:function(d){var c=this.headers;return c&&c[d.toLowerCase()]},_getHeaders:function(){return this.headers}}},1,0,0,0,0,[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.request,"Base"],0));(Ext.cmd.derive("Ext.data.flash.BinaryXhr",Ext.Base,{statics:{flashPluginActivated:function(){Ext.data.flash.BinaryXhr.flashPluginActive=true;Ext.data.flash.BinaryXhr.flashPlugin=document.getElementById("ext-flash-polyfill");Ext.GlobalEvents.fireEvent("flashready")},flashPluginActive:false,flashPluginInjected:false,connectionIndex:1,liveConnections:{},flashPlugin:null,onFlashStateChange:function(g,h,e){var f;f=this.liveConnections[Number(g)];if(f){f.onFlashStateChange(h,e)}},registerConnection:function(c){var d=this.connectionIndex;this.conectionIndex=this.connectionIndex+1;this.liveConnections[d]=c;return d},injectFlashPlugin:function(){var d=this,e,f;d.flashPolyfillEl=Ext.getBody().appendChild({id:"ext-flash-polyfill",cn:[{tag:"p",html:"To view this page ensure that Adobe Flash Player version 11.1.0 or greater is installed."},{tag:"a",href:"http://www.adobe.com/go/getflashplayer",cn:[{tag:"img",src:window.location.protocol+"//www.adobe.com/images/shared/download_buttons/get_flash_player.gif",alt:"Get Adobe Flash player"}]}]});e=[Ext.Loader.getPath("Ext.data.Connection"),"../../../plugins/flash/swfobject.js"].join("/");f="/plugins/flash/FlashPlugin.swf";if(Ext.flashPluginPath){f=Ext.flashPluginPath}Ext.Loader.loadScript({url:e,onLoad:function(){var i="11.4.0";var b="playerProductInstall.swf";var j={};var a={};a.quality="high";a.bgcolor="#ffffff";a.allowscriptaccess="sameDomain";a.allowfullscreen="true";var c={};c.id="ext-flash-polyfill";c.name="polyfill";c.align="middle";swfobject.embedSWF(f,"ext-flash-polyfill","0","0",i,b,j,a,c)},onError:function(){},scope:d});Ext.data.flash.BinaryXhr.flashPluginInjected=true}},readyState:0,status:0,statusText:"",responseBytes:null,javascriptId:null,constructor:function(d){if(!Ext.data.flash.BinaryXhr.flashPluginInjected){Ext.data.flash.BinaryXhr.injectFlashPlugin()}var c=this;Ext.apply(c,d);c.requestHeaders={}},abort:function(){var b=this;if(b.readyState==4){return}b.aborted=true;if(!Ext.data.flash.BinaryXhr.flashPluginActive){Ext.GlobalEvents.removeListener("flashready",b.onFlashReady,b);return}Ext.data.flash.BinaryXhr.flashPlugin.abortRequest(b.javascriptId);delete Ext.data.flash.BinaryXhr.liveConnections[b.javascriptId]},getAllResponseHeaders:function(){var b=[];Ext.Object.each(this.responseHeaders,function(a,d){b.push(a+": "+d)});return b.join("\r\n")},getResponseHeader:function(c){var d=this.responseHeaders;return(d&&d[c])||null},open:function(i,l,k,h,g){var j=this;j.method=i;j.url=l;j.async=k!==false;j.user=h;j.password=g},overrideMimeType:function(b){this.mimeType=b},send:function(d){var c=this;c.body=d;if(!Ext.data.flash.BinaryXhr.flashPluginActive){Ext.GlobalEvents.addListener("flashready",c.onFlashReady,c)}else{this.onFlashReady()}},onFlashReady:function(){var f=this,d,e;f.javascriptId=Ext.data.flash.BinaryXhr.registerConnection(f);d={method:f.method,url:f.url,user:f.user,password:f.password,mimeType:f.mimeType,requestHeaders:f.requestHeaders,body:f.body,javascriptId:f.javascriptId};e=Ext.data.flash.BinaryXhr.flashPlugin.postBinary(d)},setReadyState:function(c){var d=this;if(d.readyState!=c){d.readyState=c;d.onreadystatechange()}},setRequestHeader:function(c,d){this.requestHeaders[c]=d},onreadystatechange:Ext.emptyFn,parseData:function(c){var d=this;this.status=c.status||0;d.responseHeaders={};if(d.mimeType){d.responseHeaders["content-type"]=d.mimeType}if(c.reason=="complete"){this.responseBytes=c.data;d.responseHeaders["content-length"]=c.data.length}else{if(c.reason=="error"||c.reason=="securityError"){this.statusText=c.text;d.responseHeaders["content-length"]=0}}},onFlashStateChange:function(f,d){var e=this;if(f==4){e.parseData(d);delete Ext.data.flash.BinaryXhr.liveConnections[e.javascriptId]}e.setReadyState(f)}},1,0,0,0,0,0,[Ext.data.flash,"BinaryXhr"],0));(Ext.cmd.derive("Ext.data.request.Ajax",Ext.data.request.Base,{statics:{parseStatus:function(e){e=e==1223?204:e;var f=(e>=200&&e<300)||e==304,d=false;if(!f){switch(e){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:d=true;break}}return{success:f,isException:d}}},start:function(l){var n=this,h=n.options,i=n.requestOptions,m=n.isXdr,j,k;j=n.xhr=n.openRequest(h,i,n.async,n.username,n.password);if(!m){k=n.setupHeaders(j,h,i.data,i.params)}if(n.async){if(!m){j.onreadystatechange=Ext.Function.bind(n.onStateChange,n)}}if(m){n.processXdrRequest(n,j)}Ext.data.request.Base.prototype.start.call(this,l);j.send(l);if(!n.async){return n.onComplete()}return n},abort:function(e){var f=this,g=f.xhr;if(e||f.isLoading()){try{g.onreadystatechange=null}catch(h){g.onreadystatechange=Ext.emptyFn}g.abort();Ext.data.request.Base.prototype.abort.call(this,e);f.onComplete();f.cleanup()}},cleanup:function(){this.xhr=null;delete this.xhr},isLoading:function(){var f=this,g=f.xhr,e=g&&g.readyState,h=Ext.data.flash&&Ext.data.flash.BinaryXhr;if(!g||f.aborted||f.timedout){return false}if(h&&g instanceof h){return e!==4}return e!==0&&e!==4},openRequest:function(n,i,m,j,h){var l=this,k=l.newRequest(n);if(j){k.open(i.method,i.url,m,j,h)}else{if(l.isXdr){k.open(i.method,i.url)}else{k.open(i.method,i.url,m)}}if(n.binary||l.binary){if(window.Uint8Array){k.responseType="arraybuffer"}else{if(k.overrideMimeType){k.overrideMimeType("text/plain; charset=x-user-defined")}}}if(n.withCredentials||l.withCredentials){k.withCredentials=true}return k},newRequest:function(e){var d=this,f;if(e.binaryData){if(window.Uint8Array){f=d.getXhrInstance()}else{f=new Ext.data.flash.BinaryXhr()}}else{if(d.cors&&Ext.isIE9m){f=d.getXdrInstance();d.isXdr=true}else{f=d.getXhrInstance();d.isXdr=false}}return f},setupHeaders:function(p,e,x,y){var t=this,A=Ext.apply({},e.headers||{},t.defaultHeaders),q=t.defaultPostHeader,s=e.jsonData,B=e.xmlData,u="Content-Type",z=t.useDefaultXhrHeader,r,w;if(!A.hasOwnProperty(u)&&(x||y)){if(x){if(e.rawData){q="text/plain"}else{if(B&&Ext.isDefined(B)){q="text/xml"}else{if(s&&Ext.isDefined(s)){q="application/json"}}}}A[u]=q}if(z&&!A["X-Requested-With"]){A["X-Requested-With"]=t.defaultXhrHeader}if(A[u]===undefined||A[u]===null){delete A[u]}try{for(r in A){if(A.hasOwnProperty(r)){w=A[r];p.setRequestHeader(r,w)}}}catch(v){t.owner.fireEvent("exception",r,w)}return A},getXdrInstance:function(){var b;if(Ext.ieVersion>=8){b=new XDomainRequest()}else{Ext.raise({msg:"Your browser does not support CORS"})}return b},getXhrInstance:(function(){var e=[function(){return new XMLHttpRequest()},function(){return new ActiveXObject("MSXML2.XMLHTTP.3.0")},function(){return new ActiveXObject("MSXML2.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")}],j=0,g=e.length,h;for(;j<g;++j){try{h=e[j];h();break}catch(i){}}return h}()),processXdrRequest:function(d,f){var e=this;delete d.headers;d.contentType=d.options.contentType||e.defaultXdrContentType;f.onload=Ext.Function.bind(e.onStateChange,e,[true]);f.onerror=f.ontimeout=Ext.Function.bind(e.onStateChange,e,[false])},processXdrResponse:function(d,c){d.getAllResponseHeaders=function(){return[]};d.getResponseHeader=function(){return""};d.contentType=c.contentType||this.defaultXdrContentType},onStateChange:function(e){var h=this,g=h.xhr,f=Ext.GlobalEvents;if((g&&g.readyState==4)||h.isXdr){h.clearTimer();h.onComplete(e);h.cleanup();if(f.hasListeners.idle){f.fireEvent("idle")}}},onComplete:function(m){var p=this,t=p.owner,l=p.options,n=p.xhr,s={success:false,isException:false},e,o,r;if(!n||p.destroyed){return p.result=s}try{e=Ext.data.request.Ajax.parseStatus(n.status);if(e.success){e.success=n.readyState===4}}catch(q){e=s}o=p.success=p.isXdr?m:e.success;if(o){r=p.createResponse(n);t.fireEvent("requestcomplete",t,r,l);Ext.callback(l.success,l.scope,[r,l])}else{if(e.isException||p.aborted||p.timedout){r=p.createException(n)}else{r=p.createResponse(n)}t.fireEvent("requestexception",t,r,l);Ext.callback(l.failure,l.scope,[r,l])}p.result=r;Ext.callback(l.callback,l.scope,[l,o,r]);t.onRequestComplete(p);Ext.data.request.Base.prototype.onComplete.call(this,m);return r},createResponse:function(n){var p=this,t=p.isXdr,u={},m=t?[]:n.getAllResponseHeaders().replace(/\r\n/g,"\n").split("\n"),r=m.length,l,q,o,s,v;while(r--){l=m[r];q=l.indexOf(":");if(q>=0){o=l.substr(0,q).toLowerCase();if(l.charAt(q+1)==" "){++q}u[o]=l.substr(q+1)}}s={request:p,requestId:p.id,status:n.status,statusText:n.statusText,getResponseHeader:function(a){return u[a.toLowerCase()]},getAllResponseHeaders:function(){return u}};if(t){p.processXdrResponse(s,n)}if(p.binary){s.responseBytes=p.getByteArray(n)}else{s.responseText=n.responseText;s.responseXML=n.responseXML}return s},destroy:function(){this.xhr=null;Ext.data.request.Base.prototype.destroy.call(this)},privates:{getByteArray:function(i){var p=i.response,q=i.responseBody,e=Ext.data.flash&&Ext.data.flash.BinaryXhr,r,l,n,o;if(i instanceof e){r=i.responseBytes}else{if(window.Uint8Array){r=p?new Uint8Array(p):[]}else{if(Ext.isIE9p){try{r=new VBArray(q).toArray()}catch(m){r=[]}}else{if(Ext.isIE){if(!this.self.vbScriptInjected){this.injectVBScript()}getIEByteArray(i.responseBody,r=[])}else{r=[];l=i.responseText;n=l.length;for(o=0;o<n;o++){r.push(l.charCodeAt(o)&255)}}}}}return r},injectVBScript:function(){var b=document.createElement("script");b.type="text/vbscript";b.text=["Function getIEByteArray(byteArray, out)","Dim len, i","len = LenB(byteArray)","For i = 1 to len","out.push(AscB(MidB(byteArray, i, 1)))","Next","End Function"].join("\n");Ext.getHead().dom.appendChild(b);this.self.vbScriptInjected=true}}},0,0,0,0,["request.ajax"],0,[Ext.data.request,"Ajax"],0));(Ext.cmd.derive("Ext.data.request.Form",Ext.data.request.Base,{start:function(g){var h=this,e=h.options,f=h.requestOptions;Ext.data.request.Base.prototype.start.call(this,g);h.form=h.upload(e.form,f.url,f.data,e);return h},abort:function(e){var f=this,g;if(f.isLoading()){try{g=f.frame.dom;if(g.stop){g.stop()}else{g.document.execCommand("Stop")}}catch(h){}}Ext.data.request.Base.prototype.abort.call(this,e);f.onComplete();f.cleanup()},cleanup:function(){var d=this,c=d.frame;if(c){c.un("load",d.onComplete,d);Ext.removeNode(c)}d.frame=d.form=null},isLoading:function(){return !!this.frame},upload:function(M,H,v,I){M=Ext.getDom(M);I=I||{};var x=document.createElement("iframe"),D=Ext.get(x),B=D.id,L=[],K="multipart/form-data",w={target:M.target,method:M.method,encoding:M.encoding,enctype:M.enctype,action:M.action},N=function(b,a){G=document.createElement("input");Ext.fly(G).set({type:"hidden",value:a,name:b});M.appendChild(G);L.push(G)},G,E,z,h,A,F,C,y,J;D.set({name:B,cls:"x-hidden-display",src:Ext.SSL_SECURE_URL,tabIndex:-1});document.body.appendChild(x);if(document.frames){document.frames[B].name=B}Ext.fly(M).set({target:B,method:"POST",enctype:K,encoding:K,action:H||w.action});if(v){E=Ext.Object.fromQueryString(v)||{};for(h in E){if(E.hasOwnProperty(h)){z=E[h];if(Ext.isArray(z)){A=z.length;for(F=0;F<A;F++){N(h,z[F])}}else{N(h,z)}}}}this.frame=D;D.on({load:this.onComplete,scope:this,single:!Ext.isOpera});M.submit();Ext.fly(M).set(w);for(C=L.length,y=0;y<C;y++){Ext.removeNode(L[y])}return M},getDoc:function(){var b=this.frame.dom;return(b&&(b.contentWindow.document||b.contentDocument))||(window.frames[b.id]||{}).document},getTimeout:function(){return this.options.timeout},onComplete:function(){var o=this,s=o.frame,t=o.owner,e=o.options,m,n,l,q,r;if(!s){return}if(o.aborted||o.timedout){o.result=r=o.createException();r.responseXML=null;r.responseText='{success:false,message:"'+Ext.String.trim(r.statusText)+'"}';m=e.failure;l=false}else{try{n=o.getDoc();o.result=r={responseText:"",responseXML:null};if(n){if(Ext.isOpera&&n.location==Ext.SSL_SECURE_URL){return}if(n.body){if((q=n.body.firstChild)&&/pre/i.test(q.tagName)){r.responseText=q.textContent||q.innerText}else{if((q=n.getElementsByTagName("textarea")[0])){r.responseText=q.value}else{r.responseText=n.body.textContent||n.body.innerText}}}r.responseXML=n.XMLDocument||n;m=e.success;l=true;r.status=200}else{Ext.raise("Could not acquire a suitable connection for the file upload service.")}}catch(p){o.result=r=o.createException();r.status=400;r.statusText=(p.message||p.description)+"";r.responseText='{success:false,message:"'+Ext.String.trim(r.statusText)+'"}';r.responseXML=null;m=e.failure;l=false}}o.frame=null;o.success=l;t.fireEvent(l?"requestcomplete":"requestexception",t,r,e);Ext.callback(m,e.scope,[r,e]);Ext.callback(e.callback,e.scope,[e,l,r]);t.onRequestComplete(o);Ext.asap(s.destroy,s);Ext.data.request.Base.prototype.onComplete.call(this)},destroy:function(){this.cleanup();Ext.data.request.Base.prototype.destroy.call(this)}},0,0,0,0,["request.form"],0,[Ext.data.request,"Form"],0));(Ext.cmd.derive("Ext.data.Connection",Ext.Base,{statics:{requestId:0},enctypeRe:/multipart\/form-data/i,config:{url:null,async:true,username:"",password:"",disableCaching:true,withCredentials:false,binary:false,cors:false,isXdr:false,defaultXdrContentType:"text/plain",disableCachingParam:"_dc",timeout:30000,extraParams:null,autoAbort:false,method:null,defaultHeaders:null,defaultPostHeader:"application/x-www-form-urlencoded; charset=UTF-8",useDefaultXhrHeader:true,defaultXhrHeader:"XMLHttpRequest"},constructor:function(b){this.mixins.observable.constructor.call(this,b);this.requests={}},request:function(e){e=e||{};var g=this,f,h;if(g.fireEvent("beforerequest",g,e)!==false){f=g.setOptions(e,e.scope||Ext.global);h=g.createRequest(e,f);return h.start(f.data)}Ext.callback(e.callback,e.scope,[e,undefined,undefined]);return Ext.Deferred.rejected([e,undefined,undefined])},createRequest:function(f,g){var h=this,j=f.type||g.type,i;if(!j){j=h.isFormUpload(f)?"form":"ajax"}if(f.autoAbort||h.getAutoAbort()){h.abort()}i=Ext.Factory.request({type:j,owner:h,options:f,requestOptions:g,ownerConfig:h.getConfig()});h.requests[i.id]=i;h.latestId=i.id;return i},isFormUpload:function(d){var c=this.getForm(d);if(c){return d.isUpload||this.enctypeRe.test(c.getAttribute("enctype"))}return false},getForm:function(b){return Ext.getDom(b.form)},setOptions:function(m,n){var p=this,t=m.params||{},q=p.getExtraParams(),u=m.urlParams,v=m.url||p.getUrl(),r=m.cors,o=m.jsonData,w,x,s;if(r!==undefined){p.setCors(r)}if(Ext.isFunction(t)){t=t.call(n,m)}if(Ext.isFunction(v)){v=v.call(n,m)}v=this.setupUrl(m,v);s=m.rawData||m.binaryData||m.xmlData||o||null;if(o&&!Ext.isPrimitive(o)){s=Ext.encode(s)}if(m.binaryData){if(p.nativeBinaryPostSupport()){s=(new Uint8Array(m.binaryData));if((Ext.isChrome&&Ext.chromeVersion<22)||Ext.isSafari||Ext.isGecko){s=s.buffer}}}if(Ext.isObject(t)){t=Ext.Object.toQueryString(t)}if(Ext.isObject(q)){q=Ext.Object.toQueryString(q)}t=t+((q)?((t)?"&":"")+q:"");u=Ext.isObject(u)?Ext.Object.toQueryString(u):u;t=this.setupParams(m,t);w=(m.method||p.getMethod()||((t||s)?"POST":"GET")).toUpperCase();this.setupMethod(m,w);x=m.disableCaching!==false?(m.disableCaching||p.getDisableCaching()):false;if(w==="GET"&&x){v=Ext.urlAppend(v,(m.disableCachingParam||p.getDisableCachingParam())+"="+(new Date().getTime()))}if((w=="GET"||s)&&t){v=Ext.urlAppend(v,t);t=null}if(u){v=Ext.urlAppend(v,u)}return{url:v,method:w,data:s||t||null}},setupUrl:function(d,e){var f=this.getForm(d);if(f){e=e||f.action}return e},setupParams:function(f,g){var h=this.getForm(f),e;if(h&&!this.isFormUpload(f)){e=Ext.Element.serializeForm(h);g=g?(g+"&"+e):e}return g},setupMethod:function(d,c){if(this.isFormUpload(d)){return"POST"}return c},isLoading:function(b){if(!b){b=this.getLatest()}return b?b.isLoading():false},abort:function(b){if(!b){b=this.getLatest()}if(b&&b.isLoading()){b.abort()}},abortAll:function(){var c=this.requests,d;for(d in c){this.abort(c[d])}},getLatest:function(){var c=this.latestId,d;if(c){d=this.requests[c]}return d||null},clearTimeout:function(b){if(!b){b=this.getLatest()}if(b){b.clearTimer()}},onRequestComplete:function(b){delete this.requests[b.id]},nativeBinaryPostSupport:function(){return Ext.isChrome||(Ext.isSafari&&Ext.isDefined(window.Uint8Array))||(Ext.isGecko&&Ext.isDefined(window.Uint8Array))}},1,0,0,0,0,[["observable",Ext.mixin.Observable]],[Ext.data,"Connection"],0));(Ext.cmd.derive("Ext.Ajax",Ext.data.Connection,{singleton:true,autoAbort:false},0,0,0,0,0,0,[Ext,"Ajax"],0));(Ext.cmd.derive("Ext.AnimationQueue",Ext.Base,{singleton:true,constructor:function(){var b=this;b.queue=[];b.taskQueue=[];b.runningQueue=[];b.idleQueue=[];b.isRunning=false;b.isIdle=true;b.run=Ext.Function.bind(b.run,b);if(Ext.os.is.iOS){Ext.interval(b.watch,500,b)}},start:function(h,e,f){var g=this;g.queue.push(arguments);if(!g.isRunning){if(g.hasOwnProperty("idleTimer")){clearTimeout(g.idleTimer);delete g.idleTimer}if(g.hasOwnProperty("idleQueueTimer")){clearTimeout(g.idleQueueTimer);delete g.idleQueueTimer}g.isIdle=false;g.isRunning=true;g.doStart()}},watch:function(){if(this.isRunning&&Ext.now()-this.lastRunTime>=500){this.run()}},run:function(){var h=this;if(!h.isRunning){return}var g=h.runningQueue,f=Ext.now(),j,i;h.lastRunTime=f;h.frameStartTime=f;g.push.apply(g,h.queue);for(j=0,i=g.length;j<i;j++){h.invoke(g[j])}g.length=0;h.doIterate()},doStart:function(){this.animationFrameId=Ext.Function.requestAnimationFrame(this.run);this.lastRunTime=Ext.now()},doIterate:function(){this.animationFrameId=Ext.Function.requestAnimationFrame(this.run)},doStop:function(){Ext.Function.cancelAnimationFrame(this.animationFrameId)},stop:function(n,o,i){var k=this;if(!k.isRunning){return}var j=k.queue,l=j.length,p,m;for(p=0;p<l;p++){m=j[p];if(m[0]===n&&m[1]===o&&m[2]===i){j.splice(p,1);p--;l--}}if(l===0){k.doStop();k.isRunning=false;k.idleTimer=Ext.defer(k.whenIdle,100,k)}},onIdle:function(l,m,i){var n=this.idleQueue,h,k,j;for(h=0,k=n.length;h<k;h++){j=n[h];if(l===j[0]&&m===j[1]&&i===j[2]){return}}n.push(arguments);if(this.isIdle){this.processIdleQueue()}},unIdle:function(l,m,i){var n=this.idleQueue,h,k,j;for(h=0,k=n.length;h<k;h++){j=n[h];if(l===j[0]&&m===j[1]&&i===j[2]){n.splice(h,1);return true}}return false},queueTask:function(f,d,e){this.taskQueue.push(arguments);this.processTaskQueue()},dequeueTask:function(l,m,i){var n=this.taskQueue,h,k,j;for(h=0,k=n.length;h<k;h++){j=n[h];if(l===j[0]&&m===j[1]&&i===j[2]){n.splice(h,1);h--;k--}}},invoke:function(g){var h=g[0],e=g[1],f=g[2];h=(typeof h=="string"?e[h]:h);if(Ext.isArray(f)){h.apply(e,f)}else{h.call(e,f)}},whenIdle:function(){this.isIdle=true;this.processIdleQueue()},processIdleQueue:function(){if(!this.hasOwnProperty("idleQueueTimer")){this.idleQueueTimer=Ext.defer(this.processIdleQueueItem,1,this)}},processIdleQueueItem:function(){delete this.idleQueueTimer;if(!this.isIdle){return}var d=this.idleQueue,c;if(d.length>0){c=d.shift();this.invoke(c);this.processIdleQueue()}},processTaskQueue:function(){if(!this.hasOwnProperty("taskQueueTimer")){this.taskQueueTimer=Ext.defer(this.processTaskQueueItem,15,this)}},processTaskQueueItem:function(){delete this.taskQueueTimer;var d=this.taskQueue,c;if(d.length>0){c=d.shift();this.invoke(c);this.processTaskQueue()}}},1,0,0,0,0,0,[Ext,"AnimationQueue"],0));(Ext.cmd.derive("Ext.ComponentManager",Ext.Base,{alternateClassName:"Ext.ComponentMgr",singleton:true,count:0,typeName:"xtype",constructor:function(d){var c=this;Ext.apply(c,d||{});c.all={};c.references={};c.onAvailableCallbacks={}},create:function(d,c){if(typeof d==="string"){return Ext.widget(d)}if(d.isComponent){return d}if("xclass" in d){return Ext.create(d.xclass,d)}return Ext.widget(d.xtype||c,d)},get:function(b){return this.all[b]},register:function(g){var h=this,i=h.all,j=g.getId(),f=h.onAvailableCallbacks;i[j]=g;if(g.getReference&&g.getReference()){h.references[j]=g}++h.count;if(!h.hasFocusListener){Ext.on("focus",h.onGlobalFocus,h);h.hasFocusListener=true}f=f&&f[j];if(f&&f.length){h.notifyAvailable(g)}},unregister:function(d){var c=d.getId();if(d.getReference&&d.getReference()){this.references[c]=null;delete this.references[c]}this.all[c]=null;delete this.all[c];this.count--},markReferencesDirty:function(){this.referencesDirty=true},fixReferences:function(){var f=this,d=f.references,e;if(f.referencesDirty){for(e in d){if(d.hasOwnProperty(e)){d[e].fixReference()}}f.referencesDirty=false}},onAvailable:function(j,n,h){var k=this,l=k.onAvailableCallbacks,i=k.all,m;if(j in i){m=i[j];n.call(h||m,m)}else{if(j){if(!Ext.isArray(l[j])){l[j]=[]}l[j].push(function(a){n.call(h||a,a)})}}},notifyAvailable:function(c){var d=this.onAvailableCallbacks[c&&c.getId()]||[];while(d.length){(d.shift())(c)}},each:function(c,d){return Ext.Object.each(this.all,c,d)},getCount:function(){return this.count},getAll:function(){return Ext.Object.getValues(this.all)},getActiveComponent:function(){return Ext.Component.fromElement(Ext.dom.Element.getActiveElement())},onGlobalFocus:function(l){var o=this,e=l.toElement,k=l.fromElement,m=Ext.Component.fromElement(e),j=Ext.Component.fromElement(k),p,n;if(m===j){return}p=o.getCommonAncestor(j,m);if(j&&!(j.destroyed||j.destroying)){if(j.handleBlurEvent){j.handleBlurEvent(l)}for(n=j;n&&n!==p;n=n.getRefOwner()){if(!(n.destroyed||n.destroying)){n.onFocusLeave({event:l.event,type:"focusleave",target:k,relatedTarget:e,fromComponent:j,toComponent:m})}}}if(m&&!m.destroyed){if(m.handleFocusEvent){m.handleFocusEvent(l)}for(n=m;n&&n!==p;n=n.getRefOwner()){n.onFocusEnter({event:l.event,type:"focusenter",relatedTarget:k,target:e,fromComponent:j,toComponent:m})}}},getCommonAncestor:function(c,d){if(c===d){return c}while(c&&!(c.isAncestor(d)||c===d)){c=c.getRefOwner()}return c},privates:{clearAll:function(){this.all={};this.references={};this.onAvailableCallbacks={}},fromElement:function(q,o,p){var l=Ext.getDom(q),r=this.all,n=0,j,m,k;if(typeof o!=="number"){j=Ext.getDom(o);o=Number.MAX_VALUE}while(l&&l.nodeType===1&&n<o&&l!==j){m=l.getAttribute("data-componentid")||l.id;if(m){k=r[m];if(k&&(!p||Ext.ComponentQuery.is(k,p))){return k}n++}l=l.parentNode}return null}},deprecated:{5:{methods:{isRegistered:null,registerType:null}}}},1,0,0,0,0,0,[Ext,"ComponentManager",Ext,"ComponentMgr"],function(){Ext.getCmp=function(b){return Ext.ComponentManager.get(b)}}));Ext.ns("Ext.util").Operators={"=":function(a,d){return a==d},"!=":function(a,d){return a!=d},"^=":function(a,d){return a&&a.substr(0,d.length)==d},"$=":function(a,d){return a&&a.substr(a.length-d.length)==d},"*=":function(a,d){return a&&a.indexOf(d)!==-1},"%=":function(a,d){return(a%d)===0},"|=":function(a,d){return a&&(a==d||a.substr(0,d.length+1)==d+"-")},"~=":function(a,d){return a&&(" "+a+" ").indexOf(" "+d+" ")!=-1}};(Ext.cmd.derive("Ext.util.LruCache",Ext.util.HashMap,{config:{maxSize:null},add:function(g,h){var i=this,j,f;i.removeAtKey(g);f=i.last;j={prev:f,next:null,key:g,value:h};if(f){f.next=j}else{i.first=j}i.last=j;Ext.util.HashMap.prototype.add.call(this,g,j);i.prune();return h},insertBefore:function(g,i,l){var j=this,h,k;if(l=this.map[this.findKey(l)]){h=j.findKey(i);if(h){j.unlinkEntry(k=j.map[h])}else{k={prev:l.prev,next:l,key:g,value:i}}if(l.prev){k.prev.next=k}else{j.first=k}k.next=l;l.prev=k;j.prune();return i}else{return j.add(g,i)}},get:function(d){var c=this.map[d];if(c){if(c.next){this.moveToEnd(c)}return c.value}},removeAtKey:function(b){this.unlinkEntry(this.map[b]);return Ext.util.HashMap.prototype.removeAtKey.apply(this,arguments)},clear:function(b){this.first=this.last=null;return Ext.util.HashMap.prototype.clear.call(this,b)},unlinkEntry:function(b){if(b){if(b.next){b.next.prev=b.prev}else{this.last=b.prev}if(b.prev){b.prev.next=b.next}else{this.first=b.next}b.prev=b.next=null}},moveToEnd:function(b){this.unlinkEntry(b);if(b.prev=this.last){this.last.next=b}else{this.first=b}this.last=b},getArray:function(f){var e=[],d=this.first;while(d){e.push(f?d.key:d.value);d=d.next}return e},each:function(l,g,h){var i=this,j=h?i.last:i.first,k=i.length;g=g||i;while(j){if(l.call(g,j.key,j.value,k)===false){break}j=h?j.prev:j.next}return i},findKey:function(d){var e,f=this.map;for(e in f){if(f.hasOwnProperty(e)&&f[e].value===d){return e}}return undefined},clone:function(){var e=new this.self(this.initialConfig),f=this.map,d;e.suspendEvents();for(d in f){if(f.hasOwnProperty(d)){e.add(d,f[d].value)}}e.resumeEvents();return e},prune:function(){var d=this,e=d.getMaxSize(),f=e?(d.length-e):0;if(f>0){for(;d.first&&f;f--){d.removeAtKey(d.first.key)}}},destroy:function(){this.first=this.last=null;Ext.util.HashMap.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.util,"LruCache"],0));(Ext.cmd.derive("Ext.ComponentQuery",Ext.Base,{singleton:true},0,0,0,0,0,0,[Ext,"ComponentQuery"],function(){var E=this,s=Ext.util.Operators,A=/(\d*)n\+?(\d*)/,F=/\D/,y=/^(\s)+/,z=/\\(.)/g,x=new Ext.util.LruCache({maxSize:100}),w=["var r = [],","i = 0,","it = items,","l = it.length,","c;","for (; i < l; i++) {","c = it[i];","if (c.{0}) {","r.push(c);","}","}","return r;"].join(""),v=function(a,b){return b.method.apply(this,[a].concat(b.args))},J=function(d,g){var f=[],c=0,a=d.length,b,e=g!==">";for(;c<a;c++){b=d[c];if(b.getRefItems){f=f.concat(b.getRefItems(e))}}return f},D=function(d){var e=[],c=0,a=d.length,b;for(;c<a;c++){b=d[c];while(!!(b=b.getRefOwner())){e.push(b)}}return e},G=function(e,g,a){if(g==="*"){return e.slice()}else{var f=[],d=0,b=e.length,c;for(;d<b;d++){c=e[d];if(c.isXType(g,a)){f.push(c)}}return f}},I=function(c,b,i,j){var k=[],d=0,l=c.length,n,g,a,m,e,f,h;if(b.charAt(0)==="@"){n=true;b=b.substr(1)}if(b.charAt(0)==="?"){n=true;g=true;b=b.substr(1)}for(;d<l;d++){a=c[d];h=a.getConfigurator&&a.self.$config.configs[b];if(h){m=a[h.names.get]()}else{if(n&&!a.hasOwnProperty(b)){continue}else{m=a[b]}}if(g){k.push(a)}else{if(i==="~="){if(m){if(!Ext.isArray(m)){m=m.split(" ")}for(e=0,f=m.length;e<f;e++){if(s[i](Ext.coerce(m[e],j),j)){k.push(a);break}}}}else{if(i==="/="){if(m!=null&&j.test(m)){k.push(a)}}else{if(!j?!!a[b]:s[i](Ext.coerce(m,j),j)){k.push(a)}}}}}return k},C=function(e,a){var f=[],d=0,b=e.length,c;for(;d<b;d++){c=e[d];if(c.getItemId()===a){f.push(c)}}return f},t=function(c,b,a){return E.pseudos[b](c,a)},B=/^(\s?([>\^])\s?|\s|$)/,u=/^(#)?((?:\\\.|[\w\-])+|\*)(?:\((true|false)\))?/,H=[{re:/^\.((?:\\\.|[\w\-])+)(?:\((true|false)\))?/,method:G,argTransform:function(a){if(a[1]!==undefined){a[1]=a[1].replace(z,"$1")}return a.slice(1)}},{re:/^(?:\[((?:[@?$])?[\w\-]*)\s*(?:([\^$*~%!\/]?=)\s*(['"])?((?:\\\]|.)*?)\3)?(?!\\)\])/,method:I,argTransform:function(c){var f=c[0],b=c[1],e=c[2],d=c[4],a;if(d!==undefined){d=d.replace(z,"$1")}if(e==="/="){a=x.get(d);if(a){d=a}else{d=x.add(d,new RegExp(d))}}return[b,e,d]}},{re:/^#((?:\\\.|[\w\-])+)/,method:C},{re:/^\:([\w\-]+)(?:\(((?:\{[^\}]+\})|(?:(?!\{)[^\s>\/]*?(?!\})))\))?/,method:t,argTransform:function(a){if(a[2]!==undefined){a[2]=a[2].replace(z,"$1")}return a.slice(1)}},{re:/^(?:\{([^\}]+)\})/,method:w}];E.Query=Ext.extend(Object,{constructor:function(a){a=a||{};Ext.apply(this,a)},execute:function(d){var c=this.operations,e=[],a,b,f;for(b=0,f=c.length;b<f;b++){a=c[b];e=e.concat(this._execute(d,a))}return e},_execute:function(e,c){var b=0,a=c.length,d,f;if(!e){f=Ext.ComponentManager.getAll()}else{if(Ext.isIterable(e)){f=e}else{if(e.isMixedCollection){f=e.items}}}for(;b<a;b++){d=c[b];if(d.mode==="^"){f=D(f||[e])}else{if(d.mode){f=J(f||[e],d.mode)}else{f=v(f||J([e]),d)}}if(b===a-1){return f}}return[]},is:function(c){var d=this.operations,e=false,f=d.length,a,b;if(f===0){return true}for(b=0;b<f;b++){a=d[b];e=this._is(c,a);if(e){return e}}return false},_is:function(b,j){var d=j.length,i=[b],h,f,g,e,c,a;for(f=d-1;f>=0;--f){h=j[f];e=h.mode;if(e){if(e==="^"){i=J(i," ")}else{if(e===">"){c=[];for(g=0,d=i.length;g<d;++g){a=i[g].getRefOwner();if(a){c.push(a)}}i=c}else{i=D(i)}}if(i.length===0){return false}}else{i=v(i,h);if(i.length===0){return false}}}return true},getMatches:function(a,c){var d=c.length,b;for(b=0;b<d;++b){a=v(a,c[b]);if(a.length===0){break}}return a},isMultiMatch:function(){return this.operations.length>1}});Ext.apply(E,{cache:new Ext.util.LruCache({maxSize:100}),pseudos:{not:function(g,f){var b=0,a=g.length,c=[],d=-1,e;for(;b<a;++b){e=g[b];if(!E.is(e,f)){c[++d]=e}}return c},first:function(a){var b=[];if(a.length>0){b.push(a[0])}return b},last:function(a){var c=a.length,b=[];if(c>0){b.push(a[c-1])}return b},focusable:function(d){var e=d.length,b=[],c=0,a;for(;c<e;c++){a=d[c];if(a.isFocusable&&a.isFocusable()){b.push(a)}}return b},"nth-child":function(c,b){var a=[],h=A.exec(b==="even"&&"2n"||b==="odd"&&"2n+1"||!F.test(b)&&"n+"+b||b),e=(h[1]||1)-0,d=h[2]-0,f,i,g;for(f=0;i=c[f];f++){g=f+1;if(e===1){if(d===0||g===d){a.push(i)}}else{if((g+d)%e===0){a.push(i)}}}return a},scrollable:function(d){var e=d.length,b=[],c=0,a;for(;c<e;c++){a=d[c];if(a.scrollable||a._scrollable){b.push(a)}}return b}},query:function(i,b){if(!i){return Ext.ComponentManager.all.getArray()}var g=[],a=[],d={},e=E.cache.get(i),f,c,h;if(!e){e=E.cache.add(i,E.parse(i))}g=e.execute(b);if(e.isMultiMatch()){f=g.length;for(h=0;h<f;h++){c=g[h];if(!d[c.id]){a.push(c);d[c.id]=true}}g=a}return g},visitPreOrder:function(e,c,a,b,d){E._visit(true,e,c,a,b,d)},visitPostOrder:function(e,c,a,b,d){E._visit(false,e,c,a,b,d)},_visit:function(b,k,c,d,a,g){var e=E.cache.get(k),h=[c],l,f=0,i,j;if(!e){e=E.cache.add(k,E.parse(k))}j=e.is(c);if(c.getRefItems){l=c.getRefItems();f=l.length}if(g){Ext.Array.push(h,g)}if(b){if(j){if(d.apply(a||c,h)===false){return false}}}for(i=0;i<f;i++){if(E._visit.call(E,b,k,l[i],d,a,g)===false){return false}}if(!b){if(j){if(d.apply(a||c,h)===false){return false}}}},is:function(b,c){if(!c){return true}var a=E.cache.get(c);if(!a){a=E.cache.add(c,E.parse(c))}return a.is(b)},parse:function(e){var d=[],b,a,c,f;b=Ext.splitAndUnescape(e,",");for(c=0,f=b.length;c<f;c++){a=Ext.String.trim(b[c]);d.push(E._parse(a))}return new E.Query({operations:d})},_parse:function(f){var m=[],h=Ext.String.trim,k=H.length,a,e,g,o,l,j,i,d,c,n,b;while(f&&a!==f){a=f;e=f.match(u);if(e){o=e[1];g=h(e[2]).replace(z,"$1");if(o==="#"){m.push({method:C,args:[g]})}else{m.push({method:G,args:[g,Boolean(e[3])]})}f=f.replace(e[0],"").replace(y,"$1")}while(!(l=f.match(B))){for(d=0;f&&d<k;d++){c=H[d];j=f.match(c.re);n=c.method;i=c.argTransform;if(j){if(i){b=i(j)}else{b=j.slice(1)}m.push({method:Ext.isString(c.method)?Ext.functionFactory("items",Ext.String.format.apply(Ext.String,[n].concat(j.slice(1)))):c.method,args:b});f=f.replace(j[0],"").replace(y,"$1");break}if(d===(k-1)){Ext.raise('Invalid ComponentQuery selector: "'+arguments[0]+'"')}}}if(l[1]){m.push({mode:l[2]||l[1]});f=f.replace(l[0],"").replace(y,"")}}return m}});Ext.all=function(){return E.query.apply(E,arguments)};Ext.first=function(){var a=E.query.apply(E,arguments);return(a&&a[0])||null}}));(Ext.cmd.derive("Ext.Evented",Ext.Base,{alternateClassName:"Ext.EventedBase",initialized:false,constructor:function(b){this.mixins.observable.constructor.call(this,b);this.initialized=true},onClassExtended:function(g,j){if(!j.hasOwnProperty("eventedConfig")){return}var k=j.config,i=j.eventedConfig,l,h;if(k){Ext.applyIf(k,i)}else{g.addConfig(i)}for(l in i){if(i.hasOwnProperty(l)){h=Ext.Config.get(l);j[h.names.set]=h.eventedSetter||h.getEventedSetter()}}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext,"Evented",Ext,"EventedBase"],0));(Ext.cmd.derive("Ext.util.Positionable",Ext.Base,{mixinId:"positionable",_positionTopLeft:["position","top","left"],_alignRe:/^([a-z]+)-([a-z]+)([?!])?$/,afterSetPosition:Ext.emptyFn,adjustForConstraints:function(f,d){var e=this.getConstrainVector(d,f);if(e){f[0]+=e[0];f[1]+=e[1]}return f},alignTo:function(l,h,i,g){var j=this,k=j.el;return j.setXY(j.getAlignToXY(l,h,i),k.anim&&!!g?k.anim(g):false)},calculateAnchorXY:function(s,q,r,u){var p=this,v=p.el,o=document,t=(v.dom===o.body||v.dom===o),n=Math.round,m,w,x;s=(s||"tl").toLowerCase();u=u||{};w=u.width||(t?Ext.Element.getViewportWidth():p.getWidth());x=u.height||(t?Ext.Element.getViewportHeight():p.getHeight());switch(s){case"tl":m=[0,0];break;case"bl":m=[0,x];break;case"tr":m=[w,0];break;case"c":m=[n(w*0.5),n(x*0.5)];break;case"t":m=[n(w*0.5),0];break;case"l":m=[0,n(x*0.5)];break;case"r":m=[w,n(x*0.5)];break;case"b":m=[n(w*0.5),x];break;case"tc":m=[n(w*0.5),0];break;case"bc":m=[n(w*0.5),x];break;case"br":m=[w,x]}return[m[0]+q,m[1]+r]},convertPositionSpec:Ext.identityFn,getAlignToXY:function(L,y,P){var x=this,Q,z,T,N,D,O,C,B,F,E,A,G,H,S,R,M,J,I,K;L=Ext.get(L.el||L);if(!L||!L.dom){}P=P||[0,0];y=(!y||y==="?"?"tl-bl?":(!(/-/).test(y)&&y!==""?"tl-"+y:y||"tl-bl")).toLowerCase();y=x.convertPositionSpec(y);T=y.match(x._alignRe);G=T[1];H=T[2];A=!!T[3];N=x.getAnchorXY(G,true);D=x.getAnchorToXY(L,H,false);I=D[0]-N[0]+P[0];K=D[1]-N[1]+P[1];if(A){if(T[3]==="!"){Q=L}else{Q=x.constrainTo||x.container||x.el.parent()}Q=Ext.get(Q.el||Q);z=Q.getConstrainRegion();z.right=z.left+Q.el.dom.clientWidth;O=x.getWidth();C=x.getHeight();B=L.getRegion();S=G.charAt(0);R=G.charAt(G.length-1);M=H.charAt(0);J=H.charAt(H.length-1);F=(I<B.right&&I+O>=B.left)&&((S=="t"&&M=="b")||(S=="b"&&M=="t"));E=(K<B.bottom&&K+C>=B.top)&&((R=="r"&&J=="l")||(R=="l"&&J=="r"));if(I+O>z.right){if(E){I=B.left-O;E=false}else{I=z.right-O}}if(I<z.left){I=E?B.right:z.left}if(K+C>z.bottom){if(F){K=B.top-C;F=false}else{K=z.bottom-C}}if(K<z.top){K=F?B.bottom:z.top}}return[I,K]},getAnchorXY:function(s,o,u){var p=this,n=p.getXY(),v=p.el,l=document,t=v.dom==l.body||v.dom==l,m=v.getScroll(),q=t?m.left:o?0:n[0],r=t?m.top:o?0:n[1];return p.calculateAnchorXY(s,q,r,u)},getBox:function(s,p){var r=this,h=p?r.getLocalXY():r.getXY(),o=h[0],q=h[1],n=r.getWidth(),u=r.getHeight(),t,v,m;if(s){t=r.getBorderPadding();v=t.beforeX;m=t.beforeY;o+=v;q+=m;n-=(v+t.afterX);u-=(m+t.afterY)}return{x:o,left:o,0:o,y:q,top:q,1:q,width:n,height:u,right:o+n,bottom:q+u}},calculateConstrainedPosition:function(t,y,p,w){var q=this,x,s=q.floatParent,v=s?s.getTargetEl():null,z,u,r,n=false,o;if(p&&s){z=v.getXY();u=v.getBorderPadding();z[0]+=u.beforeX;z[1]+=u.beforeY;if(y){r=[y[0]+z[0],y[1]+z[1]]}}else{r=y}t=t||q.constrainTo||v||q.container||q.el.parent();if(p&&r){r=q.reverseTranslateXY(r)}x=((q.constrainHeader&&q.header.rendered)?q.header:q).getConstrainVector(t,r,w);if(x){n=y||q.getPosition(p);n[0]+=x[0];n[1]+=x[1]}return n},getConstrainRegion:function(){var p=this,t=p.el,v=t.dom.nodeName==="BODY",r=t.dom,q=t.getBorders(),o=t.getXY(),s=o[0]+q.beforeX,n=o[1]+q.beforeY,m,u,l;if(v){m=t.getScroll();s=m.left;n=m.top;u=Ext.Element.getViewportWidth();l=Ext.Element.getViewportHeight()}else{u=r.clientWidth;l=r.clientHeight}return new Ext.util.Region(n,s+u,n+l,s)},getConstrainVector:function(l,p,n){var r=this.getRegion(),o=[0,0],q=(this.shadow&&this.constrainShadow&&!this.shadowDisabled)?this.shadow.getShadowSize():undefined,j=false,k,m=this.constraintInsets;if(!(l instanceof Ext.util.Region)){l=Ext.get(l.el||l);k=l.getViewSize();l=l.getConstrainRegion();l.right=l.left+k.width;l.bottom=l.top+k.height}if(m){m=Ext.isObject(m)?m:Ext.Element.parseBox(m);l.adjust(m.top,m.right,m.bottom,m.left)}if(p){r.translateBy(p[0]-r.x,p[1]-r.y)}if(n){r.right=r.left+n[0];r.bottom=r.top+n[1]}if(q){l.adjust(q[0],-q[1],-q[2],q[3])}if(r.right>l.right){j=true;o[0]=(l.right-r.right)}if(r.left+o[0]<l.left){j=true;o[0]=(l.left-r.left)}if(r.bottom>l.bottom){j=true;o[1]=(l.bottom-r.bottom)}if(r.top+o[1]<l.top){j=true;o[1]=(l.top-r.top)}return j?o:false},getOffsetsTo:function(e){var f=this.getXY(),d=Ext.fly(e.el||e).getXY();return[f[0]-d[0],f[1]-d[1]]},getRegion:function(){var b=this.getBox();return new Ext.util.Region(b.top,b.right,b.bottom,b.left)},getClientRegion:function(){var e=this,f,h=e.getBox(),g=e.dom;f=g.offsetWidth-g.clientWidth;if(f){if(e.getStyle("direction")==="rtl"){h.left+=f}else{h.right-=f}}f=g.offsetHeight-g.clientHeight;if(f){h.bottom-=f}return new Ext.util.Region(h.top,h.right,h.bottom,h.left)},getViewRegion:function(){var o=this,r=o.el,t=r.dom.nodeName==="BODY",p,l,n,m,q,s,k;if(t){l=r.getScroll();q=l.left;m=l.top;s=Ext.Element.getViewportWidth();k=Ext.Element.getViewportHeight()}else{p=o.getBorderPadding();n=o.getXY();q=n[0]+p.beforeX;m=n[1]+p.beforeY;s=o.getWidth(true);k=o.getHeight(true)}return new Ext.util.Region(m,q+s,m+k,q)},move:function(p,w,v){var s=this,m=s.getXY(),o=m[0],q=m[1],u=[o-w,q],n=[o+w,q],r=[o,q-w],x=[o,q+w],t={l:u,left:u,r:n,right:n,t:r,top:r,up:r,b:x,bottom:x,down:x};p=p.toLowerCase();s.setXY([t[p][0],t[p][1]],v)},setBox:function(h){var e=this,f,g;if(h.isRegion){h={x:h.left,y:h.top,width:h.right-h.left,height:h.bottom-h.top}}e.constrainBox(h);f=h.x;g=h.y;e.setXY([f,g]);e.setSize(h.width,h.height);e.afterSetPosition(f,g);return e},constrainBox:function(i){var j=this,f,g,h;if(j.constrain||j.constrainHeader){g=("x" in i)?i.x:i.left;h=("y" in i)?i.y:i.top;f=j.calculateConstrainedPosition(null,[g,h],false,[i.width,i.height]);if(f){i.x=f[0];i.y=f[1]}}},translatePoints:function(e,f){var d=this.translateXY(e,f);return{left:d.x,top:d.y}},translateXY:function(l,n){var o=this,q=o.el,k=q.getStyle(o._positionTopLeft),r=k.position==="relative",p=parseFloat(k.left),m=parseFloat(k.top),j=o.getXY();if(Ext.isArray(l)){n=l[1];l=l[0]}if(isNaN(p)){p=r?0:q.dom.offsetLeft}if(isNaN(m)){m=r?0:q.dom.offsetTop}p=(typeof l==="number")?l-j[0]+p:undefined;m=(typeof n==="number")?n-j[1]+m:undefined;return{x:p,y:m}},reverseTranslateXY:function(k){var m=k,r=this.el,l=[],q=r.dom,s=q.offsetParent,t,p,n,o;if(s){t=r.isStyle("position","relative"),p=Ext.fly(s).getXY(),n=k[0]+p[0]+s.clientLeft;o=k[1]+p[1]+s.clientTop;if(t){n+=r.getPadding("l");o+=r.getPadding("t")}m=[n,o]}return m}},0,0,0,0,0,0,[Ext.util,"Positionable"],0));(Ext.cmd.derive("Ext.dom.UnderlayPool",Ext.Base,{constructor:function(b){this.elementConfig=b;this.cache=[]},checkOut:function(){var b=this.cache.shift();if(!b){b=Ext.Element.create(this.elementConfig);b.setVisibilityMode(2)}return b},checkIn:function(b){this.cache.push(b)},reset:function(){var d=this.cache,c=d.length;while(c--){d[c].destroy()}this.cache=[]}},1,0,0,0,0,0,[Ext.dom,"UnderlayPool"],0));(Ext.cmd.derive("Ext.dom.Underlay",Ext.Base,{constructor:function(b){Ext.apply(this,b)},beforeShow:Ext.emptyFn,getInsertionTarget:function(){return this.target},getPool:function(){return this.pool||(this.self.prototype.pool=new Ext.dom.UnderlayPool(this.elementConfig))},hide:function(){var c=this,d=c.el;if(d){d.hide();c.getPool().checkIn(d);c.el=null;c.hidden=true}},realign:function(k,l,r,j){var n=this,q=n.el,o=n.target,p=n.offsets,m=Math.max;if(q){if(k==null){k=o.getX()}if(l==null){l=o.getY()}if(r==null){r=o.getWidth()}if(j==null){j=o.getHeight()}if(p){k=k+p.x;l=l+p.y;r=m(r+p.w,0);j=m(j+p.h,0)}q.setXY([k,l]);q.setSize(r,j)}},setZIndex:function(b){this.zIndex=b;if(this.el){this.el.setStyle("z-index",b)}},show:function(){var g=this,k=g.target,i=g.zIndex,h=g.el,l=g.getInsertionTarget().dom,j;if(!h){h=g.el=g.getPool().checkOut()}g.beforeShow();if(i==null){i=(parseInt(k.getStyle("z-index"),10))}if(i){h.setStyle("z-index",i)}h.setStyle("position",g.fixed?"fixed":"");j=h.dom;if(j.nextSibling!==l){k.dom.parentNode.insertBefore(j,l)}h.show();g.realign();g.hidden=false}},1,0,0,0,0,0,[Ext.dom,"Underlay"],0));(Ext.cmd.derive("Ext.dom.Shadow",Ext.dom.Underlay,{alternateClassName:"Ext.Shadow",mode:"drop",offset:4,cls:"x-"+(!Ext.supports.CSS3BoxShadow?"ie":"css")+"-shadow",constructor:function(g){var k=this,j,l,i,h;Ext.dom.Underlay.prototype.constructor.call(this,g);k.elementConfig={cls:k.cls,role:"presentation"};i=k.offset;h=Math.floor(i/2);k.opacity=50;switch(k.mode.toLowerCase()){case"drop":j={x:0,y:0,w:i,h:i};if(Ext.supports.CSS3BoxShadow){l={x:i,y:i,h:-i,w:-i}}else{l={x:-h,y:-h,h:-h,w:-h}}break;case"sides":j={x:-i,y:0,w:i*2,h:i};if(Ext.supports.CSS3BoxShadow){l={x:0,y:i,h:-i,w:0}}else{l={x:1+h-2*i,y:-(1+h),h:-1,w:h-1}}break;case"frame":j={x:-i,y:-i,w:i*2,h:i*2};if(Ext.supports.CSS3BoxShadow){l={x:0,y:0,h:0,w:0}}else{l={x:1+h-2*i,y:1+h-2*i,h:i-h-1,w:i-h-1}}break;case"bottom":j={x:-i,y:0,w:i*2,h:i};if(Ext.supports.CSS3BoxShadow){l={x:0,y:i,h:-i,w:0}}else{l={x:0,y:i,h:0,w:0}}break}k.offsets=l;k.outerOffsets=j},getShadowSize:function(){var e=this,g=e.el?e.offset:0,f=[g,g,g,g],h=e.mode.toLowerCase();if(e.el&&h!=="frame"){f[0]=0;if(h=="drop"){f[3]=0}}return f},boxShadowProperty:(function(){var c="boxShadow",d=document.documentElement.style;if(!("boxShadow" in d)){if("WebkitBoxShadow" in d){c="WebkitBoxShadow"}else{if("MozBoxShadow" in d){c="MozBoxShadow"}}}return c}()),beforeShow:function(){var d=this,e=d.el.dom.style,f=d.shim;if(Ext.supports.CSS3BoxShadow){e[d.boxShadowProperty]="0 0 "+(d.offset+2)+"px #888"}else{e.filter="progid:DXImageTransform.Microsoft.alpha(opacity="+d.opacity+") progid:DXImageTransform.Microsoft.Blur(pixelradius="+(d.offset)+")"}if(f){f.realign()}},setOpacity:function(d){var c=this.el;if(c){if(Ext.isIE&&!Ext.supports.CSS3BoxShadow){d=Math.floor(d*100/2)/100}this.opacity=d;c.setOpacity(d)}}},1,0,0,0,0,0,[Ext.dom,"Shadow",Ext,"Shadow"],0));(Ext.cmd.derive("Ext.dom.Shim",Ext.dom.Underlay,{cls:"x-shim",constructor:function(b){Ext.dom.Underlay.prototype.constructor.call(this,b);this.elementConfig={tag:"iframe",cls:this.cls,role:"presentation",frameBorder:"0",src:Ext.SSL_SECURE_URL,tabindex:"-1"}},getInsertionTarget:function(){var b=this.shadow;return(b&&b.el)||this.target}},1,0,0,0,0,0,[Ext.dom,"Shim"],0));(Ext.cmd.derive("Ext.dom.ElementEvent",Ext.util.Event,{addListener:function(p,m,l,t,r){var q=this,o=false,v=q.name,u,s,n;l=l||{};if(l.delegated===false||Ext.event.publisher.Dom.instance.directEvents[v]){if(l.capture){n=q.directCaptures||(q.directCaptures=new Ext.util.Event(q.observable,v));o=n.addListener(p,m,l,t,r)}else{s=q.directs||(q.directs=new Ext.util.Event(q.observable,v));o=s.addListener(p,m,l,t,r)}}else{if(l.capture){u=q.captures||(q.captures=new Ext.util.Event(q.observable,v));o=u.addListener(p,m,l,t,r)}else{o=Ext.util.Event.prototype.addListener.call(this,p,m,l,t,r)}}return o},removeListener:function(n,o){var m=this,j=m.captures,p=m.directs,l=m.directCaptures,k=false,i=m.findListener(n,o);if(i!==-1){k=Ext.util.Event.prototype.removeListener.call(this,n,o,i)}else{if(p){i=p.findListener(n,o)}if(i!==-1){k=p.removeListener(n,o,i)}else{if(j){i=j.findListener(n,o)}if(i!==-1){k=j.removeListener(n,o,i)}else{if(l){i=l.findListener(n,o);if(i!==-1){k=l.removeListener(n,o,i)}}}}}return k},clearListeners:function(){var h=this,g=h.directCaptures,e=h.directs,f=h.captures;if(g){g.clearListeners()}if(e){e.clearListeners()}if(f){f.clearListeners()}Ext.util.Event.prototype.clearListeners.call(this)},suspend:function(){var h=this,g=h.directCaptures,e=h.directs,f=h.captures;if(g){g.suspend()}if(e){e.suspend()}if(f){f.suspend()}Ext.util.Event.prototype.suspend.call(this)},resume:function(){var h=this,g=h.directCaptures,e=h.directs,f=h.captures;if(g){g.resume()}if(e){e.resume()}if(f){f.resume()}Ext.util.Event.prototype.resume.call(this)}},0,0,0,0,0,0,[Ext.dom,"ElementEvent"],0));(Ext.cmd.derive("Ext.event.publisher.Publisher",Ext.Base,{handledEvents:[],statics:{publishers:{},publishersByEvent:{}},constructor:function(){var c=this,d=c.type;c.handles={};c.registerEvents();Ext.event.publisher.Publisher.publishers[d]=c},registerEvents:function(l){var j=this,m=Ext.event.publisher.Publisher.publishersByEvent,h=l||j.handledEvents,k=h.length,i,n;for(n=0;n<k;n++){i=h[n];j.handles[i]=1;m[i]=j}},fire:function(h,f,e){var g;if(h.hasListeners[f]){g=h.events[f];if(g){g.fire.apply(g,e)}}}},1,0,0,0,0,0,[Ext.event.publisher,"Publisher"],0));(Ext.cmd.derive("Ext.util.Offset",Ext.Base,{statics:{fromObject:function(b){return new this(b.x,b.y)}},constructor:function(d,c){this.x=(d!=null&&!isNaN(d))?d:0;this.y=(c!=null&&!isNaN(c))?c:0;return this},copy:function(){return new Ext.util.Offset(this.x,this.y)},copyFrom:function(b){this.x=b.x;this.y=b.y},toString:function(){return"Offset["+this.x+","+this.y+"]"},equals:function(b){return(this.x==b.x&&this.y==b.y)},round:function(c){if(!isNaN(c)){var d=Math.pow(10,c);this.x=Math.round(this.x*d)/d;this.y=Math.round(this.y*d)/d}else{this.x=Math.round(this.x);this.y=Math.round(this.y)}},isZero:function(){return this.x==0&&this.y==0}},3,0,0,0,0,0,[Ext.util,"Offset"],0));(Ext.cmd.derive("Ext.util.Region",Ext.Base,{isRegion:true,statics:{getRegion:function(b){return Ext.fly(b).getRegion()},from:function(b){return new this(b.top,b.right,b.bottom,b.left)}},constructor:function(h,f,g,i){var j=this;j.y=j.top=j[1]=h;j.right=f;j.bottom=g;j.x=j.left=j[0]=i},contains:function(c){var d=this;return(c.x>=d.x&&c.right<=d.right&&c.y>=d.y&&c.bottom<=d.bottom)},intersect:function(h){var i=this,k=Math.max(i.y,h.y),j=Math.min(i.right,h.right),b=Math.min(i.bottom,h.bottom),l=Math.max(i.x,h.x);if(b>k&&j>l){return new this.self(k,j,b,l)}else{return false}},union:function(h){var i=this,k=Math.min(i.y,h.y),j=Math.max(i.right,h.right),b=Math.max(i.bottom,h.bottom),l=Math.min(i.x,h.x);return new this.self(k,j,b,l)},constrainTo:function(d){var e=this,f=Ext.Number.constrain;e.top=e.y=f(e.top,d.y,d.bottom);e.bottom=f(e.bottom,d.y,d.bottom);e.left=e.x=f(e.left,d.x,d.right);e.right=f(e.right,d.x,d.right);return e},adjust:function(h,f,g,i){var j=this;j.top=j.y+=h;j.left=j.x+=i;j.right+=f;j.bottom+=g;return j},getOutOfBoundOffset:function(e,d){if(!Ext.isObject(e)){if(e=="x"){return this.getOutOfBoundOffsetX(d)}else{return this.getOutOfBoundOffsetY(d)}}else{d=e;var f=new Ext.util.Offset();f.x=this.getOutOfBoundOffsetX(d.x);f.y=this.getOutOfBoundOffsetY(d.y);return f}},getOutOfBoundOffsetX:function(b){if(b<=this.x){return this.x-b}else{if(b>=this.right){return this.right-b}}return 0},getOutOfBoundOffsetY:function(b){if(b<=this.y){return this.y-b}else{if(b>=this.bottom){return this.bottom-b}}return 0},isOutOfBound:function(d,c){if(!Ext.isObject(d)){if(d=="x"){return this.isOutOfBoundX(c)}else{return this.isOutOfBoundY(c)}}else{c=d;return(this.isOutOfBoundX(c.x)||this.isOutOfBoundY(c.y))}},isOutOfBoundX:function(b){return(b<this.x||b>this.right)},isOutOfBoundY:function(b){return(b<this.y||b>this.bottom)},restrict:function(e,g,f){if(Ext.isObject(e)){var h;f=g;g=e;if(g.copy){h=g.copy()}else{h={x:g.x,y:g.y}}h.x=this.restrictX(g.x,f);h.y=this.restrictY(g.y,f);return h}else{if(e=="x"){return this.restrictX(g,f)}else{return this.restrictY(g,f)}}},restrictX:function(c,d){if(!d){d=1}if(c<=this.x){c-=(c-this.x)*d}else{if(c>=this.right){c-=(c-this.right)*d}}return c},restrictY:function(c,d){if(!d){d=1}if(c<=this.y){c-=(c-this.y)*d}else{if(c>=this.bottom){c-=(c-this.bottom)*d}}return c},getSize:function(){return{width:this.right-this.x,height:this.bottom-this.y}},copy:function(){return new this.self(this.y,this.right,this.bottom,this.x)},copyFrom:function(c){var d=this;d.top=d.y=d[1]=c.y;d.right=c.right;d.bottom=c.bottom;d.left=d.x=d[0]=c.x;return this},toString:function(){return"Region["+this.top+","+this.right+","+this.bottom+","+this.left+"]"},translateBy:function(e,f){if(arguments.length==1){f=e.y;e=e.x}var d=this;d.top=d.y+=f;d.right+=e;d.bottom+=f;d.left=d.x+=e;return d},round:function(){var b=this;b.top=b.y=Math.round(b.y);b.right=Math.round(b.right);b.bottom=Math.round(b.bottom);b.left=b.x=Math.round(b.x);return b},equals:function(b){return(this.top===b.top&&this.right===b.right&&this.bottom===b.bottom&&this.left===b.left)}},3,0,0,0,0,0,[Ext.util,"Region"],0));(Ext.cmd.derive("Ext.util.Point",Ext.util.Region,{radianToDegreeConstant:180/Math.PI,origin:{x:0,y:0},statics:{fromEvent:function(d){var e=d.changedTouches,f=(e&&e.length>0)?e[0]:d;return this.fromTouch(f)},fromTouch:function(b){return new this(b.pageX,b.pageY)},from:function(b){if(!b){return new this(0,0)}if(!(b instanceof this)){return new this(b.x,b.y)}return b}},constructor:function(d,c){if(d==null){d=0}if(c==null){c=0}Ext.util.Region.prototype.constructor.call(this,c,d,c,d)},clone:function(){return new this.self(this.x,this.y)},copy:function(){return this.clone.apply(this,arguments)},copyFrom:function(b){this.x=b.x;this.y=b.y;return this},toString:function(){return"Point["+this.x+","+this.y+"]"},equals:function(b){return(this.x===b.x&&this.y===b.y)},isCloseTo:function(l,g){if(typeof g=="number"){return this.getDistanceTo(l)<=g}var h=l.x,i=l.y,j=g.x,k=g.y;return(this.x<=h+j&&this.x>=h-j&&this.y<=i+k&&this.y>=i-k)},isWithin:function(){return this.isCloseTo.apply(this,arguments)},isContainedBy:function(b){if(!(b instanceof Ext.util.Region)){b=Ext.get(b.el||b).getRegion()}return b.contains(this)},roundedEquals:function(b){if(!b||typeof b!=="object"){b=this.origin}return(Math.round(this.x)===Math.round(b.x)&&Math.round(this.y)===Math.round(b.y))},getDistanceTo:function(d){if(!d||typeof d!=="object"){d=this.origin}var f=this.x-d.x,e=this.y-d.y;return Math.sqrt(f*f+e*e)},getAngleTo:function(d){if(!d||typeof d!=="object"){d=this.origin}var f=this.x-d.x,e=this.y-d.y;return Math.atan2(e,f)*this.radianToDegreeConstant}},3,0,0,0,0,0,[Ext.util,"Point"],function(){this.prototype.translate=this.prototype.translateBy}));(Ext.cmd.derive("Ext.event.Event",Ext.Base,{alternateClassName:"Ext.EventObjectImpl",isStopped:false,defaultPrevented:false,isEvent:true,statics:{resolveTextNode:function(b){return(b&&b.nodeType===3)?b.parentNode:b},pointerEvents:{pointerdown:1,pointermove:1,pointerup:1,pointercancel:1,pointerover:1,pointerout:1,pointerenter:1,pointerleave:1,MSPointerDown:1,MSPointerMove:1,MSPointerUp:1,MSPointerOver:1,MSPointerOut:1,MSPointerCancel:1,MSPointerEnter:1,MSPointerLeave:1},mouseEvents:{mousedown:1,mousemove:1,mouseup:1,mouseover:1,mouseout:1,mouseenter:1,mouseleave:1},clickEvents:{click:1,dblclick:1},touchEvents:{touchstart:1,touchmove:1,touchend:1,touchcancel:1},focusEvents:{focus:1,blur:1,focusin:1,focusout:1,focusenter:1,focusleave:1},pointerTypes:{2:"touch",3:"pen",4:"mouse",touch:"touch",pen:"pen",mouse:"mouse"}},constructor:function(q){var m=this,j=m.self,n=m.self.resolveTextNode,k=q.changedTouches,p=k?k[0]:q,l=q.type,r,o;m.pageX=p.pageX;m.pageY=p.pageY;m.target=m.delegatedTarget=n(q.target);o=q.relatedTarget;if(o){m.relatedTarget=n(o)}m.browserEvent=m.event=q;m.type=l;m.button=q.button||0;m.shiftKey=q.shiftKey;m.ctrlKey=q.ctrlKey||q.metaKey||false;m.altKey=q.altKey;m.charCode=q.charCode;m.keyCode=q.keyCode;m.buttons=q.buttons;if(m.button===0&&m.buttons===0){m.buttons=1}if(j.forwardTab!==undefined&&j.focusEvents[l]){m.forwardTab=j.forwardTab}if(j.mouseEvents[l]||j.clickEvents[l]){r="mouse"}else{if(j.pointerEvents[l]){r=j.pointerTypes[q.pointerType]}else{if(j.touchEvents[l]){r="touch"}}}if(r){m.pointerType=r}m.timeStamp=m.time=+(q.timeStamp||new Date())},chain:function(d){var c=Ext.Object.chain(this);c.parentEvent=this;return Ext.apply(c,d)},correctWheelDelta:function(f){var d=this.WHEEL_SCALE,e=Math.round(f/d);if(!e&&f){e=(f<0)?-1:1}return e},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){return this.keyCode||this.charCode},getKeyName:function(){return this.keyCodes[this.keyCode]},getPoint:function(){var b=this.getXY();return new Ext.util.Point(b[0],b[1])},getRelatedTarget:function(f,h,g){var j=this.relatedTarget,i=null;if(j){if(f){i=Ext.fly(j).findParent(f,h,g)}else{i=g?Ext.get(j):j}}return i},getTarget:function(d,f,e){return d?Ext.fly(this.target).findParent(d,f,e):(e?Ext.get(this.target):this.target)},getTime:function(){return this.time},getWheelDelta:function(){var b=this.getWheelDeltas();return b.y},getWheelDeltas:function(){var g=this,h=g.browserEvent,e=0,f=0;if(Ext.isDefined(h.wheelDeltaX)){e=h.wheelDeltaX;f=h.wheelDeltaY}else{if(h.wheelDelta){f=h.wheelDelta}else{if(h.detail){f=-h.detail;if(f>100){f=3}else{if(f<-100){f=-3}}if(Ext.isDefined(h.axis)&&h.axis===h.HORIZONTAL_AXIS){e=f;f=0}}}}return{x:g.correctWheelDelta(e),y:g.correctWheelDelta(f)}},getX:function(){return this.getXY()[0]},getXY:function(){var n=this,l=n.xy;if(!l){l=n.xy=[n.pageX,n.pageY];var h=l[0],j,m,k,i;if(!h&&h!==0){j=n.browserEvent;m=document;k=m.documentElement;i=m.body;l[0]=j.clientX+(k&&k.scrollLeft||i&&i.scrollLeft||0)-(k&&k.clientLeft||i&&i.clientLeft||0);l[1]=j.clientY+(k&&k.scrollTop||i&&i.scrollTop||0)-(k&&k.clientTop||i&&i.clientTop||0)}}return l},getY:function(){return this.getXY()[1]},hasModifier:function(){var b=this;return !!(b.ctrlKey||b.altKey||b.shiftKey||b.metaKey)},isNavKeyPress:function(g){var h=this,f=h.keyCode,e=h.type==="keypress";return((!e||Ext.isGecko)&&f>=33&&f<=40)||(!g&&(f===h.RETURN||f===h.TAB||f===h.ESC))},isSpecialKey:function(){var g=this,e=g.keyCode,f=Ext.isGecko,h=g.type==="keypress";return(f&&h&&g.charCode===0)||(this.isNavKeyPress())||(e===g.BACKSPACE)||(e===g.ENTER)||(e>=16&&e<=20)||((!h||f)&&e>=44&&e<=46)},makeUnpreventable:function(){this.browserEvent.preventDefault=Ext.emptyFn},preventDefault:function(){var c=this,d=c.parentEvent;c.defaultPrevented=true;if(d){d.defaultPrevented=true}c.browserEvent.preventDefault();return c},setCurrentTarget:function(b){this.currentTarget=this.delegatedTarget=b},stopEvent:function(){return this.preventDefault().stopPropagation()},stopPropagation:function(){var d=this,f=d.browserEvent,e=d.parentEvent;d.isStopped=true;if(e){e.isStopped=true}if(!f.stopPropagation){f.cancelBubble=true;return d}f.stopPropagation();return d},within:function(h,g,f){var e;if(h){e=g?this.getRelatedTarget():this.getTarget()}return e?Ext.fly(h).contains(e)||!!(f&&e===Ext.getDom(h)):false},deprecated:{"4.0":{methods:{getPageX:"getX",getPageY:"getY"}}}},1,0,0,0,0,0,[Ext.event,"Event",Ext,"EventObjectImpl"],function(h){var l=h.prototype,k={BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,RETURN:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,WHEEL_SCALE:(function(){var a;if(Ext.isGecko){a=3}else{if(Ext.isMac){if(Ext.isSafari&&Ext.webKitVersion>=532){a=120}else{a=12}a*=3}else{a=120}}return a}())},g={},j,i;Ext.apply(h,k);Ext.apply(l,k);delete k.WHEEL_SCALE;delete k.RETURN;for(j in k){i=k[j];g[i]=j}l.keyCodes=g;l.getTrueXY=l.getXY}));(Ext.cmd.derive("Ext.event.publisher.Dom",Ext.event.publisher.Publisher,{type:"dom",handledDomEvents:[],reEnterCount:0,captureEvents:{animationstart:1,animationend:1,resize:1,focus:1,blur:1,scroll:1},directEvents:{mouseenter:1,mouseleave:1,pointerenter:1,pointerleave:1,MSPointerEnter:1,MSPointerLeave:1,load:1,unload:1,beforeunload:1,error:1,DOMContentLoaded:1,DOMFrameContentLoaded:1,hashchange:1},blockedPointerEvents:{pointerover:1,pointerout:1,pointerenter:1,pointerleave:1,MSPointerOver:1,MSPointerOut:1,MSPointerEnter:1,MSPointerLeave:1},blockedCompatibilityMouseEvents:{mouseenter:1,mouseleave:1},constructor:function(){var b=this;b.bubbleSubscribers={};b.captureSubscribers={};b.directSubscribers={};b.directCaptureSubscribers={};b.delegatedListeners={};b.initHandlers();Ext.onInternalReady(b.onReady,b);Ext.event.publisher.Publisher.prototype.constructor.call(this)},registerEvents:function(){var i=this,k=Ext.event.publisher.Publisher.publishersByEvent,h=i.handledDomEvents,j=h.length,l=0,g;for(;l<j;l++){g=h[l];i.handles[g]=1;k[g]=i}Ext.event.publisher.Publisher.prototype.registerEvents.call(this)},onReady:function(){var g=this,f=g.handledDomEvents,h,e;if(f){for(e=0,h=f.length;e<h;e++){g.addDelegatedListener(f[e])}}Ext.getWin().on("unload",g.destroy,g)},initHandlers:function(){var b=this;b.onDelegatedEvent=Ext.bind(b.onDelegatedEvent,b);b.onDirectEvent=Ext.bind(b.onDirectEvent,b);b.onDirectCaptureEvent=Ext.bind(b.onDirectCaptureEvent,b)},addDelegatedListener:function(b){this.delegatedListeners[b]=1;this.target.addEventListener(b,this.onDelegatedEvent,!!this.captureEvents[b])},removeDelegatedListener:function(b){delete this.delegatedListeners[b];this.target.removeEventListener(b,this.onDelegatedEvent,!!this.captureEvents[b])},addDirectListener:function(d,f,e){f.dom.addEventListener(d,e?this.onDirectCaptureEvent:this.onDirectEvent,e)},removeDirectListener:function(d,f,e){f.dom.removeEventListener(d,e?this.onDirectCaptureEvent:this.onDirectEvent,e)},subscribe:function(n,h,k,i){var m=this,l,j;if(k&&!m.directEvents[h]){l=i?m.captureSubscribers:m.bubbleSubscribers;if(!m.handles[h]&&!m.delegatedListeners[h]){m.addDelegatedListener(h)}if(l[h]){++l[h]}else{l[h]=1}}else{l=i?m.directCaptureSubscribers:m.directSubscribers;j=n.id;l=l[h]||(l[h]={});if(l[j]){++l[j]}else{l[j]=1;m.addDirectListener(h,n,i)}}},unsubscribe:function(n,m,q,j){var k=this,l,o,r,p;if(q&&!k.directEvents[m]){l=k.captureSubscribers;o=k.bubbleSubscribers;r=j?l:o;if(r[m]){--r[m]}if(!k.handles[m]&&!o[m]&&!l[m]){this.removeDelegatedListener(m)}}else{r=j?k.directCaptureSubscribers:k.directSubscribers;p=n.id;r=r[m];if(r[p]){--r[p]}if(!r[p]){delete r[p];k.removeDirectListener(m,n,j)}}},getPropagatingTargets:function(g){var h=g,e=[],f;while(h){e.push(h);f=h.parentNode;if(!f){f=h.defaultView}h=f}return e},publish:function(e,k,l){var m=this,i,o,p,n;if(Ext.isArray(k)){i=k}else{if(m.captureEvents[e]){o=Ext.cache[k.id];i=o?[o]:[]}else{i=m.getPropagatingTargets(k)}}n=i.length;if(m.captureSubscribers[e]){for(p=n;p--;){o=Ext.cache[i[p].id];if(o){m.fire(o,e,l,false,true);if(l.isStopped){break}}}}if(!l.isStopped&&m.bubbleSubscribers[e]){for(p=0;p<n;p++){o=Ext.cache[i[p].id];if(o){m.fire(o,e,l,false,false);if(l.isStopped){break}}}}},fire:function(l,e,j,i,h){var k;if(l.hasListeners[e]){k=l.events[e];if(k){if(h&&i){k=k.directCaptures}else{if(h){k=k.captures}else{if(i){k=k.directs}}}if(k){j.setCurrentTarget(l.dom);k.fire(j,j.target)}}}},onDelegatedEvent:function(b){if(Ext.elevateFunction){Ext.elevateFunction(this.doDelegatedEvent,this,[b])}else{this.doDelegatedEvent(b)}},doDelegatedEvent:function(g,h){var e=this,f=g.timeStamp;g=new Ext.event.Event(g);if(e.isEventBlocked(g)){return false}e.beforeEvent(g);Ext.frameStartTime=f;e.reEnterCount++;e.publish(g.type,g.target,g);e.reEnterCount--;if(h!==false){e.afterEvent(g)}return g},onDirectEvent:function(b){if(Ext.elevateFunction){Ext.elevateFunction(this.doDirectEvent,this,[b,false])}else{this.doDirectEvent(b,false)}},onDirectCaptureEvent:function(b){if(Ext.elevateFunction){Ext.elevateFunction(this.doDirectEvent,this,[b,true])}else{this.doDirectEvent(b,true)}},doDirectEvent:function(i,e){var k=this,j=i.currentTarget,h=i.timeStamp,l;i=new Ext.event.Event(i);if(k.isEventBlocked(i)){return}k.beforeEvent(i);Ext.frameStartTime=h;l=Ext.cache[j.id];if(l){k.reEnterCount++;k.fire(l,i.type,i,true,e);k.reEnterCount--}k.afterEvent(i)},beforeEvent:function(j){var h=j.browserEvent,g=Ext.event.publisher.Dom,e,i;if(h.type==="touchstart"){e=h.touches;if(e.length===1){i=e[0];g.lastTouchStartX=i.pageX;g.lastTouchStartY=i.pageY}}},afterEvent:function(i){var h=i.browserEvent,j=h.type,e=Ext.event.publisher.Dom,g=Ext.GlobalEvents;if(i.self.pointerEvents[j]&&i.pointerType!=="mouse"){e.lastScreenPointerEventTime=Ext.now()}if(j==="touchend"){e.lastTouchEndTime=Ext.now()}if(!this.reEnterCount&&g.hasListeners.idle&&!g.idleEventMask[j]){g.fireEvent("idle")}},isEventBlocked:function(h){var i=this,j=h.type,g=Ext.event.publisher.Dom,e=Ext.now();if(Ext.isGecko&&h.type==="click"&&h.button===2){return true}return(i.blockedPointerEvents[j]&&h.pointerType!=="mouse")||(i.blockedCompatibilityMouseEvents[j]&&(e-g.lastScreenPointerEventTime<1000))||(Ext.supports.TouchEvents&&h.self.mouseEvents[h.type]&&Math.abs(h.pageX-g.lastTouchStartX)<15&&Math.abs(h.pageY-g.lastTouchStartY)<15&&(Ext.now()-g.lastTouchEndTime)<1000)},destroy:function(){var b;for(b in this.delegatedListeners){this.removeDelegatedListener(b)}this.callParent()},reset:function(){var b=Ext.event.publisher.Dom;b.lastScreenPointerEventTime=b.lastTouchEndTime=b.lastTouchStartX=b.lastTouchStartY=undefined}},1,0,0,0,0,0,[Ext.event.publisher,"Dom"],function(e){var g=document,h=g.defaultView,f=e.prototype;if((Ext.os.is.iOS&&Ext.os.version.getMajor()<5)||Ext.browser.is.AndroidStock||!(h&&h.addEventListener)){f.target=g}else{f.target=h}e.instance=new e()}));(Ext.cmd.derive("Ext.event.publisher.Gesture",Ext.event.publisher.Dom,{type:"gesture",config:{async:true},isCancelEvent:{touchcancel:1,pointercancel:1,MSPointerCancel:1},handledEvents:[],handledDomEvents:[],constructor:function(w){var r=this,v=r.handledDomEvents,m=Ext.supports,o=m.TouchEvents,n=Ext.Function,u=r.onTouchStart,x=r.onTouchMove,p=r.onTouchEnd,s=n.createAnimationFrame(r.onTouchStart,r,null,1),t=n.createAnimationFrame(r.onTouchMove,r),q=n.createAnimationFrame(r.onTouchEnd,r,null,1);r._handlers={touchstart:u,touchmove:x,touchend:p,touchcancel:p,pointerdown:u,pointermove:x,pointerup:p,pointercancel:p,MSPointerDown:u,MSPointerMove:x,MSPointerUp:p,MSPointerCancel:p,mousedown:u,mousemove:x,mouseup:p};r._asyncHandlers={touchstart:s,touchmove:t,touchend:q,touchcancel:q,pointerdown:s,pointermove:t,pointerup:q,pointercancel:q,MSPointerDown:s,MSPointerMove:t,MSPointerUp:q,MSPointerCancel:q,mousedown:s,mousemove:t,mouseup:q};r.activeTouchesMap={};r.activeTouches=[];r.changedTouches=[];r.recognizers=[];if(o){r.onTargetTouchMove=r.onTargetTouchMove.bind(r);r.onTargetTouchEnd=r.onTargetTouchEnd.bind(r)}if(m.PointerEvents){v.push("pointerdown","pointermove","pointerup","pointercancel");r.mousePointerType="mouse"}else{if(m.MSPointerEvents){v.push("MSPointerDown","MSPointerMove","MSPointerUp","MSPointerCancel");r.mousePointerType=4}else{if(o){v.push("touchstart","touchmove","touchend","touchcancel")}}}if(!v.length||(o&&Ext.isWebKit&&Ext.os.is.Desktop)){v.push("mousedown","mousemove","mouseup")}r.initConfig(w);return Ext.event.publisher.Dom.prototype.constructor.call(this)},onReady:function(){Ext.event.publisher.Dom.prototype.onReady.call(this);Ext.Array.sort(this.recognizers,function(a,b){var g=a.priority,h=b.priority;return(g>h)?1:(g<h)?-1:0})},registerRecognizer:function(g){var h=this,f=g.handledEvents,i=f.length,j;g.setOnRecognized(h.onRecognized);g.setCallbackScope(h);for(j=0;j<i;j++){h.handledEvents.push(f[j])}h.registerEvents(f);h.recognizers.push(g)},onRecognized:function(q,o,t){var m=this,i=o.changedTouches,n=i.length,e,p,r,s;t=t||{};t.type=q;t.target=i[0].target;t.isStopped=false;o=o.chain(t);if(n>1){e=[];for(r=0;r<n;r++){s=i[r];e.push(s.targets)}p=m.getCommonTargets(e)}else{p=i[0].targets}m.publish(q,p,o)},getCommonTargets:function(j){var k=j[0],m=j.length;if(m===1){return k}var o=[],n=1,l,i,p;while(true){l=k[k.length-n];if(!l){return o}for(p=1;p<m;p++){i=j[p];if(i[i.length-n]!==l){return o}}o.unshift(l);n++}return o},invokeRecognizers:function(l,i){var e=this.recognizers,j=e.length,k,h;if(l==="onStart"){for(k=0;k<j;k++){e[k].isActive=true}}for(k=0;k<j;k++){h=e[k];if(h.isActive&&h[l].call(h,i)===false){h.isActive=false}}},updateTouches:function(y,E){var u=this,e=y.browserEvent,B=e.changedTouches||[e],F=u.activeTouches,x=u.activeTouchesMap,s=[],v,z,C,A,D,w,i,t;for(D=0,w=B.length;D<w;D++){v=B[D];if("identifier" in v){z=v.identifier}else{if("pointerId" in v){z=v.pointerId}else{z=1}}C=x[z];if(!C){A=Ext.event.Event.resolveTextNode(v.target);C=x[z]={identifier:z,target:A,targets:u.getPropagatingTargets(A)};F.push(C)}if(E){delete x[z];Ext.Array.remove(F,C)}i=v.pageX;t=v.pageY;C.pageX=i;C.pageY=t;C.point=new Ext.util.Point(i,t);s.push(C)}y.touches=Ext.Array.clone(F);y.changedTouches=s},doDelegatedEvent:function(c){var d=this;c=Ext.event.publisher.Dom.prototype.doDelegatedEvent.call(this,c,false);if(c){if(!c.button||c.button<1){d.handlers[c.type].call(d,c)}d.afterEvent(c)}},onTouchStart:function(g){var f=this,h=g.target,e=g.browserEvent.touches;if(g.browserEvent.type==="touchstart"){h.addEventListener("touchmove",f.onTargetTouchMove);h.addEventListener("touchend",f.onTargetTouchEnd);h.addEventListener("touchcancel",f.onTargetTouchEnd)}if(e&&e.length<=f.activeTouches.length){f.removeGhostTouches(e)}f.updateTouches(g);if(!f.isStarted){f.isStarted=true;f.invokeRecognizers("onStart",g);if(Ext.enableGarbageCollector){Ext.dom.GarbageCollector.pause()}}f.invokeRecognizers("onTouchStart",g)},onTouchMove:function(f){var d=this,e=d.mousePointerType;if(d.isStarted){if(e&&f.browserEvent.pointerType===e&&f.buttons===0){f.type=Ext.dom.Element.prototype.eventMap.touchend;f.button=0;d.onTouchEnd(f);return}d.updateTouches(f);if(f.changedTouches.length>0){d.invokeRecognizers("onTouchMove",f)}}},onTouchEnd:function(c){var d=this;if(!d.isStarted){return}d.updateTouches(c,true);d.invokeRecognizers(d.isCancelEvent[c.type]?"onTouchCancel":"onTouchEnd",c);if(!d.activeTouches.length){d.isStarted=false;d.invokeRecognizers("onEnd",c);if(Ext.enableGarbageCollector){Ext.dom.GarbageCollector.resume()}}},onTargetTouchMove:function(b){if(Ext.elevateFunction){Ext.elevateFunction(this.doTargetTouchMove,this,[b])}else{this.doTargetTouchMove(b)}},doTargetTouchMove:function(b){if(!Ext.getBody().contains(b.target)){this.onTouchMove(new Ext.event.Event(b))}},onTargetTouchEnd:function(b){if(Ext.elevateFunction){Ext.elevateFunction(this.doTargetTouchEnd,this,[b])}else{this.doTargetTouchEnd(b)}},doTargetTouchEnd:function(f){var e=this,d=f.target;d.removeEventListener("touchmove",e.onTargetTouchMove);d.removeEventListener("touchend",e.onTargetTouchEnd);d.removeEventListener("touchcancel",e.onTargetTouchEnd);if(!Ext.getBody().contains(d)){e.onTouchEnd(new Ext.event.Event(f))}},updateAsync:function(b){this.handlers=b?this._asyncHandlers:this._handlers},reset:function(){var h=this,f=h.recognizers,i=f.length,j,g;h.activeTouchesMap={};h.activeTouches=[];h.changedTouches=[];h.isStarted=false;for(j=0;j<i;j++){g=f[j];g.reset();g.isActive=false}Ext.event.publisher.Dom.prototype.reset.call(this)},privates:{removeGhostTouches:function(n){var p={},j=n.length,k=this.activeTouches,o=this.activeTouchesMap,i,l,m;for(i=0;i<j;++i){p[n[i].identifier]=true}i=k.length;while(i--){m=k[i];l=m.identifier;if(!n[l]){Ext.Array.remove(k,m);delete o[l]}}}}},1,0,0,0,0,0,[Ext.event.publisher,"Gesture"],function(b){b.instance=new b()}));(Ext.cmd.derive("Ext.mixin.Templatable",Ext.Mixin,{mixinConfig:{id:"templatable"},referenceAttributeName:"reference",referenceSelector:"[reference]",getElementConfig:function(){return{reference:"element"}},getElementTemplate:function(){var b=document.createDocumentFragment();b.appendChild(Ext.Element.create(this.getElementConfig(),true));return b},initElement:function(){var b=this.self.prototype;b.elementTemplate=this.getElementTemplate();b.initElement=b.doInitElement;this.initElement.apply(this,arguments)},linkElement:function(d,c){this.link(d,c)},doInitElement:function(){var j=this.referenceAttributeName,n,m,l,k,h,i;n=this.elementTemplate.cloneNode(true);m=n.querySelectorAll(this.referenceSelector);for(l=0,k=m.length;l<k;l++){h=m[l];i=h.getAttribute(j);h.removeAttribute(j);this.linkElement(i,h)}}},0,0,0,0,0,0,[Ext.mixin,"Templatable"],0));(Ext.cmd.derive("Ext.TaskQueue",Ext.Base,{singleton:true,pending:false,mode:true,constructor:function(){this.readQueue=[];this.writeQueue=[];this.run=Ext.Function.bind(this.run,this);if(Ext.os.is.iOS){Ext.interval(this.watch,500,this)}},requestRead:function(f,d,e){this.request(true);this.readQueue.push(arguments)},requestWrite:function(f,d,e){this.request(false);this.writeQueue.push(arguments)},request:function(b){if(!this.pending){this.pendingTime=Date.now();this.pending=true;this.mode=b;if(b){Ext.defer(this.run,1,this)}else{Ext.Function.requestAnimationFrame(this.run)}}},watch:function(){if(this.pending&&Date.now()-this.pendingTime>=500){this.run()}},run:function(){this.pending=false;var l=this.readQueue,p=this.writeQueue,r=null,o;if(this.mode){o=l;if(p.length>0){r=false}}else{o=p;if(l.length>0){r=true}}var s=o.slice(),q,n,t,m,i;o.length=0;for(q=0,n=s.length;q<n;q++){t=s[q];m=t[0];i=t[1];if(typeof m==="string"){m=i[m]}if(t.length>2){m.apply(i,t[2])}else{m.call(i)}}s.length=0;if(r!==null){this.request(r)}}},1,0,0,0,0,0,[Ext,"TaskQueue"],0));(Ext.cmd.derive("Ext.util.sizemonitor.Abstract",Ext.Base,{config:{element:null,callback:Ext.emptyFn,scope:null,args:[]},width:0,height:0,contentWidth:0,contentHeight:0,constructor:function(b){this.refresh=Ext.Function.bind(this.refresh,this);this.info={width:0,height:0,contentWidth:0,contentHeight:0,flag:0};this.initElement();this.initConfig(b);this.bindListeners(true)},bindListeners:Ext.emptyFn,applyElement:function(b){if(b){return Ext.get(b)}},updateElement:function(b){b.append(this.detectorsContainer);b.addCls("x-size-monitored")},applyArgs:function(b){return b.concat([this.info])},refreshMonitors:Ext.emptyFn,forceRefresh:function(){Ext.TaskQueue.requestRead("refresh",this)},getContentBounds:function(){return this.detectorsContainer.getBoundingClientRect()},getContentWidth:function(){return this.detectorsContainer.offsetWidth},getContentHeight:function(){return this.detectorsContainer.offsetHeight},refreshSize:function(){var q=this.getElement();if(!q||q.destroyed){return false}var s=q.getWidth(),k=q.getHeight(),t=this.getContentWidth(),l=this.getContentHeight(),m=this.contentWidth,o=this.contentHeight,r=this.info,p=false,n;this.width=s;this.height=k;this.contentWidth=t;this.contentHeight=l;n=((m!==t?1:0)+(o!==l?2:0));if(n>0){r.width=s;r.height=k;r.contentWidth=t;r.contentHeight=l;r.flag=n;p=true;this.getCallback().apply(this.getScope(),this.getArgs())}return p},refresh:function(b){if(this.refreshSize()||b){Ext.TaskQueue.requestWrite("refreshMonitors",this)}},destroy:function(){var c=this,d=c.getElement();c.bindListeners(false);if(d&&!d.destroyed){d.removeCls("x-size-monitored")}delete c._element;c.callParent()}},1,0,0,0,0,[[Ext.mixin.Templatable.prototype.mixinId||Ext.mixin.Templatable.$className,Ext.mixin.Templatable]],[Ext.util.sizemonitor,"Abstract"],0));(Ext.cmd.derive("Ext.util.sizemonitor.Scroll",Ext.util.sizemonitor.Abstract,{getElementConfig:function(){return{reference:"detectorsContainer",classList:["x-size-monitors","scroll"],children:[{reference:"expandMonitor",className:"expand"},{reference:"shrinkMonitor",className:"shrink"}]}},constructor:function(b){this.onScroll=Ext.Function.bind(this.onScroll,this);Ext.util.sizemonitor.Abstract.prototype.constructor.apply(this,arguments)},bindListeners:function(c){var d=c?"addEventListener":"removeEventListener";this.expandMonitor[d]("scroll",this.onScroll,true);this.shrinkMonitor[d]("scroll",this.onScroll,true)},forceRefresh:function(){Ext.TaskQueue.requestRead("refresh",this,[true])},onScroll:function(){Ext.TaskQueue.requestRead("refresh",this)},refreshMonitors:function(){var d=this.expandMonitor,f=this.shrinkMonitor,e=1000000;if(d&&!d.destroyed){d.scrollLeft=e;d.scrollTop=e}if(f&&!f.destroyed){f.scrollLeft=e;f.scrollTop=e}}},1,0,0,0,0,0,[Ext.util.sizemonitor,"Scroll"],0));(Ext.cmd.derive("Ext.util.sizemonitor.OverflowChange",Ext.util.sizemonitor.Abstract,{constructor:function(b){this.onExpand=Ext.Function.bind(this.onExpand,this);this.onShrink=Ext.Function.bind(this.onShrink,this);Ext.util.sizemonitor.Abstract.prototype.constructor.apply(this,arguments)},getElementConfig:function(){return{reference:"detectorsContainer",classList:["x-size-monitors","overflowchanged"],children:[{reference:"expandMonitor",className:"expand",children:[{reference:"expandHelper"}]},{reference:"shrinkMonitor",className:"shrink",children:[{reference:"shrinkHelper"}]}]}},bindListeners:function(c){var d=c?"addEventListener":"removeEventListener";this.expandMonitor[d](Ext.browser.is.Firefox?"underflow":"overflowchanged",this.onExpand,true);this.shrinkMonitor[d](Ext.browser.is.Firefox?"overflow":"overflowchanged",this.onShrink,true)},onExpand:function(b){if(Ext.browser.is.Webkit&&b.horizontalOverflow&&b.verticalOverflow){return}Ext.TaskQueue.requestRead("refresh",this)},onShrink:function(b){if(Ext.browser.is.Webkit&&!b.horizontalOverflow&&!b.verticalOverflow){return}Ext.TaskQueue.requestRead("refresh",this)},refreshMonitors:function(){if(this.destroyed){return}var i=this.expandHelper,j=this.shrinkHelper,g=this.getContentBounds(),k=g.width,h=g.height,l;if(i&&!i.destroyed){l=i.style;l.width=(k+1)+"px";l.height=(h+1)+"px"}if(j&&!j.destroyed){l=j.style;l.width=k+"px";l.height=h+"px"}Ext.TaskQueue.requestRead("refresh",this)}},1,0,0,0,0,0,[Ext.util.sizemonitor,"OverflowChange"],0));(Ext.cmd.derive("Ext.util.SizeMonitor",Ext.Base,{constructor:function(d){var c=Ext.util.sizemonitor;if(Ext.browser.is.Firefox){return new c.OverflowChange(d)}else{return new c.Scroll(d)}}},1,0,0,0,0,0,[Ext.util,"SizeMonitor"],0));(Ext.cmd.derive("Ext.event.publisher.ElementSize",Ext.event.publisher.Publisher,{type:"size",handledEvents:["resize"],constructor:function(){this.monitors={};this.subscribers={};Ext.event.publisher.Publisher.prototype.constructor.apply(this,arguments)},subscribe:function(e){var g=e.id,h=this.subscribers,f=this.monitors;if(h[g]){++h[g]}else{h[g]=1;f[g]=new Ext.util.SizeMonitor({element:e,callback:this.onElementResize,scope:this,args:[e]})}e.on("painted","forceRefresh",f[g]);return true},unsubscribe:function(j){var h=j.id,i=this.subscribers,f=this.monitors,g;if(i[h]&&!--i[h]){delete i[h];g=f[h];j.un("painted","forceRefresh",g);g.destroy();delete f[h]}},onElementResize:function(d,c){Ext.TaskQueue.requestRead("fire",this,[d,"resize",[d,c]])}},1,0,0,0,0,0,[Ext.event.publisher,"ElementSize"],function(b){b.instance=new b()}));(Ext.cmd.derive("Ext.util.paintmonitor.Abstract",Ext.Base,{config:{element:null,callback:Ext.emptyFn,scope:null,args:[]},eventName:"",monitorClass:"",constructor:function(b){this.onElementPainted=Ext.Function.bind(this.onElementPainted,this);this.initConfig(b)},bindListeners:function(b){this.monitorElement[b?"addEventListener":"removeEventListener"](this.eventName,this.onElementPainted,true)},applyElement:function(b){if(b){return Ext.get(b)}},updateElement:function(b){this.monitorElement=Ext.Element.create({classList:["x-paint-monitor",this.monitorClass]},true);b.appendChild(this.monitorElement);b.addCls("x-paint-monitored");this.bindListeners(true)},onElementPainted:function(){},destroy:function(){var g=this,e=g.monitorElement,f=e.parentNode,h=g.getElement();g.bindListeners(false);delete g.monitorElement;if(h&&!h.destroyed){h.removeCls("x-paint-monitored");delete g._element}if(f){f.removeChild(e)}g.callParent()}},1,0,0,0,0,0,[Ext.util.paintmonitor,"Abstract"],0));(Ext.cmd.derive("Ext.util.paintmonitor.CssAnimation",Ext.util.paintmonitor.Abstract,{eventName:Ext.browser.is.WebKit?"webkitAnimationEnd":"animationend",monitorClass:"cssanimation",onElementPainted:function(b){if(b.animationName==="x-paint-monitor-helper"){this.getCallback().apply(this.getScope(),this.getArgs())}}},0,0,0,0,0,0,[Ext.util.paintmonitor,"CssAnimation"],0));(Ext.cmd.derive("Ext.util.PaintMonitor",Ext.Base,{constructor:function(b){return new Ext.util.paintmonitor.CssAnimation(b)}},1,0,0,0,0,0,[Ext.util,"PaintMonitor"],0));(Ext.cmd.derive("Ext.event.publisher.ElementPaint",Ext.event.publisher.Publisher,{type:"paint",handledEvents:["painted"],constructor:function(){this.monitors={};this.subscribers={};Ext.event.publisher.Publisher.prototype.constructor.apply(this,arguments)},subscribe:function(f){var e=this,g=f.id,h=e.subscribers;if(h[g]){++h[g]}else{h[g]=1;e.monitors[g]=new Ext.util.PaintMonitor({element:f,callback:e.onElementPainted,scope:e,args:[f]})}},unsubscribe:function(e){var g=e.id,h=this.subscribers,f=this.monitors;if(h[g]&&!--h[g]){delete h[g];f[g].destroy();delete f[g]}},onElementPainted:function(b){Ext.TaskQueue.requestRead("fire",this,[b,"painted",[b]])}},1,0,0,0,0,0,[Ext.event.publisher,"ElementPaint"],function(b){b.instance=new b()}));(Ext.cmd.derive("Ext.dom.Element",Ext.Base,function(a3){var aY=window,aq=document,aH="ext-window",ax="ext-document",ba="width",at="height",aN="min-width",be="min-height",a2="max-width",aL="max-height",ap="top",aE="right",aw="bottom",aD="left",a8="visibility",aK="hidden",bf="display",an="none",a5="z-index",al="position",a0="relative",aZ="static",aT="-",aV=/\w/g,ay=/\s+/,aJ=/[\s]+/,bh=/^(?:transparent|(?:rgba[(](?:\s*\d+\s*[,]){3}\s*0\s*[)]))$/i,aA=/table-row|table-.*-group/,bg=/top/i,aW={t:"border-top-width",r:"border-right-width",b:"border-bottom-width",l:"border-left-width"},aP={t:"padding-top",r:"padding-right",b:"padding-bottom",l:"padding-left"},a6={t:"margin-top",r:"margin-right",b:"margin-bottom",l:"margin-left"},aF=[aP.l,aP.r,aP.t,aP.b],bc=[aW.l,aW.r,aW.t,aW.b],aS=/\d+$/,a9=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i,ar="px",au=/(-[a-z])/gi,aC=/([a-z0-9\-]+)\s*:\s*([^;\s]+(?:\s*[^;\s]+)*);?/gi,a1=/^\d+(?:\.\d*)?px$/i,aU={},aX="originalDisplay",am=function(b,a){return a.charAt(1).toUpperCase()},az=function(b,d){var a,c,e;if(b.nodeType===1){b._extData=null;if(d){a=b.childNodes;for(c=0,e=a.length;c<e;++c){az(a[c],d)}}}},aI="x-hidden-visibility",aM="x-hidden-display",a7="x-hidden-offsets",bi="x-hidden-clip",aO="x-sized",av="x-unsized",aB="x-stretched",aj="x-no-touch-scroll",a4={style:"style",className:"className",cls:"cls",classList:"classList",text:"text",hidden:"hidden",html:"html",children:"children"},ao=0,aR=0,aQ=false,bd=false,ak,aG,bb;return{alternateClassName:["Ext.Element"],observableType:"element",isElement:true,skipGarbageCollection:true,$applyConfigs:true,identifiablePrefix:"ext-element-",styleHooks:{},validIdRe:Ext.validIdRe,blockedEvents:Ext.supports.EmulatedMouseOver?{mouseover:1}:{},longpressEvents:{longpress:1,taphold:1},constructor:function(b){var c=this,a;if(typeof b==="string"){b=aq.getElementById(b)}if(!b){return null}c.dom=b;a=b.id;if(a){c.id=a}else{a=b.id=c.getUniqueId()}c.el=c;Ext.cache[a]=c;c.mixins.observable.constructor.call(c)},inheritableStatics:{cache:Ext.cache={},editableSelector:'input,textarea,[contenteditable="true"]',VISIBILITY:1,DISPLAY:2,OFFSETS:3,CLIP:4,minKeyboardHeight:100,unitRe:a9,useDelegatedEvents:true,validNodeTypes:{1:1,9:1},addUnits:function(a,b){if(typeof a==="number"){return a+(b||ar)}if(a===""||a==="auto"||a==null){return a||""}if(aS.test(a)){return a+(b||ar)}if(!a9.test(a)){return a||""}return a},create:function(j,k){var d=this,g=a4.hidden,h,c,a,b,l,i,e,f;if(!j){j={}}if(j.isElement){return k?j.dom:j}else{if("nodeType" in j){return k?j:Ext.get(j)}}if(typeof j==="string"){return aq.createTextNode(j)}a=j.tag;if(!a){a="div"}if(j.namespace){h=aq.createElementNS(j.namespace,a)}else{h=aq.createElement(a)}c=h.style;if(j[g]){f=j.className;f=(f==null)?"":f+" ";j.className=f+aM;delete j[g]}for(l in j){if(l!=="tag"){b=j[l];switch(l){case a4.style:if(typeof b==="string"){h.setAttribute(l,b)}else{for(i in b){if(b.hasOwnProperty(i)){c[i]=b[i]}}}break;case a4.className:case a4.cls:h.className=b;break;case a4.classList:h.className=b.join(" ");break;case a4.text:h.textContent=b;break;case a4.html:h.innerHTML=b;break;case a4.children:for(i=0,e=b.length;i<e;i++){h.appendChild(d.create(b[i],true))}break;default:if(b!=null){h.setAttribute(l,b)}}}}if(k){return h}else{return d.get(h)}},detach:function(){var a=this.dom;if(a&&a.parentNode&&a.tagName!=="BODY"){a.parentNode.removeChild(a)}return this},fly:function(a,b){return Ext.fly(a,b)},fromPoint:function(b,a){return Ext.get(aq.elementFromPoint(b,a))},get:function(h){var d=this,j=Ext.cache,f,g,i,a,b,e,c;if(!h){return null}if(h.isFly){h=h.dom}if(typeof h==="string"){i=h;if(j.hasOwnProperty(i)){a=j[i];if(a.skipGarbageCollection||!Ext.isGarbage(a.dom)){return a}else{a.destroy()}}if(i===aH){return a3.get(aY)}else{if(i===ax){return a3.get(aq)}}g=Ext.getElementById?Ext.getElementById(i):aq.getElementById(i);if(g){return new a3(g)}}f=h.nodeType;if(f){b=(f===9);c=d.validNodeTypes[f]}else{e=(h.window==h)}if(c||e){i=h.id;if(j.hasOwnProperty(i)){a=j[i];if(a.skipGarbageCollection||h===a.dom||!Ext.isGarbage(a.dom)){return a}else{a.destroy()}}if(h===aq){h.id=ax}if(h==aY){h.id=aH}h=new a3(h);if(e||b){h.skipGarbageCollection=true}return h}if(h.isElement){return h}if(h.isComposite){return h}if(Ext.isIterable(h)){return d.select(h)}return null},getActiveElement:function(b){var a=aq.activeElement;if(!a||!a.focus){a=aq.body}return b?Ext.get(a):a},getDocumentHeight:function(){return Math.max(!Ext.isStrict?aq.body.scrollHeight:aq.documentElement.scrollHeight,this.getViewportHeight())},getDocumentWidth:function(){return Math.max(!Ext.isStrict?aq.body.scrollWidth:aq.documentElement.scrollWidth,this.getViewportWidth())},getOrientation:function(){if(Ext.supports.OrientationChange){return(aY.orientation==0)?"portrait":"landscape"}return(aY.innerHeight>aY.innerWidth)?"portrait":"landscape"},getViewportHeight:function(){var a=a3._viewportHeight;if(Ext.isIE9m){return aq.documentElement.clientHeight}return(a!=null)?a:aY.innerHeight},getViewportWidth:function(){var a=a3._viewportWidth;if(Ext.isIE9m){return aq.documentElement.clientWidth}return(a!=null)?a:aY.innerWidth},getViewSize:function(){return{width:a3.getViewportWidth(),height:a3.getViewportHeight()}},normalize:function(a){return aU[a]||(aU[a]=a.replace(au,am))},_onWindowFocusChange:function(a){if(Ext.fly(a.target).is(a3.editableSelector)){ao=new Date();aQ=(a.type==="focusin"||a.type==="pointerup")}},_onWindowResize:function(){var b=window.innerWidth,a=window.innerHeight,c=new Date(),e=1000,d,f;d=b-a3._windowWidth;f=a-a3._windowHeight;a3._windowWidth=b;a3._windowHeight=a;if(((c-ao)<e)||((c-aR)<e)){if(d===0&&(aQ&&(f<=-a3.minKeyboardHeight))){bd=true;return}}if(bd&&(d===0)&&(f>=a3.minKeyboardHeight)){bd=false;aR=new Date()}if(bd){return}a3._viewportWidth=b;a3._viewportHeight=a},parseBox:function(b){b=b||0;var d=typeof b,a,c;if(d==="number"){return{top:b,right:b,bottom:b,left:b}}else{if(d!=="string"){return b}}a=b.split(" ");c=a.length;if(c===1){a[1]=a[2]=a[3]=a[0]}else{if(c===2){a[2]=a[0];a[3]=a[1]}else{if(c===3){a[3]=a[1]}}}return{top:parseFloat(a[0])||0,right:parseFloat(a[1])||0,bottom:parseFloat(a[2])||0,left:parseFloat(a[3])||0}},parseStyles:function(b){var c={},a;if(b){aC.lastIndex=0;while((a=aC.exec(b))){c[a[1]]=a[2]||""}}return c},select:function(c,a,b){return Ext.fly(b||aq).select(c,a)},query:function(b,c,a){return Ext.fly(a||aq).query(b,c)},unitizeBox:function(a,c){var b=this;a=b.parseBox(a);return b.addUnits(a.top,c)+" "+b.addUnits(a.right,c)+" "+b.addUnits(a.bottom,c)+" "+b.addUnits(a.left,c)},serializeForm:function(l){var k=l.elements||(aq.forms[l]||Ext.getDom(l)).elements,b=false,c=encodeURIComponent,h="",i=k.length,g,n,d,o,a,f,j,e,m;for(f=0;f<i;f++){g=k[f];n=g.name;d=g.type;o=g.options;if(!g.disabled&&n){if(/select-(one|multiple)/i.test(d)){e=o.length;for(j=0;j<e;j++){m=o[j];if(m.selected){a=m.hasAttribute("value");h+=Ext.String.format("{0}={1}&",c(n),c(a?m.value:m.text))}}}else{if(!(/file|undefined|reset|button/i.test(d))){if(!(/radio|checkbox/i.test(d)&&!g.checked)&&!(d=="submit"&&b)){h+=c(n)+"="+c(g.value)+"&";b=/submit/i.test(d)}}}}}return h.substr(0,h.length-1)},getCommonAncestor:function(a,b,c){bb=bb||new Ext.dom.Fly();bb.attach(Ext.getDom(a));while(!bb.isAncestor(b)){if(bb.dom.parentNode){bb.attach(bb.dom.parentNode)}else{bb.attach(document.body);break}}return c?bb.dom:Ext.get(bb)}},addCls:function(d,f,b){var c=this,i=c.getData(),a,h,k,j,g,e,l;if(!d){return c}if(!i.isSynchronized){c.synchronize()}h=c.dom;k=i.classMap;j=i.classList;f=f?f+aT:"";b=b?aT+b:"";if(typeof d==="string"){d=d.split(ay)}for(g=0,e=d.length;g<e;g++){l=d[g];if(l){l=f+l+b;if(!k[l]){k[l]=true;j.push(l);a=true}}}if(a){h.className=j.join(" ")}return c},addStyles:function(a,b){var f=0,c=(a||"").match(aV),d,h=c.length,e,g=[];if(h===1){f=Math.abs(parseFloat(this.getStyle(b[c[0]]))||0)}else{if(h){for(d=0;d<h;d++){e=c[d];g.push(b[e])}g=this.getStyle(g);for(d=0;d<h;d++){e=c[d];f+=parseFloat(g[b[e]])||0}}}return f},addUnits:function(a,b){return a3.addUnits(a,b)},adjustDirect2DDimension:function(g){var b=this,h=b.dom,d=b.getStyle("display"),e=h.style.display,a=h.style.position,c=g===ba?0:1,i=h.currentStyle,f;if(d==="inline"){h.style.display="inline-block"}h.style.position=d.match(aA)?"absolute":"static";f=(parseFloat(i[g])||parseFloat(i.msTransformOrigin.split(" ")[c])*2)%1;h.style.position=a;if(d==="inline"){h.style.display=e}return f},animate:function(a){a=new Ext.fx.Animation(a);a.setElement(this);this._activeAnimation=a;a.on({animationend:this._onAnimationEnd});Ext.Animator.run(a);return a},_onAnimationEnd:function(){this._activeAnimation=null},getActiveAnimation:function(){return this._activeAnimation},append:function(){this.appendChild.apply(this,arguments)},appendChild:function(d,e){var c=this,a,f,b;if(d.nodeType||d.dom||typeof d==="string"){d=Ext.getDom(d);c.dom.appendChild(d);return !e?Ext.get(d):d}else{if(d.length){a=Ext.fly(document.createDocumentFragment());f=d.length;for(b=0;b<f;b++){a.appendChild(d[b],e)}c.dom.appendChild(a.dom);return e?a.dom:a}else{return c.createChild(d,null,e)}}},appendTo:function(a){Ext.getDom(a).appendChild(this.dom);return this},applyStyles:function(a){if(a){if(typeof a==="function"){a=a.call()}if(typeof a==="string"){a=a3.parseStyles(a)}if(typeof a==="object"){this.setStyle(a)}}return this},blur:function(){var c=this,a=c.dom;if(a!==aq.body){try{a.blur()}catch(b){}return c}else{return c.focus(undefined,a)}},cacheScrollValues:function(){var c=this,b=[],d=[],a,e,f,g;aG=aG||new Ext.dom.Fly();a=c.query("*");for(f=0,g=a.length;f<g;f++){e=a[f];if(e.scrollTop>0||e.scrollLeft!==0){d.push(e);b.push(aG.attach(e).getScroll())}}return function(){var i,h,j;for(h=0,j=d.length;h<j;h++){i=b[h];aG.attach(d[h]);aG.setScrollLeft(i.left);aG.setScrollTop(i.top)}}},center:function(a){return this.alignTo(a||aq,"c-c")},child:function(d,c){var b=this,a=Ext.get(b).id;return b.selectNode(Ext.makeIdSelector(a)+" > "+d,!!c)},clone:function(c,b){var a=this.dom.cloneNode(c);if(Ext.supports.CloneNodeCopiesExpando){az(a,c)}return b?a:Ext.get(a)},constrainScrollLeft:function(b){var a=this.dom;return Math.max(Math.min(b,a.scrollWidth-a.clientWidth),0)},constrainScrollTop:function(b){var a=this.dom;return Math.max(Math.min(b,a.scrollHeight-a.clientHeight),0)},createChild:function(b,c,a){b=b||{tag:"div"};if(c){return Ext.DomHelper.insertBefore(c,b,a!==true)}else{return Ext.DomHelper.append(this.dom,b,a!==true)}},contains:function(c){if(!c){return false}var b=this,a=Ext.getDom(c);return(a===b.dom)||b.isAncestor(a)},destroy:function(){var b=this,a=b.dom;if(a&&a.parentNode){a.parentNode.removeChild(a)}b.collect();if(!b.isFly){b.callParent()}},detach:function(){var a=this.dom;if(a&&a.parentNode&&a.tagName!=="BODY"){a.parentNode.removeChild(a)}return this},disableShadow:function(){var a=this.shadow;if(a){a.hide();a.disabled=true}},disableShim:function(){var a=this.shim;if(a){a.hide();a.disabled=true}},disableTouchContextMenu:function(){this._contextMenuListenerRemover=this.on({MSHoldVisual:function(a){a.preventDefault()},destroyable:true,delegated:false})},disableTouchScroll:function(){this.addCls(aj);this.on({touchmove:function(a){a.preventDefault()},translate:false})},doReplaceWith:function(b){var a=this.dom;a.parentNode.replaceChild(Ext.getDom(b),a)},doScrollIntoView:function(m,i,l,h,b,e){aG=aG||new Ext.dom.Fly();var d=this,g=d.dom,a=aG.attach(m)[b](),c=m.scrollTop,f=d.getScrollIntoViewXY(m,a,c),j=f.x,k=f.y;if(h){if(l){l=Ext.apply({listeners:{afteranimate:function(){aG.attach(g).highlight()}}},l)}else{aG.attach(g).highlight()}}if(k!==c){aG.attach(m).scrollTo("top",k,l)}if(i!==false&&(j!==a)){aG.attach(m)[e]("left",j,l)}return d},down:function(b,a){return this.selectNode(b,!!a)},enableShadow:function(d,e){var c=this,a=c.shadow||(c.shadow=new Ext.dom.Shadow(Ext.apply({target:c},d))),b=c.shim;if(b){b.offsets=a.outerOffsets;b.shadow=a;a.shim=b}if(e===true||(e!==false&&c.isVisible())){a.show()}else{a.hide()}a.disabled=false},enableShim:function(d,e){var c=this,a=c.shim||(c.shim=new Ext.dom.Shim(Ext.apply({target:c},d))),b=c.shadow;if(b){a.offsets=b.outerOffsets;a.shadow=b;b.shim=a}if(e===true||(e!==false&&c.isVisible())){a.show()}else{a.hide()}a.disabled=false},findParent:function(a,f,g){var d=this,c=d.dom,e=aq.documentElement,b=0;if(f||f===0){if(typeof f!=="number"){e=Ext.getDom(f);f=Number.MAX_VALUE}}else{f=50}while(c&&c.nodeType===1&&b<f&&c!==e){if(Ext.fly(c).is(a)){return g?Ext.get(c):c}b++;c=c.parentNode}return null},findParentNode:function(a,c,d){var b=Ext.fly(this.dom.parentNode);return b?b.findParent(a,c,d):null},first:function(b,a){return this.matchNode("nextSibling","firstChild",b,a)},focus:function(a,b){var c=this;b=b||c.dom;if(Number(a)){Ext.defer(c.focus,a,c,[null,b])}else{Ext.GlobalEvents.fireEvent("beforefocus",b);b.focus()}return c},collect:function(){var d=this,c=d.dom,a=d.shadow,b=d.shim;if(!d.isFly){d.mixins.observable.destroy.call(d);delete Ext.cache[d.id];d.destroyed=true;d.el=null}if(c){c._extData=d.dom=null}if(a){a.hide();d.shadow=null}if(b){b.hide();d.shim=null}},getAnchorToXY:function(a,d,b,c){return a.getAnchorXY(d,b,c)},getAttribute:function(c,b){var a=this.dom;return b?(a.getAttributeNS(b,c)||a.getAttribute(b+":"+c)):(a.getAttribute(c)||a[c]||null)},getAttributes:function(){var b=this.dom.attributes,c={},d,a,e;for(a=0,e=b.length;a<e;a++){d=b[a];c[d.name]=d.value}return c},getBottom:function(a){return(a?this.getLocalY():this.getY())+this.getHeight()},getById:function(a,c){var b=aq.getElementById(a)||this.dom.querySelector(Ext.makeIdSelector(a));return c?b:(b?Ext.get(b):null)},getBorderPadding:function(){var b=this.getStyle(aF),a=this.getStyle(bc);return{beforeX:(parseFloat(a[aW.l])||0)+(parseFloat(b[aP.l])||0),afterX:(parseFloat(a[aW.r])||0)+(parseFloat(b[aP.r])||0),beforeY:(parseFloat(a[aW.t])||0)+(parseFloat(b[aP.t])||0),afterY:(parseFloat(a[aW.b])||0)+(parseFloat(b[aP.b])||0)}},getBorders:function(){var a=this.getStyle(bc);return{beforeX:(parseFloat(a[aW.l])||0),afterX:(parseFloat(a[aW.r])||0),beforeY:(parseFloat(a[aW.t])||0),afterY:(parseFloat(a[aW.b])||0)}},getBorderWidth:function(a){return this.addStyles(a,aW)},getData:function(c){var a=this.dom,b;if(a){b=a._extData;if(!b&&!c){a._extData=b={}}}return b},getFirstChild:function(){return Ext.get(this.dom.firstElementChild)},getHeight:function(c,e){var d=this,b=d.isStyle("display","none"),f,a;if(b){return 0}f=d.dom.offsetHeight;if(Ext.supports.Direct2DBug){a=d.adjustDirect2DDimension(at);if(e){f+=a}else{if(a>0&&a<0.5){f++}}}if(c){f-=d.getBorderWidth("tb")+d.getPadding("tb")}return(f<0)?0:f},getHtml:function(){return this.dom?this.dom.innerHTML:""},getLeft:function(a){return a?this.getLocalX():this.getX()},getLocalX:function(){var a=this,b,c=a.getStyle("left");if(!c||c==="auto"){c=0}else{if(a1.test(c)){c=parseFloat(c)}else{c=a.getX();b=a.dom.offsetParent;if(b){c-=Ext.fly(b).getX()}}}return c},getLocalXY:function(){var b=this,c,d=b.getStyle(["left","top"]),e=d.left,a=d.top;if(!e||e==="auto"){e=0}else{if(a1.test(e)){e=parseFloat(e)}else{e=b.getX();c=b.dom.offsetParent;if(c){e-=Ext.fly(c).getX()}}}if(!a||a==="auto"){a=0}else{if(a1.test(a)){a=parseFloat(a)}else{a=b.getY();c=b.dom.offsetParent;if(c){a-=Ext.fly(c).getY()}}}return[e,a]},getLocalY:function(){var b=this,c,a=b.getStyle("top");if(!a||a==="auto"){a=0}else{if(a1.test(a)){a=parseFloat(a)}else{a=b.getY();c=b.dom.offsetParent;if(c){a-=Ext.fly(c).getY()}}}return a},getMargin:(function(){var a={t:"top",l:"left",r:"right",b:"bottom"},b=["margin-top","margin-left","margin-right","margin-bottom"];return function(f){var d=this,e,g,c;if(!f){e=d.getStyle(b);c={};if(e&&typeof e==="object"){c={};for(g in a6){c[g]=c[a[g]]=parseFloat(e[a6[g]])||0}}}else{c=d.addStyles(f,a6)}return c}})(),getPadding:function(a){return this.addStyles(a,aP)},getParent:function(){return Ext.get(this.dom.parentNode)},getRight:function(a){return(a?this.getLocalX():this.getX())+this.getWidth()},getScroll:function(){var d=this,a=d.dom,e=aq.documentElement,b,c,f=document.body;if(a===aq||a===f){b=e.scrollLeft||(f?f.scrollLeft:0);c=e.scrollTop||(f?f.scrollTop:0)}else{b=a.scrollLeft;c=a.scrollTop}return{left:b,top:c}},getScrollIntoViewXY:function(m,d,e){var b=this.dom,q=Ext.getDom(m),p=this.getOffsetsTo(q),f=b.offsetWidth,j=b.offsetHeight,r=p[0]+d,l=p[1]+e,n=l+j,k=r+f,h=q.clientHeight,c=q.clientWidth,a=d,g=e,o=g+h,i=a+c;if(j>h||l<g){e=l}else{if(n>o){e=n-h}}if(f>c||r<a){d=r}else{if(k>i){d=k-c}}return{x:d,y:e}},getScrollLeft:function(){var a=this.dom;if(a===aq||a===document.body){return this.getScroll().left}else{return a.scrollLeft}},getScrollTop:function(){var a=this.dom;if(a===aq||a===document.body){return this.getScroll().top}else{return a.scrollTop}},getSize:function(a){return{width:this.getWidth(a),height:this.getHeight(a)}},getStyle:function(b,g){var f=this,k=f.dom,o=typeof b!=="string",a=f.styleHooks,m=b,e=m,h=1,i,p,c,d,l,n,j;if(o){c={};m=e[0];j=0;if(!(h=e.length)){return c}}if(!k||k.documentElement){return c||""}i=k.style;if(g){n=i}else{n=k.ownerDocument.defaultView.getComputedStyle(k,null);if(!n){g=true;n=i}}do{d=a[m];if(!d){a[m]=d={name:a3.normalize(m)}}if(d.get){l=d.get(k,f,g,n)}else{p=d.name;l=n[p]}if(!o){return l}c[m]=l;m=e[++j]}while(j<h);return c},getStyleValue:function(a){return this.dom.style.getPropertyValue(a)},getTop:function(a){return a?this.getLocalY():this.getY()},getValue:function(a){var b=this.dom.value;return a?parseInt(b,10):b},getViewSize:function(){var a=this.dom;if(a===aq||a===aq.body){return{width:a3.getViewportWidth(),height:a3.getViewportHeight()}}else{return{width:a.clientWidth,height:a.clientHeight}}},getVisibilityMode:function(){var c=this,b=c.getData(),a=b.visibilityMode;if(a===undefined){b.visibilityMode=a=a3.DISPLAY}return a},getWidth:function(h,c){var e=this,b=e.dom,d=e.isStyle("display","none"),f,g,a;if(d){return 0}if(Ext.supports.BoundingClientRect){f=b.getBoundingClientRect();g=(e.vertical&&!Ext.supports.RotatedBoundingClientRect)?(f.bottom-f.top):(f.right-f.left);g=c?g:Math.ceil(g)}else{g=b.offsetWidth}if(Ext.supports.Direct2DBug&&!e.vertical){a=e.adjustDirect2DDimension(ba);if(c){g+=a}else{if(a>0&&a<0.5){g++}}}if(h){g-=e.getBorderWidth("lr")+e.getPadding("lr")}return(g<0)?0:g},getX:function(){return this.getXY()[0]},getXY:function(){var e=Math.round,b=this.dom,f=0,a=0,c,g;if(b!==aq&&b!==aq.body){try{c=b.getBoundingClientRect()}catch(d){c={left:0,top:0}}f=e(c.left);a=e(c.top);g=Ext.getDoc().getScroll();f+=g.left;a+=g.top}return[f,a]},getY:function(){return this.getXY()[1]},getZIndex:function(){return parseInt(this.getStyle("z-index"),10)},hasCls:function(b){var a=this.getData();if(!a.isSynchronized){this.synchronize()}return a.classMap.hasOwnProperty(b)},hide:function(){this.setVisible(false);return this},insertAfter:function(a){a=Ext.getDom(a);a.parentNode.insertBefore(this.dom,a.nextSibling);return this},insertBefore:function(a){a=Ext.getDom(a);a.parentNode.insertBefore(this.dom,a);return this},insertFirst:function(a,b){a=a||{};if(a.nodeType||a.dom||typeof a==="string"){a=Ext.getDom(a);this.dom.insertBefore(a,this.dom.firstChild);return !b?Ext.get(a):a}else{return this.createChild(a,this.dom.firstChild,b)}},insertHtml:function(c,b,d){var a=Ext.DomHelper.insertHtml(c,this.dom,b);return d?Ext.get(a):a},insertSibling:function(i,f,c){var d=this,b=Ext.DomHelper,a=(f||"before").toLowerCase()==="after",g,j,h,e;if(Ext.isIterable(i)){h=i.length;j=Ext.fly(document.createDocumentFragment());if(Ext.isArray(i)){for(e=0;e<h;e++){g=j.appendChild(i[e],c)}}else{for(e=0;e<h;e++){j.dom.appendChild(g=i[0])}if(c===false){g=Ext.get(g)}}d.dom.parentNode.insertBefore(j.dom,a?d.dom.nextSibling:d.dom);return g}i=i||{};if(i.nodeType||i.dom){g=d.dom.parentNode.insertBefore(Ext.getDom(i),a?d.dom.nextSibling:d.dom);if(!c){g=Ext.get(g)}}else{if(a&&!d.dom.nextSibling){g=b.append(d.dom.parentNode,i,!c)}else{g=b[a?"insertAfter":"insertBefore"](d.dom,i,!c)}}return g},is:function(c){var a=this.dom,b;if(!c){b=true}else{if(!a.tagName){b=false}else{if(Ext.isFunction(c)){b=c(a)}else{b=a[Ext.supports.matchesSelector](c)}}}return b},isAncestor:function(c){var d=false,b=this.dom,a=Ext.getDom(c);if(b&&a){if(b.contains){return b.contains(a)}else{if(b.compareDocumentPosition){return !!(b.compareDocumentPosition(a)&16)}else{while((a=a.parentNode)){d=a===b||d}}}}return d},isPainted:(function(){return !Ext.browser.is.IE?function(){var a=this.dom;return Boolean(a&&a.offsetParent)}:function(){var a=this.dom;return Boolean(a&&(a.offsetHeight!==0&&a.offsetWidth!==0))}})(),isScrollable:function(){var a=this.dom;return a.scrollHeight>a.clientHeight||a.scrollWidth>a.clientWidth},isStyle:function(b,a){return this.getStyle(b)===a},isVisible:function(b){var a=this.dom,c;if(!a){return false}if(!ak){ak=new Ext.dom.Fly()}for(c=a.ownerDocument.documentElement;a!==c;a=a.parentNode){if(!a||a.nodeType===11||(ak.attach(a)).isStyle(a8,aK)||ak.isStyle(bf,an)){return false}if(!b){break}}return true},last:function(b,a){return this.matchNode("previousSibling","lastChild",b,a)},maskIframes:function(){var a=document.getElementsByTagName("iframe");Ext.each(a,function(b){var c=Ext.fly(b.parentNode),d=c.mask();d.setStyle("background-color","transparent")})},matchNode:function(e,a,f,d){var c=this.dom,b;if(!c){return null}b=c[a];while(b){if(b.nodeType===1&&(!f||Ext.fly(b,"_matchNode").is(f))){return !d?Ext.get(b):b}b=b[e]}return null},next:function(b,a){return this.matchNode("nextSibling","nextSibling",b,a)},parent:function(b,a){return this.matchNode("parentNode","parentNode",b,a)},position:function(a,b,e,c){var d=this;if(d.dom.tagName!=="BODY"){if(!a&&d.isStyle(al,aZ)){d.setStyle(al,a0)}else{if(a){d.setStyle(al,a)}}if(b){d.setStyle(a5,b)}if(e||c){d.setXY([e||false,c||false])}}},prev:function(b,a){return this.matchNode("previousSibling","previousSibling",b,a)},query:function(i,a,c){var g=this.dom,e,d,b,j,k,f,h;if(!g){return null}a=(a!==false);i=i.split(",");if(!c){e=[]}for(f=0,d=i.length;f<d;f++){if(typeof i[f]==="string"){if(c){j=g.querySelector(i[f]);return a?j:Ext.get(j)}k=g.querySelectorAll(i[f]);for(h=0,b=k.length;h<b;h++){e.push(a?k[h]:Ext.get(k[h]))}}}return e},radioCls:function(b){var a=this.dom.parentNode.childNodes,d;b=Ext.isArray(b)?b:[b];for(var c=0,e=a.length;c<e;c++){d=a[c];if(d&&d.nodeType===1){Ext.fly(d).removeCls(b)}}return this.addCls(b)},redraw:function(){var a=this.dom,b=a.style;b.display="none";a.offsetHeight;b.display=""},remove:function(){this.destroy()},removeChild:function(a){this.dom.removeChild(Ext.getDom(a));return this},removeCls:function(d,f,b){var c=this,i=c.getData(),a,h,k,j,g,e,l;if(!d){return c}if(!i.isSynchronized){c.synchronize()}h=c.dom;k=i.classMap;j=i.classList;f=f?f+aT:"";b=b?aT+b:"";if(typeof d==="string"){d=d.split(ay)}for(g=0,e=d.length;g<e;g++){l=d[g];if(l){l=f+l+b;if(k[l]){delete k[l];Ext.Array.remove(j,l);a=true}}}if(a){h.className=j.join(" ")}return c},repaint:function(){var a=this;a.addCls("x-repaint");Ext.defer(function(){if(a.dom){Ext.fly(a.dom).removeCls("x-repaint")}},1);return a},replace:function(c,d){c=Ext.getDom(c);var e=c.parentNode,a=c.id,b=this.dom;if(d!==false&&a&&Ext.cache[a]){e.insertBefore(b,c);Ext.get(c).destroy()}else{e.replaceChild(b,c)}return this},replaceCls:function(k,d,f,a){var c=this,h,l,j,g,e,m,i=c.getData(),b;if(!k&&!d){return c}k=k||[];d=d||[];if(!i.isSynchronized){c.synchronize()}if(!a){a=""}h=c.dom;l=i.classMap;j=i.classList;f=f?f+aT:"";a=a?aT+a:"";if(typeof k==="string"){k=k.split(ay)}if(typeof d==="string"){d=d.split(ay)}for(g=0,e=k.length;g<e;g++){m=f+k[g]+a;if(l[m]){delete l[m];b=true}}for(g=0,e=d.length;g<e;g++){m=f+d[g]+a;if(!l[m]){l[m]=true;b=true}}if(b){i.classList=j=Ext.Object.getKeys(l);h.className=j.join(" ")}return c},replaceWith:function(c){var b=this,a=b.dom,d=a.parentNode,f=Ext.cache,e;b.clearListeners();if(c.nodeType||c.dom||typeof c==="string"){c=Ext.get(c);e=d.insertBefore(c.dom,a)}else{e=Ext.DomHelper.insertBefore(a,c)}d.removeChild(a);b.dom=e;if(!b.isFly){delete f[b.id];f[b.id=Ext.id(e)]=b}return b},resolveListenerScope:function(a){var b=this.component;return b?b.resolveListenerScope(a):this},scroll:function(a,i,g){if(!this.isScrollable()){return false}a=a.charAt(0);var b=this,e=b.dom,c=a==="r"||a==="l"?"left":"top",h=false,f,d;if(a==="l"||a==="t"||a==="u"){i=-i}if(c==="left"){f=e.scrollLeft;d=b.constrainScrollLeft(f+i)}else{f=e.scrollTop;d=b.constrainScrollTop(f+i)}if(d!==f){this.scrollTo(c,d,g);h=true}return h},scrollBy:function(d,e,c){var b=this,a=b.dom;if(d.length){c=e;e=d[1];d=d[0]}else{if(typeof d!="number"){c=e;e=d.y;d=d.x}}if(d){b.scrollTo("left",b.constrainScrollLeft(a.scrollLeft+d),c)}if(e){b.scrollTo("top",b.constrainScrollTop(a.scrollTop+e),c)}return b},scrollChildIntoView:function(a,b){Ext.fly(a).scrollIntoView(this,b)},scrollIntoView:function(d,a,b,c){d=Ext.getDom(d)||Ext.getBody().dom;return this.doScrollIntoView(d,a,b,c,"getScrollLeft","scrollTo")},scrollTo:function(f,d,h){var c=bg.test(f),e=this,a=c?"scrollTop":"scrollLeft",b=e.dom,g;if(!h||!e.anim){b[a]=d;b[a]=d}else{g={to:{}};g.to[a]=d;if(Ext.isObject(h)){Ext.applyIf(g,h)}e.animate(g)}return e},select:function(c,a){var d,b;if(typeof c==="string"){b=this.query(c,!a)}else{b=c;d=true}return a?new Ext.CompositeElement(b,!d):new Ext.CompositeElementLite(b,true)},selectNode:function(a,b){return this.query(a,b,true)},set:function(f,e){var c=this,a=c.dom,d,b;for(d in f){if(f.hasOwnProperty(d)){b=f[d];if(d==="style"){c.applyStyles(b)}else{if(d==="cls"){a.className=b}else{if(e!==false){if(b===undefined){a.removeAttribute(d)}else{a.setAttribute(d,b)}}else{a[d]=b}}}}}return c},setBottom:function(a){this.dom.style[aw]=a3.addUnits(a);return this},setCls:function(e){var c=this,f=c.getData(),g,d,h,b,a;if(!f.isSynchronized){c.synchronize()}if(typeof e==="string"){e=e.split(ay)}f.classList=a=e.slice();f.classMap=b={};for(g=0,d=a.length;g<d;g++){b[a[g]]=true}c.dom.className=a.join(" ")},setDisplayed:function(a){var b=this;if(typeof a==="boolean"){a=a?b._getDisplay():an}b.setStyle(bf,a);if(b.shadow||b.shim){b.setUnderlaysVisible(a!==an)}return b},setHeight:function(b){var a=this;a.dom.style[at]=a3.addUnits(b);if(a.shadow||a.shim){a.syncUnderlays()}return a},setHtml:function(a){if(this.dom){this.dom.innerHTML=a}return this},setId:function(a){var b=this,d=b.id,c=Ext.cache;if(d){delete c[d]}b.dom.id=a;b.id=a;c[a]=b;return b},setLeft:function(a){var b=this;b.dom.style[aD]=a3.addUnits(a);if(b.shadow||b.shim){b.syncUnderlays()}return b},setLocalX:function(c){var a=this,b=a.dom.style;b.right="auto";b.left=(c===null)?"auto":c+"px";if(a.shadow||a.shim){a.syncUnderlays()}return a},setLocalXY:function(d,a){var b=this,c=b.dom.style;c.right="auto";if(d&&d.length){a=d[1];d=d[0]}if(d===null){c.left="auto"}else{if(d!==undefined){c.left=d+"px"}}if(a===null){c.top="auto"}else{if(a!==undefined){c.top=a+"px"}}if(b.shadow||b.shim){b.syncUnderlays()}return b},setLocalY:function(a){var b=this;b.dom.style.top=(a===null)?"auto":a+"px";if(b.shadow||b.shim){b.syncUnderlays()}return b},setMargin:function(a){var b=this,c=b.dom.style;if(a||a===0){a=b.self.unitizeBox((a===true)?5:a);c.setProperty("margin",a,"important")}else{c.removeProperty("margin-top");c.removeProperty("margin-right");c.removeProperty("margin-bottom");c.removeProperty("margin-left")}},setMaxHeight:function(a){this.dom.style[aL]=a3.addUnits(a);return this},setMaxWidth:function(a){this.dom.style[a2]=a3.addUnits(a);return this},setMinHeight:function(a){this.dom.style[be]=a3.addUnits(a);return this},setMinWidth:function(a){this.dom.style[aN]=a3.addUnits(a);return this},setOpacity:function(b){var a=this;if(a.dom){a.setStyle("opacity",b)}return a},setPadding:function(a){var b=this,c=b.dom.style;if(a||a===0){a=b.self.unitizeBox((a===true)?5:a);c.setProperty("padding",a,"important")}else{c.removeProperty("padding-top");c.removeProperty("padding-right");c.removeProperty("padding-bottom");c.removeProperty("padding-left")}},setRight:function(a){this.dom.style[aE]=a3.addUnits(a);return this},setScrollLeft:function(a){this.dom.scrollLeft=a;return this},setScrollTop:function(a){this.dom.scrollTop=a;return this},setSize:function(b,d){var a=this,c=a.dom.style;if(Ext.isObject(b)){d=b.height;b=b.width}c.width=a3.addUnits(b);c.height=a3.addUnits(d);if(a.shadow||a.shim){a.syncUnderlays()}return a},setSizeState:function(b){var c=this,a,d;if(b===true){a=aO;d=[av,aB]}else{if(b===false){a=av;d=[aO,aB]}else{if(b===null){a=aB;d=[aO,av]}else{d=[aO,av,aB]}}}if(a){c.addCls(a)}c.removeCls(d);return c},setStyle:function(a,c){var e=this,b=e.dom,h=e.styleHooks,f=b.style,g=a,d;if(typeof g==="string"){d=h[g];if(!d){h[g]=d={name:a3.normalize(g)}}c=(c==null)?"":c;if(d.set){d.set(b,c,e)}else{f[d.name]=c}if(d.afterSet){d.afterSet(b,c,e)}}else{for(g in a){if(a.hasOwnProperty(g)){d=h[g];if(!d){h[g]=d={name:a3.normalize(g)}}c=a[g];c=(c==null)?"":c;if(d.set){d.set(b,c,e)}else{f[d.name]=c}if(d.afterSet){d.afterSet(b,c,e)}}}}return e},setText:function(a){this.dom.textContent=a},setTop:function(a){var b=this;b.dom.style[ap]=a3.addUnits(a);if(b.shadow||b.shim){b.syncUnderlays()}return b},setUnderlaysVisible:function(c){var a=this.shadow,b=this.shim;if(a&&!a.disabled){if(c){a.show()}else{a.hide()}}if(b&&!b.disabled){if(c){b.show()}else{b.hide()}}},setVisibility:function(b){var a=this.dom.style;if(b){a.removeProperty("visibility")}else{a.setProperty("visibility","hidden","important")}},setVisibilityMode:function(a){this.getData().visibilityMode=a;return this},setVisible:function(b){var d=this,c=d.getVisibilityMode(),a=b?"removeCls":"addCls";switch(c){case a3.DISPLAY:d.removeCls([aI,a7,bi]);d[a](aM);break;case a3.VISIBILITY:d.removeCls([aM,a7,bi]);d[a](aI);break;case a3.OFFSETS:d.removeCls([aI,aM,bi]);d[a](a7);break;case a3.CLIP:d.removeCls([aI,aM,a7]);d[a](bi);break}if(d.shadow||d.shim){d.setUnderlaysVisible(b)}return d},setWidth:function(b){var a=this;a.dom.style[ba]=a3.addUnits(b);if(a.shadow||a.shim){a.syncUnderlays()}return a},setX:function(a){return this.setXY([a,false])},setXY:function(c){var d=this,b=d.translatePoints(c),e=d.dom.style,a;d.position();e.right="auto";for(a in b){if(!isNaN(b[a])){e[a]=b[a]+"px"}}if(d.shadow||d.shim){d.syncUnderlays()}return d},setY:function(a){return this.setXY([false,a])},setZIndex:function(b){var a=this;if(a.shadow){a.shadow.setZIndex(b)}if(a.shim){a.shim.setZIndex(b)}return a.setStyle("z-index",b)},show:function(){this.setVisible(true);return this},swapCls:function(f,a,g,c){if(g===undefined){g=true}var d=this,b=g?f:a,e=g?a:f;if(e){d.removeCls(c?c+"-"+e:e)}if(b){d.addCls(c?c+"-"+b:b)}return d},synchronize:function(){var b=this,f=b.dom,a={},c=f.className,h,e,d,i,g=b.getData();if(c&&c.length>0){h=f.className.split(aJ);for(e=0,d=h.length;e<d;e++){i=h[e];a[i]=true}}else{h=[]}g.classList=h;g.classMap=a;g.isSynchronized=true;return b},syncUnderlays:function(){var f=this,b=f.shadow,i=f.shim,h=f.dom,a,d,e,c,g;if(f.isVisible()){a=f.getXY();d=a[0];e=a[1];c=h.offsetWidth;g=h.offsetHeight;if(b&&!b.hidden){b.realign(d,e,c,g)}if(i&&!i.hidden){i.realign(d,e,c,g)}}},toggleCls:function(b,a){if(typeof a!=="boolean"){a=!this.hasCls(b)}return a?this.addCls(b):this.removeCls(b)},toggle:function(){this.setVisible(!this.isVisible());return this},translate:function(){var a="webkitTransform" in aq.createElement("div").style?"webkitTransform":"transform";return function(d,b,c){this.dom.style[a]="translate3d("+(d||0)+"px, "+(b||0)+"px, "+(c||0)+"px)"}}(),unmaskIframes:function(){var a=document.getElementsByTagName("iframe");Ext.each(a,function(b){var c=Ext.fly(b.parentNode);c.unmask()})},unwrap:function(){var b=this.dom,g=b.parentNode,e,c=Ext.fly(Ext.Element.getActiveElement()),d,f,a,h;d=Ext.cache[c.id];if(d){c=d}if(this.contains(c)){if(d){d.suspendFocusEvents()}f=true}if(g){e=g.parentNode;if(f){h=e.getAttribute("tabIndex");a=Ext.fly(e);a.set({tabIndex:-1});a.suspendFocusEvents();a.focus()}e.insertBefore(b,g);e.removeChild(g)}else{e=document.createDocumentFragment();e.appendChild(b)}if(f){if(d){d.focus();d.resumeFocusEvents()}else{Ext.fly(c).focus()}if(a){a.resumeFocusEvents();a.set({tabIndex:h})}}return this},up:function(a,c,b){return this.findParentNode(a,c,!b)},update:function(a){return this.setHtml(a)},wrap:function(h,a,e){var b=this,d=b.dom,f=Ext.DomHelper.insertBefore(d,h||{tag:"div"},!a),c=f,i=Ext.Element.getActiveElement(),g,j,k;g=Ext.cache[i.id];if(g){i=g}if(e){c=f.selectNode(e,a)}if(b.contains(i)){if(g){g.suspendFocusEvents()}k=f.dom.getAttribute("tabIndex");f.set({tabIndex:-1});f.suspendFocusEvents();f.focus();j=true}c.appendChild(d);if(j){if(g){g.focus();g.resumeFocusEvents()}else{Ext.fly(i).focus()}f.resumeFocusEvents();f.set({tabIndex:k})}return f},privates:{doAddListener:function(f,c,b,a,j,k,i){var d=this,h,g,e;f=Ext.canonicalEventName(f);if(!d.blockedEvents[f]){h=d.mixins.observable.doAddListener;a=a||{};if(d.longpressEvents[f]){d.disableTouchContextMenu()}if(a3.useDelegatedEvents===false){a.delegated=a.delegated||false}if(a.translate!==false){g=d.additiveEvents[f];if(g){a.type=f;f=g;h.call(d,f,c,b,a,j,k,i)}e=d.eventMap[f];if(e){a.type=a.type||f;f=e}}h.call(d,f,c,b,a,j,k,i);delete a.type}},doRemoveListener:function(h,d,e){var c=this,f,a,b,g;if(!c.blockedEvents[h]){f=c.mixins.observable.doRemoveListener;if(c.longpressEvents[h]){g=this._contextMenuListenerRemover;if(g){g.destroy()}}b=c.additiveEvents[h];if(b){h=b;f.call(c,h,d,e)}a=c.eventMap[h];if(a){f.call(c,a,d,e)}f.call(c,h,d,e)}},_initEvent:function(a){return(this.events[a]=new Ext.dom.ElementEvent(this,a))},_getDisplay:function(){var b=this.getData(),a=b[aX];if(a===undefined){b[aX]=a=""}return a},_getPublisher:function(c){var a=Ext.event.publisher.Publisher,b=a.publishersByEvent[c];if(!b||(this.dom===window&&c==="resize")){b=a.publishers.dom}return b},isFocusSuspended:function(){return !!this.getData().suspendFocusEvents},suspendFocusEvents:function(){if(!this.isFly){this.suspendEvent("focus","blur")}this.getData().suspendFocusEvents=true},resumeFocusEvents:function(){function a(){var b;if(!this.destroyed){b=this.getData();if(b){b.suspendFocusEvents=false}if(!this.isFly){this.resumeEvent("focus","blur")}}}if(!this.destroyed&&this.getData().suspendFocusEvents){if(Ext.isIE){Ext.asap(a,this)}else{a.call(this)}}}},deprecated:{"5.0":{methods:{cssTranslate:null,getHTML:"getHtml",getOuterHeight:null,getOuterWidth:null,getPageBox:function(i){var f=this,h=f.dom,d=h.nodeName==="BODY",c=d?a3.getViewportWidth():h.offsetWidth,g=d?a3.getViewportHeight():h.offsetHeight,a=f.getXY(),b=a[1],k=a[0]+c,e=a[1]+g,j=a[0];if(i){return new Ext.util.Region(b,k,e,j)}else{return{left:j,top:b,width:c,height:g,right:k,bottom:e}}},getScrollParent:null,isDescendent:null,isTransparent:function(a){var b=this.getStyle(a);return b?bh.test(b):false},purgeAllListeners:"clearListeners",removeAllListeners:"clearListeners",setHTML:"setHtml",setTopLeft:null}}}}},1,0,0,0,0,[[Ext.util.Positionable.prototype.mixinId||Ext.util.Positionable.$className,Ext.util.Positionable],[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.dom,"Element",Ext,"Element"],function(U){var ai=document,Y=U.prototype,I=Ext.supports,O="pointerdown",af="pointermove",ah="pointerup",ag="pointercancel",ac="MSPointerDown",X="MSPointerMove",F="MSPointerUp",aj="MSPointerCancel",N="mousedown",G="mousemove",M="mouseup",L="mouseover",Q="mouseout",V="mouseenter",ae="mouseleave",J="touchstart",Z="touchmove",T="touchend",ad="touchcancel",S="click",ab="dblclick",K="tap",R="doubletap",aa=Y.eventMap={},P=Y.additiveEvents={},W=Ext.id,H;Ext.id=function(c,d){var e=Ext.getDom(c,true),b,a;if(!e){a=W(c,d)}else{if(!(a=e.id)){a=W(null,d||U.prototype.identifiablePrefix);if(Ext.isSandboxed){b=Ext.sandboxPrefix||(Ext.sandboxPrefix=Ext.sandboxName.toLowerCase()+"-");a=b+a}e.id=a}}return a};if(I.PointerEvents){aa[N]=O;aa[G]=af;aa[M]=ah;aa[J]=O;aa[Z]=af;aa[T]=ah;aa[ad]=ag;aa[S]=K;aa[ab]=R;aa[L]="pointerover";aa[Q]="pointerout";aa[V]="pointerenter";aa[ae]="pointerleave"}else{if(I.MSPointerEvents){aa[O]=ac;aa[af]=X;aa[ah]=F;aa[ag]=aj;aa[N]=ac;aa[G]=X;aa[M]=F;aa[J]=ac;aa[Z]=X;aa[T]=F;aa[ad]=aj;aa[S]=K;aa[ab]=R;aa[L]="MSPointerOver";aa[Q]="MSPointerOut"}else{if(I.TouchEvents){aa[O]=J;aa[af]=Z;aa[ah]=T;aa[ag]=ad;aa[N]=J;aa[G]=Z;aa[M]=T;aa[S]=K;aa[ab]=R;if(Ext.isWebKit&&Ext.os.is.Desktop){aa[J]=N;aa[Z]=G;aa[T]=M;aa[ad]=M;P[N]=N;P[G]=G;P[M]=M;P[J]=J;P[Z]=Z;P[T]=T;P[ad]=ad;P[O]=N;P[af]=G;P[ah]=M;P[ag]=M}}else{aa[O]=N;aa[af]=G;aa[ah]=M;aa[ag]=M;aa[J]=N;aa[Z]=G;aa[T]=M;aa[ad]=M}}}if(Ext.isWebKit){aa.transitionend=Ext.browser.getVendorProperyName("transitionEnd");aa.animationstart=Ext.browser.getVendorProperyName("animationStart");aa.animationend=Ext.browser.getVendorProperyName("animationEnd")}if(!Ext.supports.MouseWheel&&!Ext.isOpera){aa.mousewheel="DOMMouseScroll"}H=Y.$eventOptions=Ext.Object.chain(Y.$eventOptions);H.translate=H.capture=H.delegate=H.delegated=H.stopEvent=H.preventDefault=H.stopPropagation=H.element=1;Y.styleHooks.opacity={name:"opacity",afterSet:function(b,c,d){var a=d.shadow;if(a){a.setOpacity(c)}}};Y.getTrueXY=Y.getXY;Ext.select=U.select;Ext.query=U.query;Ext.apply(Ext,{get:function(a){return U.get(a)},getDom:function(a){if(!a||!ai){return null}return typeof a==="string"?Ext.getElementById(a):"dom" in a?a.dom:a},getBody:function(){if(!Ext._bodyEl){if(!ai.body){throw new Error("[Ext.getBody] document.body does not yet exist")}Ext._bodyEl=Ext.get(ai.body)}return Ext._bodyEl},getHead:function(){if(!Ext._headEl){Ext._headEl=Ext.get(ai.head||ai.getElementsByTagName("head")[0])}return Ext._headEl},getDoc:function(){if(!Ext._docEl){Ext._docEl=Ext.get(ai)}return Ext._docEl},getWin:function(){if(!Ext._winEl){Ext._winEl=Ext.get(window)}return Ext._winEl},removeNode:function(b){b=b.dom||b;var a=b&&b.id,c=Ext.cache[a],d;if(c){c.destroy()}else{if(b&&(b.nodeType===3||b.tagName.toUpperCase()!=="BODY")){d=b.parentNode;if(d){d.removeChild(b)}}}}});Ext.isGarbage=function(a){return a&&a.nodeType===1&&a.tagName!=="BODY"&&a.tagName!=="HTML"&&(!a.parentNode||(!a.offsetParent&&((Ext.isIE8?ai.all[a.id]:ai.getElementById(a.id))!==a)&&!(Ext.detachedBodyEl&&Ext.detachedBodyEl.isAncestor(a))))};if(Ext.os.is.Android||(Ext.os.is.Windows&&Ext.supports.Touch)){Ext.onReady(function(){var a=Ext.getWin();U._windowWidth=U._viewportWidth=window.innerWidth;U._windowHeight=U._viewportHeight=window.innerHeight;a.on({focusin:"_onWindowFocusChange",focusout:"_onWindowFocusChange",pointerup:"_onWindowFocusChange",capture:true,delegated:false,delay:1,scope:U});a.on({resize:"_onWindowResize",priority:2000,scope:U})})}}));(Ext.cmd.derive("Ext.GlobalEvents",Ext.mixin.Observable,{alternateClassName:"Ext.globalEvents",observableType:"global",singleton:true,resizeBuffer:100,idleEventMask:{mousemove:1,touchmove:1,pointermove:1,MSPointerMove:1,unload:1},constructor:function(){var b=this;b.callParent();Ext.onInternalReady(function(){b.attachListeners()})},attachListeners:function(){Ext.get(window).on("resize",this.fireResize,this,{buffer:this.resizeBuffer});Ext.getDoc().on("mousedown",this.fireMouseDown,this)},fireMouseDown:function(b){this.fireEvent("mousedown",b)},fireResize:function(){var g=this,e=Ext.Element,f=e.getViewportWidth(),h=e.getViewportHeight();if(g.curHeight!==h||g.curWidth!==f){g.curHeight=h;g.curWidth=f;g.fireEvent("resize",f,h)}}},1,0,0,0,0,0,[Ext,"GlobalEvents",Ext,"globalEvents"],function(b){Ext.on=function(){return b.addListener.apply(b,arguments)};Ext.un=function(){return b.removeListener.apply(b,arguments)}}));Ext.USE_NATIVE_JSON=false;Ext.JSON=(new (function(){var me=this,hasNative=window.JSON&&JSON.toString()==="[object JSON]",useHasOwn=!!{}.hasOwnProperty,pad=function(n){return n<10?"0"+n:n},doDecode=function(json){return eval("("+json+")")},doEncode=function(o,newline){if(o===null||o===undefined){return"null"}else{if(Ext.isDate(o)){return me.encodeDate(o)}else{if(Ext.isString(o)){if(Ext.isMSDate(o)){return me.encodeMSDate(o)}else{return me.encodeString(o)}}else{if(typeof o==="number"){return isFinite(o)?String(o):"null"}else{if(Ext.isBoolean(o)){return String(o)}else{if(o.toJSON){return o.toJSON()}else{if(Ext.isArray(o)){return encodeArray(o,newline)}else{if(Ext.isObject(o)){return encodeObject(o,newline)}else{if(typeof o==="function"){return"null"}}}}}}}}}return"undefined"},m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\","\v":"\\u000b"},charToReplace=/[\\\"\x00-\x1f\x7f-\uffff]/g,encodeString=function(s){return'"'+s.replace(charToReplace,function(a){var c=m[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"'},encodeMSDate=function(o){return'"'+o+'"'},encodeArrayPretty=function(o,newline){var len=o.length,cnewline=newline+"   ",sep=","+cnewline,a=["[",cnewline],i;for(i=0;i<len;i+=1){a.push(me.encodeValue(o[i],cnewline),sep)}a[a.length-1]=newline+"]";return a.join("")},encodeObjectPretty=function(o,newline){var cnewline=newline+"   ",sep=","+cnewline,a=["{",cnewline],i,val;for(i in o){val=o[i];if(!useHasOwn||o.hasOwnProperty(i)){if(typeof val==="function"||val===undefined){continue}a.push(me.encodeValue(i)+": "+me.encodeValue(val,cnewline),sep)}}a[a.length-1]=newline+"}";return a.join("")},encodeArray=function(o,newline){if(newline){return encodeArrayPretty(o,newline)}var a=["[",""],len=o.length,i;for(i=0;i<len;i+=1){a.push(me.encodeValue(o[i]),",")}a[a.length-1]="]";return a.join("")},encodeObject=function(o,newline){if(newline){return encodeObjectPretty(o,newline)}var a=["{",""],i,val;for(i in o){val=o[i];if(!useHasOwn||o.hasOwnProperty(i)){if(typeof val==="function"||val===undefined){continue}a.push(me.encodeValue(i),":",me.encodeValue(val),",")}}a[a.length-1]="}";return a.join("")};me.encodeString=encodeString;me.encodeValue=doEncode;me.encodeDate=function(o){return'"'+o.getFullYear()+"-"+pad(o.getMonth()+1)+"-"+pad(o.getDate())+"T"+pad(o.getHours())+":"+pad(o.getMinutes())+":"+pad(o.getSeconds())+'"'};me.encode=function(o){if(hasNative&&Ext.USE_NATIVE_JSON){return JSON.stringify(o)}return me.encodeValue(o)};me.decode=function(json,safe){try{if(hasNative&&Ext.USE_NATIVE_JSON){return JSON.parse(json)}return doDecode(json)}catch(e){if(safe){return null}Ext.raise({sourceClass:"Ext.JSON",sourceMethod:"decode",msg:"You're trying to decode an invalid JSON String: "+json})}};me.encodeMSDate=encodeMSDate;if(!Ext.util){Ext.util={}}Ext.util.JSON=me;Ext.encode=me.encode;Ext.decode=me.decode})());(Ext.cmd.derive("Ext.mixin.Inheritable",Ext.Mixin,{mixinConfig:{id:"inheritable"},getInherited:function(j){var n=this,l=(j&&n.inheritedStateInner)||n.inheritedState,q=n.getRefOwner(),r=n.isContainer,k,p,o,m;if(!l||l.invalid){k=n.getRefOwner();m=n.ownerLayout;if(q){o=m?m===q.layout:true}n.inheritedState=l=Ext.Object.chain(k?k.getInherited(o):Ext.rootInheritedState);if(r){n.inheritedStateInner=p=Ext.Object.chain(l)}n.initInheritedState(l,p);l=(r&&j)?n.inheritedStateInner:n.inheritedState}return l},getInheritedConfig:function(h,g){var i=this.inheritedState,f,j;if(!i||i.invalid){i=this.getInherited()}j=i[h];if(g&&i.hasOwnProperty(h)){f=j;delete i[h];j=i[h];i[h]=f}return j},resolveListenerScope:function(i,h){var k=this,j=(typeof h==="boolean"),l=Ext._namedScopes[i],g;if(!l){g=k.getInheritedConfig("defaultListenerScope",j?h:true)||i||k}else{if(l.isController){g=k.getInheritedConfig("controller",j?h:!l.isSelf)}else{if(l.isSelf){g=k.getInheritedConfig("defaultListenerScope",j&&h)||k}else{if(l.isThis){g=k}}}}return g||null},resolveSatelliteListenerScope:function(j,h){var i=this,f=Ext._namedScopes[h],g;if(!f){g=i.getInheritedConfig("defaultListenerScope")||h||i}else{if(f.isController){g=i.getInheritedConfig("controller")}else{if(f.isSelf){g=i.getInheritedConfig("defaultListenerScope")||j}else{if(f.isThis){g=j}}}}return g||null},lookupReferenceHolder:function(b){return this.getInheritedConfig("referenceHolder",b!==false)||null},getRefOwner:function(){var b=this;return b.ownerCt||b.parent||b.$initParent||b.ownerCmp||b.floatParent},invalidateInheritedState:function(){var b=this.inheritedState;if(b){b.invalid=true;delete this.inheritedState}},privates:{fixReference:function(){var d=this,c;if(d.getReference()){c=d.lookupReferenceHolder();if(c){c.attachReference(d)}}},onInheritedAdd:function(d,e){var f=this;if(f.inheritedState&&e){f.invalidateInheritedState()}if(f.getReference()){Ext.ComponentManager.markReferencesDirty()}},onInheritedRemove:function(d){var e=this,f;if(e.getReference()){f=e.lookupReferenceHolder();if(f){f.clearReference(e)}}if(e.inheritedState&&!d){e.invalidateInheritedState()}}}},0,0,0,0,0,0,[Ext.mixin,"Inheritable"],function(){Ext.rootInheritedState={}}));(Ext.cmd.derive("Ext.mixin.Bindable",Ext.Base,{mixinId:"bindable",config:{bind:{$value:null,lazy:true},controller:null,defaultListenerScope:false,publishes:{$value:null,lazy:true,merge:function(c,d){return this.mergeSets(c,d)}},reference:null,session:{$value:null,lazy:true},twoWayBindable:{$value:null,lazy:true,merge:function(c,d){return this.mergeSets(c,d)}},viewModel:{$value:null,lazy:true}},defaultBindProperty:null,validRefRe:/^[a-z_][a-z0-9_]*$/i,initInheritedState:function(m){var l=this,i=l.getReference(),h=l.getController(),n=l.getConfig("viewModel",true),j=l.getConfig("session",true),k=l.getDefaultListenerScope();if(h){m.controller=h}if(k){m.defaultListenerScope=l}else{if(h){m.defaultListenerScope=h}}if(n){if(!n.isViewModel){n=l}m.viewModel=n}if(j){if(!j.isSession){j=l}m.session=j}if(i){l.referenceKey=(m.referencePath||"")+i;l.viewModelKey=(m.viewModelPath||"")+i}},lookupController:function(b){return this.getInheritedConfig("controller",b)||null},lookupSession:function(d){var c=d?null:this.getSession();if(!c){c=this.getInheritedConfig("session",d);if(c&&!c.isSession){c=c.getInherited().session=c.getSession()}}return c||null},lookupViewModel:function(d){var c=d?null:this.getViewModel();if(!c){c=this.getInheritedConfig("viewModel",d);if(c&&!c.isViewModel){c=c.getInherited().viewModel=c.getViewModel()}}return c||null},publishState:function(m,n){var o=this,u=o.publishedState,r=o.getBind(),p=r&&m&&r[m],q=0,t,v,s,l;if(p&&!p.syncing&&!p.isReadOnly()){if(!(p.calls===0&&(n==null||n===o.getInitialConfig()[m]))){p.setValue(n)}}if(!(v=o.getPublishes())){return}if(!(s=o.lookupViewModel())){return}if(!(l=o.viewModelKey)){return}if(m&&u){if(!v[m]){return}if(!(n&&n.constructor===Object)&&!(n instanceof Array)){if(u[m]===n){return}}l+=".";l+=m}else{u=u||(o.publishedState={});for(t in v){++q;if(t===m){u[t]=n}else{u[t]=o[t]}}if(!q){return}n=u}s.set(l,n)},privates:{addBindableUpdater:function(j){var f=this,i=f.self.$config.configs,g=i[j],h;if(g&&!f.hasOwnProperty(h=g.names.update)){f[h]=g.bindableUpdater||(g.root.bindableUpdater=f.makeBindableUpdater(g))}},applyBind:function(p,b){if(!p){return p}var n=this,l=n.lookupViewModel(),o=n.getTwoWayBindable(),r=n._getBindTemplateScope,m,k,q;if(!b||typeof b==="string"){b={}}if(Ext.isString(p)){m=p;p={};p[n.defaultBindProperty]=m}for(k in p){q=p[k];m=b[k];if(m&&typeof m!=="string"){m.destroy();m=null}if(q){m=l.bind(q,n.onBindNotify,n);m._config=Ext.Config.get(k);m.getTemplateScope=r}b[k]=m;if(o&&o[k]&&!m.isReadOnly()){n.addBindableUpdater(k)}}return b},applyController:function(b){if(b){b=Ext.Factory.controller(b);b.setView(this)}return b},applyPublishes:function(d){if(this.lookupViewModel()){for(var c in d){this.addBindableUpdater(c)}}return d},applySession:function(f){if(!f){return null}if(!f.isSession){var d=this.lookupSession(true),e=(f===true)?{}:f;if(d){f=d.spawn(e)}else{f=new Ext.data.Session(e)}}return f},applyViewModel:function(e){var h=this,f,g;if(!e){return null}if(!e.isViewModel){f={parent:h.lookupViewModel(true)};f.session=h.getSession();if(!g&&!f.parent){f.session=h.lookupSession()}if(e){if(e.constructor===Object){Ext.apply(f,e)}else{if(typeof e==="string"){f.type=e}}}e=Ext.Factory.viewModel(f)}return e},_getBindTemplateScope:function(){return this.scope.resolveListenerScope()},destroyBindable:function(){var h=this,e=h.getConfig("viewModel",true),g=h.getConfig("session",true),f=h.getController();if(e&&e.isViewModel){e.destroy();h.setViewModel(null)}if(g&&g.isSession){if(g.getAutoDestroy()){g.destroy()}h.setSession(null)}if(f){h.setController(null);f.destroy()}},initBindable:function(){this.initBindable=Ext.emptyFn;this.getBind();this.getPublishes()},makeBindableUpdater:function(d){var c=d.names.update;return function(b,h){var g=this,a=g.self.prototype[c];if(a){a.call(g,b,h)}g.publishState(d.name,b)}},isSyncing:function(e){var g=this.getBind(),f=false,h;if(g){h=g[e];if(h){f=h.syncing>0}}return f},onBindNotify:function(d,e,f){f.syncing=(f.syncing+1)||1;this[f._config.names.set](d);--f.syncing},removeBindings:function(){var e=this,g,f,h;if(!e.destroying){g=e.getBind();if(g&&typeof g!=="string"){for(f in g){h=g[f];h.destroy();h._config=h.getTemplateScope=null}}}e.setBind(null)},updateSession:function(c){var d=this.getInherited();if(c){d.session=c}else{delete d.session}},updateViewModel:function(d){var f=this.getInherited(),e=this.getController();if(d){f.viewModel=d;d.setView(this);if(e){e.initViewModel(d)}}else{delete f.viewModel}}}},0,0,0,0,0,0,[Ext.mixin,"Bindable"],0));(Ext.cmd.derive("Ext.mixin.ComponentDelegation",Ext.Mixin,{mixinConfig:{id:"componentDelegation"},privates:{addDelegatedListener:function(q,o,m,l,s,t,r){var p=this,u,v,n;s=s||l.order;if(s){n=(l&&l.priority);if(!n){l=l?Ext.Object.chain(l):{};l.priority=p.$orderToPriority[s]}}u=p.$delegatedEvents||(p.$delegatedEvents={});v=u[q]||(u[q]=new Ext.util.Event(p,q));if(v.addListener(o,m,l,t,r)){p.$hasDelegatedListeners._incr_(q)}},clearDelegatedListeners:function(){var i=this,f=i.$delegatedEvents,g,j,h;if(f){for(g in f){j=f[g];h=j.listeners.length;j.clearListeners();i.$hasDelegatedListeners._decr_(g,h);delete f[g]}}},doFireDelegatedEvent:function(h,m){var j=this,n=true,i,l,k;if(j.$hasDelegatedListeners[h]){i=j.getRefOwner();while(i){l=i.$delegatedEvents;if(l){k=l[h];if(k){n=k.fireDelegated(j,m);if(n===false){break}}}i=i.getRefOwner()}}return n},removeDelegatedListener:function(h,k,l){var i=this,g=i.$delegatedEvents,j;if(g){j=g[h];if(j&&j.removeListener(k,l)){i.$hasDelegatedListeners._decr_(h);if(j.listeners.length===0){delete g[h]}}}}},onClassMixedIn:function(d){function c(){}d.prototype.HasListeners=d.HasListeners=c;c.prototype=d.hasListeners=new Ext.mixin.ComponentDelegation.HasDelegatedListeners()}},0,0,0,0,0,0,[Ext.mixin,"ComponentDelegation"],function(c){function d(){}c.HasDelegatedListeners=d;d.prototype=c.prototype.$hasDelegatedListeners=new Ext.mixin.Observable.HasListeners()}));(Ext.cmd.derive("Ext.Widget",Ext.Evented,{isWidget:true,element:{reference:"element"},observableType:"component",cachedConfig:{style:null},config:{userCls:null},eventedConfig:{width:null,height:null},template:[],constructor:function(d){var f=this,e;f.initId(d);f.initElement();f.mixins.observable.constructor.call(f,d);Ext.ComponentManager.register(f);e=f.getController();if(e){e.init(f)}},afterCachedConfig:function(){var m=this,l=m.self.prototype,i=m.referenceList,r=m.renderElement,o,q,p,n,s,t;l.renderTemplate=o=document.createDocumentFragment();o.appendChild(r.clone(true,true));t=o.querySelectorAll("[id]");for(p=0,n=t.length;p<n;p++){q=t[p];q.removeAttribute("id")}for(p=0,n=i.length;p<n;p++){s=i[p];m[s].dom.removeAttribute("reference")}},addCls:function(b){this.el.addCls(b)},applyWidth:function(b){return this.filterLengthValue(b)},applyHeight:function(b){return this.filterLengthValue(b)},clearListeners:function(){var b=this;b.mixins.observable.clearListeners.call(b);b.mixins.componentDelegation.clearDelegatedListeners.call(b)},destroy:function(){var h=this,f=h.referenceList,j,i,g;for(j=0,i=f.length;j<i;j++){g=f[j];if(h.hasOwnProperty(g)){h[g].destroy();h[g]=null}}h.destroyBindable();Ext.Evented.prototype.destroy.call(this);Ext.ComponentManager.unregister(h)},doFireEvent:function(f,i,g){var h=this,j=h.mixins.observable.doFireEvent.call(h,f,i,g);if(j!==false){j=h.mixins.componentDelegation.doFireDelegatedEvent.call(h,f,i)}return j},getElementConfig:function(){var c=this,d=c.element;if(!("children" in d)){d=Ext.apply({children:c.getTemplate()},d)}return d},getSize:function(){return{width:this.getWidth(),height:this.getHeight()}},getTemplate:function(){return this.template},initElement:function(){var p=this,o=p.self.prototype,z=p.getId(),i=p.referenceList=p.referenceList=[],x=true,s,v,t,y,u,q,r,w;if(o.hasOwnProperty("renderTemplate")){s=p.renderTemplate.cloneNode(true);v=s.firstChild}else{x=false;s=document.createDocumentFragment();v=Ext.Element.create(p.processElementConfig.call(o),true);s.appendChild(v)}y=s.querySelectorAll("[reference]");for(u=0,q=y.length;u<q;u++){r=y[u];w=r.getAttribute("reference");if(x){r.removeAttribute("reference")}if(w==="element"){r.id=z;t=p.el=p.addElementReference(w,r);t.dom.setAttribute("data-componentid",z)}else{p.addElementReferenceOnDemand(w,r)}i.push(w)}if(v===t.dom){p.renderElement=t}else{p.addElementReferenceOnDemand("renderElement",v)}},is:function(b){return Ext.ComponentQuery.is(this,b)},isXType:function(c,d){return d?(Ext.Array.indexOf(this.xtypes,c)!==-1):!!this.xtypesMap[c]},removeCls:function(b){this.el.removeCls(b)},toggleCls:function(d,c){this.element.toggleCls(d,c)},resolveListenerScope:function(c,d){return this.mixins.inheritable.resolveListenerScope.call(this,c,d)},setSize:function(c,d){if(c!==undefined){this.setWidth(c)}if(d!==undefined){this.setHeight(d)}},applyStyle:function(c,d){if(d&&c===d&&Ext.isObject(d)){c=Ext.apply({},c)}return c},updateStyle:function(b){this.element.applyStyles(b)},updateWidth:function(b){this.element.setWidth(b)},updateHeight:function(b){this.element.setHeight(b)},onFocusEnter:Ext.emptyFn,onFocusLeave:Ext.emptyFn,isAncestor:function(){return false},privates:{addElementReferenceOnDemand:function(d,c){if(this._elementListeners[d]){this.addElementReference(d,c)}else{Ext.Object.defineProperty(this,d,{get:function(){delete this[d];return this.addElementReference(d,c)},configurable:true})}},addElementReference:function(n,l){var k=this,h=k[n]=Ext.get(l),m=k._elementListeners[n],i,j;h.skipGarbageCollection=true;h.component=k;if(m){m=Ext.clone(m);for(i in m){j=m[i];if(typeof j==="object"){j.scope=k}}m.scope=k;h.on(m)}return h},detachFromBody:function(){Ext.getDetachedBody().appendChild(this.element);this.isDetached=true},doAddListener:function(r,l,k,j,p,q,o){var m=this,n;if(j&&"element" in j){m[j.element].doAddListener(r,l,k||m,j,p)}if(j){n=j.delegate;if(n){m.mixins.componentDelegation.addDelegatedListener.call(m,r,l,k,j,p,q,o);return}}Ext.Evented.prototype.doAddListener.call(this,r,l,k,j,p,q,o)},doRemoveListener:function(f,h,e){var g=this;g.mixins.observable.doRemoveListener.call(g,f,h,e);g.mixins.componentDelegation.removeDelegatedListener.call(g,f,h,e)},filterLengthValue:function(b){if(b==="auto"||(!b&&b!==0)){return null}return b},getFocusEl:function(){return this.element},initElementListeners:function(i){var m=this,s=m.self.superclass,t=s._elementListeners,r=i.reference,v=i.children,p,n,u,o,q;if(m.hasOwnProperty("_elementListeners")){p=m._elementListeners}else{p=m._elementListeners=(t?Ext.Object.chain(t):{})}if(r){n=i.listeners;if(n){if(t){u=t[r];if(u){n=Ext.Object.chain(u);Ext.apply(n,i.listeners)}}p[r]=n;i.listeners=null}}if(v){for(q=0,o=v.length;q<o;q++){m.initElementListeners(v[q])}}},initId:function(e){var h=this,f=h.config,g=(e&&e.id)||(f&&f.id);if(g){h.setId(g);h.id=g}else{h.getId()}},processElementConfig:function(){var e=this,f=e.self.superclass,d;if(e.hasOwnProperty("_elementConfig")){d=e._elementConfig}else{d=e._elementConfig=e.getElementConfig();if(f.isWidget){e.processElementConfig.call(f)}e.initElementListeners(d)}return d},reattachToBody:function(){this.isDetached=false},updateUserCls:function(c,d){this.element.replaceCls(d,c)}}},1,["widget"],["widget"],{widget:true},["widget.widget"],[[Ext.mixin.Inheritable.prototype.mixinId||Ext.mixin.Inheritable.$className,Ext.mixin.Inheritable],[Ext.mixin.Bindable.prototype.mixinId||Ext.mixin.Bindable.$className,Ext.mixin.Bindable],[Ext.mixin.ComponentDelegation.prototype.mixinId||Ext.mixin.ComponentDelegation.$className,Ext.mixin.ComponentDelegation]],[Ext,"Widget"],function(c){var d=c.prototype;(d.$elementEventOptions=Ext.Object.chain(Ext.Element.prototype.$eventOptions)).element=1;(d.$eventOptions=Ext.Object.chain(d.$eventOptions)).delegate=1}));(Ext.cmd.derive("Ext.mixin.Traversable",Ext.Mixin,{mixinConfig:{id:"traversable"},setParent:function(b){this.parent=b;return this},hasParent:function(){return Boolean(this.parent)},getParent:function(){return this.parent},getAncestors:function(){var c=[],d=this.getParent();while(d){c.push(d);d=d.getParent()}return c},getAncestorIds:function(){var c=[],d=this.getParent();while(d){c.push(d.getId());d=d.getParent()}return c}},0,0,0,0,0,0,[Ext.mixin,"Traversable"],0));Ext.define("Ext.overrides.Widget",{override:"Ext.Widget",mixins:[Ext.mixin.Traversable],config:{flex:{evented:true,$value:null},itemId:undefined},constructor:function(b){(arguments.callee.$previous||Ext.Evented.prototype.constructor).call(this,b);this.initBindable()},applyFlex:function(b){if(b){b=Number(b);if(isNaN(b)){b=null}}else{b=null}return b},applyItemId:function(b){return b||this.getId()},render:function(d,c){this.renderTo(d,c)},renderTo:function(g,j){var h=this.renderElement.dom,i=Ext.getDom(g),f;if(Ext.isNumber(f)){j=i.childNodes[j]}f=Ext.getDom(j);if(i){if(f){i.insertBefore(h,f)}else{i.appendChild(h)}this.setRendered(Boolean(h.offsetParent))}},destroy:function(){var c=this,d=c.getParent();if(d&&d.remove){d.remove(c,false)}(arguments.callee.$previous||Ext.Evented.prototype.destroy).call(this)},isInnerItem:function(){return true},isCentered:function(){return false},isDocked:function(){return Boolean(this.getDocked())},isFloating:function(){return false},getDocked:function(){return this._docked},onAdded:function(i,g){var h=this,j=h.inheritedState,f=h.parent;if(f&&f!==i){f.remove(h,false)}h.parent=i;h.onInheritedAdd(i,g)},onRemoved:function(b){if(!b){this.removeBindings()}this.onInheritedRemove(b);this.parent=null},setLayoutSizeFlags:Ext.emptyFn,setRendered:function(c){var d=this.rendered;if(c!==d){this.rendered=c;return true}return false},updateLayout:function(){var d=this.getParent(),c;if(d){c=d.getScrollable();if(c){c.refresh()}}}});(Ext.cmd.derive("Ext.util.Format",Ext.Base,function(){var b;return{singleton:true,defaultDateFormat:"m/d/Y",thousandSeparator:",",decimalSeparator:".",currencyPrecision:2,currencySign:"$",percentSign:"%",currencyAtEnd:false,stripTagsRe:/<\/?[^>]+>/gi,stripScriptsRe:/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,nl2brRe:/\r?\n/g,hashRe:/#+$/,allHashes:/^#+$/,formatPattern:/[\d,\.#]+/,formatCleanRe:/[^\d\.#]/g,I18NFormatCleanRe:null,formatFns:{},constructor:function(){b=this},undef:function(a){return a!==undefined?a:""},defaultValue:function(d,a){return d!==undefined&&d!==""?d:a},substr:"ab".substr(-1)!="b"?function(h,f,a){var g=String(h);return(f<0)?g.substr(Math.max(g.length+f,0),a):g.substr(f,a)}:function(f,e,a){return String(f).substr(e,a)},lowercase:function(a){return String(a).toLowerCase()},uppercase:function(a){return String(a).toUpperCase()},usMoney:function(a){return b.currency(a,"$",2)},currency:function(m,k,n,a){var i="",j=",0",l=0;m=m-0;if(m<0){m=-m;i="-"}n=Ext.isDefined(n)?n:b.currencyPrecision;j+=(n>0?".":"");for(;l<n;l++){j+="0"}m=b.number(m,j);if((a||b.currencyAtEnd)===true){return Ext.String.format("{0}{1}{2}",i,m,k||b.currencySign)}else{return Ext.String.format("{0}{1}{2}",i,k||b.currencySign,m)}},date:function(a,d){if(!a){return""}if(!Ext.isDate(a)){a=new Date(Date.parse(a))}return Ext.Date.dateFormat(a,d||Ext.Date.defaultFormat)},dateRenderer:function(a){return function(d){return b.date(d,a)}},hex:function(e,f){var a=parseInt(e||0,10).toString(16);if(f){if(f<0){f=-f;if(a.length>f){a=a.substring(a.length-f)}}while(a.length<f){a="0"+a}}return a},or:function(d,a){return d||a},pick:function(g,h,f){if(Ext.isNumber(g)){var a=arguments[g+1];if(a){return a}}return g?f:h},stripTags:function(a){return !a?a:String(a).replace(b.stripTagsRe,"")},stripScripts:function(a){return !a?a:String(a).replace(b.stripScriptsRe,"")},fileSize:(function(){var a=1024,f=1048576,e=1073741824;return function(c){var d;if(c<a){if(c===1){d="1 byte"}else{d=c+" bytes"}}else{if(c<f){d=(Math.round(((c*10)/a))/10)+" KB"}else{if(c<e){d=(Math.round(((c*10)/f))/10)+" MB"}else{d=(Math.round(((c*10)/e))/10)+" GB"}}}return d}})(),math:(function(){var a={};return function(e,f){if(!a[f]){a[f]=Ext.functionFactory("v","return v "+f+";")}return a[f](e)}}()),round:function(e,f){var a=Number(e);if(typeof f==="number"){f=Math.pow(10,f);a=Math.round(e*f)/f}else{if(f===undefined){a=Math.round(a)}}return a},number:function(r,x){if(!x){return r}if(isNaN(r)){return""}var y=b.formatFns[x];if(!y){var u=x,a=b.thousandSeparator,q=b.decimalSeparator,w=0,z="",A,t,s,p,B,v;if(x.substr(x.length-2)==="/i"){if(!b.I18NFormatCleanRe||b.lastDecimalSeparator!==q){b.I18NFormatCleanRe=new RegExp("[^\\d\\"+q+"#]","g");b.lastDecimalSeparator=q}x=x.substr(0,x.length-2);A=x.indexOf(a)!==-1;t=x.replace(b.I18NFormatCleanRe,"").split(q)}else{A=x.indexOf(",")!==-1;t=x.replace(b.formatCleanRe,"").split(".")}s=x.replace(b.formatPattern,"");if(t.length>2){}else{if(t.length===2){w=t[1].length;p=t[1].match(b.hashRe);if(p){v=p[0].length;z='trailingZeroes=new RegExp(Ext.String.escapeRegex(utilFormat.decimalSeparator) + "*0{0,'+v+'}$")'}}}B=["var utilFormat=Ext.util.Format,extNumber=Ext.Number,neg,absVal,fnum,parts"+(A?",thousandSeparator,thousands=[],j,n,i":"")+(s?',formatString="'+x+'",formatPattern=/[\\d,\\.#]+/':"")+',trailingZeroes;return function(v){if(typeof v!=="number"&&isNaN(v=extNumber.from(v,NaN)))return"";neg=v<0;',"absVal=Math.abs(v);","fnum=Ext.Number.toFixed(absVal, "+w+");",z,";"];if(A){if(w){B[B.length]='parts=fnum.split(".");';B[B.length]="fnum=parts[0];"}B[B.length]="if(absVal>=1000) {";B[B.length]="thousandSeparator=utilFormat.thousandSeparator;thousands.length=0;j=fnum.length;n=fnum.length%3||3;for(i=0;i<j;i+=n){if(i!==0){n=3;}thousands[thousands.length]=fnum.substr(i,n);}fnum=thousands.join(thousandSeparator);}";if(w){B[B.length]="fnum += utilFormat.decimalSeparator+parts[1];"}}else{if(w){B[B.length]='if(utilFormat.decimalSeparator!=="."){parts=fnum.split(".");fnum=parts[0]+utilFormat.decimalSeparator+parts[1];}'}}B[B.length]='if(neg&&fnum!=="'+(w?"0."+Ext.String.repeat("0",w):"0")+'") { fnum="-"+fnum; }';if(p){B[B.length]='fnum=fnum.replace(trailingZeroes,"");'}B[B.length]="return ";if(s){B[B.length]="formatString.replace(formatPattern, fnum);"}else{B[B.length]="fnum;"}B[B.length]="};";y=b.formatFns[u]=Ext.functionFactory("Ext",B.join(""))(Ext)}return y(r)},numberRenderer:function(a){return function(d){return b.number(d,a)}},percent:function(d,a){return b.number(d*100,a||"0")+b.percentSign},attributes:function(f){if(typeof f==="object"){var a=[],e;for(e in f){if(f.hasOwnProperty(e)){a.push(e,'="',e==="style"?Ext.DomHelper.generateStyles(f[e],null,true):Ext.htmlEncode(f[e]),'" ')}}f=a.join("")}return f||""},plural:function(a,f,e){return a+" "+(a===1?f:(e?e:f+"s"))},nl2br:function(a){return Ext.isEmpty(a)?"":a.replace(b.nl2brRe,"<br/>")},capitalize:Ext.String.capitalize,uncapitalize:Ext.String.uncapitalize,ellipsis:Ext.String.ellipsis,escape:Ext.String.escape,escapeRegex:Ext.String.escapeRegex,htmlDecode:Ext.String.htmlDecode,htmlEncode:Ext.String.htmlEncode,leftPad:Ext.String.leftPad,toggle:Ext.String.toggle,trim:Ext.String.trim,parseBox:function(f){f=f||0;if(typeof f==="number"){return{top:f,right:f,bottom:f,left:f}}var e=f.split(" "),a=e.length;if(a===1){e[1]=e[2]=e[3]=e[0]}else{if(a===2){e[2]=e[0];e[3]=e[1]}else{if(a===3){e[3]=e[1]}}}return{top:parseInt(e[0],10)||0,right:parseInt(e[1],10)||0,bottom:parseInt(e[2],10)||0,left:parseInt(e[3],10)||0}}}},1,0,0,0,0,0,[Ext.util,"Format"],0));(Ext.cmd.derive("Ext.Template",Ext.Base,{inheritableStatics:{from:function(c,d){c=Ext.getDom(c);return new this(c.value||c.innerHTML,d||"")}},useEval:Ext.isGecko,constructor:function(m){var k=this,h=arguments,i=[],n,l=h.length,j;k.initialConfig={};if(l===1&&Ext.isArray(m)){h=m;l=h.length}if(l>1){for(n=0;n<l;n++){j=h[n];if(typeof j==="object"){Ext.apply(k.initialConfig,j);Ext.apply(k,j)}else{i.push(j)}}}else{i.push(m)}k.html=i.join("")},isTemplate:true,disableFormats:false,tokenRe:/\{(?:(?:(\d+)|([a-z_][\w\-]*))(?::([a-z_\.]+)(?:\(([^\)]*?)?\))?)?)\}/gi,apply:function(d){var c=this;if(c.compiled){if(!c.fn){c.compile()}return c.fn(d).join("")}return c.evaluate(d)},evaluate:function(h){var i=this,l=!i.disableFormats,j=Ext.util.Format,g=i;function k(b,c,d,a,e){if(d==null||d===""){d=c}if(a&&l){if(e){e=[h[d]].concat(Ext.functionFactory("return ["+e+"];")())}else{e=[h[d]]}if(a.substr(0,5)==="this."){return g[a.substr(5)].apply(g,e)}else{if(j[a]){return j[a].apply(j,e)}else{return b}}}else{return h[d]!==undefined?h[d]:""}}return i.html.replace(i.tokenRe,k)},applyOut:function(e,d){var f=this;if(f.compiled){if(!f.fn){f.compile()}d.push.apply(d,f.fn(e))}else{d.push(f.apply(e))}return d},applyTemplate:function(){return this.apply.apply(this,arguments)},set:function(e,f){var d=this;d.html=e;d.compiled=!!f;d.fn=null;return d},compileARe:/\\/g,compileBRe:/(\r\n|\n)/g,compileCRe:/'/g,compile:function(){var c=this,d;d=c.html.replace(c.compileARe,"\\\\").replace(c.compileBRe,"\\n").replace(c.compileCRe,"\\'").replace(c.tokenRe,c.regexReplaceFn.bind(c));d=(this.disableFormats!==true?"var fm=Ext.util.Format;":"")+(c.useEval?"$=":"return")+" function(v){return ['"+d+"'];};";c.fn=c.useEval?c.evalCompiled(d):(new Function("Ext",d))(Ext);c.compiled=true;return c},evalCompiled:function($){eval($);return $},regexReplaceFn:function(i,j,f,h,g){if(j==null||j===""){j='"'+f+'"'}else{if(this.stringFormat){j=parseInt(j)+1}}if(h&&this.disableFormats!==true){g=g?","+g:"";if(h.substr(0,5)==="this."){h=h+"("}else{if(Ext.util.Format[h]){h="fm."+h+"("}else{return i}}return"',"+h+"v["+j+"]"+g+"),'"}else{return"',v["+j+"] == undefined ? '' : v["+j+"],'"}},insertFirst:function(d,e,f){return this.doInsert("afterBegin",d,e,f)},insertBefore:function(d,e,f){return this.doInsert("beforeBegin",d,e,f)},insertAfter:function(d,e,f){return this.doInsert("afterEnd",d,e,f)},append:function(d,e,f){return this.doInsert("beforeEnd",d,e,f)},doInsert:function(f,i,g,h){var j=Ext.DomHelper.insertHtml(f,Ext.getDom(i),this.apply(g));return h?Ext.get(j):j},overwrite:function(h,f,g){var e=Ext.DomHelper.overwrite(Ext.getDom(h),this.apply(f));return g?Ext.get(e):e}},1,0,0,0,0,0,[Ext,"Template"],function(i){var j=/\{\d+\}/,g=function(a){if(j.test(a)){a=new i(a,f);return function(){return a.apply(arguments)}}else{return function(){return a}}},f={useFormat:false,compiled:true,stringFormat:true},h={};Ext.String.format=Ext.util.Format.format=function(a){var b=h[a]||(h[a]=g(a));return b.apply(this,arguments)};Ext.String.formatEncode=function(){return Ext.String.htmlEncode(Ext.String.format.apply(this,arguments))}}));(Ext.cmd.derive("Ext.util.XTemplateParser",Ext.Base,{constructor:function(b){Ext.apply(this,b)},doTpl:Ext.emptyFn,parse:function(A){var m=this,x=A.length,y={elseif:"elif"},w=m.topRe,J=m.actionsRe,H,I,D,z,F,C,E,s,t,K,G,L,B;m.level=0;m.stack=I=[];for(H=0;H<x;H=K){w.lastIndex=H;z=w.exec(A);if(!z){m.doText(A.substring(H,x));break}t=z.index;K=w.lastIndex;if(H<t){D=A.substring(H,t);if(!(B&&Ext.String.trim(D)==="")){m.doText(D)}}B=false;if(z[1]){K=A.indexOf("%}",t+2);m.doEval(A.substring(t+2,K));K+=2}else{if(z[2]){K=A.indexOf("]}",t+2);m.doExpr(A.substring(t+2,K));K+=2}else{if(z[3]){m.doTag(z[3])}else{if(z[4]){G=null;while((s=J.exec(z[4]))!==null){D=s[2]||s[3];if(D){D=Ext.String.htmlDecode(D);F=s[1];F=y[F]||F;G=G||{};C=G[F];if(typeof C=="string"){G[F]=[C,D]}else{if(C){G[F].push(D)}else{G[F]=D}}}}if(!G){if(m.elseRe.test(z[4])){m.doElse()}else{if(m.defaultRe.test(z[4])){m.doDefault()}else{m.doTpl();I.push({type:"tpl"})}}}else{if(G["if"]){m.doIf(G["if"],G);I.push({type:"if"})}else{if(G["switch"]){m.doSwitch(G["switch"],G);I.push({type:"switch"});B=true}else{if(G["case"]){m.doCase(G["case"],G)}else{if(G.elif){m.doElseIf(G.elif,G)}else{if(G["for"]){++m.level;if(L=m.propRe.exec(z[4])){G.propName=L[1]||L[2]}m.doFor(G["for"],G);I.push({type:"for",actions:G})}else{if(G.foreach){++m.level;if(L=m.propRe.exec(z[4])){G.propName=L[1]||L[2]}m.doForEach(G.foreach,G);I.push({type:"foreach",actions:G})}else{if(G.exec){m.doExec(G.exec,G);I.push({type:"exec",actions:G})}}}}}}}}}else{if(z[0].length===5){I.push({type:"tpl"})}else{E=I.pop();m.doEnd(E.type,E.actions);if(E.type=="for"||E.type=="foreach"){--m.level}}}}}}}},topRe:/(?:(\{\%)|(\{\[)|\{([^{}]+)\})|(?:<tpl([^>]*)\>)|(?:<\/tpl>)/g,actionsRe:/\s*(elif|elseif|if|for|foreach|exec|switch|case|eval|between)\s*\=\s*(?:(?:"([^"]*)")|(?:'([^']*)'))\s*/g,propRe:/prop=(?:(?:"([^"]*)")|(?:'([^']*)'))/,defaultRe:/^\s*default\s*$/,elseRe:/^\s*else\s*$/},1,0,0,0,0,0,[Ext.util,"XTemplateParser"],0));(Ext.cmd.derive("Ext.util.XTemplateCompiler",Ext.util.XTemplateParser,{useEval:Ext.isGecko,useIndex:Ext.isIE8m,useFormat:true,propNameRe:/^[\w\d\$]*$/,compile:function(e){var f=this,d=f.generate(e);return f.useEval?f.evalTpl(d):(new Function("Ext",d))(Ext)},generate:function(f){var g=this,e="var fm=Ext.util.Format,ts=Object.prototype.toString;",h;g.maxLevel=0;g.body=["var c0=values, a0="+g.createArrayTest(0)+", p0=parent, n0=xcount, i0=xindex, k0, v;\n"];if(g.definitions){if(typeof g.definitions==="string"){g.definitions=[g.definitions,e]}else{g.definitions.push(e)}}else{g.definitions=[e]}g.switches=[];g.parse(f);g.definitions.push((g.useEval?"$=":"return")+" function ("+g.fnArgs+") {",g.body.join(""),"}");h=g.definitions.join("\n");g.definitions.length=g.body.length=g.switches.length=0;delete g.definitions;delete g.body;delete g.switches;return h},doText:function(f){var d=this,e=d.body;f=f.replace(d.aposRe,"\\'").replace(d.newLineRe,"\\n");if(d.useIndex){e.push("out[out.length]='",f,"'\n")}else{e.push("out.push('",f,"')\n")}},doExpr:function(c){var d=this.body;d.push("if ((v="+c+") != null) out");if(this.useIndex){d.push("[out.length]=v+''\n")}else{d.push(".push(v+'')\n")}},doTag:function(d){var c=this.parseTag(d);if(c){this.doExpr(c)}else{this.doText("{"+d+"}")}},doElse:function(){this.body.push("} else {\n")},doEval:function(b){this.body.push(b,"\n")},doIf:function(d,f){var e=this;if(d==="."){e.body.push("if (values) {\n")}else{if(e.propNameRe.test(d)){e.body.push("if (",e.parseTag(d),") {\n")}else{e.body.push("if (",e.addFn(d),e.callFn,") {\n")}}if(f.exec){e.doExec(f.exec)}},doElseIf:function(d,f){var e=this;if(d==="."){e.body.push("else if (values) {\n")}else{if(e.propNameRe.test(d)){e.body.push("} else if (",e.parseTag(d),") {\n")}else{e.body.push("} else if (",e.addFn(d),e.callFn,") {\n")}}if(f.exec){e.doExec(f.exec)}},doSwitch:function(f){var d=this,e;if(f==="."||f==="#"){e=f==="."?"values":"xindex";d.body.push("switch (",e,") {\n")}else{if(d.propNameRe.test(f)){d.body.push("switch (",d.parseTag(f),") {\n")}else{d.body.push("switch (",d.addFn(f),d.callFn,") {\n")}}d.switches.push(0)},doCase:function(j){var k=this,l=Ext.isArray(j)?j:[j],i=k.switches.length-1,h,g;if(k.switches[i]){k.body.push("break;\n")}else{k.switches[i]++}for(g=0,i=l.length;g<i;++g){h=k.intRe.exec(l[g]);l[g]=h?h[1]:("'"+l[g].replace(k.aposRe,"\\'")+"'")}k.body.push("case ",l.join(": case "),":\n")},doDefault:function(){var d=this,c=d.switches.length-1;if(d.switches[c]){d.body.push("break;\n")}else{d.switches[c]++}d.body.push("default:\n")},doEnd:function(e,g){var h=this,f=h.level-1;if(e=="for"||e=="foreach"){if(g.exec){h.doExec(g.exec)}h.body.push("}\n");h.body.push("parent=p",f,";values=r",f+1,";xcount=n"+f+";xindex=i",f,"+1;xkey=k",f,";\n")}else{if(e=="if"||e=="switch"){h.body.push("}\n")}}},doFor:function(l,j){var m=this,n,h=m.level,i=h-1,k;if(l==="."){n="values"}else{if(m.propNameRe.test(l)){n=m.parseTag(l)}else{n=m.addFn(l)+m.callFn}}if(m.maxLevel<h){m.maxLevel=h;m.body.push("var ")}if(l=="."){k="c"+h}else{k="a"+i+"?c"+i+"[i"+i+"]:c"+i}m.body.push("i",h,"=0,n",h,"=0,c",h,"=",n,",a",h,"=",m.createArrayTest(h),",r",h,"=values,p",h,",k",h,";\n","p",h,"=parent=",k,"\n","if (c",h,"){if(a",h,"){n",h,"=c",h,".length;}else if (c",h,".isMixedCollection){c",h,"=c",h,".items;n",h,"=c",h,".length;}else if(c",h,".isStore){c",h,"=c",h,".data.items;n",h,"=c",h,".length;}else{c",h,"=[c",h,"];n",h,"=1;}}\n","for (xcount=n",h,";i",h,"<n"+h+";++i",h,"){\n","values=c",h,"[i",h,"]");if(j.propName){m.body.push(".",j.propName)}m.body.push("\n","xindex=i",h,"+1\n");if(j.between){m.body.push('if(xindex>1){ out.push("',j.between,'"); } \n')}},doForEach:function(l,j){var m=this,n,h=m.level,i=h-1,k;if(l==="."){n="values"}else{if(m.propNameRe.test(l)){n=m.parseTag(l)}else{n=m.addFn(l)+m.callFn}}if(m.maxLevel<h){m.maxLevel=h;m.body.push("var ")}if(l=="."){k="c"+h}else{k="a"+i+"?c"+i+"[i"+i+"]:c"+i}m.body.push("i",h,"=-1,n",h,"=0,c",h,"=",n,",a",h,"=",m.createArrayTest(h),",r",h,"=values,p",h,",k",h,";\n","p",h,"=parent=",k,"\n","for(k",h," in c",h,"){\n","xindex=++i",h,"+1;\n","xkey=k",h,";\n","values=c",h,"[k",h,"];");if(j.propName){m.body.push(".",j.propName)}if(j.between){m.body.push('if(xindex>1){ out.push("',j.between,'"); } \n')}},createArrayTest:("isArray" in Array)?function(b){return"Array.isArray(c"+b+")"}:function(b){return"ts.call(c"+b+')==="[object Array]"'},doExec:function(i,h){var j=this,g="f"+j.definitions.length,f=j.guards[j.strict?0:1];j.definitions.push("function "+g+"("+j.fnArgs+") {",f.doTry," var $v = values; with($v) {","  "+i," }",f.doCatch,"}");j.body.push(g+j.callFn+"\n")},guards:[{doTry:"",doCatch:""},{doTry:"try { ",doCatch:" } catch(e) {\n}"}],addFn:function(f){var g=this,e="f"+g.definitions.length,h=g.guards[g.strict?0:1];if(f==="."){g.definitions.push("function "+e+"("+g.fnArgs+") {"," return values","}")}else{if(f===".."){g.definitions.push("function "+e+"("+g.fnArgs+") {"," return parent","}")}else{g.definitions.push("function "+e+"("+g.fnArgs+") {",h.doTry," var $v = values; with($v) {","  return("+f+")"," }",h.doCatch,"}")}}return e},parseTag:function(i){var l=this,j=l.tagRe.exec(i),n,k,o,m,p;if(!j){return null}n=j[1];k=j[2];o=j[3];m=j[4];if(n=="."){if(!l.validTypes){l.definitions.push("var validTypes={string:1,number:1,boolean:1};");l.validTypes=true}p='validTypes[typeof values] || ts.call(values) === "[object Date]" ? values : ""'}else{if(n=="#"){p="xindex"}else{if(n=="$"){p="xkey"}else{if(n.substr(0,7)=="parent."){p=n}else{if(isNaN(n)&&n.indexOf("-")==-1&&n.indexOf(".")!=-1){p="values."+n}else{p="values['"+n+"']"}}}}}if(m){p="("+p+m+")"}if(k&&l.useFormat){o=o?","+o:"";if(k.substr(0,5)!="this."){k="fm."+k+"("}else{k+="("}}else{return p}return k+p+o+")"},evalTpl:function($){eval($);return $},newLineRe:/\r\n|\r|\n/g,aposRe:/[']/g,intRe:/^\s*(\d+)\s*$/,tagRe:/^([\w-\.\#\$]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?(\s?[\+\-\*\/]\s?[\d\.\+\-\*\/\(\)]+)?$/},0,0,0,0,0,0,[Ext.util,"XTemplateCompiler"],function(){var b=this.prototype;b.fnArgs="out,values,parent,xindex,xcount,xkey";b.callFn=".call(this,"+b.fnArgs+")"}));(Ext.cmd.derive("Ext.XTemplate",Ext.Template,{isXTemplate:true,emptyObj:{},fn:null,strict:false,apply:function(f,e,h,g){return this.applyOut(f,[],e,h,g).join("")},applyOut:function(j,e,o,m,k){var n=this,p;if(!n.fn){p=new Ext.util.XTemplateCompiler({useFormat:n.disableFormats!==true,definitions:n.definitions,strict:n.strict});n.fn=p.compile(n.html)}m=m||1;k=k||1;if(n.strict){n.fn(e,j,o||n.emptyObj,m,k)}else{try{n.fn(e,j,o||n.emptyObj,m,k)}catch(l){}}return e},compile:function(){return this},statics:{getTpl:function(e,g){var h=e[g],f;if(h&&!h.isTemplate){h=Ext.ClassManager.dynInstantiate("Ext.XTemplate",h);if(e.hasOwnProperty(g)){f=e}else{for(f=e.self.prototype;f&&!f.hasOwnProperty(g);f=f.superclass){}}f[g]=h;h.owner=f}return h||null}}},0,0,0,0,0,0,[Ext,"XTemplate"],0));(Ext.cmd.derive("Ext.app.EventDomain",Ext.Base,{statics:{instances:{}},isEventDomain:true,isInstance:false,constructor:function(){var b=this;if(!b.isInstance){Ext.app.EventDomain.instances[b.type]=b}b.bus={};b.monitoredClasses=[]},dispatch:function(u,q,s){q=Ext.canonicalEventName(q);var r=this,t=r.bus,p=t[q],x,z,A,y,i,v,w,B;if(!p){return true}for(x in p){if(p.hasOwnProperty(x)&&r.match(u,x,r.controller)){z=p[x];for(A in z){if(z.hasOwnProperty(A)){y=z[A];if(y.controller.isActive()){i=y.list;v=i.length;for(w=0;w<v;w++){B=i[w];if(B.fire.apply(B,s)===false){return false}}}}}}}return true},listen:function(M,E){var i=this,F=i.bus,J=i.idProperty,I=i.monitoredClasses,L=I.length,G=E.getId(),w=(i.type==="component"),B=w?E.getRefMap():null,z,H,y,A,O,N,P,C,D,x,K;for(A in M){D=M[A];if(w){A=B[A]||A}if(D){if(J){A=A==="*"?A:A.substring(1)}for(x in D){O=null;N=D[x];P=E;x=Ext.canonicalEventName(x);C=new Ext.util.Event(E,x);if(Ext.isObject(N)){O=N;N=O.fn;P=O.scope||E;delete O.fn;delete O.scope}if(typeof N==="string"){N=P[N]}C.addListener(N,P,O);for(z=0;z<L;++z){K=I[z].hasListeners;if(K){K._incr_(x)}}H=F[x]||(F[x]={});H=H[A]||(H[A]={});y=H[G]||(H[G]={controller:E,list:[]});y.list.push(C)}}}},match:function(f,e){var d=this.idProperty;if(d){return e==="*"||f[d]===e}return false},monitor:function(h){var e=this,f=h.isInstance?h:h.prototype,g=f.doFireEvent;e.monitoredClasses.push(h);f.doFireEvent=function(a,b){var c=g.apply(this,arguments);if(c!==false&&!this.isSuspended(a)){c=e.dispatch(this,a,b)}return c}},unlisten:function(C){var v=this.bus,F=C,j=this.monitoredClasses,x=j.length,E,u,i,w,s,B,t,y,z,D,A;if(C.isController){F=C.getId()}for(u in v){u=Ext.canonicalEventName(u);if(v.hasOwnProperty(u)&&(t=v[u])){for(B in t){E=t[B];D=E[F];if(D){i=D.list;if(i){for(y=0,w=i.length;y<w;++y){s=i[y];s.clearListeners();for(z=0;z<x;++z){A=j[z].hasListeners;if(A){A._decr_(s.name)}}}delete E[F]}}}}}},destroy:function(){this.monitoredClasses=this.bus=null;this.callParent()}},1,0,0,0,0,0,[Ext.app,"EventDomain"],0));(Ext.cmd.derive("Ext.app.domain.Component",Ext.app.EventDomain,{singleton:true,type:"component",constructor:function(){this.callParent();this.monitor(Ext.Widget)},dispatch:function(i,k,l){var g=i.lookupController(false),j,h;while(g){j=g.compDomain;if(j){if(j.dispatch(i,k,l)===false){return false}}h=g.getView();g=h?h.lookupController(true):null}return this.callParent(arguments)},match:function(c,d){return c.is(d)}},1,0,0,0,0,0,[Ext.app.domain,"Component"],0));(Ext.cmd.derive("Ext.app.EventBus",Ext.Base,{singleton:true,constructor:function(){var c=this,d=Ext.app.EventDomain.instances;c.callParent();c.domains=d;c.bus=d.component.bus},control:function(c,d){return this.domains.component.listen(c,d)},listen:function(g,e){var f=this.domains,h;for(h in g){if(g.hasOwnProperty(h)){f[h].listen(g[h],e)}}},unlisten:function(f){var e=Ext.app.EventDomain.instances,d;for(d in e){e[d].unlisten(f)}}},1,0,0,0,0,0,[Ext.app,"EventBus"],0));(Ext.cmd.derive("Ext.app.domain.Global",Ext.app.EventDomain,{singleton:true,type:"global",constructor:function(){var b=this;b.callParent();b.monitor(Ext.GlobalEvents)},listen:function(c,d){this.callParent([{global:c},d])},match:Ext.returnTrue},1,0,0,0,0,0,[Ext.app.domain,"Global"],0));(Ext.cmd.derive("Ext.app.BaseController",Ext.Base,{isController:true,config:{id:null,control:null,listen:null,routes:null,before:null},constructor:function(d){var c=this;Ext.apply(c,d);delete c.control;delete c.listen;c.eventbus=Ext.app.EventBus;c.mixins.observable.constructor.call(c,d);c.ensureId()},applyListen:function(b){if(Ext.isObject(b)){b=Ext.clone(b)}return b},applyControl:function(b){if(Ext.isObject(b)){b=Ext.clone(b)}return b},updateControl:function(b){this.ensureId();if(b){this.control(b)}},updateListen:function(b){this.ensureId();if(b){this.listen(b)}},updateRoutes:function(h){if(h){var l=this,k=l.getBefore()||{},i=Ext.app.route.Router,m,n,j;for(m in h){n=h[m];if(Ext.isString(n)){n={action:n}}j=n.action;if(!n.before){n.before=k[j]}i.connect(m,n,l)}}},isActive:function(){return true},control:function(g,l,h){var k=this,j=h,i;if(Ext.isString(g)){i={};i[g]=l}else{i=g;j=l}k.eventbus.control(i,j||k)},listen:function(c,d){this.eventbus.listen(c,d||this)},destroy:function(){var c=this,d=c.eventbus;Ext.app.route.Router.disconnectAll(c);if(d){d.unlisten(c);c.eventbus=null}c.callParent()},redirectTo:function(d,f){if(d.isModel){d=d.toUrl()}if(!f){var e=Ext.util.History.getToken();if(e===d){return false}}else{Ext.app.route.Router.onStateChange(d)}Ext.util.History.add(d);return true}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.app,"BaseController"],0));(Ext.cmd.derive("Ext.app.Util",Ext.Base,{},0,0,0,0,0,0,[Ext.app,"Util"],function(){Ext.apply(Ext.app,{namespaces:{Ext:{}},addNamespaces:function(h){var g=Ext.app.namespaces,e,f;if(!Ext.isArray(h)){h=[h]}for(e=0,f=h.length;e<f;e++){g[h[e]]=true}},clearNamespaces:function(){Ext.app.namespaces={}},getNamespace:function(e){var g=Ext.apply({},Ext.ClassManager.paths,Ext.app.namespaces),f="",h;for(h in g){if(g.hasOwnProperty(h)&&h.length>f.length&&(h+"."===e.substring(0,h.length+1))){f=h}}return f===""?undefined:f},setupPaths:function(g,f,h){var i=Ext.manifest,j;if(g&&f!==null){i=i&&i.paths;if(!i||f!==undefined){Ext.Loader.setPath(g,(f===undefined)?"app":f)}}if(h){for(j in h){if(h.hasOwnProperty(j)){Ext.Loader.setPath(j,h[j])}}}}});Ext.getNamespace=Ext.app.getNamespace}));(Ext.cmd.derive("Ext.util.Filter",Ext.Base,{isFilter:true,config:{property:null,value:null,filterFn:null,id:null,anyMatch:false,exactMatch:false,caseSensitive:false,disabled:false,disableOnEmpty:false,operator:null,root:null,serializer:null,convert:null},scope:null,$configStrict:false,statics:{createFilterFn:function(b){if(!b){return Ext.returnTrue}return function(i){var a=b.isCollection?b.items:b,h=a.length,l=true,k,j;for(k=0;l&&k<h;k++){j=a[k];if(!j.getDisabled()){l=j.filter(i)}}return l}},isInvalid:function(b){if(!b.filterFn){if(!b.property){return"A Filter requires either a property or a filterFn to be set"}if(!b.hasOwnProperty("value")&&!b.operator){return"A Filter requires either a property and value, or a filterFn to be set"}}return false}},constructor:function(b){this.initConfig(b)},preventConvert:{"in":1,notin:1},filter:function(f){var g=this,h=g._filterFn||g.getFilterFn(),i=g.getConvert(),j=g._value;g._filterValue=j;g.isDateValue=Ext.isDate(j);if(g.isDateValue){g.dateValue=j.getTime()}if(i&&!g.preventConvert[g.getOperator()]){g._filterValue=i.call(g.scope||g,j)}return h.call(g.scope||g,f)},getId:function(){var b=this._id;if(!b){b=this.getProperty();if(!b){b=Ext.id(null,"ext-filter-")}this._id=b}return b},getFilterFn:function(){var d=this,f=d._filterFn,e;if(!f){e=d.getOperator();if(e){f=d.operatorFns[e]}else{f=d.createRegexFilter()}d._filterFn=f}return f},createRegexFilter:function(){var f=this,h=!!f.getAnyMatch(),g=!!f.getExactMatch(),j=f.getValue(),i=Ext.String.createRegex(j,!h,!h&&g,!f.getCaseSensitive());return function(b){var a=f.getPropertyValue(b);return i?i.test(a):(a==null)}},getPropertyValue:function(d){var e=this._root,f=(e==null)?d:d[e];return f[this._property]},getState:function(){var f=this.getInitialConfig(),e={},d;for(d in f){if(f.hasOwnProperty(d)){e[d]=f[d]}}delete e.root;e.value=this.getValue();return e},getScope:function(){return this.scope},serialize:function(){var d=this.getState(),c=this.getSerializer();delete d.id;delete d.serializer;if(c){c.call(this,d)}return d},updateOperator:function(){this._filterFn=null},updateValue:function(b){this._filterFn=null;if(this.getDisableOnEmpty()){this.setDisabled(Ext.isEmpty(b))}},updateDisableOnEmpty:function(d){var c=false;if(d){c=Ext.isEmpty(this.getValue())}this.setDisabled(c)},privates:{getCandidateValue:function(l,g,j){var k=this,i=k._convert,h=k.getPropertyValue(l);if(i){h=i.call(k.scope||k,h)}else{if(!j){h=Ext.coerce(h,g)}}return h}}},1,0,0,0,0,0,[Ext.util,"Filter"],function(){var d=this.prototype,c=(d.operatorFns={"<":function(a){var b=this._filterValue;return this.getCandidateValue(a,b)<b},"<=":function(a){var b=this._filterValue;return this.getCandidateValue(a,b)<=b},"=":function(b){var a=this,f=a._filterValue;b=a.getCandidateValue(b,f);if(a.isDateValue&&b instanceof Date){b=b.getTime();f=a.dateValue}return b==f},"===":function(b){var a=this,f=a._filterValue;b=a.getCandidateValue(b,f,true);if(a.isDateValue&&b instanceof Date){b=b.getTime();f=a.dateValue}return b===f},">=":function(a){var b=this._filterValue;return this.getCandidateValue(a,b)>=b},">":function(a){var b=this._filterValue;return this.getCandidateValue(a,b)>b},"!=":function(b){var a=this,f=a._filterValue;b=a.getCandidateValue(b,f);if(a.isDateValue&&b instanceof Date){b=b.getTime();f=a.dateValue}return b!=f},"!==":function(b){var a=this,f=a._filterValue;b=a.getCandidateValue(b,f,true);if(a.isDateValue&&b instanceof Date){b=b.getTime();f=a.dateValue}return b!==f},"in":function(a){var b=this._filterValue;return Ext.Array.contains(b,this.getCandidateValue(a,b))},notin:function(a){var b=this._filterValue;return !Ext.Array.contains(b,this.getCandidateValue(a,b))},like:function(a){var b=this._filterValue;return b&&this.getCandidateValue(a,b).toLowerCase().indexOf(b.toLowerCase())>-1}});c["=="]=c["="];c.gt=c[">"];c.ge=c[">="];c.lt=c["<"];c.le=c["<="];c.eq=c["="];c.ne=c["!="]}));(Ext.cmd.derive("Ext.util.Observable",Ext.mixin.Observable,{$applyConfigs:true},0,0,0,0,0,0,[Ext.util,"Observable"],function(d){var c=Ext.mixin.Observable;d.releaseCapture=c.releaseCapture;d.capture=c.capture;d.captureArgs=c.captureArgs;d.observe=d.observeClass=c.observe}));(Ext.cmd.derive("Ext.util.AbstractMixedCollection",Ext.Base,{isMixedCollection:true,generation:0,indexGeneration:0,constructor:function(d,e){var f=this;if(arguments.length===1&&Ext.isObject(d)){f.initialConfig=d;Ext.apply(f,d)}else{f.allowFunctions=d===true;if(e){f.getKey=e}f.initialConfig={allowFunctions:f.allowFunctions,getKey:f.getKey}}f.items=[];f.map={};f.keys=[];f.indexMap={};f.length=0;f.mixins.observable.constructor.call(f)},destroy:function(){var b=this;b.items=b.map=b.keys=b.indexMap=null;b.callParent()},allowFunctions:false,add:function(h,g){var f=this.length,e;if(arguments.length===1){e=this.insert(f,h)}else{e=this.insert(f,h,g)}return e},getKey:function(b){return b.id},replace:function(j,h){var i=this,g,f;if(arguments.length==1){h=arguments[0];j=i.getKey(h)}g=i.map[j];if(typeof j=="undefined"||j===null||typeof g=="undefined"){return i.add(j,h)}i.generation++;f=i.indexOfKey(j);i.items[f]=h;i.map[j]=h;if(i.hasListeners.replace){i.fireEvent("replace",j,g,h)}return h},reorder:function(o){var l=this,i=l.items,p=0,m=i.length,j=[],n=[],k;l.suspendEvents();for(k in o){j[o[k]]=i[k]}for(p=0;p<m;p++){if(o[p]==undefined){n.push(i[p])}}for(p=0;p<m;p++){if(j[p]==undefined){j[p]=n.shift()}}l.clear();l.addAll(j);l.resumeEvents()},updateKey:function(k,j){var m=this,l=m.map,i=m.indexOfKey(k),n=m.indexMap,h;if(i>-1){h=l[k];delete l[k];delete n[k];l[j]=h;n[j]=i;m.keys[i]=j;m.indexGeneration=++m.generation}},addAll:function(f){var d=this,e;if(arguments.length>1||Ext.isArray(f)){d.insert(d.length,arguments.length>1?arguments:f)}else{for(e in f){if(f.hasOwnProperty(e)){if(d.allowFunctions||typeof f[e]!="function"){d.add(e,f[e])}}}}},each:function(j,k){var g=Ext.Array.push([],this.items),l=0,h=g.length,i;for(;l<h;l++){i=g[l];if(j.call(k||i,i,l,h)===false){break}}},eachKey:function(j,k){var i=this.keys,g=this.items,l=0,h=i.length;for(;l<h;l++){j.call(k||window,i[l],g[l],l,h)}},findBy:function(j,k){var i=this.keys,g=this.items,l=0,h=g.length;for(;l<h;l++){if(j.call(k||window,g[l],i[l])){return g[l]}}return null},insert:function(e,h,g){var f;if(Ext.isIterable(h)){f=this.doInsert(e,h,g)}else{if(arguments.length>2){f=this.doInsert(e,[h],[g])}else{f=this.doInsert(e,[h])}f=f[0]}return f},doInsert:function(w,r,s){var u=this,C,B,y,v=r.length,D=v,z=u.hasListeners.add,A,x={},t,i,q;if(s!=null){u.useLinearSearch=true}else{s=r;r=new Array(v);for(y=0;y<v;y++){r[y]=this.getKey(s[y])}}u.suspendEvents();for(y=0;y<v;y++){C=r[y];B=u.indexOfKey(C);if(B!==-1){if(B<w){w--}u.removeAt(B)}if(C!=null){if(x[C]!=null){t=true;D--}x[C]=y}}u.resumeEvents();if(t){i=r;q=s;r=new Array(D);s=new Array(D);y=0;for(C in x){r[y]=i[x[C]];s[y]=q[x[C]];y++}v=D}A=w===u.length&&u.indexGeneration===u.generation;Ext.Array.insert(u.items,w,s);Ext.Array.insert(u.keys,w,r);u.length+=v;u.generation++;if(A){u.indexGeneration=u.generation}for(y=0;y<v;y++,w++){C=r[y];if(C!=null){u.map[C]=s[y];if(A){u.indexMap[C]=w}}if(z){u.fireEvent("add",w,s[y],C)}}return s},remove:function(g){var h=this,e,f;if(!h.useLinearSearch&&(e=h.getKey(g))){f=h.indexOfKey(e)}else{f=Ext.Array.indexOf(h.items,g)}return(f===-1)?false:h.removeAt(f)},removeAll:function(e){var f=this,d;if(e||f.hasListeners.remove){if(e){for(d=e.length-1;d>=0;--d){f.remove(e[d])}}else{while(f.length){f.removeAt(0)}}}else{f.length=f.items.length=f.keys.length=0;f.map={};f.indexMap={};f.generation++;f.indexGeneration=f.generation}},removeAt:function(f){var h=this,g,e;if(f<h.length&&f>=0){h.length--;g=h.items[f];Ext.Array.erase(h.items,f,1);e=h.keys[f];if(typeof e!="undefined"){delete h.map[e]}Ext.Array.erase(h.keys,f,1);if(h.hasListeners.remove){h.fireEvent("remove",g,e)}h.generation++;return g}return false},removeRange:function(l,r){var k=this,q,i,m,n,p,o;if(l<k.length&&l>=0){if(!r){r=1}n=Math.min(l+r,k.length);r=n-l;o=n===k.length;p=o&&k.indexGeneration===k.generation;for(m=l;m<n;m++){i=k.keys[m];if(i!=null){delete k.map[i];if(p){delete k.indexMap[i]}}}q=k.items[m-1];k.length-=r;k.generation++;if(p){k.indexGeneration=k.generation}if(o){k.items.length=k.keys.length=k.length}else{k.items.splice(l,r);k.keys.splice(l,r)}return q}return false},removeAtKey:function(e){var g=this,h=g.keys,f;if(e==null){for(f=h.length-1;f>=0;f--){if(h[f]==null){g.removeAt(f)}}}else{return g.removeAt(g.indexOfKey(e))}},getCount:function(){return this.length},indexOf:function(f){var d=this,e;if(f!=null){if(!d.useLinearSearch&&(e=d.getKey(f))){return this.indexOfKey(e)}return Ext.Array.indexOf(d.items,f)}return -1},indexOfKey:function(b){if(!this.map.hasOwnProperty(b)){return -1}if(this.indexGeneration!==this.generation){this.rebuildIndexMap()}return this.indexMap[b]},rebuildIndexMap:function(){var h=this,i=h.indexMap={},j=h.keys,g=j.length,f;for(f=0;f<g;f++){i[j[f]]=f}h.indexGeneration=h.generation},get:function(e){var g=this,f=g.map[e],h=f!==undefined?f:(typeof e=="number")?g.items[e]:undefined;return typeof h!="function"||g.allowFunctions?h:null},getAt:function(b){return this.items[b]},getByKey:function(b){return this.map[b]},contains:function(f){var d=this,e;if(f!=null){if(!d.useLinearSearch&&(e=d.getKey(f))){return this.map[e]!=null}return Ext.Array.indexOf(this.items,f)!==-1}return false},containsKey:function(b){return this.map.hasOwnProperty(b)},clear:function(){var b=this;if(b.generation){b.length=0;b.items=[];b.keys=[];b.map={};b.indexMap={};b.generation++;b.indexGeneration=b.generation}if(b.hasListeners.clear){b.fireEvent("clear")}},first:function(){return this.items[0]},last:function(){return this.items[this.length-1]},sum:function(l,i,k,j){var p=this.extractValues(l,i),m=p.length,n=0,o;k=k||0;j=(j||j===0)?j:m-1;for(o=k;o<=j;o++){n+=p[o]}return n},collect:function(l,p,n){var i=this.extractValues(l,p),t=i.length,s={},r=[],m,o,q;for(q=0;q<t;q++){m=i[q];o=String(m);if((n||!Ext.isEmpty(m))&&!s[o]){s[o]=true;r.push(m)}}return r},extractValues:function(f,e){var d=this.items;if(e){d=Ext.Array.pluck(d,e)}return Ext.Array.pluck(d,f)},hasRange:function(c,d){return(d<this.length)},getRange:function(k,i){var l=this,o=l.items,p=[],j=o.length,m,n;if(j<1){return p}if(k>i){n=true;m=k;k=i;i=m}if(k<0){k=0}if(i==null||i>=j){i=j-1}p=o.slice(k,i+1);if(n&&p.length){p.reverse()}return p},filter:function(i,j,h,g){var f=[];if(Ext.isString(i)){f.push(new Ext.util.Filter({property:i,value:j,anyMatch:h,caseSensitive:g}))}else{if(Ext.isArray(i)||i instanceof Ext.util.Filter){f=f.concat(i)}}return this.filterBy(Ext.util.Filter.createFilterFn(f))},filterBy:function(n,o){var k=this,j=new k.self(k.initialConfig),l=k.keys,i=k.items,m=i.length,p;j.getKey=k.getKey;for(p=0;p<m;p++){if(n.call(o||k,i[p],l[p])){j.add(l[p],i[p])}}j.useLinearSearch=k.useLinearSearch;return j},findIndex:function(j,f,h,i,g){if(Ext.isEmpty(f,false)){return -1}f=this.createValueMatcher(f,i,g);return this.findIndexBy(function(a){return a&&f.test(a[j])},null,h)},findIndexBy:function(n,o,k){var l=this,m=l.keys,i=l.items,p=k||0,j=i.length;for(;p<j;p++){if(n.call(o||l,i[p],m[p])){return p}}return -1},createValueMatcher:function(j,h,g,f){if(!j.exec){var i=Ext.String.escapeRegex;j=String(j);if(h===true){j=i(j)}else{j="^"+i(j);if(f===true){j+="$"}}j=new RegExp(j,g?"":"i")}return j},clone:function(){var d=this,c=new d.self(d.initialConfig);c.add(d.keys,d.items);c.useLinearSearch=d.useLinearSearch;return c}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.util,"AbstractMixedCollection"],0));(Ext.cmd.derive("Ext.util.Sorter",Ext.Base,{isSorter:true,config:{property:null,sorterFn:null,root:null,transform:null,direction:"ASC",id:undefined},statics:{createComparator:function(c,d){d=d||0;return function(l,a){var j=c.isCollection?c.items:c,b=j.length,k,i;for(i=0;i<b;++i){k=j[i].sort(l,a);if(k){return k}}return d&&d(l,a)}}},multiplier:1,constructor:function(b){this.initConfig(b)},getId:function(){var b=this._id;if(!b){b=this.getProperty();if(!b){b=Ext.id(null,"ext-sorter-")}this._id=b}return b},sort:function(d,c){return this.multiplier*this.sortFn(d,c)},sortFn:function(o,p){var m=this,n=m._transform,i=m._root,l=m._property,j,k;if(i){o=o[i];p=p[i]}j=o[l];k=p[l];if(n){j=n(j);k=n(k)}return(j>k)?1:(j<k?-1:0)},applyDirection:function(b){return b?b:"ASC"},updateDirection:function(b){this.multiplier=(b.toUpperCase()==="DESC")?-1:1},updateProperty:function(b){if(b){delete this.sortFn}},updateSorterFn:function(b){this.sortFn=b},toggle:function(){this.setDirection(Ext.String.toggle(this.getDirection(),"ASC","DESC"))},getState:function(){var c=this,d={root:c.getRoot(),property:c.getProperty(),direction:c.getDirection()};if(c._id){d.id=c._id}return d},serialize:function(){return{property:this.getProperty(),direction:this.getDirection()}}},1,0,0,0,0,0,[Ext.util,"Sorter"],0));(Ext.cmd.derive("Ext.util.Sortable",Ext.Base,{isSortable:true,$configPrefixed:false,$configStrict:false,config:{sorters:null},defaultSortDirection:"ASC",multiSortLimit:3,statics:{createComparator:function(b){return b&&b.length?function(i,j){var a=b[0].sort(i,j),g=b.length,h=1;for(;!a&&h<g;h++){a=b[h].sort.call(b[h],i,j)}return a}:function(){return 0}}},applySorters:function(f){var d=this,e=d.getSorters()||new Ext.util.MixedCollection(false,Ext.returnId);if(f){e.addAll(d.decodeSorters(f))}return e},sort:function(l,m,j,n){var i=this,k,o,p=i.getSorters();if(!p){i.setSorters(null);p=i.getSorters()}if(Ext.isArray(l)){n=j;j=m}else{if(Ext.isObject(l)){l=[l];n=j;j=m}else{if(Ext.isString(l)){k=p.get(l);if(!k){k={property:l,direction:m}}else{if(m==null){k.toggle()}else{k.setDirection(m)}}l=[k]}}}if(l&&l.length){l=i.decodeSorters(l);switch(j){case"multi":p.insert(0,l[0]);o=p.getCount()-i.multiSortLimit;if(o>0){p.removeRange(i.multiSortLimit,o)}break;case"prepend":p.insert(0,l);break;case"append":p.addAll(l);break;case undefined:case null:case"replace":p.clear();p.addAll(l);break;default:}}if(n!==false){i.fireEvent("beforesort",i,l);i.onBeforeSort(l);if(i.getSorterCount()){i.doSort(i.generateComparator())}}return l},getSorterCount:function(){return this.getSorters().items.length},generateComparator:function(){var b=this.getSorters().getRange();return b.length?this.createComparator(b):this.emptyComparator},emptyComparator:function(){return 0},onBeforeSort:Ext.emptyFn,decodeSorters:function(k){if(!Ext.isArray(k)){if(k===undefined){k=[]}else{k=[k]}}var m=k.length,j=Ext.util.Sorter,h=this.getModel?this.getModel():this.model,l,i,n;for(n=0;n<m;n++){i=k[n];if(!(i instanceof j)){if(Ext.isString(i)){i={property:i}}Ext.applyIf(i,{root:this.sortRoot,direction:"ASC"});if(i.fn){i.sorterFn=i.fn}if(typeof i=="function"){i={sorterFn:i}}if(h&&!i.transform){l=h.getField(i.property);i.transform=l&&l.sortType!==Ext.identityFn?l.sortType:undefined}k[n]=new Ext.util.Sorter(i)}}return k},getFirstSorter:function(){var h=this.getSorters().items,f=h.length,e=0,g;for(;e<f;++e){g=h[e];if(!g.isGrouper){return g}}return null}},0,0,0,0,0,0,[Ext.util,"Sortable"],function(){this.prototype.createComparator=this.createComparator}));(Ext.cmd.derive("Ext.util.MixedCollection",Ext.util.AbstractMixedCollection,{constructor:function(){this.initConfig();Ext.util.AbstractMixedCollection.prototype.constructor.apply(this,arguments)},doSort:function(b){this.sortBy(b)},_sort:function(i,u,n){var o=this,s,r,t=String(u).toUpperCase()=="DESC"?-1:1,p=[],c=o.keys,q=o.items,v;n=n||function(a,b){return a-b};for(s=0,r=q.length;s<r;s++){p[p.length]={key:c[s],value:q[s],index:s}}Ext.Array.sort(p,function(a,b){return n(a[i],b[i])*t||(a.index<b.index?-1:1)});for(s=0,r=p.length;s<r;s++){v=p[s];q[s]=v.value;c[s]=v.key;o.indexMap[v.key]=s}o.generation++;o.indexGeneration=o.generation;o.fireEvent("sort",o)},sortBy:function(i){var k=this,j=k.items,l,m=k.keys,o,n=j.length,p;for(p=0;p<n;p++){j[p].$extCollectionIndex=p}Ext.Array.sort(j,function(a,b){return i(a,b)||(a.$extCollectionIndex<b.$extCollectionIndex?-1:1)});for(p=0;p<n;p++){l=j[p];o=k.getKey(l);m[p]=o;k.indexMap[o]=p;delete j.$extCollectionIndex}k.generation++;k.indexGeneration=k.generation;k.fireEvent("sort",k,j,m)},findInsertionIndex:function(n,o){var m=this,i=m.items,k=0,j=i.length-1,p,l;if(!o){o=m.generateComparator()}while(k<=j){p=(k+j)>>1;l=o(n,i[p]);if(l>=0){k=p+1}else{if(l<0){j=p-1}}}return k},reorder:function(b){Ext.util.AbstractMixedCollection.prototype.reorder.call(this,b);this.fireEvent("sort",this)},sortByKey:function(d,c){this._sort("key",d,c||function(g,h){var a=String(g).toUpperCase(),b=String(h).toUpperCase();return a>b?1:(a<b?-1:0)})}},1,0,0,0,0,[["sortable",Ext.util.Sortable]],[Ext.util,"MixedCollection"],0));(Ext.cmd.derive("Ext.util.CollectionKey",Ext.Base,{isCollectionKey:true,observerPriority:-200,config:{collection:null,keyFn:null,property:null,rootProperty:null,unique:true},generation:0,map:null,mapRebuilds:0,constructor:function(b){this.initConfig(b)},get:function(d){var c=this.map||this.getMap();return c[d]||null},clear:function(){this.map=null},getRootProperty:function(){var c=this,d=(arguments.callee.$previous||Ext.Base.prototype.getRootProperty).call(this);return d!==null?d:c.getCollection().getRootProperty()},indexOf:function(l,p){var t=this.map||this.getMap(),i=t[l],o=this.getCollection(),s=o.length,q,n,m,r;if(!i){return -1}if(p===undefined){p=-1}if(i instanceof Array){m=i;n=s;for(r=m.length;r-->0;){q=o.indexOf(m[r]);if(q<n&&q>p){n=q}}if(n===s){return -1}}else{n=o.indexOf(i)}return(n>p)?n:-1},updateKey:function(l,j){var g=this,k=g.map,i,h;if(k){i=k[j];if(i instanceof Array){h=Ext.Array.indexOf(i,l);if(h>=0){if(i.length>2){i.splice(h,1)}else{k[j]=i[1-h]}}}else{if(i){delete k[j]}}g.add([l])}},onCollectionAdd:function(c,d){if(this.map){this.add(d.items)}},onCollectionItemChange:function(c,d){this.map=null},onCollectionRefresh:function(){this.map=null},onCollectionRemove:function(n,o){var l=this,r=l.map,m=o.items,q=m.length,p,i,k;if(r){if(l.getUnique()&&q<n.length/2){for(p=0;p<q;++p){k=l.getKey(i=m[p]);delete r[k]}}else{l.map=null}}},add:function(m){var l=this,r=l.map,q,n,i,k,p,o;p=m.length;o=l.getUnique();for(n=0;n<p;++n){k=l.getKey(i=m[n]);if(o||!(k in r)){r[k]=i}else{if(!((q=r[k]) instanceof Array)){r[k]=q=[q]}q.push(i)}}},applyKeyFn:function(b){if(Ext.isString(b)){this.getKey=function(a){return a[b]()}}else{this.getKey=b}},updateProperty:function(c){var d=this.getRootProperty();this.getKey=function(a){return(d?a[d]:a)[c]}},getMap:function(){var d=this,c=d.map;if(!c){d.map=c={};d.keysByItemKey={};++d.mapRebuilds;d.add(d.getCollection().items)}return c},updateCollection:function(b){b.addObserver(this)},clone:function(){return new Ext.util.CollectionKey(this.getCurrentConfig())}},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.util,"CollectionKey"],0));(Ext.cmd.derive("Ext.util.Grouper",Ext.util.Sorter,{isGrouper:true,config:{groupFn:null,sortProperty:null},constructor:function(b){Ext.util.Sorter.prototype.constructor.apply(this,arguments)},getGroupString:function(d){var c=this._groupFn(d);return(c!=null)?String(c):""},sortFn:function(o,p){var m=this,q=m._groupFn(o),n=m._groupFn(p),j=m._sortProperty,k=m._root,l=m._sorterFn,r=m._transform;if(q===n){return 0}if(j||l){if(l){return l.call(this,o,p)}if(k){o=o[k];p=p[k]}q=o[j];n=p[j];if(r){q=r(q);n=r(n)}}return(q>n)?1:(q<n?-1:0)},standardGroupFn:function(c){var d=this._root;return(d?c[d]:c)[this._property]},updateSorterFn:function(){},updateProperty:function(){if(!this.getGroupFn()){this.setGroupFn(this.standardGroupFn)}}},1,0,0,0,0,0,[Ext.util,"Grouper"],0));(Ext.cmd.derive("Ext.util.Collection",Ext.Base,{isCollection:true,config:{autoFilter:true,autoSort:true,autoGroup:true,decoder:null,extraKeys:null,filters:null,grouper:null,groups:null,rootProperty:null,sorters:null,multiSortLimit:3,defaultSortDirection:"ASC",source:null,trackGroups:true},generation:0,indices:null,indexRebuilds:0,updating:0,grouped:false,sorted:false,filtered:false,$endUpdatePriority:1001,constructor:function(d){var c=this;c.items=[];c.map={};c.length=0;if(d&&d.keyFn){c.getKey=d.keyFn}c.mixins.observable.constructor.call(c,d)},destroy:function(){var h=this,e=h._filters,g=h._sorters,f=h._groups;if(e){e.destroy();h._filters=null}if(g){g.destroy();h._sorters=null}if(f){f.destroy();h._groups=null}h.setSource(null);h.observers=h.items=h.map=null;h.callParent()},add:function(g){var h=this,f=h.decodeItems(arguments,0),e=f;if(f.length){h.requestedIndex=h.length;h.splice(h.length,0,f);delete h.requestedIndex;e=(f.length===1)?f[0]:f}return e},replaceAll:function(){var f=this,d,e;e=f.decodeItems(arguments,0);d=e;if(e.length){f.splice(0,f.length,e);d=(e.length===1)?e[0]:e}else{f.removeAll()}return d},aggregate:function(j,h,l,i,m){var k=this,n=Ext.Array.slice(arguments);n.unshift(k.items);return k.aggregateItems.apply(k,n)},aggregateByGroup:function(g,e,h){var f=this.getGroups();return this.aggregateGroups(f,g,e,h)},aggregateItems:function(x,j,C,F,B,i){var w=this,y=Ext.Number.clipIndices(x.length,[F,B]),E=(F!==0&&B!==x.length),z,A,D,v,t,s,u;F=y[0];B=y[1];if(!Ext.isFunction(C)){C=w._aggregators[C];return C.call(w,x,F,B,j,w.getRootProperty())}v=w.getRootProperty();s=new Array(D);u=E?new Array(D):x;for(z=F,A=0;z<B;++z,A++){if(E){u[A]=t=x[z]}s[A]=(v?t[v]:t)[j]}return C.call(i||w,x,s,0)},aggregateGroups:function(v,n,t,m){var p=v.items,q=p.length,u=!Ext.isFunction(t),s={},r,o,i;for(r=0;r<q;++r){o=p[r];if(!u){i=this.aggregateItems(o.items,n,t,null,null,m)}else{i=o[t](n)}s[o.getGroupKey()]=i}return s},beginUpdate:function(){if(!this.updating++){this.notify("beginupdate")}},clear:function(){var j=this,i=j.generation,g=i?j.items:[],f,h;if(i){j.items=[];j.length=0;j.map={};j.indices={};j.generation++;f=j.getExtraKeys();if(f){for(h in f){f[h].clear()}}}return g},clone:function(){var d=this,c=new d.self(d.initialConfig);c.add(d.items);return c},collect:function(i,o,m){var p=this.items,s=p.length,t={},q=[],r,n,l;for(r=0;r<s;++r){l=p[r];l=(o?l[o]:l)[i];n=String(l);if((m||!Ext.isEmpty(l))&&!t[n]){t[n]=1;q.push(l)}}return q},contains:function(f){var e=false,d;if(f!=null){d=this.getKey(f);e=this.map[d]===f}return e},containsKey:function(b){return b in this.map},createFiltered:function(p,q,x,t,y){var u=this,w=new u.self(u.initialConfig),r=u.getRootProperty(),v=u.items,A,z,B,s,i;if(Ext.isFunction(p)){s=p;i=q}else{if(Ext.isString(p)){B=[new Ext.util.Filter({property:p,value:q,root:r,anyMatch:x,caseSensitive:t,exactMatch:y})]}else{if(p instanceof Ext.util.Filter){B=[p];p.setRoot(r)}else{if(Ext.isArray(p)){B=p.slice(0);for(z=0,A=B.length;z<A;++z){B[z].setRoot(r)}}}}s=Ext.util.Filter.createFilterFn(B)}i=i||u;for(z=0,A=v.length;z<A;z++){if(s.call(i,v[z])){w.add(v[z])}}return w},filterBy:function(c,d){return this.createFiltered(c,d)},each:function(i,j){var g=this.items,h=g.length,k,l;if(h){j=j||this;g=g.slice(0);for(k=0;k<h;k++){l=i.call(j,g[k],k,h);if(l===false){break}}}return l},eachKey:function(m,i){var n=this,o=n.items,q=o.length,r,k,l,p;if(q){i=i||n;o=o.slice(0);for(r=0;r<q;r++){l=n.getKey(k=o[r]);p=m.call(i,l,k,r,q);if(p===false){break}}}return p},endUpdate:function(){if(!--this.updating){this.notify("endupdate")}},find:function(l,m,k,o,p,i){if(Ext.isEmpty(m,false)){return null}var n=Ext.String.createRegex(m,o,p,i),j=this.getRootProperty();return this.findBy(function(a){return a&&n.test((j?a[j]:a)[l])},null,k)},findBy:function(m,i,r){var n=this,o=n.items,p=o.length,q,k,l;i=i||n;for(q=r||0;q<p;q++){l=n.getKey(k=o[q]);if(m.call(i,k,l)){return o[q]}}return null},findIndex:function(k,l,j,n,h,i){var m=this.find(k,l,j,n,h,i);return m?this.indexOf(m):-1},findIndexBy:function(e,f,g){var h=this.findBy(e,f,g);return h?this.indexOf(h):-1},first:function(c){var d=c?this.getGroups():undefined;return d?this.aggregateGroups(d,null,"first"):this.items[0]},last:function(c){var d=c?this.getGroups():undefined;return d?this.aggregateGroups(d,null,"last"):this.items[this.length-1]},get:function(b){return this.map[b]},getAt:function(b){return this.items[b]},getByKey:function(b){return this.map[b]},getCount:function(){return this.length},getKey:function(d){var c=d.id;return(c===0||c)?c:((c=d._id)===0||c)?c:d.getId()},getRange:function(i,g){var j=this.items,h=j.length,f;if(!h){f=[]}else{f=Ext.Number.clipIndices(h,[i,g]);f=j.slice(f[0],f[1])}return f},getValues:function(i,l,r,q){var m=this.items,o=Ext.Number.clipIndices(m.length,[r,q]),n=[],p,k;for(p=o[0],q=o[1];p<q;++p){k=m[p];k=(l?k[l]:k)[i];n.push(k)}return n},indexOf:function(c){if(!c){return -1}var d=this.getKey(c);return this.indexOfKey(d)},indexOfKey:function(e){var d=this,f=d.indices;if(e in d.map){if(!f){f=d.getIndices()}return f[e]}return -1},insert:function(j,h){var i=this,g=i.decodeItems(arguments,1),f=g;if(g.length){i.requestedIndex=j;i.splice(j,0,g);delete i.requestedIndex;f=(g.length===1)?g[0]:g}return f},itemChanged:function(y,K,G,F){var x=this,P=G===0||!!G,J=x.filtered&&x.getAutoFilter(),N=false,O=0,D=x.items,H=x.length-1,R=x.sorted&&H>0&&x.getAutoSort(),B=x.getSource(),C=0,I=false,E=false,z,A,M,w,L,Q;if(B&&!B.updating){B.itemChanged(y,K,G,F)}else{A=x.getKey(y);if(J){L=x.indexOfKey(P?G:A);E=(L<0);I=x.isItemFiltered(y);N=(E!==I)}if(N){if(I){C=[y];Q=-1}else{w=[y];Q=x.length}}else{if(R&&!I){if(!J){L=x.indexOfKey(P?G:A)}M=x.getSortFn();if(L!==-1){if(L&&M(D[L-1],D[L])>0){O=-1;Q=Ext.Array.binarySearch(D,y,0,L,M)}else{if(L<H&&M(D[L],D[L+1])>0){O=1;Q=Ext.Array.binarySearch(D,y,L+1,M)}}if(O){w=[y]}}}}z={item:y,key:A,index:Q,filterChanged:N,keyChanged:P,indexChanged:!!O,filtered:I,oldIndex:L,newIndex:Q,wasFiltered:E,meta:F};if(P){z.oldKey=G}if(K){z.modified=K}x.beginUpdate();x.notify("beforeitemchange",[z]);if(P){x.updateKey(y,G)}if(w||C){x.splice(Q,C,w)}if(O>0){z.newIndex--}else{if(O<0){z.oldIndex++}}x.notify(I?"filtereditemchange":"itemchange",[z]);x.endUpdate()}},remove:function(g){var h=this,f=h.decodeRemoveItems(arguments,0),e=h.length;h.splice(0,f);return e-h.length},removeAll:function(){var c=this,d=c.length;if(c.generation&&d){c.splice(0,d)}return c},removeAt:function(m,n){var l=this,s=l.length,p=Ext.Number,q=p.clipIndices(s,[m,(n===undefined)?1:n],p.Clip.COUNT),r=q[0],t=q[1]-r,k=(t===1)&&l.getAt(r),o;l.splice(r,t);o=l.length-s;return(k&&o)?k:o},removeByKey:function(d){var c=this.getByKey(d);if(!c||!this.remove(c)){return false}return c},replace:function(c){var d=this.indexOf(c);if(d===-1){this.add(c)}else{this.insert(d,c)}},splice:function(X,an,Z){var ao=this,av=ao.sorted&&ao.getAutoSort(),ab=ao.map,aj=ao.items,al=ao.length,af=(an instanceof Array)?ao.decodeRemoveItems(an):null,ae=!af,W=Ext.Number,au=W.clipIndices(al,[X,ae?an:0],W.Clip.COUNT),ar=au[0],ap=au[1],Q=ap-ar,ah=ao.decodeItems(arguments,2),R=ah?ah.length:0,Y,ad,ag,aw=ar,ax=ao.indices||((R||af)?ao.getIndices():null),ak=null,aq=Q?[ar]:null,at=null,ai=ao.getSource(),ay,U,T,n,aa,V,P,am,ac,S,i,k,ap;if(ai&&!ai.updating){if(ae){af=[];for(n=0;n<Q;++n){af.push(aj[ar+n])}}if(ar<al){n=ai.indexOf(aj[ar])}else{n=ai.length}ai.splice(n,af,ah);return ao}if(R){Y=ah;at=[];ad={};if(av){k=ao.getSorters();if(R>1){if(!Y.$cloned){ah=Y=Y.slice(0)}ao.sortData(Y)}}for(n=0;n<R;++n){am=ao.getKey(aa=ah[n]);if((P=ad[am])!==undefined){(i||(i={}))[P]=1}else{V=ax[am];if(V<ar||ap<=V){(aq||(aq=[])).push(V)}}ad[am]=n;at.push(am)}if(i){ac=at;Y=[];at=[];Y.$cloned=true;for(n=0;n<R;++n){if(!i[n]){aa=ah[n];Y.push(aa);at.push(ac[n])}}R=Y.length}ak={items:Y,keys:at}}for(n=af?af.length:0;n-->0;){am=ao.getKey(af[n]);if((V=ax[am])!==undefined){(aq||(aq=[])).push(V)}}if(!ak&&!aq){return ao}ao.beginUpdate();if(aq){ay=null;T=[];ag={};if(aq.length>1){aq.sort(Ext.Array.numericSortFn)}for(n=0,S=aq.length;n<S;++n){am=ao.getKey(aa=aj[V=aq[n]]);if(!(am in ab)){continue}delete ab[am];if(!ay||V>(ay.at+U.length)){T.push(ay={at:V,items:(U=[]),keys:(ac=[]),map:ag,next:ay,replacement:ak});if(ak){ak.replaced=ay}}U.push(ag[am]=aa);ac.push(am);if(V<aw){--aw}if(Q>1&&V===ar){--Q;aq[n--]=++ar}}if(ak){ak.at=aw}for(P=T.length;P-->0;){ay=T[P];n=ay.at;S=ay.items.length;if(n+S<al){ao.indices=ax=null}ao.length=al-=S;aj.splice(n,S);if(ax){ac=ay.keys;for(n=0;n<S;++n){delete ax[ac[n]]}}++ao.generation;ao.notify("remove",[ay])}}if(ak){if(av&&R>1&&al){ao.spliceMerge(Y,at)}else{if(av){if(R>1){aw=0;ao.indices=ax=null}else{aw=k.findInsertionIndex(ak.items[0],aj,ao.getSortFn())}}if(aw===al){ap=aw;for(n=Y.length-1;n>=0;--n){aj[ap+n]=Y[n]}ax=ao.indices;if(ax){for(n=0;n<R;++n){ax[at[n]]=aw+n}}}else{ao.indices=null;Ext.Array.insert(aj,aw,Y)}for(n=0;n<R;++n){ab[at[n]]=Y[n]}ao.length+=R;ak.at=aw;ak.atItem=aw===0?null:aj[aw-1];++ao.generation;ao.notify("add",[ak])}}ao.endUpdate();return ao},update:function(e,f){var h=this;h.beginUpdate();try{return e.call(f||h,h)}catch(g){throw g}finally{h.endUpdate()}},updateKey:function(h,l){var i=this,m=i.map,j=i.indices,n=i.getSource(),k;if(n&&!n.updating){n.updateKey(h,l)}else{if((k=i.getKey(h))!==l){if(m[l]===h&&!(k in m)){delete m[l];i.updating++;i.generation++;m[k]=h;if(j){j[k]=j[l];delete j[l]}i.notify("updatekey",[{item:h,newKey:k,oldKey:l}]);i.updating--}}}},findInsertIndex:function(k){var j=this.getSource(),i=j.items,g=j.indexOf(k)-1,l,h;while(g>-1){l=i[g];h=this.indexOf(l);if(h>-1){return h+1}--g}return 0},onCollectionAdd:function(x,w){var o=this,i=w.atItem,p=w.items,s=o.requestedIndex,q,r,v,t,n,u;if(!o.sorted){if(s!==undefined){r=s}else{if(i){r=o.indexOf(i);if(r===-1){r=o.findInsertIndex(p[0])}else{++r}}else{r=0}}}if(o.getAutoFilter()&&o.filtered){for(t=0,u=p.length;t<u;++t){n=p[t];if(o.isItemFiltered(n)){if(!v){v=p.slice(0,t)}if(!q){q=[]}q.push(n)}else{if(v){v.push(n)}}}}o.splice((r<0)?o.length:r,0,v||p);if(q){o.notify("filteradd",[q])}},onCollectionBeforeItemChange:function(c,d){this.onCollectionUpdateKey=null},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},onCollectionItemChange:function(c,d){delete this.onCollectionUpdateKey;this.itemChanged(d.item,d.modified,d.oldKey,d.meta)},onCollectionFilteredItemChange:null,onCollectionRefresh:function(r){var m=this,q={},k={},o,i,n,l,p;n=r.items;n=m.filtered&&m.getAutoFilter()?Ext.Array.filter(n,m.getFilterFn()):n.slice(0);if(m.sorted){m.sortData(n)}m.items=n;m.length=p=n.length;m.map=q;m.indices=k;for(o=0;o<p;++o){l=m.getKey(i=n[o]);q[l]=i;k[l]=o}m.notify("refresh")},onCollectionRemove:function(c,d){this.splice(0,d.items)},onCollectionUpdateKey:function(c,d){this.updateKey(d.item,d.oldKey)},_aggregators:{average:function(l,k,g,j,h){var i=g-k;return i&&this._aggregators.sum.call(this,l,k,g,j,h)/i},bounds:function(n,r,q,i,m){for(var k,l,p,o=r;o<q;++o){k=n[o];k=(m?k[m]:k)[i];if(!(k<l)){l=k}if(!(k>p)){p=k}}return[p,l]},count:function(b){return b.length},extremes:function(s,x,v,n,p){var r=null,w=null,t,i,q,u,o;for(t=x;t<v;++t){i=s[t];o=(p?i[p]:i)[n];if(!(o<q)){q=o;r=i}if(!(o>u)){u=o;w=i}}return[w,r]},max:function(j,i,k,h,l){var b=this._aggregators.bounds.call(this,j,i,k,h,l);return b[1]},maxItem:function(j,i,k,h,l){var b=this._aggregators.extremes.call(this,j,i,k,h,l);return b[1]},min:function(j,i,k,h,l){var b=this._aggregators.bounds.call(this,j,i,k,h,l);return b[0]},minItem:function(j,i,k,h,l){var b=this._aggregators.extremes.call(this,j,i,k,h,l);return b[0]},sum:function(p,m,i,k,j){for(var l,n=0,o=m;o<i;++o){l=p[o];l=(j?l[j]:l)[k];n+=l}return n}},_eventToMethodMap:{add:"onCollectionAdd",beforeitemchange:"onCollectionBeforeItemChange",beginupdate:"onCollectionBeginUpdate",endupdate:"onCollectionEndUpdate",itemchange:"onCollectionItemChange",filtereditemchange:"onCollectionFilteredItemChange",refresh:"onCollectionRefresh",remove:"onCollectionRemove",beforesort:"beforeCollectionSort",sort:"onCollectionSort",filter:"onCollectionFilter",filteradd:"onCollectionFilterAdd",updatekey:"onCollectionUpdateKey"},addObserver:function(e){var d=this,f=d.observers;if(!f){d.observers=f=[]}f.push(e);if(f.length>1){Ext.Array.sort(f,d.prioritySortFn)}},prioritySortFn:function(a,b){var g=a.observerPriority||0,h=b.observerPriority||0;return g-h},applyExtraKeys:function(l,i){var k=this,m=i||{},n,h,j;for(h in l){j=l[h];if(!j.isCollectionKey){n={collection:k};if(Ext.isString(j)){n.property=j}else{n=Ext.apply(n,j)}j=new Ext.util.CollectionKey(n)}else{j.setCollection(k)}m[h]=k[h]=j;j.name=h}return m},applyGrouper:function(b){if(b){b=this.getSorters().decodeSorter(b,"Ext.util.Grouper")}return b},decodeItems:function(m,n){var k=this,h=(n===undefined)?m:m[n],i,j,l;if(!h||!h.$cloned){i=m.length>n+1||!Ext.isIterable(h);if(i){h=Ext.Array.slice(m,n);if(h.length===1&&h[0]===undefined){h.length=0}}j=k.getDecoder();if(j){if(!i){h=h.slice(0);i=true}for(l=h.length;l-->0;){if((h[l]=j.call(k,h[l]))===false){h.splice(l,1)}}}if(i){h.$cloned=true}}return h},getIndices:function(){var k=this,j=k.indices,h=k.items,i=h.length,l,g;if(!j){k.indices=j={};++k.indexRebuilds;for(l=0;l<i;++l){g=k.getKey(h[l]);j[g]=l}}return j},notify:function(q,n){var m=this,r=m.observers,k=m._eventToMethodMap[q],l=0,p,s,t,o;n=n||[];if(r&&k){for(p=0,s=r.length;p<s;++p){t=(o=r[p])[k];if(t){if(!l++){n.unshift(m)}t.apply(o,n)}}}if(!m.hasListeners){return}if(m.hasListeners[q]){if(!l){n.unshift(m)}m.fireEventArgs(q,n)}},getFilterFn:function(){return this.getFilters().getFilterFn()},getFilters:function(c){var d=this._filters;if(!d&&c!==false){d=new Ext.util.FilterCollection();this.setFilters(d)}return d},isItemFiltered:function(b){return !this.getFilters().filterFn(b)},onFilterChange:function(j){var k=this,i=k.getSource(),l,g,h;if(!i){l=k.getExtraKeys();if(l){g={};for(h in l){g[h]=l[h].clone(k)}}i=new Ext.util.Collection({keyFn:k.getKey,extraKeys:g,rootProperty:k.getRootProperty()});if(k.length){i.add(k.items)}k.setSource(i);k.autoSource=i}else{if(i.length||k.length){k.onCollectionRefresh(i)}}k.notify("filter")},applyFilters:function(d,c){if(d==null||(d&&d.isFilterCollection)){return d}if(d){if(!c){c=this.getFilters()}c.splice(0,c.length,d)}return c},updateFilters:function(e,d){var f=this;if(d){d.un("endupdate","onEndUpdateFilters",f)}if(e){e.on({endupdate:"onEndUpdateFilters",scope:f,priority:f.$endUpdatePriority});e.$filterable=f}f.onEndUpdateFilters(e)},onEndUpdateFilters:function(h){var e=this,g=e.filtered,f=!!h&&(h.length>0);if(g||f){e.filtered=f;e.onFilterChange(h)}},getSortFn:function(){return this._sortFn||this.createSortFn()},getSorters:function(c){var d=this._sorters;if(!d&&c!==false){d=new Ext.util.SorterCollection();this.setSorters(d)}return d},onSortChange:function(){if(this.sorted){this.sortItems()}},sort:function(f,h,g){var e=this.getSorters();e.addSort.apply(e,arguments);return this},sortData:function(b){Ext.Array.sort(b,this.getSortFn());return b},sortItems:function(c){var d=this;if(d.sorted){c=d.getSortFn()}d.indices=null;d.notify("beforesort",[d.getSorters(false)]);if(d.length){Ext.Array.sort(d.items,c)}d.notify("sort")},sortBy:function(b){return this.sortItems(b)},findInsertionIndex:function(f,e,d){if(!e){e=this.items}if(!d){d=this.getSortFn()}return Ext.Array.binarySearch(e,f,d)},applySorters:function(d,c){if(d==null||(d&&d.isSorterCollection)){return d}if(d){if(!c){c=this.getSorters()}c.splice(0,c.length,d)}return c},createSortFn:function(){var h=this,f=h.getGrouper(),g=h.getSorters(false),e=g?g.getSortFn():null;if(!f){return e}return function(c,a){var b=f.sort(c,a);if(!b&&e){b=e(c,a)}return b}},updateGrouper:function(f){var j=this,g=j.getGroups(),h=j.getSorters(),i;j.onSorterChange();j.grouped=!!f;if(f){if(j.getTrackGroups()){if(!g){g=new Ext.util.GroupCollection({itemRoot:j.getRootProperty()});g.$groupable=j;j.setGroups(g)}g.setGrouper(f);i=true}}else{if(g){j.removeObserver(g);g.destroy()}j.setGroups(null)}if(!h.updating){j.onEndUpdateSorters(h)}if(i){g.onCollectionRefresh(j)}},updateSorters:function(e,d){var f=this;if(d){d.un("endupdate","onEndUpdateSorters",f)}if(e){e.on({endupdate:"onEndUpdateSorters",scope:f,priority:f.$endUpdatePriority});e.$sortable=f}f.onSorterChange();f.onEndUpdateSorters(e)},onSorterChange:function(){this._sortFn=null},onEndUpdateSorters:function(h){var e=this,g=e.sorted,f=(e.grouped&&e.getAutoGroup())||(h&&h.length>0);if(g||f){e.sorted=!!f;e.onSortChange(h)}},removeObserver:function(d){var c=this.observers;if(c){Ext.Array.remove(c,d)}},spliceMerge:function(B,t){var u=this,v=u.map,E=B.length,H=0,A=u.items,i=A.length,C=[],D=0,y=[],G=u.getSortFn(),z,I,x,F,w,J;u.items=y;for(J=0;J<E;J=I){F=B[J];for(;H<i;++H){if(G(F,w=A[H])<0){break}y.push(w)}if(H===i){C[D++]={at:y.length,itemAt:y[y.length-1],items:(z=[])};if(D>1){C[D-2].next=C[D-1]}for(;J<E;++J){z.push(F=B[J]);y.push(F)}break}C[D++]={at:y.length,itemAt:y[y.length-1],items:(z=[F])};if(D>1){C[D-2].next=C[D-1]}y.push(F);for(I=J+1;I<E;++I){if(G(F=B[I],w)>=0){break}y.push(F);z.push(F)}}for(;H<i;++H){y.push(A[H])}for(x=0;x<E;++x){v[t[x]]=B[x]}u.length=y.length;++u.generation;u.indices=null;for(x=0;x<D;++x){u.notify("add",[C[x]])}},getGroups:function(){return(arguments.callee.$previous||Ext.Base.prototype.getGroups).call(this)||null},updateAutoGroup:function(c){var d=this.getGroups();if(d){d.setAutoGroup(c)}this.onEndUpdateSorters(this._sorters)},updateGroups:function(d,c){if(c){this.removeObserver(c)}if(d){this.addObserver(d)}},updateSource:function(d,e){var f=this.autoSource;if(e){e.removeObserver(this);if(e===f){f.destroy();this.autoSource=null}}if(d){d.addObserver(this);if(d.length||this.length){this.onCollectionRefresh(d)}}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.util,"Collection"],function(){var b=this.prototype;b.removeAtKey=b.removeByKey;b.decodeRemoveItems=b.decodeItems;Ext.Object.each(b._aggregators,function(a){b[a]=function(f,g,h){return this.aggregate(f,a,g,h)};b[a+"ByGroup"]=function(d){return this.aggregateByGroup(d,a)}})}));(Ext.cmd.derive("Ext.util.ObjectTemplate",Ext.Base,{isObjectTemplate:true,excludeProperties:{},valueRe:/^[{][a-z\.]+[}]$/i,statics:{create:function(c,d){return c.isObjectTemplate?c:new Ext.util.ObjectTemplate(c,d)}},constructor:function(c,d){Ext.apply(this,d);this.template=c},apply:function(d){var c=this;delete c.apply;c.apply=c.compile(c.template);return c.apply(d)},privates:{compile:function(l){var k=this,h=k.excludeProperties,j,n,i,m;if(Ext.isString(l)){if(l.indexOf("{")<0){m=function(){return l}}else{if(k.valueRe.test(l)){l=l.substring(1,l.length-1).split(".");m=function(a){for(var c=a,b=0;c&&b<l.length;++b){c=c[l[b]]}return c}}else{l=new Ext.XTemplate(l);m=function(a){return l.apply(a)}}}}else{if(!l||Ext.isPrimitive(l)||Ext.isFunction(l)){m=function(){return l}}else{if(l instanceof Array){j=[];for(n=0,i=l.length;n<i;++n){j[n]=k.compile(l[n])}m=function(a){var c=[],b;for(b=0;b<i;++b){c[b]=j[b](a)}return c}}else{j={};for(n in l){if(!h[n]){j[n]=k.compile(l[n])}}m=function(a){var c={},b,d;for(b in l){d=h[b]?l[b]:j[b](a);if(d!==undefined){c[b]=d}}return c}}}}return m}}},1,0,0,0,0,0,[Ext.util,"ObjectTemplate"],0));(Ext.cmd.derive("Ext.data.schema.Role",Ext.Base,{isRole:true,left:true,owner:false,side:"left",isMany:false,defaultReaderType:"json",_internalReadOptions:{recordsOnly:true,asRoot:true},constructor:function(e,h){var g=this,f=h.extra;Ext.apply(g,h);if(f){delete f.type;Ext.apply(g,f);delete g.extra}g.association=e;if(e.owner===g.side){e.owner=g;g.owner=true}},processUpdate:function(){Ext.raise('Only the "many" for an association may be processed. "'+this.role+'" is not valid.')},processLoad:function(e,h,f,g){return f},checkMembership:Ext.emptyFn,adoptAssociated:function(d,f){var e=this.getAssociatedItem(d);if(e){f.adopt(e)}},createAssociationStore:function(s,n,t,m){var q=this,u=q.association,r=u.getFieldName(),p=u.isManyToMany,w=q.storeConfig,x=n.getId(),v={asynchronousLoad:false,model:q.cls,role:q,session:s,associatedEntity:n,disableMetaChangeEvent:true,pageSize:null,remoteFilter:true,trackRemoved:!s},o;if(p){v.filters=[{property:q.inverse.field,value:x,exactMatch:true}]}else{if(r){v.filters=[{property:r,value:x,exactMatch:true}];v.foreignKeyName=r}}if(w){Ext.apply(v,w)}o=Ext.Factory.store(v);q.onStoreCreate(o,s,x);if(r||(p&&s)){o.on({scope:q,add:"onAddToMany",remove:"onRemoveFromMany",clear:"onRemoveFromMany"})}if(t){o.loadData(t);o.complete=!!m}return o},onStoreCreate:Ext.emptyFn,getAssociatedStore:function(A,I,M,y,w){var i=this,C=i.getStoreName(),H=A[C],N=A.session,E=I&&I.reload,B=A.$source,G=false,L,K,z,x,D,F,J,v;if(!H){if(N){if(!y&&B){B=B[C];if(B&&!B.isLoading()){J=B;y=[];D=B.getData().items;for(z=0,x=D.length;z<x;++z){F=D[z];y.push(N.getRecord(F.self,F.id))}G=!!B.complete;L=true}}if(!L){v=!!y;y=i.findRecords(N,A,y,w);if(!v&&(!y||!y.length)){y=null}G=v}}else{G=!!(y&&y.length>0)}H=i.createAssociationStore(N,A,y,G);H.$source=J;if(!y&&(i.autoLoad||I)){E=true}A[C]=H}if(I){if(E||H.isLoading()){H.on("load",function(b,c,a,d){K=[b,d];M=M||I.scope||A;if(a){Ext.callback(I.success,M,K)}else{Ext.callback(I.failure,M,K)}K.push(a);Ext.callback(I,M,K);Ext.callback(I.callback,M,K)},null,{single:true})}else{K=[H,null];M=M||I.scope||A;Ext.callback(I.success,M,K);K.push(true);Ext.callback(I,M,K);Ext.callback(I.callback,M,K)}}if(E&&!H.isLoading()){H.load()}return H},getAssociatedItem:function(c){var d=this.isMany?this.getStoreName():this.getInstanceName();return c[d]||null},onDrop:Ext.emptyFn,getReaderRoot:function(){var b=this;return b.associationKey||(b.associationKey=b.association.schema.getNamer().readerRoot(b.role))},getReader:function(){var j=this,g=j.reader,i=j.cls,h=!j.associationKey,f=this.getReaderRoot();if(g&&!g.isReader){if(Ext.isString(g)){g={type:g}}Ext.applyIf(g,{model:i,rootProperty:f,useSimpleAccessors:h,type:j.defaultReaderType});g=j.reader=Ext.createByAlias("reader."+g.type,g)}return g},getInstanceName:function(){var b=this;return b.instanceName||(b.instanceName=b.association.schema.getNamer().instanceName(b.role))},getOldInstanceName:function(){return this.oldInstanceName||(this.oldInstanceName="$old"+this.getInstanceName())},getStoreName:function(){var b=this;return b.storeName||(b.storeName=b.association.schema.getNamer().storeName(b.role))},constructReader:function(n){var m=this,j=m.getReader(),l=m.cls,k=!m.associationKey,i=m.getReaderRoot(),p,o;if(!j){o=l.getProxy();if(o){p=o.getReader();j=new p.self();j.copyFrom(p);j.setRootProperty(i)}else{j=new n.self({model:l,useSimpleAccessors:k,rootProperty:i})}m.reader=j}return j},read:function(l,i,k,j){var h=this.constructReader(k),g=h.getRoot(i);if(g){return h.readRecords(g,j,this._internalReadOptions)}},getCallbackOptions:function(e,d,f){if(typeof e==="function"){e={callback:e,scope:d||f}}else{if(e){e=Ext.apply({},e);e.scope=d||e.scope||f}}return e},doGetFK:function(y,n,p){var s=this,o=s.cls,v=s.association.getFieldName(),q=s.getInstanceName(),r=y[q],z=n&&n.reload,w=r!==undefined&&!z,t=y.session,x,u;if(!w){if(t){x=y.get(v);if(x||x===0){w=t.peekRecord(o,x,true)&&!z;r=t.getRecord(o,x,false)}else{w=true;y[q]=r=null}}else{if(v){x=y.get(v);if(!x&&x!==0){w=true;y[q]=r=null}else{if(!r){r=o.createWithId(x)}}}else{w=true}}}else{if(r){w=!r.isLoading()}}if(w){if(n){u=[r,null];p=p||n.scope||y;Ext.callback(n.success,p,u);u.push(true);Ext.callback(n,p,u);Ext.callback(n.callback,p,u)}}else{y[q]=r;n=s.getCallbackOptions(n,p,y);r.load(n)}return r},doSetFK:function(z,r,n,o){var s=this,u=s.association.getFieldName(),q=s.getInstanceName(),v=z[q],x=s.inverse,w=x.setterName,t=z.session,p,y;if(r&&r.isEntity){if(v!==r){y=s.getOldInstanceName();z[y]=v;z[q]=r;if(v&&v.isEntity){v[x.getInstanceName()]=undefined}if(u){z.set(u,r.getId())}delete z[y];if(w){r[w](z)}}}else{p=(z.changingKey&&!x.isMany)||z.set(u,r);if(p&&v&&v.isEntity&&!v.isEqual(v.getId(),r)){z[q]=undefined;if(!x.isMany){v[x.getInstanceName()]=undefined}}}if(n){if(Ext.isFunction(n)){n={callback:n,scope:o||z}}return z.save(n)}}},1,0,0,0,0,0,[Ext.data.schema,"Role"],0));(Ext.cmd.derive("Ext.data.schema.Association",Ext.Base,{isOneToOne:false,isManyToOne:false,isManyToMany:false,owner:null,field:null,constructor:function(f){var h=this,g,e;Ext.apply(h,f);h.left=g=new h.Left(h,h.left);h.right=e=new h.Right(h,h.right);g.inverse=e;e.inverse=g},hasField:function(){return !!this.field},getFieldName:function(){var b=this.field;return b?b.name:""}},1,0,0,0,0,0,[Ext.data.schema,"Association"],0));(Ext.cmd.derive("Ext.data.schema.OneToOne",Ext.data.schema.Association,{isOneToOne:true,isToOne:true,kind:"one-to-one",Left:Ext.define(null,{extend:"Ext.data.schema.Role",onDrop:function(e,d){var f=this.getAssociatedItem(e);e[this.getInstanceName()]=null;if(f){f[this.inverse.getInstanceName()]=null}},createGetter:function(){var b=this;return function(){return b.doGet(this)}},createSetter:function(){var b=this;return function(a){return b.doSet(this,a)}},doGet:function(f){var e=this.getInstanceName(),h=f[e],g=f.session;if(!h&&g){}return h||null},doSet:function(g,h){var f=this.getInstanceName(),i=g[f],j=this.inverse.setterName;if(i!==h){g[f]=h;if(j){h[j](g)}}return i},read:function(i,m,h,l){var n=this,k=n.callParent([i,m,h,l]),j;if(k){j=k[0];if(j){j[n.inverse.getInstanceName()]=i;i[n.getInstanceName()]=j;delete i.data[n.role]}}}}),Right:Ext.define(null,{extend:"Ext.data.schema.Role",left:false,side:"right",createGetter:function(){var b=this;return function(a,d){return b.doGetFK(this,a,d)}},createSetter:function(){var b=this;return function(e,a,f){return b.doSetFK(this,e,a,f)}},onDrop:function(i,k){var g=this,l=g.association.field,h=g.getAssociatedItem(i),j;if(g.inverse.owner){if(k){j=i.get(l.name);if(j||j===0){h=k.getEntry(g.cls,j).record;if(h){h.drop()}}}else{if(h){h.drop()}}}if(l){i.set(l.name,null)}i[g.getInstanceName()]=null;if(h){h[g.inverse.getInstanceName()]=null}},onValueChange:function(k,l,m){var n=this,j=k[n.getOldInstanceName()]||n.getAssociatedItem(k),o=m||m===0,p=n.getInstanceName(),i=n.cls;k.changingKey=true;n.doSetFK(k,m);if(!o){k[p]=null}else{if(l&&i){k[p]=l.peekRecord(i,m)||undefined}}if(n.inverse.owner&&j){n.association.schema.queueKeyCheck(j,n)}k.changingKey=false},checkKeyForDrop:function(d){var c=this.inverse.getAssociatedItem(d);if(!c){d.drop()}},read:function(A,z,p,y){var v=this,r=v.callParent([A,z,p,y]),u,s,q,w,t,C,B,D,x;if(r){u=r[0];s=v.association.field;if(s){q=s.name}w=A.session;x=A.data;if(u){if(w){t=w.getRefs(u,this.inverse,true);D=(t&&t[A.id])||(x[q]===undefined)}else{D=true}if(D){if(s){B=x[q];C=u.id;if(B!==C){x[q]=C;if(w){w.updateReference(A,s,C,B)}}}u[v.inverse.getInstanceName()]=A;A[v.getInstanceName()]=u}delete x[v.role]}}}})},0,0,0,0,0,0,[Ext.data.schema,"OneToOne"],0));(Ext.cmd.derive("Ext.data.schema.ManyToOne",Ext.data.schema.Association,{isManyToOne:true,isToOne:true,kind:"many-to-one",Left:Ext.define(null,{extend:"Ext.data.schema.Role",isMany:true,onDrop:function(l,n){var m=this,i=m.getAssociatedItem(l),q,o,p,k,r;if(i){q=i.removeAll();if(q&&m.inverse.owner){for(p=0,o=q.length;p<o;++p){q[p].drop()}}i.destroy();l[m.getStoreName()]=null}else{if(n){q=n.getRefs(l,m);if(q){for(r in q){q[r].drop()}}}}},processUpdate:function(m,q){var l=this,o=l.inverse.cls,n=q.R,r,k,j,p;if(n){for(r in n){k=m.peekRecord(o,r);if(k){p=m.getEntityList(l.cls,n[r]);j=l.getAssociatedItem(k);if(j){j.loadData(p);j.complete=true}else{k[l.getterName](null,null,p)}}else{m.onInvalidAssociationEntity(o,r)}}}},findRecords:function(s,r,w,i){var t=w,q=s.getRefs(r,this,true),p=this.association.field,o=p.name,x,y,v,u,z;if(!r.phantom){t=[];if(q||i){if(w){z={};for(v=0,u=w.length;v<u;++v){x=w[v];y=x.id;if(q&&q[y]){t.push(x)}else{if(i&&x.data[o]===undefined){t.push(x);x.data[o]=r.id;s.updateReference(x,p,r.id,undefined)}}z[y]=true}}if(q){for(y in q){if(!z||!z[y]){t.push(q[y])}}}}}return t},processLoad:function(f,g,h,i){var j=h;if(i){j=this.findRecords(i,g,h,true)}this.onLoadMany(g,j,i);return j},adoptAssociated:function(g,i){var l=this.getAssociatedItem(g),j,k,h;if(l){l.setSession(i);j=l.getData().items;for(k=0,h=j.length;k<h;++k){i.adopt(j[k])}}},createGetter:function(){var b=this;return function(a,f,e){return b.getAssociatedStore(this,a,f,e,b,true)}},createSetter:null,onAddToMany:function(d,c){this.syncFK(c,d.getAssociatedEntity(),false)},onLoadMany:function(o,t,p){var i=this.inverse.getInstanceName(),w=o.getId(),n=this.association.field,r,q,u,v,s,x;if(n){for(r=0,q=t.length;r<q;++r){u=t[r];u[i]=o;if(n){x=n.name;s=u.data;v=s[x];if(v!==w){s[x]=w;if(p){p.updateReference(u,n,w,v)}}}}}},onRemoveFromMany:function(d,c){this.syncFK(c,d.getAssociatedEntity(),true)},read:function(n,t,i,r){var o=this,l=o.inverse.getInstanceName(),s=o.callParent([n,t,i,r]),m,p,q;if(s){m=n[o.getterName](null,null,s);delete n.data[o.role];s=m.getData().items;for(q=0,p=s.length;q<p;++q){s[q][l]=n}}},syncFK:function(t,o,n){var p=this.association.getFieldName(),r=this.inverse,s=r.setterName,i=r.getInstanceName(),q=t.length,w=o.getId(),x,u,v;while(q-->0){u=t[q];x=!u.isEqual(w,u.get(p));v=n?null:o;if(x!==n){u.changingKey=true;u[s](v);u.changingKey=false}else{u[i]=v}}}}),Right:Ext.define(null,{extend:"Ext.data.schema.Role",left:false,side:"right",onDrop:function(f,d){var e=this.association.field;if(e){f.set(e.name,null)}f[this.getInstanceName()]=null},createGetter:function(){var b=this;return function(a,d){return b.doGetFK(this,a,d)}},createSetter:function(){var b=this;return function(a,f,e){return b.doSetFK(this,a,f,e)}},checkMembership:function(h,g){var e=this.association.field,f;f=this.getSessionStore(h,g.get(e.name));if(f&&!f.contains(g)){f.add(g)}},onValueChange:function(y,u,A,B){var t=this,q=t.getInstanceName(),i=t.cls,z,p,r,x,w,s,v;if(!y.changingKey){z=A||A===0;if(!z){y[q]=null}if(u){r=t.getSessionStore(u,B);if(r){r.remove(y)}if(z){r=t.getSessionStore(u,A);if(r&&!r.isLoading()){r.add(y)}if(i){v=u.peekRecord(i,A)}y[q]=v||undefined}}else{p=y.joined;if(p){for(x=0,w=p.length;x<w;++x){r=p[x];if(r.isStore){s=r.getAssociatedEntity();if(s&&s.self===t.cls&&s.getId()===B){r.remove(y)}}}}}}if(t.owner&&A===null){t.association.schema.queueKeyCheck(y,t)}},checkKeyForDrop:function(c){var d=this.association.field;if(c.get(d.name)===null){c.drop()}},getSessionStore:function(h,e){var f=this.cls,g;if(f){g=h.peekRecord(f,e);if(g){return this.inverse.getAssociatedItem(g)}}},read:function(i,l,g,j){var k=this.callParent([i,l,g,j]),h;if(k){h=k[0];if(h){i[this.getInstanceName()]=h;delete i.data[this.role]}}}})},0,0,0,0,0,0,[Ext.data.schema,"ManyToOne"],0));(Ext.cmd.derive("Ext.data.schema.ManyToMany",Ext.data.schema.Association,{isManyToMany:true,isToMany:true,kind:"many-to-many",Left:Ext.define(null,{extend:"Ext.data.schema.Role",isMany:true,digitRe:/^\d+$/,findRecords:function(q,p,w){var o=q.getMatrixSlice(this.inverse,p.id),v=o.members,r=[],i=this.cls,z,t,s,y,u,x;if(w){z={};for(t=0,s=w.length;t<s;++t){x=w[t];y=x.id;u=v[y];if(!(u&&u[2]===-1)){r.push(x)}z[y]=true}}for(y in v){u=v[y];if(!z||!z[y]&&(u&&u[2]!==-1)){x=q.peekRecord(i,y);if(x){r.push(x)}}}return r},processLoad:function(f,g,h,i){var j=h;if(i){j=this.findRecords(i,g,h);this.onAddToMany(f,j,true)}return j},processUpdate:function(m,q){var l=this,o=l.inverse.cls,n=q.R,r,k,j,p;if(n){for(r in n){k=m.peekRecord(o,r);if(k){p=m.getEntityList(l.cls,n[r]);j=l.getAssociatedItem(k);if(j){j.loadData(p);j.complete=true}else{k[l.getterName](null,null,p)}}else{m.onInvalidAssociationEntity(o,r)}}}l.processMatrixBlock(m,q.C,1);l.processMatrixBlock(m,q.D,-1)},checkMembership:function(s,r){var q=s.getMatrix(this.association,true),t,w,v,o,n,z,x,u,y,p;if(!q){return}t=this.left?q.right:q.left;w=t.inverse.role.cls;v=this.inverse;n=t.slices;if(n){o=n[r.id];if(o){x=o.members;for(z in x){u=x[z];if(u[2]!==-1){y=s.peekRecord(w,z);if(y){p=v.getAssociatedItem(y);if(p){p.matrixUpdate=1;p.add(r);p.matrixUpdate=0}}}}}}},onStoreCreate:function(f,i,h){var j=this,g;if(i){g=i.getMatrixSlice(j.inverse,h);g.attach(f);g.notify=j.onMatrixUpdate;g.scope=j}},processMatrixBlock:function(l,m,n){var i=this.inverse,h=this.digitRe,k,j;if(m){for(j in m){if(h.test(j)){j=parseInt(j,10)}k=l.getMatrixSlice(i,j);k.update(m[j],n)}}},createGetter:function(){var b=this;return function(a,f,e){return b.getAssociatedStore(this,a,f,e,false)}},onAddToMany:function(e,f,d){if(!e.matrixUpdate){e.matrixUpdate=1;e.matrix.update(f,d===true?0:1);e.matrixUpdate=0}},onRemoveFromMany:function(c,d){if(!c.matrixUpdate){c.matrixUpdate=1;c.matrix.update(d,-1);c.matrixUpdate=0}},read:function(h,k,g,j){var l=this,i=l.callParent([h,k,g,j]);if(i){h[l.getterName](null,null,i);delete h.data[l.role]}},onMatrixUpdate:function(l,j,m){var i=l.store,h,k,n;if(i&&!i.loading&&!i.matrixUpdate){i.matrixUpdate=1;h=i.indexOfId(j);if(m<0){if(h>=0){i.remove([h])}}else{if(h<0){n=i.getSession().getEntry(this.type,j);k=n&&n.record;if(k){i.add(k)}}}i.matrixUpdate=0}},adoptAssociated:function(g,i){var k=this.getAssociatedItem(g),l,j,h;if(k){k.setSession(i);this.onStoreCreate(k,i,g.getId());l=k.getData().items;for(j=0,h=l.length;j<h;++j){i.adopt(l[j])}}}},function(){var b=this;Ext.ClassManager.onCreated(function(){Ext.data.schema.ManyToMany.prototype.Right=Ext.define(null,{extend:b,left:false,side:"right"})},null,"Ext.data.schema.ManyToMany")})},0,0,0,0,0,0,[Ext.data.schema,"ManyToMany"],0));(Ext.cmd.derive("Ext.util.Inflector",Ext.Base,{singleton:true,plurals:[[(/(quiz)$/i),"$1zes"],[(/^(ox)$/i),"$1en"],[(/([m|l])ouse$/i),"$1ice"],[(/(matr|vert|ind)ix|ex$/i),"$1ices"],[(/(x|ch|ss|sh)$/i),"$1es"],[(/([^aeiouy]|qu)y$/i),"$1ies"],[(/(hive)$/i),"$1s"],[(/(?:([^f])fe|([lr])f)$/i),"$1$2ves"],[(/sis$/i),"ses"],[(/([ti])um$/i),"$1a"],[(/(buffal|tomat|potat)o$/i),"$1oes"],[(/(bu)s$/i),"$1ses"],[(/(alias|status|sex)$/i),"$1es"],[(/(octop|vir)us$/i),"$1i"],[(/(ax|test)is$/i),"$1es"],[(/^(p)erson$/i),"$1eople"],[(/^(m)an$/i),"$1en"],[(/(.*)(child)(ren)?$/i),"$1$2ren"],[(/s$/i),"s"],[(/$/),"s"]],singulars:[[(/(address)$/i),"$1"],[(/(quiz)zes$/i),"$1"],[(/(matr)ices$/i),"$1ix"],[(/(vert|ind)ices$/i),"$1ex"],[(/^(ox)en/i),"$1"],[(/(alias|status)es$/i),"$1"],[(/(octop|vir)i$/i),"$1us"],[(/(cris|ax|test)es$/i),"$1is"],[(/(shoe)s$/i),"$1"],[(/(o)es$/i),"$1"],[(/(bus)es$/i),"$1"],[(/([m|l])ice$/i),"$1ouse"],[(/(x|ch|ss|sh)es$/i),"$1"],[(/(m)ovies$/i),"$1ovie"],[(/(s)eries$/i),"$1eries"],[(/([^aeiouy]|qu)ies$/i),"$1y"],[(/([lr])ves$/i),"$1f"],[(/(tive)s$/i),"$1"],[(/(hive)s$/i),"$1"],[(/([^f])ves$/i),"$1fe"],[(/(^analy)ses$/i),"$1sis"],[(/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/i),"$1$2sis"],[(/([ti])a$/i),"$1um"],[(/(n)ews$/i),"$1ews"],[(/(p)eople$/i),"$1erson"],[(/s$/i),""]],uncountable:["sheep","fish","series","species","money","rice","information","equipment","grass","mud","offspring","deer","means"],singular:function(c,d){this.singulars.unshift([c,d])},plural:function(c,d){this.plurals.unshift([c,d])},clearSingulars:function(){this.singulars=[]},clearPlurals:function(){this.plurals=[]},isTransnumeral:function(b){return Ext.Array.indexOf(this.uncountable,b)!=-1},pluralize:function(i){if(this.isTransnumeral(i)){return i}var j=this.plurals,k=j.length,h,l,g;for(g=0;g<k;g++){h=j[g];l=h[0];if(l==i||(l.test&&l.test(i))){return i.replace(l,h[1])}}return i},singularize:function(i){if(this.isTransnumeral(i)){return i}var j=this.singulars,k=j.length,h,l,g;for(g=0;g<k;g++){h=j[g];l=h[0];if(l==i||(l.test&&l.test(i))){return i.replace(l,h[1])}}return i},classify:function(b){return Ext.String.capitalize(this.singularize(b))},ordinalize:function(g){var e=parseInt(g,10),h=e%10,f=e%100;if(11<=f&&f<=13){return g+"th"}else{switch(h){case 1:return g+"st";case 2:return g+"nd";case 3:return g+"rd";default:return g+"th"}}}},0,0,0,0,0,0,[Ext.util,"Inflector"],function(){var c={alumnus:"alumni",cactus:"cacti",focus:"foci",nucleus:"nuclei",radius:"radii",stimulus:"stimuli",ellipsis:"ellipses",paralysis:"paralyses",oasis:"oases",appendix:"appendices",index:"indexes",beau:"beaux",bureau:"bureaux",tableau:"tableaux",woman:"women",child:"children",man:"men",corpus:"corpora",criterion:"criteria",curriculum:"curricula",genus:"genera",memorandum:"memoranda",phenomenon:"phenomena",foot:"feet",goose:"geese",tooth:"teeth",antenna:"antennae",formula:"formulae",nebula:"nebulae",vertebra:"vertebrae",vita:"vitae"},d;for(d in c){if(c.hasOwnProperty(d)){this.plural(d,c[d]);this.singular(c[d],d)}}}));(Ext.cmd.derive("Ext.data.schema.Namer",Ext.Base,{isNamer:true,capitalize:function(b){return Ext.String.capitalize(b)},fieldRole:function(c){var d=c.match(this.endsWithIdRe,"");if(d){c=c.substr(0,c.length-(d[1]||d[2]).length)}return this.apply("uncapitalize",c)},idField:function(b){return this.apply("uncapitalize,singularize",b)+"Id"},instanceName:function(b){return this.apply("underscore",b)},multiRole:function(b){return this.apply("undotted,uncapitalize,pluralize",b)},pluralize:function(b){return Ext.util.Inflector.pluralize(b)},readerRoot:function(b){return this.apply("uncapitalize",b)},singularize:function(b){return Ext.util.Inflector.singularize(b)},storeName:function(b){return this.apply("underscore",b)},uncapitalize:function(b){return Ext.String.uncapitalize(b)},underscore:function(b){return"_"+b},uniRole:function(b){return this.apply("undotted,uncapitalize,singularize",b)},undotted:function(d){if(d.indexOf(".")<0){return d}var f=d.split("."),e=f.length;while(e-->1){f[e]=this.apply("capitalize",f[e])}return f.join("")},getterName:function(c){var d=c.role;if(c&&c.isMany){return d}return"get"+this.apply("capitalize",d)},inverseFieldRole:function(l,k,n,i){var m=this,j=m.apply(k?"uniRole":"multiRole",l),o=m.apply("pluralize",n),p=m.apply("undotted,pluralize",i);if(o.toLowerCase()!==p.toLowerCase()){j=n+m.apply("capitalize",j)}return j},manyToMany:function(h,i,g){var j=this,f=j.apply("undotted,capitalize,singularize",i)+j.apply("undotted,capitalize,pluralize",g);if(h){f=j.apply("capitalize",h+f)}return f},manyToOne:function(g,e,f,h){return this.apply("capitalize,singularize",f)+this.apply("capitalize",e)},matrixRole:function(f,d){var e=this.apply(f?"multiRole,capitalize":"multiRole",d);return f?f+e:e},oneToOne:function(g,e,f,h){return this.apply("undotted,capitalize,singularize",f)+this.apply("capitalize",e)},setterName:function(b){return"set"+this.apply("capitalize",b.role)},endsWithIdRe:/(?:(_id)|[^A-Z](Id))$/,cache:{},apply:function(n,p){var k=this,q=k.cache,i=q[p]||(q[p]={}),l=i[n],m,o,r;if(!l){if(n.indexOf(",")<0){l=k[n](p)}else{o=(r=n.split(",")).length;l=p;for(m=0;m<o;++m){l=k.apply(r[m],l)}}i[n]=l}return l}},0,0,0,0,["namer.default"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.schema,"Namer"],0));(Ext.cmd.derive("Ext.data.schema.Schema",Ext.Base,{aliasPrefix:"schema.",isSchema:true,type:"default",statics:{instances:{},get:function(m){var k=this,n=k.instances,j="default",h=m&&Ext.isString(m),i,l;if(m){if(m.isSchema){return m}j=h?m:(m.id||j)}if(!(i=n[j])){n[j]=i=k.create(m);i.id=j}else{if(m&&!h){l=Ext.merge({},i.config);Ext.merge(l,m);i.setConfig(l);i.config=l}}return i},lookupEntity:function(h){var k=null,i=this.instances,l,g,j;if(h){if(h.isEntity){k=h.self}else{if(Ext.isFunction(h)){k=h}else{if(Ext.isString(h)){k=Ext.ClassManager.get(h);if(k&&(!k.prototype||!k.prototype.isEntity)){k=null}if(!k){for(g in i){j=i[g];l=j.getEntity(h);if(l){if(k){Ext.raise('Ambiguous entity name "'+h+'". Defined by schema "'+k.schema.type+'" and "'+g+'"')}k=l}}}if(!k){Ext.raise('No such Entity "'+h+'".')}}}}}return k}},assocCount:0,entityCount:0,config:{defaultIdentifier:null,keyCheckDelay:10,namer:"default",namespace:null,proxy:{type:"ajax",url:"{prefix}/{entityName}"},urlPrefix:""},onClassExtended:function(e,f){var d=f.alias;if(d&&!f.type){if(!Ext.isString(d)){d=d[0]}e.prototype.type=d.substring(this.prototype.aliasPrefix.length)}},constructor:function(b){this.initConfig(b);this.clear()},applyDefaultIdentifier:function(b){return b&&Ext.Factory.dataIdentifier(b)},applyNamer:function(c){var d=Ext.data.schema.Namer.create(c);d.schema=this;return d},applyNamespace:function(c){if(c){var d=c.length-1;if(c.charAt(d)!=="."){c+="."}}return c},applyProxy:function(b){return Ext.util.ObjectTemplate.create(b)},eachAssociation:function(g,h){var e=this.associations,f;for(f in e){if(e.hasOwnProperty(f)){if(g.call(h,f,e[f])===false){break}}}},eachEntity:function(h,e){var g=this.entities,f;for(f in g){if(g.hasOwnProperty(f)){if(h.call(e,f,g[f].cls)===false){break}}}},getAssociation:function(d){var c=this.associations[d];return c||null},getEntity:function(d){var c=this.entityClasses[d]||this.entities[d];return(c&&c.cls)||null},getEntityName:function(f){var g=this.getNamespace(),h,e;if(typeof f==="string"){e=f}else{e=f.$className||null}if(e){if(g){h=g.length;if(e.substring(0,h)!==g){return e}}if(h){e=e.substring(h)}}return e},hasAssociations:function(b){b=b.entityName||b;return !!this.associationEntityMap[b]},hasEntity:function(d){var c=this.getEntityName(d);return !!(this.entities[c]||this.entityClasses[c])},addMatrix:function(x,D,G,H,t){var s=this,z=s.getNamer(),v=s.associations,J=s.entities,E=H.type,u=t.type,F=H.field||z.apply("idField",E),B=t.field||z.apply("idField",u),I=H.role||z.matrixRole(G,E),y=t.role||z.matrixRole(G,u),w,C,A;C=J[E]||(J[E]={cls:null,name:E,associations:{}});A=J[u]||(J[u]={cls:null,name:u,associations:{}});++s.assocCount;v[D]=w=new Ext.data.schema.ManyToMany({name:D,schema:s,definedBy:x,left:{cls:C.cls,type:E,role:I,field:F,associationKey:H.associationKey},right:{cls:A.cls,type:u,role:y,field:B,associationKey:t.associationKey}});C.associations[w.right.role]=w.right;A.associations[w.left.role]=w.left;if(C.cls){s.associationEntityMap[C.cls.entityName]=true}if(A.cls){s.associationEntityMap[A.cls.entityName]=true}s.decorateModel(w)},addReference:function(x,N,z,M){var u=this,B=u.getNamer(),K=u.entities,w=u.associations,C=x.entityName,J=z.association,y=!!z.legacy,F=z.child,D=z.parent,A=z.role,v=z.type||D||F,E=z.inverse,G=Ext.isString(E)?{role:E}:E,H=G&&G.role,L,I;if(!A){if(y){A=B.apply("uncapitalize",v)}else{A=B.apply("fieldRole",N.name)}}if(!H){H=B.inverseFieldRole(C,M,A,v)}if(!J){if(M){J=B.oneToOne(x,H,v,A)}else{J=B.manyToOne(x,H,v,A)}}L=K[v]||(K[v]={cls:null,name:v,associations:{}});I=M?Ext.data.schema.OneToOne:Ext.data.schema.ManyToOne;J=new I({name:J,owner:F?"left":(D?"right":null),definedBy:x,schema:u,field:N,nullable:N?!!N.allowBlank:true,legacy:z.legacy,left:{cls:x,type:C,role:H,extra:G},right:{cls:L.cls,type:v,role:A,extra:z}});x.associations[A]=J.right;L.associations[H]=J.left;if(N){N.reference=J.right;x.references.push(N)}++u.assocCount;u.associationEntityMap[C]=true;if(L.cls){u.associationEntityMap[L.cls.entityName]=true}w[J.name]=J;if(J.right.cls){u.decorateModel(J)}},privates:{addEntity:function(s){var o=this,p=o.entities,m=s.entityName,i=p[m],q=s.fields,t,n,r,u,v;if(!i){p[m]=i={name:m,associations:{}}}else{t=i.associations;for(v in t){t[v].inverse.cls=s;o.associationEntityMap[m]=true;o.decorateModel(t[v].association)}}i.cls=s;s.prototype.associations=s.associations=i.associations;o.entityClasses[s.$className]=i;++o.entityCount;for(r=0,u=q.length;r<u;++r){n=q[r];if(n.reference){o.addReferenceDescr(s,n)}}},addMatrices:function(i,h){var j=this,g,k,l;if(Ext.isString(h)){j.addMatrixDescr(i,null,h)}else{if(h[0]){for(g=0,k=h.length;g<k;++g){j.addMatrixDescr(i,null,h[g])}}else{for(l in h){j.addMatrixDescr(i,l,h[l])}}}},addMatrixDescr:function(r,v,q){var p=this,n=r.entityName,s=p.associations,o=p.getNamer(),t=q.left,l=q.right,m,u;if(Ext.isString(q)){if(q.charAt(0)==="#"){t={type:n};l={type:q.substring(1)}}else{if(q.charAt(m=q.length-1)==="#"){t={type:q.substring(0,m)};l={type:n}}else{if(o.apply("multiRole",n)<o.apply("multiRole",q)){t={type:n};l={type:q}}else{t={type:q};l={type:n}}}}}else{u=q.relation;if(t||(!l&&o.apply("multiRole",n)<o.apply("multiRole",q.type))){if(!t||t===true){t={type:n}}else{t=Ext.apply({type:n},t)}l=q}else{if(!l||l===true){l={type:n}}else{l=Ext.apply({type:n},l)}t=q}}if(!v){v=o.manyToMany(u,t.type,l.type)}if(!(v in s)){p.addMatrix(r,v,u,t,l)}},addReferenceDescr:function(e,g){var f=this,h=g.$reference;if(Ext.isString(h)){h={type:h}}else{h=Ext.apply({},h)}if(h.legacy){if(h.single){f.addLegacySingle(e,h)}else{f.addLegacyHasMany(e,h)}}else{f.addReference(e,g,h,g.unique)}},addPending:function(g,j,h,f){var i=this.pending;if(!i[g]){i[g]=[]}i[g].push([j,h,f])},addLegacyBelongsTo:function(d,c){this.addLegacySingle(d,c)},addLegacyHasOne:function(d,c){this.addLegacySingle(d,c)},addLegacySingle:function(j,h){var f,g,i;h=this.constructLegacyAssociation(j,h);h.single=true;g=h.type;f=h.foreignKey||(g.toLowerCase()+"_id");i=j.getField(f);if(i){i.$reference=h}this.addReference(j,i,h,true)},addLegacyHasMany:function(u,p){var o=this,s=o.entities,v=o.pending,x=p.associationKey,m,w,n,q,r,t;p=this.constructLegacyAssociation(u,p);w=p.type;q=s[w];if(q&&q.cls){p.type=u.entityName;r=p.foreignKey||(p.type.toLowerCase()+"_id");m=q.cls;n=m.getField(r);p.inverse=p||{};t=p.name;if(t||x){if(t){p.inverse.role=t}if(x){p.inverse.associationKey=x}}if(n){n.$reference=p}o.addReference(m,n,p,false)}else{if(!v[w]){v[w]=[]}v[w].push([u,p])}},constructLegacyAssociation:function(d,f){if(Ext.isString(f)){f={model:f}}f.legacy=true;f.type=this.getEntityName(f.model);var e=f.associatedName||f.name;if(e){f.role=e}return f},afterLegacyAssociations:function(g){var i=this.pending,l=g.entityName,j=i[l],k,h;if(j){for(k=0,h=j.length;k<h;++k){this.addLegacyHasMany.apply(this,j[k])}delete i[l]}},clear:function(d){var e=this,f=e.timer;delete e.setConfig;if(f){window.clearTimeout(f);e.timer=null}e.associations={};e.associationEntityMap={};e.entities={};e.entityClasses={};e.pending={};e.assocCount=e.entityCount=0;if(d){e.setNamespace(null)}},constructProxy:function(g){var e=this,h=Ext.Object.chain(g),f=e.getProxy();h.schema=e;h.prefix=e.getUrlPrefix();return f.apply(h)},applyDecoration:function(j){var l=this,i=j.inverse.cls,k=l.getNamer(),n,h,m;if(i&&!j.decorated){j.decorated=true;m=i.prototype;if(!(n=j.getterName)){j.getterName=n=k.getterName(j)}m[n]=j.createGetter();if(j.createSetter){if(!(h=j.setterName)){j.setterName=h=k.setterName(j)}m[h]=j.createSetter()}}},decorateModel:function(b){this.applyDecoration(b.left);this.applyDecoration(b.right)},processKeyChecks:function(m){var k=this,h=k.keyCheckQueue,j=k.timer,i,n,l;if(j){window.clearTimeout(j);k.timer=null}if(!h){return}do{h=k.keyCheckQueue;k.keyCheckQueue=[];for(n=0,i=h.length;n<i;++n){l=h[n];l.role.checkKeyForDrop(l.record)}}while(m&&k.keyCheckQueue.length)},queueKeyCheck:function(g,h){var j=this,f=j.keyCheckQueue,i=j.timer;if(!f){j.keyCheckQueue=f=[]}f.push({record:g,role:h});if(!i){j.timer=i=Ext.Function.defer(j.processKeyChecks,j.getKeyCheckDelay(),j)}},rankEntities:function(){var j=this,i=j.entities,h=Ext.Object.getKeys(i),k=h.length,l,g;j.nextRank=1;h.sort();for(g=0;g<k;++g){l=i[h[g]].cls;if(!l.rank){j.rankEntity(l)}}},rankEntity:function(j){var f=j.associations,h,i,g;for(g in f){i=f[g];if(!i.left&&i.association.field){h=i.cls;if(!h.rank){this.rankEntity(h)}}}j.rank=this.nextRank++}}},1,0,0,0,["schema.default"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.schema,"Schema"],0));(Ext.cmd.derive("Ext.data.AbstractStore",Ext.Base,{factoryConfig:{defaultType:"store",type:"store"},$configPrefixed:false,$configStrict:false,config:{filters:null,autoDestroy:undefined,storeId:null,statefulFilters:false,sorters:null,remoteSort:{lazy:true,$value:false},remoteFilter:{lazy:true,$value:false},groupField:undefined,groupDir:"ASC",grouper:null,pageSize:25},currentPage:1,loading:false,isStore:true,updating:0,constructor:function(d){var f=this,e;f.isInitializing=true;f.mixins.observable.constructor.call(f,d);f.isInitializing=false;e=f.getStoreId();if(!e&&(d&&d.id)){f.setStoreId(e=d.id)}if(e){Ext.data.StoreManager.register(f)}},getCount:function(){return this.getData().getCount()},rangeCached:function(c,d){return this.getData().getCount()>=Math.max(c,d)},find:function(m,n,l,k,j,o){var p=!k,i=!!(p&&o);return this.getData().findIndex(m,n,l,p,i,!j)},findRecord:function(){var c=this,d=c.find.apply(c,arguments);return d!==-1?c.getAt(d):null},findExact:function(d,e,f){return this.getData().findIndexBy(function(a){return a.isEqual(a.get(d),e)},this,f)},findBy:function(d,e,f){return this.getData().findIndexBy(d,e,f)},getAt:function(b){return this.getData().getAt(b)||null},getRange:function(g,e,h){var f=this.getData().getRange(g,Ext.isNumber(e)?e+1:e);if(h&&h.callback){h.callback.call(h.scope||this,f,g,e,h)}return f},getFilters:function(c){var d=(arguments.callee.$previous||Ext.Base.prototype.getFilters).call(this);if(!d&&c!==false){this.setFilters([]);d=(arguments.callee.$previous||Ext.Base.prototype.getFilters).call(this)}return d},applyFilters:function(d,e){var f;if(!e){e=this.createFiltersCollection();f=true}e.add(d);if(f){this.onRemoteFilterSet(e,this.getRemoteFilter())}return e},getSorters:function(c){var d=(arguments.callee.$previous||Ext.Base.prototype.getSorters).call(this);if(!d&&c!==false){this.setSorters([]);d=(arguments.callee.$previous||Ext.Base.prototype.getSorters).call(this)}return d},applySorters:function(d,e){var f;if(!e){e=this.createSortersCollection();f=true}e.add(d);if(f){this.onRemoteSortSet(e,this.getRemoteSort())}return e},filter:function(d,f,e){if(Ext.isString(d)){d={property:d,value:f}}this.suppressNextFilter=!!e;this.getFilters().add(d);this.suppressNextFilter=false},removeFilter:function(f,g){var h=this,e=h.getFilters();h.suppressNextFilter=!!g;if(f instanceof Ext.util.Filter){e.remove(f)}else{e.removeByKey(f)}h.suppressNextFilter=false},updateRemoteSort:function(b){this.onRemoteSortSet(this.getSorters(false),b)},updateRemoteFilter:function(b){this.onRemoteFilterSet(this.getFilters(false),b)},addFilter:function(c,d){this.suppressNextFilter=!!d;this.getFilters().add(c);this.suppressNextFilter=false},filterBy:function(c,d){this.getFilters().add({filterFn:c,scope:d||this})},clearFilter:function(f){var d=this,e=d.getFilters(false);if(!e||e.getCount()===0){return}d.suppressNextFilter=!!f;e.removeAll();d.suppressNextFilter=false},isFiltered:function(){return this.getFilters().getCount()>0},isSorted:function(){var b=this.getSorters(false);return !!(b&&b.length>0)||this.isGrouped()},addFieldTransform:function(h){if(h.getTransform()){return}var i=h.getProperty(),j=this.getModel(),g,f;if(j){g=j.getField(i);f=g?g.getSortType():null}if(f&&f!==Ext.identityFn){h.setTransform(f)}},beginUpdate:function(){if(!this.updating++){this.fireEvent("beginupdate")}},endUpdate:function(){if(this.updating&&!--this.updating){this.fireEvent("endupdate");this.onEndUpdate()}},getState:function(){var l=this,k=[],m=l.getFilters(),h=l.getGrouper(),j,n,i;l.getSorters().each(function(a){k[k.length]=a.getState();n=true});if(l.statefulFilters&&l.saveStatefulFilters){n=true;j=[];m.each(function(a){j[j.length]=a.getState()})}if(h){n=true}if(n){i={};if(k.length){i.sorters=k}if(j){i.filters=j}if(h){i.grouper=h.getState()}}return i},applyState:function(h){var j=this,f=h.sorters,g=h.filters,i=h.grouper;if(f){j.getSorters().replaceAll(f)}if(g){j.saveStatefulFilters=true;j.getFilters().replaceAll(g)}if(i){j.setGrouper(i)}},hasPendingLoad:Ext.emptyFn,isLoaded:Ext.emptyFn,isLoading:Ext.emptyFn,destroy:function(){var b=this;if(b.getStoreId()){Ext.data.StoreManager.unregister(b)}b.callParent();b.onDestroy()},sort:function(h,e,g){var f=this;if(arguments.length===0){if(f.getRemoteSort()){f.load()}else{f.forceLocalSort()}}else{f.getSorters().addSort(h,e,g)}},onBeforeCollectionSort:function(d,c){if(c){this.fireEvent("beforesort",this,c.getRange())}},onSorterEndUpdate:function(){var d=this,c;c=d.getSorters(false);if(d.settingGroups||!c){return}c=c.getRange();if(c.length){if(d.getRemoteSort()){d.load({callback:function(){d.fireEvent("sort",d,c)}})}else{d.fireEvent("datachanged",d);d.fireEvent("refresh",d);d.fireEvent("sort",d,c)}}else{d.fireEvent("sort",d,c)}},onFilterEndUpdate:function(){var c=this,d=c.suppressNextFilter;if(c.getRemoteFilter()){c.currentPage=1;if(!d){c.load()}}else{if(!d){c.fireEvent("datachanged",c);c.fireEvent("refresh",c)}}if(c.trackStateChanges){c.saveStatefulFilters=true}c.fireEvent("filterchange",c,c.getFilters().getRange())},updateGroupField:function(b){if(b){this.setGrouper({property:b,direction:this.getGroupDir()})}else{this.setGrouper(null)}},getGrouper:function(){return this.getData().getGrouper()},group:function(g,i){var f=this,j=f.getSorters(false),h=g||(j&&j.length);if(g&&typeof g==="string"){g={property:g,direction:i||f.getGroupDir()}}f.settingGroups=true;f.getData().setGrouper(g);delete f.settingGroups;if(h){if(f.getRemoteSort()){f.load({scope:f,callback:f.fireGroupChange})}else{f.fireEvent("datachanged",f);f.fireEvent("refresh",f);f.fireGroupChange()}}else{f.fireGroupChange()}},fireGroupChange:function(){if(!this.destroyed){this.fireEvent("groupchange",this,this.getGrouper())}},clearGrouping:function(){this.group(null)},getGroupField:function(){var d=this.getGrouper(),c="";if(d){c=d.getProperty()}return c},isGrouped:function(){return !!this.getGrouper()},applyGrouper:function(b){this.group(b);return this.getData().getGrouper()},getGroups:function(){return this.getData().getGroups()},onEndUpdate:Ext.emptyFn,privates:{loadsSynchronously:Ext.privateFn,onRemoteFilterSet:function(d,c){if(d){d[c?"on":"un"]("endupdate",this.onFilterEndUpdate,this)}},onRemoteSortSet:function(d,f){var e=this;if(d){d[f?"on":"un"]("endupdate",e.onSorterEndUpdate,e);e.getData()[f?"un":"on"]("beforesort",e.onBeforeCollectionSort,e)}}},deprecated:{5:{methods:{destroyStore:function(){this.destroy()}}}}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable],[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data,"AbstractStore"],0));(Ext.cmd.derive("Ext.data.Error",Ext.Base,{isError:true,$configPrefixed:false,config:{field:null,message:""},constructor:function(b){this.initConfig(b);this.msg=this.message}},1,0,0,0,0,0,[Ext.data,"Error"],0));(Ext.cmd.derive("Ext.data.ErrorCollection",Ext.util.MixedCollection,{alternateClassName:"Ext.data.Errors",init:function(s){var p=this,r=s.fields,u=s.data,n,o,i,t,q,v,w,x;for(t=0,q=r.length;t<q;++t){o=r[t];x=o.name;w=u[x];if(o.validate&&!o.validate.$nullFn){n=p.length;v=o.validate(w,null,p,s);if(n===p.length&&v!==true){p.add(x,v)}}}return p},add:function(g,k){var l=this,h=Ext.data.field.Field.defaultInvalidMessage,i=g,j;if(Ext.isString(g)){i=new Ext.data.Error({field:g,message:k||h})}else{if(!(i.isError)){i=new Ext.data.Error({field:i.field||i.name,message:i.error||i.message||i.msg||h})}g=i.field}j=l.get(g);if(j){if(Ext.isArray(j)){j.push(i);return j}l.removeAtKey(g);i=[j,i];i.field=g;i=[i]}return Ext.util.MixedCollection.prototype.add.call(this,i)},getKey:function(b){return b.field},isValid:function(){return this.length===0},getByField:function(c){var d=this.get(c);if(d&&!Ext.isArray(d)){d=[d]}return d||[]}},0,0,0,0,0,0,[Ext.data,"ErrorCollection",Ext.data,"Errors"],0));(Ext.cmd.derive("Ext.data.operation.Operation",Ext.Base,{alternateClassName:"Ext.data.Operation",isOperation:true,config:{synchronous:false,url:"",params:undefined,callback:undefined,scope:undefined,resultSet:null,response:null,request:null,records:null,id:undefined,proxy:null,batch:null,recordCreator:null,internalCallback:null,internalScope:null},order:0,foreignKeyDirection:1,started:false,running:false,complete:false,success:undefined,exception:false,error:undefined,idPrefix:"ext-operation-",constructor:function(d){var c=d&&d.scope;this.initConfig(d);if(d){d.scope=c}if(c){this.setScope(c);this.initialConfig.scope=c}this._internalId=Ext.id(this,this.idPrefix)},getAction:function(){return this.action},execute:function(){var c=this,d;delete c.error;delete c.success;c.complete=c.exception=false;c.setStarted();c.request=d=c.doExecute();if(d){d.setOperation(c)}return d},doExecute:Ext.emptyFn,abort:function(){var c=this,d=c.request;if(c.running&&d){c.getProxy().abort(d);c.request=null}},process:function(f,i,g,h){var j=this;h=h!==false;j.setResponse(g);j.setResultSet(f);if(f.getSuccess()){j.doProcess(f,i,g);j.setSuccessful(h)}else{if(h){j.setException(f.getMessage())}}},_commitSetOptions:{convert:true,commit:true},doProcess:function(q,w,x){var s=this,y=s._commitSetOptions,B=s.getRecords(),z=B.length,p=B[0].clientIdProperty,i=q.getRecords(),t=i?i.length:0,r,u,A,v;if(t&&p){r=Ext.Array.toValueMap(B,"id");for(v=0;v<t;++v){u=i[v];A=r[u[p]];if(A){delete r[A.id];delete u[p];A.set(u,y)}}for(v in r){r[v].commit()}}else{for(v=0;v<z;++v){A=B[v];if(t===0||!(u=i[v])){A.commit()}else{A.set(u,y)}}}},setStarted:function(){this.started=this.running=true},setCompleted:function(){var c=this,d=c.getProxy();c.complete=true;c.running=false;c.triggerCallbacks();if(d){d.completeOperation(c)}},setSuccessful:function(b){this.success=true;if(b){this.setCompleted()}},setException:function(d){var c=this;c.exception=true;c.success=c.running=false;c.error=d;c.setCompleted()},triggerCallbacks:function(){var d=this,c=d.getInternalCallback();if(c){c.call(d.getInternalScope()||d,d);d.setInternalCallback(null);d.setInternalScope(null)}if(c=d.getCallback()){c.call(d.getScope()||d,d.getRecords(),d,d.wasSuccessful());d.setCallback(null);d.setScope(null)}},hasException:function(){return this.exception},getError:function(){return this.error},getRecords:function(){var b;return this._records||((b=this.getResultSet())?b.getRecords():null)},isStarted:function(){return this.started},isRunning:function(){return this.running},isComplete:function(){return this.complete},wasSuccessful:function(){return this.isComplete()&&this.success===true},allowWrite:function(){return true}},1,0,0,0,0,0,[Ext.data.operation,"Operation",Ext.data,"Operation"],0));(Ext.cmd.derive("Ext.data.operation.Create",Ext.data.operation.Operation,{action:"create",isCreateOperation:true,order:10,config:{recordCreator:Ext.identityFn},doExecute:function(){return this.getProxy().create(this)}},0,0,0,0,["data.operation.create"],0,[Ext.data.operation,"Create"],0));(Ext.cmd.derive("Ext.data.operation.Destroy",Ext.data.operation.Operation,{action:"destroy",isDestroyOperation:true,order:30,foreignKeyDirection:-1,doProcess:function(){var f=this.getRecords(),e=f.length,d;for(d=0;d<e;++d){f[d].setErased()}},doExecute:function(){return this.getProxy().erase(this)},getRecordData:function(g,j){var h={},i=g.idField,f=this.getNameProperty()||"name";h[i[f]]=g.id;return h}},0,0,0,0,["data.operation.destroy"],0,[Ext.data.operation,"Destroy"],0));(Ext.cmd.derive("Ext.data.operation.Read",Ext.data.operation.Operation,{action:"read",isReadOperation:true,config:{filters:undefined,sorters:undefined,grouper:undefined,start:undefined,limit:undefined,page:undefined,addRecords:false},doExecute:function(){return this.getProxy().read(this)},doProcess:Ext.emptyFn,allowWrite:function(){return false}},0,0,0,0,["data.operation.read"],0,[Ext.data.operation,"Read"],0));(Ext.cmd.derive("Ext.data.operation.Update",Ext.data.operation.Operation,{action:"update",isUpdateOperation:true,order:20,config:{recordCreator:Ext.identityFn},doExecute:function(){return this.getProxy().update(this)}},0,0,0,0,["data.operation.update"],0,[Ext.data.operation,"Update"],0));(Ext.cmd.derive("Ext.data.SortTypes",Ext.Base,{singleton:true,none:Ext.identityFn,stripCommasRe:/,/g,stripTagsRE:/<\/?[^>]+>/gi,asText:function(b){return(b!=null)?String(b).replace(this.stripTagsRe,""):"\x00"},asUCText:function(b){return(b!=null)?String(b).toUpperCase().replace(this.stripTagsRe,""):"\x00"},asUCString:function(b){return(b!=null)?String(b).toUpperCase():"\x00"},asDate:function(b){if(!b){return 0}if(Ext.isDate(b)){return b.getTime()}return Date.parse(String(b))},asFloat:function(d){var c=parseFloat(String(d).replace(this.stripCommasRe,""));return isNaN(c)?0:c},asInt:function(d){var c=parseInt(String(d).replace(this.stripCommasRe,""),10);return isNaN(c)?0:c}},0,0,0,0,0,0,[Ext.data,"SortTypes"],0));(Ext.cmd.derive("Ext.data.validator.Validator",Ext.Base,{isValidator:true,type:"base",statics:{all:{},register:function(d,e){var f=this.all;f[d.toUpperCase()]=f[d.toLowerCase()]=f[d]=e.prototype}},onClassExtended:function(d,c){if(c.type){Ext.data.validator.Validator.register(c.type,d)}},constructor:function(b){if(typeof b==="function"){this.fnOnly=true;this.validate=b}else{this.initConfig(b)}},validate:function(){return true},clone:function(){var b=this;if(b.fnOnly){return new Ext.data.validator.Validator(b.validate)}return new b.self(b.getCurrentConfig())}},1,0,0,0,["data.validator.base"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.validator,"Validator"],function(){this.register(this.prototype.type,this)}));(Ext.cmd.derive("Ext.data.field.Field",Ext.Base,{alternateClassName:"Ext.data.Field",aliasPrefix:"data.field.",type:"auto",factoryConfig:{defaultProperty:"name"},isDataField:true,isField:true,allowBlank:true,allowNull:false,critical:false,defaultInvalidMessage:"This field is invalid",defaultValue:undefined,definedBy:null,depends:null,dependents:null,mapping:null,name:null,ordinal:undefined,persist:null,reference:null,unique:false,rank:null,stripRe:/[\$,%]/g,calculated:false,evil:false,identifier:false,onClassExtended:function(l,j){var i=j.sortType,k=l.prototype,h=k.validators,g=j.validators;if(i&&Ext.isString(i)){k.sortType=Ext.data.SortTypes[i]}if(g){if(!Ext.isArray(g)){g=[g]}delete j.validators;if(h){g=h.concat(g)}k.validators=g}},argumentNamesRe:/^function\s*\(\s*([^,\)\s]+)/,calculateRe:/[^\.a-z0-9_]([a-z_][a-z_0-9]*)\.([a-z_][a-z_0-9]*)/gi,constructor:function(y){var r=this,p=r.calculateRe,v,o,q,u,z,B,t,A,s,x,w;if(y){if(Ext.isString(y)){r.name=y}else{w=y.validators;if(w){delete y.validators;r.instanceValidators=w}Ext.apply(r,y)}}if(!r.allowNull){r.allowNull=!!r.reference}v=r.calculate;z=r.depends;if(v){r.convert=r.doCalculate;if(!z){if(!(z=v.$depends)){B={};s=v.toString();v.$depends=z=[];t=r.argumentNamesRe.exec(s);A=t?t[1]:"data";while((t=p.exec(s))){if(A===t[1]&&!B[x=t[2]]){B[x]=1;z.push(x)}}}r.depends=z}}q=r.defaultValue;if(r.convert){r.calculated=o=r.convert.length>1;r.evil=o&&!z}if(r.persist===null){r.persist=!v}u=r.sortType;if(!r.sortType){r.sortType=Ext.data.SortTypes.none}else{if(Ext.isString(u)){r.sortType=Ext.data.SortTypes[u]}}if(z&&typeof z==="string"){r.depends=[z]}r.cloneDefaultValue=q!==undefined&&(Ext.isDate(q)||Ext.isArray(q)||Ext.isObject(q))},setModelValidators:function(b){this._validators=null;this.modelValidators=b},compileValidators:function(){var b=this;b._validators=[];b.constructValidators(b.validators);b.constructValidators(b.modelValidators);b.constructValidators(b.instanceValidators)},constructValidators:function(g){if(g){if(!(g instanceof Array)){g=[g]}var h=g.length,j=this._validators,f,i;for(f=0;f<h;++f){i=g[f];if(i.fn){i=i.fn}j.push(Ext.Factory.dataValidator(i))}}},collate:function(j,f){var i=this,g=j,h=f;if(i.sortType){g=i.sortType(g);h=i.sortType(h)}return(g===h)?0:((g<h)?-1:1)},compare:function(c,d){return(c===d)?0:((c<d)?-1:1)},isEqual:function(c,d){return this.compare(c,d)===0},convert:null,serialize:null,validate:function(m,r,n,q){var o=this,p="",i,v,t,u,s;if(!o._validators){o.compileValidators()}t=o._validators;for(s=0,u=t.length;s<u;++s){v=t[s];i=v.validate(m,q);if(i!==true){i=i||o.defaultInvalidMessage;if(n){n.add(o.name,i);p=p||i}else{if(r){if(p){p+=r}p+=i}else{p=i;break}}}}return p||true},doCalculate:function(d,c){return c?this.calculate(c.data):d},getName:function(){return this.name},getAllowBlank:function(){return this.allowBlank},getAllowNull:function(){return this.allowNull},getConvert:function(){return this.convert},getDefaultValue:function(){return this.defaultValue},getDepends:function(){return this.depends},getMapping:function(){return this.mapping},hasMapping:function(){var b=this.mapping;return !!(b||b===0)},getPersist:function(){return this.persist},getSortType:function(){return this.sortType},getType:function(){return"auto"},deprecated:{5.1:{methods:{getSortDir:function(){return this.sortDir}}}}},1,0,0,0,["data.field.auto"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.field,"Field",Ext.data,"Field"],0));(Ext.cmd.derive("Ext.data.field.Boolean",Ext.data.field.Field,{isBooleanField:true,trueRe:/^\s*(?:true|yes|on|1)\s*$/i,convert:function(b){if(typeof b==="boolean"){return b}if(this.allowNull&&(b===undefined||b===null||b==="")){return null}return this.trueRe.test(String(b))},getType:function(){return"bool"}},0,0,0,0,["data.field.bool","data.field.boolean"],0,[Ext.data.field,"Boolean"],0));(Ext.cmd.derive("Ext.data.field.Date",Ext.data.field.Field,{sortType:"asDate",isDateField:true,dateFormat:null,dateReadFormat:null,dateWriteFormat:null,compare:function(f,h){var i=f instanceof Date,j=h instanceof Date,g;if(j&&i){g=f.getTime()-h.getTime();if(g===0){g=0}else{g=g<0?-1:1}}else{if(i===j){g=0}else{g=i?1:-1}}return g},convert:function(f){if(!f){return null}if(f instanceof Date){return f}var e=this.dateReadFormat||this.dateFormat,d;if(e){return Ext.Date.parse(f,e)}d=Date.parse(f);return d?new Date(d):null},serialize:function(d){var e=null,f;if(Ext.isDate(d)){f=this.getDateWriteFormat();e=f?Ext.Date.format(d,f):d}return e},getDateFormat:function(){return this.dateFormat},getDateReadFormat:function(){return this.dateReadFormat},getDateWriteFormat:function(){var b=this;if(b.hasOwnProperty("dateWriteFormat")){return b.dateWriteFormat}if(b.hasOwnProperty("dateFormat")){return b.dateFormat}return b.dateWriteFormat||b.dateFormat||"timestamp"},getType:function(){return"date"}},0,0,0,0,["data.field.date"],0,[Ext.data.field,"Date"],0));(Ext.cmd.derive("Ext.data.field.Integer",Ext.data.field.Field,{isNumeric:true,isIntegerField:true,numericType:"int",convert:function(e){if(typeof e==="number"){return this.getNumber(e)}var g=e===undefined||e===null||e==="",f=this.allowNull,h;if(g){h=f?null:0}else{h=this.parse(e);if(f&&isNaN(h)){h=null}}return h},getNumber:function(b){return parseInt(b,10)},getType:function(){return this.numericType},parse:function(b){return parseInt(String(b).replace(this.stripRe,""),10)},sortType:function(b){if(b==null){b=Infinity}return b}},0,0,0,0,["data.field.int","data.field.integer"],0,[Ext.data.field,"Integer"],0));(Ext.cmd.derive("Ext.data.field.Number",Ext.data.field.Integer,{isIntegerField:false,isNumberField:true,numericType:"float",getNumber:Ext.identityFn,parse:function(b){return parseFloat(String(b).replace(this.stripRe,""))}},0,0,0,0,["data.field.float","data.field.number"],0,[Ext.data.field,"Number"],0));(Ext.cmd.derive("Ext.data.field.String",Ext.data.field.Field,{sortType:"asUCString",isStringField:true,convert:function(c){var d=this.allowNull?null:"";return(c===undefined||c===null)?d:String(c)},getType:function(){return"string"}},0,0,0,0,["data.field.string"],0,[Ext.data.field,"String"],0));(Ext.cmd.derive("Ext.data.identifier.Generator",Ext.Base,{"abstract":true,factoryConfig:{defaultType:"sequential"},isGenerator:true,config:{id:null},constructor:function(e){var h=this,f,g;h.initConfig(e);g=h.getId();if(g){f=(e&&e.cache)||Ext.data.identifier.Generator.all;f[g]=h}},privates:{clone:function(c){var d=this.getInitialConfig();d=c?Ext.apply({},c,d):d;return new this.self(d)},statics:{all:{}}}},1,0,0,0,["data.identifier.default"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.identifier,"Generator"],function(){var f=this,e=Ext.Factory,d=e.dataIdentifier;e.dataIdentifier=function(c){var a=Ext.isString(c)?c:(c&&c.id),b=a&&((c&&c.cache)||f.all)[a];return b||d(c)}}));(Ext.cmd.derive("Ext.data.identifier.Sequential",Ext.data.identifier.Generator,{config:{increment:1,prefix:null,seed:1},generate:function(){var d=this,e=d._seed,f=d._prefix;d._seed+=d._increment;return(f!==null)?f+e:e}},0,0,0,0,["data.identifier.sequential"],0,[Ext.data.identifier,"Sequential"],0));(Ext.cmd.derive("Ext.data.Model",Ext.Base,{alternateClassName:"Ext.data.Record",isEntity:true,isModel:true,validIdRe:null,erasing:false,observableType:"record",constructor:function(z,t){var s=this,i=s.self,u=i.identifier,B=Ext.data.Model,r=B.identifier,q=s.idField.name,v,D,C,w,x,A,y;s.data=s.data=z||(z={});s.session=t||null;s.internalId=w=r.generate();if((v=z) instanceof Array){s.data=z={};y=s.getFields();x=Math.min(y.length,v.length);for(A=0;A<x;++A){z[y[A].name]=v[A]}}if(!(C=i.initializeFn)){i.initializeFn=C=B.makeInitializeFn(i)}if(!C.$nullFn){i.initializeFn(s)}if(!(s.id=D=z[q])&&D!==0){if(t){u=t.getIdentifier(i);D=u.generate()}else{if(r===u){D=w}else{D=u.generate()}}z[q]=s.id=D;s.phantom=true}if(t){t.add(s)}if(s.init&&Ext.isFunction(s.init)){s.init()}},editing:false,dirty:false,session:null,dropped:false,erased:false,clientIdProperty:null,evented:false,phantom:false,idProperty:"id",manyToMany:null,identifier:null,previousValues:undefined,proxy:undefined,schema:"default",versionProperty:null,generation:1,validationSeparator:null,convertOnSet:true,beginEdit:function(){var f=this,d=f.modified,e=f.previousValues;if(!f.editing){f.editing=true;f.editMemento={dirty:f.dirty,data:Ext.apply({},f.data),generation:f.generation,modified:d&&Ext.apply({},d),previousValues:e&&Ext.apply({},e)}}},cancelEdit:function(){var c=this,d=c.editMemento;if(d){c.editing=false;Ext.apply(c,d);c.editMemento=null}},endEdit:function(e,g){var h=this,f=h.editMemento;if(f){h.editing=false;h.editMemento=null;h.previousValues=f.previousValues;if(!e){if(!g){g=h.getModifiedFieldNames(f.data)}if(h.dirty||(g&&g.length)){h.callJoined("afterEdit",[g])}}}},getField:function(b){return this.self.getField(b)},getFields:function(){return this.self.getFields()},getFieldsMap:function(){return this.fieldsMap},getIdProperty:function(){return this.idProperty},getId:function(){return this.id},getObservableId:function(){return this.internalId},setId:function(c,d){this.set(this.idProperty,c,d)},getPrevious:function(c){var d=this.previousValues;return d&&d[c]},isModified:function(c){var d=this.modified;return !!(d&&d.hasOwnProperty(c))},getModified:function(c){var d;if(this.isModified(c)){d=this.modified[c]}return d},get:function(b){return this.data[b]},_singleProp:{},_rejectOptions:{convert:false,silent:true},set:function(am,T,al){var Q=this,ao=Q.self,P=Q.data,af=Q.modified,R=Q.previousValues,ar=Q.session,S=Ext.isString(am),aq=(S?al:T),ab=aq?aq.convert!==false:Q.convertOnSet,aj=Q.fieldsMap,X=aq&&aq.silent,Z=aq&&aq.commit,ad=!(aq&&aq.refs===false)&&ar,ae=!(aq&&aq.dirty===false&&!Z),ac=null,W,ap,Y,L,N,M,ak,ag,O,aa,K=0,V,U,ah,ai,i,an;if(S){an=Q._singleProp;an[am]=T}else{an=am}if(!(ah=ao.rankedFields)){ah=ao.rankFields()}V=ah.length;do{for(N in an){i=an[N];W=P[N];ak=Q;ap=aj[N];if(ap){if(ab&&ap.convert){i=ap.convert(i,Q)}ak=ap;ai=ap.reference}else{ai=null}if(ak.isEqual(W,i)){continue}P[N]=i;(ac||(ac=[])).push(N);(R||(Q.previousValues=R={}))[N]=W;if(ai&&ai.cls){if(ad){ar.updateReference(Q,ap,i,W)}ai.onValueChange(Q,ar,i,W)}aa=(O=ap&&ap.dependents)&&O.length;while(aa-->0){(ag=O[aa]).dirty=true;K=K?Math.min(K,ag.rank):ag.rank}if(!ap||ap.persist){if(af&&af.hasOwnProperty(N)){if(!ae||ak.isEqual(af[N],i)){delete af[N];Q.dirty=-1}}else{if(ae){if(!af){Q.modified=af={}}Q.dirty=true;af[N]=W}}}if(N===Q.idField.name){Y=true;M=W;U=i}}if(!K){break}ap=ah[K-1];ap.dirty=false;if(S){delete an[am]}else{an=Q._singleProp;S=true}am=ap.name;an[am]=P[am];ab=true;for(;K<V;++K){if(ah[K].dirty){break}}if(K<V){++K}else{K=0}}while(1);if(Q.dirty<0){Q.dirty=false;for(L in af){if(af.hasOwnProperty(L)){Q.dirty=true;break}}}if(S){delete an[am]}++Q.generation;if(Y){Q.id=U;Q.callJoined("onIdChanged",[M,U])}if(Z){Q.commit(X,ac)}else{if(!X&&!Q.editing&&ac){Q.callJoined("afterEdit",[ac])}}return ac},reject:function(e){var f=this,d=f.modified;if(d){f.set(d,f._rejectOptions)}f.dropped=false;f.clearState();if(!e){f.callJoined("afterReject")}},commit:function(g,k){var l=this,i=l.versionProperty,j=l.data,h;l.clearState();if(i&&!l.phantom&&!isNaN(j[i])){++j[i]}l.phantom=false;if(l.dropped){l.erased=h=true}if(!g){if(h){l.callJoined("afterErase")}else{l.callJoined("afterCommit",[k])}}},clearState:function(){var b=this;b.dirty=b.editing=false;b.editMemento=b.modified=null},drop:function(f){var i=this,j=i.associations,h=i.session,g;if(i.erased||i.dropped){return}i.dropped=true;if(j&&f!==false){for(g in j){j[g].onDrop(i,h)}}i.callJoined("afterDrop");if(i.phantom){i.setErased()}},join:function(d){var e=this,f=e.joined;if(!f){f=e.joined=[d]}else{if(!f.length){f[0]=d}else{Ext.Array.include(f,d)}}if(d.isStore&&!e.store){e.store=d}},unjoin:function(j){var k=this,i=k.joined,h=i&&i.length,g=k.store,l;if(h===1&&i[0]===j){i.length=0}else{if(h){Ext.Array.remove(i,j)}}if(g===j){g=null;if(i){for(l=0,h=i.length;l<h;++l){j=i[l];if(j.isStore){g=j;break}}}k.store=g}},clone:function(g){var h=this,e=h.modified,f=h.copy(h.id,g);if(e){f.modified=Ext.apply({},e)}f.dirty=h.dirty;f.dropped=h.dropped;f.phantom=h.phantom;return f},copy:function(l,i){var k=this,j=Ext.apply({},k.data),g=k.idProperty,h=k.self;if(l||l===0){j[g]=l}else{if(l===null){delete j[g]}}return new h(j,i)},getProxy:function(){return this.self.getProxy()},getValidation:function(d){var f=this,e=f.validation;if(!e){f.validation=e=new Ext.data.Validation();e.attach(f)}if(d===true||(d!==false&&e.syncGeneration!==f.generation)){e.refresh(d)}return e},validate:function(){return new Ext.data.ErrorCollection().init(this)},isValid:function(){return this.getValidation().isValid()},toUrl:function(){var c=this.$className.split("."),d=c[c.length-1].toLowerCase();return d+"/"+this.getId()},erase:function(d){var c=this;c.erasing=true;c.drop();c.erasing=false;return c.save(d)},setErased:function(){this.erased=true;this.callJoined("afterErase")},getChanges:function(){return this.getData(this._getChangesOptions)},getCriticalFields:function(){var d=this.self,c=d.criticalFields;if(!c){d.rankFields();c=d.criticalFields}return c},getAssociatedData:function(i,r){var v=this,D=v.associations,t,z,s,w,C,E,x,A,B,F,y,u;i=i||{};v.$gathering=1;if(r){r=Ext.Object.chain(r)}for(B in D){A=D[B];s=A.getAssociatedItem(v);if(!s||s.$gathering){continue}if(s.isStore){s.$gathering=1;w=s.getData().items;E=w.length;C=[];for(z=0;z<E;++z){x=w[z];t=!x.$gathering;x.$gathering=1;if(r){u=r.associated;if(u===undefined){r.associated=t;y=true}else{if(!t){r.associated=false;y=true}}F=r}else{F=t?v._getAssociatedOptions:v._getNotAssociatedOptions}C.push(x.getData(F));if(y){r.associated=u;y=false}delete x.$gathering}delete s.$gathering}else{F=r||v._getAssociatedOptions;if(r&&r.associated===undefined){F.associated=true}C=s.getData(F)}i[B]=C}delete v.$gathering;return i},getData:function(n){var y=this,z={},H=(n===true)?y._getAssociatedOptions:(n||z),D=y.data,x=H.associated,u=H.changes,v=u&&H.critical,A=u?y.modified:D,B=y.fieldsMap,C=H.persist,s=H.serialize,F,w,E,G,t;if(A){for(G in A){t=D[G];w=B[G];if(w){if(C&&!w.persist){continue}if(s&&w.serialize){t=w.serialize(t,y)}}z[G]=t}}if(v){F=y.self.criticalFields||y.getCriticalFields();for(E=F.length;E-->0;){G=(w=F[E]).name;if(!(G in z)){t=D[G];if(s&&w.serialize){t=w.serialize(t,y)}z[G]=t}}}if(x){y.getAssociatedData(z,H)}return z},getTransientFields:function(){var d=this.self,c=d.transientFields;if(!c){d.rankFields();c=d.transientFields}return c},isLoading:function(){return !!this.loadOperation},abort:function(){var b=this.loadOperation;if(b){b.abort()}},load:function(i){i=Ext.apply({},i);var m=this,n=i.scope||m,p=m.getProxy(),k=i.callback,j=m.loadOperation,l=m.getId(),o;if(j){o=j.extraCalls;if(!o){o=j.extraCalls=[]}o.push(i);return j}i.id=l;i.recordCreator=function(b,d,c){var a=m.session;if(c){c.recordCreator=a?a.recordCreator:null}m.set(b,m._commitOptions);return m};i.internalCallback=function(b){var f=b.wasSuccessful()&&b.getRecords().length>0,e=m.loadOperation,h=e.extraCalls,c=[m,b],g=[m,b,f],a,d;m.loadOperation=null;if(f){Ext.callback(i.success,n,c)}else{Ext.callback(i.failure,n,c)}Ext.callback(k,n,g);if(h){for(a=0,d=h.length;a<d;++a){i=h[a];if(f){Ext.callback(i.success,n,c)}else{Ext.callback(i.failure,n,c)}Ext.callback(i.callback,n,g)}}m.callJoined("afterLoad")};delete i.callback;m.loadOperation=j=p.createOperation("read",i);j.execute();return j},save:function(j){j=Ext.apply({},j);var m=this,o=m.phantom,r=m.dropped,p=r?"destroy":(o?"create":"update"),k=j.scope||m,l=j.callback,n=m.getProxy(),q;j.records=[m];j.internalCallback=function(c){var b=[m,c],a=c.wasSuccessful();if(a){Ext.callback(j.success,k,b)}else{Ext.callback(j.failure,k,b)}b.push(a);Ext.callback(l,k,b)};delete j.callback;q=n.createOperation(p,j);if(r&&o){q.setResultSet(Ext.data.reader.Reader.prototype.nullResultSet);m.setErased();q.setSuccessful(true)}else{q.execute()}return q},inheritableStatics:{addFields:function(b){this.replaceFields(b)},replaceFields:function(q,t){var p=this,x=p.prototype,u=Ext.data.field.Field,w=p.fields,r=p.fieldsMap,z=p.fieldOrdinals,i,y,A,v,B,s;if(t===true){w.length=0;p.fieldsMap=r={};p.fieldOrdinals=z={}}else{if(t){for(y=t.length;y-->0;){B=t[y];if(B in z){delete z[B];delete r[B]}}for(y=0,v=w.length;y<v;++y){B=(i=w[y]).name;if(B in z){z[B]=y}else{w.splice(y,1);--y;--v}}}}for(y=0,v=q?q.length:0;y<v;y++){B=(i=q[y]).name;if(!(B in z)){z[B]=s=w.length;w.push(i=u.create(i));r[B]=i;i.ordinal=s;i.definedBy=i.owner=this}}p.idField=x.idField=A=r[x.idProperty];A.allowNull=A.critical=A.identifier=true;A.defaultValue=null;p.initializeFn=p.rankedFields=p.transientFields=p.criticalFields=null},removeFields:function(b){this.replaceFields(null,b)},getIdFromData:function(h){var e=this,f=e.idField,g=f.calculated?(new e(h)).id:h[f.name];return g},createWithId:function(h,d,j){var i=d,g=this;if(h||h===0){i={};if(d){Ext.apply(i,d)}i[g.idField.name]=h}return new g(i,j)},getFields:function(){return this.fields},getFieldsMap:function(){return this.fieldsMap},getField:function(b){return this.fieldsMap[b]||null},getProxy:function(){var e=this,f=e.proxy,g=e.defaultProxy,h;if(!f){f=e.proxyConfig;if(!f&&g){f=g}if(!f||!f.isProxy){if(typeof f==="string"){f={type:f}}h=e.schema.constructProxy(e);f=f?Ext.merge(h,f):h}f=e.setProxy(f)}return f},setProxy:function(d){var f=this,e;if(d){if(!d.isProxy){d=Ext.Factory.proxy(d)}else{e=d.getModel();if(e&&e!==f){d=d.clone()}}d.setModel(f)}return(f.prototype.proxy=f.proxy=d)},load:function(h,g,j){var f={},i;f[this.prototype.idProperty]=h;i=new this(f,j);i.load(g);return i}},deprecated:{5:{methods:{hasId:null,markDirty:null,setDirty:null,eachStore:function(i,k){var j=this,g=j.stores,h=g.length,l;for(l=0;l<h;++l){i.call(k,g[l])}},join:function(h){var e=this,f=e.stores,g=e.joined;if(!g){g=e.joined=[h]}else{g.push(h)}if(h.isStore){e.store=e.store||h;if(!f){f=e.stores=[]}f.push(h)}},unjoin:function(h){var e=this,f=e.stores,g=e.joined;if(g.length===1){g.length=0}else{Ext.Array.remove(g,h)}if(h.isStore){Ext.Array.remove(f,h);e.store=f[0]||null}}},properties:{persistenceProperty:null},inheritableStatics:{methods:{setFields:null}}}},privates:{_commitOptions:{commit:true},_getChangesOptions:{changes:true},_getAssociatedOptions:{associated:true},_getNotAssociatedOptions:{associated:false},copyFrom:function(q){var r=this,t=r.fields,n=t.length,w=[],p,v=0,s,u,i=r.idProperty,x,o;if(q){s=r.data;u=q.data;for(;v<n;v++){p=t[v];x=p.name;if(x!==i){o=u[x];if(o!==undefined&&!r.isEqual(s[x],o)){s[x]=o;w.push(x)}}}if(r.phantom&&!q.phantom){r.beginEdit();r.setId(q.getId());r.endEdit(true);r.commit(true)}}return w},callJoined:function(o,p){var m=this,k=m.joined,n=m.session,r,q,l,i;if(!k&&!n){return}if(p){p.unshift(m)}else{p=[m]}if(k){for(r=0,q=k.length;r<q;++r){i=k[r];if(i&&(l=i[o])){l.apply(i,p)}}}l=n&&n[o];if(l){l.apply(n,p)}},setSession:function(b){this.session=b;if(b){b.add(this)}},getModifiedFieldNames:function(h){var k=this,j=k.data,g=[],i=h||k.editMemento.data,l;for(l in j){if(j.hasOwnProperty(l)){if(!k.isEqual(j[l],i[l],l)){g.push(l)}}}return g},isEqual:function(f,g,h){var e;if(h){e=h.isField?h:this.fieldsMap[h];if(e){return e.isEqual(f,g)}}if(f instanceof Date&&g instanceof Date){return f.getTime()===g.getTime()}return f===g},statics:{EDIT:"edit",REJECT:"reject",COMMIT:"commit",defaultProxy:"memory",rankFields:function(){var l=this,m=l.prototype,q=l.fields,s=q.length,o=[],t=[],p=[],i,n,r;l.rankedFields=m.rankedFields=o;l.criticalFields=m.criticalFields=t;l.transientFields=m.transientFields=p;for(r=0;r<s;++r){n=q[r];if(n.critical){t.push(n)}if(!n.persist){p.push(n)}if(n.evil){(i||(i=[])).push(n)}else{if(!n.depends){o.push(n);n.rank=o.length}}}for(r=0;r<s;++r){if(!(n=q[r]).rank&&!n.evil){l.topoAdd(n)}}if(i){for(r=0,s=i.length;r<s;++r){o.push(n=i[r]);n.rank=o.length}}return o},topoAdd:function(j){var h=this,k=j.depends,i=k?k.length:0,m=h.rankedFields,n,l;for(n=0;n<i;++n){l=h.fieldsMap[k[n]];(l.dependents||(l.dependents=[])).push(j);if(!l.rank){h.topoAdd(l)}}m.push(j);j.rank=m.length},initFields:function(x,Q,E){var J=Ext.data.field.Field,O=x.fields,D=[],I={},M={},R=[],y=E.fields,H=x.versionProperty||E.versionProperty,G=Q.idProperty,L,P,A,N,i,B,K,z,C,F;Q.fields=E.fields=D;Q.fieldOrdinals=E.fieldOrdinals=I;Q.fieldsMap=E.fieldsMap=M;Q.references=E.references=R;if(y){for(A=0,N=y.length;A<N;++A){D[A]=P=Ext.Object.chain(y[A]);P.dependents=null;P.owner=Q;I[i=P.name]=A;M[i]=P;P.rank=null;if(P.generated){z=P;C=P.name}}}if(O){delete x.fields;for(A=0,N=O.length;A<N;++A){P=O[A];K=P.reference;if(K&&typeof K!=="string"){K=Ext.merge({},K)}P.$reference=K;P=J.create(O[A]);i=P.name;B=I[i];if(B===undefined){I[i]=B=D.length}M[i]=P;D[B]=P;P.definedBy=P.owner=Q;P.ordinal=B;if(i===G){F=P}}}L=M[G];if(!L){if(z&&z.generated){B=z.ordinal}else{B=D.length}delete M[C];delete I[C];L=new J(G);D[B]=L;I[G]=B;M[G]=L;L.definedBy=Q;L.ordinal=B;L.generated=true}else{if(F&&z&&z.generated){Ext.Array.remove(D,z);delete M[C];delete I[C];M[G]=F;for(A=0,N=D.length;A<N;++A){P=D[A];D.ordinal=A;I[P.name]=A}}}L.allowNull=L.critical=L.identifier=true;L.defaultValue=null;Q.idField=E.idField=L;if(H){P=M[H];if(!P){B=D.length;P=new J({name:H,type:"int"});D[B]=P;I[H]=B;M[H]=P;P.definedBy=Q;P.ordinal=B;P.generated=true}P.defaultValue=1;P.critical=true}},initValidators:function(v,i,t){var q=t.validators,x,r,z,s,w,y,u,A,B,p;if(q){x={};for(r in q){x[r]=Ext.Array.clone(q[r])}}s=v.validators||v.validations;if(s){delete v.validators;x=x||{};if(Ext.isArray(s)){z={};for(w=0,y=s.length;w<y;++w){p=s[w];A=p.field;if(!z[A]){z[A]=[]}p=p.fn||p;z[A].push(p)}s=z}for(A in s){u=s[A];if(!Ext.isArray(u)){u=[u]}B=x[A];if(x[A]){Ext.Array.push(B,u)}else{x[A]=u}}}if(x){for(A in x){r=i.getField(A);if(r){r.setModelValidators(x[A])}}}i.validators=t.validators=x},initAssociations:function(t,q,m){var u=q.associations,s=q.belongsTo,o=q.hasMany,i=q.hasOne,n=q.manyToMany,r,v,p;delete q.manyToMany;if(n){t.addMatrices(m,n)}delete q.associations;delete q.belongsTo;delete q.hasMany;delete q.hasOne;if(u){u=Ext.isArray(u)?u:[u];for(r=0,v=u.length;r<v;++r){p=u[r];switch(p.type){case"belongsTo":t.addLegacyBelongsTo(m,p);break;case"hasMany":t.addLegacyHasMany(m,p);break;case"hasOne":t.addLegacyHasOne(m,p);break}}}if(s){s=Ext.isArray(s)?s:[s];for(r=0,v=s.length;r<v;++r){t.addLegacyBelongsTo(m,s[r])}}if(o){o=Ext.isArray(o)?o:[o];for(r=0,v=o.length;r<v;++r){t.addLegacyHasMany(m,o[r])}}if(i){i=Ext.isArray(i)?i:[i];for(r=0,v=i.length;r<v;++r){t.addLegacyHasOne(m,i[r])}}t.afterLegacyAssociations(m)},initIdentifier:function(i,h,j){var g=i.identifier||i.idgen,k=j.identifier||h.schema._defaultIdentifier,l;if(g){delete i.identifier;delete i.idgen;g=Ext.Factory.dataIdentifier(g)}else{if(k){if(k.clone&&!k.getId()){g=k.clone()}else{if(k.isGenerator){g=k}else{g=Ext.Factory.dataIdentifier(k)}}}}h.identifier=j.identifier=g;if(!g){l=h.entityName;if(!l){l=Ext.id(null,"extModel")}h.identifier=Ext.Factory.dataIdentifier({type:"sequential",prefix:l+"-"})}},findValidator:function(p,o,i){var m=i.type||i,k=p[o],j,n,l;if(k){for(n=0,j=k.length;n<j;++n){l=k[n];if(l.type===m){return l}}}return null},makeInitializeFn:function(i){var F=["var "],y=["\nreturn function (e) {\n    var data = e.data, v;\n"],B=[],t=0,w,x,v,r,C,u,z,A,s,D,E;if(!(z=i.rankedFields)){z=i.rankFields()}for(D=0,E=z.length;D<E;++D){u=z[D];B[D]=A="f"+D;v=u.convert;if(D){F.push(",  \n    ")}F.push(A," = $fields["+D+"]");if((s=(u.defaultValue!==undefined))||v){r='data["'+u.name+'"]';++t;w=x="";if(u.cloneDefaultValue){w="Ext.clone(";x=")"}y.push("\n");if(v&&s){y.push("    v = ",r,";\n    if (v !== undefined) {\n        v = ",A,".convert(v, e);\n    }\n    if (v === undefined) {\n        v = ",w,A,".defaultValue",x,";\n    }\n    ",r," = v;")}else{if(v){y.push("    v = ",A,".convert(",r,",e);\n    if (v !== undefined) {\n        ",r," = v;\n    }\n")}else{if(s){y.push("    if (",r," === undefined) {\n        ",r," = ",w,A,".defaultValue",x,";\n    }\n")}}}}}if(!t){return Ext.emptyFn}F.push(";\n");F.push.apply(F,y);F.push("}");F=F.join("");C=new Function("$fields","Ext",F);return C(z,Ext)}}}},1,0,0,0,0,0,[Ext.data,"Model",Ext.data,"Record"],function(){var g=this,h=g.prototype,e=Ext.data.schema.Schema,f;g.proxyConfig=h.proxy;delete h.proxy;g.fields=[];g.fieldsMap=h.fieldsMap={};g.schema=h.schema=e.get(h.schema);h.idField=new Ext.data.field.Field(h.idProperty);g.identifier=new Ext.data.identifier.Sequential();g.onExtended(function(p,c){var d=p.prototype,a=c.schema,b=d.superclass.self,m,n,o;p.idProperty=c.idProperty||d.idProperty;if(a){delete c.schema;m=e.get(a)}else{if(!(m=d.schema)){m=f||(f=e.get("default"))}}p.rankFields=g.rankFields;p.topoAdd=g.topoAdd;d.schema=p.schema=m;if(!(n=c.entityName)){d.entityName=n=m.getEntityName(p)}p.entityName=n;p.fieldExtractors={};g.initIdentifier(c,p,d);g.initFields(c,p,d);g.initValidators(c,p,d);p.fields.items=p.fields;if(n){m.addEntity(p);g.initAssociations(m,c,p)}o=c.proxy;if(o){delete c.proxy}else{if(b!==g){o=b.proxyConfig||b.proxy}}p.proxyConfig=o})}));(Ext.cmd.derive("Ext.data.ResultSet",Ext.Base,{isResultSet:true,$configPrefixed:false,config:{loaded:true,count:null,total:null,success:false,records:null,message:null},constructor:function(b){this.initConfig(b)},getCount:function(){var c=(arguments.callee.$previous||Ext.Base.prototype.getCount).call(this),d;if(!c){d=this.getRecords();if(d){c=d.length}}return c}},1,0,0,0,0,0,[Ext.data,"ResultSet"],0));(Ext.cmd.derive("Ext.data.reader.Reader",Ext.Base,{alternateClassName:["Ext.data.Reader","Ext.data.DataReader"],factoryConfig:{defaultType:null},config:{totalProperty:"total",successProperty:"success",rootProperty:"",messageProperty:"",typeProperty:"",implicitIncludes:true,readRecordsOnFailure:true,model:null,proxy:null,transform:null,keepRawData:null},isReader:true,constructor:function(d){if(d&&d.hasOwnProperty("root")){d=Ext.apply({},d);d.rootProperty=d.root;delete d.root}var c=this;c.duringInit=1;c.mixins.observable.constructor.call(c,d);--c.duringInit;c.buildExtractors()},applyModel:function(b){return Ext.data.schema.Schema.lookupEntity(b)},applyTransform:function(b){if(b){if(Ext.isFunction(b)){b={fn:b}}else{if(b.charAt){b={fn:this[b]}}}return b.fn.bind(b.scope||this)}return b},forceBuildExtractors:function(){if(!this.duringInit){this.buildExtractors(true)}},updateTotalProperty:function(){this.forceBuildExtractors()},updateMessageProperty:function(){this.forceBuildExtractors()},updateSuccessProperty:function(){this.forceBuildExtractors()},read:function(e,g){var h,f;if(e){if(e.responseText){f=this.getResponseData(e);if(f&&f.__$isError){return new Ext.data.ResultSet({total:0,count:0,records:[],success:false,message:f.msg})}else{h=this.readRecords(f,g)}}else{h=this.readRecords(e,g)}}return h||this.nullResultSet},getNullResultSet:function(){return this.nullResultSet},createReadError:function(b){return{__$isError:true,msg:b}},readRecords:function(x,z,v){var u=this,w=v&&v.recordsOnly,q=v&&v.asRoot,p,y,A,s,t,r,o,B;B=this.getTransform();if(B){x=B(x)}u.buildExtractors();if(u.getKeepRawData()){u.rawData=x}if(u.hasListeners.rawdata){u.fireEventArgs("rawdata",[x])}x=u.getData(x);p=true;y=0;A=[];if(u.getSuccessProperty()){r=u.getSuccess(x);if(r===false||r==="false"){p=false}}if(u.getMessageProperty()){o=u.getMessage(x)}if(p||u.getReadRecordsOnFailure()){s=(q||Ext.isArray(x))?x:u.getRoot(x);if(s){t=s.length}if(u.getTotalProperty()){r=parseInt(u.getTotal(x),10);if(!isNaN(r)){t=r}}if(s){A=u.extractData(s,z);y=A.length}}return w?A:new Ext.data.ResultSet({total:t||y,count:y,records:A,success:p,message:o})},extractData:function(q,y){var s=this,x=y&&y.model?Ext.data.schema.Schema.lookupEntity(y.model):s.getModel(),A=x.schema,i=A.hasAssociations(x)&&s.getImplicitIncludes(),r=s.getFieldExtractorInfo(x.fieldExtractors),D=q.length,B=new Array(D),u=s.getTypeProperty(),t,C,z,v,w;if(!D&&Ext.isObject(q)){q=[q];D=1}for(w=0;w<D;w++){v=q[w];if(!v.isModel){C=v;if(u&&(z=s.getChildType(A,C,u))){t=z.getProxy().getReader();v=t.extractRecord(C,y,z,A.hasAssociations(z)&&t.getImplicitIncludes(),t.getFieldExtractorInfo(z.fieldExtractors))}else{v=s.extractRecord(C,y,x,i,r)}if(v.isModel&&v.isNode){v.raw=C}}if(v.onLoad){v.onLoad()}B[w]=v}return B},getChildType:function(e,h,g){var f;switch(typeof g){case"string":return e.getEntity(h[g]);case"object":f=g.namespace;return e.getEntity((f?f+".":"")+h[g.name]);case"function":return e.getEntity(g(h))}},extractRecordData:function(h,g){var e=g&&g.model?Ext.data.schema.Schema.lookupEntity(g.model):this.getModel(),f=this.getFieldExtractorInfo(e.fieldExtractors);return this.extractRecord(h,g,e,false,f)},extractRecord:function(r,q,p,j,l){var m=this,n=(q&&q.recordCreator)||m.defaultRecordCreator,k,o;k=m.extractModelData(r,l);o=n.call(m,k,p||m.getModel(),q);if(j&&o.isModel){m.readAssociated(o,r,q)}return o},getFieldExtractorInfo:function(f){if(!f){return}var e=this.$className,d=f[e];if(d===undefined){f[e]=d=this.buildFieldExtractors()}return d},buildFieldExtractors:function(){var n=this.getFields(),m=n.length,p=[],i=[],q=null,s=0,l,t,o,r;for(o=0;o<m;++o){l=n[o];r=this.createFieldAccessor(l);if(r){t=l.name;p.push("val = extractors["+s+"](raw); if (val !== undefined) { data['"+t+"'] = val; }");i.push(r);++s}}if(p.length){q={extractors:i,fn:new Function("raw","data","extractors","var val;"+p.join(""))}}return q},defaultRecordCreator:function(d,f){var e=new f(d);e.phantom=false;return e},getModelData:function(b){return{}},extractModelData:function(e,f){var g=this.getModelData(e),h;if(f){h=f.fn;h(e,g,f.extractors)}return g},readAssociated:function(h,j,k){var l=h.associations,g,i;for(g in l){if(l.hasOwnProperty(g)){i=l[g];if(i.cls){i.read(h,j,this,k)}}}},getFields:function(){return this.getModel().fields},getData:Ext.identityFn,getRoot:Ext.identityFn,getResponseData:function(b){},onMetaChange:function(j){var k=this,h=j.fields,n,l,i,m;k.metaData=j;if(j.root){k.setRootProperty(j.root)}if(j.totalProperty){k.setTotalProperty(j.totalProperty)}if(j.successProperty){k.setSuccessProperty(j.successProperty)}if(j.messageProperty){k.setMessageProperty(j.messageProperty)}i=j.clientIdProperty;if(h){l=Ext.define(null,{extend:"Ext.data.Model",fields:h,clientIdProperty:i});k.setModel(l);m=k.getProxy();if(m){m.setModel(l)}}else{if(i){n=k.getModel();if(n){n.self.prototype.clientIdProperty=i}}}},buildExtractors:function(i){var f=this,j,g,h;if(i||!f.hasExtractors){j=f.getTotalProperty();g=f.getSuccessProperty();h=f.getMessageProperty();if(j){f.getTotal=f.getAccessor(j)}if(g){f.getSuccess=f.getAccessor(g)}if(h){f.getMessage=f.getAccessor(h)}f.hasExtractors=true;return true}},getAccessor:function(h){var i=this,g=i.extractorCache,f,j;if(typeof h==="string"){j=i.getAccessorKey(h);f=g.get(j);if(!f){f=i.createAccessor(h);g.add(j,f)}}else{f=i.createAccessor(h)}return f},getAccessorKey:function(b){return this.$className+b},createAccessor:Ext.emptyFn,createFieldAccessor:Ext.emptyFn,destroy:function(){var b=this;b.model=b.getTotal=b.getSuccess=b.getMessage=b.rawData=null;b.onMetaChange=null;b.transform=null;b.callParent()},privates:{copyFrom:function(d){var c=this;d.buildExtractors();c.getTotal=d.getTotal;c.getSuccess=d.getSuccess;c.getMessage=d.getMessage;++c.duringInit;c.setConfig(d.getConfig());--c.duringInit;c.hasExtractors=true}}},1,0,0,0,["reader.base"],[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable],[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.reader,"Reader",Ext.data,"Reader",Ext.data,"DataReader"],function(c){var d=c.prototype;Ext.apply(d,{nullResultSet:new Ext.data.ResultSet({total:0,count:0,records:[],success:true,message:""})});d.extractorCache=new Ext.util.LruCache()}));(Ext.cmd.derive("Ext.data.writer.Writer",Ext.Base,{factoryConfig:{defaultType:null},alternateClassName:["Ext.data.DataWriter","Ext.data.Writer"],config:{clientIdProperty:null,allDataOptions:{persist:true},partialDataOptions:{changes:true,critical:true},writeAllFields:false,dateFormat:null,nameProperty:"name",writeRecordId:true,transform:null},isWriter:true,constructor:function(b){this.initConfig(b)},applyTransform:function(b){if(b){if(Ext.isFunction(b)){b={fn:b}}return b.fn.bind(b.scope||this)}return b},write:function(j){var l=j.getOperation(),g=l.getRecords()||[],h=g.length,i=[],k;for(k=0;k<h;k++){i.push(this.getRecordData(g[k],l))}return this.writeRecords(j,i)},writeRecords:Ext.emptyFn,getRecordData:function(z,B){var w=this,D=w.getNameProperty(),H=D!=="name",F=z.self.idField,s=F[D]||F.name,t=z.id,E=w.getWriteAllFields(),x,G,C,r,u,y,A,v;if(F.serialize){t=F.serialize(t)}if(!E&&B&&B.isDestroyOperation){x={};x[s]=t}else{G=w.getDateFormat();C=z.phantom;r=(C||E)?w.getAllDataOptions():w.getPartialDataOptions();u=C&&w.getClientIdProperty();y=z.getFieldsMap();r.serialize=false;A=z.getData(r);x=H?{}:A;if(u){x[u]=t;delete A[s]}else{if(!w.getWriteRecordId()){delete A[s]}}for(s in A){t=A[s];if(!(v=y[s])){if(H){x[s]=t}}else{if(v.isDateField&&G&&Ext.isDate(t)){t=Ext.Date.format(t,G)}else{if(v.serialize){t=v.serialize(t,z)}}if(H){s=v[D]||s}x[s]=t}}}return x}},1,0,0,0,["writer.base"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.data.writer,"Writer",Ext.data,"DataWriter",Ext.data,"Writer"],0));(Ext.cmd.derive("Ext.data.proxy.Proxy",Ext.Base,{$configPrefixed:false,alternateClassName:["Ext.data.DataProxy","Ext.data.Proxy"],config:{batchOrder:"create,update,destroy",batchActions:true,model:undefined,reader:{type:"json"},writer:{type:"json"}},isProxy:true,isSynchronous:false,constructor:function(b){this.mixins.observable.constructor.call(this,b);this.pendingOperations={}},applyModel:function(b){return Ext.data.schema.Schema.lookupEntity(b)},updateModel:function(c){if(c){var d=this.getReader();if(d&&!d.getModel()){d.setModel(c)}}},applyReader:function(b){if(this.isSynchronous){b=b||{};b.keepRawData=true}return Ext.Factory.reader(b)},updateReader:function(e){if(e){var f=this,d=f.getModel();if(!d){d=e.getModel();if(d){f.setModel(d)}}else{e.setModel(d)}if(e.onMetaChange){e.onMetaChange=Ext.Function.createSequence(e.onMetaChange,f.onMetaChange,f)}}},applyWriter:function(c){var d=this.getReader();c=Ext.Factory.writer(c);if(c.getRecord&&!c.getRecord()&&d&&d.getRecord){d=d.getRecord();if(d){c.setRecord(d)}}return c},abort:Ext.emptyFn,onMetaChange:function(b){this.fireEvent("metachange",this,b)},create:Ext.emptyFn,read:Ext.emptyFn,update:Ext.emptyFn,erase:Ext.emptyFn,batch:function(a,q){var r=this,s=r.getBatchActions(),u,y,v,x,w,p,z,o,t;if(a.operations===undefined){a={operations:a,listeners:q}}if(a.batch){if(Ext.isDefined(a.batch.runOperation)){u=Ext.applyIf(a.batch,{proxy:r,listeners:{}})}}else{a.batch={proxy:r,listeners:a.listeners||{}}}if(!u){u=new Ext.data.Batch(a.batch)}u.on("complete",Ext.bind(r.onBatchComplete,r,[a],0));v=r.getBatchOrder().split(",");x=v.length;for(p=0;p<x;p++){w=v[p];y=a.operations[w];if(y){if(s){u.add(r.createOperation(w,{records:y,params:a.params}))}else{o=y.length;for(z=0;z<o;z++){t=y[z];u.add(r.createOperation(w,{records:[t],params:a.params}))}}}}u.start();return u},onBatchComplete:function(e,d){var f=e.scope||this;if(d.hasException()){if(Ext.isFunction(e.failure)){Ext.callback(e.failure,f,[d,e])}}else{if(Ext.isFunction(e.success)){Ext.callback(e.success,f,[d,e])}}if(Ext.isFunction(e.callback)){Ext.callback(e.callback,f,[d,e])}},createOperation:function(f,d){var e=Ext.createByAlias("data.operation."+f,d);e.setProxy(this);this.pendingOperations[e._internalId]=e;return e},completeOperation:function(b){delete this.pendingOperations[b._internalId]},clone:function(){return new this.self(this.getInitialConfig())},destroy:function(){var d=this.pendingOperations,e,f;for(e in d){f=d[e];if(f&&f.isRunning()){f.abort()}}this.pendingOperations=null}},1,0,0,0,["proxy.proxy"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable],[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.data.proxy,"Proxy",Ext.data,"DataProxy",Ext.data,"Proxy"],0));(Ext.cmd.derive("Ext.data.proxy.Client",Ext.data.proxy.Proxy,{alternateClassName:"Ext.data.ClientProxy",isSynchronous:true,clear:function(){}},0,0,0,0,0,0,[Ext.data.proxy,"Client",Ext.data,"ClientProxy"],0));(Ext.cmd.derive("Ext.data.proxy.Memory",Ext.data.proxy.Client,{alternateClassName:"Ext.data.MemoryProxy",isMemoryProxy:true,config:{enablePaging:false,data:{$value:null,merge:function(g,f,h,e){if(Ext.isArray(g)){return Ext.Array.clone(g)}else{return Ext.clone(g)}}}},finishOperation:function(e){var h=0,g=e.getRecords(),f=g.length;for(h;h<f;h++){g[h].commit()}e.setSuccessful(true)},create:function(b){this.finishOperation(b)},update:function(b){this.finishOperation(b)},erase:function(b){this.finishOperation(b)},read:function(m){var k=this,j=k.getReader().read(k.getData()),o=j.getRecords(),l=m.getSorters(),r=m.getGrouper(),p=m.getFilters(),q=m.getStart(),n=m.getLimit();if(m.process(j,null,null,false)!==false){if(p&&p.length){j.setRecords(o=Ext.Array.filter(o,Ext.util.Filter.createFilterFn(p)));j.setTotal(o.length)}if(r){l=l?l.concat(r):l}if(l&&l.length){j.setRecords(o=Ext.Array.sort(o,Ext.util.Sortable.createComparator(l)))}if(k.getEnablePaging()&&q!==undefined&&n!==undefined){if(q>=j.getTotal()){j.setConfig({success:false,records:[],total:0})}else{j.setRecords(Ext.Array.slice(o,q,q+n))}}m.setCompleted()}},clear:Ext.emptyFn},0,0,0,0,["proxy.memory"],0,[Ext.data.proxy,"Memory",Ext.data,"MemoryProxy"],0));(Ext.cmd.derive("Ext.data.ProxyStore",Ext.data.AbstractStore,{config:{model:undefined,fields:null,proxy:undefined,autoLoad:undefined,autoSync:false,batchUpdateMode:"operation",sortOnLoad:true,trackRemoved:true,asynchronousLoad:undefined},onClassExtended:function(f,i,g){var j=i.model,h;if(typeof j==="string"){h=g.onBeforeCreated;g.onBeforeCreated=function(){var a=this,b=arguments;Ext.require(j,function(){h.apply(a,b)})}}},implicitModel:"Ext.data.Model",autoSyncSuspended:0,constructor:function(d){var c=this;c.removed=[];Ext.data.AbstractStore.prototype.constructor.apply(this,arguments);if(c.getAsynchronousLoad()===false){c.flushLoad()}},applyAsynchronousLoad:function(b){if(b==null){b=!this.loadsSynchronously()}return b},updateAutoLoad:function(b){this.getData();if(b){this.load(Ext.isObject(b)?b:undefined)}},getTotalCount:function(){return this.totalCount||0},applyFields:function(b){if(b){this.createImplicitModel(b)}},applyModel:function(b){if(b){b=Ext.data.schema.Schema.lookupEntity(b)}else{this.getFields();b=this.getModel()||this.createImplicitModel()}return b},applyProxy:function(c){var d=this.getModel();if(c!==null){if(c){if(c.isProxy){c.setModel(d)}else{if(Ext.isString(c)){c={type:c,model:d}}else{if(!c.model){c=Ext.apply({model:d},c)}}c=Ext.createByAlias("proxy."+c.type,c);c.autoCreated=true}}else{if(d){c=d.getProxy()}}if(!c){c=Ext.createByAlias("proxy.memory");c.autoCreated=true}}return c},applyState:function(c){var d=this;Ext.data.AbstractStore.prototype.applyState.call(this,c);if(d.getAutoLoad()||d.isLoaded()){d.load()}},updateProxy:function(c,d){this.proxyListeners=Ext.destroy(this.proxyListeners)},updateTrackRemoved:function(b){this.cleanRemoved();this.removed=b?[]:null},onMetaChange:function(d,c){this.fireEvent("metachange",this,c)},create:function(j,l){var k=this,i=k.getModel(),h=new i(j),g;l=Ext.apply({},l);if(!l.records){l.records=[h]}l.internalScope=k;l.internalCallback=k.onProxyWrite;g=k.createOperation("create",l);return g.execute()},read:function(){return this.load.apply(this,arguments)},update:function(d){var f=this,e;d=Ext.apply({},d);if(!d.records){d.records=f.getUpdatedRecords()}d.internalScope=f;d.internalCallback=f.onProxyWrite;e=f.createOperation("update",d);return e.execute()},onProxyWrite:function(e){var h=this,g=e.wasSuccessful(),f=e.getRecords();switch(e.getAction()){case"create":h.onCreateRecords(f,e,g);break;case"update":h.onUpdateRecords(f,e,g);break;case"destroy":h.onDestroyRecords(f,e,g);break}if(g){h.fireEvent("write",h,e);h.fireEvent("datachanged",h)}},onCreateRecords:Ext.emptyFn,onUpdateRecords:Ext.emptyFn,onDestroyRecords:function(d,e,f){if(f){this.cleanRemoved()}},erase:function(d){var f=this,e;d=Ext.apply({},d);if(!d.records){d.records=f.getRemovedRecords()}d.internalScope=f;d.internalCallback=f.onProxyWrite;e=f.createOperation("destroy",d);return e.execute()},onBatchOperationComplete:function(c,d){return this.onProxyWrite(d)},onBatchComplete:function(l,h){var i=this,g=l.operations,j=g.length,k;if(i.batchUpdateMode!=="operation"){i.suspendEvents();for(k=0;k<j;k++){i.onProxyWrite(g[k])}i.resumeEvents()}i.isSyncing=false;i.fireEvent("datachanged",i)},onBatchException:function(c,d){},filterNew:function(b){return b.phantom===true&&b.isValid()},getNewRecords:function(){return[]},getUpdatedRecords:function(){return[]},getModifiedRecords:function(){return[].concat(this.getNewRecords(),this.getUpdatedRecords())},filterUpdated:function(b){return b.dirty===true&&b.phantom!==true&&b.isValid()},getRemovedRecords:function(){var b=this.getRawRemovedRecords();return b?Ext.Array.clone(b):b},sync:function(n){var l=this,h={},k=l.getNewRecords(),m=l.getUpdatedRecords(),i=l.getRemovedRecords(),j=false;l.needsSync=false;if(k.length>0){h.create=k;j=true}if(m.length>0){h.update=m;j=true}if(i.length>0){h.destroy=i;j=true}if(j&&l.fireEvent("beforesync",h)!==false){l.isSyncing=true;n=n||{};l.proxy.batch(Ext.apply(n,{operations:h,listeners:l.getBatchListeners()}))}return l},getBatchListeners:function(){var c=this,d={scope:c,exception:c.onBatchException,complete:c.onBatchComplete};if(c.batchUpdateMode==="operation"){d.operationcomplete=c.onBatchOperationComplete}return d},save:function(){return this.sync.apply(this,arguments)},load:function(d){var c=this;if(typeof d==="function"){d={callback:d}}else{d=d?Ext.Object.chain(d):{}}c.pendingLoadOptions=d;if(c.getAsynchronousLoad()){if(!c.loadTimer){c.loadTimer=Ext.asap(c.flushLoad,c)}}else{c.flushLoad()}return c},flushLoad:function(){var f=this,d=f.pendingLoadOptions,e;f.clearLoadTask();if(!d){return}f.setLoadOptions(d);if(f.getRemoteSort()&&d.sorters){f.fireEvent("beforesort",f,d.sorters)}e=Ext.apply({internalScope:f,internalCallback:f.onProxyLoad,scope:f},d);f.lastOptions=e;e=f.createOperation("read",e);if(f.fireEvent("beforeload",f,e)!==false){f.onBeforeLoad(e);f.loading=true;e.execute()}},reload:function(d){var c=Ext.apply({},d,this.lastOptions);return this.load(c)},onEndUpdate:function(){var b=this;if(b.needsSync&&b.autoSync&&!b.autoSyncSuspended){b.sync()}},afterReject:function(d){var c=this;if(c.contains(d)){c.onUpdate(d,Ext.data.Model.REJECT,null);c.fireEvent("update",c,d,Ext.data.Model.REJECT,null)}},afterCommit:function(e,f){var d=this;if(!f){f=null}if(d.contains(e)){d.onUpdate(e,Ext.data.Model.COMMIT,f);d.fireEvent("update",d,e,Ext.data.Model.COMMIT,f)}},afterErase:function(b){this.onErase(b)},onErase:Ext.emptyFn,onUpdate:Ext.emptyFn,onDestroy:function(){var c=this,d=c.getProxy();c.clearLoadTask();c.getData().destroy();c.data=null;c.setProxy(null);if(d.autoCreated){d.destroy()}c.setModel(null)},hasPendingLoad:function(){return !!this.pendingLoadOptions||this.isLoading()},isLoading:function(){return !!this.loading},isLoaded:function(){return this.loadCount>0},suspendAutoSync:function(){++this.autoSyncSuspended},resumeAutoSync:function(c){var d=this;if(d.autoSyncSuspended&&!--d.autoSyncSuspended){if(c){d.sync()}}},removeAll:Ext.emptyFn,clearData:Ext.emptyFn,privates:{getRawRemovedRecords:function(){return this.removed},onExtraParamsChanged:function(){},clearLoadTask:function(){Ext.asapCancel(this.loadTimer);this.pendingLoadOptions=this.loadTimer=null},cleanRemoved:function(){var f=this.getRawRemovedRecords(),e,d;if(f){for(d=0,e=f.length;d<e;++d){f[d].unjoin(this)}f.length=0}},createOperation:function(i,g){var h=this,f=h.getProxy(),j;if(!h.proxyListeners){j={scope:h,destroyable:true,beginprocessresponse:h.beginUpdate,endprocessresponse:h.endUpdate};if(!h.disableMetaChangeEvent){j.metachange=h.onMetaChange}h.proxyListeners=f.on(j)}return f.createOperation(i,g)},createImplicitModel:function(g){var h=this,f={extend:h.implicitModel,statics:{defaultProxy:"memory"}},i,j;if(g){f.fields=g}j=Ext.define(null,f);h.setModel(j);i=h.getProxy();if(i){j.setProxy(i)}else{h.setProxy(j.getProxy())}},loadsSynchronously:function(){return this.getProxy().isSynchronous},onBeforeLoad:Ext.privateFn,removeFromRemoved:function(d){var c=this.getRawRemovedRecords();if(c){Ext.Array.remove(c,d);d.unjoin(this)}},setLoadOptions:function(f){var h=this,e,g;if(h.getRemoteFilter()){e=h.getFilters(false);if(e&&e.getCount()){f.filters=e.getRange()}}if(h.getRemoteSort()){g=h.getSorters(false);if(g&&g.getCount()){f.sorters=g.getRange()}}}}},1,0,0,0,0,0,[Ext.data,"ProxyStore"],0));(Ext.cmd.derive("Ext.data.LocalStore",Ext.Mixin,{mixinConfig:{id:"localstore"},config:{extraKeys:null},applyExtraKeys:function(e){var f,d=this.getData();d.setExtraKeys(e);e=d.getExtraKeys();for(f in e){this[f]=e[f]}},add:function(b){return this.insert(this.getCount(),arguments.length===1?b:arguments)},constructDataCollection:function(){return new Ext.util.Collection({rootProperty:"data"})},createModel:function(e){var d=this.getSession(),f;if(!e.isModel){f=this.getModel();e=new f(e,d)}return e},createFiltersCollection:function(){return this.getData().getFilters()},createSortersCollection:function(){var b=this.getData().getSorters();b.setSorterConfigure(this.addFieldTransform,this);return b},onCollectionSort:function(){this.onSorterEndUpdate()},onCollectionFilter:function(){this.onFilterEndUpdate()},notifySorterChange:function(){this.getData().onSorterChange()},forceLocalSort:function(){this.getData().onSortChange()},contains:function(b){return this.indexOf(b)>-1},each:function(j,k){var i=this.data.items,h=i.length,g,l;for(l=0;l<h;++l){g=i[l];if(j.call(k||g,g,l,h)===false){break}}},collect:function(f,g,j){var i=this,h=i.getData();if(j===true&&h.filtered){h=h.getSource()}return h.collect(f,"data",g)},getById:function(c){var d=this.getData();if(d.filtered){d=d.getSource()}return d.get(c)||null},getByInternalId:function(e){var f=this.getData(),d;if(f.filtered){if(!f.$hasExtraKeys){d=this.makeInternalKeyCfg();f.setExtraKeys(d);f.$hasExtraKeys=true}f=f.getSource()}if(!f.$hasExtraKeys){f.setExtraKeys(d||this.makeInternalKeyCfg());f.$hasExtraKeys=true}return f.byInternalId.get(e)||null},getDataSource:function(){var b=this.getData();return b.getSource()||b},indexOf:function(b){return this.getData().indexOf(b)},indexOfId:function(b){return this.indexOf(this.getById(b))},insert:function(j,f){var h=this,g,i;if(f){if(!Ext.isIterable(f)){f=[f]}else{f=Ext.Array.clone(f)}g=f.length}if(!g){return[]}for(i=0;i<g;++i){f[i]=h.createModel(f[i])}h.getData().insert(j,f);return f},queryBy:function(d,e){var f=this.getData();return(f.getSource()||f).createFiltered(d,e)},query:function(j,k,i,h,g){var l=this.getData();return(l.getSource()||l).createFiltered(j,k,i,h,g)},first:function(b){return this.getData().first(b)||null},last:function(b){return this.getData().last(b)||null},sum:function(f,e){var d=this.getData();return(e&&this.isGrouped())?d.sumByGroup(f):d.sum(f)},count:function(d){var c=this.getData();return(d&&this.isGrouped())?c.countByGroup():c.count()},min:function(f,e){var d=this.getData();return(e&&this.isGrouped())?d.minByGroup(f):d.min(f)},max:function(f,e){var d=this.getData();return(e&&this.isGrouped())?d.maxByGroup(f):d.max(f)},average:function(f,e){var d=this.getData();return(e&&this.isGrouped())?d.averageByGroup(f):d.average(f)},aggregate:function(n,i,p,m){var o=this,t,q,s,l,r;if(p&&o.isGrouped()){t=o.getGroups().items;q=t.length;s={};for(r=0;r<q;++r){l=t[r];s[l.getGroupKey()]=o.getAggregate(n,i||o,l.items,m)}return s}else{return o.getAggregate(n,i,o.getData().items,m)}},getAggregate:function(k,l,n,j){var h=[],i=n.length,m;for(m=0;m<i;++m){h[m]=n[m].get(j)}return k.call(l||this,n,h)},addObserver:function(d){var c=this.observers;if(!c){this.observers=c=new Ext.util.Collection()}c.add(d)},removeObserver:function(d){var c=this.observers;if(c){c.remove(d)}},callObservers:function(l,o){var k=this.observers,j,p,n,i,m;if(k){p=k.items;if(o){o.unshift(this)}else{o=[this]}for(n=0,j=p.length;n<j;++n){m=p[n];i="onSource"+l;if(m[i]){m[i].apply(m,o)}}}},queryRecordsBy:function(l,m){var j=this.getData(),k=[],i,n,h;j=(j.getSource()||j).items;m=m||this;for(n=0,i=j.length;n<i;++n){h=j[n];if(l.call(m,h)===true){k.push(h)}}return k},queryRecords:function(j,k){var l=this.getData(),m=[],i,n,h;l=(l.getSource()||l).items;for(n=0,i=l.length;n<i;++n){h=l[n];if(h.get(j)===k){m.push(h)}}return m},privates:{isLast:function(b){return b===this.last()},makeInternalKeyCfg:function(){return{byInternalId:{property:"internalId",rootProperty:""}}}}},0,0,0,0,0,0,[Ext.data,"LocalStore"],0));(Ext.cmd.derive("Ext.data.proxy.Server",Ext.data.proxy.Proxy,{alternateClassName:"Ext.data.ServerProxy",isRemote:true,config:{url:"",pageParam:"page",startParam:"start",limitParam:"limit",groupParam:"group",groupDirectionParam:"groupDir",sortParam:"sort",filterParam:"filter",directionParam:"dir",idParam:"id",simpleSortMode:false,simpleGroupMode:false,noCache:true,cacheString:"_dc",timeout:30000,api:{create:undefined,read:undefined,update:undefined,destroy:undefined},extraParams:{}},create:function(){return this.doRequest.apply(this,arguments)},read:function(){return this.doRequest.apply(this,arguments)},update:function(){return this.doRequest.apply(this,arguments)},erase:function(){return this.doRequest.apply(this,arguments)},setExtraParam:function(e,d){var f=this.getExtraParams();f[e]=d;this.fireEvent("extraparamschanged",f)},updateExtraParams:function(c,d){this.fireEvent("extraparamschanged",c)},buildRequest:function(i){var k=this,h=Ext.apply({},i.getParams()),j=Ext.applyIf(h,k.getExtraParams()||{}),l,m,n;Ext.applyIf(j,k.getParams(i));m=i.getId();n=k.getIdParam();if(m!==undefined&&j[n]===undefined){j[n]=m}l=new Ext.data.Request({params:j,action:i.getAction(),records:i.getRecords(),url:i.getUrl(),operation:i,proxy:k});l.setUrl(k.buildUrl(l));i.setRequest(l);return l},processResponse:function(k,p,l,i){var m=this,o,j,n;m.fireEvent("beginprocessresponse",m,i,p);if(k===true){j=m.getReader();if(i.status===204){n=j.getNullResultSet()}else{n=j.read(m.extractResponseData(i),{recordCreator:p.getRecordCreator()})}p.process(n,l,i);o=!p.wasSuccessful()}else{m.setException(p,i);o=true}if(o){m.fireEvent("exception",m,i,p)}m.afterRequest(l,k);m.fireEvent("endprocessresponse",m,i,p)},setException:function(c,d){c.setException({status:d.status,statusText:d.statusText,response:d})},extractResponseData:Ext.identityFn,applyEncoding:function(b){return Ext.encode(b)},encodeSorters:function(h,j){var g=[],i=h.length,f;for(f=0;f<i;f++){g[f]=h[f].serialize()}return this.applyEncoding(j?g[0]:g)},encodeFilters:function(i){var g=[],j=i.length,f,h;for(f=0;f<j;f++){g[f]=i[f].serialize()}return this.applyEncoding(g)},getParams:function(B){if(!B.isReadOperation){return{}}var v=this,w={},y=B.getGrouper(),P=B.getSorters(),D=B.getFilters(),I=B.getPage(),J=B.getStart(),x=B.getLimit(),F=v.getSimpleSortMode(),M=v.getSimpleGroupMode(),z=v.getPageParam(),L=v.getStartParam(),O=v.getLimitParam(),N=v.getGroupParam(),E=v.getGroupDirectionParam(),K=v.getSortParam(),A=v.getFilterParam(),C=v.getDirectionParam(),G,H;if(z&&I){w[z]=I}if(L&&(J||J===0)){w[L]=J}if(O&&x){w[O]=x}G=N&&y;if(G){if(M){w[N]=y.getProperty();w[E]=y.getDirection()}else{w[N]=v.encodeSorters([y],true)}}if(K&&P&&P.length>0){if(F){H=0;if(P.length>1&&G){H=1}w[K]=P[H].getProperty();w[C]=P[H].getDirection()}else{w[K]=v.encodeSorters(P)}}if(A&&D&&D.length>0){w[A]=v.encodeFilters(D)}return w},buildUrl:function(f){var d=this,e=d.getUrl(f);if(d.getNoCache()){e=Ext.urlAppend(e,Ext.String.format("{0}={1}",d.getCacheString(),Ext.Date.now()))}return e},getUrl:function(c){var d;if(c){d=c.getUrl()||this.getApi()[c.getAction()]}return d?d:(arguments.callee.$previous||Ext.data.proxy.Proxy.prototype.getUrl).call(this)},doRequest:function(b){},afterRequest:Ext.emptyFn,destroy:function(){Ext.data.proxy.Proxy.prototype.destroy.call(this);Ext.destroy(this.getReader(),this.getWriter());this.reader=this.writer=null}},0,0,0,0,["proxy.server"],0,[Ext.data.proxy,"Server",Ext.data,"ServerProxy"],0));(Ext.cmd.derive("Ext.data.proxy.Ajax",Ext.data.proxy.Server,{alternateClassName:["Ext.data.HttpProxy","Ext.data.AjaxProxy"],isAjaxProxy:true,defaultActionMethods:{create:"POST",read:"GET",update:"POST",destroy:"POST"},config:{binary:false,headers:undefined,paramsAsJson:false,withCredentials:false,useDefaultXhrHeader:true,username:null,password:null,actionMethods:{create:"POST",read:"GET",update:"POST",destroy:"POST"}},doRequest:function(i){var m=this,l=m.getWriter(),n=m.buildRequest(i),j=m.getMethod(n),h,k;if(l&&i.allowWrite()){n=l.write(n)}n.setConfig({binary:m.getBinary(),headers:m.getHeaders(),timeout:m.getTimeout(),scope:m,callback:m.createRequestCallback(n,i),method:j,useDefaultXhrHeader:m.getUseDefaultXhrHeader(),disableCaching:false});if(j.toUpperCase()!=="GET"&&m.getParamsAsJson()){k=n.getParams();if(k){h=n.getJsonData();if(h){h=Ext.Object.merge({},h,k)}else{h=k}n.setJsonData(h);n.setParams(undefined)}}if(m.getWithCredentials()){n.setWithCredentials(true);n.setUsername(m.getUsername());n.setPassword(m.getPassword())}return m.sendRequest(n)},sendRequest:function(b){b.setRawRequest(Ext.Ajax.request(b.getCurrentConfig()));this.lastRequest=b;return b},abort:function(b){b=b||this.lastRequest;if(b){Ext.Ajax.abort(b.getRawRequest())}},getMethod:function(f){var h=this.getActionMethods(),e=f.getAction(),g;if(h){g=h[e]}return g||this.defaultActionMethods[e]},createRequestCallback:function(f,e){var d=this;return function(b,a,c){if(f===d.lastRequest){d.lastRequest=null}d.processResponse(a,e,f,c)}},destroy:function(){this.lastRequest=null;Ext.data.proxy.Server.prototype.destroy.call(this)}},0,0,0,0,["proxy.ajax"],0,[Ext.data.proxy,"Ajax",Ext.data,"HttpProxy",Ext.data,"AjaxProxy"],0));(Ext.cmd.derive("Ext.data.reader.Json",Ext.data.reader.Reader,{alternateClassName:"Ext.data.JsonReader",config:{record:null,metaProperty:"metaData",useSimpleAccessors:false,preserveRawData:false},updateRootProperty:function(){this.forceBuildExtractors()},updateMetaProperty:function(){this.forceBuildExtractors()},readRecords:function(i,j,g){var f=this,h;if(f.getMeta){h=f.getMeta(i);if(h){f.onMetaChange(h)}}else{if(i.metaData){f.onMetaChange(i.metaData)}}return Ext.data.reader.Reader.prototype.readRecords.call(this,i,j,g)},getResponseData:function(e){var d;try{return Ext.decode(e.responseText)}catch(f){d=this.createReadError(f.message);Ext.Logger.warn("Unable to parse the JSON returned by the server");this.fireEvent("exception",this,e,d);return d}},buildExtractors:function(){var f=this,e,d;if(Ext.data.reader.Reader.prototype.buildExtractors.apply(this,arguments)){e=f.getMetaProperty();d=f.getRootProperty();if(d){f.getRoot=f.getAccessor(d)}else{f.getRoot=Ext.identityFn}if(e){f.getMeta=f.getAccessor(e)}}},extractData:function(h,j){var i=this.getRecord(),k=[],l,g;if(i){l=h.length;if(!l&&Ext.isObject(h)){l=1;h=[h]}for(g=0;g<l;g++){k[g]=h[g][i]}}else{k=h}return Ext.data.reader.Reader.prototype.extractData.call(this,k,j)},getModelData:function(b){return this.getPreserveRawData()?Ext.apply({},b):b},createAccessor:(function(){var b=/[\[\.]/;return function(c){var w=this,F=w.getUseSimpleAccessors(),D,G,z,C,E,i,H,u,v,y,x,B,a,A;if(!(c||c===0)){return}if(typeof c==="function"){return c}if(!F){D=String(c).search(b)}if(F===true||D<0){G=function(d){return d[c]}}else{z="raw";C=[];E="";i=0;A=c.length;for(B=0;B<=A;++B){x=c[B];H=x===".";u=x==="[";v=x==="]";y=H||u||v||!x;if(!y||i>1||(i&&!v)){E+=x}else{if(y){a=false;if(u){++i}else{if(v){--i;a=true}}if(E){if(a){E="["+E+"]"}else{E="."+E}z+=E;C.push(""+z);E=""}}}}G=C.join(" && ");G=Ext.functionFactory("raw","return "+G)}return G}}()),createFieldAccessor:function(h){var f=this,g=h.mapping,j=g||g===0,i=j?g:h.name;if(j){if(typeof i==="function"){return function(a){return h.mapping(a,f)}}else{return f.createAccessor(i)}}},getAccessorKey:function(c){var d=this.getUseSimpleAccessors()?"simple":"";return this.$className+d+c},privates:{copyFrom:function(b){Ext.data.reader.Reader.prototype.copyFrom.call(this,b);this.getRoot=b.getRoot}}},0,0,0,0,["reader.json"],0,[Ext.data.reader,"Json",Ext.data,"JsonReader"],0));(Ext.cmd.derive("Ext.data.writer.Json",Ext.data.writer.Writer,{alternateClassName:"Ext.data.JsonWriter",config:{rootProperty:undefined,encode:false,allowSingle:true,expandData:false},getExpandedData:function(o){var q=o.length,n=0,j,r,m,p,l,i=function(c,b){var a={};a[c]=b;return a};for(;n<q;n++){j=o[n];for(r in j){if(j.hasOwnProperty(r)){m=r.split(".");p=m.length-1;if(p>0){l=j[r];for(;p>0;p--){l=i(m[p],l)}j[m[0]]=j[m[0]]||{};Ext.Object.merge(j[m[0]],l);delete j[r]}}}}return o},writeRecords:function(l,k){var m=this,i=m.getRootProperty(),n,j,h;if(m.getExpandData()){k=m.getExpandedData(k)}if(m.getAllowSingle()&&k.length===1){k=k[0];j=true}h=this.getTransform();if(h){k=h(k,l)}if(m.getEncode()){if(i){l.setParam(i,Ext.encode(k))}else{}}else{if(j||(k&&k.length)){n=l.getJsonData()||{};if(i){n[i]=k}else{n=k}l.setJsonData(n)}}return l}},0,0,0,0,["writer.json"],0,[Ext.data.writer,"Json",Ext.data,"JsonWriter"],0));(Ext.cmd.derive("Ext.util.Group",Ext.util.Collection,{config:{groupKey:null},$endUpdatePriority:2001},0,0,0,0,0,0,[Ext.util,"Group"],0));(Ext.cmd.derive("Ext.util.SorterCollection",Ext.util.Collection,{isSorterCollection:true,$sortable:null,sortFn:null,config:{sorterOptionsFn:null,sorterOptionsScope:null},constructor:function(d){var c=this;c.sortFn=Ext.util.Sorter.createComparator(c);Ext.util.Collection.prototype.constructor.call(this,d);c.setDecoder(c.decodeSorter)},addSort:function(n,o,t){var p=this,s,r,u,l,v,m,q;if(!n){p.beginUpdate();p.endUpdate()}else{l=p.getOptions();if(n instanceof Array){q=n;t=o;o=null}else{if(Ext.isString(n)){if(!(m=p.get(n))){q=[{property:n,direction:o||l.getDefaultSortDirection()}]}else{q=[m]}}else{if(Ext.isFunction(n)){q=[{sorterFn:n,direction:o||l.getDefaultSortDirection()}]}else{q=[n];t=o;o=null}}}t=p._sortModes[t||"replace"];v=p.getAt(0);s=p.length;r=t.append?s:0;p.beginUpdate();p.splice(r,t.replace?s:0,q);if(t.multi){s=p.length;u=l.getMultiSortLimit();if(s>u){p.removeAt(u,s)}}if(m&&o){m.setDirection(o)}else{if(r===0&&v&&v===p.getAt(0)){v.toggle()}}p.endUpdate()}},clear:function(){this.beginUpdate();Ext.util.Collection.prototype.clear.call(this);this.endUpdate(this.items)},getSortFn:function(){return this.sortFn},getByProperty:function(h){var f=this.items,g=f.length,j,i;for(j=0;j<g;++j){i=f[j];if(i.getProperty()===h){return i}}return null},_sortModes:{append:{append:1},multi:{multi:1},prepend:{prepend:1},replace:{replace:1}},decodeSorter:function(k,r){var m=this,j=m.getOptions(),l=j.getRootProperty(),q=m.getSorterOptionsFn(),p,n,o;if(k.isSorter){if(!k.getRoot()){k.setRoot(l)}}else{n={direction:j.getDefaultSortDirection(),root:l};o=typeof k;if(o==="string"){p=m.get(k);if(p){return p}n.property=k}else{if(o==="function"){n.sorterFn=k}else{n=Ext.apply(n,k);if(n.fn){n.sorterFn=n.fn;delete n.fn}}}k=Ext.create(r||"Ext.util.Sorter",n)}if(q){q.call(m.getSorterOptionsScope()||m,k)}return k},setSorterConfigure:function(c,d){this.setSorterOptionsFn(c);this.setSorterOptionsScope(d)},decodeRemoveItems:function(r,u){var p=this,t=(u===undefined)?r:r[u];if(!t||!t.$cloned){if(r.length>u+1||!Ext.isIterable(t)){t=Ext.Array.slice(r,u)}var o=p.items,s=t.length,v=[],w,n,x,i,q;for(w=0;w<s;w++){i=t[w];if(i&&i.isSorter){v.push(i)}else{q=typeof i;if(q==="string"){i=p.get(i);if(i){v.push(i)}}else{if(q==="function"){for(x=o.length;x-->0;){n=o[x];if(n.getSorterFn()===i){v.push(n)}}}}}}t=v;t.$cloned=true}return t},getOptions:function(){return this.$sortable||this}},1,0,0,0,0,0,[Ext.util,"SorterCollection"],0));(Ext.cmd.derive("Ext.util.FilterCollection",Ext.util.Collection,{isFilterCollection:true,$filterable:null,filterFn:null,constructor:function(d){var c=this;c.filterFn=Ext.util.Filter.createFilterFn(c);Ext.util.Collection.prototype.constructor.call(this,d);c.setDecoder(c.decodeFilter)},filterData:function(b){return this.filtered?Ext.Array.filter(b,this.filterFn):b},getFilterFn:function(){return this.filterFn},isItemFiltered:function(b){return !this.filterFn(b)},decodeFilter:function(h){var e=this.getOptions(),f=e.getRootProperty(),g;if(h.isFilter){if(!h.getRoot()){h.setRoot(f)}}else{g={root:f};if(Ext.isFunction(h)){g.filterFn=h}else{g=Ext.apply(g,h);if(g.fn){g.filterFn=g.fn;delete g.fn}if(Ext.util.Filter.isInvalid(g)){return false}}h=new Ext.util.Filter(g)}return h},decodeRemoveItems:function(t,x){var n=this,w=(x===undefined)?t:t[x];if(!w.$cloned){if(t.length>x+1||!Ext.isIterable(w)){w=Ext.Array.slice(t,x)}var B=n.items,u=w.length,z=[],E,A,D,v,F,i,y,C,s;for(A=0;A<u;A++){E=w[A];if(E&&E.isFilter){z.push(E)}else{s=typeof E;D=s==="function";v=E.property!==undefined&&E.value!==undefined;F=s==="string";for(C=B.length;C-->0;){i=B[C];y=false;if(F){y=i.getProperty()===E}else{if(D){y=i.getFilterFn()===E}else{if(v){y=i.getProperty()===E.property&&i.getValue()===E.value}}}if(y){z.push(i)}}}}w=z;w.$cloned=true}return w},getOptions:function(){return this.$filterable||this}},1,0,0,0,0,0,[Ext.util,"FilterCollection"],0));(Ext.cmd.derive("Ext.util.GroupCollection",Ext.util.Collection,{isGroupCollection:true,config:{grouper:null,itemRoot:null},observerPriority:-100,onCollectionAdd:function(c,d){this.addItemsToGroups(c,d.items)},onCollectionBeforeItemChange:function(c,d){this.changeDetails=d},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},onCollectionItemChange:function(f,e){var d=e.item;if(!e.indexChanged){this.syncItemGrouping(f,d,f.getKey(d),e.oldKey,e.oldIndex)}this.changeDetails=null},onCollectionRefresh:function(b){this.removeAll();this.addItemsToGroups(b,b.items)},onCollectionRemove:function(v,u){var p=this,m=p.changeDetails,q,o,n,r,t,s,i;if(m){i=m.item;n=p.findGroupForItem(i);q=[];if(n){q.push({group:n,items:[i]})}}else{q=p.groupItems(v,u.items,false)}for(r=0,t=q.length;r<t;++r){n=(o=q[r]).group;if(n){n.remove(o.items);if(!n.length){(s||(s=[])).push(n)}}}if(s){p.remove(s)}},onCollectionSort:function(l){var m=this,j=l.getSorters(false),i,n,h,k;if(j){i=m.items;n=m.length;for(h=0;h<n;++h){k=i[h];if(k.getSorters()!==j){k.setSorters(j)}}}},onCollectionUpdateKey:function(g,e){var f=e.index,h=e.item;if(!e.indexChanged){f=g.indexOf(h);this.syncItemGrouping(g,h,e.newKey,e.oldKey,f)}},addItemsToGroups:function(c,d){this.groupItems(c,d,true)},groupItems:function(E,w,C){var v=this,F={},y=[],D=E.getGrouper(),t=v.itemGroupKeys,u,s,i,z,r,B,x,A;for(z=0,x=w.length;z<x;++z){i=D.getGroupString(r=w[z]);B=E.getKey(r);if(C){(t||(v.itemGroupKeys=t={}))[B]=i}else{if(t){delete t[B]}}if(!(u=F[i])){if(!(s=v.getByKey(i))&&C){(A||(A=[])).push(s=v.createGroup(E,i))}y.push(F[i]=u={group:s,items:[]})}u.items.push(r)}for(z=0,x=y.length;z<x;++z){u=y[z];u.group.add(u.items)}if(A){v.add(A)}return y},syncItemGrouping:function(F,r,A,x,E){var t=this,w=t.itemGroupKeys||(t.itemGroupKeys={}),D=F.getGrouper(),q=D.getGroupString(r),z=0,u=-1,v,s,B,y,C;if(x){y=w[x];delete w[x]}else{y=w[A]}w[A]=q;if(!(s=t.get(q))){s=t.createGroup(F,q);v=[s]}if(s.get(A)!==r){if(s.getCount()>0&&F.getSorters().getCount()===0){C=F.indexOf(s.items[0]);if(E<C){u=0}else{u=E-C}}if(u===-1){s.add(r)}else{s.insert(u,r)}}else{s.itemChanged(r)}if(q!==y&&(y===0||y)){B=t.get(y);if(B){B.remove(r);if(!B.length){z=[B]}}}if(v){t.splice(0,z,v)}else{if(z){t.splice(0,z)}}},createGroup:function(d,e){var f=new Ext.util.Group({groupKey:e,rootProperty:this.getItemRoot(),sorters:d.getSorters()});return f},getKey:function(b){return b.getGroupKey()},createSortFn:function(){var f=this,e=f.getGrouper(),d=f.getSorters().getSortFn();if(!e){return d}return function(b,a){return e.sort(b.items[0],a.items[0])||d(b,a)}},updateGrouper:function(d){var c=this;c.grouped=!!(d&&c.$groupable.getAutoGroup());c.onSorterChange();c.onEndUpdateSorters(c.getSorters())},destroy:function(){this.$groupable=null;Ext.util.Collection.prototype.destroy.call(this)},privates:{findGroupForItem:function(i){var f=this.items,g=f.length,j,h;for(j=0;j<g;++j){h=f[j];if(h.contains(i)){return h}}}}},0,0,0,0,0,0,[Ext.util,"GroupCollection"],0));(Ext.cmd.derive("Ext.data.Store",Ext.data.ProxyStore,{config:{data:0,clearRemovedOnLoad:true,clearOnPageLoad:true,associatedEntity:null,role:null,session:null},addRecordsOptions:{addRecords:true},loadCount:0,complete:false,moveMapCount:0,constructor:function(e){var d=this,f;if(e){if(e.buffered){return new Ext.data.BufferedStore(e)}}Ext.data.ProxyStore.prototype.constructor.call(this,e);d.getData().addObserver(d);f=d.inlineData;if(f){delete d.inlineData;d.loadInlineData(f)}},onCollectionBeginUpdate:function(){this.beginUpdate()},onCollectionEndUpdate:function(){this.endUpdate()},applyData:function(f,e){var d=this;d.getFields();d.getModel();if(f&&f.isCollection){e=f}else{if(!e){e=d.constructDataCollection()}if(f){if(d.isInitializing){d.inlineData=f}else{d.loadData(f)}}}return e},loadInlineData:function(f){var d=this,e=d.getProxy();if(e&&e.isMemoryProxy){e.setData(f);d.suspendEvents();d.read();d.resumeEvents()}else{d.removeAll(true);d.suspendEvents();d.loadData(f);d.resumeEvents()}},onCollectionAdd:function(c,d){this.onCollectionAddItems(c,d.items,d)},onCollectionFilterAdd:function(c,d){this.onCollectionAddItems(c,d)},onCollectionAddItems:function(w,A,B){var s=this,u=A.length,q=B?!B.next:false,v=s.removed,x=s.ignoreCollectionAdd,t=s.getSession(),i=B&&B.replaced,z,r,y,p;for(z=0;z<u;++z){y=A[z];if(t){t.adopt(y)}if(!x){y.join(s);if(v&&v.length){Ext.Array.remove(v,y)}r=r||y.phantom||y.dirty}}if(x){return}if(i){p=[];do{Ext.Array.push(p,i.items);i=i.next}while(i);s.setMoving(p,true)}if(B){if(B.replaced){if(q){s.fireEvent("refresh",s)}}else{s.fireEvent("add",s,A,B.at);if(q){s.fireEvent("datachanged",s)}}}if(p){s.setMoving(p,false)}s.needsSync=s.needsSync||r},onCollectionFilteredItemChange:function(){this.onCollectionItemChange.apply(this,arguments)},onCollectionItemChange:function(i,j){var k=this,h=j.item,l=j.modified||null,g=j.meta;if(k.fireChangeEvent(h)){k.onUpdate(h,g,l,j);k.fireEvent("update",k,h,g,l,j)}},fireChangeEvent:function(b){return this.getDataSource().contains(b)},afterChange:function(e,f,d){this.getData().itemChanged(e,f||null,undefined,d)},afterCommit:function(d,c){this.afterChange(d,c,Ext.data.Model.COMMIT)},afterEdit:function(d,c){this.needsSync=this.needsSync||d.dirty;this.afterChange(d,c,Ext.data.Model.EDIT)},afterReject:function(b){this.afterChange(b,null,Ext.data.Model.REJECT)},afterDrop:function(b){this.getData().remove(b)},afterErase:function(b){this.removeFromRemoved(b)},addSorted:function(g){var j=this,h=j.getRemoteSort(),i=j.getData(),f;if(h){i.setSorters(j.getSorters())}f=i.findInsertionIndex(g);if(h){i.setSorters(null)}return j.insert(f,g)},remove:function(q,i,l){var k=this,p=k.getDataSource(),m,o,r,n;if(q){if(q.isModel){if(p.indexOf(q)>-1){r=[q];m=1}else{m=0}}else{r=[];for(o=0,m=q.length;o<m;++o){n=q[o];if(n&&n.isEntity){if(!p.contains(n)){continue}}else{if(!(n=p.getAt(n))){continue}}r.push(n)}m=r.length}}if(!m){return[]}k.removeIsMove=i===true;k.removeIsSilent=l;p.remove(r);k.removeIsSilent=false;return r},onCollectionRemove:function(v,B){var q=this,u=q.removed,z=B.items,s=z.length,t=B.at,A=B.replacement,i=q.removeIsMove||(A&&Ext.Array.equals(z,A.items)),r=q.removeIsSilent,p=!B.next,x=q.getDataSource(),y,w;if(q.ignoreCollectionRemove){return}if(A){q.setMoving(A.items,true)}for(y=0;y<s;++y){w=z[y];if(!x.contains(w)){if(u&&!i&&!w.phantom&&!w.erasing){w.removedFrom=t+y;u.push(w);q.needsSync=true}else{w.unjoin(q)}}}if(!r){if(!A||!A.items.length){q.fireEvent("remove",q,z,t,i);if(p){q.fireEvent("datachanged",q)}}}if(A){q.setMoving(A.items,false)}},onFilterEndUpdate:function(){Ext.data.ProxyStore.prototype.onFilterEndUpdate.apply(this,arguments);this.callObservers("Filter")},removeAt:function(e,d){var f=this.getData();e=Math.max(e,0);if(e<f.length){if(arguments.length===1){d=1}else{if(!d){return}}f.removeAt(e,d)}},removeAll:function(f){var j=this,i=j.getData(),h=j.hasListeners.clear,g=i.getRange();if(i.length){j.removeIsSilent=true;j.callObservers("BeforeRemoveAll");i.removeAll();j.removeIsSilent=false;if(!f){j.fireEvent("clear",j,g);j.fireEvent("datachanged",j)}j.callObservers("AfterRemoveAll",[!!f])}return g},setRecords:function(d){var c=this.getCount();++this.loadCount;if(c){this.getData().splice(0,c,d)}else{this.add(d)}},splice:function(e,f,d){return this.getData().splice(e,f,d)},onProxyLoad:function(f){var i=this,j=f.getResultSet(),g=f.getRecords(),h=f.wasSuccessful();if(i.destroyed){return}if(j){i.totalCount=j.getTotal()}if(h){g=i.processAssociation(g);i.loadRecords(g,f.getAddRecords()?{addRecords:true}:undefined)}else{i.loading=false}if(i.hasListeners.load){i.fireEvent("load",i,g,h,f)}i.callObservers("AfterLoad",[g,h,f])},filterDataSource:function(j){var i=this.getDataSource(),g=i.items,h=g.length,l=[],k;for(k=0;k<h;k++){if(j.call(i,g[k])){l.push(g[k])}}return l},getNewRecords:function(){return this.filterDataSource(this.filterNew)},getRejectRecords:function(){return this.filterDataSource(this.filterRejects)},getUpdatedRecords:function(){return this.filterDataSource(this.filterUpdated)},loadData:function(i,h){var j=this,k=i.length,l=[],g;for(g=0;g<k;g++){l.push(j.createModel(i[g]))}l=j.processAssociation(l);j.loadRecords(l,h?j.addRecordsOptions:undefined)},loadRawData:function(l,h){var m=this,k=m.getSession(),i=m.getProxy().getReader().read(l,k?{recordCreator:k.recordCreator}:undefined),n=i.getRecords(),j=i.getSuccess();if(j){m.totalCount=i.getTotal();m.loadRecords(n,h?m.addRecordsOptions:undefined)}return j},loadRecords:function(j,p){var l=this,m=j.length,k=l.getData(),n,o,i;if(p){n=p.addRecords}if(!l.getRemoteSort()&&!l.getSortOnLoad()){i=true;k.setAutoSort(false)}if(!n){l.clearData(true)}l.loading=false;l.ignoreCollectionAdd=true;l.callObservers("BeforePopulate");k.add(j);l.ignoreCollectionAdd=false;if(i){k.setAutoSort(true)}for(o=0;o<m;o++){j[o].join(l)}++l.loadCount;l.complete=true;l.fireEvent("datachanged",l);l.fireEvent("refresh",l);l.callObservers("AfterPopulate")},loadPage:function(g,f){var h=this,e=h.getPageSize();h.currentPage=g;f=Ext.apply({page:g,start:(g-1)*e,limit:e,addRecords:!h.getClearOnPageLoad()},f);h.read(f)},nextPage:function(b){this.loadPage(this.currentPage+1,b)},previousPage:function(b){this.loadPage(this.currentPage-1,b)},clearData:function(r){var l=this,n=l.removed,q=l.getDataSource(),m=l.getClearRemovedOnLoad(),i=n&&r&&!m,t,p,s,o;if(q){t=q.items;for(s=0,o=t.length;s<o;++s){p=t[s];if(i&&Ext.Array.contains(n,p)){continue}p.unjoin(l)}l.ignoreCollectionRemove=true;l.callObservers("BeforeClear");q.removeAll();l.ignoreCollectionRemove=false;l.callObservers("AfterClear")}if(n&&(!r||m)){n.length=0}},onIdChanged:function(f,d,e){this.getData().updateKey(f,d);this.fireEvent("idchanged",this,f,d,e)},commitChanges:function(){var h=this,g=h.getModifiedRecords(),f=g.length,e=0;Ext.suspendLayouts();h.beginUpdate();for(;e<f;e++){g[e].commit()}h.cleanRemoved();h.endUpdate();Ext.resumeLayouts(true)},filterNewOnly:function(b){return b.phantom===true},filterRejects:function(b){return b.phantom||b.dirty},rejectChanges:function(){var k=this,i=k.getRejectRecords(),m=i.length,o,q,r,l,p,n;Ext.suspendLayouts();k.beginUpdate();for(o=0;o<m;o++){q=i[o];if(q.phantom){r=r||[];r.push(q)}else{q.reject()}}if(r){k.remove(r);for(o=0,m=r.length;o<m;++o){r[o].reject()}}i=k.getRawRemovedRecords();if(i){m=i.length;l=!k.getRemoteSort()&&k.isSorted();if(l){p=k.getData();n=p.getAutoSort();p.setAutoSort(false)}for(o=m-1;o>=0;o--){q=i[o];q.reject();if(!l){k.insert(q.removedFrom||0,q)}}if(l){p.setAutoSort(n);k.add(i)}i.length=0}k.endUpdate();Ext.resumeLayouts(true)},onDestroy:function(){var e=this,f=e.loadTask,g=e.getData(),h=g.getSource();e.clearData();Ext.data.ProxyStore.prototype.onDestroy.call(this);e.setSession(null);e.observers=null;if(f){f.cancel();e.loadTask=null}if(h){h.destroy()}},privates:{fetch:function(c){c=Ext.apply({},c);this.setLoadOptions(c);var d=this.createOperation("read",c);d.execute()},onBeforeLoad:function(b){this.callObservers("BeforeLoad",[b])},onRemoteFilterSet:function(d,c){if(d){this.getData().setFilters(c?null:d)}Ext.data.ProxyStore.prototype.onRemoteFilterSet.call(this,d,c)},onRemoteSortSet:function(d,f){var e=this.getData();if(d){e.setSorters(f?null:d)}e.setAutoGroup(!f);Ext.data.ProxyStore.prototype.onRemoteSortSet.call(this,d,f)},isMoving:function(l,j){var i=this.moveMap,g=0,h,k;if(i){if(l){if(Ext.isArray(l)){for(k=0,h=l.length;k<h;++k){g+=i[l[k].id]?1:0}}else{if(i[l.id]){++g}}}else{g=j?i:this.moveMapCount}}return g},setLoadOptions:function(j){var i=this,g=i.getPageSize(),h,f;if(i.getRemoteSort()&&!j.grouper){f=i.getGrouper();if(f){j.grouper=f}}if(g||"start" in j||"limit" in j||"page" in j){j.page=j.page!=null?j.page:i.currentPage;j.start=(j.start!==undefined)?j.start:(j.page-1)*g;j.limit=j.limit!=null?j.limit:g;i.currentPage=j.page}j.addRecords=j.addRecords||false;if(!j.recordCreator){h=i.getSession();if(h){j.recordCreator=h.recordCreator}}Ext.data.ProxyStore.prototype.setLoadOptions.call(this,j)},setMoving:function(h,k){var m=this,l=m.moveMap||(m.moveMap={}),i=h.length,n,j;for(n=0;n<i;++n){j=h[n].id;if(k){if(l[j]){++l[j]}else{l[j]=1;++m.moveMapCount}}else{if(--l[j]===0){delete l[j];--m.moveMapCount}}}if(m.moveMapCount===0){m.moveMap=null}},processAssociation:function(e){var f=this,d=f.getAssociatedEntity();if(d){e=f.getRole().processLoad(f,d,e,f.getSession())}return e}}},1,0,0,0,["store.store"],[[Ext.data.LocalStore.prototype.mixinId||Ext.data.LocalStore.$className,Ext.data.LocalStore]],[Ext.data,"Store"],0));(Ext.cmd.derive("Ext.data.reader.Array",Ext.data.reader.Json,{alternateClassName:"Ext.data.ArrayReader",config:{totalProperty:undefined,successProperty:undefined},createFieldAccessor:function(g){var e=g.mapping,h=g.hasMapping()?e:g.ordinal,f;g.mapping=h;f=Ext.data.reader.Json.prototype.createFieldAccessor.apply(this,arguments);g.mapping=e;return f},getModelData:function(b){return{}}},0,0,0,0,["reader.array"],0,[Ext.data.reader,"Array",Ext.data,"ArrayReader"],0));(Ext.cmd.derive("Ext.data.ArrayStore",Ext.data.Store,{alternateClassName:["Ext.data.SimpleStore"],config:{proxy:{type:"memory",reader:"array"}},loadData:function(h,g){if(this.expandData){var i=[],f=0,j=h.length;for(;f<j;f++){i[i.length]=[h[f]]}h=i}Ext.data.Store.prototype.loadData.call(this,h,g)}},0,0,0,0,["store.array"],0,[Ext.data,"ArrayStore",Ext.data,"SimpleStore"],0));(Ext.cmd.derive("Ext.data.StoreManager",Ext.util.MixedCollection,{alternateClassName:["Ext.StoreMgr","Ext.data.StoreMgr","Ext.StoreManager"],singleton:true,register:function(){for(var d=0,c;(c=arguments[d]);d++){this.add(c)}},unregister:function(){for(var d=0,c;(c=arguments[d]);d++){this.remove(this.lookup(c))}},lookup:function(n,j){if(Ext.isArray(n)){var h=["field1"],l=!Ext.isArray(n[0]),k=n,m,i;if(l){k=[];for(m=0,i=n.length;m<i;++m){k.push([n[m]])}}else{for(m=2,i=n[0].length;m<=i;++m){h.push("field"+m)}}return new Ext.data.ArrayStore({data:k,fields:h,autoDestroy:true,autoCreated:true,expanded:l})}if(Ext.isString(n)){return this.get(n)}else{return Ext.Factory.store(n,j)}},getKey:function(b){return b.storeId}},0,0,0,0,0,0,[Ext.data,"StoreManager",Ext,"StoreMgr",Ext.data,"StoreMgr",Ext,"StoreManager"],function(){Ext.regStore=function(e,f){var a;if(Ext.isObject(e)){f=e}else{if(Ext.data.StoreManager.containsKey(e)){return Ext.data.StoreManager.lookup(e)}f.storeId=e}if(f instanceof Ext.data.Store){a=f}else{a=new Ext.data.Store(f)}Ext.data.StoreManager.register(a);return a};Ext.getStore=function(a){return Ext.data.StoreManager.lookup(a)};var b=Ext.regStore("ext-empty-store",{proxy:"memory",useModelWarning:false});b.isEmptyStore=true}));(Ext.cmd.derive("Ext.app.domain.Store",Ext.app.EventDomain,{singleton:true,type:"store",prefix:"store.",idMatchRe:/^\#/,constructor:function(){var b=this;b.callParent();b.monitor(Ext.data.AbstractStore)},match:function(g,e){var f=false,h=g.alias;if(e==="*"){f=true}else{if(this.idMatchRe.test(e)){f=g.getStoreId()===e.substring(1)}else{if(h){f=Ext.Array.indexOf(h,this.prefix+e)>-1}}}return f}},1,0,0,0,0,0,[Ext.app.domain,"Store"],0));(Ext.cmd.derive("Ext.app.route.Queue",Ext.Base,{queue:null,token:null,constructor:function(b){Ext.apply(this,b);this.queue=new Ext.util.MixedCollection()},queueAction:function(d,c){this.queue.add({route:d,args:c})},clearQueue:function(){this.queue.removeAll()},runQueue:function(){var e=this.queue,f=e.removeAt(0),d;if(f){d=f&&f.route;d.execute(this.token,f.args,this.onActionExecute,this)}},onActionExecute:function(b){if(b){this.clearQueue()}else{this.runQueue()}}},1,0,0,0,0,0,[Ext.app.route,"Queue"],0));(Ext.cmd.derive("Ext.app.route.Route",Ext.Base,{action:null,conditions:null,controller:null,allowInactive:false,url:null,before:null,caseInsensitive:false,matcherRegex:null,paramMatchingRegex:null,paramsInMatchString:null,constructor:function(d){var f=this,e;Ext.apply(f,d,{conditions:{}});e=f.url;f.paramMatchingRegex=new RegExp(/:([0-9A-Za-z\_]*)/g);f.paramsInMatchString=e.match(f.paramMatchingRegex)||[];f.matcherRegex=f.createMatcherRegex(e)},recognize:function(j){var i=this,g=i.controller,h,f;if((i.allowInactive||g.isActive())&&i.recognizes(j)){h=i.matchesFor(j);f=j.match(i.matcherRegex);f.shift();return Ext.applyIf(h,{controller:g,action:i.action,historyUrl:j,args:f})}return false},recognizes:function(b){return this.matcherRegex.test(b)},execute:function(p,l,k,o){var i=l.args||[],m=this.before,j=this.controller,n=this.createCallback(l,k,o);if(m){i.push(n);if(Ext.isString(m)){m=this.before=j[m]}if(m){m.apply(j,i)}}else{n.resume()}},matchesFor:function(l){var i={},j=this.paramsInMatchString,g=l.match(this.matcherRegex),k=0,h=j.length;g.shift();for(;k<h;k++){i[j[k].replace(":","")]=g[k]}return i},createMatcherRegex:function(t){var r=this.paramsInMatchString,m=this.conditions,q=0,o=r.length,l=Ext.util.Format.format,i=this.caseInsensitive?"i":"",s,n,p;for(;q<o;q++){s=r[q];n=m[s];p=l("{0}",n||"([%a-zA-Z0-9\\-\\_\\s,]+)");t=t.replace(new RegExp(s),p)}return new RegExp("^"+t+"$",i)},createCallback:function(f,g,e){var h=this;e=e||h;return{resume:function(){var c=h.controller,a=h.action,b;if(Ext.isString(a)){a=c[a]}f=f&&f.args?f.args:[];b=f.pop();if(b&&!Ext.isObject(b)){f.push(b)}if(a){h.action=a;a.apply(c,f)}if(g){g.call(e)}},stop:function(a){if(g){g.call(e,a)}}}}},1,0,0,0,0,0,[Ext.app.route,"Route"],0));(Ext.cmd.derive("Ext.util.History",Ext.Base,{singleton:true,alternateClassName:"Ext.History",useTopWindow:false,constructor:function(){var b=this;b.hiddenField=null;b.ready=false;b.currentToken=null;b.mixins.observable.constructor.call(b)},getHash:function(){return this.win.location.hash.substr(1)},setHash:function(c){try{this.win.location.hash=c;this.currentToken=c}catch(d){}},handleStateChange:function(b){this.currentToken=b;this.fireEvent("change",b)},startUp:function(){var b=this;b.currentToken=b.getHash();if(Ext.supports.Hashchange){Ext.get(b.win).on("hashchange",b.onHashChange,b)}else{Ext.TaskManager.start({fireIdleEvent:false,run:b.onHashChange,interval:50,scope:b})}b.ready=true;b.fireEvent("ready",b)},onHashChange:function(){var c=this,d=c.getHash();if(d!==c.hash){c.hash=d;c.handleStateChange(d)}},init:function(f,e){var d=this;if(d.ready){Ext.callback(f,e,[d]);return}if(!Ext.isReady){Ext.onInternalReady(function(){d.init(f,e)});return}d.win=d.useTopWindow?window.top:window;d.hash=d.getHash();if(f){d.on("ready",f,e,{single:true})}d.startUp()},add:function(f,e){var h=this,g=false;if(e===false||h.getToken()!==f){h.setHash(f);g=true}return g},back:function(){var b=this.useTopWindow?window.top:window;b.history.go(-1)},forward:function(){var b=this.useTopWindow?window.top:window;b.history.go(1)},getToken:function(){return this.ready?this.currentToken:this.getHash()}},1,0,0,0,0,[["observable",Ext.util.Observable]],[Ext.util,"History",Ext,"History"],0));(Ext.cmd.derive("Ext.app.route.Router",Ext.Base,{singleton:true,multipleToken:"|",queueRoutes:true,constructor:function(){var b=Ext.util.History;if(!b.ready){b.init()}b.on("change",this.onStateChange,this);this.clear()},onStateChange:function(y){var s=this,z=s.application,q=s.routes,v=q.length,i=s.queueRoutes,t=y.split(s.multipleToken),p=0,A=t.length,x,w,r,u,B;for(;p<A;p++){y=t[p];B=false;if(i){w=new Ext.app.route.Queue({token:y})}for(x=0;x<v;x++){r=q[x];u=r.recognize(y);if(u){B=true;if(i){w.queueAction(r,u)}else{r.execute(y,u)}}}if(i){w.runQueue()}if(!B&&z){z.fireEvent("unmatchedroute",y)}}},connect:function(h,g,f){var e={url:h,action:g,controller:f};if(Ext.isObject(g)){Ext.merge(e,g)}this.routes.push(new Ext.app.route.Route(e))},disconnectAll:function(l){var g=this.routes,h=g.length,j=[],i,k;for(i=0;i<h;++i){k=g[i];if(k.controller!==l){j.push(k)}}this.routes=j},recognize:function(j){var g=this.routes||[],i=0,h=g.length,l,k;for(;i<h;i++){l=g[i];k=l.recognize(j);if(k){return{route:l,args:k}}}return false},draw:function(b){b.call(this,this)},clear:function(){this.routes=[]}},1,0,0,0,0,0,[Ext.app.route,"Router"],0));(Ext.cmd.derive("Ext.app.Controller",Ext.app.BaseController,{statics:{strings:{model:{getter:"getModel",upper:"Model"},view:{getter:"getView",upper:"View"},controller:{getter:"getController",upper:"Controller"},store:{getter:"getStore",upper:"Store"},profile:{getter:"getProfile",upper:"Profiles"}},controllerRegex:/^(.*)\.controller\./,profileRegex:/^(.*)\.profile\./,createGetter:function(d,c){return function(){return this[d](c)}},getGetterName:function(l,h){var k="get",j=l.split("."),i=j.length,g;for(g=0;g<i;g++){k+=Ext.String.capitalize(j[g])}k+=h;return k},resolveNamespace:function(i,k){var j=Ext.app.Controller,l=i.prototype.isProfile?j.profileRegex:j.controllerRegex,m,n,h;m=Ext.getClassName(i);n=k.$namespace||k.namespace||Ext.app.getNamespace(m)||((h=l.exec(m))&&h[1]);return n},processDependencies:function(o,j,C,B,x,E){if(!x||!x.length){return}var w=this,s=w.strings[B],D,t,u,F,A,z,v,y;if(!Ext.isArray(x)){x=[x]}for(A=0,z=x.length;A<z;A++){F=x[A];D=w.getFullName(F,B,C,E);x[A]=t=D.absoluteName;u=D.shortName;j.push(t);v=w.getGetterName(u,s.upper);if(!o[v]){o[v]=y=w.createGetter(s.getter,F)}if(y&&B!=="controller"){y["Ext.app.getter"]=true}}},getFullName:function(n,k,l,m){var i=n,h,j;if((h=n.indexOf("@"))>0){i=n.substring(0,h);j=n.substring(h+1)+"."+i}else{if(n.indexOf(".")>0&&(Ext.ClassManager.isCreated(n)||this.hasRegisteredPrefix(n))){j=n}else{if(l){j=l+"."+k+"."+(m?m+"."+n:n);i=n}else{j=n}}}return{absoluteName:j,shortName:i}},hasRegisteredPrefix:function(e){var f=Ext.ClassManager,d=f.getPrefix(e);return d&&d!==e}},models:null,views:null,stores:null,controllers:null,config:{application:null,refs:null,active:true,moduleClassName:null},onClassExtended:function(e,h,f){var g=f.onBeforeCreated;f.onBeforeCreated=function(l,b){var a=Ext.app.Controller,d=[],k,c;c=l.prototype;k=a.resolveNamespace(l,b);if(k){c.$namespace=k}a.processDependencies(c,d,k,"model",b.models);a.processDependencies(c,d,k,"view",b.views);a.processDependencies(c,d,k,"store",b.stores);a.processDependencies(c,d,k,"controller",b.controllers);Ext.require(d,Ext.Function.pass(g,arguments,this))}},constructor:function(b){this.initAutoGetters();Ext.app.BaseController.prototype.constructor.apply(this,arguments)},normalizeRefs:function(d){var f=this,e=[];if(d){if(Ext.isObject(d)){Ext.Object.each(d,function(b,a){if(Ext.isString(a)){a={selector:a}}a.ref=b;e.push(a)})}else{if(Ext.isArray(d)){e=Ext.Array.merge(e,d)}}}d=f.refs;if(d){f.refs=null;d=f.normalizeRefs(d);if(d){e=Ext.Array.merge(e,d)}}return e},getRefMap:function(){var i=this,l=i._refMap,h,j,k,g;if(!l){h=i.getRefs();l=i._refMap={};if(h){for(g=0,k=h.length;g<k;g++){j=h[g];l[j.ref]=j.selector}}}return l},applyRefs:function(b){return this.normalizeRefs(Ext.clone(b))},updateRefs:function(b){if(b){this.ref(b)}},initAutoGetters:function(){var d=this.self.prototype,f,e;for(f in d){e=d[f];if(e&&e["Ext.app.getter"]){e.call(this)}}},doInit:function(c){var d=this;if(!d._initialized){d.init(c);d._initialized=true}},finishInit:function(i){var k=this,j=k.controllers,g,l,h;if(k._initialized&&j&&j.length){for(l=0,h=j.length;l<h;l++){g=k.getController(j[l]);g.finishInit(i)}}},init:Ext.emptyFn,onLaunch:Ext.emptyFn,activate:function(){this.setActive(true)},deactivate:function(){this.setActive(false)},isActive:function(){return this.getActive()},ref:function(i){var k=this,h=0,l=i.length,j,m,n;i=Ext.Array.from(i);k.references=k.references||[];for(;h<l;h++){j=i[h];m=j.ref;n="get"+Ext.String.capitalize(m);if(!k[n]){k[n]=Ext.Function.pass(k.getRef,[m,j],k)}k.references.push(m.toLowerCase())}},addRef:function(b){this.ref(b)},getRef:function(k,i,h){var l=this,j=l.refCache||(l.refCache={}),g=j[k];i=i||{};h=h||{};Ext.apply(i,h);if(i.forceCreate){return Ext.ComponentManager.create(i,"component")}if(!g){if(i.selector){j[k]=g=Ext.ComponentQuery.query(i.selector)[0]}if(!g&&i.autoCreate){j[k]=g=Ext.ComponentManager.create(i,"component")}if(g){g.on("beforedestroy",function(){j[k]=null})}}return g},hasRef:function(c){var d=this.references;return d&&Ext.Array.indexOf(d,c.toLowerCase())!==-1},getController:function(c){var d=this.getApplication();if(c===this.getId()){return this}return d&&d.getController(c)},getStore:function(f){var e,d;e=(f.indexOf("@")===-1)?f:f.split("@")[0];d=Ext.StoreManager.get(e);if(!d){f=Ext.app.Controller.getFullName(f,"store",this.$namespace);if(f){d=Ext.create(f.absoluteName,{id:e})}}return d},getModel:function(f){var d=Ext.app.Controller.getFullName(f,"model",this.$namespace),e=Ext.ClassManager.get(d.absoluteName);if(!e){e=Ext.data.schema.Schema.lookupEntity(f)}return e},getProfile:function(b){b=Ext.app.Controller.getFullName(b,"profile",this.$namespace);return b},getView:function(d){var c=Ext.app.Controller.getFullName(d,"view",this.$namespace);return c&&Ext.ClassManager.get(c.absoluteName)},ensureId:function(){var b=this.getId();if(!b){this.setId(this.getModuleClassName(this.$className,"controller"))}},destroy:function(h,g){var k=this,i=k.application,j,l;if(!g&&i){i.unregister(k)}k.application=null;if(h){j=k.refCache;for(l in j){if(j.hasOwnProperty(l)){Ext.destroy(j[l])}}}Ext.app.BaseController.prototype.destroy.call(this)}},1,0,0,0,0,0,[Ext.app,"Controller"],0));(Ext.cmd.derive("Ext.app.Application",Ext.app.Controller,{isApplication:true,scope:undefined,namespaces:[],paths:null,config:{name:"",appProperty:"app",profiles:[],currentProfile:null,mainView:{$value:null,lazy:true},defaultToken:null,glyphFontFamily:null},onClassExtended:function(m,r,n){var s=Ext.app.Controller,q=m.prototype,k=[],p,l,t,o;t=r.name||m.superclass.name;if(t){r.$namespace=t;Ext.app.addNamespaces(t)}if(r.namespaces){Ext.app.addNamespaces(r.namespaces)}if(r["paths processed"]){delete r["paths processed"]}else{Ext.app.setupPaths(t,("appFolder" in r)?r.appFolder:m.superclass.appFolder,r.paths)}s.processDependencies(q,k,t,"profile",r.profiles);q.getDependencies(m,r,k);if(k.length){p=n.onBeforeCreated;n.onBeforeCreated=function(c,a){var b=Ext.Array.clone(arguments);Ext.require(k,function(){return p.apply(this,b)})}}},getDependencies:Ext.emptyFn,constructor:function(d){var c=this;Ext.app.route.Router.application=c;Ext.app.Controller.prototype.constructor.apply(this,arguments);c.doInit(c);c.initNamespace();Ext.on("appupdate",c.onAppUpdate,c,{single:true});this.onProfilesReady()},onAppUpdate:Ext.emptyFn,onProfilesReady:function(){var j=this,g=j.getProfiles(),k=g.length,i,l,h;for(l=0;l<k;l++){h=Ext.create(g[l],{application:j});if(h.isActive()&&!i){i=h;j.setCurrentProfile(i)}}if(i){i.init()}j.initControllers();j.onBeforeLaunch();j.finishInitControllers()},initNamespace:function(){var f=this,e=f.getAppProperty(),d;d=Ext.namespace(f.getName());if(d){d.getApplication=function(){return f};if(e){if(!d[e]){d[e]=f}}}},initControllers:function(){var i=this,h=Ext.Array.from(i.controllers),f=i.getCurrentProfile(),g,j;i.controllers=new Ext.util.MixedCollection();for(g=0,j=h.length;g<j;g++){i.getController(h[g])}if(f){h=f.getControllers();for(g=0,j=h.length;g<j;g++){i.getController(h[g])}}},finishInitControllers:function(){var h=this,g,e,f;g=h.controllers.getRange();for(e=0,f=g.length;e<f;e++){g[e].finishInit(h)}},launch:Ext.emptyFn,onBeforeLaunch:function(){var k=this,o=Ext.util.History,r=k.getDefaultToken(),m=k.getCurrentProfile(),q,l,c,n,p;k.initMainView();if(m){m.launch()}k.launch.call(k.scope||k);k.launched=true;k.fireEvent("launch",k);q=k.controllers.items;c=q.length;for(l=0;l<c;l++){n=q[l];n.onLaunch(k)}if(!o.ready){o.init()}p=o.getToken();if(p||p===r){Ext.app.route.Router.onStateChange(p)}else{if(r){o.add(r)}}if(Ext.Microloader&&Ext.Microloader.appUpdate&&Ext.Microloader.appUpdate.updated){Ext.Microloader.fireAppUpdate()}Ext.defer(Ext.ClassManager.clearNamespaceCache,2000,Ext.ClassManager)},getModuleClassName:function(d,c){return Ext.app.Controller.getFullName(d,c,this.getName()).absoluteName},initMainView:function(){var f=this,d=f.getCurrentProfile(),e;if(d){e=d.getMainView()}if(e){f.setMainView(e)}else{f.getMainView()}},applyMainView:function(c){var d=this.getView(c);return d.create()},createController:function(b){return this.getController(b)},destroyController:function(b){if(typeof b==="string"){b=this.getController(b,true)}Ext.destroy(b)},getController:function(s,t){var i=this,r=i.controllers,n,p,o,q,m,c;p=r.get(s);if(!p){c=r.items;for(q=0,o=c.length;q<o;++q){m=c[q];n=m.getModuleClassName();if(n&&n===s){p=m;break}}}if(!p&&!t){n=i.getModuleClassName(s,"controller");p=Ext.create(n,{application:i,moduleClassName:s});r.add(p);if(i._initialized){p.doInit(i)}}return p},unregister:function(b){this.controllers.remove(b)},getApplication:function(){return this},destroy:function(g){var j=this,h=j.controllers,f=Ext.namespace(j.getName()),i=j.getAppProperty();Ext.destroy(j.viewport);if(h){h.each(function(a){a.destroy(g,true)})}j.controllers=null;Ext.app.Controller.prototype.destroy.call(this,g,true);if(f&&f[i]===j){delete f[i]}},updateGlyphFontFamily:function(b){Ext.setGlyphFontFamily(b)},applyProfiles:function(d){var c=this;return Ext.Array.map(d,function(a){return c.getModuleClassName(a,"profile")})}},1,0,0,0,0,0,[Ext.app,"Application"],0));Ext.application=function(d){var c=function(a){Ext.onReady(function(){var b=Ext.viewport;b=b&&b.Viewport;if(b&&b.setup){b.setup(a.prototype.config.viewport)}Ext.app.Application.instance=new a()})};if(typeof d==="string"){Ext.require(d,function(){c(Ext.ClassManager.get(d))})}else{d=Ext.apply({extend:"Ext.app.Application"},d);Ext.app.setupPaths(d.name,d.appFolder,d.paths);d["paths processed"]=true;Ext.define(d.name+".$application",d,function(){c(this)})}};(Ext.cmd.derive("Ext.scroll.Scroller",Ext.Evented,{factoryConfig:{defaultType:"dom"},isScroller:true,_spacerCls:"x-domscroller-spacer",config:{direction:undefined,directionLock:false,disabled:null,element:undefined,indicators:null,maxPosition:{x:0,y:0},maxUserPosition:{x:0,y:0},minPosition:{x:0,y:0},minUserPosition:{x:0,y:0},momentumEasing:null,size:null,slotSnapSize:{x:0,y:0},x:true,y:true,spacerXY:null},statics:{create:function(b){return Ext.Factory.scroller(b,Ext.supports.Touch?"touch":"dom")}},constructor:function(d){var c=this;c.position={x:0,y:0};Ext.Evented.prototype.constructor.call(this,d);c.onDomScrollEnd=Ext.Function.createBuffered(c.onDomScrollEnd,100,c)},destroy:function(){var b=this;b.setX(Ext.emptyString);b.setY(Ext.emptyString);b.setElement(null);b.onDomScrollEnd=b._partners=b.component=null;Ext.Evented.prototype.destroy.call(this)},addPartner:function(i,f){var j=this,h=j._partners||(j._partners={}),g=i._partners||(i._partners={});h[i.getId()]={scroller:i,axis:f};g[j.getId()]={scroller:j,axis:f}},applyElement:function(f,g){var i=this,j,h;if(g){i.scrollListener.destroy()}if(f){if(f.isElement){j=f}else{j=Ext.get(f)}if(j.dom===document.body){j=Ext.get(document.scrollingElement||(Ext.isWebKit?document.body:document.documentElement));h=Ext.get(Ext.isIE9m?window:document)}else{h=j}i.scrollListener=h.on({scroll:i.onDomScroll,scope:i,destroyable:true});return j}},getClientSize:function(){var b=this.getElement().dom;return{x:b.clientWidth,y:b.clientHeight}},getScrollbarSize:function(){var o=this,s=0,k=0,p,q,l,m,n,r,t;if(o.isDomScroller||Ext.supports.touchScroll===1){p=o.getElement();if(p&&!p.destroyed){l=o.getX();m=o.getY();q=p.dom;if(l||m){t=Ext.getScrollbarSize()}if(l==="scroll"){n=true}else{if(l){n=q.scrollWidth>q.clientWidth}}if(m==="scroll"){r=true}else{if(m){r=q.scrollHeight>q.clientHeight}}if(n){k=t.height}if(r){s=t.width}}}return{width:s,height:k}},getPosition:function(){return this.position},updateDirectionLock:Ext.emptyFn,updateDisabled:Ext.emptyFn,updateIndicators:Ext.emptyFn,updateMaxPosition:Ext.emptyFn,updateMaxUserPosition:Ext.emptyFn,updateMinPosition:Ext.emptyFn,updateMinUserPosition:Ext.emptyFn,updateMomenumEasing:Ext.emptyFn,updateX:Ext.emptyFn,updateY:Ext.emptyFn,onPartnerScrollStart:Ext.emptyFn,onPartnerScrollEnd:Ext.emptyFn,refresh:function(){this.fireEvent("refresh",this);return this},removePartner:function(d){var f=this._partners,e=d._partners;if(f){delete f[d.getId()]}if(e){delete (e[this.getId()])}},scrollBy:function(h,e,g){var f=this.getPosition();if(h){if(h.length){g=e;e=h[1];h=h[0]}else{if(typeof h!=="number"){g=e;e=h.y;h=h.x}}}h=(typeof h==="number")?h+f.x:null;e=(typeof e==="number")?e+f.y:null;return this.doScrollTo(h,e,g)},scrollIntoView:function(q,p,s,n){var l=this,m=l.getPosition(),o,t,k,r=l.getElement();if(q){o=Ext.fly(q).getScrollIntoViewXY(r,m.x,m.y);t=(p===false)?m.x:o.x;k=o.y;if(n){l.on({scrollend:"doHighlight",scope:l,single:true,args:[q,n]})}l.doScrollTo(t,k,s)}},isInView:function(l){var k=this,h={x:false,y:false},j,i=k.getElement(),g;if(l&&i.contains(l)){g=i.getRegion();j=Ext.fly(l).getRegion();h.x=j.right>g.left&&j.left<g.right;h.y=j.bottom>g.top&&j.top<g.bottom}return h},scrollTo:function(f,g,e){var h;if(f){if(f.length){e=g;g=f[1];f=f[0]}else{if(typeof f!=="number"){e=g;g=f.y;f=f.x}}}if(f<0||g<0){h=this.getMaxPosition();if(f<0){f+=h.x}if(g<0){g+=h.y}}this.doScrollTo(f,g,e)},updateDirection:function(h){var e=this,f,g;if(!h){f=e.getX();g=e.getY();if(f&&g){h=(g==="scroll"&&f==="scroll")?"both":"auto"}else{if(g){h="vertical"}else{if(f){h="horizontal"}}}e._direction=h}else{if(h==="auto"){f=true;g=true}else{if(h==="vertical"){f=false;g=true}else{if(h==="horizontal"){f=true;g=false}else{if(h==="both"){f="scroll";g="scroll"}}}}e.setX(f);e.setY(g)}},updateSize:function(k){var j=this,l=j.getElement(),g,h,i;if(l){g=j.getSpacer();if(k==null){g.hide()}else{if(typeof k==="number"){h=k;i=k}else{h=k.x||0;i=k.y||0}if(h>0){h-=1}if(i>0){i-=1}j.setSpacerXY({x:h,y:i});g.show()}}},deprecated:{"5":{methods:{getScroller:function(){return this}}},"5.1.0":{methods:{scrollToTop:function(b){return this.scrollTo(0,0,b)},scrollToEnd:function(b){return this.scrollTo(Infinity,Infinity,b)}}}},privates:{getSpacer:function(){var f=this,e=f._spacer,d;if(!e){d=f.getElement();e=f._spacer=d.createChild({cls:f._spacerCls,role:"presentation"});e.setVisibilityMode(2);d.position()}return e},applySpacerXY:function(c,d){if(d&&c.x===d.x&&c.y===d.y){c=undefined}return c},updateSpacerXY:function(b){this.getSpacer().setLocalXY(b.x,b.y)},convertX:function(b){return b},doHighlight:function(c,d){if(d!==true){Ext.fly(c).highlight(d)}else{Ext.fly(c).highlight()}},fireScrollStart:function(f,g){var h=this,e=h.component;h.invokePartners("onPartnerScrollStart",f,g);if(h.hasListeners.scrollstart){h.fireEvent("scrollstart",h,f,g)}if(e&&e.onScrollStart){e.onScrollStart(f,g)}Ext.GlobalEvents.fireEvent("scrollstart",h,f,g)},fireScroll:function(f,g){var h=this,e=h.component;h.invokePartners("onPartnerScroll",f,g);if(h.hasListeners.scroll){h.fireEvent("scroll",h,f,g)}if(e&&e.onScrollMove){e.onScrollMove(f,g)}Ext.GlobalEvents.fireEvent("scroll",h,f,g)},fireScrollEnd:function(f,g){var h=this,e=h.component;h.invokePartners("onPartnerScrollEnd",f,g);if(h.hasListeners.scrollend){h.fireEvent("scrollend",h,f,g)}if(e&&e.onScrollEnd){e.onScrollEnd(f,g)}Ext.GlobalEvents.fireEvent("scrollend",h,f,g)},initXStyle:function(){var c=this.getElement(),d=this.getX();if(c&&c.dom){if(!d){d="hidden"}else{if(d===true){d="auto"}}c.setStyle("overflow-x",d)}},initYStyle:function(){var d=this.getElement(),c=this.getY();if(d&&d.dom){if(!c){c="hidden"}else{if(c===true){c="auto"}}d.setStyle("overflow-y",c)}},invokePartners:function(k,j,l){var p=this,n=p._partners,i,m,o=k==="onPartnerScrollEnd";if(!p.suspendSync&!p.isReflecting){for(m in n){i=n[m].scroller;i.isReflecting=true;i[k](p,j,l);if(o){i.isReflecting=false}}}},clearReflecting:function(){this.isReflecting=false},suspendPartnerSync:function(){this.suspendSync=(this.suspendSync||0)+1},resumePartnerSync:function(){if(this.suspendSync){this.suspendSync--}},updateDomScrollPosition:function(){var g=this,h=g.getElement(),e,f=g.position;if(h&&!h.destroyed){e=g.getElementScroll(h);f.x=e.left;f.y=e.top}g.positionDirty=false;return f},getElementScroll:function(b){return b.getScroll()},onDomScroll:function(){var i=this,f,g,h,j;if(i.isTouchScroller&&Ext.supports.touchScroll===2){j=i.getElement().dom;j.scrollTop=j.scrollLeft=0;return}f=i.updateDomScrollPosition();g=f.x;h=f.y;if(!i.isScrolling){i.isScrolling=Ext.isScrolling=true;i.fireScrollStart(g,h)}i.fireScroll(g,h);i.onDomScrollEnd()},onDomScrollEnd:function(){var h=this,e=h.getPosition(),f=e.x,g=e.y;h.isScrolling=Ext.isScrolling=false;h.trackingScrollLeft=f;h.trackingScrollTop=g;h.fireScrollEnd(f,g)},onPartnerScroll:function(h,f,g){var e=h._partners[this.getId()].axis;if(e){if(e==="x"){g=null}else{if(e==="y"){f=null}}}this.doScrollTo(f,g,false,true)},restoreState:function(){var d=this,e=d.getElement(),f;if(e){f=e.dom;if(d.trackingScrollTop!==undefined){f.scrollTop=d.trackingScrollTop;f.scrollLeft=d.trackingScrollLeft}}}}},1,0,0,0,["scroller.scroller"],[[Ext.mixin.Factoryable.prototype.mixinId||Ext.mixin.Factoryable.$className,Ext.mixin.Factoryable]],[Ext.scroll,"Scroller"],0));(Ext.cmd.derive("Ext.fx.easing.Abstract",Ext.Base,{config:{startTime:0,startValue:0},isEasing:true,isEnded:false,constructor:function(b){this.initConfig(b);return this},applyStartTime:function(b){if(!b){b=Ext.Date.now()}return b},updateStartTime:function(b){this.reset()},reset:function(){this.isEnded=false},getValue:Ext.emptyFn},1,0,0,0,0,0,[Ext.fx.easing,"Abstract"],0));(Ext.cmd.derive("Ext.fx.easing.Momentum",Ext.fx.easing.Abstract,{config:{acceleration:30,friction:0,startVelocity:0},alpha:0,updateFriction:function(c){var d=Math.log(1-(c/10));this.theta=d;this.alpha=d/this.getAcceleration()},updateStartVelocity:function(b){this.velocity=b*this.getAcceleration()},updateAcceleration:function(b){this.velocity=this.getStartVelocity()*b;this.alpha=this.theta/b},getValue:function(){return this.getStartValue()-this.velocity*(1-this.getFrictionFactor())/this.theta},getFrictionFactor:function(){var b=Ext.Date.now()-this.getStartTime();return Math.exp(b*this.alpha)},getVelocity:function(){return this.getFrictionFactor()*this.velocity}},0,0,0,0,0,0,[Ext.fx.easing,"Momentum"],0));(Ext.cmd.derive("Ext.fx.easing.Bounce",Ext.fx.easing.Abstract,{config:{springTension:0.3,acceleration:30,startVelocity:0},getValue:function(){var d=Ext.Date.now()-this.getStartTime(),f=(d/this.getAcceleration()),e=f*Math.pow(Math.E,-this.getSpringTension()*f);return this.getStartValue()+(this.getStartVelocity()*e)}},0,0,0,0,0,0,[Ext.fx.easing,"Bounce"],0));(Ext.cmd.derive("Ext.fx.easing.BoundMomentum",Ext.fx.easing.Abstract,{config:{momentum:null,bounce:null,minMomentumValue:0,maxMomentumValue:0,minVelocity:0.01,startVelocity:0},applyMomentum:function(d,c){return Ext.factory(d,Ext.fx.easing.Momentum,c)},applyBounce:function(d,c){return Ext.factory(d,Ext.fx.easing.Bounce,c)},updateStartTime:function(b){this.getMomentum().setStartTime(b);Ext.fx.easing.Abstract.prototype.updateStartTime.apply(this,arguments)},updateStartVelocity:function(b){this.getMomentum().setStartVelocity(b)},updateStartValue:function(b){this.getMomentum().setStartValue(b)},reset:function(){this.lastValue=null;this.isBouncingBack=false;this.isOutOfBound=false;return Ext.fx.easing.Abstract.prototype.reset.apply(this,arguments)},getValue:function(){var t=this.getMomentum(),k=this.getBounce(),p=t.getStartVelocity(),o=p>0?1:-1,n=this.getMinMomentumValue(),q=this.getMaxMomentumValue(),r=(o==1)?q:n,m=this.lastValue,l,s;if(p===0){return this.getStartValue()}if(!this.isOutOfBound){l=t.getValue();s=t.getVelocity();if(Math.abs(s)<this.getMinVelocity()){this.isEnded=true}if(l>=n&&l<=q){return l}this.isOutOfBound=true;k.setStartTime(Ext.Date.now()).setStartVelocity(s).setStartValue(r)}l=k.getValue();if(!this.isEnded){if(!this.isBouncingBack){if(m!==null){if((o==1&&l<m)||(o==-1&&l>m)){this.isBouncingBack=true}}}else{if(Math.round(l)==r){this.isEnded=true}}}this.lastValue=l;return l}},0,0,0,0,0,0,[Ext.fx.easing,"BoundMomentum"],0));(Ext.cmd.derive("Ext.fx.easing.Linear",Ext.fx.easing.Abstract,{config:{duration:0,endValue:0},updateStartValue:function(b){this.distance=this.getEndValue()-b},updateEndValue:function(b){this.distance=b-this.getStartValue()},getValue:function(){var d=Ext.Date.now()-this.getStartTime(),c=this.getDuration();if(d>c){this.isEnded=true;return this.getEndValue()}else{return this.getStartValue()+((d/c)*this.distance)}}},0,0,0,0,["easing.linear"],0,[Ext.fx.easing,"Linear"],0));(Ext.cmd.derive("Ext.fx.easing.EaseOut",Ext.fx.easing.Linear,{config:{exponent:4,duration:1500},getValue:function(){var m=Ext.Date.now()-this.getStartTime(),o=this.getDuration(),q=this.getStartValue(),k=this.getEndValue(),r=this.distance,p=m/o,l=1-p,n=1-Math.pow(l,this.getExponent()),j=q+(n*r);if(m>=o){this.isEnded=true;return k}return j}},0,0,0,0,["easing.ease-out"],0,[Ext.fx.easing,"EaseOut"],0));(Ext.cmd.derive("Ext.util.translatable.Abstract",Ext.Evented,{config:{useWrapper:null,easing:null,easingX:null,easingY:null},x:0,y:0,activeEasingX:null,activeEasingY:null,isAnimating:false,isTranslatable:true,constructor:function(b){this.mixins.observable.constructor.call(this,b);this.position={x:0,y:0}},factoryEasing:function(b){return Ext.factory(b,Ext.fx.easing.Linear,null,"easing")},applyEasing:function(b){if(!this.getEasingX()){this.setEasingX(this.factoryEasing(b))}if(!this.getEasingY()){this.setEasingY(this.factoryEasing(b))}},applyEasingX:function(b){return this.factoryEasing(b)},applyEasingY:function(b){return this.factoryEasing(b)},doTranslate:Ext.emptyFn,translate:function(e,f,d){if(d){return this.translateAnimated(e,f,d)}if(this.isAnimating){this.stopAnimation()}if(!isNaN(e)&&typeof e=="number"){this.x=e}if(!isNaN(f)&&typeof f=="number"){this.y=f}this.doTranslate(e,f)},translateAxis:function(f,i,j){var g,h;if(f=="x"){g=i}else{h=i}return this.translate(g,h,j)},getPosition:function(){var c=this,d=c.position;d.x=-c.x;d.y=-c.y;return d},animate:function(c,d){this.activeEasingX=c;this.activeEasingY=d;this.isAnimating=true;this.lastX=null;this.lastY=null;Ext.AnimationQueue.start(this.doAnimationFrame,this);this.fireEvent("animationstart",this,this.x,this.y);return this},translateAnimated:function(i,k,m){var n=this;if(!Ext.isObject(m)){m={}}if(n.isAnimating){n.stopAnimation()}n.callback=m.callback;n.callbackScope=m.scope;var o=Ext.Date.now(),l=m.easing,p=(typeof i=="number")?(m.easingX||l||n.getEasingX()||true):null,j=(typeof k=="number")?(m.easingY||l||n.getEasingY()||true):null;if(p){p=n.factoryEasing(p);p.setStartTime(o);p.setStartValue(n.x);p.setEndValue(i);if("duration" in m){p.setDuration(m.duration)}}if(j){j=n.factoryEasing(j);j.setStartTime(o);j.setStartValue(n.y);j.setEndValue(k);if("duration" in m){j.setDuration(m.duration)}}return n.animate(p,j)},doAnimationFrame:function(){var j=this,l=j.activeEasingX,g=j.activeEasingY,k=Date.now(),h,i;if(!j.isAnimating){return}j.lastRun=k;if(l===null&&g===null){j.stopAnimation();return}if(l!==null){j.x=h=Math.round(l.getValue());if(l.isEnded){j.activeEasingX=null;j.fireEvent("axisanimationend",j,"x",h)}}else{h=j.x}if(g!==null){j.y=i=Math.round(g.getValue());if(g.isEnded){j.activeEasingY=null;j.fireEvent("axisanimationend",j,"y",i)}}else{i=j.y}if(j.lastX!==h||j.lastY!==i){j.doTranslate(h,i);j.lastX=h;j.lastY=i}j.fireEvent("animationframe",j,h,i)},stopAnimation:function(){var b=this;if(!b.isAnimating){return}b.activeEasingX=null;b.activeEasingY=null;b.isAnimating=false;Ext.AnimationQueue.stop(b.doAnimationFrame,b);b.fireEvent("animationend",b,b.x,b.y);if(b.callback){b.callback.call(b.callbackScope);b.callback=null}},refresh:function(){this.translate(this.x,this.y)},destroy:function(){if(this.isAnimating){this.stopAnimation()}Ext.Evented.prototype.destroy.call(this)}},1,0,0,0,0,0,[Ext.util.translatable,"Abstract"],0));(Ext.cmd.derive("Ext.util.translatable.Dom",Ext.util.translatable.Abstract,{config:{element:null},applyElement:function(b){if(!b){return}return Ext.get(b)},updateElement:function(){this.refresh()}},0,0,0,0,0,0,[Ext.util.translatable,"Dom"],0));(Ext.cmd.derive("Ext.util.translatable.CssTransform",Ext.util.translatable.Dom,{doTranslate:function(e,f){var d=this.getElement();if(!this.destroyed&&!d.destroyed){d.translate(e,f)}},destroy:function(){var b=this.getElement();if(b&&!b.destroyed){b.dom.style.webkitTransform=null}Ext.util.translatable.Dom.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.util.translatable,"CssTransform"],0));(Ext.cmd.derive("Ext.util.translatable.ScrollPosition",Ext.util.translatable.Dom,{type:"scrollposition",config:{useWrapper:true},getWrapper:function(){var f=this.wrapper,d=this.getElement(),e;if(!f){e=d.getParent();if(!e){return null}if(e.hasCls("x-translatable-hboxfix")){e=e.getParent()}if(this.getUseWrapper()){f=d.wrap()}else{f=e}d.addCls("x-translatable");f.addCls("x-translatable-container");this.wrapper=f;f.on("painted",function(){if(!this.isAnimating){this.refresh()}},this);this.refresh()}return f},doTranslate:function(f,g){var h=this.getWrapper(),e;if(h){e=h.dom;if(typeof f=="number"){e.scrollLeft=500000-f}if(typeof g=="number"){e.scrollTop=500000-g}}},destroy:function(){var d=this,e=d.getElement(),f=d.wrapper;if(f){if(!e.destroyed){if(d.getUseWrapper()){f.doReplaceWith(e)}e.removeCls("x-translatable")}if(!f.destroyed){f.removeCls("x-translatable-container");f.un("painted","refresh",d)}delete d.wrapper;delete d._element}Ext.util.translatable.Dom.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.util.translatable,"ScrollPosition"],0));(Ext.cmd.derive("Ext.util.translatable.ScrollParent",Ext.util.translatable.Dom,{isScrollParent:true,applyElement:function(d){var c=Ext.get(d);if(c){this.parent=c.parent()}return c},doTranslate:function(e,f){var d=this.parent;d.setScrollLeft(Math.round(-e));d.setScrollTop(Math.round(-f))},getPosition:function(){var f=this,e=f.position,d=f.parent;e.x=d.getScrollLeft();e.y=d.getScrollTop();return e}},0,0,0,0,0,0,[Ext.util.translatable,"ScrollParent"],0));(Ext.cmd.derive("Ext.util.translatable.CssPosition",Ext.util.translatable.Dom,{doTranslate:function(e,f){var d=this.getElement().dom.style;if(typeof e=="number"){d.left=e+"px"}if(typeof f=="number"){d.top=f+"px"}},destroy:function(){var b=this.getElement().dom.style;b.left=null;b.top=null;Ext.util.translatable.Dom.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.util.translatable,"CssPosition"],0));(Ext.cmd.derive("Ext.util.Translatable",Ext.Base,{constructor:function(d){var c=Ext.util.translatable;switch(Ext.browser.getPreferredTranslationMethod(d)){case"scrollposition":return new c.ScrollPosition(d);case"scrollparent":return new c.ScrollParent(d);case"csstransform":return new c.CssTransform(d);case"cssposition":return new c.CssPosition(d)}}},1,0,0,0,0,0,[Ext.util,"Translatable"],0));(Ext.cmd.derive("Ext.scroll.Indicator",Ext.Widget,{config:{axis:null,hideAnimation:true,hideDelay:0,scroller:null,minLength:24},defaultHideAnimation:{to:{opacity:0},duration:300},names:{x:{side:"l",getSize:"getHeight",setLength:"setWidth",translate:"translateX"},y:{side:"t",getSize:"getWidth",setLength:"setHeight",translate:"translateY"}},oppositeAxis:{x:"y",y:"x"},cls:"x-scroll-indicator",applyHideAnimation:function(b){if(b){b=Ext.mergeIf({onEnd:this.onHideAnimationEnd,scope:this},this.defaultHideAnimation,b)}return b},constructor:function(e){var f=this,d;Ext.Widget.prototype.constructor.call(this,e);d=f.getAxis();f.names=f.names[d];f.element.addCls(f.cls+" "+f.cls+"-"+d)},hide:function(){var c=this,d=c.getHideDelay();if(d){c._hideTimer=Ext.defer(c.doHide,d,c)}else{c.doHide()}},setValue:function(r){var t=this,B=t.element,u=t.names,A=t.getAxis(),w=t.getScroller(),x=w.getMaxUserPosition()[A],q=w.getElementSize()[A],v=t.length,C=t.getMinLength(),D=v,y=q-v-t.sizeAdjust,p=Math.round,s=Math.max,z;if(r<0){D=p(s(v+(v*r/q),C));z=0}else{if(r>x){D=p(s(v-(v*(r-x)/q),C));z=y+v-D}else{z=p(r/x*y)}}t[u.translate](z);B[u.setLength](D)},show:function(){var d=this,e=d.element,f=e.getActiveAnimation();if(f){f.end()}if(!d._inDom){d.getScroller().getElement().appendChild(e);d._inDom=true;if(!d.size){d.cacheStyles()}}d.refreshLength();clearTimeout(d._hideTimer);e.setStyle("opacity","")},privates:{cacheStyles:function(){var d=this,e=d.element,f=d.names;d.size=e[f.getSize]();d.margin=e.getMargin(f.side)},doHide:function(){var c=this.getHideAnimation(),d=this.element;if(c){d.animate(c)}else{d.setStyle("opacity",0)}},hasOpposite:function(){return this.getScroller().isAxisEnabled(this.oppositeAxis[this.getAxis()])},onHideAnimationEnd:function(){this.element.setStyle("opacity","0")},refreshLength:function(){var l=this,m=l.names,q=l.getAxis(),o=l.getScroller(),t=o.getSize()[q],k=o.getElementSize()[q],n=k/t,r=l.margin*2,p=l.hasOpposite()?(r+l.size):r,s=Math.max(Math.round((k-p)*n),l.getMinLength());l.sizeAdjust=p;l.length=s;l.element[m.setLength](s)},translateX:function(b){this.element.translate(b)},translateY:function(b){this.element.translate(0,b)}}},1,["scrollindicator"],["widget","scrollindicator"],{widget:true,scrollindicator:true},["widget.scrollindicator"],0,[Ext.scroll,"Indicator"],0));(Ext.cmd.derive("Ext.scroll.TouchScroller",Ext.scroll.Scroller,{isTouchScroller:true,config:{autoRefresh:true,bounceEasing:{duration:400},elementSize:undefined,indicators:true,fps:"auto",maxAbsoluteVelocity:6,momentumEasing:{momentum:{acceleration:30,friction:0.5},bounce:{acceleration:30,springTension:0.3},minVelocity:1},outOfBoundRestrictFactor:0.5,innerElement:null,size:undefined,slotSnapEasing:{duration:150},slotSnapOffset:{x:0,y:0},startMomentumResetTime:300,translatable:{translationMethod:"auto",useWrapper:false}},cls:"x-scroll-container",scrollerCls:"x-scroll-scroller",dragStartTime:0,dragEndTime:0,isDragging:false,isAnimating:false,isMouseEvent:{mousedown:1,mousemove:1,mouseup:1},listenerMap:{touchstart:"onTouchStart",touchmove:"onTouchMove",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd"},refreshCounter:0,constructor:function(e){var d=this,f="onEvent";d.elementListeners={touchstart:f,touchmove:f,dragstart:f,drag:f,dragend:f,scope:d};d.minPosition={x:0,y:0};d.startPosition={x:0,y:0};d.velocity={x:0,y:0};d.isAxisEnabledFlags={x:false,y:false};d.flickStartPosition={x:0,y:0};d.flickStartTime={x:0,y:0};d.lastDragPosition={x:0,y:0};d.dragDirection={x:0,y:0};Ext.scroll.Scroller.prototype.constructor.call(this,e);d.refreshAxes();d.scheduleRefresh={idle:d.doRefresh,scope:d,single:true,destroyable:true}},applyBounceEasing:function(c){var d=Ext.fx.easing.EaseOut;return{x:Ext.factory(c,d),y:Ext.factory(c,d)}},applyElementSize:function(f){var j=this.getElement(),i,g,h;if(!j){return null}i=j.dom;if(!i){return}if(f==null){g=i.clientWidth;h=i.clientHeight}else{g=f.x;h=f.y}return{x:g,y:h}},applyIndicators:function(k,n){var l=this,h,m,i,j;if(k){if(k===true){h=m={}}else{i=k.x;j=k.y;if(i||j){h=(i==null||i===true)?{}:i;m=(i==null||j===true)?{}:j}else{h=m=k}}if(n){if(h){n.x.setConfig(h)}else{n.x.destroy();n.x=null}if(m){n.y.setConfig(m)}else{n.y.destroy();n.y=null}k=n}else{k={x:null,y:null};if(h){k.x=new Ext.scroll.Indicator(Ext.applyIf({axis:"x",scroller:l},h))}if(m){k.y=new Ext.scroll.Indicator(Ext.applyIf({axis:"y",scroller:l},m))}}}else{if(n){if(n.x){n.x.destroy()}if(n.y){n.y.destroy()}n.x=n.y=null}}return k},applyMomentumEasing:function(c){var d=Ext.fx.easing.BoundMomentum;return{x:Ext.factory(c,d),y:Ext.factory(c,d)}},applyInnerElement:function(b){if(b&&!b.isElement){b=Ext.get(b)}return b},applyMaxPosition:function(h,g){if(g&&h.x===g.x&&h.y===g.y){return}var f=this.getTranslatable(),e;if(f.isAnimating){e=f.activeEasingY;if(e&&e.getStartVelocity&&e.getStartVelocity()<0&&h.y<g.y){e.setMinMomentumValue(-h.y)}}return h},applyMaxUserPosition:function(c,d){if(d&&c.x===d.x&&c.y===d.y){return}return c},applySize:function(g){var l=this.getElement(),j,k,h,i;if(typeof g==="number"){h=g;i=g}else{if(g){h=g.x;i=g.y}}if(l&&(h==null||i==null)){j=l.dom;k=this.getInnerElement().dom;if(h==null){h=Math.max(k.scrollWidth,j.clientWidth)}if(i==null){i=Math.max(k.scrollHeight,j.clientHeight)}}return{x:h,y:i}},applySlotSnapOffset:function(b){if(typeof b==="number"){b={x:b,y:b}}return b},applySlotSnapSize:function(b){if(typeof b==="number"){b={x:b,y:b}}return b},applySlotSnapEasing:function(c){var d=Ext.fx.easing.EaseOut;return{x:Ext.factory(c,d),y:Ext.factory(c,d)}},applyTranslatable:function(c,d){return Ext.factory(c,Ext.util.Translatable,d)},destroy:function(){var h=this,e=h.getElement(),g=h.getInnerElement(),f=h.sizeMonitors;if(f){f.element.destroy();f.container.destroy()}if(e&&!e.destroyed){e.removeCls(h.cls)}if(g&&!g.destroyed){g.removeCls(h.scrollerCls)}if(h._isWrapped){if(!e.destroyed){h.unwrapContent()}g.destroy()}h.setElement(null);h.setInnerElement(null);h.setIndicators(null);Ext.destroy(h.getTranslatable());Ext.scroll.Scroller.prototype.destroy.call(this)},refresh:function(e,d){var f=this;++f.refreshCounter;if(e){f.doRefresh(d)}else{if(!f.refreshScheduled){f.scheduleRefresh.args=[d];f.refreshScheduled=Ext.on(f.scheduleRefresh)}}},updateAutoRefresh:function(b){this.toggleResizeListeners(b)},updateBounceEasing:function(b){this.getTranslatable().setEasingX(b.x).setEasingY(b.y)},updateElementSize:function(){if(!this.isConfiguring){this.refreshAxes()}},updateDisabled:function(b){if(!this.isConfiguring){if(b){this.detachListeners()}else{this.attachListeners()}}},updateElement:function(l,g){var j=this,i=j.getInnerElement(),k,h;if(!i){i=l.dom.firstChild;if(!i||i.nodeType!==1||!Ext.fly(i).hasCls(j.scrollerCls)){i=j.wrapContent(l)}j.setInnerElement(i)}l.addCls(j.cls);if(j.isConfiguring){if(!j.getTranslatable().isScrollParent){l.dom.style.overflowX=l.dom.style.overflowY="";k=j.elementListeners;k.mousewheel="onMouseWheel";k.scroll={fn:"onElementScroll",delegated:false,scope:j}}}if(!j.getDisabled()){j.attachListeners()}if(!j.isConfiguring){h=j.getAutoRefresh();if(h!==false){j.toggleResizeListeners(h);if(h){j.refresh()}else{if(h===null){j.setElementSize(null)}}}}},updateFps:function(b){if(b!=="auto"){this.getTranslatable().setFps(b)}},updateMaxUserPosition:function(){this.snapToBoundary()},updateMinUserPosition:function(){this.snapToBoundary()},updateInnerElement:function(b){if(b){b.addCls(this.scrollerCls)}this.getTranslatable().setElement(b)},updateSize:function(b){if(!this.isConfiguring){if(Ext.supports.touchScroll===1){Ext.scroll.Scroller.prototype.updateSize.call(this,b)}this.refreshAxes()}},updateTranslatable:function(b){b.setElement(this.getInnerElement());if(!b.isScrollParent){b.on({animationframe:"onAnimationFrame",animationend:"onAnimationEnd",scope:this})}},updateX:function(){if(!this.isConfiguring){this.refreshAxes()}},updateY:function(){if(!this.isConfiguring){this.refreshAxes()}},privates:{attachListeners:function(){this.getElement().on(this.elementListeners)},constrainX:function(b){return Math.min(this.getMaxPosition().x,Math.max(b,0))},constrainY:function(b){return Math.min(this.getMaxPosition().y,Math.max(b,0))},convertEasingConfig:function(b){return b},detachListeners:function(){this.getElement().un(this.elementListeners)},doRefresh:function(e){var g=this,h,f;if(g.refreshScheduled){g.refreshScheduled=g.refreshScheduled.destroy()}if(g.refreshCounter&&g.getElement()){g.stopAnimation();g.getTranslatable().refresh();if(e){h=e.size;f=e.elementSize}g.setSize(h);g.setElementSize(f);g.fireEvent("refresh",g);g.refreshCounter=0}},doScrollTo:function(q,r,y,u){var s=this,t=s.isDragging,p=s.getTranslatable().isScrollParent,z=!s.isReflecting&&!p;if(s.destroyed||!s.getElement()){return s}u=u||s.isDragging;var o=s.getTranslatable(),x=s.position,n=false,v,w;if(!t||s.isAxisEnabled("x")){if(isNaN(q)||typeof q!=="number"){q=x.x}else{if(!u){q=s.constrainX(q)}if(x.x!==q){x.x=q;n=true}}v=s.convertX(-q)}if(!t||s.isAxisEnabled("y")){if(isNaN(r)||typeof r!=="number"){r=x.y}else{if(!u){r=s.constrainY(r)}if(x.y!==r){x.y=r;n=true}}w=-r}if(n){if(z){s.onScrollStart()}if(y){o.translateAnimated(v,w,y)}else{if(!p){s.onScroll()}o.translate(v,w);if(z){s.onScrollEnd()}}}else{if(y&&y.callback){y.callback()}}return s},getAnimationEasing:function(t,q){if(!this.isAxisEnabled(t)){return null}var o=this,u=o.position[t],w=o.getMinUserPosition()[t],r=o.getMaxUserPosition()[t],y=o.getMaxAbsoluteVelocity(),v=null,x=o.dragEndTime,s=q.flick.velocity[t],e=t==="x",z,p;if(u<w){v=w}else{if(u>r){v=r}}if(e){u=o.convertX(u);v=o.convertX(v)}if(v!==null){p=o.getBounceEasing()[t];p.setConfig({startTime:x,startValue:-u,endValue:-v});return p}if(s===0){return null}if(s<-y){s=-y}else{if(s>y){s=y}}p=o.getMomentumEasing()[t];z={startTime:x,startValue:-u,startVelocity:s*1.5,minMomentumValue:-r,maxMomentumValue:0};if(e){o.convertEasingConfig(z)}p.setConfig(z);return p},getSnapPosition:function(p){var o=this,k=o.getSlotSnapSize()[p],n=null,j,l,m,i;if(k!==0&&o.isAxisEnabled(p)){j=o.position[p];l=o.getSlotSnapOffset()[p];m=o.getMaxUserPosition()[p];i=Math.floor((j-l)%k);if(i!==0){if(j!==m){if(Math.abs(i)>k/2){n=Math.min(m,j+((i>0)?k-i:i-k))}else{n=j-i}}else{n=j-i}}}return n},hideIndicators:function(){var h=this,g=h.getIndicators(),f,e;if(g){if(h.isAxisEnabled("x")){f=g.x;if(f){f.hide()}}if(h.isAxisEnabled("y")){e=g.y;if(e){e.hide()}}}},isAxisEnabled:function(b){this.getX();this.getY();return this.isAxisEnabledFlags[b]},onAnimationEnd:function(){this.snapToBoundary();this.onScrollEnd()},onAnimationFrame:function(h,e,g){var f=this.position;f.x=this.convertX(-e);f.y=-g;this.onScroll()},onAxisDrag:function(G,u){if(u&&this.isAxisEnabled(G)){var t=this,z=t.flickStartPosition,s=t.flickStartTime,B=t.lastDragPosition,x=t.dragDirection,J=t.position[G],w=t.getMinUserPosition()[G],v=t.getMaxUserPosition()[G],D=t.startPosition[G],A=B[G],y=D-u,C=x[G],E=t.getOutOfBoundRestrictFactor(),I=t.getStartMomentumResetTime(),H=Ext.Date.now(),F;if(y<w){y*=E}else{if(y>v){F=y-v;y=v+F*E}}if(y>A){x[G]=1}else{if(y<A){x[G]=-1}}if((C!==0&&(x[G]!==C))||(H-s[G])>I){z[G]=J;s[G]=H}B[G]=y;return true}},onDomScroll:function(){var d=this,f,e;if(d.getTranslatable().isScrollParent){f=d.getElement().dom;e=d.position;e.x=f.scrollLeft;e.y=f.scrollTop}Ext.scroll.Scroller.prototype.onDomScroll.call(this)},onDrag:function(f){var e=this,d=e.lastDragPosition;if(!e.isDragging){return}if(e.onAxisDrag("x",e.convertX(f.deltaX))|e.onAxisDrag("y",f.deltaY)){e.doScrollTo(d.x,d.y)}},onDragEnd:function(g){var h=this,e,f;if(!h.isDragging){return}h.dragEndTime=Ext.Date.now();h.onDrag(g);h.isDragging=false;e=h.getAnimationEasing("x",g);f=h.getAnimationEasing("y",g);if(e||f){h.getTranslatable().animate(e,f)}else{h.onScrollEnd()}},onDragStart:function(t){var s=this,e=s.getDirection(),y=t.absDeltaX,z=t.absDeltaY,u=s.getDirectionLock(),w=s.startPosition,A=s.flickStartPosition,v=s.flickStartTime,x=s.lastDragPosition,B=s.position,C=s.dragDirection,q=B.x,r=B.y,D=Ext.Date.now();if(u&&e!=="both"){if((e==="horizontal"&&y>z)||(e==="vertical"&&z>y)){t.stopPropagation()}else{return}}x.x=q;x.y=r;A.x=q;A.y=r;w.x=q;w.y=r;v.x=D;v.y=D;C.x=0;C.y=0;s.dragStartTime=D;s.isDragging=true;if(!s.isScrolling){s.onScrollStart()}},onElementResize:function(d,c){this.refresh(true,{elementSize:{x:c.contentWidth,y:c.contentHeight},size:this.getAutoRefresh()?null:this.getSize()})},onElementScroll:function(d,c){c.scrollTop=c.scrollLeft=0},onEvent:function(d){var e=this,f=d.browserEvent;if((!e.self.isTouching||e.isTouching)&&((!e.getTranslatable().isScrollParent)||(!e.isMouseEvent[f.type]&&f.pointerType!=="mouse"))&&(e.getY()||e.getX())){e[e.listenerMap[d.type]](d)}},onInnerElementResize:function(d,c){this.refresh(true,{size:{x:c.width,y:c.height}})},onMouseWheel:function(p){var o=this,e=p.getWheelDeltas(),u=-e.x,w=-e.y,s=o.position,t=o.getMaxUserPosition(),x=o.getMinUserPosition(),n=Math.max,v=Math.min,q=n(v(s.x+u,t.x),x.x),r=n(v(s.y+w,t.y),x.y);u=q-s.x;w=r-s.y;if(!u&&!w){return}p.stopEvent();o.onScrollStart();o.scrollBy(u,w);o.onScroll();o.onScrollEnd()},onPartnerScrollEnd:function(e,f){var d=this;if(!d.getTranslatable().isScrollParent){d.fireScrollEnd(e,f)}Ext.scroll.Scroller.prototype.onPartnerScrollEnd.call(this,e,f);d.isScrolling=false;d.hideIndicators()},onPartnerScrollStart:function(e,f){var d=this;d.isScrolling=true;if(!d.getTranslatable().isScrollParent){d.fireScrollStart(e,f)}d.showIndicators()},onScroll:function(){var l=this,n=l.position,h=n.x,j=n.y,k=l.getIndicators(),i,m;if(k){if(l.isAxisEnabled("x")){i=k.x;if(i){i.setValue(h)}}if(l.isAxisEnabled("y")){m=k.y;if(m){m.setValue(j)}}}l.fireScroll(h,j)},onScrollEnd:function(){var c=this,d=c.position;if(c.isScrolling&&!c.isTouching&&!c.snapToSlot()){c.hideIndicators();c.isScrolling=Ext.isScrolling=false;c.fireScrollEnd(d.x,d.y)}},onScrollStart:function(){var c=this,d=c.position;if(!c.isScrolling){c.showIndicators();c.isScrolling=Ext.isScrolling=true;c.fireScrollStart(d.x,d.y)}},onTouchEnd:function(){var b=this;b.isTouching=b.self.isTouching=false;if(!b.isDragging&&b.snapToSlot()){b.onScrollStart()}},onTouchMove:function(b){b.preventDefault()},onTouchStart:function(){var b=this;b.isTouching=b.self.isTouching=true;Ext.getDoc().on({touchend:"onTouchEnd",scope:b,single:true});b.stopAnimation()},refreshAxes:function(){var r=this,t=r.isAxisEnabledFlags,l=r.getSize(),m=r.getElementSize(),n=r.getIndicators(),u,v,o,p,s,q;if(!l||!m){return}u=Math.max(0,l.x-m.x);v=Math.max(0,l.y-m.y);o=r.getX();p=r.getY();r.setMaxPosition({x:u,y:v});if(o===true||o==="auto"){t.x=!!u}else{if(o===false){t.x=false;s=n&&n.x;if(s){s.hide()}}else{if(o==="scroll"){t.x=true}}}if(p===true||p==="auto"){t.y=!!v}else{if(p===false){t.y=false;q=n&&n.y;if(q){q.hide()}}else{if(p==="scroll"){t.y=true}}}r.setMaxUserPosition({x:t.x?u:0,y:t.y?v:0});if(Ext.supports.touchScroll===1){r.initXStyle();r.initYStyle()}},showIndicators:function(){var h=this,g=h.getIndicators(),f,e;if(g){if(h.isAxisEnabled("x")){f=g.x;if(f){f.show()}}if(h.isAxisEnabled("y")){e=g.y;if(e){e.show()}}}},snapToBoundary:function(){var m=this,n=m.getPosition();if(m.isConfiguring||!(n.x||n.y)){return}var r=m.getMinUserPosition(),o=m.getMaxUserPosition(),p=r.x,q=r.y,s=o.x,t=o.y,k=Math.round(n.x),l=Math.round(n.y);if(k<p){k=p}else{if(k>s){k=s}}if(l<q){l=q}else{if(l>t){l=t}}m.doScrollTo(k,l)},snapToSlot:function(){var f=this,h=f.getSnapPosition("x"),e=f.getSnapPosition("y"),g=f.getSlotSnapEasing();if(h!==null||e!==null){f.doScrollTo(h,e,{easingX:g.x,easingY:g.y});return true}return false},stopAnimation:function(){this.getTranslatable().stopAnimation()},toggleResizeListeners:function(h){var l=this,g=l.getElement(),i,j,k;if(g){k=l.getInnerElement();if(h){i=j="on"}else{if(h===null){i="on";j="un"}else{i=j="un"}}g[i]("resize","onElementResize",l);k[j]("resize","onInnerElementResize",l)}},unwrapContent:function(){var e=this.getInnerElement().dom,d=this.getElement().dom,f;while((f=e.firstChild)){d.insertBefore(f,e)}},wrapContent:function(f){var e=document.createElement("div"),h=f.dom,g;while(g=h.lastChild){e.insertBefore(g,e.firstChild)}h.appendChild(e);this.setInnerElement(e);this._isWrapped=true;return this.getInnerElement()}}},1,0,0,0,["scroller.touch"],0,[Ext.scroll,"TouchScroller"],0));(Ext.cmd.derive("Ext.scroll.DomScroller",Ext.scroll.Scroller,{isDomScroller:true,getMaxPosition:function(){var e=this.getElement(),f=0,g=0,h;if(e&&!e.destroyed){h=e.dom;f=h.scrollWidth-h.clientWidth;g=h.scrollHeight-h.clientHeight}return{x:f,y:g}},getMaxUserPosition:function(){var j=this,f=j.getElement(),g=0,h=0,i;if(f&&!f.destroyed){i=f.dom;if(j.getX()){g=i.scrollWidth-i.clientWidth}if(j.getY()){h=i.scrollHeight-i.clientHeight}}return{x:g,y:h}},getPosition:function(){var b=this;if(b.positionDirty){b.updateDomScrollPosition()}return b.position},getSize:function(){var d=this.getElement(),e,f;if(d&&!d.destroyed){f=d.dom;e={x:f.scrollWidth,y:f.scrollHeight}}else{e={x:0,y:0}}return e},updateElement:function(c,d){this.initXStyle();this.initYStyle()},updateX:function(b){this.initXStyle()},updateY:function(b){this.initYStyle()},privates:{doScrollTo:function(n,o,v){var p=this,s=p.getElement(),r,u,m,i,q,t;if(s&&!s.destroyed){u=s.dom;i=(n===Infinity);q=(o===Infinity);if(i||q){r=p.getMaxPosition();if(i){n=r.x}if(q){o=r.y}}n=p.convertX(n);if(v){m={};if(o!=null){m.scrollTop=o}if(n!=null){m.scrollLeft=n}s.animate(Ext.mergeIf({to:{scrollTop:o,scrollLeft:n}},v))}else{if(o!=null){u.scrollTop=o}if(n!=null){u.scrollLeft=n;if(Ext.isIE8){t=u.scrollLeft;u.scrollLeft=n}}}p.positionDirty=true}},getElementScroll:function(b){return b.getScroll()},stopAnimation:function(){var b=this.getElement().getActiveAnimation();if(b){b.end()}}}},0,0,0,0,["scroller.dom"],0,[Ext.scroll,"DomScroller"],function(b){Ext.onDocumentReady(function(){b.document=new b({x:true,y:true,element:document.body})})}));Ext.define("Ext.overrides.scroll.DomScroller",{override:"Ext.scroll.DomScroller",_scrollerCls:"x-domscroller",updateElement:function(c,d){c.addCls(this._scrollerCls);arguments.callee.$previous.call(this,c,d)}});(Ext.cmd.derive("Ext.behavior.Behavior",Ext.Base,{constructor:function(b){this.component=b;b.on("destroy","onComponentDestroy",this)},onComponentDestroy:Ext.emptyFn},1,0,0,0,0,0,[Ext.behavior,"Behavior"],0));(Ext.cmd.derive("Ext.behavior.Translatable",Ext.behavior.Behavior,{setConfig:function(f){var e=this.translatable,d=this.component;if(f){if(!e){this.translatable=e=new Ext.util.Translatable(f);e.setElement(d.renderElement);e.on("destroy","onTranslatableDestroy",this)}else{if(Ext.isObject(f)){e.setConfig(f)}}}else{if(e){e.destroy()}}return this},getTranslatable:function(){return this.translatable},onTranslatableDestroy:function(){delete this.translatable},onComponentDestroy:function(){var b=this.translatable;if(b){b.destroy()}}},0,0,0,0,0,0,[Ext.behavior,"Translatable"],0));(Ext.cmd.derive("Ext.util.Draggable",Ext.Base,{isDraggable:true,config:{cls:"x-draggable",draggingCls:"x-dragging",element:null,constraint:"container",disabled:null,direction:"both",initialOffset:{x:0,y:0},translatable:{}},DIRECTION_BOTH:"both",DIRECTION_VERTICAL:"vertical",DIRECTION_HORIZONTAL:"horizontal",defaultConstraint:{min:{x:-Infinity,y:-Infinity},max:{x:Infinity,y:Infinity}},containerWidth:0,containerHeight:0,width:0,height:0,constructor:function(d){var c;this.extraConstraint={};this.initialConfig=d;this.offset={x:0,y:0};this.elementListeners={dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",resize:"onElementResize",touchstart:"onPress",touchend:"onRelease",scope:this};if(d&&d.element){c=d.element;delete d.element;this.setElement(c)}return this},applyElement:function(b){if(!b){return}return Ext.get(b)},updateElement:function(b){b.on(this.elementListeners);this.mixins.observable.constructor.call(this,this.initialConfig)},updateInitialOffset:function(e){if(typeof e=="number"){e={x:e,y:e}}var h=this.offset,f,g;h.x=f=e.x;h.y=g=e.y;this.getTranslatable().translate(f,g)},updateCls:function(b){this.getElement().addCls(b)},applyTranslatable:function(d,c){d=Ext.factory(d,Ext.util.Translatable,c);if(d){d.setElement(this.getElement())}return d},setExtraConstraint:function(b){this.extraConstraint=b||{};this.refreshConstraint();return this},addExtraConstraint:function(b){Ext.merge(this.extraConstraint,b);this.refreshConstraint();return this},applyConstraint:function(b){this.currentConstraint=b;if(!b){b=this.defaultConstraint}if(b==="container"){return Ext.merge(this.getContainerConstraint(),this.extraConstraint)}return Ext.merge({},this.extraConstraint,b)},updateConstraint:function(){this.refreshOffset()},getContainerConstraint:function(){var d=this.getContainer(),c=this.getElement();if(!d||!c.dom){return this.defaultConstraint}return{min:{x:0,y:0},max:{x:this.containerWidth-this.width,y:this.containerHeight-this.height}}},getContainer:function(){var b=this.container;if(!b){b=this.getElement().getParent();if(b){this.container=b;b.on({resize:"onContainerResize",destroy:"onContainerDestroy",scope:this})}}return b},onElementResize:function(d,c){this.width=c.width;this.height=c.height;this.refresh()},onContainerResize:function(d,c){this.containerWidth=c.width;this.containerHeight=c.height;this.refresh()},onContainerDestroy:function(){delete this.container;delete this.containerSizeMonitor},detachListeners:function(){this.getElement().un(this.elementListeners)},isAxisEnabled:function(d){var c=this.getDirection();if(d==="x"){return(c===this.DIRECTION_BOTH||c===this.DIRECTION_HORIZONTAL)}return(c===this.DIRECTION_BOTH||c===this.DIRECTION_VERTICAL)},onPress:function(b){this.fireEvent("touchstart",this,b)},onRelease:function(b){this.fireEvent("touchend",this,b)},onDragStart:function(d){var e=this,f=e.offset;if(e.getDisabled()){return false}e.fireEventedAction("dragstart",[e,d,f.x,f.y],e.initDragStart,e)},initDragStart:function(e,h,f,g){this.dragStartOffset={x:f,y:g};this.isDragging=true;this.getElement().addCls(this.getDraggingCls())},onDrag:function(c){if(!this.isDragging){return}var d=this.dragStartOffset;this.fireAction("drag",[this,c,d.x+c.deltaX,d.y+c.deltaY],this.doDrag)},doDrag:function(e,h,f,g){e.setOffset(f,g)},onDragEnd:function(b){if(!this.isDragging){return}this.onDrag(b);this.isDragging=false;this.getElement().removeCls(this.getDraggingCls());this.fireEvent("dragend",this,b,this.offset.x,this.offset.y)},setOffset:function(j,k,q){var m=this.offset,r=this.getConstraint(),n=r.min,p=r.max,o=Math.min,l=Math.max;if(this.isAxisEnabled("x")&&typeof j=="number"){j=o(l(j,n.x),p.x)}else{j=m.x}if(this.isAxisEnabled("y")&&typeof k=="number"){k=o(l(k,n.y),p.y)}else{k=m.y}m.x=j;m.y=k;this.getTranslatable().translate(j,k,q)},getOffset:function(){return this.offset},refreshConstraint:function(){this.setConstraint(this.currentConstraint)},refreshOffset:function(){var b=this.offset;this.setOffset(b.x,b.y)},refresh:function(){this.refreshConstraint();this.getTranslatable().refresh();this.refreshOffset()},enable:function(){return this.setDisabled(false)},disable:function(){return this.setDisabled(true)},destroy:function(){var f=this,e=f.getTranslatable();var d=f.getElement();if(d&&!d.destroyed){d.removeCls(f.getCls())}f.detachListeners();if(e){e.destroy()}f.callParent()}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.util,"Draggable"],0));(Ext.cmd.derive("Ext.behavior.Draggable",Ext.behavior.Behavior,{setConfig:function(h){var f=this.draggable,e=this.component,g=this.listeners;if(h){if(!f){e.setTranslatable(h.translatable);this.draggable=f=new Ext.util.Draggable(h);f.setTranslatable(e.getTranslatable());f.setElement(e.renderElement);f.on("destroy","onDraggableDestroy",this);if(g){e.on(g)}}else{if(Ext.isObject(h)){f.setConfig(h)}}}else{if(f){f.destroy()}}return this},getDraggable:function(){return this.draggable},onDraggableDestroy:function(){delete this.draggable},onComponentDestroy:function(){var b=this.draggable;if(b){b.destroy()}}},0,0,0,0,0,0,[Ext.behavior,"Draggable"],0));(Ext.cmd.derive("Ext.Component",Ext.Widget,{alternateClassName:"Ext.lib.Component",cachedConfig:{baseCls:null,cls:null,floatingCls:"x-floating",hiddenCls:"x-item-hidden",ui:null,margin:null,padding:null,border:null,styleHtmlCls:"x-html",styleHtmlContent:null},eventedConfig:{left:null,top:null,right:null,bottom:null,minWidth:null,minHeight:null,maxWidth:null,maxHeight:null,scrollable:null,docked:null,centered:null,hidden:null,disabled:null},config:{html:null,draggable:null,translatable:null,renderTo:null,zIndex:null,tpl:null,enterAnimation:null,exitAnimation:null,showAnimation:null,hideAnimation:null,tplWriteMode:"overwrite",data:null,disabledCls:"x-item-disabled",contentEl:null,record:null,plugins:null,useBodyElement:null},defaultBindProperty:"html",alignmentRegex:/^([a-z]+)-([a-z]+)(\?)?$/,isComponent:true,floating:false,rendered:false,isInner:true,activeAnimation:null,dockPositions:{top:true,right:true,bottom:true,left:true},innerElement:null,element:{reference:"element",classList:["x-unsized"]},widthLayoutSized:false,heightLayoutSized:false,layoutStretched:false,sizeState:false,sizeFlags:0,LAYOUT_WIDTH:1,LAYOUT_HEIGHT:2,LAYOUT_BOTH:3,LAYOUT_STRETCHED:4,_scrollableCfg:{x:{x:true,y:false},y:{x:false,y:true},horizontal:{x:true,y:false},vertical:{x:false,y:true},both:{x:true,y:true},"true":{x:true,y:true}},statics:{fromElement:function(f,d,e){return Ext.ComponentManager.fromElement(f,d,e)}},initialConfig:null,$initParent:null,constructor:function(g){var k=this,h=g&&g.plugins,i="responsive",l,j;k.onInitializedListeners=[];if(g){k.initialConfig=g;k.$initParent=g.$initParent}if(h){h=Ext.Array.from(h);for(l=h.length;l-->0;){j=h[l];if(j===i||j.type===i){k.initialConfig=g=Ext.apply({},g);g.plugins=h=h.slice(0);h[l]=k.createPlugin(j);g=k.initialConfig;break}}}Ext.Widget.prototype.constructor.call(this,g);k.refreshSizeState=k.doRefreshSizeState;k.refreshFloating=k.doRefreshFloating;if(k.refreshSizeStateOnInitialized){k.refreshSizeState()}if(k.refreshFloatingOnInitialized){k.refreshFloating()}k.initialize();k.triggerInitialized();if(k.fullscreen){k.fireEvent("fullscreen",k)}k.fireEvent("initialize",k)},beforeInitConfig:function(b){this.beforeInitialize.apply(this,arguments)},beforeInitialize:Ext.emptyFn,initialize:Ext.emptyFn,triggerInitialized:function(){var l=this.onInitializedListeners,k=l.length,j,m,n,i,h;if(!this.initialized){this.initialized=true;if(k>0){for(h=0;h<k;h++){j=l[h];m=j.fn;n=j.scope;i=j.args;if(typeof m=="string"){n[m].apply(n,i)}else{m.apply(n,i)}}l.length=0}}},onInitialized:function(g,h,f){var e=this.onInitializedListeners;if(!h){h=this}if(this.initialized){if(typeof g=="string"){h[g].apply(h,f)}else{g.apply(h,f)}}else{e.push({fn:g,scope:h,args:f})}},initElement:function(){var b=this;Ext.Widget.prototype.initElement.call(this);if(!b.innerElement){b.innerElement=b.element}if(!b.bodyElement){b.bodyElement=b.innerElement}},applyPlugins:function(h){var i=this,g,j,l,k;if(!h){return h}h=[].concat(h);for(l=0,j=h.length;l<j;l++){h[l]=i.createPlugin(h[l])}return h},createPlugin:function(c){if(typeof c==="string"){c={type:c}}var d=c;if(!c.isInstance){c.cmp=this;d=Ext.factory(c,null,null,"plugin");delete c.cmp}if(d.setCmp){d.setCmp(this)}return d},updatePlugins:function(g,f){var h,e;if(g){for(e=0,h=g.length;e<h;e++){g[e].init(this)}}if(f){for(e=0,h=f.length;e<h;e++){Ext.destroy(f[e])}}},applyScrollable:function(n,m){var o=this,p,i,j,k,l;if(n){if(n===true||typeof n==="string"){l=o._scrollableCfg[n];n=l}if(m){m.setConfig(n);n=m}else{i=Ext.supports.touchScroll;if(i&&!n.translatable){n.translatable={translationMethod:(i===1)?"scrollparent":"csstransform"}}if(i===1){n=Ext.Object.chain(n);n.indicators=false}n=Ext.scroll.Scroller.create(n);n.component=o;o.setUseBodyElement(true);p=o.bodyElement;if(i===2){n.setInnerElement(o.innerElement);n.setElement(p)}else{if(i===1){j=n.getX();k=n.getY();p.setStyle({overflowX:j===true?"auto":!j?"hidden":j,overflowY:k===true?"auto":!k?"hidden":k});p.disableTouchScroll()}n.setElement(p)}if(o.isPainted()){o.onPainted()}o.on("painted","onPainted",o)}}return n},onPainted:function(){var b=this.getScrollable();if(b&&b.isTouchScroller&&b.getAutoRefresh()){b.refresh()}},updateRenderTo:function(b){this.renderTo(b)},updateBorder:function(b){this.element.setStyle("border-width",b?"":"0")},updatePadding:function(b){this.innerElement.setPadding(b)},updateMargin:function(b){this.element.setMargin(b)},updateUi:function(g,i){var j=this.getBaseCls(),f=this.element,h=this.currentUi;if(j){if(i){if(h){f.removeCls(h)}else{f.removeCls(j+"-"+i)}}if(g){f.addCls(g,j);this.currentUi=j+"-"+g;if(!this.self.prototype.currentUi){this.self.prototype.currentUi=this.currentUi}}}},applyBaseCls:function(b){return b||"x-"+this.xtype},updateBaseCls:function(f,e){var h=this,g=h.getUi();if(e){this.element.removeCls(e);if(g){this.element.removeCls(this.currentUi)}}if(f){this.element.addCls(f);if(g){this.element.addCls(f,null,g);this.currentUi=f+"-"+g}}},addCls:function(j,l,k){var o=this.getCls(),m=(o)?o.slice():[],n,p,i;l=l||"";k=k||"";if(typeof j=="string"){j=[j]}n=j.length;if(!m.length&&l===""&&k===""){m=j}else{for(p=0;p<n;p++){i=l+j[p]+k;if(m.indexOf(i)==-1){m.push(i)}}}this.setCls(m)},removeCls:function(i,k,j){var n=this.getCls(),l=(n)?n.slice():[],m,h;k=k||"";j=j||"";if(typeof i=="string"){l=Ext.Array.remove(l,k+i+j)}else{m=i.length;for(h=0;h<m;h++){l=Ext.Array.remove(l,k+i[h]+j)}}this.setCls(l)},replaceCls:function(o,k,p,l){var i=this.getCls(),n=(i)?i.slice():[],m,q,r;p=p||"";l=l||"";if(typeof o=="string"){n=Ext.Array.remove(n,p+o+l)}else{if(o){m=o.length;for(q=0;q<m;q++){n=Ext.Array.remove(n,p+o[q]+l)}}}if(typeof k=="string"){n.push(p+k+l)}else{if(k){m=k.length;if(!n.length&&p===""&&l===""){n=k}else{for(q=0;q<m;q++){r=p+k[q]+l;if(n.indexOf(r)==-1){n.push(r)}}}}}this.setCls(n)},toggleCls:function(e,g){var f=this.getCls(),h=f?f.slice():[];if(typeof g!=="boolean"){g=h.indexOf(e)===-1}if(g){Ext.Array.include(h,e)}else{Ext.Array.remove(h,e)}this.setCls(h);return this},applyCls:function(b){if(typeof b=="string"){b=[b]}if(!b||!b.length){b=null}return b},updateCls:function(f,d){var e=this.element;if(e&&((f&&!d)||(!f&&d)||f.length!=d.length||Ext.Array.difference(f,d).length>0)){e.replaceCls(d,f)}},updateStyleHtmlCls:function(h,f){var g=this.innerHtmlElement,e=this.innerElement;if(this.getStyleHtmlContent()&&f){if(g){g.replaceCls(f,h)}else{e.replaceCls(f,h)}}},applyStyleHtmlContent:function(b){return Boolean(b)},updateStyleHtmlContent:function(h){var f=this.getStyleHtmlCls(),e=this.innerElement,g=this.innerHtmlElement;if(h){if(g){g.addCls(f)}else{e.addCls(f)}}else{if(g){g.removeCls(f)}else{e.addCls(f)}}},applyContentEl:function(b){if(b){return Ext.get(b)}},updateContentEl:function(d,c){if(c){c.hide();Ext.getBody().append(c)}if(d){this.setHtml(d.dom);d.show()}},updateUseBodyElement:function(b){if(b){this.link("bodyElement",this.innerElement.wrap({cls:"x-body"}))}},isCentered:function(){return Boolean(this.getCentered())},isFloating:function(){return this.floating},isDocked:function(){return Boolean(this.getDocked())},isInnerItem:function(){return this.isInner},setIsInner:function(b){if(b!==this.isInner){this.isInner=b;if(this.initialized){this.fireEvent("innerstatechange",this,b)}}},applyTop:function(b){return this.filterLengthValue(b)},applyRight:function(b){return this.filterLengthValue(b)},applyBottom:function(b){return this.filterLengthValue(b)},applyLeft:function(b){return this.filterLengthValue(b)},applyMinWidth:function(b){return this.filterLengthValue(b)},applyMinHeight:function(b){return this.filterLengthValue(b)},applyMaxWidth:function(b){return this.filterLengthValue(b)},applyMaxHeight:function(b){return this.filterLengthValue(b)},updateTop:function(b){this.element.setTop(b);this.refreshFloating()},updateRight:function(b){this.element.setRight(b);this.refreshFloating()},updateBottom:function(b){this.element.setBottom(b);this.refreshFloating()},updateLeft:function(b){this.element.setLeft(b);this.refreshFloating()},updateWidth:function(b){this.element.setWidth(b);this.refreshSizeState()},updateHeight:function(b){this.element.setHeight(b);this.refreshSizeState()},updateFlex:Ext.emptyFn,refreshSizeState:function(){this.refreshSizeStateOnInitialized=true},doRefreshSizeState:function(){var f=this.getWidth()!==null||this.widthLayoutSized||(this.getLeft()!==null&&this.getRight()!==null),j=this.getHeight()!==null||this.heightLayoutSized||(this.getTop()!==null&&this.getBottom()!==null),h=this.layoutStretched||this.hasCSSMinHeight||(!j&&this.getMinHeight()!==null),i=f&&j,g=(f&&this.LAYOUT_WIDTH)|(j&&this.LAYOUT_HEIGHT)|(h&&this.LAYOUT_STRETCHED);if(!i&&h){i=null}this.setSizeState(i);this.setSizeFlags(g)},setLayoutSizeFlags:function(b){this.layoutStretched=!!(b&this.LAYOUT_STRETCHED);this.widthLayoutSized=!!(b&this.LAYOUT_WIDTH);this.heightLayoutSized=!!(b&this.LAYOUT_HEIGHT);this.refreshSizeState()},setSizeFlags:function(h){var j=this,l=j.element,g,k,i;if(h!==this.sizeFlags){j.sizeFlags=h;g=!!(h&this.LAYOUT_WIDTH);k=!!(h&this.LAYOUT_HEIGHT);i=!!(h&this.LAYOUT_STRETCHED);l.toggleCls("x-has-width",g&&!i&&!k);l.toggleCls("x-has-height",k&&!i&&!g);if(j.initialized){j.fireEvent("sizeflagschange",j,h)}}},getSizeFlags:function(){if(!this.initialized){this.doRefreshSizeState()}return this.sizeFlags},setSizeState:function(b){if(b!==this.sizeState){this.sizeState=b;this.element.setSizeState(b);if(this.initialized){this.fireEvent("sizestatechange",this,b)}}},getSizeState:function(){if(!this.initialized){this.doRefreshSizeState()}return this.sizeState},updateMinWidth:function(b){this.element.setMinWidth(b)},updateMinHeight:function(b){this.element.setMinHeight(b);this.refreshSizeState()},updateMaxWidth:function(b){this.element.setMaxWidth(b)},updateMaxHeight:function(b){this.element.setMaxHeight(b)},applyCentered:function(b){b=Boolean(b);if(b){this.refreshInnerState=Ext.emptyFn;if(this.isFloating()){this.resetFloating()}if(this.isDocked()){this.setDocked(false)}this.setIsInner(false);delete this.refreshInnerState}return b},updateCentered:function(b){this.toggleCls(this.getFloatingCls(),b);if(!b){this.refreshInnerState()}},applyDocked:function(b){if(!b){return null}this.refreshInnerState=Ext.emptyFn;if(this.isFloating()){this.resetFloating()}if(this.isCentered()){this.setCentered(false)}this.setIsInner(false);delete this.refreshInnerState;return b},updateDocked:function(c,d){this.fireEvent("afterdockedchange",this,c,d);if(!c){this.refreshInnerState()}},resetFloating:function(){this.setTop(null);this.setRight(null);this.setBottom(null);this.setLeft(null)},refreshInnerState:function(){this.setIsInner(!this.isCentered()&&!this.isFloating()&&!this.isDocked())},refreshFloating:function(){this.refreshFloatingOnInitialized=true},doRefreshFloating:function(){var e=this,f=true,d=this.getFloatingCls();if(e.getTop()===null&&e.getBottom()===null&&e.getRight()===null&&e.getLeft()===null){f=false}else{e.refreshSizeState()}if(f!==this.floating){e.floating=f;if(f){e.refreshInnerState=Ext.emptyFn;if(e.isCentered()){e.setCentered(false)}if(e.isDocked()){e.setDocked(false)}e.setIsInner(false);delete e.refreshInnerState}e.element.toggleCls(d,f);if(e.initialized){e.fireEvent("floatingchange",e,f)}if(!f){e.refreshInnerState()}}},updateFloatingCls:function(d,c){if(this.isFloating()){this.replaceCls(c,d)}},applyDisabled:function(b){return Boolean(b)},updateDisabled:function(b){this.element.toggleCls(this.getDisabledCls(),b)},updateDisabledCls:function(d,c){if(this.isDisabled()){this.element.replaceCls(c,d)}},disable:function(){this.setDisabled(true)},enable:function(){this.setDisabled(false)},isDisabled:function(){return this.getDisabled()},applyZIndex:function(b){if(!b&&b!==0){b=null}if(b!==null){b=Number(b);if(isNaN(b)){b=null}}return b},updateZIndex:function(f){var d=this.element,e;if(d&&!d.destroyed){e=d.dom.style;if(f!==null){e.setProperty("z-index",f,"important")}else{e.removeProperty("z-index")}}},getInnerHtmlElement:function(){var d=this.innerHtmlElement,c;if(!d||!d.dom||!d.dom.parentNode){this.innerHtmlElement=d=Ext.Element.create({cls:"x-innerhtml"});if(this.getStyleHtmlContent()){c=this.getStyleHtmlCls();this.innerHtmlElement.addCls(c);this.innerElement.removeCls(c)}this.innerElement.appendChild(d)}return d},updateHtml:function(d){if(!this.destroyed){var c=this.getInnerHtmlElement();if(Ext.isElement(d)){c.setHtml("");c.append(d)}else{c.setHtml(d)}}},applyHidden:function(b){return Boolean(b)},updateHidden:function(f){var d=this,e=d.renderElement;if(e.destroyed){return}if(f){e.hide()}else{e.show()}if(d.element){d.element.toggleCls(d.getHiddenCls(),f)}d.fireEvent(f?"hide":"show",d)},updateHiddenCls:function(d,c){if(this.isHidden()){this.element.replaceCls(c,d)}},isHidden:function(d){var f=!!this.getHidden(),e;if(!f&&d){e=this.getRefOwner();while(e){f=!!e.getHidden();if(f){break}e=e.getRefOwner()}}return f},isVisible:function(b){return !this.isHidden(b)},hide:function(d){var e=this,f=e.activeAnimation;e.setCurrentAlignmentInfo(null);if(f){f.on({animationend:function(){e.hide(d)},single:true});return e}if(!e.getHidden()){if(d===undefined||(d&&d.isComponent)){d=e.getHideAnimation()}if(d){if(d===true){d="fadeOut"}e.on({beforehiddenchange:"animateFn",scope:this,single:true,args:[d]})}e.setHidden(true)}return e},show:function(c){if(this.activeAnimation){this.activeAnimation.on({animationend:function(){this.show(c)},scope:this,single:true});return this}var d=this.getHidden();if(d||d===null){if(c===true){c="fadeIn"}else{if(c===undefined||(c&&c.isComponent)){c=this.getShowAnimation()}}if(c){this.beforeShowAnimation();this.on({beforehiddenchange:"animateFn",scope:this,single:true,args:[c]})}this.setHidden(false)}return this},beforeShowAnimation:function(){var b=this.element;if(b){this.renderElement.show();b.removeCls(this.getHiddenCls())}},animateFn:function(j,l,i,g,h){var k=this;if(j&&(!i||(i&&k.isPainted()))){k.activeAnimation=new Ext.fx.Animation(j);k.activeAnimation.setElement(l.element);if(!Ext.isEmpty(i)){k.activeAnimation.setOnEnd(function(){k.activeAnimation=null;h.resume()});h.pause()}Ext.Animator.run(k.activeAnimation)}},setVisibility:function(b){this.renderElement.setVisible(b)},isRendered:function(){return this.rendered},isPainted:function(){return this.renderElement.isPainted()},applyTpl:function(b){return(Ext.isObject(b)&&b.isTemplate)?b:new Ext.XTemplate(b)},applyData:function(b){if(Ext.isObject(b)){return Ext.apply({},b)}else{if(!b){b={}}}return b},updateData:function(h){var g=this;if(h){var e=g.getTpl(),f=g.getTplWriteMode();if(e){e[f](g.getInnerHtmlElement(),h)}this.fireEvent("updatedata",g,h)}},applyRecord:function(b){if(b&&Ext.isObject(b)&&b.isModel){return b}return null},updateRecord:function(d,e){var f=this;if(e){e.unjoin(f)}if(!d){f.updateData("")}else{d.join(f);f.updateData(d.getData(true))}},afterEdit:function(){this.updateRecord(this.getRecord())},afterErase:function(){this.setRecord(null)},getXTypes:function(){return this.xtypesChain.join("/")},getDraggableBehavior:function(){var b=this.draggableBehavior;if(!b){b=this.draggableBehavior=new Ext.behavior.Draggable(this)}return b},applyDraggable:function(b){this.getDraggableBehavior().setConfig(b)},getDraggable:function(){return this.getDraggableBehavior().getDraggable()},getTranslatableBehavior:function(){var b=this.translatableBehavior;if(!b){b=this.translatableBehavior=new Ext.behavior.Translatable(this)}return b},applyTranslatable:function(b){this.getTranslatableBehavior().setConfig(b)},getTranslatable:function(){return this.getTranslatableBehavior().getTranslatable()},translateAxis:function(f,i,j){var g,h;if(f==="x"){g=i}else{h=i}return this.translate(g,h,j)},translate:function(){var b=this.getTranslatable();if(!b){this.setTranslatable(true);b=this.getTranslatable()}b.translate.apply(b,arguments)},showBy:function(f,h){var i=this,g=Ext.Viewport,j=i.getParent();i.setVisibility(false);if(j!==g){g.add(i)}i.show();i.on({hide:"onShowByErased",destroy:"onShowByErased",single:true,scope:i});g.on("resize","alignTo",i,{args:[f,h]});i.alignTo(f,h);i.setVisibility(true)},onShowByErased:function(){Ext.Viewport.un("resize","alignTo",this)},getAlignmentInfo:function(j,k){var q=j.isComponent?j.renderElement:j,m=q.getBox(),p=this.renderElement,o=p.getBox(),n={alignToBox:m,alignment:k,top:m.top,left:m.left,alignToWidth:m.width,alignToHeight:m.height,width:o.width,height:o.height},r=this.getCurrentAlignmentInfo(),l=true;if(!Ext.isEmpty(r)){Ext.Object.each(n,function(b,a){if(!Ext.isObject(a)&&r[b]!=a){l=false;return false}return true})}else{l=false}return{isAligned:l,stats:n}},getCurrentAlignmentInfo:function(){return this.$currentAlignmentInfo},setCurrentAlignmentInfo:function(b){this.$currentAlignmentInfo=Ext.isEmpty(b)?null:Ext.merge({},b.stats?b.stats:b)},alignTo:function(N,R){var K=this.getAlignmentInfo(N,R);if(K.isAligned){return}var L=K.stats.alignToBox,z=this.getParent().element.getBox(),C=K.stats.alignToHeight,M=K.stats.alignToWidth,H=K.stats.height,F=K.stats.width;z.bottom-=5;z.height-=10;z.left+=5;z.right-=5;z.top+=5;z.width-=10;if(!R||R==="auto"){if(z.bottom-L.bottom<H){if(L.top-z.top<H){if(L.left-z.left<F){R="cl-cr?"}else{R="cr-cl?"}}else{R="bc-tc?"}}else{R="tc-bc?"}}var X=R.match(this.alignmentRegex);var E=X[1].split(""),W=X[2].split(""),B=(X[3]==="?"),S=E[0],G=E[1]||S,P=W[0],O=W[1]||P,J=L.top,V=L.left,Q=C/2,U=M/2,T=F/2,I=H/2,D,A;switch(S){case"t":switch(P){case"c":J+=Q;break;case"b":J+=C}break;case"b":switch(P){case"c":J-=(H-Q);break;case"t":J-=H;break;case"b":J-=H-C}break;case"c":switch(P){case"t":J-=I;break;case"c":J-=(I-Q);break;case"b":J-=(I-C)}break}switch(G){case"l":switch(O){case"c":V+=Q;break;case"r":V+=M}break;case"r":switch(O){case"r":V-=(F-M);break;case"c":V-=(F-T);break;case"l":V-=F}break;case"c":switch(O){case"l":V-=T;break;case"c":V-=(T-U);break;case"r":V-=(T-M)}break}if(B){D=(z.left+z.width)-F;A=(z.top+z.height)-H;V=Math.max(z.left,Math.min(D,V));J=Math.max(z.top,Math.min(A,J))}this.setLeft(V);this.setTop(J);this.setCurrentAlignmentInfo(K)},up:function(c){var d=this.parent;if(c){for(;d;d=d.parent){if(Ext.ComponentQuery.is(d,c)){return d}}}return d},getBubbleTarget:function(){return this.getParent()},destroy:function(){var b=this;b.isDestroying=b.destroying=true;if(b.hasListeners.destroy){b.fireEvent("destroy",b)}Ext.destroy(b.getTranslatable(),b.getPlugins(),b.innerHtmlElement,b.scrollerElement,b.getScrollable());b.setRecord(null);Ext.Widget.prototype.destroy.call(this);b.isDestroying=b.destroying=false},privates:{doAddListener:function(m,j,k,n,i,h,l){if(m=="painted"||m=="resize"){this.element.doAddListener(m,j,k||this,n,i)}Ext.Widget.prototype.doAddListener.call(this,m,j,k,n,i,h,l)},doRemoveListener:function(e,f,d){if(e=="painted"||e=="resize"){this.element.doRemoveListener(e,f,d)}Ext.Widget.prototype.doRemoveListener.call(this,e,f,d)}}},1,["component"],["widget","component"],{widget:true,component:true},["widget.component"],[[Ext.mixin.Traversable.prototype.mixinId||Ext.mixin.Traversable.$className,Ext.mixin.Traversable]],[Ext,"Component",Ext.lib,"Component"],function(){}));Ext.define("Ext.theme.neptune.Component",{override:"Ext.Component"},function(){Ext.namespace("Ext.theme.is").Neptune=true;Ext.theme.name="Neptune";Ext.theme.getDocCls=function(){return Ext.platformTags.desktop?"":"x-big"}});(Ext.cmd.derive("Ext.layout.Abstract",Ext.Base,{isLayout:true,constructor:function(b){this.initialConfig=b},setContainer:function(d){var c=this;c.container=d;c.mixins.observable.constructor.call(c,c.initialConfig);return c},onItemAdd:Ext.emptyFn,onItemRemove:Ext.emptyFn,onItemMove:Ext.emptyFn,onItemCenteredChange:Ext.emptyFn,onItemFloatingChange:Ext.emptyFn,onItemDockedChange:Ext.emptyFn,onItemInnerStateChange:Ext.emptyFn},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable]],[Ext.layout,"Abstract"],0));(Ext.cmd.derive("Ext.mixin.Hookable",Ext.Mixin,{mixinConfig:{id:"hookable"},bindHook:function(j,o,k,p,i){if(!k){k=o}var m=j[o],n,l;if(m&&m.hasOwnProperty("$binding")){l=m.$binding;if(l.bindingMethod===k&&l.bindingScope===this){return this}}j[o]=n=function(){var a=n.$binding,b=a.bindingScope,c=Array.prototype.slice.call(arguments);c.push(arguments);if(i){c.push.apply(c,i)}if(!a.preventDefault&&b[a.bindingMethod].apply(b,c)!==false){return a.boundFn.apply(this,arguments)}};n.$binding={preventDefault:!!p,boundFn:m,bindingMethod:k,bindingScope:this};return this},unbindHook:function(i,h,j){if(!j){j=h}var m=i[h],l=m.$binding,n,k;while(l){n=l.boundFn;if(l.bindingMethod===j&&l.bindingScope===this){if(k){k.boundFn=n}else{i[h]=n}return this}k=l;l=n.$binding}return this}},0,0,0,0,0,0,[Ext.mixin,"Hookable"],0));(Ext.cmd.derive("Ext.util.Wrapper",Ext.Base,{constructor:function(f,d){var e=this.link("element",Ext.Element.create(f));if(d){e.insertBefore(d);this.wrap(d)}},bindSize:function(d){var f=this.wrappedElement,e;this.boundSizeName=d;this.boundMethodName=e=d==="width"?"setWidth":"setHeight";this.bindHook(f,e,"onBoundSizeChange");f[e].call(f,f.getStyleValue(d))},onBoundSizeChange:function(f,e){var d=this.element;if(typeof f==="string"&&f.substr(-1)==="%"){e[0]="100%"}else{f=""}d[this.boundMethodName].call(d,f)},wrap:function(f){var d=this.element,e;this.wrappedElement=f;e=d.dom;while(e.firstElementChild!==null){e=e.firstElementChild}e.appendChild(f.dom)},destroy:function(){var k=this,m=k.element,j=m.dom,l=k.wrappedElement,h=k.boundMethodName,i=j.parentNode,n;if(h){k.unbindHook(l,h,"onBoundSizeChange");n=m.getStyle(k.boundSizeName);if(n){l[h].call(l,n)}}if(i){if(!l.destroyed){i.replaceChild(j.firstElementChild,j)}delete k.wrappedElement}k.callParent()}},1,0,0,0,0,[[Ext.mixin.Hookable.prototype.mixinId||Ext.mixin.Hookable.$className,Ext.mixin.Hookable]],[Ext.util,"Wrapper"],0));(Ext.cmd.derive("Ext.layout.wrapper.BoxDock",Ext.Base,{config:{direction:"horizontal",element:{className:"x-dock"},bodyElement:{className:"x-dock-body"},innerWrapper:null,sizeState:false,container:null},positionMap:{top:"start",left:"start",bottom:"end",right:"end"},constructor:function(b){this.items={start:[],end:[]};this.itemsCount=0;this.initConfig(b)},addItems:function(f){var e,g,h;for(e=0,g=f.length;e<g;e++){h=f[e];this.addItem(h)}},addItem:function(p){var i=p.getDocked(),v=this.positionMap[i],B=p.$dockWrapper,A=this.getContainer(),u=A.indexOf(p),w=p.element,r=this.items,s=r[v],x,t,q,y,z;if(B){B.removeItem(p)}p.$dockWrapper=this;p.addCls("x-dock-item");p.addCls("x-docked-"+i);for(x=0,t=s.length;x<t;x++){q=s[x];z=A.indexOf(q);if(z>u){y=q.element;s.splice(x,0,p);break}}if(!y){s.push(p);y=this.getBodyElement()}this.itemsCount++;if(v==="start"){w.insertBefore(y)}else{w.insertAfter(y)}},removeItem:function(f){var e=f.getDocked(),d=this.items[this.positionMap[e]];Ext.Array.remove(d,f);f.element.detach();delete f.$dockWrapper;f.removeCls("x-dock-item");f.removeCls("x-docked-"+e);if(--this.itemsCount===0){this.destroy()}},getItemsSlice:function(p){var j=this.getContainer(),i=this.items,k=[],l,o,m,n;for(l=i.start,o=0,m=l.length;o<m;o++){n=l[o];if(j.indexOf(n)>p){k.push(n)}}for(l=i.end,o=0,m=l.length;o<m;o++){n=l[o];if(j.indexOf(n)>p){k.push(n)}}return k},applyElement:function(b){return Ext.Element.create(b)},updateElement:function(b){b.addCls("x-dock-"+this.getDirection())},applyBodyElement:function(b){return Ext.Element.create(b)},updateBodyElement:function(b){this.getElement().append(b)},updateInnerWrapper:function(e,f){var d=this.getBodyElement();if(f&&f.$outerWrapper===this){f.getElement().detach();delete f.$outerWrapper}if(e){e.setSizeState(this.getSizeState());e.$outerWrapper=this;d.append(e.getElement())}},updateSizeState:function(c){var d=this.getInnerWrapper();this.getElement().setSizeState(c);if(d){d.setSizeState(c)}},destroy:function(){var g=this,h=g.getInnerWrapper(),e=g.$outerWrapper,f;if(h){if(e){e.setInnerWrapper(h)}else{f=h.getElement();if(!f.destroyed){f.replace(g.getElement())}delete h.$outerWrapper}}delete g.$outerWrapper;g.setInnerWrapper(null);g.unlink(["_bodyElement","_element"]);g.callParent()}},1,0,0,0,0,0,[Ext.layout.wrapper,"BoxDock"],0));(Ext.cmd.derive("Ext.layout.wrapper.Inner",Ext.Base,{config:{sizeState:null,container:null},constructor:function(b){this.initConfig(b)},getElement:function(){return this.getContainer().bodyElement},setInnerWrapper:Ext.emptyFn,getInnerWrapper:Ext.emptyFn},1,0,0,0,0,0,[Ext.layout.wrapper,"Inner"],0));(Ext.cmd.derive("Ext.layout.Default",Ext.layout.Abstract,{isAuto:true,config:{animation:null},centerWrapperClass:"x-center",dockWrapperClass:"x-dock",positionMap:{top:"start",left:"start",middle:"center",bottom:"end",right:"end"},positionDirectionMap:{top:"vertical",bottom:"vertical",left:"horizontal",right:"horizontal"},setContainer:function(d){var c=this;c.dockedItems=[];Ext.layout.Abstract.prototype.setContainer.call(this,d);if(d.initialized){c.onContainerInitialized()}else{d.onInitialized("onContainerInitialized",c)}},onContainerInitialized:function(){var b=this;b.handleDockedItemBorders();b.container.on({delegate:"> component",beforecenteredchange:"onItemCenteredChange",beforefloatingchange:"onItemFloatingChange",afterdockedchange:"onAfterItemDockedChange",scope:b})},monitorSizeStateChange:function(){this.monitorSizeStateChange=Ext.emptyFn;this.container.on("sizestatechange","onContainerSizeStateChange",this)},monitorSizeFlagsChange:function(){this.monitorSizeFlagsChange=Ext.emptyFn;this.container.on("sizeflagschange","onContainerSizeFlagsChange",this)},onItemAdd:function(d){var c=d.getDocked();if(c!=null){this.dockItem(d)}else{if(d.isCentered()){this.onItemCenteredChange(d,true)}else{if(d.isFloating()){this.onItemFloatingChange(d,true)}else{this.onItemInnerStateChange(d,true)}}}},onItemInnerStateChange:function(d,e,f){if(e){this.insertInnerItem(d,this.container.innerIndexOf(d))}else{this.removeInnerItem(d)}},insertInnerItem:function(m,o){var i=this.container,k=i.innerElement.dom,n=m.element.dom,l=o!==-1?i.getInnerAt(o+1):null,p=null,j;if(l){j=l.getTranslatable();if(j&&j.getUseWrapper()){p=j.getWrapper().dom}else{p=l?l.element.dom:null}}k.insertBefore(n,p);return this},insertBodyItem:function(f){var e=this.container.setUseBodyElement(true),d=e.bodyElement.dom;if(f.getZIndex()===null){f.setZIndex((e.indexOf(f)+1)*2)}d.insertBefore(f.element.dom,d.firstChild);return this},removeInnerItem:function(b){b.element.detach()},removeBodyItem:function(b){b.setZIndex(null);b.element.detach()},onItemRemove:function(e,f,h){var g=e.getDocked();if(g){this.undockItem(e)}else{if(e.isCentered()){this.onItemCenteredChange(e,false)}else{if(e.isFloating()){this.onItemFloatingChange(e,false)}else{this.onItemInnerStateChange(e,false,h)}}}},onItemMove:function(d,f,e){if(d.isCentered()||d.isFloating()){d.setZIndex((f+1)*2)}else{if(d.isInnerItem()){this.insertInnerItem(d,this.container.innerIndexOf(d))}else{this.undockItem(d);this.dockItem(d)}}},onItemCenteredChange:function(f,e){var d="$centerWrapper";if(e){this.insertBodyItem(f);f.link(d,new Ext.util.Wrapper({className:this.centerWrapperClass},f.element))}else{f.unlink([d]);this.removeBodyItem(f)}},onItemFloatingChange:function(d,c){if(c){this.insertBodyItem(d)}else{this.removeBodyItem(d)}},onAfterItemDockedChange:function(e,f,d){if(e.initialized){if(d){this.undockItem(e)}if(f){this.dockItem(e)}}},onContainerSizeStateChange:function(){var b=this.getDockWrapper();if(b){b.setSizeState(this.container.getSizeState())}},onContainerSizeFlagsChange:function(){var f=this.dockedItems,e,g,h;for(e=0,g=f.length;e<g;e++){h=f[e];this.refreshDockedItemLayoutSizeFlags(h)}},refreshDockedItemLayoutSizeFlags:function(i){var f=this.container,h=this.positionDirectionMap[i.getDocked()],j=(h==="horizontal")?f.LAYOUT_HEIGHT:f.LAYOUT_WIDTH,g=(f.getSizeFlags()&j);i.setLayoutSizeFlags(g)},dockItem:function(A){var x=this,Q=Ext.layout.wrapper.BoxDock,D=x.dockedItems,L=D.length,K=x.container,z=K.indexOf(A),M=x.positionDirectionMap,y=M[A.getDocked()],B=x.dockInnerWrapper,H,G,i,N,C,I,F,R,O,E,P,J;x.monitorSizeStateChange();x.monitorSizeFlagsChange();if(!B){B=x.link("dockInnerWrapper",new Ext.layout.wrapper.Inner({container:K}))}if(L===0){D.push(A);E=new Q({container:K,direction:y});E.addItem(A);E.getElement().replace(B.getElement(),false);E.setInnerWrapper(B);K.onInitialized("onContainerSizeStateChange",x)}else{for(G=0;G<L;G++){i=D[G];N=K.indexOf(i);if(N>z){F=C||D[0];D.splice(G,0,A);break}C=i}if(!F){F=D[L-1];D.push(A)}R=F.getDocked();O=F.$dockWrapper;H=M[R];if(y===H){O.addItem(A)}else{I=O.getItemsSlice(z);E=new Q({container:K,direction:y});if(I.length>0){if(I.length===O.itemsCount){P=O;E.setSizeState(P.getSizeState());E.getElement().replace(P.getElement(),false)}else{P=new Q({container:K,direction:H});P.setInnerWrapper(O.getInnerWrapper());P.addItems(I);O.setInnerWrapper(E)}E.setInnerWrapper(P)}else{J=O.getInnerWrapper();O.setInnerWrapper(null);E.setInnerWrapper(J);O.setInnerWrapper(E)}E.addItem(A)}}if(K.initialized){x.handleDockedItemBorders()}K.onInitialized("refreshDockedItemLayoutSizeFlags",x,[A])},getDockWrapper:function(){var b=this.dockedItems;if(b.length>0){return b[0].$dockWrapper}return null},undockItem:function(h){var i=this,f=i.dockedItems,j,g;if(h.$dockWrapper){h.$dockWrapper.removeItem(h)}if(i.container.initialized){j=h.lastBorderMask;g=h.lastBorderCollapse;if(j){h.lastBorderMask=0;h.removeCls(i.noBorderClassTable[j])}if(g){h.lastBorderCollapse=0;h.removeCls(i.getBorderCollapseTable()[g])}i.handleDockedItemBorders()}Ext.Array.remove(f,h);h.setLayoutSizeFlags(0)},destroy:function(){this.dockedItems=null;Ext.layout.Abstract.prototype.destroy.call(this)},noBorderClassTable:[0,"x-noborder-l","x-noborder-b","x-noborder-bl","x-noborder-r","x-noborder-rl","x-noborder-rb","x-noborder-rbl","x-noborder-t","x-noborder-tl","x-noborder-tb","x-noborder-tbl","x-noborder-tr","x-noborder-trl","x-noborder-trb","x-noborder-trbl"],edgeMasks:{top:8,right:4,bottom:2,left:1},handleDockedItemBorders:function(){var i=this,U=0,b=8,J=4,O=2,V=1,M=i.container,G=M.getBoodyBorder&&M.getBodyBorder(),Q=M.getBorder(),R=i.collapsed,K=i.edgeMasks,P=i.noBorderClassTable,B=M.items.generation,C,W,D,S,H,N,E,L,T,I,F,X;if(i.initializedBorders===B||!M.manageBorders){return}F=[];X=[];W=i.getBorderCollapseTable();P=i.getBorderClassTable?i.getBorderClassTable():P;i.initializedBorders=B;i.collapsed=false;D=M.getDockedItems();i.collapsed=R;for(H=0,N=D.length;H<N;H++){E=D[H];L=E.getDocked();I=S=0;F.length=0;X.length=0;if(L!=="bottom"){if(U&b){C=E.border}else{C=Q;if(C!==false){S+=b}}if(C===false){I+=b}}if(L!=="left"){if(U&J){C=E.border}else{C=Q;if(C!==false){S+=J}}if(C===false){I+=J}}if(L!=="top"){if(U&O){C=E.border}else{C=Q;if(C!==false){S+=O}}if(C===false){I+=O}}if(L!=="right"){if(U&V){C=E.border}else{C=Q;if(C!==false){S+=V}}if(C===false){I+=V}}if((T=E.lastBorderMask)!==I){E.lastBorderMask=I;if(T){X[0]=P[T]}if(I){F[0]=P[I]}}if((T=E.lastBorderCollapse)!==S){E.lastBorderCollapse=S;if(T){X[X.length]=W[T]}if(S){F[F.length]=W[S]}}if(X.length){E.removeCls(X)}if(F.length){E.addCls(F)}U|=K[L]}I=S=0;F.length=0;X.length=0;if(U&b){C=G}else{C=Q;if(C!==false){S+=b}}if(C===false){I+=b}if(U&J){C=G}else{C=Q;if(C!==false){S+=J}}if(C===false){I+=J}if(U&O){C=G}else{C=Q;if(C!==false){S+=O}}if(C===false){I+=O}if(U&V){C=G}else{C=Q;if(C!==false){S+=V}}if(C===false){I+=V}if((T=i.lastBodyBorderMask)!==I){i.lastBodyBorderMask=I;if(T){X[0]=P[T]}if(I){F[0]=P[I]}}if((T=i.lastBodyBorderCollapse)!==S){i.lastBodyBorderCollapse=S;if(T){X[X.length]=W[T]}if(S){F[F.length]=W[S]}}if(X.length&&M.removeBodyCls){M.removeBodyCls(X)}if(F.length&&M.addBodyCls){M.addBodyCls(F)}},borderCollapseMap:{},getBorderCollapseTable:function(){var m=this,k=m.borderCollapseMap,i=m.container,h=i.getBaseCls(),l=i.ui,j=(l?("-"+l):""),n;l=l||"default";k=k[h]||(k[h]={});n=k[l];if(!n){h+=j+"-outer-border-";k[l]=n=[0,h+"l",h+"b",h+"bl",h+"r",h+"rl",h+"rb",h+"rbl",h+"t",h+"tl",h+"tb",h+"tbl",h+"tr",h+"trl",h+"trb",h+"trbl"]}return n}},0,0,0,0,["layout.auto","layout.default"],0,[Ext.layout,"Default"],0));(Ext.cmd.derive("Ext.layout.Box",Ext.layout.Default,{config:{orient:"horizontal",align:"start",pack:"start"},layoutBaseClass:"x-layout-tablebox",itemClass:"x-layout-tablebox-item",setContainer:function(b){Ext.layout.Default.prototype.setContainer.call(this,b);b.innerElement.addCls(this.layoutBaseClass);b.on("flexchange","onItemFlexChange",this,{delegate:"> component"})},onItemInnerStateChange:function(c,d){Ext.layout.Default.prototype.onItemInnerStateChange.apply(this,arguments);c.toggleCls(this.itemClass,d)},onItemFlexChange:Ext.emptyFn},0,0,0,0,["layout.tablebox"],0,[Ext.layout,"Box"],0));(Ext.cmd.derive("Ext.fx.layout.card.Abstract",Ext.Evented,{isAnimation:true,config:{direction:"left",duration:null,reverse:null,layout:null},updateLayout:function(b){if(b){this.enable()}},enable:function(){var b=this.getLayout();if(b){b.on("beforeactiveitemchange","onActiveItemChange",this)}},disable:function(){var b=this.getLayout();if(this.isAnimating){this.stopAnimation()}if(b){b.un("beforeactiveitemchange","onActiveItemChange",this)}},onActiveItemChange:Ext.emptyFn,destroy:function(){var c=this,d=c.getLayout();if(c.isAnimating){c.stopAnimation()}if(d){d.un("beforeactiveitemchange","onActiveItemChange",this)}c.setLayout(null);if(c.observableId){c.fireEvent("destroy",this)}Ext.Evented.prototype.destroy.call(this)}},0,0,0,0,0,0,[Ext.fx.layout.card,"Abstract"],0));(Ext.cmd.derive("Ext.fx.State",Ext.Base,{isAnimatable:{"background-color":true,"background-image":true,"background-position":true,"border-bottom-color":true,"border-bottom-width":true,"border-color":true,"border-left-color":true,"border-left-width":true,"border-right-color":true,"border-right-width":true,"border-spacing":true,"border-top-color":true,"border-top-width":true,"border-width":true,bottom:true,color:true,crop:true,"font-size":true,"font-weight":true,height:true,left:true,"letter-spacing":true,"line-height":true,"margin-bottom":true,"margin-left":true,"margin-right":true,"margin-top":true,"max-height":true,"max-width":true,"min-height":true,"min-width":true,opacity:true,"outline-color":true,"outline-offset":true,"outline-width":true,"padding-bottom":true,"padding-left":true,"padding-right":true,"padding-top":true,right:true,"text-indent":true,"text-shadow":true,top:true,"vertical-align":true,visibility:true,width:true,"word-spacing":true,"z-index":true,zoom:true,transform:true},constructor:function(b){this.data={};this.set(b)},setConfig:function(b){this.set(b);return this},setRaw:function(b){this.data=b;return this},clear:function(){return this.setRaw({})},setTransform:function(n,j){var k=this.data,i=Ext.isArray(j),h=k.transform,l,m;if(!h){h=k.transform={translateX:0,translateY:0,translateZ:0,scaleX:1,scaleY:1,scaleZ:1,rotate:0,rotateX:0,rotateY:0,rotateZ:0,skewX:0,skewY:0}}if(typeof n=="string"){switch(n){case"translate":if(i){l=j.length;if(l==0){break}h.translateX=j[0];if(l==1){break}h.translateY=j[1];if(l==2){break}h.translateZ=j[2]}else{h.translateX=j}break;case"rotate":if(i){l=j.length;if(l==0){break}h.rotateX=j[0];if(l==1){break}h.rotateY=j[1];if(l==2){break}h.rotateZ=j[2]}else{h.rotate=j}break;case"scale":if(i){l=j.length;if(l==0){break}h.scaleX=j[0];if(l==1){break}h.scaleY=j[1];if(l==2){break}h.scaleZ=j[2]}else{h.scaleX=j;h.scaleY=j}break;case"skew":if(i){l=j.length;if(l==0){break}h.skewX=j[0];if(l==1){break}h.skewY=j[1]}else{h.skewX=j}break;default:h[n]=j}}else{for(m in n){if(n.hasOwnProperty(m)){j=n[m];this.setTransform(m,j)}}}},set:function(f,g){var h=this.data,e;if(typeof f!="string"){for(e in f){g=f[e];if(e==="transform"){this.setTransform(g)}else{h[e]=g}}}else{if(f==="transform"){this.setTransform(g)}else{h[f]=g}}return this},unset:function(d){var c=this.data;if(c.hasOwnProperty(d)){delete c[d]}return this},getData:function(){return this.data}},1,0,0,0,0,0,[Ext.fx,"State"],0));(Ext.cmd.derive("Ext.fx.animation.Abstract",Ext.Evented,{isAnimation:true,config:{name:"",element:null,before:null,from:{},to:{},after:null,states:{},duration:300,easing:"linear",iteration:1,direction:"normal",delay:0,onBeforeStart:null,callback:null,onEnd:null,onBeforeEnd:null,scope:null,reverse:null,preserveEndState:false,replacePrevious:true},STATE_FROM:"0%",STATE_TO:"100%",DIRECTION_UP:"up",DIRECTION_DOWN:"down",DIRECTION_LEFT:"left",DIRECTION_RIGHT:"right",stateNameRegex:/^(?:[\d\.]+)%$/,constructor:function(){this.states={};Ext.Evented.prototype.constructor.apply(this,arguments);return this},applyElement:function(b){return Ext.get(b)},applyBefore:function(d,c){if(d){return Ext.factory(d,Ext.fx.State,c)}},applyAfter:function(c,d){if(c){return Ext.factory(c,Ext.fx.State,d)}},setFrom:function(b){return this.setState(this.STATE_FROM,b)},setTo:function(b){return this.setState(this.STATE_TO,b)},getFrom:function(){return this.getState(this.STATE_FROM)},getTo:function(){return this.getState(this.STATE_TO)},setStates:function(e){var f=this.stateNameRegex,d;for(d in e){if(f.test(d)){this.setState(d,e[d])}}return this},getStates:function(){return this.states},updateCallback:function(b){if(b){this.setOnEnd(b)}},end:function(){this.stop()},stop:function(){this.fireEvent("stop",this)},destroy:function(){this.stop();Ext.Evented.prototype.destroy.call(this)},setState:function(e,g){var f=this.getStates(),h;h=Ext.factory(g,Ext.fx.State,f[e]);if(h){f[e]=h}return this},getState:function(b){return this.getStates()[b]},getData:function(){var r=this,m=r.getStates(),t={},q=r.getBefore(),v=r.getAfter(),p=m[r.STATE_FROM],o=m[r.STATE_TO],n=p.getData(),s=o.getData(),u,w,x;for(w in m){if(m.hasOwnProperty(w)){x=m[w];u=x.getData();t[w]=u}}return{before:q?q.getData():{},after:v?v.getData():{},states:t,from:n,to:s,duration:r.getDuration(),iteration:r.getIteration(),direction:r.getDirection(),easing:r.getEasing(),delay:r.getDelay(),onEnd:r.getOnEnd(),onBeforeEnd:r.getOnBeforeEnd(),onBeforeStart:r.getOnBeforeStart(),scope:r.getScope(),preserveEndState:r.getPreserveEndState(),replacePrevious:r.getReplacePrevious()}}},1,0,0,0,0,0,[Ext.fx.animation,"Abstract"],0));(Ext.cmd.derive("Ext.fx.animation.Slide",Ext.fx.animation.Abstract,{alternateClassName:"Ext.fx.animation.SlideIn",config:{direction:"left",out:false,offset:0,easing:"auto",containerBox:"auto",elementBox:"auto",isElementBoxFit:true,useCssTransform:true},reverseDirectionMap:{up:"down",down:"up",left:"right",right:"left"},applyEasing:function(b){if(b==="auto"){return"ease-"+((this.getOut())?"in":"out")}return b},getContainerBox:function(){var b=this._containerBox;if(b==="auto"){b=this.getElement().getParent().getBox()}return b},getElementBox:function(){var b=this._elementBox;if(this.getIsElementBoxFit()){return this.getContainerBox()}if(b==="auto"){b=this.getElement().getBox()}return b},getData:function(){var q=this.getElementBox(),D=this.getContainerBox(),z=q?q:D,s=this.getFrom(),r=this.getTo(),A=this.getOut(),B=this.getOffset(),t=this.getDirection(),E=this.getUseCssTransform(),y=this.getReverse(),C=0,F=0,u,w,v,x;if(y){t=this.reverseDirectionMap[t]}switch(t){case this.DIRECTION_UP:if(A){F=D.top-z.top-z.height-B}else{F=D.bottom-z.bottom+z.height+B}break;case this.DIRECTION_DOWN:if(A){F=D.bottom-z.bottom+z.height+B}else{F=D.top-z.height-z.top-B}break;case this.DIRECTION_RIGHT:if(A){C=D.right-z.right+z.width+B}else{C=D.left-z.left-z.width-B}break;case this.DIRECTION_LEFT:if(A){C=D.left-z.left-z.width-B}else{C=D.right-z.right+z.width+B}break}u=(A)?0:C;w=(A)?0:F;if(E){s.setTransform({translateX:u,translateY:w})}else{s.set("left",u);s.set("top",w)}v=(A)?C:0;x=(A)?F:0;if(E){r.setTransform({translateX:v,translateY:x})}else{r.set("left",v);r.set("top",x)}return Ext.fx.animation.Abstract.prototype.getData.apply(this,arguments)}},0,0,0,0,["animation.slide","animation.slideIn"],0,[Ext.fx.animation,"Slide",Ext.fx.animation,"SlideIn"],0));(Ext.cmd.derive("Ext.fx.animation.SlideOut",Ext.fx.animation.Slide,{config:{out:true}},0,0,0,0,["animation.slideOut"],0,[Ext.fx.animation,"SlideOut"],0));(Ext.cmd.derive("Ext.fx.animation.Fade",Ext.fx.animation.Abstract,{alternateClassName:"Ext.fx.animation.FadeIn",config:{out:false,before:{display:null,opacity:0},after:{opacity:null},reverse:null},updateOut:function(e){var f=this.getTo(),d=this.getFrom();if(e){d.set("opacity",1);f.set("opacity",0)}else{d.set("opacity",0);f.set("opacity",1)}}},0,0,0,0,["animation.fade","animation.fadeIn"],0,[Ext.fx.animation,"Fade",Ext.fx.animation,"FadeIn"],0));(Ext.cmd.derive("Ext.fx.animation.FadeOut",Ext.fx.animation.Fade,{config:{out:true,before:{}}},0,0,0,0,["animation.fadeOut"],0,[Ext.fx.animation,"FadeOut"],0));(Ext.cmd.derive("Ext.fx.animation.Flip",Ext.fx.animation.Abstract,{config:{easing:"ease-in",direction:"right",half:false,out:null},getData:function(){var t=this,r=t.getFrom(),q=t.getTo(),s=t.getDirection(),y=t.getOut(),n=t.getHalf(),x=n?90:180,v=1,z=1,o=0,p=0,u=0,w=0;if(y){z=0.8}else{v=0.8}switch(s){case this.DIRECTION_UP:if(y){u=x}else{o=-x}break;case this.DIRECTION_DOWN:if(y){u=-x}else{o=x}break;case this.DIRECTION_RIGHT:if(y){w=x}else{p=-x}break;case this.DIRECTION_LEFT:if(y){w=-x}else{p=x}break}r.setTransform({rotateX:o,rotateY:p,scale:v});q.setTransform({rotateX:u,rotateY:w,scale:z});return Ext.fx.animation.Abstract.prototype.getData.call(this)}},0,0,0,0,["animation.flip"],0,[Ext.fx.animation,"Flip"],0));(Ext.cmd.derive("Ext.fx.animation.Pop",Ext.fx.animation.Abstract,{alternateClassName:"Ext.fx.animation.PopIn",config:{out:false,before:{display:null,opacity:0},after:{opacity:null}},getData:function(){var f=this.getTo(),d=this.getFrom(),e=this.getOut();if(e){d.set("opacity",1);d.setTransform({scale:1});f.set("opacity",0);f.setTransform({scale:0})}else{d.set("opacity",0);d.setTransform({scale:0});f.set("opacity",1);f.setTransform({scale:1})}return Ext.fx.animation.Abstract.prototype.getData.apply(this,arguments)}},0,0,0,0,["animation.pop","animation.popIn"],0,[Ext.fx.animation,"Pop",Ext.fx.animation,"PopIn"],0));(Ext.cmd.derive("Ext.fx.animation.PopOut",Ext.fx.animation.Pop,{config:{out:true,before:{}}},0,0,0,0,["animation.popOut"],0,[Ext.fx.animation,"PopOut"],0));(Ext.cmd.derive("Ext.fx.Animation",Ext.Base,{constructor:function(d){var e=Ext.fx.animation.Abstract,f;if(typeof d=="string"){f=d;d={}}else{if(d&&d.type){f=d.type}}if(f){e=Ext.ClassManager.getByAlias("animation."+f)}return Ext.factory(d,e)}},1,0,0,0,0,0,[Ext.fx,"Animation"],0));(Ext.cmd.derive("Ext.fx.layout.card.Style",Ext.fx.layout.card.Abstract,{config:{inAnimation:{before:{visibility:null},preserveEndState:false,replacePrevious:true},outAnimation:{preserveEndState:false,replacePrevious:true}},constructor:function(d){var f,e;Ext.fx.layout.card.Abstract.prototype.constructor.call(this,d);this.endAnimationCounter=0;f=this.getInAnimation();e=this.getOutAnimation();f.on("animationend","incrementEnd",this);e.on("animationend","incrementEnd",this)},updateDirection:function(b){this.getInAnimation().setDirection(b);this.getOutAnimation().setDirection(b)},updateDuration:function(b){this.getInAnimation().setDuration(b);this.getOutAnimation().setDuration(b)},updateReverse:function(b){this.getInAnimation().setReverse(b);this.getOutAnimation().setReverse(b)},incrementEnd:function(){this.endAnimationCounter++;if(this.endAnimationCounter>1){this.endAnimationCounter=0;this.fireEvent("animationend",this)}},applyInAnimation:function(c,d){return Ext.factory(c,Ext.fx.Animation,d)},applyOutAnimation:function(c,d){return Ext.factory(c,Ext.fx.Animation,d)},updateInAnimation:function(b){b.setScope(this)},updateOutAnimation:function(b){b.setScope(this)},onActiveItemChange:function(m,o,k,i){var n=this.getInAnimation(),p=this.getOutAnimation(),l,j;if(o&&k&&k.isPainted()){l=o.renderElement;j=k.renderElement;n.setElement(l);p.setElement(j);p.setOnEnd(function(){i.resume()});l.dom.style.setProperty("visibility","hidden","important");o.show();Ext.Animator.run([p,n]);i.pause()}},destroy:function(){Ext.destroy(this.getInAnimation(),this.getOutAnimation());Ext.fx.layout.card.Abstract.prototype.destroy.call(this)}},1,0,0,0,0,0,[Ext.fx.layout.card,"Style"],0));(Ext.cmd.derive("Ext.fx.layout.card.Slide",Ext.fx.layout.card.Style,{config:{inAnimation:{type:"slide",easing:"ease-out"},outAnimation:{type:"slide",easing:"ease-out",out:true}},updateReverse:function(b){this.getInAnimation().setReverse(b);this.getOutAnimation().setReverse(b)}},0,0,0,0,["fx.layout.card.slide"],0,[Ext.fx.layout.card,"Slide"],0));(Ext.cmd.derive("Ext.fx.layout.card.Cover",Ext.fx.layout.card.Style,{config:{reverse:null,inAnimation:{before:{"z-index":100},after:{"z-index":0},type:"slide",easing:"ease-out"},outAnimation:{easing:"ease-out",from:{opacity:0.99},to:{opacity:1},out:true}},updateReverse:function(b){this.getInAnimation().setReverse(b);this.getOutAnimation().setReverse(b)}},0,0,0,0,["fx.layout.card.cover"],0,[Ext.fx.layout.card,"Cover"],0));(Ext.cmd.derive("Ext.fx.layout.card.Reveal",Ext.fx.layout.card.Style,{config:{inAnimation:{easing:"ease-out",from:{opacity:0.99},to:{opacity:1}},outAnimation:{before:{"z-index":100},after:{"z-index":0},type:"slide",easing:"ease-out",out:true}},updateReverse:function(b){this.getInAnimation().setReverse(b);this.getOutAnimation().setReverse(b)}},0,0,0,0,["fx.layout.card.reveal"],0,[Ext.fx.layout.card,"Reveal"],0));(Ext.cmd.derive("Ext.fx.layout.card.Fade",Ext.fx.layout.card.Style,{config:{reverse:null,inAnimation:{type:"fade",easing:"ease-out"},outAnimation:{type:"fade",easing:"ease-out",out:true}}},0,0,0,0,["fx.layout.card.fade"],0,[Ext.fx.layout.card,"Fade"],0));(Ext.cmd.derive("Ext.fx.layout.card.Flip",Ext.fx.layout.card.Style,{config:{duration:500,inAnimation:{type:"flip",half:true,easing:"ease-out",before:{"backface-visibility":"hidden"},after:{"backface-visibility":null}},outAnimation:{type:"flip",half:true,easing:"ease-in",before:{"backface-visibility":"hidden"},after:{"backface-visibility":null},out:true}},onActiveItemChange:function(i,f,h,g){var j=f.element.getParent();j.addCls("x-layout-card-perspective");this.on("animationend",function(){j.removeCls("x-layout-card-perspective")},this,{single:true});Ext.fx.layout.card.Style.prototype.onActiveItemChange.apply(this,arguments)},updateDuration:function(g){var h=g/2,e=this.getInAnimation(),f=this.getOutAnimation();e.setDelay(h);e.setDuration(h);f.setDuration(h)}},0,0,0,0,["fx.layout.card.flip"],0,[Ext.fx.layout.card,"Flip"],0));(Ext.cmd.derive("Ext.fx.layout.card.Pop",Ext.fx.layout.card.Style,{config:{duration:500,inAnimation:{type:"pop",easing:"ease-out"},outAnimation:{type:"pop",easing:"ease-in",out:true}},updateDuration:function(g){var h=g/2,e=this.getInAnimation(),f=this.getOutAnimation();e.setDelay(h);e.setDuration(h);f.setDuration(h)}},0,0,0,0,["fx.layout.card.pop"],0,[Ext.fx.layout.card,"Pop"],0));(Ext.cmd.derive("Ext.fx.layout.card.Scroll",Ext.fx.layout.card.Abstract,{config:{duration:150},constructor:function(b){this.initConfig(b)},getEasing:function(){var b=this.easing;if(!b){this.easing=b=new Ext.fx.easing.Linear()}return b},updateDuration:function(b){this.getEasing().setDuration(b)},onActiveItemChange:function(x,u,m,v){var p=this.getDirection(),r=this.getEasing(),n,t,w,q,o,s;if(u&&m){if(this.isAnimating){this.stopAnimation()}u.setWidth("100%");u.setHeight("100%");n=this.getLayout().container.innerElement;q=n.getWidth();o=n.getHeight();t=u.renderElement;w=m.renderElement;this.oldItem=m;this.newItem=u;this.containerElement=n;this.currentEventController=v;this.isReverse=s=this.getReverse();u.show();if(p=="right"){p="left";this.isReverse=s=!s}else{if(p=="down"){p="up";this.isReverse=s=!s}}if(p=="left"){if(s){r.setConfig({startValue:q,endValue:0});n.dom.scrollLeft=q;w.setLeft(q)}else{r.setConfig({startValue:0,endValue:q});t.setLeft(q)}}else{if(s){r.setConfig({startValue:o,endValue:0});n.dom.scrollTop=o;w.setTop(o)}else{r.setConfig({startValue:0,endValue:o});t.setTop(o)}}this.startAnimation();v.pause()}},startAnimation:function(){this.isAnimating=true;this.getEasing().setStartTime(Date.now());Ext.AnimationQueue.start(this.doAnimationFrame,this)},doAnimationFrame:function(){var g=this.getEasing(),h=this.getDirection(),f="scrollTop",e;if(h=="left"||h=="right"){f="scrollLeft"}if(g.isEnded){this.stopAnimation()}else{e=g.getValue();this.containerElement.dom[f]=e}},stopAnimation:function(){var j=this,h=j.getDirection(),g="setTop",i=j.oldItem,f=j.newItem;if(h=="left"||h=="right"){g="setLeft"}j.currentEventController.resume();if(j.isReverse&&i&&i.renderElement&&i.renderElement.dom){i.renderElement[g](null)}else{if(f&&f.renderElement&&f.renderElement.dom){f.renderElement[g](null)}}Ext.AnimationQueue.stop(this.doAnimationFrame,this);j.isAnimating=false;j.fireEvent("animationend",j)}},1,0,0,0,["fx.layout.card.scroll"],0,[Ext.fx.layout.card,"Scroll"],0));(Ext.cmd.derive("Ext.fx.layout.Card",Ext.Base,{constructor:function(d){var e=Ext.fx.layout.card.Abstract,f;if(!d){return null}if(typeof d=="string"){f=d;d={}}else{if(d.type){f=d.type}}d.elementBox=false;if(f){e=Ext.ClassManager.getByAlias("fx.layout.card."+f)}return Ext.factory(d,e)}},1,0,0,0,0,0,[Ext.fx.layout,"Card"],0));(Ext.cmd.derive("Ext.layout.Card",Ext.layout.Default,{isCard:true,layoutClass:"x-layout-card",itemClass:"x-layout-card-item",applyAnimation:function(b){return new Ext.fx.layout.Card(b)},updateAnimation:function(c,d){if(c&&c.isAnimation){c.setLayout(this)}if(d){d.destroy()}},setContainer:function(b){Ext.layout.Default.prototype.setContainer.apply(this,arguments);b.innerElement.addCls(this.layoutClass);b.onInitialized("onContainerInitialized",this)},onContainerInitialized:function(){var e=this,f=e.container,h=f.getInnerAt(0),g=f.getActiveItem();Ext.layout.Default.prototype.onContainerInitialized.call(this);if(g){g.show();if(h&&h!==g){h.hide()}}f.on("activeitemchange","onContainerActiveItemChange",e)},onContainerActiveItemChange:function(e,d,f){this.fireEventedAction("activeitemchange",[this,d,f],"doActiveItemChange",this)},onItemInnerStateChange:function(j,f,i){Ext.layout.Default.prototype.onItemInnerStateChange.apply(this,arguments);var g=this.container,h=g.getActiveItem();j.toggleCls(this.itemClass,f);j.setLayoutSizeFlags(f?g.LAYOUT_BOTH:0);if(f){if(h!==g.innerIndexOf(j)&&h!==j&&j!==g.pendingActiveItem){j.hide()}}else{if(!i&&!j.destroyed&&j.destroying!==true){j.show()}}},doActiveItemChange:function(d,f,e){if(e){e.hide()}if(f){f.show()}},destroy:function(){Ext.layout.Default.prototype.destroy.call(this);Ext.destroy(this.getAnimation())}},0,0,0,0,["layout.card"],0,[Ext.layout,"Card"],0));(Ext.cmd.derive("Ext.layout.Fit",Ext.layout.Default,{isFit:true,layoutClass:"x-layout-fit",itemClass:"x-layout-fit-item",setContainer:function(b){Ext.layout.Default.prototype.setContainer.apply(this,arguments);b.innerElement.addCls(this.layoutClass);this.onContainerSizeFlagsChange();this.monitorSizeFlagsChange()},onContainerSizeFlagsChange:function(){var i=this.container,h=i.getSizeFlags(),j=Boolean(h&i.LAYOUT_STRETCHED),k=i.innerItems,n,l,m;Ext.layout.Default.prototype.onContainerSizeFlagsChange.call(this);for(n=0,l=k.length;n<l;n++){m=k[n];m.setLayoutSizeFlags(h)}i.innerElement.toggleCls("x-stretched",j)},onItemInnerStateChange:function(c,d){Ext.layout.Default.prototype.onItemInnerStateChange.apply(this,arguments);c.toggleCls(this.itemClass,d);c.setLayoutSizeFlags(d?this.container.getSizeFlags():0)}},0,0,0,0,["layout.fit"],0,[Ext.layout,"Fit"],0));(Ext.cmd.derive("Ext.layout.FlexBox",Ext.layout.Box,{config:{align:"stretch"},layoutBaseClass:"x-layout-box",itemClass:"x-layout-box-item",setContainer:function(b){Ext.layout.Box.prototype.setContainer.apply(this,arguments);this.monitorSizeFlagsChange()},applyOrient:function(b){return b},updateOrient:function(h,e){var f=this.container,g={delegate:"> component"};if(h==="horizontal"){this.sizePropertyName="width"}else{this.sizePropertyName="height"}f.innerElement.swapCls("x-"+h,"x-"+e);if(e){f.un(e==="horizontal"?"widthchange":"heightchange","onItemSizeChange",this,g);this.redrawContainer()}f.on(h==="horizontal"?"widthchange":"heightchange","onItemSizeChange",this,g)},onItemInnerStateChange:function(g,h){Ext.layout.Box.prototype.onItemInnerStateChange.apply(this,arguments);var f,e;g.toggleCls(this.itemClass,h);if(h){f=g.getFlex();e=g.getConfig(this.sizePropertyName);if(f){this.doItemFlexChange(g,f)}else{if(e){this.doItemSizeChange(g,e)}}}this.refreshItemSizeState(g)},refreshItemSizeState:function(n){var p=n.isInnerItem(),j=this.container,m=j.LAYOUT_HEIGHT,o=j.LAYOUT_WIDTH,l=this.sizePropertyName,i=0,k=j.getSizeFlags();if(p){i|=j.LAYOUT_STRETCHED;if(this.getAlign()==="stretch"){i|=k&(l==="width"?m:o)}if(n.getFlex()){i|=k&(l==="width"?o:m)}}n.setLayoutSizeFlags(i)},refreshAllItemSizedStates:function(){var g=this.container.innerItems,f,h,e;for(f=0,h=g.length;f<h;f++){e=g[f];this.refreshItemSizeState(e)}},onContainerSizeFlagsChange:function(){this.refreshAllItemSizedStates();Ext.layout.Box.prototype.onContainerSizeFlagsChange.apply(this,arguments)},onItemSizeChange:function(c,d){if(c.isInnerItem()){this.doItemSizeChange(c,d)}},doItemSizeChange:function(c,d){if(d){c.setFlex(null);this.redrawContainer()}},onItemFlexChange:function(c,d){if(c.isInnerItem()){this.doItemFlexChange(c,d);this.refreshItemSizeState(c)}},doItemFlexChange:function(c,d){this.setItemFlex(c,d);if(d){c.setConfig(this.sizePropertyName,null)}else{this.redrawContainer()}},redrawContainer:function(){var d=this.container,c=d.element.dom.parentNode;if(c&&c.nodeType!==11){d.innerElement.redraw()}},setItemFlex:function(g,f){var e=g.element,h=e.dom.style;e.toggleCls("x-flexed",!!f);f=f?String(f):"";if(Ext.browser.is.WebKit){h.setProperty("-webkit-box-flex",f,null)}else{if(Ext.browser.is.IE){h.setProperty("-ms-flex",f+" 0 0px",null)}else{h.setProperty("flex",f+" 0 0px",null)}}},convertPosition:function(d){var c=this.positionMap;if(c.hasOwnProperty(d)){return c[d]}return d},applyAlign:function(b){return this.convertPosition(b)},updateAlign:function(f,d){var e=this.container;e.innerElement.swapCls(f,d,true,"x-align");if(d!==undefined){this.refreshAllItemSizedStates()}},applyPack:function(b){return this.convertPosition(b)},updatePack:function(d,c){this.container.innerElement.swapCls(d,c,true,"x-pack")}},0,0,0,0,["layout.box"],0,[Ext.layout,"FlexBox"],0));(Ext.cmd.derive("Ext.layout.Float",Ext.layout.Default,{config:{direction:"left"},layoutClass:"layout-float",itemClass:"layout-float-item",setContainer:function(b){Ext.layout.Default.prototype.setContainer.apply(this,arguments);b.innerElement.addCls(this.layoutClass)},onItemInnerStateChange:function(c,d){Ext.layout.Default.prototype.onItemInnerStateChange.apply(this,arguments);c.toggleCls(this.itemClass,d)},updateDirection:function(f,e){var d="direction-";this.container.innerElement.swapCls(d+f,d+e)}},0,0,0,0,["layout.float"],0,[Ext.layout,"Float"],0));(Ext.cmd.derive("Ext.layout.HBox",Ext.layout.FlexBox,{},0,0,0,0,["layout.hbox"],0,[Ext.layout,"HBox"],0));(Ext.cmd.derive("Ext.layout.VBox",Ext.layout.FlexBox,{config:{orient:"vertical"}},0,0,0,0,["layout.vbox"],0,[Ext.layout,"VBox"],0));(Ext.cmd.derive("Ext.layout.wrapper.Dock",Ext.Base,{config:{direction:"horizontal",element:{className:"x-dock"},bodyElement:{className:"x-dock-body"},innerWrapper:null,sizeState:false,container:null},positionMap:{top:"start",left:"start",bottom:"end",right:"end"},constructor:function(b){this.items={start:[],end:[]};this.itemsCount=0;this.initConfig(b)},addItems:function(f){var e,g,h;for(e=0,g=f.length;e<g;e++){h=f[e];this.addItem(h)}},addItem:function(q){var i=q.getDocked(),w=this.positionMap[i],C=q.$dockWrapper,B=this.getContainer(),v=B.indexOf(q),s=this.items,t=s[w],D,x,y,u,r,z,A;if(C){C.removeItem(q)}q.$dockWrapper=this;D=q.link("$dockItemWrapper",new Ext.util.Wrapper({className:"x-dock-item"}));q.addCls("x-docked-"+i);x=D.element;for(y=0,u=t.length;y<u;y++){r=t[y];A=B.indexOf(r);if(A>v){z=r.element;t.splice(y,0,q);break}}if(!z){t.push(q);z=this.getBodyElement()}this.itemsCount++;if(w==="start"){x.insertBefore(z)}else{x.insertAfter(z)}D.wrap(q.element);D.bindSize(this.getDirection()==="horizontal"?"width":"height")},removeItem:function(f){var e=f.getDocked(),d=this.items[this.positionMap[e]];f.removeCls("x-docked-"+e);Ext.Array.remove(d,f);f.unlink(["$dockItemWrapper"]);f.element.detach();delete f.$dockWrapper;if(--this.itemsCount===0){this.destroy()}},getItemsSlice:function(p){var j=this.getContainer(),i=this.items,k=[],l,o,m,n;for(l=i.start,o=0,m=l.length;o<m;o++){n=l[o];if(j.indexOf(n)>p){k.push(n)}}for(l=i.end,o=0,m=l.length;o<m;o++){n=l[o];if(j.indexOf(n)>p){k.push(n)}}return k},applyElement:function(b){return Ext.Element.create(b)},updateElement:function(b){b.addCls("x-dock-"+this.getDirection())},applyBodyElement:function(b){return Ext.Element.create(b)},updateBodyElement:function(b){this.getElement().append(b)},updateInnerWrapper:function(e,f){var d=this.getBodyElement();if(f&&f.$outerWrapper===this){d.remove(f.getElement());delete f.$outerWrapper}if(e){e.setSizeState(this.getSizeState());e.$outerWrapper=this;d.append(e.getElement())}},updateSizeState:function(c){var d=this.getInnerWrapper();this.getElement().setSizeState(c);if(d){d.setSizeState(c)}},destroy:function(){var f=this,d=f.getInnerWrapper(),e=f.$outerWrapper;if(d){if(e){e.setInnerWrapper(d)}else{d.getElement().replace(f.getElement());delete d.$outerWrapper}}delete f.$outerWrapper;f.setInnerWrapper(null);f.unlink(["_bodyElement","_element"]);f.callParent()}},1,0,0,0,0,0,[Ext.layout.wrapper,"Dock"],0));(Ext.cmd.derive("Ext.util.ItemCollection",Ext.util.MixedCollection,{alternateClassName:"Ext.ItemCollection",getKey:function(b){return b.getItemId&&b.getItemId()},has:function(b){return this.map.hasOwnProperty(b.getId())}},0,0,0,0,0,0,[Ext.util,"ItemCollection",Ext,"ItemCollection"],0));(Ext.cmd.derive("Ext.util.InputBlocker",Ext.Base,{singleton:true,blockInputs:function(){if(Ext.browser.is.ie){Ext.select(".x-field-text .x-field-input:not(.x-item-disabled) .x-input-el, .x-field-textarea .x-field-input:not(.x-item-disabled) .x-input-el, .x-field-search .x-field-input:not(.x-item-disabled) .x-input-el").each(function(b){if(b.dom.offsetWidth>0){b.dom.setAttribute("disabled",true);b.dom.setAttribute("overlayfix",true)}})}},unblockInputs:function(){if(Ext.browser.is.ie){Ext.select("[overlayfix]").each(function(b){b.dom.removeAttribute("disabled");b.dom.removeAttribute("overlayfix")})}}},0,0,0,0,0,0,[Ext.util,"InputBlocker"],0));(Ext.cmd.derive("Ext.Mask",Ext.Component,{config:{baseCls:"x-mask",transparent:false,top:0,left:0,right:0,bottom:0},initialize:function(){var b=this;Ext.Component.prototype.initialize.call(this);b.element.on("tap","onTap",b);b.on("hide","onHide",b)},onHide:function(){Ext.util.InputBlocker.unblockInputs();if(Ext.browser.is.AndroidStock4&&Ext.os.version.getMinor()===0){var b=this.element.getFirstChild();if(b){b.redraw()}}},onTap:function(b){this.fireEvent("tap",this,b)},updateTransparent:function(b){this.toggleCls(this.getBaseCls()+"-transparent",b)}},0,["mask"],["widget","component","mask"],{widget:true,component:true,mask:true},["widget.mask"],0,[Ext,"Mask"],0));(Ext.cmd.derive("Ext.mixin.Queryable",Ext.Base,{mixinId:"queryable",isQueryable:true,query:function(b){b=b||"*";return Ext.ComponentQuery.query(b,this.getQueryRoot())},queryBy:function(k,l){var n=[],h=this.getQueryRoot().getRefItems(true),m=0,i=h.length,j;for(;m<i;++m){j=h[m];if(k.call(l||j,j)!==false){n.push(j)}}return n},queryById:function(b){return this.down(Ext.makeIdSelector(b))},child:function(d){var c=this.getQueryRoot().getRefItems();if(d&&d.isComponent){return this.matchById(c,d.getItemId())}if(d){c=Ext.ComponentQuery.query(d,c)}if(c.length){return c[0]}return null},down:function(b){if(b&&b.isComponent){return this.matchById(this.getRefItems(true),b.getItemId())}b=b||"";return this.query(b)[0]||null},visitPreOrder:function(f,g,h,e){Ext.ComponentQuery._visit(true,f,this.getQueryRoot(),g,h,e)},visitPostOrder:function(f,g,h,e){Ext.ComponentQuery._visit(false,f,this.getQueryRoot(),g,h,e)},getRefItems:function(){return[]},getQueryRoot:function(){return this},privates:{matchById:function(f,h){var g=f.length,j,i;for(j=0;j<g;++j){i=f[j];if(i.getItemId()===h){return i}}return null}}},0,0,0,0,0,0,[Ext.mixin,"Queryable"],0));(Ext.cmd.derive("Ext.mixin.Container",Ext.Mixin,{mixinConfig:{id:"container"},isContainer:true,config:{referenceHolder:false},getReferences:function(){Ext.ComponentManager.fixReferences();return this.refs||null},lookup:function(c){var d=this.getReferences();return(d&&d[c])||null},lookupReference:function(b){return this.lookup(b)},privates:{attachReference:function(e){var g=this,h,f;if(g.destroying||g.destroyed){return}f=g.refs||(g.refs={});h=e.referenceKey;f[h]=e},clearReference:function(d){var e=this.refs,f=d.referenceKey;if(e&&f){d.viewModelKey=d.referenceKey=e[f]=null}},containerOnAdded:function(c,d){if(d){Ext.ComponentManager.markReferencesDirty()}},containerOnRemoved:function(d){var c;if(!d){c=this.lookupReferenceHolder();if(c){Ext.ComponentManager.markReferencesDirty();c.clearReferences()}}},clearReferences:function(){this.refs=null},initContainerInheritedState:function(n,p){var l=this,i=l.getController(),k=l.getSession(),o=l.getConfig("viewModel",true),j=l.getReference(),m=l.getReferenceHolder();if(i){n.referenceHolder=i;m=true}else{if(m){n.referenceHolder=l}}if(m){n.referencePath=""}else{if(j&&l.isParentReference){n.referencePath=l.referenceKey+"."}}if(k){n.session=k}if(o){n.viewModelPath=""}else{if(j&&l.isParentReference){n.viewModelPath=l.viewModelKey+"."}}},setupReference:function(c){var d;if(c&&c.charAt(d=c.length-1)===">"){this.isParentReference=true;c=c.substring(0,d)}return c}}},0,0,0,0,0,0,[Ext.mixin,"Container"],0));(Ext.cmd.derive("Ext.Container",Ext.Component,{alternateClassName:["Ext.lib.Container","Ext.container.Container"],eventedConfig:{activeItem:0},config:{layout:"default",control:{},defaults:null,items:null,autoDestroy:true,defaultType:null,masked:null,modal:null,hideOnMaskTap:null},manageBorders:false,constructor:function(d){var c=this;c._items=c.items=new Ext.util.ItemCollection();c.innerItems=[];c.getReferences=c.getFirstReferences;c.onItemAdd=c.onFirstItemAdd;Ext.Component.prototype.constructor.apply(this,arguments);delete c.getReferences;if(c.manageBorders){c.element.addCls("x-managed-borders")}},initialize:function(){Ext.Component.prototype.initialize.call(this);this.getLayout()},getElementConfig:function(){return{reference:"element",classList:["x-container","x-unsized"],children:[{reference:"innerElement",className:"x-inner"}]}},applyMasked:function(d){var e=true,f;if(d===false){d=true;e=false}f=Ext.factory(d,Ext.Mask,this.getMasked());if(f){this.add(f);f.setHidden(!e)}return f},mask:function(b){this.setMasked(b||true)},unmask:function(){this.setMasked(false)},initInheritedState:function(c,d){Ext.Component.prototype.initInheritedState.call(this,c,d);this.initContainerInheritedState(c,d)},onAdded:function(e,f){var g=this,h;(arguments.callee.$previous||Ext.Component.prototype.onAdded).call(this,e,f);g.containerOnAdded(e,f);h=g.getModal();if(h){e.insertBefore(h,g);h.setZIndex(g.getZIndex()-1)}},onRemoved:function(b){this.containerOnRemoved(b);(arguments.callee.$previous||Ext.Component.prototype.onRemoved).call(this,b)},applyModal:function(f,d){var e=true;if(f===false){f=true;e=false}d=Ext.factory(f,Ext.Mask,d);if(d){d.setVisibility(e)}return d},updateModal:function(c){var d=this.getParent();if(d){if(c){d.insertBefore(c,this);c.setZIndex(this.getZIndex()-1)}else{d.remove(c)}}},updateHideOnMaskTap:function(c){var d=this.getModal();if(d){d[c?"on":"un"].call(d,"tap","hide",this)}},updateZIndex:function(c){var d=this.getModal();Ext.Component.prototype.updateZIndex.apply(this,arguments);if(d){d.setZIndex(c-1)}},updateBaseCls:function(g,f){var i=this,j=i.element,h=i.getUi();if(f){j.removeCls(f);i.innerElement.removeCls(g,null,"inner");if(h){j.removeCls(i.currentUi)}}if(g){j.addCls(g);i.innerElement.addCls(g,null,"inner");if(h){j.addCls(g,null,h);i.currentUi=g+"-"+h}}},applyItems:function(f,g){if(f){var e=this,h;e.getDefaultType();e.getDefaults();if(e.initialized&&g.length>0){e.removeAll()}e.add(f);if(e.initialized){h=e.initialConfig.activeItem||e.config.activeItem||0;e.setActiveItem(h)}}},applyControl:function(j){var g,f,h,i;for(g in j){i=j[g];for(f in i){h=i[f];if(Ext.isObject(h)){h.delegate=g}}i.delegate=g;this.addListener(i)}return j},onFirstItemAdd:function(){var b=this;delete b.onItemAdd;if(b.innerHtmlElement&&!b.getHtml()){b.innerHtmlElement.destroy();delete b.innerHtmlElement}b.on("innerstatechange","onItemInnerStateChange",b,{delegate:"> component"});return b.onItemAdd.apply(b,arguments)},getLayout:function(){var b=this.layout;if(!(b&&b.isLayout)){b=this.link("_layout",this.link("layout",Ext.factory(this._layout||"default",Ext.layout.Default,null,"layout")));b.setContainer(this)}return b},updateDefaultType:function(b){this.defaultItemClass=Ext.ClassManager.getByAlias("widget."+b)},factoryItem:function(h){var e=this,g=e.getDefaults(),f;if(h.isComponent){f=h;if(g&&h.isInnerItem()&&!e.has(f)){f.setConfig(g,true)}}else{if(g&&!h.ignoreDefaults){if(!(h.hasOwnProperty("left")&&h.hasOwnProperty("right")&&h.hasOwnProperty("top")&&h.hasOwnProperty("bottom")&&h.hasOwnProperty("docked")&&h.hasOwnProperty("centered"))){h=Ext.mergeIf({},h,g)}}if(!e.$hasCachedDefaultItemClass){e.getDefaultType();e.$hasCachedDefaultItemClass=true}f=Ext.factory(h,e.defaultItemClass)}return f},add:function(i){var m=this,l=true,r=[],p,o,k,q,n;if(!Ext.isArray(i)){i=[i];l=false}for(p=0,o=i.length;p<o;p++){k=i[p];n=k.isWidget;if(!n){k.$initParent=m}k=m.factoryItem(k);m.doAdd(k,n);delete k.$initParent;if(!q&&!m.getActiveItem()&&m.innerItems.length>0&&k.isInnerItem()){q=k}r.push(k)}if(q){m.setActiveItem(q)}return l?r:r[0]},doAdd:function(h,g){var i=this,f=i.getItems(),j;if(!f.has(h)){j=f.length;f.add(h);if(h.isInnerItem()){i.insertInner(h)}h.onAdded(i,!!g);i.onItemAdd(h,j)}},remove:function(i,f){var j=this,g,h;i=j.getComponent(i);g=j.indexOf(i);h=j.getInnerItems();if(f===undefined){f=j.getAutoDestroy()}if(g!==-1){if(!j.removingAll&&h.length>1&&i===j.getActiveItem()){j.on({activeitemchange:"doRemove",scope:j,single:true,order:"after",args:[i,g,f]});j.doResetActiveItem(h.indexOf(i))}else{j.doRemove(i,g,f);if(h.length===0){j.setActiveItem(null)}}}return i},doResetActiveItem:function(b){if(b===0){this.setActiveItem(1)}else{this.setActiveItem(0)}},doRemove:function(g,f,e){var h=this;h.items.remove(g);if(g.isInnerItem()){h.removeInner(g)}h.onItemRemove(g,f,e);g.onRemoved(g.destroying||e);if(e){g.destroy()}},removeAll:function(n,k){var i=this.items,j=[],l=i.length,h=0,m;if(typeof n!="boolean"){n=this.getAutoDestroy()}k=Boolean(k);this.removingAll=true;for(;h<l;h++){m=i.getAt(h);if(m&&(k||m.isInnerItem())){this.doRemove(m,h,n);h--;l--}j.push(m)}this.setActiveItem(null);this.removingAll=false;return j},getAt:function(b){return this.items.getAt(b)},getInnerAt:function(b){return this.innerItems[b]},removeAt:function(d){var c=this.getAt(d);if(c){this.remove(c)}return c},removeInnerAt:function(d){var c=this.getInnerItems()[d];if(c){this.remove(c)}return c},has:function(b){return this.getItems().indexOf(b)!=-1},hasInnerItem:function(b){return this.innerItems.indexOf(b)!=-1},indexOf:function(b){return this.getItems().indexOf(b)},innerIndexOf:function(b){return this.innerItems.indexOf(b)},insertInner:function(m,h){var i=this.getItems().items,k=this.innerItems,j=k.indexOf(m),n=-1,l;if(j!==-1){k.splice(j,1)}if(typeof h=="number"){do{l=i[++h]}while(l&&!l.isInnerItem());if(l){n=k.indexOf(l);k.splice(n,0,m)}}if(n===-1){k.push(m);n=k.length-1}if(j!==-1){this.onInnerItemMove(m,n,j)}return this},onInnerItemMove:Ext.emptyFn,removeInner:function(b){Ext.Array.remove(this.innerItems,b);return this},insert:function(f,h){var i=this,g,j;if(Ext.isArray(h)){for(j=h.length-1;j>=0;j--){i.insert(f,h[j])}return i}g=h.isWidget;if(!g){h.$initParent=i}h=i.factoryItem(h);i.doInsert(f,h,g);delete h.$initParent;return h},doInsert:function(n,l,i){var m=this,p=m.items,o=p.length,j,k;k=l.isInnerItem();if(n>o){n=o}if(p[n-1]===l){return m}j=m.indexOf(l);if(j!==-1){p.removeAt(j)}p.insert(n,l);if(j===-1){l.onAdded(m,!!i)}if(k){m.insertInner(l,n)}if(j!==-1){m.onItemMove(l,n,j)}else{m.onItemAdd(l,n)}},insertFirst:function(b){return this.insert(0,b)},insertLast:function(b){return this.insert(this.getItems().length,b)},insertBefore:function(f,e){var d=this.indexOf(e);if(d!==-1){this.insert(d,f)}return this},insertAfter:function(f,e){var d=this.indexOf(e);if(d!==-1){this.insert(d+1,f)}return this},onItemAdd:function(f,e){var d=this;d.doItemLayoutAdd(f,e);if(d.initialized){if(f.hasListeners.added){f.fireEvent("added",f,d,e)}if(d.hasListeners.add){d.fireEvent("add",d,f,e)}}},doItemLayoutAdd:function(f,e){var d=this.getLayout();if(this.isRendered()&&f.setRendered(true)){f.fireAction("renderedchange",[this,f,true],"onItemAdd",d,{args:[f,e]})}else{d.onItemAdd(f,e)}},onItemRemove:function(h,f,g){var e=this;e.doItemLayoutRemove(h,f,g);if(h.hasListeners.removed){h.fireEvent("removed",h,e,f)}if(e.hasListeners.remove){e.fireEvent("remove",e,h,f)}},doItemLayoutRemove:function(h,f,g){var e=this.getLayout();if(this.isRendered()&&h.setRendered(false)){h.fireAction("renderedchange",[this,h,false],"onItemRemove",e,{args:[h,f,g]})}else{e.onItemRemove(h,f,g)}},onItemMove:function(h,g,f){var e=this;if(h.isDocked()){h.setDocked(null)}e.doItemLayoutMove(h,g,f);if(h.hasListeners.moved){h.fireEvent("moved",h,e,g,f)}if(e.hasListeners.move){e.fireEvent("move",e,h,g,f)}},doItemLayoutMove:function(d,f,e){this.getLayout().onItemMove(d,f,e)},onItemInnerStateChange:function(f,e){var d=this.getLayout();if(e){this.insertInner(f,this.items.indexOf(f))}else{this.removeInner(f)}d.onItemInnerStateChange.apply(d,arguments)},getInnerItems:function(){return this.innerItems},getDockedItems:function(){var g=this.getItems().items,j=[],h=g.length,i,f;for(f=0;f<h;f++){i=g[f];if(i.isDocked()){j.push(i)}}return j},applyActiveItem:function(h,g){var j=this,i=j.getInnerItems();j.getItems();if(!h&&i.length===0){return 0}else{if(typeof h=="number"){h=Math.max(0,Math.min(h,i.length-1));h=i[h];if(h){return h}else{if(g){return null}}}else{if(h){var f;if(typeof h=="string"){f=j.child(h);h={xtype:h}}if(!f||!f.isComponent){h.$initParent=j;f=j.factoryItem(h)}j.pendingActiveItem=f;if(!j.has(f)){j.add(f)}delete f.$initParent;return f}}}},animateActiveItem:function(g,h){var e=this.getLayout(),f;if(this.activeItemAnimation){this.activeItemAnimation.destroy()}this.activeItemAnimation=h=new Ext.fx.layout.Card(h);if(h&&e.isCard){h.setLayout(e);f=e.getAnimation();if(f){f.disable()}h.on("animationend",function(){if(f){f.enable()}h.destroy()},this)}return this.setActiveItem(g)},updateActiveItem:function(c,d){delete this.pendingActiveItem;if(d){d.fireEvent("deactivate",d,this,c)}if(c){c.fireEvent("activate",c,this,d)}},show:function(){Ext.Component.prototype.show.apply(this,arguments);var b=this.getModal();if(b){b.setHidden(false)}return this},hide:function(){Ext.Component.prototype.hide.apply(this,arguments);var b=this.getModal();if(b){b.setHidden(true)}return this},updateHidden:function(c){var d=this.getModal();if(d&&(d.getHidden()!==c)){d.setHidden(c)}Ext.Component.prototype.updateHidden.apply(this,arguments)},setRendered:function(g){if((arguments.callee.$previous||Ext.Component.prototype.setRendered).apply(this,arguments)){var f=this.items.items,e,h;for(e=0,h=f.length;e<h;e++){f[e].setRendered(g)}return true}return false},getRefItems:function(g){var f=this.getItems().items.slice(),h=f.length,j,i;if(g){for(j=0;j<h;j++){i=f[j];if(i.getRefItems){f=f.concat(i.getRefItems(true))}}}return f},getComponent:function(b){if(typeof b==="number"){return this.getItems().getAt(b)}if(Ext.isObject(b)){b=b.getItemId()}return this.getItems().get(b)},getDockedComponent:function(g){if(Ext.isObject(g)){g=g.getItemId()}var j=this.getDockedItems(),h=j.length,i,f;if(Ext.isNumber(g)){return j[g]}for(f=0;f<h;f++){i=j[f];if(i.id==g){return i}}return false},destroy:function(){var c=this,d=c.getModal();if(d){d.destroy()}c.removeAll(true,true);Ext.Component.prototype.destroy.call(this);Ext.destroy(c.items);c.items=null},privates:{applyReference:function(b){return this.setupReference(b)},getFirstReferences:function(){var b=this;delete b.getReferences;b.getItems();return b.getReferences.apply(b,arguments)}}},1,["container"],["widget","component","container"],{widget:true,component:true,container:true},["widget.container"],[[Ext.mixin.Queryable.prototype.mixinId||Ext.mixin.Queryable.$className,Ext.mixin.Queryable],[Ext.mixin.Container.prototype.mixinId||Ext.mixin.Container.$className,Ext.mixin.Container]],[Ext,"Container",Ext.lib,"Container",Ext.container,"Container"],function(){this.prototype.defaultItemClass=this}));(Ext.cmd.derive("Ext.LoadMask",Ext.Mask,{config:{message:"Loading...",cls:"x-loading-mask",messageCls:"x-mask-message",indicator:true},getTemplate:function(){var b="x-";return[{reference:"innerElement",cls:b+"mask-inner",children:[{reference:"indicatorElement",cls:b+"loading-spinner-outer",children:[{cls:b+"loading-spinner",children:[{tag:"span",cls:b+"loading-top"},{tag:"span",cls:b+"loading-right"},{tag:"span",cls:b+"loading-bottom"},{tag:"span",cls:b+"loading-left"}]}]},{reference:"messageElement"}]}]},updateMessage:function(c){var d="x-has-message";if(c){this.addCls(d)}else{this.removeCls(d)}this.messageElement.setHtml(c)},updateMessageCls:function(c,d){this.messageElement.replaceCls(d,c)},updateIndicator:function(b){this[b?"removeCls":"addCls"]("x-indicator-hidden")}},0,["loadmask"],["widget","component","mask","loadmask"],{widget:true,component:true,mask:true,loadmask:true},["widget.loadmask"],0,[Ext,"LoadMask"],0));(Ext.cmd.derive("Ext.viewport.Default",Ext.Container,{PORTRAIT:"portrait",LANDSCAPE:"landscape",config:{autoMaximize:false,autoBlurInput:true,preventPanning:true,preventZooming:false,autoRender:true,layout:"card",width:"100%",height:"100%",useBodyElement:true,menus:{}},isReady:false,isViewport:true,isMaximizing:false,id:"ext-viewport",isInputRegex:/^(input|textarea|select|a)$/i,isInteractiveWebComponentRegEx:/^(audio|video)$/i,focusedElement:null,fullscreenItemCls:"x-fullscreen",constructor:function(j){var i=this,h=Ext.Function.bind,f=Ext.Component,g=Ext.scroll.DomScroller;if(g.document){g.document=g.document.destroy()}i.doPreventPanning=h(i.doPreventPanning,i);i.doPreventZooming=h(i.doPreventZooming,i);i.doBlurInput=h(i.doBlurInput,i);i.maximizeOnEvents=["ready","orientationchange"];window.devicePixelRatio=window.devicePixelRatio||1;Ext.Container.prototype.constructor.call(this,j);i.orientation=i.determineOrientation();i.windowWidth=i.getWindowWidth();i.windowHeight=i.getWindowHeight();i.windowOuterHeight=i.getWindowOuterHeight();i.stretchHeights=i.stretchHeights||{};if(!Ext.os.is.Android||Ext.browser.is.ChromeMobile){if(i.supportsOrientation()){i.addWindowListener("orientationchange",h(i.onOrientationChange,i))}else{i.addWindowListener("resize",h(i.onResize,i))}}document.addEventListener("focus",h(i.onElementFocus,i),true);document.addEventListener("blur",h(i.onElementBlur,i),true);Ext.onDocumentReady(i.onDomReady,i);if(!f.on){Ext.util.Observable.observe(f)}f.on("fullscreen","onItemFullscreenChange",i);return i},initialize:function(){var b=this;b.addMeta("apple-mobile-web-app-capable","yes");b.addMeta("apple-touch-fullscreen","yes");Ext.Container.prototype.initialize.call(this)},initInheritedState:function(h,e){var g=this,f=Ext.rootInheritedState;if(h!==f){g.initInheritedState(g.inheritedState=f,g.inheritedStateInner=Ext.Object.chain(f))}else{Ext.Container.prototype.initInheritedState.call(this,h,e)}},onAppLaunch:function(){var b=this;if(!b.isReady){b.onDomReady()}},onDomReady:function(){var b=this;if(b.isReady){return}b.isReady=true;b.updateSize();b.onReady();b.fireEvent("ready",b);Ext.GlobalEvents.fireEvent("viewportready",b)},onReady:function(){if(this.getAutoRender()){this.render()}if(Ext.browser.name==="ChromeiOS"){this.setHeight("-webkit-calc(100% - "+((window.outerHeight-window.innerHeight)/2)+"px)")}},onElementFocus:function(b){this.focusedElement=b.target},onElementBlur:function(){this.focusedElement=null},render:function(){if(!this.rendered){var m=Ext.getBody(),p="x-",q=[],j=Ext.os,n=j.name.toLowerCase(),l=Ext.browser.name.toLowerCase(),k=j.version.getMajor(),r=this.getOrientation(),o;this.renderTo(m);q.push(p+j.deviceType.toLowerCase());if(j.is.iPad){q.push(p+"ipad")}q.push(p+n);q.push(p+l);if(k){q.push(p+n+"-"+k)}if(j.is.BlackBerry){q.push(p+"bb");if(Ext.browser.userAgent.match(/Kbd/gi)){q.push(p+"bb-keyboard")}}if(Ext.browser.is.WebKit){q.push(p+"webkit")}if(Ext.browser.is.Standalone){q.push(p+"standalone")}if(Ext.browser.is.AndroidStock){q.push(p+"android-stock")}if(Ext.browser.is.GoogleGlass){q.push(p+"google-glass")}q.push(p+r);m.addCls(q);o=Ext.theme;if(o&&o.getDocCls){Ext.fly(document.documentElement).addCls(o.getDocCls())}}},updateAutoBlurInput:function(d){var c=Ext.feature.has.TouchEvents?"touchstart":"mousedown";this.toggleWindowListener(d,c,this.doBlurInput,false)},applyAutoMaximize:function(b){return Ext.browser.is.WebView?false:b},updateAutoMaximize:function(d){var c=this;if(d){c.on("ready","doAutoMaximizeOnReady",c,{single:true});c.on("orientationchange","doAutoMaximizeOnOrientationChange",c)}else{c.un("ready","doAutoMaximizeOnReady",c);c.un("orientationchange","doAutoMaximizeOnOrientationChange",c)}},updatePreventPanning:function(b){this.toggleWindowListener(b,"touchmove",this.doPreventPanning,false)},updatePreventZooming:function(d){var c=Ext.feature.has.TouchEvents?"touchstart":"mousedown";this.toggleWindowListener(d,c,this.doPreventZooming,false)},doAutoMaximizeOnReady:function(){var b=this;b.isMaximizing=true;b.on("maximize",function(){b.isMaximizing=false;b.updateSize();b.fireEvent("ready",b)},b,{single:true});b.maximize()},doAutoMaximizeOnOrientationChange:function(){var b=this;b.isMaximizing=true;b.on("maximize",function(){b.isMaximizing=false;b.updateSize()},b,{single:true});b.maximize()},doBlurInput:function(d){var e=d.target,f=this.focusedElement;if(f&&f.blur&&f.nodeName.toUpperCase()!="BODY"&&!this.isInputRegex.test(e.tagName)){delete this.focusedElement;f.blur()}},doPreventPanning:function(d){var e=d.target,f;if(this.isInteractiveWebComponentRegEx.test(e.tagName)&&d.touches&&d.touches.length>0){f=d.touches[0];if(f&&f.target&&this.isInputRegex.test(f.target.tagName)){return}}if(e&&e.nodeType===1&&!this.isInputRegex.test(e.tagName)){d.preventDefault()}},doPreventZooming:function(h){if("button" in h&&h.button!==0){return}var e=h.target,f=this.isInputRegex,g;if(this.isInteractiveWebComponentRegEx.test(e.tagName)&&h.touches&&h.touches.length>0){g=h.touches[0];if(g&&g.target&&f.test(g.target.tagName)){return}}if(e&&e.nodeType===1&&!f.test(e.tagName)){h.preventDefault()}},addWindowListener:function(d,f,e){window.addEventListener(d,f,Boolean(e))},removeWindowListener:function(d,f,e){window.removeEventListener(d,f,Boolean(e))},supportsOrientation:function(){return Ext.feature.has.Orientation},onResize:function(){var k=this,n=k.windowWidth,j=k.windowHeight,l=k.getWindowWidth(),i=k.getWindowHeight(),m=k.getOrientation(),h=k.determineOrientation();if((n!==l&&j!==i)&&m!==h){k.fireOrientationChangeEvent(h,m)}},onOrientationChange:function(){var c=this.getOrientation(),d=this.determineOrientation();if(d!==c){this.fireOrientationChangeEvent(d,c)}},fireOrientationChangeEvent:function(e,h){var g=this,f="x-";Ext.getBody().replaceCls(f+h,f+e);g.orientation=e;g.updateSize();g.fireEvent("orientationchange",g,e,g.windowWidth,g.windowHeight)},updateSize:function(d,e){var f=this;f.windowWidth=d!==undefined?d:f.getWindowWidth();f.windowHeight=e!==undefined?e:f.getWindowHeight();return f},waitUntil:function(k,n,l,j,m){if(!j){j=50}if(!m){m=2000}var p=this,i=0;Ext.defer(function o(){i+=j;if(k.call(p)===true){if(n){n.call(p)}}else{if(i>=m){if(l){l.call(p)}}else{Ext.defer(o,j)}}},j)},maximize:function(){this.fireMaximizeEvent()},fireMaximizeEvent:function(){this.updateSize();this.fireEvent("maximize",this)},updateHeight:function(d,c){Ext.getBody().setHeight(d);Ext.Container.prototype.updateHeight.call(this,d,c)},updateWidth:function(c,d){Ext.getBody().setWidth(c);Ext.Container.prototype.updateWidth.call(this,c,d)},scrollToTop:function(){window.scrollTo(0,-1)},getWindowWidth:function(){return window.innerWidth},getWindowHeight:function(){return window.innerHeight},getWindowOuterHeight:function(){return window.outerHeight},getWindowOrientation:function(){return window.orientation},getOrientation:function(){return this.orientation},getSize:function(){return{width:this.windowWidth,height:this.windowHeight}},determineOrientation:function(){var e=this,f=e.PORTRAIT,d=e.LANDSCAPE;if(!Ext.os.is.Android&&e.supportsOrientation()){if(e.getWindowOrientation()%180===0){return f}return d}else{if(e.getWindowHeight()>=e.getWindowWidth()){return f}return d}},onItemFullscreenChange:function(b){b.addCls(this.fullscreenItemCls);this.add(b)},setMenu:function(h,g){g=g||{};var j=this,f=g.side,i;if(Ext.os.is.iOS&&!j.hasiOSOrientationFix){j.hasiOSOrientationFix=true;j.on("orientationchange",function(){window.scrollTo(0,0)},j)}i=j.getMenus();if(!i){i={}}if(!j.addedSwipeListener){j.attachSwipeListeners();j.addedSwipeListener=true}if(!h.isComponent){if(!h.xclass&&!h.xtype){h=j.getMenuCfg(h,f)}h=Ext.create(h)}i[f]=h;h.$reveal=Boolean(g.reveal);h.$cover=g.cover!==false&&!h.$reveal;h.$side=f;j.fixMenuSize(h,f);if(f=="left"){h.setLeft(0);h.setRight(null);h.setTop(0);h.setBottom(0)}else{if(f=="right"){h.setLeft(null);h.setRight(0);h.setTop(0);h.setBottom(0)}else{if(f=="top"){h.setLeft(0);h.setRight(0);h.setTop(0);h.setBottom(null)}else{if(f=="bottom"){h.setLeft(0);h.setRight(0);h.setTop(null);h.setBottom(0)}}}}j.setMenus(i);return h},attachSwipeListeners:function(){var b=this;b.element.on({tap:b.onTap,swipestart:b.onSwipeStart,edgeswipestart:b.onEdgeSwipeStart,edgeswipe:b.onEdgeSwipe,edgeswipeend:b.onEdgeSwipeEnd,scope:b})},getMenuCfg:function(c,d){return Ext.apply({xtype:"menu"},c)},removeMenu:function(e){var d=this.getMenus()||{},f=d[e];if(f){this.hideMenu(e)}delete d[e];this.setMenus(d)},fixMenuSize:function(c,d){if(d=="top"||d=="bottom"){c.setWidth("100%")}else{if(d=="left"||d=="right"){c.setHeight("100%")}}},showMenu:function(m){var l=this,o=l.getMenus(),q=o[m],k,r,p,n,j;if(!q||q.isAnimating){return}l.hideOtherMenus(m);k={translateX:0,translateY:0};r={translateX:0,translateY:0};p={translateX:0,translateY:0};n={translateX:0,translateY:0};if(q.$reveal){Ext.getBody().insertFirst(q.element)}else{Ext.Viewport.add(q)}q.show();q.addCls("x-"+m);j=(m=="left"||m=="right")?q.element.getWidth():q.element.getHeight();if(m=="left"){k.translateX=-j;n.translateX=j}else{if(m=="right"){k.translateX=j;n.translateX=-j}else{if(m=="top"){k.translateY=-j;n.translateY=j}else{if(m=="bottom"){k.translateY=j;n.translateY=-j}}}}if(q.$reveal){if(Ext.browser.getPreferredTranslationMethod()!="scrollposition"){q.translate(0,0)}}else{q.translate(k.translateX,k.translateY)}if(q.$cover){q.getTranslatable().on("animationend",function(){q.isAnimating=false},l,{single:true});q.translate(r.translateX,r.translateY,{preserveEndState:true,duration:200})}else{l.translate(p.translateX,p.translateY);l.getTranslatable().on("animationend",function(){q.isAnimating=false},l,{single:true});l.translate(n.translateX,n.translateY,{preserveEndState:true,duration:200})}q.isAnimating=true},hideMenu:function(p,j){var n=this,m=this.getMenus(),k=m[p],l,o,i;j=j!==false;if(!k||(k.isHidden()||k.isAnimating)){return}l={translateX:0,translateY:0};o={translateX:0,translateY:0};i=(p=="left"||p=="right")?k.element.getWidth():k.element.getHeight();if(p=="left"){l.translateX=-i}else{if(p=="right"){l.translateX=i}else{if(p=="top"){l.translateY=-i}else{if(p=="bottom"){l.translateY=i}}}}if(k.$cover){if(j){k.getTranslatable().on("animationend",function(){k.isAnimating=false;k.hide()},n,{single:true});k.translate(l.translateX,l.translateY,{preserveEndState:true,duration:200})}else{k.translate(l.translateX,l.translateY);k.hide()}}else{if(j){n.getTranslatable().on("animationend",function(){k.isAnimating=false;k.hide()},n,{single:true});n.translate(o.translateX,o.translateY,{preserveEndState:true,duration:200})}else{n.translate(o.translateX,o.translateY);k.hide()}}},hideAllMenus:function(f){var d=this.getMenus(),e;for(e in d){this.hideMenu(e,f)}},hideOtherMenus:function(f,h){var e=this.getMenus(),g;for(g in e){if(f!==g){this.hideMenu(g,h)}}},toggleMenu:function(e){var d=this.getMenus(),f;if(d[e]){f=d[e];if(f.isHidden()){this.showMenu(e)}else{this.hideMenu(e)}}},sideForDirection:function(b){if(b==="left"){return"right"}else{if(b==="right"){return"left"}else{if(b=="up"){return"bottom"}else{if(b=="down"){return"top"}}}}},sideForSwipeDirection:function(b){if(b=="up"){return"top"}else{if(b=="down"){return"bottom"}}return b},onTap:function(b){},onSwipeStart:function(c){var d=this.sideForSwipeDirection(c.direction);this.hideMenu(d)},onEdgeSwipeStart:function(r){var o=this,p=o.sideForDirection(r.direction),u=o.getMenus(),w=u[p],n,q,e,x,s,v,t;if(!w||!w.isHidden()){return}for(n in u){q=u[n];if(q.isHidden()!==false){return}}o.$swiping=true;o.hideAllMenus(false);if(w.$reveal){Ext.getBody().insertFirst(w.element)}else{Ext.Viewport.add(w)}w.show();e=(p=="left"||p=="right")?w.element.getWidth():w.element.getHeight();x={translateX:0,translateY:0};s={translateX:0,translateY:0};if(p=="left"){x.translateX=-e}else{if(p=="right"){x.translateX=e}else{if(p=="top"){x.translateY=-e}else{if(p=="bottom"){x.translateY=e}}}}v="webkitTransform" in document.createElement("div").style?"webkitTransform":"transform";t=w.element.dom.style[v];if(t){w.element.dom.style[v]=""}if(w.$reveal){if(Ext.browser.getPreferredTranslationMethod()!="scrollposition"){w.translate(0,0)}}else{w.translate(x.translateX,x.translateY)}if(!w.$cover){if(t){o.innerElement.dom.style[v]=""}o.translate(s.translateX,s.translateY)}},onEdgeSwipe:function(m){var k=this,l=k.sideForDirection(m.direction),q=k.getMenus()[l],e,r,n,p,o;if(!q||!k.$swiping){return}e=(l=="left"||l=="right")?q.element.getWidth():q.element.getHeight();p=Math.min(m.distance-e,0);o=Math.min(m.distance,e);r={translateX:0,translateY:0};n={translateX:0,translateY:0};if(l=="left"){r.translateX=p;n.translateX=o}else{if(l=="right"){r.translateX=-p;n.translateX=-o}else{if(l=="top"){r.translateY=p;n.translateY=o}else{if(l=="bottom"){r.translateY=-p;n.translateY=-o}}}}if(q.$cover){q.translate(r.translateX,r.translateY)}else{k.translate(n.translateX,n.translateY)}},onEdgeSwipeEnd:function(o){var m=this,n=m.sideForDirection(o.direction),u=m.getMenus()[n],p=false,e,r,t,s,v,q;if(!u){return}e=(n=="left"||n=="right")?u.element.getWidth():u.element.getHeight();r=(o.flick)?o.flick.velocity:0;if(n=="right"){if(r.x>0){p=true}}else{if(n=="left"){if(r.x<0){p=true}}else{if(n=="top"){if(r.y<0){p=true}}else{if(n=="bottom"){if(r.y>0){p=true}}}}}t=p?e:0;s=p?0:-e;v={translateX:0,translateY:0};q={translateX:0,translateY:0};if(n=="left"){v.translateX=-t;q.translateX=-s}else{if(n=="right"){v.translateX=t;q.translateX=s}else{if(n=="top"){v.translateY=-t;q.translateY=-s}else{if(n=="bottom"){v.translateY=t;q.translateY=s}}}}if(u.$cover){u.getTranslatable().on("animationend",function(){if(p){u.hide()}},m,{single:true});u.translate(v.translateX,v.translateY,{preserveEndState:true,duration:200})}else{m.getTranslatable().on("animationend",function(){if(p){u.hide()}},m,{single:true});m.translate(q.translateX,q.translateY,{preserveEndState:true,duration:200})}m.$swiping=false},privates:{addMeta:function(e,d){var f=document.createElement("meta");f.setAttribute("name",e);f.setAttribute("content",d);Ext.getHead().append(f)},doAddListener:function(i,l,m,o,j,p,n){var k=this;if(i==="ready"&&k.isReady&&!k.isMaximizing){l.call(m);return k}Ext.Container.prototype.doAddListener.call(this,i,l,m,o,j,p,n)},toggleWindowListener:function(e,h,g,f){if(e){this.addWindowListener(h,g,f)}else{this.removeWindowListener(h,g,f)}}}},1,["viewport"],["widget","component","container","viewport"],{widget:true,component:true,container:true,viewport:true},["widget.viewport"],0,[Ext.viewport,"Default"],0));(Ext.cmd.derive("Ext.viewport.Ios",Ext.viewport.Default,{isFullscreen:function(){return this.isHomeScreen()},isHomeScreen:function(){return window.navigator.standalone===true},constructor:function(){Ext.viewport.Default.prototype.constructor.apply(this,arguments);if(this.getAutoMaximize()&&!this.isFullscreen()){this.addWindowListener("touchstart",Ext.Function.bind(this.onTouchStart,this))}},maximize:function(){if(this.isFullscreen()){return Ext.viewport.Default.prototype.maximize.call(this)}var h=this.stretchHeights,e=this.orientation,g=this.getWindowHeight(),f=h[e];if(window.scrollY>0){this.scrollToTop();if(!f){h[e]=f=this.getWindowHeight()}this.setHeight(f);this.fireMaximizeEvent()}else{if(!f){f=this.getScreenHeight()}this.setHeight(f);this.waitUntil(function(){this.scrollToTop();return g!==this.getWindowHeight()},function(){if(!h[e]){f=h[e]=this.getWindowHeight();this.setHeight(f)}this.fireMaximizeEvent()},function(){f=h[e]=this.getWindowHeight();this.setHeight(f);this.fireMaximizeEvent()},50,1000)}},getScreenHeight:function(){return window.screen[this.orientation===this.PORTRAIT?"height":"width"]},onElementFocus:function(){if(this.getAutoMaximize()&&!this.isFullscreen()){clearTimeout(this.scrollToTopTimer)}Ext.viewport.Default.prototype.onElementFocus.apply(this,arguments)},onElementBlur:function(){if(this.getAutoMaximize()&&!this.isFullscreen()){this.scrollToTopTimer=Ext.defer(this.scrollToTop,500)}Ext.viewport.Default.prototype.onElementBlur.apply(this,arguments)},onTouchStart:function(){if(this.focusedElement===null){this.scrollToTop()}},scrollToTop:function(){window.scrollTo(0,0)}},1,0,["widget","component","container","viewport"],{widget:true,component:true,container:true,viewport:true},0,0,[Ext.viewport,"Ios"],function(){if(!Ext.os.is.iOS){return}if(Ext.os.version.lt("3.2")){this.override({constructor:function(){var b=this.stretchHeights={};b[this.PORTRAIT]=416;b[this.LANDSCAPE]=268;return this.callOverridden(arguments)}})}if(Ext.os.version.lt("5")){this.override({fieldMaskClsTest:"-field-mask",doPreventZooming:function(c){var d=c.target;if(d&&d.nodeType===1&&!this.isInputRegex.test(d.tagName)&&d.className.indexOf(this.fieldMaskClsTest)==-1){c.preventDefault()}}})}if(Ext.os.is.iPad){this.override({isFullscreen:function(){return true}})}if(Ext.os.version.gtEq("7")){if(Ext.os.deviceType==="Tablet"||!Ext.browser.is.Safari||window.navigator.standalone){this.override({constructor:function(){var k={},g={},h=this.determineOrientation(),i=window.screen.height,l=window.screen.width,j=h===this.PORTRAIT?i-window.innerHeight:l-window.innerHeight;k[this.PORTRAIT]=i-j;k[this.LANDSCAPE]=l-j;g[this.PORTRAIT]=l;g[this.LANDSCAPE]=i;this.stretchHeights=k;this.stretchWidths=g;this.callOverridden(arguments);this.on("ready",this.setViewportSizeToAbsolute,this);this.on("orientationchange",this.setViewportSizeToAbsolute,this)},getWindowHeight:function(){return this.stretchHeights[this.orientation]},getWindowWidth:function(){return this.stretchWidths[this.orientation]},setViewportSizeToAbsolute:function(){this.setWidth(this.getWindowWidth());this.setHeight(this.getWindowHeight())}})}if(Ext.os.deviceType==="Tablet"){this.override({constructor:function(){this.callOverridden(arguments);window.addEventListener("scroll",function(){if(window.scrollX!==0){window.scrollTo(0,window.scrollY)}},false)},setViewportSizeToAbsolute:function(){window.scrollTo(0,0);this.callOverridden(arguments)},onElementBlur:function(){this.callOverridden(arguments);if(window.scrollY!==0){window.scrollTo(0,0)}}})}}}));(Ext.cmd.derive("Ext.viewport.Android",Ext.viewport.Default,{config:{translatable:{translationMethod:"csstransform"}},constructor:function(){Ext.viewport.Default.prototype.constructor.apply(this,arguments);this.on({orientationchange:"hideKeyboardIfNeeded",scope:this,priority:1001});var b=this;Ext.onReady(function(){Ext.getBody().on("resize",b.onResize,b)})},getWindowWidth:function(){return this.element.getWidth()},getWindowHeight:function(){return this.element.getHeight()},getDummyInput:function(){var e=this.dummyInput,f=this.focusedElement,d=Ext.fly(f).getBox();if(!e){this.dummyInput=e=document.createElement("input");e.style.position="absolute";e.style.opacity="0";e.style.pointerEvents="none";document.body.appendChild(e)}e.style.left=d.left+"px";e.style.top=d.top+"px";e.style.display="";return e},doBlurInput:function(h){var e=h.target,g=this.focusedElement,f;if(g&&!this.isInputRegex.test(e.tagName)){f=this.getDummyInput();delete this.focusedElement;f.focus();Ext.defer(function(){f.style.display="none"},100)}},hideKeyboardIfNeeded:function(){var b=this.focusedElement;if(b){delete this.focusedElement;if(Ext.os.version.lt("4")){b.style.display="none"}else{b.blur()}Ext.defer(function(){b.style.display=""},1000)}},doFireOrientationChangeEvent:function(){this.orientationChanging=true;this.waitUntil(function(){return this.getWindowOuterHeight()!==this.windowOuterHeight},function(){this.windowOuterHeight=this.getWindowOuterHeight();this.updateSize();this.orientationChanging=false},function(){});return this},determineOrientation:function(){return(this.getWindowHeight()>=this.getWindowWidth())?this.PORTRAIT:this.LANDSCAPE},getActualWindowOuterHeight:function(){return Math.round(this.getWindowOuterHeight()/window.devicePixelRatio)},maximize:function(){var h=this.stretchHeights,e=this.orientation,f;f=h[e];if(!f){h[e]=f=this.getActualWindowOuterHeight()}if(!this.addressBarHeight){this.addressBarHeight=f-this.getWindowHeight()}this.setHeight(f);var g=Ext.Function.bind(this.isHeightMaximized,this,[f]);this.scrollToTop();this.waitUntil(g,this.fireMaximizeEvent,this.fireMaximizeEvent)},isHeightMaximized:function(b){this.scrollToTop();return this.getWindowHeight()===b},supportsOrientation:function(){return false},onResize:function(){this.waitUntil(function(){var l=this.windowWidth,i=this.windowHeight,j=this.getWindowWidth(),h=this.getWindowHeight(),k=this.getOrientation(),g=this.determineOrientation();return((l!==j&&i!==h)&&k!==g)},function(){var c=this.getOrientation(),d=this.determineOrientation();this.fireOrientationChangeEvent(d,c)},Ext.emptyFn,250)},doPreventZooming:function(c){if("button" in c&&c.button!==0){return}var d=c.target;if(d&&d.nodeType===1&&!this.isInputRegex.test(d.tagName)&&!this.focusedElement){c.preventDefault()}}},1,0,["widget","component","container","viewport"],{widget:true,component:true,container:true,viewport:true},0,0,[Ext.viewport,"Android"],function(){if(!Ext.os.is.Android){return}var e=Ext.os.version,d=Ext.browser.userAgent,f=/(htc|desire|incredible|ADR6300)/i.test(d)&&e.lt("2.3");if(f){this.override({constructor:function(a){if(!a){a={}}a.autoMaximize=false;this.watchDogTick=Ext.Function.bind(this.watchDogTick,this);Ext.interval(this.watchDogTick,1000);return this.callParent([a])},watchDogTick:function(){this.watchDogLastTick=Ext.Date.now()},doPreventPanning:function(){var b=Ext.Date.now(),a=this.watchDogLastTick,c=b-a;if(c>=2000){return}return this.callParent(arguments)},doPreventZooming:function(){var b=Ext.Date.now(),a=this.watchDogLastTick,c=b-a;if(c>=2000){return}return this.callParent(arguments)}})}if(e.match("2")){this.override({onReady:function(){this.addWindowListener("resize",Ext.Function.bind(this.onWindowResize,this));this.callParent(arguments)},scrollToTop:function(){document.body.scrollTop=100},onWindowResize:function(){var c=this.windowWidth,a=this.windowHeight,b=this.getWindowWidth(),h=this.getWindowHeight();if(this.getAutoMaximize()&&!this.isMaximizing&&!this.orientationChanging&&window.scrollY===0&&c===b&&h<a&&((h>=a-this.addressBarHeight)||!this.focusedElement)){this.scrollToTop()}}})}else{if(e.gtEq("3.1")){this.override({isHeightMaximized:function(a){this.scrollToTop();return this.getWindowHeight()===a-1}})}else{if(e.match("3")){this.override({isHeightMaximized:function(){this.scrollToTop();return true}})}}}if(e.gtEq("4")){this.override({doBlurInput:Ext.emptyFn})}}));(Ext.cmd.derive("Ext.viewport.WindowsPhone",Ext.viewport.Default,{alternateClassName:"Ext.viewport.WP",config:{translatable:{translationMethod:"csstransform"}},initialize:function(){var b=function(e){var f=e.srcElement.nodeName.toUpperCase(),a=["INPUT","TEXTAREA"];if(a.indexOf(f)==-1){return false}};document.body.addEventListener("onselectstart",b);this.addMeta("msapplication-tap-highlight","no");Ext.viewport.Default.prototype.initialize.call(this)},supportsOrientation:function(){return false},onResize:function(){this.waitUntil(function(){var l=this.windowWidth,i=this.windowHeight,j=this.getWindowWidth(),h=this.getWindowHeight(),k=this.getOrientation(),g=this.determineOrientation();return((l!==j&&i!==h)&&k!==g)},function(){var c=this.getOrientation(),d=this.determineOrientation();this.fireOrientationChangeEvent(d,c)},Ext.emptyFn,250)}},0,0,["widget","component","container","viewport"],{widget:true,component:true,container:true,viewport:true},0,0,[Ext.viewport,"WindowsPhone",Ext.viewport,"WP"],0));(Ext.cmd.derive("Ext.viewport.Viewport",Ext.Base,{singleton:true,setup:function(e){var d=Ext.os.name,f;switch(d){case"Android":f=(Ext.browser.name==="ChromeMobile")?"Default":"Android";break;case"iOS":f="Ios";break;case"Windows":f=(Ext.browser.name==="IE")?"WindowsPhone":"Default";break;case"WindowsPhone":f="WindowsPhone";break;default:f="Default";break}Ext.Viewport=Ext.create("Ext.viewport."+f,e)}},0,0,0,0,0,0,[Ext.viewport,"Viewport"],0));Ext.define("Ext.overrides.app.Application",{override:"Ext.app.Application",initMainView:function(){var f=this,e,d;f.viewport=e=Ext.Viewport;arguments.callee.$previous.call(this);d=f.getMainView();e.onAppLaunch();if(d){e.add(d)}}});(Ext.cmd.derive("Ext.data.Batch",Ext.Base,{config:{pauseOnException:false},current:-1,total:0,running:false,complete:false,exception:false,constructor:function(d){var c=this;c.mixins.observable.constructor.call(c,d);c.operations=[];c.exceptions=[]},add:function(e){var g=this,h,f;if(Ext.isArray(e)){for(h=0,f=e.length;h<f;++h){g.add(e[h])}}else{g.total++;e.setBatch(g);g.operations.push(e)}return g},sort:function(){this.operations.sort(this.sortFn)},sortFn:function(l,h){var g=l.order-h.order;if(g){return g}var i=l.entityType,k=h.entityType,j;if(!i||!k){return 0}if(!(j=i.rank)){i.schema.rankEntities();j=i.rank}return(j-k.rank)*l.foreignKeyDirection},start:function(d){var c=this;if(!c.operations.length||c.running){return c}c.exceptions.length=0;c.exception=false;c.running=true;return c.runOperation(Ext.isDefined(d)?d:c.current+1)},retry:function(){return this.start(this.current)},runNextOperation:function(){var b=this;if(b.running){b.runOperation(b.current+1)}return b},pause:function(){this.running=false;return this},getOperations:function(){return this.operations},getExceptions:function(){return this.exceptions},getCurrent:function(){var d=null,c=this.current;if(!(c===-1||this.complete)){d=this.operations[c]}return d},getTotal:function(){return this.total},isRunning:function(){return this.running},isComplete:function(){return this.complete},hasException:function(){return this.exception},runOperation:function(h){var g=this,e=g.operations,f=e[h];if(f===undefined){g.running=false;g.complete=true;g.fireEvent("complete",g,e[e.length-1])}else{g.current=h;f.setInternalCallback(g.onOperationComplete);f.setInternalScope(g);f.execute()}return g},onOperationComplete:function(e){var f=this,d=e.hasException();if(d){f.exception=true;f.exceptions.push(e);f.fireEvent("exception",f,e)}if(d&&f.getPauseOnException()){f.pause()}else{f.fireEvent("operationcomplete",f,e);f.runNextOperation()}}},1,0,0,0,0,[["observable",Ext.mixin.Observable]],[Ext.data,"Batch"],0));(Ext.cmd.derive("Ext.data.matrix.Slice",Ext.Base,{constructor:function(d,c){this.id=c;this.side=d;this.members={}},attach:function(d){var c=this;c.store=d;d.matrix=c;d.on("load",c.onStoreLoad,c,{single:true})},commit:function(){var d=this.members,c;for(c in d){d[c][2]=0}},onStoreLoad:function(b){this.update(b.getData().items,0)},update:function(y,E){var i=this,C=Ext.data.matrix.Slice,H=i.side,B=H.index,F=y.length,z=i.id,t=i.members,I=H.inverse,u=I.slices,D,w,x,v,J,A,G;for(x=0;x<F;++x){w=G=null;v=y[x];J=v.isEntity?(G=v).id:v;D=t[J];if(E<0&&D&&D[2]===1){delete t[J];A=u[J];if(A){delete A.members[z]}w=1}else{if(!D){D=[J,J,E];D[B]=z;t[J]=D;A=u[J];if(!A){u[J]=A=new C(I,J)}A.members[z]=D;w=1}else{if(E!==D[2]&&E!==0){D[2]=E;A=u[J];w=1}}}if(w){if(i.notify){i.notify.call(i.scope,i,J,E)}if(A&&A.notify){A.notify.call(A.scope,A,z,E)}}}},updateId:function(w){var p=this,x=p.id,q=p.side,m=q.slices,n=m[x],v=n.members,s=q.index,u=q.inverse.slices,r,t,o;p.id=w;m[w]=n;delete m[x];for(t in v){r=v[t];r[s]=w;o=u[t].members;o[w]=o[x];delete o[x]}},destroy:function(){var c=this,d=c.store;if(d){d.matrix=null;d.un("load",c.onStoreLoad,c)}c.notify=c.scope=c.store=c.side=c.members=null;c.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,"Slice"],0));(Ext.cmd.derive("Ext.data.matrix.Side",Ext.Base,{constructor:function(f,e,g){var h=this;h.matrix=f;h.index=e;h.role=g;h.slices={}},commit:function(){var d=this.slices,c;for(c in d){d[c].commit()}},get:function(f,g){var j=this,h=j.slices,i=h[f]||(h[f]=new Ext.data.matrix.Slice(j,f));return(g||g===0)?i.members[g]:i},update:function(e,f,h){var g=this.get(e);return g.update(f,h)},updateId:function(f,e){var d=this.get(f);if(d){d.updateId(e)}},destroy:function(){var e=this,d=e.slices,f;for(f in d){d[f].destroy()}e.inverse=e.matrix=e.role=e.slices=null;e.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,"Side"],0));(Ext.cmd.derive("Ext.data.matrix.Matrix",Ext.Base,{constructor:function(j,n){var l=this,h=n.isManyToMany?n:j.getSchema().getAssociation(n),i=Ext.data.matrix.Side,k=new i(l,0,h.left),m=new i(l,1,h.right);l.association=h;l.session=j;l.left=k;l.right=m;k.inverse=m;m.inverse=k},commit:function(){this.left.commit();this.right.commit()},update:function(d,e,f){return this.left.update(d,e,f)},updateId:function(i,j,n){var h=i.self,k=this.left,m=this.right,l;if(h===k.role.cls){l=k}if(h===m.role.cls){l=m}if(l){l.updateId(j,n)}},destroy:function(){var b=this;b.left.destroy();b.right.destroy();b.association=b.session=b.left=b.right=null;b.callParent()}},1,0,0,0,0,0,[Ext.data.matrix,"Matrix"],0));(Ext.cmd.derive("Ext.data.session.ChangesVisitor",Ext.Base,{constructor:function(f){var e=this,d;e.session=f;d=f.getCrudProperties();e.result=null;e.writerOptions={};e.createKey=d.create;e.readKey=d.read;e.updateKey=d.update;e.dropKey=d.drop},onDirtyRecord:function(w){var t=this,q=t.crud,x=w.phantom,z=w.dropped,v=!x&&!z,s=w.$className,A=(x||z)?"allDataOptions":"partialDataOptions",u=t.writerOptions,B=w.entityName,o,y,r,p;if(x&&z){return false}q=x?t.createKey:(z?t.dropKey:t.updateKey);u=u[s]||(u[s]={});if(z){if(!(o=u.drop)){u.drop=o={all:w.getProxy().getWriter().getWriteAllFields()}}if(!o.all){r=w.id}}if(!r){if(!(o=u[A])){o=w.getProxy().getWriter().getConfig(A);u[A]=o=Ext.Object.chain(o);t.setupOptions(o)}r=w.getData(o)}p=t.result||(t.result={});y=p[B]||(p[B]={});y=y[q]||(y[q]=[]);y.push(r)},setupOptions:function(b){b.serialize=true},onMatrixChange:function(q,l,m,t){var n=this,s=q.left.type,o=q.right.role,p=t<0?n.dropKey:n.createKey,r,k;k=n.result||(n.result={});r=k[s]||(k[s]={});r=r[o]||(r[o]={});r=r[p]||(r[p]={});r=r[l]||(r[l]=[]);r.push(m)}},1,0,0,0,0,0,[Ext.data.session,"ChangesVisitor"],0));(Ext.cmd.derive("Ext.data.session.ChildChangesVisitor",Ext.data.session.ChangesVisitor,{constructor:function(){this.seen={};Ext.data.session.ChangesVisitor.prototype.constructor.apply(this,arguments)},setupOptions:function(b){Ext.data.session.ChangesVisitor.prototype.setupOptions.call(this,b);b.serialize=false},onDirtyRecord:function(b){if(Ext.data.session.ChangesVisitor.prototype.onDirtyRecord.apply(this,arguments)!==false){if(!b.$source&&(b.dropped||!b.phantom)){this.readEntity(b)}}},readEntity:function(m){var l=this,n=l.readKey,q=m.entityName,p=m.id,r=l.seen,k=q+p,j,o;if(r[k]){return}r[k]=true;j=l.result||(l.result={});o=j[q]||(j[q]={});o=o[n]||(o[n]=[]);o.push(Ext.apply({},m.modified,m.data))}},1,0,0,0,0,0,[Ext.data.session,"ChildChangesVisitor"],0));(Ext.cmd.derive("Ext.data.session.BatchVisitor",Ext.Base,{map:null,constructor:function(b){this.batch=b},getBatch:function(m){var l=this.map,o=this.batch,k,i,p,j,n;if(l){if(!o){o=new Ext.data.Batch()}for(p in l){k=l[p];i=k.entity;n=i.getProxy();delete k.entity;for(j in k){j=n.createOperation(j,{records:k[j]});j.entityType=i;o.add(j)}}}if(o&&m!==false){o.sort()}return o},onDirtyRecord:function(h){var k=this,g=h.phantom?"create":(h.dropped?"destroy":"update"),l=h.$className,j=(k.map||(k.map={})),i=(j[l]||(j[l]={entity:h.self}));i=i[g]||(i[g]=[]);i.push(h)}},1,0,0,0,0,0,[Ext.data.session,"BatchVisitor"],0));(Ext.cmd.derive("Ext.data.Session",Ext.Base,{isSession:true,config:{schema:"default",parent:null,autoDestroy:true,crudProperties:{create:"C",read:"R",update:"U",drop:"D"}},destroyed:false,crudOperations:[{type:"R",entityMethod:"readEntities"},{type:"C",entityMethod:"createEntities"},{type:"U",entityMethod:"updateEntities"},{type:"D",entityMethod:"dropEntities"}],crudKeys:{C:1,R:1,U:1,D:1},constructor:function(d){var c=this;c.data={};c.matrices={};c.identifierCache={};c.recordCreator=c.recordCreator.bind(c);c.initConfig(d)},destroy:function(){var m=this,h=m.matrices,l=m.data,n,k,i,j;for(j in h){h[j].destroy()}for(n in l){k=l[n];for(j in k){i=k[j].record;if(i){i.$source=i.session=null}}}m.recordCreator=m.matrices=m.data=null;m.setSchema(null);m.callParent()},adopt:function(e){var g=this,h=e.associations,f;if(e.session!==g){e.session=g;g.add(e);if(h){for(f in h){h[f].adoptAssociated(e,g)}}}},commit:function(){var k=this.data,g=this.matrices,l,j,i,h;for(l in k){j=k[l];for(i in j){h=j[i].record;if(h){h.commit()}}}for(i in g){g[i].commit()}},createRecord:function(f,j){var i=f.$isClass?f:this.getSchema().getEntity(f),g=this.getParent(),h;if(j&&g){h=i.getIdFromData(j);if(g.peekRecord(i,h)){Ext.raise("A parent session already contains an entry for "+i.entityName+": "+h)}}return new i(j,this)},getChanges:function(){var b=new Ext.data.session.ChangesVisitor(this);this.visitData(b);return b.result},getChangesForParent:function(){var b=new Ext.data.session.ChildChangesVisitor(this);this.visitData(b);return b.result},getRecord:function(k,r,p){var l=this,q=k.isModel,m,o,j,n;if(q){q=k;r=k.id;k=k.self}m=l.peekRecord(k,r);if(!m){o=k.$isClass?k:l.getSchema().getEntity(k);j=l.getParent();if(j){n=j.peekRecord(o,r)}if(n){if(n.isLoading()){q=false}else{m=n.copy(undefined,l);m.$source=n}}if(!m){if(q){m=q;l.adopt(m)}else{m=o.createWithId(r,null,l);if(p!==false){m.load(Ext.isObject(p)?p:undefined)}}}}return m},getSaveBatch:function(d){var c=new Ext.data.session.BatchVisitor();this.visitData(c);return c.getBatch(d)},onInvalidAssociationEntity:function(d,c){Ext.raise("Unable to read association entity: "+this.getModelIdentifier(d,c))},onInvalidEntityCreate:function(d,c){Ext.raise("Cannot create, record already not exists: "+this.getModelIdentifier(d,c))},onInvalidEntityDrop:function(d,c){Ext.raise("Cannot drop, record does not exist: "+this.getModelIdentifier(d,c))},onInvalidEntityRead:function(d,c){Ext.raise("Cannot read, record already not exists: "+this.getModelIdentifier(d,c))},onInvalidEntityUpdate:function(e,f,d){if(d){Ext.raise("Cannot update, record dropped: "+this.getModelIdentifier(e,f))}else{Ext.raise("Cannot update, record does not exist: "+this.getModelIdentifier(e,f))}},peekRecord:function(n,k,j){var l=n.$isClass?n:this.getSchema().getEntity(n),p=l.entityName,m=this.data[p],i,o;m=m&&m[k];i=m&&m.record;if(!i&&j){o=this.getParent();i=o&&o.peekRecord(n,k,j)}return i||null},save:function(){var b=new Ext.data.session.ChildChangesVisitor(this);this.visitData(b);this.getParent().update(b.result)},spawn:function(){return new this.self({schema:this.getSchema(),parent:this})},update:function(x){var v=this,B=v.getSchema(),F=v.crudOperations,w=F.length,u=v.crudKeys,t,A,r,y,C,i,D,s,z,E;v.getSchema().processKeyChecks(true);for(t in x){A=B.getEntity(t);r=x[t];for(y=0;y<w;++y){C=F[y];i=r[C.type];if(i){v[C.entityMethod](A,i)}}}for(t in x){A=B.getEntity(t);D=A.associations;r=x[t];for(s in r){if(u[s]){continue}z=D[s];E=r[z.role];z.processUpdate(v,E)}}},privates:{add:function(g){var j=this,i=g.id,k=j.getEntry(g.self,i),l,h;k.record=g;j.registerReferences(g);l=g.associations;for(h in l){l[h].checkMembership(j,g)}},afterErase:function(b){this.evict(b)},applySchema:function(b){return Ext.data.schema.Schema.get(b)},createEntities:function(m,h){var i=h.length,n,l,k,j;for(n=0;n<i;++n){l=h[n];j=m.getIdFromData(l);k=this.peekRecord(m,j);if(!k){k=this.createRecord(m,l)}else{this.onInvalidEntityCreate(m,j)}k.phantom=true}},dropEntities:function(l,m){var h=m.length,n,k,j,i;if(h){i=Ext.isObject(m[0])}for(n=0;n<h;++n){j=m[n];if(i){j=l.getIdFromData(j)}k=this.peekRecord(l,j);if(k){k.drop()}else{this.onInvalidEntityDrop(l,j)}}},evict:function(g){var f=g.entityName,i=this.data[f],h=g.id,j;if(i){delete i[h]}},getEntityList:function(m,n){var i=n.length,h,j,k,l;for(h=0;h<i;++h){j=n[h];k=this.peekRecord(m,j);if(k){n[h]=k}else{l=true;n[h]=null;this.onInvalidAssociationEntity(m,j)}}if(l){n=Ext.Array.clean(n)}return n},getEntry:function(g,i){if(g.isModel){i=g.getId();g=g.self}var k=g.$isClass?g:this.getSchema().getEntity(g),h=k.entityName,j=this.data,l;l=j[h]||(j[h]={});l=l[i]||(l[i]={});return l},getRefs:function(o,p,k){var m=this.getEntry(o),n=m&&m.refs&&m.refs[p.role],l=k&&this.getParent(),j,r,q;if(l){j=l.getRefs(o,p);if(j){for(r in j){q=j[r];if((!n||!n[r])){this.getRecord(q.self,q.id)}}n=m&&m.refs&&m.refs[p.role]}}return n||null},getIdentifier:function(i){var j=this.getParent(),h,l,k,g;if(j){g=j.getIdentifier(i)}else{h=this.identifierCache;l=i.identifier;k=l.id||i.entityName;g=h[k];if(!g){if(l.clone){g=l.clone({cache:h})}else{g=l}h[k]=g}}return g},getMatrix:function(g,h){var i=g.isManyToMany?g.name:g,j=this.matrices,f;f=j[i];if(!f&&!h){f=j[i]=new Ext.data.matrix.Matrix(this,g)}return f||null},getMatrixSlice:function(g,h){var f=this.getMatrix(g.association),e=f[g.side];return e.get(h)},getModelIdentifier:function(d,c){return c+"@"+d.entityName},onIdChanged:function(I,C,G){var x=this,M=x.matrices,F=I.entityName,B=I.id,u=x.data[F],L=u[C],y=I.associations,K=L.refs,N=x._setNoRefs,H,J,z,E,v,D,A,w;delete u[C];u[G]=L;for(w in M){M[w].updateId(I,C,G)}if(K){for(D in K){A=K[D];v=y[D];H=v.association;if(!H.isManyToMany){J=H.field.name;for(E in A){A[E].set(J,B,N)}}}}x.registerReferences(I,C)},processManyBlock:function(o,n,l,q){var k=this,r,m,p,j;if(l){for(r in l){m=k.peekRecord(o,r);if(m){p=k.getEntityList(n.cls,l[r]);j=n.getAssociatedItem(m);k[q](n,j,m,p)}else{k.onInvalidAssociationEntity(o,r)}}}},processManyCreate:function(g,h,f,e){if(h){h.add(e)}else{f[g.getterName](null,null,e)}},processManyDrop:function(g,h,f,e){if(h){h.remove(e)}},processManyRead:function(g,h,f,e){if(h){h.setRecords(e)}else{f[g.getterName](null,null,e)}},readEntities:function(m,h){var i=h.length,n,l,k,j;for(n=0;n<i;++n){l=h[n];j=m.getIdFromData(l);k=this.peekRecord(m,j);if(!k){k=this.createRecord(m,l)}else{this.onInvalidEntityRead(m,j)}k.phantom=false}},recordCreator:function(j,i){var f=this,h=i.getIdFromData(j),g=f.peekRecord(i,h,true);if(!g){g=new i(j,f)}else{g=f.getRecord(i,h)}return g},registerReferences:function(u,z){var r=u.entityName,A=u.id,B=u.data,v=z||z===0,q,w,i,t,y,p,s,x;t=(p=u.references).length;for(w=0;w<t;++w){y=p[w];i=B[y.name];if(i||i===0){y=y.reference;r=y.type;x=y.inverse.role;q=this.getEntry(y.cls,i);s=q.refs||(q.refs={});s=s[x]||(s[x]={});s[A]=u;if(v){delete s[z]}}}},updateEntities:function(n,i){var j=i.length,o,m,l,k,p;if(Ext.isArray(i)){for(o=0;o<j;++o){m=i[o];k=n.getIdFromData(m);l=this.peekRecord(n,k);if(l){l.set(m)}else{this.onInvalidEntityUpdate(n,k)}}}else{for(k in i){m=i[k];l=this.peekRecord(n,k);if(l&&!l.dropped){p=l.set(m)}else{this.onInvalidEntityUpdate(n,k,!!l)}}}},updateReference:function(o,m,r,t){var q=m.reference,l=q.type,p=q.inverse.role,s=o.id,k,n;if(t||t===0){n=this.getEntry(l,t).refs[p];delete n[s]}if(r||r===0){k=this.getEntry(l,r);n=k.refs||(k.refs={});n=n[p]||(n[p]={});n[s]=o}},visitData:function(x){var v=this,z=v.data,r=v.matrices,s,w,B,p,u,A,C,y,t,q,D;v.getSchema().processKeyChecks(true);for(C in z){s=z[C];for(B in s){y=s[B].record;if(y){if(y.phantom||y.dirty||y.dropped){if(x.onDirtyRecord){x.onDirtyRecord(y)}}else{if(x.onCleanRecord){x.onCleanRecord(y)}}}}}if(x.onMatrixChange){for(C in r){u=r[C].left;q=u.slices;w=u.role.association;for(B in q){t=q[B];A=t.members;for(p in A){D=(y=A[p])[2];if(D){x.onMatrixChange(w,y[0],y[1],D)}}}}}return x},_setNoRefs:{refs:false}}},1,0,0,0,0,0,[Ext.data,"Session"],0));(Ext.cmd.derive("Ext.app.domain.Controller",Ext.app.EventDomain,{singleton:true,type:"controller",prefix:"controller.",idMatchRe:/^\#/,constructor:function(){var b=this;b.callParent();b.monitor(Ext.app.BaseController)},match:function(g,e){var f=false,h=g.alias;if(e==="*"){f=true}else{if(e==="#"){f=!!g.isApplication}else{if(this.idMatchRe.test(e)){f=g.getId()===e.substring(1)}else{if(h){f=Ext.Array.indexOf(h,this.prefix+e)>-1}}}}return f}},1,0,0,0,0,0,[Ext.app.domain,"Controller"],0));(Ext.cmd.derive("Ext.data.PageMap",Ext.util.LruCache,{config:{store:null,pageSize:0,rootProperty:""},clear:function(d){var c=this;c.pageMapGeneration=(c.pageMapGeneration||0)+1;c.indexMap={};Ext.util.LruCache.prototype.clear.call(this,d)},forEach:function(n,i){var p=this,s=Ext.Object.getKeys(p.map),v=s.length,o=p.getPageSize(),t,u,j,q,r;for(t=0;t<v;t++){s[t]=+s[t]}Ext.Array.sort(s,Ext.Array.numericSortFn);i=i||p;for(t=0;t<v;t++){j=s[t];q=p.getPage(j);r=q.length;for(u=0;u<r;u++){if(n.call(i,q[u],(j-1)*o+u)===false){return}}}},findBy:function(h,e){var g=this,f=null;e=e||g;g.forEach(function(a,b){if(h.call(e,a,b)){f=a;return false}});return f},findIndexBy:function(h,e){var g=this,f=-1;e=e||g;g.forEach(function(a,b){if(h.call(e,a)){f=b;return false}});return f},find:function(l,m,k,o,p,i){if(Ext.isEmpty(m,false)){return null}var n=Ext.String.createRegex(m,o,p,i),j=this.getRootProperty();return this.findBy(function(a){return a&&n.test((j?a[j]:a)[l])},null,k)},findIndex:function(l,m,k,o,p,i){if(Ext.isEmpty(m,false)){return null}var n=Ext.String.createRegex(m,o,p,i),j=this.getRootProperty();return this.findIndexBy(function(a){return a&&n.test((j?a[j]:a)[l])},null,k)},getPageFromRecordIndex:function(b){return Math.floor(b/this.getPageSize())+1},addAll:function(b){this.addPage(1,b)},addPage:function(i,v){var n=this,m=n.getPageSize(),t=i+Math.floor((v.length-1)/m),o=(i-1)*m,q=n.indexMap,r,u,s,p;for(p=0;i<=t;i++,p+=m){r=Ext.Array.slice(v,p,p+m);for(u=0,s=r.length;u<s;u++){q[r[u].internalId]=o++}n.add(i,r);n.fireEvent("pageadd",n,i,r)}},getCount:function(){var b=Ext.util.LruCache.prototype.getCount.call(this);if(b){b=(b-1)*this.getPageSize()+this.last.value.length}return b},getByInternalId:function(d){var c=this.indexMap[d];if(c!=null){return this.getAt(c)}},indexOf:function(c){var d=-1;if(c){d=this.indexMap[c.internalId];if(d==null){d=-1}}return d},insert:function(){},remove:function(){},removeAt:function(){},removeAtKey:function(i){var j=this,l=j.getPage(i),g,k,h;if(l){if(j.fireEvent("beforepageremove",j,i,l)!==false){g=l.length;for(k=0;k<g;k++){delete j.indexMap[l[k].internalId]}h=Ext.util.LruCache.prototype.removeAtKey.apply(this,arguments);j.fireEvent("pageremove",j,i,l);l.length=0}}return h},getPage:function(b){return this.get(b)},hasRange:function(h,f){var j=this,g=j.getPageFromRecordIndex(h),i=j.getPageFromRecordIndex(f);for(;g<=i;g++){if(!j.hasPage(g)){return false}}return(i-1)*j._pageSize+j.getPage(i).length>f},hasPage:function(b){return !!this.get(b)},peekPage:function(b){return this.map[b]},getAt:function(b){return this.getRange(b,b+1)[0]},getRange:function(B,A){A--;if(!this.hasRange(B,A)){Ext.raise("PageMap asked for range which it does not have")}var v=this,y=Ext.Array,u=v.getPageSize(),r=v.getPageFromRecordIndex(B),x=v.getPageFromRecordIndex(A),z=(r-1)*u,p=(x*u)-1,t=r,o=[],q,w,s;for(;t<=x;t++){if(t===r){q=B-z;s=q>0}else{q=0;s=false}if(t===x){w=u-(p-A);s=s||w<u}if(s){y.push(o,y.slice(v.getPage(t),q,w))}else{y.push(o,v.getPage(t))}}return o},destroy:function(){Ext.util.LruCache.prototype.destroy.call(this);this.indexMap={}}},0,0,0,0,0,0,[Ext.data,"PageMap"],0));(Ext.cmd.derive("Ext.data.BufferedStore",Ext.data.ProxyStore,{isBufferedStore:true,buffered:true,config:{data:0,pageSize:25,remoteSort:true,remoteFilter:true,sortOnLoad:false,purgePageCount:5,trailingBufferZone:25,leadingBufferZone:200,defaultViewSize:100,viewSize:0,trackRemoved:false},applyData:function(c){var d=this.data||(this.data=this.createDataCollection());return d},applyProxy:function(b){b=Ext.data.ProxyStore.prototype.applyProxy.call(this,b);if(b&&b.setEnablePaging){b.setEnablePaging(true)}return b},createFiltersCollection:function(){return new Ext.util.FilterCollection()},createSortersCollection:function(){return new Ext.util.SorterCollection()},updateGroupField:function(b){this.group(b)},getGrouper:function(){return this.grouper},isGrouped:function(){return !!this.grouper},createDataCollection:function(){var c=this,d=new Ext.data.PageMap({store:c,rootProperty:"data",pageSize:c.getPageSize(),maxSize:c.getPurgePageCount(),listeners:{clear:c.onPageMapClear,scope:c}});c.relayEvents(d,["beforepageremove","pageadd","pageremove"]);c.pageRequests={};return d},removeAll:function(e){var d=this,f=d.getData();if(f){if(e){d.suspendEvent("clear")}f.clear();if(e){d.resumeEvent("clear")}}},flushLoad:function(){var c=this,d=c.pendingLoadOptions;c.clearLoadTask();if(!d){return}c.getData().clear();d.page=1;d.start=0;d.limit=c.getViewSize()||c.getDefaultViewSize();d.loadCallback=d.callback;d.callback=null;return c.loadToPrefetch(d)},reload:function(i){var r=this,t=r.getData(),p=Number.MAX_VALUE,q,w,s,n,u,x,o,v;if(!i){i={}}if(r.loading||r.fireEvent("beforeload",r,i)===false){return}x=function(){var b=r.totalCount,a=w-q;if(w>=b){w=b-1;q=Math.max(w-a,0)}if(r.rangeCached(q,Math.min(w,r.totalCount))){r.loading=false;t.un("pageadd",x);v=t.getRange(q,w+1);r.fireEvent("load",r,v,true);r.fireEvent("refresh",r)}};o=Math.ceil((r.getLeadingBufferZone()+r.getTrailingBufferZone())/2);if(r.lastRequestStart&&r.preserveScrollOnReload){q=r.lastRequestStart;w=r.lastRequestEnd;p=r.getTotalCount()}else{q=i.start||0;w=q+(i.count||r.getPageSize())-1}t.clear(true);delete r.totalCount;q=Math.max(q-o,0);w=Math.min(w+o,p);s=r.getPageFromRecordIndex(q);n=r.getPageFromRecordIndex(w);r.loading=true;i.waitForReload=x;t.on("pageadd",x);for(u=s;u<=n;u++){r.prefetchPage(u,i)}},filter:function(){Ext.data.ProxyStore.prototype.filter.apply(this,arguments)},filterBy:function(c,d){},loadData:function(c,d){},loadPage:function(f,e){var d=this;e=e||{};e.page=d.currentPage=f;e.start=(f-1)*d.getPageSize();e.limit=d.getViewSize()||d.getDefaultViewSize();e.loadCallback=e.callback;e.callback=null;return d.loadToPrefetch(e)},clearData:function(f){var e=this,d=e.getData();if(d){d.clear()}},getCount:function(){return this.totalCount||0},getRange:function(w,t,o){var p=this,v=p.totalCount-1,u=p.lastRequestStart,n=[],s=p.getData(),x,q,y,z,r;o=Ext.apply({prefetchStart:w,prefetchEnd:t},o);t=(t>=p.totalCount)?v:t;q=w===0?0:w-1;y=t===v?t:t+1;p.lastRequestStart=w;p.lastRequestEnd=t;if(p.rangeCached(q,y)){p.onRangeAvailable(o);n=s.getRange(w,t+1)}else{p.fireEvent("cachemiss",p,w,t);z=p.getPageFromRecordIndex(q);r=p.getPageFromRecordIndex(y);x=function(c,a,b){if(a>=z&&a<=r&&p.rangeCached(q,y)){p.fireEvent("cachefilled",p,w,t);s.un("pageadd",x);p.onRangeAvailable(o)}};s.on("pageadd",x);p.prefetchRange(w,t)}p.primeCache(w,t,w<u?-1:1);return n},getById:function(c){var d=this.data.findBy(function(a){return a.getId()===c});return d},getAt:function(d){var c=this.getData();if(c.hasRange(d,d)){return c.getAt(d)}},getByInternalId:function(b){return this.data.getByInternalId(b)},contains:function(b){return this.indexOf(b)>-1},indexOf:function(b){return this.getData().indexOf(b)},indexOfId:function(b){return this.indexOf(this.getById(b))},group:function(e,g){var h=this,f;if(e&&typeof e==="string"){f=h.grouper;if(!f){h.grouper=new Ext.util.Grouper({property:e,direction:g||"ASC",root:"data"})}else{if(g===undefined){f.toggle()}else{f.setDirection(g)}}}else{h.grouper=e?h.getSorters().decodeSorter(e,"Ext.util.Grouper"):null}h.getData().clear();h.loadPage(1,{callback:function(){h.fireEvent("groupchange",h,h.getGrouper())}})},getPageFromRecordIndex:function(b){return Math.floor(b/this.getPageSize())+1},calculatePageCacheSize:function(e){var f=this,d=f.getPurgePageCount();return d?Math.max(f.getData().getMaxSize()||0,Math.ceil((e+f.getTrailingBufferZone()+f.getLeadingBufferZone())/f.getPageSize())*2+d):0},loadToPrefetch:function(i){var x=this,F=i,B,G,v,w=i.start,H=i.start+i.limit-1,s=(x.getViewSize()||i.limit),A=Math.min(H,i.start+s-1),z=x.getPageFromRecordIndex(Math.max(w-x.getTrailingBufferZone(),0)),t=x.getPageFromRecordIndex(H+x.getLeadingBufferZone()),C=x.getData(),y=function(){G=G||[];if(i.loadCallback){i.loadCallback.call(i.scope||x,G,D,true)}if(i.callback){i.callback.call(i.scope||x,G,w||0,H||0,i)}},u=function(){x.fireEvent("datachanged",x);x.fireEvent("refresh",x);x.fireEvent("load",x,G,true)},E=function(){if(x.rangeCached(w,A)){x.loading=false;G=C.getRange(w,A+1);C.un("pageadd",E);if(x.hasListeners.guaranteedrange){x.guaranteeRange(w,A,i.callback,i.scope)}y();u()}},D;C.setMaxSize(x.calculatePageCacheSize(s));if(x.fireEvent("beforeload",x,i)!==false){delete x.totalCount;x.loading=true;if(i.callback){F=Ext.apply({},i);delete F.callback}x.on("prefetch",function(d,c,a,b){D=b;if(a){if((v=x.getTotalCount())){C.on("pageadd",E);A=Math.min(A,v-1);t=x.getPageFromRecordIndex(Math.min(A+x.getLeadingBufferZone(),v-1));for(B=z+1;B<=t;++B){x.prefetchPage(B,F)}}else{y();u()}}else{x.loading=false;y();x.fireEvent("load",x,c,false)}},null,{single:true});x.prefetchPage(z,F)}},prefetch:function(k){var j=this,g=j.getPageSize(),i=j.getData(),l,h;if(g){if(j.lastPageSize&&g!=j.lastPageSize){Ext.raise("pageSize cannot be dynamically altered")}if(!i.getPageSize()){i.setPageSize(g)}}else{j.pageSize=i.setPageSize(g=k.limit)}j.lastPageSize=g;if(!k.page){k.page=j.getPageFromRecordIndex(k.start);k.start=(k.page-1)*g;k.limit=Math.ceil(k.limit/g)*g}h=j.pageRequests[k.page];if(!h||h.getOperation().pageMapGeneration!==i.pageMapGeneration){k=Ext.apply({action:"read",filters:j.getFilters().items,sorters:j.getSorters().items,grouper:j.getGrouper(),internalCallback:j.onProxyPrefetch,internalScope:j},k);l=j.createOperation("read",k);l.pageMapGeneration=i.pageMapGeneration;if(j.fireEvent("beforeprefetch",j,l)!==false){j.pageRequests[k.page]=l.execute();if(j.getProxy().isSynchronous){delete j.pageRequests[k.page]}}}return j},onPageMapClear:function(){var j=this,f=j.wasLoading,g=j.pageRequests,h=j.getData(),i;h.clearListeners();h.on("clear",j.onPageMapClear,j);j.relayEvents(h,["beforepageremove","pageadd","pageremove"]);j.loading=true;j.totalCount=0;for(i in g){if(g.hasOwnProperty(i)){g[i].getOperation().abort()}}j.fireEvent("clear",j);j.loading=f},prefetchPage:function(j,g){var k=this,h=k.getPageSize(),i=(j-1)*h,l=k.totalCount;if(l!==undefined&&k.data.getCount()===l){return}k.prefetch(Ext.applyIf({page:j,start:i,limit:h},g))},onProxyPrefetch:function(s){if(this.destroyed){return}var o=this,n=s.getResultSet(),t=s.getRecords(),q=s.wasSuccessful(),p=s.getPage(),u=s.waitForReload,l=o.totalCount,v=o.pageRequests,m,r;if(s.pageMapGeneration===o.getData().pageMapGeneration){if(n){o.totalCount=n.getTotal();if(o.totalCount!==l){o.fireEvent("totalcountchange",o.totalCount)}}if(p!==undefined){delete o.pageRequests[p]}o.loading=false;o.fireEvent("prefetch",o,t,q,s);if(q){if(o.totalCount===0){if(u){for(m in v){r=v[m].getOperation();if(r.waitForReload===u){delete r.waitForReload}}o.getData().un("pageadd",u);o.fireEvent("load",o,[],true);o.fireEvent("refresh",o)}}else{o.cachePage(t,s.getPage())}}Ext.callback(s.getCallback(),s.getScope()||o,[t,s,q])}},cachePage:function(f,h){var i=this,g=f.length,j;if(!Ext.isDefined(i.totalCount)){i.totalCount=f.length;i.fireEvent("totalcountchange",i.totalCount)}for(j=0;j<g;j++){f[j].join(i)}i.getData().addPage(h,f)},rangeCached:function(c,d){return this.getData().hasRange(c,d)},pageCached:function(b){return this.getData().hasPage(b)},pagePending:function(b){return !!this.pageRequests[b]},rangeSatisfied:function(c,d){return this.rangeCached(c,d)},onRangeAvailable:function(k){var j=this,g=j.getTotalCount(),i=k.prefetchStart,h=(k.prefetchEnd>g-1)?g-1:k.prefetchEnd,l;h=Math.max(0,h);l=j.getData().getRange(i,h+1);if(k.fireEvent!==false){j.fireEvent("guaranteedrange",l,i,h,k)}if(k.callback){k.callback.call(k.scope||j,l,i,h,k)}},guaranteeRange:function(h,g,i,j,f){f=Ext.apply({callback:i,scope:j},f);this.getRange(h,g+1,f)},prefetchRange:function(j,h){var m=this,n,i,k,l=m.getData();if(!m.rangeCached(j,h)){n=m.getPageFromRecordIndex(j);i=m.getPageFromRecordIndex(h);l.setMaxSize(m.calculatePageCacheSize(h-j+1));for(k=n;k<=i;k++){if(!m.pageCached(k)){m.prefetchPage(k)}}}},primeCache:function(k,p,l){var m=this,n=m.getLeadingBufferZone(),o=m.getTrailingBufferZone(),i=m.getPageSize(),j=m.totalCount;if(l===-1){k=Math.max(k-n,0);p=Math.min(p+o,j-1)}else{if(l===1){k=Math.max(Math.min(k-o,j-i),0);p=Math.min(p+n,j-1)}else{k=Math.min(Math.max(Math.floor(k-((n+o)/2)),0),j-m.pageSize);p=Math.min(Math.max(Math.ceil(p+((n+o)/2)),0),j-1)}}m.prefetchRange(k,p)},sort:function(d,e,f){if(arguments.length===0){this.clearAndLoad()}else{this.getSorters().addSort(d,e,f)}},onSorterEndUpdate:function(){var d=this,c=d.getSorters().getRange();if(c.length){d.fireEvent("beforesort",d,c);d.clearAndLoad({callback:function(){d.fireEvent("sort",d,c)}})}else{d.fireEvent("sort",d,c)}},clearAndLoad:function(b){this.getData().clear();this.loadPage(1,b)},privates:{isLast:function(b){return this.indexOf(b)===this.getTotalCount()-1},isMoving:function(){return false}}},0,0,0,0,["store.buffered"],0,[Ext.data,"BufferedStore"],0));(Ext.cmd.derive("Ext.data.Request",Ext.Base,{config:{action:undefined,params:undefined,method:"GET",url:null,operation:null,proxy:null,disableCaching:false,headers:{},callbackKey:null,rawRequest:null,jsonData:undefined,xmlData:undefined,withCredentials:false,username:null,password:null,binary:false,callback:null,scope:null,timeout:30000,records:null,directFn:null,args:null,useDefaultXhrHeader:null},constructor:function(b){this.initConfig(b)},getParam:function(e){var f=this.getParams(),d;if(f){return f[e]}return d},setParam:function(e,d){var f=this.getParams()||{};f[e]=d;this.setParams(f)}},1,0,0,0,0,0,[Ext.data,"Request"],0));(Ext.cmd.derive("Ext.data.Validation",Ext.data.Model,{isValidation:true,syncGeneration:0,attach:function(b){this.record=b;delete this.data.id},getValidation:function(){return null},isValid:function(){var b=this;if(b.syncGeneration!==b.record.generation){b.refresh()}return !b.dirty},refresh:function(O){var y=this,x=y.data,M=y.record,H=M.fields,E=M.generation,z=M.data,I=M.validationSeparator,N=null,L,J,G,P,B,D,F,A,C,K,i,j;if(O||y.syncGeneration!==E){y.syncGeneration=E;for(D=0,C=H.length;D<C;++D){P=H[D];j=P.name;i=z[j];L=P.defaultInvalidMessage;G=0;if(!(j in x)){x[j]=J=true}else{J=x[j]}if(P.validate!==Ext.emptyFn){K=P.validate(i,I,null,M);if(K!==true){G=K||L}}if(!G){G=true}if(G!==J){(N||(N={}))[j]=G}}if(N){y.set(N)}}}},0,0,0,0,0,0,[Ext.data,"Validation"],0));(Ext.cmd.derive("Ext.dom.Helper",Ext.Base,function(){var j="afterbegin",m="afterend",l="beforebegin",o="beforeend",k=["BeforeBegin","previousSibling"],n=["AfterEnd","nextSibling"],p={beforebegin:k,afterend:n},i={beforebegin:k,afterend:n,afterbegin:["AfterBegin","firstChild"],beforeend:["BeforeEnd","lastChild"]};return{singleton:true,alternateClassName:["Ext.DomHelper","Ext.core.DomHelper"],emptyTags:/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i,confRe:/^(?:tag|children|cn|html|tpl|tplData)$/i,endRe:/end/i,attributeTransform:{cls:"class",htmlFor:"for"},closeTags:{},detachedDiv:document.createElement("div"),decamelizeName:function(){var a=/([a-z])([A-Z])/g,b={};function c(e,f,d){return f+"-"+d.toLowerCase()}return function(d){return b[d]||(b[d]=d.replace(a,c))}}(),generateMarkup:function(b,h){var c=this,d=typeof b,e,s,a,f,g;if(d==="string"||d==="number"){h.push(b)}else{if(Ext.isArray(b)){for(f=0;f<b.length;f++){if(b[f]){c.generateMarkup(b[f],h)}}}else{a=b.tag||"div";h.push("<",a);for(e in b){if(b.hasOwnProperty(e)){s=b[e];if(s!==undefined&&!c.confRe.test(e)){if(typeof s==="object"){h.push(" ",e,'="');c.generateStyles(s,h,true).push('"')}else{h.push(" ",c.attributeTransform[e]||e,'="',s,'"')}}}}if(c.emptyTags.test(a)){h.push("/>")}else{h.push(">");if((s=b.tpl)){s.applyOut(b.tplData,h)}if((s=b.html)){h.push(s)}if((s=b.cn||b.children)){c.generateMarkup(s,h)}g=c.closeTags;h.push(g[a]||(g[a]="</"+a+">"))}}}return h},generateStyles:function(a,d,b){var e=d||[],c,f;for(c in a){if(a.hasOwnProperty(c)){f=a[c];c=this.decamelizeName(c);if(b&&Ext.String.hasHtmlCharacters(f)){f=Ext.String.htmlEncode(f)}e.push(c,":",f,";")}}return d||e.join("")},markup:function(b){if(typeof b==="string"){return b}var a=this.generateMarkup(b,[]);return a.join("")},applyStyles:function(b,a){Ext.fly(b).applyStyles(a)},createContextualFragment:function(d){var a=this.detachedDiv,e=document.createDocumentFragment(),c,b;a.innerHTML=d;b=a.childNodes;c=b.length;while(c--){e.appendChild(b[0])}return e},createDom:function(b,e){var c=this,d=c.markup(b),f=c.detachedDiv,a;f.innerHTML=d;a=f.firstChild;return Ext.supports.ChildContentClearedWhenSettingInnerHTML?a.cloneNode(true):a},insertHtml:function(g,t,f){var b=this,s,e,h,c,a;g=g.toLowerCase();if(t.insertAdjacentHTML){if(b.ieInsertHtml){a=b.ieInsertHtml(g,t,f);if(a){return a}}s=i[g];if(s){t.insertAdjacentHTML(s[0],f);return t[s[1]]}}else{if(t.nodeType===3){g=g===j?l:g;g=g===o?m:g}e=Ext.supports.CreateContextualFragment?t.ownerDocument.createRange():undefined;c="setStart"+(this.endRe.test(g)?"After":"Before");if(p[g]){if(e){e[c](t);a=e.createContextualFragment(f)}else{a=this.createContextualFragment(f)}t.parentNode.insertBefore(a,g===l?t:t.nextSibling);return t[(g===l?"previous":"next")+"Sibling"]}else{h=(g===j?"first":"last")+"Child";if(t.firstChild){if(e){try{e[c](t[h]);a=e.createContextualFragment(f)}catch(d){a=this.createContextualFragment(f)}}else{a=this.createContextualFragment(f)}if(g===j){t.insertBefore(a,t.firstChild)}else{t.appendChild(a)}}else{t.innerHTML=f}return t[h]}}},insertBefore:function(c,a,b){return this.doInsert(c,a,b,l)},insertAfter:function(c,a,b){return this.doInsert(c,a,b,m)},insertFirst:function(c,a,b){return this.doInsert(c,a,b,j)},append:function(c,a,b){return this.doInsert(c,a,b,o)},overwrite:function(c,d,a){var b=this,e;c=Ext.getDom(c);d=b.markup(d);if(b.ieOverwrite){e=b.ieOverwrite(c,d)}if(!e){c.innerHTML=d;e=c.firstChild}return a?Ext.get(e):e},doInsert:function(c,f,a,e){var b=this,d;c=c.dom||Ext.getDom(c);if("innerHTML" in c){d=b.insertHtml(e,c,b.markup(f))}else{d=b.createDom(f,null);if(c.nodeType===3){e=e===j?l:e;e=e===o?m:e}if(p[e]){c.parentNode.insertBefore(d,e===l?c:c.nextSibling)}else{if(c.firstChild&&e===j){c.insertBefore(d,c.firstChild)}else{c.appendChild(d)}}}return a?Ext.get(d):d},createTemplate:function(a){var b=this.markup(a);return new Ext.Template(b)},createHtml:function(a){return this.markup(a)}}},0,0,0,0,0,0,[Ext.dom,"Helper",Ext,"DomHelper",Ext.core,"DomHelper"],0));(Ext.cmd.derive("Ext.util.TaskRunner",Ext.Base,{interval:10,timerId:null,constructor:function(d){var c=this;if(typeof d=="number"){c.interval=d}else{if(d){Ext.apply(c,d)}}c.tasks=[];c.timerFn=Ext.Function.bind(c.onTick,c)},newTask:function(c){var d=new Ext.util.TaskRunner.Task(c);d.manager=this;return d},start:function(e){var f=this,d=Ext.Date.now();if(!e.pending){f.tasks.push(e);e.pending=true}e.stopped=false;e.taskStartTime=d;e.taskRunTime=e.fireOnStart!==false?0:e.taskStartTime;e.taskRunCount=0;if(!f.firing){if(e.fireOnStart!==false){f.startTimer(0,d)}else{f.startTimer(e.interval,d)}}return e},stop:function(b){if(!b.stopped){b.stopped=true;if(b.onStop){b.onStop.call(b.scope||b,b)}}return b},stopAll:function(){Ext.each(this.tasks,this.stop,this)},firing:false,nextExpires:1e+99,onTick:function(){var s=this,y=s.tasks,D=Ext.Date.now(),r=1e+99,u=y.length,A=Ext.GlobalEvents,B,q,w,C,z,x,i;s.timerId=null;s.firing=true;for(w=0;w<u||w<(u=y.length);++w){C=y[w];if(!(x=C.stopped)){B=C.taskRunTime+C.interval;if(B<=D){z=1;if(C.hasOwnProperty("fireIdleEvent")){i=C.fireIdleEvent}else{i=s.fireIdleEvent}try{z=C.run.apply(C.scope||C,C.args||[++C.taskRunCount])}catch(v){try{if(C.onError){z=C.onError.call(C.scope||C,C,v)}}catch(t){}}C.taskRunTime=D;if(z===false||C.taskRunCount===C.repeat){s.stop(C);x=true}else{x=C.stopped;B=D+C.interval}}if(!x&&C.duration&&C.duration<=(D-C.taskStartTime)){s.stop(C);x=true}}if(x){C.pending=false;if(!q){q=y.slice(0,w)}}else{if(q){q.push(C)}if(r>B){r=B}}}if(q){s.tasks=q}s.firing=false;if(s.tasks.length){s.startTimer(r-D,Ext.Date.now())}if(i!==false&&A.hasListeners.idle){A.fireEvent("idle")}},startTimer:function(h,j){var i=this,f=j+h,g=i.timerId;if(g&&i.nextExpires-f>i.interval){clearTimeout(g);g=null}if(!g){if(h<i.interval){h=i.interval}i.timerId=Ext.defer(i.timerFn,h);i.nextExpires=f}}},1,0,0,0,0,0,[Ext.util,"TaskRunner"],function(){var c=this,d=c.prototype;d.destroy=d.stopAll;c.Task=new Ext.Class({isTask:true,stopped:true,fireOnStart:false,constructor:function(a){Ext.apply(this,a)},restart:function(a){if(a!==undefined){this.interval=a}this.manager.start(this)},start:function(a){if(this.stopped){this.restart(a)}},stop:function(){this.manager.stop(this)}});d=c.Task.prototype;d.destroy=d.stop}));(Ext.cmd.derive("Ext.dom.Fly",Ext.dom.Element,{alternateClassName:"Ext.dom.Element.Fly",validNodeTypes:{1:1,9:1,11:1},isFly:true,constructor:function(b){this.dom=b;this.el=this},attach:function(c){var d=this;if(!c){return d.detach()}d.dom=c;if(!Ext.cache[c.id]){d.getData().isSynchronized=false}return d},detach:function(){this.dom=null},addListener:null,removeListener:null},1,0,0,0,0,0,[Ext.dom,"Fly",Ext.dom.Element,"Fly"],function(d){var c={};d.cache=c;Ext.fly=function(a,k){var i=null,j=Ext.fly,l,b;k=k||(j.caller&&j.caller.$name)||"_global";a=Ext.getDom(a);if(a){l=a.nodeType;if(d.prototype.validNodeTypes[l]||(!l&&(a.window==a))){i=Ext.cache[a.id];if(!i||i.dom!==a){i=c[k]||(c[k]=new d());i.dom=a;b=i.getData(true);if(b){b.isSynchronized=false}}}}return i}}));(Ext.cmd.derive("Ext.dom.CompositeElementLite",Ext.Base,{alternateClassName:["Ext.CompositeElementLite"],isComposite:true,isLite:true,statics:{importElementMethods:function(){var d=Ext.dom.Element,c=this.prototype;Ext.Object.each(d.prototype,function(b,a){if(typeof a==="function"&&!c[b]){c[b]=function(){return this.invoke(b,arguments)}}})}},constructor:function(c,d){if(d){this.elements=c||[]}else{this.elements=[];this.add(c)}},getElement:function(c){var d=this._fly||(this._fly=new Ext.dom.Fly());return d.attach(c)},transformElement:function(b){return Ext.getDom(b)},getCount:function(){return this.elements.length},add:function(j,g){var h=this.elements,f,i;if(!j){return this}if(typeof j=="string"){j=Ext.fly(g||document).query(j)}else{if(j.isComposite){j=j.elements}else{if(!Ext.isIterable(j)){j=[j]}}}for(f=0,i=j.length;f<i;++f){h.push(this.transformElement(j[f]))}return this},invoke:function(n,i){var l=this,k=l.elements,m=k.length,j,o,p;if(p!==0){j=(l.isLite?Ext.dom.Fly:Ext.dom.Element).prototype;for(p=0;p<m;p++){o=k[p];if(o){j[n].apply(l.getElement(o),i)}}}return l},item:function(d){var f=this.elements[d],e=null;if(f){e=this.getElement(f)}return e},slice:function(c,d){return Ext.Array.slice(this.elements,c,d)},each:function(l,m){var k=this,n=k.elements,i=n.length,e,j;for(e=0;e<i;e++){j=n[e];if(j){j=this.getElement(j);if(l.call(m||j,j,k,e)===false){break}}}return k},fill:function(d){var c=this;c.elements=[];c.add(d);return c},insert:function(c,d){Ext.Array.insert(this.elements,c,d)},filter:function(q){var l=this,p=l.elements,m=p.length,o=[],n=0,k=typeof q=="function",i,r;for(;n<m;n++){r=p[n];i=false;if(r){r=l.getElement(r);if(k){i=q.call(r,r,l,n)!==false}else{i=r.is(q)}if(i){o.push(l.transformElement(r))}}}l.elements=o;return l},indexOf:function(b){return Ext.Array.indexOf(this.elements,this.transformElement(b))},replaceElement:function(i,j,g){var d=!isNaN(i)?i:this.indexOf(i),h;if(d>-1){j=Ext.getDom(j);if(g){h=this.elements[d];h.parentNode.insertBefore(j,h);Ext.removeNode(h)}Ext.Array.splice(this.elements,d,1,j)}return this},clear:function(g){var h=this,e=h.elements,f=e.length-1;if(g){for(;f>=0;f--){Ext.removeNode(e[f])}}this.elements=[]},addElements:function(i,e){if(!i){return this}if(typeof i==="string"){i=Ext.dom.Element.selectorFunction(i,e)}var j=this.elements,g=i.length,h;for(h=0;h<g;h++){j.push(Ext.get(i[h]))}return this},first:function(){return this.item(0)},last:function(){return this.item(this.getCount()-1)},contains:function(b){return this.indexOf(b)!=-1},removeElement:function(n,k){n=[].concat(n);var o=this,m=o.elements,p=n.length,l,i,j;for(j=0;j<p;j++){l=n[j];if((i=(m[l]||m[l=o.indexOf(l)]))){if(k){if(i.dom){i.destroy()}else{Ext.removeNode(i)}}Ext.Array.erase(m,l,1)}}return o},destroy:function(){return this.invoke("destroy",arguments);this.callParent()}},1,0,0,0,0,0,[Ext.dom,"CompositeElementLite",Ext,"CompositeElementLite"],function(c){var d=c.prototype;c.importElementMethods();d.on=d.addListener}));(Ext.cmd.derive("Ext.dom.CompositeElement",Ext.dom.CompositeElementLite,{alternateClassName:"Ext.CompositeElement",isLite:false,getElement:function(b){return b},transformElement:function(b){return Ext.get(b)}},0,0,0,0,0,0,[Ext.dom,"CompositeElement",Ext,"CompositeElement"],0));(Ext.cmd.derive("Ext.dom.GarbageCollector",Ext.Base,{singleton:true,interval:30000,constructor:function(){var b=this;b.collect=Ext.Function.bind(b.collect,b);b.lastTime=Ext.now();b.resume()},collect:function(){var k=this,r=Ext.cache,q,n,p,e,m,o;for(q in r){if(!r.hasOwnProperty(q)){continue}p=r[q];if(p.skipGarbageCollection){continue}n=p.dom;try{m=Ext.isGarbage(n)}catch(l){delete r[q];continue}if(m){if(p&&p.dom){p.collect()}}}if(Ext.isIE9m){e={};for(q in r){if(r.hasOwnProperty(q)){e[q]=r[q]}}Ext.cache=Ext.dom.Element.cache=e}k.lastTime=Ext.now()},pause:function(){clearTimeout(this.timerId)},resume:function(){var d=this,c=d.lastTime;if(Ext.enableGarbageCollector&&(Ext.now()-c>d.interval)){d.collect()}d.timerId=Ext.interval(d.collect,d.interval)}},1,0,0,0,0,0,[Ext.dom,"GarbageCollector"],0));(Ext.cmd.derive("Ext.event.gesture.Recognizer",Ext.Base,{priority:0,handledEvents:[],config:{onRecognized:Ext.emptyFn,callbackScope:null},constructor:function(b){this.initConfig(b);Ext.event.publisher.Gesture.instance.registerRecognizer(this)},onStart:Ext.emptyFn,onEnd:Ext.emptyFn,onTouchStart:Ext.emptyFn,onTouchMove:Ext.emptyFn,onTouchEnd:Ext.emptyFn,onTouchCancel:Ext.emptyFn,fail:function(){return false},fire:function(){this.getOnRecognized().apply(this.getCallbackScope(),arguments)},reset:Ext.emptyFn},1,0,0,0,0,[[Ext.mixin.Identifiable.prototype.mixinId||Ext.mixin.Identifiable.$className,Ext.mixin.Identifiable]],[Ext.event.gesture,"Recognizer"],0));(Ext.cmd.derive("Ext.event.gesture.SingleTouch",Ext.event.gesture.Recognizer,{inheritableStatics:{NOT_SINGLE_TOUCH:"Not Single Touch",TOUCH_MOVED:"Touch Moved",EVENT_CANCELED:"Event Canceled"},onTouchStart:function(b){if(b.touches.length>1){return this.fail(this.self.NOT_SINGLE_TOUCH)}},onTouchCancel:function(){return false}},0,0,0,0,0,0,[Ext.event.gesture,"SingleTouch"],0));(Ext.cmd.derive("Ext.event.gesture.DoubleTap",Ext.event.gesture.SingleTouch,{priority:300,inheritableStatics:{DIFFERENT_TARGET:"Different Target"},config:{moveDistance:8,tapDistance:24,maxDuration:300},handledEvents:["singletap","doubletap"],singleTapTimer:null,startTime:0,lastTapTime:0,onTouchStart:function(f){var d=this,e;if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){return false}e=d.lastStartPoint=f.changedTouches[0].point;d.startPoint=d.startPoint||e;d.startTime=f.time;clearTimeout(d.singleTapTimer)},onTouchMove:function(f){var d=this,e=f.changedTouches[0].point;if(Math.abs(e.getDistanceTo(d.lastStartPoint))>=d.getMoveDistance()){d.startPoint=null;return d.fail(d.self.TOUCH_MOVED)}},onTouchEnd:function(n){var l=this,o=l.getMaxDuration(),r=n.time,m=n.target,k=l.lastTapTime,q=l.lastTarget,e=n.changedTouches[0].point,p;l.lastTapTime=r;l.lastTarget=m;if(k){p=r-k;if(p<=o&&Math.abs(e.getDistanceTo(l.startPoint))<=l.getTapDistance()){if(m!==q){return l.fail(l.self.DIFFERENT_TARGET)}l.lastTarget=null;l.lastTapTime=0;l.fire("doubletap",n,{touch:n.changedTouches[0],duration:p});l.startPoint=null;return}}if(r-l.startTime>o){l.fireSingleTap(n)}else{l.setSingleTapTimer(n)}},setSingleTapTimer:function(c){var d=this;d.singleTapTimer=Ext.defer(function(){d.fireSingleTap(c)},d.getMaxDuration())},fireSingleTap:function(d,c){this.fire("singletap",d,{touch:c});this.startPoint=null},reset:function(){var b=this;b.startTime=b.lastTapTime=0;b.lastStartPoint=b.startPoint=b.singleTapTimer=null}},0,0,0,0,0,0,[Ext.event.gesture,"DoubleTap"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.doubleTap)}));(Ext.cmd.derive("Ext.event.gesture.Drag",Ext.event.gesture.SingleTouch,{priority:100,isStarted:false,startPoint:null,previousPoint:null,lastPoint:null,handledEvents:["dragstart","drag","dragend","dragcancel"],config:{minDistance:8},constructor:function(){Ext.event.gesture.SingleTouch.prototype.constructor.apply(this,arguments);this.initInfo()},initInfo:function(){this.info={touch:null,previous:{x:0,y:0},x:0,y:0,delta:{x:0,y:0},absDelta:{x:0,y:0},flick:{velocity:{x:0,y:0}},direction:{x:0,y:0},time:0,previousTime:{x:0,y:0}}},onTouchStart:function(b){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){if(this.isStarted&&this.lastMoveEvent!==null){this.lastMoveEvent.isStopped=false;this.onTouchEnd(this.lastMoveEvent)}return false}this.startTime=b.time;this.startPoint=b.changedTouches[0].point},tryDragStart:function(k){var e=this.startPoint,i=k.changedTouches[0],h=i.point,j=this.getMinDistance(),l=this.info;if(Math.abs(h.getDistanceTo(e))>=j){this.isStarted=true;this.previousPoint=this.lastPoint=h;this.resetInfo("x",k,i);this.resetInfo("y",k,i);l.time=k.time;this.fire("dragstart",k,l)}},onTouchMove:function(d){if(!this.isStarted){this.tryDragStart(d)}if(!this.isStarted){return}var f=d.changedTouches[0],e=f.point;if(this.lastPoint){this.previousPoint=this.lastPoint}this.lastPoint=e;this.lastMoveEvent=d;this.updateInfo("x",d,f);this.updateInfo("y",d,f);this.info.time=d.time;this.fire("drag",d,this.info)},onAxisDragEnd:function(e,f){var d=f.time-f.previousTime[e];if(d>0){f.flick.velocity[e]=(f[e]-f.previous[e])/d}},resetInfo:function(p,m,k){var o=this.lastPoint[p],e=this.startPoint[p],l=o-e,j=p.toUpperCase(),n=this.info;n.touch=k;n.delta[p]=l;n.absDelta[p]=Math.abs(l);n.previousTime[p]=this.startTime;n.previous[p]=e;n[p]=o;n.direction[p]=0;n["start"+j]=this.startPoint[p];n["previous"+j]=n.previous[p];n["page"+j]=n[p];n["delta"+j]=n.delta[p];n["absDelta"+j]=n.absDelta[p];n["previousDelta"+j]=0;n.startTime=this.startTime},updateInfo:function(u,q,r){var p=this,n=p.lastPoint[u],t=p.previousPoint[u],x=p.startPoint[u],e=n-x,v=p.info,o=v.direction,s=u.toUpperCase(),w=v.previous[u];v.touch=r;v.delta[u]=e;v.absDelta[u]=Math.abs(e);if(n!==w&&n!==v[u]){v.previous[u]=v[u];v.previousTime[u]=v.time}v[u]=n;if(n>t){o[u]=1}else{if(n<t){o[u]=-1}}v["start"+s]=x;v["previous"+s]=v.previous[u];v["page"+s]=v[u];v["delta"+s]=v.delta[u];v["absDelta"+s]=v.absDelta[u];v["previousDelta"+s]=v.previous[u]-x;v.startTime=p.startTime},onTouchEnd:function(b){this.doEnd(b)},onTouchCancel:function(b){this.doEnd(b,true);return false},doEnd:function(i,e){if(!this.isStarted){this.tryDragStart(i)}if(this.isStarted){var h=i.changedTouches[0],g=h.point,j=this.info;this.isStarted=false;this.lastPoint=g;this.updateInfo("x",i,h);this.updateInfo("y",i,h);j.time=i.time;this.onAxisDragEnd("x",j);this.onAxisDragEnd("y",j);this.fire(e?"dragcancel":"dragend",i,j);this.startPoint=null;this.previousPoint=null;this.lastPoint=null;this.lastMoveEvent=null}},reset:function(){var b=this;b.isStarted=b.lastPoint=b.startPoint=b.previousPoint=b.lastPoint=b.lastMoveEvent=null;b.initInfo()}},1,0,0,0,0,0,[Ext.event.gesture,"Drag"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.drag)}));(Ext.cmd.derive("Ext.event.gesture.Swipe",Ext.event.gesture.SingleTouch,{priority:500,handledEvents:["swipestart","swipe","swipecancel"],inheritableStatics:{MAX_OFFSET_EXCEEDED:"Max Offset Exceeded",MAX_DURATION_EXCEEDED:"Max Duration Exceeded",DISTANCE_NOT_ENOUGH:"Distance Not Enough"},config:{minDistance:80,maxOffset:35,maxDuration:1000},onTouchStart:function(d){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){return false}var c=d.changedTouches[0];this.startTime=d.time;this.isHorizontal=true;this.isVertical=true;this.startX=c.pageX;this.startY=c.pageY},onTouchMove:function(r){var s=r.changedTouches[0],o=s.pageX,q=s.pageY,t=o-this.startX,u=q-this.startY,w=Math.abs(o-this.startX),x=Math.abs(q-this.startY),v=r.time-this.startTime,e=this.getMinDistance(),y=r.time,p,z;if(y-this.startTime>this.getMaxDuration()){return this.fail(this.self.MAX_DURATION_EXCEEDED)}if(this.isHorizontal&&x>this.getMaxOffset()){this.isHorizontal=false}if(this.isVertical&&w>this.getMaxOffset()){this.isVertical=false}if(!this.isVertical||!this.isHorizontal){if(this.isHorizontal&&w<e){p=(t<0)?"left":"right";z=w}else{if(this.isVertical&&x<e){p=(u<0)?"up":"down";z=x}}}if(p&&!this.started){this.started=true;this.fire("swipestart",r,{touch:s,direction:p,distance:z,duration:v})}if(!this.isHorizontal&&!this.isVertical){return this.fail(this.self.MAX_OFFSET_EXCEEDED)}},onTouchEnd:function(q){if(this.onTouchMove(q)===false){return false}var r=q.changedTouches[0],n=r.pageX,p=r.pageY,s=n-this.startX,t=p-this.startY,v=Math.abs(s),w=Math.abs(t),e=this.getMinDistance(),u=q.time-this.startTime,o,x;if(this.isVertical&&w<e){this.isVertical=false}if(this.isHorizontal&&v<e){this.isHorizontal=false}if(this.isHorizontal){o=(s<0)?"left":"right";x=v}else{if(this.isVertical){o=(t<0)?"up":"down";x=w}else{return this.fail(this.self.DISTANCE_NOT_ENOUGH)}}this.started=false;this.fire("swipe",q,{touch:r,direction:o,distance:x,duration:u})},onTouchCancel:function(b){this.fire("swipecancel",b);return false},reset:function(){var b=this;b.startTime=b.isHorizontal=b.isVertical=b.startX=b.startY=null}},0,0,0,0,0,0,[Ext.event.gesture,"Swipe"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.swipe)}));(Ext.cmd.derive("Ext.event.gesture.EdgeSwipe",Ext.event.gesture.Swipe,{priority:800,handledEvents:["edgeswipe","edgeswipestart","edgeswipeend","edgeswipecancel"],inheritableStatics:{NOT_NEAR_EDGE:"Not Near Edge"},config:{minDistance:60},onTouchStart:function(d){if(Ext.event.gesture.Swipe.prototype.onTouchStart.apply(this,arguments)===false){return false}var c=d.changedTouches[0];this.started=false;this.direction=null;this.isHorizontal=true;this.isVertical=true;this.startX=c.pageX;this.startY=c.pageY},onTouchMove:function(u){var w=u.changedTouches[0],q=w.pageX,t=w.pageY,x=q-this.startX,y=t-this.startY,C=Math.abs(t-this.startY),B=Math.abs(q-this.startX),e=this.getMinDistance(),z=this.getMaxOffset(),A=u.time-this.startTime,r=Ext.Viewport&&Ext.Element.getViewportWidth(),v=Ext.Viewport&&Ext.Element.getViewportHeight(),s,D;if(this.isVertical&&B>z){this.isVertical=false}if(this.isHorizontal&&C>z){this.isHorizontal=false}if(this.isVertical&&this.isHorizontal){if(C>B){this.isHorizontal=false}else{this.isVertical=false}}if(this.isHorizontal){s=(x<0)?"left":"right";D=x}else{if(this.isVertical){s=(y<0)?"up":"down";D=y}}s=this.direction||(this.direction=s);if(s==="up"){D=y*-1}else{if(s==="left"){D=x*-1}}this.distance=D;if(!D){return this.fail(this.self.DISTANCE_NOT_ENOUGH)}if(!this.started){if(s==="right"&&this.startX>e){return this.fail(this.self.NOT_NEAR_EDGE)}else{if(s==="down"&&this.startY>e){return this.fail(this.self.NOT_NEAR_EDGE)}else{if(s==="left"&&(r-this.startX)>e){return this.fail(this.self.NOT_NEAR_EDGE)}else{if(s==="up"&&(v-this.startY)>e){return this.fail(this.self.NOT_NEAR_EDGE)}}}}this.started=true;this.startTime=u.time;this.fire("edgeswipestart",u,{touch:w,direction:s,distance:D,duration:A})}else{this.fire("edgeswipe",u,{touch:w,direction:s,distance:D,duration:A})}},onTouchEnd:function(c){var d;if(this.onTouchMove(c)!==false){d=c.time-this.startTime;this.fire("edgeswipeend",c,{touch:c.changedTouches[0],direction:this.direction,distance:this.distance,duration:d})}},onTouchCancel:function(b){this.fire("edgeswipecancel",b,{touch:b.changedTouches[0]});return false},reset:function(){var b=this;b.started=b.direction=b.isHorizontal=b.isVertical=b.startX=b.startY=b.startTime=b.distance=null}},0,0,0,0,0,0,[Ext.event.gesture,"EdgeSwipe"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.edgeSwipe)}));(Ext.cmd.derive("Ext.event.gesture.LongPress",Ext.event.gesture.SingleTouch,{priority:400,inheritableStatics:{DURATION_NOT_ENOUGH:"Duration Not Enough"},config:{moveDistance:8,minDuration:1000},handledEvents:["longpress","taphold"],fireLongPress:function(b){this.fire("longpress",b,{touch:b.changedTouches[0],duration:this.getMinDuration()});this.isLongPress=true},onTouchStart:function(b){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.apply(this,arguments)===false){return false}this.startPoint=b.changedTouches[0].point;this.isLongPress=false;this.setLongPressTimer(b)},setLongPressTimer:function(c){var d=this;d.timer=Ext.defer(function(){d.fireLongPress(c)},d.getMinDuration())},onTouchMove:function(c){var d=c.changedTouches[0].point;if(Math.abs(d.getDistanceTo(this.startPoint))>=this.getMoveDistance()){return this.fail(this.self.TOUCH_MOVED)}},onTouchEnd:function(){if(!this.isLongPress){return this.fail(this.self.DURATION_NOT_ENOUGH)}},fail:function(){clearTimeout(this.timer);return Ext.event.gesture.SingleTouch.prototype.fail.apply(this,arguments)},reset:function(){this.isLongPress=this.startPoint=null},fire:function(d){if(d==="longpress"){var c=Array.prototype.slice.call(arguments);c[0]="taphold";this.fire.apply(this,c)}return Ext.event.gesture.SingleTouch.prototype.fire.apply(this,arguments)}},0,0,0,0,0,0,[Ext.event.gesture,"LongPress"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.longPress)}));(Ext.cmd.derive("Ext.event.gesture.MultiTouch",Ext.event.gesture.Recognizer,{requiredTouchesCount:2,isTracking:false,isStarted:false,onTouchStart:function(g){var f=this.requiredTouchesCount,h=g.touches,e=h.length;if(e===f){this.start(g)}else{if(e>f){this.end(g)}}},onTouchEnd:function(b){this.end(b)},onTouchCancel:function(b){this.end(b,true);return false},start:function(){if(!this.isTracking){this.isTracking=true;this.isStarted=false}},end:function(c,d){if(this.isTracking){this.isTracking=false;if(this.isStarted){this.isStarted=false;this[d?"fireCancel":"fireEnd"](c)}}},reset:function(){this.isTracking=this.isStarted=false}},0,0,0,0,0,0,[Ext.event.gesture,"MultiTouch"],0));(Ext.cmd.derive("Ext.event.gesture.Pinch",Ext.event.gesture.MultiTouch,{priority:600,handledEvents:["pinchstart","pinch","pinchend","pinchcancel"],startDistance:0,lastTouches:null,onTouchMove:function(j){if(!this.isTracking){return}var e=j.touches,i,g,h;i=e[0].point;g=e[1].point;h=i.getDistanceTo(g);if(h===0){return}if(!this.isStarted){this.isStarted=true;this.startDistance=h;this.fire("pinchstart",j,{touches:e,distance:h,scale:1})}else{this.fire("pinch",j,{touches:e,distance:h,scale:h/this.startDistance})}},fireEnd:function(b){this.fire("pinchend",b)},fireCancel:function(b){this.fire("pinchcancel",b)},fail:function(){return Ext.event.gesture.MultiTouch.prototype.fail.apply(this,arguments)},reset:function(){this.lastTouches=null;this.startDistance=0;Ext.event.gesture.MultiTouch.prototype.reset.call(this)}},0,0,0,0,0,0,[Ext.event.gesture,"Pinch"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.pinch)}));(Ext.cmd.derive("Ext.event.gesture.Rotate",Ext.event.gesture.MultiTouch,{priority:700,handledEvents:["rotatestart","rotate","rotateend","rotatecancel"],startAngle:0,lastTouches:null,lastAngle:null,onTouchMove:function(l){if(!this.isTracking){return}var m=l.touches,q=this.lastAngle,o,n,p,r,k,e;o=m[0].point;n=m[1].point;p=o.getAngleTo(n);if(q!==null){e=Math.abs(q-p);r=p+360;k=p-360;if(Math.abs(r-q)<e){p=r}else{if(Math.abs(k-q)<e){p=k}}}this.lastAngle=p;if(!this.isStarted){this.isStarted=true;this.startAngle=p;this.fire("rotatestart",l,{touches:m,angle:p,rotation:0})}else{this.fire("rotate",l,{touches:m,angle:p,rotation:p-this.startAngle})}this.lastTouches=Ext.Array.clone(m)},fireEnd:function(b){this.lastAngle=null;this.fire("rotateend",b)},fireCancel:function(b){this.lastAngle=null;this.fire("rotatecancel",b)},reset:function(){var b=this;b.lastTouches=b.lastAngle=b.startAngle=null;Ext.event.gesture.MultiTouch.prototype.reset.call(this)}},0,0,0,0,0,0,[Ext.event.gesture,"Rotate"],function(d){var c=Ext.manifest.gestures;d.instance=new d(c&&c.rotate)}));(Ext.cmd.derive("Ext.event.gesture.Tap",Ext.event.gesture.SingleTouch,{priority:200,handledEvents:["tap","tapcancel"],config:{moveDistance:8},onTouchStart:function(b){if(Ext.event.gesture.SingleTouch.prototype.onTouchStart.call(this,b)===false){return false}this.startPoint=b.changedTouches[0].point},onTouchMove:function(d){var f=d.changedTouches[0],e=f.point;if(Math.abs(e.getDistanceTo(this.startPoint))>=this.getMoveDistance()){this.fire("tapcancel",d,{touch:f});return this.fail(this.self.TOUCH_MOVED)}},onTouchEnd:function(b){this.fire("tap",b,{touch:b.changedTouches[0]})},onTouchCancel:function(b){this.fire("tapcancel",b,{touch:b.changedTouches[0]});return false},reset:function(){this.startPoint=null}},0,0,0,0,0,0,[Ext.event.gesture,"Tap"],function(c){var d=Ext.manifest.gestures;c.instance=new c(d&&d.tap)}));(Ext.cmd.derive("Ext.event.publisher.Focus",Ext.event.publisher.Dom,{type:"focus",handledEvents:["focusenter","focusleave","focusmove"],handledDomEvents:["focusin","focusout"],doDelegatedEvent:function(g,h){var e=this,f;g=Ext.event.publisher.Dom.prototype.doDelegatedEvent.call(this,g,false);if(g){if(g.type==="focusout"){if(g.relatedTarget==null){e.processFocusIn(g,g.target,document.body,h)}}else{f=g.relatedTarget;e.processFocusIn(g,(f==null||!f.tagName)?document.body:f,g.target,h)}}},processFocusIn:function(q,p,v,n){var o=this,e,w,r=[],x,s,t,u;t=Ext.fly(p);u=Ext.fly(v);if((t&&t.isFocusSuspended())||(u&&u.isFocusSuspended())){return}for(w=p,e=Ext.dom.Element.getCommonAncestor(v,p,true);w&&w!==e;w=w.parentNode){r.push(w)}if(r.length){x=o.createSyntheticEvent("focusleave",q,p,v);o.publish("focusleave",r,x);if(x.isStopped){return}}r.length=0;for(w=v;w!==e;w=w.parentNode){r.push(w)}s=o.createSyntheticEvent("focusenter",q,v,p);if(r.length){o.publish("focusenter",r,s);if(s.isStopped){return}}r=o.getPropagatingTargets(e);if(r.length){x=o.createSyntheticEvent("focusmove",q,v,p);o.publish("focusmove",r,x);if(x.isStopped){return}}if(n){o.afterEvent(q)}Ext.GlobalEvents.fireEvent("focus",{event:s,toElement:v,fromElement:p})},createSyntheticEvent:function(f,h,i,g){var j=new Ext.event.Event(h);j.type=f;j.relatedTarget=g;j.target=i;return j}},0,0,0,0,0,0,[Ext.event.publisher,"Focus"],function(c){var d;c.instance=new c();if(!Ext.supports.FocusinFocusoutEvents){this.override({handledDomEvents:["focus","blur"],doDelegatedEvent:function(a,b){var e=this;a=e.callSuper([a,false]);if(a){clearTimeout(d);d=0;if(a.type==="blur"){var h=a.target===window?document.body:a.target;d=setTimeout(function(){d=0;e.processFocusIn(a,h,document.body,b);c.previousActiveElement=null},0);if(a.target===window||a.target===document){c.previousActiveElement=null}else{c.previousActiveElement=a.target}}else{e.processFocusIn(a,c.previousActiveElement||document.body,a.target===window?document.body:a.target,b)}}}})}}));(Ext.cmd.derive("Ext.fx.runner.Css",Ext.Evented,{prefixedProperties:{transform:true,"transform-origin":true,perspective:true,"transform-style":true,transition:true,"transition-property":true,"transition-duration":true,"transition-timing-function":true,"transition-delay":true,animation:true,"animation-name":true,"animation-duration":true,"animation-iteration-count":true,"animation-direction":true,"animation-timing-function":true,"animation-delay":true},lengthProperties:{top:true,right:true,bottom:true,left:true,width:true,height:true,"max-height":true,"max-width":true,"min-height":true,"min-width":true,"margin-bottom":true,"margin-left":true,"margin-right":true,"margin-top":true,"padding-bottom":true,"padding-left":true,"padding-right":true,"padding-top":true,"border-bottom-width":true,"border-left-width":true,"border-right-width":true,"border-spacing":true,"border-top-width":true,"border-width":true,"outline-width":true,"letter-spacing":true,"line-height":true,"text-indent":true,"word-spacing":true,"font-size":true,translate:true,translateX:true,translateY:true,translateZ:true,translate3d:true},durationProperties:{"transition-duration":true,"transition-delay":true,"animation-duration":true,"animation-delay":true},angleProperties:{rotate:true,rotateX:true,rotateY:true,rotateZ:true,skew:true,skewX:true,skewY:true},lengthUnitRegex:/([a-z%]*)$/,DEFAULT_UNIT_LENGTH:"px",DEFAULT_UNIT_ANGLE:"deg",DEFAULT_UNIT_DURATION:"ms",formattedNameCache:{},transformMethods3d:["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","skewX","skewY","scaleX","scaleY","scaleZ"],transformMethodsNo3d:["translateX","translateY","rotate","skewX","skewY","scaleX","scaleY"],constructor:function(){var b=this;b.transformMethods=Ext.feature.has.Css3dTransforms?b.transformMethods3d:b.transformMethodsNo3d;b.vendorPrefix=Ext.browser.getStyleDashPrefix();b.ruleStylesCache={};Ext.Evented.prototype.constructor.call(this)},getStyleSheet:function(){var f=this.styleSheet,e,d;if(!f){e=document.createElement("style");e.type="text/css";(document.head||document.getElementsByTagName("head")[0]).appendChild(e);d=document.styleSheets;this.styleSheet=f=d[d.length-1]}return f},applyRules:function(n){var p=this.getStyleSheet(),l=this.ruleStylesCache,m=p.cssRules,t,r,o,u,s,v,q;for(t in n){r=n[t];o=l[t];if(o===undefined){s=m.length;p.insertRule(t+"{}",s);o=l[t]=m.item(s).style}u=o.$cache;if(!u){u=o.$cache={}}for(v in r){q=this.formatValue(r[v],v);v=this.formatName(v);if(u[v]!==q){u[v]=q;if(q===null){o.removeProperty(v)}else{o.setProperty(v,q,"important")}}}}return this},applyStyles:function(m){var j,n,k,h,i,l;for(j in m){if(m.hasOwnProperty(j)){n=document.getElementById(j);if(!n){continue}k=n.style;h=m[j];for(i in h){if(h.hasOwnProperty(i)){l=this.formatValue(h[i],i);i=this.formatName(i);if(l===null){k.removeProperty(i)}else{k.setProperty(i,l,"important")}}}}}return this},formatName:function(d){var e=this.formattedNameCache,f=e[d];if(!f){if((Ext.os.is.Tizen||!Ext.feature.has.CssTransformNoPrefix)&&this.prefixedProperties[d]){f=this.vendorPrefix+d}else{f=d}e[d]=f}return f},formatValue:function(n,u){var p=typeof n,i=this.DEFAULT_UNIT_LENGTH,r,v,s,q,t,m,o;if(n===null){return""}if(p=="string"){if(this.lengthProperties[u]){o=n.match(this.lengthUnitRegex)[1];if(o.length>0){}else{return n+i}}return n}else{if(p=="number"){if(n==0){return"0"}if(this.lengthProperties[u]){return n+i}if(this.angleProperties[u]){return n+this.DEFAULT_UNIT_ANGLE}if(this.durationProperties[u]){return n+this.DEFAULT_UNIT_DURATION}}else{if(u==="transform"){r=this.transformMethods;t=[];for(s=0,q=r.length;s<q;s++){v=r[s];t.push(v+"("+this.formatValue(n[v],v)+")")}return t.join(" ")}else{if(Ext.isArray(n)){m=[];for(s=0,q=n.length;s<q;s++){m.push(this.formatValue(n[s],u))}return(m.length>0)?m.join(", "):"none"}}}}return n}},1,0,0,0,0,0,[Ext.fx.runner,"Css"],0));(Ext.cmd.derive("Ext.fx.runner.CssTransition",Ext.fx.runner.Css,{alternateClassName:"Ext.Animator",singleton:true,listenersAttached:false,constructor:function(){this.runningAnimationsData={};return this.callParent(arguments)},attachListeners:function(){this.listenersAttached=true;Ext.getWin().on("transitionend","onTransitionEnd",this)},onTransitionEnd:function(d){var e=d.target,f=e.id;if(f&&this.runningAnimationsData.hasOwnProperty(f)){this.refreshRunningAnimationsData(Ext.get(e),[d.browserEvent.propertyName])}},onAnimationEnd:function(v,w,y,t,p){var z=v.getId(),s=this.runningAnimationsData[z],i={},q={},A,u,x,r,B;y.un("stop","onAnimationStop",this);if(s){A=s.nameMap}i[z]=q;if(w.onBeforeEnd){w.onBeforeEnd.call(w.scope||this,v,t)}y.fireEvent("animationbeforeend",y,v,t);this.fireEvent("animationbeforeend",this,y,v,t);if(p||(!t&&!w.preserveEndState)){u=w.toPropertyNames;for(x=0,r=u.length;x<r;x++){B=u[x];if(A&&!A.hasOwnProperty(B)){q[B]=null}}}if(w.after){Ext.merge(q,w.after)}this.applyStyles(i);if(w.onEnd){w.onEnd.call(w.scope||this,v,t)}y.fireEvent("animationend",y,v,t);this.fireEvent("animationend",this,y,v,t);Ext.AnimationQueue.stop(Ext.emptyFn,y)},onAllAnimationsEnd:function(d){var f=d.getId(),e={};delete this.runningAnimationsData[f];e[f]={"transition-property":null,"transition-duration":null,"transition-timing-function":null,"transition-delay":null};this.applyStyles(e);this.fireEvent("animationallend",this,d)},hasRunningAnimations:function(e){var f=e.getId(),d=this.runningAnimationsData;return d.hasOwnProperty(f)&&d[f].sessions.length>0},refreshRunningAnimationsData:function(I,D,j,y){var F=I.getId(),x=this.runningAnimationsData,L=x[F];if(!L){return}var B=L.nameMap,v=L.nameList,K=L.sessions,G,E,H,i,C,J,w,z,A=false;j=Boolean(j);y=Boolean(y);if(!K){return this}G=K.length;if(G===0){return this}if(y){L.nameMap={};v.length=0;for(C=0;C<G;C++){J=K[C];this.onAnimationEnd(I,J.data,J.animation,j,y)}K.length=0}else{for(C=0;C<G;C++){J=K[C];w=J.map;z=J.list;for(E=0,H=D.length;E<H;E++){i=D[E];if(w[i]){delete w[i];Ext.Array.remove(z,i);J.length--;if(--B[i]==0){delete B[i];Ext.Array.remove(v,i)}}}if(J.length==0){K.splice(C,1);C--;G--;A=true;this.onAnimationEnd(I,J.data,J.animation,j)}}}if(!y&&!j&&K.length==0&&A){this.onAllAnimationsEnd(I)}},getRunningData:function(c){var d=this.runningAnimationsData;if(!d.hasOwnProperty(c)){d[c]={nameMap:{},nameList:[],sessions:[]}}return d[c]},getTestElement:function(){var h=this.testElement,e,g,f;if(!h){e=document.createElement("iframe");e.setAttribute("tabIndex",-1);f=e.style;f.setProperty("visibility","hidden","important");f.setProperty("width","0px","important");f.setProperty("height","0px","important");f.setProperty("position","absolute","important");f.setProperty("border","0px","important");f.setProperty("zIndex","-1000","important");document.body.appendChild(e);g=e.contentDocument;g.open();g.writeln("</body>");g.close();this.testElement=h=g.createElement("div");h.style.setProperty("position","absolute","important");g.body.appendChild(h);this.testElementComputedStyle=window.getComputedStyle(h)}return h},getCssStyleValue:function(f,h){var i=this.getTestElement(),g=this.testElementComputedStyle,j=i.style;j.setProperty(f,h);if(Ext.browser.is.Firefox){i.offsetHeight}h=g.getPropertyValue(f);j.removeProperty(f);return h},run:function(aa){var P=this,ai=P.lengthProperties,K={},S={},N={},am,U,i,al,Q,j,O,Y,W,ap,ae,Z,ac,ab,X,ag,R,aj,V,M,ah,ak,L,ad,an,T,ao,af;if(!P.listenersAttached){P.attachListeners()}aa=Ext.Array.from(aa);for(Z=0,ab=aa.length;Z<ab;Z++){X=aa[Z];X=Ext.factory(X,Ext.fx.Animation);am=X.getElement();Ext.AnimationQueue.start(Ext.emptyFn,X);aj=window.getComputedStyle(am.dom);U=am.getId();N=Ext.merge({},X.getData());if(X.onBeforeStart){X.onBeforeStart.call(X.scope||P,am)}X.fireEvent("animationstart",X);P.fireEvent("animationstart",P,X);N[U]=N;Q=N.before;i=N.from;al=N.to;N.fromPropertyNames=j=[];N.toPropertyNames=O=[];for(M in al){if(al.hasOwnProperty(M)){al[M]=ah=P.formatValue(al[M],M);V=P.formatName(M);ad=ai.hasOwnProperty(M);if(!ad){ah=P.getCssStyleValue(V,ah)}if(i.hasOwnProperty(M)){i[M]=L=P.formatValue(i[M],M);if(!ad){L=P.getCssStyleValue(V,L)}if(ah!==L){j.push(V);O.push(V)}}else{ak=aj.getPropertyValue(V);if(ah!==ak){O.push(V)}}}}ag=O.length;if(ag===0){P.onAnimationEnd(am,N,X);continue}ap=P.getRunningData(U);ao=ap.sessions;if(ao.length>0){P.refreshRunningAnimationsData(am,Ext.Array.merge(j,O),true,N.replacePrevious)}an=ap.nameMap;T=ap.nameList;R={};for(ac=0;ac<ag;ac++){M=O[ac];R[M]=true;if(!an.hasOwnProperty(M)){an[M]=1;T.push(M)}else{an[M]++}}af={element:am,map:R,list:O.slice(),length:ag,data:N,animation:X};ao.push(af);X.on("stop","onAnimationStop",P);ae=Ext.apply({},Q);Ext.apply(ae,i);if(T.length>0){j=Ext.Array.difference(T,j);O=Ext.Array.merge(j,O);ae["transition-property"]=j}K[U]=ae;S[U]=Ext.apply({},al);S[U]["transition-property"]=O;S[U]["transition-duration"]=N.duration;S[U]["transition-timing-function"]=N.easing;S[U]["transition-delay"]=N.delay;X.startTime=Date.now()}W=P.$className;P.applyStyles(K);Y=function(a){if(a.data===W&&a.source===window){window.removeEventListener("message",Y,false);P.applyStyles(S)}};if(window.requestAnimationFrame){window.requestAnimationFrame(function(){window.addEventListener("message",Y,false);window.postMessage(W,"*")})}else{Ext.defer(function(){window.addEventListener("message",Y,false);window.postMessage(W,"*")},1)}},onAnimationStop:function(o){var m=this.runningAnimationsData,k,j,l,i,p,n;for(k in m){if(m.hasOwnProperty(k)){j=m[k];l=j.sessions;for(i=0,p=l.length;i<p;i++){n=l[i];if(n.animation===o){this.refreshRunningAnimationsData(n.element,n.list.slice(),false)}}}}}},1,0,0,0,0,0,[Ext.fx.runner,"CssTransition",Ext,"Animator"],0));(Ext.cmd.derive("Ext.mixin.Selectable",Ext.Mixin,{mixinConfig:{id:"selectable",after:{updateStore:"updateStore"}},config:{disableSelection:null,mode:"SINGLE",allowDeselect:false,lastSelected:null,lastFocused:null,deselectOnContainerClick:true,selection:null,twoWayBindable:{selection:1},publishes:{selection:1}},modes:{SINGLE:true,SIMPLE:true,MULTI:true},selectableEventHooks:{add:"onSelectionStoreAdd",remove:"onSelectionStoreRemove",update:"onSelectionStoreUpdate",clear:{fn:"onSelectionStoreClear",priority:1000},load:"refreshSelection",refresh:"refreshSelection"},constructor:function(){this.selected=new Ext.util.MixedCollection();this.callParent(arguments)},initSelectable:function(){this.publishState("selection",this.getSelection())},applyMode:function(b){b=b?b.toUpperCase():"SINGLE";return this.modes[b]?b:"SINGLE"},updateStore:function(f,h){var e=this,g=Ext.apply({},e.selectableEventHooks,{scope:e});if(h&&Ext.isObject(h)&&h.isStore){if(h.autoDestroy){h.destroy()}else{h.un(g)}}if(f){f.on(g);e.refreshSelection()}},selectAll:function(e){var f=this,d=f.getStore().getRange();f.select(d,true,e)},deselectAll:function(f){var d=this,e=d.getStore().getRange();d.deselect(e,f);d.selected.clear();d.setLastSelected(null);d.setLastFocused(null)},updateSelection:function(b){if(this.changingSelection){return}if(b){this.select(b)}else{this.deselectAll()}},selectWithEvent:function(e){var f=this,d=f.isSelected(e);switch(f.getMode()){case"MULTI":case"SIMPLE":if(d){f.deselect(e)}else{f.select(e,true)}break;case"SINGLE":if(f.getAllowDeselect()&&d){f.deselect(e)}else{f.select(e,false)}break}},selectRange:function(p,l,k){var m=this,i=m.getStore(),j=[],n,o;if(m.getDisableSelection()){return}if(p>l){n=l;l=p;p=n}for(o=p;o<=l;o++){j.push(i.getAt(o))}this.doMultiSelect(j,k)},select:function(j,h,f){var i=this,g;if(i.getDisableSelection()){return}if(typeof j==="number"){j=[i.getStore().getAt(j)]}if(!j){return}if(i.getMode()=="SINGLE"&&j){g=j.length?j[0]:j;i.doSingleSelect(g,f)}else{i.doMultiSelect(j,h,f)}},doSingleSelect:function(f,e){var g=this,h=g.selected;if(g.getDisableSelection()){return}if(g.isSelected(f)){return}if(h.getCount()>0){g.deselect(g.getLastSelected(),e)}h.add(f);g.setLastSelected(f);g.onItemSelect(f,e);g.setLastFocused(f);if(!e){g.fireSelectionChange([f])}},doMultiSelect:function(r,i,k){if(r===null||this.getDisableSelection()){return}r=!Ext.isArray(r)?[r]:r;var m=this,q=m.selected,n=r.length,l=false,p=0,o;if(!i&&q.getCount()>0){l=true;m.deselect(m.getSelections(),true)}for(;p<n;p++){o=r[p];if(i&&m.isSelected(o)){continue}l=true;m.setLastSelected(o);q.add(o);if(!k){m.setLastFocused(o)}m.onItemSelect(o,k)}if(l&&!k){this.fireSelectionChange(r)}},deselect:function(r,i){var m=this;if(m.getDisableSelection()){return}r=Ext.isArray(r)?r:[r];var q=m.selected,l=false,p=0,k=m.getStore(),n=r.length,o;for(;p<n;p++){o=r[p];if(typeof o==="number"){o=k.getAt(o)}if(q.remove(o)){if(m.getLastSelected()==o){m.setLastSelected(q.last())}l=true}if(o){m.onItemDeselect(o,i)}}if(l&&!i){m.fireSelectionChange(r)}},updateLastFocused:function(c,d){this.onLastFocusChanged(d,c)},fireSelectionChange:function(d){var c=this;c.changingSelection=true;c.setSelection(c.getLastSelected()||null);c.changingSelection=false;c.fireAction("selectionchange",[c,d],"getSelections")},getSelections:function(){return this.selected.getRange()},isSelected:function(b){b=Ext.isNumber(b)?this.getStore().getAt(b):b;return this.selected.indexOf(b)!==-1},hasSelection:function(){return this.selected.getCount()>0},refreshSelection:function(){var c=this,d=c.getSelections();c.deselectAll(true);if(d.length){c.select(d,false,true)}},onSelectionStoreRemove:function(p,i){var l=this,n=l.selected,m=i.length,k,j,o;if(l.getDisableSelection()){return}for(o=0;o<m;o++){j=i[o];if(n.remove(j)){if(l.getLastSelected()==j){l.setLastSelected(null)}if(l.getLastFocused()==j){l.setLastFocused(null)}k=k||[];k.push(j)}}if(k){l.fireSelectionChange([k])}},onSelectionStoreClear:function(c){var d=c.getData().items;this.onSelectionStoreRemove(c,d)},getSelectionCount:function(){return this.selected.getCount()},onSelectionStoreAdd:Ext.emptyFn,onSelectionStoreUpdate:Ext.emptyFn,onItemSelect:Ext.emptyFn,onItemDeselect:Ext.emptyFn,onLastFocusChanged:Ext.emptyFn,onEditorKey:Ext.emptyFn},1,0,0,0,0,0,[Ext.mixin,"Selectable"],function(){}));(Ext.cmd.derive("Ext.util.TaskManager",Ext.util.TaskRunner,{alternateClassName:["Ext.TaskManager"],singleton:true},0,0,0,0,0,0,[Ext.util,"TaskManager",Ext,"TaskManager"],0));(Ext.cmd.derive("Ext.util.TextMetrics",Ext.Base,{statics:{shared:null,measure:function(g,i,h){var f=this,j=f.shared;if(!j){j=f.shared=new f(g,h)}j.bind(g);j.setFixedWidth(h||"auto");return j.getSize(i)},destroy:function(){var b=this;Ext.destroy(b.shared);b.shared=null}},constructor:function(f,g){var h=this,e=Ext.getBody().createChild({role:"presentation",cls:"x-textmetrics"});e.setVisibilityMode(1);h.measure=e;if(f){h.bind(f)}e.position("absolute");e.setLocalXY(-1000,-1000);e.hide();if(g){e.setWidth(g)}},getSize:function(f){var d=this.measure,e;d.setHtml(f);e=d.getSize();d.setHtml("");return e},bind:function(d){var c=this;c.el=Ext.get(d);c.measure.setStyle(c.el.getStyle(["font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing","word-break"]))},setFixedWidth:function(b){this.measure.setWidth(b)},getWidth:function(b){this.measure.dom.style.width="auto";return this.getSize(b).width},getHeight:function(b){return this.getSize(b).height},destroy:function(){var b=this;b.el=b.measure=Ext.destroy(b.measure);b.callParent()}},1,0,0,0,0,0,[Ext.util,"TextMetrics"],function(){Ext.Element.override({getTextWidth:function(f,d,e){return Ext.Number.constrain(Ext.util.TextMetrics.measure(this.dom,Ext.valueFrom(f,this.dom.innerHTML,true)).width,d||0,e||1000000)}})}));(Ext.cmd.derive("Ext.util.LineSegment",Ext.Base,{constructor:function(d,e){var f=Ext.util.Point;this.point1=f.from(d);this.point2=f.from(e)},intersects:function(v){var s=this.point1,u=this.point2,y=v.point1,B=v.point2,D=s.x,E=u.x,F=y.x,d=B.x,r=s.y,t=u.y,w=y.y,z=B.y,A=(D-E)*(w-z)-(r-t)*(F-d),x,C;if(A==0){return null}x=((F-d)*(D*t-r*E)-(D-E)*(F*z-w*d))/A;C=((w-z)*(D*t-r*E)-(r-t)*(F*z-w*d))/A;if(x<Math.min(D,E)||x>Math.max(D,E)||x<Math.min(F,d)||x>Math.max(F,d)||C<Math.min(r,t)||C>Math.max(r,t)||C<Math.min(w,z)||C>Math.max(w,z)){return null}return new Ext.util.Point(x,C)},getLength:function(){return Math.abs(this.point1.getDistanceTo(this.point2))},getAngleToX:function(){var g=this.point1,h=this.point2,f=h.y-g.y,e=h.x-g.x;return Math.atan2(f,e)},getInBetweenPoint:function(h){var f=this.point1,j=this.getAngleToX(),g=f.x+Math.cos(j)*h,i=f.y+Math.sin(j)*h;return new Ext.util.Point(g,i)},toString:function(){return this.point1.toString()+" "+this.point2.toString()}},3,0,0,0,0,0,[Ext.util,"LineSegment"],0));(Ext.cmd.derive("Ext.Panel",Ext.Container,{alternateClassName:"Ext.panel.Panel",defaultBindProperty:"title",isPanel:true,config:{baseCls:"x-panel",border:false,bodyPadding:null,bodyBorder:null,header:null,icon:null,iconCls:null,title:null,tools:null},manageBorders:true,getElementConfig:function(){return{reference:"element",classList:["x-container","x-unsized"],children:[{reference:"innerElement",className:"x-inner"},{reference:"tipElement",className:"x-anchor",hidden:true}]}},addBodyCls:function(b){this.innerElement.addCls(b);return this},removeBodyCls:function(b){this.innerElement.removeCls(b);return this},applyBodyPadding:function(b){if(b===true){b=5}if(b){b=Ext.dom.Element.unitizeBox(b)}return b},addTool:function(d){var f=this.ensureHeader(),e;if(f){e=f.createTools(Ext.Array.from(d),this);if(e&&e.length){e=f.add(e)}}return e},applyHeader:function(f,h){var e=this,g=h;if(f===false){if(g){e.remove(g);g=null}}else{if(f){if(g){if(f!==true){g.setConfig(f)}}else{g=e.add(e.createHeader(f))}}}return g||null},applyTools:function(d){var f=this.ensureHeader(),e;if(f){f.clearTools();e=f.createTools(d,this);if(e&&e.length){f.add(e)}}},createHeader:function(f){var i=this,g={xtype:"panelheader",docked:"top",ui:i.getUi()},j,h;if(f&&f!==true){Ext.merge(g,f)}if(i.initialized){h=i.getTitle();if(h!=null){if(typeof h==="string"){h={text:h}}Ext.merge(g,{title:h})}j=i.getIconCls();if(j!=null){g.iconCls=j}else{j=i.getIcon();if(j!=null){g.icon=j}}}return g},updateBorder:function(c,d){Ext.Container.prototype.updateBorder.call(this,c,d);if(this.getBodyBorder()===null){this.setBodyBorderEnabled(c!==false)}},updateBodyPadding:function(b){this.innerElement.setStyle("padding",b)},updateBodyBorder:function(d){var c=(d===null)?this.getBorder():d;this.setBodyBorderEnabled(d!==false)},updateIcon:function(d){var c=this.ensureHeader();if(c){c.setIcon(d)}},updateIconCls:function(d){var c=this.ensureHeader();if(c){c.setIconCls(d)}},updateTitle:function(d){var c=this.ensureHeader();if(c){c.setTitle(d)}},updateUi:function(k,g){var h=this,j="x-panel-inner-",l=h.innerElement,i=!h.isConfiguring&&h.ensureHeader();if(g){l.removeCls(j+g)}if(k){l.addCls(j+k)}if(i){h.getTitle();i.setUi(k)}Ext.Container.prototype.updateUi.call(this,k,g)},alignTo:function(Y,ad){var Q=this.getAlignmentInfo(Y,ad);if(Q.isAligned){return}var H=this.tipElement;H.hide();if(this.currentTipPosition){H.removeCls("x-anchor-"+this.currentTipPosition)}Ext.Container.prototype.alignTo.apply(this,arguments);var ag=Ext.util.LineSegment,ai=Y.isComponent?Y.renderElement:Y,al=this.renderElement,X=ai.getBox(),aa=al.getBox(),ak=aa.left,K=aa.top,O=aa.right,ae=aa.bottom,ab=ak+(aa.width/2),ac=K+(aa.height/2),W={x:ak,y:K},Z={x:O,y:K},P={x:ak,y:ae},M={x:O,y:ae},V={x:ab,y:ac},L=X.left+(X.width/2),S=X.top+(X.height/2),I={x:L,y:S},aj=new ag(V,I),af=0,R=0,ah,U,N,T,G,J;H.setVisibility(false);H.show();ah=H.getSize();U=ah.width;N=ah.height;if(aj.intersects(new ag(W,Z))){G=Math.min(Math.max(L,ak+U),O-(U));J=K;R=N+10;T="top"}else{if(aj.intersects(new ag(W,P))){G=ak;J=Math.min(Math.max(S+(U/2),U*1.6),ae-(U/2.2));af=N+10;T="left"}else{if(aj.intersects(new ag(P,M))){G=Math.min(Math.max(L,ak+U),O-U);J=ae;R=-N-10;T="bottom"}else{if(aj.intersects(new ag(Z,M))){G=O;J=Math.max(Math.min(S-N,ae-U*1.3),U/2);af=-N-10;T="right"}}}}if(G||J){this.currentTipPosition=T;H.addCls("x-anchor-"+T);H.setLeft(G-ak);H.setTop(J-K);H.setVisibility(true);this.setLeft(this.getLeft()+af);this.setTop(this.getTop()+R)}},privates:{ensureHeader:function(){var d=this,c;d.getViewModel();d.getItems();c=d.getHeader();if(!c&&c!==false){d.setHeader(true);c=d.getHeader()}return c},setBodyBorderEnabled:function(b){this.innerElement.setStyle("border-width",b?"":"0")}}},0,["panel"],["widget","component","container","panel"],{widget:true,component:true,container:true,panel:true},["widget.panel"],0,[Ext,"Panel",Ext.panel,"Panel"],0));(Ext.cmd.derive("Ext.Button",Ext.Component,{isButton:true,cachedConfig:{pressedCls:"x-button-pressing",badgeCls:"x-badge",hasBadgeCls:"x-hasbadge",labelCls:"x-button-label",iconCls:null,textAlign:null},config:{badgeText:null,text:null,icon:false,iconAlign:"left",pressedDelay:0,handler:null,scope:null,autoEvent:null,ui:null,baseCls:"x-button"},defaultBindProperty:"text",template:[{tag:"span",reference:"badgeElement",hidden:true},{tag:"span",className:"x-button-icon",reference:"iconElement"},{tag:"span",reference:"textElement",hidden:true}],initialize:function(){Ext.Component.prototype.initialize.call(this);this.element.on({scope:this,tap:"onTap",touchstart:"onPress",touchend:"onRelease"})},updateBadgeText:function(f){var e=this.element,d=this.badgeElement;if(f){d.show();d.setText(f)}else{d.hide()}e[(f)?"addCls":"removeCls"](this.getHasBadgeCls())},updateText:function(c){var d=this.textElement;if(d){if(c){d.show();d.setHtml(c)}else{d.hide()}this.refreshIconAlign()}},updateHtml:function(c){var d=this.textElement;if(c){d.show();d.setHtml(c)}else{d.hide()}},updateBadgeCls:function(c,d){this.badgeElement.replaceCls(d,c)},updateHasBadgeCls:function(d,f){var e=this.element;if(e.hasCls(f)){e.replaceCls(f,d)}},updateLabelCls:function(c,d){this.textElement.replaceCls(d,c)},updatePressedCls:function(d,f){var e=this.element;if(e.hasCls(f)){e.replaceCls(f,d)}},updateIcon:function(d){var f=this,e=f.iconElement;if(d){f.showIconElement();e.setStyle("background-image","url("+d+")");f.refreshIconAlign()}else{e.setStyle("background-image","");if(!f.getIconCls()){f.hideIconElement()}}},updateIconCls:function(h,f){var g=this,e=g.iconElement;if(h){g.showIconElement();e.replaceCls(f,h);g.refreshIconAlign()}else{e.removeCls(f);if(!g.getIcon()){g.hideIconElement()}}},updateIconAlign:function(g,h){var e=this.element,f="x-iconalign-";if(!this.getText()){g="center"}e.removeCls(f+"center");e.removeCls(f+h);if(this.getIcon()||this.getIconCls()){e.addCls(f+g)}},_textAlignCls:{left:"x-text-align-left",right:"x-text-align-right",center:""},updateTextAlign:function(j,f){var h=this._textAlignCls,i=h[j||"center"],g=h[f||"center"];this.replaceCls(g,i)},refreshIconAlign:function(){this.updateIconAlign(this.getIconAlign())},applyAutoEvent:function(c){var d=this;if(typeof c=="string"){c={name:c,scope:d.scope||d}}return c},updateAutoEvent:function(f){var e=f.name,d=f.scope;this.setHandler(function(){d.fireEvent(e,d,this)});this.setScope(d)},hideIconElement:function(){var b=this.iconElement;b.removeCls("x-shown");b.addCls("x-hidden");this.element.addCls("x-button-no-icon")},showIconElement:function(){var b=this.iconElement;b.addCls("x-shown");b.removeCls("x-hidden");this.element.removeCls("x-button-no-icon")},applyUi:function(d){if(d&&Ext.isString(d)){var c=d.split("-");if(c&&(c[1]=="back"||c[1]=="forward")){return c}}return d},getUi:function(){var b=this._ui;if(Ext.isArray(b)){return b.join("-")}return b},applyPressedDelay:function(b){if(Ext.isNumber(b)){return b}return(b)?100:0},onPress:function(){var h=this,f=h.element,g=h.getPressedDelay(),e=h.getPressedCls();if(!h.getDisabled()){if(g>0){h.pressedTimeout=Ext.defer(function(){delete h.pressedTimeout;if(f){f.addCls(e)}},g)}else{f.addCls(e)}}},onRelease:function(b){this.fireAction("release",[this,b],"doRelease")},doRelease:function(d,c){if(!d.getDisabled()){if(d.hasOwnProperty("pressedTimeout")){clearTimeout(d.pressedTimeout);delete d.pressedTimeout}else{d.element.removeCls(d.getPressedCls())}}},onTap:function(b){if(this.getDisabled()){return false}this.fireAction("tap",[this,b],"doTap")},doTap:function(d,f){var e=d.getHandler();if(!e){return}if(f&&f.preventDefault){f.preventDefault()}Ext.callback(e,d.getScope(),[d,f],0,d)}},0,["button"],["widget","component","button"],{widget:true,component:true,button:true},["widget.button"],0,[Ext,"Button"],0));(Ext.cmd.derive("Ext.Sheet",Ext.Panel,{config:{baseCls:"x-sheet",modal:true,centered:true,stretchX:null,stretchY:null,enter:"bottom",exit:"bottom",showAnimation:{type:"slideIn",duration:250,easing:"ease-out"},hideAnimation:{type:"slideOut",duration:250,easing:"ease-in"},border:null},manageBorders:false,isInputRegex:/^(input|textarea|select|a)$/i,beforeInitialize:function(){var b=this;if(Ext.os.is.iOS){this.element.dom.addEventListener("touchstart",function(a){if(!b.isInputRegex.test(a.target.tagName)){a.preventDefault()}},true)}},applyHideAnimation:function(e){var f=this.getExit(),g=f;if(f===null){return null}if(e===true){e={type:"slideOut"}}if(Ext.isString(e)){e={type:e}}var h=Ext.factory(e,Ext.fx.Animation);if(h){if(f=="bottom"){g="down"}if(f=="top"){g="up"}h.setDirection(g)}return h},applyShowAnimation:function(f){var g=this.getEnter(),h=g;if(g===null){return null}if(f===true){f={type:"slideIn"}}if(Ext.isString(f)){f={type:f}}var e=Ext.factory(f,Ext.fx.Animation);if(e){if(g=="bottom"){h="down"}if(g=="top"){h="up"}e.setBefore({display:null});e.setReverse(true);e.setDirection(h)}return e},updateStretchX:function(b){this.getLeft();this.getRight();if(b){this.setLeft(0);this.setRight(0)}},updateStretchY:function(b){this.getTop();this.getBottom();if(b){this.setTop(0);this.setBottom(0)}}},0,["sheet"],["widget","component","container","panel","sheet"],{widget:true,component:true,container:true,panel:true,sheet:true},["widget.sheet"],0,[Ext,"Sheet"],0));(Ext.cmd.derive("Ext.Decorator",Ext.Component,{isDecorator:true,config:{component:{}},statics:{generateProxySetter:function(b){return function(d){var a=this.getComponent();a[b].call(a,d);return this}},generateProxyGetter:function(b){return function(){var a=this.getComponent();return a[b].call(a)}}},onClassExtended:function(p,n){if(!n.hasOwnProperty("proxyConfig")){return}var m=Ext.Class,j=n.proxyConfig,o=n.config;n.config=(o)?Ext.applyIf(o,j):j;var q,k,l,r;for(q in j){if(j.hasOwnProperty(q)){k=Ext.Config.get(q).names;l=k.set;r=k.get;n[l]=this.generateProxySetter(l);n[r]=this.generateProxyGetter(r)}}},applyComponent:function(b){return Ext.factory(b,Ext.Component)},updateComponent:function(d,f){var e=this;if(f){if(e.isRendered()&&f.setRendered(false)){f.fireEventedAction("renderedchange",[e,f,false],e.doUnsetComponent,e,false)}else{e.doUnsetComponent(f)}}if(d){if(e.isRendered()&&d.setRendered(true)){d.fireEventedAction("renderedchange",[e,d,true],e.doSetComponent,e,false)}else{e.doSetComponent(d)}}},doUnsetComponent:function(d){var c=d.renderElement.dom;if(c){d.setLayoutSizeFlags(0);this.innerElement.dom.removeChild(c)}},doSetComponent:function(d){var c=d.renderElement.dom;if(c){d.setLayoutSizeFlags(this.getSizeFlags());this.innerElement.dom.appendChild(c)}},setRendered:function(c){var d;if((arguments.callee.$previous||Ext.Component.prototype.setRendered).apply(this,arguments)){d=this.getComponent();if(d){d.setRendered(c)}return true}return false},setDisabled:function(b){this.callParent(arguments);this.getComponent().setDisabled(b)},destroy:function(){Ext.destroy(this.getComponent());Ext.Component.prototype.destroy.call(this)}},0,0,["widget","component"],{widget:true,component:true},0,0,[Ext,"Decorator"],0));(Ext.cmd.derive("Ext.Img",Ext.Component,{alternateClassName:"Ext.Image",config:{src:null,baseCls:"x-img",imageCls:"x-img-image",backgroundCls:"x-img-background",mode:"background"},beforeInitialize:function(){var b=this;b.onLoad=Ext.Function.bind(b.onLoad,b);b.onError=Ext.Function.bind(b.onError,b)},initialize:function(){var b=this;Ext.Component.prototype.initialize.call(this);b.relayEvents(b.renderElement,"*");b.element.on({tap:"onTap",scope:b})},hide:function(){Ext.Component.prototype.hide.apply(this,arguments);this.hiddenSrc=this.hiddenSrc||this.getSrc();this.setSrc(null)},show:function(){Ext.Component.prototype.show.apply(this,arguments);if(this.hiddenSrc){this.setSrc(this.hiddenSrc);delete this.hiddenSrc}},updateMode:function(g){var h=this,f=h.getImageCls(),e=h.getBackgroundCls();if(g==="background"){if(h.imageElement){h.imageElement.destroy();delete h.imageElement;h.updateSrc(h.getSrc())}h.replaceCls(f,e)}else{h.imageElement=h.element.createChild({tag:"img"});h.replaceCls(e,f)}},updateImageCls:function(c,d){this.replaceCls(d,c)},updateBackgroundCls:function(c,d){this.replaceCls(d,c)},onTap:function(b){this.fireEvent("tap",this,b)},onAfterRender:function(){this.updateSrc(this.getSrc())},applySrc:function(b){return b&&Ext.resolveResource(b)},updateSrc:function(e){var d=this,f;if(d.getMode()==="background"){f=this.imageObject||new Image()}else{f=d.imageElement.dom}this.imageObject=f;f.setAttribute("src",Ext.isString(e)?e:"");f.addEventListener("load",d.onLoad,false);f.addEventListener("error",d.onError,false)},detachListeners:function(){var b=this.imageObject;if(b){b.removeEventListener("load",this.onLoad,false);b.removeEventListener("error",this.onError,false)}},onLoad:function(b){this.detachListeners();if(this.getMode()==="background"){this.element.dom.style.backgroundImage='url("'+this.imageObject.src+'")'}this.fireEvent("load",this,b)},onError:function(b){this.detachListeners();if(this.getMode()==="background"){this.element.dom.style.backgroundImage='url("'+this.imageObject.src+'")'}this.fireEvent("error",this,b)},updateWidth:function(c){var d=(this.getMode()==="background")?this.element:this.imageElement;d.setWidth(c);Ext.Component.prototype.updateWidth.apply(this,arguments)},updateHeight:function(c){var d=(this.getMode()==="background")?this.element:this.imageElement;d.setHeight(c);Ext.Component.prototype.updateHeight.apply(this,arguments)},destroy:function(){var b=this;b.detachListeners();b.imageObject=b.imageElement=Ext.destroy(b.imageObject,b.imageElement);Ext.Component.prototype.destroy.call(this)}},0,["image","img"],["widget","component","image","img"],{widget:true,component:true,image:true,img:true},["widget.image","widget.img"],0,[Ext,"Img",Ext,"Image"],0));(Ext.cmd.derive("Ext.Menu",Ext.Sheet,{config:{baseCls:"x-menu",left:0,right:0,bottom:0,height:"auto",width:"auto",defaultType:"button",showAnimation:null,hideAnimation:null,centered:false,modal:true,hidden:true,hideOnMaskTap:true,translatable:{translationMethod:null}},constructor:function(){this.config.translatable.translationMethod="csstransform";Ext.Sheet.prototype.constructor.apply(this,arguments)},updateUi:function(d,c){Ext.Sheet.prototype.updateUi.apply(this,arguments);if(d!=c&&Ext.theme.is.Blackberry){if(d=="context"){this.innerElement.swapCls("x-vertical","x-horizontal")}else{if(d=="application"){this.innerElement.swapCls("x-horizontal","x-vertical")}}}},updateHideOnMaskTap:function(c){var d=this.getModal();if(d){d[c?"on":"un"].call(d,"tap",function(){Ext.Viewport.hideMenu(this.$side)},this)}},updateHidden:function(){if(this.initialized){Ext.Sheet.prototype.updateHidden.apply(this,arguments)}}},1,["menu"],["widget","component","container","panel","sheet","menu"],{widget:true,component:true,container:true,panel:true,sheet:true,menu:true},["widget.menu"],0,[Ext,"Menu"],0));(Ext.cmd.derive("Ext.Title",Ext.Component,{config:{baseCls:"x-title",title:""},updateTitle:function(b){this.setHtml(b)}},0,["title"],["widget","component","title"],{widget:true,component:true,title:true},["widget.title"],0,[Ext,"Title"],0));(Ext.cmd.derive("Ext.Spacer",Ext.Component,{config:{},constructor:function(b){b=b||{};if(!b.width){b.flex=1}Ext.Component.prototype.constructor.call(this,b)}},1,["spacer"],["widget","component","spacer"],{widget:true,component:true,spacer:true},["widget.spacer"],0,[Ext,"Spacer"],0));(Ext.cmd.derive("Ext.Toolbar",Ext.Container,{isToolbar:true,config:{baseCls:"x-toolbar",title:null,defaultType:"button",defaultButtonUI:null,minHeight:null,layout:{type:"hbox",align:"center"}},hasCSSMinHeight:true,constructor:function(b){b=b||{};if(b.docked=="left"||b.docked=="right"){b.layout={type:"vbox",align:"stretch"}}Ext.Container.prototype.constructor.call(this,b)},applyTitle:function(b){if(typeof b=="string"){b={title:b,centered:Ext.theme.is.Tizen?false:true}}return Ext.factory(b,Ext.Title,this.getTitle())},updateTitle:function(c,d){if(c){this.add(c)}if(d){d.destroy()}},showTitle:function(){var b=this.getTitle();if(b){b.show()}},hideTitle:function(){var b=this.getTitle();if(b){b.hide()}},onItemAdd:function(f,d){var e=this.getDefaultButtonUI();if(e){if(f.isSegmentedButton){if(f.getDefaultUI()==null){f.setDefaultUI(e)}}else{if(f.isButton&&(f.getUi()==null)){f.setUi(e)}}}Ext.Container.prototype.onItemAdd.call(this,f,d)},factoryItem:function(b){if(b==="->"){b={xtype:"component",flex:1}}return Ext.Container.prototype.factoryItem.call(this,b)}},1,["toolbar"],["widget","component","container","toolbar"],{widget:true,component:true,container:true,toolbar:true},["widget.toolbar"],0,[Ext,"Toolbar"],0));Ext.define("Ext.theme.neptune.Toolbar",{override:"Ext.Toolbar",config:{defaultButtonUI:"action"}});(Ext.cmd.derive("Ext.SegmentedButton",Ext.Container,{alternateClassName:"Ext.button.Segmented",isSegmentedButton:true,config:{baseCls:"x-segmentedbutton",pressedCls:"x-button-pressed",allowMultiple:false,allowDepress:false,allowToggle:true,pressedButtons:[],layout:{type:"hbox",align:"stretch"},defaultType:"button",defaultUI:null},initialize:function(){var b=this;Ext.Container.prototype.initialize.call(this);b.on({delegate:"> button",scope:b,tap:"onButtonRelease"});b.onAfter({delegate:"> button",scope:b,hide:"onButtonHiddenChange",show:"onButtonHiddenChange"})},updateAllowMultiple:function(b){if(!this.initialized&&!this.getInitialConfig().hasOwnProperty("allowDepress")&&b){this.setAllowDepress(true)}},applyItems:function(){var j=this,i=[],k,g,l,h;Ext.Container.prototype.applyItems.apply(this,arguments);h=this.getItems();k=h.length;for(g=0;g<k;g++){l=h.items[g];if(l.getInitialConfig("pressed")){i.push(h.items[g])}}j.updateFirstAndLastCls(h);j.setPressedButtons(i)},onButtonRelease:function(g){if(!this.getAllowToggle()){return}var i=this,h=i.getPressedButtons()||[],j=[],f;if(!i.getDisabled()&&!g.getDisabled()){if(i.getAllowMultiple()){j=h.concat(j)}f=(j.indexOf(g)!==-1)||(h.indexOf(g)!==-1);if(f&&i.getAllowDepress()){Ext.Array.remove(j,g)}else{if(!f||!i.getAllowDepress()){j.push(g)}}i.setPressedButtons(j)}},onItemAdd:function(){Ext.Container.prototype.onItemAdd.apply(this,arguments);this.updateFirstAndLastCls(this.getItems())},onItemRemove:function(){Ext.Container.prototype.onItemRemove.apply(this,arguments);this.updateFirstAndLastCls(this.getItems())},onButtonHiddenChange:function(){this.updateFirstAndLastCls(this.getItems())},updateFirstAndLastCls:function(h){var l=h.length,k="x-",i=k+"first",j=k+"last",m,n;for(n=0;n<l;n++){m=h.items[n];m.removeCls(i);m.removeCls(j)}for(n=0;n<l;n++){m=h.items[n];if(!m.isHidden()){m.addCls(i);break}}for(n=l-1;n>=0;n--){m=h.items[n];if(!m.isHidden()){m.addCls(j);break}}},applyPressedButtons:function(h){var j=this,i=[],l,k,g;if(j.getAllowToggle()){if(Ext.isArray(h)){k=h.length;for(g=0;g<k;g++){l=j.getComponent(h[g]);if(l&&i.indexOf(l)===-1){i.push(l)}}}else{l=j.getComponent(h);if(l&&i.indexOf(l)===-1){i.push(l)}}}return i},updatePressedButtons:function(o,t){var p=this,q=p.getItems(),n=p.getPressedCls(),e=[],i,u,r,v,s;r=q.length;if(t&&t.length){for(v=0;v<r;v++){i=q.items[v];if(t.indexOf(i)!=-1&&o.indexOf(i)==-1){i.removeCls([n,i.getPressedCls()]);e.push({item:i,toggle:false})}}}r=o.length;for(v=0;v<r;v++){u=o[v];if(!t||t.indexOf(u)==-1){u.addCls(n);e.push({item:u,toggle:true})}}r=e.length;if(r&&t!==undefined){Ext.defer(function(){for(v=0;v<r;v++){s=e[v];p.fireEvent("toggle",p,s.item,s.toggle)}},50)}},setPressed:function(e,f){var d=this.getPressedButtons().slice();if(f){Ext.Array.include(d,e)}else{Ext.Array.remove(d,e)}this.setPressedButtons(d)},isPressed:function(d){var c=this.getPressedButtons();return c.indexOf(d)!==-1},updateDisabled:function(d){var c=this;c.items.each(function(a){a.setDisabled(d)},c);Ext.Container.prototype.updateDisabled.apply(this,arguments)},setValue:function(b){this.setPressedButtons([this.items.getAt(b)])},getValue:function(){var c=this.getPressedButtons(),d=-1;if(c.length){d=this.items.indexOf(c[0])}return d},updateDefaultUI:function(h){var f=this.items&&this.items.items,g=f.length,j,i;for(j=0;j<g;j++){i=f[j];if(i.getUi()==null){i.setUi(h)}}},doAdd:function(d,e){var f=this.getDefaultUI();if(f&&(d.getUi()==null)){d.setUi(f)}Ext.Container.prototype.doAdd.call(this,d,e)}},0,["segmentedbutton"],["widget","component","container","segmentedbutton"],{widget:true,component:true,container:true,segmentedbutton:true},["widget.segmentedbutton"],0,[Ext,"SegmentedButton",Ext.button,"Segmented"],0));(Ext.cmd.derive("Ext.TitleBar",Ext.Container,{defaultBindProperty:"title",isToolbar:true,config:{baseCls:"x-toolbar",cls:"x-navigation-bar",ui:"dark",title:null,titleAlign:"center",defaultType:"button",minHeight:null,layout:{type:"hbox"},items:[],maxButtonWidth:"40%"},hasCSSMinHeight:true,beforeInitialize:function(){this.applyItems=this.applyInitialItems},initialize:function(){delete this.applyItems;this.add(this.initialItems);delete this.initialItems;this.on({painted:"refreshTitlePosition",single:true})},applyInitialItems:function(f){var h=this,e=h.getTitleAlign(),g=h.getDefaults()||{};h.initialItems=f;h.leftBox=h.add({xtype:"container",style:"position: relative",layout:{type:"hbox",align:"center"},listeners:{resize:"refreshTitlePosition",scope:h}});h.spacer=h.add({xtype:"component",style:"position: relative",flex:1,listeners:{resize:"refreshTitlePosition",scope:h}});h.rightBox=h.add({xtype:"container",style:"position: relative",layout:{type:"hbox",align:"center"},listeners:{resize:"refreshTitlePosition",scope:h}});switch(e){case"left":h.titleComponent=h.leftBox.add({xtype:"title",cls:"x-title-align-left",hidden:g.hidden});h.refreshTitlePosition=Ext.emptyFn;break;case"right":h.titleComponent=h.rightBox.add({xtype:"title",cls:"x-title-align-right",hidden:g.hidden});h.refreshTitlePosition=Ext.emptyFn;break;default:h.titleComponent=h.add({xtype:"title",hidden:g.hidden,centered:true});break}h.doAdd=h.doBoxAdd;h.remove=h.doBoxRemove;h.doInsert=h.doBoxInsert},doBoxAdd:function(b){if(b.config.align=="right"){this.rightBox.add(b)}else{this.leftBox.add(b)}},doBoxRemove:function(c,d){if(c.config.align=="right"){this.rightBox.remove(c,d)}else{this.leftBox.remove(c,d)}},doBoxInsert:function(d,c){if(c.config.align=="right"){this.rightBox.insert(d,c)}else{this.leftBox.insert(d,c)}},calculateMaxButtonWidth:function(){var b=this.getMaxButtonWidth();if(Ext.isString(b)){b=parseInt(b.replace("%",""),10)}b=Math.round((this.element.getWidth()/100)*b);return b},refreshTitlePosition:function(){if(this.destroyed){return}var v=this.titleComponent.renderElement;v.setWidth(null);v.setLeft(null);var A=this.leftBox,y=A.down("button"),B=A.getItems().getCount()==1,t,o;if(y&&B){if(y.getWidth()==null){y.renderElement.setWidth("auto")}t=A.renderElement.getWidth();o=this.calculateMaxButtonWidth();if(t>o){y.renderElement.setWidth(o)}}var r=this.spacer.renderElement.getBox();if(Ext.browser.is.IE){v.setWidth(r.width)}var q=v.getBox(),u=q.width-r.width,x=q.left,s=q.right,z,p,w;if(u>0){z=u/2;x+=z;s-=z;v.setWidth(r.width)}p=r.left-x;w=s-r.right;if(p>0){v.setLeft(p)}else{if(w>0){v.setLeft(-w)}}v.repaint()},updateTitle:function(b){this.getItems();this.titleComponent.setTitle(b);if(this.isPainted()){this.refreshTitlePosition()}}},0,["titlebar"],["widget","component","container","titlebar"],{widget:true,component:true,container:true,titlebar:true},["widget.titlebar"],0,[Ext,"TitleBar"],0));(Ext.cmd.derive("Ext.carousel.Item",Ext.Decorator,{config:{baseCls:"x-carousel-item",component:null,translatable:true}},0,0,["widget","component"],{widget:true,component:true},0,0,[Ext.carousel,"Item"],0));(Ext.cmd.derive("Ext.carousel.Indicator",Ext.Component,{config:{baseCls:"x-carousel-indicator",direction:"horizontal"},initialize:function(){Ext.Component.prototype.initialize.call(this);this.indicators=[];this.element.on({tap:"onTap",scope:this})},updateDirection:function(e,f){var d=this.getBaseCls();this.element.replaceCls(f,e,d);if(e==="horizontal"){this.setBottom(0);this.setRight(null)}else{this.setRight(0);this.setBottom(null)}},addIndicator:function(){this.indicators.push(this.element.createChild({tag:"span"}))},removeIndicator:function(){var b=this.indicators;if(b.length>0){b.pop().destroy()}},setActiveIndex:function(g){var j=this.indicators,k=this.activeIndex,h=j[k],i=j[g],l=this.getBaseCls();if(h){h.removeCls(l,null,"active")}if(i){i.addCls(l,null,"active")}this.activeIndex=g;return this},onTap:function(j){var i=j.touch,h=this.element.getBox(),k=h.left+(h.width/2),e=h.top+(h.height/2),l=this.getDirection();if((l==="horizontal"&&i.pageX>=k)||(l==="vertical"&&i.pageY>=e)){this.fireEvent("next",this)}else{this.fireEvent("previous",this)}},destroy:function(){var g=this.indicators,e,h,f;for(e=0,h=g.length;e<h;e++){f=g[e];f.destroy()}g.length=0;Ext.Component.prototype.destroy.call(this)}},0,["carouselindicator"],["widget","component","carouselindicator"],{widget:true,component:true,carouselindicator:true},["widget.carouselindicator"],0,[Ext.carousel,"Indicator"],0));(Ext.cmd.derive("Ext.util.TranslatableGroup",Ext.util.translatable.Abstract,{config:{items:[],activeIndex:0,itemLength:{x:0,y:0}},applyItems:function(b){return Ext.Array.from(b)},doTranslate:function(r,s){var t=this.getItems(),i=this.getActiveIndex(),v=this.getItemLength(),A=v.x,B=v.y,w=Ext.isNumber(r),x=Ext.isNumber(s),z,y,u,q,C,D;for(y=0,u=t.length;y<u;y++){q=t[y];if(q){z=(y-i);if(w){C=r+z*A}if(x){D=s+z*B}q.translate(C,D)}}}},0,0,0,0,0,0,[Ext.util,"TranslatableGroup"],0));(Ext.cmd.derive("Ext.carousel.Carousel",Ext.Container,{alternateClassName:"Ext.Carousel",config:{baseCls:"x-carousel",direction:"horizontal",directionLock:false,animation:{duration:250,easing:{type:"ease-out"}},indicator:true,ui:"dark",itemConfig:{},bufferSize:1,itemLength:null},itemLength:0,offset:0,flickStartOffset:0,flickStartTime:0,dragDirection:0,count:0,painted:false,activeIndex:-1,beforeInitialize:function(){var b=this;b.element.on({resize:"onSizeChange",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",scope:b});b.carouselItems=[];b.orderedCarouselItems=[];b.inactiveCarouselItems=[];b.hiddenTranslation=0},updateBufferSize:function(i){var p=Ext.carousel.Item,s=i*2+1,o=this.isRendered(),x=this.innerElement,t=this.carouselItems,u=t.length,v=this.getItemConfig(),w=this.getItemLength(),r=this.getDirection(),y=r==="horizontal"?"setWidth":"setHeight",z,q;for(z=u;z<s;z++){q=Ext.factory(v,p);if(w){q[y].call(q,w)}q.setLayoutSizeFlags(this.LAYOUT_BOTH);t.push(q);x.append(q.renderElement);if(o&&q.setRendered(true)){q.fireEvent("renderedchange",this,q,true)}}this.getTranslatable().setActiveIndex(i)},setRendered:function(j){var i=this.rendered;if(j!==i){this.rendered=j;var h=this.items.items,m=this.carouselItems,n,k,l;for(n=0,k=h.length;n<k;n++){l=h[n];if(!l.isInnerItem()){l.setRendered(j)}}for(n=0,k=m.length;n<k;n++){m[n].setRendered(j)}return true}return false},onSizeChange:function(){this.refreshSizing();this.refreshCarouselItems();this.refreshActiveItem()},onItemAdd:function(h,e){Ext.Container.prototype.onItemAdd.apply(this,arguments);var g=this.getInnerItems().indexOf(h),f=this.getIndicator();if(f&&h.isInnerItem()){f.addIndicator()}if(g<=this.getActiveIndex()){this.refreshActiveIndex()}if(this.isIndexDirty(g)&&!this.isItemsInitializing){this.refreshActiveItem()}},doItemLayoutAdd:function(b){if(b.isInnerItem()){return}Ext.Container.prototype.doItemLayoutAdd.apply(this,arguments)},onItemRemove:function(m,i){Ext.Container.prototype.onItemRemove.apply(this,arguments);var k=this.getInnerItems().indexOf(m),j=this.getIndicator(),o=this.carouselItems,p,n,l;if(m.isInnerItem()&&j){j.removeIndicator()}if(k<=this.getActiveIndex()){this.refreshActiveIndex()}if(this.isIndexDirty(k)){for(p=0,n=o.length;p<n;p++){l=o[p];if(l.getComponent()===m){l.setComponent(null)}}this.refreshActiveItem()}},doItemLayoutRemove:function(b){if(b.isInnerItem()){return}Ext.Container.prototype.doItemLayoutRemove.apply(this,arguments)},onInnerItemMove:function(d,f,e){if((this.isIndexDirty(f)||this.isIndexDirty(e))){this.refreshActiveItem()}},doItemLayoutMove:function(b){if(b.isInnerItem()){return}Ext.Container.prototype.doItemLayoutMove.apply(this,arguments)},isIndexDirty:function(d){var e=this.getActiveIndex(),f=this.getBufferSize();return(d>=e-f&&d<=e+f)},getTranslatable:function(){var c=this,d=c.translatable;if(!d){c.translatable=d=new Ext.util.TranslatableGroup();d.setItems(c.orderedCarouselItems);d.on("animationend","onAnimationEnd",c)}return d},onDragStart:function(h){var i=this.getDirection(),e=h.absDeltaX,g=h.absDeltaY,j=this.getDirectionLock();this.isDragging=true;if(j){if((i==="horizontal"&&e>g)||(i==="vertical"&&g>e)){h.stopPropagation()}else{this.isDragging=false;return}}this.getTranslatable().stopAnimation();this.dragStartOffset=this.offset;this.dragDirection=0},onDrag:function(p){if(!this.isDragging){return}var o=this.dragStartOffset,n=this.getDirection(),e=n==="horizontal"?p.deltaX:p.deltaY,x=this.offset,q=this.flickStartTime,v=this.dragDirection,w=Ext.Date.now(),r=this.getActiveIndex(),t=this.getMaxItemIndex(),u=v,s;if((r===0&&e>0)||(r===t&&e<0)){e*=0.5}s=o+e;if(s>x){v=1}else{if(s<x){v=-1}}if(v!==u||(w-q)>300){this.flickStartOffset=x;this.flickStartTime=w}this.dragDirection=v;this.setOffset(s)},onDragEnd:function(p){if(!this.isDragging){return}this.onDrag(p);this.isDragging=false;var x=Ext.Date.now(),q=this.itemLength,s=q/2,t=this.offset,e=this.getActiveIndex(),v=this.getMaxItemIndex(),r=0,n=t-this.flickStartOffset,w=x-this.flickStartTime,o=this.getIndicator(),u;if(w>0&&Math.abs(n)>=10){u=n/w;if(Math.abs(u)>=1){if(u<0&&e<v){r=-1}else{if(u>0&&e>0){r=1}}}}if(r===0){if(e<v&&t<-s){r=-1}else{if(e>0&&t>s){r=1}}}if(o){o.setActiveIndex(e-r)}this.animationDirection=r;this.setOffsetAnimated(r*q)},applyAnimation:function(b){b.easing=Ext.factory(b.easing,Ext.fx.easing.EaseOut);return b},updateDirection:function(c){var d=this.getIndicator();this.currentAxis=(c==="horizontal")?"x":"y";if(d){d.setDirection(c)}},setOffset:function(b){this.offset=b;if(Ext.isNumber(this.itemOffset)){this.getTranslatable().translateAxis(this.currentAxis,b+this.itemOffset)}return this},setOffsetAnimated:function(c){var d=this.getIndicator();if(d){d.setActiveIndex(this.getActiveIndex()-this.animationDirection)}this.offset=c;this.getTranslatable().translateAxis(this.currentAxis,c+this.itemOffset,this.getAnimation());return this},onAnimationEnd:function(h){var n=this.getActiveIndex(),i=this.animationDirection,l=this.currentAxis,k=h[l],m=this.itemLength,j;if(i===-1){j=m+k}else{if(i===1){j=k-m}else{j=k}}j-=this.itemOffset;this.offset=j;this.setActiveItem(n-i)},refresh:function(){this.refreshSizing();this.refreshActiveItem()},refreshSizing:function(){var g=this.element,f=this.getItemLength(),h={x:0,y:0},j,i;if(this.getDirection()==="horizontal"){i=g.getWidth()}else{i=g.getHeight()}this.hiddenTranslation=-i;if(f===null){f=i;j=0}else{j=(i-f)/2}this.itemLength=f;this.itemOffset=j;h[this.currentAxis]=f;this.getTranslatable().setItemLength(h)},refreshOffset:function(){this.setOffset(this.offset)},refreshActiveItem:function(){this.updateActiveItem(this.getActiveItem())},getActiveIndex:function(){return this.activeIndex},refreshActiveIndex:function(){this.activeIndex=this.getInnerItemIndex(this.getActiveItem())},refreshCarouselItems:function(){var f=this.carouselItems,e,g,h;for(e=0,g=f.length;e<g;e++){h=f[e];h.getTranslatable().refresh()}this.refreshInactiveCarouselItems()},refreshInactiveCarouselItems:function(){var h=this.inactiveCarouselItems,i=this.hiddenTranslation,l=this.currentAxis,g,j,k;for(g=0,j=h.length;g<j;g++){k=h[g];k.translateAxis(l,i)}},getMaxItemIndex:function(){return this.innerItems.length-1},getInnerItemIndex:function(b){return this.innerItems.indexOf(b)},getInnerItemAt:function(b){return this.innerItems[b]},applyActiveItem:function(){var c=Ext.Container.prototype.applyActiveItem.apply(this,arguments),d;if(c){d=this.getInnerItemIndex(c);if(d!==-1){this.activeIndex=d;return c}}},updateActiveItem:function(z){var i=this.getActiveIndex(),B=this.getMaxItemIndex(),u=this.getIndicator(),D=this.getBufferSize(),w=this.carouselItems.slice(),t=this.orderedCarouselItems,r={},s={},F,v,E,A,y,x,C;if(w.length===0){return}Ext.Container.prototype.updateActiveItem.apply(this,arguments);t.length=0;if(z){E=z.getId();s[E]=z;r[E]=D;if(i>0){for(A=1;A<=D;A++){y=i-A;if(y>=0){F=this.getInnerItemAt(y);E=F.getId();s[E]=F;r[E]=D-A}else{break}}}if(i<B){for(A=1;A<=D;A++){y=i+A;if(y<=B){F=this.getInnerItemAt(y);E=F.getId();s[E]=F;r[E]=D+A}else{break}}}for(A=0,x=w.length;A<x;A++){C=w[A];v=C.getComponent();if(v){E=v.getId();if(r.hasOwnProperty(E)){w.splice(A,1);A--;x--;delete s[E];t[r[E]]=C}}}for(E in s){if(s.hasOwnProperty(E)){F=s[E];C=w.pop();C.setComponent(F);t[r[E]]=C}}}this.inactiveCarouselItems.length=0;this.inactiveCarouselItems=w;this.refreshOffset();this.refreshInactiveCarouselItems();if(u){u.setActiveIndex(i)}},next:function(){this.setOffset(0);if(this.activeIndex===this.getMaxItemIndex()){return this}this.animationDirection=-1;this.setOffsetAnimated(-this.itemLength);return this},previous:function(){this.setOffset(0);if(this.activeIndex===0){return this}this.animationDirection=1;this.setOffsetAnimated(this.itemLength);return this},applyIndicator:function(d,c){return Ext.factory(d,Ext.carousel.Indicator,c)},updateIndicator:function(b){if(b){this.insertFirst(b);b.setUi(this.getUi());b.on({next:"next",previous:"previous",scope:this})}},destroy:function(){var c=this,d=c.carouselItems.slice();c.carouselItems.length=0;Ext.destroy(d,c.getIndicator(),c.translatable);Ext.Container.prototype.destroy.call(this);delete c.carouselItems}},0,["carousel"],["widget","component","container","carousel"],{widget:true,component:true,container:true,carousel:true},["widget.carousel"],0,[Ext.carousel,"Carousel",Ext,"Carousel"],0));(Ext.cmd.derive("Ext.dataview.component.DataItem",Ext.Container,{config:{baseCls:"x-data-item",defaultType:"component",record:null,itemCls:null,dataMap:{},dataview:null,width:"100%",items:[{xtype:"component"}]},updateBaseCls:function(e,d){var f=this;Ext.Container.prototype.updateBaseCls.apply(this,arguments)},updateItemCls:function(c,d){if(d){this.removeCls(d)}if(c){this.addCls(c)}},doMapData:function(m,j,k){var i,l,n,h;for(i in m){n=m[i];l=this[i]();if(l){for(h in n){if(j&&l[h]&&j[n[h]]!==undefined&&j[n[h]]!==null){l[h](j[n[h]])}}}}if(k){k.updateData(j)}},updateRecord:function(m){if(!m){return}this._record=m;var k=this,i=k.dataview||this.getDataview(),j=i.prepareData(m.getData(true),i.getStore().indexOf(m),m),n=k.getItems(),l=n.first(),h=k.getDataMap();if(!l){return}if(h){this.doMapData(h,j,l)}k.fireEvent("updatedata",k,j)}},0,["dataitem"],["widget","component","container","dataitem"],{widget:true,component:true,container:true,dataitem:true},["widget.dataitem"],0,[Ext.dataview.component,"DataItem"],0));(Ext.cmd.derive("Ext.dataview.component.Container",Ext.Container,{constructor:function(){this.itemCache=[];Ext.Container.prototype.constructor.apply(this,arguments)},doInitialize:function(){this.innerElement.on({touchstart:"onItemTouchStart",touchend:"onItemTouchEnd",tap:"onItemTap",taphold:"onItemTapHold",touchmove:"onItemTouchMove",singletap:"onItemSingleTap",doubletap:"onItemDoubleTap",swipe:"onItemSwipe",delegate:"> .x-data-item",scope:this})},initialize:function(){Ext.Container.prototype.initialize.call(this);this.doInitialize()},onItemTouchStart:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);f.on({touchmove:"onItemTouchMove",scope:e,single:true});e.fireEvent("itemtouchstart",e,f,e.indexOf(f),g)},onItemTouchMove:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);e.fireEvent("itemtouchmove",e,f,e.indexOf(f),g)},onItemTouchEnd:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);f.un({touchmove:"onItemTouchMove",scope:e});e.fireEvent("itemtouchend",e,f,e.indexOf(f),g)},onItemTap:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);e.fireEvent("itemtap",e,f,e.indexOf(f),g)},onItemTapHold:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);e.fireEvent("itemtaphold",e,f,e.indexOf(f),g)},onItemSingleTap:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);e.fireEvent("itemsingletap",e,f,e.indexOf(f),g)},onItemDoubleTap:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);e.fireEvent("itemdoubletap",e,f,e.indexOf(f),g)},onItemSwipe:function(g){var e=this,h=g.currentTarget,f=Ext.getCmp(h.id);e.fireEvent("itemswipe",e,f,e.indexOf(f),g)},moveItemsToCache:function(p,o){var q=this,v=q.dataview,x=v.getMaxItemCache(),r=q.getViewItems(),s=q.itemCache,t=s.length,n=v.getPressedCls(),u=v.getSelectedCls(),w=o-p,i;for(;w>=0;w--){i=r[p+w];if(t!==x){q.remove(i,false);i.removeCls([n,u]);s.push(i);t++}else{i.destroy()}}if(q.getViewItems().length==0){this.dataview.showEmptyText()}},moveItemsFromCache:function(y){var p=this,v=p.dataview,o=v.getStore(),q=y.length,z=v.getDefaultType(),s=v.getItemConfig(),t=p.itemCache,u=t.length,r=[],x,i,w;if(q){v.hideEmptyText()}for(x=0;x<q;x++){y[x]._tmpIndex=o.indexOf(y[x])}Ext.Array.sort(y,function(b,a){return b._tmpIndex>a._tmpIndex?1:-1});for(x=0;x<q;x++){w=y[x];if(u){u--;i=t.pop();this.updateListItem(w,i)}else{i=p.getDataItemConfig(z,w,s)}i=this.insert(w._tmpIndex,i);delete w._tmpIndex}return r},getViewItems:function(){return this.getInnerItems()},updateListItem:function(d,c){if(c.updateRecord){if(c.getRecord()===d){c.updateRecord(d)}else{c.setRecord(d)}}},getDataItemConfig:function(h,f,j){var g=this.dataview,i={xtype:h,record:f,itemCls:g.getItemCls(),defaults:j,dataview:g};return Ext.merge(i,j)},doRemoveItemCls:function(f){var e=this.getViewItems(),g=e.length,h=0;for(;h<g;h++){e[h].removeCls(f)}},doAddItemCls:function(f){var e=this.getViewItems(),g=e.length,h=0;for(;h<g;h++){e[h].addCls(f)}},updateAtNewIndex:function(f,d,e){this.moveItemsToCache(f,f);this.moveItemsFromCache([e])},destroy:function(){var g=this,e=g.itemCache,h=e.length,f=0;for(;f<h;f++){e[f].destroy()}Ext.Container.prototype.destroy.call(this)}},1,0,["widget","component","container"],{widget:true,component:true,container:true},0,0,[Ext.dataview.component,"Container"],0));(Ext.cmd.derive("Ext.dataview.element.Container",Ext.Component,{doInitialize:function(){this.element.on({touchstart:"onItemTouchStart",touchend:"onItemTouchEnd",tap:"onItemTap",taphold:"onItemTapHold",touchmove:"onItemTouchMove",singletap:"onItemSingleTap",doubletap:"onItemDoubleTap",swipe:"onItemSwipe",delegate:"> div",scope:this})},initialize:function(){Ext.Component.prototype.initialize.call(this);this.doInitialize()},updateBaseCls:function(e,d){var f=this;Ext.Component.prototype.updateBaseCls.call(this,e+"-container",d)},onItemTouchStart:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);Ext.get(h).on({touchmove:"onItemTouchMove",scope:e,single:true});e.fireEvent("itemtouchstart",e,Ext.get(h),f,g)},onItemTouchEnd:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);Ext.get(h).un({touchmove:"onItemTouchMove",scope:e});e.fireEvent("itemtouchend",e,Ext.get(h),f,g)},onItemTouchMove:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);e.fireEvent("itemtouchmove",e,Ext.get(h),f,g)},onItemTap:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);e.fireEvent("itemtap",e,Ext.get(h),f,g)},onItemTapHold:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);e.fireEvent("itemtaphold",e,Ext.get(h),f,g)},onItemDoubleTap:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);e.fireEvent("itemdoubletap",e,Ext.get(h),f,g)},onItemSingleTap:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);e.fireEvent("itemsingletap",e,Ext.get(h),f,g)},onItemSwipe:function(g){var e=this,h=g.currentTarget,f=e.getViewItems().indexOf(h);e.fireEvent("itemswipe",e,Ext.get(h),f,g)},updateListItem:function(h,k){var l=this,i=l.dataview,n=i.getStore(),m=n.indexOf(h),j=i.prepareData(h.getData(true),m,h);k.innerHTML=this.renderItemTpl(m,j,n)},addListItem:function(p,r){var m=this,q=m.dataview,l=q.getStore(),t=q.prepareData(r.getData(true),p,r),s=m.element,k=s.dom.childNodes,n=k.length,o;o=Ext.Element.create(this.getItemElementConfig(p,t,l));if(!n||p==n){o.appendTo(s)}else{o.insertBefore(k[p])}},getItemElementConfig:function(k,i,l){var g=this.dataview,j=g.getItemCls(),h=g.getBaseCls()+"-item";if(j){h+=" "+j}return{cls:h,html:this.renderItemTpl(k,i,l)}},renderItemTpl:function(l,j,g){var h=this.dataview,i=h.getItemTpl(),k;g=g||h.getStore();k=g.getData().items;j.xcount=typeof j.xcount==="number"?j.xcount:g.getCount();j.xindex=typeof j.xindex==="number"?j.xindex:l;return i.apply(j,k,l+1,k.length)},doRemoveItemCls:function(f){var g=this.getViewItems(),h=g.length,e=0;for(;e<h;e++){Ext.fly(g[e]).removeCls(f)}},doAddItemCls:function(f){var g=this.getViewItems(),h=g.length,e=0;for(;e<h;e++){Ext.fly(g[e]).addCls(f)}},moveItemsToCache:function(i,j){var k=this,h=k.getViewItems(),g=j-i,l;for(;g>=0;g--){l=h[i+g];Ext.get(l).destroy()}if(k.getViewItems().length==0){this.dataview.showEmptyText()}},moveItemsFromCache:function(m){var j=this,h=j.dataview,n=h.getStore(),k=m.length,l,i;if(k){h.hideEmptyText()}for(l=0;l<k;l++){m[l]._tmpIndex=n.indexOf(m[l])}Ext.Array.sort(m,function(a,b){return a._tmpIndex>b._tmpIndex?1:-1});for(l=0;l<k;l++){i=m[l];j.addListItem(i._tmpIndex,i);delete i._tmpIndex}},getViewItems:function(){return Array.prototype.slice.call(this.element.dom.childNodes)},updateAtNewIndex:function(f,d,e){this.moveItemsToCache(f,f);this.moveItemsFromCache([e])},destroy:function(){var f=this.getViewItems(),d=f.length,e=0;for(;e<d;e++){Ext.get(f[e]).destroy()}Ext.Component.prototype.destroy.call(this)}},0,0,["widget","component"],{widget:true,component:true},0,0,[Ext.dataview.element,"Container"],0));(Ext.cmd.derive("Ext.dataview.DataView",Ext.Container,{alternateClassName:"Ext.DataView",config:{store:null,data:null,baseCls:"x-dataview",emptyText:null,deferEmptyText:true,itemTpl:"<div>{text}</div>",pressedCls:"x-item-pressed",itemCls:null,selectedCls:"x-item-selected",triggerEvent:"itemtap",triggerCtEvent:"tap",deselectOnContainerClick:true,scrollable:true,inline:null,pressedDelay:100,loadingText:"Loading...",useComponents:null,itemConfig:{},maxItemCache:20,defaultType:"dataitem",scrollToTopOnRefresh:true},defaultBindProperty:"store",constructor:function(d){var c=this;c.hasLoadedStore=false;c.mixins.selectable.constructor.apply(c,arguments);c.indexOffset=0;Ext.Container.prototype.constructor.apply(this,arguments);c.initSelectable()},updateItemCls:function(f,d){var e=this.container;if(e){if(d){e.doRemoveItemCls(d)}if(f){e.doAddItemCls(f)}}},storeEventHooks:{beforeload:"onBeforeLoad",groupchange:"onStoreGroupChange",load:"onLoad",refresh:"refresh",add:"onStoreAdd",remove:"onStoreRemove",clear:"onStoreClear",update:"onStoreUpdate"},initialize:function(){Ext.Container.prototype.initialize.call(this);var d=this,e,f=d.getTriggerEvent();d.on(d.getTriggerCtEvent(),d.onContainerTrigger,d);e=d.container=this.add(new Ext.dataview[d.getUseComponents()?"component":"element"].Container({baseCls:this.getBaseCls()}));e.dataview=d;if(f){d.on(f,d.onItemTrigger,d)}e.on({itemtouchstart:"onItemTouchStart",itemtouchend:"onItemTouchEnd",itemtap:"onItemTap",itemtaphold:"onItemTapHold",itemtouchmove:"onItemTouchMove",itemsingletap:"onItemSingleTap",itemdoubletap:"onItemDoubleTap",itemswipe:"onItemSwipe",scope:d});if(d.getStore()){if(d.isPainted()){d.refresh()}else{d.on({painted:"refresh",single:true})}}},applyInline:function(b){if(Ext.isObject(b)){b=Ext.apply({},b)}return b},updateInline:function(g,h){var e=this,f=e.getBaseCls();if(h){e.removeCls([f+"-inlineblock",f+"-nowrap"])}if(g){e.addCls(f+"-inlineblock");if(Ext.isObject(g)&&g.wrap===false){e.addCls(f+"-nowrap")}else{e.removeCls(f+"-nowrap")}}},prepareData:function(f,d,e){return f},onContainerTrigger:function(c){var d=this;if(c.target!=d.element.dom){return}if(d.getDeselectOnContainerClick()&&d.getStore()){d.deselectAll()}},onItemTrigger:function(c,d){if(!this.destroyed){this.selectWithEvent(this.getStore().getAt(d))}},doAddPressedCls:function(e){var f=this,d=f.getItemAt(f.getStore().indexOf(e));if(Ext.isElement(d)){d=Ext.get(d)}if(d){if(d.isComponent){d.renderElement.addCls(f.getPressedCls())}else{d.addCls(f.getPressedCls())}}},onItemTouchStart:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);l.fireAction("itemtouchstart",[l,m,j,i,k],"doItemTouchStart")},doItemTouchStart:function(j,f,h,g){var i=j.getPressedDelay();if(g){if(i>0){j.pressedTimeout=Ext.defer(j.doAddPressedCls,i,j,[g])}else{j.doAddPressedCls(g)}}},onItemTouchEnd:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);if(this.hasOwnProperty("pressedTimeout")){clearTimeout(this.pressedTimeout);delete this.pressedTimeout}if(i&&j){if(j.isComponent){j.renderElement.removeCls(l.getPressedCls())}else{j.removeCls(l.getPressedCls())}}l.fireEvent("itemtouchend",l,m,j,i,k)},onItemTouchMove:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);if(l.hasOwnProperty("pressedTimeout")){clearTimeout(l.pressedTimeout);delete l.pressedTimeout}if(i&&j){if(j.isComponent){j.renderElement.removeCls(l.getPressedCls())}else{j.removeCls(l.getPressedCls())}}l.fireEvent("itemtouchmove",l,m,j,i,k)},onItemTap:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);l.fireEvent("itemtap",l,m,j,i,k)},onItemTapHold:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);l.fireEvent("itemtaphold",l,m,j,i,k)},onItemSingleTap:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);l.fireEvent("itemsingletap",l,m,j,i,k)},onItemDoubleTap:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);l.fireEvent("itemdoubletap",l,m,j,i,k)},onItemSwipe:function(e,j,m,k){var l=this,n=l.getStore(),i=n&&n.getAt(m);l.fireEvent("itemswipe",l,m,j,i,k)},onItemSelect:function(e,d){var f=this;if(d){f.doItemSelect(f,e)}else{f.fireAction("select",[f,e],"doItemSelect")}},doItemSelect:function(f,e){if(f.container&&!f.destroyed){var d=f.getItemAt(f.getStore().indexOf(e));if(Ext.isElement(d)){d=Ext.get(d)}if(d){if(d.isComponent){d.renderElement.removeCls(f.getPressedCls());d.renderElement.addCls(f.getSelectedCls())}else{d.removeCls(f.getPressedCls());d.addCls(f.getSelectedCls())}}}},onItemDeselect:function(e,d){var f=this;if(f.container&&!f.destroyed){if(d){f.doItemDeselect(f,e)}else{f.fireAction("deselect",[f,e,d],"doItemDeselect")}}},doItemDeselect:function(f,e){var d=f.getItemAt(f.getStore().indexOf(e));if(Ext.isElement(d)){d=Ext.get(d)}if(d){if(d.isComponent){d.renderElement.removeCls([f.getPressedCls(),f.getSelectedCls()])}else{d.removeCls([f.getPressedCls(),f.getSelectedCls()])}}},updateData:function(c){var d=this.getStore();if(!d){this.setStore(Ext.create("Ext.data.Store",{data:c,autoDestroy:true}))}else{d.add(c)}},applyStore:function(f){var i=this,h=Ext.apply({},i.storeEventHooks,{scope:i}),j,g;if(f){f=Ext.data.StoreManager.lookup(f);if(f&&Ext.isObject(f)&&f.isStore){f.on(h);j=f.getProxy();if(j){g=j.getReader();if(g){g.on("exception","handleException",this)}}}}return f},handleException:function(){this.setMasked(false)},updateStore:function(g,j){var k=this,i=Ext.apply({},k.storeEventHooks,{scope:k}),l,h;if(j&&Ext.isObject(j)&&j.isStore){j.un(i);if(!k.destroyed){k.onStoreClear()}if(j.getAutoDestroy()){j.destroy()}else{l=j.getProxy();if(l){h=l.getReader();if(h){h.un("exception","handleException",this)}}}}if(g){if(g.isLoaded()){this.hasLoadedStore=true}if(g.isLoading()){k.onBeforeLoad()}if(k.container){k.refresh()}}},onBeforeLoad:function(){var c=this,d=c.getLoadingText();if(d&&c.isPainted()){c.setMasked({xtype:"loadmask",message:d})}c.hideEmptyText()},updateEmptyText:function(h,g){var e=this,f;if(g&&e.emptyTextCmp){e.remove(e.emptyTextCmp,true);delete e.emptyTextCmp}if(h){e.emptyTextCmp=e.add({xtype:"component",cls:e.getBaseCls()+"-emptytext",html:h,hidden:true});f=e.getStore();if(f&&e.hasLoadedStore&&!f.getCount()){e.showEmptyText()}}},onLoad:function(b){this.hasLoadedStore=true;this.setMasked(false);if(!b.getCount()){this.showEmptyText()}},refresh:function(){var c=this,d=c.container;if(!c.getStore()){if(!c.hasLoadedStore&&!c.getDeferEmptyText()){c.showEmptyText()}return}if(c.initialized&&d){c.fireAction("refresh",[c],"doRefresh")}},applyItemTpl:function(b){return(Ext.isObject(b)&&b.isTemplate)?b:new Ext.XTemplate(b)},onAfterRender:function(){var b=this;b.updateStore(b.getStore())},getItemAt:function(b){return this.getViewItems()[b-this.indexOffset]},getItemIndex:function(c){var d=this.getViewItems().indexOf(c);return(d===-1)?d:this.indexOffset+d},getViewItems:function(){return this.container.getViewItems()},doRefresh:function(u){var B=u.container,r=u.getStore(),A=r.getRange(),v=u.getViewItems(),t=A.length,i=v.length,z=t-i,w=u.getScrollable(),y,q;if(this.getScrollToTopOnRefresh()&&w){w.scrollTo(0,0)}if(t<1){u.onStoreClear();return}else{u.hideEmptyText()}if(z<0){B.moveItemsToCache(i+z,i-1);v=u.getViewItems();i=v.length}else{if(z>0){B.moveItemsFromCache(r.getRange(i))}}for(y=0;y<i;y++){q=v[y];B.updateListItem(A[y],q)}if(this.hasSelection()){var s=this.getSelection(),p=this.getSelectionCount(),x;for(y=0;y<p;y++){x=s[y];this.doItemSelect(this,x)}}},showEmptyText:function(){if(this.getEmptyText()&&(this.hasLoadedStore||!this.getDeferEmptyText())){this.emptyTextCmp.show()}},hideEmptyText:function(){if(this.getEmptyText()){this.emptyTextCmp.hide()}},destroy:function(){var d=this.getStore(),f=(d&&d.getProxy()),e=(f&&f.getReader());if(e){e.clearListeners()}Ext.Container.prototype.destroy.call(this);this.setStore(null)},onStoreClear:function(){var f=this,e=f.container,d=f.getViewItems();e.moveItemsToCache(0,d.length-1);this.showEmptyText()},onStoreGroupChange:Ext.emptyFn,onStoreAdd:function(c,d){if(d){this.hideEmptyText();this.container.moveItemsFromCache(d)}},onStoreRemove:function(l,g,i){var h=this.container,j=g.length,k;for(k=0;k<j;k++){h.moveItemsToCache(i[k],i[k])}},onStoreUpdate:function(p,i,o,l,k){var m=this,j=m.container,n;if(k.indexChanged){j.updateAtNewIndex(k.oldIndex,k.newIndex,i);if(m.isSelected(i)){m.doItemSelect(m,i)}}else{n=m.getViewItems()[m.getStore().indexOf(i)];if(n){j.updateListItem(i,n)}}}},1,["dataview"],["widget","component","container","dataview"],{widget:true,component:true,container:true,dataview:true},["widget.dataview"],[[Ext.mixin.Selectable.prototype.mixinId||Ext.mixin.Selectable.$className,Ext.mixin.Selectable]],[Ext.dataview,"DataView",Ext,"DataView"],0));(Ext.cmd.derive("Ext.panel.Header",Ext.Container,{isPanelHeader:true,baseCls:"x-panel-header",config:{glyph:null,icon:null,iconAlign:null,iconCls:null,title:null,titleAlign:null,layout:{type:"hbox",align:"center"}},add:function(c){var m=this,q=Ext.isArray(c),p=q?c.slice(0):[c],o=m.getItems(),t=o.length,s=p.length,n,r,s,i;for(r=0;r<s;++r){p[r]=m.factoryItem(p[r])}Ext.Array.sort(p,m.sortByWeight);if(t){o=o.items;i=0;for(r=0;r<s;++r){n=p[r];for(;i<t;++i){if(m.sortByWeight(n,o[i])<0){break}}m.insert(i,n);++i;++t}}else{Ext.Container.prototype.add.call(this,p)}return q?p:c},applyTitle:function(f,e){var d=e;if(d){if(!f||typeof f==="string"){d.setText(f||"")}else{if(f){d.setConfig(f)}}}else{d=Ext.create(this.createTitle(f))}return d},createTitle:function(c){var d={xtype:"paneltitle",flex:1};if(c){if(typeof c==="string"){c={text:c}}Ext.merge(d,c)}return d},createTools:function(k,l){var i=k&&k.length,h=i&&[],j,c;l=l||null;for(c=0;c<i;++c){j=k[c];if(typeof j==="string"){j={xtype:"paneltool",type:j,toolOwner:l}}else{if(j.isInstance){if(l){j.setToolOwner(l)}}else{j=Ext.apply({xtype:"paneltool",toolOwner:l},j)}}h[c]=j}return h},updateGlyph:function(b){this.ensureTitle().setGlyph(b)},updateIcon:function(b){this.ensureTitle().setIcon(b)},updateIconAlign:function(c,d){this.ensureTitle().setIconAlign(c)},updateIconCls:function(b){this.ensureTitle().setIconCls(b)},updateTitle:function(c,d){if(d){d.setConfig(c)}else{this.add(c)}},updateTitleAlign:function(c,d){this.ensureTitle().setTextAlign(c)},updateUi:function(c,d){Ext.Container.prototype.updateUi.call(this,c,d);this.ensureTitle().setUi(c)},privates:{clearTools:function(){var e=this.getItems().items,f,c;for(c=e.length;c-->0;){f=e[c];if(f.isPanelTool){this.remove(f)}}},ensureTitle:function(){var d=this,c=d.getTitle();if(!c){d.setTitle("");c=d.getTitle()}return c},sortByWeight:function(c,d){return(c.weight||0)-(d.weight||0)}}},0,["panelheader"],["widget","component","container","panelheader"],{widget:true,component:true,container:true,panelheader:true},["widget.panelheader"],0,[Ext.panel,"Header"],0));(Ext.cmd.derive("Ext.panel.Title",Ext.Component,{isPanelTitle:true,_textAlign:"left",_iconAlign:"left",_text:"&#160;",cachedConfig:{textAlign:null,text:null,glyph:null,icon:null,iconAlign:null,iconCls:null},weight:-10,element:{unselectable:"on",reference:"element",cls:"x-panel-title-align-left",children:[{reference:"iconElement",style:"display:none",cls:"x-panel-title-icon x-panel-title-icon-left"},{reference:"textElement",cls:"x-panel-title-text"}]},_textAlignClasses:{left:"x-panel-title-align-left",center:"x-panel-title-align-center",right:"x-panel-title-align-right"},_iconAlignClasses:{top:"x-panel-title-icon-top",right:"x-panel-title-icon-right",bottom:"x-panel-title-icon-bottom",left:"x-panel-title-icon-left"},baseCls:"x-panel-title",_titleSuffix:"-title",_glyphCls:"x-panel-title-glyph",_verticalCls:"x-panel-title-vertical",applyText:function(b){return b||"&#160;"},updateGlyph:function(k,n){k=k||0;var l=this,j=l._glyphCls,h=l.iconElement,i,m;l.glyph=k;l._syncIconVisibility();if(typeof k==="string"){m=k.split("@");k=m[0];i=m[1]||Ext._glyphFontFamily}if(!k){h.dom.innerHTML="";h.removeCls(j)}else{h.dom.innerHTML="&#"+k+";";h.addCls(j)}if(i){h.setStyle("font-family",i)}},updateIcon:function(e,g){var h=this,f;h._syncIconVisibility();f=h.iconElement;f.setStyle("background-image",e?"url("+e+")":"")},updateIconAlign:function(i,k){var l=this,h=l.iconElement,j=l._iconAlignClasses,g=l.el;if(k){h.removeCls(j[k])}h.addCls(j[i]);if(i==="top"||i==="left"){g.insertFirst(h)}else{g.appendChild(h)}if(i==="top"||i==="bottom"){g.addCls(l._verticalCls)}else{g.removeCls(l._verticalCls)}},updateIconCls:function(d,f){var e=this.iconElement;this._syncIconVisibility();if(f){e.removeCls(f)}if(d){e.addCls(d)}},updateText:function(b){this.textElement.setHtml(b)},updateTextAlign:function(g,e){var f=this,h=f._textAlignClasses;if(e){f.removeCls(h[e])}f.addCls(h[g])},privates:{_getVerticalAdjustDirection:function(){return"left"},_hasIcon:function(){return !!(this.getIcon()||this.getIconCls()||this.getGlyph())},_syncIconVisibility:function(){this.iconElement.setDisplayed(this._hasIcon())}}},0,["paneltitle"],["widget","component","paneltitle"],{widget:true,component:true,paneltitle:true},["widget.paneltitle"],0,[Ext.panel,"Title"],0));(Ext.cmd.derive("Ext.panel.Tool",Ext.Component,{isPanelTool:true,baseCls:"x-tool",disabledCls:"x-tool-disabled",toolPressedCls:"x-tool-pressed",toolOverCls:"x-tool-over",element:{reference:"element",listeners:{click:"onClick",mousedown:"onMouseDown",mouseover:"onMouseOver",mouseout:"onMouseOut"},children:[{reference:"toolElement"}]},handler:null,scope:null,toolOwner:null,config:{iconCls:null,type:null},stopEvent:true,weight:10,updateIconCls:function(f,d){var e=this.toolElement;e.replaceCls(d,f)},updateType:function(h,g){var e=this.getBaseCls(),f=this.toolElement;f.replaceCls(g&&(e+"-"+g),h&&(e+"-"+h))},privates:{onClick:function(g,h){var e=this,f=e.handler||e.callback;if(e.disabled){return false}if(g.type!=="keydown"){e.el.removeCls(e.toolPressedCls+" "+e.toolOverCls)}if(e.stopEvent!==false){g.stopEvent()}if(f){Ext.callback(f,e.scope,[e.toolOwner||e.parent,e,g],0,e)}e.fireEvent("click",e,g,e.toolOwner||e.ownerCt);return true},onMouseDown:function(b){b.preventDefault();if(this.disabled){return false}this.el.addCls(this.toolPressedCls)},onMouseOver:function(){if(this.disabled){return false}this.el.addCls(this.toolOverCls)},onMouseOut:function(){this.el.removeCls(this.toolOverCls)}}},0,["paneltool","tool"],["widget","component","paneltool","tool"],{widget:true,component:true,paneltool:true,tool:true},["widget.paneltool","widget.tool"],0,[Ext.panel,"Tool"],0));(Ext.cmd.derive("Ext.tab.Tab",Ext.Button,{alternateClassName:"Ext.Tab",isTab:true,config:{baseCls:"x-tab",pressedCls:"x-tab-pressed",activeCls:"x-tab-active",active:false,title:"&nbsp;"},updateIconCls:function(c,d){Ext.Button.prototype.updateIconCls.call(this,c,d);if(d){this.removeCls("x-tab-icon")}if(c){this.addCls("x-tab-icon")}},updateTitle:function(b){this.setText(b)},updateActive:function(f,d){var e=this.getActiveCls();if(f&&!d){this.element.addCls(e);this.fireEvent("activate",this)}else{if(d){this.element.removeCls(e);this.fireEvent("deactivate",this)}}}},0,["tab"],["widget","component","button","tab"],{widget:true,component:true,button:true,tab:true},["widget.tab"],0,[Ext.tab,"Tab",Ext,"Tab"],function(){this.override({activate:function(){this.setActive(true)},deactivate:function(){this.setActive(false)}})}));(Ext.cmd.derive("Ext.tab.Bar",Ext.Toolbar,{alternateClassName:"Ext.TabBar",config:{baseCls:"x-tabbar",defaultType:"tab",defaultTabUI:null,layout:{type:"hbox",align:"middle"}},eventedConfig:{activeTab:null},initialize:function(){var b=this;Ext.Toolbar.prototype.initialize.call(this);b.on({tap:"onTabTap",delegate:"> tab",scope:b})},onTabTap:function(b){this.setActiveTab(b)},applyActiveTab:function(d,f){if(!d&&d!==0){return}var e=this.parseActiveTab(d);if(!e){return}return e},updateDocked:function(f){var h=this.getLayout(),g=this.getInitialConfig(),e;if(!g.layout||!g.layout.pack){e=(f=="bottom")?"center":"left";if(h.isLayout){h.setPack(e)}else{h.pack=(h&&h.pack)?h.pack:e}}Ext.Toolbar.prototype.updateDocked.apply(this,arguments)},updateActiveTab:function(c,d){if(c){c.setActive(true)}if(d&&d.parent){d.setActive(false)}},parseActiveTab:function(b){if(typeof b=="number"){return this.getItems().items[b]}else{if(typeof b=="string"){b=Ext.getCmp(b)}}return b},onItemAdd:function(f,e){var d=this.getDefaultTabUI();if(d&&f.isTab&&(f.getUi()==null)){f.setUi(d)}Ext.Toolbar.prototype.onItemAdd.call(this,f,e)}},0,["tabbar"],["widget","component","container","toolbar","tabbar"],{widget:true,component:true,container:true,toolbar:true,tabbar:true},["widget.tabbar"],0,[Ext.tab,"Bar",Ext,"TabBar"],0));(Ext.cmd.derive("Ext.tab.Panel",Ext.Container,{alternateClassName:"Ext.TabPanel",config:{tabBar:true,tabBarPosition:"top",layout:{type:"card",animation:{type:"slide",direction:"left"}},cls:"x-tabpanel"},initialize:function(){Ext.Container.prototype.initialize.call(this);this.on({beforeactivetabchange:"doTabChange",delegate:"> tabbar",scope:this});this.on({disabledchange:"onItemDisabledChange",delegate:"> component",scope:this})},applyScrollable:function(){return false},updateUi:function(d,c){Ext.Container.prototype.updateUi.apply(this,arguments);if(this.initialized){this.getTabBar().setUi(d)}},updateActiveItem:function(q,k){if(q){var o=this.getInnerItems(),n=o.indexOf(k),l=o.indexOf(q),p=n>l,r=this.getLayout().getAnimation(),s=this.getTabBar(),m=s.parseActiveTab(n),t=s.parseActiveTab(l);if(r&&r.setReverse){r.setReverse(p)}Ext.Container.prototype.updateActiveItem.apply(this,arguments);if(l!=-1){this.forcedChange=true;s.setActiveTab(l);this.forcedChange=false;if(m){m.setActive(false)}if(t){t.setActive(true)}}}},doTabChange:function(f,g){var e=this.getActiveItem(),h;this.setActiveItem(f.indexOf(g));h=this.getActiveItem();return this.forcedChange||e!==h},applyTabBar:function(b){if(b===true){b={}}if(b){Ext.applyIf(b,{ui:this.getUi(),docked:this.getTabBarPosition()})}return Ext.factory(b,Ext.tab.Bar,this.getTabBar())},updateTabBar:function(b){if(b){this.add(b);this.setTabBarPosition(b.getDocked())}},updateTabBarPosition:function(c){var d=this.getTabBar();if(d){d.setDocked(c)}},onItemAdd:function(D){var w=this;if(!D.isInnerItem()){return Ext.Container.prototype.onItemAdd.apply(this,arguments)}var F=w.getTabBar(),s=D.getInitialConfig(),E=s.tab||{},B=(D.getTitle)?D.getTitle():s.title,y=(D.getIconCls)?D.getIconCls():s.iconCls,x=(D.getHidden)?D.getHidden():s.hidden,t=(D.getDisabled)?D.getDisabled():s.disabled,r=(D.getBadgeText)?D.getBadgeText():s.badgeText,G=w.getInnerItems(),z=G.indexOf(D),v=F.getItems(),H=F.getActiveTab(),u=(v.length>=G.length)&&v.getAt(z),A=D.isPanel&&D.getHeader(),C;if(B&&!E.title){E.title=B}if(y&&!E.iconCls){E.iconCls=y}if(x&&!E.hidden){E.hidden=x}if(t&&!E.disabled){E.disabled=t}if(r&&!E.badgeText){E.badgeText=r}C=Ext.factory(E,Ext.tab.Tab,u);if(!u){F.insert(z,C)}D.tab=C;if(A){A.setHidden(true)}Ext.Container.prototype.onItemAdd.apply(this,arguments);if(!H&&H!==0){F.setActiveTab(F.getActiveItem())}},onItemDisabledChange:function(d,c){if(d&&d.tab){d.tab.setDisabled(c)}},onItemRemove:function(c,d){this.getTabBar().remove(c.tab,this.getAutoDestroy());Ext.Container.prototype.onItemRemove.apply(this,arguments)}},0,["tabpanel"],["widget","component","container","tabpanel"],{widget:true,component:true,container:true,tabpanel:true},["widget.tabpanel"],0,[Ext.tab,"Panel",Ext,"TabPanel"],0));(Ext.cmd.derive("Ext.tip.ToolTip",Ext.Base,{},0,0,0,0,0,0,[Ext.tip,"ToolTip"],0));(Ext.cmd.derive("Ext.draw.ContainerBase",Ext.Container,{constructor:function(b){Ext.Container.prototype.constructor.call(this,b);this.initAnimator()},initialize:function(){Ext.Container.prototype.initialize.call(this);this.element.on("resize","onBodyResize",this)},getElementConfig:function(){return{reference:"element",className:"x-container",children:[{reference:"innerElement",className:"x-inner"}]}},addElementListener:function(){var b=this.element;b.on.apply(b,arguments)},removeElementListener:function(){var b=this.element;b.un.apply(b,arguments)},preview:function(){Ext.Viewport.add({xtype:"panel",layout:"fit",modal:true,width:"90%",height:"90%",hideOnMaskTap:true,centered:true,scrollable:false,items:{xtype:"image",mode:"img",style:{overflow:"hidden"},src:this.getImage().data},listeners:{hide:function(){Ext.Viewport.remove(this)}}}).show()}},1,0,["widget","component","container"],{widget:true,component:true,container:true},0,0,[Ext.draw,"ContainerBase"],0));(Ext.cmd.derive("Ext.draw.SurfaceBase",Ext.Component,{getOwnerBody:function(){return this.getRefOwner().bodyElement}},0,0,["widget","component"],{widget:true,component:true},0,0,[Ext.draw,"SurfaceBase"],0));(Ext.cmd.derive("Ext.draw.Color",Ext.Base,{statics:{colorToHexRe:/(.*?)rgb\((\d+),\s*(\d+),\s*(\d+)\)/,rgbToHexRe:/\s*rgb\((\d+),\s*(\d+),\s*(\d+)\)/,rgbaToHexRe:/\s*rgba\((\d+),\s*(\d+),\s*(\d+),\s*([\.\d]+)\)/,hexRe:/\s*#([0-9a-fA-F][0-9a-fA-F]?)([0-9a-fA-F][0-9a-fA-F]?)([0-9a-fA-F][0-9a-fA-F]?)\s*/,NONE:"none",RGBA_NONE:"rgba(0, 0, 0, 0)"},isColor:true,lightnessFactor:0.2,constructor:function(g,e,f,h){this.setRGB(g,e,f,h)},setRGB:function(h,j,g,i){var f=this;f.r=Math.min(255,Math.max(0,h));f.g=Math.min(255,Math.max(0,j));f.b=Math.min(255,Math.max(0,g));if(i===undefined){f.a=1}else{f.a=Math.min(1,Math.max(0,i))}},getGrayscale:function(){return this.r*0.3+this.g*0.59+this.b*0.11},getHSL:function(){var o=this,t=o.r/255,p=o.g/255,l=o.b/255,h=Math.max(t,p,l),r=Math.min(t,p,l),g=h-r,q,b=0,s=0.5*(h+r);if(r!==h){b=(s<=0.5)?g/(h+r):g/(2-h-r);if(t===h){q=60*(p-l)/g}else{if(p===h){q=120+60*(l-t)/g}else{q=240+60*(t-p)/g}}if(q<0){q+=360}if(q>=360){q-=360}}return[q,b,s]},getHSV:function(){var o=this,t=o.r/255,p=o.g/255,n=o.b/255,h=Math.max(t,p,n),r=Math.min(t,p,n),s=h-r,q,b=0,g=h;if(r!=h){b=g?s/g:0;if(t===h){q=60*(p-n)/s}else{if(p===h){q=60*(n-t)/s+120}else{q=60*(t-p)/s+240}}if(q<0){q+=360}if(q>=360){q-=360}}return[q,b,g]},setHSL:function(m,n,o){var l=this,p=Math.abs,k,c,h;m=(m%360+360)%360;n=n>1?1:n<0?0:n;o=o>1?1:o<0?0:o;if(n===0||m===null){o*=255;l.setRGB(o,o,o)}else{m/=60;k=n*(1-p(2*o-1));c=k*(1-p(m%2-1));h=o-k/2;h*=255;k*=255;c*=255;switch(Math.floor(m)){case 0:l.setRGB(k+h,c+h,h);break;case 1:l.setRGB(c+h,k+h,h);break;case 2:l.setRGB(h,k+h,c+h);break;case 3:l.setRGB(h,c+h,k+h);break;case 4:l.setRGB(c+h,h,k+h);break;case 5:l.setRGB(k+h,h,c+h);break}}return l},setHSV:function(l,m,n){var k=this,j,c,h;l=(l%360+360)%360;m=m>1?1:m<0?0:m;n=n>1?1:n<0?0:n;if(m===0||l===null){n*=255;k.setRGB(n,n,n)}else{l/=60;j=n*m;c=j*(1-Math.abs(l%2-1));h=n-j;h*=255;j*=255;c*=255;switch(Math.floor(l)){case 0:k.setRGB(j+h,c+h,h);break;case 1:k.setRGB(c+h,j+h,h);break;case 2:k.setRGB(h,j+h,c+h);break;case 3:k.setRGB(h,c+h,j+h);break;case 4:k.setRGB(c+h,h,j+h);break;case 5:k.setRGB(j+h,h,c+h);break}}return k},createLighter:function(c){if(!c&&c!==0){c=this.lightnessFactor}var d=this.getHSL();d[2]=Ext.Number.constrain(d[2]+c,0,1);return Ext.draw.Color.fromHSL(d[0],d[1],d[2])},createDarker:function(b){if(!b&&b!==0){b=this.lightnessFactor}return this.createLighter(-b)},toString:function(){var g=this,j=Math.round;if(g.a===1){var h=j(g.r).toString(16),i=j(g.g).toString(16),b=j(g.b).toString(16);h=(h.length===1)?"0"+h:h;i=(i.length===1)?"0"+i:i;b=(b.length===1)?"0"+b:b;return["#",h,i,b].join("")}else{return"rgba("+[j(g.r),j(g.g),j(g.b),g.a===0?0:g.a.toFixed(15)].join(", ")+")"}},toHex:function(g){if(Ext.isArray(g)){g=g[0]}if(!Ext.isString(g)){return""}if(g.substr(0,1)==="#"){return g}var j=Ext.draw.Color.colorToHexRe.exec(g);if(Ext.isArray(j)){var i=parseInt(j[2],10),k=parseInt(j[3],10),h=parseInt(j[4],10),l=h|(k<<8)|(i<<16);return j[1]+"#"+("000000"+l.toString(16)).slice(-6)}else{return""}},setFromString:function(a){var l,g,k,n,m=1,b=parseInt;if(a===Ext.draw.Color.NONE){this.r=this.g=this.b=this.a=0;return this}if((a.length===4||a.length===7)&&a.substr(0,1)==="#"){l=a.match(Ext.draw.Color.hexRe);if(l){g=b(l[1],16)>>0;k=b(l[2],16)>>0;n=b(l[3],16)>>0;if(a.length===4){g+=(g*16);k+=(k*16);n+=(n*16)}}}else{if((l=a.match(Ext.draw.Color.rgbToHexRe))){g=+l[1];k=+l[2];n=+l[3]}else{if((l=a.match(Ext.draw.Color.rgbaToHexRe))){g=+l[1];k=+l[2];n=+l[3];m=+l[4]}else{if(Ext.draw.Color.ColorList.hasOwnProperty(a.toLowerCase())){return this.setFromString(Ext.draw.Color.ColorList[a.toLowerCase()])}}}}if(typeof g==="undefined"){return this}this.r=g;this.g=k;this.b=n;this.a=m;return this}},3,0,0,0,0,0,[Ext.draw,"Color"],function(){var b=new this();this.addStatics({fly:function(a,g,i,h){switch(arguments.length){case 1:b.setFromString(a);break;case 3:case 4:b.setRGB(a,g,i,h);break;default:return null}return b},ColorList:{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",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",lightgray:"#d3d3d3",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",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",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},fromHSL:function(e,f,a){return(new this(0,0,0,0)).setHSL(e,f,a)},fromHSV:function(e,f,a){return(new this(0,0,0,0)).setHSL(e,f,a)},fromString:function(a){return(new this(0,0,0,0)).setFromString(a)},create:function(a){if(a instanceof this){return a}else{if(Ext.isArray(a)){return new Ext.draw.Color(a[0],a[1],a[2],a[3])}else{if(Ext.isString(a)){return Ext.draw.Color.fromString(a)}else{if(arguments.length>2){return new Ext.draw.Color(arguments[0],arguments[1],arguments[2],arguments[3])}else{return new Ext.draw.Color(0,0,0,0)}}}}}})}));(Ext.cmd.derive("Ext.draw.sprite.AnimationParser",Ext.Base,function(){function b(e,f,a){return e+(f-e)*a}return{singleton:true,attributeRe:/^url\(#([a-zA-Z\-]+)\)$/,color:{parseInitial:function(d,a){if(Ext.isString(d)){d=Ext.draw.Color.create(d)}if(Ext.isString(a)){a=Ext.draw.Color.create(a)}if((d instanceof Ext.draw.Color)&&(a instanceof Ext.draw.Color)){return[[d.r,d.g,d.b,d.a],[a.r,a.g,a.b,a.a]]}else{return[d||a,a||d]}},compute:function(e,f,a){if(!Ext.isArray(e)||!Ext.isArray(f)){return f||e}else{return[b(e[0],f[0],a),b(e[1],f[1],a),b(e[2],f[2],a),b(e[3],f[3],a)]}},serve:function(d){var a=Ext.draw.Color.fly(d[0],d[1],d[2],d[3]);return a.toString()}},number:{parse:function(a){return a===null?null:+a},compute:function(e,f,a){if(!Ext.isNumber(e)||!Ext.isNumber(f)){return f||e}else{return b(e,f,a)}}},angle:{parseInitial:function(d,a){if(a-d>Math.PI){a-=Math.PI*2}else{if(a-d<-Math.PI){a+=Math.PI*2}}return[d,a]},compute:function(e,f,a){if(!Ext.isNumber(e)||!Ext.isNumber(f)){return f||e}else{return b(e,f,a)}}},path:{parseInitial:function(q,j){var y=q.toStripes(),i=j.toStripes(),w,x,s=y.length,a=i.length,t,v,z,u=i[a-1],r=[u[u.length-2],u[u.length-1]];for(w=s;w<a;w++){y.push(y[s-1].slice(0))}for(w=a;w<s;w++){i.push(r.slice(0))}z=y.length;i.path=j;i.temp=new Ext.draw.Path();for(w=0;w<z;w++){t=y[w];v=i[w];s=t.length;a=v.length;i.temp.commands.push("M");for(x=a;x<s;x+=6){v.push(r[0],r[1],r[0],r[1],r[0],r[1])}u=i[i.length-1];r=[u[u.length-2],u[u.length-1]];for(x=s;x<a;x+=6){t.push(r[0],r[1],r[0],r[1],r[0],r[1])}for(w=0;w<v.length;w++){v[w]-=t[w]}for(w=2;w<v.length;w+=6){i.temp.commands.push("C")}}return[y,i]},compute:function(u,j,i){if(i>=1){return j.path}var s=0,r=u.length,t=0,v,o,p,a=j.temp.params,q=0;for(;s<r;s++){o=u[s];p=j[s];v=o.length;for(t=0;t<v;t++){a[q++]=p[t]*i+o[t]}}return j.temp}},data:{compute:function(o,n,i,p){var a=o.length-1,t=n.length-1,q=Math.max(a,t),r,f,s;if(!p||p===o){p=[]}p.length=q+1;for(s=0;s<=q;s++){r=o[Math.min(s,a)];f=n[Math.min(s,t)];if(Ext.isNumber(r)){if(!Ext.isNumber(f)){f=0}p[s]=(f-r)*i+r}else{p[s]=f}}return p}},text:{compute:function(e,f,a){return e.substr(0,Math.round(e.length*(1-a)))+f.substr(Math.round(f.length*(1-a)))}},limited:"number",limited01:"number"}},0,0,0,0,0,0,[Ext.draw.sprite,"AnimationParser"],0));(function(){if(!Ext.global.Float32Array){var b=function(e){if(typeof e==="number"){this.length=e}else{if("length" in e){this.length=e.length;for(var f=0,a=e.length;f<a;f++){this[f]=+e[f]}}}};b.prototype=[];Ext.global.Float32Array=b}})();(Ext.cmd.derive("Ext.draw.Draw",Ext.Base,{singleton:true,radian:Math.PI/180,pi2:Math.PI*2,reflectFn:function(a){return a},rad:function(b){return(b%360)*this.radian},degrees:function(b){return(b/this.radian)%360},isBBoxIntersect:function(d,e,f){f=f||0;return(Math.max(d.x,e.x)-f>Math.min(d.x+d.width,e.x+e.width))||(Math.max(d.y,e.y)-f>Math.min(d.y+d.height,e.y+e.height))},isPointInBBox:function(e,f,d){return !!d&&e>=d.x&&e<=(d.x+d.width)&&f>=d.y&&f<=(d.y+d.height)},spline:function(i){var s,t,o=i.length,u,p,j,r,v=0,q=new Float32Array(i.length),d=new Float32Array(i.length*3-2);q[0]=0;q[o-1]=0;for(s=1;s<o-1;s++){q[s]=(i[s+1]+i[s-1]-2*i[s])-q[s-1];v=1/(4-v);q[s]*=v}for(s=o-2;s>0;s--){v=3.732050807568877+48.248711305964385/(-13.928203230275537+Math.pow(0.07179676972449123,s));q[s]-=q[s+1]*v}r=i[0];u=r-q[0];for(s=0,t=0;s<o-1;t+=3){j=r;p=u;s++;r=i[s];u=r-q[s];d[t]=j;d[t+1]=(u+2*p)/3;d[t+2]=(u*2+p)/3}d[t]=r;return d},getAnchors:function(N,O,J,K,y,z,D){D=D||4;var E=Math.PI,C=E/2,H=Math.abs,R=Math.sin,Q=Math.cos,M=Math.atan,A,B,L,I,F,G,w,x,P;A=(J-N)/D;B=(y-J)/D;if((K>=O&&K>=z)||(K<=O&&K<=z)){L=I=C}else{L=M((J-N)/H(K-O));if(O<K){L=E-L}I=M((y-J)/H(K-z));if(z<K){I=E-I}}P=C-((L+I)%(E*2))/2;if(P>C){P-=E}L+=P;I+=P;F=J-A*R(L);G=K+A*Q(L);w=J+B*R(I);x=K+B*Q(I);if((K>O&&G<O)||(K<O&&G>O)){F+=H(O-G)*(F-J)/(G-K);G=O}if((K>z&&x<z)||(K<z&&x>z)){w-=H(z-x)*(w-J)/(x-K);x=z}return{x1:F,y1:G,x2:w,y2:x}},smooth:function(v,x,s){var w=v.length,y,z,D,E,i,r,t,u,A=[],B=[],C,F;for(C=0;C<w-1;C++){y=v[C];z=x[C];if(C===0){t=y;u=z;A.push(t);B.push(u);if(w===1){break}}D=v[C+1];E=x[C+1];i=v[C+2];r=x[C+2];if(!Ext.isNumber(i+r)){A.push(t,D,D);B.push(u,E,E);break}F=this.getAnchors(y,z,D,E,i,r,s);A.push(t,F.x1,D);B.push(u,F.y1,E);t=F.x2;u=F.y2}return{smoothX:A,smoothY:B}},beginUpdateIOS:Ext.os.is.iOS?function(){this.iosUpdateEl=Ext.getBody().createChild({style:"position: absolute; top: 0px; bottom: 0px; left: 0px; right: 0px; background: rgba(0,0,0,0.001); z-index: 100000"})}:Ext.emptyFn,endUpdateIOS:function(){this.iosUpdateEl=Ext.destroy(this.iosUpdateEl)}},0,0,0,0,0,0,[Ext.draw,"Draw"],0));(Ext.cmd.derive("Ext.draw.gradient.Gradient",Ext.Base,{isGradient:true,config:{stops:[]},applyStops:function(i){var j=[],k=i.length,l,g,h;for(l=0;l<k;l++){g=i[l];h=g.color;if(!(h&&h.isColor)){h=Ext.draw.Color.fly(h||Ext.draw.Color.NONE)}j.push({offset:Math.min(1,Math.max(0,"offset" in g?g.offset:g.position||0)),color:h.toString()})}j.sort(function(a,b){return a.offset-b.offset});return j},onClassExtended:function(d,c){if(!c.alias&&c.type){c.alias="gradient."+c.type}},constructor:function(b){this.initConfig(b)},generateGradient:Ext.emptyFn},1,0,0,0,0,0,[Ext.draw.gradient,"Gradient"],0));(Ext.cmd.derive("Ext.draw.gradient.GradientDefinition",Ext.Base,{singleton:true,urlStringRe:/^url\(#([\w\-]+)\)$/,gradients:{},add:function(g){var f=this.gradients,j,h,i;for(j=0,h=g.length;j<h;j++){i=g[j];if(Ext.isString(i.id)){f[i.id]=i}}},get:function(g){var f=this.gradients,e=g.match(this.urlStringRe),h;if(e&&e[1]&&(h=f[e[1]])){return h||g}return g}},0,0,0,0,0,0,[Ext.draw.gradient,"GradientDefinition"],0));(Ext.cmd.derive("Ext.draw.sprite.AttributeParser",Ext.Base,{singleton:true,attributeRe:/^url\(#([a-zA-Z\-]+)\)$/,"default":Ext.identityFn,string:function(b){return String(b)},number:function(b){if(Ext.isNumber(+b)){return b}},angle:function(b){if(Ext.isNumber(b)){b%=Math.PI*2;if(b<-Math.PI){b+=Math.PI*2}else{if(b>=Math.PI){b-=Math.PI*2}}return b}},data:function(b){if(Ext.isArray(b)){return b.slice()}else{if(b instanceof Float32Array){return new Float32Array(b)}}},bool:function(b){return !!b},color:function(b){if(b instanceof Ext.draw.Color){return b.toString()}else{if(b instanceof Ext.draw.gradient.Gradient){return b}else{if(!b){return Ext.draw.Color.NONE}else{if(Ext.isString(b)){if(b.substr(0,3)==="url"){b=Ext.draw.gradient.GradientDefinition.get(b);if(Ext.isString(b)){return b}}else{return Ext.draw.Color.fly(b).toString()}}}}}if(b.type==="linear"){return Ext.create("Ext.draw.gradient.Linear",b)}else{if(b.type==="radial"){return Ext.create("Ext.draw.gradient.Radial",b)}else{if(b.type==="pattern"){return Ext.create("Ext.draw.gradient.Pattern",b)}else{return Ext.draw.Color.NONE}}}},limited:function(d,c){return function(a){a=+a;return Ext.isNumber(a)?Math.min(Math.max(a,d),c):undefined}},limited01:function(b){b=+b;return Ext.isNumber(b)?Math.min(Math.max(b,0),1):undefined},enums:function(){var g={},f=Array.prototype.slice.call(arguments,0),e,h;for(e=0,h=f.length;e<h;e++){g[f[e]]=true}return function(a){return a in g?a:undefined}}},0,0,0,0,0,0,[Ext.draw.sprite,"AttributeParser"],0));(Ext.cmd.derive("Ext.draw.sprite.AttributeDefinition",Ext.Base,{config:{defaults:{$value:{},lazy:true},aliases:{},animationProcessors:{},processors:{$value:{},lazy:true},dirtyTriggers:{},triggers:{},updaters:{}},inheritableStatics:{processorFactoryRe:/^(\w+)\(([\w\-,]*)\)$/},spriteClass:null,constructor:function(d){var c=this;c.initConfig(d)},applyDefaults:function(c,d){d=Ext.apply(d||{},this.normalize(c));return d},applyAliases:function(c,d){return Ext.apply(d||{},c)},applyProcessors:function(p,l){this.getAnimationProcessors();var k=l||{},m=Ext.draw.sprite.AttributeParser,t=this.self.processorFactoryRe,n={},q,s,r,o;for(s in p){o=p[s];if(typeof o==="string"){r=o.match(t);if(r){o=m[r[1]].apply(m,r[2].split(","))}else{if(m[o]){n[s]=o;q=true;o=m[o]}}}k[s]=o}if(q){this.setAnimationProcessors(n)}return k},applyAnimationProcessors:function(j,g){var h=Ext.draw.sprite.AnimationParser,f,i;if(!g){g={}}for(f in j){i=j[f];if(i==="none"){g[f]=null}else{if(Ext.isString(i)&&!(f in g)){if(i in h){while(Ext.isString(h[i])){i=h[i]}g[f]=h[i]}}else{if(Ext.isObject(i)){g[f]=i}}}}return g},updateDirtyTriggers:function(b){this.setTriggers(b)},applyTriggers:function(d,f){if(!f){f={}}for(var e in d){f[e]=d[e].split(",")}return f},applyUpdaters:function(c,d){return Ext.apply(d||{},c)},batchedNormalize:function(y,r){if(!y){return{}}var v=this.getProcessors(),A=this.getAliases(),D=y.translation||y.translate,q={},x,w,C,z,i,B,s,t,u;if("rotation" in y){i=y.rotation}else{i=("rotate" in y)?y.rotate:undefined}if("scaling" in y){B=y.scaling}else{B=("scale" in y)?y.scale:undefined}if(typeof B!=="undefined"){if(Ext.isNumber(B)){q.scalingX=B;q.scalingY=B}else{if("x" in B){q.scalingX=B.x}if("y" in B){q.scalingY=B.y}if("centerX" in B){q.scalingCenterX=B.centerX}if("centerY" in B){q.scalingCenterY=B.centerY}}}if(typeof i!=="undefined"){if(Ext.isNumber(i)){i=Ext.draw.Draw.rad(i);q.rotationRads=i}else{if("rads" in i){q.rotationRads=i.rads}else{if("degrees" in i){if(Ext.isArray(i.degrees)){q.rotationRads=Ext.Array.map(i.degrees,function(a){return Ext.draw.Draw.rad(a)})}else{q.rotationRads=Ext.draw.Draw.rad(i.degrees)}}}if("centerX" in i){q.rotationCenterX=i.centerX}if("centerY" in i){q.rotationCenterY=i.centerY}}}if(typeof D!=="undefined"){if("x" in D){q.translationX=D.x}if("y" in D){q.translationY=D.y}}if("matrix" in y){s=Ext.draw.Matrix.create(y.matrix);u=s.split();q.matrix=s;q.rotationRads=u.rotation;q.rotationCenterX=0;q.rotationCenterY=0;q.scalingX=u.scaleX;q.scalingY=u.scaleY;q.scalingCenterX=0;q.scalingCenterY=0;q.translationX=u.translateX;q.translationY=u.translateY}for(C in y){z=y[C];if(typeof z==="undefined"){continue}else{if(Ext.isArray(z)){if(C in A){C=A[C]}if(C in v){q[C]=[];for(x=0,w=z.length;x<w;x++){t=v[C].call(this,z[x]);if(typeof t!=="undefined"){q[C][x]=t}}}else{if(r){q[C]=z}}}else{if(C in A){C=A[C]}if(C in v){z=v[C].call(this,z);if(typeof z!=="undefined"){q[C]=z}}else{if(r){q[C]=z}}}}}return q},normalize:function(p,o){if(!p){return{}}var s=this.getProcessors(),u=this.getAliases(),x=p.translation||p.translate,n={},w,t,m,v,q,r;if("rotation" in p){m=p.rotation}else{m=("rotate" in p)?p.rotate:undefined}if("scaling" in p){v=p.scaling}else{v=("scale" in p)?p.scale:undefined}if(x){if("x" in x){n.translationX=x.x}if("y" in x){n.translationY=x.y}}if(typeof v!=="undefined"){if(Ext.isNumber(v)){n.scalingX=v;n.scalingY=v}else{if("x" in v){n.scalingX=v.x}if("y" in v){n.scalingY=v.y}if("centerX" in v){n.scalingCenterX=v.centerX}if("centerY" in v){n.scalingCenterY=v.centerY}}}if(typeof m!=="undefined"){if(Ext.isNumber(m)){m=Ext.draw.Draw.rad(m);n.rotationRads=m}else{if("rads" in m){n.rotationRads=m.rads}else{if("degrees" in m){n.rotationRads=Ext.draw.Draw.rad(m.degrees)}}if("centerX" in m){n.rotationCenterX=m.centerX}if("centerY" in m){n.rotationCenterY=m.centerY}}}if("matrix" in p){q=Ext.draw.Matrix.create(p.matrix);r=q.split();n.matrix=q;n.rotationRads=r.rotation;n.rotationCenterX=0;n.rotationCenterY=0;n.scalingX=r.scaleX;n.scalingY=r.scaleY;n.scalingCenterX=0;n.scalingCenterY=0;n.translationX=r.translateX;n.translationY=r.translateY}for(w in p){t=p[w];if(typeof t==="undefined"){continue}if(w in u){w=u[w]}if(w in s){t=s[w].call(this,t);if(typeof t!=="undefined"){n[w]=t}}else{if(o){n[w]=t}}}return n},setBypassingNormalization:function(e,f,d){return f.pushDown(e,d)},set:function(e,f,d){d=this.normalize(d);return this.setBypassingNormalization(e,f,d)}},1,0,0,0,0,0,[Ext.draw.sprite,"AttributeDefinition"],0));(Ext.cmd.derive("Ext.draw.Matrix",Ext.Base,{isMatrix:true,statics:{createAffineMatrixFromTwoPair:function(A,G,B,H,x,c,z,y){var E=B-A,F=H-G,C=z-x,a=y-c,D=1/(E*E+F*F),b=E*C+F*a,f=C*F-E*a,r=-b*A-f*G,w=f*A-b*G;return new this(b*D,-f*D,f*D,b*D,r*D+x,w*D+c)},createPanZoomFromTwoPair:function(v,H,w,J,E,u,y,F){if(arguments.length===2){return this.createPanZoomFromTwoPair.apply(this,v.concat(H))}var B=w-v,C=J-H,I=(v+w)*0.5,K=(H+J)*0.5,x=y-E,L=F-u,G=(E+y)*0.5,A=(u+F)*0.5,z=B*B+C*C,D=x*x+L*L,r=Math.sqrt(D/z);return new this(r,0,0,r,G-r*I,A-r*K)},fly:(function(){var d=null,c=function(a){d.elements=a;return d};return function(a){if(!d){d=new Ext.draw.Matrix()}d.elements=a;Ext.draw.Matrix.fly=c;return d}})(),create:function(b){if(b instanceof this){return b}return new this(b)}},constructor:function(j,k,h,i,l,g){if(j&&j.length===6){this.elements=j.slice()}else{if(j!==undefined){this.elements=[j,k,h,i,l,g]}else{this.elements=[1,0,0,1,0,0]}}},prepend:function(z,o,s,t,n,p){var y=this.elements,w=y[0],q=y[1],v=y[2],x=y[3],r=y[4],u=y[5];y[0]=z*w+s*q;y[1]=o*w+t*q;y[2]=z*v+s*x;y[3]=o*v+t*x;y[4]=z*r+s*u+n;y[5]=o*r+t*u+p;return this},prependMatrix:function(b){return this.prepend.apply(this,b.elements)},append:function(z,o,s,t,n,p){var y=this.elements,w=y[0],q=y[1],v=y[2],x=y[3],r=y[4],u=y[5];y[0]=z*w+o*v;y[1]=z*q+o*x;y[2]=s*w+t*v;y[3]=s*q+t*x;y[4]=n*w+p*v+r;y[5]=n*q+p*x+u;return this},appendMatrix:function(b){return this.append.apply(this,b.elements)},set:function(k,l,i,j,n,h){var m=this.elements;m[0]=k;m[1]=l;m[2]=i;m[3]=j;m[4]=n;m[5]=h;return this},inverse:function(p){var r=this.elements,a=r[0],c=r[1],d=r[2],e=r[3],f=r[4],q=r[5],b=1/(a*e-c*d);a*=b;c*=b;d*=b;e*=b;if(p){p.set(e,-c,-d,a,d*q-e*f,c*f-a*q);return p}else{return new Ext.draw.Matrix(e,-c,-d,a,d*q-e*f,c*f-a*q)}},translate:function(e,f,d){if(d){return this.prepend(1,0,0,1,e,f)}else{return this.append(1,0,0,1,e,f)}},scale:function(i,j,l,h,g){var k=this;if(j==null){j=i}if(l===undefined){l=0}if(h===undefined){h=0}if(g){return k.prepend(i,0,0,j,l-l*i,h-h*j)}else{return k.append(i,0,0,j,l-l*i,h-h*j)}},rotate:function(j,l,n,h){var m=this,k=Math.cos(j),i=Math.sin(j);l=l||0;n=n||0;if(h){return m.prepend(k,i,-i,k,l-k*l+n*i,n-k*n-l*i)}else{return m.append(k,i,-i,k,l-k*l+n*i,n-k*n-l*i)}},rotateFromVector:function(i,j,n){var m=this,k=Math.sqrt(i*i+j*j),l=i/k,d=j/k;if(n){return m.prepend(l,d,-d,l,0,0)}else{return m.append(l,d,-d,l,0,0)}},clone:function(){return new Ext.draw.Matrix(this.elements)},flipX:function(){return this.append(-1,0,0,1,0,0)},flipY:function(){return this.append(1,0,0,-1,0,0)},skewX:function(b){return this.append(1,0,Math.tan(b),1,0,0)},skewY:function(b){return this.append(1,Math.tan(b),0,1,0,0)},shearX:function(b){return this.append(1,0,b,1,0,0)},shearY:function(b){return this.append(1,b,0,1,0,0)},reset:function(){return this.set(1,0,0,1,0,0)},precisionCompensate:function(k,n){var r=this.elements,o=r[0],p=r[1],l=r[2],m=r[3],q=r[4],s=r[5],t=p*l-o*m;n.b=k*p/o;n.c=k*l/m;n.d=k;n.xx=o/k;n.yy=m/k;n.dx=(s*o*l-q*o*m)/t/k;n.dy=(q*p*m-s*o*m)/t/k},precisionCompensateRect:function(k,n){var s=this.elements,o=s[0],p=s[1],l=s[2],m=s[3],r=s[4],t=s[5],q=l/o;n.b=k*p/o;n.c=k*q;n.d=k*m/o;n.xx=o/k;n.yy=o/k;n.dx=(t*l-r*m)/(p*q-m)/k;n.dy=-(t*o-r*p)/(p*q-m)/k},x:function(e,f){var d=this.elements;return e*d[0]+f*d[2]+d[4]},y:function(e,f){var d=this.elements;return e*d[1]+f*d[3]+d[5]},get:function(c,d){return +this.elements[c+d*2].toFixed(4)},transformPoint:function(e){var h=this.elements,f,g;if(e.isPoint){f=e.x;g=e.y}else{f=e[0];g=e[1]}return[f*h[0]+g*h[2]+h[4],f*h[1]+g*h[3]+h[5]]},transformBBox:function(l,z,y){var F=this.elements,D=l.x,h=l.y,A=l.width*0.5,u=l.height*0.5,G=F[0],H=F[1],v=F[2],x=F[3],C=D+A,E=h+u,t,B,w;if(z){A-=z;u-=z;w=[Math.sqrt(F[0]*F[0]+F[2]*F[2]),Math.sqrt(F[1]*F[1]+F[3]*F[3])];t=Math.abs(A*G)+Math.abs(u*v)+Math.abs(w[0]*z);B=Math.abs(A*H)+Math.abs(u*x)+Math.abs(w[1]*z)}else{t=Math.abs(A*G)+Math.abs(u*v);B=Math.abs(A*H)+Math.abs(u*x)}if(!y){y={}}y.x=C*G+E*v+F[4]-t;y.y=C*H+E*x+F[5]-B;y.width=t+t;y.height=B+B;return y},transformList:function(r){var u=this.elements,v=u[0],o=u[2],i=u[4],m=u[1],p=u[3],n=u[5],q=r.length,t,s;for(s=0;s<q;s++){t=r[s];r[s]=[t[0]*v+t[1]*o+i,t[0]*m+t[1]*p+n]}return r},isIdentity:function(){var b=this.elements;return b[0]===1&&b[1]===0&&b[2]===0&&b[3]===1&&b[4]===0&&b[5]===0},isEqual:function(e){var f=e&&e.isMatrix?e.elements:e,d=this.elements;return d[0]===f[0]&&d[1]===f[1]&&d[2]===f[2]&&d[3]===f[3]&&d[4]===f[4]&&d[5]===f[5]},equals:function(b){return this.isEqual(b)},toArray:function(){var b=this.elements;return[b[0],b[2],b[4],b[1],b[3],b[5]]},toVerticalArray:function(){return this.elements.slice()},toString:function(){var b=this;return[b.get(0,0),b.get(0,1),b.get(1,0),b.get(1,1),b.get(2,0),b.get(2,1)].join(",")},toContext:function(b){b.transform.apply(b,this.elements);return this},toSvg:function(){var b=this.elements;return"matrix("+b[0].toFixed(9)+","+b[1].toFixed(9)+","+b[2].toFixed(9)+","+b[3].toFixed(9)+","+b[4].toFixed(9)+","+b[5].toFixed(9)+")"},getScaleX:function(){var b=this.elements;return Math.sqrt(b[0]*b[0]+b[2]*b[2])},getScaleY:function(){var b=this.elements;return Math.sqrt(b[1]*b[1]+b[3]*b[3])},getXX:function(){return this.elements[0]},getXY:function(){return this.elements[1]},getYX:function(){return this.elements[2]},getYY:function(){return this.elements[3]},getDX:function(){return this.elements[4]},getDY:function(){return this.elements[5]},split:function(){var f=this.elements,i=f[0],j=f[1],h=f[3],g={translateX:f[4],translateY:f[5]};g.rotate=g.rotation=Math.atan2(j,i);g.scaleX=i/Math.cos(g.rotate);g.scaleY=h/i*g.scaleX;return g}},3,0,0,0,0,0,[Ext.draw,"Matrix"],function(){function c(a,f,b){a[f]={get:function(){return this.elements[b]},set:function(e){this.elements[b]=e}}}if(Object.defineProperties){var d={};c(d,"a",0);c(d,"b",1);c(d,"c",2);c(d,"d",3);c(d,"e",4);c(d,"f",5);Object.defineProperties(this.prototype,d)}this.prototype.multiply=this.prototype.appendMatrix}));(Ext.cmd.derive("Ext.draw.modifier.Modifier",Ext.Base,{config:{previous:null,next:null,sprite:null},constructor:function(b){this.mixins.observable.constructor.call(this,b)},updateNext:function(b){if(b){b.setPrevious(this)}},updatePrevious:function(b){if(b){b.setNext(this)}},prepareAttributes:function(b){if(this._previous){this._previous.prepareAttributes(b)}},popUp:function(d,c){if(this._next){this._next.popUp(d,c)}else{Ext.apply(d,c)}},pushDown:function(e,f){if(this._previous){return this._previous.pushDown(e,f)}else{for(var d in f){if(f[d]===e[d]){delete f[d]}}return f}}},1,0,0,0,0,[["observable",Ext.mixin.Observable]],[Ext.draw.modifier,"Modifier"],0));(Ext.cmd.derive("Ext.draw.modifier.Target",Ext.draw.modifier.Modifier,{statics:{uniqueId:0},prepareAttributes:function(d){var c=this.getPrevious();if(c){c.prepareAttributes(d)}d.attributeId="attribute-"+Ext.draw.modifier.Target.uniqueId++;if(!d.hasOwnProperty("canvasAttributes")){d.bbox={plain:{dirty:true},transform:{dirty:true}};d.dirty=true;d.pendingUpdaters={};d.canvasAttributes={};d.matrix=new Ext.draw.Matrix();d.inverseMatrix=new Ext.draw.Matrix()}},applyChanges:function(w,t){Ext.apply(w,t);var s=this.getSprite(),j=w.pendingUpdaters,u=s.self.def.getTriggers(),i,B,r,A,x,q,y,z,v;for(A in t){x=true;if((i=u[A])){s.scheduleUpdaters(w,i,[A])}if(w.template&&t.removeFromInstance&&t.removeFromInstance[A]){delete w[A]}}if(!x){return}if(j.canvas){q=j.canvas;delete j.canvas;for(y=0,v=q.length;y<v;y++){A=q[y];w.canvasAttributes[A]=w[A]}}if(w.hasOwnProperty("children")){B=w.children;for(y=0,v=B.length;y<v;y++){r=B[y];Ext.apply(r.pendingUpdaters,j);if(q){for(z=0;z<q.length;z++){A=q[z];r.canvasAttributes[A]=r[A]}}s.callUpdaters(r)}}s.setDirty(true);s.callUpdaters(w)},popUp:function(d,c){this.applyChanges(d,c)},pushDown:function(e,d){var f=this.getPrevious();if(f){d=f.pushDown(e,d)}this.applyChanges(e,d);return d}},0,0,0,0,["modifier.target"],0,[Ext.draw.modifier,"Target"],0));(Ext.cmd.derive("Ext.draw.TimingFunctions",Ext.Base,function(){var t=Math.pow,r=Math.sin,o=Math.cos,p=Math.sqrt,v=Math.PI,y=["quad","cube","quart","quint"],x={pow:function(b,a){return t(b,a||6)},expo:function(a){return t(2,8*(a-1))},circ:function(a){return 1-p(1-a*a)},sine:function(a){return 1-r((1-a)*v/2)},back:function(a,b){b=b||1.616;return a*a*((b+1)*a-b)},bounce:function(b){for(var c=0,a=1;1;c+=a,a/=2){if(b>=(7-4*c)/11){return a*a-t((11-6*c-11*b)/4,2)}}},elastic:function(b,a){return t(2,10*--b)*o(20*b*v*(a||1)/3)}},q={},z,u,w;function s(a){return function(b){return t(b,a)}}function i(a,b){q[a+"In"]=function(c){return b(c)};q[a+"Out"]=function(c){return 1-b(1-c)};q[a+"InOut"]=function(c){return(c<=0.5)?b(2*c)/2:(2-b(2*(1-c)))/2}}for(w=0,u=y.length;w<u;++w){x[y[w]]=s(w+2)}for(z in x){i(z,x[z])}q.linear=Ext.identityFn;q.easeIn=q.quadIn;q.easeOut=q.quadOut;q.easeInOut=q.quadInOut;return{singleton:true,easingMap:q}},0,0,0,0,0,0,[Ext.draw,"TimingFunctions"],function(b){Ext.apply(b,b.easingMap)}));(Ext.cmd.derive("Ext.draw.Animator",Ext.Base,{singleton:true,frameCallbacks:{},frameCallbackId:0,scheduled:0,frameStartTimeOffset:Ext.now(),animations:[],running:false,animationTime:function(){return Ext.AnimationQueue.frameStartTime-this.frameStartTimeOffset},add:function(c){var d=this;if(!d.contains(c)){d.animations.push(c);d.ignite();if("fireEvent" in c){c.fireEvent("animationstart",c)}}},remove:function(i){var j=this,h=j.animations,f=0,g=h.length;for(;f<g;++f){if(h[f]===i){h.splice(f,1);if("fireEvent" in i){i.fireEvent("animationend",i)}return}}},contains:function(b){return Ext.Array.indexOf(this.animations,b)>-1},empty:function(){return this.animations.length===0},step:function(k){var l=this,i=l.animations,j,h=0,g=i.length;for(;h<g;h++){j=i[h];j.step(k);if(!j.animating){i.splice(h,1);h--;g--;if(j.fireEvent){j.fireEvent("animationend",j)}}}},schedule:function(f,e){e=e||this;var d="frameCallback"+(this.frameCallbackId++);if(Ext.isString(f)){f=e[f]}Ext.draw.Animator.frameCallbacks[d]={fn:f,scope:e,once:true};this.scheduled++;Ext.draw.Animator.ignite();return d},scheduleIf:function(h,f){f=f||this;var j=Ext.draw.Animator.frameCallbacks,g,i;if(Ext.isString(h)){h=f[h]}for(i in j){g=j[i];if(g.once&&g.fn===h&&g.scope===f){return null}}return this.schedule(h,f)},cancel:function(b){if(Ext.draw.Animator.frameCallbacks[b]&&Ext.draw.Animator.frameCallbacks[b].once){this.scheduled--;delete Ext.draw.Animator.frameCallbacks[b]}},addFrameCallback:function(f,e){e=e||this;if(Ext.isString(f)){f=e[f]}var d="frameCallback"+(this.frameCallbackId++);Ext.draw.Animator.frameCallbacks[d]={fn:f,scope:e};return d},removeFrameCallback:function(b){delete Ext.draw.Animator.frameCallbacks[b]},fireFrameCallbacks:function(){var h=this.frameCallbacks,g,e,f;for(g in h){f=h[g];e=f.fn;if(Ext.isString(e)){e=f.scope[e]}e.call(f.scope);if(h[g]&&f.once){this.scheduled--;delete h[g]}}},handleFrame:function(){this.step(this.animationTime());this.fireFrameCallbacks();if(!this.scheduled&&this.empty()){Ext.AnimationQueue.stop(this.handleFrame,this);this.running=false;Ext.draw.Draw.endUpdateIOS()}},ignite:function(){if(!this.running){this.running=true;Ext.AnimationQueue.start(this.handleFrame,this);Ext.draw.Draw.beginUpdateIOS()}}},0,0,0,0,0,0,[Ext.draw,"Animator"],0));(Ext.cmd.derive("Ext.draw.modifier.Animation",Ext.draw.modifier.Modifier,{config:{easing:Ext.identityFn,duration:0,customEasings:{},customDurations:{},customDuration:null},constructor:function(d){var c=this;c.anyAnimation=c.anySpecialAnimations=false;c.animating=0;c.animatingPool=[];Ext.draw.modifier.Modifier.prototype.constructor.call(this,d)},prepareAttributes:function(b){if(!b.hasOwnProperty("timers")){b.animating=false;b.timers={};b.animationOriginal=Ext.Object.chain(b);b.animationOriginal.prototype=b}if(this._previous){this._previous.prepareAttributes(b.animationOriginal)}},updateSprite:function(b){this.setConfig(b.config.fx)},updateDuration:function(b){this.anyAnimation=b>0},applyEasing:function(b){if(typeof b==="string"){b=Ext.draw.TimingFunctions.easingMap[b]}return b},applyCustomEasings:function(j,n){n=n||{};var l,o,i,k,p,m;for(o in j){l=true;k=j[o];i=o.split(",");if(typeof k==="string"){k=Ext.draw.TimingFunctions.easingMap[k]}for(p=0,m=i.length;p<m;p++){n[i[p]]=k}}if(l){this.anySpecialAnimations=l}return n},setEasingOn:function(g,h){g=Ext.Array.from(g).slice();var j={},i=g.length,f=0;for(;f<i;f++){j[g[f]]=h}this.setCustomEasings(j)},clearEasingOn:function(e){e=Ext.Array.from(e,true);var d=0,f=e.length;for(;d<f;d++){delete this._customEasings[e[d]]}},applyCustomDurations:function(l,k){k=k||{};var n,p,m,j,i,o;for(p in l){n=true;m=l[p];j=p.split(",");for(i=0,o=j.length;i<o;i++){k[j[i]]=m}}if(n){this.anySpecialAnimations=n}return k},applyCustomDuration:function(d,c){if(d){this.getCustomDurations();this.setCustomDurations(d)}},setDurationOn:function(f,h){f=Ext.Array.from(f).slice();var g={},j=0,i=f.length;for(;j<i;j++){g[f[j]]=h}this.setCustomDurations(g)},clearDurationOn:function(e){e=Ext.Array.from(e,true);var d=0,f=e.length;for(;d<f;d++){delete this._customDurations[e[d]]}},setAnimating:function(g,f){var h=this,i=h.animatingPool;if(g.animating!==f){g.animating=f;if(f){i.push(g);if(h.animating===0){Ext.draw.Animator.add(h)}h.animating++}else{for(var j=i.length;j--;){if(i[j]===g){i.splice(j,1)}}h.animating=i.length}}},setAttrs:function(y,w){var x=this,D=y.timers,I=x._sprite.self.def._animationProcessors,K=x._easing,L=x._duration,G=x._customDurations,H=x._customEasings,J=x.anySpecialAnimations,C=x.anyAnimation||J,B=y.animationOriginal,M=false,F,v,E,A,N,z,P;if(!C){for(v in w){if(y[v]===w[v]){delete w[v]}else{y[v]=w[v]}delete B[v];delete D[v]}return w}else{for(v in w){E=w[v];A=y[v];if(E!==A&&A!==undefined&&A!==null&&(N=I[v])){z=K;P=L;if(J){if(v in H){z=H[v]}if(v in G){P=G[v]}}if(A&&A.isGradient||E&&E.isGradient){P=0}if(P){if(!D[v]){D[v]={}}F=D[v];F.start=0;F.easing=z;F.duration=P;F.compute=N.compute;F.serve=N.serve||Ext.identityFn;F.remove=w.removeFromInstance&&w.removeFromInstance[v];if(N.parseInitial){var O=N.parseInitial(A,E);F.source=O[0];F.target=O[1]}else{if(N.parse){F.source=N.parse(A);F.target=N.parse(E)}else{F.source=A;F.target=E}}B[v]=E;delete w[v];M=true;continue}else{delete B[v]}}else{delete B[v]}delete D[v]}}if(M&&!y.animating){x.setAnimating(y,true)}return w},updateAttributes:function(l){if(!l.animating){return{}}var k={},n=false,o=l.timers,m=l.animationOriginal,p=Ext.draw.Animator.animationTime(),r,q,j;if(l.lastUpdate===p){return null}for(r in o){q=o[r];if(!q.start){q.start=p;j=0}else{j=(p-q.start)/q.duration}if(j>=1){k[r]=m[r];delete m[r];if(o[r].remove){k.removeFromInstance=k.removeFromInstance||{};k.removeFromInstance[r]=true}delete o[r]}else{k[r]=q.serve(q.compute(q.source,q.target,q.easing(j),l[r]));n=true}}l.lastUpdate=p;this.setAnimating(l,n);return k},pushDown:function(d,c){c=Ext.draw.modifier.Modifier.prototype.pushDown.call(this,d.animationOriginal,c);return this.setAttrs(d,c)},popUp:function(d,c){d=d.prototype;c=this.setAttrs(d,c);if(this._next){return this._next.popUp(d,c)}else{return Ext.apply(d,c)}},step:function(j){var k=this,n=k.animatingPool.slice(),l=n.length,h=0,i,m;for(;h<l;h++){i=n[h];m=k.updateAttributes(i);if(m&&k._next){k._next.popUp(i,m)}}},stop:function(){this.step();var g=this,e=g.animatingPool,f,h;for(f=0,h=e.length;f<h;f++){e[f].animating=false}g.animatingPool.length=0;g.animating=0;Ext.draw.Animator.remove(g)},destroy:function(){this.animatingPool.length=0;this.animating=0;Ext.draw.modifier.Modifier.prototype.destroy.call(this)}},1,0,0,0,["modifier.animation"],0,[Ext.draw.modifier,"Animation"],0));(Ext.cmd.derive("Ext.draw.modifier.Highlight",Ext.draw.modifier.Modifier,{config:{enabled:false,highlightStyle:null},preFx:true,applyHighlightStyle:function(c,d){d=d||{};if(this.getSprite()){Ext.apply(d,this.getSprite().self.def.normalize(c))}else{Ext.apply(d,c)}return d},prepareAttributes:function(b){if(!b.hasOwnProperty("highlightOriginal")){b.highlighted=false;b.highlightOriginal=Ext.Object.chain(b);b.highlightOriginal.prototype=b;b.highlightOriginal.removeFromInstance={}}if(this._previous){this._previous.prepareAttributes(b.highlightOriginal)}},updateSprite:function(c,d){if(c){if(this.getHighlightStyle()){this._highlightStyle=c.self.def.normalize(this.getHighlightStyle())}this.setHighlightStyle(c.config.highlight)}c.self.def.setConfig({defaults:{highlighted:false},processors:{highlighted:"bool"}});this.setSprite(c)},filterChanges:function(h,k){var j=this,i=h.highlightOriginal,l=j.getHighlightStyle(),g;if(h.highlighted){for(g in k){if(l.hasOwnProperty(g)){i[g]=k[g];delete k[g]}}}for(g in k){if(g!=="highlighted"&&i[g]===k[g]){delete k[g]}}return k},pushDown:function(n,l){var m=this.getHighlightStyle(),p=n.highlightOriginal,j=p.removeFromInstance,o,r,k,q;if(l.hasOwnProperty("highlighted")){o=l.highlighted;delete l.highlighted;if(this._previous){l=this._previous.pushDown(p,l)}l=this.filterChanges(n,l);if(o!==n.highlighted){if(o){for(r in m){if(r in l){p[r]=l[r]}else{k=n.template&&n.template.ownAttr;if(k&&!n.prototype.hasOwnProperty(r)){j[r]=true;p[r]=k.animationOriginal[r]}else{q=p.timers[r];if(q&&q.remove){j[r]=true}p[r]=n[r]}}if(p[r]!==m[r]){l[r]=m[r]}}}else{for(r in m){if(!(r in l)){l[r]=p[r]}delete p[r]}l.removeFromInstance=l.removeFromInstance||{};Ext.apply(l.removeFromInstance,j);p.removeFromInstance={}}l.highlighted=o}}else{if(this._previous){l=this._previous.pushDown(p,l)}l=this.filterChanges(n,l)}return l},popUp:function(d,c){c=this.filterChanges(d,c);Ext.draw.modifier.Modifier.prototype.popUp.call(this,d,c)}},0,0,0,0,["modifier.highlight"],0,[Ext.draw.modifier,"Highlight"],0));(Ext.cmd.derive("Ext.draw.sprite.Sprite",Ext.Base,{isSprite:true,statics:{defaultHitTestOptions:{fill:true,stroke:true}},inheritableStatics:{def:{processors:{strokeStyle:"color",fillStyle:"color",strokeOpacity:"limited01",fillOpacity:"limited01",lineWidth:"number",lineCap:"enums(butt,round,square)",lineJoin:"enums(round,bevel,miter)",lineDash:"data",lineDashOffset:"number",miterLimit:"number",shadowColor:"color",shadowOffsetX:"number",shadowOffsetY:"number",shadowBlur:"number",globalAlpha:"limited01",globalCompositeOperation:"enums(source-over,destination-over,source-in,destination-in,source-out,destination-out,source-atop,destination-atop,lighter,xor,copy)",hidden:"bool",transformFillStroke:"bool",zIndex:"number",translationX:"number",translationY:"number",rotationRads:"number",rotationCenterX:"number",rotationCenterY:"number",scalingX:"number",scalingY:"number",scalingCenterX:"number",scalingCenterY:"number",constrainGradients:"bool"},aliases:{stroke:"strokeStyle",fill:"fillStyle",color:"fillStyle","stroke-width":"lineWidth","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","text-anchor":"textAlign",opacity:"globalAlpha",translateX:"translationX",translateY:"translationY",rotateRads:"rotationRads",rotateCenterX:"rotationCenterX",rotateCenterY:"rotationCenterY",scaleX:"scalingX",scaleY:"scalingY",scaleCenterX:"scalingCenterX",scaleCenterY:"scalingCenterY"},defaults:{hidden:false,zIndex:0,strokeStyle:"none",fillStyle:"none",lineWidth:1,lineDash:[],lineDashOffset:0,lineCap:"butt",lineJoin:"miter",miterLimit:10,shadowColor:"none",shadowOffsetX:0,shadowOffsetY:0,shadowBlur:0,globalAlpha:1,strokeOpacity:1,fillOpacity:1,transformFillStroke:false,translationX:0,translationY:0,rotationRads:0,rotationCenterX:null,rotationCenterY:null,scalingX:1,scalingY:1,scalingCenterX:null,scalingCenterY:null,constrainGradients:false},triggers:{zIndex:"zIndex",globalAlpha:"canvas",globalCompositeOperation:"canvas",transformFillStroke:"canvas",strokeStyle:"canvas",fillStyle:"canvas",strokeOpacity:"canvas",fillOpacity:"canvas",lineWidth:"canvas",lineCap:"canvas",lineJoin:"canvas",lineDash:"canvas",lineDashOffset:"canvas",miterLimit:"canvas",shadowColor:"canvas",shadowOffsetX:"canvas",shadowOffsetY:"canvas",shadowBlur:"canvas",translationX:"transform",translationY:"transform",rotationRads:"transform",rotationCenterX:"transform",rotationCenterY:"transform",scalingX:"transform",scalingY:"transform",scalingCenterX:"transform",scalingCenterY:"transform",constrainGradients:"canvas"},updaters:{bbox:"bboxUpdater",zIndex:function(b){b.dirtyZIndex=true},transform:function(b){b.dirtyTransform=true;b.bbox.transform.dirty=true}}}},config:{parent:null,surface:null},onClassExtended:function(i,j){var f=i.superclass.self.def.initialConfig,h=j.inheritableStatics&&j.inheritableStatics.def,g;if(h){g=Ext.Object.merge({},f,h);i.def=new Ext.draw.sprite.AttributeDefinition(g);delete j.inheritableStatics.def}else{i.def=new Ext.draw.sprite.AttributeDefinition(f)}i.def.spriteClass=i},constructor:function(f){var i=this,j=i.self.def,h=j.getDefaults(),g;f=Ext.isObject(f)?f:{};i.id=f.id||Ext.id(null,"ext-sprite-");i.attr={};i.mixins.observable.constructor.apply(i,arguments);g=Ext.Array.from(f.modifiers,true);i.prepareModifiers(g);i.initializeAttributes();i.setAttributes(h,true);i.setAttributes(f)},getDirty:function(){return this.attr.dirty},setDirty:function(c){this.attr.dirty=c;if(c){var d=this.getParent();if(d){d.setDirty(true)}}},addModifier:function(e,d){var f=this;if(!(e instanceof Ext.draw.modifier.Modifier)){e=Ext.factory(e,null,null,"modifier")}e.setSprite(f);if(e.preFx||e.config&&e.config.preFx){if(f.fx.getPrevious()){f.fx.getPrevious().setNext(e)}e.setNext(f.fx)}else{f.topModifier.getPrevious().setNext(e);e.setNext(f.topModifier)}if(d){f.initializeAttributes()}return e},prepareModifiers:function(g){var h=this,f,e;h.topModifier=new Ext.draw.modifier.Target({sprite:h});h.fx=new Ext.draw.modifier.Animation({sprite:h});h.fx.setNext(h.topModifier);for(f=0,e=g.length;f<e;f++){h.addModifier(g[f],false)}},getAnimation:function(){return this.fx},setAnimation:function(b){this.fx.setConfig(b)},initializeAttributes:function(){this.topModifier.prepareAttributes(this.attr)},callUpdaters:function(o){var n=this,k=o.pendingUpdaters,j=n.self.def.getUpdaters(),p=false,r=false,q,l,m;n.callUpdaters=Ext.emptyFn;do{p=false;for(l in k){p=true;q=k[l];delete k[l];m=j[l];if(typeof m==="string"){m=n[m]}if(m){m.call(n,o,q)}}r=r||p}while(p);delete n.callUpdaters;if(r){n.setDirty(true)}},scheduleUpdaters:function(h,j,l){var i;if(l){for(var g=0,k=j.length;g<k;g++){i=j[g];this.scheduleUpdater(h,i,l)}}else{for(i in j){l=j[i];this.scheduleUpdater(h,i,l)}}},scheduleUpdater:function(f,h,e){e=e||[];var g=f.pendingUpdaters;if(h in g){if(e.length){g[h]=Ext.Array.merge(g[h],e)}}else{g[h]=e}},setAttributes:function(m,j,n){var i=this.attr,h,l,k;if(j){if(n){this.topModifier.pushDown(i,m)}else{k={};for(h in m){l=m[h];if(l!==i[h]){k[h]=l}}this.topModifier.pushDown(i,k)}}else{this.topModifier.pushDown(i,this.self.def.normalize(m))}},setAttributesBypassingNormalization:function(c,d){return this.setAttributes(c,true,d)},bboxUpdater:function(f){var j=f.rotationRads!==0,g=f.scalingX!==1||f.scalingY!==1,i=f.rotationCenterX===null||f.rotationCenterY===null,h=f.scalingCenterX===null||f.scalingCenterY===null;f.bbox.plain.dirty=true;f.bbox.transform.dirty=true;if(j&&i||g&&h){this.scheduleUpdater(f,"transform")}},getBBox:function(k){var j=this,h=j.attr,i=h.bbox,l=i.plain,g=i.transform;if(l.dirty){j.updatePlainBBox(l);l.dirty=false}if(!k){j.applyTransformations();if(g.dirty){j.updateTransformedBBox(g,l);g.dirty=false}return g}return l},updatePlainBBox:Ext.emptyFn,updateTransformedBBox:function(d,c){this.attr.matrix.transformBBox(c,0,d)},getBBoxCenter:function(d){var c=this.getBBox(d);if(c){return[c.x+c.width*0.5,c.y+c.height*0.5]}else{return[0,0]}},hide:function(){this.attr.hidden=true;this.setDirty(true);return this},show:function(){this.attr.hidden=false;this.setDirty(true);return this},useAttributes:function(j,m){this.applyTransformations();var o=this.attr,k=o.canvasAttributes,n=k.strokeStyle,l=k.fillStyle,q=k.lineDash,p=k.lineDashOffset,r;if(n){if(n.isGradient){j.strokeStyle="black";j.strokeGradient=n}else{j.strokeGradient=false}}if(l){if(l.isGradient){j.fillStyle="black";j.fillGradient=l}else{j.fillGradient=false}}if(q){j.setLineDash(q)}if(Ext.isNumber(p+j.lineDashOffset)){j.lineDashOffset=p}for(r in k){if(k[r]!==undefined&&k[r]!==j[r]){j[r]=k[r]}}this.setGradientBBox(j,m)},setGradientBBox:function(d,f){var e=this.attr;if(e.constrainGradients){d.setGradientBBox({x:f[0],y:f[1],width:f[2],height:f[3]})}else{d.setGradientBBox(this.getBBox(e.transformFillStroke))}},applyTransformations:function(K){if(!K&&!this.attr.dirtyTransform){return}var u=this,B=u.attr,w=u.getBBoxCenter(true),F=w[0],G=w[1],v=B.translationX,x=B.translationY,C=B.scalingX,D=B.scalingY===null?B.scalingX:B.scalingY,z=B.scalingCenterX===null?F:B.scalingCenterX,A=B.scalingCenterY===null?G:B.scalingCenterY,t=B.rotationRads,H=B.rotationCenterX===null?F:B.rotationCenterX,I=B.rotationCenterY===null?G:B.rotationCenterY,J=Math.cos(t),L=Math.sin(t),y,E;if(C===1&&D===1){z=0;A=0}if(t===0){H=0;I=0}y=z*(1-C)-H;E=A*(1-D)-I;B.matrix.elements=[J*C,L*C,-L*D,J*D,J*y-L*E+H+v,L*y+J*E+I+x];B.matrix.inverse(B.inverseMatrix);B.dirtyTransform=false;B.bbox.transform.dirty=true},transform:function(f,j){var g=this.attr,h=g.matrix,i;if(f&&f.isMatrix){i=f.elements}else{i=f}h.prepend.apply(h,i.slice());h.inverse(g.inverseMatrix);if(j){this.updateTransformAttributes()}g.dirtyTransform=false;g.bbox.transform.dirty=true;this.setDirty(true);return this},updateTransformAttributes:function(){var d=this.attr,c=d.matrix.split();d.rotationRads=c.rotate;d.rotationCenterX=0;d.rotationCenterY=0;d.scalingX=c.scaleX;d.scalingY=c.scaleY;d.scalingCenterX=0;d.scalingCenterY=0;d.translationX=c.translateX;d.translationY=c.translateY},resetTransform:function(c){var d=this.attr;d.matrix.reset();d.inverseMatrix.reset();if(!c){this.updateTransformAttributes()}d.dirtyTransform=false;d.bbox.transform.dirty=true;this.setDirty(true);return this},setTransform:function(d,c){this.resetTransform(true);this.transform.call(this,d,c);return this},preRender:Ext.emptyFn,render:Ext.emptyFn,hitTest:function(g,l){if(this.isVisible()){var h=g[0],i=g[1],j=this.getBBox(),k=j&&h>=j.x&&h<=(j.x+j.width)&&i>=j.y&&i<=(j.y+j.height);if(k){return{sprite:this}}}return null},isVisible:function(){var n=this.attr,m=this.getParent(),l=m&&(m.isSurface||m.isVisible()),o=l&&!n.hidden&&n.globalAlpha,q=Ext.draw.Color.NONE,r=Ext.draw.Color.RGBA_NONE,p=n.fillOpacity&&n.fillStyle!==q&&n.fillStyle!==r,j=n.strokeOpacity&&n.strokeStyle!==q&&n.strokeStyle!==r,k=o&&(p||j);return !!k},repaint:function(){var b=this.getSurface();if(b){b.renderFrame()}},remove:function(){var b=this.getSurface();if(b&&b.isSurface){return b.remove(this)}return null},destroy:function(){var d=this,e=d.topModifier,f;while(e){f=e;e=e.getPrevious();f.destroy()}delete d.attr;d.remove();if(d.fireEvent("beforedestroy",d)!==false){d.fireEvent("destroy",d)}d.callParent()}},1,0,0,0,["sprite.sprite"],[["observable",Ext.mixin.Observable]],[Ext.draw.sprite,"Sprite"],function(){this.def=new Ext.draw.sprite.AttributeDefinition(this.def);this.def.spriteClass=this}));(Ext.cmd.derive("Ext.draw.Path",Ext.Base,{statics:{pathRe:/,?([achlmqrstvxz]),?/gi,pathRe2:/-/gi,pathSplitRe:/\s|,/g},svgString:"",constructor:function(d){var c=this;c.commands=[];c.params=[];c.cursor=null;c.startX=0;c.startY=0;if(d){c.fromSvgString(d)}},clear:function(){var b=this;b.params.length=0;b.commands.length=0;b.cursor=null;b.startX=0;b.startY=0;b.dirt()},dirt:function(){this.svgString=""},moveTo:function(e,f){var d=this;if(!d.cursor){d.cursor=[e,f]}d.params.push(e,f);d.commands.push("M");d.startX=e;d.startY=f;d.cursor[0]=e;d.cursor[1]=f;d.dirt()},lineTo:function(e,f){var d=this;if(!d.cursor){d.cursor=[e,f];d.params.push(e,f);d.commands.push("M")}else{d.params.push(e,f);d.commands.push("L")}d.cursor[0]=e;d.cursor[1]=f;d.dirt()},bezierCurveTo:function(n,l,h,m,i,j){var k=this;if(!k.cursor){k.moveTo(n,l)}k.params.push(n,l,h,m,i,j);k.commands.push("C");k.cursor[0]=i;k.cursor[1]=j;k.dirt()},quadraticCurveTo:function(f,h,g,i){var j=this;if(!j.cursor){j.moveTo(f,h)}j.bezierCurveTo((2*f+j.cursor[0])/3,(2*h+j.cursor[1])/3,(2*f+g)/3,(2*h+i)/3,g,i)},closePath:function(){var b=this;if(b.cursor){b.cursor=null;b.commands.push("Z");b.dirt()}},arcTo:function(U,ae,F,ag,aa,ab,J){var M=this;if(ab===undefined){ab=aa}if(J===undefined){J=0}if(!M.cursor){M.moveTo(U,ae);return}if(aa===0||ab===0){M.lineTo(U,ae);return}F-=U;ag-=ae;var R=M.cursor[0]-U,ad=M.cursor[1]-ae,P=F*ad-ag*R,ai,aj,Y,Q,Z,S,H=Math.sqrt(R*R+ad*ad),K=Math.sqrt(F*F+ag*ag),L,af,ah;if(P===0){M.lineTo(U,ae);return}if(ab!==aa){ai=Math.cos(J);aj=Math.sin(J);Y=ai/aa;Q=aj/ab;Z=-aj/aa;S=ai/ab;var O=Y*R+Q*ad;ad=Z*R+S*ad;R=O;O=Y*F+Q*ag;ag=Z*F+S*ag;F=O}else{R/=aa;ad/=ab;F/=aa;ag/=ab}af=R*K+F*H;ah=ad*K+ag*H;L=1/(Math.sin(Math.asin(Math.abs(P)/(H*K))*0.5)*Math.sqrt(af*af+ah*ah));af*=L;ah*=L;var V=(af*R+ah*ad)/(R*R+ad*ad),X=(af*F+ah*ag)/(F*F+ag*ag);var W=R*V-af,T=ad*V-ah,ac=F*X-af,G=ag*X-ah,I=Math.atan2(T,W),N=Math.atan2(G,ac);if(P>0){if(N<I){N+=Math.PI*2}}else{if(I<N){I+=Math.PI*2}}if(ab!==aa){af=ai*af*aa-aj*ah*ab+U;ah=aj*ah*ab+ai*ah*ab+ae;M.lineTo(ai*aa*W-aj*ab*T+af,aj*aa*W+ai*ab*T+ah);M.ellipse(af,ah,aa,ab,J,I,N,P<0)}else{af=af*aa+U;ah=ah*ab+ae;M.lineTo(aa*W+af,ab*T+ah);M.ellipse(af,ah,aa,ab,J,I,N,P<0)}},ellipse:function(w,y,B,D,i,s,A,z){var r=this,x=r.params,C=x.length,t,u,v;if(A-s>=Math.PI*2){r.ellipse(w,y,B,D,i,s,s+Math.PI,z);r.ellipse(w,y,B,D,i,s+Math.PI,A,z);return}if(!z){if(A<s){A+=Math.PI*2}t=r.approximateArc(x,w,y,B,D,i,s,A)}else{if(s<A){s+=Math.PI*2}t=r.approximateArc(x,w,y,B,D,i,A,s);for(u=C,v=x.length-2;u<v;u+=2,v-=2){var j=x[u];x[u]=x[v];x[v]=j;j=x[u+1];x[u+1]=x[v+1];x[v+1]=j}}if(!r.cursor){r.cursor=[x[x.length-2],x[x.length-1]];r.commands.push("M")}else{r.cursor[0]=x[x.length-2];r.cursor[1]=x[x.length-1];r.commands.push("L")}for(u=2;u<t;u+=6){r.commands.push("C")}r.dirt()},arc:function(g,i,h,k,l,j){this.ellipse(g,i,h,h,0,k,l,j)},rect:function(f,h,j,g){if(j==0||g==0){return}var i=this;i.moveTo(f,h);i.lineTo(f+j,h);i.lineTo(f+j,h+g);i.lineTo(f,h+g);i.closePath()},approximateArc:function(K,X,aa,R,S,ac,F,H){var ab=Math.cos(ac),D=Math.sin(ac),V=Math.cos(F),U=Math.sin(F),O=ab*V*R-D*U*S,E=-ab*U*R-D*V*S,Q=D*V*R+ab*U*S,G=-D*U*R+ab*V*S,T=Math.PI/2,M=2,W=O,I=E,Y=Q,J=G,ae=0.547443256150549,L,Z,P,af,N,ad;H-=F;if(H<0){H+=Math.PI*2}K.push(O+X,Q+aa);while(H>=T){K.push(W+I*ae+X,Y+J*ae+aa,W*ae+I+X,Y*ae+J+aa,I+X,J+aa);M+=6;H-=T;L=W;W=I;I=-L;L=Y;Y=J;J=-L}if(H){Z=(0.3294738052815987+0.012120855841304373*H)*H;P=Math.cos(H);af=Math.sin(H);N=P+Z*af;ad=af-Z*P;K.push(W+I*Z+X,Y+J*Z+aa,W*N+I*ad+X,Y*N+J*ad+aa,W*P+I*af+X,Y*P+J*af+aa);M+=6}return M},arcSvg:function(O,Q,G,L,B,E,V){if(O<0){O=-O}if(Q<0){Q=-Q}var A=this,D=A.cursor[0],S=A.cursor[1],X=(D-E)/2,z=(S-V)/2,U=Math.cos(G),F=Math.sin(G),J=X*U+z*F,C=-X*F+z*U,P=J/O,R=C/Q,I=P*P+R*R,T=(D+E)*0.5,W=(S+V)*0.5,M=0,N=0;if(I>=1){I=Math.sqrt(I);O*=I;Q*=I}else{I=Math.sqrt(1/I-1);if(L===B){I=-I}M=I*O*R;N=-I*Q*P;T+=U*M-F*N;W+=F*M+U*N}var H=Math.atan2((C-N)/Q,(J-M)/O),K=Math.atan2((-C-N)/Q,(-J-M)/O)-H;if(B){if(K<=0){K+=Math.PI*2}}else{if(K>=0){K-=Math.PI*2}}A.ellipse(T,W,O,Q,G,H,H+K,1-B)},fromSvgString:function(v){if(!v){return}var o=this,s,p={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0,A:7,C:6,H:1,L:2,M:2,Q:4,S:4,T:2,V:1,Z:0},q="",t,u,x=0,y=0,w=false,r,i,z;if(Ext.isString(v)){s=v.replace(Ext.draw.Path.pathRe," $1 ").replace(Ext.draw.Path.pathRe2," -").split(Ext.draw.Path.pathSplitRe)}else{if(Ext.isArray(v)){s=v.join(",").split(Ext.draw.Path.pathSplitRe)}}for(r=0,i=0;r<s.length;r++){if(s[r]!==""){s[i++]=s[r]}}s.length=i;o.clear();for(r=0;r<s.length;){q=w;w=s[r];z=(w.toUpperCase()!==w);r++;switch(w){case"M":o.moveTo(x=+s[r],y=+s[r+1]);r+=2;while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x=+s[r],y=+s[r+1]);r+=2}break;case"L":o.lineTo(x=+s[r],y=+s[r+1]);r+=2;while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x=+s[r],y=+s[r+1]);r+=2}break;case"A":while(r<i&&!p.hasOwnProperty(s[r])){o.arcSvg(+s[r],+s[r+1],+s[r+2]*Math.PI/180,+s[r+3],+s[r+4],x=+s[r+5],y=+s[r+6]);r+=7}break;case"C":while(r<i&&!p.hasOwnProperty(s[r])){o.bezierCurveTo(+s[r],+s[r+1],t=+s[r+2],u=+s[r+3],x=+s[r+4],y=+s[r+5]);r+=6}break;case"Z":o.closePath();break;case"m":o.moveTo(x+=+s[r],y+=+s[r+1]);r+=2;while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x+=+s[r],y+=+s[r+1]);r+=2}break;case"l":o.lineTo(x+=+s[r],y+=+s[r+1]);r+=2;while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x+=+s[r],y+=+s[r+1]);r+=2}break;case"a":while(r<i&&!p.hasOwnProperty(s[r])){o.arcSvg(+s[r],+s[r+1],+s[r+2]*Math.PI/180,+s[r+3],+s[r+4],x+=+s[r+5],y+=+s[r+6]);r+=7}break;case"c":while(r<i&&!p.hasOwnProperty(s[r])){o.bezierCurveTo(x+(+s[r]),y+(+s[r+1]),t=x+(+s[r+2]),u=y+(+s[r+3]),x+=+s[r+4],y+=+s[r+5]);r+=6}break;case"z":o.closePath();break;case"s":if(!(q==="c"||q==="C"||q==="s"||q==="S")){t=x;u=y}while(r<i&&!p.hasOwnProperty(s[r])){o.bezierCurveTo(x+x-t,y+y-u,t=x+(+s[r]),u=y+(+s[r+1]),x+=+s[r+2],y+=+s[r+3]);r+=4}break;case"S":if(!(q==="c"||q==="C"||q==="s"||q==="S")){t=x;u=y}while(r<i&&!p.hasOwnProperty(s[r])){o.bezierCurveTo(x+x-t,y+y-u,t=+s[r],u=+s[r+1],x=(+s[r+2]),y=(+s[r+3]));r+=4}break;case"q":while(r<i&&!p.hasOwnProperty(s[r])){o.quadraticCurveTo(t=x+(+s[r]),u=y+(+s[r+1]),x+=+s[r+2],y+=+s[r+3]);r+=4}break;case"Q":while(r<i&&!p.hasOwnProperty(s[r])){o.quadraticCurveTo(t=+s[r],u=+s[r+1],x=+s[r+2],y=+s[r+3]);r+=4}break;case"t":if(!(q==="q"||q==="Q"||q==="t"||q==="T")){t=x;u=y}while(r<i&&!p.hasOwnProperty(s[r])){o.quadraticCurveTo(t=x+x-t,u=y+y-u,x+=+s[r+1],y+=+s[r+2]);r+=2}break;case"T":if(!(q==="q"||q==="Q"||q==="t"||q==="T")){t=x;u=y}while(r<i&&!p.hasOwnProperty(s[r])){o.quadraticCurveTo(t=x+x-t,u=y+y-u,x=(+s[r+1]),y=(+s[r+2]));r+=2}break;case"h":while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x+=+s[r],y);r++}break;case"H":while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x=+s[r],y);r++}break;case"v":while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x,y+=+s[r]);r++}break;case"V":while(r<i&&!p.hasOwnProperty(s[r])){o.lineTo(x,y=+s[r]);r++}break}}},clone:function(){var d=this,c=new Ext.draw.Path();c.params=d.params.slice(0);c.commands=d.commands.slice(0);c.cursor=d.cursor?d.cursor.slice(0):null;c.startX=d.startX;c.startY=d.startY;c.svgString=d.svgString;return c},transform:function(p){if(p.isIdentity()){return}var x=p.getXX(),s=p.getYX(),i=p.getDX(),n=p.getXY(),t=p.getYY(),o=p.getDY(),w=this.params,v=0,u=w.length,q,r;for(;v<u;v+=2){q=w[v];r=w[v+1];w[v]=q*x+r*s+i;w[v+1]=q*n+r*t+o}this.dirt()},getDimension:function(m){if(!m){m={}}if(!this.commands||!this.commands.length){m.x=0;m.y=0;m.width=0;m.height=0;return m}m.left=Infinity;m.top=Infinity;m.right=-Infinity;m.bottom=-Infinity;var o=0,p=0,i=this.commands,l=this.params,n=i.length,j,k;for(;o<n;o++){switch(i[o]){case"M":case"L":j=l[p];k=l[p+1];m.left=Math.min(j,m.left);m.top=Math.min(k,m.top);m.right=Math.max(j,m.right);m.bottom=Math.max(k,m.bottom);p+=2;break;case"C":this.expandDimension(m,j,k,l[p],l[p+1],l[p+2],l[p+3],j=l[p+4],k=l[p+5]);p+=6;break}}m.x=m.left;m.y=m.top;m.width=m.right-m.left;m.height=m.bottom-m.top;return m},getDimensionWithTransform:function(s,y){if(!this.commands||!this.commands.length){if(!y){y={}}y.x=0;y.y=0;y.width=0;y.height=0;return y}y.left=Infinity;y.top=Infinity;y.right=-Infinity;y.bottom=-Infinity;var D=s.getXX(),v=s.getYX(),i=s.getDX(),j=s.getXY(),w=s.getYY(),r=s.getDY(),z=0,A=0,C=this.commands,B=this.params,x=C.length,t,u;for(;z<x;z++){switch(C[z]){case"M":case"L":t=B[A]*D+B[A+1]*v+i;u=B[A]*j+B[A+1]*w+r;y.left=Math.min(t,y.left);y.top=Math.min(u,y.top);y.right=Math.max(t,y.right);y.bottom=Math.max(u,y.bottom);A+=2;break;case"C":this.expandDimension(y,t,u,B[A]*D+B[A+1]*v+i,B[A]*j+B[A+1]*w+r,B[A+2]*D+B[A+3]*v+i,B[A+2]*j+B[A+3]*w+r,t=B[A+4]*D+B[A+5]*v+i,u=B[A+4]*j+B[A+5]*w+r);A+=6;break}}if(!y){y={}}y.x=y.left;y.y=y.top;y.width=y.right-y.left;y.height=y.bottom-y.top;return y},expandDimension:function(w,B,l,u,y,v,A,C,r){var t=this,z=w.left,D=w.right,b=w.top,s=w.bottom,x=t.dim||(t.dim=[]);t.curveDimension(B,u,v,C,x);z=Math.min(z,x[0]);D=Math.max(D,x[1]);t.curveDimension(l,y,A,r,x);b=Math.min(b,x[0]);s=Math.max(s,x[1]);w.left=z;w.right=D;w.top=b;w.bottom=s},curveDimension:function(b,d,t,u,w){var v=3*(-b+3*(d-t)+u),x=6*(b-2*d+t),y=-3*(b-d),c,r,z=Math.min(b,u),s=Math.max(b,u),a;if(v===0){if(x===0){w[0]=z;w[1]=s;return}else{c=-y/x;if(0<c&&c<1){r=this.interpolate(b,d,t,u,c);z=Math.min(z,r);s=Math.max(s,r)}}}else{a=x*x-4*v*y;if(a>=0){a=Math.sqrt(a);c=(a-x)/2/v;if(0<c&&c<1){r=this.interpolate(b,d,t,u,c);z=Math.min(z,r);s=Math.max(s,r)}if(a>0){c-=a/v;if(0<c&&c<1){r=this.interpolate(b,d,t,u,c);z=Math.min(z,r);s=Math.max(s,r)}}}}w[0]=z;w[1]=s},interpolate:function(k,l,a,b,d){if(d===0){return k}if(d===1){return b}var c=(1-d)/d;return d*d*d*(b+c*(3*a+c*(3*l+c*k)))},fromStripes:function(j){var l=this,n=0,m=j.length,h,i,k;l.clear();for(;n<m;n++){k=j[n];l.params.push.apply(l.params,k);l.commands.push("M");for(h=2,i=k.length;h<i;h+=6){l.commands.push("C")}}if(!l.cursor){l.cursor=[]}l.cursor[0]=l.params[l.params.length-2];l.cursor[1]=l.params[l.params.length-1];l.dirt()},toStripes:function(t){var j=t||[],i,q,r,A,B,u,v,w,x,z=this.commands,y=this.params,s=z.length;for(w=0,x=0;w<s;w++){switch(z[w]){case"M":i=[u=A=y[x++],v=B=y[x++]];j.push(i);break;case"L":q=y[x++];r=y[x++];i.push((A+A+q)/3,(B+B+r)/3,(A+q+q)/3,(B+r+r)/3,A=q,B=r);break;case"C":i.push(y[x++],y[x++],y[x++],y[x++],A=y[x++],B=y[x++]);break;case"Z":q=u;r=v;i.push((A+A+q)/3,(B+B+r)/3,(A+q+q)/3,(B+r+r)/3,A=q,B=r);break}}return j},updateSvgString:function(){var g=[],h=this.commands,i=this.params,j=h.length,k=0,l=0;for(;k<j;k++){switch(h[k]){case"M":g.push("M"+i[l]+","+i[l+1]);l+=2;break;case"L":g.push("L"+i[l]+","+i[l+1]);l+=2;break;case"C":g.push("C"+i[l]+","+i[l+1]+" "+i[l+2]+","+i[l+3]+" "+i[l+4]+","+i[l+5]);l+=6;break;case"Z":g.push("Z");break}}this.svgString=g.join("")},toString:function(){if(!this.svgString){this.updateSvgString()}return this.svgString}},3,0,0,0,0,0,[Ext.draw,"Path"],0));Ext.define("Ext.draw.overrides.Path",{override:"Ext.draw.Path",rayOrigin:{x:-10000,y:-10000},isPointInPath:function(r,s){var t=this,B=t.commands,i=Ext.draw.PathUtil,j=t.rayOrigin,y=t.params,u=B.length,z=null,A=null,C=0,D=0,v=0,w,x;for(w=0,x=0;w<u;w++){switch(B[w]){case"M":if(z!==null){if(i.linesIntersection(z,A,C,D,j.x,j.y,r,s)){v+=1}}z=C=y[x];A=D=y[x+1];x+=2;break;case"L":if(i.linesIntersection(C,D,y[x],y[x+1],j.x,j.y,r,s)){v+=1}C=y[x];D=y[x+1];x+=2;break;case"C":v+=i.cubicLineIntersections(C,y[x],y[x+2],y[x+4],D,y[x+1],y[x+3],y[x+5],j.x,j.y,r,s).length;C=y[x+4];D=y[x+5];x+=6;break;case"Z":if(z!==null){if(i.linesIntersection(z,A,C,D,j.x,j.y,r,s)){v+=1}}break}}return v%2===1},isPointOnPath:function(j,p){var q=this,x=q.commands,i=Ext.draw.PathUtil,u=q.params,r=x.length,v=null,w=null,y=0,z=0,s,t;for(s=0,t=0;s<r;s++){switch(x[s]){case"M":if(v!==null){if(i.pointOnLine(v,w,y,z,j,p)){return true}}v=y=u[t];w=z=u[t+1];t+=2;break;case"L":if(i.pointOnLine(y,z,u[t],u[t+1],j,p)){return true}y=u[t];z=u[t+1];t+=2;break;case"C":if(i.pointOnCubic(y,u[t],u[t+2],u[t+4],z,u[t+1],u[t+3],u[t+5],j,p)){return true}y=u[t+4];z=u[t+5];t+=6;break;case"Z":if(v!==null){if(i.pointOnLine(v,w,y,z,j,p)){return true}}break}}return false},getSegmentIntersections:function(A,O,B,P,C,Q,F,R){var j=this,L=arguments.length,y=Ext.draw.PathUtil,M=j.commands,z=j.params,J=M.length,H=null,I=null,K=0,N=0,i=[],D,G,E;for(D=0,G=0;D<J;D++){switch(M[D]){case"M":if(H!==null){switch(L){case 4:E=y.linesIntersection(H,I,K,N,A,O,B,P);if(E){i.push(E)}break;case 8:E=y.cubicLineIntersections(A,B,C,F,O,P,Q,R,H,I,K,N);i.push.apply(i,E);break}}H=K=z[G];I=N=z[G+1];G+=2;break;case"L":switch(L){case 4:E=y.linesIntersection(K,N,z[G],z[G+1],A,O,B,P);if(E){i.push(E)}break;case 8:E=y.cubicLineIntersections(A,B,C,F,O,P,Q,R,K,N,z[G],z[G+1]);i.push.apply(i,E);break}K=z[G];N=z[G+1];G+=2;break;case"C":switch(L){case 4:E=y.cubicLineIntersections(K,z[G],z[G+2],z[G+4],N,z[G+1],z[G+3],z[G+5],A,O,B,P);i.push.apply(i,E);break;case 8:E=y.cubicsIntersections(K,z[G],z[G+2],z[G+4],N,z[G+1],z[G+3],z[G+5],A,B,C,F,O,P,Q,R);i.push.apply(i,E);break}K=z[G+4];N=z[G+5];G+=6;break;case"Z":if(H!==null){switch(L){case 4:E=y.linesIntersection(H,I,K,N,A,O,B,P);if(E){i.push(E)}break;case 8:E=y.cubicLineIntersections(A,B,C,F,O,P,Q,R,H,I,K,N);i.push.apply(i,E);break}}break}}return i},getIntersections:function(i){var p=this,x=p.commands,t=p.params,q=x.length,u=null,v=null,y=0,z=0,w=[],r,s,j;for(r=0,s=0;r<q;r++){switch(x[r]){case"M":if(u!==null){j=i.getSegmentIntersections.call(i,u,v,y,z);w.push.apply(w,j)}u=y=t[s];v=z=t[s+1];s+=2;break;case"L":j=i.getSegmentIntersections.call(i,y,z,t[s],t[s+1]);w.push.apply(w,j);y=t[s];z=t[s+1];s+=2;break;case"C":j=i.getSegmentIntersections.call(i,y,z,t[s],t[s+1],t[s+2],t[s+3],t[s+4],t[s+5]);w.push.apply(w,j);y=t[s+4];z=t[s+5];s+=6;break;case"Z":if(u!==null){j=i.getSegmentIntersections.call(i,u,v,y,z);w.push.apply(w,j)}break}}return w}});(Ext.cmd.derive("Ext.draw.sprite.Path",Ext.draw.sprite.Sprite,{type:"path",isPath:true,inheritableStatics:{def:{processors:{path:function(c,d){if(!(c instanceof Ext.draw.Path)){c=new Ext.draw.Path(c)}return c}},aliases:{d:"path"},triggers:{path:"bbox"},updaters:{path:function(d){var c=d.path;if(!c||c.bindAttr!==d){c=new Ext.draw.Path();c.bindAttr=d;d.path=c}c.clear();this.updatePath(c,d);this.scheduleUpdater(d,"bbox",["path"])}}}},updatePlainBBox:function(b){if(this.attr.path){this.attr.path.getDimension(b)}},updateTransformedBBox:function(b){if(this.attr.path){this.attr.path.getDimensionWithTransform(this.attr.matrix,b)}},render:function(e,h){var g=this.attr.matrix,f=this.attr;if(!f.path||f.path.params.length===0){return}g.toContext(h);h.appendPath(f.path);h.fillStroke(f)},updatePath:function(c,d){}},0,0,0,0,["Ext.draw.Sprite","sprite.path"],0,[Ext.draw.sprite,"Path"],0));Ext.define("Ext.draw.overrides.sprite.Path",{override:"Ext.draw.sprite.Path",isPointInPath:function(n,j){var h=this.attr;if(h.fillStyle===Ext.draw.Color.RGBA_NONE){return this.isPointOnPath(n,j)}var l=h.path,m=h.matrix,k,i;if(!m.isIdentity()){k=l.params.slice(0);l.transform(h.matrix)}i=l.isPointInPath(n,j);if(k){l.params=k}return i},isPointOnPath:function(n,j){var h=this.attr,l=h.path,m=h.matrix,k,i;if(!m.isIdentity()){k=l.params.slice(0);l.transform(h.matrix)}i=l.isPointOnPath(n,j);if(k){l.params=k}return i},hitTest:function(p,m){var t=this,v=t.attr,n=v.path,r=v.matrix,q=p[0],s=p[1],u=(arguments.callee.$previous||Ext.draw.sprite.Sprite.prototype.hitTest).call(this,p,m),o=null,x,w;if(!u){return o}m=m||Ext.draw.sprite.Sprite.defaultHitTestOptions;if(!r.isIdentity()){x=n.params.slice(0);n.transform(v.matrix)}if(m.fill&&m.stroke){w=v.fillStyle!==Ext.draw.Color.NONE&&v.fillStyle!==Ext.draw.Color.RGBA_NONE;if(w){if(n.isPointInPath(q,s)){o={sprite:t}}}else{if(n.isPointInPath(q,s)||n.isPointOnPath(q,s)){o={sprite:t}}}}else{if(m.stroke&&!m.fill){if(n.isPointOnPath(q,s)){o={sprite:t}}}else{if(m.fill&&!m.stroke){if(n.isPointInPath(q,s)){o={sprite:t}}}}}if(x){n.params=x}return o},getIntersections:function(k){if(!(k.isSprite&&k.isPath)){return[]}var p=this.attr,q=k.attr,l=p.path,m=q.path,n=p.matrix,t=q.matrix,r,o,s;if(!n.isIdentity()){r=l.params.slice(0);l.transform(p.matrix)}if(!t.isIdentity()){o=m.params.slice(0);m.transform(q.matrix)}s=l.getIntersections(m);if(r){l.params=r}if(o){m.params=o}return s}});(Ext.cmd.derive("Ext.draw.sprite.Circle",Ext.draw.sprite.Path,{type:"circle",inheritableStatics:{def:{processors:{cx:"number",cy:"number",r:"number"},aliases:{radius:"r",x:"cx",y:"cy",centerX:"cx",centerY:"cy"},defaults:{cx:0,cy:0,r:4},triggers:{cx:"path",cy:"path",r:"path"}}},updatePlainBBox:function(j){var f=this.attr,g=f.cx,h=f.cy,i=f.r;j.x=g-i;j.y=h-i;j.width=i+i;j.height=i+i},updateTransformedBBox:function(q){var n=this.attr,o=n.cx,p=n.cy,t=n.r,m=n.matrix,k=m.getScaleX(),l=m.getScaleY(),r,s;r=k*t;s=l*t;q.x=m.x(o,p)-r;q.y=m.y(o,p)-s;q.width=r+r;q.height=s+s},updatePath:function(c,d){c.arc(d.cx,d.cy,d.r,0,Math.PI*2,false)}},0,0,0,0,["sprite.circle"],0,[Ext.draw.sprite,"Circle"],0));(Ext.cmd.derive("Ext.draw.sprite.Arc",Ext.draw.sprite.Circle,{type:"arc",inheritableStatics:{def:{processors:{startAngle:"number",endAngle:"number",anticlockwise:"bool"},aliases:{from:"startAngle",to:"endAngle",start:"startAngle",end:"endAngle"},defaults:{startAngle:0,endAngle:Math.PI*2,anticlockwise:false},triggers:{startAngle:"path",endAngle:"path",anticlockwise:"path"}}},updatePath:function(c,d){c.arc(d.cx,d.cy,d.r,d.startAngle,d.endAngle,d.anticlockwise)}},0,0,0,0,["sprite.arc"],0,[Ext.draw.sprite,"Arc"],0));(Ext.cmd.derive("Ext.draw.sprite.Arrow",Ext.draw.sprite.Path,{inheritableStatics:{def:{processors:{x:"number",y:"number",size:"number"},defaults:{x:0,y:0,size:4},triggers:{x:"path",y:"path",size:"path"}}},updatePath:function(i,f){var j=f.size*1.5,g=f.x-f.lineWidth/2,h=f.y;i.fromSvgString("M".concat(g-j*0.7,",",h-j*0.4,"l",[j*0.6,0,0,-j*0.4,j,j*0.8,-j,j*0.8,0,-j*0.4,-j*0.6,0],"z"))}},0,0,0,0,["sprite.arrow"],0,[Ext.draw.sprite,"Arrow"],0));(Ext.cmd.derive("Ext.draw.sprite.Composite",Ext.draw.sprite.Sprite,{type:"composite",isComposite:true,config:{sprites:[]},constructor:function(){this.sprites=[];this.sprites.map={};Ext.draw.sprite.Sprite.prototype.constructor.apply(this,arguments)},add:function(h){if(!h){return null}if(!h.isSprite){h=Ext.create("sprite."+h.type,h);h.setParent(this);h.setSurface(this.getSurface())}var g=this,f=g.attr,e=h.applyTransformations;h.applyTransformations=function(){if(h.attr.dirtyTransform){f.dirtyTransform=true;f.bbox.plain.dirty=true;f.bbox.transform.dirty=true}e.call(h)};g.sprites.push(h);g.sprites.map[h.id]=h.getId();f.bbox.plain.dirty=true;f.bbox.transform.dirty=true;return h},updateSurface:function(e){for(var d=0,f=this.sprites.length;d<f;d++){this.sprites[d].setSurface(e)}},addAll:function(c){if(c.isSprite||c.type){this.add(c)}else{if(Ext.isArray(c)){var d=0;while(d<c.length){this.add(c[d++])}}}},updatePlainBBox:function(n){var p=this,s=Infinity,m=-Infinity,o=Infinity,t=-Infinity,l,i,r,q;for(r=0,q=p.sprites.length;r<q;r++){l=p.sprites[r];l.applyTransformations();i=l.getBBox();if(s>i.x){s=i.x}if(m<i.x+i.width){m=i.x+i.width}if(o>i.y){o=i.y}if(t<i.y+i.height){t=i.y+i.height}}n.x=s;n.y=o;n.width=m-s;n.height=t-o},render:function(h,g,i){var k=this.attr.matrix,l,j;k.toContext(g);for(l=0,j=this.sprites.length;l<j;l++){h.renderSprite(this.sprites[l],i)}},destroy:function(){var h=this,g=h.sprites,e=g.length,f;Ext.draw.sprite.Sprite.prototype.destroy.call(this);for(f=0;f<e;f++){g[f].destroy()}g.length=0}},1,0,0,0,["sprite.composite"],0,[Ext.draw.sprite,"Composite"],0));(Ext.cmd.derive("Ext.draw.sprite.Cross",Ext.draw.sprite.Path,{inheritableStatics:{def:{processors:{x:"number",y:"number",size:"number"},defaults:{x:0,y:0,size:4},triggers:{x:"path",y:"path",size:"path"}}},updatePath:function(i,f){var j=f.size/1.7,g=f.x-f.lineWidth/2,h=f.y;i.fromSvgString("M".concat(g-j,",",h,"l",[-j,-j,j,-j,j,j,j,-j,j,j,-j,j,j,j,-j,j,-j,-j,-j,j,-j,-j,"z"]))}},0,0,0,0,["sprite.cross"],0,[Ext.draw.sprite,"Cross"],0));(Ext.cmd.derive("Ext.draw.sprite.Diamond",Ext.draw.sprite.Path,{inheritableStatics:{def:{processors:{x:"number",y:"number",size:"number"},defaults:{x:0,y:0,size:4},triggers:{x:"path",y:"path",size:"path"}}},updatePath:function(i,f){var j=f.size*1.25,g=f.x-f.lineWidth/2,h=f.y;i.fromSvgString(["M",g,h-j,"l",j,j,-j,j,-j,-j,j,-j,"z"])}},0,0,0,0,["sprite.diamond"],0,[Ext.draw.sprite,"Diamond"],0));(Ext.cmd.derive("Ext.draw.sprite.Ellipse",Ext.draw.sprite.Path,{type:"ellipse",inheritableStatics:{def:{processors:{cx:"number",cy:"number",rx:"number",ry:"number",axisRotation:"number"},aliases:{radius:"r",x:"cx",y:"cy",centerX:"cx",centerY:"cy",radiusX:"rx",radiusY:"ry"},defaults:{cx:0,cy:0,rx:1,ry:1,axisRotation:0},triggers:{cx:"path",cy:"path",rx:"path",ry:"path",axisRotation:"path"}}},updatePlainBBox:function(l){var g=this.attr,h=g.cx,i=g.cy,j=g.rx,k=g.ry;l.x=h-j;l.y=i-k;l.width=j+j;l.height=k+k},updateTransformedBBox:function(C){var y=this.attr,A=y.cx,B=y.cy,D=y.rx,E=y.ry,v=E/D,u=y.matrix.clone(),F,h,w,x,r,s,t,z;u.append(1,0,0,v,0,B*(1-v));F=u.getXX();w=u.getYX();r=u.getDX();h=u.getXY();x=u.getYY();s=u.getDY();t=Math.sqrt(F*F+w*w)*D;z=Math.sqrt(h*h+x*x)*D;C.x=A*F+B*w+r-t;C.y=A*h+B*x+s-z;C.width=t+t;C.height=z+z},updatePath:function(c,d){c.ellipse(d.cx,d.cy,d.rx,d.ry,d.axisRotation,0,Math.PI*2,false)}},0,0,0,0,["sprite.ellipse"],0,[Ext.draw.sprite,"Ellipse"],0));(Ext.cmd.derive("Ext.draw.sprite.EllipticalArc",Ext.draw.sprite.Ellipse,{type:"ellipticalArc",inheritableStatics:{def:{processors:{startAngle:"number",endAngle:"number",anticlockwise:"bool"},aliases:{from:"startAngle",to:"endAngle",start:"startAngle",end:"endAngle"},defaults:{startAngle:0,endAngle:Math.PI*2,anticlockwise:false},triggers:{startAngle:"path",endAngle:"path",anticlockwise:"path"}}},updatePath:function(c,d){c.ellipse(d.cx,d.cy,d.rx,d.ry,d.axisRotation,d.startAngle,d.endAngle,d.anticlockwise)}},0,0,0,0,["sprite.ellipticalArc"],0,[Ext.draw.sprite,"EllipticalArc"],0));(Ext.cmd.derive("Ext.draw.sprite.Rect",Ext.draw.sprite.Path,{type:"rect",inheritableStatics:{def:{processors:{x:"number",y:"number",width:"number",height:"number",radius:"number"},aliases:{},triggers:{x:"path",y:"path",width:"path",height:"path",radius:"path"},defaults:{x:0,y:0,width:8,height:8,radius:0}}},updatePlainBBox:function(c){var d=this.attr;c.x=d.x;c.y=d.y;c.width=d.width;c.height=d.height},updateTransformedBBox:function(d,c){this.attr.matrix.transformBBox(c,this.attr.radius,d)},updatePath:function(k,m){var n=m.x,j=m.y,l=m.width,h=m.height,i=Math.min(m.radius,Math.abs(m.height)*0.5,Math.abs(m.width)*0.5);if(i===0){k.rect(n,j,l,h)}else{k.moveTo(n+i,j);k.arcTo(n+l,j,n+l,j+h,i);k.arcTo(n+l,j+h,n,j+h,i);k.arcTo(n,j+h,n,j,i);k.arcTo(n,j,n+i,j,i)}}},0,0,0,0,["sprite.rect"],0,[Ext.draw.sprite,"Rect"],0));(Ext.cmd.derive("Ext.draw.sprite.Image",Ext.draw.sprite.Rect,{type:"image",statics:{imageLoaders:{}},inheritableStatics:{def:{processors:{src:"string"},defaults:{src:"",width:null,height:null}}},render:function(z,i){var t=this,u=t.attr,p=u.matrix,B=u.src,r=u.x,s=u.y,A=u.width,q=u.height,v=Ext.draw.sprite.Image.imageLoaders[B],w,y,x;if(v&&v.done){p.toContext(i);y=v.image;i.drawImage(y,r,s,A||(y.naturalWidth||y.width)/z.devicePixelRatio,q||(y.naturalHeight||y.height)/z.devicePixelRatio)}else{if(!v){w=new Image();v=Ext.draw.sprite.Image.imageLoaders[B]={image:w,done:false,pendingSprites:[t],pendingSurfaces:[z]};w.width=A;w.height=q;w.onload=function(){if(!v.done){v.done=true;for(x=0;x<v.pendingSprites.length;x++){v.pendingSprites[x].setDirty(true)}for(x in v.pendingSurfaces){v.pendingSurfaces[x].renderFrame()}}};w.src=B}else{Ext.Array.include(v.pendingSprites,t);Ext.Array.include(v.pendingSurfaces,z)}}}},0,0,0,0,["sprite.image"],0,[Ext.draw.sprite,"Image"],0));(Ext.cmd.derive("Ext.draw.sprite.Instancing",Ext.draw.sprite.Sprite,{type:"instancing",isInstancing:true,config:{template:null},instances:null,applyTemplate:function(b){if(!b.isSprite){if(!b.xclass&&!b.type){b.type="circle"}b=Ext.create(b.xclass||"sprite."+b.type,b)}b.setParent(this);return b},updateTemplate:function(d,c){if(c){delete c.ownAttr}d.setSurface(this.getSurface());d.ownAttr=d.attr;this.clearAll()},updateSurface:function(d){var c=this.getTemplate();if(c){c.setSurface(d)}},get:function(b){return this.instances[b]},getCount:function(){return this.instances.length},clearAll:function(){var b=this.getTemplate();b.attr.children=this.instances=[];this.position=0},createInstance:function(k,i,l){var j=this.getTemplate(),g=j.attr,h=Ext.Object.chain(g);j.topModifier.prepareAttributes(h);j.attr=h;j.setAttributes(k,i,l);h.template=j;this.instances.push(h);j.attr=g;this.position++;return h},getBBox:function(){return null},getBBoxFor:function(f,i){var j=this.getTemplate(),g=j.attr,h;j.attr=this.instances[f];h=j.getBBox(i);j.attr=g;return h},isVisible:function(){var d=this.attr,f=this.getParent(),e;e=f&&f.isSurface&&!d.hidden&&d.globalAlpha;return !!e},isInstanceVisible:function(l){var j=this,k=j.getTemplate(),g=k.attr,i=j.instances,h=false;if(!Ext.isNumber(l)||l<0||l>=i.length||!j.isVisible()){return h}k.attr=i[l];h=k.isVisible(point,options);k.attr=g;return h},render:function(u,i,s,o){var p=this,n=p.getTemplate(),m=p.attr.matrix,t=n.attr,v=p.instances,r,q=p.position;m.toContext(i);n.preRender(u,i,s,o);n.useAttributes(i,o);for(r=0;r<q;r++){if(v[r].dirtyZIndex){break}}for(r=0;r<q;r++){if(v[r].hidden){continue}i.save();n.attr=v[r];n.useAttributes(i,o);n.render(u,i,s,o);i.restore()}n.attr=t},setAttributesFor:function(l,j,i){var k=this.getTemplate(),g=k.attr,h=this.instances[l];if(!h){return}k.attr=h;if(i){j=Ext.apply({},j)}else{j=k.self.def.normalize(j)}k.topModifier.pushDown(h,j);k.attr=g},destroy:function(){var c=this,d=c.getTemplate();c.instances=null;if(d){d.destroy()}Ext.draw.sprite.Sprite.prototype.destroy.call(this)}},0,0,0,0,["sprite.instancing"],0,[Ext.draw.sprite,"Instancing"],0));Ext.define("Ext.draw.overrides.sprite.Instancing",{override:"Ext.draw.sprite.Instancing",hitTest:function(m,i){var n=this,l=n.getTemplate(),q=l.attr,r=n.instances,o=r.length,p=0,k=null;if(!n.isVisible()){return k}for(;p<o;p++){l.attr=r[p];k=l.hitTest(m,i);if(k){k.isInstance=true;k.template=k.sprite;k.sprite=this;k.instance=r[p];k.index=p;return k}}l.attr=q;return k}});(Ext.cmd.derive("Ext.draw.sprite.Line",Ext.draw.sprite.Sprite,{type:"line",inheritableStatics:{def:{processors:{fromX:"number",fromY:"number",toX:"number",toY:"number"},defaults:{fromX:0,fromY:0,toX:1,toY:1,strokeStyle:"black"},aliases:{x1:"fromX",y1:"fromY",x2:"toX",y2:"toY"}}},updateLineBBox:function(K,D,u,F,v,G){var x=this.attr,w=x.matrix,E=x.lineWidth/2,z,A,I,J,B,C,y;if(D){y=w.transformPoint([u,F]);u=y[0];F=y[1];y=w.transformPoint([v,G]);v=y[0];G=y[1]}z=Math.min(u,v);I=Math.max(u,v);A=Math.min(F,G);J=Math.max(F,G);var p=Math.atan2(I-z,J-A),L=Math.sin(p),H=Math.cos(p),B=E*H,C=E*L;z-=B;A-=C;I+=B;J+=C;K.x=z;K.y=A;K.width=I-z;K.height=J-A},updatePlainBBox:function(c){var d=this.attr;this.updateLineBBox(c,false,d.fromX,d.fromY,d.toX,d.toY)},updateTransformedBBox:function(d,f){var e=this.attr;this.updateLineBBox(d,true,e.fromX,e.fromY,e.toX,e.toY)},render:function(e,h){var f=this.attr,g=this.attr.matrix;g.toContext(h);h.beginPath();h.moveTo(f.fromX,f.fromY);h.lineTo(f.toX,f.toY);h.stroke()}},0,0,0,0,["sprite.line"],0,[Ext.draw.sprite,"Line"],0));(Ext.cmd.derive("Ext.draw.sprite.Plus",Ext.draw.sprite.Path,{inheritableStatics:{def:{processors:{x:"number",y:"number",size:"number"},defaults:{x:0,y:0,size:4},triggers:{x:"path",y:"path",size:"path"}}},updatePath:function(i,f){var j=f.size/1.3,g=f.x-f.lineWidth/2,h=f.y;i.fromSvgString("M".concat(g-j/2,",",h-j/2,"l",[0,-j,j,0,0,j,j,0,0,j,-j,0,0,j,-j,0,0,-j,-j,0,0,-j,"z"]))}},0,0,0,0,["sprite.plus"],0,[Ext.draw.sprite,"Plus"],0));(Ext.cmd.derive("Ext.draw.sprite.Sector",Ext.draw.sprite.Path,{type:"sector",inheritableStatics:{def:{processors:{centerX:"number",centerY:"number",startAngle:"number",endAngle:"number",startRho:"number",endRho:"number",margin:"number"},aliases:{rho:"endRho"},triggers:{centerX:"path,bbox",centerY:"path,bbox",startAngle:"path,bbox",endAngle:"path,bbox",startRho:"path,bbox",endRho:"path,bbox",margin:"path,bbox"},defaults:{centerX:0,centerY:0,startAngle:0,endAngle:0,startRho:0,endRho:150,margin:0,path:"M 0,0"}}},getMidAngle:function(){return this.midAngle||0},updatePath:function(k,m){var n=Math.min(m.startAngle,m.endAngle),r=Math.max(m.startAngle,m.endAngle),s=this.midAngle=(n+r)*0.5,q=m.margin,o=m.centerX,p=m.centerY,l=Math.min(m.startRho,m.endRho),t=Math.max(m.startRho,m.endRho);if(q){o+=q*Math.cos(s);p+=q*Math.sin(s)}k.moveTo(o+l*Math.cos(n),p+l*Math.sin(n));k.lineTo(o+t*Math.cos(n),p+t*Math.sin(n));k.arc(o,p,t,n,r,false);k.lineTo(o+l*Math.cos(r),p+l*Math.sin(r));k.arc(o,p,l,r,n,true)}},0,0,0,0,["sprite.sector"],0,[Ext.draw.sprite,"Sector"],0));(Ext.cmd.derive("Ext.draw.sprite.Square",Ext.draw.sprite.Rect,{inheritableStatics:{def:{processors:{size:"number"},defaults:{size:4},triggers:{size:"size"},updaters:{size:function(e){var f=e.size,d=e.lineWidth/2;this.setAttributes({x:e.x-f-d,y:e.y-f,height:2*f,width:2*f})}}}}},0,0,0,0,["sprite.square"],0,[Ext.draw.sprite,"Square"],0));(Ext.cmd.derive("Ext.draw.TextMeasurer",Ext.Base,{singleton:true,measureDiv:null,measureCache:{},precise:Ext.isIE8,measureDivTpl:{tag:"div",style:{overflow:"hidden",position:"relative","float":"left",width:0,height:0},children:{tag:"div",style:{display:"block",position:"absolute",x:-100000,y:-100000,padding:0,margin:0,"z-index":-100000,"white-space":"nowrap"}}},actualMeasureText:function(j,h){var l=Ext.draw.TextMeasurer,k=l.measureDiv,i=100000,n;if(!k){var m=Ext.Element.create({style:{overflow:"hidden",position:"relative","float":"left",width:0,height:0}});l.measureDiv=k=Ext.Element.create({style:{position:"absolute",x:i,y:i,"z-index":-i,"white-space":"nowrap",display:"block",padding:0,margin:0}});Ext.getBody().appendChild(m);m.appendChild(k)}if(h){k.setStyle({font:h,lineHeight:"normal"})}k.setText("("+j+")");n=k.getSize();k.setText("()");n.width-=k.getSize().width;return n},measureTextSingleLine:function(o,s){if(this.precise){return this.preciseMeasureTextSingleLine(o,s)}o=o.toString();var v=this.measureCache,p=o.split(""),t=0,n=0,i,u,r,q,m;if(!v[s]){v[s]={}}v=v[s];if(v[o]){return v[o]}for(r=0,q=p.length;r<q;r++){u=p[r];if(!(i=v[u])){m=this.actualMeasureText(u,s);i=v[u]=m}t+=i.width;n=Math.max(n,i.height)}return v[o]={width:t,height:n}},preciseMeasureTextSingleLine:function(f,e){f=f.toString();var d=this.measureDiv||(this.measureDiv=Ext.getBody().createChild(this.measureDivTpl).down("div"));d.setStyle({font:e||""});return Ext.util.TextMetrics.measure(d,f)},measureText:function(n,q){var k=n.split("\n"),o=k.length,m=0,r=0,i,p,l;if(o===1){return this.measureTextSingleLine(n,q)}l=[];for(p=0;p<o;p++){i=this.measureTextSingleLine(k[p],q);l.push(i);m+=i.height;r=Math.max(r,i.width)}return{width:r,height:m,sizes:l}}},0,0,0,0,0,0,[Ext.draw,"TextMeasurer"],0));(Ext.cmd.derive("Ext.draw.sprite.Text",Ext.draw.sprite.Sprite,function(){var g={"xx-small":true,"x-small":true,small:true,medium:true,large:true,"x-large":true,"xx-large":true};var e={normal:true,bold:true,bolder:true,lighter:true,100:true,200:true,300:true,400:true,500:true,600:true,700:true,800:true,900:true};var f={start:"start",left:"start",center:"center",middle:"center",end:"end",right:"end"};var h={top:"top",hanging:"hanging",middle:"middle",center:"middle",alphabetic:"alphabetic",ideographic:"ideographic",bottom:"bottom"};return{type:"text",lineBreakRe:/\r?\n/g,inheritableStatics:{def:{animationProcessors:{text:"text"},processors:{x:"number",y:"number",text:"string",fontSize:function(a){if(Ext.isNumber(+a)){return a+"px"}else{if(a.match(Ext.dom.Element.unitRe)){return a}else{if(a in g){return a}}}},fontStyle:"enums(,italic,oblique)",fontVariant:"enums(,small-caps)",fontWeight:function(a){if(a in e){return String(a)}else{return""}},fontFamily:"string",textAlign:function(a){return f[a]||"center"},textBaseline:function(a){return h[a]||"alphabetic"},font:"string"},aliases:{"font-size":"fontSize","font-family":"fontFamily","font-weight":"fontWeight","font-variant":"fontVariant","text-anchor":"textAlign"},defaults:{fontStyle:"",fontVariant:"",fontWeight:"",fontSize:"10px",fontFamily:"sans-serif",font:"10px sans-serif",textBaseline:"alphabetic",textAlign:"start",strokeStyle:"rgba(0, 0, 0, 0)",fillStyle:"#000",x:0,y:0,text:""},triggers:{fontStyle:"fontX,bbox",fontVariant:"fontX,bbox",fontWeight:"fontX,bbox",fontSize:"fontX,bbox",fontFamily:"fontX,bbox",font:"font,bbox,canvas",textBaseline:"bbox",textAlign:"bbox",x:"bbox",y:"bbox",text:"bbox"},updaters:{fontX:"makeFontShorthand",font:"parseFontShorthand"}}},constructor:function(b){if(b&&b.font){b=Ext.clone(b);for(var a in b){if(a!=="font"&&a.indexOf("font")===0){delete b[a]}}}Ext.draw.sprite.Sprite.prototype.constructor.call(this,b)},fontValuesMap:{italic:"fontStyle",oblique:"fontStyle","small-caps":"fontVariant",bold:"fontWeight",bolder:"fontWeight",lighter:"fontWeight","100":"fontWeight","200":"fontWeight","300":"fontWeight","400":"fontWeight","500":"fontWeight","600":"fontWeight","700":"fontWeight","800":"fontWeight","900":"fontWeight","xx-small":"fontSize","x-small":"fontSize",small:"fontSize",medium:"fontSize",large:"fontSize","x-large":"fontSize","xx-large":"fontSize"},makeFontShorthand:function(b){var a=[];if(b.fontStyle){a.push(b.fontStyle)}if(b.fontVariant){a.push(b.fontVariant)}if(b.fontWeight){a.push(b.fontWeight)}if(b.fontSize){a.push(b.fontSize)}if(b.fontFamily){a.push(b.fontFamily)}this.setAttributes({font:a.join(" ")},true)},parseFontShorthand:function(o){var b=o.font,d=b.length,c={},a=this.fontValuesMap,t=0,p,r,s,q;while(t<d&&p!==-1){p=b.indexOf(" ",t);if(p<0){s=b.substr(t)}else{if(p>t){s=b.substr(t,p-t)}else{continue}}r=s.indexOf("/");if(r>0){s=s.substr(0,r)}else{if(r===0){continue}}if(s!=="normal"&&s!=="inherit"){q=a[s];if(q){c[q]=s}else{if(s.match(Ext.dom.Element.unitRe)){c.fontSize=s}else{c.fontFamily=b.substr(t);break}}}t=p+1}if(!c.fontStyle){c.fontStyle=""}if(!c.fontVariant){c.fontVariant=""}if(!c.fontWeight){c.fontWeight=""}this.setAttributes(c,true)},fontProperties:{fontStyle:true,fontVariant:true,fontWeight:true,fontSize:true,fontFamily:true},setAttributes:function(c,a,j){var d,b;if(c&&c.font){b={};for(d in c){if(!(d in this.fontProperties)){b[d]=c[d]}}c=b}Ext.draw.sprite.Sprite.prototype.setAttributes.call(this,c,a,j)},getBBox:function(b){var a=this,c=a.attr.bbox.plain,d=a.getSurface();if(c.dirty){a.updatePlainBBox(c);c.dirty=false}if(d.getInherited().rtl&&d.getFlipRtlText()){a.updatePlainBBox(c,true)}return Ext.draw.sprite.Sprite.prototype.getBBox.call(this,b)},rtlAlignments:{start:"end",center:"center",end:"start"},updatePlainBBox:function(M,E){var y=this,b=y.attr,I=b.x,J=b.y,F=[],i=b.font,D=b.text,x=b.textBaseline,L=b.textAlign,d=(E&&y.oldSize)?y.oldSize:(y.oldSize=Ext.draw.TextMeasurer.measureText(D,i)),a=y.getSurface(),H=a.getInherited().rtl,c=H&&a.getFlipRtlText(),O=a.getRect(),Q=d.sizes,P=d.height,N=d.width,K=Q?Q.length:0,R,G=0;switch(x){case"hanging":case"top":break;case"ideographic":case"bottom":J-=P;break;case"alphabetic":J-=P*0.8;break;case"middle":J-=P*0.5;break}if(c){I=O[2]-O[0]-I;L=y.rtlAlignments[L]}switch(L){case"start":if(H){for(;G<K;G++){R=Q[G].width;F.push(-(N-R))}}break;case"end":I-=N;if(H){break}for(;G<K;G++){R=Q[G].width;F.push(N-R)}break;case"center":I-=N*0.5;for(;G<K;G++){R=Q[G].width;F.push((H?-1:1)*(N-R)*0.5)}break}b.textAlignOffsets=F;M.x=I;M.y=J;M.width=N;M.height=P},setText:function(a){this.setAttributes({text:a},true)},render:function(A,b,v){var x=this,y=x.attr,c=Ext.draw.Matrix.fly(y.matrix.elements.slice(0)),d=x.getBBox(true),B=y.textAlignOffsets,t=Ext.draw.Color.RGBA_NONE,u,w,z,a,i;if(y.text.length===0){return}a=y.text.split(x.lineBreakRe);i=d.height/a.length;u=y.bbox.plain.x;w=y.bbox.plain.y+i*0.78;c.toContext(b);if(A.getInherited().rtl){u+=y.bbox.plain.width}for(z=0;z<a.length;z++){if(b.fillStyle!==t){b.fillText(a[z],u+(B[z]||0),w+i*z)}if(b.strokeStyle!==t){b.strokeText(a[z],u+(B[z]||0),w+i*z)}}}}},1,0,0,0,["sprite.text"],0,[Ext.draw.sprite,"Text"],0));(Ext.cmd.derive("Ext.draw.sprite.Tick",Ext.draw.sprite.Line,{inheritableStatics:{def:{processors:{x:"number",y:"number",size:"number"},defaults:{x:0,y:0,size:4},triggers:{x:"tick",y:"tick",size:"tick"},updaters:{tick:function(f){var i=f.size*1.5,j=f.lineWidth/2,g=f.x,h=f.y;this.setAttributes({fromX:g-j,fromY:h-i,toX:g-j,toY:h+i})}}}}},0,0,0,0,["sprite.tick"],0,[Ext.draw.sprite,"Tick"],0));(Ext.cmd.derive("Ext.draw.sprite.Triangle",Ext.draw.sprite.Path,{inheritableStatics:{def:{processors:{x:"number",y:"number",size:"number"},defaults:{x:0,y:0,size:4},triggers:{x:"path",y:"path",size:"path"}}},updatePath:function(i,f){var j=f.size*2.2,g=f.x,h=f.y;i.fromSvgString("M".concat(g,",",h,"m0-",j*0.58,"l",j*0.5,",",j*0.87,"-",j,",0z"))}},0,0,0,0,["sprite.triangle"],0,[Ext.draw.sprite,"Triangle"],0));(Ext.cmd.derive("Ext.draw.gradient.Linear",Ext.draw.gradient.Gradient,{type:"linear",config:{degrees:0,radians:0},applyRadians:function(c,d){if(Ext.isNumber(c)){return c}return d},applyDegrees:function(c,d){if(Ext.isNumber(c)){return c}return d},updateRadians:function(b){this.setDegrees(Ext.draw.Draw.degrees(b))},updateDegrees:function(b){this.setRadians(Ext.draw.Draw.rad(b))},generateGradient:function(h,l){var z=this.getRadians(),i=Math.cos(z),u=Math.sin(z),s=l.width,w=l.height,y=l.x+s*0.5,A=l.y+w*0.5,r=this.getStops(),v=r.length,t,B,x;if(Ext.isNumber(y+A)&&w>0&&s>0){B=(Math.sqrt(w*w+s*s)*Math.abs(Math.cos(z-Math.atan(w/s))))/2;t=h.createLinearGradient(y+i*B,A+u*B,y-i*B,A-u*B);for(x=0;x<v;x++){t.addColorStop(r[x].offset,r[x].color)}return t}return Ext.draw.Color.NONE}},0,0,0,0,0,0,[Ext.draw.gradient,"Linear"],0));(Ext.cmd.derive("Ext.draw.gradient.Radial",Ext.draw.gradient.Gradient,{type:"radial",config:{start:{x:0,y:0,r:0},end:{x:0,y:0,r:1}},applyStart:function(e,d){if(!d){return e}var f={x:d.x,y:d.y,r:d.r};if("x" in e){f.x=e.x}else{if("centerX" in e){f.x=e.centerX}}if("y" in e){f.y=e.y}else{if("centerY" in e){f.y=e.centerY}}if("r" in e){f.r=e.r}else{if("radius" in e){f.r=e.radius}}return f},applyEnd:function(d,e){if(!e){return d}var f={x:e.x,y:e.y,r:e.r};if("x" in d){f.x=d.x}else{if("centerX" in d){f.x=d.centerX}}if("y" in d){f.y=d.y}else{if("centerY" in d){f.y=d.centerY}}if("r" in d){f.r=d.r}else{if("radius" in d){f.r=d.radius}}return f},generateGradient:function(h,i){var x=this.getStart(),w=this.getEnd(),p=i.width*0.5,u=i.height*0.5,q=i.x+p,s=i.y+u,r=h.createRadialGradient(q+x.x*p,s+x.y*u,x.r*Math.max(p,u),q+w.x*p,s+w.y*u,w.r*Math.max(p,u)),o=this.getStops(),t=o.length,v;for(v=0;v<t;v++){r.addColorStop(o[v].offset,o[v].color)}return r}},0,0,0,0,0,0,[Ext.draw.gradient,"Radial"],0));(Ext.cmd.derive("Ext.draw.Surface",Ext.draw.SurfaceBase,{devicePixelRatio:window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI,deprecated:{"5.1.0":{statics:{methods:{stableSort:function(b){return Ext.Array.sort(b,function(a,e){return a.attr.zIndex-e.attr.zIndex})}}}}},config:{cls:"x-surface",rect:null,background:null,items:[],dirty:false,flipRtlText:false},isSurface:true,isPendingRenderFrame:false,dirtyPredecessorCount:0,constructor:function(d){var c=this;c.predecessors=[];c.successors=[];c.map={};Ext.draw.SurfaceBase.prototype.constructor.call(this,d);c.matrix=new Ext.draw.Matrix();c.inverseMatrix=c.matrix.inverse()},roundPixel:function(b){return Math.round(this.devicePixelRatio*b)/this.devicePixelRatio},waitFor:function(e){var d=this,f=d.predecessors;if(!Ext.Array.contains(f,e)){f.push(e);e.successors.push(d);if(e.getDirty()){d.dirtyPredecessorCount++}}},updateDirty:function(i){var j=this.successors,h=j.length,f=0,g;for(;f<h;f++){g=j[f];if(i){g.dirtyPredecessorCount++;g.setDirty(true)}else{g.dirtyPredecessorCount--;if(g.dirtyPredecessorCount===0&&g.isPendingRenderFrame){g.renderFrame()}}}},applyBackground:function(d,c){this.setDirty(true);if(Ext.isString(d)){d={fillStyle:d}}return Ext.factory(d,Ext.draw.sprite.Rect,c)},applyRect:function(d,c){if(c&&d[0]===c[0]&&d[1]===c[1]&&d[2]===c[2]&&d[3]===c[3]){return}if(Ext.isArray(d)){return[d[0],d[1],d[2],d[3]]}else{if(Ext.isObject(d)){return[d.x||d.left,d.y||d.top,d.width||(d.right-d.left),d.height||(d.bottom-d.top)]}}},updateRect:function(j){var k=this,p=j[0],m=j[1],l=p+j[2],b=m+j[3],n=k.getBackground(),o=k.element;o.setLocalXY(Math.floor(p),Math.floor(m));o.setSize(Math.ceil(l-Math.floor(p)),Math.ceil(b-Math.floor(m)));if(n){n.setAttributes({x:0,y:0,width:Math.ceil(l-Math.floor(p)),height:Math.ceil(b-Math.floor(m))})}k.setDirty(true)},resetTransform:function(){this.matrix.set(1,0,0,1,0,0);this.inverseMatrix.set(1,0,0,1,0,0);this.setDirty(true)},get:function(b){return this.map[b]||this.getItems()[b]},add:function(){var n=this,p=Array.prototype.slice.call(arguments),l=Ext.isArray(p[0]),t=n.map,r=[],o,i,m,s,q;o=Ext.Array.clean(l?p[0]:p);if(!o.length){return r}for(s=0,q=o.length;s<q;s++){i=o[s];m=null;if(i.isSprite&&!t[i.getId()]){m=i}else{if(!t[i.id]){m=this.createItem(i)}}if(m){t[m.getId()]=m;r.push(m);m.setParent(n);m.setSurface(n);n.onAdd(m)}}o=n.getItems();if(o){o.push.apply(o,r)}n.dirtyZIndex=true;n.setDirty(true);if(!l&&r.length===1){return r[0]}else{return r}},onAdd:Ext.emptyFn,remove:function(g,j){var f=this,h,i;if(g){if(g.charAt){g=f.map[g]}if(!g||!g.isSprite){return null}if(g.isDestroyed||g.isDestroying){return g}h=g.getId();i=f.map[h];delete f.map[h];if(j){g.destroy()}if(!i){return g}g.setParent(null);g.setSurface(null);Ext.Array.remove(f.getItems(),g);f.dirtyZIndex=true;f.setDirty(true)}return g||null},removeAll:function(g){var f=this.getItems(),e=f.length-1,h;if(g){for(;e>=0;e--){f[e].destroy()}}else{for(;e>=0;e--){h=f[e];h.setParent(null);h.setSurface(null)}}f.length=0;this.map={};this.dirtyZIndex=true},applyItems:function(b){if(this.getItems()){this.removeAll(true)}return Ext.Array.from(this.add(b))},createItem:function(b){return Ext.create(b.xclass||"sprite."+b.type,b)},getBBox:function(o,s){var o=Ext.Array.from(o),r=Infinity,m=-Infinity,n=Infinity,t=-Infinity,l,i,q,p;for(q=0,p=o.length;q<p;q++){l=o[q];i=l.getBBox(s);if(r>i.x){r=i.x}if(m<i.x+i.width){m=i.x+i.width}if(n>i.y){n=i.y}if(t<i.y+i.height){t=i.y+i.height}}return{x:r,y:n,width:m-r,height:t-n}},emptyRect:[0,0,0,0],getEventXY:function(o){var m=this,n=m.getInherited().rtl,p=o.getXY(),r=m.getOwnerBody(),k=r.getXY(),l=m.getRect()||m.emptyRect,e=[],q;if(n){q=r.getWidth();e[0]=k[0]-p[0]-l[0]+q}else{e[0]=p[0]-k[0]-l[0]}e[1]=p[1]-k[1]-l[1];return e},clear:Ext.emptyFn,orderByZIndex:function(){var i=this,g=i.getItems(),h=false,f,j;if(i.getDirty()){for(f=0,j=g.length;f<j;f++){if(g[f].attr.dirtyZIndex){h=true;break}}if(h){Ext.Array.sort(g,function(a,b){return a.attr.zIndex-b.attr.zIndex});this.setDirty(true)}for(f=0,j=g.length;f<j;f++){g[f].attr.dirtyZIndex=false}}},repaint:function(){var b=this;b.repaint=Ext.emptyFn;Ext.defer(function(){delete b.repaint;b.element.repaint()},1)},renderFrame:function(){var j=this;if(!j.element){return}if(j.dirtyPredecessorCount>0){j.isPendingRenderFrame=true;return}var k=j.getRect(),n=j.getBackground(),i=j.getItems(),l,h,m;if(!k){return}j.orderByZIndex();if(j.getDirty()){j.clear();j.clearTransform();if(n){j.renderSprite(n)}for(h=0,m=i.length;h<m;h++){l=i[h];if(j.renderSprite(l)===false){return}l.attr.textPositionCount=j.textPosition}j.setDirty(false)}},renderSprite:Ext.emptyFn,clearTransform:Ext.emptyFn,destroy:function(){var b=this;b.removeAll(true);b.predecessors=null;b.successors=null;Ext.draw.SurfaceBase.prototype.destroy.call(this)}},1,["surface"],["widget","component","surface"],{widget:true,component:true,surface:true},["widget.surface"],0,[Ext.draw,"Surface"],0));Ext.define("Ext.draw.overrides.Surface",{override:"Ext.draw.Surface",hitTest:function(h,n){var k=this,j=k.getItems(),l,m,i;n=n||Ext.draw.sprite.Sprite.defaultHitTestOptions;for(l=j.length-1;l>=0;l--){m=j[l];if(m.hitTest){i=m.hitTest(h,n);if(i){return i}}}return null},hitTestEvent:function(d,e){var f=this.getEventXY(d);return this.hitTest(f,e)}});(Ext.cmd.derive("Ext.draw.engine.SvgContext",Ext.Base,{toSave:["strokeOpacity","strokeStyle","fillOpacity","fillStyle","globalAlpha","lineWidth","lineCap","lineJoin","lineDash","lineDashOffset","miterLimit","shadowOffsetX","shadowOffsetY","shadowBlur","shadowColor","globalCompositeOperation","position","fillGradient","strokeGradient"],strokeOpacity:1,strokeStyle:"none",fillOpacity:1,fillStyle:"none",lineDash:[],lineDashOffset:0,globalAlpha:1,lineWidth:1,lineCap:"butt",lineJoin:"miter",miterLimit:10,shadowOffsetX:0,shadowOffsetY:0,shadowBlur:0,shadowColor:"none",globalCompositeOperation:"src",urlStringRe:/^url\(#([\w\-]+)\)$/,constructor:function(b){this.surface=b;this.state=[];this.matrix=new Ext.draw.Matrix();this.path=null;this.clear()},clear:function(){this.group=this.surface.mainGroup;this.position=0;this.path=null},getElement:function(b){return this.surface.getSvgElement(this.group,b,this.position++)},removeElement:function(o){var o=Ext.fly(o),k,l,i,m,j,n,p;if(!o){return}if(o.dom.tagName==="g"){j=o.dom.gradients;for(p in j){j[p].destroy()}}else{k=o.getAttribute("fill");l=o.getAttribute("stroke");i=k&&k.match(this.urlStringRe);m=l&&l.match(this.urlStringRe);if(i&&i[1]){n=Ext.fly(i[1]);if(n){n.destroy()}}if(m&&m[1]){n=Ext.fly(m[1]);if(n){n.destroy()}}}o.destroy()},save:function(){var j=this.toSave,h={},i=this.getElement("g"),f,g;for(g=0;g<j.length;g++){f=j[g];if(f in this){h[f]=this[f]}}this.position=0;h.matrix=this.matrix.clone();this.state.push(h);this.group=i;return i},restore:function(){var i=this.toSave,h=this.state.pop(),j=this.group.dom.childNodes,f,g;while(j.length>this.position){this.removeElement(j[j.length-1])}for(g=0;g<i.length;g++){f=i[g];if(f in h){this[f]=h[f]}else{delete this[f]}}this.setTransform.apply(this,h.matrix.elements);this.group=this.group.getParent()},transform:function(k,h,l,j,m,n){if(this.path){var i=Ext.draw.Matrix.fly([k,h,l,j,m,n]).inverse();this.path.transform(i)}this.matrix.append(k,h,l,j,m,n)},setTransform:function(j,h,k,i,l,g){if(this.path){this.path.transform(this.matrix)}this.matrix.reset();this.transform(j,h,k,i,l,g)},scale:function(d,c){this.transform(d,0,0,c,0,0)},rotate:function(i){var j=Math.cos(i),g=Math.sin(i),f=-Math.sin(i),h=Math.cos(i);this.transform(j,g,f,h,0,0)},translate:function(d,c){this.transform(1,0,0,1,d,c)},setGradientBBox:function(b){this.bbox=b},beginPath:function(){this.path=new Ext.draw.Path()},moveTo:function(d,c){if(!this.path){this.beginPath()}this.path.moveTo(d,c);this.path.element=null},lineTo:function(d,c){if(!this.path){this.beginPath()}this.path.lineTo(d,c);this.path.element=null},rect:function(e,g,h,f){this.moveTo(e,g);this.lineTo(e+h,g);this.lineTo(e+h,g+f);this.lineTo(e,g+f);this.closePath()},strokeRect:function(e,g,h,f){this.beginPath();this.rect(e,g,h,f);this.stroke()},fillRect:function(e,g,h,f){this.beginPath();this.rect(e,g,h,f);this.fill()},closePath:function(){if(!this.path){this.beginPath()}this.path.closePath();this.path.element=null},arcSvg:function(m,i,k,j,n,h,l){if(!this.path){this.beginPath()}this.path.arcSvg(m,i,k,j,n,h,l);this.path.element=null},arc:function(g,i,h,k,l,j){if(!this.path){this.beginPath()}this.path.arc(g,i,h,k,l,j);this.path.element=null},ellipse:function(j,k,l,m,o,p,i,n){if(!this.path){this.beginPath()}this.path.ellipse(j,k,l,m,o,p,i,n);this.path.element=null},arcTo:function(h,l,i,m,j,k,n){if(!this.path){this.beginPath()}this.path.arcTo(h,l,i,m,j,k,n);this.path.element=null},bezierCurveTo:function(k,i,g,j,h,l){if(!this.path){this.beginPath()}this.path.bezierCurveTo(k,i,g,j,h,l);this.path.element=null},strokeText:function(i,g,h){i=String(i);if(this.strokeStyle){var f=this.getElement("text"),j=this.surface.getSvgElement(f,"tspan",0);this.surface.setElementAttributes(f,{x:g,y:h,transform:this.matrix.toSvg(),stroke:this.strokeStyle,fill:"none",opacity:this.globalAlpha,"stroke-opacity":this.strokeOpacity,style:"font: "+this.font,"stroke-dasharray":this.lineDash.join(","),"stroke-dashoffset":this.lineDashOffset});if(this.lineDash.length){this.surface.setElementAttributes(f,{"stroke-dasharray":this.lineDash.join(","),"stroke-dashoffset":this.lineDashOffset})}if(j.dom.firstChild){j.dom.removeChild(j.dom.firstChild)}this.surface.setElementAttributes(j,{"alignment-baseline":"alphabetic"});j.dom.appendChild(document.createTextNode(Ext.String.htmlDecode(i)))}},fillText:function(i,g,h){i=String(i);if(this.fillStyle){var f=this.getElement("text"),j=this.surface.getSvgElement(f,"tspan",0);this.surface.setElementAttributes(f,{x:g,y:h,transform:this.matrix.toSvg(),fill:this.fillStyle,opacity:this.globalAlpha,"fill-opacity":this.fillOpacity,style:"font: "+this.font});if(j.dom.firstChild){j.dom.removeChild(j.dom.firstChild)}this.surface.setElementAttributes(j,{"alignment-baseline":"alphabetic"});j.dom.appendChild(document.createTextNode(Ext.String.htmlDecode(i)))}},drawImage:function(D,v,x,u,B,q,s,F,z){var A=this,C=A.getElement("image"),w=v,y=x,E=typeof u==="undefined"?D.width:u,t=typeof B==="undefined"?D.height:B,r=null;if(typeof z!=="undefined"){r=v+" "+x+" "+u+" "+B;w=q;y=s;E=F;t=z}C.dom.setAttributeNS("http://www.w3.org/1999/xlink","href",D.src);A.surface.setElementAttributes(C,{viewBox:r,x:w,y:y,width:E,height:t,opacity:A.globalAlpha,transform:A.matrix.toSvg()})},fill:function(){if(!this.path){return}if(this.fillStyle){var h,f=this.fillGradient,g=this.bbox,e=this.path.element;if(!e){h=this.path.toString();e=this.path.element=this.getElement("path");this.surface.setElementAttributes(e,{d:h,transform:this.matrix.toSvg()})}this.surface.setElementAttributes(e,{fill:f&&g?f.generateGradient(this,g):this.fillStyle,"fill-opacity":this.fillOpacity*this.globalAlpha})}},stroke:function(){if(!this.path){return}if(this.strokeStyle){var h,e=this.strokeGradient,g=this.bbox,f=this.path.element;if(!f||!this.path.svgString){h=this.path.toString();if(!h){return}f=this.path.element=this.getElement("path");this.surface.setElementAttributes(f,{fill:"none",d:h,transform:this.matrix.toSvg()})}this.surface.setElementAttributes(f,{stroke:e&&g?e.generateGradient(this,g):this.strokeStyle,"stroke-linecap":this.lineCap,"stroke-linejoin":this.lineJoin,"stroke-width":this.lineWidth,"stroke-opacity":this.strokeOpacity*this.globalAlpha,"stroke-dasharray":this.lineDash.join(","),"stroke-dashoffset":this.lineDashOffset});if(this.lineDash.length){this.surface.setElementAttributes(f,{"stroke-dasharray":this.lineDash.join(","),"stroke-dashoffset":this.lineDashOffset})}}},fillStroke:function(i,l){var h=this,m=h.fillStyle,j=h.strokeStyle,n=h.fillOpacity,k=h.strokeOpacity;if(l===undefined){l=i.transformFillStroke}if(!l){i.inverseMatrix.toContext(h)}if(m&&n!==0){h.fill()}if(j&&k!==0){h.stroke()}},appendPath:function(b){this.path=b.clone()},setLineDash:function(b){this.lineDash=b},getLineDash:function(){return this.lineDash},createLinearGradient:function(o,l,i,n){var m=this,p=m.surface.getNextDef("linearGradient"),j=m.group.dom.gradients||(m.group.dom.gradients={}),k;m.surface.setElementAttributes(p,{x1:o,y1:l,x2:i,y2:n,gradientUnits:"userSpaceOnUse"});k=new Ext.draw.engine.SvgContext.Gradient(m,m.surface,p);j[p.dom.id]=k;return k},createRadialGradient:function(s,k,q,t,l,r){var n=this,p=n.surface.getNextDef("radialGradient"),o=n.group.dom.gradients||(n.group.dom.gradients={}),m;n.surface.setElementAttributes(p,{fx:s,fy:k,cx:t,cy:l,r:r,gradientUnits:"userSpaceOnUse"});m=new Ext.draw.engine.SvgContext.Gradient(n,n.surface,p,q/r);o[p.dom.id]=m;return m}},1,0,0,0,0,0,[Ext.draw.engine,"SvgContext"],0));(Ext.cmd.derive("Ext.draw.engine.SvgContext.Gradient",Ext.Base,{statics:{map:{}},constructor:function(l,h,k,g){var i=this.statics().map,j;j=i[k.dom.id];if(j){j.element=null}i[k.dom.id]=this;this.ctx=l;this.surface=h;this.element=k;this.position=0;this.compression=g||0},addColorStop:function(g,e){var h=this.surface.getSvgElement(this.element,"stop",this.position++),f=this.compression;this.surface.setElementAttributes(h,{offset:(((1-f)*g+f)*100).toFixed(2)+"%","stop-color":e,"stop-opacity":Ext.draw.Color.fly(e).a.toFixed(15)})},toString:function(){var b=this.element.dom.childNodes;while(b.length>this.position){Ext.fly(b[b.length-1]).destroy()}return"url(#"+this.element.getId()+")"},destroy:function(){var c=this.statics().map,d=this.element;if(d&&d.dom){delete c[d.dom.id];d.destroy()}this.callParent()}},3,0,0,0,0,0,[Ext.draw.engine.SvgContext,"Gradient"],0));(Ext.cmd.derive("Ext.draw.engine.Svg",Ext.draw.Surface,{statics:{BBoxTextCache:{}},config:{highPrecision:false},getElementConfig:function(){return{reference:"element",style:{position:"absolute"},children:[{reference:"innerElement",style:{width:"100%",height:"100%",position:"relative"},children:[{tag:"svg",reference:"svgElement",namespace:"http://www.w3.org/2000/svg",width:"100%",height:"100%",version:1.1}]}]}},constructor:function(d){var c=this;Ext.draw.Surface.prototype.constructor.call(this,d);c.mainGroup=c.createSvgNode("g");c.defElement=c.createSvgNode("defs");c.svgElement.appendChild(c.mainGroup);c.svgElement.appendChild(c.defElement);c.ctx=new Ext.draw.engine.SvgContext(c)},createSvgNode:function(d){var c=document.createElementNS("http://www.w3.org/2000/svg",d);return Ext.get(c)},getSvgElement:function(g,e,f){var h;if(g.dom.childNodes.length>f){h=g.dom.childNodes[f];if(h.tagName===e){return Ext.get(h)}else{Ext.destroy(h)}}h=Ext.get(this.createSvgNode(e));if(f===0){g.insertFirst(h)}else{h.insertAfter(Ext.fly(g.dom.childNodes[f-1]))}h.cache={};return h},setElementAttributes:function(k,g){var i=k.dom,h=k.cache,l,j;for(l in g){j=g[l];if(h[l]!==j){h[l]=j;i.setAttribute(l,j)}}},getNextDef:function(b){return this.getSvgElement(this.defElement,b,this.defPosition++)},clearTransform:function(){var b=this;b.mainGroup.set({transform:b.matrix.toSvg()})},clear:function(){this.ctx.clear();this.defPosition=0},renderSprite:function(e){var g=this,h=g.getRect(),f=g.ctx;if(e.attr.hidden||e.attr.globalAlpha===0){f.save();f.restore();return}e.element=f.save();e.preRender(this);e.useAttributes(f,h);if(false===e.render(this,f,[0,0,h[2],h[3]])){return false}e.setDirty(false);f.restore()},flatten:function(l,h){var n='<?xml version="1.0" standalone="yes"?>',k=Ext.getClassName(this),i,j,m;n+='<svg version="1.1" baseProfile="full" xmlns="http://www.w3.org/2000/svg" width="'+l.width+'" height="'+l.height+'">';for(m=0;m<h.length;m++){i=h[m];if(Ext.getClassName(i)!==k){continue}j=i.getRect();n+='<g transform="translate('+j[0]+","+j[1]+')">';n+=this.serializeNode(i.svgElement.dom);n+="</g>"}n+="</svg>";return{data:"data:image/svg+xml;utf8,"+encodeURIComponent(n),type:"svg"}},serializeNode:function(k){var g="",l,i,h,j;if(k.nodeType===document.TEXT_NODE){return k.nodeValue}g+="<"+k.nodeName;if(k.attributes.length){for(l=0,i=k.attributes.length;l<i;l++){h=k.attributes[l];g+=" "+h.name+'="'+h.value+'"'}}g+=">";if(k.childNodes&&k.childNodes.length){for(l=0,i=k.childNodes.length;l<i;l++){j=k.childNodes[l];g+=this.serializeNode(j)}}g+="</"+k.nodeName+">";return g},destroy:function(){var b=this;b.ctx.destroy();b.mainGroup.destroy();delete b.mainGroup;delete b.ctx;Ext.draw.Surface.prototype.destroy.call(this)},remove:function(d,c){if(d&&d.element){if(this.ctx){this.ctx.removeElement(d.element)}else{d.element.destroy()}d.element=null}Ext.draw.Surface.prototype.remove.apply(this,arguments)}},1,0,["widget","component","surface"],{widget:true,component:true,surface:true},0,0,[Ext.draw.engine,"Svg"],0));Ext.draw||(Ext.draw={});Ext.draw.engine||(Ext.draw.engine={});Ext.draw.engine.excanvas=true;if(!document.createElement("canvas").getContext){(function(){var aE=Math;var aS=aE.round;var aT=aE.sin;var aF=aE.cos;var at=aE.abs;var am=aE.sqrt;var aZ=10;var aX=aZ/2;var aH=+navigator.userAgent.match(/MSIE ([\d.]+)?/)[1];function aI(){return this.context_||(this.context_=new ay(this))}var aN=Array.prototype.slice;function aW(b,a,d){var c=aN.call(arguments,2);return function(){return b.apply(a,c.concat(aN.call(arguments)))}}function aw(a){return String(a).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}function i(a,b,c){Ext.onReady(function(){if(!a.namespaces[b]){a.namespaces.add(b,c,"#default#VML")}})}function ai(a){i(a,"g_vml_","urn:schemas-microsoft-com:vml");i(a,"g_o_","urn:schemas-microsoft-com:office:office");if(!a.styleSheets.ex_canvas_){var b=a.createStyleSheet();b.owningElement.id="ex_canvas_";b.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}ai(document);var aY={init:function(b){var a=b||document;a.createElement("canvas");a.attachEvent("onreadystatechange",aW(this.init_,this,a))},init_:function(c){var a=c.getElementsByTagName("canvas");for(var b=0;b<a.length;b++){this.initElement(a[b])}},initElement:function(a){if(!a.getContext){a.getContext=aI;ai(a.ownerDocument);a.innerHTML="";a.attachEvent("onpropertychange",aJ);a.attachEvent("onresize",m);var b=a.attributes;if(b.width&&b.width.specified){a.style.width=b.width.nodeValue+"px"}else{a.width=a.clientWidth}if(b.height&&b.height.specified){a.style.height=b.height.nodeValue+"px"}else{a.height=a.clientHeight}}return a}};function aJ(a){var b=a.srcElement;switch(a.propertyName){case"width":b.getContext().clearRect();b.style.width=b.attributes.width.nodeValue+"px";b.firstChild.style.width=b.clientWidth+"px";break;case"height":b.getContext().clearRect();b.style.height=b.attributes.height.nodeValue+"px";b.firstChild.style.height=b.clientHeight+"px";break}}function m(a){var b=a.srcElement;if(b.firstChild){b.firstChild.style.width=b.clientWidth+"px";b.firstChild.style.height=b.clientHeight+"px"}}aY.init();var aU=[];for(var az=0;az<16;az++){for(var aA=0;aA<16;aA++){aU[az*16+aA]=az.toString(16)+aA.toString(16)}}function aD(){return[[1,0,0],[0,1,0],[0,0,1]]}function aq(g,a){var d=aD();for(var e=0;e<3;e++){for(var b=0;b<3;b++){var f=0;for(var c=0;c<3;c++){f+=g[e][c]*a[c][b]}d[e][b]=f}}return d}function aL(a,b){b.fillStyle=a.fillStyle;b.lineCap=a.lineCap;b.lineJoin=a.lineJoin;b.lineDash=a.lineDash;b.lineWidth=a.lineWidth;b.miterLimit=a.miterLimit;b.shadowBlur=a.shadowBlur;b.shadowColor=a.shadowColor;b.shadowOffsetX=a.shadowOffsetX;b.shadowOffsetY=a.shadowOffsetY;b.strokeStyle=a.strokeStyle;b.globalAlpha=a.globalAlpha;b.font=a.font;b.textAlign=a.textAlign;b.textBaseline=a.textBaseline;b.arcScaleX_=a.arcScaleX_;b.arcScaleY_=a.arcScaleY_;b.lineScale_=a.lineScale_}var a1={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",grey:"#808080",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",oldlace:"#FDF5E6",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",whitesmoke:"#F5F5F5",yellowgreen:"#9ACD32"};function an(b){var d=b.indexOf("(",3);var c=b.indexOf(")",d+1);var a=b.substring(d+1,c).split(",");if(a.length!=4||b.charAt(3)!="a"){a[3]=1}return a}function a0(a){return parseFloat(a)/100}function aP(b,a,c){return Math.min(c,Math.max(a,b))}function ar(k){var d,g,f,h,e,a;h=parseFloat(k[0])/360%360;if(h<0){h++}e=aP(a0(k[1]),0,1);a=aP(a0(k[2]),0,1);if(e==0){d=g=f=a}else{var c=a<0.5?a*(1+e):a+e-a*e;var b=2*a-c;d=a2(b,c,h+1/3);g=a2(b,c,h);f=a2(b,c,h-1/3)}return"#"+aU[Math.floor(d*255)]+aU[Math.floor(g*255)]+aU[Math.floor(f*255)]}function a2(b,c,a){if(a<0){a++}if(a>1){a--}if(6*a<1){return b+(c-b)*6*a}else{if(2*a<1){return c}else{if(3*a<2){return b+(c-b)*(2/3-a)*6}else{return b}}}}var aB={};function av(d){if(d in aB){return aB[d]}var c,f=1;d=String(d);if(d.charAt(0)=="#"){c=d}else{if(/^rgb/.test(d)){var e=an(d);var c="#",b;for(var a=0;a<3;a++){if(e[a].indexOf("%")!=-1){b=Math.floor(a0(e[a])*255)}else{b=+e[a]}c+=aU[aP(b,0,255)]}f=+e[3]}else{if(/^hsl/.test(d)){var e=an(d);c=ar(e);f=e[3]}else{c=a1[d]||d}}}return aB[d]={color:c,alpha:f}}var aR={style:"normal",variant:"normal",weight:"normal",size:10,family:"sans-serif"};var ao={};function ax(c){if(ao[c]){return ao[c]}var d=document.createElement("div");var a=d.style;try{a.font=c}catch(b){}return ao[c]={style:a.fontStyle||aR.style,variant:a.fontVariant||aR.variant,weight:a.fontWeight||aR.weight,size:a.fontSize||aR.size,family:a.fontFamily||aR.family}}function aM(a,d){var e={};for(var b in a){e[b]=a[b]}var c=parseFloat(d.currentStyle.fontSize),f=parseFloat(a.size);if(typeof a.size=="number"){e.size=a.size}else{if(a.size.indexOf("px")!=-1){e.size=f}else{if(a.size.indexOf("em")!=-1){e.size=c*f}else{if(a.size.indexOf("%")!=-1){e.size=(c/100)*f}else{if(a.size.indexOf("pt")!=-1){e.size=f/0.75}else{e.size=c}}}}}e.size*=0.981;return e}function aC(a){return a.style+" "+a.variant+" "+a.weight+" "+a.size+"px "+a.family}var aO={butt:"flat",round:"round"};function ah(a){return aO[a]||"square"}function ay(c){this.m_=aD();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineDash=[];this.lineCap="butt";this.miterLimit=aZ*1;this.globalAlpha=1;this.font="10px sans-serif";this.textAlign="left";this.textBaseline="alphabetic";this.canvas=c;var a="width:"+c.clientWidth+"px;height:"+c.clientHeight+"px;overflow:hidden;position:absolute";var b=c.ownerDocument.createElement("div");b.style.cssText=a;c.appendChild(b);var d=b.cloneNode(false);d.style.backgroundColor="red";d.style.filter="alpha(opacity=0)";c.appendChild(d);this.element_=b;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var aQ=ay.prototype;aQ.clearRect=function(){if(this.textMeasureEl_){this.textMeasureEl_.removeNode(true);this.textMeasureEl_=null}this.element_.innerHTML=""};aQ.beginPath=function(){this.currentPath_=[]};aQ.moveTo=function(b,c){var a=p(this,b,c);this.currentPath_.push({type:"moveTo",x:a.x,y:a.y});this.currentX_=a.x;this.currentY_=a.y};aQ.lineTo=function(b,c){var a=p(this,b,c);this.currentPath_.push({type:"lineTo",x:a.x,y:a.y});this.currentX_=a.x;this.currentY_=a.y};aQ.bezierCurveTo=function(b,c,e,f,g,k){var d=p(this,g,k);var h=p(this,b,c);var a=p(this,e,f);ap(this,h,a,d)};function ap(c,d,a,b){c.currentPath_.push({type:"bezierCurveTo",cp1x:d.x,cp1y:d.y,cp2x:a.x,cp2y:a.y,x:b.x,y:b.y});c.currentX_=b.x;c.currentY_=b.y}aQ.quadraticCurveTo=function(b,a,e,f){var c=p(this,b,a);var d=p(this,e,f);var h={x:this.currentX_+2/3*(c.x-this.currentX_),y:this.currentY_+2/3*(c.y-this.currentY_)};var g={x:h.x+(d.x-this.currentX_)/3,y:h.y+(d.y-this.currentY_)/3};ap(this,h,g,d)};aQ.arc=function(k,n,l,r,d,b){l*=aZ;var c=b?"at":"wa";var h=k+aF(r)*l-aX;var f=n+aT(r)*l-aX;var e=k+aF(d)*l-aX;var g=n+aT(d)*l-aX;if(h==e&&!b){h+=0.125}var a=p(this,k,n);var o=p(this,h,f);var q=p(this,e,g);this.currentPath_.push({type:c,x:a.x,y:a.y,radius:l,xStart:o.x,yStart:o.y,xEnd:q.x,yEnd:q.y})};aQ.rect=function(a,b,c,d){this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+d);this.lineTo(a,b+d);this.closePath()};aQ.strokeRect=function(a,b,c,e){var d=this.currentPath_;this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+e);this.lineTo(a,b+e);this.closePath();this.stroke();this.currentPath_=d};aQ.fillRect=function(a,b,c,e){var d=this.currentPath_;this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+e);this.lineTo(a,b+e);this.closePath();this.fill();this.currentPath_=d};aQ.createLinearGradient=function(b,e,c,a){var d=new Z("gradient");d.x0_=b;d.y0_=e;d.x1_=c;d.y1_=a;return d};aQ.createRadialGradient=function(g,c,a,d,f,e){var b=new Z("gradientradial");b.x0_=g;b.y0_=c;b.r0_=a;b.x1_=d;b.y1_=f;b.r1_=e;return b};aQ.drawImage=function(l,r){var v,a,s,e,o,q,k,b;var u=l.runtimeStyle.width;var n=l.runtimeStyle.height;l.runtimeStyle.width="auto";l.runtimeStyle.height="auto";var w=l.width;var g=l.height;l.runtimeStyle.width=u;l.runtimeStyle.height=n;if(arguments.length==3){v=arguments[1];a=arguments[2];o=q=0;k=s=w;b=e=g}else{if(arguments.length==5){v=arguments[1];a=arguments[2];s=arguments[3];e=arguments[4];o=q=0;k=w;b=g}else{if(arguments.length==9){o=arguments[1];q=arguments[2];k=arguments[3];b=arguments[4];v=arguments[5];a=arguments[6];s=arguments[7];e=arguments[8]}else{throw Error("Invalid number of arguments")}}}var c=p(this,v,a);var d=[];var t=10;var f=10;var h=this.m_;d.push(" <g_vml_:group",' coordsize="',aZ*t,",",aZ*f,'"',' coordorigin="0,0"',' style="width:',aS(t*h[0][0]),"px;height:",aS(f*h[1][1]),"px;position:absolute;","top:",aS(c.y/aZ),"px;left:",aS(c.x/aZ),"px; rotation:",aS(Math.atan(h[0][1]/h[1][1])*180/Math.PI),";");d.push('" >','<g_vml_:image src="',l.src,'"',' style="width:',aZ*s,"px;"," height:",aZ*e,'px"',' cropleft="',o/w,'"',' croptop="',q/g,'"',' cropright="',(w-o-k)/w,'"',' cropbottom="',(g-q-b)/g,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",d.join(""))};aQ.setLineDash=function(a){if(a.length===1){a=a.slice();a[1]=a[0]}this.lineDash=a};aQ.getLineDash=function(){return this.lineDash};aQ.stroke=function(e){var g=[];var b=10;var d=10;g.push("<g_vml_:shape",' filled="',!!e,'"',' style="position:absolute;width:',b,"px;height:",d,'px;left:0px;top:0px;"',' coordorigin="0,0"',' coordsize="',aZ*b,",",aZ*d,'"',' stroked="',!e,'"',' path="');var a={x:null,y:null};var f={x:null,y:null};for(var k=0;k<this.currentPath_.length;k++){var c=this.currentPath_[k];var h;switch(c.type){case"moveTo":h=c;g.push(" m ",aS(c.x),",",aS(c.y));break;case"lineTo":g.push(" l ",aS(c.x),",",aS(c.y));break;case"close":g.push(" x ");c=null;break;case"bezierCurveTo":g.push(" c ",aS(c.cp1x),",",aS(c.cp1y),",",aS(c.cp2x),",",aS(c.cp2y),",",aS(c.x),",",aS(c.y));break;case"at":case"wa":g.push(" ",c.type," ",aS(c.x-this.arcScaleX_*c.radius),",",aS(c.y-this.arcScaleY_*c.radius)," ",aS(c.x+this.arcScaleX_*c.radius),",",aS(c.y+this.arcScaleY_*c.radius)," ",aS(c.xStart),",",aS(c.yStart)," ",aS(c.xEnd),",",aS(c.yEnd));break}if(c){if(a.x==null||c.x<a.x){a.x=c.x}if(f.x==null||c.x>f.x){f.x=c.x}if(a.y==null||c.y<a.y){a.y=c.y}if(f.y==null||c.y>f.y){f.y=c.y}}}g.push(' ">');if(!e){aK(this,g)}else{au(this,g,a,f)}g.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",g.join(""))};function aK(a,b){var c=av(a.strokeStyle);var f=c.color;var e=c.alpha*a.globalAlpha;var d=a.lineScale_*a.lineWidth;if(d<1){e*=d}b.push("<g_vml_:stroke",' opacity="',e,'"',' joinstyle="',a.lineJoin,'"',' dashstyle="',a.lineDash.join(" "),'"',' miterlimit="',a.miterLimit,'"',' endcap="',ah(a.lineCap),'"',' weight="',d,'px"',' color="',f,'" />')}function au(l,v,A,k){var u=l.fillStyle;var J=l.arcScaleX_;var K=l.arcScaleY_;var N=k.x-A.x;var L=k.y-A.y;if(u instanceof Z){var q=0;var F={x:0,y:0};var d=0;var r=1;if(u.type_=="gradient"){var s=u.x0_/J;var M=u.y0_/K;var t=u.x1_/J;var y=u.y1_/K;var B=p(l,s,M);var C=p(l,t,y);var x=C.x-B.x;var a=C.y-B.y;q=Math.atan2(x,a)*180/Math.PI;if(q<0){q+=360}if(q<0.000001){q=0}}else{var B=p(l,u.x0_,u.y0_);F={x:(B.x-A.x)/N,y:(B.y-A.y)/L};N/=J*aZ;L/=K*aZ;var H=aE.max(N,L);d=2*u.r0_/H;r=2*u.r1_/H-d}var f=u.colors_;f.sort(function(P,O){return P.offset-O.offset});var n=f.length;var g=f[0].color;var h=f[n-1].color;var b=f[0].alpha*l.globalAlpha;var c=f[n-1].alpha*l.globalAlpha;var G=[];for(var D=0;D<n;D++){var o=f[D];G.push(o.offset*r+d+" "+o.color)}v.push('<g_vml_:fill type="',u.type_,'"',' method="none" focus="100%"',' color="',g,'"',' color2="',h,'"',' colors="',G.join(","),'"',' opacity="',c,'"',' g_o_:opacity2="',b,'"',' angle="',q,'"',' focusposition="',F.x,",",F.y,'" />')}else{if(u instanceof ag){if(N&&L){var w=-A.x;var I=-A.y;v.push("<g_vml_:fill",' position="',w/N*J*J,",",I/L*K*K,'"',' type="tile"',' src="',u.src_,'" />')}}else{var z=av(l.fillStyle);var e=z.color;var E=z.alpha*l.globalAlpha;v.push('<g_vml_:fill color="',e,'" opacity="',E,'" />')}}}aQ.fill=function(){this.$stroke(true)};aQ.closePath=function(){this.currentPath_.push({type:"close"})};function p(a,d,c){var b=a.m_;return{x:aZ*(d*b[0][0]+c*b[1][0]+b[2][0])-aX,y:aZ*(d*b[0][1]+c*b[1][1]+b[2][1])-aX}}aQ.save=function(){var a={};aL(this,a);this.aStack_.push(a);this.mStack_.push(this.m_);this.m_=aq(aD(),this.m_)};aQ.restore=function(){if(this.aStack_.length){aL(this.aStack_.pop(),this);this.m_=this.mStack_.pop()}};function aV(a){return isFinite(a[0][0])&&isFinite(a[0][1])&&isFinite(a[1][0])&&isFinite(a[1][1])&&isFinite(a[2][0])&&isFinite(a[2][1])}function aG(a,b,d){if(!aV(b)){return}a.m_=b;if(d){var c=b[0][0]*b[1][1]-b[0][1]*b[1][0];a.lineScale_=am(at(c))}}aQ.translate=function(a,b){var c=[[1,0,0],[0,1,0],[a,b,1]];aG(this,aq(c,this.m_),false)};aQ.rotate=function(b){var d=aF(b);var a=aT(b);var c=[[d,a,0],[-a,d,0],[0,0,1]];aG(this,aq(c,this.m_),false)};aQ.scale=function(a,b){this.arcScaleX_*=a;this.arcScaleY_*=b;var c=[[a,0,0],[0,b,0],[0,0,1]];aG(this,aq(c,this.m_),true)};aQ.transform=function(g,f,b,c,d,e){var a=[[g,f,0],[b,c,0],[d,e,1]];aG(this,aq(a,this.m_),true)};aQ.setTransform=function(c,g,a,b,f,d){var e=[[c,g,0],[a,b,0],[f,d,1]];aG(this,e,true)};aQ.drawText_=function(l,o,r,g,t){var h=this.m_,c=1000,q=0,d=c,u={x:0,y:0},v=[];var s=aM(ax(this.font),this.element_);var f=aC(s);var b=this.element_.currentStyle;var a=this.textAlign.toLowerCase();switch(a){case"left":case"center":case"right":break;case"end":a=b.direction=="ltr"?"right":"left";break;case"start":a=b.direction=="rtl"?"right":"left";break;default:a="left"}switch(this.textBaseline){case"hanging":case"top":u.y=s.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":u.y=-s.size/3;break}switch(a){case"right":q=c;d=0.05;break;case"center":q=d=c/2;break}var e=p(this,o+u.x,r+u.y);v.push('<g_vml_:line from="',-q,' 0" to="',d,' 0.05" ',' coordsize="100 100" coordorigin="0 0"',' filled="',!t,'" stroked="',!!t,'" style="position:absolute;width:1px;height:1px;left:0px;top:0px;">');if(t){aK(this,v)}else{au(this,v,{x:-q,y:0},{x:d,y:s.size})}var k=h[0][0].toFixed(3)+","+h[1][0].toFixed(3)+","+h[0][1].toFixed(3)+","+h[1][1].toFixed(3)+",0,0";var n=aS(e.x/aZ)+","+aS(e.y/aZ);v.push('<g_vml_:skew on="t" matrix="',k,'" ',' offset="',n,'" origin="',q,' 0" />','<g_vml_:path textpathok="true" />','<g_vml_:textpath on="true" string="',aw(l),'" style="v-text-align:',a,";font:",aw(f),'" /></g_vml_:line>');this.element_.insertAdjacentHTML("beforeEnd",v.join(""))};aQ.fillText=function(a,c,d,b){this.drawText_(a,c,d,b,false)};aQ.strokeText=function(a,c,d,b){this.drawText_(a,c,d,b,true)};aQ.measureText=function(a){if(!this.textMeasureEl_){var c='<span style="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;"></span>';this.element_.insertAdjacentHTML("beforeEnd",c);this.textMeasureEl_=this.element_.lastChild}var b=this.element_.ownerDocument;this.textMeasureEl_.innerHTML="";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(b.createTextNode(a));return{width:this.textMeasureEl_.offsetWidth}};aQ.clip=function(){};aQ.arcTo=function(){};aQ.createPattern=function(a,b){return new ag(a,b)};function Z(a){this.type_=a;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}Z.prototype.addColorStop=function(a,b){b=av(b);this.colors_.push({offset:a,color:b.color,alpha:b.alpha})};function ag(a,b){aj(a);switch(b){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=b;break;default:al("SYNTAX_ERR")}this.src_=a.src;this.width_=a.width;this.height_=a.height}function al(a){throw new ak(a)}function aj(a){if(!a||a.nodeType!=1||a.tagName!="IMG"){al("TYPE_MISMATCH_ERR")}if(a.readyState!="complete"){al("INVALID_STATE_ERR")}}function ak(a){this.code=this[a];this.message=a+": DOM Exception "+this.code}var j=ak.prototype=new Error();j.INDEX_SIZE_ERR=1;j.DOMSTRING_SIZE_ERR=2;j.HIERARCHY_REQUEST_ERR=3;j.WRONG_DOCUMENT_ERR=4;j.INVALID_CHARACTER_ERR=5;j.NO_DATA_ALLOWED_ERR=6;j.NO_MODIFICATION_ALLOWED_ERR=7;j.NOT_FOUND_ERR=8;j.NOT_SUPPORTED_ERR=9;j.INUSE_ATTRIBUTE_ERR=10;j.INVALID_STATE_ERR=11;j.SYNTAX_ERR=12;j.INVALID_MODIFICATION_ERR=13;j.NAMESPACE_ERR=14;j.INVALID_ACCESS_ERR=15;j.VALIDATION_ERR=16;j.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=aY;CanvasRenderingContext2D=ay;CanvasGradient=Z;CanvasPattern=ag;DOMException=ak})()}(Ext.cmd.derive("Ext.draw.engine.Canvas",Ext.draw.Surface,{config:{highPrecision:false},statics:{contextOverrides:{setGradientBBox:function(b){this.bbox=b},fill:function(){var j=this.fillStyle,g=this.fillGradient,f=this.fillOpacity,i=this.globalAlpha,h=this.bbox;if(j!==Ext.draw.Color.RGBA_NONE&&f!==0){if(g&&h){this.fillStyle=g.generateGradient(this,h)}if(f!==1){this.globalAlpha=i*f}this.$fill();if(f!==1){this.globalAlpha=i}if(g&&h){this.fillStyle=j}}},stroke:function(){var h=this.strokeStyle,j=this.strokeGradient,g=this.strokeOpacity,f=this.globalAlpha,i=this.bbox;if(h!==Ext.draw.Color.RGBA_NONE&&g!==0){if(j&&i){this.strokeStyle=j.generateGradient(this,i)}if(g!==1){this.globalAlpha=f*g}this.$stroke();if(g!==1){this.globalAlpha=f}if(j&&i){this.strokeStyle=h}}},fillStroke:function(q,p){var k=this,l=this.fillStyle,m=this.fillOpacity,o=this.strokeStyle,r=this.strokeOpacity,s=k.shadowColor,t=k.shadowBlur,n=Ext.draw.Color.RGBA_NONE;if(p===undefined){p=q.transformFillStroke}if(!p){q.inverseMatrix.toContext(k)}if(l!==n&&m!==0){k.fill();k.shadowColor=n;k.shadowBlur=0}if(o!==n&&r!==0){k.stroke()}k.shadowColor=s;k.shadowBlur=t},setLineDash:function(b){if(this.$setLineDash){this.$setLineDash(b)}},getLineDash:function(){if(this.$getLineDash){return this.$getLineDash()}},ellipse:function(n,p,r,t,k,s,o,q){var l=Math.cos(k),m=Math.sin(k);this.transform(l*r,m*r,-m*t,l*t,n,p);this.arc(0,0,1,s,o,q);this.transform(l/r,-m/t,m/r,l/t,-(l*n+m*p)/r,(m*n-l*p)/t)},appendPath:function(k){var l=this,n=0,h=0,i=k.commands,j=k.params,m=i.length;l.beginPath();for(;n<m;n++){switch(i[n]){case"M":l.moveTo(j[h],j[h+1]);h+=2;break;case"L":l.lineTo(j[h],j[h+1]);h+=2;break;case"C":l.bezierCurveTo(j[h],j[h+1],j[h+2],j[h+3],j[h+4],j[h+5]);h+=6;break;case"Z":l.closePath();break}}},save:function(){var j=this.toSave,i=j.length,h=i&&{},f=0,g;for(;f<i;f++){g=j[f];if(g in this){h[g]=this[g]}}this.state.push(h);this.$save()},restore:function(){var c=this.state.pop(),d;if(c){for(d in c){this[d]=c[d]}}this.$restore()}}},splitThreshold:3000,toSave:["fillGradient","strokeGradient"],element:{reference:"element",style:{position:"absolute"},children:[{reference:"innerElement",style:{width:"100%",height:"100%",position:"relative"}}]},createCanvas:function(){var h=Ext.Element.create({tag:"canvas",cls:"x-surface-canvas"});window.G_vmlCanvasManager&&G_vmlCanvasManager.initElement(h.dom);var g=Ext.draw.engine.Canvas.contextOverrides,f=h.dom.getContext("2d"),e;if(f.ellipse){delete g.ellipse}f.state=[];f.toSave=this.toSave;for(e in g){f["$"+e]=f[e]}Ext.apply(f,g);if(this.getHighPrecision()){this.enablePrecisionCompensation(f)}else{this.disablePrecisionCompensation(f)}this.innerElement.appendChild(h);this.canvases.push(h);this.contexts.push(f)},updateHighPrecision:function(i){var h=this.contexts,j=h.length,f,g;for(f=0;f<j;f++){g=h[f];if(i){this.enablePrecisionCompensation(g)}else{this.disablePrecisionCompensation(g)}}},precisionNames:["rect","fillRect","strokeRect","clearRect","moveTo","lineTo","arc","arcTo","save","restore","updatePrecisionCompensate","setTransform","transform","scale","translate","rotate","quadraticCurveTo","bezierCurveTo","createLinearGradient","createRadialGradient","fillText","strokeText","drawImage"],disablePrecisionCompensation:function(g){var h=Ext.draw.engine.Canvas.contextOverrides,i=this.precisionNames,j=i.length,k,l;for(k=0;k<j;k++){l=i[k];if(!(l in h)){delete g[l]}}this.setDirty(true)},enablePrecisionCompensation:function(o){var v=this,x=1,r=1,m=0,n=0,p=new Ext.draw.Matrix(),w=[],t={},u=Ext.draw.engine.Canvas.contextOverrides,q=o.constructor.prototype;var s={toSave:v.toSave,rect:function(a,b,d,c){return q.rect.call(this,a*x+m,b*r+n,d*x,c*r)},fillRect:function(a,b,d,c){this.updatePrecisionCompensateRect();q.fillRect.call(this,a*x+m,b*r+n,d*x,c*r);this.updatePrecisionCompensate()},strokeRect:function(a,b,d,c){this.updatePrecisionCompensateRect();q.strokeRect.call(this,a*x+m,b*r+n,d*x,c*r);this.updatePrecisionCompensate()},clearRect:function(a,b,d,c){return q.clearRect.call(this,a*x+m,b*r+n,d*x,c*r)},moveTo:function(a,b){return q.moveTo.call(this,a*x+m,b*r+n)},lineTo:function(a,b){return q.lineTo.call(this,a*x+m,b*r+n)},arc:function(f,b,a,d,e,c){this.updatePrecisionCompensateRect();q.arc.call(this,f*x+m,b*x+n,a*x,d,e,c);this.updatePrecisionCompensate()},arcTo:function(d,b,e,c,a){this.updatePrecisionCompensateRect();q.arcTo.call(this,d*x+m,b*r+n,e*x+m,c*r+n,a*x);this.updatePrecisionCompensate()},save:function(){w.push(p);p=p.clone();u.save.call(this);q.save.call(this)},restore:function(){p=w.pop();u.restore.call(this);q.restore.call(this);this.updatePrecisionCompensate()},updatePrecisionCompensate:function(){p.precisionCompensate(v.devicePixelRatio,t);x=t.xx;r=t.yy;m=t.dx;n=t.dy;q.setTransform.call(this,v.devicePixelRatio,t.b,t.c,t.d,0,0)},updatePrecisionCompensateRect:function(){p.precisionCompensateRect(v.devicePixelRatio,t);x=t.xx;r=t.yy;m=t.dx;n=t.dy;q.setTransform.call(this,v.devicePixelRatio,t.b,t.c,t.d,0,0)},setTransform:function(c,e,f,a,b,d){p.set(c,e,f,a,b,d);this.updatePrecisionCompensate()},transform:function(c,e,f,a,b,d){p.append(c,e,f,a,b,d);this.updatePrecisionCompensate()},scale:function(b,a){this.transform(b,0,0,a,0,0)},translate:function(b,a){this.transform(1,0,0,1,b,a)},rotate:function(b){var c=Math.cos(b),a=Math.sin(b);this.transform(c,a,-a,c,0,0)},quadraticCurveTo:function(d,b,a,c){q.quadraticCurveTo.call(this,d*x+m,b*r+n,a*x+m,c*r+n)},bezierCurveTo:function(b,d,e,f,a,c){q.bezierCurveTo.call(this,b*x+m,d*r+n,e*x+m,f*r+n,a*x+m,c*r+n)},createLinearGradient:function(e,c,a,d){this.updatePrecisionCompensateRect();var b=q.createLinearGradient.call(this,e*x+m,c*r+n,a*x+m,d*r+n);this.updatePrecisionCompensate();return b},createRadialGradient:function(e,c,f,g,d,a){this.updatePrecisionCompensateRect();var b=q.createLinearGradient.call(this,e*x+m,c*x+n,f*x,g*x+m,d*x+n,a*x);this.updatePrecisionCompensate();return b},fillText:function(c,a,b,d){q.setTransform.apply(this,p.elements);if(typeof d==="undefined"){q.fillText.call(this,c,a,b)}else{q.fillText.call(this,c,a,b,d)}this.updatePrecisionCompensate()},strokeText:function(c,a,b,d){q.setTransform.apply(this,p.elements);if(typeof d==="undefined"){q.strokeText.call(this,c,a,b)}else{q.strokeText.call(this,c,a,b,d)}this.updatePrecisionCompensate()},fill:function(){var a=this.fillGradient,b=this.bbox;this.updatePrecisionCompensateRect();if(a&&b){this.fillStyle=a.generateGradient(this,b)}q.fill.call(this);this.updatePrecisionCompensate()},stroke:function(){var a=this.strokeGradient,b=this.bbox;this.updatePrecisionCompensateRect();if(a&&b){this.strokeStyle=a.generateGradient(this,b)}q.stroke.call(this);this.updatePrecisionCompensate()},drawImage:function(g,i,a,b,c,d,e,f,h){switch(arguments.length){case 3:return q.drawImage.call(this,g,i*x+m,a*r+n);case 5:return q.drawImage.call(this,g,i*x+m,a*r+n,b*x,c*r);case 9:return q.drawImage.call(this,g,i,a,b,c,d*x+m,e*r*n,f*x,h*r)}}};Ext.apply(o,s);this.setDirty(true)},updateRect:function(P){Ext.draw.Surface.prototype.updateRect.call(this,P);var t=this,G=Math.floor(P[0]),M=Math.floor(P[1]),K=Math.ceil(P[0]+P[2]),w=Math.ceil(P[1]+P[3]),k=t.devicePixelRatio,r=t.canvases,N=K-G,h=w-M,I=Math.round(t.splitThreshold/k),O=t.xSplits=Math.ceil(N/I),L=t.ySplits=Math.ceil(h/I),j,l,E,F,b,i,H,J;for(l=0,b=0;l<L;l++,b+=I){for(j=0,F=0;j<O;j++,F+=I){E=l*O+j;if(E>=r.length){t.createCanvas()}i=r[E].dom;i.style.left=F+"px";i.style.top=b+"px";J=Math.min(I,h-b);if(J*k!==i.height){i.height=J*k;i.style.height=J+"px"}H=Math.min(I,N-F);if(H*k!==i.width){i.width=H*k;i.style.width=H+"px"}t.applyDefaults(t.contexts[E])}}for(E+=1;E<r.length;E++){r[E].destroy()}t.activeCanvases=O*L;r.length=t.activeCanvases;t.clear()},clearTransform:function(){var o=this,t=o.xSplits,n=o.ySplits,q=o.contexts,k=o.splitThreshold,j=o.devicePixelRatio,p,r,s,i;for(p=0;p<t;p++){for(r=0;r<n;r++){s=r*t+p;i=q[s];i.translate(-k*p,-k*r);i.scale(j,j);o.matrix.toContext(i)}}},renderSprite:function(I){var F=this,U=F.getRect(),R=F.matrix,P=I.getParent(),k=Ext.draw.Matrix.fly([1,0,0,1,0,0]),K=F.splitThreshold/F.devicePixelRatio,T=F.xSplits,N=F.ySplits,J,h,E,V,G,L,S=0,H,M=0,Q,O=U[2],i=U[3],j,w,D;while(P&&(P!==F)){k.prependMatrix(P.matrix||P.attr&&P.attr.matrix);P=P.getParent()}k.prependMatrix(R);V=I.getBBox();if(V){V=k.transformBBox(V)}I.preRender(F);if(I.attr.hidden||I.attr.globalAlpha===0){I.setDirty(false);return}for(w=0,h=0;w<N;w++,h+=K){for(j=0,J=0;j<T;j++,J+=K){D=w*T+j;E=F.contexts[D];G=Math.min(K,O-J);L=Math.min(K,i-h);S=J;H=S+G;M=h;Q=M+L;if(V){if(V.x>H||V.x+V.width<S||V.y>Q||V.y+V.height<M){continue}}E.save();I.useAttributes(E,U);if(false===I.render(F,E,[S,M,G,L],U)){return false}E.restore()}}I.setDirty(false)},flatten:function(i,x){var p=document.createElement("canvas"),s=Ext.getClassName(this),r=this.devicePixelRatio,o=p.getContext("2d"),w,v,q,t,u,j;p.width=Math.ceil(i.width*r);p.height=Math.ceil(i.height*r);for(t=0;t<x.length;t++){w=x[t];if(Ext.getClassName(w)!==s){continue}q=w.getRect();for(u=0;u<w.canvases.length;u++){v=w.canvases[u];j=v.getOffsetsTo(v.getParent());o.drawImage(v.dom,(q[0]+j[0])*r,(q[1]+j[1])*r)}}return{data:p.toDataURL(),type:"png"}},applyDefaults:function(d){var c=Ext.draw.Color.RGBA_NONE;d.strokeStyle=c;d.fillStyle=c;d.textAlign="start";d.textBaseline="alphabetic";d.miterLimit=1},clear:function(){var i=this,h=i.activeCanvases,j,f,g;for(j=0;j<h;j++){f=i.canvases[j].dom;g=i.contexts[j];g.setTransform(1,0,0,1,0,0);g.clearRect(0,0,f.width,f.height)}i.setDirty(true)},destroy:function(){var f=this,e,d=f.canvases.length;for(e=0;e<d;e++){f.contexts[e]=null;f.canvases[e].destroy();f.canvases[e]=null}delete f.contexts;delete f.canvases;Ext.draw.Surface.prototype.destroy.call(this)},privates:{initElement:function(){var b=this;Ext.draw.Surface.prototype.initElement.call(this);b.canvases=[];b.contexts=[];b.activeCanvases=(b.xSplits=0)*(b.ySplits=0)}}},0,0,["widget","component","surface"],{widget:true,component:true,surface:true},0,0,[Ext.draw.engine,"Canvas"],function(){var f=this,d=f.prototype,e=10000000000;if(Ext.os.is.Android4&&Ext.browser.is.Chrome){e=3000}else{if(Ext.is.iOS){e=2200}}d.splitThreshold=e}));(Ext.cmd.derive("Ext.draw.Container",Ext.draw.ContainerBase,{alternateClassName:"Ext.draw.Component",defaultType:"surface",isDrawContainer:true,engine:"Ext.draw.engine.Canvas",config:{cls:"x-draw-container",resizeHandler:null,sprites:null,gradients:[]},defaultDownloadServerUrl:"http://svg.sencha.io",supportedFormats:["png","pdf","jpeg","gif"],supportedOptions:{version:Ext.isNumber,data:Ext.isString,format:function(b){return Ext.Array.indexOf(this.supportedFormats,b)>=0},filename:Ext.isString,width:Ext.isNumber,height:Ext.isNumber,scale:Ext.isNumber,pdf:Ext.isObject,jpeg:Ext.isObject},initAnimator:function(){this.frameCallbackId=Ext.draw.Animator.addFrameCallback("renderFrame",this)},applyGradients:function(g){var h=[],l,i,k,j;if(!Ext.isArray(g)){return h}for(l=0,i=g.length;l<i;l++){k=g[l];if(!Ext.isObject(k)){continue}if(typeof k.type!=="string"){k.type="linear"}if(k.angle){k.degrees=k.angle;delete k.angle}if(Ext.isObject(k.stops)){k.stops=(function(a){var c=[],b;for(j in a){b=a[j];b.offset=j/100;c.push(b)}return c})(k.stops)}h.push(k)}Ext.draw.gradient.GradientDefinition.add(h);return h},applySprites:function(i){if(!i){return}i=Ext.Array.from(i);var j=i.length,g=[],k,h,l;for(k=0;k<j;k++){l=i[k];h=l.surface;if(!(h&&h.isSurface)){if(Ext.isString(h)){h=this.getSurface(h)}else{h=this.getSurface("main")}}l=h.add(l);g.push(l)}return g},onBodyResize:function(){var c=this.element,d;if(!c){return}d=c.getSize();if(d.width&&d.height){this.setBodySize(d)}},setBodySize:function(h){var g=this,e=g.getResizeHandler()||g.defaultResizeHandler,f;g.fireEvent("bodyresize",g,h);f=e.call(g,h);if(f!==false){g.renderFrame()}},defaultResizeHandler:function(b){this.getItems().each(function(a){a.setRect([0,0,b.width,b.height])})},getSurface:function(g){g=this.getId()+"-"+(g||"main");var h=this,e=h.getItems(),f=e.get(g);if(!f){f=h.add({xclass:h.engine,id:g});h.onBodyResize()}return f},renderFrame:function(){var h=this,g=h.getItems(),f,i,j;for(f=0,i=g.length;f<i;f++){j=g.items[f];if(j.isSurface){j.renderFrame()}}},getImage:function(j){var i=this.innerElement.getSize(),t=Array.prototype.slice.call(this.items.items),q,n,r=this.surfaceZIndexes,o,p,s,m;for(p=1;p<t.length;p++){s=t[p];m=r[s.type];o=p-1;while(o>=0&&r[t[o].type]>m){t[o+1]=t[o];o--}t[o+1]=s}q=t[0].flatten(i,t);if(j==="image"){n=new Image();n.src=q.data;q.data=n;return q}if(j==="stream"){q.data=q.data.replace(/^data:image\/[^;]+/,"data:application/octet-stream");return q}return q},download:function(k){var j=this,h=[],g,l,i;k=Ext.apply({version:2,data:j.getImage().data},k);for(l in k){if(k.hasOwnProperty(l)){i=k[l];if(l in j.supportedOptions){if(j.supportedOptions[l].call(j,i)){h.push({tag:"input",type:"hidden",name:l,value:Ext.String.htmlEncode(Ext.isObject(i)?Ext.JSON.encode(i):i)})}}}}g=Ext.dom.Helper.markup({tag:"html",children:[{tag:"head"},{tag:"body",children:[{tag:"form",method:"POST",action:k.url||j.defaultDownloadServerUrl,children:h},{tag:"script",type:"text/javascript",children:'document.getElementsByTagName("form")[0].submit();'}]}]});window.open("","ImageDownload_"+Date.now()).document.write(g)},destroy:function(){var b=this.frameCallbackId;if(b){Ext.draw.Animator.removeFrameCallback(b)}Ext.draw.ContainerBase.prototype.destroy.call(this)}},0,["draw"],["widget","component","container","draw"],{widget:true,component:true,container:true,draw:true},["widget.draw"],0,[Ext.draw,"Container",Ext.draw,"Component"],function(){if(location.search.match("svg")){Ext.draw.Container.prototype.engine="Ext.draw.engine.Svg"}else{if((Ext.os.is.BlackBerry&&Ext.os.version.getMajor()===10)||(Ext.browser.is.AndroidStock4&&(Ext.os.version.getMinor()===1||Ext.os.version.getMinor()===2||Ext.os.version.getMinor()===3))){Ext.draw.Container.prototype.engine="Ext.draw.engine.Svg"}}}));(Ext.cmd.derive("Ext.chart.theme.Base",Ext.Base,{factoryConfig:{type:"chart.theme"},isTheme:true,config:{baseColor:null,colors:undefined,gradients:null,chart:{defaults:{background:"white"}},axis:{defaults:{label:{x:0,y:0,textBaseline:"middle",textAlign:"center",fontSize:"default",fontFamily:"default",fontWeight:"default",fillStyle:"black"},title:{fillStyle:"black",fontSize:"default*1.23",fontFamily:"default",fontWeight:"default"},style:{strokeStyle:"black"},grid:{strokeStyle:"rgb(221, 221, 221)"}},top:{style:{textPadding:5}},bottom:{style:{textPadding:5}}},series:{defaults:{label:{fillStyle:"black",strokeStyle:"none",fontFamily:"default",fontWeight:"default",fontSize:"default*1.077",textBaseline:"middle",textAlign:"center"},labelOverflowPadding:5}},sprites:{text:{fontSize:"default",fontWeight:"default",fontFamily:"default",fillStyle:"black"}},seriesThemes:undefined,markerThemes:{type:["circle","cross","plus","square","triangle","diamond"]},useGradients:false,background:null},colorDefaults:["#94ae0a","#115fa6","#a61120","#ff8809","#ffd13e","#a61187","#24ad9a","#7c7474","#a66111"],constructor:function(b){this.initConfig(b);this.resolveDefaults()},defaultRegEx:/^default([+\-/\*]\d+(?:\.\d+)?)?$/,defaultOperators:{"*":function(c,d){return c*d},"+":function(c,d){return c+d},"-":function(c,d){return c-d}},resolveDefaults:function(){var b=this;Ext.onReady(function(){var i=Ext.clone(b.getSprites()),j=Ext.clone(b.getAxis()),k=Ext.clone(b.getSeries()),h,l,a;if(!b.superclass.defaults){h=Ext.getBody().createChild({tag:"div",cls:"x-component"});b.superclass.defaults={fontFamily:h.getStyle("fontFamily"),fontWeight:h.getStyle("fontWeight"),fontSize:parseFloat(h.getStyle("fontSize")),fontVariant:h.getStyle("fontVariant"),fontStyle:h.getStyle("fontStyle")};h.destroy()}b.replaceDefaults(i.text);b.setSprites(i);for(l in j){a=j[l];b.replaceDefaults(a.label);b.replaceDefaults(a.title)}b.setAxis(j);for(l in k){a=k[l];b.replaceDefaults(a.label)}b.setSeries(k)})},replaceDefaults:function(k){var n=this,l=n.superclass.defaults,j=n.defaultRegEx,o,m,p,i;if(Ext.isObject(k)){for(o in l){p=j.exec(k[o]);if(p){m=l[o];p=p[1];if(p){i=n.defaultOperators[p.charAt(0)];m=Math.round(i(m,parseFloat(p.substr(1))))}k[o]=m}}}},applyBaseColor:function(f){var e,d;if(f){e=f.isColor?f:Ext.draw.Color.fromString(f);d=e.getHSL()[2];if(d<0.15){e=e.createLighter(0.3)}else{if(d<0.3){e=e.createLighter(0.15)}else{if(d>0.85){e=e.createDarker(0.3)}else{if(d>0.7){e=e.createDarker(0.15)}}}}this.setColors([e.createDarker(0.3).toString(),e.createDarker(0.15).toString(),e.toString(),e.createLighter(0.12).toString(),e.createLighter(0.24).toString(),e.createLighter(0.31).toString()])}return f},applyColors:function(b){return b||this.colorDefaults},updateUseGradients:function(b){if(b){this.updateGradients({type:"linear",degrees:90})}},updateBackground:function(d){if(d){var c=this.getChart();c.defaults.background=d;this.setChart(c)}},updateGradients:function(j){var p=this.getColors(),n=[],k,i,o,m,l;if(Ext.isObject(j)){for(m=0,l=p&&p.length||0;m<l;m++){i=Ext.draw.Color.fromString(p[m]);if(i){o=i.createLighter(0.15).toString();k=Ext.apply(Ext.Object.chain(j),{stops:[{offset:1,color:i.toString()},{offset:0,color:o.toString()}]});n.push(k)}}this.setColors(n)}},applySeriesThemes:function(d){this.getBaseColor();this.getUseGradients();this.getGradients();var c=this.getColors();if(!d){d={fillStyle:Ext.Array.clone(c),strokeStyle:Ext.Array.map(c,function(a){var b=Ext.draw.Color.fromString(a.stops?a.stops[0].color:a);return b.createDarker(0.15).toString()})}}return d}},1,0,0,0,0,[["factoryable",Ext.mixin.Factoryable]],[Ext.chart.theme,"Base"],0));(Ext.cmd.derive("Ext.chart.theme.Default",Ext.chart.theme.Base,{singleton:true},0,0,0,0,["chart.theme.Base","chart.theme.default"],0,[Ext.chart.theme,"Default"],0));(Ext.cmd.derive("Ext.chart.Markers",Ext.draw.sprite.Instancing,{isMarkers:true,defaultCategory:"default",constructor:function(){Ext.draw.sprite.Instancing.prototype.constructor.apply(this,arguments);this.categories={};this.revisions={}},destroy:function(){this.categories=null;this.revisions=null;Ext.draw.sprite.Instancing.prototype.destroy.call(this)},getMarkerFor:function(d,e){if(d in this.categories){var f=this.categories[d];if(e in f){return this.get(f[e])}}},clear:function(b){b=b||this.defaultCategory;if(!(b in this.revisions)){this.revisions[b]=1}else{this.revisions[b]++}},putMarkerFor:function(n,i,p,k,m){n=n||this.defaultCategory;var o=this,l=o.categories[n]||(o.categories[n]={}),j;if(p in l){o.setAttributesFor(l[p],i,k)}else{l[p]=o.getCount();o.createInstance(i,k)}j=o.get(l[p]);if(j){j.category=n;if(!m){j.revision=o.revisions[n]||(o.revisions[n]=1)}}},getMarkerBBoxFor:function(h,f,e){if(h in this.categories){var g=this.categories[h];if(f in g){return this.getBBoxFor(g[f],e)}}},getBBox:function(){return null},render:function(v,i,u){var q=this,m=q.revisions,n=q.attr.matrix,o=q.getTemplate(),s=o.attr,p,t,r;n.toContext(i);o.preRender(v,i,u);o.useAttributes(i,u);for(t=0,r=q.instances.length;t<r;t++){p=q.get(t);if(p.hidden||p.revision!==m[p.category]){continue}i.save();o.attr=p;o.useAttributes(i,u);o.render(v,i,u);i.restore()}o.attr=s}},1,0,0,0,0,0,[Ext.chart,"Markers"],0));(Ext.cmd.derive("Ext.chart.label.Callout",Ext.draw.modifier.Modifier,{prepareAttributes:function(b){if(!b.hasOwnProperty("calloutOriginal")){b.calloutOriginal=Ext.Object.chain(b);b.calloutOriginal.prototype=b}if(this._previous){this._previous.prepareAttributes(b.calloutOriginal)}},setAttrs:function(B,y){var C=B.callout,x=B.calloutOriginal,u=B.bbox.plain,D=(u.width||0)+B.labelOverflowPadding,t=(u.height||0)+B.labelOverflowPadding,q,r;if("callout" in y){C=y.callout}if("callout" in y||"calloutPlaceX" in y||"calloutPlaceY" in y||"x" in y||"y" in y){var s="rotationRads" in y?x.rotationRads=y.rotationRads:x.rotationRads,z="x" in y?(x.x=y.x):x.x,A="y" in y?(x.y=y.y):x.y,E="calloutPlaceX" in y?y.calloutPlaceX:B.calloutPlaceX,F="calloutPlaceY" in y?y.calloutPlaceY:B.calloutPlaceY,v="calloutVertical" in y?y.calloutVertical:B.calloutVertical,w;s%=Math.PI*2;if(Math.cos(s)<0){s=(s+Math.PI)%(Math.PI*2)}if(s>Math.PI){s-=Math.PI*2}if(v){s=s*(1-C)-Math.PI/2*C;w=D;D=t;t=w}else{s=s*(1-C)}y.rotationRads=s;y.x=z*(1-C)+E*C;y.y=A*(1-C)+F*C;q=E-z;r=F-A;if(Math.abs(r*D)>Math.abs(q*t)){if(r>0){y.calloutEndX=y.x-(t/2)*(q/r)*C;y.calloutEndY=y.y-(t/2)*C}else{y.calloutEndX=y.x+(t/2)*(q/r)*C;y.calloutEndY=y.y+(t/2)*C}}else{if(q>0){y.calloutEndX=y.x-D/2;y.calloutEndY=y.y-(D/2)*(r/q)*C}else{y.calloutEndX=y.x+D/2;y.calloutEndY=y.y+(D/2)*(r/q)*C}}if(y.calloutStartX&&y.calloutStartY){y.calloutHasLine=(q>0&&y.calloutStartX<y.calloutEndX)||(q<=0&&y.calloutStartX>y.calloutEndX)||(r>0&&y.calloutStartY<y.calloutEndY)||(r<=0&&y.calloutStartY>y.calloutEndY)}else{y.calloutHasLine=true}}return y},pushDown:function(d,c){c=Ext.draw.modifier.Modifier.prototype.pushDown.call(this,d.calloutOriginal,c);return this.setAttrs(d,c)},popUp:function(d,c){d=d.prototype;c=this.setAttrs(d,c);if(this._next){return this._next.popUp(d,c)}else{return Ext.apply(d,c)}}},0,0,0,0,0,0,[Ext.chart.label,"Callout"],0));(Ext.cmd.derive("Ext.chart.label.Label",Ext.draw.sprite.Text,{inheritableStatics:{def:{processors:{callout:"limited01",calloutHasLine:"bool",calloutPlaceX:"number",calloutPlaceY:"number",calloutStartX:"number",calloutStartY:"number",calloutEndX:"number",calloutEndY:"number",calloutColor:"color",calloutWidth:"number",calloutVertical:"bool",labelOverflowPadding:"number",display:"enums(none,under,over,rotate,insideStart,insideEnd,inside,outside)",orientation:"enums(horizontal,vertical)",renderer:"default"},defaults:{callout:0,calloutHasLine:true,calloutPlaceX:0,calloutPlaceY:0,calloutStartX:0,calloutStartY:0,calloutEndX:0,calloutEndY:0,calloutWidth:1,calloutVertical:false,calloutColor:"black",labelOverflowPadding:5,display:"none",orientation:"",renderer:null},triggers:{callout:"transform",calloutPlaceX:"transform",calloutPlaceY:"transform",labelOverflowPadding:"transform",calloutRotation:"transform",display:"hidden"},updaters:{hidden:function(b){b.hidden=b.display==="none"}}}},config:{fx:{customDurations:{callout:200}},field:null,calloutLine:true},applyCalloutLine:function(b){if(b){return Ext.apply({},b)}},prepareModifiers:function(){Ext.draw.sprite.Text.prototype.prepareModifiers.apply(this,arguments);this.calloutModifier=new Ext.chart.label.Callout({sprite:this});this.fx.setNext(this.calloutModifier);this.calloutModifier.setNext(this.topModifier)},render:function(f,j){var h=this,g=h.attr,i=g.calloutColor;j.save();j.globalAlpha*=g.callout;if(j.globalAlpha>0&&g.calloutHasLine){if(i&&i.isGradient){i=i.getStops()[0].color}j.strokeStyle=i;j.fillStyle=i;j.lineWidth=g.calloutWidth;j.beginPath();j.moveTo(h.attr.calloutStartX,h.attr.calloutStartY);j.lineTo(h.attr.calloutEndX,h.attr.calloutEndY);j.stroke();j.beginPath();j.arc(h.attr.calloutStartX,h.attr.calloutStartY,1*g.calloutWidth,0,2*Math.PI,true);j.fill();j.beginPath();j.arc(h.attr.calloutEndX,h.attr.calloutEndY,1*g.calloutWidth,0,2*Math.PI,true);j.fill()}j.restore();Ext.draw.sprite.Text.prototype.render.apply(h,arguments)}},0,0,0,0,0,0,[Ext.chart.label,"Label"],0));(Ext.cmd.derive("Ext.chart.series.Series",Ext.Base,{isSeries:true,defaultBindProperty:"store",type:null,seriesType:"sprite",identifiablePrefix:"ext-line-",observableType:"series",darkerStrokeRatio:0.15,config:{chart:null,title:null,renderer:null,showInLegend:true,triggerAfterDraw:false,style:{},subStyle:{},themeStyle:{},colors:null,useDarkerStrokeColor:true,store:null,label:{},labelOverflowPadding:null,showMarkers:true,marker:null,markerSubStyle:null,itemInstancing:null,background:null,highlightItem:null,surface:null,overlaySurface:null,hidden:false,highlight:false,highlightCfg:{merge:function(b){return b},$value:{fillStyle:"yellow",strokeStyle:"red"}},animation:null,tooltip:null},directions:[],sprites:null,themeColorCount:function(){return 1},isStoreDependantColorCount:false,themeMarkerCount:function(){return 0},getFields:function(i){var j=this,h=[],l,g,k;for(g=0,k=i.length;g<k;g++){l=j["get"+i[g]+"Field"]();if(Ext.isArray(l)){h.push.apply(h,l)}else{h.push(l)}}return h},applyAnimation:function(d,c){if(!d){d={duration:0}}else{if(d===true){d={easing:"easeInOut",duration:500}}}return c?Ext.apply({},d,c):d},getAnimation:function(){var b=this.getChart();if(b&&b.animationSuspendCount){return{duration:0}}else{return(arguments.callee.$previous||Ext.Base.prototype.getAnimation).call(this)}},updateTitle:function(v){var n=this,p=n.getChart();if(!p||p.isInitializing){return}v=Ext.Array.from(v);var t=p.getSeries(),u=Ext.Array.indexOf(t,n),r=p.getLegendStore(),o=n.getYField(),s,i,m,q;if(r.getCount()&&u!==-1){q=o?Math.min(v.length,o.length):v.length;for(s=0;s<q;s++){m=v[s];i=r.getAt(u+s);if(m&&i){i.set("name",m)}}}},applyHighlight:function(d,c){if(Ext.isObject(d)){d=Ext.merge({},this.config.highlightCfg,d)}else{if(d===true){d=this.config.highlightCfg}}return Ext.apply(c||{},d)},updateHighlight:function(b){this.getStyle();if(!Ext.Object.isEmpty(b)){this.addItemHighlight()}},updateHighlightCfg:function(b){if(!Ext.Object.equals(b,this.defaultConfig.highlightCfg)){this.addItemHighlight()}},applyItemInstancing:function(d,c){return Ext.merge(c||{},d)},setAttributesForItem:function(h,g){var e=h&&h.sprite,f;if(e){if(e.itemsMarker&&h.category==="items"){e.putMarker(h.category,g,h.index,false,true)}if(e.isMarkerHolder&&h.category==="markers"){e.putMarker(h.category,g,h.index,false,true)}else{if(e.isInstancing){e.setAttributesFor(h.index,g)}else{if(Ext.isArray(e)){for(f=0;f<e.length;f++){e[f].setAttributes(g)}}else{e.setAttributes(g)}}}}},getBBoxForItem:function(b){if(b&&b.sprite){if(b.sprite.itemsMarker&&b.category==="items"){return b.sprite.getMarkerBBox(b.category,b.index)}else{if(b.sprite instanceof Ext.draw.sprite.Instancing){return b.sprite.getBBoxFor(b.index)}else{return b.sprite.getBBox()}}}return null},applyHighlightItem:function(g,f){if(g===f){return}if(Ext.isObject(g)&&Ext.isObject(f)){var h=g.sprite===f.sprite,e=g.index===f.index;if(h&&e){return}}return g},updateHighlightItem:function(c,d){this.setAttributesForItem(d,{highlighted:false});this.setAttributesForItem(c,{highlighted:true})},constructor:function(e){var d=this,f;e=e||{};if(e.tips){e=Ext.apply({tooltip:e.tips},e)}if(e.highlightCfg){e=Ext.apply({highlight:e.highlightCfg},e)}if("id" in e){f=e.id}else{if("id" in d.config){f=d.config.id}else{f=d.getId()}}d.setId(f);d.sprites=[];d.dataRange=[];d.mixins.observable.constructor.call(d,e);d.initBindable()},lookupViewModel:function(d){var c=this.getChart();return c?c.lookupViewModel(d):null},applyTooltip:function(f,d){var e=Ext.apply({xtype:"tooltip",renderer:Ext.emptyFn,constrainPosition:true,shrinkWrapDock:true,autoHide:true,offsetX:10,offsetY:10},f);return Ext.create(e)},updateTooltip:function(){this.addItemHighlight()},addItemHighlight:function(){var i=this.getChart();if(!i){return}var h=i.getInteractions(),j,g,f;for(j=0;j<h.length;j++){g=h[j];if(g.isItemHighlight||g.isItemEdit){f=true;break}}if(!f){h.push("itemhighlight");i.setInteractions(h)}},showTooltip:function(q,p){var y=this,o=y.getTooltip(),s,B,t,w,u,r,v,x,A,z;if(!o){return}clearTimeout(y.tooltipTimeout);A=o.config;if(o.trackMouse){p[0]+=A.offsetX;p[1]+=A.offsetY}else{s=q.sprite;B=s.getSurface();t=Ext.get(B.getId());if(t){r=q.series.getBBoxForItem(q);v=r.x+r.width/2;x=r.y+r.height/2;u=B.matrix.transformPoint([v,x]);w=t.getXY();z=B.getInherited().rtl;v=z?w[0]+t.getWidth()-u[0]:w[0]+u[0];x=w[1]+u[1];p=[v,x]}}Ext.callback(o.renderer,o.scope,[o,q.record,q],0,y);o.show(p)},hideTooltip:function(d){var e=this,f=e.getTooltip();if(!f){return}clearTimeout(e.tooltipTimeout);e.tooltipTimeout=Ext.defer(function(){f.hide()},1)},applyStore:function(b){return b&&Ext.StoreManager.lookup(b)},getStore:function(){return this._store||this.getChart()&&this.getChart().getStore()},updateStore:function(q,r){var k=this,l=k.getChart(),p=l&&l.getStore(),m,i,n,o;r=r||p;if(r&&r!==q){r.un({datachanged:"onDataChanged",update:"onDataChanged",scope:k})}if(q){q.on({datachanged:"onDataChanged",update:"onDataChanged",scope:k});m=k.getSprites();for(o=0,n=m.length;o<n;o++){i=m[o];if(i.setStore){i.setStore(q)}}k.onDataChanged()}k.fireEvent("storechange",k,q,r)},onStoreChange:function(d,e,f){if(!this._store){this.updateStore(e,f)}},coordinate:function(s,u,B){var v=this,r=v.getStore(),y=v.getHidden(),w=r.getData().items,E=v["get"+s+"Axis"](),A={min:Infinity,max:-Infinity},i=v["fieldCategory"+s]||[s],z=v.getFields(i),C,t,D,F={},x=v.getSprites();if(x.length>0){if(!Ext.isBoolean(y)||!y){for(C=0;C<i.length;C++){t=z[C];D=v.coordinateData(w,t,E);v.getRangeOfData(D,A);F["data"+i[C]]=D}}v.dataRange[u]=A.min;v.dataRange[u+B]=A.max;F["dataMin"+s]=A.min;F["dataMax"+s]=A.max;if(E){E.range=null;F["range"+s]=E.getRange()}for(C=0;C<x.length;C++){x[C].setAttributes(F)}}},coordinateData:function(i,k,o){var l=[],m=i.length,n=o&&o.getLayout(),p,j;for(p=0;p<m;p++){j=i[p].data[k];if(!Ext.isEmpty(j,true)){if(n){l[p]=n.getCoordFor(j,k,p,i)}else{l[p]=+j}}else{l[p]=j}}return l},getRangeOfData:function(j,h){var l=j.length,m=h.min,i=h.max,n,k;for(n=0;n<l;n++){k=j[n];if(k<m){m=k}if(k>i){i=k}}h.min=m;h.max=i},updateLabelData:function(){var q=this,o=q.getStore(),r=o.getData().items,s=q.getSprites(),x=q.getLabel().getTemplate(),i=Ext.Array.from(x.getField()),v,w,t,u,j,p;if(!s.length||!i.length){return}for(v=0;v<s.length;v++){u=[];j=s[v];p=j.getField();if(Ext.Array.indexOf(i,p)<0){p=i[v]}for(w=0,t=r.length;w<t;w++){u.push(r[w].get(p))}j.setAttributes({labels:u})}},processData:function(){if(!this.getStore()){return}var k=this,i=this.directions,h,l=i.length,j,g;for(h=0;h<l;h++){j=i[h];g=k["get"+j+"Axis"]();if(g){g.processData(k);continue}if(k["coordinate"+j]){k["coordinate"+j]()}}k.updateLabelData()},applyBackground:function(b){if(this.getChart()){this.getSurface().setBackground(b);return this.getSurface().getBackground()}else{return b}},updateChart:function(g,f){var h=this,e=h._store;if(f){f.un("axeschange","onAxesChange",h);h.clearSprites();h.setSurface(null);h.setOverlaySurface(null);f.unregister(h);h.onChartDetached(f);if(!e){h.updateStore(null)}}if(g){h.setSurface(g.getSurface("series"));h.setOverlaySurface(g.getSurface("overlay"));g.on("axeschange","onAxesChange",h);if(g.getAxes()){h.onAxesChange(g)}h.onChartAttached(g);g.register(h);if(!e){h.updateStore(g.getStore())}}},onAxesChange:function(o){var m=this,p=o.getAxes(),t,v={},u={},r=false,n=this.directions,i,s,q;for(s=0,q=n.length;s<q;s++){i=n[s];u[i]=m.getFields(m["fieldCategory"+i])}for(s=0,q=p.length;s<q;s++){t=p[s];if(!v[t.getDirection()]){v[t.getDirection()]=[t]}else{v[t.getDirection()].push(t)}}for(s=0,q=n.length;s<q;s++){i=n[s];if(m["get"+i+"Axis"]()){continue}if(v[i]){t=m.findMatchingAxis(v[i],u[i]);if(t){m["set"+i+"Axis"](t);if(t.getNeedHighPrecision()){r=true}}}}this.getSurface().setHighPrecision(r)},findMatchingAxis:function(i,j){var k,l,g,h;for(g=0;g<i.length;g++){k=i[g];l=k.getFields();if(!l.length){return k}else{if(j){for(h=0;h<j.length;h++){if(Ext.Array.indexOf(l,j[h])>=0){return k}}}}}},onChartDetached:function(d){var c=this;c.fireEvent("chartdetached",d,c);d.un("storechange","onStoreChange",c)},onChartAttached:function(d){var c=this;c.setBackground(c.getBackground());c.fireEvent("chartattached",d,c);d.on("storechange","onStoreChange",c);c.processData()},updateOverlaySurface:function(d){var c=this;if(d){if(c.getLabel()){c.getOverlaySurface().add(c.getLabel())}}},applyLabel:function(d,c){if(!c){c=new Ext.chart.Markers({zIndex:10});c.setTemplate(new Ext.chart.label.Label(d))}else{c.getTemplate().setAttributes(d)}return c},createItemInstancingSprite:function(l,g){var j=this,i=new Ext.chart.Markers(),h,k;i.setAttributes({zIndex:Number.MAX_VALUE});h=Ext.apply({},g);if(j.getHighlight()){h.highlight=j.getHighlight();h.modifiers=["highlight"]}i.setTemplate(h);k=i.getTemplate();k.setAttributes(j.getStyle());k.fx.on("animationstart","onSpriteAnimationStart",this);k.fx.on("animationend","onSpriteAnimationEnd",this);l.bindMarker("items",i);j.getSurface().add(i);return i},getDefaultSpriteConfig:function(){return{type:this.seriesType,renderer:this.getRenderer()}},updateRenderer:function(h){var e=this,f=e.getChart(),g;if(f&&f.isInitializing){return}g=e.getSprites();if(g.length){g[0].setAttributes({renderer:h||null});if(f&&!f.isInitializing){f.redraw()}}},updateShowMarkers:function(f){var g=this.getSprites(),e=g&&g[0],h=e&&e.getMarker("markers");if(h){h.getTemplate().setAttributes({hidden:!f})}},createSprite:function(){var k=this,i=k.getSurface(),l=k.getItemInstancing(),m=i.add(k.getDefaultSpriteConfig()),h=k.getMarker(),j,n;m.setAttributes(k.getStyle());m.setSeries(k);if(l){m.itemsMarker=k.createItemInstancingSprite(m,l)}if(m.bindMarker){if(h){j=new Ext.chart.Markers();n=Ext.Object.merge({},h);if(k.getHighlight()){n.highlight=k.getHighlight();n.modifiers=["highlight"]}j.setTemplate(n);j.getTemplate().fx.setCustomDurations({translationX:0,translationY:0});m.dataMarker=j;m.bindMarker("markers",j);k.getOverlaySurface().add(j)}if(k.getLabel().getTemplate().getField()){m.bindMarker("labels",k.getLabel())}}if(m.setStore){m.setStore(k.getStore())}m.fx.on("animationstart","onSpriteAnimationStart",k);m.fx.on("animationend","onSpriteAnimationEnd",k);k.sprites.push(m);return m},getSprites:Ext.emptyFn,onDataChanged:function(){var g=this,h=g.getChart(),e=h&&h.getStore(),f=g.getStore();if(f!==e){g.processData()}},isXType:function(b){return b==="series"},getItemId:function(){return this.getId()},applyThemeStyle:function(h,g){var f=this,i,j;i=h&&h.subStyle&&h.subStyle.fillStyle;j=i&&h.subStyle.strokeStyle;if(i&&!j){h.subStyle.strokeStyle=f.getStrokeColorsFromFillColors(i)}i=h&&h.markerSubStyle&&h.markerSubStyle.fillStyle;j=i&&h.markerSubStyle.strokeStyle;if(i&&!j){h.markerSubStyle.strokeStyle=f.getStrokeColorsFromFillColors(i)}return Ext.apply(g||{},h)},applyStyle:function(f,d){var e=Ext.ClassManager.get(Ext.ClassManager.getNameByAlias("sprite."+this.seriesType));if(e&&e.def){f=e.def.normalize(f)}return Ext.apply({},f,d)},applySubStyle:function(d,f){var e=Ext.ClassManager.get(Ext.ClassManager.getNameByAlias("sprite."+this.seriesType));if(e&&e.def){d=e.def.batchedNormalize(d,true)}return Ext.merge({},f,d)},applyMarker:function(h,f){var g=(h&&h.type)||(f&&f.type)||"circle",e=Ext.ClassManager.get(Ext.ClassManager.getNameByAlias("sprite."+g));if(e&&e.def){h=e.def.normalize(Ext.isObject(h)?h:{},true);h.type=g}return Ext.merge(f||{},h)},applyMarkerSubStyle:function(h,f){var g=(h&&h.type)||(f&&f.type)||"circle",e=Ext.ClassManager.get(Ext.ClassManager.getNameByAlias("sprite."+g));if(e&&e.def){h=e.def.batchedNormalize(h,true)}return Ext.merge(f||{},h)},updateHidden:function(c){var d=this;d.getColors();d.getSubStyle();d.setSubStyle({hidden:c});d.processData();d.doUpdateStyles();if(!Ext.isArray(c)){d.updateLegendStore(c)}},updateLegendStore:function(k,h){var l=this,m=l.getChart(),n=m.getLegendStore(),j=l.getId(),i;if(n){if(arguments.length>1){i=n.findBy(function(a){return a.get("series")===j&&a.get("index")===h});if(i!==-1){i=n.getAt(i)}}else{i=n.findRecord("series",j)}if(i&&i.get("disabled")!==k){i.set("disabled",k)}}},setHiddenByIndex:function(e,f){var d=this;if(Ext.isArray(d.getHidden())){d.getHidden()[e]=f;d.updateHidden(d.getHidden());d.updateLegendStore(f,e)}else{d.setHidden(f)}},getStrokeColorsFromFillColors:function(g){var j=this,h=j.getUseDarkerStrokeColor(),f=(Ext.isNumber(h)?h:j.darkerStrokeRatio),i;if(h){i=Ext.Array.map(g,function(a){a=Ext.isString(a)?a:a.stops[0].color;a=Ext.draw.Color.fromString(a);return a.createDarker(f).toString()})}else{i=Ext.Array.clone(g)}return i},updateThemeColors:function(g){var l=this,k=l.getThemeStyle(),h=Ext.Array.clone(g),i=l.getStrokeColorsFromFillColors(g),j={fillStyle:h,strokeStyle:i};k.subStyle=Ext.apply(k.subStyle||{},j);k.markerSubStyle=Ext.apply(k.markerSubStyle||{},j);l.doUpdateStyles()},themeOnlyIfConfigured:{},updateTheme:function(A){var w=this,D=A.getSeries(),q=w.getInitialConfig(),B=w.defaultConfig,y=w.getConfigurator().configs,u=D.defaults,t=D[w.type],x=w.themeOnlyIfConfigured,s,v,p,C,r,z;D=Ext.merge({},u,t);for(s in D){v=D[s];z=y[s];if(v!==null&&v!==undefined&&z){r=q[s];p=Ext.isObject(v);C=r===B[s];if(p){if(C&&x[s]){continue}v=Ext.merge({},v,r)}if(C||p){w[z.names.set](v)}}}},updateChartColors:function(d){var c=this;if(!c.getColors()){c.updateThemeColors(d)}},updateColors:function(b){this.updateThemeColors(b)},updateStyle:function(){this.doUpdateStyles()},updateSubStyle:function(){this.doUpdateStyles()},updateThemeStyle:function(){this.doUpdateStyles()},doUpdateStyles:function(){var l=this,k=l.sprites,o=l.getItemInstancing(),p=0,m=k&&k.length,j=l.getConfig("showMarkers",true),i=l.getMarker(),n;for(;p<m;p++){n=l.getStyleByIndex(p);if(o){k[p].itemsMarker.getTemplate().setAttributes(n)}k[p].setAttributes(n);if(i&&k[p].dataMarker){k[p].dataMarker.getTemplate().setAttributes(l.getMarkerStyleByIndex(p))}}},getStyleWithTheme:function(){var e=this,h=e.getThemeStyle(),g=(h&&h.style)||{},f=Ext.applyIf(Ext.apply({},e.getStyle()),g);return f},getSubStyleWithTheme:function(){var h=this,g=h.getThemeStyle(),f=(g&&g.subStyle)||{},e=Ext.applyIf(Ext.apply({},h.getSubStyle()),f);return e},getStyleByIndex:function(i){var n=this,k=n.getThemeStyle(),o,l,p,m,j={};o=n.getStyle();l=(k&&k.style)||{};p=n.styleDataForIndex(n.getSubStyle(),i);m=n.styleDataForIndex((k&&k.subStyle),i);Ext.apply(j,l);Ext.apply(j,m);Ext.apply(j,o);Ext.apply(j,p);return j},getMarkerStyleByIndex:function(u){var r=this,v=r.getThemeStyle(),x,t,o,p,w,n,q,s,i={};x=r.getStyle();t=(v&&v.style)||{};o=r.styleDataForIndex(r.getSubStyle(),u);if(o.hasOwnProperty("hidden")){o.hidden=o.hidden||!this.getConfig("showMarkers",true)}p=r.styleDataForIndex((v&&v.subStyle),u);w=r.getMarker();n=(v&&v.marker)||{};q=r.getMarkerSubStyle();s=r.styleDataForIndex((v&&v.markerSubStyle),u);Ext.apply(i,t);Ext.apply(i,p);Ext.apply(i,n);Ext.apply(i,s);Ext.apply(i,x);Ext.apply(i,o);Ext.apply(i,w);Ext.apply(i,q);return i},styleDataForIndex:function(i,j){var h,f,g={};if(i){for(f in i){h=i[f];if(Ext.isArray(h)){g[f]=h[j%h.length]}else{g[f]=h}}}return g},getItemForPoint:Ext.emptyFn,getItemByIndex:function(h,j){var k=this,i=k.getSprites(),g=i&&i[0],l;if(!g){return}if(j===undefined&&g.isMarkerHolder){j=k.getItemInstancing()?"items":"markers"}else{if(!j||j===""||j==="sprites"){g=i[h]}}if(g){l={series:k,category:j,index:h,record:k.getStore().getData().items[h],field:k.getYField(),sprite:g};return l}},onSpriteAnimationStart:function(b){this.fireEvent("animationstart",this,b)},onSpriteAnimationEnd:function(b){this.fireEvent("animationend",this,b)},resolveListenerScope:function(h){var i=this,g=Ext._namedScopes[h],j=i.getChart(),f;if(!g){f=j?j.resolveListenerScope(h,false):(h||i)}else{if(g.isThis){f=i}else{if(g.isController){f=j?j.resolveListenerScope(h,false):i}else{if(g.isSelf){f=j?j.resolveListenerScope(h,false):i;if(f===j&&!j.getInheritedConfig("defaultListenerScope")){f=i}}}}}return f},provideLegendInfo:function(b){b.push({name:this.getTitle()||this.getId(),mark:"black",disabled:this.getHidden(),series:this.getId(),index:0})},clearSprites:function(){var g=this.sprites,e,f,h;for(f=0,h=g.length;f<h;f++){e=g[f];if(e&&e.isSprite){e.destroy()}}this.sprites=[]},destroy:function(){var d=this,e=d._store,f=d.getConfig("tooltip",true);if(e&&e.getAutoDestroy()){Ext.destroy(e)}d.setChart(null);d.clearListeners();if(f){Ext.destroy(f);clearTimeout(d.tooltipTimeout)}d.callParent()}},1,0,0,0,0,[[Ext.mixin.Observable.prototype.mixinId||Ext.mixin.Observable.$className,Ext.mixin.Observable],[Ext.mixin.Bindable.prototype.mixinId||Ext.mixin.Bindable.$className,Ext.mixin.Bindable]],[Ext.chart.series,"Series"],0));(Ext.cmd.derive("Ext.chart.interactions.Abstract",Ext.Base,{config:{gestures:{tap:"onGesture"},chart:null,enabled:true},throttleGap:0,stopAnimationBeforeSync:false,constructor:function(e){var d=this,f;e=e||{};if("id" in e){f=e.id}else{if("id" in d.config){f=d.config.id}else{f=d.getId()}}d.setId(f);d.mixins.observable.constructor.call(d,e)},initialize:Ext.emptyFn,updateChart:function(f,e){var d=this;if(e===f){return}if(e){e.unregister(d);d.removeChartListener(e)}if(f){f.register(d);d.addChartListener()}},updateEnabled:function(e){var f=this,d=f.getChart();if(d){if(e){f.addChartListener()}else{f.removeChartListener(d)}}},onGesture:Ext.emptyFn,getItemForEvent:function(g){var e=this,f=e.getChart(),h=f.getEventXY(g);return f.getItemForPoint(h[0],h[1])},getItemsForEvent:function(g){var e=this,f=e.getChart(),h=f.getEventXY(g);return f.getItemsForPoint(h[0],h[1])},addChartListener:function(){var j=this,f=j.getChart(),h=j.getGestures(),g;if(!j.getEnabled()){return}function i(b,a){f.addElementListener(b,j.listeners[b]=function(c){var d=j.getLocks(),e;if(j.getEnabled()&&(!(b in d)||d[b]===j)){e=(Ext.isFunction(a)?a:j[a]).apply(this,arguments);if(e===false&&c&&c.stopPropagation){c.stopPropagation()}return e}},j)}j.listeners=j.listeners||{};for(g in h){i(g,h[g])}},removeChartListener:function(j){var i=this,h=i.getGestures(),f;function g(b){var a=i.listeners[b];if(a){j.removeElementListener(b,a);delete i.listeners[b]}}if(i.listeners){for(f in h){g(f)}}},lockEvents:function(){var g=this,h=g.getLocks(),f=Array.prototype.slice.call(arguments),e=f.length;while(e--){h[f[e]]=g}},unlockEvents:function(){var f=this.getLocks(),e=Array.prototype.slice.call(arguments),d=e.length;while(d--){delete f[e[d]]}},getLocks:function(){var b=this.getChart();return b.lockedEvents||(b.lockedEvents={})},isMultiTouch:function(){if(Ext.browser.is.IE10){return true}return !Ext.os.is.Desktop},initializeDefaults:Ext.emptyFn,doSync:function(){var c=this,d=c.getChart();if(c.syncTimer){clearTimeout(c.syncTimer);c.syncTimer=null}if(c.stopAnimationBeforeSync){d.animationSuspendCount++}d.redraw();if(c.stopAnimationBeforeSync){d.animationSuspendCount--}c.syncThrottle=Date.now()+c.throttleGap},sync:function(){var b=this;if(b.throttleGap&&Ext.frameStartTime<b.syncThrottle){if(b.syncTimer){return}b.syncTimer=Ext.defer(function(){b.doSync()},b.throttleGap)}else{b.doSync()}},getItemId:function(){return this.getId()},isXType:function(b){return b==="interaction"},destroy:function(){var b=this;b.setChart(null);delete b.listeners;b.callParent()}},1,["interaction"],["interaction"],{interaction:true},["widget.interaction"],[["observable",Ext.mixin.Observable]],[Ext.chart.interactions,"Abstract"],function(){if(Ext.os.is.Android4){this.prototype.throttleGap=40}}));(Ext.cmd.derive("Ext.chart.MarkerHolder",Ext.Mixin,{mixinConfig:{id:"markerHolder",after:{constructor:"constructor",preRender:"preRender"},before:{destroy:"destroy"}},isMarkerHolder:true,surfaceMatrix:null,inverseSurfaceMatrix:null,deprecated:{6:{methods:{getBoundMarker:{message:"Please use the 'getMarker' method instead.",fn:function(c){var d=this.boundMarkers[c];return d?[d]:d}}}}},constructor:function(){this.boundMarkers={};this.cleanRedraw=false},bindMarker:function(e,f){var h=this,g=h.boundMarkers;if(f&&f.isMarkers){h.releaseMarker(e);g[e]=f;f.on("destroy",h.onMarkerDestroy,h)}},onMarkerDestroy:function(b){this.releaseMarker(b)},releaseMarker:function(e){var f=this.boundMarkers,d;if(e&&e.isMarkers){for(d in f){if(f[d]===e){delete f[d];break}}}else{d=e;e=f[d];delete f[d]}return e||null},getMarker:function(b){return this.boundMarkers[b]||null},preRender:function(){var k=this,j=k.getId(),m=k.boundMarkers,l=k.getParent(),n,i,h;if(k.surfaceMatrix){h=k.surfaceMatrix.set(1,0,0,1,0,0)}else{h=k.surfaceMatrix=new Ext.draw.Matrix()}k.cleanRedraw=!k.attr.dirty;if(!k.cleanRedraw){for(n in m){i=m[n];if(i){i.clear(j)}}}while(l&&l.attr&&l.attr.matrix){h.prependMatrix(l.attr.matrix);l=l.getParent()}h.prependMatrix(l.matrix);k.surfaceMatrix=h;k.inverseSurfaceMatrix=h.inverse(k.inverseSurfaceMatrix)},putMarker:function(m,i,n,j,l){var h=this.boundMarkers[m],k=this.getId();if(h){h.putMarkerFor(k,i,n,j,l)}},getMarkerBBox:function(j,f,i){var g=this.boundMarkers[j],h=this.getId();if(g){return g.getMarkerBBoxFor(h,f,i)}},destroy:function(){var f=this.boundMarkers,d,e;for(d in f){e=f[d];e.destroy()}}},1,0,0,0,0,0,[Ext.chart,"MarkerHolder"],0));(Ext.cmd.derive("Ext.chart.axis.sprite.Axis",Ext.draw.sprite.Sprite,{type:"axis",inheritableStatics:{def:{processors:{grid:"bool",axisLine:"bool",minorTicks:"bool",minorTickSize:"number",majorTicks:"bool",majorTickSize:"number",length:"number",startGap:"number",endGap:"number",dataMin:"number",dataMax:"number",visibleMin:"number",visibleMax:"number",position:"enums(left,right,top,bottom,angular,radial,gauge)",minStepSize:"number",estStepSize:"number",titleOffset:"number",textPadding:"number",min:"number",max:"number",centerX:"number",centerY:"number",radius:"number",totalAngle:"number",baseRotation:"number",data:"default",enlargeEstStepSizeByText:"bool"},defaults:{grid:false,axisLine:true,minorTicks:false,minorTickSize:3,majorTicks:true,majorTickSize:5,length:0,startGap:0,endGap:0,visibleMin:0,visibleMax:1,dataMin:0,dataMax:1,position:"",minStepSize:0,estStepSize:20,min:0,max:1,centerX:0,centerY:0,radius:1,baseRotation:0,data:null,titleOffset:0,textPadding:0,scalingCenterY:0,scalingCenterX:0,strokeStyle:"black",enlargeEstStepSizeByText:false},triggers:{minorTickSize:"bbox",majorTickSize:"bbox",position:"bbox,layout",axisLine:"bbox,layout",min:"layout",max:"layout",length:"layout",minStepSize:"layout",estStepSize:"layout",data:"layout",dataMin:"layout",dataMax:"layout",visibleMin:"layout",visibleMax:"layout",enlargeEstStepSizeByText:"layout"},updaters:{layout:"layoutUpdater"}}},config:{label:null,layout:null,segmenter:null,renderer:null,layoutContext:null,axis:null},thickness:0,stepSize:0,getBBox:function(){return null},defaultRenderer:function(b){return this.segmenter.renderer(b,this)},layoutUpdater:function(){var k=this,m=k.getAxis().getChart();if(m.isInitializing){return}var n=k.attr,o=k.getLayout(),l=m.getInherited().rtl,q=n.dataMin+(n.dataMax-n.dataMin)*n.visibleMin,j=n.dataMin+(n.dataMax-n.dataMin)*n.visibleMax,p=n.position,r={attr:n,segmenter:k.getSegmenter(),renderer:k.defaultRenderer};if(p==="left"||p==="right"){n.translationX=0;n.translationY=j*n.length/(j-q);n.scalingX=1;n.scalingY=-n.length/(j-q);n.scalingCenterY=0;n.scalingCenterX=0;k.applyTransformations(true)}else{if(p==="top"||p==="bottom"){if(l){n.translationX=n.length+q*n.length/(j-q)+1}else{n.translationX=-q*n.length/(j-q)}n.translationY=0;n.scalingX=(l?-1:1)*n.length/(j-q);n.scalingY=1;n.scalingCenterY=0;n.scalingCenterX=0;k.applyTransformations(true)}}if(o){o.calculateLayout(r);k.setLayoutContext(r)}},iterate:function(t,p){var v,r,x,w,q,u,o=Ext.Array.some,i=Math.abs,s;if(t.getLabel){if(t.min<t.from){p.call(this,t.min,t.getLabel(t.min),-1,t)}for(v=0;v<=t.steps;v++){p.call(this,t.get(v),t.getLabel(v),v,t)}if(t.max>t.to){p.call(this,t.max,t.getLabel(t.max),t.steps+1,t)}}else{w=this.getAxis();q=w.floatingAxes;u=[];s=(t.to-t.from)/(t.steps+1);if(w.getFloating()){for(x in q){u.push(q[x])}}function n(a){return !u.length||o(u,function(b){return i(b-a)>s})}if(t.min<t.from&&n(t.min)){p.call(this,t.min,t.min,-1,t)}for(v=0;v<=t.steps;v++){r=t.get(v);if(n(r)){p.call(this,r,r,v,t)}}if(t.max>t.to&&n(t.max)){p.call(this,t.max,t.max,t.steps+1,t)}}},renderTicks:function(G,F,z,C){var w=this,H=w.attr,x=H.position,E=H.matrix,N=0.5*H.lineWidth,M=E.getXX(),J=E.getDX(),I=E.getYY(),K=E.getDY(),D=z.majorTicks,O=H.majorTickSize,R=z.minorTicks,A=H.minorTickSize;if(D){switch(x){case"right":function B(a){return function(b,c,d){b=G.roundPixel(b*I+K)+N;F.moveTo(0,b);F.lineTo(a,b)}}w.iterate(D,B(O));R&&w.iterate(R,B(A));break;case"left":function y(a){return function(b,c,d){b=G.roundPixel(b*I+K)+N;F.moveTo(C[2]-a,b);F.lineTo(C[2],b)}}w.iterate(D,y(O));R&&w.iterate(R,y(A));break;case"bottom":function P(a){return function(b,c,d){b=G.roundPixel(b*M+J)-N;F.moveTo(b,0);F.lineTo(b,a)}}w.iterate(D,P(O));R&&w.iterate(R,P(A));break;case"top":function Q(a){return function(b,c,d){b=G.roundPixel(b*M+J)-N;F.moveTo(b,C[3]);F.lineTo(b,C[3]-a)}}w.iterate(D,Q(O));R&&w.iterate(R,Q(A));break;case"angular":w.iterate(D,function(b,c,a){b=b/(H.max+1)*Math.PI*2+H.baseRotation;F.moveTo(H.centerX+(H.length)*Math.cos(b),H.centerY+(H.length)*Math.sin(b));F.lineTo(H.centerX+(H.length+O)*Math.cos(b),H.centerY+(H.length+O)*Math.sin(b))});break;case"gauge":var L=w.getGaugeAngles();w.iterate(D,function(b,c,a){b=(b-H.min)/(H.max-H.min+1)*H.totalAngle-H.totalAngle+L.start;F.moveTo(H.centerX+(H.length)*Math.cos(b),H.centerY+(H.length)*Math.sin(b));F.lineTo(H.centerX+(H.length+O)*Math.cos(b),H.centerY+(H.length+O)*Math.sin(b))});break}}},renderLabels:function(R,af,S,L){var ah=this,al=ah.attr,an=0.5*al.lineWidth,ab=al.position,X=al.matrix,V=al.textPadding,Y=X.getXX(),at=X.getDX(),ap=X.getYY(),au=X.getDY(),ai=0,N=S.majorTicks,P=Math.max(al.majorTickSize,al.minorTickSize)+al.lineWidth,aq=Ext.draw.Draw.isBBoxIntersect,Q=ah.getLabel(),M,ad,ae=null,Z=0,av=0,aj=S.segmenter,U=ah.getRenderer(),ac=ah.getAxis(),W=ac.getTitle(),aw=W&&W.attr.text!==""&&W.getBBox(),ak,ao=null,ag,T,aa,ar,O;if(N&&Q&&!Q.attr.hidden){M=Q.attr.font;if(af.font!==M){af.font=M}Q.setAttributes({translationX:0,translationY:0},true);Q.applyTransformations();ak=Q.attr.inverseMatrix.elements.slice(0);switch(ab){case"left":ar=aw?aw.x+aw.width:0;switch(Q.attr.textAlign){case"start":O=R.roundPixel(ar+at)-an;break;case"end":O=R.roundPixel(L[2]-P+at)-an;break;default:O=R.roundPixel(ar+(L[2]-ar-P)/2+at)-an}Q.setAttributes({translationX:O},true);break;case"right":ar=aw?L[2]-aw.x:0;switch(Q.attr.textAlign){case"start":O=R.roundPixel(P+at)+an;break;case"end":O=R.roundPixel(L[2]-ar+at)+an;break;default:O=R.roundPixel(P+(L[2]-P-ar)/2+at)+an}Q.setAttributes({translationX:O},true);break;case"top":ar=aw?aw.y+aw.height:0;Q.setAttributes({translationY:R.roundPixel(ar+(L[3]-ar-P)/2)-an},true);break;case"bottom":ar=aw?L[3]-aw.y:0;Q.setAttributes({translationY:R.roundPixel(P+(L[3]-P-ar)/2)+an},true);break;case"radial":Q.setAttributes({translationX:al.centerX},true);break;case"angular":Q.setAttributes({translationY:al.centerY},true);break;case"gauge":Q.setAttributes({translationY:al.centerY},true);break}if(ab==="left"||ab==="right"){ah.iterate(N,function(a,b,c){if(b===undefined){return}if(U){aa=Ext.callback(U,null,[ac,b,S,ae],0,ac)}else{aa=aj.renderer(b,S,ae)}ae=b;Q.setAttributes({text:String(aa),translationY:R.roundPixel(a*ap+au)},true);Q.applyTransformations();ai=Math.max(ai,Q.getBBox().width+P);if(ai<=ah.thickness){T=Ext.draw.Matrix.fly(Q.attr.matrix.elements.slice(0));ag=T.prepend.apply(T,ak).transformBBox(Q.getBBox(true));if(ao&&!aq(ag,ao,V)){return}R.renderSprite(Q);ao=ag;Z+=ag.height;av++}})}else{if(ab==="top"||ab==="bottom"){ah.iterate(N,function(a,b,c){if(b===undefined){return}if(U){aa=Ext.callback(U,null,[ac,b,S,ae],0,ac)}else{aa=aj.renderer(b,S,ae)}ae=b;Q.setAttributes({text:String(aa),translationX:R.roundPixel(a*Y+at)},true);Q.applyTransformations();ai=Math.max(ai,Q.getBBox().height+P);if(ai<=ah.thickness){T=Ext.draw.Matrix.fly(Q.attr.matrix.elements.slice(0));ag=T.prepend.apply(T,ak).transformBBox(Q.getBBox(true));if(ao&&!aq(ag,ao,V)){return}R.renderSprite(Q);ao=ag;Z+=ag.width;av++}})}else{if(ab==="radial"){ah.iterate(N,function(a,b,c){if(b===undefined){return}if(U){aa=Ext.callback(U,null,[ac,b,S,ae],0,ac)}else{aa=aj.renderer(b,S,ae)}ae=b;if(typeof aa!=="undefined"){Q.setAttributes({text:String(aa),translationX:al.centerX-R.roundPixel(a)/al.max*al.length*Math.cos(al.baseRotation+Math.PI/2),translationY:al.centerY-R.roundPixel(a)/al.max*al.length*Math.sin(al.baseRotation+Math.PI/2)},true);Q.applyTransformations();ag=Q.attr.matrix.transformBBox(Q.getBBox(true));if(ao&&!aq(ag,ao)){return}R.renderSprite(Q);ao=ag;Z+=ag.width;av++}})}else{if(ab==="angular"){ad=al.majorTickSize+al.lineWidth*0.5+(parseInt(Q.attr.fontSize,10)||10)/2;ah.iterate(N,function(a,c,d){if(c===undefined){return}if(U){aa=Ext.callback(U,null,[ac,c,S,ae],0,ac)}else{aa=aj.renderer(c,S,ae)}ae=c;ai=Math.max(ai,Math.max(al.majorTickSize,al.minorTickSize)+(al.lineCap!=="butt"?al.lineWidth*0.5:0));if(typeof aa!=="undefined"){var b=a/(al.max+1)*Math.PI*2+al.baseRotation;Q.setAttributes({text:String(aa),translationX:al.centerX+(al.length+ad)*Math.cos(b),translationY:al.centerY+(al.length+ad)*Math.sin(b)},true);Q.applyTransformations();ag=Q.attr.matrix.transformBBox(Q.getBBox(true));if(ao&&!aq(ag,ao)){return}R.renderSprite(Q);ao=ag;Z+=ag.width;av++}})}else{if(ab==="gauge"){var am=ah.getGaugeAngles();ah.iterate(N,function(a,c,d){if(c===undefined){return}if(U){aa=Ext.callback(U,null,[ac,c,S,ae],0,ac)}else{aa=aj.renderer(c,S,ae)}ae=c;if(typeof aa!=="undefined"){var b=(a-al.min)/(al.max-al.min+1)*al.totalAngle-al.totalAngle+am.start;Q.setAttributes({text:String(aa),translationX:al.centerX+(al.length+10)*Math.cos(b),translationY:al.centerY+(al.length+10)*Math.sin(b)},true);Q.applyTransformations();ag=Q.attr.matrix.transformBBox(Q.getBBox(true));if(ao&&!aq(ag,ao)){return}R.renderSprite(Q);ao=ag;Z+=ag.width;av++}})}}}}}if(al.enlargeEstStepSizeByText&&av){Z/=av;Z+=P;Z*=2;if(al.estStepSize<Z){al.estStepSize=Z}}if(Math.abs(ah.thickness-(ai))>1){ah.thickness=ai;al.bbox.plain.dirty=true;al.bbox.transform.dirty=true;ah.doThicknessChanged();return false}}},renderAxisLine:function(t,l,p,r){var m=this,n=m.attr,s=n.lineWidth*0.5,k=n.position,q,o;if(n.axisLine&&n.length){switch(k){case"left":q=t.roundPixel(r[2])-s;l.moveTo(q,-n.endGap);l.lineTo(q,n.length+n.startGap+1);break;case"right":l.moveTo(s,-n.endGap);l.lineTo(s,n.length+n.startGap+1);break;case"bottom":l.moveTo(-n.startGap,s);l.lineTo(n.length+n.endGap,s);break;case"top":q=t.roundPixel(r[3])-s;l.moveTo(-n.startGap,q);l.lineTo(n.length+n.endGap,q);break;case"angular":l.moveTo(n.centerX+n.length,n.centerY);l.arc(n.centerX,n.centerY,n.length,0,Math.PI*2,true);break;case"gauge":o=m.getGaugeAngles();l.moveTo(n.centerX+Math.cos(o.start)*n.length,n.centerY+Math.sin(o.start)*n.length);l.arc(n.centerX,n.centerY,n.length,o.start,o.end,true);break}}},getGaugeAngles:function(){var e=this,f=e.attr.totalAngle,d;if(f<=Math.PI){d=(Math.PI-f)*0.5}else{d=-(Math.PI*2-f)*0.5}d=Math.PI*2-d;return{start:d,end:d-f}},renderGridLines:function(C,B,w,x){var v=this,M=v.getAxis(),D=v.attr,z=D.matrix,K=D.startGap,N=D.endGap,L=z.getXX(),E=z.getYY(),G=z.getDX(),H=z.getDY(),j=D.position,I=M.getGridAlignment(),y=w.majorTicks,J,A,F;if(D.grid){if(y){if(j==="left"||j==="right"){F=D.min*E+H+N+K;v.iterate(y,function(c,a,b){J=c*E+H+N;v.putMarker(I+"-"+(b%2?"odd":"even"),{y:J,height:F-J},A=b,true);F=J});A++;J=0;v.putMarker(I+"-"+(A%2?"odd":"even"),{y:J,height:F-J},A,true)}else{if(j==="top"||j==="bottom"){F=D.min*L+G+K;if(K){v.putMarker(I+"-even",{x:0,width:F},-1,true)}v.iterate(y,function(c,a,b){J=c*L+G+K;v.putMarker(I+"-"+(b%2?"odd":"even"),{x:J,width:F-J},A=b,true);F=J});A++;J=D.length+D.startGap+D.endGap;v.putMarker(I+"-"+(A%2?"odd":"even"),{x:J,width:F-J},A,true)}else{if(j==="radial"){v.iterate(y,function(c,a,b){if(!c){return}J=c/D.max*D.length;v.putMarker(I+"-"+(b%2?"odd":"even"),{scalingX:J,scalingY:J},b,true);F=J})}else{if(j==="angular"){v.iterate(y,function(c,a,b){if(!D.length){return}J=c/(D.max+1)*Math.PI*2+D.baseRotation;v.putMarker(I+"-"+(b%2?"odd":"even"),{rotationRads:J,rotationCenterX:0,rotationCenterY:0,scalingX:D.length,scalingY:D.length},b,true);F=J})}}}}}}},renderLimits:function(C){var x=this,P=x.getAxis(),I=P.getChart(),B=I.getInnerPadding(),M=Ext.Array.from(P.getLimits());if(!M.length){return}var z=P.limits.surface.getRect(),E=x.attr,D=E.matrix,w=E.position,G=Ext.Object.chain,i=P.limits.titles,N,H,O,y,F,A,K,J,L;i.instances=[];i.position=0;if(w==="left"||w==="right"){for(A=0,K=M.length;A<K;A++){y=G(M[A]);!y.line&&(y.line={});F=Ext.isString(y.value)?P.getCoordFor(y.value):y.value;F=F*D.getYY()+D.getDY();y.line.y=F+B.top;y.line.strokeStyle=y.line.strokeStyle||E.strokeStyle;x.putMarker("horizontal-limit-lines",y.line,A,true);if(y.line.title){i.createInstance(y.line.title);N=i.getBBoxFor(i.position-1);H=y.line.title.position||(w==="left"?"start":"end");switch(H){case"start":J=10;break;case"end":J=z[2]-10;break;case"middle":J=z[2]/2;break}i.setAttributesFor(i.position-1,{x:J,y:y.line.y-N.height/2,textAlign:H,fillStyle:y.line.title.fillStyle||y.line.strokeStyle})}}}else{if(w==="top"||w==="bottom"){for(A=0,K=M.length;A<K;A++){y=G(M[A]);!y.line&&(y.line={});F=Ext.isString(y.value)?P.getCoordFor(y.value):y.value;F=F*D.getXX()+D.getDX();y.line.x=F+B.left;y.line.strokeStyle=y.line.strokeStyle||E.strokeStyle;x.putMarker("vertical-limit-lines",y.line,A,true);if(y.line.title){i.createInstance(y.line.title);N=i.getBBoxFor(i.position-1);H=y.line.title.position||(w==="top"?"end":"start");switch(H){case"start":L=z[3]-N.width/2-10;break;case"end":L=N.width/2+10;break;case"middle":L=z[3]/2;break}i.setAttributesFor(i.position-1,{x:y.line.x+N.height/2,y:L,fillStyle:y.line.title.fillStyle||y.line.strokeStyle,rotationRads:Math.PI/2})}}}else{if(w==="radial"){for(A=0,K=M.length;A<K;A++){y=G(M[A]);!y.line&&(y.line={});F=Ext.isString(y.value)?P.getCoordFor(y.value):y.value;if(F>E.max){continue}F=F/E.max*E.length;y.line.cx=E.centerX;y.line.cy=E.centerY;y.line.scalingX=F;y.line.scalingY=F;y.line.strokeStyle=y.line.strokeStyle||E.strokeStyle;x.putMarker("circular-limit-lines",y.line,A,true);if(y.line.title){i.createInstance(y.line.title);N=i.getBBoxFor(i.position-1);i.setAttributesFor(i.position-1,{x:E.centerX,y:E.centerY-F-N.height/2,fillStyle:y.line.title.fillStyle||y.line.strokeStyle})}}}else{if(w==="angular"){for(A=0,K=M.length;A<K;A++){y=G(M[A]);!y.line&&(y.line={});F=Ext.isString(y.value)?P.getCoordFor(y.value):y.value;F=F/(E.max+1)*Math.PI*2+E.baseRotation;y.line.translationX=E.centerX;y.line.translationY=E.centerY;y.line.rotationRads=F;y.line.rotationCenterX=0;y.line.rotationCenterY=0;y.line.scalingX=E.length;y.line.scalingY=E.length;y.line.strokeStyle=y.line.strokeStyle||E.strokeStyle;x.putMarker("radial-limit-lines",y.line,A,true);if(y.line.title){i.createInstance(y.line.title);N=i.getBBoxFor(i.position-1);O=((F>-0.5*Math.PI&&F<0.5*Math.PI)||(F>1.5*Math.PI&&F<2*Math.PI))?1:-1;i.setAttributesFor(i.position-1,{x:E.centerX+0.5*E.length*Math.cos(F)+O*N.height/2*Math.sin(F),y:E.centerY+0.5*E.length*Math.sin(F)-O*N.height/2*Math.cos(F),rotationRads:O===1?F:F-Math.PI,fillStyle:y.line.title.fillStyle||y.line.strokeStyle})}}}else{if(w==="gauge"){}}}}}},doThicknessChanged:function(){var b=this.getAxis();if(b){b.onThicknessChanged()}},render:function(g,j,i){var h=this,f=h.getLayoutContext();if(f){if(false===h.renderLabels(g,j,f,i)){return false}j.beginPath();h.renderTicks(g,j,f,i);h.renderAxisLine(g,j,f,i);h.renderGridLines(g,j,f,i);h.renderLimits(i);j.stroke()}}},0,0,0,0,["sprite.axis"],[["markerHolder",Ext.chart.MarkerHolder]],[Ext.chart.axis.sprite,"Axis"],0));(Ext.cmd.derive("Ext.chart.axis.segmenter.Segmenter",Ext.Base,{config:{axis:null},constructor:function(b){this.initConfig(b)},renderer:function(c,d){return String(c)},from:function(b){return b},diff:Ext.emptyFn,align:Ext.emptyFn,add:Ext.emptyFn,preferredStep:Ext.emptyFn},1,0,0,0,0,0,[Ext.chart.axis.segmenter,"Segmenter"],0));(Ext.cmd.derive("Ext.chart.axis.segmenter.Names",Ext.chart.axis.segmenter.Segmenter,{renderer:function(c,d){return c},diff:function(d,e,f){return Math.floor(e-d)},align:function(f,d,e){return Math.floor(f)},add:function(f,d,e){return f+d},preferredStep:function(h,f,e,g){return{unit:1,step:1}}},0,0,0,0,["segmenter.names"],0,[Ext.chart.axis.segmenter,"Names"],0));(Ext.cmd.derive("Ext.chart.axis.segmenter.Numeric",Ext.chart.axis.segmenter.Segmenter,{isNumeric:true,renderer:function(c,d){return c.toFixed(Math.max(0,d.majorTicks.unit.fixes))},diff:function(d,e,f){return Math.floor((e-d)/f.scale)},align:function(f,d,e){return Math.floor(f/(e.scale*d))*e.scale*d},add:function(f,d,e){return f+d*e.scale},preferredStep:function(h,e){var f=Math.floor(Math.log(e)*Math.LOG10E),g=Math.pow(10,f);e/=g;if(e<2){e=2}else{if(e<5){e=5}else{if(e<10){e=10;f++}}}return{unit:{fixes:-f,scale:g},step:e}},exactStep:function(h,e){var f=Math.floor(Math.log(e)*Math.LOG10E),g=Math.pow(10,f);return{unit:{fixes:-f+(e%g===0?0:1),scale:1},step:e}},adjustByMajorUnit:function(l,j,n){var m=n[0],h=n[1],i=l*j,k=m%i;if(k!==0){n[0]=m-k+(m<0?-i:0)}k=h%i;if(k!==0){n[1]=h-k+(h>0?i:0)}}},0,0,0,0,["segmenter.numeric"],0,[Ext.chart.axis.segmenter,"Numeric"],0));(Ext.cmd.derive("Ext.chart.axis.segmenter.Time",Ext.chart.axis.segmenter.Segmenter,{config:{step:null},renderer:function(f,d){var e=Ext.Date;switch(d.majorTicks.unit){case"y":return e.format(f,"Y");case"mo":return e.format(f,"Y-m");case"d":return e.format(f,"Y-m-d")}return e.format(f,"Y-m-d\nH:i:s")},from:function(b){return new Date(b)},diff:function(d,e,f){if(isFinite(d)){d=new Date(d)}if(isFinite(e)){e=new Date(e)}return Ext.Date.diff(d,e,f)},align:function(e,f,d){if(d==="d"&&f>=7){e=Ext.Date.align(e,"d",f);e.setDate(e.getDate()-e.getDay()+1);return e}else{return Ext.Date.align(e,d,f)}},add:function(f,d,e){return Ext.Date.add(new Date(f),e,d)},stepUnits:[[Ext.Date.YEAR,1,2,5,10,20,50,100,200,500],[Ext.Date.MONTH,1,3,6],[Ext.Date.DAY,1,7,14],[Ext.Date.HOUR,1,6,12],[Ext.Date.MINUTE,1,5,15,30],[Ext.Date.SECOND,1,5,15,30],[Ext.Date.MILLI,1,2,5,10,20,50,100,200,500]],preferredStep:function(s,p){if(this.getStep()){return this.getStep()}var o=new Date(+s),n=new Date(+s+Math.ceil(p)),q=this.stepUnits,i,j,m,r,t;for(r=0;r<q.length;r++){j=q[r][0];m=this.diff(o,n,j);if(m>0){for(t=1;t<q[r].length;t++){if(m<=q[r][t]){i={unit:j,step:q[r][t]};break}}if(!i){r--;i={unit:q[r][0],step:1}}break}}if(!i){i={unit:Ext.Date.DAY,step:1}}return i}},0,0,0,0,["segmenter.time"],0,[Ext.chart.axis.segmenter,"Time"],0));(Ext.cmd.derive("Ext.chart.axis.layout.Layout",Ext.Base,{config:{axis:null},constructor:function(b){this.mixins.observable.constructor.call(this,b)},processData:function(h){var l=this,n=l.getAxis(),k=n.getDirection(),j=n.boundSeries,i,m;if(h){h["coordinate"+k]()}else{for(i=0,m=j.length;i<m;i++){j[i]["coordinate"+k]()}}},calculateMajorTicks:function(r){var m=this,n=r.attr,o=n.max-n.min,j=o/Math.max(1,n.length)*(n.visibleMax-n.visibleMin),k=n.min+o*n.visibleMin,q=n.min+o*n.visibleMax,l=n.estStepSize*j,p=m.snapEnds(r,n.min,n.max,l);if(p){m.trimByRange(r,p,k,q);r.majorTicks=p}},calculateMinorTicks:function(b){if(this.snapMinorEnds){b.minorTicks=this.snapMinorEnds(b)}},calculateLayout:function(d){var f=this,e=d.attr;if(e.length===0){return null}if(e.majorTicks){f.calculateMajorTicks(d);if(e.minorTicks){f.calculateMinorTicks(d)}}},snapEnds:Ext.emptyFn,trimByRange:function(s,o,l,t){var n=s.segmenter,k=o.unit,m=n.diff(o.from,l,k),q=n.diff(o.from,t,k),r=Math.max(0,Math.ceil(m/o.step)),p=Math.min(o.steps,Math.floor(q/o.step));if(p<o.steps){o.to=n.add(o.from,p*o.step,k)}if(o.max>t){o.max=o.to}if(o.from<l){o.from=n.add(o.from,r*o.step,k);while(o.from<l){r++;o.from=n.add(o.from,o.step,k)}}if(o.min<l){o.min=o.from}o.steps=p-r}},1,0,0,0,0,[["observable",Ext.mixin.Observable]],[Ext.chart.axis.layout,"Layout"],0));(Ext.cmd.derive("Ext.chart.axis.layout.Discrete",Ext.chart.axis.layout.Layout,{isDiscrete:true,processData:function(){var k=this,m=k.getAxis(),n=m.boundSeries,j=m.getDirection(),h,l,i;k.labels=[];k.labelMap={};for(h=0,l=n.length;h<l;h++){i=n[h];if(i["get"+j+"Axis"]()===m){i["coordinate"+j]()}}m.getSprites()[0].setAttributes({data:k.labels});k.fireEvent("datachange",k.labels)},calculateLayout:function(b){b.data=this.labels;Ext.chart.axis.layout.Layout.prototype.calculateLayout.call(this,b)},calculateMajorTicks:function(t){var n=this,o=t.attr,q=t.data,p=o.max-o.min,k=p/Math.max(1,o.length)*(o.visibleMax-o.visibleMin),l=o.min+p*o.visibleMin,s=o.min+p*o.visibleMax,m=o.estStepSize*k;var r=n.snapEnds(t,Math.max(0,o.min),Math.min(o.max,q.length-1),m);if(r){n.trimByRange(t,r,l,s);t.majorTicks=r}},snapEnds:function(j,k,h,g){g=Math.ceil(g);var l=Math.floor((h-k)/g),i=j.data;return{min:k,max:h,from:k,to:l*g+k,step:g,steps:l,unit:1,getLabel:function(a){return i[this.from+this.step*a]},get:function(a){return this.from+this.step*a}}},trimByRange:function(q,m,k,r){var j=m.unit,l=Math.ceil((k-m.from)/j)*j,o=Math.floor((r-m.from)/j)*j,p=Math.max(0,Math.ceil(l/m.step)),n=Math.min(m.steps,Math.floor(o/m.step));if(n<m.steps){m.to=n}if(m.max>r){m.max=m.to}if(m.from<k&&m.step>0){m.from=m.from+p*m.step*j;while(m.from<k){p++;m.from+=m.step*j}}if(m.min<k){m.min=m.from}m.steps=n-p},getCoordFor:function(h,g,f,e){this.labels.push(h);return this.labels.length-1}},0,0,0,0,["axisLayout.discrete"],0,[Ext.chart.axis.layout,"Discrete"],0));(Ext.cmd.derive("Ext.chart.axis.layout.CombineDuplicate",Ext.chart.axis.layout.Discrete,{getCoordFor:function(i,h,f,j){if(!(i in this.labelMap)){var g=this.labelMap[i]=this.labels.length;this.labels.push(i);return g}return this.labelMap[i]}},0,0,0,0,["axisLayout.combineDuplicate"],0,[Ext.chart.axis.layout,"CombineDuplicate"],0));(Ext.cmd.derive("Ext.chart.axis.layout.Continuous",Ext.chart.axis.layout.Layout,{isContinuous:true,config:{adjustMinimumByMajorUnit:false,adjustMaximumByMajorUnit:false},getCoordFor:function(h,g,f,e){return +h},snapEnds:function(x,u,p,q){var s=x.segmenter,v=this.getAxis(),m=v.getMajorTickSteps(),t=m&&s.exactStep?s.exactStep(u,(p-u)/m):s.preferredStep(u,q),n=t.unit,w=t.step,o=s.align(u,w,n),r=(m||s.diff(u,p,n))+1;return{min:s.from(u),max:s.from(p),from:o,to:s.add(o,r*w,n),step:w,steps:r,unit:n,get:function(a){return s.add(this.from,this.step*a,n)}}},snapMinorEnds:function(B){var x=B.majorTicks,p=this.getAxis().getMinorTickSteps(),w=B.segmenter,y=x.min,t=x.max,r=x.from,q=x.unit,A=x.step/p,o=A*q.scale,s=r-y,z=Math.floor(s/o),u=z+Math.floor((t-x.to)/o)+1,v=x.steps*p+u;return{min:y,max:t,from:y+s%o,to:w.add(r,v*A,q),step:A,steps:v,unit:q,get:function(a){return(a%p+z+1!==0)?w.add(this.from,this.step*a,q):null}}}},0,0,0,0,["axisLayout.continuous"],0,[Ext.chart.axis.layout,"Continuous"],0));(Ext.cmd.derive("Ext.chart.axis.Axis",Ext.Base,{isAxis:true,config:{position:"bottom",fields:[],label:undefined,grid:false,limits:null,renderer:null,chart:null,style:null,margin:0,titleMargin:4,background:null,minimum:NaN,maximum:NaN,reconcileRange:false,minZoom:1,maxZoom:10000,layout:"continuous",segmenter:"numeric",hidden:false,majorTickSteps:0,minorTickSteps:0,adjustByMajorUnit:true,title:null,increment:0.5,length:0,center:null,radius:null,totalAngle:Math.PI,rotation:null,labelInSpan:null,visibleRange:[0,1],needHighPrecision:false,linkedTo:null,floating:null},titleOffset:0,spriteAnimationCount:0,prevMin:0,prevMax:1,boundSeries:[],sprites:null,surface:null,range:null,xValues:[],yValues:[],masterAxis:null,applyRotation:function(c){var d=Math.PI*2;return(c%d+Math.PI)%d-Math.PI},updateRotation:function(d){var f=this.getSprites(),e=this.getPosition();if(!this.getHidden()&&e==="angular"&&f[0]){f[0].setAttributes({baseRotation:d})}},applyTitle:function(f,d){var e;if(Ext.isString(f)){f={text:f}}if(!d){d=Ext.create("sprite.text",f);if((e=this.getSurface())){e.add(d)}}else{d.setAttributes(f)}return d},applyFloating:function(c,d){if(c===null){c={value:null,alongAxis:null}}else{if(Ext.isNumber(c)){c={value:c,alongAxis:null}}}if(Ext.isObject(c)){if(d&&d.alongAxis){delete this.getChart().getAxis(d.alongAxis).floatingAxes[this.getId()]}return c}return d},constructor:function(e){var d=this,f;d.sprites=[];d.labels=[];d.floatingAxes={};e=e||{};if(e.position==="angular"){e.style=e.style||{};e.style.estStepSize=1}if("id" in e){f=e.id}else{if("id" in d.config){f=d.config.id}else{f=d.getId()}}d.setId(f);d.mixins.observable.constructor.apply(d,arguments)},getAlignment:function(){switch(this.getPosition()){case"left":case"right":return"vertical";case"top":case"bottom":return"horizontal";case"radial":return"radial";case"angular":return"angular"}},getGridAlignment:function(){switch(this.getPosition()){case"left":case"right":return"horizontal";case"top":case"bottom":return"vertical";case"radial":return"circular";case"angular":return"radial"}},getSurface:function(){var j=this,k=j.getChart();if(k&&!j.surface){var g=j.surface=k.getSurface(j.getId(),"axis"),l=j.gridSurface=k.getSurface("main"),h=j.getSprites()[0],i=j.getGridAlignment();l.waitFor(g);j.getGrid();if(j.getLimits()&&i){i=i.replace("3d","");j.limits={surface:k.getSurface("overlay"),lines:new Ext.chart.Markers(),titles:new Ext.draw.sprite.Instancing()};j.limits.lines.setTemplate({xclass:"grid."+i});j.limits.lines.getTemplate().setAttributes({strokeStyle:"black"},true);j.limits.surface.add(j.limits.lines);h.bindMarker(i+"-limit-lines",j.limits.lines);j.limitTitleTpl=new Ext.draw.sprite.Text();j.limits.titles.setTemplate(j.limitTitleTpl);j.limits.surface.add(j.limits.titles);k.on("redraw",j.renderLimits,j)}}return j.surface},applyGrid:function(b){if(b===true){return{}}return b},updateGrid:function(h){var l=this,m=l.getChart();if(!m){l.on({chartattached:Ext.bind(l.updateGrid,l,[h]),single:true});return}var n=l.gridSurface,i=l.getSprites()[0],k=l.getGridAlignment(),j;if(h){j=l.gridSpriteEven;if(!j){j=l.gridSpriteEven=new Ext.chart.Markers();j.setTemplate({xclass:"grid."+k});n.add(j);i.bindMarker(k+"-even",j)}if(Ext.isObject(h)){j.getTemplate().setAttributes(h);if(Ext.isObject(h.even)){j.getTemplate().setAttributes(h.even)}}j=l.gridSpriteOdd;if(!j){j=l.gridSpriteOdd=new Ext.chart.Markers();j.setTemplate({xclass:"grid."+k});n.add(j);i.bindMarker(k+"-odd",j)}if(Ext.isObject(h)){j.getTemplate().setAttributes(h);if(Ext.isObject(h.odd)){j.getTemplate().setAttributes(h.odd)}}}},renderLimits:function(){this.getSprites()[0].renderLimits()},getCoordFor:function(h,g,f,e){return this.getLayout().getCoordFor(h,g,f,e)},applyPosition:function(b){return b.toLowerCase()},applyLength:function(c,d){return c>0?c:d},applyLabel:function(c,d){if(!d){d=new Ext.draw.sprite.Text({})}if(this.limitTitleTpl){this.limitTitleTpl.setAttributes(c)}d.setAttributes(c);return d},applyLayout:function(c,d){c=Ext.factory(c,null,d,"axisLayout");c.setAxis(this);return c},applySegmenter:function(d,c){d=Ext.factory(d,null,c,"segmenter");d.setAxis(this);return d},updateMinimum:function(){this.range=null},updateMaximum:function(){this.range=null},hideLabels:function(){this.getSprites()[0].setDirty(true);this.setLabel({hidden:true})},showLabels:function(){this.getSprites()[0].setDirty(true);this.setLabel({hidden:false})},renderFrame:function(){this.getSurface().renderFrame()},updateChart:function(g,e){var h=this,f;if(e){e.unregister(h);e.un("serieschange",h.onSeriesChange,h);e.un("redraw",h.renderLimits,h);h.linkAxis();h.fireEvent("chartdetached",e,h)}if(g){g.on("serieschange",h.onSeriesChange,h);h.surface=null;f=h.getSurface();h.getLabel().setSurface(f);f.add(h.getSprites());f.add(h.getTitle());g.register(h);h.fireEvent("chartattached",g,h)}},applyBackground:function(d){var c=Ext.ClassManager.getByAlias("sprite.rect");return c.def.normalize(d)},processData:function(){this.getLayout().processData();this.range=null},getDirection:function(){return this.getChart().getDirectionForAxis(this.getPosition())},isSide:function(){var b=this.getPosition();return b==="left"||b==="right"},applyFields:function(b){return Ext.Array.from(b)},applyVisibleRange:function(e,f){this.getChart();if(e[0]>e[1]){var d=e[0];e[0]=e[1];e[0]=d}if(e[1]===e[0]){e[1]+=1/this.getMaxZoom()}if(e[1]>e[0]+1){e[0]=0;e[1]=1}else{if(e[0]<0){e[1]-=e[0];e[0]=0}else{if(e[1]>1){e[0]-=e[1]-1;e[1]=1}}}if(f&&e[0]===f[0]&&e[1]===f[1]){return undefined}return e},updateVisibleRange:function(b){this.fireEvent("visiblerangechange",this,b)},onSeriesChange:function(n){var m=this,q=n.getSeries(),i="get"+m.getDirection()+"Axis",l=[],p,o=q.length,r,k;for(p=0;p<o;p++){if(this===q[p][i]()){l.push(q[p])}}m.boundSeries=l;r=m.getLinkedTo();k=!Ext.isEmpty(r)&&n.getAxis(r);if(k){m.linkAxis(k)}else{m.getLayout().processData()}},linkAxis:function(e){var f=this;function d(a,c,b){b.getLayout()[a]("datachange","onDataChange",c);b[a]("rangechange","onMasterAxisRangeChange",c)}if(f.masterAxis){d("un",f,f.masterAxis);f.masterAxis=null}if(e){if(e.type!==this.type){Ext.Error.raise("Linked axes must be of the same type.")}d("on",f,e);f.onDataChange(e.getLayout().labels);f.onMasterAxisRangeChange(e,e.range);f.setStyle(Ext.apply({},f.config.style,e.config.style));f.setTitle(Ext.apply({},f.config.title,e.config.title));f.setLabel(Ext.apply({},f.config.label,e.config.label));f.masterAxis=e}},onDataChange:function(b){this.getLayout().labels=b},onMasterAxisRangeChange:function(c,d){this.range=d},applyRange:function(b){if(!b){return this.dataRange.slice(0)}else{return[b[0]===null?this.dataRange[0]:b[0],b[1]===null?this.dataRange[1]:b[1]]}},getRange:function(){var s=this;if(s.range){return s.range}else{if(s.masterAxis){return s.masterAxis.range}}if(Ext.isNumber(s.getMinimum()+s.getMaximum())){return s.range=[s.getMinimum(),s.getMaximum()]}var A=Infinity,r=-Infinity,q=s.boundSeries,w=s.getLayout(),t=s.getSegmenter(),i=s.getVisibleRange(),C="get"+s.getDirection()+"Range",D,v,x,y,z,u;for(z=0,u=q.length;z<u;z++){y=q[z];var B=y[C]();if(B){if(B[0]<A){A=B[0]}if(B[1]>r){r=B[1]}}}if(!isFinite(r)){r=s.prevMax}if(!isFinite(A)){A=s.prevMin}if(s.getLabelInSpan()||A===r){r+=s.getIncrement();A-=s.getIncrement()}if(Ext.isNumber(s.getMinimum())){A=s.getMinimum()}else{s.prevMin=A}if(Ext.isNumber(s.getMaximum())){r=s.getMaximum()}else{s.prevMax=r}s.range=[Ext.Number.correctFloat(A),Ext.Number.correctFloat(r)];if(s.getReconcileRange()){s.reconcileRange()}if(s.getAdjustByMajorUnit()&&t.adjustByMajorUnit&&!s.getMajorTickSteps()){v=Ext.Object.chain(s.getSprites()[0].attr);v.min=s.range[0];v.max=s.range[1];v.visibleMin=i[0];v.visibleMax=i[1];D={attr:v,segmenter:t};w.calculateLayout(D);x=D.majorTicks;if(x){t.adjustByMajorUnit(x.step,x.unit.scale,s.range);v.min=s.range[0];v.max=s.range[1];delete D.majorTicks;w.calculateLayout(D);x=D.majorTicks;t.adjustByMajorUnit(x.step,x.unit.scale,s.range)}else{if(!s.hasClearRangePending){s.hasClearRangePending=true;s.getChart().on("layout","clearRange",s)}}}if(!Ext.Array.equals(s.range,s.oldRange||[])){s.fireEvent("rangechange",s,s.range);s.oldRange=s.range}return s.range},clearRange:function(){delete this.hasClearRangePending;this.range=null},reconcileRange:function(){var l=this,j=l.getChart().getAxes(),k=l.getDirection(),h,m,n,i;if(!j){return}for(h=0,m=j.length;h<m;h++){n=j[h];i=n.getRange();if(n===l||n.getDirection()!==k||!i||!n.getReconcileRange()){continue}if(i[0]<l.range[0]){l.range[0]=i[0]}if(i[1]>l.range[1]){l.range[1]=i[1]}}},applyStyle:function(f,d){var e=Ext.ClassManager.getByAlias("sprite."+this.seriesType);if(e&&e.def){f=e.def.normalize(f)}d=Ext.apply(d||{},f);return d},themeOnlyIfConfigured:{grid:true},updateTheme:function(C){var x=this,v=C.getAxis(),B=x.getPosition(),r=x.getInitialConfig(),D=x.defaultConfig,z=x.getConfigurator().configs,F=v.defaults,s=v[B],y=x.themeOnlyIfConfigured,u,w,q,E,t,A;v=Ext.merge({},F,s);for(u in v){w=v[u];A=z[u];if(w!==null&&w!==undefined&&A){t=r[u];q=Ext.isObject(w);E=t===D[u];if(q){if(E&&y[u]){continue}w=Ext.merge({},w,t)}if(E||q){x[A.names.set](w)}}}},updateCenter:function(f){var h=this.getSprites(),g=h[0],i=f[0],j=f[1];if(g){g.setAttributes({centerX:i,centerY:j})}if(this.gridSpriteEven){this.gridSpriteEven.getTemplate().setAttributes({translationX:i,translationY:j,rotationCenterX:i,rotationCenterY:j})}if(this.gridSpriteOdd){this.gridSpriteOdd.getTemplate().setAttributes({translationX:i,translationY:j,rotationCenterX:i,rotationCenterY:j})}},getSprites:function(){if(!this.getChart()){return}var j=this,n=j.getRange(),m=j.getPosition(),l=j.getChart(),p=l.getAnimation(),o,r,q=j.getLength(),k=j.superclass;if(p===false){p={duration:0}}if(n){r=Ext.applyIf({position:m,axis:j,min:n[0],max:n[1],length:q,grid:j.getGrid(),hidden:j.getHidden(),titleOffset:j.titleOffset,layout:j.getLayout(),segmenter:j.getSegmenter(),totalAngle:j.getTotalAngle(),label:j.getLabel()},j.getStyle());if(!j.sprites.length){while(!k.xtype){k=k.superclass}o=Ext.create("sprite."+k.xtype,r);o.fx.setCustomDurations({baseRotation:0});o.fx.on("animationstart","onAnimationStart",j);o.fx.on("animationend","onAnimationEnd",j);o.setLayout(j.getLayout());o.setSegmenter(j.getSegmenter());o.setLabel(j.getLabel());j.sprites.push(o);j.updateTitleSprite()}else{o=j.sprites[0];o.setAnimation(p);o.setAttributes(r)}if(j.getRenderer()){o.setRenderer(j.getRenderer())}}return j.sprites},updateTitleSprite:function(){var m=this,q=m.getLength();if(!m.sprites[0]||!Ext.isNumber(q)){return}var k=this.sprites[0].thickness,r=m.getSurface(),l=m.getTitle(),n=m.getPosition(),p=m.getMargin(),j=m.getTitleMargin(),o=r.roundPixel(q/2);if(l){switch(n){case"top":l.setAttributes({x:o,y:p+j/2,textBaseline:"top",textAlign:"center"},true);l.applyTransformations();m.titleOffset=l.getBBox().height+j;break;case"bottom":l.setAttributes({x:o,y:k+j/2,textBaseline:"top",textAlign:"center"},true);l.applyTransformations();m.titleOffset=l.getBBox().height+j;break;case"left":l.setAttributes({x:p+j/2,y:o,textBaseline:"top",textAlign:"center",rotationCenterX:p+j/2,rotationCenterY:o,rotationRads:-Math.PI/2},true);l.applyTransformations();m.titleOffset=l.getBBox().width+j;break;case"right":l.setAttributes({x:k-p+j/2,y:o,textBaseline:"bottom",textAlign:"center",rotationCenterX:k+j/2,rotationCenterY:o,rotationRads:Math.PI/2},true);l.applyTransformations();m.titleOffset=l.getBBox().width+j;break}}},onThicknessChanged:function(){this.getChart().onThicknessChanged()},getThickness:function(){if(this.getHidden()){return 0}return(this.sprites[0]&&this.sprites[0].thickness||1)+this.titleOffset+this.getMargin()},onAnimationStart:function(){this.spriteAnimationCount++;if(this.spriteAnimationCount===1){this.fireEvent("animationstart",this)}},onAnimationEnd:function(){this.spriteAnimationCount--;if(this.spriteAnimationCount===0){this.fireEvent("animationend",this)}},getItemId:function(){return this.getId()},getAncestorIds:function(){return[this.getChart().getId()]},isXType:function(b){return b==="axis"},resolveListenerScope:function(h){var i=this,g=Ext._namedScopes[h],j=i.getChart(),f;if(!g){f=j?j.resolveListenerScope(h,false):(h||i)}else{if(g.isThis){f=i}else{if(g.isController){f=j?j.resolveListenerScope(h,false):i}else{if(g.isSelf){f=j?j.resolveListenerScope(h,false):i;if(f===j&&!j.getInheritedConfig("defaultListenerScope")){f=i}}}}}return f},destroy:function(){var b=this;b.setChart(null);b.surface.destroy();b.surface=null;b.callParent()}},1,["axis"],["axis"],{axis:true},["widget.axis"],[["observable",Ext.mixin.Observable]],[Ext.chart.axis,"Axis"],0));(Ext.cmd.derive("Ext.chart.LegendBase",Ext.dataview.DataView,{config:{itemTpl:['<span class="',"x-","legend-item-marker {[ values.disabled ? Ext.baseCSSPrefix + 'legend-inactive' : '' ]}\" style=\"background:{mark};\"></span>{name}"],inline:true,horizontalHeight:48,verticalWidth:150,position:""},constructor:function(f){Ext.dataview.DataView.prototype.constructor.call(this,f);var e=this.getScrollable(),d=e.onDrag;e.onDrag=function(a){a.stopPropagation();d.call(this,a)}},updatePosition:function(b){this.setDocked(b)},updateDocked:function(f,d){var e=this;Ext.dataview.DataView.prototype.updateDocked.call(this,f,d);if(f==="top"||f==="bottom"){e.setLayout({type:"hbox",pack:"center"});e.setInline(true);e.setWidth(null);e.setHeight(e.getHorizontalHeight());if(e.getScrollable()){e.setScrollable({direction:"horizontal"})}}else{e.setLayout({pack:"center"});e.setInline(false);e.setWidth(e.getVerticalWidth());e.setHeight(null);if(e.getScrollable()){e.setScrollable({direction:"vertical"})}}},onItemTap:function(f,g,e,h){Ext.dataview.DataView.prototype.onItemTap.apply(this,arguments);this.toggleItem(e)}},1,0,["widget","component","container","dataview"],{widget:true,component:true,container:true,dataview:true},0,0,[Ext.chart,"LegendBase"],0));(Ext.cmd.derive("Ext.chart.Legend",Ext.chart.LegendBase,{config:{baseCls:"x-legend",padding:5,rect:null,disableSelection:true,toggleable:true},toggleItem:function(p){if(!this.getToggleable()){return}var i=this.getStore(),k=0,n,l=true,o,m,j;if(i){m=i.getCount();for(o=0;o<m;o++){j=i.getAt(o);if(j.get("disabled")){k++}}l=m-k>1;j=i.getAt(p);if(j){n=j.get("disabled");if(n||l){j.set("disabled",!n)}}}}},0,["legend"],["widget","component","container","dataview","legend"],{widget:true,component:true,container:true,dataview:true,legend:true},["widget.legend"],0,[Ext.chart,"Legend"],0));(Ext.cmd.derive("Ext.chart.AbstractChart",Ext.draw.Container,{isChart:true,defaultBindProperty:"store",config:{store:"ext-empty-store",theme:"default",style:null,animation:!Ext.isIE8,series:[],axes:[],legend:null,colors:null,insetPadding:{top:10,left:10,right:10,bottom:10},background:null,interactions:[],mainRect:null,resizeHandler:null,highlightItem:null},animationSuspendCount:0,chartLayoutSuspendCount:0,axisThicknessSuspendCount:0,isThicknessChanged:false,surfaceZIndexes:{background:0,main:1,grid:2,series:3,axis:4,chart:5,overlay:6,events:7},constructor:function(d){var c=this;c.itemListeners={};c.surfaceMap={};c.chartComponents={};c.isInitializing=true;c.suspendChartLayout();c.animationSuspendCount++;Ext.draw.Container.prototype.constructor.apply(this,arguments);delete c.isInitializing;c.getSurface("main");c.getSurface("chart").setFlipRtlText(c.getInherited().rtl);c.getSurface("overlay").waitFor(c.getSurface("series"));c.animationSuspendCount--;c.resumeChartLayout()},applyAnimation:function(d,c){if(!d){d={duration:0}}else{if(d===true){d={easing:"easeInOut",duration:500}}}return c?Ext.apply({},d,c):d},getAnimation:function(){if(this.animationSuspendCount){return{duration:0}}else{return(arguments.callee.$previous||Ext.draw.Container.prototype.getAnimation).call(this)}},applyInsetPadding:function(c,d){if(!Ext.isObject(c)){return Ext.util.Format.parseBox(c)}else{if(!d){return c}else{return Ext.apply(d,c)}}},suspendAnimation:function(){var i=this,j=i.getSeries(),h=j.length,f=-1,g;i.animationSuspendCount++;if(i.animationSuspendCount===1){while(++f<h){g=j[f];g.setAnimation(g.getAnimation())}}},resumeAnimation:function(){var k=this,l=k.getSeries(),i=l.length,g=-1,h,j;k.animationSuspendCount--;if(k.animationSuspendCount===0){while(++g<i){h=l[g];j=h.getAnimation();h.setAnimation(j.duration&&j||k.getAnimation())}}},suspendChartLayout:function(){this.chartLayoutSuspendCount++;if(this.chartLayoutSuspendCount===1){if(this.scheduledLayoutId){this.layoutInSuspension=true;this.cancelChartLayout()}else{this.layoutInSuspension=false}}},resumeChartLayout:function(){this.chartLayoutSuspendCount--;if(this.chartLayoutSuspendCount===0){if(this.layoutInSuspension){this.scheduleLayout()}}},cancelChartLayout:function(){if(this.scheduledLayoutId){Ext.draw.Animator.cancel(this.scheduledLayoutId);this.scheduledLayoutId=null}},scheduleLayout:function(){var b=this;if(b.allowSchedule()&&!b.scheduledLayoutId){b.scheduledLayoutId=Ext.draw.Animator.schedule("doScheduleLayout",b)}},allowSchedule:function(){return true},doScheduleLayout:function(){if(this.chartLayoutSuspendCount){this.layoutInSuspension=true}else{this.performLayout()}},suspendThicknessChanged:function(){this.axisThicknessSuspendCount++},resumeThicknessChanged:function(){if(this.axisThicknessSuspendCount>0){this.axisThicknessSuspendCount--;if(this.axisThicknessSuspendCount===0&&this.isThicknessChanged){this.onThicknessChanged()}}},onThicknessChanged:function(){if(this.axisThicknessSuspendCount===0){this.isThicknessChanged=false;this.performLayout()}else{this.isThicknessChanged=true}},applySprites:function(c){var d=this.getSurface("chart");c=Ext.Array.from(c);d.removeAll(true);d.add(c);return c},initItems:function(){var f=this.items,e,g,h;if(f&&!f.isMixedCollection){this.items=[];f=Ext.Array.from(f);for(e=0,g=f.length;e<g;e++){h=f[e];if(h.type){Ext.raise("To add custom sprites to the chart use the 'sprites' config.")}else{this.items.push(h)}}}this.callParent()},applyBackground:function(l,j){var g=this.getSurface("background"),k,h,i;if(l){if(j){k=j.attr.width;h=j.attr.height;i=j.type===(l.type||"rect")}if(l.isSprite){j=l}else{if(l.type==="image"&&Ext.isString(l.src)){if(i){j.setAttributes({src:l.src})}else{g.remove(j,true);j=g.add(l)}}else{if(i){j.setAttributes({fillStyle:l})}else{g.remove(j,true);j=g.add({type:"rect",fillStyle:l,fx:{customDurations:{x:0,y:0,width:0,height:0}}})}}}}if(k&&h){j.setAttributes({width:k,height:h})}j.setAnimation(this.getAnimation());return j},getLegendStore:function(){return this.legendStore},refreshLegendStore:function(){if(this.getLegendStore()){var i,h,j=this.getSeries(),f,g=[];if(j){for(i=0,h=j.length;i<h;i++){f=j[i];if(f.getShowInLegend()){f.provideLegendInfo(g)}}}this.getLegendStore().setData(g)}},resetLegendStore:function(){var j=this.getLegendStore(),h,i,g,f;if(j){h=this.getLegendStore().getData().items;for(i=0,g=h.length;i<g;i++){f=h[i];f.beginEdit();f.set("disabled",false);f.commit()}}},onUpdateLegendStore:function(e,f){var g=this.getSeries(),h;if(f&&g){h=g.map[f.get("series")];if(h){h.setHiddenByIndex(f.get("index"),f.get("disabled"));this.redraw()}}},defaultResizeHandler:function(b){this.scheduleLayout();return false},applyMainRect:function(d,c){if(!c){return d}this.getSeries();this.getAxes();if(d[0]===c[0]&&d[1]===c[1]&&d[2]===c[2]&&d[3]===c[3]){return c}else{return d}},register:function(e){var d=this.chartComponents,f=e.getId();d[f]=e},unregister:function(e){var d=this.chartComponents,f=e.getId();delete d[f]},get:function(b){return this.chartComponents[b]},getAxis:function(b){if(b instanceof Ext.chart.axis.Axis){return b}else{if(Ext.isNumber(b)){return this.getAxes()[b]}else{if(Ext.isString(b)){return this.get(b)}}}},getSurface:function(g,l){g=g||"main";l=l||g;var k=this,h=Ext.draw.Container.prototype.getSurface.call(this,g),i=k.surfaceZIndexes,j=k.surfaceMap;if(l in i){h.element.setStyle("zIndex",i[l])}if(!j[l]){j[l]=[]}if(Ext.Array.indexOf(j[l],h)<0){h.type=l;j[l].push(h);h.on("destroy",k.forgetSurface,k)}return h},forgetSurface:function(f){var g=this.surfaceMap;if(!g||this.isDestroying){return}var h=g[f.type],e=h?Ext.Array.indexOf(h,f):-1;if(e>=0){h.splice(e,1)}},applyAxes:function(w,o){var n=this,r={left:"right",right:"left"},i=[],v,u,t,x,s,q,p;n.animationSuspendCount++;n.getStore();if(!o){o=[];o.map={}}p=o.map;i.map={};w=Ext.Array.from(w,true);for(s=0,q=w.length;s<q;s++){v=w[s];if(!v){continue}if(v instanceof Ext.chart.axis.Axis){u=p[v.getId()];v.setChart(n)}else{v=Ext.Object.chain(v);t=v.linkedTo;x=v.id;if(Ext.isNumber(t)){v=Ext.merge({},w[t],v)}else{if(Ext.isString(t)){Ext.Array.each(w,function(a){if(a.id===v.linkedTo){v=Ext.merge({},a,v);return false}})}}v.id=x;v.chart=n;if(n.getInherited().rtl){v.position=r[v.position]||v.position}x=v.getId&&v.getId()||v.id;v=Ext.factory(v,null,u=p[x],"axis")}if(v){i.push(v);i.map[v.getId()]=v;if(!u){v.on("animationstart","onAnimationStart",n);v.on("animationend","onAnimationEnd",n)}}}for(s in p){if(!i.map[s]){p[s].destroy()}}n.animationSuspendCount--;return i},updateAxes:function(){if(!this.isDestroying){this.scheduleLayout()}},circularCopyArray:function(j,i,k){var l=[],g,h=j&&j.length;if(h){for(g=0;g<k;g++){l.push(j[(i+g)%h])}}return l},circularCopyObject:function(k,j,m){var n=this,h,l,i={};if(m){for(h in k){if(k.hasOwnProperty(h)){l=k[h];if(Ext.isArray(l)){i[h]=n.circularCopyArray(l,j,m)}else{i[h]=l}}}}return i},getColors:function(){var d=this,e=d.config.colors,f=d.getTheme();if(Ext.isArray(e)&&e.length>0){e=d.applyColors(e)}return e||(f&&f.getColors())},applyColors:function(b){b=Ext.Array.map(b,function(a){if(Ext.isString(a)){return a}else{return a.toString()}});return b},updateColors:function(t){var m=this,r=m.getTheme(),v=t||(r&&r.getColors()),i=0,q=m.getSeries(),s=q&&q.length,p,n,u,o;if(v.length){for(p=0;p<s;p++){n=q[p];o=n.themeColorCount();u=m.circularCopyArray(v,i,o);i+=o;n.updateChartColors(u)}}m.refreshLegendStore()},applyTheme:function(b){if(b&&b.isTheme){return b}return Ext.Factory.chartTheme(b)},updateTheme:function(j){var l=this,k=l.getAxes(),m=l.getSeries(),i=l.getColors(),n,h;l.updateChartTheme(j);for(h=0;h<k.length;h++){k[h].updateTheme(j)}for(h=0;h<m.length;h++){n=m[h];n.updateTheme(j)}l.updateSpriteTheme(j);l.updateColors(i);l.redraw()},themeOnlyIfConfigured:{},updateChartTheme:function(B){var v=this,t=B.getChart(),q=v.getInitialConfig(),C=v.defaultConfig,z=v.getConfigurator().configs,y=t.defaults,x=t[v.xtype],w=v.themeOnlyIfConfigured,s,u,p,D,r,A;t=Ext.merge({},y,x);for(s in t){u=t[s];A=z[s];if(u!==null&&u!==undefined&&A){r=q[s];p=Ext.isObject(u);D=r===C[s];if(p){if(D&&w[s]){continue}u=Ext.merge({},u,r)}if(D||p){v[A.names.set](u)}}}},updateSpriteTheme:function(v){this.getSprites();var p=this,t=p.getSurface("chart"),q=t.getItems(),i=v.getSprites(),o,x,n,s,u,w,r;for(w=0,r=q.length;w<r;w++){o=q[w];x=i[o.type];if(x){s={};u=o.type==="text";for(n in x){if(!(n in o.config)){if(!(u&&n.indexOf("font")===0&&o.config.font)){s[n]=x[n]}}}o.setAttributes(s)}}},addSeries:function(c){var d=this.getSeries();Ext.Array.push(d,c);this.setSeries(d)},removeSeries:function(m){m=Ext.Array.from(m);var h=this.getSeries(),k=[],i=m.length,j={},n,l;for(n=0;n<i;n++){l=m[n];if(typeof l!=="string"){l=l.getId()}j[l]=true}for(n=0,i=h.length;n<i;n++){if(!j[h[n].getId()]){k.push(h[n])}}this.setSeries(k)},applySeries:function(n,o){var l=this,i=[],k,r,p,m,q;l.animationSuspendCount++;l.getAxes();if(o){k=o.map}else{o=[];k=o.map={}}i.map={};n=Ext.Array.from(n,true);for(p=0,m=n.length;p<m;p++){q=n[p];if(!q){continue}r=k[q.getId&&q.getId()||q.id];if(q instanceof Ext.chart.series.Series){if(r&&r!==q){r.destroy()}q.setChart(l)}else{if(Ext.isObject(q)){if(r){r.setConfig(q);q=r}else{if(Ext.isString(q)){q={type:q}}q.chart=l;q=Ext.create(q.xclass||("series."+q.type),q);q.on("animationstart","onAnimationStart",l);q.on("animationend","onAnimationEnd",l)}}}i.push(q);i.map[q.getId()]=q}for(p in k){if(!i.map[k[p].getId()]){k[p].destroy()}}l.animationSuspendCount--;return i},applyLegend:function(c,d){return Ext.factory(c,Ext.chart.Legend,d)},updateLegend:function(c,d){if(d){d.destroy()}if(c){this.getItems();this.legendStore=new Ext.data.Store({autoDestroy:true,fields:["id","name","mark","disabled","series","index"]});c.setStore(this.legendStore);this.refreshLegendStore();this.legendStore.on("update","onUpdateLegendStore",this)}},updateSeries:function(d,e){var f=this;if(f.isDestroying){return}f.animationSuspendCount++;f.fireEvent("serieschange",f,d,e);f.refreshLegendStore();if(!Ext.isEmpty(d)){f.updateTheme(f.getTheme())}f.scheduleLayout();f.animationSuspendCount--},applyInteractions:function(k,o){if(!o){o=[];o.map={}}var l=this,j=[],p=o.map,n,m,i;j.map={};k=Ext.Array.from(k,true);for(n=0,m=k.length;n<m;n++){i=k[n];if(!i){continue}i=Ext.factory(i,null,p[i.getId&&i.getId()||i.id],"interaction");if(i){i.setChart(l);j.push(i);j.map[i.getId()]=i}}for(n in p){if(!j.map[n]){p[n].destroy()}}return j},getInteraction:function(j){var i=this.getInteractions(),h=i&&i.length,l=null,g,k;if(h){for(k=0;k<h;++k){g=i[k];if(g.type===j){l=g;break}}}return l},applyStore:function(b){return b&&Ext.StoreManager.lookup(b)},updateStore:function(e,f){var d=this;if(f){f.un({datachanged:"onDataChanged",update:"onDataChanged",scope:d,order:"after"});if(f.autoDestroy){f.destroy()}}if(e){e.on({datachanged:"onDataChanged",update:"onDataChanged",scope:d,order:"after"})}d.fireEvent("storechange",d,e,f);d.onDataChanged()},redraw:function(){this.fireEvent("redraw",this)},performLayout:function(){var g=this,e=g.getChartSize(true),h=[0,0,e.width,e.height],f=g.getBackground();g.hasFirstLayout=true;g.fireEvent("layout",g);g.cancelChartLayout();g.getSurface("background").setRect(h);g.getSurface("chart").setRect(h);f.setAttributes({width:e.width,height:e.height})},getChartSize:function(c){var d=this;if(c){d.chartSize=null}return d.chartSize||(d.chartSize=d.innerElement.getSize())},getEventXY:function(b){return this.getSurface().getEventXY(b)},getItemForPoint:function(k,l){var m=this,r=m.getSeries(),n=m.getMainRect(),o=r.length,q=m.hasFirstLayout?o-1:-1,p,i;if(!(n&&k>=0&&k<=n[2]&&l>=0&&l<=n[3])){return null}for(;q>=0;q--){p=r[q];i=p.getItemForPoint(k,l);if(i){return i}}return null},getItemsForPoint:function(k,l){var m=this,r=m.getSeries(),o=r.length,q=m.hasFirstLayout?o-1:-1,n=[],p,i;for(;q>=0;q--){p=r[q];i=p.getItemForPoint(k,l);if(i){n.push(i)}}return n},onAnimationStart:function(){this.fireEvent("animationstart",this)},onAnimationEnd:function(){this.fireEvent("animationend",this)},onDataChanged:function(){var i=this;if(i.isInitializing){return}var j=i.getMainRect(),g=i.getStore(),f=i.getSeries(),h=i.getAxes();if(!g||!h||!f){return}if(!j){i.on({redraw:i.onDataChanged,scope:i,single:true});return}i.processData();i.redraw()},recordCount:0,processData:function(){var j=this,l=j.getStore().getCount(),n=j.getSeries(),k=n.length,m=false,h=0,i;for(;h<k;h++){i=n[h];i.processData();if(!m&&i.isStoreDependantColorCount){m=true}}if(m&&l>j.recordCount){j.updateColors(j.getColors());j.recordCount=l}},bindStore:function(b){this.setStore(b)},applyHighlightItem:function(i,h){if(i===h){return}if(Ext.isObject(i)&&Ext.isObject(h)){var j=i,k=h,l=j.sprite&&(j.sprite[0]||j.sprite),g=k.sprite&&(k.sprite[0]||k.sprite);if(l===g&&j.index===k.index){return}}return i},updateHighlightItem:function(c,d){if(d){d.series.setAttributesForItem(d,{highlighted:false})}if(c){c.series.setAttributesForItem(c,{highlighted:true});this.fireEvent("itemhighlight",this,c,d)}this.fireEvent("itemhighlightchange",this,c,d)},destroyChart:function(){var m=this,o=m.getLegend(),l=m.getAxes(),p=m.getSeries(),k=m.getInteractions(),i=[],j,n;m.surfaceMap=null;for(j=0,n=k.length;j<n;j++){k[j].destroy()}for(j=0,n=l.length;j<n;j++){l[j].destroy()}for(j=0,n=p.length;j<n;j++){p[j].destroy()}m.setInteractions(i);m.setAxes(i);m.setSeries(i);if(o){o.destroy();m.setLegend(null)}m.legendStore=null;m.setStore(null);m.cancelChartLayout()},getRefItems:function(i){var l=this,n=l.getSeries(),k=l.getAxes(),j=l.getInteractions(),p=[],o,m;for(o=0,m=n.length;o<m;o++){p.push(n[o]);if(n[o].getRefItems){p.push.apply(p,n[o].getRefItems(i))}}for(o=0,m=k.length;o<m;o++){p.push(k[o]);if(k[o].getRefItems){p.push.apply(p,k[o].getRefItems(i))}}for(o=0,m=j.length;o<m;o++){p.push(j[o]);if(j[o].getRefItems){p.push.apply(p,j[o].getRefItems(i))}}return p}},1,0,["widget","component","container","draw"],{widget:true,component:true,container:true,draw:true},0,0,[Ext.chart,"AbstractChart"],0));Ext.define("Ext.chart.overrides.AbstractChart",{override:"Ext.chart.AbstractChart",updateLegend:function(c,d){arguments.callee.$previous.call(this,c,d);if(c){this.add(c)}},onAdded:function(f,e){var d=this.getLegend();(arguments.callee.$previous||Ext.draw.Container.prototype.onAdded).call(this,f,e);if(d){f.add(d)}},onItemRemove:function(j,g,l){var i=this.surfaceMap,k=j.type,h=i&&i[k];(arguments.callee.$previous||Ext.draw.Container.prototype.onItemRemove).call(this,j,g,l);if(h){Ext.Array.remove(h,j);if(h.length===0){delete i[k]}}},destroy:function(){var b=this;b.isDestroying=b.destroying=true;b.destroyChart();(arguments.callee.$previous||Ext.draw.Container.prototype.destroy).call(this)}});(Ext.cmd.derive("Ext.chart.grid.HorizontalGrid",Ext.draw.sprite.Sprite,{inheritableStatics:{def:{processors:{x:"number",y:"number",width:"number",height:"number"},defaults:{x:0,y:0,width:1,height:1,strokeStyle:"#DDD"}}},render:function(g,l,j){var h=this.attr,i=g.roundPixel(h.y),k=l.lineWidth*0.5;l.beginPath();l.rect(j[0]-g.matrix.getDX(),i+k,+j[2],h.height);l.fill();l.beginPath();l.moveTo(j[0]-g.matrix.getDX(),i+k);l.lineTo(j[0]+j[2]-g.matrix.getDX(),i+k);l.stroke()}},0,0,0,0,["grid.horizontal"],0,[Ext.chart.grid,"HorizontalGrid"],0));(Ext.cmd.derive("Ext.chart.grid.VerticalGrid",Ext.draw.sprite.Sprite,{inheritableStatics:{def:{processors:{x:"number",y:"number",width:"number",height:"number"},defaults:{x:0,y:0,width:1,height:1,strokeStyle:"#DDD"}}},render:function(l,k,i){var g=this.attr,h=l.roundPixel(g.x),j=k.lineWidth*0.5;k.beginPath();k.rect(h-j,i[1]-l.matrix.getDY(),g.width,i[3]);k.fill();k.beginPath();k.moveTo(h-j,i[1]-l.matrix.getDY());k.lineTo(h-j,i[1]+i[3]-l.matrix.getDY());k.stroke()}},0,0,0,0,["grid.vertical"],0,[Ext.chart.grid,"VerticalGrid"],0));(Ext.cmd.derive("Ext.chart.CartesianChart",Ext.chart.AbstractChart,{alternateClassName:"Ext.chart.Chart",isCartesian:true,config:{flipXY:false,innerRect:[0,0,1,1],innerPadding:{top:0,left:0,right:0,bottom:0}},applyInnerPadding:function(c,d){if(!Ext.isObject(c)){return Ext.util.Format.parseBox(c)}else{if(!d){return c}else{return Ext.apply(d,c)}}},getDirectionForAxis:function(d){var c=this.getFlipXY();if(d==="left"||d==="right"){if(c){return"X"}else{return"Y"}}else{if(c){return"Y"}else{return"X"}}},performLayout:function(){var K=this;K.animationSuspendCount++;if(Ext.chart.AbstractChart.prototype.performLayout.call(this)===false){--K.animationSuspendCount;return}K.suspendThicknessChanged();var W=K.getSurface("chart").getRect(),M=W[2],N=W[3],i=K.getAxes(),Y,J=K.getSeries(),S,P,Z,U=K.getInsetPadding(),E=K.getInnerPadding(),I,X,V=Ext.apply({},U),F,L,H,Q,O,B,G,C,T,R=K.getInherited().rtl,D=K.getFlipXY();if(M<=0||N<=0){return}for(C=0;C<i.length;C++){Y=i[C];P=Y.getSurface();O=Y.getFloating();B=O?O.value:null;Z=Y.getThickness();switch(Y.getPosition()){case"top":P.setRect([0,V.top+1,M,Z]);break;case"bottom":P.setRect([0,N-(V.bottom+Z),M,Z]);break;case"left":P.setRect([V.left,0,Z,N]);break;case"right":P.setRect([M-(V.right+Z),0,Z,N]);break}if(B===null){V[Y.getPosition()]+=Z}}M-=V.left+V.right;N-=V.top+V.bottom;F=[V.left,V.top,M,N];V.left+=E.left;V.top+=E.top;V.right+=E.right;V.bottom+=E.bottom;L=M-E.left-E.right;H=N-E.top-E.bottom;K.setInnerRect([V.left,V.top,L,H]);if(L<=0||H<=0){return}K.setMainRect(F);K.getSurface().setRect(F);for(C=0,T=K.surfaceMap.grid&&K.surfaceMap.grid.length;C<T;C++){X=K.surfaceMap.grid[C];X.setRect(F);X.matrix.set(1,0,0,1,E.left,E.top);X.matrix.inverse(X.inverseMatrix)}for(C=0;C<i.length;C++){Y=i[C];P=Y.getSurface();G=P.matrix;Q=G.elements;switch(Y.getPosition()){case"top":case"bottom":Q[4]=V.left;Y.setLength(L);break;case"left":case"right":Q[5]=V.top;Y.setLength(H);break}Y.updateTitleSprite();G.inverse(P.inverseMatrix)}for(C=0,T=J.length;C<T;C++){S=J[C];I=S.getSurface();I.setRect(F);if(D){if(R){I.matrix.set(0,-1,-1,0,E.left+L,E.top+H)}else{I.matrix.set(0,-1,1,0,E.left,E.top+H)}}else{I.matrix.set(1,0,0,-1,E.left,E.top+H)}I.matrix.inverse(I.inverseMatrix);S.getOverlaySurface().setRect(F)}K.redraw();K.animationSuspendCount--;K.resumeThicknessChanged()},refloatAxes:function(){var A=this,B=A.getAxes(),u=(B&&B.length)||0,F,E,v,C,x,G,y,i=A.getChartSize(),s=A.getInsetPadding(),t=A.getInnerPadding(),H=i.width-s.left-s.right,w=i.height-s.top-s.bottom,z,D;for(D=0;D<u;D++){F=B[D];C=F.getFloating();x=C?C.value:null;if(x===null){delete F.floatingAtCoord;continue}E=F.getSurface();v=E.getRect();if(!v){continue}v=v.slice();G=A.getAxis(C.alongAxis);if(G){z=G.getAlignment()==="horizontal";if(Ext.isString(x)){x=G.getCoordFor(x)}G.floatingAxes[F.getId()]=x;y=G.getSprites()[0].attr.matrix;if(z){x=x*y.getXX()+y.getDX();F.floatingAtCoord=x+t.left+t.right}else{x=x*y.getYY()+y.getDY();F.floatingAtCoord=x+t.top+t.bottom}}else{z=F.getAlignment()==="horizontal";if(z){F.floatingAtCoord=x+t.top+t.bottom}else{F.floatingAtCoord=x+t.left+t.right}x=E.roundPixel(0.01*x*(z?w:H))}switch(F.getPosition()){case"top":v[1]=s.top+t.top+x-v[3]+1;break;case"bottom":v[1]=s.top+t.top+(G?x:w-x);break;case"left":v[0]=s.left+t.left+x-v[2];break;case"right":v[0]=s.left+t.left+(G?x:H-x)-1;break}E.setRect(v)}},redraw:function(){var J=this,K=J.getSeries(),i=J.getAxes(),aa=J.getMainRect(),O,H,E=J.getInnerPadding(),W,S,I,X,M,N,F,V,Y,Z,ab,T,Q,j=J.getFlipXY(),D=1000,R,G,U,P,L;if(!aa){return}O=aa[2]-E.left-E.right;H=aa[3]-E.top-E.bottom;for(N=0;N<K.length;N++){U=K[N];if((Z=U.getXAxis())){Q=Z.getVisibleRange();S=Z.getRange();S=[S[0]+(S[1]-S[0])*Q[0],S[0]+(S[1]-S[0])*Q[1]]}else{S=U.getXRange()}if((ab=U.getYAxis())){Q=ab.getVisibleRange();I=ab.getRange();I=[I[0]+(I[1]-I[0])*Q[0],I[0]+(I[1]-I[0])*Q[1]]}else{I=U.getYRange()}M={visibleMinX:S[0],visibleMaxX:S[1],visibleMinY:I[0],visibleMaxY:I[1],innerWidth:O,innerHeight:H,flipXY:j};W=U.getSprites();for(F=0,V=W.length;F<V;F++){P=W[F];R=P.attr.zIndex;if(R<D){R+=(N+1)*100+D;P.attr.zIndex=R;L=P.getMarker("items");if(L){G=L.attr.zIndex;if(G===Number.MAX_VALUE){L.attr.zIndex=R}else{if(G<D){L.attr.zIndex=R+G}}}}P.setAttributes(M,true)}}for(N=0;N<i.length;N++){Y=i[N];X=Y.isSide();W=Y.getSprites();T=Y.getRange();Q=Y.getVisibleRange();M={dataMin:T[0],dataMax:T[1],visibleMin:Q[0],visibleMax:Q[1]};if(X){M.length=H;M.startGap=E.bottom;M.endGap=E.top}else{M.length=O;M.startGap=E.left;M.endGap=E.right}for(F=0,V=W.length;F<V;F++){W[F].setAttributes(M,true)}}J.renderFrame();Ext.chart.AbstractChart.prototype.redraw.apply(this,arguments)},renderFrame:function(){this.refloatAxes();Ext.chart.AbstractChart.prototype.renderFrame.call(this)}},0,["chart","cartesian"],["widget","component","container","draw","cartesian","chart"],{widget:true,component:true,container:true,draw:true,cartesian:true,chart:true},["widget.cartesian","widget.chart"],0,[Ext.chart,"CartesianChart",Ext.chart,"Chart"],0));(Ext.cmd.derive("Ext.chart.grid.CircularGrid",Ext.draw.sprite.Circle,{inheritableStatics:{def:{defaults:{r:1,strokeStyle:"#DDD"}}}},0,0,0,0,["grid.circular"],0,[Ext.chart.grid,"CircularGrid"],0));(Ext.cmd.derive("Ext.chart.grid.RadialGrid",Ext.draw.sprite.Path,{inheritableStatics:{def:{processors:{startRadius:"number",endRadius:"number"},defaults:{startRadius:0,endRadius:1,scalingCenterX:0,scalingCenterY:0,strokeStyle:"#DDD"},triggers:{startRadius:"path,bbox",endRadius:"path,bbox"}}},render:function(){Ext.draw.sprite.Path.prototype.render.apply(this,arguments)},updatePath:function(g,f){var e=f.startRadius,h=f.endRadius;g.moveTo(e,0);g.lineTo(h,0)}},0,0,0,0,["grid.radial"],0,[Ext.chart.grid,"RadialGrid"],0));(Ext.cmd.derive("Ext.chart.PolarChart",Ext.chart.AbstractChart,{isPolar:true,config:{center:[0,0],radius:0,innerPadding:0},getDirectionForAxis:function(b){return b==="radial"?"Y":"X"},applyCenter:function(d,c){if(c&&d[0]===c[0]&&d[1]===c[1]){return}return[+d[0],+d[1]]},updateCenter:function(j){var l=this,k=l.getAxes(),o=l.getSeries(),p,m,n,i;for(p=0,m=k.length;p<m;p++){n=k[p];n.setCenter(j)}for(p=0,m=o.length;p<m;p++){i=o[p];i.setCenter(j)}},applyInnerPadding:function(c,d){return Ext.isNumber(c)?c:d},doSetSurfaceRect:function(d,f){var e=this.getMainRect();d.setRect(f);d.matrix.set(1,0,0,1,e[0]-f[0],e[1]-f[1]);d.inverseMatrix.set(1,0,0,1,f[0]-e[0],f[1]-e[1])},applyAxes:function(m,k){var n=this,l=Ext.Array.from(n.config.series)[0],i,o,p,j;if(l.type==="radar"&&m&&m.length){for(i=0,o=m.length;i<o;i++){p=m[i];if(p.position==="angular"){j=true;break}}if(!j){m.push({type:"category",position:"angular",fields:l.xField||l.angleField,style:{estStepSize:1},grid:true})}}return Ext.chart.AbstractChart.prototype.applyAxes.apply(this,arguments)},performLayout:function(){var L=this,ae=true;try{L.animationSuspendCount++;if(Ext.chart.AbstractChart.prototype.performLayout.call(this)===false){ae=false;return}L.suspendThicknessChanged();var ad=L.getSurface("chart").getRect(),K=L.getInsetPadding(),J=L.getInnerPadding(),aa=Ext.apply({},K),ag,P=ad[2]-K.left-K.right,S=ad[3]-K.top-K.bottom,H=[K.left,K.top,P,S],M=L.getSeries(),W,O=P-J*2,I=S-J*2,Q=[O*0.5+J,I*0.5+J],ac=Math.min(O,I)*0.5,V=L.getAxes(),af,aj,ab,Z=[],X=[],N=ac-J,e,Y,ai,U,i,ah,R;L.setMainRect(H);L.doSetSurfaceRect(L.getSurface(),H);for(e=0,Y=L.surfaceMap.grid&&L.surfaceMap.grid.length;e<Y;e++){L.doSetSurfaceRect(L.surfaceMap.grid[e],ad)}for(e=0,Y=V.length;e<Y;e++){af=V[e];switch(af.getPosition()){case"angular":Z.push(af);break;case"radial":X.push(af);break}}for(e=0,Y=Z.length;e<Y;e++){af=Z[e];U=af.getFloating();i=U?U.value:null;L.doSetSurfaceRect(af.getSurface(),ad);aj=af.getThickness();for(ag in aa){aa[ag]+=aj}P=ad[2]-aa.left-aa.right;S=ad[3]-aa.top-aa.bottom;ai=Math.min(P,S)*0.5;if(e===0){N=ai-J}af.setMinimum(0);af.setLength(ai);af.getSprites();ab=af.sprites[0].attr.lineWidth*0.5;for(ag in aa){aa[ag]+=ab}}for(e=0,Y=X.length;e<Y;e++){af=X[e];L.doSetSurfaceRect(af.getSurface(),ad);af.setMinimum(0);af.setLength(N);af.getSprites()}for(e=0,Y=M.length;e<Y;e++){W=M[e];if(W.type==="gauge"&&!ah){ah=W}else{W.setRadius(N)}L.doSetSurfaceRect(W.getSurface(),H)}L.doSetSurfaceRect(L.getSurface("overlay"),ad);if(ah){ah.setRect(H);R=ah.getRadius()-J;L.setRadius(R);L.setCenter(ah.getCenter());ah.setRadius(R);if(V.length&&V[0].getPosition()==="gauge"){af=V[0];L.doSetSurfaceRect(af.getSurface(),ad);af.setTotalAngle(ah.getTotalAngle());af.setLength(R)}}else{L.setRadius(ac);L.setCenter(Q)}L.redraw()}catch(T){throw T}finally{L.animationSuspendCount--;if(ae){L.resumeThicknessChanged()}}},refloatAxes:function(){var l=this,n=l.getAxes(),m=l.getMainRect(),o,i,s,q,t,r,p;if(!m){return}p=0.5*Math.min(m[2],m[3]);for(q=0,t=n.length;q<t;q++){r=n[q];o=r.getFloating();i=o?o.value:null;if(i!==null){s=l.getAxis(o.alongAxis);if(r.getPosition()==="angular"){if(s){i=s.getLength()*i/s.getRange()[1]}else{i=0.01*i*p}r.sprites[0].setAttributes({length:i},true)}else{if(s){if(Ext.isString(i)){i=s.getCoordFor(i)}i=i/(s.getRange()[1]+1)*Math.PI*2-Math.PI*1.5+r.getRotation()}else{i=Ext.draw.Draw.rad(i)}r.sprites[0].setAttributes({baseRotation:i},true)}}}},redraw:function(){var k=this,j=k.getAxes(),m,n=k.getSeries(),h,i,l;for(i=0,l=j.length;i<l;i++){m=j[i];m.getSprites()}for(i=0,l=n.length;i<l;i++){h=n[i];h.getSprites()}k.renderFrame();Ext.chart.AbstractChart.prototype.redraw.apply(this,arguments)},renderFrame:function(){this.refloatAxes();Ext.chart.AbstractChart.prototype.renderFrame.call(this)}},0,["polar"],["widget","component","container","draw","polar"],{widget:true,component:true,container:true,draw:true,polar:true},["widget.polar"],0,[Ext.chart,"PolarChart"],0));(Ext.cmd.derive("Ext.chart.axis.Category",Ext.chart.axis.Axis,{type:"category",config:{layout:"combineDuplicate",segmenter:"names"}},0,0,["axis"],{axis:true},["axis.category"],0,[Ext.chart.axis,"Category"],0));(Ext.cmd.derive("Ext.chart.axis.Numeric",Ext.chart.axis.Axis,{type:"numeric",config:{layout:"continuous",segmenter:"numeric",aggregator:"double"}},0,0,["axis"],{axis:true},["axis.numeric","axis.radial"],0,[Ext.chart.axis,"Numeric"],0));(Ext.cmd.derive("Ext.chart.interactions.ItemHighlight",Ext.chart.interactions.Abstract,{type:"itemhighlight",isItemHighlight:true,config:{gestures:{tap:"onTapGesture",mousemove:"onMouseMoveGesture",mousedown:"onMouseDownGesture",mouseup:"onMouseUpGesture",mouseleave:"onMouseUpGesture"},sticky:false},stickyHighlightItem:null,onMouseMoveGesture:function(k){var m=this,j=m.tipItem,i=k.pointerType==="mouse",n,l,e;if(m.getSticky()){return true}if(m.isDragging){if(j&&i){j.series.hideTooltip(j);m.tipItem=null}}else{if(!m.stickyHighlightItem){n=m.getItemForEvent(k);e=m.getChart();if(n!==e.getHighlightItem()){m.highlight(n);m.sync()}if(i){if(j&&(!n||j.field!==n.field||j.record!==n.record)){j.series.hideTooltip(j);m.tipItem=j=null}if(n&&(l=n.series.getTooltip())){if(l.trackMouse||!j){n.series.showTooltip(n,k.getXY())}m.tipItem=n}}return false}}},highlight:function(b){this.getChart().setHighlightItem(b)},showTooltip:function(c,d){d.series.showTooltip(d,c.getXY());this.tipItem=d},onMouseDownGesture:function(){this.isDragging=true},onMouseUpGesture:function(){this.isDragging=false},onTapGesture:function(f){var d=this;if(f.pointerType==="mouse"&&!d.getSticky()){return}var e=d.getItemForEvent(f);if(d.stickyHighlightItem&&e&&(d.stickyHighlightItem.index===e.index)){e=null}d.stickyHighlightItem=e;d.highlight(e)}},0,0,["interaction"],{interaction:true},["interaction.itemhighlight"],0,[Ext.chart.interactions,"ItemHighlight"],0));(Ext.cmd.derive("Ext.chart.interactions.PanZoom",Ext.chart.interactions.Abstract,{type:"panzoom",config:{axes:{top:{},right:{},bottom:{},left:{}},minZoom:null,maxZoom:null,showOverflowArrows:true,panGesture:"drag",zoomGesture:"pinch",zoomOnPanGesture:false,modeToggleButton:{xtype:"segmentedbutton",width:200,defaults:{ui:"default-toolbar"},cls:"x-panzoom-toggle",items:[{text:"Pan"},{text:"Zoom"}]},hideLabelInGesture:false},stopAnimationBeforeSync:true,applyAxes:function(c,d){return Ext.merge(d||{},c)},applyZoomOnPanGesture:function(b){this.getChart();if(this.isMultiTouch()){return false}return b},updateZoomOnPanGesture:function(c){var d=this.getModeToggleButton();if(!this.isMultiTouch()){d.show();d.setValue(c?1:0)}else{d.hide()}},toggleMode:function(){var b=this;if(!b.isMultiTouch()){b.setZoomOnPanGesture(!b.getZoomOnPanGesture())}},applyModeToggleButton:function(h,e){var g=this,f=Ext.factory(h,"Ext.button.Segmented",e);if(!f&&e){e.destroy()}if(f&&!e){f.addListener("toggle",function(a){g.setZoomOnPanGesture(a.getValue()===1)})}return f},getGestures:function(){var j=this,h={},i=j.getPanGesture(),f=j.getZoomGesture(),g=Ext.supports.Touch;h[f]="onZoomGestureMove";h[f+"start"]="onZoomGestureStart";h[f+"end"]="onZoomGestureEnd";h[i]="onPanGestureMove";h[i+"start"]="onPanGestureStart";h[i+"end"]="onPanGestureEnd";h.doubletap="onDoubleTap";return h},onDoubleTap:function(j){var l=this,n=l.getChart(),k=n.getAxes(),e,i,m;for(i=0,m=k.length;i<m;i++){e=k[i];e.setVisibleRange([0,1])}n.redraw()},onPanGestureStart:function(g){if(!g||!g.touches||g.touches.length<2){var e=this,f=e.getChart().getInnerRect(),h=e.getChart().element.getXY();e.startX=g.getX()-h[0]-f[0];e.startY=g.getY()-h[1]-f[1];e.oldVisibleRanges=null;e.hideLabels();e.getChart().suspendThicknessChanged();e.lockEvents(e.getPanGesture());return false}},onPanGestureMove:function(g){var e=this;if(e.getLocks()[e.getPanGesture()]===e){var f=e.getChart().getInnerRect(),h=e.getChart().element.getXY();if(e.getZoomOnPanGesture()){e.transformAxesBy(e.getZoomableAxes(g),0,0,(g.getX()-h[0]-f[0])/e.startX,e.startY/(g.getY()-h[1]-f[1]))}else{e.transformAxesBy(e.getPannableAxes(g),g.getX()-h[0]-f[0]-e.startX,g.getY()-h[1]-f[1]-e.startY,1,1)}e.sync();return false}},onPanGestureEnd:function(d){var e=this,f=e.getPanGesture();if(e.getLocks()[f]===e){e.getChart().resumeThicknessChanged();e.showLabels();e.sync();e.unlockEvents(f);return false}},onZoomGestureStart:function(q){if(q.touches&&q.touches.length===2){var p=this,k=p.getChart().element.getXY(),n=p.getChart().getInnerRect(),l=k[0]+n[0],o=k[1]+n[1],e=[q.touches[0].point.x-l,q.touches[0].point.y-o,q.touches[1].point.x-l,q.touches[1].point.y-o],m=Math.max(44,Math.abs(e[2]-e[0])),r=Math.max(44,Math.abs(e[3]-e[1]));p.getChart().suspendThicknessChanged();p.lastZoomDistances=[m,r];p.lastPoints=e;p.oldVisibleRanges=null;p.hideLabels();p.lockEvents(p.getZoomGesture());return false}},onZoomGestureMove:function(y){var x=this;if(x.getLocks()[x.getZoomGesture()]===x){var u=x.getChart().getInnerRect(),p=x.getChart().element.getXY(),s=p[0]+u[0],v=p[1]+u[1],e=Math.abs,z=x.lastPoints,q=[y.touches[0].point.x-s,y.touches[0].point.y-v,y.touches[1].point.x-s,y.touches[1].point.y-v],w=Math.max(44,e(q[2]-q[0])),A=Math.max(44,e(q[3]-q[1])),B=this.lastZoomDistances||[w,A],r=w/B[0],t=A/B[1];x.transformAxesBy(x.getZoomableAxes(y),u[2]*(r-1)/2+q[2]-z[2]*r,u[3]*(t-1)/2+q[3]-z[3]*t,r,t);x.sync();return false}},onZoomGestureEnd:function(f){var d=this,e=d.getZoomGesture();if(d.getLocks()[e]===d){d.getChart().resumeThicknessChanged();d.showLabels();d.sync();d.unlockEvents(e);return false}},hideLabels:function(){if(this.getHideLabelInGesture()){this.eachInteractiveAxes(function(b){b.hideLabels()})}},showLabels:function(){if(this.getHideLabelInGesture()){this.eachInteractiveAxes(function(b){b.showLabels()})}},isEventOnAxis:function(f,e){var d=e.getSurface().getRect();return d[0]<=f.getX()&&f.getX()<=d[0]+d[2]&&d[1]<=f.getY()&&f.getY()<=d[1]+d[3]},getPannableAxes:function(o){var l=this,r=l.getAxes(),n=l.getChart().getAxes(),p,m=n.length,e=[],i=false,q;if(o){for(p=0;p<m;p++){if(this.isEventOnAxis(o,n[p])){i=true;break}}}for(p=0;p<m;p++){q=r[n[p].getPosition()];if(q&&q.allowPan!==false&&(!i||this.isEventOnAxis(o,n[p]))){e.push(n[p])}}return e},getZoomableAxes:function(p){var m=this,t=m.getAxes(),o=m.getChart().getAxes(),e=[],q,n=o.length,r,i=false,s;if(p){for(q=0;q<n;q++){if(this.isEventOnAxis(p,o[q])){i=true;break}}}for(q=0;q<n;q++){r=o[q];s=t[r.getPosition()];if(s&&s.allowZoom!==false&&(!i||this.isEventOnAxis(p,r))){e.push(r)}}return e},eachInteractiveAxes:function(j){var i=this,f=i.getAxes(),h=i.getChart().getAxes();for(var g=0;g<h.length;g++){if(f[h[g].getPosition()]){if(false===j.call(this,h[g])){return}}}},transformAxesBy:function(s,n,p,o,r){var q=this.getChart().getInnerRect(),v=this.getAxes(),m,u=this.oldVisibleRanges,i=false;if(!u){this.oldVisibleRanges=u={};this.eachInteractiveAxes(function(a){u[a.getId()]=a.getVisibleRange()})}if(!q){return}for(var t=0;t<s.length;t++){m=v[s[t].getPosition()];i=this.transformAxisBy(s[t],u[s[t].getId()],n,p,o,r,this.minZoom||m.minZoom,this.maxZoom||m.maxZoom)||i}return i},transformAxisBy:function(J,x,u,v,B,D,E,z){var t=this,K=x[1]-x[0],A=J.getVisibleRange(),F=E||t.getMinZoom()||J.config.minZoom,C=z||t.getMaxZoom()||J.config.maxZoom,L=t.getChart().getInnerRect(),G,w;if(!L){return}var I=J.isSide(),H=I?L[3]:L[2],y=I?-v:u;K/=I?D:B;if(K<0){K=-K}if(K*F>1){K=1}if(K*C<1){K=1/C}G=x[0];w=x[1];A=A[1]-A[0];if(K===A&&A===1){return}J.setVisibleRange([(x[0]+x[1]-K)*0.5-y/H*K,(x[0]+x[1]+K)*0.5-y/H*K]);return(Math.abs(G-J.getVisibleRange()[0])>1e-10||Math.abs(w-J.getVisibleRange()[1])>1e-10)},destroy:function(){this.setModeToggleButton(null);Ext.chart.interactions.Abstract.prototype.destroy.call(this)}},0,0,["interaction"],{interaction:true},["interaction.panzoom"],0,[Ext.chart.interactions,"PanZoom"],0));(Ext.cmd.derive("Ext.chart.interactions.Rotate",Ext.chart.interactions.Abstract,{type:"rotate",config:{gesture:"rotate",gestures:{rotate:"onRotate",rotateend:"onRotate",dragstart:"onGestureStart",drag:"onGesture",dragend:"onGestureEnd"},rotation:0},oldRotations:null,getAngle:function(h){var j=this,e=j.getChart(),i=e.getEventXY(h),g=e.getCenter();return Math.atan2(i[1]-g[1],i[0]-g[0])},getRadius:function(b){return this.getChart().getRadius()},getEventRadius:function(j){var l=this,m=l.getChart(),k=m.getEventXY(j),i=m.getCenter(),n=k[0]-i[0],e=k[1]-i[1];return Math.sqrt(n*n+e*e)},onGestureStart:function(g){var h=this,e=h.getRadius(g),f=h.getEventRadius(g);if(e>=f){h.lockEvents("drag");h.angle=h.getAngle(g);h.oldRotations={};return false}},onGesture:function(d){var e=this,f=e.getAngle(d)-e.angle;if(e.getLocks().drag===e){e.doRotateTo(f,true);return false}},doRotateTo:function(w,z,y){var i=this,p=i.getChart(),q=p.getAxes(),u=p.getSeries(),o=i.oldRotations,x,r,t,v,s;if(!y){p.suspendAnimation()}for(v=0,s=q.length;v<s;v++){x=q[v];t=o[x.getId()]||(o[x.getId()]=x.getRotation());x.setRotation(w+(z?t:0))}for(v=0,s=u.length;v<s;v++){r=u[v];t=o[r.getId()]||(o[r.getId()]=r.getRotation());r.setRotation(w+(z?t:0))}i.setRotation(w+(z?t:0));i.fireEvent("rotate",i,i.getRotation());i.sync();if(!y){p.resumeAnimation()}},rotateTo:function(f,d,e){this.doRotateTo(f,d,e);this.oldRotations={}},onGestureEnd:function(c){var d=this;if(d.getLocks().drag===d){d.onGesture(c);d.unlockEvents("drag");d.fireEvent("rotationEnd",d,d.getRotation());return false}},onRotate:function(b){}},0,0,["interaction"],{interaction:true},["interaction.rotate"],0,[Ext.chart.interactions,"Rotate"],0));(Ext.cmd.derive("Ext.chart.series.Cartesian",Ext.chart.series.Series,{config:{xField:null,yField:null,xAxis:null,yAxis:null},directions:["X","Y"],fieldCategoryX:["X"],fieldCategoryY:["Y"],applyXAxis:function(d,c){return this.getChart().getAxis(d)||c},applyYAxis:function(d,c){return this.getChart().getAxis(d)||c},updateXAxis:function(b){b.processData(this)},updateYAxis:function(b){b.processData(this)},coordinateX:function(){return this.coordinate("X",0,2)},coordinateY:function(){return this.coordinate("Y",1,2)},getItemForPoint:function(i,j){if(this.getSprites()){var k=this,m=k.getSprites()[0],h=k.getStore(),l,n;if(k.getHidden()){return null}if(m){n=m.getIndexNearPoint(i,j);if(n!==-1){l={series:k,category:k.getItemInstancing()?"items":"markers",index:n,record:h.getData().items[n],field:k.getYField(),sprite:m};return l}}}},createSprite:function(){var h=this,f=Ext.chart.series.Series.prototype.createSprite.call(this),e=h.getChart(),g=h.getXAxis();f.setAttributes({flipXY:e.getFlipXY(),xAxis:g});if(f.setAggregator&&g&&g.getAggregator){if(g.getAggregator){f.setAggregator({strategy:g.getAggregator()})}else{f.setAggregator({})}}return f},getSprites:function(){var k=this,l=this.getChart(),j=k.getAnimation()||l&&l.getAnimation(),g=k.getItemInstancing(),i=k.sprites,h;if(!l){return[]}if(!i.length){h=k.createSprite()}else{h=i[0]}if(j){if(g){h.itemsMarker.getTemplate().setAnimation(j)}h.setAnimation(j)}return i},provideLegendInfo:function(g){var e=this,f=e.getSubStyleWithTheme(),h=f.fillStyle;if(Ext.isArray(h)){h=h[0]}g.push({name:e.getTitle()||e.getYField()||e.getId(),mark:(Ext.isObject(h)?h.stops&&h.stops[0].color:h)||f.strokeStyle||"black",disabled:e.getHidden(),series:e.getId(),index:0})},getXRange:function(){return[this.dataRange[0],this.dataRange[2]]},getYRange:function(){return[this.dataRange[1],this.dataRange[3]]}},0,0,0,0,0,0,[Ext.chart.series,"Cartesian"],0));(Ext.cmd.derive("Ext.chart.series.StackedCartesian",Ext.chart.series.Cartesian,{config:{stacked:true,splitStacks:true,fullStack:false,fullStackTotal:100,hidden:[]},spriteAnimationCount:0,themeColorCount:function(){var c=this,d=c.getYField();return Ext.isArray(d)?d.length:1},updateStacked:function(){this.processData()},updateSplitStacks:function(){this.processData()},coordinateY:function(){return this.coordinateStacked("Y",1,2)},coordinateStacked:function(R,af,aa){var N=this,ae=N.getStore(),T=ae.getData().items,V=T.length,ah=N["get"+R+"Axis"](),k=N.getHidden(),aj=N.getSplitStacks(),i=N.getFullStack(),ab=N.getFullStackTotal(),X={min:0,max:0},Z=N["fieldCategory"+R],S=[],Y=[],P=[],ac,W=N.getStacked(),ad=N.getSprites(),U=[],J,L,M,Q,I,j,ai,ag,K,O;if(!ad.length){return}for(J=0;J<Z.length;J++){ag=Z[J];Q=N.getFields([ag]);I=Q.length;for(L=0;L<V;L++){S[L]=0;Y[L]=0;P[L]=0}for(L=0;L<I;L++){if(!k[L]){U[L]=N.coordinateData(T,Q[L],ah)}}if(W&&i){j=[];if(aj){ai=[]}for(L=0;L<V;L++){j[L]=0;if(aj){ai[L]=0}for(M=0;M<I;M++){K=U[M];if(!K){continue}K=K[L];if(K>=0||!aj){j[L]+=K}else{if(K<0){ai[L]+=K}}}}}for(L=0;L<I;L++){O={};if(k[L]){O["dataStart"+ag]=S;O["data"+ag]=S;ad[L].setAttributes(O);continue}K=U[L];if(W){ac=[];for(M=0;M<V;M++){if(!K[M]){K[M]=0}if(K[M]>=0||!aj){if(i&&j[M]){K[M]*=ab/j[M]}S[M]=Y[M];Y[M]+=K[M];ac[M]=Y[M]}else{if(i&&ai[M]){K[M]*=ab/ai[M]}S[M]=P[M];P[M]+=K[M];ac[M]=P[M]}}O["dataStart"+ag]=S;O["data"+ag]=ac;N.getRangeOfData(S,X);N.getRangeOfData(ac,X)}else{O["dataStart"+ag]=S;O["data"+ag]=K;N.getRangeOfData(K,X)}ad[L].setAttributes(O)}}N.dataRange[af]=X.min;N.dataRange[af+aa]=X.max;O={};O["dataMin"+R]=X.min;O["dataMax"+R]=X.max;for(J=0;J<ad.length;J++){ad[J].setAttributes(O)}},getFields:function(i){var j=this,h=[],l,g,k;for(g=0,k=i.length;g<k;g++){l=j["get"+i[g]+"Field"]();if(Ext.isArray(l)){h.push.apply(h,l)}else{h.push(l)}}return h},updateLabelOverflowPadding:function(b){this.getLabel().setAttributes({labelOverflowPadding:b})},getSprites:function(){var m=this,n=m.getChart(),t=m.getAnimation()||n&&n.getAnimation(),q=m.getFields(m.fieldCategoryY),u=m.getItemInstancing(),o=m.sprites,i,r=m.getHidden(),p=false,s,v=q.length;if(!n){return[]}for(s=0;s<v;s++){i=o[s];if(!i){i=m.createSprite();i.setAttributes({zIndex:-s});i.setField(q[s]);p=true;r.push(false);if(u){i.itemsMarker.getTemplate().setAttributes(m.getStyleByIndex(s))}else{i.setAttributes(m.getStyleByIndex(s))}}if(t){if(u){i.itemsMarker.getTemplate().setAnimation(t)}i.setAnimation(t)}}if(p){m.updateHidden(r)}return o},getItemForPoint:function(q,r){if(this.getSprites()){var s=this,y,t,o,z=s.getItemInstancing(),u=s.getSprites(),p=s.getStore(),x=s.getHidden(),i,w,v;for(y=0,t=u.length;y<t;y++){if(!x[y]){o=u[y];w=o.getIndexNearPoint(q,r);if(w!==-1){v=s.getYField();i={series:s,index:w,category:z?"items":"markers",record:p.getData().items[w],field:typeof v==="string"?v:v[y],sprite:o};return i}}}return null}},provideLegendInfo:function(r){var p=this,q=p.getSprites(),o=p.getTitle(),n=p.getYField(),s=p.getHidden(),m=q.length===1,u,i,t,v;for(t=0;t<q.length;t++){u=p.getStyleByIndex(t);i=u.fillStyle;if(o){if(Ext.isArray(o)){v=o[t]}else{if(m){v=o}}}else{if(Ext.isArray(n)){v=n[t]}else{v=p.getId()}}r.push({name:v,mark:(Ext.isObject(i)?i.stops&&i.stops[0].color:i)||u.strokeStyle||"black",disabled:s[t],series:p.getId(),index:t})}},onSpriteAnimationStart:function(b){this.spriteAnimationCount++;if(this.spriteAnimationCount===1){this.fireEvent("animationstart")}},onSpriteAnimationEnd:function(b){this.spriteAnimationCount--;if(this.spriteAnimationCount===0){this.fireEvent("animationend")}}},0,0,0,0,0,0,[Ext.chart.series,"StackedCartesian"],0));(Ext.cmd.derive("Ext.chart.series.sprite.Series",Ext.draw.sprite.Sprite,{inheritableStatics:{def:{processors:{dataMinX:"number",dataMaxX:"number",dataMinY:"number",dataMaxY:"number",rangeX:"data",rangeY:"data",dataX:"data",dataY:"data"},defaults:{dataMinX:0,dataMaxX:1,dataMinY:0,dataMaxY:1,rangeX:null,rangeY:null,dataX:null,dataY:null},triggers:{dataX:"bbox",dataY:"bbox",dataMinX:"bbox",dataMaxX:"bbox",dataMinY:"bbox",dataMaxY:"bbox"}}},config:{store:null,series:null,field:null}},0,0,0,0,0,[["markerHolder",Ext.chart.MarkerHolder]],[Ext.chart.series.sprite,"Series"],0));(Ext.cmd.derive("Ext.chart.series.sprite.Cartesian",Ext.chart.series.sprite.Series,{inheritableStatics:{def:{processors:{labels:"default",labelOverflowPadding:"number",selectionTolerance:"number",flipXY:"bool",renderer:"default",visibleMinX:"number",visibleMinY:"number",visibleMaxX:"number",visibleMaxY:"number",innerWidth:"number",innerHeight:"number"},defaults:{labels:null,labelOverflowPadding:10,selectionTolerance:20,flipXY:false,renderer:null,transformFillStroke:false,visibleMinX:0,visibleMinY:0,visibleMaxX:1,visibleMaxY:1,innerWidth:1,innerHeight:1},triggers:{dataX:"dataX,bbox",dataY:"dataY,bbox",visibleMinX:"panzoom",visibleMinY:"panzoom",visibleMaxX:"panzoom",visibleMaxY:"panzoom",innerWidth:"panzoom",innerHeight:"panzoom"},updaters:{dataX:function(b){this.processDataX();this.scheduleUpdater(b,"dataY",["dataY"])},dataY:function(){this.processDataY()},panzoom:function(n){var l=n.visibleMaxX-n.visibleMinX,m=n.visibleMaxY-n.visibleMinY,h=n.flipXY?n.innerHeight:n.innerWidth,j=!n.flipXY?n.innerHeight:n.innerWidth,i=this.getSurface(),k=i?i.getInherited().rtl:false;if(k&&!n.flipXY){n.translationX=h+n.visibleMinX*h/l}else{n.translationX=-n.visibleMinX*h/l}n.translationY=-n.visibleMinY*j/m;n.scalingX=(k&&!n.flipXY?-1:1)*h/l;n.scalingY=j/m;n.scalingCenterX=0;n.scalingCenterY=0;this.applyTransformations(true)}}}},processDataY:Ext.emptyFn,processDataX:Ext.emptyFn,updatePlainBBox:function(c){var d=this.attr;c.x=d.dataMinX;c.y=d.dataMinY;c.width=d.dataMaxX-d.dataMinX;c.height=d.dataMaxY-d.dataMinY},binarySearch:function(k){var g=this.attr.dataX,i=0,h=g.length;if(k<=g[0]){return i}if(k>=g[h-1]){return h-1}while(i+1<h){var l=(i+h)>>1,j=g[l];if(j===k){return l}else{if(j<k){i=l}else{h=l}}}return i},render:function(h,n,j){var k=this,i=k.attr,l=i.inverseMatrix.clone();l.appendMatrix(h.inverseMatrix);if(i.dataX===null||i.dataX===undefined){return}if(i.dataY===null||i.dataY===undefined){return}if(l.getXX()*l.getYX()||l.getXY()*l.getYY()){console.log("Cartesian Series sprite does not support rotation/sheering");return}var m=l.transformList([[j[0]-1,j[3]+1],[j[0]+j[2]+1,-1]]);m=m[0].concat(m[1]);k.renderClipped(h,n,m,j)},renderClipped:Ext.emptyFn,getIndexNearPoint:function(M,N){var i=this,C=i.attr.matrix,K=i.attr.dataX,L=i.attr.dataY,I=i.attr.selectionTolerance,z,B,P=-1,J=C.clone().prependMatrix(i.surfaceMatrix).inverse(),y=J.transformPoint([M,N]),Q=J.transformPoint([M-I,N-I]),F=J.transformPoint([M+I,N+I]),R=Math.min(Q[0],F[0]),A=Math.max(Q[0],F[0]),H=Math.min(Q[1],F[1]),O=Math.max(Q[1],F[1]),G,x,E,D;for(E=0,D=K.length;E<D;E++){G=K[E];x=L[E];if(G>R&&G<A&&x>H&&x<O){if(P===-1||(Math.abs(G-y[0])<z)&&(Math.abs(x-y[1])<B)){z=Math.abs(G-y[0]);B=Math.abs(x-y[1]);P=E}}}return P}},0,0,0,0,0,0,[Ext.chart.series.sprite,"Cartesian"],0));(Ext.cmd.derive("Ext.chart.series.sprite.StackedCartesian",Ext.chart.series.sprite.Cartesian,{inheritableStatics:{def:{processors:{groupCount:"number",groupOffset:"number",dataStartY:"data"},defaults:{selectionTolerance:20,groupCount:1,groupOffset:0,dataStartY:null},triggers:{dataStartY:"dataY,bbox"}}},getIndexNearPoint:function(J,K){var A=this,y=A.attr.matrix,G=A.attr.dataX,I=A.attr.dataY,i=A.attr.dataStartY,D=A.attr.selectionTolerance,w=0.5,x=Infinity,M=-1,E=y.clone().prependMatrix(this.surfaceMatrix).inverse(),v=E.transformPoint([J,K]),N=E.transformPoint([J-D,K-D]),B=E.transformPoint([J+D,K+D]),C=Math.min(N[1],B[1]),L=Math.max(N[1],B[1]),F,H;for(var z=0;z<G.length;z++){if(Math.min(i[z],I[z])<=L&&C<=Math.max(i[z],I[z])){F=Math.abs(G[z]-v[0]);H=Math.max(-Math.min(I[z]-v[1],v[1]-i[z]),0);if(F<w&&H<=x){w=F;x=H;M=z}}}return M}},0,0,0,0,0,0,[Ext.chart.series.sprite,"StackedCartesian"],0));(Ext.cmd.derive("Ext.chart.series.sprite.Bar",Ext.chart.series.sprite.StackedCartesian,{inheritableStatics:{def:{processors:{minBarWidth:"number",maxBarWidth:"number",minGapWidth:"number",radius:"number",inGroupGapWidth:"number"},defaults:{minBarWidth:2,maxBarWidth:100,minGapWidth:5,inGroupGapWidth:3,radius:0}}},drawLabel:function(D,F,v,G,z){var x=this,A=x.attr,I=x.getMarker("labels"),K=I.getTemplate(),C=x.labelCfg||(x.labelCfg={}),L=x.surfaceMatrix,E=A.labelOverflowPadding,M=K.attr.display,B=K.attr.orientation,H,J,N,w,u,y;C.x=L.x(F,G);C.y=L.y(F,G);if(!A.flipXY){C.rotationRads=-Math.PI*0.5}else{C.rotationRads=0}C.calloutVertical=!A.flipXY;switch(B){case"horizontal":C.rotationRads=0;C.calloutVertical=false;break;case"vertical":C.rotationRads=-Math.PI*0.5;C.calloutVertical=true;break}C.text=D;if(K.attr.renderer){y=[D,I,C,{store:x.getStore()},z];w=Ext.callback(K.attr.renderer,null,y,0,x.getSeries());if(typeof w==="string"){C.text=w}else{if(typeof w==="object"){if("text" in w){C.text=w.text}u=true}}}N=x.getMarkerBBox("labels",z,true);if(!N){x.putMarker("labels",C,z);N=x.getMarkerBBox("labels",z,true)}J=(N.width/2+E);if(v>G){J=-J}if((B==="horizontal"&&A.flipXY)||(B==="vertical"&&!A.flipXY)||!B){H=(M==="insideStart")?v+J:G-J}else{H=(M==="insideStart")?v+E*2:G-E*2}C.x=L.x(F,H);C.y=L.y(F,H);H=(M==="insideStart")?v-J:G+J;C.calloutPlaceX=L.x(F,H);C.calloutPlaceY=L.y(F,H);H=(M==="insideStart")?v:G;C.calloutStartX=L.x(F,H);C.calloutStartY=L.y(F,H);if(v>G){J=-J}if(Math.abs(G-v)<=J*2||M==="outside"){C.callout=1}else{C.callout=0}if(u){Ext.apply(C,w)}x.putMarker("labels",C,z)},drawBar:function(m,w,u,v,q,n,x,t){var r=this,o={},s=r.attr.renderer,p;o.x=v;o.y=q;o.width=n-v;o.height=x-q;o.radius=r.attr.radius;if(s){p=Ext.callback(s,null,[r,o,{store:r.getStore()},t],0,r.getSeries());Ext.apply(o,p)}r.putMarker("items",o,t,!s)},renderClipped:function(Q,ac,R,U){if(this.cleanRedraw){return}var ag=this,ai=ag.attr,aa=ai.dataX,ab=ai.dataY,P=ai.labels,aj=ai.dataStartY,ak=ai.groupCount,S=ai.groupOffset-(ak-1)*0.5,X=ai.inGroupGapWidth,ad=ac.lineWidth,T=ai.matrix,V=T.elements[0],an=T.elements[3],ar=T.elements[4],at=Q.roundPixel(T.elements[5])-1,N=(V<0?-1:1)*V-ai.minGapWidth,am=(Math.min(N,ai.maxBarWidth)-X*(ak-1))/ak,W=Q.roundPixel(Math.max(ai.minBarWidth,am)),au=ag.surfaceMatrix,ap,O,av,ao,M,aw,al=0.5*ai.lineWidth,i=Math.min(R[0],R[2]),Z=Math.max(R[0],R[2]),Y=Math.max(0,Math.floor(i)),ah=Math.min(aa.length-1,Math.ceil(Z)),aq=P&&ag.getMarker("labels"),ae,af;for(M=Y;M<=ah;M++){ae=aj?aj[M]:0;af=ab[M];aw=aa[M]*V+ar+S*(W+X);ap=Q.roundPixel(aw-W/2)+al;ao=Q.roundPixel(af*an+at+ad);O=Q.roundPixel(aw+W/2)-al;av=Q.roundPixel(ae*an+at+ad);ag.drawBar(ac,Q,R,ap,ao-al,O,av-al,M);if(aq&&P[M]!=null){ag.drawLabel(P[M],aw,av,ao,M)}ag.putMarker("markers",{translationX:au.x(aw,ao),translationY:au.y(aw,ao)},M,true)}},getIndexNearPoint:function(p,q){var o=this,t=o.attr,s=t.dataX,z=o.getSurface(),y=z.getRect()||[0,0,0,0],r=y[3],v,w,x,i,u=-1;if(t.flipXY){v=r-q;if(z.getInherited().rtl){w=y[2]-p}else{w=p}}else{v=p;w=r-q}for(x=0;x<s.length;x++){i=o.getMarkerBBox("items",x);if(Ext.draw.Draw.isPointInBBox(v,w,i)){u=x;break}}return u}},0,0,0,0,["sprite.barSeries"],0,[Ext.chart.series.sprite,"Bar"],0));(Ext.cmd.derive("Ext.chart.series.Bar",Ext.chart.series.StackedCartesian,{type:"bar",seriesType:"barSeries",config:{itemInstancing:{type:"rect",fx:{customDurations:{x:0,y:0,width:0,height:0,radius:0}}}},getItemForPoint:function(h,i){if(this.getSprites()){var k=this,l=k.getChart(),j=l.getInnerPadding(),g=l.getInherited().rtl;arguments[0]=h+(g?j.right:-j.left);arguments[1]=i+j.bottom;return Ext.chart.series.StackedCartesian.prototype.getItemForPoint.apply(this,arguments)}},updateXAxis:function(b){b.setLabelInSpan(true);Ext.chart.series.StackedCartesian.prototype.updateXAxis.apply(this,arguments)},updateHidden:function(b){Ext.chart.series.StackedCartesian.prototype.updateHidden.apply(this,arguments);this.updateStacked()},updateStacked:function(n){var l=this,j=l.getSprites(),m=j.length,k=[],i={},h;for(h=0;h<m;h++){if(!j[h].attr.hidden){k.push(j[h])}}m=k.length;if(l.getStacked()){i.groupCount=1;i.groupOffset=0;for(h=0;h<m;h++){k[h].setAttributes(i)}}else{i.groupCount=k.length;for(h=0;h<m;h++){i.groupOffset=h;k[h].setAttributes(i)}}Ext.chart.series.StackedCartesian.prototype.updateStacked.apply(this,arguments)}},0,0,0,0,["series.bar"],0,[Ext.chart.series,"Bar"],0));(Ext.cmd.derive("Ext.chart.series.Polar",Ext.chart.series.Series,{config:{rotation:0,radius:null,center:[0,0],offsetX:0,offsetY:0,showInLegend:true,xField:null,yField:null,angleField:null,radiusField:null,xAxis:null,yAxis:null},directions:["X","Y"],fieldCategoryX:["X"],fieldCategoryY:["Y"],deprecatedConfigs:{field:"angleField",lengthField:"radiusField"},constructor:function(f){var j=this,g=j.getConfigurator(),h=g.configs,i;if(f){for(i in j.deprecatedConfigs){if(i in f&&!(f in h)){Ext.raise("'"+i+"' config has been deprecated. Please use the '"+j.deprecatedConfigs[i]+"' config instead.")}}}Ext.chart.series.Series.prototype.constructor.call(this,f)},getXField:function(){return this.getAngleField()},updateXField:function(b){this.setAngleField(b)},getYField:function(){return this.getRadiusField()},updateYField:function(b){this.setRadiusField(b)},applyXAxis:function(d,c){return this.getChart().getAxis(d)||c},applyYAxis:function(d,c){return this.getChart().getAxis(d)||c},getXRange:function(){return[this.dataRange[0],this.dataRange[2]]},getYRange:function(){return[this.dataRange[1],this.dataRange[3]]},themeColorCount:function(){var f=this,e=f.getStore(),d=e&&e.getCount()||0;return d},isStoreDependantColorCount:true,getDefaultSpriteConfig:function(){return{type:this.seriesType,renderer:this.getRenderer(),centerX:0,centerY:0,rotationCenterX:0,rotationCenterY:0}},applyRotation:function(b){return Ext.draw.sprite.AttributeParser.angle(b)},updateRotation:function(d){var c=this.getSprites();if(c&&c[0]){c[0].setAttributes({baseRotation:d})}}},1,0,0,0,0,0,[Ext.chart.series,"Polar"],0));(Ext.cmd.derive("Ext.chart.series.sprite.PieSlice",Ext.draw.sprite.Sector,{inheritableStatics:{def:{processors:{doCallout:"bool",label:"string",rotateLabels:"bool",labelOverflowPadding:"number",renderer:"default"},defaults:{doCallout:true,rotateLabels:true,label:"",labelOverflowPadding:10,renderer:null}}},config:{rendererData:null,rendererIndex:0,series:null},setGradientBBox:function(h,w){var x=this,y=x.attr,z=(y.fillStyle&&y.fillStyle.isGradient)||(y.strokeStyle&&y.strokeStyle.isGradient);if(z&&!y.constrainGradients){var E=x.getMidAngle(),C=y.margin,B=y.centerX,D=y.centerY,F=y.endRho,v=y.matrix,s=v.getScaleX(),t=v.getScaleY(),u=s*F,A=t*F,r={width:u+u,height:A+A};if(C){B+=C*Math.cos(E);D+=C*Math.sin(E)}r.x=v.x(B,D)-u;r.y=v.y(B,D)-A;h.setGradientBBox(r)}else{Ext.draw.sprite.Sector.prototype.setGradientBBox.call(this,h,w)}},render:function(i,p,l,m){var n=this,j=n.attr,k={},o;if(j.renderer){k={type:"sector",text:j.text,centerX:j.centerX,centerY:j.centerY,margin:j.margin,startAngle:Math.min(j.startAngle,j.endAngle),endAngle:Math.max(j.startAngle,j.endAngle),startRho:Math.min(j.startRho,j.endRho),endRho:Math.max(j.startRho,j.endRho)};o=Ext.callback(j.renderer,null,[n,k,n.rendererData,n.rendererIndex],0,n.getSeries());n.setAttributes(o);n.useAttributes(p,l)}Ext.draw.sprite.Sector.prototype.render.call(this,i,p,l,m);if(j.label&&n.getMarker("labels")){n.placeLabel()}},placeLabel:function(){var x=this,E=x.attr,F=E.attributeId,D=Math.min(E.startAngle,E.endAngle),I=Math.max(E.startAngle,E.endAngle),N=(D+I)*0.5,K=E.margin,Q=E.centerX,R=E.centerY,S=Math.sin(N),V=Math.cos(N),B=Math.min(E.startRho,E.endRho)+K,L=Math.max(E.startRho,E.endRho)+K,M=(B+L)*0.5,W=x.surfaceMatrix,J=x.labelCfg||(x.labelCfg={}),T=x.getMarker("labels"),U=T.getTemplate(),X=U.getCalloutLine(),G=X&&X.length||40,C,O,P,H,y;W.appendMatrix(E.matrix);J.text=E.label;O=Q+V*M;P=R+S*M;J.x=W.x(O,P);J.y=W.y(O,P);O=Q+V*L;P=R+S*L;J.calloutStartX=W.x(O,P);J.calloutStartY=W.y(O,P);O=Q+V*(L+G);P=R+S*(L+G);J.calloutPlaceX=W.x(O,P);J.calloutPlaceY=W.y(O,P);if(!E.rotateLabels){J.rotationRads=0}else{switch(U.attr.orientation){case"horizontal":J.rotationRads=N+Math.atan2(W.y(1,0)-W.y(0,0),W.x(1,0)-W.x(0,0))+Math.PI/2;break;case"vertical":J.rotationRads=N+Math.atan2(W.y(1,0)-W.y(0,0),W.x(1,0)-W.x(0,0));break}}J.calloutColor=(X&&X.color)||x.attr.fillStyle;if(X){if(X.width){J.calloutWidth=X.width}}else{J.calloutHasLine=false}J.globalAlpha=E.globalAlpha*E.fillOpacity;J.hidden=(E.startAngle==E.endAngle);if(U.attr.renderer){y=[x.attr.label,T,J,x.rendererData,x.rendererIndex];H=Ext.callback(U.attr.renderer,null,y,0,x.getSeries());if(typeof H==="string"){J.text=H}else{Ext.apply(J,H)}}x.putMarker("labels",J,F);C=x.getMarkerBBox("labels",F,true);if(C){if(E.doCallout){if(U.attr.display==="outside"){x.putMarker("labels",{callout:1},F)}else{if(U.attr.display==="inside"){x.putMarker("labels",{callout:0},F)}else{x.putMarker("labels",{callout:1-x.sliceContainsLabel(E,C)},F)}}}else{x.putMarker("labels",{globalAlpha:x.sliceContainsLabel(E,C)},F)}}},sliceContainsLabel:function(q,o){var p=q.labelOverflowPadding,m=(q.endRho+q.startRho)/2,n=m+(o.width+p)/2,l=m-(o.width+p)/2,k,r,s,t;if(p<0){return 1}if(o.width+p*2>(q.endRho-q.startRho)){return 0}r=Math.sqrt(q.endRho*q.endRho-n*n);s=Math.sqrt(q.endRho*q.endRho-l*l);k=Math.abs(q.endAngle-q.startAngle);t=(k>Math.PI/2?l:Math.abs(Math.tan(k/2))*l);if(o.height+p*2>Math.min(r,s,t)*2){return 0}return 1}},0,0,0,0,["sprite.pieslice"],[["markerHolder",Ext.chart.MarkerHolder]],[Ext.chart.series.sprite,"PieSlice"],0));(Ext.cmd.derive("Ext.chart.series.Pie",Ext.chart.series.Polar,{type:"pie",seriesType:"pieslice",config:{donut:0,rotation:0,clockwise:true,totalAngle:2*Math.PI,hidden:[],radiusFactor:100,highlightCfg:{margin:20},style:{}},directions:["X"],applyLabel:function(d,c){if(Ext.isObject(d)&&!Ext.isString(d.orientation)){Ext.apply(d=Ext.Object.chain(d),{orientation:"vertical"})}return Ext.chart.series.Polar.prototype.applyLabel.call(this,d,c)},updateLabelData:function(){var m=this,l=m.getStore(),n=l.getData().items,p=m.getSprites(),t=m.getLabel().getTemplate().getField(),q=m.getHidden(),s,o,r,i;if(p.length&&t){r=[];for(s=0,o=n.length;s<o;s++){r.push(n[s].get(t))}for(s=0,o=p.length;s<o;s++){i=p[s];i.setAttributes({label:r[s]});i.putMarker("labels",{hidden:q[s]},i.attr.attributeId)}}},coordinateX:function(){var i=this,G=i.getStore(),w=G.getData().items,J=w.length,K=i.getXField(),H=i.getYField(),B,L=0,A,C,u=0,y=i.getHidden(),I=[],x,F=0,E=i.getTotalAngle(),v=i.getClockwise()?1:-1,D=i.getSprites(),z;if(!D){return}for(x=0;x<J;x++){B=Math.abs(Number(w[x].get(K)))||0;C=H&&Math.abs(Number(w[x].get(H)))||0;if(!y[x]){L+=B;if(C>u){u=C}}I[x]=L;if(x>=y.length){y[x]=false}}y.length=J;i.maxY=u;if(L!==0){A=E/L}for(x=0;x<J;x++){D[x].setAttributes({startAngle:F,endAngle:F=(A?v*I[x]*A:0),globalAlpha:1})}if(J<i.sprites.length){for(x=J;x<i.sprites.length;x++){z=i.sprites[x];z.getMarker("labels").clear(z.getId());z.releaseMarker("labels");z.destroy()}i.sprites.length=J}for(x=J;x<i.sprites.length;x++){D[x].setAttributes({startAngle:E,endAngle:E,globalAlpha:0})}i.getChart().refreshLegendStore()},updateCenter:function(b){this.setStyle({translationX:b[0]+this.getOffsetX(),translationY:b[1]+this.getOffsetY()});this.doUpdateStyles()},updateRadius:function(b){this.setStyle({startRho:b*this.getDonut()*0.01,endRho:b*this.getRadiusFactor()*0.01});this.doUpdateStyles()},getStyleByIndex:function(r){var n=this,l=n.getStore(),i=l.getAt(r),o=n.getYField(),q=n.getRadius(),t={},p,s,m;if(i){m=o&&Math.abs(Number(i.get(o)))||0;p=q*n.getDonut()*0.01;s=q*n.getRadiusFactor()*0.01;t=Ext.chart.series.Polar.prototype.getStyleByIndex.call(this,r);t.startRho=p;t.endRho=n.maxY?(p+(s-p)*m/n.maxY):s}return t},updateDonut:function(c){var d=this.getRadius();this.setStyle({startRho:d*c*0.01,endRho:d*this.getRadiusFactor()*0.01});this.doUpdateStyles()},rotationOffset:-Math.PI/2,updateRotation:function(b){this.setStyle({rotationRads:b+this.rotationOffset});this.doUpdateStyles()},updateTotalAngle:function(b){this.processData()},getSprites:function(){var s=this,u=s.getChart(),p=s.getStore();if(!u||!p){return[]}s.getColors();s.getSubStyle();var t=p.getData().items,A=t.length,y=s.getAnimation()||u&&u.getAnimation(),v=s.sprites,i,r=0,w,x,z=false,q=s.getLabel(),B=q.getTemplate();w={store:p,field:s.getXField(),angleField:s.getXField(),radiusField:s.getYField(),series:s};for(x=0;x<A;x++){i=v[x];if(!i){i=s.createSprite();if(s.getHighlight()){i.config.highlight=s.getHighlight();i.addModifier("highlight",true)}if(B.getField()){B.setAttributes({labelOverflowPadding:s.getLabelOverflowPadding()});B.fx.setCustomDurations({callout:200})}i.setAttributes(s.getStyleByIndex(x));i.rendererData=w;i.rendererIndex=r++;z=true}i.setAnimation(y)}if(z){s.doUpdateStyles()}return s.sprites},betweenAngle:function(i,b,j){var h=Math.PI*2,a=this.rotationOffset;if(!this.getClockwise()){i*=-1;b*=-1;j*=-1;b-=a;j-=a}else{b+=a;j+=a}i-=b;j-=b;i%=h;j%=h;i+=h;j+=h;i%=h;j%=h;return i<j||j===0},getItemForAngle:function(r){var k=this,m=k.getSprites(),o;r%=Math.PI*2;while(r<0){r+=Math.PI*2}if(m){var i=k.getStore(),l=i.getData().items,p=k.getHidden(),q=0,n=i.getCount();for(;q<n;q++){if(!p[q]){o=m[q].attr;if(o.startAngle<=r&&o.endAngle>=r){return{series:k,sprite:m[q],index:q,record:l[q],field:k.getXField()}}}}}return null},getItemForPoint:function(G,H){var i=this,J=i.getSprites();if(J){var u=i.getCenter(),w=i.getOffsetX(),x=i.getOffsetY(),D=G-u[0]+w,E=H-u[1]+x,K=i.getStore(),F=i.getDonut(),y=K.getData().items,v=Math.atan2(E,D)-i.getRotation(),L=Math.sqrt(D*D+E*E),B=i.getRadius()*F*0.01,A=i.getHidden(),z,I,C;for(z=0,I=y.length;z<I;z++){if(!A[z]){C=J[z].attr;if(L>=B+C.margin&&L<=C.endRho+C.margin){if(i.betweenAngle(v,C.startAngle,C.endAngle)){return{series:i,sprite:J[z],index:z,record:y[z],field:i.getXField()}}}}}return null}},provideLegendInfo:function(o){var m=this,l=m.getStore();if(l){var n=l.getData().items,s=m.getLabel().getTemplate().getField(),r=m.getXField(),p=m.getHidden(),q,t,i;for(q=0;q<n.length;q++){t=m.getStyleByIndex(q);i=t.fillStyle;if(Ext.isObject(i)){i=i.stops&&i.stops[0].color}o.push({name:s?String(n[q].get(s)):r+" "+q,mark:i||t.strokeStyle||"black",disabled:p[q],series:m.getId(),index:q})}}}},0,0,0,0,["series.pie"],0,[Ext.chart.series,"Pie"],0));(Ext.cmd.derive("Ext.draw.PathUtil",Ext.Base,function(){var h=Math.abs,l=Math.pow,j=Math.cos,g=Math.acos,k=Math.sqrt,i=Math.PI;return{singleton:true,cubicRoots:function(F){var a=F[0],c=F[1],d=F[2],e=F[3];if(a===0){return this.quadraticRoots(c,d,e)}var t=c/a,A=d/a,B=e/a,H=(3*A-l(t,2))/9,I=(9*t*A-27*B-2*l(t,3))/54,C=l(H,3)+l(I,2),E=[],J,K,D,G,f,b=Ext.Number.sign;if(C>=0){J=b(I+k(C))*l(h(I+k(C)),1/3);K=b(I-k(C))*l(h(I-k(C)),1/3);E[0]=-t/3+(J+K);E[1]=-t/3-(J+K)/2;E[2]=E[1];D=h(k(3)*(J-K)/2);if(D!==0){E[1]=-1;E[2]=-1}}else{G=g(I/k(-l(H,3)));E[0]=2*k(-H)*j(G/3)-t/3;E[1]=2*k(-H)*j((G+2*i)/3)-t/3;E[2]=2*k(-H)*j((G+4*i)/3)-t/3}for(f=0;f<3;f++){if(E[f]<0||E[f]>1){E[f]=-1}}return E},quadraticRoots:function(e,f,o){var a,b,c,d;if(e===0){return this.linearRoot(f,o)}a=f*f-4*e*o;if(a===0){c=[-f/(2*e)]}else{if(a>0){b=k(a);c=[(-f-b)/(2*e),(-f+b)/(2*e)]}else{return[]}}for(d=0;d<c.length;d++){if(c[d]<0||c[d]>1){c[d]=-1}}return c},linearRoot:function(b,c){var a=-c/b;if(b===0||a<0||a>1){return[]}return[a]},bezierCoeffs:function(d,e,a,b){var c=[];c[0]=-d+3*e-3*a+b;c[1]=3*d-6*e+3*a;c[2]=-3*d+3*e;c[3]=d;return c},cubicLineIntersections:function(t,O,P,R,Y,Z,aa,ab,b,U,d,W){var Q=[],a=[],S=U-W,e=d-b,r=b*(W-U)-U*(d-b),c=this.bezierCoeffs(t,O,P,R),f=this.bezierCoeffs(Y,Z,aa,ab),B,s,A,C,ac,T,V,X;Q[0]=S*c[0]+e*f[0];Q[1]=S*c[1]+e*f[1];Q[2]=S*c[2]+e*f[2];Q[3]=S*c[3]+e*f[3]+r;s=this.cubicRoots(Q);for(B=0;B<s.length;B++){C=s[B];if(C<0||C>1){continue}ac=C*C;T=ac*C;V=c[0]*T+c[1]*ac+c[2]*C+c[3];X=f[0]*T+f[1]*ac+f[2]*C+f[3];if((d-b)!==0){A=(V-b)/(d-b)}else{A=(X-U)/(W-U)}if(!(A<0||A>1)){a.push([V,X])}}return a},splitCubic:function(v,a,b,c,e){var s=e*e,d=e*s,t=e-1,u=t*t,r=t*u,f=d*c-3*s*t*b+3*e*u*a-r*v;return[[v,e*a-t*v,s*b-2*e*t*a+u*v,f],[f,s*c-2*e*t*b+u*a,e*c-t*b,c]]},cubicDimension:function(c,d,s,t){var u=3*(-c+3*(d-s)+t),v=6*(c-2*d+s),w=-3*(c-d),b,e,x=Math.min(c,t),f=Math.max(c,t),a;if(u===0){if(v===0){return[x,f]}else{b=-w/v;if(0<b&&b<1){e=this.interpolateCubic(c,d,s,t,b);x=Math.min(x,e);f=Math.max(f,e)}}}else{a=v*v-4*u*w;if(a>=0){a=k(a);b=(a-v)/2/u;if(0<b&&b<1){e=this.interpolateCubic(c,d,s,t,b);x=Math.min(x,e);f=Math.max(f,e)}if(a>0){b-=a/u;if(0<b&&b<1){e=this.interpolateCubic(c,d,s,t,b);x=Math.min(x,e);f=Math.max(f,e)}}}}return[x,f]},interpolateCubic:function(e,f,a,b,d){if(d===0){return e}if(d===1){return b}var c=(1-d)/d;return d*d*d*(b+c*(3*a+c*(3*f+c*e)))},cubicsIntersections:function(M,O,Q,R,P,a,b,e,Z,G,I,K,T,U,V,X){var L=this,c=L.cubicDimension(M,O,Q,R),N=L.cubicDimension(P,a,b,e),S=L.cubicDimension(Z,G,I,K),J=L.cubicDimension(T,U,V,X),W,Y,f,H,d=[];if(c[0]>S[1]||c[1]<S[0]||N[0]>J[1]||N[1]<J[0]){return[]}if(h(P-a)<1&&h(b-e)<1&&h(M-R)<1&&h(O-Q)<1&&h(T-U)<1&&h(V-X)<1&&h(Z-K)<1&&h(G-I)<1){return[[(M+R)*0.5,(P+a)*0.5]]}W=L.splitCubic(M,O,Q,R,0.5);Y=L.splitCubic(P,a,b,e,0.5);f=L.splitCubic(Z,G,I,K,0.5);H=L.splitCubic(T,U,V,X,0.5);d.push.apply(d,L.cubicsIntersections.apply(L,W[0].concat(Y[0],f[0],H[0])));d.push.apply(d,L.cubicsIntersections.apply(L,W[0].concat(Y[0],f[1],H[1])));d.push.apply(d,L.cubicsIntersections.apply(L,W[1].concat(Y[1],f[0],H[0])));d.push.apply(d,L.cubicsIntersections.apply(L,W[1].concat(Y[1],f[1],H[1])));return d},linesIntersection:function(r,b,s,c,u,d,a,e){var f=(s-r)*(e-d)-(c-b)*(a-u),t,v;if(f===0){return null}t=((a-u)*(b-d)-(r-u)*(e-d))/f;v=((s-r)*(b-d)-(c-b)*(r-u))/f;if(t>=0&&t<=1&&v>=0&&v<=1){return[r+t*(s-r),b+t*(c-b)]}return null},pointOnLine:function(d,a,f,b,o,p){var c,e;if(h(f-d)<h(b-a)){e=d;d=a;a=e;e=f;f=b;b=e;e=o;o=p;p=e}c=(o-d)/(f-d);if(c<0||c>1){return false}return h(a+c*(b-a)-p)<4},pointOnCubic:function(b,d,e,t,I,J,K,L,E,F){var f=this,y=f.bezierCoeffs(b,d,e,t),D=f.bezierCoeffs(I,J,K,L),a,c,G,H,x;y[3]-=E;D[3]-=F;G=f.cubicRoots(y);H=f.cubicRoots(D);for(a=0;a<G.length;a++){x=G[a];for(c=0;c<H.length;c++){if(x>=0&&x<=1&&h(x-H[c])<0.05){return true}}}return false}}},0,0,0,0,0,0,[Ext.draw,"PathUtil"],0));(Ext.cmd.derive("States.controller.Main",Ext.app.Controller,{config:{refs:{compPanelV:"#compositePanelV",compPanelH:"#compositePanelH",genderPanel:"#genderPanel",racePanel:"#racePanel"},control:{viewport:{orientationchange:"onOrientationChange"}}},launch:function(){Ext.Viewport.onBefore("orientationchange","onOrientationChange",this);this.onOrientationChange(Ext.Viewport,Ext.Viewport.getOrientation())},onOrientationChange:function(f,e){var h=this.getCompPanelV(),g=this.getCompPanelH();if(e==="landscape"){g.setHeight(0);h.setWidth(350);h.add(this.getGenderPanel());h.add(this.getRacePanel())}else{h.setWidth(0);g.setHeight(250);g.add(this.getGenderPanel());g.add(this.getRacePanel())}}},0,0,0,0,0,0,[States.controller,"Main"],0));(Ext.cmd.derive("States.store.BarStore",Ext.data.Store,{config:{fields:["name","population"]}},0,0,0,0,["store.BarStore"],0,[States.store,"BarStore"],0));(Ext.cmd.derive("States.store.GeoStore",Ext.data.Store,{config:{fields:["id","path","type","fill"],autoLoad:true,proxy:{type:"ajax",url:"resources/data/states_geo.json",reader:{type:"json",rootProperty:"",totalProperty:"length",idProperty:"id"}}}},0,0,0,0,["store.GeoStore"],0,[States.store,"GeoStore"],0));(Ext.cmd.derive("States.store.PieStore",Ext.data.Store,{config:{fields:["name","value"]}},0,0,0,0,["store.PieStore"],0,[States.store,"PieStore"],0));(Ext.cmd.derive("States.store.PyramidStore",Ext.data.Store,{config:{fields:["name","male","female"]}},0,0,0,0,["store.PyramidStore"],0,[States.store,"PyramidStore"],0));(Ext.cmd.derive("States.view.Pyramid",Ext.chart.series.Cartesian,{type:"pyramid",seriesType:"barSeries",config:{xPadding:0,yPadding:10,y1Field:false,y2Field:false,colors:["rgb(166, 206, 227)","rgb(31, 120, 180)"],flipXY:true,itemInstancing:{type:"rect",fx:{customDuration:{x:0,y:0,width:0,height:0,radius:0}}}},fieldCategoryY:["Y1","Y2"],coordinateY:function(){var m=this,p=m.getStore(),i=p.getData().items,j={min:Infinity,max:-Infinity},l,n={},o,k=m.getSprites();if(k.length>0){l=m.coordinateData(i,this.getY1Field());for(o=0;o<l.length;o++){l[o]=-l[o]}m.getRangeOfData(l,j);n.dataY=l;k[0].setAttributes(n);l=m.coordinateData(i,this.getY2Field());m.getRangeOfData(l,j);n.dataY=l;k[1].setAttributes(n);m.dataRange[1]=j.min;m.dataRange[3]=j.max}},getSprites:function(){var e=this,f=this.getChart(),h=f&&f.getAnimation(),g=e.sprites;if(!f){return[]}if(g.length===2){e.getLabel().getTemplate().fx.setConfig(h);g[0].fx.setConfig(h);g[0].itemsMarker.getTemplate().fx.setConfig(h);g[1].fx.setConfig(h);g[1].itemsMarker.getTemplate().fx.setConfig(h);return g}e.createSprite();e.createSprite();e.setHidden([false,false]);return g},provideLegendInfo:function(g){var f=this.getStore();if(f){var h=this.getHidden();for(var e=0;e<2;e++){g.push({name:["Female","Male"][e],mark:this.getStyleByIndex(e).fillStyle||this.getStyleByIndex(e).strokeStyle||"black",disabled:h[e],series:this.getId(),index:e})}}}},0,0,0,0,["series.pyramid"],0,[States.view,"Pyramid"],0));(Ext.cmd.derive("States.view.Gender",Ext.chart.CartesianChart,{config:{animation:false,store:"PyramidStore",title:"Gender Distribution",legend:{position:"bottom",verticalWidth:80},flipXY:true,insetPadding:{left:15,top:10,bottom:10},series:[{type:"pyramid",xField:"name",y1Field:"female",y2Field:"male",style:{stroke:"#333",minGapWidth:1}}],axes:[{type:"numeric",position:"bottom",title:{text:"Age Distribution",fontSize:18},label:{font:"12px Helvetica"},renderer:function(c,d){return Math.abs(d/1000).toFixed(0)+"K"}},{type:"category",position:"right",style:{estStepSize:1,stroke:"none"},labelInSpan:true,label:{fontSize:9}}]}},0,0,["widget","component","container","draw","cartesian","chart"],{widget:true,component:true,container:true,draw:true,cartesian:true,chart:true},0,0,[States.view,"Gender"],0));(Ext.cmd.derive("States.view.USMap",Ext.draw.Component,{config:{items:[],store:null,selection:null,sprites:[],style:{translationX:0,translationY:0,scaling:0.7,scalingCenterX:0,scalingCenterY:0}},template:{type:"path",fillStyle:"white",strokeStyle:"black",lineWidth:0.5,highlight:{shadowColor:"black",strokeStyle:"white",fillStyle:"#dd8",shadowBlur:5,zIndex:15,lineWidth:2},modifiers:"highlight"},constructor:function(){Ext.draw.Container.prototype.constructor.apply(this,arguments);this.element.on("tap","selectElement",this)},applyStore:function(c,d){return Ext.StoreManager.lookup(c)},updateStore:function(d,e){var f=this;if(e){if(e.autoDestroy){e.destroy()}else{e.un({scope:f,updaterecord:f.onUpdateRecord,refresh:f.refresh})}}if(d){d.on({scope:f,updaterecord:f.onUpdateRecord,refresh:f.refresh})}},onResize:function(){this.callSuper();this.zoom(this.getSelection())},applyStyle:function(c,d){return Ext.apply({},c||{},d||{})},updateStyle:function(j){var i=this,g=i.getSurface(),h=g.getItems(),f;for(f=0;f<h.length;f++){h[f].setAttributes(j)}},onUpdateRecord:function(n,h){var l=this,j=h.get("id"),i=l.getSurface(),k=i.getItems(),m;for(m=0;m<k.length;m++){if(k[m].id===j){break}}k[m].setAttributes(Ext.copyTo({},h.data,"path,fill"));k[m].fx.setDuration(500)},applySelection:function(c,d){if(Ext.isString(c)){c=this.getSurface().get(c)}if(c===d){c=null}return c},updateSelection:function(c,d){if(d){d.setAttributes({highlighted:false})}if(c){c.setAttributes({highlighted:true})}this.zoom(c)},zoom:function(i){var g=this.getSurface(),h=i?i.getBBox(true):g.getBBox(g.getItems(),true),f=this.element.getSize(),j=Math.min((f.width-30)/h.width,(f.height-30)/h.height)*0.8;this.setStyle({translationX:-(h.x+h.width/2)*j+f.width/2,translationY:-(h.y+h.height/2)*j+f.height/2,scalingX:j,scalingY:j})},refresh:function(){var i=this,l=i.getStore(),h=i.getSurface(),g=l.getData().items,k,j;for(k=0,j=g.length;k<j;k++){h.add(Ext.apply({id:g[k].data.id,fill:g[k].data.fill,path:g[k].data.path},this.template,i.getStyle()));i.onUpdateRecord(l,g[k])}h.renderFrame()},selectElement:function(v){var z=v&&v.event&&Ext.util.Point.fromEvent(v.event)||{x:72,y:416},t=this,p=false,w=0,y=t.getSurface(),u=y.getItems(),x=u.length,e=this.element.getXY(),i=u[0],l,r=i.attr.inverseMatrix.x(z.x-e[0],z.y-e[1]),s=i.attr.inverseMatrix.y(z.x-e[0],z.y-e[1]);for(;w<x;w++){i=u[w];l=i.getBBox(true);if(l.x<=r&&r<=l.x+l.width&&l.y<=s&&s<=l.y+l.y+l.height&&i.attr.path.isPointInPath(r,s)){p=i;break}}States.app.setStateData(p.id)}},1,["usmap"],["widget","component","container","draw","usmap"],{widget:true,component:true,container:true,draw:true,usmap:true},["widget.usmap"],0,[States.view,"USMap"],0));(Ext.cmd.derive("States.view.Population",Ext.chart.CartesianChart,{config:{store:"BarStore",insetPadding:"20 0 0 0",interactions:[{type:"panzoom",panGesture:"none"},{type:"itemhighlight",sticky:true}],selection:null,axes:[{type:"category",position:"bottom",style:{estStepSize:16},label:{field:"name",font:"12px Helvetica"}},{type:"numeric",minimum:0,maximum:40000000,majorTickSteps:40,position:"left",renderer:function(c,d){return(d/1000000).toFixed(1)+"M"},style:{estStepSize:8},title:{text:"Population Distribution",font:"18px Helvetica"},label:{font:"12px Helvetica"}}],series:[{type:"bar",xField:"name",yField:"population",axis:"left",highlightCfg:{shadowColor:"black",strokeStyle:"white",shadowBlur:15,zIndex:15,fill:"#dd8",lineWidth:2},label:{field:"name",display:"insideEnd",font:"10px Helvetica"},style:{stroke:"#333",fill:"rgb(49,235,247)",minGapWidth:1,renderer:function(o,w,v,t){var n=o.attr.dataMinY,m=o.attr.dataMaxY,p=v.store,u=p.getData().items[t],x=u.get("population"),s=(x-n)/(m-n),q={r:49,g:130,b:189},r={r:222,g:235,b:247};w.fillStyle=Ext.draw.Color.fly(Math.round((r.r-q.r)*s+q.r),Math.round((r.g-q.g)*s+q.g),Math.round((r.b-q.b)*s+q.b),1).toString()}},listeners:{itemtap:function(d,c){States.app.setStateData(c.record.get("name"))}}}]},setSelection:function(j){var g=this.getStore(),h=g.getData().items,k=this.getSeries()[0],l,i;for(l=0,i=h.length;l<i;l++){if(h[l].data.name===j){this.setHighlightItem({series:k,sprite:k.sprites[0],index:l,category:"items"});return h[l]}}this.setHighlightItem(null)}},0,["popu"],["widget","component","container","draw","cartesian","chart","popu"],{widget:true,component:true,container:true,draw:true,cartesian:true,chart:true,popu:true},["widget.popu"],0,[States.view,"Population"],0));(Ext.cmd.derive("States.view.Race",Ext.chart.PolarChart,{config:{animation:false,store:"PieStore",title:"Race Distribution",innerPadding:20,interactions:["rotate"],series:[{type:"pie",donut:15,xField:"value",colors:["rgb(8, 69, 148)","rgb(33, 113, 181)","rgb(66, 146, 198)","rgb(107, 174, 214)","rgb(158, 202, 225)","rgb(198, 219, 239)","rgb(222, 235, 247)"],label:{field:"name",display:"rotate",font:"14px Helvetica"}}]}},0,0,["widget","component","container","draw","polar"],{widget:true,component:true,container:true,draw:true,polar:true},0,0,[States.view,"Race"],0));(Ext.cmd.derive("States.view.Main",Ext.Panel,{config:{layout:"fit",style:"background: white",items:[{xtype:"titlebar",id:"titlebar",ui:"light",title:"2010 Census Data - USA",docked:"top"},{xclass:"Ext.Carousel",direction:"horizontal",defaults:{layout:"fit",style:"background: white;  padding-bottom: 30px"},items:[{title:"Map",items:[{xclass:"States.view.USMap",store:"GeoStore"}]},{title:"Population",items:[{xclass:"States.view.Population"}]}]},{layout:"vbox",width:350,docked:"right",id:"compositePanelV",items:[{flex:1,layout:"fit",id:"genderPanel",items:{xclass:"States.view.Gender",innerPadding:{left:10}}},{flex:1,layout:"fit",id:"racePanel",items:{xclass:"States.view.Race"}}]},{layout:"hbox",height:0,docked:"bottom",id:"compositePanelH"}]}},0,0,["widget","component","container","panel"],{widget:true,component:true,container:true,panel:true},0,0,[States.view,"Main"],0));Ext.application({name:"States",stores:["PieStore","PyramidStore","BarStore","GeoStore"],controllers:["Main"],mainView:"States.view.Main",isIconPrecomposed:true,launch:function(){States.colorMap={};var b=this;Ext.Ajax.request({url:"resources/data/states_data.json",success:function(h){States.statesData=JSON.parse(h.responseText);var g=States.statesData,f,a=[];for(f in g){a.push({name:f,population:+g[f].POP100})}a.sort(function(j,e){var d=e.name,c=j.name;if(c>d){return 1}else{if(c<d){return -1}}return 0});Ext.getStore("BarStore").setData(a);b.transitionData();Ext.first("usmap").on({bodyresize:function(){b.setStateData("CA")},single:true})},failure:function(){console.log("something went wrong")}})},setStateData:function(f){var d=States.statesData,e=d[f];if(!Ext.isString(f)){return}Ext.getStore("PieStore").setData(e.race);Ext.getStore("PyramidStore").setData(e.sex_by_age);Ext.first("#titlebar").setTitle("2010 Census Data - "+d[f].NAME);Ext.first("usmap").setSelection(f);Ext.first("popu").setSelection(f)},transitionData:function(){var s=0,l=Ext.getStore("GeoStore"),t=States.statesData,w=t.length,r={},u=Number.MAX_VALUE,q=Number.MIN_VALUE,p,i,y,z,v={from:[49,130,189],to:[222,235,247]},x={};l.getData().each(function(a){r[a.get("id")]=a;a.beginEdit()});for(z in t){p=+t[z].POP100;u=u<p?u:p;q=q>p?q:p}for(z in t){p=+t[z].POP100;i=[((p-u)/(q-u)*(v.to[0]-v.from[0])+v.from[0])>>0,((p-u)/(q-u)*(v.to[1]-v.from[1])+v.from[1])>>0,((p-u)/(q-u)*(v.to[2]-v.from[2])+v.from[2])>>0];if(r[z]){r[z].set("fill",x[z]="rgb("+i.join()+")");r[z].commit()}}States.colorMap=x}});